<?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>2.3.2</version>
    <mincmsversion>2.1.5</mincmsversion>
	<help><![CDATA[PGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPlRoaXMgbW9kdWxlIGFsbG93cyBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiBvZiBmcm9udCBlbmQgdXNlcnMgPGk+KHVzZXJzIHdobyBoYXZlIG5vIGFkbWluIGFjY2Vzc3MpPC9pPi4gIEl0IGFsbG93cyBjcmVhdGlvbiBvZiB1c2VyIGdyb3VwcywgYW5kIHVzZXIgYWNjb3VudHMgYW5kIGFsbG93cyB1c2VycyB0byBsb2dpbiBhbmQgbG9nb3V0LiAgaXQgY2FuIGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgQ3VzdG9tQ29udGVudCBtb2R1bGUgdG8gZGlzcGxheSBkaWZmZXJlbnQgY29udGVudCB0byBkaWZmZXJlbnQgdXNlcnMgb25jZSB0aGV5IGhhdmUgbG9nZ2VkIGluPC9wPgo8aDM+RmVhdHVyZXM6PC9oMz4KPHVsPgo8bGk+VXNlcnMgY2FuIGJlIG1lbWJlcnMgb2YgbXVsdGlwbGUgZ3JvdXBzLjwvbGk+CjxsaT5Vc2VyIGFjY291bnQgZXhwaXJhdGlvbi4gIFlvdSBjYW4gY3JlYXRlIHRlbXBvcmFyeSB1c2VyczwvbGk+CjxsaT5Hcm91cCBQcm9wZXJ0aWVzLiAgWW91IGNhbiBhc2sgZm9yIGRpZmZlcmVudCBpbmZvcm1hdGlvbiBmcm9tIG1lbWJlcnMgb2YgZGlmZmVyZW50IGdyb3Vwcy48L2xpPgo8bGk+TG90cyBvZiBmaWVsZCB0eXBlcy48L2xpPgo8bGk+UHJvdmlkZXMgYSBjb250ZW50IHR5cGUgdG8gbWFrZSBwcm90ZWN0aW5nIGNvbnRlbnQgc2ltcGxlLCBpZiBub3QgdHJpdmlhbC48L2xpPgo8bGk+Q2FwYWJsZSBvZiBoYW5kbGluZyB0aG91c2FuZHMgb2YgdXNlcnM8L2xpPgo8bGk+RXh0ZW5zaXZlIGZsZXhpYmlsaXR5IGZvciBoYW5kbGluZyByZWRpcmVjdGlvbiBhZnRlciBsb2dpbiwgYW5kIHNlbmRzIGV2ZW50cyB0byBleHRlbmQgdGhlIHdvcmtmbG93IHByb2Nlc3MuPC9saT4KPGxpPkZvcmdvdHRlbiBwYXNzd29yZCwgYW5kIGZvcmdvdCB1c2VybmFtZSBmdW5jdGlvbmFsaXR5Li4uIGFsbG93cyB1c2VycyB0byBzZXQgYSBuZXcgcGFzc3dvcmQsIGFuZC9vciB0byByZWNvdmVyIHRoZWlyIHVzZXJuYW1lIGlmIHRoZXkgY29tcGxldGVseSBmb3Jnb3QgbG9naW4gZGV0YWlscy48L2xpPgo8bGk+RXh0ZW5kYWJsZSB0byBkaWZmZXJlbnQgYXV0aGVudGljYXRpb24gdHlwZXMgKExEQVAsIEZhY2Vib29rLCBldGMpLjwvbGk+CjxsaT5Qcm92aWRlcyBleHRlbnNpdmUgaW1wb3J0IGFuZCBleHBvcnQgY2FwYWJpbGl0aWVzLjwvbGk+CjxsaT5IYXMgYW4gZXh0ZW5zaXZlIEFQSSBmb3IgYWRkaW5nIGZ1bmN0aW9uYWxpdHkgaW50byB2YXJpb3VzIG90aGVyIENNU01TIGFkZG9uIG1vZHVsZXMuPC9saT4KPGxpPlRoZSBhYmlsaXR5IHRvIGVuY3J5cHQgc2Vuc2l0aXZlIHVzZXIgZGF0YS48L2xpPgo8bGk+U3Ryb25nIGVuY3J5cHRpb24gYW5kIHNlY3VyaXR5LjwvbGk+CjxsaT5FeHRlbnNpdmUgYWRtaW5pc3RyYXRpdmUgY2FwYWJpbGl0aWVzLjwvbGk+CjwvdWw+Cgo8aDM+SG93IGRvIEkgdXNlIGl0OjwvaDM+CjxwPkFmdGVyIGluc3RhbGxhdGlvbiB5b3UgY2FuIHRoZSBhY2Nlc3MgYWRtaW4gcGFuZWwgdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHVuZGVyIHRoZSAmcXVvdDtVc2VycyAmYW1wOyBHcm91cHMmcXVvdDsgbWVudS48L3A+CjxwPllvdSBuZWVkIHRvIGRlZmluZSBhdCBsZWFzdCBvbmUgcHJvcGVydHkuICBQcm9wZXJ0aWVzIGFyZSBlc3NlbnRpYWxseSBmaWVsZCBkZWZpbml0aW9ucywgaGVyZSB5b3Ugc3BlY2lmeSB0aGUgdHlwZSBvZiBpbmZvcm1hdGlvbiB5b3Ugd2FudCB0byBnYXRoZXIsIGFuZCBsaW1pdHMuIGkuZTogIE5hbWUsIEFnZSwgQ2l0eSwgU3RhdGUsIENvdW50cnksIGV0Yy48L3A+CjxwPjxiPk5vdGU6PC9iPiBZb3UgZG8gbm90IG5lZWQgdG8gZGVmaW5lIHByb3BlcnRpZXMgZm9yIHVzZXJuYW1lIChvciBlbWFpbCBhZGRyZXNzKSBhbmQgcGFzc3dvcmQsIHRoZXNlIHdpbGwgYmUgcHJvdmlkZWQgZm9yIHlvdS4gIFRob3VnaCB5b3UgY2FuIHByb3ZpZGUgcHJvcGVydGllcyBmb3IgYWRkaXRpb25hbCBlbWFpbCBhZGRyZXNzZXMuPC9wPgo8cD48Yj5Ob3RlOjwvYj4gTmV3IGluc3RhbGxhdGlvbnMgb2YgdGhlIEZFVSBtb2R1bGUgc3BlY2lmeSB0aGF0IHRoZSB1c2VycyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lICh0aGlzIG9wdGlvbiBjYW4gYmUgY2hhbmdlZCBpbiB0aGUgbW9kdWxlcyBhZG1pbiBwYW5lbCkuICBTbyBpZiB1c2luZyB0aGlzIG9wdGlvbiB5b3Ugd2lsbCBub3QgbmVlZCB0byBjcmVhdGUgYW4gZW1haWwgYWRkcmVzcyBwcm9wZXJ0eS48L3A+CjxwPk5leHQgeW91IG11c3QgY3JlYXRlIG9uZSBvciBtb3JlIHVzZXIgZ3JvdXBzLiAgV2hlbiB5b3UgY3JlYXRlIGEgZ3JvdXAsIHlvdSBhcmUgYXNrZWQgZm9yIGEgZ3JvdXAgbmFtZSwgYSBkZXNjcmlwdGlvbiBhbmQgdG8gYXNzb2NpYXRlIG9uZSBvciBtb3JlIHByb3BlcnRpZXMgd2l0aCB0aGF0IGdyb3VwLCBzcGVjaWZ5IHRoZSBwcm9wZXJ0aWVzIHNvcnQgb3JkZXIsIGFuZCB3aGV0aGVyIGl0IGlzIGFuIG9wdGlvbmFsLCByZXF1aXJlZCwgb3IgaGlkZGVuIGZpZWxkLiAgQXQgbGVhc3Qgb25lIHByb3BlcnR5IG11c3QgYmUgYXNzb2NpYXRlZCB3aXRoIGEgZ3JvdXAuPC9wPgo8cD48Yj5Ob3RlOjwvYj4gQmVmb3JlIHByb2NlZWRpbmcsIHlvdSBzaG91bGQgZW5zdXJlIHRoYXQgdGhlIHByZWZlcmVuY2VzIGFyZSBzZXQgY29ycmVjdGx5LiAgVGFrZSBzb21lIHRpbWUgaGVyZSwgdGhlcmUgYXJlIG51bWVyb3VzIG9wdGlvbnMuPC9wPgo8cD5UaGlyZGx5IHlvdSBzaG91bGQgY3JlYXRlIHNvbWUgdXNlcnMuICBBZGRpbmcgdXNlcnMgaXMgYSB0d28gc3RlcCBwcm9jZXNzLiAgV2hlbiBjcmVhdGluZyBhIHVzZXIgeW91IGFyZSBhc2tlZCBmb3IgdGhlIHVzZXJuYW1lL2VtYWlsIGFuZCBwYXNzd29yZCwgYW5kIGFuIGV4cGlyeSBkYXRlIGZvciB0aGF0IHVzZXIuICBZb3UgdGhlbiBtdXN0IHNlbGVjdCB0aGUgZ3JvdXBzIHRoYXQgdGhhdCB1c2VyIGlzIGEgbWVtYmVyIG9mLCBhbmQgY2xpY2sgJnF1b3Q7TmV4dCZxdW90OzwvcD4KPHA+PGVtPk5vdGU6IDwvZW0+VGhpcyBpcyBhIGxhYm91ciBpbnRlbnNpdmUgYW5kIGJvcmluZyBwcm9jZXNzLCBpdCBpcyBlYXNpZXIgdG8gbGV0IHVzZXJzIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgPGVtPihTZWUgdGhlIFNlbGZSZWdpc3RyYXRpb24gTW9kdWxlKTwvZW0+LCBhbmQgdGhlbiB5b3UgY2FuIGVkaXQgdGhlaXIgZ3JvdXAgaW5mb3JtYXRpb24uICBidXQgZm9yIHRlc3RpbmcgcHVycG9zZXMsIHBsZWFzZSBjcmVhdGUgYXQgbGVhc3Qgb25lIHVzZXI8L3A+CjxwPkxhc3RseSwgYWZ0ZXIgdGhlIHN5c3RlbSBoYXMgZGV0ZXJtaW5lZCBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIGZpZWxkcyB0byBiZSBwcmVzZW50ZWQgZm9yIHRoYXQgdXNlciwgeW91IGFyZSBwcmVzZW50ZWQgd2l0aCBhIGZvcm0gYXNraW5nIGZvciBhbGwgb2YgdGhlIHJlcXVpcmVkIHVzZXIgaW5mb3JtYXRpb24uICBDb21wbGV0ZSB0aGlzIGZvcm0gdG8gY29tcGxldGUgdGhlIHVzZXIgYWRkaXRpb248L3A+CjxwPllvdSBhcmUgbm93IHJlYWR5IHRvIGFkZCB0aGUgZnJvbnQgZW5kIGZ1bmN0aW9uYWxpdHkgdG8geW91ciBzaXRlLiAgVGhpcyBpcyBhcyBzaW1wbGUgYXMgYWRkaW5nIHRoZSB7RnJvbnRFbmRVc2Vyc30gdGFnIHRvIHlvdXIgcGFnZSBvciB0ZW1wbGF0ZS4gIFlvdSBtdXN0IGVuc3VyZSB0aGF0IHRoaXMgcGFnZSBpcyBzZXQgdG8gJnF1b3Q7bm90IGNhY2hlJnF1b3Q7IHdoZW4gZWRpdGluZyB0aGUgY29udGVudCBwYWdlKHMpIHdoZXJlIHRoZSBsb2dpbiBmb3JtIGlzIGRpc3BsYXllZC4gIElmIHlvdSBjYWxsIHRoZSB7RnJvbnRFbmRVc2Vyc30gdGFnIGZyb20gd2l0aGluIGEgcGFnZSB0ZW1wbGF0ZSwgeW91IG11c3QgZGlzYWJsZSBjYWNoaW5nIG9uIGFsbCBwYWdlcyB0aGF0IHVzZSB0aGF0IHRlbXBsYXRlLjwvcD4KPHA+QWRkaW5nIHByb3RlY3RlZCBjb250ZW50IHRvIHlvdXIgQ01TTVMgc2l0ZSBpcyBhcyBzaW1wbGUgYXMgY3JlYXRpbmcgbmV3IHBhZ2VzIG9mIHR5cGUgJnF1b3Q7UHJvdGVjdGVkIENvbnRlbnQmcXVvdDsgYW5kIHNlbGVjdGluZyB3aGljaCB1c2VyIGdyb3VwcyAob3IgYWxsKSB0aGF0IGFyZSBhbGxvd2VkIHRvIHZpZXcgdGhlIHBhZ2UuPC9wPgo8cD48ZW0+T3B0aW9uYWxseTwvZW0+IENyZWF0ZSBhbm90aGVyIG5ldyBjb250ZW50IHBhZ2Ugb2YgdHlwZSAnRXJyb3IgSGFuZGxlcicgYW5kIHNldCB0aGUgZXJyb3IgaGFuZGxlciB0byA0MDMgZXJyb3IuICBJbiB0aGUgY29udGVudCBhcmVhIG9mIHRoYXQgcGFnZSwgeW91IHNob3VsZCBjYWxsIHtGcm9udEVuZFVzZXJzfSB0byBkaXNwbGF5IGEgbG9naW4gZm9ybSBvbiB0aGUgNDAzIGVycm9yIHBhZ2UuPC9wPgoKPGgzPlN0cm9uZyBQYXNzd29yZHM6PC9oMz4KPHA+VGhpcyBtb2R1bGUsIHdoZW4gZnJlc2hseSBpbnN0YWxsZWQgKG5vdCBhbiB1cGdyYWRlKSBlbmFibGVzIHN0cm9uZyBwYXNzd29yZHMuICBBdCBhIG1pbmltdW0gb25lIHVwcGVyIGNhc2UgY2hhcmFjdGVyIGFuZCBvbmUgZGlnaXQgYXJlIHJlcXVpcmVkIHRvIGJlIGluIGV2ZXJ5IHBhc3N3b3JkLiAgVGhlIHNpdGUgYWRtaW5pc3RyYXRvciBjYW4gYWxzbyBzcGVjaWZ5IG90aGVyIG9wdGlvbmFsIGNoYXJhY3RlcnMsIG9uZSBvZiB3aGljaCBtdXN0IGJlIHByZXNlbnQgaW4gYWxsIHBhc3N3b3Jkcy48L3A+Cgo8aDM+U21hcnR5IEZ1bmN0aW9uczo8L2gzPgo8aDQ+e2ZldV9wcm90ZWN0fTwvaDQ+CjxwPlRoZSA8c3Ryb25nPmZldV9wcm90ZWN0PC9zdHJvbmc+IGJsb2NrIHBsdWdpbiBwcm92aWRlcyBhIGNvbnZlbmllbnQgbWV0aG9kIHRvIGhpZGUgc29tZSBjb250ZW50IGZyb20gdXNlcnMgb24gd2hhdCBpcyBub3JtYWxseSBhIHB1YmxpYyBwYWdlLjwvcD4KPHA+PHN0cm9uZyBzdHlsZT0iY29sb3I6IHJlZDsiPldhcm5pbmc6PC9zdHJvbmc+IFRoaXMgcGx1Z2luIGNhbm5vdCBiZSBjb25zaWRlcmVkIDEwMCUgc2VjdXJlLCBhbmQgc2hvdWxkIG5vdCBhdCBhbnkgdGltZSBiZSB1c2VkIGluIHRoZSBwYWdlIHRlbXBsYXRlIHRvIHByb3RlY3QgdGhlIGRlZmF1bHQge2NvbnRlbnR9IHRhZy4gIFRoZXJlIGFyZSB3YXlzIHRvIGFjY2VzcyB0aGUgZGVmYXVsdCBjb250ZW50IHByb3BlcnR5IG9mIGEgcGFnZSwgb3IgdG8gY2FsbCBhIG1vZHVsZSBhY3Rpb24gd2l0aG91dCBwcm9jZXNzaW5nIHRoZSBwYWdlIHRlbXBsYXRlLiAgSWYgeW91IG5lZWQgdG8gcHJvdGVjdCB0aGUgY29udGVudCBhbmQgZW5zdXJlIHRoYXQgbm8gdW5hdXRob3JpemVkIHVzZXJzIGFjY2VzcyB0aGUgcGFnZSwgdXNlIHRoZSBwcm90ZWN0ZWQgcGFnZSBjb250ZW50IHR5cGUgcHJvdmlkZWQgYnkgdGhpcyBtb2R1bGUuPC9wPgo8aDU+VXNhZ2U6PC9oNT4KPHByZT48Y29kZT57ZmV1X3Byb3RlY3QgZ3JvdXBzPSJncm91cDEsZ3JvdXAyLGdyb3AzIn0KICAmbHQ7cCZndDtTbWFydHkgY29udGVudCB0aGF0IHNob3VsZCBvbmx5IGJlIHZpc2libGUgdG8gbWVtYmVycyBvZiB0aG9zZSBncm91cHMuJmx0Oy9wJmd0Owp7L2ZldV9wcm90ZWN0fTwvY29kZT48L3ByZT4KPHA+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGUgdXNlciBtdXN0IGJlIGEgbWVtYmVyIG9mIGF0IGxlYXN0IG9uZSBvZiB0aGUgc3BlY2lmaWVkIGdyb3Vwcy4gIFRoZSBncm91cCBuYW1lcyBhcmUgY2FzZSBzZW5zaXRpdmUuPC9wPgoKPGg0PlRoZSBmZXVfc21hcnR5IGNsYXNzPC9oND4KPHA+VGhlIDxzdHJvbmc+ZmV1X3NtYXJ0eTwvc3Ryb25nPiBjbGFzcyBwcm92aWRlcyBzb21lIGZ1bmN0aW9ucyB0byBpbnRlcmFjdCB3aXRoIHRoZSBkYXRhYmFzZSBhbmQgcHVsbCBhbmQgdGVzdCBmb3IgdXNlciBpbmZvcm1hdGlvbi48L3A+CjxwPlNvbWUgaW50ZXJhY3Rpb24gd2l0aCB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgZGF0YWJhc2UgaXMgcG9zc2libGUgd2l0aCBzbWFydHkgYW5kIHRoZSBmZXVfc21hcnR5IGNsYXNzLjwvcD4KPGRpdiBjbGFzcz0iaW5mb3JtYXRpb24iPgogIDxwPjxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gQmVoYXZpb3Igb2YgdGhlIGZldV9zbWFydHkgY2xhc3MgY2hhbmdlZCBzaWduaWZpY2FudGx5IGF0IHZlcnNpb24gMS4yOSByZXN1bHRpbmcgaW4gY29tcGF0aWJpbGl0eSBwcm9ibGVtcy48L3A+CiAgPHA+VGhpcyBpcyBub3cgYSByZWdpc3RlcmVkIGNsYXNzIHdpdGggU21hcnR5IChmb3IgQ01TTVMgMi4wIGNvbXBhdGliaWxpdHkpLiAgQW5kIGFsbCBtZXRob2RzIG11c3QgYmUgYWNjZXNzZWQgc3RhdGljYWxseS4gIEFkZGl0aW9uYWxseSwgdGhlcmUgaXMgbm8gYXNzaWduIHBhcmFtLiAgWW91IG11c3QgY2FwdHVyZSB0aGUgb3V0cHV0IG9mIHRoZSBmdW5jdGlvbiBpbnRvIGEgc21hcnR5IHZhcmlhYmxlLjwvcD4KPC9kaXY+CjxoNT5GdW5jdGlvbnM6PC9oNT4KPHVsPgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X2N1cnJlbnRfdXNlcmlkKCl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgdGhlIGludGVnZXIgdXNlciBpZCBpZiB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyIChpZiBhbnkpLjwvcD4KPHA+RXhhbXBsZTo8L3A+CjxwcmU+PGNvZGU+eyR1aWQ9ZmV1X3NtYXJ0eTo6Z2V0X2N1cnJlbnRfdXNlcmlkKCl9PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmdldF9jdXJyZW50X3VzZXJuYW1lKCl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgdGhlIHVzZXIgbmFtZSBpZiB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyIChpZiBhbnkpLjwvcD4KPHA+RXhhbXBsZTo8L3A+CjxwcmU+PGNvZGU+eyR1c2VybmFtZT1mZXVfc21hcnR5OjpnZXRfY3VycmVudF91c2VybmFtZSgpfTwvY29kZT48L3ByZT4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPntmZXVfc21hcnR5OjpnZXRfdXNlcmlkKCR1c2VybmFtZSl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIHJldHVybiB0aGUgaW50ZWdlciB1c2VyIGlkIGdpdmVuIGEgdXNlcm5hbWUuPC9wPgo8cD5FeGFtcGxlOjwvcD4KPHByZT48Y29kZT57JHVpZD1mZXVfc21hcnR5OjpnZXRfdXNlcmlkKCR1c2VybmFtZSl9PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmdldF91c2VybmFtZShbJHVpZF0pfTwvY29kZT48L3N0cm9uZz4KPHA+VGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byByZXR1cm4gdGhlIHN0cmluZyB1c2VybmFtZSBnaXZlbiBhbiBpbnRlZ2VyIHVpZC4gIElmIG5vIHVpZCBpcyBzcGVjaWZpZWQsIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1aWQgaXMgYXNzdW1lZC48L3A+CjxwPkV4YW1wbGU6PC9wPgo8cHJlPjxjb2RlPntmZXVfc21hcnR5OjpnZXRfdXNlcm5hbWUoJHRoZV91aWQpfTwvY29kZT48L3ByZT4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPntmZXVfc21hcnR5OjpnZXRfZW1haWwoWyR1aWRdKX08L2NvZGU+PC9zdHJvbmc+CjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gcmV0dXJuIGFuIGVtYWlsIGFkZGVyZXNzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ2l2ZW4gaW50ZWdlciB1aWQuICBJZiBubyB1aWQgaXMgc3BlY2lmaWVkLCB0aGUgY3VycmVudCBsb2dnZWQgaW4gdWlkIGlzIGFzc3VtZWQuPC9wPgo8cD5FeGFtcGxlOjwvcD4KPHByZT48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X2VtYWlsKCR0aGVfdWlkKX08L2NvZGU+PC9wcmU+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X3VzZXJpbmZvKFskdWlkXSl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIHJldHVybiB0aGUgdXNlciBpbmZvcm1hdGlvbiBmb3IgYSBzaW5nbGUgdXNlci4gIElmIG5vIHVpZCBpcyBzcGVjaWZpZWQsIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1aWQgaXMgYXNzdW1lZC48L3A+CjxwPkV4YW1wbGU6PC9wPgo8cHJlPjxjb2RlPnskdWluZm89ZmV1X3NtYXJ0eTo6Z2V0X3VzZXJpbmZvKCRzb21ldGhpbmcudXNlcmlkKX08YnIvPnskdWluZm98QHByaW50X3J9PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmdldF91c2Vyc19ieV9ncm91cG5hbWUoJGdyb3VwbmFtZVssJGZvcl9saXN0XSl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIGV4dHJhY3QgYW4gYXJyYXkgb2YgdXNlcm5hbWVzIGFuZCB1c2VyaWRzIGZvciBhbGwgdXNlcnMgdGhhdCBiZWxvbmcgdG8gdGhlIHNwZWNpZmllZCBncm91cC48L3A+CjxwPlRoZSBncm91cG5hbWUgcGFyYW1ldGVyIG11c3QgYmUgYSBzaW5nbGUgc3RyaW5nIGdyb3VwbmFtZS48L3A+CjxwPlRoZSBmb3JfbGlzdCBwYXJhbWV0ZXIgaXMgYSBib29sZWFuIHRoYXQgaW5kaWNhdGVzIHRoYXQgdGhlIG91dHB1dCBzaG91bGQgYmUgc3VpdGFibGUgZm9yIHVzZSBpbiBhIHNlbGVjdCBsaXN0LjwvcD4KPHA+RXhhbXBsZTo8L3A+CjxwcmU+PGNvZGU+eyRteW1lbWJlcnM9ZmV1X3NtYXJ0eTo6Z2V0X3VzZXJzX2J5X2dyb3VwbmFtZSgnbWVtYmVycycpfTxici8+eyRteW1lbWJlcnN8QHByaW50X3J9PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmdldF9ncm91cF9tZW1iZXJsaXN0KCRnaWQpfTwvY29kZT48L3N0cm9uZz4KICA8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgYW4gYXJyYXkgb2YgdWlkIGFuZCB1c2VybmFtZXMgZm9yIGFsbCB1c2VycyB0aGF0IGFyZSBtZW1iZXJzIG9mIHRoZSBzcGVjaWZpZWQgZ3JvdXAgKGJ5IGdyb3VwIGlkKS48L3A+CiAgPHA+RXhhbXBsZTo8L3A+CiAgPHByZT48Y29kZT57aHRtbF9vcHRpb25zIG9wdGlvbnM9ZmV1X3NtYXJ0eTo6Z2V0X2dyb3VwX21lbWJlcmxpc3QoJGdpZCkgc2VsZWN0ZWQ9JHVpZH08L2NvZGU+PC9wcmU+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X3VzZXJfZXhwaXJ5KFskdWlkXSl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgdGhlIHVuaXggdGltZXN0YW1wIHRoYXQgdGhlIHNwZWNpZmllZCB1aWQgYWNjb3VudCBleHBpcmVzLiAgVGhlIGZ1bmN0aW9uIHdpbGwgcmV0dXJuIGZhbHNlIGlmIHRoZSB1aWQgY2Fubm90IGJlIGZvdW5kIG9yIHNvbWUgb3RoZXIgZXJyb3Igb2NjdXJyZWQuPC9wPgo8cD5FeGFtcGxlOjwvcD4KPHByZT48Y29kZT57JGV4cGlyeT1mZXVfc21hcnR5OjpnZXRfdXNlcl9leHBpcnkoMjUpfTxici8+eyRleHBpcnl8Y21zX2RhdGVfZm9ybWF0fTwvY29kZT48L3ByZT4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPntmZXVfc21hcnR5Ojp1c2VyX2V4cGlyZWQoJHVpZCl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgYSBib29sZWFuIGluZGljYXRpbmcgd2V0aGVyIHRoZSBzcGVjaWZpZWQgdXNlciBhY2NvdW50IGhhcyBleHBpcmVkLiAgVGhlIG1ldGhvZCB3aWxsIGFsc28gcmV0dXJuIGZhbHNlIGlmIHRoZSB1aWQgY2Fubm90IGJlIGZvdW5kIG9yIHNvbWUgb3RoZXIgZXJyb3Igb2NjdXJyZWQuPC9wPgo8cD5FeGFtcGxlOjwvcD4KPHByZT48Y29kZT57JGV4cGlyZWQ9ZmV1X3NtYXJ0eTo6dXNlcl9leHBpcmVkKDI1KX08YnIvPntpZiAkZXhwaXJlZH1VSUQgMjUgY2FuIG5vIGxvbmdlciBsb2dpbiB0byB0aGUgc3lzdGVtey9pZn08L2NvZGU+PC9wcmU+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X3VzZXJfcHJvcGVydGllcygkdWlkKX08L2NvZGU+PC9zdHJvbmc+CjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhIGxpc3Qgb2YgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyLiAgSWYgdGhlIHVpZCBpcyBub3Qgc3BlY2lmaWVkIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1aWQgaXMgdXNlZC48L3A+CjxwPkV4YW1wbGU6PC9wPgo8cHJlPjxjb2RlPnskdXNlcnByb3BzPWZldV9zbWFydHk6OmdldF91c2VyX3Byb3BlcnRpZXMoNSl9PGJyLz57JHVzZXJwcm9wc3xAcHJpbnRfcn08L2NvZGU+PC9wcmU+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X3VzZXJfcHJvcGVydHkoJHByb3BlcnR5LFskdWlkXSl9PC9jb2RlPjwvc3Ryb25nPgogIDxwPlRoaXMgZnVuY3Rpb24gcmV0dXJucyB0aGUgdmFsdWUgb2YgYSBzaW5nbGUgcHJvcGVydHkgZm9yIHRoZSBzcGVjaWZpZWQgdWlkLiAgSWYgdGhlIHVpZCBwYXJhbWV0ZXIgaXMgbm90IHNwZWNpZmllZCwgdGhlIGN1cnJlbnQgbG9nZ2VkIGluIHVpZCBpcyB1c2VkLjwvcD4KICA8cD5FeGFtcGxlOjwvcD4KICA8cHJlPjxjb2RlPntmZXVfc21hcnR5OjpnZXRfdXNlcl9wcm9wZXJ0eSgnZnVsbG5hbWUnLDUpfTwvY29kZT48L3ByZT4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPntmZXVfc21hcnR5OjpnZXRfZHJvcGRvd25fdGV4dCgkcHJvcG5hbWUsJHByb3B2YWx1ZSl9PC9jb2RlPjwvc3Ryb25nPgogIDxwPlRoaXMgZnVuY3Rpb24gcmV0dXJucyB0aGUgdGV4dCBzcGVjaWZpZWQgZm9yIGEgcGFydGljdWxhciBvcHRpb24gdmFsdWUgZm9yIGEgc3BlY2lmaWVkIGRyb3Bkb3duIHByb3BlcnR5LjwvcD4KICA8cD5FeGFtcGxlOjwvcD4KICA8cHJlPjxjb2RlPntmZXVfc21hcnR5OjpnZXRfZHJvcGRvd25fdGV4dCgnYWdlX3JhbmdlJywkb25lcHJvcHZhbHVlKX08L2NvZGU+PC9wcmU+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X211bHRpc2VsZWN0X3RleHQoJHByb3BuYW1lLCRwcm9wdmFsdWUpfTwvY29kZT48L3N0cm9uZz4KICA8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgYW4gYXJyYXkgb2Ygb3B0aW9uIHRleHRzIGNvcnJlc3BvbmRpbmcgdG8gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBvcHRpb24gdmFsdWVzLjwvcD4KICA8cD5FeGFtcGxlOjwvcD4KICA8cHJlPjxjb2RlPnskZmF2b3JpdGVfZm9vZHM9ZmV1X3NtYXJ0eTo6Z2V0X211bHRpc2VsZWN0X3RleHQoJ2Zhdm9yaXRlX2Zvb2RzJywkb25lcHJvcHZhbHVlKX08YnIvPnskZmF2b3JpdGVfZm9vZHN8QHByaW50X3J9PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmdldF9ncm91cF9saXN0KCl9PC9jb2RlPjwvc3Ryb25nPgogIDxwPlRoaXMgZnVuY3Rpb24gcmV0dXJucyBhbiBhcnJheSBvZiBGRVUgZ3JvdXBzIHRoYXQgaXMgc3VpdGFibGUgZm9yIHVzZSBpbiBhIGRyb3Bkb3duLjwvcD4KICA8cD5FeGFtcGxlOjwvcD4KPHByZT48Y29kZT4mbHQ7c2VsZWN0IGlkPSJncm91cCImZ3Q7e2h0bWxfb3B0aW9ucyBvcHRpb25zPWZldV9zbWFydHk6OmdldF9ncm91cF9saXN0KCl9Jmx0Oy9zZWxlY3QmZ3Q7PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmdldF91c2VyX2dyb3VwcyhbJHVpZF0pfTwvY29kZT48L3N0cm9uZz4KICA8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgYW4gYXJyYXkgb2YgRkVVIGdyb3VwcyB0aGF0IHRoaXMgdXNlciBiZWxvbmdzIHRvIChpZiBhbnkpLiAgVGhlIG91dHB1dCBpcyBhbiBhcnJheSBzdWl0YWJsZSBmb3IgdXNlIGluIGEgc2VsZWN0IGxpc3QgKHRoZSBrZXkgaXMgdGhlIGdyb3VwaWQsIHZhbHVlIGlzIHRoZSBncm91cCBuYW1lKS48L3A+CiAgPHA+RXhhbXBsZTo8L3A+CjxwcmU+PGNvZGU+eyRteWdyb3Vwcz1mZXVfc21hcnR5OjpnZXRfdXNlcl9ncm91cHMoKX0KeyRteWdyb3Vwc3xAcHJpbnRfcn08L2NvZGU+PC9wcmU+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6cHJlbG9hZF91c2VycygkdWlkX2xpc3RbLCRkZWVwID0gZmFsc2VdKX08L2NvZGU+PC9zdHJvbmc+CiAgPHA+VGhpcyBmdW5jdGlvbiB3aWxsIHByZWxvYWQgaW5mb3JtYXRpb24gZm9yIHRoZSBzcGVjaWZpZWQgdXNlcnMuICBJdCBkb2VzIG5vdCByZXR1cm4gYW55IG91dHB1dC48L3A+CiAgPHA+RXhhbXBsZTo8L3A+CjxwcmU+PGNvZGU+eyRsaXN0PVsgNSwgMTAsIDExLCAxMywgMTggXX17ZmV1X3NtYXJ0eTo6cHJlbG9hZF91c2VycygkbGlzdCl9PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmlzX3VzZXJfbWVtYmVyb2YoJGdyb3Vwc1ssJHVpZF0pfTwvY29kZT48L3N0cm9uZz4KICA8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgYSBib29sZWFuIGlmIHRoZSB1c2VyIGlzIGEgbWVtYmVyIG9mIG9uZSB0aGUgc3BlY2lmaWVkIGdyb3Vwcy48L3A+CiAgPHA+VGhlIGdyb3VwcyBwYXJhbWV0ZXIgY2FuIGJlIGEgY29tbWEgZGVsaW1pdGVkIHN0cmluZyBvZiBncm91cCBuYW1lcywgb3IgYW4gYXJyYXkgb2YgZ3JvdXAgbmFtZXMuPC9wPgogIDxwPklmIHRoZSB1aWQgcGFyYW1ldGVyIGlzIG5vdCBzcGVjaWZpZWQsIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJpZCBpcyB1c2VkLjwvcD4KICA8cD5FeGFtcGxlOjwvcD4KPHByZT48Y29kZT57aWYgZmV1X3NtYXJ0eTo6aXNfdXNlcl9tZW1iZXJvZignU3RhZmYsTWFuYWdlcnMnKX1IZWxsbyBDdXN0b21lcnsvaWZ9PC9jb2RlPjwvcHJlPgo8L3VsPgoKPGRpdiBjbGFzcz0id2FybmluZyI+CjxoMz5Qcml2YWN5IFdhcm5pbmc6PC9oMz4KPHA+VGhpcyBtb2R1bGUgZG9lcyBsb2cgdGhlIElQIGFkZHJlc3Mgb2YgdXNlcnMuIFRoaXMgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBEby1Ob3QtVHJhY2sgcG9saWNpZXMsIGFuZCBtYXkgYnJlYWsgc29tZSBsYXdzLiAgPHN0cm9uZz5Vc2UgQXQgWW91ciBPd24gUmlzay48L3N0cm9uZz48L3A+CjxwPkFkZGl0aW9uYWxseSwgdGhlIGFkbWluaXN0cmF0b3IgaGFzIHRoZSBhYmlsaXR5IHRvIGNvbmZpZ3VyZSB0aGUgbW9kdWxlIHNvIHRoYXQgY29va2llcyBhcmUgdXNlZC4gIEhvd2V2ZXIgbm8gcGVyc29uYWwgaW5mb3JtYXRpb24gaXMgc3RvcmVkIGluIHRoZSBjb29raWVzIChpZiBlbmFibGVkKS4gIE9ubHkgYSBzeXN0ZW0gYXNzaWduZWQgdW5pcXVlIHVzZXIgaWRlbnRpZmVyLCBhbmQgYSBzZXNzaW9uIGlkZW50aWZpZXIuPC9wPgo8L2Rpdj4KCjxoMz5TZWUgQWxzbzo8L2gzPgo8dWw+CiAgPGxpPkN1c3RvbUNvbnRlbnQgLSA8ZW0+KGRlcHJlY2F0ZWQpPC9lbT4gUHJvdmlkZXMgc21hcnR5IHRhZ3MgYW5kIHV0aWxpdGllcyBmb3IgbW9yZSBmbGV4aWJsZSBjb250cm9sIG9mIHByb3RlY3RlZCBwYWdlcy48L2xpPgogIDxsaT5TZWxmUmVnaXN0cmF0aW9uIC0gUHJvdmlkZXMgdGhlIGFiaWxpdHkgdG8gYWxsb3cgdXNlcnMgdG8gcmVnaXN0ZXIgdGhlbXNlbHZlcywgaW5jbHVkaW5nIHBhaWQgcmVnaXN0cmF0aW9uIG9wdGlvbnMuPC9saT4KICA8bGk+Q0dVc2VyRGlyZWN0b3J5IC0gUHJvdmlkZXMgdGhlIGFiaWxpdHkgdG8gYnJvd3NlIGFuZCBzZWFyY2ggdGhyb3VnaCB0aGUgcHJvZmlsZSBpbmZvcm1hdGlvbiBvZiBrbm93biB1c2Vycy48L2xpPgo8L3VsPgoKPGgzPkVuY3J5cHRlZCBEYXRhOjwvaDM+CjxwPlRoZSBFbmNyeXB0ZWQgZmllbGQgZnVuY3Rpb25hbGl0eSBpcyBpbnRlbmRlZCB0byBzdG9yZSAoaW4gYSBzZWN1cmUgd2F5KSBwZXJzb25hbCBhbmQgcHJpdmF0ZSBkYXRhIHRoYXQgZXZlbiB0aGUgc2l0ZSBhZG1pbmlzdHJhdG9yIHNob3VsZCBub3QgaGF2ZSBhY2Nlc3MgdG8uICBpLmU6IGl0ZW1zIHN1Y2ggYXMgQ3JlZGl0IENhcmQgaW5mb3JtYXRpb24uICBUaGUgb25seSBwZXJzb24gdGhhdCBzaG91bGQgYmUgYWJsZSB0byB2aWV3IGFuZCBlZGl0IHRoaXMgZGF0YSBpcyB0aGUgdXNlciBoaW1zZWxmLiAgIFRoaXMgZGF0YSBzaG91bGQgbm90IGJlIGV4cG9ydGVkIHRvIHBsYWluIHRleHQgZWl0aGVyLiAgVGhlIGRhdGEgY291bGQgaG93ZXZlciBiZSByZWFkIGFuZCB1c2VkIGJ5IG90aGVyIG1vZHVsZXMuPC9wPgo8cD48c3Ryb25nPk5vdGU6PC9zdHJvbmc+ICBUaGVyZSBtYXkgYmUgYSBuZWVkIGZvciBhbiBhZGRpdGlvbmFsIG1vZHVsZSB0byBkaXNwbGF5IHRoZSB1bmVuY3J5cHRlZCBmb3JtIG9mIGVuY3J5dHBlZCB1c2VyIGluZm9ybWF0aW9uLCBob3dldmVyIHRoZSBGRVUgbW9kdWxlIGRvZXMgbm90IG5lZWQgaXQuPC9wPgoKPGgzPkZBUTwvaDM+Cjx1bD4KICA8bGk+PHN0cm9uZz5ROjwvc3Ryb25nPiBXaHkgY2FuJ3QgSSBjcmVhdGUgYSBncm91cAogICAgPHA+PHN0cm9uZz5BOjwvc3Ryb25nPiBHcm91cHMgY2FuJ3QgYmUgY3JlYXRlZCB1bnRpbGwgYXQgbGVhc3Qgb25lIHByb3BlcnR5IGlzIGNyZWF0ZWQuPC9wPgogIDwvbGk+CiAgPGxpPjxzdHJvbmc+UTo8L3N0cm9uZz4gV2h5IGNhbid0IEkgZGVsZXRlIGEgcHJvcGVydHkKICAgIDxwPjxzdHJvbmc+QTo8L3N0cm9uZz4gQSBwcm9wZXJ0eSBjYW4gb25seSBiZSBkZWxldGVkIGlmIGl0IGlzIG5vdCBhc3NvY2lhdGVkIHdpdGggYW55IGdyb3VwcyBhcyByZXF1aXJlZCBvciBoaWRkZW4uICBBZGRpdGlvbmFsbHksIHByb3BlcnRpZXMgY3JlYXRlZCBieSBvdGhlciBtb2R1bGVzIGNhbm5vdCBiZSBkZWxldGVkLjwvcD4KICA8L2xpPgogIDxsaT48c3Ryb25nPlE6PC9zdHJvbmc+IFNldHRpbmcgcHJvcGVydHkgb3JkZXIgZG9lc24ndCBzZWVtIHRvIHdvcmsKICA8cD48c3Ryb25nPkE6PC9zdHJvbmc+IFRoZSBwZXJjaWV2ZWQgcHJvcGVydHkgb3JkZXIgd2lsbCBjaGFuZ2UgZWFjaCB0aW1lIHRoZSBncm91cCBpcyBlZGl0ZWQuICBUaGUgcHJvcGVydGllcyB0aGF0IGFyZSBtYXJrZWQgYXMgJnF1b3Q7b2ZmJnF1b3Q7IHdpbGwgYWx3YXlzIGJlIGRpc3BsYXllZCBhdCB0aGUgYm90dG9tLCBidXQgdGhlIHNvcnQgb3JkZXIgb2Ygb3RoZXIgcHJvcGVydGllcyB3aWxsIGJlIHJldGFpbmVkLjwvcD4KICA8L2xpPgo8L3VsPgoKPGgzPlRpcHM8L2gzPgo8dWw+CiAgPGxpPkR5bmFtaWMgTmF2aWdhdGlvbnM6CiAgICA8cD5JbiBtb3N0IGNpcmN1bXN0YW5jZXMgeW91IGNhbm5vdCBhbGxvdyBicm93c2VyIGNhY2hpbmcgb24gYW55IHBhZ2UgdGhhdCBoYXMgYSBkeW5hbWljIG5hdmlnYXRpb24uLi4gdGhlIHR3byBzaG91bGQgbm90IGJlIG1peGVkLjwvcD4KICA8L2xpPgogIDxsaT5SZWRpcmVjdCBQcmVmZXJlbmNlcyBhbmQgeyR1c2VybmFtZX06CiAgICA8cD5JZiB1c2luZyB0aGUgPGNvZGU+eyR1c2VybmFtZX08L2NvZGU+IHNtYXJ0eSB2YXJpYWJsZSBpbiBhbnkgb2YgdGhlIHJlZGlyZWN0IHByZWZlcmVuY2VzIGluIHRoZSBGRVUgbW9kdWxlJ3MgJnF1b3Q7YnVpbHRpbiBhdXRoZW50aWNhdGlvbiZxdW90OyB0YWIgYmUgc3VyZSB0byB0dXJuIE9GRiB0aGUgJnF1b3Q7RW1haWwgaXMgVXNlcm5hbWUmcXVvdDsgcHJlZmVyZW5jZS48L3A+CiAgPC9saT4KPC91bD4KCjxoMz5TdXBwb3J0PC9oMz4KPHA+VGhlIG1vZHVsZSBhdXRob3IgaXMgaW4gbm8gd2F5IG9ibGlnYXRlZCB0byBwcm92aWRlIHN1cHBvcnQgZm9yIHRoaXMgY29kZSBpbiBhbnkgZmFzaGlvbi4gIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPgo8dWw+CjxsaT5BIGJ1ZyB0cmFja2luZyBhbmQgZmVhdHVyZSByZXF1ZXN0IHN5c3RlbSBoYXMgYmVlbiBjcmVhdGVkIGZvciB0aGlzIG1vZHVsZSA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2Zyb250ZW5kdXNlcnMiPmhlcmU8L2E+LiAgUGxlYXNlIGJlIHZlcmJvc2UgYW5kIGRlc2NyaXB0aXZlIHdoZW4gc3VibWl0dGluZyBidWcgcmVwb3J0cyBhbmQgZmVhdHVyZSByZXF1ZXN0cywgYW5kIGZvciBidWcgcmVwb3J0cyBlbnN1cmUgdGhhdCB5b3UgaGF2ZSBwcm92aWRlZCBzdWZmaWNpZW50IGluZm9ybWF0aW9uIHRvIHJlbGlhYmx5IHJlcHJvZHVjZSB0aGUgaXNzdWUuPC9saT4KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi4gIFdoZW4gZGVzY3JpYmluZyBhbiBpc3N1ZSBwbGVhc2UgbWFrZSBhbiBlZmZvcnQgdG8gcHJvdmlkZSBhbGwgcmVsYXZhbnQgaW5mb3JtYXRpb24sIGEgdGhvcm91Z2ggZGVzY3JpcHRpb24gb2YgeW91ciBpc3N1ZSwgYW5kIHN0ZXBzIHRvIHJlcHJvZHVjZSBpdCBvciB5b3VyIGRpc2N1c3Npb24gbWF5IGJlIGlnbm9yZWQuPC9saT4KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zIj5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+CjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvciBkaXJlY3RseS4gIEhvd2V2ZXIsIHBsZWFzZSB1c2UgdGhpcyBhcyBhIGxhc3QgcmVzb3J0LCBhbmQgZW5zdXJlIHRoYXQgeW91IGhhdmUgZm9sbG93ZWQgYWxsIGFwcGxpY2FibGUgaW5zdHJ1Y3Rpb25zIG9uIHRoZSBmb3JnZSwgaW4gdGhlIGZvcnVtcywgZXRjLjwvbGk+CjwvdWw+Cgo8aDM+UGFyYW1ldGVyczwvaDM+Cjx1bD4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPSJkZWZhdWx0IgogIDxwPkFjdGlvbnM6PC9wPgogIDx1bD4KICAgIDxsaT48ZW0+ZGVmYXVsdDwvZW0+IC0gVGhlIGRlZmF1bHQgYWN0aW9uLiAgSWYgdGhlIHVzZXIgaXMgbG9nZ2VkIGluLCB0aGUgbG9nb3V0Zm9ybSBhY3Rpb24gd2lsbCBiZSBkaXNwbGF5ZWQuICBJZiB0aGUgdXNlciBpcyBub3QgbG9nZ2VkIGluIHRoZSBsb2dpbiBhY3Rpb24gd2lsbCBiZSBjYWxsZWQuCiAgICA8bGk+PGVtPmxvZ2luPC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dpbiBmb3JtLjwvbGk+CiAgICA8bGk+PGVtPmxvZ291dGZvcm08L2VtPiAtIERpc3BsYXkgb3V0cHV0IGFib3V0IHlvdXIgY3VycmVudCB1c2VybmFtZSwgYW5kIGFjdGlvbnMgdG8gY2hhbmdlIHlvdXIgc2V0dGluZ3MsIG9yIGxvZ291dC4gIElmIHRoZSB1c2VyIGlzIG5vdCBsb2dnZWQgaW4sIHRoaXMgYWN0aW9uIGRvZXMgbm90aGluZy48L2xpPgogICAgPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm0gZm9yIGxvZ2dlZCBpbiB1c2Vycy4gIElmIHRoZSB1c2VyIGlzIG5vdCBsb2dnZWQgaW4sIHRoaXMgYWN0aW9uIGRvZXMgbm90aGluZy48L2xpPgogICAgPGxpPjxlbT5mb3Jnb3RwdzwvZW0+IC0gRGlzcGxheSB0aGUgZm9yZ290IHBhc3N3b3JkIGZvcm0uPC9saT4KICAgIDxsaT48ZW0+c2lsZW50IChkZXByZWNhdGVkKTwvZW0+IC0gQ3JlYXRlcyBhbmQgYXNzaWducyBzb21lIHNtYXJ0eSB2YXJpYWJsZXMgY29udGFpbmluZyBpbmZvIGFib3V0IHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuPC9saT4KICAgIDxsaT48ZW0+bG9zdHVzZXJuYW1lPC9lbT4gLSBEaXNwbGF5IHRoZSBsb3N0dXNlcm5hbWUgZm9ybSAoaWYgdGhlIHN5c3RlbSBpcyBwcm9wZXJseSBzZXR1cCB0byBoYW5kbGUgbG9zdCB1c2VybmFtZSByZXF1ZXN0cywgYW5kIHRoZSB1c2VyIGlzIG5vdCBjdXJyZW50bHkgbG9nZ2VkIGluLjwvbGk+CiAgICA8bGk+PGVtPnJlc2V0X3Nlc3Npb248L2VtPiAtIFByb3ZpZGUgYSBqYXZhc2NyaXB0IGNvbnRyb2xsZWQgdGVtcGxhdGUgdG8gYWxsb3cgdGhlIG1hbnVhbCwgb3IgYXV0b21hdGljIHBpbmdpbmcgb2YgdGhlIHVzZXIgc2Vzc2lvbi4gIFRoaXMgdGVtcGxhdGUgY2FuIGJlIHVzZWQgdG8gcmVtaW5kIHRoZSB1c2VyIHRoYXQgaGlzIGxvZ2luIHNlc3Npb24gaXMgYWJvdXQgdG8gZXhwaXJlLCBhbmQgdG8gdHJpZ2dlciBpdHMgcmVzZXQuICBOb3JtYWxseSB0aGlzIG1ldGhvZCBpcyBub3QgcmVxdWlyZWQgYXMgYW55IHBhZ2UgdGhhdCBkaXNwbGF5cyB0aGUgRnJvbnRFbmRVc2VyIGNvbnRyb2xzIHdvdWxkIGhhbmRsZSB0aGlzLCBqdXN0IHJlcXVpcmluZyB0aGUgdXNlciB0byB2aWV3IGEgcGFnZSBvbiBhIHJlZ3VsYXIgYmFzaXMuICBIb3dldmVyLCBpZiB0aGVyZSBhcmUgcGFnZXMgd2l0aCBhbG90IG9mIGNvbnRlbnQgcmVxdWlyaW5nIGV4dGVuc2l2ZSByZWFkaW5nLCB0aGlzIG1heSBiZSBhIHVzZWZ1bCBzb2x1dGlvbi48L2xpPgogICAgPGxpPjxlbT52aWV3dXNlcjwvZW0+IC0gRGlzcGxheSBhIHJlcG9ydCBmb3IgYSBzaW5nbGUgdXNlciwgcmVxdWlyZXMgdXNlIG9mIHRoZSB1aWQgcGFyYW1ldGVyLjwvbGk+CiAgPC91bD4KPC9saT4KCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGZvcm09Im5hbWUiCjxwPkZvcm1zOjwvcD4KPGRpdiBjbGFzcz0id2FybmluZyI+Tm90ZTogVGhlIGZvcm0gcGFyYW1ldGVyIGlzIGRlcHJlY2F0ZWQuICBQbGVhc2UgdXMgdGhlIHN0YW5kYXJkIGFjdGlvbiBwYXJhbWV0ZXIgZm9yIGFjY2Vzc2luZyBkaWZmZXJlbnQgRkVVIGZvcm1zIGRpcmVjdGx5LjwvZGl2Pgo8dWw+CiA8bGk+PGVtPmxvZ2luPC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dpbiBmb3JtIDxlbT4oc2VlIGFjdGlvbj1sb2dpbik8L2VtPjwvbGk+CiA8bGk+PGVtPmxvZ291dDwvZW0+IC0gRGlzcGxheSB0aGUgbG9nb3V0IGZvcm0gPGVtPihzZWUgYWN0aW9uPWxvZ291dGZvcm0pPC9lbT48L2xpPgogPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm0gPGVtPihzZWUgYWN0aW9uPWNoYW5nZXNldHRpbmdzKTwvZW0+PC9saT4KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIERpc3BsYXkgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtIDxlbT4oc2VlIGFjdGlvbj1mb3Jnb3Rwdyk8L2VtPjwvbGk+CiA8bGk+PGVtPmxvc3R1c2VybmFtZTwvZW0+IC0gRGlzcGxheSB0aGUgbG9zdCB1c2VybmFtZSBmb3JtLiA8ZW0+KHNlZSBhY3Rpb249bG9zdHVzZXJuYW1lKTwvZW0+PC9saT4KPGxpPjxlbT5zaWxlbnQ8L2VtPiA9ICA8ZW0+KHNlZSBhY3Rpb249c2lsZW50KTwvZW0+IERpc3BsYXkgbm90aGluZywgYnV0IGV4cG9ydCBwcm9wZXJ0aWVzIGFuZCBvdGhlciBzbWFydHkgdmFyaWFibGVzIGZvciB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyLiAgSWYgbm8gdXNlciBpcyBsb2dnZWQgaW4sIHRoZW4gbm8gdmFyaWFibGVzIGFyZSBleHBvcnRlZC48L2xpPgo8L3VsPgo8L2xpPgoKPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89InBhZ2UiCiAgPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiwgbG9nb3V0LCBhbmQgY2hhbmdlc2V0dGluZ3MgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGNvbnRhaW5zIHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0byByZWRpcmVjdCB0bywgd2hlbiB0aGUgZm9ybSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgY29tcGxldGVkPC9wPgogIDxwPk5vdGU6IFRoYXQgb24gbG9naW4gdGhpcyBjYW4gYmUgb3ZlcnJpZGRlbiB1bmRlciBzb21lIGNpcmN1bXN0YW5jZXMuPC9wPgo8L0xJPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0iZ3JvdXAxLCBncm91cDIsIGdyb3VwMyIKICAgPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gIEJhc2ljYWxseSBvbmx5IGFsbG93cyB1c2VycyB0byBsb2dpbiBpZiB0aGV5IGJlbG9uZyB0byB0aGF0IHBhcnRpY3VsYXIgZ3JvdXAocykuPC9wPgo8L2xpPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsb3N0dW5fZ3JvdXA9Imdyb3VwIgogICA8cD5Vc2VkIHdpdGggdGhlIGxvc3R1c2VybmFtZSBmb3JtLCB0aGlzIGZlYXR1cmUgc3BlY2lmaWVzIHRoZSBmcm9udGVuZCB1c2VyIGdyb3VwIHRvIGFzc3VtZSB0aHQgdXNlcnMgYXJlIG1lbWJlcnMgb2YuPC9wPgo8L2xpPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBub2NhcHRjaGE9IjEiCiAgPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgdmVyaWZ5IGZvcm1zLCBUaGlzIHdpbGwgZGlzYWJsZSBjYXB0Y2hhIG9uIHRoZSBmb3JtLiBCeSBkZWZhdWx0LCBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGZvciBsb2dpbi4gIFRoaXMgaXMgYSBzZWN1cml0eSBtZWFzdXJlIGludGVudGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy48L3A+CjwvbGk+CjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHVpZD1udWxsCiAgPHA+VXNlZCB3aXRoIHRoZSB2aWV3dXNlciBhY3Rpb24uICBUaGlzIHBhcmFtZXRlciBpcyByZXF1aXJlZCB0byBzcGVjaWZ5IHdoaWNoIHVzZXIgdG8gdmlldyB0aGUgZGV0YWlscyBvZi48L3A+CjwvbGk+CjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGlubGluZT10cnVlCiAgPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIGluZGljYXRlcyB0aGF0IHRoZSByZXN1bHQgb2YgdGhlIGZvcm0gc3VibWlzc2lvbiBzaG91bGQgcmVwbGFjZSB0aGUgb3JpZ2luYWwgaW5wdXQgdGFnLjwvcD4KPC9saT4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbG9naW50ZW1wbGF0ZT1zdHJpbmcKICA8cD5UaGlzIHBhcmFtZXRlciBhbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCBsb2dpbiBmb3JtIHRlbXBsYXRlIHdpdGggdGhlIG5hbWUgb2YgYSBkaWZmZXJlbnQgb25lLjwvcD4KPC9saT4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbG9nb3V0dGVtcGxhdGU9c3RyaW5nCiAgPHA+VGhpcyBwYXJhbWV0ZXIgYWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgbG9nb3V0IHRlbXBsYXRlIHdpdGggdGhlIG5hbWUgb2YgYSBkaWZmZXJlbnQgb25lLjwvcD4KPC9saT4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gY2hhbmdlc2V0dGluZ3N0ZW1wbGF0ZT1zdHJpbmcKICA8cD5UaGlzIHBhcmFtZXRlciBhbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCBjaGFuZ2VzZXR0aW5ncyBmb3JtIHRlbXBsYXRlIHdpdGggdGhlIG5hbWUgb2YgYSBkaWZmZXJlbnQgb25lLjwvcD4KPC9saT4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZm9yZ290cHd0ZW1wbGF0ZT1zdHJpbmcKICA8cD5UaGlzIHBhcmFtZXRlciBhbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCBmb3Jnb3QgcGFzc3dvcmQgZm9ybSB0ZW1wbGF0ZSB3aXRoIHRoZSBuYW1lIG9mIGEgZGlmZmVyZW50IG9uZS48L3A+CjwvbGk+CjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxvc3R1bnRlbXBsYXRlPXN0cmluZwogIDxwPlRoaXMgcGFyYW1ldGVyIGFsbG93cyBvdmVycmlkaW5nIHRoZSBsb3N0IHVzZXJuYW1lIGZvcm0gdGVtcGxhdGUgd2l0aCB0aGUgbmFtZSBvZiBhIGRpZmZlcmVudCBvbmUuPC9wPgo8L2xpPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiB2aWV3dXNlcnRlbXBsYXRlPXN0cmluZwogIDxwPlRoaXMgcGFyYW1ldGVyIGFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHZpZXd1c2VyIHRlbXBsYXRlIHdpdGggdGhlIG5hbWUgb2YgYSBkaWZmZXJlbnQgb25lLjwvcD4KPC9saT4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWZ0ZXJ2ZXJpZnl0ZW1wbGF0ZT1zdHJpbmcKICA8cD5UaGlzIHBhcmFtZXRlciBhbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCBhZnRlciB2ZXJpZmljYXRpb24gdGVtcGxhdGUgd2l0aCB0aGUgbmFtZSBvZiBhIGRpZmZlcmVudCBvbmUuPC9wPgo8L2xpPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiByZXNldHNlc3Npb250ZW1wbGF0ZT1zdHJpbmcKICA8cD5UaGlzIHBhcmFtZXRlciBhbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNldCBzZXNzaW9uIGZvcm0gdGVtcGxhdGUgd2l0aCB0aGUgbmFtZSBvZiBhIGRpZmZlcmVudCBvbmUuPC9wPgo8L2xpPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiB2ZXJpZnlmb3JtdGVtcGxhdGU9c3RyaW5nCiAgPHA+VGhpcyBwYXJhbWV0ZXIgYWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgdmVyaWZpY2F0aW9uIGZvcm0gdGVtcGxhdGUgd2l0aCB0aGUgbmFtZSBvZiBhIGRpZmZlcmVudCBvbmUuPC9wPgo8L2xpPgo8L3VsPgo8cD48c3Ryb25nPlRpcDo8L3N0cm9uZz4gWW91IGNhbiB1c2UgdGhlIHtjZ2VfbW9kdWxlX2hpbnR9IHBsdWdpbiBmcm9tIENHRXh0ZW5zaW9ucywgb3IgdGhlIHtjbXNfbW9kdWxlX2hpbnR9IHBsdWdpbiBpbiBDTVNNUyAyLjAgdG8gc2V0IHRoZXNlIHBhcmFtZXRlcnMgb24gYSBnbG9iYWwsIHBlci1wYWdlLXRlbXBsYXRlLCBvciBwZXItcGFnZSBiYXNpcyB3aXRob3V0IGhhdmluZyB0byBhZGp1c3QgZXZlcnkgY2FsbCwgYW5kIHdoaWxlIHN0aWxsIG1haW50YWluaW5nIHByZXR0eSBVUkwncy48L3A+Cgo8aDM+VXNpbmcgRGlmZmVyZW50IFRlbXBsYXRlcy48L2gzPgo8cD5BcyBvZiBGRVUgMS4zMCBpdCBpcyBwb3NzaWJsZSB0byBzcGVjaWZ5IGRpZmZlcmVudCB0ZW1wbGF0ZXMgZm9yIG1hbnkgb2YgdGhlIEZFVSBtb2R1bGUgdGVtcGxhdGVzLiAgSXQgaXMgYWxzbyBmbGV4aWJsZS4gIFlvdSBjYW4gdXNlIGdsb2JhbCBjb250ZW50IGJsb2Nrcywgb3IgZmlsZSBiYXNlZCB0ZW1wbGF0ZXMgb3IKIGFueSBvdGhlciBzbWFydHkgcmVzb3VyY2UgYXMgYSB0ZW1wbGF0ZS48L3A+Cjx1bD4KICA8bGk+VGVtcGxhdGUgbmFtZXMgZW5kaW5nIHdpdGggLnRwbAogICAgPHA+SWYgdGhlIHNwZWNpZmllZCB0ZW1wbGF0ZSBuYW1lIGlzIG5vdCBhIHNtYXJ0eSByZXNvdXJjZSwgYnV0IGVuZHMgd2l0aCB0aGUgZXh0ZW5zaW9uIDxjb2RlPi50cGw8L2NvZGU+LCB0aGVuIEZFVSAoYWN0dWFsbHkgQ0dFeHRlbnNpb25zKSB3aWxsIGFzc3VtZSB0aGF0IHlvdSB3YW50IGEgZmlsZSB0ZW1wbGF0ZSBmcm9tIHRoZSBtb2R1bGUgZGlyZWN0b3J5LCBvciBmcm9tIHRoZSBtb2R1bGVfY3VzdG9tIGRpcmVjdG9yeSA8ZW0+KHNlZSA8YSBocmVmPSJodHRwOi8vZG9jcy5jbXNtYWRlc2ltcGxlLm9yZyI+aHR0cDovL2RvY3MuY21zbWFkZXNpbXBsZS5vcmc8L2E+IGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZSBtb2R1bGVfY3VzdG9tIHN0dWZmKTwvZW0+LgogIDwvbGk+CiAgPGxpPmdsb2JhbGNvbnRlbnQ6Z2NiX25hbWUKICAgIDxwPlNwZWNpZnlpbmcgYSB0ZW1wbGF0ZSBpbiB0aGlzIHN5bnRheCBhbGxvd3MgeW91IHRvIHVzZSBhIGdsb2JhbCBjb250ZW50IGJsb2NrIGFzIGFzIHJlcGxhY2VtZW50IHRlbXBsYXRlLjwvcD4KICA8L2xpPgogIDxsaT50ZW1wbGF0ZTpnY2JfbmFtZQogICAgPHA+U3BlY2lmeWluZyBhIHRlbXBsYXRlIGluIHRoaXMgc3ludGF4IGFsbG93cyB5b3UgdG8gdXNlIGEgcGFnZSB0ZW1wbGF0ZSBhcyBhcyByZXBsYWNlbWVudCB0ZW1wbGF0ZS48L3A+CiAgPC9saT4KICA8bGk+Y21zX3RlbXBsYXRlOm5hbWUgPGVtPihDTVNNUyAyLjAgb25seSk8L2VtPgogICAgPHA+U3BlY2lmeWluZyBhIHRlbXBsYXRlIGluIHRoaXMgc3ludGF4IGFsbG93cyB5b3UgdG8gdXNlIGEgdGVtcGxhdGUgZnJvbSB3aXRoaW4gRGVzaWduIE1hbmFnZXIgYXMgYXMgcmVwbGFjZW1lbnQgdGVtcGxhdGUuPC9wPgogIDwvbGk+CiAgPGxpPmZpbGU6ZmlsZW5hbWUudHBsCiAgICA8cD5Vc2luZyB0aGlzIHN5bnRheCBhbGxvd3MgeW91IHRvIHVzZSBhIGZpbGUgYmFzZWQgdGVtcGxhdGUgZnJvbSB3aXRoaW4gdGhlIHNtYXJ0eSB0ZW1wbGF0ZXMgZGlyIDxlbT4odXN1YWxseSB0bXAvdGVtcGxhdGVzKTwvZW0+LgogIDwvbGk+CjwvdWw+CjxwPlRoZXNlIG1ldGhvZHMgY2FuIGJlIHVzZWQgd2l0aCB0aGUgbG9naW50ZW1wbGF0ZSwgbG9nb3V0dGVtcGxhdGUsIGNoYW5nZXNldHRpbmdzdGVtcGxhdGUsIGFuZCBmb3Jnb3Rwd3RlbXBsYXRlIHBhcmFtZXRlcnMuPC9wPgo8cD5Ob3RlOiBUaGVzZSBwYXJhbWV0ZXJzIG1heSBub3QgYmUgcGFzc2VkIHRvIHRoZSB2YXJpb3VzIGZvcm1zIGZyb20gdGhlIHByaW1hcnkge0Zyb250RW5kVXNlcnN9IGNhbGwuICBJbnN0ZWFkLCB5b3Ugc2hvdWxkIHVzZSB0aGUge2NnZV9tb2R1bGVfaGludH0gdGFnIG9uIHRoZSBwYWdlIHdoZXJlIHRoZSB2YXJpb3VzIGZvcm1zIG9yIHZpZXdzIHdpbGwgYmUgZGlzcGxheWVkLiAgIGkuZTogIHtjZ2VfbW9kdWxlX2hpbnQgbW9kdWxlPUZyb250RW5kVXNlcnMgY2hhbmdlc2V0dGluZ3N0ZW1wbGF0ZT0nZ2xvYmFsX2NvbnRlbnQ6bXljaGFuZ2VzZXR0aW5ncyd9LjwvcD4KCjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dApvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+CjxoMz5SZXF1aXJlbWVudHM8L2gzPgo8cD5JbiBvcmRlciB0byBpbXBsZW1lbnQgdGhlIGZvcmdvdHRlbiBwYXNzd29yZCBmdW5jdGlvbmFsaXR5LCB0aGlzIG1vZHVsZSByZXF1aXJlcyB0aGUgQ01TTWFpbGVyIG1vZHVsZSB0byBiZSBwcmV2aW91c2x5IGluc3RhbGxlZCBhbmQgcHJvcGVybHkgY29uZmlndXJlZC48L3A+CjxwPkZvciBlbmNyeXB0ZWQgZmllbGRzIHRoZSBtY3J5cHQgZnVuY3Rpb25hbGl0eSBpcyByZXF1aXJlZC48L3A+CjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPgo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDgsIFJvYmVydCBDYW1wYmVsbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyI+Jmx0O2NhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcmZ3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPgo8cD5UaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQppdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgooYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLjwvcD4KPHA+SG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQppbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCk1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbgpzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLjwvcD4KPHA+VGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCmJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCk1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKT3IgcmVhZCBpdCA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPm9ubGluZTwvYT48L3A+CjxoMz5EZXBlbmRlbmNpZXM8L2gzPjx1bD48bGk+Q0dFeHRlbnNpb25zID0mZ3Q7IDEuNTMuMTU8L2xpPjxsaT5DR1NpbXBsZVNtYXJ0eSA9Jmd0OyAyLjEuNTwvbGk+PC91bD4=]]></help>
	<about><![CDATA[PGJyIC8+QXV0aG9yOiBjYWxndXkxMDAwICZsdDtjYWxndXkxMDAwQGhvdG1haWwuY29tJmd0OzxiciAvPjxiciAvPlZlcnNpb246IDIuMy4yPGJyIC8+PGJyIC8+Q2hhbmdlIEhpc3Rvcnk6PGJyIC8+PHVsPgo8bGk+MC4wLjEgLSBPY3RvYmVyLCAyMDA1IC0gSW5pdGlhbCBOUlBUIChOb3QgUmVhZHkgZm9yIFByaW1lIFRpbWUpIHJlbGVhc2U8L2xpPgo8bGk+MC4xLjAgLSBPY3RvYmVyLCAyMDA1IC0gSW5pdGlhbCByZWxlYXNlPC9saT4KPGxpPjAuMS4xIC0gT2N0b2JlciwgMjAwNSAtIEZpeGVkIGlzc3VlcyB3aXRoIHByb3BlcnRpZXM8L2xpPgo8bGk+MC4xLjIgLSBPY3RvYmVyLCAyMDA1IC0gQWRkZWQgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHk8L2xpPgo8bGk+MC4xLjMgLSBOb3ZlbWJlciwgMjAwNQogICAgPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gc3BlY2lmeSBhIHJlZGlyZWN0IHBhZ2Ugb24gbG9naW4sIGxvZ291dCwgZm9yZ290IHBhc3N3b3JkLCBhbmQgY2hhbmdlIHNldHRpbmdzLCBhbmQgYWRkZWQgdGhlIHJldHVybnRvIGFuZCBmb3JtIHBhcmFtZXRlcnMgdG8gdGhlIHVzZXIgc2lkZSBvZiB0aGluZ3MsIGFsc28gZGlkIGEgY291cGxlIGxmIGxpdHRsZSBjbGVhbnVwcy4gIFRoaXMgdmVyc2lvbiByZXF1aXJlcyB2MC4xMSBhbmQgYWJvdmUgZm9yIGNlcnRhaW4uPC9wPjwvbGk+CjxsaT4wLjEuNCAtIE5vdmVtYmVyLCAyMDA1IC0gVmVyeSBtaW5vciBjaGFuZ2Ugd2l0aCByZXNwZWN0IHRvIGEgZm9yZ290dGVuIGFuZCBubyBsb25nZXIgbmVlZGVkIGZ1bmN0aW9uIGNhbGw8L2xpPgo8bGk+MC4xLjUgLSBOb3ZlbWJlciwgMjAwNQogICAgPHA+QW5vdGhlciB2ZXJ5IG1pbm9yIGNoYW5nZSwgYWRkZWQgc29tZSB0ZXh0IHRvIHRoZSBQb3N0SW5zdGFsbCBtZXNzYWdlLjwvcD48L2xpPgo8bGk+MC4xLjYgLSBKYW51YXJ5LCAyMDA2CiAgICA8cD5DaGFuZ2VzIHRvIHRoZSBwZXJtaXNzaW9uIG1vZGVsLCBhbmQgbWlub3IgYnVnIGZpeGVzIHRvIHRoZSBwcmVmZXJlbmNlcy4gIEFsc28gc29tZSBwaHA1IGZpeGVzIGJ1dCBJIGFtIHN1cmUgdGhhdCB0aGVyZSBhcmUgbW9yZSBvdXQgdGhlcmUuPC9wPjwvbGk+CjxsaT4wLjEuNyAtIEphbnVhcnksIDIwMDYKICAgIDxwPk1hbnkgdGhhbmtzIHRvIDxiPmthdG9uPC9iPiBmb3IgYWRkaW5nIHRoZSB0ZXh0YXJlYSBhbmQgZHJvcGRvd24gcHJvcGVydHkgdHlwZXMuPC9wPgogICAgPHA+Rml4ZXMgdG8gdGhlIHByb3BlcnR5IGFkZGluZyB0byBmaXggcHJvYmxlbXMgd2l0aCBzcGFjZXMgaW4gcHJvcGVydHkgbmFtZXMgKHdlIG5vIGxvbmdlciBsZXQgdGhhdCBoYXBwZW4pLjwvcD4KPC9saT4KPGxpPjxwPjEuMC4wIC0gRmVicnVhcnksIDIwMDY8cD4KICAgIDxwPkFkZGVkIGZpbHRlcmluZyBhbmQgcm93IGxpbWl0aW5nIHRvIHRoZSBhZG1pbiBwYW5lbC4gVGhpcyB3aWxsIGhhdmUgYmlnIGJlbmVmaXRzIHRvIHRob3NlIHRoYXQgYXJlIHVzaW5nIHRoaXMgbW9kdWxlIGZvciBoaWdoIHRyYWZpYywgYW5kIGhpZ2ggdXNlciBzaXRlcy48L3A+CiAgICA8cD5BZGRlZCBzb3J0aW5nIHRvIHRoZSBhZG1pbiBwYW5lbDwvcD4KICAgIDxwPkFkZGVkIG1heCBsZW5ndGggYWJpbGl0eSB0byB0ZXh0IGFuZCBlbWFpbCBmaWVsZHM8L3A+CiAgICA8cD5GaXhlZCBhIHNtYWxsIHByb2JsZW0gd2l0aCB0aGUgZGVmYXVsdCBncm91cCBub3QgYmVpbmcgY2hlY2tlZCB3aGVuIGFkZGluZyBhIHVzZXI8L3A+CiAgICA8cD5TYXZlIGZpbHRlciBzZXR0aW5ncyBpbiBwcmVmZXJlbmNlcywgYW5kIHRoZSBhY3RpdmUgdGFiIHRvby48L3A+CiAgICA8cD5EZWxldGUgdXNlciBwcm9wZXJ0aWVzIHdoZW4gYSBwcm9wZXJ0eSBpcyBkZWxldGVkIDxlbT5Ob3RlPC9lbT4sIG5vdCB3aGVuIGl0IGlzIGRpc2FibGVkIGluIHRoZSBlZGl0IGdyb3VwIGRpYWxvZzwvcD4KICAgIDxwPkFkZCBjb25maXJtYXRpb24gbWVzc2FnZSBpbiBlZGl0IGdyb3Vwcy48L3A+CiAgICA8cD5BZGRlZCBhIGNvdXBsZSBtb3JlIGNvbmZpcm1hdGlvbiBtZXNzYWdlcy48L3A+CiAgICA8cD5BZGRlZCBDU1YgRXhwb3J0IG9wdGlvbjwvcD4KICAgIDxwPlRvZG8gLSBBZGQgcHJlZmVyZW5jZXMgZm9yIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmaWVsZGxlbmd0aDwvcD4KPC9saT4KPGxpPjEuMC4xIC0gTWFyY2gsIDIwMDYKICAgIDxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGNoZWNrIGZvciBkdXBsaWNhdGUgZW1haWwgYWRkcmVzc2VzPC9wPgogICAgPHA+Rml4IHByb2JsZW0gd2hlcmUgZXhwaXJ5IGRhdGUgd2FzIGJlaW5nIG1vZGlmaWVkIHdoZW4gYWRtaW4gbW9kaWZpZWQgdXNlciBzZXR0aW5nczwvcD4KICAgIDxwPkFkZCBhIGNvbmZpcm1hdGlvbiBtZXNzYWdlIHRvIHRoZSBwcmVmZXJlbmNlcyBzdWJtaXQgYnV0dG9uPC9wPgogICAgPHA+Rml4ZWQgYSBtaW5vciBidWcgd2hlbiBjb3V0aW5nIHRoZSBudW1iZXIgb2YgdXNlcnMgaW4gYSBncm91cDwvcD4KICAgIDxwPkZpeGVzIHRvIHRoZSBzaXplIG9mIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmaWVsZHMsIGFuZCBtYXhsZW5ndGg8L3A+CiAgICA8cD5BZGRlZCBhZHZhbmNlZCBmaWx0ZXJpbmcgb24gcHJvcGVydGllczwvcD4KICAgIDxwPkNoYW5nZXMgdG8gbGFiZWxpbmcgaW4gYWRkIG9yIGVkaXQgdXNlcjwvcD4KICAgIDxwPkZpeGVzIHRvIHByb2JsZW1zIHdpdGggaW5saW5lIGFuZCBub24gaW5saW5lIGZvcm1zLCB0aGUgcGFzc3dvcmQgaXMgbmV2ZXIgc2VudCBvbiB0aGUgZ2V0IGxpbmU8L3A+CiAgICA8cD5DaGFuZ2VkIHRvIHJlcXVpcmUgQ01TIDAuMTItYmV0YTIgYXQgYSBtaW5pbXVtIChmb3Igc2FmZXR5IHB1cnBvc2VzKTwvcD4KPC9saT4KPGxpPjEuMC4yIC0gTWFyY2gsIDIwMDYKICAgIDxwPk1vcmUgZmllbGQgbGVuZ3RoIGZpeGVzPC9wPgo8L2xpPgo8bGk+MS4wLjMgLSBNYXJjaCwgMjAwNgogICAgPHA+RXhwb3J0IHRvIHNtYXJ0eSBhbGwgb2YgdGhlIHVzZXIgcHJvcGVydGllcyB3aGVuIHRoZXkgYXJlIGxvZ2dlZCBpbjwvcD4KPC9saT4KPGxpPjEuMC40IC0gTWF5LCAyMDA2CiAgICA8cD5GaXhlcyB0byB0aGUgZXhwb3J0IGNvZGU8L3A+CiAgICA8cD5Db2RlIGNsZWFudXAgKGFscGhhYmV0aXplIGZ1bmN0aW9ucyk8L3A+CiAgICA8cD5NaW5vciBmaXhlcyBhbmQgZW5oYW5jZW1lbnRzIChyZWNvbW1lbmRlZCBieSBuaWxzNzMpIGZvciBkZWFsaW5nIHdpdGggdGhlIGNoYW5nZSBwYXNzd29yZCBzdHVmZi48L3A+CiAgICA8cD5SZW1vdmVkIHRoZSByZXF1aXJlbWVudCBmb3IgQ01TIDAuMTIsIGFuZCBwdXQgaXQgYmFjayB0byAwLjExLjI8L3A+CiAgICA8cD5BZGRlZCB0aGUgXCdzaWxlbnRcJyBmb3JtPC9wPgogICAgPHA+Q2xlYW5lZCB1cCBkYXRhYmFzZSBhY2Nlc3Mgc3R1ZmYgZm9yIHBlcmZvcm1hbmNlIHJlYXNvbnMgKGhvcGVmdWxseSk8L3A+CiAgICA8cD5BZGRlZCBjb3B5cmlnaHQgaW5mbzwvcD4KICAgIDxwPkFkZGVkIG1hY3JvcyBmb3IgcmVkaXJlY3RvIHRvIGEgdXNlciBzcGVjaWZpYyBwYWdlIG9uIGxvZ2luIG9yIGxvZ291dDwvcD4KICAgIDxwPlR3ZWFrcyB0byB0aGUgYWRtaW4gcHJlZmVyZW5jZXMgdGFiPC9wPgo8L2xpPgo8bGk+MS4wLjUgLSBNYXksIDIwMDYKICAgIDxwPkZpeGVkIGEgcHJvYmxlbSB3aXRoIGV4cGlyeSBkYXRlczwvcD4KICAgIDxwPlN0YXJ0IHNwbGl0dGluZyB0aGUgY29kZSB1cCBpbnRvIHNldmVyYWwgZmlsZXM8L3A+CjxsaT4xLjAuNiAtIE1heSwgMjAwNgogICAgPHA+Rml4ZWQgYSBwcm9ibGVtIHdpdGggZWRpdGluZyBkcm9wZG93bnM8L3A+CjwvbGk+CjxsaT4xLjEuMCAtIE1heSwgMjAwNgogICAgPHA+RXZlbnRzPC9wPgogICAgPHA+T3B0aW9uYWxseSBkaXNhbGxvdyByZXBlYXRlZCBsb2dpbnM8L3A+CiAgICA8cD5FeHBvcnQgdGhlIHVzZXIgaWQgdG8gc21hcnR5PC9wPgogICAgPHA+QWRkZWQgb3B0aW9uYWxseSBce1wkZ3JvdXBcfSBmb3IgdGhlIHBhZ2VzIHRvIGp1bXAgdG8gb24gbG9naW48L3A+CjwvbGk+CjxsaT4xLjEuMSAtIFNlcHQsIDIwMDYKICAgIDxwPkZpeGVkIGEgYnVnIHdoZW4gYSB1c2VyIHdhcyBlZGl0aW5nIGhpcyBzZXR0aW5ncyB3aXRoIFwnYWxsb3cgZHVwbGljYXRlIGVtYWlsc1wnIHdhcyBvZmY8L3A+CiAgICA8cD5DaGFuZ2VkIHRoZSBkcm9wZG93biB0YWJsZSB0byAyNTUgY2hhcmFjdGVyczwvcD4KICAgIDxwPk1pbm9yIGNsZWFudXBzPC9wPgo8L2xpPgo8bGk+MS4xLjIgLSBEZWMsIDIwMDYKICAgIDxwPkZpeGVzIChob3BlZnVseSkgdG8gdGhlIGFkb2RiL2Fkb2RiLWxpdGUgREFURVRJTUUgaXNzdWU8L3A+CiAgICA8cD5BZGQgY2FwdGNoYSBzdXBwb3J0IHRvIHRoZSBsb2dpbiBzY3JlZW4gKG9wdGlvbmFsKSwgdGhhbmtzIGRpdHRtYW48L3A+CiAgICA8cD5GaXhlcyB0byBjYW5jZWwgaGFuZGxpbmcgb24gdGhlIGxvc3QgcGFzc3dvcmQgYW5kIGNoYW5nZSBzZXR0aW5ncyBzY3JlZW5zPC9wPgogICAgPHA+Rml4ZXMgdG8gdXNlciBleHBpcnkgKG1vcmUgREJUaW1lc3RhbXAgaXNzdWVzKSwgdGhhbmtzIGFnYWluIGRpdHRtYW48L3A+CiAgICA8cD5PcHRpb24gdG8gYWxsb3cgRkVVc2VycyB0byBoYXZlIGl0cyBvd24gc2V0IG9mIHBlcm1pc3Npb25zIGFzc2lkZSBmcm9tIHRoZSBhZG1pbiBwZXJtaXNzaW9ucy4gIFRoYW5rcyBfU2pHXzwvcD4KICAgIDxwPk9wdGlvbiB0byBhbGxvdyBkdXBsaWNhdGUgcGFzc3dvcmQgcmVtaW5kZXIgcmVxdWVzdHMgYW5kIHRvIHNwZWNpZnkgdGV4dCBvbiB0aGUgc2lnbmluIGJ1dHRvbi4gIFRoYW5rcyBfU2pHXzwvcD4KICAgIDxwPkdlbmVyYWwgY2xlYW51cCBvZiBmdW5jdGlvbnMgdGhhdCB3ZXJlIG5vdCBiZWluZyB1c2VkIGFuZCBub3RpY2VzL3dhcm5pbmdzPC9wPgogICAgPHA+QWRkZWQgdGhlIG9ubHlfZ3JvdXBzIHBhcmFtIGZvciBsb2dpbiBmb3Jtcy4gIFRoYW5rcyB3aXNoeTwvcD4KICAgIDxwPkZpeGVzIHRvIHRoZSBsZW5ndGggb2YgdGhlIGVtYWlsIGZpZWxkIGluIHRoZSBjaGFuZ2UgcGFzc3dvcmQgZm9ybTwvcD4KICAgIDxwPkZpeGVzIHRvIHRoZSBlbWFpbCB2YWxpZGF0aW9uIHN0dWZmPC9wPgo8L2xpPgogICAgPGxpPjEuMi4wIC0gQXByaWwsIDIwMDcKICAgIDxwPmVsaWphaGxvZmdyZW4gLSBGaXhlcyB0byBjYXB0Y2hhIHN1cHBvcnQsIGFuZCBzb21lIHRlbXBsYXRlIGNsZWFudXBzLjwvcD4KICAgIDxwPkFkZCBzdXBwb3J0IGZvciBtdWx0aSBzZWxlY3QgbGlzdHM8L3A+CiAgICA8cD5UZW1wbGF0ZSBjbGVhbnVwcyAobW9yZSBvZiBlbSk8L3A+CiAgICA8cD5BZGQgc3VwcG9ydCBmb3IgdmFsdWU9a2V5IHN0dWZmIGluIHRoZSBkcm9wZG93biBhbmQgbXVsdGkgc2VsZWN0IGxpc3RzLjwvcD4KICAgIDxwPmJldHRlciBjaGVja2luZyBvZiB0aGUgImF0IGxlYXN0IG9uZSBncm91cCByZXF1aXJlZCIgc3R1ZmY8L3A+CiAgICA8cD5PdXRwdXQgbW9yZSBzbWFydHkgdmFyaWFibGVzIG9uIHRoZSB1c2VyIHNldHRpbmdzIHBhZ2UsIHRvIGFsbG93IHBlb3BsZSB0byBtb2RpZnkgdGhlIHRlbXBsYXRlIHRvIHNvbWV0aGluZyB0aGF0IGlzIG1vcmUgYWNjZXNzaWJpbGU8L3A+CiAgICA8cD5TcGxpdCBpbnRvIG1vcmUgZmlsZXMgZm9yIHBlcmZvcm1hbmNlPC9wPgogICAgPHA+WW91IGNhbiBub3cgbm90IGRlbGV0ZSBhIGdyb3VwIHRoYXQgc3RpbGwgaGFzIHVzZXJzPC9wPgogICAgPHA+Tm93IGhhbmRsZSByZWdleCBwcm9ibGVtcyBiZXR0ZXIgaW4gdGhlIGFkbWluIHNlY3Rpb24gdXNlcnMgdGFiPC9wPgogICAgPHA+RW1haWwgZmllbGRzLCB3aGVuIHNwZWNpZmllZCBhcyBvcHRpb25hbCwgbWFrZSBlbSBhY3R1YWxseSBvcHRpb25hbDwvcD4KICAgIDxwPkFkZCBzdXBwb3J0IGZvciBpbWFnZSB1cGxvYWRzLCB0aGlzIGlzIGEgYmlnIGZlYXR1cmUuICBJbWFnZXMgYXJlIHNjYWxlZCB0byBhIG1heGltdW0gc2l6ZSBpbiBvbmUgZGltZW5zaW9uLCBhbmQgc3RvcmVkIGFzIGZpbGVzIGluIGEgY29uZmlndXJhYmxlIGRpcmVjdG9yeSB1bmRlciB0aGUgdXBsb2Fkc19wYXRoLjwvcD4KICAgIDxwPkNhcHRjaGEgbW9kZSBpcyBub3cgb24gYnkgZGVmYXVsdCwgdW5sZXNzIHlvdSB1c2UgdGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgaW4gdGhlIHRhZy48L3A+CiAgICA8cD5GaXhlcyB0byBDU1YgZXhwb3J0Li4uIGl0IHdhcyBhc3N1bWluZyB0aGUgZGJfcHJlZml4IGlzIGNtc188L3A+CiAgICA8cD5JbXBvcnQgVXNlcnMgZnJvbSBDU1Y8L3A+CiAgICA8cD5GaXhlcyB0byB0aGUgaW5zdGFsbCBhbmQgdW5pbnN0YWxsIG1ldGhvZHMsIGFuZCBub3cgdGhlIGFsbG93X3JlcGVhdGVkX2xvZ2lucyBwcmVmZXJlbmNlIHNob3VsZCB3b3JrPC9wPgogICAgPHA+QWRkcyBwcm9wZXIgdXNlciBoaXN0b3J5IHRyYWNraW5nLiAgTm93IHRyYWNrIGZhaWxlZCBsb2dpbnMsIGxvZ2lucywgZXhwaXJpZXMsIGFuZCBsb2dvdXRzLCBvbiBhIHBlciB1c2VyIGJhc2lzLjwvcD4KICAgIDxwPkZpeGVzIHRvIHRoZSBjYW5jZWwgYnV0dG9uIG9mIHRoZSB1c2VyIHNldHRpbmdzIHBhZ2UsIGlmIHRoZSB1c2VyIHNldHRpbmdzIGZvcm0gaXMgb24gYSBkaWZmZXJlbnQgcGFnZS48L3A+CiAgICA8cD5GaXhlcyB0byB0aGUgY2FuY2VsIGJ1dHRvbiBvZiB0aGUgZm9yZ290IHBhc3N3b3JkIHBhZ2UsIGlmIHRoZSBmb3Jnb3QgcGFzc3dvcmQgZm9ybSBpcyBvbiBhIGRpZmZlcmVudCBwYWdlLjwvcD4KICAgIDxwPk1pbm9yIGZpeGVzIHRvIGJlaGF2aW91ciBvYWYgdGhlIHByZWZlcmVuY2VzIHBhbmVscy48L3A+CjwvbGk+CjxsaT4xLjIuMSAtIEp1bmUsIDIwMDcKCTxwPkEgY29va2llIGlzIG5vdyB1c2VkIHRvIGtlZXAgdHJhY2sgb2YgbG9naW4gc3RhdGUgYmV0d2VlbiBzZXNzaW9ucywgaG93ZXZlciB0aGUgY29va2llIGRvZXMgbm90IGxhc3QgYW55IGxvbmdlciB0aGFuIHRoZSB0aW1lb3V0IHNwZWNpZmllZCBpbiB0aGUgdXNlciBzZXR0aW5ncy48L3A+Cgk8cD5BZGRlZCB0aGUgYWJpbGl0eSBmb3IgYW4gYWRtaW5pc3RyYXRvciB0byBsb2dvdXQgdXNlcnM8L3A+Cgk8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBmaWx0ZXIgYnkgbG9nZ2VkIGluIHN0YXR1czwvcD4KCTxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciByZWFkLW9ubHkgcHJvcGVydGllcy48L3A+Cgk8cD5BZGRlZCBtb3JlIHZhcmlhYmxlcyBpbiBlYWNoIG9iamVjdCBpbiB0aGUgY2hhbmdlc2V0dGluZ3MgZm9ybTwvcD4KPC9saT4KPGxpPgoJPHA+MS4yLjIgLSBKdW5lLCAyMDA3PC9wPgoJPHA+dHN3IC0gQWRkZWQgZXZlbnQgT25VcGRhdGVVc2VyIHdoaWNoIGdldHMgY2FsbGVkIHdoZW4gdXNlciAob3IgYWRtaW4pIHVwZGF0ZXMgdXNlciBpbmZvPC9wPgoKPC9saT4KPGxpPjEuMyAtIE9jdG9iZXIsIDIwMDcKPHA+QWRkZWQgc3VwcG9ydCBmb3IgJ3JlbWVtYmVyIG1lJyBzbyB0aGF0IGxvZ2luIGluZm9ybWF0aW9uIGlzIHN0b3JlZCBpbiBhIGNvb2tpZS4gIEFuZCBzdXBwb3J0IGZvciBhIGZvcm0gdG8gYWxsb3cgdGhhdCBjb29raWUgdG8gYmUgcmVzZXQuPC9wPgo8cD5ObyBsb25nZXIgc3VwcG9ydCBub24gYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgaW4gcHJvcGVydHkgbmFtZXMuPC9wPgo8cD5OdW1lcm91cyBzbWFsbCBidWdmaXhlcy48L3A+CjxwPlJlcXVpcmUgQ01TIDEuMiBvciBncmVhdGVyLjwvcD4KPC9saT4KPGxpPjEuMy4xIC0gTm92ZW1iZXIsIDIwMDcKPHA+Rml4ZXMgcHJvYmxlbXMgd2l0aCBwYXJhbWV0ZXJzIG5vdCBiZWluZyBjbGVhbmVkIGluIHRoZSBjaGFuZ2Ugc2V0dGluZ3MgZGlhbG9nIG9uIHRoZSBmcm9udCBlbmQuPC9wPgo8cD5GaXhlcyBhbiB1cGRyYWRlIGlzc3VlIGluIHRoZSBkYXRhYmFzZSBzY2hlbWE8L3A+CjxwPkZpeGVzIGFuIGlzc3VlIGluIGEgR2V0U21hcnR5KCkgY2FsbCB0aGF0IHdhcyBhcHBhcmVudGx5IGNhdXNpbmcgcGVvcGxlIGRpZmZpY3VsdGllcyB3aXRoIHRoZSBsb2dpbiBmb3JtLjwvcD4KPHA+QWRkIGEgcHJlZmVyZW5jZSB0aGF0IGFsbG93cyBhZG1pbnMgdG8gc3BlY2lmeSBhIHBhZ2UgdG8gcmVkaXJlY3QgdG8gYWZ0ZXIgdGhlIGZvcmdvdCBwYXNzd29yZCB2YWxpZGF0aW9uIGZvcm0gaXMgY29tcGxldGUuPC9wPgo8cD5GaXhlcyBhIHByb2JsZW0gd2l0aCBoaWRkZW4gcHJvcGVydGllcyBiZWluZyBsb3N0IGFmdGVyIGEgdXNlciBjaGFuZ2VkIHRoZWlyIHNldHRpbmdzLjwvcD4KPHA+VGhlIEZvcmdvdCBQYXNzd29yZCBhbmQgTG9zdCBVc2VybmFtZSBmb3JtcyBhcmUgbm93IGlubGluZTwvcD4KPHA+Rml4ZXMgdG8gZXJyb3JzIGluIGVuY3J5cHRpb24gd2l0aCB0aGUgc2Vzc2lvbmluZzwvcD4KPHA+Rml4ZXMgdG8gdGhlIGxvc3QgdXNlcm5hbWUgZnVuY3Rpb25hbGl0eS48L3A+CjwvbGk+CjxsaT4xLjMuMyAtIERlY2VtYmVyLCAyMDA3CjxwPk5vdyBvcHRpb25hbGx5IGFsbG93IHNvbWUgZnJvbnRlbmQgZm9ybXMgdG8gYmUgaW5saW5lZC48L3A+CjxwPkFkZCBlbWFpbCBub3RpZmljYXRpb25zIHdoZW4gdXNlciBjaGFuZ2VzIHRoZWlyIHNldHRpbmdzLCBvciBvbiBhbnkgb3RoZXIgZXZlbnQuPC9wPgo8cD5DaGFuZ2UgdGhlIG1heGltdW0gZGF0YSBzaXplIGZvciBwcm9wZXJ0aWVzIGZyb20gMjU1IGNoYXJhY3RlcnMgdG8gbG9uZ3RleHQ8L3A+CjxwPkZpeGVzIGFuIGlzc3VlIHdoZXJlIHRoZSBsb2dvdXQgbGlua3MgZGlkIG5vdCBvYmV5IHRoZSBwcmVmZXJlbmNlIHdoaWNoIGRpY3RhdGVkIHdoaWNoIHBhZ2UgdG8gcmVkaXJlY3QgdG8gYWZ0ZXIgbG9nb3V0LjwvcD4KPC9sST4KPGxpPjEuNCAtIEZlYnJ1YXJ5LCAyMDA4CjxwPkFkZHMgdGhlIHZpZXd1c2VyIGFjdGlvbiB0byB2aWV3IHRoZSBwcm9wZXJ0aWVzIGZvciBhIHNwZWNpZmljIHVzZXI8L3A+CjxsaT4xLjQuMSAtIEZlYnJ1YXJ5LCAyMDA4CjxwPkFkZHMgdGhlIEdldFVzZXJIaXN0b3J5IG1ldGhvZCB0byB0aGUgYXBpPC9wPgo8cD5BZGRzIGEgcHJlZmVyZW5jZSBmb3IgcGFnZSB0byByZWRpcmVjdCB0byBhZnRlciBjaGFuZ2Ugc2V0dGluZ3M8L3A+CjxwPlVzZSB0aGUgYWZ0ZXJfdmVyaWZ5Y29kZSBwcmVmZXJlbmNlPC9wPgo8L2xpPgo8bGk+MS40LjIgLSBNYXJjaCwgMjAwOAo8cD5GaXhlcyBwcm9ibGVtcyB3aXRoIGNhbmNlbCBidXR0b25zPC9wPgo8cD5NYWtlcyBpdCBlYXNpZXIgZm9yIHRleHQgb24gdmFyaW91cyBidXR0b25zIGFuZCBsaW5rcyB0byBiZSBjaGFuZ2VkPC9wPgo8cD5VcGRhdGUgZGVwZW5kZW5jaWVzLCBldGMuPC9wPgo8cD5VcGRhdGUgYWxsIGZpbGVzIGFuZCB0aGUgaGVscCB0byByZWZsZWN0IHRoZSBuZXcgbGljZW5zZTwvcD4KPHA+QWRqdXN0bWVudHMgc28gdGhlIHNpZ25pbiBhbmQgc2lnbm91dCB0ZXh0IGNhbiBiZSBjaGFuZ2VkIGVhc2lseTwvcD4KPHA+Q2xlYW51cHMgYW5kIGJ1ZyBmaXhlczwvcD4KPC9saT4KPGxpPjEuNC4zIC0gSnVuZSwgMjAwOAo8cD5Ob3cgdXNlIHNlc3Npb24gdmFyaWFibGVzIHRvIGtlZXAgdHJhY2sgb2YgdXNlciB2YXJpYWJsZXMgYmV0d2VlbiBzdGVwcyBvZiB0aGUgZm9ybXMgZm9yIGFkZGluZyBhbmQgZWRpdGluZyB1c2Vycy48L3A+CjxwPkdldCByaWQgb2YgdGhlIHRpbWUgZmllbGRzIGZvciB0aGUgZXhwaXJ5IGRhdGUsIGFuZCBqdXN0IGV4cGlyZSBhdCAyMzo1OTo1OSBvbiB0aGF0IHNwZWNpZmllZCBkYXk8L3A+CjxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciBleHRlcm5hbCBtb2R1bGVzIHRvIGludGVyYWN0IChzb21ld2hhdCkgd2l0aCBmZXUsIGFuZCBzcGVjaWZ5IGEgcmV0dXJuIGxvY2F0aW9uPC9wPgo8cD5BZGRlZCB0aGUgR2V0RnVsbFVzZXJzSW5Hcm91cCgpIG1ldGhvZCBpbnRvIHRoZSBhcGk8L3A+CjwvbGk+CjxsaT4xLjQuNCAtIEF1Z3VzdCwgMjAwOAo8cD5UaGFua3MgdG8gX1NqR18gd2Ugbm93IHN1cHBvcnQgdXNpbmcgZW1haWwgYWRkcmVzc2VzIGFzIHVzZXJuYW1lICh0aGVyZSBpcyBhIHByZWZlcmVuY2UgaW4gdGhlIGFkbWluKS48L3A+CjxwPkFkZHMgYSBHZXRFbWFpbCBtZXRob2QgdG8gdGhlIGFwaSB0byByZXR1cm4gdGhlIGZpcnN0IGVtYWlsIGFkZHJlc3MgZm91bmQgZm9yIHRoZSBzcGVjaWZpZWQgdXNlci48L3A+CjwvbGk+CjxsaT4xLjUgLSBBdWd1c3QsIDIwMDgKPHA+QWRkIHRoZSBmZXVfc21hcnR5IGNsYXNzIHdpdGggYSBmZXcgZnVuY3Rpb25zIGluIGl0LCBmb3IgaXRlcmF0aW5nIHRocm91Z2ggdXNlcnMgaW4gc21hcnR5LjwvcD4KPC9saT4KPGxpPjEuNS4xIC0gQXVndXN0LCAyMDA4CjxwPktlZXAgdGhlIGxvZ2luaWQgaW4gYSB2YXJpYWJsZSwgdG8gY3V0IGRvd24gb24gdGhlIG51bWJlciBvZiByZXBlYXQgcXVlcmllcy48L3A+CjxwPkZpeGVzIHRvIHByb3BlcnRpZXMgd2l0aCBzcGFjZXMgaW4gdGhlIHZhbHVlcy48L3A+CjwvbGk+CjxsaT4xLjUuMiAtIEF1Z3VzdCwgMjAwOAo8cD5TcGxpdCBvdXQgYSBmZXcgbW9yZSBmaWxlcyB0byBzaHJpbmsgbWVtb3J5IGZvb3RwcmludCBhIGJpdCBtb3JlPC9wPgo8cD5GaXhlcyBzb21lIHRhYiBuYW1lIHN0dWZmPC9wPgo8cD5TbWFsbCB2YWxpZGF0aW9uIGlzc3VlIHdpdGggZGVmYXVsdCB0ZW1wbGF0ZTwvcD4KPHA+TWlub3IgZW5oYW5jZW1ldG5zIHRvIHRoZSB2aWV3dXNlciB0ZW1wbGF0ZS48L3A+CjxwPkdldCByaWQgb2YgY29tbWVudGVkIG91dCBjb2RlIHRvIHNocmluayB0aGUgZmlsZSBkb3duIGEgYml0LjwvcD4KPHA+Rml4IGZvcmdvdCBwYXNzd29yZCBmb3JtIHRvIGhhbmRsZSB0aGUgY2FzZSB3aGVyZSB1c2VybmFtZSA9PSBlbWFpbCBhZGRyZXNzLjwvcD4KPHA+QWRkIHByZXR0eSB1cmwgc3VwcG9ydCBpbnRvIHRoZSBsb3N0IHBhc3N3b3JkIGVtYWlsLjwvcD4KPC9saT4KPGxpPjEuNS4zIC0gU2VwdGVtYmVyLCAyMDA4CjxwPk51bWVyb3VzIHNtYWxsLCBidXQgYW5ub3lpbmcgYnVnIGZpeGVzPC9wPgo8bGk+MS41LjQgLSBEZWNlbWJlciwgMjAwOAo8cD5Nb3JlIGFuZCBtb3JlIGJ1ZyBmaXhlcy48L3A+CjxwPlRoZSBzdGFydHMgb2YgcHJldHR5IHVybCBzdXBwb3J0ICh0aGFuayB5b3UgTnVubyk8L3A+CjwvbGk+CjxsaT4xLjYgLSBKYW51c2FyeSwgMjAwOQogIDx1bD4KICA8bGk+Q29tcGxldGUgcmV3cml0ZSBvZiBwcm9wZXJ0eSBjcmVhdGlvbiBhbmQgZWRpdGluZyBzdHVmZi48L2xpPgogIDxsaT5BZGQgdGhlIGFiaWxpdHkgdG8gb3B0aW9uYWxseSBlbmFibGUgYSB3eXNpd3lnIGZvciB0ZXh0IGFyZWEgcHJvcGVydGllcy48L2xpPgogIDxsaT5ObyBsb25nZXIgYWxsb3cgYXV0byBpbnN0YWxsIG9yIHVwZ3JhZGUuPC9saT4KICA8bGk+Q29tcGxldGUgcmV3cml0ZSBvZiBncm91cCBjcmVhdGlvbiBhbmQgZWRpdGluZyBzdHVmZi4uLi4gcmUtb3JkZXJpbmcgaXMgc2ltcGxlciBub3cuPC9saT4KICA8bGk+UmUtb3JnYW5pemUgdGhlIHByZWZlcmVuY2VzIHRhYiwgYW5kIHRoZSB1c2VycyBmaWx0ZXJpbmcgc3R1ZmYgdG8gYmUgYSBiaXQgbW9yZSBwcmVzZW50YWJsZS48L2xpPgogIDxsaT5BZGQgbmV3IHByZWZlcmVuY2UgZm9yIHRoZSBkZWZhdWx0IGV4cGlyeSBhZ2UgZm9yIHVzZXJzLjwvbGk+CiAgPGxpPkFkZCBuZXcgcHJlZmVyZW5jZSBpbmRpY2F0aW5nIHdldGhlciB3ZSBzaG91bGQgYXR0ZW1wdCB0byBjcmVhdGUgcmFuZG9tIHVzZXJuYW1lcyBvciBub3QuPC9saT4KICA8bGk+QWRkIGJ1bGsgdXNlciBkZWxldGUgY2FwYWJpbGl0aWVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4xIC0gSmFudXNhcnksIDIwMDkKICA8dWw+CiAgICA8bGk+TWlub3IgdGVtcGxhdGUgY2hhbmdlcyB0byB0aGUgY2hhbmdlIHNldHRpbmdzIHN0dWZmLjwvbGk+CiAgICA8bGk+Rml4IHRleHQgcHJvcGVydHkgbGVuZ3RoIGlzc3Vlcy48L2xpPgogICAgPGxpPlJlbW92ZSBzdHVwaWQgZGllIGFuZCBkZWJ1ZyBzdGF0ZW1lbnRzIGZyb20gdGhlIHJlbWVtYmVyIG1lIHN0dWZmLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4yIC0gSmFudXNhcnksIDIwMDkKICA8dWw+CiAgICA8bGk+QmVnaW4gaW1wbGVtZW50aW5nIHRoZSB0YWJsZXNvcnRlciBzdHVmZjwvbGk+CiAgICA8bGk+Rml4IHByb2JsZW1zIHdpdGggaW1hZ2UgZmllbGRzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4zIC0gRmVicnVhcnksIDIwMDkKICA8dWw+CiAgPGxpPkZpeCBjb29raWUgaXNzdWVzIHBlcm1hbmVudGx5LiAoSSBob3BlKS48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuNCAtIEFwcmlsLCAyMDA5CiAgPHVsPgogIDxsaT5BZGQgZmllbGQgdHlwZSBhcyBhIG1lbWJlciBvZiB0aGUgY29udHJvbCBvYmplY3QgaW4gdmFyaW91cyBmb3Jtcy48L2xpPgogIDxsaT5BZGRlZCByYWRpbyBidXR0b25zIGZpZWxkIHR5cGUgKF9TakdfKTwvbGk+CiAgPGxpPk1vcmUgZml4ZXMgdG8gdXNlciBleHBvcnQgc3R1ZmYuPC9sPmkKICA8bGk+Rml4IGZvciByZXR1cm50byBwYXJhbSBpbiBsb2dpbiBmb3JtPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjUgLSBNYXksIDIwMDkKICA8dWw+CiAgPGxpPk51bWVyb3VzIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuNiAtIEp1bHksIDIwMDkKICA8dWw+CiAgPGxpPk51bWVyb3VzIGJ1ZyBmaXhlcy48L2xpPgogIDxsaT5BZGQgRGF0ZSBmaWVsZCB0eXBlLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi43IC0gSnVseSwgMjAwOQogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi44IC0gSnVseSwgMjAwOQogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPGxpPkFkZCBtb3JlIGZ1bmN0aW9uYWxpdHkgdG8gdGhlIGZldV9zbWFydHkgb2JqZWN0LjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi44LjEgLSBKdWx5LCAyMDA5CiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjkgLSBBdWd1c3QsIDIwMDkKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuMTAgLSBPY3RvYmVyLCAyMDA5CiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjExIC0gTm92ZW1iZXIsIDIwMDkKICA8dWw+CiAgPGxpPk5vdyBjb252ZXJ0IHByb3BlcnR5IG5hbWVzIHRvIGNvbnRhaW4gb25seSB2YWxpZCBjaGFycyBob3BlZnVsbHkuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjEyIC0gSmFudWFyeSwgMjAxMAogIDx1bD4KICA8bGk+TWlub3IgaW1wcm92ZW1lbnRzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4xMyAtIEZlYnJ1YXJ5LCAyMDEwCiAgPHVsPgogIDxsaT5Nb3JlIE1pbm9yIGltcHJvdmVtZW50cy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjcgLSBGZWJydWFyeSwgMjAxMAogIDx1bD4KICA8bGk+QWRkcyB0aGUgcmVzZXRfc2Vzc2lvbiBhY3Rpb24uPC9saT4KICA8bGk+QnVnIGZpeGVzPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS43LjEgLSBGZWJydWFyeSwgMjAxMAogIDx1bD4KICA8bGk+Rml4ZXMgYW5kIGVuaGFuY2VtZW50cyB0byB0aGUganF1ZXJ5IHJlc2V0IHNlc3Npb24gdGVtcGxhdGUuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS43LjEgLSBNYXJjaCwgMjAxMAogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNy4zIC0gTWFyY2gsIDIwMTAKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjggLSBNYXJjaCwgMjAxMAogIDx1bD4KICA8bGk+Tm93IHRoZSByZWRpcmVjdF90byBwYWdlIHByZWZlcmVuY2VzIGFyZSBzbWFydHkgdGVtcGxhdGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOC4yIC0gQXByaWwsIDIwMTAKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjguMyAtIEFwcmlsLCAyMDEwCiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS44LjQgLSBBcHJpbCwgMjAxMAogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOC41IC0gTWF5LCAyMDEwCiAgPHVsPgogICAgPGxpPkFkZHMgdGhlIHJldHVybmxhc3QgcGFyYW1ldGVyIHRvIGFsbG93IHJldHVybmluZyBiYWNrIHRvIHRoZSBwcmV2aW91cyB1cmwgb24gbG9naW4gb3IgbG9nb3V0LjwvbGk+CiAgICA8bGk+Rml4ZXMgdGhlIHJlc2V0IHRvIGRlZmF1bHRzIGJ1dHRvbiBpbiB0aGUgbG9zdCB1c2VybmFtZSB0ZW1wbGF0ZShzKSBmb3JtLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOSAtIE1heSwgMjAxMAogIDx1bD4KICAgIDxsaT5BZGRzIHRoZSBhYmlsaXR5IHRvIHNwZWNpZnkgdW5pcXVlIGZpZWxkcy48L2xpPgogICAgPGxpPlZhcmlvdXMgbWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOS4xIC0gTWF5LCAyMDEwCiAgPHVsPgogICAgPGxpPlJlLWFkZHMgYSBmdW5jdGlvbiBuZWVkZWQgYnkgQXZhaWxhYmlsaXR5LjwvbGk+CiAgICA8bGk+TWlub3IgYWRkaXRpb24gdG8gdGhlIHZpZXcgdXNlciB0ZW1wbGF0ZS48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjkuMiAtIE1heSwgMjAxMAogIDx1bD4KICAgIDxsaT5SZW1vdmUgcHJldHR5IHVybHMgZm9yIGxvc3QgdXNlcm5hbWUsIGFuZCBjaGFuZ2Ugc2V0dGluZ3MgZm9ybXMgYmVjYXVzZSB0aGV5IHdlcmUgbG9zaW5nIHBhcmFtZXRlcnMgbGlrZSB0aGUgbGFuZyBwYXJhbWV0ZXIuPC9saT4KICAgIDxsaT4oVGVkKTogRml4IGFiaWxpdHkgdG8gdW5jaGVjayBjaGVja2JveGVzIHdoaWxlIGVkaXRpbmcgYSB1c2VyIGluIHRoZSBhZG1pbjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOS4zIC0gSnVuZSwgMjAxMAogIDx1bD4KICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMCAtIEp1bmUsIDIwMTAKICA8dWw+CiAgICA8bGk+QWRkcyBzdXBwcG9ydCBmb3IgYWRkaXRpb25hbCBhdXRoZW50aWNhdGlvbiBtZWNoYW5pc21zIChzdGlsbCB0ZXN0aW5nKS48L2xpPgogICAgPGxpPkZpeGVzIGEgbWlub3IgaXNzdWUgd2l0aCByZXR1cm50by48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEwLjEgLSBKdWx5LCAyMDEwCiAgPHVsPgogICAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEwLjIgLSBKdWx5LCAyMDEwCiAgPHVsPgogICAgPGxpPkFkZHMgdGhlIEdldEV4cHJpcnlEYXRlIGFwaSBtZXRob2QuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMSAtIEp1bHksIDIwMTAKICA8dWw+CiAgICA8bGk+QWRkcyBvcHRpb25hbCBlbmNyeXB0aW9uIGZvciBwcm9wZXJ0eSBkZWZpbml0aW9ucy48L2xpPgogICAgPGxpPlZhcmlvdXMgbWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8bGk+SW1wcm92ZW1lbnQgdG8gdGhlIENTViBleHBvcnQgc3R1ZmYuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMiAtIEF1Z3VzdCwgMjAxMAogIDx1bD4KICAgIDxsaT5Ob3cgd29ya3MgaW4gY29uanVuY3Rpb24gd2l0aCBTZWxmUmVnaXN0cmF0aW9uIHRvIGhhbmRsZSBwYWlkIHN1YnNjcmlwdGlvbnMuPC9saT4KICAgIDxsaT5UaGUgY29udGVudF9tb2R1bGUgdGFnIG5vdyBwcm92aWRlcyBhIG11bHRpLXNlbGVjdCBsaXN0IChUZWQpPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMi4zIC0gU2VwdGVtYmVyLCAyMDEwCiAgPHVsPgogICAgPGxpPkFkZHMgYW4gb3ZlcmFsbCBwcmVmZXJlbmNlIGZvciBwYWlkIHJlZ2lzdHJhdGlvbiwgd2hpY2ggdHJpZ2dlcnMgdGhlIGV2ZW50IGhhbmRsZXJzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuNCAtIE9jdG9iZXIsIDIwMTAKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuNCAtIE9jdG9iZXIsIDIwMTAKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8bGk+Rml4ZXMgZm9yIHN1cHBvcnQgZm9yIENNU01TIDEuOTwvbGk+CiAgICA8bGk+UmVxdWlyZXMgQ0dFeHRlaW9ucyAxLjIxIG9yIGJldHRlcjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuNiAtIE5vdmVtYmVyLCAyMDEwCiAgPHVsPgogICAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjcgLSBEZWNlbWJlciwgMjAxMAogIDx1bD4KICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMi44IC0gRGVjZW1iZXIsIDIwMTAKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8bGk+U29tZSBtaW5vciBidWcgZml4ZXMgcmVsYXRlZCB0byBFX1NUUklDVCBhbmQgRV9ERVBSRUNBVEVELjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuMTAgLSBKYW51YXJ5LCAyMDExCiAgPHVsPgogICAgPGxpPkZpeGVzIHByb2JsZW0gd2l0aCBhZGQvZWRpdCBncm91cCB3aXRoIGxvdHMgb2YgcHJvcGVydGllcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjEyIC0gRmVicnVhcnksIDIwMTEKICA8dWw+CiAgICA8bGk+TWlub3IgQVBJIEZpeGVzLjwvbGk+CiAgICA8bGk+QWRkcyBhIG1ldGhvZCB0byBjbGVhciB0aGUgcHJvcGVydHkgY2FjaGUuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMi4xMyAtIE1hcmNoLCAyMDExCiAgPHVsPgogICAgPGxpPkZpeGVzIHRvIGV4cG9ydC48L2xpPgogICAgPGxpPkZpeGVzIHRvIHVzZXIgZWRpdGluZy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjEzIC0gTWFyY2gsIDIwMTEKICA8dWw+CiAgICA8bGk+Rml4ZXMgcHJvYmxlbSB3aXRoIGltYWdlIGZpZWxkcyB3aGVuIGVkaXRpbmcgYSB1c2VyLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuMTUgLSBNYXksIDIwMTEKICA8dWw+CiAgICA8bGk+TnVtZXJvdXMgc21hbGwgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuMTYgLSBNYXksIDIwMTEKICA8dWw+CiAgICA8bGk+QnVnIGZpeGVzIHdydCBsb3N0IHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHkuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMyAtIEp1bmUsIDIwMTEKICA8dWw+CiAgICA8bGk+Rml4ZXMgYSBtaW5vciBidWcgaW4gdGhlIExvZ291dCgpIG1ldGhvZC48L2xpPgogICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gZm9yY2UgbG9nb3V0IHVzZXJzIGF0IHNwZWNpZmllZCB0aW1lcy48L2xpPgogICAgPGxpPk1vZGlmaWVzIHRoZSBiZWhhdmlvciBvZiB0aGUgKGRlZmF1bHQpIGNoYW5nZSBzZXR0aW5ncyBmb3JtIHRvIGRpc3BsYXkgdGhlIGxvZ291dCBmb3JtIHdoZW4gY29tcGxldGVkLjwvbGk+CiAgICA8bGk+QWRkcyBhIHByZWZlcmVuY2UgdG8gc3BlY2lmeSBhIChtaW5pbXVtKSB0aW1lIGludGVydmFsIGJldHdlZW4gZXhwaXJ5IGFjdGlvbnMuICBUaGlzIHNob3VsZCBzYXZlIGEgZmV3IHF1ZXJpZXMgZm9yIG1vc3QgcmVxdWVzdHMuPC9saT4KICAgIDxsaT5BZGRzIGEgcHJlZmVyZW5jZSB0byBzcGVjaWZ5IGEgdGltZSBpbnRlcnZhbCBiZXR3ZWVuIHVzZXIgY2hlY2tpbnMgdG91Y2hpbmcgdGhlIGRhdGFiYXNlLiAgVGhpcyBzaG91bGQgc2F2ZSBhIGZldyBtb3JlIGRiIHF1ZXJpZXMgZm9yIG1vc3QgcmVxdWVzdHMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNCAtIEp1bHksIDIwMTEKICA8dWw+CiAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBhZGp1c3QgdGhlIHBhc3N3b3JkIHNhbHQgKG9ubHkgaWYgdGhlcmUgYXJlIG5vIHVzZXJzKS48L2xpPgogICAgPGxpPkltcHJvdmVtZXRucyB0byB0aGUgQ1NWIGV4cG9ydC9pbXBvcnQgcm91dGluZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNSAtIEp1bHksIDIwMTEKICA8dWw+CiAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBhZGQgYWRkaXRpb25hbCBwcm9wZXJ0aWVzIHRvIHRoZSB2aWV3LjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTUuMSAtIEF1Z3VzdCAyMDExCiA8dWw+CiAgIDxsaT5NaW5vciBidWcgZml4LjwvbGk+CiA8L3VsPgo8bGk+MS4xNS40IC0gT2N0b2JlciAyMDExCiAgPHVsPgogICAgPGxpPk9wdGltaXphdGlvbnMuPC9saT4KICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgIDxsaT5NaW5vciBBUEkgZW5oYW5jZW1lbnRzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTUuNSAtIE9jdG9iZXIsIDIwMTEKICA8dWw+CiAgICA8bGk+QnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTYgLSBPY3RvYmVyLCAyMDExCiAgPHVsPgogICAgPGxpPkFkZHMgYSBuZXcgJnF1b3Q7UHJvdGVjdGVkIENvbnRlbnQmcXVvdDsgY29udGVudCB0eXBlLiAgQWxvbmcgd2l0aCBhIGZldyByZWxhdGVkIHByZWZlcmVuY2VzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTYuMSAtIE9jdG9iZXIsIDIwMTEKICA8dWw+CiAgICA8bGk+Rml4ZXMgYSBtaW5vciBidWcgd3J0IGNhY2hpbmcgb2YgdXNlciBwcm9wZXJ0aWVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTYuMiAtIE9jdG9iZXIsIDIwMTEKICA8dWw+CiAgICA8bGk+Rml4ZXMgYW4gdXBncmFkZSBpc3N1ZS48L2xpPgogICAgPGxpPkZpeGVzIGEgcmVkaXJlY3QgY2FsbC48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE2LjQgLSBPY3RvYmVyLCAyMDExCiAgPHVsPgogICAgPGxpPkZpeGVzIGZvciBhZGRpdGlvbmFsIGNvbnRlbnQgYmxvY2tzLjwvbGk+CiAgICA8bGk+Rml4IGZvciBub3RpY2UgZ2VuZXJhdGVkIGluIHRoZSBBUEkuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNi42IC0gRGVjZW1iZXIsIDIwMTEKICA8dWw+CiAgICA8bGk+TnVtZXJvdXMgbWlub3IgYnVnIGZpeC48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE3IC0gRmVicnVhcnksIDIwMTIKICA8dWw+CiAgICA8bGk+TWFueSBtZXRob2RzIGFyZSBwcm90ZWN0ZWQgbm93Li4uIGZvciBiZXR0ZXIgc2VjdXJpdHkuPC9saT4KICAgIDxsaT5BZGRzIGNhcHRjaGEgc3VwcG9ydCB0byB0aGUgZm9yZ290IHBhc3N3b3JkIGZvcm0uPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNy4xIC0gTWFyY2gsIDIwMTIKICA8dWw+CiAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xOC54IC0gTWFyY2gsIDIwMTIKICA8dWw+CiAgIDxsaT5JbXByb3ZlZCB1c2VycyB0YWIuPC9saT4KICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gYWxsb3cgdXNlcnMgdG8gY2hhbmdlIHRoZWlyIHVzZXJuYW1lLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTgueCAtIE1hcmNoLCAyMDEyCiAgPHVsPgogICAgPGxpPkFkZGVkIHRoZSBkYXRhIHByb3BlcnR5IHR5cGUgKG5vdCBlZGl0YWJsZSBieSBhZG1pbnMpLjwvbGk+CiAgICA8bGk+TW9kaWZpZWQgdGhlIGFwaSB0byBhbGxvdyBkZWxldGluZyBkYXRhIGZyb20gdGhlIHVzZXJzIHdoZW4gZGVsZXRpbmcgcHJvcGVydGllcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE5IC0gU2VwdGVtYmVyLCAyMDEyCiAgPHVsPgogICAgPGxpPk51bWVyb3VzIGd1aSBpbXByb3ZlbWVudHMuPC9saT4KICAgIDxsaT5OdW1lcm91cyBidWcgZml4ZXMgYW5kIG1pbm9yIGVuaGFuY2VtZW50cy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjIwIC0gT2N0b2JlciwgMjAxMgogIDx1bD4KICAgIDxsaT5GeHhlcyB0byB0aGUgYmVoYXZpb3Igb2YgY2hlY2tib3ggZmllbGRzLjwvbGk+CiAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBzcGVjaWZ5IHRoZSBkZWZhdWx0IHZhbHVlIG9mIGNoZWNrYm94ZXMuPC9saT4KICAgIDxsaT5OdW1lcm91cyBvdGhlciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4yMS54CiAgPHVsPgogICAgPGxpPlJlZmFjdG9yaW5nIHRvIGFsbG93IGFsdGVybmF0ZSBmb3JtcyBvZiBhdXRoZW50aWNhdGlvbi48L2xpPgogICAgPGxpPlJlZmFjdG9yaW5nIHRvIGV4cGFuZCB0aGUgdXNlIG9mIHRoZSBjb25zdW1lciBjbGFzcy48L2xpPgogICAgPGxpPk5vdyBhbGxvdyBvdGhlciBtb2R1bGVzIHRvIGNvbnRyb2wgZ3JvdXAgbWVtYmVyc2hpcC48L2xpPgogICAgPGxpPlJlZmFjdG9yaW5nIG9mIHByZWZlcmVuY2VzIGFuZCBzZXR0aW5ncy48L2xpPgogICAgPGxpPlJlZmFjdG9yaW5nIG9mIGNvb2tpZSwgc2Vzc2lvbiwgbG9nZ2luZywgYW5kIGhpc3RvcnkgZnVuY3Rpb25hbGl0aWVzLjwvbGk+CiAgICA8bGk+TnVtZXJvdXMgbWlub3IgZW5oYW5jZW1lbnRzIGFuZCBidWcgZml4ZXMuPC9saT4KICAgIDxsaT4qKiAxLjIxLjExIC0gRml4ZWQgc2lnbmlmaWNhbnQgcHJvYmxlbSB3aXRoIHRoZSBwcm90ZWN0ZWQgY29udGVudCBjb250ZW50IHR5cGUgLi4uIGV2ZXJ5Ym9keSBzaG91bGQgdXBncmFkZSBBU0FQICoqPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4yMi54CiAgPHVsPgogICAgPGxpPkZpeGVzIHRvIGFzY2lpIGltcG9ydDwvbGk+CiAgICA8bGk+RW5jcnlwdGVkIHByb3BlcnRpZXMgYXJlIG5vIGxvbmdlciBleHBvcnRlZCB0byBBU0NJSTwvbGk+CiAgICA8bGk+Rml4ZXMgdG8gZ3JvdXAgZXhwb3J0L2ltcG9ydDwvbGk+CiAgICA8bGk+QWRtaW5pc3RyYXRvcnMgY2FuIG5vIGxvbmdlciBzZWUgYW5kL29yIGVkaXQgZW5jcnlwdGVkIHByb3BlcnRpZXMuPC9saT4KICAgIDxsaT5BZG1pbiB1c2VycyB0YWIgZmlsdGVyaW5nIGhhcyBiZWVuIHJld3JpdHRlbiwgaXMgbm93IGEgdXNlciBwcmVmZXJlbmNlLjwvbGk+CiAgICA8bGk+SW1wcm92ZWQgZXJyb3IgY2hlY2tpbmcgaW4gdGhlIGFkbWluIHVzZXJzIHRhYi48L2xpPgogICAgPGxpPkltcHJvdmVtZW50cyB0byB0aGUgZmV1X3VzZXJfcXVlcnkgc3R1ZmYuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4yMy54CiAgPHVsPgoJPGxpPlJld3JpdGUgQVNDSUkgZXhwb3J0IGFuZCBpbXBvcnQgY29kZS48L2xpPgoJPGxpPlJld3JpdGUgRkVVIENoYW5nZSBzZXR0aW5ncyB0ZW1wbGF0ZTogIE5PVEU6IFlvdSBtYXkgbmVlZCB0byBhZGp1c3QgeW91ciBjaGFuZ2Ugc2V0dGluZ3MgdGVtcGxhdGUuPC9saT4KCTxsaT5SZXdyaXRlIEZFVSBsb2dpbiBmb3JtIHRlbXBsYXRlLjwvbGk+Cgk8bGk+QWRkcyBhIHRyaXZpYWwsIG9wdGlvbmFsIGhvbmV5cG90IGNhcHRjaGEgZmllbGQgdG8gdGhlIGxvZ2luIGZvcm0uICBSZXNldCB5b3VyIGxvZ2luIGZvcm0gdG8gZGVmYXVsdCB2YWx1ZXMgdG8gc2VlIGl0LCBhbmQgaXRzIHVzZS48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjI0LngKCTx1bD4KCTxsaT5Ob3cgdXNlIGNnZV91dGlsczo6Y2xlYW5faW5wdXRfaHRtbCwgYW5kIG90aGVyIGZpbHRlcmluZyBtZWNoYW5pc21zIHRvIHByZXZlbnQgYmFkIGh0bWwvamF2YXNjcmlwdCBmcm9tIGJlaW5nIHN1Ym1pdHRlZCB2aWEgZnJvbnRlbmQgdGV4dCBhcmVhcy48L2xpPgoJPGxpPkFkZHMgZmV1X3NtYXJ0eTo6Z2V0X2dyb3VwX21lbWJlcmxpc3QoJGdpZCkgPGVtPigxLjI0LjEpPC9lbT48L2xpPgoJPGxpPkZpeGVzIGEgdmVyeSBpbXBvcnRhbnQgc2VjdXJpdHkgaXNzdWUgKHZpYSBhIGNydWRlIGhhY2spIHRoYXQgYWxsb3dzIGFub255bW91cyB1c2VycyB0byB2aWV3IHByaXZhdGUgY29kZS4gIFJlY29tbWVuZCB1cGdyYWRpbmcgYXMgc29vbiBhcyBwb3NzaWJsZS4gPGVtPigxLjI0LjMpPC9lbT48L2xpPgoJPGxpPk5vdyBSZXF1aXJlIFBIUCA1LjQuMyBtaW5pbXVtLjwvbGk+Cgk8L3VsPgoJPC9saT4KPGxpPjEuMjUueAoJPHVsPgoJPGxpPk5ldyBzdXBwb3J0IGZvciByZXF1aXJpbmcgc3Ryb25nZXIgcGFzc3dvcmRzIChvcHRpb25hbCBwcmVmZXJlbmNlcywgZW5hYmxlZCBmb3IgbmV3IGluc3RhbGxhdGlvbnMpPC9saT4KCTwvdWw+CjwvbGk+CjxsaT4xLjI1LngKICAgPHVsPgogICAgIDxsaT5NaW5vciB0ZW1wbGF0ZSBmaXhlcy48L2xpPgogICAgIDxsaT5JbXByb3ZlbWVudHMgdG8gcGFzc3dvcmQgc3RyZW5ndGggY2hlY2tzLjwvbGk+CiAgIDwvdWw+CjwvbGk+CjxsaT4xLjI2LngKCTx1bD4KCTxsaT5QYWdlcyBvZiB0eXBlICdwcm90ZWN0ZWQgY29udGVudCcgd2lsbCBub3cgb25seSBnZW5lcmF0ZSA0MDMgZXJyb3JzIGlmIHVuYXV0aG9yaXplZCBhY2Nlc3MgaXMgZGV0ZWN0ZWQuCgkgICA8cD5UaGlzIGlzIHRvIHNvbHZlIHBvdGVudGlhbCBzZWN1cml0eSBpc3N1ZXMuICBVc2VycyB3aWxsIG5lZWQgdG8gY3JlYXRlIGEgc3lzdGVtIHBhZ2UgdG8gaGFuZGxlIDQwMyBlcnJvcnMgaW4gYSBncmFjZWZ1bCB3YXkuPC9wPgogICAgICAgIDwvbGk+CiAgICAgICAgPGxpPlJlbW92ZSBjYXB0Y2hhIGFuZCBvdGhlciBwcm90ZWN0ZWQgcGFnZSBvcHRpb25zIGFzIGFueSB1bmF1dGhvcml6ZWQgYWNjZXNzIG5vdyB3aWxsIHJlc3VsdCBpbiA0MDMgZXJyb3JzLjwvbGk+CiAgICAgICAgPGxpPm1vcmUgbWV0aG9kcyB0byBmZXVfc21hcnR5LjwvbGk+Cgk8L3VsPgo8L2xpPgo8bGk+MS4yNi54Cgk8dWw+Cgk8bGk+QWRkcyB7JGZldV9zbWFydHktPmdldF9ncm91cF9saXN0KCl9PC9saT4KCTwvdWw+CjwvbGk+Cgo8bGk+MS4yOC54CiAgPGRpdiBjbGFzcz0iaW5mb3JtYXRpb24iPjxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhpcyB2ZXJzaW9uIG9mIEZFVSBoYXMgdW5kZXJnb25lIHNpZ25maWNhbnQgY2hhbmdlcy4gIFRoZXJlIG1heSBiZSBzb21lIGNvbXBhdGliaWxpdHkgcHJvYmxlbXMuPC9kaXY+CiAgPHVsPgoJPGxpPlJlbW92ZWQgdGhlIENoZWNrUGFzc3dvcmQgbWV0aG9kIGluIGFudGljcGF0aW9uIG9mIGFkZGluZyBwcm9wZXIgc2VlZGluZy48L2xpPgoJPGxJPkFkZGVkIEZyb250RW5kVXNlcnM6OmdldF9lbWFpbCgpIGFuZCBhIGZldyBtaW5vciBtZXRob2RzLjwvbGk+Cgk8bGk+VGVtcGxhdGUgQ2xlYW51cHMgYW5kIHJld3JpdGVzOgoJICAgPHA+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBTb21lIHRlbXBsYXRlcyBtYXkgbmVlZCB0byBiZSByZWJ1aWx0LCB0aG91Z2ggdGhlIGNoYW5nZXMgc2hvdWxkIGJlIG1pbm9yLiAgTW9zdGx5IHRoZSB0ZW1wbGF0ZXMgaGF2ZSBqdXN0IGJlZW4gY29udmVydGVkIHRvIHVzZSBib290c3RyYXAgc3R5bGVzLjwvcD4KCTwvbGk+Cgk8bGk+U3Ryb25nZXIgcGFzc3dvcmQgZW5jcnlwdGlvbjoKCSAgPHA+Tm93LCBvbiBuZXcgaW5zdGFsbHMgYSBzYWx0IGlzIGdlbmVyYXRlZCBhbmQgc3RvcmVkIGZvciBlYWNoIHVzZXIgYWNjb3VudC4gIFRoaXMgaW5kaXZpZHVhbCBzYWx0IGlzIHVzZWQgd2hlbiB2ZXJpZnlpbmcgYSB1c2VycyBwYXNzd29yZC4KCSAgICAgVGhpcyBpcyBmb3IgbmV3IGluc3RhbGxzIG9ubHksIGFuZCBzaG91bGQgaGF2ZSBubyBiZWFyaW5nIG9uIGV4aXN0aW5nIHdlYnNpdGVzIGRvaW5nIGFuIHVwZ3JhZGUuICBIb3dldmVyLCBpZiB5b3UgYXJlIHVzaW5nIHNlbGZyZWcgeW91IE1VU1QgYWxzbyB1cGdyYWRlIHRoZSBzZWxmcmVnIG1vZHVsZS48L3A+Cgk8L2xpPgoJPGxpPkFkZHMgbmV3IEVuY3J5cHRQYXNzd29yZCBtZXRob2QuPC9saT4KCTxsaT5BZGRzIGFiaWxpdHkgZm9yIGFuIGFkbWluIHRvIGZvcmNlIGEgcGFzc3dvcmQgcmVzZXQuPC9saT4KCTxsaT5BZGRzIGFiaWxpdHkgdG8gZGlzYWJsZSBhIHVzZXIgYWNjb3VudCB3aXRob3V0IGNoYW5naW5nIHRoZWlyIHBhc3N3b3JkLjwvbGk+CiAgICAgICAgPGxpPk51bWVyb3VzIG1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogICAgICAgIDxsaT5Ob3cgdXRpbGl6ZSBzbWFydHkgc2NvcGVzIHRvIHJlZHVjZSB2YXJpYWJsZSBuYW1lIGNvbmZsaWN0cywgYW5kIGJlIG1vcmUgbWVtb3J5IGVmZmljaWVudCAoaG9wZWZ1bGx5KS48L2xpPgoJPGxpPjEuMjguMyAtIG1pbm9yIEFQSSBjaGFuZ2VzIGZvciB1c2UgaW4gc2VsZnJlZi48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjI5PGJyLz4KCTxkaXYgY2xhc3M9Indhcm5pbmciPjxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhpcyB2ZXJzaW9uIG9mIEZFVSBoYXMgdW5kZXJnb25lIHNpZ25pZmljYW50IGNoYW5nZXMuICBUaGVyZSBtYXkgYmUgc29tZSBjb21wYXRpYmlsaXR5IHByb2JsZW1zLjwvZGl2PgoJPHVsPgoJPGxpPjxzdHJvbmc+SW1wb3J0YW50Ojwvc3Ryb25nPiBSZS1mYWN0b3JlZCB0aGUgZmV1X3NtYXJ0eSBzdHVmZiBmb3IgQ01TTVMgMi4wIGNvbXBhdGliaWxpdHkuICBUaGlzIG1lYW50IHJlbW92aW5nIHRoZSBhc3NpZ24gcGFyYW1ldGVyLCBhbmQgbWFraW5nIGFsbCBtZXRob2RzIHN0YXRpYy4KCSAgPHA+aS5lOiA8Y29kZT57JGZldV9zbWFydHktPmdldF91c2VyX3Byb3BlcnRpZXMoJHVpZCwncHJvcHMnKX08L2NvZGU+IG11c3Qgbm93IGJlIGNhbGxlZCBsaWtlOiA8Y29kZT57JHByb3BzPWZldV9zbWFydHk6OmdldF91c2VyX3Byb3BlcnRpZXMoJHVpZCl9PC9jb2RlPjwvcD4KCSAgPHA+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBwYXJhbWV0ZXJzIGZvciBzb21lIG1ldGhvZHMgaGFzIGNoYW5nZWQuICBwbGVhc2UgcmV2aWV3IHRoZSBoZWxwLjwvcD4KCTwvbGk+Cgk8bGk+UmUtaW1wbGVtZW50IG1ldGhvZHMgZnJvbSBDdXN0b21Db250ZW50IGludG8gZmV1X3NtYXJ0eS4uLiB3aXRoIHNvbWUgbW9yZSBwb3dlci48L2xpPgoJPGxpPkFkZHMgdGhlIGZldV9wcm90ZWN0IHBsdWdpbi48L2xpPgoJPC91bD4KPC9saT4KPGxpPjEuMzA8YnIvPgoJPGRpdiBjbGFzcz0id2FybmluZyI+Cgk8b2w+Cgk8bGk+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIHZlcnNpb24gb2YgRkVVIGhhcyB1bmRlcmdvbmUgc2lnbmlmaWNhbnQgY2hhbmdlcy4gIFRoZXJlIG1heSBiZSBzb21lIGNvbXBhdGliaWxpdHkgcHJvYmxlbXMuPC9saT4KCTxsaT5UaGlzIHZlcnNpb24gdGFrZXMgYWR2YW50YWdlIG9mIHNtYXJ0eSBzY29wZXMgZm9yIHZhcmlvdXMgZGlzcGxheXMuICBUaGlzIHByZXZlbnRzIG9uZSBzbWFydHkgdmFyaWFibGUgZnJvbSBvbmUgdGVtcGxhdGUvbW9kdWxlIGFjdGlvbiBmcm9tIG92ZXJ3cml0aW5nIGRhdGEgZnJvbSBhbm90aGVyIHRlbXBsYXRlL21vZHVsZSBhY3Rpb24uICBIb3dldmVyIGl0IG1lYW5zIHRoYXQgc21hcnR5IHZhcmlhYmxlcyBhcmUgbm90IGF1dG9tYXRpY2FsbHkgZ2xvYmFsLiAgQW5kIGluIG9yZGVyIHRvIG1ha2UgZGF0YSBnbG9iYWwgeW91IG11c3QgZXhwbGljaXRseSBjb3B5IGl0IHRvIHRoZSBnbG9iYWwgc2NvcGUuPC9saT4KCTxsaT48c3Ryb25nPldhcm5pbmc6PC9zdHJvbmc+IFRoZSB1cGdyYWRlIHByb2Nlc3Mgd2lsbCBlbnN1cmUgdGhhdCBkYXRhIGludGVncml0eSBpcyBlbmFibGVkIGluIHRoZSBkYXRhYmFzZSBhbmQgdGhhdCB0aGVyZSBpcyBubyBleHRyYSBkYXRhIGV4aXN0aW5nIGluIHRoZSBoaXN0b3J5LCAgZ3JvdXBwcm9wbWFwIG9yIHByb3BlcnRpZXMgdGFibGUuICBJZiB5b3UgaGF2ZSBtYW5pcHVsYXRlZCB0aGUgRkVVIGRhdGFiYXNlIG1hbnVhbGx5IHRoZW4geW91IG1heSBiZSBzdWJqZWN0IHRvIGRhdGEgbG9zcy48L2xpPgoJPC9vbD4KCTwvZGl2PgoKCTx1bD4KCTxsaT5Db21wbGV0ZSByZXdyaXRlIG9mIGZvcmdvdHRlbiBwYXNzd29yZCBmdW5jdGlvbmFsaXR5LiAgVGhpcyBpbnZvbHZlZCBjaGFuZ2luZyBhbGwgb2YgdGhlIHRlbXBsYXRlcyBmb3IgZm9yZ290dGVuIHBhc3N3b3JkLCBzbyB5b3Ugd2lsbCBuZWVkIHRvIHJlc2V0IHlvdXIgdGVtcGxhdGVzLjwvbGk+Cgk8bGk+Q29udmVydHMgYWxsIHRhYmxlcyB0byB1c2UgaW5ub2RiLCBhbmQgbm93IGVuZm9yY2VzIHNvbWUgZm9yZWlnbiBrZXkgcmVsYXRpb25zaGlwcy4KCTxwPlRoaXMgaGVscHMgZW5zdXJlIGRhdGFiYXNlIGludGVncml0eSwgIGFuZCBhbGxvd3MgdGhpcmQgcGFydHkgbW9kdWxlcyB1c2luZyB0aGUgRkVVIEFQSSB0byBjcmVhdGUgbW9yZSBmb3JlaWduIGtleSByZWxhdGlvbnNoaXBzLjwvcD4KCTxwPklmIGEgdGhpcmQgcGFydHkgbW9kdWxlIGNyZWF0ZXMgYSBmb3JlaWduIGtleSByZWxhdGlvbnNoaXAgdG8gdGhlIHVzZXJzIHRhYmxlLCBhbmQgZGF0YSBleGlzdHMgaW4gdGhlIHRoaXJkIHBhcnR5IHRhYmxlIGtleWVkIHRvIGFuIGV4aXN0aW5nIEZFVSBhY2NvdW50IHRoZW4gdGhvc2UgdXNlcnMgY2Fubm90IGJlIGRlbGV0ZWQgdmlhIHRoZSBGRVUgYWRtaW4gdW50aWwgdGhlIHRoaXJkIHBhcnR5IGRhdGEgaXMgZXJhc2VkLjwvcD4KCTwvbGk+Cgk8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBkZWxldGUgYSBwcm9wZXJ0eSAoYXMgbG9uZyBhcyBpdCBpcyBub3QgYSBtb2R1bGUgcHJvcGVydHksIG9yIGEgaGlkZGVuL3JlcXVpcmVkIG1lbWJlciBvZiBhbnkgZ3JvdXAuPC9saT4KCTxsaT5SZW1vdmVzIHVuZG9jdW1lbnRlZCBhbmQgcmFyZWx5IHVzZWQgY29udGVudF9tb2R1bGUgZnVuY3Rpb25hbGl0eSBmb3IgZ3JvdXAgc2VsZWN0b3IuPC9saT4KCTxsaT5HZXQgcmlkIG9mIHNlcXVlbmNlIHRhYmxlcy48L2xpPgoJPGxpPlJld3JpdGUgdGhlIGxvZ2luIGZ1bmN0aW9uYWxpdHkgZnJvbSBzY3JhdGNoLjwvbGk+Cgk8bGk+UmVtb3ZlZCB0aGUgbm9pbmxpbmUgcGFyYW1ldGVyLjwvbGk+Cgk8bGk+QWRkZWQgdGhlIGlubGluZSBwYXJhbWV0ZXIgZm9yIHRoZSBsb2dpbiBmb3JtIG9ubHkuICBMaW5rcyBmcm9tIHRoZSBsb2dvdXQgZm9ybSAoaS5lOiB0byBsb2dvdXQsIGFuZCB0byBjaGFuZ2Ugc2V0dGluZ3Mgd2lsbCBiZSBkb25lIG5vbi1pbmxpbmUpPC9saT4KCTxsaT5mb3JtPXNpbGVudC9hY3Rpb249c2lsZW50IG5vdyBvdXRwdXRzIHN0dWZmIHRvIGdsb2JhbCBzbWFydHkgc2NvcGUgKG5vdGUgdmFyaWFibGUgbmFtZXMgaGF2ZSBjaGFuZ2VkLCBzZWUgdGhlIHskZmV1X2RhdGF9IGFycmF5KS4gIFRoaXMgYWN0aW9uIGlzIGFsc28gZGVwcmVjYXRlZC48L2xpPgoJPGxpPkZpeGVzIHRoZSBkZWxldGUgdXNlciBzdHVmZi48L2xpPgoJPGxpPk5vdyBzZW5kIHRoZSBvbmRlbGV0ZXVzZXIgZXZlbnQgZnJvbSB3aXRoaW4gdGhlIGFwaSBmdW5jdGlvbnMuPC9saT4KCTxsaT5Nb3ZlZCBhbGwgb2YgdGhlIGZvcm1zIGludG8gdGhlaXIgb3duIGFjdGlvbnMuLi4uIGRlcHJlY2F0ZWQgdGhlIGZvcm0gcGFyYW1ldGVyLjwvbGk+Cgk8bGk+Tm93IHN1cHBvcnQgc3BlY2lmeWluZyBkaWZmZXJlbnQgdGVtcGxhdGVzIGZvciBsb2dpbiwgbG9nb3V0LCBjaGFuZ2VzZXR0aW5ncywgYW5kIGZvcmdvdHB3IGFjdGlvbnMuPC9saT4KCTxsaT5Db21wbGV0ZWx5IHJld3JpdGUgdGhlIGxvc3QgdXNlcm5hbWUgZnVuY3Rpb25hbGl0eS4gIEl0IG5vdyBqdXN0IGFza3MgZm9yIGFzIG11Y2ggaW5mb3JtYXRpb24gYXMgcG9zc2libGUsIGFuZCB1c2VzIHRoYXQgaW5mb3JtYXRpb24gdG8gdHJ5IHRvIGZpbmQgYSB1bmlxdWUgdXNlciBhY2NvdW50LjwvbGk+Cgk8bGk+QWRkcyBhIHByaXZhdGUgc2VjdGlvbiBoZWFkZXIgY3VzdG9tIGNvbnRlbnQgdHlwZS48L2xpPgoJPGxpPk5vdyBhZnRlciBjaGFuZ2Ugc2V0dGluZ3MgYSBtZXNzYWdlIGlzIGRpc3BsYXllZCB0byB0aGUgdXNlciBvbiB0aGUgbG9nb3V0Zm9ybS48L2xpPgoJPGxpPk51bWVyb3VzIGJ1ZyBmaXhlcy48L2xpPgoJPGxpPkJlZ2luIHdvcmsgb24gQVBJIGRvY3VtZW50YXRpb24uPC9saT4KCTwvdWw+CjwvbGk+CjxsaT4xLjMxCiAgPHVsPgogICAgPGxpPkFkZHMgYWJpbGl0eSB0byBmb3JjZSBhIHVzZXIgdG8gY2hhbmdlIHNldHRpbmdzIG9uIHRoZSBuZXh0IGxvZ2luLgogICAgICAgPHA+Tm90ZSwgdGhpcyBhbHNvIHdvcmtzIHdpdGggdGhlICJmb3JjZSBuZXcgcGFzc3dvcmQiIGZ1bmN0aW9uYWxpdHksIHNvIHRoYXQgYSB1c2VyIHdpbGwgYmUgZm9yY2VkIHRvIHNldCBhIG5ldyBwYXNzd29yZC48L3A+CiAgICA8L2xpPgogICAgPGxpPk1pbm9yIGxheW91dCBjaGFuZ2UgdG8gdGhlIGZpcnN0IGFkZCB1c2VyL2VkaXQgdXNlciBmb3JtLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMzEuMgogIDx1bD4KICAgIDxsaT5GaXhlcyB0byB1cGdyYWRlIHJvdXRpbmUgZm9yIGhvc3RzIHdpdGggc3RyaWN0IG1vZGUgc2V0LjwvbGk+CiAgICA8bGk+TnVtZXJvdXMgbWlub3IgQVBJIGZpeGVzLjwvbGk+CiAgICA8bGk+TW9yZSB3b3JrIG9uIEFQSSBkb2N1bWVudGF0aW9uLjwvbGk+CiAgICA8bGk+Q29ycmVjdCBzb21lIGxpY2Vuc2UgZG9jcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjMxLjMKICAgPGRpdiBjbGFzcz0id2FybmluZyI+QmFycmluZyBzb21lIHVuZm9yc2VlbiBuZXcgZXJyb3JzIGluIHRoaXMgbGF0ZXN0IHJlbGVhc2UgY2F1c2VkIGJ5IG1lLCB0aGlzIHdpbGwgYmUgdGhlIGxhc3QgcmVsZWFzZSBvZiBGcm9udEVuZFVzZXJzIGZvciBDTVNNUyAxLnguPC9kaXY+CiAgIDx1bD4KICAgICAgPGxpPkZpeGVzIHByb2JsZW0gd2l0aCB0aGUgQWRkR3JvdXBQcm9wZXJ0eVJlbGF0aW9uIG1ldGhvZC48L2xpPgogICAgICA8bGk+Rml4ZXMgcHJvYmxlbXMgd2l0aCB0aGUgcmVtZW1iZXJtZSBmdW5jdGlvbmFsaXR5LjwvbGk+CiAgICAgIDxsaT5Nb3JlIG1pbm9yIGZpeGVzLjwvbGk+CiAgIDwvdWw+CjwvbGk+Cgo8bGk+Mi4wCiAgICAgICAgPGRpdiBjbGFzcz0id2FybmluZyI+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIHZlcnNpb24gYW5kIGFueSBzdWJzZXF1ZW50IHZlcnNpb25zIG9mIEZyb250RW5kVXNlcnMgd2lsbCByZXF1aXJlIGEgc3VwcG9ydGVkIHZlcnNpb24gb2YgQ01TTVMgMi54LjwvZGl2PgoJPGRpdiBjbGFzcz0id2FybmluZyI+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIGlzIGEgbWFqb3IgcmVmYWN0b3Jpbmcgb2YgdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLiAgVGhvdWdoIG1vc3QgZnJvbnRlbmQgdGVtcGxhdGVzIGhhdmUgbm90IGNoYW5nZWQsIG1hbnkgYWRtaW4gdGVtcGxhdGVzIGhhdmUuICBJZiB5b3UgaGF2ZSBhbnkgb3ZlcnJpZGVzIGZvciBhZG1pbiB0ZW1wbGF0ZXMgdGhlbiB5b3UgbXVzdCByZW1vdmUgdGhlbSBiZWZvcmUgdXBncmFkaW5nLjwvZGl2Pgo8dWw+Cgk8bGk+UmVtb3ZlIGFsbCB0ZW1wbGF0ZSBtYW5hZ2VtZW50IGZ1bmN0aW9uYWxpdHkuICBUZW1wbGF0ZXMgYXJlIG5vdyBpbiBEZXNpZ25NYW5hZ2VyLiAgVGhpcyBhbHNvIG1lYW5zIHRoYXQgdGhlcmUgaXMgdGhlIHBvc3NpYmlsaXR5IG9mIGRpZmZlcmVudCB0ZW1wbGF0ZXMgZm9yIGVhY2ggdHlwZS4KCSAgIDxwPlRlbXBsYXRlcyBhcmUgbW92ZWQgZW4tbWFzc2UgaW50byBEZXNpZ25NYW5hZ2VyIGFuZCBnaXZlbiBuZXcgbmFtZXMuICBObyBvdGhlciBjaGFuZ2VzIGFyZSBtYWRlIHRvIHRlbXBsYXRlcy48L3A+CgkgICA8cD5BZGQgcGFyYW1ldGVycyB0byBzb21lIGFjdGlvbnMgdG8gYWxsb3cgc3BlY2lmeWluZyBhbHRlcm5hdGUgdGVtcGxhdGVzLjwvcD4KCTwvbGk+Cgk8bGk+U3BsaXQgdGhlIHNldHRpbmdzIGFjdGlvbihzKSB0byB0aGVpciBvd24gbWVudSBpdGVtIGluIHRoZSBhZG1pbiBuYXZpZ2F0aW9uLjwvbGk+Cgk8bGk+UmVmYWN0b3IgdGhlIHJlZGlyZWN0aW9uIGFmdGVyIGZvcm0gY29tcGxldGlvbjoKCTx1bD4KCTxsaT5JZiB0aGUgcmV0dXJudG8gcGFyYW1ldGVyIGlzIHNwZWNpZmllZCAoZWl0aGVyIGEgcGFnZSBpZCBvciBwYWdlIGFsaWFzKSB1c2UgaXQgdG8gcmVkaXJlY3QgdG8gYSBjb250ZW50IHBhZ2UuPC9saT4KCTxsaT5JZiBhIFBvc3RBY3Rpb25VUkwgd2FzIHNwZWNpZmllZCBhbmQgZXhpc3RzIGluIHRoZSBzZXNzaW9uLCB0aGVuIHJlZGlyZWN0IHRvIHRoYXQgVVJMLjwvbGk+Cgk8bGk+T3RoZXJ3aXNlIHVzZSB0aGUgcHJlZmVyZW5jZXMgYW5kIHRlbXBsYXRlcyBzcGVjaWZpZWQgaW4gdGhlIGFkbWluIG5hdi48L2xpPgoJPC91bD4KCTwvbGk+Cgk8bGk+UmVtb3ZlIHRoZSByZXR1cm5sYXN0IHBhcmFtZXRlci48L2xpPgoJPGxpPlJlbW92ZSBkZXBlbmRlbmN5IG9uIENNU01haWxlci48L2xpPgoJPGxpPlJlbW92ZSB0aGUgc2VwYXJhdGUgcGVybWlzc2lvbiBmb3IgZWRpdGluZyBGRVUgVGVtcGxhdGVzLjwvbGk+Cgk8bGk+UmVtb3ZlIHRoZSBzZXBhcmF0ZSBwZXJtaXNzaW9uIGZvciBlZGl0aW5nIEZFVSBtb2R1bGUgc2V0dGluZ3MuPC9saT4KCTxsaT5GaXhlcyB0byB0aGUgcHJvdGVjdGVkIHNlY3Rpb24gaGVhZGVyLjwvbGk+Cgk8bGk+SW1wcm92ZW1lbnRzIHRvIHVzZXIgaW1wb3J0IHRvIGhhbmRsZSBtdWx0aS1saW5lIHJlY29yZHMuPC9saT4KCTxsaT5SZWZhY3RvciB0aGUgYWRtaW4gc2lkZSBhZGQvZWRpdCB1c2VyIGZ1bmN0aW9uYWxpdHkuCgk8cD5Zb3UgY2FuIG5vdyB1cGxvYWQgaW1hZ2VzIGZvciB1c2VycyB3aGVuIGNyZWF0aW5nIHVzZXJzLjwvcD4KCTxwPlJlbmFtaW5nIGEgdXNlciBhY2NvdW50IG5vdyB3b3JrcyBtdWNoIGJldHRlci48L3A+Cgk8bGk+Cgk8bGk+QWRqdXN0IHN0eWxpbmcgb24gc29tZSBhZG1pbiB0ZW1wbGF0ZXMuPC9saT4KCTxsaT48c3Ryb25nPk5vdGU6IDxzdHJvbmc+IEZpeGVzIHRvIGxvc3QgdXNlcm5hbWUgdGVtcGxhdGUgc3R1ZmYuLi4geW91IHdpbGwgbmVlZCB0byByZXNldCB0aGUgdGVtcGxhdGUgdHlwZXMgdG8gZmFjdG9yeSBkZWZhdWx0cyBhbmQgdmVyaWZ5IHRoZSBjb250ZW50cyBvZiB5b3VyIHZhcmlvdXMgbG9zdC11c2VybmFtZSB0ZW1wbGF0ZXMuICh2Mi4wLjcpPC9saT4pCjwvdWw+Cgk8L2xpPgoKCTxsaT4yLjEKCTx1bD4KCTxsaT5SZS1mYWN0b3JzIHRoZSBidWxrIGFjdGlvbnMgYW5kIGFkZHMgbnVtZXJvdXMgYnVsayBhY3Rpb25zIGZvciB1c2Vycy48L2xpPgoJPGxpPkFkZHMgdGhlIEZFVSBMb2dvdXQgTGluayBjb250ZW50IHR5cGUuPC9saT4KCTxsaT5EZXByZWNhdGUgdGhlIG5vdGlmaWNhdGlvbiBlbWFpbCBmdW5jdGlvbmFsaXR5Li4uIGJldHRlciB0byB1c2UgZXZlbnQgaGFuZGxlcnMuPC9saT4KCTxsaT5TZW5kIHRoZSBPbkRlbGV0ZVVzZXIgZXZlbnQgYmVmb3JlIHRoZSB1c2VyIGlzIHBoeXNpY2FsbHkgZGVsZXRlZCBmcm9tIHRoZSBkYXRhYmFzZS48L2xpPgogICAgICAgIDxsaT5NaW5vciBidWcgZml4ZXM8L2xpPgoJPC91bD4KCTwvbGk+CgoJPGxpPjIuMgoJPHVsPgoJPGxpPkFkZHMgYWRtaW5pc3RyYXRpdmUgb3B0aW9uIHRvIHJlcXVpcmUgYSB1c2VyIHRvIHZlcmlmeSB0aGVtc2VsdmVzIGJlZm9yZSB0aGUgbmV4dCBsb2dpbi48L2xpPgoJPGxpPlJlLWZhY3RvciB0aGUgdmVyaWZ5IGVtYWlsIHRlbXBsYXRlLjwvbGk+Cgk8bGk+Rml4IGJ1ZyBpbiB1c2VyIGhpc3RvcnkgYWN0aW9uLjwvbGk+Cgk8bGk+SW1wcm92ZW1lbnRzIHRvIGVkaXR1c2VyIGFuZCBlZGl0dXNlcjIgYWN0aW9ucy48L2xpPgoJPGxpPk5ldyBwcmVmZXJlbmNlcyBmb3IgdmVyaWZ5IHBhZ2UuPC9saT4KCTxsaT5Ob3cgZGlzcGxheSB1c2VycyB0aGF0IG5lZWQgdG8gdmVyaWZ5IHRoZW1zZWx2ZXMgZGlmZmVyZW50bHkgaW4gdXNlcmxpc3QuPC9saT4KCTxsaT5BZGRlZCBPbkJlZm9yZUxvZ2luIEV2ZW50LCB3aGljaCBpcyBmaXJlZCBhZnRlciBwYXNzd29yZCBpcyB2YWxpZGF0ZWQsIGJ1dCBiZWZvcmUgdGhpbmdzIGFyZSBzZXR1cC48L2xpPgoJPGxpPkFkZHMgZmV1X3NtYXJ0eTo6cHJlbG9hZF91c2VycygpPC9saT4KCTxsaT5BZGRzIHRoZSBhYmlsaXR5IHRvIHJlZGlyZWN0IGJhY2sgdG8gdGhlIG9yaWdpbmFsbHkgcmVxdWVzdGVkIFVSTCAoR0VUIE9OTFkpIGlmIGRpcmVjdCBhY2Nlc3MgdG8gcHJvdGVjdGVkIGNvbnRlbnQgcmVzdWx0ZWQgaW4gYSA0MDMgZXJyb3IsICBhbmQgYW4gZXJyb3IgcGFnZSBleGlzdHMgdG8gaGFuZGxlIHRoZSByZXF1ZXN0LCB3aXRoIHtGcm9udEVuZFVzZXJzfSBjYWxsZWQgb24gaXQuPC9saT4KCTwvdWw+Cgk8L2xpPgoKCTxsaT4yLjMKCTx1bD4KCSAgPGxpPkltcHJvdmVtZW50cyB0byBkZWZhdWx0IGdyb3VwIGZ1bmN0aW9uYWxpdHkuICBUaG91Z2ggYSB1c2VyIGlzIG5vdCByZXF1aXJlZCB0byBiZSBhIG1lbWJlciBvZiBhbnkgZ3JvdXBzLCAod2lsbCBzZWUgYWJvdXQgdGhpcyBsYXRlcikuICBJZiB0aGVyZSBpcyBubyBkZWZhdWx0IGdyb3VwIHNlbGVjdGVkLCB0aGUgZmlyc3QgZ3JvdXAgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIGNoZWNrZWQuPC9saT4KCTwvdWw+Cgk8L2xpPgo8L3VsPgo8YnIgLz4=]]></about>
	<description><![CDATA[Allow users to log in to the frontend of your site]]></description>
	<requires>
	  <requiredname>CGExtensions</requiredname>
	  <requiredversion>1.53.15</requiredversion>
	</requires>
	<requires>
	  <requiredname>CGSimpleSmarty</requiredname>
	  <requiredversion>2.1.5</requiredversion>
	</requires>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.addgroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCmZ1bmN0aW9uIHN3YXAoJiRhLCYkYikKewogICR0bXAgPSAkYTsKICAkYSA9ICRiOwogICRiID0gJHRtcDsKfQoKCmZ1bmN0aW9uIHJlb3JkZXJfYnlfa2V5KCYkaW5wdXQsJGZsZCwka2V5cykKewogIGlmKCAhaXNfYXJyYXkoJGlucHV0KSApIHJldHVybjsKICAkdG1wID0gYXJyYXkoKTsKICBmb3JlYWNoKCAka2V5cyBhcyAkb25la2V5ICkgewogICAgZm9yZWFjaCggJGlucHV0IGFzICRyZWMgKSB7CiAgICAgIGlmKCAkcmVjWyRmbGRdID09ICRvbmVrZXkgKSB7CgkkdG1wW10gPSAkcmVjOwoJYnJlYWs7CiAgICAgIH0KICAgIH0KICB9CiAgJGlucHV0ID0gJHRtcDsKfQoKZnVuY3Rpb24gYWRqdXN0X29yZGVyX2J5X2tleXMoJiRpbnB1dCwkZmxkLCRrZXlzKQp7CiAgaWYoICFpc19hcnJheSgkaW5wdXQpICkgcmV0dXJuOwogICR0bXAgPSBhcnJheSgpOwoKICBmb3JlYWNoKCAka2V5cyBhcyAkb25la2V5ICkgewogICAgZm9yZWFjaCggJGlucHV0IGFzICRyZWMgKSB7CiAgICAgIGlmKCAkcmVjWyRmbGRdID09ICRvbmVrZXkgKSB7CgkkdG1wW10gPSAkcmVjOwoJYnJlYWs7CiAgICAgIH0KICAgIH0KICB9CiAgZm9yZWFjaCggJGlucHV0IGFzICRyZWMgKSB7CiAgICAkZjEgPSAwOwogICAgZm9yZWFjaCggJHRtcCBhcyAkdG1wcmVjICkgewogICAgICBpZiggJHJlY1skZmxkXSA9PSAkdG1wcmVjWyRmbGRdICkgewoJJGYxID0gMTsKCWJyZWFrOwogICAgICB9CiAgICB9CiAgICBpZiggJGYxID09IDAgKSAkdG1wW10gPSAkcmVjOwogIH0KICAkaW5wdXQgPSAkdG1wOwp9CgoKLy8KLy8gSW5pdGlhbGl6YXRpb24KLy8KJGdyb3VwbmFtZSA9ICcnOwokZ3JvdXBkZXNjID0gJyc7CiRnaWQgPSAtMTsKCi8vIGNoZWNrIHBlcm1pc3Npb25zIGFnYWluCmlmKCAhaXNzZXQoJHBhcmFtc1snZ3JvdXBfaWQnXSkgKSB7CiAgaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ2FkZGdyb3VwJyApICkgewogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwogICAgcmV0dXJuOwogIH0KfQplbHNlIHsKICBpZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCAnZWRpdGdyb3VwcycgKSApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2FjY2Vzc2RlbmllZCcpKTsKICAgIHJldHVybjsKICB9Cn0KCiRwcm9wZGVmbiA9IGFycmF5KCk7CnsKICAkdG1wID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKICBpZiggY291bnQoJHRtcCkgPT0gMCApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2Vycm9yX25vcHJvcGVydGllcycpKTsKICAgIHJldHVybjsKICB9CiAgZm9yZWFjaCggJHRtcCBhcyAka2V5ID0+ICRyZWMgKSB7CiAgICAkcmVjWydyZXF1aXJlZCddID0gMDsKICAgICRwcm9wZGVmblska2V5XSA9ICRyZWM7CiAgfQp9CgppZiggaXNzZXQoJHBhcmFtc1snZ3JvdXBfaWQnXSkgKSB7CiAgLy8gd2UncmUgZWRpdGluZyBhIGdydW9wCiAgJGdpZCA9IChpbnQpJHBhcmFtc1snZ3JvdXBfaWQnXTsKICAkZ2luZm8gPSAkdGhpcy0+R2V0R3JvdXBJbmZvKCRnaWQpOwogIGlmKCBpc3NldCgkZ2luZm9bMF0pICYmICRnaW5mb1swXSA9PSBGQUxTRSApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2Vycm9yX2dyb3Vwbm90Zm91bmQnKSk7CiAgICByZXR1cm47CiAgfQogICRncm91cG5hbWUgPSAkZ2luZm9bJ2dyb3VwbmFtZSddOwogICRncm91cGRlc2MgPSAkZ2luZm9bJ2dyb3VwZGVzYyddOwoKICAvLyBsb2FkIHJlbGF0aW9ucywgYW5kIGFkanVzdCB0aGUgcHJvcGRlZm4gYXJyYXkKICAkcmVzID0gJHRoaXMtPkdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoJGdpZCk7CiAgaWYoICRyZXNbMF0gPT0gRkFMU0UgKSB7CiAgICAvLyBlZGl0aW5nIGEgZ3JvdXAsIGJ1dCBubyBwcm9wZXJ0eSByZWxhdGlvbnMgKG1heWJlIHRoZSBncm91cHMgYXJlIGhlbGQgaW4gYSBjb25zdW1lciBtb2R1bGUsIGJ1dCBub3QgdGhlIHByb3BlcnR5IGRlZnMpLgogICAgLy8gdHJlYXQgaXQgbGlrZSB3ZSdyZSBhZGRpbmcgYSBncm91cC4KICAgIC8qCiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsCgkJCSAgICAgJHRoaXMtPkxhbmcoJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJykpOwogICAgcmV0dXJuOwogICAgKi8KICB9CiAgZWxzZSB7CiAgICAvLyBzb3J0IHRoZW0gYnkgc29ydCBrZXkKICAgIHVhc29ydCgkcmVzLGFycmF5KCdjZ2VfYXJyYXknLCdjb21wYXJlX2VsZW1lbnRzX2J5X3NvcnRvcmRlcl9rZXknKSk7CgogICAgLy8gc29ydCB0aGUgcHJvcGRlZm5zIGJ5IHRoZSBzb3J0IG9yZGVyLgogICAgJG5hbWVzID0gYXJyYXkoKTsKICAgIGZvcmVhY2goICRyZXMgYXMgJHRtcCApIHsKICAgICAgJG5hbWVzW10gPSAkdG1wWyduYW1lJ107CiAgICB9CiAgICBhZGp1c3Rfb3JkZXJfYnlfa2V5cygkcHJvcGRlZm4sJ25hbWUnLCRuYW1lcyk7CgogICAgLy8gdXBkYXRlIHRoZSBwcm9wZGVmbnMKICAgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCRyZXMpOyAkaSsrICkgewogICAgICBmb3IoICRqID0gMDsgJGogPCBjb3VudCgkcHJvcGRlZm4pOyAkaisrICkgewoJaWYoICRyZXNbJGldWyduYW1lJ10gPT0gJHByb3BkZWZuWyRqXVsnbmFtZSddICkgewoJICAkcHJvcGRlZm5bJGpdWydyZXF1aXJlZCddID0gJHJlc1skaV1bJ3JlcXVpcmVkJ107CgkgIGJyZWFrOwoJfQogICAgICB9CiAgICB9IC8vIGZvcgogIH0gLy8gZWxzZQogfQoKLy8gZXhjbHVkZSBwcm9wZXJ0eSBkZWZucyBmcm9tIG1vZHVsZXMKewogICR0bXAgPSBhcnJheSgpOwogIGZvcmVhY2goICRwcm9wZGVmbiBhcyAka2V5ID0+ICRyZWMgKSB7CiAgICBpZiggIWlzc2V0KCRyZWNbJ2V4dHJhJ11bJ21vZHVsZSddKSApICR0bXBbXSA9ICRyZWM7CiAgfQogICRwcm9wZGVmbiA9ICR0bXA7Cn0KCmlmIChpc3NldCAoJHBhcmFtc1snY2FuY2VsJ10pKSAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdncm91cHMnICk7CmlmKCBpc3NldCgkcGFyYW1zWydtb3ZldXAnXSkgKSB7CiAgICAvLyB1cGRhdGUgdGhlIHByb3BkZWZuIHdpdGggc3RhdHVzIHZhbHVlcwogICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHBhcmFtc1snaW5wdXRfbmFtZSddKTsgJGkrKyApIHsKICAgICAgICAkbmFtZSA9ICRwYXJhbXNbJ2lucHV0X25hbWUnXVskaV07CiAgICAgICAgZm9yKCAkaiA9IDA7ICRqIDwgY291bnQoJHByb3BkZWZuKTsgJGorKyApIHsKICAgICAgICAgICAgaWYoICRuYW1lID09ICRwcm9wZGVmblskal1bJ25hbWUnXSApIHsKICAgICAgICAgICAgICAgICRwcm9wZGVmblskal1bJ3JlcXVpcmVkJ10gPSAkcGFyYW1zWydpbnB1dF9yZXF1aXJlZCddWyRpXTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2dyb3VwbmFtZSddKSApICRncm91cG5hbWUgPSB0cmltKCRwYXJhbXNbJ2lucHV0X2dyb3VwbmFtZSddKTsKICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9ncm91cGRlc2MnXSkgKSAkZ3JvdXBkZXNjID0gdHJpbSgkcGFyYW1zWydpbnB1dF9ncm91cGRlc2MnXSk7CgogICAgLy8gd2UncmUgbW92aW5nIHN0dWZmIHVwCiAgICAvLyBzbyBhZGp1c3QgdGhlIHByb3BkZWZuIGFycmF5CiAgICAkaWR4ID0gKGludCkkcGFyYW1zWydtb3ZldXAnXSAtIDE7CiAgICBzd2FwKCRwYXJhbXNbJ2lucHV0X25hbWUnXVskaWR4XSwkcGFyYW1zWydpbnB1dF9uYW1lJ11bJGlkeC0xXSk7CiAgICByZW9yZGVyX2J5X2tleSgkcHJvcGRlZm4sJ25hbWUnLCRwYXJhbXNbJ2lucHV0X25hbWUnXSk7Cn0KaWYoIGlzc2V0KCRwYXJhbXNbJ21vdmVkb3duJ10pICkgewogICAgLy8gdXBkYXRlIHRoZSBwcm9wZGVmbiB3aXRoIHN0YXR1cyB2YWx1ZXMKICAgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCRwYXJhbXNbJ2lucHV0X25hbWUnXSk7ICRpKysgKSB7CiAgICAgICAgJG5hbWUgPSAkcGFyYW1zWydpbnB1dF9uYW1lJ11bJGldOwogICAgICAgIGZvciggJGogPSAwOyAkaiA8IGNvdW50KCRwcm9wZGVmbik7ICRqKysgKSB7CiAgICAgICAgICAgIGlmKCAkbmFtZSA9PSAkcHJvcGRlZm5bJGpdWyduYW1lJ10gKSB7CiAgICAgICAgICAgICAgICAkcHJvcGRlZm5bJGpdWydyZXF1aXJlZCddID0gJHBhcmFtc1snaW5wdXRfcmVxdWlyZWQnXVskaV07CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9ncm91cG5hbWUnXSkgKSAkZ3JvdXBuYW1lID0gdHJpbSgkcGFyYW1zWydpbnB1dF9ncm91cG5hbWUnXSk7CiAgICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfZ3JvdXBkZXNjJ10pICkgJGdyb3VwZGVzYyA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZ3JvdXBkZXNjJ10pOwoKICAgIC8vIHdlJ3JlIG1vdmluZyBzdHVmZiBkb3duCiAgICAvLyBzbyBhZGp1c3QgdGhlIHByb3BkZWZuIGFycmF5CiAgICAkaWR4ID0gKGludCkkcGFyYW1zWydtb3ZlZG93biddIC0gMTsKICAgIHN3YXAoJHBhcmFtc1snaW5wdXRfbmFtZSddWyRpZHhdLCRwYXJhbXNbJ2lucHV0X25hbWUnXVskaWR4KzFdKTsKICAgIHJlb3JkZXJfYnlfa2V5KCRwcm9wZGVmbiwnbmFtZScsJHBhcmFtc1snaW5wdXRfbmFtZSddKTsKfQppZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkgewogICAgJHRoaXMtPm15UmVkaXJlY3QoJGlkLCdkb19hZGRncm91cCcsJHJldHVybmlkLCRwYXJhbXMpOwp9CgovLyBwb3B1bGF0ZSB0aGUgdGVtcGxhdGUKaWYoIGlzc2V0KCAkcGFyYW1zWydlcnJvciddICkgKSAkc21hcnR5LT5hc3NpZ24oJ2Vycm9yJywkcGFyYW1zWydlcnJvciddKTsKaWYoIGlzc2V0KCAkcGFyYW1zWydtZXNzYWdlJ10gKSApICRzbWFydHktPmFzc2lnbignbWVzc2FnZScsJHBhcmFtc1snbWVzc2FnZSddKTsKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZScsICR0aGlzLT5MYW5nKCdhZGRncm91cCcpKTsKaWYoICRnaWQgPiAwICkgewogICRzbWFydHktPmFzc2lnbignaGlkZGVuJywkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdncm91cF9pZCcsJGdpZCkpOwogICRzbWFydHktPmFzc2lnbigndGl0bGUnLCAkdGhpcy0+TGFuZygnZWRpdGdyb3VwJykpOwogfQokc21hcnR5LT5hc3NpZ24gKCdzdGFydGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtU3RhcnQgKCRpZCwnYWRkZ3JvdXAnLCRyZXR1cm5pZCkpOwokc21hcnR5LT5hc3NpZ24gKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQgKCkpOwokc21hcnR5LT5hc3NpZ24gKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbiAoJ2NhbmNlbCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdjYW5jZWwnLCR0aGlzLT5MYW5nKCdjYW5jZWwnKSkpOwoKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2dyb3VwbmFtZScsICR0aGlzLT5MYW5nICgnbmFtZScpKTsKJHNtYXJ0eS0+YXNzaWduICgncHJvbXB0X2dyb3VwZGVzYycsJHRoaXMtPkxhbmcgKCdkZXNjcmlwdGlvbicpKTsKJGNvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwokYWRkdGV4dCA9ICcnOwppZiggISRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX0VESVRHUk9VUFMpICYmICEkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9VU0VTVERHUk9VUFMpICkgewogICRhZGR0ZXh0PSdyZWFkb25seT0icmVhZG9ubHkiIGRpc2FibGVkPSJkaXNhYmxlZCInOwp9CiRzbWFydHktPmFzc2lnbiAoJ2lucHV0X2dyb3VwbmFtZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQgKCRpZCwgJ2lucHV0X2dyb3VwbmFtZScsICRncm91cG5hbWUsIDIwLCA4MCwgJGFkZHRleHQpKTsKJHNtYXJ0eS0+YXNzaWduICgnaW5wdXRfZ3JvdXBkZXNjJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCAoJGlkLCAnaW5wdXRfZ3JvdXBkZXNjJywgJGdyb3VwZGVzYywgODAsIDI1NSwgJGFkZHRleHQpKTsKCi8vIGRpc3BsYXkgYSBsaXN0IG9mIHRoZSBwcm9wZXJ0aWVzIGluIGEgZm9ybQovLyB0byBhbGxvdyB0aGUgdXNlciB0byBwaWNrIHdoaWNoIG9uZXMgYXJlIHJlcXVpcmVkIGFuZCB3aGljaCBvbmVzIGFyZW50Lgokcm93YXJyYXkgPSBhcnJheSgpOwoka2V5cyA9IGFycmF5X2tleXMoJHRoaXMtPnR5cGVzKTsKJG9wdGlvbnMgPSBhcnJheSggJHRoaXMtPkxhbmcoJ29mZicpID0+IDAsCgkJICAkdGhpcy0+TGFuZygnb3B0aW9uYWwnKSA9PiAxLAoJCSAgJHRoaXMtPkxhbmcoJ3JlcXVpcmVkJykgPT4gMiwKCQkgICR0aGlzLT5MYW5nKCdoaWRkZW4nKSA9PiAzLAoJCSAgJHRoaXMtPkxhbmcoJ3JlYWRvbmx5JykgPT4gNCk7CgokdGhlbWVPYmplY3QgPSBjbXNfdXRpbHM6OmdldF90aGVtZV9vYmplY3QoKTsKJGltZ191cCA9ICR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vc29ydF91cC5naWYnLCR0aGlzLT5MYW5nKCdtb3ZlX3VwJywnJywnJywnc3lzdGVtaWNvbicpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbWdfdXAnLCRpbWdfdXApOwokaW1nX2Rvd24gPSAkdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL3NvcnRfZG93bi5naWYnLCR0aGlzLT5MYW5nKCdtb3ZlX2Rvd24nLCcnLCcnLCdzeXN0ZW1pY29uJykpOwokc21hcnR5LT5hc3NpZ24oJ2ltZ19kb3duJywkaW1nX2Rvd24pOwoKJHNvcnRvcmRlciA9IDE7CmZvcmVhY2goICRwcm9wZGVmbiBhcyAkZGVmbiApIHsKICAkb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiAgJG9uZXJvdy0+bmFtZSA9ICRkZWZuWyduYW1lJ107CiAgJG9uZXJvdy0+cHJvbXB0ID0gJGRlZm5bJ3Byb21wdCddOwogICRvbmVyb3ctPnR5cGUgPSAkdGhpcy0+TGFuZygka2V5c1skZGVmblsndHlwZSddXSk7CiAgJG9uZXJvdy0+aGlkZGVuID0gJzxkaXY+Jy4kdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdpbnB1dF9uYW1lW10nLCRkZWZuWyduYW1lJ10pLic8L2Rpdj4nOwogICRvbmVyb3ctPnJlcXVpcmVkID0gJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oICRpZCwgJ2lucHV0X3JlcXVpcmVkW10nLCAkb3B0aW9ucywtMSwgJGRlZm5bJ3JlcXVpcmVkJ10pOwogICRvbmVyb3ctPmVuY3J5cHRlZCA9ICRkZWZuWydlbmNyeXB0J107CgogIGlmKCAkc29ydG9yZGVyID4gMSApIHsKICAgICRvbmVyb3ctPm1vdmV1cF9pZHggPSAkc29ydG9yZGVyOwogICAgJG9uZXJvdy0+bW92ZXVwID0gJHRoaXMtPkNHQ3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdtb3ZldXAnLCRzb3J0b3JkZXIsJycsJ2ljb25zL3N5c3RlbS9zb3J0X3VwLmdpZicpOwogIH0KICBpZiggJHNvcnRvcmRlciA8IGNvdW50KCRwcm9wZGVmbikgKSB7CiAgICAkb25lcm93LT5tb3ZlZG93bl9pZHggPSAkc29ydG9yZGVyOwogICAgJG9uZXJvdy0+bW92ZWRvd24gPSAkdGhpcy0+Q0dDcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ21vdmVkb3duJywkc29ydG9yZGVyLCcnLCdpY29ucy9zeXN0ZW0vc29ydF9kb3duLmdpZicpOwogIH0KCiAgJHJvd2FycmF5W10gPSAkb25lcm93OwogICsrJHNvcnRvcmRlcjsKfQoKJHNtYXJ0eS0+YXNzaWduKCdwcm9wcycsICRyb3dhcnJheSk7CiRzbWFydHktPmFzc2lnbigncHJvcGNvdW50Jyxjb3VudCgkcm93YXJyYXkpKTsKJHNtYXJ0eS0+YXNzaWduKCdzb3J0b3JkZXJ0ZXh0JywgJHRoaXMtPkxhbmcoJ3NvcnRvcmRlcicpKTsKJHNtYXJ0eS0+YXNzaWduKCduYW1ldGV4dCcsJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0dGV4dCcsICR0aGlzLT5MYW5nKCdwcm9tcHQnKSk7CiRzbWFydHktPmFzc2lnbigndHlwZXRleHQnLCR0aGlzLT5MYW5nKCd0eXBlJykpOwokc21hcnR5LT5hc3NpZ24oJ2ZpZWxkc3RhdHVzdGV4dCcsJHRoaXMtPkxhbmcoJ2ZpZWxkc3RhdHVzJykpOwokc21hcnR5LT5hc3NpZ24oJ3VzZWRpbmxvc3R1bnRleHQnLCR0aGlzLT5MYW5nKCd1c2VkaW5sb3N0dW4nKSk7CgovLyBEaXNwbGF5IHRoZSBwb3B1bGF0ZWQgdGVtcGxhdGUKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlICgnYWRkZ3JvdXAudHBsJyk7Cgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.addprop.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ2FkZHByb3AnICkgKSBleGl0OwoKIwojIEluaXRpYWxpemF0aW9uCiMKJHR5cGVzID0gJHRoaXMtPnR5cGVzOwp1bnNldCgkdHlwZXNbJ2RhdGEnXSk7CiRmaWVsZHR5cGVzID0gJHRoaXMtPmxhbmdpZnlLZXlzKCR0eXBlcyk7CiR0aXRsZSA9ICR0aGlzLT5MYW5nKCdhZGRwcm9wJyk7CiRkZWZuID0gYXJyYXkoKTsKJGRlZm5bJ25hbWUnXSA9ICcnOwokZGVmblsncHJvbXB0J10gPSAnJzsKJGRlZm5bJ3R5cGUnXSA9IDA7CiRkZWZuWydsZW5ndGgnXSA9IDgwOwokZGVmblsnbWF4bGVuZ3RoJ10gPSAyNTU7CiRkZWZuWydhdHRyaWJzJ10gPSAnJzsKJGRlZm5bJ2ZvcmNlX3VuaXF1ZSddID0gMDsKJGRlZm5bJ2VuY3J5cHQnXSA9IDA7CiRhdHRyaWJzID0gYXJyYXkoKTsKJHNlbG9wdGlvbnMgPSAnJzsKJHN0YXR1cyA9ICcnOwokbWVzc2FnZSA9ICcnOwokcHJvcG5hbWUgPSAnJzsKCgojCiMgUmVhZCBQYXJhbWV0ZXJzCiMKaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApIHsKJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAncHJvcGVydGllcycgKTsKcmV0dXJuOwp9CmlmKCBpc3NldCgkcGFyYW1zWydwcm9wbmFtZSddKSApIHsKICAgICRwcm9wbmFtZSA9IHRyaW0oJHBhcmFtc1sncHJvcG5hbWUnXSk7CiAgICAkdGl0bGUgPSAkdGhpcy0+TGFuZygnZWRpdHByb3AnLCRwcm9wbmFtZSk7CiAgICAkZGVmbiA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm4oJHByb3BuYW1lKTsKICAgIGlmKCAkZGVmbiA9PSBGQUxTRSApIHsKICAgICAgICAkcGFybXMgPSBhcnJheSgpOwogICAgICAgICRwYXJtc1snZXJyb3InXSA9IDE7CiAgICAgICAgJHBhcm1zWydtZXNhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9wcm9wbm90Zm91bmQnKTsKICAgICAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ3Byb3BlcnRpZXMnLCRwYXJtcyk7CiAgICAgICAgcmV0dXJuOwogICAgfQogICAgJHRtcCA9ICR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRwcm9wbmFtZSk7CiAgICBpZiggJHRtcCApIHsKICAgICAgICBmb3JlYWNoKCAkdG1wIGFzICRrZXkgPT4gJHZhbCApIHsKICAgICAgICAgICAgaWYoICRrZXkgPT0gJHZhbCApIHsKICAgICAgICAgICAgICAgICRzZWxvcHRpb25zIC49ICIkdmFsXG4iOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgJHNlbG9wdGlvbnMgLj0gIiRrZXk9JHZhbFxuIjsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIGlmKCBpc3NldCgkZGVmblsnYXR0cmlicyddKSAmJiAhZW1wdHkoJGRlZm5bJ2F0dHJpYnMnXSkgKSB7CiAgICAgICAgJGF0dHJpYnMgPSB1bnNlcmlhbGl6ZSgkZGVmblsnYXR0cmlicyddKTsKICAgIH0KfQoKaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3R5cGUnXSkgKSB7CiAgICAkZGVmblsndHlwZSddID0gKGludCkkcGFyYW1zWydpbnB1dF90eXBlJ107Cn0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2xlbmd0aCddKSApIHsKICAgICRkZWZuWydsZW5ndGgnXSA9IChpbnQpJHBhcmFtc1snaW5wdXRfbGVuZ3RoJ107Cn0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X21heGxlbmd0aCddKSApIHsKICAgICRkZWZuWydtYXhsZW5ndGgnXSA9IChpbnQpJHBhcmFtc1snaW5wdXRfbWF4bGVuZ3RoJ107Cn0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X25hbWUnXSkgKSB7CiAgICAkZGVmblsnbmFtZSddID0gc3RydG9sb3dlcih0cmltKCRwYXJhbXNbJ2lucHV0X25hbWUnXSkpOwogICAgJGRlZm5bJ25hbWUnXSA9IG11bmdlX3N0cmluZ190b191cmwoJGRlZm5bJ25hbWUnXSk7CiAgICAkZGVmblsnbmFtZSddID0gc3RyX3JlcGxhY2UoJy0nLCdfJywkZGVmblsnbmFtZSddKTsKfQppZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfcHJvbXB0J10pICkgewogICAgJGRlZm5bJ3Byb21wdCddID0gdHJpbSgkcGFyYW1zWydpbnB1dF9wcm9tcHQnXSk7Cn0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2ZvcmNlX3VuaXF1ZSddKSApIHsKICAgICRkZWZuWydmb3JjZV91bmlxdWUnXSA9IChpbnQpJHBhcmFtc1snaW5wdXRfZm9yY2VfdW5pcXVlJ107Cn0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2VuY3J5cHQnXSkgKSB7CiAgICAkZGVmblsnZW5jcnlwdCddID0gKGludCkkcGFyYW1zWydpbnB1dF9lbmNyeXB0J107Cn0KaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3NlbG9wdGlvbnMnXSkgKSB7CiAgICAkc2Vsb3B0aW9ucyA9ICRwYXJhbXNbJ2lucHV0X3NlbG9wdGlvbnMnXTsKfQppZiAoaXNzZXQoJHBhcmFtc1snaW5wdXRfcmFkaW9vcHRpb25zJ10pKSB7CiAgICAkc2Vsb3B0aW9ucyA9ICRwYXJhbXNbJ2lucHV0X3JhZGlvb3B0aW9ucyddOwp9CmZvcmVhY2goICRwYXJhbXMgYXMgJGtleSA9PiAkdmFsdWUgKSB7CiAgICBpZiggc3RhcnRzd2l0aCgka2V5LCdpbnB1dF9hdHRyaWJfJykgKSB7CiAgICAgICAgJGF0dHJpYiA9IHN1YnN0cigka2V5LDEzKTsKICAgICAgICAkYXR0cmlic1skYXR0cmliXSA9ICR2YWx1ZTsKICAgIH0KfQppZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkgewogICAgaWYoIGVtcHR5KCRkZWZuWyduYW1lJ10pIHx8IGVtcHR5KCRkZWZuWydwcm9tcHQnXSkgKSB7CiAgICAgICAgJHN0YXR1cyA9ICdlcnJvcic7CiAgICAgICAgJG1lc3NhZ2UgPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHBhcmFtcycpOwogICAgfQoKICAgIGlmKCBlbXB0eSgkc3RhdHVzKSAmJiAkc2Vsb3B0aW9ucyApIHsKICAgICAgICAkb3B0aW9ucyA9IGFycmF5KCk7CiAgICAgICAgJHRtcCA9IGV4cGxvZGUoIlxuIiwgJHNlbG9wdGlvbnMpOwogICAgICAgIGZvcmVhY2goICR0bXAgYXMgJG9uZSApIHsKICAgICAgICAgICAgJG9uZSA9IHRyaW0oJG9uZSk7CiAgICAgICAgICAgIGlmKCAhZW1wdHkoJG9uZSkgKSB7CiAgICAgICAgICAgICAgICAkb3B0aW9uc1tdID0gJG9uZTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBpZiggZW1wdHkoJHN0YXR1cykgKSB7CiAgICAgICAgc3dpdGNoKCRkZWZuWyd0eXBlJ10pIHsKICAgICAgICBjYXNlICcwJzogLyogdGV4dCAqLwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICc2JzogLyogaW1hZ2UgKi8KICAgICAgICAgICAgJGRlZm5bJ2xlbmd0aCddID0gMjU1OwogICAgICAgICAgICAkZGVmblsnZW5jcnlwdCddID0gMDsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnMic6IC8qIGVtYWlsICovCiAgICAgICAgICAgIC8vIGVtYWlsIGZpZWxkcyBjYW5ub3QgYmUgZW5jcnlwdGVkLgogICAgICAgICAgICAkZGVmblsnZW5jcnlwdCddID0gMDsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAxOiAgIC8qIGNoZWNrYm94ICovCiAgICAgICAgICAgICRkZWZuWydsZW5ndGgnXSA9IDE7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgMzogICAvKiB0ZXh0YXJlYSAqLwogICAgICAgICAgICAkZGVmblsnbGVuZ3RoJ10gPSAyNTU7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgNDoKICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICRkZWZuWydsZW5ndGgnXSA9IGNvdW50KCRvcHRpb25zKTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSA3OiAvKiByYWRpb2J1dHRvbnMgKi8KICAgICAgICAgICAgJGRlZm5bJ2xlbmd0aCddID0gY291bnQoJG9wdGlvbnMpOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDg6IC8qIGRhdGUgKi8KICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAkZGVmblsnbGVuZ3RoJ10gPSAxOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CgogICAgICAgIGlmKCAoKCRkZWZuWyd0eXBlJ10gPT0gMCB8fCAkZGVmblsndHlwZSddID09IDIpICYmICggJGRlZm5bJ2xlbmd0aCddIDwgMSB8fCAkZGVmblsnbGVuZ3RoJ10gPiAyNTUgfHwgJGRlZm5bJ21heGxlbmd0aCddIDwgMSB8fCAkZGVmblsnbWF4bGVuZ3RoJ10gPiAxMDI0IHx8ICRkZWZuWydtYXhsZW5ndGgnXSA8ICRkZWZuWydsZW5ndGgnXSApKSB8fAogICAgICAgICAgICAoKCRkZWZuWyd0eXBlJ10gPT0gNCB8fCAkZGVmblsndHlwZSddID09IDUgfHwgJGRlZm5bJ3R5cGUnXSA9PSA3KSAmJiAkc2Vsb3B0aW9ucyA9PSAnJyApIHx8CiAgICAgICAgICAgICgoJGRlZm5bJ3R5cGUnXSA9PSA2KSAmJiAoJGRlZm5bJ2xlbmd0aCddIDwgMTAgfHwgJGRlZm5bJ2xlbmd0aCddID4gMTAyNCkpCiAgICAgICAgICAgICl7CiAgICAgICAgICAgICRzdGF0dXMgPSAnZXJyb3InOwogICAgICAgICAgICAkbWVzc2FnZSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkcGFyYW1zJyk7CiAgICAgICAgfQogICAgfQoKICAgIGlmKCBlbXB0eSgkc3RhdHVzKSApIHsKICAgICAgICAkZGVmblsnYXR0cmlicyddID0gc2VyaWFsaXplKCRhdHRyaWJzKTsKICAgIH0KCiAgICBpZiggZW1wdHkoJHN0YXR1cykgKSB7CiAgICAgICAgaWYoICFlbXB0eSgkcHJvcG5hbWUpICkgewogICAgICAgICAgICAkdG1wID0gJHRoaXMtPlNldFByb3BlcnR5RGVmbiggJHByb3BuYW1lLCAkZGVmblsnbmFtZSddLCAkZGVmblsncHJvbXB0J10sICRkZWZuWyd0eXBlJ10sICRkZWZuWydsZW5ndGgnXSwgJGRlZm5bJ21heGxlbmd0aCddLCAkZGVmblsnYXR0cmlicyddLCAkZGVmblsnZm9yY2VfdW5pcXVlJ10sICRkZWZuWydlbmNyeXB0J10gKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIC8vIE5ldyBwcm9wZXJ0eQogICAgICAgICAgICAkdG1wID0gJHRoaXMtPkFkZFByb3BlcnR5RGVmbiggJGRlZm5bJ25hbWUnXSwgJGRlZm5bJ3Byb21wdCddLCAkZGVmblsndHlwZSddLCAkZGVmblsnbGVuZ3RoJ10sICRkZWZuWydtYXhsZW5ndGgnXSwgJGRlZm5bJ2F0dHJpYnMnXSwgJGRlZm5bJ2ZvcmNlX3VuaXF1ZSddLCAkZGVmblsnZW5jcnlwdCddICk7CiAgICAgICAgICAgIGlmKCAhJHRtcFswXSApIHsKICAgICAgICAgICAgICAgICRzdGF0dXMgPSAnZXJyb3InOwogICAgICAgICAgICAgICAgJG1lc3NhZ2UgPSAkdG1wWzFdOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGlmKCBlbXB0eSgkc3RhdHVzKSAmJiBpc3NldCgkb3B0aW9ucykgJiYgJG9wdGlvbnMgKSB7CiAgICAgICAgaWYoICFlbXB0eSgkcHJvcG5hbWUpICkgewogICAgICAgICAgICAkdGhpcy0+RGVsZXRlU2VsZWN0T3B0aW9ucygkcHJvcG5hbWUpOwogICAgICAgIH0KCiAgICAgICAgJHRtcCA9ICR0aGlzLT5BZGRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10sJG9wdGlvbnMpOwogICAgICAgIGlmKCAhJHRtcFswXSApIHsKICAgICAgICAgICAgJHN0YXR1cyA9ICdlcnJvcic7CiAgICAgICAgICAgICRtZXNzYWdlID0gJHRtcFsxXTsKICAgICAgICB9CiAgICB9CgogICAgaWYoIGVtcHR5KCRzdGF0dXMpICkgewogICAgICAgICR0aGlzLT5TZXRNZXNzYWdlKCR0aGlzLT5MYW5nKCdvcGVyYXRpb25fY29tcGxldGVkJykpOwogICAgICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCAkaWQsICdwcm9wZXJ0aWVzJyApOwogICAgfQoKICAgIC8vCiAgICAvLyBpZiB3ZSBnZXQgaGVyZSwgaXQncyBhbiBlcnJvciBvZiBzb21lIHNvcnQKICAgIC8vCn0KCiMKIyBHaXZlIGV2ZXlydGhpbmcgdG8gc21hcnR5CiMKaWYoICFlbXB0eSgkc3RhdHVzKSApIHsKICAgICRzbWFydHktPmFzc2lnbignZXJyb3InLDEpOwp9CmlmKCAhZW1wdHkoJG1lc3NhZ2UpICkgewogICAgJHNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywkbWVzc2FnZSk7Cn0KJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCdhZGRwcm9wJywkcmV0dXJuaWQsJ3Bvc3QnLCcnLGZhbHNlLCcnLCRwYXJhbXMpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZScsJHRpdGxlKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfbmFtZScsJHRoaXMtPkxhbmcoJ25hbWUnKSk7CiRzbWFydHktPmFzc2lnbignaW5mb19uYW1lJywkdGhpcy0+TGFuZygnaW5mb19uYW1lJykpOwoKJHF1ZXJ5ID0gJ1NFTEVDVCBjb3VudChpZCkgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMnOwokbnVzZXJzID0gJGRiLT5HZXRPbmUoJHF1ZXJ5KTsKJHF1ZXJ5ID0gJ1NFTEVDVCBjb3VudChpZCkgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBzJzsKJG5ncm91cHMgPSAkZGItPkdldE9uZSgkcXVlcnkpOwppZiggIWVtcHR5KCRwcm9wbmFtZSkgJiYgKCRudXNlcnMgPiAwIHx8ICRuZ3JvdXBzID4gMCkgKSB7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X25hbWUnLAogICAgICAgICAgICAgICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJ2lucHV0X25hbWUnLCRwcm9wbmFtZSkuJHByb3BuYW1lKTsKfQplbHNlIHsKICAgICRzbWFydHktPmFzc2lnbignaW5wdXRfbmFtZScsCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X25hbWUnLCRkZWZuWyduYW1lJ10sIDMwLCAzMCApKTsKfQokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9wcm9tcHQnLCR0aGlzLT5MYW5nKCdwcm9tcHQnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfcHJvbXB0JywKICAgICAgICAgICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9wcm9tcHQnLCRkZWZuWydwcm9tcHQnXSwgODAsIDI1NSApKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdHlwZScsJHRoaXMtPkxhbmcoJ3R5cGUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfdHlwZScsCiAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93biggJGlkLCAnaW5wdXRfdHlwZScsICRmaWVsZHR5cGVzLCAtMSwgJGRlZm5bJ3R5cGUnXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnb25jaGFuZ2U9InRoaXMuZm9ybS5zdWJtaXQoKTsiJykpOwppZiggJGRlZm5bJ3R5cGUnXSA9PSAwIHx8ICRkZWZuWyd0eXBlJ10gPT0gMiApIHsKICAgICRzbWFydHktPmFzc2lnbignaW5wdXRfZm9yY2VfdW5pcXVlJywKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRZZXNOb0Ryb3Bkb3duKCRpZCwnaW5wdXRfZm9yY2VfdW5pcXVlJywkZGVmblsnZm9yY2VfdW5pcXVlJ10pKTsKfQppZiggIWlzc2V0KCRwYXJhbXNbJ3Byb3BuYW1lJ10pICkgewogICAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9lbmNyeXB0JywKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRZZXNOb0Ryb3Bkb3duKCRpZCwnaW5wdXRfZW5jcnlwdCcsJGRlZm5bJ2VuY3J5cHQnXSkpOwp9CmVsc2UgewogICAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9lbmNyeXB0JywkZGVmblsnZW5jcnlwdCddPyR0aGlzLT5MYW5nKCd5ZXMnKTokdGhpcy0+TGFuZygnbm8nKSk7Cn0KCiRzbWFydHktPmFzc2lnbignZGVmbicsJGRlZm4pOwokc21hcnR5LT5hc3NpZ24oJ29yaWdfdHlwZScsCiAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAnb3JpZ190eXBlJywgJGRlZm5bJ3R5cGUnXSkpOwokc21hcnR5LT5hc3NpZ24gKCdzdWJtaXQnLAogICAgICAgICAgICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnc3VibWl0JywgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpICkpOwokc21hcnR5LT5hc3NpZ24gKCdjYW5jZWwnLAogICAgICAgICAgICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCAoJGlkLCAnY2FuY2VsJywkdGhpcy0+TGFuZygnY2FuY2VsJykpKTsKJGZsZHMgPSBhcnJheSgpOwpzd2l0Y2goICRkZWZuWyd0eXBlJ10gKSB7CmNhc2UgMDoKICAgICRmbGRzW10gPSBhcnJheSgkdGhpcy0+TGFuZygnbGVuZ3RoJykuJHRoaXMtPkxhbmcoJ2xlbmd0aGNvbW1lbnQnKSwKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfbGVuZ3RoJywkZGVmblsnbGVuZ3RoJ10sMywzKSk7CiAgICAkZmxkc1tdID0gYXJyYXkoJHRoaXMtPkxhbmcoJ21heGxlbmd0aCcpLAogICAgICAgICAgICAgICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9tYXhsZW5ndGgnLCRkZWZuWydtYXhsZW5ndGgnXSwzLDMpKTsKICAgIGJyZWFrOwpjYXNlIDE6IC8vIGNoZWNrYm94CiAgICAkdmFsID0gKGlzc2V0KCRhdHRyaWJzWydjaGVja2VkJ10pKT8kYXR0cmlic1snY2hlY2tlZCddOjA7CiAgICAkZmxkc1tdID0gYXJyYXkoJHRoaXMtPkxhbmcoJ3Byb21wdF9kZmx0X2NoZWNrZWQnKSwKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsJ2lucHV0X2F0dHJpYl9jaGVja2VkJywxLCR2YWwpKTsKICAgIGJyZWFrOwpjYXNlIDI6CiAgICAkZmxkc1tdID0gYXJyYXkoJHRoaXMtPkxhbmcoJ2xlbmd0aCcpLiR0aGlzLT5MYW5nKCdsZW5ndGhjb21tZW50JyksCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X2xlbmd0aCcsJGRlZm5bJ2xlbmd0aCddLDMsMykpOwogICAgJGZsZHNbXSA9IGFycmF5KCR0aGlzLT5MYW5nKCdtYXhsZW5ndGgnKSwKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfbWF4bGVuZ3RoJywkZGVmblsnbWF4bGVuZ3RoJ10sMywzKSk7CiAgICBicmVhazsKY2FzZSAzOgogICAgJHZhbCA9IChpc3NldCgkYXR0cmlic1snd3lzaXd5ZyddKSk/JGF0dHJpYnNbJ3d5c2l3eWcnXTowOwogICAgJGZsZHNbXSA9IGFycmF5KCR0aGlzLT5MYW5nKCdwcm9wX3RleHRhcmVhX3d5c2l3eWcnKSwKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdpbnB1dF9hdHRyaWJfd3lzaXd5ZycsJzAnKS4KICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsJ2lucHV0X2F0dHJpYl93eXNpd3lnJywnMScsJHZhbCkpOzsKICAgIGJyZWFrOwpjYXNlIDQ6CmNhc2UgNToKICAgICRmbGRzW10gPSBhcnJheSgkdGhpcy0+TGFuZygnc2Vsb3B0aW9ucycpLAogICAgICAgICAgICAgICAgICAgICR0aGlzLT5DcmVhdGVUZXh0QXJlYShmYWxzZSwkaWQsJHNlbG9wdGlvbnMsJ2lucHV0X3NlbG9wdGlvbnMnKSk7CiAgICBicmVhazsKY2FzZSA2OgogICAgLy8gbm90aGluZyBoZXJlCiAgICBicmVhazsKY2FzZSA3OgogICAgJGZsZHNbXSA9IGFycmF5KCR0aGlzLT5MYW5nKCdyYWRpb29wdGlvbnMnKSwKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoZmFsc2UsJGlkLCRzZWxvcHRpb25zLCdpbnB1dF9yYWRpb29wdGlvbnMnKSk7CiAgICBicmVhazsKY2FzZSA4OiAvKiBkYXRlICovCiAgICAkZmxkc1tdID0gYXJyYXkoJHRoaXMtPkxhbmcoJ3N0YXJ0X3llYXInKS4nOicsCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X2F0dHJpYl9zdGFydHllYXInLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlzc2V0KCRhdHRyaWJzWydzdGFydHllYXInXSkpPyRhdHRyaWJzWydzdGFydHllYXInXTonLTUnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNCw0KSk7CiAgICAkZmxkc1tdID0gYXJyYXkoJHRoaXMtPkxhbmcoJ2VuZF95ZWFyJykuJzonLAogICAgICAgICAgICAgICAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9hdHRyaWJfZW5keWVhcicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaXNzZXQoJGF0dHJpYnNbJ2VuZHllYXInXSkpPyRhdHRyaWJzWydlbmR5ZWFyJ106JysxMCcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0LDQpKTsKICAgIGJyZWFrOwp9CiRzbWFydHktPmFzc2lnbignZmllbGRzJywkZmxkcyk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2FkZHByb3AudHBsJyk7CnJldHVybjsKCgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_bulkactions.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCnVzZSBcRnJvbnRFbmRVc2Vyc1x1c2VyX2VkaXRfYXNzaXN0YW50OwppZiggIWlzc2V0KCAkZ0NtcyApICkgZXhpdDsKJHRoaXMtPlNldEN1cnJlbnRUYWIoJ3VzZXJzJyk7CgokZGIgPSBcY2dlX3V0aWxzOjpnZXRfZGIoKTsKdHJ5IHsKICAgICRqb2IgPSB0cmltKCRwYXJhbXNbJ2pvYiddKTsKICAgICRzZWwgPSB1bnNlcmlhbGl6ZShiYXNlNjRfZGVjb2RlKCRwYXJhbXNbJ3VpZHMnXSkpOwogICAgJHNlbCA9IGFycmF5X3NsaWNlKCRzZWwsMCwyNTApOyAvLyBtYXhpbXVtIG9mIDI1MCBpZHMuCiAgICBpZiggIWlzX2FycmF5KCRzZWwpIHx8ICFjb3VudCgkc2VsKSApIHRocm93IG5ldyBcRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnKSk7CgogICAgc3dpdGNoKCAkam9iICkgewogICAgY2FzZSAnZGVsZXRlJzoKICAgICAgICBpZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdyZW1vdmV1c2VycycpICkgdGhyb3cgbmV3IFxFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2FjY2Vzc2RlbmllZCcpKTsKICAgICAgICB0cnkgewogICAgICAgICAgICAkZGItPkJlZ2luVHJhbnMoKTsKICAgICAgICAgICAgZm9yZWFjaCggJHNlbCBhcyAkb25ldWlkICkgewogICAgICAgICAgICAgICAgJHRoaXMtPkRlbGV0ZVVzZXJGdWxsKCAkb25ldWlkICk7CiAgICAgICAgICAgICAgICAkcGFybXMgPSBbICd1aWQnID0+ICRvbmV1aWQgXTsKICAgICAgICAgICAgICAgICR0aGlzLT5fU2VuZE5vdGlmaWNhdGlvbkVtYWlsKCdPbkRlbGV0ZVVzZXInLCRwYXJtcyk7IC8vIGRlcHJlY2F0ZWQKICAgICAgICAgICAgfQogICAgICAgICAgICAkZGItPkNvbW1pdFRyYW5zKCk7CiAgICAgICAgfQogICAgICAgIGNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgICAgICAgICAkdGhpcy0+Um9sbGJhY2tUcmFucygpOwogICAgICAgICAgICB0aHJvdyAkZTsKICAgICAgICB9CiAgICAgICAgYnJlYWs7CgogICAgY2FzZSAnZGlzYWJsZSc6CiAgICBjYXNlICdlbmFibGUnOgogICAgICAgIGlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2VkaXR1c2VycycpICkgdGhyb3cgbmV3IFxFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2FjY2Vzc2RlbmllZCcpKTsKICAgICAgICB0cnkgewogICAgICAgICAgICAkZGItPkJlZ2luVHJhbnMoKTsKICAgICAgICAgICAgZm9yZWFjaCggJHNlbCBhcyAkb25ldWlkICkgewogICAgICAgICAgICAgICAgJHVzZXIgPSBuZXcgdXNlcl9lZGl0X2Fzc2lzdGFudCgkb25ldWlkKTsKICAgICAgICAgICAgICAgICR1c2VyLT5pc19kaXNhYmxlZCA9ICgkam9iID09ICdkaXNhYmxlJykgPyBUUlVFIDogRkFMU0U7CiAgICAgICAgICAgICAgICAkdXNlci0+c2F2ZSgpOwogICAgICAgICAgICAgICAgJHRoaXMtPlNlbmRFdmVudCgnT25VcGRhdGVVc2VyJywgWyAnbmFtZSc9PiR1c2VyLT51c2VybmFtZSwgJ2lkJz0+JHVzZXItPmlkIF0pOwogICAgICAgICAgICB9CiAgICAgICAgICAgICRkYi0+Q29tbWl0VHJhbnMoKTsKICAgICAgICB9CiAgICAgICAgY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgICAgICRkYi0+Um9sbGJhY2tUcmFucygpOwogICAgICAgICAgICB0aHJvdyAkZTsKICAgICAgICB9CiAgICAgICAgYnJlYWs7CgogICAgY2FzZSAnZm9yY2VjaHB3JzoKICAgICAgICBpZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdlZGl0dXNlcnMnKSApIHRocm93IG5ldyBcRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgJGRiLT5CZWdpblRyYW5zKCk7CiAgICAgICAgICAgIGZvcmVhY2goICRzZWwgYXMgJG9uZXVpZCApIHsKICAgICAgICAgICAgICAgICR1c2VyID0gbmV3IHVzZXJfZWRpdF9hc3Npc3RhbnQoJG9uZXVpZCk7CiAgICAgICAgICAgICAgICAkdXNlci0+Zm9yY2VfcGFzc3dvcmRfY2hhbmdlID0gVFJVRTsKICAgICAgICAgICAgICAgICR1c2VyLT5zYXZlKCk7CiAgICAgICAgICAgICAgICAkdGhpcy0+U2VuZEV2ZW50KCdPblVwZGF0ZVVzZXInLCBbICduYW1lJz0+JHVzZXItPnVzZXJuYW1lLCAnaWQnPT4kdXNlci0+aWQgXSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJGRiLT5Db21taXRUcmFucygpOwogICAgICAgIH0KICAgICAgICBjYXRjaCggXEV4Y2VwdGlvbiAkZSApIHsKICAgICAgICAgICAgJGRiLT5Sb2xsYmFja1RyYW5zKCk7CiAgICAgICAgICAgIHRocm93ICRlOwogICAgICAgIH0KICAgICAgICBicmVhazsKCiAgICBjYXNlICdzZXRwYXNzd29yZCc6CiAgICAgICAgLy8gcmVxdWlyZXMgYSBmb3JtCiAgICAgICAgaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnZWRpdHVzZXJzJykgKSB0aHJvdyBuZXcgXEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwogICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkgKSB7CiAgICAgICAgICAgICR0aGlzLT5TZXRNZXNzYWdlKCR0aGlzLT5MYW5nKCdtc2dfY2FuY2VsbGVkJykpOwogICAgICAgICAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigpOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmKCBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAkcGFzc3dkMSA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywncGFzc3dvcmQnKTsKICAgICAgICAgICAgICAgICRwYXNzd2QyID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdyZXBlYXRwYXNzd29yZCcpOwogICAgICAgICAgICAgICAgaWYoICEkdGhpcy0+aXNWYWxpZFBhc3N3b3JkKCAkcGFzc3dkMSApICkgdGhyb3cgbmV3IFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXNzd29yZCcpKTsKICAgICAgICAgICAgICAgIGlmKCAkcGFzc3dkMSAhPSAkcGFzc3dkMiApIHRocm93IG5ldyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9wYXNzd29yZG1pc21hdGNoJykpOwoKICAgICAgICAgICAgICAgICRkYi0+QmVnaW5UcmFucygpOwogICAgICAgICAgICAgICAgZm9yZWFjaCggJHNlbCBhcyAkb25ldWlkICkgewogICAgICAgICAgICAgICAgICAgICR1c2VyID0gbmV3IHVzZXJfZWRpdF9hc3Npc3RhbnQoJG9uZXVpZCk7CiAgICAgICAgICAgICAgICAgICAgJHVzZXItPm5ld19wYXNzd29yZCA9ICRwYXNzd2QxOwogICAgICAgICAgICAgICAgICAgICR1c2VyLT5zYXZlKCk7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPlNlbmRFdmVudCgnT25VcGRhdGVVc2VyJywgWyAnbmFtZSc9PiR1c2VyLT51c2VybmFtZSwgJ2lkJz0+JHVzZXItPmlkIF0pOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJGRiLT5Db21taXRUcmFucygpOwogICAgICAgICAgICAgICAgJHRoaXMtPlNldG1lc3NhZ2UoJHRoaXMtPkxhbmcoJ29wZXJhdGlvbl9jb21wbGV0ZWQnKSk7CiAgICAgICAgICAgICAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigpOyAvLyBkb25lCiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2F0Y2goIFxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgICAgICAgICBlY2hvICR0aGlzLT5TaG93RXJyb3JzKCRlLT5HZXRNZXNzYWdlKCkpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgICAgICAgICAgICAgJGRiLT5Sb2xsYmFja1RyYW5zKCk7CiAgICAgICAgICAgICAgICB0aHJvdyAkZTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAkdHBsID0gJHRoaXMtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCdhZG1pbl9idWxrX3NldHBhc3N3ZC50cGwnKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3VpZHMnLCRwYXJhbXNbJ3VpZHMnXSk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdqb2InLCRqb2IpOwogICAgICAgICR0cGwtPmFzc2lnbignc2VsZWN0ZWQnLCRzZWwpOwogICAgICAgICR0cGwtPmRpc3BsYXkoKTsKICAgICAgICByZXR1cm47CgogICAgY2FzZSAnc2V0ZXhwaXJ5JzoKICAgICAgICAvLyByZXF1aXJlcyBhIGZvcm0KICAgICAgICBpZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdlZGl0dXNlcnMnKSApIHRocm93IG5ldyBcRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7CiAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApIHsKICAgICAgICAgICAgJHRoaXMtPlNldE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ21zZ19jYW5jZWxsZWQnKSk7CiAgICAgICAgICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCk7CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSApIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICRuZXdfZXhwaXJlcyA9IFxjZ2VfcGFyYW06OmdldF9zZXBhcmF0ZWRfZGF0ZSgkcGFyYW1zLCdleHBpcmVzJyk7CgogICAgICAgICAgICAgICAgJGRiLT5CZWdpblRyYW5zKCk7CiAgICAgICAgICAgICAgICBmb3JlYWNoKCAkc2VsIGFzICRvbmV1aWQgKSB7CiAgICAgICAgICAgICAgICAgICAgJHVzZXIgPSBuZXcgdXNlcl9lZGl0X2Fzc2lzdGFudCgkb25ldWlkKTsKICAgICAgICAgICAgICAgICAgICAkdXNlci0+ZXhwaXJlcyA9ICRuZXdfZXhwaXJlczsKICAgICAgICAgICAgICAgICAgICAkdXNlci0+c2F2ZSgpOwogICAgICAgICAgICAgICAgICAgICR0aGlzLT5TZW5kRXZlbnQoJ09uVXBkYXRlVXNlcicsIFsgJ25hbWUnPT4kdXNlci0+dXNlcm5hbWUsICdpZCc9PiR1c2VyLT5pZCBdKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICRkYi0+Q29tbWl0VHJhbnMoKTsKICAgICAgICAgICAgICAgICR0aGlzLT5TZXRtZXNzYWdlKCR0aGlzLT5MYW5nKCdvcGVyYXRpb25fY29tcGxldGVkJykpOwogICAgICAgICAgICAgICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoKTsgLy8gZG9uZQogICAgICAgICAgICB9CiAgICAgICAgICAgIGNhdGNoKCBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uICRlICkgewogICAgICAgICAgICAgICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkZS0+R2V0TWVzc2FnZSgpKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBjYXRjaCggXEV4Y2VwdGlvbiAkZSApIHsKICAgICAgICAgICAgICAgICRkYi0+Um9sbGJhY2tUcmFucygpOwogICAgICAgICAgICAgICAgdGhyb3cgJGU7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgJHRwbCA9ICR0aGlzLT5DcmVhdGVTbWFydHlUZW1wbGF0ZSgnYWRtaW5fYnVsa19zZXRleHBpcnkudHBsJyk7CiAgICAgICAgJHRwbC0+YXNzaWduKCd1aWRzJywkcGFyYW1zWyd1aWRzJ10pOwogICAgICAgICR0cGwtPmFzc2lnbignam9iJywkam9iKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3NlbGVjdGVkJywkc2VsKTsKICAgICAgICAkdHBsLT5kaXNwbGF5KCk7CiAgICAgICAgcmV0dXJuOwoKICAgIGRlZmF1bHQ6CiAgICAgICAgLy8gaW52YWxpZCBqb2IKICAgICAgICB0aHJvdyBuZXcgXEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJykpOwogICAgfQp9CmNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgZGVidWdfZGlzcGxheSgkZSk7IGRpZSgpOwogICAgYXVkaXQoJycsJHRoaXMtPkdldE5hbWUoKSwnRmFpbGVkIGJ1bGsgZGVsZXRlJyk7CiAgICBcY2dlX3V0aWxzOjpsb2dfZXhjZXB0aW9uKCRlKTsKICAgICR0aGlzLT5TZXRFcnJvcigkZS0+R2V0TWVzc2FnZSgpKTsKfQoKJHRoaXMtPlNldG1lc3NhZ2UoJHRoaXMtPkxhbmcoJ29wZXJhdGlvbl9jb21wbGV0ZWQnKSk7CiR0aGlzLT5SZWRpcmVjdFRvVGFiKCk7CgojCiMgRU9GCiMK]]></data>
	</file>
	<file>
	  <filename>/action.admin_deleteprop.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNSBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ2RlbGV0ZXByb3AnICkgKSByZXR1cm47CiR0aGlzLT5TZXRDdXJyZW50VGFiKCdwcm9wZXJ0aWVzJyk7Cgp0cnkgewogICAgJHByb3BuYW1lID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdwcm9wbmFtZScpOwogICAgaWYoICEkcHJvcG5hbWUgKSByZXR1cm47CgogICAgLy8gZ2V0IHRoZSBkZXRhaWxzIGFib3V0IHRoaXMgcHJvcGVydHkKICAgIC8vIG1ha2Ugc3VyZSBpdCdzIG5vdCBhIHJlcXVpcmVkL2hpZGRlbiBwcm9wZXJ0eSBpbiBhbnkgZ3JvdXAgKE9GRiBPUiBPUFRJT05BTCBvbmx5KQogICAgLy8gSUYgSVQgSVMsIHdlIGNhbm5vdCBkZWxldGUgaXQuLi4gc28gd2UganVzdCB0aHJvdyBhbiBleGNlcHRpb24gYW5kIGdldCBvdXRhIGhlcmUKICAgICRjYW5fZGVsZXRlID0gVFJVRTsKICAgICRwcm9wZ3JvdXBzID0gJHRoaXMtPkdldFByb3BlcnR5R3JvdXBSZWxhdGlvbnMoJHByb3BuYW1lKTsKICAgIGlmKCBjb3VudCgkcHJvcGdyb3VwcykgKSB7CiAgICAgICAgZm9yZWFjaCggJHByb3Bncm91cHMgYXMgJHJlYyApIHsKICAgICAgICAgICAgaWYoICRyZWNbJ3JlcXVpcmVkJ10gPiAxICkgewogICAgICAgICAgICAgICAgJGNhbl9kZWxldGUgPSBGQUxTRTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgaWYoICEkY2FuX2RlbGV0ZSApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfZGVsZXRlX3Byb3BkZWZuJykpOwoKICAgIC8vIGhhbmRsZSBzdWJtaXQgJiBjYW5jZWwKICAgIGlmKCBpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkgKSB7CiAgICAgICAgJHRoaXMtPlNldE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ21zZ19jYW5jZWxsZWQnKSk7CiAgICAgICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKICAgIH0KICAgIGlmKCBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgKSB7CiAgICAgICAgJGZldV9jb25maXJtID0gXGNnZV9wYXJhbTo6Z2V0X2Jvb2woJHBhcmFtcywnZmV1X2NvbmZpcm0nKTsKICAgICAgICBpZiggISRmZXVfY29uZmlybSApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfYWN0aW9uX25vdGNvbmZpcm1lZCcpKTsKCiAgICAgICAgLy8gbm93IHJlYWR5IHRvIGRlbGV0ZSB0aGUgcHJvcGVydHkKICAgICAgICAkcmVzdWx0ID0gJHRoaXMtPkRlbGV0ZVByb3BlcnR5RGVmbiggJHByb3BuYW1lICk7CiAgICAgICAgaWYoICEkcmVzdWx0ICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9kZWxldGVwcm9wJykpOwoKICAgICAgICBhdWRpdCgnJywkdGhpcy0+R2V0TmFtZSgpLCdSZW1vdmVkIHByb3BlcnR5ICcuJHByb3BuYW1lKTsKICAgICAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ3Byb3BlcnRpZXMnKTsKICAgIH0KCiAgICAvLyBnaXZlIHZlcnl0aGluZyB0byBzbWFydHkKICAgICR0eXBlcyA9ICR0aGlzLT50eXBlczsKICAgIHVuc2V0KCR0eXBlc1snZGF0YSddKTsKICAgICRmaWVsZHR5cGVzID0gYXJyYXlfZmxpcCgkdGhpcy0+bGFuZ2lmeUtleXMoJHR5cGVzKSk7CgogICAgJGRlZm4gPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZuKCRwcm9wbmFtZSk7CiAgICAkdHBsID0gJHRoaXMtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCdhZG1pbl9kZWxldGVwcm9wLnRwbCcpOwogICAgJHRwbC0+YXNzaWduKCdmaWVsZHR5cGVzJywkZmllbGR0eXBlcyk7CiAgICAkdHBsLT5hc3NpZ24oJ3Byb3BuYW1lJywkcHJvcG5hbWUpOwogICAgJHRwbC0+YXNzaWduKCdkZWZuJywkZGVmbik7CiAgICAkdHBsLT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNHQ3JlYXRlRm9ybVNUYXJ0KCRpZCwnYWRtaW5fZGVsZXRlcHJvcCcsJHJldHVybmlkLGFycmF5KCdwcm9wbmFtZSc9PiRwcm9wbmFtZSkpKTsKICAgICR0cGwtPmFzc2lnbignZm9ybWVuZCcsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiAgICAkdHBsLT5kaXNwbGF5KCk7Cn0KY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICAkdGhpcy0+U2V0RXJyb3IoJGUtPkdldE1lc3NhZ2UoKSk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwp9CgoKCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_doimport.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOwpmb3IgKCRjbnQgPSAwOyAkY250IDwgc2l6ZW9mKCRoYW5kbGVycyk7ICRjbnQrKykgeyBvYl9lbmRfY2xlYW4oKTsgfQppZiggISR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCd1c2VycycpICkgZXhpdDsKJGZpbGUgPSBjZ2VfdXRpbHM6OmdldF9wYXJhbSgkcGFyYW1zLCdmaWxlJyk7CmlmKCAhJGZpbGUgKSBleGl0OwokZmlsZSA9IFRNUF9DQUNIRV9MT0NBVElPTi4iLyRmaWxlIjsKaWYoICFpc19yZWFkYWJsZSgkZmlsZSkgKSBleGl0Owokbm93ID0gdGltZSgpOwoKJGltYWdlRGlyID0gJGdDbXMtPmNvbmZpZ1sndXBsb2Fkc19wYXRoJ10uRElSRUNUT1JZX1NFUEFSQVRPUjsKJGltYWdlRGlyIC49ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywgJ2ZldXNlcnMnKTsKCiR0bXAgPSAkdGhpcy0+Q0dHZXRQcmVmZXJlbmNlKCdpbXBvcnRwcmVmcycpOwppZiggISR0bXAgKSBleGl0OwokaW1wb3J0cHJlZnMgPSB1bnNlcmlhbGl6ZSgkdG1wKTsKCiRwcm9ncmVzc19tYXggPSBmdW5jdGlvbigkdmFsKSB7CiAgICAkdmFsID0gKGludCkkdmFsOwogICAgJHZhbCA9IG1heCgxLCR2YWwpOwogICAgZWNobyAnPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnBhcmVudC5pbXBvcnRfcHJvZ3Jlc3NfbWF4KCcuJHZhbC4nKTs8L3NjcmlwdD4nOwogICAgZmx1c2goKTsKfTsKJHByb2dyZXNzX3NldCA9IGZ1bmN0aW9uKCR2YWwpIHsKICAgICR2YWwgPSAoaW50KSR2YWw7CiAgICAkdmFsID0gbWF4KDEsJHZhbCk7CiAgICBlY2hvICc8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+cGFyZW50LmltcG9ydF9wcm9ncmVzc19zZXQoJy4kdmFsLicpOzwvc2NyaXB0Pic7CiAgICBmbHVzaCgpOwp9OwokaW1wb3J0X3N0YXR1cyA9IGZ1bmN0aW9uKCRtc2cpIHsKICAgICRtc2cgPSB0cmltKCRtc2cpOwogICAgaWYoICEkbXNnICkgcmV0dXJuOwogICAgZWNobyAnPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnBhcmVudC5pbXBvcnRfc3RhdHVzKFwnJy4kbXNnLidcJyk7PC9zY3JpcHQ+JzsKICAgIGZsdXNoKCk7Cn07CiRpbXBvcnRfd2FybmluZyA9IGZ1bmN0aW9uKCRtc2cpIHsKICAgICRtc2cgPSB0cmltKCRtc2cpOwogICAgaWYoICEkbXNnICkgcmV0dXJuOwogICAgZWNobyAnPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnBhcmVudC5pbXBvcnRfd2FybmluZyhcJycuJG1zZy4nXCcpOzwvc2NyaXB0Pic7CiAgICBmbHVzaCgpOwp9OwokaW1wb3J0X2Vycm9yID0gZnVuY3Rpb24oJG1zZykgewogICAgJG1zZyA9IHRyaW0oJG1zZyk7CiAgICBpZiggISRtc2cgKSByZXR1cm47CiAgICBlY2hvICc8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+cGFyZW50LmltcG9ydF9lcnJvcihcJycuJG1zZy4nXCcpOzwvc2NyaXB0Pic7CiAgICBmbHVzaCgpOwp9OwokaW1wb3J0X2Vycm9yX2xpbmUgPSBmdW5jdGlvbigkbGluZW51bSwkbXNnKSB7CiAgICAkbGluZW51bSA9IChpbnQpJGxpbmVudW07CiAgICAkbXNnID0gdHJpbSgkbXNnKTsKICAgIGlmKCAhJG1zZyApIHJldHVybjsKICAgIGVjaG8gJzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5wYXJlbnQuaW1wb3J0X2Vycm9yKFwnJy4kbGluZW51bS4nOiAnLiRtc2cuJ1wnKTs8L3NjcmlwdD4nOwogICAgZmx1c2goKTsKfTsKJGltcG9ydF9maW5pc2ggPSBmdW5jdGlvbigpIHsKICAgIGVjaG8gJzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5wYXJlbnQuaW1wb3J0X2ZpbmlzaCgpOzwvc2NyaXB0Pic7CiAgICBmbHVzaCgpOwp9OwokY2xlYW5fZmllbGRzID0gZnVuY3Rpb24oJHRoZV9hcnJheSkgewogICAgZm9yZWFjaCggJHRoZV9hcnJheSBhcyAmJGVsZW0gKSB7CiAgICAgICAgJGVsZW0gPSB0cmltKHRyaW0oJGVsZW0sJyJcJycpKTsKICAgIH0KICAgIHJldHVybiAkdGhlX2FycmF5Owp9OwokZ2V0X2ZpZWxkID0gZnVuY3Rpb24oJGNvbHVtbnMsJGZpZWxkbWFwLCRmaWVsZCkgewogICAgaWYoICEkZmllbGQgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCdJbnZhbGlkIGZpZWxkIHNwZWNpZmllZCAnLiRmaWVsZCk7CiAgICAkaWR4ID0gYXJyYXlfc2VhcmNoKCRmaWVsZCwkZmllbGRtYXApOwogICAgaWYoICRpZHggPT09IEZBTFNFICkgcmV0dXJuOwogICAgaWYoIGlzc2V0KCRjb2x1bW5zWyRpZHhdKSApIHJldHVybiAkY29sdW1uc1skaWR4XTsKfTsKJGFsbF9jb2x1bW5zX2VtcHR5ID0gZnVuY3Rpb24oJGNvbHVtbnMpIHsKICAgIGZvcmVhY2goICRjb2x1bW5zIGFzICRjb2wgKSB7CiAgICAgICAgaWYoICRjb2wgKSByZXR1cm4gRkFMU0U7CiAgICB9CiAgICByZXR1cm4gVFJVRTsKfTsKCnRyeSB7CiAgICAkZmlsZXNpemUgPSBmaWxlc2l6ZSgkZmlsZSk7CiAgICAkZmggPSBmb3BlbigkZmlsZSwncicpOwogICAgJGxpbmVfbnVtID0gMDsKICAgICRwcm9jZXNzZWRfbGluZXMgPSAwOwogICAgJGhhdmVfaGVhZGVyID0gMDsKICAgICRmaWVsZG1hcCA9IG51bGw7CiAgICAkZ3JvdXBzID0gJHRoaXMtPkdldEdyb3VwTGlzdCgpOwogICAgJHByb3BkZWZucyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgICAkcmVsbnMgPSBhcnJheSgpOwogICAgZm9yZWFjaCggJGdyb3VwcyBhcyAkZ25hbWUgPT4gJGdpZCApIHsKICAgICAgICAkcmVsbnNbJGduYW1lXSA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCRnaWQpOwogICAgfQogICAgJHRtcCA9IG1heCgxLChpbnQpJHRoaXMtPkNHR2V0UHJlZmVyZW5jZSgnZXhwaXJlYWdlX21vbnRocycsMTIwKSk7CiAgICAkZGZsdF9leHBpcnkgPSBzdHJ0b3RpbWUoc3ByaW50ZignKyAlZCBtb250aHMnLCR0bXApKTsKICAgICRkZmx0X3Bhc3N3b3JkID0gJ2NoYW5nZW1lJzsKICAgICRlcnJvcl91c2VycyA9IGFycmF5KCk7CiAgICAkYWxsX3VzZXJzID0gbnVsbDsKICAgIHsKICAgICAgICAkcXVlcnkgPSBuZXcgZmV1X3VzZXJfcXVlcnkoKTsKICAgICAgICAkcnMgPSAkcXVlcnktPmV4ZWN1dGUoKTsKICAgICAgICB3aGlsZSggISRycy0+RU9GICkgewogICAgICAgICAgICAkZmxkcyA9ICRycy0+ZmllbGRzOwogICAgICAgICAgICAkYWxsX3VzZXJzWyRmbGRzWyd1c2VybmFtZSddXSA9ICRmbGRzWydpZCddOwogICAgICAgICAgICAkcnMtPk1vdmVOZXh0KCk7CiAgICAgICAgfQogICAgfQogICAgJHRvdWNoZWRfZ2lkcyA9IGFycmF5KCk7CiAgICAkdG91Y2hlZF91aWRzID0gYXJyYXkoKTsKCiAgICAkcHJvZ3Jlc3NfbWF4KCRmaWxlc2l6ZSk7CiAgICB3aGlsZSggIWZlb2YoJGZoKSApIHsKICAgICAgICBzZXRfdGltZV9saW1pdCgzMCk7CiAgICAgICAgJHByb2dyZXNzX3NldChmdGVsbCgkZmgpKTsKICAgICAgICAkcmVjID0gZmdldGNzdigkZmgpOwogICAgICAgICRsaW5lX251bSsrOwoKICAgICAgICBpZiggIWlzX2FycmF5KCRyZWMpIHx8ICFjb3VudCgkcmVjKSApIGNvbnRpbnVlOwoKICAgICAgICAkcHJvY2Vzc2VkX2xpbmVzKys7CiAgICAgICAgaWYoICRwcm9jZXNzZWRfbGluZXMgPT0gMSApIHsKICAgICAgICAgICAgLy8KICAgICAgICAgICAgLy8gcHJvY2VzcyB0aGUgaGVhZGVyCiAgICAgICAgICAgIC8vCiAgICAgICAgICAgIGlmKCAhc3RhcnRzd2l0aCgkcmVjWzBdLCcjIycpICkgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCcpKTsKICAgICAgICAgICAgJGZpZWxkbWFwID0gJHJlYzsKICAgICAgICAgICAgJGZpZWxkbWFwWzBdID0gc3Vic3RyKCRmaWVsZG1hcFswXSwyKTsKICAgICAgICAgICAgJGZpZWxkbWFwID0gJGNsZWFuX2ZpZWxkcygkZmllbGRtYXApOwogICAgICAgICAgICBpZiggIWluX2FycmF5KCd1c2VybmFtZScsJGZpZWxkbWFwKSApIHRocm93IG5ldyBFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydHJlcXVpcmVkZmllbGQnLCd1c2VybmFtZScpKTsKICAgICAgICAgICAgaWYoICFpbl9hcnJheSgnZ3JvdXBuYW1lJywkZmllbGRtYXApICkgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCcsJ2dyb3VwbmFtZScpKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgfQoKICAgICAgICAvLwogICAgICAgIC8vIHByb2Nlc3NpbmcgYSBkYXRhIGxpbmUKICAgICAgICAvLwogICAgICAgICRjb2x1bW5zID0gJHJlYzsKICAgICAgICAkY29sdW1ucyA9ICRjbGVhbl9maWVsZHMoJGNvbHVtbnMpOwoKICAgICAgICBpZiggJGFsbF9jb2x1bW5zX2VtcHR5KCRjb2x1bW5zKSApIGNvbnRpbnVlOwoKICAgICAgICBpZiggY291bnQoJGNvbHVtbnMpIDwgY291bnQoJGZpZWxkbWFwKSAtIDEgfHwgY291bnQoJGNvbHVtbnMpID4gY291bnQoJGZpZWxkbWFwKSApIHsKICAgICAgICAgICAgJGltcG9ydF9lcnJvcl9saW5lKCRsaW5lX251bSwkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0X2NvbHVtbmNvdW50JykpOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYoIGNvdW50KCRjb2x1bW5zKSA8IGFycmF5X3NlYXJjaCgndXNlcm5hbWUnLCRmaWVsZG1hcCkgKSB7CiAgICAgICAgICAgICRpbXBvcnRfZXJyb3JfbGluZSgkbGluZV9udW0sJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydF9jb2x1bW5jb3VudCcpKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgfQoKICAgICAgICAvLyBnZXQgdGhlIHVzZXIgcmVjLgogICAgICAgICR1c2VyID0gYXJyYXkoJ3VzZXJuYW1lJz0+JycsJ3Bhc3N3b3JkJz0+JycsJ2duYW1lJz0+bnVsbCwnZXhwaXJlcyc9Pm51bGwsJ3Byb3BzJz0+YXJyYXkoKSk7CiAgICAgICAgJHVzZXJbJ3VzZXJuYW1lJ10gPSAkZ2V0X2ZpZWxkKCRjb2x1bW5zLCRmaWVsZG1hcCwndXNlcm5hbWUnKTsKICAgICAgICAkdXNlclsncGFzc3dvcmQnXSA9ICRnZXRfZmllbGQoJGNvbHVtbnMsJGZpZWxkbWFwLCd0eHRwYXNzd29yZCcpOwogICAgICAgICR1c2VyWydjcmVhdGVkYXRlJ10gPSAkZ2V0X2ZpZWxkKCRjb2x1bW5zLCRmaWVsZG1hcCwnY3JlYXRlZGF0ZScsJG5vdyk7CiAgICAgICAgJHVzZXJbJ2V4cGlyZXMnXSA9ICRnZXRfZmllbGQoJGNvbHVtbnMsJGZpZWxkbWFwLCdleHBpcmVzJywkbm93KTsKICAgICAgICAkZ25hbWVzID0gJGdldF9maWVsZCgkY29sdW1ucywkZmllbGRtYXAsJ2dyb3VwbmFtZScpOwogICAgICAgIGlmKCAhJGduYW1lcyApIHsKICAgICAgICAgICAgJGltcG9ydF9lcnJvcl9saW5lKCRsaW5lX251bSwkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0Z3JvdXBuYW1lJywkZ25hbWUpKTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgICRnbmFtZXMgPSAkY2xlYW5fZmllbGRzKGV4cGxvZGUoJywnLCRnbmFtZXMpKTsKICAgICAgICB0cnkgewogICAgICAgICAgICBmb3JlYWNoKCAkZ25hbWVzIGFzICRnbmFtZSApIHsKICAgICAgICAgICAgICAgIGlmKCAhaXNzZXQoJGdyb3Vwc1skZ25hbWVdKSApIHRocm93IG5ldyBFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydGdyb3VwbmFtZScsJGduYW1lKSk7CiAgICAgICAgICAgICAgICBpZiggIWlzc2V0KCRyZWxuc1skZ25hbWVdKSApIHRocm93IG5ldyBFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydGdyb3VwbmFtZScsJGduYW1lKSk7CgogICAgICAgICAgICAgICAgZm9yZWFjaCggJHJlbG5zWyRnbmFtZV0gYXMgJHJlbG4gKSB7CiAgICAgICAgICAgICAgICAgICAgLy8gbWFrZSBzdXJlIHRoZSByZXF1aXJlZCBmaWVsZHMgZm9yIHRoaXMgZ3JvdXAgYXJlIGF2YWlsYWJsZSBpbiB0aGUgZmllbGQgbWFwCiAgICAgICAgICAgICAgICAgICAgaWYoICRyZWxuWydyZXF1aXJlZCddID09IDIgJiYgIWluX2FycmF5KCRyZWxuWyduYW1lJ10sJGZpZWxkbWFwKSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCcsJHJlbG5bJ25hbWUnXSkpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAvLyBhZGQgdGhlIGZpZWxkIHRvIHRoZSB1c2VyIHJlYwogICAgICAgICAgICAgICAgICAgICR0bXAgPSAkZ2V0X2ZpZWxkKCRjb2x1bW5zLCRmaWVsZG1hcCwkcmVsblsnbmFtZSddKTsKICAgICAgICAgICAgICAgICAgICBpZiggJHRtcCApICR1c2VyWydwcm9wcyddWyRyZWxuWyduYW1lJ11dID0gJHRtcDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjYXRjaCggRXhjZXB0aW9uICRlICkgewogICAgICAgICAgICAkaW1wb3J0X2Vycm9yX2xpbmUoJGxpbmVfbnVtLCRlLT5HZXRNZXNzYWdlKCkpOwogICAgICAgICAgICBpZiggJHVzZXJbJ3VzZXJuYW1lJ10gKSAkZXJyb3JfdXNlcnNbXSA9ICR1c2VyWyd1c2VybmFtZSddOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CgogICAgICAgIC8vIHZhbGlkYXRlIHRoZSB1c2VyIHJlYy4KICAgICAgICBpZiggIWNnZV91dGlsczo6Z2V0X3BhcmFtKCR1c2VyLCd1c2VybmFtZScpICkgewogICAgICAgICAgICAkaW1wb3J0X2Vycm9yX2xpbmUoJGxpbmVfbnVtLCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJywndXNlcm5hbWUnKSk7CiAgICAgICAgICAgIGlmKCAkdXNlclsndXNlcm5hbWUnXSApICRlcnJvcl91c2Vyc1tdID0gJHVzZXJbJ3VzZXJuYW1lJ107CiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KCiAgICAgICAgaWYoICFjZ2VfdXRpbHM6OmdldF9wYXJhbSgkdXNlciwnY3JlYXRlZGF0ZScpICkgJHVzZXJbJ2NyZWF0ZWRhdGUnXSA9ICRub3c7CiAgICAgICAgaWYoICFpc19pbnQoJHVzZXJbJ2NyZWF0ZWRhdGUnXSkgKSAkdXNlclsnY3JlYXRlZGF0ZSddID0gc3RydG90aW1lKCR1c2VyWydjcmVhdGVkYXRlJ10pOwogICAgICAgIGlmKCAhaXNfaW50KCR1c2VyWydleHBpcmVzJ10pICkgJHVzZXJbJ2V4cGlyZXMnXSA9IHN0cnRvdGltZSgkdXNlclsnZXhwaXJlcyddKTsKICAgICAgICAvLyB5ZXAsIGFnYWluLgogICAgICAgIGlmKCAhY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHVzZXIsJ2NyZWF0ZWRhdGUnKSApICR1c2VyWydjcmVhdGVkYXRlJ10gPSAkbm93OwogICAgICAgIGlmKCAhY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHVzZXIsJ2V4cGlyZXMnKSApICR1c2VyWydleHBpcmVzJ10gPSAkZGZsdF9leHBpcnk7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZm9yZWFjaCggJGduYW1lcyBhcyAkZ25hbWUgKSB7CiAgICAgICAgICAgICAgICBmb3JlYWNoKCAkcmVsbnNbJGduYW1lXSBhcyAkcmVsbiApIHsKICAgICAgICAgICAgICAgICAgICAkdmFsID0gY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHVzZXJbJ3Byb3BzJ10sJHJlbG5bJ25hbWUnXSk7CiAgICAgICAgICAgICAgICAgICAgaWYoICRyZWxuWydyZXF1aXJlZCddID09IDIgJiYgISR2YWwgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRoaXMgdmFsaWRhdGVzIHRoYXQgYSByZXF1aXJlZCBmaWVsZCBmb3Igb3VyIGRlc3RpbmF0aW9uIGdyb3VwIGlzIGZpbGxlZCBpbgogICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJywkcmVsblsnbmFtZSddKSk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGlmKCAkdmFsICkgewogICAgICAgICAgICAgICAgICAgICAgICAvLyB3ZSBoYXZlIGEgdmFsdWUgZm9yIHRoaXMgcHJvcGVydHkKICAgICAgICAgICAgICAgICAgICAgICAgLy8gaWYgdGhlIHByb3BlcnR5IGlzIGEgZHJvcGRvd24gb3IgbXVsdGlzZWxlY3QsIG1ha2Ugc3VyZSB0aGUgdmFsdWUgaXMgdmFsaWQuCiAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCggJHByb3BkZWZuc1skcmVsblsnbmFtZSddXVsndHlwZSddICkgewogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICR0aGlzOjpGSUVMRFRZUEVfREFURToKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKCBpc19pbnQoJHZhbCkgJiYgJHZhbCA8IDAgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZScsJHJlbG5bJ25hbWUnXSkpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiggc3RydG90aW1lKCR2YWwpIDwgMSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJywkcmVsblsnbmFtZSddKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJHRoaXM6OkZJRUxEVFlQRV9FTUFJTDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKCAhaXNfZW1haWwoJHZhbCkgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJywkcmVsblsnbmFtZSddKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJHRoaXM6OkZJRUxEVFlQRV9JTUFHRToKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGp1c3QgZW5zdXJlIHRoYXQgdGhlIGltYWdlIGV4aXN0cy4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICRmaWxlc3BlYyA9ICRpbWFnZURpci4nLycuJHZhbDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKCAhZmlsZV9leGlzdHMoJGZpbGVzcGVjKSApIHRocm93IG5ldyBFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnLCRyZWxuWyduYW1lJ10pKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAkdGhpczo6RklFTERUWVBFX01VTFRJU0VMRUNUOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgJG9wdHMgPSBhcnJheV9mbGlwKCR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRyZWxuWyduYW1lJ10pKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICR2YWxzID0gJGNsZWFuX2ZpZWxkcyhleHBsb2RlKCcsJywkdmFsKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JlYWNoKCAkdmFscyBhcyAkb25ldmFsICkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKCAhaXNzZXQoJG9wdHNbJG9uZXZhbF0pICkgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZScsJHJlbG5bJ25hbWUnXSkpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICR0aGlzOjpGSUVMRFRZUEVfRFJPUERPV046CiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJHRoaXM6OkZJRUxEVFlQRV9SQURJT0JVVE5TOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgJG9wdHMgPSBhcnJheV9mbGlwKCR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRyZWxuWyduYW1lJ10pKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKCAhaXNzZXQoJG9wdHNbJHZhbF0pICkgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZScsJHJlbG5bJ25hbWUnXSkpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2goIEV4Y2VwdGlvbiAkZSApIHsKICAgICAgICAgICAgJGltcG9ydF9lcnJvcl9saW5lKCRsaW5lX251bSwkZS0+R2V0TWVzc2FnZSgpKTsKICAgICAgICAgICAgaWYoICR1c2VyWyd1c2VybmFtZSddICkgJGVycm9yX3VzZXJzW10gPSAkdXNlclsndXNlcm5hbWUnXTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgfQoKICAgICAgICAvLyBkbyB0aGUgYWRkIG9yIHVwZGF0ZS4KICAgICAgICAkdWlkID0gbnVsbDsKICAgICAgICBpZiggaXNzZXQoJGFsbF91c2Vyc1skdXNlclsndXNlcm5hbWUnXV0pICkgewogICAgICAgICAgICAvLyB1cGRhdGUgdGhlIHVzZXIuCiAgICAgICAgICAgICR1aWQgPSAkYWxsX3VzZXJzWyR1c2VyWyd1c2VybmFtZSddXTsKICAgICAgICAgICAgJHRtcCA9ICR0aGlzLT5TZXRVc2VyKCR1aWQsJHVzZXJbJ3VzZXJuYW1lJ10sJHVzZXJbJ3Bhc3N3b3JkJ10sJHVzZXJbJ2V4cGlyZXMnXSk7CiAgICAgICAgICAgIGlmKCAhaXNfYXJyYXkoJHRtcCkgfHwgJHRtcFswXSA9PT0gRkFMU0UgKSB7CiAgICAgICAgICAgICAgICAkaW1wb3J0X2Vycm9yX2xpbmUoJGxpbmVfbnVtLCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnR1cGRhdGV1c2VyJywkdG1wWzFdKSk7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiggJHVzZXJbJ2NyZWF0ZWRhdGUnXSAmJiAkdXNlclsnY3JlYXRlZGF0ZSddIDwgKCRub3cgLSA5MCkgKSB7CiAgICAgICAgICAgICAgICAkc3FsID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgU0VUIGNyZWF0ZWRhdGUgPSA/IFdIRVJFIGlkID0gPyc7CiAgICAgICAgICAgICAgICAkdG1wID0gdHJpbSgkZGItPkRiVGltZVN0YW1wKCR1c2VyWydjcmVhdGVkYXRlJ10pLCInIik7CiAgICAgICAgICAgICAgICAkZGItPkV4ZWN1dGUoJHNxbCwgWyAkdG1wLCAkdWlkIF0gKTsKICAgICAgICAgICAgfQogICAgICAgICAgICAkZ2lkbGlzdCA9IGFycmF5KCk7CiAgICAgICAgICAgIGZvcmVhY2goICRnbmFtZXMgYXMgJGduYW1lICkgewogICAgICAgICAgICAgICAgJGdpZGxpc3RbXSA9ICRncm91cHNbJGduYW1lXTsKICAgICAgICAgICAgICAgIGlmKCAhaW5fYXJyYXkoJGdyb3Vwc1skZ25hbWVdLCR0b3VjaGVkX2dpZHMpICkgJHRvdWNoZWRfZ2lkc1tdID0gJGdyb3Vwc1skZ25hbWVdOwogICAgICAgICAgICB9CiAgICAgICAgICAgICR0aGlzLT5TZXRVc2VyR3JvdXBzKCR1aWQsJGdpZGxpc3QpOwogICAgICAgICAgICAkdGhpcy0+U2V0VXNlclByb3BlcnRpZXMoJHVpZCwkdXNlclsncHJvcHMnXSk7CiAgICAgICAgICAgICRpbXBvcnRfc3RhdHVzKCd1cGRhdGVkIHVzZXIgJy4kdXNlclsndXNlcm5hbWUnXSk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAvLyBpbnNlcnQgdGhlIHVzZXIKICAgICAgICAgICAgaWYoICFjZ2VfdXRpbHM6OmdldF9wYXJhbSgkdXNlciwncGFzc3dvcmQnKSApICR1c2VyWydwYXNzd29yZCddID0gJGRmbHRfcGFzc3dvcmQ7CiAgICAgICAgICAgIGlmKCAhY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHVzZXIsJ2V4cGlyZXMnKSApICR1c2VyWydleHBpcmVzJ10gPSAkZGZsdF9leHBpcnk7CiAgICAgICAgICAgICR0bXAgPSAkdGhpcy0+QWRkVXNlcigkdXNlclsndXNlcm5hbWUnXSwkdXNlclsncGFzc3dvcmQnXSwkdXNlclsnZXhwaXJlcyddKTsKICAgICAgICAgICAgaWYoICFpc19hcnJheSgkdG1wKSB8fCAkdG1wWzBdID09PSBGQUxTRSApIHsKICAgICAgICAgICAgICAgICRpbXBvcnRfZXJyb3JfbGluZSgkbGluZV9udW0sJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydGluc2VydHVzZXInLCR0bXBbMV0pKTsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmKCAkdXNlclsnY3JlYXRlZGF0ZSddICYmICR1c2VyWydjcmVhdGVkYXRlJ10gPCAoJG5vdyAtIDkwKSApIHsKICAgICAgICAgICAgICAgICRzcWwgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyBTRVQgY3JlYXRlZGF0ZSA9ID8gV0hFUkUgaWQgPSA/JzsKICAgICAgICAgICAgICAgICR0bXAgPSB0cmltKCRkYi0+RGJUaW1lU3RhbXAoJHVzZXJbJ2NyZWF0ZWRhdGUnXSksIiciKTsKICAgICAgICAgICAgICAgICRkYi0+RXhlY3V0ZSgkc3FsLCBbICR0bXAsICR1aWQgXSApOwogICAgICAgICAgICB9CiAgICAgICAgICAgICR1aWQgPSAkdG1wWzFdOwogICAgICAgICAgICAkZ2lkbGlzdCA9IGFycmF5KCk7CiAgICAgICAgICAgIGZvcmVhY2goICRnbmFtZXMgYXMgJGduYW1lICkgewogICAgICAgICAgICAgICAgJGdpZGxpc3RbXSA9ICRncm91cHNbJGduYW1lXTsKICAgICAgICAgICAgfQogICAgICAgICAgICAkdGhpcy0+U2V0VXNlckdyb3VwcygkdWlkLCRnaWRsaXN0KTsKICAgICAgICAgICAgJHRoaXMtPlNldFVzZXJQcm9wZXJ0aWVzKCR1aWQsJHVzZXJbJ3Byb3BzJ10pOwogICAgICAgICAgICAkaW1wb3J0X3N0YXR1cygnY3JlYXRlZCB1c2VyICcuJHVzZXJbJ3VzZXJuYW1lJ10pOwogICAgICAgICAgICAvLyB0b2RvOiBzdGF0dXMgbXNnCiAgICAgICAgfQoKICAgICAgICAvLyBzZXQgcHJvZ3Jlc3MKICAgICAgICAkcHJvZ3Jlc3Nfc2V0KGZ0ZWxsKCRmaCkpOwoKICAgICAgICAvLyBzZXQgdGhlIHVzZXIKICAgICAgICBpZiggJHVpZCAmJiAhaW5fYXJyYXkoJHVpZCwkdG91Y2hlZF91aWRzKSApICR0b3VjaGVkX3VpZHNbXSA9ICR1aWQ7CgogICAgICAgIC8vIGRlbGV0ZSB0aGUgdXNlciBmcm9tIHRoZSBjb21wbGV0ZSB1c2VyIGxpc3QuCiAgICAgICAgdW5zZXQoJGFsbF91c2Vyc1skdXNlclsndXNlcm5hbWUnXV0pOwoKICAgIH0gLy8gZmVvZgoKICAgIC8vIGRlbGV0ZSB1c2VycyB3aG8gYXJlIG1lbWJlciBvZiB0aGUgaW1wb3J0ZWQgZ3JvdXAsIChhc3N1bWluZyB3ZSBvbmx5IGxpc3RlZCBvbmUgZ3JvdXApIGJ1dAogICAgLy8gbm90IGxpc3RlZCBpbiB0aGlzIGxpc3QuCiAgICAkdG91Y2hlZF91aWRzID0gYXJyYXlfdW5pcXVlKCR0b3VjaGVkX3VpZHMpOwogICAgaWYoIGNvdW50KCR0b3VjaGVkX2dpZHMpID09IDEgJiYgY291bnQoJHRvdWNoZWRfdWlkcykgJiYgJGltcG9ydHByZWZzWydkZWxldGVfdXNlcnMnXSApIHsKICAgICAgICAvLyBnb3R0YSBnZXQgdGhlIHVpZHMgb2YgYWxsIG9mIHRoZSB1c2VycyBpbiB0aGlzIGdyb3VwLgogICAgICAgICRxdWVyeSA9IG5ldyBmZXVfdXNlcl9xdWVyeSgpOwogICAgICAgICRxdWVyeS0+YWRkX2FuZF9vcHQoZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9HUk9VUElELCR0b3VjaGVkX2dpZHNbMF0pOwogICAgICAgICRycyA9ICRxdWVyeS0+ZXhlY3V0ZSgpOwogICAgICAgICRkZWxfdWlkcyA9IGFycmF5KCk7CiAgICAgICAgd2hpbGUoICEkcnMtPkVPRigpICkgewogICAgICAgICAgICBpZiggIWluX2FycmF5KCRycy0+ZmllbGRzWydpZCddLCR0b3VjaGVkX3VpZHMpICYmICFpbl9hcnJheSgkcnMtPmZpZWxkc1snaWQnXSwkZGVsX3VpZHMpICkgewogICAgICAgICAgICAgICAgJGRlbF91aWRzW10gPSAkcnMtPmZpZWxkc1snaWQnXTsKICAgICAgICAgICAgfQogICAgICAgICAgICAkcnMtPk1vdmVOZXh0KCk7CiAgICAgICAgfQoKICAgICAgICAvLyBnb3R0YSBkZWxldGUgcmVtYWluaW5nIHVzZXJzCiAgICAgICAgaWYoIGNvdW50KCRkZWxfdWlkcykgKSB7CiAgICAgICAgICAgICRwcm9ncmVzc19tYXgoY291bnQoJGRlbF91aWRzKSk7CiAgICAgICAgICAgICRuID0gMDsKICAgICAgICAgICAgZm9yZWFjaCggJGRlbF91aWRzIGFzICR1aWQgKSB7CiAgICAgICAgICAgICAgICBzZXRfdGltZV9saW1pdCgyMCk7CiAgICAgICAgICAgICAgICBpZiggJHVpZCA+IDAgKSB7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkRlbGV0ZVVzZXJGdWxsKCAkdWlkICk7CiAgICAgICAgICAgICAgICAgICAgJGltcG9ydF9zdGF0dXMoJHRoaXMtPkxhbmcoJ2ltcG9ydF9kZWxldGVkdXNlcicsJHVpZCkpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJG4rKzsKICAgICAgICAgICAgICAgICRwcm9ncmVzc19zZXQoJG4pOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgICRpbXBvcnRfZmluaXNoKCk7Cn0KY2F0Y2goIEV4Y2VwdGlvbiAkZSApIHsKICAgICRpbXBvcnRfZXJyb3IoJGUtPkdldE1lc3NhZ2UoKSk7Cn0KZXhpdDsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_edituser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNiBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ3VzZXJzJyApICkgcmV0dXJuOwoKLy8gdGhpcyBhY3Rpb24gaGFuZGxlcyB0aGUgZmlyc3QgcG9ydGlvbiBvZiB0aGUgYWRkL2VkaXQgdXNlciB3aXphcmQuCgokZGVmYXVsdF9ncm91cCA9IChpbnQpICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkZWZhdWx0X2dyb3VwJyk7Cgp0cnkgewogICAgJHRoaXMtPlNldEN1cnJlbnRUYWIoJ3VzZXJzJyk7CiAgICBpZiggaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pICkgewogICAgICAgIC8vIHdlJ3JlIGNhbmNlbGxpbmcuCiAgICAgICAgJHRoaXMtPlNldE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ21zZ19jYW5jZWxsZWQnKSk7CiAgICAgICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoKTsKICAgIH0KCiAgICAkdXNlcl9pZCA9IFxjZ2VfcGFyYW06OmdldF9pbnQoJHBhcmFtcywndXNlcl9pZCcpOwogICAgJHVzZXIgPSBcRnJvbnRFbmRVc2Vyc1x1c2VyX2VkaXRfYXNzaXN0YW50OjpyZXRyaWV2ZSgpOwogICAgaWYoICR1c2VyICkgewogICAgICAgIC8vIHdlIGFyZSBoZXJlIGZyb20gdGhlICdiYWNrJyBvcGVyYXRpb24uIG9yIGFuIGVycm9yIGluIHN0ZXAyLgogICAgICAgIGlmKCAkdXNlci0+aWQgIT0gJHVzZXJfaWQgKSAkdXNlciA9IG51bGw7CiAgICB9CiAgICBpZiggISR1c2VyICkgJHVzZXIgPSBuZXcgXEZyb250RW5kVXNlcnNcdXNlcl9lZGl0X2Fzc2lzdGFudCgkdXNlcl9pZCk7CgogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSApIHsKICAgICAgICB0cnkgewogICAgICAgICAgICAvLyBmaWxsIHRoZSBkYXRhIGZyb20gdGhlIGZvcm0KICAgICAgICAgICAgJHVzZXItPm5ld191c2VybmFtZSA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywndXNlcm5hbWUnKTsKICAgICAgICAgICAgJHVzZXItPm5ld19wYXNzd29yZCA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywncGFzc3dvcmQnKTsKICAgICAgICAgICAgJHVzZXItPnJlcGVhdF9wYXNzd29yZCA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywncmVwZWF0cGFzc3dvcmQnKTsKICAgICAgICAgICAgJHVzZXItPmV4cGlyZXMgPSBcY2dlX3BhcmFtOjpnZXRfc2VwYXJhdGVkX2RhdGUoJHBhcmFtcywnZXhwaXJlcycpOwogICAgICAgICAgICAkdXNlci0+aXNfZGlzYWJsZWQgPSBcY2dlX3BhcmFtOjpnZXRfYm9vbCgkcGFyYW1zLCdkaXNhYmxlZCcpOwogICAgICAgICAgICAkdXNlci0+Zm9yY2VfY2hhbmdlX3NldHRpbmdzID0gXGNnZV9wYXJhbTo6Z2V0X2Jvb2woJHBhcmFtcywnZm9yY2VfY2hzZXR0aW5ncycpOwogICAgICAgICAgICAkdXNlci0+Zm9yY2VfcGFzc3dvcmRfY2hhbmdlID0gXGNnZV9wYXJhbTo6Z2V0X2Jvb2woJHBhcmFtcywnZm9yY2VfbmV3cHcnKTsKICAgICAgICAgICAgJHVzZXItPm11c3RfdmFsaWRhdGUgPSBcY2dlX3BhcmFtOjpnZXRfYm9vbCgkcGFyYW1zLCdtdXN0X3ZhbGlkYXRlJyk7CiAgICAgICAgICAgICR1c2VyLT5zZXRfZ3JvdXBzKFxjZ2VfdXRpbHM6OmdldF9wYXJhbSgkcGFyYW1zLCdtZW1iZXJvZicpKTsKCiAgICAgICAgICAgIC8vIHZhbGlkYXRlIHRoZSBkYXRhCiAgICAgICAgICAgICR1c2VyLT52YWxpZGF0ZSgpOwoKICAgICAgICAgICAgLy8gc2F2ZSB0aGUgZGF0YSAodGVtcG9yYXJpbHkpCiAgICAgICAgICAgICR1c2VyLT5zdG9yZSgpOwoKICAgICAgICAgICAgLy8gcmVkaXJlY3QgdG8gdGhlIG5leHQgc3RlcC4KICAgICAgICAgICAgJHRoaXMtPlJlZGlyZWN0KCRpZCwnYWRtaW5fZWRpdHVzZXIyJywkcmV0dXJuaWQpOwogICAgICAgIH0KICAgICAgICBjYXRjaCggXEV4Y2VwdGlvbiAkZSApIHsKICAgICAgICAgICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkZS0+R2V0TWVzc2FnZSgpKTsKICAgICAgICB9CiAgICB9CgogICAgJGF1dGhfY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CiAgICAkdHBsID0gJHRoaXMtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCdhZG1pbl9lZGl0dXNlci50cGwnKTsKICAgICR0cGwtPmFzc2lnbignZm9ybXN0YXJ0JywkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoJGlkLCdhZG1pbl9lZGl0dXNlcicsJHJldHVybmlkLFsgJ3VzZXJfaWQnID0+ICR1c2VyX2lkIF0pKTsKICAgICR0cGwtPmFzc2lnbignZm9ybWVuZCcsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiAgICAkdHBsLT5hc3NpZ24oJ3VzZXInLCR1c2VyKTsKICAgICR0cGwtPmFzc2lnbigncHJvbXB0X3VzZXJuYW1lJywkYXV0aF9jb25zdW1lci0+Z2V0X3VzZXJuYW1lX3Byb21wdCgpKTsKICAgICR0cGwtPmFzc2lnbigndW5mbGRsZW4nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZWZsZGxlbmd0aCcpKTsKICAgICR0cGwtPmFzc2lnbignbWF4X3VuZmxkbGVuJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWF4X3VzZXJuYW1lbGVuZ3RoJykpOwogICAgJHRwbC0+YXNzaWduKCdwd2ZsZGxlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJykpOwogICAgJHRwbC0+YXNzaWduKCdtYXhfcHdmbGRsZW4nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKSk7CiAgICAkdHBsLT5hc3NpZ24oJ3JlcXVpcmVfb25lZ3JvdXAnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlX29uZWdyb3VwJykpOwoKICAgICRncm91cHMgPSBudWxsOwogICAgaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdzdHJpY3RfZWRpdGdyb3VwcycpICkgJGdyb3VwcyA9ICR0aGlzLT5HZXRHcm91cExpc3RGdWxsKCk7CiAgICBpZiggJGRlZmF1bHRfZ3JvdXAgPCAxICYmIGNvdW50KCRncm91cHMpICkgewogICAgICAgICRnaWRzID0gYXJyYXlfa2V5cygkZ3JvdXBzKTsKICAgICAgICAkZGVmYXVsdF9ncm91cCA9ICRnaWRzWzBdOwogICAgfQogICAgJHRwbC0+YXNzaWduKCdkZWZhdWx0X2dyb3VwJywkZGVmYXVsdF9ncm91cCk7CiAgICAkdHBsLT5hc3NpZ24oJ2dyb3VwcycsJGdyb3Vwcyk7CgogICAgJHRwbC0+ZGlzcGxheSgpOwp9CmNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgJHRoaXMtPlNldEVycm9yKCRlLT5HZXRNZXNzYWdlKCkpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoKTsKfQo=]]></data>
	</file>
	<file>
	  <filename>/action.admin_edituser2.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKbmFtZXNwYWNlIEZyb250RW5kVXNlcnM7CgppZiggIWlzc2V0KCRnQ21zKSApIGV4aXQ7CmlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoICd1c2VycycgKSApIHJldHVybjsKCiR1c2VyX2lkID0gJHVzZXIgPSBudWxsOwp0cnkgewogICAgJHRoaXMtPlNldEN1cnJlbnRUYWIoJ3VzZXJzJyk7CiAgICBpZiggaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pICkgewogICAgICAgIC8vIGNsZWFyIGFueXRoaW5nIGluIHRoZSBzZXNzaW9uLCBidXQgZG9uJ3QgbmVlZCB0aGUgZGF0YS4KICAgICAgICBcRnJvbnRFbmRVc2Vyc1x1c2VyX2VkaXRfYXNzaXN0YW50OjpyZXRyaWV2ZSgpOwogICAgICAgICR0aGlzLT5TZXRNZXNzYWdlKCR0aGlzLT5MYW5nKCdtc2dfY2FuY2VsbGVkJykpOwogICAgICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCk7CiAgICB9CgogICAgJHVzZXIgPSBcRnJvbnRFbmRVc2Vyc1x1c2VyX2VkaXRfYXNzaXN0YW50OjpyZXRyaWV2ZSgpOwogICAgaWYoICEkdXNlciApIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJ0NvdWxkIG5vdCByZXN0b3JlIHVzZXIgZWRpdCBpbmZvIGZyb20gc2Vzc2lvbicpOwogICAgJHVzZXJfaWQgPSAkdXNlci0+aWQ7CiAgICBpZiggaXNzZXQoJHBhcmFtc1snYmFjayddKSApIHsKICAgICAgICAkdXNlci0+c3RvcmUoKTsKICAgICAgICAkdGhpcy0+UmVkaXJlY3QoJGlkLCdhZG1pbl9lZGl0dXNlcicsJHJldHVybmlkLCBbICd1c2VyX2lkJyA9PiAkdXNlcl9pZCBdICk7CiAgICB9CgogICAgJGFsbGRlZm5zID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKICAgICRmaWVsZHMgPSBbXTsKICAgICRwcm9wZXJ0aWVzID0gXGZldV91dGlsczo6Z2V0X3Byb3BlcnRpZXNfZm9yX2dyb3VwcygkdXNlci0+Z2V0X2dyb3VwcygpKTsKICAgIGlmKCAhY291bnQoJHByb3BlcnRpZXMpICkgewogICAgICAgIC8vIHRoZXJlIGFyZSBubyBwcm9wZXJ0aWVzIHRvIHRoaW5rIG9mLgogICAgICAgIC8vIHNpbXVsYXRlIHN1Ym1pc3Npb24uCiAgICAgICAgJHBhcmFtc1snc3VibWl0J10gPSAxOwogICAgICAgIC8vdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9wcm9wZXJ0aWVzJykpOwogICAgfSBlbHNlIHsKICAgICAgICBmb3JlYWNoKCAkcHJvcGVydGllcyBhcyAkcHJvcCApIHsKICAgICAgICAgICAgJHByb3BfbmFtZSA9ICRwcm9wWyduYW1lJ107CiAgICAgICAgICAgIGlmKCAhaXNzZXQoJGFsbGRlZm5zWyRwcm9wX25hbWVdKSApIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJ0RlZmluaXRpb24gZm9yIHByb3BlcnR5ICcuJHByb3BfbmFtZS4nIG5vdCBmb3VuZCcpOwogICAgICAgICAgICBpZiggJGFsbGRlZm5zWyRwcm9wX25hbWVdWydlbmNyeXB0J10gJiYgJHVzZXJfaWQgPiAwICkgY29udGludWU7ICAvLyBjYW5ub3QgZWRpdCBlbmNyeXB0ZWQgcHJvcGVydGllcy4KICAgICAgICAgICAgJGZpZWxkc1skcHJvcF9uYW1lXSA9IG5ldyBwcm9wZXJ0eV9lZGl0b3JfZGVmbigkYWxsZGVmbnNbJHByb3BfbmFtZV0sJHByb3AsJHVzZXIpOwogICAgICAgIH0KICAgIH0KCiAgICBpZiggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkgewogICAgICAgIC8qIGhhbmRsZSBzdWJtaXNzaW9uICovCiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgLy8gbm90ZSwgd2UgdXNlIHRoZSBzZXQgdmFsdWUgbWV0aG9kIG9uIHRoZSBmaWVsZC4uLiBpdCB3aWxsIGFjdHVhbGx5IG1vZGlmeSB0aGUgdXNlcgogICAgICAgICAgICAvLyBhbmQgc2V0IHRoZSBkYXRhLgogICAgICAgICAgICBmb3JlYWNoKCAkZmllbGRzIGFzICRwcm9wX25hbWUgPT4gJGZpZWxkICkgewogICAgICAgICAgICAgICAgJGtleSA9ICdwcm9wXycuJHByb3BfbmFtZTsKICAgICAgICAgICAgICAgICRrZXkyID0gJ3Byb3BkZWxfJy4kcHJvcF9uYW1lOwogICAgICAgICAgICAgICAgJHZhbCA9IFxjZ2VfdXRpbHM6OmdldF9wYXJhbSgkcGFyYW1zLCRrZXkpOwogICAgICAgICAgICAgICAgaWYoICRmaWVsZC0+dHlwZSA9PSA4ICkgJHZhbCA9IFxjZ2VfcGFyYW06OmdldF9zZXBhcmF0ZWRfZGF0ZSgkcGFyYW1zLCRrZXkpOwogICAgICAgICAgICAgICAgaWYoICRmaWVsZC0+dHlwZSA9PSA2ICkgewogICAgICAgICAgICAgICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWyRrZXkyXSkgKSAkZmllbGQtPmNsZWFyX3ZhbHVlKCk7CiAgICAgICAgICAgICAgICAgICAgJHZhbCA9ICRpZC4ka2V5OwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJGZpZWxkLT5zZXRfdmFsdWUoJHZhbCk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIC8vIHBhc3MgMiAuLiB2YWxpZGF0ZSB0aGUgaW5wdXQgKHJlcXVpcmVkIGZpZWxkcywgdXBsb2FkIHR5cGVzIGFuZCBzby1vbikKICAgICAgICAgICAgZm9yZWFjaCggJGZpZWxkcyBhcyAkcHJvcF9uYW1lID0+ICRmaWVsZCApIHsKICAgICAgICAgICAgICAgICRmaWVsZC0+dmFsaWRhdGUoKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgLy8gcGFzcyAyLjEgLi4uIGVuc3VyZSB0aGF0IGlmIG11c3RfdmFsaWRhdGUgaXMgb24sIHRoYXQgd2UgaGF2ZSBhbiBlbWFpbCBhZGRyZXNzCiAgICAgICAgICAgIC8vIGZvciB0aGlzIHVzZXIuCiAgICAgICAgICAgIGlmKCAkdXNlci0+bXVzdF92YWxpZGF0ZSAmJiAhJHVzZXItPmNhbl92YWxpZGF0ZSgpICkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl92YWxpZGF0ZV9pbnN1ZmZpY2llbnRpbmZvJykpOwogICAgICAgICAgICB9CgogICAgICAgICAgICAkaXNfYWRkID0gKCR1c2VyLT5pZCA8IDEpID8gVFJVRSA6IEZBTFNFOwogICAgICAgICAgICAkdXNlci0+c2F2ZSgpOwoKICAgICAgICAgICAgLy8gcGFzcyAzIC4uIGRvIHBvc3QgcHJvb2Nlc3NpbmcuCiAgICAgICAgICAgIGZvcmVhY2goICRmaWVsZHMgYXMgJHByb3BfbmFtZSA9PiAkZmllbGQgKSB7CiAgICAgICAgICAgICAgICAkZmllbGQtPnBvc3Rwcm9jZXNzKCR1c2VyKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgLy8gYWxsIGRvbmUuLi4ganVzdCBnb3R0YSBkbyBzb21lIG5vdGlmaWNhdGlvbnMgYW5kIGV2ZW50cy4KICAgICAgICAgICAgJGV2dF9wYXJtcyA9IFsgJ25hbWUnID0+ICR1c2VyLT51c2VybmFtZSwgJ2lkJyA9PiAkdXNlci0+aWQgXTsKICAgICAgICAgICAgaWYoICRpc19hZGQgKSB7CiAgICAgICAgICAgICAgICBhdWRpdCgnJywkdGhpcy0+R2V0TmFtZSgpLCdBZGRlZCB1c2VyICcuJHVzZXItPnVzZXJuYW1lKTsKICAgICAgICAgICAgICAgICR0aGlzLT5hZGRfaGlzdG9yeSgkdXNlci0+aWQsJ2FkbWluIGFkZCB1c2VyJyk7CiAgICAgICAgICAgICAgICAkdGhpcy0+U2VuZEV2ZW50KCdPbkNyZWF0ZVVzZXInLCAkZXZ0X3Bhcm1zICk7CiAgICAgICAgICAgICAgICAkdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgnT25DcmVhdGVVc2VyJywgJGV2dF9wYXJtcyApOwogICAgICAgICAgICAgICAgJHRoaXMtPlNldE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ21zZ191c2VyYWRkZWQnKSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAkdGhpcy0+YWRkX2hpc3RvcnkoJHVzZXJfaWQsJ2FkbWluIGNoYW5nZSBzZXR0aW5ncycpOwogICAgICAgICAgICAgICAgYXVkaXQoJHVzZXItPmlkLCR0aGlzLT5HZXROYW1lKCksJ01vZGlmaWVkIHVzZXIgJy4kdXNlci0+dXNlcm5hbWUpOwoKICAgICAgICAgICAgICAgICR0aGlzLT5TZW5kRXZlbnQoJ09uVXBkYXRlVXNlcicsICRldnRfcGFybXMgKTsKICAgICAgICAgICAgICAgICR0aGlzLT5fU2VuZE5vdGlmaWNhdGlvbkVtYWlsKCdPblVwZGF0ZVVzZXInLCAkZXZ0X3Bhcm1zICk7CiAgICAgICAgICAgICAgICAkdGhpcy0+U2V0TWVzc2FnZSgkdGhpcy0+TGFuZygnbXNnX3VzZXJtb2RpZmllZCcpKTsKCiAgICAgICAgICAgICAgICBpZiggJHVzZXItPm11c3RfdmFsaWRhdGUgKSB7CiAgICAgICAgICAgICAgICAgICAgJHRtcGNvZGUgPSAkdGhpcy0+R2V0VXNlclRlbXBDb2RlKCAkdXNlci0+aWQgKTsKICAgICAgICAgICAgICAgICAgICBpZiggISR0bXBjb2RlICkgewogICAgICAgICAgICAgICAgICAgICAgICAkZ2VuZXJhdG9yID0gbmV3IFxGcm9udEVuZFVzZXJzXGVtYWlsX3ZlcmlmeV9hc3Npc3RhbnQoJHVzZXItPmlkKTsKICAgICAgICAgICAgICAgICAgICAgICAgJGdlbmVyYXRvci0+c2VuZCgpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigpOwogICAgICAgIH0KICAgICAgICBjYXRjaCggXEV4Y2VwdGlvbiAkZSApIHsKICAgICAgICAgICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkZS0+R2V0TWVzc2FnZSgpKTsKICAgICAgICB9CiAgICB9CgogICAgJHRwbCA9ICR0aGlzLT5DcmVhdGVTbWFydHlUZW1wbGF0ZSgnYWRtaW5fZWRpdHVzZXIyLnRwbCcpOwogICAgJHRwbC0+YXNzaWduKCdyZXF1aXJlZF9maWVsZF9jb2xvcicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJywnYmx1ZScpKTsKICAgICR0cGwtPmFzc2lnbignaGlkZGVuX2ZpZWxkX2NvbG9yJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaGlkZGVuX2ZpZWxkX2NvbG9yJywnYmx1ZScpKTsKICAgICR0cGwtPmFzc2lnbigncmVxdWlyZWRfZmllbGRfbWFya2VyJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVxdXJpZWRfZmllbGRfbWFya2VyJywnKicpKTsKICAgICR0cGwtPmFzc2lnbignaGlkZGVuX2ZpZWxkX21hcmtlcicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2hpZGRlbl9maWVsZF9tYXJrZXInLCchIScpKTsKICAgICR0cGwtPmFzc2lnbignZmllbGRzJywkZmllbGRzKTsKICAgICR0cGwtPmFzc2lnbigndXNlcicsJHVzZXIpOwogICAgJHRwbC0+ZGlzcGxheSgpOwogICAgJHVzZXItPnN0b3JlKCk7Cn0KY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICBpZiggJHVzZXIgKSAkdXNlci0+c3RvcmUoKTsKICAgICR0aGlzLT5TZXRFcnJvcigkZS0+R2V0TWVzc2FnZSgpKTsKICAgICR0aGlzLT5SZWRpcmVjdCgkaWQsJ2FkbWluX2VkaXR1c2VyJywkcmV0dXJuaWQsIFsgJ3VzZXJfaWQnID0+ICR1c2VyX2lkIF0gKTsKfQo=]]></data>
	</file>
	<file>
	  <filename>/action.admin_enable_user.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNSBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhZGVmaW5lZCgnQ01TX1ZFUlNJT04nKSApIGV4aXQ7CmlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2VkaXR1c2VycycpICkgZXhpdDsKCiR1aWQgPSAoaW50KSBjZ2VfdXRpbHM6OmdldF9wYXJhbSgkcGFyYW1zLCd1aWQnKTsKJHN0YXRlID0gKGludCkgY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHBhcmFtcywnc3RhdGUnLDApOwokc3RhdGUgPSAhJHN0YXRlOwokdGhpcy0+U2V0Q3VycmVudFRhYigndXNlcnMnKTsKCnRyeSB7CiAgICAkdGhpcy0+U2V0VXNlckRpc2FibGVkKCR1aWQsJHN0YXRlKTsKICAgICR0aGlzLT5TZXRNZXNzYWdlKCR0aGlzLT5MYW5nKCdtc2dfdXNlcl9zdGF0ZV9jaGFuZ2VkJykpOwp9CmNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgJHRoaXMtPlNldEVycm9yKCRlLT5HZXRNZXNzYWdlKCkpOwp9CiR0aGlzLT5SZWRpcmVjdFRvVGFiKCk7]]></data>
	</file>
	<file>
	  <filename>/action.admin_exportgroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoICRnQ21zICkgKSByZXR1cm47CmlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2VkaXRncm91cHMnKSApIHJldHVybjsKCmlmKCAhaXNzZXQoJHBhcmFtc1snZ3JvdXBfaWQnXSkgKSByZXR1cm47CgokZ3JvdXBpZCA9ICRwYXJhbXNbJ2dyb3VwX2lkJ107CgokdGhpcy0+U2V0Q3VycmVudFRhYignZ3JvdXBzJyk7CmlmKCAhZmV1X3V0aWxzOjp1c2luZ19zdGRfY29uc3VtZXIoKSApIHsKICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX25vdHN1cHBvcnRlZCcpKTsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwp9CgokZ3JwX2luZm8gPSAkdGhpcy0+R2V0R3JvdXBJbmZvKCAkZ3JvdXBpZCApOwppZiggIWlzX2FycmF5KCAkZ3JwX2luZm8gKSB8fCAhaXNzZXQoJGdycF9pbmZvWydpZCddKSApIHsKICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRncm91cGlkJywkZ3JvdXBpZCkpOwogICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7CiAgcmV0dXJuOwp9CgokZ3JwX3Byb3BfcmVscyA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JvdXBpZCApOwppZiggIWlzX2FycmF5KCAkZ3JwX3Byb3BfcmVscyApIHx8ICFjb3VudCgkZ3JwX3Byb3BfcmVscykgKSB7CiAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9ub3JlbGF0aW9ucycpKTsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwogIHJldHVybjsKfQoKJGZpbGVuYW1lID0gJGdycF9pbmZvWydncm91cG5hbWUnXS4nLnhtbCc7CiRzbWFydHktPmFzc2lnbignZ3JvdXBfbmFtZScsJGdycF9pbmZvWydncm91cG5hbWUnXSk7CiRzbWFydHktPmFzc2lnbignZ3JvdXBfZGVzY3JpcHRpb24nLCRncnBfaW5mb1snZ3JvdXBkZXNjJ10pOwokcHJvcGVydGllcyA9IGFycmF5KCk7CmZvcmVhY2goICRncnBfcHJvcF9yZWxzIGFzICRvbmVyZWwgKSB7CiAgJGRlZm4gPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZuKCAkb25lcmVsWyduYW1lJ10gKTsKICBpZiggISRkZWZuICkgewogICAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9wcm9wbm90Zm91bmQnLCRvbmVyZWxbJ25hbWUnXSkpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdncm91cHMnKTsKICAgIHJldHVybjsKICB9CgogICRvYmogPSBuZXcgU3RkQ2xhc3MoKTsKICAkb2JqLT5uYW1lID0gJG9uZXJlbFsnbmFtZSddOwogICRvYmotPnNvcnRvcmRlciA9ICRvbmVyZWxbJ3NvcnRfa2V5J107CiAgJG9iai0+c3RhdHVzID0gJG9uZXJlbFsncmVxdWlyZWQnXTsKICAkb2JqLT5sb3N0dW5mbGFnID0gJG9uZXJlbFsnbG9zdHVuZmxhZyddOwogICRvYmotPnByb21wdCA9ICRkZWZuWydwcm9tcHQnXTsKICAkb2JqLT50eXBlID0gJGRlZm5bJ3R5cGUnXTsKICAkb2JqLT5sZW5ndGggPSAkZGVmblsnbGVuZ3RoJ107CiAgJG9iai0+bWF4bGVuZ3RoID0gJGRlZm5bJ21heGxlbmd0aCddOwogIGlmKCAkb2JqLT50eXBlID09IDQgfHwgJG9iai0+dHlwZSA9PSA1ICkgewogICAgJG9wcyA9IGFycmF5KCk7CiAgICAkc2VsZWN0X29wcyA9ICR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCAkb2JqLT5uYW1lLCAyICk7CiAgICBmb3JlYWNoKCAkc2VsZWN0X29wcyBhcyAkc2VsX29wICkgewogICAgICAkb3AgPSBuZXcgU3RkQ2xhc3M7CiAgICAgICRvcC0+bmFtZSA9IHRyaW0oJHNlbF9vcFsnb3B0aW9uX25hbWUnXSk7CiAgICAgICRvcC0+dGV4dCA9IHRyaW0oJHNlbF9vcFsnb3B0aW9uX3RleHQnXSk7CiAgICAgICRvcHNbXSA9ICRvcDsKICAgIH0KICAgICRvYmotPm9wdGlvbnMgPSAkb3BzOwogIH0KCiAgJHByb3BlcnRpZXNbXSA9ICRvYmo7Cn0KJHNtYXJ0eS0+YXNzaWduKCdwcm9wZXJ0aWVzJywkcHJvcGVydGllcyk7CgppZihpbmlfZ2V0KCd6bGliLm91dHB1dF9jb21wcmVzc2lvbicpKSBpbmlfc2V0KCd6bGliLm91dHB1dF9jb21wcmVzc2lvbicsICdPZmYnKTsKc2V0X3RpbWVfbGltaXQoOTk5OSk7CgovLyBnZXQgdGhlIGRhdGEKJGhhbmRsZXJzID0gb2JfbGlzdF9oYW5kbGVycygpOyAKZm9yICgkY250ID0gMDsgJGNudCA8IHNpemVvZigkaGFuZGxlcnMpOyAkY250KyspIHsgb2JfZW5kX2NsZWFuKCk7IH0KJGRhdGEgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdncm91cF94bWwudHBsJyk7CgpoZWFkZXIoJ1ByYWdtYTogcHVibGljJyk7CmhlYWRlcignRXhwaXJlczogMCcpOwpoZWFkZXIoJ0NhY2hlLUNvbnRyb2w6IG11c3QtcmV2YWxpZGF0ZSwgcG9zdC1jaGVjaz0wLCBwcmUtY2hlY2s9MCcpOwpoZWFkZXIoJ0NhY2hlLUNvbnRyb2w6IHByaXZhdGUnLGZhbHNlKTsKaGVhZGVyKCdDb250ZW50LURlc2NyaXB0aW9uOiBGaWxlIFRyYW5zZmVyJyk7CmhlYWRlcignQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nKTsKaGVhZGVyKCJDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT1cIiRmaWxlbmFtZVwiIiApOwpoZWFkZXIoJ0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IGJpbmFyeScpOwpoZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiAnIC4gc3RybGVuKCRkYXRhKSk7CmVjaG8gJGRhdGE7CgpAZmx1c2goKTsgQG9iX2ZsdXNoKCk7IEBvYl9mbHVzaCgpOwovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.admin_export_users.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygndXNlcnMnKSApIHJldHVybjsKJHRoaXMtPlNldEN1cnJlbnRUYWIoJ3VzZXJzJyk7Cgokb2Zmc2V0ID0gMDsKJGJhdGNoc2l6ZSA9IDUwOwokY291bnQgPSAkZGItPkdldE9uZSgnU0VMRUNUIENPVU5UKERJU1RJTkNUIHUuaWQpIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIHUnKTsKaWYoICRjb3VudCA9PSAwICkgewogICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfZXhwb3J0X25vdXNlcnMnKSk7CiAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoKTsKfQokdXF1ZXJ5ID0gJ1NFTEVDVCBESVNUaU5DVCB1LmlkLHUudXNlcm5hbWUsdS5leHBpcmVzLHUuY3JlYXRlZGF0ZQogICAgICAgICAgIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIHUgT1JERVIgQlkgdS5pZCc7CgokZ3JvdXBzID0gYXJyYXlfZmxpcCgkdGhpcy0+R2V0R3JvdXBMaXN0KCkpOwokcHJvcGRlZm5zID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKJHJlbG5zID0gYXJyYXkoKTsKZm9yZWFjaCggJGdyb3VwcyBhcyAkZ2lkID0+ICRnbmFtZSApIHsKICAkcmVsbnNbJGdpZF0gPSAkdGhpcy0+R2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucygkZ2lkKTsKfQoKLy8gYnVpbGQgdGhlIGZpZWxkIG1hcAokZmllbGRtYXAgPSBhcnJheSgndXNlcm5hbWUnPT5udWxsLCdleHBpcmVzJz0+bnVsbCwnY3JlYXRlZGF0ZSc9Pm51bGwsJ2dyb3VwbmFtZSc9Pm51bGwpOwokcHJvcGxpc3QgPSBhcnJheSgpOwpmb3JlYWNoKCAkcmVsbnMgYXMgJGdpZCA9PiAkcmVsbl9saXN0ICkgewogIGZvcmVhY2goICRyZWxuX2xpc3QgYXMgJHJlbG4gKSB7CiAgICBpZiggIWlzc2V0KCRwcm9wZGVmbnNbJHJlbG5bJ25hbWUnXV0pICkgY29udGludWU7CiAgICBpZiggJHByb3BkZWZuc1skcmVsblsnbmFtZSddXVsnZW5jcnlwdCddICkgY29udGludWU7CiAgICBpZiggJHJlbG5bJ3JlcXVpcmVkJ10gPT0gMiB8fCAkcmVsblsncmVxdWlyZWQnXSA9PSAxICkgewogICAgICAkZmllbGRtYXBbJHJlbG5bJ25hbWUnXV0gPSBudWxsOwogICAgICAkcHJvcGxpc3RbXSA9ICRyZWxuWyduYW1lJ107CiAgICB9CiAgfQp9CgovLyBjbGVhciBhbGwgYnVmZmVycwovLyBleHBvcnQgdGhlIGhlYWRlciBsaW5lCiRmbj0iZmV1c2Vycy0iLmRhdGUoJ1ktbS1kJykuJy5jc3YnOwokaGVhZGVyID0gJyMjJy5pbXBsb2RlKCcsJyxhcnJheV9rZXlzKCRmaWVsZG1hcCkpOwokaGFuZGxlcnMgPSBvYl9saXN0X2hhbmRsZXJzKCk7CmZvciAoJGNudCA9IDA7ICRjbnQgPCBzaXplb2YoJGhhbmRsZXJzKTsgJGNudCsrKSB7IG9iX2VuZF9jbGVhbigpOyB9CmhlYWRlcignQ29udGVudC1EZXNjcmlwdGlvbjogRmlsZSBUcmFuc2ZlcicpOwpoZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vZm9yY2UtZG93bmxvYWQnKTsKaGVhZGVyKCdDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT0nLiRmbik7CmVjaG8gJGhlYWRlci4iXG4iOwoKd2hpbGUoICRvZmZzZXQgPCAkY291bnQgKSB7CiAgICAkZGJyX3UgPSAkZGItPlNlbGVjdExpbWl0KCR1cXVlcnksJGJhdGNoc2l6ZSwkb2Zmc2V0KTsKCiAgICAvLyBnZXQgdGhlIHVzZXIgaWRzLgogICAgJHVpZHMgPSBhcnJheSgpOwogICAgd2hpbGUoICEkZGJyX3UtPkVPRigpICkgewogICAgICAgICR0bXAgPSAoaW50KSRkYnJfdS0+ZmllbGRzWydpZCddOwogICAgICAgIGlmKCAkdG1wID4gMCAmJiAhaW5fYXJyYXkoJHRtcCwkdWlkcykgKSAkdWlkc1tdID0gJHRtcDsKICAgICAgICAkZGJyX3UtPk1vdmVOZXh0KCk7CiAgICB9CiAgICAkZGJyX3UtPk1vdmVGaXJzdCgpOwoKICAgIC8vIGdldCB0aGUgYmVsb25ncyBzdHVmZiBmb3IgdGhlc2UgdXNlcnMKICAgICRicXVlcnkgPSAnU0VMRUNUIHVzZXJpZCxncm91cGlkIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MKICAgICAgICAgICAgIFdIRVJFIHVzZXJpZCBJTiAoJy5pbXBsb2RlKCcsJywkdWlkcykuJykgT1JERVIgQlkgdXNlcmlkLGdyb3VwaWQnOwogICAgJHRtcCA9ICRkYi0+R2V0QXJyYXkoJGJxdWVyeSk7CiAgICAkYmVsb25ncyA9IGFycmF5KCk7CiAgICBmb3JlYWNoKCAkdG1wIGFzICRicm93ICkgewogICAgICAgIGlmKCAhaXNzZXQoJGJlbG9uZ3NbJGJyb3dbJ3VzZXJpZCddXSkgKSAkYmVsb25nc1skYnJvd1sndXNlcmlkJ11dID0gYXJyYXkoKTsKICAgICAgICAkYmVsb25nc1skYnJvd1sndXNlcmlkJ11dW10gPSAkYnJvd1snZ3JvdXBpZCddOwogICAgfQoKICAgIC8vIGdldCB0aGUgcHJvcGVydGllcyBmb3IgdGhlc2UgdXNlcnMKICAgICRwcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcwogICAgICAgICAgICAgV0hFUkUgdXNlcmlkIElOICgnLmltcGxvZGUoJywnLCR1aWRzKS4nKSBPUkRFUiBCWSB1c2VyaWQsdGl0bGUnOwogICAgJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHBxdWVyeSk7CiAgICAkcHJvcGVydGllcyA9IGFycmF5KCk7CiAgICBmb3JlYWNoKCAkdG1wIGFzICRwcm93ICkgewogICAgICAgIGlmKCAhaXNzZXQoJHByb3BlcnRpZXNbJHByb3dbJ3VzZXJpZCddXSkgKSAkcHJvcGVydGllc1skcHJvd1sndXNlcmlkJ11dID0gYXJyYXkoKTsKICAgICAgICAkcHJvcGVydGllc1skcHJvd1sndXNlcmlkJ11dW10gPSBhcnJheSgkcHJvd1sndGl0bGUnXSwkcHJvd1snZGF0YSddKTsKICAgIH0KCiAgICB3aGlsZSggISRkYnJfdS0+RU9GKCkgKSB7CiAgICAgICAgLy8gYWRkIHByaW1hcnkgZmllbGRzCiAgICAgICAgJHVpZCA9ICRkYnJfdS0+ZmllbGRzWydpZCddOwogICAgICAgICRyb3cgPSAkZmllbGRtYXA7CiAgICAgICAgJHJvd1sndXNlcm5hbWUnXSA9ICRkYnJfdS0+ZmllbGRzWyd1c2VybmFtZSddOwogICAgICAgICRyb3dbJ2V4cGlyZXMnXSA9ICRkYnJfdS0+ZmllbGRzWydleHBpcmVzJ107CiAgICAgICAgJHJvd1snY3JlYXRlZGF0ZSddID0gJGRicl91LT5maWVsZHNbJ2NyZWF0ZWRhdGUnXTsKCiAgICAgICAgLy8gYWRkIGdyb3VwbmFtZShzKQogICAgICAgIGlmKCBpc3NldCgkYmVsb25nc1skdWlkXSkgKSB7CiAgICAgICAgICAgICR0bXAgPSBhcnJheSgpOwogICAgICAgICAgICBmb3JlYWNoKCAkYmVsb25nc1skdWlkXSBhcyAkZ2lkICkgewogICAgICAgICAgICAgICAgaWYoIGlzc2V0KCRncm91cHNbJGdpZF0pICkgJHRtcFtdID0gJGdyb3Vwc1skZ2lkXTsKICAgICAgICAgICAgfQogICAgICAgICAgICAkcm93Wydncm91cG5hbWUnXSA9IGltcGxvZGUoJywnLCR0bXApOwogICAgICAgIH0KCiAgICAgICAgLy8gYWRkIHByb3BlcnRpZXMKICAgICAgICBpZiggaXNzZXQoJHByb3BlcnRpZXNbJHVpZF0pICkgewogICAgICAgICAgICBmb3JlYWNoKCAkcHJvcGVydGllc1skdWlkXSBhcyAkcmVjICkgewogICAgICAgICAgICAgICAgaWYoIGFycmF5X2tleV9leGlzdHMoJHJlY1swXSwkcm93KSApIHsKICAgICAgICAgICAgICAgICAgICAkcm93WyRyZWNbMF1dID0gJHJlY1sxXTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAkZGJyX3UtPk1vdmVOZXh0KCk7CgogICAgICAgIC8vIG91dHB1dCB0aGUgcm93LgogICAgICAgIGVjaG8gY2dlX2FycmF5OjppbXBsb2RlX3F1b3RlZChhcnJheV92YWx1ZXMoJHJvdykpLiJcbiI7CiAgICB9CiAgICAkb2Zmc2V0ICs9ICRiYXRjaHNpemU7Cn0gLy8gd2hpbGUKCmV4aXQoKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_importgroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoICRnQ21zICkgKSByZXR1cm47CmlmKCAhJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2VkaXRncm91cHMnKSApIHJldHVybjsKCmZ1bmN0aW9uIGNoZWNrX2dyb3VwX2NvbXBsZXRlKCAmJGdycCApCnsKICBpZiggIWlzX2FycmF5KCAkZ3JwICkgKSByZXR1cm4gZmFsc2U7CiAgaWYoIWlzc2V0KCRncnBbJ25hbWUnXSkgfHwgZW1wdHkoJGdycFsnbmFtZSddKSkgcmV0dXJuIGZhbHNlOwogIAogIC8vIHBhc3NlZAogIGlmKCAhaXNzZXQoJGdycFsncHJvcGVydGllcyddKSB8fCAhaXNfYXJyYXkoJGdycFsncHJvcGVydGllcyddKSB8fCAoY291bnQoJGdycFsncHJvcGVydGllcyddKSA9PSAwKSApIHJldHVybiBmYWxzZTsKCiAgZm9yZWFjaCggJGdycFsncHJvcGVydGllcyddIGFzICRvbmVwcm9wICkgewogICAgaWYoICFjaGVja19wcm9wZXJ0eV9jb21wbGV0ZSggJG9uZXByb3AgKSApIHJldHVybiBmYWxzZTsKICB9CgogIHJldHVybiB0cnVlOwp9CgoKZnVuY3Rpb24gY2hlY2tfcHJvcGVydHlfY29tcGxldGUoICYkcHJvcCApCnsKICBpZiggIWlzX2FycmF5KCAkcHJvcCApICkgcmV0dXJuIEZBTFNFOwogIGlmKCFpc3NldCgkcHJvcFsnbmFtZSddKSB8fCBlbXB0eSgkcHJvcFsnbmFtZSddKSkgcmV0dXJuIEZBTFNFOwogIGlmKCFpc3NldCgkcHJvcFsndHlwZSddKSB8fCAkcHJvcFsndHlwZSddID09ICcnKSByZXR1cm4gRkFMU0U7CiAgaWYoIWlzc2V0KCRwcm9wWydwcm9tcHQnXSkgfHwgZW1wdHkoJHByb3BbJ3Byb21wdCddKSkgcmV0dXJuIEZBTFNFOwogIGlmKCFpc3NldCgkcHJvcFsnc29ydG9yZGVyJ10pIHx8ICRwcm9wWydzb3J0b3JkZXInXSA9PT0gJycgKSByZXR1cm4gRkFMU0U7CiAgaWYoIWlzc2V0KCRwcm9wWydzdGF0dXMnXSkgfHwgZW1wdHkoJHByb3BbJ3N0YXR1cyddKSkgcmV0dXJuIEZBTFNFOwogIGlmKCFpc3NldCgkcHJvcFsnbG9zdHVuZmxhZyddKSB8fCBlbXB0eSgkcHJvcFsnbG9zdHVuZmxhZyddKSkgcmV0dXJuIEZBTFNFOwoKICBpZihpc3NldCgkcHJvcFsnbGVuZ3RoJ10pKSB7CiAgICBpZihlbXB0eSgkcHJvcFsnbGVuZ3RoJ10pKSByZXR1cm4gRkFMU0U7CiAgICBpZihpbnR2YWwoJHByb3BbJ2xlbmd0aCddKSA9PSAwKSByZXR1cm4gRkFMU0U7CiAgfQogIGlmKGlzc2V0KCRwcm9wWydtYXhsZW5ndGgnXSkpIHsKICAgIGlmKGVtcHR5KCRwcm9wWydtYXhsZW5ndGgnXSkpIHJldHVybiBGQUxTRTsKICAgIGlmKGludHZhbCgkcHJvcFsnbWF4bGVuZ3RoJ10pID09IDApIHJldHVybiBGQUxTRTsKICB9CgogICR0eXBlID0gaW50dmFsKCRwcm9wWyd0eXBlJ10pOwogIGlmKCAkdHlwZSA+IDYgfHwgJHR5cGUgPCAwICkgcmV0dXJuIEZBTFNFOwogIGlmKCAkdHlwZSA9PSA0IHx8ICR0eXBlID09IDUgKSB7CiAgICAvLyBjaGVjayBmb3Igb3B0aW9ucwogICAgaWYoICFpc3NldCgkcHJvcFsnb3B0aW9ucyddKSB8fCAhaXNfYXJyYXkoJHByb3BbJ29wdGlvbnMnXSkgKSByZXR1cm4gRkFMU0U7CgogICAgZm9yZWFjaCggJHByb3BbJ29wdGlvbnMnXSBhcyAkb25lb3AgKSB7CiAgICAgIGlmKCAhaXNzZXQoJG9uZW9wWyduYW1lJ10pIHx8ICFpc3NldCgkb25lb3BbJ3RleHQnXSkgKSByZXR1cm4gRkFMU0U7CiAgICB9CiAgfQoKICByZXR1cm4gVFJVRTsKfQoKaWYoICFmZXVfdXRpbHM6OnVzaW5nX3N0ZF9jb25zdW1lcigpICkgewogICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3Jfbm90c3VwcG9ydGVkJykpOwogICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7Cn0KCmlmKCBpc3NldCggJHBhcmFtc1snY2FuY2VsJ10gKSApIHsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwp9CgppZiggaXNzZXQoICRwYXJhbXNbJ3N1Ym1pdCddICkgKSB7CiAgLy8KICAvLyBTdWJtaXQgd2FzIHByZXNzZWQKICAvLwogIGlmKCAhaXNzZXQoICRfRklMRVNbJGlkLid4bWxmaWxlJ10gKSApIHsKICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ191cGxvYWQnKSk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwogIH0KICAkdGhlZmlsZSA9JiAkX0ZJTEVTWyRpZC4neG1sZmlsZSddOwogIGlmKCAkdGhlZmlsZVsndHlwZSddICE9ICd0ZXh0L3htbCcgfHwgJHRoZWZpbGVbJ3NpemUnXSA9PSAwIHx8ICR0aGVmaWxlWydlcnJvciddICE9IDAgKSB7CiAgICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJykpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdncm91cHMnKTsKICB9CgogIC8vCiAgLy8gV2UgZ290IGFuIFhNTCBmaWxlIChob3BlIGl0J3MgdGhlIHJpZ2h0IG9uZQogIC8vIG5vdyB3ZSBjYW4gdHJ5IHRvIHBhcnNlIGl0IAogIC8vCgogICR4bWwgPSBmaWxlX2dldF9jb250ZW50cyggJHRoZWZpbGVbJ3RtcF9uYW1lJ10gKTsKICAkcGFyc2VyID0geG1sX3BhcnNlcl9jcmVhdGUoKTsKICAkcmV0ID0geG1sX3BhcnNlX2ludG9fc3RydWN0KCAkcGFyc2VyLCAkeG1sLCAkdmFsLCAkeHQgKTsKICB4bWxfcGFyc2VyX2ZyZWUoICRwYXJzZXIgKTsKCiAgaWYoICRyZXQgPT0gMCApIHsKICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfYmFkX3htbCcpLicgMScpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdncm91cHMnKTsKICB9CgogIC8vCiAgLy8gV2UgaGF2ZSBzb21lIGtpbmQgb2YgdmFsaWQgWE1MCiAgLy8KICAkb25lcHJvcGVydHkgPSBhcnJheSgpOwogICRvbmVvcHRpb24gPSBhcnJheSgpOwogICRoYXZlX2NvbXBsZXRlX2dyb3VwID0gZmFsc2U7CiAgJGdycF9pbmZvID0gYXJyYXkoKTsKICBmb3JlYWNoKCAkdmFsIGFzICRlbGVtICkgewogICAgJHZhbHVlID0gKGlzc2V0KCRlbGVtWyd2YWx1ZSddKT8kZWxlbVsndmFsdWUnXTonJyk7CiAgICAkdHlwZSA9IChpc3NldCgkZWxlbVsndHlwZSddKT8kZWxlbVsndHlwZSddOicnKTsKICAgICR0YWcgPSBzdHJ0b2xvd2VyKCRlbGVtWyd0YWcnXSk7CiAgICAkZmxkID0gc3Vic3RyKCR0YWcsc3RycG9zKCR0YWcsJ18nKSsxKTsKCiAgICBzd2l0Y2goICR0YWcgKSB7CiAgICBjYXNlICdmZXVfZ3JvdXAnOgogICAgICB7CglpZiggJHR5cGUgIT0gJ2NvbXBsZXRlJyAmJiAkdHlwZSAhPSAnY2xvc2UnICkgY29udGludWU7CglpZiggIWNoZWNrX2dyb3VwX2NvbXBsZXRlKCRncnBfaW5mbykgKSB7CgkgIC8vIGFuIGVycm9yIHRoYXQgd2Ugc2hvdWxkIG5ldmVyIGdldAoJICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX2JhZF94bWwnKS4nIDInKTsKCSAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdncm91cHMnKTsKCSAgcmV0dXJuOwoJfQoJLy8gd2Ugc2hvdWxkIGhhdmUgYSBjb21wbGV0ZSBncm91cCBhdCB0aGlzIHBvaW50CgkkaGF2ZV9jb21wbGV0ZV9ncm91cCA9IHRydWU7CglicmVhazsKICAgICAgfQoKICAgIGNhc2UgJ2dycF9uYW1lJzoKICAgIGNhc2UgJ2dycF9kZXNjcmlwdGlvbic6CiAgICAgIHsKCWlmKCAkdHlwZSAhPSAnY29tcGxldGUnICYmICR0eXBlICE9ICdjbG9zZScgKSBjb250aW51ZTsKCWlmKCBpc3NldCgkZ3JwX2luZm9bJGZsZF0pICkgewoJICAvLyBhbiBlcnJvciB0aGF0IHdlIHNob3VsZCBuZXZlciBnZXQKCSAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9iYWRfeG1sJykuJyAzJyk7CgkgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7CgkgIHJldHVybjsKCX0KCSRncnBfaW5mb1skZmxkXSA9ICR2YWx1ZTsKCWJyZWFrOwogICAgICB9CgoKICAgIGNhc2UgJ3Byb3BlcnR5JzoKICAgICAgewoJaWYoICR0eXBlICE9ICdjb21wbGV0ZScgJiYgJHR5cGUgIT0gJ2Nsb3NlJyApIGNvbnRpbnVlOwoJaWYoICFjaGVja19wcm9wZXJ0eV9jb21wbGV0ZSgkb25lcHJvcGVydHkpICkgewoJICAvLyBhbiBlcnJvciB0aGF0IHdlIHNob3VsZCBuZXZlciBnZXQKCSAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9iYWRfeG1sJykuJyA0Jyk7CgkgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7CgkgIHJldHVybjsKCX0KCWlmKCAhaXNzZXQoJGdycF9pbmZvWydwcm9wZXJ0aWVzJ10pICkgJGdycF9pbmZvWydwcm9wZXJ0aWVzJ10gPSBhcnJheSgpOwoJJGdycF9pbmZvWydwcm9wZXJ0aWVzJ11bXSA9ICRvbmVwcm9wZXJ0eTsKCSRvbmVwcm9wZXJ0eSA9IGFycmF5KCk7CglicmVhazsKICAgICAgfQoKICAgIGNhc2UgJ3Byb3BfbmFtZSc6CiAgICBjYXNlICdwcm9wX3Byb21wdCc6CiAgICBjYXNlICdwcm9wX3ZhbHVlJzoKICAgIGNhc2UgJ3Byb3BfdHlwZSc6CiAgICBjYXNlICdwcm9wX2xlbmd0aCc6CiAgICBjYXNlICdwcm9wX21heGxlbmd0aCc6CiAgICBjYXNlICdwcm9wX3NvcnRvcmRlcic6CiAgICBjYXNlICdwcm9wX3N0YXR1cyc6CiAgICBjYXNlICdwcm9wX2xvc3R1bmZsYWcnOgogICAgICB7CglpZiggJHR5cGUgIT0gJ2NvbXBsZXRlJyAmJiAkdHlwZSAhPSAnY2xvc2UnICkgY29udGludWU7CglpZiggaXNzZXQoICRvbmVwcm9wZXJ0eVskZmxkXSApICkgewoJICAvLyBhbiBlcnJvciB0aGF0IHdlIHNob3VsZCBuZXZlciBnZXQKCSAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9iYWRfeG1sJykuJyA1Jyk7CgkgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7CgkgIHJldHVybjsKCX0KCSRvbmVwcm9wZXJ0eVskZmxkXSA9ICR2YWx1ZTsKCWJyZWFrOwogICAgICB9CgogICAgY2FzZSAncHJvcF9vcHRpb24nOgogICAgICB7CglpZiggJHR5cGUgIT0gJ2NvbXBsZXRlJyAmJiAkdHlwZSAhPSAnY2xvc2UnICkgY29udGludWU7Cgkkb25lcHJvcGVydHlbJ29wdGlvbnMnXVtdID0gJG9uZW9wdGlvbjsKCSRvbmVvcHRpb24gPSBhcnJheSgpOwoJYnJlYWs7CiAgICAgIH0KCiAgICBjYXNlICdvcF9uYW1lJzoKICAgIGNhc2UgJ29wX3RleHQnOgogICAgICB7CglpZiggJHR5cGUgIT0gJ2NvbXBsZXRlJyAmJiAkdHlwZSAhPSAnY2xvc2UnICkgY29udGludWU7Cgkkb25lb3B0aW9uWyRmbGRdID0gJHZhbHVlOwoJYnJlYWs7CiAgICAgIH0KICAgIH0gLy8gc3dpdGNoCiAgfSAvLyBmb3JlYWNoCgogIC8vCiAgLy8gSWYgd2UgZ290IGhlcmUsIHdlIHBhcnNlZCB0aGUgeG1sIGZpbGUgcHJvcGVybHkKICAvLyBhbmQgaXQgbG9va3MgZ29vZC4KICAvLwoKICAvLyBJZiB0aGUgbmV3bmFtZSBpcyBzZXQsIHdlJ2xsIHVzZSB0aGF0CiAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X25ld25hbWUnXSkgJiYgJHBhcmFtc1snaW5wdXRfbmV3bmFtZSddICE9ICcnICkgJGdycF9pbmZvWyduYW1lJ10gPSAkcGFyYW1zWydpbnB1dF9uZXduYW1lJ107CgogIGlmKCAkdGhpcy0+R3JvdXBFeGlzdHNCeU5hbWUoICRncnBfaW5mb1snbmFtZSddICkgKSB7CiAgICAvLyBhbiBlcnJvciB0aGF0IHdlIHNob3VsZCBuZXZlciBnZXQKICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfZ3JvdXBleGlzdHMnKSk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwogICAgcmV0dXJuOwogIH0KCiAgaWYoICFpc3NldCgkZ3JwX2luZm9bJ3Byb3BlcnRpZXMnXSkgfHwgIWlzX2FycmF5KCRncnBfaW5mb1sncHJvcGVydGllcyddKSB8fCAoY291bnQoJGdycF9pbmZvWydwcm9wZXJ0aWVzJ10pID09IDApICkgewogICAgLy8gbm8gcHJvcGVydGllcz8KICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfcHJvcGVydGllcycpKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7CiAgICByZXR1cm47CiAgfQoKICAvLyBOb3cgYWRkIHRoZSBwcm9wZXJ0aWVzCiAgLy8gKGZpcnN0IHNjYW4gZm9yIG5hbWVzKQogICRwYXNzZWQgPSB0cnVlOwogIGZvcmVhY2goICRncnBfaW5mb1sncHJvcGVydGllcyddIGFzICRvbmVwcm9wICkgewogICAgJHJlcyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm4oICRvbmVwcm9wWyduYW1lJ10gKTsKICAgIGlmKCBpc19hcnJheSgkcmVzKSApIHsKICAgICAgJHBhc3NlZCA9IGZhbHNlOwogICAgICBicmVhazsKICAgIH0KICB9CiAgaWYoICEkcGFzc2VkICkgewogICAgLy8gbm8gcHJvcGVydGllcz8KICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfZHVwX3Byb3BlcnRpZXMnKSk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwogICAgcmV0dXJuOwogIH0KCiAgLy8KICAvLyBOb3cgcmVhbGx5IGFkZCB0aGVtCiAgLy8KICBmb3JlYWNoKCAkZ3JwX2luZm9bJ3Byb3BlcnRpZXMnXSBhcyAkb25lcHJvcCApIHsKICAgICRyZXMgPSAkdGhpcy0+QWRkUHJvcGVydHlEZWZuKCRvbmVwcm9wWyduYW1lJ10sICRvbmVwcm9wWydwcm9tcHQnXSwgJG9uZXByb3BbJ3R5cGUnXSwgJG9uZXByb3BbJ2xlbmd0biddLCAkb25lcHJvcFsnbWF4bGVuZ3RoJ10pOwogICAgaWYoIGlzX2FycmF5KCAkcmVzICkgJiYgJHJlc1swXSA9PT0gRkFMU0UgKSB7CiAgICAgIC8vIGZvciBzb21lIGR1bWIgcmVhc29uLCB3ZSBzdGlsbCBjb3VsZG4ndCBpbnNlcnQgCiAgICAgIC8vIHRoZSBwcm9wZXJ0eQogICAgICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX2NhbnRhZGRwcm9wJykpOwogICAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwogICAgICByZXR1cm47CiAgICB9CgogICAgaWYoICRvbmVwcm9wWyd0eXBlJ10gPT0gNCB8fCAkb25lcHJvcFsndHlwZSddID09IDUgKSB7CiAgICAgIC8vIGl0J3MgYSBzZWxlY3QgdHlwZQogICAgICAkb3BzID0gYXJyYXkoKTsKICAgICAgZm9yZWFjaCggJG9uZXByb3BbJ29wdGlvbnMnXSBhcyAkb25lb3AgKSB7Cgkkb3BzW10gPSAkb25lb3BbJ3RleHQnXS4nPScuJG9uZW9wWyduYW1lJ107CiAgICAgIH0KICAgICAgJHJlcyA9ICR0aGlzLT5BZGRTZWxlY3RPcHRpb25zKCAkb25lcHJvcFsnbmFtZSddLCAkb3BzICk7CiAgICAgIGlmKCAkcmVzWzBdID09IEZBTFNFICkgewoJLy8gZm9yIHNvbWUgZHVtYiByZWFzb24sIHdlIHN0aWxsIGNvdWxkbid0IGluc2VydCAKCS8vIHRoZSBwcm9wZXJ0eQoJJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9jYW50YWRkcHJvcCcpLicgMicpOwoJJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdncm91cHMnKTsKCXJldHVybjsKICAgICAgfQogICAgfQogIH0KCiAgLy8gV29vaG9vLCB0aGUgcHJvcGVydGllcyB3ZXJlIGFkZGVkCiAgLy8gTm93IHRvIGFkZCB0aGUgZ3JvdXAgaXRzZWxmLgogICRyZXMgPSAkdGhpcy0+QWRkR3JvdXAoJGdycF9pbmZvWyduYW1lJ10sJGdycF9pbmZvWydkZXNjcmlwdGlvbiddKTsKICBpZiggaXNfYXJyYXkoICRyZXMgKSAmJiAkcmVzWzBdID09PSBGQUxTRSApIHsKICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfY2FudGFkZGdyb3VwJykpOwogICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCdncm91cHMnKTsKICAgIHJldHVybjsKICB9CiAgJGdycGlkID0gJHJlc1sxXTsKCiAgLy8gYW5kIGFzc29jaWF0ZSB0aGUgcHJvcGVydGllcyB3aXRoIHRoZSBncm91cAogICRlcnJvciA9IGZhbHNlOwogIGZvcmVhY2goICRncnBfaW5mb1sncHJvcGVydGllcyddIGFzICRvbmVwcm9wICkgewogICAgLy8gaWYgaXQncyBhbiBvcHRpb24gdHlwZSAodHlwZSA0IG9yIDUpIHRoZW4KICAgIC8vIGFkZCB0aGUgb3B0aW9ucwogICAgJHJlcyA9ICR0aGlzLT5BZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRncnBpZCwgJG9uZXByb3BbJ25hbWUnXSwgJG9uZXByb3BbJ3NvcnRvcmRlciddLCAkb25lcHJvcFsnbG9zdHVuZmxhZyddLCAkb25lcHJvcFsnc3RhdHVzJ10gKTsKICAgIGlmKCAkcmVzWzBdID09PSBGQUxTRSApICRlcnJvciA9IHRydWU7CiAgfQogIGlmKCAkZXJyb3IgPT0gdHJ1ZSApIHsKICAgICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnZXJyb3JfY2FudGFkZGdyb3VwcmVscycpKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwnZ3JvdXBzJyk7CiAgICByZXR1cm47CiAgfQoKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2dyb3VwcycpOwp9IC8vIGlmCgovLyBQcm92aWRlIGEgc2ltcGxlIGZvcm0gdGhhdCBhbGxvd3MgcGVvcGxlIHRvIGNob29zZSB0aGUgZmlsZSB0byBpbXBvcnQKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCdhZG1pbl9pbXBvcnRncm91cCcsJHJldHVybmlkLCdwb3N0JywnbXVsdGlwYXJ0L2Zvcm0tZGF0YScpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7CiRzbWFydHktPmFzc2lnbignY2FuY2VsJywkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdjYW5jZWwnLCR0aGlzLT5MYW5nKCdjYW5jZWwnKSkpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9maWxlbmFtZScsJHRoaXMtPkxhbmcoJ3Byb21wdF9pbXBvcnR4bWxmaWxlJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2ZpbGVuYW1lJywkdGhpcy0+Q3JlYXRlRmlsZVVwbG9hZElucHV0KCRpZCwneG1sZmlsZScsJycsNDApKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfbmV3bmFtZScsJHRoaXMtPkxhbmcoJ3Byb21wdF9uZXdncm91cG5hbWUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfbmV3bmFtZScsJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2lucHV0X25ld25hbWUnKSk7CgplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2ltcG9ydGdyb3VwLnRwbCcpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_import_users.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygndXNlcnMnKSApIHJldHVybjsKJHRoaXMtPlNldEN1cnJlbnRUYWIoJ3VzZXJzJyk7CgppZiggaXNzZXQoJHBhcmFtc1snY2FuY2VsJ10pICkgJHRoaXMtPlJlZGlyZWN0VG9UYWIoKTsKCmlmKCAhZmV1X3V0aWxzOjp1c2luZ19zdGRfY29uc3VtZXIoKSApIHsKICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX25vdHN1cHBvcnRlZCcpKTsKICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwogIHJldHVybjsKfQoKJGltcG9ydHByZWZzID0gYXJyYXkoJ2RlbGV0ZV91c2Vycyc9PjAsJ2RlbGltaXRlcic9PicsJyk7CiR0bXAgPSAkdGhpcy0+Q0dHZXRQcmVmZXJlbmNlKCdpbXBvcnRwcmVmcycpOwppZiggJHRtcCApICR0bXAgPSB1bnNlcmlhbGl6ZSgkdG1wKTsKaWYoIGlzX2FycmF5KCR0bXApICkgJGltcG9ydHByZWZzID0gJHRtcDsKCmlmKCBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgKSB7CiAgdHJ5IHsKICAgICRfZnAgPSAkaWQuJ2ZpbGUnOwogICAgLy8gY2hlY2sgdGhlIGZpbGUKICAgIGlmKCAhaXNzZXQoJF9GSUxFUykgfHwgIWlzc2V0KCRfRklMRVNbJF9mcF0pIHx8ICRfRklMRVNbJF9mcF1bJ25hbWUnXSA9PSAnJyApIHsKICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfcHJvYmxlbV91cGxvYWQnKSk7CiAgICB9CiAgICBpZiggJF9GSUxFU1skX2ZwXVsnc2l6ZSddID09IDAgfHwgJF9GSUxFU1skX2ZwXVsnZXJyb3InXSAhPSAwICkgewogICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9wcm9ibGVtX3VwbG9hZCcpKTsKICAgIH0KICAgICRmaCA9IGZvcGVuKCRfRklMRVNbJF9mcF1bJ3RtcF9uYW1lJ10sJ3InKTsKICAgIGlmKCAhJGZoICkgdGhyb3cgbmV3IEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfbWlzc2luZ3VwbG9hZCcpKTsKICAgIHdoaWxlKCAhZmVvZigkZmgpICkgewogICAgICAkbGluZSA9IGNnZV91dGlsczo6ZmdldHMoJGZoKTsKICAgICAgJGxpbmUgPSB0cmltKCRsaW5lKTsKICAgICAgaWYoICEkbGluZSApIGNvbnRpbnVlOwogICAgICBpZiggIXN0YXJ0c3dpdGgoJGxpbmUsJyMjJykgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbXBvcnRmaWxlZm9ybWF0JykpOwogICAgICAkbGluZSA9IHRyaW0oc3Vic3RyKCRsaW5lLDIpKTsKICAgICAgJGZpZWxkcyA9IGNnZV9hcnJheTo6c21hcnRfZXhwbG9kZSgkbGluZSwkaW1wb3J0cHJlZnNbJ2RlbGltaXRlciddKTsKICAgICAgaWYoIGNvdW50KCRmaWVsZHMpIDwgMSApIHRocm93IG5ldyBFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnKSk7CiAgICAgIGJyZWFrOwogICAgfQogICAgZmNsb3NlKCRmaCk7CgogICAgJGltcG9ydHByZWZzWydkZWxldGVfdXNlcnMnXSA9IChpbnQpY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHBhcmFtcywnZGVsZXRlX3VzZXJzJywwKTsKICAgICRpbXBvcnRwcmVmc1snZGVsaW1pdGVyJ10gPSB0cmltKGNnZV91dGlsczo6Z2V0X3BhcmFtKCRwYXJhbXMsJ2RlbGltaXRlcicpKTsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdpbXBvcnRwcmVmcycsc2VyaWFsaXplKCRpbXBvcnRwcmVmcykpOwoKICAgICRmbiA9IHRlbXBuYW0oVE1QX0NBQ0hFX0xPQ0FUSU9OLCdmZXVfaW1wb3J0Jyk7CiAgICBpZiggISRmbiApIHRocm93IG5ldyBFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2NyZWF0ZXRtcGZpbGUnKSk7CiAgICBAY29weSgkX0ZJTEVTWyRfZnBdWyd0bXBfbmFtZSddLCRmbik7CgogICAgJHJldHVybl91cmwgPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2RlZmF1bHRhZG1pbicsJHJldHVybmlkKTsKICAgICRzbWFydHktPmFzc2lnbigncmV0dXJuX3VybCcsJHJldHVybl91cmwpOwoKICAgICR1cmwgPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2FkbWluX2RvaW1wb3J0JywgJHJldHVybmlkLGFycmF5KCdmaWxlJz0+YmFzZW5hbWUoJGZuKSkpLicmc2hvd3RlbXBsYXRlPWZhbHNlJzsKICAgICRzbWFydHktPmFzc2lnbignaWZyYW1lX3NyYycsICR1cmwpOwogICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbl9pbXBvcnRfdXNlcnMyLnRwbCcpOwogICAgcmV0dXJuOwogIH0KICBjYXRjaCggRXhjZXB0aW9uICRlICkgewogICAgZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkZS0+R2V0TWVzc2FnZSgpKTsKICB9Cn0KCi8vIGJ1aWxkIHRoZSBmb3JtLgokZ3JvdXBsaXN0ID0gYXJyYXlfZmxpcCgkdGhpcy0+R2V0R3JvdXBMaXN0KCkpOwppZiggIWNvdW50KCRncm91cGxpc3QpICkgewogICR0aGlzLT5TZXRFcnJvcigkdGhpcy0+TGFuZygnbm9ncm91cHMnKSk7CiAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkKTsKfQoKJHNtYXJ0eS0+YXNzaWduKCdmb3Jtc3RhcnQnLCR0aGlzLT5DR0NyZWF0ZUZvcm1TdGFydCgkaWQsJ2FkbWluX2ltcG9ydF91c2VycycpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdvcHRpb25zJywkaW1wb3J0cHJlZnMpOwokc21hcnR5LT5hc3NpZ24oJ2dyb3VwbGlzdCcsJGdyb3VwbGlzdCk7CmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5faW1wb3J0X3VzZXJzLnRwbCcpOwoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_logout.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLXNldC1zdHlsZTpsaW51eDsgdGFiLXdpZHRoOjI7IGluZGVudC10YWJzLW1vZGU6dDsgYy1iYXNpYy1vZmZzZXQ6IDI7IC0qLQojQkVHSU5fTElDRU5TRQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIE1vZHVsZTogRnJvbnRFbmRVc2VycyAoYykgMjAwOC0yMDE0IGJ5IFJvYmVydCBDYW1wYmVsbAojICAgICAgICAgKGNhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcpCiMgIEFuIGFkZG9uIG1vZHVsZSBmb3IgQ01TIE1hZGUgU2ltcGxlIHRvIGFsbG93IG1hbmFnZW1lbnQgb2YgZnJvbnRlbmQKIyAgdXNlcnMsIGFuZCB0aGVpciBsb2dpbiBwcm9jZXNzIHdpdGhpbiBhIENNUyBNYWRlIFNpbXBsZSBwb3dlcmVkCiMgIHdlYnNpdGUuCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDUgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQojIFZpc2l0IHRoZSBDTVNNUyBIb21lcGFnZSBhdDogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbgojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKaWYoICFpc3NldCgkZ0NtcykgKSBleGl0OwoKaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdlZGl0dXNlcnMnKSApIHsKCWlmKCBpc3NldCgkcGFyYW1zWyd1c2VyX2lkJ10pICkgewoJCSR0aGlzLT5Mb2dvdXRVc2VyKCRwYXJhbXNbJ3VzZXJfaWQnXSwKCQkJCQkJCQkJCQkkdGhpcy0+TGFuZygnYWRtaW5fbG9nb3V0JykpOwoJfQp9CgkKJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCd1c2VycycpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/action.admin_settings.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnc2l0ZXByZWZzJykgKTsKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiSGVhZGVycygpOwplY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoICdwcmVmcycsICR0aGlzLT5MYW5nKCdwcmVmZXJlbmNlcycpKTsKZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAnYXV0aCcsICR0aGlzLT5MYW5nKCdhdXRoZW50aWNhdGlvbicpKTsKZWNobyAkdGhpcy0+RW5kVGFiSGVhZGVycygpOwoKZWNobyAkdGhpcy0+U3RhcnRUYWJDb250ZW50KCk7CmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdwcmVmcycsJHBhcmFtcyk7CmluY2x1ZGUoX19ESVJfXy4nL2Z1bmN0aW9uLmFkbWluX3ByZWZzdGFiLnBocCcpOwplY2hvICR0aGlzLT5FbmRUYWIoKTsKCmVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdhdXRoJywkcGFyYW1zKTsKaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24uYWRtaW5fYXV0aHRhYi5waHAnKTsKZWNobyAkdGhpcy0+RW5kVGFiKCk7CmVjaG8gJHRoaXMtPkVuZFRhYkNvbnRlbnQoKTsKIwojIEVPRgojCg==]]></data>
	</file>
	<file>
	  <filename>/action.admin_set_auth.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgcmV0dXJuOwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgKSByZXR1cm47CiR0aGlzLT5TZXRDdXJyZW50VGFiKCdhdXRoJyk7CgppZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZV91c2Vyc2FsdCcpICkgewogICAgaWYoIFxjZ2VfcGFyYW06OmV4aXN0cygkcGFyYW1zLCdwd3NhbHQnKSApIHsKICAgICAgICAkcHdzYWx0ID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdwd3NhbHQnKTsKICAgICAgICAkcXVlcnkgPSAnU0VMRUNUIGNvdW50KGlkKSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2Vycyc7CiAgICAgICAgJG51c2VycyA9ICRkYi0+R2V0T25lKCRxdWVyeSk7CiAgICAgICAgaWYoICRudXNlcnMgPiAwICkgewogICAgICAgICAgICAkb2xkc2FsdCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwd3NhbHQnKTsKICAgICAgICAgICAgaWYoICRvbGRzYWx0ICE9ICRwd3NhbHQgKSB7CiAgICAgICAgICAgICAgICAvLyBjYW4gb25seSBjaGFuZ2UgdGhlIHNhbHQgaWYgdGhlcmUgYXJlIG5vIHVzZXJzLgogICAgICAgICAgICAgICAgJHRoaXMtPlNldEVycm9yKCR0aGlzLT5MYW5nKCdlcnJvcl9hZGp1c3RzYWx0JykpOwogICAgICAgICAgICAgICAgJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAnYXV0aCcsICcnLCAnYWRtaW5fc2V0dGluZ3MnKTsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncHdzYWx0JywkcHdzYWx0KTsKICAgIH0KfQoKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3JlcXVpcmVfb25lZ3JvdXAnLChpbnQpJHBhcmFtc1sncmVxdWlyZV9vbmVncm91cCddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlZmF1bHRfZ3JvdXAnLChpbnQpJHBhcmFtc1snZGVmYXVsdF9ncm91cCddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3N1cHBvcnRfbG9zdHVuJywoaW50KSRwYXJhbXNbJ3N1cHBvcnRfbG9zdHVuJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWxsb3dfY2hhbmdldXNlcm5hbWUnLChpbnQpJHBhcmFtc1snYWxsb3dfY2hhbmdldXNlcm5hbWUnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzdXBwb3J0X2xvc3RwdycsKGludCkkcGFyYW1zWydzdXBwb3J0X2xvc3RwdyddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJywoaW50KSRwYXJhbXNbJ3B3ZmxkbGVuJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnbWluX3Bhc3N3b3JkbGVuZ3RoJywoaW50KSRwYXJhbXNbJ21pbnB3bGVuJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnbWF4X3Bhc3N3b3JkbGVuZ3RoJywoaW50KSRwYXJhbXNbJ21heHB3bGVuJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZW5oYW5jZWRfcGFzc3dvcmQnLChpbnQpJHBhcmFtc1snZW5oYW5jZWRwdyddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3Bhc3N3b3JkX3JlcXVpcmVkY2hhcnMnLHRyaW0oJHBhcmFtc1sncHdyZXF1aXJlZGNoYXJzJ10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJywoaW50KSRwYXJhbXNbJ3VuZmxkbGVuJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnbWluX3VzZXJuYW1lbGVuZ3RoJywoaW50KSRwYXJhbXNbJ21pbnVubGVuJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnbWF4X3VzZXJuYW1lbGVuZ3RoJywoaW50KSRwYXJhbXNbJ21heHVubGVuJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnY29va2llbmFtZScsdHJpbSgkcGFyYW1zWydjb29raWVuYW1lJ10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2Nvb2tpZV9rZWVwYWxpdmUnLChpbnQpJHBhcmFtc1snY29va2llX2tlZXBhbGl2ZSddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJywoaW50KSRwYXJhbXNbJ3VzZXJuYW1lX2lzX2VtYWlsJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWxsb3dfZHVwbGljYXRlX2VtYWlscycsKGludCkkcGFyYW1zWydhbGxvd19kdXBsaWNhdGVfZW1haWxzJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycycsKGludCkkcGFyYW1zWydhbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10pOwoKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NpZ25pbl9idXR0b24nLHRyaW0oJHBhcmFtc1snc2lnbmluX2J1dHRvbiddKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLHRyaW0oJHBhcmFtc1sncmVxdWlyZWRfZmllbGRfbWFya2VyJ10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJyx0cmltKCRwYXJhbXNbJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJ10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2hpZGRlbl9maWVsZF9tYXJrZXInLHRyaW0oJHBhcmFtc1snaGlkZGVuX2ZpZWxkX21hcmtlciddKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdoaWRkZW5fZmllbGRfY29sb3InLHRyaW0oJHBhcmFtc1snaGlkZGVuX2ZpZWxkX2NvbG9yJ10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NlY3VyZV9maWVsZF9tYXJrZXInLHRyaW0oJHBhcmFtc1snc2VjdXJlX2ZpZWxkX21hcmtlciddKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzZWN1cmVfZmllbGRfY29sb3InLHRyaW0oJHBhcmFtc1snc2VjdXJlX2ZpZWxkX2NvbG9yJ10pKTsKCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYWdlaWRmb3Jnb3RwYXNzd2QnLHRyaW0oJHBhcmFtc1sncGFnZWlkZm9yZ290cGFzc3dkJ10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9jaGFuZ2VzZXR0aW5ncycsdHJpbSgkcGFyYW1zWydwYWdlaWRfY2hhbmdlc2V0dGluZ3MnXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ2luJyx0cmltKCRwYXJhbXNbJ3BhZ2VpZF9sb2dpbiddKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYWdlaWRfbG9nb3V0Jyx0cmltKCRwYXJhbXNbJ3BhZ2VpZF9sb2dvdXQnXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX29udmVyaWZ5Jyx0cmltKCRwYXJhbXNbJ3BhZ2VpZF9vbnZlcmlmeSddKSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYWdlaWRfYWZ0ZXJ2ZXJpZnknLHRyaW0oJHBhcmFtc1sncGFnZWlkX2FmdGVydmVyaWZ5J10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9hZnRlcmNoYW5nZXNldHRpbmdzJyx0cmltKCRwYXJhbXNbJ3BhZ2VpZF9hZnRlcmNoYW5nZXNldHRpbmdzJ10pKTsKCmlmKCBpc3NldCgkcGFyYW1zWydlY29tbV9vcmRlcmNhbmNlbGxlZCddKSApICB7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbicsKGludCkkcGFyYW1zWydlY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10pOwogICAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdlY29tbV9wYWlkcmVnaXN0cmF0aW9uJykgKSB7CiAgICAgICAgJHRoaXMtPkFkZEV2ZW50SGFuZGxlcignQ0dFY29tbWVyY2VCYXNlJywnT3JkZXJVcGRhdGVkJyxmYWxzZSk7CiAgICAgICAgJHRoaXMtPkFkZEV2ZW50SGFuZGxlcignQ0dFY29tbWVyY2VCYXNlJywnT3JkZXJEZWxldGVkJyxmYWxzZSk7CiAgICB9CiAgICBlbHNlIHsKICAgICAgICAkdGhpcy0+UmVtb3ZlRXZlbnRIYW5kbGVyKCdDR0Vjb21tZXJjZUJhc2UnLCdPcmRlclVwZGF0ZWQnKTsKICAgICAgICAkdGhpcy0+UmVtb3ZlRXZlbnRIYW5kbGVyKCdDR0Vjb21tZXJjZUJhc2UnLCdPcmRlckRlbGV0ZWQnKTsKICAgIH0KICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdlY29tbV9vcmRlcmNhbmNlbGxlZCcsdHJpbSgkcGFyYW1zWydlY29tbV9vcmRlcmNhbmNlbGxlZCddKSk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgnZWNvbW1fb3JkZXJkZWxldGVkJyx0cmltKCRwYXJhbXNbJ2Vjb21tX29yZGVyZGVsZXRlZCddKSk7Cn0KJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAnYXV0aCcsICcnLCAnYWRtaW5fc2V0dGluZ3MnKTs=]]></data>
	</file>
	<file>
	  <filename>/action.changesettings.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiRjYW5fY2hhbmdlcGFzc3dkID0gVFJVRTsKJGNvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwokY2FuX2NoYW5nZXBhc3N3ZCA9ICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoZmV1X2F1dGhfY29uc3VtZXI6OkNBUEFCSUxJVFlfQ0hBTkdFUEFTU1dEKTsKCmlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KGZldV9hdXRoX2NvbnN1bWVyOjpDQVBBQklMSVRZX0NIQU5HRVNFVFRJTkdTKSApIHsKICAgIC8vIHRoZSBjb25zdW1lciBwcm92aWRlcyB0aGUgbG9naW4gY2FwYWJpbGl0aWVzCiAgICBlY2hvICRjb25zdW1lci0+Z2V0X2NoYW5nZXNldHRpbmdzX2Rpc3BsYXkoJGlkLCRyZXR1cm5pZCwkcGFyYW1zKTsKICAgIHJldHVybjsKfQplbHNlIGlmKCAhJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eShmZXVfYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9VU0VTVERDSEFOR0VTRVRUSU5HUykgKSB7CiAgICByZXR1cm47Cn0KCiR1aWQgPSAkdGhpcy0+TG9nZ2VkSW5JZCgpOwppZiggJHVpZCA8IDEgKSByZXR1cm47CiRyZXN1bHQgPSAkdGhpcy0+R2V0VXNlckluZm8oICR1aWQgKTsKaWYoICRyZXN1bHRbMF0gPT0gRkFMU0UgKSB7CiAgICAvLyB1c2VyIGlzbid0IGxvZ2dlZCBpbgogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHJlc3VsdFsxXSk7CiAgICByZXR1cm47Cn0KJHVpbmZvID0gJHJlc3VsdFsxXTsKCi8vIGdldCB0aGUgdXNlcnMgbWVtYmVyIGdyb3VwcwokZ3JvdXBzID0gJHRoaXMtPkdldE1lbWJlckdyb3Vwc0FycmF5KCAkdWlkICk7CmlmKCAhJGdyb3VwcyApIHsKICAgIC8vIHRoaXMgdXNlciBpcyBub3QgYSBtZW1iZXIgb2YgYW55IGdydW9wcy4uLgogICAgLy8gaGFuZGxlIHRoaXMgbGF0ZXIgdG9kbwogICAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlKCAkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJHRoaXMtPkxhbmcoJ2Vycm9yX25vZ3JvdXBzJykpOwogICAgcmV0dXJuOwp9CgovLyBub3cgd2UgaGF2ZSB0aGUgZ3JvdXBzLCB3ZSBidWlsZCBhIHVuaW9uIG9mIGFsbCBvZiB0aGUgZ3JvdXBzIHByb3BlcnRpZXMKJHByb3BlcnRpZXMgPSBhcnJheSgpOwpmb3JlYWNoKCAkZ3JvdXBzIGFzICRncnByZWNvcmQgKSB7CiAgICAkZ2lkID0gJGdycHJlY29yZFsnZ3JvdXBpZCddOwogICAgJHByb3ByZWxhdGlvbnMgPSAkdGhpcy0+R2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdpZCApOwogICAgaWYoIGlzX2FycmF5KCRwcm9wcmVsYXRpb25zKSAmJiBjb3VudCgkcHJvcHJlbGF0aW9ucykgPT0gMiAmJiAkcHJvcHJlbGF0aW9uc1swXSA9PT0gRkFMU0UgKSBjb250aW51ZTsKICAgIGlmKCBjb3VudCgkcHJvcGVydGllcykgKSB7CiAgICAgICAgJHByb3BlcnRpZXMgPSBSUlV0aWxzOjphcnJheV9tZXJnZV9ieV9uYW1lX3JlcXVpcmVkKCAkcHJvcGVydGllcywgJHByb3ByZWxhdGlvbnMgKTsKICAgIH0gZWxzZSB7CiAgICAgICAgJHByb3BlcnRpZXMgPSAkcHJvcHJlbGF0aW9uczsKICAgIH0KfQp1YXNvcnQoJHByb3BlcnRpZXMsIGFycmF5KCdjZ2VfYXJyYXknLCdjb21wYXJlX2VsZW1lbnRzX2J5X3NvcnRvcmRlcl9rZXknKSk7CgppZiggY291bnQoJHByb3BlcnRpZXMpID09IDAgKSB7CiAgICBpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVfb25lZ3JvdXAnKSA9PSAxICkgewogICAgICAgIC8vIHRoaXMgdXNlciBpcyBub3QgYSBtZW1iZXIgb2YgYW55IGdydW9wcy4uLgogICAgICAgIC8vIGhhbmRsZSB0aGlzIGxhdGVyIHRvZG8KICAgICAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UoICRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCcpKTsKICAgICAgICByZXR1cm47CiAgICB9Cn0KCi8vIG5vdyB3ZSdyZSByZWFkeSB0byBwb3B1bGF0ZSB0aGUgdGVtcGxhdGUKLy8gZmlyc3Qgd2UgcHV0IGluIHN0dWZmIHRoYXQgaXMgcmVxdWlyZWQgKHVzZXJuYW1lLCBwYXNzd29yZCwgZXRjLCBldGMpCiRyb3dhcnJheSA9IGFycmF5KCk7CgovLyBtYWtlIHN1cmUgdXNlcm5hbWUgaXMgaW4gdGhlcmUKLy8gd2UgY2FuIGhpZGUgaXQgaW4gdGhlIHRlbXBsYXRlLgokdmFsID0gJHVpbmZvWyd1c2VybmFtZSddOwokb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiRvbmVyb3ctPm5hbWUgPSAndXNlcm5hbWUnOwokb25lcm93LT50eXBlID0gKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZV9pc19lbWFpbCcpKT8yOjA7CiRvbmVyb3ctPmNvbG9yID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJywnYmx1ZScpOwokb25lcm93LT5tYXJrZXIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfbWFya2VyJywnKicpOwokb25lcm93LT5yZXF1aXJlZCA9IDE7CiRvbmVyb3ctPnByb21wdCA9ICRjb25zdW1lci0+Z2V0X3VzZXJuYW1lX3Byb21wdCgpOwokb25lcm93LT52YWx1ZSA9ICR2YWw7CiRvbmVyb3ctPmlucHV0X2lkID0gJ2ZldV9pbnB1dF91c2VybmFtZSc7CiRvbmVyb3ctPmlucHV0X25hbWUgPSAkaWQuJG9uZXJvdy0+aW5wdXRfaWQ7CiRvbmVyb3ctPmxlbmd0aCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZWZsZGxlbmd0aCcsNDApOwokb25lcm93LT5tYXhsZW5ndGggPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbWF4X3VzZXJuYW1lbGVuZ3RoJyw4MCk7CiRvbmVyb3ctPnJlYWRvbmx5ID0gKCEkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KGZldV9hdXRoX2NvbnN1bWVyOjpDQVBBQklMSVRZX0NIQU5HRVVTRVJOQU1FKSk7CgokdG1wID0gJ2Rpc2FibGVkPSJkaXNhYmxlZCInOwppZiggJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eShmZXVfYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9DSEFOR0VVU0VSTkFNRSkgKSAkdG1wID0gJyc7CiRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2ZldV9pbnB1dF91c2VybmFtZScsICR2YWwsICRvbmVyb3ctPmxlbmd0aCwgJG9uZXJvdy0+bWF4bGVuZ3RoLCAkdG1wKTsKJHJvd2FycmF5WyRvbmVyb3ctPm5hbWVdID0gJG9uZXJvdzsKCmlmKCAkY2FuX2NoYW5nZXBhc3N3ZCApIHsKICAgIC8vIGFuZCBwYXNzd29yZAogICAgJHZhbCA9ICcnOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydmZXVfaW5wdXRfcGFzc3dvcmQnXSApICkgJHZhbCA9ICRwYXJhbXNbJ2ZldV9pbnB1dF9wYXNzd29yZCddOwogICAgJG9uZXJvdyA9IG5ldyBTdGRDbGFzcygpOwogICAgJG9uZXJvdy0+bmFtZSA9ICdwYXNzd29yZCc7CiAgICAkb25lcm93LT50eXBlID0gJ3Bhc3N3b3JkJzsKICAgICRvbmVyb3ctPmNvbG9yID0gbnVsbDsKICAgICRvbmVyb3ctPnJlcXVpcmVkID0gKCR1aW5mb1snZm9yY2VfbmV3cHcnXSkgPyAxIDogMDsKICAgICRvbmVyb3ctPm1hcmtlciA9IG51bGw7CiAgICBpZiggJG9uZXJvdy0+cmVxdWlyZWQgKSB7CiAgICAgICAgJG9uZXJvdy0+Y29sb3IgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfY29sb3InLCdibHVlJyk7CiAgICAgICAgJG9uZXJvdy0+bWFya2VyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX21hcmtlcicsJyonKTsKICAgIH0KICAgICRvbmVyb3ctPnByb21wdCA9ICR0aGlzLT5MYW5nKCdwYXNzd29yZCcpOwogICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dFBhc3N3b3JkKCRpZCwgJ2ZldV9pbnB1dF9wYXNzd29yZCcsICR2YWwsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpKTsKICAgICRvbmVyb3ctPmFkZHRleHQgPSR0aGlzLT5MYW5nKCdpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCcpOwogICAgJG9uZXJvdy0+dmFsdWUgPSBudWxsOwogICAgJG9uZXJvdy0+aW5wdXRfaWQgPSAnZmV1X2lucHV0X3Bhc3N3b3JkJzsKICAgICRvbmVyb3ctPmlucHV0X25hbWUgPSAkaWQuJG9uZXJvdy0+aW5wdXRfaWQ7CiAgICAkb25lcm93LT5sZW5ndGggPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFzc3dvcmRmbGRsZW5ndGgnKTsKICAgICRvbmVyb3ctPm1heGxlbmd0aCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKTsKICAgICRvbmVyb3ctPnJlYWRvbmx5ID0gZmFsc2U7CiAgICAkcm93YXJyYXlbJG9uZXJvdy0+bmFtZV0gPSAkb25lcm93OwoKICAgIC8vIGFuZCBtYWtlIGhpbSByZXBlYXQgdGhlIHBhc3N3b3JkCiAgICAkdmFsID0gJyc7CiAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2ZldV9pbnB1dF9yZXBlYXRwYXNzd29yZCddICkgKSAkdmFsID0gJHBhcmFtc1snZmV1X2lucHV0X3JlcGVhdHBhc3N3b3JkJ107CiAgICAkb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiAgICAkb25lcm93LT5uYW1lID0gJ3JlcGVhdF9wYXNzd29yZCc7CiAgICAkb25lcm93LT50eXBlID0gJ3Bhc3N3b3JkJzsKICAgICRvbmVyb3ctPmNvbG9yID0gbnVsbDsKICAgICRvbmVyb3ctPm1hcmtlciA9IG51bGw7CiAgICAkb25lcm93LT5yZXF1aXJlZCA9ICgkdWluZm9bJ2ZvcmNlX25ld3B3J10pID8gMSA6IDA7CiAgICBpZiggJG9uZXJvdy0+cmVxdWlyZWQgKSB7CiAgICAgICAgJG9uZXJvdy0+bWFya2VyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX21hcmtlcicsJyonKTsKICAgICAgICAkb25lcm93LT5jb2xvciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9jb2xvcicsJ2JsdWUnKTsKICAgIH0KICAgICRvbmVyb3ctPnByb21wdCA9ICR0aGlzLT5MYW5nKCdyZXBlYXRwYXNzd29yZCcpOwogICAgJG9uZXJvdy0+Y29udHJvbCA9JHRoaXMtPkNyZWF0ZUlucHV0UGFzc3dvcmQoJGlkLCAnZmV1X2lucHV0X3JlcGVhdHBhc3N3b3JkJywgJHZhbCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYXNzd29yZGZsZGxlbmd0aCcpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpKTsKICAgICRvbmVyb3ctPmFkZHRleHQgPSR0aGlzLT5MYW5nKCdpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCcpOwogICAgJG9uZXJvdy0+dmFsdWUgPSBudWxsOwogICAgJG9uZXJvdy0+aW5wdXRfaWQgPSAnZmV1X2lucHV0X3JlcGVhdHBhc3N3b3JkJzsKICAgICRvbmVyb3ctPmlucHV0X25hbWUgPSAkaWQuJG9uZXJvdy0+aW5wdXRfaWQ7CiAgICAkb25lcm93LT5sZW5ndGggPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFzc3dvcmRmbGRsZW5ndGgnKTsKICAgICRvbmVyb3ctPm1heGxlbmd0aCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKTsKICAgICRvbmVyb3ctPnJlYWRvbmx5ID0gZmFsc2U7CiAgICAkcm93YXJyYXlbJG9uZXJvdy0+bmFtZV0gPSAkb25lcm93Owp9CgokZW5jcnlwdF9jb2xvciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzZWN1cmVfZmllbGRfY29sb3InLCd5ZWxsb3cnKTsKJGVuY3J5cHRfbWFya2VyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NlY3VyZV9maWVsZF9tYXJrZXInLCdeXicpOwoKCi8vIG5vdyBmb3IgdGhlIHByb3BlcnRpZXMKJHRoaXMtPlNldEVuY3J5cHRpb25LZXkoJHVpZCk7CmZvcmVhY2goICRwcm9wZXJ0aWVzIGFzICRwcm9wICkgewogICAgLy8gZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9uCiAgICAkZGVmbiA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm4oICRwcm9wWyduYW1lJ10gKTsKCiAgICBpZiggJHByb3BbJ3JlcXVpcmVkJ10gPT0gMyApIGNvbnRpbnVlOyAvLyBoaWRkZW4uCgogICAgJG9uZXJvdyA9IG5ldyBTdGRDbGFzcygpOwogICAgJG9uZXJvdy0+cHJvcG5hbWUgICAgPSAkcHJvcFsnbmFtZSddOwogICAgJG9uZXJvdy0+aW5wdXRfaWQgICAgPSAnZmV1X2lucHV0XycuJG9uZXJvdy0+cHJvcG5hbWU7CiAgICAkb25lcm93LT5pbnB1dF9uYW1lICA9ICRpZC4kb25lcm93LT5pbnB1dF9pZDsKICAgICR2YWwgPSAkdGhpcy0+R2V0VXNlclByb3BlcnR5RnVsbCggJHByb3BbJ25hbWUnXSwgJHVpZCApOwogICAgaWYoIGlzc2V0KCRwYXJhbXNbJG9uZXJvdy0+aW5wdXRfbmFtZV0pICkgJHZhbD0kcGFyYW1zWydmZXVfJy4kb25lcm93LT5pbnB1dF9uYW1lXTsKCgogICAgLy8gYmVnaW4gYnVpbGRpbmcgdGhlIG9iamVjdCB0aGF0IGNvbnRhaW5zIGRhdGEgZm9yIGJ1aWxkaW5nIHRoZSBmaWVsZHMuCiAgICAkb25lcm93LT50eXBlICAgICAgICA9ICRkZWZuWyd0eXBlJ107CiAgICAkb25lcm93LT5lbmNyeXB0ZWQgICA9ICRkZWZuWydlbmNyeXB0J107CiAgICAkb25lcm93LT5yZXF1aXJlZCAgICA9ICgkcHJvcFsncmVxdWlyZWQnXSA9PSAyKTsKICAgICRvbmVyb3ctPnJlYWRvbmx5ICAgID0gKCRwcm9wWydyZXF1aXJlZCddID09IDQpOwogICAgJG9uZXJvdy0+c3RhdHVzICAgICAgPSAkcHJvcFsncmVxdWlyZWQnXTsKICAgICRvbmVyb3ctPmNvbG9yICAgICAgID0gbnVsbDsKICAgICRvbmVyb3ctPm1hcmtlciAgICAgID0gbnVsbDs7CiAgICAkb25lcm93LT52YWx1ZSAgICAgICA9ICR2YWw7CiAgICAkb25lcm93LT5sZW5ndGggICAgICA9ICRkZWZuWydsZW5ndGgnXTsKICAgICRvbmVyb3ctPm1heGxlbmd0aCAgID0gJGRlZm5bJ21heGxlbmd0aCddOwogICAgJG9uZXJvdy0+cHJvbXB0ICAgICAgPSAkZGVmblsncHJvbXB0J107CiAgICBpZiggJGRlZm5bJ2VuY3J5cHQnXSApIHsKICAgICAgICAkb25lcm93LT5jb2xvciA9ICRlbmNyeXB0X2NvbG9yOwogICAgICAgICRvbmVyb3ctPm1hcmtlciA9ICRlbmNyeXB0X21hcmtlcjsKICAgIH0KICAgIGVsc2UgaWYoICRvbmVyb3ctPnJlcXVpcmVkICkgewogICAgICAgICRvbmVyb3ctPmNvbG9yID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJywnYmx1ZScpOwogICAgICAgICRvbmVyb3ctPm1hcmtlciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLCcqJyk7CiAgICB9CgogICAgc3dpdGNoKCAkZGVmblsndHlwZSddICkgewogICAgY2FzZSAwOiAvLyB0ZXh0CiAgICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJG9uZXJvdy0+aW5wdXRfbmFtZSwgJHZhbCwgJGRlZm5bJ2xlbmd0aCddLCAkZGVmblsnbWF4bGVuZ3RoJ10gKTsKICAgICAgICBicmVhazsKCiAgICBjYXNlIDE6IC8vIGNoZWNrYm94CiAgICAgICAgJG9uZXJvdy0+Y29udHJvbCAgPSAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCAkb25lcm93LT5pbnB1dF9uYW1lLDApOwogICAgICAgICRvbmVyb3ctPmNvbnRyb2wgIC49IFJSVXRpbHM6Om15Q3JlYXRlSW5wdXRDaGVja2JveCggJGlkLCAkb25lcm93LT5pbnB1dF9uYW1lLCAxLCAkdmFsKTsKICAgICAgICBicmVhazsKCiAgICBjYXNlIDI6IC8vIGVtYWlsCiAgICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoICRpZCwgJG9uZXJvdy0+aW5wdXRfbmFtZSwgJHZhbCwgJGRlZm5bJ2xlbmd0aCddLCAkZGVmblsnbWF4bGVuZ3RoJ10pOwogICAgICAgIGJyZWFrOwoKICAgIGNhc2UgMzogLy8gdGV4dGFyZWEKICAgICAgICAkZmxhZyA9IGZhbHNlOwogICAgICAgIGlmKCBpc3NldCgkZGVmblsnYXR0cmlicyddKSAmJiAhZW1wdHkoJGRlZm5bJ2F0dHJpYnMnXSkgKSB7CiAgICAgICAgICAgICRhdHRyaWJzID0gdW5zZXJpYWxpemUoJGRlZm5bJ2F0dHJpYnMnXSk7CiAgICAgICAgICAgIGlmKCBpc19hcnJheSgkYXR0cmlicykgJiYgaXNzZXQoJGF0dHJpYnNbJ3d5c2l3eWcnXSkgKSAkZmxhZyA9ICRhdHRyaWJzWyd3eXNpd3lnJ107CiAgICAgICAgfQogICAgICAgICRvbmVyb3ctPnd5c2l3eWcgPSAkZmxhZzsKICAgICAgICAkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZVRleHRBcmVhKCRmbGFnLCAkaWQsICR2YWwsICRvbmVyb3ctPmlucHV0X25hbWUpOwogICAgICAgIGJyZWFrOwoKICAgIGNhc2UgNDogLy8gZHJvcGRvd24KICAgICAgICAkb3B0cyA9ICR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10pOwogICAgICAgICRvbmVyb3ctPm9wdGlvbnMgPSBhcnJheV9mbGlwKCRvcHRzKTsKICAgICAgICAkb25lcm93LT5jb250cm9sID0gJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCAkb25lcm93LT5pbnB1dF9uYW1lLCAkb3B0cywgLTEsICR2YWwpOwogICAgICAgIGJyZWFrOwoKICAgIGNhc2UgNTogLy8gbXVsdGlzZWxlY3QKICAgICAgICAkb3B0cyA9ICR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10pOwogICAgICAgICRvbmVyb3ctPm9wdGlvbnMgPSBhcnJheV9mbGlwKCRvcHRzKTsKICAgICAgICAkb25lcm93LT5zZWxlY3RlZCA9IGV4cGxvZGUoJywnLCR2YWwpOwogICAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRTZWxlY3RMaXN0KCRpZCwgJG9uZXJvdy0+aW5wdXRfbmFtZS4nW10nLCAkb3B0cywgJG9uZXJvdy0+c2VsZWN0ZWQsICRkZWZuWydsZW5ndGgnXSk7CiAgICAgICAgYnJlYWs7CgogICAgY2FzZSA2OiAvLyBpbWFnZQogICAgICAgICRkZXN0RGlyMSA9ICRnQ21zLT5jb25maWdbJ3VwbG9hZHNfcGF0aCddLkRJUkVDVE9SWV9TRVBBUkFUT1I7CiAgICAgICAgJGRlc3REaXIxIC49ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywnZmV1c2VycycpLkRJUkVDVE9SWV9TRVBBUkFUT1I7CiAgICAgICAgJGRlc3REaXIyID0gJGdDbXMtPmNvbmZpZ1sndXBsb2Fkc191cmwnXS4nLyc7CiAgICAgICAgJGRlc3REaXIyIC49ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywnZmV1c2VycycpLicvJzsKICAgICAgICAkZmlsZTEgPSAkZGVzdERpcjEuJHZhbDsKICAgICAgICAkZmlsZTIgPSAkZGVzdERpcjIuJHZhbDsKICAgICAgICBpZiggaXNfcmVhZGFibGUoICRmaWxlMSApICYmIGlzX2ZpbGUoJGZpbGUxKSApIHsKICAgICAgICAgICAgJG9uZXJvdy0+aW1hZ2VfdXJsID0gJGZpbGUyOwogICAgICAgICAgICAkb25lcm93LT5pbWFnZSA9ICc8aW1nIHNyYz0iJy4kZmlsZTIuJyIgYWx0PSInLiR2YWwuJyIvPic7CiAgICAgICAgICAgIGlmKCAhJG9uZXJvdy0+cmVxdWlyZWQgKSB7CiAgICAgICAgICAgICAgICAkb25lcm93LT5wcm9tcHQyID0gJHRoaXMtPkxhbmcoJ3Byb21wdF9jbGVhcicpOwogICAgICAgICAgICAgICAgJG9uZXJvdy0+aW5wdXRfbmFtZTIgPSAkb25lcm93LT5pbnB1dF9uYW1lIC4gJ19jbGVhcic7CiAgICAgICAgICAgICAgICAkb25lcm93LT5jb250cm9sMiA9ICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJG9uZXJvdy0+aW5wdXRfbmFtZS4nX2NsZWFyJywgJ2NsZWFyJywnJyk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICRvbmVyb3ctPmlucHV0X25hbWUsJHZhbCkuJHRoaXMtPkNyZWF0ZUZpbGVVcGxvYWRJbnB1dCgkaWQsJ2ZldV8nLiRvbmVyb3ctPmlucHV0X25hbWUsICcnLCAkZGVmblsnbGVuZ3RoJ10pOwogICAgICAgIGJyZWFrOwoKICAgIGNhc2UgJzcnOiAvLyByYWRpbyBncm91cAogICAgICAgICRvcHRzID0gJHRoaXMtPkdldFNlbGVjdE9wdGlvbnMoJGRlZm5bJ25hbWUnXSk7CiAgICAgICAgJG9uZXJvdy0+b3B0aW9ucyA9IGFycmF5X2ZsaXAoJG9wdHMpOwogICAgICAgICRvbmVyb3ctPmNvbnRyb2wgPSAkdGhpcy0+Q3JlYXRlSW5wdXRSYWRpb0dyb3VwKCRpZCwgJG9uZXJvdy0+aW5wdXRfbmFtZSwgJG9wdHMsICR2YWwsICcnLCAnPGJyLz4nKTsKICAgICAgICBicmVhazsKCiAgICBjYXNlICc4JzogLy8gZGF0ZQogICAgICAgICRwYXJtcyA9IGFycmF5KCk7CiAgICAgICAgJHBhcm1zWydwcmVmaXgnXSA9ICRvbmVyb3ctPmlucHV0X2lkOwogICAgICAgIGlmKCAkdmFsICkgICRwYXJtc1sndGltZSddID0gJHZhbDsKICAgICAgICAkcGFybXNbJ3N0YXJ0X3llYXInXSA9ICItNSI7CiAgICAgICAgJHBhcm1zWydlbmRfeWVhciddID0gIisxMCI7CgogICAgICAgIGlmKCBpc3NldCgkZGVmblsnYXR0cmlicyddKSAmJiAhZW1wdHkoJGRlZm5bJ2F0dHJpYnMnXSkgKSB7CiAgICAgICAgICAgICRhdHRyaWJzID0gdW5zZXJpYWxpemUoJGRlZm5bJ2F0dHJpYnMnXSk7CiAgICAgICAgICAgIGlmKCBpc3NldCgkYXR0cmlic1snc3RhcnR5ZWFyJ10pICYmICFlbXB0eSgkYXR0cmlic1snc3RhcnR5ZWFyJ10pICkgJHBhcm1zWydzdGFydF95ZWFyJ10gPSAkYXR0cmlic1snc3RhcnR5ZWFyJ107CiAgICAgICAgICAgIGlmKCBpc3NldCgkYXR0cmlic1snZW5keWVhciddKSAmJiAhZW1wdHkoJGF0dHJpYnNbJ2VuZHllYXInXSkgKSAkcGFybXNbJ2VuZF95ZWFyJ10gPSAkYXR0cmlic1snZW5keWVhciddOwogICAgICAgIH0KCiAgICAgICAgJHN0ciA9ICd7aHRtbF9zZWxlY3RfZGF0ZSAnOwogICAgICAgIGZvcmVhY2goICRwYXJtcyBhcyAka2V5PT4kdmFsdWUgKSB7CiAgICAgICAgICAgICRzdHIuPSRrZXkuJz0iJy4kdmFsdWUuJyIgJzsKICAgICAgICB9CiAgICAgICAgJHN0ciAuPSAnfSc7CiAgICAgICAgJG9uZXJvdy0+Y29udHJvbCA9ICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YSgkc3RyKTsKICAgICAgICBicmVhazsKICAgIH0KICAgICRyb3dhcnJheVskcHJvcFsnbmFtZSddXSA9ICRvbmVyb3c7Cn0KCi8vIGZpbGwgaW4gdGhlIHZhcmlhYmxlcyBmb3IgdGhlIHRlbXBsYXRlCgokdGhldGVtcGxhdGUgPSBcZmV1X3V0aWxzOjpnZXRfdGVtcGxhdGUoJHBhcmFtcywnY2hhbmdlc2V0dGluZ3N0ZW1wbGF0ZScsJ0Zyb250RW5kVXNlcnM6OmNoc2V0dGluZ3MgZm9ybScpOwokdHBsID0gJHRoaXMtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCR0aGV0ZW1wbGF0ZSk7CmlmKCBpc3NldCggJHBhcmFtc1snZXJyb3InXSApICkgJHRwbC0+YXNzaWduKCdlcnJvcicsICRwYXJhbXNbJ2Vycm9yJ10gKTsKaWYoIGlzc2V0KCAkcGFyYW1zWydtZXNzYWdlJ10gKSApICR0cGwtPmFzc2lnbignbWVzc2FnZScsICRwYXJhbXNbJ21lc3NhZ2UnXSApOwoKJHRwbC0+YXNzaWduKCd0aXRsZScsJHRoaXMtPkxhbmcoJ3VzZXJfc2V0dGluZ3MnKSk7IC8vIGRlcHJlY2F0ZWQKJHRwbC0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoJGlkLCdkb191c2VyY2hhbmdlc2V0dGluZ3MnLCRyZXR1cm5pZCkpOwokdHBsLT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHRwbC0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnZmV1X3N1Ym1pdCcsJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKSk7IC8vIGRlcHJlY2F0ZWQKCmlmKCBpc3NldCggJHBhcmFtc1sncmV0dXJudG8nXSApICkgJHRwbC0+YXNzaWduKCdoaWRkZW4nLCAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdmZXVfcmV0dXJudG8nLCRwYXJhbXNbJ3JldHVybnRvJ10pKTsKJHRwbC0+YXNzaWduKCdmb3JtaWQnLCRpZCk7CiR0cGwtPmFzc2lnbignY29udHJvbHMnLCAkcm93YXJyYXkpOwokdHBsLT5hc3NpZ24oJ2NvbnRyb2xjb3VudCcsIGNvdW50KCRyb3dhcnJheSkpOwokdHBsLT5kaXNwbGF5KCk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCgovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi8vIERPIFRIRSBBQ1RJT04KLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwoKaWYgKCEgJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoKSkgIHsKICAgIGVjaG8gIkJyZWFraW5nIGFuIGVudHJ5LCBhcmUgd2U/IjsKICAgIHJldHVybjsKfQoKLy8gdGhlIHRhYnMKZWNobyAkdGhpcy0+U3RhcnRUYWJIZWFkZXJzKCk7CgppZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3Byb3BlcnRpZXMnKSApIHsKICAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlciggJ3Byb3BlcnRpZXMnLCAkdGhpcy0+TGFuZygndXNlcl9wcm9wZXJ0aWVzJykpOwp9CmlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnZ3JvdXBzJykgKSB7CiAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAnZ3JvdXBzJywgJHRoaXMtPkxhbmcoJ2dyb3VwcycpKTsKfQppZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3VzZXJzJykgKSB7CiAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAndXNlcnMnLCAkdGhpcy0+TGFuZygndXNlcnMnKSk7CiAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAndXNlcmhpc3RvcnknLCAkdGhpcy0+TGFuZygndXNlcmhpc3RvcnknKSk7CiAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCAnYWRtaW4nLCAkdGhpcy0+TGFuZygnYWRtaW4nKSk7Cn0KZWNobyAkdGhpcy0+RW5kVGFiSGVhZGVycygpOwoKLy8gVGhlY29udGVudCBvZiB0aGUgdGFicwplY2hvICR0aGlzLT5TdGFydFRhYkNvbnRlbnQoKTsKCmlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygncHJvcGVydGllcycpICkgewogIGVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdwcm9wZXJ0aWVzJywkcGFyYW1zKTsKICBpbmNsdWRlKF9fRElSX18uJy9mdW5jdGlvbi5hZG1pbl9wcm9wZXJ0aWVzdGFiLnBocCcpOwogIGVjaG8gJHRoaXMtPkVuZFRhYigpOwp9CgppZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2dyb3VwcycpICkgewogIGVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdncm91cHMnLCRwYXJhbXMpOwogIGluY2x1ZGUoX19ESVJfXy4nL2Z1bmN0aW9uLmFkbWluX2dyb3Vwc3RhYi5waHAnKTsKICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKfQppZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3VzZXJzJykgKSB7CiAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ3VzZXJzJywkcGFyYW1zKTsKICBpbmNsdWRlKF9fRElSX18uJy9mdW5jdGlvbi5hZG1pbl91c2Vyc3RhYi5waHAnKTsKICBlY2hvICR0aGlzLT5FbmRUYWIoKTsKCiAgZWNobyAkdGhpcy0+U3RhcnRUYWIoJ3VzZXJoaXN0b3J5JywkcGFyYW1zKTsKICBpbmNsdWRlKF9fRElSX18uJy9hY3Rpb24udXNlcmhpc3RvcnkucGhwJyk7CiAgZWNobyAkdGhpcy0+RW5kVGFiKCk7CgogIGVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdhZG1pbicsJHBhcmFtcyk7CiAgaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24uYWRtaW5fYWRtaW50YWIucGhwJyk7CiAgZWNobyAkdGhpcy0+RW5kVGFiKCk7Cn0KCmVjaG8gJHRoaXMtPkVuZFRhYkNvbnRlbnQoKTsKCj8+]]></data>
	</file>
	<file>
	  <filename>/action.do_addgroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKJGNvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwoKJGdpZCA9IGZhbHNlOwppZiggaXNzZXQoJHBhcmFtc1snZ3JvdXBfaWQnXSkgKSAkZ2lkID0gKGludCkkcGFyYW1zWydncm91cF9pZCddOwoKJGdyb3VwbmFtZSA9ICcnOwokZ3JvdXBkZXNjID0gJyc7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZ3JvdXBuYW1lJ10gKSApICRncm91cG5hbWUgPSB0cmltKCRwYXJhbXNbJ2lucHV0X2dyb3VwbmFtZSddKTsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9ncm91cGRlc2MnXSApICkgJGdyb3VwZGVzYyA9IHRyaW0oJHBhcmFtc1snaW5wdXRfZ3JvdXBkZXNjJ10pOwoKaWYoICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX0VESVRHUk9VUFMpICkgewogIC8vIG1ha2Ugc3VyZSB0aGUgcGFyYW1ldGVycyBhcmUgZmlsbGVkIGluCiAgaWYoICRncm91cG5hbWUgPT0gJycgfHwgJGdyb3VwZGVzYyA9PSAnJyApIHsKICAgIHVuc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKTsKICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAnMSc7CiAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHBhcmFtcycpOwogICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICByZXR1cm47CiAgfQoKICAvLyBtYWtlIHN1cmUgdGhlIGdyb3VwIG5hbWUgZG9lc24ndCBhbHJlYWR5IGV4aXN0CiAgJHRtcCA9ICR0aGlzLT5HZXRHcm91cElEKCAkZ3JvdXBuYW1lICk7CiAgaWYoICR0bXAgIT0gJGdpZCAmJiAkdG1wICE9ICcnICkgewogICAgdW5zZXQoJHBhcmFtc1snc3VibWl0J10pOwogICAgJHBhcmFtc1snZXJyb3InXSA9ICcxJzsKICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9ncm91cGV4aXN0cycpOwogICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICByZXR1cm47CiAgfQp9CgovLyBtYWtlIHN1cmUgbm90IGFsbCBwcm9wZXJ0aWVzIGFyZSBvZmYuCi8vIGFuZCB0aGF0IHdlJ3JlIG5vdCBzZXR0aW5nIGEgbG9zdHVuIGZsYWcgZm9yIGEgaGlkZGVuIG9yIG9wdGlvbmFsIGZpZWxkLgppZiggJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfRURJVEdST1VQUFJPUFMpICkgewogICAgJHJlbG5hZGRlZCA9IDA7CiAgICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkcGFyYW1zWydpbnB1dF9uYW1lJ10pOyAkaSsrICkgewogICAgICAgIGlmKCAkcGFyYW1zWydpbnB1dF9yZXF1aXJlZCddWyRpXSAhPSAwICkgJHJlbG5hZGRlZCsrOwogICAgICAgIGlmKCAkcGFyYW1zWydpbnB1dF9yZXF1aXJlZCddWyRpXSAhPSAyICkgewogICAgICAgICAgICAvLyBpdCdzIG5vdCBhIHJlcXVpcmVkIGZpZWxkLi4uLiBzbyBjYW4ndCBiZSB1c2VkIGluIGxvc3R1bgogICAgICAgICAgICAkc3RyID0gJHBhcmFtc1snaW5wdXRfbmFtZSddWyRpXTsKICAgICAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X2xvc3R1bl8nLiRzdHJdKSApIHsKICAgICAgICAgICAgICAgIHVuc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKTsKICAgICAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAnMSc7CiAgICAgICAgICAgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJyk7CiAgICAgICAgICAgICAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnYWRkZ3JvdXAnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIGlmKCAkcmVsbmFkZGVkID09IDAgKSB7CiAgICAgICAgdW5zZXQoJHBhcmFtc1snc3VibWl0J10pOwogICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAnMSc7CiAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX25vcmVsYXRpb25zJyk7CiAgICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgcmV0dXJuOwogICAgfQp9CgovLyB3ZSdyZSBjbGVhciB0byBhZGQgb3IgdXBkYXRlCmlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUR1JPVVBTKSApIHsKICBpZiggJGdpZCAhPT0gZmFsc2UgKSB7CiAgICAkcmV0ID0gJHRoaXMtPlNldEdyb3VwKCAkZ2lkLCAkZ3JvdXBuYW1lLCAkZ3JvdXBkZXNjICk7CiAgICBpZiggJHJldFswXSA9PSBGQUxTRSApIHsKICAgICAgdW5zZXQoJHBhcmFtc1snc3VibWl0J10pOwogICAgICAkcGFyYW1zWydlcnJvciddID0gJzEnOwogICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkcmV0WzFdOwogICAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnYWRkZ3JvdXAnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgICAgcmV0dXJuOwogICAgfQogIH0KICBlbHNlIHsKICAgICRyZXQgPSAkdGhpcy0+QWRkR3JvdXAoICRncm91cG5hbWUsICRncm91cGRlc2MgKTsKICAgIGlmKCAkcmV0WzBdID09IEZBTFNFICkgewogICAgICB1bnNldCgkcGFyYW1zWydzdWJtaXQnXSk7CiAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAnMSc7CiAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICRyZXRbMV07CiAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdhZGRncm91cCcsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICByZXR1cm47CiAgICB9CiAgICAkZ2lkID0gJHJldFsxXTsKICB9Cn0KCmlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUR1JPVVBQUk9QUykgKSB7CiAgLy8gYWxzbyBhZGQgdGhlIHByb3BlcnR5IGNob2ljZXMKICAkdGhpcy0+RGVsZXRlQWxsR3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdpZCApOwogIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCRwYXJhbXNbJ2lucHV0X25hbWUnXSk7ICRpKysgKSB7CiAgICAkcHJvcG5hbWUgPSAnJzsKICAgICRzb3J0b3JkZXIgPSAnJzsKICAgICRsb3N0dW4gPSAtMTsKICAgICRyZXF1aXJlZCA9IDA7CgogICAgJHByb3BuYW1lID0gJHBhcmFtc1snaW5wdXRfbmFtZSddWyRpXTsKICAgICRyZXF1aXJlZCA9ICRwYXJhbXNbJ2lucHV0X3JlcXVpcmVkJ11bJGldOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9sb3N0dW5fJy4kcHJvcG5hbWVdICkgKSB7CiAgICAgICRsb3N0dW4gPSAxOwogICAgfQoKICAgIGlmKCAkcmVxdWlyZWQgIT0gMCAmJiAkcHJvcG5hbWUgIT0gJycpIHsKICAgICAgJHJlcyA9ICR0aGlzLT5BZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRnaWQsICRwcm9wbmFtZSwgJGksICRsb3N0dW4sICRyZXF1aXJlZCApOwogICAgfQogIH0KfQoKLy8gc2VuZCBhbiBldmVudAokcGFybXMgPSBhcnJheSgpOwokcGFybXNbJ25hbWUnXSA9ICRncm91cG5hbWU7CiRwYXJtc1snZGVzY3JpcHRpb24nXSA9ICRncm91cGRlc2M7CiRwYXJtc1snaWQnXSA9ICRnaWQ7CiRzdHIgPSAnT25DcmVhdGVHcm91cCc7CmlmKCBpc3NldCgkcGFyYW1zWydncm91cF9pZCddKSApIHsKICAkc3RyID0gJ09uVXBkYXRlR3JvdXAnOwp9CiR0aGlzLT5TZW5kRXZlbnQoJHN0ciwkcGFybXMpOwokdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgkc3RyLCRwYXJtcyk7CgokdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdncm91cHMnICk7Ci8vIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.do_admintasks.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygndXNlcnNuZ3JvdXBzJykgKSByZXR1cm47CgppZiggaXNzZXQoICRwYXJhbXNbJ2J1dHRvbl9leHBvcnR1c2VyaGlzdG9yeSddICkgKSB7CiAgaW5jbHVkZShfX0RJUl9fLicvZnVuY3Rpb24uYWRtaW5fZXhwb3J0dXNlcmhpc3RvcnkucGhwJyk7Cn0KZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ2J1dHRvbl9jbGVhcnVzZXJoaXN0b3J5J10gKSApIHsKICBpbmNsdWRlKF9fRElSX18uJy9mdW5jdGlvbi5hZG1pbl9jbGVhcnVzZXJoaXN0b3J5LnBocCcpOwp9CiAgCi8vIEVPRg==]]></data>
	</file>
	<file>
	  <filename>/action.do_deletegroup.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ3JlbW92ZWdyb3VwcycgKSApIHJldHVybjsKCmlmICghaXNzZXQgKCRwYXJhbXNbJ2dyb3VwX2lkJ10pIHx8ICRwYXJhbXNbJ2dyb3VwX2lkJ10gPT0gIiIpIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nICgnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJykpOwogICAgcmV0dXJuOwp9CgokZ3JvdXAgPSAkdGhpcy0+R2V0R3JvdXBJbmZvKCAkcGFyYW1zWydncm91cF9pZCddICk7CmlmKCAhaXNzZXQoJGdyb3VwWydpZCddKSAmJiAkZ3JvdXBbMF0gPT0gRkFMU0UgKSB7CiAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkZ3JvdXBbMV0gKTsKICAgIHJldHVybjsKfQoKJHF1ZXJ5ID0gbmV3IGZldV91c2VyX3F1ZXJ5KCk7CiRxdWVyeS0+YWRkX2FuZF9vcHQoZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9HUk9VUElELCRncm91cFsnaWQnXSk7CiRycyA9ICRxdWVyeS0+ZXhlY3V0ZSgpOwppZiggJHJzLT5nZXRfZm91bmRfcm93cygpID4gMCApIHsKICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSAoJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nICgnZXJyb3Jfbm90ZW1wdHlncm91cCcpKTsKICAgIHJldHVybjsKfQoKJHJldCA9ICR0aGlzLT5EZWxldGVHcm91cEZ1bGwoICRwYXJhbXNbJ2dyb3VwX2lkJ10gKTsKaWYoICRyZXRbMF0gPT0gRkFMU0UgKSB7CiAgJHRoaXMtPl9EaXNwbGF5RXJyb3JQYWdlICgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwgJGdyb3VwWzFdICk7CiAgcmV0dXJuOwp9CgokcGFybXMgPSBhcnJheSgpOwokcGFybXNbJ2lkJ10gPSAkcGFyYW1zWydncm91cF9pZCddOwokcGFybXNbJ25hbWUnXSA9ICRncm91cFsnZ3JvdXBuYW1lJ107CiR0aGlzLT5TZW5kRXZlbnQoJ09uRGVsZXRlR3JvdXAnLCRwYXJtcyk7CiR0aGlzLT5fU2VuZE5vdGlmaWNhdGlvbkVtYWlsKCdPbkRlbGV0ZUdyb3VwJywkcGFybXMpOwoKJHRoaXMtPlJlZGlyZWN0VG9UYWIoJGlkLCAnZ3JvdXBzJyApOwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/action.do_deleteuser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ3JlbW92ZXVzZXJzJyApICkgcmV0dXJuOwokdGhpcy0+U2V0Q3VycmVudFRhYigndXNlcnMnKTsKCiR1c2VyX2lkID0gXGNnZV9wYXJhbTo6Z2V0X2ludCgkcGFyYW1zLCd1c2VyX2lkJyk7CmlmKCAkdXNlcl9pZCA8IDEgKSB7CiAgICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycpKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7CiAgICByZXR1cm47Cn0KCiR1c2VyID0gJHRoaXMtPkdldFVzZXJJbmZvKCAkcGFyYW1zWyd1c2VyX2lkJ10gKTsKaWYoICFpc19hcnJheSgkdXNlcikgfHwgJHVzZXJbMF0gPT0gRkFMU0UgKSB7CiAgICAkdGhpcy0+U2V0RXJyb3IoJHRoaXMtPkxhbmcoJ2Vycm9yX3VzZXJub3Rmb3VuZCcpKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCk7CiAgICByZXR1cm47Cn0KCi8vIEdldCBhbGwgb2YgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zLCBpZiB0aGV5J3JlIG9mIHR5cGUgNgovLyBhbmQgdGhlIHByb3BlcnR5IGlzIG5vdCBlbXB0eSwgdGhlbiB3ZSBtYXkKLy8gaGF2ZSB0byBkZWxldGUgYSBmaWxlIGFzIHdlbGwuCiRkZWZucyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CiRwcm9wX2FyeSA9IGFycmF5KCk7CiRkZXN0RGlyMSA9ICRnQ21zLT5jb25maWdbJ3VwbG9hZHNfcGF0aCddLkRJUkVDVE9SWV9TRVBBUkFUT1I7CiRkZXN0RGlyMSAuPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnaW1hZ2VfZGVzdGluYXRpb25fcGF0aCcsJ2ZldXNlcnMnKS5ESVJFQ1RPUllfU0VQQVJBVE9SOwokcmV0ID0gJHRoaXMtPkRlbGV0ZVVzZXJGdWxsKCAkcGFyYW1zWyd1c2VyX2lkJ10gKTsKaWYoICRyZXRbMF0gPT0gRkFMU0UgKSB7CiAgICAkdGhpcy0+U2V0RXJyb3IoJHJldFsxXSk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQpOwogICAgcmV0dXJuOwp9CgovLyBzZW5kIGFuIGV2ZW50CiRwYXJtc1sndWlkJ10gPSAkdXNlcl9pZDsKJHBhcm1zWyd1c2VybmFtZSddID0gJHVzZXJbMV1bJ3VzZXJuYW1lJ107CiR0aGlzLT5fU2VuZE5vdGlmaWNhdGlvbkVtYWlsKCdPbkRlbGV0ZVVzZXInLCRwYXJtcyk7CgovLyBhbmQgbG9nIGl0CmF1ZGl0KCAnJywgJHRoaXMtPkdldE5hbWUoKSwnRGVsZXRlZCBVc2VyICcuJHBhcmFtc1sndXNlcl9pZCddKTsKCiR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ3VzZXJzJyApOwoKLy8gRU9GCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.do_setprefs.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkgcmV0dXJuOwoKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9yZW1vdmVhbGwnXSApICkgewogICAgJHRoaXMtPkV4cGlyZVRlbXBDb2RlcygnLTUgeWVhcnMnKTsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ3ByZWZzJywgJycsICdhZG1pbl9zZXR0aW5ncycpOwp9CmVsc2UgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9yZW1vdmUxd2VlayddICkgKSB7CiAgICAkdGhpcy0+RXhwaXJlVGVtcENvZGVzKCctMSB3ZWVrJyk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdwcmVmcycsICcnLCAnYWRtaW5fc2V0dGluZ3MnKTsKfQplbHNlIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcmVtb3ZlMW1vbnRoJ10gKSApIHsKICAgICR0aGlzLT5FeHBpcmVUZW1wQ29kZXMoJy0xIG1vbnRoJyk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsICdwcmVmcycsICcnLCAnYWRtaW5fc2V0dGluZ3MnKTsKfQplbHNlIGlmKCBpc3NldCggJHBhcmFtc1snY2FuY2VsJ10gKSApIHsKICAgICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwgJ3ByZWZzJywgJycsICdhZG1pbl9zZXR0aW5ncycpOwp9CgoKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2F1dG9fY3JlYXRlX3Vua25vd24nLChpbnQpJHBhcmFtc1snYXV0b19jcmVhdGVfdW5rbm93biddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2F1dGhfbW9kdWxlJyx0cmltKCRwYXJhbXNbJ2F1dGhfbW9kdWxlJ10pKTsKCiRyYW5kb211c2VybmFtZSA9IDA7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcmFuZG9tdXNlcm5hbWUnXSkgKSAkcmFuZG9tdXNlcm5hbWUgPSAoaW50KSRwYXJhbXNbJ2lucHV0X3JhbmRvbXVzZXJuYW1lJ107CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VfcmFuZG9tdXNlcm5hbWUnLCRyYW5kb211c2VybmFtZSk7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZXhwaXJlYWdlJ10pICkgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2V4cGlyZWFnZV9tb250aHMnLChpbnQpJHBhcmFtc1snaW5wdXRfZXhwaXJlYWdlJ10pOwoKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJfc2Vzc2lvbl9leHBpcmVzJywgJHBhcmFtc1snaW5wdXRfc2Vzc2lvbnRpbWVvdXQnXSk7CgokY29va2llX2tlZXBhbGl2ZSA9IDA7CmlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfY29va2lla2VlcGFsaXZlJ10gKSApICRjb29raWVfa2VlcGFsaXZlID0gJHBhcmFtc1snaW5wdXRfY29va2lla2VlcGFsaXZlJ107CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdjb29raWVfa2VlcGFsaXZlJywkY29va2llX2tlZXBhbGl2ZSk7CmlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9zaWduaW5fYnV0dG9uJ10pICkgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3NpZ25pbl9idXR0b24nLCAkcGFyYW1zWydpbnB1dF9zaWduaW5fYnV0dG9uJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWxsb3dfcmVwZWF0ZWRfbG9naW5zJywoaXNzZXQoJHBhcmFtc1snaW5wdXRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10pPyRwYXJhbXNbJ2lucHV0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddOjApKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLCRwYXJhbXNbJ2lucHV0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnLCRwYXJhbXNbJ2lucHV0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddKTsKaWYgKGlzc2V0KCRwYXJhbXNbJ25vdGlmaWNhdGlvbnMnXSkpICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdub3RpZmljYXRpb25zJyxpbXBsb2RlKCcsJywkcGFyYW1zWydub3RpZmljYXRpb25zJ10pKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbl9hZGRyZXNzJywkcGFyYW1zWydub3RpZmljYXRpb25fYWRkcmVzcyddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbl9zdWJqZWN0JywkcGFyYW1zWydub3RpZmljYXRpb25fc3ViamVjdCddKTsKJHRoaXMtPlNldFRlbXBsYXRlKCdub3RpZmljYXRpb25fdGVtcGxhdGUnLCRwYXJhbXNbJ25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddKTsKCiRxdWVyeSA9ICJTRUxFQ1QgcGVybWlzc2lvbl9pZCBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJwZXJtaXNzaW9ucyBXSEVSRSBwZXJtaXNzaW9uX25hbWUgTElLRSAnRkVVICUnIjsKJGNvdW50ID0gJGRiLT5HZXRPbmUoJHF1ZXJ5KTsKCiRmZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zID0gMDsKaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gKSApICRmZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zID0gJHBhcmFtc1snaW5wdXRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucycsJGZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMpOwoKaWYgKGlzc2V0KCRwYXJhbXNbJ2lucHV0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSkgJiYgJHBhcmFtc1snaW5wdXRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddPT0xKSAgewogICAgLy8gdXNpbmcgRkVVc2VyLXNwZWNpZmljIHBlcm1pc3Npb25zLCBzbyBjcmVhdGUgdGhlbSBpZiBuZWNlc3NhcnkKICAgIGlmIChpbnR2YWwoJGNvdW50KSA9PSAwKSB7CiAgICAgICAgLy8gY3JlYXRlICdlbQogICAgICAgICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgQWRkIFVzZXJzJywnQWRkIEZyb250LUVuZCBVc2VycycpOwogICAgICAgICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IFVzZXJzJywnTW9kaWZ5IEZyb250LUVuZCBVc2VycycpOwogICAgICAgICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgUmVtb3ZlIFVzZXJzJywnUmVtb3ZlIEZyb250LUVuZCBVc2VycycpOwogICAgICAgICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdGRVUgQWRkIEdyb3VwcycsJ0FkZCBGcm9udC1FbmQgVXNlciBHcm91cHMnKTsKICAgICAgICAkdGhpcy0+Q3JlYXRlUGVybWlzc2lvbignRkVVIE1vZGlmeSBHcm91cHMnLCdNb2RpZnkgRnJvbnQtRW5kIFVzZXIgR3JvdXBzJyk7CiAgICAgICAgJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgR3JvdXAgQXNzaWdubWVudHMnLCdNb2RpZnkgRnJvbnQtRW5kIFVzZXIgR3JvdXAgQXNzaWdubWVudHMnKTsKICAgICAgICAkdGhpcy0+Q3JlYXRlUGVybWlzc2lvbignRkVVIFJlbW92ZSBHcm91cHMnLCdSZW1vdmUgRnJvbnQtRW5kIFVzZXIgR3JvdXBzJyk7CiAgICAgICAgJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnLCdNb2RpZnkgRnJvbnQtRW5kIFVzZXIgUHJvcGVydGllcycpOwogICAgfQp9CgokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZm9yY2Vsb2dvdXRfdGltZXMnLHRyaW0oJHBhcmFtc1snZm9yY2Vsb2dvdXRfdGltZXMnXSkpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZScsKGludCkkcGFyYW1zWydmb3JjZWxvZ291dF9zZXNzaW9uYWdlJ10pOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnZXhwaXJldXNlcnNfaW50ZXJ2YWwnLChpbnQpJHBhcmFtc1snZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSk7CmlmKCBpc3NldCgkcGFyYW1zWydwYWdldHlwZV9ncm91cHMnXSkgKSAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZXR5cGVfZ3JvdXBzJyxpbXBsb2RlKCcsJywkcGFyYW1zWydwYWdldHlwZV9ncm91cHMnXSkpOwokdGhpcy0+U2V0Q3VycmVudFRhYigncHJlZnMnKTsKJHRoaXMtPlNldEN1cnJlbnRBY3Rpb24oJ2FkbWluX3NldHRpbmdzJyk7CiR0aGlzLT5SZWRpcmVjdFRvVGFiKCk7CgovLyBFT0YKPz4=]]></data>
	</file>
	<file>
	  <filename>/action.do_userchangesettings.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiRyZXR1cm50byA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywncmV0dXJudG8nKTsKaWYoIGlzc2V0KCRwYXJhbXNbJ2ZldV9jYW5jZWwnXSkgKSB7CiAgICBpZiggJHJldHVybnRvICkgewogICAgICAgICRyZXR1cm5pZCA9ICR0aGlzLT5yZXNvbHZlX2FsaWFzX29yX2lkKCRyZXR1cm50bywkcmV0dXJuaWQpOwogICAgICAgICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHJldHVybmlkKTsKICAgIH0KfQoKJHVpZCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CmlmKCAkdWlkID09IGZhbHNlICkgewogICAgLy8gdXNlciBpc24ndCBsb2dnZWQgaW4KICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdlcnJvcl9ub3Rsb2dnZWRpbicpKTsKICAgIHJldHVybjsKfQokcmVzdWx0ID0gJHRoaXMtPkdldFVzZXJJbmZvKCAkdWlkICk7CmlmKCAkcmVzdWx0WzBdID09IEZBTFNFICkgewogICAgLy8gdXNlciBpc24ndCBsb2dnZWQgaW4KICAgICR0aGlzLT5fRGlzcGxheUVycm9yUGFnZSggJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQsICRyZXN1bHRbMV0pOwogICAgcmV0dXJuOwp9CiR1aW5mbyA9ICRyZXN1bHRbMV07CgokdXNlcm5hbWUgPSAkdWluZm9bJ3VzZXJuYW1lJ107CiRwYXNzd29yZCA9ICcnOwoKLy8gY2hlY2sgaWYgdXNlciBpcyBhbGxvd2VkIHRvIGNoYW5nZSBoaXMgdXNlcm5hbWUKJGNvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwppZiggJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eShmZXVfYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9DSEFOR0VVU0VSTkFNRSkgKSB7CiAgICBpZiggaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0X3VzZXJuYW1lJ10pICkgewogICAgICAgIC8vIHVzZXIgaXMgY2hhbmdpbmcgaGlzIHVzZXJuYW1lCiAgICAgICAgJHRtcCA9IHRyaW0oJHBhcmFtc1snZmV1X2lucHV0X3VzZXJuYW1lJ10pOwogICAgICAgIGlmKCAhJHRoaXMtPklzVmFsaWRVc2VybmFtZSgkdG1wLEZBTFNFLCR1aWQpICkgewogICAgICAgICAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWR1c2VybmFtZScpOwogICAgICAgICAgICAkdGhpcy0+bXlSZWRpcmVjdCgkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICAgIH0KICAgICAgICBpZiggJHRtcCApICR1c2VybmFtZSA9ICR0bXA7CiAgICB9Cn0KCi8vIGNoZWNrIGlmIHRoZSB1c2VyIGlzIGFsbG93ZWQgdG8gY2hhbmdlIGhpcyBwYXNzd29yZAppZiggJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eShmZXVfYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9DSEFOR0VQQVNTV0QpICkgewogICAgLy8gY2hhbmdlIHRoaXMgcGFzc3dvcmQKICAgICRwYXNzd29yZCA9IGNtc19odG1sX2VudGl0eV9kZWNvZGUodHJpbSgkcGFyYW1zWydmZXVfaW5wdXRfcGFzc3dvcmQnXSkpOwogICAgJHJlcGVhdCAgID0gY21zX2h0bWxfZW50aXR5X2RlY29kZSh0cmltKCRwYXJhbXNbJ2ZldV9pbnB1dF9yZXBlYXRwYXNzd29yZCddKSk7CiAgICBpZiggJHVpbmZvWydmb3JjZV9uZXdwdyddICYmICEkcGFzc3dvcmQgKSB7CiAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3JlcXVpcmVkZmllbGQnLCdwYXNzd29yZCcpOwogICAgICAgICR0aGlzLT5teVJlZGlyZWN0KCRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICB9CiAgICBpZiggJHVpbmZvWydmb3JjZV9uZXdwdyddICYmICEkcmVwZWF0ICkgewogICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9yZXF1aXJlZGZpZWxkJywncmVwZWF0cGFzc3dvcmQnKTsKICAgICAgICAkdGhpcy0+bXlSZWRpcmVjdCgkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgfQogICAgaWYoICRwYXNzd29yZCAhPSAkcmVwZWF0ICYmICRwYXNzd29yZCAhPSAnJykgewogICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9wYXNzd29yZG1pc21hdGNoJyk7CiAgICAgICAgJHRoaXMtPm15UmVkaXJlY3QoJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgIH0KCiAgICBpZiggJHBhc3N3b3JkICE9ICcnICYmICEkdGhpcy0+SXNWYWxpZFBhc3N3b3JkKCRwYXNzd29yZCkgKSB7CiAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXNzd29yZCcpOwogICAgICAgICR0aGlzLT5teVJlZGlyZWN0KCRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICB9Cn0KCi8vIGdldCBwcm9wZXJ0eSBkZWZpbml0aW9ucwokZGVmbnNieW5hbWUgPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZucygpOwoKLy8gR2V0IG1lbWJlciBncm91cHMKJGdyb3VwcyA9ICR0aGlzLT5HZXRNZW1iZXJHcm91cHNBcnJheSgkdWlkKTsKCi8vIEdldCBncm91cCBwcm9wZXJ0eSByZWxhdGlvbnMgaW50byBhIHVuaW9uLgokcHJvcGVydGllcyA9IGFycmF5KCk7CiR0bXAgPSBhcnJheSgpOwpmb3JlYWNoKCAkZ3JvdXBzIGFzICRvbmVncm91cCApIHsKICAgICRwcm9wcmVsYXRpb25zID0gJHRoaXMtPkdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRvbmVncm91cFsnZ3JvdXBpZCddICk7CiAgICAkdG1wID0gUlJVdGlsczo6YXJyYXlfbWVyZ2VfYnlfbmFtZV9yZXF1aXJlZCggJHRtcCwgJHByb3ByZWxhdGlvbnMgKTsKICAgIHVhc29ydCggJHRtcCwgYXJyYXkoJ2NnZV9hcnJheScsJ2NvbXBhcmVfZWxlbWVudHNfYnlfc29ydG9yZGVyX2tleScpICk7Cn0KJHByb3BlcnRpZXMgPSBjZ2VfYXJyYXk6OnRvX2hhc2goJHRtcCwnbmFtZScpOwoKJHVzZXJwcm9wcyA9ICR0aGlzLT5HZXRVc2VyUHJvcGVydGllcygkdWlkKTsKJGRlbGV0ZXByb3BzID0gYXJyYXkoKTsKCi8vIGRvIHZhbGlkYXRpb24gb2YgdGhlIGZpZWxkcy4KZm9yZWFjaCggJHByb3BlcnRpZXMgYXMgJHByb3BuYW1lID0+ICRwcm9wICkgewogICAgJGZsZHR5cGUgPSAkZGVmbnNieW5hbWVbJHByb3BuYW1lXVsndHlwZSddOwogICAgJHJlcXVpcmVkID0gKCRwcm9wWydyZXF1aXJlZCddID09IDIpOwogICAgJGhpZGRlbiAgID0gKCRwcm9wWydyZXF1aXJlZCddID09IDMpOwogICAgJHJlYWRvbmx5ID0gKCRwcm9wWydyZXF1aXJlZCddID09IDQpOwoKICAgIHN3aXRjaCggJGZsZHR5cGUgKSB7CiAgICBjYXNlIEZyb250RW5kVXNlcnM6OkZJRUxEVFlQRV9URVhUOgogICAgICAgIGlmKCAkcmVxdWlyZWQgKSB7CiAgICAgICAgICAgIGlmKCAhaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgfHwgZW1wdHkoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgKSB7CiAgICAgICAgICAgICAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICAgICAgICAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9yZXF1aXJlZGZpZWxkJywkZGVmbnNieW5hbWVbJHByb3BuYW1lXVsncHJvbXB0J10pOwogICAgICAgICAgICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgYnJlYWs7CgogICAgY2FzZSBGcm9udEVuZFVzZXJzOjpGSUVMRFRZUEVfQ0hFQ0tCT1g6CiAgICAgICAgaWYoICFpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdKSApIHsKICAgICAgICAgICAgJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSA9IDA7CiAgICAgICAgfQogICAgICAgIGlmKCAkcmVxdWlyZWQgKSB7CiAgICAgICAgICAgIGlmKCAkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdID09IDAgKSB7CiAgICAgICAgICAgICAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICAgICAgICAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9yZXF1aXJlZGZpZWxkJywkZGVmbnNieW5hbWVbJHByb3BuYW1lXVsncHJvbXB0J10pOwogICAgICAgICAgICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgYnJlYWs7CgogICAgY2FzZSBGcm9udEVuZFVzZXJzOjpGSUVMRFRZUEVfRU1BSUw6CiAgICAgICAgaWYoICRyZXF1aXJlZCApIHsKICAgICAgICAgICAgaWYoICFpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdKSApIHsKICAgICAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnKS4nICcuJHJlc3VsdFsxXTsKICAgICAgICAgICAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgJHJlc3VsdCA9ICR0aGlzLT5Jc1ZhbGlkRW1haWxBZGRyZXNzKCAkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdLCAkdWlkICk7CiAgICAgICAgICAgICAgICBpZiggJHJlc3VsdFswXSA9PSBmYWxzZSApIHsKICAgICAgICAgICAgICAgICAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICAgICAgICAgICAgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcycpLicgJy4kcmVzdWx0WzFdOwogICAgICAgICAgICAgICAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGJyZWFrOwoKICAgIGNhc2UgRnJvbnRFbmRVc2Vyczo6RklFTERUWVBFX1RFWFRBUkVBOgogICAgICAgIGlmKCAkcmVxdWlyZWQgJiYgIWlzc2V0KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0pICkgewogICAgICAgICAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3JlcXVpcmVkZmllbGQnLCRkZWZuc2J5bmFtZVskcHJvcG5hbWVdWydwcm9tcHQnXSk7CiAgICAgICAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICAgIH0KICAgICAgICBpZiggJHJlcXVpcmVkICYmIGVtcHR5KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0pICkgewogICAgICAgICAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3JlcXVpcmVkZmllbGQnLCRkZWZuc2J5bmFtZVskcHJvcG5hbWVdWydwcm9tcHQnXSk7CiAgICAgICAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICAgIH0KICAgICAgICBicmVhazsKCiAgICBjYXNlIEZyb250RW5kVXNlcnM6OkZJRUxEVFlQRV9NVUxUSVNFTEVDVDoKICAgICAgICBpZiggJHJlcXVpcmVkICYmICFpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdKSApIHsKICAgICAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9yZXF1aXJlZGZpZWxkJywkZGVmbnNieW5hbWVbJHByb3BuYW1lXVsncHJvbXB0J10pOwogICAgICAgICAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgICAgICB9CiAgICAgICAgLy8gZW5jb2RlIGl0IGludG8gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdC4KICAgICAgICBpZiggaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgKSB7CiAgICAgICAgICAgICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0gPSBpbXBsb2RlKCcsJywkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdICk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdID0gJyc7CiAgICAgICAgfQogICAgICAgIGJyZWFrOwoKICAgIGNhc2UgRnJvbnRFbmRVc2Vyczo6RklFTERUWVBFX0lNQUdFOgogICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWUuJ19jbGVhciddKSAmJgogICAgICAgICAgICAkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWUuJ19jbGVhciddID09ICdjbGVhcicgKSB7CiAgICAgICAgICAgIC8vIHdlJ3JlIHRvbGQgdG8gY2xlYXIgYW4gaW1hZ2UgcHJvcGVydHksIHdlIG11c3QgYWxzbwogICAgICAgICAgICAvLyBkZWxldGUgdGhlIGltYWdlCiAgICAgICAgICAgICRkZXN0RGlyMSA9ICRnQ21zLT5jb25maWdbJ3VwbG9hZHNfcGF0aCddLicvJzsKICAgICAgICAgICAgJGRlc3REaXIxIC49ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywnZmV1c2VycycpLicvJzsKICAgICAgICAgICAgJGZpbGUxID0gJGRlc3REaXIxLiRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV07CiAgICAgICAgICAgIEB1bmxpbmsoICRmaWxlMSApOwoKICAgICAgICAgICAgLy8gdW5zZXQgdGhlIGhpZGRlbiBwYXJhbSB0byBwcmV2ZW50IGFueSBmdXJ0aGVyIHByb2Nlc3NpbmcKICAgICAgICAgICAgJGRlbGV0ZXByb3BzW10gPSAkcHJvcG5hbWU7CiAgICAgICAgICAgIHVuc2V0KCAkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdICk7CiAgICAgICAgfQogICAgICAgIGlmKCAkcmVxdWlyZWQgJiYKICAgICAgICAgICAgKCghaXNzZXQoJF9GSUxFU1skaWQuJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0pIHx8ICRfRklMRVNbJGlkLidmZXVfaW5wdXRfJy4kcHJvcG5hbWVdWydzaXplJ10gPT0gMCkgJiYKICAgICAgICAgICAgICghaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgfHwgJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSA9PSAnJykpICkgewogICAgICAgICAgICAvLyBidXQgd2UgY2FuJ3QgZmluZCBhIHZhbHVlCiAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcmVxdWlyZWRmaWVsZCcsJHByb3BuYW1lKTsKICAgICAgICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgfQogICAgICAgIGJyZWFrOwoKICAgIGNhc2UgRnJvbnRFbmRVc2Vyczo6RklFTERUWVBFX0RBVEU6CiAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nTW9udGgnXSkgKSB7CiAgICAgICAgICAgICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0gPQogICAgICAgICAgICAgICAgbWt0aW1lKDAsMCwwLAogICAgICAgICAgICAgICAgICAgICAgICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nTW9udGgnXSwKICAgICAgICAgICAgICAgICAgICAgICAkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWUuJ0RheSddLAogICAgICAgICAgICAgICAgICAgICAgICRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nWWVhciddKTsKICAgICAgICAgICAgdW5zZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lLidNb250aCddKTsKICAgICAgICAgICAgdW5zZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lLidEYXknXSk7CiAgICAgICAgICAgIHVuc2V0KCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZS4nWWVhciddKTsKICAgICAgICB9CiAgICAgICAgaWYoICRyZXF1aXJlZCAmJiAhaXNzZXQoJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSkgKSB7CiAgICAgICAgICAgICRwYXJhbXNbJ2Vycm9yJ10gPSAxOwogICAgICAgICAgICAkcGFyYW1zWydtZXNzYWdlJ10gPSAkdGhpcy0+TGFuZygnZXJyb3JfcmVxdWlyZWRmaWVsZCcsJHByb3BuYW1lKTsKICAgICAgICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgfQogICAgICAgIGJyZWFrOwoKICAgIGNhc2UgRnJvbnRFbmRVc2Vyczo6RklFTERUWVBFX0RST1BET1dOOgogICAgY2FzZSBGcm9udEVuZFVzZXJzOjpGSUVMRFRZUEVfUkFESU9CVVROUzoKICAgICAgICBpZiggJHJlcXVpcmVkICYmICFpc3NldCgkcGFyYW1zWydmZXVfaW5wdXRfJy4kcHJvcG5hbWVdKSApIHsKICAgICAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9yZXF1aXJlZGZpZWxkJywkcHJvcG5hbWUpOwogICAgICAgICAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgICAgICB9CiAgICAgICAgYnJlYWs7CgogICAgZGVmYXVsdDoKICAgICAgICAvLyB3ZSBkb24ndCBhY2NlcHQgZmllbGQgdHlwZXMgbGlrZSB0aGlzCiAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2NhbnRzZXRwcm9wZXJ0eXR5cGUnLCRwcm9wbmFtZSk7CiAgICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgYnJlYWs7CiAgICB9Cn0KCgovLwovLyBub3cgd2UgYWN0dWFsbHkgY2hhbmdlIHRoZSB1c2VyIHNldHRpbmdzCi8vCgovLyBwYXNzd29yZAppZiggJHBhc3N3b3JkICE9ICcnIHx8ICR1c2VybmFtZSAhPSAnJyApIHsKICAgICRyZXN1bHQgPSAkdGhpcy0+U2V0VXNlciggJHVpZCwgJHVzZXJuYW1lLCAkcGFzc3dvcmQgKTsKICAgICR0aGlzLT5Gb3JjZVBhc3N3b3JkQ2hhbmdlKCR1aWQsRkFMU0UpOwogICAgaWYoICRyZXN1bHRbMF0gPT0gRkFMU0UgKSB7CiAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbycpLicgJy4kcmVzdWx0WzFdOwogICAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgfQp9CgovLwovLyBub3cgZGVsZXRlIGFsbCB0aGUgcHJvcGVydGllcyBmb3IgdGhpcyB1c2VyCi8vIGluIHByZXBhcmF0aW9uIGZvciBzZXR0aW5nIG5ldyBvbmVzLgovLwokdGhpcy0+U2V0RW5jcnlwdGlvbktleSgkdWlkKTsKJHRoaXMtPkZvcmNlQ2hhbmdlU2V0dGluZ3MoJHVpZCxGQUxTRSk7CmZvcmVhY2goICRkZWxldGVwcm9wcyBhcyAkb25lICkgewogICAgJHRoaXMtPkRlbGV0ZVVzZXJQcm9wZXJ0eUZ1bGwoICRvbmUsICR1aWQsIGZhbHNlICk7Cn0KZm9yZWFjaCggJHByb3BlcnRpZXMgYXMgJHByb3BuYW1lID0+ICRwcm9wICkgewogICAgJHJlcXVpcmVkID0gKCRwcm9wWydyZXF1aXJlZCddID09IDIpOwogICAgJGhpZGRlbiA9ICgkcHJvcFsncmVxdWlyZWQnXSA9PSAzKTsKICAgICRyZWFkb25seSA9ICgkcHJvcFsncmVxdWlyZWQnXSA9PSA0KTsKICAgICRmbGR0eXBlICA9ICRkZWZuc2J5bmFtZVskcHJvcG5hbWVdWyd0eXBlJ107CiAgICAkZm9yY2VfdW5pcXVlID0gJGRlZm5zYnluYW1lWyRwcm9wbmFtZV1bJ2ZvcmNlX3VuaXF1ZSddOwoKICAgIGlmKCAkcmVhZG9ubHkgfHwgJGhpZGRlbiApIGNvbnRpbnVlOyAvLyBjYW5ub3Qgc2V0IHJlYWRvbmx5IG9yIGhpZGRlbiBmaWVsZHMKCiAgICBpZiggJGZsZHR5cGUgPT0gRnJvbnRFbmRVc2Vyczo6RklFTERUWVBFX0lNQUdFICkgewogICAgICAgIC8vIGltYWdlIHR5cGUKICAgICAgICAkdmFsID0gJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXTsKICAgICAgICBpZiggaXNzZXQoICRfRklMRVNbJGlkLidmZXVfaW5wdXRfJy4kcHJvcG5hbWVdICkgJiYgJF9GSUxFU1skaWQuJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV1bJ3NpemUnXSA+IDApIHsKICAgICAgICAgICAgLy8gSXQgaXMgYW4gdXBsb2FkIGZpbGUgdHlwZQogICAgICAgICAgICAkcmVzdWx0ID0gJHRoaXMtPk1hbmFnZUltYWdlVXBsb2FkKCRpZC4nZmV1X2lucHV0XycuJHByb3BuYW1lLCAkcHJvcG5hbWUgKTsKICAgICAgICAgICAgaWYoICRyZXN1bHRbMF0gPT0gZmFsc2UgKSB7CiAgICAgICAgICAgICAgICAkcGFyYW1zWydlcnJvciddID0gMTsKICAgICAgICAgICAgICAgICRwYXJhbXNbJ21lc3NhZ2UnXSA9ICR0aGlzLT5MYW5nKCdlcnJvcicpLicmbmJzcDsnLiRyZXN1bHRbMV07CiAgICAgICAgICAgICAgICAkdGhpcy0+bXlSZWRpcmVjdCggJGlkLCAnY2hhbmdlc2V0dGluZ3MnLCAkcmV0dXJuaWQsICRwYXJhbXMgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICAkdmFsID0gJHJlc3VsdFsxXTsKICAgICAgICB9CiAgICB9CiAgICBlbHNlIGlmKCBpc3NldCggJHBhcmFtc1snZmV1X2lucHV0XycuJHByb3BuYW1lXSApICkgewogICAgICAgICR2YWwgPSB0cmltKCRwYXJhbXNbJ2ZldV9pbnB1dF8nLiRwcm9wbmFtZV0pOwogICAgICAgICR2YWwgPSBjbXNfaHRtbF9lbnRpdHlfZGVjb2RlKCR2YWwpOwoKICAgICAgICBpZiggJGZsZHR5cGUgPT0gRnJvbnRFbmRVc2Vyczo6RklFTERUWVBFX1RFWFQgKSB7CiAgICAgICAgICAgICR2YWwgPSBmaWx0ZXJfdmFyKCR2YWwsRklMVEVSX1NBTklUSVpFX1NUUklORyk7CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYoICRmbGR0eXBlID09IEZyb250RW5kVXNlcnM6OkZJRUxEVFlQRV9URVhUQVJFQSApIHsKICAgICAgICAgICAgJHZhbCA9IGNnZV91dGlsczo6Y2xlYW5faW5wdXRfaHRtbCgkdmFsKTsKICAgICAgICB9CiAgICB9CiAgICBlbHNlIHsKICAgICAgICBjb250aW51ZTsKICAgIH0KCiAgICAvLyBjaGVjayBmb3IgZm9yY2VkIHVuaXF1ZSB2YWx1ZXMuCiAgICBpZiggJHZhbCAmJiAkZm9yY2VfdW5pcXVlICYmICEkdGhpcy0+SXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZSggJHVpZCwgJHByb3BuYW1lLCAkdmFsICkgKSB7CiAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJywkcHJvcG5hbWUpOwogICAgICAgICR0aGlzLT5teVJlZGlyZWN0KCAkaWQsICdjaGFuZ2VzZXR0aW5ncycsICRyZXR1cm5pZCwgJHBhcmFtcyApOwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICAkcmV0ID0gJHRoaXMtPlNldFVzZXJQcm9wZXJ0eUZ1bGwoICRwcm9wbmFtZSwgJHZhbCwgJHVpZCApOwogICAgaWYoICRyZXQgPT0gZmFsc2UgKSB7CiAgICAgICAgJHBhcmFtc1snZXJyb3InXSA9IDE7CiAgICAgICAgJHBhcmFtc1snbWVzc2FnZSddID0gJHRoaXMtPkxhbmcoJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eScpLicgJy4kcHJvcG5hbWU7CiAgICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2NoYW5nZXNldHRpbmdzJywgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICAgICAgcmV0dXJuOwogICAgfQp9CgovLyBzZW5kIHRoZSBldmVudAokdGhpcy0+YWRkX2hpc3RvcnkoJHVpZCwnY2hhbmdlIHNldHRpbmdzJyk7CgokZXZlbnRfcGFyYW1zID0gYXJyYXkoKTsKJGV2ZW50X3BhcmFtc1snbmFtZSddID0gJHVpbmZvWyd1c2VybmFtZSddOwokZXZlbnRfcGFyYW1zWydpZCddID0gJHVpZDsKJHRoaXMtPlNlbmRFdmVudCgnT25VcGRhdGVVc2VyJywkZXZlbnRfcGFyYW1zKTsKJHRoaXMtPl9TZW5kTm90aWZpY2F0aW9uRW1haWwoJ09uVXBkYXRlVXNlcicsJGV2ZW50X3BhcmFtcyk7CgppZiggJHJldHVybnRvICkgewogICAgJHBhZ2VpZCA9ICR0aGlzLT5yZXNvbHZlX2FsaWFzX29yX2lkKCRyZXR1cm50byk7CiAgICBpZiggJHBhZ2VpZCApICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHBhZ2VpZCk7Cn0KaWYoICgkdXJsID0gJHRoaXMtPkdldFBvc3RMb2dpblVSTCgpICkgKSB7CiAgICByZWRpcmVjdCgkdXJsKTsKfQplbHNlIGlmKCAoJHRwbHN0ciA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRfYWZ0ZXJjaGFuZ2VzZXR0aW5ncycpKSApIHsKICAgICR0cGwgPSAkdGhpcy0+Q3JlYXRlU21hcnR5VGVtcGxhdGUoJ3N0cmluZzonLiR0cGxzdHIpOwogICAgJHRwbC0+YXNzaWduKCd1c2VybmFtZScsJHVpbmZvWyd1c2VybmFtZSddKTsKICAgICR0cGwtPmFzc2lnbigndXNlcmluZm8nLCR1aW5mbyk7CiAgICAkZ3JvdXBzID0gJHRoaXMtPkdldE1lbWJlckdyb3Vwc0FycmF5KCAkdGhpcy0+TG9nZ2VkaW5JZCgpICk7CiAgICAkZ3JvdXBuYW1lID0gJHRoaXMtPkdldEdyb3VwTmFtZSggJGdyb3Vwc1swXVsnZ3JvdXBpZCddICk7CiAgICAkdHBsLT5hc3NpZ24oJ2dyb3VwJywkZ3JvdXBuYW1lKTsKICAgICR0bXAgPSB0cmltKCR0cGwtPmZldGNoKCkpOwogICAgaWYoICR0bXAgKSB7CiAgICAgICAgJHBhZ2VpZCA9ICR0aGlzLT5yZXNvbHZlX2FsaWFzX29yX2lkKCR0bXApOwogICAgICAgIGlmKCAkcGFnZWlkICkgJHRoaXMtPlJlZGlyZWN0Q29udGVudCgkcGFnZWlkKTsKICAgIH0KfQoKJHBhcm1zID0gYXJyYXkoJ21lc3NhZ2UnPT4kdGhpcy0+TGFuZygnbXNnX3NldHRpbmdzY2hhbmdlZCcpKTsKJHRoaXMtPm15UmVkaXJlY3QoJ2NudG50MDEnLCdsb2dvdXRmb3JtJywkcmV0dXJuaWQsJHBhcm1zKTsK]]></data>
	</file>
	<file>
	  <filename>/action.forgotpw.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNSBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiR1c2VybmFtZSA9ICRlbWFpbCA9IG51bGw7CiRlcnJvciA9IG51bGw7CiRtZXNzYWdlID0gbnVsbDsKJHVzZXJuYW1lX2lzX2VtYWlsID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJywwKTsKJG5vY2FwdGNoYSA9IFxjZ2VfcGFyYW06OmdldF9ib29sKCRwYXJhbXMsJ25vY2FwdGNoYScsRkFMU0UpOwokcmV0dXJudG8gPSBcY2dlX3BhcmFtOjpnZXRfaW50KCRwYXJhbXMsJ3JldHVybnRvJywkcmV0dXJuaWQpOwoKJHRoZXRlbXBsYXRlID0gXGZldV91dGlsczo6Z2V0X3RlbXBsYXRlKCRwYXJhbXMsJ2ZvcmdvdHB3dGVtcGxhdGUnLCdGcm9udEVuZFVzZXJzOjpmb3Jnb3QgcGFzc3dvcmQgZm9ybScpOwokdHBsID0gJHRoaXMtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCR0aGV0ZW1wbGF0ZSk7CgppZiggaXNzZXQoJHBhcmFtc1snZmV1X2NhbmNlbCddKSApIHsKICAgICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHJldHVybnRvKTsKfQplbHNlIGlmKCBpc3NldCgkcGFyYW1zWydmZXVfc3VibWl0J10pICkgewogICAgdHJ5IHsKICAgICAgICAvLyBtYWtlIHN1cmUgd2UgaGF2ZSBhIHVzZXJuYW1lCiAgICAgICAgJHVzZXJuYW1lID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdmZXVfdXNlcm5hbWUnKTsKICAgICAgICBpZiggISR1c2VybmFtZSApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJykpOwogICAgICAgIGlmKCAkdXNlcm5hbWVfaXNfZW1haWwgJiYgIWlzX2VtYWlsKCR1c2VybmFtZSkgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnKSk7CgogICAgICAgIC8vIHZhbGlkYXRlIHRoZSBjYXB0Y2hhCiAgICAgICAgaWYoICEkbm9jYXB0Y2hhICkgewogICAgICAgICAgICAkY2FwdGNoYSA9IFxjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0NhcHRjaGEnKTsKICAgICAgICAgICAgaWYoIGlzX29iamVjdCgkY2FwdGNoYSkgJiYgISRjYXB0Y2hhLT5DaGVja0NhcHRjaGEoXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdmZXVfaW5wdXRfY2FwdGNoYScpKSApIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfY2FwdGNoYW1pc21hdGNoJykpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAvLyBzZWUgaWYgd2UgY2FuIGZpbmQgdGhpcyB1c2VyCiAgICAgICAgJHVpZCA9ICR0aGlzLT5HZXRVc2VySUQoJHVzZXJuYW1lKTsKICAgICAgICBpZiggISR1aWQgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX3VzZXJub3Rmb3VuZCcpKTsKICAgICAgICAkdG1wID0gJHRoaXMtPkdldFVzZXJJbmZvKCR1aWQpOwogICAgICAgIGlmKCAhJHRtcCB8fCAhJHRtcFswXSApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfY291bGRub3RmaW5kZW1haWwnKSk7CiAgICAgICAgJHVzZXJfaW5mbyA9ICR0bXBbMV07CiAgICAgICAgdW5zZXQoJHRtcCk7CiAgICAgICAgaWYoICR1c2VyX2luZm9bJ2Rpc2FibGVkJ10gKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2FjY291bnRkaXNhYmxlZCcpKTsKICAgICAgICBpZiggdGltZSgpID4gc3RydG90aW1lKCR1c2VyX2luZm9bJ2V4cGlyZXMnXSkgKSAgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9hY2NvdW50ZXhwaXJlZCcpKTsKICAgICAgICAkZW1haWwgPSAkdXNlcm5hbWU7CiAgICAgICAgaWYoICEkdXNlcm5hbWVfaXNfZW1haWwgKSB7CiAgICAgICAgICAgICRlbWFpbCA9ICR0aGlzLT5HZXRFbWFpbCgkdWlkKTsKICAgICAgICAgICAgaWYoICEkZW1haWwgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJykpOwogICAgICAgIH0KCiAgICAgICAgLy8gc2VlIGlmIHdlIGhhdmUgYSB0ZW1wY29kZSBmb3IgdGhpcyB1c2VyIGFscmVhZHkKICAgICAgICBpZiggISR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJykgJiYgJHRoaXMtPkdldFVzZXJUZW1wQ29kZSgkdWlkKSApIHsKICAgICAgICAgICAgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9yZXNldGFscmVhZHlzZW50JykpOwogICAgICAgIH0KCiAgICAgICAgLy8KICAgICAgICAvLyB3b290Li4uIGF0IHRoaXMgcG9pbnQgaXQgYWxsIHdvcmtlZC4KICAgICAgICAvLyByZWFkeSB0byBnZXQgYSB0ZW1wIGNvZGUgYW5kIHNlbmQgYW4gZW1haWwuCiAgICAgICAgLy8KICAgICAgICAkY29kZSA9IHN1YnN0cihzdHJ0b3VwcGVyKG1kNShfX0ZJTEVfXy4kdXNlcm5hbWUubWljcm90aW1lKCkpKSwwLDI1KTsKICAgICAgICAkdGhpcy0+U2V0VXNlclRlbXBDb2RlKCAkdWlkLCAkY29kZSApOwoKICAgICAgICAvLyBzZW5kIG91ciBmdW5reSBlbWFpbAogICAgICAgICRkZXN0cGFnZSA9ICRyZXR1cm5pZDsKICAgICAgICAkdG1wID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZGZvcmdvdHBhc3N3ZCcpOwogICAgICAgIGlmKCAkdG1wICkgJGRlc3RwYWdlID0gJHRoaXMtPnJlc29sdmVfYWxpYXNfb3JfaWQoJHRtcCwkdG1wKTsKCiAgICAgICAgJHRoZXRlbXBsYXRlID0gXGZldV91dGlsczo6Z2V0X3RlbXBsYXRlKCRwYXJhbXMsJ2ZvcmdvdHB3ZW1haWx0ZW1wbGF0ZScsJ0Zyb250RW5kVXNlcnM6OmZvcmdvdCBwYXNzd29yZCBlbWFpbCcpOwogICAgICAgICR0cGwyID0gJHRoaXMtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCR0aGV0ZW1wbGF0ZSk7CiAgICAgICAgJHRwbDItPmFzc2lnbigndGl0bGUnLCR0aGlzLT5MYW5nKCd0aXRsZV9mb3Jnb3Rwd2VtYWlsJykpOwogICAgICAgICR0cGwyLT5hc3NpZ24oJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCcsJHRoaXMtPkxhbmcoJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCcpKTsKICAgICAgICAkdHBsMi0+YXNzaWduKCdtZXNzYWdlX2ZvcmdvdHB3bWFpbCcsJHRoaXMtPkxhbmcoJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCcpKTsKICAgICAgICAkdHBsMi0+YXNzaWduKCdwcm9tcHRfY29kZScsJHRoaXMtPkxhbmcoJ3Byb21wdF9jb2RlJykpOwogICAgICAgICR0cGwyLT5hc3NpZ24oJ2RhdGFfY29kZScsJGNvZGUpOwogICAgICAgICR0cGwyLT5hc3NpZ24oJ3Byb21wdF9saW5rJywkdGhpcy0+TGFuZygncHJvbXB0X2xpbmsnKSk7CiAgICAgICAgJHByZXR0eSA9ICJmZXUvdmVyaWZ5Y29kZS8kZGVzdHBhZ2UvJHVpZC8kY29kZSI7CiAgICAgICAgJHBhcm1zID0gYXJyYXkoJ3VpZCc9PiR1aWQsJ2NvZGUnPT4kY29kZSk7CiAgICAgICAgJHRwbDItPmFzc2lnbignZGF0YV91cmwnLCR0aGlzLT5jcmVhdGVfdXJsKCdjbnRudDAnLCd2ZXJpZnljb2RlJywkZGVzdHBhZ2UsJHBhcm1zLGZhbHNlLGZhbHNlLCRwcmV0dHkpKTsKICAgICAgICAkYm9keSA9ICR0cGwyLT5mZXRjaCgpOwoKICAgICAgICAkY21zbWFpbGVyID0gbmV3IFxjbXNfbWFpbGVyKCk7CiAgICAgICAgJGNtc21haWxlci0+cmVzZXQoKTsKICAgICAgICAkY21zbWFpbGVyLT5BZGRBZGRyZXNzKCRlbWFpbCk7CiAgICAgICAgJGNtc21haWxlci0+U2V0Qm9keSgkYm9keSk7CiAgICAgICAgJGNtc21haWxlci0+U2V0U3ViamVjdCgkdGhpcy0+TGFuZygnbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCcpKTsKICAgICAgICAkY21zbWFpbGVyLT5Jc0hUTUwodHJ1ZSk7CiAgICAgICAgJGNtc21haWxlci0+U2V0UHJpb3JpdHkoMSk7CiAgICAgICAgJGNtc21haWxlci0+U2VuZCgpOwoKICAgICAgICAvLyBhdWRpdCBzb21ldGhpbmcKICAgICAgICBhdWRpdCgkdWlkLCR0aGlzLT5HZXROYW1lKCksJ1JlcXVlc3RlZCBhIHBhc3N3b3JkIHJlc2V0IGNvZGUnKTsKCiAgICAgICAgJHRoaXMtPmFkZF9oaXN0b3J5KCR1aWQsJ2ZvcmdvdHB3Jyk7CgogICAgICAgIC8vIGFuZCB3ZSdyZSBkb25lLCBkbyBhIHJlZGlyZWN0IGFmdGVyIHBvc3QKICAgICAgICAkdGhpcy0+U2hvd0Zvcm1hdHRlZE1lc3NhZ2UoJHRoaXMtPkxhbmcoJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCcsJGVtYWlsKSxmYWxzZSwkdGhpcy0+TGFuZygndGl0bGVfZm9yZ290cHcnKSk7CiAgICAgICAgcmV0dXJuOwogICAgfQogICAgY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgJGVycm9yID0gMTsKICAgICAgICAkbWVzc2FnZSA9ICRlLT5HZXRNZXNzYWdlKCk7CiAgICB9Cn0KCi8vIGNyZWF0ZSBhbmQgZGlzcGxheSB0aGUgdGVtcGxhdGUuCiR0cGwtPmFzc2lnbignZXJyb3InLCRlcnJvcik7CiR0cGwtPmFzc2lnbignbWVzc2FnZScsJG1lc3NhZ2UpOwokdHBsLT5hc3NpZ24oJ3VzZXJuYW1lJywkdXNlcm5hbWUpOwokY2FwdGNoYSA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ2FwdGNoYScpOwppZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSAmJiAhJG5vY2FwdGNoYSApIHsKICAgICR0cGwtPmFzc2lnbignY2FwdGNoYV90aXRsZScsJHRoaXMtPkxhbmcoJ2NhcHRjaGFfdGl0bGUnKSk7CiAgICAkdHBsLT5hc3NpZ24oJ2NhcHRjaGEnLCRjYXB0Y2hhLT5nZXRDYXB0Y2hhKCkpOwogICAgJHRlc3QgPSBtZXRob2RfZXhpc3RzKCRjYXB0Y2hhLCAnTmVlZHNJbnB1dEZpZWxkJykgPyAkY2FwdGNoYS0+TmVlZHNJbnB1dEZpZWxkKCkgOiB0cnVlOwogICAgaWYoICR0ZXN0ICkgJHRwbC0+YXNzaWduKCdpbnB1dF9jYXB0Y2hhJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ2ZldV9pbnB1dF9jYXB0Y2hhJywnJywxMCkpOwp9CiRwYXJtcyA9IGFycmF5KCk7CiRwYXJtc1snbm9jYXB0Y2hhJ10gPSAkbm9jYXB0Y2hhOwokcGFybXNbJ3JldHVybnRvJ10gPSAkcmV0dXJudG87CiR0cGwtPmFzc2lnbignc3RhcnRmb3JtJywkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2ZvcmdvdHB3JywgJHJldHVybmlkLCAkcGFybXMgKSk7CiR0cGwtPmFzc2lnbignZW5kZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiR0cGwtPmFzc2lnbigndXNlcm5hbWVfaXNfZW1haWwnLCR1c2VybmFtZV9pc19lbWFpbCk7CiR0cGwtPmFzc2lnbigndW5mbGRsZW4nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZWZsZGxlbmd0aCcpKTsKJHRwbC0+YXNzaWduKCdtYXhfdW5mbGRsZW4nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnKSk7CiR0cGwtPmRpc3BsYXkoKTsKCiMKIyBFT0YKIw==]]></data>
	</file>
	<file>
	  <filename>/action.login.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNSBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgcmV0dXJuOwoKaWYoICFjbGFzc19leGlzdHMoJ0ZldUxvZ2luRmFpbGVkZXhjZXB0aW9uJykgKSB7CiAgICBjbGFzcyBGZXVMb2dpbkZhaWxlZEV4Y2VwdGlvbiBleHRlbmRzIFxSdW50aW1lRXhjZXB0aW9uIHt9Cn0KCgokY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CmlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KGZldV9hdXRoX2NvbnN1bWVyOjpDQVBBQklMSVRZX0xPR0lOKSApIHsKICAgIC8vIHRoZSBjb25zdW1lciBwcm92aWRlcyB0aGUgbG9naW4gY2FwYWJpbGl0aWVzCiAgICBlY2hvICRjb25zdW1lci0+Z2V0X2xvZ2luX2Rpc3BsYXkoJGlkLCRyZXR1cm5pZCwkcGFyYW1zKTsKICAgIHJldHVybjsKfQoKdHJ5IHsKICAgICRlcnJvciA9ICR1c2VybmFtZSA9ICRwYXNzd29yZCA9ICRyZW1lbWJlcm1lID0gbnVsbDsKICAgICRpbmxpbmUgPSBcY2dlX3BhcmFtOjpnZXRfYm9vbCgkcGFyYW1zLCdpbmxpbmUnKTsKICAgICRub2NhcHRjaGEgPSBcY2dlX3BhcmFtOjpnZXRfYm9vbCgkcGFyYW1zLCdub2NhcHRjaGEnKTsKICAgICRyZXR1cm50byA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywncmV0dXJudG8nKTsKICAgICRvbmx5Z3JvdXBzID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdvbmx5X2dyb3VwcycpOwoKICAgIGlmKCBpc3NldCgkcGFyYW1zWydzdWJtaXQnXSkgfHwgaXNzZXQoJHBhcmFtc1snZmV1X3N1Ym1pdCddKSApIHsKICAgICAgICAkdXNlcm5hbWUgPSBudWxsOwogICAgICAgIHRyeSB7CiAgICAgICAgICAgIC8vIGNoZWNrIHRoZSBob25leXBvdAogICAgICAgICAgICBpZiggaXNzZXQoJHBhcmFtc1snZmV1X19kYXRhJ10pICkgewogICAgICAgICAgICAgICAgJGhvbmV5cG90ID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdmZXVfX2RhdGEnKTsKICAgICAgICAgICAgICAgIGlmKCAkaG9uZXlwb3QgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX3lvdWFyZWFib3QnKSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIC8vIHRoaXMgaXMgdGhlIGd1dHMgb2YgdGhlIGxvZ2luIHByb2Nlc3MuCiAgICAgICAgICAgICR1c2VybmFtZSA9IGNtc19odG1sX2VudGl0eV9kZWNvZGUoXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdmZXVfaW5wdXRfdXNlcm5hbWUnKSk7CiAgICAgICAgICAgICRwYXNzd29yZCA9IGNtc19odG1sX2VudGl0eV9kZWNvZGUoXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdmZXVfaW5wdXRfcGFzc3dvcmQnKSk7CiAgICAgICAgICAgICRyZW1lbWJlcm1lID0gXGNnZV9wYXJhbTo6Z2V0X2Jvb2woJHBhcmFtcywnZmV1X3JlbWVtYmVybWUnKTsKCiAgICAgICAgICAgIC8vIGNoZWNrIHVzZXJuYW1lICYgcGFzc3dvcmQKICAgICAgICAgICAgaWYoICEkdXNlcm5hbWUgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3Npbmd1c2VybmFtZScpKTsKICAgICAgICAgICAgaWYoICEkcGFzc3dvcmQgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX21pc3NpbmdwYXNzd29yZCcpKTsKCiAgICAgICAgICAgIC8vIGRvIEJlZm9yZUxvZ2luLi4uIHRoZXNlIHJlZmVyZW5jZXMgYXJlIHByZXR0eSBoYWNreQogICAgICAgICAgICAkaXAgPSBcY2dlX3V0aWxzOjpnZXRfcmVhbF9pcCgpOwogICAgICAgICAgICAkb2sgPSB0cnVlOwogICAgICAgICAgICAkbXNnID0gbnVsbDsKICAgICAgICAgICAgJHBhcm1zID0gWyAndXNlcm5hbWUnPT4kdXNlcm5hbWUsICdncm91cHMnPT4kb25seWdyb3VwcywgJ2lwJz0+JGlwLCAnYWxsb3cnPT4mJG9rLCAnbWVzc2FnZSc9PiYkbXNnIF07CiAgICAgICAgICAgICR0aGlzLT5TZW5kRXZlbnQoJ0JlZm9yZUxvZ2luJywgJHBhcm1zICk7CiAgICAgICAgICAgIGlmKCAhXGNtc190b19ib29sKCRvaykgKSB0aHJvdyBuZXcgXEZldUxvZ2luRmFpbGVkRXhjZXB0aW9uKCRtc2cpOwoKICAgICAgICAgICAgLy8gY2hlY2sgdGhlIGNhcHRjaGEKICAgICAgICAgICAgaWYoICEkbm9jYXB0Y2hhICkgewogICAgICAgICAgICAgICAgJGNhcHRjaGEgPSBcY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdDYXB0Y2hhJyk7CiAgICAgICAgICAgICAgICBpZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSAmJiAhJGNhcHRjaGEtPkNoZWNrQ2FwdGNoYShcY2dlX3BhcmFtOjpnZXRfc3RyaW5nKCRwYXJhbXMsJ2ZldV9pbnB1dF9jYXB0Y2hhJykpICkgewogICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBcRmV1TG9naW5GYWlsZWRFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCcpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgLy8gY2hlY2sgcGFzc3dvcmQsIGJ1dCBkbyBub3QgbG9naW4KICAgICAgICAgICAgJHVpZCA9ICR0aGlzLT5DaGVja1Bhc3N3b3JkKCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJG9ubHlncm91cHMgKTsKICAgICAgICAgICAgaWYoICR1aWQgPCAxICkgdGhyb3cgbmV3IFxGZXVMb2dpbkZhaWxlZEV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfbG9naW5mYWlsZWQnKSk7CgogICAgICAgICAgICAvLyBsb2dpbiBwYXNzZWQuLi4gbm93IGRvIHRoZSBhZnRlcmxvZ2luYXV0aCBldmVudAogICAgICAgICAgICAvLyB0byBzZWUgaWYgYW55IG90aGVyIG1vZHVsZSBpcyBwcmV2ZW50aW5nIGxvZ2luLgogICAgICAgICAgICAvLyByZWZlcmVuY2VzIGFyZSBwcmV0dHkgaGFja3kuCiAgICAgICAgICAgICRvayA9IHRydWU7CiAgICAgICAgICAgICRtc2cgPSBudWxsOwogICAgICAgICAgICAkcGFybXMgPSBbICdpZCc9PiR1aWQsICd1c2VybmFtZSc9PiR1c2VybmFtZSwgJ2dyb3Vwcyc9PiRvbmx5Z3JvdXBzLCAnaXAnPT4kaXAsICdhbGxvdyc9PiYkb2ssICdtZXNzYWdlJz0+JiRtc2cgXTsKICAgICAgICAgICAgJHRoaXMtPlNlbmRFdmVudCgnQWZ0ZXJMb2dpbkF1dGgnLCAkcGFybXMgKTsKICAgICAgICAgICAgaWYoICFcY21zX3RvX2Jvb2woJG9rKSApIHRocm93IG5ldyBcRmV1TG9naW5GYWlsZWRFeGNlcHRpb24oJG1zZyk7CgogICAgICAgICAgICAvLyBnZXQgdWlkIGFuZCB1c2VyaW5mbwogICAgICAgICAgICAkcmVzID0gJHRoaXMtPkdldFVzZXJJbmZvKCR1aWQpOwogICAgICAgICAgICBpZiggISRyZXNbMF0gKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX3VzZXJub3Rmb3VuZCcpKTsgLy8gc2hvdWxkIG5ldmVyIGV2ZXIgaGFwcGVuLgogICAgICAgICAgICAkdXNlcl9pbmZvID0gJHJlc1sxXTsKCiAgICAgICAgICAgIGlmKCAhZW1wdHkoJHVzZXJfaW5mb1snbXVzdF92YWxpZGF0ZSddKSAmJiAkdXNlcl9pbmZvWydtdXN0X3ZhbGlkYXRlJ10gKSB7CiAgICAgICAgICAgICAgICAvLyByZWRpcmVjdCB0byB0aGUgdmVyaWZ5b25seSBhY3Rpb24uLi4KICAgICAgICAgICAgICAgICRnZW5lcmF0b3IgPSBuZXcgXEZyb250RW5kVXNlcnNcZW1haWxfdmVyaWZ5X2Fzc2lzdGFudCgkdWlkKTsKICAgICAgICAgICAgICAgICR1cmwgPSAkZ2VuZXJhdG9yLT5HZXRWZXJpZnlGb3JtVXJsKGZhbHNlKTsKICAgICAgICAgICAgICAgIHJlZGlyZWN0KCR1cmwpOwogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBhY3R1YWxseSBsb2cgdGhlIHVzZXIgaW4uCiAgICAgICAgICAgICRyZXMgPSAkdGhpcy0+TG9naW4oICR1c2VybmFtZSwgJHBhc3N3b3JkLCAkb25seWdyb3Vwcyk7CiAgICAgICAgICAgIGlmKCAhJHJlc1swXSApIHRocm93IG5ldyBcRmV1TG9naW5GYWlsZWRFeGNlcHRpb24oJHJlc1sxXSk7CiAgICAgICAgICAgICR1aWQgPSAkcmVzWzBdOwoKICAgICAgICAgICAgLy8KICAgICAgICAgICAgLy8gd2UncmUgbG9nZ2VkIGluCiAgICAgICAgICAgIC8vCgogICAgICAgICAgICAvLyBzZW5kIGFuIGVtYWlsIChkZXByZWNhdGVkKQogICAgICAgICAgICAkdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgnT25Mb2dpbicsYXJyYXkoJ2lkJz0+JHVpZCwndXNlcm5hbWUnPT4kdXNlcm5hbWUpKTsKCiAgICAgICAgICAgIGlmKCAkdXNlcl9pbmZvWydtdXN0X3ZhbGlkYXRlJ10gKSB7CiAgICAgICAgICAgICAgICAvLyBmb3JjZSB0aGUgdXNlciB0byB2YWxpZGF0ZSB0aGVtc2VsdmVzLgogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmKCAkdXNlcl9pbmZvWydmb3JjZV9jaHNldHRpbmdzJ10gKSB7CiAgICAgICAgICAgICAgICAvLyBmb3JjZSB1c2VyIHRvIGNoYW5nZSBzZXR0aW5ncy4KICAgICAgICAgICAgICAgICRjc3BhZ2UgPSAkcmV0dXJuaWQ7CiAgICAgICAgICAgICAgICBpZiggKCR0bXAgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkX2NoYW5nZXNldHRpbmdzJykpICkgeyAgLy8gdGVzdCBtZQogICAgICAgICAgICAgICAgICAgICR0cGwyID0gJHRoaXMtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCdzdHJpbmc6Jy4kdG1wLCR0bXApOwogICAgICAgICAgICAgICAgICAgICRncm91cHMgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoICR1aWQgKTsKICAgICAgICAgICAgICAgICAgICAkZ3JvdXBuYW1lID0gJHRoaXMtPkdldEdyb3VwTmFtZSggJGdyb3Vwc1swXVsnZ3JvdXBpZCddICk7CiAgICAgICAgICAgICAgICAgICAgJHRwbDItPmFzc2lnbigndXNlcm5hbWUnLCR1c2VybmFtZSk7CiAgICAgICAgICAgICAgICAgICAgJHRwbDItPmFzc2lnbignZ3JvdXAnLCRncm91cG5hbWUpOwogICAgICAgICAgICAgICAgICAgICR0bXAgPSAkdHBsMi0+ZmV0Y2goKTsKICAgICAgICAgICAgICAgICAgICBpZiggJHRtcCApICRjc3BhZ2UgPSAkdGhpcy0+cmVzb2x2ZV9hbGlhc19vcl9pZCgkdG1wLCRyZXR1cm5pZCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAkcGFybXMgPSBhcnJheSgndWlkJz0+JHVpZCk7CiAgICAgICAgICAgICAgICBpZiggJHJldHVybnRvICkgJHBhcm1zWydyZXR1cm50byddID0gJHJldHVybnRvOwogICAgICAgICAgICAgICAgJHRoaXMtPlJlZGlyZWN0Rm9yRnJvbnRlbmQoJGlkLCRjc3BhZ2UsJ2NoYW5nZXNldHRpbmdzJywkcGFybXMpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmKCAkdXNlcl9pbmZvWydmb3JjZV9uZXdwdyddICkgewogICAgICAgICAgICAgICAgLy8gdXNlciBjYW5ub3QgYmUgcmVtZW1iZXJlZCBpZiBmb3JjZSBwYXNzd29yZCByZXNldCAoZm9yIHNlY3VyaXR5KQogICAgICAgICAgICAgICAgJHBhcm1zID0gYXJyYXkoJ3VpZCc9PiR1aWQpOwogICAgICAgICAgICAgICAgaWYoICRyZXR1cm50byApICRwYXJtc1sncmV0dXJudG8nXSA9ICRyZXR1cm50bzsKICAgICAgICAgICAgICAgICR0aGlzLT5SZWRpcmVjdEZvckZyb250ZW5kKCRpZCwkcmV0dXJuaWQsJ3VzZXJfZm9yY2VuZXdwdycsJHBhcm1zKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYoICRyZW1lbWJlcm1lICkgewogICAgICAgICAgICAgICAgJGRhdGEgPSBhcnJheSgndWlkJz0+JHVpZCwndGltZSc9PnRpbWUoKSk7CiAgICAgICAgICAgICAgICAkbmFtZSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdjb29raWVuYW1lJyk7CiAgICAgICAgICAgICAgICBcY21zX2Nvb2tpZXM6OnNldCgkbmFtZSxiYXNlNjRfZW5jb2RlKHNlcmlhbGl6ZSgkZGF0YSkpLHRpbWUoKSs2MCoyNCozNjAwLCcvJyk7IC8vIEB0b2RvOiB1c2UgY21zX2Nvb2tpZQogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyByZWRpcmVjdCBzb21ld2hlcmUgPwogICAgICAgICAgICBpZiggJHJldHVybnRvICkgewogICAgICAgICAgICAgICAgLy8gYSBwYWdlIGlkIG9yIGFsaWFzCiAgICAgICAgICAgICAgICAkcGFnZWlkID0gJHRoaXMtPnJlc29sdmVfYWxpYXNfb3JfaWQoJHJldHVybnRvKTsKICAgICAgICAgICAgICAgIGlmKCAkcGFnZWlkICkgJHRoaXMtPlJlZGlyZWN0Q29udGVudCgkcGFnZWlkKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiggKCR1cmwgPSAkdGhpcy0+R2V0UG9zdExvZ2luVVJMKCkgKSApIHsKICAgICAgICAgICAgICAgIC8vIHRoaXMgb3ZlcnJpZGVzIHRoZSBwcmVmZXJlbmNlLCBidXQgbm90IHJldHVybnRvLgogICAgICAgICAgICAgICAgcmVkaXJlY3QoJHVybCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSBpZiggKCR0cGxzdHIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ2luJykpICkgewogICAgICAgICAgICAgICAgJHRwbCA9ICR0aGlzLT5DcmVhdGVTbWFydHlUZW1wbGF0ZSgnc3RyaW5nOicuJHRwbHN0cik7CiAgICAgICAgICAgICAgICAkZ3JvdXBzID0gJHRoaXMtPkdldE1lbWJlckdyb3Vwc0FycmF5KCAkdWlkICk7CiAgICAgICAgICAgICAgICAkZ3JvdXBuYW1lID0gJHRoaXMtPkdldEdyb3VwTmFtZSggJGdyb3Vwc1swXVsnZ3JvdXBpZCddICk7CiAgICAgICAgICAgICAgICAkdHBsLT5hc3NpZ24oJ3VzZXJuYW1lJywkdXNlcm5hbWUpOwogICAgICAgICAgICAgICAgJHRwbC0+YXNzaWduKCdncm91cCcsJGdyb3VwbmFtZSk7CiAgICAgICAgICAgICAgICAkdG1wID0gdHJpbSgkdHBsLT5mZXRjaCgpKTsKICAgICAgICAgICAgICAgIGlmKCAkdG1wICkgewogICAgICAgICAgICAgICAgICAgICRwYWdlaWQgPSAkdGhpcy0+cmVzb2x2ZV9hbGlhc19vcl9pZCgkdG1wKTsKICAgICAgICAgICAgICAgICAgICBpZiggJHBhZ2VpZCApICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHBhZ2VpZCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgLy8gYWxsIGVsc2UgZmFpbHMsIHJlZGlyZWN0IGJhY2sgdG8gb3VyIGN1cnJlbiBwYWdlLgogICAgICAgICAgICAkdGhpcy0+UmVkaXJlY3RDb250ZW50KCAkcmV0dXJuaWQgKTsKICAgICAgICB9CiAgICAgICAgY2F0Y2goIFxGZXVMb2dpbkZhaWxlZEV4Y2VwdGlvbiAkZSApIHsKICAgICAgICAgICAgJGVycm9yID0gJGUtPkdldE1lc3NhZ2UoKTsKICAgICAgICAgICAgYXVkaXQoJycsJHRoaXMtPkdldE5hbWUoKSwnTG9naW4gZmFpbGVkIGZvciB1c2VyICcuJHVzZXJuYW1lKTsKICAgICAgICAgICAgJHRoaXMtPlNlbmRFdmVudCgnT25Mb2dpbkZhaWxlZCcsIFsgJ3VzZXJuYW1lJyA9PiAkdXNlcm5hbWUsICdtc2cnID0+ICRlcnJvciBdICk7CiAgICAgICAgfQogICAgICAgIGNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgICAgICAgICAkZXJyb3IgPSAkZS0+R2V0TWVzc2FnZSgpOwogICAgICAgIH0KICAgIH0KCiAgICAvLyBidWlsZCB0aGUgZm9ybQogICAgJGNvbnRlbnQgPSBcY21zX3V0aWxzOjpnZXRfY3VycmVudF9jb250ZW50KCk7CiAgICBpZiggZ2V0X2NsYXNzKCRjb250ZW50KSA9PSAnRXJyb3JQYWdlJyApIHsKICAgICAgICAvLyB3ZSdyZSBiZWluZyBjYWxsZWQgZnJvbSBhbiBlcnJvciBwYWdlLi4uIHNvIHdoZW4gd2UncmUgZG9uZSB3ZSB3YW50IHRvIHJlZGlyZWN0IGJhY2sgdG8gdGhlCiAgICAgICAgLy8gcmVxdWVzdGVkIHBhZ2UsIGlmIGVuYWJsZWQuCiAgICAgICAgJHRoaXMtPlNldFBvc3RMb2dpblVSTCgkX1NFUlZFUlsnUkVRVUVTVF9VUkknXSk7CiAgICB9CgogICAgJHRoZXRlbXBsYXRlID0gXGZldV91dGlsczo6Z2V0X3RlbXBsYXRlKCRwYXJhbXMsJ2xvZ2ludGVtcGxhdGUnLCdGcm9udEVuZFVzZXJzOjpsb2dpbiBmb3JtJyk7CiAgICAkdHBsID0gJHRoaXMtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCR0aGV0ZW1wbGF0ZSk7CiAgICAkcGFybXMgPSBhcnJheSgpOwogICAgJHBhcm1zWydpbmxpbmUnXSA9ICRpbmxpbmU7CiAgICAkcGFybXNbJ25vY2FwdGNoYSddID0gJG5vY2FwdGNoYTsKICAgICRwYXJtc1sncmV0dXJudG8nXSA9ICRyZXR1cm50bzsKICAgICRwYXJtc1snb25seV9ncm91cHMnXSA9ICRvbmx5Z3JvdXBzOwogICAgJHRwbC0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2xvZ2luJywgJHJldHVybmlkLCAkcGFybXMsICRpbmxpbmUgKSk7CiAgICAkdHBsLT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCiAgICAkY2FwdGNoYSA9ICR0aGlzLT5HZXRNb2R1bGVJbnN0YW5jZSgnQ2FwdGNoYScpOwogICAgaWYoIGlzX29iamVjdCgkY2FwdGNoYSkgJiYgISRub2NhcHRjaGEgKSB7CiAgICAgICAgJHRlc3QgPSBtZXRob2RfZXhpc3RzKCRjYXB0Y2hhLCAnTmVlZHNJbnB1dEZpZWxkJykgPyAkY2FwdGNoYS0+TmVlZHNJbnB1dEZpZWxkKCkgOiB0cnVlOwogICAgICAgICR0cGwtPmFzc2lnbignY2FwdGNoYV90aXRsZScsICR0aGlzLT5MYW5nKCdjYXB0Y2hhX3RpdGxlJykpOwogICAgICAgICR0cGwtPmFzc2lnbignY2FwdGNoYScsICRjYXB0Y2hhLT5nZXRDYXB0Y2hhKCkpOwogICAgICAgICR0cGwtPmFzc2lnbignbmVlZF9jYXB0Y2hhX2lucHV0JywkdGVzdCk7CiAgICB9CgogICAgJHRwbC0+YXNzaWduKCdlcnJvcicsJGVycm9yKTsKICAgICR0cGwtPmFzc2lnbigndXNlcm5hbWVfaXNfZW1haWwnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZV9pc19lbWFpbCcpKTsKICAgICR0cGwtPmFzc2lnbignZmxkbmFtZV91c2VybmFtZScsJGlkLidmZXVfaW5wdXRfdXNlcm5hbWUnKTsKICAgICR0cGwtPmFzc2lnbigncHJvbXB0X3VzZXJuYW1lJywkY29uc3VtZXItPmdldF91c2VybmFtZV9wcm9tcHQoKSk7CiAgICAkdHBsLT5hc3NpZ24oJ3VzZXJuYW1lX21heGxlbmd0aCcsJHRoaXMtPkNHR2V0UHJlZmVyZW5jZSgnbWF4X3VzZXJuYW1lbGVuZ3RoJywyMCkpOwogICAgJHRwbC0+YXNzaWduKCdwYXNzd29yZF9tYXhsZW5ndGgnLCR0aGlzLT5DR0dldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcsMjApKTsKICAgICR0cGwtPmFzc2lnbigndXNlcm5hbWVfc2l6ZScsbWF4KDMsKGludCkkdGhpcy0+Q0dHZXRQcmVmZXJlbmNlKCd1c2VybmFtZWZsZGxlbmd0aCcsMTApKSk7CiAgICAkdHBsLT5hc3NpZ24oJ3Bhc3N3b3JkX3NpemUnLG1heCgzLCR0aGlzLT5DR0dldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJywxMCkpKTsKICAgICR0cGwtPmFzc2lnbigndXNlcm5hbWUnLCR1c2VybmFtZSk7CiAgICAkdHBsLT5hc3NpZ24oJ3Bhc3N3b3JkJywkcGFzc3dvcmQpOwogICAgJHRwbC0+YXNzaWduKCdyZW1lbWJlcm1lJywkcmVtZW1iZXJtZSk7CiAgICAkdHBsLT5hc3NpZ24oJ2ZsZG5hbWVfcGFzc3dvcmQnLCRpZC4nZmV1X2lucHV0X3Bhc3N3b3JkJyk7CiAgICAkdHBsLT5hc3NpZ24oJ3Byb21wdF9wYXNzd29yZCcsICR0aGlzLT5MYW5nKCdwcm9tcHRfcGFzc3dvcmQnKSk7CiAgICBpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Nvb2tpZW5hbWUnKSAmJiBmdW5jdGlvbl9leGlzdHMoJ21jcnlwdF9tb2R1bGVfb3BlbicpICkgewogICAgICAgICR0cGwtPmFzc2lnbigncHJvbXB0X3JlbWVtYmVybWUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfcmVtZW1iZXJtZScpKTsgLy8gY2FuIGdldCByaWQgb2YgdGhpcyB0b28KICAgICAgICAkdHBsLT5hc3NpZ24oJ2ZsZG5hbWVfcmVtZW1iZXJtZScsJGlkLidmZXVfcmVtZW1iZXJtZScpOwogICAgfQoKICAgICRwaWQgPSAkcmV0dXJuaWQ7CiAgICBpZiggKCR0bXAgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkZm9yZ290cGFzc3dkJykpICkgewogICAgICAgICR0bXAgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGEoJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZGZvcmdvdHBhc3N3ZCcpKTsKICAgICAgICBpZiggJHRtcCApICRwaWQgPSAkdGhpcy0+cmVzb2x2ZV9hbGlhc19vcl9pZCgkdG1wLCRyZXR1cm5pZCk7CiAgICB9CiAgICBpZiggJHRoaXMtPkdldFByZWZlcmVuY2UoJ3N1cHBvcnRfbG9zdHB3JykgKSAkdHBsLT5hc3NpZ24oJ3VybF9mb3Jnb3QnLCR0aGlzLT5jcmVhdGVfdXJsKCRpZCwnZm9yZ290cHcnLCRwaWQpKTsKICAgIGlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc3VwcG9ydF9sb3N0dW4nKSApICR0cGwtPmFzc2lnbigndXJsX2xvc3R1bicsJHRoaXMtPmNyZWF0ZV91cmwoJGlkLCdsb3N0dXNlcm5hbWUnLCRwaWQpKTsKCiAgICBpZiggJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfQUxUTE9HSU4pICkgJHRwbC0+YXNzaWduKCdhbHRfbG9naW5mb3JtJywkY29uc3VtZXItPmdldF9sb2dpbl9kaXNwbGF5KCRpZCwkcmV0dXJuaWQsJHBhcmFtcykpOwogICAgJHRwbC0+ZGlzcGxheSgpOwp9CmNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgLy8gZmF0YWwgZXhjZXB0aW9ucyB3ZSBjYW4gZG8gbm90aGluZyB3aXRob3V0LgogICAgZWNobyAkdGhpcy0+X0Rpc3BsYXlFcnJvck1lc3NhZ2UoJGUtPkdldE1lc3NhZ2UoKSk7Cn0KLy8gRU9GCg==]]></data>
	</file>
	<file>
	  <filename>/action.logout.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiR1c2VybmFtZSA9ICR0aGlzLT5Mb2dnZWRJbk5hbWUoKTsKJHVpZCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CiR0aGlzLT5Mb2dvdXQoKTsKCmF1ZGl0KCAnJywgJHRoaXMtPkdldE5hbWUsICIkdXNlcm5hbWUgbG9nZ2VkIG91dCIpOwoKJHBhcm1zID0gYXJyYXkoKTsKJHBhcm1zWyd1c2VybmFtZSddID0gJHVzZXJuYW1lOwokcGFybXNbJ2lkJ10gPSAkdWlkOwokdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgnT25Mb2dvdXQnLCRwYXJtcyk7CgovLyB3ZSdyZSBsb2dnZWQgb3V0Ci8vIHJlZGlyZWN0IHNvbWV3aGVyZQppZiggKCRyZXR1cm50byA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywncmV0dXJudG8nKSkgKSB7CiAgICAkcGFnZWlkID0gJHRoaXMtPnJlc29sdmVfYWxpYXNfb3JfaWQoJHJldHVybnRvKTsKICAgIGlmKCAkcGFnZWlkICkgJHRoaXMtPlJlZGlyZWN0Q29udGVudCgkcGFnZWlkKTsKfQppZiggKCR1cmwgPSAkdGhpcy0+R2V0UG9zdExvZ2luVVJMKCkpICkgewogICAgcmVkaXJlY3QoJHVybCk7Cn0KZWxzZSBpZiggKCR0cGxzdHIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ291dCcpKSApIHsKICAgICR0cGwgPSAkdGhpcy0+Q3JlYXRlU21hcnR5VGVtcGxhdGUoJ3N0cmluZzonLiR0cGxzdHIpOwogICAgJGdyb3VwcyA9ICR0aGlzLT5HZXRNZW1iZXJHcm91cHNBcnJheSggJHVpZCApOwogICAgJGdyb3VwbmFtZSA9ICR0aGlzLT5HZXRHcm91cE5hbWUoICRncm91cHNbMF1bJ2dyb3VwaWQnXSApOwogICAgJHRwbC0+YXNzaWduKCd1c2VybmFtZScsJHVzZXJuYW1lKTsKICAgICR0cGwtPmFzc2lnbignZ3JvdXAnLCRncm91cG5hbWUpOwogICAgJHRtcCA9ICR0cGwtPmZldGNoKCk7CiAgICBpZiggJHRtcCApIHsKICAgICAgICAkcGFnZWlkID0gJHRoaXMtPnJlc29sdmVfYWxpYXNfb3JfaWQoJHRtcCk7CiAgICAgICAgaWYoICRwYWdlaWQgKSAkdGhpcy0+UmVkaXJlY3RDb250ZW50KCRwYWdlaWQpOwogICAgfQp9Ci8vIGFsbCBlbHNlIGZhaWxzLCByZWRpcmVjdCBiYWNrIHRvIG91ciBjdXJyZW4gcGFnZS4KJHRoaXMtPlJlZGlyZWN0Q29udGVudCgkcmV0dXJuaWQpOw==]]></data>
	</file>
	<file>
	  <filename>/action.logoutform.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKJGNvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwppZiggJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eShmZXVfYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9MT0dPVVQpICkgewogIC8vIHRoZSBjb25zdW1lciBwcm92aWRlcyB0aGUgbG9naW4gY2FwYWJpbGl0aWVzCiAgZWNobyAkY29uc3VtZXItPmdldF9sb2dvdXRfZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpOwogIHJldHVybjsKfQoKdHJ5IHsKLy8gZG8gdGhlIGRlZmF1bHQKICAgICR1aWQgPSAkdGhpcy0+TG9nZ2VkSW5JZCgpOwogICAgaWYoICEkdWlkICkgcmV0dXJuOyAvLyBub3RoaW5nIHRvIGRvLCB1c2VyIGlzIG5vdCBsb2dnZWQgaW4uCgogICAgJHJldHVybnRvID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdyZXR1cm50bycpOyAvLyB0ZXN0IG1lLgogICAgJHVzZXJuYW1lID0gJHRoaXMtPkxvZ2dlZEluTmFtZSgpOwogICAgJHRoZXRlbXBsYXRlID0gXGZldV91dGlsczo6Z2V0X3RlbXBsYXRlKCRwYXJhbXMsJ2xvZ291dHRlbXBsYXRlJywnRnJvbnRFbmRVc2Vyczo6bG9nb3V0IGZvcm0nKTsKICAgICR0cGwgPSAkdGhpcy0+Q3JlYXRlU21hcnR5VGVtcGxhdGUoJHRoZXRlbXBsYXRlKTsKICAgIC8vIHJlcGxhY2UgeyRncm91cG5hbWV9IHdpdGggdGhlIGZpcnN0IGdyb3VwbmFtZSB3ZSBjYW4gZmluZCB0aGF0IG1hdGNoZXMKICAgICRncm91cHMgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoICR1aWQgKTsKICAgICRncm91cG5hbWUgPSAkdGhpcy0+R2V0R3JvdXBOYW1lKCAkZ3JvdXBzWzBdWydncm91cGlkJ10gKTsKICAgICR0cGwtPmFzc2lnbigncHJvbXB0X2xvZ2dlZGluJywgJHRoaXMtPkxhbmcoJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJykpOyAvLyBjYW4gZ2V0IHJpZCBvZiB0aGlzLgogICAgJHRwbC0+YXNzaWduKCd1c2VyaWQnLCAkdWlkKTsKICAgICR0cGwtPmFzc2lnbigndXNlcm5hbWUnLCAkdXNlcm5hbWUpOwogICAgJG1zZyA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywnbWVzc2FnZScpOwogICAgaWYoICRtc2cgKSAkdHBsLT5hc3NpZ24oJ21lc3NhZ2UnLCRtc2cpOwoKICAgIC8vIHN0YXJ0IHVnbHkKICAgIC8vIHRvZG86IG5lZWQgc29tZSBtZWNoYW5pc20gdG8gdGVsbCAnd2hpY2gnIGF1dGhlbnRpY2F0aW9uIHdhcyB1c2VkLCBpZiBhbHQgYXV0aGVudGljYXRpb24gaXMgc3VwcG9ydGVkLgogICAgJGxvZ2dlZGluX3VzaW5nX3N0ZCA9IEZBTFNFOwogICAgJG1hbmlwID0gJHRoaXMtPkdldE1hbmlwdWxhdG9yKCk7CiAgICBpZiggJG1hbmlwLT5fc3RkX0xvZ2dlZEluSWQoKSApICRsb2dnZWRpbl91c2luZ19zdGQgPSBUUlVFOwogICAgLy8gZW5kIHVnbHkKCiAgICAkcGFybXMgPSBhcnJheSgpOwogICAgaWYoICRyZXR1cm50byApICRwYXJtc1sncmV0dXJudG8nXSA9ICRyZXR1cm50bzsKICAgICR1cmwgPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2xvZ291dCcsJHJldHVybmlkLCRwYXJtcyk7CiAgICAkdHBsLT5hc3NpZ24oJ3VybF9sb2dvdXQnLCR1cmwpOwoKICAgIC8vIHJlcGxhY2UgeyRncm91cG5hbWV9IHdpdGggdGhlIGZpcnN0IGdyb3VwbmFtZSB3ZSBjYW4gZmluZCB0aGF0IG1hdGNoZXMKICAgICRjc3BhZ2UgPSAkcmV0dXJuaWQ7CiAgICBpZiggKCR0bXAgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkX2NoYW5nZXNldHRpbmdzJykpICkgeyAgLy8gdGVzdCBtZQogICAgICAgICR0cGwyID0gJHRoaXMtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCdzdHJpbmc6Jy4kdG1wLCR0bXApOwogICAgICAgICR0bXAgPSAkdHBsMi0+ZmV0Y2goKTsKICAgICAgICBpZiggJHRtcCApICRjc3BhZ2UgPSAkdGhpcy0+cmVzb2x2ZV9hbGlhc19vcl9pZCgkdG1wLCRyZXR1cm5pZCk7CiAgICB9CiAgICAkcGFybXMgPSBhcnJheSgnZm9ybSc9PidjaGFuZ2VzZXR0aW5ncycpOwogICAgaWYoICRyZXR1cm50byApICRwYXJtc1sncmV0dXJudG8nXSA9ICRyZXR1cm50bzsKICAgICR1cmwgPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2RlZmF1bHQnLCRjc3BhZ2UsJHBhcm1zKTsKICAgICR0cGwtPmFzc2lnbigndXJsX2NoYW5nZXNldHRpbmdzJywkdXJsKTsKICAgICRwcm9wcyA9ICR0aGlzLT5HZXRVc2VyUHJvcGVydGllcyggJHRoaXMtPkxvZ2dlZEluSWQoKSApOwogICAgaWYoICRwcm9wcyAhPT0gZmFsc2UgKSB7CiAgICAgICAgZm9yZWFjaCggJHByb3BzIGFzICRwICkgewogICAgICAgICAgICAkdHBsLT5hc3NpZ24oJHBbJ3RpdGxlJ10sJHBbJ2RhdGEnXSk7CiAgICAgICAgfQogICAgfQoKICAgIGlmKCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9BTFRMT0dJTikgKSB7CiAgICAgICAgLy8gdGhlIGNvbnN1bWVyIGhhcyBhbHRlcm5hdGUgbG9naW4gY2FwYWJpbGl0aWVzLi4uLgogICAgICAgICRyZXMgPSAkY29uc3VtZXItPmdldF9sb2dvdXRfZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpOwogICAgICAgICR0cGwtPmFzc2lnbignYWx0X2xvZ291dGZvcm0nLCRyZXMpOwogICAgfQoKICAgICR0cGwtPmRpc3BsYXkoKTsKfQpjYXRjaCggXEV4Y2VwdGlvbiAkZSApIHsKICAgIC8vIGZhdGFsIGVycm9yIHdlIGNhbm5vdCB3b3JrIGFyb3VuZC4KICAgIGVjaG8gJHRoaXMtPkRpc3BsYXlFcnJvck1lc3NhZ2UoJGUtPkdldE1lc3NhZ2UoKSk7Cn0KCiMKIyBFT0YKIw==]]></data>
	</file>
	<file>
	  <filename>/action.lostusername.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCnRyeSB7CiAgICBpZiggISR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzdXBwb3J0X2xvc3R1bicpICkgdGhyb3cgbmV3IFxMb2dpY0V4Y2VwdGlvbignU29ycnksIHRoaXMgZnVuY3Rpb25hbGl0eSBpcyBkaXNhYmxlZCcpOwogICAgJG1lc3NhZ2UgPSBudWxsOwogICAgJHVzZXJuYW1lX2lzX2VtYWlsID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJyk7CiAgICAkbm9jYXB0Y2hhID0gXGNnZV9wYXJhbTo6Z2V0X2Jvb2woJHBhcmFtcywnbm9jYXB0Y2hhJyk7CiAgICAkdGhldGVtcGxhdGUgPSBcZmV1X3V0aWxzOjpnZXRfdGVtcGxhdGUoJHBhcmFtcywnbG9zdHVudGVtcGxhdGUnLCdGcm9udEVuZFVzZXJzOjpsb3N0IHVzZXJuYW1lIGZvcm0nKTsKICAgICRyZXR1cm50byA9IFxjZ2VfcGFyYW06OmdldF9pbnQoJHBhcmFtcywncmV0dXJudG8nLCRyZXR1cm5pZCk7CgogICAgJGdpZCA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywnZmV1X2dpZCcsLTEpOwogICAgJGdpZCA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywnbG9zdHVuX2dyb3VwJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZGVmYXVsdF9ncm91cCcsJGdpZCkpOwogICAgaWYoICFpc19udW1lcmljKCRnaWQpICkgewogICAgICAgICRnaWQgPSAkdGhpcy0+R2V0R3JvdXBJRCggJGdpZCApOwogICAgICAgIGlmKCAkZ2lkIDwgMSApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfZ3JvdXBub3Rmb3VuZCcpKTsKICAgIH0KICAgIGlmKCAkZ2lkIDw9IDAgKSB7CiAgICAgICAgLy8gbm8gZ2lkIHNwZWNpZmllZCBvciBmb3VuZCwgIGdldCB0aGUgZ2lkIG9mIHRoZSBmaXJzdCBncm91cC4KICAgICAgICAkZ3JvdXBzID0gJHRoaXMtPkdldEdyb3VwTGlzdCgpOwogICAgICAgIGlmKCAhY291bnQoJGdyb3VwcykgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ25vZ3JvdXBzJykpOwogICAgICAgICR2YWx1ZXMgPSBhcnJheV92YWx1ZXMoJGdyb3Vwcyk7CiAgICAgICAgJGdpZCA9ICR2YWx1ZXNbMF07CiAgICB9CgogICAgJHJlbG5zID0gJHRoaXMtPkdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRnaWQgKTsKICAgIGlmKCAhaXNfYXJyYXkoICRyZWxucyApIHx8ICRyZWxuc1swXSA9PT0gRkFMU0UgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJ1Vua25vd24gRXJyb3InKTsKCiAgICAvLyBOb3c6IHdlIG5lZWQgdG8gZ2V0IHRoZSBwcm9wZXJ0aWVzIHRoYXQgbWF5IGJlIGZpbGxlZCBpbiBpbiB0aGlzIGdyb3VwLgogICAgLy8gYW5kIGRpc3BsYXkgdGhlbSBpbiB0aGUgZm9ybQogICAgLy8gd2UgZG8gdGhpcyBiZWZvcmUgaGFuZGxpbmcgc3VibWl0IHNvIHRoYXQgd2UgZG9uJ3QgbG9zZSBhcyBtdWNoIHVzZXIgZW50ZXJlZCBpbmZvcm1hdGlvbgogICAgLy8gaWYgdGhlcmUgaXMgYSBzaWxseSBlcnJvciBpbiBmb3JtIHN1Ym1pc3Npb24uCiAgICAkcm93YXJyYXkgPSBhcnJheSgpOwogICAgJGRlZm5zID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKICAgIGZvcmVhY2goICRyZWxucyBhcyAkb25lcmVsbiApIHsKICAgICAgICAvLyBpZiBpdCdzIG5vdCByZXF1aXJlZCBoZXJlLCBkb24ndCBkbyBhbnl0aGluZwogICAgICAgIGlmKCAkb25lcmVsblsncmVxdWlyZWQnXSA9PSAzIHx8ICRvbmVyZWxuWydyZXF1aXJlZCddID09IDQgKSB7CiAgICAgICAgICAgIC8vIGhpZGRlbiBvciByZWFkLW9ubHkgZmllbGRzIGFyZSBoaWRkZW4uCiAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgIH0KCiAgICAgICAgJGRlZm4gPSAkZGVmbnNbICRvbmVyZWxuWyduYW1lJ10gXTsKCiAgICAgICAgJG9uZXJvdyA9IG5ldyBTdGRDbGFzcygpOwogICAgICAgICRvbmVyb3ctPnJlcXVpcmVkID0gZmFsc2U7CiAgICAgICAgJG9uZXJvdy0+cHJvcG5hbWUgPSAkb25lcmVsblsnbmFtZSddOwogICAgICAgICRvbmVyb3ctPm5hbWUgPSAnZmV1X2lucHV0XycuJG9uZXJlbG5bJ25hbWUnXTsKICAgICAgICAkb25lcm93LT5mbGRuYW1lID0gJGlkLiRvbmVyb3ctPm5hbWU7CiAgICAgICAgJG9uZXJvdy0+dHlwZSA9ICRkZWZuWyd0eXBlJ107CiAgICAgICAgaWYoICRvbmVyb3ctPnR5cGUgPT0gOCApIHsKICAgICAgICAgICAgLy8gZGF0ZSBmaWVsZCB1c2VzIGh0bWxfc2VsZWN0X2RhdGUgd2hpY2ggcHJvdmlkZXMgdGhyZWUgaW5wdXQgZmllbGRzLgogICAgICAgICAgICAkX20gPSBcY2dlX3BhcmFtOjpnZXRfaW50KCRwYXJhbXMsJG9uZXJvdy0+bmFtZS4nTW9udGgnKTsKICAgICAgICAgICAgJF9kID0gXGNnZV9wYXJhbTo6Z2V0X2ludCgkcGFyYW1zLCRvbmVyb3ctPm5hbWUuJ0RheScpOwogICAgICAgICAgICAkX3kgPSBcY2dlX3BhcmFtOjpnZXRfaW50KCRwYXJhbXMsJG9uZXJvdy0+bmFtZS4nWWVhcicpOwogICAgICAgICAgICBpZiggJF9tICYmICRfZCAmJiAkX3kgKSAkcGFyYW1zWyRvbmVyb3ctPm5hbWVdID0gbWt0aW1lKDAsMCwwLCRfbSwkX2QsJF95KTsKICAgICAgICB9CiAgICAgICAgJG9uZXJvdy0+dmFsID0gXGNnZV91dGlsczo6Z2V0X3BhcmFtKCRwYXJhbXMsJG9uZXJvdy0+bmFtZSk7IC8vIGRvIG5vdCB1c2UgY2dlX3BhcmFtIGJlY2F1c2UgaW5wdXQgbWF5IGJlIGFuIGFycmF5CiAgICAgICAgJG9uZXJvdy0+bGVuZ3RoID0gJGRlZm5bJ2xlbmd0aCddOwogICAgICAgICRvbmVyb3ctPm1heGxlbmd0aCA9ICRkZWZuWydtYXhsZW5ndGgnXTsKICAgICAgICAkb25lcm93LT5wcm9tcHQgPSAkZGVmblsncHJvbXB0J107CgogICAgICAgIHN3aXRjaCggJGRlZm5bJ3R5cGUnXSApIHsKICAgICAgICBjYXNlIDQ6IC8vIGRyb3Bkb3duCiAgICAgICAgY2FzZSA1OiAvLyBtdWx0aXNlbGVjdAogICAgICAgIGNhc2UgNzogLy8gcmFkaW9idG5zCiAgICAgICAgICAgICRvbmVyb3ctPm9wdGlvbnMgPSBhcnJheV9mbGlwKCR0aGlzLT5HZXRTZWxlY3RPcHRpb25zKCRkZWZuWyduYW1lJ10pKTsKICAgICAgICAgICAgJG9uZXJvdy0+bGVuZ3RoID0gNTsKICAgICAgICAgICAgaWYoIGNvdW50KCRvbmVyb3ctPm9wdGlvbnMpID4gMjAgKSAkb25lcm93LT5sZW5ndGggPSAxMDsKICAgICAgICAgICAgJG9uZXJvdy0+bGVuZ3RoID0gbWluKGNvdW50KCRvbmVyb3ctPm9wdGlvbnMpLCRvbmVyb3ctPmxlbmd0aCk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlIDg6IC8vIGRhdGUKICAgICAgICAgICAgJG9uZXJvdy0+c3RhcnRfeWVhciA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJGRlZm5bJ2V4dHJhJ10sJ3N0YXJ0eWVhcicsJy0xMCcpOwogICAgICAgICAgICAkb25lcm93LT5lbmRfeWVhciA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJGRlZm5bJ2V4dHJhJ10sJ2VuZHllYXInLCcrNScpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSA2OiAvLyBpbWFnZQogICAgICAgICAgICAvLyB0aGlzIGlzbid0IGFsbG93ZWQKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KCiAgICAgICAgJHJvd2FycmF5WyRvbmVyb3ctPnByb3BuYW1lXSA9ICRvbmVyb3c7CiAgICB9CiAgICBpZiggIWNvdW50KCRyb3dhcnJheSkgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2xvc3R1bl9ub2NvbnRyb2xzJykpOwoKICAgIGlmKCBpc3NldCgkcGFyYW1zWydmZXVfY2FuY2VsJ10pICkgewogICAgICAgICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHJldHVybnRvKTsKICAgIH0KICAgIGVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ2ZldV9zdWJtaXQnXSkgKSB7CiAgICAgICAgLy8KICAgICAgICAvLyBoYW5kbGUgZm9ybSBzdWJtaXQKICAgICAgICAvLwogICAgICAgIHRyeSB7CiAgICAgICAgICAgIC8vIGJ5IHRoaXMgcG9pbnQgb3VyIHZhbHVlcyBzaG91bGQgYmUgdXB0b2RhdGUgaW4gdGhlICRyb3dhcnJheQoKICAgICAgICAgICAgLy8gY2hlY2sgb3VyIGhvbmV5cG90CiAgICAgICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydmZXVfX2RhdGEnXSkgKSB7CiAgICAgICAgICAgICAgICAkdG1wID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdmZXVfX2RhdGEnKTsKICAgICAgICAgICAgICAgIGlmKCAkdG1wICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl95b3VhcmVhYm90JykpOwogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBjaGVjayB0aGUgY2FwdGNoYQogICAgICAgICAgICBpZiggISRub2NhcHRjaGEgKSB7CiAgICAgICAgICAgICAgICAkY2FwdGNoYSA9IFxjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0NhcHRjaGEnKTsKICAgICAgICAgICAgICAgIGlmKCBpc19vYmplY3QoJGNhcHRjaGEpICYmICEkY2FwdGNoYS0+Q2hlY2tDYXB0Y2hhKCRwYXJhbXNbJ2ZldV9pbnB1dF9jYXB0Y2hhJ10pICkgewogICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfY2FwdGNoYW1pc21hdGNoJykpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBjaGVjayBhbnkgcmVxdWlyZWQgZmllbGRzCiAgICAgICAgICAgIGZvcmVhY2goICRyb3dhcnJheSBhcyAka2V5ID0+ICRyZWMgKSB7CiAgICAgICAgICAgICAgICBpZiggJHJlYy0+cmVxdWlyZWQgJiYgISRyZWMtPnZhbCApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfcmVxdWlyZWRmaWVsZCcsJHJlYy0+cHJvbXB0KSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIC8vCiAgICAgICAgICAgIC8vIHJlYWR5IHRvIGRvIHJlYWwgd29yawogICAgICAgICAgICAvLyB3ZSBpdGVyYXRlIHRocm91Z2ggdGhlIGZpZWxkcyAoZXhjZXB0IHBhc3N3b3JkKSBhbmQgYnVpbGQgYW4gZmV1IHF1ZXJ5CiAgICAgICAgICAgIC8vIGFuZCBob3BlIHRoYXQgd2Ugb25seSBmaW5kIG9uZSByZXN1bHQuCiAgICAgICAgICAgIC8vIGlmIHdlIGZpbmQgb25lIHJlc3VsdC4uLiB3ZSBjYW4gZGlzcGxheSBzb21lIGluZm9ybWF0aW9uIHRvIHRoZSBndXkuCiAgICAgICAgICAgIC8vCiAgICAgICAgICAgICRzcWwgPSAnU0VMRUNUIERJU1RJTkNUIFUuKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyBVICc7CiAgICAgICAgICAgICRuX2NvbmRzID0gMDsKICAgICAgICAgICAgJHdoZXJlID0gJGpvaW5zID0gJHBhcm1zID0gYXJyYXkoKTsKCiAgICAgICAgICAgIGZvcmVhY2goICRyb3dhcnJheSBhcyAka2V5ID0+ICRyZWMgKSB7CiAgICAgICAgICAgICAgICBpZiggISRyZWMtPnZhbCApIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgaWYoICRrZXkgPT0gJ19wYXNzd29yZCcgKSBjb250aW51ZTsKICAgICAgICAgICAgICAgIGlmKCAka2V5ID09ICdfZW1haWwnICkgY29udGludWU7CgogICAgICAgICAgICAgICAgc3dpdGNoKCAkcmVjLT50eXBlICkgewogICAgICAgICAgICAgICAgY2FzZSAwOiAvLyB0ZXh0CiAgICAgICAgICAgICAgICBjYXNlIDI6IC8vIGVtYWlsCiAgICAgICAgICAgICAgICBjYXNlIDM6IC8vIHRleHRhcmVhCiAgICAgICAgICAgICAgICAgICAgaWYoIHN0cmxlbigkcmVjLT52YWwpID4gMyApIHsKICAgICAgICAgICAgICAgICAgICAgICAgJGFsaWFzID0gIlB7JG5fY29uZHN9IjsgJG5fY29uZHMrKzsKICAgICAgICAgICAgICAgICAgICAgICAgJGpvaW5zW10gPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzICRhbGlhcyBPTiBVLmlkID0geyRhbGlhc30udXNlcmlkIEFORCB7JGFsaWFzfS50aXRsZSA9ICd7JHJlYy0+cHJvcG5hbWV9JyI7CiAgICAgICAgICAgICAgICAgICAgICAgICR3aGVyZVtdID0gInskYWxpYXN9LmRhdGEgTElLRSA/IjsKICAgICAgICAgICAgICAgICAgICAgICAgJHBhcm1zW10gPSAnJScuJHJlYy0+dmFsLiclJzsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICAgICAgY2FzZSAxOiAvLyBjaGVja2JveAogICAgICAgICAgICAgICAgICAgICRhbGlhcyA9ICJQeyRuX2NvbmRzfSI7ICRuX2NvbmRzKys7CiAgICAgICAgICAgICAgICAgICAgJGpvaW5zW10gPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzICRhbGlhcyBPTiBVLmlkID0geyRhbGlhc30udXNlcmlkIEFORCB7JGFsaWFzfS50aXRsZSA9ICd7JHJlYy0+cHJvcG5hbWV9JyI7CiAgICAgICAgICAgICAgICAgICAgJHdoZXJlW10gPSAieyRhbGlhc30uZGF0YSA9ID8iOwogICAgICAgICAgICAgICAgICAgICRwYXJtc1tdID0gMTsKICAgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICBjYXNlIDQ6IC8vIGRyb3Bkb3duCiAgICAgICAgICAgICAgICBjYXNlIDc6IC8vIHJhZGlvYnRucwogICAgICAgICAgICAgICAgICAgICRhbGlhcyA9ICJQeyRuX2NvbmRzfSI7ICRuX2NvbmRzKys7CiAgICAgICAgICAgICAgICAgICAgJGpvaW5zW10gPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzICRhbGlhcyBPTiBVLmlkID0geyRhbGlhc30udXNlcmlkIEFORCB7JGFsaWFzfS50aXRsZSA9ICd7JHJlYy0+cHJvcG5hbWV9JyI7CiAgICAgICAgICAgICAgICAgICAgJHdoZXJlW10gPSAieyRhbGlhc30uZGF0YSA9ID8iOwogICAgICAgICAgICAgICAgICAgICRwYXJtc1tdID0gJHJlYy0+dmFsOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgICAgIGNhc2UgNDogLy8gbXVsdGlzZWxlY3QKICAgICAgICAgICAgICAgICAgICAvLyBtdWx0aXNlbGVjdCBpcyBhIGRpZmZlcmVudCBjYXNlLi4uIHdlIG5lZWQgdG8gYnVpbGQgYW4gT1IgcmVsYXRpb25zaGlwIHNvIHRoYXQgYW55IG9mIHRoZSBzZWxlY3RlZCBpdGVtcyBtYXRjaC4KICAgICAgICAgICAgICAgICAgICAkYWxpYXMgPSAiUHskbl9jb25kc30iOyAkbl9jb25kcysrOwogICAgICAgICAgICAgICAgICAgICRqb2luc1tdID0gJ0xFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyAkYWxpYXMgT04gVS5pZCA9IHskYWxpYXN9LnVzZXJpZCBBTkQgeyRhbGlhc30udGl0bGUgPSAneyRyZWMtPnByb3BuYW1lfSciOwogICAgICAgICAgICAgICAgICAgICR0X3ZhbCA9ICRyZWMtPnZhbDsKICAgICAgICAgICAgICAgICAgICBpZiggIWlzX2FycmF5KCR0X3ZhbCkgKSAkdF92YWwgPSBhcnJheSgkdF92YWwpOwogICAgICAgICAgICAgICAgICAgIGlmKCBjb3VudCgkdF92YWwpID09IDEgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR3aGVyZVtdID0gInskYWxpYXN9LmRhdGEgPSA/IjsKICAgICAgICAgICAgICAgICAgICAgICAgJHBhcm1zW10gPSAkdF92YWw7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAkc3RyID0gJyUnLmltcGxvZGUoJyUnLCR0X3ZhbCkuJyUnOwogICAgICAgICAgICAgICAgICAgICAgICAkd2hlcmVbXSA9ICJ7JGFsaWFzfS5kYXRhIExJS0UgPyI7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgICAgIGNhc2UgODogLy8gZGF0ZQogICAgICAgICAgICAgICAgICAgICRhbGlhcyA9ICJQeyRuX2NvbmRzfSI7ICRuX2NvbmRzKys7CiAgICAgICAgICAgICAgICAgICAgJGpvaW5zW10gPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzICRhbGlhcyBPTiBVLmlkID0geyRhbGlhc30udXNlcmlkIEFORCB7JGFsaWFzfS50aXRsZSA9ICd7JHJlYy0+cHJvcG5hbWV9JyI7CiAgICAgICAgICAgICAgICAgICAgJHdoZXJlW10gPSAieyRhbGlhc30uZGF0YSA9ID8iOwogICAgICAgICAgICAgICAgICAgICRwYXJtc1tdID0gJHJlYy0+dmFsOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBjaGVjayB0byBtYWtlIHN1cmUgdGhhdCB0aGVyZSBpcyBhdCBsZWFzdCBzb21lIGluZm9ybWF0aW9uCiAgICAgICAgICAgIGlmKCAkbl9jb25kcyA9PSAwICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9sb3N0dW5fbm9kYXRhJykpOwoKICAgICAgICAgICAgLy8gYnVpbGQgdGhlIHF1ZXJ5CiAgICAgICAgICAgICRzcWwgLj0gaW1wbG9kZSgnICcsJGpvaW5zKTsKICAgICAgICAgICAgJHNxbCAuPSAnIFdIRVJFICcuaW1wbG9kZSgnIEFORCAnLCR3aGVyZSk7CiAgICAgICAgICAgICRzcWwgLj0gJyBMSU1JVCAyJzsKICAgICAgICAgICAgJHRtcCA9ICRkYi0+R2V0QXJyYXkoJHNxbCwkcGFybXMpOwogICAgICAgICAgICBpZiggY291bnQoJHRtcCkgPiAxICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9ub3VuaXF1ZW1hdGNoJykpOwogICAgICAgICAgICBpZiggIWNvdW50KCR0bXApICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9sb3N0dW5fdXNlcm5vdGZvdW5kJykpOwogICAgICAgICAgICAkdWluZm8gPSAkdG1wWzBdOwogICAgICAgICAgICAkdXNlcm5hbWUgPSAkdWluZm9bJ3VzZXJuYW1lJ107CgogICAgICAgICAgICAkdGhpcy0+YWRkX2hpc3RvcnkoJHVpbmZvWydpZCddLCdnZXR1c2VybmFtZScpOwoKICAgICAgICAgICAgLy8gYW5kIGRpc3BsYXkgc29tZXRoaW5nCiAgICAgICAgICAgICR0aGV0ZW1wbGF0ZTIgPSBcZmV1X3V0aWxzOjpnZXRfdGVtcGxhdGUoJHBhcmFtcywnbG9zdHVuY29uZmlybXRlbXBsYXRlJywnRnJvbnRFbmRVc2Vyczo6bG9zdCB1c2VybmFtZSBjb25maXJtJyk7CiAgICAgICAgICAgICR0cGwgPSAkdGhpcy0+Q3JlYXRlU21hcnR5VGVtcGxhdGUoJHRoZXRlbXBsYXRlMik7CiAgICAgICAgICAgICR0cGwtPmFzc2lnbigndXNlcm5hbWUnLCR1c2VybmFtZSk7CiAgICAgICAgICAgICR0cGwtPmFzc2lnbigncHJvbXB0X3lvdXJ1c2VybmFtZWlzJywkdGhpcy0+TGFuZygneW91cl91c2VybmFtZV9pcycpKTsKICAgICAgICAgICAgJHRwbC0+YXNzaWduKCdwcmVtc2cnLCR0aGlzLT5MYW5nKCdsb3N0dW5jb25maXJtX3ByZW1zZycpKTsKICAgICAgICAgICAgJHRwbC0+YXNzaWduKCdwb3N0bXNnJywkdGhpcy0+TGFuZygnbG9zdHVuY29uZmlybV9wb3N0bXNnJykpOwogICAgICAgICAgICAkdHBsLT5kaXNwbGF5KCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgICAgICRtZXNzYWdlID0gJGUtPkdldE1lc3NhZ2UoKTsKICAgICAgICB9CiAgICB9CgogICAgLy8gc3RhcnQgZ2l2aW5nIHN0dWZmIHRvIHNtYXJ0eS4KICAgICR0cGwgPSAkdGhpcy0+Q3JlYXRlU21hcnR5VGVtcGxhdGUoJHRoZXRlbXBsYXRlKTsKICAgICRwYXJtcyA9IGFycmF5KCdmZXVfZ2lkJz0+JGdpZCk7CiAgICAkcGFybXNbJ25vY2FwdGNoYSddID0gJG5vY2FwdGNoYTsKICAgICRwYXJtc1sncmV0dXJudG8nXSA9ICRyZXR1cm50bzsKICAgICRwYXJtc1snZmV1X2xvc3R1bnRlbXBsYXRlJ10gPSAkdGhldGVtcGxhdGU7CiAgICAkdHBsLT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DR0NyZWF0ZUZvcm1TdGFydCgkaWQsJ2xvc3R1c2VybmFtZScsJHJldHVybmlkLCRwYXJtcykpOwogICAgJHRwbC0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CiAgICAkdHBsLT5hc3NpZ24oJ3VzZXJuYW1lX2lzX2VtYWlsJywkdXNlcm5hbWVfaXNfZW1haWwpOwogICAgJHRwbC0+YXNzaWduKCd1bmZsZGxlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJykpOwogICAgJHRwbC0+YXNzaWduKCdtYXhfdW5mbGRsZW4nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnKSk7CiAgICAkdHBsLT5hc3NpZ24oJ21lc3NhZ2UnLCRtZXNzYWdlKTsKCiAgICBpZiggISRub2NhcHRjaGEgKSB7CiAgICAgICAgJGNhcHRjaGEgPSAkdGhpcy0+R2V0TW9kdWxlSW5zdGFuY2UoJ0NhcHRjaGEnKTsKICAgICAgICBpZiggaXNfb2JqZWN0KCRjYXB0Y2hhKSApIHsKICAgICAgICAgICAgJHRwbC0+YXNzaWduKCdjYXB0Y2hhJywgJGNhcHRjaGEtPmdldENhcHRjaGEoKSk7CiAgICAgICAgICAgICR0cGwtPmFzc2lnbignY2FwdGNoYV90aXRsZScsICR0aGlzLT5MYW5nKCdjYXB0Y2hhX3RpdGxlJykpOwogICAgICAgICAgICAkdGVzdCA9IG1ldGhvZF9leGlzdHMoJGNhcHRjaGEsICdOZWVkc0lucHV0RmllbGQnKSA/ICRjYXB0Y2hhLT5OZWVkc0lucHV0RmllbGQoKSA6IHRydWU7CiAgICAgICAgICAgICR0cGwtPmFzc2lnbignbmVlZF9jYXB0Y2hhX2lucHV0JywkdGVzdCk7CiAgICAgICAgfQogICAgfQoKICAgICR0cGwtPmFzc2lnbignY29udHJvbHMnLCAkcm93YXJyYXkpOwogICAgJHRwbC0+ZGlzcGxheSgpOwp9CmNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgLy8gZmF0YWwgZXJyb3IgdGhhdCB3ZSBjYW50IHdvcmsgYXJvdW5kLgogICAgZWNobyAkdGhpcy0+RGlzcGxheUVycm9yTWVzc2FnZSgkZS0+R2V0TWVzc2FnZSgpKTsKfQoKLy8gRU9GCg==]]></data>
	</file>
	<file>
	  <filename>/action.reset_session.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgcmV0dXJuOwokdWlkID0gJHRoaXMtPkxvZ2dlZEluSWQoKTsKaWYoICR1aWQgPT09IGZhbHNlICkgcmV0dXJuOwoKaWYoIGlzc2V0KCRwYXJhbXNbJ2ZldV9jaGVja29ubHknXSkgJiYgJHBhcmFtc1snZmV1X2NoZWNrb25seSddID09IDEgKSB7CiAgICBpZiggIWlzc2V0KCRwYXJhbXNbJ2ZldV91aWQnXSkgKSByZXR1cm47CiAgICAvLyBub3RoaW5nIHRvIGRvIGhlcmUuCn0KZWxzZSB7CiAgICAkdGhldGVtcGxhdGUgPSBcZmV1X3V0aWxzOjpnZXRfdGVtcGxhdGUoJHBhcmFtcywncmVzZXRzZXNzaW9udGVtcGxhdGUnLCdGcm9udEVuZFVzZXJzOjpyZXNldCBzZXNzaW9uJyk7CiAgICAkdHBsID0gJHRoaXMtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCR0aGV0ZW1wbGF0ZSk7CiAgICAkcHJldHR5dXJsID0gImZldS9yZXNldC97JHVpZH0iOwogICAgJHRwbC0+YXNzaWduKCdzZXNzaW9uX3RpbWVvdXQnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VyX3Nlc3Npb25fZXhwaXJlcycpKTsKICAgICR0cGwtPmFzc2lnbigncmVzZXRfdXJsJywKICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJ3Jlc2V0X3Nlc3Npb24nLCRyZXR1cm5pZCwnJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheSgnZmV1X3VpZCc9PiR1aWQsJ2ZldV9jaGVja29ubHknPT4xLCdzaG93dGVtcGxhdGUnPT4nZmFsc2UnKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnJyx0cnVlLGZhbHNlLCcnLGZhbHNlLCRwcmV0dHl1cmwpKTsKICAgICR0cGwtPmRpc3BsYXkoKTsKfQoKIwojIEVPRgojCj8+]]></data>
	</file>
	<file>
	  <filename>/action.silent.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNSBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgcmV0dXJuOwoKJHVpZCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CmlmKCAkdWlkIDwgMSApIHJldHVybjsKCi8vIHJlcGxhY2UgeyRncm91cG5hbWV9IHdpdGggdGhlIGZpcnN0IGdyb3VwbmFtZSB3ZSBjYW4gZmluZCB0aGF0IG1hdGNoZXMKJGdyb3VwcyA9ICR0aGlzLT5HZXRNZW1iZXJHcm91cHNBcnJheSggJHVpZCApOwokZ3JvdXBuYW1lcyA9IGFycmF5KCk7CmZvcmVhY2goICRncm91cHMgYXMgJG9uZSApIHsKICAgICRncm91cG5hbWVzW10gPSAkdGhpcy0+R2V0R3JvdXBOYW1lKCAkb25lWydncm91cGlkJ10gKTsKfQoKJGZldV9kYXRhID0gYXJyYXkoKTsKJGZldV9kYXRhWyd1c2VyaWQnXSA9ICR1aWQ7CiRmZXVfZGF0YVsndXNlcm5hbWUnXSA9ICR0aGlzLT5Mb2dnZWRJbk5hbWUoKTsKJGZldV9kYXRhWydtZW1iZXJfZ3JvdXBzJ10gPSAkZ3JvdXBuYW1lczsKJGZldV9kYXRhWyd1cmxfbG9nb3V0J10gPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2xvZ291dCcsJHJldHVybmlkKTsKCiRwYWdlaWQgPSAkcmV0dXJuaWQ7CmlmKCAoJHRtcCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRfY2hhbmdlc2V0dGluZycpKSApIHsKICAgICR0cGwgPSAkdGhpcy0+Q3JlYXRlU21hcnR5VGVtcGxhdGUoJ3N0cmluZzonLiR0bXApOwogICAgJHRwbC0+YXNzaWduKCdncm91cCcsJGdyb3VwbmFtZSk7CiAgICAkdHBsLT5hc3NpZ24oJ2dyb3VwaWQnLCRncm91cHNbMF1bJ2dyb3VwaWQnXSk7CiAgICAkdHBsLT5hc3NpZ24oJ3VzZXJuYW1lJywkdXNlcm5hbWUpOwogICAgJHRwbC0+YXNzaWduKCd1aWQnLCR1aWQpOwogICAgJHRtcCA9ICR0cGwtPmZldGNoKCk7CiAgICBpZiggJHRtcCApICRwYWdlaWQgPSAkdGhpcy0+cmVzb2x2ZV9hbGlhc19vcl9pZCgkdG1wLCRyZXR1cm5pZCk7Cn0KJGZldV9kYXRhWyd1cmxfY2hhbmdlc2V0dGluZ3MnXSA9ICR0aGlzLT5jcmVhdGVfdXJsKCRpZCwnZGVmYXVsdCcsJHBhZ2VpZCxhcnJheSgnZm9ybSc9PidjaGFuZ2VzZXR0aW5ncycpKTsKCiRwcm9wcyA9ICR0aGlzLT5HZXRVc2VyUHJvcGVydGllcyggJHVpZCApOwpmb3JlYWNoKCAkcHJvcHMgYXMgJHAgKSB7CiAgICAkZmV1X2RhdGFbJHBbJ3RpdGxlJ11dID0gJHBbJ2RhdGEnXTsKfQoKJHNtYXJ0eS0+YXNzaWduKCdmZXVfZGF0YScsJGZldV9kYXRhKTsKJHNtYXJ0eS0+YXNzaWduR2xvYmFsKCdmZXVfZGF0YScsJGZldV9kYXRhKTsK]]></data>
	</file>
	<file>
	  <filename>/action.userhistory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKaWYoICEkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJ2xpc3R1c2VycycgKSApIHJldHVybjsKCiR0aGlzLT5TZXRDdXJyZW50VGFiKCd1c2VyaGlzdG9yeScpOwokdXNlcmlkID0gXGNnZV9wYXJhbTo6Z2V0X2ludCgkcGFyYW1zLCd1c2VyX2lkJyk7CiRwYWdlbGltaXRzID0gYXJyYXkoKTsKJHBhZ2VsaW1pdHNbJzUnXSA9IDU7CiRwYWdlbGltaXRzWycxMCddID0gMTA7CiRwYWdlbGltaXRzWycyNSddID0gMjU7CiRwYWdlbGltaXRzWyc1MCddID0gNTA7CiRwYWdlbGltaXRzWycxMDAnXSA9IDEwMDsKJHBhZ2VsaW1pdHNbJzI1MCddID0gMjUwOwokcGFnZWxpbWl0c1snNTAwJ10gPSA1MDA7CgokZGF0ZWxpc3QgPSBhcnJheSgpOwokZGF0ZWxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfYWxscmVjb3JkcycpXSA9IC0xOwokZGF0ZWxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfb25laG91cm9sZCcpXSA9ICcxaCc7CiRkYXRlbGlzdFskdGhpcy0+TGFuZygnZGF0ZV9zaXhob3Vyb2xkJyldID0gJzZoJzsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3R3ZWx2ZWhvdXJvbGQnKV0gPSAnMTJoJzsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX29uZWRheW9sZCcpXSA9ICcxZCc7CiRkYXRlbGlzdFskdGhpcy0+TGFuZygnZGF0ZV9vbmV3ZWVrb2xkJyldID0gJzF3JzsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3R3b3dlZWtzb2xkJyldID0gJzJ3JzsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX29uZW1vbnRob2xkJyldID0gJzFtJzsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3RocmVlbW9udGhzb2xkJyldID0gJzNtJzsKJGRhdGVsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3NpeG1vbnRoc29sZCcpXSA9ICc2bSc7CiRkYXRlbGlzdFskdGhpcy0+TGFuZygnZGF0ZV9vbmV5ZWFyb2xkJyldID0gJzF5JzsKCiRzb3J0b3JkZXJzID0gYXJyYXkoKTsKJHNvcnRvcmRlcnNbJHRoaXMtPkxhbmcoJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnKV0gPSAncmVmZGF0ZSBERVNDJzsKJHNvcnRvcmRlcnNbJHRoaXMtPkxhbmcoJ3NvcnRvcmRlcl9kYXRlX2FzYycpXSA9ICdyZWZkYXRlIEFTQyc7CiRzb3J0b3JkZXJzWyR0aGlzLT5MYW5nKCdzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnKV0gPSAnYWN0aW9uIERFU0MnOwokc29ydG9yZGVyc1skdGhpcy0+TGFuZygnc29ydG9yZGVyX2FjdGlvbl9hc2MnKV0gPSAnYWN0aW9uIEFTQyc7CiRzb3J0b3JkZXJzWyR0aGlzLT5MYW5nKCdzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnKV0gPSAnaXBhZGRyZXNzIERFU0MnOwokc29ydG9yZGVyc1skdGhpcy0+TGFuZygnc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnKV0gPSAnaXBhZGRyZXNzIEFTQyc7CmlmKCAkdXNlcmlkID09ICcnICkgewogICAgJHNvcnRvcmRlcnNbJHRoaXMtPkxhbmcoJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJyldID0gJ3VzZXJuYW1lIERFU0MnOwogICAgJHNvcnRvcmRlcnNbJHRoaXMtPkxhbmcoJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnKV0gPSAndXNlcm5hbWUgQVNDJzsKfQoKJGV2ZW50dHlwZXMgPSBhcnJheSgpOwokZXZlbnR0eXBlc1snYWxsJ10gPSAnYWxsJzsKJGV2ZW50dHlwZXNbJ2ZhaWwnXSA9ICdmYWlsJzsKJGV2ZW50dHlwZXNbJ2xvZ2luJ10gPSAnbG9naW4nOwokZXZlbnR0eXBlc1snbG9nb3V0J10gPSAnbG9nb3V0JzsKJGV2ZW50dHlwZXNbJ2V4cGlyZSddID0gJ2V4cGlyZSc7CiRldmVudHR5cGVzWydyZXNldHB3J10gPSAncmVzZXRwdyc7CiRldmVudHR5cGVzWydnZXR1c2VybmFtZSddID0gJ2dldHVzZXJuYW1lJzsKJGV2ZW50dHlwZXNbJ2ZvcmdvdHB3J10gPSAnZm9yZ290cHcnOwokZXZlbnR0eXBlc1snaW5pdF92ZXJpZnknXSA9ICdpbml0X3ZlcmlmeSc7CiRldmVudHR5cGVzWyd2ZXJpZnkgY29tcGxldGUnXSA9ICd2ZXJpZnkgY29tcGxldGUnOwokZXZlbnR0eXBlc1snYWRtaW4gYWRkIHVzZXInXSA9ICdhZG1pbiBhZGQgdXNlcic7CiRldmVudHR5cGVzWydhZG1pbiBjaGFuZ2Ugc2V0dGluZ3MnXSA9ICdhZG1pbiBjaGFuZ2Ugc2V0dGluZ3MnOwppZiggaXNzZXQoICRwYXJhbXNbJ3N1Ym1pdHVzZXJoaXN0b3J5J10gKSApIHsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfcGFnZWxpbWl0J10gKSApICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9wYWdlbGltaXQnLCRwYXJhbXNbJ2lucHV0X3BhZ2VsaW1pdCddKTsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfc29ydG9yZGVyJ10gKSApICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9zb3J0b3JkZXInLCRwYXJhbXNbJ2lucHV0X3NvcnRvcmRlciddKTsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZXZlbnR0eXBlJ10gKSApICR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9ldmVudHR5cGUnLCRwYXJhbXNbJ2lucHV0X2V2ZW50dHlwZSddKTsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZmlsdGVyX2RhdGUnXSApICkgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X2RhdGUnLCRwYXJhbXNbJ2lucHV0X2ZpbHRlcl9kYXRlJ10pOwogICAgaWYoIGlzc2V0KCAkcGFyYW1zWydpbnB1dF9ncm91cF9pcCddICkgKSAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X2dyb3VwX2lwJywkcGFyYW1zWydpbnB1dF9ncm91cF9pcCddKTsKICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfdXNlcm5hbWVfcmVnZXgnXSApICkgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X3VzZXJuYW1lX3JlZ2V4JywkcGFyYW1zWydpbnB1dF91c2VybmFtZV9yZWdleCddKTsKICAgIGlmKCAhJHVzZXJpZCApICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwndXNlcmhpc3RvcnknKTsKfQplbHNlIGlmKCBpc3NldCggJHBhcmFtc1sncmVzZXQnXSApICkgewogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X3BhZ2VsaW1pdCcsMTApOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X2V2ZW50dHlwZScsJ2FsbCcpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X2RhdGUnLCctMScpOyAvLyB0b2RvCiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcmhpc3RvcnlfZ3JvdXBfaXAnLDApOyAvLyB0b2RvCiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcmhpc3Rvcnlfc29ydG9yZGVyJywncmVmZGF0ZSBERVNDJyk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcmhpc3RvcnlfdXNlcm5hbWVfcmVnZXgnLCcnKTsKICAgIGlmKCAhJHVzZXJpZCApICR0aGlzLT5SZWRpcmVjdFRvVGFiKCRpZCwndXNlcmhpc3RvcnknKTsKfQoKJGlucHV0X3BhZ2VsaW1pdCA9IChpbnQpJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X3BhZ2VsaW1pdCcsMTApOwokaW5wdXRfc29ydG9yZGVyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X3NvcnRvcmRlcicsJ3JlZmRhdGUgREVTQycpOwokaW5wdXRfZXZlbnR0eXBlID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJoaXN0b3J5X2V2ZW50dHlwZScsJ2FsbCcpOwokaW5wdXRfZmlsdGVyX2RhdGUgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcmhpc3RvcnlfZGF0ZScsJy0xJyk7CiRpbnB1dF9ncm91cF9pcCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV9ncm91cF9pcCcsMCk7CiRpbnB1dF91c2VybmFtZV9yZWdleCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VyaGlzdG9yeV91c2VybmFtZV9yZWdleCcpOwoKLy8gQWRkIHRoZSB1c2VyIGluZm8gdG8gc21hcnR5CmlmKCAkdXNlcmlkICE9ICcnICkgewogICAgJHRoaXMtPlNldEVuY3J5cHRpb25LZXkoJHVzZXJpZCk7CiAgICAkcmVzdWx0cyA9ICR0aGlzLT5HZXRVc2VySW5mbygkcGFyYW1zWyd1c2VyX2lkJ10pOwogICAgJHVzZXJpbmZvID0gJyc7CiAgICBpZiggJHJlc3VsdHNbMF0gPT09IFRSVUUgKSAkdXNlcmluZm8gPSAkcmVzdWx0c1sxXTsKICAgIGZvcmVhY2goICR1c2VyaW5mbyBhcyAkayA9PiAkdiApIHsKICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ3VzZXJfJy4kaywkdik7CiAgICB9CiAgICAkcHJvcHMgPSAkdGhpcy0+R2V0VXNlclByb3BlcnRpZXMoJHBhcmFtc1sndXNlcl9pZCddKTsKICAgIGZvcmVhY2goICRwcm9wcyBhcyAkb25lcHJvcCApIHsKICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ3VzZXJwcm9wXycuJG9uZXByb3BbJ3RpdGxlJ10sJG9uZXByb3BbJ2RhdGEnXSk7CiAgICB9Cn0KCi8vIGZpZ3VyZSBvdXQgd2hhdCBwYWdlIHdlJ3JlIG9uCiRwYWdlbnVtYmVyID0gXGNnZV9wYXJhbTo6Z2V0X2ludCgkcGFyYW1zLCdwYWdlbnVtYmVyJywxKTsKJHN0YXJ0ZWxlbWVudCA9ICgkcGFnZW51bWJlci0xKSAqICRpbnB1dF9wYWdlbGltaXQ7CgovLwovLyBBZGQgdGhlIGhpc3RvcnkgdG8gc21hcnR5Ci8vCiR3aGVyZSA9IGFycmF5KCk7CiRwYXJtcyA9IGFycmF5KCk7CiRxdWVyeTEgPSAiU0VMRUNUIEEuKixCLnVzZXJuYW1lCiAgICAgICAgICAgICBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IEEsCiAgICAgICAgICAgICAgICAgICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2VycyBCCiAgICAgICAgICAgIFdIRVJFIEEudXNlcmlkID0gQi5pZCI7CiRxdWVyeTIgPSAiU0VMRUNUIENPVU5UKEEudXNlcmlkKSBBUyBjb3VudAogICAgICAgICAgICAgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfaGlzdG9yeSBBLAogICAgICAgICAgICAgICAgICAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMgQgogICAgICAgICAgICBXSEVSRSBBLnVzZXJpZCA9IEIuaWQiOwppZiggJHVzZXJpZCA+IDEgKSB7CiAgICAkd2hlcmVbXSA9ICd1c2VyaWQgPSA/JzsKICAgICRwYXJtc1tdID0gJHVzZXJpZDsKfQplbHNlIHsKICAgIC8vIG9ubHkgdXNlIHRoZSB1c2VybmFtZSByZWdleCBpZiB0aGUgdXNlcmlkIGlzIGVtcHR5CiAgICBpZiggJGlucHV0X3VzZXJuYW1lX3JlZ2V4ICE9ICcnICkgewogICAgICAgICR3aGVyZVtdID0gJ3VzZXJuYW1lIFJFR0VYUCA/JzsKICAgICAgICAkcGFybXNbXSA9ICRpbnB1dF91c2VybmFtZV9yZWdleDsKICAgIH0KfQppZiggJGlucHV0X2V2ZW50dHlwZSAhPSAnYWxsJyApIHsKICAgICR3aGVyZVtdID0gJ2FjdGlvbiA9ID8nOwogICAgJHBhcm1zW10gPSAkaW5wdXRfZXZlbnR0eXBlOwp9CmlmKCAkaW5wdXRfZmlsdGVyX2RhdGUgIT0gLTEgKSB7CiAgICAkZGF0ZSA9ICcnOwogICAgc3dpdGNoKCAkaW5wdXRfZmlsdGVyX2RhdGUgKSB7CiAgICBjYXNlICcxaCc6CiAgICAgICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgaG91ciBhZ28nKTsKICAgICAgICBicmVhazsKICAgIGNhc2UgJzZoJzoKICAgICAgICAkZGF0ZSA9IHN0cnRvdGltZSgnNiBob3VycyBhZ28nKTsKICAgICAgICBicmVhazsKICAgIGNhc2UgJzEyaCc6CiAgICAgICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEyIGhvdXJzIGFnbycpOwogICAgICAgIGJyZWFrOwogICAgY2FzZSAnMWQnOgogICAgICAgICRkYXRlID0gc3RydG90aW1lKCcxIGRheSBhZ28nKTsKICAgICAgICBicmVhazsKICAgIGNhc2UgJzF3JzoKICAgICAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMSB3ZWVrIGFnbycpOwogICAgICAgIGJyZWFrOwogICAgY2FzZSAnMncnOgogICAgICAgICRkYXRlID0gc3RydG90aW1lKCcyIHdlZWtzIGFnbycpOwogICAgICAgIGJyZWFrOwogICAgY2FzZSAnMW0nOgogICAgICAgICRkYXRlID0gc3RydG90aW1lKCcxIG1vbnRoIGFnbycpOwogICAgICAgIGJyZWFrOwogICAgY2FzZSAnM20nOgogICAgICAgICRkYXRlID0gc3RydG90aW1lKCczIG1vbnRocyBhZ28nKTsKICAgICAgICBicmVhazsKICAgIGNhc2UgJzZtJzoKICAgICAgICAkZGF0ZSA9IHN0cnRvdGltZSgnNiBtb250aHMgYWdvJyk7CiAgICAgICAgYnJlYWs7CiAgICBjYXNlICcxeSc6CiAgICAgICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgeWVhciBhZ28nKTsKICAgICAgICBicmVhazsKICAgIH0KICAgIGlmKCAkZGF0ZSAhPSAnJyApIHsKICAgICAgICAkd2hlcmVbXSA9ICdyZWZkYXRlID4gPyc7CiAgICAgICAgJHBhcm1zW10gPSB0cmltKCRkYi0+RGJUaW1lU3RhbXAoJGRhdGUpLCInIik7CiAgICB9Cn0KaWYoIGNvdW50KCR3aGVyZSkgPiAwICkgewogICAgJHF1ZXJ5MSAuPSAnIEFORCAnLmltcGxvZGUoJyBBTkQgJywkd2hlcmUpOwogICAgJHF1ZXJ5MiAuPSAnIEFORCAnLmltcGxvZGUoJyBBTkQgJywkd2hlcmUpOwp9CmlmKCAkaW5wdXRfZ3JvdXBfaXAgPT0gMSApIHsKICAgICRxdWVyeTEgLj0gJyBHUk9VUCBCWSBpcGFkZHJlc3MnOwogICAgJHF1ZXJ5MiAuPSAnIEdST1VQIEJZIGlwYWRkcmVzcyc7Cn0KJHF1ZXJ5MSAuPSAiIE9SREVSIEJZICIuJGlucHV0X3NvcnRvcmRlcjsKJHF1ZXJ5MSAuPSAiIExJTUlUICRzdGFydGVsZW1lbnQsJGlucHV0X3BhZ2VsaW1pdCI7CgovLyBOb3cgZ2V0IHRoZSBjb3VudCwgYW5kIG51bWJlciBvZiBwYWdlcwokdG1wcm93ID0gJGRiLT5HZXRSb3coICRxdWVyeTIsICRwYXJtcyApOwokcmVjb3JkY291bnQgPSAkdG1wcm93Wydjb3VudCddOwokcGFnZWNvdW50ID0gKGludCljZWlsKCRyZWNvcmRjb3VudCAvICRpbnB1dF9wYWdlbGltaXQpOwokc21hcnR5LT5hc3NpZ24oJ3JlY29yZGNvdW50JywkcmVjb3JkY291bnQpOwoKLy8gc29tZSBwYWdpbmF0aW9uIHZhcmlhYmxlcyB0byBzbWFydHkuCmlmKCAkcGFnZW51bWJlciA9PSAxICkgewogICAgJHNtYXJ0eS0+YXNzaWduKCdwcmV2cGFnZScsJzwnKTsKICAgICRzbWFydHktPmFzc2lnbignZmlyc3RwYWdlJywnPDwnKTsKfQplbHNlIHsKICAgICRzbWFydHktPmFzc2lnbigncHJldnBhZ2UnLAogICAgICAgICAgICAgICAgICAgICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwkcGFyYW1zWydhY3Rpb24nXSwgJHJldHVybmlkLCc8JywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheSgncGFnZW51bWJlcic9PiRwYWdlbnVtYmVyLTEsICd1c2VyX2lkJz0+JHVzZXJpZCwnY2dfYWN0aXZldGFiJz0+J3VzZXJoaXN0b3J5JykpKTsKICAgICRzbWFydHktPmFzc2lnbignZmlyc3RwYWdlJywKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlTGluaygkaWQsJHBhcmFtc1snYWN0aW9uJ10sICRyZXR1cm5pZCwnPDwnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5KCdwYWdlbnVtYmVyJz0+MSwgJ3VzZXJfaWQnPT4kdXNlcmlkLCdjZ19hY3RpdmV0YWInPT4ndXNlcmhpc3RvcnknKSkpOwp9CmlmKCAkcGFnZW51bWJlciA+PSAkcGFnZWNvdW50ICkgewogICAgJHNtYXJ0eS0+YXNzaWduKCduZXh0cGFnZScsJz4nKTsKICAgICRzbWFydHktPmFzc2lnbignbGFzdHBhZ2UnLCc+PicpOwp9CmVsc2UgewogICAgJHNtYXJ0eS0+YXNzaWduKCduZXh0cGFnZScsCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCRwYXJhbXNbJ2FjdGlvbiddLCAkcmV0dXJuaWQsJz4nLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5KCdwYWdlbnVtYmVyJz0+JHBhZ2VudW1iZXIrMSwgJ3VzZXJfaWQnPT4kdXNlcmlkLCdjZ19hY3RpdmV0YWInPT4ndXNlcmhpc3RvcnknKSkpOwoKICAgICRzbWFydHktPmFzc2lnbignbGFzdHBhZ2UnLAogICAgICAgICAgICAgICAgICAgICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwkcGFyYW1zWydhY3Rpb24nXSwgJHJldHVybmlkLCc+PicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXkoJ3BhZ2VudW1iZXInPT4kcGFnZWNvdW50LCAndXNlcl9pZCc9PiR1c2VyaWQsJ2NnX2FjdGl2ZXRhYic9Pid1c2VyaGlzdG9yeScpKSk7Cgp9CiRzbWFydHktPmFzc2lnbigncGFnZW51bWJlcicsJHBhZ2VudW1iZXIpOwokc21hcnR5LT5hc3NpZ24oJ3BhZ2Vjb3VudCcsJHBhZ2Vjb3VudCk7CiRzbWFydHktPmFzc2lnbignb2Z0ZXh0JywkdGhpcy0+TGFuZygncHJvbXB0X29mJykpOwppZiggJHVzZXJpZCA9PSAnJyApICRzbWFydHktPmFzc2lnbignbXVsdGl1c2VyJywxKTsKCi8vIFRoZSBkYXRhYmFzZSBxdWVyeQokZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxdWVyeTEsICRwYXJtcyApOwokcm93YXJyYXkgPSBhcnJheSgpOwokcm93Y2xhc3MgPSAncm93MSc7CndoaWxlKCAkZGJyZXN1bHQgJiYgISRkYnJlc3VsdC0+RU9GICkgewogICAgJGZpZWxkcyA9ICRkYnJlc3VsdC0+ZmllbGRzOwogICAgJG9uZXJvdyA9IG5ldyBzdGRDbGFzcygpOwogICAgZm9yZWFjaCggJGZpZWxkcyBhcyAka2V5ID0+ICR2YWx1ZSApIHsKICAgICAgICAkb25lcm93LT4ka2V5ID0gJHZhbHVlOwogICAgfQoKICAgIC8vIGZpeCBzb21lIGZpZWxkcyB1cAogICAgJG9uZXJvdy0+cmVmZGF0ZSA9ICRkYi0+VW5peFRpbWVTdGFtcCgkb25lcm93LT5yZWZkYXRlKTsKICAgIGlmKCAkb25lcm93LT5pcGFkZHJlc3MgPT0gJycgKSAkb25lcm93LT5pcGFkZHJlc3MgPSAkdGhpcy0+TGFuZygndW5rbm93bicpOwogICAgJG9uZXJvdy0+cm93Y2xhc3MgPSAkcm93Y2xhc3M7CgogICAgJHJvd2FycmF5W10gPSAkb25lcm93OwogICAgJHJvd2NsYXNzID0gKCRyb3djbGFzcyA9PSAncm93MScpID8gJ3JvdzInIDogJ3JvdzEnOwogICAgJGRicmVzdWx0LT5Nb3ZlTmV4dCgpOwp9CgppZiggY291bnQoJHJvd2FycmF5KSA9PSAwICkgJHNtYXJ0eS0+YXNzaWduKCdtZXNzYWdlJywkdGhpcy0+TGFuZygnaW5mb19ub2hpc3RvcnlkZXRlY3RlZCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfcmVjb3Jkc2ZvdW5kJywkdGhpcy0+TGFuZygncHJvbXB0X3JlY29yZHNmb3VuZCcpKTsKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZV9sZWdlbmRfZmlsdGVyJywkdGhpcy0+TGFuZygnZmlsdGVyJykpOwokc21hcnR5LT5hc3NpZ24oJ3RpdGxlX2xlZ2VuZF9ncm91cHNvcnQnLCR0aGlzLT5MYW5nKCd0aXRsZV9ncm91cHNvcnQnKSk7CiRzbWFydHktPmFzc2lnbignZm9ybXN0YXJ0JywkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoJGlkLCd1c2VyaGlzdG9yeScpKTsKJHNtYXJ0eS0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ3N1Ym1pdHVzZXJoaXN0b3J5JywkdGhpcy0+TGFuZygnc3VibWl0JykpKTsKJHNtYXJ0eS0+YXNzaWduKCdyZXNldCcsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwncmVzZXQnLCR0aGlzLT5MYW5nKCdyZXNldCcpKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9wYWdlbGltaXQnLCR0aGlzLT5MYW5nKCdwcm9tcHRfcGFnZWxpbWl0JykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3BhZ2VsaW1pdCcsICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwnaW5wdXRfcGFnZWxpbWl0JywkcGFnZWxpbWl0cywgLTEsICRpbnB1dF9wYWdlbGltaXQpKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3NvcnRvcmRlcicsJHRoaXMtPkxhbmcoJ3NvcnRieScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9zb3J0b3JkZXInLCAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsJ2lucHV0X3NvcnRvcmRlcicsJHNvcnRvcmRlcnMsIC0xLCAkaW5wdXRfc29ydG9yZGVyKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9ncm91cF9pcCcsJHRoaXMtPkxhbmcoJ3Byb21wdF9ncm91cF9pcCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9ncm91cF9pcCcsCiAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsJ2lucHV0X2dyb3VwX2lwJywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5KCR0aGlzLT5MYW5nKCd5ZXMnKT0+MSwgJHRoaXMtPkxhbmcoJ25vJyk9PjApLCAtMSwgJGlucHV0X2dyb3VwX2lwKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF91c2VybmFtZV9yZWdleCcsJHRoaXMtPkxhbmcoJ3VzZXJmaWx0ZXInKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfdXNlcm5hbWVfcmVnZXgnLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwnaW5wdXRfdXNlcm5hbWVfcmVnZXgnLCAkaW5wdXRfdXNlcm5hbWVfcmVnZXgsIDI1KSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJywkdGhpcy0+TGFuZygncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZmlsdGVyX2V2ZW50dHlwZScsICR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwnaW5wdXRfZXZlbnR0eXBlJywgJGV2ZW50dHlwZXMsIC0xLCRpbnB1dF9ldmVudHR5cGUpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfZmlsdGVyX2RhdGUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfZmlsdGVyX2RhdGUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfZmlsdGVyX2RhdGUnLCAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsJ2lucHV0X2ZpbHRlcl9kYXRlJywgJGRhdGVsaXN0LC0xLCRpbnB1dF9maWx0ZXJfZGF0ZSkpOwoKJHNtYXJ0eS0+YXNzaWduKCd0aXRsZV91c2VyaGlzdG9yeScsJHRoaXMtPkxhbmcoJ3RpdGxlX3VzZXJoaXN0b3J5JykpOwokc21hcnR5LT5hc3NpZ24oJ2ZvcicsJHRoaXMtPkxhbmcoJ2ZvcicpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfdXNlcm5hbWUnLCR0aGlzLT5MYW5nKCdwcm9tcHRfdXNlcm5hbWUnKSk7CiRzbWFydHktPmFzc2lnbigncHJvbXB0X2ZvcicsJHRoaXMtPkxhbmcoJ3Byb21wdF9mb3InKSk7CiRzbWFydHktPmFzc2lnbignaXRlbXMnLCRyb3dhcnJheSk7CiRzbWFydHktPmFzc2lnbignaXRlbWNvdW50Jyxjb3VudCgkcm93YXJyYXkpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfcmVmZGF0ZScsJHRoaXMtPkxhbmcoJ3Byb21wdF9kYXRlJykpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9hY3Rpb24nLCR0aGlzLT5MYW5nKCdwcm9tcHRfZXZlbnR0eXBlJykpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9pcGFkZHJlc3MnLCR0aGlzLT5MYW5nKCdwcm9tcHRfaXBhZGRyZXNzJykpOwoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCd1c2VyaGlzdG9yeS50cGwnKTsKLy8gRU9GCg==]]></data>
	</file>
	<file>
	  <filename>/action.user_forcenewpw.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhZGVmaW5lZCgnQ01TX1ZFUlNJT04nKSApIGV4aXQ7CgokdGVtcGxhdGUgPSBcZmV1X3V0aWxzOjpnZXRfdGVtcGxhdGUoJHBhcmFtcywnZm9yY2VuZXdwd3RlbXBsYXRlJywnRnJvbnRFbmRVc2Vyczo6Zm9yY2UgbmV3IHBhc3N3b3JkJyk7CiR0cGwgPSAkdGhpcy0+Q3JlYXRlU21hcnR5VGVtcGxhdGUoJHRlbXBsYXRlKTsKJHRwbC0+YXNzaWduKCdmb3Jtc3RhcnQnLCR0aGlzLT5DR0NyZWF0ZUZvcm1TdGFydCgkaWQsJ3VzZXJfZm9yY2VuZXdwdycsJHJldHVybmlkLCRwYXJhbXMpKTsKJHRwbC0+YXNzaWduKCdmb3JtZW5kJywkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsKCnRyeSB7CiAgICAkdWlkID0gKGludCkgY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHBhcmFtcywndWlkJyk7CiAgICBpZiggJHVpZCA8IDEgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXJhbXMnKSk7CiAgICAkdWlkMiA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CiAgICBpZiggJHVpZCAhPSAkdWlkMiApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZHBhcmFtcycpKTsKCiAgICBpZiggaXNzZXQoJHBhcmFtc1snZmV1X3N1Ym1pdCddKSApIHsKICAgICAgICAkcHcxID0gY21zX2h0bWxfZW50aXR5X2RlY29kZShjZ2VfdXRpbHM6OmdldF9wYXJhbSgkcGFyYW1zLCdmZXVfcGFzc3dvcmQnKSk7CiAgICAgICAgJHB3MiA9IGNtc19odG1sX2VudGl0eV9kZWNvZGUoY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHBhcmFtcywnZmV1X3JlcGVhdHBhc3N3b3JkJykpOwogICAgICAgIGlmKCAkcHcxICE9ICRwdzIgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnKSk7CgogICAgICAgIC8vIHNlZSBpZiBpdCBpcyBhIHZhbGlkIHBhc3N3b3JkLgogICAgICAgIGlmKCAhJHRoaXMtPklzVmFsaWRQYXNzd29yZCgkcHcxICkgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXNzd29yZCcpKTsKCiAgICAgICAgLy8gbm93IHNlZSBpZiB0aGUgcGFzc3dvcmQgaGFzIGFjdHVhbGx5IGNoYW5nZWQuCiAgICAgICAgJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKICAgICAgICAkZW5jcnlwdGVkID0gJHRoaXMtPkVuY3J5cHRQYXNzd29yZCgkdWlkLCRwdzEpOwogICAgICAgICRxdWVyeSA9ICdTRUxFQ1QgcGFzc3dvcmQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgV0hFUkUgaWQgPSA/JzsKICAgICAgICAkc3RvcmVkID0gJGRiLT5HZXRPbmUoJHF1ZXJ5LGFycmF5KCR1aWQpKTsKICAgICAgICBpZiggJGVuY3J5cHRlZCA9PSAkc3RvcmVkICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9wYXNzd29yZG5vdGNoYW5nZWQnKSk7CgogICAgICAgIC8vIHNldCB0aGUgcGFzc3dvcmQKICAgICAgICAkdGhpcy0+U2V0VXNlclBhc3N3b3JkKCR1aWQsJHB3MSk7CgogICAgICAgIC8vIGRpc2FibGUgdGhlIGZvcmNlIHJlc2V0IGZsYWcKICAgICAgICAkdGhpcy0+Rm9yY2VQYXNzd29yZENoYW5nZSgkdWlkLEZBTFNFKTsKCiAgICAgICAgLy8gYW5kIHJlZGlyZWN0IG91dCBvIGhlcmUuCiAgICAgICAgaWYoICgkcmV0dXJudG8gPSBcY2dlX3BhcmFtOjpnZXRfc3RyaW5nKCRwYXJhbXMsJ3JldHVybnRvJykpICkgewogICAgICAgICAgICAkcGFnZWlkID0gJHRoaXMtPnJlc29sdmVfYWxpYXNfb3JfaWQoJHJldHVybnRvKTsKICAgICAgICAgICAgaWYoICRwYWdlaWQgKSAkdGhpcy0+UmVkaXJlY3RDb250ZW50KCRwYWdlaWQpOwogICAgICAgIH0KICAgICAgICBpZiggKCR1cmwgPSAkdGhpcy0+R2V0UG9zdExvZ2luVVJMKCkpICkgewogICAgICAgICAgICByZWRpcmVjdCgkdXJsKTsKICAgICAgICB9CiAgICAgICAgZWxzZSBpZiggKCR0cGxzdHIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ2luJykpICkgewogICAgICAgICAgICAkdHBsID0gJHRoaXMtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCdzdHJpbmc6Jy4kdHBsc3RyKTsKICAgICAgICAgICAgJGdyb3VwcyA9ICR0aGlzLT5HZXRNZW1iZXJHcm91cHNBcnJheSggJHVpZCApOwogICAgICAgICAgICAkZ3JvdXBuYW1lID0gJHRoaXMtPkdldEdyb3VwTmFtZSggJGdyb3Vwc1swXVsnZ3JvdXBpZCddICk7CiAgICAgICAgICAgICR0cGwtPmFzc2lnbigndXNlcm5hbWUnLCR1c2VybmFtZSk7CiAgICAgICAgICAgICR0cGwtPmFzc2lnbignZ3JvdXAnLCRncm91cG5hbWUpOwogICAgICAgICAgICAkdG1wID0gJHRwbC0+ZmV0Y2goKTsKICAgICAgICAgICAgaWYoICR0bXAgKSB7CiAgICAgICAgICAgICAgICAkcGFnZWlkID0gJHRoaXMtPnJlc29sdmVfYWxpYXNfb3JfaWQoJHRtcCk7CiAgICAgICAgICAgICAgICBpZiggJHBhZ2VpZCApICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHBhZ2VpZCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgLy8gYWxsIGVsc2UgZmFpbHMsIHJlZGlyZWN0IGJhY2sgdG8gb3VyIGN1cnJlbiBwYWdlLgogICAgICAgICR0aGlzLT5SZWRpcmVjdENvbnRlbnQoJHJldHVybmlkKTsKICAgIH0KfQpjYXRjaCggXEV4Y2VwdGlvbiAkZSApIHsKICAgIC8vIG9uIGVycm9yLCB3ZSBqdXN0IGRpc3BsYXkgYSBtZXNzYWdlLgogICAgJHRwbC0+YXNzaWduKCdlcnJvcicsJGUtPkdldE1lc3NhZ2UoKSk7Cn0KCiR0cGwtPmRpc3BsYXkoKTs=]]></data>
	</file>
	<file>
	  <filename>/action.verifycode.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiR1c2VybmFtZSA9ICRmYXRhbCA9ICRlcnJvciA9ICRtZXNzYWdlID0gbnVsbDsKJGRvX2Zvcm0gPSAxOwokdWlkID0gXGNnZV9wYXJhbTo6Z2V0X2ludCgkcGFyYW1zLCd1aWQnKTsKJGNvZGUgPSBcY2dlX3BhcmFtOjpnZXRfc3RyaW5nKCRwYXJhbXMsJ2NvZGUnKTsKJHVzZXJuYW1lX2lzX2VtYWlsID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJywwKTsKJHBhc3N3b3JkMSA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywnZmV1X3Bhc3N3b3JkMScpOwokcGFzc3dvcmQyID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdmZXVfcGFzc3dvcmQyJyk7CiR0ZW1wbGF0ZSA9IFxmZXVfdXRpbHM6OmdldF90ZW1wbGF0ZSgkcGFyYW1zLCdmb3Jnb3Rwd3ZlcmlmeXRlbXBsYXRlJywnRnJvbnRFbmRVc2Vyczo6Zm9yZ290IHBhc3N3b3JkIHZlcmlmeScpOwokdHBsID0gJHRoaXMtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCR0ZW1wbGF0ZSk7Cgp0cnkgewogICAgaWYoICR1aWQgPCAxICkgdGhyb3cgbmV3IFxMb2dpY0V4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJykpOwogICAgaWYoICEkY29kZSApIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycpKTsKICAgICRyZXMgPSAkdGhpcy0+R2V0VXNlckluZm8oJHVpZCk7CiAgICBpZiggISRyZXMgKSB0aHJvdyBuZXcgXExvZ2ljRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl91c2Vybm90Zm91bmQnKSk7CiAgICAkdWluZm8gPSAkcmVzWzFdOwogICAgaWYoICFpc19hcnJheSgkdWluZm8gKSkgdGhyb3cgbmV3IFxMb2dpY0V4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfdXNlcm5vdGZvdW5kJykpOwogICAgaWYoICR1aW5mb1snZGlzYWJsZWQnXSApIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2FjY291bnRkaXNhYmxlZCcpKTsKICAgIGlmKCB0aW1lKCkgPiBzdHJ0b3RpbWUoJHVpbmZvWydleHBpcmVzJ10pICkgdGhyb3cgbmV3IFxMb2dpY0V4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfYWNjb3VudGV4cGlyZWQnKSk7CiAgICAkdXNlcm5hbWUgPSAkdWluZm9bJ3VzZXJuYW1lJ107CgogICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2ZldV9hZnRlcnZlcmlmeSddKSApIHsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2ZldV9hZnRlcnZlcmlmeScsMSk7CiAgICAgICAgJGRvX2Zvcm0gPSAwOwogICAgICAgICRtZXNzYWdlID0gJHRoaXMtPkxhbmcoJ2luZm9fcGFzc3dvcmRfcmVzZXQnKTsKICAgIH0KICAgIGVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ2ZldV9zdWJtaXQnXSkgKSB7CiAgICAgICAgJHRlbXBjb2RlID0gJHRoaXMtPkdldFVzZXJUZW1wQ29kZSgkdWlkKTsKICAgICAgICBpZiggISR0ZW1wY29kZSApIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnKSk7CgogICAgICAgICRjb2RlID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdmZXVfY29kZScpOwogICAgICAgICRwYXNzd29yZDEgPSBjbXNfaHRtbF9lbnRpdHlfZGVjb2RlKFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywnZmV1X3Bhc3N3b3JkMScpKTsKICAgICAgICAkcGFzc3dvcmQyID0gY21zX2h0bWxfZW50aXR5X2RlY29kZShcY2dlX3BhcmFtOjpnZXRfc3RyaW5nKCRwYXJhbXMsJ2ZldV9wYXNzd29yZDInKSk7CiAgICAgICAgaWYoICEkdGhpcy0+SXNWYWxpZFBhc3N3b3JkKCRwYXNzd29yZDEpICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkcGFzc3dvcmQnKSk7CiAgICAgICAgaWYoICRwYXNzd29yZDEgIT0gJHBhc3N3b3JkMiApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCcpKTsKICAgICAgICBpZiggJGNvZGUgIT0gJHRlbXBjb2RlICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkY29kZScpKTsKICAgICAgICAkdGhpcy0+U2V0VXNlclBhc3N3b3JkKCR1aWQsJHBhc3N3b3JkMSk7CiAgICAgICAgJHRoaXMtPlJlbW92ZVVzZXJUZW1wQ29kZSgkdWlkKTsKICAgICAgICAkdXNlcm5hbWUgPSAkdGhpcy0+R2V0VXNlcm5hbWUoJHVpZCk7CgogICAgICAgIC8vIGFuZCBzZW5kIGFuIGV2ZW50CiAgICAgICAgJGV2ZW50X3BhcmFtcyA9IGFycmF5KCk7CiAgICAgICAgJGV2ZW50X3BhcmFtc1snbmFtZSddID0gJHVzZXJuYW1lOwogICAgICAgICRldmVudF9wYXJhbXNbJ2lkJ10gPSAkdWlkOwogICAgICAgICR0aGlzLT5TZW5kRXZlbnQoJ09uVXBkYXRlVXNlcicsJGV2ZW50X3BhcmFtcyk7CiAgICAgICAgJHRoaXMtPl9TZW5kTm90aWZpY2F0aW9uRW1haWwoJ09uVXBkYXRlVXNlcicsJGV2ZW50X3BhcmFtcyk7CgogICAgICAgIC8vIGFuZCBhdWRpdCBpdAogICAgICAgIGF1ZGl0KCR1aWQsJHRoaXMtPkdldE5hbWUoKSwnU3VjY2Vzc2Z1bGx5IGNoYW5nZWQgcGFzc3dvcmQgdmlhIGZvcmdvdHB3Jyk7CiAgICAgICAgJHRoaXMtPmFkZF9oaXN0b3J5KCR1aWQsJ3Jlc2V0cHcnKTsKCiAgICAgICAgLy8gYW5kIHJlZGlyZWN0IHNvbWV3aGVyZQogICAgICAgICRwYWdldHBsID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZF9hZnRlcnZlcmlmeScpOwogICAgICAgIGlmKCAkcGFnZXRwbCApIHsKICAgICAgICAgICAgJHRwbDIgPSAkdGhpcy0+Q3JlYXRlU21hcnR5VGVtcGxhdGUoJ3N0cmluZzonLiRwYWdldHBsKTsKICAgICAgICAgICAgJHRwbDItPmFzc2lnbigndXNlcm5hbWUnLCRldmVudF9wYXJhbXNbJ25hbWUnXSk7CiAgICAgICAgICAgICR0cGwyLT5hc3NpZ24oJ3VpZCcsJHVpZCk7CiAgICAgICAgICAgICRncm91cHMgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoICR1aWQgKTsKICAgICAgICAgICAgJGdyb3VwbmFtZSA9ICR0aGlzLT5HZXRHcm91cE5hbWUoICRncm91cHNbMF1bJ2dyb3VwaWQnXSApOwogICAgICAgICAgICAkdHBsMi0+YXNzaWduKCdncm91cG5hbWUnLCRncm91cG5hbWUpOwogICAgICAgICAgICAkcGFnZSA9ICR0cGwyLT5mZXRjaCgpOwogICAgICAgICAgICAkZGVzdCA9ICR0aGlzLT5yZXNvbHZlX2FsaWFzX29yX2lkKCRwYWdlLCRyZXR1cm5pZCk7CiAgICAgICAgICAgIGlmKCAhJGRlc3QgKSB7CiAgICAgICAgICAgICAgICBhdWRpdCgnJywkdGhpcy0+R2V0TmFtZSgpLCdDb3VsZCBub3QgY29udmVydCB0ZW1wbGF0ZSAmcXVvdDsnLiRwYWdldHBsLicmcXVvdDsgdG8gYSBwYWdlIGlkJyk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAkdGhpcy0+UmVkaXJlY3RDb250ZW50KCRkZXN0KTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgLy8gcmVkaXJlY3QgYWZ0ZXIgUE9TVAogICAgICAgICAgICAkcGFybXMgPSBhcnJheSgnZmV1X2FmdGVydmVyaWZ5Jz0+MSwndWlkJz0+JHVpZCwnY29kZSc9PidfX2ludmFsaWRfXycpOwogICAgICAgICAgICAkdGhpcy0+cmVkaXJlY3QoJ2NudG50MDAxJywndmVyaWZ5Y29kZScsJHJldHVybmlkLCRwYXJtcyk7CiAgICAgICAgfQogICAgfQp9CmNhdGNoKCBcUnVudGltZUV4Y2VwdGlvbiAkZSApIHsKICAgICRlcnJvciA9IDE7CiAgICAkbWVzc2FnZSA9ICRlLT5HZXRNZXNzYWdlKCk7Cn0KY2F0Y2goIFxMb2dpY0V4Y2VwdGlvbiAkZSApIHsKICAgICRkb19mb3JtID0gMDsKICAgICRlcnJvciA9IDE7CiAgICAkbWVzc2FnZSA9ICRlLT5HZXRNZXNzYWdlKCk7Cn0KCgovLyBjcmVhdGUgdGhlIHRlbXBsYXRlCmlmKCAkZG9fZm9ybSApIHsKICAgICRwYXJtcyA9IGFycmF5KCd1aWQnPT4kdWlkLCdjb2RlJz0+JGNvZGUpOwogICAgJHRwbC0+YXNzaWduKCdzdGFydGZvcm0nLCR0aGlzLT5DR0NyZWF0ZUZvcm1TdGFydCgnY250bnQwMScsJ3ZlcmlmeWNvZGUnLCRyZXR1cm5pZCwkcGFybXMpKTsKICAgICR0cGwtPmFzc2lnbignZW5kZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7Cn0KJHRwbC0+YXNzaWduKCd1bmZsZGxlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJykpOwokdHBsLT5hc3NpZ24oJ21heF91bmZsZGxlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF91c2VybmFtZWxlbmd0aCcpKTsKJHRwbC0+YXNzaWduKCdwd2ZsZGxlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJykpOwokdHBsLT5hc3NpZ24oJ21heF9wd2ZsZGxlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpKTsKJHRwbC0+YXNzaWduKCd1c2VybmFtZV9pc19lbWFpbCcsJHVzZXJuYW1lX2lzX2VtYWlsKTsKJHRwbC0+YXNzaWduKCd1c2VybmFtZScsJHVzZXJuYW1lKTsKJHRwbC0+YXNzaWduKCdwYXNzd29yZDEnLCRwYXNzd29yZDEpOwokdHBsLT5hc3NpZ24oJ3Bhc3N3b3JkMicsJHBhc3N3b3JkMik7CiR0cGwtPmFzc2lnbignY29kZScsJGNvZGUpOwokdHBsLT5hc3NpZ24oJ3VpZCcsJHVpZCk7CiR0cGwtPmFzc2lnbignZXJyb3InLCRlcnJvcik7CiR0cGwtPmFzc2lnbignbWVzc2FnZScsJG1lc3NhZ2UpOwokdHBsLT5kaXNwbGF5KCk7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.verifyonly.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNiBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiR0aXRsZSA9ICRlcnJvciA9ICRtc2cgPSBudWxsOwoKdHJ5IHsKICAgICR1aWQgPSBcY2dlX3BhcmFtOjpnZXRfaW50KCRwYXJhbXMsJ3VpZCcpOwogICAgaWYoICR1aWQgPCAxICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnKSk7CiAgICAkcmVzID0gJHRoaXMtPkdldFVzZXJJbmZvKCR1aWQpOwogICAgaWYoICEkcmVzICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl91c2Vybm90Zm91bmQnKSk7CiAgICAkdWluZm8gPSAkcmVzWzFdOwogICAgaWYoICFpc19hcnJheSgkdWluZm8gKSkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl91c2Vybm90Zm91bmQnKSk7CiAgICBpZiggJHVpbmZvWydkaXNhYmxlZCddICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9hY2NvdW50ZGlzYWJsZWQnKSk7CiAgICBpZiggdGltZSgpID4gc3RydG90aW1lKCR1aW5mb1snZXhwaXJlcyddKSApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkdGhpcy0+TGFuZygnZXJyb3JfYWNjb3VudGV4cGlyZWQnKSk7CiAgICB1bnNldCgkcmVzKTsKICAgICRjb2RlID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdjb2RlJyk7CiAgICBpZiggISRjb2RlICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCR0aGlzLT5MYW5nKCdlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnKSk7CiAgICBpZiggJGNvZGUgPT0gJ3h4eHgnICkgJGNvZGUgPSBudWxsOwoKICAgIGlmKCBpc3NldCgkcGFyYW1zWydmZXVfc3VibWl0J10pICkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgICR0aXRsZSA9ICR0aGlzLT5MYW5nKCdhY2NvdW50X3ZlcmlmaWNhdGlvbicpOwogICAgICAgICAgICAkbXNnID0gbnVsbDsKICAgICAgICAgICAgJGVycm9yID0gZmFsc2U7CgogICAgICAgICAgICAkZGJjb2RlID0gJHRoaXMtPkdldFVzZXJUZW1wQ29kZSgkdWlkKTsKICAgICAgICAgICAgaWYoICEkZGJjb2RlIHx8ICRkYmNvZGUgIT0gJGNvZGUgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRjb2RlJykpOwoKICAgICAgICAgICAgLy8gc3VjY2VzcyBjb25kaXRpb24KICAgICAgICAgICAgJHRoaXMtPlJlbW92ZVVzZXJUZW1wQ29kZSgkdWlkKTsKICAgICAgICAgICAgYXVkaXQoJHVpZCwkdGhpcy0+R2V0TmFtZSgpLCdTdWNjZXNzZnVsbHkgdmVyaWZpZWQgaGlzL2hlciBpbmZvcm1hdGlvbicpOwogICAgICAgICAgICAkdGhpcy0+YWRkX2hpc3RvcnkoJHVpZCwndmVyaWZ5IGNvbXBsZXRlJyk7CgogICAgICAgICAgICBpZiggJHVpbmZvWydtdXN0X3ZhbGlkYXRlJ10gKSB7CiAgICAgICAgICAgICAgICAvLyB3ZSBjYW4gcmVzZXQgdGhpcy4KICAgICAgICAgICAgICAgICR0aGlzLT5Gb3JjZVZlcmlmeSgkdWlkLEZBTFNFKTsKCiAgICAgICAgICAgICAgICAkZXZlbnRfcGFybXMgPSBbXTsKICAgICAgICAgICAgICAgICRldmVudF9wYXJtc1snaWQnXSA9ICR1aWQ7CiAgICAgICAgICAgICAgICAkZXZlbnRfcGFybXNbJ25hbWUnXSA9ICR1aW5mb1sndXNlcm5hbWUnXTsKICAgICAgICAgICAgICAgICR0aGlzLT5TZW5kRXZlbnQoJ09uVXBkYXRlVXNlcicsJGV2ZW50X3Bhcm1zKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgLy8gc2VlIGlmIHdlIGNhbiByZWRpcmVjdAogICAgICAgICAgICAkcGFnZSA9IFxmZXVfdXRpbHM6OnJlc29sdmVfcHJlZnRwbF90b19wYWdlKCdwYWdlaWRfYWZ0ZXJ2ZXJpZnknLCR1aWQpOwogICAgICAgICAgICBpZiggJHBhZ2UgKSAkdGhpcy0+UmVkaXJlY3RDb250ZW50KCRwYWdlKTsKCiAgICAgICAgICAgIC8vIG5vIHBhZ2V0ZW1wbGF0ZSBvciBvdGhlciBlcnJvciBtZWFucyBubyByZWRpcmVjdAogICAgICAgICAgICAvLyBmYWxsIHRocm91Z2ggdG8gZGlzcGxheWluZyBhIG1lc3NhZ2UKICAgICAgICAgICAgJG1zZyA9ICR0aGlzLT5MYW5nKCdtc2dfdmVyaWZpY2F0aW9uX2NvbXBsZXRlJyk7CiAgICAgICAgfQogICAgICAgIGNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgICAgICAgICAkbXNnID0gJGUtPkdldE1lc3NhZ2UoKTsKICAgICAgICAgICAgJGVycm9yID0gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgJHRoaXMtPlNob3dGb3JtYXR0ZWRNZXNzYWdlKCRtc2csJGVycm9yLCR0aXRsZSk7CiAgICAgICAgcmV0dXJuOwogICAgfSAvLyBzdWJtaXQKCiAgICAvLyBkaXNwbGF5IHRoZSBmb3JtCiAgICAkdGhldGVtcGxhdGUgPSBcZmV1X3V0aWxzOjpnZXRfdGVtcGxhdGUoJHBhcmFtcywndmVyaWZ5Zm9ybXRlbXBsYXRlJywnRnJvbnRFbmRVc2Vyczo6dmVyaWZ5X2Zvcm0nKTsKICAgICR0cGwgPSAkdGhpcy0+Q3JlYXRlU21hcnR5VGVtcGxhdGUoJHRoZXRlbXBsYXRlKTsKICAgICR0cGwtPmFzc2lnbigndWlkJywkdWlkKTsKICAgICR0cGwtPmFzc2lnbignY29kZScsJGNvZGUpOwogICAgJHRwbC0+ZGlzcGxheSgpOwp9CmNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgJG1zZyA9ICRlLT5HZXRNZXNzYWdlKCk7CiAgICAkZXJyb3IgPSB0cnVlOwogICAgJHRoaXMtPlNob3dGb3JtYXR0ZWRNZXNzYWdlKCRtc2csJGVycm9yLCR0aXRsZSk7Cn0K]]></data>
	</file>
	<file>
	  <filename>/action.viewuser.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiR1aWQgPSAoaW50KSR0aGlzLT5Mb2dnZWRJbklkKCk7CiR1aWQgPSBcY2dlX3BhcmFtOjpnZXRfaW50KCRwYXJhbXMsJ3VpZCcsJHVpZCk7CmlmKCAkdWlkIDwgMSApIHJldHVybjsKJHRtcCA9ICR0aGlzLT5HZXRVc2VySW5mbygkdWlkKTsKaWYoICR0bXBbMF0gPT09IEZBTFNFICkgcmV0dXJuOwokdXNlcl9pbmZvID0gJHRtcFsxXTsKJHRtcCA9IG51bGw7CiRncm91cHMgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoICR1aWQgKTsKaWYoICEkZ3JvdXBzICkgcmV0dXJuOwoKJHRoZXRlbXBsYXRlID0gXGZldV91dGlsczo6Z2V0X3RlbXBsYXRlKCRwYXJhbXMsJ3ZpZXd1c2VydGVtcGxhdGUnLCdGcm9udEVuZFVzZXJzOjp2aWV3IHVzZXInKTsKJHRwbCA9ICR0aGlzLT5DcmVhdGVTbWFydHlUZW1wbGF0ZSgkdGhldGVtcGxhdGUpOwokdHBsLT5hc3NpZ24oJ3VzZXJpbmZvJywkdXNlcl9pbmZvKTsKJHRwbC0+YXNzaWduKCdlbWFpbF9hZGRyZXNzJywkdGhpcy0+R2V0RW1haWwoJHVpZCkpOwoKLy8gbm93IHdlIGhhdmUgdGhlIGdyb3Vwcywgd2UgYnVpbGQgYSB1bmlvbiBvZiBhbGwgb2YgdGhlIGdyb3VwcyBwcm9wZXJ0aWVzCiRwcm9wMiA9IGFycmF5KCk7CmZvcmVhY2goICRncm91cHMgYXMgJGdycHJlY29yZCApCnsKICAgICRnaWQgPSAkZ3JwcmVjb3JkWydncm91cGlkJ107CiAgICAkcHJvcHJlbGF0aW9ucyA9ICR0aGlzLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ2lkICk7CiAgICAkcHJvcDIgPSBSUlV0aWxzOjphcnJheV9tZXJnZV9ieV9uYW1lX3JlcXVpcmVkKCAkcHJvcDIsICRwcm9wcmVsYXRpb25zICk7CiAgICB1YXNvcnQoICRwcm9wMiwgYXJyYXkoJ2NnZV9hcnJheScsJ2NvbXBhcmVfZWxlbWVudHNfYnlfc29ydG9yZGVyX2tleScpICk7Cn0KCi8vIG5vdyB3ZSBtZXJnZSBpbiBhbGwgb2YgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zCiRkZWZucyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CiRwcm9wMyA9IGFycmF5KCk7CmZvcmVhY2goICRwcm9wMiBhcyAkb25lcHJvcCApIHsKICAgIGZvcmVhY2goICRkZWZucyBhcyAkb25lZGVmbiApIHsKICAgICAgICBpZiggJG9uZWRlZm5bJ25hbWUnXSA9PSAkb25lcHJvcFsnbmFtZSddICkgewogICAgICAgICAgICAkb25lcHJvcFsncHJvbXB0J10gPSAkb25lZGVmblsncHJvbXB0J107CiAgICAgICAgICAgICRvbmVwcm9wWyd0eXBlJ10gPSAkb25lZGVmblsndHlwZSddOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICB9CiAgICAkcHJvcDNbXSA9ICRvbmVwcm9wOwp9CgovLyBBbmQgbm93IG1lcmdlIGluIHRoZSB2YWx1ZXMKJHVzZXJwcm9wcyA9ICR0aGlzLT5HZXRVc2VyUHJvcGVydGllcygkdWlkKTsKJHByb3BzYnluYW1lID0gYXJyYXkoKTsKZm9yZWFjaCggJHByb3AzIGFzICRvbmVwcm9wICkgewogICAgaWYoIGlzX2FycmF5KCR1c2VycHJvcHMpICkgewogICAgICAgIGZvcmVhY2goICR1c2VycHJvcHMgYXMgJG9uZXZhbCApIHsKICAgICAgICAgICAgaWYoICRvbmVwcm9wWyduYW1lJ10gPT0gJG9uZXZhbFsndGl0bGUnXSAmJiBpc3NldCgkb25ldmFsWydkYXRhJ10pICYmICFlbXB0eSgkb25ldmFsWydkYXRhJ10pICkgewogICAgICAgICAgICAgICAgJG9uZXByb3BbJ2RhdGEnXSA9ICRvbmV2YWxbJ2RhdGEnXTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGlmKCBpc3NldCgkb25lcHJvcFsnZGF0YSddKSApICRwcm9wc2J5bmFtZVskb25lcHJvcFsnbmFtZSddXSA9ICRvbmVwcm9wOwp9CgokdHBsLT5hc3NpZ24oJ3VzZXJfcHJvcGVydGllcycsJHByb3BzYnluYW1lKTsKJHRwbC0+ZGlzcGxheSgpOwoKIwojIEVPRgojCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/changelog.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHVsPgo8bGk+MC4wLjEgLSBPY3RvYmVyLCAyMDA1IC0gSW5pdGlhbCBOUlBUIChOb3QgUmVhZHkgZm9yIFByaW1lIFRpbWUpIHJlbGVhc2U8L2xpPgo8bGk+MC4xLjAgLSBPY3RvYmVyLCAyMDA1IC0gSW5pdGlhbCByZWxlYXNlPC9saT4KPGxpPjAuMS4xIC0gT2N0b2JlciwgMjAwNSAtIEZpeGVkIGlzc3VlcyB3aXRoIHByb3BlcnRpZXM8L2xpPgo8bGk+MC4xLjIgLSBPY3RvYmVyLCAyMDA1IC0gQWRkZWQgZm9yZ290dGVuIHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHk8L2xpPgo8bGk+MC4xLjMgLSBOb3ZlbWJlciwgMjAwNQogICAgPHA+QWRkZWQgdGhlIGFiaWxpdHkgdG8gc3BlY2lmeSBhIHJlZGlyZWN0IHBhZ2Ugb24gbG9naW4sIGxvZ291dCwgZm9yZ290IHBhc3N3b3JkLCBhbmQgY2hhbmdlIHNldHRpbmdzLCBhbmQgYWRkZWQgdGhlIHJldHVybnRvIGFuZCBmb3JtIHBhcmFtZXRlcnMgdG8gdGhlIHVzZXIgc2lkZSBvZiB0aGluZ3MsIGFsc28gZGlkIGEgY291cGxlIGxmIGxpdHRsZSBjbGVhbnVwcy4gIFRoaXMgdmVyc2lvbiByZXF1aXJlcyB2MC4xMSBhbmQgYWJvdmUgZm9yIGNlcnRhaW4uPC9wPjwvbGk+CjxsaT4wLjEuNCAtIE5vdmVtYmVyLCAyMDA1IC0gVmVyeSBtaW5vciBjaGFuZ2Ugd2l0aCByZXNwZWN0IHRvIGEgZm9yZ290dGVuIGFuZCBubyBsb25nZXIgbmVlZGVkIGZ1bmN0aW9uIGNhbGw8L2xpPgo8bGk+MC4xLjUgLSBOb3ZlbWJlciwgMjAwNQogICAgPHA+QW5vdGhlciB2ZXJ5IG1pbm9yIGNoYW5nZSwgYWRkZWQgc29tZSB0ZXh0IHRvIHRoZSBQb3N0SW5zdGFsbCBtZXNzYWdlLjwvcD48L2xpPgo8bGk+MC4xLjYgLSBKYW51YXJ5LCAyMDA2CiAgICA8cD5DaGFuZ2VzIHRvIHRoZSBwZXJtaXNzaW9uIG1vZGVsLCBhbmQgbWlub3IgYnVnIGZpeGVzIHRvIHRoZSBwcmVmZXJlbmNlcy4gIEFsc28gc29tZSBwaHA1IGZpeGVzIGJ1dCBJIGFtIHN1cmUgdGhhdCB0aGVyZSBhcmUgbW9yZSBvdXQgdGhlcmUuPC9wPjwvbGk+CjxsaT4wLjEuNyAtIEphbnVhcnksIDIwMDYKICAgIDxwPk1hbnkgdGhhbmtzIHRvIDxiPmthdG9uPC9iPiBmb3IgYWRkaW5nIHRoZSB0ZXh0YXJlYSBhbmQgZHJvcGRvd24gcHJvcGVydHkgdHlwZXMuPC9wPgogICAgPHA+Rml4ZXMgdG8gdGhlIHByb3BlcnR5IGFkZGluZyB0byBmaXggcHJvYmxlbXMgd2l0aCBzcGFjZXMgaW4gcHJvcGVydHkgbmFtZXMgKHdlIG5vIGxvbmdlciBsZXQgdGhhdCBoYXBwZW4pLjwvcD4KPC9saT4KPGxpPjxwPjEuMC4wIC0gRmVicnVhcnksIDIwMDY8cD4KICAgIDxwPkFkZGVkIGZpbHRlcmluZyBhbmQgcm93IGxpbWl0aW5nIHRvIHRoZSBhZG1pbiBwYW5lbC4gVGhpcyB3aWxsIGhhdmUgYmlnIGJlbmVmaXRzIHRvIHRob3NlIHRoYXQgYXJlIHVzaW5nIHRoaXMgbW9kdWxlIGZvciBoaWdoIHRyYWZpYywgYW5kIGhpZ2ggdXNlciBzaXRlcy48L3A+CiAgICA8cD5BZGRlZCBzb3J0aW5nIHRvIHRoZSBhZG1pbiBwYW5lbDwvcD4KICAgIDxwPkFkZGVkIG1heCBsZW5ndGggYWJpbGl0eSB0byB0ZXh0IGFuZCBlbWFpbCBmaWVsZHM8L3A+CiAgICA8cD5GaXhlZCBhIHNtYWxsIHByb2JsZW0gd2l0aCB0aGUgZGVmYXVsdCBncm91cCBub3QgYmVpbmcgY2hlY2tlZCB3aGVuIGFkZGluZyBhIHVzZXI8L3A+CiAgICA8cD5TYXZlIGZpbHRlciBzZXR0aW5ncyBpbiBwcmVmZXJlbmNlcywgYW5kIHRoZSBhY3RpdmUgdGFiIHRvby48L3A+CiAgICA8cD5EZWxldGUgdXNlciBwcm9wZXJ0aWVzIHdoZW4gYSBwcm9wZXJ0eSBpcyBkZWxldGVkIDxlbT5Ob3RlPC9lbT4sIG5vdCB3aGVuIGl0IGlzIGRpc2FibGVkIGluIHRoZSBlZGl0IGdyb3VwIGRpYWxvZzwvcD4KICAgIDxwPkFkZCBjb25maXJtYXRpb24gbWVzc2FnZSBpbiBlZGl0IGdyb3Vwcy48L3A+CiAgICA8cD5BZGRlZCBhIGNvdXBsZSBtb3JlIGNvbmZpcm1hdGlvbiBtZXNzYWdlcy48L3A+CiAgICA8cD5BZGRlZCBDU1YgRXhwb3J0IG9wdGlvbjwvcD4KICAgIDxwPlRvZG8gLSBBZGQgcHJlZmVyZW5jZXMgZm9yIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmaWVsZGxlbmd0aDwvcD4KPC9saT4KPGxpPjEuMC4xIC0gTWFyY2gsIDIwMDYKICAgIDxwPkFkZGVkIHRoZSBhYmlsaXR5IHRvIGNoZWNrIGZvciBkdXBsaWNhdGUgZW1haWwgYWRkcmVzc2VzPC9wPgogICAgPHA+Rml4IHByb2JsZW0gd2hlcmUgZXhwaXJ5IGRhdGUgd2FzIGJlaW5nIG1vZGlmaWVkIHdoZW4gYWRtaW4gbW9kaWZpZWQgdXNlciBzZXR0aW5nczwvcD4KICAgIDxwPkFkZCBhIGNvbmZpcm1hdGlvbiBtZXNzYWdlIHRvIHRoZSBwcmVmZXJlbmNlcyBzdWJtaXQgYnV0dG9uPC9wPgogICAgPHA+Rml4ZWQgYSBtaW5vciBidWcgd2hlbiBjb3V0aW5nIHRoZSBudW1iZXIgb2YgdXNlcnMgaW4gYSBncm91cDwvcD4KICAgIDxwPkZpeGVzIHRvIHRoZSBzaXplIG9mIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmaWVsZHMsIGFuZCBtYXhsZW5ndGg8L3A+CiAgICA8cD5BZGRlZCBhZHZhbmNlZCBmaWx0ZXJpbmcgb24gcHJvcGVydGllczwvcD4KICAgIDxwPkNoYW5nZXMgdG8gbGFiZWxpbmcgaW4gYWRkIG9yIGVkaXQgdXNlcjwvcD4KICAgIDxwPkZpeGVzIHRvIHByb2JsZW1zIHdpdGggaW5saW5lIGFuZCBub24gaW5saW5lIGZvcm1zLCB0aGUgcGFzc3dvcmQgaXMgbmV2ZXIgc2VudCBvbiB0aGUgZ2V0IGxpbmU8L3A+CiAgICA8cD5DaGFuZ2VkIHRvIHJlcXVpcmUgQ01TIDAuMTItYmV0YTIgYXQgYSBtaW5pbXVtIChmb3Igc2FmZXR5IHB1cnBvc2VzKTwvcD4KPC9saT4KPGxpPjEuMC4yIC0gTWFyY2gsIDIwMDYKICAgIDxwPk1vcmUgZmllbGQgbGVuZ3RoIGZpeGVzPC9wPgo8L2xpPgo8bGk+MS4wLjMgLSBNYXJjaCwgMjAwNgogICAgPHA+RXhwb3J0IHRvIHNtYXJ0eSBhbGwgb2YgdGhlIHVzZXIgcHJvcGVydGllcyB3aGVuIHRoZXkgYXJlIGxvZ2dlZCBpbjwvcD4KPC9saT4KPGxpPjEuMC40IC0gTWF5LCAyMDA2CiAgICA8cD5GaXhlcyB0byB0aGUgZXhwb3J0IGNvZGU8L3A+CiAgICA8cD5Db2RlIGNsZWFudXAgKGFscGhhYmV0aXplIGZ1bmN0aW9ucyk8L3A+CiAgICA8cD5NaW5vciBmaXhlcyBhbmQgZW5oYW5jZW1lbnRzIChyZWNvbW1lbmRlZCBieSBuaWxzNzMpIGZvciBkZWFsaW5nIHdpdGggdGhlIGNoYW5nZSBwYXNzd29yZCBzdHVmZi48L3A+CiAgICA8cD5SZW1vdmVkIHRoZSByZXF1aXJlbWVudCBmb3IgQ01TIDAuMTIsIGFuZCBwdXQgaXQgYmFjayB0byAwLjExLjI8L3A+CiAgICA8cD5BZGRlZCB0aGUgXCdzaWxlbnRcJyBmb3JtPC9wPgogICAgPHA+Q2xlYW5lZCB1cCBkYXRhYmFzZSBhY2Nlc3Mgc3R1ZmYgZm9yIHBlcmZvcm1hbmNlIHJlYXNvbnMgKGhvcGVmdWxseSk8L3A+CiAgICA8cD5BZGRlZCBjb3B5cmlnaHQgaW5mbzwvcD4KICAgIDxwPkFkZGVkIG1hY3JvcyBmb3IgcmVkaXJlY3RvIHRvIGEgdXNlciBzcGVjaWZpYyBwYWdlIG9uIGxvZ2luIG9yIGxvZ291dDwvcD4KICAgIDxwPlR3ZWFrcyB0byB0aGUgYWRtaW4gcHJlZmVyZW5jZXMgdGFiPC9wPgo8L2xpPgo8bGk+MS4wLjUgLSBNYXksIDIwMDYKICAgIDxwPkZpeGVkIGEgcHJvYmxlbSB3aXRoIGV4cGlyeSBkYXRlczwvcD4KICAgIDxwPlN0YXJ0IHNwbGl0dGluZyB0aGUgY29kZSB1cCBpbnRvIHNldmVyYWwgZmlsZXM8L3A+CjxsaT4xLjAuNiAtIE1heSwgMjAwNgogICAgPHA+Rml4ZWQgYSBwcm9ibGVtIHdpdGggZWRpdGluZyBkcm9wZG93bnM8L3A+CjwvbGk+CjxsaT4xLjEuMCAtIE1heSwgMjAwNgogICAgPHA+RXZlbnRzPC9wPgogICAgPHA+T3B0aW9uYWxseSBkaXNhbGxvdyByZXBlYXRlZCBsb2dpbnM8L3A+CiAgICA8cD5FeHBvcnQgdGhlIHVzZXIgaWQgdG8gc21hcnR5PC9wPgogICAgPHA+QWRkZWQgb3B0aW9uYWxseSBce1wkZ3JvdXBcfSBmb3IgdGhlIHBhZ2VzIHRvIGp1bXAgdG8gb24gbG9naW48L3A+CjwvbGk+CjxsaT4xLjEuMSAtIFNlcHQsIDIwMDYKICAgIDxwPkZpeGVkIGEgYnVnIHdoZW4gYSB1c2VyIHdhcyBlZGl0aW5nIGhpcyBzZXR0aW5ncyB3aXRoIFwnYWxsb3cgZHVwbGljYXRlIGVtYWlsc1wnIHdhcyBvZmY8L3A+CiAgICA8cD5DaGFuZ2VkIHRoZSBkcm9wZG93biB0YWJsZSB0byAyNTUgY2hhcmFjdGVyczwvcD4KICAgIDxwPk1pbm9yIGNsZWFudXBzPC9wPgo8L2xpPgo8bGk+MS4xLjIgLSBEZWMsIDIwMDYKICAgIDxwPkZpeGVzIChob3BlZnVseSkgdG8gdGhlIGFkb2RiL2Fkb2RiLWxpdGUgREFURVRJTUUgaXNzdWU8L3A+CiAgICA8cD5BZGQgY2FwdGNoYSBzdXBwb3J0IHRvIHRoZSBsb2dpbiBzY3JlZW4gKG9wdGlvbmFsKSwgdGhhbmtzIGRpdHRtYW48L3A+CiAgICA8cD5GaXhlcyB0byBjYW5jZWwgaGFuZGxpbmcgb24gdGhlIGxvc3QgcGFzc3dvcmQgYW5kIGNoYW5nZSBzZXR0aW5ncyBzY3JlZW5zPC9wPgogICAgPHA+Rml4ZXMgdG8gdXNlciBleHBpcnkgKG1vcmUgREJUaW1lc3RhbXAgaXNzdWVzKSwgdGhhbmtzIGFnYWluIGRpdHRtYW48L3A+CiAgICA8cD5PcHRpb24gdG8gYWxsb3cgRkVVc2VycyB0byBoYXZlIGl0cyBvd24gc2V0IG9mIHBlcm1pc3Npb25zIGFzc2lkZSBmcm9tIHRoZSBhZG1pbiBwZXJtaXNzaW9ucy4gIFRoYW5rcyBfU2pHXzwvcD4KICAgIDxwPk9wdGlvbiB0byBhbGxvdyBkdXBsaWNhdGUgcGFzc3dvcmQgcmVtaW5kZXIgcmVxdWVzdHMgYW5kIHRvIHNwZWNpZnkgdGV4dCBvbiB0aGUgc2lnbmluIGJ1dHRvbi4gIFRoYW5rcyBfU2pHXzwvcD4KICAgIDxwPkdlbmVyYWwgY2xlYW51cCBvZiBmdW5jdGlvbnMgdGhhdCB3ZXJlIG5vdCBiZWluZyB1c2VkIGFuZCBub3RpY2VzL3dhcm5pbmdzPC9wPgogICAgPHA+QWRkZWQgdGhlIG9ubHlfZ3JvdXBzIHBhcmFtIGZvciBsb2dpbiBmb3Jtcy4gIFRoYW5rcyB3aXNoeTwvcD4KICAgIDxwPkZpeGVzIHRvIHRoZSBsZW5ndGggb2YgdGhlIGVtYWlsIGZpZWxkIGluIHRoZSBjaGFuZ2UgcGFzc3dvcmQgZm9ybTwvcD4KICAgIDxwPkZpeGVzIHRvIHRoZSBlbWFpbCB2YWxpZGF0aW9uIHN0dWZmPC9wPgo8L2xpPgogICAgPGxpPjEuMi4wIC0gQXByaWwsIDIwMDcKICAgIDxwPmVsaWphaGxvZmdyZW4gLSBGaXhlcyB0byBjYXB0Y2hhIHN1cHBvcnQsIGFuZCBzb21lIHRlbXBsYXRlIGNsZWFudXBzLjwvcD4KICAgIDxwPkFkZCBzdXBwb3J0IGZvciBtdWx0aSBzZWxlY3QgbGlzdHM8L3A+CiAgICA8cD5UZW1wbGF0ZSBjbGVhbnVwcyAobW9yZSBvZiBlbSk8L3A+CiAgICA8cD5BZGQgc3VwcG9ydCBmb3IgdmFsdWU9a2V5IHN0dWZmIGluIHRoZSBkcm9wZG93biBhbmQgbXVsdGkgc2VsZWN0IGxpc3RzLjwvcD4KICAgIDxwPmJldHRlciBjaGVja2luZyBvZiB0aGUgImF0IGxlYXN0IG9uZSBncm91cCByZXF1aXJlZCIgc3R1ZmY8L3A+CiAgICA8cD5PdXRwdXQgbW9yZSBzbWFydHkgdmFyaWFibGVzIG9uIHRoZSB1c2VyIHNldHRpbmdzIHBhZ2UsIHRvIGFsbG93IHBlb3BsZSB0byBtb2RpZnkgdGhlIHRlbXBsYXRlIHRvIHNvbWV0aGluZyB0aGF0IGlzIG1vcmUgYWNjZXNzaWJpbGU8L3A+CiAgICA8cD5TcGxpdCBpbnRvIG1vcmUgZmlsZXMgZm9yIHBlcmZvcm1hbmNlPC9wPgogICAgPHA+WW91IGNhbiBub3cgbm90IGRlbGV0ZSBhIGdyb3VwIHRoYXQgc3RpbGwgaGFzIHVzZXJzPC9wPgogICAgPHA+Tm93IGhhbmRsZSByZWdleCBwcm9ibGVtcyBiZXR0ZXIgaW4gdGhlIGFkbWluIHNlY3Rpb24gdXNlcnMgdGFiPC9wPgogICAgPHA+RW1haWwgZmllbGRzLCB3aGVuIHNwZWNpZmllZCBhcyBvcHRpb25hbCwgbWFrZSBlbSBhY3R1YWxseSBvcHRpb25hbDwvcD4KICAgIDxwPkFkZCBzdXBwb3J0IGZvciBpbWFnZSB1cGxvYWRzLCB0aGlzIGlzIGEgYmlnIGZlYXR1cmUuICBJbWFnZXMgYXJlIHNjYWxlZCB0byBhIG1heGltdW0gc2l6ZSBpbiBvbmUgZGltZW5zaW9uLCBhbmQgc3RvcmVkIGFzIGZpbGVzIGluIGEgY29uZmlndXJhYmxlIGRpcmVjdG9yeSB1bmRlciB0aGUgdXBsb2Fkc19wYXRoLjwvcD4KICAgIDxwPkNhcHRjaGEgbW9kZSBpcyBub3cgb24gYnkgZGVmYXVsdCwgdW5sZXNzIHlvdSB1c2UgdGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgaW4gdGhlIHRhZy48L3A+CiAgICA8cD5GaXhlcyB0byBDU1YgZXhwb3J0Li4uIGl0IHdhcyBhc3N1bWluZyB0aGUgZGJfcHJlZml4IGlzIGNtc188L3A+CiAgICA8cD5JbXBvcnQgVXNlcnMgZnJvbSBDU1Y8L3A+CiAgICA8cD5GaXhlcyB0byB0aGUgaW5zdGFsbCBhbmQgdW5pbnN0YWxsIG1ldGhvZHMsIGFuZCBub3cgdGhlIGFsbG93X3JlcGVhdGVkX2xvZ2lucyBwcmVmZXJlbmNlIHNob3VsZCB3b3JrPC9wPgogICAgPHA+QWRkcyBwcm9wZXIgdXNlciBoaXN0b3J5IHRyYWNraW5nLiAgTm93IHRyYWNrIGZhaWxlZCBsb2dpbnMsIGxvZ2lucywgZXhwaXJpZXMsIGFuZCBsb2dvdXRzLCBvbiBhIHBlciB1c2VyIGJhc2lzLjwvcD4KICAgIDxwPkZpeGVzIHRvIHRoZSBjYW5jZWwgYnV0dG9uIG9mIHRoZSB1c2VyIHNldHRpbmdzIHBhZ2UsIGlmIHRoZSB1c2VyIHNldHRpbmdzIGZvcm0gaXMgb24gYSBkaWZmZXJlbnQgcGFnZS48L3A+CiAgICA8cD5GaXhlcyB0byB0aGUgY2FuY2VsIGJ1dHRvbiBvZiB0aGUgZm9yZ290IHBhc3N3b3JkIHBhZ2UsIGlmIHRoZSBmb3Jnb3QgcGFzc3dvcmQgZm9ybSBpcyBvbiBhIGRpZmZlcmVudCBwYWdlLjwvcD4KICAgIDxwPk1pbm9yIGZpeGVzIHRvIGJlaGF2aW91ciBvYWYgdGhlIHByZWZlcmVuY2VzIHBhbmVscy48L3A+CjwvbGk+CjxsaT4xLjIuMSAtIEp1bmUsIDIwMDcKCTxwPkEgY29va2llIGlzIG5vdyB1c2VkIHRvIGtlZXAgdHJhY2sgb2YgbG9naW4gc3RhdGUgYmV0d2VlbiBzZXNzaW9ucywgaG93ZXZlciB0aGUgY29va2llIGRvZXMgbm90IGxhc3QgYW55IGxvbmdlciB0aGFuIHRoZSB0aW1lb3V0IHNwZWNpZmllZCBpbiB0aGUgdXNlciBzZXR0aW5ncy48L3A+Cgk8cD5BZGRlZCB0aGUgYWJpbGl0eSBmb3IgYW4gYWRtaW5pc3RyYXRvciB0byBsb2dvdXQgdXNlcnM8L3A+Cgk8cD5BZGRlZCB0aGUgYWJpbGl0eSB0byBmaWx0ZXIgYnkgbG9nZ2VkIGluIHN0YXR1czwvcD4KCTxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciByZWFkLW9ubHkgcHJvcGVydGllcy48L3A+Cgk8cD5BZGRlZCBtb3JlIHZhcmlhYmxlcyBpbiBlYWNoIG9iamVjdCBpbiB0aGUgY2hhbmdlc2V0dGluZ3MgZm9ybTwvcD4KPC9saT4KPGxpPgoJPHA+MS4yLjIgLSBKdW5lLCAyMDA3PC9wPgoJPHA+dHN3IC0gQWRkZWQgZXZlbnQgT25VcGRhdGVVc2VyIHdoaWNoIGdldHMgY2FsbGVkIHdoZW4gdXNlciAob3IgYWRtaW4pIHVwZGF0ZXMgdXNlciBpbmZvPC9wPgoKPC9saT4KPGxpPjEuMyAtIE9jdG9iZXIsIDIwMDcKPHA+QWRkZWQgc3VwcG9ydCBmb3IgJ3JlbWVtYmVyIG1lJyBzbyB0aGF0IGxvZ2luIGluZm9ybWF0aW9uIGlzIHN0b3JlZCBpbiBhIGNvb2tpZS4gIEFuZCBzdXBwb3J0IGZvciBhIGZvcm0gdG8gYWxsb3cgdGhhdCBjb29raWUgdG8gYmUgcmVzZXQuPC9wPgo8cD5ObyBsb25nZXIgc3VwcG9ydCBub24gYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgaW4gcHJvcGVydHkgbmFtZXMuPC9wPgo8cD5OdW1lcm91cyBzbWFsbCBidWdmaXhlcy48L3A+CjxwPlJlcXVpcmUgQ01TIDEuMiBvciBncmVhdGVyLjwvcD4KPC9saT4KPGxpPjEuMy4xIC0gTm92ZW1iZXIsIDIwMDcKPHA+Rml4ZXMgcHJvYmxlbXMgd2l0aCBwYXJhbWV0ZXJzIG5vdCBiZWluZyBjbGVhbmVkIGluIHRoZSBjaGFuZ2Ugc2V0dGluZ3MgZGlhbG9nIG9uIHRoZSBmcm9udCBlbmQuPC9wPgo8cD5GaXhlcyBhbiB1cGRyYWRlIGlzc3VlIGluIHRoZSBkYXRhYmFzZSBzY2hlbWE8L3A+CjxwPkZpeGVzIGFuIGlzc3VlIGluIGEgR2V0U21hcnR5KCkgY2FsbCB0aGF0IHdhcyBhcHBhcmVudGx5IGNhdXNpbmcgcGVvcGxlIGRpZmZpY3VsdGllcyB3aXRoIHRoZSBsb2dpbiBmb3JtLjwvcD4KPHA+QWRkIGEgcHJlZmVyZW5jZSB0aGF0IGFsbG93cyBhZG1pbnMgdG8gc3BlY2lmeSBhIHBhZ2UgdG8gcmVkaXJlY3QgdG8gYWZ0ZXIgdGhlIGZvcmdvdCBwYXNzd29yZCB2YWxpZGF0aW9uIGZvcm0gaXMgY29tcGxldGUuPC9wPgo8cD5GaXhlcyBhIHByb2JsZW0gd2l0aCBoaWRkZW4gcHJvcGVydGllcyBiZWluZyBsb3N0IGFmdGVyIGEgdXNlciBjaGFuZ2VkIHRoZWlyIHNldHRpbmdzLjwvcD4KPHA+VGhlIEZvcmdvdCBQYXNzd29yZCBhbmQgTG9zdCBVc2VybmFtZSBmb3JtcyBhcmUgbm93IGlubGluZTwvcD4KPHA+Rml4ZXMgdG8gZXJyb3JzIGluIGVuY3J5cHRpb24gd2l0aCB0aGUgc2Vzc2lvbmluZzwvcD4KPHA+Rml4ZXMgdG8gdGhlIGxvc3QgdXNlcm5hbWUgZnVuY3Rpb25hbGl0eS48L3A+CjwvbGk+CjxsaT4xLjMuMyAtIERlY2VtYmVyLCAyMDA3CjxwPk5vdyBvcHRpb25hbGx5IGFsbG93IHNvbWUgZnJvbnRlbmQgZm9ybXMgdG8gYmUgaW5saW5lZC48L3A+CjxwPkFkZCBlbWFpbCBub3RpZmljYXRpb25zIHdoZW4gdXNlciBjaGFuZ2VzIHRoZWlyIHNldHRpbmdzLCBvciBvbiBhbnkgb3RoZXIgZXZlbnQuPC9wPgo8cD5DaGFuZ2UgdGhlIG1heGltdW0gZGF0YSBzaXplIGZvciBwcm9wZXJ0aWVzIGZyb20gMjU1IGNoYXJhY3RlcnMgdG8gbG9uZ3RleHQ8L3A+CjxwPkZpeGVzIGFuIGlzc3VlIHdoZXJlIHRoZSBsb2dvdXQgbGlua3MgZGlkIG5vdCBvYmV5IHRoZSBwcmVmZXJlbmNlIHdoaWNoIGRpY3RhdGVkIHdoaWNoIHBhZ2UgdG8gcmVkaXJlY3QgdG8gYWZ0ZXIgbG9nb3V0LjwvcD4KPC9sST4KPGxpPjEuNCAtIEZlYnJ1YXJ5LCAyMDA4CjxwPkFkZHMgdGhlIHZpZXd1c2VyIGFjdGlvbiB0byB2aWV3IHRoZSBwcm9wZXJ0aWVzIGZvciBhIHNwZWNpZmljIHVzZXI8L3A+CjxsaT4xLjQuMSAtIEZlYnJ1YXJ5LCAyMDA4CjxwPkFkZHMgdGhlIEdldFVzZXJIaXN0b3J5IG1ldGhvZCB0byB0aGUgYXBpPC9wPgo8cD5BZGRzIGEgcHJlZmVyZW5jZSBmb3IgcGFnZSB0byByZWRpcmVjdCB0byBhZnRlciBjaGFuZ2Ugc2V0dGluZ3M8L3A+CjxwPlVzZSB0aGUgYWZ0ZXJfdmVyaWZ5Y29kZSBwcmVmZXJlbmNlPC9wPgo8L2xpPgo8bGk+MS40LjIgLSBNYXJjaCwgMjAwOAo8cD5GaXhlcyBwcm9ibGVtcyB3aXRoIGNhbmNlbCBidXR0b25zPC9wPgo8cD5NYWtlcyBpdCBlYXNpZXIgZm9yIHRleHQgb24gdmFyaW91cyBidXR0b25zIGFuZCBsaW5rcyB0byBiZSBjaGFuZ2VkPC9wPgo8cD5VcGRhdGUgZGVwZW5kZW5jaWVzLCBldGMuPC9wPgo8cD5VcGRhdGUgYWxsIGZpbGVzIGFuZCB0aGUgaGVscCB0byByZWZsZWN0IHRoZSBuZXcgbGljZW5zZTwvcD4KPHA+QWRqdXN0bWVudHMgc28gdGhlIHNpZ25pbiBhbmQgc2lnbm91dCB0ZXh0IGNhbiBiZSBjaGFuZ2VkIGVhc2lseTwvcD4KPHA+Q2xlYW51cHMgYW5kIGJ1ZyBmaXhlczwvcD4KPC9saT4KPGxpPjEuNC4zIC0gSnVuZSwgMjAwOAo8cD5Ob3cgdXNlIHNlc3Npb24gdmFyaWFibGVzIHRvIGtlZXAgdHJhY2sgb2YgdXNlciB2YXJpYWJsZXMgYmV0d2VlbiBzdGVwcyBvZiB0aGUgZm9ybXMgZm9yIGFkZGluZyBhbmQgZWRpdGluZyB1c2Vycy48L3A+CjxwPkdldCByaWQgb2YgdGhlIHRpbWUgZmllbGRzIGZvciB0aGUgZXhwaXJ5IGRhdGUsIGFuZCBqdXN0IGV4cGlyZSBhdCAyMzo1OTo1OSBvbiB0aGF0IHNwZWNpZmllZCBkYXk8L3A+CjxwPkFkZGVkIHRoZSBhYmlsaXR5IGZvciBleHRlcm5hbCBtb2R1bGVzIHRvIGludGVyYWN0IChzb21ld2hhdCkgd2l0aCBmZXUsIGFuZCBzcGVjaWZ5IGEgcmV0dXJuIGxvY2F0aW9uPC9wPgo8cD5BZGRlZCB0aGUgR2V0RnVsbFVzZXJzSW5Hcm91cCgpIG1ldGhvZCBpbnRvIHRoZSBhcGk8L3A+CjwvbGk+CjxsaT4xLjQuNCAtIEF1Z3VzdCwgMjAwOAo8cD5UaGFua3MgdG8gX1NqR18gd2Ugbm93IHN1cHBvcnQgdXNpbmcgZW1haWwgYWRkcmVzc2VzIGFzIHVzZXJuYW1lICh0aGVyZSBpcyBhIHByZWZlcmVuY2UgaW4gdGhlIGFkbWluKS48L3A+CjxwPkFkZHMgYSBHZXRFbWFpbCBtZXRob2QgdG8gdGhlIGFwaSB0byByZXR1cm4gdGhlIGZpcnN0IGVtYWlsIGFkZHJlc3MgZm91bmQgZm9yIHRoZSBzcGVjaWZpZWQgdXNlci48L3A+CjwvbGk+CjxsaT4xLjUgLSBBdWd1c3QsIDIwMDgKPHA+QWRkIHRoZSBmZXVfc21hcnR5IGNsYXNzIHdpdGggYSBmZXcgZnVuY3Rpb25zIGluIGl0LCBmb3IgaXRlcmF0aW5nIHRocm91Z2ggdXNlcnMgaW4gc21hcnR5LjwvcD4KPC9saT4KPGxpPjEuNS4xIC0gQXVndXN0LCAyMDA4CjxwPktlZXAgdGhlIGxvZ2luaWQgaW4gYSB2YXJpYWJsZSwgdG8gY3V0IGRvd24gb24gdGhlIG51bWJlciBvZiByZXBlYXQgcXVlcmllcy48L3A+CjxwPkZpeGVzIHRvIHByb3BlcnRpZXMgd2l0aCBzcGFjZXMgaW4gdGhlIHZhbHVlcy48L3A+CjwvbGk+CjxsaT4xLjUuMiAtIEF1Z3VzdCwgMjAwOAo8cD5TcGxpdCBvdXQgYSBmZXcgbW9yZSBmaWxlcyB0byBzaHJpbmsgbWVtb3J5IGZvb3RwcmludCBhIGJpdCBtb3JlPC9wPgo8cD5GaXhlcyBzb21lIHRhYiBuYW1lIHN0dWZmPC9wPgo8cD5TbWFsbCB2YWxpZGF0aW9uIGlzc3VlIHdpdGggZGVmYXVsdCB0ZW1wbGF0ZTwvcD4KPHA+TWlub3IgZW5oYW5jZW1ldG5zIHRvIHRoZSB2aWV3dXNlciB0ZW1wbGF0ZS48L3A+CjxwPkdldCByaWQgb2YgY29tbWVudGVkIG91dCBjb2RlIHRvIHNocmluayB0aGUgZmlsZSBkb3duIGEgYml0LjwvcD4KPHA+Rml4IGZvcmdvdCBwYXNzd29yZCBmb3JtIHRvIGhhbmRsZSB0aGUgY2FzZSB3aGVyZSB1c2VybmFtZSA9PSBlbWFpbCBhZGRyZXNzLjwvcD4KPHA+QWRkIHByZXR0eSB1cmwgc3VwcG9ydCBpbnRvIHRoZSBsb3N0IHBhc3N3b3JkIGVtYWlsLjwvcD4KPC9saT4KPGxpPjEuNS4zIC0gU2VwdGVtYmVyLCAyMDA4CjxwPk51bWVyb3VzIHNtYWxsLCBidXQgYW5ub3lpbmcgYnVnIGZpeGVzPC9wPgo8bGk+MS41LjQgLSBEZWNlbWJlciwgMjAwOAo8cD5Nb3JlIGFuZCBtb3JlIGJ1ZyBmaXhlcy48L3A+CjxwPlRoZSBzdGFydHMgb2YgcHJldHR5IHVybCBzdXBwb3J0ICh0aGFuayB5b3UgTnVubyk8L3A+CjwvbGk+CjxsaT4xLjYgLSBKYW51c2FyeSwgMjAwOQogIDx1bD4KICA8bGk+Q29tcGxldGUgcmV3cml0ZSBvZiBwcm9wZXJ0eSBjcmVhdGlvbiBhbmQgZWRpdGluZyBzdHVmZi48L2xpPgogIDxsaT5BZGQgdGhlIGFiaWxpdHkgdG8gb3B0aW9uYWxseSBlbmFibGUgYSB3eXNpd3lnIGZvciB0ZXh0IGFyZWEgcHJvcGVydGllcy48L2xpPgogIDxsaT5ObyBsb25nZXIgYWxsb3cgYXV0byBpbnN0YWxsIG9yIHVwZ3JhZGUuPC9saT4KICA8bGk+Q29tcGxldGUgcmV3cml0ZSBvZiBncm91cCBjcmVhdGlvbiBhbmQgZWRpdGluZyBzdHVmZi4uLi4gcmUtb3JkZXJpbmcgaXMgc2ltcGxlciBub3cuPC9saT4KICA8bGk+UmUtb3JnYW5pemUgdGhlIHByZWZlcmVuY2VzIHRhYiwgYW5kIHRoZSB1c2VycyBmaWx0ZXJpbmcgc3R1ZmYgdG8gYmUgYSBiaXQgbW9yZSBwcmVzZW50YWJsZS48L2xpPgogIDxsaT5BZGQgbmV3IHByZWZlcmVuY2UgZm9yIHRoZSBkZWZhdWx0IGV4cGlyeSBhZ2UgZm9yIHVzZXJzLjwvbGk+CiAgPGxpPkFkZCBuZXcgcHJlZmVyZW5jZSBpbmRpY2F0aW5nIHdldGhlciB3ZSBzaG91bGQgYXR0ZW1wdCB0byBjcmVhdGUgcmFuZG9tIHVzZXJuYW1lcyBvciBub3QuPC9saT4KICA8bGk+QWRkIGJ1bGsgdXNlciBkZWxldGUgY2FwYWJpbGl0aWVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4xIC0gSmFudXNhcnksIDIwMDkKICA8dWw+CiAgICA8bGk+TWlub3IgdGVtcGxhdGUgY2hhbmdlcyB0byB0aGUgY2hhbmdlIHNldHRpbmdzIHN0dWZmLjwvbGk+CiAgICA8bGk+Rml4IHRleHQgcHJvcGVydHkgbGVuZ3RoIGlzc3Vlcy48L2xpPgogICAgPGxpPlJlbW92ZSBzdHVwaWQgZGllIGFuZCBkZWJ1ZyBzdGF0ZW1lbnRzIGZyb20gdGhlIHJlbWVtYmVyIG1lIHN0dWZmLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4yIC0gSmFudXNhcnksIDIwMDkKICA8dWw+CiAgICA8bGk+QmVnaW4gaW1wbGVtZW50aW5nIHRoZSB0YWJsZXNvcnRlciBzdHVmZjwvbGk+CiAgICA8bGk+Rml4IHByb2JsZW1zIHdpdGggaW1hZ2UgZmllbGRzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4zIC0gRmVicnVhcnksIDIwMDkKICA8dWw+CiAgPGxpPkZpeCBjb29raWUgaXNzdWVzIHBlcm1hbmVudGx5LiAoSSBob3BlKS48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuNCAtIEFwcmlsLCAyMDA5CiAgPHVsPgogIDxsaT5BZGQgZmllbGQgdHlwZSBhcyBhIG1lbWJlciBvZiB0aGUgY29udHJvbCBvYmplY3QgaW4gdmFyaW91cyBmb3Jtcy48L2xpPgogIDxsaT5BZGRlZCByYWRpbyBidXR0b25zIGZpZWxkIHR5cGUgKF9TakdfKTwvbGk+CiAgPGxpPk1vcmUgZml4ZXMgdG8gdXNlciBleHBvcnQgc3R1ZmYuPC9sPmkKICA8bGk+Rml4IGZvciByZXR1cm50byBwYXJhbSBpbiBsb2dpbiBmb3JtPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjUgLSBNYXksIDIwMDkKICA8dWw+CiAgPGxpPk51bWVyb3VzIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuNiAtIEp1bHksIDIwMDkKICA8dWw+CiAgPGxpPk51bWVyb3VzIGJ1ZyBmaXhlcy48L2xpPgogIDxsaT5BZGQgRGF0ZSBmaWVsZCB0eXBlLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi43IC0gSnVseSwgMjAwOQogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi44IC0gSnVseSwgMjAwOQogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPGxpPkFkZCBtb3JlIGZ1bmN0aW9uYWxpdHkgdG8gdGhlIGZldV9zbWFydHkgb2JqZWN0LjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi44LjEgLSBKdWx5LCAyMDA5CiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjkgLSBBdWd1c3QsIDIwMDkKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjYuMTAgLSBPY3RvYmVyLCAyMDA5CiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjExIC0gTm92ZW1iZXIsIDIwMDkKICA8dWw+CiAgPGxpPk5vdyBjb252ZXJ0IHByb3BlcnR5IG5hbWVzIHRvIGNvbnRhaW4gb25seSB2YWxpZCBjaGFycyBob3BlZnVsbHkuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS42LjEyIC0gSmFudWFyeSwgMjAxMAogIDx1bD4KICA8bGk+TWlub3IgaW1wcm92ZW1lbnRzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNi4xMyAtIEZlYnJ1YXJ5LCAyMDEwCiAgPHVsPgogIDxsaT5Nb3JlIE1pbm9yIGltcHJvdmVtZW50cy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjcgLSBGZWJydWFyeSwgMjAxMAogIDx1bD4KICA8bGk+QWRkcyB0aGUgcmVzZXRfc2Vzc2lvbiBhY3Rpb24uPC9saT4KICA8bGk+QnVnIGZpeGVzPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS43LjEgLSBGZWJydWFyeSwgMjAxMAogIDx1bD4KICA8bGk+Rml4ZXMgYW5kIGVuaGFuY2VtZW50cyB0byB0aGUganF1ZXJ5IHJlc2V0IHNlc3Npb24gdGVtcGxhdGUuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS43LjEgLSBNYXJjaCwgMjAxMAogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuNy4zIC0gTWFyY2gsIDIwMTAKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjggLSBNYXJjaCwgMjAxMAogIDx1bD4KICA8bGk+Tm93IHRoZSByZWRpcmVjdF90byBwYWdlIHByZWZlcmVuY2VzIGFyZSBzbWFydHkgdGVtcGxhdGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOC4yIC0gQXByaWwsIDIwMTAKICA8dWw+CiAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjguMyAtIEFwcmlsLCAyMDEwCiAgPHVsPgogIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS44LjQgLSBBcHJpbCwgMjAxMAogIDx1bD4KICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOC41IC0gTWF5LCAyMDEwCiAgPHVsPgogICAgPGxpPkFkZHMgdGhlIHJldHVybmxhc3QgcGFyYW1ldGVyIHRvIGFsbG93IHJldHVybmluZyBiYWNrIHRvIHRoZSBwcmV2aW91cyB1cmwgb24gbG9naW4gb3IgbG9nb3V0LjwvbGk+CiAgICA8bGk+Rml4ZXMgdGhlIHJlc2V0IHRvIGRlZmF1bHRzIGJ1dHRvbiBpbiB0aGUgbG9zdCB1c2VybmFtZSB0ZW1wbGF0ZShzKSBmb3JtLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOSAtIE1heSwgMjAxMAogIDx1bD4KICAgIDxsaT5BZGRzIHRoZSBhYmlsaXR5IHRvIHNwZWNpZnkgdW5pcXVlIGZpZWxkcy48L2xpPgogICAgPGxpPlZhcmlvdXMgbWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOS4xIC0gTWF5LCAyMDEwCiAgPHVsPgogICAgPGxpPlJlLWFkZHMgYSBmdW5jdGlvbiBuZWVkZWQgYnkgQXZhaWxhYmlsaXR5LjwvbGk+CiAgICA8bGk+TWlub3IgYWRkaXRpb24gdG8gdGhlIHZpZXcgdXNlciB0ZW1wbGF0ZS48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjkuMiAtIE1heSwgMjAxMAogIDx1bD4KICAgIDxsaT5SZW1vdmUgcHJldHR5IHVybHMgZm9yIGxvc3QgdXNlcm5hbWUsIGFuZCBjaGFuZ2Ugc2V0dGluZ3MgZm9ybXMgYmVjYXVzZSB0aGV5IHdlcmUgbG9zaW5nIHBhcmFtZXRlcnMgbGlrZSB0aGUgbGFuZyBwYXJhbWV0ZXIuPC9saT4KICAgIDxsaT4oVGVkKTogRml4IGFiaWxpdHkgdG8gdW5jaGVjayBjaGVja2JveGVzIHdoaWxlIGVkaXRpbmcgYSB1c2VyIGluIHRoZSBhZG1pbjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuOS4zIC0gSnVuZSwgMjAxMAogIDx1bD4KICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMCAtIEp1bmUsIDIwMTAKICA8dWw+CiAgICA8bGk+QWRkcyBzdXBwcG9ydCBmb3IgYWRkaXRpb25hbCBhdXRoZW50aWNhdGlvbiBtZWNoYW5pc21zIChzdGlsbCB0ZXN0aW5nKS48L2xpPgogICAgPGxpPkZpeGVzIGEgbWlub3IgaXNzdWUgd2l0aCByZXR1cm50by48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEwLjEgLSBKdWx5LCAyMDEwCiAgPHVsPgogICAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEwLjIgLSBKdWx5LCAyMDEwCiAgPHVsPgogICAgPGxpPkFkZHMgdGhlIEdldEV4cHJpcnlEYXRlIGFwaSBtZXRob2QuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMSAtIEp1bHksIDIwMTAKICA8dWw+CiAgICA8bGk+QWRkcyBvcHRpb25hbCBlbmNyeXB0aW9uIGZvciBwcm9wZXJ0eSBkZWZpbml0aW9ucy48L2xpPgogICAgPGxpPlZhcmlvdXMgbWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8bGk+SW1wcm92ZW1lbnQgdG8gdGhlIENTViBleHBvcnQgc3R1ZmYuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMiAtIEF1Z3VzdCwgMjAxMAogIDx1bD4KICAgIDxsaT5Ob3cgd29ya3MgaW4gY29uanVuY3Rpb24gd2l0aCBTZWxmUmVnaXN0cmF0aW9uIHRvIGhhbmRsZSBwYWlkIHN1YnNjcmlwdGlvbnMuPC9saT4KICAgIDxsaT5UaGUgY29udGVudF9tb2R1bGUgdGFnIG5vdyBwcm92aWRlcyBhIG11bHRpLXNlbGVjdCBsaXN0IChUZWQpPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMi4zIC0gU2VwdGVtYmVyLCAyMDEwCiAgPHVsPgogICAgPGxpPkFkZHMgYW4gb3ZlcmFsbCBwcmVmZXJlbmNlIGZvciBwYWlkIHJlZ2lzdHJhdGlvbiwgd2hpY2ggdHJpZ2dlcnMgdGhlIGV2ZW50IGhhbmRsZXJzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuNCAtIE9jdG9iZXIsIDIwMTAKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuNCAtIE9jdG9iZXIsIDIwMTAKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8bGk+Rml4ZXMgZm9yIHN1cHBvcnQgZm9yIENNU01TIDEuOTwvbGk+CiAgICA8bGk+UmVxdWlyZXMgQ0dFeHRlaW9ucyAxLjIxIG9yIGJldHRlcjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuNiAtIE5vdmVtYmVyLCAyMDEwCiAgPHVsPgogICAgPGxpPk1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjcgLSBEZWNlbWJlciwgMjAxMAogIDx1bD4KICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMi44IC0gRGVjZW1iZXIsIDIwMTAKICA8dWw+CiAgICA8bGk+TWlub3IgYnVnIGZpeGVzLjwvbGk+CiAgICA8bGk+U29tZSBtaW5vciBidWcgZml4ZXMgcmVsYXRlZCB0byBFX1NUUklDVCBhbmQgRV9ERVBSRUNBVEVELjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuMTAgLSBKYW51YXJ5LCAyMDExCiAgPHVsPgogICAgPGxpPkZpeGVzIHByb2JsZW0gd2l0aCBhZGQvZWRpdCBncm91cCB3aXRoIGxvdHMgb2YgcHJvcGVydGllcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjEyIC0gRmVicnVhcnksIDIwMTEKICA8dWw+CiAgICA8bGk+TWlub3IgQVBJIEZpeGVzLjwvbGk+CiAgICA8bGk+QWRkcyBhIG1ldGhvZCB0byBjbGVhciB0aGUgcHJvcGVydHkgY2FjaGUuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMi4xMyAtIE1hcmNoLCAyMDExCiAgPHVsPgogICAgPGxpPkZpeGVzIHRvIGV4cG9ydC48L2xpPgogICAgPGxpPkZpeGVzIHRvIHVzZXIgZWRpdGluZy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjEyLjEzIC0gTWFyY2gsIDIwMTEKICA8dWw+CiAgICA8bGk+Rml4ZXMgcHJvYmxlbSB3aXRoIGltYWdlIGZpZWxkcyB3aGVuIGVkaXRpbmcgYSB1c2VyLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuMTUgLSBNYXksIDIwMTEKICA8dWw+CiAgICA8bGk+TnVtZXJvdXMgc21hbGwgYnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTIuMTYgLSBNYXksIDIwMTEKICA8dWw+CiAgICA8bGk+QnVnIGZpeGVzIHdydCBsb3N0IHBhc3N3b3JkIGZ1bmN0aW9uYWxpdHkuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xMyAtIEp1bmUsIDIwMTEKICA8dWw+CiAgICA8bGk+Rml4ZXMgYSBtaW5vciBidWcgaW4gdGhlIExvZ291dCgpIG1ldGhvZC48L2xpPgogICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gZm9yY2UgbG9nb3V0IHVzZXJzIGF0IHNwZWNpZmllZCB0aW1lcy48L2xpPgogICAgPGxpPk1vZGlmaWVzIHRoZSBiZWhhdmlvciBvZiB0aGUgKGRlZmF1bHQpIGNoYW5nZSBzZXR0aW5ncyBmb3JtIHRvIGRpc3BsYXkgdGhlIGxvZ291dCBmb3JtIHdoZW4gY29tcGxldGVkLjwvbGk+CiAgICA8bGk+QWRkcyBhIHByZWZlcmVuY2UgdG8gc3BlY2lmeSBhIChtaW5pbXVtKSB0aW1lIGludGVydmFsIGJldHdlZW4gZXhwaXJ5IGFjdGlvbnMuICBUaGlzIHNob3VsZCBzYXZlIGEgZmV3IHF1ZXJpZXMgZm9yIG1vc3QgcmVxdWVzdHMuPC9saT4KICAgIDxsaT5BZGRzIGEgcHJlZmVyZW5jZSB0byBzcGVjaWZ5IGEgdGltZSBpbnRlcnZhbCBiZXR3ZWVuIHVzZXIgY2hlY2tpbnMgdG91Y2hpbmcgdGhlIGRhdGFiYXNlLiAgVGhpcyBzaG91bGQgc2F2ZSBhIGZldyBtb3JlIGRiIHF1ZXJpZXMgZm9yIG1vc3QgcmVxdWVzdHMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNCAtIEp1bHksIDIwMTEKICA8dWw+CiAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBhZGp1c3QgdGhlIHBhc3N3b3JkIHNhbHQgKG9ubHkgaWYgdGhlcmUgYXJlIG5vIHVzZXJzKS48L2xpPgogICAgPGxpPkltcHJvdmVtZXRucyB0byB0aGUgQ1NWIGV4cG9ydC9pbXBvcnQgcm91dGluZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNSAtIEp1bHksIDIwMTEKICA8dWw+CiAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBhZGQgYWRkaXRpb25hbCBwcm9wZXJ0aWVzIHRvIHRoZSB2aWV3LjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTUuMSAtIEF1Z3VzdCAyMDExCiA8dWw+CiAgIDxsaT5NaW5vciBidWcgZml4LjwvbGk+CiA8L3VsPgo8bGk+MS4xNS40IC0gT2N0b2JlciAyMDExCiAgPHVsPgogICAgPGxpPk9wdGltaXphdGlvbnMuPC9saT4KICAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICAgIDxsaT5NaW5vciBBUEkgZW5oYW5jZW1lbnRzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTUuNSAtIE9jdG9iZXIsIDIwMTEKICA8dWw+CiAgICA8bGk+QnVnIGZpeGVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTYgLSBPY3RvYmVyLCAyMDExCiAgPHVsPgogICAgPGxpPkFkZHMgYSBuZXcgJnF1b3Q7UHJvdGVjdGVkIENvbnRlbnQmcXVvdDsgY29udGVudCB0eXBlLiAgQWxvbmcgd2l0aCBhIGZldyByZWxhdGVkIHByZWZlcmVuY2VzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTYuMSAtIE9jdG9iZXIsIDIwMTEKICA8dWw+CiAgICA8bGk+Rml4ZXMgYSBtaW5vciBidWcgd3J0IGNhY2hpbmcgb2YgdXNlciBwcm9wZXJ0aWVzLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTYuMiAtIE9jdG9iZXIsIDIwMTEKICA8dWw+CiAgICA8bGk+Rml4ZXMgYW4gdXBncmFkZSBpc3N1ZS48L2xpPgogICAgPGxpPkZpeGVzIGEgcmVkaXJlY3QgY2FsbC48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE2LjQgLSBPY3RvYmVyLCAyMDExCiAgPHVsPgogICAgPGxpPkZpeGVzIGZvciBhZGRpdGlvbmFsIGNvbnRlbnQgYmxvY2tzLjwvbGk+CiAgICA8bGk+Rml4IGZvciBub3RpY2UgZ2VuZXJhdGVkIGluIHRoZSBBUEkuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNi42IC0gRGVjZW1iZXIsIDIwMTEKICA8dWw+CiAgICA8bGk+TnVtZXJvdXMgbWlub3IgYnVnIGZpeC48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE3IC0gRmVicnVhcnksIDIwMTIKICA8dWw+CiAgICA8bGk+TWFueSBtZXRob2RzIGFyZSBwcm90ZWN0ZWQgbm93Li4uIGZvciBiZXR0ZXIgc2VjdXJpdHkuPC9saT4KICAgIDxsaT5BZGRzIGNhcHRjaGEgc3VwcG9ydCB0byB0aGUgZm9yZ290IHBhc3N3b3JkIGZvcm0uPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xNy4xIC0gTWFyY2gsIDIwMTIKICA8dWw+CiAgIDxsaT5NaW5vciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4xOC54IC0gTWFyY2gsIDIwMTIKICA8dWw+CiAgIDxsaT5JbXByb3ZlZCB1c2VycyB0YWIuPC9saT4KICAgPGxpPkFkZHMgdGhlIGFiaWxpdHkgdG8gYWxsb3cgdXNlcnMgdG8gY2hhbmdlIHRoZWlyIHVzZXJuYW1lLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMTgueCAtIE1hcmNoLCAyMDEyCiAgPHVsPgogICAgPGxpPkFkZGVkIHRoZSBkYXRhIHByb3BlcnR5IHR5cGUgKG5vdCBlZGl0YWJsZSBieSBhZG1pbnMpLjwvbGk+CiAgICA8bGk+TW9kaWZpZWQgdGhlIGFwaSB0byBhbGxvdyBkZWxldGluZyBkYXRhIGZyb20gdGhlIHVzZXJzIHdoZW4gZGVsZXRpbmcgcHJvcGVydGllcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjE5IC0gU2VwdGVtYmVyLCAyMDEyCiAgPHVsPgogICAgPGxpPk51bWVyb3VzIGd1aSBpbXByb3ZlbWVudHMuPC9saT4KICAgIDxsaT5OdW1lcm91cyBidWcgZml4ZXMgYW5kIG1pbm9yIGVuaGFuY2VtZW50cy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjIwIC0gT2N0b2JlciwgMjAxMgogIDx1bD4KICAgIDxsaT5GeHhlcyB0byB0aGUgYmVoYXZpb3Igb2YgY2hlY2tib3ggZmllbGRzLjwvbGk+CiAgICA8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBzcGVjaWZ5IHRoZSBkZWZhdWx0IHZhbHVlIG9mIGNoZWNrYm94ZXMuPC9saT4KICAgIDxsaT5OdW1lcm91cyBvdGhlciBidWcgZml4ZXMuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4yMS54CiAgPHVsPgogICAgPGxpPlJlZmFjdG9yaW5nIHRvIGFsbG93IGFsdGVybmF0ZSBmb3JtcyBvZiBhdXRoZW50aWNhdGlvbi48L2xpPgogICAgPGxpPlJlZmFjdG9yaW5nIHRvIGV4cGFuZCB0aGUgdXNlIG9mIHRoZSBjb25zdW1lciBjbGFzcy48L2xpPgogICAgPGxpPk5vdyBhbGxvdyBvdGhlciBtb2R1bGVzIHRvIGNvbnRyb2wgZ3JvdXAgbWVtYmVyc2hpcC48L2xpPgogICAgPGxpPlJlZmFjdG9yaW5nIG9mIHByZWZlcmVuY2VzIGFuZCBzZXR0aW5ncy48L2xpPgogICAgPGxpPlJlZmFjdG9yaW5nIG9mIGNvb2tpZSwgc2Vzc2lvbiwgbG9nZ2luZywgYW5kIGhpc3RvcnkgZnVuY3Rpb25hbGl0aWVzLjwvbGk+CiAgICA8bGk+TnVtZXJvdXMgbWlub3IgZW5oYW5jZW1lbnRzIGFuZCBidWcgZml4ZXMuPC9saT4KICAgIDxsaT4qKiAxLjIxLjExIC0gRml4ZWQgc2lnbmlmaWNhbnQgcHJvYmxlbSB3aXRoIHRoZSBwcm90ZWN0ZWQgY29udGVudCBjb250ZW50IHR5cGUgLi4uIGV2ZXJ5Ym9keSBzaG91bGQgdXBncmFkZSBBU0FQICoqPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4yMi54CiAgPHVsPgogICAgPGxpPkZpeGVzIHRvIGFzY2lpIGltcG9ydDwvbGk+CiAgICA8bGk+RW5jcnlwdGVkIHByb3BlcnRpZXMgYXJlIG5vIGxvbmdlciBleHBvcnRlZCB0byBBU0NJSTwvbGk+CiAgICA8bGk+Rml4ZXMgdG8gZ3JvdXAgZXhwb3J0L2ltcG9ydDwvbGk+CiAgICA8bGk+QWRtaW5pc3RyYXRvcnMgY2FuIG5vIGxvbmdlciBzZWUgYW5kL29yIGVkaXQgZW5jcnlwdGVkIHByb3BlcnRpZXMuPC9saT4KICAgIDxsaT5BZG1pbiB1c2VycyB0YWIgZmlsdGVyaW5nIGhhcyBiZWVuIHJld3JpdHRlbiwgaXMgbm93IGEgdXNlciBwcmVmZXJlbmNlLjwvbGk+CiAgICA8bGk+SW1wcm92ZWQgZXJyb3IgY2hlY2tpbmcgaW4gdGhlIGFkbWluIHVzZXJzIHRhYi48L2xpPgogICAgPGxpPkltcHJvdmVtZW50cyB0byB0aGUgZmV1X3VzZXJfcXVlcnkgc3R1ZmYuPC9saT4KICA8L3VsPgo8L2xpPgo8bGk+MS4yMy54CiAgPHVsPgoJPGxpPlJld3JpdGUgQVNDSUkgZXhwb3J0IGFuZCBpbXBvcnQgY29kZS48L2xpPgoJPGxpPlJld3JpdGUgRkVVIENoYW5nZSBzZXR0aW5ncyB0ZW1wbGF0ZTogIE5PVEU6IFlvdSBtYXkgbmVlZCB0byBhZGp1c3QgeW91ciBjaGFuZ2Ugc2V0dGluZ3MgdGVtcGxhdGUuPC9saT4KCTxsaT5SZXdyaXRlIEZFVSBsb2dpbiBmb3JtIHRlbXBsYXRlLjwvbGk+Cgk8bGk+QWRkcyBhIHRyaXZpYWwsIG9wdGlvbmFsIGhvbmV5cG90IGNhcHRjaGEgZmllbGQgdG8gdGhlIGxvZ2luIGZvcm0uICBSZXNldCB5b3VyIGxvZ2luIGZvcm0gdG8gZGVmYXVsdCB2YWx1ZXMgdG8gc2VlIGl0LCBhbmQgaXRzIHVzZS48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjI0LngKCTx1bD4KCTxsaT5Ob3cgdXNlIGNnZV91dGlsczo6Y2xlYW5faW5wdXRfaHRtbCwgYW5kIG90aGVyIGZpbHRlcmluZyBtZWNoYW5pc21zIHRvIHByZXZlbnQgYmFkIGh0bWwvamF2YXNjcmlwdCBmcm9tIGJlaW5nIHN1Ym1pdHRlZCB2aWEgZnJvbnRlbmQgdGV4dCBhcmVhcy48L2xpPgoJPGxpPkFkZHMgZmV1X3NtYXJ0eTo6Z2V0X2dyb3VwX21lbWJlcmxpc3QoJGdpZCkgPGVtPigxLjI0LjEpPC9lbT48L2xpPgoJPGxpPkZpeGVzIGEgdmVyeSBpbXBvcnRhbnQgc2VjdXJpdHkgaXNzdWUgKHZpYSBhIGNydWRlIGhhY2spIHRoYXQgYWxsb3dzIGFub255bW91cyB1c2VycyB0byB2aWV3IHByaXZhdGUgY29kZS4gIFJlY29tbWVuZCB1cGdyYWRpbmcgYXMgc29vbiBhcyBwb3NzaWJsZS4gPGVtPigxLjI0LjMpPC9lbT48L2xpPgoJPGxpPk5vdyBSZXF1aXJlIFBIUCA1LjQuMyBtaW5pbXVtLjwvbGk+Cgk8L3VsPgoJPC9saT4KPGxpPjEuMjUueAoJPHVsPgoJPGxpPk5ldyBzdXBwb3J0IGZvciByZXF1aXJpbmcgc3Ryb25nZXIgcGFzc3dvcmRzIChvcHRpb25hbCBwcmVmZXJlbmNlcywgZW5hYmxlZCBmb3IgbmV3IGluc3RhbGxhdGlvbnMpPC9saT4KCTwvdWw+CjwvbGk+CjxsaT4xLjI1LngKICAgPHVsPgogICAgIDxsaT5NaW5vciB0ZW1wbGF0ZSBmaXhlcy48L2xpPgogICAgIDxsaT5JbXByb3ZlbWVudHMgdG8gcGFzc3dvcmQgc3RyZW5ndGggY2hlY2tzLjwvbGk+CiAgIDwvdWw+CjwvbGk+CjxsaT4xLjI2LngKCTx1bD4KCTxsaT5QYWdlcyBvZiB0eXBlICdwcm90ZWN0ZWQgY29udGVudCcgd2lsbCBub3cgb25seSBnZW5lcmF0ZSA0MDMgZXJyb3JzIGlmIHVuYXV0aG9yaXplZCBhY2Nlc3MgaXMgZGV0ZWN0ZWQuCgkgICA8cD5UaGlzIGlzIHRvIHNvbHZlIHBvdGVudGlhbCBzZWN1cml0eSBpc3N1ZXMuICBVc2VycyB3aWxsIG5lZWQgdG8gY3JlYXRlIGEgc3lzdGVtIHBhZ2UgdG8gaGFuZGxlIDQwMyBlcnJvcnMgaW4gYSBncmFjZWZ1bCB3YXkuPC9wPgogICAgICAgIDwvbGk+CiAgICAgICAgPGxpPlJlbW92ZSBjYXB0Y2hhIGFuZCBvdGhlciBwcm90ZWN0ZWQgcGFnZSBvcHRpb25zIGFzIGFueSB1bmF1dGhvcml6ZWQgYWNjZXNzIG5vdyB3aWxsIHJlc3VsdCBpbiA0MDMgZXJyb3JzLjwvbGk+CiAgICAgICAgPGxpPm1vcmUgbWV0aG9kcyB0byBmZXVfc21hcnR5LjwvbGk+Cgk8L3VsPgo8L2xpPgo8bGk+MS4yNi54Cgk8dWw+Cgk8bGk+QWRkcyB7JGZldV9zbWFydHktPmdldF9ncm91cF9saXN0KCl9PC9saT4KCTwvdWw+CjwvbGk+Cgo8bGk+MS4yOC54CiAgPGRpdiBjbGFzcz0iaW5mb3JtYXRpb24iPjxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhpcyB2ZXJzaW9uIG9mIEZFVSBoYXMgdW5kZXJnb25lIHNpZ25maWNhbnQgY2hhbmdlcy4gIFRoZXJlIG1heSBiZSBzb21lIGNvbXBhdGliaWxpdHkgcHJvYmxlbXMuPC9kaXY+CiAgPHVsPgoJPGxpPlJlbW92ZWQgdGhlIENoZWNrUGFzc3dvcmQgbWV0aG9kIGluIGFudGljcGF0aW9uIG9mIGFkZGluZyBwcm9wZXIgc2VlZGluZy48L2xpPgoJPGxJPkFkZGVkIEZyb250RW5kVXNlcnM6OmdldF9lbWFpbCgpIGFuZCBhIGZldyBtaW5vciBtZXRob2RzLjwvbGk+Cgk8bGk+VGVtcGxhdGUgQ2xlYW51cHMgYW5kIHJld3JpdGVzOgoJICAgPHA+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBTb21lIHRlbXBsYXRlcyBtYXkgbmVlZCB0byBiZSByZWJ1aWx0LCB0aG91Z2ggdGhlIGNoYW5nZXMgc2hvdWxkIGJlIG1pbm9yLiAgTW9zdGx5IHRoZSB0ZW1wbGF0ZXMgaGF2ZSBqdXN0IGJlZW4gY29udmVydGVkIHRvIHVzZSBib290c3RyYXAgc3R5bGVzLjwvcD4KCTwvbGk+Cgk8bGk+U3Ryb25nZXIgcGFzc3dvcmQgZW5jcnlwdGlvbjoKCSAgPHA+Tm93LCBvbiBuZXcgaW5zdGFsbHMgYSBzYWx0IGlzIGdlbmVyYXRlZCBhbmQgc3RvcmVkIGZvciBlYWNoIHVzZXIgYWNjb3VudC4gIFRoaXMgaW5kaXZpZHVhbCBzYWx0IGlzIHVzZWQgd2hlbiB2ZXJpZnlpbmcgYSB1c2VycyBwYXNzd29yZC4KCSAgICAgVGhpcyBpcyBmb3IgbmV3IGluc3RhbGxzIG9ubHksIGFuZCBzaG91bGQgaGF2ZSBubyBiZWFyaW5nIG9uIGV4aXN0aW5nIHdlYnNpdGVzIGRvaW5nIGFuIHVwZ3JhZGUuICBIb3dldmVyLCBpZiB5b3UgYXJlIHVzaW5nIHNlbGZyZWcgeW91IE1VU1QgYWxzbyB1cGdyYWRlIHRoZSBzZWxmcmVnIG1vZHVsZS48L3A+Cgk8L2xpPgoJPGxpPkFkZHMgbmV3IEVuY3J5cHRQYXNzd29yZCBtZXRob2QuPC9saT4KCTxsaT5BZGRzIGFiaWxpdHkgZm9yIGFuIGFkbWluIHRvIGZvcmNlIGEgcGFzc3dvcmQgcmVzZXQuPC9saT4KCTxsaT5BZGRzIGFiaWxpdHkgdG8gZGlzYWJsZSBhIHVzZXIgYWNjb3VudCB3aXRob3V0IGNoYW5naW5nIHRoZWlyIHBhc3N3b3JkLjwvbGk+CiAgICAgICAgPGxpPk51bWVyb3VzIG1pbm9yIGJ1ZyBmaXhlcy48L2xpPgogICAgICAgIDxsaT5Ob3cgdXRpbGl6ZSBzbWFydHkgc2NvcGVzIHRvIHJlZHVjZSB2YXJpYWJsZSBuYW1lIGNvbmZsaWN0cywgYW5kIGJlIG1vcmUgbWVtb3J5IGVmZmljaWVudCAoaG9wZWZ1bGx5KS48L2xpPgoJPGxpPjEuMjguMyAtIG1pbm9yIEFQSSBjaGFuZ2VzIGZvciB1c2UgaW4gc2VsZnJlZi48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjI5PGJyLz4KCTxkaXYgY2xhc3M9Indhcm5pbmciPjxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhpcyB2ZXJzaW9uIG9mIEZFVSBoYXMgdW5kZXJnb25lIHNpZ25pZmljYW50IGNoYW5nZXMuICBUaGVyZSBtYXkgYmUgc29tZSBjb21wYXRpYmlsaXR5IHByb2JsZW1zLjwvZGl2PgoJPHVsPgoJPGxpPjxzdHJvbmc+SW1wb3J0YW50Ojwvc3Ryb25nPiBSZS1mYWN0b3JlZCB0aGUgZmV1X3NtYXJ0eSBzdHVmZiBmb3IgQ01TTVMgMi4wIGNvbXBhdGliaWxpdHkuICBUaGlzIG1lYW50IHJlbW92aW5nIHRoZSBhc3NpZ24gcGFyYW1ldGVyLCBhbmQgbWFraW5nIGFsbCBtZXRob2RzIHN0YXRpYy4KCSAgPHA+aS5lOiA8Y29kZT57JGZldV9zbWFydHktPmdldF91c2VyX3Byb3BlcnRpZXMoJHVpZCwncHJvcHMnKX08L2NvZGU+IG11c3Qgbm93IGJlIGNhbGxlZCBsaWtlOiA8Y29kZT57JHByb3BzPWZldV9zbWFydHk6OmdldF91c2VyX3Byb3BlcnRpZXMoJHVpZCl9PC9jb2RlPjwvcD4KCSAgPHA+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBwYXJhbWV0ZXJzIGZvciBzb21lIG1ldGhvZHMgaGFzIGNoYW5nZWQuICBwbGVhc2UgcmV2aWV3IHRoZSBoZWxwLjwvcD4KCTwvbGk+Cgk8bGk+UmUtaW1wbGVtZW50IG1ldGhvZHMgZnJvbSBDdXN0b21Db250ZW50IGludG8gZmV1X3NtYXJ0eS4uLiB3aXRoIHNvbWUgbW9yZSBwb3dlci48L2xpPgoJPGxpPkFkZHMgdGhlIGZldV9wcm90ZWN0IHBsdWdpbi48L2xpPgoJPC91bD4KPC9saT4KPGxpPjEuMzA8YnIvPgoJPGRpdiBjbGFzcz0id2FybmluZyI+Cgk8b2w+Cgk8bGk+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIHZlcnNpb24gb2YgRkVVIGhhcyB1bmRlcmdvbmUgc2lnbmlmaWNhbnQgY2hhbmdlcy4gIFRoZXJlIG1heSBiZSBzb21lIGNvbXBhdGliaWxpdHkgcHJvYmxlbXMuPC9saT4KCTxsaT5UaGlzIHZlcnNpb24gdGFrZXMgYWR2YW50YWdlIG9mIHNtYXJ0eSBzY29wZXMgZm9yIHZhcmlvdXMgZGlzcGxheXMuICBUaGlzIHByZXZlbnRzIG9uZSBzbWFydHkgdmFyaWFibGUgZnJvbSBvbmUgdGVtcGxhdGUvbW9kdWxlIGFjdGlvbiBmcm9tIG92ZXJ3cml0aW5nIGRhdGEgZnJvbSBhbm90aGVyIHRlbXBsYXRlL21vZHVsZSBhY3Rpb24uICBIb3dldmVyIGl0IG1lYW5zIHRoYXQgc21hcnR5IHZhcmlhYmxlcyBhcmUgbm90IGF1dG9tYXRpY2FsbHkgZ2xvYmFsLiAgQW5kIGluIG9yZGVyIHRvIG1ha2UgZGF0YSBnbG9iYWwgeW91IG11c3QgZXhwbGljaXRseSBjb3B5IGl0IHRvIHRoZSBnbG9iYWwgc2NvcGUuPC9saT4KCTxsaT48c3Ryb25nPldhcm5pbmc6PC9zdHJvbmc+IFRoZSB1cGdyYWRlIHByb2Nlc3Mgd2lsbCBlbnN1cmUgdGhhdCBkYXRhIGludGVncml0eSBpcyBlbmFibGVkIGluIHRoZSBkYXRhYmFzZSBhbmQgdGhhdCB0aGVyZSBpcyBubyBleHRyYSBkYXRhIGV4aXN0aW5nIGluIHRoZSBoaXN0b3J5LCAgZ3JvdXBwcm9wbWFwIG9yIHByb3BlcnRpZXMgdGFibGUuICBJZiB5b3UgaGF2ZSBtYW5pcHVsYXRlZCB0aGUgRkVVIGRhdGFiYXNlIG1hbnVhbGx5IHRoZW4geW91IG1heSBiZSBzdWJqZWN0IHRvIGRhdGEgbG9zcy48L2xpPgoJPC9vbD4KCTwvZGl2PgoKCTx1bD4KCTxsaT5Db21wbGV0ZSByZXdyaXRlIG9mIGZvcmdvdHRlbiBwYXNzd29yZCBmdW5jdGlvbmFsaXR5LiAgVGhpcyBpbnZvbHZlZCBjaGFuZ2luZyBhbGwgb2YgdGhlIHRlbXBsYXRlcyBmb3IgZm9yZ290dGVuIHBhc3N3b3JkLCBzbyB5b3Ugd2lsbCBuZWVkIHRvIHJlc2V0IHlvdXIgdGVtcGxhdGVzLjwvbGk+Cgk8bGk+Q29udmVydHMgYWxsIHRhYmxlcyB0byB1c2UgaW5ub2RiLCBhbmQgbm93IGVuZm9yY2VzIHNvbWUgZm9yZWlnbiBrZXkgcmVsYXRpb25zaGlwcy4KCTxwPlRoaXMgaGVscHMgZW5zdXJlIGRhdGFiYXNlIGludGVncml0eSwgIGFuZCBhbGxvd3MgdGhpcmQgcGFydHkgbW9kdWxlcyB1c2luZyB0aGUgRkVVIEFQSSB0byBjcmVhdGUgbW9yZSBmb3JlaWduIGtleSByZWxhdGlvbnNoaXBzLjwvcD4KCTxwPklmIGEgdGhpcmQgcGFydHkgbW9kdWxlIGNyZWF0ZXMgYSBmb3JlaWduIGtleSByZWxhdGlvbnNoaXAgdG8gdGhlIHVzZXJzIHRhYmxlLCBhbmQgZGF0YSBleGlzdHMgaW4gdGhlIHRoaXJkIHBhcnR5IHRhYmxlIGtleWVkIHRvIGFuIGV4aXN0aW5nIEZFVSBhY2NvdW50IHRoZW4gdGhvc2UgdXNlcnMgY2Fubm90IGJlIGRlbGV0ZWQgdmlhIHRoZSBGRVUgYWRtaW4gdW50aWwgdGhlIHRoaXJkIHBhcnR5IGRhdGEgaXMgZXJhc2VkLjwvcD4KCTwvbGk+Cgk8bGk+QWRkcyB0aGUgYWJpbGl0eSB0byBkZWxldGUgYSBwcm9wZXJ0eSAoYXMgbG9uZyBhcyBpdCBpcyBub3QgYSBtb2R1bGUgcHJvcGVydHksIG9yIGEgaGlkZGVuL3JlcXVpcmVkIG1lbWJlciBvZiBhbnkgZ3JvdXAuPC9saT4KCTxsaT5SZW1vdmVzIHVuZG9jdW1lbnRlZCBhbmQgcmFyZWx5IHVzZWQgY29udGVudF9tb2R1bGUgZnVuY3Rpb25hbGl0eSBmb3IgZ3JvdXAgc2VsZWN0b3IuPC9saT4KCTxsaT5HZXQgcmlkIG9mIHNlcXVlbmNlIHRhYmxlcy48L2xpPgoJPGxpPlJld3JpdGUgdGhlIGxvZ2luIGZ1bmN0aW9uYWxpdHkgZnJvbSBzY3JhdGNoLjwvbGk+Cgk8bGk+UmVtb3ZlZCB0aGUgbm9pbmxpbmUgcGFyYW1ldGVyLjwvbGk+Cgk8bGk+QWRkZWQgdGhlIGlubGluZSBwYXJhbWV0ZXIgZm9yIHRoZSBsb2dpbiBmb3JtIG9ubHkuICBMaW5rcyBmcm9tIHRoZSBsb2dvdXQgZm9ybSAoaS5lOiB0byBsb2dvdXQsIGFuZCB0byBjaGFuZ2Ugc2V0dGluZ3Mgd2lsbCBiZSBkb25lIG5vbi1pbmxpbmUpPC9saT4KCTxsaT5mb3JtPXNpbGVudC9hY3Rpb249c2lsZW50IG5vdyBvdXRwdXRzIHN0dWZmIHRvIGdsb2JhbCBzbWFydHkgc2NvcGUgKG5vdGUgdmFyaWFibGUgbmFtZXMgaGF2ZSBjaGFuZ2VkLCBzZWUgdGhlIHskZmV1X2RhdGF9IGFycmF5KS4gIFRoaXMgYWN0aW9uIGlzIGFsc28gZGVwcmVjYXRlZC48L2xpPgoJPGxpPkZpeGVzIHRoZSBkZWxldGUgdXNlciBzdHVmZi48L2xpPgoJPGxpPk5vdyBzZW5kIHRoZSBvbmRlbGV0ZXVzZXIgZXZlbnQgZnJvbSB3aXRoaW4gdGhlIGFwaSBmdW5jdGlvbnMuPC9saT4KCTxsaT5Nb3ZlZCBhbGwgb2YgdGhlIGZvcm1zIGludG8gdGhlaXIgb3duIGFjdGlvbnMuLi4uIGRlcHJlY2F0ZWQgdGhlIGZvcm0gcGFyYW1ldGVyLjwvbGk+Cgk8bGk+Tm93IHN1cHBvcnQgc3BlY2lmeWluZyBkaWZmZXJlbnQgdGVtcGxhdGVzIGZvciBsb2dpbiwgbG9nb3V0LCBjaGFuZ2VzZXR0aW5ncywgYW5kIGZvcmdvdHB3IGFjdGlvbnMuPC9saT4KCTxsaT5Db21wbGV0ZWx5IHJld3JpdGUgdGhlIGxvc3QgdXNlcm5hbWUgZnVuY3Rpb25hbGl0eS4gIEl0IG5vdyBqdXN0IGFza3MgZm9yIGFzIG11Y2ggaW5mb3JtYXRpb24gYXMgcG9zc2libGUsIGFuZCB1c2VzIHRoYXQgaW5mb3JtYXRpb24gdG8gdHJ5IHRvIGZpbmQgYSB1bmlxdWUgdXNlciBhY2NvdW50LjwvbGk+Cgk8bGk+QWRkcyBhIHByaXZhdGUgc2VjdGlvbiBoZWFkZXIgY3VzdG9tIGNvbnRlbnQgdHlwZS48L2xpPgoJPGxpPk5vdyBhZnRlciBjaGFuZ2Ugc2V0dGluZ3MgYSBtZXNzYWdlIGlzIGRpc3BsYXllZCB0byB0aGUgdXNlciBvbiB0aGUgbG9nb3V0Zm9ybS48L2xpPgoJPGxpPk51bWVyb3VzIGJ1ZyBmaXhlcy48L2xpPgoJPGxpPkJlZ2luIHdvcmsgb24gQVBJIGRvY3VtZW50YXRpb24uPC9saT4KCTwvdWw+CjwvbGk+CjxsaT4xLjMxCiAgPHVsPgogICAgPGxpPkFkZHMgYWJpbGl0eSB0byBmb3JjZSBhIHVzZXIgdG8gY2hhbmdlIHNldHRpbmdzIG9uIHRoZSBuZXh0IGxvZ2luLgogICAgICAgPHA+Tm90ZSwgdGhpcyBhbHNvIHdvcmtzIHdpdGggdGhlICJmb3JjZSBuZXcgcGFzc3dvcmQiIGZ1bmN0aW9uYWxpdHksIHNvIHRoYXQgYSB1c2VyIHdpbGwgYmUgZm9yY2VkIHRvIHNldCBhIG5ldyBwYXNzd29yZC48L3A+CiAgICA8L2xpPgogICAgPGxpPk1pbm9yIGxheW91dCBjaGFuZ2UgdG8gdGhlIGZpcnN0IGFkZCB1c2VyL2VkaXQgdXNlciBmb3JtLjwvbGk+CiAgPC91bD4KPC9saT4KPGxpPjEuMzEuMgogIDx1bD4KICAgIDxsaT5GaXhlcyB0byB1cGdyYWRlIHJvdXRpbmUgZm9yIGhvc3RzIHdpdGggc3RyaWN0IG1vZGUgc2V0LjwvbGk+CiAgICA8bGk+TnVtZXJvdXMgbWlub3IgQVBJIGZpeGVzLjwvbGk+CiAgICA8bGk+TW9yZSB3b3JrIG9uIEFQSSBkb2N1bWVudGF0aW9uLjwvbGk+CiAgICA8bGk+Q29ycmVjdCBzb21lIGxpY2Vuc2UgZG9jcy48L2xpPgogIDwvdWw+CjwvbGk+CjxsaT4xLjMxLjMKICAgPGRpdiBjbGFzcz0id2FybmluZyI+QmFycmluZyBzb21lIHVuZm9yc2VlbiBuZXcgZXJyb3JzIGluIHRoaXMgbGF0ZXN0IHJlbGVhc2UgY2F1c2VkIGJ5IG1lLCB0aGlzIHdpbGwgYmUgdGhlIGxhc3QgcmVsZWFzZSBvZiBGcm9udEVuZFVzZXJzIGZvciBDTVNNUyAxLnguPC9kaXY+CiAgIDx1bD4KICAgICAgPGxpPkZpeGVzIHByb2JsZW0gd2l0aCB0aGUgQWRkR3JvdXBQcm9wZXJ0eVJlbGF0aW9uIG1ldGhvZC48L2xpPgogICAgICA8bGk+Rml4ZXMgcHJvYmxlbXMgd2l0aCB0aGUgcmVtZW1iZXJtZSBmdW5jdGlvbmFsaXR5LjwvbGk+CiAgICAgIDxsaT5Nb3JlIG1pbm9yIGZpeGVzLjwvbGk+CiAgIDwvdWw+CjwvbGk+Cgo8bGk+Mi4wCiAgICAgICAgPGRpdiBjbGFzcz0id2FybmluZyI+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIHZlcnNpb24gYW5kIGFueSBzdWJzZXF1ZW50IHZlcnNpb25zIG9mIEZyb250RW5kVXNlcnMgd2lsbCByZXF1aXJlIGEgc3VwcG9ydGVkIHZlcnNpb24gb2YgQ01TTVMgMi54LjwvZGl2PgoJPGRpdiBjbGFzcz0id2FybmluZyI+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGlzIGlzIGEgbWFqb3IgcmVmYWN0b3Jpbmcgb2YgdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLiAgVGhvdWdoIG1vc3QgZnJvbnRlbmQgdGVtcGxhdGVzIGhhdmUgbm90IGNoYW5nZWQsIG1hbnkgYWRtaW4gdGVtcGxhdGVzIGhhdmUuICBJZiB5b3UgaGF2ZSBhbnkgb3ZlcnJpZGVzIGZvciBhZG1pbiB0ZW1wbGF0ZXMgdGhlbiB5b3UgbXVzdCByZW1vdmUgdGhlbSBiZWZvcmUgdXBncmFkaW5nLjwvZGl2Pgo8dWw+Cgk8bGk+UmVtb3ZlIGFsbCB0ZW1wbGF0ZSBtYW5hZ2VtZW50IGZ1bmN0aW9uYWxpdHkuICBUZW1wbGF0ZXMgYXJlIG5vdyBpbiBEZXNpZ25NYW5hZ2VyLiAgVGhpcyBhbHNvIG1lYW5zIHRoYXQgdGhlcmUgaXMgdGhlIHBvc3NpYmlsaXR5IG9mIGRpZmZlcmVudCB0ZW1wbGF0ZXMgZm9yIGVhY2ggdHlwZS4KCSAgIDxwPlRlbXBsYXRlcyBhcmUgbW92ZWQgZW4tbWFzc2UgaW50byBEZXNpZ25NYW5hZ2VyIGFuZCBnaXZlbiBuZXcgbmFtZXMuICBObyBvdGhlciBjaGFuZ2VzIGFyZSBtYWRlIHRvIHRlbXBsYXRlcy48L3A+CgkgICA8cD5BZGQgcGFyYW1ldGVycyB0byBzb21lIGFjdGlvbnMgdG8gYWxsb3cgc3BlY2lmeWluZyBhbHRlcm5hdGUgdGVtcGxhdGVzLjwvcD4KCTwvbGk+Cgk8bGk+U3BsaXQgdGhlIHNldHRpbmdzIGFjdGlvbihzKSB0byB0aGVpciBvd24gbWVudSBpdGVtIGluIHRoZSBhZG1pbiBuYXZpZ2F0aW9uLjwvbGk+Cgk8bGk+UmVmYWN0b3IgdGhlIHJlZGlyZWN0aW9uIGFmdGVyIGZvcm0gY29tcGxldGlvbjoKCTx1bD4KCTxsaT5JZiB0aGUgcmV0dXJudG8gcGFyYW1ldGVyIGlzIHNwZWNpZmllZCAoZWl0aGVyIGEgcGFnZSBpZCBvciBwYWdlIGFsaWFzKSB1c2UgaXQgdG8gcmVkaXJlY3QgdG8gYSBjb250ZW50IHBhZ2UuPC9saT4KCTxsaT5JZiBhIFBvc3RBY3Rpb25VUkwgd2FzIHNwZWNpZmllZCBhbmQgZXhpc3RzIGluIHRoZSBzZXNzaW9uLCB0aGVuIHJlZGlyZWN0IHRvIHRoYXQgVVJMLjwvbGk+Cgk8bGk+T3RoZXJ3aXNlIHVzZSB0aGUgcHJlZmVyZW5jZXMgYW5kIHRlbXBsYXRlcyBzcGVjaWZpZWQgaW4gdGhlIGFkbWluIG5hdi48L2xpPgoJPC91bD4KCTwvbGk+Cgk8bGk+UmVtb3ZlIHRoZSByZXR1cm5sYXN0IHBhcmFtZXRlci48L2xpPgoJPGxpPlJlbW92ZSBkZXBlbmRlbmN5IG9uIENNU01haWxlci48L2xpPgoJPGxpPlJlbW92ZSB0aGUgc2VwYXJhdGUgcGVybWlzc2lvbiBmb3IgZWRpdGluZyBGRVUgVGVtcGxhdGVzLjwvbGk+Cgk8bGk+UmVtb3ZlIHRoZSBzZXBhcmF0ZSBwZXJtaXNzaW9uIGZvciBlZGl0aW5nIEZFVSBtb2R1bGUgc2V0dGluZ3MuPC9saT4KCTxsaT5GaXhlcyB0byB0aGUgcHJvdGVjdGVkIHNlY3Rpb24gaGVhZGVyLjwvbGk+Cgk8bGk+SW1wcm92ZW1lbnRzIHRvIHVzZXIgaW1wb3J0IHRvIGhhbmRsZSBtdWx0aS1saW5lIHJlY29yZHMuPC9saT4KCTxsaT5SZWZhY3RvciB0aGUgYWRtaW4gc2lkZSBhZGQvZWRpdCB1c2VyIGZ1bmN0aW9uYWxpdHkuCgk8cD5Zb3UgY2FuIG5vdyB1cGxvYWQgaW1hZ2VzIGZvciB1c2VycyB3aGVuIGNyZWF0aW5nIHVzZXJzLjwvcD4KCTxwPlJlbmFtaW5nIGEgdXNlciBhY2NvdW50IG5vdyB3b3JrcyBtdWNoIGJldHRlci48L3A+Cgk8bGk+Cgk8bGk+QWRqdXN0IHN0eWxpbmcgb24gc29tZSBhZG1pbiB0ZW1wbGF0ZXMuPC9saT4KCTxsaT48c3Ryb25nPk5vdGU6IDxzdHJvbmc+IEZpeGVzIHRvIGxvc3QgdXNlcm5hbWUgdGVtcGxhdGUgc3R1ZmYuLi4geW91IHdpbGwgbmVlZCB0byByZXNldCB0aGUgdGVtcGxhdGUgdHlwZXMgdG8gZmFjdG9yeSBkZWZhdWx0cyBhbmQgdmVyaWZ5IHRoZSBjb250ZW50cyBvZiB5b3VyIHZhcmlvdXMgbG9zdC11c2VybmFtZSB0ZW1wbGF0ZXMuICh2Mi4wLjcpPC9saT4pCjwvdWw+Cgk8L2xpPgoKCTxsaT4yLjEKCTx1bD4KCTxsaT5SZS1mYWN0b3JzIHRoZSBidWxrIGFjdGlvbnMgYW5kIGFkZHMgbnVtZXJvdXMgYnVsayBhY3Rpb25zIGZvciB1c2Vycy48L2xpPgoJPGxpPkFkZHMgdGhlIEZFVSBMb2dvdXQgTGluayBjb250ZW50IHR5cGUuPC9saT4KCTxsaT5EZXByZWNhdGUgdGhlIG5vdGlmaWNhdGlvbiBlbWFpbCBmdW5jdGlvbmFsaXR5Li4uIGJldHRlciB0byB1c2UgZXZlbnQgaGFuZGxlcnMuPC9saT4KCTxsaT5TZW5kIHRoZSBPbkRlbGV0ZVVzZXIgZXZlbnQgYmVmb3JlIHRoZSB1c2VyIGlzIHBoeXNpY2FsbHkgZGVsZXRlZCBmcm9tIHRoZSBkYXRhYmFzZS48L2xpPgogICAgICAgIDxsaT5NaW5vciBidWcgZml4ZXM8L2xpPgoJPC91bD4KCTwvbGk+CgoJPGxpPjIuMgoJPHVsPgoJPGxpPkFkZHMgYWRtaW5pc3RyYXRpdmUgb3B0aW9uIHRvIHJlcXVpcmUgYSB1c2VyIHRvIHZlcmlmeSB0aGVtc2VsdmVzIGJlZm9yZSB0aGUgbmV4dCBsb2dpbi48L2xpPgoJPGxpPlJlLWZhY3RvciB0aGUgdmVyaWZ5IGVtYWlsIHRlbXBsYXRlLjwvbGk+Cgk8bGk+Rml4IGJ1ZyBpbiB1c2VyIGhpc3RvcnkgYWN0aW9uLjwvbGk+Cgk8bGk+SW1wcm92ZW1lbnRzIHRvIGVkaXR1c2VyIGFuZCBlZGl0dXNlcjIgYWN0aW9ucy48L2xpPgoJPGxpPk5ldyBwcmVmZXJlbmNlcyBmb3IgdmVyaWZ5IHBhZ2UuPC9saT4KCTxsaT5Ob3cgZGlzcGxheSB1c2VycyB0aGF0IG5lZWQgdG8gdmVyaWZ5IHRoZW1zZWx2ZXMgZGlmZmVyZW50bHkgaW4gdXNlcmxpc3QuPC9saT4KCTxsaT5BZGRlZCBPbkJlZm9yZUxvZ2luIEV2ZW50LCB3aGljaCBpcyBmaXJlZCBhZnRlciBwYXNzd29yZCBpcyB2YWxpZGF0ZWQsIGJ1dCBiZWZvcmUgdGhpbmdzIGFyZSBzZXR1cC48L2xpPgoJPGxpPkFkZHMgZmV1X3NtYXJ0eTo6cHJlbG9hZF91c2VycygpPC9saT4KCTxsaT5BZGRzIHRoZSBhYmlsaXR5IHRvIHJlZGlyZWN0IGJhY2sgdG8gdGhlIG9yaWdpbmFsbHkgcmVxdWVzdGVkIFVSTCAoR0VUIE9OTFkpIGlmIGRpcmVjdCBhY2Nlc3MgdG8gcHJvdGVjdGVkIGNvbnRlbnQgcmVzdWx0ZWQgaW4gYSA0MDMgZXJyb3IsICBhbmQgYW4gZXJyb3IgcGFnZSBleGlzdHMgdG8gaGFuZGxlIHRoZSByZXF1ZXN0LCB3aXRoIHtGcm9udEVuZFVzZXJzfSBjYWxsZWQgb24gaXQuPC9saT4KCTwvdWw+Cgk8L2xpPgoKCTxsaT4yLjMKCTx1bD4KCSAgPGxpPkltcHJvdmVtZW50cyB0byBkZWZhdWx0IGdyb3VwIGZ1bmN0aW9uYWxpdHkuICBUaG91Z2ggYSB1c2VyIGlzIG5vdCByZXF1aXJlZCB0byBiZSBhIG1lbWJlciBvZiBhbnkgZ3JvdXBzLCAod2lsbCBzZWUgYWJvdXQgdGhpcyBsYXRlcikuICBJZiB0aGVyZSBpcyBubyBkZWZhdWx0IGdyb3VwIHNlbGVjdGVkLCB0aGUgZmlyc3QgZ3JvdXAgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIGNoZWNrZWQuPC9saT4KCTwvdWw+Cgk8L2xpPgo8L3VsPgo=]]></data>
	</file>
	<file>
	  <filename>/docs/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/.htaccess</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[IyBGaXhlcyBhIHZ1bG5lcmFiaWxpdHkgaW4gQ2VudE9TOiBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzIwNTMzMjc5L3ByZXZlbnQtcGhwLWZyb20tcGFyc2luZy1ub24tcGhwLWZpbGVzLXN1Y2gtYXMtc29tZWZpbGUtcGhwLXR4dAo8RmlsZXNNYXRjaCBcLnBocFwudHh0JD4KICAgIFJlbW92ZUhhbmRsZXIgLnBocAogICAgRm9yY2VUeXBlIHRleHQvcGxhaW4KPC9GaWxlc01hdGNoPg==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/classes/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/classes/feu_user_query.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT5Gcm9udEVuZFVzZXJzIDIuMy4xPC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImF1dGhvciIgY29udGVudD0iIi8+CiAgICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iIi8+CgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2Jvb3RzdHJhcC1jb21iaW5lZC5uby1pY29ucy5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL3ByaXNtLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICA8bGluayBocmVmPSIuLi9jc3MvdGVtcGxhdGUuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIAogICAgPCEtLVtpZiBsdCBJRSA5XT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9odG1sNS5qcyI+PC9zY3JpcHQ+CiAgICA8IVtlbmRpZl0tLT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9qcXVlcnktMS4xMS4wLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvdWkvMS4xMC40L2pxdWVyeS11aS5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS5zbW9vdGgtc2Nyb2xsLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9wcmlzbS5taW4uanMiPjwvc2NyaXB0PgogICAgPCEtLSBUT0RPOiBBZGQgaHR0cDovL2pzY3JvbGxwYW5lLmtlbHZpbmx1Y2suY29tLyB0byBzdHlsZSB0aGUgc2Nyb2xsYmFycyBmb3IgYnJvd3NlcnMgbm90IHVzaW5nIHdlYmtpdC0tPgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgZnVuY3Rpb24gbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCkgewogICAgICAgIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3ByZVtkYXRhLXNyY10nKSkuZm9yRWFjaChmdW5jdGlvbiAocHJlKSB7CiAgICAgICAgICAgIHZhciBzcmMgPSBwcmUuZ2V0QXR0cmlidXRlKCdkYXRhLXNyYycpOwogICAgICAgICAgICB2YXIgZXh0ZW5zaW9uID0gKHNyYy5tYXRjaCgvXC4oXHcrKSQvKSB8fCBbLCAnJ10pWzFdOwogICAgICAgICAgICB2YXIgbGFuZ3VhZ2UgPSAncGhwJzsKCiAgICAgICAgICAgIHZhciBjb2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY29kZScpOwogICAgICAgICAgICBjb2RlLmNsYXNzTmFtZSA9ICdsYW5ndWFnZS0nICsgbGFuZ3VhZ2U7CgogICAgICAgICAgICBwcmUudGV4dENvbnRlbnQgPSAnJzsKCiAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAnTG9hZGluZ+KApic7CgogICAgICAgICAgICBwcmUuYXBwZW5kQ2hpbGQoY29kZSk7CgogICAgICAgICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CgogICAgICAgICAgICB4aHIub3BlbignR0VUJywgc3JjLCB0cnVlKTsKCiAgICAgICAgICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT0gNCkgewoKICAgICAgICAgICAgICAgICAgICBpZiAoeGhyLnN0YXR1cyA8IDQwMCAmJiB4aHIucmVzcG9uc2VUZXh0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSB4aHIucmVzcG9uc2VUZXh0OwoKICAgICAgICAgICAgICAgICAgICAgICAgUHJpc20uaGlnaGxpZ2h0RWxlbWVudChjb2RlKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoeGhyLnN0YXR1cyA+PSA0MDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9ICfinJYgRXJyb3IgJyArIHhoci5zdGF0dXMgKyAnIHdoaWxlIGZldGNoaW5nIGZpbGU6ICcgKyB4aHIuc3RhdHVzVGV4dDsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAn4pyWIEVycm9yOiBGaWxlIGRvZXMgbm90IGV4aXN0IG9yIGlzIGVtcHR5JzsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH07CgogICAgICAgICAgICB4aHIuc2VuZChudWxsKTsKICAgICAgICB9KTsKICAgIH0KCiAgICAkKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpewogICAgICAgIGxvYWRFeHRlcm5hbENvZGVTbmlwcGV0cygpOwogICAgfSk7CiAgICAkKCcjc291cmNlLXZpZXcnKS5vbignc2hvd24nLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCk7CiAgICB9KQo8L3NjcmlwdD4KCiAgICA8bGluayByZWw9InNob3J0Y3V0IGljb24iIGhyZWY9Ii4uL2ltYWdlcy9mYXZpY29uLmljbyIvPgogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi5wbmciLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjcyeDcyIiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi03Mng3Mi5wbmciLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjExNHgxMTQiIGhyZWY9Ii4uL2ltYWdlcy9hcHBsZS10b3VjaC1pY29uLTExNHgxMTQucG5nIi8+CjwvaGVhZD4KPGJvZHk+Cgo8ZGl2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWZpeGVkLXRvcCI+CiAgICA8ZGl2IGNsYXNzPSJuYXZiYXItaW5uZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxhIGNsYXNzPSJidG4gYnRuLW5hdmJhciIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iLm5hdi1jb2xsYXBzZSI+CiAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1lbGxpcHNpcy12ZXJ0aWNhbCI+PC9pPgogICAgICAgICAgICA8L2E+CiAgICAgICAgICAgIDxhIGNsYXNzPSJicmFuZCIgaHJlZj0iLi4vaW5kZXguaHRtbCI+RnJvbnRFbmRVc2VycyAyLjMuMTwvYT4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1jb2xsYXBzZSI+CiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBwdWxsLXJpZ2h0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJjaGFydHMtbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGFydHMgPGIgY2xhc3M9ImNhcmV0Ij48L2I+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9ncmFwaHMvY2xhc3MuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7Q2xhc3MgaGllcmFyY2h5IGRpYWdyYW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wZG93biIgaWQ9InJlcG9ydHMtbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXBvcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vcmVwb3J0cy9lcnJvcnMuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7RXJyb3JzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjEwNjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtNYXJrZXJzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9yZXBvcnRzL2RlcHJlY2F0ZWQuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0RlcHJlY2F0ZWQgPHNwYW4gY2xhc3M9ImxhYmVsIGxhYmVsLWluZm8gcHVsbC1yaWdodCI+MTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgPCEtLTxkaXYgY2xhc3M9ImdvX3RvX3RvcCI+LS0+CiAgICA8IS0tPGEgaHJlZj0iI19fXyIgc3R5bGU9ImNvbG9yOiBpbmhlcml0Ij5CYWNrIHRvIHRvcCYjMTYwOyYjMTYwOzxpIGNsYXNzPSJpY29uLXVwbG9hZCBpY29uLXdoaXRlIj48L2k+PC9hPi0tPgogICAgPCEtLTwvZGl2Pi0tPgo8L2Rpdj4KCjxkaXYgaWQ9Il9fXyIgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+CiAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjIgc2lkZWJhciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uIiBzdHlsZT0ibWFyZ2luLWJvdHRvbTogMCI+CiAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWdyb3VwIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWhlYWRpbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iYWNjb3JkaW9uLXRvZ2dsZSAiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNuYW1lc3BhY2UtMTg1NzQ5OTYxOSI+PC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL25hbWVzcGFjZXMvZGVmYXVsdC5odG1sIiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDMwcHg7IHBhZGRpbmctbGVmdDogMCI+XDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgaWQ9Im5hbWVzcGFjZS0xODU3NDk5NjE5IiBjbGFzcz0iYWNjb3JkaW9uLWJvZHkgY29sbGFwc2UgaW4iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWlubmVyIj4KCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGFzcyI+PGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeS5odG1sIj5mZXVfdXNlcl9xdWVyeTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGFzcyI+PGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCI+ZmV1X3VzZXJfcXVlcnlfb3B0PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5odG1sIj5mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sIj5Gcm9udEVuZFVzZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj4KICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW4xMCBvZmZzZXQyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICAgICAgICAgIDxuYXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL25hbWVzcGFjZXMvZGVmYXVsdC5odG1sIj5cPC9hPiA8aSBjbGFzcz0iaWNvbi1sZXZlbC11cCI+PC9pPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmF2PgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KCiAgICAgICAgICAgICAgICAgICAgPGgxPjxzbWFsbD5cPC9zbWFsbD5mZXVfdXNlcl9xdWVyeTwvaDE+CiAgICAgICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gaWQ9InN1bW1hcnkiPgogICAgICAgICAgICAgICAgICAgICAgICA8aDI+U3VtbWFyeTwvaDI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQgaGVhZGluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNtZXRob2RzIj5NZXRob2RzPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjcHJvcGVydGllcyI+UHJvcGVydGllczwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iI2NvbnN0YW50cyI+Q29uc3RhbnRzPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQgcHVibGljIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeS5odG1sI21ldGhvZF9fX2NvbnN0cnVjdCIgY2xhc3M9IiI+X19jb25zdHJ1Y3QoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwjbWV0aG9kX3NldF9wYWdlbGltaXQiIGNsYXNzPSIiPnNldF9wYWdlbGltaXQoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwjbWV0aG9kX2dldF9wYWdlbGltaXQiIGNsYXNzPSIiPmdldF9wYWdlbGltaXQoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwjbWV0aG9kX3NldF9vZmZzZXQiIGNsYXNzPSIiPnNldF9vZmZzZXQoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwjbWV0aG9kX2dldF9vZmZzZXQiIGNsYXNzPSIiPmdldF9vZmZzZXQoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwjbWV0aG9kX3NldF9kZWVwIiBjbGFzcz0iIj5zZXRfZGVlcCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNtZXRob2RfZ2V0X2RlZXAiIGNsYXNzPSIiPmdldF9kZWVwKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeS5odG1sI21ldGhvZF9zZXRfd2VicmVhZHkiIGNsYXNzPSIiPnNldF93ZWJyZWFkeSgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNtZXRob2RfZ2V0X3dlYnJlYWR5IiBjbGFzcz0iIj5nZXRfd2VicmVhZHkoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwjbWV0aG9kX3NldF9yZXN1bHRfdHlwZSIgY2xhc3M9IiI+c2V0X3Jlc3VsdF90eXBlKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeS5odG1sI21ldGhvZF9nZXRfcmVzdWx0X3R5cGUiIGNsYXNzPSIiPmdldF9yZXN1bHRfdHlwZSgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNtZXRob2Rfc2V0X3NvcnRieSIgY2xhc3M9IiI+c2V0X3NvcnRieSgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNtZXRob2RfZ2V0X3NvcnRieSIgY2xhc3M9IiI+Z2V0X3NvcnRieSgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNtZXRob2Rfc2V0X3NvcnRvcmRlciIgY2xhc3M9IiI+c2V0X3NvcnRvcmRlcigpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNtZXRob2RfZ2V0X3NvcnRvcmRlciIgY2xhc3M9IiI+Z2V0X3NvcnRvcmRlcigpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNtZXRob2RfYWRkX2FuZF9vcHQiIGNsYXNzPSIiPmFkZF9hbmRfb3B0KCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeS5odG1sI21ldGhvZF9hZGRfYW5kX29wdF9vYmoiIGNsYXNzPSIiPmFkZF9hbmRfb3B0X29iaigpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNtZXRob2RfY291bnRfb3B0cyIgY2xhc3M9IiI+Y291bnRfb3B0cygpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNtZXRob2RfZ2V0X29wdHMiIGNsYXNzPSIiPmdldF9vcHRzKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeS5odG1sI21ldGhvZF9leGVjdXRlIiBjbGFzcz0iIj5leGVjdXRlKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVtPk5vIHB1YmxpYyBwcm9wZXJ0aWVzIGZvdW5kPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwjY29uc3RhbnRfUkVTVUxUX1RZUEVfSUQiIGNsYXNzPSIiPlJFU1VMVF9UWVBFX0lEPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNjb25zdGFudF9SRVNVTFRfVFlQRV9MSVNUIiBjbGFzcz0iIj5SRVNVTFRfVFlQRV9MSVNUPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNjb25zdGFudF9SRVNVTFRfVFlQRV9GVUxMIiBjbGFzcz0iIj5SRVNVTFRfVFlQRV9GVUxMPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNjb25zdGFudF9SRVNVTFRfU09SVE9SREVSX0FTQyIgY2xhc3M9IiI+UkVTVUxUX1NPUlRPUkRFUl9BU0M8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeS5odG1sI2NvbnN0YW50X1JFU1VMVF9TT1JUT1JERVJfREVTQyIgY2xhc3M9IiI+UkVTVUxUX1NPUlRPUkRFUl9ERVNDPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNjb25zdGFudF9SRVNVTFRfU09SVEJZX1VTRVJOQU1FIiBjbGFzcz0iIj5SRVNVTFRfU09SVEJZX1VTRVJOQU1FPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNjb25zdGFudF9SRVNVTFRfU09SVEJZX0NSRUFURUQiIGNsYXNzPSIiPlJFU1VMVF9TT1JUQllfQ1JFQVRFRDwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwjY29uc3RhbnRfUkVTVUxUX1NPUlRCWV9FWFBJUkVTIiBjbGFzcz0iIj5SRVNVTFRfU09SVEJZX0VYUElSRVM8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIHByb3RlY3RlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlbT5ObyBwcm90ZWN0ZWQgbWV0aG9kcyBmb3VuZDwvZW0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVtPk5vIHByb3RlY3RlZCBwcm9wZXJ0aWVzIGZvdW5kPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZW0+Ti9BPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIHByaXZhdGUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZW0+Tm8gcHJpdmF0ZSBtZXRob2RzIGZvdW5kPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwjcHJvcGVydHlfX2FuZF9vcHRzIiBjbGFzcz0iIj4kX2FuZF9vcHRzPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNwcm9wZXJ0eV9fZ3JvdXBzIiBjbGFzcz0iIj4kX2dyb3VwczwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwjcHJvcGVydHlfX3BhZ2VsaW1pdCIgY2xhc3M9IiI+JF9wYWdlbGltaXQ8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeS5odG1sI3Byb3BlcnR5X19vZmZzZXQiIGNsYXNzPSIiPiRfb2Zmc2V0PC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNwcm9wZXJ0eV9fcmVzdWx0X3R5cGUiIGNsYXNzPSIiPiRfcmVzdWx0X3R5cGU8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeS5odG1sI3Byb3BlcnR5X19zb3J0YnkiIGNsYXNzPSIiPiRfc29ydGJ5PC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCNwcm9wZXJ0eV9fc29ydG9yZGVyIiBjbGFzcz0iIj4kX3NvcnRvcmRlcjwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwjcHJvcGVydHlfX2RlZXAiIGNsYXNzPSIiPiRfZGVlcDwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwjcHJvcGVydHlfX3dlYnJlYWR5IiBjbGFzcz0iIj4kX3dlYnJlYWR5PC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlbT5OL0E8L2VtPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+RmlsZTwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQ+PGEgaHJlZj0iLi4vZmlsZXMvbGliLmNsYXNzLmZldV91c2VyX3F1ZXJ5Lmh0bWwiPjxkaXYgY2xhc3M9InBhdGgtd3JhcHBlciI+bGliL2NsYXNzLmZldV91c2VyX3F1ZXJ5LnBocDwvZGl2PjwvYT48L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+UGFja2FnZTwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQ+PGRpdiBjbGFzcz0ibmFtZXNwYWNlLXdyYXBwZXIiPkZyb250RW5kVXNlcnM8L2Rpdj48L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+Q2xhc3MgaGllcmFyY2h5PC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBjbGFzcz0iaGllcmFyY2h5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYW1lc3BhY2Utd3JhcHBlciI+XGZldV91c2VyX3F1ZXJ5PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RkPgoKICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgPC9hc2lkZT4KICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRzIiBuYW1lPSJjb25zdGFudHMiPjwvYT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICAgICAgICAgIDxoMj5Db25zdGFudHM8L2gyPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPjwvYXNpZGU+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRfUkVTVUxUX1RZUEVfSUQiIG5hbWU9ImNvbnN0YW50X1JFU1VMVF9UWVBFX0lEIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGlkPSJjb25zdGFudF9SRVNVTFRfVFlQRV9JRCIgY2xhc3M9ImNvbnN0YW50Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iIj5SRVNVTFRfVFlQRV9JRDwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPlJFU1VMVF9UWVBFX0lEPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9ImNvbnN0YW50X1JFU1VMVF9UWVBFX0xJU1QiIG5hbWU9ImNvbnN0YW50X1JFU1VMVF9UWVBFX0xJU1QiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgaWQ9ImNvbnN0YW50X1JFU1VMVF9UWVBFX0xJU1QiIGNsYXNzPSJjb25zdGFudCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9IiI+UkVTVUxUX1RZUEVfTElTVDwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPlJFU1VMVF9UWVBFX0xJU1Q8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRfUkVTVUxUX1RZUEVfRlVMTCIgbmFtZT0iY29uc3RhbnRfUkVTVUxUX1RZUEVfRlVMTCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBpZD0iY29uc3RhbnRfUkVTVUxUX1RZUEVfRlVMTCIgY2xhc3M9ImNvbnN0YW50Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iIj5SRVNVTFRfVFlQRV9GVUxMPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+UkVTVUxUX1RZUEVfRlVMTDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJjb25zdGFudF9SRVNVTFRfU09SVE9SREVSX0FTQyIgbmFtZT0iY29uc3RhbnRfUkVTVUxUX1NPUlRPUkRFUl9BU0MiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgaWQ9ImNvbnN0YW50X1JFU1VMVF9TT1JUT1JERVJfQVNDIiBjbGFzcz0iY29uc3RhbnQiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSIiPlJFU1VMVF9TT1JUT1JERVJfQVNDPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+UkVTVUxUX1NPUlRPUkRFUl9BU0M8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRfUkVTVUxUX1NPUlRPUkRFUl9ERVNDIiBuYW1lPSJjb25zdGFudF9SRVNVTFRfU09SVE9SREVSX0RFU0MiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgaWQ9ImNvbnN0YW50X1JFU1VMVF9TT1JUT1JERVJfREVTQyIgY2xhc3M9ImNvbnN0YW50Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iIj5SRVNVTFRfU09SVE9SREVSX0RFU0M8L2gzPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIj5SRVNVTFRfU09SVE9SREVSX0RFU0M8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRfUkVTVUxUX1NPUlRCWV9VU0VSTkFNRSIgbmFtZT0iY29uc3RhbnRfUkVTVUxUX1NPUlRCWV9VU0VSTkFNRSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBpZD0iY29uc3RhbnRfUkVTVUxUX1NPUlRCWV9VU0VSTkFNRSIgY2xhc3M9ImNvbnN0YW50Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iIj5SRVNVTFRfU09SVEJZX1VTRVJOQU1FPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+UkVTVUxUX1NPUlRCWV9VU0VSTkFNRTwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJjb25zdGFudF9SRVNVTFRfU09SVEJZX0NSRUFURUQiIG5hbWU9ImNvbnN0YW50X1JFU1VMVF9TT1JUQllfQ1JFQVRFRCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBpZD0iY29uc3RhbnRfUkVTVUxUX1NPUlRCWV9DUkVBVEVEIiBjbGFzcz0iY29uc3RhbnQiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSIiPlJFU1VMVF9TT1JUQllfQ1JFQVRFRDwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPlJFU1VMVF9TT1JUQllfQ1JFQVRFRDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJjb25zdGFudF9SRVNVTFRfU09SVEJZX0VYUElSRVMiIG5hbWU9ImNvbnN0YW50X1JFU1VMVF9TT1JUQllfRVhQSVJFUyIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBpZD0iY29uc3RhbnRfUkVTVUxUX1NPUlRCWV9FWFBJUkVTIiBjbGFzcz0iY29uc3RhbnQiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSIiPlJFU1VMVF9TT1JUQllfRVhQSVJFUzwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPlJFU1VMVF9TT1JUQllfRVhQSVJFUzwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaWQ9InByb3BlcnRpZXMiIG5hbWU9InByb3BlcnRpZXMiPjwvYT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICAgICAgICAgIDxoMj5Qcm9wZXJ0aWVzPC9oMj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj48L2FzaWRlPgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9InByb3BlcnR5X19hbmRfb3B0cyIgbmFtZT0icHJvcGVydHlfX2FuZF9vcHRzIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJwcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InByaXZhdGUgIj4kX2FuZF9vcHRzPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+JF9hbmRfb3B0cyA6IDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5UeXBlPC9oND4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9InByb3BlcnR5X19ncm91cHMiIG5hbWU9InByb3BlcnR5X19ncm91cHMiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9InByb3BlcnR5Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHJpdmF0ZSAiPiRfZ3JvdXBzPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+JF9ncm91cHMgOiA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+VHlwZTwvaDQ+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJwcm9wZXJ0eV9fcGFnZWxpbWl0IiBuYW1lPSJwcm9wZXJ0eV9fcGFnZWxpbWl0IiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJwcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InByaXZhdGUgIj4kX3BhZ2VsaW1pdDwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPiRfcGFnZWxpbWl0IDogPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlR5cGU8L2g0PgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0icHJvcGVydHlfX29mZnNldCIgbmFtZT0icHJvcGVydHlfX29mZnNldCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0icHJvcGVydHkiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwcml2YXRlICI+JF9vZmZzZXQ8L2gzPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIj4kX29mZnNldCA6IDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5UeXBlPC9oND4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9InByb3BlcnR5X19yZXN1bHRfdHlwZSIgbmFtZT0icHJvcGVydHlfX3Jlc3VsdF90eXBlIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJwcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InByaXZhdGUgIj4kX3Jlc3VsdF90eXBlPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+JF9yZXN1bHRfdHlwZSA6IDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5UeXBlPC9oND4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9InByb3BlcnR5X19zb3J0YnkiIG5hbWU9InByb3BlcnR5X19zb3J0YnkiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9InByb3BlcnR5Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHJpdmF0ZSAiPiRfc29ydGJ5PC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+JF9zb3J0YnkgOiA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+VHlwZTwvaDQ+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJwcm9wZXJ0eV9fc29ydG9yZGVyIiBuYW1lPSJwcm9wZXJ0eV9fc29ydG9yZGVyIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJwcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InByaXZhdGUgIj4kX3NvcnRvcmRlcjwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPiRfc29ydG9yZGVyIDogPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlR5cGU8L2g0PgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0icHJvcGVydHlfX2RlZXAiIG5hbWU9InByb3BlcnR5X19kZWVwIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJwcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InByaXZhdGUgIj4kX2RlZXA8L2gzPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIj4kX2RlZXAgOiA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+VHlwZTwvaDQ+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJwcm9wZXJ0eV9fd2VicmVhZHkiIG5hbWU9InByb3BlcnR5X193ZWJyZWFkeSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0icHJvcGVydHkiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwcml2YXRlICI+JF93ZWJyZWFkeTwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPiRfd2VicmVhZHkgOiA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+VHlwZTwvaDQ+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZHMiIG5hbWU9Im1ldGhvZHMiPjwvYT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPjxoMj5NZXRob2RzPC9oMj48L2Rpdj4KICAgICAgICAgICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+PC9hc2lkZT4KICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX19fY29uc3RydWN0IiBuYW1lPSJtZXRob2RfX19jb25zdHJ1Y3QiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPl9fY29uc3RydWN0KCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5fX2NvbnN0cnVjdCgpIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2Rfc2V0X3BhZ2VsaW1pdCIgbmFtZT0ibWV0aG9kX3NldF9wYWdlbGltaXQiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPnNldF9wYWdlbGltaXQoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPnNldF9wYWdlbGltaXQoICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRwYWdlbGltaXQ8L3NwYW4+KSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHBhZ2VsaW1pdCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfZ2V0X3BhZ2VsaW1pdCIgbmFtZT0ibWV0aG9kX2dldF9wYWdlbGltaXQiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPmdldF9wYWdlbGltaXQoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPmdldF9wYWdlbGltaXQoKSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX3NldF9vZmZzZXQiIG5hbWU9Im1ldGhvZF9zZXRfb2Zmc2V0IiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5zZXRfb2Zmc2V0KCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5zZXRfb2Zmc2V0KCAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kbjwvc3Bhbj4pIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kbiA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfZ2V0X29mZnNldCIgbmFtZT0ibWV0aG9kX2dldF9vZmZzZXQiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPmdldF9vZmZzZXQoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPmdldF9vZmZzZXQoKSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX3NldF9kZWVwIiBuYW1lPSJtZXRob2Rfc2V0X2RlZXAiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPnNldF9kZWVwKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5zZXRfZGVlcCggIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGZsYWcgPSBUUlVFPC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRmbGFnIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9nZXRfZGVlcCIgbmFtZT0ibWV0aG9kX2dldF9kZWVwIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5nZXRfZGVlcCgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+Z2V0X2RlZXAoKSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX3NldF93ZWJyZWFkeSIgbmFtZT0ibWV0aG9kX3NldF93ZWJyZWFkeSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+c2V0X3dlYnJlYWR5KCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5zZXRfd2VicmVhZHkoICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRmbGFnID0gVFJVRTwvc3Bhbj4pIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZmxhZyA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfZ2V0X3dlYnJlYWR5IiBuYW1lPSJtZXRob2RfZ2V0X3dlYnJlYWR5IiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5nZXRfd2VicmVhZHkoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPmdldF93ZWJyZWFkeSgpIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2Rfc2V0X3Jlc3VsdF90eXBlIiBuYW1lPSJtZXRob2Rfc2V0X3Jlc3VsdF90eXBlIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5zZXRfcmVzdWx0X3R5cGUoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPnNldF9yZXN1bHRfdHlwZSggIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHR5cGU8L3NwYW4+KSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHR5cGUgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX2dldF9yZXN1bHRfdHlwZSIgbmFtZT0ibWV0aG9kX2dldF9yZXN1bHRfdHlwZSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+Z2V0X3Jlc3VsdF90eXBlKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5nZXRfcmVzdWx0X3R5cGUoKSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX3NldF9zb3J0YnkiIG5hbWU9Im1ldGhvZF9zZXRfc29ydGJ5IiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5zZXRfc29ydGJ5KCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5zZXRfc29ydGJ5KCAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdmFsPC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR2YWwgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX2dldF9zb3J0YnkiIG5hbWU9Im1ldGhvZF9nZXRfc29ydGJ5IiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5nZXRfc29ydGJ5KCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5nZXRfc29ydGJ5KCkgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9zZXRfc29ydG9yZGVyIiBuYW1lPSJtZXRob2Rfc2V0X3NvcnRvcmRlciIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+c2V0X3NvcnRvcmRlcigpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+c2V0X3NvcnRvcmRlciggIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHZhbDwvc3Bhbj4pIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdmFsIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9nZXRfc29ydG9yZGVyIiBuYW1lPSJtZXRob2RfZ2V0X3NvcnRvcmRlciIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+Z2V0X3NvcnRvcmRlcigpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+Z2V0X3NvcnRvcmRlcigpIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfYWRkX2FuZF9vcHQiIG5hbWU9Im1ldGhvZF9hZGRfYW5kX29wdCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+YWRkX2FuZF9vcHQoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPmFkZF9hbmRfb3B0KCAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdHlwZTwvc3Bhbj4sICAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdmFsdWUgPSBudWxsPC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR0eXBlIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdmFsdWUgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX2FkZF9hbmRfb3B0X29iaiIgbmFtZT0ibWV0aG9kX2FkZF9hbmRfb3B0X29iaiIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+YWRkX2FuZF9vcHRfb2JqKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5hZGRfYW5kX29wdF9vYmooXGZldV91c2VyX3F1ZXJ5X29wdCAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kb3B0PC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfb3B0Lmh0bWwiPlxmZXVfdXNlcl9xdWVyeV9vcHQ8L2E+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JG9wdCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfY291bnRfb3B0cyIgbmFtZT0ibWV0aG9kX2NvdW50X29wdHMiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPmNvdW50X29wdHMoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPmNvdW50X29wdHMoKSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX2dldF9vcHRzIiBuYW1lPSJtZXRob2RfZ2V0X29wdHMiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPmdldF9vcHRzKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5nZXRfb3B0cygpIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfZXhlY3V0ZSIgbmFtZT0ibWV0aG9kX2V4ZWN1dGUiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPmV4ZWN1dGUoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPmV4ZWN1dGUoKSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgPC9zZWN0aW9uPgoKICAgIDxkaXYgaWQ9InNvdXJjZS12aWV3IiBjbGFzcz0ibW9kYWwgaGlkZSBmYWRlIiB0YWJpbmRleD0iLTEiIHJvbGU9ImRpYWxvZyIgYXJpYS1sYWJlbGxlZGJ5PSJzb3VyY2Utdmlldy1sYWJlbCIgYXJpYS1oaWRkZW49InRydWUiPgogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+CiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iY2xvc2UiIGRhdGEtZGlzbWlzcz0ibW9kYWwiIGFyaWEtaGlkZGVuPSJ0cnVlIj7DlzwvYnV0dG9uPgogICAgICAgICAgICA8aDMgaWQ9InNvdXJjZS12aWV3LWxhYmVsIj5jbGFzcy5mZXVfdXNlcl9xdWVyeS5waHA8L2gzPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPgogICAgICAgICAgICA8cHJlIGRhdGEtc3JjPSIuLi9maWxlcy9saWIvY2xhc3MuZmV1X3VzZXJfcXVlcnkucGhwLnR4dCIgY2xhc3M9Imxhbmd1YWdlLXBocCBsaW5lLW51bWJlcnMiPjwvcHJlPgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgPGZvb3RlciBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDIiPgogICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuMTAgb2Zmc2V0MSI+CiAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCBmb290ZXItc2VjdGlvbnMiPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1iYXItY2hhcnQiPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9ncmFwaHMvY2xhc3MuaHRtbCI+Q2xhc3MgSGllcmFyY2h5IERpYWdyYW08L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tcHVzaHBpbiI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPkVycm9yczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vcmVwb3J0cy9tYXJrZXJzLmh0bWwiPk1hcmtlcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDEiPgogICAgICAgICAgICAgICAgICAgIDxociAvPgogICAgICAgICAgICAgICAgICAgIERvY3VtZW50YXRpb24gaXMgcG93ZXJlZCBieSA8YSBocmVmPSJodHRwOi8vd3d3LnBocGRvYy5vcmcvIj5waHBEb2N1bWVudG9yIDwvYT4gYW5kIGF1dGhvcmVkCiAgICAgICAgICAgICAgICAgICAgb24gRmVicnVhcnkgMTJ0aCwgMjAxNyBhdCAwOTo0NS4KICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgIDwvc2VjdGlvbj4KICAgIDwvZm9vdGVyPgo8L2Rpdj4KCjwvYm9keT4KPC9odG1sPgo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/classes/feu_user_query_opt.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT5Gcm9udEVuZFVzZXJzIDIuMy4xPC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImF1dGhvciIgY29udGVudD0iIi8+CiAgICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iIi8+CgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2Jvb3RzdHJhcC1jb21iaW5lZC5uby1pY29ucy5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL3ByaXNtLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICA8bGluayBocmVmPSIuLi9jc3MvdGVtcGxhdGUuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIAogICAgPCEtLVtpZiBsdCBJRSA5XT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9odG1sNS5qcyI+PC9zY3JpcHQ+CiAgICA8IVtlbmRpZl0tLT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9qcXVlcnktMS4xMS4wLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvdWkvMS4xMC40L2pxdWVyeS11aS5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS5zbW9vdGgtc2Nyb2xsLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9wcmlzbS5taW4uanMiPjwvc2NyaXB0PgogICAgPCEtLSBUT0RPOiBBZGQgaHR0cDovL2pzY3JvbGxwYW5lLmtlbHZpbmx1Y2suY29tLyB0byBzdHlsZSB0aGUgc2Nyb2xsYmFycyBmb3IgYnJvd3NlcnMgbm90IHVzaW5nIHdlYmtpdC0tPgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgZnVuY3Rpb24gbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCkgewogICAgICAgIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3ByZVtkYXRhLXNyY10nKSkuZm9yRWFjaChmdW5jdGlvbiAocHJlKSB7CiAgICAgICAgICAgIHZhciBzcmMgPSBwcmUuZ2V0QXR0cmlidXRlKCdkYXRhLXNyYycpOwogICAgICAgICAgICB2YXIgZXh0ZW5zaW9uID0gKHNyYy5tYXRjaCgvXC4oXHcrKSQvKSB8fCBbLCAnJ10pWzFdOwogICAgICAgICAgICB2YXIgbGFuZ3VhZ2UgPSAncGhwJzsKCiAgICAgICAgICAgIHZhciBjb2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY29kZScpOwogICAgICAgICAgICBjb2RlLmNsYXNzTmFtZSA9ICdsYW5ndWFnZS0nICsgbGFuZ3VhZ2U7CgogICAgICAgICAgICBwcmUudGV4dENvbnRlbnQgPSAnJzsKCiAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAnTG9hZGluZ+KApic7CgogICAgICAgICAgICBwcmUuYXBwZW5kQ2hpbGQoY29kZSk7CgogICAgICAgICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CgogICAgICAgICAgICB4aHIub3BlbignR0VUJywgc3JjLCB0cnVlKTsKCiAgICAgICAgICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT0gNCkgewoKICAgICAgICAgICAgICAgICAgICBpZiAoeGhyLnN0YXR1cyA8IDQwMCAmJiB4aHIucmVzcG9uc2VUZXh0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSB4aHIucmVzcG9uc2VUZXh0OwoKICAgICAgICAgICAgICAgICAgICAgICAgUHJpc20uaGlnaGxpZ2h0RWxlbWVudChjb2RlKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoeGhyLnN0YXR1cyA+PSA0MDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9ICfinJYgRXJyb3IgJyArIHhoci5zdGF0dXMgKyAnIHdoaWxlIGZldGNoaW5nIGZpbGU6ICcgKyB4aHIuc3RhdHVzVGV4dDsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAn4pyWIEVycm9yOiBGaWxlIGRvZXMgbm90IGV4aXN0IG9yIGlzIGVtcHR5JzsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH07CgogICAgICAgICAgICB4aHIuc2VuZChudWxsKTsKICAgICAgICB9KTsKICAgIH0KCiAgICAkKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpewogICAgICAgIGxvYWRFeHRlcm5hbENvZGVTbmlwcGV0cygpOwogICAgfSk7CiAgICAkKCcjc291cmNlLXZpZXcnKS5vbignc2hvd24nLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCk7CiAgICB9KQo8L3NjcmlwdD4KCiAgICA8bGluayByZWw9InNob3J0Y3V0IGljb24iIGhyZWY9Ii4uL2ltYWdlcy9mYXZpY29uLmljbyIvPgogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi5wbmciLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjcyeDcyIiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi03Mng3Mi5wbmciLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjExNHgxMTQiIGhyZWY9Ii4uL2ltYWdlcy9hcHBsZS10b3VjaC1pY29uLTExNHgxMTQucG5nIi8+CjwvaGVhZD4KPGJvZHk+Cgo8ZGl2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWZpeGVkLXRvcCI+CiAgICA8ZGl2IGNsYXNzPSJuYXZiYXItaW5uZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxhIGNsYXNzPSJidG4gYnRuLW5hdmJhciIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iLm5hdi1jb2xsYXBzZSI+CiAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1lbGxpcHNpcy12ZXJ0aWNhbCI+PC9pPgogICAgICAgICAgICA8L2E+CiAgICAgICAgICAgIDxhIGNsYXNzPSJicmFuZCIgaHJlZj0iLi4vaW5kZXguaHRtbCI+RnJvbnRFbmRVc2VycyAyLjMuMTwvYT4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1jb2xsYXBzZSI+CiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBwdWxsLXJpZ2h0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJjaGFydHMtbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGFydHMgPGIgY2xhc3M9ImNhcmV0Ij48L2I+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9ncmFwaHMvY2xhc3MuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7Q2xhc3MgaGllcmFyY2h5IGRpYWdyYW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wZG93biIgaWQ9InJlcG9ydHMtbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXBvcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vcmVwb3J0cy9lcnJvcnMuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7RXJyb3JzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjEwNjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtNYXJrZXJzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9yZXBvcnRzL2RlcHJlY2F0ZWQuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0RlcHJlY2F0ZWQgPHNwYW4gY2xhc3M9ImxhYmVsIGxhYmVsLWluZm8gcHVsbC1yaWdodCI+MTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgPCEtLTxkaXYgY2xhc3M9ImdvX3RvX3RvcCI+LS0+CiAgICA8IS0tPGEgaHJlZj0iI19fXyIgc3R5bGU9ImNvbG9yOiBpbmhlcml0Ij5CYWNrIHRvIHRvcCYjMTYwOyYjMTYwOzxpIGNsYXNzPSJpY29uLXVwbG9hZCBpY29uLXdoaXRlIj48L2k+PC9hPi0tPgogICAgPCEtLTwvZGl2Pi0tPgo8L2Rpdj4KCjxkaXYgaWQ9Il9fXyIgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+CiAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjIgc2lkZWJhciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uIiBzdHlsZT0ibWFyZ2luLWJvdHRvbTogMCI+CiAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWdyb3VwIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWhlYWRpbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iYWNjb3JkaW9uLXRvZ2dsZSAiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNuYW1lc3BhY2UtOTY3MzYyNTYiPjwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9uYW1lc3BhY2VzL2RlZmF1bHQuaHRtbCIgc3R5bGU9Im1hcmdpbi1sZWZ0OiAzMHB4OyBwYWRkaW5nLWxlZnQ6IDAiPlw8L2E+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGlkPSJuYW1lc3BhY2UtOTY3MzYyNTYiIGNsYXNzPSJhY2NvcmRpb24tYm9keSBjb2xsYXBzZSBpbiI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhY2NvcmRpb24taW5uZXIiPgoKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwiPmZldV91c2VyX3F1ZXJ5PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X29wdC5odG1sIj5mZXVfdXNlcl9xdWVyeV9vcHQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0Lmh0bWwiPmZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldDwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGFzcyI+PGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwiPkZyb250RW5kVXNlcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgICAgIDwvZGl2PgogICAgPC9zZWN0aW9uPgogICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjEwIG9mZnNldDIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgICAgICAgICAgPG5hdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vbmFtZXNwYWNlcy9kZWZhdWx0Lmh0bWwiPlw8L2E+IDxpIGNsYXNzPSJpY29uLWxldmVsLXVwIj48L2k+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uYXY+CiAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIj48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgoKICAgICAgICAgICAgICAgICAgICA8aDE+PHNtYWxsPlw8L3NtYWxsPmZldV91c2VyX3F1ZXJ5X29wdDwvaDE+CiAgICAgICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gaWQ9InN1bW1hcnkiPgogICAgICAgICAgICAgICAgICAgICAgICA8aDI+U3VtbWFyeTwvaDI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQgaGVhZGluZyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNtZXRob2RzIj5NZXRob2RzPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjcHJvcGVydGllcyI+UHJvcGVydGllczwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iI2NvbnN0YW50cyI+Q29uc3RhbnRzPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQgcHVibGljIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNtZXRob2RfX19jb25zdHJ1Y3QiIGNsYXNzPSIiPl9fY29uc3RydWN0KCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNtZXRob2RfZ2V0X3R5cGUiIGNsYXNzPSIiPmdldF90eXBlKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNtZXRob2RfZ2V0X2V4cHIiIGNsYXNzPSIiPmdldF9leHByKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNtZXRob2RfZ2V0X29wdCIgY2xhc3M9IiI+Z2V0X29wdCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlbT5ObyBwdWJsaWMgcHJvcGVydGllcyBmb3VuZDwvZW0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNjb25zdGFudF9NQVRDSF9VU0VSTkFNRSIgY2xhc3M9IiI+TUFUQ0hfVVNFUk5BTUU8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNjb25zdGFudF9NQVRDSF9VU0VSTkFNRV9SRSIgY2xhc3M9IiI+TUFUQ0hfVVNFUk5BTUVfUkU8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNjb25zdGFudF9NQVRDSF9QQVNTV09SRCIgY2xhc3M9IiI+TUFUQ0hfUEFTU1dPUkQ8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNjb25zdGFudF9NQVRDSF9FWFBJUkVTX0xUIiBjbGFzcz0iIj5NQVRDSF9FWFBJUkVTX0xUPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfb3B0Lmh0bWwjY29uc3RhbnRfTUFUQ0hfTk9URVhQSVJFRCIgY2xhc3M9IiI+TUFUQ0hfTk9URVhQSVJFRDwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X29wdC5odG1sI2NvbnN0YW50X01BVENIX0dST1VQIiBjbGFzcz0iIj5NQVRDSF9HUk9VUDwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X29wdC5odG1sI2NvbnN0YW50X01BVENIX0dST1VQSUQiIGNsYXNzPSIiPk1BVENIX0dST1VQSUQ8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNjb25zdGFudF9NQVRDSF9QUk9QRVJUWSIgY2xhc3M9IiI+TUFUQ0hfUFJPUEVSVFk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNjb25zdGFudF9NQVRDSF9QUk9QRVJUWV9SRSIgY2xhc3M9IiI+TUFUQ0hfUFJPUEVSVFlfUkU8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNjb25zdGFudF9NQVRDSF9VU0VSTElTVCIgY2xhc3M9IiI+TUFUQ0hfVVNFUkxJU1Q8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNjb25zdGFudF9NQVRDSF9VU0VSTkFNRUxJU1QiIGNsYXNzPSIiPk1BVENIX1VTRVJOQU1FTElTVDwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X29wdC5odG1sI2NvbnN0YW50X01BVENIX0xPR0dFRElOIiBjbGFzcz0iIj5NQVRDSF9MT0dHRURJTjwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X29wdC5odG1sI2NvbnN0YW50X01BVENIX0NSRUFURURfR0UiIGNsYXNzPSIiPk1BVENIX0NSRUFURURfR0U8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNjb25zdGFudF9NQVRDSF9DUkVBVEVEX0xUIiBjbGFzcz0iIj5NQVRDSF9DUkVBVEVEX0xUPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCBwcm90ZWN0ZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZW0+Tm8gcHJvdGVjdGVkIG1ldGhvZHMgZm91bmQ8L2VtPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlbT5ObyBwcm90ZWN0ZWQgcHJvcGVydGllcyBmb3VuZDwvZW0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVtPk4vQTwvZW0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCBwcml2YXRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVtPk5vIHByaXZhdGUgbWV0aG9kcyBmb3VuZDwvZW0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCNwcm9wZXJ0eV9fdHlwZSIgY2xhc3M9IiI+JF90eXBlPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfb3B0Lmh0bWwjcHJvcGVydHlfX2V4cHIiIGNsYXNzPSIiPiRfZXhwcjwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X29wdC5odG1sI3Byb3BlcnR5X19vcHQiIGNsYXNzPSIiPiRfb3B0PC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlbT5OL0E8L2VtPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+RmlsZTwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQ+PGEgaHJlZj0iLi4vZmlsZXMvbGliLmNsYXNzLmZldV91c2VyX3F1ZXJ5Lmh0bWwiPjxkaXYgY2xhc3M9InBhdGgtd3JhcHBlciI+bGliL2NsYXNzLmZldV91c2VyX3F1ZXJ5LnBocDwvZGl2PjwvYT48L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+UGFja2FnZTwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQ+PGRpdiBjbGFzcz0ibmFtZXNwYWNlLXdyYXBwZXIiPkZyb250RW5kVXNlcnM8L2Rpdj48L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+Q2xhc3MgaGllcmFyY2h5PC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBjbGFzcz0iaGllcmFyY2h5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYW1lc3BhY2Utd3JhcHBlciI+XGZldV91c2VyX3F1ZXJ5X29wdDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZD4KCiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIDwvYXNpZGU+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaWQ9ImNvbnN0YW50cyIgbmFtZT0iY29uc3RhbnRzIj48L2E+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgICAgICAgICA8aDI+Q29uc3RhbnRzPC9oMj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj48L2FzaWRlPgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9ImNvbnN0YW50X01BVENIX1VTRVJOQU1FIiBuYW1lPSJjb25zdGFudF9NQVRDSF9VU0VSTkFNRSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBpZD0iY29uc3RhbnRfTUFUQ0hfVVNFUk5BTUUiIGNsYXNzPSJjb25zdGFudCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9IiI+TUFUQ0hfVVNFUk5BTUU8L2gzPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIj5NQVRDSF9VU0VSTkFNRTwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJjb25zdGFudF9NQVRDSF9VU0VSTkFNRV9SRSIgbmFtZT0iY29uc3RhbnRfTUFUQ0hfVVNFUk5BTUVfUkUiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgaWQ9ImNvbnN0YW50X01BVENIX1VTRVJOQU1FX1JFIiBjbGFzcz0iY29uc3RhbnQiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSIiPk1BVENIX1VTRVJOQU1FX1JFPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+TUFUQ0hfVVNFUk5BTUVfUkU8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRfTUFUQ0hfUEFTU1dPUkQiIG5hbWU9ImNvbnN0YW50X01BVENIX1BBU1NXT1JEIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGlkPSJjb25zdGFudF9NQVRDSF9QQVNTV09SRCIgY2xhc3M9ImNvbnN0YW50Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iIj5NQVRDSF9QQVNTV09SRDwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPk1BVENIX1BBU1NXT1JEPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9ImNvbnN0YW50X01BVENIX0VYUElSRVNfTFQiIG5hbWU9ImNvbnN0YW50X01BVENIX0VYUElSRVNfTFQiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgaWQ9ImNvbnN0YW50X01BVENIX0VYUElSRVNfTFQiIGNsYXNzPSJjb25zdGFudCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9IiI+TUFUQ0hfRVhQSVJFU19MVDwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPk1BVENIX0VYUElSRVNfTFQ8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRfTUFUQ0hfTk9URVhQSVJFRCIgbmFtZT0iY29uc3RhbnRfTUFUQ0hfTk9URVhQSVJFRCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBpZD0iY29uc3RhbnRfTUFUQ0hfTk9URVhQSVJFRCIgY2xhc3M9ImNvbnN0YW50Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iIj5NQVRDSF9OT1RFWFBJUkVEPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+TUFUQ0hfTk9URVhQSVJFRDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJjb25zdGFudF9NQVRDSF9HUk9VUCIgbmFtZT0iY29uc3RhbnRfTUFUQ0hfR1JPVVAiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgaWQ9ImNvbnN0YW50X01BVENIX0dST1VQIiBjbGFzcz0iY29uc3RhbnQiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSIiPk1BVENIX0dST1VQPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+TUFUQ0hfR1JPVVA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRfTUFUQ0hfR1JPVVBJRCIgbmFtZT0iY29uc3RhbnRfTUFUQ0hfR1JPVVBJRCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBpZD0iY29uc3RhbnRfTUFUQ0hfR1JPVVBJRCIgY2xhc3M9ImNvbnN0YW50Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iIj5NQVRDSF9HUk9VUElEPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+TUFUQ0hfR1JPVVBJRDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJjb25zdGFudF9NQVRDSF9QUk9QRVJUWSIgbmFtZT0iY29uc3RhbnRfTUFUQ0hfUFJPUEVSVFkiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgaWQ9ImNvbnN0YW50X01BVENIX1BST1BFUlRZIiBjbGFzcz0iY29uc3RhbnQiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSIiPk1BVENIX1BST1BFUlRZPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+TUFUQ0hfUFJPUEVSVFk8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRfTUFUQ0hfUFJPUEVSVFlfUkUiIG5hbWU9ImNvbnN0YW50X01BVENIX1BST1BFUlRZX1JFIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGlkPSJjb25zdGFudF9NQVRDSF9QUk9QRVJUWV9SRSIgY2xhc3M9ImNvbnN0YW50Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iIj5NQVRDSF9QUk9QRVJUWV9SRTwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPk1BVENIX1BST1BFUlRZX1JFPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9ImNvbnN0YW50X01BVENIX1VTRVJMSVNUIiBuYW1lPSJjb25zdGFudF9NQVRDSF9VU0VSTElTVCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBpZD0iY29uc3RhbnRfTUFUQ0hfVVNFUkxJU1QiIGNsYXNzPSJjb25zdGFudCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9IiI+TUFUQ0hfVVNFUkxJU1Q8L2gzPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIj5NQVRDSF9VU0VSTElTVDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJjb25zdGFudF9NQVRDSF9VU0VSTkFNRUxJU1QiIG5hbWU9ImNvbnN0YW50X01BVENIX1VTRVJOQU1FTElTVCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBpZD0iY29uc3RhbnRfTUFUQ0hfVVNFUk5BTUVMSVNUIiBjbGFzcz0iY29uc3RhbnQiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSIiPk1BVENIX1VTRVJOQU1FTElTVDwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPk1BVENIX1VTRVJOQU1FTElTVDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJjb25zdGFudF9NQVRDSF9MT0dHRURJTiIgbmFtZT0iY29uc3RhbnRfTUFUQ0hfTE9HR0VESU4iIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgaWQ9ImNvbnN0YW50X01BVENIX0xPR0dFRElOIiBjbGFzcz0iY29uc3RhbnQiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSIiPk1BVENIX0xPR0dFRElOPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+TUFUQ0hfTE9HR0VESU48L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRfTUFUQ0hfQ1JFQVRFRF9HRSIgbmFtZT0iY29uc3RhbnRfTUFUQ0hfQ1JFQVRFRF9HRSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBpZD0iY29uc3RhbnRfTUFUQ0hfQ1JFQVRFRF9HRSIgY2xhc3M9ImNvbnN0YW50Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iIj5NQVRDSF9DUkVBVEVEX0dFPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+TUFUQ0hfQ1JFQVRFRF9HRTwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJjb25zdGFudF9NQVRDSF9DUkVBVEVEX0xUIiBuYW1lPSJjb25zdGFudF9NQVRDSF9DUkVBVEVEX0xUIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGlkPSJjb25zdGFudF9NQVRDSF9DUkVBVEVEX0xUIiBjbGFzcz0iY29uc3RhbnQiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSIiPk1BVENIX0NSRUFURURfTFQ8L2gzPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIj5NQVRDSF9DUkVBVEVEX0xUPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBpZD0icHJvcGVydGllcyIgbmFtZT0icHJvcGVydGllcyI+PC9hPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgICAgICAgICAgPGgyPlByb3BlcnRpZXM8L2gyPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPjwvYXNpZGU+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0icHJvcGVydHlfX3R5cGUiIG5hbWU9InByb3BlcnR5X190eXBlIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJwcm9wZXJ0eSI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InByaXZhdGUgIj4kX3R5cGU8L2gzPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIj4kX3R5cGUgOiA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+VHlwZTwvaDQ+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJwcm9wZXJ0eV9fZXhwciIgbmFtZT0icHJvcGVydHlfX2V4cHIiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9InByb3BlcnR5Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHJpdmF0ZSAiPiRfZXhwcjwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPiRfZXhwciA6IDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5UeXBlPC9oND4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9InByb3BlcnR5X19vcHQiIG5hbWU9InByb3BlcnR5X19vcHQiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9InByb3BlcnR5Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHJpdmF0ZSAiPiRfb3B0PC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+JF9vcHQgOiA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+VHlwZTwvaDQ+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZHMiIG5hbWU9Im1ldGhvZHMiPjwvYT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPjxoMj5NZXRob2RzPC9oMj48L2Rpdj4KICAgICAgICAgICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+PC9hc2lkZT4KICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX19fY29uc3RydWN0IiBuYW1lPSJtZXRob2RfX19jb25zdHJ1Y3QiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPl9fY29uc3RydWN0KCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5fX2NvbnN0cnVjdCggIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHR5cGU8L3NwYW4+LCAgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGV4cHIgPSBudWxsPC9zcGFuPiwgICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRvcHQgPSBudWxsPC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR0eXBlIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZXhwciA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JG9wdCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfZ2V0X3R5cGUiIG5hbWU9Im1ldGhvZF9nZXRfdHlwZSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+Z2V0X3R5cGUoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPmdldF90eXBlKCkgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9nZXRfZXhwciIgbmFtZT0ibWV0aG9kX2dldF9leHByIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5nZXRfZXhwcigpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+Z2V0X2V4cHIoKSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX2dldF9vcHQiIG5hbWU9Im1ldGhvZF9nZXRfb3B0IiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5nZXRfb3B0KCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5nZXRfb3B0KCkgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj4KCiAgICA8ZGl2IGlkPSJzb3VyY2UtdmlldyIgY2xhc3M9Im1vZGFsIGhpZGUgZmFkZSIgdGFiaW5kZXg9Ii0xIiByb2xlPSJkaWFsb2ciIGFyaWEtbGFiZWxsZWRieT0ic291cmNlLXZpZXctbGFiZWwiIGFyaWEtaGlkZGVuPSJ0cnVlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPgogICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImNsb3NlIiBkYXRhLWRpc21pc3M9Im1vZGFsIiBhcmlhLWhpZGRlbj0idHJ1ZSI+w5c8L2J1dHRvbj4KICAgICAgICAgICAgPGgzIGlkPSJzb3VyY2Utdmlldy1sYWJlbCI+Y2xhc3MuZmV1X3VzZXJfcXVlcnkucGhwPC9oMz4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij4KICAgICAgICAgICAgPHByZSBkYXRhLXNyYz0iLi4vZmlsZXMvbGliL2NsYXNzLmZldV91c2VyX3F1ZXJ5LnBocC50eHQiIGNsYXNzPSJsYW5ndWFnZS1waHAgbGluZS1udW1iZXJzIj48L3ByZT4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgIDxmb290ZXIgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQyIj4KICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDEiPgogICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQgZm9vdGVyLXNlY3Rpb25zIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYmFyLWNoYXJ0Ij48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPkNsYXNzIEhpZXJhcmNoeSBEaWFncmFtPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLXB1c2hwaW4iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9yZXBvcnRzL2Vycm9ycy5odG1sIj5FcnJvcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj5NYXJrZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQxIj4KICAgICAgICAgICAgICAgICAgICA8aHIgLz4KICAgICAgICAgICAgICAgICAgICBEb2N1bWVudGF0aW9uIGlzIHBvd2VyZWQgYnkgPGEgaHJlZj0iaHR0cDovL3d3dy5waHBkb2Mub3JnLyI+cGhwRG9jdW1lbnRvciA8L2E+IGFuZCBhdXRob3JlZAogICAgICAgICAgICAgICAgICAgIG9uIEZlYnJ1YXJ5IDEydGgsIDIwMTcgYXQgMDk6NDUuCiAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICA8L3NlY3Rpb24+CiAgICA8L2Zvb3Rlcj4KPC9kaXY+Cgo8L2JvZHk+CjwvaHRtbD4K]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/classes/feu_user_query_resultset.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT5Gcm9udEVuZFVzZXJzIDIuMy4xPC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImF1dGhvciIgY29udGVudD0iIi8+CiAgICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iIi8+CgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2Jvb3RzdHJhcC1jb21iaW5lZC5uby1pY29ucy5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL3ByaXNtLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICA8bGluayBocmVmPSIuLi9jc3MvdGVtcGxhdGUuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIAogICAgPCEtLVtpZiBsdCBJRSA5XT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9odG1sNS5qcyI+PC9zY3JpcHQ+CiAgICA8IVtlbmRpZl0tLT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9qcXVlcnktMS4xMS4wLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvdWkvMS4xMC40L2pxdWVyeS11aS5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS5zbW9vdGgtc2Nyb2xsLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9wcmlzbS5taW4uanMiPjwvc2NyaXB0PgogICAgPCEtLSBUT0RPOiBBZGQgaHR0cDovL2pzY3JvbGxwYW5lLmtlbHZpbmx1Y2suY29tLyB0byBzdHlsZSB0aGUgc2Nyb2xsYmFycyBmb3IgYnJvd3NlcnMgbm90IHVzaW5nIHdlYmtpdC0tPgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgZnVuY3Rpb24gbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCkgewogICAgICAgIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3ByZVtkYXRhLXNyY10nKSkuZm9yRWFjaChmdW5jdGlvbiAocHJlKSB7CiAgICAgICAgICAgIHZhciBzcmMgPSBwcmUuZ2V0QXR0cmlidXRlKCdkYXRhLXNyYycpOwogICAgICAgICAgICB2YXIgZXh0ZW5zaW9uID0gKHNyYy5tYXRjaCgvXC4oXHcrKSQvKSB8fCBbLCAnJ10pWzFdOwogICAgICAgICAgICB2YXIgbGFuZ3VhZ2UgPSAncGhwJzsKCiAgICAgICAgICAgIHZhciBjb2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY29kZScpOwogICAgICAgICAgICBjb2RlLmNsYXNzTmFtZSA9ICdsYW5ndWFnZS0nICsgbGFuZ3VhZ2U7CgogICAgICAgICAgICBwcmUudGV4dENvbnRlbnQgPSAnJzsKCiAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAnTG9hZGluZ+KApic7CgogICAgICAgICAgICBwcmUuYXBwZW5kQ2hpbGQoY29kZSk7CgogICAgICAgICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CgogICAgICAgICAgICB4aHIub3BlbignR0VUJywgc3JjLCB0cnVlKTsKCiAgICAgICAgICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT0gNCkgewoKICAgICAgICAgICAgICAgICAgICBpZiAoeGhyLnN0YXR1cyA8IDQwMCAmJiB4aHIucmVzcG9uc2VUZXh0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSB4aHIucmVzcG9uc2VUZXh0OwoKICAgICAgICAgICAgICAgICAgICAgICAgUHJpc20uaGlnaGxpZ2h0RWxlbWVudChjb2RlKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoeGhyLnN0YXR1cyA+PSA0MDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9ICfinJYgRXJyb3IgJyArIHhoci5zdGF0dXMgKyAnIHdoaWxlIGZldGNoaW5nIGZpbGU6ICcgKyB4aHIuc3RhdHVzVGV4dDsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAn4pyWIEVycm9yOiBGaWxlIGRvZXMgbm90IGV4aXN0IG9yIGlzIGVtcHR5JzsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH07CgogICAgICAgICAgICB4aHIuc2VuZChudWxsKTsKICAgICAgICB9KTsKICAgIH0KCiAgICAkKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpewogICAgICAgIGxvYWRFeHRlcm5hbENvZGVTbmlwcGV0cygpOwogICAgfSk7CiAgICAkKCcjc291cmNlLXZpZXcnKS5vbignc2hvd24nLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCk7CiAgICB9KQo8L3NjcmlwdD4KCiAgICA8bGluayByZWw9InNob3J0Y3V0IGljb24iIGhyZWY9Ii4uL2ltYWdlcy9mYXZpY29uLmljbyIvPgogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi5wbmciLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjcyeDcyIiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi03Mng3Mi5wbmciLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjExNHgxMTQiIGhyZWY9Ii4uL2ltYWdlcy9hcHBsZS10b3VjaC1pY29uLTExNHgxMTQucG5nIi8+CjwvaGVhZD4KPGJvZHk+Cgo8ZGl2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWZpeGVkLXRvcCI+CiAgICA8ZGl2IGNsYXNzPSJuYXZiYXItaW5uZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxhIGNsYXNzPSJidG4gYnRuLW5hdmJhciIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iLm5hdi1jb2xsYXBzZSI+CiAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1lbGxpcHNpcy12ZXJ0aWNhbCI+PC9pPgogICAgICAgICAgICA8L2E+CiAgICAgICAgICAgIDxhIGNsYXNzPSJicmFuZCIgaHJlZj0iLi4vaW5kZXguaHRtbCI+RnJvbnRFbmRVc2VycyAyLjMuMTwvYT4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1jb2xsYXBzZSI+CiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBwdWxsLXJpZ2h0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJjaGFydHMtbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGFydHMgPGIgY2xhc3M9ImNhcmV0Ij48L2I+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9ncmFwaHMvY2xhc3MuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7Q2xhc3MgaGllcmFyY2h5IGRpYWdyYW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wZG93biIgaWQ9InJlcG9ydHMtbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXBvcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vcmVwb3J0cy9lcnJvcnMuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7RXJyb3JzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjEwNjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtNYXJrZXJzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9yZXBvcnRzL2RlcHJlY2F0ZWQuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0RlcHJlY2F0ZWQgPHNwYW4gY2xhc3M9ImxhYmVsIGxhYmVsLWluZm8gcHVsbC1yaWdodCI+MTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgPCEtLTxkaXYgY2xhc3M9ImdvX3RvX3RvcCI+LS0+CiAgICA8IS0tPGEgaHJlZj0iI19fXyIgc3R5bGU9ImNvbG9yOiBpbmhlcml0Ij5CYWNrIHRvIHRvcCYjMTYwOyYjMTYwOzxpIGNsYXNzPSJpY29uLXVwbG9hZCBpY29uLXdoaXRlIj48L2k+PC9hPi0tPgogICAgPCEtLTwvZGl2Pi0tPgo8L2Rpdj4KCjxkaXYgaWQ9Il9fXyIgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+CiAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjIgc2lkZWJhciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uIiBzdHlsZT0ibWFyZ2luLWJvdHRvbTogMCI+CiAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWdyb3VwIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWhlYWRpbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iYWNjb3JkaW9uLXRvZ2dsZSAiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNuYW1lc3BhY2UtOTY1MTQ3MTI4Ij48L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vbmFtZXNwYWNlcy9kZWZhdWx0Lmh0bWwiIHN0eWxlPSJtYXJnaW4tbGVmdDogMzBweDsgcGFkZGluZy1sZWZ0OiAwIj5cPC9hPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPGRpdiBpZD0ibmFtZXNwYWNlLTk2NTE0NzEyOCIgY2xhc3M9ImFjY29yZGlvbi1ib2R5IGNvbGxhcHNlIGluIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1pbm5lciI+CgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCI+ZmV1X3VzZXJfcXVlcnk8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfb3B0Lmh0bWwiPmZldV91c2VyX3F1ZXJ5X29wdDwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGFzcyI+PGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQuaHRtbCI+ZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCI+RnJvbnRFbmRVc2VyczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CiAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuMTAgb2Zmc2V0MiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgICAgICAgICA8bmF2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9uYW1lc3BhY2VzL2RlZmF1bHQuaHRtbCI+XDwvYT4gPGkgY2xhc3M9Imljb24tbGV2ZWwtdXAiPjwvaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25hdj4KICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CgogICAgICAgICAgICAgICAgICAgIDxoMT48c21hbGw+XDwvc21hbGw+ZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0PC9oMT4KICAgICAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBpZD0ic3VtbWFyeSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxoMj5TdW1tYXJ5PC9oMj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCBoZWFkaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iI21ldGhvZHMiPk1ldGhvZHM8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNwcm9wZXJ0aWVzIj5Qcm9wZXJ0aWVzPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjY29uc3RhbnRzIj5Db25zdGFudHM8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCBwdWJsaWMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5odG1sI21ldGhvZF9fX2NvbnN0cnVjdCIgY2xhc3M9IiI+X19jb25zdHJ1Y3QoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5odG1sI21ldGhvZF9SZWNvcmRDb3VudCIgY2xhc3M9IiI+UmVjb3JkQ291bnQoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5odG1sI21ldGhvZF9Nb3ZlTmV4dCIgY2xhc3M9IiI+TW92ZU5leHQoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5odG1sI21ldGhvZF9Nb3ZlRmlyc3QiIGNsYXNzPSIiPk1vdmVGaXJzdCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0Lmh0bWwjbWV0aG9kX0VPRiIgY2xhc3M9IiI+RU9GKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQuaHRtbCNtZXRob2RfQ2xvc2UiIGNsYXNzPSIiPkNsb3NlKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQuaHRtbCNtZXRob2RfX19nZXQiIGNsYXNzPSIiPl9fZ2V0KCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQuaHRtbCNtZXRob2RfZ2V0X2ZvdW5kX3Jvd3MiIGNsYXNzPSIiPmdldF9mb3VuZF9yb3dzKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVtPk5vIHB1YmxpYyBwcm9wZXJ0aWVzIGZvdW5kPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZW0+Tm8gY29uc3RhbnRzIGZvdW5kPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQgcHJvdGVjdGVkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVtPk5vIHByb3RlY3RlZCBtZXRob2RzIGZvdW5kPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZW0+Tm8gcHJvdGVjdGVkIHByb3BlcnRpZXMgZm91bmQ8L2VtPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlbT5OL0E8L2VtPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQgcHJpdmF0ZSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0Lmh0bWwjbWV0aG9kX19nZXRfZ3JvdXBzIiBjbGFzcz0iIj5fZ2V0X2dyb3VwcygpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0Lmh0bWwjbWV0aG9kX19leGVjdXRlIiBjbGFzcz0iIj5fZXhlY3V0ZSgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0Lmh0bWwjcHJvcGVydHlfX3F1ZXJ5IiBjbGFzcz0iIj4kX3F1ZXJ5PC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0Lmh0bWwjcHJvcGVydHlfX2V4ZWN1dGVkIiBjbGFzcz0iIj4kX2V4ZWN1dGVkPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0Lmh0bWwjcHJvcGVydHlfX3JzIiBjbGFzcz0iIj4kX3JzPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0Lmh0bWwjcHJvcGVydHlfX2ZvdW5kX3Jvd3MiIGNsYXNzPSIiPiRfZm91bmRfcm93czwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5odG1sI3Byb3BlcnR5X19ncm91cHMiIGNsYXNzPSIiPiRfZ3JvdXBzPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlbT5OL0E8L2VtPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImxhYmVsIGxhYmVsLWluZm8iPmZpbmFsPC9zcGFuPgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgPGR0PkZpbGU8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkPjxhIGhyZWY9Ii4uL2ZpbGVzL2xpYi5jbGFzcy5mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQuaHRtbCI+PGRpdiBjbGFzcz0icGF0aC13cmFwcGVyIj5saWIvY2xhc3MuZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0LnBocDwvZGl2PjwvYT48L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+UGFja2FnZTwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQ+PGRpdiBjbGFzcz0ibmFtZXNwYWNlLXdyYXBwZXIiPkZyb250RW5kVXNlcnM8L2Rpdj48L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+Q2xhc3MgaGllcmFyY2h5PC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBjbGFzcz0iaGllcmFyY2h5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYW1lc3BhY2Utd3JhcHBlciI+XGZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZD4KCiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIDwvYXNpZGU+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGlkPSJwcm9wZXJ0aWVzIiBuYW1lPSJwcm9wZXJ0aWVzIj48L2E+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgICAgICAgICA8aDI+UHJvcGVydGllczwvaDI+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+PC9hc2lkZT4KICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJwcm9wZXJ0eV9fcXVlcnkiIG5hbWU9InByb3BlcnR5X19xdWVyeSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0icHJvcGVydHkiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwcml2YXRlICI+JF9xdWVyeTwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPiRfcXVlcnkgOiA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+VHlwZTwvaDQ+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJwcm9wZXJ0eV9fZXhlY3V0ZWQiIG5hbWU9InByb3BlcnR5X19leGVjdXRlZCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0icHJvcGVydHkiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwcml2YXRlICI+JF9leGVjdXRlZDwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPiRfZXhlY3V0ZWQgOiA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+VHlwZTwvaDQ+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJwcm9wZXJ0eV9fcnMiIG5hbWU9InByb3BlcnR5X19ycyIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0icHJvcGVydHkiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwcml2YXRlICI+JF9yczwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPiRfcnMgOiA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+VHlwZTwvaDQ+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJwcm9wZXJ0eV9fZm91bmRfcm93cyIgbmFtZT0icHJvcGVydHlfX2ZvdW5kX3Jvd3MiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9InByb3BlcnR5Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHJpdmF0ZSAiPiRfZm91bmRfcm93czwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPiRfZm91bmRfcm93cyA6IDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5UeXBlPC9oND4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9InByb3BlcnR5X19ncm91cHMiIG5hbWU9InByb3BlcnR5X19ncm91cHMiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9InByb3BlcnR5Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHJpdmF0ZSAiPiRfZ3JvdXBzPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+JF9ncm91cHMgOiA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+VHlwZTwvaDQ+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZHMiIG5hbWU9Im1ldGhvZHMiPjwvYT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPjxoMj5NZXRob2RzPC9oMj48L2Rpdj4KICAgICAgICAgICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+PC9hc2lkZT4KICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX19fY29uc3RydWN0IiBuYW1lPSJtZXRob2RfX19jb25zdHJ1Y3QiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPl9fY29uc3RydWN0KCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5fX2NvbnN0cnVjdChcZmV1X3VzZXJfcXVlcnkgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHF1ZXJ5PC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCI+XGZldV91c2VyX3F1ZXJ5PC9hPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRxdWVyeSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfUmVjb3JkQ291bnQiIG5hbWU9Im1ldGhvZF9SZWNvcmRDb3VudCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+UmVjb3JkQ291bnQoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPlJlY29yZENvdW50KCkgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9Nb3ZlTmV4dCIgbmFtZT0ibWV0aG9kX01vdmVOZXh0IiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5Nb3ZlTmV4dCgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+TW92ZU5leHQoKSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX01vdmVGaXJzdCIgbmFtZT0ibWV0aG9kX01vdmVGaXJzdCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+TW92ZUZpcnN0KCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5Nb3ZlRmlyc3QoKSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0VPRiIgbmFtZT0ibWV0aG9kX0VPRiIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+RU9GKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5FT0YoKSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0Nsb3NlIiBuYW1lPSJtZXRob2RfQ2xvc2UiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkNsb3NlKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5DbG9zZSgpIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfX19nZXQiIG5hbWU9Im1ldGhvZF9fX2dldCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+X19nZXQoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPl9fZ2V0KCAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4ka2V5PC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRrZXkgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX2dldF9mb3VuZF9yb3dzIiBuYW1lPSJtZXRob2RfZ2V0X2ZvdW5kX3Jvd3MiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPmdldF9mb3VuZF9yb3dzKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5nZXRfZm91bmRfcm93cygpIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9fZ2V0X2dyb3VwcyIgbmFtZT0ibWV0aG9kX19nZXRfZ3JvdXBzIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwcml2YXRlICI+X2dldF9ncm91cHMoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPl9nZXRfZ3JvdXBzKCkgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9fZXhlY3V0ZSIgbmFtZT0ibWV0aG9kX19leGVjdXRlIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwcml2YXRlICI+X2V4ZWN1dGUoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPl9leGVjdXRlKCkgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CgogICAgPGRpdiBpZD0ic291cmNlLXZpZXciIGNsYXNzPSJtb2RhbCBoaWRlIGZhZGUiIHRhYmluZGV4PSItMSIgcm9sZT0iZGlhbG9nIiBhcmlhLWxhYmVsbGVkYnk9InNvdXJjZS12aWV3LWxhYmVsIiBhcmlhLWhpZGRlbj0idHJ1ZSI+CiAgICAgICAgPGRpdiBjbGFzcz0ibW9kYWwtaGVhZGVyIj4KICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJjbG9zZSIgZGF0YS1kaXNtaXNzPSJtb2RhbCIgYXJpYS1oaWRkZW49InRydWUiPsOXPC9idXR0b24+CiAgICAgICAgICAgIDxoMyBpZD0ic291cmNlLXZpZXctbGFiZWwiPmNsYXNzLmZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5waHA8L2gzPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPgogICAgICAgICAgICA8cHJlIGRhdGEtc3JjPSIuLi9maWxlcy9saWIvY2xhc3MuZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0LnBocC50eHQiIGNsYXNzPSJsYW5ndWFnZS1waHAgbGluZS1udW1iZXJzIj48L3ByZT4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgIDxmb290ZXIgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQyIj4KICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDEiPgogICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQgZm9vdGVyLXNlY3Rpb25zIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYmFyLWNoYXJ0Ij48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPkNsYXNzIEhpZXJhcmNoeSBEaWFncmFtPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLXB1c2hwaW4iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9yZXBvcnRzL2Vycm9ycy5odG1sIj5FcnJvcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj5NYXJrZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQxIj4KICAgICAgICAgICAgICAgICAgICA8aHIgLz4KICAgICAgICAgICAgICAgICAgICBEb2N1bWVudGF0aW9uIGlzIHBvd2VyZWQgYnkgPGEgaHJlZj0iaHR0cDovL3d3dy5waHBkb2Mub3JnLyI+cGhwRG9jdW1lbnRvciA8L2E+IGFuZCBhdXRob3JlZAogICAgICAgICAgICAgICAgICAgIG9uIEZlYnJ1YXJ5IDEydGgsIDIwMTcgYXQgMDk6NDUuCiAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICA8L3NlY3Rpb24+CiAgICA8L2Zvb3Rlcj4KPC9kaXY+Cgo8L2JvZHk+CjwvaHRtbD4K]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/classes/FrontEndUsers.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT5Gcm9udEVuZFVzZXJzIDIuMy4xPC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImF1dGhvciIgY29udGVudD0iIi8+CiAgICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iIi8+CgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2Jvb3RzdHJhcC1jb21iaW5lZC5uby1pY29ucy5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL3ByaXNtLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICA8bGluayBocmVmPSIuLi9jc3MvdGVtcGxhdGUuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIAogICAgPCEtLVtpZiBsdCBJRSA5XT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9odG1sNS5qcyI+PC9zY3JpcHQ+CiAgICA8IVtlbmRpZl0tLT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9qcXVlcnktMS4xMS4wLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvdWkvMS4xMC40L2pxdWVyeS11aS5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS5zbW9vdGgtc2Nyb2xsLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9wcmlzbS5taW4uanMiPjwvc2NyaXB0PgogICAgPCEtLSBUT0RPOiBBZGQgaHR0cDovL2pzY3JvbGxwYW5lLmtlbHZpbmx1Y2suY29tLyB0byBzdHlsZSB0aGUgc2Nyb2xsYmFycyBmb3IgYnJvd3NlcnMgbm90IHVzaW5nIHdlYmtpdC0tPgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgZnVuY3Rpb24gbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCkgewogICAgICAgIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3ByZVtkYXRhLXNyY10nKSkuZm9yRWFjaChmdW5jdGlvbiAocHJlKSB7CiAgICAgICAgICAgIHZhciBzcmMgPSBwcmUuZ2V0QXR0cmlidXRlKCdkYXRhLXNyYycpOwogICAgICAgICAgICB2YXIgZXh0ZW5zaW9uID0gKHNyYy5tYXRjaCgvXC4oXHcrKSQvKSB8fCBbLCAnJ10pWzFdOwogICAgICAgICAgICB2YXIgbGFuZ3VhZ2UgPSAncGhwJzsKCiAgICAgICAgICAgIHZhciBjb2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY29kZScpOwogICAgICAgICAgICBjb2RlLmNsYXNzTmFtZSA9ICdsYW5ndWFnZS0nICsgbGFuZ3VhZ2U7CgogICAgICAgICAgICBwcmUudGV4dENvbnRlbnQgPSAnJzsKCiAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAnTG9hZGluZ+KApic7CgogICAgICAgICAgICBwcmUuYXBwZW5kQ2hpbGQoY29kZSk7CgogICAgICAgICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CgogICAgICAgICAgICB4aHIub3BlbignR0VUJywgc3JjLCB0cnVlKTsKCiAgICAgICAgICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT0gNCkgewoKICAgICAgICAgICAgICAgICAgICBpZiAoeGhyLnN0YXR1cyA8IDQwMCAmJiB4aHIucmVzcG9uc2VUZXh0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSB4aHIucmVzcG9uc2VUZXh0OwoKICAgICAgICAgICAgICAgICAgICAgICAgUHJpc20uaGlnaGxpZ2h0RWxlbWVudChjb2RlKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoeGhyLnN0YXR1cyA+PSA0MDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9ICfinJYgRXJyb3IgJyArIHhoci5zdGF0dXMgKyAnIHdoaWxlIGZldGNoaW5nIGZpbGU6ICcgKyB4aHIuc3RhdHVzVGV4dDsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAn4pyWIEVycm9yOiBGaWxlIGRvZXMgbm90IGV4aXN0IG9yIGlzIGVtcHR5JzsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH07CgogICAgICAgICAgICB4aHIuc2VuZChudWxsKTsKICAgICAgICB9KTsKICAgIH0KCiAgICAkKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpewogICAgICAgIGxvYWRFeHRlcm5hbENvZGVTbmlwcGV0cygpOwogICAgfSk7CiAgICAkKCcjc291cmNlLXZpZXcnKS5vbignc2hvd24nLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCk7CiAgICB9KQo8L3NjcmlwdD4KCiAgICA8bGluayByZWw9InNob3J0Y3V0IGljb24iIGhyZWY9Ii4uL2ltYWdlcy9mYXZpY29uLmljbyIvPgogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi5wbmciLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjcyeDcyIiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi03Mng3Mi5wbmciLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjExNHgxMTQiIGhyZWY9Ii4uL2ltYWdlcy9hcHBsZS10b3VjaC1pY29uLTExNHgxMTQucG5nIi8+CjwvaGVhZD4KPGJvZHk+Cgo8ZGl2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWZpeGVkLXRvcCI+CiAgICA8ZGl2IGNsYXNzPSJuYXZiYXItaW5uZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxhIGNsYXNzPSJidG4gYnRuLW5hdmJhciIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iLm5hdi1jb2xsYXBzZSI+CiAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1lbGxpcHNpcy12ZXJ0aWNhbCI+PC9pPgogICAgICAgICAgICA8L2E+CiAgICAgICAgICAgIDxhIGNsYXNzPSJicmFuZCIgaHJlZj0iLi4vaW5kZXguaHRtbCI+RnJvbnRFbmRVc2VycyAyLjMuMTwvYT4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1jb2xsYXBzZSI+CiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBwdWxsLXJpZ2h0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJjaGFydHMtbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGFydHMgPGIgY2xhc3M9ImNhcmV0Ij48L2I+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9ncmFwaHMvY2xhc3MuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7Q2xhc3MgaGllcmFyY2h5IGRpYWdyYW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wZG93biIgaWQ9InJlcG9ydHMtbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXBvcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vcmVwb3J0cy9lcnJvcnMuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7RXJyb3JzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjEwNjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtNYXJrZXJzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9yZXBvcnRzL2RlcHJlY2F0ZWQuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0RlcHJlY2F0ZWQgPHNwYW4gY2xhc3M9ImxhYmVsIGxhYmVsLWluZm8gcHVsbC1yaWdodCI+MTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgPCEtLTxkaXYgY2xhc3M9ImdvX3RvX3RvcCI+LS0+CiAgICA8IS0tPGEgaHJlZj0iI19fXyIgc3R5bGU9ImNvbG9yOiBpbmhlcml0Ij5CYWNrIHRvIHRvcCYjMTYwOyYjMTYwOzxpIGNsYXNzPSJpY29uLXVwbG9hZCBpY29uLXdoaXRlIj48L2k+PC9hPi0tPgogICAgPCEtLTwvZGl2Pi0tPgo8L2Rpdj4KCjxkaXYgaWQ9Il9fXyIgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+CiAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjIgc2lkZWJhciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uIiBzdHlsZT0ibWFyZ2luLWJvdHRvbTogMCI+CiAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWdyb3VwIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWhlYWRpbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iYWNjb3JkaW9uLXRvZ2dsZSAiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNuYW1lc3BhY2UtMjEzMzkwMDQ2MiI+PC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL25hbWVzcGFjZXMvZGVmYXVsdC5odG1sIiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDMwcHg7IHBhZGRpbmctbGVmdDogMCI+XDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgaWQ9Im5hbWVzcGFjZS0yMTMzOTAwNDYyIiBjbGFzcz0iYWNjb3JkaW9uLWJvZHkgY29sbGFwc2UgaW4iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWlubmVyIj4KCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGFzcyI+PGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeS5odG1sIj5mZXVfdXNlcl9xdWVyeTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGFzcyI+PGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCI+ZmV1X3VzZXJfcXVlcnlfb3B0PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5odG1sIj5mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sIj5Gcm9udEVuZFVzZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj4KICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW4xMCBvZmZzZXQyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICAgICAgICAgIDxuYXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL25hbWVzcGFjZXMvZGVmYXVsdC5odG1sIj5cPC9hPiA8aSBjbGFzcz0iaWNvbi1sZXZlbC11cCI+PC9pPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmF2PgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KCiAgICAgICAgICAgICAgICAgICAgPGgxPjxzbWFsbD5cPC9zbWFsbD5Gcm9udEVuZFVzZXJzPC9oMT4KICAgICAgICAgICAgICAgICAgICA8cD48ZW0+VGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLCBiZXNpZGVzIGJlaW5nIGEgbW9kdWxlIHRvIHByb3ZpZGUgYXV0aGVudGljYXRpb24gc2VydmljZXMgdG8gdGhlIGZyb250ZW5kIG9mIGEgQ01TTVMgd2Vic2l0ZSBhbHNvIGhhcyBhIGNvbXBsZXRlCmFuZCBmbGV4aWJsZSBBUEkuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBpZD0ic3VtbWFyeSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxoMj5TdW1tYXJ5PC9oMj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCBoZWFkaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iI21ldGhvZHMiPk1ldGhvZHM8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNwcm9wZXJ0aWVzIj5Qcm9wZXJ0aWVzPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjY29uc3RhbnRzIj5Db25zdGFudHM8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCBwdWJsaWMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0QWRtaW5NZW51SXRlbXMiIGNsYXNzPSIiPkdldEFkbWluTWVudUl0ZW1zKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0FkZEdyb3VwIiBjbGFzcz0iIj5BZGRHcm91cCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9BZGRHcm91cFByb3BlcnR5UmVsYXRpb24iIGNsYXNzPSIiPkFkZEdyb3VwUHJvcGVydHlSZWxhdGlvbigpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9BZGRQcm9wZXJ0eURlZm4iIGNsYXNzPSIiPkFkZFByb3BlcnR5RGVmbigpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9BZGRTZWxlY3RPcHRpb25zIiBjbGFzcz0iIj5BZGRTZWxlY3RPcHRpb25zKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0FkZFVzZXIiIGNsYXNzPSIiPkFkZFVzZXIoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfQXNzaWduVXNlclRvR3JvdXAiIGNsYXNzPSIiPkFzc2lnblVzZXJUb0dyb3VwKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0NvdW50VXNlcnNJbkdyb3VwIiBjbGFzcz0iIj5Db3VudFVzZXJzSW5Hcm91cCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9EZWxldGVQcm9wZXJ0eURlZm4iIGNsYXNzPSIiPkRlbGV0ZVByb3BlcnR5RGVmbigpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9EZWxldGVTZWxlY3RPcHRpb25zIiBjbGFzcz0iIj5EZWxldGVTZWxlY3RPcHRpb25zKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0RlbGV0ZVVzZXJGdWxsIiBjbGFzcz0iIj5EZWxldGVVc2VyRnVsbCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9EZWxldGVVc2VyUHJvcGVydHlCeU5hbWUiIGNsYXNzPSIiPkRlbGV0ZVVzZXJQcm9wZXJ0eUJ5TmFtZSgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9EZWxldGVVc2VyUHJvcGVydHkiIGNsYXNzPSIiPkRlbGV0ZVVzZXJQcm9wZXJ0eSgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9EZWxldGVBbGxVc2VyUHJvcGVydGllc0Z1bGwiIGNsYXNzPSIiPkRlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzRnVsbCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9EZWxldGVVc2VyUHJvcGVydHlGdWxsIiBjbGFzcz0iIj5EZWxldGVVc2VyUHJvcGVydHlGdWxsKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0RlbGV0ZUdyb3VwRnVsbCIgY2xhc3M9IiI+RGVsZXRlR3JvdXBGdWxsKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0RlbGV0ZVVzZXIiIGNsYXNzPSJkZXByZWNhdGVkIj5EZWxldGVVc2VyKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0dlbmVyYXRlUmFuZG9tVXNlcm5hbWUiIGNsYXNzPSIiPkdlbmVyYXRlUmFuZG9tVXNlcm5hbWUoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0VXNlclByb3BlcnRpZXMiIGNsYXNzPSIiPkdldFVzZXJQcm9wZXJ0aWVzKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0dldE1lbWJlckdyb3Vwc0FycmF5IiBjbGFzcz0iIj5HZXRNZW1iZXJHcm91cHNBcnJheSgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9HZXRVc2VyUHJvcGVydHkiIGNsYXNzPSIiPkdldFVzZXJQcm9wZXJ0eSgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9HZXRVc2VyUHJvcGVydHlGdWxsIiBjbGFzcz0iIj5HZXRVc2VyUHJvcGVydHlGdWxsKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0dldFByb3BlcnR5R3JvdXBSZWxhdGlvbnMiIGNsYXNzPSIiPkdldFByb3BlcnR5R3JvdXBSZWxhdGlvbnMoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0VXNlclByb3BlcnR5UmVsYXRpb25zIiBjbGFzcz0iIj5HZXRVc2VyUHJvcGVydHlSZWxhdGlvbnMoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyIgY2xhc3M9IiI+R2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucygpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9HZXRHcm91cEluZm8iIGNsYXNzPSIiPkdldEdyb3VwSW5mbygpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9HZXRVc2VySGlzdG9yeSIgY2xhc3M9IiI+R2V0VXNlckhpc3RvcnkoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0TG9nZ2VkSW5Vc2VycyIgY2xhc3M9IiI+R2V0TG9nZ2VkSW5Vc2VycygpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9HZXRCdWxrVXNlckluZm8iIGNsYXNzPSIiPkdldEJ1bGtVc2VySW5mbygpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9HZXRVc2VySW5mbyIgY2xhc3M9IiI+R2V0VXNlckluZm8oKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0VXNlckluZm9CeU5hbWUiIGNsYXNzPSIiPkdldFVzZXJJbmZvQnlOYW1lKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0dldEZ1bGxVc2Vyc0luR3JvdXAiIGNsYXNzPSIiPkdldEZ1bGxVc2Vyc0luR3JvdXAoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR3JvdXBFeGlzdHNCeUlEIiBjbGFzcz0iIj5Hcm91cEV4aXN0c0J5SUQoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR3JvdXBFeGlzdHNCeU5hbWUiIGNsYXNzPSIiPkdyb3VwRXhpc3RzQnlOYW1lKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0xvZ2dlZEluRW1haWwiIGNsYXNzPSIiPkxvZ2dlZEluRW1haWwoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0RW1haWwiIGNsYXNzPSIiPkdldEVtYWlsKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0dldFByb3BlcnR5RGVmbnMiIGNsYXNzPSIiPkdldFByb3BlcnR5RGVmbnMoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0UHJvcGVydHlEZWZuIiBjbGFzcz0iIj5HZXRQcm9wZXJ0eURlZm4oKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0U2VsZWN0T3B0aW9ucyIgY2xhc3M9IiI+R2V0U2VsZWN0T3B0aW9ucygpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9HZXRVc2VyTmFtZSIgY2xhc3M9IiI+R2V0VXNlck5hbWUoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0VXNlcklEIiBjbGFzcz0iIj5HZXRVc2VySUQoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0R3JvdXBOYW1lIiBjbGFzcz0iIj5HZXRHcm91cE5hbWUoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0R3JvdXBEZXNjIiBjbGFzcz0iIj5HZXRHcm91cERlc2MoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0R3JvdXBMaXN0IiBjbGFzcz0iIj5HZXRHcm91cExpc3QoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfR2V0R3JvdXBMaXN0RnVsbCIgY2xhc3M9IiI+R2V0R3JvdXBMaXN0RnVsbCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9HZXRHcm91cElEIiBjbGFzcz0iIj5HZXRHcm91cElEKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0dldE1lbWJlckdyb3VwcyIgY2xhc3M9IiI+R2V0TWVtYmVyR3JvdXBzKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0dldEV4cGlyeURhdGUiIGNsYXNzPSIiPkdldEV4cGlyeURhdGUoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfSXNBY2NvdW50RXhwaXJlZCIgY2xhc3M9IiI+SXNBY2NvdW50RXhwaXJlZCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9Jc1ZhbGlkUGFzc3dvcmQiIGNsYXNzPSIiPklzVmFsaWRQYXNzd29yZCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9HZXRVc2VybmFtZVByb21wdCIgY2xhc3M9IiI+R2V0VXNlcm5hbWVQcm9tcHQoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfSXNWYWxpZEVtYWlsQWRkcmVzcyIgY2xhc3M9IiI+SXNWYWxpZEVtYWlsQWRkcmVzcygpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9Jc1ZhbGlkVXNlcm5hbWUiIGNsYXNzPSIiPklzVmFsaWRVc2VybmFtZSgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9DaGVja1Bhc3N3b3JkIiBjbGFzcz0iIj5DaGVja1Bhc3N3b3JkKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0xvZ2luIiBjbGFzcz0iIj5Mb2dpbigpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9Mb2dnZWRJbk5hbWUiIGNsYXNzPSIiPkxvZ2dlZEluTmFtZSgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9Mb2dvdXQiIGNsYXNzPSIiPkxvZ291dCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9Mb2dvdXRVc2VyIiBjbGFzcz0iIj5Mb2dvdXRVc2VyKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0xvZ2dlZEluSWQiIGNsYXNzPSIiPkxvZ2dlZEluSWQoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfTG9nZ2VkSW4iIGNsYXNzPSIiPkxvZ2dlZEluKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX01lbWJlck9mR3JvdXAiIGNsYXNzPSIiPk1lbWJlck9mR3JvdXAoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfUmVtb3ZlVXNlckZyb21Hcm91cCIgY2xhc3M9IiI+UmVtb3ZlVXNlckZyb21Hcm91cCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9TZXRQcm9wZXJ0eURlZm5FeHRyYSIgY2xhc3M9IiI+U2V0UHJvcGVydHlEZWZuRXh0cmEoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfU2V0R3JvdXAiIGNsYXNzPSIiPlNldEdyb3VwKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0VuY3J5cHRQYXNzd29yZCIgY2xhc3M9IiI+RW5jcnlwdFBhc3N3b3JkKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX1NldFVzZXJQYXNzd29yZCIgY2xhc3M9IiI+U2V0VXNlclBhc3N3b3JkKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX1NldFVzZXJEaXNhYmxlZCIgY2xhc3M9IiI+U2V0VXNlckRpc2FibGVkKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0ZvcmNlUGFzc3dvcmRDaGFuZ2UiIGNsYXNzPSIiPkZvcmNlUGFzc3dvcmRDaGFuZ2UoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfRm9yY2VDaGFuZ2VTZXR0aW5ncyIgY2xhc3M9IiI+Rm9yY2VDaGFuZ2VTZXR0aW5ncygpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9Gb3JjZVZlcmlmeSIgY2xhc3M9IiI+Rm9yY2VWZXJpZnkoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfU2V0VXNlciIgY2xhc3M9IiI+U2V0VXNlcigpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9TZXRVc2VyR3JvdXBzIiBjbGFzcz0iIj5TZXRVc2VyR3JvdXBzKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX0FkZFVzZXJUb0dyb3VwIiBjbGFzcz0iIj5BZGRVc2VyVG9Hcm91cCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9TZXRVc2VyUHJvcGVydGllcyIgY2xhc3M9IiI+U2V0VXNlclByb3BlcnRpZXMoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfU2V0VXNlclByb3BlcnR5IiBjbGFzcz0iIj5TZXRVc2VyUHJvcGVydHkoKTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNtZXRob2RfSXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZSIgY2xhc3M9IiI+SXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZSgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9TZXRVc2VyUHJvcGVydHlGdWxsIiBjbGFzcz0iIj5TZXRVc2VyUHJvcGVydHlGdWxsKCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjbWV0aG9kX1VzZXJFeGlzdHNCeUlEIiBjbGFzcz0iIj5Vc2VyRXhpc3RzQnlJRCgpPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI21ldGhvZF9TZXRFbmNyeXB0aW9uS2V5IiBjbGFzcz0iIj5TZXRFbmNyeXB0aW9uS2V5KCk8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVtPk5vIHB1YmxpYyBwcm9wZXJ0aWVzIGZvdW5kPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNjb25zdGFudF9GSUVMRFRZUEVfVEVYVCIgY2xhc3M9IiI+RklFTERUWVBFX1RFWFQ8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjY29uc3RhbnRfRklFTERUWVBFX0NIRUNLQk9YIiBjbGFzcz0iIj5GSUVMRFRZUEVfQ0hFQ0tCT1g8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjY29uc3RhbnRfRklFTERUWVBFX0VNQUlMIiBjbGFzcz0iIj5GSUVMRFRZUEVfRU1BSUw8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjY29uc3RhbnRfRklFTERUWVBFX1RFWFRBUkVBIiBjbGFzcz0iIj5GSUVMRFRZUEVfVEVYVEFSRUE8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjY29uc3RhbnRfRklFTERUWVBFX0RST1BET1dOIiBjbGFzcz0iIj5GSUVMRFRZUEVfRFJPUERPV048L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjY29uc3RhbnRfRklFTERUWVBFX01VTFRJU0VMRUNUIiBjbGFzcz0iIj5GSUVMRFRZUEVfTVVMVElTRUxFQ1Q8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjY29uc3RhbnRfRklFTERUWVBFX0lNQUdFIiBjbGFzcz0iIj5GSUVMRFRZUEVfSU1BR0U8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwjY29uc3RhbnRfRklFTERUWVBFX1JBRElPQlVUTlMiIGNsYXNzPSIiPkZJRUxEVFlQRV9SQURJT0JVVE5TPC9hPjxiciAvPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sI2NvbnN0YW50X0ZJRUxEVFlQRV9EQVRFIiBjbGFzcz0iIj5GSUVMRFRZUEVfREFURTwvYT48YnIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCNjb25zdGFudF9GSUVMRFRZUEVfREFUQSIgY2xhc3M9IiI+RklFTERUWVBFX0RBVEE8L2E+PGJyIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIHByb3RlY3RlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxlbT5ObyBwcm90ZWN0ZWQgbWV0aG9kcyBmb3VuZDwvZW0+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGVtPk5vIHByb3RlY3RlZCBwcm9wZXJ0aWVzIGZvdW5kPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZW0+Ti9BPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIHByaXZhdGUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZW0+Tm8gcHJpdmF0ZSBtZXRob2RzIGZvdW5kPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZW0+Tm8gcHJpdmF0ZSBwcm9wZXJ0aWVzIGZvdW5kPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZW0+Ti9BPC9lbT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIj5maW5hbDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkdD5GaWxlPC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZD48YSBocmVmPSIuLi9maWxlcy9Gcm9udEVuZFVzZXJzLm1vZHVsZS5odG1sIj48ZGl2IGNsYXNzPSJwYXRoLXdyYXBwZXIiPkZyb250RW5kVXNlcnMubW9kdWxlLnBocDwvZGl2PjwvYT48L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+UGFja2FnZTwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQ+PGRpdiBjbGFzcz0ibmFtZXNwYWNlLXdyYXBwZXIiPkZyb250RW5kVXNlcnM8L2Rpdj48L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+Q2xhc3MgaGllcmFyY2h5PC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZCBjbGFzcz0iaGllcmFyY2h5Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYW1lc3BhY2Utd3JhcHBlciI+XENHRXh0ZW5zaW9uczwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmFtZXNwYWNlLXdyYXBwZXIiPlxGcm9udEVuZFVzZXJzPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RkPgoKICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgPC9hc2lkZT4KICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRzIiBuYW1lPSJjb25zdGFudHMiPjwvYT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICAgICAgICAgIDxoMj5Db25zdGFudHM8L2gyPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPjwvYXNpZGU+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRfRklFTERUWVBFX1RFWFQiIG5hbWU9ImNvbnN0YW50X0ZJRUxEVFlQRV9URVhUIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGlkPSJjb25zdGFudF9GSUVMRFRZUEVfVEVYVCIgY2xhc3M9ImNvbnN0YW50Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iIj5GSUVMRFRZUEVfVEVYVDwvaDM+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiPkZJRUxEVFlQRV9URVhUPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+Q29uc3RhbnQgdG8gaW5kZW50aWZ5IGEgdGV4dCBwcm9wZXJ0eS48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRfRklFTERUWVBFX0NIRUNLQk9YIiBuYW1lPSJjb25zdGFudF9GSUVMRFRZUEVfQ0hFQ0tCT1giIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgaWQ9ImNvbnN0YW50X0ZJRUxEVFlQRV9DSEVDS0JPWCIgY2xhc3M9ImNvbnN0YW50Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iIj5GSUVMRFRZUEVfQ0hFQ0tCT1g8L2gzPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIj5GSUVMRFRZUEVfQ0hFQ0tCT1g8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5Db25zdGFudCB0byBpbmRlbnRpZnkgYSBjaGVja2JveCBwcm9wZXJ0eS48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0iY29uc3RhbnRfRklFTERUWVBFX0VNQUlMIiBuYW1lPSJjb25zdGFudF9GSUVMRFRZUEVfRU1BSUwiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgaWQ9ImNvbnN0YW50X0ZJRUxEVFlQRV9FTUFJTCIgY2xhc3M9ImNvbnN0YW50Ij4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0iIj5GSUVMRFRZUEVfRU1BSUw8L2gzPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIj5GSUVMRFRZUEVfRU1BSUw8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5Db25zdGFudCB0byBpbmRlbnRpZnkgYW4gZW1haWwgcHJvcGVydHkuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9ImNvbnN0YW50X0ZJRUxEVFlQRV9URVhUQVJFQSIgbmFtZT0iY29uc3RhbnRfRklFTERUWVBFX1RFWFRBUkVBIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGlkPSJjb25zdGFudF9GSUVMRFRZUEVfVEVYVEFSRUEiIGNsYXNzPSJjb25zdGFudCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9IiI+RklFTERUWVBFX1RFWFRBUkVBPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+RklFTERUWVBFX1RFWFRBUkVBPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+Q29uc3RhbnQgdG8gaW5kZW50aWZ5IGEgdGV4dGFyZWEgcHJvcGVydHkuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9ImNvbnN0YW50X0ZJRUxEVFlQRV9EUk9QRE9XTiIgbmFtZT0iY29uc3RhbnRfRklFTERUWVBFX0RST1BET1dOIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGlkPSJjb25zdGFudF9GSUVMRFRZUEVfRFJPUERPV04iIGNsYXNzPSJjb25zdGFudCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9IiI+RklFTERUWVBFX0RST1BET1dOPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+RklFTERUWVBFX0RST1BET1dOPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+Q29uc3RhbnQgdG8gaW5kZW50aWZ5IGEgZHJvcGRvd24gcHJvcGVydHkuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9ImNvbnN0YW50X0ZJRUxEVFlQRV9NVUxUSVNFTEVDVCIgbmFtZT0iY29uc3RhbnRfRklFTERUWVBFX01VTFRJU0VMRUNUIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGlkPSJjb25zdGFudF9GSUVMRFRZUEVfTVVMVElTRUxFQ1QiIGNsYXNzPSJjb25zdGFudCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9IiI+RklFTERUWVBFX01VTFRJU0VMRUNUPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+RklFTERUWVBFX01VTFRJU0VMRUNUPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+Q29uc3RhbnQgdG8gaW5kZW50aWZ5IGEgbXVsdGlzZWxlY3QgcHJvcGVydHkuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9ImNvbnN0YW50X0ZJRUxEVFlQRV9JTUFHRSIgbmFtZT0iY29uc3RhbnRfRklFTERUWVBFX0lNQUdFIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGlkPSJjb25zdGFudF9GSUVMRFRZUEVfSU1BR0UiIGNsYXNzPSJjb25zdGFudCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9IiI+RklFTERUWVBFX0lNQUdFPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+RklFTERUWVBFX0lNQUdFPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+Q29uc3RhbnQgdG8gaW5kZW50aWZ5IGFuIGltYWdlIHByb3BlcnR5LjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJjb25zdGFudF9GSUVMRFRZUEVfUkFESU9CVVROUyIgbmFtZT0iY29uc3RhbnRfRklFTERUWVBFX1JBRElPQlVUTlMiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgaWQ9ImNvbnN0YW50X0ZJRUxEVFlQRV9SQURJT0JVVE5TIiBjbGFzcz0iY29uc3RhbnQiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSIiPkZJRUxEVFlQRV9SQURJT0JVVE5TPC9oMz4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSI+RklFTERUWVBFX1JBRElPQlVUTlM8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5Db25zdGFudCB0byBpbmRlbnRpZnkgYSByYWRpbyBidXR0b24gZ3JvdXAgcHJvcGVydHkuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9ImNvbnN0YW50X0ZJRUxEVFlQRV9EQVRFIiBuYW1lPSJjb25zdGFudF9GSUVMRFRZUEVfREFURSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBpZD0iY29uc3RhbnRfRklFTERUWVBFX0RBVEUiIGNsYXNzPSJjb25zdGFudCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9IiI+RklFTERUWVBFX0RBVEU8L2gzPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIj5GSUVMRFRZUEVfREFURTwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPkNvbnN0YW50IHRvIGluZGVudGlmeSBhIGRhdGUgcHJvcGVydHkuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9ImNvbnN0YW50X0ZJRUxEVFlQRV9EQVRBIiBuYW1lPSJjb25zdGFudF9GSUVMRFRZUEVfREFUQSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBpZD0iY29uc3RhbnRfRklFTERUWVBFX0RBVEEiIGNsYXNzPSJjb25zdGFudCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9IiI+RklFTERUWVBFX0RBVEE8L2gzPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIj5GSUVMRFRZUEVfREFUQTwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPkNvbnN0YW50IHRvIGluZGVudGlmeSBhIGRhdGEgcHJvcGVydHkuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZHMiIG5hbWU9Im1ldGhvZHMiPjwvYT4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPjxoMj5NZXRob2RzPC9oMj48L2Rpdj4KICAgICAgICAgICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+PC9hc2lkZT4KICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0dldEFkbWluTWVudUl0ZW1zIiBuYW1lPSJtZXRob2RfR2V0QWRtaW5NZW51SXRlbXMiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkdldEFkbWluTWVudUl0ZW1zKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5HZXRBZG1pbk1lbnVJdGVtcygpIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfQWRkR3JvdXAiIG5hbWU9Im1ldGhvZF9BZGRHcm91cCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+QWRkR3JvdXAoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkFkZEdyb3VwKHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kbmFtZTwvc3Bhbj4sIHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kZGVzY3JpcHRpb248L3NwYW4+KSA6IGFycmF5PC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+QWRkIGEgbmV3IGdyb3VwPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnN0cmluZzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRuYW1lIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBncm91cCBuYW1lPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZGVzY3JpcHRpb24gPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+VGhlIGdyb3VwIGRlc2NyaXB0aW9uPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWRhc2g7IDxwPkFycmF5IGNvbnRhaW5pbmcgdHdvIGVsZW1lbnRzLiAgVGhlIGZpcnN0IGVsZW1lbnQgaXMgdGhlIHJldHVybiBzdGF0dXMgb2YgdGhlIGZ1bmN0aW9uIChib29sZWFuKSwgdGhlIHNlY29uZCBlbGVtZW50IGlzIGVpdGhlciBhIG1lc3NhZ2UgaW4gdGhlCmNhc2Ugb2YgYW4gZXJyb3IsIG9yIHRoZSBncm91cCBpZCAoaW50ZWdlcikgb24gc3VjY2Vzcy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfQWRkR3JvdXBQcm9wZXJ0eVJlbGF0aW9uIiBuYW1lPSJtZXRob2RfQWRkR3JvdXBQcm9wZXJ0eVJlbGF0aW9uIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5BZGRHcm91cFByb3BlcnR5UmVsYXRpb24oKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkFkZEdyb3VwUHJvcGVydHlSZWxhdGlvbihpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRncnBpZDwvc3Bhbj4sIHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kcHJvcG5hbWU8L3NwYW4+LCBpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRzb3J0a2V5PC9zcGFuPiwgYm9vbGVhbiAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kbG9zdHVuPC9zcGFuPiwgaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kcmVxdWlyZWQ8L3NwYW4+KSA6IGFycmF5PC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+QWRkIGEgbmV3IGdyb3VwIHByb3BlcnR5IHJlbGF0aW9uLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JGdycGlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBncm91cCBpZDwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHByb3BuYW1lIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBwcm9wZXJ0eSBuYW1lPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHNvcnRrZXkgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+VGhlIHNvcnRpbmcgb3JkZXIgZm9yIHRoaXMgcmVsYXRpb25zaGlwPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ib29sZWFuPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JGxvc3R1biA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5XZXRoZXIgdGhpcyByZWxhdGlvbnNoaXAgc2hvdWxkIGJlIHVzZWQgZm9yIHRoZSBsb3N0dW4gc3R1ZmYgKGRlcHJlY2F0ZWQpPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHJlcXVpcmVkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSByZXF1aXJlZCBmbGFnIGZvciB0aGlzIHJlbGF0aW9uc2hpcC4gIDA9PW9mZiAxPT1vcHRpb25hbCwgMj09cmVxdWlyZWQ8L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBhcnJheQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtZGFzaDsgPHA+Rmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgdGhlIHJldHVybiBzdGF0dXMsIHNlY29uZCBlbGVtZW50IGlzIHRoZSBlcnJvciBtZXNzYWdlLCBpZiBhbnkuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0FkZFByb3BlcnR5RGVmbiIgbmFtZT0ibWV0aG9kX0FkZFByb3BlcnR5RGVmbiIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+QWRkUHJvcGVydHlEZWZuKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5BZGRQcm9wZXJ0eURlZm4oc3RyaW5nICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRuYW1lPC9zcGFuPiwgc3RyaW5nICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRwcm9tcHQ8L3NwYW4+LCBpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR0eXBlPC9zcGFuPiwgaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kbGVuZ3RoPC9zcGFuPiwgaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kbWF4bGVuZ3RoPC9zcGFuPiwgc3RyaW5nICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRhdHRyaWJzID0gJiMwMzk7JiMwMzk7PC9zcGFuPiwgYm9vbGVhbiAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kZm9yY2VfdW5pcXVlPC9zcGFuPiwgYm9vbGVhbiAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kZW5jcnlwdDwvc3Bhbj4pIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPkFkZCBhIG5ldyBwcm9wZXJ0eSBkZWZpbml0aW9uPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnN0cmluZzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRuYW1lIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBwcm9wZXJ0eSBuYW1lPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kcHJvbXB0IDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBwcm9wZXJ0eSBwcm9tcHQgZm9yIHVzZSBpbiB2YXJpb3VzIHZpZXdzPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHR5cGUgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+VGhlIGZpZWxkIHR5cGU8L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kbGVuZ3RoIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBkZWZhdWx0IGxlbmd0aCBmb3IgcmVuZGVyaW5nIHRoZSBwcm9wZXJ0eTwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRtYXhsZW5ndGggPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+VGhlIG1heGltdW0gbGVuZ3RoIGZvciByZW5kZXJpbmcgdGhlIHByb3BlcnR5PC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kYXR0cmlicyA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5BIHNlcmlhbGl6ZWQgYXJyYXkgb2YgYXR0cmlidXRlcyBmb3IgdGhlIHByb3BlcnR5PC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ib29sZWFuPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JGZvcmNlX3VuaXF1ZSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5XaGV0aGVyIG9yIG5vdCB0aGUgdmFsdWUgZm9yIHRoaXMgcHJvcGVydHkgc2hvdWxkIGJlIHVuaXF1ZSBhY3Jvc3MgYWxsIHVzZXJzLjwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Ym9vbGVhbjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRlbmNyeXB0IDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPldoZXRoZXIgb3Igbm90IHRoaXMgZGF0YSBzaG91bGQgYmUgZW5jcnlwdGVkIGluIHRoZSBkYXRhYmFzZS48L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0FkZFNlbGVjdE9wdGlvbnMiIG5hbWU9Im1ldGhvZF9BZGRTZWxlY3RPcHRpb25zIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5BZGRTZWxlY3RPcHRpb25zKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5BZGRTZWxlY3RPcHRpb25zKHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kbmFtZTwvc3Bhbj4sIGFycmF5ICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRzZWxvcHRpb25zPC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+U2V0IHNlbGVjdCBvcHRpb25zIGZvciBhIGRyb3Bkb3duL3JhZGlvLWJ1dHRvbi1ncm91cCBvciBtdWx0aXNlbGVjdCBwcm9wZXJ0eS48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JG5hbWUgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+VGhlIHByb3BlcnR5IG5hbWU8L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmFycmF5PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHNlbG9wdGlvbnMgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+dGhlIFNlbGVjdCBvcHRpb25zLjwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfQWRkVXNlciIgbmFtZT0ibWV0aG9kX0FkZFVzZXIiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkFkZFVzZXIoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkFkZFVzZXIoc3RyaW5nICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRuYW1lPC9zcGFuPiwgc3RyaW5nICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRwYXNzd29yZDwvc3Bhbj4sIGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGV4cGlyZXM8L3NwYW4+KSA6IGFycmF5PC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+QWRkIGEgdXNlciB0byB0aGUgc3lldGVtPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnN0cmluZzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRuYW1lIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBuZXcgdXNlcm5hbWU8L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnN0cmluZzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRwYXNzd29yZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5UaGUgcGxhaW4gdGV4dCBwYXNzd29yZDwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRleHBpcmVzIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPnRoZSBVbml4IHRpbWVzdGFtcCBvZiB0aGUgZXhwaXJ5IGRhdGU8L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBhcnJheQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtZGFzaDsgPHA+VGhlIGZpcnN0IGVsZW1lbnQgb2YgdGhlIGFycmF5IGlzIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHN1Y2Nlc3Mgb3IgZmFpbHVyZSwgdGhlIHNlY29uZCBlbGVtZW50IGlzIGFuIGVycm9yIG1lc3NhZ2UsIG9yIHRoZSBuZXcgVUlELjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9Bc3NpZ25Vc2VyVG9Hcm91cCIgbmFtZT0ibWV0aG9kX0Fzc2lnblVzZXJUb0dyb3VwIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5Bc3NpZ25Vc2VyVG9Hcm91cCgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+QXNzaWduVXNlclRvR3JvdXAoaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdWlkPC9zcGFuPiwgaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kZ2lkPC9zcGFuPikgOiBib29sZWFuPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+QXNzaWduIHRoZSBzcGVjaWZpZWQgdXNlciB0byB0aGUgc3BlY2lmaWVkIGdyb3VwPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdWlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSB1c2VyIGlkZW50aWZpZXI8L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZ2lkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBncm91cCBpZGVudGlmaWVyPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYm9vbGVhbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0NvdW50VXNlcnNJbkdyb3VwIiBuYW1lPSJtZXRob2RfQ291bnRVc2Vyc0luR3JvdXAiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkNvdW50VXNlcnNJbkdyb3VwKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5Db3VudFVzZXJzSW5Hcm91cChpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRnaWQgPSAmIzAzOTsmIzAzOTs8L3NwYW4+KSA6IGludGVnZXI8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5Db3VudCB0aGUgbnVtYmVyIG9mIG5vbiBkaXNhYmxlZCB1c2VycyBpbiBhIGdyb3VwLCBvciBpbiB0aGUgZW50aXJlIHN5c3RlbS48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRnaWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+T3B0aW9uYWwgZ3JvdXAgaWRlbnRpZmllci48L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBpbnRlZ2VyCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfRGVsZXRlUHJvcGVydHlEZWZuIiBuYW1lPSJtZXRob2RfRGVsZXRlUHJvcGVydHlEZWZuIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5EZWxldGVQcm9wZXJ0eURlZm4oKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkRlbGV0ZVByb3BlcnR5RGVmbihzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JG5hbWU8L3NwYW4+KSA6IGJvb2xlYW48L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5QZXJtYW5lbnRseSByZW1vdmUgYSBwcm9wZXJ0eTwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kbmFtZSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5UaGUgcHJvcGVydHkgbmFtZTwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGJvb2xlYW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9EZWxldGVTZWxlY3RPcHRpb25zIiBuYW1lPSJtZXRob2RfRGVsZXRlU2VsZWN0T3B0aW9ucyIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+RGVsZXRlU2VsZWN0T3B0aW9ucygpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+RGVsZXRlU2VsZWN0T3B0aW9ucyhzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JG5hbWU8L3NwYW4+KSA6IGFycmF5PC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+RGVsZXRlIHRoZSBzZWxlY3Qgb3B0aW9ucyAoaWYgYW55KSBmb3IgYSBwcm9wZXJ0eTwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kbmFtZSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5UaGUgcHJvcGVydHkgbmFtZTwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGFycmF5CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1kYXNoOyA8cD5UaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgYSBib29sZWFuIHN0YXR1cywgdGhlIHNlY29uZCBlbGVtZW50IChpZiBhbnkpIGlzIGFuIGVycm9yIG1lc3NhZ2UuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0RlbGV0ZVVzZXJGdWxsIiBuYW1lPSJtZXRob2RfRGVsZXRlVXNlckZ1bGwiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkRlbGV0ZVVzZXJGdWxsKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5EZWxldGVVc2VyRnVsbChpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1aWQ8L3NwYW4+KSA6IGFycmF5PC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+Q29tcGxldGVseSBkZWxldGUgYSB1c2VyIGZyb20gdGhlIGRhdGFiYXNlLiAgSW5jbHVkaW5nIGFsbCBwcm9wZXJ0aWVzLCBncm91cCBtZW1iZXJzaGlwcywgZXRjLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5UaGUgdXNlciBpZGVudGlmaWVyIHRvIGRlbGV0ZS48L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBhcnJheQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtZGFzaDsgPHA+VGhlIGZpcnN0IGVsZW1lbnQgb2YgdGhlIGFycmF5IGlzIGEgYm9vbGVhbiBzdGF0dXMsIHRoZSBzZWNvbmQgZWxlbWVudCAoaWYgYW55KSBpcyBhbiBlcnJvciBtZXNzYWdlLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9EZWxldGVVc2VyUHJvcGVydHlCeU5hbWUiIG5hbWU9Im1ldGhvZF9EZWxldGVVc2VyUHJvcGVydHlCeU5hbWUiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkRlbGV0ZVVzZXJQcm9wZXJ0eUJ5TmFtZSgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+RGVsZXRlVXNlclByb3BlcnR5QnlOYW1lKHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdGl0bGU8L3NwYW4+KSA6IGJvb2xlYW48L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5SZW1vdmUgYSBzcGVjaWZpZWQgcHJvcGVydHkgZm9yIGFsbCB1c2VycywgYnV0IGRvIG5vdCByZW1vdmUgdGhlIHByb3BlcnR5IGRlZmluaXRpb24uPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnN0cmluZzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR0aXRsZSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5UaGUgcHJvcGVydHkgbmFtZTwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGJvb2xlYW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9EZWxldGVVc2VyUHJvcGVydHkiIG5hbWU9Im1ldGhvZF9EZWxldGVVc2VyUHJvcGVydHkiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkRlbGV0ZVVzZXJQcm9wZXJ0eSgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+RGVsZXRlVXNlclByb3BlcnR5KHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdGl0bGU8L3NwYW4+LCBib29sZWFuICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRhbGwgPSBmYWxzZTwvc3Bhbj4pIDogYm9vbGVhbjwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPkRlbGV0ZSBhIHVzZXIgcHJvcGVydHkgZm9yIGEgc3BlY2lmaWMgdXNlci48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHRpdGxlIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBwcm9wZXJ0eSBuYW1lPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ib29sZWFuPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JGFsbCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5XZXRoZXIgb3Igbm90IHRvIGRlbGV0ZSBhbGwgcHJvcGVydGllcyBmb3IgdGhlIHVzZXIuPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYm9vbGVhbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0RlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzRnVsbCIgbmFtZT0ibWV0aG9kX0RlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzRnVsbCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+RGVsZXRlQWxsVXNlclByb3BlcnRpZXNGdWxsKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5EZWxldGVBbGxVc2VyUHJvcGVydGllc0Z1bGwoaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdXNlcmlkPC9zcGFuPikgOiBib29sZWFuPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+RGVsZXRlIGFsbCB1c2VyIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgdXNlci48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR1c2VyaWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+VGhlIHVzZXJpZDwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGJvb2xlYW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9EZWxldGVVc2VyUHJvcGVydHlGdWxsIiBuYW1lPSJtZXRob2RfRGVsZXRlVXNlclByb3BlcnR5RnVsbCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+RGVsZXRlVXNlclByb3BlcnR5RnVsbCgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+RGVsZXRlVXNlclByb3BlcnR5RnVsbChzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHRpdGxlPC9zcGFuPiwgaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdXNlcmlkPC9zcGFuPiwgYm9vbGVhbiAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kYWxsID0gZmFsc2U8L3NwYW4+KSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5EZWxldGUgc3BlY2lmaWVkIHVzZXIgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdGl0bGUgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+VGhlIHByb3BlcnR5IG5hbWU8L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdXNlcmlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSB1c2VyaWQ8L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmJvb2xlYW48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kYWxsIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPldldGhlciBvciBub3QgdG8gZGVsZXRlIGFsbCBwcm9wZXJ0aWVzIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIuPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9EZWxldGVHcm91cEZ1bGwiIG5hbWU9Im1ldGhvZF9EZWxldGVHcm91cEZ1bGwiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkRlbGV0ZUdyb3VwRnVsbCgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+RGVsZXRlR3JvdXBGdWxsKGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGdpZDwvc3Bhbj4pIDogYXJyYXk8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5EZWxldGUgYSBzcGVjaWZpZWQgZ3JvdXAuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZ2lkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBncm91cCBpZGVudGlmaWVyPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWRhc2g7IDxwPlRoZSBmaXJzdCBlbGVtZW50IG9mIHRoZSBhcnJheSBpcyBhIGJvb2xlYW4gc3RhdHVzLCB0aGUgc2Vjb25kIGVsZW1lbnQgKGlmIGFueSkgaXMgYW4gZXJyb3IgbWVzc2FnZS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfRGVsZXRlVXNlciIgbmFtZT0ibWV0aG9kX0RlbGV0ZVVzZXIiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyBkZXByZWNhdGVkIj5EZWxldGVVc2VyKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5EZWxldGVVc2VyKGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGlkPC9zcGFuPikgOiBhcnJheTwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPkRlbGV0ZSB0aGUgc3BlY2lmaWVkIHVzZXIgYWNjb3VudC48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5UaGUgdWlkPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWRhc2g7IDxwPlRoZSBmaXJzdCBlbGVtZW50IG9mIHRoZSBhcnJheSBpcyBhIGJvb2xlYW4gc3RhdHVzLCB0aGUgc2Vjb25kIGVsZW1lbnQgKGlmIGFueSkgaXMgYW4gZXJyb3IgbWVzc2FnZS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXNpZGUgY2xhc3M9ImFsZXJ0IGFsZXJ0LWJsb2NrIGFsZXJ0LWVycm9yIj4KICAgICAgICAgICAgICAgICAgICA8aDQ+RGVwcmVjYXRlZDwvaDQ+CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICA8L2FzaWRlPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0PlNlZSBhbHNvPC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZD48YSBocmVmPSIiPjxzcGFuIGNsYXNzPSJuYW1lc3BhY2Utd3JhcHBlciI+XERlbGV0ZVVzZXJGdWxsPC9zcGFuPjwvYT48L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9HZW5lcmF0ZVJhbmRvbVVzZXJuYW1lIiBuYW1lPSJtZXRob2RfR2VuZXJhdGVSYW5kb21Vc2VybmFtZSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+R2VuZXJhdGVSYW5kb21Vc2VybmFtZSgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+R2VuZXJhdGVSYW5kb21Vc2VybmFtZShzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHByZWZpeCA9ICYjMDM5O3VzZXImIzAzOTs8L3NwYW4+KSA6IHN0cmluZzwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPkdlbmVyYXRlIGEgcmFuZG9tIHVzZXJuYW1lPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnN0cmluZzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRwcmVmaXggPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+YW4gb3B0aW9uYWwgcHJlZml4IGZvciB0aGUgdXNlcm5hbWU8L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBzdHJpbmcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9HZXRVc2VyUHJvcGVydGllcyIgbmFtZT0ibWV0aG9kX0dldFVzZXJQcm9wZXJ0aWVzIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5HZXRVc2VyUHJvcGVydGllcygpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+R2V0VXNlclByb3BlcnRpZXMoaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdWlkPC9zcGFuPikgOiBhcnJheTwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPkdldCBhbGwgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5UaGUgdXNlciBpZGVudGlmaWVyPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWRhc2g7IDxwPlRoZSB1c2VyIHByb3BlcnRpZXMgYXMgcmVhZCBmcm9tIHRoZSBkYXRhYmFzZS48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfR2V0TWVtYmVyR3JvdXBzQXJyYXkiIG5hbWU9Im1ldGhvZF9HZXRNZW1iZXJHcm91cHNBcnJheSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+R2V0TWVtYmVyR3JvdXBzQXJyYXkoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkdldE1lbWJlckdyb3Vwc0FycmF5KGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHVzZXJpZDwvc3Bhbj4pIDogbnVsbHxhcnJheTwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPkdldCBhIGxpc3Qgb2YgdGhlIHNwZWNpZmllZCB1c2VycyBncm91cHMgKGlmIGFueSk8L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR1c2VyaWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+VGhlIHVzZXIgaWRlbnRpZmllcjwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIG51bGx8YXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWRhc2g7IDxwPklmIHRoZSB1c2VyIGlzIGEgbWVtYmVyIG9mIGFueSBncm91cHMgdGhlIHJlc3VsdGluZyBhcnJheSB3aWxsIGNvbnRhaWwgdGhlIHVzZXJpZCwgYW5kIHRoZSBncm91cGlkIGluIGVhY2ggZWxlbWVudCBvZiB0aGUgcmV0dXJuZWQgYXJyYXkuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0dldFVzZXJQcm9wZXJ0eSIgbmFtZT0ibWV0aG9kX0dldFVzZXJQcm9wZXJ0eSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+R2V0VXNlclByb3BlcnR5KCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5HZXRVc2VyUHJvcGVydHkoc3RyaW5nICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR0aXRsZTwvc3Bhbj4sIG1peGVkICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRkZWZhdWx0dmFsdWUgPSBmYWxzZTwvc3Bhbj4pIDogc3RyaW5nPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+R2V0IGEgcHJvcGVydHkgdmFsdWUgZm9yIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnN0cmluZzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR0aXRsZSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5UaGUgcHJvcGVydHkgbmFtZTwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+bWl4ZWQ8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZGVmYXVsdHZhbHVlIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPkFuIG9wdGlvbmFsIGRlZmF1bHQgdmFsdWUgaWYgdGhlIHByb3BlcnR5IGlzIG5vdCBzZXQgZm9yIHRoZSB1c2VyLiAgTm90ZSwgYW4gZW1wdHkgc3RyaW5nIG1heSBiZSBhIHZhbGlkIHByb3BlcnR5IHZhbHVlLjwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIHN0cmluZwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtZGFzaDsgPHA+KEFsbCBwcm9wZXJ0aWVzIGFyZSBzdG9yZWQgYXMgc3RyaW5ncyBpbiB0aGUgZGF0YWJhc2UpPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0dldFVzZXJQcm9wZXJ0eUZ1bGwiIG5hbWU9Im1ldGhvZF9HZXRVc2VyUHJvcGVydHlGdWxsIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5HZXRVc2VyUHJvcGVydHlGdWxsKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5HZXRVc2VyUHJvcGVydHlGdWxsKHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdGl0bGU8L3NwYW4+LCBpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1c2VyaWQ8L3NwYW4+LCBtaXhlZCAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kZGVmYXVsdHZhbHVlID0gZmFsc2U8L3NwYW4+KSA6IHN0cmluZzwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPkdldCBhIHByb3BlcnR5IHZhbHVlIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIgaWQ8L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHRpdGxlIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPnRoZSBwcm9wZXJ0eSBuYW1lPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVzZXJpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5UaGUgdXNlciBpZGVudGlmaWVyPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5taXhlZDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRkZWZhdWx0dmFsdWUgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+QW4gb3B0aW9uYWwgZGVmYXVsdCB2YWx1ZSBpZiB0aGUgcHJvcGVydHkgaXMgbm90IHNldCBmb3IgdGhlIHVzZXIuICBOb3RlLCBhbiBlbXB0eSBzdHJpbmcgbWF5IGJlIGEgdmFsaWQgcHJvcGVydHkgdmFsdWUuPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgc3RyaW5nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1kYXNoOyA8cD4oQWxsIHByb3BlcnRpZXMgYXJlIHN0b3JlZCBhcyBzdHJpbmdzIGluIHRoZSBkYXRhYmFzZSk8L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfR2V0UHJvcGVydHlHcm91cFJlbGF0aW9ucyIgbmFtZT0ibWV0aG9kX0dldFByb3BlcnR5R3JvdXBSZWxhdGlvbnMiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkdldFByb3BlcnR5R3JvdXBSZWxhdGlvbnMoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkdldFByb3BlcnR5R3JvdXBSZWxhdGlvbnMoc3RyaW5nICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR0aXRsZTwvc3Bhbj4pIDogYXJyYXk8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5HZXQgdGhlIGdyb3VwIHByb3BlcnR5IHJlbGF0aW9ucyBmb3IgdGhlIHNwZWNpZmllZCBwcm9wZXJ0eSwgZm9yIGFsbCBncm91cHMuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnN0cmluZzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR0aXRsZSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD50aGUgcHJvcGVydHkgdGl0bGUuPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9HZXRVc2VyUHJvcGVydHlSZWxhdGlvbnMiIG5hbWU9Im1ldGhvZF9HZXRVc2VyUHJvcGVydHlSZWxhdGlvbnMiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkdldFVzZXJQcm9wZXJ0eVJlbGF0aW9ucygpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+R2V0VXNlclByb3BlcnR5UmVsYXRpb25zKGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHVpZDwvc3Bhbj4pIDogYXJyYXk8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5HZXQgdGhlIHByb3BlcnR5IHJlbGF0aW9ucyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdWlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zIiBuYW1lPSJtZXRob2RfR2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+R2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucygpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+R2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyhpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRncnBpZDwvc3Bhbj4pIDogYXJyYXk8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5HZXQgdGhlIHByb3BlcnR5IHJlbGF0aW9ucyBmb3IgdGhlIHNwZWNpZmllZCBncm91cDwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JGdycGlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBncm91cCBpZGVudGlmaWVyPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9HZXRHcm91cEluZm8iIG5hbWU9Im1ldGhvZF9HZXRHcm91cEluZm8iIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkdldEdyb3VwSW5mbygpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+R2V0R3JvdXBJbmZvKGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGdpZDwvc3Bhbj4pIDogYXJyYXk8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5HZXQgdGhlIGdyb3VwIGluZm9ybWF0aW9uIGZvciB0aGUgc3BlY2lmaWVkIGdyb3VwPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZ2lkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBncm91cCBpZGVudGlmaWVyPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9HZXRVc2VySGlzdG9yeSIgbmFtZT0ibWV0aG9kX0dldFVzZXJIaXN0b3J5IiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5HZXRVc2VySGlzdG9yeSgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+R2V0VXNlckhpc3RvcnkoaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdWlkPC9zcGFuPiwgc3RyaW5nICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRhY3Rpb24gPSAmIzAzOTsmIzAzOTs8L3NwYW4+LCBpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRjb3VudCA9IC0xPC9zcGFuPikgOiBhcnJheTwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPkdldCB1c2VyIGhpc3RvcnkgcmVjb3JkcywgYnkgZGVzY2VuZGluZyBkYXRlLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgPHA+V2FybmluZzogVGhpcyBjb3VsZCBwb3RlbnRpYWxseSByZXR1cm4gYSB2ZXJ5IGxhcmdlIGFycmF5LjwvcD4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdWlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kYWN0aW9uIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPkFuIG9wdGlvbmFsIGFjdGlvbiBmaWx0ZXIgKHN1Y2ggYXMgbG9naW4gb3IgbG9nb3V0KTwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRjb3VudCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5BbiBvcHRpb25hbCBsaW1pdDwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGFycmF5CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfR2V0TG9nZ2VkSW5Vc2VycyIgbmFtZT0ibWV0aG9kX0dldExvZ2dlZEluVXNlcnMiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkdldExvZ2dlZEluVXNlcnMoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkdldExvZ2dlZEluVXNlcnMoaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kbm90X2FjdGl2ZV9zaW5jZSA9ICYjMDM5OyYjMDM5Ozwvc3Bhbj4pIDogYXJyYXkmbHQ7bWl4ZWQsaW50ZWdlciZndDs8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5HZXQgYSBsaXN0IG9mIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJzLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JG5vdF9hY3RpdmVfc2luY2UgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+QW4gb3B0aW9uYWwgdW5peCB0aW1lc3RhbXAgZmlsdGVyIGluZGljYXRpbmcgbGFzdCBhY3Rpdml0eS48L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBhcnJheSZsdDttaXhlZCxpbnRlZ2VyJmd0OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtZGFzaDsgPHA+QXJyYXkgb2YgbG9nZ2VkIGluIHVpZHMuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0dldEJ1bGtVc2VySW5mbyIgbmFtZT0ibWV0aG9kX0dldEJ1bGtVc2VySW5mbyIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+R2V0QnVsa1VzZXJJbmZvKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5HZXRCdWxrVXNlckluZm8oICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1aWRzPC9zcGFuPiwgICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRkZWVwID0gVFJVRTwvc3Bhbj4pIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdWlkcyA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JGRlZXAgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICA8dGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdG5vcmUKICAgICAgICAgICAgICAgICAgICAgICAgPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0dldFVzZXJJbmZvIiBuYW1lPSJtZXRob2RfR2V0VXNlckluZm8iIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkdldFVzZXJJbmZvKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5HZXRVc2VySW5mbyhpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1aWQ8L3NwYW4+LCBib29sZWFuICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRkZWVwID0gRkFMU0U8L3NwYW4+KSA6IGFycmF5PC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+R2V0IHVzZXIgaW5mb3JtYXRpb24gZm9yIHRoZSBzcGVjaWZpZWQgdXNlci48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR1aWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmJvb2xlYW48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZGVlcCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5PcHRpb25hbGx5IGFsc28gcmV0cmlldmUgcHJvcGVydHkgdmFsdWVzLjwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGFycmF5CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfR2V0VXNlckluZm9CeU5hbWUiIG5hbWU9Im1ldGhvZF9HZXRVc2VySW5mb0J5TmFtZSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+R2V0VXNlckluZm9CeU5hbWUoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkdldFVzZXJJbmZvQnlOYW1lKHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdXNlcm5hbWU8L3NwYW4+KSA6IGFycmF5PC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+R2V0IHVzZXIgaW5mb3JtYXRpb24gZm9yIHRoZSBzcGVjaWZpZWQgdXNlciwgYnkgaGlzIHVzZXJuYW1lLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdXNlcm5hbWUgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBhcnJheQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0dldEZ1bGxVc2Vyc0luR3JvdXAiIG5hbWU9Im1ldGhvZF9HZXRGdWxsVXNlcnNJbkdyb3VwIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5HZXRGdWxsVXNlcnNJbkdyb3VwKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5HZXRGdWxsVXNlcnNJbkdyb3VwKGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGdpZDwvc3Bhbj4pIDogYXJyYXk8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5HZXQgaW5mbyBmb3IgdGhlIHVzZXJzIGJ5IHRoZWlyIGdyb3VwLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgPHA+V2FybmluZzogVGhpcyBjb3VsZCBwb3RlbnRpYWxseSByZXR1cm4gYWxvdCBvZiBkYXRhLjwvcD4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZ2lkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWRhc2g7IDxwPkFycmF5IG9mIHVzZXJpbmZvIGRhdGEuICBPbmUgZWxlbWVudCBwZXIgdXNlci48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfR3JvdXBFeGlzdHNCeUlEIiBuYW1lPSJtZXRob2RfR3JvdXBFeGlzdHNCeUlEIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5Hcm91cEV4aXN0c0J5SUQoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkdyb3VwRXhpc3RzQnlJRChpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRnaWQ8L3NwYW4+KSA6IGJvb2xlYW48L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5UZXN0IGlmIHRoZSBndWlkIHNwZWNpZmllZCBpcyBhIHZhbGlkLCBleGlzdGluZyBncm91cCBpZC48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRnaWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBib29sZWFuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfR3JvdXBFeGlzdHNCeU5hbWUiIG5hbWU9Im1ldGhvZF9Hcm91cEV4aXN0c0J5TmFtZSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+R3JvdXBFeGlzdHNCeU5hbWUoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkdyb3VwRXhpc3RzQnlOYW1lKHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kbmFtZTwvc3Bhbj4pIDogYm9vbGVhbjwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPlRlc3QgaWYgdGhlIGdyb3VwIG5hbWUgc3BlY2lmaWVkIGlzIGEgdmFsaWQsIGV4aXN0aW5nIGdyb3VwLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kbmFtZSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5UaGUgZ3JvdXAgbmFtZS48L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBib29sZWFuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfTG9nZ2VkSW5FbWFpbCIgbmFtZT0ibWV0aG9kX0xvZ2dlZEluRW1haWwiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkxvZ2dlZEluRW1haWwoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkxvZ2dlZEluRW1haWwoKSA6IHN0cmluZzwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPlRoZSBlbWFpbCBvZiB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyIGZvciB0aGlzIHJlcXVlc3QuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgc3RyaW5nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfR2V0RW1haWwiIG5hbWU9Im1ldGhvZF9HZXRFbWFpbCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+R2V0RW1haWwoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkdldEVtYWlsKGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHVpZDwvc3Bhbj4pIDogc3RyaW5nPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+R2V0IHRoZSBlbWFpbCBhZGRyZXNzIG9mIHRoZSBzcGVjaWZpZWQgdXNlci48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR1aWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBzdHJpbmcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9HZXRQcm9wZXJ0eURlZm5zIiBuYW1lPSJtZXRob2RfR2V0UHJvcGVydHlEZWZucyIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+R2V0UHJvcGVydHlEZWZucygpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+R2V0UHJvcGVydHlEZWZucygpIDogYXJyYXk8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5HZXQgYWxsIHByb3BlcnR5IGRlZmluaXRpb25zLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGFycmF5CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfR2V0UHJvcGVydHlEZWZuIiBuYW1lPSJtZXRob2RfR2V0UHJvcGVydHlEZWZuIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5HZXRQcm9wZXJ0eURlZm4oKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkdldFByb3BlcnR5RGVmbihzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JG5hbWU8L3NwYW4+KSA6IGFycmF5PC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+R2V0IGEgcHJvcGVydHkgZGVmaW5pdGlvbiByZWNvcmQgYnkgaXRzIG5hbWU8L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JG5hbWUgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+dGhlIHByb3BlcnR5IG5hbWUuPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9HZXRTZWxlY3RPcHRpb25zIiBuYW1lPSJtZXRob2RfR2V0U2VsZWN0T3B0aW9ucyIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+R2V0U2VsZWN0T3B0aW9ucygpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+R2V0U2VsZWN0T3B0aW9ucyhzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JG5hbWU8L3NwYW4+LCBpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRkaW0gPSAxPC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+UmV0dXJuIHNlbGVjdCBvcHRpb25zIGZvciBhIHByb3BlcnR5IGFzIGEgc2ltcGxlLCBvciBhIDIgZGltZW5zaW9uYWwgYXJyYXk8L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JG5hbWUgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+VGhlIHByb3BlcnR5IG5hbWU8L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZGltIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPklmIDEsIHJldHVybiBhIHNpbXBsZSBhc3NvY2lhdGl2ZSBhcnJheS4gIElmIDIsIHJldHVybiBhIG11bHRpLWRpbWVuc2lvbmFsIGFycmF5IHdpdGggcHJvcGVydGllcyBvcHRpb25fbmFtZSwgb3B0aW9uX3RleHQgYW5kIGNvbnRyb2xfbmFtZTwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfR2V0VXNlck5hbWUiIG5hbWU9Im1ldGhvZF9HZXRVc2VyTmFtZSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+R2V0VXNlck5hbWUoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkdldFVzZXJOYW1lKGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHVzZXJpZDwvc3Bhbj4pIDogc3RyaW5nPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+R2V0IHRoZSB1c2VybmFtZSBmb3IgYSBzcGVjaWZpZWQgdWlkPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdXNlcmlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgc3RyaW5nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfR2V0VXNlcklEIiBuYW1lPSJtZXRob2RfR2V0VXNlcklEIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5HZXRVc2VySUQoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkdldFVzZXJJRChzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHVzZXJuYW1lPC9zcGFuPikgOiBcaXQ8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5HZXQgdGhlIHVzZXJpZCBmb3IgYSBzcGVjaWZpZWQgdXNlcm5hbWU8L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVzZXJuYW1lIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgXGl0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfR2V0R3JvdXBOYW1lIiBuYW1lPSJtZXRob2RfR2V0R3JvdXBOYW1lIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5HZXRHcm91cE5hbWUoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkdldEdyb3VwTmFtZShpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRncm91cGlkPC9zcGFuPikgOiBzdHJpbmc8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5HZXQgdGhlIGdyb3VwIG5hbWUgZm9yIGEgc3BlY2lmaWVkIGdyb3VwIGlkPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZ3JvdXBpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIHN0cmluZwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0dldEdyb3VwRGVzYyIgbmFtZT0ibWV0aG9kX0dldEdyb3VwRGVzYyIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+R2V0R3JvdXBEZXNjKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5HZXRHcm91cERlc2MoaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kZ3JvdXBpZDwvc3Bhbj4pIDogc3RyaW5nPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+R2V0IHRoZSBkZXNjcmlwdGlvbmYgb3IgYSBzcGVjaWZpZWQgZ3JvdXAgaWQ8L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRncm91cGlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgc3RyaW5nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfR2V0R3JvdXBMaXN0IiBuYW1lPSJtZXRob2RfR2V0R3JvdXBMaXN0IiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5HZXRHcm91cExpc3QoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkdldEdyb3VwTGlzdCgpIDogYXJyYXk8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5HZXQgYSBsaXN0IG9mIHRoZSBncm91cHMsIGZvciB1c2UgaW4gYSBkcm9wZG93bi48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBhcnJheQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0dldEdyb3VwTGlzdEZ1bGwiIG5hbWU9Im1ldGhvZF9HZXRHcm91cExpc3RGdWxsIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5HZXRHcm91cExpc3RGdWxsKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5HZXRHcm91cExpc3RGdWxsKGJvb2xlYW4gIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHdpdGhfY291bnQgPSBGQUxTRTwvc3Bhbj4pIDogYXJyYXk8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5HZXQgYSBmdWxsIGdyb3VwIGxpc3QsIHdpdGggYWxsIGluZm9ybWF0aW9uIGFib3V0IHRoYXQgZ3JvdXAuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmJvb2xlYW48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kd2l0aF9jb3VudCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5vcHRpb25hbGx5IGluY2x1ZGUgbWVtYmVyc2hpcCBpbmZvLjwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGFycmF5CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfR2V0R3JvdXBJRCIgbmFtZT0ibWV0aG9kX0dldEdyb3VwSUQiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkdldEdyb3VwSUQoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkdldEdyb3VwSUQoc3RyaW5nICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRncm91cG5hbWU8L3NwYW4+KSA6IGludGVnZXI8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5HaXZlbiBhIGdyb3VwIG5hbWUsIGdldCBhIGdyb3VwIGlkLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZ3JvdXBuYW1lIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgaW50ZWdlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0dldE1lbWJlckdyb3VwcyIgbmFtZT0ibWV0aG9kX0dldE1lbWJlckdyb3VwcyIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+R2V0TWVtYmVyR3JvdXBzKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5HZXRNZW1iZXJHcm91cHMoaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdXNlcmlkPC9zcGFuPikgOiBhcnJheSZsdDttaXhlZCxzdHJpbmcmZ3Q7PC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+R2V0IHRoZSBsaXN0IG9mIGdyb3VwcyAoYnkgbmFtZSkgdGhhdCBhIHVzZXIgaXMgYSBtZW1iZXIgb2YuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdXNlcmlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYXJyYXkmbHQ7bWl4ZWQsc3RyaW5nJmd0OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0dldEV4cGlyeURhdGUiIG5hbWU9Im1ldGhvZF9HZXRFeHBpcnlEYXRlIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5HZXRFeHBpcnlEYXRlKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5HZXRFeHBpcnlEYXRlKCAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdWlkPC9zcGFuPikgOiBpbnRlZ2VyPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+R2V0IHRoZSBkYXRlIHRoYXQgYSB1c2VyIGFjY291bnQgZXhwaXJlcy48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGludGVnZXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWRhc2g7IDxwPkEgdW5peCB0aW1lc3RhbXAgb2YgdGhlIGV4cGlyeSBkYXRlLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9Jc0FjY291bnRFeHBpcmVkIiBuYW1lPSJtZXRob2RfSXNBY2NvdW50RXhwaXJlZCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+SXNBY2NvdW50RXhwaXJlZCgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+SXNBY2NvdW50RXhwaXJlZChpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1aWQ8L3NwYW4+KSA6IGJvb2xlYW48L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5UZXN0IGlmIHRoZSBzcGVjaWZpZWQgYWNjb3VudCBpcyBleHBpcmVkLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGJvb2xlYW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9Jc1ZhbGlkUGFzc3dvcmQiIG5hbWU9Im1ldGhvZF9Jc1ZhbGlkUGFzc3dvcmQiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPklzVmFsaWRQYXNzd29yZCgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+SXNWYWxpZFBhc3N3b3JkKHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kcGFzc3dvcmQ8L3NwYW4+KSA6IGJvb2xlYW48L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5UZXN0IGlmIHRoZSBzcGVjaWZpZWQgcGxhaW4gdGV4dCBwYXNzd29yZCBpcyBzdWl0YWJsZSAobWF0Y2hlcyBtb2R1bGUgc2V0dGluZ3MpPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnN0cmluZzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRwYXNzd29yZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGJvb2xlYW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9HZXRVc2VybmFtZVByb21wdCIgbmFtZT0ibWV0aG9kX0dldFVzZXJuYW1lUHJvbXB0IiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5HZXRVc2VybmFtZVByb21wdCgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+R2V0VXNlcm5hbWVQcm9tcHQoKSA6IHN0cmluZzwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPkdldCB0aGUgcHJvbXB0IGZvciBhIHVzZXJuYW1lLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgPHA+VGhpcyBtYXkgY2hhbmdlIGJhc2VkIG9uIG1vZHVsZSBzZXR0aW5ncy48L3A+CgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIHN0cmluZwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0lzVmFsaWRFbWFpbEFkZHJlc3MiIG5hbWU9Im1ldGhvZF9Jc1ZhbGlkRW1haWxBZGRyZXNzIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5Jc1ZhbGlkRW1haWxBZGRyZXNzKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5Jc1ZhbGlkRW1haWxBZGRyZXNzKHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kZW1haWw8L3NwYW4+LCBpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1aWQgPSAtMTwvc3Bhbj4sICAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kY2hlY2tfZXhpc3RpbmcgPSBGQUxTRTwvc3Bhbj4pIDogYm9vbGVhbjwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPlRlc3QgaWYgdGhlIGVtYWlsIHNwZWNpZmllZCBpcyB2YWxpZCwgYW5kIG9wdGlvbmFsbHkgbm90IHVzZWQuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnN0cmluZzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRlbWFpbCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5UaGUgZW1haWwgYWRkcmVzcyB0byB0ZXN0PC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5JZiBzcGVjaWllZCwgdGhpcyB2YWx1ZSB3aWxsIGJlIHVzZWQgdG8gZW5zdXJlIHRoYXQgdGhlIGVtYWlsIGFkZHJlc3NzIGlzIHN0b3JlZCBpbiB0aGUgZGF0YWJhc2UgYW5kIG5vdCBhc3NvY2lhdGVkIHdpdGggYW55IG90aGVyIHVzZXJzLjwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JGNoZWNrX2V4aXN0aW5nIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYm9vbGVhbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtZGFzaDsgPHA+aW5kaWNhdGluZyB3ZXRoZXIgdGhpcyBlbWFpbCBhZGRyZXNzIGNhbiBiZSB1c2VkIHdpdGhpbiB0aGUgc3lzdGVtLjwvcD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9Jc1ZhbGlkVXNlcm5hbWUiIG5hbWU9Im1ldGhvZF9Jc1ZhbGlkVXNlcm5hbWUiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPklzVmFsaWRVc2VybmFtZSgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+SXNWYWxpZFVzZXJuYW1lKHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdXNlcm5hbWU8L3NwYW4+LCBib29sZWFuICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRjaGVjayA9IHRydWU8L3NwYW4+LCBpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1aWQgPSAtMTwvc3Bhbj4pIDogYm9vbGVhbjwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPlRlc3Qgd2V0aGVyIHRoZSBzcGVjaWZpZWQgdXNlcm5hbWUgaXMgdmFsaWQgZm9yIHRoZSBzeXN0ZW0uPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnN0cmluZzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR1c2VybmFtZSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Ym9vbGVhbjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRjaGVjayA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5PcHRpb25hbGx5IHRlc3Qgd2hldGhlciB0aGlzIHVzZXJuYW1lIGlzIGluIGN1cnJlbnQgdXNlLjwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR1aWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+SWYgJGNoZWNrIGlzIHRydWUsIGluZGljYXRlIGFuIG9wdGlvbmFsIHVpZCB0byBleGNsdWRlIGZyb20gdGhlIGNoZWNrPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYm9vbGVhbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0NoZWNrUGFzc3dvcmQiIG5hbWU9Im1ldGhvZF9DaGVja1Bhc3N3b3JkIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5DaGVja1Bhc3N3b3JkKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5DaGVja1Bhc3N3b3JkKHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdXNlcm5hbWU8L3NwYW4+LCBzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHBhc3N3b3JkPC9zcGFuPiwgc3RyaW5nICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRncm91cHMgPSAmIzAzOTsmIzAzOTs8L3NwYW4+KSA6IGJvb2xlYW48L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5WYWxpZGF0ZSB0aGUgdXNlciBwYXNzd29yZC48L2VtPjwvcD4KICAgICAgICAgICAgICAgIDxwPlRoaXMgaXMgaXMgbm90IGEgbG9naW4gb3BlcmF0aW9uLCBidXQgZG9lcyBwZXJmb3JtIHRoZSB2YWxpZGF0aW9uIG9mIHRoZSBwYXNzd29yZC48L3A+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdXNlcm5hbWUgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+VGhlIHVzZXIgbmFtZTwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHBhc3N3b3JkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBwbGFpbiB0ZXh0IHBhc3N3b3JkLjwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JGdyb3VwcyA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5BbiBvcHRpb25hbCBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBncm91cCBuYW1lcy4gIElmIHNwZWNpZmllZCwgdGhlIHVzZXIgbXVzdCBhbHNvIGJlbG9uZyB0byBvbmUgb2YgdGhlc2UgZ3JvdXBzLjwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGJvb2xlYW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9Mb2dpbiIgbmFtZT0ibWV0aG9kX0xvZ2luIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5Mb2dpbigpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+TG9naW4oc3RyaW5nICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1c2VybmFtZTwvc3Bhbj4sIHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kcGFzc3dvcmQ8L3NwYW4+LCBzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGdyb3VwcyA9ICYjMDM5OyYjMDM5Ozwvc3Bhbj4sIGJvb2xlYW4gIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGlnbm9yZWQgPSBmYWxzZTwvc3Bhbj4sICAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kZm9yY2VfbG9nb3V0ID0gZmFsc2U8L3NwYW4+KSA6IGFycmF5PC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+TG9nIHRoZSB1c2VyIGludG8gdGhlIHN5c3RlbS48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVzZXJuYW1lIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kcGFzc3dvcmQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+VGhlIHBsYWluIHRleHQgcGFzc3dvcmQ8L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnN0cmluZzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRncm91cHMgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+QW4gb3B0aW9uYWwgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXAgbmFtZXMuICBJZiBzcGVjaWZpZWQsIHRoZSB1c2VyIG11c3QgYWxzbyBiZWxvbmcgdG8gb25lIG9mIHRoZXNlIGdyb3Vwcy48L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmJvb2xlYW48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kaWdub3JlZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5ObyBsb25nZXIgdXNlZDwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JGZvcmNlX2xvZ291dCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGFycmF5CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm1kYXNoOyA8cD5UaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgZWl0aGVyIHRoZSB1aWQgb3IgRkFMU0UuICBJZiBmYWxzZSwgdGhlIHNlY29uZCBlbGVtZW50IGlzIGFuIGVycm9yIHN0cmluZy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfTG9nZ2VkSW5OYW1lIiBuYW1lPSJtZXRob2RfTG9nZ2VkSW5OYW1lIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5Mb2dnZWRJbk5hbWUoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkxvZ2dlZEluTmFtZSgpIDogc3RyaW5nPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+VGhlIHVzZXJuYW1lIG9mIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIgZm9yIHRoaXMgcmVxdWVzdC48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBzdHJpbmcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9Mb2dvdXQiIG5hbWU9Im1ldGhvZF9Mb2dvdXQiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkxvZ291dCgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+TG9nb3V0KGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHVpZCA9ICYjMDM5OyYjMDM5Ozwvc3Bhbj4sIHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kbWVzc2FnZSA9ICYjMDM5O2xvZ291dCYjMDM5Ozwvc3Bhbj4pIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPkxvZ291dCB0aGUgc3BlY2lmaWVkIHVzZXIsIG9yIHRoZSBjdXJyZW50IHVzZXIuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdWlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPkFuIG9wdGlvbmFsIHVpZC4gIElmIG5vdCBzcGVjaWZpZWQsIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1aWQgZm9yIHRoaXMgcmVxdWVzdCB3aWxsIGJlIHVzZWQuPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kbWVzc2FnZSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5BbiBvcHRpb25hbCBzdHJpbmcgdG8gaW5jbHVkZSBpbiB0aGllIGhpc3RvcnkgbG9nLjwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfTG9nb3V0VXNlciIgbmFtZT0ibWV0aG9kX0xvZ291dFVzZXIiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkxvZ291dFVzZXIoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkxvZ291dFVzZXIoaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdWlkPC9zcGFuPiwgICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRldmVudG1zZyA9ICYjMDM5O2xvZ291dCYjMDM5Ozwvc3Bhbj4pIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPkxvZ291dCB0aGUgc3BlY2lmaWVkIHVzZXIuPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdWlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPkFuIG9wdGlvbmFsIHVpZC4gIElmIG5vdCBzcGVjaWZpZWQsIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1aWQgZm9yIHRoaXMgcmVxdWVzdCB3aWxsIGJlIHVzZWQuPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZXZlbnRtc2cgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0xvZ2dlZEluSWQiIG5hbWU9Im1ldGhvZF9Mb2dnZWRJbklkIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5Mb2dnZWRJbklkKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5Mb2dnZWRJbklkKCkgOiBpbnRlZ2VyPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+UmV0dXJuIHRoZSB1aWQgb2YgdGhlIGN1cnJlbnQgbG9nZ2VkIGluIHVzZXIgZm9yIHRoaXMgcmVxdWVzdC48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBpbnRlZ2VyCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfTG9nZ2VkSW4iIG5hbWU9Im1ldGhvZF9Mb2dnZWRJbiIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+TG9nZ2VkSW4oKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkxvZ2dlZEluKCkgOiBib29sZWFuPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+VGVzdCB3aGV0aGVyIHRoZSBjdXJyZW50IHNpdGUgdmlzaXRvciBpcyBsb2dnZWQgaW4gdG8gRnJvbnRFbmRVc2VyczwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlJldHVybnM8L2g0PgogICAgICAgICAgICAgICAgICAgIGJvb2xlYW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9NZW1iZXJPZkdyb3VwIiBuYW1lPSJtZXRob2RfTWVtYmVyT2ZHcm91cCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+TWVtYmVyT2ZHcm91cCgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+TWVtYmVyT2ZHcm91cChpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1c2VyaWQ8L3NwYW4+LCBpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRncm91cGlkPC9zcGFuPikgOiBib29sZWFuPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+VGVzdCB3aGV0aGVyIHRoZSBzcGVjaWZpZWQgdXNlciBpcyBhIG1lbWJlciBvZiB0aGUgc3BlY2lmaWVkIGdyb3VwLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVzZXJpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRncm91cGlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYm9vbGVhbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX1JlbW92ZVVzZXJGcm9tR3JvdXAiIG5hbWU9Im1ldGhvZF9SZW1vdmVVc2VyRnJvbUdyb3VwIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5SZW1vdmVVc2VyRnJvbUdyb3VwKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5SZW1vdmVVc2VyRnJvbUdyb3VwKGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHVpZDwvc3Bhbj4sIGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGdpZDwvc3Bhbj4pIDogYXJyYXk8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5SZW1vdmUgdGhlIHNwZWNpZmllZCB1c2VyIGZyb20gdGhlIHNwZWNpZmllZCBncm91cC48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR1aWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZ2lkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWRhc2g7IDxwPlRoZSBmaXJzdCBlbGVtZW50IG9mIHRoZSBhcnJheSBpcyBhIGJvb2xlYW4gc3RhdHVzLiAgSWYgZmFsc2UsIHRoZSBzZWNvbmQgZWxlbWVudCBpcyBhbiBlcnJvciBzdHJpbmcuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX1NldFByb3BlcnR5RGVmbkV4dHJhIiBuYW1lPSJtZXRob2RfU2V0UHJvcGVydHlEZWZuRXh0cmEiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPlNldFByb3BlcnR5RGVmbkV4dHJhKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5TZXRQcm9wZXJ0eURlZm5FeHRyYShzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JG5hbWU8L3NwYW4+LCBzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGV4dHJhPC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+U2V0IHRoZSBleHRyYSBpbmZvcm1hdGlvbiBmb3IgYSBwcm9lcnR5LjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kbmFtZSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5UaGUgcHJvcGVydHkgbmFtZTwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JGV4dHJhIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSBleHRyYSB2YWx1ZS48L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX1NldEdyb3VwIiBuYW1lPSJtZXRob2RfU2V0R3JvdXAiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPlNldEdyb3VwKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5TZXRHcm91cChpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRnaWQ8L3NwYW4+LCBzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JG5hbWU8L3NwYW4+LCBzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGRlc2MgPSBudWxsPC9zcGFuPikgOiBhcnJheTwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPlVwZGF0ZSBhIGdyb3VwIGRlZmluaXRpb24uPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZ2lkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kbmFtZSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5UaGUgZ3JvdXAgbmFtZTwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JGRlc2MgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+QW4gb3B0aW9uYWwgZ3JvdXAgZGVzY3JpcHRpb248L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBhcnJheQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZtZGFzaDsgPHA+VGhlIGZpcnN0IGVsZW1lbnQgb2YgdGhlIGFycmF5IGlzIGEgYm9vbGVhbiBzdGF0dXMuICBJZiBmYWxzZSwgdGhlIHNlY29uZCBlbGVtZW50IGlzIGFuIGVycm9yIHN0cmluZy48L3A+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfRW5jcnlwdFBhc3N3b3JkIiBuYW1lPSJtZXRob2RfRW5jcnlwdFBhc3N3b3JkIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5FbmNyeXB0UGFzc3dvcmQoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkVuY3J5cHRQYXNzd29yZChpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1aWQ8L3NwYW4+LCAgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHBsYWluX3Bhc3N3b3JkPC9zcGFuPikgOiBzdHJpbmc8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5HaXZlbiBhIHBsYWluIHRleHQgcGFzc3dvcmQsIGVuY3J5cHQgaXQgZm9yIGEgdXNlcjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHBsYWluX3Bhc3N3b3JkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgc3RyaW5nCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfU2V0VXNlclBhc3N3b3JkIiBuYW1lPSJtZXRob2RfU2V0VXNlclBhc3N3b3JkIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5TZXRVc2VyUGFzc3dvcmQoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPlNldFVzZXJQYXNzd29yZChpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1aWQ8L3NwYW4+LCBzdHJpbmcgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHBhc3N3b3JkPC9zcGFuPikgOiBhcnJheTwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPlNldCB0aGUgcGFzc3dvcmQgZm9yIGEgdXNlcjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHBhc3N3b3JkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UmV0dXJuczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgYXJyYXkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmbWRhc2g7IDxwPlRoZSBmaXJzdCBlbGVtZW50IG9mIHRoZSBhcnJheSBpcyBhIGJvb2xlYW4gc3RhdHVzLiAgSWYgZmFsc2UsIHRoZSBzZWNvbmQgZWxlbWVudCBpcyBhbiBlcnJvciBzdHJpbmcuPC9wPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX1NldFVzZXJEaXNhYmxlZCIgbmFtZT0ibWV0aG9kX1NldFVzZXJEaXNhYmxlZCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+U2V0VXNlckRpc2FibGVkKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5TZXRVc2VyRGlzYWJsZWQoaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdWlkPC9zcGFuPiwgYm9vbGVhbiAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kZmxhZyA9IFRSVUU8L3NwYW4+KSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5Ub2dnbGUgYSB1c2VyIGFjY291bnQgYXMgZGlzYmxlZC48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR1aWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmJvb2xlYW48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZmxhZyA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48cD5XaGV0aGVyIG9yIG5vdCB0aGUgYWNjb3VudCBpcyBkaXNhYmxlZC48L3A+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0ZvcmNlUGFzc3dvcmRDaGFuZ2UiIG5hbWU9Im1ldGhvZF9Gb3JjZVBhc3N3b3JkQ2hhbmdlIiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5Gb3JjZVBhc3N3b3JkQ2hhbmdlKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5Gb3JjZVBhc3N3b3JkQ2hhbmdlKGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHVpZDwvc3Bhbj4sIGJvb2xlYW4gIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGZsYWcgPSBUUlVFPC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+VG9nZ2xlIHdoZXRoZXIgYSB1c2VyIGlzIGZvcmNlZCB0byBjaGFuZ2UgaGlzIHBhc3N3b3JkIGF0IHRoZSBuZXh0IGxvZ2luLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Ym9vbGVhbjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRmbGFnIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9Gb3JjZUNoYW5nZVNldHRpbmdzIiBuYW1lPSJtZXRob2RfRm9yY2VDaGFuZ2VTZXR0aW5ncyIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+Rm9yY2VDaGFuZ2VTZXR0aW5ncygpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+Rm9yY2VDaGFuZ2VTZXR0aW5ncyhpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1aWQ8L3NwYW4+LCBib29sZWFuICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRmbGFnID0gVFJVRTwvc3Bhbj4pIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPlRvZ2dsZSB3aGV0aGVyIGEgdXNlciBpcyBmb3JjZWQgdG8gY2hhbmdlIGhpcyBzZXR0aW5ncyBpbiBzb21lIHdheSBhdCB0aGUgbmV4dCBsb2dpbi48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR1aWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmJvb2xlYW48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZmxhZyA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfRm9yY2VWZXJpZnkiIG5hbWU9Im1ldGhvZF9Gb3JjZVZlcmlmeSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+Rm9yY2VWZXJpZnkoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPkZvcmNlVmVyaWZ5KGludGVnZXIgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHVpZDwvc3Bhbj4sIGJvb2xlYW4gIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGZsYWcgPSBUUlVFPC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+VG9nZ2xlIHdoZXRoZXIgYSB1c2VyIGlzIGZvcmNlZCB0byByZXZhbGlkYXRlIHRoZW1zZWx2ZXM8L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+aW50ZWdlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR1aWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmJvb2xlYW48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZmxhZyA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfU2V0VXNlciIgbmFtZT0ibWV0aG9kX1NldFVzZXIiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPlNldFVzZXIoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPlNldFVzZXIoaW50ZWdlciAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdWlkPC9zcGFuPiwgc3RyaW5nICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1c2VybmFtZTwvc3Bhbj4sIHN0cmluZyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kcGFzc3dvcmQ8L3NwYW4+LCBpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRleHBpcmVzID0gZmFsc2U8L3NwYW4+KSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT5BZGp1c3QgdXNlciBkZXRhaWxzPC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdWlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5zdHJpbmc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdXNlcm5hbWUgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+VGhlIHVzZXIgbmFtZTwvcD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+c3RyaW5nPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHBhc3N3b3JkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxwPlRoZSB1c2VycyBwbGFpbiB0ZXh0IHBhc3N3b3JkPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5pbnRlZ2VyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JGV4cGlyZXMgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHA+QW4gb3B0aW9uYWwgZXhwaXJ5IGRhdGUuPC9wPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9TZXRVc2VyR3JvdXBzIiBuYW1lPSJtZXRob2RfU2V0VXNlckdyb3VwcyIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+U2V0VXNlckdyb3VwcygpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+U2V0VXNlckdyb3VwcyhpbnRlZ2VyICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1aWQ8L3NwYW4+LCBhcnJheSZsdDttaXhlZCxpbnRlZ2VyJmd0OyAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kZ3JwaWRzPC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+U2V0IGV4cGxpY2l0IGdyb3VwIG1lbWJlcnNoaXAuPC9lbT48L3A+CiAgICAgICAgICAgICAgICA8cD5UaGlzIG1ldGhvZCBkb2VzIG5vdCBhbHRlciB0aGUgdXNlciBwcm9wZXJ0aWVzLjwvcD4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmludGVnZXI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdWlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5hcnJheSZsdDttaXhlZCxpbnRlZ2VyJmd0OzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRncnBpZHMgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX0FkZFVzZXJUb0dyb3VwIiBuYW1lPSJtZXRob2RfQWRkVXNlclRvR3JvdXAiIGNsYXNzPSJhbmNob3IiPjwvYT4KICAgICAgICAgICAgPGFydGljbGUgY2xhc3M9Im1ldGhvZCI+CiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9InB1YmxpYyAiPkFkZFVzZXJUb0dyb3VwKCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5BZGRVc2VyVG9Hcm91cCggIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHVpZDwvc3Bhbj4sICAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kZ2lkPC9zcGFuPikgOiBib29sZWFuPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+QWRkIHVzZXIgdG8gYSBncm91cDwvZW0+PC9wPgogICAgICAgICAgICAgICAgPHA+ZG9lcyBub3QgZWZmZWN0IHVzZXIgcHJvcGVydGllcwpkb2VzIG5vdCB2YWxpZGF0ZSBnaWQKdXNlcmlkIGlzIHZhbGlkYXRlZDwvcD4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR1aWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRnaWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5SZXR1cm5zPC9oND4KICAgICAgICAgICAgICAgICAgICBib29sZWFuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfU2V0VXNlclByb3BlcnRpZXMiIG5hbWU9Im1ldGhvZF9TZXRVc2VyUHJvcGVydGllcyIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+U2V0VXNlclByb3BlcnRpZXMoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPlNldFVzZXJQcm9wZXJ0aWVzKCAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdWlkPC9zcGFuPiwgICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRwcm9wczwvc3Bhbj4pIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdWlkIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kcHJvcHMgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX1NldFVzZXJQcm9wZXJ0eSIgbmFtZT0ibWV0aG9kX1NldFVzZXJQcm9wZXJ0eSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+U2V0VXNlclByb3BlcnR5KCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5TZXRVc2VyUHJvcGVydHkoICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR0aXRsZTwvc3Bhbj4sICAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kZGF0YTwvc3Bhbj4pIDwvcHJlPgogICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDQ+UGFyYW1ldGVyczwvaDQ+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kdGl0bGUgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiRkYXRhIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9Jc1VzZXJQcm9wZXJ0eVZhbHVlVW5pcXVlIiBuYW1lPSJtZXRob2RfSXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZSIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+SXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZSgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+SXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZSggIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHVpZDwvc3Bhbj4sICAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdGl0bGU8L3NwYW4+LCAgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHZhbHVlPC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR1aWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR0aXRsZSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHZhbHVlIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGNsYXNzIj4KICAgICAgICAgICAgPGEgaWQ9Im1ldGhvZF9TZXRVc2VyUHJvcGVydHlGdWxsIiBuYW1lPSJtZXRob2RfU2V0VXNlclByb3BlcnR5RnVsbCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+U2V0VXNlclByb3BlcnR5RnVsbCgpPC9oMz4KICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgc3R5bGU9ImZvbnQtc2l6ZTogMS4xZW07IHBhZGRpbmc6IDlweCAxNHB4Ij48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9hPgogICAgICAgICAgICAgICAgPHByZSBjbGFzcz0ic2lnbmF0dXJlIiBzdHlsZT0ibWFyZ2luLXJpZ2h0OiA1NHB4OyI+U2V0VXNlclByb3BlcnR5RnVsbCggIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JHRpdGxlPC9zcGFuPiwgICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiRkYXRhPC9zcGFuPiwgICA8c3BhbiBjbGFzcz0iYXJndW1lbnQiPiR1c2VyaWQ8L3NwYW4+KSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHRpdGxlIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4kZGF0YSA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVzZXJpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAkJCQkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXJ0aWNsZT4KICAgICAgICA8L2Rpdj4KICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYXJyb3ctZG93biI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvYXNpZGU+CiAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBjbGFzcyI+CiAgICAgICAgICAgIDxhIGlkPSJtZXRob2RfVXNlckV4aXN0c0J5SUQiIG5hbWU9Im1ldGhvZF9Vc2VyRXhpc3RzQnlJRCIgY2xhc3M9ImFuY2hvciI+PC9hPgogICAgICAgICAgICA8YXJ0aWNsZSBjbGFzcz0ibWV0aG9kIj4KICAgICAgICAgICAgICAgIDxoMyBjbGFzcz0icHVibGljICI+VXNlckV4aXN0c0J5SUQoKTwvaDM+CiAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIHN0eWxlPSJmb250LXNpemU6IDEuMWVtOyBwYWRkaW5nOiA5cHggMTRweCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgIDxwcmUgY2xhc3M9InNpZ25hdHVyZSIgc3R5bGU9Im1hcmdpbi1yaWdodDogNTRweDsiPlVzZXJFeGlzdHNCeUlEKCAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdWlkPC9zcGFuPikgPC9wcmU+CiAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoND5QYXJhbWV0ZXJzPC9oND4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPiR1aWQgPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAJCQkJCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FydGljbGU+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWFycm93LWRvd24iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2FzaWRlPgogICAgPC9kaXY+CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgY2xhc3MiPgogICAgICAgICAgICA8YSBpZD0ibWV0aG9kX1NldEVuY3J5cHRpb25LZXkiIG5hbWU9Im1ldGhvZF9TZXRFbmNyeXB0aW9uS2V5IiBjbGFzcz0iYW5jaG9yIj48L2E+CiAgICAgICAgICAgIDxhcnRpY2xlIGNsYXNzPSJtZXRob2QiPgogICAgICAgICAgICAgICAgPGgzIGNsYXNzPSJwdWJsaWMgIj5TZXRFbmNyeXB0aW9uS2V5KCk8L2gzPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iI3NvdXJjZS12aWV3IiByb2xlPSJidXR0b24iIGNsYXNzPSJwdWxsLXJpZ2h0IGJ0biIgZGF0YS10b2dnbGU9Im1vZGFsIiBzdHlsZT0iZm9udC1zaXplOiAxLjFlbTsgcGFkZGluZzogOXB4IDE0cHgiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICA8cHJlIGNsYXNzPSJzaWduYXR1cmUiIHN0eWxlPSJtYXJnaW4tcmlnaHQ6IDU0cHg7Ij5TZXRFbmNyeXB0aW9uS2V5KCAgPHNwYW4gY2xhc3M9ImFyZ3VtZW50Ij4kdWlkID0gLTE8L3NwYW4+LCAgIDxzcGFuIGNsYXNzPSJhcmd1bWVudCI+JGZvcmNlID0gRkFMU0U8L3NwYW4+KSA8L3ByZT4KICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGg0PlBhcmFtZXRlcnM8L2g0PgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JHVpZCA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+JGZvcmNlIDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCQkJCQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hcnRpY2xlPgogICAgICAgIDwvZGl2PgogICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1hcnJvdy1kb3duIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9hc2lkZT4KICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj4KCiAgICA8ZGl2IGlkPSJzb3VyY2UtdmlldyIgY2xhc3M9Im1vZGFsIGhpZGUgZmFkZSIgdGFiaW5kZXg9Ii0xIiByb2xlPSJkaWFsb2ciIGFyaWEtbGFiZWxsZWRieT0ic291cmNlLXZpZXctbGFiZWwiIGFyaWEtaGlkZGVuPSJ0cnVlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPgogICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImNsb3NlIiBkYXRhLWRpc21pc3M9Im1vZGFsIiBhcmlhLWhpZGRlbj0idHJ1ZSI+w5c8L2J1dHRvbj4KICAgICAgICAgICAgPGgzIGlkPSJzb3VyY2Utdmlldy1sYWJlbCI+RnJvbnRFbmRVc2Vycy5tb2R1bGUucGhwPC9oMz4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij4KICAgICAgICAgICAgPHByZSBkYXRhLXNyYz0iLi4vZmlsZXMvRnJvbnRFbmRVc2Vycy5tb2R1bGUucGhwLnR4dCIgY2xhc3M9Imxhbmd1YWdlLXBocCBsaW5lLW51bWJlcnMiPjwvcHJlPgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgPGZvb3RlciBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDIiPgogICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuMTAgb2Zmc2V0MSI+CiAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCBmb290ZXItc2VjdGlvbnMiPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1iYXItY2hhcnQiPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9ncmFwaHMvY2xhc3MuaHRtbCI+Q2xhc3MgSGllcmFyY2h5IERpYWdyYW08L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tcHVzaHBpbiI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPkVycm9yczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vcmVwb3J0cy9tYXJrZXJzLmh0bWwiPk1hcmtlcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDEiPgogICAgICAgICAgICAgICAgICAgIDxociAvPgogICAgICAgICAgICAgICAgICAgIERvY3VtZW50YXRpb24gaXMgcG93ZXJlZCBieSA8YSBocmVmPSJodHRwOi8vd3d3LnBocGRvYy5vcmcvIj5waHBEb2N1bWVudG9yIDwvYT4gYW5kIGF1dGhvcmVkCiAgICAgICAgICAgICAgICAgICAgb24gRmVicnVhcnkgMTJ0aCwgMjAxNyBhdCAwOTo0NS4KICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgIDwvc2VjdGlvbj4KICAgIDwvZm9vdGVyPgo8L2Rpdj4KCjwvYm9keT4KPC9odG1sPgo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/css/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/css/bootstrap-combined.no-icons.min.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyohCiAqIEJvb3RzdHJhcCB2Mi4zLjIKICoKICogQ29weXJpZ2h0IDIwMTIgVHdpdHRlciwgSW5jCiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSB2Mi4wCiAqIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAogKgogKiBEZXNpZ25lZCBhbmQgYnVpbHQgd2l0aCBhbGwgdGhlIGxvdmUgaW4gdGhlIHdvcmxkIEB0d2l0dGVyIGJ5IEBtZG8gYW5kIEBmYXQuCiAqLwouY2xlYXJmaXh7Knpvb206MTt9LmNsZWFyZml4OmJlZm9yZSwuY2xlYXJmaXg6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OiIiO2xpbmUtaGVpZ2h0OjA7fQouY2xlYXJmaXg6YWZ0ZXJ7Y2xlYXI6Ym90aDt9Ci5oaWRlLXRleHR7Zm9udDowLzAgYTtjb2xvcjp0cmFuc3BhcmVudDt0ZXh0LXNoYWRvdzpub25lO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOjA7fQouaW5wdXQtYmxvY2stbGV2ZWx7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO21pbi1oZWlnaHQ6MzBweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7fQphcnRpY2xlLGFzaWRlLGRldGFpbHMsZmlnY2FwdGlvbixmaWd1cmUsZm9vdGVyLGhlYWRlcixoZ3JvdXAsbmF2LHNlY3Rpb257ZGlzcGxheTpibG9jazt9CmF1ZGlvLGNhbnZhcyx2aWRlb3tkaXNwbGF5OmlubGluZS1ibG9jazsqZGlzcGxheTppbmxpbmU7Knpvb206MTt9CmF1ZGlvOm5vdChbY29udHJvbHNdKXtkaXNwbGF5Om5vbmU7fQpodG1se2ZvbnQtc2l6ZToxMDAlOy13ZWJraXQtdGV4dC1zaXplLWFkanVzdDoxMDAlOy1tcy10ZXh0LXNpemUtYWRqdXN0OjEwMCU7fQphOmZvY3Vze291dGxpbmU6dGhpbiBkb3R0ZWQgIzMzMztvdXRsaW5lOjVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtvdXRsaW5lLW9mZnNldDotMnB4O30KYTpob3ZlcixhOmFjdGl2ZXtvdXRsaW5lOjA7fQpzdWIsc3Vwe3Bvc2l0aW9uOnJlbGF0aXZlO2ZvbnQtc2l6ZTo3NSU7bGluZS1oZWlnaHQ6MDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTt9CnN1cHt0b3A6LTAuNWVtO30Kc3Vie2JvdHRvbTotMC4yNWVtO30KaW1ne21heC13aWR0aDoxMDAlO3dpZHRoOmF1dG9cOTtoZWlnaHQ6YXV0bzt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Ym9yZGVyOjA7LW1zLWludGVycG9sYXRpb24tbW9kZTpiaWN1YmljO30KI21hcF9jYW52YXMgaW1nLC5nb29nbGUtbWFwcyBpbWd7bWF4LXdpZHRoOm5vbmU7fQpidXR0b24saW5wdXQsc2VsZWN0LHRleHRhcmVhe21hcmdpbjowO2ZvbnQtc2l6ZToxMDAlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt9CmJ1dHRvbixpbnB1dHsqb3ZlcmZsb3c6dmlzaWJsZTtsaW5lLWhlaWdodDpub3JtYWw7fQpidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXJ7cGFkZGluZzowO2JvcmRlcjowO30KYnV0dG9uLGh0bWwgaW5wdXRbdHlwZT0iYnV0dG9uIl0saW5wdXRbdHlwZT0icmVzZXQiXSxpbnB1dFt0eXBlPSJzdWJtaXQiXXstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9uO2N1cnNvcjpwb2ludGVyO30KbGFiZWwsc2VsZWN0LGJ1dHRvbixpbnB1dFt0eXBlPSJidXR0b24iXSxpbnB1dFt0eXBlPSJyZXNldCJdLGlucHV0W3R5cGU9InN1Ym1pdCJdLGlucHV0W3R5cGU9InJhZGlvIl0saW5wdXRbdHlwZT0iY2hlY2tib3giXXtjdXJzb3I6cG9pbnRlcjt9CmlucHV0W3R5cGU9InNlYXJjaCJdey13ZWJraXQtYm94LXNpemluZzpjb250ZW50LWJveDstbW96LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveDstd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkO30KaW5wdXRbdHlwZT0ic2VhcmNoIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24saW5wdXRbdHlwZT0ic2VhcmNoIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7fQp0ZXh0YXJlYXtvdmVyZmxvdzphdXRvO3ZlcnRpY2FsLWFsaWduOnRvcDt9CkBtZWRpYSBwcmludHsqe3RleHQtc2hhZG93Om5vbmUgIWltcG9ydGFudDtjb2xvcjojMDAwICFpbXBvcnRhbnQ7YmFja2dyb3VuZDp0cmFuc3BhcmVudCAhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSAhaW1wb3J0YW50O30gYSxhOnZpc2l0ZWR7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9IGFbaHJlZl06YWZ0ZXJ7Y29udGVudDoiICgiIGF0dHIoaHJlZikgIikiO30gYWJiclt0aXRsZV06YWZ0ZXJ7Y29udGVudDoiICgiIGF0dHIodGl0bGUpICIpIjt9IC5pciBhOmFmdGVyLGFbaHJlZl49ImphdmFzY3JpcHQ6Il06YWZ0ZXIsYVtocmVmXj0iIyJdOmFmdGVye2NvbnRlbnQ6IiI7fSBwcmUsYmxvY2txdW90ZXtib3JkZXI6MXB4IHNvbGlkICM5OTk7cGFnZS1icmVhay1pbnNpZGU6YXZvaWQ7fSB0aGVhZHtkaXNwbGF5OnRhYmxlLWhlYWRlci1ncm91cDt9IHRyLGltZ3twYWdlLWJyZWFrLWluc2lkZTphdm9pZDt9IGltZ3ttYXgtd2lkdGg6MTAwJSAhaW1wb3J0YW50O30gQHBhZ2Uge21hcmdpbjowLjVjbTt9cCxoMixoM3tvcnBoYW5zOjM7d2lkb3dzOjM7fSBoMixoM3twYWdlLWJyZWFrLWFmdGVyOmF2b2lkO319Ym9keXttYXJnaW46MDtmb250LWZhbWlseToiSGVsdmV0aWNhIE5ldWUiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjIwcHg7Y29sb3I6IzMzMzMzMztiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmY7fQphe2NvbG9yOiMwMDg4Y2M7dGV4dC1kZWNvcmF0aW9uOm5vbmU7fQphOmhvdmVyLGE6Zm9jdXN7Y29sb3I6IzAwNTU4MDt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO30KLmltZy1yb3VuZGVkey13ZWJraXQtYm9yZGVyLXJhZGl1czo2cHg7LW1vei1ib3JkZXItcmFkaXVzOjZweDtib3JkZXItcmFkaXVzOjZweDt9Ci5pbWctcG9sYXJvaWR7cGFkZGluZzo0cHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgI2NjYztib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTstbW96LWJveC1zaGFkb3c6MCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTtib3gtc2hhZG93OjAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7fQouaW1nLWNpcmNsZXstd2Via2l0LWJvcmRlci1yYWRpdXM6NTAwcHg7LW1vei1ib3JkZXItcmFkaXVzOjUwMHB4O2JvcmRlci1yYWRpdXM6NTAwcHg7fQoucm93e21hcmdpbi1sZWZ0Oi0yMHB4Oyp6b29tOjE7fS5yb3c6YmVmb3JlLC5yb3c6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OiIiO2xpbmUtaGVpZ2h0OjA7fQoucm93OmFmdGVye2NsZWFyOmJvdGg7fQpbY2xhc3MqPSJzcGFuIl17ZmxvYXQ6bGVmdDttaW4taGVpZ2h0OjFweDttYXJnaW4tbGVmdDoyMHB4O30KLmNvbnRhaW5lciwubmF2YmFyLXN0YXRpYy10b3AgLmNvbnRhaW5lciwubmF2YmFyLWZpeGVkLXRvcCAuY29udGFpbmVyLC5uYXZiYXItZml4ZWQtYm90dG9tIC5jb250YWluZXJ7d2lkdGg6OTQwcHg7fQouc3BhbjEye3dpZHRoOjk0MHB4O30KLnNwYW4xMXt3aWR0aDo4NjBweDt9Ci5zcGFuMTB7d2lkdGg6NzgwcHg7fQouc3Bhbjl7d2lkdGg6NzAwcHg7fQouc3Bhbjh7d2lkdGg6NjIwcHg7fQouc3Bhbjd7d2lkdGg6NTQwcHg7fQouc3BhbjZ7d2lkdGg6NDYwcHg7fQouc3BhbjV7d2lkdGg6MzgwcHg7fQouc3BhbjR7d2lkdGg6MzAwcHg7fQouc3BhbjN7d2lkdGg6MjIwcHg7fQouc3BhbjJ7d2lkdGg6MTQwcHg7fQouc3BhbjF7d2lkdGg6NjBweDt9Ci5vZmZzZXQxMnttYXJnaW4tbGVmdDo5ODBweDt9Ci5vZmZzZXQxMXttYXJnaW4tbGVmdDo5MDBweDt9Ci5vZmZzZXQxMHttYXJnaW4tbGVmdDo4MjBweDt9Ci5vZmZzZXQ5e21hcmdpbi1sZWZ0Ojc0MHB4O30KLm9mZnNldDh7bWFyZ2luLWxlZnQ6NjYwcHg7fQoub2Zmc2V0N3ttYXJnaW4tbGVmdDo1ODBweDt9Ci5vZmZzZXQ2e21hcmdpbi1sZWZ0OjUwMHB4O30KLm9mZnNldDV7bWFyZ2luLWxlZnQ6NDIwcHg7fQoub2Zmc2V0NHttYXJnaW4tbGVmdDozNDBweDt9Ci5vZmZzZXQze21hcmdpbi1sZWZ0OjI2MHB4O30KLm9mZnNldDJ7bWFyZ2luLWxlZnQ6MTgwcHg7fQoub2Zmc2V0MXttYXJnaW4tbGVmdDoxMDBweDt9Ci5yb3ctZmx1aWR7d2lkdGg6MTAwJTsqem9vbToxO30ucm93LWZsdWlkOmJlZm9yZSwucm93LWZsdWlkOmFmdGVye2Rpc3BsYXk6dGFibGU7Y29udGVudDoiIjtsaW5lLWhlaWdodDowO30KLnJvdy1mbHVpZDphZnRlcntjbGVhcjpib3RoO30KLnJvdy1mbHVpZCBbY2xhc3MqPSJzcGFuIl17ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO21pbi1oZWlnaHQ6MzBweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZmxvYXQ6bGVmdDttYXJnaW4tbGVmdDoyLjEyNzY1OTU3NDQ2ODA4NSU7Km1hcmdpbi1sZWZ0OjIuMDc0NDY4MDg1MTA2MzgzJTt9Ci5yb3ctZmx1aWQgW2NsYXNzKj0ic3BhbiJdOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjA7fQoucm93LWZsdWlkIC5jb250cm9scy1yb3cgW2NsYXNzKj0ic3BhbiJdK1tjbGFzcyo9InNwYW4iXXttYXJnaW4tbGVmdDoyLjEyNzY1OTU3NDQ2ODA4NSU7fQoucm93LWZsdWlkIC5zcGFuMTJ7d2lkdGg6MTAwJTsqd2lkdGg6OTkuOTQ2ODA4NTEwNjM4MjklO30KLnJvdy1mbHVpZCAuc3BhbjExe3dpZHRoOjkxLjQ4OTM2MTcwMjEyNzY1JTsqd2lkdGg6OTEuNDM2MTcwMjEyNzY1OTQlO30KLnJvdy1mbHVpZCAuc3BhbjEwe3dpZHRoOjgyLjk3ODcyMzQwNDI1NTMyJTsqd2lkdGg6ODIuOTI1NTMxOTE0ODkzNjElO30KLnJvdy1mbHVpZCAuc3Bhbjl7d2lkdGg6NzQuNDY4MDg1MTA2MzgyOTclOyp3aWR0aDo3NC40MTQ4OTM2MTcwMjEyNiU7fQoucm93LWZsdWlkIC5zcGFuOHt3aWR0aDo2NS45NTc0NDY4MDg1MTA2NCU7KndpZHRoOjY1LjkwNDI1NTMxOTE0ODkzJTt9Ci5yb3ctZmx1aWQgLnNwYW43e3dpZHRoOjU3LjQ0NjgwODUxMDYzODI5JTsqd2lkdGg6NTcuMzkzNjE3MDIxMjc2NTklO30KLnJvdy1mbHVpZCAuc3BhbjZ7d2lkdGg6NDguOTM2MTcwMjEyNzY1OTUlOyp3aWR0aDo0OC44ODI5Nzg3MjM0MDQyNSU7fQoucm93LWZsdWlkIC5zcGFuNXt3aWR0aDo0MC40MjU1MzE5MTQ4OTM2MiU7KndpZHRoOjQwLjM3MjM0MDQyNTUzMTkyJTt9Ci5yb3ctZmx1aWQgLnNwYW40e3dpZHRoOjMxLjkxNDg5MzYxNzAyMTI3OCU7KndpZHRoOjMxLjg2MTcwMjEyNzY1OTU3NiU7fQoucm93LWZsdWlkIC5zcGFuM3t3aWR0aDoyMy40MDQyNTUzMTkxNDg5MzQlOyp3aWR0aDoyMy4zNTEwNjM4Mjk3ODcyMzMlO30KLnJvdy1mbHVpZCAuc3BhbjJ7d2lkdGg6MTQuODkzNjE3MDIxMjc2NTk1JTsqd2lkdGg6MTQuODQwNDI1NTMxOTE0ODk0JTt9Ci5yb3ctZmx1aWQgLnNwYW4xe3dpZHRoOjYuMzgyOTc4NzIzNDA0MjU1JTsqd2lkdGg6Ni4zMjk3ODcyMzQwNDI1NTMlO30KLnJvdy1mbHVpZCAub2Zmc2V0MTJ7bWFyZ2luLWxlZnQ6MTA0LjI1NTMxOTE0ODkzNjE3JTsqbWFyZ2luLWxlZnQ6MTA0LjE0ODkzNjE3MDIxMjc1JTt9Ci5yb3ctZmx1aWQgLm9mZnNldDEyOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjEwMi4xMjc2NTk1NzQ0NjgwOCU7Km1hcmdpbi1sZWZ0OjEwMi4wMjEyNzY1OTU3NDQ2NyU7fQoucm93LWZsdWlkIC5vZmZzZXQxMXttYXJnaW4tbGVmdDo5NS43NDQ2ODA4NTEwNjM4MiU7Km1hcmdpbi1sZWZ0Ojk1LjYzODI5Nzg3MjM0MDQlO30KLnJvdy1mbHVpZCAub2Zmc2V0MTE6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6OTMuNjE3MDIxMjc2NTk1NzQlOyptYXJnaW4tbGVmdDo5My41MTA2MzgyOTc4NzIzMiU7fQoucm93LWZsdWlkIC5vZmZzZXQxMHttYXJnaW4tbGVmdDo4Ny4yMzQwNDI1NTMxOTE0OSU7Km1hcmdpbi1sZWZ0Ojg3LjEyNzY1OTU3NDQ2ODA3JTt9Ci5yb3ctZmx1aWQgLm9mZnNldDEwOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0Ojg1LjEwNjM4Mjk3ODcyMzQlOyptYXJnaW4tbGVmdDo4NC45OTk5OTk5OTk5OTk5OSU7fQoucm93LWZsdWlkIC5vZmZzZXQ5e21hcmdpbi1sZWZ0Ojc4LjcyMzQwNDI1NTMxOTE0JTsqbWFyZ2luLWxlZnQ6NzguNjE3MDIxMjc2NTk1NzIlO30KLnJvdy1mbHVpZCAub2Zmc2V0OTpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDo3Ni41OTU3NDQ2ODA4NTEwNiU7Km1hcmdpbi1sZWZ0Ojc2LjQ4OTM2MTcwMjEyNzY0JTt9Ci5yb3ctZmx1aWQgLm9mZnNldDh7bWFyZ2luLWxlZnQ6NzAuMjEyNzY1OTU3NDQ2OCU7Km1hcmdpbi1sZWZ0OjcwLjEwNjM4Mjk3ODcyMzM5JTt9Ci5yb3ctZmx1aWQgLm9mZnNldDg6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6NjguMDg1MTA2MzgyOTc4NzIlOyptYXJnaW4tbGVmdDo2Ny45Nzg3MjM0MDQyNTUzJTt9Ci5yb3ctZmx1aWQgLm9mZnNldDd7bWFyZ2luLWxlZnQ6NjEuNzAyMTI3NjU5NTc0NDYlOyptYXJnaW4tbGVmdDo2MS41OTU3NDQ2ODA4NTEwNiU7fQoucm93LWZsdWlkIC5vZmZzZXQ3OmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjU5LjU3NDQ2ODA4NTEwNjM3NSU7Km1hcmdpbi1sZWZ0OjU5LjQ2ODA4NTEwNjM4Mjk3JTt9Ci5yb3ctZmx1aWQgLm9mZnNldDZ7bWFyZ2luLWxlZnQ6NTMuMTkxNDg5MzYxNzAyMTI1JTsqbWFyZ2luLWxlZnQ6NTMuMDg1MTA2MzgyOTc4NzE1JTt9Ci5yb3ctZmx1aWQgLm9mZnNldDY6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6NTEuMDYzODI5Nzg3MjM0MDM1JTsqbWFyZ2luLWxlZnQ6NTAuOTU3NDQ2ODA4NTEwNjMlO30KLnJvdy1mbHVpZCAub2Zmc2V0NXttYXJnaW4tbGVmdDo0NC42ODA4NTEwNjM4Mjk3OSU7Km1hcmdpbi1sZWZ0OjQ0LjU3NDQ2ODA4NTEwNjM4JTt9Ci5yb3ctZmx1aWQgLm9mZnNldDU6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6NDIuNTUzMTkxNDg5MzYxNyU7Km1hcmdpbi1sZWZ0OjQyLjQ0NjgwODUxMDYzODMlO30KLnJvdy1mbHVpZCAub2Zmc2V0NHttYXJnaW4tbGVmdDozNi4xNzAyMTI3NjU5NTc0NDQlOyptYXJnaW4tbGVmdDozNi4wNjM4Mjk3ODcyMzQwNSU7fQoucm93LWZsdWlkIC5vZmZzZXQ0OmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjM0LjA0MjU1MzE5MTQ4OTM2JTsqbWFyZ2luLWxlZnQ6MzMuOTM2MTcwMjEyNzY1OTYlO30KLnJvdy1mbHVpZCAub2Zmc2V0M3ttYXJnaW4tbGVmdDoyNy42NTk1NzQ0NjgwODUxMDQlOyptYXJnaW4tbGVmdDoyNy41NTMxOTE0ODkzNjE3JTt9Ci5yb3ctZmx1aWQgLm9mZnNldDM6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MjUuNTMxOTE0ODkzNjE3MDIlOyptYXJnaW4tbGVmdDoyNS40MjU1MzE5MTQ4OTM2MTglO30KLnJvdy1mbHVpZCAub2Zmc2V0MnttYXJnaW4tbGVmdDoxOS4xNDg5MzYxNzAyMTI3NjQlOyptYXJnaW4tbGVmdDoxOS4wNDI1NTMxOTE0ODkzNiU7fQoucm93LWZsdWlkIC5vZmZzZXQyOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjE3LjAyMTI3NjU5NTc0NDY4JTsqbWFyZ2luLWxlZnQ6MTYuOTE0ODkzNjE3MDIxMjc4JTt9Ci5yb3ctZmx1aWQgLm9mZnNldDF7bWFyZ2luLWxlZnQ6MTAuNjM4Mjk3ODcyMzQwNDI1JTsqbWFyZ2luLWxlZnQ6MTAuNTMxOTE0ODkzNjE3MDIlO30KLnJvdy1mbHVpZCAub2Zmc2V0MTpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDo4LjUxMDYzODI5Nzg3MjM0JTsqbWFyZ2luLWxlZnQ6OC40MDQyNTUzMTkxNDg5MzglO30KW2NsYXNzKj0ic3BhbiJdLmhpZGUsLnJvdy1mbHVpZCBbY2xhc3MqPSJzcGFuIl0uaGlkZXtkaXNwbGF5Om5vbmU7fQpbY2xhc3MqPSJzcGFuIl0ucHVsbC1yaWdodCwucm93LWZsdWlkIFtjbGFzcyo9InNwYW4iXS5wdWxsLXJpZ2h0e2Zsb2F0OnJpZ2h0O30KLmNvbnRhaW5lcnttYXJnaW4tcmlnaHQ6YXV0bzttYXJnaW4tbGVmdDphdXRvOyp6b29tOjE7fS5jb250YWluZXI6YmVmb3JlLC5jb250YWluZXI6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OiIiO2xpbmUtaGVpZ2h0OjA7fQouY29udGFpbmVyOmFmdGVye2NsZWFyOmJvdGg7fQouY29udGFpbmVyLWZsdWlke3BhZGRpbmctcmlnaHQ6MjBweDtwYWRkaW5nLWxlZnQ6MjBweDsqem9vbToxO30uY29udGFpbmVyLWZsdWlkOmJlZm9yZSwuY29udGFpbmVyLWZsdWlkOmFmdGVye2Rpc3BsYXk6dGFibGU7Y29udGVudDoiIjtsaW5lLWhlaWdodDowO30KLmNvbnRhaW5lci1mbHVpZDphZnRlcntjbGVhcjpib3RoO30KcHttYXJnaW46MCAwIDEwcHg7fQoubGVhZHttYXJnaW4tYm90dG9tOjIwcHg7Zm9udC1zaXplOjIxcHg7Zm9udC13ZWlnaHQ6MjAwO2xpbmUtaGVpZ2h0OjMwcHg7fQpzbWFsbHtmb250LXNpemU6ODUlO30Kc3Ryb25ne2ZvbnQtd2VpZ2h0OmJvbGQ7fQplbXtmb250LXN0eWxlOml0YWxpYzt9CmNpdGV7Zm9udC1zdHlsZTpub3JtYWw7fQoubXV0ZWR7Y29sb3I6Izk5OTk5OTt9CmEubXV0ZWQ6aG92ZXIsYS5tdXRlZDpmb2N1c3tjb2xvcjojODA4MDgwO30KLnRleHQtd2FybmluZ3tjb2xvcjojYzA5ODUzO30KYS50ZXh0LXdhcm5pbmc6aG92ZXIsYS50ZXh0LXdhcm5pbmc6Zm9jdXN7Y29sb3I6I2E0N2UzYzt9Ci50ZXh0LWVycm9ye2NvbG9yOiNiOTRhNDg7fQphLnRleHQtZXJyb3I6aG92ZXIsYS50ZXh0LWVycm9yOmZvY3Vze2NvbG9yOiM5NTNiMzk7fQoudGV4dC1pbmZve2NvbG9yOiMzYTg3YWQ7fQphLnRleHQtaW5mbzpob3ZlcixhLnRleHQtaW5mbzpmb2N1c3tjb2xvcjojMmQ2OTg3O30KLnRleHQtc3VjY2Vzc3tjb2xvcjojNDY4ODQ3O30KYS50ZXh0LXN1Y2Nlc3M6aG92ZXIsYS50ZXh0LXN1Y2Nlc3M6Zm9jdXN7Y29sb3I6IzM1NjYzNTt9Ci50ZXh0LWxlZnR7dGV4dC1hbGlnbjpsZWZ0O30KLnRleHQtcmlnaHR7dGV4dC1hbGlnbjpyaWdodDt9Ci50ZXh0LWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlcjt9CmgxLGgyLGgzLGg0LGg1LGg2e21hcmdpbjoxMHB4IDA7Zm9udC1mYW1pbHk6aW5oZXJpdDtmb250LXdlaWdodDpib2xkO2xpbmUtaGVpZ2h0OjIwcHg7Y29sb3I6aW5oZXJpdDt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZWxlZ2liaWxpdHk7fWgxIHNtYWxsLGgyIHNtYWxsLGgzIHNtYWxsLGg0IHNtYWxsLGg1IHNtYWxsLGg2IHNtYWxse2ZvbnQtd2VpZ2h0Om5vcm1hbDtsaW5lLWhlaWdodDoxO2NvbG9yOiM5OTk5OTk7fQpoMSxoMixoM3tsaW5lLWhlaWdodDo0MHB4O30KaDF7Zm9udC1zaXplOjM4LjVweDt9Cmgye2ZvbnQtc2l6ZTozMS41cHg7fQpoM3tmb250LXNpemU6MjQuNXB4O30KaDR7Zm9udC1zaXplOjE3LjVweDt9Cmg1e2ZvbnQtc2l6ZToxNHB4O30KaDZ7Zm9udC1zaXplOjExLjlweDt9CmgxIHNtYWxse2ZvbnQtc2l6ZToyNC41cHg7fQpoMiBzbWFsbHtmb250LXNpemU6MTcuNXB4O30KaDMgc21hbGx7Zm9udC1zaXplOjE0cHg7fQpoNCBzbWFsbHtmb250LXNpemU6MTRweDt9Ci5wYWdlLWhlYWRlcntwYWRkaW5nLWJvdHRvbTo5cHg7bWFyZ2luOjIwcHggMCAzMHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlZWVlZWU7fQp1bCxvbHtwYWRkaW5nOjA7bWFyZ2luOjAgMCAxMHB4IDI1cHg7fQp1bCB1bCx1bCBvbCxvbCBvbCxvbCB1bHttYXJnaW4tYm90dG9tOjA7fQpsaXtsaW5lLWhlaWdodDoyMHB4O30KdWwudW5zdHlsZWQsb2wudW5zdHlsZWR7bWFyZ2luLWxlZnQ6MDtsaXN0LXN0eWxlOm5vbmU7fQp1bC5pbmxpbmUsb2wuaW5saW5le21hcmdpbi1sZWZ0OjA7bGlzdC1zdHlsZTpub25lO311bC5pbmxpbmU+bGksb2wuaW5saW5lPmxpe2Rpc3BsYXk6aW5saW5lLWJsb2NrOypkaXNwbGF5OmlubGluZTsqem9vbToxO3BhZGRpbmctbGVmdDo1cHg7cGFkZGluZy1yaWdodDo1cHg7fQpkbHttYXJnaW4tYm90dG9tOjIwcHg7fQpkdCxkZHtsaW5lLWhlaWdodDoyMHB4O30KZHR7Zm9udC13ZWlnaHQ6Ym9sZDt9CmRke21hcmdpbi1sZWZ0OjEwcHg7fQouZGwtaG9yaXpvbnRhbHsqem9vbToxO30uZGwtaG9yaXpvbnRhbDpiZWZvcmUsLmRsLWhvcml6b250YWw6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OiIiO2xpbmUtaGVpZ2h0OjA7fQouZGwtaG9yaXpvbnRhbDphZnRlcntjbGVhcjpib3RoO30KLmRsLWhvcml6b250YWwgZHR7ZmxvYXQ6bGVmdDt3aWR0aDoxNjBweDtjbGVhcjpsZWZ0O3RleHQtYWxpZ246cmlnaHQ7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO30KLmRsLWhvcml6b250YWwgZGR7bWFyZ2luLWxlZnQ6MTgwcHg7fQpocnttYXJnaW46MjBweCAwO2JvcmRlcjowO2JvcmRlci10b3A6MXB4IHNvbGlkICNlZWVlZWU7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2ZmZmZmZjt9CmFiYnJbdGl0bGVdLGFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV17Y3Vyc29yOmhlbHA7Ym9yZGVyLWJvdHRvbToxcHggZG90dGVkICM5OTk5OTk7fQphYmJyLmluaXRpYWxpc217Zm9udC1zaXplOjkwJTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7fQpibG9ja3F1b3Rle3BhZGRpbmc6MCAwIDAgMTVweDttYXJnaW46MCAwIDIwcHg7Ym9yZGVyLWxlZnQ6NXB4IHNvbGlkICNlZWVlZWU7fWJsb2NrcXVvdGUgcHttYXJnaW4tYm90dG9tOjA7Zm9udC1zaXplOjE3LjVweDtmb250LXdlaWdodDozMDA7bGluZS1oZWlnaHQ6MS4yNTt9CmJsb2NrcXVvdGUgc21hbGx7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDoyMHB4O2NvbG9yOiM5OTk5OTk7fWJsb2NrcXVvdGUgc21hbGw6YmVmb3Jle2NvbnRlbnQ6J1wyMDE0IFwwMEEwJzt9CmJsb2NrcXVvdGUucHVsbC1yaWdodHtmbG9hdDpyaWdodDtwYWRkaW5nLXJpZ2h0OjE1cHg7cGFkZGluZy1sZWZ0OjA7Ym9yZGVyLXJpZ2h0OjVweCBzb2xpZCAjZWVlZWVlO2JvcmRlci1sZWZ0OjA7fWJsb2NrcXVvdGUucHVsbC1yaWdodCBwLGJsb2NrcXVvdGUucHVsbC1yaWdodCBzbWFsbHt0ZXh0LWFsaWduOnJpZ2h0O30KYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHNtYWxsOmJlZm9yZXtjb250ZW50OicnO30KYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHNtYWxsOmFmdGVye2NvbnRlbnQ6J1wwMEEwIFwyMDE0Jzt9CnE6YmVmb3JlLHE6YWZ0ZXIsYmxvY2txdW90ZTpiZWZvcmUsYmxvY2txdW90ZTphZnRlcntjb250ZW50OiIiO30KYWRkcmVzc3tkaXNwbGF5OmJsb2NrO21hcmdpbi1ib3R0b206MjBweDtmb250LXN0eWxlOm5vcm1hbDtsaW5lLWhlaWdodDoyMHB4O30KY29kZSxwcmV7cGFkZGluZzowIDNweCAycHg7Zm9udC1mYW1pbHk6TW9uYWNvLE1lbmxvLENvbnNvbGFzLCJDb3VyaWVyIE5ldyIsbW9ub3NwYWNlO2ZvbnQtc2l6ZToxMnB4O2NvbG9yOiMzMzMzMzM7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjNweDstbW96LWJvcmRlci1yYWRpdXM6M3B4O2JvcmRlci1yYWRpdXM6M3B4O30KY29kZXtwYWRkaW5nOjJweCA0cHg7Y29sb3I6I2QxNDtiYWNrZ3JvdW5kLWNvbG9yOiNmN2Y3Zjk7Ym9yZGVyOjFweCBzb2xpZCAjZTFlMWU4O3doaXRlLXNwYWNlOm5vd3JhcDt9CnByZXtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6OS41cHg7bWFyZ2luOjAgMCAxMHB4O2ZvbnQtc2l6ZToxM3B4O2xpbmUtaGVpZ2h0OjIwcHg7d29yZC1icmVhazpicmVhay1hbGw7d29yZC13cmFwOmJyZWFrLXdvcmQ7d2hpdGUtc3BhY2U6cHJlO3doaXRlLXNwYWNlOnByZS13cmFwO2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtib3JkZXI6MXB4IHNvbGlkICNjY2M7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTUpOy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDtib3JkZXItcmFkaXVzOjRweDt9cHJlLnByZXR0eXByaW50e21hcmdpbi1ib3R0b206MjBweDt9CnByZSBjb2Rle3BhZGRpbmc6MDtjb2xvcjppbmhlcml0O3doaXRlLXNwYWNlOnByZTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjowO30KLnByZS1zY3JvbGxhYmxle21heC1oZWlnaHQ6MzQwcHg7b3ZlcmZsb3cteTpzY3JvbGw7fQoubGFiZWwsLmJhZGdle2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6MnB4IDRweDtmb250LXNpemU6MTEuODQ0cHg7Zm9udC13ZWlnaHQ6Ym9sZDtsaW5lLWhlaWdodDoxNHB4O2NvbG9yOiNmZmZmZmY7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtc2hhZG93OjAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7YmFja2dyb3VuZC1jb2xvcjojOTk5OTk5O30KLmxhYmVsey13ZWJraXQtYm9yZGVyLXJhZGl1czozcHg7LW1vei1ib3JkZXItcmFkaXVzOjNweDtib3JkZXItcmFkaXVzOjNweDt9Ci5iYWRnZXtwYWRkaW5nLWxlZnQ6OXB4O3BhZGRpbmctcmlnaHQ6OXB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo5cHg7LW1vei1ib3JkZXItcmFkaXVzOjlweDtib3JkZXItcmFkaXVzOjlweDt9Ci5sYWJlbDplbXB0eSwuYmFkZ2U6ZW1wdHl7ZGlzcGxheTpub25lO30KYS5sYWJlbDpob3ZlcixhLmxhYmVsOmZvY3VzLGEuYmFkZ2U6aG92ZXIsYS5iYWRnZTpmb2N1c3tjb2xvcjojZmZmZmZmO3RleHQtZGVjb3JhdGlvbjpub25lO2N1cnNvcjpwb2ludGVyO30KLmxhYmVsLWltcG9ydGFudCwuYmFkZ2UtaW1wb3J0YW50e2JhY2tncm91bmQtY29sb3I6I2I5NGE0ODt9Ci5sYWJlbC1pbXBvcnRhbnRbaHJlZl0sLmJhZGdlLWltcG9ydGFudFtocmVmXXtiYWNrZ3JvdW5kLWNvbG9yOiM5NTNiMzk7fQoubGFiZWwtd2FybmluZywuYmFkZ2Utd2FybmluZ3tiYWNrZ3JvdW5kLWNvbG9yOiNmODk0MDY7fQoubGFiZWwtd2FybmluZ1tocmVmXSwuYmFkZ2Utd2FybmluZ1tocmVmXXtiYWNrZ3JvdW5kLWNvbG9yOiNjNjc2MDU7fQoubGFiZWwtc3VjY2VzcywuYmFkZ2Utc3VjY2Vzc3tiYWNrZ3JvdW5kLWNvbG9yOiM0Njg4NDc7fQoubGFiZWwtc3VjY2Vzc1tocmVmXSwuYmFkZ2Utc3VjY2Vzc1tocmVmXXtiYWNrZ3JvdW5kLWNvbG9yOiMzNTY2MzU7fQoubGFiZWwtaW5mbywuYmFkZ2UtaW5mb3tiYWNrZ3JvdW5kLWNvbG9yOiMzYTg3YWQ7fQoubGFiZWwtaW5mb1tocmVmXSwuYmFkZ2UtaW5mb1tocmVmXXtiYWNrZ3JvdW5kLWNvbG9yOiMyZDY5ODc7fQoubGFiZWwtaW52ZXJzZSwuYmFkZ2UtaW52ZXJzZXtiYWNrZ3JvdW5kLWNvbG9yOiMzMzMzMzM7fQoubGFiZWwtaW52ZXJzZVtocmVmXSwuYmFkZ2UtaW52ZXJzZVtocmVmXXtiYWNrZ3JvdW5kLWNvbG9yOiMxYTFhMWE7fQouYnRuIC5sYWJlbCwuYnRuIC5iYWRnZXtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6LTFweDt9Ci5idG4tbWluaSAubGFiZWwsLmJ0bi1taW5pIC5iYWRnZXt0b3A6MDt9CnRhYmxle21heC13aWR0aDoxMDAlO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjA7fQoudGFibGV7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjIwcHg7fS50YWJsZSB0aCwudGFibGUgdGR7cGFkZGluZzo4cHg7bGluZS1oZWlnaHQ6MjBweDt0ZXh0LWFsaWduOmxlZnQ7dmVydGljYWwtYWxpZ246dG9wO2JvcmRlci10b3A6MXB4IHNvbGlkICNkZGRkZGQ7fQoudGFibGUgdGh7Zm9udC13ZWlnaHQ6Ym9sZDt9Ci50YWJsZSB0aGVhZCB0aHt2ZXJ0aWNhbC1hbGlnbjpib3R0b207fQoudGFibGUgY2FwdGlvbit0aGVhZCB0cjpmaXJzdC1jaGlsZCB0aCwudGFibGUgY2FwdGlvbit0aGVhZCB0cjpmaXJzdC1jaGlsZCB0ZCwudGFibGUgY29sZ3JvdXArdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGgsLnRhYmxlIGNvbGdyb3VwK3RoZWFkIHRyOmZpcnN0LWNoaWxkIHRkLC50YWJsZSB0aGVhZDpmaXJzdC1jaGlsZCB0cjpmaXJzdC1jaGlsZCB0aCwudGFibGUgdGhlYWQ6Zmlyc3QtY2hpbGQgdHI6Zmlyc3QtY2hpbGQgdGR7Ym9yZGVyLXRvcDowO30KLnRhYmxlIHRib2R5K3Rib2R5e2JvcmRlci10b3A6MnB4IHNvbGlkICNkZGRkZGQ7fQoudGFibGUgLnRhYmxle2JhY2tncm91bmQtY29sb3I6I2ZmZmZmZjt9Ci50YWJsZS1jb25kZW5zZWQgdGgsLnRhYmxlLWNvbmRlbnNlZCB0ZHtwYWRkaW5nOjRweCA1cHg7fQoudGFibGUtYm9yZGVyZWR7Ym9yZGVyOjFweCBzb2xpZCAjZGRkZGRkO2JvcmRlci1jb2xsYXBzZTpzZXBhcmF0ZTsqYm9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1sZWZ0OjA7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXM6NHB4O2JvcmRlci1yYWRpdXM6NHB4O30udGFibGUtYm9yZGVyZWQgdGgsLnRhYmxlLWJvcmRlcmVkIHRke2JvcmRlci1sZWZ0OjFweCBzb2xpZCAjZGRkZGRkO30KLnRhYmxlLWJvcmRlcmVkIGNhcHRpb24rdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGgsLnRhYmxlLWJvcmRlcmVkIGNhcHRpb24rdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGgsLnRhYmxlLWJvcmRlcmVkIGNhcHRpb24rdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGQsLnRhYmxlLWJvcmRlcmVkIGNvbGdyb3VwK3RoZWFkIHRyOmZpcnN0LWNoaWxkIHRoLC50YWJsZS1ib3JkZXJlZCBjb2xncm91cCt0Ym9keSB0cjpmaXJzdC1jaGlsZCB0aCwudGFibGUtYm9yZGVyZWQgY29sZ3JvdXArdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGQsLnRhYmxlLWJvcmRlcmVkIHRoZWFkOmZpcnN0LWNoaWxkIHRyOmZpcnN0LWNoaWxkIHRoLC50YWJsZS1ib3JkZXJlZCB0Ym9keTpmaXJzdC1jaGlsZCB0cjpmaXJzdC1jaGlsZCB0aCwudGFibGUtYm9yZGVyZWQgdGJvZHk6Zmlyc3QtY2hpbGQgdHI6Zmlyc3QtY2hpbGQgdGR7Ym9yZGVyLXRvcDowO30KLnRhYmxlLWJvcmRlcmVkIHRoZWFkOmZpcnN0LWNoaWxkIHRyOmZpcnN0LWNoaWxkPnRoOmZpcnN0LWNoaWxkLC50YWJsZS1ib3JkZXJlZCB0Ym9keTpmaXJzdC1jaGlsZCB0cjpmaXJzdC1jaGlsZD50ZDpmaXJzdC1jaGlsZCwudGFibGUtYm9yZGVyZWQgdGJvZHk6Zmlyc3QtY2hpbGQgdHI6Zmlyc3QtY2hpbGQ+dGg6Zmlyc3QtY2hpbGR7LXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXMtdG9wbGVmdDo0cHg7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo0cHg7fQoudGFibGUtYm9yZGVyZWQgdGhlYWQ6Zmlyc3QtY2hpbGQgdHI6Zmlyc3QtY2hpbGQ+dGg6bGFzdC1jaGlsZCwudGFibGUtYm9yZGVyZWQgdGJvZHk6Zmlyc3QtY2hpbGQgdHI6Zmlyc3QtY2hpbGQ+dGQ6bGFzdC1jaGlsZCwudGFibGUtYm9yZGVyZWQgdGJvZHk6Zmlyc3QtY2hpbGQgdHI6Zmlyc3QtY2hpbGQ+dGg6bGFzdC1jaGlsZHstd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXMtdG9wcmlnaHQ6NHB4O2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjRweDt9Ci50YWJsZS1ib3JkZXJlZCB0aGVhZDpsYXN0LWNoaWxkIHRyOmxhc3QtY2hpbGQ+dGg6Zmlyc3QtY2hpbGQsLnRhYmxlLWJvcmRlcmVkIHRib2R5Omxhc3QtY2hpbGQgdHI6bGFzdC1jaGlsZD50ZDpmaXJzdC1jaGlsZCwudGFibGUtYm9yZGVyZWQgdGJvZHk6bGFzdC1jaGlsZCB0cjpsYXN0LWNoaWxkPnRoOmZpcnN0LWNoaWxkLC50YWJsZS1ib3JkZXJlZCB0Zm9vdDpsYXN0LWNoaWxkIHRyOmxhc3QtY2hpbGQ+dGQ6Zmlyc3QtY2hpbGQsLnRhYmxlLWJvcmRlcmVkIHRmb290Omxhc3QtY2hpbGQgdHI6bGFzdC1jaGlsZD50aDpmaXJzdC1jaGlsZHstd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6NHB4Oy1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21sZWZ0OjRweDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjRweDt9Ci50YWJsZS1ib3JkZXJlZCB0aGVhZDpsYXN0LWNoaWxkIHRyOmxhc3QtY2hpbGQ+dGg6bGFzdC1jaGlsZCwudGFibGUtYm9yZGVyZWQgdGJvZHk6bGFzdC1jaGlsZCB0cjpsYXN0LWNoaWxkPnRkOmxhc3QtY2hpbGQsLnRhYmxlLWJvcmRlcmVkIHRib2R5Omxhc3QtY2hpbGQgdHI6bGFzdC1jaGlsZD50aDpsYXN0LWNoaWxkLC50YWJsZS1ib3JkZXJlZCB0Zm9vdDpsYXN0LWNoaWxkIHRyOmxhc3QtY2hpbGQ+dGQ6bGFzdC1jaGlsZCwudGFibGUtYm9yZGVyZWQgdGZvb3Q6bGFzdC1jaGlsZCB0cjpsYXN0LWNoaWxkPnRoOmxhc3QtY2hpbGR7LXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OjRweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo0cHg7fQoudGFibGUtYm9yZGVyZWQgdGZvb3QrdGJvZHk6bGFzdC1jaGlsZCB0cjpsYXN0LWNoaWxkIHRkOmZpcnN0LWNoaWxkey13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowOy1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21sZWZ0OjA7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowO30KLnRhYmxlLWJvcmRlcmVkIHRmb290K3Rib2R5Omxhc3QtY2hpbGQgdHI6bGFzdC1jaGlsZCB0ZDpsYXN0LWNoaWxkey13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MDstbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowO30KLnRhYmxlLWJvcmRlcmVkIGNhcHRpb24rdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQsLnRhYmxlLWJvcmRlcmVkIGNhcHRpb24rdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGQ6Zmlyc3QtY2hpbGQsLnRhYmxlLWJvcmRlcmVkIGNvbGdyb3VwK3RoZWFkIHRyOmZpcnN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkLC50YWJsZS1ib3JkZXJlZCBjb2xncm91cCt0Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZDpmaXJzdC1jaGlsZHstd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6NHB4Oy1tb3otYm9yZGVyLXJhZGl1cy10b3BsZWZ0OjRweDtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjRweDt9Ci50YWJsZS1ib3JkZXJlZCBjYXB0aW9uK3RoZWFkIHRyOmZpcnN0LWNoaWxkIHRoOmxhc3QtY2hpbGQsLnRhYmxlLWJvcmRlcmVkIGNhcHRpb24rdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCwudGFibGUtYm9yZGVyZWQgY29sZ3JvdXArdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCwudGFibGUtYm9yZGVyZWQgY29sZ3JvdXArdGJvZHkgdHI6Zmlyc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZHstd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXMtdG9wcmlnaHQ6NHB4O2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjRweDt9Ci50YWJsZS1zdHJpcGVkIHRib2R5PnRyOm50aC1jaGlsZChvZGQpPnRkLC50YWJsZS1zdHJpcGVkIHRib2R5PnRyOm50aC1jaGlsZChvZGQpPnRoe2JhY2tncm91bmQtY29sb3I6I2Y5ZjlmOTt9Ci50YWJsZS1ob3ZlciB0Ym9keSB0cjpob3Zlcj50ZCwudGFibGUtaG92ZXIgdGJvZHkgdHI6aG92ZXI+dGh7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O30KdGFibGUgdGRbY2xhc3MqPSJzcGFuIl0sdGFibGUgdGhbY2xhc3MqPSJzcGFuIl0sLnJvdy1mbHVpZCB0YWJsZSB0ZFtjbGFzcyo9InNwYW4iXSwucm93LWZsdWlkIHRhYmxlIHRoW2NsYXNzKj0ic3BhbiJde2Rpc3BsYXk6dGFibGUtY2VsbDtmbG9hdDpub25lO21hcmdpbi1sZWZ0OjA7fQoudGFibGUgdGQuc3BhbjEsLnRhYmxlIHRoLnNwYW4xe2Zsb2F0Om5vbmU7d2lkdGg6NDRweDttYXJnaW4tbGVmdDowO30KLnRhYmxlIHRkLnNwYW4yLC50YWJsZSB0aC5zcGFuMntmbG9hdDpub25lO3dpZHRoOjEyNHB4O21hcmdpbi1sZWZ0OjA7fQoudGFibGUgdGQuc3BhbjMsLnRhYmxlIHRoLnNwYW4ze2Zsb2F0Om5vbmU7d2lkdGg6MjA0cHg7bWFyZ2luLWxlZnQ6MDt9Ci50YWJsZSB0ZC5zcGFuNCwudGFibGUgdGguc3BhbjR7ZmxvYXQ6bm9uZTt3aWR0aDoyODRweDttYXJnaW4tbGVmdDowO30KLnRhYmxlIHRkLnNwYW41LC50YWJsZSB0aC5zcGFuNXtmbG9hdDpub25lO3dpZHRoOjM2NHB4O21hcmdpbi1sZWZ0OjA7fQoudGFibGUgdGQuc3BhbjYsLnRhYmxlIHRoLnNwYW42e2Zsb2F0Om5vbmU7d2lkdGg6NDQ0cHg7bWFyZ2luLWxlZnQ6MDt9Ci50YWJsZSB0ZC5zcGFuNywudGFibGUgdGguc3Bhbjd7ZmxvYXQ6bm9uZTt3aWR0aDo1MjRweDttYXJnaW4tbGVmdDowO30KLnRhYmxlIHRkLnNwYW44LC50YWJsZSB0aC5zcGFuOHtmbG9hdDpub25lO3dpZHRoOjYwNHB4O21hcmdpbi1sZWZ0OjA7fQoudGFibGUgdGQuc3BhbjksLnRhYmxlIHRoLnNwYW45e2Zsb2F0Om5vbmU7d2lkdGg6Njg0cHg7bWFyZ2luLWxlZnQ6MDt9Ci50YWJsZSB0ZC5zcGFuMTAsLnRhYmxlIHRoLnNwYW4xMHtmbG9hdDpub25lO3dpZHRoOjc2NHB4O21hcmdpbi1sZWZ0OjA7fQoudGFibGUgdGQuc3BhbjExLC50YWJsZSB0aC5zcGFuMTF7ZmxvYXQ6bm9uZTt3aWR0aDo4NDRweDttYXJnaW4tbGVmdDowO30KLnRhYmxlIHRkLnNwYW4xMiwudGFibGUgdGguc3BhbjEye2Zsb2F0Om5vbmU7d2lkdGg6OTI0cHg7bWFyZ2luLWxlZnQ6MDt9Ci50YWJsZSB0Ym9keSB0ci5zdWNjZXNzPnRke2JhY2tncm91bmQtY29sb3I6I2RmZjBkODt9Ci50YWJsZSB0Ym9keSB0ci5lcnJvcj50ZHtiYWNrZ3JvdW5kLWNvbG9yOiNmMmRlZGU7fQoudGFibGUgdGJvZHkgdHIud2FybmluZz50ZHtiYWNrZ3JvdW5kLWNvbG9yOiNmY2Y4ZTM7fQoudGFibGUgdGJvZHkgdHIuaW5mbz50ZHtiYWNrZ3JvdW5kLWNvbG9yOiNkOWVkZjc7fQoudGFibGUtaG92ZXIgdGJvZHkgdHIuc3VjY2Vzczpob3Zlcj50ZHtiYWNrZ3JvdW5kLWNvbG9yOiNkMGU5YzY7fQoudGFibGUtaG92ZXIgdGJvZHkgdHIuZXJyb3I6aG92ZXI+dGR7YmFja2dyb3VuZC1jb2xvcjojZWJjY2NjO30KLnRhYmxlLWhvdmVyIHRib2R5IHRyLndhcm5pbmc6aG92ZXI+dGR7YmFja2dyb3VuZC1jb2xvcjojZmFmMmNjO30KLnRhYmxlLWhvdmVyIHRib2R5IHRyLmluZm86aG92ZXI+dGR7YmFja2dyb3VuZC1jb2xvcjojYzRlM2YzO30KZm9ybXttYXJnaW46MCAwIDIwcHg7fQpmaWVsZHNldHtwYWRkaW5nOjA7bWFyZ2luOjA7Ym9yZGVyOjA7fQpsZWdlbmR7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO3BhZGRpbmc6MDttYXJnaW4tYm90dG9tOjIwcHg7Zm9udC1zaXplOjIxcHg7bGluZS1oZWlnaHQ6NDBweDtjb2xvcjojMzMzMzMzO2JvcmRlcjowO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNlNWU1ZTU7fWxlZ2VuZCBzbWFsbHtmb250LXNpemU6MTVweDtjb2xvcjojOTk5OTk5O30KbGFiZWwsaW5wdXQsYnV0dG9uLHNlbGVjdCx0ZXh0YXJlYXtmb250LXNpemU6MTRweDtmb250LXdlaWdodDpub3JtYWw7bGluZS1oZWlnaHQ6MjBweDt9CmlucHV0LGJ1dHRvbixzZWxlY3QsdGV4dGFyZWF7Zm9udC1mYW1pbHk6IkhlbHZldGljYSBOZXVlIixIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjt9CmxhYmVse2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJvdHRvbTo1cHg7fQpzZWxlY3QsdGV4dGFyZWEsaW5wdXRbdHlwZT0idGV4dCJdLGlucHV0W3R5cGU9InBhc3N3b3JkIl0saW5wdXRbdHlwZT0iZGF0ZXRpbWUiXSxpbnB1dFt0eXBlPSJkYXRldGltZS1sb2NhbCJdLGlucHV0W3R5cGU9ImRhdGUiXSxpbnB1dFt0eXBlPSJtb250aCJdLGlucHV0W3R5cGU9InRpbWUiXSxpbnB1dFt0eXBlPSJ3ZWVrIl0saW5wdXRbdHlwZT0ibnVtYmVyIl0saW5wdXRbdHlwZT0iZW1haWwiXSxpbnB1dFt0eXBlPSJ1cmwiXSxpbnB1dFt0eXBlPSJzZWFyY2giXSxpbnB1dFt0eXBlPSJ0ZWwiXSxpbnB1dFt0eXBlPSJjb2xvciJdLC51bmVkaXRhYmxlLWlucHV0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoyMHB4O3BhZGRpbmc6NHB4IDZweDttYXJnaW4tYm90dG9tOjEwcHg7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MjBweDtjb2xvcjojNTU1NTU1Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDtib3JkZXItcmFkaXVzOjRweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7fQppbnB1dCx0ZXh0YXJlYSwudW5lZGl0YWJsZS1pbnB1dHt3aWR0aDoyMDZweDt9CnRleHRhcmVhe2hlaWdodDphdXRvO30KdGV4dGFyZWEsaW5wdXRbdHlwZT0idGV4dCJdLGlucHV0W3R5cGU9InBhc3N3b3JkIl0saW5wdXRbdHlwZT0iZGF0ZXRpbWUiXSxpbnB1dFt0eXBlPSJkYXRldGltZS1sb2NhbCJdLGlucHV0W3R5cGU9ImRhdGUiXSxpbnB1dFt0eXBlPSJtb250aCJdLGlucHV0W3R5cGU9InRpbWUiXSxpbnB1dFt0eXBlPSJ3ZWVrIl0saW5wdXRbdHlwZT0ibnVtYmVyIl0saW5wdXRbdHlwZT0iZW1haWwiXSxpbnB1dFt0eXBlPSJ1cmwiXSxpbnB1dFt0eXBlPSJzZWFyY2giXSxpbnB1dFt0eXBlPSJ0ZWwiXSxpbnB1dFt0eXBlPSJjb2xvciJdLC51bmVkaXRhYmxlLWlucHV0e2JhY2tncm91bmQtY29sb3I6I2ZmZmZmZjtib3JkZXI6MXB4IHNvbGlkICNjY2NjY2M7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTstbW96LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOy13ZWJraXQtdHJhbnNpdGlvbjpib3JkZXIgbGluZWFyIC4ycywgYm94LXNoYWRvdyBsaW5lYXIgLjJzOy1tb3otdHJhbnNpdGlvbjpib3JkZXIgbGluZWFyIC4ycywgYm94LXNoYWRvdyBsaW5lYXIgLjJzOy1vLXRyYW5zaXRpb246Ym9yZGVyIGxpbmVhciAuMnMsIGJveC1zaGFkb3cgbGluZWFyIC4yczt0cmFuc2l0aW9uOmJvcmRlciBsaW5lYXIgLjJzLCBib3gtc2hhZG93IGxpbmVhciAuMnM7fXRleHRhcmVhOmZvY3VzLGlucHV0W3R5cGU9InRleHQiXTpmb2N1cyxpbnB1dFt0eXBlPSJwYXNzd29yZCJdOmZvY3VzLGlucHV0W3R5cGU9ImRhdGV0aW1lIl06Zm9jdXMsaW5wdXRbdHlwZT0iZGF0ZXRpbWUtbG9jYWwiXTpmb2N1cyxpbnB1dFt0eXBlPSJkYXRlIl06Zm9jdXMsaW5wdXRbdHlwZT0ibW9udGgiXTpmb2N1cyxpbnB1dFt0eXBlPSJ0aW1lIl06Zm9jdXMsaW5wdXRbdHlwZT0id2VlayJdOmZvY3VzLGlucHV0W3R5cGU9Im51bWJlciJdOmZvY3VzLGlucHV0W3R5cGU9ImVtYWlsIl06Zm9jdXMsaW5wdXRbdHlwZT0idXJsIl06Zm9jdXMsaW5wdXRbdHlwZT0ic2VhcmNoIl06Zm9jdXMsaW5wdXRbdHlwZT0idGVsIl06Zm9jdXMsaW5wdXRbdHlwZT0iY29sb3IiXTpmb2N1cywudW5lZGl0YWJsZS1pbnB1dDpmb2N1c3tib3JkZXItY29sb3I6cmdiYSg4MiwgMTY4LCAyMzYsIDAuOCk7b3V0bGluZTowO291dGxpbmU6dGhpbiBkb3R0ZWQgXDk7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgOHB4IHJnYmEoODIsMTY4LDIzNiwuNik7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgOHB4IHJnYmEoODIsMTY4LDIzNiwuNik7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSwgMCAwIDhweCByZ2JhKDgyLDE2OCwyMzYsLjYpO30KaW5wdXRbdHlwZT0icmFkaW8iXSxpbnB1dFt0eXBlPSJjaGVja2JveCJde21hcmdpbjo0cHggMCAwOyptYXJnaW4tdG9wOjA7bWFyZ2luLXRvcDoxcHggXDk7bGluZS1oZWlnaHQ6bm9ybWFsO30KaW5wdXRbdHlwZT0iZmlsZSJdLGlucHV0W3R5cGU9ImltYWdlIl0saW5wdXRbdHlwZT0ic3VibWl0Il0saW5wdXRbdHlwZT0icmVzZXQiXSxpbnB1dFt0eXBlPSJidXR0b24iXSxpbnB1dFt0eXBlPSJyYWRpbyJdLGlucHV0W3R5cGU9ImNoZWNrYm94Il17d2lkdGg6YXV0bzt9CnNlbGVjdCxpbnB1dFt0eXBlPSJmaWxlIl17aGVpZ2h0OjMwcHg7Km1hcmdpbi10b3A6NHB4O2xpbmUtaGVpZ2h0OjMwcHg7fQpzZWxlY3R7d2lkdGg6MjIwcHg7Ym9yZGVyOjFweCBzb2xpZCAjY2NjY2NjO2JhY2tncm91bmQtY29sb3I6I2ZmZmZmZjt9CnNlbGVjdFttdWx0aXBsZV0sc2VsZWN0W3NpemVde2hlaWdodDphdXRvO30Kc2VsZWN0OmZvY3VzLGlucHV0W3R5cGU9ImZpbGUiXTpmb2N1cyxpbnB1dFt0eXBlPSJyYWRpbyJdOmZvY3VzLGlucHV0W3R5cGU9ImNoZWNrYm94Il06Zm9jdXN7b3V0bGluZTp0aGluIGRvdHRlZCAjMzMzO291dGxpbmU6NXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO291dGxpbmUtb2Zmc2V0Oi0ycHg7fQoudW5lZGl0YWJsZS1pbnB1dCwudW5lZGl0YWJsZS10ZXh0YXJlYXtjb2xvcjojOTk5OTk5O2JhY2tncm91bmQtY29sb3I6I2ZjZmNmYztib3JkZXItY29sb3I6I2NjY2NjYzstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4wMjUpOy1tb3otYm94LXNoYWRvdzppbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjAyNSk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjAyNSk7Y3Vyc29yOm5vdC1hbGxvd2VkO30KLnVuZWRpdGFibGUtaW5wdXR7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt9Ci51bmVkaXRhYmxlLXRleHRhcmVhe3dpZHRoOmF1dG87aGVpZ2h0OmF1dG87fQppbnB1dDotbW96LXBsYWNlaG9sZGVyLHRleHRhcmVhOi1tb3otcGxhY2Vob2xkZXJ7Y29sb3I6Izk5OTk5OTt9CmlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcix0ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6Izk5OTk5OTt9CmlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLHRleHRhcmVhOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOiM5OTk5OTk7fQoucmFkaW8sLmNoZWNrYm94e21pbi1oZWlnaHQ6MjBweDtwYWRkaW5nLWxlZnQ6MjBweDt9Ci5yYWRpbyBpbnB1dFt0eXBlPSJyYWRpbyJdLC5jaGVja2JveCBpbnB1dFt0eXBlPSJjaGVja2JveCJde2Zsb2F0OmxlZnQ7bWFyZ2luLWxlZnQ6LTIwcHg7fQouY29udHJvbHM+LnJhZGlvOmZpcnN0LWNoaWxkLC5jb250cm9scz4uY2hlY2tib3g6Zmlyc3QtY2hpbGR7cGFkZGluZy10b3A6NXB4O30KLnJhZGlvLmlubGluZSwuY2hlY2tib3guaW5saW5le2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmctdG9wOjVweDttYXJnaW4tYm90dG9tOjA7dmVydGljYWwtYWxpZ246bWlkZGxlO30KLnJhZGlvLmlubGluZSsucmFkaW8uaW5saW5lLC5jaGVja2JveC5pbmxpbmUrLmNoZWNrYm94LmlubGluZXttYXJnaW4tbGVmdDoxMHB4O30KLmlucHV0LW1pbml7d2lkdGg6NjBweDt9Ci5pbnB1dC1zbWFsbHt3aWR0aDo5MHB4O30KLmlucHV0LW1lZGl1bXt3aWR0aDoxNTBweDt9Ci5pbnB1dC1sYXJnZXt3aWR0aDoyMTBweDt9Ci5pbnB1dC14bGFyZ2V7d2lkdGg6MjcwcHg7fQouaW5wdXQteHhsYXJnZXt3aWR0aDo1MzBweDt9CmlucHV0W2NsYXNzKj0ic3BhbiJdLHNlbGVjdFtjbGFzcyo9InNwYW4iXSx0ZXh0YXJlYVtjbGFzcyo9InNwYW4iXSwudW5lZGl0YWJsZS1pbnB1dFtjbGFzcyo9InNwYW4iXSwucm93LWZsdWlkIGlucHV0W2NsYXNzKj0ic3BhbiJdLC5yb3ctZmx1aWQgc2VsZWN0W2NsYXNzKj0ic3BhbiJdLC5yb3ctZmx1aWQgdGV4dGFyZWFbY2xhc3MqPSJzcGFuIl0sLnJvdy1mbHVpZCAudW5lZGl0YWJsZS1pbnB1dFtjbGFzcyo9InNwYW4iXXtmbG9hdDpub25lO21hcmdpbi1sZWZ0OjA7fQouaW5wdXQtYXBwZW5kIGlucHV0W2NsYXNzKj0ic3BhbiJdLC5pbnB1dC1hcHBlbmQgLnVuZWRpdGFibGUtaW5wdXRbY2xhc3MqPSJzcGFuIl0sLmlucHV0LXByZXBlbmQgaW5wdXRbY2xhc3MqPSJzcGFuIl0sLmlucHV0LXByZXBlbmQgLnVuZWRpdGFibGUtaW5wdXRbY2xhc3MqPSJzcGFuIl0sLnJvdy1mbHVpZCBpbnB1dFtjbGFzcyo9InNwYW4iXSwucm93LWZsdWlkIHNlbGVjdFtjbGFzcyo9InNwYW4iXSwucm93LWZsdWlkIHRleHRhcmVhW2NsYXNzKj0ic3BhbiJdLC5yb3ctZmx1aWQgLnVuZWRpdGFibGUtaW5wdXRbY2xhc3MqPSJzcGFuIl0sLnJvdy1mbHVpZCAuaW5wdXQtcHJlcGVuZCBbY2xhc3MqPSJzcGFuIl0sLnJvdy1mbHVpZCAuaW5wdXQtYXBwZW5kIFtjbGFzcyo9InNwYW4iXXtkaXNwbGF5OmlubGluZS1ibG9jazt9CmlucHV0LHRleHRhcmVhLC51bmVkaXRhYmxlLWlucHV0e21hcmdpbi1sZWZ0OjA7fQouY29udHJvbHMtcm93IFtjbGFzcyo9InNwYW4iXStbY2xhc3MqPSJzcGFuIl17bWFyZ2luLWxlZnQ6MjBweDt9CmlucHV0LnNwYW4xMix0ZXh0YXJlYS5zcGFuMTIsLnVuZWRpdGFibGUtaW5wdXQuc3BhbjEye3dpZHRoOjkyNnB4O30KaW5wdXQuc3BhbjExLHRleHRhcmVhLnNwYW4xMSwudW5lZGl0YWJsZS1pbnB1dC5zcGFuMTF7d2lkdGg6ODQ2cHg7fQppbnB1dC5zcGFuMTAsdGV4dGFyZWEuc3BhbjEwLC51bmVkaXRhYmxlLWlucHV0LnNwYW4xMHt3aWR0aDo3NjZweDt9CmlucHV0LnNwYW45LHRleHRhcmVhLnNwYW45LC51bmVkaXRhYmxlLWlucHV0LnNwYW45e3dpZHRoOjY4NnB4O30KaW5wdXQuc3BhbjgsdGV4dGFyZWEuc3BhbjgsLnVuZWRpdGFibGUtaW5wdXQuc3Bhbjh7d2lkdGg6NjA2cHg7fQppbnB1dC5zcGFuNyx0ZXh0YXJlYS5zcGFuNywudW5lZGl0YWJsZS1pbnB1dC5zcGFuN3t3aWR0aDo1MjZweDt9CmlucHV0LnNwYW42LHRleHRhcmVhLnNwYW42LC51bmVkaXRhYmxlLWlucHV0LnNwYW42e3dpZHRoOjQ0NnB4O30KaW5wdXQuc3BhbjUsdGV4dGFyZWEuc3BhbjUsLnVuZWRpdGFibGUtaW5wdXQuc3BhbjV7d2lkdGg6MzY2cHg7fQppbnB1dC5zcGFuNCx0ZXh0YXJlYS5zcGFuNCwudW5lZGl0YWJsZS1pbnB1dC5zcGFuNHt3aWR0aDoyODZweDt9CmlucHV0LnNwYW4zLHRleHRhcmVhLnNwYW4zLC51bmVkaXRhYmxlLWlucHV0LnNwYW4ze3dpZHRoOjIwNnB4O30KaW5wdXQuc3BhbjIsdGV4dGFyZWEuc3BhbjIsLnVuZWRpdGFibGUtaW5wdXQuc3BhbjJ7d2lkdGg6MTI2cHg7fQppbnB1dC5zcGFuMSx0ZXh0YXJlYS5zcGFuMSwudW5lZGl0YWJsZS1pbnB1dC5zcGFuMXt3aWR0aDo0NnB4O30KLmNvbnRyb2xzLXJvd3sqem9vbToxO30uY29udHJvbHMtcm93OmJlZm9yZSwuY29udHJvbHMtcm93OmFmdGVye2Rpc3BsYXk6dGFibGU7Y29udGVudDoiIjtsaW5lLWhlaWdodDowO30KLmNvbnRyb2xzLXJvdzphZnRlcntjbGVhcjpib3RoO30KLmNvbnRyb2xzLXJvdyBbY2xhc3MqPSJzcGFuIl0sLnJvdy1mbHVpZCAuY29udHJvbHMtcm93IFtjbGFzcyo9InNwYW4iXXtmbG9hdDpsZWZ0O30KLmNvbnRyb2xzLXJvdyAuY2hlY2tib3hbY2xhc3MqPSJzcGFuIl0sLmNvbnRyb2xzLXJvdyAucmFkaW9bY2xhc3MqPSJzcGFuIl17cGFkZGluZy10b3A6NXB4O30KaW5wdXRbZGlzYWJsZWRdLHNlbGVjdFtkaXNhYmxlZF0sdGV4dGFyZWFbZGlzYWJsZWRdLGlucHV0W3JlYWRvbmx5XSxzZWxlY3RbcmVhZG9ubHldLHRleHRhcmVhW3JlYWRvbmx5XXtjdXJzb3I6bm90LWFsbG93ZWQ7YmFja2dyb3VuZC1jb2xvcjojZWVlZWVlO30KaW5wdXRbdHlwZT0icmFkaW8iXVtkaXNhYmxlZF0saW5wdXRbdHlwZT0iY2hlY2tib3giXVtkaXNhYmxlZF0saW5wdXRbdHlwZT0icmFkaW8iXVtyZWFkb25seV0saW5wdXRbdHlwZT0iY2hlY2tib3giXVtyZWFkb25seV17YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDt9Ci5jb250cm9sLWdyb3VwLndhcm5pbmcgLmNvbnRyb2wtbGFiZWwsLmNvbnRyb2wtZ3JvdXAud2FybmluZyAuaGVscC1ibG9jaywuY29udHJvbC1ncm91cC53YXJuaW5nIC5oZWxwLWlubGluZXtjb2xvcjojYzA5ODUzO30KLmNvbnRyb2wtZ3JvdXAud2FybmluZyAuY2hlY2tib3gsLmNvbnRyb2wtZ3JvdXAud2FybmluZyAucmFkaW8sLmNvbnRyb2wtZ3JvdXAud2FybmluZyBpbnB1dCwuY29udHJvbC1ncm91cC53YXJuaW5nIHNlbGVjdCwuY29udHJvbC1ncm91cC53YXJuaW5nIHRleHRhcmVhe2NvbG9yOiNjMDk4NTM7fQouY29udHJvbC1ncm91cC53YXJuaW5nIGlucHV0LC5jb250cm9sLWdyb3VwLndhcm5pbmcgc2VsZWN0LC5jb250cm9sLWdyb3VwLndhcm5pbmcgdGV4dGFyZWF7Ym9yZGVyLWNvbG9yOiNjMDk4NTM7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTstbW96LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpO30uY29udHJvbC1ncm91cC53YXJuaW5nIGlucHV0OmZvY3VzLC5jb250cm9sLWdyb3VwLndhcm5pbmcgc2VsZWN0OmZvY3VzLC5jb250cm9sLWdyb3VwLndhcm5pbmcgdGV4dGFyZWE6Zm9jdXN7Ym9yZGVyLWNvbG9yOiNhNDdlM2M7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwwIDAgNnB4ICNkYmM1OWU7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwwIDAgNnB4ICNkYmM1OWU7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSksMCAwIDZweCAjZGJjNTllO30KLmNvbnRyb2wtZ3JvdXAud2FybmluZyAuaW5wdXQtcHJlcGVuZCAuYWRkLW9uLC5jb250cm9sLWdyb3VwLndhcm5pbmcgLmlucHV0LWFwcGVuZCAuYWRkLW9ue2NvbG9yOiNjMDk4NTM7YmFja2dyb3VuZC1jb2xvcjojZmNmOGUzO2JvcmRlci1jb2xvcjojYzA5ODUzO30KLmNvbnRyb2wtZ3JvdXAuZXJyb3IgLmNvbnRyb2wtbGFiZWwsLmNvbnRyb2wtZ3JvdXAuZXJyb3IgLmhlbHAtYmxvY2ssLmNvbnRyb2wtZ3JvdXAuZXJyb3IgLmhlbHAtaW5saW5le2NvbG9yOiNiOTRhNDg7fQouY29udHJvbC1ncm91cC5lcnJvciAuY2hlY2tib3gsLmNvbnRyb2wtZ3JvdXAuZXJyb3IgLnJhZGlvLC5jb250cm9sLWdyb3VwLmVycm9yIGlucHV0LC5jb250cm9sLWdyb3VwLmVycm9yIHNlbGVjdCwuY29udHJvbC1ncm91cC5lcnJvciB0ZXh0YXJlYXtjb2xvcjojYjk0YTQ4O30KLmNvbnRyb2wtZ3JvdXAuZXJyb3IgaW5wdXQsLmNvbnRyb2wtZ3JvdXAuZXJyb3Igc2VsZWN0LC5jb250cm9sLWdyb3VwLmVycm9yIHRleHRhcmVhe2JvcmRlci1jb2xvcjojYjk0YTQ4Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTt9LmNvbnRyb2wtZ3JvdXAuZXJyb3IgaW5wdXQ6Zm9jdXMsLmNvbnRyb2wtZ3JvdXAuZXJyb3Igc2VsZWN0OmZvY3VzLC5jb250cm9sLWdyb3VwLmVycm9yIHRleHRhcmVhOmZvY3Vze2JvcmRlci1jb2xvcjojOTUzYjM5Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSksMCAwIDZweCAjZDU5MzkyOy1tb3otYm94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSksMCAwIDZweCAjZDU5MzkyO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLDAgMCA2cHggI2Q1OTM5Mjt9Ci5jb250cm9sLWdyb3VwLmVycm9yIC5pbnB1dC1wcmVwZW5kIC5hZGQtb24sLmNvbnRyb2wtZ3JvdXAuZXJyb3IgLmlucHV0LWFwcGVuZCAuYWRkLW9ue2NvbG9yOiNiOTRhNDg7YmFja2dyb3VuZC1jb2xvcjojZjJkZWRlO2JvcmRlci1jb2xvcjojYjk0YTQ4O30KLmNvbnRyb2wtZ3JvdXAuc3VjY2VzcyAuY29udHJvbC1sYWJlbCwuY29udHJvbC1ncm91cC5zdWNjZXNzIC5oZWxwLWJsb2NrLC5jb250cm9sLWdyb3VwLnN1Y2Nlc3MgLmhlbHAtaW5saW5le2NvbG9yOiM0Njg4NDc7fQouY29udHJvbC1ncm91cC5zdWNjZXNzIC5jaGVja2JveCwuY29udHJvbC1ncm91cC5zdWNjZXNzIC5yYWRpbywuY29udHJvbC1ncm91cC5zdWNjZXNzIGlucHV0LC5jb250cm9sLWdyb3VwLnN1Y2Nlc3Mgc2VsZWN0LC5jb250cm9sLWdyb3VwLnN1Y2Nlc3MgdGV4dGFyZWF7Y29sb3I6IzQ2ODg0Nzt9Ci5jb250cm9sLWdyb3VwLnN1Y2Nlc3MgaW5wdXQsLmNvbnRyb2wtZ3JvdXAuc3VjY2VzcyBzZWxlY3QsLmNvbnRyb2wtZ3JvdXAuc3VjY2VzcyB0ZXh0YXJlYXtib3JkZXItY29sb3I6IzQ2ODg0Nzstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpOy1tb3otYm94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7fS5jb250cm9sLWdyb3VwLnN1Y2Nlc3MgaW5wdXQ6Zm9jdXMsLmNvbnRyb2wtZ3JvdXAuc3VjY2VzcyBzZWxlY3Q6Zm9jdXMsLmNvbnRyb2wtZ3JvdXAuc3VjY2VzcyB0ZXh0YXJlYTpmb2N1c3tib3JkZXItY29sb3I6IzM1NjYzNTstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLDAgMCA2cHggIzdhYmE3YjstbW96LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLDAgMCA2cHggIzdhYmE3Yjtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KSwwIDAgNnB4ICM3YWJhN2I7fQouY29udHJvbC1ncm91cC5zdWNjZXNzIC5pbnB1dC1wcmVwZW5kIC5hZGQtb24sLmNvbnRyb2wtZ3JvdXAuc3VjY2VzcyAuaW5wdXQtYXBwZW5kIC5hZGQtb257Y29sb3I6IzQ2ODg0NztiYWNrZ3JvdW5kLWNvbG9yOiNkZmYwZDg7Ym9yZGVyLWNvbG9yOiM0Njg4NDc7fQouY29udHJvbC1ncm91cC5pbmZvIC5jb250cm9sLWxhYmVsLC5jb250cm9sLWdyb3VwLmluZm8gLmhlbHAtYmxvY2ssLmNvbnRyb2wtZ3JvdXAuaW5mbyAuaGVscC1pbmxpbmV7Y29sb3I6IzNhODdhZDt9Ci5jb250cm9sLWdyb3VwLmluZm8gLmNoZWNrYm94LC5jb250cm9sLWdyb3VwLmluZm8gLnJhZGlvLC5jb250cm9sLWdyb3VwLmluZm8gaW5wdXQsLmNvbnRyb2wtZ3JvdXAuaW5mbyBzZWxlY3QsLmNvbnRyb2wtZ3JvdXAuaW5mbyB0ZXh0YXJlYXtjb2xvcjojM2E4N2FkO30KLmNvbnRyb2wtZ3JvdXAuaW5mbyBpbnB1dCwuY29udHJvbC1ncm91cC5pbmZvIHNlbGVjdCwuY29udHJvbC1ncm91cC5pbmZvIHRleHRhcmVhe2JvcmRlci1jb2xvcjojM2E4N2FkOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTt9LmNvbnRyb2wtZ3JvdXAuaW5mbyBpbnB1dDpmb2N1cywuY29udHJvbC1ncm91cC5pbmZvIHNlbGVjdDpmb2N1cywuY29udHJvbC1ncm91cC5pbmZvIHRleHRhcmVhOmZvY3Vze2JvcmRlci1jb2xvcjojMmQ2OTg3Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSksMCAwIDZweCAjN2FiNWQzOy1tb3otYm94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSksMCAwIDZweCAjN2FiNWQzO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpLDAgMCA2cHggIzdhYjVkMzt9Ci5jb250cm9sLWdyb3VwLmluZm8gLmlucHV0LXByZXBlbmQgLmFkZC1vbiwuY29udHJvbC1ncm91cC5pbmZvIC5pbnB1dC1hcHBlbmQgLmFkZC1vbntjb2xvcjojM2E4N2FkO2JhY2tncm91bmQtY29sb3I6I2Q5ZWRmNztib3JkZXItY29sb3I6IzNhODdhZDt9CmlucHV0OmZvY3VzOmludmFsaWQsdGV4dGFyZWE6Zm9jdXM6aW52YWxpZCxzZWxlY3Q6Zm9jdXM6aW52YWxpZHtjb2xvcjojYjk0YTQ4O2JvcmRlci1jb2xvcjojZWU1ZjViO31pbnB1dDpmb2N1czppbnZhbGlkOmZvY3VzLHRleHRhcmVhOmZvY3VzOmludmFsaWQ6Zm9jdXMsc2VsZWN0OmZvY3VzOmludmFsaWQ6Zm9jdXN7Ym9yZGVyLWNvbG9yOiNlOTMyMmQ7LXdlYmtpdC1ib3gtc2hhZG93OjAgMCA2cHggI2Y4YjliNzstbW96LWJveC1zaGFkb3c6MCAwIDZweCAjZjhiOWI3O2JveC1zaGFkb3c6MCAwIDZweCAjZjhiOWI3O30KLmZvcm0tYWN0aW9uc3twYWRkaW5nOjE5cHggMjBweCAyMHB4O21hcmdpbi10b3A6MjBweDttYXJnaW4tYm90dG9tOjIwcHg7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2JvcmRlci10b3A6MXB4IHNvbGlkICNlNWU1ZTU7Knpvb206MTt9LmZvcm0tYWN0aW9uczpiZWZvcmUsLmZvcm0tYWN0aW9uczphZnRlcntkaXNwbGF5OnRhYmxlO2NvbnRlbnQ6IiI7bGluZS1oZWlnaHQ6MDt9Ci5mb3JtLWFjdGlvbnM6YWZ0ZXJ7Y2xlYXI6Ym90aDt9Ci5oZWxwLWJsb2NrLC5oZWxwLWlubGluZXtjb2xvcjojNTk1OTU5O30KLmhlbHAtYmxvY2t7ZGlzcGxheTpibG9jazttYXJnaW4tYm90dG9tOjEwcHg7fQouaGVscC1pbmxpbmV7ZGlzcGxheTppbmxpbmUtYmxvY2s7KmRpc3BsYXk6aW5saW5lOyp6b29tOjE7dmVydGljYWwtYWxpZ246bWlkZGxlO3BhZGRpbmctbGVmdDo1cHg7fQouaW5wdXQtYXBwZW5kLC5pbnB1dC1wcmVwZW5ke2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1ib3R0b206MTBweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Zm9udC1zaXplOjA7d2hpdGUtc3BhY2U6bm93cmFwO30uaW5wdXQtYXBwZW5kIGlucHV0LC5pbnB1dC1wcmVwZW5kIGlucHV0LC5pbnB1dC1hcHBlbmQgc2VsZWN0LC5pbnB1dC1wcmVwZW5kIHNlbGVjdCwuaW5wdXQtYXBwZW5kIC51bmVkaXRhYmxlLWlucHV0LC5pbnB1dC1wcmVwZW5kIC51bmVkaXRhYmxlLWlucHV0LC5pbnB1dC1hcHBlbmQgLmRyb3Bkb3duLW1lbnUsLmlucHV0LXByZXBlbmQgLmRyb3Bkb3duLW1lbnUsLmlucHV0LWFwcGVuZCAucG9wb3ZlciwuaW5wdXQtcHJlcGVuZCAucG9wb3Zlcntmb250LXNpemU6MTRweDt9Ci5pbnB1dC1hcHBlbmQgaW5wdXQsLmlucHV0LXByZXBlbmQgaW5wdXQsLmlucHV0LWFwcGVuZCBzZWxlY3QsLmlucHV0LXByZXBlbmQgc2VsZWN0LC5pbnB1dC1hcHBlbmQgLnVuZWRpdGFibGUtaW5wdXQsLmlucHV0LXByZXBlbmQgLnVuZWRpdGFibGUtaW5wdXR7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLWJvdHRvbTowOyptYXJnaW4tbGVmdDowO3ZlcnRpY2FsLWFsaWduOnRvcDstd2Via2l0LWJvcmRlci1yYWRpdXM6MCA0cHggNHB4IDA7LW1vei1ib3JkZXItcmFkaXVzOjAgNHB4IDRweCAwO2JvcmRlci1yYWRpdXM6MCA0cHggNHB4IDA7fS5pbnB1dC1hcHBlbmQgaW5wdXQ6Zm9jdXMsLmlucHV0LXByZXBlbmQgaW5wdXQ6Zm9jdXMsLmlucHV0LWFwcGVuZCBzZWxlY3Q6Zm9jdXMsLmlucHV0LXByZXBlbmQgc2VsZWN0OmZvY3VzLC5pbnB1dC1hcHBlbmQgLnVuZWRpdGFibGUtaW5wdXQ6Zm9jdXMsLmlucHV0LXByZXBlbmQgLnVuZWRpdGFibGUtaW5wdXQ6Zm9jdXN7ei1pbmRleDoyO30KLmlucHV0LWFwcGVuZCAuYWRkLW9uLC5pbnB1dC1wcmVwZW5kIC5hZGQtb257ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6YXV0bztoZWlnaHQ6MjBweDttaW4td2lkdGg6MTZweDtwYWRkaW5nOjRweCA1cHg7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6bm9ybWFsO2xpbmUtaGVpZ2h0OjIwcHg7dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC1zaGFkb3c6MCAxcHggMCAjZmZmZmZmO2JhY2tncm91bmQtY29sb3I6I2VlZWVlZTtib3JkZXI6MXB4IHNvbGlkICNjY2M7fQouaW5wdXQtYXBwZW5kIC5hZGQtb24sLmlucHV0LXByZXBlbmQgLmFkZC1vbiwuaW5wdXQtYXBwZW5kIC5idG4sLmlucHV0LXByZXBlbmQgLmJ0biwuaW5wdXQtYXBwZW5kIC5idG4tZ3JvdXA+LmRyb3Bkb3duLXRvZ2dsZSwuaW5wdXQtcHJlcGVuZCAuYnRuLWdyb3VwPi5kcm9wZG93bi10b2dnbGV7dmVydGljYWwtYWxpZ246dG9wOy13ZWJraXQtYm9yZGVyLXJhZGl1czowOy1tb3otYm9yZGVyLXJhZGl1czowO2JvcmRlci1yYWRpdXM6MDt9Ci5pbnB1dC1hcHBlbmQgLmFjdGl2ZSwuaW5wdXQtcHJlcGVuZCAuYWN0aXZle2JhY2tncm91bmQtY29sb3I6I2E5ZGJhOTtib3JkZXItY29sb3I6IzQ2YTU0Njt9Ci5pbnB1dC1wcmVwZW5kIC5hZGQtb24sLmlucHV0LXByZXBlbmQgLmJ0bnttYXJnaW4tcmlnaHQ6LTFweDt9Ci5pbnB1dC1wcmVwZW5kIC5hZGQtb246Zmlyc3QtY2hpbGQsLmlucHV0LXByZXBlbmQgLmJ0bjpmaXJzdC1jaGlsZHstd2Via2l0LWJvcmRlci1yYWRpdXM6NHB4IDAgMCA0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweCAwIDAgNHB4O2JvcmRlci1yYWRpdXM6NHB4IDAgMCA0cHg7fQouaW5wdXQtYXBwZW5kIGlucHV0LC5pbnB1dC1hcHBlbmQgc2VsZWN0LC5pbnB1dC1hcHBlbmQgLnVuZWRpdGFibGUtaW5wdXR7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjRweCAwIDAgNHB4Oy1tb3otYm9yZGVyLXJhZGl1czo0cHggMCAwIDRweDtib3JkZXItcmFkaXVzOjRweCAwIDAgNHB4O30uaW5wdXQtYXBwZW5kIGlucHV0Ky5idG4tZ3JvdXAgLmJ0bjpsYXN0LWNoaWxkLC5pbnB1dC1hcHBlbmQgc2VsZWN0Ky5idG4tZ3JvdXAgLmJ0bjpsYXN0LWNoaWxkLC5pbnB1dC1hcHBlbmQgLnVuZWRpdGFibGUtaW5wdXQrLmJ0bi1ncm91cCAuYnRuOmxhc3QtY2hpbGR7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjAgNHB4IDRweCAwOy1tb3otYm9yZGVyLXJhZGl1czowIDRweCA0cHggMDtib3JkZXItcmFkaXVzOjAgNHB4IDRweCAwO30KLmlucHV0LWFwcGVuZCAuYWRkLW9uLC5pbnB1dC1hcHBlbmQgLmJ0biwuaW5wdXQtYXBwZW5kIC5idG4tZ3JvdXB7bWFyZ2luLWxlZnQ6LTFweDt9Ci5pbnB1dC1hcHBlbmQgLmFkZC1vbjpsYXN0LWNoaWxkLC5pbnB1dC1hcHBlbmQgLmJ0bjpsYXN0LWNoaWxkLC5pbnB1dC1hcHBlbmQgLmJ0bi1ncm91cDpsYXN0LWNoaWxkPi5kcm9wZG93bi10b2dnbGV7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjAgNHB4IDRweCAwOy1tb3otYm9yZGVyLXJhZGl1czowIDRweCA0cHggMDtib3JkZXItcmFkaXVzOjAgNHB4IDRweCAwO30KLmlucHV0LXByZXBlbmQuaW5wdXQtYXBwZW5kIGlucHV0LC5pbnB1dC1wcmVwZW5kLmlucHV0LWFwcGVuZCBzZWxlY3QsLmlucHV0LXByZXBlbmQuaW5wdXQtYXBwZW5kIC51bmVkaXRhYmxlLWlucHV0ey13ZWJraXQtYm9yZGVyLXJhZGl1czowOy1tb3otYm9yZGVyLXJhZGl1czowO2JvcmRlci1yYWRpdXM6MDt9LmlucHV0LXByZXBlbmQuaW5wdXQtYXBwZW5kIGlucHV0Ky5idG4tZ3JvdXAgLmJ0biwuaW5wdXQtcHJlcGVuZC5pbnB1dC1hcHBlbmQgc2VsZWN0Ky5idG4tZ3JvdXAgLmJ0biwuaW5wdXQtcHJlcGVuZC5pbnB1dC1hcHBlbmQgLnVuZWRpdGFibGUtaW5wdXQrLmJ0bi1ncm91cCAuYnRuey13ZWJraXQtYm9yZGVyLXJhZGl1czowIDRweCA0cHggMDstbW96LWJvcmRlci1yYWRpdXM6MCA0cHggNHB4IDA7Ym9yZGVyLXJhZGl1czowIDRweCA0cHggMDt9Ci5pbnB1dC1wcmVwZW5kLmlucHV0LWFwcGVuZCAuYWRkLW9uOmZpcnN0LWNoaWxkLC5pbnB1dC1wcmVwZW5kLmlucHV0LWFwcGVuZCAuYnRuOmZpcnN0LWNoaWxke21hcmdpbi1yaWdodDotMXB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHggMCAwIDRweDstbW96LWJvcmRlci1yYWRpdXM6NHB4IDAgMCA0cHg7Ym9yZGVyLXJhZGl1czo0cHggMCAwIDRweDt9Ci5pbnB1dC1wcmVwZW5kLmlucHV0LWFwcGVuZCAuYWRkLW9uOmxhc3QtY2hpbGQsLmlucHV0LXByZXBlbmQuaW5wdXQtYXBwZW5kIC5idG46bGFzdC1jaGlsZHttYXJnaW4tbGVmdDotMXB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czowIDRweCA0cHggMDstbW96LWJvcmRlci1yYWRpdXM6MCA0cHggNHB4IDA7Ym9yZGVyLXJhZGl1czowIDRweCA0cHggMDt9Ci5pbnB1dC1wcmVwZW5kLmlucHV0LWFwcGVuZCAuYnRuLWdyb3VwOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjA7fQppbnB1dC5zZWFyY2gtcXVlcnl7cGFkZGluZy1yaWdodDoxNHB4O3BhZGRpbmctcmlnaHQ6NHB4IFw5O3BhZGRpbmctbGVmdDoxNHB4O3BhZGRpbmctbGVmdDo0cHggXDk7bWFyZ2luLWJvdHRvbTowOy13ZWJraXQtYm9yZGVyLXJhZGl1czoxNXB4Oy1tb3otYm9yZGVyLXJhZGl1czoxNXB4O2JvcmRlci1yYWRpdXM6MTVweDt9Ci5mb3JtLXNlYXJjaCAuaW5wdXQtYXBwZW5kIC5zZWFyY2gtcXVlcnksLmZvcm0tc2VhcmNoIC5pbnB1dC1wcmVwZW5kIC5zZWFyY2gtcXVlcnl7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjA7LW1vei1ib3JkZXItcmFkaXVzOjA7Ym9yZGVyLXJhZGl1czowO30KLmZvcm0tc2VhcmNoIC5pbnB1dC1hcHBlbmQgLnNlYXJjaC1xdWVyeXstd2Via2l0LWJvcmRlci1yYWRpdXM6MTRweCAwIDAgMTRweDstbW96LWJvcmRlci1yYWRpdXM6MTRweCAwIDAgMTRweDtib3JkZXItcmFkaXVzOjE0cHggMCAwIDE0cHg7fQouZm9ybS1zZWFyY2ggLmlucHV0LWFwcGVuZCAuYnRuey13ZWJraXQtYm9yZGVyLXJhZGl1czowIDE0cHggMTRweCAwOy1tb3otYm9yZGVyLXJhZGl1czowIDE0cHggMTRweCAwO2JvcmRlci1yYWRpdXM6MCAxNHB4IDE0cHggMDt9Ci5mb3JtLXNlYXJjaCAuaW5wdXQtcHJlcGVuZCAuc2VhcmNoLXF1ZXJ5ey13ZWJraXQtYm9yZGVyLXJhZGl1czowIDE0cHggMTRweCAwOy1tb3otYm9yZGVyLXJhZGl1czowIDE0cHggMTRweCAwO2JvcmRlci1yYWRpdXM6MCAxNHB4IDE0cHggMDt9Ci5mb3JtLXNlYXJjaCAuaW5wdXQtcHJlcGVuZCAuYnRuey13ZWJraXQtYm9yZGVyLXJhZGl1czoxNHB4IDAgMCAxNHB4Oy1tb3otYm9yZGVyLXJhZGl1czoxNHB4IDAgMCAxNHB4O2JvcmRlci1yYWRpdXM6MTRweCAwIDAgMTRweDt9Ci5mb3JtLXNlYXJjaCBpbnB1dCwuZm9ybS1pbmxpbmUgaW5wdXQsLmZvcm0taG9yaXpvbnRhbCBpbnB1dCwuZm9ybS1zZWFyY2ggdGV4dGFyZWEsLmZvcm0taW5saW5lIHRleHRhcmVhLC5mb3JtLWhvcml6b250YWwgdGV4dGFyZWEsLmZvcm0tc2VhcmNoIHNlbGVjdCwuZm9ybS1pbmxpbmUgc2VsZWN0LC5mb3JtLWhvcml6b250YWwgc2VsZWN0LC5mb3JtLXNlYXJjaCAuaGVscC1pbmxpbmUsLmZvcm0taW5saW5lIC5oZWxwLWlubGluZSwuZm9ybS1ob3Jpem9udGFsIC5oZWxwLWlubGluZSwuZm9ybS1zZWFyY2ggLnVuZWRpdGFibGUtaW5wdXQsLmZvcm0taW5saW5lIC51bmVkaXRhYmxlLWlucHV0LC5mb3JtLWhvcml6b250YWwgLnVuZWRpdGFibGUtaW5wdXQsLmZvcm0tc2VhcmNoIC5pbnB1dC1wcmVwZW5kLC5mb3JtLWlubGluZSAuaW5wdXQtcHJlcGVuZCwuZm9ybS1ob3Jpem9udGFsIC5pbnB1dC1wcmVwZW5kLC5mb3JtLXNlYXJjaCAuaW5wdXQtYXBwZW5kLC5mb3JtLWlubGluZSAuaW5wdXQtYXBwZW5kLC5mb3JtLWhvcml6b250YWwgLmlucHV0LWFwcGVuZHtkaXNwbGF5OmlubGluZS1ibG9jazsqZGlzcGxheTppbmxpbmU7Knpvb206MTttYXJnaW4tYm90dG9tOjA7dmVydGljYWwtYWxpZ246bWlkZGxlO30KLmZvcm0tc2VhcmNoIC5oaWRlLC5mb3JtLWlubGluZSAuaGlkZSwuZm9ybS1ob3Jpem9udGFsIC5oaWRle2Rpc3BsYXk6bm9uZTt9Ci5mb3JtLXNlYXJjaCBsYWJlbCwuZm9ybS1pbmxpbmUgbGFiZWwsLmZvcm0tc2VhcmNoIC5idG4tZ3JvdXAsLmZvcm0taW5saW5lIC5idG4tZ3JvdXB7ZGlzcGxheTppbmxpbmUtYmxvY2s7fQouZm9ybS1zZWFyY2ggLmlucHV0LWFwcGVuZCwuZm9ybS1pbmxpbmUgLmlucHV0LWFwcGVuZCwuZm9ybS1zZWFyY2ggLmlucHV0LXByZXBlbmQsLmZvcm0taW5saW5lIC5pbnB1dC1wcmVwZW5ke21hcmdpbi1ib3R0b206MDt9Ci5mb3JtLXNlYXJjaCAucmFkaW8sLmZvcm0tc2VhcmNoIC5jaGVja2JveCwuZm9ybS1pbmxpbmUgLnJhZGlvLC5mb3JtLWlubGluZSAuY2hlY2tib3h7cGFkZGluZy1sZWZ0OjA7bWFyZ2luLWJvdHRvbTowO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt9Ci5mb3JtLXNlYXJjaCAucmFkaW8gaW5wdXRbdHlwZT0icmFkaW8iXSwuZm9ybS1zZWFyY2ggLmNoZWNrYm94IGlucHV0W3R5cGU9ImNoZWNrYm94Il0sLmZvcm0taW5saW5lIC5yYWRpbyBpbnB1dFt0eXBlPSJyYWRpbyJdLC5mb3JtLWlubGluZSAuY2hlY2tib3ggaW5wdXRbdHlwZT0iY2hlY2tib3giXXtmbG9hdDpsZWZ0O21hcmdpbi1yaWdodDozcHg7bWFyZ2luLWxlZnQ6MDt9Ci5jb250cm9sLWdyb3Vwe21hcmdpbi1ib3R0b206MTBweDt9CmxlZ2VuZCsuY29udHJvbC1ncm91cHttYXJnaW4tdG9wOjIwcHg7LXdlYmtpdC1tYXJnaW4tdG9wLWNvbGxhcHNlOnNlcGFyYXRlO30KLmZvcm0taG9yaXpvbnRhbCAuY29udHJvbC1ncm91cHttYXJnaW4tYm90dG9tOjIwcHg7Knpvb206MTt9LmZvcm0taG9yaXpvbnRhbCAuY29udHJvbC1ncm91cDpiZWZvcmUsLmZvcm0taG9yaXpvbnRhbCAuY29udHJvbC1ncm91cDphZnRlcntkaXNwbGF5OnRhYmxlO2NvbnRlbnQ6IiI7bGluZS1oZWlnaHQ6MDt9Ci5mb3JtLWhvcml6b250YWwgLmNvbnRyb2wtZ3JvdXA6YWZ0ZXJ7Y2xlYXI6Ym90aDt9Ci5mb3JtLWhvcml6b250YWwgLmNvbnRyb2wtbGFiZWx7ZmxvYXQ6bGVmdDt3aWR0aDoxNjBweDtwYWRkaW5nLXRvcDo1cHg7dGV4dC1hbGlnbjpyaWdodDt9Ci5mb3JtLWhvcml6b250YWwgLmNvbnRyb2xzeypkaXNwbGF5OmlubGluZS1ibG9jazsqcGFkZGluZy1sZWZ0OjIwcHg7bWFyZ2luLWxlZnQ6MTgwcHg7Km1hcmdpbi1sZWZ0OjA7fS5mb3JtLWhvcml6b250YWwgLmNvbnRyb2xzOmZpcnN0LWNoaWxkeypwYWRkaW5nLWxlZnQ6MTgwcHg7fQouZm9ybS1ob3Jpem9udGFsIC5oZWxwLWJsb2Nre21hcmdpbi1ib3R0b206MDt9Ci5mb3JtLWhvcml6b250YWwgaW5wdXQrLmhlbHAtYmxvY2ssLmZvcm0taG9yaXpvbnRhbCBzZWxlY3QrLmhlbHAtYmxvY2ssLmZvcm0taG9yaXpvbnRhbCB0ZXh0YXJlYSsuaGVscC1ibG9jaywuZm9ybS1ob3Jpem9udGFsIC51bmVkaXRhYmxlLWlucHV0Ky5oZWxwLWJsb2NrLC5mb3JtLWhvcml6b250YWwgLmlucHV0LXByZXBlbmQrLmhlbHAtYmxvY2ssLmZvcm0taG9yaXpvbnRhbCAuaW5wdXQtYXBwZW5kKy5oZWxwLWJsb2Nre21hcmdpbi10b3A6MTBweDt9Ci5mb3JtLWhvcml6b250YWwgLmZvcm0tYWN0aW9uc3twYWRkaW5nLWxlZnQ6MTgwcHg7fQouYnRue2Rpc3BsYXk6aW5saW5lLWJsb2NrOypkaXNwbGF5OmlubGluZTsqem9vbToxO3BhZGRpbmc6NHB4IDEycHg7bWFyZ2luLWJvdHRvbTowO2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjIwcHg7dGV4dC1hbGlnbjpjZW50ZXI7dmVydGljYWwtYWxpZ246bWlkZGxlO2N1cnNvcjpwb2ludGVyO2NvbG9yOiMzMzMzMzM7dGV4dC1zaGFkb3c6MCAxcHggMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O2JhY2tncm91bmQtaW1hZ2U6LW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmZmZmLCAjZTZlNmU2KTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbSgjZmZmZmZmKSwgdG8oI2U2ZTZlNikpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmZmZmLCAjZTZlNmU2KTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmZmZmYsICNlNmU2ZTYpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZmZmZiwgI2U2ZTZlNik7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmZmZmZmZmYnLCBlbmRDb2xvcnN0cj0nI2ZmZTZlNmU2JywgR3JhZGllbnRUeXBlPTApO2JvcmRlci1jb2xvcjojZTZlNmU2ICNlNmU2ZTYgI2JmYmZiZjtib3JkZXItY29sb3I6cmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMjUpOypiYWNrZ3JvdW5kLWNvbG9yOiNlNmU2ZTY7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO2JvcmRlcjoxcHggc29saWQgI2NjY2NjYzsqYm9yZGVyOjA7Ym9yZGVyLWJvdHRvbS1jb2xvcjojYjNiM2IzOy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDtib3JkZXItcmFkaXVzOjRweDsqbWFyZ2luLWxlZnQ6LjNlbTstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4yKSwgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjA1KTstbW96LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4yKSwgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjA1KTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMiksIDAgMXB4IDJweCByZ2JhKDAsMCwwLC4wNSk7fS5idG46aG92ZXIsLmJ0bjpmb2N1cywuYnRuOmFjdGl2ZSwuYnRuLmFjdGl2ZSwuYnRuLmRpc2FibGVkLC5idG5bZGlzYWJsZWRde2NvbG9yOiMzMzMzMzM7YmFja2dyb3VuZC1jb2xvcjojZTZlNmU2OypiYWNrZ3JvdW5kLWNvbG9yOiNkOWQ5ZDk7fQouYnRuOmFjdGl2ZSwuYnRuLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiNjY2NjY2MgXDk7fQouYnRuOmZpcnN0LWNoaWxkeyptYXJnaW4tbGVmdDowO30KLmJ0bjpob3ZlciwuYnRuOmZvY3Vze2NvbG9yOiMzMzMzMzM7dGV4dC1kZWNvcmF0aW9uOm5vbmU7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0xNXB4Oy13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLXBvc2l0aW9uIDAuMXMgbGluZWFyOy1tb3otdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLXBvc2l0aW9uIDAuMXMgbGluZWFyOy1vLXRyYW5zaXRpb246YmFja2dyb3VuZC1wb3NpdGlvbiAwLjFzIGxpbmVhcjt0cmFuc2l0aW9uOmJhY2tncm91bmQtcG9zaXRpb24gMC4xcyBsaW5lYXI7fQouYnRuOmZvY3Vze291dGxpbmU6dGhpbiBkb3R0ZWQgIzMzMztvdXRsaW5lOjVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtvdXRsaW5lLW9mZnNldDotMnB4O30KLmJ0bi5hY3RpdmUsLmJ0bjphY3RpdmV7YmFja2dyb3VuZC1pbWFnZTpub25lO291dGxpbmU6MDstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAycHggNHB4IHJnYmEoMCwwLDAsLjE1KSwgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjA1KTstbW96LWJveC1zaGFkb3c6aW5zZXQgMCAycHggNHB4IHJnYmEoMCwwLDAsLjE1KSwgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjA1KTtib3gtc2hhZG93Omluc2V0IDAgMnB4IDRweCByZ2JhKDAsMCwwLC4xNSksIDAgMXB4IDJweCByZ2JhKDAsMCwwLC4wNSk7fQouYnRuLmRpc2FibGVkLC5idG5bZGlzYWJsZWRde2N1cnNvcjpkZWZhdWx0O2JhY2tncm91bmQtaW1hZ2U6bm9uZTtvcGFjaXR5OjAuNjU7ZmlsdGVyOmFscGhhKG9wYWNpdHk9NjUpOy13ZWJraXQtYm94LXNoYWRvdzpub25lOy1tb3otYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZTt9Ci5idG4tbGFyZ2V7cGFkZGluZzoxMXB4IDE5cHg7Zm9udC1zaXplOjE3LjVweDstd2Via2l0LWJvcmRlci1yYWRpdXM6NnB4Oy1tb3otYm9yZGVyLXJhZGl1czo2cHg7Ym9yZGVyLXJhZGl1czo2cHg7fQouYnRuLWxhcmdlIFtjbGFzc149Imljb24tIl0sLmJ0bi1sYXJnZSBbY2xhc3MqPSIgaWNvbi0iXXttYXJnaW4tdG9wOjRweDt9Ci5idG4tc21hbGx7cGFkZGluZzoycHggMTBweDtmb250LXNpemU6MTEuOXB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czozcHg7LW1vei1ib3JkZXItcmFkaXVzOjNweDtib3JkZXItcmFkaXVzOjNweDt9Ci5idG4tc21hbGwgW2NsYXNzXj0iaWNvbi0iXSwuYnRuLXNtYWxsIFtjbGFzcyo9IiBpY29uLSJde21hcmdpbi10b3A6MDt9Ci5idG4tbWluaSBbY2xhc3NePSJpY29uLSJdLC5idG4tbWluaSBbY2xhc3MqPSIgaWNvbi0iXXttYXJnaW4tdG9wOi0xcHg7fQouYnRuLW1pbml7cGFkZGluZzowIDZweDtmb250LXNpemU6MTAuNXB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czozcHg7LW1vei1ib3JkZXItcmFkaXVzOjNweDtib3JkZXItcmFkaXVzOjNweDt9Ci5idG4tYmxvY2t7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7fQouYnRuLWJsb2NrKy5idG4tYmxvY2t7bWFyZ2luLXRvcDo1cHg7fQppbnB1dFt0eXBlPSJzdWJtaXQiXS5idG4tYmxvY2ssaW5wdXRbdHlwZT0icmVzZXQiXS5idG4tYmxvY2ssaW5wdXRbdHlwZT0iYnV0dG9uIl0uYnRuLWJsb2Nre3dpZHRoOjEwMCU7fQouYnRuLXByaW1hcnkuYWN0aXZlLC5idG4td2FybmluZy5hY3RpdmUsLmJ0bi1kYW5nZXIuYWN0aXZlLC5idG4tc3VjY2Vzcy5hY3RpdmUsLmJ0bi1pbmZvLmFjdGl2ZSwuYnRuLWludmVyc2UuYWN0aXZle2NvbG9yOnJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7fQouYnRuLXByaW1hcnl7Y29sb3I6I2ZmZmZmZjt0ZXh0LXNoYWRvdzowIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO2JhY2tncm91bmQtY29sb3I6IzAwNmRjYztiYWNrZ3JvdW5kLWltYWdlOi1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNDRjYyk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oIzAwODhjYyksIHRvKCMwMDQ0Y2MpKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNDRjYyk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjMDA4OGNjLCAjMDA0NGNjKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwMDg4Y2MsICMwMDQ0Y2MpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmMDA4OGNjJywgZW5kQ29sb3JzdHI9JyNmZjAwNDRjYycsIEdyYWRpZW50VHlwZT0wKTtib3JkZXItY29sb3I6IzAwNDRjYyAjMDA0NGNjICMwMDJhODA7Ym9yZGVyLWNvbG9yOnJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTsqYmFja2dyb3VuZC1jb2xvcjojMDA0NGNjO2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTt9LmJ0bi1wcmltYXJ5OmhvdmVyLC5idG4tcHJpbWFyeTpmb2N1cywuYnRuLXByaW1hcnk6YWN0aXZlLC5idG4tcHJpbWFyeS5hY3RpdmUsLmJ0bi1wcmltYXJ5LmRpc2FibGVkLC5idG4tcHJpbWFyeVtkaXNhYmxlZF17Y29sb3I6I2ZmZmZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDQ0Y2M7KmJhY2tncm91bmQtY29sb3I6IzAwM2JiMzt9Ci5idG4tcHJpbWFyeTphY3RpdmUsLmJ0bi1wcmltYXJ5LmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDMzOTkgXDk7fQouYnRuLXdhcm5pbmd7Y29sb3I6I2ZmZmZmZjt0ZXh0LXNoYWRvdzowIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO2JhY2tncm91bmQtY29sb3I6I2ZhYTczMjtiYWNrZ3JvdW5kLWltYWdlOi1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZiYjQ1MCwgI2Y4OTQwNik7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oI2ZiYjQ1MCksIHRvKCNmODk0MDYpKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZiYjQ1MCwgI2Y4OTQwNik7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjZmJiNDUwLCAjZjg5NDA2KTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmYmI0NTAsICNmODk0MDYpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmZmJiNDUwJywgZW5kQ29sb3JzdHI9JyNmZmY4OTQwNicsIEdyYWRpZW50VHlwZT0wKTtib3JkZXItY29sb3I6I2Y4OTQwNiAjZjg5NDA2ICNhZDY3MDQ7Ym9yZGVyLWNvbG9yOnJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTsqYmFja2dyb3VuZC1jb2xvcjojZjg5NDA2O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTt9LmJ0bi13YXJuaW5nOmhvdmVyLC5idG4td2FybmluZzpmb2N1cywuYnRuLXdhcm5pbmc6YWN0aXZlLC5idG4td2FybmluZy5hY3RpdmUsLmJ0bi13YXJuaW5nLmRpc2FibGVkLC5idG4td2FybmluZ1tkaXNhYmxlZF17Y29sb3I6I2ZmZmZmZjtiYWNrZ3JvdW5kLWNvbG9yOiNmODk0MDY7KmJhY2tncm91bmQtY29sb3I6I2RmODUwNTt9Ci5idG4td2FybmluZzphY3RpdmUsLmJ0bi13YXJuaW5nLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiNjNjc2MDUgXDk7fQouYnRuLWRhbmdlcntjb2xvcjojZmZmZmZmO3RleHQtc2hhZG93OjAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7YmFja2dyb3VuZC1jb2xvcjojZGE0ZjQ5O2JhY2tncm91bmQtaW1hZ2U6LW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjZWU1ZjViLCAjYmQzNjJmKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbSgjZWU1ZjViKSwgdG8oI2JkMzYyZikpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZWU1ZjViLCAjYmQzNjJmKTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNlZTVmNWIsICNiZDM2MmYpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2VlNWY1YiwgI2JkMzYyZik7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmZlZTVmNWInLCBlbmRDb2xvcnN0cj0nI2ZmYmQzNjJmJywgR3JhZGllbnRUeXBlPTApO2JvcmRlci1jb2xvcjojYmQzNjJmICNiZDM2MmYgIzgwMjQyMDtib3JkZXItY29sb3I6cmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMjUpOypiYWNrZ3JvdW5kLWNvbG9yOiNiZDM2MmY7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO30uYnRuLWRhbmdlcjpob3ZlciwuYnRuLWRhbmdlcjpmb2N1cywuYnRuLWRhbmdlcjphY3RpdmUsLmJ0bi1kYW5nZXIuYWN0aXZlLC5idG4tZGFuZ2VyLmRpc2FibGVkLC5idG4tZGFuZ2VyW2Rpc2FibGVkXXtjb2xvcjojZmZmZmZmO2JhY2tncm91bmQtY29sb3I6I2JkMzYyZjsqYmFja2dyb3VuZC1jb2xvcjojYTkzMDJhO30KLmJ0bi1kYW5nZXI6YWN0aXZlLC5idG4tZGFuZ2VyLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiM5NDJhMjUgXDk7fQouYnRuLXN1Y2Nlc3N7Y29sb3I6I2ZmZmZmZjt0ZXh0LXNoYWRvdzowIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO2JhY2tncm91bmQtY29sb3I6IzViYjc1YjtiYWNrZ3JvdW5kLWltYWdlOi1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzYyYzQ2MiwgIzUxYTM1MSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oIzYyYzQ2MiksIHRvKCM1MWEzNTEpKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzYyYzQ2MiwgIzUxYTM1MSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjNjJjNDYyLCAjNTFhMzUxKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM2MmM0NjIsICM1MWEzNTEpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmNjJjNDYyJywgZW5kQ29sb3JzdHI9JyNmZjUxYTM1MScsIEdyYWRpZW50VHlwZT0wKTtib3JkZXItY29sb3I6IzUxYTM1MSAjNTFhMzUxICMzODcwMzg7Ym9yZGVyLWNvbG9yOnJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTsqYmFja2dyb3VuZC1jb2xvcjojNTFhMzUxO2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTt9LmJ0bi1zdWNjZXNzOmhvdmVyLC5idG4tc3VjY2Vzczpmb2N1cywuYnRuLXN1Y2Nlc3M6YWN0aXZlLC5idG4tc3VjY2Vzcy5hY3RpdmUsLmJ0bi1zdWNjZXNzLmRpc2FibGVkLC5idG4tc3VjY2Vzc1tkaXNhYmxlZF17Y29sb3I6I2ZmZmZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM1MWEzNTE7KmJhY2tncm91bmQtY29sb3I6IzQ5OTI0OTt9Ci5idG4tc3VjY2VzczphY3RpdmUsLmJ0bi1zdWNjZXNzLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiM0MDgxNDAgXDk7fQouYnRuLWluZm97Y29sb3I6I2ZmZmZmZjt0ZXh0LXNoYWRvdzowIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO2JhY2tncm91bmQtY29sb3I6IzQ5YWZjZDtiYWNrZ3JvdW5kLWltYWdlOi1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzViYzBkZSwgIzJmOTZiNCk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oIzViYzBkZSksIHRvKCMyZjk2YjQpKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzViYzBkZSwgIzJmOTZiNCk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjNWJjMGRlLCAjMmY5NmI0KTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM1YmMwZGUsICMyZjk2YjQpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmNWJjMGRlJywgZW5kQ29sb3JzdHI9JyNmZjJmOTZiNCcsIEdyYWRpZW50VHlwZT0wKTtib3JkZXItY29sb3I6IzJmOTZiNCAjMmY5NmI0ICMxZjYzNzc7Ym9yZGVyLWNvbG9yOnJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTsqYmFja2dyb3VuZC1jb2xvcjojMmY5NmI0O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTt9LmJ0bi1pbmZvOmhvdmVyLC5idG4taW5mbzpmb2N1cywuYnRuLWluZm86YWN0aXZlLC5idG4taW5mby5hY3RpdmUsLmJ0bi1pbmZvLmRpc2FibGVkLC5idG4taW5mb1tkaXNhYmxlZF17Y29sb3I6I2ZmZmZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMyZjk2YjQ7KmJhY2tncm91bmQtY29sb3I6IzJhODVhMDt9Ci5idG4taW5mbzphY3RpdmUsLmJ0bi1pbmZvLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiMyNDc0OGMgXDk7fQouYnRuLWludmVyc2V7Y29sb3I6I2ZmZmZmZjt0ZXh0LXNoYWRvdzowIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO2JhY2tncm91bmQtY29sb3I6IzM2MzYzNjtiYWNrZ3JvdW5kLWltYWdlOi1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzQ0NDQ0NCwgIzIyMjIyMik7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oIzQ0NDQ0NCksIHRvKCMyMjIyMjIpKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzQ0NDQ0NCwgIzIyMjIyMik7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjNDQ0NDQ0LCAjMjIyMjIyKTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM0NDQ0NDQsICMyMjIyMjIpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmNDQ0NDQ0JywgZW5kQ29sb3JzdHI9JyNmZjIyMjIyMicsIEdyYWRpZW50VHlwZT0wKTtib3JkZXItY29sb3I6IzIyMjIyMiAjMjIyMjIyICMwMDAwMDA7Ym9yZGVyLWNvbG9yOnJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTsqYmFja2dyb3VuZC1jb2xvcjojMjIyMjIyO2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTt9LmJ0bi1pbnZlcnNlOmhvdmVyLC5idG4taW52ZXJzZTpmb2N1cywuYnRuLWludmVyc2U6YWN0aXZlLC5idG4taW52ZXJzZS5hY3RpdmUsLmJ0bi1pbnZlcnNlLmRpc2FibGVkLC5idG4taW52ZXJzZVtkaXNhYmxlZF17Y29sb3I6I2ZmZmZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMyMjIyMjI7KmJhY2tncm91bmQtY29sb3I6IzE1MTUxNTt9Ci5idG4taW52ZXJzZTphY3RpdmUsLmJ0bi1pbnZlcnNlLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiMwODA4MDggXDk7fQpidXR0b24uYnRuLGlucHV0W3R5cGU9InN1Ym1pdCJdLmJ0bnsqcGFkZGluZy10b3A6M3B4OypwYWRkaW5nLWJvdHRvbTozcHg7fWJ1dHRvbi5idG46Oi1tb3otZm9jdXMtaW5uZXIsaW5wdXRbdHlwZT0ic3VibWl0Il0uYnRuOjotbW96LWZvY3VzLWlubmVye3BhZGRpbmc6MDtib3JkZXI6MDt9CmJ1dHRvbi5idG4uYnRuLWxhcmdlLGlucHV0W3R5cGU9InN1Ym1pdCJdLmJ0bi5idG4tbGFyZ2V7KnBhZGRpbmctdG9wOjdweDsqcGFkZGluZy1ib3R0b206N3B4O30KYnV0dG9uLmJ0bi5idG4tc21hbGwsaW5wdXRbdHlwZT0ic3VibWl0Il0uYnRuLmJ0bi1zbWFsbHsqcGFkZGluZy10b3A6M3B4OypwYWRkaW5nLWJvdHRvbTozcHg7fQpidXR0b24uYnRuLmJ0bi1taW5pLGlucHV0W3R5cGU9InN1Ym1pdCJdLmJ0bi5idG4tbWluaXsqcGFkZGluZy10b3A6MXB4OypwYWRkaW5nLWJvdHRvbToxcHg7fQouYnRuLWxpbmssLmJ0bi1saW5rOmFjdGl2ZSwuYnRuLWxpbmtbZGlzYWJsZWRde2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1pbWFnZTpub25lOy13ZWJraXQtYm94LXNoYWRvdzpub25lOy1tb3otYm94LXNoYWRvdzpub25lO2JveC1zaGFkb3c6bm9uZTt9Ci5idG4tbGlua3tib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Y3Vyc29yOnBvaW50ZXI7Y29sb3I6IzAwODhjYzstd2Via2l0LWJvcmRlci1yYWRpdXM6MDstbW96LWJvcmRlci1yYWRpdXM6MDtib3JkZXItcmFkaXVzOjA7fQouYnRuLWxpbms6aG92ZXIsLmJ0bi1saW5rOmZvY3Vze2NvbG9yOiMwMDU1ODA7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O30KLmJ0bi1saW5rW2Rpc2FibGVkXTpob3ZlciwuYnRuLWxpbmtbZGlzYWJsZWRdOmZvY3Vze2NvbG9yOiMzMzMzMzM7dGV4dC1kZWNvcmF0aW9uOm5vbmU7fQouYnRuLWdyb3Vwe3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrOypkaXNwbGF5OmlubGluZTsqem9vbToxO2ZvbnQtc2l6ZTowO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aGl0ZS1zcGFjZTpub3dyYXA7Km1hcmdpbi1sZWZ0Oi4zZW07fS5idG4tZ3JvdXA6Zmlyc3QtY2hpbGR7Km1hcmdpbi1sZWZ0OjA7fQouYnRuLWdyb3VwKy5idG4tZ3JvdXB7bWFyZ2luLWxlZnQ6NXB4O30KLmJ0bi10b29sYmFye2ZvbnQtc2l6ZTowO21hcmdpbi10b3A6MTBweDttYXJnaW4tYm90dG9tOjEwcHg7fS5idG4tdG9vbGJhcj4uYnRuKy5idG4sLmJ0bi10b29sYmFyPi5idG4tZ3JvdXArLmJ0biwuYnRuLXRvb2xiYXI+LmJ0bisuYnRuLWdyb3Vwe21hcmdpbi1sZWZ0OjVweDt9Ci5idG4tZ3JvdXA+LmJ0bntwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LWJvcmRlci1yYWRpdXM6MDstbW96LWJvcmRlci1yYWRpdXM6MDtib3JkZXItcmFkaXVzOjA7fQouYnRuLWdyb3VwPi5idG4rLmJ0bnttYXJnaW4tbGVmdDotMXB4O30KLmJ0bi1ncm91cD4uYnRuLC5idG4tZ3JvdXA+LmRyb3Bkb3duLW1lbnUsLmJ0bi1ncm91cD4ucG9wb3Zlcntmb250LXNpemU6MTRweDt9Ci5idG4tZ3JvdXA+LmJ0bi1taW5pe2ZvbnQtc2l6ZToxMC41cHg7fQouYnRuLWdyb3VwPi5idG4tc21hbGx7Zm9udC1zaXplOjExLjlweDt9Ci5idG4tZ3JvdXA+LmJ0bi1sYXJnZXtmb250LXNpemU6MTcuNXB4O30KLmJ0bi1ncm91cD4uYnRuOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjA7LXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXMtdG9wbGVmdDo0cHg7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo0cHg7LXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXMtYm90dG9tbGVmdDo0cHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo0cHg7fQouYnRuLWdyb3VwPi5idG46bGFzdC1jaGlsZCwuYnRuLWdyb3VwPi5kcm9wZG93bi10b2dnbGV7LXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzLXRvcHJpZ2h0OjRweDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czo0cHg7LXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OjRweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo0cHg7fQouYnRuLWdyb3VwPi5idG4ubGFyZ2U6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MDstd2Via2l0LWJvcmRlci10b3AtbGVmdC1yYWRpdXM6NnB4Oy1tb3otYm9yZGVyLXJhZGl1cy10b3BsZWZ0OjZweDtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjZweDstd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6NnB4Oy1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21sZWZ0OjZweDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjZweDt9Ci5idG4tZ3JvdXA+LmJ0bi5sYXJnZTpsYXN0LWNoaWxkLC5idG4tZ3JvdXA+LmxhcmdlLmRyb3Bkb3duLXRvZ2dsZXstd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOjZweDstbW96LWJvcmRlci1yYWRpdXMtdG9wcmlnaHQ6NnB4O2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjZweDstd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjZweDstbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6NnB4O2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjZweDt9Ci5idG4tZ3JvdXA+LmJ0bjpob3ZlciwuYnRuLWdyb3VwPi5idG46Zm9jdXMsLmJ0bi1ncm91cD4uYnRuOmFjdGl2ZSwuYnRuLWdyb3VwPi5idG4uYWN0aXZle3otaW5kZXg6Mjt9Ci5idG4tZ3JvdXAgLmRyb3Bkb3duLXRvZ2dsZTphY3RpdmUsLmJ0bi1ncm91cC5vcGVuIC5kcm9wZG93bi10b2dnbGV7b3V0bGluZTowO30KLmJ0bi1ncm91cD4uYnRuKy5kcm9wZG93bi10b2dnbGV7cGFkZGluZy1sZWZ0OjhweDtwYWRkaW5nLXJpZ2h0OjhweDstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMXB4IDAgMCByZ2JhKDI1NSwyNTUsMjU1LC4xMjUpLCBpbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjIpLCAwIDFweCAycHggcmdiYSgwLDAsMCwuMDUpOy1tb3otYm94LXNoYWRvdzppbnNldCAxcHggMCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEyNSksIGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMiksIDAgMXB4IDJweCByZ2JhKDAsMCwwLC4wNSk7Ym94LXNoYWRvdzppbnNldCAxcHggMCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEyNSksIGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMiksIDAgMXB4IDJweCByZ2JhKDAsMCwwLC4wNSk7KnBhZGRpbmctdG9wOjVweDsqcGFkZGluZy1ib3R0b206NXB4O30KLmJ0bi1ncm91cD4uYnRuLW1pbmkrLmRyb3Bkb3duLXRvZ2dsZXtwYWRkaW5nLWxlZnQ6NXB4O3BhZGRpbmctcmlnaHQ6NXB4OypwYWRkaW5nLXRvcDoycHg7KnBhZGRpbmctYm90dG9tOjJweDt9Ci5idG4tZ3JvdXA+LmJ0bi1zbWFsbCsuZHJvcGRvd24tdG9nZ2xleypwYWRkaW5nLXRvcDo1cHg7KnBhZGRpbmctYm90dG9tOjRweDt9Ci5idG4tZ3JvdXA+LmJ0bi1sYXJnZSsuZHJvcGRvd24tdG9nZ2xle3BhZGRpbmctbGVmdDoxMnB4O3BhZGRpbmctcmlnaHQ6MTJweDsqcGFkZGluZy10b3A6N3B4OypwYWRkaW5nLWJvdHRvbTo3cHg7fQouYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZXtiYWNrZ3JvdW5kLWltYWdlOm5vbmU7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMnB4IDRweCByZ2JhKDAsMCwwLC4xNSksIDAgMXB4IDJweCByZ2JhKDAsMCwwLC4wNSk7LW1vei1ib3gtc2hhZG93Omluc2V0IDAgMnB4IDRweCByZ2JhKDAsMCwwLC4xNSksIDAgMXB4IDJweCByZ2JhKDAsMCwwLC4wNSk7Ym94LXNoYWRvdzppbnNldCAwIDJweCA0cHggcmdiYSgwLDAsMCwuMTUpLCAwIDFweCAycHggcmdiYSgwLDAsMCwuMDUpO30KLmJ0bi1ncm91cC5vcGVuIC5idG4uZHJvcGRvd24tdG9nZ2xle2JhY2tncm91bmQtY29sb3I6I2U2ZTZlNjt9Ci5idG4tZ3JvdXAub3BlbiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xle2JhY2tncm91bmQtY29sb3I6IzAwNDRjYzt9Ci5idG4tZ3JvdXAub3BlbiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xle2JhY2tncm91bmQtY29sb3I6I2Y4OTQwNjt9Ci5idG4tZ3JvdXAub3BlbiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGV7YmFja2dyb3VuZC1jb2xvcjojYmQzNjJmO30KLmJ0bi1ncm91cC5vcGVuIC5idG4tc3VjY2Vzcy5kcm9wZG93bi10b2dnbGV7YmFja2dyb3VuZC1jb2xvcjojNTFhMzUxO30KLmJ0bi1ncm91cC5vcGVuIC5idG4taW5mby5kcm9wZG93bi10b2dnbGV7YmFja2dyb3VuZC1jb2xvcjojMmY5NmI0O30KLmJ0bi1ncm91cC5vcGVuIC5idG4taW52ZXJzZS5kcm9wZG93bi10b2dnbGV7YmFja2dyb3VuZC1jb2xvcjojMjIyMjIyO30KLmJ0biAuY2FyZXR7bWFyZ2luLXRvcDo4cHg7bWFyZ2luLWxlZnQ6MDt9Ci5idG4tbGFyZ2UgLmNhcmV0e21hcmdpbi10b3A6NnB4O30KLmJ0bi1sYXJnZSAuY2FyZXR7Ym9yZGVyLWxlZnQtd2lkdGg6NXB4O2JvcmRlci1yaWdodC13aWR0aDo1cHg7Ym9yZGVyLXRvcC13aWR0aDo1cHg7fQouYnRuLW1pbmkgLmNhcmV0LC5idG4tc21hbGwgLmNhcmV0e21hcmdpbi10b3A6OHB4O30KLmRyb3B1cCAuYnRuLWxhcmdlIC5jYXJldHtib3JkZXItYm90dG9tLXdpZHRoOjVweDt9Ci5idG4tcHJpbWFyeSAuY2FyZXQsLmJ0bi13YXJuaW5nIC5jYXJldCwuYnRuLWRhbmdlciAuY2FyZXQsLmJ0bi1pbmZvIC5jYXJldCwuYnRuLXN1Y2Nlc3MgLmNhcmV0LC5idG4taW52ZXJzZSAuY2FyZXR7Ym9yZGVyLXRvcC1jb2xvcjojZmZmZmZmO2JvcmRlci1ib3R0b20tY29sb3I6I2ZmZmZmZjt9Ci5idG4tZ3JvdXAtdmVydGljYWx7ZGlzcGxheTppbmxpbmUtYmxvY2s7KmRpc3BsYXk6aW5saW5lOyp6b29tOjE7fQouYnRuLWdyb3VwLXZlcnRpY2FsPi5idG57ZGlzcGxheTpibG9jaztmbG9hdDpub25lO21heC13aWR0aDoxMDAlOy13ZWJraXQtYm9yZGVyLXJhZGl1czowOy1tb3otYm9yZGVyLXJhZGl1czowO2JvcmRlci1yYWRpdXM6MDt9Ci5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bisuYnRue21hcmdpbi1sZWZ0OjA7bWFyZ2luLXRvcDotMXB4O30KLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOmZpcnN0LWNoaWxkey13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHggNHB4IDAgMDstbW96LWJvcmRlci1yYWRpdXM6NHB4IDRweCAwIDA7Ym9yZGVyLXJhZGl1czo0cHggNHB4IDAgMDt9Ci5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bjpsYXN0LWNoaWxkey13ZWJraXQtYm9yZGVyLXJhZGl1czowIDAgNHB4IDRweDstbW96LWJvcmRlci1yYWRpdXM6MCAwIDRweCA0cHg7Ym9yZGVyLXJhZGl1czowIDAgNHB4IDRweDt9Ci5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi1sYXJnZTpmaXJzdC1jaGlsZHstd2Via2l0LWJvcmRlci1yYWRpdXM6NnB4IDZweCAwIDA7LW1vei1ib3JkZXItcmFkaXVzOjZweCA2cHggMCAwO2JvcmRlci1yYWRpdXM6NnB4IDZweCAwIDA7fQouYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tbGFyZ2U6bGFzdC1jaGlsZHstd2Via2l0LWJvcmRlci1yYWRpdXM6MCAwIDZweCA2cHg7LW1vei1ib3JkZXItcmFkaXVzOjAgMCA2cHggNnB4O2JvcmRlci1yYWRpdXM6MCAwIDZweCA2cHg7fQoubmF2e21hcmdpbi1sZWZ0OjA7bWFyZ2luLWJvdHRvbToyMHB4O2xpc3Qtc3R5bGU6bm9uZTt9Ci5uYXY+bGk+YXtkaXNwbGF5OmJsb2NrO30KLm5hdj5saT5hOmhvdmVyLC5uYXY+bGk+YTpmb2N1c3t0ZXh0LWRlY29yYXRpb246bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiNlZWVlZWU7fQoubmF2PmxpPmE+aW1ne21heC13aWR0aDpub25lO30KLm5hdj4ucHVsbC1yaWdodHtmbG9hdDpyaWdodDt9Ci5uYXYtaGVhZGVye2Rpc3BsYXk6YmxvY2s7cGFkZGluZzozcHggMTVweDtmb250LXNpemU6MTFweDtmb250LXdlaWdodDpib2xkO2xpbmUtaGVpZ2h0OjIwcHg7Y29sb3I6Izk5OTk5OTt0ZXh0LXNoYWRvdzowIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7fQoubmF2IGxpKy5uYXYtaGVhZGVye21hcmdpbi10b3A6OXB4O30KLm5hdi1saXN0e3BhZGRpbmctbGVmdDoxNXB4O3BhZGRpbmctcmlnaHQ6MTVweDttYXJnaW4tYm90dG9tOjA7fQoubmF2LWxpc3Q+bGk+YSwubmF2LWxpc3QgLm5hdi1oZWFkZXJ7bWFyZ2luLWxlZnQ6LTE1cHg7bWFyZ2luLXJpZ2h0Oi0xNXB4O3RleHQtc2hhZG93OjAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO30KLm5hdi1saXN0PmxpPmF7cGFkZGluZzozcHggMTVweDt9Ci5uYXYtbGlzdD4uYWN0aXZlPmEsLm5hdi1saXN0Pi5hY3RpdmU+YTpob3ZlciwubmF2LWxpc3Q+LmFjdGl2ZT5hOmZvY3Vze2NvbG9yOiNmZmZmZmY7dGV4dC1zaGFkb3c6MCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO2JhY2tncm91bmQtY29sb3I6IzAwODhjYzt9Ci5uYXYtbGlzdCBbY2xhc3NePSJpY29uLSJdLC5uYXYtbGlzdCBbY2xhc3MqPSIgaWNvbi0iXXttYXJnaW4tcmlnaHQ6MnB4O30KLm5hdi1saXN0IC5kaXZpZGVyeyp3aWR0aDoxMDAlO2hlaWdodDoxcHg7bWFyZ2luOjlweCAxcHg7Km1hcmdpbjotNXB4IDAgNXB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kLWNvbG9yOiNlNWU1ZTU7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2ZmZmZmZjt9Ci5uYXYtdGFicywubmF2LXBpbGxzeyp6b29tOjE7fS5uYXYtdGFiczpiZWZvcmUsLm5hdi1waWxsczpiZWZvcmUsLm5hdi10YWJzOmFmdGVyLC5uYXYtcGlsbHM6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OiIiO2xpbmUtaGVpZ2h0OjA7fQoubmF2LXRhYnM6YWZ0ZXIsLm5hdi1waWxsczphZnRlcntjbGVhcjpib3RoO30KLm5hdi10YWJzPmxpLC5uYXYtcGlsbHM+bGl7ZmxvYXQ6bGVmdDt9Ci5uYXYtdGFicz5saT5hLC5uYXYtcGlsbHM+bGk+YXtwYWRkaW5nLXJpZ2h0OjEycHg7cGFkZGluZy1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0OjJweDtsaW5lLWhlaWdodDoxNHB4O30KLm5hdi10YWJze2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNkZGQ7fQoubmF2LXRhYnM+bGl7bWFyZ2luLWJvdHRvbTotMXB4O30KLm5hdi10YWJzPmxpPmF7cGFkZGluZy10b3A6OHB4O3BhZGRpbmctYm90dG9tOjhweDtsaW5lLWhlaWdodDoyMHB4O2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjRweCA0cHggMCAwOy1tb3otYm9yZGVyLXJhZGl1czo0cHggNHB4IDAgMDtib3JkZXItcmFkaXVzOjRweCA0cHggMCAwO30ubmF2LXRhYnM+bGk+YTpob3ZlciwubmF2LXRhYnM+bGk+YTpmb2N1c3tib3JkZXItY29sb3I6I2VlZWVlZSAjZWVlZWVlICNkZGRkZGQ7fQoubmF2LXRhYnM+LmFjdGl2ZT5hLC5uYXYtdGFicz4uYWN0aXZlPmE6aG92ZXIsLm5hdi10YWJzPi5hY3RpdmU+YTpmb2N1c3tjb2xvcjojNTU1NTU1O2JhY2tncm91bmQtY29sb3I6I2ZmZmZmZjtib3JkZXI6MXB4IHNvbGlkICNkZGQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp0cmFuc3BhcmVudDtjdXJzb3I6ZGVmYXVsdDt9Ci5uYXYtcGlsbHM+bGk+YXtwYWRkaW5nLXRvcDo4cHg7cGFkZGluZy1ib3R0b206OHB4O21hcmdpbi10b3A6MnB4O21hcmdpbi1ib3R0b206MnB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo1cHg7LW1vei1ib3JkZXItcmFkaXVzOjVweDtib3JkZXItcmFkaXVzOjVweDt9Ci5uYXYtcGlsbHM+LmFjdGl2ZT5hLC5uYXYtcGlsbHM+LmFjdGl2ZT5hOmhvdmVyLC5uYXYtcGlsbHM+LmFjdGl2ZT5hOmZvY3Vze2NvbG9yOiNmZmZmZmY7YmFja2dyb3VuZC1jb2xvcjojMDA4OGNjO30KLm5hdi1zdGFja2VkPmxpe2Zsb2F0Om5vbmU7fQoubmF2LXN0YWNrZWQ+bGk+YXttYXJnaW4tcmlnaHQ6MDt9Ci5uYXYtdGFicy5uYXYtc3RhY2tlZHtib3JkZXItYm90dG9tOjA7fQoubmF2LXRhYnMubmF2LXN0YWNrZWQ+bGk+YXtib3JkZXI6MXB4IHNvbGlkICNkZGQ7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjA7LW1vei1ib3JkZXItcmFkaXVzOjA7Ym9yZGVyLXJhZGl1czowO30KLm5hdi10YWJzLm5hdi1zdGFja2VkPmxpOmZpcnN0LWNoaWxkPmF7LXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzLXRvcHJpZ2h0OjRweDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czo0cHg7LXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXMtdG9wbGVmdDo0cHg7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo0cHg7fQoubmF2LXRhYnMubmF2LXN0YWNrZWQ+bGk6bGFzdC1jaGlsZD5hey13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NHB4Oy1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21yaWdodDo0cHg7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NHB4Oy13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbWxlZnQ6NHB4O2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6NHB4O30KLm5hdi10YWJzLm5hdi1zdGFja2VkPmxpPmE6aG92ZXIsLm5hdi10YWJzLm5hdi1zdGFja2VkPmxpPmE6Zm9jdXN7Ym9yZGVyLWNvbG9yOiNkZGQ7ei1pbmRleDoyO30KLm5hdi1waWxscy5uYXYtc3RhY2tlZD5saT5he21hcmdpbi1ib3R0b206M3B4O30KLm5hdi1waWxscy5uYXYtc3RhY2tlZD5saTpsYXN0LWNoaWxkPmF7bWFyZ2luLWJvdHRvbToxcHg7fQoubmF2LXRhYnMgLmRyb3Bkb3duLW1lbnV7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjAgMCA2cHggNnB4Oy1tb3otYm9yZGVyLXJhZGl1czowIDAgNnB4IDZweDtib3JkZXItcmFkaXVzOjAgMCA2cHggNnB4O30KLm5hdi1waWxscyAuZHJvcGRvd24tbWVudXstd2Via2l0LWJvcmRlci1yYWRpdXM6NnB4Oy1tb3otYm9yZGVyLXJhZGl1czo2cHg7Ym9yZGVyLXJhZGl1czo2cHg7fQoubmF2IC5kcm9wZG93bi10b2dnbGUgLmNhcmV0e2JvcmRlci10b3AtY29sb3I6IzAwODhjYztib3JkZXItYm90dG9tLWNvbG9yOiMwMDg4Y2M7bWFyZ2luLXRvcDo2cHg7fQoubmF2IC5kcm9wZG93bi10b2dnbGU6aG92ZXIgLmNhcmV0LC5uYXYgLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyAuY2FyZXR7Ym9yZGVyLXRvcC1jb2xvcjojMDA1NTgwO2JvcmRlci1ib3R0b20tY29sb3I6IzAwNTU4MDt9Ci5uYXYtdGFicyAuZHJvcGRvd24tdG9nZ2xlIC5jYXJldHttYXJnaW4tdG9wOjhweDt9Ci5uYXYgLmFjdGl2ZSAuZHJvcGRvd24tdG9nZ2xlIC5jYXJldHtib3JkZXItdG9wLWNvbG9yOiNmZmY7Ym9yZGVyLWJvdHRvbS1jb2xvcjojZmZmO30KLm5hdi10YWJzIC5hY3RpdmUgLmRyb3Bkb3duLXRvZ2dsZSAuY2FyZXR7Ym9yZGVyLXRvcC1jb2xvcjojNTU1NTU1O2JvcmRlci1ib3R0b20tY29sb3I6IzU1NTU1NTt9Ci5uYXY+LmRyb3Bkb3duLmFjdGl2ZT5hOmhvdmVyLC5uYXY+LmRyb3Bkb3duLmFjdGl2ZT5hOmZvY3Vze2N1cnNvcjpwb2ludGVyO30KLm5hdi10YWJzIC5vcGVuIC5kcm9wZG93bi10b2dnbGUsLm5hdi1waWxscyAub3BlbiAuZHJvcGRvd24tdG9nZ2xlLC5uYXY+bGkuZHJvcGRvd24ub3Blbi5hY3RpdmU+YTpob3ZlciwubmF2PmxpLmRyb3Bkb3duLm9wZW4uYWN0aXZlPmE6Zm9jdXN7Y29sb3I6I2ZmZmZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM5OTk5OTk7Ym9yZGVyLWNvbG9yOiM5OTk5OTk7fQoubmF2IGxpLmRyb3Bkb3duLm9wZW4gLmNhcmV0LC5uYXYgbGkuZHJvcGRvd24ub3Blbi5hY3RpdmUgLmNhcmV0LC5uYXYgbGkuZHJvcGRvd24ub3BlbiBhOmhvdmVyIC5jYXJldCwubmF2IGxpLmRyb3Bkb3duLm9wZW4gYTpmb2N1cyAuY2FyZXR7Ym9yZGVyLXRvcC1jb2xvcjojZmZmZmZmO2JvcmRlci1ib3R0b20tY29sb3I6I2ZmZmZmZjtvcGFjaXR5OjE7ZmlsdGVyOmFscGhhKG9wYWNpdHk9MTAwKTt9Ci50YWJzLXN0YWNrZWQgLm9wZW4+YTpob3ZlciwudGFicy1zdGFja2VkIC5vcGVuPmE6Zm9jdXN7Ym9yZGVyLWNvbG9yOiM5OTk5OTk7fQoudGFiYmFibGV7Knpvb206MTt9LnRhYmJhYmxlOmJlZm9yZSwudGFiYmFibGU6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OiIiO2xpbmUtaGVpZ2h0OjA7fQoudGFiYmFibGU6YWZ0ZXJ7Y2xlYXI6Ym90aDt9Ci50YWItY29udGVudHtvdmVyZmxvdzphdXRvO30KLnRhYnMtYmVsb3c+Lm5hdi10YWJzLC50YWJzLXJpZ2h0Pi5uYXYtdGFicywudGFicy1sZWZ0Pi5uYXYtdGFic3tib3JkZXItYm90dG9tOjA7fQoudGFiLWNvbnRlbnQ+LnRhYi1wYW5lLC5waWxsLWNvbnRlbnQ+LnBpbGwtcGFuZXtkaXNwbGF5Om5vbmU7fQoudGFiLWNvbnRlbnQ+LmFjdGl2ZSwucGlsbC1jb250ZW50Pi5hY3RpdmV7ZGlzcGxheTpibG9jazt9Ci50YWJzLWJlbG93Pi5uYXYtdGFic3tib3JkZXItdG9wOjFweCBzb2xpZCAjZGRkO30KLnRhYnMtYmVsb3c+Lm5hdi10YWJzPmxpe21hcmdpbi10b3A6LTFweDttYXJnaW4tYm90dG9tOjA7fQoudGFicy1iZWxvdz4ubmF2LXRhYnM+bGk+YXstd2Via2l0LWJvcmRlci1yYWRpdXM6MCAwIDRweCA0cHg7LW1vei1ib3JkZXItcmFkaXVzOjAgMCA0cHggNHB4O2JvcmRlci1yYWRpdXM6MCAwIDRweCA0cHg7fS50YWJzLWJlbG93Pi5uYXYtdGFicz5saT5hOmhvdmVyLC50YWJzLWJlbG93Pi5uYXYtdGFicz5saT5hOmZvY3Vze2JvcmRlci1ib3R0b20tY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXRvcC1jb2xvcjojZGRkO30KLnRhYnMtYmVsb3c+Lm5hdi10YWJzPi5hY3RpdmU+YSwudGFicy1iZWxvdz4ubmF2LXRhYnM+LmFjdGl2ZT5hOmhvdmVyLC50YWJzLWJlbG93Pi5uYXYtdGFicz4uYWN0aXZlPmE6Zm9jdXN7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50ICNkZGQgI2RkZCAjZGRkO30KLnRhYnMtbGVmdD4ubmF2LXRhYnM+bGksLnRhYnMtcmlnaHQ+Lm5hdi10YWJzPmxpe2Zsb2F0Om5vbmU7fQoudGFicy1sZWZ0Pi5uYXYtdGFicz5saT5hLC50YWJzLXJpZ2h0Pi5uYXYtdGFicz5saT5he21pbi13aWR0aDo3NHB4O21hcmdpbi1yaWdodDowO21hcmdpbi1ib3R0b206M3B4O30KLnRhYnMtbGVmdD4ubmF2LXRhYnN7ZmxvYXQ6bGVmdDttYXJnaW4tcmlnaHQ6MTlweDtib3JkZXItcmlnaHQ6MXB4IHNvbGlkICNkZGQ7fQoudGFicy1sZWZ0Pi5uYXYtdGFicz5saT5he21hcmdpbi1yaWdodDotMXB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHggMCAwIDRweDstbW96LWJvcmRlci1yYWRpdXM6NHB4IDAgMCA0cHg7Ym9yZGVyLXJhZGl1czo0cHggMCAwIDRweDt9Ci50YWJzLWxlZnQ+Lm5hdi10YWJzPmxpPmE6aG92ZXIsLnRhYnMtbGVmdD4ubmF2LXRhYnM+bGk+YTpmb2N1c3tib3JkZXItY29sb3I6I2VlZWVlZSAjZGRkZGRkICNlZWVlZWUgI2VlZWVlZTt9Ci50YWJzLWxlZnQ+Lm5hdi10YWJzIC5hY3RpdmU+YSwudGFicy1sZWZ0Pi5uYXYtdGFicyAuYWN0aXZlPmE6aG92ZXIsLnRhYnMtbGVmdD4ubmF2LXRhYnMgLmFjdGl2ZT5hOmZvY3Vze2JvcmRlci1jb2xvcjojZGRkIHRyYW5zcGFyZW50ICNkZGQgI2RkZDsqYm9yZGVyLXJpZ2h0LWNvbG9yOiNmZmZmZmY7fQoudGFicy1yaWdodD4ubmF2LXRhYnN7ZmxvYXQ6cmlnaHQ7bWFyZ2luLWxlZnQ6MTlweDtib3JkZXItbGVmdDoxcHggc29saWQgI2RkZDt9Ci50YWJzLXJpZ2h0Pi5uYXYtdGFicz5saT5he21hcmdpbi1sZWZ0Oi0xcHg7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjAgNHB4IDRweCAwOy1tb3otYm9yZGVyLXJhZGl1czowIDRweCA0cHggMDtib3JkZXItcmFkaXVzOjAgNHB4IDRweCAwO30KLnRhYnMtcmlnaHQ+Lm5hdi10YWJzPmxpPmE6aG92ZXIsLnRhYnMtcmlnaHQ+Lm5hdi10YWJzPmxpPmE6Zm9jdXN7Ym9yZGVyLWNvbG9yOiNlZWVlZWUgI2VlZWVlZSAjZWVlZWVlICNkZGRkZGQ7fQoudGFicy1yaWdodD4ubmF2LXRhYnMgLmFjdGl2ZT5hLC50YWJzLXJpZ2h0Pi5uYXYtdGFicyAuYWN0aXZlPmE6aG92ZXIsLnRhYnMtcmlnaHQ+Lm5hdi10YWJzIC5hY3RpdmU+YTpmb2N1c3tib3JkZXItY29sb3I6I2RkZCAjZGRkICNkZGQgdHJhbnNwYXJlbnQ7KmJvcmRlci1sZWZ0LWNvbG9yOiNmZmZmZmY7fQoubmF2Pi5kaXNhYmxlZD5he2NvbG9yOiM5OTk5OTk7fQoubmF2Pi5kaXNhYmxlZD5hOmhvdmVyLC5uYXY+LmRpc2FibGVkPmE6Zm9jdXN7dGV4dC1kZWNvcmF0aW9uOm5vbmU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtjdXJzb3I6ZGVmYXVsdDt9Ci5uYXZiYXJ7b3ZlcmZsb3c6dmlzaWJsZTttYXJnaW4tYm90dG9tOjIwcHg7KnBvc2l0aW9uOnJlbGF0aXZlOyp6LWluZGV4OjI7fQoubmF2YmFyLWlubmVye21pbi1oZWlnaHQ6NDBweDtwYWRkaW5nLWxlZnQ6MjBweDtwYWRkaW5nLXJpZ2h0OjIwcHg7YmFja2dyb3VuZC1jb2xvcjojZmFmYWZhO2JhY2tncm91bmQtaW1hZ2U6LW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmZmZmLCAjZjJmMmYyKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbSgjZmZmZmZmKSwgdG8oI2YyZjJmMikpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZmZmZmLCAjZjJmMmYyKTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmZmZmYsICNmMmYyZjIpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2ZmZmZmZiwgI2YyZjJmMik7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmZmZmZmZmYnLCBlbmRDb2xvcnN0cj0nI2ZmZjJmMmYyJywgR3JhZGllbnRUeXBlPTApO2JvcmRlcjoxcHggc29saWQgI2Q0ZDRkNDstd2Via2l0LWJvcmRlci1yYWRpdXM6NHB4Oy1tb3otYm9yZGVyLXJhZGl1czo0cHg7Ym9yZGVyLXJhZGl1czo0cHg7LXdlYmtpdC1ib3gtc2hhZG93OjAgMXB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMDY1KTstbW96LWJveC1zaGFkb3c6MCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4wNjUpO2JveC1zaGFkb3c6MCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4wNjUpOyp6b29tOjE7fS5uYXZiYXItaW5uZXI6YmVmb3JlLC5uYXZiYXItaW5uZXI6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OiIiO2xpbmUtaGVpZ2h0OjA7fQoubmF2YmFyLWlubmVyOmFmdGVye2NsZWFyOmJvdGg7fQoubmF2YmFyIC5jb250YWluZXJ7d2lkdGg6YXV0bzt9Ci5uYXYtY29sbGFwc2UuY29sbGFwc2V7aGVpZ2h0OmF1dG87b3ZlcmZsb3c6dmlzaWJsZTt9Ci5uYXZiYXIgLmJyYW5ke2Zsb2F0OmxlZnQ7ZGlzcGxheTpibG9jaztwYWRkaW5nOjEwcHggMjBweCAxMHB4O21hcmdpbi1sZWZ0Oi0yMHB4O2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0OjIwMDtjb2xvcjojNzc3Nzc3O3RleHQtc2hhZG93OjAgMXB4IDAgI2ZmZmZmZjt9Lm5hdmJhciAuYnJhbmQ6aG92ZXIsLm5hdmJhciAuYnJhbmQ6Zm9jdXN7dGV4dC1kZWNvcmF0aW9uOm5vbmU7fQoubmF2YmFyLXRleHR7bWFyZ2luLWJvdHRvbTowO2xpbmUtaGVpZ2h0OjQwcHg7Y29sb3I6Izc3Nzc3Nzt9Ci5uYXZiYXItbGlua3tjb2xvcjojNzc3Nzc3O30ubmF2YmFyLWxpbms6aG92ZXIsLm5hdmJhci1saW5rOmZvY3Vze2NvbG9yOiMzMzMzMzM7fQoubmF2YmFyIC5kaXZpZGVyLXZlcnRpY2Fse2hlaWdodDo0MHB4O21hcmdpbjowIDlweDtib3JkZXItbGVmdDoxcHggc29saWQgI2YyZjJmMjtib3JkZXItcmlnaHQ6MXB4IHNvbGlkICNmZmZmZmY7fQoubmF2YmFyIC5idG4sLm5hdmJhciAuYnRuLWdyb3Vwe21hcmdpbi10b3A6NXB4O30KLm5hdmJhciAuYnRuLWdyb3VwIC5idG4sLm5hdmJhciAuaW5wdXQtcHJlcGVuZCAuYnRuLC5uYXZiYXIgLmlucHV0LWFwcGVuZCAuYnRuLC5uYXZiYXIgLmlucHV0LXByZXBlbmQgLmJ0bi1ncm91cCwubmF2YmFyIC5pbnB1dC1hcHBlbmQgLmJ0bi1ncm91cHttYXJnaW4tdG9wOjA7fQoubmF2YmFyLWZvcm17bWFyZ2luLWJvdHRvbTowOyp6b29tOjE7fS5uYXZiYXItZm9ybTpiZWZvcmUsLm5hdmJhci1mb3JtOmFmdGVye2Rpc3BsYXk6dGFibGU7Y29udGVudDoiIjtsaW5lLWhlaWdodDowO30KLm5hdmJhci1mb3JtOmFmdGVye2NsZWFyOmJvdGg7fQoubmF2YmFyLWZvcm0gaW5wdXQsLm5hdmJhci1mb3JtIHNlbGVjdCwubmF2YmFyLWZvcm0gLnJhZGlvLC5uYXZiYXItZm9ybSAuY2hlY2tib3h7bWFyZ2luLXRvcDo1cHg7fQoubmF2YmFyLWZvcm0gaW5wdXQsLm5hdmJhci1mb3JtIHNlbGVjdCwubmF2YmFyLWZvcm0gLmJ0bntkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tYm90dG9tOjA7fQoubmF2YmFyLWZvcm0gaW5wdXRbdHlwZT0iaW1hZ2UiXSwubmF2YmFyLWZvcm0gaW5wdXRbdHlwZT0iY2hlY2tib3giXSwubmF2YmFyLWZvcm0gaW5wdXRbdHlwZT0icmFkaW8iXXttYXJnaW4tdG9wOjNweDt9Ci5uYXZiYXItZm9ybSAuaW5wdXQtYXBwZW5kLC5uYXZiYXItZm9ybSAuaW5wdXQtcHJlcGVuZHttYXJnaW4tdG9wOjVweDt3aGl0ZS1zcGFjZTpub3dyYXA7fS5uYXZiYXItZm9ybSAuaW5wdXQtYXBwZW5kIGlucHV0LC5uYXZiYXItZm9ybSAuaW5wdXQtcHJlcGVuZCBpbnB1dHttYXJnaW4tdG9wOjA7fQoubmF2YmFyLXNlYXJjaHtwb3NpdGlvbjpyZWxhdGl2ZTtmbG9hdDpsZWZ0O21hcmdpbi10b3A6NXB4O21hcmdpbi1ib3R0b206MDt9Lm5hdmJhci1zZWFyY2ggLnNlYXJjaC1xdWVyeXttYXJnaW4tYm90dG9tOjA7cGFkZGluZzo0cHggMTRweDtmb250LWZhbWlseToiSGVsdmV0aWNhIE5ldWUiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0Om5vcm1hbDtsaW5lLWhlaWdodDoxOy13ZWJraXQtYm9yZGVyLXJhZGl1czoxNXB4Oy1tb3otYm9yZGVyLXJhZGl1czoxNXB4O2JvcmRlci1yYWRpdXM6MTVweDt9Ci5uYXZiYXItc3RhdGljLXRvcHtwb3NpdGlvbjpzdGF0aWM7bWFyZ2luLWJvdHRvbTowO30ubmF2YmFyLXN0YXRpYy10b3AgLm5hdmJhci1pbm5lcnstd2Via2l0LWJvcmRlci1yYWRpdXM6MDstbW96LWJvcmRlci1yYWRpdXM6MDtib3JkZXItcmFkaXVzOjA7fQoubmF2YmFyLWZpeGVkLXRvcCwubmF2YmFyLWZpeGVkLWJvdHRvbXtwb3NpdGlvbjpmaXhlZDtyaWdodDowO2xlZnQ6MDt6LWluZGV4OjEwMzA7bWFyZ2luLWJvdHRvbTowO30KLm5hdmJhci1maXhlZC10b3AgLm5hdmJhci1pbm5lciwubmF2YmFyLXN0YXRpYy10b3AgLm5hdmJhci1pbm5lcntib3JkZXItd2lkdGg6MCAwIDFweDt9Ci5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItaW5uZXJ7Ym9yZGVyLXdpZHRoOjFweCAwIDA7fQoubmF2YmFyLWZpeGVkLXRvcCAubmF2YmFyLWlubmVyLC5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXZiYXItaW5uZXJ7cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowOy13ZWJraXQtYm9yZGVyLXJhZGl1czowOy1tb3otYm9yZGVyLXJhZGl1czowO2JvcmRlci1yYWRpdXM6MDt9Ci5uYXZiYXItc3RhdGljLXRvcCAuY29udGFpbmVyLC5uYXZiYXItZml4ZWQtdG9wIC5jb250YWluZXIsLm5hdmJhci1maXhlZC1ib3R0b20gLmNvbnRhaW5lcnt3aWR0aDo5NDBweDt9Ci5uYXZiYXItZml4ZWQtdG9we3RvcDowO30KLm5hdmJhci1maXhlZC10b3AgLm5hdmJhci1pbm5lciwubmF2YmFyLXN0YXRpYy10b3AgLm5hdmJhci1pbm5lcnstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMTBweCByZ2JhKDAsMCwwLC4xKTstbW96LWJveC1zaGFkb3c6MCAxcHggMTBweCByZ2JhKDAsMCwwLC4xKTtib3gtc2hhZG93OjAgMXB4IDEwcHggcmdiYSgwLDAsMCwuMSk7fQoubmF2YmFyLWZpeGVkLWJvdHRvbXtib3R0b206MDt9Lm5hdmJhci1maXhlZC1ib3R0b20gLm5hdmJhci1pbm5lcnstd2Via2l0LWJveC1zaGFkb3c6MCAtMXB4IDEwcHggcmdiYSgwLDAsMCwuMSk7LW1vei1ib3gtc2hhZG93OjAgLTFweCAxMHB4IHJnYmEoMCwwLDAsLjEpO2JveC1zaGFkb3c6MCAtMXB4IDEwcHggcmdiYSgwLDAsMCwuMSk7fQoubmF2YmFyIC5uYXZ7cG9zaXRpb246cmVsYXRpdmU7bGVmdDowO2Rpc3BsYXk6YmxvY2s7ZmxvYXQ6bGVmdDttYXJnaW46MCAxMHB4IDAgMDt9Ci5uYXZiYXIgLm5hdi5wdWxsLXJpZ2h0e2Zsb2F0OnJpZ2h0O21hcmdpbi1yaWdodDowO30KLm5hdmJhciAubmF2Pmxpe2Zsb2F0OmxlZnQ7fQoubmF2YmFyIC5uYXY+bGk+YXtmbG9hdDpub25lO3BhZGRpbmc6MTBweCAxNXB4IDEwcHg7Y29sb3I6Izc3Nzc3Nzt0ZXh0LWRlY29yYXRpb246bm9uZTt0ZXh0LXNoYWRvdzowIDFweCAwICNmZmZmZmY7fQoubmF2YmFyIC5uYXYgLmRyb3Bkb3duLXRvZ2dsZSAuY2FyZXR7bWFyZ2luLXRvcDo4cHg7fQoubmF2YmFyIC5uYXY+bGk+YTpmb2N1cywubmF2YmFyIC5uYXY+bGk+YTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2NvbG9yOiMzMzMzMzM7dGV4dC1kZWNvcmF0aW9uOm5vbmU7fQoubmF2YmFyIC5uYXY+LmFjdGl2ZT5hLC5uYXZiYXIgLm5hdj4uYWN0aXZlPmE6aG92ZXIsLm5hdmJhciAubmF2Pi5hY3RpdmU+YTpmb2N1c3tjb2xvcjojNTU1NTU1O3RleHQtZGVjb3JhdGlvbjpub25lO2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNTstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAzcHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOy1tb3otYm94LXNoYWRvdzppbnNldCAwIDNweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7Ym94LXNoYWRvdzppbnNldCAwIDNweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7fQoubmF2YmFyIC5idG4tbmF2YmFye2Rpc3BsYXk6bm9uZTtmbG9hdDpyaWdodDtwYWRkaW5nOjdweCAxMHB4O21hcmdpbi1sZWZ0OjVweDttYXJnaW4tcmlnaHQ6NXB4O2NvbG9yOiNmZmZmZmY7dGV4dC1zaGFkb3c6MCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtiYWNrZ3JvdW5kLWNvbG9yOiNlZGVkZWQ7YmFja2dyb3VuZC1pbWFnZTotbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNmMmYyZjIsICNlNWU1ZTUpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCNmMmYyZjIpLCB0bygjZTVlNWU1KSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNmMmYyZjIsICNlNWU1ZTUpO2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2YyZjJmMiwgI2U1ZTVlNSk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZjJmMmYyLCAjZTVlNWU1KTtiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQteDtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNmZmYyZjJmMicsIGVuZENvbG9yc3RyPScjZmZlNWU1ZTUnLCBHcmFkaWVudFR5cGU9MCk7Ym9yZGVyLWNvbG9yOiNlNWU1ZTUgI2U1ZTVlNSAjYmZiZmJmO2JvcmRlci1jb2xvcjpyZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjEpIHJnYmEoMCwgMCwgMCwgMC4yNSk7KmJhY2tncm91bmQtY29sb3I6I2U1ZTVlNTtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KGVuYWJsZWQgPSBmYWxzZSk7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSksIDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMDc1KTstbW96LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKSwgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4wNzUpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKSwgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4wNzUpO30ubmF2YmFyIC5idG4tbmF2YmFyOmhvdmVyLC5uYXZiYXIgLmJ0bi1uYXZiYXI6Zm9jdXMsLm5hdmJhciAuYnRuLW5hdmJhcjphY3RpdmUsLm5hdmJhciAuYnRuLW5hdmJhci5hY3RpdmUsLm5hdmJhciAuYnRuLW5hdmJhci5kaXNhYmxlZCwubmF2YmFyIC5idG4tbmF2YmFyW2Rpc2FibGVkXXtjb2xvcjojZmZmZmZmO2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNTsqYmFja2dyb3VuZC1jb2xvcjojZDlkOWQ5O30KLm5hdmJhciAuYnRuLW5hdmJhcjphY3RpdmUsLm5hdmJhciAuYnRuLW5hdmJhci5hY3RpdmV7YmFja2dyb3VuZC1jb2xvcjojY2NjY2NjIFw5O30KLm5hdmJhciAuYnRuLW5hdmJhciAuaWNvbi1iYXJ7ZGlzcGxheTpibG9jazt3aWR0aDoxOHB4O2hlaWdodDoycHg7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1Oy13ZWJraXQtYm9yZGVyLXJhZGl1czoxcHg7LW1vei1ib3JkZXItcmFkaXVzOjFweDtib3JkZXItcmFkaXVzOjFweDstd2Via2l0LWJveC1zaGFkb3c6MCAxcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpOy1tb3otYm94LXNoYWRvdzowIDFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7Ym94LXNoYWRvdzowIDFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7fQouYnRuLW5hdmJhciAuaWNvbi1iYXIrLmljb24tYmFye21hcmdpbi10b3A6M3B4O30KLm5hdmJhciAubmF2PmxpPi5kcm9wZG93bi1tZW51OmJlZm9yZXtjb250ZW50OicnO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2JvcmRlci1sZWZ0OjdweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6N3B4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1ib3R0b206N3B4IHNvbGlkICNjY2M7Ym9yZGVyLWJvdHRvbS1jb2xvcjpyZ2JhKDAsIDAsIDAsIDAuMik7cG9zaXRpb246YWJzb2x1dGU7dG9wOi03cHg7bGVmdDo5cHg7fQoubmF2YmFyIC5uYXY+bGk+LmRyb3Bkb3duLW1lbnU6YWZ0ZXJ7Y29udGVudDonJztkaXNwbGF5OmlubGluZS1ibG9jaztib3JkZXItbGVmdDo2cHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJpZ2h0OjZweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjZweCBzb2xpZCAjZmZmZmZmO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNnB4O2xlZnQ6MTBweDt9Ci5uYXZiYXItZml4ZWQtYm90dG9tIC5uYXY+bGk+LmRyb3Bkb3duLW1lbnU6YmVmb3Jle2JvcmRlci10b3A6N3B4IHNvbGlkICNjY2M7Ym9yZGVyLXRvcC1jb2xvcjpyZ2JhKDAsIDAsIDAsIDAuMik7Ym9yZGVyLWJvdHRvbTowO2JvdHRvbTotN3B4O3RvcDphdXRvO30KLm5hdmJhci1maXhlZC1ib3R0b20gLm5hdj5saT4uZHJvcGRvd24tbWVudTphZnRlcntib3JkZXItdG9wOjZweCBzb2xpZCAjZmZmZmZmO2JvcmRlci1ib3R0b206MDtib3R0b206LTZweDt0b3A6YXV0bzt9Ci5uYXZiYXIgLm5hdiBsaS5kcm9wZG93bj5hOmhvdmVyIC5jYXJldCwubmF2YmFyIC5uYXYgbGkuZHJvcGRvd24+YTpmb2N1cyAuY2FyZXR7Ym9yZGVyLXRvcC1jb2xvcjojMzMzMzMzO2JvcmRlci1ib3R0b20tY29sb3I6IzMzMzMzMzt9Ci5uYXZiYXIgLm5hdiBsaS5kcm9wZG93bi5vcGVuPi5kcm9wZG93bi10b2dnbGUsLm5hdmJhciAubmF2IGxpLmRyb3Bkb3duLmFjdGl2ZT4uZHJvcGRvd24tdG9nZ2xlLC5uYXZiYXIgLm5hdiBsaS5kcm9wZG93bi5vcGVuLmFjdGl2ZT4uZHJvcGRvd24tdG9nZ2xle2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNTtjb2xvcjojNTU1NTU1O30KLm5hdmJhciAubmF2IGxpLmRyb3Bkb3duPi5kcm9wZG93bi10b2dnbGUgLmNhcmV0e2JvcmRlci10b3AtY29sb3I6Izc3Nzc3Nztib3JkZXItYm90dG9tLWNvbG9yOiM3Nzc3Nzc7fQoubmF2YmFyIC5uYXYgbGkuZHJvcGRvd24ub3Blbj4uZHJvcGRvd24tdG9nZ2xlIC5jYXJldCwubmF2YmFyIC5uYXYgbGkuZHJvcGRvd24uYWN0aXZlPi5kcm9wZG93bi10b2dnbGUgLmNhcmV0LC5uYXZiYXIgLm5hdiBsaS5kcm9wZG93bi5vcGVuLmFjdGl2ZT4uZHJvcGRvd24tdG9nZ2xlIC5jYXJldHtib3JkZXItdG9wLWNvbG9yOiM1NTU1NTU7Ym9yZGVyLWJvdHRvbS1jb2xvcjojNTU1NTU1O30KLm5hdmJhciAucHVsbC1yaWdodD5saT4uZHJvcGRvd24tbWVudSwubmF2YmFyIC5uYXY+bGk+LmRyb3Bkb3duLW1lbnUucHVsbC1yaWdodHtsZWZ0OmF1dG87cmlnaHQ6MDt9Lm5hdmJhciAucHVsbC1yaWdodD5saT4uZHJvcGRvd24tbWVudTpiZWZvcmUsLm5hdmJhciAubmF2PmxpPi5kcm9wZG93bi1tZW51LnB1bGwtcmlnaHQ6YmVmb3Jle2xlZnQ6YXV0bztyaWdodDoxMnB4O30KLm5hdmJhciAucHVsbC1yaWdodD5saT4uZHJvcGRvd24tbWVudTphZnRlciwubmF2YmFyIC5uYXY+bGk+LmRyb3Bkb3duLW1lbnUucHVsbC1yaWdodDphZnRlcntsZWZ0OmF1dG87cmlnaHQ6MTNweDt9Ci5uYXZiYXIgLnB1bGwtcmlnaHQ+bGk+LmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUsLm5hdmJhciAubmF2PmxpPi5kcm9wZG93bi1tZW51LnB1bGwtcmlnaHQgLmRyb3Bkb3duLW1lbnV7bGVmdDphdXRvO3JpZ2h0OjEwMCU7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6LTFweDstd2Via2l0LWJvcmRlci1yYWRpdXM6NnB4IDAgNnB4IDZweDstbW96LWJvcmRlci1yYWRpdXM6NnB4IDAgNnB4IDZweDtib3JkZXItcmFkaXVzOjZweCAwIDZweCA2cHg7fQoubmF2YmFyLWludmVyc2UgLm5hdmJhci1pbm5lcntiYWNrZ3JvdW5kLWNvbG9yOiMxYjFiMWI7YmFja2dyb3VuZC1pbWFnZTotbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICMyMjIyMjIsICMxMTExMTEpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCMyMjIyMjIpLCB0bygjMTExMTExKSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMyMjIyMjIsICMxMTExMTEpO2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzIyMjIyMiwgIzExMTExMSk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMjIyMjIyLCAjMTExMTExKTtiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQteDtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNmZjIyMjIyMicsIGVuZENvbG9yc3RyPScjZmYxMTExMTEnLCBHcmFkaWVudFR5cGU9MCk7Ym9yZGVyLWNvbG9yOiMyNTI1MjU7fQoubmF2YmFyLWludmVyc2UgLmJyYW5kLC5uYXZiYXItaW52ZXJzZSAubmF2PmxpPmF7Y29sb3I6Izk5OTk5OTt0ZXh0LXNoYWRvdzowIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO30ubmF2YmFyLWludmVyc2UgLmJyYW5kOmhvdmVyLC5uYXZiYXItaW52ZXJzZSAubmF2PmxpPmE6aG92ZXIsLm5hdmJhci1pbnZlcnNlIC5icmFuZDpmb2N1cywubmF2YmFyLWludmVyc2UgLm5hdj5saT5hOmZvY3Vze2NvbG9yOiNmZmZmZmY7fQoubmF2YmFyLWludmVyc2UgLmJyYW5ke2NvbG9yOiM5OTk5OTk7fQoubmF2YmFyLWludmVyc2UgLm5hdmJhci10ZXh0e2NvbG9yOiM5OTk5OTk7fQoubmF2YmFyLWludmVyc2UgLm5hdj5saT5hOmZvY3VzLC5uYXZiYXItaW52ZXJzZSAubmF2PmxpPmE6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtjb2xvcjojZmZmZmZmO30KLm5hdmJhci1pbnZlcnNlIC5uYXYgLmFjdGl2ZT5hLC5uYXZiYXItaW52ZXJzZSAubmF2IC5hY3RpdmU+YTpob3ZlciwubmF2YmFyLWludmVyc2UgLm5hdiAuYWN0aXZlPmE6Zm9jdXN7Y29sb3I6I2ZmZmZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMxMTExMTE7fQoubmF2YmFyLWludmVyc2UgLm5hdmJhci1saW5re2NvbG9yOiM5OTk5OTk7fS5uYXZiYXItaW52ZXJzZSAubmF2YmFyLWxpbms6aG92ZXIsLm5hdmJhci1pbnZlcnNlIC5uYXZiYXItbGluazpmb2N1c3tjb2xvcjojZmZmZmZmO30KLm5hdmJhci1pbnZlcnNlIC5kaXZpZGVyLXZlcnRpY2Fse2JvcmRlci1sZWZ0LWNvbG9yOiMxMTExMTE7Ym9yZGVyLXJpZ2h0LWNvbG9yOiMyMjIyMjI7fQoubmF2YmFyLWludmVyc2UgLm5hdiBsaS5kcm9wZG93bi5vcGVuPi5kcm9wZG93bi10b2dnbGUsLm5hdmJhci1pbnZlcnNlIC5uYXYgbGkuZHJvcGRvd24uYWN0aXZlPi5kcm9wZG93bi10b2dnbGUsLm5hdmJhci1pbnZlcnNlIC5uYXYgbGkuZHJvcGRvd24ub3Blbi5hY3RpdmU+LmRyb3Bkb3duLXRvZ2dsZXtiYWNrZ3JvdW5kLWNvbG9yOiMxMTExMTE7Y29sb3I6I2ZmZmZmZjt9Ci5uYXZiYXItaW52ZXJzZSAubmF2IGxpLmRyb3Bkb3duPmE6aG92ZXIgLmNhcmV0LC5uYXZiYXItaW52ZXJzZSAubmF2IGxpLmRyb3Bkb3duPmE6Zm9jdXMgLmNhcmV0e2JvcmRlci10b3AtY29sb3I6I2ZmZmZmZjtib3JkZXItYm90dG9tLWNvbG9yOiNmZmZmZmY7fQoubmF2YmFyLWludmVyc2UgLm5hdiBsaS5kcm9wZG93bj4uZHJvcGRvd24tdG9nZ2xlIC5jYXJldHtib3JkZXItdG9wLWNvbG9yOiM5OTk5OTk7Ym9yZGVyLWJvdHRvbS1jb2xvcjojOTk5OTk5O30KLm5hdmJhci1pbnZlcnNlIC5uYXYgbGkuZHJvcGRvd24ub3Blbj4uZHJvcGRvd24tdG9nZ2xlIC5jYXJldCwubmF2YmFyLWludmVyc2UgLm5hdiBsaS5kcm9wZG93bi5hY3RpdmU+LmRyb3Bkb3duLXRvZ2dsZSAuY2FyZXQsLm5hdmJhci1pbnZlcnNlIC5uYXYgbGkuZHJvcGRvd24ub3Blbi5hY3RpdmU+LmRyb3Bkb3duLXRvZ2dsZSAuY2FyZXR7Ym9yZGVyLXRvcC1jb2xvcjojZmZmZmZmO2JvcmRlci1ib3R0b20tY29sb3I6I2ZmZmZmZjt9Ci5uYXZiYXItaW52ZXJzZSAubmF2YmFyLXNlYXJjaCAuc2VhcmNoLXF1ZXJ5e2NvbG9yOiNmZmZmZmY7YmFja2dyb3VuZC1jb2xvcjojNTE1MTUxO2JvcmRlci1jb2xvcjojMTExMTExOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMSksIDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMTUpOy1tb3otYm94LXNoYWRvdzppbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwuMSksIDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMTUpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjEpLCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjE1KTstd2Via2l0LXRyYW5zaXRpb246bm9uZTstbW96LXRyYW5zaXRpb246bm9uZTstby10cmFuc2l0aW9uOm5vbmU7dHJhbnNpdGlvbjpub25lO30ubmF2YmFyLWludmVyc2UgLm5hdmJhci1zZWFyY2ggLnNlYXJjaC1xdWVyeTotbW96LXBsYWNlaG9sZGVye2NvbG9yOiNjY2NjY2M7fQoubmF2YmFyLWludmVyc2UgLm5hdmJhci1zZWFyY2ggLnNlYXJjaC1xdWVyeTotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6I2NjY2NjYzt9Ci5uYXZiYXItaW52ZXJzZSAubmF2YmFyLXNlYXJjaCAuc2VhcmNoLXF1ZXJ5Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOiNjY2NjY2M7fQoubmF2YmFyLWludmVyc2UgLm5hdmJhci1zZWFyY2ggLnNlYXJjaC1xdWVyeTpmb2N1cywubmF2YmFyLWludmVyc2UgLm5hdmJhci1zZWFyY2ggLnNlYXJjaC1xdWVyeS5mb2N1c2Vke3BhZGRpbmc6NXB4IDE1cHg7Y29sb3I6IzMzMzMzMzt0ZXh0LXNoYWRvdzowIDFweCAwICNmZmZmZmY7YmFja2dyb3VuZC1jb2xvcjojZmZmZmZmO2JvcmRlcjowOy13ZWJraXQtYm94LXNoYWRvdzowIDAgM3B4IHJnYmEoMCwgMCwgMCwgMC4xNSk7LW1vei1ib3gtc2hhZG93OjAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtib3gtc2hhZG93OjAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtvdXRsaW5lOjA7fQoubmF2YmFyLWludmVyc2UgLmJ0bi1uYXZiYXJ7Y29sb3I6I2ZmZmZmZjt0ZXh0LXNoYWRvdzowIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMjUpO2JhY2tncm91bmQtY29sb3I6IzBlMGUwZTtiYWNrZ3JvdW5kLWltYWdlOi1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzE1MTUxNSwgIzA0MDQwNCk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oIzE1MTUxNSksIHRvKCMwNDA0MDQpKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzE1MTUxNSwgIzA0MDQwNCk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjMTUxNTE1LCAjMDQwNDA0KTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMxNTE1MTUsICMwNDA0MDQpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmMTUxNTE1JywgZW5kQ29sb3JzdHI9JyNmZjA0MDQwNCcsIEdyYWRpZW50VHlwZT0wKTtib3JkZXItY29sb3I6IzA0MDQwNCAjMDQwNDA0ICMwMDAwMDA7Ym9yZGVyLWNvbG9yOnJnYmEoMCwgMCwgMCwgMC4xKSByZ2JhKDAsIDAsIDAsIDAuMSkgcmdiYSgwLCAwLCAwLCAwLjI1KTsqYmFja2dyb3VuZC1jb2xvcjojMDQwNDA0O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTt9Lm5hdmJhci1pbnZlcnNlIC5idG4tbmF2YmFyOmhvdmVyLC5uYXZiYXItaW52ZXJzZSAuYnRuLW5hdmJhcjpmb2N1cywubmF2YmFyLWludmVyc2UgLmJ0bi1uYXZiYXI6YWN0aXZlLC5uYXZiYXItaW52ZXJzZSAuYnRuLW5hdmJhci5hY3RpdmUsLm5hdmJhci1pbnZlcnNlIC5idG4tbmF2YmFyLmRpc2FibGVkLC5uYXZiYXItaW52ZXJzZSAuYnRuLW5hdmJhcltkaXNhYmxlZF17Y29sb3I6I2ZmZmZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMwNDA0MDQ7KmJhY2tncm91bmQtY29sb3I6IzAwMDAwMDt9Ci5uYXZiYXItaW52ZXJzZSAuYnRuLW5hdmJhcjphY3RpdmUsLm5hdmJhci1pbnZlcnNlIC5idG4tbmF2YmFyLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwMDAgXDk7fQouYnJlYWRjcnVtYntwYWRkaW5nOjhweCAxNXB4O21hcmdpbjowIDAgMjBweDtsaXN0LXN0eWxlOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDtib3JkZXItcmFkaXVzOjRweDt9LmJyZWFkY3J1bWI+bGl7ZGlzcGxheTppbmxpbmUtYmxvY2s7KmRpc3BsYXk6aW5saW5lOyp6b29tOjE7dGV4dC1zaGFkb3c6MCAxcHggMCAjZmZmZmZmO30uYnJlYWRjcnVtYj5saT4uZGl2aWRlcntwYWRkaW5nOjAgNXB4O2NvbG9yOiNjY2M7fQouYnJlYWRjcnVtYj4uYWN0aXZle2NvbG9yOiM5OTk5OTk7fQoucGFnaW5hdGlvbnttYXJnaW46MjBweCAwO30KLnBhZ2luYXRpb24gdWx7ZGlzcGxheTppbmxpbmUtYmxvY2s7KmRpc3BsYXk6aW5saW5lOyp6b29tOjE7bWFyZ2luLWxlZnQ6MDttYXJnaW4tYm90dG9tOjA7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXM6NHB4O2JvcmRlci1yYWRpdXM6NHB4Oy13ZWJraXQtYm94LXNoYWRvdzowIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA1KTstbW96LWJveC1zaGFkb3c6MCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7Ym94LXNoYWRvdzowIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA1KTt9Ci5wYWdpbmF0aW9uIHVsPmxpe2Rpc3BsYXk6aW5saW5lO30KLnBhZ2luYXRpb24gdWw+bGk+YSwucGFnaW5hdGlvbiB1bD5saT5zcGFue2Zsb2F0OmxlZnQ7cGFkZGluZzo0cHggMTJweDtsaW5lLWhlaWdodDoyMHB4O3RleHQtZGVjb3JhdGlvbjpub25lO2JhY2tncm91bmQtY29sb3I6I2ZmZmZmZjtib3JkZXI6MXB4IHNvbGlkICNkZGRkZGQ7Ym9yZGVyLWxlZnQtd2lkdGg6MDt9Ci5wYWdpbmF0aW9uIHVsPmxpPmE6aG92ZXIsLnBhZ2luYXRpb24gdWw+bGk+YTpmb2N1cywucGFnaW5hdGlvbiB1bD4uYWN0aXZlPmEsLnBhZ2luYXRpb24gdWw+LmFjdGl2ZT5zcGFue2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTt9Ci5wYWdpbmF0aW9uIHVsPi5hY3RpdmU+YSwucGFnaW5hdGlvbiB1bD4uYWN0aXZlPnNwYW57Y29sb3I6Izk5OTk5OTtjdXJzb3I6ZGVmYXVsdDt9Ci5wYWdpbmF0aW9uIHVsPi5kaXNhYmxlZD5zcGFuLC5wYWdpbmF0aW9uIHVsPi5kaXNhYmxlZD5hLC5wYWdpbmF0aW9uIHVsPi5kaXNhYmxlZD5hOmhvdmVyLC5wYWdpbmF0aW9uIHVsPi5kaXNhYmxlZD5hOmZvY3Vze2NvbG9yOiM5OTk5OTk7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtjdXJzb3I6ZGVmYXVsdDt9Ci5wYWdpbmF0aW9uIHVsPmxpOmZpcnN0LWNoaWxkPmEsLnBhZ2luYXRpb24gdWw+bGk6Zmlyc3QtY2hpbGQ+c3Bhbntib3JkZXItbGVmdC13aWR0aDoxcHg7LXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXMtdG9wbGVmdDo0cHg7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo0cHg7LXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXMtYm90dG9tbGVmdDo0cHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo0cHg7fQoucGFnaW5hdGlvbiB1bD5saTpsYXN0LWNoaWxkPmEsLnBhZ2luYXRpb24gdWw+bGk6bGFzdC1jaGlsZD5zcGFuey13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6NHB4Oy1tb3otYm9yZGVyLXJhZGl1cy10b3ByaWdodDo0cHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6NHB4Oy13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NHB4Oy1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21yaWdodDo0cHg7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NHB4O30KLnBhZ2luYXRpb24tY2VudGVyZWR7dGV4dC1hbGlnbjpjZW50ZXI7fQoucGFnaW5hdGlvbi1yaWdodHt0ZXh0LWFsaWduOnJpZ2h0O30KLnBhZ2luYXRpb24tbGFyZ2UgdWw+bGk+YSwucGFnaW5hdGlvbi1sYXJnZSB1bD5saT5zcGFue3BhZGRpbmc6MTFweCAxOXB4O2ZvbnQtc2l6ZToxNy41cHg7fQoucGFnaW5hdGlvbi1sYXJnZSB1bD5saTpmaXJzdC1jaGlsZD5hLC5wYWdpbmF0aW9uLWxhcmdlIHVsPmxpOmZpcnN0LWNoaWxkPnNwYW57LXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOjZweDstbW96LWJvcmRlci1yYWRpdXMtdG9wbGVmdDo2cHg7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo2cHg7LXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjZweDstbW96LWJvcmRlci1yYWRpdXMtYm90dG9tbGVmdDo2cHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czo2cHg7fQoucGFnaW5hdGlvbi1sYXJnZSB1bD5saTpsYXN0LWNoaWxkPmEsLnBhZ2luYXRpb24tbGFyZ2UgdWw+bGk6bGFzdC1jaGlsZD5zcGFuey13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6NnB4Oy1tb3otYm9yZGVyLXJhZGl1cy10b3ByaWdodDo2cHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6NnB4Oy13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NnB4Oy1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21yaWdodDo2cHg7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6NnB4O30KLnBhZ2luYXRpb24tbWluaSB1bD5saTpmaXJzdC1jaGlsZD5hLC5wYWdpbmF0aW9uLXNtYWxsIHVsPmxpOmZpcnN0LWNoaWxkPmEsLnBhZ2luYXRpb24tbWluaSB1bD5saTpmaXJzdC1jaGlsZD5zcGFuLC5wYWdpbmF0aW9uLXNtYWxsIHVsPmxpOmZpcnN0LWNoaWxkPnNwYW57LXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOjNweDstbW96LWJvcmRlci1yYWRpdXMtdG9wbGVmdDozcHg7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czozcHg7LXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjNweDstbW96LWJvcmRlci1yYWRpdXMtYm90dG9tbGVmdDozcHg7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czozcHg7fQoucGFnaW5hdGlvbi1taW5pIHVsPmxpOmxhc3QtY2hpbGQ+YSwucGFnaW5hdGlvbi1zbWFsbCB1bD5saTpsYXN0LWNoaWxkPmEsLnBhZ2luYXRpb24tbWluaSB1bD5saTpsYXN0LWNoaWxkPnNwYW4sLnBhZ2luYXRpb24tc21hbGwgdWw+bGk6bGFzdC1jaGlsZD5zcGFuey13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6M3B4Oy1tb3otYm9yZGVyLXJhZGl1cy10b3ByaWdodDozcHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6M3B4Oy13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6M3B4Oy1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21yaWdodDozcHg7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6M3B4O30KLnBhZ2luYXRpb24tc21hbGwgdWw+bGk+YSwucGFnaW5hdGlvbi1zbWFsbCB1bD5saT5zcGFue3BhZGRpbmc6MnB4IDEwcHg7Zm9udC1zaXplOjExLjlweDt9Ci5wYWdpbmF0aW9uLW1pbmkgdWw+bGk+YSwucGFnaW5hdGlvbi1taW5pIHVsPmxpPnNwYW57cGFkZGluZzowIDZweDtmb250LXNpemU6MTAuNXB4O30KLnBhZ2Vye21hcmdpbjoyMHB4IDA7bGlzdC1zdHlsZTpub25lO3RleHQtYWxpZ246Y2VudGVyOyp6b29tOjE7fS5wYWdlcjpiZWZvcmUsLnBhZ2VyOmFmdGVye2Rpc3BsYXk6dGFibGU7Y29udGVudDoiIjtsaW5lLWhlaWdodDowO30KLnBhZ2VyOmFmdGVye2NsZWFyOmJvdGg7fQoucGFnZXIgbGl7ZGlzcGxheTppbmxpbmU7fQoucGFnZXIgbGk+YSwucGFnZXIgbGk+c3BhbntkaXNwbGF5OmlubGluZS1ibG9jaztwYWRkaW5nOjVweCAxNHB4O2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNkZGQ7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjE1cHg7LW1vei1ib3JkZXItcmFkaXVzOjE1cHg7Ym9yZGVyLXJhZGl1czoxNXB4O30KLnBhZ2VyIGxpPmE6aG92ZXIsLnBhZ2VyIGxpPmE6Zm9jdXN7dGV4dC1kZWNvcmF0aW9uOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1O30KLnBhZ2VyIC5uZXh0PmEsLnBhZ2VyIC5uZXh0PnNwYW57ZmxvYXQ6cmlnaHQ7fQoucGFnZXIgLnByZXZpb3VzPmEsLnBhZ2VyIC5wcmV2aW91cz5zcGFue2Zsb2F0OmxlZnQ7fQoucGFnZXIgLmRpc2FibGVkPmEsLnBhZ2VyIC5kaXNhYmxlZD5hOmhvdmVyLC5wYWdlciAuZGlzYWJsZWQ+YTpmb2N1cywucGFnZXIgLmRpc2FibGVkPnNwYW57Y29sb3I6Izk5OTk5OTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y3Vyc29yOmRlZmF1bHQ7fQoudGh1bWJuYWlsc3ttYXJnaW4tbGVmdDotMjBweDtsaXN0LXN0eWxlOm5vbmU7Knpvb206MTt9LnRodW1ibmFpbHM6YmVmb3JlLC50aHVtYm5haWxzOmFmdGVye2Rpc3BsYXk6dGFibGU7Y29udGVudDoiIjtsaW5lLWhlaWdodDowO30KLnRodW1ibmFpbHM6YWZ0ZXJ7Y2xlYXI6Ym90aDt9Ci5yb3ctZmx1aWQgLnRodW1ibmFpbHN7bWFyZ2luLWxlZnQ6MDt9Ci50aHVtYm5haWxzPmxpe2Zsb2F0OmxlZnQ7bWFyZ2luLWJvdHRvbToyMHB4O21hcmdpbi1sZWZ0OjIwcHg7fQoudGh1bWJuYWlse2Rpc3BsYXk6YmxvY2s7cGFkZGluZzo0cHg7bGluZS1oZWlnaHQ6MjBweDtib3JkZXI6MXB4IHNvbGlkICNkZGQ7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXM6NHB4O2JvcmRlci1yYWRpdXM6NHB4Oy13ZWJraXQtYm94LXNoYWRvdzowIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjA1NSk7LW1vei1ib3gtc2hhZG93OjAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMDU1KTtib3gtc2hhZG93OjAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMDU1KTstd2Via2l0LXRyYW5zaXRpb246YWxsIDAuMnMgZWFzZS1pbi1vdXQ7LW1vei10cmFuc2l0aW9uOmFsbCAwLjJzIGVhc2UtaW4tb3V0Oy1vLXRyYW5zaXRpb246YWxsIDAuMnMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjphbGwgMC4ycyBlYXNlLWluLW91dDt9CmEudGh1bWJuYWlsOmhvdmVyLGEudGh1bWJuYWlsOmZvY3Vze2JvcmRlci1jb2xvcjojMDA4OGNjOy13ZWJraXQtYm94LXNoYWRvdzowIDFweCA0cHggcmdiYSgwLCAxMDUsIDIxNCwgMC4yNSk7LW1vei1ib3gtc2hhZG93OjAgMXB4IDRweCByZ2JhKDAsIDEwNSwgMjE0LCAwLjI1KTtib3gtc2hhZG93OjAgMXB4IDRweCByZ2JhKDAsIDEwNSwgMjE0LCAwLjI1KTt9Ci50aHVtYm5haWw+aW1ne2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOjEwMCU7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bzt9Ci50aHVtYm5haWwgLmNhcHRpb257cGFkZGluZzo5cHg7Y29sb3I6IzU1NTU1NTt9Ci5hbGVydHtwYWRkaW5nOjhweCAzNXB4IDhweCAxNHB4O21hcmdpbi1ib3R0b206MjBweDt0ZXh0LXNoYWRvdzowIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtiYWNrZ3JvdW5kLWNvbG9yOiNmY2Y4ZTM7Ym9yZGVyOjFweCBzb2xpZCAjZmJlZWQ1Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDtib3JkZXItcmFkaXVzOjRweDt9Ci5hbGVydCwuYWxlcnQgaDR7Y29sb3I6I2MwOTg1Mzt9Ci5hbGVydCBoNHttYXJnaW46MDt9Ci5hbGVydCAuY2xvc2V7cG9zaXRpb246cmVsYXRpdmU7dG9wOi0ycHg7cmlnaHQ6LTIxcHg7bGluZS1oZWlnaHQ6MjBweDt9Ci5hbGVydC1zdWNjZXNze2JhY2tncm91bmQtY29sb3I6I2RmZjBkODtib3JkZXItY29sb3I6I2Q2ZTljNjtjb2xvcjojNDY4ODQ3O30KLmFsZXJ0LXN1Y2Nlc3MgaDR7Y29sb3I6IzQ2ODg0Nzt9Ci5hbGVydC1kYW5nZXIsLmFsZXJ0LWVycm9ye2JhY2tncm91bmQtY29sb3I6I2YyZGVkZTtib3JkZXItY29sb3I6I2VlZDNkNztjb2xvcjojYjk0YTQ4O30KLmFsZXJ0LWRhbmdlciBoNCwuYWxlcnQtZXJyb3IgaDR7Y29sb3I6I2I5NGE0ODt9Ci5hbGVydC1pbmZve2JhY2tncm91bmQtY29sb3I6I2Q5ZWRmNztib3JkZXItY29sb3I6I2JjZThmMTtjb2xvcjojM2E4N2FkO30KLmFsZXJ0LWluZm8gaDR7Y29sb3I6IzNhODdhZDt9Ci5hbGVydC1ibG9ja3twYWRkaW5nLXRvcDoxNHB4O3BhZGRpbmctYm90dG9tOjE0cHg7fQouYWxlcnQtYmxvY2s+cCwuYWxlcnQtYmxvY2s+dWx7bWFyZ2luLWJvdHRvbTowO30KLmFsZXJ0LWJsb2NrIHArcHttYXJnaW4tdG9wOjVweDt9CkAtd2Via2l0LWtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlc3tmcm9te2JhY2tncm91bmQtcG9zaXRpb246NDBweCAwO30gdG97YmFja2dyb3VuZC1wb3NpdGlvbjowIDA7fX1ALW1vei1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXN7ZnJvbXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjQwcHggMDt9IHRve2JhY2tncm91bmQtcG9zaXRpb246MCAwO319QC1tcy1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXN7ZnJvbXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjQwcHggMDt9IHRve2JhY2tncm91bmQtcG9zaXRpb246MCAwO319QC1vLWtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlc3tmcm9te2JhY2tncm91bmQtcG9zaXRpb246MCAwO30gdG97YmFja2dyb3VuZC1wb3NpdGlvbjo0MHB4IDA7fX1Aa2V5ZnJhbWVzIHByb2dyZXNzLWJhci1zdHJpcGVze2Zyb217YmFja2dyb3VuZC1wb3NpdGlvbjo0MHB4IDA7fSB0b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgMDt9fS5wcm9ncmVzc3tvdmVyZmxvdzpoaWRkZW47aGVpZ2h0OjIwcHg7bWFyZ2luLWJvdHRvbToyMHB4O2JhY2tncm91bmQtY29sb3I6I2Y3ZjdmNztiYWNrZ3JvdW5kLWltYWdlOi1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2Y1ZjVmNSwgI2Y5ZjlmOSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oI2Y1ZjVmNSksIHRvKCNmOWY5ZjkpKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2Y1ZjVmNSwgI2Y5ZjlmOSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjZjVmNWY1LCAjZjlmOWY5KTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmNWY1ZjUsICNmOWY5ZjkpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmZjVmNWY1JywgZW5kQ29sb3JzdHI9JyNmZmY5ZjlmOScsIEdyYWRpZW50VHlwZT0wKTstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTstbW96LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXM6NHB4O2JvcmRlci1yYWRpdXM6NHB4O30KLnByb2dyZXNzIC5iYXJ7d2lkdGg6MCU7aGVpZ2h0OjEwMCU7Y29sb3I6I2ZmZmZmZjtmbG9hdDpsZWZ0O2ZvbnQtc2l6ZToxMnB4O3RleHQtYWxpZ246Y2VudGVyO3RleHQtc2hhZG93OjAgLTFweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7YmFja2dyb3VuZC1jb2xvcjojMGU5MGQyO2JhY2tncm91bmQtaW1hZ2U6LW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjMTQ5YmRmLCAjMDQ4MGJlKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbSgjMTQ5YmRmKSwgdG8oIzA0ODBiZSkpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjMTQ5YmRmLCAjMDQ4MGJlKTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsICMxNDliZGYsICMwNDgwYmUpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzE0OWJkZiwgIzA0ODBiZSk7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmYxNDliZGYnLCBlbmRDb2xvcnN0cj0nI2ZmMDQ4MGJlJywgR3JhZGllbnRUeXBlPTApOy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpOy1tb3otYm94LXNoYWRvdzppbnNldCAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO2JveC1zaGFkb3c6aW5zZXQgMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7LXdlYmtpdC10cmFuc2l0aW9uOndpZHRoIDAuNnMgZWFzZTstbW96LXRyYW5zaXRpb246d2lkdGggMC42cyBlYXNlOy1vLXRyYW5zaXRpb246d2lkdGggMC42cyBlYXNlO3RyYW5zaXRpb246d2lkdGggMC42cyBlYXNlO30KLnByb2dyZXNzIC5iYXIrLmJhcnstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMXB4IDAgMCByZ2JhKDAsMCwwLC4xNSksIGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjE1KTstbW96LWJveC1zaGFkb3c6aW5zZXQgMXB4IDAgMCByZ2JhKDAsMCwwLC4xNSksIGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsLjE1KTtib3gtc2hhZG93Omluc2V0IDFweCAwIDAgcmdiYSgwLDAsMCwuMTUpLCBpbnNldCAwIC0xcHggMCByZ2JhKDAsMCwwLC4xNSk7fQoucHJvZ3Jlc3Mtc3RyaXBlZCAuYmFye2JhY2tncm91bmQtY29sb3I6IzE0OWJkZjtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDEwMCUsIDEwMCUgMCwgY29sb3Itc3RvcCgwLjI1LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpKSwgY29sb3Itc3RvcCgwLjI1LCB0cmFuc3BhcmVudCksIGNvbG9yLXN0b3AoMC41LCB0cmFuc3BhcmVudCksIGNvbG9yLXN0b3AoMC41LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpKSwgY29sb3Itc3RvcCgwLjc1LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpKSwgY29sb3Itc3RvcCgwLjc1LCB0cmFuc3BhcmVudCksIHRvKHRyYW5zcGFyZW50KSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtaW1hZ2U6LW1vei1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6NDBweCA0MHB4Oy1tb3otYmFja2dyb3VuZC1zaXplOjQwcHggNDBweDstby1iYWNrZ3JvdW5kLXNpemU6NDBweCA0MHB4O2JhY2tncm91bmQtc2l6ZTo0MHB4IDQwcHg7fQoucHJvZ3Jlc3MuYWN0aXZlIC5iYXJ7LXdlYmtpdC1hbmltYXRpb246cHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlOy1tb3otYW5pbWF0aW9uOnByb2dyZXNzLWJhci1zdHJpcGVzIDJzIGxpbmVhciBpbmZpbml0ZTstbXMtYW5pbWF0aW9uOnByb2dyZXNzLWJhci1zdHJpcGVzIDJzIGxpbmVhciBpbmZpbml0ZTstby1hbmltYXRpb246cHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbjpwcm9ncmVzcy1iYXItc3RyaXBlcyAycyBsaW5lYXIgaW5maW5pdGU7fQoucHJvZ3Jlc3MtZGFuZ2VyIC5iYXIsLnByb2dyZXNzIC5iYXItZGFuZ2Vye2JhY2tncm91bmQtY29sb3I6I2RkNTE0YztiYWNrZ3JvdW5kLWltYWdlOi1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlNWY1YiwgI2M0M2MzNSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oI2VlNWY1YiksIHRvKCNjNDNjMzUpKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlNWY1YiwgI2M0M2MzNSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjZWU1ZjViLCAjYzQzYzM1KTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZTVmNWIsICNjNDNjMzUpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmZWU1ZjViJywgZW5kQ29sb3JzdHI9JyNmZmM0M2MzNScsIEdyYWRpZW50VHlwZT0wKTt9Ci5wcm9ncmVzcy1kYW5nZXIucHJvZ3Jlc3Mtc3RyaXBlZCAuYmFyLC5wcm9ncmVzcy1zdHJpcGVkIC5iYXItZGFuZ2Vye2JhY2tncm91bmQtY29sb3I6I2VlNWY1YjtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDEwMCUsIDEwMCUgMCwgY29sb3Itc3RvcCgwLjI1LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpKSwgY29sb3Itc3RvcCgwLjI1LCB0cmFuc3BhcmVudCksIGNvbG9yLXN0b3AoMC41LCB0cmFuc3BhcmVudCksIGNvbG9yLXN0b3AoMC41LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpKSwgY29sb3Itc3RvcCgwLjc1LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpKSwgY29sb3Itc3RvcCgwLjc1LCB0cmFuc3BhcmVudCksIHRvKHRyYW5zcGFyZW50KSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtaW1hZ2U6LW1vei1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7fQoucHJvZ3Jlc3Mtc3VjY2VzcyAuYmFyLC5wcm9ncmVzcyAuYmFyLXN1Y2Nlc3N7YmFja2dyb3VuZC1jb2xvcjojNWViOTVlO2JhY2tncm91bmQtaW1hZ2U6LW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjNjJjNDYyLCAjNTdhOTU3KTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbSgjNjJjNDYyKSwgdG8oIzU3YTk1NykpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjNjJjNDYyLCAjNTdhOTU3KTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCh0b3AsICM2MmM0NjIsICM1N2E5NTcpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzYyYzQ2MiwgIzU3YTk1Nyk7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXg7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmY2MmM0NjInLCBlbmRDb2xvcnN0cj0nI2ZmNTdhOTU3JywgR3JhZGllbnRUeXBlPTApO30KLnByb2dyZXNzLXN1Y2Nlc3MucHJvZ3Jlc3Mtc3RyaXBlZCAuYmFyLC5wcm9ncmVzcy1zdHJpcGVkIC5iYXItc3VjY2Vzc3tiYWNrZ3JvdW5kLWNvbG9yOiM2MmM0NjI7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAxMDAlLCAxMDAlIDAsIGNvbG9yLXN0b3AoMC4yNSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSksIGNvbG9yLXN0b3AoMC4yNSwgdHJhbnNwYXJlbnQpLCBjb2xvci1zdG9wKDAuNSwgdHJhbnNwYXJlbnQpLCBjb2xvci1zdG9wKDAuNSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSksIGNvbG9yLXN0b3AoMC43NSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSksIGNvbG9yLXN0b3AoMC43NSwgdHJhbnNwYXJlbnQpLCB0byh0cmFuc3BhcmVudCkpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLWltYWdlOi1tb3otbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO30KLnByb2dyZXNzLWluZm8gLmJhciwucHJvZ3Jlc3MgLmJhci1pbmZve2JhY2tncm91bmQtY29sb3I6IzRiYjFjZjtiYWNrZ3JvdW5kLWltYWdlOi1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzViYzBkZSwgIzMzOWJiOSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oIzViYzBkZSksIHRvKCMzMzliYjkpKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzViYzBkZSwgIzMzOWJiOSk7YmFja2dyb3VuZC1pbWFnZTotby1saW5lYXItZ3JhZGllbnQodG9wLCAjNWJjMGRlLCAjMzM5YmI5KTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM1YmMwZGUsICMzMzliYjkpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC14O2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmNWJjMGRlJywgZW5kQ29sb3JzdHI9JyNmZjMzOWJiOScsIEdyYWRpZW50VHlwZT0wKTt9Ci5wcm9ncmVzcy1pbmZvLnByb2dyZXNzLXN0cmlwZWQgLmJhciwucHJvZ3Jlc3Mtc3RyaXBlZCAuYmFyLWluZm97YmFja2dyb3VuZC1jb2xvcjojNWJjMGRlO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMTAwJSwgMTAwJSAwLCBjb2xvci1zdG9wKDAuMjUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkpLCBjb2xvci1zdG9wKDAuMjUsIHRyYW5zcGFyZW50KSwgY29sb3Itc3RvcCgwLjUsIHRyYW5zcGFyZW50KSwgY29sb3Itc3RvcCgwLjUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkpLCBjb2xvci1zdG9wKDAuNzUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkpLCBjb2xvci1zdG9wKDAuNzUsIHRyYW5zcGFyZW50KSwgdG8odHJhbnNwYXJlbnQpKTtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7YmFja2dyb3VuZC1pbWFnZTotbW96LWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTt9Ci5wcm9ncmVzcy13YXJuaW5nIC5iYXIsLnByb2dyZXNzIC5iYXItd2FybmluZ3tiYWNrZ3JvdW5kLWNvbG9yOiNmYWE3MzI7YmFja2dyb3VuZC1pbWFnZTotbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNmYmI0NTAsICNmODk0MDYpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCNmYmI0NTApLCB0bygjZjg5NDA2KSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNmYmI0NTAsICNmODk0MDYpO2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2ZiYjQ1MCwgI2Y4OTQwNik7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmJiNDUwLCAjZjg5NDA2KTtiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQteDtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNmZmZiYjQ1MCcsIGVuZENvbG9yc3RyPScjZmZmODk0MDYnLCBHcmFkaWVudFR5cGU9MCk7fQoucHJvZ3Jlc3Mtd2FybmluZy5wcm9ncmVzcy1zdHJpcGVkIC5iYXIsLnByb2dyZXNzLXN0cmlwZWQgLmJhci13YXJuaW5ne2JhY2tncm91bmQtY29sb3I6I2ZiYjQ1MDtiYWNrZ3JvdW5kLWltYWdlOi13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDEwMCUsIDEwMCUgMCwgY29sb3Itc3RvcCgwLjI1LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpKSwgY29sb3Itc3RvcCgwLjI1LCB0cmFuc3BhcmVudCksIGNvbG9yLXN0b3AoMC41LCB0cmFuc3BhcmVudCksIGNvbG9yLXN0b3AoMC41LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpKSwgY29sb3Itc3RvcCgwLjc1LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpKSwgY29sb3Itc3RvcCgwLjc1LCB0cmFuc3BhcmVudCksIHRvKHRyYW5zcGFyZW50KSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtaW1hZ2U6LW1vei1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLWltYWdlOi1vLWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDUwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KSA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7fQouaGVyby11bml0e3BhZGRpbmc6NjBweDttYXJnaW4tYm90dG9tOjMwcHg7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6MjAwO2xpbmUtaGVpZ2h0OjMwcHg7Y29sb3I6aW5oZXJpdDtiYWNrZ3JvdW5kLWNvbG9yOiNlZWVlZWU7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjZweDstbW96LWJvcmRlci1yYWRpdXM6NnB4O2JvcmRlci1yYWRpdXM6NnB4O30uaGVyby11bml0IGgxe21hcmdpbi1ib3R0b206MDtmb250LXNpemU6NjBweDtsaW5lLWhlaWdodDoxO2NvbG9yOmluaGVyaXQ7bGV0dGVyLXNwYWNpbmc6LTFweDt9Ci5oZXJvLXVuaXQgbGl7bGluZS1oZWlnaHQ6MzBweDt9Ci5tZWRpYSwubWVkaWEtYm9keXtvdmVyZmxvdzpoaWRkZW47Km92ZXJmbG93OnZpc2libGU7em9vbToxO30KLm1lZGlhLC5tZWRpYSAubWVkaWF7bWFyZ2luLXRvcDoxNXB4O30KLm1lZGlhOmZpcnN0LWNoaWxke21hcmdpbi10b3A6MDt9Ci5tZWRpYS1vYmplY3R7ZGlzcGxheTpibG9jazt9Ci5tZWRpYS1oZWFkaW5ne21hcmdpbjowIDAgNXB4O30KLm1lZGlhPi5wdWxsLWxlZnR7bWFyZ2luLXJpZ2h0OjEwcHg7fQoubWVkaWE+LnB1bGwtcmlnaHR7bWFyZ2luLWxlZnQ6MTBweDt9Ci5tZWRpYS1saXN0e21hcmdpbi1sZWZ0OjA7bGlzdC1zdHlsZTpub25lO30KLnRvb2x0aXB7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMDMwO2Rpc3BsYXk6YmxvY2s7dmlzaWJpbGl0eTp2aXNpYmxlO2ZvbnQtc2l6ZToxMXB4O2xpbmUtaGVpZ2h0OjEuNDtvcGFjaXR5OjA7ZmlsdGVyOmFscGhhKG9wYWNpdHk9MCk7fS50b29sdGlwLmlue29wYWNpdHk6MC44O2ZpbHRlcjphbHBoYShvcGFjaXR5PTgwKTt9Ci50b29sdGlwLnRvcHttYXJnaW4tdG9wOi0zcHg7cGFkZGluZzo1cHggMDt9Ci50b29sdGlwLnJpZ2h0e21hcmdpbi1sZWZ0OjNweDtwYWRkaW5nOjAgNXB4O30KLnRvb2x0aXAuYm90dG9te21hcmdpbi10b3A6M3B4O3BhZGRpbmc6NXB4IDA7fQoudG9vbHRpcC5sZWZ0e21hcmdpbi1sZWZ0Oi0zcHg7cGFkZGluZzowIDVweDt9Ci50b29sdGlwLWlubmVye21heC13aWR0aDoyMDBweDtwYWRkaW5nOjhweDtjb2xvcjojZmZmZmZmO3RleHQtYWxpZ246Y2VudGVyO3RleHQtZGVjb3JhdGlvbjpub25lO2JhY2tncm91bmQtY29sb3I6IzAwMDAwMDstd2Via2l0LWJvcmRlci1yYWRpdXM6NHB4Oy1tb3otYm9yZGVyLXJhZGl1czo0cHg7Ym9yZGVyLXJhZGl1czo0cHg7fQoudG9vbHRpcC1hcnJvd3twb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDowO2hlaWdodDowO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItc3R5bGU6c29saWQ7fQoudG9vbHRpcC50b3AgLnRvb2x0aXAtYXJyb3d7Ym90dG9tOjA7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTVweDtib3JkZXItd2lkdGg6NXB4IDVweCAwO2JvcmRlci10b3AtY29sb3I6IzAwMDAwMDt9Ci50b29sdGlwLnJpZ2h0IC50b29sdGlwLWFycm93e3RvcDo1MCU7bGVmdDowO21hcmdpbi10b3A6LTVweDtib3JkZXItd2lkdGg6NXB4IDVweCA1cHggMDtib3JkZXItcmlnaHQtY29sb3I6IzAwMDAwMDt9Ci50b29sdGlwLmxlZnQgLnRvb2x0aXAtYXJyb3d7dG9wOjUwJTtyaWdodDowO21hcmdpbi10b3A6LTVweDtib3JkZXItd2lkdGg6NXB4IDAgNXB4IDVweDtib3JkZXItbGVmdC1jb2xvcjojMDAwMDAwO30KLnRvb2x0aXAuYm90dG9tIC50b29sdGlwLWFycm93e3RvcDowO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi01cHg7Ym9yZGVyLXdpZHRoOjAgNXB4IDVweDtib3JkZXItYm90dG9tLWNvbG9yOiMwMDAwMDA7fQoucG9wb3Zlcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7ei1pbmRleDoxMDEwO2Rpc3BsYXk6bm9uZTttYXgtd2lkdGg6Mjc2cHg7cGFkZGluZzoxcHg7dGV4dC1hbGlnbjpsZWZ0O2JhY2tncm91bmQtY29sb3I6I2ZmZmZmZjstd2Via2l0LWJhY2tncm91bmQtY2xpcDpwYWRkaW5nLWJveDstbW96LWJhY2tncm91bmQtY2xpcDpwYWRkaW5nO2JhY2tncm91bmQtY2xpcDpwYWRkaW5nLWJveDtib3JkZXI6MXB4IHNvbGlkICNjY2M7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMik7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjZweDstbW96LWJvcmRlci1yYWRpdXM6NnB4O2JvcmRlci1yYWRpdXM6NnB4Oy13ZWJraXQtYm94LXNoYWRvdzowIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTstbW96LWJveC1zaGFkb3c6MCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7Ym94LXNoYWRvdzowIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTt3aGl0ZS1zcGFjZTpub3JtYWw7fS5wb3BvdmVyLnRvcHttYXJnaW4tdG9wOi0xMHB4O30KLnBvcG92ZXIucmlnaHR7bWFyZ2luLWxlZnQ6MTBweDt9Ci5wb3BvdmVyLmJvdHRvbXttYXJnaW4tdG9wOjEwcHg7fQoucG9wb3Zlci5sZWZ0e21hcmdpbi1sZWZ0Oi0xMHB4O30KLnBvcG92ZXItdGl0bGV7bWFyZ2luOjA7cGFkZGluZzo4cHggMTRweDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDpub3JtYWw7bGluZS1oZWlnaHQ6MThweDtiYWNrZ3JvdW5kLWNvbG9yOiNmN2Y3Zjc7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2ViZWJlYjstd2Via2l0LWJvcmRlci1yYWRpdXM6NXB4IDVweCAwIDA7LW1vei1ib3JkZXItcmFkaXVzOjVweCA1cHggMCAwO2JvcmRlci1yYWRpdXM6NXB4IDVweCAwIDA7fS5wb3BvdmVyLXRpdGxlOmVtcHR5e2Rpc3BsYXk6bm9uZTt9Ci5wb3BvdmVyLWNvbnRlbnR7cGFkZGluZzo5cHggMTRweDt9Ci5wb3BvdmVyIC5hcnJvdywucG9wb3ZlciAuYXJyb3c6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTpibG9jazt3aWR0aDowO2hlaWdodDowO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItc3R5bGU6c29saWQ7fQoucG9wb3ZlciAuYXJyb3d7Ym9yZGVyLXdpZHRoOjExcHg7fQoucG9wb3ZlciAuYXJyb3c6YWZ0ZXJ7Ym9yZGVyLXdpZHRoOjEwcHg7Y29udGVudDoiIjt9Ci5wb3BvdmVyLnRvcCAuYXJyb3d7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTExcHg7Ym9yZGVyLWJvdHRvbS13aWR0aDowO2JvcmRlci10b3AtY29sb3I6Izk5OTtib3JkZXItdG9wLWNvbG9yOnJnYmEoMCwgMCwgMCwgMC4yNSk7Ym90dG9tOi0xMXB4O30ucG9wb3Zlci50b3AgLmFycm93OmFmdGVye2JvdHRvbToxcHg7bWFyZ2luLWxlZnQ6LTEwcHg7Ym9yZGVyLWJvdHRvbS13aWR0aDowO2JvcmRlci10b3AtY29sb3I6I2ZmZmZmZjt9Ci5wb3BvdmVyLnJpZ2h0IC5hcnJvd3t0b3A6NTAlO2xlZnQ6LTExcHg7bWFyZ2luLXRvcDotMTFweDtib3JkZXItbGVmdC13aWR0aDowO2JvcmRlci1yaWdodC1jb2xvcjojOTk5O2JvcmRlci1yaWdodC1jb2xvcjpyZ2JhKDAsIDAsIDAsIDAuMjUpO30ucG9wb3Zlci5yaWdodCAuYXJyb3c6YWZ0ZXJ7bGVmdDoxcHg7Ym90dG9tOi0xMHB4O2JvcmRlci1sZWZ0LXdpZHRoOjA7Ym9yZGVyLXJpZ2h0LWNvbG9yOiNmZmZmZmY7fQoucG9wb3Zlci5ib3R0b20gLmFycm93e2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi0xMXB4O2JvcmRlci10b3Atd2lkdGg6MDtib3JkZXItYm90dG9tLWNvbG9yOiM5OTk7Ym9yZGVyLWJvdHRvbS1jb2xvcjpyZ2JhKDAsIDAsIDAsIDAuMjUpO3RvcDotMTFweDt9LnBvcG92ZXIuYm90dG9tIC5hcnJvdzphZnRlcnt0b3A6MXB4O21hcmdpbi1sZWZ0Oi0xMHB4O2JvcmRlci10b3Atd2lkdGg6MDtib3JkZXItYm90dG9tLWNvbG9yOiNmZmZmZmY7fQoucG9wb3Zlci5sZWZ0IC5hcnJvd3t0b3A6NTAlO3JpZ2h0Oi0xMXB4O21hcmdpbi10b3A6LTExcHg7Ym9yZGVyLXJpZ2h0LXdpZHRoOjA7Ym9yZGVyLWxlZnQtY29sb3I6Izk5OTtib3JkZXItbGVmdC1jb2xvcjpyZ2JhKDAsIDAsIDAsIDAuMjUpO30ucG9wb3Zlci5sZWZ0IC5hcnJvdzphZnRlcntyaWdodDoxcHg7Ym9yZGVyLXJpZ2h0LXdpZHRoOjA7Ym9yZGVyLWxlZnQtY29sb3I6I2ZmZmZmZjtib3R0b206LTEwcHg7fQoubW9kYWwtYmFja2Ryb3B7cG9zaXRpb246Zml4ZWQ7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7ei1pbmRleDoxMDQwO2JhY2tncm91bmQtY29sb3I6IzAwMDAwMDt9Lm1vZGFsLWJhY2tkcm9wLmZhZGV7b3BhY2l0eTowO30KLm1vZGFsLWJhY2tkcm9wLC5tb2RhbC1iYWNrZHJvcC5mYWRlLmlue29wYWNpdHk6MC44O2ZpbHRlcjphbHBoYShvcGFjaXR5PTgwKTt9Ci5tb2RhbHtwb3NpdGlvbjpmaXhlZDt0b3A6MTAlO2xlZnQ6NTAlO3otaW5kZXg6MTA1MDt3aWR0aDo1NjBweDttYXJnaW4tbGVmdDotMjgwcHg7YmFja2dyb3VuZC1jb2xvcjojZmZmZmZmO2JvcmRlcjoxcHggc29saWQgIzk5OTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4zKTsqYm9yZGVyOjFweCBzb2xpZCAjOTk5Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo2cHg7LW1vei1ib3JkZXItcmFkaXVzOjZweDtib3JkZXItcmFkaXVzOjZweDstd2Via2l0LWJveC1zaGFkb3c6MCAzcHggN3B4IHJnYmEoMCwgMCwgMCwgMC4zKTstbW96LWJveC1zaGFkb3c6MCAzcHggN3B4IHJnYmEoMCwgMCwgMCwgMC4zKTtib3gtc2hhZG93OjAgM3B4IDdweCByZ2JhKDAsIDAsIDAsIDAuMyk7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3g7LW1vei1iYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3g7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94O291dGxpbmU6bm9uZTt9Lm1vZGFsLmZhZGV7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGxpbmVhciwgdG9wIC4zcyBlYXNlLW91dDstbW96LXRyYW5zaXRpb246b3BhY2l0eSAuM3MgbGluZWFyLCB0b3AgLjNzIGVhc2Utb3V0Oy1vLXRyYW5zaXRpb246b3BhY2l0eSAuM3MgbGluZWFyLCB0b3AgLjNzIGVhc2Utb3V0O3RyYW5zaXRpb246b3BhY2l0eSAuM3MgbGluZWFyLCB0b3AgLjNzIGVhc2Utb3V0O3RvcDotMjUlO30KLm1vZGFsLmZhZGUuaW57dG9wOjEwJTt9Ci5tb2RhbC1oZWFkZXJ7cGFkZGluZzo5cHggMTVweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZWVlO30ubW9kYWwtaGVhZGVyIC5jbG9zZXttYXJnaW4tdG9wOjJweDt9Ci5tb2RhbC1oZWFkZXIgaDN7bWFyZ2luOjA7bGluZS1oZWlnaHQ6MzBweDt9Ci5tb2RhbC1ib2R5e3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93LXk6YXV0bzttYXgtaGVpZ2h0OjQwMHB4O3BhZGRpbmc6MTVweDt9Ci5tb2RhbC1mb3Jte21hcmdpbi1ib3R0b206MDt9Ci5tb2RhbC1mb290ZXJ7cGFkZGluZzoxNHB4IDE1cHggMTVweDttYXJnaW4tYm90dG9tOjA7dGV4dC1hbGlnbjpyaWdodDtiYWNrZ3JvdW5kLWNvbG9yOiNmNWY1ZjU7Ym9yZGVyLXRvcDoxcHggc29saWQgI2RkZDstd2Via2l0LWJvcmRlci1yYWRpdXM6MCAwIDZweCA2cHg7LW1vei1ib3JkZXItcmFkaXVzOjAgMCA2cHggNnB4O2JvcmRlci1yYWRpdXM6MCAwIDZweCA2cHg7LXdlYmtpdC1ib3gtc2hhZG93Omluc2V0IDAgMXB4IDAgI2ZmZmZmZjstbW96LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMCAjZmZmZmZmO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMCAjZmZmZmZmOyp6b29tOjE7fS5tb2RhbC1mb290ZXI6YmVmb3JlLC5tb2RhbC1mb290ZXI6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OiIiO2xpbmUtaGVpZ2h0OjA7fQoubW9kYWwtZm9vdGVyOmFmdGVye2NsZWFyOmJvdGg7fQoubW9kYWwtZm9vdGVyIC5idG4rLmJ0bnttYXJnaW4tbGVmdDo1cHg7bWFyZ2luLWJvdHRvbTowO30KLm1vZGFsLWZvb3RlciAuYnRuLWdyb3VwIC5idG4rLmJ0bnttYXJnaW4tbGVmdDotMXB4O30KLm1vZGFsLWZvb3RlciAuYnRuLWJsb2NrKy5idG4tYmxvY2t7bWFyZ2luLWxlZnQ6MDt9Ci5kcm9wdXAsLmRyb3Bkb3due3Bvc2l0aW9uOnJlbGF0aXZlO30KLmRyb3Bkb3duLXRvZ2dsZXsqbWFyZ2luLWJvdHRvbTotM3B4O30KLmRyb3Bkb3duLXRvZ2dsZTphY3RpdmUsLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZXtvdXRsaW5lOjA7fQouY2FyZXR7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MDtoZWlnaHQ6MDt2ZXJ0aWNhbC1hbGlnbjp0b3A7Ym9yZGVyLXRvcDo0cHggc29saWQgIzAwMDAwMDtib3JkZXItcmlnaHQ6NHB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1sZWZ0OjRweCBzb2xpZCB0cmFuc3BhcmVudDtjb250ZW50OiIiO30KLmRyb3Bkb3duIC5jYXJldHttYXJnaW4tdG9wOjhweDttYXJnaW4tbGVmdDoycHg7fQouZHJvcGRvd24tbWVudXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTAwJTtsZWZ0OjA7ei1pbmRleDoxMDAwO2Rpc3BsYXk6bm9uZTtmbG9hdDpsZWZ0O21pbi13aWR0aDoxNjBweDtwYWRkaW5nOjVweCAwO21hcmdpbjoycHggMCAwO2xpc3Qtc3R5bGU6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmY7Ym9yZGVyOjFweCBzb2xpZCAjY2NjO2JvcmRlcjoxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpOypib3JkZXItcmlnaHQtd2lkdGg6MnB4Oypib3JkZXItYm90dG9tLXdpZHRoOjJweDstd2Via2l0LWJvcmRlci1yYWRpdXM6NnB4Oy1tb3otYm9yZGVyLXJhZGl1czo2cHg7Ym9yZGVyLXJhZGl1czo2cHg7LXdlYmtpdC1ib3gtc2hhZG93OjAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpOy1tb3otYm94LXNoYWRvdzowIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtib3gtc2hhZG93OjAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpOy13ZWJraXQtYmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94Oy1tb3otYmFja2dyb3VuZC1jbGlwOnBhZGRpbmc7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94O30uZHJvcGRvd24tbWVudS5wdWxsLXJpZ2h0e3JpZ2h0OjA7bGVmdDphdXRvO30KLmRyb3Bkb3duLW1lbnUgLmRpdmlkZXJ7KndpZHRoOjEwMCU7aGVpZ2h0OjFweDttYXJnaW46OXB4IDFweDsqbWFyZ2luOi01cHggMCA1cHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQtY29sb3I6I2U1ZTVlNTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZmZmZmZmO30KLmRyb3Bkb3duLW1lbnU+bGk+YXtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6M3B4IDIwcHg7Y2xlYXI6Ym90aDtmb250LXdlaWdodDpub3JtYWw7bGluZS1oZWlnaHQ6MjBweDtjb2xvcjojMzMzMzMzO3doaXRlLXNwYWNlOm5vd3JhcDt9Ci5kcm9wZG93bi1tZW51PmxpPmE6aG92ZXIsLmRyb3Bkb3duLW1lbnU+bGk+YTpmb2N1cywuZHJvcGRvd24tc3VibWVudTpob3Zlcj5hLC5kcm9wZG93bi1zdWJtZW51OmZvY3VzPmF7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y29sb3I6I2ZmZmZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDgxYzI7YmFja2dyb3VuZC1pbWFnZTotbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDc3YjMpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCMwMDg4Y2MpLCB0bygjMDA3N2IzKSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDc3YjMpO2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNzdiMyk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDA4OGNjLCAjMDA3N2IzKTtiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQteDtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNmZjAwODhjYycsIGVuZENvbG9yc3RyPScjZmYwMDc3YjMnLCBHcmFkaWVudFR5cGU9MCk7fQouZHJvcGRvd24tbWVudT4uYWN0aXZlPmEsLmRyb3Bkb3duLW1lbnU+LmFjdGl2ZT5hOmhvdmVyLC5kcm9wZG93bi1tZW51Pi5hY3RpdmU+YTpmb2N1c3tjb2xvcjojZmZmZmZmO3RleHQtZGVjb3JhdGlvbjpub25lO291dGxpbmU6MDtiYWNrZ3JvdW5kLWNvbG9yOiMwMDgxYzI7YmFja2dyb3VuZC1pbWFnZTotbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDc3YjMpO2JhY2tncm91bmQtaW1hZ2U6LXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCMwMDg4Y2MpLCB0bygjMDA3N2IzKSk7YmFja2dyb3VuZC1pbWFnZTotd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDc3YjMpO2JhY2tncm91bmQtaW1hZ2U6LW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNzdiMyk7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDA4OGNjLCAjMDA3N2IzKTtiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQteDtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNmZjAwODhjYycsIGVuZENvbG9yc3RyPScjZmYwMDc3YjMnLCBHcmFkaWVudFR5cGU9MCk7fQouZHJvcGRvd24tbWVudT4uZGlzYWJsZWQ+YSwuZHJvcGRvd24tbWVudT4uZGlzYWJsZWQ+YTpob3ZlciwuZHJvcGRvd24tbWVudT4uZGlzYWJsZWQ+YTpmb2N1c3tjb2xvcjojOTk5OTk5O30KLmRyb3Bkb3duLW1lbnU+LmRpc2FibGVkPmE6aG92ZXIsLmRyb3Bkb3duLW1lbnU+LmRpc2FibGVkPmE6Zm9jdXN7dGV4dC1kZWNvcmF0aW9uOm5vbmU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWltYWdlOm5vbmU7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO2N1cnNvcjpkZWZhdWx0O30KLm9wZW57KnotaW5kZXg6MTAwMDt9Lm9wZW4+LmRyb3Bkb3duLW1lbnV7ZGlzcGxheTpibG9jazt9Ci5kcm9wZG93bi1iYWNrZHJvcHtwb3NpdGlvbjpmaXhlZDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDt0b3A6MDt6LWluZGV4Ojk5MDt9Ci5wdWxsLXJpZ2h0Pi5kcm9wZG93bi1tZW51e3JpZ2h0OjA7bGVmdDphdXRvO30KLmRyb3B1cCAuY2FyZXQsLm5hdmJhci1maXhlZC1ib3R0b20gLmRyb3Bkb3duIC5jYXJldHtib3JkZXItdG9wOjA7Ym9yZGVyLWJvdHRvbTo0cHggc29saWQgIzAwMDAwMDtjb250ZW50OiIiO30KLmRyb3B1cCAuZHJvcGRvd24tbWVudSwubmF2YmFyLWZpeGVkLWJvdHRvbSAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnV7dG9wOmF1dG87Ym90dG9tOjEwMCU7bWFyZ2luLWJvdHRvbToxcHg7fQouZHJvcGRvd24tc3VibWVudXtwb3NpdGlvbjpyZWxhdGl2ZTt9Ci5kcm9wZG93bi1zdWJtZW51Pi5kcm9wZG93bi1tZW51e3RvcDowO2xlZnQ6MTAwJTttYXJnaW4tdG9wOi02cHg7bWFyZ2luLWxlZnQ6LTFweDstd2Via2l0LWJvcmRlci1yYWRpdXM6MCA2cHggNnB4IDZweDstbW96LWJvcmRlci1yYWRpdXM6MCA2cHggNnB4IDZweDtib3JkZXItcmFkaXVzOjAgNnB4IDZweCA2cHg7fQouZHJvcGRvd24tc3VibWVudTpob3Zlcj4uZHJvcGRvd24tbWVudXtkaXNwbGF5OmJsb2NrO30KLmRyb3B1cCAuZHJvcGRvd24tc3VibWVudT4uZHJvcGRvd24tbWVudXt0b3A6YXV0bztib3R0b206MDttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTotMnB4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo1cHggNXB4IDVweCAwOy1tb3otYm9yZGVyLXJhZGl1czo1cHggNXB4IDVweCAwO2JvcmRlci1yYWRpdXM6NXB4IDVweCA1cHggMDt9Ci5kcm9wZG93bi1zdWJtZW51PmE6YWZ0ZXJ7ZGlzcGxheTpibG9jaztjb250ZW50OiIgIjtmbG9hdDpyaWdodDt3aWR0aDowO2hlaWdodDowO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjVweCAwIDVweCA1cHg7Ym9yZGVyLWxlZnQtY29sb3I6I2NjY2NjYzttYXJnaW4tdG9wOjVweDttYXJnaW4tcmlnaHQ6LTEwcHg7fQouZHJvcGRvd24tc3VibWVudTpob3Zlcj5hOmFmdGVye2JvcmRlci1sZWZ0LWNvbG9yOiNmZmZmZmY7fQouZHJvcGRvd24tc3VibWVudS5wdWxsLWxlZnR7ZmxvYXQ6bm9uZTt9LmRyb3Bkb3duLXN1Ym1lbnUucHVsbC1sZWZ0Pi5kcm9wZG93bi1tZW51e2xlZnQ6LTEwMCU7bWFyZ2luLWxlZnQ6MTBweDstd2Via2l0LWJvcmRlci1yYWRpdXM6NnB4IDAgNnB4IDZweDstbW96LWJvcmRlci1yYWRpdXM6NnB4IDAgNnB4IDZweDtib3JkZXItcmFkaXVzOjZweCAwIDZweCA2cHg7fQouZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgLm5hdi1oZWFkZXJ7cGFkZGluZy1sZWZ0OjIwcHg7cGFkZGluZy1yaWdodDoyMHB4O30KLnR5cGVhaGVhZHt6LWluZGV4OjEwNTE7bWFyZ2luLXRvcDoycHg7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXM6NHB4O2JvcmRlci1yYWRpdXM6NHB4O30KLmFjY29yZGlvbnttYXJnaW4tYm90dG9tOjIwcHg7fQouYWNjb3JkaW9uLWdyb3Vwe21hcmdpbi1ib3R0b206MnB4O2JvcmRlcjoxcHggc29saWQgI2U1ZTVlNTstd2Via2l0LWJvcmRlci1yYWRpdXM6NHB4Oy1tb3otYm9yZGVyLXJhZGl1czo0cHg7Ym9yZGVyLXJhZGl1czo0cHg7fQouYWNjb3JkaW9uLWhlYWRpbmd7Ym9yZGVyLWJvdHRvbTowO30KLmFjY29yZGlvbi1oZWFkaW5nIC5hY2NvcmRpb24tdG9nZ2xle2Rpc3BsYXk6YmxvY2s7cGFkZGluZzo4cHggMTVweDt9Ci5hY2NvcmRpb24tdG9nZ2xle2N1cnNvcjpwb2ludGVyO30KLmFjY29yZGlvbi1pbm5lcntwYWRkaW5nOjlweCAxNXB4O2JvcmRlci10b3A6MXB4IHNvbGlkICNlNWU1ZTU7fQouY2Fyb3VzZWx7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLWJvdHRvbToyMHB4O2xpbmUtaGVpZ2h0OjE7fQouY2Fyb3VzZWwtaW5uZXJ7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjEwMCU7cG9zaXRpb246cmVsYXRpdmU7fQouY2Fyb3VzZWwtaW5uZXI+Lml0ZW17ZGlzcGxheTpub25lO3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtdHJhbnNpdGlvbjowLjZzIGVhc2UtaW4tb3V0IGxlZnQ7LW1vei10cmFuc2l0aW9uOjAuNnMgZWFzZS1pbi1vdXQgbGVmdDstby10cmFuc2l0aW9uOjAuNnMgZWFzZS1pbi1vdXQgbGVmdDt0cmFuc2l0aW9uOjAuNnMgZWFzZS1pbi1vdXQgbGVmdDt9LmNhcm91c2VsLWlubmVyPi5pdGVtPmltZywuY2Fyb3VzZWwtaW5uZXI+Lml0ZW0+YT5pbWd7ZGlzcGxheTpibG9jaztsaW5lLWhlaWdodDoxO30KLmNhcm91c2VsLWlubmVyPi5hY3RpdmUsLmNhcm91c2VsLWlubmVyPi5uZXh0LC5jYXJvdXNlbC1pbm5lcj4ucHJldntkaXNwbGF5OmJsb2NrO30KLmNhcm91c2VsLWlubmVyPi5hY3RpdmV7bGVmdDowO30KLmNhcm91c2VsLWlubmVyPi5uZXh0LC5jYXJvdXNlbC1pbm5lcj4ucHJldntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlO30KLmNhcm91c2VsLWlubmVyPi5uZXh0e2xlZnQ6MTAwJTt9Ci5jYXJvdXNlbC1pbm5lcj4ucHJldntsZWZ0Oi0xMDAlO30KLmNhcm91c2VsLWlubmVyPi5uZXh0LmxlZnQsLmNhcm91c2VsLWlubmVyPi5wcmV2LnJpZ2h0e2xlZnQ6MDt9Ci5jYXJvdXNlbC1pbm5lcj4uYWN0aXZlLmxlZnR7bGVmdDotMTAwJTt9Ci5jYXJvdXNlbC1pbm5lcj4uYWN0aXZlLnJpZ2h0e2xlZnQ6MTAwJTt9Ci5jYXJvdXNlbC1jb250cm9se3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0MCU7bGVmdDoxNXB4O3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7bWFyZ2luLXRvcDotMjBweDtmb250LXNpemU6NjBweDtmb250LXdlaWdodDoxMDA7bGluZS1oZWlnaHQ6MzBweDtjb2xvcjojZmZmZmZmO3RleHQtYWxpZ246Y2VudGVyO2JhY2tncm91bmQ6IzIyMjIyMjtib3JkZXI6M3B4IHNvbGlkICNmZmZmZmY7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjIzcHg7LW1vei1ib3JkZXItcmFkaXVzOjIzcHg7Ym9yZGVyLXJhZGl1czoyM3B4O29wYWNpdHk6MC41O2ZpbHRlcjphbHBoYShvcGFjaXR5PTUwKTt9LmNhcm91c2VsLWNvbnRyb2wucmlnaHR7bGVmdDphdXRvO3JpZ2h0OjE1cHg7fQouY2Fyb3VzZWwtY29udHJvbDpob3ZlciwuY2Fyb3VzZWwtY29udHJvbDpmb2N1c3tjb2xvcjojZmZmZmZmO3RleHQtZGVjb3JhdGlvbjpub25lO29wYWNpdHk6MC45O2ZpbHRlcjphbHBoYShvcGFjaXR5PTkwKTt9Ci5jYXJvdXNlbC1pbmRpY2F0b3Jze3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxNXB4O3JpZ2h0OjE1cHg7ei1pbmRleDo1O21hcmdpbjowO2xpc3Qtc3R5bGU6bm9uZTt9LmNhcm91c2VsLWluZGljYXRvcnMgbGl7ZGlzcGxheTpibG9jaztmbG9hdDpsZWZ0O3dpZHRoOjEwcHg7aGVpZ2h0OjEwcHg7bWFyZ2luLWxlZnQ6NXB4O3RleHQtaW5kZW50Oi05OTlweDtiYWNrZ3JvdW5kLWNvbG9yOiNjY2M7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO2JvcmRlci1yYWRpdXM6NXB4O30KLmNhcm91c2VsLWluZGljYXRvcnMgLmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7fQouY2Fyb3VzZWwtY2FwdGlvbntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDtwYWRkaW5nOjE1cHg7YmFja2dyb3VuZDojMzMzMzMzO2JhY2tncm91bmQ6cmdiYSgwLCAwLCAwLCAwLjc1KTt9Ci5jYXJvdXNlbC1jYXB0aW9uIGg0LC5jYXJvdXNlbC1jYXB0aW9uIHB7Y29sb3I6I2ZmZmZmZjtsaW5lLWhlaWdodDoyMHB4O30KLmNhcm91c2VsLWNhcHRpb24gaDR7bWFyZ2luOjAgMCA1cHg7fQouY2Fyb3VzZWwtY2FwdGlvbiBwe21hcmdpbi1ib3R0b206MDt9Ci53ZWxse21pbi1oZWlnaHQ6MjBweDtwYWRkaW5nOjE5cHg7bWFyZ2luLWJvdHRvbToyMHB4O2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNTtib3JkZXI6MXB4IHNvbGlkICNlM2UzZTM7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjRweDstbW96LWJvcmRlci1yYWRpdXM6NHB4O2JvcmRlci1yYWRpdXM6NHB4Oy13ZWJraXQtYm94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTstbW96LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTt9LndlbGwgYmxvY2txdW90ZXtib3JkZXItY29sb3I6I2RkZDtib3JkZXItY29sb3I6cmdiYSgwLCAwLCAwLCAwLjE1KTt9Ci53ZWxsLWxhcmdle3BhZGRpbmc6MjRweDstd2Via2l0LWJvcmRlci1yYWRpdXM6NnB4Oy1tb3otYm9yZGVyLXJhZGl1czo2cHg7Ym9yZGVyLXJhZGl1czo2cHg7fQoud2VsbC1zbWFsbHtwYWRkaW5nOjlweDstd2Via2l0LWJvcmRlci1yYWRpdXM6M3B4Oy1tb3otYm9yZGVyLXJhZGl1czozcHg7Ym9yZGVyLXJhZGl1czozcHg7fQouY2xvc2V7ZmxvYXQ6cmlnaHQ7Zm9udC1zaXplOjIwcHg7Zm9udC13ZWlnaHQ6Ym9sZDtsaW5lLWhlaWdodDoyMHB4O2NvbG9yOiMwMDAwMDA7dGV4dC1zaGFkb3c6MCAxcHggMCAjZmZmZmZmO29wYWNpdHk6MC4yO2ZpbHRlcjphbHBoYShvcGFjaXR5PTIwKTt9LmNsb3NlOmhvdmVyLC5jbG9zZTpmb2N1c3tjb2xvcjojMDAwMDAwO3RleHQtZGVjb3JhdGlvbjpub25lO2N1cnNvcjpwb2ludGVyO29wYWNpdHk6MC40O2ZpbHRlcjphbHBoYShvcGFjaXR5PTQwKTt9CmJ1dHRvbi5jbG9zZXtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MDstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTt9Ci5wdWxsLXJpZ2h0e2Zsb2F0OnJpZ2h0O30KLnB1bGwtbGVmdHtmbG9hdDpsZWZ0O30KLmhpZGV7ZGlzcGxheTpub25lO30KLnNob3d7ZGlzcGxheTpibG9jazt9Ci5pbnZpc2libGV7dmlzaWJpbGl0eTpoaWRkZW47fQouYWZmaXh7cG9zaXRpb246Zml4ZWQ7fQouZmFkZXtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgMC4xNXMgbGluZWFyOy1tb3otdHJhbnNpdGlvbjpvcGFjaXR5IDAuMTVzIGxpbmVhcjstby10cmFuc2l0aW9uOm9wYWNpdHkgMC4xNXMgbGluZWFyO3RyYW5zaXRpb246b3BhY2l0eSAwLjE1cyBsaW5lYXI7fS5mYWRlLmlue29wYWNpdHk6MTt9Ci5jb2xsYXBzZXtwb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC10cmFuc2l0aW9uOmhlaWdodCAwLjM1cyBlYXNlOy1tb3otdHJhbnNpdGlvbjpoZWlnaHQgMC4zNXMgZWFzZTstby10cmFuc2l0aW9uOmhlaWdodCAwLjM1cyBlYXNlO3RyYW5zaXRpb246aGVpZ2h0IDAuMzVzIGVhc2U7fS5jb2xsYXBzZS5pbntoZWlnaHQ6YXV0bzt9CkAtbXMtdmlld3BvcnR7d2lkdGg6ZGV2aWNlLXdpZHRoO30uaGlkZGVue2Rpc3BsYXk6bm9uZTt2aXNpYmlsaXR5OmhpZGRlbjt9Ci52aXNpYmxlLXBob25le2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50O30KLnZpc2libGUtdGFibGV0e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50O30KLmhpZGRlbi1kZXNrdG9we2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50O30KLnZpc2libGUtZGVza3RvcHtkaXNwbGF5OmluaGVyaXQgIWltcG9ydGFudDt9CkBtZWRpYSAobWluLXdpZHRoOjc2OHB4KSBhbmQgKG1heC13aWR0aDo5NzlweCl7LmhpZGRlbi1kZXNrdG9we2Rpc3BsYXk6aW5oZXJpdCAhaW1wb3J0YW50O30gLnZpc2libGUtZGVza3RvcHtkaXNwbGF5Om5vbmUgIWltcG9ydGFudCA7fSAudmlzaWJsZS10YWJsZXR7ZGlzcGxheTppbmhlcml0ICFpbXBvcnRhbnQ7fSAuaGlkZGVuLXRhYmxldHtkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsuaGlkZGVuLWRlc2t0b3B7ZGlzcGxheTppbmhlcml0ICFpbXBvcnRhbnQ7fSAudmlzaWJsZS1kZXNrdG9we2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50O30gLnZpc2libGUtcGhvbmV7ZGlzcGxheTppbmhlcml0ICFpbXBvcnRhbnQ7fSAuaGlkZGVuLXBob25le2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50O319LnZpc2libGUtcHJpbnR7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fQpAbWVkaWEgcHJpbnR7LnZpc2libGUtcHJpbnR7ZGlzcGxheTppbmhlcml0ICFpbXBvcnRhbnQ7fSAuaGlkZGVuLXByaW50e2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50O319QG1lZGlhIChtYXgtd2lkdGg6NzY3cHgpe2JvZHl7cGFkZGluZy1sZWZ0OjIwcHg7cGFkZGluZy1yaWdodDoyMHB4O30gLm5hdmJhci1maXhlZC10b3AsLm5hdmJhci1maXhlZC1ib3R0b20sLm5hdmJhci1zdGF0aWMtdG9we21hcmdpbi1sZWZ0Oi0yMHB4O21hcmdpbi1yaWdodDotMjBweDt9IC5jb250YWluZXItZmx1aWR7cGFkZGluZzowO30gLmRsLWhvcml6b250YWwgZHR7ZmxvYXQ6bm9uZTtjbGVhcjpub25lO3dpZHRoOmF1dG87dGV4dC1hbGlnbjpsZWZ0O30gLmRsLWhvcml6b250YWwgZGR7bWFyZ2luLWxlZnQ6MDt9IC5jb250YWluZXJ7d2lkdGg6YXV0bzt9IC5yb3ctZmx1aWR7d2lkdGg6MTAwJTt9IC5yb3csLnRodW1ibmFpbHN7bWFyZ2luLWxlZnQ6MDt9IC50aHVtYm5haWxzPmxpe2Zsb2F0Om5vbmU7bWFyZ2luLWxlZnQ6MDt9IFtjbGFzcyo9InNwYW4iXSwudW5lZGl0YWJsZS1pbnB1dFtjbGFzcyo9InNwYW4iXSwucm93LWZsdWlkIFtjbGFzcyo9InNwYW4iXXtmbG9hdDpub25lO2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTttYXJnaW4tbGVmdDowOy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDt9IC5zcGFuMTIsLnJvdy1mbHVpZCAuc3BhbjEye3dpZHRoOjEwMCU7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O30gLnJvdy1mbHVpZCBbY2xhc3MqPSJvZmZzZXQiXTpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDowO30gLmlucHV0LWxhcmdlLC5pbnB1dC14bGFyZ2UsLmlucHV0LXh4bGFyZ2UsaW5wdXRbY2xhc3MqPSJzcGFuIl0sc2VsZWN0W2NsYXNzKj0ic3BhbiJdLHRleHRhcmVhW2NsYXNzKj0ic3BhbiJdLC51bmVkaXRhYmxlLWlucHV0e2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjMwcHg7LXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O30gLmlucHV0LXByZXBlbmQgaW5wdXQsLmlucHV0LWFwcGVuZCBpbnB1dCwuaW5wdXQtcHJlcGVuZCBpbnB1dFtjbGFzcyo9InNwYW4iXSwuaW5wdXQtYXBwZW5kIGlucHV0W2NsYXNzKj0ic3BhbiJde2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOmF1dG87fSAuY29udHJvbHMtcm93IFtjbGFzcyo9InNwYW4iXStbY2xhc3MqPSJzcGFuIl17bWFyZ2luLWxlZnQ6MDt9IC5tb2RhbHtwb3NpdGlvbjpmaXhlZDt0b3A6MjBweDtsZWZ0OjIwcHg7cmlnaHQ6MjBweDt3aWR0aDphdXRvO21hcmdpbjowO30ubW9kYWwuZmFkZXt0b3A6LTEwMHB4O30gLm1vZGFsLmZhZGUuaW57dG9wOjIwcHg7fX1AbWVkaWEgKG1heC13aWR0aDo0ODBweCl7Lm5hdi1jb2xsYXBzZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLCAwLCAwKTt9IC5wYWdlLWhlYWRlciBoMSBzbWFsbHtkaXNwbGF5OmJsb2NrO2xpbmUtaGVpZ2h0OjIwcHg7fSBpbnB1dFt0eXBlPSJjaGVja2JveCJdLGlucHV0W3R5cGU9InJhZGlvIl17Ym9yZGVyOjFweCBzb2xpZCAjY2NjO30gLmZvcm0taG9yaXpvbnRhbCAuY29udHJvbC1sYWJlbHtmbG9hdDpub25lO3dpZHRoOmF1dG87cGFkZGluZy10b3A6MDt0ZXh0LWFsaWduOmxlZnQ7fSAuZm9ybS1ob3Jpem9udGFsIC5jb250cm9sc3ttYXJnaW4tbGVmdDowO30gLmZvcm0taG9yaXpvbnRhbCAuY29udHJvbC1saXN0e3BhZGRpbmctdG9wOjA7fSAuZm9ybS1ob3Jpem9udGFsIC5mb3JtLWFjdGlvbnN7cGFkZGluZy1sZWZ0OjEwcHg7cGFkZGluZy1yaWdodDoxMHB4O30gLm1lZGlhIC5wdWxsLWxlZnQsLm1lZGlhIC5wdWxsLXJpZ2h0e2Zsb2F0Om5vbmU7ZGlzcGxheTpibG9jazttYXJnaW4tYm90dG9tOjEwcHg7fSAubWVkaWEtb2JqZWN0e21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjA7fSAubW9kYWx7dG9wOjEwcHg7bGVmdDoxMHB4O3JpZ2h0OjEwcHg7fSAubW9kYWwtaGVhZGVyIC5jbG9zZXtwYWRkaW5nOjEwcHg7bWFyZ2luOi0xMHB4O30gLmNhcm91c2VsLWNhcHRpb257cG9zaXRpb246c3RhdGljO319QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIGFuZCAobWF4LXdpZHRoOjk3OXB4KXsucm93e21hcmdpbi1sZWZ0Oi0yMHB4Oyp6b29tOjE7fS5yb3c6YmVmb3JlLC5yb3c6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OiIiO2xpbmUtaGVpZ2h0OjA7fSAucm93OmFmdGVye2NsZWFyOmJvdGg7fSBbY2xhc3MqPSJzcGFuIl17ZmxvYXQ6bGVmdDttaW4taGVpZ2h0OjFweDttYXJnaW4tbGVmdDoyMHB4O30gLmNvbnRhaW5lciwubmF2YmFyLXN0YXRpYy10b3AgLmNvbnRhaW5lciwubmF2YmFyLWZpeGVkLXRvcCAuY29udGFpbmVyLC5uYXZiYXItZml4ZWQtYm90dG9tIC5jb250YWluZXJ7d2lkdGg6NzI0cHg7fSAuc3BhbjEye3dpZHRoOjcyNHB4O30gLnNwYW4xMXt3aWR0aDo2NjJweDt9IC5zcGFuMTB7d2lkdGg6NjAwcHg7fSAuc3Bhbjl7d2lkdGg6NTM4cHg7fSAuc3Bhbjh7d2lkdGg6NDc2cHg7fSAuc3Bhbjd7d2lkdGg6NDE0cHg7fSAuc3BhbjZ7d2lkdGg6MzUycHg7fSAuc3BhbjV7d2lkdGg6MjkwcHg7fSAuc3BhbjR7d2lkdGg6MjI4cHg7fSAuc3BhbjN7d2lkdGg6MTY2cHg7fSAuc3BhbjJ7d2lkdGg6MTA0cHg7fSAuc3BhbjF7d2lkdGg6NDJweDt9IC5vZmZzZXQxMnttYXJnaW4tbGVmdDo3NjRweDt9IC5vZmZzZXQxMXttYXJnaW4tbGVmdDo3MDJweDt9IC5vZmZzZXQxMHttYXJnaW4tbGVmdDo2NDBweDt9IC5vZmZzZXQ5e21hcmdpbi1sZWZ0OjU3OHB4O30gLm9mZnNldDh7bWFyZ2luLWxlZnQ6NTE2cHg7fSAub2Zmc2V0N3ttYXJnaW4tbGVmdDo0NTRweDt9IC5vZmZzZXQ2e21hcmdpbi1sZWZ0OjM5MnB4O30gLm9mZnNldDV7bWFyZ2luLWxlZnQ6MzMwcHg7fSAub2Zmc2V0NHttYXJnaW4tbGVmdDoyNjhweDt9IC5vZmZzZXQze21hcmdpbi1sZWZ0OjIwNnB4O30gLm9mZnNldDJ7bWFyZ2luLWxlZnQ6MTQ0cHg7fSAub2Zmc2V0MXttYXJnaW4tbGVmdDo4MnB4O30gLnJvdy1mbHVpZHt3aWR0aDoxMDAlOyp6b29tOjE7fS5yb3ctZmx1aWQ6YmVmb3JlLC5yb3ctZmx1aWQ6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OiIiO2xpbmUtaGVpZ2h0OjA7fSAucm93LWZsdWlkOmFmdGVye2NsZWFyOmJvdGg7fSAucm93LWZsdWlkIFtjbGFzcyo9InNwYW4iXXtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7bWluLWhlaWdodDozMHB4Oy13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtmbG9hdDpsZWZ0O21hcmdpbi1sZWZ0OjIuNzYyNDMwOTM5MjI2NTE5NCU7Km1hcmdpbi1sZWZ0OjIuNzA5MjM5NDQ5ODY0ODE3JTt9IC5yb3ctZmx1aWQgW2NsYXNzKj0ic3BhbiJdOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjA7fSAucm93LWZsdWlkIC5jb250cm9scy1yb3cgW2NsYXNzKj0ic3BhbiJdK1tjbGFzcyo9InNwYW4iXXttYXJnaW4tbGVmdDoyLjc2MjQzMDkzOTIyNjUxOTQlO30gLnJvdy1mbHVpZCAuc3BhbjEye3dpZHRoOjEwMCU7KndpZHRoOjk5Ljk0NjgwODUxMDYzODI5JTt9IC5yb3ctZmx1aWQgLnNwYW4xMXt3aWR0aDo5MS40MzY0NjQwODgzOTc3OCU7KndpZHRoOjkxLjM4MzI3MjU5OTAzNjA4JTt9IC5yb3ctZmx1aWQgLnNwYW4xMHt3aWR0aDo4Mi44NzI5MjgxNzY3OTU1OCU7KndpZHRoOjgyLjgxOTczNjY4NzQzMzg3JTt9IC5yb3ctZmx1aWQgLnNwYW45e3dpZHRoOjc0LjMwOTM5MjI2NTE5MzM3JTsqd2lkdGg6NzQuMjU2MjAwNzc1ODMxNjYlO30gLnJvdy1mbHVpZCAuc3Bhbjh7d2lkdGg6NjUuNzQ1ODU2MzUzNTkxMTclOyp3aWR0aDo2NS42OTI2NjQ4NjQyMjk0NiU7fSAucm93LWZsdWlkIC5zcGFuN3t3aWR0aDo1Ny4xODIzMjA0NDE5ODg5NSU7KndpZHRoOjU3LjEyOTEyODk1MjYyNzI1JTt9IC5yb3ctZmx1aWQgLnNwYW42e3dpZHRoOjQ4LjYxODc4NDUzMDM4Njc0JTsqd2lkdGg6NDguNTY1NTkzMDQxMDI1MDQlO30gLnJvdy1mbHVpZCAuc3BhbjV7d2lkdGg6NDAuMDU1MjQ4NjE4Nzg0NTMlOyp3aWR0aDo0MC4wMDIwNTcxMjk0MjI4MyU7fSAucm93LWZsdWlkIC5zcGFuNHt3aWR0aDozMS40OTE3MTI3MDcxODIzMjMlOyp3aWR0aDozMS40Mzg1MjEyMTc4MjA2MiU7fSAucm93LWZsdWlkIC5zcGFuM3t3aWR0aDoyMi45MjgxNzY3OTU1ODAxMSU7KndpZHRoOjIyLjg3NDk4NTMwNjIxODQxJTt9IC5yb3ctZmx1aWQgLnNwYW4ye3dpZHRoOjE0LjM2NDY0MDg4Mzk3NzklOyp3aWR0aDoxNC4zMTE0NDkzOTQ2MTYxOTklO30gLnJvdy1mbHVpZCAuc3BhbjF7d2lkdGg6NS44MDExMDQ5NzIzNzU2OTElOyp3aWR0aDo1Ljc0NzkxMzQ4MzAxMzk4OCU7fSAucm93LWZsdWlkIC5vZmZzZXQxMnttYXJnaW4tbGVmdDoxMDUuNTI0ODYxODc4NDUzMDQlOyptYXJnaW4tbGVmdDoxMDUuNDE4NDc4ODk5NzI5NjIlO30gLnJvdy1mbHVpZCAub2Zmc2V0MTI6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MTAyLjc2MjQzMDkzOTIyNjUyJTsqbWFyZ2luLWxlZnQ6MTAyLjY1NjA0Nzk2MDUwMzElO30gLnJvdy1mbHVpZCAub2Zmc2V0MTF7bWFyZ2luLWxlZnQ6OTYuOTYxMzI1OTY2ODUwODIlOyptYXJnaW4tbGVmdDo5Ni44NTQ5NDI5ODgxMjc0JTt9IC5yb3ctZmx1aWQgLm9mZnNldDExOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0Ojk0LjE5ODg5NTAyNzYyNDMlOyptYXJnaW4tbGVmdDo5NC4wOTI1MTIwNDg5MDA4OSU7fSAucm93LWZsdWlkIC5vZmZzZXQxMHttYXJnaW4tbGVmdDo4OC4zOTc3OTAwNTUyNDg2MiU7Km1hcmdpbi1sZWZ0Ojg4LjI5MTQwNzA3NjUyNTIlO30gLnJvdy1mbHVpZCAub2Zmc2V0MTA6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6ODUuNjM1MzU5MTE2MDIyMSU7Km1hcmdpbi1sZWZ0Ojg1LjUyODk3NjEzNzI5ODY4JTt9IC5yb3ctZmx1aWQgLm9mZnNldDl7bWFyZ2luLWxlZnQ6NzkuODM0MjU0MTQzNjQ2NCU7Km1hcmdpbi1sZWZ0Ojc5LjcyNzg3MTE2NDkyMjk5JTt9IC5yb3ctZmx1aWQgLm9mZnNldDk6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6NzcuMDcxODIzMjA0NDE5ODklOyptYXJnaW4tbGVmdDo3Ni45NjU0NDAyMjU2OTY0NyU7fSAucm93LWZsdWlkIC5vZmZzZXQ4e21hcmdpbi1sZWZ0OjcxLjI3MDcxODIzMjA0NDIlOyptYXJnaW4tbGVmdDo3MS4xNjQzMzUyNTMzMjA3OSU7fSAucm93LWZsdWlkIC5vZmZzZXQ4OmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjY4LjUwODI4NzI5MjgxNzY4JTsqbWFyZ2luLWxlZnQ6NjguNDAxOTA0MzE0MDk0MjclO30gLnJvdy1mbHVpZCAub2Zmc2V0N3ttYXJnaW4tbGVmdDo2Mi43MDcxODIzMjA0NDE5OSU7Km1hcmdpbi1sZWZ0OjYyLjYwMDc5OTM0MTcxODU4NCU7fSAucm93LWZsdWlkIC5vZmZzZXQ3OmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjU5Ljk0NDc1MTM4MTIxNTQ3JTsqbWFyZ2luLWxlZnQ6NTkuODM4MzY4NDAyNDkyMDY1JTt9IC5yb3ctZmx1aWQgLm9mZnNldDZ7bWFyZ2luLWxlZnQ6NTQuMTQzNjQ2NDA4ODM5NzglOyptYXJnaW4tbGVmdDo1NC4wMzcyNjM0MzAxMTYzNzYlO30gLnJvdy1mbHVpZCAub2Zmc2V0NjpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDo1MS4zODEyMTU0Njk2MTMyNiU7Km1hcmdpbi1sZWZ0OjUxLjI3NDgzMjQ5MDg4OTg2JTt9IC5yb3ctZmx1aWQgLm9mZnNldDV7bWFyZ2luLWxlZnQ6NDUuNTgwMTEwNDk3MjM3NTclOyptYXJnaW4tbGVmdDo0NS40NzM3Mjc1MTg1MTQxNyU7fSAucm93LWZsdWlkIC5vZmZzZXQ1OmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjQyLjgxNzY3OTU1ODAxMTA1JTsqbWFyZ2luLWxlZnQ6NDIuNzExMjk2NTc5Mjg3NjUlO30gLnJvdy1mbHVpZCAub2Zmc2V0NHttYXJnaW4tbGVmdDozNy4wMTY1NzQ1ODU2MzUzNiU7Km1hcmdpbi1sZWZ0OjM2LjkxMDE5MTYwNjkxMTk2JTt9IC5yb3ctZmx1aWQgLm9mZnNldDQ6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MzQuMjU0MTQzNjQ2NDA4ODQlOyptYXJnaW4tbGVmdDozNC4xNDc3NjA2Njc2ODU0NCU7fSAucm93LWZsdWlkIC5vZmZzZXQze21hcmdpbi1sZWZ0OjI4LjQ1MzAzODY3NDAzMzE1JTsqbWFyZ2luLWxlZnQ6MjguMzQ2NjU1Njk1MzA5NzQ2JTt9IC5yb3ctZmx1aWQgLm9mZnNldDM6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MjUuNjkwNjA3NzM0ODA2NjMlOyptYXJnaW4tbGVmdDoyNS41ODQyMjQ3NTYwODMyMjclO30gLnJvdy1mbHVpZCAub2Zmc2V0MnttYXJnaW4tbGVmdDoxOS44ODk1MDI3NjI0MzA5NCU7Km1hcmdpbi1sZWZ0OjE5Ljc4MzExOTc4MzcwNzUzNyU7fSAucm93LWZsdWlkIC5vZmZzZXQyOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjE3LjEyNzA3MTgyMzIwNDQyJTsqbWFyZ2luLWxlZnQ6MTcuMDIwNjg4ODQ0NDgxMDIlO30gLnJvdy1mbHVpZCAub2Zmc2V0MXttYXJnaW4tbGVmdDoxMS4zMjU5NjY4NTA4Mjg3MyU7Km1hcmdpbi1sZWZ0OjExLjIxOTU4Mzg3MjEwNTMyNSU7fSAucm93LWZsdWlkIC5vZmZzZXQxOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjguNTYzNTM1OTExNjAyMjElOyptYXJnaW4tbGVmdDo4LjQ1NzE1MjkzMjg3ODgwNiU7fSBpbnB1dCx0ZXh0YXJlYSwudW5lZGl0YWJsZS1pbnB1dHttYXJnaW4tbGVmdDowO30gLmNvbnRyb2xzLXJvdyBbY2xhc3MqPSJzcGFuIl0rW2NsYXNzKj0ic3BhbiJde21hcmdpbi1sZWZ0OjIwcHg7fSBpbnB1dC5zcGFuMTIsdGV4dGFyZWEuc3BhbjEyLC51bmVkaXRhYmxlLWlucHV0LnNwYW4xMnt3aWR0aDo3MTBweDt9IGlucHV0LnNwYW4xMSx0ZXh0YXJlYS5zcGFuMTEsLnVuZWRpdGFibGUtaW5wdXQuc3BhbjExe3dpZHRoOjY0OHB4O30gaW5wdXQuc3BhbjEwLHRleHRhcmVhLnNwYW4xMCwudW5lZGl0YWJsZS1pbnB1dC5zcGFuMTB7d2lkdGg6NTg2cHg7fSBpbnB1dC5zcGFuOSx0ZXh0YXJlYS5zcGFuOSwudW5lZGl0YWJsZS1pbnB1dC5zcGFuOXt3aWR0aDo1MjRweDt9IGlucHV0LnNwYW44LHRleHRhcmVhLnNwYW44LC51bmVkaXRhYmxlLWlucHV0LnNwYW44e3dpZHRoOjQ2MnB4O30gaW5wdXQuc3BhbjcsdGV4dGFyZWEuc3BhbjcsLnVuZWRpdGFibGUtaW5wdXQuc3Bhbjd7d2lkdGg6NDAwcHg7fSBpbnB1dC5zcGFuNix0ZXh0YXJlYS5zcGFuNiwudW5lZGl0YWJsZS1pbnB1dC5zcGFuNnt3aWR0aDozMzhweDt9IGlucHV0LnNwYW41LHRleHRhcmVhLnNwYW41LC51bmVkaXRhYmxlLWlucHV0LnNwYW41e3dpZHRoOjI3NnB4O30gaW5wdXQuc3BhbjQsdGV4dGFyZWEuc3BhbjQsLnVuZWRpdGFibGUtaW5wdXQuc3BhbjR7d2lkdGg6MjE0cHg7fSBpbnB1dC5zcGFuMyx0ZXh0YXJlYS5zcGFuMywudW5lZGl0YWJsZS1pbnB1dC5zcGFuM3t3aWR0aDoxNTJweDt9IGlucHV0LnNwYW4yLHRleHRhcmVhLnNwYW4yLC51bmVkaXRhYmxlLWlucHV0LnNwYW4ye3dpZHRoOjkwcHg7fSBpbnB1dC5zcGFuMSx0ZXh0YXJlYS5zcGFuMSwudW5lZGl0YWJsZS1pbnB1dC5zcGFuMXt3aWR0aDoyOHB4O319QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsucm93e21hcmdpbi1sZWZ0Oi0zMHB4Oyp6b29tOjE7fS5yb3c6YmVmb3JlLC5yb3c6YWZ0ZXJ7ZGlzcGxheTp0YWJsZTtjb250ZW50OiIiO2xpbmUtaGVpZ2h0OjA7fSAucm93OmFmdGVye2NsZWFyOmJvdGg7fSBbY2xhc3MqPSJzcGFuIl17ZmxvYXQ6bGVmdDttaW4taGVpZ2h0OjFweDttYXJnaW4tbGVmdDozMHB4O30gLmNvbnRhaW5lciwubmF2YmFyLXN0YXRpYy10b3AgLmNvbnRhaW5lciwubmF2YmFyLWZpeGVkLXRvcCAuY29udGFpbmVyLC5uYXZiYXItZml4ZWQtYm90dG9tIC5jb250YWluZXJ7d2lkdGg6MTE3MHB4O30gLnNwYW4xMnt3aWR0aDoxMTcwcHg7fSAuc3BhbjExe3dpZHRoOjEwNzBweDt9IC5zcGFuMTB7d2lkdGg6OTcwcHg7fSAuc3Bhbjl7d2lkdGg6ODcwcHg7fSAuc3Bhbjh7d2lkdGg6NzcwcHg7fSAuc3Bhbjd7d2lkdGg6NjcwcHg7fSAuc3BhbjZ7d2lkdGg6NTcwcHg7fSAuc3BhbjV7d2lkdGg6NDcwcHg7fSAuc3BhbjR7d2lkdGg6MzcwcHg7fSAuc3BhbjN7d2lkdGg6MjcwcHg7fSAuc3BhbjJ7d2lkdGg6MTcwcHg7fSAuc3BhbjF7d2lkdGg6NzBweDt9IC5vZmZzZXQxMnttYXJnaW4tbGVmdDoxMjMwcHg7fSAub2Zmc2V0MTF7bWFyZ2luLWxlZnQ6MTEzMHB4O30gLm9mZnNldDEwe21hcmdpbi1sZWZ0OjEwMzBweDt9IC5vZmZzZXQ5e21hcmdpbi1sZWZ0OjkzMHB4O30gLm9mZnNldDh7bWFyZ2luLWxlZnQ6ODMwcHg7fSAub2Zmc2V0N3ttYXJnaW4tbGVmdDo3MzBweDt9IC5vZmZzZXQ2e21hcmdpbi1sZWZ0OjYzMHB4O30gLm9mZnNldDV7bWFyZ2luLWxlZnQ6NTMwcHg7fSAub2Zmc2V0NHttYXJnaW4tbGVmdDo0MzBweDt9IC5vZmZzZXQze21hcmdpbi1sZWZ0OjMzMHB4O30gLm9mZnNldDJ7bWFyZ2luLWxlZnQ6MjMwcHg7fSAub2Zmc2V0MXttYXJnaW4tbGVmdDoxMzBweDt9IC5yb3ctZmx1aWR7d2lkdGg6MTAwJTsqem9vbToxO30ucm93LWZsdWlkOmJlZm9yZSwucm93LWZsdWlkOmFmdGVye2Rpc3BsYXk6dGFibGU7Y29udGVudDoiIjtsaW5lLWhlaWdodDowO30gLnJvdy1mbHVpZDphZnRlcntjbGVhcjpib3RoO30gLnJvdy1mbHVpZCBbY2xhc3MqPSJzcGFuIl17ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO21pbi1oZWlnaHQ6MzBweDstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZmxvYXQ6bGVmdDttYXJnaW4tbGVmdDoyLjU2NDEwMjU2NDEwMjU2NCU7Km1hcmdpbi1sZWZ0OjIuNTEwOTExMDc0NzQwODYxNiU7fSAucm93LWZsdWlkIFtjbGFzcyo9InNwYW4iXTpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDowO30gLnJvdy1mbHVpZCAuY29udHJvbHMtcm93IFtjbGFzcyo9InNwYW4iXStbY2xhc3MqPSJzcGFuIl17bWFyZ2luLWxlZnQ6Mi41NjQxMDI1NjQxMDI1NjQlO30gLnJvdy1mbHVpZCAuc3BhbjEye3dpZHRoOjEwMCU7KndpZHRoOjk5Ljk0NjgwODUxMDYzODI5JTt9IC5yb3ctZmx1aWQgLnNwYW4xMXt3aWR0aDo5MS40NTI5OTE0NTI5OTE0NSU7KndpZHRoOjkxLjM5OTc5OTk2MzYyOTc1JTt9IC5yb3ctZmx1aWQgLnNwYW4xMHt3aWR0aDo4Mi45MDU5ODI5MDU5ODI5MSU7KndpZHRoOjgyLjg1Mjc5MTQxNjYyMTIlO30gLnJvdy1mbHVpZCAuc3Bhbjl7d2lkdGg6NzQuMzU4OTc0MzU4OTc0MzYlOyp3aWR0aDo3NC4zMDU3ODI4Njk2MTI2NiU7fSAucm93LWZsdWlkIC5zcGFuOHt3aWR0aDo2NS44MTE5NjU4MTE5NjU4MiU7KndpZHRoOjY1Ljc1ODc3NDMyMjYwNDExJTt9IC5yb3ctZmx1aWQgLnNwYW43e3dpZHRoOjU3LjI2NDk1NzI2NDk1NzI2JTsqd2lkdGg6NTcuMjExNzY1Nzc1NTk1NTYlO30gLnJvdy1mbHVpZCAuc3BhbjZ7d2lkdGg6NDguNzE3OTQ4NzE3OTQ4NzE1JTsqd2lkdGg6NDguNjY0NzU3MjI4NTg3MDE0JTt9IC5yb3ctZmx1aWQgLnNwYW41e3dpZHRoOjQwLjE3MDk0MDE3MDk0MDE3JTsqd2lkdGg6NDAuMTE3NzQ4NjgxNTc4NDclO30gLnJvdy1mbHVpZCAuc3BhbjR7d2lkdGg6MzEuNjIzOTMxNjIzOTMxNjI1JTsqd2lkdGg6MzEuNTcwNzQwMTM0NTY5OTI0JTt9IC5yb3ctZmx1aWQgLnNwYW4ze3dpZHRoOjIzLjA3NjkyMzA3NjkyMzA3NyU7KndpZHRoOjIzLjAyMzczMTU4NzU2MTM3NSU7fSAucm93LWZsdWlkIC5zcGFuMnt3aWR0aDoxNC41Mjk5MTQ1Mjk5MTQ1MyU7KndpZHRoOjE0LjQ3NjcyMzA0MDU1MjgyOCU7fSAucm93LWZsdWlkIC5zcGFuMXt3aWR0aDo1Ljk4MjkwNTk4MjkwNTk4MyU7KndpZHRoOjUuOTI5NzE0NDkzNTQ0MjgxJTt9IC5yb3ctZmx1aWQgLm9mZnNldDEye21hcmdpbi1sZWZ0OjEwNS4xMjgyMDUxMjgyMDUxMiU7Km1hcmdpbi1sZWZ0OjEwNS4wMjE4MjIxNDk0ODE3MSU7fSAucm93LWZsdWlkIC5vZmZzZXQxMjpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDoxMDIuNTY0MTAyNTY0MTAyNTclOyptYXJnaW4tbGVmdDoxMDIuNDU3NzE5NTg1Mzc5MTUlO30gLnJvdy1mbHVpZCAub2Zmc2V0MTF7bWFyZ2luLWxlZnQ6OTYuNTgxMTk2NTgxMTk2NTglOyptYXJnaW4tbGVmdDo5Ni40NzQ4MTM2MDI0NzMxNiU7fSAucm93LWZsdWlkIC5vZmZzZXQxMTpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDo5NC4wMTcwOTQwMTcwOTQwMiU7Km1hcmdpbi1sZWZ0OjkzLjkxMDcxMTAzODM3MDYxJTt9IC5yb3ctZmx1aWQgLm9mZnNldDEwe21hcmdpbi1sZWZ0Ojg4LjAzNDE4ODAzNDE4ODAzJTsqbWFyZ2luLWxlZnQ6ODcuOTI3ODA1MDU1NDY0NjIlO30gLnJvdy1mbHVpZCAub2Zmc2V0MTA6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6ODUuNDcwMDg1NDcwMDg1NDglOyptYXJnaW4tbGVmdDo4NS4zNjM3MDI0OTEzNjIwNiU7fSAucm93LWZsdWlkIC5vZmZzZXQ5e21hcmdpbi1sZWZ0Ojc5LjQ4NzE3OTQ4NzE3OTQ5JTsqbWFyZ2luLWxlZnQ6NzkuMzgwNzk2NTA4NDU2MDclO30gLnJvdy1mbHVpZCAub2Zmc2V0OTpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDo3Ni45MjMwNzY5MjMwNzY5MyU7Km1hcmdpbi1sZWZ0Ojc2LjgxNjY5Mzk0NDM1MzUyJTt9IC5yb3ctZmx1aWQgLm9mZnNldDh7bWFyZ2luLWxlZnQ6NzAuOTQwMTcwOTQwMTcwOTQlOyptYXJnaW4tbGVmdDo3MC44MzM3ODc5NjE0NDc1MyU7fSAucm93LWZsdWlkIC5vZmZzZXQ4OmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjY4LjM3NjA2ODM3NjA2ODM5JTsqbWFyZ2luLWxlZnQ6NjguMjY5Njg1Mzk3MzQ0OTclO30gLnJvdy1mbHVpZCAub2Zmc2V0N3ttYXJnaW4tbGVmdDo2Mi4zOTMxNjIzOTMxNjIzODUlOyptYXJnaW4tbGVmdDo2Mi4yODY3Nzk0MTQ0Mzg5OSU7fSAucm93LWZsdWlkIC5vZmZzZXQ3OmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjU5LjgyOTA1OTgyOTA1OTgyJTsqbWFyZ2luLWxlZnQ6NTkuNzIyNjc2ODUwMzM2NDIlO30gLnJvdy1mbHVpZCAub2Zmc2V0NnttYXJnaW4tbGVmdDo1My44NDYxNTM4NDYxNTM4NCU7Km1hcmdpbi1sZWZ0OjUzLjczOTc3MDg2NzQzMDQ0NCU7fSAucm93LWZsdWlkIC5vZmZzZXQ2OmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjUxLjI4MjA1MTI4MjA1MTI4JTsqbWFyZ2luLWxlZnQ6NTEuMTc1NjY4MzAzMzI3ODc1JTt9IC5yb3ctZmx1aWQgLm9mZnNldDV7bWFyZ2luLWxlZnQ6NDUuMjk5MTQ1Mjk5MTQ1Mjk1JTsqbWFyZ2luLWxlZnQ6NDUuMTkyNzYyMzIwNDIxOSU7fSAucm93LWZsdWlkIC5vZmZzZXQ1OmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjQyLjczNTA0MjczNTA0MjczJTsqbWFyZ2luLWxlZnQ6NDIuNjI4NjU5NzU2MzE5MzMlO30gLnJvdy1mbHVpZCAub2Zmc2V0NHttYXJnaW4tbGVmdDozNi43NTIxMzY3NTIxMzY3NSU7Km1hcmdpbi1sZWZ0OjM2LjY0NTc1Mzc3MzQxMzM1NCU7fSAucm93LWZsdWlkIC5vZmZzZXQ0OmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjM0LjE4ODAzNDE4ODAzNDE5JTsqbWFyZ2luLWxlZnQ6MzQuMDgxNjUxMjA5MzEwNzg1JTt9IC5yb3ctZmx1aWQgLm9mZnNldDN7bWFyZ2luLWxlZnQ6MjguMjA1MTI4MjA1MTI4MjA0JTsqbWFyZ2luLWxlZnQ6MjguMDk4NzQ1MjI2NDA0OCU7fSAucm93LWZsdWlkIC5vZmZzZXQzOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjI1LjY0MTAyNTY0MTAyNTY0MiU7Km1hcmdpbi1sZWZ0OjI1LjUzNDY0MjY2MjMwMjI0JTt9IC5yb3ctZmx1aWQgLm9mZnNldDJ7bWFyZ2luLWxlZnQ6MTkuNjU4MTE5NjU4MTE5NjYlOyptYXJnaW4tbGVmdDoxOS41NTE3MzY2NzkzOTYyNTclO30gLnJvdy1mbHVpZCAub2Zmc2V0MjpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDoxNy4wOTQwMTcwOTQwMTcwOTQlOyptYXJnaW4tbGVmdDoxNi45ODc2MzQxMTUyOTM2OSU7fSAucm93LWZsdWlkIC5vZmZzZXQxe21hcmdpbi1sZWZ0OjExLjExMTExMTExMTExMTExJTsqbWFyZ2luLWxlZnQ6MTEuMDA0NzI4MTMyMzg3NzA4JTt9IC5yb3ctZmx1aWQgLm9mZnNldDE6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6OC41NDcwMDg1NDcwMDg1NDclOyptYXJnaW4tbGVmdDo4LjQ0MDYyNTU2ODI4NTE0MiU7fSBpbnB1dCx0ZXh0YXJlYSwudW5lZGl0YWJsZS1pbnB1dHttYXJnaW4tbGVmdDowO30gLmNvbnRyb2xzLXJvdyBbY2xhc3MqPSJzcGFuIl0rW2NsYXNzKj0ic3BhbiJde21hcmdpbi1sZWZ0OjMwcHg7fSBpbnB1dC5zcGFuMTIsdGV4dGFyZWEuc3BhbjEyLC51bmVkaXRhYmxlLWlucHV0LnNwYW4xMnt3aWR0aDoxMTU2cHg7fSBpbnB1dC5zcGFuMTEsdGV4dGFyZWEuc3BhbjExLC51bmVkaXRhYmxlLWlucHV0LnNwYW4xMXt3aWR0aDoxMDU2cHg7fSBpbnB1dC5zcGFuMTAsdGV4dGFyZWEuc3BhbjEwLC51bmVkaXRhYmxlLWlucHV0LnNwYW4xMHt3aWR0aDo5NTZweDt9IGlucHV0LnNwYW45LHRleHRhcmVhLnNwYW45LC51bmVkaXRhYmxlLWlucHV0LnNwYW45e3dpZHRoOjg1NnB4O30gaW5wdXQuc3BhbjgsdGV4dGFyZWEuc3BhbjgsLnVuZWRpdGFibGUtaW5wdXQuc3Bhbjh7d2lkdGg6NzU2cHg7fSBpbnB1dC5zcGFuNyx0ZXh0YXJlYS5zcGFuNywudW5lZGl0YWJsZS1pbnB1dC5zcGFuN3t3aWR0aDo2NTZweDt9IGlucHV0LnNwYW42LHRleHRhcmVhLnNwYW42LC51bmVkaXRhYmxlLWlucHV0LnNwYW42e3dpZHRoOjU1NnB4O30gaW5wdXQuc3BhbjUsdGV4dGFyZWEuc3BhbjUsLnVuZWRpdGFibGUtaW5wdXQuc3BhbjV7d2lkdGg6NDU2cHg7fSBpbnB1dC5zcGFuNCx0ZXh0YXJlYS5zcGFuNCwudW5lZGl0YWJsZS1pbnB1dC5zcGFuNHt3aWR0aDozNTZweDt9IGlucHV0LnNwYW4zLHRleHRhcmVhLnNwYW4zLC51bmVkaXRhYmxlLWlucHV0LnNwYW4ze3dpZHRoOjI1NnB4O30gaW5wdXQuc3BhbjIsdGV4dGFyZWEuc3BhbjIsLnVuZWRpdGFibGUtaW5wdXQuc3BhbjJ7d2lkdGg6MTU2cHg7fSBpbnB1dC5zcGFuMSx0ZXh0YXJlYS5zcGFuMSwudW5lZGl0YWJsZS1pbnB1dC5zcGFuMXt3aWR0aDo1NnB4O30gLnRodW1ibmFpbHN7bWFyZ2luLWxlZnQ6LTMwcHg7fSAudGh1bWJuYWlscz5saXttYXJnaW4tbGVmdDozMHB4O30gLnJvdy1mbHVpZCAudGh1bWJuYWlsc3ttYXJnaW4tbGVmdDowO319QG1lZGlhIChtYXgtd2lkdGg6OTc5cHgpe2JvZHl7cGFkZGluZy10b3A6MDt9IC5uYXZiYXItZml4ZWQtdG9wLC5uYXZiYXItZml4ZWQtYm90dG9te3Bvc2l0aW9uOnN0YXRpYzt9IC5uYXZiYXItZml4ZWQtdG9we21hcmdpbi1ib3R0b206MjBweDt9IC5uYXZiYXItZml4ZWQtYm90dG9te21hcmdpbi10b3A6MjBweDt9IC5uYXZiYXItZml4ZWQtdG9wIC5uYXZiYXItaW5uZXIsLm5hdmJhci1maXhlZC1ib3R0b20gLm5hdmJhci1pbm5lcntwYWRkaW5nOjVweDt9IC5uYXZiYXIgLmNvbnRhaW5lcnt3aWR0aDphdXRvO3BhZGRpbmc6MDt9IC5uYXZiYXIgLmJyYW5ke3BhZGRpbmctbGVmdDoxMHB4O3BhZGRpbmctcmlnaHQ6MTBweDttYXJnaW46MCAwIDAgLTVweDt9IC5uYXYtY29sbGFwc2V7Y2xlYXI6Ym90aDt9IC5uYXYtY29sbGFwc2UgLm5hdntmbG9hdDpub25lO21hcmdpbjowIDAgMTBweDt9IC5uYXYtY29sbGFwc2UgLm5hdj5saXtmbG9hdDpub25lO30gLm5hdi1jb2xsYXBzZSAubmF2PmxpPmF7bWFyZ2luLWJvdHRvbToycHg7fSAubmF2LWNvbGxhcHNlIC5uYXY+LmRpdmlkZXItdmVydGljYWx7ZGlzcGxheTpub25lO30gLm5hdi1jb2xsYXBzZSAubmF2IC5uYXYtaGVhZGVye2NvbG9yOiM3Nzc3Nzc7dGV4dC1zaGFkb3c6bm9uZTt9IC5uYXYtY29sbGFwc2UgLm5hdj5saT5hLC5uYXYtY29sbGFwc2UgLmRyb3Bkb3duLW1lbnUgYXtwYWRkaW5nOjlweCAxNXB4O2ZvbnQtd2VpZ2h0OmJvbGQ7Y29sb3I6Izc3Nzc3Nzstd2Via2l0LWJvcmRlci1yYWRpdXM6M3B4Oy1tb3otYm9yZGVyLXJhZGl1czozcHg7Ym9yZGVyLXJhZGl1czozcHg7fSAubmF2LWNvbGxhcHNlIC5idG57cGFkZGluZzo0cHggMTBweCA0cHg7Zm9udC13ZWlnaHQ6bm9ybWFsOy13ZWJraXQtYm9yZGVyLXJhZGl1czo0cHg7LW1vei1ib3JkZXItcmFkaXVzOjRweDtib3JkZXItcmFkaXVzOjRweDt9IC5uYXYtY29sbGFwc2UgLmRyb3Bkb3duLW1lbnUgbGkrbGkgYXttYXJnaW4tYm90dG9tOjJweDt9IC5uYXYtY29sbGFwc2UgLm5hdj5saT5hOmhvdmVyLC5uYXYtY29sbGFwc2UgLm5hdj5saT5hOmZvY3VzLC5uYXYtY29sbGFwc2UgLmRyb3Bkb3duLW1lbnUgYTpob3ZlciwubmF2LWNvbGxhcHNlIC5kcm9wZG93bi1tZW51IGE6Zm9jdXN7YmFja2dyb3VuZC1jb2xvcjojZjJmMmYyO30gLm5hdmJhci1pbnZlcnNlIC5uYXYtY29sbGFwc2UgLm5hdj5saT5hLC5uYXZiYXItaW52ZXJzZSAubmF2LWNvbGxhcHNlIC5kcm9wZG93bi1tZW51IGF7Y29sb3I6Izk5OTk5OTt9IC5uYXZiYXItaW52ZXJzZSAubmF2LWNvbGxhcHNlIC5uYXY+bGk+YTpob3ZlciwubmF2YmFyLWludmVyc2UgLm5hdi1jb2xsYXBzZSAubmF2PmxpPmE6Zm9jdXMsLm5hdmJhci1pbnZlcnNlIC5uYXYtY29sbGFwc2UgLmRyb3Bkb3duLW1lbnUgYTpob3ZlciwubmF2YmFyLWludmVyc2UgLm5hdi1jb2xsYXBzZSAuZHJvcGRvd24tbWVudSBhOmZvY3Vze2JhY2tncm91bmQtY29sb3I6IzExMTExMTt9IC5uYXYtY29sbGFwc2UuaW4gLmJ0bi1ncm91cHttYXJnaW4tdG9wOjVweDtwYWRkaW5nOjA7fSAubmF2LWNvbGxhcHNlIC5kcm9wZG93bi1tZW51e3Bvc2l0aW9uOnN0YXRpYzt0b3A6YXV0bztsZWZ0OmF1dG87ZmxvYXQ6bm9uZTtkaXNwbGF5Om5vbmU7bWF4LXdpZHRoOm5vbmU7bWFyZ2luOjAgMTVweDtwYWRkaW5nOjA7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTstd2Via2l0LWJvcmRlci1yYWRpdXM6MDstbW96LWJvcmRlci1yYWRpdXM6MDtib3JkZXItcmFkaXVzOjA7LXdlYmtpdC1ib3gtc2hhZG93Om5vbmU7LW1vei1ib3gtc2hhZG93Om5vbmU7Ym94LXNoYWRvdzpub25lO30gLm5hdi1jb2xsYXBzZSAub3Blbj4uZHJvcGRvd24tbWVudXtkaXNwbGF5OmJsb2NrO30gLm5hdi1jb2xsYXBzZSAuZHJvcGRvd24tbWVudTpiZWZvcmUsLm5hdi1jb2xsYXBzZSAuZHJvcGRvd24tbWVudTphZnRlcntkaXNwbGF5Om5vbmU7fSAubmF2LWNvbGxhcHNlIC5kcm9wZG93bi1tZW51IC5kaXZpZGVye2Rpc3BsYXk6bm9uZTt9IC5uYXYtY29sbGFwc2UgLm5hdj5saT4uZHJvcGRvd24tbWVudTpiZWZvcmUsLm5hdi1jb2xsYXBzZSAubmF2PmxpPi5kcm9wZG93bi1tZW51OmFmdGVye2Rpc3BsYXk6bm9uZTt9IC5uYXYtY29sbGFwc2UgLm5hdmJhci1mb3JtLC5uYXYtY29sbGFwc2UgLm5hdmJhci1zZWFyY2h7ZmxvYXQ6bm9uZTtwYWRkaW5nOjEwcHggMTVweDttYXJnaW46MTBweCAwO2JvcmRlci10b3A6MXB4IHNvbGlkICNmMmYyZjI7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2YyZjJmMjstd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKSwgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKTstbW96LWJveC1zaGFkb3c6aW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKSwgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xKTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSksIDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMSk7fSAubmF2YmFyLWludmVyc2UgLm5hdi1jb2xsYXBzZSAubmF2YmFyLWZvcm0sLm5hdmJhci1pbnZlcnNlIC5uYXYtY29sbGFwc2UgLm5hdmJhci1zZWFyY2h7Ym9yZGVyLXRvcC1jb2xvcjojMTExMTExO2JvcmRlci1ib3R0b20tY29sb3I6IzExMTExMTt9IC5uYXZiYXIgLm5hdi1jb2xsYXBzZSAubmF2LnB1bGwtcmlnaHR7ZmxvYXQ6bm9uZTttYXJnaW4tbGVmdDowO30gLm5hdi1jb2xsYXBzZSwubmF2LWNvbGxhcHNlLmNvbGxhcHNle292ZXJmbG93OmhpZGRlbjtoZWlnaHQ6MDt9IC5uYXZiYXIgLmJ0bi1uYXZiYXJ7ZGlzcGxheTpibG9jazt9IC5uYXZiYXItc3RhdGljIC5uYXZiYXItaW5uZXJ7cGFkZGluZy1sZWZ0OjEwcHg7cGFkZGluZy1yaWdodDoxMHB4O319QG1lZGlhIChtaW4td2lkdGg6OTgwcHgpey5uYXYtY29sbGFwc2UuY29sbGFwc2V7aGVpZ2h0OmF1dG8gIWltcG9ydGFudDtvdmVyZmxvdzp2aXNpYmxlICFpbXBvcnRhbnQ7fX0K]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/css/font-awesome.min.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[QGZvbnQtZmFjZXtmb250LWZhbWlseTonRm9udEF3ZXNvbWUnO3NyYzp1cmwoJy4uL2ZvbnQvZm9udGF3ZXNvbWUtd2ViZm9udC5lb3Q/dj0zLjIuMScpO3NyYzp1cmwoJy4uL2ZvbnQvZm9udGF3ZXNvbWUtd2ViZm9udC5lb3Q/I2llZml4JnY9My4yLjEnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksdXJsKCcuLi9mb250L2ZvbnRhd2Vzb21lLXdlYmZvbnQud29mZj92PTMuMi4xJykgZm9ybWF0KCd3b2ZmJyksdXJsKCcuLi9mb250L2ZvbnRhd2Vzb21lLXdlYmZvbnQudHRmP3Y9My4yLjEnKSBmb3JtYXQoJ3RydWV0eXBlJyksdXJsKCcuLi9mb250L2ZvbnRhd2Vzb21lLXdlYmZvbnQuc3ZnI2ZvbnRhd2Vzb21lcmVndWxhcj92PTMuMi4xJykgZm9ybWF0KCdzdmcnKTtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zdHlsZTpub3JtYWw7fVtjbGFzc149Imljb24tIl0sW2NsYXNzKj0iIGljb24tIl17Zm9udC1mYW1pbHk6Rm9udEF3ZXNvbWU7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc3R5bGU6bm9ybWFsO3RleHQtZGVjb3JhdGlvbjppbmhlcml0Oy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7Km1hcmdpbi1yaWdodDouM2VtO30KW2NsYXNzXj0iaWNvbi0iXTpiZWZvcmUsW2NsYXNzKj0iIGljb24tIl06YmVmb3Jle3RleHQtZGVjb3JhdGlvbjppbmhlcml0O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3NwZWFrOm5vbmU7fQouaWNvbi1sYXJnZTpiZWZvcmV7dmVydGljYWwtYWxpZ246LTEwJTtmb250LXNpemU6MS4zMzMzMzMzMzMzMzMzMzMzZW07fQphIFtjbGFzc149Imljb24tIl0sYSBbY2xhc3MqPSIgaWNvbi0iXXtkaXNwbGF5OmlubGluZTt9CltjbGFzc149Imljb24tIl0uaWNvbi1maXhlZC13aWR0aCxbY2xhc3MqPSIgaWNvbi0iXS5pY29uLWZpeGVkLXdpZHRoe2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjEuMTQyODU3MTQyODU3MTQyOGVtO3RleHQtYWxpZ246cmlnaHQ7cGFkZGluZy1yaWdodDowLjI4NTcxNDI4NTcxNDI4NTdlbTt9W2NsYXNzXj0iaWNvbi0iXS5pY29uLWZpeGVkLXdpZHRoLmljb24tbGFyZ2UsW2NsYXNzKj0iIGljb24tIl0uaWNvbi1maXhlZC13aWR0aC5pY29uLWxhcmdle3dpZHRoOjEuNDI4NTcxNDI4NTcxNDI4NmVtO30KLmljb25zLXVse21hcmdpbi1sZWZ0OjIuMTQyODU3MTQyODU3MTQzZW07bGlzdC1zdHlsZS10eXBlOm5vbmU7fS5pY29ucy11bD5saXtwb3NpdGlvbjpyZWxhdGl2ZTt9Ci5pY29ucy11bCAuaWNvbi1saXtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0yLjE0Mjg1NzE0Mjg1NzE0M2VtO3dpZHRoOjIuMTQyODU3MTQyODU3MTQzZW07dGV4dC1hbGlnbjpjZW50ZXI7bGluZS1oZWlnaHQ6aW5oZXJpdDt9CltjbGFzc149Imljb24tIl0uaGlkZSxbY2xhc3MqPSIgaWNvbi0iXS5oaWRle2Rpc3BsYXk6bm9uZTt9Ci5pY29uLW11dGVke2NvbG9yOiNlZWVlZWU7fQouaWNvbi1saWdodHtjb2xvcjojZmZmZmZmO30KLmljb24tZGFya3tjb2xvcjojMzMzMzMzO30KLmljb24tYm9yZGVye2JvcmRlcjpzb2xpZCAxcHggI2VlZWVlZTtwYWRkaW5nOi4yZW0gLjI1ZW0gLjE1ZW07LXdlYmtpdC1ib3JkZXItcmFkaXVzOjNweDstbW96LWJvcmRlci1yYWRpdXM6M3B4O2JvcmRlci1yYWRpdXM6M3B4O30KLmljb24tMnh7Zm9udC1zaXplOjJlbTt9Lmljb24tMnguaWNvbi1ib3JkZXJ7Ym9yZGVyLXdpZHRoOjJweDstd2Via2l0LWJvcmRlci1yYWRpdXM6NHB4Oy1tb3otYm9yZGVyLXJhZGl1czo0cHg7Ym9yZGVyLXJhZGl1czo0cHg7fQouaWNvbi0zeHtmb250LXNpemU6M2VtO30uaWNvbi0zeC5pY29uLWJvcmRlcntib3JkZXItd2lkdGg6M3B4Oy13ZWJraXQtYm9yZGVyLXJhZGl1czo1cHg7LW1vei1ib3JkZXItcmFkaXVzOjVweDtib3JkZXItcmFkaXVzOjVweDt9Ci5pY29uLTR4e2ZvbnQtc2l6ZTo0ZW07fS5pY29uLTR4Lmljb24tYm9yZGVye2JvcmRlci13aWR0aDo0cHg7LXdlYmtpdC1ib3JkZXItcmFkaXVzOjZweDstbW96LWJvcmRlci1yYWRpdXM6NnB4O2JvcmRlci1yYWRpdXM6NnB4O30KLmljb24tNXh7Zm9udC1zaXplOjVlbTt9Lmljb24tNXguaWNvbi1ib3JkZXJ7Ym9yZGVyLXdpZHRoOjVweDstd2Via2l0LWJvcmRlci1yYWRpdXM6N3B4Oy1tb3otYm9yZGVyLXJhZGl1czo3cHg7Ym9yZGVyLXJhZGl1czo3cHg7fQoucHVsbC1yaWdodHtmbG9hdDpyaWdodDt9Ci5wdWxsLWxlZnR7ZmxvYXQ6bGVmdDt9CltjbGFzc149Imljb24tIl0ucHVsbC1sZWZ0LFtjbGFzcyo9IiBpY29uLSJdLnB1bGwtbGVmdHttYXJnaW4tcmlnaHQ6LjNlbTt9CltjbGFzc149Imljb24tIl0ucHVsbC1yaWdodCxbY2xhc3MqPSIgaWNvbi0iXS5wdWxsLXJpZ2h0e21hcmdpbi1sZWZ0Oi4zZW07fQpbY2xhc3NePSJpY29uLSJdLFtjbGFzcyo9IiBpY29uLSJde2Rpc3BsYXk6aW5saW5lO3dpZHRoOmF1dG87aGVpZ2h0OmF1dG87bGluZS1oZWlnaHQ6bm9ybWFsO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO2JhY2tncm91bmQtaW1hZ2U6bm9uZTtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAlIDAlO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdDttYXJnaW4tdG9wOjA7fQouaWNvbi13aGl0ZSwubmF2LXBpbGxzPi5hY3RpdmU+YT5bY2xhc3NePSJpY29uLSJdLC5uYXYtcGlsbHM+LmFjdGl2ZT5hPltjbGFzcyo9IiBpY29uLSJdLC5uYXYtbGlzdD4uYWN0aXZlPmE+W2NsYXNzXj0iaWNvbi0iXSwubmF2LWxpc3Q+LmFjdGl2ZT5hPltjbGFzcyo9IiBpY29uLSJdLC5uYXZiYXItaW52ZXJzZSAubmF2Pi5hY3RpdmU+YT5bY2xhc3NePSJpY29uLSJdLC5uYXZiYXItaW52ZXJzZSAubmF2Pi5hY3RpdmU+YT5bY2xhc3MqPSIgaWNvbi0iXSwuZHJvcGRvd24tbWVudT5saT5hOmhvdmVyPltjbGFzc149Imljb24tIl0sLmRyb3Bkb3duLW1lbnU+bGk+YTpob3Zlcj5bY2xhc3MqPSIgaWNvbi0iXSwuZHJvcGRvd24tbWVudT4uYWN0aXZlPmE+W2NsYXNzXj0iaWNvbi0iXSwuZHJvcGRvd24tbWVudT4uYWN0aXZlPmE+W2NsYXNzKj0iIGljb24tIl0sLmRyb3Bkb3duLXN1Ym1lbnU6aG92ZXI+YT5bY2xhc3NePSJpY29uLSJdLC5kcm9wZG93bi1zdWJtZW51OmhvdmVyPmE+W2NsYXNzKj0iIGljb24tIl17YmFja2dyb3VuZC1pbWFnZTpub25lO30KLmJ0biBbY2xhc3NePSJpY29uLSJdLmljb24tbGFyZ2UsLm5hdiBbY2xhc3NePSJpY29uLSJdLmljb24tbGFyZ2UsLmJ0biBbY2xhc3MqPSIgaWNvbi0iXS5pY29uLWxhcmdlLC5uYXYgW2NsYXNzKj0iIGljb24tIl0uaWNvbi1sYXJnZXtsaW5lLWhlaWdodDouOWVtO30KLmJ0biBbY2xhc3NePSJpY29uLSJdLmljb24tc3BpbiwubmF2IFtjbGFzc149Imljb24tIl0uaWNvbi1zcGluLC5idG4gW2NsYXNzKj0iIGljb24tIl0uaWNvbi1zcGluLC5uYXYgW2NsYXNzKj0iIGljb24tIl0uaWNvbi1zcGlue2Rpc3BsYXk6aW5saW5lLWJsb2NrO30KLm5hdi10YWJzIFtjbGFzc149Imljb24tIl0sLm5hdi1waWxscyBbY2xhc3NePSJpY29uLSJdLC5uYXYtdGFicyBbY2xhc3MqPSIgaWNvbi0iXSwubmF2LXBpbGxzIFtjbGFzcyo9IiBpY29uLSJdLC5uYXYtdGFicyBbY2xhc3NePSJpY29uLSJdLmljb24tbGFyZ2UsLm5hdi1waWxscyBbY2xhc3NePSJpY29uLSJdLmljb24tbGFyZ2UsLm5hdi10YWJzIFtjbGFzcyo9IiBpY29uLSJdLmljb24tbGFyZ2UsLm5hdi1waWxscyBbY2xhc3MqPSIgaWNvbi0iXS5pY29uLWxhcmdle2xpbmUtaGVpZ2h0Oi45ZW07fQouYnRuIFtjbGFzc149Imljb24tIl0ucHVsbC1sZWZ0Lmljb24tMngsLmJ0biBbY2xhc3MqPSIgaWNvbi0iXS5wdWxsLWxlZnQuaWNvbi0yeCwuYnRuIFtjbGFzc149Imljb24tIl0ucHVsbC1yaWdodC5pY29uLTJ4LC5idG4gW2NsYXNzKj0iIGljb24tIl0ucHVsbC1yaWdodC5pY29uLTJ4e21hcmdpbi10b3A6LjE4ZW07fQouYnRuIFtjbGFzc149Imljb24tIl0uaWNvbi1zcGluLmljb24tbGFyZ2UsLmJ0biBbY2xhc3MqPSIgaWNvbi0iXS5pY29uLXNwaW4uaWNvbi1sYXJnZXtsaW5lLWhlaWdodDouOGVtO30KLmJ0bi5idG4tc21hbGwgW2NsYXNzXj0iaWNvbi0iXS5wdWxsLWxlZnQuaWNvbi0yeCwuYnRuLmJ0bi1zbWFsbCBbY2xhc3MqPSIgaWNvbi0iXS5wdWxsLWxlZnQuaWNvbi0yeCwuYnRuLmJ0bi1zbWFsbCBbY2xhc3NePSJpY29uLSJdLnB1bGwtcmlnaHQuaWNvbi0yeCwuYnRuLmJ0bi1zbWFsbCBbY2xhc3MqPSIgaWNvbi0iXS5wdWxsLXJpZ2h0Lmljb24tMnh7bWFyZ2luLXRvcDouMjVlbTt9Ci5idG4uYnRuLWxhcmdlIFtjbGFzc149Imljb24tIl0sLmJ0bi5idG4tbGFyZ2UgW2NsYXNzKj0iIGljb24tIl17bWFyZ2luLXRvcDowO30uYnRuLmJ0bi1sYXJnZSBbY2xhc3NePSJpY29uLSJdLnB1bGwtbGVmdC5pY29uLTJ4LC5idG4uYnRuLWxhcmdlIFtjbGFzcyo9IiBpY29uLSJdLnB1bGwtbGVmdC5pY29uLTJ4LC5idG4uYnRuLWxhcmdlIFtjbGFzc149Imljb24tIl0ucHVsbC1yaWdodC5pY29uLTJ4LC5idG4uYnRuLWxhcmdlIFtjbGFzcyo9IiBpY29uLSJdLnB1bGwtcmlnaHQuaWNvbi0yeHttYXJnaW4tdG9wOi4wNWVtO30KLmJ0bi5idG4tbGFyZ2UgW2NsYXNzXj0iaWNvbi0iXS5wdWxsLWxlZnQuaWNvbi0yeCwuYnRuLmJ0bi1sYXJnZSBbY2xhc3MqPSIgaWNvbi0iXS5wdWxsLWxlZnQuaWNvbi0yeHttYXJnaW4tcmlnaHQ6LjJlbTt9Ci5idG4uYnRuLWxhcmdlIFtjbGFzc149Imljb24tIl0ucHVsbC1yaWdodC5pY29uLTJ4LC5idG4uYnRuLWxhcmdlIFtjbGFzcyo9IiBpY29uLSJdLnB1bGwtcmlnaHQuaWNvbi0yeHttYXJnaW4tbGVmdDouMmVtO30KLm5hdi1saXN0IFtjbGFzc149Imljb24tIl0sLm5hdi1saXN0IFtjbGFzcyo9IiBpY29uLSJde2xpbmUtaGVpZ2h0OmluaGVyaXQ7fQouaWNvbi1zdGFja3twb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoyZW07aGVpZ2h0OjJlbTtsaW5lLWhlaWdodDoyZW07dmVydGljYWwtYWxpZ246LTM1JTt9Lmljb24tc3RhY2sgW2NsYXNzXj0iaWNvbi0iXSwuaWNvbi1zdGFjayBbY2xhc3MqPSIgaWNvbi0iXXtkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Zm9udC1zaXplOjFlbTtsaW5lLWhlaWdodDppbmhlcml0OypsaW5lLWhlaWdodDoyZW07fQouaWNvbi1zdGFjayAuaWNvbi1zdGFjay1iYXNle2ZvbnQtc2l6ZToyZW07KmxpbmUtaGVpZ2h0OjFlbTt9Ci5pY29uLXNwaW57ZGlzcGxheTppbmxpbmUtYmxvY2s7LW1vei1hbmltYXRpb246c3BpbiAycyBpbmZpbml0ZSBsaW5lYXI7LW8tYW5pbWF0aW9uOnNwaW4gMnMgaW5maW5pdGUgbGluZWFyOy13ZWJraXQtYW5pbWF0aW9uOnNwaW4gMnMgaW5maW5pdGUgbGluZWFyO2FuaW1hdGlvbjpzcGluIDJzIGluZmluaXRlIGxpbmVhcjt9CmEgLmljb24tc3RhY2ssYSAuaWNvbi1zcGlue2Rpc3BsYXk6aW5saW5lLWJsb2NrO3RleHQtZGVjb3JhdGlvbjpub25lO30KQC1tb3ota2V5ZnJhbWVzIHNwaW57MCV7LW1vei10cmFuc2Zvcm06cm90YXRlKDBkZWcpO30gMTAwJXstbW96LXRyYW5zZm9ybTpyb3RhdGUoMzU5ZGVnKTt9fUAtd2Via2l0LWtleWZyYW1lcyBzcGluezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt9IDEwMCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDM1OWRlZyk7fX1ALW8ta2V5ZnJhbWVzIHNwaW57MCV7LW8tdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt9IDEwMCV7LW8tdHJhbnNmb3JtOnJvdGF0ZSgzNTlkZWcpO319QC1tcy1rZXlmcmFtZXMgc3BpbnswJXstbXMtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt9IDEwMCV7LW1zLXRyYW5zZm9ybTpyb3RhdGUoMzU5ZGVnKTt9fUBrZXlmcmFtZXMgc3BpbnswJXt0cmFuc2Zvcm06cm90YXRlKDBkZWcpO30gMTAwJXt0cmFuc2Zvcm06cm90YXRlKDM1OWRlZyk7fX0uaWNvbi1yb3RhdGUtOTA6YmVmb3Jley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7LW1vei10cmFuc2Zvcm06cm90YXRlKDkwZGVnKTstbXMtdHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7LW8tdHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7ZmlsdGVyOnByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTEpO30KLmljb24tcm90YXRlLTE4MDpiZWZvcmV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7LW1vei10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7LW1zLXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTstby10cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpO2ZpbHRlcjpwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0yKTt9Ci5pY29uLXJvdGF0ZS0yNzA6YmVmb3Jley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpOy1tb3otdHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpOy1tcy10cmFuc2Zvcm06cm90YXRlKDI3MGRlZyk7LW8tdHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMjcwZGVnKTtmaWx0ZXI6cHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249Myk7fQouaWNvbi1mbGlwLWhvcml6b250YWw6YmVmb3Jley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKC0xLCAxKTstbW96LXRyYW5zZm9ybTpzY2FsZSgtMSwgMSk7LW1zLXRyYW5zZm9ybTpzY2FsZSgtMSwgMSk7LW8tdHJhbnNmb3JtOnNjYWxlKC0xLCAxKTt0cmFuc2Zvcm06c2NhbGUoLTEsIDEpO30KLmljb24tZmxpcC12ZXJ0aWNhbDpiZWZvcmV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSwgLTEpOy1tb3otdHJhbnNmb3JtOnNjYWxlKDEsIC0xKTstbXMtdHJhbnNmb3JtOnNjYWxlKDEsIC0xKTstby10cmFuc2Zvcm06c2NhbGUoMSwgLTEpO3RyYW5zZm9ybTpzY2FsZSgxLCAtMSk7fQphIC5pY29uLXJvdGF0ZS05MDpiZWZvcmUsYSAuaWNvbi1yb3RhdGUtMTgwOmJlZm9yZSxhIC5pY29uLXJvdGF0ZS0yNzA6YmVmb3JlLGEgLmljb24tZmxpcC1ob3Jpem9udGFsOmJlZm9yZSxhIC5pY29uLWZsaXAtdmVydGljYWw6YmVmb3Jle2Rpc3BsYXk6aW5saW5lLWJsb2NrO30KLmljb24tZ2xhc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMDAwIjt9Ci5pY29uLW11c2ljOmJlZm9yZXtjb250ZW50OiJcZjAwMSI7fQouaWNvbi1zZWFyY2g6YmVmb3Jle2NvbnRlbnQ6IlxmMDAyIjt9Ci5pY29uLWVudmVsb3BlLWFsdDpiZWZvcmV7Y29udGVudDoiXGYwMDMiO30KLmljb24taGVhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDA0Ijt9Ci5pY29uLXN0YXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDA1Ijt9Ci5pY29uLXN0YXItZW1wdHk6YmVmb3Jle2NvbnRlbnQ6IlxmMDA2Ijt9Ci5pY29uLXVzZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDA3Ijt9Ci5pY29uLWZpbG06YmVmb3Jle2NvbnRlbnQ6IlxmMDA4Ijt9Ci5pY29uLXRoLWxhcmdlOmJlZm9yZXtjb250ZW50OiJcZjAwOSI7fQouaWNvbi10aDpiZWZvcmV7Y29udGVudDoiXGYwMGEiO30KLmljb24tdGgtbGlzdDpiZWZvcmV7Y29udGVudDoiXGYwMGIiO30KLmljb24tb2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDBjIjt9Ci5pY29uLXJlbW92ZTpiZWZvcmV7Y29udGVudDoiXGYwMGQiO30KLmljb24tem9vbS1pbjpiZWZvcmV7Y29udGVudDoiXGYwMGUiO30KLmljb24tem9vbS1vdXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDEwIjt9Ci5pY29uLXBvd2VyLW9mZjpiZWZvcmUsLmljb24tb2ZmOmJlZm9yZXtjb250ZW50OiJcZjAxMSI7fQouaWNvbi1zaWduYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMDEyIjt9Ci5pY29uLWdlYXI6YmVmb3JlLC5pY29uLWNvZzpiZWZvcmV7Y29udGVudDoiXGYwMTMiO30KLmljb24tdHJhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmMDE0Ijt9Ci5pY29uLWhvbWU6YmVmb3Jle2NvbnRlbnQ6IlxmMDE1Ijt9Ci5pY29uLWZpbGUtYWx0OmJlZm9yZXtjb250ZW50OiJcZjAxNiI7fQouaWNvbi10aW1lOmJlZm9yZXtjb250ZW50OiJcZjAxNyI7fQouaWNvbi1yb2FkOmJlZm9yZXtjb250ZW50OiJcZjAxOCI7fQouaWNvbi1kb3dubG9hZC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDE5Ijt9Ci5pY29uLWRvd25sb2FkOmJlZm9yZXtjb250ZW50OiJcZjAxYSI7fQouaWNvbi11cGxvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDFiIjt9Ci5pY29uLWluYm94OmJlZm9yZXtjb250ZW50OiJcZjAxYyI7fQouaWNvbi1wbGF5LWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYwMWQiO30KLmljb24tcm90YXRlLXJpZ2h0OmJlZm9yZSwuaWNvbi1yZXBlYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDFlIjt9Ci5pY29uLXJlZnJlc2g6YmVmb3Jle2NvbnRlbnQ6IlxmMDIxIjt9Ci5pY29uLWxpc3QtYWx0OmJlZm9yZXtjb250ZW50OiJcZjAyMiI7fQouaWNvbi1sb2NrOmJlZm9yZXtjb250ZW50OiJcZjAyMyI7fQouaWNvbi1mbGFnOmJlZm9yZXtjb250ZW50OiJcZjAyNCI7fQouaWNvbi1oZWFkcGhvbmVzOmJlZm9yZXtjb250ZW50OiJcZjAyNSI7fQouaWNvbi12b2x1bWUtb2ZmOmJlZm9yZXtjb250ZW50OiJcZjAyNiI7fQouaWNvbi12b2x1bWUtZG93bjpiZWZvcmV7Y29udGVudDoiXGYwMjciO30KLmljb24tdm9sdW1lLXVwOmJlZm9yZXtjb250ZW50OiJcZjAyOCI7fQouaWNvbi1xcmNvZGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDI5Ijt9Ci5pY29uLWJhcmNvZGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDJhIjt9Ci5pY29uLXRhZzpiZWZvcmV7Y29udGVudDoiXGYwMmIiO30KLmljb24tdGFnczpiZWZvcmV7Y29udGVudDoiXGYwMmMiO30KLmljb24tYm9vazpiZWZvcmV7Y29udGVudDoiXGYwMmQiO30KLmljb24tYm9va21hcms6YmVmb3Jle2NvbnRlbnQ6IlxmMDJlIjt9Ci5pY29uLXByaW50OmJlZm9yZXtjb250ZW50OiJcZjAyZiI7fQouaWNvbi1jYW1lcmE6YmVmb3Jle2NvbnRlbnQ6IlxmMDMwIjt9Ci5pY29uLWZvbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDMxIjt9Ci5pY29uLWJvbGQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDMyIjt9Ci5pY29uLWl0YWxpYzpiZWZvcmV7Y29udGVudDoiXGYwMzMiO30KLmljb24tdGV4dC1oZWlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDM0Ijt9Ci5pY29uLXRleHQtd2lkdGg6YmVmb3Jle2NvbnRlbnQ6IlxmMDM1Ijt9Ci5pY29uLWFsaWduLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDM2Ijt9Ci5pY29uLWFsaWduLWNlbnRlcjpiZWZvcmV7Y29udGVudDoiXGYwMzciO30KLmljb24tYWxpZ24tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDM4Ijt9Ci5pY29uLWFsaWduLWp1c3RpZnk6YmVmb3Jle2NvbnRlbnQ6IlxmMDM5Ijt9Ci5pY29uLWxpc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMDNhIjt9Ci5pY29uLWluZGVudC1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjAzYiI7fQouaWNvbi1pbmRlbnQtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDNjIjt9Ci5pY29uLWZhY2V0aW1lLXZpZGVvOmJlZm9yZXtjb250ZW50OiJcZjAzZCI7fQouaWNvbi1waWN0dXJlOmJlZm9yZXtjb250ZW50OiJcZjAzZSI7fQouaWNvbi1wZW5jaWw6YmVmb3Jle2NvbnRlbnQ6IlxmMDQwIjt9Ci5pY29uLW1hcC1tYXJrZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDQxIjt9Ci5pY29uLWFkanVzdDpiZWZvcmV7Y29udGVudDoiXGYwNDIiO30KLmljb24tdGludDpiZWZvcmV7Y29udGVudDoiXGYwNDMiO30KLmljb24tZWRpdDpiZWZvcmV7Y29udGVudDoiXGYwNDQiO30KLmljb24tc2hhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDQ1Ijt9Ci5pY29uLWNoZWNrOmJlZm9yZXtjb250ZW50OiJcZjA0NiI7fQouaWNvbi1tb3ZlOmJlZm9yZXtjb250ZW50OiJcZjA0NyI7fQouaWNvbi1zdGVwLWJhY2t3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA0OCI7fQouaWNvbi1mYXN0LWJhY2t3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA0OSI7fQouaWNvbi1iYWNrd2FyZDpiZWZvcmV7Y29udGVudDoiXGYwNGEiO30KLmljb24tcGxheTpiZWZvcmV7Y29udGVudDoiXGYwNGIiO30KLmljb24tcGF1c2U6YmVmb3Jle2NvbnRlbnQ6IlxmMDRjIjt9Ci5pY29uLXN0b3A6YmVmb3Jle2NvbnRlbnQ6IlxmMDRkIjt9Ci5pY29uLWZvcndhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDRlIjt9Ci5pY29uLWZhc3QtZm9yd2FyZDpiZWZvcmV7Y29udGVudDoiXGYwNTAiO30KLmljb24tc3RlcC1mb3J3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA1MSI7fQouaWNvbi1lamVjdDpiZWZvcmV7Y29udGVudDoiXGYwNTIiO30KLmljb24tY2hldnJvbi1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjA1MyI7fQouaWNvbi1jaGV2cm9uLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjA1NCI7fQouaWNvbi1wbHVzLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMDU1Ijt9Ci5pY29uLW1pbnVzLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMDU2Ijt9Ci5pY29uLXJlbW92ZS1zaWduOmJlZm9yZXtjb250ZW50OiJcZjA1NyI7fQouaWNvbi1vay1zaWduOmJlZm9yZXtjb250ZW50OiJcZjA1OCI7fQouaWNvbi1xdWVzdGlvbi1zaWduOmJlZm9yZXtjb250ZW50OiJcZjA1OSI7fQouaWNvbi1pbmZvLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMDVhIjt9Ci5pY29uLXNjcmVlbnNob3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMDViIjt9Ci5pY29uLXJlbW92ZS1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDVjIjt9Ci5pY29uLW9rLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYwNWQiO30KLmljb24tYmFuLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYwNWUiO30KLmljb24tYXJyb3ctbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwNjAiO30KLmljb24tYXJyb3ctcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDYxIjt9Ci5pY29uLWFycm93LXVwOmJlZm9yZXtjb250ZW50OiJcZjA2MiI7fQouaWNvbi1hcnJvdy1kb3duOmJlZm9yZXtjb250ZW50OiJcZjA2MyI7fQouaWNvbi1tYWlsLWZvcndhcmQ6YmVmb3JlLC5pY29uLXNoYXJlLWFsdDpiZWZvcmV7Y29udGVudDoiXGYwNjQiO30KLmljb24tcmVzaXplLWZ1bGw6YmVmb3Jle2NvbnRlbnQ6IlxmMDY1Ijt9Ci5pY29uLXJlc2l6ZS1zbWFsbDpiZWZvcmV7Y29udGVudDoiXGYwNjYiO30KLmljb24tcGx1czpiZWZvcmV7Y29udGVudDoiXGYwNjciO30KLmljb24tbWludXM6YmVmb3Jle2NvbnRlbnQ6IlxmMDY4Ijt9Ci5pY29uLWFzdGVyaXNrOmJlZm9yZXtjb250ZW50OiJcZjA2OSI7fQouaWNvbi1leGNsYW1hdGlvbi1zaWduOmJlZm9yZXtjb250ZW50OiJcZjA2YSI7fQouaWNvbi1naWZ0OmJlZm9yZXtjb250ZW50OiJcZjA2YiI7fQouaWNvbi1sZWFmOmJlZm9yZXtjb250ZW50OiJcZjA2YyI7fQouaWNvbi1maXJlOmJlZm9yZXtjb250ZW50OiJcZjA2ZCI7fQouaWNvbi1leWUtb3BlbjpiZWZvcmV7Y29udGVudDoiXGYwNmUiO30KLmljb24tZXllLWNsb3NlOmJlZm9yZXtjb250ZW50OiJcZjA3MCI7fQouaWNvbi13YXJuaW5nLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMDcxIjt9Ci5pY29uLXBsYW5lOmJlZm9yZXtjb250ZW50OiJcZjA3MiI7fQouaWNvbi1jYWxlbmRhcjpiZWZvcmV7Y29udGVudDoiXGYwNzMiO30KLmljb24tcmFuZG9tOmJlZm9yZXtjb250ZW50OiJcZjA3NCI7fQouaWNvbi1jb21tZW50OmJlZm9yZXtjb250ZW50OiJcZjA3NSI7fQouaWNvbi1tYWduZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDc2Ijt9Ci5pY29uLWNoZXZyb24tdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMDc3Ijt9Ci5pY29uLWNoZXZyb24tZG93bjpiZWZvcmV7Y29udGVudDoiXGYwNzgiO30KLmljb24tcmV0d2VldDpiZWZvcmV7Y29udGVudDoiXGYwNzkiO30KLmljb24tc2hvcHBpbmctY2FydDpiZWZvcmV7Y29udGVudDoiXGYwN2EiO30KLmljb24tZm9sZGVyLWNsb3NlOmJlZm9yZXtjb250ZW50OiJcZjA3YiI7fQouaWNvbi1mb2xkZXItb3BlbjpiZWZvcmV7Y29udGVudDoiXGYwN2MiO30KLmljb24tcmVzaXplLXZlcnRpY2FsOmJlZm9yZXtjb250ZW50OiJcZjA3ZCI7fQouaWNvbi1yZXNpemUtaG9yaXpvbnRhbDpiZWZvcmV7Y29udGVudDoiXGYwN2UiO30KLmljb24tYmFyLWNoYXJ0OmJlZm9yZXtjb250ZW50OiJcZjA4MCI7fQouaWNvbi10d2l0dGVyLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMDgxIjt9Ci5pY29uLWZhY2Vib29rLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMDgyIjt9Ci5pY29uLWNhbWVyYS1yZXRybzpiZWZvcmV7Y29udGVudDoiXGYwODMiO30KLmljb24ta2V5OmJlZm9yZXtjb250ZW50OiJcZjA4NCI7fQouaWNvbi1nZWFyczpiZWZvcmUsLmljb24tY29nczpiZWZvcmV7Y29udGVudDoiXGYwODUiO30KLmljb24tY29tbWVudHM6YmVmb3Jle2NvbnRlbnQ6IlxmMDg2Ijt9Ci5pY29uLXRodW1icy11cC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDg3Ijt9Ci5pY29uLXRodW1icy1kb3duLWFsdDpiZWZvcmV7Y29udGVudDoiXGYwODgiO30KLmljb24tc3Rhci1oYWxmOmJlZm9yZXtjb250ZW50OiJcZjA4OSI7fQouaWNvbi1oZWFydC1lbXB0eTpiZWZvcmV7Y29udGVudDoiXGYwOGEiO30KLmljb24tc2lnbm91dDpiZWZvcmV7Y29udGVudDoiXGYwOGIiO30KLmljb24tbGlua2VkaW4tc2lnbjpiZWZvcmV7Y29udGVudDoiXGYwOGMiO30KLmljb24tcHVzaHBpbjpiZWZvcmV7Y29udGVudDoiXGYwOGQiO30KLmljb24tZXh0ZXJuYWwtbGluazpiZWZvcmV7Y29udGVudDoiXGYwOGUiO30KLmljb24tc2lnbmluOmJlZm9yZXtjb250ZW50OiJcZjA5MCI7fQouaWNvbi10cm9waHk6YmVmb3Jle2NvbnRlbnQ6IlxmMDkxIjt9Ci5pY29uLWdpdGh1Yi1zaWduOmJlZm9yZXtjb250ZW50OiJcZjA5MiI7fQouaWNvbi11cGxvYWQtYWx0OmJlZm9yZXtjb250ZW50OiJcZjA5MyI7fQouaWNvbi1sZW1vbjpiZWZvcmV7Y29udGVudDoiXGYwOTQiO30KLmljb24tcGhvbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDk1Ijt9Ci5pY29uLXVuY2hlY2tlZDpiZWZvcmUsLmljb24tY2hlY2stZW1wdHk6YmVmb3Jle2NvbnRlbnQ6IlxmMDk2Ijt9Ci5pY29uLWJvb2ttYXJrLWVtcHR5OmJlZm9yZXtjb250ZW50OiJcZjA5NyI7fQouaWNvbi1waG9uZS1zaWduOmJlZm9yZXtjb250ZW50OiJcZjA5OCI7fQouaWNvbi10d2l0dGVyOmJlZm9yZXtjb250ZW50OiJcZjA5OSI7fQouaWNvbi1mYWNlYm9vazpiZWZvcmV7Y29udGVudDoiXGYwOWEiO30KLmljb24tZ2l0aHViOmJlZm9yZXtjb250ZW50OiJcZjA5YiI7fQouaWNvbi11bmxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDljIjt9Ci5pY29uLWNyZWRpdC1jYXJkOmJlZm9yZXtjb250ZW50OiJcZjA5ZCI7fQouaWNvbi1yc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMDllIjt9Ci5pY29uLWhkZDpiZWZvcmV7Y29udGVudDoiXGYwYTAiO30KLmljb24tYnVsbGhvcm46YmVmb3Jle2NvbnRlbnQ6IlxmMGExIjt9Ci5pY29uLWJlbGw6YmVmb3Jle2NvbnRlbnQ6IlxmMGEyIjt9Ci5pY29uLWNlcnRpZmljYXRlOmJlZm9yZXtjb250ZW50OiJcZjBhMyI7fQouaWNvbi1oYW5kLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjBhNCI7fQouaWNvbi1oYW5kLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGE1Ijt9Ci5pY29uLWhhbmQtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMGE2Ijt9Ci5pY29uLWhhbmQtZG93bjpiZWZvcmV7Y29udGVudDoiXGYwYTciO30KLmljb24tY2lyY2xlLWFycm93LWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGE4Ijt9Ci5pY29uLWNpcmNsZS1hcnJvdy1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwYTkiO30KLmljb24tY2lyY2xlLWFycm93LXVwOmJlZm9yZXtjb250ZW50OiJcZjBhYSI7fQouaWNvbi1jaXJjbGUtYXJyb3ctZG93bjpiZWZvcmV7Y29udGVudDoiXGYwYWIiO30KLmljb24tZ2xvYmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGFjIjt9Ci5pY29uLXdyZW5jaDpiZWZvcmV7Y29udGVudDoiXGYwYWQiO30KLmljb24tdGFza3M6YmVmb3Jle2NvbnRlbnQ6IlxmMGFlIjt9Ci5pY29uLWZpbHRlcjpiZWZvcmV7Y29udGVudDoiXGYwYjAiO30KLmljb24tYnJpZWZjYXNlOmJlZm9yZXtjb250ZW50OiJcZjBiMSI7fQouaWNvbi1mdWxsc2NyZWVuOmJlZm9yZXtjb250ZW50OiJcZjBiMiI7fQouaWNvbi1ncm91cDpiZWZvcmV7Y29udGVudDoiXGYwYzAiO30KLmljb24tbGluazpiZWZvcmV7Y29udGVudDoiXGYwYzEiO30KLmljb24tY2xvdWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGMyIjt9Ci5pY29uLWJlYWtlcjpiZWZvcmV7Y29udGVudDoiXGYwYzMiO30KLmljb24tY3V0OmJlZm9yZXtjb250ZW50OiJcZjBjNCI7fQouaWNvbi1jb3B5OmJlZm9yZXtjb250ZW50OiJcZjBjNSI7fQouaWNvbi1wYXBlcmNsaXA6YmVmb3JlLC5pY29uLXBhcGVyLWNsaXA6YmVmb3Jle2NvbnRlbnQ6IlxmMGM2Ijt9Ci5pY29uLXNhdmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGM3Ijt9Ci5pY29uLXNpZ24tYmxhbms6YmVmb3Jle2NvbnRlbnQ6IlxmMGM4Ijt9Ci5pY29uLXJlb3JkZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMGM5Ijt9Ci5pY29uLWxpc3QtdWw6YmVmb3Jle2NvbnRlbnQ6IlxmMGNhIjt9Ci5pY29uLWxpc3Qtb2w6YmVmb3Jle2NvbnRlbnQ6IlxmMGNiIjt9Ci5pY29uLXN0cmlrZXRocm91Z2g6YmVmb3Jle2NvbnRlbnQ6IlxmMGNjIjt9Ci5pY29uLXVuZGVybGluZTpiZWZvcmV7Y29udGVudDoiXGYwY2QiO30KLmljb24tdGFibGU6YmVmb3Jle2NvbnRlbnQ6IlxmMGNlIjt9Ci5pY29uLW1hZ2ljOmJlZm9yZXtjb250ZW50OiJcZjBkMCI7fQouaWNvbi10cnVjazpiZWZvcmV7Y29udGVudDoiXGYwZDEiO30KLmljb24tcGludGVyZXN0OmJlZm9yZXtjb250ZW50OiJcZjBkMiI7fQouaWNvbi1waW50ZXJlc3Qtc2lnbjpiZWZvcmV7Y29udGVudDoiXGYwZDMiO30KLmljb24tZ29vZ2xlLXBsdXMtc2lnbjpiZWZvcmV7Y29udGVudDoiXGYwZDQiO30KLmljb24tZ29vZ2xlLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxmMGQ1Ijt9Ci5pY29uLW1vbmV5OmJlZm9yZXtjb250ZW50OiJcZjBkNiI7fQouaWNvbi1jYXJldC1kb3duOmJlZm9yZXtjb250ZW50OiJcZjBkNyI7fQouaWNvbi1jYXJldC11cDpiZWZvcmV7Y29udGVudDoiXGYwZDgiO30KLmljb24tY2FyZXQtbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwZDkiO30KLmljb24tY2FyZXQtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGRhIjt9Ci5pY29uLWNvbHVtbnM6YmVmb3Jle2NvbnRlbnQ6IlxmMGRiIjt9Ci5pY29uLXNvcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGRjIjt9Ci5pY29uLXNvcnQtZG93bjpiZWZvcmV7Y29udGVudDoiXGYwZGQiO30KLmljb24tc29ydC11cDpiZWZvcmV7Y29udGVudDoiXGYwZGUiO30KLmljb24tZW52ZWxvcGU6YmVmb3Jle2NvbnRlbnQ6IlxmMGUwIjt9Ci5pY29uLWxpbmtlZGluOmJlZm9yZXtjb250ZW50OiJcZjBlMSI7fQouaWNvbi1yb3RhdGUtbGVmdDpiZWZvcmUsLmljb24tdW5kbzpiZWZvcmV7Y29udGVudDoiXGYwZTIiO30KLmljb24tbGVnYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMGUzIjt9Ci5pY29uLWRhc2hib2FyZDpiZWZvcmV7Y29udGVudDoiXGYwZTQiO30KLmljb24tY29tbWVudC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGU1Ijt9Ci5pY29uLWNvbW1lbnRzLWFsdDpiZWZvcmV7Y29udGVudDoiXGYwZTYiO30KLmljb24tYm9sdDpiZWZvcmV7Y29udGVudDoiXGYwZTciO30KLmljb24tc2l0ZW1hcDpiZWZvcmV7Y29udGVudDoiXGYwZTgiO30KLmljb24tdW1icmVsbGE6YmVmb3Jle2NvbnRlbnQ6IlxmMGU5Ijt9Ci5pY29uLXBhc3RlOmJlZm9yZXtjb250ZW50OiJcZjBlYSI7fQouaWNvbi1saWdodGJ1bGI6YmVmb3Jle2NvbnRlbnQ6IlxmMGViIjt9Ci5pY29uLWV4Y2hhbmdlOmJlZm9yZXtjb250ZW50OiJcZjBlYyI7fQouaWNvbi1jbG91ZC1kb3dubG9hZDpiZWZvcmV7Y29udGVudDoiXGYwZWQiO30KLmljb24tY2xvdWQtdXBsb2FkOmJlZm9yZXtjb250ZW50OiJcZjBlZSI7fQouaWNvbi11c2VyLW1kOmJlZm9yZXtjb250ZW50OiJcZjBmMCI7fQouaWNvbi1zdGV0aG9zY29wZTpiZWZvcmV7Y29udGVudDoiXGYwZjEiO30KLmljb24tc3VpdGNhc2U6YmVmb3Jle2NvbnRlbnQ6IlxmMGYyIjt9Ci5pY29uLWJlbGwtYWx0OmJlZm9yZXtjb250ZW50OiJcZjBmMyI7fQouaWNvbi1jb2ZmZWU6YmVmb3Jle2NvbnRlbnQ6IlxmMGY0Ijt9Ci5pY29uLWZvb2Q6YmVmb3Jle2NvbnRlbnQ6IlxmMGY1Ijt9Ci5pY29uLWZpbGUtdGV4dC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGY2Ijt9Ci5pY29uLWJ1aWxkaW5nOmJlZm9yZXtjb250ZW50OiJcZjBmNyI7fQouaWNvbi1ob3NwaXRhbDpiZWZvcmV7Y29udGVudDoiXGYwZjgiO30KLmljb24tYW1idWxhbmNlOmJlZm9yZXtjb250ZW50OiJcZjBmOSI7fQouaWNvbi1tZWRraXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGZhIjt9Ci5pY29uLWZpZ2h0ZXItamV0OmJlZm9yZXtjb250ZW50OiJcZjBmYiI7fQouaWNvbi1iZWVyOmJlZm9yZXtjb250ZW50OiJcZjBmYyI7fQouaWNvbi1oLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMGZkIjt9Ci5pY29uLXBsdXMtc2lnbi1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGZlIjt9Ci5pY29uLWRvdWJsZS1hbmdsZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjEwMCI7fQouaWNvbi1kb3VibGUtYW5nbGUtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTAxIjt9Ci5pY29uLWRvdWJsZS1hbmdsZS11cDpiZWZvcmV7Y29udGVudDoiXGYxMDIiO30KLmljb24tZG91YmxlLWFuZ2xlLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMTAzIjt9Ci5pY29uLWFuZ2xlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTA0Ijt9Ci5pY29uLWFuZ2xlLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjEwNSI7fQouaWNvbi1hbmdsZS11cDpiZWZvcmV7Y29udGVudDoiXGYxMDYiO30KLmljb24tYW5nbGUtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxMDciO30KLmljb24tZGVza3RvcDpiZWZvcmV7Y29udGVudDoiXGYxMDgiO30KLmljb24tbGFwdG9wOmJlZm9yZXtjb250ZW50OiJcZjEwOSI7fQouaWNvbi10YWJsZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTBhIjt9Ci5pY29uLW1vYmlsZS1waG9uZTpiZWZvcmV7Y29udGVudDoiXGYxMGIiO30KLmljb24tY2lyY2xlLWJsYW5rOmJlZm9yZXtjb250ZW50OiJcZjEwYyI7fQouaWNvbi1xdW90ZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjEwZCI7fQouaWNvbi1xdW90ZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYxMGUiO30KLmljb24tc3Bpbm5lcjpiZWZvcmV7Y29udGVudDoiXGYxMTAiO30KLmljb24tY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjExMSI7fQouaWNvbi1tYWlsLXJlcGx5OmJlZm9yZSwuaWNvbi1yZXBseTpiZWZvcmV7Y29udGVudDoiXGYxMTIiO30KLmljb24tZ2l0aHViLWFsdDpiZWZvcmV7Y29udGVudDoiXGYxMTMiO30KLmljb24tZm9sZGVyLWNsb3NlLWFsdDpiZWZvcmV7Y29udGVudDoiXGYxMTQiO30KLmljb24tZm9sZGVyLW9wZW4tYWx0OmJlZm9yZXtjb250ZW50OiJcZjExNSI7fQouaWNvbi1leHBhbmQtYWx0OmJlZm9yZXtjb250ZW50OiJcZjExNiI7fQouaWNvbi1jb2xsYXBzZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTE3Ijt9Ci5pY29uLXNtaWxlOmJlZm9yZXtjb250ZW50OiJcZjExOCI7fQouaWNvbi1mcm93bjpiZWZvcmV7Y29udGVudDoiXGYxMTkiO30KLmljb24tbWVoOmJlZm9yZXtjb250ZW50OiJcZjExYSI7fQouaWNvbi1nYW1lcGFkOmJlZm9yZXtjb250ZW50OiJcZjExYiI7fQouaWNvbi1rZXlib2FyZDpiZWZvcmV7Y29udGVudDoiXGYxMWMiO30KLmljb24tZmxhZy1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTFkIjt9Ci5pY29uLWZsYWctY2hlY2tlcmVkOmJlZm9yZXtjb250ZW50OiJcZjExZSI7fQouaWNvbi10ZXJtaW5hbDpiZWZvcmV7Y29udGVudDoiXGYxMjAiO30KLmljb24tY29kZTpiZWZvcmV7Y29udGVudDoiXGYxMjEiO30KLmljb24tcmVwbHktYWxsOmJlZm9yZXtjb250ZW50OiJcZjEyMiI7fQouaWNvbi1tYWlsLXJlcGx5LWFsbDpiZWZvcmV7Y29udGVudDoiXGYxMjIiO30KLmljb24tc3Rhci1oYWxmLWZ1bGw6YmVmb3JlLC5pY29uLXN0YXItaGFsZi1lbXB0eTpiZWZvcmV7Y29udGVudDoiXGYxMjMiO30KLmljb24tbG9jYXRpb24tYXJyb3c6YmVmb3Jle2NvbnRlbnQ6IlxmMTI0Ijt9Ci5pY29uLWNyb3A6YmVmb3Jle2NvbnRlbnQ6IlxmMTI1Ijt9Ci5pY29uLWNvZGUtZm9yazpiZWZvcmV7Y29udGVudDoiXGYxMjYiO30KLmljb24tdW5saW5rOmJlZm9yZXtjb250ZW50OiJcZjEyNyI7fQouaWNvbi1xdWVzdGlvbjpiZWZvcmV7Y29udGVudDoiXGYxMjgiO30KLmljb24taW5mbzpiZWZvcmV7Y29udGVudDoiXGYxMjkiO30KLmljb24tZXhjbGFtYXRpb246YmVmb3Jle2NvbnRlbnQ6IlxmMTJhIjt9Ci5pY29uLXN1cGVyc2NyaXB0OmJlZm9yZXtjb250ZW50OiJcZjEyYiI7fQouaWNvbi1zdWJzY3JpcHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTJjIjt9Ci5pY29uLWVyYXNlcjpiZWZvcmV7Y29udGVudDoiXGYxMmQiO30KLmljb24tcHV6emxlLXBpZWNlOmJlZm9yZXtjb250ZW50OiJcZjEyZSI7fQouaWNvbi1taWNyb3Bob25lOmJlZm9yZXtjb250ZW50OiJcZjEzMCI7fQouaWNvbi1taWNyb3Bob25lLW9mZjpiZWZvcmV7Y29udGVudDoiXGYxMzEiO30KLmljb24tc2hpZWxkOmJlZm9yZXtjb250ZW50OiJcZjEzMiI7fQouaWNvbi1jYWxlbmRhci1lbXB0eTpiZWZvcmV7Y29udGVudDoiXGYxMzMiO30KLmljb24tZmlyZS1leHRpbmd1aXNoZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMTM0Ijt9Ci5pY29uLXJvY2tldDpiZWZvcmV7Y29udGVudDoiXGYxMzUiO30KLmljb24tbWF4Y2RuOmJlZm9yZXtjb250ZW50OiJcZjEzNiI7fQouaWNvbi1jaGV2cm9uLXNpZ24tbGVmdDpiZWZvcmV7Y29udGVudDoiXGYxMzciO30KLmljb24tY2hldnJvbi1zaWduLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjEzOCI7fQouaWNvbi1jaGV2cm9uLXNpZ24tdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTM5Ijt9Ci5pY29uLWNoZXZyb24tc2lnbi1kb3duOmJlZm9yZXtjb250ZW50OiJcZjEzYSI7fQouaWNvbi1odG1sNTpiZWZvcmV7Y29udGVudDoiXGYxM2IiO30KLmljb24tY3NzMzpiZWZvcmV7Y29udGVudDoiXGYxM2MiO30KLmljb24tYW5jaG9yOmJlZm9yZXtjb250ZW50OiJcZjEzZCI7fQouaWNvbi11bmxvY2stYWx0OmJlZm9yZXtjb250ZW50OiJcZjEzZSI7fQouaWNvbi1idWxsc2V5ZTpiZWZvcmV7Y29udGVudDoiXGYxNDAiO30KLmljb24tZWxsaXBzaXMtaG9yaXpvbnRhbDpiZWZvcmV7Y29udGVudDoiXGYxNDEiO30KLmljb24tZWxsaXBzaXMtdmVydGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMTQyIjt9Ci5pY29uLXJzcy1zaWduOmJlZm9yZXtjb250ZW50OiJcZjE0MyI7fQouaWNvbi1wbGF5LXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMTQ0Ijt9Ci5pY29uLXRpY2tldDpiZWZvcmV7Y29udGVudDoiXGYxNDUiO30KLmljb24tbWludXMtc2lnbi1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTQ2Ijt9Ci5pY29uLWNoZWNrLW1pbnVzOmJlZm9yZXtjb250ZW50OiJcZjE0NyI7fQouaWNvbi1sZXZlbC11cDpiZWZvcmV7Y29udGVudDoiXGYxNDgiO30KLmljb24tbGV2ZWwtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNDkiO30KLmljb24tY2hlY2stc2lnbjpiZWZvcmV7Y29udGVudDoiXGYxNGEiO30KLmljb24tZWRpdC1zaWduOmJlZm9yZXtjb250ZW50OiJcZjE0YiI7fQouaWNvbi1leHRlcm5hbC1saW5rLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMTRjIjt9Ci5pY29uLXNoYXJlLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMTRkIjt9Ci5pY29uLWNvbXBhc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMTRlIjt9Ci5pY29uLWNvbGxhcHNlOmJlZm9yZXtjb250ZW50OiJcZjE1MCI7fQouaWNvbi1jb2xsYXBzZS10b3A6YmVmb3Jle2NvbnRlbnQ6IlxmMTUxIjt9Ci5pY29uLWV4cGFuZDpiZWZvcmV7Y29udGVudDoiXGYxNTIiO30KLmljb24tZXVybzpiZWZvcmUsLmljb24tZXVyOmJlZm9yZXtjb250ZW50OiJcZjE1MyI7fQouaWNvbi1nYnA6YmVmb3Jle2NvbnRlbnQ6IlxmMTU0Ijt9Ci5pY29uLWRvbGxhcjpiZWZvcmUsLmljb24tdXNkOmJlZm9yZXtjb250ZW50OiJcZjE1NSI7fQouaWNvbi1ydXBlZTpiZWZvcmUsLmljb24taW5yOmJlZm9yZXtjb250ZW50OiJcZjE1NiI7fQouaWNvbi15ZW46YmVmb3JlLC5pY29uLWpweTpiZWZvcmV7Y29udGVudDoiXGYxNTciO30KLmljb24tcmVubWluYmk6YmVmb3JlLC5pY29uLWNueTpiZWZvcmV7Y29udGVudDoiXGYxNTgiO30KLmljb24td29uOmJlZm9yZSwuaWNvbi1rcnc6YmVmb3Jle2NvbnRlbnQ6IlxmMTU5Ijt9Ci5pY29uLWJpdGNvaW46YmVmb3JlLC5pY29uLWJ0YzpiZWZvcmV7Y29udGVudDoiXGYxNWEiO30KLmljb24tZmlsZTpiZWZvcmV7Y29udGVudDoiXGYxNWIiO30KLmljb24tZmlsZS10ZXh0OmJlZm9yZXtjb250ZW50OiJcZjE1YyI7fQouaWNvbi1zb3J0LWJ5LWFscGhhYmV0OmJlZm9yZXtjb250ZW50OiJcZjE1ZCI7fQouaWNvbi1zb3J0LWJ5LWFscGhhYmV0LWFsdDpiZWZvcmV7Y29udGVudDoiXGYxNWUiO30KLmljb24tc29ydC1ieS1hdHRyaWJ1dGVzOmJlZm9yZXtjb250ZW50OiJcZjE2MCI7fQouaWNvbi1zb3J0LWJ5LWF0dHJpYnV0ZXMtYWx0OmJlZm9yZXtjb250ZW50OiJcZjE2MSI7fQouaWNvbi1zb3J0LWJ5LW9yZGVyOmJlZm9yZXtjb250ZW50OiJcZjE2MiI7fQouaWNvbi1zb3J0LWJ5LW9yZGVyLWFsdDpiZWZvcmV7Y29udGVudDoiXGYxNjMiO30KLmljb24tdGh1bWJzLXVwOmJlZm9yZXtjb250ZW50OiJcZjE2NCI7fQouaWNvbi10aHVtYnMtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNjUiO30KLmljb24teW91dHViZS1zaWduOmJlZm9yZXtjb250ZW50OiJcZjE2NiI7fQouaWNvbi15b3V0dWJlOmJlZm9yZXtjb250ZW50OiJcZjE2NyI7fQouaWNvbi14aW5nOmJlZm9yZXtjb250ZW50OiJcZjE2OCI7fQouaWNvbi14aW5nLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMTY5Ijt9Ci5pY29uLXlvdXR1YmUtcGxheTpiZWZvcmV7Y29udGVudDoiXGYxNmEiO30KLmljb24tZHJvcGJveDpiZWZvcmV7Y29udGVudDoiXGYxNmIiO30KLmljb24tc3RhY2tleGNoYW5nZTpiZWZvcmV7Y29udGVudDoiXGYxNmMiO30KLmljb24taW5zdGFncmFtOmJlZm9yZXtjb250ZW50OiJcZjE2ZCI7fQouaWNvbi1mbGlja3I6YmVmb3Jle2NvbnRlbnQ6IlxmMTZlIjt9Ci5pY29uLWFkbjpiZWZvcmV7Y29udGVudDoiXGYxNzAiO30KLmljb24tYml0YnVja2V0OmJlZm9yZXtjb250ZW50OiJcZjE3MSI7fQouaWNvbi1iaXRidWNrZXQtc2lnbjpiZWZvcmV7Y29udGVudDoiXGYxNzIiO30KLmljb24tdHVtYmxyOmJlZm9yZXtjb250ZW50OiJcZjE3MyI7fQouaWNvbi10dW1ibHItc2lnbjpiZWZvcmV7Y29udGVudDoiXGYxNzQiO30KLmljb24tbG9uZy1hcnJvdy1kb3duOmJlZm9yZXtjb250ZW50OiJcZjE3NSI7fQouaWNvbi1sb25nLWFycm93LXVwOmJlZm9yZXtjb250ZW50OiJcZjE3NiI7fQouaWNvbi1sb25nLWFycm93LWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTc3Ijt9Ci5pY29uLWxvbmctYXJyb3ctcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTc4Ijt9Ci5pY29uLWFwcGxlOmJlZm9yZXtjb250ZW50OiJcZjE3OSI7fQouaWNvbi13aW5kb3dzOmJlZm9yZXtjb250ZW50OiJcZjE3YSI7fQouaWNvbi1hbmRyb2lkOmJlZm9yZXtjb250ZW50OiJcZjE3YiI7fQouaWNvbi1saW51eDpiZWZvcmV7Y29udGVudDoiXGYxN2MiO30KLmljb24tZHJpYmJibGU6YmVmb3Jle2NvbnRlbnQ6IlxmMTdkIjt9Ci5pY29uLXNreXBlOmJlZm9yZXtjb250ZW50OiJcZjE3ZSI7fQouaWNvbi1mb3Vyc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE4MCI7fQouaWNvbi10cmVsbG86YmVmb3Jle2NvbnRlbnQ6IlxmMTgxIjt9Ci5pY29uLWZlbWFsZTpiZWZvcmV7Y29udGVudDoiXGYxODIiO30KLmljb24tbWFsZTpiZWZvcmV7Y29udGVudDoiXGYxODMiO30KLmljb24tZ2l0dGlwOmJlZm9yZXtjb250ZW50OiJcZjE4NCI7fQouaWNvbi1zdW46YmVmb3Jle2NvbnRlbnQ6IlxmMTg1Ijt9Ci5pY29uLW1vb246YmVmb3Jle2NvbnRlbnQ6IlxmMTg2Ijt9Ci5pY29uLWFyY2hpdmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTg3Ijt9Ci5pY29uLWJ1ZzpiZWZvcmV7Y29udGVudDoiXGYxODgiO30KLmljb24tdms6YmVmb3Jle2NvbnRlbnQ6IlxmMTg5Ijt9Ci5pY29uLXdlaWJvOmJlZm9yZXtjb250ZW50OiJcZjE4YSI7fQouaWNvbi1yZW5yZW46YmVmb3Jle2NvbnRlbnQ6IlxmMThiIjt9Cg==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/css/jquery.iviewer.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LnZpZXdlciB7CiAgICAtbXMtdG91Y2gtYWN0aW9uOiBub25lOwp9CgouaXZpZXdlcl9jb21tb24gewogICAgcG9zaXRpb246YWJzb2x1dGU7CiAgICBib3R0b206MTBweDsKICAgIGJvcmRlcjogMXB4ICBzb2xpZCAjMDAwOwogICAgaGVpZ2h0OiAyOHB4OwogICAgei1pbmRleDogNTAwMDsKfQoKLml2aWV3ZXJfY3Vyc29yIHsKICAgIGN1cnNvcjogdXJsKC4uL2ltYWdlcy9pdmlld2VyL2hhbmQuY3VyKSA2IDgsIHBvaW50ZXI7Cn0KCi5pdmlld2VyX2RyYWdfY3Vyc29yIHsKICAgIGN1cnNvcjogdXJsKC4uL2ltYWdlcy9pdmlld2VyL2dyYWIuY3VyKSA2IDgsIHBvaW50ZXI7Cn0KCi5pdmlld2VyX2J1dHRvbiB7CiAgICB3aWR0aDogMjhweDsKICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7CiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0Owp9CgouaXZpZXdlcl96b29tX2luIHsKICAgIGxlZnQ6IDIwcHg7CiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2l2aWV3ZXIvaXZpZXdlci56b29tX2luLnBuZyk7Cn0KCi5pdmlld2VyX3pvb21fb3V0IHsKICAgIGxlZnQ6IDU1cHg7CiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2l2aWV3ZXIvaXZpZXdlci56b29tX291dC5wbmcpOwp9CgouaXZpZXdlcl96b29tX3plcm8gewogICAgbGVmdDogOTBweDsKICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaXZpZXdlci9pdmlld2VyLnpvb21femVyby5wbmcpOwp9CgouaXZpZXdlcl96b29tX2ZpdCB7CiAgICBsZWZ0OiAxMjVweDsKICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaXZpZXdlci9pdmlld2VyLnpvb21fZml0LnBuZyk7Cn0KCi5pdmlld2VyX3pvb21fc3RhdHVzIHsKICAgIGxlZnQ6IDE2MHB4OwogICAgZm9udDogMWVtLzI4cHggU2FuczsKICAgIGNvbG9yOiAjMDAwOwogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgIHdpZHRoOiA2MHB4Owp9CgouaXZpZXdlcl9yb3RhdGVfbGVmdCB7CiAgICBsZWZ0OiAyMjdweDsKICAgIGJhY2tncm91bmQ6ICNmZmYgdXJsKC4uL2ltYWdlcy9pdmlld2VyL2l2aWV3ZXIucm90YXRlX2xlZnQucG5nKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDsKfQoKLml2aWV3ZXJfcm90YXRlX3JpZ2h0IHsKICAgIGxlZnQ6IDI2MnB4OwogICAgYmFja2dyb3VuZDogI2ZmZiB1cmwoLi4vaW1hZ2VzL2l2aWV3ZXIvaXZpZXdlci5yb3RhdGVfcmlnaHQucG5nKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDsKfQo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/css/phpdocumentor-clean-icons/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/css/phpdocumentor-clean-icons/fonts/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/css/phpdocumentor-clean-icons/fonts/phpdocumentor-clean-icons.dev.svg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiID4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8bWV0YWRhdGE+ClRoaXMgaXMgYSBjdXN0b20gU1ZHIGZvbnQgZ2VuZXJhdGVkIGJ5IEljb01vb24uCjxpY29uc2V0IGlkPSJwaHBkb2N1bWVudG9yLWNsZWFuLWljb25zIiBuYW1lPSJwaHBkb2N1bWVudG9yLWNsZWFuLWljb25zIiBocmVmPSJodHRwOi8vd3d3LnBocGRvYy5vcmciIGdyaWQ9IjE2Ij48L2ljb25zZXQ+PGF1dGhvciBuYW1lPSJNaWtlIHZhbiBSaWVsIiBocmVmPSJodHRwOi8vd3d3Lm1pa2V2YW5yaWVsLmNvbSI+PC9hdXRob3I+PGxpY2Vuc2UgbmFtZT0iU0lMIj48L2xpY2Vuc2U+CjwvbWV0YWRhdGE+CjxkZWZzPgo8Zm9udCBpZD0icGhwZG9jdW1lbnRvci1jbGVhbi1pY29ucyIgaG9yaXotYWR2LXg9IjUxMiIgPgo8Zm9udC1mYWNlIHVuaXRzLXBlci1lbT0iNTEyIiBhc2NlbnQ9IjQ4MCIgZGVzY2VudD0iLTMyIiAvPgo8bWlzc2luZy1nbHlwaCBob3Jpei1hZHYteD0iNTEyIiAvPgo8Z2x5cGggY2xhc3M9ImhpZGRlbiIgdW5pY29kZT0iJiN4ZjAwMDsiIGQ9Ik0wLDQ4MEwgNTEyIC0zMkwwIC0zMiB6IiBob3Jpei1hZHYteD0iMCIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMDA7IiBkPSJNIDEzOS42MzYsNDU2LjcyNyBDIDc1LjE3MSw0NTYuNzI3IDIzLjI3Myw0MDQuODI5IDIzLjI3MywzNDAuMzY0IGwgMC0yMzIuNzI3IGMgMC02NC40NjUgNTEuODk4LTExNi4zNjQgMTE2LjM2NC0xMTYuMzY0IGwgMjMyLjcyNywwIGMgNjQuNDY1LDAgMTE2LjM2NCw1MS44OTggMTE2LjM2NCwxMTYuMzY0IEwgNDg4LjcyNywzNDAuMzY0IEMgNDg4LjcyNyw0MDQuODI5IDQzNi44MjksNDU2LjcyNyAzNzIuMzY0LDQ1Ni43MjcgTCAxMzkuNjM2LDQ1Ni43MjcgeiBtIDIwLjcyNy00MS4zODEgMTkxLjI3NCwwIGMgNTMuMDAxLDAgOTUuNzA5LTQyLjcwOCA5NS43MDktOTUuNzA5IGwgMC0xOTEuMjc0IGMgMC01My4wMDEgLTQyLjcwOC05NS43MDkgLTk1LjcwOS05NS43MDkgbCAtMTkxLjI3NCwwIGMgLTUzLjAwMSwwIC05NS43MDksNDIuNzA4IC05NS43MDksOTUuNzA5IGwgMCwxOTEuMjc0IGMgMCw1My4wMDEgNDIuNzA4LDk1LjcwOSA5NS43MDksOTUuNzA5IHpNIDM1OS45NjMsMzY2LjgyNyAgbTAsMCwwLTQzLjEyNCAtODQuMjcxLDAgMC0yMzEuMDUyIC01MC4yNDYsMCAwLDIzMS4wNTIgLTg0LjI3MSwwIDAsNDMuMTI0IDIxOC43ODcsMCIgZGF0YS10YWdzPSJ0cmFpdCIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMDE7IiBkPSJNIDEzOS42MzYsNDU2LjcyNyBDIDc1LjE3MSw0NTYuNzI3IDIzLjI3Myw0MDQuODI5IDIzLjI3MywzNDAuMzY0IGwgMC0yMzIuNzI3IGMgMC02NC40NjUgNTEuODk4LTExNi4zNjQgMTE2LjM2NC0xMTYuMzY0IGwgMjMyLjcyNywwIGMgNjQuNDY1LDAgMTE2LjM2NCw1MS44OTggMTE2LjM2NCwxMTYuMzY0IEwgNDg4LjcyNywzNDAuMzY0IEMgNDg4LjcyNyw0MDQuODI5IDQzNi44MjksNDU2LjcyNyAzNzIuMzY0LDQ1Ni43MjcgTCAxMzkuNjM2LDQ1Ni43MjcgeiBtIDIwLjcyNy00MS4zODEgMTkxLjI3NCwwIGMgNTMuMDAxLDAgOTUuNzA5LTQyLjcwOCA5NS43MDktOTUuNzA5IGwgMC0xOTEuMjc0IGMgMC01My4wMDEgLTQyLjcwOC05NS43MDkgLTk1LjcwOS05NS43MDkgbCAtMTkxLjI3NCwwIGMgLTUzLjAwMSwwIC05NS43MDksNDIuNzA4IC05NS43MDksOTUuNzA5IGwgMCwxOTEuMjc0IGMgMCw1My4wMDEgNDIuNzA4LDk1LjcwOSA5NS43MDksOTUuNzA5IHpNIDIzMS4wNzUsMzY2LjgyNyAgbTAsMCwgNDkuODUsMCAwLTI3NC4xNzYgLTQ5Ljg1LDAgMCwyNzQuMTc2IiBkYXRhLXRhZ3M9ImludGVyZmFjZSIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMDI7IiBkPSJNIDEzOS42MzYsNDU2LjcyNyBDIDc1LjE3MSw0NTYuNzI3IDIzLjI3Myw0MDQuODI5IDIzLjI3MywzNDAuMzY0IGwgMC0yMzIuNzI3IGMgMC02NC40NjUgNTEuODk4LTExNi4zNjQgMTE2LjM2NC0xMTYuMzY0IGwgMjMyLjcyNywwIGMgNjQuNDY1LDAgMTE2LjM2NCw1MS44OTggMTE2LjM2NCwxMTYuMzY0IEwgNDg4LjcyNywzNDAuMzY0IEMgNDg4LjcyNyw0MDQuODI5IDQzNi44MjksNDU2LjcyNyAzNzIuMzY0LDQ1Ni43MjcgTCAxMzkuNjM2LDQ1Ni43MjcgeiBtIDIwLjcyNy00MS4zODEgMTkxLjI3NCwwIGMgNTMuMDAxLDAgOTUuNzA5LTQyLjcwOCA5NS43MDktOTUuNzA5IGwgMC0xOTEuMjc0IGMgMC01My4wMDEgLTQyLjcwOC05NS43MDkgLTk1LjcwOS05NS43MDkgbCAtMTkxLjI3NCwwIGMgLTUzLjAwMSwwIC05NS43MDksNDIuNzA4IC05NS43MDksOTUuNzA5IGwgMCwxOTEuMjc0IGMgMCw1My4wMDEgNDIuNzA4LDk1LjcwOSA5NS43MDksOTUuNzA5IHpNIDI3OC43NDksODYuNzE3ICBtMCwwLGMgLTIwLjU3MywwIC0zOS4wMzYsMy4xNjUgLTU1LjM4OSw5LjQ5NSAtMTYuMzUzLDYuMzMgLTMwLjIsMTUuNTYyIC00MS41NDIsMjcuNjk1IC0xMS4zNDIsMTIuMzk3IC0yMC4wNDYsMjcuNDMxIC0yNi4xMTIsNDUuMTAzIC02LjA2NiwxNy42NzIgLTkuMSwzNy45ODEgLTkuMSw2MC45MjggMCwyMi45NDcgMy40MjksNDMuMjU2IDEwLjI4Nyw2MC45MjggNy4xMjEsMTcuNjcyIDE2Ljc0OSwzMi41NzQgMjguODgxLDQ0LjcwNyAxMi4xMzMsMTIuMzk2IDI2LjM3NiwyMS43NiA0Mi43MjksMjguMDkwIDE2LjM1Myw2LjMzIDMzLjg5Myw5LjQ5NSA1Mi42Miw5LjQ5NSAxMS4zNDEsMCAyMS42MjgtMC45MjMgMzAuODYtMi43NjkgOS4yMzEtMS41ODMgMTcuMjc2LTMuNDI5IDI0LjEzNC01LjUzOSA2Ljg1Ny0yLjExIDEyLjUyOC00LjM1MiAxNy4wMTItNi43MjYgNC40ODQtMi4zNzQgNy42NDktNC4wODkgOS40OTUtNS4xNDMgbCAtMTQuNjM5LTQwLjc1MSBjIC02LjMzLDMuOTU2IC0xNS40Myw3LjY0OSAtMjcuMjk5LDExLjA3OCAtMTEuNjA2LDMuNjkyIC0yNC4yNjYsNS41MzkgLTM3Ljk4MSw1LjUzOSAtMTEuODY5LDAgLTIyLjk0Ny0yLjExIC0zMy4yMzMtNi4zMyAtMTAuMjg3LTMuOTU3IC0xOS4yNTQtMTAuMDIzIC0yNi45MDMtMTguMTk5IC03LjM4NS04LjE3NyAtMTMuMTg4LTE4LjQ2MyAtMTcuNDA4LTMwLjg2IC00LjIyLTEyLjM5NyAtNi4zMy0yNi43NzIgLTYuMzMtNDMuMTI0IDAtMTQuNTA3IDEuNTgyLTI3LjgyNyA0Ljc0OC0zOS45NTkgMy40MjktMTIuMTMzIDguNTcyLTIyLjY4MyAxNS40My0zMS42NTEgNi44NTgtOC43MDQgMTUuNTYyLTE1LjU2MiAyNi4xMTItMjAuNTczIDEwLjU1LTQuNzQ4IDIzLjIxMS03LjEyMiAzNy45ODEtNy4xMjEgMTcuNjcyLDAgMzIuMDQ2LDEuNzE0IDQzLjEyNCw1LjE0MyAxMS4wNzgsMy42OTMgMTkuNjUsNy4xMjEgMjUuNzE2LDEwLjI4NyBsIDEzLjQ1Mi00MC43NTEgYyAtMy4xNjUtMi4xMSAtNy41MTctNC4yMiAtMTMuMDU2LTYuMzMgLTUuMjc1LTIuMTEgLTExLjYwNi00LjIyIC0xOC45OTEtNi4zMyAtNy4zODUtMS44NDYgLTE1LjY5NC0zLjI5NyAtMjQuOTI1LTQuMzUyIC05LjIzMi0xLjMxOSAtMTkuMTIzLTEuOTc4IC0yOS42NzMtMS45NzgiIGRhdGEtdGFncz0iY2xhc3MiIC8+CjxnbHlwaCB1bmljb2RlPSImI3gyMDsiIGhvcml6LWFkdi14PSIyNTYiIC8+CjwvZm9udD48L2RlZnM+PC9zdmc+]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/css/phpdocumentor-clean-icons/fonts/phpdocumentor-clean-icons.eot</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/css/phpdocumentor-clean-icons/fonts/phpdocumentor-clean-icons.svg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiID4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8bWV0YWRhdGE+ClRoaXMgaXMgYSBjdXN0b20gU1ZHIGZvbnQgZ2VuZXJhdGVkIGJ5IEljb01vb24uCjxpY29uc2V0IGlkPSJwaHBkb2N1bWVudG9yLWNsZWFuLWljb25zIiBuYW1lPSJwaHBkb2N1bWVudG9yLWNsZWFuLWljb25zIiBocmVmPSJodHRwOi8vd3d3LnBocGRvYy5vcmciIGdyaWQ9IjE2Ij48L2ljb25zZXQ+PGF1dGhvciBuYW1lPSJNaWtlIHZhbiBSaWVsIiBocmVmPSJodHRwOi8vd3d3Lm1pa2V2YW5yaWVsLmNvbSI+PC9hdXRob3I+PGxpY2Vuc2UgbmFtZT0iU0lMIj48L2xpY2Vuc2U+CjwvbWV0YWRhdGE+CjxkZWZzPgo8Zm9udCBpZD0icGhwZG9jdW1lbnRvci1jbGVhbi1pY29ucyIgaG9yaXotYWR2LXg9IjUxMiIgPgo8Zm9udC1mYWNlIHVuaXRzLXBlci1lbT0iNTEyIiBhc2NlbnQ9IjQ4MCIgZGVzY2VudD0iLTMyIiAvPgo8bWlzc2luZy1nbHlwaCBob3Jpei1hZHYteD0iNTEyIiAvPgo8Z2x5cGggY2xhc3M9ImhpZGRlbiIgdW5pY29kZT0iJiN4ZjAwMDsiIGQ9Ik0wLDQ4MEwgNTEyIC0zMkwwIC0zMiB6IiBob3Jpei1hZHYteD0iMCIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGUwMDA7IiBkPSJNIDEzOS42MzYsNDU2LjcyNyBDIDc1LjE3MSw0NTYuNzI3IDIzLjI3Myw0MDQuODI5IDIzLjI3MywzNDAuMzY0IGwgMC0yMzIuNzI3IGMgMC02NC40NjUgNTEuODk4LTExNi4zNjQgMTE2LjM2NC0xMTYuMzY0IGwgMjMyLjcyNywwIGMgNjQuNDY1LDAgMTE2LjM2NCw1MS44OTggMTE2LjM2NCwxMTYuMzY0IEwgNDg4LjcyNywzNDAuMzY0IEMgNDg4LjcyNyw0MDQuODI5IDQzNi44MjksNDU2LjcyNyAzNzIuMzY0LDQ1Ni43MjcgTCAxMzkuNjM2LDQ1Ni43MjcgeiBtIDIwLjcyNy00MS4zODEgMTkxLjI3NCwwIGMgNTMuMDAxLDAgOTUuNzA5LTQyLjcwOCA5NS43MDktOTUuNzA5IGwgMC0xOTEuMjc0IGMgMC01My4wMDEgLTQyLjcwOC05NS43MDkgLTk1LjcwOS05NS43MDkgbCAtMTkxLjI3NCwwIGMgLTUzLjAwMSwwIC05NS43MDksNDIuNzA4IC05NS43MDksOTUuNzA5IGwgMCwxOTEuMjc0IGMgMCw1My4wMDEgNDIuNzA4LDk1LjcwOSA5NS43MDksOTUuNzA5IHpNIDM1OS45NjMsMzY2LjgyNyAgbTAsMCwwLTQzLjEyNCAtODQuMjcxLDAgMC0yMzEuMDUyIC01MC4yNDYsMCAwLDIzMS4wNTIgLTg0LjI3MSwwIDAsNDMuMTI0IDIxOC43ODcsMCIgIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDAxOyIgZD0iTSAxMzkuNjM2LDQ1Ni43MjcgQyA3NS4xNzEsNDU2LjcyNyAyMy4yNzMsNDA0LjgyOSAyMy4yNzMsMzQwLjM2NCBsIDAtMjMyLjcyNyBjIDAtNjQuNDY1IDUxLjg5OC0xMTYuMzY0IDExNi4zNjQtMTE2LjM2NCBsIDIzMi43MjcsMCBjIDY0LjQ2NSwwIDExNi4zNjQsNTEuODk4IDExNi4zNjQsMTE2LjM2NCBMIDQ4OC43MjcsMzQwLjM2NCBDIDQ4OC43MjcsNDA0LjgyOSA0MzYuODI5LDQ1Ni43MjcgMzcyLjM2NCw0NTYuNzI3IEwgMTM5LjYzNiw0NTYuNzI3IHogbSAyMC43MjctNDEuMzgxIDE5MS4yNzQsMCBjIDUzLjAwMSwwIDk1LjcwOS00Mi43MDggOTUuNzA5LTk1LjcwOSBsIDAtMTkxLjI3NCBjIDAtNTMuMDAxIC00Mi43MDgtOTUuNzA5IC05NS43MDktOTUuNzA5IGwgLTE5MS4yNzQsMCBjIC01My4wMDEsMCAtOTUuNzA5LDQyLjcwOCAtOTUuNzA5LDk1LjcwOSBsIDAsMTkxLjI3NCBjIDAsNTMuMDAxIDQyLjcwOCw5NS43MDkgOTUuNzA5LDk1LjcwOSB6TSAyMzEuMDc1LDM2Ni44MjcgIG0wLDAsIDQ5Ljg1LDAgMC0yNzQuMTc2IC00OS44NSwwIDAsMjc0LjE3NiIgIC8+CjxnbHlwaCB1bmljb2RlPSImI3hlMDAyOyIgZD0iTSAxMzkuNjM2LDQ1Ni43MjcgQyA3NS4xNzEsNDU2LjcyNyAyMy4yNzMsNDA0LjgyOSAyMy4yNzMsMzQwLjM2NCBsIDAtMjMyLjcyNyBjIDAtNjQuNDY1IDUxLjg5OC0xMTYuMzY0IDExNi4zNjQtMTE2LjM2NCBsIDIzMi43MjcsMCBjIDY0LjQ2NSwwIDExNi4zNjQsNTEuODk4IDExNi4zNjQsMTE2LjM2NCBMIDQ4OC43MjcsMzQwLjM2NCBDIDQ4OC43MjcsNDA0LjgyOSA0MzYuODI5LDQ1Ni43MjcgMzcyLjM2NCw0NTYuNzI3IEwgMTM5LjYzNiw0NTYuNzI3IHogbSAyMC43MjctNDEuMzgxIDE5MS4yNzQsMCBjIDUzLjAwMSwwIDk1LjcwOS00Mi43MDggOTUuNzA5LTk1LjcwOSBsIDAtMTkxLjI3NCBjIDAtNTMuMDAxIC00Mi43MDgtOTUuNzA5IC05NS43MDktOTUuNzA5IGwgLTE5MS4yNzQsMCBjIC01My4wMDEsMCAtOTUuNzA5LDQyLjcwOCAtOTUuNzA5LDk1LjcwOSBsIDAsMTkxLjI3NCBjIDAsNTMuMDAxIDQyLjcwOCw5NS43MDkgOTUuNzA5LDk1LjcwOSB6TSAyNzguNzQ5LDg2LjcxNyAgbTAsMCxjIC0yMC41NzMsMCAtMzkuMDM2LDMuMTY1IC01NS4zODksOS40OTUgLTE2LjM1Myw2LjMzIC0zMC4yLDE1LjU2MiAtNDEuNTQyLDI3LjY5NSAtMTEuMzQyLDEyLjM5NyAtMjAuMDQ2LDI3LjQzMSAtMjYuMTEyLDQ1LjEwMyAtNi4wNjYsMTcuNjcyIC05LjEsMzcuOTgxIC05LjEsNjAuOTI4IDAsMjIuOTQ3IDMuNDI5LDQzLjI1NiAxMC4yODcsNjAuOTI4IDcuMTIxLDE3LjY3MiAxNi43NDksMzIuNTc0IDI4Ljg4MSw0NC43MDcgMTIuMTMzLDEyLjM5NiAyNi4zNzYsMjEuNzYgNDIuNzI5LDI4LjA5MCAxNi4zNTMsNi4zMyAzMy44OTMsOS40OTUgNTIuNjIsOS40OTUgMTEuMzQxLDAgMjEuNjI4LTAuOTIzIDMwLjg2LTIuNzY5IDkuMjMxLTEuNTgzIDE3LjI3Ni0zLjQyOSAyNC4xMzQtNS41MzkgNi44NTctMi4xMSAxMi41MjgtNC4zNTIgMTcuMDEyLTYuNzI2IDQuNDg0LTIuMzc0IDcuNjQ5LTQuMDg5IDkuNDk1LTUuMTQzIGwgLTE0LjYzOS00MC43NTEgYyAtNi4zMywzLjk1NiAtMTUuNDMsNy42NDkgLTI3LjI5OSwxMS4wNzggLTExLjYwNiwzLjY5MiAtMjQuMjY2LDUuNTM5IC0zNy45ODEsNS41MzkgLTExLjg2OSwwIC0yMi45NDctMi4xMSAtMzMuMjMzLTYuMzMgLTEwLjI4Ny0zLjk1NyAtMTkuMjU0LTEwLjAyMyAtMjYuOTAzLTE4LjE5OSAtNy4zODUtOC4xNzcgLTEzLjE4OC0xOC40NjMgLTE3LjQwOC0zMC44NiAtNC4yMi0xMi4zOTcgLTYuMzMtMjYuNzcyIC02LjMzLTQzLjEyNCAwLTE0LjUwNyAxLjU4Mi0yNy44MjcgNC43NDgtMzkuOTU5IDMuNDI5LTEyLjEzMyA4LjU3Mi0yMi42ODMgMTUuNDMtMzEuNjUxIDYuODU4LTguNzA0IDE1LjU2Mi0xNS41NjIgMjYuMTEyLTIwLjU3MyAxMC41NS00Ljc0OCAyMy4yMTEtNy4xMjIgMzcuOTgxLTcuMTIxIDE3LjY3MiwwIDMyLjA0NiwxLjcxNCA0My4xMjQsNS4xNDMgMTEuMDc4LDMuNjkzIDE5LjY1LDcuMTIxIDI1LjcxNiwxMC4yODcgbCAxMy40NTItNDAuNzUxIGMgLTMuMTY1LTIuMTEgLTcuNTE3LTQuMjIgLTEzLjA1Ni02LjMzIC01LjI3NS0yLjExIC0xMS42MDYtNC4yMiAtMTguOTkxLTYuMzMgLTcuMzg1LTEuODQ2IC0xNS42OTQtMy4yOTcgLTI0LjkyNS00LjM1MiAtOS4yMzItMS4zMTkgLTE5LjEyMy0xLjk3OCAtMjkuNjczLTEuOTc4IiAgLz4KPGdseXBoIHVuaWNvZGU9IiYjeDIwOyIgaG9yaXotYWR2LXg9IjI1NiIgLz4KPC9mb250PjwvZGVmcz48L3N2Zz4=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/css/phpdocumentor-clean-icons/fonts/phpdocumentor-clean-icons.ttf</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/css/phpdocumentor-clean-icons/fonts/phpdocumentor-clean-icons.woff</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/css/phpdocumentor-clean-icons/lte-ie7.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogTG9hZCB0aGlzIHNjcmlwdCB1c2luZyBjb25kaXRpb25hbCBJRSBjb21tZW50cyBpZiB5b3UgbmVlZCB0byBzdXBwb3J0IElFIDcgYW5kIElFIDYuICovCgp3aW5kb3cub25sb2FkID0gZnVuY3Rpb24oKSB7CglmdW5jdGlvbiBhZGRJY29uKGVsLCBlbnRpdHkpIHsKCQl2YXIgaHRtbCA9IGVsLmlubmVySFRNTDsKCQllbC5pbm5lckhUTUwgPSAnPHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiBcJ3BocGRvY3VtZW50b3ItY2xlYW4taWNvbnNcJyI+JyArIGVudGl0eSArICc8L3NwYW4+JyArIGh0bWw7Cgl9Cgl2YXIgaWNvbnMgPSB7CgkJCSdpY29uLXRyYWl0JyA6ICcmI3hlMDAwOycsCgkJCSdpY29uLWludGVyZmFjZScgOiAnJiN4ZTAwMTsnLAoJCQknaWNvbi1jbGFzcycgOiAnJiN4ZTAwMjsnCgkJfSwKCQllbHMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnKicpLAoJCWksIGF0dHIsIGh0bWwsIGMsIGVsOwoJZm9yIChpID0gMDsgOyBpICs9IDEpIHsKCQllbCA9IGVsc1tpXTsKCQlpZighZWwpIHsKCQkJYnJlYWs7CgkJfQoJCWF0dHIgPSBlbC5nZXRBdHRyaWJ1dGUoJ2RhdGEtaWNvbicpOwoJCWlmIChhdHRyKSB7CgkJCWFkZEljb24oZWwsIGF0dHIpOwoJCX0KCQljID0gZWwuY2xhc3NOYW1lOwoJCWMgPSBjLm1hdGNoKC9pY29uLVteXHMnIl0rLyk7CgkJaWYgKGMgJiYgaWNvbnNbY1swXV0pIHsKCQkJYWRkSWNvbihlbCwgaWNvbnNbY1swXV0pOwoJCX0KCX0KfTs=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/css/phpdocumentor-clean-icons/Read Me.txt</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[VG8gbW9kaWZ5IHlvdXIgZ2VuZXJhdGVkIGZvbnQsIHVzZSB0aGUgKmRldi5zdmcqIGZpbGUsIGxvY2F0ZWQgaW4gdGhlICpmb250cyogZm9sZGVyIGluIHRoaXMgcGFja2FnZS4gWW91IGNhbiBpbXBvcnQgdGhpcyBkZXYuc3ZnIGZpbGUgdG8gdGhlIEljb01vb24gYXBwLiBBbGwgdGhlIHRhZ3MgKGNsYXNzIG5hbWVzKSBhbmQgdGhlIFVuaWNvZGUgcG9pbnRzIG9mIHlvdXIgZ2x5cGhzIGFyZSBzYXZlZCBpbiB0aGlzIGZpbGUuCgpTZWUgdGhlIGRvY3VtZW50YXRpb24gZm9yIG1vcmUgaW5mbyBvbiBob3cgdG8gdXNlIHRoaXMgcGFja2FnZTogaHR0cDovL2ljb21vb24uaW8vI2RvY3MvZm9udC1mYWNl]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/css/phpdocumentor-clean-icons/style.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[QGZvbnQtZmFjZSB7Cglmb250LWZhbWlseTogJ3BocGRvY3VtZW50b3ItY2xlYW4taWNvbnMnOwoJc3JjOnVybCgnZm9udHMvcGhwZG9jdW1lbnRvci1jbGVhbi1pY29ucy5lb3QnKTsKCXNyYzp1cmwoJ2ZvbnRzL3BocGRvY3VtZW50b3ItY2xlYW4taWNvbnMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwKCQl1cmwoJ2ZvbnRzL3BocGRvY3VtZW50b3ItY2xlYW4taWNvbnMud29mZicpIGZvcm1hdCgnd29mZicpLAoJCXVybCgnZm9udHMvcGhwZG9jdW1lbnRvci1jbGVhbi1pY29ucy50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksCgkJdXJsKCdmb250cy9waHBkb2N1bWVudG9yLWNsZWFuLWljb25zLnN2ZyNwaHBkb2N1bWVudG9yLWNsZWFuLWljb25zJykgZm9ybWF0KCdzdmcnKTsKCWZvbnQtd2VpZ2h0OiBub3JtYWw7Cglmb250LXN0eWxlOiBub3JtYWw7Cn0KCi8qIFVzZSB0aGUgZm9sbG93aW5nIENTUyBjb2RlIGlmIHlvdSB3YW50IHRvIHVzZSBkYXRhIGF0dHJpYnV0ZXMgZm9yIGluc2VydGluZyB5b3VyIGljb25zICovCltkYXRhLWljb25dOmJlZm9yZSB7Cglmb250LWZhbWlseTogJ3BocGRvY3VtZW50b3ItY2xlYW4taWNvbnMnOwoJY29udGVudDogYXR0cihkYXRhLWljb24pOwoJc3BlYWs6IG5vbmU7Cglmb250LXdlaWdodDogbm9ybWFsOwoJZm9udC12YXJpYW50OiBub3JtYWw7Cgl0ZXh0LXRyYW5zZm9ybTogbm9uZTsKCWxpbmUtaGVpZ2h0OiAxOwoJLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7Cn0KCi8qIFVzZSB0aGUgZm9sbG93aW5nIENTUyBjb2RlIGlmIHlvdSB3YW50IHRvIGhhdmUgYSBjbGFzcyBwZXIgaWNvbiAqLwovKgpJbnN0ZWFkIG9mIGEgbGlzdCBvZiBhbGwgY2xhc3Mgc2VsZWN0b3JzLAp5b3UgY2FuIHVzZSB0aGUgZ2VuZXJpYyBzZWxlY3RvciBiZWxvdywgYnV0IGl0J3Mgc2xvd2VyOgpbY2xhc3MqPSJpY29uLSJdIHsKKi8KLmljb24tdHJhaXQsIC5pY29uLWludGVyZmFjZSwgLmljb24tY2xhc3MgewoJZm9udC1mYW1pbHk6ICdwaHBkb2N1bWVudG9yLWNsZWFuLWljb25zJzsKCXNwZWFrOiBub25lOwoJZm9udC1zdHlsZTogbm9ybWFsOwoJZm9udC13ZWlnaHQ6IG5vcm1hbDsKCWZvbnQtdmFyaWFudDogbm9ybWFsOwoJdGV4dC10cmFuc2Zvcm06IG5vbmU7CglsaW5lLWhlaWdodDogMTsKCS13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOwp9Ci5pY29uLXRyYWl0OmJlZm9yZSB7Cgljb250ZW50OiAiXGUwMDAiOwp9Ci5pY29uLWludGVyZmFjZTpiZWZvcmUgewoJY29udGVudDogIlxlMDAxIjsKfQouaWNvbi1jbGFzczpiZWZvcmUgewoJY29udGVudDogIlxlMDAyIjsKfQo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/css/prism.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoqCiAqIHByaXNtLmpzIGRlZmF1bHQgdGhlbWUgZm9yIEphdmFTY3JpcHQsIENTUyBhbmQgSFRNTAogKiBCYXNlZCBvbiBkYWJibGV0IChodHRwOi8vZGFiYmxldC5jb20pCiAqIEBhdXRob3IgTGVhIFZlcm91CiAqLwoKY29kZVtjbGFzcyo9Imxhbmd1YWdlLSJdLApwcmVbY2xhc3MqPSJsYW5ndWFnZS0iXSB7Cgljb2xvcjogYmxhY2s7Cgl0ZXh0LXNoYWRvdzogMCAxcHggd2hpdGU7Cglmb250LWZhbWlseTogQ29uc29sYXMsIE1vbmFjbywgJ0FuZGFsZSBNb25vJywgbW9ub3NwYWNlOwoJZGlyZWN0aW9uOiBsdHI7Cgl0ZXh0LWFsaWduOiBsZWZ0OwoJd2hpdGUtc3BhY2U6IHByZTsKCXdvcmQtc3BhY2luZzogbm9ybWFsOwoKCS1tb3otdGFiLXNpemU6IDQ7Cgktby10YWItc2l6ZTogNDsKCXRhYi1zaXplOiA0OwoKCS13ZWJraXQtaHlwaGVuczogbm9uZTsKCS1tb3otaHlwaGVuczogbm9uZTsKCS1tcy1oeXBoZW5zOiBub25lOwoJaHlwaGVuczogbm9uZTsKfQoKOjotbW96LXNlbGVjdGlvbiB7Cgl0ZXh0LXNoYWRvdzogbm9uZTsKCWJhY2tncm91bmQ6ICNiM2Q0ZmM7Cn0KCjo6c2VsZWN0aW9uIHsKCXRleHQtc2hhZG93OiBub25lOwoJYmFja2dyb3VuZDogI2IzZDRmYzsKfQoKQG1lZGlhIHByaW50IHsKCWNvZGVbY2xhc3MqPSJsYW5ndWFnZS0iXSwKCXByZVtjbGFzcyo9Imxhbmd1YWdlLSJdIHsKCQl0ZXh0LXNoYWRvdzogbm9uZTsKCX0KfQoKLyogQ29kZSBibG9ja3MgKi8KcHJlW2NsYXNzKj0ibGFuZ3VhZ2UtIl0gewoJcGFkZGluZzogMWVtOwoJbWFyZ2luOiAuNWVtIDA7CglvdmVyZmxvdzogYXV0bzsKfQoKOm5vdChwcmUpID4gY29kZVtjbGFzcyo9Imxhbmd1YWdlLSJdLApwcmVbY2xhc3MqPSJsYW5ndWFnZS0iXSB7CgliYWNrZ3JvdW5kOiAjZjVmMmYwOwp9CgovKiBJbmxpbmUgY29kZSAqLwo6bm90KHByZSkgPiBjb2RlW2NsYXNzKj0ibGFuZ3VhZ2UtIl0gewoJcGFkZGluZzogLjFlbTsKCWJvcmRlci1yYWRpdXM6IC4zZW07Cn0KCi50b2tlbi5jb21tZW50LAoudG9rZW4ucHJvbG9nLAoudG9rZW4uZG9jdHlwZSwKLnRva2VuLmNkYXRhIHsKCWNvbG9yOiBzbGF0ZWdyYXk7Cn0KCi50b2tlbi5wdW5jdHVhdGlvbiB7Cgljb2xvcjogIzk5OTsKfQoKLm5hbWVzcGFjZSB7CglvcGFjaXR5OiAuNzsKfQoKLnRva2VuLnByb3BlcnR5LAoudG9rZW4udGFnLAoudG9rZW4uYm9vbGVhbiwKLnRva2VuLm51bWJlciB7Cgljb2xvcjogIzkwNTsKfQoKLnRva2VuLnNlbGVjdG9yLAoudG9rZW4uYXR0ci1uYW1lLAoudG9rZW4uc3RyaW5nIHsKCWNvbG9yOiAjNjkwOwp9CgoudG9rZW4ub3BlcmF0b3IsCi50b2tlbi5lbnRpdHksCi50b2tlbi51cmwsCi5sYW5ndWFnZS1jc3MgLnRva2VuLnN0cmluZywKLnN0eWxlIC50b2tlbi5zdHJpbmcgewoJY29sb3I6ICNhNjdmNTk7CgliYWNrZ3JvdW5kOiBoc2xhKDAsMCUsMTAwJSwuNSk7Cn0KCi50b2tlbi5hdHJ1bGUsCi50b2tlbi5hdHRyLXZhbHVlLAoudG9rZW4ua2V5d29yZCB7Cgljb2xvcjogIzA3YTsKfQoKCi50b2tlbi5yZWdleCwKLnRva2VuLmltcG9ydGFudCB7Cgljb2xvcjogI2U5MDsKfQoKLnRva2VuLmltcG9ydGFudCB7Cglmb250LXdlaWdodDogYm9sZDsKfQoKLnRva2VuLmVudGl0eSB7CgljdXJzb3I6IGhlbHA7Cn0KcHJlW2RhdGEtbGluZV0gewoJcG9zaXRpb246IHJlbGF0aXZlOwoJcGFkZGluZzogMWVtIDAgMWVtIDNlbTsKfQoKLmxpbmUtaGlnaGxpZ2h0IHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWxlZnQ6IDA7CglyaWdodDogMDsKCXBhZGRpbmc6IGluaGVyaXQgMDsKCW1hcmdpbi10b3A6IDFlbTsgLyogU2FtZSBhcyAucHJpc23igJlzIHBhZGRpbmctdG9wICovCgoJYmFja2dyb3VuZDogaHNsYSgyNCwgMjAlLCA1MCUsLjA4KTsKCWJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIGhzbGEoMjQsIDIwJSwgNTAlLC4xKSA3MCUsIGhzbGEoMjQsIDIwJSwgNTAlLDApKTsKCWJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIGhzbGEoMjQsIDIwJSwgNTAlLC4xKSA3MCUsIGhzbGEoMjQsIDIwJSwgNTAlLDApKTsKCWJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCBoc2xhKDI0LCAyMCUsIDUwJSwuMSkgNzAlLCBoc2xhKDI0LCAyMCUsIDUwJSwwKSk7CgliYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQobGVmdCwgaHNsYSgyNCwgMjAlLCA1MCUsLjEpIDcwJSwgaHNsYSgyNCwgMjAlLCA1MCUsMCkpOwoJCglwb2ludGVyLWV2ZW50czogbm9uZTsKCQoJbGluZS1oZWlnaHQ6IGluaGVyaXQ7Cgl3aGl0ZS1zcGFjZTogcHJlOwp9CgoJLmxpbmUtaGlnaGxpZ2h0OmJlZm9yZSwKCS5saW5lLWhpZ2hsaWdodFtkYXRhLWVuZF06YWZ0ZXIgewoJCWNvbnRlbnQ6IGF0dHIoZGF0YS1zdGFydCk7CgkJcG9zaXRpb246IGFic29sdXRlOwoJCXRvcDogLjRlbTsKCQlsZWZ0OiAuNmVtOwoJCW1pbi13aWR0aDogMWVtOwoJCXBhZGRpbmc6IDAgLjVlbTsKCQliYWNrZ3JvdW5kLWNvbG9yOiBoc2xhKDI0LCAyMCUsIDUwJSwuNCk7CgkJY29sb3I6IGhzbCgyNCwgMjAlLCA5NSUpOwoJCWZvbnQ6IGJvbGQgNjUlLzEuNSBzYW5zLXNlcmlmOwoJCXRleHQtYWxpZ246IGNlbnRlcjsKCQl2ZXJ0aWNhbC1hbGlnbjogLjNlbTsKCQlib3JkZXItcmFkaXVzOiA5OTlweDsKCQl0ZXh0LXNoYWRvdzogbm9uZTsKCQlib3gtc2hhZG93OiAwIDFweCB3aGl0ZTsKCX0KCQoJLmxpbmUtaGlnaGxpZ2h0W2RhdGEtZW5kXTphZnRlciB7CgkJY29udGVudDogYXR0cihkYXRhLWVuZCk7CgkJdG9wOiBhdXRvOwoJCWJvdHRvbTogLjRlbTsKCX0KcHJlLmxpbmUtbnVtYmVycyB7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglwYWRkaW5nLWxlZnQ6IDMuOGVtOwoJY291bnRlci1yZXNldDogbGluZW51bWJlcjsKfQoKcHJlLmxpbmUtbnVtYmVycyA+IGNvZGUgewoJcG9zaXRpb246IHJlbGF0aXZlOwp9CgoubGluZS1udW1iZXJzIC5saW5lLW51bWJlcnMtcm93cyB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cglwb2ludGVyLWV2ZW50czogbm9uZTsKCXRvcDogMDsKCWZvbnQtc2l6ZTogMTAwJTsKCWxlZnQ6IC0zLjhlbTsKCXdpZHRoOiAzZW07IC8qIHdvcmtzIGZvciBsaW5lLW51bWJlcnMgYmVsb3cgMTAwMCBsaW5lcyAqLwoJbGV0dGVyLXNwYWNpbmc6IC0xcHg7Cglib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjOTk5OwoKCS13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CgktbW96LXVzZXItc2VsZWN0OiBub25lOwoJLW1zLXVzZXItc2VsZWN0OiBub25lOwoJdXNlci1zZWxlY3Q6IG5vbmU7Cgp9CgoJLmxpbmUtbnVtYmVycy1yb3dzID4gc3BhbiB7CgkJcG9pbnRlci1ldmVudHM6IG5vbmU7CgkJZGlzcGxheTogYmxvY2s7CgkJY291bnRlci1pbmNyZW1lbnQ6IGxpbmVudW1iZXI7Cgl9CgoJCS5saW5lLW51bWJlcnMtcm93cyA+IHNwYW46YmVmb3JlIHsKCQkJY29udGVudDogY291bnRlcihsaW5lbnVtYmVyKTsKCQkJY29sb3I6ICM5OTk7CgkJCWRpc3BsYXk6IGJsb2NrOwoJCQlwYWRkaW5nLXJpZ2h0OiAwLjhlbTsKCQkJdGV4dC1hbGlnbjogcmlnaHQ7CgkJfQo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/css/template.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[QGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVNvdXJjZStTYW5zK1Bybyk7CkBpbXBvcnQgdXJsKCdwaHBkb2N1bWVudG9yLWNsZWFuLWljb25zL3N0eWxlLmNzcycpOwoKYm9keSB7CiAgICBwYWRkaW5nLXRvcDogICAgICA0MHB4OwogICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMzsKfQoKYSB7CiAgICBjb2xvcjogIzY0OTVlZDsKfQphLmFuY2hvciB7CiAgICBoZWlnaHQ6IDQwcHg7CiAgICBtYXJnaW4tdG9wOiAtNDBweDsKICAgIGRpc3BsYXk6IGJsb2NrOwp9CgpoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCAuYnJhbmQgewogICAgZm9udC1mYW1pbHk6ICAgICdTb3VyY2UgU2FucyBQcm8nLCBzYW5zLXNlcmlmOwogICAgZm9udC13ZWlnaHQ6ICAgIG5vcm1hbDsKICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07Cn0KCmgyLCBoMywgLmRldGFpbHNiYXIgaDEgewogICAgb3ZlcmZsb3c6ICAgIGhpZGRlbjsKICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7CiAgICBtYXJnaW46ICAgICAgMzBweCAwIDIwcHggMDsKfQoKaDI6YWZ0ZXIsIGgzOmFmdGVyLCAuZGV0YWlsc2JhciBoMTphZnRlciB7CiAgICBjb250ZW50OiAgICAgICAgJyc7CiAgICBkaXNwbGF5OiAgICAgICAgaW5saW5lLWJsb2NrOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKICAgIHdpZHRoOiAgICAgICAgICAxMDAlOwogICAgaGVpZ2h0OiAgICAgICAgIDJweDsKICAgIG1hcmdpbi1sZWZ0OiAgICAxZW07CiAgICBiYWNrZ3JvdW5kOiAgICAgc2lsdmVyOwp9CgpoMyB7CiAgICBtYXJnaW46IDEwcHggMCAyMHB4IDA7Cn0KCmg0IHsKICAgIG1hcmdpbjogICAgMjBweCAwIDEwcHggMDsKICAgIGNvbG9yOiAgICAgZ3JheTsKICAgIGZvbnQtc2l6ZTogMTguNXB4Owp9CgpoMy5wdWJsaWMsIGgzLnByb3RlY3RlZCwgaDMucHJpdmF0ZSB7CiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7CiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKfQoKLnRhYmxlIHRyOmZpcnN0LW9mLXR5cGUgdGgsIC50YWJsZSB0cjpmaXJzdC1vZi10eXBlIHRkIHsKICAgIGJvcmRlci10b3A6IG5vbmU7Cn0KLmRldGFpbHNiYXIgewogICAgY29sb3I6ICAgICAgICAgICAgI2VlZWVlZTsKICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7CiAgICBmb250LXNpemU6ICAgICAgICAwLjllbTsKICAgIG92ZXJmbG93OiAgICAgICAgIGhpZGRlbjsKICAgIGJvcmRlci1sZWZ0OiAgICAgIDJweCBzb2xpZCBncmF5Owp9CgouZGV0YWlsc2JhciBoMSB7CiAgICBmb250LXNpemU6ICAgICAxLjVlbTsKICAgIG1hcmdpbi1ib3R0b206IDIwcHg7CiAgICBtYXJnaW4tdG9wOiAgICAwOwp9CgouZGV0YWlsc2JhciBoMiB7CiAgICBmb250LXNpemU6IDEuMmVtOwogICAgbWFyZ2luOiAgICAwOwogICAgcGFkZGluZzogICAwOwp9CgouZGV0YWlsc2JhciBoMTphZnRlciB7CiAgICBiYWNrZ3JvdW5kOiBncmF5Owp9Ci5kZXRhaWxzYmFyIGgyOmFmdGVyLCAuZGV0YWlsc2JhciBoMzphZnRlciB7CiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKfQoKLmRldGFpbHNiYXIgZHQgewogICAgZm9udC12YXJpYW50OiAgIHNtYWxsLWNhcHM7CiAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOwogICAgZm9udC1zaXplOiAgICAgIDEuMWVtOwogICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtOwogICAgY29sb3I6ICAgICAgICAgIHNpbHZlcjsKfQoKLmhpZXJhcmNoeSBkaXY6bnRoLW9mLXR5cGUoMikgeyBtYXJnaW4tbGVmdDogMTFweDsgfQouaGllcmFyY2h5IGRpdjpudGgtb2YtdHlwZSgzKSB7IG1hcmdpbi1sZWZ0OiAyMnB4OyB9Ci5oaWVyYXJjaHkgZGl2Om50aC1vZi10eXBlKDQpIHsgbWFyZ2luLWxlZnQ6IDMzcHg7IH0KLmhpZXJhcmNoeSBkaXY6bnRoLW9mLXR5cGUoNSkgeyBtYXJnaW4tbGVmdDogNDRweDsgfQouaGllcmFyY2h5IGRpdjpudGgtb2YtdHlwZSg2KSB7IG1hcmdpbi1sZWZ0OiA1NXB4OyB9Ci5oaWVyYXJjaHkgZGl2Om50aC1vZi10eXBlKDcpIHsgbWFyZ2luLWxlZnQ6IDY2cHg7IH0KLmhpZXJhcmNoeSBkaXY6bnRoLW9mLXR5cGUoOCkgeyBtYXJnaW4tbGVmdDogNzdweDsgfQouaGllcmFyY2h5IGRpdjpudGgtb2YtdHlwZSg5KSB7IG1hcmdpbi1sZWZ0OiA4OHB4OyB9Ci5oaWVyYXJjaHkgZGl2OmJlZm9yZSB7CiAgICBjb250ZW50OiAiXGYwZGEiOwogICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOwogICAgbWFyZ2luLXJpZ2h0OiA1cHg7Cn0KCi5yb3ctZmx1aWQgewogICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7CiAgICBvdmVyZmxvdzogICAgICAgICBoaWRkZW47Cn0KCmZvb3Rlci5yb3ctZmx1aWQsIGZvb3Rlci5yb3ctZmx1aWQgKiB7CiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzOwogICAgY29sb3I6ICAgICAgICAgICAgd2hpdGU7Cn0KCmZvb3Rlci5yb3ctZmx1aWQgewogICAgYm9yZGVyLXRvcDogMnB4IGRhc2hlZCAjNTU1OwogICAgbWFyZ2luLXRvcDogMnB4Owp9CgouZm9vdGVyLXNlY3Rpb25zIC5zcGFuNCB7CiAgICBib3JkZXI6ICAgICAgICAycHggc29saWQgIzU1NTsKICAgIHRleHQtYWxpZ246ICAgIGNlbnRlcjsKICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7CiAgICBtYXJnaW4tdG9wOiAgICA3MHB4OwogICAgbWFyZ2luLWJvdHRvbTogMjBweDsKICAgIGJhY2tncm91bmQ6ICAgICMzNzM3Mzc7Cn0KCi5mb290ZXItc2VjdGlvbnMgLnNwYW40IGgxIHsKICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgbWFyZ2luLXRvcDogLTMwcHg7CiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OwogICAgZm9udC1zaXplOiAgNWVtOwp9CgouZm9vdGVyLXNlY3Rpb25zIC5zcGFuNCBoMSAqIHsKICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50Owp9CgouZm9vdGVyLXNlY3Rpb25zIC5zcGFuNCBkaXYgewogICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDZweDsKICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDZweDsKICAgIHBhZGRpbmc6IDEwcHg7CiAgICBtaW4taGVpZ2h0OiA0MHB4Owp9Ci5mb290ZXItc2VjdGlvbnMgLnNwYW40IGRpdiwgLmZvb3Rlci1zZWN0aW9ucyAuc3BhbjQgZGl2ICogewogICAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTsKfQouZm9vdGVyLXNlY3Rpb25zIC5zcGFuNCB1bCB7CiAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgbGlzdC1zdHlsZTogbm9uZTsKICAgIG1hcmdpbjogMDsKICAgIHBhZGRpbmc6IDA7Cn0KCi5jb250ZW50IHsKICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOwogICAgcGFkZGluZy1yaWdodDogICAgMjBweDsKfQoKLmNvbnRlbnQgbmF2IHsKICAgIHRleHQtYWxpZ246ICAgICBjZW50ZXI7CiAgICBib3JkZXItYm90dG9tOiAgMXB4IHNvbGlkIHNpbHZlcjsKICAgIG1hcmdpbjogICAgICAgICA1cHggMCAyMHB4IDA7CiAgICBwYWRkaW5nLWJvdHRvbTogNXB4Owp9CgouY29udGVudCA+IGgxIHsKICAgIHBhZGRpbmctYm90dG9tOiAxNXB4Owp9CgouY29udGVudCA+IGgxIHNtYWxsIHsKICAgIGRpc3BsYXk6ICAgICAgICBibG9jazsKICAgIHBhZGRpbmctYm90dG9tOiA4cHg7CiAgICBmb250LXNpemU6ICAgICAgMC42ZW07Cn0KCi5kZXByZWNhdGVkIHsKICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoOwp9CgoubWV0aG9kIHsKICAgIG1hcmdpbi1ib3R0b206IDIwcHg7Cn0KCi5tZXRob2QgLnNpZ25hdHVyZSAuYXJndW1lbnQgewogICAgY29sb3I6ICAgICAgIG1hcm9vbjsKICAgIGZvbnQtd2VpZ2h0OiBib2xkOwp9CgouY2xhc3MgI3N1bW1hcnkgc2VjdGlvbi5yb3ctZmx1aWQgewogICAgb3ZlcmZsb3c6IGhpZGRlbgp9CgouY2xhc3MgI3N1bW1hcnkgLmhlYWRpbmcgewogICAgZm9udC13ZWlnaHQ6IGJvbGQ7CiAgICB0ZXh0LWFsaWduOiAgY2VudGVyOwp9CgouY2xhc3MgI3N1bW1hcnkgc2VjdGlvbiAuc3BhbjQgewogICAgcGFkZGluZzogICAgICAgIDNweDsKICAgIG92ZXJmbG93OiAgICAgICBoaWRkZW47CiAgICBtYXJnaW4tYm90dG9tOiAgLTk5OTlweDsKICAgIHBhZGRpbmctYm90dG9tOiA5OTk5cHg7CiAgICB3aGl0ZS1zcGFjZTogICAgbm93cmFwOwogICAgdGV4dC1vdmVyZmxvdzogIGVsbGlwc2lzOwogICAgYm9yZGVyLWxlZnQ6ICAgIDVweCBzb2xpZCB0cmFuc3BhcmVudDsKfQoKLmNsYXNzICNzdW1tYXJ5IHNlY3Rpb24ucHVibGljIC5zcGFuNDpmaXJzdC1vZi10eXBlOmJlZm9yZSwKLmNsYXNzICNzdW1tYXJ5IHNlY3Rpb24ucHVibGljIC5zcGFuNjpmaXJzdC1vZi10eXBlOmJlZm9yZSwKaDMucHVibGljOmJlZm9yZSB7CiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7CiAgICBjb250ZW50OiAgICAgIlxmMDQ2IjsKICAgIGNvbG9yOiAgICAgICBncmVlbjsKICAgIGRpc3BsYXk6ICAgICBpbmxpbmUtYmxvY2s7CiAgICB3aWR0aDogICAgICAgMS4yZW07Cn0KCi5jbGFzcyAjc3VtbWFyeSBzZWN0aW9uIC5zcGFuNDpmaXJzdC1vZi10eXBlLAouY2xhc3MgI3N1bW1hcnkgc2VjdGlvbiAuc3BhbjY6Zmlyc3Qtb2YtdHlwZSB7CiAgICBwYWRkaW5nLWxlZnQ6IDIxcHg7Cn0KLmNsYXNzICNzdW1tYXJ5IHNlY3Rpb24gLnNwYW40OmZpcnN0LW9mLXR5cGU6YmVmb3JlLAouY2xhc3MgI3N1bW1hcnkgc2VjdGlvbiAuc3BhbjY6Zmlyc3Qtb2YtdHlwZTpiZWZvcmUgewogICAgbWFyZ2luLWxlZnQ6IC0yMXB4Owp9Ci5jbGFzcyAjc3VtbWFyeSBzZWN0aW9uLnByb3RlY3RlZCAuc3BhbjQ6Zmlyc3Qtb2YtdHlwZTpiZWZvcmUsCi5jbGFzcyAjc3VtbWFyeSBzZWN0aW9uLnByb3RlY3RlZCAuc3BhbjY6Zmlyc3Qtb2YtdHlwZTpiZWZvcmUsCmgzLnByb3RlY3RlZDpiZWZvcmUgewogICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lOwogICAgY29udGVudDogICAgICJcZjEzMiI7CiAgICBjb2xvcjogICAgICAgb3JhbmdlOwogICAgZGlzcGxheTogICAgIGlubGluZS1ibG9jazsKICAgIHdpZHRoOiAgICAgICAxLjJlbTsKfQoKLmNsYXNzICNzdW1tYXJ5IHNlY3Rpb24ucHJpdmF0ZSAuc3BhbjQ6Zmlyc3Qtb2YtdHlwZTpiZWZvcmUsCi5jbGFzcyAjc3VtbWFyeSBzZWN0aW9uLnByaXZhdGUgLnNwYW42OmZpcnN0LW9mLXR5cGU6YmVmb3JlLApoMy5wcml2YXRlOmJlZm9yZSB7CiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7CiAgICBjb250ZW50OiAgICAgIlxmMDIzIjsKICAgIGNvbG9yOiAgICAgICByZWQ7CiAgICBkaXNwbGF5OiAgICAgaW5saW5lLWJsb2NrOwogICAgd2lkdGg6ICAgICAgIDEuMmVtOwp9CgouY2xhc3MgI3N1bW1hcnkgc2VjdGlvbiBlbSB7CiAgICBmb250LXNpemU6IDAuOWVtOwogICAgY29sb3I6IHNpbHZlcjsKfQouY2xhc3MgI3N1bW1hcnkgLmluaGVyaXRlZCB7CiAgICBjb2xvcjogICAgICBncmF5OwogICAgZm9udC1zdHlsZTogaXRhbGljOwp9CgouYWNjb3JkaW9uLWdyb3VwIHsKICAgIGJvcmRlcjogbm9uZTsKfQoKLmFjY29yZGlvbiB7CiAgICBtYXJnaW4tYm90dG9tOiAwOwp9CgouYWNjb3JkaW9uIGE6aG92ZXIgewogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgYmFja2dyb3VuZDogICAgICAjMzMzMzMzOwogICAgY29sb3I6ICAgICAgICAgICAjZWVlZWVlOwp9CgouYWNjb3JkaW9uLWhlYWRpbmcgLmFjY29yZGlvbi10b2dnbGU6YmVmb3JlIHsKICAgIGNvbnRlbnQ6ICAgICAgIlxmMDc4IjsKICAgIGZvbnQtZmFtaWx5OiAgRm9udEF3ZXNvbWU7CiAgICBtYXJnaW4tcmlnaHQ6IDVweDsKfQoKLmFjY29yZGlvbi1oZWFkaW5nIC5hY2NvcmRpb24tdG9nZ2xlLmNvbGxhcHNlZDpiZWZvcmUgewogICAgY29udGVudDogIlxmMDU0IjsKfQouYWNjb3JkaW9uLWhlYWRpbmcgLmFjY29yZGlvbi10b2dnbGUgewogICAgZmxvYXQ6IGxlZnQ7CiAgICB3aWR0aDogMTZweDsKICAgIGhlaWdodDogMTZweDsKICAgIHBhZGRpbmc6IDRweCAycHggNHB4IDEycHg7Cn0KLmFjY29yZGlvbi1oZWFkaW5nIGEgewogICAgZGlzcGxheTogYmxvY2s7CiAgICBwYWRkaW5nOiA0cHggMTJweDsKfQoKLmFjY29yZGlvbi1pbm5lciBhIHsKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgcGFkZGluZzogNHB4IDEycHg7Cn0KCi5hY2NvcmRpb24taW5uZXIgPiB1bCBhOmJlZm9yZSB7CiAgICBmb250LWZhbWlseTogJ3BocGRvY3VtZW50b3ItY2xlYW4taWNvbnMnOwogICAgY29udGVudDogICAgICAiXGUwMDEiOwogICAgbWFyZ2luLXJpZ2h0OiA1cHg7Cn0KCi5hY2NvcmRpb24taW5uZXIgbGkuY2xhc3MgYTpiZWZvcmUgewogICAgY29udGVudDogICAgICAiXGUwMDIiOwp9CgouYWNjb3JkaW9uLWlubmVyIGxpLmludGVyZmFjZSBhOmJlZm9yZSB7CiAgICBjb250ZW50OiAgICAgICJcZTAwMSI7Cn0KCi5hY2NvcmRpb24taW5uZXIgbGkudHJhaXQgYTpiZWZvcmUgewogICAgY29udGVudDogICAgICAiXGUwMDAiOwp9CgouYWNjb3JkaW9uLWlubmVyIHsKICAgIHBhZGRpbmc6IDRweCAwIDRweCAxMnB4Owp9Ci5hY2NvcmRpb24taW5uZXIgdWwgewogICAgbGlzdC1zdHlsZTogbm9uZTsKICAgIHBhZGRpbmc6ICAgIDA7CiAgICBtYXJnaW46ICAgICAwOwp9Cgoucm93LWZsdWlkIC5zcGFuMiB7CiAgICB3aWR0aDogMTYuNSU7Cn0KCmJvZHkgLm1vZGFsIHsKICAgIHdpZHRoOiA5MCU7IC8qIGRlc2lyZWQgcmVsYXRpdmUgd2lkdGggKi8KICAgIGxlZnQ6IDUlOyAvKiAoMTAwJS13aWR0aCkvMiAqLwogICAgLyogcGxhY2UgY2VudGVyICovCiAgICBtYXJnaW4tbGVmdDphdXRvOwogICAgbWFyZ2luLXJpZ2h0OmF1dG87Cn0KCi5zaWRlLW5hdi5uYXYtbGlzdCBsaSBhIHsKICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7Cn0KCkBtZWRpYSAobWluLXdpZHRoOiA3NjdweCkgewogICAgLnNpZGViYXIgewogICAgICAgIHBvc2l0aW9uOiAgICAgICAgIGZpeGVkOwogICAgICAgIHRvcDogICAgICAgICAgICAgIDQwcHg7CiAgICAgICAgYm90dG9tOiAgICAgICAgICAgMDsKICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzOwogICAgICAgIGxlZnQ6ICAgICAgICAgICAgIDA7CiAgICAgICAgYm9yZGVyLXJpZ2h0OiAgICAgMXB4IHNvbGlkICNlOWU5ZTk7CiAgICAgICAgb3ZlcmZsb3cteTogICAgICAgc2Nyb2xsOwogICAgICAgIG92ZXJmbG93LXg6ICAgICAgIGhpZGRlbjsKICAgICAgICBwYWRkaW5nLXRvcDogICAgICAxMHB4OwogICAgfQoKICAgIC5zaWRlYmFyOjotd2Via2l0LXNjcm9sbGJhciB7CiAgICAgICAgd2lkdGg6IDEwcHg7CiAgICB9CgogICAgLnNpZGViYXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsKICAgICAgICBiYWNrZ3JvdW5kOiAgICAgICNjY2NjY2M7CiAgICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsKICAgICAgICBib3JkZXI6ICAgICAgICAgIDNweCBzb2xpZCAjZjNmM2YzOwogICAgICAgIGJvcmRlci1yYWRpdXM6ICAgNXB4OwogICAgfQoKICAgIC5zaWRlYmFyOjotd2Via2l0LXNjcm9sbGJhci1idXR0b24gewogICAgICAgIGRpc3BsYXk6IG5vbmU7CiAgICB9CgogICAgLnNpZGViYXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsKICAgICAgICBiYWNrZ3JvdW5kOiAjZjNmM2YzOwogICAgfQp9CgpAbWVkaWEgKG1heC13aWR0aDogOTc5cHgpIHsKICAgIGJvZHkgewogICAgICAgIHBhZGRpbmctdG9wOiAwOwogICAgfQp9CgpAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHsKICAgIC5jbGFzcyAjc3VtbWFyeSAuaGVhZGluZyB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgIH0KCiAgICAuZGV0YWlsc2JhciBoMSB7CiAgICAgICAgZGlzcGxheTogbm9uZTsKICAgIH0KCiAgICBib2R5IHsKICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsKICAgIH0KCiAgICBmb290ZXIucm93LWZsdWlkLCBmb290ZXIucm93LWZsdWlkICogewogICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOwogICAgfQoKICAgIC5mb290ZXItc2VjdGlvbnMgLnNwYW40IGgxIHsKICAgICAgICBjb2xvcjogI2NjY2NkOTsKICAgICAgICBtYXJnaW4tdG9wOiAwOwogICAgfQoKICAgIC5kZXRhaWxzYmFyIHsKICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsKICAgICAgICBjb2xvcjogIzMzMzsKICAgICAgICBib3JkZXI6IG5vbmU7CiAgICB9CgogICAgLnJvdy1mbHVpZCAuc3BhbjIgewogICAgICAgIHdpZHRoOiAxMDAlOwogICAgfQp9CgpAbWVkaWEgKG1pbi13aWR0aDogNzY3cHgpIHsKICAgIC5kZXRhaWxzYmFyIHsKICAgICAgICBtaW4taGVpZ2h0OiAgICAgMTAwJTsKICAgICAgICBtYXJnaW4tYm90dG9tOiAgLTk5OTk5cHg7CiAgICAgICAgcGFkZGluZy1ib3R0b206IDk5OTk5cHg7CiAgICAgICAgcGFkZGluZy1sZWZ0OiAgIDIwcHg7CiAgICAgICAgcGFkZGluZy10b3A6ICAgIDEwcHg7CiAgICB9Cn0KCkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHsKICAgIC5yb3ctZmx1aWQgLnNwYW4yIHsKICAgICAgICB3aWR0aDogMTYuNSU7CiAgICB9Cn0K]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/files/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/files/FrontEndUsers.module.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT5Gcm9udEVuZFVzZXJzIDIuMy4xPC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImF1dGhvciIgY29udGVudD0iIi8+CiAgICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iIi8+CgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2Jvb3RzdHJhcC1jb21iaW5lZC5uby1pY29ucy5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL3ByaXNtLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICA8bGluayBocmVmPSIuLi9jc3MvdGVtcGxhdGUuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIAogICAgPCEtLVtpZiBsdCBJRSA5XT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9odG1sNS5qcyI+PC9zY3JpcHQ+CiAgICA8IVtlbmRpZl0tLT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9qcXVlcnktMS4xMS4wLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvdWkvMS4xMC40L2pxdWVyeS11aS5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS5zbW9vdGgtc2Nyb2xsLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9wcmlzbS5taW4uanMiPjwvc2NyaXB0PgogICAgPCEtLSBUT0RPOiBBZGQgaHR0cDovL2pzY3JvbGxwYW5lLmtlbHZpbmx1Y2suY29tLyB0byBzdHlsZSB0aGUgc2Nyb2xsYmFycyBmb3IgYnJvd3NlcnMgbm90IHVzaW5nIHdlYmtpdC0tPgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgICAgICBmdW5jdGlvbiBsb2FkRXh0ZXJuYWxDb2RlU25pcHBldHMoKSB7CiAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3ByZVtkYXRhLXNyY10nKSkuZm9yRWFjaChmdW5jdGlvbiAocHJlKSB7CiAgICAgICAgICAgICAgICB2YXIgc3JjID0gcHJlLmdldEF0dHJpYnV0ZSgnZGF0YS1zcmMnKTsKICAgICAgICAgICAgICAgIHZhciBleHRlbnNpb24gPSAoc3JjLm1hdGNoKC9cLihcdyspJC8pIHx8IFssICcnXSlbMV07CiAgICAgICAgICAgICAgICB2YXIgbGFuZ3VhZ2UgPSAncGhwJzsKCiAgICAgICAgICAgICAgICB2YXIgY29kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NvZGUnKTsKICAgICAgICAgICAgICAgIGNvZGUuY2xhc3NOYW1lID0gJ2xhbmd1YWdlLScgKyBsYW5ndWFnZTsKCiAgICAgICAgICAgICAgICBwcmUudGV4dENvbnRlbnQgPSAnJzsKCiAgICAgICAgICAgICAgICBjb2RlLnRleHRDb250ZW50ID0gJ0xvYWRpbmfigKYnOwoKICAgICAgICAgICAgICAgIHByZS5hcHBlbmRDaGlsZChjb2RlKTsKCiAgICAgICAgICAgICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CgogICAgICAgICAgICAgICAgeGhyLm9wZW4oJ0dFVCcsIHNyYywgdHJ1ZSk7CgogICAgICAgICAgICAgICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT0gNCkgewoKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHhoci5zdGF0dXMgPCA0MDAgJiYgeGhyLnJlc3BvbnNlVGV4dCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9IHhoci5yZXNwb25zZVRleHQ7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpc20uaGlnaGxpZ2h0RWxlbWVudChjb2RlKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICh4aHIuc3RhdHVzID49IDQwMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9ICfinJYgRXJyb3IgJyArIHhoci5zdGF0dXMgKyAnIHdoaWxlIGZldGNoaW5nIGZpbGU6ICcgKyB4aHIuc3RhdHVzVGV4dDsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAn4pyWIEVycm9yOiBGaWxlIGRvZXMgbm90IGV4aXN0IG9yIGlzIGVtcHR5JzsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH07CgogICAgICAgICAgICAgICAgeGhyLnNlbmQobnVsbCk7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsKICAgICAgICAgICAgbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCk7CiAgICAgICAgfSk7CiAgICAgICAgJCgnI3NvdXJjZS12aWV3Jykub24oJ3Nob3duJywgZnVuY3Rpb24gKCkgewogICAgICAgICAgICBsb2FkRXh0ZXJuYWxDb2RlU25pcHBldHMoKTsKICAgICAgICB9KQogICAgPC9zY3JpcHQ+CgogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIuLi9pbWFnZXMvZmF2aWNvbi5pY28iLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24ucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSI3Mng3MiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24tNzJ4NzIucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxMTR4MTE0IiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi0xMTR4MTE0LnBuZyIvPgo8L2hlYWQ+Cjxib2R5PgoKPGRpdiBjbGFzcz0ibmF2YmFyIG5hdmJhci1maXhlZC10b3AiPgogICAgPGRpdiBjbGFzcz0ibmF2YmFyLWlubmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8YSBjbGFzcz0iYnRuIGJ0bi1uYXZiYXIiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9Ii5uYXYtY29sbGFwc2UiPgogICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tZWxsaXBzaXMtdmVydGljYWwiPjwvaT4KICAgICAgICAgICAgPC9hPgogICAgICAgICAgICA8YSBjbGFzcz0iYnJhbmQiIGhyZWY9Ii4uL2luZGV4Lmh0bWwiPkZyb250RW5kVXNlcnMgMi4zLjE8L2E+CgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtY29sbGFwc2UiPgogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgcHVsbC1yaWdodCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIiBpZD0iY2hhcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hhcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0NsYXNzIGhpZXJhcmNoeSBkaWFncmFtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJyZXBvcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVwb3J0cyA8YiBjbGFzcz0iY2FyZXQiPjwvYj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0Vycm9ycyA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij4xMDY8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9yZXBvcnRzL21hcmtlcnMuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7TWFya2VycyA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij4wPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vcmVwb3J0cy9kZXByZWNhdGVkLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtEZXByZWNhdGVkIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjE8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIDwhLS08ZGl2IGNsYXNzPSJnb190b190b3AiPi0tPgogICAgPCEtLTxhIGhyZWY9IiNfX18iIHN0eWxlPSJjb2xvcjogaW5oZXJpdCI+QmFjayB0byB0b3AmIzE2MDsmIzE2MDs8aSBjbGFzcz0iaWNvbi11cGxvYWQgaWNvbi13aGl0ZSI+PC9pPjwvYT4tLT4KICAgIDwhLS08L2Rpdj4tLT4KPC9kaXY+Cgo8ZGl2IGlkPSJfX18iIGNsYXNzPSJjb250YWluZXItZmx1aWQiPgogICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW4yIHNpZGViYXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbiIgc3R5bGU9Im1hcmdpbi1ib3R0b206IDAiPgogICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1ncm91cCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1oZWFkaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9ImFjY29yZGlvbi10b2dnbGUgIiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjbmFtZXNwYWNlLTE5NjI1MDEwNTIiPjwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9uYW1lc3BhY2VzL2RlZmF1bHQuaHRtbCIgc3R5bGU9Im1hcmdpbi1sZWZ0OiAzMHB4OyBwYWRkaW5nLWxlZnQ6IDAiPlw8L2E+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGlkPSJuYW1lc3BhY2UtMTk2MjUwMTA1MiIgY2xhc3M9ImFjY29yZGlvbi1ib2R5IGNvbGxhcHNlIGluIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1pbm5lciI+CgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCI+ZmV1X3VzZXJfcXVlcnk8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfb3B0Lmh0bWwiPmZldV91c2VyX3F1ZXJ5X29wdDwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGFzcyI+PGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQuaHRtbCI+ZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCI+RnJvbnRFbmRVc2VyczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CiAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuMTAgb2Zmc2V0MiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGZpbGUiPgogICAgICAgICAgICAgICAgICAgIDxuYXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uYXY+CgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgICAgICA8aDE+PHNtYWxsPjwvc21hbGw+RnJvbnRFbmRVc2Vycy5tb2R1bGUucGhwPC9oMT4KICAgICAgICAgICAgICAgICAgICA8cD48ZW0+VGhpcyBmaWxlIGRlZmluZXMgdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGNsYXNzLjwvZW0+PC9wPgogICAgICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMj5DbGFzc2VzPC9oMj4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwiPkZyb250RW5kVXNlcnM8L2E+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48ZW0+VGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLCBiZXNpZGVzIGJlaW5nIGEgbW9kdWxlIHRvIHByb3ZpZGUgYXV0aGVudGljYXRpb24gc2VydmljZXMgdG8gdGhlIGZyb250ZW5kIG9mIGEgQ01TTVMgd2Vic2l0ZSBhbHNvIGhhcyBhIGNvbXBsZXRlCmFuZCBmbGV4aWJsZSBBUEkuPC9lbT48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+UGFja2FnZTwvZHQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGQ+PGRpdiBjbGFzcz0ibmFtZXNwYWNlLXdyYXBwZXIiPlxGcm9udEVuZFVzZXJzPC9kaXY+PC9kZD4KICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgoKICAgICAgICAgICAgICAgIDwvYXNpZGU+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgCiAgICAgICAgICAgIAogICAgICAgIDwvZGl2PgogICAgPC9zZWN0aW9uPgoKICAgIDxkaXYgaWQ9InNvdXJjZS12aWV3IiBjbGFzcz0ibW9kYWwgaGlkZSBmYWRlIiB0YWJpbmRleD0iLTEiIHJvbGU9ImRpYWxvZyIgYXJpYS1sYWJlbGxlZGJ5PSJzb3VyY2Utdmlldy1sYWJlbCIgYXJpYS1oaWRkZW49InRydWUiPgogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+CiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iY2xvc2UiIGRhdGEtZGlzbWlzcz0ibW9kYWwiIGFyaWEtaGlkZGVuPSJ0cnVlIj7DlzwvYnV0dG9uPgogICAgICAgICAgICA8aDMgaWQ9InNvdXJjZS12aWV3LWxhYmVsIj48L2gzPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPgogICAgICAgICAgICA8cHJlIGRhdGEtc3JjPSIuLi9maWxlcy9Gcm9udEVuZFVzZXJzLm1vZHVsZS5waHAudHh0IiBjbGFzcz0ibGFuZ3VhZ2UtcGhwIGxpbmUtbnVtYmVycyI+PC9wcmU+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICA8Zm9vdGVyIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuMTAgb2Zmc2V0MiI+CiAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQxIj4KICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIGZvb3Rlci1zZWN0aW9ucyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWJhci1jaGFydCI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL2dyYXBocy9jbGFzcy5odG1sIj5DbGFzcyBIaWVyYXJjaHkgRGlhZ3JhbTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1wdXNocGluIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vcmVwb3J0cy9lcnJvcnMuaHRtbCI+RXJyb3JzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9yZXBvcnRzL21hcmtlcnMuaHRtbCI+TWFya2VyczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuMTAgb2Zmc2V0MSI+CiAgICAgICAgICAgICAgICAgICAgPGhyIC8+CiAgICAgICAgICAgICAgICAgICAgRG9jdW1lbnRhdGlvbiBpcyBwb3dlcmVkIGJ5IDxhIGhyZWY9Imh0dHA6Ly93d3cucGhwZG9jLm9yZy8iPnBocERvY3VtZW50b3IgPC9hPiBhbmQgYXV0aG9yZWQKICAgICAgICAgICAgICAgICAgICBvbiBGZWJydWFyeSAxMnRoLCAyMDE3IGF0IDA5OjQ1LgogICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgPC9zZWN0aW9uPgogICAgPC9mb290ZXI+CjwvZGl2PgoKPC9ib2R5Pgo8L2h0bWw+Cg==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/files/FrontEndUsers.module.php.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT5Gcm9udEVuZFVzZXJzIDIuMzwvdGl0bGU+CiAgICA8bWV0YSBuYW1lPSJhdXRob3IiIGNvbnRlbnQ9IiIvPgogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IiIvPgoKICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vbmV0ZG5hLmJvb3RzdHJhcGNkbi5jb20vdHdpdHRlci1ib290c3RyYXAvMi4zLjIvY3NzL2Jvb3RzdHJhcC1jb21iaW5lZC5uby1pY29ucy5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9uZXRkbmEuYm9vdHN0cmFwY2RuLmNvbS9mb250LWF3ZXNvbWUvMy4yLjEvY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL3ByaXNtLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICA8bGluayBocmVmPSIuLi9jc3MvdGVtcGxhdGUuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIAogICAgPCEtLVtpZiBsdCBJRSA5XT4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2h0bWw1c2hpbS5nb29nbGVjb2RlLmNvbS9zdm4vdHJ1bmsvaHRtbDUuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgICA8IVtlbmRpZl0tLT4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2NvZGUuanF1ZXJ5LmNvbS9qcXVlcnktMS4xMC4yLm1pbi5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2NvZGUuanF1ZXJ5LmNvbS91aS8xLjEwLjMvanF1ZXJ5LXVpLm1pbi5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL25ldGRuYS5ib290c3RyYXBjZG4uY29tL3R3aXR0ZXItYm9vdHN0cmFwLzIuMy4yL2pzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS5zbW9vdGgtc2Nyb2xsLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9wcmlzbS5taW4uanMiPjwvc2NyaXB0PgogICAgPCEtLSBUT0RPOiBBZGQgaHR0cDovL2pzY3JvbGxwYW5lLmtlbHZpbmx1Y2suY29tLyB0byBzdHlsZSB0aGUgc2Nyb2xsYmFycyBmb3IgYnJvd3NlcnMgbm90IHVzaW5nIHdlYmtpdC0tPgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgICAgICBmdW5jdGlvbiBsb2FkRXh0ZXJuYWxDb2RlU25pcHBldHMoKSB7CiAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3ByZVtkYXRhLXNyY10nKSkuZm9yRWFjaChmdW5jdGlvbiAocHJlKSB7CiAgICAgICAgICAgICAgICB2YXIgc3JjID0gcHJlLmdldEF0dHJpYnV0ZSgnZGF0YS1zcmMnKTsKICAgICAgICAgICAgICAgIHZhciBleHRlbnNpb24gPSAoc3JjLm1hdGNoKC9cLihcdyspJC8pIHx8IFssICcnXSlbMV07CiAgICAgICAgICAgICAgICB2YXIgbGFuZ3VhZ2UgPSAncGhwJzsKCiAgICAgICAgICAgICAgICB2YXIgY29kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NvZGUnKTsKICAgICAgICAgICAgICAgIGNvZGUuY2xhc3NOYW1lID0gJ2xhbmd1YWdlLScgKyBsYW5ndWFnZTsKCiAgICAgICAgICAgICAgICBwcmUudGV4dENvbnRlbnQgPSAnJzsKCiAgICAgICAgICAgICAgICBjb2RlLnRleHRDb250ZW50ID0gJ0xvYWRpbmfigKYnOwoKICAgICAgICAgICAgICAgIHByZS5hcHBlbmRDaGlsZChjb2RlKTsKCiAgICAgICAgICAgICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CgogICAgICAgICAgICAgICAgeGhyLm9wZW4oJ0dFVCcsIHNyYywgdHJ1ZSk7CgogICAgICAgICAgICAgICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT0gNCkgewoKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHhoci5zdGF0dXMgPCA0MDAgJiYgeGhyLnJlc3BvbnNlVGV4dCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9IHhoci5yZXNwb25zZVRleHQ7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpc20uaGlnaGxpZ2h0RWxlbWVudChjb2RlKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICh4aHIuc3RhdHVzID49IDQwMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9ICfinJYgRXJyb3IgJyArIHhoci5zdGF0dXMgKyAnIHdoaWxlIGZldGNoaW5nIGZpbGU6ICcgKyB4aHIuc3RhdHVzVGV4dDsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAn4pyWIEVycm9yOiBGaWxlIGRvZXMgbm90IGV4aXN0IG9yIGlzIGVtcHR5JzsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH07CgogICAgICAgICAgICAgICAgeGhyLnNlbmQobnVsbCk7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsKICAgICAgICAgICAgbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCk7CiAgICAgICAgfSk7CiAgICAgICAgJCgnI3NvdXJjZS12aWV3Jykub24oJ3Nob3duJywgZnVuY3Rpb24gKCkgewogICAgICAgICAgICBsb2FkRXh0ZXJuYWxDb2RlU25pcHBldHMoKTsKICAgICAgICB9KQogICAgPC9zY3JpcHQ+CgogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIuLi9pbWFnZXMvZmF2aWNvbi5pY28iLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24ucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSI3Mng3MiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24tNzJ4NzIucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxMTR4MTE0IiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi0xMTR4MTE0LnBuZyIvPgo8L2hlYWQ+Cjxib2R5PgoKPGRpdiBjbGFzcz0ibmF2YmFyIG5hdmJhci1maXhlZC10b3AiPgogICAgPGRpdiBjbGFzcz0ibmF2YmFyLWlubmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8YSBjbGFzcz0iYnRuIGJ0bi1uYXZiYXIiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9Ii5uYXYtY29sbGFwc2UiPgogICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tZWxsaXBzaXMtdmVydGljYWwiPjwvaT4KICAgICAgICAgICAgPC9hPgogICAgICAgICAgICA8YSBjbGFzcz0iYnJhbmQiIGhyZWY9Ii4uL2luZGV4Lmh0bWwiPkZyb250RW5kVXNlcnMgMi4zPC9hPgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWNvbGxhcHNlIj4KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IHB1bGwtcmlnaHQiPgogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9pbmRleC5odG1sIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgQVBJIERvY3VtZW50YXRpb24gPGIgY2xhc3M9ImNhcmV0Ij48L2I+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIiBpZD0iY2hhcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hhcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0NsYXNzIGhpZXJhcmNoeSBkaWFncmFtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJyZXBvcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVwb3J0cyA8YiBjbGFzcz0iY2FyZXQiPjwvYj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0Vycm9ycyA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij45ODwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtNYXJrZXJzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIDwhLS08ZGl2IGNsYXNzPSJnb190b190b3AiPi0tPgogICAgPCEtLTxhIGhyZWY9IiNfX18iIHN0eWxlPSJjb2xvcjogaW5oZXJpdCI+QmFjayB0byB0b3AmIzE2MDsmIzE2MDs8aSBjbGFzcz0iaWNvbi11cGxvYWQgaWNvbi13aGl0ZSI+PC9pPjwvYT4tLT4KICAgIDwhLS08L2Rpdj4tLT4KPC9kaXY+Cgo8ZGl2IGlkPSJfX18iIGNsYXNzPSJjb250YWluZXItZmx1aWQiPgogICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW4yIHNpZGViYXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbiIgc3R5bGU9Im1hcmdpbi1ib3R0b206IDAiPgogICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1ncm91cCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1oZWFkaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9ImFjY29yZGlvbi10b2dnbGUgIiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjbmFtZXNwYWNlLTg1NzQwNzQwOSI+PC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL25hbWVzcGFjZXMvZGVmYXVsdC5odG1sIiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDMwcHg7IHBhZGRpbmctbGVmdDogMCI+XDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgaWQ9Im5hbWVzcGFjZS04NTc0MDc0MDkiIGNsYXNzPSJhY2NvcmRpb24tYm9keSBjb2xsYXBzZSBpbiI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhY2NvcmRpb24taW5uZXIiPgoKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X29wdC5odG1sIj5mZXVfdXNlcl9xdWVyeV9vcHQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCI+ZmV1X3VzZXJfcXVlcnk8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sIj5Gcm9udEVuZFVzZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5odG1sIj5mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgICAgIDwvZGl2PgogICAgPC9zZWN0aW9uPgogICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjEwIG9mZnNldDIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBmaWxlIj4KICAgICAgICAgICAgICAgICAgICA8bmF2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmF2PgoKICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICAgICAgPGgxPjxzbWFsbD48L3NtYWxsPkZyb250RW5kVXNlcnMubW9kdWxlLnBocDwvaDE+CiAgICAgICAgICAgICAgICAgICAgPHA+PGVtPlRoaXMgZmlsZSBkZWZpbmVzIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBjbGFzcy48L2VtPjwvcD4KICAgICAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDI+Q2xhc3NlczwvaDI+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sIj5Gcm9udEVuZFVzZXJzPC9hPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGVtPlRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSwgYmVzaWRlcyBiZWluZyBhIG1vZHVsZSB0byBwcm92aWRlIGF1dGhlbnRpY2F0aW9uIHNlcnZpY2VzIHRvIHRoZSBmcm9udGVuZCBvZiBhIENNU01TIHdlYnNpdGUgYWxzbyBoYXMgYSBjb21wbGV0ZQphbmQgZmxleGlibGUgQVBJLjwvZW0+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CgogICAgICAgICAgICAgICAgPC9hc2lkZT4KICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAKICAgICAgICAgICAgCiAgICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CgogICAgPGRpdiBpZD0ic291cmNlLXZpZXciIGNsYXNzPSJtb2RhbCBoaWRlIGZhZGUiIHRhYmluZGV4PSItMSIgcm9sZT0iZGlhbG9nIiBhcmlhLWxhYmVsbGVkYnk9InNvdXJjZS12aWV3LWxhYmVsIiBhcmlhLWhpZGRlbj0idHJ1ZSI+CiAgICAgICAgPGRpdiBjbGFzcz0ibW9kYWwtaGVhZGVyIj4KICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJjbG9zZSIgZGF0YS1kaXNtaXNzPSJtb2RhbCIgYXJpYS1oaWRkZW49InRydWUiPsOXPC9idXR0b24+CiAgICAgICAgICAgIDxoMyBpZD0ic291cmNlLXZpZXctbGFiZWwiPjwvaDM+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibW9kYWwtYm9keSI+CiAgICAgICAgICAgIDxwcmUgZGF0YS1zcmM9Ii4uL2ZpbGVzL0Zyb250RW5kVXNlcnMubW9kdWxlLnBocC50eHQiIGNsYXNzPSJsYW5ndWFnZS1waHAgbGluZS1udW1iZXJzIj48L3ByZT4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgIDxmb290ZXIgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQyIj4KICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDEiPgogICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQgZm9vdGVyLXNlY3Rpb25zIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYmFyLWNoYXJ0Ij48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPkNsYXNzIEhpZXJhcmNoeSBEaWFncmFtPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLXB1c2hwaW4iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9yZXBvcnRzL2Vycm9ycy5odG1sIj5FcnJvcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj5NYXJrZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQxIj4KICAgICAgICAgICAgICAgICAgICA8aHIgLz4KICAgICAgICAgICAgICAgICAgICBEb2N1bWVudGF0aW9uIGlzIHBvd2VyZWQgYnkgPGEgaHJlZj0iaHR0cDovL3d3dy5waHBkb2Mub3JnLyI+cGhwRG9jdW1lbnRvciA8L2E+IGFuZCBhdXRob3JlZAogICAgICAgICAgICAgICAgICAgIG9uIEphbnVhcnkgMjJuZCwgMjAxNyBhdCAwODowOS4KICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgIDwvc2VjdGlvbj4KICAgIDwvZm9vdGVyPgo8L2Rpdj4KCjwvYm9keT4KPC9odG1sPgo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/files/FrontEndUsers.module.php.txt</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNiBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovKioKICogVGhpcyBmaWxlIGRlZmluZXMgdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGNsYXNzLgogKgogKiBAcGFja2FnZSBGcm9udEVuZFVzZXJzCiAqLwoKLyoqCiAqIFRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSwgYmVzaWRlcyBiZWluZyBhIG1vZHVsZSB0byBwcm92aWRlIGF1dGhlbnRpY2F0aW9uIHNlcnZpY2VzIHRvIHRoZSBmcm9udGVuZCBvZiBhIENNU01TIHdlYnNpdGUgYWxzbyBoYXMgYSBjb21wbGV0ZQogKiBhbmQgZmxleGlibGUgQVBJLgogKgogKiBAcGFja2FnZSBGcm9udEVuZFVzZXJzCiAqLwpmaW5hbCBjbGFzcyBGcm9udEVuZFVzZXJzIGV4dGVuZHMgQ0dFeHRlbnNpb25zCnsKICAgIC8qKgogICAgICogQ29uc3RhbnQgdG8gaW5kZW50aWZ5IGEgdGV4dCBwcm9wZXJ0eS4KICAgICAqLwogICAgY29uc3QgRklFTERUWVBFX1RFWFQgPSAwOwoKICAgIC8qKgogICAgICogQ29uc3RhbnQgdG8gaW5kZW50aWZ5IGEgY2hlY2tib3ggcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9DSEVDS0JPWCA9IDE7CgogICAgLyoqCiAgICAgKiBDb25zdGFudCB0byBpbmRlbnRpZnkgYW4gZW1haWwgcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9FTUFJTCA9IDI7CgogICAgLyoqCiAgICAgKiBDb25zdGFudCB0byBpbmRlbnRpZnkgYSB0ZXh0YXJlYSBwcm9wZXJ0eS4KICAgICAqLwogICAgY29uc3QgRklFTERUWVBFX1RFWFRBUkVBID0gMzsKCiAgICAvKioKICAgICAqIENvbnN0YW50IHRvIGluZGVudGlmeSBhIGRyb3Bkb3duIHByb3BlcnR5LgogICAgICovCiAgICBjb25zdCBGSUVMRFRZUEVfRFJPUERPV04gPSA0OwoKICAgIC8qKgogICAgICogQ29uc3RhbnQgdG8gaW5kZW50aWZ5IGEgbXVsdGlzZWxlY3QgcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9NVUxUSVNFTEVDVCA9IDU7CgogICAgLyoqCiAgICAgKiBDb25zdGFudCB0byBpbmRlbnRpZnkgYW4gaW1hZ2UgcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9JTUFHRSA9IDY7CgogICAgLyoqCiAgICAgKiBDb25zdGFudCB0byBpbmRlbnRpZnkgYSByYWRpbyBidXR0b24gZ3JvdXAgcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9SQURJT0JVVE5TID0gNzsKCiAgICAvKioKICAgICAqIENvbnN0YW50IHRvIGluZGVudGlmeSBhIGRhdGUgcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9EQVRFID0gODsKCiAgICAvKioKICAgICAqIENvbnN0YW50IHRvIGluZGVudGlmeSBhIGRhdGEgcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9EQVRBID0gOTsKCiAgICAvKioKICAgICAqIEhvdyBtYW55IHNlY29uZHMgb2YgaW5hY3Rpdml0eSBiZWZvcmUgYSB1c2VyIGlzIGF1dG9tYXRpY2FsbHkgbG9nZ2VkIG91dC4KICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgcHJvdGVjdGVkICRleHBpcnl0aW1lOwoKICAgIC8qKgogICAgICogU2V0IHRoaXMgdG8gdHJ1ZSBpZiB1c2VyIHNob3VsZCBiZSByZWRpcmVjdGVkIHRvIGRlZmF1bHQgcGFnZSBhZnRlciBsb2dnaW5nIGluL291dC4KICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgcHJvdGVjdGVkICRsb2dpbnRhcmdldDsKCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgcHJvdGVjdGVkICRvdGhlcmludGFyZ2V0OwoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBwcm90ZWN0ZWQgJGxvZ291dHRhcmdldDsKCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgcHJvdGVjdGVkICRvdGhlcm91dHRhcmdldDsKCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgcHJvdGVjdGVkICRhbGxvd3VzZXJhZG1pbjsKCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgcHJvdGVjdGVkICRlbmFibGVlbWFpbHB3OwoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBwcm90ZWN0ZWQgJGxhbmc9IiI7CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIHByaXZhdGUgJHVzZXJtYW5pcCA9IGZhbHNlOwoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBwcm90ZWN0ZWQgJHR5cGVzID0gZmFsc2U7CgoKICAgIC8qKgogICAgICogQ29uc3RydWN0b3IKICAgICAqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpCiAgICB7CiAgICAgICAgcGFyZW50OjpfX2NvbnN0cnVjdCgpOwogICAgICAgICR0aGlzLT50eXBlcyA9IFsgJ3RleHQnID0+IHNlbGY6OkZJRUxEVFlQRV9URVhULAogICAgICAgICAgICAgICAgICAgICAgICAgJ2NoZWNrYm94JyA9PiBzZWxmOjpGSUVMRFRZUEVfQ0hFQ0tCT1gsCiAgICAgICAgICAgICAgICAgICAgICAgICAnZW1haWwnID0+IHNlbGY6OkZJRUxEVFlQRV9FTUFJTCwKICAgICAgICAgICAgICAgICAgICAgICAgICd0ZXh0YXJlYScgPT4gc2VsZjo6RklFTERUWVBFX1RFWFRBUkVBLAogICAgICAgICAgICAgICAgICAgICAgICAgJ2Ryb3Bkb3duJyA9PiBzZWxmOjpGSUVMRFRZUEVfRFJPUERPV04sCiAgICAgICAgICAgICAgICAgICAgICAgICAnbXVsdGlzZWxlY3QnID0+IHNlbGY6OkZJRUxEVFlQRV9NVUxUSVNFTEVDVCwKICAgICAgICAgICAgICAgICAgICAgICAgICdpbWFnZScgPT4gc2VsZjo6RklFTERUWVBFX0lNQUdFLAogICAgICAgICAgICAgICAgICAgICAgICAgJ3JhZGlvYnV0dG9ucycgPT4gc2VsZjo6RklFTERUWVBFX1JBRElPQlVUTlMsCiAgICAgICAgICAgICAgICAgICAgICAgICAnZGF0ZScgPT4gc2VsZjo6RklFTERUWVBFX0RBVEUsCiAgICAgICAgICAgICAgICAgICAgICAgICAnZGF0YScgPT4gc2VsZjo6RklFTERUWVBFX0RBVEEgXTsKCiAgICAgICAgZ2xvYmFsICRDTVNfQURNSU5fUEFHRTsKICAgICAgICBpZiggIWlzc2V0KCRDTVNfQURNSU5fUEFHRSkgKSB7CiAgICAgICAgICAgICRzbWFydHkgPSBTbWFydHlfQ01TOjpnZXRfaW5zdGFuY2UoKTsKICAgICAgICAgICAgaWYoICEkc21hcnR5ICkgcmV0dXJuOwogICAgICAgICAgICAkc21hcnR5LT5yZWdpc3RlckNsYXNzKCdmZXVfc21hcnR5JywnZmV1X3NtYXJ0eScpOwogICAgICAgICAgICAkc21hcnR5LT5yZWdpc3RlclBsdWdpbignYmxvY2snLCdmZXVfcHJvdGVjdCcsJ2ZldV9zbWFydHlfcGx1Z2luczo6ZmV1X3Byb3RlY3QnKTsKICAgICAgICB9CiAgICAgICAgJHRoaXMtPkFkZEltYWdlRGlyKCdpY29ucycpOwoKICAgICAgICAkY29udGVudG9wcyA9IENvbnRlbnRPcGVyYXRpb25zOjpnZXRfaW5zdGFuY2UoKTsKCiAgICAgICAgJG9iaiA9IG5ldyBDbXNDb250ZW50VHlwZVBsYWNlaG9sZGVyKCk7CiAgICAgICAgJG9iai0+Y2xhc3MgPSAnZmV1X3Byb3RlY3RlZF9wYWdlJzsKICAgICAgICAkb2JqLT50eXBlICA9IHN0cnRvbG93ZXIoJG9iai0+Y2xhc3MpOwogICAgICAgICRvYmotPmZpbGVuYW1lID0gX19ESVJfXy4nL2xpYi9jbGFzcy5mZXVfcHJvdGVjdGVkX3BhZ2UucGhwJzsKICAgICAgICAkb2JqLT5sb2FkZWQgPSBmYWxzZTsKICAgICAgICAkb2JqLT5mcmllbmRseW5hbWUgPSAkdGhpcy0+TGFuZygnZmV1X3Byb3RlY3RlZF9wYWdlJyk7CiAgICAgICAgJGNvbnRlbnRvcHMtPnJlZ2lzdGVyX2NvbnRlbnRfdHlwZSgkb2JqKTsKCiAgICAgICAgJG9iaiA9IG5ldyBDbXNDb250ZW50VHlwZVBsYWNlaG9sZGVyKCk7CiAgICAgICAgJG9iai0+Y2xhc3MgPSAnZmV1X3Byb3RlY3RlZF9zZWN0aW9uaGVhZCc7CiAgICAgICAgJG9iai0+dHlwZSAgPSBzdHJ0b2xvd2VyKCRvYmotPmNsYXNzKTsKICAgICAgICAkb2JqLT5maWxlbmFtZSA9IF9fRElSX18uJy9saWIvY2xhc3MuZmV1X3Byb3RlY3RlZF9zZWN0aW9uaGVhZGVyLnBocCc7CiAgICAgICAgJG9iai0+bG9hZGVkID0gZmFsc2U7CiAgICAgICAgJG9iai0+ZnJpZW5kbHluYW1lID0gJHRoaXMtPkxhbmcoJ2ZldV9wcm90ZWN0ZWRfc2VjdGlvbmhlYWQnKTsKICAgICAgICAkY29udGVudG9wcy0+cmVnaXN0ZXJfY29udGVudF90eXBlKCRvYmopOwoKICAgICAgICAkb2JqID0gbmV3IENtc0NvbnRlbnRUeXBlUGxhY2Vob2xkZXIoKTsKICAgICAgICAkb2JqLT5jbGFzcyA9ICdmZXVfcHJvdGVjdGVkX2xvZ291dGxpbmsnOwogICAgICAgICRvYmotPnR5cGUgID0gc3RydG9sb3dlcigkb2JqLT5jbGFzcyk7CiAgICAgICAgJG9iai0+ZmlsZW5hbWUgPSBfX0RJUl9fLicvbGliL2NsYXNzLmZldV9wcm90ZWN0ZWRfbG9nb3V0bGluay5waHAnOwogICAgICAgICRvYmotPmxvYWRlZCA9IGZhbHNlOwogICAgICAgICRvYmotPmZyaWVuZGx5bmFtZSA9ICR0aGlzLT5MYW5nKCdmZXVfcHJvdGVjdGVkX2xvZ291dGxpbmsnKTsKICAgICAgICAkY29udGVudG9wcy0+cmVnaXN0ZXJfY29udGVudF90eXBlKCRvYmopOwogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBwcml2YXRlIGZ1bmN0aW9uIF9sb2FkKCkKICAgIHsKICAgICAgICBpZiggJHRoaXMtPnVzZXJtYW5pcCA9PSBOVUxMICkgewogICAgICAgICAgICAvLyBjaGVjayBhIHByZWZlcmVuY2UgdG8gc2VlIHdoaWNoIHVzZXIgbWFuaXB1bGF0b3IgY2xhc3MKICAgICAgICAgICAgLy8gd2Ugc2hvdWxkIHVzZS4KICAgICAgICAgICAgJG1hbmlwdWxhdG9yID0gJ0Zyb250RW5kVXNlcnNNYW5pcHVsYXRvcic7CiAgICAgICAgICAgICR0aGlzLT51c2VybWFuaXAgPSBuZXcgRnJvbnRFbmRVc2Vyc01hbmlwdWxhdG9yKCAkdGhpcyApOwogICAgICAgICAgICBpZiggIWlzX29iamVjdCggJHRoaXMtPnVzZXJtYW5pcCApICkgZGllKCJFcnJvciBpbnN0YW50aWF0aW9uZyAkbWFuaXB1bGF0b3Igb2JqZWN0Iik7CiAgICAgICAgICAgICR0aGlzLT51c2VybWFuaXAtPlNldEV4cGlyZU5vdGlmaWVyKGFycmF5KCR0aGlzLCdOb3RpZnlFeHBpcmVkVXNlcicpKTsKICAgICAgICB9CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdGhlIFVzZXIgTWFuaXB1bGF0b3IgT2JqZWN0CiAgICAgKiBOT1QgRk9SIEVYVEVSTkFMIFVTRQogICAgICoKICAgICAqIEBpbnRlcm5hbAogICAgICogQHJldHVybiBvYmplY3QKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uICZHZXRNYW5pcHVsYXRvcigpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXA7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldE5hbWUoKSB7IHJldHVybiAnRnJvbnRFbmRVc2Vycyc7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VmVyc2lvbigpIHsgcmV0dXJuICcyLjMuMSc7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gSGFzQ29udGVudFR5cGUoKSB7IHJldHVybiBUUlVFOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIElzUGx1Z2luTW9kdWxlKCkgeyByZXR1cm4gVFJVRTsgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBBbGxvd0F1dG9JbnN0YWxsKCkgeyByZXR1cm4gRkFMU0U7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gQWxsb3dBdXRvVXBncmFkZSgpIHsgcmV0dXJuIEZBTFNFOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIExhenlMb2FkQWRtaW4oKSB7IHJldHVybiBUUlVFOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIE1pbmltdW1DTVNWZXJzaW9uKCkgeyByZXR1cm4gJzIuMS41JzsgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBHZXRBZG1pbkRlc2NyaXB0aW9uICgpIHsgcmV0dXJuICR0aGlzLT5MYW5nICgnbW9kZGVzY3JpcHRpb24nKTsgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBHZXRBZG1pblNlY3Rpb24gKCkgeyByZXR1cm4gJ3VzZXJzZ3JvdXBzJzsgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBHZXREZXBlbmRlbmNpZXMoKSB7IHJldHVybiBhcnJheSggJ0NHRXh0ZW5zaW9ucycgPT4gJzEuNTMuMTUnLCdDR1NpbXBsZVNtYXJ0eScgPT4gJzIuMS41JyApOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEV2ZW50RGVzY3JpcHRpb24gKCAkZXZlbnRuYW1lICkgeyByZXR1cm4gJHRoaXMtPkxhbmcoJ2V2ZW50X2luZm9fJy4kZXZlbnRuYW1lICk7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gR2V0RXZlbnRIZWxwICggJGV2ZW50bmFtZSApIHsgcmV0dXJuICR0aGlzLT5MYW5nKCdldmVudF9oZWxwXycuJGV2ZW50bmFtZSApOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEZyaWVuZGx5TmFtZSAoKSB7IHJldHVybiAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyk7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gSGFzQWRtaW4gKCkgeyByZXR1cm4gVFJVRTsgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBJbnN0YWxsUG9zdE1lc3NhZ2UoKSB7IHJldHVybiAkdGhpcy0+TGFuZygncG9zdGluc3RhbGxtZXNzYWdlJyk7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gR2V0QXV0aG9yKCkgeyByZXR1cm4gJ2NhbGd1eTEwMDAnOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEF1dGhvckVtYWlsKCkgeyByZXR1cm4gJ2NhbGd1eTEwMDBAaG90bWFpbC5jb20nOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldENoYW5nZUxvZygpIHsgcmV0dXJuIGZpbGVfZ2V0X2NvbnRlbnRzKF9fRElSX18uJy9jaGFuZ2Vsb2cuaW5jJyk7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqIEBkZXByZWNhdGVkCiAgICAgKi8KICAgIHByb3RlY3RlZCBmdW5jdGlvbiBsYW5naWZ5S2V5cyggJGFyciApCiAgICB7CiAgICAgICAgJG91dCA9IGFycmF5KCk7CiAgICAgICAgZm9yZWFjaCggJGFyciBhcyAkaz0+JHYgKSB7CiAgICAgICAgICAgICRrID0gJHRoaXMtPkxhbmcoJGspOwogICAgICAgICAgICAkb3V0WyAkayBdID0gJHY7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkb3V0OwogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBJbml0aWFsaXplRnJvbnRlbmQoKQogICAgewogICAgICAgICR0aGlzLT5SZXN0cmljdFVua25vd25QYXJhbXMoKTsKICAgICAgICAkdGhpcy0+UmVnaXN0ZXJNb2R1bGVQbHVnaW4oKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY29kZScsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZm9ybScsQ0xFQU5fU1RSSU5HKTsgLy8gZGVwcmVjYXRlZAogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdyZXR1cm50bycsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnb25seV9ncm91cHMnLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ25vY2FwdGNoYScsQ0xFQU5fSU5UKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfdXNlcm5hbWUnLENMRUFOX1NUUklORyk7IC8vIGRlcHJlY2F0ZWQKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfcGFzc3dvcmQnLENMRUFOX1NUUklORyk7IC8vIGRlcHJlY2F0ZWQKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfcmVwZWF0cGFzc3dvcmQnLENMRUFOX1NUUklORyk7IC8vIGRlcHJlY2F0ZWQKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZXJyb3InLENMRUFOX0lOVCk7IC8vIGRlcHJlY2F0ZWQKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbWVzc2FnZScsQ0xFQU5fU1RSSU5HKTsgLy8gZGVwcmVjYXRlZAogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdsb3N0dW5fZ3JvdXAnLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X2NhcHRjaGEnLENMRUFOX1NUUklORyk7IC8vIGRlcHJlY2F0ZWQKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc3VibWl0JyxDTEVBTl9TVFJJTkcpOyAvLyBkZXByZWNhdGVkCiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2NhbmNlbCcsQ0xFQU5fU1RSSU5HKTsgLy8gZGVwcmVjYXRlZAogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9jb2RlJyxDTEVBTl9TVFJJTkcpOyAvLyBkZXByZWNhdGVkCiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3VpZCcsQ0xFQU5fSU5UKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY2hlY2tvbmx5JyxDTEVBTl9JTlQpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbmxpbmUnLENMRUFOX0lOVCk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2xvZ291dHRlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdsb2dpbnRlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdjaGFuZ2VzZXR0aW5nc3RlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdmb3Jnb3Rwd3RlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdmb3Jnb3Rwd2VtYWlsdGVtcGxhdGUnLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2xvc3R1bnRlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdsb3N0dW5jb25maXJtdGVtcGxhdGUnLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2ZvcmNlbmV3cHd0ZW1wbGF0ZScsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgndmlld3VzZXJ0ZW1wbGF0ZScsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnYWZ0ZXJ2ZXJpZnl0ZW1wbGF0ZScsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgncmVzZXRzZXNzaW9udGVtcGxhdGUnLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3ZlcmlmeWZvcm10ZW1wbGF0ZScsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZShDTEVBTl9SRUdFWFAuJy9mZXVfLiovJyxDTEVBTl9TVFJJTkcpOwoKICAgICAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tmRl1ldVwvdmVyaWZ5Y29kZVwvKD9QPHJldHVybmlkPlswLTldKylcLyg/UDx1aWQ+WzAtOV0rKVwvKD9QPGNvZGU+Lio/KSQvJyxhcnJheSgnYWN0aW9uJz0+J3ZlcmlmeWNvZGUnKSk7CiAgICAgICAgJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bZkZdZXVcL3ZlcmlmeVwvKD9QPHJldHVybmlkPlswLTldKylcLyg/UDx1aWQ+WzAtOV0rKVwvKD9QPGNvZGU+Lio/KSQvJyxhcnJheSgnYWN0aW9uJz0+J3ZlcmlmeW9ubHknKSk7CiAgICAgICAgJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bZkZdZXVcL3Jlc2V0XC8oP1A8dWlkPlswLTldKykkLycsYXJyYXkoJ2FjdGlvbic9PidyZXNldF9zZXNzaW9uJywnc2hvd3RlbXBsYXRlJz0+J2ZhbHNlJywnY2hlY2tvbmx5Jz0+JzEnKSk7CiAgICAgICAgJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bZkZdZXVcL2VkaXRcLyg/UDxyZXR1cm5pZD5bMC05XSspJC8nLGFycmF5KCdhY3Rpb24nPT4nY2hhbmdlc2V0dGluZ3MnKSk7CiAgICAgICAgJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bZkZdZXVcL2xvZ291dFwvKD9QPHJldHVybmlkPlswLTldKykkLycsYXJyYXkoJ2FjdGlvbic9Pidsb2dvdXQnKSk7CiAgICAgICAgJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bZkZdZXVcL2ZvcmdvdFwvKD9QPHJldHVybmlkPlswLTldKykkLycsYXJyYXkoJ2FjdGlvbic9Pidmb3Jnb3RwdycpKTsKICAgICAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tmRl1ldVwvbG9zdHVzZXJuYW1lXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKSQvJyxhcnJheSgnYWN0aW9uJz0+J2xvc3R1c2VybmFtZScpKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gSW5pdGlhbGl6ZUFkbWluKCkKICAgIHsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gZ2V0X3Rhc2tzKCkKICAgIHsKICAgICAgICAkdG1wID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ZvcmNlbG9nb3V0X3RpbWVzJyk7CiAgICAgICAgaWYoICR0bXAgIT0gJycgKSB7CiAgICAgICAgICAgICRvYmogPSBuZXcgRkVVRm9yY2VkTG9nb3V0VGFzaygkdGhpcyk7CiAgICAgICAgICAgIHJldHVybiAkb2JqOwogICAgICAgIH0KICAgICAgICAkdG1wID0gbnVsbDsKICAgICAgICByZXR1cm4gJHRtcDsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwoJcHVibGljIGZ1bmN0aW9uIGdldF9wcmV0dHlfdXJsKCRpZCwkYWN0aW9uLCRyZXR1cm5pZD0nJywkcGFyYW1zPWFycmF5KCksJGlubGluZT1mYWxzZSkKICAgIHsKICAgICAgICBpZiggJGFjdGlvbiA9PSAnZGVmYXVsdCcgKSB7CiAgICAgICAgICAgICRmb3JtID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdmb3JtJyk7CiAgICAgICAgICAgIHN3aXRjaCggJGZvcm0gKSB7CiAgICAgICAgICAgIGNhc2UgJ2ZvcmdvdHB3JzoKICAgICAgICAgICAgICAgICRhY3Rpb24gPSAnZm9yZ290cHcnOwogICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICBjYXNlICdsb2dpbic6CiAgICAgICAgICAgICAgICAkYWN0aW9uID0gJ2xvZ2luJzsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSAnbG9zdHVzZXJuYW1lJzoKICAgICAgICAgICAgICAgICRhY3Rpb24gPSAnbG9zdHVzZXJuYW1lJzsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSAnY2hhbmdlc2V0dGluZ3MnOgogICAgICAgICAgICAgICAgcmV0dXJuICJmZXUvZWRpdC8kcmV0dXJuaWQiOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiggJGFjdGlvbiA9PSAndmVyaWZ5b25seScgKSB7CiAgICAgICAgICAgICR1aWQgPSBcY2dlX3BhcmFtOjpnZXRfaW50KCRwYXJhbXMsJ3VpZCcpOwogICAgICAgICAgICAkY29kZSA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywnY29kZScpOwogICAgICAgICAgICBpZiggJHVpZCA8IDEgfHwgISRjb2RlICkgcmV0dXJuOwogICAgICAgICAgICByZXR1cm4gImZldS92ZXJpZnkvJHJldHVybmlkLyR1aWQvJGNvZGUiOwogICAgICAgIH0KICAgICAgICBpZiggJGFjdGlvbiA9PSAnZm9yZ290cHcnKSB7CiAgICAgICAgICAgIHJldHVybiAiZmV1L2ZvcmdvdC8kcmV0dXJuaWQiOwogICAgICAgIH0gZWxzZSBpZiggJGFjdGlvbiA9PSAnbG9zdHVzZXJuYW1lJyApIHsKICAgICAgICAgICAgcmV0dXJuICJmZXUvbG9zdHVzZXJuYW1lLyRyZXR1cm5pZCI7CiAgICAgICAgfSBlbHNlaWYoICRhY3Rpb24gPT0gJ2xvZ291dCcgKSB7CiAgICAgICAgICAgICRyZXR1cm50byA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywncmV0dXJudG8nKTsKICAgICAgICAgICAgaWYoICRyZXR1cm50byApIHJldHVybjsKICAgICAgICAgICAgcmV0dXJuICJmZXUvbG9nb3V0LyRyZXR1cm5pZCI7CiAgICAgICAgfQogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gX0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJHBlcm0gPSAnJyApCiAgICB7CiAgICAgICAgaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJywnMCcpID09ICcxJykgewogICAgICAgICAgICAkcDEgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRkVVIEFkZCBVc2VycycgKTsKICAgICAgICAgICAgJHAyID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0ZFVSBNb2RpZnkgVXNlcnMnICk7CiAgICAgICAgICAgICRwMyA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdGRVUgUmVtb3ZlIFVzZXJzJyApOwogICAgICAgICAgICAkcDQgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRkVVIEFkZCBHcm91cHMnICk7CiAgICAgICAgICAgICRwNSA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdGRVUgTW9kaWZ5IEdyb3VwcycgKTsKICAgICAgICAgICAgJHA2ID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0ZFVSBNb2RpZnkgR3JvdXAgQXNzaWdubWVudHMnICk7CiAgICAgICAgICAgICRwNyA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdGRVUgUmVtb3ZlIEdyb3VwcycgKTsKICAgICAgICAgICAgJHA5ID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0ZFVSBNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnICk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkcDEgPSAkcDIgPSAkcDMgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnTWFuYWdlIFVzZXJzJyApOwogICAgICAgICAgICAkcDQgPSAkcDUgPSAkcDYgPSAkcDcgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnTWFuYWdlIEdyb3VwcycgKTsKICAgICAgICAgICAgJHA5ID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ01vZGlmeSBGcm9udEVuZFVzZXJQcm9wcycgKTsKICAgICAgICB9CgogICAgICAgICRjb25zdW1lciA9IGZldV91dGlsczo6Z2V0X2F1dGhfY29uc3VtZXIoKTsKICAgICAgICAkcmV0ID0gMDsKICAgICAgICBzd2l0Y2goICRwZXJtICkgewogICAgICAgIGNhc2UgJyc6ICAvLyBhbnkgcGVybWlzc2lvbiBmb3Igd29ya2luZyB3aXRoIGdyb3VwcyBhbmQgdXNlcnMKICAgICAgICAgICAgJHJldCA9ICgkcDEgfHwgJHAyIHx8ICRwMyB8fCAkcDQgfHwgJHA1IHx8ICRwNiB8fCAkcDcgfHwgJHA5ICk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICd1c2Vycyc6CiAgICAgICAgICAgICRyZXQgPSAoJHAxIHx8ICRwMiB8fCAkcDMpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnYWRkdXNlcic6CiAgICAgICAgICAgICRyZXQgPSAoJHAxKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgJ2FkZHByb3AnOgogICAgICAgIGNhc2UgJ2VkaXRwcm9wJzoKICAgICAgICBjYXNlICdkZWxldGVwcm9wJzoKICAgICAgICAgICAgJHJldCA9ICgkcDkpICYmICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX0VESVRQUk9QUyk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdwcm9wZXJ0aWVzJzoKICAgICAgICAgICAgJHJldCA9ICgkcDkpICYmICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX0xJU1RQUk9QUyk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdsaXN0dXNlcnMnOgogICAgICAgICAgICAkcmV0ID0gKCRwMiB8fCAkcDMpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnbGlzdGdyb3Vwcyc6CiAgICAgICAgICAgICRyZXQgPSAoJHA1IHx8ICRwNikgJiYKICAgICAgICAgICAgICAgICgkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9VU0VTVERHUk9VUFMpIHx8ICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX0xJU1RHUk9VUFMpKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgJ2dyb3Vwcyc6CiAgICAgICAgICAgICRyZXQgPSAoJHA0IHx8ICRwNSB8fCAkcDcpICYmCiAgICAgICAgICAgICAgICAoJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfVVNFU1RER1JPVVBTKSB8fCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9MSVNUR1JPVVBTKSk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdhZGRncm91cCc6CiAgICAgICAgICAgICRyZXQgPSAoJHA0KSAmJiAoJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfVVNFU1RER1JPVVBTKSB8fCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUR1JPVVBTKSk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdzdHJpY3RfZWRpdGdyb3Vwcyc6CiAgICAgICAgICAgICRyZXQgPSAoJHA1IHx8ICRwNikgJiYgKCRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX1VTRVNUREdST1VQUykgfHwgJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfRURJVEdST1VQUykpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnZWRpdGdyb3Vwcyc6CiAgICAgICAgICAgICRyZXQgPSAoJHA1IHx8ICRwNikgJiYgJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfVVNFU1RER1JPVVBTLCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUR1JPVVBTLCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUR1JPVVBQUk9QUyk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdlZGl0dXNlcnMnOgogICAgICAgICAgICAkcmV0ID0gKCRwMik7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdyZW1vdmVncm91cHMnOgogICAgICAgICAgICAkcmV0ID0gKCRwNykgJiYgJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfVVNFU1RER1JPVVBTLCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUR1JPVVBTKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgJ3JlbW92ZXVzZXJzJzoKICAgICAgICAgICAgJHJldCA9ICgkcDMpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAndXNlcnNuZ3JvdXBzJzoKICAgICAgICAgICAgJHJldCA9ICgkcDEgfHwgJHAyIHx8ICRwMyB8fCAkcDQgfHwgJHA1IHx8ICRwNiB8fCAkcDcpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgJHJldCA9IDA7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuICRyZXQ7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIFZpc2libGVUb0FkbWluVXNlcigpCiAgICB7CiAgICAgICAgaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJywnMCcpID09ICcxJykgewogICAgICAgICAgICByZXR1cm4gJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIEFkZCBHcm91cHMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIE1vZGlmeSBHcm91cHMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIFJlbW92ZSBHcm91cHMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIEFkZCBVc2VycycpIHx8CiAgICAgICAgICAgICAgICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IFVzZXJzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0ZFVSBSZW1vdmUgVXNlcnMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIE1vZGlmeSBGcm9udEVuZFVzZXJQcm9wcycpOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0FkZCBHcm91cHMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IEdyb3VwcycpIHx8CiAgICAgICAgICAgICAgICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdSZW1vdmUgR3JvdXBzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0FkZCBVc2VycycpIHx8CiAgICAgICAgICAgICAgICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNYW5hZ2UgVXNlcnMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignUmVtb3ZlIFVzZXJzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBGcm9udEVuZFVzZXJQcm9wcycpOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0QWRtaW5NZW51SXRlbXMoKQogICAgewogICAgICAgICRvdXQgPSBhcnJheSgpOwogICAgICAgIGlmKCAkdGhpcy0+VmlzaWJsZVRvQWRtaW5Vc2VyKCkgKSAkb3V0W10gPSBcQ21zQWRtaW5NZW51SXRlbTo6ZnJvbV9tb2R1bGUoJHRoaXMpOwogICAgICAgIGlmKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkgewogICAgICAgICAgICAkb2JqID0gbmV3IENtc0FkbWluTWVudUl0ZW0oKTsKICAgICAgICAgICAgJG9iai0+bW9kdWxlID0gJHRoaXMtPkdldE5hbWUoKTsKICAgICAgICAgICAgJG9iai0+c2VjdGlvbiA9ICdzaXRlYWRtaW4nOwogICAgICAgICAgICAkb2JqLT50aXRsZSA9ICR0aGlzLT5MYW5nKCd0aXRsZV9hZG1pbm5hdl9zZXR0aW5ncycpOwogICAgICAgICAgICAkb2JqLT5kZXNjcmlwdGlvbiA9ICR0aGlzLT5MYW5nKCdkZXNjX2FkbWlubmF2X3NldHRpbmdzJyk7CiAgICAgICAgICAgICRvYmotPmFjdGlvbiA9ICdhZG1pbl9zZXR0aW5ncyc7CiAgICAgICAgICAgICRvYmotPnVybCA9ICR0aGlzLT5jcmVhdGVfdXJsKCdtMV8nLCRvYmotPmFjdGlvbik7CiAgICAgICAgICAgICRvdXRbXSA9ICRvYmo7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkb3V0OwogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gX0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkLCAkbWVzc2FnZT0nJykKICAgIHsKICAgICAgICBlY2hvICR0aGlzLT5EaXNwbGF5RXJyb3JNZXNzYWdlKCRtZXNzYWdlKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gRG9BY3Rpb24oJGFjdGlvbiwgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgPSAtMSkKICAgIHsKICAgICAgICBpZiggaXNzZXQoJHBhcmFtc1snZmV1X2VuYyddKSApIHsKICAgICAgICAgICAgLy8gcmVzdG9yZSBwYXJhbWV0ZXJzIHNhdmVkIGluIHRoZSBzZXNzaW9uIG9uIHJlZGlyZWN0LgogICAgICAgICAgICAkc2lnID0gJHBhcmFtc1snZmV1X2VuYyddOwogICAgICAgICAgICB1bnNldCgkcGFyYW1zWydmZXVfZW5jJ10pOwogICAgICAgICAgICBpZiggaXNzZXQoJF9TRVNTSU9OWyRzaWddKSApIHsKICAgICAgICAgICAgICAgICR0bXAgPSAkX1NFU1NJT05bJHNpZ107CiAgICAgICAgICAgICAgICB1bnNldCgkX1NFU1NJT05bJHNpZ10pOwogICAgICAgICAgICAgICAgJHBhcmFtcyA9IGFycmF5X21lcmdlKCR0bXAsJHBhcmFtcyk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmKCAkYWN0aW9uID09ICdkZWZhdWx0JyApIHsKICAgICAgICAgICAgJGZvcm0gPSAnbG9naW4nOwogICAgICAgICAgICBpZiggJHRoaXMtPkxvZ2dlZEluSWQoKSApICRmb3JtID0gJ2xvZ291dCc7CiAgICAgICAgICAgICRmb3JtID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdmb3JtJywkZm9ybSk7CiAgICAgICAgICAgIHN3aXRjaCggJGZvcm0gKSB7CiAgICAgICAgICAgIGNhc2UgJ2xvZ2luJzoKICAgICAgICAgICAgY2FzZSAnZm9yZ290cHcnOgogICAgICAgICAgICBjYXNlICdzaWxlbnQnOgogICAgICAgICAgICBjYXNlICdjaGFuZ2VzZXR0aW5ncyc6CiAgICAgICAgICAgIGNhc2UgJ2xvc3R1c2VybmFtZSc6CiAgICAgICAgICAgICAgICAkYWN0aW9uID0gJGZvcm07CiAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgIGNhc2UgJ2xvZ291dCc6CiAgICAgICAgICAgICAgICAkYWN0aW9uID0gJ2xvZ291dGZvcm0nOwogICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFxMb2dpY0V4Y2NlcHRpb24oIiRmb3JtIGlzIGFuIGludmFsaWQgdmFsdWUgZm9yIHRoZSBmb3JtIHBhcmFtZXRlciIpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBzd2l0Y2ggKCRhY3Rpb24pIHsKICAgICAgICBjYXNlICdjaGFuZ2VzZXR0aW5nc191cmwnOgogICAgICAgICAgICBicmVhazsKCiAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcGFyZW50OjpEb0FjdGlvbigkYWN0aW9uLCRpZCwkcGFyYW1zLCRyZXR1cm5pZCk7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICogQGRlcHJlY2F0ZWQKICAgICAqLwogICAgZnVuY3Rpb24gbXlSZWRpcmVjdCggJGlkLCAkYWN0aW9uLCAkcmV0dXJuaWQsICRwYXJhbXMgPSBhcnJheSgpLCAkaWdub3JlX3JldHVybnRvID0gZmFsc2UgKQogICAgewogICAgICAgIC8vIGZpbmQgYW55IHBhcmFtZXRlciB2YWx1ZXMgdGhhdCBhcmUgYXJyYXlzCiAgICAgICAgLy8gYXV0b21hdGljYWxseSBzdG9yZSB0aGlzIGRhdGEgaW4gdGhlIHNlc3Npb24KICAgICAgICB1bnNldCgkcGFyYW1zWydhY3Rpb24nXSwkcGFyYW1zWydyZXR1cm5pZCddKTsKCiAgICAgICAgJHNpZyA9IG1kNShfX01FVEhPRF9fLnRpbWUoKS5zZXJpYWxpemUoJHBhcmFtcykpOwogICAgICAgICRfU0VTU0lPTlskc2lnXSA9ICRwYXJhbXM7CiAgICAgICAgJHBhcmFtcyA9IFsgJ2ZldV9lbmMnID0+ICRzaWcgXTsKICAgICAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJGFjdGlvbiwgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIEdldEhlYWRlckhUTUwoKQogICAgewogICAgICAgICR0eHQgPSBwYXJlbnQ6OkdldEhlYWRlckhUTUwoKTsKICAgICAgICAkdG1wbCA9PDw8RU9UCntKUXVlcnlUb29scyBhY3Rpb249J3JlcXVpcmUnIGxpYj0ndGFibGVzb3J0ZXIsSlF1ZXJ5VG9vbHMnfQp7SlF1ZXJ5VG9vbHMgYWN0aW9uPSdwbGFjZW1hcmtlcid9CkVPVDsKCiAgICAgICAgJG9iaiA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnSlF1ZXJ5VG9vbHMnLCcxLjInKTsKICAgICAgICBpZiggaXNfb2JqZWN0KCRvYmopICkgewogICAgICAgICAgICAkc21hcnR5ID0gU21hcnR5X0NNUzo6Z2V0X2luc3RhbmNlKCk7CiAgICAgICAgICAgICR0eHQgLj0gJHNtYXJ0eS0+ZmV0Y2goJ3N0cmluZzonLiR0bXBsKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuICR0eHQ7CiAgICB9CgogICAgLyoqCiAgICAgKiBzZW5kIGFuIGV2ZW50IHRoYXQgdGhpcyB1c2VyIGFjY291bnQgaGFzIGJlZW4gZXhwaXJlZAogICAgICogQGludGVybmFsCiAgICAgKi8KICAgIHByb3RlY3RlZCBmdW5jdGlvbiBOb3RpZnlFeHBpcmVkVXNlciggJHVzZXJpZCApCiAgICB7CiAgICAgICAgJHVzZXIgPSAkdGhpcy0+R2V0VXNlckluZm8oICR1c2VyaWQgKTsKICAgICAgICBpZiggJHVzZXJbMF0gPT0gRkFMU0UgKSByZXR1cm47IC8vIHRoaXMgc2hvdWxkIGJlIGFuIGVycm9yCiAgICAgICAgJHBhcm1zID0gYXJyYXkoKTsKICAgICAgICAkcGFybXNbJ2lkJ10gPSAkdXNlcmlkOwogICAgICAgICRwYXJtc1sndXNlcm5hbWUnXSA9ICR1c2VyWzFdWyd1c2VybmFtZSddOwogICAgICAgICR0aGlzLT5TZW5kRXZlbnQoJ09uRXhwaXJlVXNlcicsJHBhcm1zKTsKICAgICAgICAkdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgnT25FeHBpcmVVc2VyJywkcGFybXMpOwogICAgfQoKICAgIC8qKgogICAgICogQGludGVybmFsCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBpc19hbGxvd2VkX3VwbG9hZCgkc3JjZmlsZSkKICAgIHsKICAgICAgICAkYWxsb3dlZF9leHRlbnNpb25zPSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnLCcuZ2lmLC5wbmcsLmpwZycpOwogICAgICAgICR0bXAgPSBleHBsb2RlKCAnLCcsICRhbGxvd2VkX2V4dGVuc2lvbnMpOwoKICAgICAgICBmb3JlYWNoKCAkdG1wIGFzICRleHQgKSB7CiAgICAgICAgICAgIGlmKCBlbmRzd2l0aCggJHNyY2ZpbGUsICRleHQgKSApIHJldHVybiBUUlVFOwogICAgICAgIH0KICAgICAgICByZXR1cm4gRkFMU0U7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqIEB0b2RvOiBtb3ZlIG1lIG91dCBvZiBoZXJlCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfdXBsb2FkX2RpcnVybCgpCiAgICB7CiAgICAgICAgJGNvbmZpZyA9IFxjbXNfY29uZmlnOjpnZXRfaW5zdGFuY2UoKTsKICAgICAgICAkZG4gPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfdXJsJ10sJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLCAnZmV1c2VycycpKTsKICAgICAgICAkZG4gPSBzdHJfcmVwbGFjZSgnXFwnLCcvJywkZG4pOwogICAgICAgIHJldHVybiAkZG47CiAgICB9CgogICAgLyoqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIGdldF91cGxvYWRfZGlybmFtZSgpCiAgICB7CiAgICAgICAgJGNvbmZpZyA9IFxjbXNfY29uZmlnOjpnZXRfaW5zdGFuY2UoKTsKICAgICAgICAkZG4gPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywgJ2ZldXNlcnMnKSk7CiAgICAgICAgcmV0dXJuICRkbjsKICAgIH0KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3VwbG9hZF9maWxlbmFtZSgkZmxkbmFtZSwkc3JjZmlsZSkKICAgIHsKICAgICAgICAvLyBnZXQgdGhlIGZpbGVuYW1lIG9ubHksIG5vdCB0aGUgZGlyZWN0b3J5CiAgICAgICAgJGV4dCA9IHN0cmNocigkc3JjZmlsZSwnLicpOwogICAgICAgIHJldHVybiBtZDUoX19GSUxFX18uc2Vzc2lvbl9pZCgpLiRmbGRuYW1lLiRzcmNmaWxlKS4kZXh0OwogICAgfQoKICAgIC8qKgogICAgICogQGludGVybmFsCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBNYW5hZ2VJbWFnZVVwbG9hZCgka2V5LCAkZmxkbmFtZSkKICAgIHsKICAgICAgICAkcmVzID0gXGZldV91dGlsczo6Y2hlY2tVcGxvYWQoJGtleSk7CiAgICAgICAgaWYoICEkcmVzWzBdICkgcmV0dXJuICRyZXM7CgogICAgICAgICRmaWxlID0gJF9GSUxFU1ska2V5XTsKICAgICAgICAvLyBzZXQgdGhlIGRlc3RpbmF0aW9uIG5hbWUKICAgICAgICAkZGVzdERpciA9ICR0aGlzLT5nZXRfdXBsb2FkX2Rpcm5hbWUoKTsKICAgICAgICAkZGVzdG5hbWUgPSAkdGhpcy0+Z2V0X3VwbG9hZF9maWxlbmFtZSgkZmxkbmFtZSwkZmlsZVsnbmFtZSddKTsKCiAgICAgICAgLy8gQ3JlYXRlIHRoZSBkZXN0aW5hdGlvbiBkaXJlY3RvcnkgaWYgbmVjZXNzYXJ5CiAgICAgICAgQG1rZGlyKCRkZXN0RGlyLDA3NzcsVFJVRSk7CiAgICAgICAgQHRvdWNoKCRkZXN0ZGlyLicvaW5kZXguaHRtbCcpOwogICAgICAgIGlmKCAhaXNfd3JpdGFibGUoICRkZXN0RGlyICkgKSByZXR1cm4gWyBmYWxzZSwgJG1vZC0+TGFuZygnZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZScpIF07CiAgICAgICAgQGNtc19tb3ZlX3VwbG9hZGVkX2ZpbGUoJGZpbGVbJ3RtcF9uYW1lJ10sIGNtc19qb2luX3BhdGgoJGRlc3REaXIsJGRlc3RuYW1lKSk7CgogICAgICAgIHJldHVybiBbIHRydWUsICRkZXN0bmFtZSBdOwogICAgfQoKICAgIC8qKgogICAgICogQGludGVybmFsCiAgICAgKiBAZGVwcmVjYXRlZAogICAgICovCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gX1NlbmROb3RpZmljYXRpb25FbWFpbCgkZXZlbnQsJHBhcmFtcykKICAgIHsKICAgICAgICAkbm90aWZpY2F0aW9ucyA9IGV4cGxvZGUoJywnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdub3RpZmljYXRpb25zJywnJykpOwogICAgICAgIGlmKCAhaW5fYXJyYXkoICRldmVudCwgJG5vdGlmaWNhdGlvbnMgKSApIHJldHVybjsKICAgICAgICAkZGVzdCA9IHRyaW0oJHRoaXMtPkdldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbl9hZGRyZXNzJykpOwogICAgICAgIGlmKCBlbXB0eSgkZGVzdCkgKSByZXR1cm47CgogICAgICAgIC8vIFNldHVwIHNvbWUgc21hcnR5IHN0dWZmLgogICAgICAgICRzbWFydHkgPSBcU21hcnR5X0NNUzo6Z2V0X2luc3RhbmNlKCk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdldmVudCcsJGV2ZW50KTsKICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2V2ZW50X25hbWUnLCR0aGlzLT5MYW5nKCRldmVudCkpOwogICAgICAgICRzbWFydHktPmFzc2lnbigncGxhaW50ZXh0X2V2ZW50JywkdGhpcy0+TGFuZygnZXZlbnQnKSk7CiAgICAgICAgZm9yZWFjaCggJHBhcmFtcyBhcyAka2V5ID0+ICR2YWx1ZSApIHsKICAgICAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdwYXJhbV8nLiRrZXksJHZhbHVlKTsKICAgICAgICB9CiAgICAgICAgJHRleHQgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdub3RpZmljYXRpb25fdGVtcGxhdGUnKTsKCiAgICAgICAgJGNtc21haWxlciA9IG5ldyBcY21zX21haWxlcigpOwogICAgICAgICRjbXNtYWlsZXItPnJlc2V0KCk7CiAgICAgICAgJGNtc21haWxlci0+QWRkQWRkcmVzcygkZGVzdCk7CiAgICAgICAgJGNtc21haWxlci0+U2V0U3ViamVjdCgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbm90aWZpY2F0aW9uX3N1YmplY3QnKSk7CiAgICAgICAgJGNtc21haWxlci0+U2V0Qm9keSgkdGV4dCk7CiAgICAgICAgJGNtc21haWxlci0+SXNIVE1MKGZhbHNlKTsKICAgICAgICAkY21zbWFpbGVyLT5TZW5kKCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIFNldFBvc3RMb2dpblVSTCgkdXJsKQogICAgewogICAgICAgIGlmKCAkdXJsICkgJHRoaXMtPnNlc3Npb25fcHV0KCdwb3N0bG9naW5fdXJsJywkdXJsKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0UG9zdExvZ2luVVJMKCkKICAgIHsKICAgICAgICAkb3V0ID0gJHRoaXMtPnNlc3Npb25fZ2V0KCdwb3N0bG9naW5fdXJsJyk7CiAgICAgICAgJHRoaXMtPnNlc3Npb25fY2xlYXIoJ3Bvc3Rsb2dpbl91cmwnKTsKICAgICAgICByZXR1cm4gJG91dDsKICAgIH0KCiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICAgIC8vICBBUEkgRlVOQ1RJT05TIC8vCiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICovCiAgICBmdW5jdGlvbiBhZGRfaGlzdG9yeSggJHVpZCwgJG1lc3NhZ2UgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5hZGRfaGlzdG9yeSggJHVpZCwgJG1lc3NhZ2UgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEFkZCBhIG5ldyBncm91cAogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGhlIGdyb3VwIG5hbWUKICAgICAqIEBwYXJhbSBzdHJpbmcgJGRlc2NyaXB0aW9uIFRoZSBncm91cCBkZXNjcmlwdGlvbgogICAgICogQHJldHVybiBhcnJheSBBcnJheSBjb250YWluaW5nIHR3byBlbGVtZW50cy4gIFRoZSBmaXJzdCBlbGVtZW50IGlzIHRoZSByZXR1cm4gc3RhdHVzIG9mIHRoZSBmdW5jdGlvbiAoYm9vbGVhbiksIHRoZSBzZWNvbmQgZWxlbWVudCBpcyBlaXRoZXIgYSBtZXNzYWdlIGluIHRoZQogICAgICogICAgY2FzZSBvZiBhbiBlcnJvciwgb3IgdGhlIGdyb3VwIGlkIChpbnRlZ2VyKSBvbiBzdWNjZXNzLgogICAgICovCiAgICBmdW5jdGlvbiBBZGRHcm91cCggJG5hbWUsICRkZXNjcmlwdGlvbiApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkFkZEdyb3VwKCAkbmFtZSwgJGRlc2NyaXB0aW9uICk7CiAgICB9CgoKICAgIC8qKgogICAgICogQWRkIGEgbmV3IGdyb3VwIHByb3BlcnR5IHJlbGF0aW9uLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJGdycGlkIFRoZSBncm91cCBpZAogICAgICogQHBhcmFtIHN0cmluZyAkcHJvcG5hbWUgVGhlIHByb3BlcnR5IG5hbWUKICAgICAqIEBwYXJhbSBpbnQgJHNvcnRrZXkgVGhlIHNvcnRpbmcgb3JkZXIgZm9yIHRoaXMgcmVsYXRpb25zaGlwCiAgICAgKiBAcGFyYW0gaW50ICRyZXF1aXJlZCBUaGUgcmVxdWlyZWQgZmxhZyBmb3IgdGhpcyByZWxhdGlvbnNoaXAuICAwPT1vZmYgMT09b3B0aW9uYWwsIDI9PXJlcXVpcmVkCiAgICAgKiBAcGFyYW0gYm9vbGVhbiAkbG9zdHVuIFdldGhlciB0aGlzIHJlbGF0aW9uc2hpcCBzaG91bGQgYmUgdXNlZCBmb3IgdGhlIGxvc3R1biBzdHVmZiAoZGVwcmVjYXRlZCkKICAgICAqIEByZXR1cm4gYXJyYXkgRmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgdGhlIHJldHVybiBzdGF0dXMsIHNlY29uZCBlbGVtZW50IGlzIHRoZSBlcnJvciBtZXNzYWdlLCBpZiBhbnkuCiAgICAgKi8KICAgIGZ1bmN0aW9uIEFkZEdyb3VwUHJvcGVydHlSZWxhdGlvbiggJGdycGlkLCAkcHJvcG5hbWUsICRzb3J0a2V5LCAkbG9zdHVuLCAkcmVxdWlyZWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5BZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRncnBpZCwgJHByb3BuYW1lLCAkc29ydGtleSwgJGxvc3R1biwgJHJlcXVpcmVkICk7CiAgICB9CgoKICAgIC8qKgogICAgICogQWRkIGEgbmV3IHByb3BlcnR5IGRlZmluaXRpb24KICAgICAqCiAgICAgKiBAcGFyYW0gc3RyaW5nICRuYW1lIFRoZSBwcm9wZXJ0eSBuYW1lCiAgICAgKiBAcGFyYW0gc3RyaW5nICRwcm9tcHQgVGhlIHByb3BlcnR5IHByb21wdCBmb3IgdXNlIGluIHZhcmlvdXMgdmlld3MKICAgICAqIEBwYXJhbSBpbnQgJHR5cGUgVGhlIGZpZWxkIHR5cGUKICAgICAqIEBwYXJhbSBpbnQgJGxlbmd0aCBUaGUgZGVmYXVsdCBsZW5ndGggZm9yIHJlbmRlcmluZyB0aGUgcHJvcGVydHkKICAgICAqIEBwYXJhbSBpbnQgJG1heGxlbmd0aCBUaGUgbWF4aW11bSBsZW5ndGggZm9yIHJlbmRlcmluZyB0aGUgcHJvcGVydHkKICAgICAqIEBwYXJhbSBzdHJpbmcgJGF0dHJpYnMgQSBzZXJpYWxpemVkIGFycmF5IG9mIGF0dHJpYnV0ZXMgZm9yIHRoZSBwcm9wZXJ0eQogICAgICogQHBhcmFtIGJvb2wgJGZvcmNlX3VuaXF1ZSBXaGV0aGVyIG9yIG5vdCB0aGUgdmFsdWUgZm9yIHRoaXMgcHJvcGVydHkgc2hvdWxkIGJlIHVuaXF1ZSBhY3Jvc3MgYWxsIHVzZXJzLgogICAgICogQHBhcmFtIGJvb2wgJGVuY3J5cHQgV2hldGhlciBvciBub3QgdGhpcyBkYXRhIHNob3VsZCBiZSBlbmNyeXB0ZWQgaW4gdGhlIGRhdGFiYXNlLgogICAgICovCiAgICBmdW5jdGlvbiBBZGRQcm9wZXJ0eURlZm4oICRuYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCwgJG1heGxlbmd0aCA9IDAsICRhdHRyaWJzID0gJycsICRmb3JjZV91bmlxdWUgPSAwLCAkZW5jcnlwdCA9IDAgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5BZGRQcm9wZXJ0eURlZm4oICRuYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCwgJG1heGxlbmd0aCwgJGF0dHJpYnMsICRmb3JjZV91bmlxdWUsICRlbmNyeXB0ICApOwogICAgfQoKCiAgICAvKioKICAgICAqIFNldCBzZWxlY3Qgb3B0aW9ucyBmb3IgYSBkcm9wZG93bi9yYWRpby1idXR0b24tZ3JvdXAgb3IgbXVsdGlzZWxlY3QgcHJvcGVydHkuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgcHJvcGVydHkgbmFtZQogICAgICogQHBhcmFtIGFycmF5ICRzZWxvcHRpb25zIHRoZSBTZWxlY3Qgb3B0aW9ucy4KICAgICAqLwogICAgZnVuY3Rpb24gQWRkU2VsZWN0T3B0aW9ucyggJG5hbWUsICRzZWxvcHRpb25zICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+QWRkU2VsZWN0T3B0aW9ucyggJG5hbWUsICRzZWxvcHRpb25zICk7CiAgICB9CgoKICAgIC8qKgogICAgICogQWRkIGEgdXNlciB0byB0aGUgc3lldGVtCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgbmV3IHVzZXJuYW1lCiAgICAgKiBAcGFyYW0gc3RyaW5nICRwYXNzd29yZCBUaGUgcGxhaW4gdGV4dCBwYXNzd29yZAogICAgICogQHBhcmFtIGludCAkZXhwaXJlcyB0aGUgVW5peCB0aW1lc3RhbXAgb2YgdGhlIGV4cGlyeSBkYXRlCiAgICAgKiBAcmV0dXJuIGFycmF5IFRoZSBmaXJzdCBlbGVtZW50IG9mIHRoZSBhcnJheSBpcyBhIGJvb2xlYW4gaW5kaWNhdGluZyBzdWNjZXNzIG9yIGZhaWx1cmUsIHRoZSBzZWNvbmQgZWxlbWVudCBpcyBhbiBlcnJvciBtZXNzYWdlLCBvciB0aGUgbmV3IFVJRC4KICAgICAqLwogICAgZnVuY3Rpb24gQWRkVXNlciggJG5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXMgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5BZGRVc2VyKCAkbmFtZSwgJHBhc3N3b3JkLCAkZXhwaXJlcyApOwogICAgfQoKCiAgICAvKioKICAgICAqIEFzc2lnbiB0aGUgc3BlY2lmaWVkIHVzZXIgdG8gdGhlIHNwZWNpZmllZCBncm91cAogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVpZCBUaGUgdXNlciBpZGVudGlmaWVyCiAgICAgKiBAcGFyYW0gaW50ICRnaWQgVGhlIGdyb3VwIGlkZW50aWZpZXIKICAgICAqIEByZXR1cm4gYm9vbGVhbgogICAgICovCiAgICBmdW5jdGlvbiBBc3NpZ25Vc2VyVG9Hcm91cCggJHVpZCwgJGdpZCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkFzc2lnblVzZXJUb0dyb3VwKCAkdWlkLCAkZ2lkICk7CiAgICB9CgoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBDb3VudFRlbXBDb2RlUmVjb3JkcygpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkNvdW50VGVtcENvZGVSZWNvcmRzKCk7CiAgICB9CgoKICAgIC8qKgogICAgICogQ291bnQgdGhlIG51bWJlciBvZiBub24gZGlzYWJsZWQgdXNlcnMgaW4gYSBncm91cCwgb3IgaW4gdGhlIGVudGlyZSBzeXN0ZW0uCiAgICAgKgogICAgICogQHBhcmFtIGludCAkZ2lkIE9wdGlvbmFsIGdyb3VwIGlkZW50aWZpZXIuCiAgICAgKiBAcmV0dXJuIGludAogICAgICovCiAgICBmdW5jdGlvbiBDb3VudFVzZXJzSW5Hcm91cCggJGdpZCA9ICcnICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+Q291bnRVc2Vyc0luR3JvdXAoICRnaWQgKTsKICAgIH0KCgogICAgLyoqCiAgICAgKiBEZWxldGUgYWxsIHByb3BlcnR5IHJlbGF0aW9ucyBmb3IgYSBncm91cAogICAgICoKICAgICAqIEBpbnRlcm5hbAogICAgICogQHBhcmFtIGludCAkZ3JvdXBpZAogICAgICogQHJldHVybiBhcnJheSBUaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgdGhlIGJvb2xlYW4gcmVzdWx0LCBzZWNvbmQgZWxlbWVudCAoaWYgYW55KSBpcyBhbiBlcnJvciBtZXNzYWdlLgogICAgICovCiAgICBmdW5jdGlvbiBEZWxldGVBbGxHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVBbGxHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQgKTsKICAgIH0KCgogICAgLyoqCiAgICAgKiBQZXJtYW5lbnRseSByZW1vdmUgYSBwcm9wZXJ0eQogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGhlIHByb3BlcnR5IG5hbWUKICAgICAqIEByZXR1cm4gYm9vbGVhbgogICAgICovCiAgICBmdW5jdGlvbiBEZWxldGVQcm9wZXJ0eURlZm4oICRuYW1lICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlUHJvcGVydHlEZWZuKCAkbmFtZSApOwogICAgfQoKCiAgICAvKioKICAgICAqIERlbGV0ZSBhbGwgcHJvcGVydHkgZGVmaW5pdGlvbnMuCiAgICAgKgogICAgICogQGludGVybmFsCiAgICAgKi8KICAgIGZ1bmN0aW9uIERlbGV0ZVByb3BlcnR5RGVmbnMoKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVQcm9wZXJ0eURlZm5zKCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBEZWxldGUgdGhlIHNlbGVjdCBvcHRpb25zIChpZiBhbnkpIGZvciBhIHByb3BlcnR5CiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgcHJvcGVydHkgbmFtZQogICAgICogQHJldHVybiBhcnJheSBUaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgYSBib29sZWFuIHN0YXR1cywgdGhlIHNlY29uZCBlbGVtZW50IChpZiBhbnkpIGlzIGFuIGVycm9yIG1lc3NhZ2UuCiAgICAgKi8KICAgIGZ1bmN0aW9uIERlbGV0ZVNlbGVjdE9wdGlvbnMoICRuYW1lICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlU2VsZWN0T3B0aW9ucyggJG5hbWUgKTsKICAgIH0KCiAgICAvKioKICAgICAqIENvbXBsZXRlbHkgZGVsZXRlIGEgdXNlciBmcm9tIHRoZSBkYXRhYmFzZS4gIEluY2x1ZGluZyBhbGwgcHJvcGVydGllcywgZ3JvdXAgbWVtYmVyc2hpcHMsIGV0Yy4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQgVGhlIHVzZXIgaWRlbnRpZmllciB0byBkZWxldGUuCiAgICAgKiBAcmV0dXJuIGFycmF5IFRoZSBmaXJzdCBlbGVtZW50IG9mIHRoZSBhcnJheSBpcyBhIGJvb2xlYW4gc3RhdHVzLCB0aGUgc2Vjb25kIGVsZW1lbnQgKGlmIGFueSkgaXMgYW4gZXJyb3IgbWVzc2FnZS4KICAgICAqLwogICAgZnVuY3Rpb24gRGVsZXRlVXNlckZ1bGwoICR1aWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVVc2VyRnVsbCggJHVpZCApOwogICAgfQoKICAgIC8qKgogICAgICogUmVtb3ZlIGEgc3BlY2lmaWVkIHByb3BlcnR5IGZvciBhbGwgdXNlcnMsIGJ1dCBkbyBub3QgcmVtb3ZlIHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9uLgogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJHRpdGxlIFRoZSBwcm9wZXJ0eSBuYW1lCiAgICAgKiBAcmV0dXJuIGJvb2xlYW4KICAgICAqLwogICAgZnVuY3Rpb24gRGVsZXRlVXNlclByb3BlcnR5QnlOYW1lKCAkdGl0bGUgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVVc2VyUHJvcGVydHlCeU5hbWUoJHRpdGxlKTsKICAgIH0KCiAgICAvKioKICAgICAqIERlbGV0ZSBhIHVzZXIgcHJvcGVydHkgZm9yIGEgc3BlY2lmaWMgdXNlci4KICAgICAqCiAgICAgKiBAcGFyYW0gc3RyaW5nICR0aXRsZSBUaGUgcHJvcGVydHkgbmFtZQogICAgICogQHBhcmFtIGJvb2xlYW4gJGFsbCBXZXRoZXIgb3Igbm90IHRvIGRlbGV0ZSBhbGwgcHJvcGVydGllcyBmb3IgdGhlIHVzZXIuCiAgICAgKiBAcmV0dXJuIGJvb2xlYW4KICAgICAqLwogICAgZnVuY3Rpb24gRGVsZXRlVXNlclByb3BlcnR5KCR0aXRsZSwkYWxsPWZhbHNlKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVVc2VyUHJvcGVydHkoJHRpdGxlLCRhbGwpOwogICAgfQoKICAgIC8qKgogICAgICogRGVsZXRlIGFsbCB1c2VyIHByb3BlcnRpZXMsIGZvciBhbGwgdXNlcnMKICAgICAqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqIEByZXR1cm4gYm9vbGVhbgogICAgICovCiAgICBmdW5jdGlvbiBEZWxldGVBbGxVc2VyUHJvcGVydGllcygpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkRlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzKCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBEZWxldGUgYWxsIHVzZXIgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVzZXJpZCBUaGUgdXNlcmlkCiAgICAgKiBAcmV0dXJuIGJvb2xlYW4KICAgICAqLwogICAgZnVuY3Rpb24gRGVsZXRlQWxsVXNlclByb3BlcnRpZXNGdWxsKCR1c2VyaWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkRlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzRnVsbCgkdXNlcmlkKTsKICAgIH0KCiAgICAvKioKICAgICAqIERlbGV0ZSBzcGVjaWZpZWQgdXNlciBwcm9wZXJ0aWVzIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkdGl0bGUgVGhlIHByb3BlcnR5IG5hbWUKICAgICAqIEBwYXJhbSBpbnQgJHVzZXJpZCBUaGUgdXNlcmlkCiAgICAgKiBAcGFyYW0gYm9vbGVhbiAkYWxsIFdldGhlciBvciBub3QgdG8gZGVsZXRlIGFsbCBwcm9wZXJ0aWVzIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIuCiAgICAgKi8KICAgIGZ1bmN0aW9uIERlbGV0ZVVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCR1c2VyaWQsJGFsbD1mYWxzZSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlVXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJHVzZXJpZCwkYWxsKTsKICAgIH0KCiAgICAvKioKICAgICAqIERlbGV0ZSBhIHNwZWNpZmllZCBncm91cC4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICRnaWQgVGhlIGdyb3VwIGlkZW50aWZpZXIKICAgICAqIEByZXR1cm4gYXJyYXkgVGhlIGZpcnN0IGVsZW1lbnQgb2YgdGhlIGFycmF5IGlzIGEgYm9vbGVhbiBzdGF0dXMsIHRoZSBzZWNvbmQgZWxlbWVudCAoaWYgYW55KSBpcyBhbiBlcnJvciBtZXNzYWdlLgogICAgICovCiAgICBmdW5jdGlvbiBEZWxldGVHcm91cEZ1bGwoICRnaWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVHcm91cEZ1bGwoICRnaWQgKTsKICAgIH0KCiAgICAvKioKICAgICAqIERlbGV0ZSB0aGUgc3BlY2lmaWVkIHVzZXIgYWNjb3VudC4KICAgICAqCiAgICAgKiBAZGVwcmVjYXRlZAogICAgICogQHNlZSBEZWxldGVVc2VyRnVsbAogICAgICogQHBhcmFtIGludCAkaWQgVGhlIHVpZAogICAgICogQHJldHVybiBhcnJheSBUaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgYSBib29sZWFuIHN0YXR1cywgdGhlIHNlY29uZCBlbGVtZW50IChpZiBhbnkpIGlzIGFuIGVycm9yIG1lc3NhZ2UuCiAgICAgKi8KICAgIGZ1bmN0aW9uIERlbGV0ZVVzZXIoJGlkKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVVc2VyKCAkaWQgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gRXhwaXJlVXNlcnMoKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5FeHBpcmVVc2VycygpOwogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBFeHBpcmVUZW1wQ29kZXMoICRleHBpcnljb2RlICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RXhwaXJlVGVtcENvZGVzKCAkZXhwaXJ5Y29kZSApOwogICAgfQoKICAgIC8qKgogICAgICogR2VuZXJhdGUgYSByYW5kb20gdXNlcm5hbWUKICAgICAqCiAgICAgKiBAcGFyYW0gc3RyaW5nICRwcmVmaXggYW4gb3B0aW9uYWwgcHJlZml4IGZvciB0aGUgdXNlcm5hbWUKICAgICAqIEByZXR1cm4gc3RyaW5nCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdlbmVyYXRlUmFuZG9tVXNlcm5hbWUoICRwcmVmaXggPSAndXNlcicgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZW5lcmF0ZVJhbmRvbVVzZXJuYW1lKCAkcHJlZml4ICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgYWxsIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgdXNlci4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQgVGhlIHVzZXIgaWRlbnRpZmllcgogICAgICogQHJldHVybiBhcnJheSBUaGUgdXNlciBwcm9wZXJ0aWVzIGFzIHJlYWQgZnJvbSB0aGUgZGF0YWJhc2UuCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldFVzZXJQcm9wZXJ0aWVzKCR1aWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFVzZXJQcm9wZXJ0aWVzKCR1aWQpOwogICAgfQoKICAgIC8qKgogICAgICogR2V0IGEgbGlzdCBvZiB0aGUgc3BlY2lmaWVkIHVzZXJzIGdyb3VwcyAoaWYgYW55KQogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVzZXJpZCBUaGUgdXNlciBpZGVudGlmaWVyCiAgICAgKiBAcmV0dXJuIG51bGx8YXJyYXkgSWYgdGhlIHVzZXIgaXMgYSBtZW1iZXIgb2YgYW55IGdyb3VwcyB0aGUgcmVzdWx0aW5nIGFycmF5IHdpbGwgY29udGFpbCB0aGUgdXNlcmlkLCBhbmQgdGhlIGdyb3VwaWQgaW4gZWFjaCBlbGVtZW50IG9mIHRoZSByZXR1cm5lZCBhcnJheS4KICAgICAqLwogICAgZnVuY3Rpb24gR2V0TWVtYmVyR3JvdXBzQXJyYXkoJHVzZXJpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoJHVzZXJpZCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgYSBwcm9wZXJ0eSB2YWx1ZSBmb3IgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlci4KICAgICAqCiAgICAgKiBAcGFyYW0gc3RyaW5nICR0aXRsZSBUaGUgcHJvcGVydHkgbmFtZQogICAgICogQHBhcmFtIG1peGVkICRkZWZhdWx0dmFsdWUgQW4gb3B0aW9uYWwgZGVmYXVsdCB2YWx1ZSBpZiB0aGUgcHJvcGVydHkgaXMgbm90IHNldCBmb3IgdGhlIHVzZXIuICBOb3RlLCBhbiBlbXB0eSBzdHJpbmcgbWF5IGJlIGEgdmFsaWQgcHJvcGVydHkgdmFsdWUuCiAgICAgKiBAcmV0dXJuIHN0cmluZyAoQWxsIHByb3BlcnRpZXMgYXJlIHN0b3JlZCBhcyBzdHJpbmdzIGluIHRoZSBkYXRhYmFzZSkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VXNlclByb3BlcnR5KCR0aXRsZSwkZGVmYXVsdHZhbHVlPWZhbHNlKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRVc2VyUHJvcGVydHkoICR0aXRsZSwgJGRlZmF1bHR2YWx1ZSApOwogICAgfQoKICAgIC8qKgogICAgICogR2V0IGEgcHJvcGVydHkgdmFsdWUgZm9yIHRoZSBzcGVjaWZpZWQgdXNlciBpZAogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJHRpdGxlIHRoZSBwcm9wZXJ0eSBuYW1lCiAgICAgKiBAcGFyYW0gaW50ICR1c2VyaWQgVGhlIHVzZXIgaWRlbnRpZmllcgogICAgICogQHBhcmFtIG1peGVkICRkZWZhdWx0dmFsdWUgQW4gb3B0aW9uYWwgZGVmYXVsdCB2YWx1ZSBpZiB0aGUgcHJvcGVydHkgaXMgbm90IHNldCBmb3IgdGhlIHVzZXIuICBOb3RlLCBhbiBlbXB0eSBzdHJpbmcgbWF5IGJlIGEgdmFsaWQgcHJvcGVydHkgdmFsdWUuCiAgICAgKiBAcmV0dXJuIHN0cmluZyAoQWxsIHByb3BlcnRpZXMgYXJlIHN0b3JlZCBhcyBzdHJpbmdzIGluIHRoZSBkYXRhYmFzZSkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJHVzZXJpZCwgJGRlZmF1bHR2YWx1ZT1mYWxzZSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJHVzZXJpZCwkZGVmYXVsdHZhbHVlKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VXNlclRlbXBDb2RlKCAkdWlkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlclRlbXBDb2RlKCAkdWlkICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdGhlIGdyb3VwIHByb3BlcnR5IHJlbGF0aW9ucyBmb3IgdGhlIHNwZWNpZmllZCBwcm9wZXJ0eSwgZm9yIGFsbCBncm91cHMuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkdGl0bGUgdGhlIHByb3BlcnR5IHRpdGxlLgogICAgICogQHJldHVybiBhcnJheQogICAgICovCiAgICBmdW5jdGlvbiBHZXRQcm9wZXJ0eUdyb3VwUmVsYXRpb25zKCAkdGl0bGUgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRQcm9wZXJ0eUdyb3VwUmVsYXRpb25zKCAkdGl0bGUgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCB0aGUgcHJvcGVydHkgcmVsYXRpb25zIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIKICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEByZXR1cm4gYXJyYXkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VXNlclByb3BlcnR5UmVsYXRpb25zKCR1aWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFVzZXJQcm9wZXJ0eVJlbGF0aW9ucyggJHVpZCApOwogICAgfQoKICAgIC8qKgogICAgICogR2V0IHRoZSBwcm9wZXJ0eSByZWxhdGlvbnMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAKICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICRncnBpZCBUaGUgZ3JvdXAgaWRlbnRpZmllcgogICAgICogQHJldHVybiBhcnJheQogICAgICovCiAgICBmdW5jdGlvbiBHZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCB0aGUgZ3JvdXAgaW5mb3JtYXRpb24gZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAKICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICRnaWQgVGhlIGdyb3VwIGlkZW50aWZpZXIKICAgICAqIEByZXR1cm4gYXJyYXkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0R3JvdXBJbmZvKCAkZ2lkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0R3JvdXBJbmZvKCAkZ2lkICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdXNlciBoaXN0b3J5IHJlY29yZHMsIGJ5IGRlc2NlbmRpbmcgZGF0ZS4KICAgICAqIFdhcm5pbmc6IFRoaXMgY291bGQgcG90ZW50aWFsbHkgcmV0dXJuIGEgdmVyeSBsYXJnZSBhcnJheS4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEBwYXJhbSBzdHJpbmcgJGFjdGlvbiBBbiBvcHRpb25hbCBhY3Rpb24gZmlsdGVyIChzdWNoIGFzIGxvZ2luIG9yIGxvZ291dCkKICAgICAqIEBwYXJhbSBpbnQgJGNvdW50IEFuIG9wdGlvbmFsIGxpbWl0CiAgICAgKiBAcmV0dXJuIGFycmF5CiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldFVzZXJIaXN0b3J5KCAkdWlkLCAkYWN0aW9uID0gJycsICRjb3VudCA9IC0xICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlckhpc3RvcnkoJHVpZCwkYWN0aW9uLCRjb3VudCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgYSBsaXN0IG9mIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJzLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJG5vdF9hY3RpdmVfc2luY2UgQW4gb3B0aW9uYWwgdW5peCB0aW1lc3RhbXAgZmlsdGVyIGluZGljYXRpbmcgbGFzdCBhY3Rpdml0eS4KICAgICAqIEByZXR1cm4gaW50W10gQXJyYXkgb2YgbG9nZ2VkIGluIHVpZHMuCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldExvZ2dlZEluVXNlcnMoICRub3RfYWN0aXZlX3NpbmNlID0gJycgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRMb2dnZWRJblVzZXJzKCRub3RfYWN0aXZlX3NpbmNlKTsKICAgIH0KCgogICAgLyoqCiAgICAgKiBAaXRub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEJ1bGtVc2VySW5mbyggJHVpZHMsICRkZWVwID0gVFJVRSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldEJ1bGtVc2VySW5mbygkdWlkcywkZGVlcCk7CiAgICB9CgoKICAgIC8qKgogICAgICogR2V0IHVzZXIgaW5mb3JtYXRpb24gZm9yIHRoZSBzcGVjaWZpZWQgdXNlci4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEBwYXJhbSBib29sICRkZWVwIE9wdGlvbmFsbHkgYWxzbyByZXRyaWV2ZSBwcm9wZXJ0eSB2YWx1ZXMuCiAgICAgKiBAcmV0dXJuIGFycmF5CiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldFVzZXJJbmZvKCAkdWlkLCAkZGVlcCA9IEZBTFNFICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlckluZm8oICR1aWQsICRkZWVwICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdXNlciBpbmZvcm1hdGlvbiBmb3IgdGhlIHNwZWNpZmllZCB1c2VyLCBieSBoaXMgdXNlcm5hbWUuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkdXNlcm5hbWUKICAgICAqIEByZXR1cm4gYXJyYXkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VXNlckluZm9CeU5hbWUoICR1c2VybmFtZSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFVzZXJJbmZvQnlOYW1lKCAkdXNlcm5hbWUgKTsKICAgIH0KCgogICAgLyoqCiAgICAgKiBHZXQgaW5mbyBmb3IgdGhlIHVzZXJzIGJ5IHRoZWlyIGdyb3VwLgogICAgICogV2FybmluZzogVGhpcyBjb3VsZCBwb3RlbnRpYWxseSByZXR1cm4gYWxvdCBvZiBkYXRhLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJGdpZAogICAgICogQHJldHVybiBhcnJheSBBcnJheSBvZiB1c2VyaW5mbyBkYXRhLiAgT25lIGVsZW1lbnQgcGVyIHVzZXIuCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEZ1bGxVc2Vyc0luR3JvdXAoJGdpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0RnVsbFVzZXJzSW5Hcm91cCgkZ2lkKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqIEBkZXByZWNhdGVkCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldFVzZXJzSW5Hcm91cCggJGdpZCA9ICcnLCAkcmVnZXggPSAnJywgJGxpbWl0ID0gJycsICRzb3J0ID0gJycsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwcm9wZXJ0eSA9ICcnLCAkcHJvcHJlZ2V4ID0gJycsICRsb2dnZWRpbm9ubHkgPSAwLCAkc3RhcnRfcmVjb3JkID0gMCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlcnNJbkdyb3VwKCAkZ2lkLCAkcmVnZXgsICRsaW1pdCwgJHNvcnQsICRwcm9wZXJ0eSwgJHByb3ByZWdleCwgJGxvZ2dlZGlub25seSwgJHN0YXJ0X3JlY29yZCApOwogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICogQGRlcHJlY2F0ZWQKICAgICAqLwogICAgZnVuY3Rpb24gZ2V0X2xhc3R1c2VycXVlcnlfbWF0Y2hlcygpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPmdldF9sYXN0dXNlcnF1ZXJ5X21hdGNoZXMoKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqIEBkZXByZWNhdGVkCiAgICAgKi8KICAgIGZ1bmN0aW9uIGdldF9sYXN0dXNlcnF1ZXJ5X2NvdW50KCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+Z2V0X2xhc3R1c2VycXVlcnlfY291bnQoKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqIEBkZXByZWNhdGVkCiAgICAgKi8KICAgIGZ1bmN0aW9uIHJlc2V0X2xhc3R1c2VycXVlcnkoKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5yZXNldF9sYXN0dXNlcnF1ZXJ5KCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBUZXN0IGlmIHRoZSBndWlkIHNwZWNpZmllZCBpcyBhIHZhbGlkLCBleGlzdGluZyBncm91cCBpZC4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICRnaWQKICAgICAqIEByZXR1cm4gYm9vbAogICAgICovCiAgICBmdW5jdGlvbiBHcm91cEV4aXN0c0J5SUQoICRnaWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Hcm91cEV4aXN0c0J5SUQoICRnaWQgKTsKICAgIH0KCiAgICAvKioKICAgICAqIFRlc3QgaWYgdGhlIGdyb3VwIG5hbWUgc3BlY2lmaWVkIGlzIGEgdmFsaWQsIGV4aXN0aW5nIGdyb3VwLgogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGhlIGdyb3VwIG5hbWUuCiAgICAgKiBAcmV0dXJuIGJvb2wKICAgICAqLwogICAgZnVuY3Rpb24gR3JvdXBFeGlzdHNCeU5hbWUoICRuYW1lICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R3JvdXBFeGlzdHNCeU5hbWUoICRuYW1lICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBUaGUgZW1haWwgb2YgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlciBmb3IgdGhpcyByZXF1ZXN0LgogICAgICoKICAgICAqIEByZXR1cm4gc3RyaW5nCiAgICAgKi8KICAgIGZ1bmN0aW9uIExvZ2dlZEluRW1haWwoKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Mb2dnZWRJbkVtYWlsKCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdGhlIGVtYWlsIGFkZHJlc3Mgb2YgdGhlIHNwZWNpZmllZCB1c2VyLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVpZAogICAgICogQHJldHVybiBzdHJpbmcKICAgICAqLwogICAgZnVuY3Rpb24gR2V0RW1haWwoJHVpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0RW1haWwoJHVpZCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gQ2xlYXJQcm9wZXJ0eUNhY2hlKCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+Q2xlYXJQcm9wZXJ0eUNhY2hlKCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgYWxsIHByb3BlcnR5IGRlZmluaXRpb25zLgogICAgICoKICAgICAqIEByZXR1cm4gYXJyYXkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0UHJvcGVydHlEZWZucygpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFByb3BlcnR5RGVmbnMoKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCBhIHByb3BlcnR5IGRlZmluaXRpb24gcmVjb3JkIGJ5IGl0cyBuYW1lCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSB0aGUgcHJvcGVydHkgbmFtZS4KICAgICAqIEByZXR1cm4gYXJyYXkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0UHJvcGVydHlEZWZuKCAkbmFtZSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFByb3BlcnR5RGVmbiggJG5hbWUgKTsKICAgIH0KCiAgICAvKioKICAgICAqIFJldHVybiBzZWxlY3Qgb3B0aW9ucyBmb3IgYSBwcm9wZXJ0eSBhcyBhIHNpbXBsZSwgb3IgYSAyIGRpbWVuc2lvbmFsIGFycmF5CiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgcHJvcGVydHkgbmFtZQogICAgICogQHBhcmFtIGludCAkZGltICBJZiAxLCByZXR1cm4gYSBzaW1wbGUgYXNzb2NpYXRpdmUgYXJyYXkuICBJZiAyLCByZXR1cm4gYSBtdWx0aS1kaW1lbnNpb25hbCBhcnJheSB3aXRoIHByb3BlcnRpZXMgb3B0aW9uX25hbWUsIG9wdGlvbl90ZXh0IGFuZCBjb250cm9sX25hbWUKICAgICAqLwogICAgZnVuY3Rpb24gR2V0U2VsZWN0T3B0aW9ucyggJG5hbWUsICRkaW0gPSAxICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0U2VsZWN0T3B0aW9ucyggJG5hbWUsICRkaW0gKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCB0aGUgdXNlcm5hbWUgZm9yIGEgc3BlY2lmaWVkIHVpZAogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVzZXJpZAogICAgICogQHJldHVybiBzdHJpbmcKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VXNlck5hbWUoJHVzZXJpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlck5hbWUoJHVzZXJpZCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdGhlIHVzZXJpZCBmb3IgYSBzcGVjaWZpZWQgdXNlcm5hbWUKICAgICAqCiAgICAgKiBAcGFyYW0gc3RyaW5nICR1c2VybmFtZQogICAgICogQHJldHVybiBpdAogICAgICovCiAgICBmdW5jdGlvbiBHZXRVc2VySUQoJHVzZXJuYW1lKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRVc2VySUQoJHVzZXJuYW1lKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCB0aGUgZ3JvdXAgbmFtZSBmb3IgYSBzcGVjaWZpZWQgZ3JvdXAgaWQKICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICRncm91cGlkCiAgICAgKiBAcmV0dXJuIHN0cmluZwogICAgICovCiAgICBmdW5jdGlvbiBHZXRHcm91cE5hbWUoJGdyb3VwaWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldEdyb3VwTmFtZSggJGdyb3VwaWQgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCB0aGUgZGVzY3JpcHRpb25mIG9yIGEgc3BlY2lmaWVkIGdyb3VwIGlkCiAgICAgKgogICAgICogQHBhcmFtIGludCAkZ3JvdXBpZAogICAgICogQHJldHVybiBzdHJpbmcKICAgICAqLwogICAgZnVuY3Rpb24gR2V0R3JvdXBEZXNjKCRncm91cGlkKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cERlc2MoICRncm91cGlkICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgYSBsaXN0IG9mIHRoZSBncm91cHMsIGZvciB1c2UgaW4gYSBkcm9wZG93bi4KICAgICAqCiAgICAgKiBAcmV0dXJuIGFycmF5CiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEdyb3VwTGlzdCgpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldEdyb3VwTGlzdCgpOwogICAgfQoKICAgIC8qKgogICAgICogR2V0IGEgZnVsbCBncm91cCBsaXN0LCB3aXRoIGFsbCBpbmZvcm1hdGlvbiBhYm91dCB0aGF0IGdyb3VwLgogICAgICoKICAgICAqIEBwYXJhbSBib29sICR3aXRoX2NvdW50IG9wdGlvbmFsbHkgaW5jbHVkZSBtZW1iZXJzaGlwIGluZm8uCiAgICAgKiBAcmV0dXJuIGFycmF5CiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEdyb3VwTGlzdEZ1bGwoJHdpdGhfY291bnQgPSBGQUxTRSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0R3JvdXBMaXN0RnVsbCgkd2l0aF9jb3VudCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHaXZlbiBhIGdyb3VwIG5hbWUsIGdldCBhIGdyb3VwIGlkLgogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJGdyb3VwbmFtZQogICAgICogQHJldHVybiBpbnQKICAgICAqLwogICAgZnVuY3Rpb24gR2V0R3JvdXBJRCgkZ3JvdXBuYW1lKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cElEKCAkZ3JvdXBuYW1lICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdGhlIGxpc3Qgb2YgZ3JvdXBzIChieSBuYW1lKSB0aGF0IGEgdXNlciBpcyBhIG1lbWJlciBvZi4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1c2VyaWQKICAgICAqIEByZXR1cm4gc3RyaW5nW10KICAgICAqLwogICAgZnVuY3Rpb24gR2V0TWVtYmVyR3JvdXBzKCR1c2VyaWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldE1lbWJlckdyb3VwcygkdXNlcmlkKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCB0aGUgZGF0ZSB0aGF0IGEgdXNlciBhY2NvdW50IGV4cGlyZXMuCiAgICAgKgogICAgICogQHBhcmFtICR1aWQKICAgICAqIEByZXR1cm4gaW50IEEgdW5peCB0aW1lc3RhbXAgb2YgdGhlIGV4cGlyeSBkYXRlLgogICAgICovCiAgICBmdW5jdGlvbiBHZXRFeHBpcnlEYXRlKCAkdWlkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0RXhwaXJ5RGF0ZSggJHVpZCApOwogICAgfQoKICAgIC8qKgogICAgICogVGVzdCBpZiB0aGUgc3BlY2lmaWVkIGFjY291bnQgaXMgZXhwaXJlZC4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEByZXR1cm4gYm9vbAogICAgICovCiAgICBmdW5jdGlvbiBJc0FjY291bnRFeHBpcmVkKCAkdWlkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+SXNBY2NvdW50RXhwaXJlZCggJHVpZCApOwogICAgfQoKICAgIC8qKgogICAgICogVGVzdCBpZiB0aGUgc3BlY2lmaWVkIHBsYWluIHRleHQgcGFzc3dvcmQgaXMgc3VpdGFibGUgKG1hdGNoZXMgbW9kdWxlIHNldHRpbmdzKQogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJHBhc3N3b3JkCiAgICAgKiBAcmV0dXJuIGJvb2wKICAgICAqLwogICAgZnVuY3Rpb24gSXNWYWxpZFBhc3N3b3JkKCAkcGFzc3dvcmQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Jc1ZhbGlkUGFzc3dvcmQoICRwYXNzd29yZCApOwogICAgfQoKICAgIC8qKgogICAgICogR2V0IHRoZSBwcm9tcHQgZm9yIGEgdXNlcm5hbWUuCiAgICAgKiBUaGlzIG1heSBjaGFuZ2UgYmFzZWQgb24gbW9kdWxlIHNldHRpbmdzLgogICAgICoKICAgICAqIEByZXR1cm4gc3RyaW5nCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldFVzZXJuYW1lUHJvbXB0KCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlcm5hbWVQcm9tcHQoKTsKICAgIH0KCiAgICAvKioKICAgICAqIFRlc3QgaWYgdGhlIGVtYWlsIHNwZWNpZmllZCBpcyB2YWxpZCwgYW5kIG9wdGlvbmFsbHkgbm90IHVzZWQuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkZW1haWwgVGhlIGVtYWlsIGFkZHJlc3MgdG8gdGVzdAogICAgICogQHBhcmFtIGludCAkdWlkIElmIHNwZWNpaWVkLCB0aGlzIHZhbHVlIHdpbGwgYmUgdXNlZCB0byBlbnN1cmUgdGhhdCB0aGUgZW1haWwgYWRkcmVzc3MgaXMgc3RvcmVkIGluIHRoZSBkYXRhYmFzZSBhbmQgbm90IGFzc29jaWF0ZWQgd2l0aCBhbnkgb3RoZXIgdXNlcnMuCiAgICAgKiBAcGFyYW0gYm9vbGVhbiAkY2hlY2tfZXhpc3RpbmcuICBJZiBzcGVjaWZpZWQsIHRoaXMgZmxhZyBpbmRpY2F0ZXMgdGhhdCB0aGUgc3lzdGVtIHNob3VsZCBjaGVjayBpZiB0aGUgZW1haWwgYWRkcmVzcyBpcyBub3QgdXNlZCBjdXJyZW50bHkgaW4gdGhlIHN5c3RlbS4KICAgICAqIEByZXR1cm4gYm9vbGVhbiBpbmRpY2F0aW5nIHdldGhlciB0aGlzIGVtYWlsIGFkZHJlc3MgY2FuIGJlIHVzZWQgd2l0aGluIHRoZSBzeXN0ZW0uCiAgICAgKi8KICAgIGZ1bmN0aW9uIElzVmFsaWRFbWFpbEFkZHJlc3MoICRlbWFpbCwgJHVpZCA9IC0xLCAkY2hlY2tfZXhpc3RpbmcgPSBGQUxTRSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPklzVmFsaWRFbWFpbEFkZHJlc3MoICRlbWFpbCwgJHVpZCwgJGNoZWNrX2V4aXN0aW5nICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBUZXN0IHdldGhlciB0aGUgc3BlY2lmaWVkIHVzZXJuYW1lIGlzIHZhbGlkIGZvciB0aGUgc3lzdGVtLgogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJHVzZXJuYW1lCiAgICAgKiBAcGFyYW0gYm9vbGVhbiAkY2hlY2sgT3B0aW9uYWxseSB0ZXN0IHdoZXRoZXIgdGhpcyB1c2VybmFtZSBpcyBpbiBjdXJyZW50IHVzZS4KICAgICAqIEBwYXJhbSBpbnQgJHVpZCBJZiAkY2hlY2sgaXMgdHJ1ZSwgaW5kaWNhdGUgYW4gb3B0aW9uYWwgdWlkIHRvIGV4Y2x1ZGUgZnJvbSB0aGUgY2hlY2sKICAgICAqIEByZXR1cm4gYm9vbGVhbgogICAgICovCiAgICBmdW5jdGlvbiBJc1ZhbGlkVXNlcm5hbWUoICR1c2VybmFtZSwgJGNoZWNrID0gdHJ1ZSwgJHVpZCA9IC0xICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+SXNWYWxpZFVzZXJuYW1lKCAkdXNlcm5hbWUsICRjaGVjaywgJHVpZCApOwogICAgfQoKICAgIC8qKgogICAgICogVmFsaWRhdGUgdGhlIHVzZXIgcGFzc3dvcmQuCiAgICAgKiBUaGlzIGlzIGlzIG5vdCBhIGxvZ2luIG9wZXJhdGlvbiwgYnV0IGRvZXMgcGVyZm9ybSB0aGUgdmFsaWRhdGlvbiBvZiB0aGUgcGFzc3dvcmQuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkdXNlcm5hbWUgVGhlIHVzZXIgbmFtZQogICAgICogQHBhcmFtIHN0cmluZyAkcGFzc3dvcmQgVGhlIHBsYWluIHRleHQgcGFzc3dvcmQuCiAgICAgKiBAcGFyYW0gc3RyaW5nICRncm91cHMgQW4gb3B0aW9uYWwgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXAgbmFtZXMuICBJZiBzcGVjaWZpZWQsIHRoZSB1c2VyIG11c3QgYWxzbyBiZWxvbmcgdG8gb25lIG9mIHRoZXNlIGdyb3Vwcy4KICAgICAqIEByZXR1cm4gYm9vbGVhbgogICAgICovCiAgICBmdW5jdGlvbiBDaGVja1Bhc3N3b3JkKCR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZ3JvdXBzID0gJycpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkNoZWNrUGFzc3dvcmQoJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRncm91cHMpOwogICAgfQoKICAgIC8qKgogICAgICogTG9nIHRoZSB1c2VyIGludG8gdGhlIHN5c3RlbS4KICAgICAqCiAgICAgKiBAcGFyYW0gc3RyaW5nICR1c2VybmFtZQogICAgICogQHBhcmFtIHN0cmluZyAkcGFzc3dvcmQgVGhlIHBsYWluIHRleHQgcGFzc3dvcmQKICAgICAqIEBwYXJhbSBzdHJpbmcgJGdyb3VwcyBBbiBvcHRpb25hbCBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBncm91cCBuYW1lcy4gIElmIHNwZWNpZmllZCwgdGhlIHVzZXIgbXVzdCBhbHNvIGJlbG9uZyB0byBvbmUgb2YgdGhlc2UgZ3JvdXBzLgogICAgICogQHBhcmFtIGJvb2xlYW4gJGlnbm9yZWQgTm8gbG9uZ2VyIHVzZWQKICAgICAqIEBwYXJhbSBib29sZWFuICRmb3JjZV9sZ291dCBGb3JjZSB0aGUgdXNlciB0byBhIGxvZ2dlZCBvdXQgc3RhdGUgYmVmb3JlIGJlaW5nIGxvZ2dlZCBpbiBhZ2Fpbi4KICAgICAqIEByZXR1cm4gYXJyYXkgVGhlIGZpcnN0IGVsZW1lbnQgb2YgdGhlIGFycmF5IGlzIGVpdGhlciB0aGUgdWlkIG9yIEZBTFNFLiAgSWYgZmFsc2UsIHRoZSBzZWNvbmQgZWxlbWVudCBpcyBhbiBlcnJvciBzdHJpbmcuCiAgICAgKi8KICAgIGZ1bmN0aW9uIExvZ2luKCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGdyb3VwcyA9ICcnLCAkaWdub3JlZCA9IGZhbHNlLCAkZm9yY2VfbG9nb3V0ID0gZmFsc2UpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkxvZ2luKCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGdyb3VwcywgZmFsc2UsICRmb3JjZV9sb2dvdXQpOwogICAgfQoKICAgIC8qKgogICAgICogVGhlIHVzZXJuYW1lIG9mIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIgZm9yIHRoaXMgcmVxdWVzdC4KICAgICAqCiAgICAgKiBAcmV0dXJuIHN0cmluZwogICAgICovCiAgICBmdW5jdGlvbiBMb2dnZWRJbk5hbWUoKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgICRzdHIgPSAkdGhpcy0+dXNlcm1hbmlwLT5Mb2dnZWRJbk5hbWUoKTsKICAgICAgICByZXR1cm4gJHN0cjsKICAgIH0KCiAgICAvKioKICAgICAqIExvZ291dCB0aGUgc3BlY2lmaWVkIHVzZXIsIG9yIHRoZSBjdXJyZW50IHVzZXIuCiAgICAgKgogICAgICogQHBhcmFtIGludCAkdWlkIEFuIG9wdGlvbmFsIHVpZC4gIElmIG5vdCBzcGVjaWZpZWQsIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1aWQgZm9yIHRoaXMgcmVxdWVzdCB3aWxsIGJlIHVzZWQuCiAgICAgKiBAcGFyYW0gc3RyaW5nICRtZXNzYWdlIEFuIG9wdGlvbmFsIHN0cmluZyB0byBpbmNsdWRlIGluIHRoaWUgaGlzdG9yeSBsb2cuCiAgICAgKi8KICAgIGZ1bmN0aW9uIExvZ291dCgkdWlkID0gJycsJG1lc3NhZ2UgPSAnbG9nb3V0JykKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+TG9nb3V0KCR1aWQsJG1lc3NhZ2UpOwogICAgfQoKICAgIC8qKgogICAgICogTG9nb3V0IHRoZSBzcGVjaWZpZWQgdXNlci4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQgQW4gb3B0aW9uYWwgdWlkLiAgSWYgbm90IHNwZWNpZmllZCwgdGhlIGN1cnJlbnQgbG9nZ2VkIGluIHVpZCBmb3IgdGhpcyByZXF1ZXN0IHdpbGwgYmUgdXNlZC4KICAgICAqIEBwYXJhbSBzdHJpbmcgJG1lc3NhZ2UgQW4gb3B0aW9uYWwgc3RyaW5nIHRvIGluY2x1ZGUgaW4gdGhpZSBoaXN0b3J5IGxvZy4KICAgICAqLwogICAgZnVuY3Rpb24gTG9nb3V0VXNlcigkdWlkLCRldmVudG1zZyA9ICdsb2dvdXQnKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Mb2dvdXRVc2VyKCR1aWQsJGV2ZW50bXNnKTsKICAgIH0KCiAgICAvKioKICAgICAqIFJldHVybiB0aGUgdWlkIG9mIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1c2VyIGZvciB0aGlzIHJlcXVlc3QuCiAgICAgKgogICAgICogQHJldHVybiBpbnQKICAgICAqLwogICAgZnVuY3Rpb24gTG9nZ2VkSW5JZCgpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkxvZ2dlZEluSWQoKTsKICAgIH0KCiAgICAvKioKICAgICAqIFRlc3Qgd2hldGhlciB0aGUgY3VycmVudCBzaXRlIHZpc2l0b3IgaXMgbG9nZ2VkIGluIHRvIEZyb250RW5kVXNlcnMKICAgICAqCiAgICAgKiBAcmV0dXJuIGJvb2xlYW4KICAgICAqLwogICAgZnVuY3Rpb24gTG9nZ2VkSW4oKQogICAgewogICAgICAgICR0bXAgPSAkdGhpcy0+TG9nZ2VkSW5JZCgpOwogICAgICAgIGlmKCAkdG1wID4gMCApIHJldHVybiBUUlVFOwogICAgICAgIHJldHVybiBGQUxTRTsKICAgIH0KCiAgICAvKioKICAgICAqIFRlc3Qgd2hldGhlciB0aGUgc3BlY2lmaWVkIHVzZXIgaXMgYSBtZW1iZXIgb2YgdGhlIHNwZWNpZmllZCBncm91cC4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1c2VyaWQKICAgICAqIEBwYXJhbSBpbnQgJGdyb3VwaWQKICAgICAqIEByZXR1cm4gYm9vbGVhbgogICAgICovCiAgICBmdW5jdGlvbiBNZW1iZXJPZkdyb3VwKCR1c2VyaWQsJGdyb3VwaWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPk1lbWJlck9mR3JvdXAoJHVzZXJpZCwkZ3JvdXBpZCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKiBAaW50ZXJuYWwKICAgICAqLwogICAgZnVuY3Rpb24gUmVtb3ZlVXNlclRlbXBDb2RlKCAkdWlkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+UmVtb3ZlVXNlclRlbXBDb2RlKCAkdWlkICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBSZW1vdmUgdGhlIHNwZWNpZmllZCB1c2VyIGZyb20gdGhlIHNwZWNpZmllZCBncm91cC4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEBwYXJhbSBpbnQgJGdpZAogICAgICogQHJldHVybiBhcnJheSBUaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgYSBib29sZWFuIHN0YXR1cy4gIElmIGZhbHNlLCB0aGUgc2Vjb25kIGVsZW1lbnQgaXMgYW4gZXJyb3Igc3RyaW5nLgogICAgICovCiAgICBmdW5jdGlvbiBSZW1vdmVVc2VyRnJvbUdyb3VwKCAkdWlkLCAkZ2lkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+UmVtb3ZlVXNlckZyb21Hcm91cCggJHVpZCwgJGdpZCApOwogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICogQGludGVybmFsCiAgICAgKi8KICAgIGZ1bmN0aW9uIFNldFVzZXJUZW1wQ29kZSggJHVpZCwgJGNvZGUgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5TZXRVc2VyVGVtcENvZGUoICR1aWQsICRjb2RlLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycycpICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBVcGRhdGUgdGhlIGluZm9ybWF0aW9uIGZvciBhbiBleGlzdGluZyBwcm9wZXJ0eSBkZWZpbml0aW9uLgogICAgICogVGhpcyBtZXRob2QgZG9lcyBub3QgdXBkYXRlIHRoZSBwcm9wZXJ0aWVzIHRhYmxlIGlmIHRoZSBwcm9wZXJ0eSBpcyBnaXZlbiBhIG5ldyBuYW1lLCBvciBmb3JjZV91bmlxdWUgb3IgZW5jcnlwdCB2YWx1ZXMuCiAgICAgKgogICAgICogQGludGVybmFsCiAgICAgKiBAcGFyYW0gc3RyaW5nICRuYW1lIFRoZSBwcm9wZXJ0eSBkZWZpbml0aW9uIG5hbWUKICAgICAqIEBwYXJhbSBzdHJpbmcgJG5ld25hbWUgQSBuZXcgbmFtZSBmb3IgdGhlIHByb3BlcnR5LgogICAgICogQHBhcmFtIHN0cmluZyAkcHJvbXB0IFRoZSBwcm9wZXJ0eSBwcm9tcHQKICAgICAqIEBwYXJhbSBpbnQgJGxlbmd0aCBUaGUgcHJvcGVydHkgaW5wdXQgZmllbGQgbGVuZ3RoCiAgICAgKiBAcGFyYW0gaW50ICR0eXBlIFRoZSBwcm9wZXJ0eSB0eXBlCiAgICAgKiBAcGFyYW0gaW50ICRtYXhsZW5ndGggVGhlIHByb3BlcnR5IGlucHV0IGZpZWxkIG1heGltdW0gbGVuZ3RoLgogICAgICogQHBhcmFtIHN0cmluZyAkYXR0cmlicyBBIHNlcmlhbGl6ZWQgYXJyYXkgb2YgYXR0cmlidXRlcyBmb3IgdGhlIHByb3BlcnR5CiAgICAgKiBAcGFyYW0gYm9vbCAkZm9yY2VfdW5pcXVlIEZvcmNlIHRoaXMgcHJvcGVydHkgdG8gYmUgdW5pcXVlIGFjcm9zcyBhbGwgdXNlcnMuCiAgICAgKiBAcGFyYW0gYm9vbCAkZW5jcnlwdCBGb3JjZSB0aGUgdmFsdWVzIG9mIHRoaXMgcHJvcGVydHkgdG8gYmUgZW5jcnlwdGVkIHdoZW4gc2F2ZWQuCiAgICAgKiBAcmV0dXJuIGJvb2xlYW4KICAgICAqLwogICAgZnVuY3Rpb24gU2V0UHJvcGVydHlEZWZuKCAkbmFtZSwgJG5ld25hbWUsICRwcm9tcHQsICRsZW5ndGgsICR0eXBlLCAkbWF4bGVuZ3RoID0gMCwgJGF0dHJpYnMgPSAnJywgJGZvcmNlX3VuaXF1ZSA9IDAsICRlbmNyeXB0ID0gMCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFByb3BlcnR5RGVmbiggJG5hbWUsICRuZXduYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCwgJG1heGxlbmd0aCwgJGF0dHJpYnMsICRmb3JjZV91bmlxdWUsICRlbmNyeXB0ICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBTZXQgdGhlIGV4dHJhIGluZm9ybWF0aW9uIGZvciBhIHByb2VydHkuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgcHJvcGVydHkgbmFtZQogICAgICogQHBhcmFtIHN0cmluZyAkZXh0cmEgVGhlIGV4dHJhIHZhbHVlLgogICAgICovCiAgICBmdW5jdGlvbiBTZXRQcm9wZXJ0eURlZm5FeHRyYSgkbmFtZSwkZXh0cmEpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFByb3BlcnR5RGVmbkV4dHJhKCRuYW1lLCRleHRyYSk7CiAgICB9CgogICAgLyoqCiAgICAgKiBVcGRhdGUgYSBncm91cCBkZWZpbml0aW9uLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJGdpZAogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgZ3JvdXAgbmFtZQogICAgICogQHBhcmFtIHN0cmluZyAkZGVzYyBBbiBvcHRpb25hbCBncm91cCBkZXNjcmlwdGlvbgogICAgICogQHJldHVybiBhcnJheSBUaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgYSBib29sZWFuIHN0YXR1cy4gIElmIGZhbHNlLCB0aGUgc2Vjb25kIGVsZW1lbnQgaXMgYW4gZXJyb3Igc3RyaW5nLgogICAgICovCiAgICBmdW5jdGlvbiBTZXRHcm91cCggJGdpZCwgJG5hbWUsICRkZXNjID0gbnVsbCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldEdyb3VwKCAkZ2lkLCAkbmFtZSwgJGRlc2MgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdpdmVuIGEgcGxhaW4gdGV4dCBwYXNzd29yZCwgZW5jcnlwdCBpdCBmb3IgYSB1c2VyCiAgICAgKgogICAgICogQHBhcmFtIGludCAkdWlkCiAgICAgKiBAcGFyYW0gc3RyaW5nICRwYXNzd29yZAogICAgICogQHJldHVybiBzdHJpbmcKICAgICAqLwogICAgZnVuY3Rpb24gRW5jcnlwdFBhc3N3b3JkKCAkdWlkLCAkcGxhaW5fcGFzc3dvcmQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5FbmNyeXB0UGFzc3dvcmQoICR1aWQsICRwbGFpbl9wYXNzd29yZCApOwogICAgfQoKICAgIC8qKgogICAgICogU2V0IHRoZSBwYXNzd29yZCBmb3IgYSB1c2VyCiAgICAgKgogICAgICogQHBhcmFtIGludCAkdWlkCiAgICAgKiBAcGFyYW0gc3RyaW5nICRwYXNzd29yZAogICAgICogQHJldHVybiBhcnJheSBUaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgYSBib29sZWFuIHN0YXR1cy4gIElmIGZhbHNlLCB0aGUgc2Vjb25kIGVsZW1lbnQgaXMgYW4gZXJyb3Igc3RyaW5nLgogICAgICovCiAgICBmdW5jdGlvbiBTZXRVc2VyUGFzc3dvcmQoICR1aWQsICRwYXNzd29yZCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFVzZXJQYXNzd29yZCggJHVpZCwgJHBhc3N3b3JkICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBUb2dnbGUgYSB1c2VyIGFjY291bnQgYXMgZGlzYmxlZC4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEBwYXJhbSBib29sZWFuICRmbGFnIFdoZXRoZXIgb3Igbm90IHRoZSBhY2NvdW50IGlzIGRpc2FibGVkLgogICAgICovCiAgICBmdW5jdGlvbiBTZXRVc2VyRGlzYWJsZWQoICR1aWQsICRmbGFnID0gVFJVRSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgJHRoaXMtPnVzZXJtYW5pcC0+U2V0VXNlckRpc2FibGVkKCR1aWQsJGZsYWcpOwogICAgfQoKICAgIC8qKgogICAgICogVG9nZ2xlIHdoZXRoZXIgYSB1c2VyIGlzIGZvcmNlZCB0byBjaGFuZ2UgaGlzIHBhc3N3b3JkIGF0IHRoZSBuZXh0IGxvZ2luLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVpZAogICAgICogQHBhcmFtIGJvb2xlYW4gJGZsYWcKICAgICAqLwogICAgZnVuY3Rpb24gRm9yY2VQYXNzd29yZENoYW5nZSggJHVpZCwgJGZsYWcgPSBUUlVFICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICAkdGhpcy0+dXNlcm1hbmlwLT5Gb3JjZVBhc3N3b3JkQ2hhbmdlKCR1aWQsJGZsYWcpOwogICAgfQoKICAgIC8qKgogICAgICogVG9nZ2xlIHdoZXRoZXIgYSB1c2VyIGlzIGZvcmNlZCB0byBjaGFuZ2UgaGlzIHNldHRpbmdzIGluIHNvbWUgd2F5IGF0IHRoZSBuZXh0IGxvZ2luLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVpZAogICAgICogQHBhcmFtIGJvb2xlYW4gJGZsYWcKICAgICAqLwogICAgZnVuY3Rpb24gRm9yY2VDaGFuZ2VTZXR0aW5ncyggJHVpZCwgJGZsYWcgPSBUUlVFICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICAkdGhpcy0+dXNlcm1hbmlwLT5Gb3JjZUNoYW5nZVNldHRpbmdzKCR1aWQsJGZsYWcpOwogICAgfQoKICAgIC8qKgogICAgICogVG9nZ2xlIHdoZXRoZXIgYSB1c2VyIGlzIGZvcmNlZCB0byByZXZhbGlkYXRlIHRoZW1zZWx2ZXMKICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEBwYXJhbSBib29sZWFuICRmbGFnCiAgICAgKi8KICAgIGZ1bmN0aW9uIEZvcmNlVmVyaWZ5KCAkdWlkLCAkZmxhZyA9IFRSVUUgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgICR0aGlzLT51c2VybWFuaXAtPkZvcmNlVmVyaWZ5KCR1aWQsJGZsYWcpOwogICAgfQoKICAgIC8qKgogICAgICogQWRqdXN0IHVzZXIgZGV0YWlscwogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVpZAogICAgICogQHBhcmFtIHN0cmluZyAkdXNlcm5hbWUgVGhlIHVzZXIgbmFtZQogICAgICogQHBhcmFtIHN0cmluZyAkcGFzc3dvcmQgVGhlIHVzZXJzIHBsYWluIHRleHQgcGFzc3dvcmQKICAgICAqIEBwYXJhbSBpbnQgJGV4cGlyZXMgQW4gb3B0aW9uYWwgZXhwaXJ5IGRhdGUuCiAgICAgKi8KICAgIGZ1bmN0aW9uIFNldFVzZXIoICR1aWQsICR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZXhwaXJlcyA9IGZhbHNlICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+U2V0VXNlciggJHVpZCwgJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRleHBpcmVzICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBTZXQgZXhwbGljaXQgZ3JvdXAgbWVtYmVyc2hpcC4KICAgICAqIFRoaXMgbWV0aG9kIGRvZXMgbm90IGFsdGVyIHRoZSB1c2VyIHByb3BlcnRpZXMuCiAgICAgKgogICAgICogQHBhcmFtIGludCAkdWlkCiAgICAgKiBAcGFyYW0gaW50W10gJGdycGlkcwogICAgICovCiAgICBmdW5jdGlvbiBTZXRVc2VyR3JvdXBzKCAkdWlkLCAkZ3JwaWRzICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+U2V0VXNlckdyb3VwcyggJHVpZCwgJGdycGlkcyApOwogICAgfQoKICAgIC8qKgogICAgICogQWRkIHVzZXIgdG8gYSBncm91cAogICAgICoKICAgICAqIGRvZXMgbm90IGVmZmVjdCB1c2VyIHByb3BlcnRpZXMKICAgICAqIGRvZXMgbm90IHZhbGlkYXRlIGdpZAogICAgICogdXNlcmlkIGlzIHZhbGlkYXRlZAogICAgICoKICAgICAqIEBwYXJhbSBpbnQgdXNlciBpZAogICAgICogQHBhcmFtIGludCBncm91cCBpZAogICAgICogQHJldHVybiBib29sZWFuCiAgICAgKi8KICAgIGZ1bmN0aW9uIEFkZFVzZXJUb0dyb3VwKCAkdWlkLCAkZ2lkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+QWRkVXNlclRvR3JvdXAoICR1aWQsICRnaWQgKTsKICAgIH0KCiAgICBmdW5jdGlvbiBTZXRVc2VyUHJvcGVydGllcyggJHVpZCwgJHByb3BzICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+U2V0VXNlclByb3BlcnRpZXMoICR1aWQsICRwcm9wcyApOwogICAgfQoKICAgIGZ1bmN0aW9uIFNldFVzZXJQcm9wZXJ0eSgkdGl0bGUsJGRhdGEpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFVzZXJQcm9wZXJ0eSgkdGl0bGUsJGRhdGEpOwogICAgfQoKICAgIGZ1bmN0aW9uIElzVXNlclByb3BlcnR5VmFsdWVVbmlxdWUoJHVpZCwkdGl0bGUsJHZhbHVlKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Jc1VzZXJQcm9wZXJ0eVZhbHVlVW5pcXVlKCR1aWQsJHRpdGxlLCR2YWx1ZSk7CiAgICB9CgogICAgZnVuY3Rpb24gU2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJGRhdGEsJHVzZXJpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+U2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJGRhdGEsJHVzZXJpZCk7CiAgICB9CgogICAgZnVuY3Rpb24gVXNlckV4aXN0c0J5SUQoICR1aWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Vc2VyRXhpc3RzQnlJRCggJHVpZCApOwogICAgfQoKICAgIGZ1bmN0aW9uIFNldEVuY3J5cHRpb25LZXkoJHVpZCA9IC0xLCRmb3JjZSA9IEZBTFNFKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5TZXRFbmNyeXB0aW9uS2V5KCAkdWlkLCAkZm9yY2UgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICovCiAgICBmdW5jdGlvbiBEZWNyeXB0VXNlckRhdGEoJHVpZCwkZGF0YSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVjcnlwdFVzZXJEYXRhKCR1aWQsJGRhdGEpOwogICAgfQoKICAgIC8qKgogICAgICogQGludGVybmFsCiAgICAgKi8KICAgIGZ1bmN0aW9uIEhhc0NhcGFiaWxpdHkoJGNhcGFiaWxpdHksJHBhcmFtcyA9IGFycmF5KCkpCiAgICB7CiAgICAgICAgc3dpdGNoKCAkY2FwYWJpbGl0eSApIHsKICAgICAgICBjYXNlICdjb250ZW50X3R5cGVzJzoKICAgICAgICBjYXNlICdjb250ZW50X2F0dHJpYnV0ZXMnOgogICAgICAgIGNhc2UgJ3Rhc2tzJzoKICAgICAgICAgICAgcmV0dXJuIFRSVUU7CiAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgICAgIH0KICAgIH0KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICovCiAgICBmdW5jdGlvbiBnZXRfY29udGVudF9hdHRyaWJ1dGVzKCRjb250ZW50X3R5cGUpCiAgICB7CiAgICAgICAgJHRtcCA9IGFycmF5KCk7CiAgICAgICAgJGF0dHIgPSBuZXcgQ21zQ29udGVudFR5cGVQcm9maWxlQXR0cmlidXRlKCdmZXVfZ3JvdXBzJywndmlzaXRvcnMnKTsKICAgICAgICAkYXR0ci0+c2V0X2hlbHBlcihmZXVfY29udGVudF9hdHRyaWJ1dGVfaGVscGVyOjpnZXRfaW5zdGFuY2UoKSk7CiAgICAgICAgJHRtcFtdID0gJGF0dHI7CiAgICAgICAgcmV0dXJuICR0bXA7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqLwogICAgc3RhdGljIHB1YmxpYyBmdW5jdGlvbiBwYWdlX3R5cGVfbGFuZ19jYWxsYmFjaygkc3RyKQogICAgewogICAgICAgICRtb2QgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKICAgICAgICAkc3RyID0gc3RyX3JlcGxhY2UoJyAnLCdfJywkc3RyKTsKICAgICAgICBpZiggJHN0ciA9PSAnZm9yZ290X3Bhc3N3b3JkX2VtYWlsJyApICRzdHIgPSAndmVyaWZ5X2VtYWlsJzsKICAgICAgICAkc3RyID0gJ3RwbHR5cGVfJy4kc3RyOwogICAgICAgIGlmKCBpc19vYmplY3QoJG1vZCkgKSByZXR1cm4gJG1vZC0+TGFuZygkc3RyKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICovCiAgICBzdGF0aWMgcHVibGljIGZ1bmN0aW9uIHJlc2V0X3BhZ2VfdHlwZV9kZWZhdWx0cyhDbXNMYXlvdXRUZW1wbGF0ZVR5cGUgJHR5cGUpCiAgICB7CiAgICAgICAgaWYoICR0eXBlLT5nZXRfb3JpZ2luYXRvcigpICE9ICdGcm9udEVuZFVzZXJzJyApIHRocm93IG5ldyBDbXNMb2dpY0V4Y2VwdGlvbignQ2Fubm90IHJlc2V0IGNvbnRlbnRzIGZvciB0aGlzIHRlbXBsYXRlIHR5cGUnKTsKCiAgICAgICAgJGZuID0gbnVsbDsKICAgICAgICBzd2l0Y2goICR0eXBlLT5nZXRfbmFtZSgpICkgewogICAgICAgIGNhc2UgJ2xvZ2luIGZvcm0nOgogICAgICAgICAgICAkZm4gPSAnb3JpZ19sb2dpbmZvcm0udHBsJzsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnbG9nb3V0IGZvcm0nOgogICAgICAgICAgICAkZm4gPSAnb3JpZ19sb2dvdXRmb3JtLnRwbCc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ2Noc2V0dGluZ3MgZm9ybSc6CiAgICAgICAgICAgICRmbiA9ICdvcmlnX2NoYW5nZXNldHRpbmdzLnRwbCc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ2ZvcmdvdCBwYXNzd29yZCBmb3JtJzoKICAgICAgICAgICAgJGZuID0gJ29yaWdfZm9yZ290cGFzc3dvcmQxLnRwbCc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ2ZvcmdvdCBwYXNzd29yZCBlbWFpbCc6CiAgICAgICAgICAgICRmbiA9ICdvcmlnX2ZvcmdvdHBhc3N3b3JkMi50cGwnOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICdmb3Jnb3QgcGFzc3dvcmQgdmVyaWZ5JzoKICAgICAgICAgICAgJGZuID0gJ29yaWdfZm9yZ290cGFzc3dvcmQzLnRwbCc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ2ZvcmNlIG5ldyBwYXNzd29yZCc6CiAgICAgICAgICAgICRmbiA9ICdvcmlnX2ZvcmNlX25ld3B3X2Zvcm0udHBsJzsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnbG9zdCB1c2VybmFtZSBmb3JtJzoKICAgICAgICAgICAgJGZuID0gJ29yaWdfbG9zdHVuZm9ybV90ZW1wbGF0ZS50cGwnOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICdsb3N0IHVzZXJuYW1lIGNvbmZpcm0nOgogICAgICAgICAgICAkZm4gPSAnb3JpZ19sb3N0dW5mb3JtX2NvbmZpcm1fdGVtcGxhdGUudHBsJzsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAndmlldyB1c2VyJzoKICAgICAgICAgICAgJGZuID0gJ29yaWdfdmlld3VzZXJfdGVtcGxhdGUudHBsJzsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAncmVzZXQgc2Vzc2lvbic6CiAgICAgICAgICAgICRmbiA9ICdvcmlnX3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZS50cGwnOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICd2ZXJpZnlfZm9ybSc6CiAgICAgICAgY2FzZSAndmVyaWZ5IGZvcm0nOgogICAgICAgICAgICAkZm4gPSAnb3JpZ192ZXJpZnlmb3JtLnRwbCc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJHR5cGUtPmdldF9uYW1lKCkuJyBpcyBub3QgYSBrbm93biB0eXBlIGZvciB0aGUgJy4kdHlwZS0+Z2V0X29yaWdpbmF0b3IoKS4nIG9yaWdpbmF0b3InKTsKICAgICAgICB9CgogICAgICAgICRmbiA9IGNtc19qb2luX3BhdGgoX19ESVJfXywndGVtcGxhdGVzJywkZm4pOwogICAgICAgIGlmKCBpc19maWxlKCRmbikgKSByZXR1cm4gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICB9Cn0gLy8gY2xhc3MKCi8vIEVPRgoK]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/files/lib.class.feu_user_query.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT5Gcm9udEVuZFVzZXJzIDIuMy4xPC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImF1dGhvciIgY29udGVudD0iIi8+CiAgICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iIi8+CgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2Jvb3RzdHJhcC1jb21iaW5lZC5uby1pY29ucy5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL3ByaXNtLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICA8bGluayBocmVmPSIuLi9jc3MvdGVtcGxhdGUuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIAogICAgPCEtLVtpZiBsdCBJRSA5XT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9odG1sNS5qcyI+PC9zY3JpcHQ+CiAgICA8IVtlbmRpZl0tLT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9qcXVlcnktMS4xMS4wLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvdWkvMS4xMC40L2pxdWVyeS11aS5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS5zbW9vdGgtc2Nyb2xsLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9wcmlzbS5taW4uanMiPjwvc2NyaXB0PgogICAgPCEtLSBUT0RPOiBBZGQgaHR0cDovL2pzY3JvbGxwYW5lLmtlbHZpbmx1Y2suY29tLyB0byBzdHlsZSB0aGUgc2Nyb2xsYmFycyBmb3IgYnJvd3NlcnMgbm90IHVzaW5nIHdlYmtpdC0tPgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgICAgICBmdW5jdGlvbiBsb2FkRXh0ZXJuYWxDb2RlU25pcHBldHMoKSB7CiAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3ByZVtkYXRhLXNyY10nKSkuZm9yRWFjaChmdW5jdGlvbiAocHJlKSB7CiAgICAgICAgICAgICAgICB2YXIgc3JjID0gcHJlLmdldEF0dHJpYnV0ZSgnZGF0YS1zcmMnKTsKICAgICAgICAgICAgICAgIHZhciBleHRlbnNpb24gPSAoc3JjLm1hdGNoKC9cLihcdyspJC8pIHx8IFssICcnXSlbMV07CiAgICAgICAgICAgICAgICB2YXIgbGFuZ3VhZ2UgPSAncGhwJzsKCiAgICAgICAgICAgICAgICB2YXIgY29kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NvZGUnKTsKICAgICAgICAgICAgICAgIGNvZGUuY2xhc3NOYW1lID0gJ2xhbmd1YWdlLScgKyBsYW5ndWFnZTsKCiAgICAgICAgICAgICAgICBwcmUudGV4dENvbnRlbnQgPSAnJzsKCiAgICAgICAgICAgICAgICBjb2RlLnRleHRDb250ZW50ID0gJ0xvYWRpbmfigKYnOwoKICAgICAgICAgICAgICAgIHByZS5hcHBlbmRDaGlsZChjb2RlKTsKCiAgICAgICAgICAgICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CgogICAgICAgICAgICAgICAgeGhyLm9wZW4oJ0dFVCcsIHNyYywgdHJ1ZSk7CgogICAgICAgICAgICAgICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT0gNCkgewoKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHhoci5zdGF0dXMgPCA0MDAgJiYgeGhyLnJlc3BvbnNlVGV4dCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9IHhoci5yZXNwb25zZVRleHQ7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpc20uaGlnaGxpZ2h0RWxlbWVudChjb2RlKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICh4aHIuc3RhdHVzID49IDQwMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9ICfinJYgRXJyb3IgJyArIHhoci5zdGF0dXMgKyAnIHdoaWxlIGZldGNoaW5nIGZpbGU6ICcgKyB4aHIuc3RhdHVzVGV4dDsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAn4pyWIEVycm9yOiBGaWxlIGRvZXMgbm90IGV4aXN0IG9yIGlzIGVtcHR5JzsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH07CgogICAgICAgICAgICAgICAgeGhyLnNlbmQobnVsbCk7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsKICAgICAgICAgICAgbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCk7CiAgICAgICAgfSk7CiAgICAgICAgJCgnI3NvdXJjZS12aWV3Jykub24oJ3Nob3duJywgZnVuY3Rpb24gKCkgewogICAgICAgICAgICBsb2FkRXh0ZXJuYWxDb2RlU25pcHBldHMoKTsKICAgICAgICB9KQogICAgPC9zY3JpcHQ+CgogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIuLi9pbWFnZXMvZmF2aWNvbi5pY28iLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24ucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSI3Mng3MiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24tNzJ4NzIucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxMTR4MTE0IiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi0xMTR4MTE0LnBuZyIvPgo8L2hlYWQ+Cjxib2R5PgoKPGRpdiBjbGFzcz0ibmF2YmFyIG5hdmJhci1maXhlZC10b3AiPgogICAgPGRpdiBjbGFzcz0ibmF2YmFyLWlubmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8YSBjbGFzcz0iYnRuIGJ0bi1uYXZiYXIiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9Ii5uYXYtY29sbGFwc2UiPgogICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tZWxsaXBzaXMtdmVydGljYWwiPjwvaT4KICAgICAgICAgICAgPC9hPgogICAgICAgICAgICA8YSBjbGFzcz0iYnJhbmQiIGhyZWY9Ii4uL2luZGV4Lmh0bWwiPkZyb250RW5kVXNlcnMgMi4zLjE8L2E+CgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtY29sbGFwc2UiPgogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgcHVsbC1yaWdodCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIiBpZD0iY2hhcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hhcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0NsYXNzIGhpZXJhcmNoeSBkaWFncmFtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJyZXBvcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVwb3J0cyA8YiBjbGFzcz0iY2FyZXQiPjwvYj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0Vycm9ycyA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij4xMDY8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9yZXBvcnRzL21hcmtlcnMuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7TWFya2VycyA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij4wPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vcmVwb3J0cy9kZXByZWNhdGVkLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtEZXByZWNhdGVkIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjE8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIDwhLS08ZGl2IGNsYXNzPSJnb190b190b3AiPi0tPgogICAgPCEtLTxhIGhyZWY9IiNfX18iIHN0eWxlPSJjb2xvcjogaW5oZXJpdCI+QmFjayB0byB0b3AmIzE2MDsmIzE2MDs8aSBjbGFzcz0iaWNvbi11cGxvYWQgaWNvbi13aGl0ZSI+PC9pPjwvYT4tLT4KICAgIDwhLS08L2Rpdj4tLT4KPC9kaXY+Cgo8ZGl2IGlkPSJfX18iIGNsYXNzPSJjb250YWluZXItZmx1aWQiPgogICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW4yIHNpZGViYXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbiIgc3R5bGU9Im1hcmdpbi1ib3R0b206IDAiPgogICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1ncm91cCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1oZWFkaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9ImFjY29yZGlvbi10b2dnbGUgIiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjbmFtZXNwYWNlLTE4MjM3Nzc3NTQiPjwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9uYW1lc3BhY2VzL2RlZmF1bHQuaHRtbCIgc3R5bGU9Im1hcmdpbi1sZWZ0OiAzMHB4OyBwYWRkaW5nLWxlZnQ6IDAiPlw8L2E+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8ZGl2IGlkPSJuYW1lc3BhY2UtMTgyMzc3Nzc1NCIgY2xhc3M9ImFjY29yZGlvbi1ib2R5IGNvbGxhcHNlIGluIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1pbm5lciI+CgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCI+ZmV1X3VzZXJfcXVlcnk8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfb3B0Lmh0bWwiPmZldV91c2VyX3F1ZXJ5X29wdDwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGFzcyI+PGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQuaHRtbCI+ZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL0Zyb250RW5kVXNlcnMuaHRtbCI+RnJvbnRFbmRVc2VyczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KCiAgICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CiAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuMTAgb2Zmc2V0MiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuOCBjb250ZW50IGZpbGUiPgogICAgICAgICAgICAgICAgICAgIDxuYXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uYXY+CgogICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiNzb3VyY2UtdmlldyIgcm9sZT0iYnV0dG9uIiBjbGFzcz0icHVsbC1yaWdodCBidG4iIGRhdGEtdG9nZ2xlPSJtb2RhbCI+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvYT4KICAgICAgICAgICAgICAgICAgICA8aDE+PHNtYWxsPmxpYjwvc21hbGw+Y2xhc3MuZmV1X3VzZXJfcXVlcnkucGhwPC9oMT4KICAgICAgICAgICAgICAgICAgICA8cD48ZW0+PC9lbT48L3A+CiAgICAgICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyPkNsYXNzZXM8L2gyPgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X29wdC5odG1sIj5mZXVfdXNlcl9xdWVyeV9vcHQ8L2E+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48ZW0+PC9lbT48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwiPmZldV91c2VyX3F1ZXJ5PC9hPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGVtPjwvZW0+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgICAgIDxhc2lkZSBjbGFzcz0ic3BhbjQgZGV0YWlsc2JhciI+CiAgICAgICAgICAgICAgICAgICAgPGRsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGR0PlBhY2thZ2U8L2R0PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRkPjxkaXYgY2xhc3M9Im5hbWVzcGFjZS13cmFwcGVyIj5cRnJvbnRFbmRVc2VyczwvZGl2PjwvZGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8L2RsPgogICAgICAgICAgICAgICAgICAgIDxoMj5UYWdzPC9oMj4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWNvbmRlbnNlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+PHRkIGNvbHNwYW49IjIiPjxlbT5Ob25lIGZvdW5kPC9lbT48L3RkPjwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KCiAgICAgICAgICAgICAgICA8L2FzaWRlPgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIAogICAgICAgICAgICAKICAgICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj4KCiAgICA8ZGl2IGlkPSJzb3VyY2UtdmlldyIgY2xhc3M9Im1vZGFsIGhpZGUgZmFkZSIgdGFiaW5kZXg9Ii0xIiByb2xlPSJkaWFsb2ciIGFyaWEtbGFiZWxsZWRieT0ic291cmNlLXZpZXctbGFiZWwiIGFyaWEtaGlkZGVuPSJ0cnVlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPgogICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImNsb3NlIiBkYXRhLWRpc21pc3M9Im1vZGFsIiBhcmlhLWhpZGRlbj0idHJ1ZSI+w5c8L2J1dHRvbj4KICAgICAgICAgICAgPGgzIGlkPSJzb3VyY2Utdmlldy1sYWJlbCI+PC9oMz4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij4KICAgICAgICAgICAgPHByZSBkYXRhLXNyYz0iLi4vZmlsZXMvbGliL2NsYXNzLmZldV91c2VyX3F1ZXJ5LnBocC50eHQiIGNsYXNzPSJsYW5ndWFnZS1waHAgbGluZS1udW1iZXJzIj48L3ByZT4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgIDxmb290ZXIgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQyIj4KICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDEiPgogICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQgZm9vdGVyLXNlY3Rpb25zIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYmFyLWNoYXJ0Ij48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPkNsYXNzIEhpZXJhcmNoeSBEaWFncmFtPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLXB1c2hwaW4iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9yZXBvcnRzL2Vycm9ycy5odG1sIj5FcnJvcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj5NYXJrZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQxIj4KICAgICAgICAgICAgICAgICAgICA8aHIgLz4KICAgICAgICAgICAgICAgICAgICBEb2N1bWVudGF0aW9uIGlzIHBvd2VyZWQgYnkgPGEgaHJlZj0iaHR0cDovL3d3dy5waHBkb2Mub3JnLyI+cGhwRG9jdW1lbnRvciA8L2E+IGFuZCBhdXRob3JlZAogICAgICAgICAgICAgICAgICAgIG9uIEZlYnJ1YXJ5IDEydGgsIDIwMTcgYXQgMDk6NDUuCiAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICA8L3NlY3Rpb24+CiAgICA8L2Zvb3Rlcj4KPC9kaXY+Cgo8L2JvZHk+CjwvaHRtbD4K]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/files/lib.class.feu_user_query.php.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT5Gcm9udEVuZFVzZXJzIDIuMzwvdGl0bGU+CiAgICA8bWV0YSBuYW1lPSJhdXRob3IiIGNvbnRlbnQ9IiIvPgogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IiIvPgoKICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vbmV0ZG5hLmJvb3RzdHJhcGNkbi5jb20vdHdpdHRlci1ib290c3RyYXAvMi4zLjIvY3NzL2Jvb3RzdHJhcC1jb21iaW5lZC5uby1pY29ucy5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9uZXRkbmEuYm9vdHN0cmFwY2RuLmNvbS9mb250LWF3ZXNvbWUvMy4yLjEvY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL3ByaXNtLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICA8bGluayBocmVmPSIuLi9jc3MvdGVtcGxhdGUuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIAogICAgPCEtLVtpZiBsdCBJRSA5XT4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2h0bWw1c2hpbS5nb29nbGVjb2RlLmNvbS9zdm4vdHJ1bmsvaHRtbDUuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgICA8IVtlbmRpZl0tLT4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2NvZGUuanF1ZXJ5LmNvbS9qcXVlcnktMS4xMC4yLm1pbi5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2NvZGUuanF1ZXJ5LmNvbS91aS8xLjEwLjMvanF1ZXJ5LXVpLm1pbi5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL25ldGRuYS5ib290c3RyYXBjZG4uY29tL3R3aXR0ZXItYm9vdHN0cmFwLzIuMy4yL2pzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS5zbW9vdGgtc2Nyb2xsLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9wcmlzbS5taW4uanMiPjwvc2NyaXB0PgogICAgPCEtLSBUT0RPOiBBZGQgaHR0cDovL2pzY3JvbGxwYW5lLmtlbHZpbmx1Y2suY29tLyB0byBzdHlsZSB0aGUgc2Nyb2xsYmFycyBmb3IgYnJvd3NlcnMgbm90IHVzaW5nIHdlYmtpdC0tPgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgICAgICBmdW5jdGlvbiBsb2FkRXh0ZXJuYWxDb2RlU25pcHBldHMoKSB7CiAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3ByZVtkYXRhLXNyY10nKSkuZm9yRWFjaChmdW5jdGlvbiAocHJlKSB7CiAgICAgICAgICAgICAgICB2YXIgc3JjID0gcHJlLmdldEF0dHJpYnV0ZSgnZGF0YS1zcmMnKTsKICAgICAgICAgICAgICAgIHZhciBleHRlbnNpb24gPSAoc3JjLm1hdGNoKC9cLihcdyspJC8pIHx8IFssICcnXSlbMV07CiAgICAgICAgICAgICAgICB2YXIgbGFuZ3VhZ2UgPSAncGhwJzsKCiAgICAgICAgICAgICAgICB2YXIgY29kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NvZGUnKTsKICAgICAgICAgICAgICAgIGNvZGUuY2xhc3NOYW1lID0gJ2xhbmd1YWdlLScgKyBsYW5ndWFnZTsKCiAgICAgICAgICAgICAgICBwcmUudGV4dENvbnRlbnQgPSAnJzsKCiAgICAgICAgICAgICAgICBjb2RlLnRleHRDb250ZW50ID0gJ0xvYWRpbmfigKYnOwoKICAgICAgICAgICAgICAgIHByZS5hcHBlbmRDaGlsZChjb2RlKTsKCiAgICAgICAgICAgICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CgogICAgICAgICAgICAgICAgeGhyLm9wZW4oJ0dFVCcsIHNyYywgdHJ1ZSk7CgogICAgICAgICAgICAgICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT0gNCkgewoKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHhoci5zdGF0dXMgPCA0MDAgJiYgeGhyLnJlc3BvbnNlVGV4dCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9IHhoci5yZXNwb25zZVRleHQ7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpc20uaGlnaGxpZ2h0RWxlbWVudChjb2RlKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICh4aHIuc3RhdHVzID49IDQwMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9ICfinJYgRXJyb3IgJyArIHhoci5zdGF0dXMgKyAnIHdoaWxlIGZldGNoaW5nIGZpbGU6ICcgKyB4aHIuc3RhdHVzVGV4dDsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAn4pyWIEVycm9yOiBGaWxlIGRvZXMgbm90IGV4aXN0IG9yIGlzIGVtcHR5JzsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH07CgogICAgICAgICAgICAgICAgeGhyLnNlbmQobnVsbCk7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsKICAgICAgICAgICAgbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCk7CiAgICAgICAgfSk7CiAgICAgICAgJCgnI3NvdXJjZS12aWV3Jykub24oJ3Nob3duJywgZnVuY3Rpb24gKCkgewogICAgICAgICAgICBsb2FkRXh0ZXJuYWxDb2RlU25pcHBldHMoKTsKICAgICAgICB9KQogICAgPC9zY3JpcHQ+CgogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIuLi9pbWFnZXMvZmF2aWNvbi5pY28iLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24ucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSI3Mng3MiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24tNzJ4NzIucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxMTR4MTE0IiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi0xMTR4MTE0LnBuZyIvPgo8L2hlYWQ+Cjxib2R5PgoKPGRpdiBjbGFzcz0ibmF2YmFyIG5hdmJhci1maXhlZC10b3AiPgogICAgPGRpdiBjbGFzcz0ibmF2YmFyLWlubmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8YSBjbGFzcz0iYnRuIGJ0bi1uYXZiYXIiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9Ii5uYXYtY29sbGFwc2UiPgogICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tZWxsaXBzaXMtdmVydGljYWwiPjwvaT4KICAgICAgICAgICAgPC9hPgogICAgICAgICAgICA8YSBjbGFzcz0iYnJhbmQiIGhyZWY9Ii4uL2luZGV4Lmh0bWwiPkZyb250RW5kVXNlcnMgMi4zPC9hPgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWNvbGxhcHNlIj4KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IHB1bGwtcmlnaHQiPgogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9pbmRleC5odG1sIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgQVBJIERvY3VtZW50YXRpb24gPGIgY2xhc3M9ImNhcmV0Ij48L2I+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIiBpZD0iY2hhcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hhcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0NsYXNzIGhpZXJhcmNoeSBkaWFncmFtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJyZXBvcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVwb3J0cyA8YiBjbGFzcz0iY2FyZXQiPjwvYj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0Vycm9ycyA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij45ODwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtNYXJrZXJzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIDwhLS08ZGl2IGNsYXNzPSJnb190b190b3AiPi0tPgogICAgPCEtLTxhIGhyZWY9IiNfX18iIHN0eWxlPSJjb2xvcjogaW5oZXJpdCI+QmFjayB0byB0b3AmIzE2MDsmIzE2MDs8aSBjbGFzcz0iaWNvbi11cGxvYWQgaWNvbi13aGl0ZSI+PC9pPjwvYT4tLT4KICAgIDwhLS08L2Rpdj4tLT4KPC9kaXY+Cgo8ZGl2IGlkPSJfX18iIGNsYXNzPSJjb250YWluZXItZmx1aWQiPgogICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW4yIHNpZGViYXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbiIgc3R5bGU9Im1hcmdpbi1ib3R0b206IDAiPgogICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1ncm91cCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1oZWFkaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9ImFjY29yZGlvbi10b2dnbGUgIiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjbmFtZXNwYWNlLTM5ODAyMDU1MiI+PC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL25hbWVzcGFjZXMvZGVmYXVsdC5odG1sIiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDMwcHg7IHBhZGRpbmctbGVmdDogMCI+XDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgaWQ9Im5hbWVzcGFjZS0zOTgwMjA1NTIiIGNsYXNzPSJhY2NvcmRpb24tYm9keSBjb2xsYXBzZSBpbiI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhY2NvcmRpb24taW5uZXIiPgoKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X29wdC5odG1sIj5mZXVfdXNlcl9xdWVyeV9vcHQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCI+ZmV1X3VzZXJfcXVlcnk8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sIj5Gcm9udEVuZFVzZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5odG1sIj5mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgICAgIDwvZGl2PgogICAgPC9zZWN0aW9uPgogICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjEwIG9mZnNldDIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBmaWxlIj4KICAgICAgICAgICAgICAgICAgICA8bmF2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmF2PgoKICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICAgICAgPGgxPjxzbWFsbD5saWI8L3NtYWxsPmNsYXNzLmZldV91c2VyX3F1ZXJ5LnBocDwvaDE+CiAgICAgICAgICAgICAgICAgICAgPHA+PGVtPjwvZW0+PC9wPgogICAgICAgICAgICAgICAgICAgIAoKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMj5DbGFzc2VzPC9oMj4KICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWhvdmVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCI+ZmV1X3VzZXJfcXVlcnlfb3B0PC9hPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGVtPjwvZW0+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeS5odG1sIj5mZXVfdXNlcl9xdWVyeTwvYT48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxlbT48L2VtPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgoKICAgICAgICAgICAgICAgIDwvYXNpZGU+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgCiAgICAgICAgICAgIAogICAgICAgIDwvZGl2PgogICAgPC9zZWN0aW9uPgoKICAgIDxkaXYgaWQ9InNvdXJjZS12aWV3IiBjbGFzcz0ibW9kYWwgaGlkZSBmYWRlIiB0YWJpbmRleD0iLTEiIHJvbGU9ImRpYWxvZyIgYXJpYS1sYWJlbGxlZGJ5PSJzb3VyY2Utdmlldy1sYWJlbCIgYXJpYS1oaWRkZW49InRydWUiPgogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+CiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iY2xvc2UiIGRhdGEtZGlzbWlzcz0ibW9kYWwiIGFyaWEtaGlkZGVuPSJ0cnVlIj7DlzwvYnV0dG9uPgogICAgICAgICAgICA8aDMgaWQ9InNvdXJjZS12aWV3LWxhYmVsIj48L2gzPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPgogICAgICAgICAgICA8cHJlIGRhdGEtc3JjPSIuLi9maWxlcy9saWIvY2xhc3MuZmV1X3VzZXJfcXVlcnkucGhwLnR4dCIgY2xhc3M9Imxhbmd1YWdlLXBocCBsaW5lLW51bWJlcnMiPjwvcHJlPgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgPGZvb3RlciBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDIiPgogICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuMTAgb2Zmc2V0MSI+CiAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCBmb290ZXItc2VjdGlvbnMiPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1iYXItY2hhcnQiPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9ncmFwaHMvY2xhc3MuaHRtbCI+Q2xhc3MgSGllcmFyY2h5IERpYWdyYW08L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tcHVzaHBpbiI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPkVycm9yczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vcmVwb3J0cy9tYXJrZXJzLmh0bWwiPk1hcmtlcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDEiPgogICAgICAgICAgICAgICAgICAgIDxociAvPgogICAgICAgICAgICAgICAgICAgIERvY3VtZW50YXRpb24gaXMgcG93ZXJlZCBieSA8YSBocmVmPSJodHRwOi8vd3d3LnBocGRvYy5vcmcvIj5waHBEb2N1bWVudG9yIDwvYT4gYW5kIGF1dGhvcmVkCiAgICAgICAgICAgICAgICAgICAgb24gSmFudWFyeSAyMm5kLCAyMDE3IGF0IDA4OjA5LgogICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgPC9zZWN0aW9uPgogICAgPC9mb290ZXI+CjwvZGl2PgoKPC9ib2R5Pgo8L2h0bWw+Cg==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/files/lib.class.feu_user_query_resultset.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT5Gcm9udEVuZFVzZXJzIDIuMy4xPC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImF1dGhvciIgY29udGVudD0iIi8+CiAgICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iIi8+CgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2Jvb3RzdHJhcC1jb21iaW5lZC5uby1pY29ucy5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL3ByaXNtLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICA8bGluayBocmVmPSIuLi9jc3MvdGVtcGxhdGUuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIAogICAgPCEtLVtpZiBsdCBJRSA5XT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9odG1sNS5qcyI+PC9zY3JpcHQ+CiAgICA8IVtlbmRpZl0tLT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9qcXVlcnktMS4xMS4wLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvdWkvMS4xMC40L2pxdWVyeS11aS5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS5zbW9vdGgtc2Nyb2xsLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9wcmlzbS5taW4uanMiPjwvc2NyaXB0PgogICAgPCEtLSBUT0RPOiBBZGQgaHR0cDovL2pzY3JvbGxwYW5lLmtlbHZpbmx1Y2suY29tLyB0byBzdHlsZSB0aGUgc2Nyb2xsYmFycyBmb3IgYnJvd3NlcnMgbm90IHVzaW5nIHdlYmtpdC0tPgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgICAgICBmdW5jdGlvbiBsb2FkRXh0ZXJuYWxDb2RlU25pcHBldHMoKSB7CiAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3ByZVtkYXRhLXNyY10nKSkuZm9yRWFjaChmdW5jdGlvbiAocHJlKSB7CiAgICAgICAgICAgICAgICB2YXIgc3JjID0gcHJlLmdldEF0dHJpYnV0ZSgnZGF0YS1zcmMnKTsKICAgICAgICAgICAgICAgIHZhciBleHRlbnNpb24gPSAoc3JjLm1hdGNoKC9cLihcdyspJC8pIHx8IFssICcnXSlbMV07CiAgICAgICAgICAgICAgICB2YXIgbGFuZ3VhZ2UgPSAncGhwJzsKCiAgICAgICAgICAgICAgICB2YXIgY29kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NvZGUnKTsKICAgICAgICAgICAgICAgIGNvZGUuY2xhc3NOYW1lID0gJ2xhbmd1YWdlLScgKyBsYW5ndWFnZTsKCiAgICAgICAgICAgICAgICBwcmUudGV4dENvbnRlbnQgPSAnJzsKCiAgICAgICAgICAgICAgICBjb2RlLnRleHRDb250ZW50ID0gJ0xvYWRpbmfigKYnOwoKICAgICAgICAgICAgICAgIHByZS5hcHBlbmRDaGlsZChjb2RlKTsKCiAgICAgICAgICAgICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CgogICAgICAgICAgICAgICAgeGhyLm9wZW4oJ0dFVCcsIHNyYywgdHJ1ZSk7CgogICAgICAgICAgICAgICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT0gNCkgewoKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHhoci5zdGF0dXMgPCA0MDAgJiYgeGhyLnJlc3BvbnNlVGV4dCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9IHhoci5yZXNwb25zZVRleHQ7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpc20uaGlnaGxpZ2h0RWxlbWVudChjb2RlKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICh4aHIuc3RhdHVzID49IDQwMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9ICfinJYgRXJyb3IgJyArIHhoci5zdGF0dXMgKyAnIHdoaWxlIGZldGNoaW5nIGZpbGU6ICcgKyB4aHIuc3RhdHVzVGV4dDsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAn4pyWIEVycm9yOiBGaWxlIGRvZXMgbm90IGV4aXN0IG9yIGlzIGVtcHR5JzsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH07CgogICAgICAgICAgICAgICAgeGhyLnNlbmQobnVsbCk7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsKICAgICAgICAgICAgbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCk7CiAgICAgICAgfSk7CiAgICAgICAgJCgnI3NvdXJjZS12aWV3Jykub24oJ3Nob3duJywgZnVuY3Rpb24gKCkgewogICAgICAgICAgICBsb2FkRXh0ZXJuYWxDb2RlU25pcHBldHMoKTsKICAgICAgICB9KQogICAgPC9zY3JpcHQ+CgogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIuLi9pbWFnZXMvZmF2aWNvbi5pY28iLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24ucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSI3Mng3MiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24tNzJ4NzIucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxMTR4MTE0IiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi0xMTR4MTE0LnBuZyIvPgo8L2hlYWQ+Cjxib2R5PgoKPGRpdiBjbGFzcz0ibmF2YmFyIG5hdmJhci1maXhlZC10b3AiPgogICAgPGRpdiBjbGFzcz0ibmF2YmFyLWlubmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8YSBjbGFzcz0iYnRuIGJ0bi1uYXZiYXIiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9Ii5uYXYtY29sbGFwc2UiPgogICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tZWxsaXBzaXMtdmVydGljYWwiPjwvaT4KICAgICAgICAgICAgPC9hPgogICAgICAgICAgICA8YSBjbGFzcz0iYnJhbmQiIGhyZWY9Ii4uL2luZGV4Lmh0bWwiPkZyb250RW5kVXNlcnMgMi4zLjE8L2E+CgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtY29sbGFwc2UiPgogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgcHVsbC1yaWdodCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIiBpZD0iY2hhcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hhcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0NsYXNzIGhpZXJhcmNoeSBkaWFncmFtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJyZXBvcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVwb3J0cyA8YiBjbGFzcz0iY2FyZXQiPjwvYj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0Vycm9ycyA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij4xMDY8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9yZXBvcnRzL21hcmtlcnMuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7TWFya2VycyA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij4wPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vcmVwb3J0cy9kZXByZWNhdGVkLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtEZXByZWNhdGVkIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjE8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIDwhLS08ZGl2IGNsYXNzPSJnb190b190b3AiPi0tPgogICAgPCEtLTxhIGhyZWY9IiNfX18iIHN0eWxlPSJjb2xvcjogaW5oZXJpdCI+QmFjayB0byB0b3AmIzE2MDsmIzE2MDs8aSBjbGFzcz0iaWNvbi11cGxvYWQgaWNvbi13aGl0ZSI+PC9pPjwvYT4tLT4KICAgIDwhLS08L2Rpdj4tLT4KPC9kaXY+Cgo8ZGl2IGlkPSJfX18iIGNsYXNzPSJjb250YWluZXItZmx1aWQiPgogICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW4yIHNpZGViYXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbiIgc3R5bGU9Im1hcmdpbi1ib3R0b206IDAiPgogICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1ncm91cCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1oZWFkaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9ImFjY29yZGlvbi10b2dnbGUgIiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjbmFtZXNwYWNlLTE0MzIwMzAwOSI+PC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL25hbWVzcGFjZXMvZGVmYXVsdC5odG1sIiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDMwcHg7IHBhZGRpbmctbGVmdDogMCI+XDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgaWQ9Im5hbWVzcGFjZS0xNDMyMDMwMDkiIGNsYXNzPSJhY2NvcmRpb24tYm9keSBjb2xsYXBzZSBpbiI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhY2NvcmRpb24taW5uZXIiPgoKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwiPmZldV91c2VyX3F1ZXJ5PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X29wdC5odG1sIj5mZXVfdXNlcl9xdWVyeV9vcHQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0Lmh0bWwiPmZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldDwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGFzcyI+PGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwiPkZyb250RW5kVXNlcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgICAgIDwvZGl2PgogICAgPC9zZWN0aW9uPgogICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjEwIG9mZnNldDIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBmaWxlIj4KICAgICAgICAgICAgICAgICAgICA8bmF2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmF2PgoKICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICAgICAgPGgxPjxzbWFsbD5saWI8L3NtYWxsPmNsYXNzLmZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5waHA8L2gxPgogICAgICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDI+Q2xhc3NlczwvaDI+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0Lmh0bWwiPmZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldDwvYT48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxlbT48L2VtPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkdD5QYWNrYWdlPC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkZD48ZGl2IGNsYXNzPSJuYW1lc3BhY2Utd3JhcHBlciI+XEZyb250RW5kVXNlcnM8L2Rpdj48L2RkPgogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPC9kbD4KICAgICAgICAgICAgICAgICAgICA8aDI+VGFnczwvaDI+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1jb25kZW5zZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPjx0ZCBjb2xzcGFuPSIyIj48ZW0+Tm9uZSBmb3VuZDwvZW0+PC90ZD48L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGFibGU+CgogICAgICAgICAgICAgICAgPC9hc2lkZT4KICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAKICAgICAgICAgICAgCiAgICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CgogICAgPGRpdiBpZD0ic291cmNlLXZpZXciIGNsYXNzPSJtb2RhbCBoaWRlIGZhZGUiIHRhYmluZGV4PSItMSIgcm9sZT0iZGlhbG9nIiBhcmlhLWxhYmVsbGVkYnk9InNvdXJjZS12aWV3LWxhYmVsIiBhcmlhLWhpZGRlbj0idHJ1ZSI+CiAgICAgICAgPGRpdiBjbGFzcz0ibW9kYWwtaGVhZGVyIj4KICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJjbG9zZSIgZGF0YS1kaXNtaXNzPSJtb2RhbCIgYXJpYS1oaWRkZW49InRydWUiPsOXPC9idXR0b24+CiAgICAgICAgICAgIDxoMyBpZD0ic291cmNlLXZpZXctbGFiZWwiPjwvaDM+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibW9kYWwtYm9keSI+CiAgICAgICAgICAgIDxwcmUgZGF0YS1zcmM9Ii4uL2ZpbGVzL2xpYi9jbGFzcy5mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQucGhwLnR4dCIgY2xhc3M9Imxhbmd1YWdlLXBocCBsaW5lLW51bWJlcnMiPjwvcHJlPgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgPGZvb3RlciBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDIiPgogICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuMTAgb2Zmc2V0MSI+CiAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCBmb290ZXItc2VjdGlvbnMiPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1iYXItY2hhcnQiPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9ncmFwaHMvY2xhc3MuaHRtbCI+Q2xhc3MgSGllcmFyY2h5IERpYWdyYW08L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tcHVzaHBpbiI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPkVycm9yczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vcmVwb3J0cy9tYXJrZXJzLmh0bWwiPk1hcmtlcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDEiPgogICAgICAgICAgICAgICAgICAgIDxociAvPgogICAgICAgICAgICAgICAgICAgIERvY3VtZW50YXRpb24gaXMgcG93ZXJlZCBieSA8YSBocmVmPSJodHRwOi8vd3d3LnBocGRvYy5vcmcvIj5waHBEb2N1bWVudG9yIDwvYT4gYW5kIGF1dGhvcmVkCiAgICAgICAgICAgICAgICAgICAgb24gRmVicnVhcnkgMTJ0aCwgMjAxNyBhdCAwOTo0NS4KICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgIDwvc2VjdGlvbj4KICAgIDwvZm9vdGVyPgo8L2Rpdj4KCjwvYm9keT4KPC9odG1sPgo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/files/lib.class.feu_user_query_resultset.php.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT5Gcm9udEVuZFVzZXJzIDIuMzwvdGl0bGU+CiAgICA8bWV0YSBuYW1lPSJhdXRob3IiIGNvbnRlbnQ9IiIvPgogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IiIvPgoKICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vbmV0ZG5hLmJvb3RzdHJhcGNkbi5jb20vdHdpdHRlci1ib290c3RyYXAvMi4zLjIvY3NzL2Jvb3RzdHJhcC1jb21iaW5lZC5uby1pY29ucy5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9uZXRkbmEuYm9vdHN0cmFwY2RuLmNvbS9mb250LWF3ZXNvbWUvMy4yLjEvY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL3ByaXNtLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICA8bGluayBocmVmPSIuLi9jc3MvdGVtcGxhdGUuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIAogICAgPCEtLVtpZiBsdCBJRSA5XT4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2h0bWw1c2hpbS5nb29nbGVjb2RlLmNvbS9zdm4vdHJ1bmsvaHRtbDUuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CiAgICA8IVtlbmRpZl0tLT4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2NvZGUuanF1ZXJ5LmNvbS9qcXVlcnktMS4xMC4yLm1pbi5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2NvZGUuanF1ZXJ5LmNvbS91aS8xLjEwLjMvanF1ZXJ5LXVpLm1pbi5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL25ldGRuYS5ib290c3RyYXBjZG4uY29tL3R3aXR0ZXItYm9vdHN0cmFwLzIuMy4yL2pzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS5zbW9vdGgtc2Nyb2xsLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9wcmlzbS5taW4uanMiPjwvc2NyaXB0PgogICAgPCEtLSBUT0RPOiBBZGQgaHR0cDovL2pzY3JvbGxwYW5lLmtlbHZpbmx1Y2suY29tLyB0byBzdHlsZSB0aGUgc2Nyb2xsYmFycyBmb3IgYnJvd3NlcnMgbm90IHVzaW5nIHdlYmtpdC0tPgogICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgICAgICBmdW5jdGlvbiBsb2FkRXh0ZXJuYWxDb2RlU25pcHBldHMoKSB7CiAgICAgICAgICAgIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3ByZVtkYXRhLXNyY10nKSkuZm9yRWFjaChmdW5jdGlvbiAocHJlKSB7CiAgICAgICAgICAgICAgICB2YXIgc3JjID0gcHJlLmdldEF0dHJpYnV0ZSgnZGF0YS1zcmMnKTsKICAgICAgICAgICAgICAgIHZhciBleHRlbnNpb24gPSAoc3JjLm1hdGNoKC9cLihcdyspJC8pIHx8IFssICcnXSlbMV07CiAgICAgICAgICAgICAgICB2YXIgbGFuZ3VhZ2UgPSAncGhwJzsKCiAgICAgICAgICAgICAgICB2YXIgY29kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NvZGUnKTsKICAgICAgICAgICAgICAgIGNvZGUuY2xhc3NOYW1lID0gJ2xhbmd1YWdlLScgKyBsYW5ndWFnZTsKCiAgICAgICAgICAgICAgICBwcmUudGV4dENvbnRlbnQgPSAnJzsKCiAgICAgICAgICAgICAgICBjb2RlLnRleHRDb250ZW50ID0gJ0xvYWRpbmfigKYnOwoKICAgICAgICAgICAgICAgIHByZS5hcHBlbmRDaGlsZChjb2RlKTsKCiAgICAgICAgICAgICAgICB2YXIgeGhyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CgogICAgICAgICAgICAgICAgeGhyLm9wZW4oJ0dFVCcsIHNyYywgdHJ1ZSk7CgogICAgICAgICAgICAgICAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoeGhyLnJlYWR5U3RhdGUgPT0gNCkgewoKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHhoci5zdGF0dXMgPCA0MDAgJiYgeGhyLnJlc3BvbnNlVGV4dCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9IHhoci5yZXNwb25zZVRleHQ7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpc20uaGlnaGxpZ2h0RWxlbWVudChjb2RlKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmICh4aHIuc3RhdHVzID49IDQwMCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29kZS50ZXh0Q29udGVudCA9ICfinJYgRXJyb3IgJyArIHhoci5zdGF0dXMgKyAnIHdoaWxlIGZldGNoaW5nIGZpbGU6ICcgKyB4aHIuc3RhdHVzVGV4dDsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvZGUudGV4dENvbnRlbnQgPSAn4pyWIEVycm9yOiBGaWxlIGRvZXMgbm90IGV4aXN0IG9yIGlzIGVtcHR5JzsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH07CgogICAgICAgICAgICAgICAgeGhyLnNlbmQobnVsbCk7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsKICAgICAgICAgICAgbG9hZEV4dGVybmFsQ29kZVNuaXBwZXRzKCk7CiAgICAgICAgfSk7CiAgICAgICAgJCgnI3NvdXJjZS12aWV3Jykub24oJ3Nob3duJywgZnVuY3Rpb24gKCkgewogICAgICAgICAgICBsb2FkRXh0ZXJuYWxDb2RlU25pcHBldHMoKTsKICAgICAgICB9KQogICAgPC9zY3JpcHQ+CgogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIuLi9pbWFnZXMvZmF2aWNvbi5pY28iLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24ucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSI3Mng3MiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24tNzJ4NzIucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxMTR4MTE0IiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi0xMTR4MTE0LnBuZyIvPgo8L2hlYWQ+Cjxib2R5PgoKPGRpdiBjbGFzcz0ibmF2YmFyIG5hdmJhci1maXhlZC10b3AiPgogICAgPGRpdiBjbGFzcz0ibmF2YmFyLWlubmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8YSBjbGFzcz0iYnRuIGJ0bi1uYXZiYXIiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9Ii5uYXYtY29sbGFwc2UiPgogICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tZWxsaXBzaXMtdmVydGljYWwiPjwvaT4KICAgICAgICAgICAgPC9hPgogICAgICAgICAgICA8YSBjbGFzcz0iYnJhbmQiIGhyZWY9Ii4uL2luZGV4Lmh0bWwiPkZyb250RW5kVXNlcnMgMi4zPC9hPgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWNvbGxhcHNlIj4KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IHB1bGwtcmlnaHQiPgogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9pbmRleC5odG1sIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgQVBJIERvY3VtZW50YXRpb24gPGIgY2xhc3M9ImNhcmV0Ij48L2I+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIiBpZD0iY2hhcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hhcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0NsYXNzIGhpZXJhcmNoeSBkaWFncmFtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJyZXBvcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVwb3J0cyA8YiBjbGFzcz0iY2FyZXQiPjwvYj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0Vycm9ycyA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij45ODwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtNYXJrZXJzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIDwhLS08ZGl2IGNsYXNzPSJnb190b190b3AiPi0tPgogICAgPCEtLTxhIGhyZWY9IiNfX18iIHN0eWxlPSJjb2xvcjogaW5oZXJpdCI+QmFjayB0byB0b3AmIzE2MDsmIzE2MDs8aSBjbGFzcz0iaWNvbi11cGxvYWQgaWNvbi13aGl0ZSI+PC9pPjwvYT4tLT4KICAgIDwhLS08L2Rpdj4tLT4KPC9kaXY+Cgo8ZGl2IGlkPSJfX18iIGNsYXNzPSJjb250YWluZXItZmx1aWQiPgogICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW4yIHNpZGViYXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbiIgc3R5bGU9Im1hcmdpbi1ib3R0b206IDAiPgogICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1ncm91cCI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFjY29yZGlvbi1oZWFkaW5nIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9ImFjY29yZGlvbi10b2dnbGUgIiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIjbmFtZXNwYWNlLTUxMzQ1OTQzMyI+PC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL25hbWVzcGFjZXMvZGVmYXVsdC5odG1sIiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDMwcHg7IHBhZGRpbmctbGVmdDogMCI+XDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgaWQ9Im5hbWVzcGFjZS01MTM0NTk0MzMiIGNsYXNzPSJhY2NvcmRpb24tYm9keSBjb2xsYXBzZSBpbiI+CiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhY2NvcmRpb24taW5uZXIiPgoKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X29wdC5odG1sIj5mZXVfdXNlcl9xdWVyeV9vcHQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnkuaHRtbCI+ZmV1X3VzZXJfcXVlcnk8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sIj5Gcm9udEVuZFVzZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5odG1sIj5mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgICAgIDwvZGl2PgogICAgPC9zZWN0aW9uPgogICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjEwIG9mZnNldDIiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjggY29udGVudCBmaWxlIj4KICAgICAgICAgICAgICAgICAgICA8bmF2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmF2PgoKICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjc291cmNlLXZpZXciIHJvbGU9ImJ1dHRvbiIgY2xhc3M9InB1bGwtcmlnaHQgYnRuIiBkYXRhLXRvZ2dsZT0ibW9kYWwiPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2E+CiAgICAgICAgICAgICAgICAgICAgPGgxPjxzbWFsbD5saWI8L3NtYWxsPmNsYXNzLmZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5waHA8L2gxPgogICAgICAgICAgICAgICAgICAgIDxwPjxlbT48L2VtPjwvcD4KICAgICAgICAgICAgICAgICAgICAKCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDI+Q2xhc3NlczwvaDI+CiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxhIGhyZWY9Ii4uL2NsYXNzZXMvZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0Lmh0bWwiPmZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldDwvYT48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxlbT48L2VtPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgICAgICA8YXNpZGUgY2xhc3M9InNwYW40IGRldGFpbHNiYXIiPgogICAgICAgICAgICAgICAgICAgIDxkbD4KICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgICAgICAgICAgPGgyPlRhZ3M8L2gyPgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtY29uZGVuc2VkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj48dGQgY29sc3Bhbj0iMiI+PGVtPk5vbmUgZm91bmQ8L2VtPjwvdGQ+PC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgoKICAgICAgICAgICAgICAgIDwvYXNpZGU+CiAgICAgICAgICAgIDwvZGl2PgoKICAgICAgICAgICAgCiAgICAgICAgICAgIAogICAgICAgIDwvZGl2PgogICAgPC9zZWN0aW9uPgoKICAgIDxkaXYgaWQ9InNvdXJjZS12aWV3IiBjbGFzcz0ibW9kYWwgaGlkZSBmYWRlIiB0YWJpbmRleD0iLTEiIHJvbGU9ImRpYWxvZyIgYXJpYS1sYWJlbGxlZGJ5PSJzb3VyY2Utdmlldy1sYWJlbCIgYXJpYS1oaWRkZW49InRydWUiPgogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+CiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iY2xvc2UiIGRhdGEtZGlzbWlzcz0ibW9kYWwiIGFyaWEtaGlkZGVuPSJ0cnVlIj7DlzwvYnV0dG9uPgogICAgICAgICAgICA8aDMgaWQ9InNvdXJjZS12aWV3LWxhYmVsIj48L2gzPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPgogICAgICAgICAgICA8cHJlIGRhdGEtc3JjPSIuLi9maWxlcy9saWIvY2xhc3MuZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0LnBocC50eHQiIGNsYXNzPSJsYW5ndWFnZS1waHAgbGluZS1udW1iZXJzIj48L3ByZT4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgIDxmb290ZXIgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQyIj4KICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDEiPgogICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQgZm9vdGVyLXNlY3Rpb25zIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYmFyLWNoYXJ0Ij48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPkNsYXNzIEhpZXJhcmNoeSBEaWFncmFtPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLXB1c2hwaW4iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9yZXBvcnRzL2Vycm9ycy5odG1sIj5FcnJvcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj5NYXJrZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQxIj4KICAgICAgICAgICAgICAgICAgICA8aHIgLz4KICAgICAgICAgICAgICAgICAgICBEb2N1bWVudGF0aW9uIGlzIHBvd2VyZWQgYnkgPGEgaHJlZj0iaHR0cDovL3d3dy5waHBkb2Mub3JnLyI+cGhwRG9jdW1lbnRvciA8L2E+IGFuZCBhdXRob3JlZAogICAgICAgICAgICAgICAgICAgIG9uIEphbnVhcnkgMjJuZCwgMjAxNyBhdCAwODowOS4KICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgIDwvc2VjdGlvbj4KICAgIDwvZm9vdGVyPgo8L2Rpdj4KCjwvYm9keT4KPC9odG1sPgo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/files/lib/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/files/lib/class.feu_user_query.php.txt</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBmZXVfdXNlcl9xdWVyeV9vcHQKewogIGNvbnN0IE1BVENIX1VTRVJOQU1FICAgID0gJyp1c2VybmFtZSonOwogIGNvbnN0IE1BVENIX1VTRVJOQU1FX1JFID0gJyp1c2VybmFtZS1yZSonOwogIGNvbnN0IE1BVENIX1BBU1NXT1JEICAgID0gJypwYXNzd29yZConOwogIGNvbnN0IE1BVENIX0VYUElSRVNfTFQgID0gJypleHBpcmVzLWx0Kic7CiAgY29uc3QgTUFUQ0hfTk9URVhQSVJFRCAgPSAnKm5vdGV4cGlyZWQqJzsKICBjb25zdCBNQVRDSF9HUk9VUCAgICAgICA9ICcqZ3JvdXAqJzsKICBjb25zdCBNQVRDSF9HUk9VUElEICAgICA9ICcqZ2lkKic7CiAgY29uc3QgTUFUQ0hfUFJPUEVSVFkgICAgPSAnKnByb3BlcnR5Kic7CiAgY29uc3QgTUFUQ0hfUFJPUEVSVFlfUkUgPSAnKnByb3BlcnR5LXJlKic7CiAgY29uc3QgTUFUQ0hfVVNFUkxJU1QgICAgPSAnKnVzZXJsaXN0Kic7CiAgY29uc3QgTUFUQ0hfVVNFUk5BTUVMSVNUID0gJyp1c2VybmFtZWxpc3QqJzsKICBjb25zdCBNQVRDSF9MT0dHRURJTiAgICA9ICcqbG9nZ2VkaW4qJzsKICBjb25zdCBNQVRDSF9DUkVBVEVEX0dFICA9ICcqY3JlYXRlZF9nZSonOwogIGNvbnN0IE1BVENIX0NSRUFURURfTFQgID0gJypjcmVhdGVkX2x0Kic7CgogIHByaXZhdGUgJF90eXBlOwogIHByaXZhdGUgJF9leHByOwogIHByaXZhdGUgJF9vcHQ7CgogIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkdHlwZSwkZXhwciA9IG51bGwsJG9wdCA9IG51bGwpCiAgewogICAgc3dpdGNoKCR0eXBlKSB7CiAgICBjYXNlIHNlbGY6Ok1BVENIX1VTRVJOQU1FOgogICAgY2FzZSBzZWxmOjpNQVRDSF9VU0VSTkFNRV9SRToKICAgIGNhc2Ugc2VsZjo6TUFUQ0hfUEFTU1dPUkQ6CiAgICBjYXNlIHNlbGY6Ok1BVENIX0VYUElSRVNfTFQ6CiAgICBjYXNlIHNlbGY6Ok1BVENIX0NSRUFURURfR0U6CiAgICBjYXNlIHNlbGY6Ok1BVENIX0NSRUFURURfTFQ6CiAgICBjYXNlIHNlbGY6Ok1BVENIX0dST1VQOgogICAgY2FzZSBzZWxmOjpNQVRDSF9HUk9VUElEOgogICAgY2FzZSBzZWxmOjpNQVRDSF9VU0VSTElTVDoKICAgIGNhc2Ugc2VsZjo6TUFUQ0hfVVNFUk5BTUVMSVNUOgogICAgY2FzZSBzZWxmOjpNQVRDSF9MT0dHRURJTjoKICAgICAgICBpZiggZW1wdHkoJGV4cHIpICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignaW52YWxpZCB2YWx1ZSBmb3IgZXhwcicpOwogICAgICAgICR0aGlzLT5fdHlwZSA9ICR0eXBlOwogICAgICAgICR0aGlzLT5fZXhwciA9ICRleHByOwogICAgICAgIGJyZWFrOwoKICAgIGNhc2Ugc2VsZjo6TUFUQ0hfTk9URVhQSVJFRDoKICAgICAgICAkdGhpcy0+X3R5cGUgPSAkdHlwZTsKICAgICAgICBicmVhazsKCiAgICBjYXNlIHNlbGY6Ok1BVENIX1BST1BFUlRZX1JFOgogICAgICAgIGlmKCBlbXB0eSgkZXhwcikgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCdpbnZhbGlkIHZhbHVlIGZvciBleHByJyk7CiAgICAgICAgaWYoIGVtcHR5KCRvcHQpICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignaW52YWxpZCBvcHQgdmFsdWUnKTsKICAgICAgICAkdGhpcy0+X3R5cGUgPSAkdHlwZTsKICAgICAgICAkdGhpcy0+X2V4cHIgPSAkZXhwcjsKICAgICAgICAkdGhpcy0+X29wdCA9ICRvcHQ7CiAgICAgICAgYnJlYWs7CgogICAgY2FzZSBzZWxmOjpNQVRDSF9QUk9QRVJUWToKICAgICAgICBpZiggZW1wdHkoJGV4cHIpICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignaW52YWxpZCB2YWx1ZSBmb3IgZXhwcicpOwogICAgICAgICR0aGlzLT5fdHlwZSA9ICR0eXBlOwogICAgICAgICR0aGlzLT5fZXhwciA9ICRleHByOwogICAgICAgICR0aGlzLT5fb3B0ID0gJG9wdDsKICAgICAgICBicmVhazsKCiAgICBkZWZhdWx0OgogICAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJ2ludmFsaWQgdmFsdWUnKTsKICAgIH0KICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdHlwZSgpCiAgewogICAgcmV0dXJuICR0aGlzLT5fdHlwZTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZXhwcigpCiAgewogICAgcmV0dXJuICR0aGlzLT5fZXhwcjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfb3B0KCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9vcHQ7CiAgfQp9IC8vIGNsYXNzCgoKY2xhc3MgZmV1X3VzZXJfcXVlcnkKewogIGNvbnN0IFJFU1VMVF9UWVBFX0lEID0gJyppZConOwogIGNvbnN0IFJFU1VMVF9UWVBFX0xJU1QgPSAnKmxpc3QqJzsKICBjb25zdCBSRVNVTFRfVFlQRV9GVUxMID0gJypmdWxsKic7CiAgY29uc3QgUkVTVUxUX1NPUlRPUkRFUl9BU0MgPSAnKmFzYyonOwogIGNvbnN0IFJFU1VMVF9TT1JUT1JERVJfREVTQyA9ICcqZGVzYyonOwogIGNvbnN0IFJFU1VMVF9TT1JUQllfVVNFUk5BTUUgPSAnKnVzZXJuYW1lKic7CiAgY29uc3QgUkVTVUxUX1NPUlRCWV9DUkVBVEVEID0gJypjcmVhdGVkYXRlKic7CiAgY29uc3QgUkVTVUxUX1NPUlRCWV9FWFBJUkVTID0gJypleHBpcmVzKic7CgogIHByaXZhdGUgJF9hbmRfb3B0cyAgID0gYXJyYXkoKTsKICBwcml2YXRlICRfZ3JvdXBzID0gJyc7CiAgcHJpdmF0ZSAkX3BhZ2VsaW1pdCA9IDEwMDAwMDsKICBwcml2YXRlICRfb2Zmc2V0ID0gMDsKICBwcml2YXRlICRfcmVzdWx0X3R5cGUgPSBzZWxmOjpSRVNVTFRfVFlQRV9JRDsKICBwcml2YXRlICRfc29ydGJ5ID0gc2VsZjo6UkVTVUxUX1NPUlRCWV9VU0VSTkFNRTsKICBwcml2YXRlICRfc29ydG9yZGVyID0gc2VsZjo6UkVTVUxUX1NPUlRPUkRFUl9BU0M7CiAgcHJpdmF0ZSAkX2RlZXAgPSBGQUxTRTsKICBwcml2YXRlICRfd2VicmVhZHkgPSBGQUxTRTsKCiAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkKICB7CiAgICAvLyBub3RoaW5nIGhlcmUuCiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X3BhZ2VsaW1pdCgkcGFnZWxpbWl0KQogIHsKICAgICRwYWdlbGltaXQgPSAoaW50KSRwYWdlbGltaXQ7CiAgICAkcGFnZWxpbWl0ID0gbWF4KDEsJHBhZ2VsaW1pdCk7CiAgICAkdGhpcy0+X3BhZ2VsaW1pdCA9ICRwYWdlbGltaXQ7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3BhZ2VsaW1pdCgpCiAgewogICAgcmV0dXJuICR0aGlzLT5fcGFnZWxpbWl0OwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIHNldF9vZmZzZXQoJG4pCiAgewogICAgJHRoaXMtPl9vZmZzZXQgPSBtYXgoMCwoaW50KSRuKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfb2Zmc2V0KCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9vZmZzZXQ7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X2RlZXAoJGZsYWcgPSBUUlVFKQogIHsKICAgICR0aGlzLT5fZGVlcCA9IChib29sKSRmbGFnOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9kZWVwKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9kZWVwOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIHNldF93ZWJyZWFkeSgkZmxhZyA9IFRSVUUpCiAgewogICAgJHRoaXMtPl93ZWJyZWFkeSA9IChib29sKSRmbGFnOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF93ZWJyZWFkeSgpCiAgewogICAgcmV0dXJuICR0aGlzLT5fd2VicmVhZHk7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X3Jlc3VsdF90eXBlKCR0eXBlKQogIHsKICAgICAgLy8gY3VycmVudGx5IG5vdCB1c2VkIGluIHRoZSByZXN1bHRzZXQsIG1heSByZW1vdmUKICAgIHN3aXRjaCggJHR5cGUgKSB7CiAgICBjYXNlIHNlbGY6OlJFU1VMVF9UWVBFX0lEOgogICAgY2FzZSBzZWxmOjpSRVNVTFRfVFlQRV9MSVNUOgogICAgY2FzZSBzZWxmOjpSRVNVTFRfVFlQRV9GVUxMOgogICAgICAkdGhpcy0+X3Jlc3VsdF90eXBlID0gJHR5cGU7CiAgICAgIGJyZWFrOwoKICAgIGRlZmF1bHQ6CiAgICAgIHRocm93IG5ldyBDbXNFeGNlcHRpb24oJ0ludmFsaWQgcmVzdWx0IHR5cGUgJy4kdHlwZSk7CiAgICB9CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3Jlc3VsdF90eXBlKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9yZXN1bHRfdHlwZTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBzZXRfc29ydGJ5KCR2YWwpCiAgewogICAgc3dpdGNoKCAkdmFsICkgewogICAgY2FzZSBzZWxmOjpSRVNVTFRfU09SVEJZX1VTRVJOQU1FOgogICAgY2FzZSBzZWxmOjpSRVNVTFRfU09SVEJZX0NSRUFURUQ6CiAgICBjYXNlIHNlbGY6OlJFU1VMVF9TT1JUQllfRVhQSVJFUzoKICAgICAgJHRoaXMtPl9zb3J0YnkgPSAkdmFsOwogICAgICBicmVhazsKCiAgICBkZWZhdWx0OgogICAgICB0aHJvdyBuZXcgQ21zRXhjZXB0aW9uKCdJbnZhbGlkIHNvcnRieSB2YWx1ZTogJy4kdmFsKTsKICAgIH0KICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfc29ydGJ5KCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9zb3J0Ynk7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X3NvcnRvcmRlcigkdmFsKQogIHsKICAgIHN3aXRjaCggJHZhbCApIHsKICAgIGNhc2Ugc2VsZjo6UkVTVUxUX1NPUlRPUkRFUl9BU0M6CiAgICBjYXNlIHNlbGY6OlJFU1VMVF9TT1JUT1JERVJfREVTQzoKICAgICAgJHRoaXMtPl9zb3J0b3JkZXIgPSAkdmFsOwogICAgICBicmVhazsKCiAgICBkZWZhdWx0OgogICAgICB0aHJvdyBuZXcgQ21zRXhjZXB0aW9uKCdJbnZhbGlkIHNvcnRvcmRlciB2YWx1ZTogJy4kdmFsKTsKICAgIH0KICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfc29ydG9yZGVyKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9zb3J0b3JkZXI7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gYWRkX2FuZF9vcHQoJHR5cGUsJHZhbHVlID0gbnVsbCkKICB7CiAgICAkdGhpcy0+X2FuZF9vcHRzW10gPSBuZXcgZmV1X3VzZXJfcXVlcnlfb3B0KCR0eXBlLCR2YWx1ZSk7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gYWRkX2FuZF9vcHRfb2JqKGZldV91c2VyX3F1ZXJ5X29wdCYgJG9wdCkKICB7CiAgICAkdGhpcy0+X2FuZF9vcHRzW10gPSAkb3B0OwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGNvdW50X29wdHMoKQogIHsKICAgIHJldHVybiBjb3VudCgkdGhpcy0+X2FuZF9vcHRzKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfb3B0cygpCiAgewogICAgcmV0dXJuICR0aGlzLT5fYW5kX29wdHM7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gJmV4ZWN1dGUoKQogIHsKICAgICRycyA9IG5ldyBmZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQoJHRoaXMpOwogICAgcmV0dXJuICRyczsKICB9Cgp9IC8vIGVuZCBvZiBjbGFzcwoKCgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/files/lib/class.feu_user_query_resultset.php.txt</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpmaW5hbCBjbGFzcyBmZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQKewogICAgcHJpdmF0ZSAkX3F1ZXJ5OwogICAgcHJpdmF0ZSAkX2V4ZWN1dGVkOwogICAgcHJpdmF0ZSAkX3JzOwogICAgcHJpdmF0ZSAkX2ZvdW5kX3Jvd3M7CiAgICBwcml2YXRlICRfZ3JvdXBzOwoKICAgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdChmZXVfdXNlcl9xdWVyeSAmJHF1ZXJ5KQogICAgewogICAgICAgICR0aGlzLT5fcXVlcnkgPSAkcXVlcnk7CiAgICAgICAgJHRoaXMtPl9leGVjdXRlKCRxdWVyeSk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBfZ2V0X2dyb3VwcygpCiAgICB7CiAgICAgICAgaWYoICFpc19hcnJheSgkdGhpcy0+X2dyb3VwcykgKSB7CiAgICAgICAgICAgICRmZXUgPSBjZ2VfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKICAgICAgICAgICAgJHRtcCA9ICRmZXUtPkdldEdyb3VwTGlzdEZ1bGwoKTsKICAgICAgICAgICAgaWYoIGlzX2FycmF5KCR0bXApICYmIGNvdW50KCR0bXApICkgJHRoaXMtPl9ncm91cHMgPSBjZ2VfYXJyYXk6OnRvX2hhc2goJHRtcCwnZ3JvdXBuYW1lJyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkdGhpcy0+X2dyb3VwczsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIF9leGVjdXRlKCkKICAgIHsKICAgICAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwogICAgICAgICR3aGVyZSAgPSBhcnJheSgpOwogICAgICAgICRxcGFybXMgPSBhcnJheSgpOwogICAgICAgICRqb2lucyAgPSBhcnJheSgpOwogICAgICAgICRqY291bnQgPSAwOwogICAgICAgICRoYXZpbmcgPSBudWxsOwoKICAgICAgICAkcXJlYyA9ICdTRUxFQ1QgU1FMX0NBTENfRk9VTkRfUk9XUyB1LiosY291bnQobGkudXNlcmlkKSBBUyBsb2dnZWRpbiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyB1JzsKICAgICAgICAkam9pbnNbXSA9ICdMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIGxpIE9OIHUuaWQgPSBsaS51c2VyaWQnOwoKICAgICAgICBmb3JlYWNoKCAkdGhpcy0+X3F1ZXJ5LT5nZXRfb3B0cygpIGFzICRvcHQgKSB7CiAgICAgICAgICAgIHN3aXRjaCggJG9wdC0+Z2V0X3R5cGUoKSApIHsKICAgICAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX1VTRVJOQU1FOgogICAgICAgICAgICAgICAgJHdoZXJlW10gID0gJ3UudXNlcm5hbWUgTElLRSA/JzsKICAgICAgICAgICAgICAgICRleHByID0gc3RyX3JlcGxhY2UoJyonLCclJywkb3B0LT5nZXRfZXhwcigpKTsKICAgICAgICAgICAgICAgICRleHByID0gc3RyX3JlcGxhY2UoJyUlJywnJScsJGV4cHIpOwogICAgICAgICAgICAgICAgJHFwYXJtc1tdID0gJGV4cHI7CiAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9VU0VSTkFNRV9SRToKICAgICAgICAgICAgICAgICR3aGVyZVtdICA9ICd1LnVzZXJuYW1lIFJFR0VYUCAnLiRkYi0+cXN0cigkb3B0LT5nZXRfZXhwcigpKTsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX1BBU1NXT1JEOgogICAgICAgICAgICAgICAgJHdoZXJlW10gID0gJ3UucGFzc3dvcmQgPSA/JzsKICAgICAgICAgICAgICAgICRxcGFybXNbXSA9ICRvcHQtPmdldF9leHByKCk7CiAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9OT1RFWFBJUkVEOgogICAgICAgICAgICAgICAgJHRtcCA9ICRkYi0+RGJUaW1lU3RhbXAodGltZSgpIC0gMzApOwogICAgICAgICAgICAgICAgJHdoZXJlW10gPSAidS5leHBpcmVzID4geyR0bXB9IjsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX0VYUElSRVNfTFQ6CiAgICAgICAgICAgICAgICAkdG1wID0gJGRiLT5EYlRpbWVTdGFtcCgkb3B0LT5nZXRfZXhwcigpKTsKICAgICAgICAgICAgICAgICR3aGVyZVtdID0gInUuZXhwaXJlcyA8IHskdG1wfSI7CiAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9DUkVBVEVEX0dFOgogICAgICAgICAgICAgICAgJHRtcCA9ICRkYi0+RGJUaW1lU3RhbXAoJG9wdC0+Z2V0X2V4cHIoKSk7CiAgICAgICAgICAgICAgICAkd2hlcmVbXSA9ICJ1LmNyZWF0ZWRhdGUgPj0geyR0bXB9IjsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX0NSRUFURURfTFQ6CiAgICAgICAgICAgICAgICAkdG1wID0gJGRiLT5EYlRpbWVTdGFtcCgkb3B0LT5nZXRfZXhwcigpKTsKICAgICAgICAgICAgICAgICR3aGVyZVtdID0gInUuY3JlYXRlZGF0ZSA8IHskdG1wfSI7CiAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9HUk9VUDoKICAgICAgICAgICAgICAgICR0bXAgPSAkdGhpcy0+X2dldF9ncm91cHMoKTsKICAgICAgICAgICAgICAgIGlmKCAhaXNzZXQoJHRtcFskb3B0LT5nZXRfZXhwcigpXSkgKSB7CiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbignaW52YWxpZCB2YWx1ZScpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJGpvaW5zW10gPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIGJsIE9OIHUuaWQgPSBibC51c2VyaWQnOwogICAgICAgICAgICAgICAgJHdoZXJlW10gPSAnYmwuZ3JvdXBpZCA9ID8nOwogICAgICAgICAgICAgICAgJHFwYXJtc1tdID0gJHRtcFskb3B0LT5nZXRfZXhwcigpXVsnaWQnXTsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX0xPR0dFRElOOgogICAgICAgICAgICAgICAgJGhhdmluZyA9ICdjb3VudChsaS51c2VyaWQpID4gMCc7CiAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9HUk9VUElEOgogICAgICAgICAgICAgICAgJGV4cHIgPSAkb3B0LT5nZXRfZXhwcigpOwogICAgICAgICAgICAgICAgaWYoIGlzX2FycmF5KCRleHByKSApIHsKICAgICAgICAgICAgICAgICAgICAkdG1wID0gYXJyYXkoKTsKICAgICAgICAgICAgICAgICAgICBmb3JlYWNoKCAkZXhwciBhcyAkb25lICkgewogICAgICAgICAgICAgICAgICAgICAgICAkb25lID0gKGludCkkb25lOwogICAgICAgICAgICAgICAgICAgICAgICBpZiggJG9uZSA8IDEgKSBjb250aW51ZTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYoICFpbl9hcnJheSgkb25lLCR0bXApICkgJHRtcFtdID0gJG9uZTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYoIGNvdW50KCR0bXApID09IDAgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCdObyB2YWxpZCBncm91cCBpZHMgc3BlY2lmaWVkJyk7CiAgICAgICAgICAgICAgICAgICAgJGpvaW5zW10gPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIGJsIE9OIHUuaWQgPSBibC51c2VyaWQnOwogICAgICAgICAgICAgICAgICAgICR3aGVyZVtdID0gJ2JsLmdyb3VwaWQgSU4gKCcuaW1wbG9kZSgnLCcsJHRtcCkuJyknOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgJGpvaW5zW10gPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIGJsIE9OIHUuaWQgPSBibC51c2VyaWQnOwogICAgICAgICAgICAgICAgICAgICR3aGVyZVtdID0gJ2JsLmdyb3VwaWQgPSA/JzsKICAgICAgICAgICAgICAgICAgICAkcXBhcm1zW10gPSAkZXhwcjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX1VTRVJOQU1FTElTVDoKICAgICAgICAgICAgICAgICR0bXAgPSAkb3B0LT5nZXRfZXhwcigpOwogICAgICAgICAgICAgICAgaWYoICFpc19hcnJheSgkdG1wKSApICR0bXAgPSBleHBsb2RlKCcsJywkdG1wKTsKICAgICAgICAgICAgICAgICR0bXAyID0gYXJyYXkoKTsKICAgICAgICAgICAgICAgIGZvcmVhY2goICR0bXAgYXMgJG9uZSApIHsKICAgICAgICAgICAgICAgICAgICAkdG1wMltdID0gIiciLnRyaW0oJG9uZSkuIiciOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJHRtcDIgPSBhcnJheV91bmlxdWUoJHRtcDIpOwogICAgICAgICAgICAgICAgJHdoZXJlW10gPSAndS51c2VybmFtZSBJTiAoJy5pbXBsb2RlKCcsJywkdG1wMikuJyknOwogICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICBjYXNlIGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfVVNFUkxJU1Q6CiAgICAgICAgICAgICAgICAkdG1wID0gJG9wdC0+Z2V0X2V4cHIoKTsKICAgICAgICAgICAgICAgIGlmKCAhaXNfYXJyYXkoJHRtcCkgKSAkdG1wID0gZXhwbG9kZSgnLCcsJHRtcCk7CiAgICAgICAgICAgICAgICAkdG1wMiA9IGFycmF5KCk7CiAgICAgICAgICAgICAgICBmb3JlYWNoKCAkdG1wIGFzICRvbmUgKSB7CiAgICAgICAgICAgICAgICAgICAgaWYoIChpbnQpJG9uZSA8IDEgKSBjb250aW51ZTsKICAgICAgICAgICAgICAgICAgICAkdG1wMltdID0gKGludCkkb25lOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJHRtcDIgPSBhcnJheV91bmlxdWUoJHRtcDIpOwogICAgICAgICAgICAgICAgJHdoZXJlW10gPSAndS5pZCBJTiAoJy5pbXBsb2RlKCcsJywkdG1wMikuJyknOwogICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICBjYXNlIGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfUFJPUEVSVFk6CiAgICAgICAgICAgICAgICAkZmV1ID0gY2dlX3V0aWxzOjpnZXRfbW9kdWxlKCdGcm9udEVuZFVzZXJzJyk7CiAgICAgICAgICAgICAgICAkZGVmbnMgPSAkZmV1LT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgICAgICAgICAgICAgICBpZiggIWluX2FycmF5KCRvcHQtPmdldF9leHByKCksYXJyYXlfa2V5cygkZGVmbnMpKSApIHRocm93IG5ldyBFeGNlcHRpb24oJ2ludmFsaWQgdmFsdWUnKTsKICAgICAgICAgICAgICAgICRqY291bnQrKzsKICAgICAgICAgICAgICAgICRqb2luc1tdID0gJ0xFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBwcnskamNvdW50fQogICAgICAgICAgICAgICAgICAgIE9OIHByeyRqY291bnR9LnVzZXJpZCA9IHUuaWQiOwogICAgICAgICAgICAgICAgJHdoZXJlW10gPSAicHJ7JGpjb3VudH0udGl0bGUgPSAnIi4kb3B0LT5nZXRfZXhwcigpLiInIjsKICAgICAgICAgICAgICAgIGlmKCAkb3B0LT5nZXRfb3B0KCkgKSB7CiAgICAgICAgICAgICAgICAgICAgaWYoIHN0cnN0cigkb3B0LT5nZXRfb3B0KCksJyonKSA9PT0gRkFMU0UgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR3aGVyZVtdID0gInByeyRqY291bnR9LmRhdGEgPSAnIi4kb3B0LT5nZXRfb3B0KCkuIiciOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgJHdoZXJlW10gPSAicHJ7JGpjb3VudH0uZGF0YSBMSUtFICciLnN0cl9yZXBsYWNlKCcqJywnJScsJG9wdC0+Z2V0X29wdCgpKS4iJyI7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICBjYXNlIGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfUFJPUEVSVFlfUkU6CiAgICAgICAgICAgICAgICAkZmV1ID0gY2dlX3V0aWxzOjpnZXRfbW9kdWxlKCdGcm9udEVuZFVzZXJzJyk7CiAgICAgICAgICAgICAgICAkZGVmbnMgPSAkZmV1LT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgICAgICAgICAgICAgICBpZiggIWluX2FycmF5KCRvcHQtPmdldF9leHByKCksYXJyYXlfa2V5cygkZGVmbnMpKSApIHsKICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCdpbnZhbGlkIHZhbHVlJyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAkamNvdW50Kys7CiAgICAgICAgICAgICAgICAkam9pbnNbXSA9ICdMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgcHJ7JGpjb3VudH0KICAgICAgICAgICAgICAgICAgICAgIE9OIHByeyRqY291bnR9LnVzZXJpZCA9IHUuaWQKICAgICAgICAgICAgICAgICAgICAgQU5EIHByeyRqY291bnR9LnRpdGxlID0gJyIuJG9wdC0+Z2V0X2V4cHIoKS4iJyI7CiAgICAgICAgICAgICAgICAkd2hlcmVbXSA9ICJwcnskamNvdW50fS5kYXRhIFJFR0VYUCAiLiRkYi0+cXN0cigkb3B0LT5nZXRfb3B0KCkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIC8vIGFzc2VtYmx5CiAgICAgICAgaWYoIGNvdW50KCRqb2lucykgKSAkcXJlYyAuPSAnICcuaW1wbG9kZSgnICcsJGpvaW5zKTsKICAgICAgICBpZiggY291bnQoJHdoZXJlKSApICRxcmVjIC49ICJcbldIRVJFICIuaW1wbG9kZSgnIEFORCAnLCR3aGVyZSk7CgogICAgICAgICRvcmRlcmJ5ID0gJ3VzZXJuYW1lJzsKICAgICAgICBzd2l0Y2goICR0aGlzLT5fcXVlcnktPmdldF9zb3J0YnkoKSApIHsKICAgICAgICBjYXNlIGZldV91c2VyX3F1ZXJ5OjpSRVNVTFRfU09SVEJZX1VTRVJOQU1FOgogICAgICAgICAgICAkb3JkZXJieSA9ICd1c2VybmFtZSc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUQllfQ1JFQVRFRDoKICAgICAgICAgICAgJG9yZGVyYnkgPSAnY3JlYXRlZGF0ZSc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUQllfRVhQSVJFUzoKICAgICAgICAgICAgJG9yZGVyYnkgPSAnZXhwaXJlcyc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KCiAgICAgICAgc3dpdGNoKCAkdGhpcy0+X3F1ZXJ5LT5nZXRfc29ydG9yZGVyKCkgKSB7CiAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRPUkRFUl9BU0M6CiAgICAgICAgICAgICRvcmRlcmJ5IC49ICcgQVNDJzsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRPUkRFUl9ERVNDOgogICAgICAgICAgICAkb3JkZXJieSAuPSAnIERFU0MnOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CgogICAgICAgICRxcmVjIC49ICcgR1JPVVAgQlkgdS5pZCc7CiAgICAgICAgaWYoICRoYXZpbmcgKSAkcXJlYyAuPSAnIEhBVklORyAnLiRoYXZpbmc7CiAgICAgICAgJHFyZWMgLj0gJyBPUkRFUiBCWSAnLiRvcmRlcmJ5OwoKICAgICAgICAkdGhpcy0+X3JzID0gJGRiLT5TZWxlY3RMaW1pdCgkcXJlYywkdGhpcy0+X3F1ZXJ5LT5nZXRfcGFnZWxpbWl0KCksJHRoaXMtPl9xdWVyeS0+Z2V0X29mZnNldCgpLCRxcGFybXMpOwogICAgICAgIGlmKCAhJHRoaXMtPl9ycyApIHRocm93IG5ldyBFeGNlcHRpb24oJ0lOVEVSTkFMIEVSUk9SOiBRdWVyeSBmYWlsZWQgLSAnLiRkYi0+c3FsLicgLS0gJy4kZGItPkVycm9yTXNnKCkpOwogICAgICAgICR0aGlzLT5fZm91bmRfcm93cyA9ICRkYi0+R2V0T25lKCdTRUxFQ1QgRk9VTkRfUk9XUygpJyk7CgogICAgICAgIC8vIHRoaXMgcHJlbG9hZHMgdGhlIHVzZXIgaW5mby4KICAgICAgICAkdWlkcyA9IGFycmF5KCk7CiAgICAgICAgd2hpbGUoICEkdGhpcy0+X3JzLT5FT0YgKSB7CiAgICAgICAgICAgIGZldV91c2VyX2NhY2hlOjpzZXRfbmV3X3VzZXIoJHRoaXMtPl9ycy0+ZmllbGRzKTsKICAgICAgICAgICAgJHVpZHNbXSA9ICR0aGlzLT5fcnMtPmZpZWxkc1snaWQnXTsKICAgICAgICAgICAgJHRoaXMtPl9ycy0+TW92ZU5leHQoKTsKICAgICAgICB9CiAgICAgICAgJHRoaXMtPl9ycy0+TW92ZUZpcnN0KCk7CgogICAgICAgIGlmKCBjb3VudCgkdWlkcykgJiYgJHRoaXMtPl9xdWVyeS0+Z2V0X2RlZXAoKSApIHsKICAgICAgICAgICAgLy8gdXNlcnMgYXJlIGFscmVhZHkgbG9hZGVkIChzaGFsbG93KS4uLiB0aGlzIHdpbGwgZ2V0IHByb3BlcnR5IGluZm9ybWF0aW9uLgogICAgICAgICAgICBmZXVfdXNlcl9jYWNoZTo6bG9hZF91c2VycygkdWlkcyxUUlVFKTsKICAgICAgICB9CgogICAgICAgICR0aGlzLT5fZXhlY3V0ZWQgPSBUUlVFOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBSZWNvcmRDb3VudCgpCiAgICB7CiAgICAgICAgaWYoICR0aGlzLT5fcnMgKSByZXR1cm4gJHRoaXMtPl9ycy0+UmVjb3JkQ291bnQoKTsKICAgICAgICByZXR1cm4gMDsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gTW92ZU5leHQoKQogICAgewogICAgICAgIGlmKCAkdGhpcy0+X3JzICkgcmV0dXJuICR0aGlzLT5fcnMtPk1vdmVOZXh0KCk7CiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBNb3ZlRmlyc3QoKQogICAgewogICAgICAgIGlmKCAkdGhpcy0+X3JzICkgcmV0dXJuICR0aGlzLT5fcnMtPk1vdmVGaXJzdCgpOwogICAgICAgIHJldHVybiBGQUxTRTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gRU9GKCkKICAgIHsKICAgICAgICBpZiggJHRoaXMtPl9ycyApIHJldHVybiAkdGhpcy0+X3JzLT5FT0YoKTsKICAgICAgICByZXR1cm4gVFJVRTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gQ2xvc2UoKQogICAgewogICAgICAgIGlmKCAkdGhpcy0+X3JzICkgcmV0dXJuICR0aGlzLT5fcnMtPkNsb3NlKCk7CiAgICAgICAgcmV0dXJuIFRSVUU7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIF9fZ2V0KCRrZXkpCiAgICB7CiAgICAgICAgaWYoICRrZXkgPT0gJ0VPRicgJiYgJHRoaXMtPl9ycyApIHJldHVybiAkdGhpcy0+X3JzLT5FT0Y7CgogICAgICAgIGlmKCAka2V5ID09ICdmaWVsZHMnICYmICR0aGlzLT5fcnMgKSB7CiAgICAgICAgICAgICRyZWMgPSBmZXVfdXNlcl9jYWNoZTo6Z2V0X3VzZXIoJHRoaXMtPl9ycy0+ZmllbGRzWydpZCddKTsKICAgICAgICAgICAgaWYoICR0aGlzLT5fcXVlcnktPmdldF93ZWJyZWFkeSgpICkgewogICAgICAgICAgICAgICAgJGZldSA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwogICAgICAgICAgICAgICAgaWYoICRmZXUtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJykgKSB7CiAgICAgICAgICAgICAgICAgICAgJHJlY1snZW1haWwnXSA9ICRyZWNbJ3VzZXJuYW1lJ107CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB1bnNldCgkcmVjWydwYXNzd29yZCddKTsKICAgICAgICAgICAgICAgICRkZWZucyA9ICRmZXUtPkdldFByb3BlcnR5RGVmbnMoKTsKICAgICAgICAgICAgICAgIGlmKCBpc3NldCgkcmVjWydmcHJvcHMnXSkgKSB7CiAgICAgICAgICAgICAgICAgICAgZm9yZWFjaCggJHJlY1snZnByb3BzJ10gYXMgJiRvbmUgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKCAhJGZldS0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVfaXNfZW1haWwnKSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKCAkZGVmbnNbJG9uZVsndGl0bGUnXV1bJ3R5cGUnXSA9PSBGcm9udEVuZFVzZXJzOjpGSUVMRFRZUEVfRU1BSUwgJiYgIWlzc2V0KCRyZWNbJ2VtYWlsJ10pICkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRyZWNbJ2VtYWlsJ10gPSAkb25lWydkYXRhJ107CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgaWYoICRkZWZuc1skb25lWyd0aXRsZSddXVsndHlwZSddID09IEZyb250RW5kVXNlcnM6OkZJRUxEVFlQRV9JTUFHRSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGdldCB0aGUgZnVsbCB1cmwuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY29uZmlnID0gXGNtc19jb25maWc6OmdldF9pbnN0YW5jZSgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJG9uZVsndXJsJ10gPSAkY29uZmlnWyd1cGxvYWRzX3VybCddLicvZmV1c2Vycy8nLiRvbmVbJ2RhdGEnXTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBpZiggIWlzc2V0KCRyZWNbJ2VtYWlsJ10pICYmIGlzX2VtYWlsKCRyZWNbJ3VzZXJuYW1lJ10pICkgJHJlY1snZW1haWwnXSA9ICRyZWNbJ3VzZXJuYW1lJ107CiAgICAgICAgICAgIHJldHVybiAkcmVjOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2ZvdW5kX3Jvd3MoKQogICAgewogICAgICAgIGlmKCAhJHRoaXMtPl9ycyApIHJldHVybjsKICAgICAgICByZXR1cm4gJHRoaXMtPl9mb3VuZF9yb3dzOwogICAgfQoKfSAvLyBjbGFzcwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/font/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/font/fontawesome-webfont.eot</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/font/fontawesome-webfont.svg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiID4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8bWV0YWRhdGE+PC9tZXRhZGF0YT4KPGRlZnM+Cjxmb250IGlkPSJmb250YXdlc29tZXJlZ3VsYXIiIGhvcml6LWFkdi14PSIxNTM2IiA+Cjxmb250LWZhY2UgdW5pdHMtcGVyLWVtPSIxNzkyIiBhc2NlbnQ9IjE1MzYiIGRlc2NlbnQ9Ii0yNTYiIC8+CjxtaXNzaW5nLWdseXBoIGhvcml6LWFkdi14PSI0NDgiIC8+CjxnbHlwaCB1bmljb2RlPSIgIiAgaG9yaXotYWR2LXg9IjQ0OCIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeDA5OyIgaG9yaXotYWR2LXg9IjQ0OCIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGEwOyIgaG9yaXotYWR2LXg9IjQ0OCIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGE4OyIgaG9yaXotYWR2LXg9IjE3OTIiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hhOTsiIGhvcml6LWFkdi14PSIxNzkyIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4YWU7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGI0OyIgaG9yaXotYWR2LXg9IjE3OTIiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hjNjsiIGhvcml6LWFkdi14PSIxNzkyIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZDg7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeDIwMDA7IiBob3Jpei1hZHYteD0iNzY4IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4MjAwMTsiIGhvcml6LWFkdi14PSIxNTM3IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4MjAwMjsiIGhvcml6LWFkdi14PSI3NjgiIC8+CjxnbHlwaCB1bmljb2RlPSImI3gyMDAzOyIgaG9yaXotYWR2LXg9IjE1MzciIC8+CjxnbHlwaCB1bmljb2RlPSImI3gyMDA0OyIgaG9yaXotYWR2LXg9IjUxMiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeDIwMDU7IiBob3Jpei1hZHYteD0iMzg0IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4MjAwNjsiIGhvcml6LWFkdi14PSIyNTYiIC8+CjxnbHlwaCB1bmljb2RlPSImI3gyMDA3OyIgaG9yaXotYWR2LXg9IjI1NiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeDIwMDg7IiBob3Jpei1hZHYteD0iMTkyIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4MjAwOTsiIGhvcml6LWFkdi14PSIzMDciIC8+CjxnbHlwaCB1bmljb2RlPSImI3gyMDBhOyIgaG9yaXotYWR2LXg9Ijg1IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4MjAyZjsiIGhvcml6LWFkdi14PSIzMDciIC8+CjxnbHlwaCB1bmljb2RlPSImI3gyMDVmOyIgaG9yaXotYWR2LXg9IjM4NCIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeDIxMjI7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeDIyMWU7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeDIyNjA7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeDI1ZmM7IiBob3Jpei1hZHYteD0iNTAwIiBkPSJNMCAweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMDA7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTkzIDEzNTBxMCAyMyAxOCAzNi41dDM4IDE3LjV0NDMgNGgxNDA4cTIzIDAgNDMgLTR0MzggLTE3LjV0MTggLTM2LjVxMCAtMzUgLTQzIC03OGwtNjMyIC02MzJ2LTc2OGgzMjBxMjYgMCA0NSAtMTl0MTkgLTQ1dC0xOSAtNDV0LTQ1IC0xOWgtODk2cS0yNiAwIC00NSAxOXQtMTkgNDV0MTkgNDV0NDUgMTloMzIwdjc2OGwtNjMyIDYzMnEtNDMgNDMgLTQzIDc4eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMDE7IiBkPSJNMCAtNjRxMCA1MCAzNCA4OXQ4NiA2MC41dDEwMy41IDMydDk2LjUgMTAuNXExMDUgMCAxOTIgLTM5djk2N3EwIDMxIDE5IDU2LjV0NDkgMzUuNWw4MzIgMjU2cTEyIDQgMjggNHE0MCAwIDY4IC0yOHQyOCAtNjh2LTExMjBxMCAtNTAgLTM0IC04OXQtODYgLTYwLjV0LTEwMy41IC0zMnQtOTYuNSAtMTAuNXQtOTYuNSAxMC41dC0xMDMuNSAzMnQtODYgNjAuNXQtMzQgODl0MzQgODl0ODYgNjAuNXQxMDMuNSAzMnQ5Ni41IDEwLjUgcTEwNSAwIDE5MiAtMzl2NTM3bC03NjggLTIzN3YtNzA5cTAgLTUwIC0zNCAtODl0LTg2IC02MC41dC0xMDMuNSAtMzJ0LTk2LjUgLTEwLjV0LTk2LjUgMTAuNXQtMTAzLjUgMzJ0LTg2IDYwLjV0LTM0IDg5eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMDI7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgNzA0cTAgMTQzIDU1LjUgMjczLjV0MTUwIDIyNXQyMjUgMTUwdDI3My41IDU1LjV0MjczLjUgLTU1LjV0MjI1IC0xNTB0MTUwIC0yMjV0NTUuNSAtMjczLjVxMCAtMjIwIC0xMjQgLTM5OWwzNDMgLTM0M3EzNyAtMzcgMzcgLTkwcTAgLTUyIC0zOCAtOTB0LTkwIC0zOHEtNTQgMCAtOTAgMzhsLTM0MyAzNDJxLTE3OSAtMTI0IC0zOTkgLTEyNHEtMTQzIDAgLTI3My41IDU1LjV0LTIyNSAxNTB0LTE1MCAyMjV0LTU1LjUgMjczLjV6IE0yNTYgNzA0cTAgLTE4NSAxMzEuNSAtMzE2LjV0MzE2LjUgLTEzMS41dDMxNi41IDEzMS41dDEzMS41IDMxNi41dC0xMzEuNSAzMTYuNXQtMzE2LjUgMTMxLjV0LTMxNi41IC0xMzEuNXQtMTMxLjUgLTMxNi41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMDM7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgMzJ2MTA4OHEwIDY2IDQ3IDExM3QxMTMgNDdoMTQ3MnE2NiAwIDExMyAtNDd0NDcgLTExM3YtMTA4OHEwIC02NiAtNDcgLTExM3QtMTEzIC00N2gtMTQ3MnEtNjYgMCAtMTEzIDQ3dC00NyAxMTN6TTEyOCAzMnEwIC0xMyA5LjUgLTIyLjV0MjIuNSAtOS41aDE0NzJxMTMgMCAyMi41IDkuNXQ5LjUgMjIuNXY3NjhxLTMyIC0zNiAtNjkgLTY2cS0yNjggLTIwNiAtNDI2IC0zMzhxLTUxIC00MyAtODMgLTY3dC04Ni41IC00OC41IHQtMTAyLjUgLTI0LjVoLTFoLTFxLTQ4IDAgLTEwMi41IDI0LjV0LTg2LjUgNDguNXQtODMgNjdxLTE1OCAxMzIgLTQyNiAzMzhxLTM3IDMwIC02OSA2NnYtNzY4ek0xMjggMTEyMHEwIC0xNjggMTQ3IC0yODRxMTkzIC0xNTIgNDAxIC0zMTdxNiAtNSAzNSAtMjkuNXQ0NiAtMzcuNXQ0NC41IC0zMS41dDUwLjUgLTI3LjV0NDMgLTloMWgxcTIwIDAgNDMgOXQ1MC41IDI3LjV0NDQuNSAzMS41dDQ2IDM3LjV0MzUgMjkuNXEyMDggMTY1IDQwMSAzMTcgcTU0IDQzIDEwMC41IDExNS41dDQ2LjUgMTMxLjV2MTF2MTMuNXQtMC41IDEzdC0zIDEyLjV0LTUuNSA5dC05IDcuNXQtMTQgMi41aC0xNDcycS0xMyAwIC0yMi41IC05LjV0LTkuNSAtMjIuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDA0OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDk0MHEwIDIyMCAxMjcgMzQ0dDM1MSAxMjRxNjIgMCAxMjYuNSAtMjEuNXQxMjAgLTU4dDk1LjUgLTY4LjV0NzYgLTY4cTM2IDM2IDc2IDY4dDk1LjUgNjguNXQxMjAgNTh0MTI2LjUgMjEuNXEyMjQgMCAzNTEgLTEyNHQxMjcgLTM0NHEwIC0yMjEgLTIyOSAtNDUwbC02MjMgLTYwMHEtMTggLTE4IC00NCAtMTh0LTQ0IDE4bC02MjQgNjAycS0xMCA4IC0yNy41IDI2dC01NS41IDY1LjV0LTY4IDk3LjV0LTUzLjUgMTIxdC0yMy41IDEzOHogIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAwNTsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCA4ODlxMCAzNyA1NiA0Nmw1MDIgNzNsMjI1IDQ1NXExOSA0MSA0OSA0MXQ0OSAtNDFsMjI1IC00NTVsNTAyIC03M3E1NiAtOSA1NiAtNDZxMCAtMjIgLTI2IC00OGwtMzYzIC0zNTRsODYgLTUwMHExIC03IDEgLTIwcTAgLTIxIC0xMC41IC0zNS41dC0zMC41IC0xNC41cS0xOSAwIC00MCAxMmwtNDQ5IDIzNmwtNDQ5IC0yMzZxLTIyIC0xMiAtNDAgLTEycS0yMSAwIC0zMS41IDE0LjV0LTEwLjUgMzUuNXEwIDYgMiAyMGw4NiA1MDAgbC0zNjQgMzU0cS0yNSAyNyAtMjUgNDh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAwNjsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCA4ODlxMCAzNyA1NiA0Nmw1MDIgNzNsMjI1IDQ1NXExOSA0MSA0OSA0MXQ0OSAtNDFsMjI1IC00NTVsNTAyIC03M3E1NiAtOSA1NiAtNDZxMCAtMjIgLTI2IC00OGwtMzYzIC0zNTRsODYgLTUwMHExIC03IDEgLTIwcTAgLTUwIC00MSAtNTBxLTE5IDAgLTQwIDEybC00NDkgMjM2bC00NDkgLTIzNnEtMjIgLTEyIC00MCAtMTJxLTIxIDAgLTMxLjUgMTQuNXQtMTAuNSAzNS41cTAgNiAyIDIwbDg2IDUwMGwtMzY0IDM1NCBxLTI1IDI3IC0yNSA0OHpNMjIxIDgyOWwzMDYgLTI5N2wtNzMgLTQyMWwzNzggMTk5bDM3NyAtMTk5bC03MiA0MjFsMzA2IDI5N2wtNDIyIDYybC0xODkgMzgybC0xODkgLTM4MnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDA3OyIgaG9yaXotYWR2LXg9IjE0MDgiIGQ9Ik0wIDEzMXEwIDUzIDMuNSAxMDMuNXQxNCAxMDl0MjYuNSAxMDguNXQ0MyA5Ny41dDYyIDgxdDg1LjUgNTMuNXQxMTEuNSAyMHE5IDAgNDIgLTIxLjV0NzQuNSAtNDh0MTA4IC00OHQxMzMuNSAtMjEuNXQxMzMuNSAyMS41dDEwOCA0OHQ3NC41IDQ4dDQyIDIxLjVxNjEgMCAxMTEuNSAtMjB0ODUuNSAtNTMuNXQ2MiAtODF0NDMgLTk3LjV0MjYuNSAtMTA4LjV0MTQgLTEwOXQzLjUgLTEwMy41cTAgLTEyMCAtNzMgLTE4OS41dC0xOTQgLTY5LjUgaC04NzRxLTEyMSAwIC0xOTQgNjkuNXQtNzMgMTg5LjV6TTMyMCAxMDI0cTAgMTU5IDExMi41IDI3MS41dDI3MS41IDExMi41dDI3MS41IC0xMTIuNXQxMTIuNSAtMjcxLjV0LTExMi41IC0yNzEuNXQtMjcxLjUgLTExMi41dC0yNzEuNSAxMTIuNXQtMTEyLjUgMjcxLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAwODsiIGhvcml6LWFkdi14PSIxOTIwIiBkPSJNMCAtOTZ2MTM0NHEwIDY2IDQ3IDExM3QxMTMgNDdoMTYwMHE2NiAwIDExMyAtNDd0NDcgLTExM3YtMTM0NHEwIC02NiAtNDcgLTExM3QtMTEzIC00N2gtMTYwMHEtNjYgMCAtMTEzIDQ3dC00NyAxMTN6TTEyOCA2NHYtMTI4cTAgLTI2IDE5IC00NXQ0NSAtMTloMTI4cTI2IDAgNDUgMTl0MTkgNDV2MTI4cTAgMjYgLTE5IDQ1dC00NSAxOWgtMTI4cS0yNiAwIC00NSAtMTl0LTE5IC00NXpNMTI4IDMyMHEwIC0yNiAxOSAtNDV0NDUgLTE5aDEyOCBxMjYgMCA0NSAxOXQxOSA0NXYxMjhxMCAyNiAtMTkgNDV0LTQ1IDE5aC0xMjhxLTI2IDAgLTQ1IC0xOXQtMTkgLTQ1di0xMjh6TTEyOCA3MDRxMCAtMjYgMTkgLTQ1dDQ1IC0xOWgxMjhxMjYgMCA0NSAxOXQxOSA0NXYxMjhxMCAyNiAtMTkgNDV0LTQ1IDE5aC0xMjhxLTI2IDAgLTQ1IC0xOXQtMTkgLTQ1di0xMjh6TTEyOCAxMDg4cTAgLTI2IDE5IC00NXQ0NSAtMTloMTI4cTI2IDAgNDUgMTl0MTkgNDV2MTI4cTAgMjYgLTE5IDQ1dC00NSAxOSBoLTEyOHEtMjYgMCAtNDUgLTE5dC0xOSAtNDV2LTEyOHpNNTEyIC02NHEwIC0yNiAxOSAtNDV0NDUgLTE5aDc2OHEyNiAwIDQ1IDE5dDE5IDQ1djUxMnEwIDI2IC0xOSA0NXQtNDUgMTloLTc2OHEtMjYgMCAtNDUgLTE5dC0xOSAtNDV2LTUxMnpNNTEyIDcwNHEwIC0yNiAxOSAtNDV0NDUgLTE5aDc2OHEyNiAwIDQ1IDE5dDE5IDQ1djUxMnEwIDI2IC0xOSA0NXQtNDUgMTloLTc2OHEtMjYgMCAtNDUgLTE5dC0xOSAtNDV2LTUxMnpNMTUzNiA2NCB2LTEyOHEwIC0yNiAxOSAtNDV0NDUgLTE5aDEyOHEyNiAwIDQ1IDE5dDE5IDQ1djEyOHEwIDI2IC0xOSA0NXQtNDUgMTloLTEyOHEtMjYgMCAtNDUgLTE5dC0xOSAtNDV6TTE1MzYgMzIwcTAgLTI2IDE5IC00NXQ0NSAtMTloMTI4cTI2IDAgNDUgMTl0MTkgNDV2MTI4cTAgMjYgLTE5IDQ1dC00NSAxOWgtMTI4cS0yNiAwIC00NSAtMTl0LTE5IC00NXYtMTI4ek0xNTM2IDcwNHEwIC0yNiAxOSAtNDV0NDUgLTE5aDEyOHEyNiAwIDQ1IDE5dDE5IDQ1IHYxMjhxMCAyNiAtMTkgNDV0LTQ1IDE5aC0xMjhxLTI2IDAgLTQ1IC0xOXQtMTkgLTQ1di0xMjh6TTE1MzYgMTA4OHEwIC0yNiAxOSAtNDV0NDUgLTE5aDEyOHEyNiAwIDQ1IDE5dDE5IDQ1djEyOHEwIDI2IC0xOSA0NXQtNDUgMTloLTEyOHEtMjYgMCAtNDUgLTE5dC0xOSAtNDV2LTEyOHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDA5OyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0wIDEyOHYzODRxMCA1MiAzOCA5MHQ5MCAzOGg1MTJxNTIgMCA5MCAtMzh0MzggLTkwdi0zODRxMCAtNTIgLTM4IC05MHQtOTAgLTM4aC01MTJxLTUyIDAgLTkwIDM4dC0zOCA5MHpNMCA4OTZ2Mzg0cTAgNTIgMzggOTB0OTAgMzhoNTEycTUyIDAgOTAgLTM4dDM4IC05MHYtMzg0cTAgLTUyIC0zOCAtOTB0LTkwIC0zOGgtNTEycS01MiAwIC05MCAzOHQtMzggOTB6TTg5NiAxMjh2Mzg0cTAgNTIgMzggOTB0OTAgMzhoNTEycTUyIDAgOTAgLTM4IHQzOCAtOTB2LTM4NHEwIC01MiAtMzggLTkwdC05MCAtMzhoLTUxMnEtNTIgMCAtOTAgMzh0LTM4IDkwek04OTYgODk2djM4NHEwIDUyIDM4IDkwdDkwIDM4aDUxMnE1MiAwIDkwIC0zOHQzOCAtOTB2LTM4NHEwIC01MiAtMzggLTkwdC05MCAtMzhoLTUxMnEtNTIgMCAtOTAgMzh0LTM4IDkweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMGE7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgOTZ2MTkycTAgNDAgMjggNjh0NjggMjhoMzIwcTQwIDAgNjggLTI4dDI4IC02OHYtMTkycTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMzIwcS00MCAwIC02OCAyOHQtMjggNjh6TTAgNjA4djE5MnEwIDQwIDI4IDY4dDY4IDI4aDMyMHE0MCAwIDY4IC0yOHQyOCAtNjh2LTE5MnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTMyMHEtNDAgMCAtNjggMjh0LTI4IDY4ek0wIDExMjB2MTkycTAgNDAgMjggNjh0NjggMjhoMzIwcTQwIDAgNjggLTI4IHQyOCAtNjh2LTE5MnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTMyMHEtNDAgMCAtNjggMjh0LTI4IDY4ek02NDAgOTZ2MTkycTAgNDAgMjggNjh0NjggMjhoMzIwcTQwIDAgNjggLTI4dDI4IC02OHYtMTkycTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMzIwcS00MCAwIC02OCAyOHQtMjggNjh6TTY0MCA2MDh2MTkycTAgNDAgMjggNjh0NjggMjhoMzIwcTQwIDAgNjggLTI4dDI4IC02OHYtMTkycTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMzIwIHEtNDAgMCAtNjggMjh0LTI4IDY4ek02NDAgMTEyMHYxOTJxMCA0MCAyOCA2OHQ2OCAyOGgzMjBxNDAgMCA2OCAtMjh0MjggLTY4di0xOTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0zMjBxLTQwIDAgLTY4IDI4dC0yOCA2OHpNMTI4MCA5NnYxOTJxMCA0MCAyOCA2OHQ2OCAyOGgzMjBxNDAgMCA2OCAtMjh0MjggLTY4di0xOTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0zMjBxLTQwIDAgLTY4IDI4dC0yOCA2OHpNMTI4MCA2MDh2MTkyIHEwIDQwIDI4IDY4dDY4IDI4aDMyMHE0MCAwIDY4IC0yOHQyOCAtNjh2LTE5MnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTMyMHEtNDAgMCAtNjggMjh0LTI4IDY4ek0xMjgwIDExMjB2MTkycTAgNDAgMjggNjh0NjggMjhoMzIwcTQwIDAgNjggLTI4dDI4IC02OHYtMTkycTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMzIwcS00MCAwIC02OCAyOHQtMjggNjh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAwYjsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCA5NnYxOTJxMCA0MCAyOCA2OHQ2OCAyOGgzMjBxNDAgMCA2OCAtMjh0MjggLTY4di0xOTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0zMjBxLTQwIDAgLTY4IDI4dC0yOCA2OHpNMCA2MDh2MTkycTAgNDAgMjggNjh0NjggMjhoMzIwcTQwIDAgNjggLTI4dDI4IC02OHYtMTkycTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMzIwcS00MCAwIC02OCAyOHQtMjggNjh6TTAgMTEyMHYxOTJxMCA0MCAyOCA2OHQ2OCAyOGgzMjBxNDAgMCA2OCAtMjggdDI4IC02OHYtMTkycTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMzIwcS00MCAwIC02OCAyOHQtMjggNjh6TTY0MCA5NnYxOTJxMCA0MCAyOCA2OHQ2OCAyOGg5NjBxNDAgMCA2OCAtMjh0MjggLTY4di0xOTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC05NjBxLTQwIDAgLTY4IDI4dC0yOCA2OHpNNjQwIDYwOHYxOTJxMCA0MCAyOCA2OHQ2OCAyOGg5NjBxNDAgMCA2OCAtMjh0MjggLTY4di0xOTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC05NjAgcS00MCAwIC02OCAyOHQtMjggNjh6TTY0MCAxMTIwdjE5MnEwIDQwIDI4IDY4dDY4IDI4aDk2MHE0MCAwIDY4IC0yOHQyOCAtNjh2LTE5MnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTk2MHEtNDAgMCAtNjggMjh0LTI4IDY4eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMGM7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTEyMSA2MDhxMCA0MCAyOCA2OGwxMzYgMTM2cTI4IDI4IDY4IDI4dDY4IC0yOGwyOTQgLTI5NWw2NTYgNjU3cTI4IDI4IDY4IDI4dDY4IC0yOGwxMzYgLTEzNnEyOCAtMjggMjggLTY4dC0yOCAtNjhsLTcyNCAtNzI0bC0xMzYgLTEzNnEtMjggLTI4IC02OCAtMjh0LTY4IDI4bC0xMzYgMTM2bC0zNjIgMzYycS0yOCAyOCAtMjggNjh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAwZDsiIGhvcml6LWFkdi14PSIxNDA4IiBkPSJNMTEwIDIxNHEwIDQwIDI4IDY4bDI5NCAyOTRsLTI5NCAyOTRxLTI4IDI4IC0yOCA2OHQyOCA2OGwxMzYgMTM2cTI4IDI4IDY4IDI4dDY4IC0yOGwyOTQgLTI5NGwyOTQgMjk0cTI4IDI4IDY4IDI4dDY4IC0yOGwxMzYgLTEzNnEyOCAtMjggMjggLTY4dC0yOCAtNjhsLTI5NCAtMjk0bDI5NCAtMjk0cTI4IC0yOCAyOCAtNjh0LTI4IC02OGwtMTM2IC0xMzZxLTI4IC0yOCAtNjggLTI4dC02OCAyOGwtMjk0IDI5NGwtMjk0IC0yOTQgcS0yOCAtMjggLTY4IC0yOHQtNjggMjhsLTEzNiAxMzZxLTI4IDI4IC0yOCA2OHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDBlOyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0wIDcwNHEwIDE0MyA1NS41IDI3My41dDE1MCAyMjV0MjI1IDE1MHQyNzMuNSA1NS41dDI3My41IC01NS41dDIyNSAtMTUwdDE1MCAtMjI1dDU1LjUgLTI3My41cTAgLTIyMCAtMTI0IC0zOTlsMzQzIC0zNDNxMzcgLTM3IDM3IC05MHQtMzcuNSAtOTAuNXQtOTAuNSAtMzcuNXEtNTQgMCAtOTAgMzhsLTM0MyAzNDJxLTE3OSAtMTI0IC0zOTkgLTEyNHEtMTQzIDAgLTI3My41IDU1LjV0LTIyNSAxNTB0LTE1MCAyMjV0LTU1LjUgMjczLjV6IE0yNTYgNzA0cTAgLTE4NSAxMzEuNSAtMzE2LjV0MzE2LjUgLTEzMS41dDMxNi41IDEzMS41dDEzMS41IDMxNi41dC0xMzEuNSAzMTYuNXQtMzE2LjUgMTMxLjV0LTMxNi41IC0xMzEuNXQtMTMxLjUgLTMxNi41ek0zODQgNjcydjY0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoMjI0djIyNHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDY0cTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtMjI0aDIyNHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTY0IHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTIyNHYtMjI0cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtNjRxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXYyMjRoLTIyNHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMTA7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgNzA0cTAgMTQzIDU1LjUgMjczLjV0MTUwIDIyNXQyMjUgMTUwdDI3My41IDU1LjV0MjczLjUgLTU1LjV0MjI1IC0xNTB0MTUwIC0yMjV0NTUuNSAtMjczLjVxMCAtMjIwIC0xMjQgLTM5OWwzNDMgLTM0M3EzNyAtMzcgMzcgLTkwdC0zNy41IC05MC41dC05MC41IC0zNy41cS01NCAwIC05MCAzOGwtMzQzIDM0MnEtMTc5IC0xMjQgLTM5OSAtMTI0cS0xNDMgMCAtMjczLjUgNTUuNXQtMjI1IDE1MHQtMTUwIDIyNXQtNTUuNSAyNzMuNXogTTI1NiA3MDRxMCAtMTg1IDEzMS41IC0zMTYuNXQzMTYuNSAtMTMxLjV0MzE2LjUgMTMxLjV0MTMxLjUgMzE2LjV0LTEzMS41IDMxNi41dC0zMTYuNSAxMzEuNXQtMzE2LjUgLTEzMS41dC0xMzEuNSAtMzE2LjV6TTM4NCA2NzJ2NjRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg1NzZxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTU3NnEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMTE7IiBkPSJNMCA2NDBxMCAxODIgODAuNSAzNDN0MjI2LjUgMjcwcTQzIDMyIDk1LjUgMjV0ODMuNSAtNTBxMzIgLTQyIDI0LjUgLTk0LjV0LTQ5LjUgLTg0LjVxLTk4IC03NCAtMTUxLjUgLTE4MXQtNTMuNSAtMjI4cTAgLTEwNCA0MC41IC0xOTguNXQxMDkuNSAtMTYzLjV0MTYzLjUgLTEwOS41dDE5OC41IC00MC41dDE5OC41IDQwLjV0MTYzLjUgMTA5LjV0MTA5LjUgMTYzLjV0NDAuNSAxOTguNXEwIDEyMSAtNTMuNSAyMjh0LTE1MS41IDE4MSBxLTQyIDMyIC00OS41IDg0LjV0MjQuNSA5NC41cTMxIDQzIDg0IDUwdDk1IC0yNXExNDYgLTEwOSAyMjYuNSAtMjcwdDgwLjUgLTM0M3EwIC0xNTYgLTYxIC0yOTh0LTE2NCAtMjQ1dC0yNDUgLTE2NHQtMjk4IC02MXQtMjk4IDYxdC0yNDUgMTY0dC0xNjQgMjQ1dC02MSAyOTh6TTY0MCA3Njh2NjQwcTAgNTIgMzggOTB0OTAgMzh0OTAgLTM4dDM4IC05MHYtNjQwcTAgLTUyIC0zOCAtOTB0LTkwIC0zOHQtOTAgMzh0LTM4IDkweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMTI7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgLTk2djE5MnEwIDE0IDkgMjN0MjMgOWgxOTJxMTQgMCAyMyAtOXQ5IC0yM3YtMTkycTAgLTE0IC05IC0yM3QtMjMgLTloLTE5MnEtMTQgMCAtMjMgOXQtOSAyM3pNMzg0IC05NnYzMjBxMCAxNCA5IDIzdDIzIDloMTkycTE0IDAgMjMgLTl0OSAtMjN2LTMyMHEwIC0xNCAtOSAtMjN0LTIzIC05aC0xOTJxLTE0IDAgLTIzIDl0LTkgMjN6TTc2OCAtOTZ2NTc2cTAgMTQgOSAyM3QyMyA5aDE5MnExNCAwIDIzIC05dDkgLTIzdi01NzYgcTAgLTE0IC05IC0yM3QtMjMgLTloLTE5MnEtMTQgMCAtMjMgOXQtOSAyM3pNMTE1MiAtOTZ2OTYwcTAgMTQgOSAyM3QyMyA5aDE5MnExNCAwIDIzIC05dDkgLTIzdi05NjBxMCAtMTQgLTkgLTIzdC0yMyAtOWgtMTkycS0xNCAwIC0yMyA5dC05IDIzek0xNTM2IC05NnYxNDcycTAgMTQgOSAyM3QyMyA5aDE5MnExNCAwIDIzIC05dDkgLTIzdi0xNDcycTAgLTE0IC05IC0yM3QtMjMgLTloLTE5MnEtMTQgMCAtMjMgOXQtOSAyM3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDEzOyIgZD0iTTAgNTMxdjIyMnEwIDEyIDggMjN0MTkgMTNsMTg2IDI4cTE0IDQ2IDM5IDkycS00MCA1NyAtMTA3IDEzOHEtMTAgMTIgLTEwIDI0cTAgMTAgOSAyM3EyNiAzNiA5OC41IDEwNy41dDk0LjUgNzEuNXExMyAwIDI2IC0xMGwxMzggLTEwN3E0NCAyMyA5MSAzOHExNiAxMzYgMjkgMTg2cTcgMjggMzYgMjhoMjIycTE0IDAgMjQuNSAtOC41dDExLjUgLTIxLjVsMjggLTE4NHE0OSAtMTYgOTAgLTM3bDE0MiAxMDdxOSA5IDI0IDlxMTMgMCAyNSAtMTAgcTEyOSAtMTE5IDE2NSAtMTcwcTcgLTggNyAtMjJxMCAtMTIgLTggLTIzcS0xNSAtMjEgLTUxIC02Ni41dC01NCAtNzAuNXEyNiAtNTAgNDEgLTk4bDE4MyAtMjhxMTMgLTIgMjEgLTEyLjV0OCAtMjMuNXYtMjIycTAgLTEyIC04IC0yM3QtMjAgLTEzbC0xODUgLTI4cS0xOSAtNTQgLTM5IC05MXEzNSAtNTAgMTA3IC0xMzhxMTAgLTEyIDEwIC0yNXQtOSAtMjNxLTI3IC0zNyAtOTkgLTEwOHQtOTQgLTcxcS0xMiAwIC0yNiA5bC0xMzggMTA4IHEtNDQgLTIzIC05MSAtMzhxLTE2IC0xMzYgLTI5IC0xODZxLTcgLTI4IC0zNiAtMjhoLTIyMnEtMTQgMCAtMjQuNSA4LjV0LTExLjUgMjEuNWwtMjggMTg0cS00OSAxNiAtOTAgMzdsLTE0MSAtMTA3cS0xMCAtOSAtMjUgLTlxLTE0IDAgLTI1IDExcS0xMjYgMTE0IC0xNjUgMTY4cS03IDEwIC03IDIzcTAgMTIgOCAyM3ExNSAyMSA1MSA2Ni41dDU0IDcwLjVxLTI3IDUwIC00MSA5OWwtMTgzIDI3cS0xMyAyIC0yMSAxMi41dC04IDIzLjV6IE01MTIgNjQwcTAgLTEwNiA3NSAtMTgxdDE4MSAtNzV0MTgxIDc1dDc1IDE4MXQtNzUgMTgxdC0xODEgNzV0LTE4MSAtNzV0LTc1IC0xODF6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAxNDsiIGhvcml6LWFkdi14PSIxNDA4IiBkPSJNMCAxMDU2djY0cTAgMTQgOSAyM3QyMyA5aDMwOWw3MCAxNjdxMTUgMzcgNTQgNjN0NzkgMjZoMzIwcTQwIDAgNzkgLTI2dDU0IC02M2w3MCAtMTY3aDMwOXExNCAwIDIzIC05dDkgLTIzdi02NHEwIC0xNCAtOSAtMjN0LTIzIC05aC05NnYtOTQ4cTAgLTgzIC00NyAtMTQzLjV0LTExMyAtNjAuNWgtODMycS02NiAwIC0xMTMgNTguNXQtNDcgMTQxLjV2OTUyaC05NnEtMTQgMCAtMjMgOXQtOSAyM3pNMjU2IDc2cTAgLTIyIDcgLTQwLjUgdDE0LjUgLTI3dDEwLjUgLTguNWg4MzJxMyAwIDEwLjUgOC41dDE0LjUgMjd0NyA0MC41djk0OGgtODk2di05NDh6TTM4NCAyMjR2NTc2cTAgMTQgOSAyM3QyMyA5aDY0cTE0IDAgMjMgLTl0OSAtMjN2LTU3NnEwIC0xNCAtOSAtMjN0LTIzIC05aC02NHEtMTQgMCAtMjMgOXQtOSAyM3pNNDgwIDExNTJoNDQ4bC00OCAxMTdxLTcgOSAtMTcgMTFoLTMxN3EtMTAgLTIgLTE3IC0xMXpNNjQwIDIyNHY1NzZxMCAxNCA5IDIzdDIzIDloNjQgcTE0IDAgMjMgLTl0OSAtMjN2LTU3NnEwIC0xNCAtOSAtMjN0LTIzIC05aC02NHEtMTQgMCAtMjMgOXQtOSAyM3pNODk2IDIyNHY1NzZxMCAxNCA5IDIzdDIzIDloNjRxMTQgMCAyMyAtOXQ5IC0yM3YtNTc2cTAgLTE0IC05IC0yM3QtMjMgLTloLTY0cS0xNCAwIC0yMyA5dC05IDIzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMTU7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTI2IDYzNi41cTEgMTMuNSAxMSAyMS41bDcxOSA1OTlxMzIgMjYgNzYgMjZ0NzYgLTI2bDI0NCAtMjA0djE5NXEwIDE0IDkgMjN0MjMgOWgxOTJxMTQgMCAyMyAtOXQ5IC0yM3YtNDA4bDIxOSAtMTgycTEwIC04IDExIC0yMS41dC03IC0yMy41bC02MiAtNzRxLTggLTkgLTIxIC0xMWgtM3EtMTMgMCAtMjEgN2wtNjkyIDU3N2wtNjkyIC01NzdxLTEyIC04IC0yNCAtN3EtMTMgMiAtMjEgMTFsLTYyIDc0cS04IDEwIC03IDIzLjV6TTI1NiA2NCB2NDgwcTAgMSAwLjUgM3QwLjUgM2w1NzUgNDc0bDU3NSAtNDc0cTEgLTIgMSAtNnYtNDgwcTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMzg0djM4NGgtMjU2di0zODRoLTM4NHEtMjYgMCAtNDUgMTl0LTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMTY7IiBkPSJNMCAtMTYwdjE2MDBxMCA0MCAyOCA2OHQ2OCAyOGg4OTZxNDAgMCA4OCAtMjB0NzYgLTQ4bDMxMiAtMzEycTI4IC0yOCA0OCAtNzZ0MjAgLTg4di0xMTUycTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMTM0NHEtNDAgMCAtNjggMjh0LTI4IDY4ek0xMjggLTEyOGgxMjgwdjEwMjRoLTQxNnEtNDAgMCAtNjggMjh0LTI4IDY4djQxNmgtNzY4di0xNTM2ek0xMDI0IDEwMjRoMzc2cS0xMCAyOSAtMjIgNDFsLTMxMyAzMTNxLTEyIDEyIC00MSAyMiB2LTM3NnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDE3OyIgZD0iTTAgNjQwcTAgMjA5IDEwMyAzODUuNXQyNzkuNSAyNzkuNXQzODUuNSAxMDN0Mzg1LjUgLTEwM3QyNzkuNSAtMjc5LjV0MTAzIC0zODUuNXQtMTAzIC0zODUuNXQtMjc5LjUgLTI3OS41dC0zODUuNSAtMTAzdC0zODUuNSAxMDN0LTI3OS41IDI3OS41dC0xMDMgMzg1LjV6TTIyNCA2NDBxMCAtMTQ4IDczIC0yNzN0MTk4IC0xOTh0MjczIC03M3QyNzMgNzN0MTk4IDE5OHQ3MyAyNzN0LTczIDI3M3QtMTk4IDE5OHQtMjczIDczdC0yNzMgLTczIHQtMTk4IC0xOTh0LTczIC0yNzN6TTUxMiA1NDR2NjRxMCAxNCA5IDIzdDIzIDloMjI0djM1MnEwIDE0IDkgMjN0MjMgOWg2NHExNCAwIDIzIC05dDkgLTIzdi00NDhxMCAtMTQgLTkgLTIzdC0yMyAtOWgtMzIwcS0xNCAwIC0yMyA5dC05IDIzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMTg7IiBob3Jpei1hZHYteD0iMTkyMCIgZD0iTTUwIDczcTAgNTQgMjYgMTE2bDQxNyAxMDQ0cTggMTkgMjYgMzN0MzggMTRoMzM5cS0xMyAwIC0yMyAtOS41dC0xMSAtMjIuNWwtMTUgLTE5MnEtMSAtMTQgOCAtMjN0MjIgLTloMTY2cTEzIDAgMjIgOXQ4IDIzbC0xNSAxOTJxLTEgMTMgLTExIDIyLjV0LTIzIDkuNWgzMzlxMjAgMCAzOCAtMTR0MjYgLTMzbDQxNyAtMTA0NHEyNiAtNjIgMjYgLTExNnEwIC03MyAtNDYgLTczaC03MDRxMTMgMCAyMiA5LjV0OCAyMi41bC0yMCAyNTYgcS0xIDEzIC0xMSAyMi41dC0yMyA5LjVoLTI3MnEtMTMgMCAtMjMgLTkuNXQtMTEgLTIyLjVsLTIwIC0yNTZxLTEgLTEzIDggLTIyLjV0MjIgLTkuNWgtNzA0cS00NiAwIC00NiA3M3pNODA5IDU0MHEtMSAtMTIgOCAtMjB0MjEgLThoMjQ0cTEyIDAgMjEgOHQ4IDIwdjRsLTI0IDMyMHEtMSAxMyAtMTEgMjIuNXQtMjMgOS41aC0xODZxLTEzIDAgLTIzIC05LjV0LTExIC0yMi41bC0yNCAtMzIwdi00eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMTk7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgOTZ2MzIwcTAgNDAgMjggNjh0NjggMjhoNDY1bDEzNSAtMTM2cTU4IC01NiAxMzYgLTU2dDEzNiA1NmwxMzYgMTM2aDQ2NHE0MCAwIDY4IC0yOHQyOCAtNjh2LTMyMHEwIC00MCAtMjggLTY4dC02OCAtMjhoLTE0NzJxLTQwIDAgLTY4IDI4dC0yOCA2OHpNMzI1IDk4NXExNyAzOSA1OSAzOWgyNTZ2NDQ4cTAgMjYgMTkgNDV0NDUgMTloMjU2cTI2IDAgNDUgLTE5dDE5IC00NXYtNDQ4aDI1NnE0MiAwIDU5IC0zOXExNyAtNDEgLTE0IC03MCBsLTQ0OCAtNDQ4cS0xOCAtMTkgLTQ1IC0xOXQtNDUgMTlsLTQ0OCA0NDhxLTMxIDI5IC0xNCA3MHpNMTE1MiAxOTJxMCAtMjYgMTkgLTQ1dDQ1IC0xOXQ0NSAxOXQxOSA0NXQtMTkgNDV0LTQ1IDE5dC00NSAtMTl0LTE5IC00NXpNMTQwOCAxOTJxMCAtMjYgMTkgLTQ1dDQ1IC0xOXQ0NSAxOXQxOSA0NXQtMTkgNDV0LTQ1IDE5dC00NSAtMTl0LTE5IC00NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDFhOyIgZD0iTTAgNjQwcTAgMjA5IDEwMyAzODUuNXQyNzkuNSAyNzkuNXQzODUuNSAxMDN0Mzg1LjUgLTEwM3QyNzkuNSAtMjc5LjV0MTAzIC0zODUuNXQtMTAzIC0zODUuNXQtMjc5LjUgLTI3OS41dC0zODUuNSAtMTAzdC0zODUuNSAxMDN0LTI3OS41IDI3OS41dC0xMDMgMzg1LjV6TTIyNCA2NDBxMCAtMTQ4IDczIC0yNzN0MTk4IC0xOTh0MjczIC03M3QyNzMgNzN0MTk4IDE5OHQ3MyAyNzN0LTczIDI3M3QtMTk4IDE5OHQtMjczIDczdC0yNzMgLTczIHQtMTk4IC0xOTh0LTczIC0yNzN6TTQxOCA2MjBxOCAyMCAzMCAyMGgxOTJ2MzUycTAgMTQgOSAyM3QyMyA5aDE5MnExNCAwIDIzIC05dDkgLTIzdi0zNTJoMTkycTE0IDAgMjMgLTl0OSAtMjNxMCAtMTIgLTEwIC0yNGwtMzE5IC0zMTlxLTExIC05IC0yMyAtOXQtMjMgOWwtMzIwIDMyMHEtMTUgMTYgLTcgMzV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAxYjsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjV0LTEwMyAtMzg1LjV0LTI3OS41IC0yNzkuNXQtMzg1LjUgLTEwM3QtMzg1LjUgMTAzdC0yNzkuNSAyNzkuNXQtMTAzIDM4NS41ek0yMjQgNjQwcTAgLTE0OCA3MyAtMjczdDE5OCAtMTk4dDI3MyAtNzN0MjczIDczdDE5OCAxOTh0NzMgMjczdC03MyAyNzN0LTE5OCAxOTh0LTI3MyA3M3QtMjczIC03MyB0LTE5OCAtMTk4dC03MyAtMjczek00MTYgNjcycTAgMTIgMTAgMjRsMzE5IDMxOXExMSA5IDIzIDl0MjMgLTlsMzIwIC0zMjBxMTUgLTE2IDcgLTM1cS04IC0yMCAtMzAgLTIwaC0xOTJ2LTM1MnEwIC0xNCAtOSAtMjN0LTIzIC05aC0xOTJxLTE0IDAgLTIzIDl0LTkgMjN2MzUyaC0xOTJxLTE0IDAgLTIzIDl0LTkgMjN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAxYzsiIGQ9Ik0wIDY0djQ4MnEwIDYyIDI1IDEyM2wyMzggNTUycTEwIDI1IDM2LjUgNDJ0NTIuNSAxN2g4MzJxMjYgMCA1Mi41IC0xN3QzNi41IC00MmwyMzggLTU1MnEyNSAtNjEgMjUgLTEyM3YtNDgycTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTQwOHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0xOTcgNTc2aDMxNmw5NSAtMTkyaDMyMGw5NSAxOTJoMzE2cS0xIDMgLTIuNSA4dC0yLjUgOGwtMjEyIDQ5NmgtNzA4bC0yMTIgLTQ5NnEtMSAtMiAtMi41IC04IHQtMi41IC04eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMWQ7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNMjI0IDY0MHEwIC0xNDggNzMgLTI3M3QxOTggLTE5OHQyNzMgLTczdDI3MyA3M3QxOTggMTk4dDczIDI3M3QtNzMgMjczdC0xOTggMTk4dC0yNzMgNzN0LTI3MyAtNzMgdC0xOTggLTE5OHQtNzMgLTI3M3pNNTEyIDMyMHY2NDBxMCAzNyAzMiA1NnEzMyAxOCA2NCAtMWw1NDQgLTMyMHEzMiAtMTggMzIgLTU1dC0zMiAtNTVsLTU0NCAtMzIwcS0xNSAtOSAtMzIgLTlxLTE2IDAgLTMyIDhxLTMyIDE5IC0zMiA1NnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDFlOyIgZD0iTTAgNjQwcTAgMTU2IDYxIDI5OHQxNjQgMjQ1dDI0NSAxNjR0Mjk4IDYxcTE0NyAwIDI4NC41IC01NS41dDI0NC41IC0xNTYuNWwxMzAgMTI5cTI5IDMxIDcwIDE0cTM5IC0xNyAzOSAtNTl2LTQ0OHEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTQ0OHEtNDIgMCAtNTkgNDBxLTE3IDM5IDE0IDY5bDEzOCAxMzhxLTE0OCAxMzcgLTM0OSAxMzdxLTEwNCAwIC0xOTguNSAtNDAuNXQtMTYzLjUgLTEwOS41dC0xMDkuNSAtMTYzLjUgdC00MC41IC0xOTguNXQ0MC41IC0xOTguNXQxMDkuNSAtMTYzLjV0MTYzLjUgLTEwOS41dDE5OC41IC00MC41cTExOSAwIDIyNSA1MnQxNzkgMTQ3cTcgMTAgMjMgMTJxMTQgMCAyNSAtOWwxMzcgLTEzOHE5IC04IDkuNSAtMjAuNXQtNy41IC0yMi41cS0xMDkgLTEzMiAtMjY0IC0yMDQuNXQtMzI3IC03Mi41cS0xNTYgMCAtMjk4IDYxdC0yNDUgMTY0dC0xNjQgMjQ1dC02MSAyOTh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAyMTsiIGQ9Ik0wIDB2NDQ4cTAgMjYgMTkgNDV0NDUgMTloNDQ4cTI2IDAgNDUgLTE5dDE5IC00NXQtMTkgLTQ1bC0xMzcgLTEzN3E3MSAtNjYgMTYxIC0xMDJ0MTg3IC0zNnExMzQgMCAyNTAgNjV0MTg2IDE3OXExMSAxNyA1MyAxMTdxOCAyMyAzMCAyM2gxOTJxMTMgMCAyMi41IC05LjV0OS41IC0yMi41cTAgLTUgLTEgLTdxLTY0IC0yNjggLTI2OCAtNDM0LjV0LTQ3OCAtMTY2LjVxLTE0NiAwIC0yODIuNSA1NXQtMjQzLjUgMTU3bC0xMjkgLTEyOSBxLTE5IC0xOSAtNDUgLTE5dC00NSAxOXQtMTkgNDV6TTE4IDgwMHY3cTY1IDI2OCAyNzAgNDM0LjV0NDgwIDE2Ni41cTE0NiAwIDI4NCAtNTUuNXQyNDUgLTE1Ni41bDEzMCAxMjlxMTkgMTkgNDUgMTl0NDUgLTE5dDE5IC00NXYtNDQ4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtNDQ4cS0yNiAwIC00NSAxOXQtMTkgNDV0MTkgNDVsMTM4IDEzOHEtMTQ4IDEzNyAtMzQ5IDEzN3EtMTM0IDAgLTI1MCAtNjV0LTE4NiAtMTc5IHEtMTEgLTE3IC01MyAtMTE3cS04IC0yMyAtMzAgLTIzaC0xOTlxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDIyOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDE2MHYxMDg4cTAgNjYgNDcgMTEzdDExMyA0N2gxNDcycTY2IDAgMTEzIC00N3Q0NyAtMTEzdi0xMDg4cTAgLTY2IC00NyAtMTEzdC0xMTMgLTQ3aC0xNDcycS02NiAwIC0xMTMgNDd0LTQ3IDExM3pNMTI4IDE2MHEwIC0xMyA5LjUgLTIyLjV0MjIuNSAtOS41aDE0NzJxMTMgMCAyMi41IDkuNXQ5LjUgMjIuNXY4MzJxMCAxMyAtOS41IDIyLjV0LTIyLjUgOS41aC0xNDcycS0xMyAwIC0yMi41IC05LjV0LTkuNSAtMjIuNXYtODMyeiBNMjU2IDI4OHY2NHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDY0cTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtNjRxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC02NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41ek0yNTYgNTQ0djY0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoNjRxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTY0cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6IE0yNTYgODAwdjY0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoNjRxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTY0cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTUxMiAyODh2NjRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg5NjBxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTk2MHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41eiBNNTEyIDU0NHY2NHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDk2MHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTY0cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtOTYwcS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTUxMiA4MDB2NjRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg5NjBxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTk2MHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41eiAiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDIzOyIgaG9yaXotYWR2LXg9IjExNTIiIGQ9Ik0wIDk2djU3NnEwIDQwIDI4IDY4dDY4IDI4aDMydjE5MnEwIDE4NCAxMzIgMzE2dDMxNiAxMzJ0MzE2IC0xMzJ0MTMyIC0zMTZ2LTE5MmgzMnE0MCAwIDY4IC0yOHQyOCAtNjh2LTU3NnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTk2MHEtNDAgMCAtNjggMjh0LTI4IDY4ek0zMjAgNzY4aDUxMnYxOTJxMCAxMDYgLTc1IDE4MXQtMTgxIDc1dC0xODEgLTc1dC03NSAtMTgxdi0xOTJ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAyNDsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNNjQgMTI4MHEwIDUzIDM3LjUgOTAuNXQ5MC41IDM3LjV0OTAuNSAtMzcuNXQzNy41IC05MC41cTAgLTcyIC02NCAtMTEwdi0xMjY2cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtNjRxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXYxMjY2cS02NCAzOCAtNjQgMTEwek0zMjAgMzIwdjc0MnEwIDMyIDMxIDU1cTIxIDE0IDc5IDQzcTIzNiAxMjAgNDIxIDEyMHExMDcgMCAyMDAgLTI5dDIxOSAtODhxMzggLTE5IDg4IC0xOSBxNTQgMCAxMTcuNSAyMXQxMTAgNDd0ODggNDd0NTQuNSAyMXEyNiAwIDQ1IC0xOXQxOSAtNDV2LTc2M3EwIC0yNSAtMTIuNSAtMzguNXQtMzkuNSAtMjcuNXEtMjE1IC0xMTYgLTM2OSAtMTE2cS02MSAwIC0xMjMuNSAyMnQtMTA4LjUgNDh0LTExNS41IDQ4dC0xNDIuNSAyMnEtMTkyIDAgLTQ2NCAtMTQ2cS0xNyAtOSAtMzMgLTlxLTI2IDAgLTQ1IDE5dC0xOSA0NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDI1OyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0wIDY1MHEwIDE1MSA2NyAyOTF0MTc5IDI0Mi41dDI2NiAxNjMuNXQzMjAgNjF0MzIwIC02MXQyNjYgLTE2My41dDE3OSAtMjQyLjV0NjcgLTI5MXEwIC0xNjYgLTYwIC0zMTRsLTIwIC00OWwtMTg1IC0zM3EtMjIgLTgzIC05MC41IC0xMzYuNXQtMTU2LjUgLTUzLjV2LTMycTAgLTE0IC05IC0yM3QtMjMgLTloLTY0cS0xNCAwIC0yMyA5dC05IDIzdjU3NnEwIDE0IDkgMjN0MjMgOWg2NHExNCAwIDIzIC05dDkgLTIzdi0zMiBxNzEgMCAxMzAgLTM1LjV0OTMgLTk1LjVsNjggMTJxMjkgOTUgMjkgMTkzcTAgMTQ4IC04OCAyNzl0LTIzNi41IDIwOXQtMzE1LjUgNzh0LTMxNS41IC03OHQtMjM2LjUgLTIwOXQtODggLTI3OXEwIC05OCAyOSAtMTkzbDY4IC0xMnEzNCA2MCA5MyA5NS41dDEzMCAzNS41djMycTAgMTQgOSAyM3QyMyA5aDY0cTE0IDAgMjMgLTl0OSAtMjN2LTU3NnEwIC0xNCAtOSAtMjN0LTIzIC05aC02NHEtMTQgMCAtMjMgOXQtOSAyM3YzMiBxLTg4IDAgLTE1Ni41IDUzLjV0LTkwLjUgMTM2LjVsLTE4NSAzM2wtMjAgNDlxLTYwIDE0OCAtNjAgMzE0eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMjY7IiBob3Jpei1hZHYteD0iNzY4IiBkPSJNMCA0NDh2Mzg0cTAgMjYgMTkgNDV0NDUgMTloMjYybDMzMyAzMzNxMTkgMTkgNDUgMTl0NDUgLTE5dDE5IC00NXYtMTA4OHEwIC0yNiAtMTkgLTQ1dC00NSAtMTl0LTQ1IDE5bC0zMzMgMzMzaC0yNjJxLTI2IDAgLTQ1IDE5dC0xOSA0NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDI3OyIgaG9yaXotYWR2LXg9IjExNTIiIGQ9Ik0wIDQ0OHYzODRxMCAyNiAxOSA0NXQ0NSAxOWgyNjJsMzMzIDMzM3ExOSAxOSA0NSAxOXQ0NSAtMTl0MTkgLTQ1di0xMDg4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOXQtNDUgMTlsLTMzMyAzMzNoLTI2MnEtMjYgMCAtNDUgMTl0LTE5IDQ1ek05MDggNDY0cTAgMjEgMTIgMzUuNXQyOSAyNXQzNCAyM3QyOSAzNS41dDEyIDU3dC0xMiA1N3QtMjkgMzUuNXQtMzQgMjN0LTI5IDI1dC0xMiAzNS41cTAgMjcgMTkgNDUuNXQ0NSAxOC41IHExNSAwIDI1IC01cTcwIC0yNyAxMTIuNSAtOTN0NDIuNSAtMTQydC00Mi41IC0xNDEuNXQtMTEyLjUgLTkzLjVxLTEwIC01IC0yNSAtNXEtMjYgMCAtNDUgMTguNXQtMTkgNDUuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDI4OyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0wIDQ0OHYzODRxMCAyNiAxOSA0NXQ0NSAxOWgyNjJsMzMzIDMzM3ExOSAxOSA0NSAxOXQ0NSAtMTl0MTkgLTQ1di0xMDg4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOXQtNDUgMTlsLTMzMyAzMzNoLTI2MnEtMjYgMCAtNDUgMTl0LTE5IDQ1ek05MDggNDY0cTAgMjEgMTIgMzUuNXQyOSAyNXQzNCAyM3QyOSAzNS41dDEyIDU3dC0xMiA1N3QtMjkgMzUuNXQtMzQgMjN0LTI5IDI1dC0xMiAzNS41cTAgMjcgMTkgNDUuNXQ0NSAxOC41IHExNSAwIDI1IC01cTcwIC0yNyAxMTIuNSAtOTN0NDIuNSAtMTQydC00Mi41IC0xNDEuNXQtMTEyLjUgLTkzLjVxLTEwIC01IC0yNSAtNXEtMjYgMCAtNDUgMTguNXQtMTkgNDUuNXpNMTAwOCAyMjhxMCAzOSAzOSA1OXE1NiAyOSA3NiA0NHE3NCA1NCAxMTUuNSAxMzUuNXQ0MS41IDE3My41dC00MS41IDE3My41dC0xMTUuNSAxMzUuNXEtMjAgMTUgLTc2IDQ0cS0zOSAyMCAtMzkgNTlxMCAyNiAxOSA0NXQ0NSAxOXExMyAwIDI2IC01IHExNDAgLTU5IDIyNSAtMTg4LjV0ODUgLTI4Mi41dC04NSAtMjgyLjV0LTIyNSAtMTg4LjVxLTEzIC01IC0yNSAtNXEtMjcgMCAtNDYgMTl0LTE5IDQ1ek0xMTA5IC03cTAgMzYgMzkgNTlxNyA0IDIyLjUgMTAuNXQyMi41IDEwLjVxNDYgMjUgODIgNTFxMTIzIDkxIDE5MiAyMjd0NjkgMjg5dC02OSAyODl0LTE5MiAyMjdxLTM2IDI2IC04MiA1MXEtNyA0IC0yMi41IDEwLjV0LTIyLjUgMTAuNXEtMzkgMjMgLTM5IDU5cTAgMjYgMTkgNDV0NDUgMTkgcTEzIDAgMjYgLTVxMjExIC05MSAzMzggLTI4My41dDEyNyAtNDIyLjV0LTEyNyAtNDIyLjV0LTMzOCAtMjgzLjVxLTEzIC01IC0yNiAtNXEtMjYgMCAtNDUgMTl0LTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMjk7IiBob3Jpei1hZHYteD0iMTQwOCIgZD0iTTAgMHY2NDBoNjQwdi02NDBoLTY0MHpNMCA3Njh2NjQwaDY0MHYtNjQwaC02NDB6TTEyOCAxMjloMzg0djM4M2gtMzg0di0zODN6TTEyOCA4OTZoMzg0djM4NGgtMzg0di0zODR6TTI1NiAyNTZ2MTI4aDEyOHYtMTI4aC0xMjh6TTI1NiAxMDI0djEyOGgxMjh2LTEyOGgtMTI4ek03NjggMHY2NDBoMzg0di0xMjhoMTI4djEyOGgxMjh2LTM4NGgtMzg0djEyOGgtMTI4di0zODRoLTEyOHpNNzY4IDc2OHY2NDBoNjQwdi02NDBoLTY0MHogTTg5NiA4OTZoMzg0djM4NGgtMzg0di0zODR6TTEwMjQgMHYxMjhoMTI4di0xMjhoLTEyOHpNMTAyNCAxMDI0djEyOGgxMjh2LTEyOGgtMTI4ek0xMjgwIDB2MTI4aDEyOHYtMTI4aC0xMjh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAyYTsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCAwdjE0MDhoNjN2LTE0MDhoLTYzek05NCAxdjE0MDdoMzJ2LTE0MDdoLTMyek0xODkgMXYxNDA3aDMxdi0xNDA3aC0zMXpNMzQ2IDF2MTQwN2gzMXYtMTQwN2gtMzF6TTQ3MiAxdjE0MDdoNjJ2LTE0MDdoLTYyek02MjkgMXYxNDA3aDMxdi0xNDA3aC0zMXpNNjkyIDF2MTQwN2gzMXYtMTQwN2gtMzF6TTc1NSAxdjE0MDdoMzF2LTE0MDdoLTMxek04ODAgMXYxNDA3aDYzdi0xNDA3aC02M3pNMTAzNyAxdjE0MDdoNjN2LTE0MDdoLTYzeiBNMTE2MyAxdjE0MDdoNjN2LTE0MDdoLTYzek0xMjg5IDF2MTQwN2g2M3YtMTQwN2gtNjN6TTEzODMgMXYxNDA3aDYzdi0xNDA3aC02M3pNMTU0MSAxdjE0MDdoOTR2LTE0MDdoLTk0ek0xNjY2IDF2MTQwN2gzMnYtMTQwN2gtMzJ6TTE3MjkgMHYxNDA4aDYzdi0xNDA4aC02M3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDJiOyIgZD0iTTAgODY0djQxNnEwIDUyIDM4IDkwdDkwIDM4aDQxNnE1MyAwIDExNyAtMjYuNXQxMDIgLTY0LjVsNzE1IC03MTRxMzcgLTM5IDM3IC05MXEwIC01MyAtMzcgLTkwbC00OTEgLTQ5MnEtMzkgLTM3IC05MSAtMzdxLTUzIDAgLTkwIDM3bC03MTUgNzE2cS0zOCAzNyAtNjQuNSAxMDF0LTI2LjUgMTE3ek0xOTIgMTA4OHEwIC01MyAzNy41IC05MC41dDkwLjUgLTM3LjV0OTAuNSAzNy41dDM3LjUgOTAuNXQtMzcuNSA5MC41dC05MC41IDM3LjUgdC05MC41IC0zNy41dC0zNy41IC05MC41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMmM7IiBob3Jpei1hZHYteD0iMTkyMCIgZD0iTTAgODY0djQxNnEwIDUyIDM4IDkwdDkwIDM4aDQxNnE1MyAwIDExNyAtMjYuNXQxMDIgLTY0LjVsNzE1IC03MTRxMzcgLTM5IDM3IC05MXEwIC01MyAtMzcgLTkwbC00OTEgLTQ5MnEtMzkgLTM3IC05MSAtMzdxLTUzIDAgLTkwIDM3bC03MTUgNzE2cS0zOCAzNyAtNjQuNSAxMDF0LTI2LjUgMTE3ek0xOTIgMTA4OHEwIC01MyAzNy41IC05MC41dDkwLjUgLTM3LjV0OTAuNSAzNy41dDM3LjUgOTAuNXQtMzcuNSA5MC41dC05MC41IDM3LjUgdC05MC41IC0zNy41dC0zNy41IC05MC41ek03MDQgMTQwOGgyMjRxNTMgMCAxMTcgLTI2LjV0MTAyIC02NC41bDcxNSAtNzE0cTM3IC0zOSAzNyAtOTFxMCAtNTMgLTM3IC05MGwtNDkxIC00OTJxLTM5IC0zNyAtOTEgLTM3cS0zNiAwIC01OSAxNHQtNTMgNDVsNDcwIDQ3MHEzNyAzNyAzNyA5MHEwIDUyIC0zNyA5MWwtNzE1IDcxNHEtMzggMzggLTEwMiA2NC41dC0xMTcgMjYuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDJkOyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0xMCAxODRxMCA0IDMgMjd0NCAzN3ExIDggLTMgMjEuNXQtMyAxOS41cTIgMTEgOCAyMXQxNi41IDIzLjV0MTYuNSAyMy41cTIzIDM4IDQ1IDkxLjV0MzAgOTEuNXEzIDEwIDAuNSAzMHQtMC41IDI4cTMgMTEgMTcgMjh0MTcgMjNxMjEgMzYgNDIgOTJ0MjUgOTBxMSA5IC0yLjUgMzJ0MC41IDI4cTQgMTMgMjIgMzAuNXQyMiAyMi41cTE5IDI2IDQyLjUgODQuNXQyNy41IDk2LjVxMSA4IC0zIDI1LjV0LTIgMjYuNXEyIDggOSAxOHQxOCAyMyB0MTcgMjFxOCAxMiAxNi41IDMwLjV0MTUgMzV0MTYgMzZ0MTkuNSAzMnQyNi41IDIzLjV0MzYgMTEuNXQ0Ny41IC01LjVsLTEgLTNxMzggOSA1MSA5aDc2MXE3NCAwIDExNCAtNTZ0MTggLTEzMGwtMjc0IC05MDZxLTM2IC0xMTkgLTcxLjUgLTE1My41dC0xMjguNSAtMzQuNWgtODY5cS0yNyAwIC0zOCAtMTVxLTExIC0xNiAtMSAtNDNxMjQgLTcwIDE0NCAtNzBoOTIzcTI5IDAgNTYgMTUuNXQzNSA0MS41bDMwMCA5ODdxNyAyMiA1IDU3IHEzOCAtMTUgNTkgLTQzcTQwIC01NyAxOCAtMTI5bC0yNzUgLTkwNnEtMTkgLTY0IC03Ni41IC0xMDcuNXQtMTIyLjUgLTQzLjVoLTkyM3EtNzcgMCAtMTQ4LjUgNTMuNXQtOTkuNSAxMzEuNXEtMjQgNjcgLTIgMTI3ek00OTIgODAwcS00IC0xMyAyIC0yMi41dDIwIC05LjVoNjA4cTEzIDAgMjUuNSA5LjV0MTYuNSAyMi41bDIxIDY0cTQgMTMgLTIgMjIuNXQtMjAgOS41aC02MDhxLTEzIDAgLTI1LjUgLTkuNXQtMTYuNSAtMjIuNXpNNTc1IDEwNTYgcS00IC0xMyAyIC0yMi41dDIwIC05LjVoNjA4cTEzIDAgMjUuNSA5LjV0MTYuNSAyMi41bDIxIDY0cTQgMTMgLTIgMjIuNXQtMjAgOS41aC02MDhxLTEzIDAgLTI1LjUgLTkuNXQtMTYuNSAtMjIuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDJlOyIgaG9yaXotYWR2LXg9IjEyODAiIGQ9Ik0wIDd2MTI4OXEwIDM0IDE5LjUgNjJ0NTIuNSA0MXEyMSA5IDQ0IDloMTA0OHEyMyAwIDQ0IC05cTMzIC0xMyA1Mi41IC00MXQxOS41IC02MnYtMTI4OXEwIC0zNCAtMTkuNSAtNjJ0LTUyLjUgLTQxcS0xOSAtOCAtNDQgLThxLTQ4IDAgLTgzIDMybC00NDEgNDI0bC00NDEgLTQyNHEtMzYgLTMzIC04MyAtMzNxLTIzIDAgLTQ0IDlxLTMzIDEzIC01Mi41IDQxdC0xOS41IDYyeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMmY7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgMTYwdjQxNnEwIDc5IDU2LjUgMTM1LjV0MTM1LjUgNTYuNWg2NHY1NDRxMCA0MCAyOCA2OHQ2OCAyOGg2NzJxNDAgMCA4OCAtMjB0NzYgLTQ4bDE1MiAtMTUycTI4IC0yOCA0OCAtNzZ0MjAgLTg4di0yNTZoNjRxNzkgMCAxMzUuNSAtNTYuNXQ1Ni41IC0xMzUuNXYtNDE2cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtMjI0di0xNjBxMCAtNDAgLTI4IC02OHQtNjggLTI4aC05NjBxLTQwIDAgLTY4IDI4dC0yOCA2OHYxNjBoLTIyNCBxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXpNMzg0IDBoODk2djI1NmgtODk2di0yNTZ6TTM4NCA2NDBoODk2djM4NGgtMTYwcS00MCAwIC02OCAyOHQtMjggNjh2MTYwaC02NDB2LTY0MHpNMTQwOCA1NzZxMCAtMjYgMTkgLTQ1dDQ1IC0xOXQ0NSAxOXQxOSA0NXQtMTkgNDV0LTQ1IDE5dC00NSAtMTl0LTE5IC00NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDMwOyIgaG9yaXotYWR2LXg9IjE5MjAiIGQ9Ik0wIDEyOHY4OTZxMCAxMDYgNzUgMTgxdDE4MSA3NWgyMjRsNTEgMTM2cTE5IDQ5IDY5LjUgODQuNXQxMDMuNSAzNS41aDUxMnE1MyAwIDEwMy41IC0zNS41dDY5LjUgLTg0LjVsNTEgLTEzNmgyMjRxMTA2IDAgMTgxIC03NXQ3NSAtMTgxdi04OTZxMCAtMTA2IC03NSAtMTgxdC0xODEgLTc1aC0xNDA4cS0xMDYgMCAtMTgxIDc1dC03NSAxODF6TTUxMiA1NzZxMCAtMTg1IDEzMS41IC0zMTYuNXQzMTYuNSAtMTMxLjV0MzE2LjUgMTMxLjUgdDEzMS41IDMxNi41dC0xMzEuNSAzMTYuNXQtMzE2LjUgMTMxLjV0LTMxNi41IC0xMzEuNXQtMTMxLjUgLTMxNi41ek02NzIgNTc2cTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNXQyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXQtODQuNSAtMjAzLjV0LTIwMy41IC04NC41dC0yMDMuNSA4NC41dC04NC41IDIwMy41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMzE7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgLTEyOGwyIDc5cTIzIDcgNTYgMTIuNXQ1NyAxMC41dDQ5LjUgMTQuNXQ0NC41IDI5dDMxIDUwLjVsMjM3IDYxNmwyODAgNzI0aDc1aDUzcTggLTE0IDExIC0yMWwyMDUgLTQ4MHEzMyAtNzggMTA2IC0yNTcuNXQxMTQgLTI3NC41cTE1IC0zNCA1OCAtMTQ0LjV0NzIgLTE2OC41cTIwIC00NSAzNSAtNTdxMTkgLTE1IDg4IC0yOS41dDg0IC0yMC41cTYgLTM4IDYgLTU3cTAgLTQgLTAuNSAtMTN0LTAuNSAtMTNxLTYzIDAgLTE5MCA4IHQtMTkxIDhxLTc2IDAgLTIxNSAtN3QtMTc4IC04cTAgNDMgNCA3OGwxMzEgMjhxMSAwIDEyLjUgMi41dDE1LjUgMy41dDE0LjUgNC41dDE1IDYuNXQxMSA4dDkgMTF0Mi41IDE0cTAgMTYgLTMxIDk2LjV0LTcyIDE3Ny41dC00MiAxMDBsLTQ1MCAycS0yNiAtNTggLTc2LjUgLTE5NS41dC01MC41IC0xNjIuNXEwIC0yMiAxNCAtMzcuNXQ0My41IC0yNC41dDQ4LjUgLTEzLjV0NTcgLTguNXQ0MSAtNHExIC0xOSAxIC01OHEwIC05IC0yIC0yNyBxLTU4IDAgLTE3NC41IDEwdC0xNzQuNSAxMHEtOCAwIC0yNi41IC00dC0yMS41IC00cS04MCAtMTQgLTE4OCAtMTR6TTU1NSA1MjdxMzMgMCAxMzYuNSAtMnQxNjAuNSAtMnExOSAwIDU3IDJxLTg3IDI1MyAtMTg0IDQ1MnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDMyOyIgaG9yaXotYWR2LXg9IjE0MDgiIGQ9Ik0wIC0xMjhsMiA5NHExNSA0IDg1IDE2dDEwNiAyN3E3IDEyIDEyLjUgMjd0OC41IDMzLjV0NS41IDMyLjV0MyAzNy41dDAuNSAzNHYzNS41djMwcTAgOTgyIC0yMiAxMDI1cS00IDggLTIyIDE0LjV0LTQ0LjUgMTF0LTQ5LjUgN3QtNDguNSA0LjV0LTMwLjUgM2wtNCA4M3E5OCAyIDM0MCAxMS41dDM3MyA5LjVxMjMgMCA2OC41IC0wLjV0NjcuNSAtMC41cTcwIDAgMTM2LjUgLTEzdDEyOC41IC00MnQxMDggLTcxdDc0IC0xMDQuNSB0MjggLTEzNy41cTAgLTUyIC0xNi41IC05NS41dC0zOSAtNzJ0LTY0LjUgLTU3LjV0LTczIC00NXQtODQgLTQwcTE1NCAtMzUgMjU2LjUgLTEzNHQxMDIuNSAtMjQ4cTAgLTEwMCAtMzUgLTE3OS41dC05My41IC0xMzAuNXQtMTM4IC04NS41dC0xNjMuNSAtNDguNXQtMTc2IC0xNHEtNDQgMCAtMTMyIDN0LTEzMiAzcS0xMDYgMCAtMzA3IC0xMXQtMjMxIC0xMnpNNTMzIDEyOTJxMCAtNTAgNCAtMTUxdDQgLTE1MnEwIC0yNyAtMC41IC04MCB0LTAuNSAtNzlxMCAtNDYgMSAtNjlxNDIgLTcgMTA5IC03cTgyIDAgMTQzIDEzdDExMCA0NC41dDc0LjUgODkuNXQyNS41IDE0MnEwIDcwIC0yOSAxMjIuNXQtNzkgODJ0LTEwOCA0My41dC0xMjQgMTRxLTUwIDAgLTEzMCAtMTN6TTUzOC41IDE2NXEwLjUgLTM3IDQuNSAtODMuNXQxMiAtNjYuNXE3NCAtMzIgMTQwIC0zMnEzNzYgMCAzNzYgMzM1cTAgMTE0IC00MSAxODBxLTI3IDQ0IC02MS41IDc0dC02Ny41IDQ2LjV0LTgwLjUgMjUgdC04NCAxMC41dC05NC41IDJxLTczIDAgLTEwMSAtMTBxMCAtNTMgLTAuNSAtMTU5dC0wLjUgLTE1OHEwIC04IC0xIC02Ny41dC0wLjUgLTk2LjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAzMzsiIGhvcml6LWFkdi14PSIxMDI0IiBkPSJNMCAtMTI2bDE3IDg1cTYgMiA4MS41IDIxLjV0MTExLjUgMzcuNXEyOCAzNSA0MSAxMDFxMSA3IDYyIDI4OXQxMTQgNTQzLjV0NTIgMjk2LjV2MjVxLTI0IDEzIC01NC41IDE4LjV0LTY5LjUgOHQtNTggNS41bDE5IDEwM3EzMyAtMiAxMjAgLTYuNXQxNDkuNSAtN3QxMjAuNSAtMi41cTQ4IDAgOTguNSAyLjV0MTIxIDd0OTguNSA2LjVxLTUgLTM5IC0xOSAtODlxLTMwIC0xMCAtMTAxLjUgLTI4LjV0LTEwOC41IC0zMy41IHEtOCAtMTkgLTE0IC00Mi41dC05IC00MHQtNy41IC00NS41dC02LjUgLTQycS0yNyAtMTQ4IC04Ny41IC00MTkuNXQtNzcuNSAtMzU1LjVxLTIgLTkgLTEzIC01OHQtMjAgLTkwdC0xNiAtODMuNXQtNiAtNTcuNWwxIC0xOHExNyAtNCAxODUgLTMxcS0zIC00NCAtMTYgLTk5cS0xMSAwIC0zMi41IC0xLjV0LTMyLjUgLTEuNXEtMjkgMCAtODcgMTB0LTg2IDEwcS0xMzggMiAtMjA2IDJxLTUxIDAgLTE0MyAtOXQtMTIxIC0xMXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDM0OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDEwMjN2MzgzbDgxIDFsNTQgLTI3cTEyIC01IDIxMSAtNXE0NCAwIDEzMiAydDEzMiAycTM2IDAgMTA3LjUgLTAuNXQxMDcuNSAtMC41aDI5M3E2IDAgMjEgLTAuNXQyMC41IDB0MTYgM3QxNy41IDl0MTUgMTcuNWw0MiAxcTQgMCAxNCAtMC41dDE0IC0wLjVxMiAtMTEyIDIgLTMzNnEwIC04MCAtNSAtMTA5cS0zOSAtMTQgLTY4IC0xOHEtMjUgNDQgLTU0IDEyOHEtMyA5IC0xMSA0OHQtMTQuNSA3My41dC03LjUgMzUuNSBxLTYgOCAtMTIgMTIuNXQtMTUuNSA2dC0xMyAyLjV0LTE4IDAuNXQtMTYuNSAtMC41cS0xNyAwIC02Ni41IDAuNXQtNzQuNSAwLjV0LTY0IC0ydC03MSAtNnEtOSAtODEgLTggLTEzNnEwIC05NCAyIC0zODh0MiAtNDU1cTAgLTE2IC0yLjUgLTcxLjV0MCAtOTEuNXQxMi41IC02OXE0MCAtMjEgMTI0IC00Mi41dDEyMCAtMzcuNXE1IC00MCA1IC01MHEwIC0xNCAtMyAtMjlsLTM0IC0xcS03NiAtMiAtMjE4IDh0LTIwNyAxMHEtNTAgMCAtMTUxIC05IHQtMTUyIC05cS0zIDUxIC0zIDUydjlxMTcgMjcgNjEuNSA0M3Q5OC41IDI5dDc4IDI3cTE5IDQyIDE5IDM4M3EwIDEwMSAtMyAzMDN0LTMgMzAzdjExN3EwIDIgMC41IDE1LjV0MC41IDI1dC0xIDI1LjV0LTMgMjR0LTUgMTRxLTExIDEyIC0xNjIgMTJxLTMzIDAgLTkzIC0xMnQtODAgLTI2cS0xOSAtMTMgLTM0IC03Mi41dC0zMS41IC0xMTF0LTQyLjUgLTUzLjVxLTQyIDI2IC01NiA0NHpNMTQxNCAxMDkuNXE5IDE4LjUgNDIgMTguNWg4MHYxMDI0IGgtODBxLTMzIDAgLTQyIDE4LjV0MTEgNDQuNWwxMjYgMTYycTIwIDI2IDQ5IDI2dDQ5IC0yNmwxMjYgLTE2MnEyMCAtMjYgMTEgLTQ0LjV0LTQyIC0xOC41aC04MHYtMTAyNGg4MHEzMyAwIDQyIC0xOC41dC0xMSAtNDQuNWwtMTI2IC0xNjJxLTIwIC0yNiAtNDkgLTI2dC00OSAyNmwtMTI2IDE2MnEtMjAgMjYgLTExIDQ0LjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAzNTsiIGQ9Ik0wIDEwMjN2MzgzbDgxIDFsNTQgLTI3cTEyIC01IDIxMSAtNXE0NCAwIDEzMiAydDEzMiAycTcwIDAgMjQ2LjUgMXQzMDQuNSAwLjV0MjQ3IC00LjVxMzMgLTEgNTYgMzFsNDIgMXE0IDAgMTQgLTAuNXQxNCAtMC41cTIgLTExMiAyIC0zMzZxMCAtODAgLTUgLTEwOXEtMzkgLTE0IC02OCAtMThxLTI1IDQ0IC01NCAxMjhxLTMgOSAtMTEgNDcuNXQtMTUgNzMuNXQtNyAzNnEtMTAgMTMgLTI3IDE5cS01IDIgLTY2IDJxLTMwIDAgLTkzIDEgdC0xMDMgMXQtOTQgLTJ0LTk2IC03cS05IC04MSAtOCAtMTM2bDEgLTE1MnY1MnEwIC01NSAxIC0xNTR0MS41IC0xODB0MC41IC0xNTNxMCAtMTYgLTIuNSAtNzEuNXQwIC05MS41dDEyLjUgLTY5cTQwIC0yMSAxMjQgLTQyLjV0MTIwIC0zNy41cTUgLTQwIDUgLTUwcTAgLTE0IC0zIC0yOWwtMzQgLTFxLTc2IC0yIC0yMTggOHQtMjA3IDEwcS01MCAwIC0xNTEgLTl0LTE1MiAtOXEtMyA1MSAtMyA1MnY5cTE3IDI3IDYxLjUgNDN0OTguNSAyOSB0NzggMjdxNyAxNiAxMS41IDc0dDYgMTQ1LjV0MS41IDE1NXQtMC41IDE1My41dC0wLjUgODlxMCA3IC0yLjUgMjEuNXQtMi41IDIyLjVxMCA3IDAuNSA0NHQxIDczdDAgNzYuNXQtMyA2Ny41dC02LjUgMzJxLTExIDEyIC0xNjIgMTJxLTQxIDAgLTE2MyAtMTMuNXQtMTM4IC0yNC41cS0xOSAtMTIgLTM0IC03MS41dC0zMS41IC0xMTEuNXQtNDIuNSAtNTRxLTQyIDI2IC01NiA0NHpNNSAtNjRxMCAyOCAyNiA0OXE0IDMgMzYgMzB0NTkuNSA0OSB0NTcuNSA0MS41dDQyIDE5LjVxMTMgMCAyMC41IC0xMC41dDEwIC0yOC41dDIuNSAtMzMuNXQtMS41IC0zM3QtMS41IC0xOS41aDEwMjRxMCAyIC0xLjUgMTkuNXQtMS41IDMzdDIuNSAzMy41dDEwIDI4LjV0MjAuNSAxMC41cTEyIDAgNDIgLTE5LjV0NTcuNSAtNDEuNXQ1OS41IC00OXQzNiAtMzBxMjYgLTIxIDI2IC00OXQtMjYgLTQ5cS00IC0zIC0zNiAtMzB0LTU5LjUgLTQ5dC01Ny41IC00MS41dC00MiAtMTkuNXEtMTMgMCAtMjAuNSAxMC41IHQtMTAgMjguNXQtMi41IDMzLjV0MS41IDMzdDEuNSAxOS41aC0xMDI0cTAgLTIgMS41IC0xOS41dDEuNSAtMzN0LTIuNSAtMzMuNXQtMTAgLTI4LjV0LTIwLjUgLTEwLjVxLTEyIDAgLTQyIDE5LjV0LTU3LjUgNDEuNXQtNTkuNSA0OXQtMzYgMzBxLTI2IDIxIC0yNiA0OXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDM2OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDY0djEyOHEwIDI2IDE5IDQ1dDQ1IDE5aDE2NjRxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMjhxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC0xNjY0cS0yNiAwIC00NSAxOXQtMTkgNDV6TTAgNDQ4djEyOHEwIDI2IDE5IDQ1dDQ1IDE5aDEyODBxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMjhxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC0xMjgwcS0yNiAwIC00NSAxOXQtMTkgNDV6TTAgODMydjEyOHEwIDI2IDE5IDQ1dDQ1IDE5aDE1MzYgcTI2IDAgNDUgLTE5dDE5IC00NXYtMTI4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTUzNnEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0wIDEyMTZ2MTI4cTAgMjYgMTkgNDV0NDUgMTloMTE1MnEyNiAwIDQ1IC0xOXQxOSAtNDV2LTEyOHEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTExNTJxLTI2IDAgLTQ1IDE5dC0xOSA0NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDM3OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDY0djEyOHEwIDI2IDE5IDQ1dDQ1IDE5aDE2NjRxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMjhxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC0xNjY0cS0yNiAwIC00NSAxOXQtMTkgNDV6TTEyOCA4MzJ2MTI4cTAgMjYgMTkgNDV0NDUgMTloMTQwOHEyNiAwIDQ1IC0xOXQxOSAtNDV2LTEyOHEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTE0MDhxLTI2IDAgLTQ1IDE5dC0xOSA0NXpNMzg0IDQ0OHYxMjhxMCAyNiAxOSA0NXQ0NSAxOWg4OTYgcTI2IDAgNDUgLTE5dDE5IC00NXYtMTI4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtODk2cS0yNiAwIC00NSAxOXQtMTkgNDV6TTUxMiAxMjE2djEyOHEwIDI2IDE5IDQ1dDQ1IDE5aDY0MHEyNiAwIDQ1IC0xOXQxOSAtNDV2LTEyOHEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTY0MHEtMjYgMCAtNDUgMTl0LTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMzg7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgNjR2MTI4cTAgMjYgMTkgNDV0NDUgMTloMTY2NHEyNiAwIDQ1IC0xOXQxOSAtNDV2LTEyOHEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTE2NjRxLTI2IDAgLTQ1IDE5dC0xOSA0NXpNMTI4IDgzMnYxMjhxMCAyNiAxOSA0NXQ0NSAxOWgxNTM2cTI2IDAgNDUgLTE5dDE5IC00NXYtMTI4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTUzNnEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0zODQgNDQ4djEyOHEwIDI2IDE5IDQ1dDQ1IDE5aDEyODAgcTI2IDAgNDUgLTE5dDE5IC00NXYtMTI4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTI4MHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek01MTIgMTIxNnYxMjhxMCAyNiAxOSA0NXQ0NSAxOWgxMTUycTI2IDAgNDUgLTE5dDE5IC00NXYtMTI4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTE1MnEtMjYgMCAtNDUgMTl0LTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwMzk7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgNjR2MTI4cTAgMjYgMTkgNDV0NDUgMTloMTY2NHEyNiAwIDQ1IC0xOXQxOSAtNDV2LTEyOHEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTE2NjRxLTI2IDAgLTQ1IDE5dC0xOSA0NXpNMCA0NDh2MTI4cTAgMjYgMTkgNDV0NDUgMTloMTY2NHEyNiAwIDQ1IC0xOXQxOSAtNDV2LTEyOHEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTE2NjRxLTI2IDAgLTQ1IDE5dC0xOSA0NXpNMCA4MzJ2MTI4cTAgMjYgMTkgNDV0NDUgMTloMTY2NCBxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMjhxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC0xNjY0cS0yNiAwIC00NSAxOXQtMTkgNDV6TTAgMTIxNnYxMjhxMCAyNiAxOSA0NXQ0NSAxOWgxNjY0cTI2IDAgNDUgLTE5dDE5IC00NXYtMTI4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTY2NHEtMjYgMCAtNDUgMTl0LTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwM2E7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgMzJ2MTkycTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoMTkycTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtMTkycTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtMTkycS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTAgNDE2djE5MnEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDE5MnExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTE5MnEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTE5MnEtMTMgMCAtMjIuNSA5LjUgdC05LjUgMjIuNXpNMCA4MDB2MTkycTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoMTkycTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtMTkycTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtMTkycS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTAgMTE4NHYxOTJxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWgxOTJxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di0xOTJxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC0xOTIgcS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTM4NCAzMnYxOTJxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWgxMzQ0cTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtMTkycTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtMTM0NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41ek0zODQgNDE2djE5MnEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDEzNDRxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di0xOTJxMCAtMTMgLTkuNSAtMjIuNSB0LTIyLjUgLTkuNWgtMTM0NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41ek0zODQgODAwdjE5MnEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDEzNDRxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di0xOTJxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC0xMzQ0cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTM4NCAxMTg0djE5MnEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDEzNDRxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di0xOTIgcTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtMTM0NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwM2I7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgMzJ2MTkycTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoMTcyOHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTE5MnEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTE3MjhxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXpNMCAxMTg0djE5MnEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDE3MjhxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di0xOTJxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC0xNzI4cS0xMyAwIC0yMi41IDkuNSB0LTkuNSAyMi41ek0zMiA3MDRxMCAxNCA5IDIzbDI4OCAyODhxOSA5IDIzIDlxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di01NzZxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41cS0xNCAwIC0yMyA5bC0yODggMjg4cS05IDkgLTkgMjN6TTY0MCA0MTZ2MTkycTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoMTA4OHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTE5MnEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTEwODggcS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTY0MCA4MDB2MTkycTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoMTA4OHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTE5MnEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTEwODhxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDNjOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDMydjE5MnEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDE3MjhxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di0xOTJxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC0xNzI4cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTAgNDE2djU3NnEwIDEzIDkuNSAyMi41dDIyLjUgOS41cTE0IDAgMjMgLTlsMjg4IC0yODhxOSAtOSA5IC0yM3QtOSAtMjNsLTI4OCAtMjg4cS05IC05IC0yMyAtOXEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41eiBNMCAxMTg0djE5MnEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDE3MjhxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di0xOTJxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC0xNzI4cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTY0MCA0MTZ2MTkycTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoMTA4OHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTE5MnEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTEwODhxLTEzIDAgLTIyLjUgOS41IHQtOS41IDIyLjV6TTY0MCA4MDB2MTkycTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoMTA4OHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTE5MnEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTEwODhxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDNkOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDI4OHY3MDRxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDcwNHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtMTY1bDQwMyA0MDJxMTggMTkgNDUgMTlxMTIgMCAyNSAtNXEzOSAtMTcgMzkgLTU5di0xMDg4cTAgLTQyIC0zOSAtNTlxLTEzIC01IC0yNSAtNXEtMjcgMCAtNDUgMTlsLTQwMyA0MDN2LTE2NnEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtNzA0cS0xMTkgMCAtMjAzLjUgODQuNSB0LTg0LjUgMjAzLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjAzZTsiIGhvcml6LWFkdi14PSIxOTIwIiBkPSJNMCAzMnYxMjE2cTAgNjYgNDcgMTEzdDExMyA0N2gxNjAwcTY2IDAgMTEzIC00N3Q0NyAtMTEzdi0xMjE2cTAgLTY2IC00NyAtMTEzdC0xMTMgLTQ3aC0xNjAwcS02NiAwIC0xMTMgNDd0LTQ3IDExM3pNMTI4IDMycTAgLTEzIDkuNSAtMjIuNXQyMi41IC05LjVoMTYwMHExMyAwIDIyLjUgOS41dDkuNSAyMi41djEyMTZxMCAxMyAtOS41IDIyLjV0LTIyLjUgOS41aC0xNjAwcS0xMyAwIC0yMi41IC05LjV0LTkuNSAtMjIuNXYtMTIxNnogTTI1NiAxMjh2MTkybDMyMCAzMjBsMTYwIC0xNjBsNTEyIDUxMmw0MTYgLTQxNnYtNDQ4aC0xNDA4ek0yNTYgOTYwcTAgODAgNTYgMTM2dDEzNiA1NnQxMzYgLTU2dDU2IC0xMzZ0LTU2IC0xMzZ0LTEzNiAtNTZ0LTEzNiA1NnQtNTYgMTM2eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNDA7IiBkPSJNMCAtMTI4djQxNmw4MzIgODMybDQxNiAtNDE2bC04MzIgLTgzMmgtNDE2ek0xMjggMTI4aDEyOHYtMTI4aDEwN2w5MSA5MWwtMjM1IDIzNWwtOTEgLTkxdi0xMDd6TTI5OCAzODRxMCAtMjIgMjIgLTIycTEwIDAgMTcgN2w1NDIgNTQycTcgNyA3IDE3cTAgMjIgLTIyIDIycS0xMCAwIC0xNyAtN2wtNTQyIC01NDJxLTcgLTcgLTcgLTE3ek04OTYgMTE4NGwxNjYgMTY1cTM2IDM4IDkwIDM4cTUzIDAgOTEgLTM4bDIzNSAtMjM0IHEzNyAtMzkgMzcgLTkxcTAgLTUzIC0zNyAtOTBsLTE2NiAtMTY2eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNDE7IiBob3Jpei1hZHYteD0iMTAyNCIgZD0iTTAgODk2cTAgMjEyIDE1MCAzNjJ0MzYyIDE1MHQzNjIgLTE1MHQxNTAgLTM2MnEwIC0xMDkgLTMzIC0xNzlsLTM2NCAtNzc0cS0xNiAtMzMgLTQ3LjUgLTUydC02Ny41IC0xOXQtNjcuNSAxOXQtNDYuNSA1MmwtMzY1IDc3NHEtMzMgNzAgLTMzIDE3OXpNMjU2IDg5NnEwIC0xMDYgNzUgLTE4MXQxODEgLTc1dDE4MSA3NXQ3NSAxODF0LTc1IDE4MXQtMTgxIDc1dC0xODEgLTc1dC03NSAtMTgxeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNDI7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNMjI0IDY0MHEwIC0xNDggNzMgLTI3M3QxOTggLTE5OHQyNzMgLTczdjEwODhxLTE0OCAwIC0yNzMgLTczdC0xOTggLTE5OHQtNzMgLTI3M3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDQzOyIgaG9yaXotYWR2LXg9IjEwMjQiIGQ9Ik0wIDUxMnEwIDE0NSA4MSAyNzVxNiA5IDYyLjUgOTAuNXQxMDEgMTUxdDk5LjUgMTc4dDgzIDIwMS41cTkgMzAgMzQgNDd0NTEgMTd0NTEuNSAtMTd0MzMuNSAtNDdxMjggLTkzIDgzIC0yMDEuNXQ5OS41IC0xNzh0MTAxIC0xNTF0NjIuNSAtOTAuNXE4MSAtMTI3IDgxIC0yNzVxMCAtMjEyIC0xNTAgLTM2MnQtMzYyIC0xNTB0LTM2MiAxNTB0LTE1MCAzNjJ6TTI1NiAzODRxMCAtNTMgMzcuNSAtOTAuNXQ5MC41IC0zNy41dDkwLjUgMzcuNSB0MzcuNSA5MC41cTAgMzYgLTIwIDY5cS0xIDEgLTE1LjUgMjIuNXQtMjUuNSAzOHQtMjUgNDR0LTIxIDUwLjVxLTQgMTYgLTIxIDE2dC0yMSAtMTZxLTcgLTIzIC0yMSAtNTAuNXQtMjUgLTQ0dC0yNS41IC0zOHQtMTUuNSAtMjIuNXEtMjAgLTMzIC0yMCAtNjl6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA0NDsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCAyODh2ODMycTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNWg4MzJxNjMgMCAxMTcgLTI1cTE1IC03IDE4IC0yM3EzIC0xNyAtOSAtMjlsLTQ5IC00OXEtMTQgLTE0IC0zMiAtOHEtMjMgNiAtNDUgNmgtODMycS02NiAwIC0xMTMgLTQ3dC00NyAtMTEzdi04MzJxMCAtNjYgNDcgLTExM3QxMTMgLTQ3aDgzMnE2NiAwIDExMyA0N3Q0NyAxMTN2MTI2cTAgMTMgOSAyMmw2NCA2NHExNSAxNSAzNSA3dDIwIC0yOXYtMTkwIHEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtODMycS0xMTkgMCAtMjAzLjUgODQuNXQtODQuNSAyMDMuNXpNNjQwIDI1NnYyODhsNjcyIDY3MmwyODggLTI4OGwtNjcyIC02NzJoLTI4OHpNNzM2IDQ0OGg5NnYtOTZoNTZsMTE2IDExNmwtMTUyIDE1MmwtMTE2IC0xMTZ2LTU2ek05NDQgNjg4cTE2IC0xNiAzMyAxbDM1MCAzNTBxMTcgMTcgMSAzM3QtMzMgLTFsLTM1MCAtMzUwcS0xNyAtMTcgLTEgLTMzek0xMzc2IDEyODBsOTIgOTIgcTI4IDI4IDY4IDI4dDY4IC0yOGwxNTIgLTE1MnEyOCAtMjggMjggLTY4dC0yOCAtNjhsLTkyIC05MnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDQ1OyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0wIDI4OHY4MzJxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDI1NXExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjVxMCAtMjcgLTI2IC0zMnEtNzcgLTI2IC0xMzMgLTYwcS0xMCAtNCAtMTYgLTRoLTExMnEtNjYgMCAtMTEzIC00N3QtNDcgLTExM3YtODMycTAgLTY2IDQ3IC0xMTN0MTEzIC00N2g4MzJxNjYgMCAxMTMgNDd0NDcgMTEzdjIxNHEwIDE5IDE4IDI5cTI4IDEzIDU0IDM3cTE2IDE2IDM1IDhxMjEgLTkgMjEgLTI5di0yNTkgcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC04MzJxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0yNTYgNzA0cTAgNDkgMy41IDkxdDE0IDkwdDI4IDg4dDQ3IDgxLjV0NjguNSA3NHQ5NC41IDYxLjV0MTI0LjUgNDguNXQxNTkuNSAzMC41dDE5Ni41IDExaDE2MHYxOTJxMCA0MiAzOSA1OXExMyA1IDI1IDVxMjYgMCA0NSAtMTlsMzg0IC0zODRxMTkgLTE5IDE5IC00NXQtMTkgLTQ1bC0zODQgLTM4NCBxLTE4IC0xOSAtNDUgLTE5cS0xMiAwIC0yNSA1cS0zOSAxNyAtMzkgNTl2MTkyaC0xNjBxLTMyMyAwIC00MzggLTEzMXEtMTE5IC0xMzcgLTc0IC00NzNxMyAtMjMgLTIwIC0zNHEtOCAtMiAtMTIgLTJxLTE2IDAgLTI2IDEzcS0xMCAxNCAtMjEgMzF0LTM5LjUgNjguNXQtNDkuNSA5OS41dC0zOC41IDExNHQtMTcuNSAxMjJ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA0NjsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCAyODh2ODMycTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNWg4MzJxNjMgMCAxMTcgLTI1cTE1IC03IDE4IC0yM3EzIC0xNyAtOSAtMjlsLTQ5IC00OXEtMTAgLTEwIC0yMyAtMTBxLTMgMCAtOSAycS0yMyA2IC00NSA2aC04MzJxLTY2IDAgLTExMyAtNDd0LTQ3IC0xMTN2LTgzMnEwIC02NiA0NyAtMTEzdDExMyAtNDdoODMycTY2IDAgMTEzIDQ3dDQ3IDExM3YyNTRxMCAxMyA5IDIybDY0IDY0cTEwIDEwIDIzIDEwcTYgMCAxMiAtMyBxMjAgLTggMjAgLTI5di0zMThxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTgzMnEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTI1NyA3NjhxMCAzMyAyNCA1N2wxMTAgMTEwcTI0IDI0IDU3IDI0dDU3IC0yNGwyNjMgLTI2M2w2NDcgNjQ3cTI0IDI0IDU3IDI0dDU3IC0yNGwxMTAgLTExMHEyNCAtMjQgMjQgLTU3dC0yNCAtNTdsLTgxNCAtODE0cS0yNCAtMjQgLTU3IC0yNHQtNTcgMjRsLTQzMCA0MzAgcS0yNCAyNCAtMjQgNTd6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA0NzsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCA2NDBxMCAyNiAxOSA0NWwyNTYgMjU2cTE5IDE5IDQ1IDE5dDQ1IC0xOXQxOSAtNDV2LTEyOGgzODR2Mzg0aC0xMjhxLTI2IDAgLTQ1IDE5dC0xOSA0NXQxOSA0NWwyNTYgMjU2cTE5IDE5IDQ1IDE5dDQ1IC0xOWwyNTYgLTI1NnExOSAtMTkgMTkgLTQ1dC0xOSAtNDV0LTQ1IC0xOWgtMTI4di0zODRoMzg0djEyOHEwIDI2IDE5IDQ1dDQ1IDE5dDQ1IC0xOWwyNTYgLTI1NnExOSAtMTkgMTkgLTQ1dC0xOSAtNDVsLTI1NiAtMjU2IHEtMTkgLTE5IC00NSAtMTl0LTQ1IDE5dC0xOSA0NXYxMjhoLTM4NHYtMzg0aDEyOHEyNiAwIDQ1IC0xOXQxOSAtNDV0LTE5IC00NWwtMjU2IC0yNTZxLTE5IC0xOSAtNDUgLTE5dC00NSAxOWwtMjU2IDI1NnEtMTkgMTkgLTE5IDQ1dDE5IDQ1dDQ1IDE5aDEyOHYzODRoLTM4NHYtMTI4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOXQtNDUgMTlsLTI1NiAyNTZxLTE5IDE5IC0xOSA0NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDQ4OyIgaG9yaXotYWR2LXg9IjEwMjQiIGQ9Ik0wIC02NHYxNDA4cTAgMjYgMTkgNDV0NDUgMTloMTI4cTI2IDAgNDUgLTE5dDE5IC00NXYtNjc4cTQgMTEgMTMgMTlsNzEwIDcxMHExOSAxOSAzMiAxM3QxMyAtMzJ2LTE0NzJxMCAtMjYgLTEzIC0zMnQtMzIgMTNsLTcxMCA3MTBxLTkgOSAtMTMgMTl2LTY3OHEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTEyOHEtMjYgMCAtNDUgMTl0LTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNDk7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgLTY0djE0MDhxMCAyNiAxOSA0NXQ0NSAxOWgxMjhxMjYgMCA0NSAtMTl0MTkgLTQ1di02NzhxNCAxMSAxMyAxOWw3MTAgNzEwcTE5IDE5IDMyIDEzdDEzIC0zMnYtNzEwcTQgMTEgMTMgMTlsNzEwIDcxMHExOSAxOSAzMiAxM3QxMyAtMzJ2LTE0NzJxMCAtMjYgLTEzIC0zMnQtMzIgMTNsLTcxMCA3MTBxLTkgOSAtMTMgMTl2LTcxMHEwIC0yNiAtMTMgLTMydC0zMiAxM2wtNzEwIDcxMHEtOSA5IC0xMyAxOXYtNjc4cTAgLTI2IC0xOSAtNDUgdC00NSAtMTloLTEyOHEtMjYgMCAtNDUgMTl0LTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNGE7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTEyMiA2NDBxMCAyNiAxOSA0NWw3MTAgNzEwcTE5IDE5IDMyIDEzdDEzIC0zMnYtNzEwcTUgMTEgMTMgMTlsNzEwIDcxMHExOSAxOSAzMiAxM3QxMyAtMzJ2LTE0NzJxMCAtMjYgLTEzIC0zMnQtMzIgMTNsLTcxMCA3MTBxLTggOSAtMTMgMTl2LTcxMHEwIC0yNiAtMTMgLTMydC0zMiAxM2wtNzEwIDcxMHEtMTkgMTkgLTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNGI7IiBob3Jpei1hZHYteD0iMTQwOCIgZD0iTTAgLTk2djE0NzJxMCAyNiAxNi41IDM2dDM5LjUgLTNsMTMyOCAtNzM4cTIzIC0xMyAyMyAtMzF0LTIzIC0zMWwtMTMyOCAtNzM4cS0yMyAtMTMgLTM5LjUgLTN0LTE2LjUgMzZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA0YzsiIGQ9Ik0wIC02NHYxNDA4cTAgMjYgMTkgNDV0NDUgMTloNTEycTI2IDAgNDUgLTE5dDE5IC00NXYtMTQwOHEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTUxMnEtMjYgMCAtNDUgMTl0LTE5IDQ1ek04OTYgLTY0djE0MDhxMCAyNiAxOSA0NXQ0NSAxOWg1MTJxMjYgMCA0NSAtMTl0MTkgLTQ1di0xNDA4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtNTEycS0yNiAwIC00NSAxOXQtMTkgNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA0ZDsiIGQ9Ik0wIC02NHYxNDA4cTAgMjYgMTkgNDV0NDUgMTloMTQwOHEyNiAwIDQ1IC0xOXQxOSAtNDV2LTE0MDhxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC0xNDA4cS0yNiAwIC00NSAxOXQtMTkgNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA0ZTsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCAtOTZ2MTQ3MnEwIDI2IDEzIDMydDMyIC0xM2w3MTAgLTcxMHE4IC04IDEzIC0xOXY3MTBxMCAyNiAxMyAzMnQzMiAtMTNsNzEwIC03MTBxMTkgLTE5IDE5IC00NXQtMTkgLTQ1bC03MTAgLTcxMHEtMTkgLTE5IC0zMiAtMTN0LTEzIDMydjcxMHEtNSAtMTAgLTEzIC0xOWwtNzEwIC03MTBxLTE5IC0xOSAtMzIgLTEzdC0xMyAzMnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDUwOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIC05NnYxNDcycTAgMjYgMTMgMzJ0MzIgLTEzbDcxMCAtNzEwcTggLTggMTMgLTE5djcxMHEwIDI2IDEzIDMydDMyIC0xM2w3MTAgLTcxMHE4IC04IDEzIC0xOXY2NzhxMCAyNiAxOSA0NXQ0NSAxOWgxMjhxMjYgMCA0NSAtMTl0MTkgLTQ1di0xNDA4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTI4cS0yNiAwIC00NSAxOXQtMTkgNDV2Njc4cS01IC0xMCAtMTMgLTE5bC03MTAgLTcxMHEtMTkgLTE5IC0zMiAtMTN0LTEzIDMydjcxMCBxLTUgLTEwIC0xMyAtMTlsLTcxMCAtNzEwcS0xOSAtMTkgLTMyIC0xM3QtMTMgMzJ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA1MTsiIGhvcml6LWFkdi14PSIxMDI0IiBkPSJNMCAtOTZ2MTQ3MnEwIDI2IDEzIDMydDMyIC0xM2w3MTAgLTcxMHE4IC04IDEzIC0xOXY2NzhxMCAyNiAxOSA0NXQ0NSAxOWgxMjhxMjYgMCA0NSAtMTl0MTkgLTQ1di0xNDA4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTI4cS0yNiAwIC00NSAxOXQtMTkgNDV2Njc4cS01IC0xMCAtMTMgLTE5bC03MTAgLTcxMHEtMTkgLTE5IC0zMiAtMTN0LTEzIDMyeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNTI7IiBob3Jpei1hZHYteD0iMTUzOCIgZD0iTTEgNjR2MjU2cTAgMjYgMTkgNDV0NDUgMTloMTQwOHEyNiAwIDQ1IC0xOXQxOSAtNDV2LTI1NnEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTE0MDhxLTI2IDAgLTQ1IDE5dC0xOSA0NXpNMSA1MjVxLTYgMTMgMTMgMzJsNzEwIDcxMHExOSAxOSA0NSAxOXQ0NSAtMTlsNzEwIC03MTBxMTkgLTE5IDEzIC0zMnQtMzIgLTEzaC0xNDcycS0yNiAwIC0zMiAxM3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDUzOyIgaG9yaXotYWR2LXg9IjEyODAiIGQ9Ik0xNTQgNzA0cTAgMjYgMTkgNDVsNzQyIDc0MnExOSAxOSA0NSAxOXQ0NSAtMTlsMTY2IC0xNjZxMTkgLTE5IDE5IC00NXQtMTkgLTQ1bC01MzEgLTUzMWw1MzEgLTUzMXExOSAtMTkgMTkgLTQ1dC0xOSAtNDVsLTE2NiAtMTY2cS0xOSAtMTkgLTQ1IC0xOXQtNDUgMTlsLTc0MiA3NDJxLTE5IDE5IC0xOSA0NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDU0OyIgaG9yaXotYWR2LXg9IjEyODAiIGQ9Ik05MCAxMjhxMCAyNiAxOSA0NWw1MzEgNTMxbC01MzEgNTMxcS0xOSAxOSAtMTkgNDV0MTkgNDVsMTY2IDE2NnExOSAxOSA0NSAxOXQ0NSAtMTlsNzQyIC03NDJxMTkgLTE5IDE5IC00NXQtMTkgLTQ1bC03NDIgLTc0MnEtMTkgLTE5IC00NSAtMTl0LTQ1IDE5bC0xNjYgMTY2cS0xOSAxOSAtMTkgNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA1NTsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjV0LTEwMyAtMzg1LjV0LTI3OS41IC0yNzkuNXQtMzg1LjUgLTEwM3QtMzg1LjUgMTAzdC0yNzkuNSAyNzkuNXQtMTAzIDM4NS41ek0zMjAgNTc2cTAgLTI2IDE5IC00NXQ0NSAtMTloMjU2di0yNTZxMCAtMjYgMTkgLTQ1dDQ1IC0xOWgxMjhxMjYgMCA0NSAxOXQxOSA0NXYyNTZoMjU2cTI2IDAgNDUgMTkgdDE5IDQ1djEyOHEwIDI2IC0xOSA0NXQtNDUgMTloLTI1NnYyNTZxMCAyNiAtMTkgNDV0LTQ1IDE5aC0xMjhxLTI2IDAgLTQ1IC0xOXQtMTkgLTQ1di0yNTZoLTI1NnEtMjYgMCAtNDUgLTE5dC0xOSAtNDV2LTEyOHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDU2OyIgZD0iTTAgNjQwcTAgMjA5IDEwMyAzODUuNXQyNzkuNSAyNzkuNXQzODUuNSAxMDN0Mzg1LjUgLTEwM3QyNzkuNSAtMjc5LjV0MTAzIC0zODUuNXQtMTAzIC0zODUuNXQtMjc5LjUgLTI3OS41dC0zODUuNSAtMTAzdC0zODUuNSAxMDN0LTI3OS41IDI3OS41dC0xMDMgMzg1LjV6TTMyMCA1NzZxMCAtMjYgMTkgLTQ1dDQ1IC0xOWg3NjhxMjYgMCA0NSAxOXQxOSA0NXYxMjhxMCAyNiAtMTkgNDV0LTQ1IDE5aC03NjhxLTI2IDAgLTQ1IC0xOSB0LTE5IC00NXYtMTI4eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNTc7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNMzg3IDQxNHEwIC0yNyAxOSAtNDZsOTAgLTkwcTE5IC0xOSA0NiAtMTlxMjYgMCA0NSAxOWwxODEgMTgxbDE4MSAtMTgxcTE5IC0xOSA0NSAtMTlxMjcgMCA0NiAxOSBsOTAgOTBxMTkgMTkgMTkgNDZxMCAyNiAtMTkgNDVsLTE4MSAxODFsMTgxIDE4MXExOSAxOSAxOSA0NXEwIDI3IC0xOSA0NmwtOTAgOTBxLTE5IDE5IC00NiAxOXEtMjYgMCAtNDUgLTE5bC0xODEgLTE4MWwtMTgxIDE4MXEtMTkgMTkgLTQ1IDE5cS0yNyAwIC00NiAtMTlsLTkwIC05MHEtMTkgLTE5IC0xOSAtNDZxMCAtMjYgMTkgLTQ1bDE4MSAtMTgxbC0xODEgLTE4MXEtMTkgLTE5IC0xOSAtNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA1ODsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjV0LTEwMyAtMzg1LjV0LTI3OS41IC0yNzkuNXQtMzg1LjUgLTEwM3QtMzg1LjUgMTAzdC0yNzkuNSAyNzkuNXQtMTAzIDM4NS41ek0yNTIgNjIxcTAgLTI3IDE4IC00NWwzNjIgLTM2MnExOSAtMTkgNDUgLTE5cTI3IDAgNDYgMTlsNTQzIDU0M3ExOCAxOCAxOCA0NXEwIDI4IC0xOCA0NmwtOTEgOTAgcS0xOSAxOSAtNDUgMTl0LTQ1IC0xOWwtNDA4IC00MDdsLTIyNiAyMjZxLTE5IDE5IC00NSAxOXQtNDUgLTE5bC05MSAtOTBxLTE4IC0xOCAtMTggLTQ2eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNTk7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNNDE3IDkzOXEtMTUgLTI0IDggLTQybDEzMiAtMTAwcTcgLTYgMTkgLTZxMTYgMCAyNSAxMnE1MyA2OCA4NiA5MnEzNCAyNCA4NiAyNHE0OCAwIDg1LjUgLTI2IHQzNy41IC01OXEwIC0zOCAtMjAgLTYxdC02OCAtNDVxLTYzIC0yOCAtMTE1LjUgLTg2LjV0LTUyLjUgLTEyNS41di0zNnEwIC0xNCA5IC0yM3QyMyAtOWgxOTJxMTQgMCAyMyA5dDkgMjNxMCAxOSAyMS41IDQ5LjV0NTQuNSA0OS41cTMyIDE4IDQ5IDI4LjV0NDYgMzV0NDQuNSA0OHQyOCA2MC41dDEyLjUgODFxMCA4OCAtNTUuNSAxNjN0LTEzOC41IDExNnQtMTcwIDQxcS0yNDMgMCAtMzcxIC0yMTN6TTY0MCAxNjBxMCAtMTQgOSAtMjN0MjMgLTkgaDE5MnExNCAwIDIzIDl0OSAyM3YxOTJxMCAxNCAtOSAyM3QtMjMgOWgtMTkycS0xNCAwIC0yMyAtOXQtOSAtMjN2LTE5MnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDVhOyIgZD0iTTAgNjQwcTAgMjA5IDEwMyAzODUuNXQyNzkuNSAyNzkuNXQzODUuNSAxMDN0Mzg1LjUgLTEwM3QyNzkuNSAtMjc5LjV0MTAzIC0zODUuNXQtMTAzIC0zODUuNXQtMjc5LjUgLTI3OS41dC0zODUuNSAtMTAzdC0zODUuNSAxMDN0LTI3OS41IDI3OS41dC0xMDMgMzg1LjV6TTUxMiAxNjBxMCAtMTQgOSAtMjN0MjMgLTloNDQ4cTE0IDAgMjMgOXQ5IDIzdjE2MHEwIDE0IC05IDIzdC0yMyA5aC05NnY1MTJxMCAxNCAtOSAyM3QtMjMgOWgtMzIwIHEtMTQgMCAtMjMgLTl0LTkgLTIzdi0xNjBxMCAtMTQgOSAtMjN0MjMgLTloOTZ2LTMyMGgtOTZxLTE0IDAgLTIzIC05dC05IC0yM3YtMTYwek02NDAgMTA1NnEwIC0xNCA5IC0yM3QyMyAtOWgxOTJxMTQgMCAyMyA5dDkgMjN2MTYwcTAgMTQgLTkgMjN0LTIzIDloLTE5MnEtMTQgMCAtMjMgLTl0LTkgLTIzdi0xNjB6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA1YjsiIGQ9Ik0wIDU3NnYxMjhxMCAyNiAxOSA0NXQ0NSAxOWgxNDNxMzcgMTYxIDE1NC41IDI3OC41dDI3OC41IDE1NC41djE0M3EwIDI2IDE5IDQ1dDQ1IDE5aDEyOHEyNiAwIDQ1IC0xOXQxOSAtNDV2LTE0M3ExNjEgLTM3IDI3OC41IC0xNTQuNXQxNTQuNSAtMjc4LjVoMTQzcTI2IDAgNDUgLTE5dDE5IC00NXYtMTI4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTQzcS0zNyAtMTYxIC0xNTQuNSAtMjc4LjV0LTI3OC41IC0xNTQuNXYtMTQzIHEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTEyOHEtMjYgMCAtNDUgMTl0LTE5IDQ1djE0M3EtMTYxIDM3IC0yNzguNSAxNTQuNXQtMTU0LjUgMjc4LjVoLTE0M3EtMjYgMCAtNDUgMTl0LTE5IDQ1ek0zMzkgNTEycTMyIC0xMDggMTEyLjUgLTE4OC41dDE4OC41IC0xMTIuNXYxMDlxMCAyNiAxOSA0NXQ0NSAxOWgxMjhxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMDlxMTA4IDMyIDE4OC41IDExMi41dDExMi41IDE4OC41aC0xMDlxLTI2IDAgLTQ1IDE5IHQtMTkgNDV2MTI4cTAgMjYgMTkgNDV0NDUgMTloMTA5cS0zMiAxMDggLTExMi41IDE4OC41dC0xODguNSAxMTIuNXYtMTA5cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTI4cS0yNiAwIC00NSAxOXQtMTkgNDV2MTA5cS0xMDggLTMyIC0xODguNSAtMTEyLjV0LTExMi41IC0xODguNWgxMDlxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMjhxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC0xMDl6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA1YzsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjV0LTEwMyAtMzg1LjV0LTI3OS41IC0yNzkuNXQtMzg1LjUgLTEwM3QtMzg1LjUgMTAzdC0yNzkuNSAyNzkuNXQtMTAzIDM4NS41ek0yMjQgNjQwcTAgLTE0OCA3MyAtMjczdDE5OCAtMTk4dDI3MyAtNzN0MjczIDczdDE5OCAxOTh0NzMgMjczdC03MyAyNzN0LTE5OCAxOTh0LTI3MyA3M3QtMjczIC03MyB0LTE5OCAtMTk4dC03MyAtMjczek00MjkgNDgwcTAgMTMgMTAgMjNsMTM3IDEzN2wtMTM3IDEzN3EtMTAgMTAgLTEwIDIzdDEwIDIzbDE0NiAxNDZxMTAgMTAgMjMgMTB0MjMgLTEwbDEzNyAtMTM3bDEzNyAxMzdxMTAgMTAgMjMgMTB0MjMgLTEwbDE0NiAtMTQ2cTEwIC0xMCAxMCAtMjN0LTEwIC0yM2wtMTM3IC0xMzdsMTM3IC0xMzdxMTAgLTEwIDEwIC0yM3QtMTAgLTIzbC0xNDYgLTE0NnEtMTAgLTEwIC0yMyAtMTB0LTIzIDEwbC0xMzcgMTM3IGwtMTM3IC0xMzdxLTEwIC0xMCAtMjMgLTEwdC0yMyAxMGwtMTQ2IDE0NnEtMTAgMTAgLTEwIDIzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNWQ7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNMjI0IDY0MHEwIC0xNDggNzMgLTI3M3QxOTggLTE5OHQyNzMgLTczdDI3MyA3M3QxOTggMTk4dDczIDI3M3QtNzMgMjczdC0xOTggMTk4dC0yNzMgNzN0LTI3MyAtNzMgdC0xOTggLTE5OHQtNzMgLTI3M3pNMzQ2IDY0MHEwIDI2IDE5IDQ1bDEwMiAxMDJxMTkgMTkgNDUgMTl0NDUgLTE5bDE0NyAtMTQ3bDI3NSAyNzVxMTkgMTkgNDUgMTl0NDUgLTE5bDEwMiAtMTAycTE5IC0xOSAxOSAtNDV0LTE5IC00NWwtNDIyIC00MjJxLTE5IC0xOSAtNDUgLTE5dC00NSAxOWwtMjk0IDI5NHEtMTkgMTkgLTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNWU7IiBkPSJNMCA2NDNxMCAxNTcgNjEgMjk5LjV0MTYzLjUgMjQ1LjV0MjQ1IDE2NHQyOTguNSA2MXQyOTguNSAtNjF0MjQ1IC0xNjR0MTYzLjUgLTI0NS41dDYxIC0yOTkuNXQtNjEgLTMwMHQtMTYzLjUgLTI0NnQtMjQ1IC0xNjR0LTI5OC41IC02MXQtMjk4LjUgNjF0LTI0NSAxNjR0LTE2My41IDI0NnQtNjEgMzAwek0yMjQgNjQzcTAgLTE2MiA4OSAtMjk5bDc1NSA3NTRxLTEzNSA5MSAtMzAwIDkxcS0xNDggMCAtMjczIC03M3QtMTk4IC0xOTkgdC03MyAtMjc0ek00NzEgMTg1cTEzNyAtODkgMjk3IC04OXExMTEgMCAyMTEuNSA0My41dDE3My41IDExNi41dDExNiAxNzQuNXQ0MyAyMTIuNXEwIDE2MSAtODcgMjk1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNjA7IiBkPSJNNjQgNTc2cTAgNTIgMzcgOTFsNjUxIDY1MHEzOCAzOCA5MSAzOHE1MiAwIDkwIC0zOGw3NSAtNzRxMzggLTM4IDM4IC05MXQtMzggLTkxbC0yOTMgLTI5M2g3MDRxNTIgMCA4NC41IC0zNy41dDMyLjUgLTkwLjV2LTEyOHEwIC01MyAtMzIuNSAtOTAuNXQtODQuNSAtMzcuNWgtNzA0bDI5MyAtMjk0cTM4IC0zNiAzOCAtOTB0LTM4IC05MGwtNzUgLTc2cS0zNyAtMzcgLTkwIC0zN3EtNTIgMCAtOTEgMzdsLTY1MSA2NTJxLTM3IDM3IC0zNyA5MCB6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA2MTsiIGQ9Ik0wIDUxMnYxMjhxMCA1MyAzMi41IDkwLjV0ODQuNSAzNy41aDcwNGwtMjkzIDI5NHEtMzggMzYgLTM4IDkwdDM4IDkwbDc1IDc1cTM4IDM4IDkwIDM4cTUzIDAgOTEgLTM4bDY1MSAtNjUxcTM3IC0zNSAzNyAtOTBxMCAtNTQgLTM3IC05MWwtNjUxIC02NTFxLTM5IC0zNyAtOTEgLTM3cS01MSAwIC05MCAzN2wtNzUgNzVxLTM4IDM4IC0zOCA5MXQzOCA5MWwyOTMgMjkzaC03MDRxLTUyIDAgLTg0LjUgMzcuNXQtMzIuNSA5MC41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNjI7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTUzIDU2NXEwIDUzIDM4IDkxbDY1MSA2NTFxMzUgMzcgOTAgMzdxNTQgMCA5MSAtMzdsNjUxIC02NTFxMzcgLTM5IDM3IC05MXEwIC01MSAtMzcgLTkwbC03NSAtNzVxLTM4IC0zOCAtOTEgLTM4cS01NCAwIC05MCAzOGwtMjk0IDI5M3YtNzA0cTAgLTUyIC0zNy41IC04NC41dC05MC41IC0zMi41aC0xMjhxLTUzIDAgLTkwLjUgMzIuNXQtMzcuNSA4NC41djcwNGwtMjk0IC0yOTNxLTM2IC0zOCAtOTAgLTM4dC05MCAzOGwtNzUgNzUgcS0zOCAzOCAtMzggOTB6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA2MzsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNNTMgNzA0cTAgNTMgMzggOTFsNzQgNzVxMzkgMzcgOTEgMzdxNTMgMCA5MCAtMzdsMjk0IC0yOTR2NzA0cTAgNTIgMzggOTB0OTAgMzhoMTI4cTUyIDAgOTAgLTM4dDM4IC05MHYtNzA0bDI5NCAyOTRxMzcgMzcgOTAgMzdxNTIgMCA5MSAtMzdsNzUgLTc1cTM3IC0zOSAzNyAtOTFxMCAtNTMgLTM3IC05MGwtNjUxIC02NTJxLTM5IC0zNyAtOTEgLTM3cS01MyAwIC05MCAzN2wtNjUxIDY1MnEtMzggMzYgLTM4IDkweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNjQ7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgNDE2cTAgMTk5IDUzIDMzM3ExNjIgNDAzIDg3NSA0MDNoMjI0djI1NnEwIDI2IDE5IDQ1dDQ1IDE5dDQ1IC0xOWw1MTIgLTUxMnExOSAtMTkgMTkgLTQ1dC0xOSAtNDVsLTUxMiAtNTEycS0xOSAtMTkgLTQ1IC0xOXQtNDUgMTl0LTE5IDQ1djI1NmgtMjI0cS05OCAwIC0xNzUuNSAtNnQtMTU0IC0yMS41dC0xMzMgLTQyLjV0LTEwNS41IC02OS41dC04MCAtMTAxdC00OC41IC0xMzguNXQtMTcuNSAtMTgxcTAgLTU1IDUgLTEyMyBxMCAtNiAyLjUgLTIzLjV0Mi41IC0yNi41cTAgLTE1IC04LjUgLTI1dC0yMy41IC0xMHEtMTYgMCAtMjggMTdxLTcgOSAtMTMgMjJ0LTEzLjUgMzB0LTEwLjUgMjRxLTEyNyAyODUgLTEyNyA0NTF6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA2NTsiIGQ9Ik0wIC02NHY0NDhxMCAyNiAxOSA0NXQ0NSAxOXQ0NSAtMTlsMTQ0IC0xNDRsMzMyIDMzMnExMCAxMCAyMyAxMHQyMyAtMTBsMTE0IC0xMTRxMTAgLTEwIDEwIC0yM3QtMTAgLTIzbC0zMzIgLTMzMmwxNDQgLTE0NHExOSAtMTkgMTkgLTQ1dC0xOSAtNDV0LTQ1IC0xOWgtNDQ4cS0yNiAwIC00NSAxOXQtMTkgNDV6TTc4MSA4MDBxMCAxMyAxMCAyM2wzMzIgMzMybC0xNDQgMTQ0cS0xOSAxOSAtMTkgNDV0MTkgNDV0NDUgMTloNDQ4IHEyNiAwIDQ1IC0xOXQxOSAtNDV2LTQ0OHEwIC0yNiAtMTkgLTQ1dC00NSAtMTl0LTQ1IDE5bC0xNDQgMTQ0bC0zMzIgLTMzMnEtMTAgLTEwIC0yMyAtMTB0LTIzIDEwbC0xMTQgMTE0cS0xMCAxMCAtMTAgMjN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA2NjsiIGQ9Ik0xMyAzMnEwIDEzIDEwIDIzbDMzMiAzMzJsLTE0NCAxNDRxLTE5IDE5IC0xOSA0NXQxOSA0NXQ0NSAxOWg0NDhxMjYgMCA0NSAtMTl0MTkgLTQ1di00NDhxMCAtMjYgLTE5IC00NXQtNDUgLTE5dC00NSAxOWwtMTQ0IDE0NGwtMzMyIC0zMzJxLTEwIC0xMCAtMjMgLTEwdC0yMyAxMGwtMTE0IDExNHEtMTAgMTAgLTEwIDIzek03NjggNzA0djQ0OHEwIDI2IDE5IDQ1dDQ1IDE5dDQ1IC0xOWwxNDQgLTE0NGwzMzIgMzMycTEwIDEwIDIzIDEwIHQyMyAtMTBsMTE0IC0xMTRxMTAgLTEwIDEwIC0yM3QtMTAgLTIzbC0zMzIgLTMzMmwxNDQgLTE0NHExOSAtMTkgMTkgLTQ1dC0xOSAtNDV0LTQ1IC0xOWgtNDQ4cS0yNiAwIC00NSAxOXQtMTkgNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA2NzsiIGhvcml6LWFkdi14PSIxNDA4IiBkPSJNMCA2MDh2MTkycTAgNDAgMjggNjh0NjggMjhoNDE2djQxNnEwIDQwIDI4IDY4dDY4IDI4aDE5MnE0MCAwIDY4IC0yOHQyOCAtNjh2LTQxNmg0MTZxNDAgMCA2OCAtMjh0MjggLTY4di0xOTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC00MTZ2LTQxNnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTE5MnEtNDAgMCAtNjggMjh0LTI4IDY4djQxNmgtNDE2cS00MCAwIC02OCAyOHQtMjggNjh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA2ODsiIGhvcml6LWFkdi14PSIxNDA4IiBkPSJNMCA2MDh2MTkycTAgNDAgMjggNjh0NjggMjhoMTIxNnE0MCAwIDY4IC0yOHQyOCAtNjh2LTE5MnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTEyMTZxLTQwIDAgLTY4IDI4dC0yOCA2OHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDY5OyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0xMjIuNSA0MDguNXExMy41IDUxLjUgNTkuNSA3Ny41bDI2NiAxNTRsLTI2NiAxNTRxLTQ2IDI2IC01OS41IDc3LjV0MTIuNSA5Ny41bDY0IDExMHEyNiA0NiA3Ny41IDU5LjV0OTcuNSAtMTIuNWwyNjYgLTE1M3YzMDdxMCA1MiAzOCA5MHQ5MCAzOGgxMjhxNTIgMCA5MCAtMzh0MzggLTkwdi0zMDdsMjY2IDE1M3E0NiAyNiA5Ny41IDEyLjV0NzcuNSAtNTkuNWw2NCAtMTEwcTI2IC00NiAxMi41IC05Ny41dC01OS41IC03Ny41IGwtMjY2IC0xNTRsMjY2IC0xNTRxNDYgLTI2IDU5LjUgLTc3LjV0LTEyLjUgLTk3LjVsLTY0IC0xMTBxLTI2IC00NiAtNzcuNSAtNTkuNXQtOTcuNSAxMi41bC0yNjYgMTUzdi0zMDdxMCAtNTIgLTM4IC05MHQtOTAgLTM4aC0xMjhxLTUyIDAgLTkwIDM4dC0zOCA5MHYzMDdsLTI2NiAtMTUzcS00NiAtMjYgLTk3LjUgLTEyLjV0LTc3LjUgNTkuNWwtNjQgMTEwcS0yNiA0NiAtMTIuNSA5Ny41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNmE7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNNjI0IDExMjZsMTcgLTYyMXEwIC0xMCAxMCAtMTcuNXQyNCAtNy41aDE4NXExNCAwIDIzLjUgNy41dDEwLjUgMTcuNWwxOCA2MjFxMCAxMiAtMTAgMTggcS0xMCA4IC0yNCA4aC0yMjBxLTE0IDAgLTI0IC04cS0xMCAtNiAtMTAgLTE4ek02NDAgMTYxcTAgLTEzIDEwIC0yM3QyMyAtMTBoMTkycTEzIDAgMjIgOS41dDkgMjMuNXYxOTBxMCAxNCAtOSAyMy41dC0yMiA5LjVoLTE5MnEtMTMgMCAtMjMgLTEwdC0xMCAtMjN2LTE5MHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDZiOyIgZD0iTTAgNTQ0djMyMHEwIDE0IDkgMjN0MjMgOWg0NDBxLTkzIDAgLTE1OC41IDY1LjV0LTY1LjUgMTU4LjV0NjUuNSAxNTguNXQxNTguNSA2NS41cTEwNyAwIDE2OCAtNzdsMTI4IC0xNjVsMTI4IDE2NXE2MSA3NyAxNjggNzdxOTMgMCAxNTguNSAtNjUuNXQ2NS41IC0xNTguNXQtNjUuNSAtMTU4LjV0LTE1OC41IC02NS41aDQ0MHExNCAwIDIzIC05dDkgLTIzdi0zMjBxMCAtMTQgLTkgLTIzdC0yMyAtOWgtOTZ2LTQxNnEwIC00MCAtMjggLTY4IHQtNjggLTI4aC0xMDg4cS00MCAwIC02OCAyOHQtMjggNjh2NDE2aC05NnEtMTQgMCAtMjMgOXQtOSAyM3pNMzc2IDExMjBxMCAtNDAgMjggLTY4dDY4IC0yOGgxOTVsLTEyNiAxNjFxLTI2IDMxIC02OSAzMXEtNDAgMCAtNjggLTI4dC0yOCAtNjh6TTYwOCAxODBxMCAtMjUgMTggLTM4LjV0NDYgLTEzLjVoMTkycTI4IDAgNDYgMTMuNXQxOCAzOC41djU2djQ2OHYxOTJoLTMyMHYtMTkydi00Njh2LTU2ek04NzAgMTAyNGgxOTRxNDAgMCA2OCAyOCB0MjggNjh0LTI4IDY4dC02OCAyOHEtNDMgMCAtNjkgLTMxeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNmM7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgMTIxcTAgMzUgMzEgNzMuNXQ2OCA2NS41dDY4IDU2dDMxIDQ4cTAgNCAtMTQgMzh0LTE2IDQ0cS05IDUxIC05IDEwNHEwIDExNSA0My41IDIyMHQxMTkgMTg0LjV0MTcwLjUgMTM5dDIwNCA5NS41cTU1IDE4IDE0NSAyNS41dDE3OS41IDl0MTc4LjUgNnQxNjMuNSAyNHQxMTMuNSA1Ni41bDI5LjUgMjkuNXQyOS41IDI4dDI3IDIwdDM2LjUgMTZ0NDMuNSA0LjVxMzkgMCA3MC41IC00NnQ0Ny41IC0xMTJ0MjQgLTEyNHQ4IC05NiBxMCAtOTUgLTIwIC0xOTNxLTQ2IC0yMjQgLTE4NC41IC0zODN0LTM1Ny41IC0yNjhxLTIxNCAtMTA4IC00MzggLTEwOHEtMTQ4IDAgLTI4NiA0N3EtMTUgNSAtODggNDJ0LTk2IDM3cS0xNiAwIC0zOS41IC0zMnQtNDUgLTcwdC01Mi41IC03MHQtNjAgLTMycS0zMCAwIC01MSAxMXQtMzEgMjR0LTI3IDQycS0yIDQgLTYgMTF0LTUuNSAxMHQtMyA5LjV0LTEuNSAxMy41ek0zODQgNDQ4cTAgLTI2IDE5IC00NXQ0NSAtMTlxMjQgMCA0NSAxOSBxMjcgMjQgNzQgNzF0NjcgNjZxMTM3IDEyNCAyNjguNSAxNzZ0MzEzLjUgNTJxMjYgMCA0NSAxOXQxOSA0NXQtMTkgNDV0LTQ1IDE5cS0xNzIgMCAtMzE4IC00OS41dC0yNTkuNSAtMTM0dC0yMzUuNSAtMjE5LjVxLTE5IC0yMSAtMTkgLTQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNmQ7IiBob3Jpei1hZHYteD0iMTQwOCIgZD0iTTAgLTE2MHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDEzNDRxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTEzNDRxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXY2NHpNMjU2IDY0MHEwIDc4IDI0LjUgMTQ0dDY0IDExMi41dDg3LjUgODh0OTYgNzcuNXQ4Ny41IDcydDY0IDgxLjV0MjQuNSA5Ni41cTAgOTQgLTY2IDIyNGwzIC0xbC0xIDFxOTAgLTQxIDE2MCAtODN0MTM4LjUgLTEwMCB0MTEzLjUgLTEyMi41dDcyLjUgLTE1MC41dDI3LjUgLTE4NHEwIC03OCAtMjQuNSAtMTQ0dC02NCAtMTEyLjV0LTg3LjUgLTg4dC05NiAtNzcuNXQtODcuNSAtNzJ0LTY0IC04MS41dC0yNC41IC05Ni41cTAgLTk2IDY3IC0yMjRsLTQgMWwxIC0xcS05MCA0MSAtMTYwIDgzdC0xMzguNSAxMDB0LTExMy41IDEyMi41dC03Mi41IDE1MC41dC0yNy41IDE4NHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDZlOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDU3NnEwIDM0IDIwIDY5cTE0MCAyMjkgMzc2LjUgMzY4dDQ5OS41IDEzOXQ0OTkuNSAtMTM5dDM3Ni41IC0zNjhxMjAgLTM1IDIwIC02OXQtMjAgLTY5cS0xNDAgLTIzMCAtMzc2LjUgLTM2OC41dC00OTkuNSAtMTM4LjV0LTQ5OS41IDEzOXQtMzc2LjUgMzY4cS0yMCAzNSAtMjAgNjl6TTEyOCA1NzZxMTMzIC0yMDUgMzMzLjUgLTMyNi41dDQzNC41IC0xMjEuNXQ0MzQuNSAxMjEuNXQzMzMuNSAzMjYuNXEtMTUyIDIzNiAtMzgxIDM1MyBxNjEgLTEwNCA2MSAtMjI1cTAgLTE4NSAtMTMxLjUgLTMxNi41dC0zMTYuNSAtMTMxLjV0LTMxNi41IDEzMS41dC0xMzEuNSAzMTYuNXEwIDEyMSA2MSAyMjVxLTIyOSAtMTE3IC0zODEgLTM1M3pNNTkyIDcwNHEwIC0yMCAxNCAtMzR0MzQgLTE0dDM0IDE0dDE0IDM0cTAgODYgNjEgMTQ3dDE0NyA2MXEyMCAwIDM0IDE0dDE0IDM0dC0xNCAzNHQtMzQgMTRxLTEyNSAwIC0yMTQuNSAtODkuNXQtODkuNSAtMjE0LjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA3MDsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCA1NzZxMCAzOCAyMCA2OXExNTMgMjM1IDM4MCAzNzF0NDk2IDEzNnE4OSAwIDE4MCAtMTdsNTQgOTdxMTAgMTYgMjggMTZxNSAwIDE4IC02dDMxIC0xNS41dDMzIC0xOC41dDMxLjUgLTE4LjV0MTkuNSAtMTEuNXExNiAtMTAgMTYgLTI3cTAgLTcgLTEgLTlxLTEwNSAtMTg4IC0zMTUgLTU2NnQtMzE2IC01NjdsLTQ5IC04OXEtMTAgLTE2IC0yOCAtMTZxLTEyIDAgLTEzNCA3MHEtMTYgMTAgLTE2IDI4cTAgMTIgNDQgODcgcS0xNDMgNjUgLTI2My41IDE3M3QtMjA4LjUgMjQ1cS0yMCAzMSAtMjAgNjl6TTEyOCA1NzZxMTY3IC0yNTggNDI3IC0zNzVsNzggMTQxcS04NyA2MyAtMTM2IDE1OXQtNDkgMjAzcTAgMTIxIDYxIDIyNXEtMjI5IC0xMTcgLTM4MSAtMzUzek01OTIgNzA0cTAgLTIwIDE0IC0zNHQzNCAtMTR0MzQgMTR0MTQgMzRxMCA4NiA2MSAxNDd0MTQ3IDYxcTIwIDAgMzQgMTR0MTQgMzR0LTE0IDM0dC0zNCAxNHEtMTI1IDAgLTIxNC41IC04OS41IHQtODkuNSAtMjE0LjV6TTg5NiAwbDc0IDEzMnEyMTIgMTggMzkyLjUgMTM3dDMwMS41IDMwN3EtMTE1IDE3OSAtMjgyIDI5NGw2MyAxMTJxOTUgLTY0IDE4Mi41IC0xNTN0MTQ0LjUgLTE4NHEyMCAtMzQgMjAgLTY5dC0yMCAtNjlxLTM5IC02NCAtMTA5IC0xNDVxLTE1MCAtMTcyIC0zNDcuNSAtMjY3dC00MTkuNSAtOTV6TTEwNTYgMjg2bDI4MCA1MDJxOCAtNDUgOCAtODRxMCAtMTM5IC03OSAtMjUzLjV0LTIwOSAtMTY0LjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA3MTsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMTYgNjFsNzY4IDE0MDhxMTcgMzEgNDcgNDl0NjUgMTh0NjUgLTE4dDQ3IC00OWw3NjggLTE0MDhxMzUgLTYzIC0yIC0xMjZxLTE3IC0yOSAtNDYuNSAtNDZ0LTYzLjUgLTE3aC0xNTM2cS0zNCAwIC02My41IDE3dC00Ni41IDQ2cS0zNyA2MyAtMiAxMjZ6TTc1MiA5OTJsMTcgLTQ1N3EwIC0xMCAxMCAtMTYuNXQyNCAtNi41aDE4NXExNCAwIDIzLjUgNi41dDEwLjUgMTYuNWwxOCA0NTlxMCAxMiAtMTAgMTlxLTEzIDExIC0yNCAxMWgtMjIwIHEtMTEgMCAtMjQgLTExcS0xMCAtNyAtMTAgLTIxek03NjggMTYxcTAgLTE0IDkuNSAtMjMuNXQyMi41IC05LjVoMTkycTEzIDAgMjIuNSA5LjV0OS41IDIzLjV2MTkwcTAgMTQgLTkuNSAyMy41dC0yMi41IDkuNWgtMTkycS0xMyAwIC0yMi41IC05LjV0LTkuNSAtMjMuNXYtMTkweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNzI7IiBob3Jpei1hZHYteD0iMTQwOCIgZD0iTTAgNDc3cS0xIDEzIDkgMjVsOTYgOTdxOSA5IDIzIDlxNiAwIDggLTFsMTk0IC01M2wyNTkgMjU5bC01MDggMjc5cS0xNCA4IC0xNyAyNHEtMiAxNiA5IDI3bDEyOCAxMjhxMTQgMTMgMzAgOGw2NjUgLTE1OWwxNjAgMTYwcTc2IDc2IDE3MiAxMDh0MTQ4IC0xMnE0NCAtNTIgMTIgLTE0OHQtMTA4IC0xNzJsLTE2MSAtMTYxbDE2MCAtNjk2cTUgLTE5IC0xMiAtMzNsLTEyOCAtOTZxLTcgLTYgLTE5IC02cS00IDAgLTcgMXEtMTUgMyAtMjEgMTYgbC0yNzkgNTA4bC0yNTkgLTI1OWw1MyAtMTk0cTUgLTE3IC04IC0zMWwtOTYgLTk2cS05IC05IC0yMyAtOWgtMnEtMTUgMiAtMjQgMTNsLTE4OSAyNTJsLTI1MiAxODlxLTExIDcgLTEzIDIzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNzM7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgLTEyOHYxMjgwcTAgNTIgMzggOTB0OTAgMzhoMTI4djk2cTAgNjYgNDcgMTEzdDExMyA0N2g2NHE2NiAwIDExMyAtNDd0NDcgLTExM3YtOTZoMzg0djk2cTAgNjYgNDcgMTEzdDExMyA0N2g2NHE2NiAwIDExMyAtNDd0NDcgLTExM3YtOTZoMTI4cTUyIDAgOTAgLTM4dDM4IC05MHYtMTI4MHEwIC01MiAtMzggLTkwdC05MCAtMzhoLTE0MDhxLTUyIDAgLTkwIDM4dC0zOCA5MHpNMTI4IC0xMjhoMjg4djI4OGgtMjg4di0yODh6TTEyOCAyMjQgaDI4OHYzMjBoLTI4OHYtMzIwek0xMjggNjA4aDI4OHYyODhoLTI4OHYtMjg4ek0zODQgMTA4OHEwIC0xMyA5LjUgLTIyLjV0MjIuNSAtOS41aDY0cTEzIDAgMjIuNSA5LjV0OS41IDIyLjV2Mjg4cTAgMTMgLTkuNSAyMi41dC0yMi41IDkuNWgtNjRxLTEzIDAgLTIyLjUgLTkuNXQtOS41IC0yMi41di0yODh6TTQ4MCAtMTI4aDMyMHYyODhoLTMyMHYtMjg4ek00ODAgMjI0aDMyMHYzMjBoLTMyMHYtMzIwek00ODAgNjA4aDMyMHYyODhoLTMyMCB2LTI4OHpNODY0IC0xMjhoMzIwdjI4OGgtMzIwdi0yODh6TTg2NCAyMjRoMzIwdjMyMGgtMzIwdi0zMjB6TTg2NCA2MDhoMzIwdjI4OGgtMzIwdi0yODh6TTExNTIgMTA4OHEwIC0xMyA5LjUgLTIyLjV0MjIuNSAtOS41aDY0cTEzIDAgMjIuNSA5LjV0OS41IDIyLjV2Mjg4cTAgMTMgLTkuNSAyMi41dC0yMi41IDkuNWgtNjRxLTEzIDAgLTIyLjUgLTkuNXQtOS41IC0yMi41di0yODh6TTEyNDggLTEyOGgyODh2Mjg4aC0yODh2LTI4OHogTTEyNDggMjI0aDI4OHYzMjBoLTI4OHYtMzIwek0xMjQ4IDYwOGgyODh2Mjg4aC0yODh2LTI4OHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDc0OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDE2MHYxOTJxMCAxNCA5IDIzdDIzIDloMjI0cTQ4IDAgODcgMTV0NjkgNDV0NTEgNjEuNXQ0NSA3Ny41cTMyIDYyIDc4IDE3MXEyOSA2NiA0OS41IDExMXQ1NCAxMDV0NjQgMTAwdDc0IDgzdDkwIDY4LjV0MTA2LjUgNDJ0MTI4IDE2LjVoMjU2djE5MnEwIDE0IDkgMjN0MjMgOXExMiAwIDI0IC0xMGwzMTkgLTMxOXE5IC05IDkgLTIzdC05IC0yM2wtMzIwIC0zMjBxLTkgLTkgLTIzIC05cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV2MTkyIGgtMjU2cS00OCAwIC04NyAtMTV0LTY5IC00NXQtNTEgLTYxLjV0LTQ1IC03Ny41cS0zMiAtNjIgLTc4IC0xNzFxLTI5IC02NiAtNDkuNSAtMTExdC01NCAtMTA1dC02NCAtMTAwdC03NCAtODN0LTkwIC02OC41dC0xMDYuNSAtNDJ0LTEyOCAtMTYuNWgtMjI0cS0xNCAwIC0yMyA5dC05IDIzek0wIDEwNTZ2MTkycTAgMTQgOSAyM3QyMyA5aDIyNHEyNTAgMCA0MTAgLTIyNXEtNjAgLTkyIC0xMzcgLTI3M3EtMjIgNDUgLTM3IDcyLjUgdC00MC41IDYzLjV0LTUxIDU2LjV0LTYzIDM1dC04MS41IDE0LjVoLTIyNHEtMTQgMCAtMjMgOXQtOSAyM3pNNzQzIDM1M3E1OSA5MyAxMzYgMjczcTIyIC00NSAzNyAtNzIuNXQ0MC41IC02My41dDUxIC01Ni41dDYzIC0zNXQ4MS41IC0xNC41aDI1NnYxOTJxMCAxNCA5IDIzdDIzIDlxMTIgMCAyNCAtMTBsMzE5IC0zMTlxOSAtOSA5IC0yM3QtOSAtMjNsLTMyMCAtMzIwcS05IC05IC0yMyAtOXEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41djE5MiBxLTMyIDAgLTg1IC0wLjV0LTgxIC0xdC03MyAxdC03MSA1dC02NCAxMC41dC02MyAxOC41dC01OCAyOC41dC01OSA0MHQtNTUgNTMuNXQtNTYgNjkuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDc1OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDY0MHEwIDEzMCA3MSAyNDguNXQxOTEgMjA0LjV0Mjg2IDEzNi41dDM0OCA1MC41cTI0NCAwIDQ1MCAtODUuNXQzMjYgLTIzM3QxMjAgLTMyMS41dC0xMjAgLTMyMS41dC0zMjYgLTIzM3QtNDUwIC04NS41cS03MCAwIC0xNDUgOHEtMTk4IC0xNzUgLTQ2MCAtMjQycS00OSAtMTQgLTExNCAtMjJxLTE3IC0yIC0zMC41IDl0LTE3LjUgMjl2MXEtMyA0IC0wLjUgMTJ0MiAxMHQ0LjUgOS41bDYgOXQ3IDguNXQ4IDlxNyA4IDMxIDM0LjUgdDM0LjUgMzh0MzEgMzkuNXQzMi41IDUxdDI3IDU5dDI2IDc2cS0xNTcgODkgLTI0Ny41IDIyMHQtOTAuNSAyODF6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA3NjsiIGQ9Ik0wIDU3NnYxMjhxMCAyNiAxOSA0NXQ0NSAxOWgzODRxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMjhxMCAtNTIgMjMuNSAtOTB0NTMuNSAtNTd0NzEgLTMwdDY0IC0xM3Q0NCAtMnQ0NCAydDY0IDEzdDcxIDMwdDUzLjUgNTd0MjMuNSA5MHYxMjhxMCAyNiAxOSA0NXQ0NSAxOWgzODRxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMjhxMCAtMjAxIC05OC41IC0zNjJ0LTI3NCAtMjUxLjV0LTM5NS41IC05MC41dC0zOTUuNSA5MC41dC0yNzQgMjUxLjUgdC05OC41IDM2MnpNMCA5NjB2Mzg0cTAgMjYgMTkgNDV0NDUgMTloMzg0cTI2IDAgNDUgLTE5dDE5IC00NXYtMzg0cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMzg0cS0yNiAwIC00NSAxOXQtMTkgNDV6TTEwMjQgOTYwdjM4NHEwIDI2IDE5IDQ1dDQ1IDE5aDM4NHEyNiAwIDQ1IC0xOXQxOSAtNDV2LTM4NHEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTM4NHEtMjYgMCAtNDUgMTl0LTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNzc7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTkwIDI1MC41cTAgMjYuNSAxOSA0NS41bDc0MiA3NDFxMTkgMTkgNDUgMTl0NDUgLTE5bDc0MiAtNzQxcTE5IC0xOSAxOSAtNDUuNXQtMTkgLTQ1LjVsLTE2NiAtMTY1cS0xOSAtMTkgLTQ1IC0xOXQtNDUgMTlsLTUzMSA1MzFsLTUzMSAtNTMxcS0xOSAtMTkgLTQ1IC0xOXQtNDUgMTlsLTE2NiAxNjVxLTE5IDE5IC0xOSA0NS41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNzg7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTkwIDc3My41cTAgMjYuNSAxOSA0NS41bDE2NiAxNjVxMTkgMTkgNDUgMTl0NDUgLTE5bDUzMSAtNTMxbDUzMSA1MzFxMTkgMTkgNDUgMTl0NDUgLTE5bDE2NiAtMTY1cTE5IC0xOSAxOSAtNDUuNXQtMTkgLTQ1LjVsLTc0MiAtNzQxcS0xOSAtMTkgLTQ1IC0xOXQtNDUgMTlsLTc0MiA3NDFxLTE5IDE5IC0xOSA0NS41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwNzk7IiBob3Jpei1hZHYteD0iMTkyMCIgZD0iTTAgNzA0cTAgMjQgMTUgNDFsMzIwIDM4NHExOSAyMiA0OSAyMnQ0OSAtMjJsMzIwIC0zODRxMTUgLTE3IDE1IC00MXEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTE5MnYtMzg0aDU3NnExNiAwIDI1IC0xMWwxNjAgLTE5MnE3IC0xMSA3IC0yMXEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTk2MHEtOCAwIC0xMy41IDJ0LTkgN3QtNS41IDh0LTMgMTEuNXQtMSAxMS41djEzdjExdjE2MHY0MTZoLTE5MnEtMjYgMCAtNDUgMTl0LTE5IDQ1eiBNNjQwIDExMjBxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg5NjBxOCAwIDEzLjUgLTJ0OSAtN3Q1LjUgLTh0MyAtMTEuNXQxIC0xMS41di0xM3YtMTF2LTE2MHYtNDE2aDE5MnEyNiAwIDQ1IC0xOXQxOSAtNDVxMCAtMjQgLTE1IC00MWwtMzIwIC0zODRxLTIwIC0yMyAtNDkgLTIzdC00OSAyM2wtMzIwIDM4NHEtMTUgMTcgLTE1IDQxcTAgMjYgMTkgNDV0NDUgMTloMTkydjM4NGgtNTc2cS0xNiAwIC0yNSAxMmwtMTYwIDE5MnEtNyA5IC03IDIweiAiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDdhOyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0wIDEyMTZxMCAyNiAxOSA0NXQ0NSAxOWgyNTZxMTYgMCAyOC41IC02LjV0MjAgLTE1LjV0MTMgLTI0LjV0Ny41IC0yNi41dDUuNSAtMjkuNXQ0LjUgLTI1LjVoMTIwMXEyNiAwIDQ1IC0xOXQxOSAtNDV2LTUxMnEwIC0yNCAtMTYgLTQyLjV0LTQxIC0yMS41bC0xMDQ0IC0xMjJxMSAtNyA0LjUgLTIxLjV0NiAtMjYuNXQyLjUgLTIycTAgLTE2IC0yNCAtNjRoOTIwcTI2IDAgNDUgLTE5dDE5IC00NXQtMTkgLTQ1dC00NSAtMTloLTEwMjQgcS0yNiAwIC00NSAxOXQtMTkgNDVxMCAxNCAxMSAzOS41dDI5LjUgNTkuNXQyMC41IDM4bC0xNzcgODIzaC0yMDRxLTI2IDAgLTQ1IDE5dC0xOSA0NXpNMzg0IDBxMCA1MyAzNy41IDkwLjV0OTAuNSAzNy41dDkwLjUgLTM3LjV0MzcuNSAtOTAuNXQtMzcuNSAtOTAuNXQtOTAuNSAtMzcuNXQtOTAuNSAzNy41dC0zNy41IDkwLjV6TTEyODAgMHEwIDUzIDM3LjUgOTAuNXQ5MC41IDM3LjV0OTAuNSAtMzcuNXQzNy41IC05MC41dC0zNy41IC05MC41IHQtOTAuNSAtMzcuNXQtOTAuNSAzNy41dC0zNy41IDkwLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA3YjsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCAyMjR2OTYwcTAgOTIgNjYgMTU4dDE1OCA2NmgzMjBxOTIgMCAxNTggLTY2dDY2IC0xNTh2LTMyaDY3MnE5MiAwIDE1OCAtNjZ0NjYgLTE1OHYtNzA0cTAgLTkyIC02NiAtMTU4dC0xNTggLTY2aC0xMjE2cS05MiAwIC0xNTggNjZ0LTY2IDE1OHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDdjOyIgaG9yaXotYWR2LXg9IjE5MjAiIGQ9Ik0wIDIyNHY5NjBxMCA5MiA2NiAxNTh0MTU4IDY2aDMyMHE5MiAwIDE1OCAtNjZ0NjYgLTE1OHYtMzJoNTQ0cTkyIDAgMTU4IC02NnQ2NiAtMTU4di0xNjBoLTgzMnEtOTQgMCAtMTk3IC00Ny41dC0xNjQgLTExOS41bC0zMzcgLTM5NmwtNSAtNnEwIDQgLTAuNSAxMi41dC0wLjUgMTIuNXpNNzMgNTZxMCAzMSAzMSA2NmwzMzYgMzk2cTQzIDUxIDEyMC41IDg2LjV0MTQzLjUgMzUuNWgxMDg4cTM0IDAgNjAuNSAtMTN0MjYuNSAtNDMgcTAgLTMxIC0zMSAtNjZsLTMzNiAtMzk2cS00MyAtNTEgLTEyMC41IC04Ni41dC0xNDMuNSAtMzUuNWgtMTA4OHEtMzQgMCAtNjAuNSAxM3QtMjYuNSA0M3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDdkOyIgaG9yaXotYWR2LXg9Ijc2OCIgZD0iTTY0IDY0cTAgMjYgMTkgNDV0NDUgMTloMTI4djEwMjRoLTEyOHEtMjYgMCAtNDUgMTl0LTE5IDQ1dDE5IDQ1bDI1NiAyNTZxMTkgMTkgNDUgMTl0NDUgLTE5bDI1NiAtMjU2cTE5IC0xOSAxOSAtNDV0LTE5IC00NXQtNDUgLTE5aC0xMjh2LTEwMjRoMTI4cTI2IDAgNDUgLTE5dDE5IC00NXQtMTkgLTQ1bC0yNTYgLTI1NnEtMTkgLTE5IC00NSAtMTl0LTQ1IDE5bC0yNTYgMjU2cS0xOSAxOSAtMTkgNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA3ZTsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCA2NDBxMCAyNiAxOSA0NWwyNTYgMjU2cTE5IDE5IDQ1IDE5dDQ1IC0xOXQxOSAtNDV2LTEyOGgxMDI0djEyOHEwIDI2IDE5IDQ1dDQ1IDE5dDQ1IC0xOWwyNTYgLTI1NnExOSAtMTkgMTkgLTQ1dC0xOSAtNDVsLTI1NiAtMjU2cS0xOSAtMTkgLTQ1IC0xOXQtNDUgMTl0LTE5IDQ1djEyOGgtMTAyNHYtMTI4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOXQtNDUgMTlsLTI1NiAyNTZxLTE5IDE5IC0xOSA0NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDgwOyIgaG9yaXotYWR2LXg9IjE5MjAiIGQ9Ik0wIDMydjEyMTZxMCA2NiA0NyAxMTN0MTEzIDQ3aDE2MDBxNjYgMCAxMTMgLTQ3dDQ3IC0xMTN2LTEyMTZxMCAtNjYgLTQ3IC0xMTN0LTExMyAtNDdoLTE2MDBxLTY2IDAgLTExMyA0N3QtNDcgMTEzek0xMjggMzJxMCAtMTMgOS41IC0yMi41dDIyLjUgLTkuNWgxNjAwcTEzIDAgMjIuNSA5LjV0OS41IDIyLjV2MTIxNnEwIDEzIC05LjUgMjIuNXQtMjIuNSA5LjVoLTE2MDBxLTEzIDAgLTIyLjUgLTkuNXQtOS41IC0yMi41di0xMjE2eiBNMjU2IDEyOHYzODRoMjU2di0zODRoLTI1NnpNNjQwIDEyOHY4OTZoMjU2di04OTZoLTI1NnpNMTAyNCAxMjh2NjQwaDI1NnYtNjQwaC0yNTZ6TTE0MDggMTI4djEwMjRoMjU2di0xMDI0aC0yNTZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA4MTsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0yNTYgMjg2cTE0OCAtOTQgMzIyIC05NHExMTIgMCAyMTAgMzUuNXQxNjggOTV0MTIwLjUgMTM3dDc1IDE2MnQyNC41IDE2OC41cTAgMTggLTEgMjdxNjMgNDUgMTA1IDEwOSBxLTU2IC0yNSAtMTIxIC0zNHE2OCA0MCA5MyAxMTdxLTY1IC0zOCAtMTM0IC01MXEtNjEgNjYgLTE1MyA2NnEtODcgMCAtMTQ4LjUgLTYxLjV0LTYxLjUgLTE0OC41cTAgLTI5IDUgLTQ4cS0xMjkgNyAtMjQyIDY1dC0xOTIgMTU1cS0yOSAtNTAgLTI5IC0xMDZxMCAtMTE0IDkxIC0xNzVxLTQ3IDEgLTEwMCAyNnYtMnEwIC03NSA1MCAtMTMzLjV0MTIzIC03Mi41cS0yOSAtOCAtNTEgLThxLTEzIDAgLTM5IDRxMjEgLTYzIDc0LjUgLTEwNCB0MTIxLjUgLTQycS0xMTYgLTkwIC0yNjEgLTkwcS0yNiAwIC01MCAzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwODI7IiBkPSJNMCAxNjB2OTYwcTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNWg5NjBxMTE5IDAgMjAzLjUgLTg0LjV0ODQuNSAtMjAzLjV2LTk2MHEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtMTkydjYwOGgyMDNsMzAgMjI0aC0yMzN2MTQzcTAgNTQgMjggODN0OTYgMjlsMTMyIDF2MjA3cS05NiA5IC0xODAgOXEtMTM2IDAgLTIxOCAtODAuNXQtODIgLTIyNS41di0xNjZoLTIyNHYtMjI0aDIyNHYtNjA4aC01NDQgcS0xMTkgMCAtMjAzLjUgODQuNXQtODQuNSAyMDMuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDgzOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDB2MTI4MHEwIDUzIDM3LjUgOTAuNXQ5MC41IDM3LjVoMTUzNnE1MyAwIDkwLjUgLTM3LjV0MzcuNSAtOTAuNXYtMTI4MHEwIC01MyAtMzcuNSAtOTAuNXQtOTAuNSAtMzcuNWgtMTUzNnEtNTMgMCAtOTAuNSAzNy41dC0zNy41IDkwLjV6TTEyOCAwaDE1MzZ2MTI4aC0xNTM2di0xMjh6TTEyOCAxMDI0aDE1MzZ2MTE4djEzOGgtODI4bC02NCAtMTI4aC02NDR2LTEyOHpNMjU2IDEyMTZoMzg0djEyOGgtMzg0di0xMjh6TTUxMiA1NzQgcTAgLTE1OSAxMTIuNSAtMjcxLjV0MjcxLjUgLTExMi41dDI3MS41IDExMi41dDExMi41IDI3MS41dC0xMTIuNSAyNzEuNXQtMjcxLjUgMTEyLjV0LTI3MS41IC0xMTIuNXQtMTEyLjUgLTI3MS41ek02NDAgNTc0cTAgMTA2IDc1IDE4MXQxODEgNzV0MTgxIC03NXQ3NSAtMTgxdC03NSAtMTgxdC0xODEgLTc1dC0xODEgNzV0LTc1IDE4MXpNNzM2IDU3NnEwIC0xNCA5IC0yM3QyMyAtOXQyMyA5dDkgMjNxMCA0MCAyOCA2OHQ2OCAyOHExNCAwIDIzIDkgdDkgMjN0LTkgMjN0LTIzIDlxLTY2IDAgLTExMyAtNDd0LTQ3IC0xMTN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA4NDsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCA3NTJxMCAxNjAgOTUgMzEzdDI0OCAyNDh0MzEzIDk1cTE2MyAwIDI2NS41IC0xMDIuNXQxMDIuNSAtMjY1LjVxMCAtMTg5IC0xMzEgLTM2NWwzNTUgLTM1NWw5NiA5NnEtMyAzIC0yNiAyNC41dC00MCAzOC41dC0zMyAzNi41dC0xNiAyOC41cTAgMTcgNDkgNjZ0NjYgNDlxMTMgMCAyMyAtMTBxNiAtNiA0NiAtNDQuNXQ4MiAtNzkuNXQ4Ni41IC04NnQ3MyAtNzh0MjguNSAtNDFxMCAtMTcgLTQ5IC02NnQtNjYgLTQ5IHEtOSAwIC0yOC41IDE2dC0zNi41IDMzdC0zOC41IDQwdC0yNC41IDI2bC05NiAtOTZsMjIwIC0yMjBxMjggLTI4IDI4IC02OHEwIC00MiAtMzkgLTgxdC04MSAtMzlxLTQwIDAgLTY4IDI4bC02NzEgNjcxcS0xNzYgLTEzMSAtMzY1IC0xMzFxLTE2MyAwIC0yNjUuNSAxMDIuNXQtMTAyLjUgMjY1LjV6TTE5MiA3NjhxMCAtODAgNTYgLTEzNnQxMzYgLTU2dDEzNiA1NnQ1NiAxMzZxMCA0MiAtMTkgODNxNDEgLTE5IDgzIC0xOXE4MCAwIDEzNiA1NiB0NTYgMTM2dC01NiAxMzZ0LTEzNiA1NnQtMTM2IC01NnQtNTYgLTEzNnEwIC00MiAxOSAtODNxLTQxIDE5IC04MyAxOXEtODAgMCAtMTM2IC01NnQtNTYgLTEzNnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDg1OyIgaG9yaXotYWR2LXg9IjE5MjAiIGQ9Ik0wIDU0OXYxODVxMCAxMCA3IDE5LjV0MTYgMTAuNWwxNTUgMjRxMTEgMzUgMzIgNzZxLTM0IDQ4IC05MCAxMTVxLTcgMTEgLTcgMjBxMCAxMiA3IDIwcTIyIDMwIDgyIDg5dDc5IDU5cTExIDAgMjEgLTdsMTE1IC05MHEzNCAxOCA3NyAzMnExMSAxMDggMjMgMTU0cTcgMjQgMzAgMjRoMTg2cTExIDAgMjAgLTcuNXQxMCAtMTcuNWwyMyAtMTUzcTM0IC0xMCA3NSAtMzFsMTE4IDg5cTggNyAyMCA3cTExIDAgMjEgLTggcTE0NCAtMTMzIDE0NCAtMTYwcTAgLTkgLTcgLTE5cS0xMiAtMTYgLTQyIC01NHQtNDUgLTYwcTIzIC00OCAzNCAtODJsMTUyIC0yM3ExMCAtMiAxNyAtMTAuNXQ3IC0xOS41di0xODVxMCAtMTAgLTcgLTE5LjV0LTE2IC0xMC41bC0xNTUgLTI0cS0xMSAtMzUgLTMyIC03NnEzNCAtNDggOTAgLTExNXE3IC0xMCA3IC0yMHEwIC0xMiAtNyAtMTlxLTIzIC0zMCAtODIuNSAtODkuNXQtNzguNSAtNTkuNXEtMTEgMCAtMjEgN2wtMTE1IDkwIHEtMzcgLTE5IC03NyAtMzFxLTExIC0xMDggLTIzIC0xNTVxLTcgLTI0IC0zMCAtMjRoLTE4NnEtMTEgMCAtMjAgNy41dC0xMCAxNy41bC0yMyAxNTNxLTM0IDEwIC03NSAzMWwtMTE4IC04OXEtNyAtNyAtMjAgLTdxLTExIDAgLTIxIDhxLTE0NCAxMzMgLTE0NCAxNjBxMCA5IDcgMTlxMTAgMTQgNDEgNTN0NDcgNjFxLTIzIDQ0IC0zNSA4MmwtMTUyIDI0cS0xMCAxIC0xNyA5LjV0LTcgMTkuNXpNMzg0IDY0MHEwIC0xMDYgNzUgLTE4MXQxODEgLTc1IHQxODEgNzV0NzUgMTgxdC03NSAxODF0LTE4MSA3NXQtMTgxIC03NXQtNzUgLTE4MXpNMTE1MiA1OHYxNDBxMCAxNiAxNDkgMzFxMTMgMjkgMzAgNTJxLTUxIDExMyAtNTEgMTM4cTAgNCA0IDdxNCAyIDM1IDIwdDU5IDM0dDMwIDE2cTggMCA0NiAtNDYuNXQ1MiAtNjcuNXEyMCAyIDMwIDJ0MzAgLTJxNTEgNzEgOTIgMTEybDYgMnE0IDAgMTI0IC03MHE0IC0zIDQgLTdxMCAtMjUgLTUxIC0xMzhxMTcgLTIzIDMwIC01MnExNDkgLTE1IDE0OSAtMzEgdi0xNDBxMCAtMTYgLTE0OSAtMzFxLTEyIC0yNyAtMzAgLTUycTUxIC0xMTMgNTEgLTEzOHEwIC00IC00IC03cS0xMjIgLTcxIC0xMjQgLTcxcS04IDAgLTQ2IDQ3dC01MiA2OHEtMjAgLTIgLTMwIC0ydC0zMCAycS0xNCAtMjEgLTUyIC02OHQtNDYgLTQ3cS0yIDAgLTEyNCA3MXEtNCAzIC00IDdxMCAyNSA1MSAxMzhxLTE4IDI1IC0zMCA1MnEtMTQ5IDE1IC0xNDkgMzF6TTExNTIgMTA4MnYxNDBxMCAxNiAxNDkgMzFxMTMgMjkgMzAgNTIgcS01MSAxMTMgLTUxIDEzOHEwIDQgNCA3cTQgMiAzNSAyMHQ1OSAzNHQzMCAxNnE4IDAgNDYgLTQ2LjV0NTIgLTY3LjVxMjAgMiAzMCAydDMwIC0ycTUxIDcxIDkyIDExMmw2IDJxNCAwIDEyNCAtNzBxNCAtMyA0IC03cTAgLTI1IC01MSAtMTM4cTE3IC0yMyAzMCAtNTJxMTQ5IC0xNSAxNDkgLTMxdi0xNDBxMCAtMTYgLTE0OSAtMzFxLTEyIC0yNyAtMzAgLTUycTUxIC0xMTMgNTEgLTEzOHEwIC00IC00IC03cS0xMjIgLTcxIC0xMjQgLTcxIHEtOCAwIC00NiA0N3QtNTIgNjhxLTIwIC0yIC0zMCAtMnQtMzAgMnEtMTQgLTIxIC01MiAtNjh0LTQ2IC00N3EtMiAwIC0xMjQgNzFxLTQgMyAtNCA3cTAgMjUgNTEgMTM4cS0xOCAyNSAtMzAgNTJxLTE0OSAxNSAtMTQ5IDMxek0xNDA4IDEyOHEwIC01MyAzNy41IC05MC41dDkwLjUgLTM3LjV0OTAuNSAzNy41dDM3LjUgOTAuNXEwIDUyIC0zOCA5MHQtOTAgMzh0LTkwIC0zOHQtMzggLTkwek0xNDA4IDExNTJxMCAtNTMgMzcuNSAtOTAuNSB0OTAuNSAtMzcuNXQ5MC41IDM3LjV0MzcuNSA5MC41cTAgNTIgLTM4IDkwdC05MCAzOHQtOTAgLTM4dC0zOCAtOTB6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA4NjsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCA3NjhxMCAxMzkgOTQgMjU3dDI1Ni41IDE4Ni41dDM1My41IDY4LjV0MzUzLjUgLTY4LjV0MjU2LjUgLTE4Ni41dDk0IC0yNTd0LTk0IC0yNTd0LTI1Ni41IC0xODYuNXQtMzUzLjUgLTY4LjVxLTg2IDAgLTE3NiAxNnEtMTI0IC04OCAtMjc4IC0xMjhxLTM2IC05IC04NiAtMTZoLTNxLTExIDAgLTIwLjUgOHQtMTEuNSAyMXEtMSAzIC0xIDYuNXQwLjUgNi41dDIgNmwyLjUgNXQzLjUgNS41dDQgNXQ0LjUgNXQ0IDQuNXE1IDYgMjMgMjUgdDI2IDI5LjV0MjIuNSAyOXQyNSAzOC41dDIwLjUgNDRxLTEyNCA3MiAtMTk1IDE3N3QtNzEgMjI0ek02MTYgMTMycTU4IC00IDg4IC00cTE2MSAwIDMwOSA0NXQyNjQgMTI5cTEyNSA5MiAxOTIgMjEydDY3IDI1NHEwIDc3IC0yMyAxNTJxMTI5IC03MSAyMDQgLTE3OHQ3NSAtMjMwcTAgLTEyMCAtNzEgLTIyNC41dC0xOTUgLTE3Ni41cTEwIC0yNCAyMC41IC00NHQyNSAtMzguNXQyMi41IC0yOXQyNiAtMjkuNXQyMyAtMjVxMSAtMSA0IC00LjUgdDQuNSAtNXQ0IC01dDMuNSAtNS41bDIuNSAtNXQyIC02dDAuNSAtNi41dC0xIC02LjVxLTMgLTE0IC0xMyAtMjJ0LTIyIC03cS01MCA3IC04NiAxNnEtMTU0IDQwIC0yNzggMTI4cS05MCAtMTYgLTE3NiAtMTZxLTI3MSAwIC00NzIgMTMyeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwODc7IiBkPSJNMCAxMjh2NjQwcTAgNTMgMzcuNSA5MC41dDkwLjUgMzcuNWgyNzRxMzYgMjQgMTM3IDE1NXE1OCA3NSAxMDcgMTI4cTI0IDI1IDM1LjUgODUuNXQzMC41IDEyNi41dDYyIDEwOHEzOSAzNyA5MCAzN3E4NCAwIDE1MSAtMzIuNXQxMDIgLTEwMS41dDM1IC0xODZxMCAtOTMgLTQ4IC0xOTJoMTc2cTEwNCAwIDE4MCAtNzZ0NzYgLTE3OXEwIC04OSAtNDkgLTE2M3E5IC0zMyA5IC02OXEwIC03NyAtMzggLTE0NHEzIC0yMSAzIC00MyBxMCAtMTAxIC02MCAtMTc4cTEgLTEzOSAtODUgLTIxOS41dC0yMjcgLTgwLjVoLTM2aC05M3EtOTYgMCAtMTg5LjUgMjIuNXQtMjE2LjUgNjUuNXEtMTE2IDQwIC0xMzggNDBoLTI4OHEtNTMgMCAtOTAuNSAzNy41dC0zNy41IDkwLjV6TTEyOCAxOTJxMCAtMjYgMTkgLTQ1dDQ1IC0xOXQ0NSAxOXQxOSA0NXQtMTkgNDV0LTQ1IDE5dC00NSAtMTl0LTE5IC00NXpNMzg0IDEyOGgzMnExMyAwIDMxLjUgLTN0MzMgLTYuNXQzOCAtMTF0MzUgLTExLjUgdDM1LjUgLTEyLjV0MjkgLTEwLjVxMjExIC03MyAzNDIgLTczaDEyMXExOTIgMCAxOTIgMTY3cTAgMjYgLTUgNTZxMzAgMTYgNDcuNSA1Mi41dDE3LjUgNzMuNXQtMTggNjlxNTMgNTAgNTMgMTE5cTAgMjUgLTEwIDU1LjV0LTI1IDQ3LjVxMzIgMSA1My41IDQ3dDIxLjUgODFxMCA1MSAtMzkgODkuNXQtODkgMzguNWgtMzUycTAgNTggNDggMTU5LjV0NDggMTYwLjVxMCA5OCAtMzIgMTQ1dC0xMjggNDdxLTI2IC0yNiAtMzggLTg1IHQtMzAuNSAtMTI1LjV0LTU5LjUgLTEwOS41cS0yMiAtMjMgLTc3IC05MXEtNCAtNSAtMjMgLTMwdC0zMS41IC00MXQtMzQuNSAtNDIuNXQtNDAgLTQ0dC0zOC41IC0zNS41dC00MCAtMjd0LTM1LjUgLTloLTMydi02NDB6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA4ODsiIGQ9Ik0wIDUxMnY2NDBxMCA1MyAzNy41IDkwLjV0OTAuNSAzNy41aDI4OHEyMiAwIDEzOCA0MHExMjggNDQgMjIzIDY2dDIwMCAyMmgxMTJxMTQwIDAgMjI2LjUgLTc5dDg1LjUgLTIxNnYtNXE2MCAtNzcgNjAgLTE3OHEwIC0yMiAtMyAtNDNxMzggLTY3IDM4IC0xNDRxMCAtMzYgLTkgLTY5cTQ5IC03NCA0OSAtMTYzcTAgLTEwMyAtNzYgLTE3OXQtMTgwIC03NmgtMTc2cTQ4IC05OSA0OCAtMTkycTAgLTExOCAtMzUgLTE4NiBxLTM1IC02OSAtMTAyIC0xMDEuNXQtMTUxIC0zMi41cS01MSAwIC05MCAzN3EtMzQgMzMgLTU0IDgydC0yNS41IDkwLjV0LTE3LjUgODQuNXQtMzEgNjRxLTQ4IDUwIC0xMDcgMTI3cS0xMDEgMTMxIC0xMzcgMTU1aC0yNzRxLTUzIDAgLTkwLjUgMzcuNXQtMzcuNSA5MC41ek0xMjggMTA4OHEwIC0yNiAxOSAtNDV0NDUgLTE5dDQ1IDE5dDE5IDQ1dC0xOSA0NXQtNDUgMTl0LTQ1IC0xOXQtMTkgLTQ1ek0zODQgNTEyaDMycTE2IDAgMzUuNSAtOSB0NDAgLTI3dDM4LjUgLTM1LjV0NDAgLTQ0dDM0LjUgLTQyLjV0MzEuNSAtNDF0MjMgLTMwcTU1IC02OCA3NyAtOTFxNDEgLTQzIDU5LjUgLTEwOS41dDMwLjUgLTEyNS41dDM4IC04NXE5NiAwIDEyOCA0N3QzMiAxNDVxMCA1OSAtNDggMTYwLjV0LTQ4IDE1OS41aDM1MnE1MCAwIDg5IDM4LjV0MzkgODkuNXEwIDM1IC0yMS41IDgxdC01My41IDQ3cTE1IDE3IDI1IDQ3LjV0MTAgNTUuNXEwIDY5IC01MyAxMTlxMTggMzIgMTggNjl0LTE3LjUgNzMuNSB0LTQ3LjUgNTIuNXE1IDMwIDUgNTZxMCA4NSAtNDkgMTI2dC0xMzYgNDFoLTEyOHEtMTMxIDAgLTM0MiAtNzNxLTUgLTIgLTI5IC0xMC41dC0zNS41IC0xMi41dC0zNSAtMTEuNXQtMzggLTExdC0zMyAtNi41dC0zMS41IC0zaC0zMnYtNjQweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwODk7IiBob3Jpei1hZHYteD0iODk2IiBkPSJNMCA4ODlxMCAzNyA1NiA0Nmw1MDIgNzNsMjI1IDQ1NXExOSA0MSA0OSA0MXYtMTMzOWwtNDQ5IC0yMzZxLTIyIC0xMiAtNDAgLTEycS0yMSAwIC0zMS41IDE0LjV0LTEwLjUgMzUuNXEwIDYgMiAyMGw4NiA1MDBsLTM2NCAzNTRxLTI1IDI3IC0yNSA0OHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDhhOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDk0MHEwIDIyMCAxMjcgMzQ0dDM1MSAxMjRxNjIgMCAxMjYuNSAtMjEuNXQxMjAgLTU4dDk1LjUgLTY4LjV0NzYgLTY4cTM2IDM2IDc2IDY4dDk1LjUgNjguNXQxMjAgNTh0MTI2LjUgMjEuNXEyMjQgMCAzNTEgLTEyNHQxMjcgLTM0NHEwIC0yMjEgLTIyOSAtNDUwbC02MjMgLTYwMHEtMTggLTE4IC00NCAtMTh0LTQ0IDE4bC02MjQgNjAycS0xMCA4IC0yNy41IDI2dC01NS41IDY1LjV0LTY4IDk3LjV0LTUzLjUgMTIxdC0yMy41IDEzOHogTTEyOCA5NDBxMCAtMTY4IDE4NyAtMzU1bDU4MSAtNTYwbDU4MCA1NTlxMTg4IDE4OCAxODggMzU2cTAgODEgLTIxLjUgMTQzdC01NSA5OC41dC04MS41IDU5LjV0LTk0IDMxdC05OCA4dC0xMTIgLTI1LjV0LTExMC41IC02NHQtODYuNSAtNzJ0LTYwIC02MS41cS0xOCAtMjIgLTQ5IC0yMnQtNDkgMjJxLTI0IDI4IC02MCA2MS41dC04Ni41IDcydC0xMTAuNSA2NHQtMTEyIDI1LjV0LTk4IC04dC05NCAtMzF0LTgxLjUgLTU5LjV0LTU1IC05OC41IHQtMjEuNSAtMTQzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwOGI7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgMjg4djcwNHEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoMzIwcTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXEwIC00IDEgLTIwdDAuNSAtMjYuNXQtMyAtMjMuNXQtMTAgLTE5LjV0LTIwLjUgLTYuNWgtMzIwcS02NiAwIC0xMTMgLTQ3dC00NyAtMTEzdi03MDRxMCAtNjYgNDcgLTExM3QxMTMgLTQ3aDI4OGgxMWgxM3QxMS41IC0xdDExLjUgLTN0OCAtNS41dDcgLTl0MiAtMTMuNXEwIC00IDEgLTIwdDAuNSAtMjYuNXQtMyAtMjMuNSB0LTEwIC0xOS41dC0yMC41IC02LjVoLTMyMHEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTM4NCA0NDh2Mzg0cTAgMjYgMTkgNDV0NDUgMTloNDQ4djI4OHEwIDI2IDE5IDQ1dDQ1IDE5dDQ1IC0xOWw1NDQgLTU0NHExOSAtMTkgMTkgLTQ1dC0xOSAtNDVsLTU0NCAtNTQ0cS0xOSAtMTkgLTQ1IC0xOXQtNDUgMTl0LTE5IDQ1djI4OGgtNDQ4cS0yNiAwIC00NSAxOXQtMTkgNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA4YzsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0yMjMgMTAzMHEwIC01MSAzNS41IC04NS41dDkyLjUgLTM0LjVoMXE1OSAwIDk1IDM0LjV0MzYgODUuNXEtMSA1MiAtMzYgODZ0LTkzIDM0dC05NC41IC0zNHQtMzYuNSAtODZ6IE0yMzcgMTIyaDIzMXY2OTRoLTIzMXYtNjk0ek01OTUgMTIyaDIzMXYzODhxMCAzOCA3IDU2cTE1IDM1IDQ1IDU5LjV0NzQgMjQuNXExMTYgMCAxMTYgLTE1N3YtMzcxaDIzMXYzOThxMCAxNTQgLTczIDIzM3QtMTkzIDc5cS0xMzYgMCAtMjA5IC0xMTdoMnYxMDFoLTIzMXEzIC02NiAwIC02OTR6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA4ZDsiIGhvcml6LWFkdi14PSIxMTUyIiBkPSJNMCAzMjBxMCAxMjMgNzguNSAyMjEuNXQxNzcuNSA5OC41djUxMnEtNTIgMCAtOTAgMzh0LTM4IDkwdDM4IDkwdDkwIDM4aDY0MHE1MiAwIDkwIC0zOHQzOCAtOTB0LTM4IC05MHQtOTAgLTM4di01MTJxOTkgMCAxNzcuNSAtOTguNXQ3OC41IC0yMjEuNXEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTQyOWwtNTEgLTQ4M3EtMiAtMTIgLTEwLjUgLTIwLjV0LTIwLjUgLTguNWgtMXEtMjcgMCAtMzIgMjdsLTc2IDQ4NWgtNDA0cS0yNiAwIC00NSAxOSB0LTE5IDQ1ek00MTYgNjcycTAgLTE0IDkgLTIzdDIzIC05dDIzIDl0OSAyM3Y0NDhxMCAxNCAtOSAyM3QtMjMgOXQtMjMgLTl0LTkgLTIzdi00NDh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA4ZTsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCAyODh2ODMycTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNWg3MDRxMTQgMCAyMyAtOXQ5IC0yM3YtNjRxMCAtMTQgLTkgLTIzdC0yMyAtOWgtNzA0cS02NiAwIC0xMTMgLTQ3dC00NyAtMTEzdi04MzJxMCAtNjYgNDcgLTExM3QxMTMgLTQ3aDgzMnE2NiAwIDExMyA0N3Q0NyAxMTN2MzIwcTAgMTQgOSAyM3QyMyA5aDY0cTE0IDAgMjMgLTl0OSAtMjN2LTMyMHEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtODMyIHEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTY4NSA1NzZxMCAxMyAxMCAyM2w2NTIgNjUybC0xNzYgMTc2cS0xOSAxOSAtMTkgNDV0MTkgNDV0NDUgMTloNTEycTI2IDAgNDUgLTE5dDE5IC00NXYtNTEycTAgLTI2IC0xOSAtNDV0LTQ1IC0xOXQtNDUgMTlsLTE3NiAxNzZsLTY1MiAtNjUycS0xMCAtMTAgLTIzIC0xMHQtMjMgMTBsLTExNCAxMTRxLTEwIDEwIC0xMCAyM3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDkwOyIgZD0iTTAgNDQ4djM4NHEwIDI2IDE5IDQ1dDQ1IDE5aDQ0OHYyODhxMCAyNiAxOSA0NXQ0NSAxOXQ0NSAtMTlsNTQ0IC01NDRxMTkgLTE5IDE5IC00NXQtMTkgLTQ1bC01NDQgLTU0NHEtMTkgLTE5IC00NSAtMTl0LTQ1IDE5dC0xOSA0NXYyODhoLTQ0OHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek04OTQuNSA3OC41cTAuNSAxMC41IDMgMjMuNXQxMCAxOS41dDIwLjUgNi41aDMyMHE2NiAwIDExMyA0N3Q0NyAxMTN2NzA0cTAgNjYgLTQ3IDExMyB0LTExMyA0N2gtMjg4aC0xMWgtMTN0LTExLjUgMXQtMTEuNSAzdC04IDUuNXQtNyA5dC0yIDEzLjVxMCA0IC0xIDIwdC0wLjUgMjYuNXQzIDIzLjV0MTAgMTkuNXQyMC41IDYuNWgzMjBxMTE5IDAgMjAzLjUgLTg0LjV0ODQuNSAtMjAzLjV2LTcwNHEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtMzIwcS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjVxMCA0IC0xIDIwdC0wLjUgMjYuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDkxOyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0wIDkyOHYxMjhxMCA0MCAyOCA2OHQ2OCAyOGgyODh2OTZxMCA2NiA0NyAxMTN0MTEzIDQ3aDU3NnE2NiAwIDExMyAtNDd0NDcgLTExM3YtOTZoMjg4cTQwIDAgNjggLTI4dDI4IC02OHYtMTI4cTAgLTcxIC00MS41IC0xNDN0LTExMiAtMTMwdC0xNzMgLTk3LjV0LTIxNS41IC00NC41cS00MiAtNTQgLTk1IC05NXEtMzggLTM0IC01Mi41IC03Mi41dC0xNC41IC04OS41cTAgLTU0IDMwLjUgLTkxdDk3LjUgLTM3cTc1IDAgMTMzLjUgLTQ1LjUgdDU4LjUgLTExNC41di02NHEwIC0xNCAtOSAtMjN0LTIzIC05aC04MzJxLTE0IDAgLTIzIDl0LTkgMjN2NjRxMCA2OSA1OC41IDExNC41dDEzMy41IDQ1LjVxNjcgMCA5Ny41IDM3dDMwLjUgOTFxMCA1MSAtMTQuNSA4OS41dC01Mi41IDcyLjVxLTUzIDQxIC05NSA5NXEtMTEzIDUgLTIxNS41IDQ0LjV0LTE3MyA5Ny41dC0xMTIgMTMwdC00MS41IDE0M3pNMTI4IDkyOHEwIC03OCA5NC41IC0xNjJ0MjM1LjUgLTExM3EtNzQgMTYyIC03NCAzNzEgaC0yNTZ2LTk2ek0xMjA2IDY1M3ExNDEgMjkgMjM1LjUgMTEzdDk0LjUgMTYydjk2aC0yNTZxMCAtMjA5IC03NCAtMzcxeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwOTI7IiBkPSJNMCAxNjB2OTYwcTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNWg5NjBxMTE5IDAgMjAzLjUgLTg0LjV0ODQuNSAtMjAzLjV2LTk2MHEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtMjI0cS0xNiAwIC0yNC41IDF0LTE5LjUgNXQtMTYgMTQuNXQtNSAyNy41djIzOXEwIDk3IC01MiAxNDJxNTcgNiAxMDIuNSAxOHQ5NCAzOXQ4MSA2Ni41dDUzIDEwNXQyMC41IDE1MC41cTAgMTIxIC03OSAyMDZxMzcgOTEgLTggMjA0IHEtMjggOSAtODEgLTExdC05MiAtNDRsLTM4IC0yNHEtOTMgMjYgLTE5MiAyNnQtMTkyIC0yNnEtMTYgMTEgLTQyLjUgMjd0LTgzLjUgMzguNXQtODYgMTMuNXEtNDQgLTExMyAtNyAtMjA0cS03OSAtODUgLTc5IC0yMDZxMCAtODUgMjAuNSAtMTUwdDUyLjUgLTEwNXQ4MC41IC02N3Q5NCAtMzl0MTAyLjUgLTE4cS00MCAtMzYgLTQ5IC0xMDNxLTIxIC0xMCAtNDUgLTE1dC01NyAtNXQtNjUuNSAyMS41dC01NS41IDYyLjVxLTE5IDMyIC00OC41IDUyIHQtNDkuNSAyNGwtMjAgM3EtMjEgMCAtMjkgLTQuNXQtNSAtMTEuNXQ5IC0xNHQxMyAtMTJsNyAtNXEyMiAtMTAgNDMuNSAtMzh0MzEuNSAtNTFsMTAgLTIzcTEzIC0zOCA0NCAtNjEuNXQ2NyAtMzB0NjkuNSAtN3Q1NS41IDMuNWwyMyA0cTAgLTM4IDAuNSAtMTAzdDAuNSAtNjhxMCAtMjIgLTExIC0zMy41dC0yMiAtMTN0LTMzIC0xLjVoLTIyNHEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTI3MSAzMTVxMyA1IDEzIDIgcTEwIC01IDcgLTEycS01IC03IC0xMyAtMnEtMTAgNSAtNyAxMnpNMzA0IDI5MHE2IDYgMTYgLTNxOSAtMTEgMiAtMTZxLTYgLTcgLTE2IDNxLTkgMTEgLTIgMTZ6TTMzNSAyMzNxLTkgMTMgMCAxOHE5IDcgMTcgLTZxOSAtMTIgMCAtMTlxLTggLTYgLTE3IDd6TTM3MCAyMDZxOCA5IDIwIC0zcTEyIC0xMSA0IC0xOXEtOCAtOSAtMjAgM3EtMTMgMTEgLTQgMTl6TTQxOSAxNjhxNCAxMSAxOSA3cTE2IC01IDEzIC0xNnEtNCAtMTIgLTE5IC02IHEtMTcgNCAtMTMgMTV6TTQ4MSAxNTRxMCAxMSAxNiAxMXExNyAyIDE3IC0xMXEwIC0xMSAtMTYgLTExcS0xNyAtMiAtMTcgMTF6TTU0MCAxNThxLTIgMTIgMTQgMTVxMTYgMiAxOCAtOXEyIC0xMCAtMTQgLTE0dC0xOCA4eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwOTM7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgLTMydjMyMHEwIDQwIDI4IDY4dDY4IDI4aDQyN3EyMSAtNTYgNzAuNSAtOTJ0MTEwLjUgLTM2aDI1NnE2MSAwIDExMC41IDM2dDcwLjUgOTJoNDI3cTQwIDAgNjggLTI4dDI4IC02OHYtMzIwcTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMTQ3MnEtNDAgMCAtNjggMjh0LTI4IDY4ek0zMjUgOTM2cS0xNyAzOSAxNCA2OWw0NDggNDQ4cTE4IDE5IDQ1IDE5dDQ1IC0xOWw0NDggLTQ0OHEzMSAtMzAgMTQgLTY5cS0xNyAtNDAgLTU5IC00MCBoLTI1NnYtNDQ4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMjU2cS0yNiAwIC00NSAxOXQtMTkgNDV2NDQ4aC0yNTZxLTQyIDAgLTU5IDQwek0xMTUyIDY0cTAgLTI2IDE5IC00NXQ0NSAtMTl0NDUgMTl0MTkgNDV0LTE5IDQ1dC00NSAxOXQtNDUgLTE5dC0xOSAtNDV6TTE0MDggNjRxMCAtMjYgMTkgLTQ1dDQ1IC0xOXQ0NSAxOXQxOSA0NXQtMTkgNDV0LTQ1IDE5dC00NSAtMTl0LTE5IC00NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDk0OyIgZD0iTTAgNDMzcTAgMTExIDE4IDIxNy41dDU0LjUgMjA5LjV0MTAwLjUgMTk0dDE1MCAxNTZxNzggNTkgMjMyIDEyMHExOTQgNzggMzE2IDc4cTYwIDAgMTc1LjUgLTI0dDE3My41IC0yNHExOSAwIDU3IDV0NTggNXE4MSAwIDExOCAtNTAuNXQzNyAtMTM0LjVxMCAtMjMgLTUgLTY4dC01IC02OHEwIC0xMCAxIC0xOC41dDMgLTE3dDQgLTEzLjV0Ni41IC0xNnQ2LjUgLTE3cTE2IC00MCAyNSAtMTE4LjV0OSAtMTM2LjVxMCAtMTY1IC03MCAtMzI3LjUgdC0xOTYgLTI4OHQtMjgxIC0xODAuNXEtMTI0IC00NCAtMzI2IC00NHEtNTcgMCAtMTcwIDE0LjV0LTE2OSAxNC41cS0yNCAwIC03Mi41IC0xNC41dC03My41IC0xNC41cS03MyAwIC0xMjMuNSA1NS41dC01MC41IDEyOC41cTAgMjQgMTEgNjh0MTEgNjdxMCA0MCAtMTIuNSAxMjAuNXQtMTIuNSAxMjEuNXpNMTI4IDQzNHEwIC00MCAxMi41IC0xMjB0MTIuNSAtMTIxcTAgLTIzIC0xMSAtNjYuNXQtMTEgLTY1LjV0MTIgLTM2LjV0MzQgLTE0LjUgcTI0IDAgNzIuNSAxMXQ3My41IDExcTU3IDAgMTY5LjUgLTE1LjV0MTY5LjUgLTE1LjVxMTgxIDAgMjg0IDM2cTEyOSA0NSAyMzUuNSAxNTIuNXQxNjYgMjQ1LjV0NTkuNSAyNzVxMCA0NCAtNyAxMTMuNXQtMTggOTYuNXEtMTIgMzAgLTE3IDQ0dC05IDM2LjV0LTQgNDguNXEwIDIzIDUgNjguNXQ1IDY3LjVxMCAzNyAtMTAgNTVxLTQgMSAtMTMgMXEtMTkgMCAtNTggLTQuNXQtNTkgLTQuNXEtNjAgMCAtMTc2IDI0dC0xNzUgMjQgcS00MyAwIC05NC41IC0xMS41dC04NSAtMjMuNXQtODkuNSAtMzRxLTEzNyAtNTQgLTIwMiAtMTAzcS05NiAtNzMgLTE1OS41IC0xODkuNXQtODggLTIzNnQtMjQuNSAtMjQ4LjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA5NTsiIGhvcml6LWFkdi14PSIxNDA4IiBkPSJNMCAxMDY5cTAgOTIgNTEgMTg2cTU2IDEwMSAxMDYgMTIycTI1IDExIDY4LjUgMjF0NzAuNSAxMHExNCAwIDIxIC0zcTE4IC02IDUzIC03NnExMSAtMTkgMzAgLTU0dDM1IC02My41dDMxIC01My41cTMgLTQgMTcuNSAtMjV0MjEuNSAtMzUuNXQ3IC0yOC41cTAgLTIwIC0yOC41IC01MHQtNjIgLTU1dC02MiAtNTN0LTI4LjUgLTQ2cTAgLTkgNSAtMjIuNXQ4LjUgLTIwLjV0MTQgLTI0dDExLjUgLTE5cTc2IC0xMzcgMTc0IC0yMzUgdDIzNSAtMTc0cTIgLTEgMTkgLTExLjV0MjQgLTE0dDIwLjUgLTguNXQyMi41IC01cTE4IDAgNDYgMjguNXQ1MyA2MnQ1NSA2MnQ1MCAyOC41cTE0IDAgMjguNSAtN3QzNS41IC0yMS41dDI1IC0xNy41cTI1IC0xNSA1My41IC0zMXQ2My41IC0zNXQ1NCAtMzBxNzAgLTM1IDc2IC01M3EzIC03IDMgLTIxcTAgLTI3IC0xMCAtNzAuNXQtMjEgLTY4LjVxLTIxIC01MCAtMTIyIC0xMDZxLTk0IC01MSAtMTg2IC01MXEtMjcgMCAtNTIuNSAzLjUgdC01Ny41IDEyLjV0LTQ3LjUgMTQuNXQtNTUuNSAyMC41dC00OSAxOHEtOTggMzUgLTE3NSA4M3EtMTI4IDc5IC0yNjQuNSAyMTUuNXQtMjE1LjUgMjY0LjVxLTQ4IDc3IC04MyAxNzVxLTMgOSAtMTggNDl0LTIwLjUgNTUuNXQtMTQuNSA0Ny41dC0xMi41IDU3LjV0LTMuNSA1Mi41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwOTY7IiBob3Jpei1hZHYteD0iMTQwOCIgZD0iTTAgMjg4djgzMnEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoODMycTExOSAwIDIwMy41IC04NC41dDg0LjUgLTIwMy41di04MzJxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTgzMnEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTEyOCAyODhxMCAtNjYgNDcgLTExM3QxMTMgLTQ3aDgzMnE2NiAwIDExMyA0N3Q0NyAxMTN2ODMycTAgNjYgLTQ3IDExM3QtMTEzIDQ3aC04MzJxLTY2IDAgLTExMyAtNDcgdC00NyAtMTEzdi04MzJ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA5NzsiIGhvcml6LWFkdi14PSIxMjgwIiBkPSJNMCA3djEyODlxMCAzNCAxOS41IDYydDUyLjUgNDFxMjEgOSA0NCA5aDEwNDhxMjMgMCA0NCAtOXEzMyAtMTMgNTIuNSAtNDF0MTkuNSAtNjJ2LTEyODlxMCAtMzQgLTE5LjUgLTYydC01Mi41IC00MXEtMTkgLTggLTQ0IC04cS00OCAwIC04MyAzMmwtNDQxIDQyNGwtNDQxIC00MjRxLTM2IC0zMyAtODMgLTMzcS0yMyAwIC00NCA5cS0zMyAxMyAtNTIuNSA0MXQtMTkuNSA2MnpNMTI4IDM4bDQyMyA0MDZsODkgODVsODkgLTg1bDQyMyAtNDA2IHYxMjQyaC0xMDI0di0xMjQyeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwOTg7IiBkPSJNMCAxNjB2OTYwcTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNWg5NjBxMTE5IDAgMjAzLjUgLTg0LjV0ODQuNSAtMjAzLjV2LTk2MHEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtOTYwcS0xMTkgMCAtMjAzLjUgODQuNXQtODQuNSAyMDMuNXpNMjU2IDkwNXEwIC0xNiAyLjUgLTM0dDUgLTMwLjV0OSAtMzN0MTAgLTI5LjV0MTIuNSAtMzN0MTEgLTMwcTYwIC0xNjQgMjE2LjUgLTMyMC41dDMyMC41IC0yMTYuNSBxNiAtMiAzMCAtMTF0MzMgLTEyLjV0MjkuNSAtMTB0MzMgLTl0MzAuNSAtNXQzNCAtMi41cTU3IDAgMTMwLjUgMzR0OTQuNSA4MHEyMiA1MyAyMiAxMDFxMCAxMSAtMiAxNnEtMyA4IC0zOC41IDI5LjV0LTg4LjUgNDkuNWwtNTMgMjlxLTUgMyAtMTkgMTN0LTI1IDE1dC0yMSA1cS0xOCAwIC00NyAtMzIuNXQtNTcgLTY1LjV0LTQ0IC0zM3EtNyAwIC0xNi41IDMuNXQtMTUuNSA2LjV0LTE3IDkuNXQtMTQgOC41cS05OSA1NSAtMTcwLjUgMTI2LjUgdC0xMjYuNSAxNzAuNXEtMiAzIC04LjUgMTR0LTkuNSAxN3QtNi41IDE1LjV0LTMuNSAxNi41cTAgMTMgMjAuNSAzMy41dDQ1IDM4LjV0NDUgMzkuNXQyMC41IDM2LjVxMCAxMCAtNSAyMXQtMTUgMjV0LTEzIDE5cS0zIDYgLTE1IDI4LjV0LTI1IDQ1LjV0LTI2LjUgNDcuNXQtMjUgNDAuNXQtMTYuNSAxOHQtMTYgMnEtNDggMCAtMTAxIC0yMnEtNDYgLTIxIC04MCAtOTQuNXQtMzQgLTEzMC41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwOTk7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTQ0IDE0NXEzNSAtNCA3OCAtNHEyMjUgMCA0MDEgMTM4cS0xMDUgMiAtMTg4IDY0LjV0LTExNCAxNTkuNXEzMyAtNSA2MSAtNXE0MyAwIDg1IDExcS0xMTIgMjMgLTE4NS41IDExMS41dC03My41IDIwNS41djRxNjggLTM4IDE0NiAtNDFxLTY2IDQ0IC0xMDUgMTE1dC0zOSAxNTRxMCA4OCA0NCAxNjNxMTIxIC0xNDkgMjk0LjUgLTIzOC41dDM3MS41IC05OS41cS04IDM4IC04IDc0cTAgMTM0IDk0LjUgMjI4LjV0MjI4LjUgOTQuNSBxMTQwIDAgMjM2IC0xMDJxMTA5IDIxIDIwNSA3OHEtMzcgLTExNSAtMTQyIC0xNzhxOTMgMTAgMTg2IDUwcS02NyAtOTggLTE2MiAtMTY3cTEgLTE0IDEgLTQycTAgLTEzMCAtMzggLTI1OS41dC0xMTUuNSAtMjQ4LjV0LTE4NC41IC0yMTAuNXQtMjU4IC0xNDZ0LTMyMyAtNTQuNXEtMjcxIDAgLTQ5NiAxNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA5YTsiIGhvcml6LWFkdi14PSIxMDI0IiBkPSJNOTUgNjMxdjI5NmgyNTV2MjE4cTAgMTg2IDEwNCAyODguNXQyNzcgMTAyLjVxMTQ3IDAgMjI4IC0xMnYtMjY0aC0xNTdxLTg2IDAgLTExNiAtMzZ0LTMwIC0xMDh2LTE4OWgyOTNsLTM5IC0yOTZoLTI1NHYtNzU5aC0zMDZ2NzU5aC0yNTV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA5YjsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjVxMCAtMjUxIC0xNDYuNSAtNDUxLjV0LTM3OC41IC0yNzcuNXEtMjcgLTUgLTM5LjUgN3QtMTIuNSAzMHYyMTFxMCA5NyAtNTIgMTQycTU3IDYgMTAyLjUgMTh0OTQgMzl0ODEgNjYuNXQ1MyAxMDV0MjAuNSAxNTAuNXEwIDEyMSAtNzkgMjA2cTM3IDkxIC04IDIwNHEtMjggOSAtODEgLTExdC05MiAtNDQgbC0zOCAtMjRxLTkzIDI2IC0xOTIgMjZ0LTE5MiAtMjZxLTE2IDExIC00Mi41IDI3dC04My41IDM4LjV0LTg2IDEzLjVxLTQ0IC0xMTMgLTcgLTIwNHEtNzkgLTg1IC03OSAtMjA2cTAgLTg1IDIwLjUgLTE1MHQ1Mi41IC0xMDV0ODAuNSAtNjd0OTQgLTM5dDEwMi41IC0xOHEtNDAgLTM2IC00OSAtMTAzcS0yMSAtMTAgLTQ1IC0xNXQtNTcgLTV0LTY1LjUgMjEuNXQtNTUuNSA2Mi41cS0xOSAzMiAtNDguNSA1MnQtNDkuNSAyNGwtMjAgMyBxLTIxIDAgLTI5IC00LjV0LTUgLTExLjV0OSAtMTR0MTMgLTEybDcgLTVxMjIgLTEwIDQzLjUgLTM4dDMxLjUgLTUxbDEwIC0yM3ExMyAtMzggNDQgLTYxLjV0NjcgLTMwdDY5LjUgLTd0NTUuNSAzLjVsMjMgNHEwIC0zOCAwLjUgLTg5dDAuNSAtNTRxMCAtMTggLTEzIC0zMHQtNDAgLTdxLTIzMiA3NyAtMzc4LjUgMjc3LjV0LTE0Ni41IDQ1MS41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwOWM7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgOTZ2NTc2cTAgNDAgMjggNjh0NjggMjhoNjcydjE5MnEwIDE4NSAxMzEuNSAzMTYuNXQzMTYuNSAxMzEuNXQzMTYuNSAtMTMxLjV0MTMxLjUgLTMxNi41di0yNTZxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC02NHEtMjYgMCAtNDUgMTl0LTE5IDQ1djI1NnEwIDEwNiAtNzUgMTgxdC0xODEgNzV0LTE4MSAtNzV0LTc1IC0xODF2LTE5Mmg5NnE0MCAwIDY4IC0yOHQyOCAtNjh2LTU3NnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTk2MCBxLTQwIDAgLTY4IDI4dC0yOCA2OHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMDlkOyIgaG9yaXotYWR2LXg9IjE5MjAiIGQ9Ik0wIDMydjEyMTZxMCA2NiA0NyAxMTN0MTEzIDQ3aDE2MDBxNjYgMCAxMTMgLTQ3dDQ3IC0xMTN2LTEyMTZxMCAtNjYgLTQ3IC0xMTN0LTExMyAtNDdoLTE2MDBxLTY2IDAgLTExMyA0N3QtNDcgMTEzek0xMjggMzJxMCAtMTMgOS41IC0yMi41dDIyLjUgLTkuNWgxNjAwcTEzIDAgMjIuNSA5LjV0OS41IDIyLjV2NjA4aC0xNjY0di02MDh6TTEyOCAxMDI0aDE2NjR2MjI0cTAgMTMgLTkuNSAyMi41dC0yMi41IDkuNWgtMTYwMCBxLTEzIDAgLTIyLjUgLTkuNXQtOS41IC0yMi41di0yMjR6TTI1NiAxMjh2MTI4aDI1NnYtMTI4aC0yNTZ6TTY0MCAxMjh2MTI4aDM4NHYtMTI4aC0zODR6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjA5ZTsiIGhvcml6LWFkdi14PSIxNDA4IiBkPSJNMCAxOTJxMCA4MCA1NiAxMzZ0MTM2IDU2dDEzNiAtNTZ0NTYgLTEzNnQtNTYgLTEzNnQtMTM2IC01NnQtMTM2IDU2dC01NiAxMzZ6TTAgNjk3djEzNXEwIDI5IDIxIDQ3cTE3IDE3IDQzIDE3aDVxMTYwIC0xMyAzMDYgLTgwLjV0MjU5IC0xODEuNXExMTQgLTExMyAxODEuNSAtMjU5dDgwLjUgLTMwNnEyIC0yOCAtMTcgLTQ4cS0xOCAtMjEgLTQ3IC0yMWgtMTM1cS0yNSAwIC00MyAxNi41dC0yMCA0MS41cS0yMiAyMjkgLTE4NC41IDM5MS41IHQtMzkxLjUgMTg0LjVxLTI1IDIgLTQxLjUgMjB0LTE2LjUgNDN6TTAgMTIwMXYxNDNxMCAyOCAyMCA0NnExOCAxOCA0NCAxOGgzcTI2MiAtMTMgNTAxLjUgLTEyMHQ0MjUuNSAtMjk0cTE4NyAtMTg2IDI5NCAtNDI1LjV0MTIwIC01MDEuNXEyIC0yNyAtMTggLTQ3cS0xOCAtMjAgLTQ2IC0yMGgtMTQzcS0yNiAwIC00NC41IDE3LjV0LTE5LjUgNDIuNXEtMTIgMjE1IC0xMDEgNDA4LjV0LTIzMS41IDMzNnQtMzM2IDIzMS41dC00MDguNSAxMDIgcS0yNSAxIC00Mi41IDE5LjV0LTE3LjUgNDMuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGEwOyIgZD0iTTAgMTYwdjMyMHEwIDI1IDE2IDc1bDE5NyA2MDZxMTcgNTMgNjMgODZ0MTAxIDMzaDc4MnE1NSAwIDEwMSAtMzN0NjMgLTg2bDE5NyAtNjA2cTE2IC01MCAxNiAtNzV2LTMyMHEwIC02NiAtNDcgLTExM3QtMTEzIC00N2gtMTIxNnEtNjYgMCAtMTEzIDQ3dC00NyAxMTN6TTEyOCAxNjBxMCAtMTMgOS41IC0yMi41dDIyLjUgLTkuNWgxMjE2cTEzIDAgMjIuNSA5LjV0OS41IDIyLjV2MzIwcTAgMTMgLTkuNSAyMi41dC0yMi41IDkuNWgtMTIxNiBxLTEzIDAgLTIyLjUgLTkuNXQtOS41IC0yMi41di0zMjB6TTE3OCA2NDBoMTE4MGwtMTU3IDQ4MnEtNCAxMyAtMTYgMjEuNXQtMjYgOC41aC03ODJxLTE0IDAgLTI2IC04LjV0LTE2IC0yMS41ek04ODAgMzIwcTAgMzMgMjMuNSA1Ni41dDU2LjUgMjMuNXQ1Ni41IC0yMy41dDIzLjUgLTU2LjV0LTIzLjUgLTU2LjV0LTU2LjUgLTIzLjV0LTU2LjUgMjMuNXQtMjMuNSA1Ni41ek0xMTM2IDMyMHEwIDMzIDIzLjUgNTYuNXQ1Ni41IDIzLjUgdDU2LjUgLTIzLjV0MjMuNSAtNTYuNXQtMjMuNSAtNTYuNXQtNTYuNSAtMjMuNXQtNTYuNSAyMy41dC0yMy41IDU2LjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBhMTsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCA2NzJ2MTkycTAgNjYgNDcgMTEzdDExMyA0N2g0ODBxNDM1IDAgODk2IDM4NHE1MiAwIDkwIC0zOHQzOCAtOTB2LTM4NHE1MyAwIDkwLjUgLTM3LjV0MzcuNSAtOTAuNXQtMzcuNSAtOTAuNXQtOTAuNSAtMzcuNXYtMzg0cTAgLTUyIC0zOCAtOTB0LTkwIC0zOHEtNDE3IDM0NyAtODEyIDM4MHEtNTggLTE5IC05MSAtNjZ0LTMxIC0xMDAuNXQ0MCAtOTIuNXEtMjAgLTMzIC0yMyAtNjUuNXQ2IC01OHQzMy41IC01NXQ0OCAtNTAgdDYxLjUgLTUwLjVxLTI5IC01OCAtMTExLjUgLTgzdC0xNjguNSAtMTEuNXQtMTMyIDU1LjVxLTcgMjMgLTI5LjUgODcuNXQtMzIgOTQuNXQtMjMgODl0LTE1IDEwMXQzLjUgOTguNXQyMiAxMTAuNWgtMTIycS02NiAwIC0xMTMgNDd0LTQ3IDExM3pNNzY4IDYzM3EzNzcgLTQyIDc2OCAtMzQxdjk1NHEtMzk0IC0zMDIgLTc2OCAtMzQzdi0yNzB6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBhMjsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCAxMjhxMTkwIDE2MSAyODcgMzk3LjV0OTcgNDk4LjVxMCAxNjUgOTYgMjYydDI2NCAxMTdxLTggMTggLTggMzdxMCA0MCAyOCA2OHQ2OCAyOHQ2OCAtMjh0MjggLTY4cTAgLTE5IC04IC0zN3ExNjggLTIwIDI2NCAtMTE3dDk2IC0yNjJxMCAtMjYyIDk3IC00OTguNXQyODcgLTM5Ny41cTAgLTUyIC0zOCAtOTB0LTkwIC0zOGgtNDQ4cTAgLTEwNiAtNzUgLTE4MXQtMTgxIC03NXQtMTgxIDc1dC03NSAxODFoLTQ0OHEtNTIgMCAtOTAgMzggdC0zOCA5MHpNMTgzIDEyOGgxMjk4cS0xNjQgMTgxIC0yNDYuNSA0MTEuNXQtODIuNSA0ODQuNXEwIDI1NiAtMzIwIDI1NnQtMzIwIC0yNTZxMCAtMjU0IC04Mi41IC00ODQuNXQtMjQ2LjUgLTQxMS41ek02NTYgMHEwIC03MyA1MS41IC0xMjQuNXQxMjQuNSAtNTEuNXExNiAwIDE2IDE2dC0xNiAxNnEtNTkgMCAtMTAxLjUgNDIuNXQtNDIuNSAxMDEuNXEwIDE2IC0xNiAxNnQtMTYgLTE2eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwYTM7IiBkPSJNMiA0MzVxLTEwIDQyIDIwIDcwbDEzOCAxMzVsLTEzOCAxMzVxLTMwIDI4IC0yMCA3MHExMiA0MSA1MiA1MWwxODggNDhsLTUzIDE4NnEtMTIgNDEgMTkgNzBxMjkgMzEgNzAgMTlsMTg2IC01M2w0OCAxODhxMTAgNDEgNTEgNTFxNDEgMTIgNzAgLTE5bDEzNSAtMTM5bDEzNSAxMzlxMjkgMzAgNzAgMTlxNDEgLTEwIDUxIC01MWw0OCAtMTg4bDE4NiA1M3E0MSAxMiA3MCAtMTlxMzEgLTI5IDE5IC03MGwtNTMgLTE4NmwxODggLTQ4IHE0MCAtMTAgNTIgLTUxcTEwIC00MiAtMjAgLTcwbC0xMzggLTEzNWwxMzggLTEzNXEzMCAtMjggMjAgLTcwcS0xMiAtNDEgLTUyIC01MWwtMTg4IC00OGw1MyAtMTg2cTEyIC00MSAtMTkgLTcwcS0yOSAtMzEgLTcwIC0xOWwtMTg2IDUzbC00OCAtMTg4cS0xMCAtNDAgLTUxIC01MnEtMTIgLTIgLTE5IC0ycS0zMSAwIC01MSAyMmwtMTM1IDEzOGwtMTM1IC0xMzhxLTI4IC0zMCAtNzAgLTIwcS00MSAxMSAtNTEgNTJsLTQ4IDE4OGwtMTg2IC01MyBxLTQxIC0xMiAtNzAgMTlxLTMxIDI5IC0xOSA3MGw1MyAxODZsLTE4OCA0OHEtNDAgMTAgLTUyIDUxeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwYTQ7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgMTI4djY0MHEwIDUzIDM3LjUgOTAuNXQ5MC41IDM3LjVoMjg4cTEwIDAgMjEuNSA0LjV0MjMuNSAxNHQyMi41IDE4dDI0IDIyLjV0MjAuNSAyMS41dDE5IDIxLjV0MTQgMTdxNjUgNzQgMTAwIDEyOXExMyAyMSAzMyA2MnQzNyA3MnQ0MC41IDYzdDU1IDQ5LjV0NjkuNSAxNy41cTEyNSAwIDIwNi41IC02N3Q4MS41IC0xODlxMCAtNjggLTIyIC0xMjhoMzc0cTEwNCAwIDE4MCAtNzZ0NzYgLTE3OXEwIC0xMDUgLTc1LjUgLTE4MSB0LTE4MC41IC03NmgtMTY5cS00IC02MiAtMzcgLTExOXEzIC0yMSAzIC00M3EwIC0xMDEgLTYwIC0xNzhxMSAtMTM5IC04NSAtMjE5LjV0LTIyNyAtODAuNXEtMTMzIDAgLTMyMiA2OXEtMTY0IDU5IC0yMjMgNTloLTI4OHEtNTMgMCAtOTAuNSAzNy41dC0zNy41IDkwLjV6TTEyOCAxOTJxMCAtMjYgMTkgLTQ1dDQ1IC0xOXQ0NSAxOXQxOSA0NXQtMTkgNDV0LTQ1IDE5dC00NSAtMTl0LTE5IC00NXpNMzg0IDEyOGgzMnE3MiAwIDE2NyAtMzIgdDE5My41IC02NHQxNzkuNSAtMzJxMTg5IDAgMTg5IDE2N3EwIDI2IC01IDU2cTMwIDE2IDQ3LjUgNTIuNXQxNy41IDczLjV0LTE4IDY5cTUzIDUwIDUzIDExOXEwIDI1IC0xMCA1NS41dC0yNSA0Ny41aDMzMXE1MiAwIDkwIDM4dDM4IDkwcTAgNTEgLTM5IDg5LjV0LTg5IDM4LjVoLTU3NnEwIDIwIDE1IDQ4LjV0MzMgNTV0MzMgNjh0MTUgODQuNXEwIDY3IC00NC41IDk3LjV0LTExNS41IDMwLjVxLTI0IDAgLTkwIC0xMzkgcS0yNCAtNDQgLTM3IC02NXEtNDAgLTY0IC0xMTIgLTE0NXEtNzEgLTgxIC0xMDEgLTEwNnEtNjkgLTU3IC0xNDAgLTU3aC0zMnYtNjQweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwYTU7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgNzY5cTAgMTAzIDc2IDE3OXQxODAgNzZoMzc0cS0yMiA2MCAtMjIgMTI4cTAgMTIyIDgxLjUgMTg5dDIwNi41IDY3cTM4IDAgNjkuNSAtMTcuNXQ1NSAtNDkuNXQ0MC41IC02M3QzNyAtNzJ0MzMgLTYycTM1IC01NSAxMDAgLTEyOXEyIC0zIDE0IC0xN3QxOSAtMjEuNXQyMC41IC0yMS41dDI0IC0yMi41dDIyLjUgLTE4dDIzLjUgLTE0dDIxLjUgLTQuNWgyODhxNTMgMCA5MC41IC0zNy41dDM3LjUgLTkwLjV2LTY0MCBxMCAtNTMgLTM3LjUgLTkwLjV0LTkwLjUgLTM3LjVoLTI4OHEtNTkgMCAtMjIzIC01OXEtMTkwIC02OSAtMzE3IC02OXEtMTQyIDAgLTIzMCA3Ny41dC04NyAyMTcuNWwxIDVxLTYxIDc2IC02MSAxNzhxMCAyMiAzIDQzcS0zMyA1NyAtMzcgMTE5aC0xNjlxLTEwNSAwIC0xODAuNSA3NnQtNzUuNSAxODF6TTEyOCA3NjhxMCAtNTIgMzggLTkwdDkwIC0zOGgzMzFxLTE1IC0xNyAtMjUgLTQ3LjV0LTEwIC01NS41cTAgLTY5IDUzIC0xMTkgcS0xOCAtMzIgLTE4IC02OXQxNy41IC03My41dDQ3LjUgLTUyLjVxLTQgLTI0IC00IC01NnEwIC04NSA0OC41IC0xMjZ0MTM1LjUgLTQxcTg0IDAgMTgzIDMydDE5NCA2NHQxNjcgMzJoMzJ2NjQwaC0zMnEtMzUgMCAtNjcuNSAxMnQtNjIuNSAzN3QtNTAgNDZ0LTQ5IDU0cS0yIDMgLTMuNSA0LjV0LTQgNC41dC00LjUgNXEtNzIgODEgLTExMiAxNDVxLTE0IDIyIC0zOCA2OHEtMSAzIC0xMC41IDIyLjV0LTE4LjUgMzZ0LTIwIDM1LjUgdC0yMS41IDMwLjV0LTE4LjUgMTEuNXEtNzEgMCAtMTE1LjUgLTMwLjV0LTQ0LjUgLTk3LjVxMCAtNDMgMTUgLTg0LjV0MzMgLTY4dDMzIC01NXQxNSAtNDguNWgtNTc2cS01MCAwIC04OSAtMzguNXQtMzkgLTg5LjV6TTE1MzYgMTkycTAgLTI2IDE5IC00NXQ0NSAtMTl0NDUgMTl0MTkgNDV0LTE5IDQ1dC00NSAxOXQtNDUgLTE5dC0xOSAtNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBhNjsiIGQ9Ik0wIDY0MHEwIDEyNSA2NyAyMDYuNXQxODkgODEuNXE2OCAwIDEyOCAtMjJ2Mzc0cTAgMTA0IDc2IDE4MHQxNzkgNzZxMTA1IDAgMTgxIC03NS41dDc2IC0xODAuNXYtMTY5cTYyIC00IDExOSAtMzdxMjEgMyA0MyAzcTEwMSAwIDE3OCAtNjBxMTM5IDEgMjE5LjUgLTg1dDgwLjUgLTIyN3EwIC0xMzMgLTY5IC0zMjJxLTU5IC0xNjQgLTU5IC0yMjN2LTI4OHEwIC01MyAtMzcuNSAtOTAuNXQtOTAuNSAtMzcuNWgtNjQwIHEtNTMgMCAtOTAuNSAzNy41dC0zNy41IDkwLjV2Mjg4cTAgMTAgLTQuNSAyMS41dC0xNCAyMy41dC0xOCAyMi41dC0yMi41IDI0dC0yMS41IDIwLjV0LTIxLjUgMTl0LTE3IDE0cS03NCA2NSAtMTI5IDEwMHEtMjEgMTMgLTYyIDMzdC03MiAzN3QtNjMgNDAuNXQtNDkuNSA1NXQtMTcuNSA2OS41ek0xMjggNjQwcTAgLTI0IDEzOSAtOTBxNDQgLTI0IDY1IC0zN3E2NCAtNDAgMTQ1IC0xMTJxODEgLTcxIDEwNiAtMTAxcTU3IC02OSA1NyAtMTQwIHYtMzJoNjQwdjMycTAgNzIgMzIgMTY3dDY0IDE5My41dDMyIDE3OS41cTAgMTg5IC0xNjcgMTg5cS0yNiAwIC01NiAtNXEtMTYgMzAgLTUyLjUgNDcuNXQtNzMuNSAxNy41dC02OSAtMThxLTUwIDUzIC0xMTkgNTNxLTI1IDAgLTU1LjUgLTEwdC00Ny41IC0yNXYzMzFxMCA1MiAtMzggOTB0LTkwIDM4cS01MSAwIC04OS41IC0zOXQtMzguNSAtODl2LTU3NnEtMjAgMCAtNDguNSAxNXQtNTUgMzN0LTY4IDMzdC04NC41IDE1IHEtNjcgMCAtOTcuNSAtNDQuNXQtMzAuNSAtMTE1LjV6TTExNTIgLTY0cTAgLTI2IDE5IC00NXQ0NSAtMTl0NDUgMTl0MTkgNDV0LTE5IDQ1dC00NSAxOXQtNDUgLTE5dC0xOSAtNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBhNzsiIGQ9Ik0wIDY0MHEwIDM4IDE3LjUgNjkuNXQ0OS41IDU1dDYzIDQwLjV0NzIgMzd0NjIgMzNxNTUgMzUgMTI5IDEwMHEzIDIgMTcgMTR0MjEuNSAxOXQyMS41IDIwLjV0MjIuNSAyNHQxOCAyMi41dDE0IDIzLjV0NC41IDIxLjV2Mjg4cTAgNTMgMzcuNSA5MC41dDkwLjUgMzcuNWg2NDBxNTMgMCA5MC41IC0zNy41dDM3LjUgLTkwLjV2LTI4OHEwIC01OSA1OSAtMjIzcTY5IC0xOTAgNjkgLTMxN3EwIC0xNDIgLTc3LjUgLTIzMHQtMjE3LjUgLTg3IGwtNSAxcS03NiAtNjEgLTE3OCAtNjFxLTIyIDAgLTQzIDNxLTU0IC0zMCAtMTE5IC0zN3YtMTY5cTAgLTEwNSAtNzYgLTE4MC41dC0xODEgLTc1LjVxLTEwMyAwIC0xNzkgNzZ0LTc2IDE4MHYzNzRxLTU0IC0yMiAtMTI4IC0yMnEtMTIxIDAgLTE4OC41IDgxLjV0LTY3LjUgMjA2LjV6TTEyOCA2NDBxMCAtNzEgMzAuNSAtMTE1LjV0OTcuNSAtNDQuNXE0MyAwIDg0LjUgMTV0NjggMzN0NTUgMzN0NDguNSAxNXYtNTc2cTAgLTUwIDM4LjUgLTg5IHQ4OS41IC0zOXE1MiAwIDkwIDM4dDM4IDkwdjMzMXE0NiAtMzUgMTAzIC0zNXE2OSAwIDExOSA1M3EzMiAtMTggNjkgLTE4dDczLjUgMTcuNXQ1Mi41IDQ3LjVxMjQgLTQgNTYgLTRxODUgMCAxMjYgNDguNXQ0MSAxMzUuNXEwIDg0IC0zMiAxODN0LTY0IDE5NHQtMzIgMTY3djMyaC02NDB2LTMycTAgLTM1IC0xMiAtNjcuNXQtMzcgLTYyLjV0LTQ2IC01MHQtNTQgLTQ5cS05IC04IC0xNCAtMTJxLTgxIC03MiAtMTQ1IC0xMTIgcS0yMiAtMTQgLTY4IC0zOHEtMyAtMSAtMjIuNSAtMTAuNXQtMzYgLTE4LjV0LTM1LjUgLTIwdC0zMC41IC0yMS41dC0xMS41IC0xOC41ek0xMTUyIDEzNDRxMCAtMjYgMTkgLTQ1dDQ1IC0xOXQ0NSAxOXQxOSA0NXQtMTkgNDV0LTQ1IDE5dC00NSAtMTl0LTE5IC00NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGE4OyIgZD0iTTAgNjQwcTAgMjA5IDEwMyAzODUuNXQyNzkuNSAyNzkuNXQzODUuNSAxMDN0Mzg1LjUgLTEwM3QyNzkuNSAtMjc5LjV0MTAzIC0zODUuNXQtMTAzIC0zODUuNXQtMjc5LjUgLTI3OS41dC0zODUuNSAtMTAzdC0zODUuNSAxMDN0LTI3OS41IDI3OS41dC0xMDMgMzg1LjV6TTI1MSA2NDBxMCAtMjcgMTggLTQ1bDkxIC05MWwzNjIgLTM2MnExOCAtMTggNDUgLTE4dDQ1IDE4bDkxIDkxcTE4IDE4IDE4IDQ1dC0xOCA0NWwtMTg5IDE4OWg1MDIgcTI2IDAgNDUgMTl0MTkgNDV2MTI4cTAgMjYgLTE5IDQ1dC00NSAxOWgtNTAybDE4OSAxODlxMTkgMTkgMTkgNDV0LTE5IDQ1bC05MSA5MXEtMTggMTggLTQ1IDE4dC00NSAtMThsLTM2MiAtMzYybC05MSAtOTFxLTE4IC0xOCAtMTggLTQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwYTk7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNMjU2IDU3NnEwIC0yNiAxOSAtNDV0NDUgLTE5aDUwMmwtMTg5IC0xODlxLTE5IC0xOSAtMTkgLTQ1dDE5IC00NWw5MSAtOTFxMTggLTE4IDQ1IC0xOHQ0NSAxOCBsMzYyIDM2Mmw5MSA5MXExOCAxOCAxOCA0NXQtMTggNDVsLTkxIDkxbC0zNjIgMzYycS0xOCAxOCAtNDUgMTh0LTQ1IC0xOGwtOTEgLTkxcS0xOCAtMTggLTE4IC00NXQxOCAtNDVsMTg5IC0xODloLTUwMnEtMjYgMCAtNDUgLTE5dC0xOSAtNDV2LTEyOHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGFhOyIgZD0iTTAgNjQwcTAgMjA5IDEwMyAzODUuNXQyNzkuNSAyNzkuNXQzODUuNSAxMDN0Mzg1LjUgLTEwM3QyNzkuNSAtMjc5LjV0MTAzIC0zODUuNXQtMTAzIC0zODUuNXQtMjc5LjUgLTI3OS41dC0zODUuNSAtMTAzdC0zODUuNSAxMDN0LTI3OS41IDI3OS41dC0xMDMgMzg1LjV6TTI1MiA2NDFxMCAtMjcgMTggLTQ1bDkxIC05MXExOCAtMTggNDUgLTE4dDQ1IDE4bDE4OSAxODl2LTUwMnEwIC0yNiAxOSAtNDV0NDUgLTE5aDEyOHEyNiAwIDQ1IDE5IHQxOSA0NXY1MDJsMTg5IC0xODlxMTkgLTE5IDQ1IC0xOXQ0NSAxOWw5MSA5MXExOCAxOCAxOCA0NXQtMTggNDVsLTM2MiAzNjJsLTkxIDkxcS0xOCAxOCAtNDUgMTh0LTQ1IC0xOGwtOTEgLTkxbC0zNjIgLTM2MnEtMTggLTE4IC0xOCAtNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBhYjsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjV0LTEwMyAtMzg1LjV0LTI3OS41IC0yNzkuNXQtMzg1LjUgLTEwM3QtMzg1LjUgMTAzdC0yNzkuNSAyNzkuNXQtMTAzIDM4NS41ek0yNTIgNjM5cTAgLTI3IDE4IC00NWwzNjIgLTM2Mmw5MSAtOTFxMTggLTE4IDQ1IC0xOHQ0NSAxOGw5MSA5MWwzNjIgMzYycTE4IDE4IDE4IDQ1dC0xOCA0NWwtOTEgOTEgcS0xOCAxOCAtNDUgMTh0LTQ1IC0xOGwtMTg5IC0xODl2NTAycTAgMjYgLTE5IDQ1dC00NSAxOWgtMTI4cS0yNiAwIC00NSAtMTl0LTE5IC00NXYtNTAybC0xODkgMTg5cS0xOSAxOSAtNDUgMTl0LTQ1IC0xOWwtOTEgLTkxcS0xOCAtMTggLTE4IC00NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGFjOyIgZD0iTTAgNjQwcTAgMjA5IDEwMyAzODUuNXQyNzkuNSAyNzkuNXQzODUuNSAxMDN0Mzg1LjUgLTEwM3QyNzkuNSAtMjc5LjV0MTAzIC0zODUuNXQtMTAzIC0zODUuNXQtMjc5LjUgLTI3OS41dC0zODUuNSAtMTAzdC0zODUuNSAxMDN0LTI3OS41IDI3OS41dC0xMDMgMzg1LjV6TTIyNiA5NzlxNyAtNyAxMiAtOHE0IC0xIDUgLTl0Mi41IC0xMXQxMS41IDNxOSAtOCAzIC0xOXExIDEgNDQgLTI3cTE5IC0xNyAyMSAtMjFxMyAtMTEgLTEwIC0xOCBxLTEgMiAtOSA5dC05IDRxLTMgLTUgMC41IC0xOC41dDEwLjUgLTEyLjVxLTcgMCAtOS41IC0xNnQtMi41IC0zNS41dC0xIC0yMy41bDIgLTFxLTMgLTEyIDUuNSAtMzQuNXQyMS41IC0xOS41cS0xMyAtMyAyMCAtNDNxNiAtOCA4IC05cTMgLTIgMTIgLTcuNXQxNSAtMTB0MTAgLTEwLjVxNCAtNSAxMCAtMjIuNXQxNCAtMjMuNXEtMiAtNiA5LjUgLTIwdDEwLjUgLTIzcS0xIDAgLTIuNSAtMXQtMi41IC0xcTMgLTcgMTUuNSAtMTR0MTUuNSAtMTMgcTEgLTMgMiAtMTB0MyAtMTF0OCAtMnEyIDIwIC0yNCA2MnEtMTUgMjUgLTE3IDI5cS0zIDUgLTUuNSAxNS41dC00LjUgMTQuNXEyIDAgNiAtMS41dDguNSAtMy41dDcuNSAtNHQyIC0zcS0zIC03IDIgLTE3LjV0MTIgLTE4LjV0MTcgLTE5dDEyIC0xM3E2IC02IDE0IC0xOS41dDAgLTEzLjVxOSAwIDIwIC0xMHQxNyAtMjBxNSAtOCA4IC0yNnQ1IC0yNHEyIC03IDguNSAtMTMuNXQxMi41IC05LjVsMTYgLTh0MTMgLTdxNSAtMiAxOC41IC0xMC41IHQyMS41IC0xMS41cTEwIC00IDE2IC00dDE0LjUgMi41dDEzLjUgMy41cTE1IDIgMjkgLTE1dDIxIC0yMXEzNiAtMTkgNTUgLTExcS0yIC0xIDAuNSAtNy41dDggLTE1LjV0OSAtMTQuNXQ1LjUgLTguNXE1IC02IDE4IC0xNXQxOCAtMTVxNiA0IDcgOXEtMyAtOCA3IC0yMHQxOCAtMTBxMTQgMyAxNCAzMnEtMzEgLTE1IC00OSAxOHEwIDEgLTIuNSA1LjV0LTQgOC41dC0yLjUgOC41dDAgNy41dDUgM3E5IDAgMTAgMy41dC0yIDEyLjV0LTQgMTMgcS0xIDggLTExIDIwdC0xMiAxNXEtNSAtOSAtMTYgLTh0LTE2IDlxMCAtMSAtMS41IC01LjV0LTEuNSAtNi41cS0xMyAwIC0xNSAxcTEgMyAyLjUgMTcuNXQzLjUgMjIuNXExIDQgNS41IDEydDcuNSAxNC41dDQgMTIuNXQtNC41IDkuNXQtMTcuNSAyLjVxLTE5IC0xIC0yNiAtMjBxLTEgLTMgLTMgLTEwLjV0LTUgLTExLjV0LTkgLTdxLTcgLTMgLTI0IC0ydC0yNCA1cS0xMyA4IC0yMi41IDI5dC05LjUgMzdxMCAxMCAyLjUgMjYuNXQzIDI1IHQtNS41IDI0LjVxMyAyIDkgOS41dDEwIDEwLjVxMiAxIDQuNSAxLjV0NC41IDB0NCAxLjV0MyA2cS0xIDEgLTQgM3EtMyAzIC00IDNxNyAtMyAyOC41IDEuNXQyNy41IC0xLjVxMTUgLTExIDIyIDJxMCAxIC0yLjUgOS41dC0wLjUgMTMuNXE1IC0yNyAyOSAtOXEzIC0zIDE1LjUgLTV0MTcuNSAtNXEzIC0yIDcgLTUuNXQ1LjUgLTQuNXQ1IDAuNXQ4LjUgNi41cTEwIC0xNCAxMiAtMjRxMTEgLTQwIDE5IC00NHE3IC0zIDExIC0ydDQuNSA5LjUgdDAgMTR0LTEuNSAxMi41bC0xIDh2MThsLTEgOHEtMTUgMyAtMTguNSAxMnQxLjUgMTguNXQxNSAxOC41cTEgMSA4IDMuNXQxNS41IDYuNXQxMi41IDhxMjEgMTkgMTUgMzVxNyAwIDExIDlxLTEgMCAtNSAzdC03LjUgNXQtNC41IDJxOSA1IDIgMTZxNSAzIDcuNSAxMXQ3LjUgMTBxOSAtMTIgMjEgLTJxNyA4IDEgMTZxNSA3IDIwLjUgMTAuNXQxOC41IDkuNXE3IC0yIDggMnQxIDEydDMgMTJxNCA1IDE1IDl0MTMgNWwxNyAxMXEzIDQgMCA0IHExOCAtMiAzMSAxMXExMCAxMSAtNiAyMHEzIDYgLTMgOS41dC0xNSA1LjVxMyAxIDExLjUgMC41dDEwLjUgMS41cTE1IDEwIC03IDE2cS0xNyA1IC00MyAtMTJxLTIgLTEgLTkuNSAtOS41dC0xMy41IC05LjVxMiAwIDQuNSA1dDUgMTF0My41IDdxNiA3IDIyIDE1cTE0IDYgNTIgMTJxMzQgOCA1MSAtMTFxLTIgMiA5LjUgMTN0MTQuNSAxMnEzIDIgMTUgNC41dDE1IDcuNWwyIDIycS0xMiAtMSAtMTcuNSA3dC02LjUgMjFxMCAtMiAtNiAtOCBxMCA3IC00LjUgOHQtMTEuNSAtMXQtOSAtMXEtMTAgMyAtMTUgNy41dC04IDE2LjV0LTQgMTVxLTIgNSAtOS41IDEwLjV0LTkuNSAxMC41cS0xIDIgLTIuNSA1LjV0LTMgNi41dC00IDUuNXQtNS41IDIuNXQtNyAtNXQtNy41IC0xMHQtNC41IC01cS0zIDIgLTYgMS41dC00LjUgLTF0LTQuNSAtM3QtNSAtMy41cS0zIC0yIC04LjUgLTN0LTguNSAtMnExNSA1IC0xIDExcS0xMCA0IC0xNiAzcTkgNCA3LjUgMTJ0LTguNSAxNGg1IHEtMSA0IC04LjUgOC41dC0xNy41IDguNXQtMTMgNnEtOCA1IC0zNCA5LjV0LTMzIDAuNXEtNSAtNiAtNC41IC0xMC41dDQgLTE0dDMuNSAtMTIuNXExIC02IC01LjUgLTEzdC02LjUgLTEycTAgLTcgMTQgLTE1LjV0MTAgLTIxLjVxLTMgLTggLTE2IC0xNnQtMTYgLTEycS01IC04IC0xLjUgLTE4LjV0MTAuNSAtMTYuNXEyIC0yIDEuNSAtNHQtMy41IC00LjV0LTUuNSAtNHQtNi41IC0zLjVsLTMgLTJxLTExIC01IC0yMC41IDZ0LTEzLjUgMjYgcS03IDI1IC0xNiAzMHEtMjMgOCAtMjkgLTFxLTUgMTMgLTQxIDI2cS0yNSA5IC01OCA0cTYgMSAwIDE1cS03IDE1IC0xOSAxMnEzIDYgNCAxNy41dDEgMTMuNXEzIDEzIDEyIDIzcTEgMSA3IDguNXQ5LjUgMTMuNXQwLjUgNnEzNSAtNCA1MCAxMXE1IDUgMTEuNSAxN3QxMC41IDE3cTkgNiAxNCA1LjV0MTQuNSAtNS41dDE0LjUgLTVxMTQgLTEgMTUuNSAxMXQtNy41IDIwcTEyIC0xIDMgMTdxLTUgNyAtOCA5cS0xMiA0IC0yNyAtNSBxLTggLTQgMiAtOHEtMSAxIC05LjUgLTEwLjV0LTE2LjUgLTE3LjV0LTE2IDVxLTEgMSAtNS41IDEzLjV0LTkuNSAxMy41cS04IDAgLTE2IC0xNXEzIDggLTExIDE1dC0yNCA4cTE5IDEyIC04IDI3cS03IDQgLTIwLjUgNXQtMTkuNSAtNHEtNSAtNyAtNS41IC0xMS41dDUgLTh0MTAuNSAtNS41dDExLjUgLTR0OC41IC0zcTE0IC0xMCA4IC0xNHEtMiAtMSAtOC41IC0zLjV0LTExLjUgLTQuNXQtNiAtNHEtMyAtNCAwIC0xNHQtMiAtMTQgcS01IDUgLTkgMTcuNXQtNyAxNi41cTcgLTkgLTI1IC02bC0xMCAxcS00IDAgLTE2IC0ydC0yMC41IC0xdC0xMy41IDhxLTQgOCAwIDIwcTEgNCA0IDJxLTQgMyAtMTEgOS41dC0xMCA4LjVxLTQ2IC0xNSAtOTQgLTQxcTYgLTEgMTIgMXE1IDIgMTMgNi41dDEwIDUuNXEzNCAxNCA0MiA3bDUgNXExNCAtMTYgMjAgLTI1cS03IDQgLTMwIDFxLTIwIC02IC0yMiAtMTJxNyAtMTIgNSAtMThxLTQgMyAtMTEuNSAxMHQtMTQuNSAxMXQtMTUgNSBxLTE2IDAgLTIyIC0xcS0xNDYgLTgwIC0yMzUgLTIyMnpNODc3IDI2cTAgLTYgMiAtMTZxMjA2IDM2IDM1MSAxODlxLTMgMyAtMTIuNSA0LjV0LTEyLjUgMy41cS0xOCA3IC0yNCA4cTEgNyAtMi41IDEzdC04IDl0LTEyLjUgOHQtMTEgN3EtMiAyIC03IDZ0LTcgNS41dC03LjUgNC41dC04LjUgMnQtMTAgLTFsLTMgLTFxLTMgLTEgLTUuNSAtMi41dC01LjUgLTN0LTQgLTN0MCAtMi41cS0yMSAxNyAtMzYgMjJxLTUgMSAtMTEgNS41dC0xMC41IDcgdC0xMCAxLjV0LTExLjUgLTdxLTUgLTUgLTYgLTE1dC0yIC0xM3EtNyA1IDAgMTcuNXQyIDE4LjVxLTMgNiAtMTAuNSA0LjV0LTEyIC00LjV0LTExLjUgLTguNXQtOSAtNi41dC04LjUgLTUuNXQtOC41IC03LjVxLTMgLTQgLTYgLTEydC01IC0xMXEtMiA0IC0xMS41IDYuNXQtOS41IDUuNXEyIC0xMCA0IC0zNXQ1IC0zOHE3IC0zMSAtMTIgLTQ4cS0yNyAtMjUgLTI5IC00MHEtNCAtMjIgMTIgLTI2cTAgLTcgLTggLTIwLjV0LTcgLTIxLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBhZDsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMjEgMHEwIDUzIDM4IDkxbDY4MSA2ODFxMzkgLTk4IDExNC41IC0xNzMuNXQxNzMuNSAtMTE0LjVsLTY4MiAtNjgycS0zNyAtMzcgLTkwIC0zN3EtNTIgMCAtOTEgMzdsLTEwNiAxMDhxLTM4IDM2IC0zOCA5MHpNMjU2IDY0cTAgLTI2IDE5IC00NXQ0NSAtMTl0NDUgMTl0MTkgNDV0LTE5IDQ1dC00NSAxOXQtNDUgLTE5dC0xOSAtNDV6TTc2OCA5NjBxMCAxODUgMTMxLjUgMzE2LjV0MzE2LjUgMTMxLjVxNTggMCAxMjEuNSAtMTYuNSB0MTA3LjUgLTQ2LjVxMTYgLTExIDE2IC0yOHQtMTYgLTI4bC0yOTMgLTE2OXYtMjI0bDE5MyAtMTA3cTUgMyA3OSA0OC41dDEzNS41IDgxdDcwLjUgMzUuNXExNSAwIDIzLjUgLTEwdDguNSAtMjVxMCAtMzkgLTIzIC0xMDZxLTQ3IC0xMzQgLTE2NC41IC0yMTcuNXQtMjU4LjUgLTgzLjVxLTE4NSAwIC0zMTYuNSAxMzEuNXQtMTMxLjUgMzE2LjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBhZTsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCA2NHYyNTZxMCAyNiAxOSA0NXQ0NSAxOWgxNjY0cTI2IDAgNDUgLTE5dDE5IC00NXYtMjU2cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTY2NHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0wIDU3NnYyNTZxMCAyNiAxOSA0NXQ0NSAxOWgxNjY0cTI2IDAgNDUgLTE5dDE5IC00NXYtMjU2cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTY2NHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0wIDEwODh2MjU2cTAgMjYgMTkgNDV0NDUgMTloMTY2NCBxMjYgMCA0NSAtMTl0MTkgLTQ1di0yNTZxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC0xNjY0cS0yNiAwIC00NSAxOXQtMTkgNDV6TTY0MCA2NDBoMTAyNHYxMjhoLTEwMjR2LTEyOHpNMTAyNCAxMjhoNjQwdjEyOGgtNjQwdi0xMjh6TTEyODAgMTE1MmgzODR2MTI4aC0zODR2LTEyOHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGIwOyIgaG9yaXotYWR2LXg9IjE0MDgiIGQ9Ik01IDEyNDFxMTcgMzkgNTkgMzloMTI4MHE0MiAwIDU5IC0zOXExNyAtNDEgLTE0IC03MGwtNDkzIC00OTN2LTc0MnEwIC00MiAtMzkgLTU5cS0xMyAtNSAtMjUgLTVxLTI3IDAgLTQ1IDE5bC0yNTYgMjU2cS0xOSAxOSAtMTkgNDV2NDg2bC00OTMgNDkzcS0zMSAyOSAtMTQgNzB6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBiMTsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCAxNjB2NDgwaDY3MnYtMTYwcTAgLTI2IDE5IC00NXQ0NSAtMTloMzIwcTI2IDAgNDUgMTl0MTkgNDV2MTYwaDY3MnYtNDgwcTAgLTY2IC00NyAtMTEzdC0xMTMgLTQ3aC0xNDcycS02NiAwIC0xMTMgNDd0LTQ3IDExM3pNMCA3MzZ2Mzg0cTAgNjYgNDcgMTEzdDExMyA0N2gzNTJ2MTYwcTAgNDAgMjggNjh0NjggMjhoNTc2cTQwIDAgNjggLTI4dDI4IC02OHYtMTYwaDM1MnE2NiAwIDExMyAtNDd0NDcgLTExM3YtMzg0aC0xNzkyeiBNNjQwIDEyODBoNTEydjEyOGgtNTEydi0xMjh6TTc2OCA1MTJ2MTI4aDI1NnYtMTI4aC0yNTZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBiMjsiIGQ9Ik0wIC02NHY0NDhxMCA0MiA0MCA1OXEzOSAxNyA2OSAtMTRsMTQ0IC0xNDRsMzU1IDM1NWwtMzU1IDM1NWwtMTQ0IC0xNDRxLTE5IC0xOSAtNDUgLTE5cS0xMiAwIC0yNCA1cS00MCAxNyAtNDAgNTl2NDQ4cTAgMjYgMTkgNDV0NDUgMTloNDQ4cTQyIDAgNTkgLTQwcTE3IC0zOSAtMTQgLTY5bC0xNDQgLTE0NGwzNTUgLTM1NWwzNTUgMzU1bC0xNDQgMTQ0cS0zMSAzMCAtMTQgNjlxMTcgNDAgNTkgNDBoNDQ4cTI2IDAgNDUgLTE5dDE5IC00NSB2LTQ0OHEwIC00MiAtMzkgLTU5cS0xMyAtNSAtMjUgLTVxLTI2IDAgLTQ1IDE5bC0xNDQgMTQ0bC0zNTUgLTM1NWwzNTUgLTM1NWwxNDQgMTQ0cTI5IDMxIDcwIDE0cTM5IC0xNyAzOSAtNTl2LTQ0OHEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTQ0OHEtNDIgMCAtNTkgNDBxLTE3IDM5IDE0IDY5bDE0NCAxNDRsLTM1NSAzNTVsLTM1NSAtMzU1bDE0NCAtMTQ0cTMxIC0zMCAxNCAtNjlxLTE3IC00MCAtNTkgLTQwaC00NDhxLTI2IDAgLTQ1IDE5IHQtMTkgNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBjMDsiIGhvcml6LWFkdi14PSIxOTIwIiBkPSJNMCA2NzFxMCAzNTMgMTI0IDM1M3E2IDAgNDMuNSAtMjF0OTcuNSAtNDIuNXQxMTkgLTIxLjVxNjcgMCAxMzMgMjNxLTUgLTM3IC01IC02NnEwIC0xMzkgODEgLTI1NnEtMTYyIC01IC0yNjUgLTEyOGgtMTM0cS04MiAwIC0xMzggNDAuNXQtNTYgMTE4LjV6TTEyOCAxMjgwcTAgMTA2IDc1IDE4MXQxODEgNzV0MTgxIC03NXQ3NSAtMTgxdC03NSAtMTgxdC0xODEgLTc1dC0xODEgNzV0LTc1IDE4MXpNMjU2IDNxMCA1MyAzLjUgMTAzLjUgdDE0IDEwOXQyNi41IDEwOC41dDQzIDk3LjV0NjIgODF0ODUuNSA1My41dDExMS41IDIwcTEwIDAgNDMgLTIxLjV0NzMgLTQ4dDEwNyAtNDh0MTM1IC0yMS41dDEzNSAyMS41dDEwNyA0OHQ3MyA0OHQ0MyAyMS41cTYxIDAgMTExLjUgLTIwdDg1LjUgLTUzLjV0NjIgLTgxdDQzIC05Ny41dDI2LjUgLTEwOC41dDE0IC0xMDl0My41IC0xMDMuNXEwIC0xMjAgLTczIC0xODkuNXQtMTk0IC02OS41aC04NzRxLTEyMSAwIC0xOTQgNjkuNXQtNzMgMTg5LjUgek01NzYgODk2cTAgMTU5IDExMi41IDI3MS41dDI3MS41IDExMi41dDI3MS41IC0xMTIuNXQxMTIuNSAtMjcxLjV0LTExMi41IC0yNzEuNXQtMjcxLjUgLTExMi41dC0yNzEuNSAxMTIuNXQtMTEyLjUgMjcxLjV6TTEyODAgMTI4MHEwIDEwNiA3NSAxODF0MTgxIDc1dDE4MSAtNzV0NzUgLTE4MXQtNzUgLTE4MXQtMTgxIC03NXQtMTgxIDc1dC03NSAxODF6TTEzMjcgNjQwcTgxIDExNyA4MSAyNTZxMCAyOSAtNSA2NnE2NiAtMjMgMTMzIC0yMyBxNTkgMCAxMTkgMjEuNXQ5Ny41IDQyLjV0NDMuNSAyMXExMjQgMCAxMjQgLTM1M3EwIC03OCAtNTYgLTExOC41dC0xMzggLTQwLjVoLTEzNHEtMTAzIDEyMyAtMjY1IDEyOHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGMxOyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0xNiAxMDg4cTAgMTIwIDg1IDIwM2wxNDcgMTQ2cTgzIDgzIDIwMyA4M3ExMjEgMCAyMDQgLTg1bDIwNiAtMjA3cTgzIC04MyA4MyAtMjAzcTAgLTEyMyAtODggLTIwOWw4OCAtODhxODYgODggMjA4IDg4cTEyMCAwIDIwNCAtODRsMjA4IC0yMDhxODQgLTg0IDg0IC0yMDR0LTg1IC0yMDNsLTE0NyAtMTQ2cS04MyAtODMgLTIwMyAtODNxLTEyMSAwIC0yMDQgODVsLTIwNiAyMDdxLTgzIDgzIC04MyAyMDNxMCAxMjMgODggMjA5bC04OCA4OCBxLTg2IC04OCAtMjA4IC04OHEtMTIwIDAgLTIwNCA4NGwtMjA4IDIwOHEtODQgODQgLTg0IDIwNHpNMjA4IDEwODhxMCAtNDAgMjggLTY4bDIwOCAtMjA4cTI3IC0yNyA2OCAtMjdxNDIgMCA3MiAzMXEtMyAzIC0xOSAxOC41dC0yMS41IDIxLjV0LTE1IDE5dC0xMyAyNS41dC0zLjUgMjcuNXEwIDQwIDI4IDY4dDY4IDI4cTE1IDAgMjcuNSAtMy41dDI1LjUgLTEzdDE5IC0xNXQyMS41IC0yMS41dDE4LjUgLTE5cTMzIDMxIDMzIDczIHEwIDQwIC0yOCA2OGwtMjA2IDIwN3EtMjggMjggLTY4IDI4cS0zOSAwIC02OCAtMjdsLTE0NyAtMTQ2cS0yOCAtMjggLTI4IC02N3pNOTExIDM4M3EwIC00MCAyOCAtNjhsMjA2IC0yMDdxMjcgLTI3IDY4IC0yN3E0MCAwIDY4IDI2bDE0NyAxNDZxMjggMjggMjggNjdxMCA0MCAtMjggNjhsLTIwOCAyMDhxLTI4IDI4IC02OCAyOHEtNDIgMCAtNzIgLTMycTMgLTMgMTkgLTE4LjV0MjEuNSAtMjEuNXQxNSAtMTl0MTMgLTI1LjV0My41IC0yNy41IHEwIC00MCAtMjggLTY4dC02OCAtMjhxLTE1IDAgLTI3LjUgMy41dC0yNS41IDEzdC0xOSAxNXQtMjEuNSAyMS41dC0xOC41IDE5cS0zMyAtMzEgLTMzIC03M3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGMyOyIgaG9yaXotYWR2LXg9IjE5MjAiIGQ9Ik0wIDQ0OHEwIDEzMiA3MSAyNDEuNXQxODcgMTYzLjVxLTIgMjggLTIgNDNxMCAyMTIgMTUwIDM2MnQzNjIgMTUwcTE1OCAwIDI4Ni41IC04OHQxODcuNSAtMjMwcTcwIDYyIDE2NiA2MnExMDYgMCAxODEgLTc1dDc1IC0xODFxMCAtNzUgLTQxIC0xMzhxMTI5IC0zMCAyMTMgLTEzNC41dDg0IC0yMzkuNXEwIC0xNTkgLTExMi41IC0yNzEuNXQtMjcxLjUgLTExMi41aC0xMDg4cS0xODUgMCAtMzE2LjUgMTMxLjV0LTEzMS41IDMxNi41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwYzM7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTExNS41IC02NC41cS0zNC41IDYzLjUgMjEuNSAxNTIuNWw1MDMgNzkzdjM5OWgtNjRxLTI2IDAgLTQ1IDE5dC0xOSA0NXQxOSA0NXQ0NSAxOWg1MTJxMjYgMCA0NSAtMTl0MTkgLTQ1dC0xOSAtNDV0LTQ1IC0xOWgtNjR2LTM5OWw1MDMgLTc5M3E1NiAtODkgMjEuNSAtMTUyLjV0LTE0MC41IC02My41aC0xMTUycS0xMDYgMCAtMTQwLjUgNjMuNXpNNDc2IDM4NGg3MTJsLTI3MiA0MjlsLTIwIDMxdjM3djM5OWgtMTI4di0zOTl2LTM3IGwtMjAgLTMxeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwYzQ7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTEgMTU3cTcgNzYgNTYgMTQ3dDEzMSAxMjRxMTMyIDg0IDI3OCA4NHE4MyAwIDE1MSAtMzFxOSAxMyAyMiAyMmwxMjIgNzNsLTEyMiA3M3EtMTMgOSAtMjIgMjJxLTY4IC0zMSAtMTUxIC0zMXEtMTQ2IDAgLTI3OCA4NHEtODIgNTMgLTEzMSAxMjR0LTU2IDE0N3EtNSA1OSAxNS41IDExM3Q2My41IDkzcTg1IDc5IDIyMiA3OXExNDUgMCAyNzcgLTg0cTgzIC01MiAxMzIgLTEyM3Q1NiAtMTQ4cTQgLTQ4IC0xMCAtOTdxNCAtMSAxMiAtNSBsMTEwIC02Nmw2OTAgMzg3cTE0IDggMzEgOHExNiAwIDI5IC03bDEyOCAtNjRxMzAgLTE2IDM1IC01MXEzIC0zNiAtMjUgLTU2bC01MDcgLTM5OGw1MDcgLTM5OHEyOCAtMjAgMjUgLTU2cS01IC0zNSAtMzUgLTUxbC0xMjggLTY0cS0xMyAtNyAtMjkgLTdxLTE3IDAgLTMxIDhsLTY5MCAzODdsLTExMCAtNjZxLTggLTQgLTEyIC01cTE0IC00OSAxMCAtOTdxLTcgLTc3IC01NiAtMTQ3LjV0LTEzMiAtMTIzLjVxLTEzMiAtODQgLTI3NyAtODQgcS0xMzYgMCAtMjIyIDc4cS05MCA4NCAtNzkgMjA3ek0xNjggMTc2cS0yNSAtNjYgMjEgLTEwOHEzOSAtMzYgMTEzIC0zNnExMDAgMCAxOTIgNTlxODEgNTEgMTA2IDExN3QtMjEgMTA4cS0zOSAzNiAtMTEzIDM2cS0xMDAgMCAtMTkyIC01OXEtODEgLTUxIC0xMDYgLTExN3pNMTY4IDk3NnEyNSAtNjYgMTA2IC0xMTdxOTIgLTU5IDE5MiAtNTlxNzQgMCAxMTMgMzZxNDYgNDIgMjEgMTA4dC0xMDYgMTE3cS05MiA1OSAtMTkyIDU5IHEtNzQgMCAtMTEzIC0zNnEtNDYgLTQyIC0yMSAtMTA4ek02NzIgNDQ4bDkgLThxMiAtMiA3IC02cTQgLTQgMTEgLTEydDExIC0xMmwyNiAtMjZsMTYwIDk2bDk2IC0zMmw3MzYgNTc2bC0xMjggNjRsLTc2OCAtNDMxdi0xMTN6TTY3MiA3MDRsOTYgLTU4djExcTAgMzYgMzMgNTZsMTQgOGwtNzkgNDdsLTI2IC0yNnEtMyAtMyAtMTAgLTExdC0xMiAtMTJxLTIgLTIgLTQgLTMuNXQtMyAtMi41ek04OTYgNTc2cTAgMjYgMTkgNDV0NDUgMTl0NDUgLTE5IHQxOSAtNDV0LTE5IC00NXQtNDUgLTE5dC00NSAxOXQtMTkgNDV6TTEwMTggMzkxbDU4MiAtMzI3bDEyOCA2NGwtNTIwIDQwOGwtMTc3IC0xMzhxLTIgLTMgLTEzIC03eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwYzU7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgMjI0djY3MnEwIDQwIDIwIDg4dDQ4IDc2bDQwOCA0MDhxMjggMjggNzYgNDh0ODggMjBoNDE2cTQwIDAgNjggLTI4dDI4IC02OHYtMzI4cTY4IDQwIDEyOCA0MGg0MTZxNDAgMCA2OCAtMjh0MjggLTY4di0xMjE2cTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtOTYwcS00MCAwIC02OCAyOHQtMjggNjh2Mjg4aC01NDRxLTQwIDAgLTY4IDI4dC0yOCA2OHpNMTI4IDI1Nmg1MTJ2MjU2cTAgNDAgMjAgODh0NDggNzZsMzE2IDMxNnY0MTZoLTM4NCB2LTQxNnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTQxNnYtNjQwek0yMTMgMTAyNGgyOTl2Mjk5ek03NjggLTEyOGg4OTZ2MTE1MmgtMzg0di00MTZxMCAtNDAgLTI4IC02OHQtNjggLTI4aC00MTZ2LTY0MHpNODUzIDY0MGgyOTl2Mjk5eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwYzY7IiBob3Jpei1hZHYteD0iMTQwOCIgZD0iTTQgMTAyM3EwIDE1OSAxMTAgMjcwdDI2OSAxMTFxMTU4IDAgMjczIC0xMTNsNjA1IC02MDZxMTAgLTEwIDEwIC0yMnEwIC0xNiAtMzAuNSAtNDYuNXQtNDYuNSAtMzAuNXEtMTMgMCAtMjMgMTBsLTYwNiA2MDdxLTc5IDc3IC0xODEgNzdxLTEwNiAwIC0xNzkgLTc1dC03MyAtMTgxcTAgLTEwNSA3NiAtMTgxbDc3NiAtNzc3cTYzIC02MyAxNDUgLTYzcTY0IDAgMTA2IDQydDQyIDEwNnEwIDgyIC02MyAxNDVsLTU4MSA1ODEgcS0yNiAyNCAtNjAgMjRxLTI5IDAgLTQ4IC0xOXQtMTkgLTQ4cTAgLTMyIDI1IC01OWw0MTAgLTQxMHExMCAtMTAgMTAgLTIycTAgLTE2IC0zMSAtNDd0LTQ3IC0zMXEtMTIgMCAtMjIgMTBsLTQxMCA0MTBxLTYzIDYxIC02MyAxNDlxMCA4MiA1NyAxMzl0MTM5IDU3cTg4IDAgMTQ5IC02M2w1ODEgLTU4MXExMDAgLTk4IDEwMCAtMjM1cTAgLTExNyAtNzkgLTE5NnQtMTk2IC03OXEtMTM1IDAgLTIzNSAxMDBsLTc3NyA3NzYgcS0xMTMgMTE1IC0xMTMgMjcxeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwYzc7IiBkPSJNMCAtMzJ2MTM0NHEwIDQwIDI4IDY4dDY4IDI4aDkyOHE0MCAwIDg4IC0yMHQ3NiAtNDhsMjgwIC0yODBxMjggLTI4IDQ4IC03NnQyMCAtODh2LTkyOHEwIC00MCAtMjggLTY4dC02OCAtMjhoLTEzNDRxLTQwIDAgLTY4IDI4dC0yOCA2OHpNMTI4IDBoMTI4djQxNnEwIDQwIDI4IDY4dDY4IDI4aDgzMnE0MCAwIDY4IC0yOHQyOCAtNjh2LTQxNmgxMjh2ODk2cTAgMTQgLTEwIDM4LjV0LTIwIDM0LjVsLTI4MSAyODFxLTEwIDEwIC0zNCAyMCB0LTM5IDEwdi00MTZxMCAtNDAgLTI4IC02OHQtNjggLTI4aC01NzZxLTQwIDAgLTY4IDI4dC0yOCA2OHY0MTZoLTEyOHYtMTI4MHpNMzg0IDBoNzY4djM4NGgtNzY4di0zODR6TTY0MCA5MjhxMCAtMTMgOS41IC0yMi41dDIyLjUgLTkuNWgxOTJxMTMgMCAyMi41IDkuNXQ5LjUgMjIuNXYzMjBxMCAxMyAtOS41IDIyLjV0LTIyLjUgOS41aC0xOTJxLTEzIDAgLTIyLjUgLTkuNXQtOS41IC0yMi41di0zMjB6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBjODsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwYzk7IiBkPSJNMCA2NHYxMjhxMCAyNiAxOSA0NXQ0NSAxOWgxNDA4cTI2IDAgNDUgLTE5dDE5IC00NXYtMTI4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTQwOHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0wIDU3NnYxMjhxMCAyNiAxOSA0NXQ0NSAxOWgxNDA4cTI2IDAgNDUgLTE5dDE5IC00NXYtMTI4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTQwOHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0wIDEwODh2MTI4cTAgMjYgMTkgNDV0NDUgMTloMTQwOCBxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMjhxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC0xNDA4cS0yNiAwIC00NSAxOXQtMTkgNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBjYTsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCAxMjhxMCA4MCA1NiAxMzZ0MTM2IDU2dDEzNiAtNTZ0NTYgLTEzNnQtNTYgLTEzNnQtMTM2IC01NnQtMTM2IDU2dC01NiAxMzZ6TTAgNjQwcTAgODAgNTYgMTM2dDEzNiA1NnQxMzYgLTU2dDU2IC0xMzZ0LTU2IC0xMzZ0LTEzNiAtNTZ0LTEzNiA1NnQtNTYgMTM2ek0wIDExNTJxMCA4MCA1NiAxMzZ0MTM2IDU2dDEzNiAtNTZ0NTYgLTEzNnQtNTYgLTEzNnQtMTM2IC01NnQtMTM2IDU2dC01NiAxMzZ6TTUxMiAzMnYxOTIgcTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoMTIxNnExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTE5MnEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTEyMTZxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXpNNTEyIDU0NHYxOTJxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWgxMjE2cTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtMTkycTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtMTIxNnEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41eiBNNTEyIDEwNTZ2MTkycTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoMTIxNnExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTE5MnEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTEyMTZxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGNiOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0xNSA0MzhxMCA1MSAyMy41IDkzdDU2LjUgNjh0NjYgNDcuNXQ1Ni41IDQzLjV0MjMuNSA0NXEwIDI1IC0xNC41IDM4LjV0LTM5LjUgMTMuNXEtNDYgMCAtODEgLTU4bC04NSA1OXEyNCA1MSA3MS41IDc5LjV0MTA1LjUgMjguNXE3MyAwIDEyMyAtNDEuNXQ1MCAtMTEyLjVxMCAtNTAgLTM0IC05MS41dC03NSAtNjQuNXQtNzUuNSAtNTAuNXQtMzUuNSAtNTIuNWgxMjd2NjBoMTA1di0xNTloLTM2MnEtNiAzNiAtNiA1NHpNMTkgLTE5MCBsNTcgODhxNDkgLTQ1IDEwNiAtNDVxMjkgMCA1MC41IDE0LjV0MjEuNSA0Mi41cTAgNjQgLTEwNSA1NmwtMjYgNTZxOCAxMCAzMi41IDQzLjV0NDIuNSA1NHQzNyAzOC41djFxLTE2IDAgLTQ4LjUgLTF0LTQ4LjUgLTF2LTUzaC0xMDZ2MTUyaDMzM3YtODhsLTk1IC0xMTVxNTEgLTEyIDgxIC00OXQzMCAtODhxMCAtODAgLTU0LjUgLTEyNnQtMTM1LjUgLTQ2cS0xMDYgMCAtMTcyIDY2ek0zNCAxNDAwbDEzNiAxMjdoMTA2di00MDRoMTA4di05OSBoLTMzNXY5OWgxMDdxMCA0MSAwLjUgMTIydDAuNSAxMjF2MTJoLTJxLTggLTE3IC01MCAtNTR6TTUxMiAzMnYxOTJxMCAxNCA5IDIzdDIzIDloMTIxNnExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTE5MnEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTEyMTZxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXpNNTEyIDU0NHYxOTJxMCAxNCA5IDIzdDIzIDloMTIxNnExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTE5MiBxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC0xMjE2cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTUxMiAxMDU2djE5MnEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDEyMTZxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di0xOTJxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC0xMjE2cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBjYzsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCA1NDR2NjRxMCAxNCA5IDIzdDIzIDloMTcyOHExNCAwIDIzIC05dDkgLTIzdi02NHEwIC0xNCAtOSAtMjN0LTIzIC05aC0xNzI4cS0xNCAwIC0yMyA5dC05IDIzek0zODQgOTcycTAgMTgxIDEzNCAzMDlxMTMzIDEyNyAzOTMgMTI3cTUwIDAgMTY3IC0xOXE2NiAtMTIgMTc3IC00OHExMCAtMzggMjEgLTExOHExNCAtMTIzIDE0IC0xODNxMCAtMTggLTUgLTQ1bC0xMiAtM2wtODQgNmwtMTQgMnEtNTAgMTQ5IC0xMDMgMjA1IHEtODggOTEgLTIxMCA5MXEtMTE0IDAgLTE4MiAtNTlxLTY3IC01OCAtNjcgLTE0NnEwIC03MyA2NiAtMTQwdDI3OSAtMTI5cTY5IC0yMCAxNzMgLTY2cTU4IC0yOCA5NSAtNTJoLTc0M3EtMjggMzUgLTUxIDgwcS00OCA5NyAtNDggMTg4ek00MTQgMTU0cS0xIDMwIDAgNjhsMiAzN3Y0NGwxMDIgMnExNSAtMzQgMzAgLTcxdDIyLjUgLTU2dDEyLjUgLTI3cTM1IC01NyA4MCAtOTRxNDMgLTM2IDEwNSAtNTdxNTkgLTIyIDEzMiAtMjIgcTY0IDAgMTM5IDI3cTc3IDI2IDEyMiA4NnE0NyA2MSA0NyAxMjlxMCA4NCAtODEgMTU3cS0zNCAyOSAtMTM3IDcxaDQxMXE3IC0zOSA3IC05MnEwIC0xMTEgLTQxIC0yMTJxLTIzIC01NSAtNzEgLTEwNHEtMzcgLTM1IC0xMDkgLTgxcS04MCAtNDggLTE1MyAtNjZxLTgwIC0yMSAtMjAzIC0yMXEtMTE0IDAgLTE5NSAyM2wtMTQwIDQwcS01NyAxNiAtNzIgMjhxLTggOCAtOCAyMnYxM3EwIDEwOCAtMiAxNTZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBjZDsiIGQ9Ik0wIC0zMnYtNjRxMCAtMTQgOSAtMjN0MjMgLTloMTQ3MnExNCAwIDIzIDl0OSAyM3Y2NHEwIDE0IC05IDIzdC0yMyA5aC0xNDcycS0xNCAwIC0yMyAtOXQtOSAtMjN6TTAgMTQwNXExMyAxIDQwIDFxNjAgMCAxMTIgLTRxMTMyIC03IDE2NiAtN3E4NiAwIDE2OCAzcTExNiA0IDE0NiA1cTU2IDAgODYgMmwtMSAtMTRsMiAtNjR2LTlxLTYwIC05IC0xMjQgLTlxLTYwIDAgLTc5IC0yNXEtMTMgLTE0IC0xMyAtMTMycTAgLTEzIDAuNSAtMzIuNSB0MC41IC0yNS41bDEgLTIyOWwxNCAtMjgwcTYgLTEyNCA1MSAtMjAycTM1IC01OSA5NiAtOTJxODggLTQ3IDE3NyAtNDdxMTA0IDAgMTkxIDI4cTU2IDE4IDk5IDUxcTQ4IDM2IDY1IDY0cTM2IDU2IDUzIDExNHEyMSA3MyAyMSAyMjlxMCA3OSAtMy41IDEyOHQtMTEgMTIyLjV0LTEzLjUgMTU5LjVsLTQgNTlxLTUgNjcgLTI0IDg4cS0zNCAzNSAtNzcgMzRsLTEwMCAtMmwtMTQgM2wyIDg2aDg0bDIwNSAtMTBxNzYgLTMgMTk2IDEwbDE4IC0yIHE2IC0zOCA2IC01MXEwIC03IC00IC0zMXEtNDUgLTEyIC04NCAtMTNxLTczIC0xMSAtNzkgLTE3cS0xNSAtMTUgLTE1IC00MXEwIC03IDEuNSAtMjd0MS41IC0zMXE4IC0xOSAyMiAtMzk2cTYgLTE5NSAtMTUgLTMwNHEtMTUgLTc2IC00MSAtMTIycS0zOCAtNjUgLTExMiAtMTIzcS03NSAtNTcgLTE4MiAtODlxLTEwOSAtMzMgLTI1NSAtMzNxLTE2NyAwIC0yODQgNDZxLTExOSA0NyAtMTc5IDEyMnEtNjEgNzYgLTgzIDE5NSBxLTE2IDgwIC0xNiAyMzd2MzMzcTAgMTg4IC0xNyAyMTNxLTI1IDM2IC0xNDcgMzlxLTM3IDIgLTQ1IDR6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBjZTsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCAxNjB2MTA4OHEwIDY2IDQ3IDExM3QxMTMgNDdoMTM0NHE2NiAwIDExMyAtNDd0NDcgLTExM3YtMTA4OHEwIC02NiAtNDcgLTExM3QtMTEzIC00N2gtMTM0NHEtNjYgMCAtMTEzIDQ3dC00NyAxMTN6TTEyOCAxNjBxMCAtMTQgOSAtMjN0MjMgLTloMzIwcTE0IDAgMjMgOXQ5IDIzdjE5MnEwIDE0IC05IDIzdC0yMyA5aC0zMjBxLTE0IDAgLTIzIC05dC05IC0yM3YtMTkyek0xMjggNTQ0cTAgLTE0IDkgLTIzdDIzIC05aDMyMCBxMTQgMCAyMyA5dDkgMjN2MTkycTAgMTQgLTkgMjN0LTIzIDloLTMyMHEtMTQgMCAtMjMgLTl0LTkgLTIzdi0xOTJ6TTEyOCA5MjhxMCAtMTQgOSAtMjN0MjMgLTloMzIwcTE0IDAgMjMgOXQ5IDIzdjE5MnEwIDE0IC05IDIzdC0yMyA5aC0zMjBxLTE0IDAgLTIzIC05dC05IC0yM3YtMTkyek02NDAgMTYwcTAgLTE0IDkgLTIzdDIzIC05aDMyMHExNCAwIDIzIDl0OSAyM3YxOTJxMCAxNCAtOSAyM3QtMjMgOWgtMzIwcS0xNCAwIC0yMyAtOSB0LTkgLTIzdi0xOTJ6TTY0MCA1NDRxMCAtMTQgOSAtMjN0MjMgLTloMzIwcTE0IDAgMjMgOXQ5IDIzdjE5MnEwIDE0IC05IDIzdC0yMyA5aC0zMjBxLTE0IDAgLTIzIC05dC05IC0yM3YtMTkyek02NDAgOTI4cTAgLTE0IDkgLTIzdDIzIC05aDMyMHExNCAwIDIzIDl0OSAyM3YxOTJxMCAxNCAtOSAyM3QtMjMgOWgtMzIwcS0xNCAwIC0yMyAtOXQtOSAtMjN2LTE5MnpNMTE1MiAxNjBxMCAtMTQgOSAtMjN0MjMgLTloMzIwcTE0IDAgMjMgOXQ5IDIzIHYxOTJxMCAxNCAtOSAyM3QtMjMgOWgtMzIwcS0xNCAwIC0yMyAtOXQtOSAtMjN2LTE5MnpNMTE1MiA1NDRxMCAtMTQgOSAtMjN0MjMgLTloMzIwcTE0IDAgMjMgOXQ5IDIzdjE5MnEwIDE0IC05IDIzdC0yMyA5aC0zMjBxLTE0IDAgLTIzIC05dC05IC0yM3YtMTkyek0xMTUyIDkyOHEwIC0xNCA5IC0yM3QyMyAtOWgzMjBxMTQgMCAyMyA5dDkgMjN2MTkycTAgMTQgLTkgMjN0LTIzIDloLTMyMHEtMTQgMCAtMjMgLTl0LTkgLTIzdi0xOTJ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBkMDsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMjcgMTYwcTAgMjcgMTggNDVsMTI4NiAxMjg2cTE4IDE4IDQ1IDE4dDQ1IC0xOGwxOTggLTE5OHExOCAtMTggMTggLTQ1dC0xOCAtNDVsLTEyODYgLTEyODZxLTE4IC0xOCAtNDUgLTE4dC00NSAxOGwtMTk4IDE5OHEtMTggMTggLTE4IDQ1ek0xMjggMTQwOGw5OCAzMGwzMCA5OGwzMCAtOThsOTggLTMwbC05OCAtMzBsLTMwIC05OGwtMzAgOTh6TTMyMCAxMjE2bDE5NiA2MGw2MCAxOTZsNjAgLTE5NmwxOTYgLTYwbC0xOTYgLTYwIGwtNjAgLTE5NmwtNjAgMTk2ek03NjggMTQwOGw5OCAzMGwzMCA5OGwzMCAtOThsOTggLTMwbC05OCAtMzBsLTMwIC05OGwtMzAgOTh6TTEwODMgMTA2MmwxMDcgLTEwN2wyOTMgMjkzbC0xMDcgMTA3ek0xNDA4IDc2OGw5OCAzMGwzMCA5OGwzMCAtOThsOTggLTMwbC05OCAtMzBsLTMwIC05OGwtMzAgOTh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBkMTsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNNjQgMTkycTAgMjYgMTkgNDV0NDUgMTl2MzIwcTAgOCAtMC41IDM1dDAgMzh0Mi41IDM0LjV0Ni41IDM3dDE0IDMwLjV0MjIuNSAzMGwxOTggMTk4cTE5IDE5IDUwLjUgMzJ0NTguNSAxM2gxNjB2MTkycTAgMjYgMTkgNDV0NDUgMTloMTAyNHEyNiAwIDQ1IC0xOXQxOSAtNDV2LTEwMjRxMCAtMTUgLTQgLTI2LjV0LTEzLjUgLTE4LjV0LTE2LjUgLTExLjV0LTIzLjUgLTZ0LTIyLjUgLTJ0LTI1LjUgMHQtMjIuNSAwLjUgcTAgLTEwNiAtNzUgLTE4MXQtMTgxIC03NXQtMTgxIDc1dC03NSAxODFoLTM4NHEwIC0xMDYgLTc1IC0xODF0LTE4MSAtNzV0LTE4MSA3NXQtNzUgMTgxaC02NHEtMyAwIC0yMi41IC0wLjV0LTI1LjUgMHQtMjIuNSAydC0yMy41IDZ0LTE2LjUgMTEuNXQtMTMuNSAxOC41dC00IDI2LjV6TTI1NiA2NDBoMzg0djI1NmgtMTU4cS0xMyAwIC0yMiAtOWwtMTk1IC0xOTVxLTkgLTkgLTkgLTIydi0zMHpNMzg0IDEyOHEwIC01MiAzOCAtOTB0OTAgLTM4IHQ5MCAzOHQzOCA5MHQtMzggOTB0LTkwIDM4dC05MCAtMzh0LTM4IC05MHpNMTI4MCAxMjhxMCAtNTIgMzggLTkwdDkwIC0zOHQ5MCAzOHQzOCA5MHQtMzggOTB0LTkwIDM4dC05MCAtMzh0LTM4IC05MHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGQyOyIgZD0iTTAgNjQwcTAgMjA5IDEwMyAzODUuNXQyNzkuNSAyNzkuNXQzODUuNSAxMDN0Mzg1LjUgLTEwM3QyNzkuNSAtMjc5LjV0MTAzIC0zODUuNXQtMTAzIC0zODUuNXQtMjc5LjUgLTI3OS41dC0zODUuNSAtMTAzcS0xMTEgMCAtMjE4IDMycTU5IDkzIDc4IDE2NHE5IDM0IDU0IDIxMXEyMCAtMzkgNzMgLTY3LjV0MTE0IC0yOC41cTEyMSAwIDIxNiA2OC41dDE0NyAxODguNXQ1MiAyNzBxMCAxMTQgLTU5LjUgMjE0dC0xNzIuNSAxNjN0LTI1NSA2MyBxLTEwNSAwIC0xOTYgLTI5dC0xNTQuNSAtNzd0LTEwOSAtMTEwLjV0LTY3IC0xMjkuNXQtMjEuNSAtMTM0cTAgLTEwNCA0MCAtMTgzdDExNyAtMTExcTMwIC0xMiAzOCAyMHEyIDcgOCAzMXQ4IDMwcTYgMjMgLTExIDQzcS01MSA2MSAtNTEgMTUxcTAgMTUxIDEwNC41IDI1OS41dDI3My41IDEwOC41cTE1MSAwIDIzNS41IC04MnQ4NC41IC0yMTNxMCAtMTcwIC02OC41IC0yODl0LTE3NS41IC0xMTlxLTYxIDAgLTk4IDQzLjV0LTIzIDEwNC41IHE4IDM1IDI2LjUgOTMuNXQzMCAxMDN0MTEuNSA3NS41cTAgNTAgLTI3IDgzdC03NyAzM3EtNjIgMCAtMTA1IC01N3QtNDMgLTE0MnEwIC03MyAyNSAtMTIybC05OSAtNDE4cS0xNyAtNzAgLTEzIC0xNzdxLTIwNiA5MSAtMzMzIDI4MXQtMTI3IDQyM3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGQzOyIgZD0iTTAgMTYwdjk2MHEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoOTYwcTExOSAwIDIwMy41IC04NC41dDg0LjUgLTIwMy41di05NjBxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTcyNXE4NSAxMjIgMTA4IDIxMHE5IDM0IDUzIDIwOXEyMSAtMzkgNzMuNSAtNjd0MTEyLjUgLTI4cTE4MSAwIDI5NS41IDE0Ny41dDExNC41IDM3My41cTAgODQgLTM1IDE2Mi41dC05Ni41IDEzOXQtMTUyLjUgOTd0LTE5NyAzNi41IHEtMTA0IDAgLTE5NC41IC0yOC41dC0xNTMgLTc2LjV0LTEwNy41IC0xMDkuNXQtNjYuNSAtMTI4dC0yMS41IC0xMzIuNXEwIC0xMDIgMzkuNSAtMTgwdDExNi41IC0xMTBxMTMgLTUgMjMuNSAwdDE0LjUgMTlxMTAgNDQgMTUgNjFxNiAyMyAtMTEgNDJxLTUwIDYyIC01MCAxNTBxMCAxNTAgMTAzLjUgMjU2LjV0MjcwLjUgMTA2LjVxMTQ5IDAgMjMyLjUgLTgxdDgzLjUgLTIxMHEwIC0xNjggLTY3LjUgLTI4NnQtMTczLjUgLTExOCBxLTYwIDAgLTk3IDQzLjV0LTIzIDEwMy41cTggMzQgMjYuNSA5Mi41dDI5LjUgMTAydDExIDc0LjVxMCA0OSAtMjYuNSA4MS41dC03NS41IDMyLjVxLTYxIDAgLTEwMy41IC01Ni41dC00Mi41IC0xMzkuNXEwIC03MiAyNCAtMTIxbC05OCAtNDE0cS0yNCAtMTAwIC03IC0yNTRoLTE4M3EtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBkNDsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0yNzYgMzA5cTAgLTQzIDE4LjUgLTc3LjV0NDguNSAtNTYuNXQ2OSAtMzd0NzcuNSAtMjF0NzYuNSAtNnE2MCAwIDEyMC41IDE1LjV0MTEzLjUgNDZ0ODYgODIuNXQzMyAxMTcgcTAgNDkgLTIwIDg5LjV0LTQ5IDY2LjV0LTU4IDQ3LjV0LTQ5IDQ0dC0yMCA0NC41dDE1LjUgNDIuNXQzNy41IDM5LjV0NDQgNDJ0MzcuNSA1OS41dDE1LjUgODIuNXEwIDYwIC0yMi41IDk5LjV0LTcyLjUgOTAuNWg4M2w4OCA2NGgtMjY1cS04NSAwIC0xNjEgLTMydC0xMjcuNSAtOTh0LTUxLjUgLTE1M3EwIC05MyA2NC41IC0xNTQuNXQxNTguNSAtNjEuNXEyMiAwIDQzIDNxLTEzIC0yOSAtMTMgLTU0cTAgLTQ0IDQwIC05NCBxLTE3NSAtMTIgLTI1NyAtNjNxLTQ3IC0yOSAtNzUuNSAtNzN0LTI4LjUgLTk1ek0zOTUgMzM4cTAgNDYgMjUgODB0NjUuNSA1MS41dDgyIDI1dDg0LjUgNy41cTIwIDAgMzEgLTJxMiAtMSAyMyAtMTYuNXQyNiAtMTl0MjMgLTE4dDI0LjUgLTIydDE5IC0yMi41dDE3IC0yNnQ5IC0yNi41dDQuNSAtMzEuNXEwIC03NiAtNTguNSAtMTEyLjV0LTEzOS41IC0zNi41cS00MSAwIC04MC41IDkuNXQtNzUuNSAyOC41dC01OCA1M3QtMjIgNzh6IE00NjIgOTY5cTAgNjEgMzIgMTA0dDkyIDQzcTUzIDAgOTMuNSAtNDV0NTggLTEwMXQxNy41IC0xMDdxMCAtNjAgLTMzIC05OS41dC05MiAtMzkuNXEtNTMgMCAtOTMgNDIuNXQtNTcuNSA5Ni41dC0xNy41IDEwNnpNOTYwIDY3MmgxMjh2LTE2MGg2NHYxNjBoMTI4djY0aC0xMjh2MTI4aC02NHYtMTI4aC0xMjh2LTY0eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwZDU7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTMyIDE4MnEwIDgxIDQ0LjUgMTUwdDExOC41IDExNXExMzEgODIgNDA0IDEwMHEtMzIgNDIgLTQ3LjUgNzR0LTE1LjUgNzNxMCAzNiAyMSA4NXEtNDYgLTQgLTY4IC00cS0xNDggMCAtMjQ5LjUgOTYuNXQtMTAxLjUgMjQ0LjVxMCA4MiAzNiAxNTl0OTkgMTMxcTc3IDY2IDE4Mi41IDk4dDIxNy41IDMyaDQxOGwtMTM4IC04OGgtMTMxcTc0IC02MyAxMTIgLTEzM3QzOCAtMTYwcTAgLTcyIC0yNC41IC0xMjkuNXQtNTkgLTkzdC02OS41IC02NSB0LTU5LjUgLTYxLjV0LTI0LjUgLTY2cTAgLTM2IDMyIC03MC41dDc3LjUgLTY4dDkwLjUgLTczLjV0NzcgLTEwNHQzMiAtMTQycTAgLTkwIC00OCAtMTczcS03MiAtMTIyIC0yMTEgLTE3OS41dC0yOTggLTU3LjVxLTEzMiAwIC0yNDYuNSA0MS41dC0xNzEuNSAxMzcuNXEtMzcgNjAgLTM3IDEzMXpNMjE4IDIyOHEwIC03MCAzNSAtMTIzLjV0OTEuNSAtODN0MTE5IC00NHQxMjcuNSAtMTQuNXE1OCAwIDExMS41IDEzdDk5IDM5dDczIDczIHQyNy41IDEwOXEwIDI1IC03IDQ5dC0xNC41IDQydC0yNyA0MS41dC0yOS41IDM1dC0zOC41IDM0LjV0LTM2LjUgMjl0LTQxLjUgMzB0LTM2LjUgMjZxLTE2IDIgLTQ4IDJxLTUzIDAgLTEwNSAtN3QtMTA3LjUgLTI1dC05NyAtNDZ0LTY4LjUgLTc0LjV0LTI3IC0xMDUuNXpNMzI0IDEyMjJxMCAtNDYgMTAgLTk3LjV0MzEuNSAtMTAzdDUyIC05Mi41dDc1IC02N3Q5Ni41IC0yNnEzOCAwIDc4IDE2LjV0NjYgNDMuNXE1MyA1NyA1MyAxNTkgcTAgNTggLTE3IDEyNXQtNDguNSAxMjkuNXQtODQuNSAxMDMuNXQtMTE3IDQxcS00MiAwIC04Mi41IC0xOS41dC02NS41IC01Mi41cS00NyAtNTkgLTQ3IC0xNjB6TTEwODQgNzMxdjEwOGgyMTJ2MjE3aDEwNXYtMjE3aDIxM3YtMTA4aC0yMTN2LTIxOWgtMTA1djIxOWgtMjEyeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwZDY7IiBob3Jpei1hZHYteD0iMTkyMCIgZD0iTTAgNjR2MTE1MnEwIDI2IDE5IDQ1dDQ1IDE5aDE3OTJxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMTUycTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTc5MnEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0xMjggMzg0cTEwNiAwIDE4MSAtNzV0NzUgLTE4MWgxMTUycTAgMTA2IDc1IDE4MXQxODEgNzV2NTEycS0xMDYgMCAtMTgxIDc1dC03NSAxODFoLTExNTJxMCAtMTA2IC03NSAtMTgxdC0xODEgLTc1di01MTJ6TTY0MCA2NDBxMCA3MCAyMSAxNDIgdDU5LjUgMTM0dDEwMS41IDEwMXQxMzggMzl0MTM4IC0zOXQxMDEuNSAtMTAxdDU5LjUgLTEzNHQyMSAtMTQydC0yMSAtMTQydC01OS41IC0xMzR0LTEwMS41IC0xMDF0LTEzOCAtMzl0LTEzOCAzOXQtMTAxLjUgMTAxdC01OS41IDEzNHQtMjEgMTQyek03NjIgNzkxbDc3IC04MHE0MiAzNyA1NSA1N2gydi0yODhoLTEyOHYtOTZoMzg0djk2aC0xMjh2NDQ4aC0xMTR6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBkNzsiIGhvcml6LWFkdi14PSIxMDI0IiBkPSJNMCA4MzJxMCAyNiAxOSA0NXQ0NSAxOWg4OTZxMjYgMCA0NSAtMTl0MTkgLTQ1dC0xOSAtNDVsLTQ0OCAtNDQ4cS0xOSAtMTkgLTQ1IC0xOXQtNDUgMTlsLTQ0OCA0NDhxLTE5IDE5IC0xOSA0NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGQ4OyIgaG9yaXotYWR2LXg9IjEwMjQiIGQ9Ik0wIDMyMHEwIDI2IDE5IDQ1bDQ0OCA0NDhxMTkgMTkgNDUgMTl0NDUgLTE5bDQ0OCAtNDQ4cTE5IC0xOSAxOSAtNDV0LTE5IC00NXQtNDUgLTE5aC04OTZxLTI2IDAgLTQ1IDE5dC0xOSA0NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGQ5OyIgaG9yaXotYWR2LXg9IjY0MCIgZD0iTTY0IDY0MHEwIDI2IDE5IDQ1bDQ0OCA0NDhxMTkgMTkgNDUgMTl0NDUgLTE5dDE5IC00NXYtODk2cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOXQtNDUgMTlsLTQ0OCA0NDhxLTE5IDE5IC0xOSA0NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGRhOyIgaG9yaXotYWR2LXg9IjY0MCIgZD0iTTAgMTkydjg5NnEwIDI2IDE5IDQ1dDQ1IDE5dDQ1IC0xOWw0NDggLTQ0OHExOSAtMTkgMTkgLTQ1dC0xOSAtNDVsLTQ0OCAtNDQ4cS0xOSAtMTkgLTQ1IC0xOXQtNDUgMTl0LTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwZGI7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgMzJ2MTIxNnEwIDY2IDQ3IDExM3QxMTMgNDdoMTM0NHE2NiAwIDExMyAtNDd0NDcgLTExM3YtMTIxNnEwIC02NiAtNDcgLTExM3QtMTEzIC00N2gtMTM0NHEtNjYgMCAtMTEzIDQ3dC00NyAxMTN6TTEyOCAzMnEwIC0xMyA5LjUgLTIyLjV0MjIuNSAtOS41aDYwOHYxMTUyaC02NDB2LTExMjB6TTg5NiAwaDYwOHExMyAwIDIyLjUgOS41dDkuNSAyMi41djExMjBoLTY0MHYtMTE1MnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGRjOyIgaG9yaXotYWR2LXg9IjEwMjQiIGQ9Ik0wIDQ0OHEwIDI2IDE5IDQ1dDQ1IDE5aDg5NnEyNiAwIDQ1IC0xOXQxOSAtNDV0LTE5IC00NWwtNDQ4IC00NDhxLTE5IC0xOSAtNDUgLTE5dC00NSAxOWwtNDQ4IDQ0OHEtMTkgMTkgLTE5IDQ1ek0wIDgzMnEwIDI2IDE5IDQ1bDQ0OCA0NDhxMTkgMTkgNDUgMTl0NDUgLTE5bDQ0OCAtNDQ4cTE5IC0xOSAxOSAtNDV0LTE5IC00NXQtNDUgLTE5aC04OTZxLTI2IDAgLTQ1IDE5dC0xOSA0NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGRkOyIgaG9yaXotYWR2LXg9IjEwMjQiIGQ9Ik0wIDQ0OHEwIDI2IDE5IDQ1dDQ1IDE5aDg5NnEyNiAwIDQ1IC0xOXQxOSAtNDV0LTE5IC00NWwtNDQ4IC00NDhxLTE5IC0xOSAtNDUgLTE5dC00NSAxOWwtNDQ4IDQ0OHEtMTkgMTkgLTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwZGU7IiBob3Jpei1hZHYteD0iMTAyNCIgZD0iTTAgODMycTAgMjYgMTkgNDVsNDQ4IDQ0OHExOSAxOSA0NSAxOXQ0NSAtMTlsNDQ4IC00NDhxMTkgLTE5IDE5IC00NXQtMTkgLTQ1dC00NSAtMTloLTg5NnEtMjYgMCAtNDUgMTl0LTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwZTA7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgMzJ2Nzk0cTQ0IC00OSAxMDEgLTg3cTM2MiAtMjQ2IDQ5NyAtMzQ1cTU3IC00MiA5Mi41IC02NS41dDk0LjUgLTQ4dDExMCAtMjQuNWgxaDFxNTEgMCAxMTAgMjQuNXQ5NC41IDQ4dDkyLjUgNjUuNXExNzAgMTIzIDQ5OCAzNDVxNTcgMzkgMTAwIDg3di03OTRxMCAtNjYgLTQ3IC0xMTN0LTExMyAtNDdoLTE0NzJxLTY2IDAgLTExMyA0N3QtNDcgMTEzek0wIDEwOThxMCA3OCA0MS41IDEzMHQxMTguNSA1MmgxNDcyIHE2NSAwIDExMi41IC00N3Q0Ny41IC0xMTNxMCAtNzkgLTQ5IC0xNTF0LTEyMiAtMTIzcS0zNzYgLTI2MSAtNDY4IC0zMjVxLTEwIC03IC00Mi41IC0zMC41dC01NCAtMzh0LTUyIC0zMi41dC01Ny41IC0yN3QtNTAgLTloLTFoLTFxLTIzIDAgLTUwIDl0LTU3LjUgMjd0LTUyIDMyLjV0LTU0IDM4dC00Mi41IDMwLjVxLTkxIDY0IC0yNjIgMTgyLjV0LTIwNSAxNDIuNXEtNjIgNDIgLTExNyAxMTUuNXQtNTUgMTM2LjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBlMTsiIGQ9Ik0wIDEyMTdxMCA3NCA1MS41IDEyMi41dDEzNC41IDQ4LjV0MTMzIC00OC41dDUxIC0xMjIuNXExIC03MyAtNTAuNSAtMTIydC0xMzUuNSAtNDloLTJxLTgyIDAgLTEzMiA0OXQtNTAgMTIyek0xOSAtODB2OTkxaDMzMHYtOTkxaC0zMzB6TTUzMSAtODBxMiAzOTkgMiA2NDd0LTEgMjk2bC0xIDQ4aDMyOXYtMTQ0aC0ycTIwIDMyIDQxIDU2dDU2LjUgNTJ0ODcgNDMuNXQxMTQuNSAxNS41cTE3MSAwIDI3NSAtMTEzLjV0MTA0IC0zMzIuNXYtNTY4IGgtMzI5djUzMHEwIDEwNSAtNDAuNSAxNjQuNXQtMTI2LjUgNTkuNXEtNjMgMCAtMTA1LjUgLTM0LjV0LTYzLjUgLTg1LjVxLTExIC0zMCAtMTEgLTgxdi01NTNoLTMyOXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGUyOyIgZD0iTTAgODMydjQ0OHEwIDQyIDQwIDU5cTM5IDE3IDY5IC0xNGwxMzAgLTEyOXExMDcgMTAxIDI0NC41IDE1Ni41dDI4NC41IDU1LjVxMTU2IDAgMjk4IC02MXQyNDUgLTE2NHQxNjQgLTI0NXQ2MSAtMjk4dC02MSAtMjk4dC0xNjQgLTI0NXQtMjQ1IC0xNjR0LTI5OCAtNjFxLTE3MiAwIC0zMjcgNzIuNXQtMjY0IDIwNC41cS03IDEwIC02LjUgMjIuNXQ4LjUgMjAuNWwxMzcgMTM4cTEwIDkgMjUgOXExNiAtMiAyMyAtMTIgcTczIC05NSAxNzkgLTE0N3QyMjUgLTUycTEwNCAwIDE5OC41IDQwLjV0MTYzLjUgMTA5LjV0MTA5LjUgMTYzLjV0NDAuNSAxOTguNXQtNDAuNSAxOTguNXQtMTA5LjUgMTYzLjV0LTE2My41IDEwOS41dC0xOTguNSA0MC41cS05OCAwIC0xODggLTM1LjV0LTE2MCAtMTAxLjVsMTM3IC0xMzhxMzEgLTMwIDE0IC02OXEtMTcgLTQwIC01OSAtNDBoLTQ0OHEtMjYgMCAtNDUgMTl0LTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwZTM7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTQwIDczNnEwIDEzIDQuNSAyNnQ5IDIydDE1LjUgMjJ0MTYuNSAxOC41dDIwLjUgMTl0MTggMTYuNXEzMCAyOCA2OCAyOHExMCAwIDE4IC0xLjV0MTYuNSAtNS41dDEzLjUgLTZ0MTMuNSAtMTB0MTEuNSAtMTB0MTMgLTEyLjV0MTIgLTEyLjVxLTE0IDE0IC0xNCAzNHQxNCAzNGwzNDggMzQ4cTE0IDE0IDM0IDE0dDM0IC0xNHEtMiAyIC0xMi41IDEydC0xMi41IDEzdC0xMCAxMS41dC0xMCAxMy41dC02IDEzLjV0LTUuNSAxNi41dC0xLjUgMTggcTAgMzggMjggNjhxMyAzIDE2LjUgMTh0MTkgMjAuNXQxOC41IDE2LjV0MjIgMTUuNXQyMiA5dDI2IDQuNXE0MCAwIDY4IC0yOGw0MDggLTQwOHEyOCAtMjggMjggLTY4cTAgLTEzIC00LjUgLTI2dC05IC0yMnQtMTUuNSAtMjJ0LTE2LjUgLTE4LjV0LTIwLjUgLTE5dC0xOCAtMTYuNXEtMzAgLTI4IC02OCAtMjhxLTEwIDAgLTE4IDEuNXQtMTYuNSA1LjV0LTEzLjUgNnQtMTMuNSAxMHQtMTEuNSAxMHQtMTMgMTIuNXQtMTIgMTIuNSBxMTQgLTE0IDE0IC0zNHQtMTQgLTM0bC0xMjYgLTEyNmwyNTYgLTI1NnE0MyA0MyA5NiA0M3E1MiAwIDkxIC0zN2wzNjMgLTM2M3EzNyAtMzkgMzcgLTkxcTAgLTUzIC0zNyAtOTBsLTEwNyAtMTA4cS0zOSAtMzcgLTkxIC0zN3EtNTMgMCAtOTAgMzdsLTM2MyAzNjRxLTM4IDM2IC0zOCA5MHEwIDUzIDQzIDk2bC0yNTYgMjU2bC0xMjYgLTEyNnEtMTQgLTE0IC0zNCAtMTR0LTM0IDE0cTIgLTIgMTIuNSAtMTJ0MTIuNSAtMTN0MTAgLTExLjUgdDEwIC0xMy41dDYgLTEzLjV0NS41IC0xNi41dDEuNSAtMThxMCAtMzggLTI4IC02OHEtMyAtMyAtMTYuNSAtMTh0LTE5IC0yMC41dC0xOC41IC0xNi41dC0yMiAtMTUuNXQtMjIgLTl0LTI2IC00LjVxLTQwIDAgLTY4IDI4bC00MDggNDA4cS0yOCAyOCAtMjggNjh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBlNDsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCAzODRxMCAxODIgNzEgMzQ4dDE5MSAyODZ0Mjg2IDE5MXQzNDggNzF0MzQ4IC03MXQyODYgLTE5MXQxOTEgLTI4NnQ3MSAtMzQ4cTAgLTI2MSAtMTQxIC00ODNxLTE5IC0yOSAtNTQgLTI5aC0xNDAycS0zNSAwIC01NCAyOXEtMTQxIDIyMSAtMTQxIDQ4M3pNMTI4IDM4NHEwIC01MyAzNy41IC05MC41dDkwLjUgLTM3LjV0OTAuNSAzNy41dDM3LjUgOTAuNXQtMzcuNSA5MC41dC05MC41IDM3LjV0LTkwLjUgLTM3LjV0LTM3LjUgLTkwLjV6IE0zMjAgODMycTAgLTUzIDM3LjUgLTkwLjV0OTAuNSAtMzcuNXQ5MC41IDM3LjV0MzcuNSA5MC41dC0zNy41IDkwLjV0LTkwLjUgMzcuNXQtOTAuNSAtMzcuNXQtMzcuNSAtOTAuNXpNNzEwIDI0MXEtMjAgLTc3IDIwIC0xNDZ0MTE3IC04OXQxNDYgMjB0ODkgMTE3cTE2IDYwIC02IDExN3QtNzIgOTFsMTAxIDM4MnE2IDI2IC03LjUgNDguNXQtMzguNSAyOS41dC00OCAtNi41dC0zMCAtMzkuNWwtMTAxIC0zODJxLTYwIC01IC0xMDcgLTQzLjUgdC02MyAtOTguNXpNNzY4IDEwMjRxMCAtNTMgMzcuNSAtOTAuNXQ5MC41IC0zNy41dDkwLjUgMzcuNXQzNy41IDkwLjV0LTM3LjUgOTAuNXQtOTAuNSAzNy41dC05MC41IC0zNy41dC0zNy41IC05MC41ek0xMjE2IDgzMnEwIC01MyAzNy41IC05MC41dDkwLjUgLTM3LjV0OTAuNSAzNy41dDM3LjUgOTAuNXQtMzcuNSA5MC41dC05MC41IDM3LjV0LTkwLjUgLTM3LjV0LTM3LjUgLTkwLjV6TTE0MDggMzg0cTAgLTUzIDM3LjUgLTkwLjUgdDkwLjUgLTM3LjV0OTAuNSAzNy41dDM3LjUgOTAuNXQtMzcuNSA5MC41dC05MC41IDM3LjV0LTkwLjUgLTM3LjV0LTM3LjUgLTkwLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBlNTsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCA2NDBxMCAxNzQgMTIwIDMyMS41dDMyNiAyMzN0NDUwIDg1LjV0NDUwIC04NS41dDMyNiAtMjMzdDEyMCAtMzIxLjV0LTEyMCAtMzIxLjV0LTMyNiAtMjMzdC00NTAgLTg1LjVxLTcwIDAgLTE0NSA4cS0xOTggLTE3NSAtNDYwIC0yNDJxLTQ5IC0xNCAtMTE0IC0yMmgtNXEtMTUgMCAtMjcgMTAuNXQtMTYgMjcuNXYxcS0zIDQgLTAuNSAxMnQyIDEwdDQuNSA5LjVsNiA5dDcgOC41dDggOXE3IDggMzEgMzQuNXQzNC41IDM4dDMxIDM5LjUgdDMyLjUgNTF0MjcgNTl0MjYgNzZxLTE1NyA4OSAtMjQ3LjUgMjIwdC05MC41IDI4MXpNMTI4IDY0MHEwIC0xMTIgNzEuNSAtMjEzLjV0MjAxLjUgLTE3NS41bDg3IC01MGwtMjcgLTk2cS0yNCAtOTEgLTcwIC0xNzJxMTUyIDYzIDI3NSAxNzFsNDMgMzhsNTcgLTZxNjkgLTggMTMwIC04cTIwNCAwIDM4MS41IDY5LjV0MjgyIDE4Ny41dDEwNC41IDI1NXQtMTA0LjUgMjU1dC0yODIgMTg3LjV0LTM4MS41IDY5LjV0LTM4MS41IC02OS41IHQtMjgyIC0xODcuNXQtMTA0LjUgLTI1NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGU2OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDc2OHEwIDEzOSA5NCAyNTd0MjU2LjUgMTg2LjV0MzUzLjUgNjguNXQzNTMuNSAtNjguNXQyNTYuNSAtMTg2LjV0OTQgLTI1N3QtOTQgLTI1N3QtMjU2LjUgLTE4Ni41dC0zNTMuNSAtNjguNXEtODYgMCAtMTc2IDE2cS0xMjQgLTg4IC0yNzggLTEyOHEtMzYgLTkgLTg2IC0xNmgtM3EtMTEgMCAtMjAuNSA4dC0xMS41IDIxcS0xIDMgLTEgNi41dDAuNSA2LjV0MiA2bDIuNSA1dDMuNSA1LjV0NCA1dDQuNSA1dDQgNC41cTUgNiAyMyAyNSB0MjYgMjkuNXQyMi41IDI5dDI1IDM4LjV0MjAuNSA0NHEtMTI0IDcyIC0xOTUgMTc3dC03MSAyMjR6TTEyOCA3NjhxMCAtODIgNTMgLTE1OHQxNDkgLTEzMmw5NyAtNTZsLTM1IC04NHEzNCAyMCA2MiAzOWw0NCAzMWw1MyAtMTBxNzggLTE0IDE1MyAtMTRxMTUzIDAgMjg2IDUydDIxMS41IDE0MXQ3OC41IDE5MXQtNzguNSAxOTF0LTIxMS41IDE0MXQtMjg2IDUydC0yODYgLTUydC0yMTEuNSAtMTQxdC03OC41IC0xOTF6TTYxNiAxMzIgcTU4IC00IDg4IC00cTE2MSAwIDMwOSA0NXQyNjQgMTI5cTEyNSA5MiAxOTIgMjEydDY3IDI1NHEwIDc3IC0yMyAxNTJxMTI5IC03MSAyMDQgLTE3OHQ3NSAtMjMwcTAgLTEyMCAtNzEgLTIyNC41dC0xOTUgLTE3Ni41cTEwIC0yNCAyMC41IC00NHQyNSAtMzguNXQyMi41IC0yOXQyNiAtMjkuNXQyMyAtMjVxMSAtMSA0IC00LjV0NC41IC01dDQgLTV0My41IC01LjVsMi41IC01dDIgLTZ0MC41IC02LjV0LTEgLTYuNXEtMyAtMTQgLTEzIC0yMiB0LTIyIC03cS01MCA3IC04NiAxNnEtMTU0IDQwIC0yNzggMTI4cS05MCAtMTYgLTE3NiAtMTZxLTI3MSAwIC00NzIgMTMyeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwZTc7IiBob3Jpei1hZHYteD0iODk2IiBkPSJNMSA1NTFsMjAxIDgyNXE0IDE0IDE2IDIzdDI4IDloMzI4cTE5IDAgMzIgLTEyLjV0MTMgLTI5LjVxMCAtOCAtNSAtMThsLTE3MSAtNDYzbDM5NiA5OHE4IDIgMTIgMnExOSAwIDM0IC0xNXExOCAtMjAgNyAtNDRsLTU0MCAtMTE1N3EtMTMgLTI1IC00MiAtMjVxLTQgMCAtMTQgMnEtMTcgNSAtMjUuNSAxOXQtNC41IDMwbDE5NyA4MDhsLTQwNiAtMTAxcS00IC0xIC0xMiAtMXEtMTggMCAtMzEgMTFxLTE4IDE1IC0xMyAzOXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGU4OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIC0zMnYzMjBxMCA0MCAyOCA2OHQ2OCAyOGg5NnYxOTJxMCA1MiAzOCA5MHQ5MCAzOGg1MTJ2MTkyaC05NnEtNDAgMCAtNjggMjh0LTI4IDY4djMyMHEwIDQwIDI4IDY4dDY4IDI4aDMyMHE0MCAwIDY4IC0yOHQyOCAtNjh2LTMyMHEwIC00MCAtMjggLTY4dC02OCAtMjhoLTk2di0xOTJoNTEycTUyIDAgOTAgLTM4dDM4IC05MHYtMTkyaDk2cTQwIDAgNjggLTI4dDI4IC02OHYtMzIwcTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMzIwIHEtNDAgMCAtNjggMjh0LTI4IDY4djMyMHEwIDQwIDI4IDY4dDY4IDI4aDk2djE5MmgtNTEydi0xOTJoOTZxNDAgMCA2OCAtMjh0MjggLTY4di0zMjBxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0zMjBxLTQwIDAgLTY4IDI4dC0yOCA2OHYzMjBxMCA0MCAyOCA2OHQ2OCAyOGg5NnYxOTJoLTUxMnYtMTkyaDk2cTQwIDAgNjggLTI4dDI4IC02OHYtMzIwcTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMzIwcS00MCAwIC02OCAyOHQtMjggNjh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBlOTsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCA2ODFxMCA1IDEgN3E0NSAxODMgMTcyLjUgMzE5LjV0Mjk4IDIwNC41dDM2MC41IDY4cTE0MCAwIDI3NC41IC00MHQyNDYuNSAtMTEzLjV0MTk0LjUgLTE4N3QxMTUuNSAtMjUxLjVxMSAtMiAxIC03cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNXEtMTEgMCAtMjMgMTBxLTQ5IDQ2IC05MyA2OXQtMTAyIDIzcS02OCAwIC0xMjggLTM3dC0xMDMgLTk3cS03IC0xMCAtMTcuNSAtMjh0LTE0LjUgLTI0cS0xMSAtMTcgLTI4IC0xNyBxLTE4IDAgLTI5IDE3cS00IDYgLTE0LjUgMjR0LTE3LjUgMjhxLTQzIDYwIC0xMDIuNSA5N3QtMTI3LjUgMzd0LTEyNy41IC0zN3QtMTAyLjUgLTk3cS03IC0xMCAtMTcuNSAtMjh0LTE0LjUgLTI0cS0xMSAtMTcgLTI5IC0xN3EtMTcgMCAtMjggMTdxLTQgNiAtMTQuNSAyNHQtMTcuNSAyOHEtNDMgNjAgLTEwMyA5N3QtMTI4IDM3cS01OCAwIC0xMDIgLTIzdC05MyAtNjlxLTEyIC0xMCAtMjMgLTEwcS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6IE0zODQgMTI4cTAgMjYgMTkgNDV0NDUgMTl0NDUgLTE5dDE5IC00NXEwIC01MCAzOSAtODl0ODkgLTM5dDg5IDM5dDM5IDg5djU4MHEzMyAxMSA2NCAxMXQ2NCAtMTF2LTU4MHEwIC0xMDQgLTc2IC0xODB0LTE4MCAtNzZ0LTE4MCA3NnQtNzYgMTgwek03NjggMTMxMHY5OHEwIDI2IDE5IDQ1dDQ1IDE5dDQ1IC0xOXQxOSAtNDV2LTk4cS00MiAyIC02NCAydC02NCAtMnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGVhOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDk2djEzNDRxMCA0MCAyOCA2OHQ2OCAyOGgxMDg4cTQwIDAgNjggLTI4dDI4IC02OHYtMzI4cTIxIC0xMyAzNiAtMjhsNDA4IC00MDhxMjggLTI4IDQ4IC03NnQyMCAtODh2LTY3MnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTk2MHEtNDAgMCAtNjggMjh0LTI4IDY4djE2MGgtNTQ0cS00MCAwIC02OCAyOHQtMjggNjh6TTI1NiAxMzEycTAgLTEzIDkuNSAtMjIuNXQyMi41IC05LjVoNzA0cTEzIDAgMjIuNSA5LjV0OS41IDIyLjV2NjQgcTAgMTMgLTkuNSAyMi41dC0yMi41IDkuNWgtNzA0cS0xMyAwIC0yMi41IC05LjV0LTkuNSAtMjIuNXYtNjR6TTc2OCAtMTI4aDg5NnY2NDBoLTQxNnEtNDAgMCAtNjggMjh0LTI4IDY4djQxNmgtMzg0di0xMTUyek0xMjgwIDY0MGgyOTlsLTI5OSAyOTl2LTI5OXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGViOyIgaG9yaXotYWR2LXg9IjEwMjQiIGQ9Ik0wIDk2MHEwIDk5IDQ0LjUgMTg0LjV0MTE3IDE0MnQxNjQgODl0MTg2LjUgMzIuNXQxODYuNSAtMzIuNXQxNjQgLTg5dDExNyAtMTQydDQ0LjUgLTE4NC41cTAgLTE1NSAtMTAzIC0yNjhxLTQ1IC00OSAtNzQuNSAtODd0LTU5LjUgLTk1LjV0LTM0IC0xMDcuNXE0NyAtMjggNDcgLTgycTAgLTM3IC0yNSAtNjRxMjUgLTI3IDI1IC02NHEwIC01MiAtNDUgLTgxcTEzIC0yMyAxMyAtNDdxMCAtNDYgLTMxLjUgLTcxdC03Ny41IC0yNSBxLTIwIC00NCAtNjAgLTcwdC04NyAtMjZ0LTg3IDI2dC02MCA3MHEtNDYgMCAtNzcuNSAyNXQtMzEuNSA3MXEwIDI0IDEzIDQ3cS00NSAyOSAtNDUgODFxMCAzNyAyNSA2NHEtMjUgMjcgLTI1IDY0cTAgNTQgNDcgODJxLTQgNTAgLTM0IDEwNy41dC01OS41IDk1LjV0LTc0LjUgODdxLTEwMyAxMTMgLTEwMyAyNjh6TTEyOCA5NjBxMCAtMTAxIDY4IC0xODBxMTAgLTExIDMwLjUgLTMzdDMwLjUgLTMzcTEyOCAtMTUzIDE0MSAtMjk4aDIyOCBxMTMgMTQ1IDE0MSAyOThxMTAgMTEgMzAuNSAzM3QzMC41IDMzcTY4IDc5IDY4IDE4MHEwIDcyIC0zNC41IDEzNHQtOTAgMTAxLjV0LTEyMyA2MnQtMTM2LjUgMjIuNXQtMTM2LjUgLTIyLjV0LTEyMyAtNjJ0LTkwIC0xMDEuNXQtMzQuNSAtMTM0ek00ODAgMTA4OHEwIDEzIDkuNSAyMi41dDIyLjUgOS41cTUwIDAgOTkuNSAtMTZ0ODcgLTU0dDM3LjUgLTkwcTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNXQtMjIuNSA5LjV0LTkuNSAyMi41IHEwIDQ2IC01NCA3MXQtMTA2IDI1cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBlYzsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCAyNTZxMCAxNCA5IDIzbDMyMCAzMjBxOSA5IDIzIDlxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di0xOTJoMTM3NnExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTE5MnEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTEzNzZ2LTE5MnEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVxLTEyIDAgLTI0IDEwbC0zMTkgMzIwcS05IDkgLTkgMjJ6TTAgODAwdjE5MnEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDEzNzZ2MTkycTAgMTQgOSAyMyB0MjMgOXExMiAwIDI0IC0xMGwzMTkgLTMxOXE5IC05IDkgLTIzdC05IC0yM2wtMzIwIC0zMjBxLTkgLTkgLTIzIC05cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV2MTkyaC0xMzc2cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBlZDsiIGhvcml6LWFkdi14PSIxOTIwIiBkPSJNMCA0NDhxMCAxMzAgNzAgMjQwdDE4OCAxNjVxLTIgMzAgLTIgNDNxMCAyMTIgMTUwIDM2MnQzNjIgMTUwcTE1NiAwIDI4NS41IC04N3QxODguNSAtMjMxcTcxIDYyIDE2NiA2MnExMDYgMCAxODEgLTc1dDc1IC0xODFxMCAtNzYgLTQxIC0xMzhxMTMwIC0zMSAyMTMuNSAtMTM1LjV0ODMuNSAtMjM4LjVxMCAtMTU5IC0xMTIuNSAtMjcxLjV0LTI3MS41IC0xMTIuNWgtMTA4OHEtMTg1IDAgLTMxNi41IDEzMS41dC0xMzEuNSAzMTYuNXogTTUxMiA2MDhxMCAtMTQgOSAtMjNsMzUyIC0zNTJxOSAtOSAyMyAtOXQyMyA5bDM1MSAzNTFxMTAgMTIgMTAgMjRxMCAxNCAtOSAyM3QtMjMgOWgtMjI0djM1MnEwIDEzIC05LjUgMjIuNXQtMjIuNSA5LjVoLTE5MnEtMTMgMCAtMjIuNSAtOS41dC05LjUgLTIyLjV2LTM1MmgtMjI0cS0xMyAwIC0yMi41IC05LjV0LTkuNSAtMjIuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGVlOyIgaG9yaXotYWR2LXg9IjE5MjAiIGQ9Ik0wIDQ0OHEwIDEzMCA3MCAyNDB0MTg4IDE2NXEtMiAzMCAtMiA0M3EwIDIxMiAxNTAgMzYydDM2MiAxNTBxMTU2IDAgMjg1LjUgLTg3dDE4OC41IC0yMzFxNzEgNjIgMTY2IDYycTEwNiAwIDE4MSAtNzV0NzUgLTE4MXEwIC03NiAtNDEgLTEzOHExMzAgLTMxIDIxMy41IC0xMzUuNXQ4My41IC0yMzguNXEwIC0xNTkgLTExMi41IC0yNzEuNXQtMjcxLjUgLTExMi41aC0xMDg4cS0xODUgMCAtMzE2LjUgMTMxLjV0LTEzMS41IDMxNi41eiBNNTEyIDY3MnEwIC0xNCA5IC0yM3QyMyAtOWgyMjR2LTM1MnEwIC0xMyA5LjUgLTIyLjV0MjIuNSAtOS41aDE5MnExMyAwIDIyLjUgOS41dDkuNSAyMi41djM1MmgyMjRxMTMgMCAyMi41IDkuNXQ5LjUgMjIuNXEwIDE0IC05IDIzbC0zNTIgMzUycS05IDkgLTIzIDl0LTIzIC05bC0zNTEgLTM1MXEtMTAgLTEyIC0xMCAtMjR6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBmMDsiIGhvcml6LWFkdi14PSIxNDA4IiBkPSJNMCAxMzFxMCA2OCA1LjUgMTMxdDI0IDEzOHQ0Ny41IDEzMi41dDgxIDEwM3QxMjAgNjAuNXEtMjIgLTUyIC0yMiAtMTIwdi0yMDNxLTU4IC0yMCAtOTMgLTcwdC0zNSAtMTExcTAgLTgwIDU2IC0xMzZ0MTM2IC01NnQxMzYgNTZ0NTYgMTM2cTAgNjEgLTM1LjUgMTExdC05Mi41IDcwdjIwM3EwIDYyIDI1IDkzcTEzMiAtMTA0IDI5NSAtMTA0dDI5NSAxMDRxMjUgLTMxIDI1IC05M3YtNjRxLTEwNiAwIC0xODEgLTc1dC03NSAtMTgxdi04OSBxLTMyIC0yOSAtMzIgLTcxcTAgLTQwIDI4IC02OHQ2OCAtMjh0NjggMjh0MjggNjhxMCA0MiAtMzIgNzF2ODlxMCA1MiAzOCA5MHQ5MCAzOHQ5MCAtMzh0MzggLTkwdi04OXEtMzIgLTI5IC0zMiAtNzFxMCAtNDAgMjggLTY4dDY4IC0yOHQ2OCAyOHQyOCA2OHEwIDQyIC0zMiA3MXY4OXEwIDY4IC0zNC41IDEyNy41dC05My41IDkzLjVxMCAxMCAwLjUgNDIuNXQwIDQ4dC0yLjUgNDEuNXQtNyA0N3QtMTMgNDBxNjggLTE1IDEyMCAtNjAuNSB0ODEgLTEwM3Q0Ny41IC0xMzIuNXQyNCAtMTM4dDUuNSAtMTMxcTAgLTEyMSAtNzMgLTE5MHQtMTk0IC02OWgtODc0cS0xMjEgMCAtMTk0IDY5dC03MyAxOTB6TTI1NiAxOTJxMCAyNiAxOSA0NXQ0NSAxOXQ0NSAtMTl0MTkgLTQ1dC0xOSAtNDV0LTQ1IC0xOXQtNDUgMTl0LTE5IDQ1ek0zMjAgMTAyNHEwIDE1OSAxMTIuNSAyNzEuNXQyNzEuNSAxMTIuNXQyNzEuNSAtMTEyLjV0MTEyLjUgLTI3MS41dC0xMTIuNSAtMjcxLjV0LTI3MS41IC0xMTIuNSB0LTI3MS41IDExMi41dC0xMTIuNSAyNzEuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGYxOyIgaG9yaXotYWR2LXg9IjE0MDgiIGQ9Ik0wIDc2OHY1MTJxMCAyNiAxOSA0NXQ0NSAxOXE2IDAgMTYgLTJxMTcgMzAgNDcgNDh0NjUgMThxNTMgMCA5MC41IC0zNy41dDM3LjUgLTkwLjV0LTM3LjUgLTkwLjV0LTkwLjUgLTM3LjVxLTMzIDAgLTY0IDE4di00MDJxMCAtMTA2IDk0IC0xODF0MjI2IC03NXQyMjYgNzV0OTQgMTgxdjQwMnEtMzEgLTE4IC02NCAtMThxLTUzIDAgLTkwLjUgMzcuNXQtMzcuNSA5MC41dDM3LjUgOTAuNXQ5MC41IDM3LjVxMzUgMCA2NSAtMTh0NDcgLTQ4IHExMCAyIDE2IDJxMjYgMCA0NSAtMTl0MTkgLTQ1di01MTJxMCAtMTQ0IC0xMTAgLTI1MnQtMjc0IC0xMjh2LTEzMnEwIC0xMDYgOTQgLTE4MXQyMjYgLTc1dDIyNiA3NXQ5NCAxODF2Mzk1cS01NyAyMSAtOTIuNSA3MHQtMzUuNSAxMTFxMCA4MCA1NiAxMzZ0MTM2IDU2dDEzNiAtNTZ0NTYgLTEzNnEwIC02MiAtMzUuNSAtMTExdC05Mi41IC03MHYtMzk1cTAgLTE1OSAtMTMxLjUgLTI3MS41dC0zMTYuNSAtMTEyLjV0LTMxNi41IDExMi41IHQtMTMxLjUgMjcxLjV2MTMycS0xNjQgMjAgLTI3NCAxMjh0LTExMCAyNTJ6TTExNTIgODMycTAgLTI2IDE5IC00NXQ0NSAtMTl0NDUgMTl0MTkgNDV0LTE5IDQ1dC00NSAxOXQtNDUgLTE5dC0xOSAtNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBmMjsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCA5NnY4MzJxMCA5MiA2NiAxNTh0MTU4IDY2aDY0di0xMjgwaC02NHEtOTIgMCAtMTU4IDY2dC02NiAxNTh6TTM4NCAtMTI4djEyODBoMTI4djE2MHEwIDQwIDI4IDY4dDY4IDI4aDU3NnE0MCAwIDY4IC0yOHQyOCAtNjh2LTE2MGgxMjh2LTEyODBoLTEwMjR6TTY0MCAxMTUyaDUxMnYxMjhoLTUxMnYtMTI4ek0xNTA0IC0xMjh2MTI4MGg2NHE5MiAwIDE1OCAtNjZ0NjYgLTE1OHYtODMycTAgLTkyIC02NiAtMTU4dC0xNTggLTY2aC02NHogIiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBmMzsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCAxMjhxMTkwIDE2MSAyODcgMzk3LjV0OTcgNDk4LjVxMCAxNjUgOTYgMjYydDI2NCAxMTdxLTggMTggLTggMzdxMCA0MCAyOCA2OHQ2OCAyOHQ2OCAtMjh0MjggLTY4cTAgLTE5IC04IC0zN3ExNjggLTIwIDI2NCAtMTE3dDk2IC0yNjJxMCAtMjYyIDk3IC00OTguNXQyODcgLTM5Ny41cTAgLTUyIC0zOCAtOTB0LTkwIC0zOGgtNDQ4cTAgLTEwNiAtNzUgLTE4MXQtMTgxIC03NXQtMTgxIDc1dC03NSAxODFoLTQ0OHEtNTIgMCAtOTAgMzggdC0zOCA5MHpNNjU2IDBxMCAtNzMgNTEuNSAtMTI0LjV0MTI0LjUgLTUxLjVxMTYgMCAxNiAxNnQtMTYgMTZxLTU5IDAgLTEwMS41IDQyLjV0LTQyLjUgMTAxLjVxMCAxNiAtMTYgMTZ0LTE2IC0xNnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGY0OyIgaG9yaXotYWR2LXg9IjE5MjAiIGQ9Ik0wIDEyOGgxNzkycTAgLTEwNiAtNzUgLTE4MXQtMTgxIC03NWgtMTI4MHEtMTA2IDAgLTE4MSA3NXQtNzUgMTgxek0yNTYgNDgwdjczNnEwIDI2IDE5IDQ1dDQ1IDE5aDExNTJxMTU5IDAgMjcxLjUgLTExMi41dDExMi41IC0yNzEuNXQtMTEyLjUgLTI3MS41dC0yNzEuNSAtMTEyLjVoLTY0di0zMnEwIC05MiAtNjYgLTE1OHQtMTU4IC02NmgtNzA0cS05MiAwIC0xNTggNjZ0LTY2IDE1OHpNMTQwOCA3MDRoNjRxODAgMCAxMzYgNTZ0NTYgMTM2IHQtNTYgMTM2dC0xMzYgNTZoLTY0di0zODR6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBmNTsiIGhvcml6LWFkdi14PSIxNDA4IiBkPSJNMCA4MzJ2NjQwcTAgMjYgMTkgNDV0NDUgMTl0NDUgLTE5dDE5IC00NXYtNDE2cTAgLTI2IDE5IC00NXQ0NSAtMTl0NDUgMTl0MTkgNDV2NDE2cTAgMjYgMTkgNDV0NDUgMTl0NDUgLTE5dDE5IC00NXYtNDE2cTAgLTI2IDE5IC00NXQ0NSAtMTl0NDUgMTl0MTkgNDV2NDE2cTAgMjYgMTkgNDV0NDUgMTl0NDUgLTE5dDE5IC00NXYtNjQwcTAgLTYxIC0zNS41IC0xMTF0LTkyLjUgLTcwdi03NzlxMCAtNTIgLTM4IC05MHQtOTAgLTM4aC0xMjggcS01MiAwIC05MCAzOHQtMzggOTB2Nzc5cS01NyAyMCAtOTIuNSA3MHQtMzUuNSAxMTF6TTc2OCA0MTZ2ODAwcTAgMTMyIDk0IDIyNnQyMjYgOTRoMjU2cTI2IDAgNDUgLTE5dDE5IC00NXYtMTYwMHEwIC01MiAtMzggLTkwdC05MCAtMzhoLTEyOHEtNTIgMCAtOTAgMzh0LTM4IDkwdjUxMmgtMjI0cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBmNjsiIGQ9Ik0wIC0xNjB2MTYwMHEwIDQwIDI4IDY4dDY4IDI4aDg5NnE0MCAwIDg4IC0yMHQ3NiAtNDhsMzEyIC0zMTJxMjggLTI4IDQ4IC03NnQyMCAtODh2LTExNTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0xMzQ0cS00MCAwIC02OCAyOHQtMjggNjh6TTEyOCAtMTI4aDEyODB2MTAyNGgtNDE2cS00MCAwIC02OCAyOHQtMjggNjh2NDE2aC03Njh2LTE1MzZ6TTM4NCAxNjB2NjRxMCAxNCA5IDIzdDIzIDloNzA0cTE0IDAgMjMgLTl0OSAtMjN2LTY0IHEwIC0xNCAtOSAtMjN0LTIzIC05aC03MDRxLTE0IDAgLTIzIDl0LTkgMjN6TTM4NCA0MTZ2NjRxMCAxNCA5IDIzdDIzIDloNzA0cTE0IDAgMjMgLTl0OSAtMjN2LTY0cTAgLTE0IC05IC0yM3QtMjMgLTloLTcwNHEtMTQgMCAtMjMgOXQtOSAyM3pNMzg0IDY3MnY2NHEwIDE0IDkgMjN0MjMgOWg3MDRxMTQgMCAyMyAtOXQ5IC0yM3YtNjRxMCAtMTQgLTkgLTIzdC0yMyAtOWgtNzA0cS0xNCAwIC0yMyA5dC05IDIzek0xMDI0IDEwMjRoMzc2IHEtMTAgMjkgLTIyIDQxbC0zMTMgMzEzcS0xMiAxMiAtNDEgMjJ2LTM3NnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGY3OyIgaG9yaXotYWR2LXg9IjE0MDgiIGQ9Ik0wIC0xOTJ2MTY2NHEwIDI2IDE5IDQ1dDQ1IDE5aDEyODBxMjYgMCA0NSAtMTl0MTkgLTQ1di0xNjY0cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTI4MHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0xMjggLTEyOGgzODR2MjI0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoMzIwcTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtMjI0aDM4NHYxNTM2aC0xMTUydi0xNTM2ek0yNTYgMTYwdjY0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoNjQgcTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtNjRxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC02NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41ek0yNTYgNDE2djY0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoNjRxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTY0cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTI1NiA2NzJ2NjRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg2NCBxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTY0cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTI1NiA5Mjh2NjRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg2NHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTY0cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtNjRxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXpNMjU2IDExODR2NjRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg2NCBxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTY0cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTUxMiA0MTZ2NjRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg2NHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTY0cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtNjRxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXpNNTEyIDY3MnY2NHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDY0IHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTY0cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtNjRxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXpNNTEyIDkyOHY2NHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDY0cTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtNjRxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC02NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41ek01MTIgMTE4NHY2NHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDY0IHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTY0cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtNjRxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXpNNzY4IDQxNnY2NHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDY0cTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtNjRxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC02NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41ek03NjggNjcydjY0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoNjQgcTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtNjRxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC02NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41ek03NjggOTI4djY0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoNjRxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTY0cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTc2OCAxMTg0djY0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoNjQgcTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtNjRxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC02NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41ek0xMDI0IDE2MHY2NHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDY0cTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtNjRxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC02NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41ek0xMDI0IDQxNnY2NHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDY0IHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTY0cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtNjRxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXpNMTAyNCA2NzJ2NjRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg2NHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTY0cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtNjRxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXpNMTAyNCA5Mjh2NjRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg2NCBxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTY0cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTEwMjQgMTE4NHY2NHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDY0cTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtNjRxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC02NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwZjg7IiBob3Jpei1hZHYteD0iMTQwOCIgZD0iTTAgLTE5MnYxMjgwcTAgMjYgMTkgNDV0NDUgMTloMzIwdjI4OHEwIDQwIDI4IDY4dDY4IDI4aDQ0OHE0MCAwIDY4IC0yOHQyOCAtNjh2LTI4OGgzMjBxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMjgwcTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTI4MHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0xMjggLTEyOGgzODR2MjI0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoMzIwcTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtMjI0aDM4NHYxMTUyaC0yNTYgdi0zMnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTQ0OHEtNDAgMCAtNjggMjh0LTI4IDY4djMyaC0yNTZ2LTExNTJ6TTI1NiAxNjB2NjRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg2NHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTY0cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtNjRxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXpNMjU2IDQxNnY2NHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDY0cTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNSB2LTY0cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtNjRxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXpNMjU2IDY3MnY2NHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDY0cTEzIDAgMjIuNSAtOS41dDkuNSAtMjIuNXYtNjRxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC02NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41ek01MTIgNDE2djY0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoNjRxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NCBxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC02NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41ek01MTIgNjcydjY0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoNjRxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTY0cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTUxMiAxMDU2cTAgLTEzIDkuNSAtMjIuNXQyMi41IC05LjVoNjRxMTMgMCAyMi41IDkuNXQ5LjUgMjIuNXY5NmgxMjggdi05NnEwIC0xMyA5LjUgLTIyLjV0MjIuNSAtOS41aDY0cTEzIDAgMjIuNSA5LjV0OS41IDIyLjV2MzIwcTAgMTMgLTkuNSAyMi41dC0yMi41IDkuNWgtNjRxLTEzIDAgLTIyLjUgLTkuNXQtOS41IC0yMi41di05NmgtMTI4djk2cTAgMTMgLTkuNSAyMi41dC0yMi41IDkuNWgtNjRxLTEzIDAgLTIyLjUgLTkuNXQtOS41IC0yMi41di0zMjB6TTc2OCA0MTZ2NjRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg2NHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjUgdi02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTY0cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTc2OCA2NzJ2NjRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg2NHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTY0cTAgLTEzIC05LjUgLTIyLjV0LTIyLjUgLTkuNWgtNjRxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXpNMTAyNCAxNjB2NjRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWg2NHExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjUgdi02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTY0cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTEwMjQgNDE2djY0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoNjRxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di02NHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTY0cS0xMyAwIC0yMi41IDkuNXQtOS41IDIyLjV6TTEwMjQgNjcydjY0cTAgMTMgOS41IDIyLjV0MjIuNSA5LjVoNjRxMTMgMCAyMi41IC05LjV0OS41IC0yMi41IHYtNjRxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC02NHEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwZjk7IiBob3Jpei1hZHYteD0iMTkyMCIgZD0iTTY0IDE5MnEwIDI2IDE5IDQ1dDQ1IDE5djQxNnEwIDI2IDEzIDU4dDMyIDUxbDE5OCAxOThxMTkgMTkgNTEgMzJ0NTggMTNoMTYwdjMyMHEwIDI2IDE5IDQ1dDQ1IDE5aDExNTJxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMTUycTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTkycTAgLTEwNiAtNzUgLTE4MXQtMTgxIC03NXQtMTgxIDc1dC03NSAxODFoLTM4NHEwIC0xMDYgLTc1IC0xODF0LTE4MSAtNzV0LTE4MSA3NXQtNzUgMTgxaC0xMjggcS0yNiAwIC00NSAxOXQtMTkgNDV6TTI1NiA2NDBoMzg0djI1NmgtMTU4cS0xNCAtMiAtMjIgLTlsLTE5NSAtMTk1cS03IC0xMiAtOSAtMjJ2LTMwek0zODQgMTI4cTAgLTUzIDM3LjUgLTkwLjV0OTAuNSAtMzcuNXQ5MC41IDM3LjV0MzcuNSA5MC41dC0zNy41IDkwLjV0LTkwLjUgMzcuNXQtOTAuNSAtMzcuNXQtMzcuNSAtOTAuNXpNODk2IDgwMHEwIC0xNCA5IC0yM3QyMyAtOWgyMjR2LTIyNHEwIC0xNCA5IC0yM3QyMyAtOWgxOTIgcTE0IDAgMjMgOXQ5IDIzdjIyNGgyMjRxMTQgMCAyMyA5dDkgMjN2MTkycTAgMTQgLTkgMjN0LTIzIDloLTIyNHYyMjRxMCAxNCAtOSAyM3QtMjMgOWgtMTkycS0xNCAwIC0yMyAtOXQtOSAtMjN2LTIyNGgtMjI0cS0xNCAwIC0yMyAtOXQtOSAtMjN2LTE5MnpNMTI4MCAxMjhxMCAtNTMgMzcuNSAtOTAuNXQ5MC41IC0zNy41dDkwLjUgMzcuNXQzNy41IDkwLjV0LTM3LjUgOTAuNXQtOTAuNSAzNy41dC05MC41IC0zNy41dC0zNy41IC05MC41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYwZmE7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgOTZ2ODMycTAgOTIgNjYgMTU4dDE1OCA2NmgzMnYtMTI4MGgtMzJxLTkyIDAgLTE1OCA2NnQtNjYgMTU4ek0zNTIgLTEyOHYxMjgwaDE2MHYxNjBxMCA0MCAyOCA2OHQ2OCAyOGg1NzZxNDAgMCA2OCAtMjh0MjggLTY4di0xNjBoMTYwdi0xMjgwaC0xMDg4ek01MTIgNDE2cTAgLTE0IDkgLTIzdDIzIC05aDIyNHYtMjI0cTAgLTE0IDkgLTIzdDIzIC05aDE5MnExNCAwIDIzIDl0OSAyM3YyMjRoMjI0cTE0IDAgMjMgOXQ5IDIzdjE5MiBxMCAxNCAtOSAyM3QtMjMgOWgtMjI0djIyNHEwIDE0IC05IDIzdC0yMyA5aC0xOTJxLTE0IDAgLTIzIC05dC05IC0yM3YtMjI0aC0yMjRxLTE0IDAgLTIzIC05dC05IC0yM3YtMTkyek02NDAgMTE1Mmg1MTJ2MTI4aC01MTJ2LTEyOHpNMTUzNiAtMTI4djEyODBoMzJxOTIgMCAxNTggLTY2dDY2IC0xNTh2LTgzMnEwIC05MiAtNjYgLTE1OHQtMTU4IC02NmgtMzJ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBmYjsiIGhvcml6LWFkdi14PSIxOTIwIiBkPSJNMCA1MTJ2MTI4bDE5MiAyNHY4aC0xMjh2MzJoLTMydjE5MmwzMiAzMmg5NmwxOTIgLTIyNGgxNjB2NDE2aC02NHYzMmg2NGgxNjBoOTZxMjYgMCA0NSAtNC41dDE5IC0xMS41dC0xOSAtMTEuNXQtNDUgLTQuNWgtNjlsMjkzIC0zNTJoNjRsMjI0IC02NGwzNTIgLTMycTI2MSAtNTggMjg3IC05M2wxIC0zcS0xIC0zMiAtMjg4IC05NmwtMzUyIC0zMmwtMjI0IC02NGgtNjRsLTI5MyAtMzUyaDY5cTI2IDAgNDUgLTQuNXQxOSAtMTEuNSB0LTE5IC0xMS41dC00NSAtNC41aC05NmgtMTYwaC02NHYzMmg2NHY0MTZoLTE2MGwtMTkyIC0yMjRoLTk2bC0zMiAzMnYxOTJoMzJ2MzJoMTI4djh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBmYzsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNNjQgMTE1MmwzMiAxMjhoNDgwbDMyIDEyOGg5NjBsMzIgLTE5MmwtNjQgLTMydi04MDBsMTI4IC0xOTJ2LTE5MmgtMTE1MnYxOTJsMTI4IDE5MmgtMTI4cS0xNTkgMCAtMjcxLjUgMTEyLjV0LTExMi41IDI3MS41djMyMHpNMzg0IDc2OHEwIC01MyAzNy41IC05MC41dDkwLjUgLTM3LjVoMTI4djM4NGgtMjU2di0yNTZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjBmZDsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0yNTYgMTkycTAgLTI2IDE5IC00NXQ0NSAtMTloMTI4cTI2IDAgNDUgMTl0MTkgNDV2MzIwaDUxMnYtMzIwcTAgLTI2IDE5IC00NXQ0NSAtMTloMTI4cTI2IDAgNDUgMTl0MTkgNDUgdjg5NnEwIDI2IC0xOSA0NXQtNDUgMTloLTEyOHEtMjYgMCAtNDUgLTE5dC0xOSAtNDV2LTMyMGgtNTEydjMyMHEwIDI2IC0xOSA0NXQtNDUgMTloLTEyOHEtMjYgMCAtNDUgLTE5dC0xOSAtNDV2LTg5NnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMGZlOyIgZD0iTTAgMTYwdjk2MHEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoOTYwcTExOSAwIDIwMy41IC04NC41dDg0LjUgLTIwMy41di05NjBxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTk2MHEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTI1NiA1NzZxMCAtMjYgMTkgLTQ1dDQ1IC0xOWgzMjB2LTMyMHEwIC0yNiAxOSAtNDV0NDUgLTE5aDEyOHEyNiAwIDQ1IDE5dDE5IDQ1djMyMGgzMjBxMjYgMCA0NSAxOXQxOSA0NSB2MTI4cTAgMjYgLTE5IDQ1dC00NSAxOWgtMzIwdjMyMHEwIDI2IC0xOSA0NXQtNDUgMTloLTEyOHEtMjYgMCAtNDUgLTE5dC0xOSAtNDV2LTMyMGgtMzIwcS0yNiAwIC00NSAtMTl0LTE5IC00NXYtMTI4eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMDA7IiBob3Jpei1hZHYteD0iMTAyNCIgZD0iTTQ1IDU3NnEwIDEzIDEwIDIzbDQ2NiA0NjZxMTAgMTAgMjMgMTB0MjMgLTEwbDUwIC01MHExMCAtMTAgMTAgLTIzdC0xMCAtMjNsLTM5MyAtMzkzbDM5MyAtMzkzcTEwIC0xMCAxMCAtMjN0LTEwIC0yM2wtNTAgLTUwcS0xMCAtMTAgLTIzIC0xMHQtMjMgMTBsLTQ2NiA0NjZxLTEwIDEwIC0xMCAyM3pNNDI5IDU3NnEwIDEzIDEwIDIzbDQ2NiA0NjZxMTAgMTAgMjMgMTB0MjMgLTEwbDUwIC01MHExMCAtMTAgMTAgLTIzdC0xMCAtMjMgbC0zOTMgLTM5M2wzOTMgLTM5M3ExMCAtMTAgMTAgLTIzdC0xMCAtMjNsLTUwIC01MHEtMTAgLTEwIC0yMyAtMTB0LTIzIDEwbC00NjYgNDY2cS0xMCAxMCAtMTAgMjN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEwMTsiIGhvcml6LWFkdi14PSIxMDI0IiBkPSJNMTMgMTYwcTAgMTMgMTAgMjNsMzkzIDM5M2wtMzkzIDM5M3EtMTAgMTAgLTEwIDIzdDEwIDIzbDUwIDUwcTEwIDEwIDIzIDEwdDIzIC0xMGw0NjYgLTQ2NnExMCAtMTAgMTAgLTIzdC0xMCAtMjNsLTQ2NiAtNDY2cS0xMCAtMTAgLTIzIC0xMHQtMjMgMTBsLTUwIDUwcS0xMCAxMCAtMTAgMjN6TTM5NyAxNjBxMCAxMyAxMCAyM2wzOTMgMzkzbC0zOTMgMzkzcS0xMCAxMCAtMTAgMjN0MTAgMjNsNTAgNTBxMTAgMTAgMjMgMTB0MjMgLTEwIGw0NjYgLTQ2NnExMCAtMTAgMTAgLTIzdC0xMCAtMjNsLTQ2NiAtNDY2cS0xMCAtMTAgLTIzIC0xMHQtMjMgMTBsLTUwIDUwcS0xMCAxMCAtMTAgMjN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEwMjsiIGhvcml6LWFkdi14PSIxMTUyIiBkPSJNNzcgMjI0cTAgMTMgMTAgMjNsNDY2IDQ2NnExMCAxMCAyMyAxMHQyMyAtMTBsNDY2IC00NjZxMTAgLTEwIDEwIC0yM3QtMTAgLTIzbC01MCAtNTBxLTEwIC0xMCAtMjMgLTEwdC0yMyAxMGwtMzkzIDM5M2wtMzkzIC0zOTNxLTEwIC0xMCAtMjMgLTEwdC0yMyAxMGwtNTAgNTBxLTEwIDEwIC0xMCAyM3pNNzcgNjA4cTAgMTMgMTAgMjNsNDY2IDQ2NnExMCAxMCAyMyAxMHQyMyAtMTBsNDY2IC00NjZxMTAgLTEwIDEwIC0yM3QtMTAgLTIzIGwtNTAgLTUwcS0xMCAtMTAgLTIzIC0xMHQtMjMgMTBsLTM5MyAzOTNsLTM5MyAtMzkzcS0xMCAtMTAgLTIzIC0xMHQtMjMgMTBsLTUwIDUwcS0xMCAxMCAtMTAgMjN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEwMzsiIGhvcml6LWFkdi14PSIxMTUyIiBkPSJNNzcgNjcycTAgMTMgMTAgMjNsNTAgNTBxMTAgMTAgMjMgMTB0MjMgLTEwbDM5MyAtMzkzbDM5MyAzOTNxMTAgMTAgMjMgMTB0MjMgLTEwbDUwIC01MHExMCAtMTAgMTAgLTIzdC0xMCAtMjNsLTQ2NiAtNDY2cS0xMCAtMTAgLTIzIC0xMHQtMjMgMTBsLTQ2NiA0NjZxLTEwIDEwIC0xMCAyM3pNNzcgMTA1NnEwIDEzIDEwIDIzbDUwIDUwcTEwIDEwIDIzIDEwdDIzIC0xMGwzOTMgLTM5M2wzOTMgMzkzcTEwIDEwIDIzIDEwdDIzIC0xMCBsNTAgLTUwcTEwIC0xMCAxMCAtMjN0LTEwIC0yM2wtNDY2IC00NjZxLTEwIC0xMCAtMjMgLTEwdC0yMyAxMGwtNDY2IDQ2NnEtMTAgMTAgLTEwIDIzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMDQ7IiBob3Jpei1hZHYteD0iNjQwIiBkPSJNNDUgNTc2cTAgMTMgMTAgMjNsNDY2IDQ2NnExMCAxMCAyMyAxMHQyMyAtMTBsNTAgLTUwcTEwIC0xMCAxMCAtMjN0LTEwIC0yM2wtMzkzIC0zOTNsMzkzIC0zOTNxMTAgLTEwIDEwIC0yM3QtMTAgLTIzbC01MCAtNTBxLTEwIC0xMCAtMjMgLTEwdC0yMyAxMGwtNDY2IDQ2NnEtMTAgMTAgLTEwIDIzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMDU7IiBob3Jpei1hZHYteD0iNjQwIiBkPSJNMTMgMTYwcTAgMTMgMTAgMjNsMzkzIDM5M2wtMzkzIDM5M3EtMTAgMTAgLTEwIDIzdDEwIDIzbDUwIDUwcTEwIDEwIDIzIDEwdDIzIC0xMGw0NjYgLTQ2NnExMCAtMTAgMTAgLTIzdC0xMCAtMjNsLTQ2NiAtNDY2cS0xMCAtMTAgLTIzIC0xMHQtMjMgMTBsLTUwIDUwcS0xMCAxMCAtMTAgMjN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEwNjsiIGhvcml6LWFkdi14PSIxMTUyIiBkPSJNNzcgMzUycTAgMTMgMTAgMjNsNDY2IDQ2NnExMCAxMCAyMyAxMHQyMyAtMTBsNDY2IC00NjZxMTAgLTEwIDEwIC0yM3QtMTAgLTIzbC01MCAtNTBxLTEwIC0xMCAtMjMgLTEwdC0yMyAxMGwtMzkzIDM5M2wtMzkzIC0zOTNxLTEwIC0xMCAtMjMgLTEwdC0yMyAxMGwtNTAgNTBxLTEwIDEwIC0xMCAyM3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTA3OyIgaG9yaXotYWR2LXg9IjExNTIiIGQ9Ik03NyA4MDBxMCAxMyAxMCAyM2w1MCA1MHExMCAxMCAyMyAxMHQyMyAtMTBsMzkzIC0zOTNsMzkzIDM5M3ExMCAxMCAyMyAxMHQyMyAtMTBsNTAgLTUwcTEwIC0xMCAxMCAtMjN0LTEwIC0yM2wtNDY2IC00NjZxLTEwIC0xMCAtMjMgLTEwdC0yMyAxMGwtNDY2IDQ2NnEtMTAgMTAgLTEwIDIzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMDg7IiBob3Jpei1hZHYteD0iMTkyMCIgZD0iTTAgMjg4djEwODhxMCA2NiA0NyAxMTN0MTEzIDQ3aDE2MDBxNjYgMCAxMTMgLTQ3dDQ3IC0xMTN2LTEwODhxMCAtNjYgLTQ3IC0xMTN0LTExMyAtNDdoLTU0NHEwIC0zNyAxNiAtNzcuNXQzMiAtNzF0MTYgLTQzLjVxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC01MTJxLTI2IDAgLTQ1IDE5dC0xOSA0NXEwIDE0IDE2IDQ0dDMyIDcwdDE2IDc4aC01NDRxLTY2IDAgLTExMyA0N3QtNDcgMTEzek0xMjggNTQ0cTAgLTEzIDkuNSAtMjIuNSB0MjIuNSAtOS41aDE2MDBxMTMgMCAyMi41IDkuNXQ5LjUgMjIuNXY4MzJxMCAxMyAtOS41IDIyLjV0LTIyLjUgOS41aC0xNjAwcS0xMyAwIC0yMi41IC05LjV0LTkuNSAtMjIuNXYtODMyeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMDk7IiBob3Jpei1hZHYteD0iMTkyMCIgZD0iTTAgOTZ2OTZoMTYwaDE2MDBoMTYwdi05NnEwIC00MCAtNDcgLTY4dC0xMTMgLTI4aC0xNjAwcS02NiAwIC0xMTMgMjh0LTQ3IDY4ek0yNTYgNDE2djcwNHEwIDY2IDQ3IDExM3QxMTMgNDdoMTA4OHE2NiAwIDExMyAtNDd0NDcgLTExM3YtNzA0cTAgLTY2IC00NyAtMTEzdC0xMTMgLTQ3aC0xMDg4cS02NiAwIC0xMTMgNDd0LTQ3IDExM3pNMzg0IDQxNnEwIC0xMyA5LjUgLTIyLjV0MjIuNSAtOS41aDEwODhxMTMgMCAyMi41IDkuNSB0OS41IDIyLjV2NzA0cTAgMTMgLTkuNSAyMi41dC0yMi41IDkuNWgtMTA4OHEtMTMgMCAtMjIuNSAtOS41dC05LjUgLTIyLjV2LTcwNHpNODY0IDExMnEwIC0xNiAxNiAtMTZoMTYwcTE2IDAgMTYgMTZ0LTE2IDE2aC0xNjBxLTE2IDAgLTE2IC0xNnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTBhOyIgaG9yaXotYWR2LXg9IjExNTIiIGQ9Ik0wIDE2MHYxMDg4cTAgNjYgNDcgMTEzdDExMyA0N2g4MzJxNjYgMCAxMTMgLTQ3dDQ3IC0xMTN2LTEwODhxMCAtNjYgLTQ3IC0xMTN0LTExMyAtNDdoLTgzMnEtNjYgMCAtMTEzIDQ3dC00NyAxMTN6TTEyOCAyODhxMCAtMTMgOS41IC0yMi41dDIyLjUgLTkuNWg4MzJxMTMgMCAyMi41IDkuNXQ5LjUgMjIuNXY5NjBxMCAxMyAtOS41IDIyLjV0LTIyLjUgOS41aC04MzJxLTEzIDAgLTIyLjUgLTkuNXQtOS41IC0yMi41di05NjB6TTUxMiAxMjggcTAgLTI2IDE5IC00NXQ0NSAtMTl0NDUgMTl0MTkgNDV0LTE5IDQ1dC00NSAxOXQtNDUgLTE5dC0xOSAtNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEwYjsiIGhvcml6LWFkdi14PSI3NjgiIGQ9Ik0wIDEyOHYxMDI0cTAgNTIgMzggOTB0OTAgMzhoNTEycTUyIDAgOTAgLTM4dDM4IC05MHYtMTAyNHEwIC01MiAtMzggLTkwdC05MCAtMzhoLTUxMnEtNTIgMCAtOTAgMzh0LTM4IDkwek05NiAyODhxMCAtMTMgOS41IC0yMi41dDIyLjUgLTkuNWg1MTJxMTMgMCAyMi41IDkuNXQ5LjUgMjIuNXY3MDRxMCAxMyAtOS41IDIyLjV0LTIyLjUgOS41aC01MTJxLTEzIDAgLTIyLjUgLTkuNXQtOS41IC0yMi41di03MDR6TTI4OCAxMTM2IHEwIC0xNiAxNiAtMTZoMTYwcTE2IDAgMTYgMTZ0LTE2IDE2aC0xNjBxLTE2IDAgLTE2IC0xNnpNMzA0IDEyOHEwIC0zMyAyMy41IC01Ni41dDU2LjUgLTIzLjV0NTYuNSAyMy41dDIzLjUgNTYuNXQtMjMuNSA1Ni41dC01Ni41IDIzLjV0LTU2LjUgLTIzLjV0LTIzLjUgLTU2LjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEwYzsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjV0LTEwMyAtMzg1LjV0LTI3OS41IC0yNzkuNXQtMzg1LjUgLTEwM3QtMzg1LjUgMTAzdC0yNzkuNSAyNzkuNXQtMTAzIDM4NS41ek0yMjQgNjQwcTAgLTE0OCA3MyAtMjczdDE5OCAtMTk4dDI3MyAtNzN0MjczIDczdDE5OCAxOTh0NzMgMjczdC03MyAyNzN0LTE5OCAxOTh0LTI3MyA3M3QtMjczIC03MyB0LTE5OCAtMTk4dC03MyAtMjczeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMGQ7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgMTkydjcwNHEwIDEwNCA0MC41IDE5OC41dDEwOS41IDE2My41dDE2My41IDEwOS41dDE5OC41IDQwLjVoNjRxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMjhxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC02NHEtMTA2IDAgLTE4MSAtNzV0LTc1IC0xODF2LTMycTAgLTQwIDI4IC02OHQ2OCAtMjhoMjI0cTgwIDAgMTM2IC01NnQ1NiAtMTM2di0zODRxMCAtODAgLTU2IC0xMzZ0LTEzNiAtNTZoLTM4NHEtODAgMCAtMTM2IDU2dC01NiAxMzZ6IE04OTYgMTkydjcwNHEwIDEwNCA0MC41IDE5OC41dDEwOS41IDE2My41dDE2My41IDEwOS41dDE5OC41IDQwLjVoNjRxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMjhxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC02NHEtMTA2IDAgLTE4MSAtNzV0LTc1IC0xODF2LTMycTAgLTQwIDI4IC02OHQ2OCAtMjhoMjI0cTgwIDAgMTM2IC01NnQ1NiAtMTM2di0zODRxMCAtODAgLTU2IC0xMzZ0LTEzNiAtNTZoLTM4NHEtODAgMCAtMTM2IDU2dC01NiAxMzZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEwZTsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCA4MzJ2Mzg0cTAgODAgNTYgMTM2dDEzNiA1NmgzODRxODAgMCAxMzYgLTU2dDU2IC0xMzZ2LTcwNHEwIC0xMDQgLTQwLjUgLTE5OC41dC0xMDkuNSAtMTYzLjV0LTE2My41IC0xMDkuNXQtMTk4LjUgLTQwLjVoLTY0cS0yNiAwIC00NSAxOXQtMTkgNDV2MTI4cTAgMjYgMTkgNDV0NDUgMTloNjRxMTA2IDAgMTgxIDc1dDc1IDE4MXYzMnEwIDQwIC0yOCA2OHQtNjggMjhoLTIyNHEtODAgMCAtMTM2IDU2dC01NiAxMzZ6TTg5NiA4MzJ2Mzg0IHEwIDgwIDU2IDEzNnQxMzYgNTZoMzg0cTgwIDAgMTM2IC01NnQ1NiAtMTM2di03MDRxMCAtMTA0IC00MC41IC0xOTguNXQtMTA5LjUgLTE2My41dC0xNjMuNSAtMTA5LjV0LTE5OC41IC00MC41aC02NHEtMjYgMCAtNDUgMTl0LTE5IDQ1djEyOHEwIDI2IDE5IDQ1dDQ1IDE5aDY0cTEwNiAwIDE4MSA3NXQ3NSAxODF2MzJxMCA0MCAtMjggNjh0LTY4IDI4aC0yMjRxLTgwIDAgLTEzNiA1NnQtNTYgMTM2eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMTA7IiBob3Jpei1hZHYteD0iMTU2OCIgZD0iTTAgNjQwcTAgNjYgNDcgMTEzdDExMyA0N3QxMTMgLTQ3dDQ3IC0xMTN0LTQ3IC0xMTN0LTExMyAtNDd0LTExMyA0N3QtNDcgMTEzek0xNzYgMTA4OHEwIDczIDUxLjUgMTI0LjV0MTI0LjUgNTEuNXQxMjQuNSAtNTEuNXQ1MS41IC0xMjQuNXQtNTEuNSAtMTI0LjV0LTEyNC41IC01MS41dC0xMjQuNSA1MS41dC01MS41IDEyNC41ek0yMDggMTkycTAgNjAgNDIgMTAydDEwMiA0MnE1OSAwIDEwMS41IC00MnQ0Mi41IC0xMDJ0LTQyLjUgLTEwMiB0LTEwMS41IC00MnEtNjAgMCAtMTAyIDQydC00MiAxMDJ6TTYwOCAxMjgwcTAgODAgNTYgMTM2dDEzNiA1NnQxMzYgLTU2dDU2IC0xMzZ0LTU2IC0xMzZ0LTEzNiAtNTZ0LTEzNiA1NnQtNTYgMTM2ek02NzIgMHEwIDUzIDM3LjUgOTAuNXQ5MC41IDM3LjV0OTAuNSAtMzcuNXQzNy41IC05MC41dC0zNy41IC05MC41dC05MC41IC0zNy41dC05MC41IDM3LjV0LTM3LjUgOTAuNXpNMTEzNiAxOTJxMCA0NiAzMyA3OXQ3OSAzM3Q3OSAtMzN0MzMgLTc5IHQtMzMgLTc5dC03OSAtMzN0LTc5IDMzdC0zMyA3OXpNMTE2OCAxMDg4cTAgMzMgMjMuNSA1Ni41dDU2LjUgMjMuNXQ1Ni41IC0yMy41dDIzLjUgLTU2LjV0LTIzLjUgLTU2LjV0LTU2LjUgLTIzLjV0LTU2LjUgMjMuNXQtMjMuNSA1Ni41ek0xMzQ0IDY0MHEwIDQwIDI4IDY4dDY4IDI4dDY4IC0yOHQyOCAtNjh0LTI4IC02OHQtNjggLTI4dC02OCAyOHQtMjggNjh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjExMTsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjV0LTEwMyAtMzg1LjV0LTI3OS41IC0yNzkuNXQtMzg1LjUgLTEwM3QtMzg1LjUgMTAzdC0yNzkuNSAyNzkuNXQtMTAzIDM4NS41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMTI7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgODk2cTAgMjYgMTkgNDVsNTEyIDUxMnExOSAxOSA0NSAxOXQ0NSAtMTl0MTkgLTQ1di0yNTZoMjI0cTcxMyAwIDg3NSAtNDAzcTUzIC0xMzQgNTMgLTMzM3EwIC0xNjYgLTEyNyAtNDUxcS0zIC03IC0xMC41IC0yNHQtMTMuNSAtMzB0LTEzIC0yMnEtMTIgLTE3IC0yOCAtMTdxLTE1IDAgLTIzLjUgMTB0LTguNSAyNXEwIDkgMi41IDI2LjV0Mi41IDIzLjVxNSA2OCA1IDEyM3EwIDEwMSAtMTcuNSAxODF0LTQ4LjUgMTM4LjV0LTgwIDEwMSB0LTEwNS41IDY5LjV0LTEzMyA0Mi41dC0xNTQgMjEuNXQtMTc1LjUgNmgtMjI0di0yNTZxMCAtMjYgLTE5IC00NXQtNDUgLTE5dC00NSAxOWwtNTEyIDUxMnEtMTkgMTkgLTE5IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMTM7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgNDk2cTAgMjM3IDEzNiAzOTZxLTI3IDgyIC0yNyAxNzBxMCAxMTYgNTEgMjE4cTEwOCAwIDE5MCAtMzkuNXQxODkgLTEyMy41cTE0NyAzNSAzMDkgMzVxMTQ4IDAgMjgwIC0zMnExMDUgODIgMTg3IDEyMXQxODkgMzlxNTEgLTEwMiA1MSAtMjE4cTAgLTg3IC0yNyAtMTY4cTEzNiAtMTYwIDEzNiAtMzk4cTAgLTIwNyAtNjEgLTMzMXEtMzggLTc3IC0xMDUuNSAtMTMzdC0xNDEgLTg2dC0xNzAgLTQ3LjV0LTE3MS41IC0yMnQtMTY3IC00LjUgcS03OCAwIC0xNDIgM3QtMTQ3LjUgMTIuNXQtMTUyLjUgMzB0LTEzNyA1MS41dC0xMjEgODF0LTg2IDExNXEtNjIgMTIzIC02MiAzMzF6TTIyNCAzMjBxMCAtODggMzIgLTE1My41dDgxIC0xMDN0MTIyIC02MHQxNDAgLTI5LjV0MTQ5IC03aDE2OHE4MiAwIDE0OSA3dDE0MCAyOS41dDEyMiA2MHQ4MSAxMDN0MzIgMTUzLjVxMCAxMjAgLTY5IDIwNHQtMTg3IDg0cS00MSAwIC0xOTUgLTIxcS03MSAtMTEgLTE1NyAtMTF0LTE1NyAxMSBxLTE1MiAyMSAtMTk1IDIxcS0xMTggMCAtMTg3IC04NHQtNjkgLTIwNHpNMzg0IDMyMHEwIDQwIDEyLjUgODJ0NDMgNzZ0NzIuNSAzNHQ3Mi41IC0zNHQ0MyAtNzZ0MTIuNSAtODJ0LTEyLjUgLTgydC00MyAtNzZ0LTcyLjUgLTM0dC03Mi41IDM0dC00MyA3NnQtMTIuNSA4MnpNMTAyNCAzMjBxMCA0MCAxMi41IDgydDQzIDc2dDcyLjUgMzR0NzIuNSAtMzR0NDMgLTc2dDEyLjUgLTgydC0xMi41IC04MnQtNDMgLTc2dC03Mi41IC0zNHQtNzIuNSAzNCB0LTQzIDc2dC0xMi41IDgyeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMTQ7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgMjI0djk2MHEwIDkyIDY2IDE1OHQxNTggNjZoMzIwcTkyIDAgMTU4IC02NnQ2NiAtMTU4di0zMmg2NzJxOTIgMCAxNTggLTY2dDY2IC0xNTh2LTcwNHEwIC05MiAtNjYgLTE1OHQtMTU4IC02NmgtMTIxNnEtOTIgMCAtMTU4IDY2dC02NiAxNTh6TTEyOCAyMjRxMCAtNDAgMjggLTY4dDY4IC0yOGgxMjE2cTQwIDAgNjggMjh0MjggNjh2NzA0cTAgNDAgLTI4IDY4dC02OCAyOGgtNzA0cS00MCAwIC02OCAyOHQtMjggNjh2NjQgcTAgNDAgLTI4IDY4dC02OCAyOGgtMzIwcS00MCAwIC02OCAtMjh0LTI4IC02OHYtOTYweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMTU7IiBob3Jpei1hZHYteD0iMTkyMCIgZD0iTTAgMjI0djk2MHEwIDkyIDY2IDE1OHQxNTggNjZoMzIwcTkyIDAgMTU4IC02NnQ2NiAtMTU4di0zMmg1NDRxOTIgMCAxNTggLTY2dDY2IC0xNTh2LTE2MGgxOTJxNTQgMCA5OSAtMjQuNXQ2NyAtNzAuNXExNSAtMzIgMTUgLTY4cTAgLTYyIC00NiAtMTIwbC0yOTUgLTM2M3EtNDMgLTUzIC0xMTYgLTg3LjV0LTE0MCAtMzQuNWgtMTA4OHEtOTIgMCAtMTU4IDY2dC02NiAxNTh6TTEyOCAzMzFsMjU2IDMxNXE0NCA1MyAxMTYgODcuNSB0MTQwIDM0LjVoNzY4djE2MHEwIDQwIC0yOCA2OHQtNjggMjhoLTU3NnEtNDAgMCAtNjggMjh0LTI4IDY4djY0cTAgNDAgLTI4IDY4dC02OCAyOGgtMzIwcS00MCAwIC02OCAtMjh0LTI4IC02OHYtODUzek0xNzEgMTYzcTAgLTM1IDUzIC0zNWgxMDg4cTQwIDAgODYgMjJ0NzEgNTNsMjk0IDM2M3ExOCAyMiAxOCAzOXEwIDM1IC01MyAzNWgtMTA4OHEtNDAgMCAtODUuNSAtMjEuNXQtNzEuNSAtNTIuNWwtMjk0IC0zNjNxLTE4IC0yNCAtMTggLTQweiAiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTE2OyIgaG9yaXotYWR2LXg9IjE3OTIiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTE3OyIgaG9yaXotYWR2LXg9IjE3OTIiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTE4OyIgZD0iTTAgNjQwcTAgMjA5IDEwMyAzODUuNXQyNzkuNSAyNzkuNXQzODUuNSAxMDN0Mzg1LjUgLTEwM3QyNzkuNSAtMjc5LjV0MTAzIC0zODUuNXQtMTAzIC0zODUuNXQtMjc5LjUgLTI3OS41dC0zODUuNSAtMTAzdC0zODUuNSAxMDN0LTI3OS41IDI3OS41dC0xMDMgMzg1LjV6TTEyOCA2NDBxMCAtMTMwIDUxIC0yNDguNXQxMzYuNSAtMjA0dDIwNCAtMTM2LjV0MjQ4LjUgLTUxdDI0OC41IDUxdDIwNCAxMzYuNXQxMzYuNSAyMDR0NTEgMjQ4LjUgdC01MSAyNDguNXQtMTM2LjUgMjA0dC0yMDQgMTM2LjV0LTI0OC41IDUxdC0yNDguNSAtNTF0LTIwNCAtMTM2LjV0LTEzNi41IC0yMDR0LTUxIC0yNDguNXpNMzg0IDg5NnEwIDUzIDM3LjUgOTAuNXQ5MC41IDM3LjV0OTAuNSAtMzcuNXQzNy41IC05MC41dC0zNy41IC05MC41dC05MC41IC0zNy41dC05MC41IDM3LjV0LTM3LjUgOTAuNXpNNDAyIDQ2MXEtOCAyNSA0IDQ4LjV0MzggMzEuNXEyNSA4IDQ4LjUgLTR0MzEuNSAtMzggcTI1IC04MCA5Mi41IC0xMjkuNXQxNTEuNSAtNDkuNXQxNTEuNSA0OS41dDkyLjUgMTI5LjVxOCAyNiAzMiAzOHQ0OSA0dDM3IC0zMS41dDQgLTQ4LjVxLTM3IC0xMjEgLTEzOCAtMTk1dC0yMjggLTc0dC0yMjggNzR0LTEzOCAxOTV6TTg5NiA4OTZxMCA1MyAzNy41IDkwLjV0OTAuNSAzNy41dDkwLjUgLTM3LjV0MzcuNSAtOTAuNXQtMzcuNSAtOTAuNXQtOTAuNSAtMzcuNXQtOTAuNSAzNy41dC0zNy41IDkwLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjExOTsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjV0LTEwMyAtMzg1LjV0LTI3OS41IC0yNzkuNXQtMzg1LjUgLTEwM3QtMzg1LjUgMTAzdC0yNzkuNSAyNzkuNXQtMTAzIDM4NS41ek0xMjggNjQwcTAgLTEzMCA1MSAtMjQ4LjV0MTM2LjUgLTIwNHQyMDQgLTEzNi41dDI0OC41IC01MXQyNDguNSA1MXQyMDQgMTM2LjV0MTM2LjUgMjA0dDUxIDI0OC41IHQtNTEgMjQ4LjV0LTEzNi41IDIwNHQtMjA0IDEzNi41dC0yNDguNSA1MXQtMjQ4LjUgLTUxdC0yMDQgLTEzNi41dC0xMzYuNSAtMjA0dC01MSAtMjQ4LjV6TTM4NCA4OTZxMCA1MyAzNy41IDkwLjV0OTAuNSAzNy41dDkwLjUgLTM3LjV0MzcuNSAtOTAuNXQtMzcuNSAtOTAuNXQtOTAuNSAtMzcuNXQtOTAuNSAzNy41dC0zNy41IDkwLjV6TTQwMiAzMDdxMzcgMTIxIDEzOCAxOTV0MjI4IDc0dDIyOCAtNzR0MTM4IC0xOTVxOCAtMjUgLTQgLTQ4LjUgdC0zNyAtMzEuNXQtNDkgNHQtMzIgMzhxLTI1IDgwIC05Mi41IDEyOS41dC0xNTEuNSA0OS41dC0xNTEuNSAtNDkuNXQtOTIuNSAtMTI5LjVxLTggLTI2IC0zMS41IC0zOHQtNDguNSAtNHEtMjYgOCAtMzggMzEuNXQtNCA0OC41ek04OTYgODk2cTAgNTMgMzcuNSA5MC41dDkwLjUgMzcuNXQ5MC41IC0zNy41dDM3LjUgLTkwLjV0LTM3LjUgLTkwLjV0LTkwLjUgLTM3LjV0LTkwLjUgMzcuNXQtMzcuNSA5MC41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMWE7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNMTI4IDY0MHEwIC0xMzAgNTEgLTI0OC41dDEzNi41IC0yMDR0MjA0IC0xMzYuNXQyNDguNSAtNTF0MjQ4LjUgNTF0MjA0IDEzNi41dDEzNi41IDIwNHQ1MSAyNDguNSB0LTUxIDI0OC41dC0xMzYuNSAyMDR0LTIwNCAxMzYuNXQtMjQ4LjUgNTF0LTI0OC41IC01MXQtMjA0IC0xMzYuNXQtMTM2LjUgLTIwNHQtNTEgLTI0OC41ek0zODQgNDQ4cTAgMjYgMTkgNDV0NDUgMTloNjQwcTI2IDAgNDUgLTE5dDE5IC00NXQtMTkgLTQ1dC00NSAtMTloLTY0MHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0zODQgODk2cTAgNTMgMzcuNSA5MC41dDkwLjUgMzcuNXQ5MC41IC0zNy41dDM3LjUgLTkwLjV0LTM3LjUgLTkwLjUgdC05MC41IC0zNy41dC05MC41IDM3LjV0LTM3LjUgOTAuNXpNODk2IDg5NnEwIDUzIDM3LjUgOTAuNXQ5MC41IDM3LjV0OTAuNSAtMzcuNXQzNy41IC05MC41dC0zNy41IC05MC41dC05MC41IC0zNy41dC05MC41IDM3LjV0LTM3LjUgOTAuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTFiOyIgaG9yaXotYWR2LXg9IjE5MjAiIGQ9Ik0wIDUxMnEwIDIxMiAxNTAgMzYydDM2MiAxNTBoODk2cTIxMiAwIDM2MiAtMTUwdDE1MCAtMzYydC0xNTAgLTM2MnQtMzYyIC0xNTBxLTE5MiAwIC0zMzggMTI4aC0yMjBxLTE0NiAtMTI4IC0zMzggLTEyOHEtMjEyIDAgLTM2MiAxNTB0LTE1MCAzNjJ6TTE5MiA0NDhxMCAtMTQgOSAtMjN0MjMgLTloMTkydi0xOTJxMCAtMTQgOSAtMjN0MjMgLTloMTI4cTE0IDAgMjMgOXQ5IDIzdjE5MmgxOTJxMTQgMCAyMyA5dDkgMjN2MTI4IHEwIDE0IC05IDIzdC0yMyA5aC0xOTJ2MTkycTAgMTQgLTkgMjN0LTIzIDloLTEyOHEtMTQgMCAtMjMgLTl0LTkgLTIzdi0xOTJoLTE5MnEtMTQgMCAtMjMgLTl0LTkgLTIzdi0xMjh6TTExNTIgMzg0cTAgLTUzIDM3LjUgLTkwLjV0OTAuNSAtMzcuNXQ5MC41IDM3LjV0MzcuNSA5MC41dC0zNy41IDkwLjV0LTkwLjUgMzcuNXQtOTAuNSAtMzcuNXQtMzcuNSAtOTAuNXpNMTQwOCA2NDBxMCAtNTMgMzcuNSAtOTAuNXQ5MC41IC0zNy41IHQ5MC41IDM3LjV0MzcuNSA5MC41dC0zNy41IDkwLjV0LTkwLjUgMzcuNXQtOTAuNSAtMzcuNXQtMzcuNSAtOTAuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTFjOyIgaG9yaXotYWR2LXg9IjE5MjAiIGQ9Ik0wIDEyOHY4OTZxMCA1MyAzNy41IDkwLjV0OTAuNSAzNy41aDE2NjRxNTMgMCA5MC41IC0zNy41dDM3LjUgLTkwLjV2LTg5NnEwIC01MyAtMzcuNSAtOTAuNXQtOTAuNSAtMzcuNWgtMTY2NHEtNTMgMCAtOTAuNSAzNy41dC0zNy41IDkwLjV6TTEyOCAxMjhoMTY2NHY4OTZoLTE2NjR2LTg5NnpNMjU2IDI3MnY5NnEwIDE2IDE2IDE2aDk2cTE2IDAgMTYgLTE2di05NnEwIC0xNiAtMTYgLTE2aC05NnEtMTYgMCAtMTYgMTZ6TTI1NiA1Mjh2OTYgcTAgMTYgMTYgMTZoMjI0cTE2IDAgMTYgLTE2di05NnEwIC0xNiAtMTYgLTE2aC0yMjRxLTE2IDAgLTE2IDE2ek0yNTYgNzg0djk2cTAgMTYgMTYgMTZoOTZxMTYgMCAxNiAtMTZ2LTk2cTAgLTE2IC0xNiAtMTZoLTk2cS0xNiAwIC0xNiAxNnpNNTEyIDI3MnY5NnEwIDE2IDE2IDE2aDg2NHExNiAwIDE2IC0xNnYtOTZxMCAtMTYgLTE2IC0xNmgtODY0cS0xNiAwIC0xNiAxNnpNNTEyIDc4NHY5NnEwIDE2IDE2IDE2aDk2cTE2IDAgMTYgLTE2di05NiBxMCAtMTYgLTE2IC0xNmgtOTZxLTE2IDAgLTE2IDE2ek02NDAgNTI4djk2cTAgMTYgMTYgMTZoOTZxMTYgMCAxNiAtMTZ2LTk2cTAgLTE2IC0xNiAtMTZoLTk2cS0xNiAwIC0xNiAxNnpNNzY4IDc4NHY5NnEwIDE2IDE2IDE2aDk2cTE2IDAgMTYgLTE2di05NnEwIC0xNiAtMTYgLTE2aC05NnEtMTYgMCAtMTYgMTZ6TTg5NiA1Mjh2OTZxMCAxNiAxNiAxNmg5NnExNiAwIDE2IC0xNnYtOTZxMCAtMTYgLTE2IC0xNmgtOTZxLTE2IDAgLTE2IDE2eiBNMTAyNCA3ODR2OTZxMCAxNiAxNiAxNmg5NnExNiAwIDE2IC0xNnYtOTZxMCAtMTYgLTE2IC0xNmgtOTZxLTE2IDAgLTE2IDE2ek0xMTUyIDUyOHY5NnEwIDE2IDE2IDE2aDk2cTE2IDAgMTYgLTE2di05NnEwIC0xNiAtMTYgLTE2aC05NnEtMTYgMCAtMTYgMTZ6TTEyODAgNzg0djk2cTAgMTYgMTYgMTZoOTZxMTYgMCAxNiAtMTZ2LTk2cTAgLTE2IC0xNiAtMTZoLTk2cS0xNiAwIC0xNiAxNnpNMTQwOCA1Mjh2OTZxMCAxNiAxNiAxNmgxMTJ2MjQwIHEwIDE2IDE2IDE2aDk2cTE2IDAgMTYgLTE2di0zNTJxMCAtMTYgLTE2IC0xNmgtMjI0cS0xNiAwIC0xNiAxNnpNMTUzNiAyNzJ2OTZxMCAxNiAxNiAxNmg5NnExNiAwIDE2IC0xNnYtOTZxMCAtMTYgLTE2IC0xNmgtOTZxLTE2IDAgLTE2IDE2eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMWQ7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTY0IDEyODBxMCA1MyAzNy41IDkwLjV0OTAuNSAzNy41dDkwLjUgLTM3LjV0MzcuNSAtOTAuNXEwIC0zNSAtMTcuNSAtNjR0LTQ2LjUgLTQ2di0xMjY2cTAgLTE0IC05IC0yM3QtMjMgLTloLTY0cS0xNCAwIC0yMyA5dC05IDIzdjEyNjZxLTI5IDE3IC00Ni41IDQ2dC0xNy41IDY0ek0zMjAgMzIwdjc0MnEwIDM1IDMxIDU1cTM1IDIxIDc4LjUgNDIuNXQxMTQgNTJ0MTUyLjUgNDkuNXQxNTUgMTlxMTEyIDAgMjA5IC0zMXQyMDkgLTg2IHEzOCAtMTkgODkgLTE5cTEyMiAwIDMxMCAxMTJxMjIgMTIgMzEgMTdxMzEgMTYgNjIgLTJxMzEgLTIwIDMxIC01NXYtNzYzcTAgLTM5IC0zNSAtNTdxLTEwIC01IC0xNyAtOXEtMjE4IC0xMTYgLTM2OSAtMTE2cS04OCAwIC0xNTggMzVsLTI4IDE0cS02NCAzMyAtOTkgNDh0LTkxIDI5dC0xMTQgMTRxLTEwMiAwIC0yMzUuNSAtNDR0LTIyOC41IC0xMDJxLTE1IC05IC0zMyAtOXEtMTYgMCAtMzIgOHEtMzIgMTkgLTMyIDU2ek00NDggNDI2IHEyNDUgMTEzIDQzMyAxMTNxNTUgMCAxMDMuNSAtNy41dDk4IC0yNnQ3NyAtMzF0ODIuNSAtMzkuNWwyOCAtMTRxNDQgLTIyIDEwMSAtMjJxMTIwIDAgMjkzIDkydjYxNnEtMTY5IC05MSAtMzA2IC05MXEtODIgMCAtMTQ1IDMycS0xMDAgNDkgLTE4NCA3Ni41dC0xNzggMjcuNXEtMTczIDAgLTQwMyAtMTI3di01OTl6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjExZTsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNNjQgMTI4MHEwIDUzIDM3LjUgOTAuNXQ5MC41IDM3LjV0OTAuNSAtMzcuNXQzNy41IC05MC41cTAgLTM1IC0xNy41IC02NHQtNDYuNSAtNDZ2LTEyNjZxMCAtMTQgLTkgLTIzdC0yMyAtOWgtNjRxLTE0IDAgLTIzIDl0LTkgMjN2MTI2NnEtMjkgMTcgLTQ2LjUgNDZ0LTE3LjUgNjR6TTMyMCAzMjB2NzQycTAgMzUgMzEgNTVxMzUgMjEgNzguNSA0Mi41dDExNCA1MnQxNTIuNSA0OS41dDE1NSAxOXExMTIgMCAyMDkgLTMxdDIwOSAtODYgcTM4IC0xOSA4OSAtMTlxMTIyIDAgMzEwIDExMnEyMiAxMiAzMSAxN3EzMSAxNiA2MiAtMnEzMSAtMjAgMzEgLTU1di03NjNxMCAtMzkgLTM1IC01N3EtMTAgLTUgLTE3IC05cS0yMTggLTExNiAtMzY5IC0xMTZxLTg4IDAgLTE1OCAzNWwtMjggMTRxLTY0IDMzIC05OSA0OHQtOTEgMjl0LTExNCAxNHEtMTAyIDAgLTIzNS41IC00NHQtMjI4LjUgLTEwMnEtMTUgLTkgLTMzIC05cS0xNiAwIC0zMiA4cS0zMiAxOSAtMzIgNTZ6TTQ0OCA0MjYgcTIwNSA5NiAzODQgMTEwdjE5MnEtMTgxIC0xNiAtMzg0IC0xMTd2LTE4NXpNNDQ4IDgzNnEyMTUgMTExIDM4NCAxMTh2MTk3cS0xNzIgLTggLTM4NCAtMTI2di0xODl6TTgzMiA3MzBoMTlxMTAyIDAgMTkyLjUgLTI5dDE5Ny41IC04MnExOSAtOSAzOSAtMTV2LTE4OHE0MiAtMTcgOTEgLTE3cTEyMCAwIDI5MyA5MnYxODRxLTIzNSAtMTE2IC0zODQgLTcxdjIyNHEtMjAgNiAtMzkgMTVxLTUgMyAtMzMgMTd0LTM0LjUgMTd0LTMxLjUgMTUgdC0zNC41IDE1LjV0LTMyLjUgMTN0LTM2IDEyLjV0LTM1IDguNXQtMzkuNSA3LjV0LTM5LjUgNHQtNDQgMnEtMjMgMCAtNDkgLTN2LTIyMnpNMTI4MCA4MjhxMTQ4IC00MiAzODQgOTB2MTg5cS0xNjkgLTkxIC0zMDYgLTkxcS00NSAwIC03OCA4di0xOTZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEyMDsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMTMgMTYwcTAgMTMgMTAgMjNsMzkzIDM5M2wtMzkzIDM5M3EtMTAgMTAgLTEwIDIzdDEwIDIzbDUwIDUwcTEwIDEwIDIzIDEwdDIzIC0xMGw0NjYgLTQ2NnExMCAtMTAgMTAgLTIzdC0xMCAtMjNsLTQ2NiAtNDY2cS0xMCAtMTAgLTIzIC0xMHQtMjMgMTBsLTUwIDUwcS0xMCAxMCAtMTAgMjN6TTY0MCAzMnY2NHEwIDE0IDkgMjN0MjMgOWg5NjBxMTQgMCAyMyAtOXQ5IC0yM3YtNjRxMCAtMTQgLTkgLTIzdC0yMyAtOWgtOTYwIHEtMTQgMCAtMjMgOXQtOSAyM3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTIxOyIgaG9yaXotYWR2LXg9IjE5MjAiIGQ9Ik00NSA1NzZxMCAxMyAxMCAyM2w0NjYgNDY2cTEwIDEwIDIzIDEwdDIzIC0xMGw1MCAtNTBxMTAgLTEwIDEwIC0yM3QtMTAgLTIzbC0zOTMgLTM5M2wzOTMgLTM5M3ExMCAtMTAgMTAgLTIzdC0xMCAtMjNsLTUwIC01MHEtMTAgLTEwIC0yMyAtMTB0LTIzIDEwbC00NjYgNDY2cS0xMCAxMCAtMTAgMjN6TTcxMiAtNTJsMzczIDEyOTFxNCAxMyAxNS41IDE5LjV0MjMuNSAyLjVsNjIgLTE3cTEzIC00IDE5LjUgLTE1LjV0Mi41IC0yNC41IGwtMzczIC0xMjkxcS00IC0xMyAtMTUuNSAtMTkuNXQtMjMuNSAtMi41bC02MiAxN3EtMTMgNCAtMTkuNSAxNS41dC0yLjUgMjQuNXpNMTI5MyAxNjBxMCAxMyAxMCAyM2wzOTMgMzkzbC0zOTMgMzkzcS0xMCAxMCAtMTAgMjN0MTAgMjNsNTAgNTBxMTAgMTAgMjMgMTB0MjMgLTEwbDQ2NiAtNDY2cTEwIC0xMCAxMCAtMjN0LTEwIC0yM2wtNDY2IC00NjZxLTEwIC0xMCAtMjMgLTEwdC0yMyAxMGwtNTAgNTBxLTEwIDEwIC0xMCAyM3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTIyOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDg5NnEwIDI2IDE5IDQ1bDUxMiA1MTJxMjkgMzEgNzAgMTRxMzkgLTE3IDM5IC01OXYtNjlsLTM5NyAtMzk4cS0xOSAtMTkgLTE5IC00NXQxOSAtNDVsMzk3IC0zOTd2LTcwcTAgLTQyIC0zOSAtNTlxLTEzIC01IC0yNSAtNXEtMjcgMCAtNDUgMTlsLTUxMiA1MTJxLTE5IDE5IC0xOSA0NXpNMzg0IDg5NnEwIDI2IDE5IDQ1bDUxMiA1MTJxMjkgMzEgNzAgMTRxMzkgLTE3IDM5IC01OXYtMjYycTQxMSAtMjggNTk5IC0yMjEgcTE2OSAtMTczIDE2OSAtNTA5cTAgLTU4IC0xNyAtMTMzLjV0LTM4LjUgLTEzOHQtNDggLTEyNXQtNDAuNSAtOTAuNWwtMjAgLTQwcS04IC0xNyAtMjggLTE3cS02IDAgLTkgMXEtMjUgOCAtMjMgMzRxNDMgNDAwIC0xMDYgNTY1cS02NCA3MSAtMTcwLjUgMTEwLjV0LTI2Ny41IDUyLjV2LTI1MXEwIC00MiAtMzkgLTU5cS0xMyAtNSAtMjUgLTVxLTI3IDAgLTQ1IDE5bC01MTIgNTEycS0xOSAxOSAtMTkgNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEyMzsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMiA5MDAuNXE5IDI3LjUgNTQgMzQuNWw1MDIgNzNsMjI1IDQ1NXEyMCA0MSA0OSA0MXEyOCAwIDQ5IC00MWwyMjUgLTQ1NWw1MDIgLTczcTQ1IC03IDU0IC0zNC41dC0yNCAtNTkuNWwtMzYzIC0zNTRsODYgLTUwMHE1IC0zMyAtNiAtNTEuNXQtMzQgLTE4LjVxLTE3IDAgLTQwIDEybC00NDkgMjM2bC00NDkgLTIzNnEtMjMgLTEyIC00MCAtMTJxLTIzIDAgLTM0IDE4LjV0LTYgNTEuNWw4NiA1MDBsLTM2NCAzNTRxLTMyIDMyIC0yMyA1OS41eiBNODMyIDMxMGw1OSAtMzFsMzE4IC0xNjhsLTYwIDM1NWwtMTIgNjZsNDkgNDdsMjU3IDI1MGwtMzU2IDUybC02NiAxMGwtMzAgNjBsLTE1OSAzMjJ2LTk2M3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTI0OyIgaG9yaXotYWR2LXg9IjE0MDgiIGQ9Ik0yIDU2MXEtNSAyMiA0IDQydDI5IDMwbDEyODAgNjQwcTEzIDcgMjkgN3EyNyAwIDQ1IC0xOXExNSAtMTQgMTguNSAtMzQuNXQtNi41IC0zOS41bC02NDAgLTEyODBxLTE3IC0zNSAtNTcgLTM1cS01IDAgLTE1IDJxLTIyIDUgLTM1LjUgMjIuNXQtMTMuNSAzOS41djU3NmgtNTc2cS0yMiAwIC0zOS41IDEzLjV0LTIyLjUgMzUuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTI1OyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0wIDkyOHYxOTJxMCAxNCA5IDIzdDIzIDloMjI0djIyNHEwIDE0IDkgMjN0MjMgOWgxOTJxMTQgMCAyMyAtOXQ5IC0yM3YtMjI0aDg1MWwyNDYgMjQ3cTEwIDkgMjMgOXQyMyAtOXE5IC0xMCA5IC0yM3QtOSAtMjNsLTI0NyAtMjQ2di04NTFoMjI0cTE0IDAgMjMgLTl0OSAtMjN2LTE5MnEwIC0xNCAtOSAtMjN0LTIzIC05aC0yMjR2LTIyNHEwIC0xNCAtOSAtMjN0LTIzIC05aC0xOTJxLTE0IDAgLTIzIDl0LTkgMjN2MjI0aC04NjQgcS0xNCAwIC0yMyA5dC05IDIzdjg2NGgtMjI0cS0xNCAwIC0yMyA5dC05IDIzek01MTIgMzAxbDU5NSA1OTVoLTU5NXYtNTk1ek01NTcgMjU2aDU5NXY1OTV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEyNjsiIGhvcml6LWFkdi14PSIxMDI0IiBkPSJNMCA2NHEwIDUyIDI2IDk2LjV0NzAgNjkuNXY4MjBxLTQ0IDI1IC03MCA2OS41dC0yNiA5Ni41cTAgODAgNTYgMTM2dDEzNiA1NnQxMzYgLTU2dDU2IC0xMzZxMCAtNTIgLTI2IC05Ni41dC03MCAtNjkuNXYtNDk3cTU0IDI2IDE1NCA1N3E1NSAxNyA4Ny41IDI5LjV0NzAuNSAzMXQ1OSAzOS41dDQwLjUgNTF0MjggNjkuNXQ4LjUgOTEuNXEtNDQgMjUgLTcwIDY5LjV0LTI2IDk2LjVxMCA4MCA1NiAxMzZ0MTM2IDU2dDEzNiAtNTZ0NTYgLTEzNiBxMCAtNTIgLTI2IC05Ni41dC03MCAtNjkuNXEtMiAtMjg3IC0yMjYgLTQxNHEtNjggLTM4IC0yMDMgLTgxcS0xMjggLTQwIC0xNjkuNSAtNzF0LTQxLjUgLTEwMHYtMjZxNDQgLTI1IDcwIC02OS41dDI2IC05Ni41cTAgLTgwIC01NiAtMTM2dC0xMzYgLTU2dC0xMzYgNTZ0LTU2IDEzNnpNOTYgNjRxMCAtNDAgMjggLTY4dDY4IC0yOHQ2OCAyOHQyOCA2OHQtMjggNjh0LTY4IDI4dC02OCAtMjh0LTI4IC02OHpNOTYgMTIxNnEwIC00MCAyOCAtNjggdDY4IC0yOHQ2OCAyOHQyOCA2OHQtMjggNjh0LTY4IDI4dC02OCAtMjh0LTI4IC02OHpNNzM2IDEwODhxMCAtNDAgMjggLTY4dDY4IC0yOHQ2OCAyOHQyOCA2OHQtMjggNjh0LTY4IDI4dC02OCAtMjh0LTI4IC02OHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTI3OyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0wIDQ0OHEwIDE0IDkgMjN0MjMgOWgzMjBxMTQgMCAyMyAtOXQ5IC0yM3QtOSAtMjN0LTIzIC05aC0zMjBxLTE0IDAgLTIzIDl0LTkgMjN6TTE2IDEwODhxMCAxMjAgODUgMjAzbDE0NyAxNDZxODMgODMgMjAzIDgzcTEyMSAwIDIwNCAtODVsMzM0IC0zMzVxMjEgLTIxIDQyIC01NmwtMjM5IC0xOGwtMjczIDI3NHEtMjggMjggLTY4IDI4cS0zOSAwIC02OCAtMjdsLTE0NyAtMTQ2cS0yOCAtMjggLTI4IC02N3EwIC00MCAyOCAtNjggbDI3NCAtMjc0bC0xOCAtMjQwcS0zNSAyMSAtNTYgNDJsLTMzNiAzMzZxLTg0IDg2IC04NCAyMDR6TTEyOCAzMnEwIDEzIDkgMjNsMjU2IDI1NnExMCA5IDIzIDl0MjMgLTlxOSAtMTAgOSAtMjN0LTkgLTIzbC0yNTYgLTI1NnEtMTAgLTkgLTIzIC05cS0xMiAwIC0yMyA5cS05IDEwIC05IDIzek01NDQgLTk2djMyMHEwIDE0IDkgMjN0MjMgOXQyMyAtOXQ5IC0yM3YtMzIwcTAgLTE0IC05IC0yM3QtMjMgLTl0LTIzIDl0LTkgMjN6TTYzMyAzNjQgbDIzOSAxOGwyNzMgLTI3NHEyNyAtMjcgNjggLTI3LjV0NjggMjYuNWwxNDcgMTQ2cTI4IDI4IDI4IDY3cTAgNDAgLTI4IDY4bC0yNzQgMjc1bDE4IDIzOXEzNSAtMjEgNTYgLTQybDMzNiAtMzM2cTg0IC04NiA4NCAtMjA0cTAgLTEyMCAtODUgLTIwM2wtMTQ3IC0xNDZxLTgzIC04MyAtMjAzIC04M3EtMTIxIDAgLTIwNCA4NWwtMzM0IDMzNXEtMjEgMjEgLTQyIDU2ek0xMDU2IDExODR2MzIwcTAgMTQgOSAyM3QyMyA5dDIzIC05dDkgLTIzdi0zMjAgcTAgLTE0IC05IC0yM3QtMjMgLTl0LTIzIDl0LTkgMjN6TTEyMTYgMTEyMHEwIDEzIDkgMjNsMjU2IDI1NnExMCA5IDIzIDl0MjMgLTlxOSAtMTAgOSAtMjN0LTkgLTIzbC0yNTYgLTI1NnEtMTEgLTkgLTIzIC05dC0yMyA5cS05IDEwIC05IDIzek0xMjgwIDk2MHEwIDE0IDkgMjN0MjMgOWgzMjBxMTQgMCAyMyAtOXQ5IC0yM3QtOSAtMjN0LTIzIC05aC0zMjBxLTE0IDAgLTIzIDl0LTkgMjN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEyODsiIGhvcml6LWFkdi14PSIxMDI0IiBkPSJNOTYuNSA5ODZxLTIuNSAxNSA1LjUgMjhxMTYwIDI2NiA0NjQgMjY2cTgwIDAgMTYxIC0zMXQxNDYgLTgzdDEwNiAtMTI3LjV0NDEgLTE1OC41cTAgLTU0IC0xNS41IC0xMDF0LTM1IC03Ni41dC01NSAtNTkuNXQtNTcuNSAtNDMuNXQtNjEgLTM1LjVxLTQxIC0yMyAtNjguNSAtNjV0LTI3LjUgLTY3cTAgLTE3IC0xMiAtMzIuNXQtMjggLTE1LjVoLTI0MHEtMTUgMCAtMjUuNSAxOC41dC0xMC41IDM3LjV2NDVxMCA4MyA2NSAxNTYuNSB0MTQzIDEwOC41cTU5IDI3IDg0IDU2dDI1IDc2cTAgNDIgLTQ2LjUgNzR0LTEwNy41IDMycS02NSAwIC0xMDggLTI5cS0zNSAtMjUgLTEwNyAtMTE1cS0xMyAtMTYgLTMxIC0xNnEtMTIgMCAtMjUgOGwtMTY0IDEyNXEtMTMgMTAgLTE1LjUgMjV6TTM4NCA0MHYyNDBxMCAxNiAxMiAyOHQyOCAxMmgyNDBxMTYgMCAyOCAtMTJ0MTIgLTI4di0yNDBxMCAtMTYgLTEyIC0yOHQtMjggLTEyaC0yNDBxLTE2IDAgLTI4IDEydC0xMiAyOHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTI5OyIgaG9yaXotYWR2LXg9IjY0MCIgZD0iTTAgNjR2MTI4cTAgMjYgMTkgNDV0NDUgMTloNjR2Mzg0aC02NHEtMjYgMCAtNDUgMTl0LTE5IDQ1djEyOHEwIDI2IDE5IDQ1dDQ1IDE5aDM4NHEyNiAwIDQ1IC0xOXQxOSAtNDV2LTU3Nmg2NHEyNiAwIDQ1IC0xOXQxOSAtNDV2LTEyOHEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTUxMnEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0xMjggMTE1MnYxOTJxMCAyNiAxOSA0NXQ0NSAxOWgyNTZxMjYgMCA0NSAtMTl0MTkgLTQ1di0xOTIgcTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMjU2cS0yNiAwIC00NSAxOXQtMTkgNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEyYTsiIGhvcml6LWFkdi14PSI2NDAiIGQ9Ik05OCAxMzQ0cS0xIDI2IDE3LjUgNDV0NDQuNSAxOWgzMjBxMjYgMCA0NC41IC0xOXQxNy41IC00NWwtMjggLTc2OHEtMSAtMjYgLTIwLjUgLTQ1dC00NS41IC0xOWgtMjU2cS0yNiAwIC00NS41IDE5dC0yMC41IDQ1ek0xMjggNjR2MjI0cTAgMjYgMTkgNDV0NDUgMTloMjU2cTI2IDAgNDUgLTE5dDE5IC00NXYtMjI0cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMjU2cS0yNiAwIC00NSAxOXQtMTkgNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEyYjsiIGQ9Ik01IDB2MTY3aDEyOGwxOTcgMjkxbC0xODUgMjcyaC0xMzd2MTY4aDI3NmwxMzkgLTIyOHEyIC00IDIzIC00MnE4IC05IDExIC0yMWgzcTMgOSAxMSAyMWwyNSA0MmwxNDAgMjI4aDI1N3YtMTY4aC0xMjVsLTE4NCAtMjY3bDIwNCAtMjk2aDEwOXYtMTY3aC0yNDhsLTE1OSAyNTJsLTI0IDQycS04IDkgLTExIDIxaC0zbC05IC0yMXEtMTAgLTIwIC0yNSAtNDRsLTE1NSAtMjUwaC0yNTh6TTEwMTMgNzEzcTAgNjQgMjYgMTE3dDY1IDg2LjUgdDg0IDY1dDg0IDU0LjV0NjUgNTR0MjYgNjRxMCAzOCAtMjkuNSA2Mi41dC03MC41IDI0LjVxLTUxIDAgLTk3IC0zOXEtMTQgLTExIC0zNiAtMzhsLTEwNSA5MnEyNiAzNyA2MyA2NnE4MyA2NSAxODggNjVxMTEwIDAgMTc4IC01OS41dDY4IC0xNTguNXEwIC01NiAtMjQuNSAtMTAzdC02MiAtNzYuNXQtODEuNSAtNTguNXQtODIgLTUwLjV0LTY1LjUgLTUxLjV0LTMwLjUgLTYzaDIzMnY4MGgxMjZ2LTIwNmgtNTE0bC0zIDI3cS00IDI4IC00IDQ2eiAiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTJjOyIgZD0iTTUgMHYxNjdoMTI4bDE5NyAyOTFsLTE4NSAyNzJoLTEzN3YxNjhoMjc2bDEzOSAtMjI4cTIgLTQgMjMgLTQycTggLTkgMTEgLTIxaDNxMyA5IDExIDIxbDI1IDQybDE0MCAyMjhoMjU3di0xNjhoLTEyNWwtMTg0IC0yNjdsMjA0IC0yOTZoMTA5di0xNjdoLTI0OGwtMTU5IDI1MmwtMjQgNDJxLTggOSAtMTEgMjFoLTNsLTkgLTIxcS0xMCAtMjAgLTI1IC00NGwtMTU1IC0yNTBoLTI1OHpNMTAxNSAtMTgzcTAgNjQgMjYgMTE3dDY1IDg2LjUgdDg0IDY1dDg0IDU0LjV0NjUgNTR0MjYgNjRxMCAzOCAtMjkuNSA2Mi41dC03MC41IDI0LjVxLTUxIDAgLTk3IC0zOXEtMTQgLTExIC0zNiAtMzhsLTEwNSA5MnEyNiAzNyA2MyA2NnE4MCA2NSAxODggNjVxMTEwIDAgMTc4IC01OS41dDY4IC0xNTguNXEwIC02NiAtMzQuNSAtMTE4LjV0LTg0IC04NnQtOTkuNSAtNjIuNXQtODcgLTYzdC00MSAtNzNoMjMydjgwaDEyNnYtMjA2aC01MTRsLTQgMjdxLTMgNDUgLTMgNDZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEyZDsiIGhvcml6LWFkdi14PSIxOTIwIiBkPSJNMS41IDE0Ni41cTUuNSAzNy41IDMwLjUgNjUuNWw4OTYgMTAyNHEzOCA0NCA5NiA0NGg3NjhxMzggMCA2OS41IC0yMC41dDQ3LjUgLTU0LjVxMTUgLTM0IDkuNSAtNzEuNXQtMzAuNSAtNjUuNWwtODk2IC0xMDI0cS0zOCAtNDQgLTk2IC00NGgtNzY4cS0zOCAwIC02OS41IDIwLjV0LTQ3LjUgNTQuNXEtMTUgMzQgLTkuNSA3MS41ek0xMjggMTI4aDc2OGwzMzYgMzg0aC03Njh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEyZTsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCAwdjEwMjRxMiAtMSAxNy41IC0zLjV0MzQgLTV0MjEuNSAtMy41cTE1MCAtMjQgMjQ1IC0yNHE4MCAwIDExNyAzNXE0NiA0NCA0NiA4OXEwIDIyIC0xNSA1MC41dC0zMy41IDUzdC0zMy41IDY0LjV0LTE1IDgzcTAgODIgNTkgMTI3LjV0MTQ0IDQ1LjVxODAgMCAxMzQgLTQ0LjV0NTQgLTEyMy41cTAgLTQxIC0xNy41IC03Ny41dC0zOCAtNTl0LTM4IC01Ni41dC0xNy41IC03MXEwIC01NyA0MiAtODMuNXQxMDMgLTI2LjUgcTY0IDAgMTgwIDE1dDE2MyAxN3YtMnEtMSAtMiAtMy41IC0xNy41dC01IC0zNHQtMy41IC0yMS41cS0yNCAtMTUwIC0yNCAtMjQ1cTAgLTgwIDM1IC0xMTdxNDQgLTQ2IDg5IC00NnEyMiAwIDUwLjUgMTV0NTMgMzMuNXQ2NC41IDMzLjV0ODMgMTVxODIgMCAxMjcuNSAtNTl0NDUuNSAtMTQzcTAgLTgxIC00NC41IC0xMzV0LTEyMy41IC01NHEtNDEgMCAtNzcuNSAxNy41dC01OSAzOHQtNTYuNSAzOHQtNzEgMTcuNXEtMTEwIDAgLTExMCAtMTI0IHEwIC0zOSAxNiAtMTE1dDE1IC0xMTV2LTVxLTIyIDAgLTMzIC0xcS0zNCAtMyAtOTcuNSAtMTEuNXQtMTE1LjUgLTEzLjV0LTk4IC01cS02MSAwIC0xMDMgMjYuNXQtNDIgODMuNXEwIDM3IDE3LjUgNzF0MzggNTYuNXQzOCA1OXQxNy41IDc3LjVxMCA3OSAtNTQgMTIzLjV0LTEzNSA0NC41cS04NCAwIC0xNDMgLTQ1LjV0LTU5IC0xMjcuNXEwIC00MyAxNSAtODN0MzMuNSAtNjQuNXQzMy41IC01M3QxNSAtNTAuNXEwIC00NSAtNDYgLTg5IHEtMzcgLTM1IC0xMTcgLTM1cS05NSAwIC0yNDUgMjRxLTkgMiAtMjcuNSA0dC0yNy41IDRsLTEzIDJxLTEgMCAtMyAxcS0yIDAgLTIgMXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTMwOyIgaG9yaXotYWR2LXg9IjExNTIiIGQ9Ik0wIDcwNHYxMjhxMCAyNiAxOSA0NXQ0NSAxOXQ0NSAtMTl0MTkgLTQ1di0xMjhxMCAtMTg1IDEzMS41IC0zMTYuNXQzMTYuNSAtMTMxLjV0MzE2LjUgMTMxLjV0MTMxLjUgMzE2LjV2MTI4cTAgMjYgMTkgNDV0NDUgMTl0NDUgLTE5dDE5IC00NXYtMTI4cTAgLTIyMSAtMTQ3LjUgLTM4NC41dC0zNjQuNSAtMTg3LjV2LTEzMmgyNTZxMjYgMCA0NSAtMTl0MTkgLTQ1dC0xOSAtNDV0LTQ1IC0xOWgtNjQwcS0yNiAwIC00NSAxOXQtMTkgNDUgdDE5IDQ1dDQ1IDE5aDI1NnYxMzJxLTIxNyAyNCAtMzY0LjUgMTg3LjV0LTE0Ny41IDM4NC41ek0yNTYgNzA0djUxMnEwIDEzMiA5NCAyMjZ0MjI2IDk0dDIyNiAtOTR0OTQgLTIyNnYtNTEycTAgLTEzMiAtOTQgLTIyNnQtMjI2IC05NHQtMjI2IDk0dC05NCAyMjZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEzMTsiIGhvcml6LWFkdi14PSIxNDA4IiBkPSJNMTMgNjRxMCAxMyAxMCAyM2wxMjM0IDEyMzRxMTAgMTAgMjMgMTB0MjMgLTEwbDgyIC04MnExMCAtMTAgMTAgLTIzdC0xMCAtMjNsLTM2MSAtMzYxdi0xMjhxMCAtMTMyIC05NCAtMjI2dC0yMjYgLTk0cS01NSAwIC0xMDkgMTlsLTk2IC05NnE5NyAtNTEgMjA1IC01MXExODUgMCAzMTYuNSAxMzEuNXQxMzEuNSAzMTYuNXYxMjhxMCAyNiAxOSA0NXQ0NSAxOXQ0NSAtMTl0MTkgLTQ1di0xMjhxMCAtMjIxIC0xNDcuNSAtMzg0LjUgdC0zNjQuNSAtMTg3LjV2LTEzMmgyNTZxMjYgMCA0NSAtMTl0MTkgLTQ1dC0xOSAtNDV0LTQ1IC0xOWgtNjQwcS0yNiAwIC00NSAxOXQtMTkgNDV0MTkgNDV0NDUgMTloMjU2djEzMnEtMTI1IDEzIC0yMzUgODFsLTI1NCAtMjU0cS0xMCAtMTAgLTIzIC0xMHQtMjMgMTBsLTgyIDgycS0xMCAxMCAtMTAgMjN6TTEyOCA3MDR2MTI4cTAgMjYgMTkgNDV0NDUgMTl0NDUgLTE5dDE5IC00NXYtMTI4cTAgLTUzIDE1IC0xMTNsLTEwMSAtMTAxIHEtNDIgMTAzIC00MiAyMTR6TTM4NCA3MDR2NTEycTAgMTMyIDk0IDIyNnQyMjYgOTRxMTAyIDAgMTg0LjUgLTU5dDExNi41IC0xNTJ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEzMjsiIGhvcml6LWFkdi14PSIxMjgwIiBkPSJNMCA1NzZ2NzY4cTAgMjYgMTkgNDV0NDUgMTloMTE1MnEyNiAwIDQ1IC0xOXQxOSAtNDV2LTc2OHEwIC04NiAtMzMuNSAtMTcwLjV0LTgzIC0xNTB0LTExOCAtMTI3LjV0LTEyNi41IC0xMDN0LTEyMSAtNzcuNXQtODkuNSAtNDkuNXQtNDIuNSAtMjBxLTEyIC02IC0yNiAtNnQtMjYgNnEtMTYgNyAtNDIuNSAyMHQtODkuNSA0OS41dC0xMjEgNzcuNXQtMTI2LjUgMTAzdC0xMTggMTI3LjV0LTgzIDE1MHQtMzMuNSAxNzAuNXpNNjQwIDc5IHExMTkgNjMgMjEzIDEzN3EyMzUgMTg0IDIzNSAzNjB2NjQwaC00NDh2LTExMzd6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEzMzsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCAtMTI4djEyODBxMCA1MiAzOCA5MHQ5MCAzOGgxMjh2OTZxMCA2NiA0NyAxMTN0MTEzIDQ3aDY0cTY2IDAgMTEzIC00N3Q0NyAtMTEzdi05NmgzODR2OTZxMCA2NiA0NyAxMTN0MTEzIDQ3aDY0cTY2IDAgMTEzIC00N3Q0NyAtMTEzdi05NmgxMjhxNTIgMCA5MCAtMzh0MzggLTkwdi0xMjgwcTAgLTUyIC0zOCAtOTB0LTkwIC0zOGgtMTQwOHEtNTIgMCAtOTAgMzh0LTM4IDkwek0xMjggLTEyOGgxNDA4djEwMjRoLTE0MDh2LTEwMjR6IE0zODQgMTA4OHEwIC0xNCA5IC0yM3QyMyAtOWg2NHExNCAwIDIzIDl0OSAyM3YyODhxMCAxNCAtOSAyM3QtMjMgOWgtNjRxLTE0IDAgLTIzIC05dC05IC0yM3YtMjg4ek0xMTUyIDEwODhxMCAtMTQgOSAtMjN0MjMgLTloNjRxMTQgMCAyMyA5dDkgMjN2Mjg4cTAgMTQgLTkgMjN0LTIzIDloLTY0cS0xNCAwIC0yMyAtOXQtOSAtMjN2LTI4OHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTM0OyIgaG9yaXotYWR2LXg9IjE0MDgiIGQ9Ik0zLjUgOTQwcS04LjUgMjUgMy41IDQ5cTUgMTAgMTQuNSAyNnQzNy41IDUzLjV0NjAuNSA3MHQ4NSA2N3QxMDguNSA1Mi41cS0yNSA0MiAtMjUgODZxMCA2NiA0NyAxMTN0MTEzIDQ3dDExMyAtNDd0NDcgLTExM3EwIC0zMyAtMTQgLTY0aDMwMnEwIDExIDcgMjB0MTggMTFsNDQ4IDk2cTMgMSA3IDFxMTIgMCAyMCAtN3ExMiAtOSAxMiAtMjV2LTMyMHEwIC0xNiAtMTIgLTI1cS04IC03IC0yMCAtN3EtNCAwIC03IDFsLTQ0OCA5NiBxLTExIDIgLTE4IDExdC03IDIwaC0yNTZ2LTEwMnExMTEgLTIzIDE4My41IC0xMTF0NzIuNSAtMjAzdi04MDBxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC01MTJxLTI2IDAgLTQ1IDE5dC0xOSA0NXY4MDBxMCAxMDYgNjIuNSAxOTAuNXQxNjEuNSAxMTQuNXYxMTFoLTMycS01OSAwIC0xMTUgLTIzLjV0LTkxLjUgLTUzdC02NiAtNjYuNXQtNDAuNSAtNTMuNXQtMTQgLTI0LjVxLTE3IC0zNSAtNTcgLTM1cS0xNiAwIC0yOSA3cS0yMyAxMiAtMzEuNSAzNyB6TTM4NCAxMzQ0cTAgLTI2IDE5IC00NXQ0NSAtMTl0NDUgMTl0MTkgNDV0LTE5IDQ1dC00NSAxOXQtNDUgLTE5dC0xOSAtNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEzNTsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMzYgNDY0bDIyNCAzODRxMTAgMTQgMjYgMTZsMzc5IDIwcTk2IDExNCAxNzYgMTk1cTE4OCAxODcgMzU4IDI1OHQ0MzEgNzFxMTQgMCAyNCAtOS41dDEwIC0yMi41cTAgLTI0OSAtNzUuNSAtNDMwLjV0LTI1My41IC0zNjAuNXEtODEgLTgwIC0xOTUgLTE3NmwtMjAgLTM3OXEtMiAtMTYgLTE2IC0yNmwtMzg0IC0yMjRxLTcgLTQgLTE2IC00cS0xMiAwIC0yMyA5bC02NCA2NHEtMTMgMTQgLTggMzJsODUgMjc2bC0yODEgMjgxbC0yNzYgLTg1IHEtMyAtMSAtOSAtMXEtMTQgMCAtMjMgOWwtNjQgNjRxLTE3IDE5IC01IDM5ek0xMjQ4IDEwODhxMCAtNDAgMjggLTY4dDY4IC0yOHQ2OCAyOHQyOCA2OHQtMjggNjh0LTY4IDI4dC02OCAtMjh0LTI4IC02OHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTM2OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDBsMjA0IDk1M2wtMTUzIDMyN2gxMjc2cTEwMSAwIDE4OS41IC00MC41dDE0Ny41IC0xMTMuNXE2MCAtNzMgODEgLTE2OC41dDAgLTE5NC41bC0xNjQgLTc2M2gtMzM0bDE3OCA4MzJxMTMgNTYgLTE1IDg4cS0yNyAzMyAtODMgMzNoLTE2OWwtMjA0IC05NTNoLTMzNGwyMDQgOTUzaC0yODZsLTIwNCAtOTUzaC0zMzR6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjEzNzsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjV0LTEwMyAtMzg1LjV0LTI3OS41IC0yNzkuNXQtMzg1LjUgLTEwM3QtMzg1LjUgMTAzdC0yNzkuNSAyNzkuNXQtMTAzIDM4NS41ek0zNDYgNjQwcTAgLTI2IDE5IC00NWw0NTQgLTQ1NHExOSAtMTkgNDUgLTE5dDQ1IDE5bDEwMiAxMDJxMTkgMTkgMTkgNDV0LTE5IDQ1bC0zMDcgMzA3bDMwNyAzMDcgcTE5IDE5IDE5IDQ1dC0xOSA0NWwtMTAyIDEwMnEtMTkgMTkgLTQ1IDE5dC00NSAtMTlsLTQ1NCAtNDU0cS0xOSAtMTkgLTE5IC00NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTM4OyIgZD0iTTAgNjQwcTAgMjA5IDEwMyAzODUuNXQyNzkuNSAyNzkuNXQzODUuNSAxMDN0Mzg1LjUgLTEwM3QyNzkuNSAtMjc5LjV0MTAzIC0zODUuNXQtMTAzIC0zODUuNXQtMjc5LjUgLTI3OS41dC0zODUuNSAtMTAzdC0zODUuNSAxMDN0LTI3OS41IDI3OS41dC0xMDMgMzg1LjV6TTUwNiAyODhxMCAtMjYgMTkgLTQ1bDEwMiAtMTAycTE5IC0xOSA0NSAtMTl0NDUgMTlsNDU0IDQ1NHExOSAxOSAxOSA0NXQtMTkgNDVsLTQ1NCA0NTQgcS0xOSAxOSAtNDUgMTl0LTQ1IC0xOWwtMTAyIC0xMDJxLTE5IC0xOSAtMTkgLTQ1dDE5IC00NWwzMDcgLTMwN2wtMzA3IC0zMDdxLTE5IC0xOSAtMTkgLTQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxMzk7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNMjUwIDU0NHEwIC0yNiAxOSAtNDVsMTAyIC0xMDJxMTkgLTE5IDQ1IC0xOXQ0NSAxOWwzMDcgMzA3bDMwNyAtMzA3cTE5IC0xOSA0NSAtMTl0NDUgMTlsMTAyIDEwMiBxMTkgMTkgMTkgNDV0LTE5IDQ1bC00NTQgNDU0cS0xOSAxOSAtNDUgMTl0LTQ1IC0xOWwtNDU0IC00NTRxLTE5IC0xOSAtMTkgLTQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxM2E7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNMjUwIDczNnEwIC0yNiAxOSAtNDVsNDU0IC00NTRxMTkgLTE5IDQ1IC0xOXQ0NSAxOWw0NTQgNDU0cTE5IDE5IDE5IDQ1dC0xOSA0NWwtMTAyIDEwMiBxLTE5IDE5IC00NSAxOXQtNDUgLTE5bC0zMDcgLTMwN2wtMzA3IDMwN3EtMTkgMTkgLTQ1IDE5dC00NSAtMTlsLTEwMiAtMTAycS0xOSAtMTkgLTE5IC00NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTNiOyIgaG9yaXotYWR2LXg9IjE0MDgiIGQ9Ik0wIDE0MDhoMTQwOGwtMTI4IC0xNDM4bC01NzggLTE2MmwtNTc0IDE2MnpNMjYyIDExMTRsNDcgLTUzNGg2MTJsLTIyIC0yMjhsLTE5NyAtNTNsLTE5NiA1M2wtMTMgMTQwaC0xNzVsMjIgLTI3OGwzNjIgLTEwMGg0djFsMzU5IDk5bDUwIDU0NGgtNjQ0bC0xNSAxODFoNjc0bDE2IDE3NWgtODg0eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxM2M7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTEyIDc1bDcxIDM1NmgyOTdsLTI5IC0xNDdsNDIyIC0xNjFsNDg2IDE2MWw2OCAzMzloLTEyMDhsNTggMjk3aDEyMDlsMzggMTkxaC0xMjA4bDU5IDI5N2gxNTA1bC0yNjYgLTEzMzNsLTgwNCAtMjY3eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxM2Q7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgMHYzNTJxMCAxNCA5IDIzdDIzIDloMzUycTIyIDAgMzAgLTIwcTggLTE5IC03IC0zNWwtMTAwIC0xMDBxNjcgLTkxIDE4OS41IC0xNTMuNXQyNzEuNSAtODIuNXY2NDdoLTE5MnEtMjYgMCAtNDUgMTl0LTE5IDQ1djEyOHEwIDI2IDE5IDQ1dDQ1IDE5aDE5MnYxNjNxLTU4IDM0IC05MyA5Mi41dC0zNSAxMjguNXEwIDEwNiA3NSAxODF0MTgxIDc1dDE4MSAtNzV0NzUgLTE4MXEwIC03MCAtMzUgLTEyOC41dC05MyAtOTIuNXYtMTYzaDE5MiBxMjYgMCA0NSAtMTl0MTkgLTQ1di0xMjhxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC0xOTJ2LTY0N3ExNDkgMjAgMjcxLjUgODIuNXQxODkuNSAxNTMuNWwtMTAwIDEwMHEtMTUgMTYgLTcgMzVxOCAyMCAzMCAyMGgzNTJxMTQgMCAyMyAtOXQ5IC0yM3YtMzUycTAgLTIyIC0yMCAtMzBxLTggLTIgLTEyIC0ycS0xMyAwIC0yMyA5bC05MyA5M3EtMTE5IC0xNDMgLTMxOC41IC0yMjYuNXQtNDI5LjUgLTgzLjV0LTQyOS41IDgzLjV0LTMxOC41IDIyNi41IGwtOTMgLTkzcS05IC05IC0yMyAtOXEtNCAwIC0xMiAycS0yMCA4IC0yMCAzMHpNODMyIDEyODBxMCAtMjYgMTkgLTQ1dDQ1IC0xOXQ0NSAxOXQxOSA0NXQtMTkgNDV0LTQ1IDE5dC00NSAtMTl0LTE5IC00NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTNlOyIgaG9yaXotYWR2LXg9IjExNTIiIGQ9Ik0wIDk2djU3NnEwIDQwIDI4IDY4dDY4IDI4aDMydjMyMHEwIDE4NSAxMzEuNSAzMTYuNXQzMTYuNSAxMzEuNXQzMTYuNSAtMTMxLjV0MTMxLjUgLTMxNi41cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtNjRxLTI2IDAgLTQ1IDE5dC0xOSA0NXEwIDEwNiAtNzUgMTgxdC0xODEgNzV0LTE4MSAtNzV0LTc1IC0xODF2LTMyMGg3MzZxNDAgMCA2OCAtMjh0MjggLTY4di01NzZxMCAtNDAgLTI4IC02OHQtNjggLTI4aC05NjBxLTQwIDAgLTY4IDI4IHQtMjggNjh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE0MDsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjV0LTEwMyAtMzg1LjV0LTI3OS41IC0yNzkuNXQtMzg1LjUgLTEwM3QtMzg1LjUgMTAzdC0yNzkuNSAyNzkuNXQtMTAzIDM4NS41ek0xMjggNjQwcTAgLTEzMCA1MSAtMjQ4LjV0MTM2LjUgLTIwNHQyMDQgLTEzNi41dDI0OC41IC01MXQyNDguNSA1MXQyMDQgMTM2LjV0MTM2LjUgMjA0dDUxIDI0OC41IHQtNTEgMjQ4LjV0LTEzNi41IDIwNHQtMjA0IDEzNi41dC0yNDguNSA1MXQtMjQ4LjUgLTUxdC0yMDQgLTEzNi41dC0xMzYuNSAtMjA0dC01MSAtMjQ4LjV6TTI1NiA2NDBxMCAyMTIgMTUwIDM2MnQzNjIgMTUwdDM2MiAtMTUwdDE1MCAtMzYydC0xNTAgLTM2MnQtMzYyIC0xNTB0LTM2MiAxNTB0LTE1MCAzNjJ6TTM4NCA2NDBxMCAtMTU5IDExMi41IC0yNzEuNXQyNzEuNSAtMTEyLjV0MjcxLjUgMTEyLjV0MTEyLjUgMjcxLjV0LTExMi41IDI3MS41IHQtMjcxLjUgMTEyLjV0LTI3MS41IC0xMTIuNXQtMTEyLjUgLTI3MS41ek01MTIgNjQwcTAgMTA2IDc1IDE4MXQxODEgNzV0MTgxIC03NXQ3NSAtMTgxdC03NSAtMTgxdC0xODEgLTc1dC0xODEgNzV0LTc1IDE4MXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTQxOyIgaG9yaXotYWR2LXg9IjE0MDgiIGQ9Ik0wIDYwOHYxOTJxMCA0MCAyOCA2OHQ2OCAyOGgxOTJxNDAgMCA2OCAtMjh0MjggLTY4di0xOTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0xOTJxLTQwIDAgLTY4IDI4dC0yOCA2OHpNNTEyIDYwOHYxOTJxMCA0MCAyOCA2OHQ2OCAyOGgxOTJxNDAgMCA2OCAtMjh0MjggLTY4di0xOTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0xOTJxLTQwIDAgLTY4IDI4dC0yOCA2OHpNMTAyNCA2MDh2MTkycTAgNDAgMjggNjh0NjggMjhoMTkyIHE0MCAwIDY4IC0yOHQyOCAtNjh2LTE5MnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTE5MnEtNDAgMCAtNjggMjh0LTI4IDY4eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxNDI7IiBob3Jpei1hZHYteD0iMzg0IiBkPSJNMCA5NnYxOTJxMCA0MCAyOCA2OHQ2OCAyOGgxOTJxNDAgMCA2OCAtMjh0MjggLTY4di0xOTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0xOTJxLTQwIDAgLTY4IDI4dC0yOCA2OHpNMCA2MDh2MTkycTAgNDAgMjggNjh0NjggMjhoMTkycTQwIDAgNjggLTI4dDI4IC02OHYtMTkycTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMTkycS00MCAwIC02OCAyOHQtMjggNjh6TTAgMTEyMHYxOTJxMCA0MCAyOCA2OHQ2OCAyOGgxOTJxNDAgMCA2OCAtMjggdDI4IC02OHYtMTkycTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMTkycS00MCAwIC02OCAyOHQtMjggNjh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE0MzsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0yNTYgMjU2cTAgLTUzIDM3LjUgLTkwLjV0OTAuNSAtMzcuNXQ5MC41IDM3LjV0MzcuNSA5MC41dC0zNy41IDkwLjV0LTkwLjUgMzcuNXQtOTAuNSAtMzcuNXQtMzcuNSAtOTAuNXogTTI1NiA1NzVxMCAtMTMgOC41IC0yMnQyMS41IC0xMHExNTQgLTExIDI2NCAtMTIxdDEyMSAtMjY0cTEgLTEzIDEwIC0yMS41dDIyIC04LjVoMTI4cTEzIDAgMjMgMTB0OSAyNHEtMTMgMjMyIC0xNzcgMzk2dC0zOTYgMTc3cS0xNCAxIC0yNCAtOXQtMTAgLTIzdi0xMjh6TTI1NiA5NTlxMCAtMTMgOSAtMjJ0MjIgLTEwcTIwNCAtNyAzNzggLTExMS41dDI3OC41IC0yNzguNXQxMTEuNSAtMzc4cTEgLTEzIDEwIC0yMnQyMiAtOWgxMjggcTEzIDAgMjMgMTBxMTEgOSA5IDIzcS01IDE1NCAtNTYgMjk3LjV0LTEzOS41IDI2MHQtMjA1IDIwNXQtMjYwIDEzOS41dC0yOTcuNSA1NnEtMTQgMSAtMjMgLTlxLTEwIC0xMCAtMTAgLTIzdi0xMjh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE0NDsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjV0LTEwMyAtMzg1LjV0LTI3OS41IC0yNzkuNXQtMzg1LjUgLTEwM3QtMzg1LjUgMTAzdC0yNzkuNSAyNzkuNXQtMTAzIDM4NS41ek01MTIgMzIwcTAgLTM3IDMyIC01NnExNiAtOCAzMiAtOHExNyAwIDMyIDlsNTQ0IDMyMHEzMiAxOCAzMiA1NXQtMzIgNTVsLTU0NCAzMjBxLTMxIDE5IC02NCAxIHEtMzIgLTE5IC0zMiAtNTZ2LTY0MHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTQ1OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik01NCA0NDguNXEwIDUzLjUgMzcgOTAuNWw5MDcgOTA2cTM3IDM3IDkwLjUgMzd0OTAuNSAtMzdsMTI1IC0xMjVxLTU2IC01NiAtNTYgLTEzNnQ1NiAtMTM2dDEzNiAtNTZ0MTM2IDU2bDEyNiAtMTI1cTM3IC0zNyAzNyAtOTAuNXQtMzcgLTkwLjVsLTkwNyAtOTA4cS0zNyAtMzcgLTkwLjUgLTM3dC05MC41IDM3bC0xMjYgMTI2cTU2IDU2IDU2IDEzNnQtNTYgMTM2dC0xMzYgNTZ0LTEzNiAtNTZsLTEyNSAxMjZxLTM3IDM3IC0zNyA5MC41eiBNMzQyIDUxMnEwIC0yNiAxOSAtNDVsMzYyIC0zNjJxMTggLTE4IDQ1IC0xOHQ0NSAxOGw2MTggNjE4cTE5IDE5IDE5IDQ1dC0xOSA0NWwtMzYyIDM2MnEtMTggMTggLTQ1IDE4dC00NSAtMThsLTYxOCAtNjE4cS0xOSAtMTkgLTE5IC00NXpNNDUyIDUxMmw1NzIgNTcybDMxNiAtMzE2bC01NzIgLTU3MnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTQ2OyIgZD0iTTAgMTYwdjk2MHEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoOTYwcTExOSAwIDIwMy41IC04NC41dDg0LjUgLTIwMy41di05NjBxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTk2MHEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTI1NiA1NzZxMCAtMjYgMTkgLTQ1dDQ1IC0xOWg4OTZxMjYgMCA0NSAxOXQxOSA0NXYxMjhxMCAyNiAtMTkgNDV0LTQ1IDE5aC04OTZxLTI2IDAgLTQ1IC0xOXQtMTkgLTQ1di0xMjggeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxNDc7IiBob3Jpei1hZHYteD0iMTQwOCIgZD0iTTAgMjg4djgzMnEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoODMycTExOSAwIDIwMy41IC04NC41dDg0LjUgLTIwMy41di04MzJxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTgzMnEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTEyOCAyODhxMCAtNjYgNDcgLTExM3QxMTMgLTQ3aDgzMnE2NiAwIDExMyA0N3Q0NyAxMTN2ODMycTAgNjYgLTQ3IDExM3QtMTEzIDQ3aC04MzJxLTY2IDAgLTExMyAtNDcgdC00NyAtMTEzdi04MzJ6TTI1NiA2NzJ2NjRxMCAxNCA5IDIzdDIzIDloODMycTE0IDAgMjMgLTl0OSAtMjN2LTY0cTAgLTE0IC05IC0yM3QtMjMgLTloLTgzMnEtMTQgMCAtMjMgOXQtOSAyM3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTQ4OyIgaG9yaXotYWR2LXg9IjEwMjQiIGQ9Ik0zIDE4cS04IDIwIDQgMzVsMTYwIDE5MnE5IDExIDI1IDExaDMyMHY2NDBoLTE5MnEtNDAgMCAtNTggMzdxLTE3IDM3IDkgNjhsMzIwIDM4NHExOCAyMiA0OSAyMnQ0OSAtMjJsMzIwIC0zODRxMjcgLTMyIDkgLTY4cS0xOCAtMzcgLTU4IC0zN2gtMTkydi04NjRxMCAtMTQgLTkgLTIzdC0yMyAtOWgtNzA0cS0yMSAwIC0yOSAxOHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTQ5OyIgaG9yaXotYWR2LXg9IjEwMjQiIGQ9Ik0zIDEyNjFxOSAxOSAyOSAxOWg3MDRxMTMgMCAyMi41IC05LjV0OS41IC0yMy41di04NjNoMTkycTQwIDAgNTggLTM3dC05IC02OWwtMzIwIC0zODRxLTE4IC0yMiAtNDkgLTIydC00OSAyMmwtMzIwIDM4NHEtMjYgMzEgLTkgNjlxMTggMzcgNTggMzdoMTkydjY0MGgtMzIwcS0xNCAwIC0yNSAxMWwtMTYwIDE5MnEtMTMgMTQgLTQgMzR6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE0YTsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0yMTggNjQwcTAgLTI2IDE5IC00NWwzNTggLTM1OHExOSAtMTkgNDUgLTE5dDQ1IDE5bDYxNCA2MTRxMTkgMTkgMTkgNDV0LTE5IDQ1bC0xMDIgMTAycS0xOSAxOSAtNDUgMTkgdC00NSAtMTlsLTQ2NyAtNDY3bC0yMTEgMjExcS0xOSAxOSAtNDUgMTl0LTQ1IC0xOWwtMTAyIC0xMDJxLTE5IC0xOSAtMTkgLTQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxNGI7IiBkPSJNMCAxNjB2OTYwcTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNWg5NjBxMTE5IDAgMjAzLjUgLTg0LjV0ODQuNSAtMjAzLjV2LTk2MHEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtOTYwcS0xMTkgMCAtMjAzLjUgODQuNXQtODQuNSAyMDMuNXpNMjU2IDEyOGgyODhsNTQ0IDU0NGwtMjg4IDI4OGwtNTQ0IC01NDR2LTI4OHpNMzUyIDMyMHY1Nmw1MiA1MmwxNTIgLTE1MmwtNTIgLTUyaC01NnY5NmgtOTZ6TTQ5NCA0OTQgcS0xNCAxMyAzIDMwbDI5MSAyOTFxMTcgMTcgMzAgM3ExNCAtMTMgLTMgLTMwbC0yOTEgLTI5MXEtMTcgLTE3IC0zMCAtM3pNODY0IDEwMjRsMjg4IC0yODhsOTIgOTJxMjggMjggMjggNjh0LTI4IDY4bC0xNTIgMTUycS0yOCAyOCAtNjggMjh0LTY4IC0yOHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTRjOyIgZD0iTTAgMTYwdjk2MHEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoOTYwcTExOSAwIDIwMy41IC04NC41dDg0LjUgLTIwMy41di05NjBxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTk2MHEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTI4MiAzMjBxMCAtMjYgMTkgLTQ1bDEwMiAtMTAycTE5IC0xOSA0NSAtMTl0NDUgMTlsNTM0IDUzNGwxNDQgLTE0NHExOCAtMTkgNDUgLTE5cTEyIDAgMjUgNXEzOSAxNyAzOSA1OSB2NDgwcTAgMjYgLTE5IDQ1dC00NSAxOWgtNDgwcS00MiAwIC01OSAtMzlxLTE3IC00MSAxNCAtNzBsMTQ0IC0xNDRsLTUzNCAtNTM0cS0xOSAtMTkgLTE5IC00NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTRkOyIgZD0iTTAgMTYwdjk2MHEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoOTYwcTExOSAwIDIwMy41IC04NC41dDg0LjUgLTIwMy41di05NjBxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTk2MHEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTI1NiA0NDhxMCAtMTgxIDE2NyAtNDA0cTEwIC0xMiAyNSAtMTJxNyAwIDEzIDNxMjIgOSAxOSAzM3EtNDQgMzU0IDYyIDQ3M3E0NiA1MiAxMzAgNzUuNXQyMjQgMjMuNXYtMTYwIHEwIC00MiA0MCAtNTlxMTIgLTUgMjQgLTVxMjYgMCA0NSAxOWwzNTIgMzUycTE5IDE5IDE5IDQ1dC0xOSA0NWwtMzUyIDM1MnEtMzAgMzEgLTY5IDE0cS00MCAtMTcgLTQwIC01OXYtMTYwcS0xMTkgMCAtMjE2IC0xOS41dC0xNjIuNSAtNTF0LTExNCAtNzl0LTc2LjUgLTk1LjV0LTQ0LjUgLTEwOXQtMjEuNSAtMTExLjV0LTUgLTExMC41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxNGU7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNMjI0IDY0MHEwIC0xNDggNzMgLTI3M3QxOTggLTE5OHQyNzMgLTczdDI3MyA3M3QxOTggMTk4dDczIDI3M3QtNzMgMjczdC0xOTggMTk4dC0yNzMgNzN0LTI3MyAtNzMgdC0xOTggLTE5OHQtNzMgLTI3M3pNNTEyIDI0MXY1NDJsNTEyIDI1NnYtNTQyek02NDAgNDQ4bDI1NiAxMjhsLTI1NiAxMjh2LTI1NnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTUwOyIgZD0iTTAgMTYwdjk2MHEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoOTYwcTExOSAwIDIwMy41IC04NC41dDg0LjUgLTIwMy41di05NjBxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTk2MHEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTI1NiAxNjBxMCAtMTMgOS41IC0yMi41dDIyLjUgLTkuNWg5NjBxMTMgMCAyMi41IDkuNXQ5LjUgMjIuNXY5NjBxMCAxMyAtOS41IDIyLjV0LTIyLjUgOS41aC05NjAgcS0xMyAwIC0yMi41IC05LjV0LTkuNSAtMjIuNXYtOTYwek0zOTEgODYxcTE3IDM1IDU3IDM1aDY0MHE0MCAwIDU3IC0zNXExOCAtMzUgLTUgLTY2bC0zMjAgLTQ0OHEtMTkgLTI3IC01MiAtMjd0LTUyIDI3bC0zMjAgNDQ4cS0yMyAzMSAtNSA2NnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTUxOyIgZD0iTTAgMTYwdjk2MHEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoOTYwcTExOSAwIDIwMy41IC04NC41dDg0LjUgLTIwMy41di05NjBxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTk2MHEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTI1NiAxNjBxMCAtMTMgOS41IC0yMi41dDIyLjUgLTkuNWg5NjBxMTMgMCAyMi41IDkuNXQ5LjUgMjIuNXY5NjBxMCAxMyAtOS41IDIyLjV0LTIyLjUgOS41aC05NjAgcS0xMyAwIC0yMi41IC05LjV0LTkuNSAtMjIuNXYtOTYwek0zOTEgNDE5cS0xOCAzNSA1IDY2bDMyMCA0NDhxMTkgMjcgNTIgMjd0NTIgLTI3bDMyMCAtNDQ4cTIzIC0zMSA1IC02NnEtMTcgLTM1IC01NyAtMzVoLTY0MHEtNDAgMCAtNTcgMzV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE1MjsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0yNTYgMTYwcTAgLTE0IDkgLTIzdDIzIC05aDk2MHExNCAwIDIzIDl0OSAyM3Y5NjBxMCAxNCAtOSAyM3QtMjMgOWgtOTYwcS0xNCAwIC0yMyAtOXQtOSAtMjN2LTk2MHogTTUxMiAzMjB2NjQwcTAgNDAgMzUgNTdxMzUgMTggNjYgLTVsNDQ4IC0zMjBxMjcgLTE5IDI3IC01MnQtMjcgLTUybC00NDggLTMyMHEtMzEgLTIzIC02NiAtNXEtMzUgMTcgLTM1IDU3eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxNTM7IiBob3Jpei1hZHYteD0iMTAyNCIgZD0iTTAgNTE0djExM3EwIDEzIDkuNSAyMi41dDIyLjUgOS41aDY2cS0yIDU3IDEgMTA1aC02N3EtMTQgMCAtMjMgOXQtOSAyM3YxMTRxMCAxNCA5IDIzdDIzIDloOThxNjcgMjEwIDI0My41IDMzOHQ0MDAuNSAxMjhxMTAyIDAgMTk0IC0yM3ExMSAtMyAyMCAtMTVxNiAtMTEgMyAtMjRsLTQzIC0xNTlxLTMgLTEzIC0xNCAtMTkuNXQtMjQgLTIuNWwtNCAxcS00IDEgLTExLjUgMi41bC0xNy41IDMuNXQtMjIuNSAzLjV0LTI2IDN0LTI5IDIuNSB0LTI5LjUgMXEtMTI2IDAgLTIyNiAtNjR0LTE1MCAtMTc2aDQ2OHExNiAwIDI1IC0xMnExMCAtMTIgNyAtMjZsLTI0IC0xMTRxLTUgLTI2IC0zMiAtMjZoLTQ4OHEtMyAtMzcgMCAtMTA1aDQ1OXExNSAwIDI1IC0xMnE5IC0xMiA2IC0yN2wtMjQgLTExMnEtMiAtMTEgLTExIC0xOC41dC0yMCAtNy41aC0zODdxNDggLTExNyAxNDkuNSAtMTg1LjV0MjI4LjUgLTY4LjVxMTggMCAzNiAxLjV0MzMuNSAzLjV0MjkuNSA0LjV0MjQuNSA1dDE4LjUgNC41IGwxMiAzbDUgMnExMyA1IDI2IC0ycTEyIC03IDE1IC0yMWwzNSAtMTU5cTMgLTEyIC0zIC0yMi41dC0xNyAtMTQuNWwtNSAtMXEtNCAtMiAtMTAuNSAtMy41dC0xNiAtNC41dC0yMS41IC01LjV0LTI1LjUgLTV0LTMwIC01dC0zMy41IC00LjV0LTM2LjUgLTN0LTM4LjUgLTFxLTIzNCAwIC00MDkgMTMwLjV0LTIzOCAzNTEuNWgtOTVxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTU0OyIgaG9yaXotYWR2LXg9IjEwMjQiIGQ9Ik0wIDMydjE1MHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDk3djM4M2gtOTVxLTE0IDAgLTIzIDkuNXQtOSAyMi41djEzMXEwIDE0IDkgMjN0MjMgOWg5NXYyMjNxMCAxNzEgMTIzLjUgMjgydDMxNC41IDExMXExODUgMCAzMzUgLTEyNXE5IC04IDEwIC0yMC41dC03IC0yMi41bC0xMDMgLTEyN3EtOSAtMTEgLTIyIC0xMnEtMTMgLTIgLTIzIDdxLTUgNSAtMjYgMTl0LTY5IDMydC05MyAxOHEtODUgMCAtMTM3IC00N3QtNTIgLTEyM3YtMjE1IGgzMDVxMTMgMCAyMi41IC05dDkuNSAtMjN2LTEzMXEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTMwNXYtMzc5aDQxNHYxODFxMCAxMyA5IDIyLjV0MjMgOS41aDE2MnExNCAwIDIzIC05LjV0OSAtMjIuNXYtMzY3cTAgLTE0IC05IC0yM3QtMjMgLTloLTk1NnEtMTQgMCAtMjMgOXQtOSAyM3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTU1OyIgaG9yaXotYWR2LXg9IjEwMjQiIGQ9Ik01MiAxNzFsMTAzIDEzNXE3IDEwIDIzIDEycTE1IDIgMjQgLTlsMiAtMnExMTMgLTk5IDI0MyAtMTI1cTM3IC04IDc0IC04cTgxIDAgMTQyLjUgNDN0NjEuNSAxMjJxMCAyOCAtMTUgNTN0LTMzLjUgNDJ0LTU4LjUgMzcuNXQtNjYgMzJ0LTgwIDMyLjVxLTM5IDE2IC02MS41IDI1dC02MS41IDI2LjV0LTYyLjUgMzF0LTU2LjUgMzUuNXQtNTMuNSA0Mi41dC00My41IDQ5dC0zNS41IDU4dC0yMSA2Ni41dC04LjUgNzhxMCAxMzggOTggMjQyIHQyNTUgMTM0djE4MHEwIDEzIDkuNSAyMi41dDIyLjUgOS41aDEzNXExNCAwIDIzIC05dDkgLTIzdi0xNzZxNTcgLTYgMTEwLjUgLTIzdDg3IC0zMy41dDYzLjUgLTM3LjV0MzkgLTI5dDE1IC0xNHExNyAtMTggNSAtMzhsLTgxIC0xNDZxLTggLTE1IC0yMyAtMTZxLTE0IC0zIC0yNyA3cS0zIDMgLTE0LjUgMTJ0LTM5IDI2LjV0LTU4LjUgMzJ0LTc0LjUgMjZ0LTg1LjUgMTEuNXEtOTUgMCAtMTU1IC00M3QtNjAgLTExMXEwIC0yNiA4LjUgLTQ4IHQyOS41IC00MS41dDM5LjUgLTMzdDU2IC0zMXQ2MC41IC0yN3Q3MCAtMjcuNXE1MyAtMjAgODEgLTMxLjV0NzYgLTM1dDc1LjUgLTQyLjV0NjIgLTUwdDUzIC02My41dDMxLjUgLTc2LjV0MTMgLTk0cTAgLTE1MyAtOTkuNSAtMjYzLjV0LTI1OC41IC0xMzYuNXYtMTc1cTAgLTE0IC05IC0yM3QtMjMgLTloLTEzNXEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41djE3NXEtNjYgOSAtMTI3LjUgMzF0LTEwMS41IDQ0LjV0LTc0IDQ4dC00Ni41IDM3LjUgdC0xNy41IDE4cS0xNyAyMSAtMiA0MXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTU2OyIgaG9yaXotYWR2LXg9Ijg5OCIgZD0iTTAgNjA1djEyN3EwIDEzIDkuNSAyMi41dDIyLjUgOS41aDExMnExMzIgMCAyMTIuNSA0M3QxMDIuNSAxMjVoLTQyN3EtMTQgMCAtMjMgOXQtOSAyM3YxMDJxMCAxNCA5IDIzdDIzIDloNDEzcS01NyAxMTMgLTI2OCAxMTNoLTE0NXEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41djEzM3EwIDE0IDkgMjN0MjMgOWg4MzJxMTQgMCAyMyAtOXQ5IC0yM3YtMTAycTAgLTE0IC05IC0yM3QtMjMgLTloLTIzM3E0NyAtNjEgNjQgLTE0NGgxNzEgcTE0IDAgMjMgLTl0OSAtMjN2LTEwMnEwIC0xNCAtOSAtMjN0LTIzIC05aC0xNjhxLTIzIC0xNDQgLTEyOSAtMjM0dC0yNzYgLTExMHExNjcgLTE3OCA0NTkgLTUzNnExNCAtMTYgNCAtMzRxLTggLTE4IC0yOSAtMThoLTE5NXEtMTYgMCAtMjUgMTJxLTMwNiAzNjcgLTQ5OCA1NzFxLTkgOSAtOSAyMnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTU3OyIgaG9yaXotYWR2LXg9IjEwMjciIGQ9Ik00IDEzNjBxLTggMTYgMCAzMnExMCAxNiAyOCAxNmgxOTRxMTkgMCAyOSAtMThsMjE1IC00MjVxMTkgLTM4IDU2IC0xMjVxMTAgMjQgMzAuNSA2OHQyNy41IDYxbDE5MSA0MjBxOCAxOSAyOSAxOWgxOTFxMTcgMCAyNyAtMTZxOSAtMTQgMSAtMzFsLTMxMyAtNTc5aDIxNXExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTEwNHEwIC0xNCAtOS41IC0yM3QtMjIuNSAtOWgtMjkwdi04NWgyOTBxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di0xMDMgcTAgLTE0IC05LjUgLTIzdC0yMi41IC05aC0yOTB2LTMzMHEwIC0xMyAtOS41IC0yMi41dC0yMi41IC05LjVoLTE3MnEtMTMgMCAtMjIuNSA5dC05LjUgMjN2MzMwaC0yODhxLTEzIDAgLTIyLjUgOXQtOS41IDIzdjEwM3EwIDEzIDkuNSAyMi41dDIyLjUgOS41aDI4OHY4NWgtMjg4cS0xMyAwIC0yMi41IDl0LTkuNSAyM3YxMDRxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWgyMTR6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE1ODsiIGhvcml6LWFkdi14PSIxMjgwIiBkPSJNMCAyNTZ2MTI4cTAgMTQgOSAyM3QyMyA5aDIyNHYxMThoLTIyNHEtMTQgMCAtMjMgOXQtOSAyM3YxNDlxMCAxMyA5IDIyLjV0MjMgOS41aDIyNHY2MjlxMCAxNCA5IDIzdDIzIDloNTM5cTIwMCAwIDMyNi41IC0xMjJ0MTI2LjUgLTMxNXQtMTI2LjUgLTMxNXQtMzI2LjUgLTEyMmgtMzQwdi0xMThoNTA1cTE0IDAgMjMgLTl0OSAtMjN2LTEyOHEwIC0xNCAtOSAtMjN0LTIzIC05aC01MDV2LTE5MnEwIC0xNCAtOS41IC0yM3QtMjIuNSAtOSBoLTE2N3EtMTQgMCAtMjMgOXQtOSAyM3YxOTJoLTIyNHEtMTQgMCAtMjMgOXQtOSAyM3pNNDg3IDc0N2gzMjBxMTA2IDAgMTcxIDYydDY1IDE2MnQtNjUgMTYydC0xNzEgNjJoLTMyMHYtNDQ4eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxNTk7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgNjcydjY0cTAgMTQgOSAyM3QyMyA5aDE3NWwtMzMgMTI4aC0xNDJxLTE0IDAgLTIzIDl0LTkgMjN2NjRxMCAxNCA5IDIzdDIzIDloMTA5bC04OSAzNDRxLTUgMTUgNSAyOHExMCAxMiAyNiAxMmgxMzdxMjYgMCAzMSAtMjRsOTAgLTM2MGgzNTlsOTcgMzYwcTcgMjQgMzEgMjRoMTI2cTI0IDAgMzEgLTI0bDk4IC0zNjBoMzY1bDkzIDM2MHE1IDI0IDMxIDI0aDEzN3ExNiAwIDI2IC0xMnExMCAtMTMgNSAtMjhsLTkxIC0zNDRoMTExIHExNCAwIDIzIC05dDkgLTIzdi02NHEwIC0xNCAtOSAtMjN0LTIzIC05aC0xNDVsLTM0IC0xMjhoMTc5cTE0IDAgMjMgLTl0OSAtMjN2LTY0cTAgLTE0IC05IC0yM3QtMjMgLTloLTIxM2wtMTY0IC02MTZxLTcgLTI0IC0zMSAtMjRoLTE1OXEtMjQgMCAtMzEgMjRsLTE2NiA2MTZoLTIwOWwtMTY3IC02MTZxLTcgLTI0IC0zMSAtMjRoLTE1OXEtMTEgMCAtMTkuNSA3dC0xMC41IDE3bC0xNjAgNjE2aC0yMDhxLTE0IDAgLTIzIDl0LTkgMjN6IE0zNzMgODk2bDMyIC0xMjhoMjI1bDM1IDEyOGgtMjkyek00MzYgNjQwbDc1IC0zMDBxMSAtMSAxIC0zdDEgLTNxMCAxIDAuNSAzLjV0MC41IDMuNWw4MSAyOTloLTE1OXpNODIyIDc2OGgxMzlsLTM1IDEyOGgtNzB6TTExMTggODk2bDM0IC0xMjhoMjMwbDMzIDEyOGgtMjk3ek0xMTg3IDY0MGw4MSAtMjk5cTAgLTEgMC41IC0zLjV0MS41IC0zLjVxMCAxIDAuNSAzdDAuNSAzbDc4IDMwMGgtMTYyeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxNWE7IiBob3Jpei1hZHYteD0iMTI4MCIgZD0iTTU2IDBsMzEgMTgzaDExMXE1MCAwIDU4IDUxdjQwMmgxNnEtNiAxIC0xNiAxdjI4N3EtMTMgNjggLTg5IDY4aC0xMTF2MTY0bDIxMiAtMXE2NCAwIDk3IDF2MjUyaDE1NHYtMjQ3cTgyIDIgMTIyIDJ2MjQ1aDE1NHYtMjUycTc5IC03IDE0MCAtMjIuNXQxMTMgLTQ1dDgyLjUgLTc4dDM2LjUgLTExNC41cTE4IC0xODIgLTEzMSAtMjU4cTExNyAtMjggMTc1IC0xMDN0NDUgLTIxNHEtNyAtNzEgLTMyLjUgLTEyNXQtNjQuNSAtODkgdC05NyAtNTguNXQtMTIxLjUgLTM0LjV0LTE0NS41IC0xNXYtMjU1aC0xNTR2MjUxcS04MCAwIC0xMjIgMXYtMjUyaC0xNTR2MjU1cS0xOCAwIC01NCAwLjV0LTU1IDAuNWgtMjAwek01MjIgMTgycTggMCAzNyAtMC41dDQ4IC0wLjV0NTMgMS41dDU4LjUgNHQ1NyA4LjV0NTUuNSAxNHQ0Ny41IDIxdDM5LjUgMzB0MjQuNSA0MHQ5LjUgNTFxMCAzNiAtMTUgNjR0LTM3IDQ2dC01Ny41IDMwLjV0LTY1LjUgMTguNXQtNzQgOXQtNjkgM3QtNjQuNSAtMSB0LTQ3LjUgLTF2LTMzOHpNNTIyIDY3NHE1IDAgMzQuNSAtMC41dDQ2LjUgMHQ1MCAydDU1IDUuNXQ1MS41IDExdDQ4LjUgMTguNXQzNyAyN3QyNyAzOC41dDkgNTFxMCAzMyAtMTIuNSA1OC41dC0zMC41IDQydC00OCAyOHQtNTUgMTYuNXQtNjEuNSA4dC01OCAyLjV0LTU0IC0xdC0zOS41IC0wLjV2LTMwN3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTViOyIgZD0iTTAgLTE2MHYxNjAwcTAgNDAgMjggNjh0NjggMjhoODAwdi01NDRxMCAtNDAgMjggLTY4dDY4IC0yOGg1NDR2LTEwNTZxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0xMzQ0cS00MCAwIC02OCAyOHQtMjggNjh6TTEwMjQgMTAyNHY0NzJxMjIgLTE0IDM2IC0yOGw0MDggLTQwOHExNCAtMTQgMjggLTM2aC00NzJ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE1YzsiIGQ9Ik0wIC0xNjB2MTYwMHEwIDQwIDI4IDY4dDY4IDI4aDgwMHYtNTQ0cTAgLTQwIDI4IC02OHQ2OCAtMjhoNTQ0di0xMDU2cTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMTM0NHEtNDAgMCAtNjggMjh0LTI4IDY4ek0zODQgMTYwcTAgLTE0IDkgLTIzdDIzIC05aDcwNHExNCAwIDIzIDl0OSAyM3Y2NHEwIDE0IC05IDIzdC0yMyA5aC03MDRxLTE0IDAgLTIzIC05dC05IC0yM3YtNjR6TTM4NCA0MTZxMCAtMTQgOSAtMjN0MjMgLTloNzA0IHExNCAwIDIzIDl0OSAyM3Y2NHEwIDE0IC05IDIzdC0yMyA5aC03MDRxLTE0IDAgLTIzIC05dC05IC0yM3YtNjR6TTM4NCA2NzJxMCAtMTQgOSAtMjN0MjMgLTloNzA0cTE0IDAgMjMgOXQ5IDIzdjY0cTAgMTQgLTkgMjN0LTIzIDloLTcwNHEtMTQgMCAtMjMgLTl0LTkgLTIzdi02NHpNMTAyNCAxMDI0djQ3MnEyMiAtMTQgMzYgLTI4bDQwOCAtNDA4cTE0IC0xNCAyOCAtMzZoLTQ3MnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTVkOyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0zNCAxMDhxOCAyMCAzMCAyMGgxOTJ2MTM3NnEwIDE0IDkgMjN0MjMgOWgxOTJxMTQgMCAyMyAtOXQ5IC0yM3YtMTM3NmgxOTJxMTQgMCAyMyAtOXQ5IC0yM3EwIC0xMiAtMTAgLTI0bC0zMTkgLTMxOXEtMTAgLTkgLTIzIC05cS0xMiAwIC0yMyA5bC0zMjAgMzIwcS0xNSAxNiAtNyAzNXpNODk5IDc2OHYxMDZoNzBsMjMwIDY2MmgxNjJsMjMwIC02NjJoNzB2LTEwNmgtMjg4djEwNmg3NWwtNDcgMTQ0aC0yNDNsLTQ3IC0xNDRoNzV2LTEwNiBoLTI4N3pNOTg4IC0xNjZsMzY5IDUyOXExMiAxOCAyMSAyN2wxMSA5djNxLTIgMCAtNi41IC0wLjV0LTcuNSAtMC41cS0xMiAtMyAtMzAgLTNoLTIzMnYtMTE1aC0xMjB2MjI5aDU2N3YtODlsLTM2OSAtNTMwcS02IC04IC0yMSAtMjZsLTExIC0xMXYtMmwxNCAycTkgMiAzMCAyaDI0OHYxMTloMTIxdi0yMzNoLTU4NHY5MHpNMTE5MSAxMTI4aDE3N2wtNzIgMjE4bC0xMiA0N3EtMiAxNiAtMiAyMGgtNGwtMyAtMjBxMCAtMSAtMy41IC0xOCB0LTcuNSAtMjl6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE1ZTsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMzQgMTA4cTggMjAgMzAgMjBoMTkydjEzNzZxMCAxNCA5IDIzdDIzIDloMTkycTE0IDAgMjMgLTl0OSAtMjN2LTEzNzZoMTkycTE0IDAgMjMgLTl0OSAtMjNxMCAtMTIgLTEwIC0yNGwtMzE5IC0zMTlxLTEwIC05IC0yMyAtOXEtMTIgMCAtMjMgOWwtMzIwIDMyMHEtMTUgMTYgLTcgMzV6TTg5OSAtMTUwaDcwbDIzMCA2NjJoMTYybDIzMCAtNjYyaDcwdi0xMDZoLTI4OHYxMDZoNzVsLTQ3IDE0NGgtMjQzbC00NyAtMTQ0aDc1di0xMDZoLTI4NyB2MTA2ek05ODggNzY4djkwbDM2OSA1MjlxMTIgMTggMjEgMjdsMTEgOXYzcS0yIDAgLTYuNSAtMC41dC03LjUgLTAuNXEtMTIgLTMgLTMwIC0zaC0yMzJ2LTExNWgtMTIwdjIyOWg1Njd2LTg5bC0zNjkgLTUzMHEtNiAtOCAtMjEgLTI2bC0xMSAtMTB2LTNsMTQgM3E5IDEgMzAgMWgyNDh2MTE5aDEyMXYtMjMzaC01ODR6TTExOTEgMTA0aDE3N2wtNzIgMjE4bC0xMiA0N3EtMiAxNiAtMiAyMGgtNGwtMyAtMjBxMCAtMSAtMy41IC0xOHQtNy41IC0yOSB6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE2MDsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMzQgMTA4cTggMjAgMzAgMjBoMTkydjEzNzZxMCAxNCA5IDIzdDIzIDloMTkycTE0IDAgMjMgLTl0OSAtMjN2LTEzNzZoMTkycTE0IDAgMjMgLTl0OSAtMjNxMCAtMTIgLTEwIC0yNGwtMzE5IC0zMTlxLTEwIC05IC0yMyAtOXEtMTIgMCAtMjMgOWwtMzIwIDMyMHEtMTUgMTYgLTcgMzV6TTg5NiAtMzJxMCAxNCA5IDIzdDIzIDloODMycTE0IDAgMjMgLTl0OSAtMjN2LTE5MnEwIC0xNCAtOSAtMjN0LTIzIC05aC04MzJxLTE0IDAgLTIzIDkgdC05IDIzdjE5MnpNODk2IDI4OHYxOTJxMCAxNCA5IDIzdDIzIDloNjQwcTE0IDAgMjMgLTl0OSAtMjN2LTE5MnEwIC0xNCAtOSAtMjN0LTIzIC05aC02NDBxLTE0IDAgLTIzIDl0LTkgMjN6TTg5NiA4MDB2MTkycTAgMTQgOSAyM3QyMyA5aDQ0OHExNCAwIDIzIC05dDkgLTIzdi0xOTJxMCAtMTQgLTkgLTIzdC0yMyAtOWgtNDQ4cS0xNCAwIC0yMyA5dC05IDIzek04OTYgMTMxMnYxOTJxMCAxNCA5IDIzdDIzIDloMjU2cTE0IDAgMjMgLTl0OSAtMjMgdi0xOTJxMCAtMTQgLTkgLTIzdC0yMyAtOWgtMjU2cS0xNCAwIC0yMyA5dC05IDIzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxNjE7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTM0IDEwOHE4IDIwIDMwIDIwaDE5MnYxMzc2cTAgMTQgOSAyM3QyMyA5aDE5MnExNCAwIDIzIC05dDkgLTIzdi0xMzc2aDE5MnExNCAwIDIzIC05dDkgLTIzcTAgLTEyIC0xMCAtMjRsLTMxOSAtMzE5cS0xMCAtOSAtMjMgLTlxLTEyIDAgLTIzIDlsLTMyMCAzMjBxLTE1IDE2IC03IDM1ek04OTYgLTMycTAgMTQgOSAyM3QyMyA5aDI1NnExNCAwIDIzIC05dDkgLTIzdi0xOTJxMCAtMTQgLTkgLTIzdC0yMyAtOWgtMjU2cS0xNCAwIC0yMyA5IHQtOSAyM3YxOTJ6TTg5NiAyODh2MTkycTAgMTQgOSAyM3QyMyA5aDQ0OHExNCAwIDIzIC05dDkgLTIzdi0xOTJxMCAtMTQgLTkgLTIzdC0yMyAtOWgtNDQ4cS0xNCAwIC0yMyA5dC05IDIzek04OTYgODAwdjE5MnEwIDE0IDkgMjN0MjMgOWg2NDBxMTQgMCAyMyAtOXQ5IC0yM3YtMTkycTAgLTE0IC05IC0yM3QtMjMgLTloLTY0MHEtMTQgMCAtMjMgOXQtOSAyM3pNODk2IDEzMTJ2MTkycTAgMTQgOSAyM3QyMyA5aDgzMnExNCAwIDIzIC05dDkgLTIzIHYtMTkycTAgLTE0IC05IC0yM3QtMjMgLTloLTgzMnEtMTQgMCAtMjMgOXQtOSAyM3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTYyOyIgZD0iTTM0IDEwOHE4IDIwIDMwIDIwaDE5MnYxMzc2cTAgMTQgOSAyM3QyMyA5aDE5MnExNCAwIDIzIC05dDkgLTIzdi0xMzc2aDE5MnExNCAwIDIzIC05dDkgLTIzcTAgLTEyIC0xMCAtMjRsLTMxOSAtMzE5cS0xMCAtOSAtMjMgLTlxLTEyIDAgLTIzIDlsLTMyMCAzMjBxLTE1IDE2IC03IDM1ek05NDYgMjYxcTAgMTA1IDcyIDE3OHQxODEgNzNxMTIzIDAgMjA1IC05NC41dDgyIC0yNTIuNXEwIC02MiAtMTMgLTEyMS41dC00MSAtMTE0IHQtNjggLTk1LjV0LTk4LjUgLTY1LjV0LTEyNy41IC0yNC41cS02MiAwIC0xMDggMTZxLTI0IDggLTQyIDE1bDM5IDExM3ExNSAtNyAzMSAtMTFxMzcgLTEzIDc1IC0xM3E4NCAwIDEzNC41IDU4LjV0NjYuNSAxNDUuNWgtMnEtMjEgLTIzIC02MS41IC0zN3QtODQuNSAtMTRxLTEwNiAwIC0xNzMgNzEuNXQtNjcgMTcyLjV6TTk3NiAxMzUxbDE5MiAxODVoMTIzdi02NTRoMTY1di0xMTRoLTQ2OXYxMTRoMTY3djQzMnEwIDcgMC41IDE5dDAuNSAxNyB2MTZoLTJsLTcgLTEycS04IC0xMyAtMjYgLTMxbC02MiAtNTh6TTEwODUgMjYxcTAgLTU3IDM2LjUgLTk1dDEwNC41IC0zOHE1MCAwIDg1IDI3dDM1IDY4cTAgNjMgLTQ0IDExNnQtMTAzIDUzcS01MiAwIC04MyAtMzd0LTMxIC05NHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTYzOyIgZD0iTTM0IDEwOHE4IDIwIDMwIDIwaDE5MnYxMzc2cTAgMTQgOSAyM3QyMyA5aDE5MnExNCAwIDIzIC05dDkgLTIzdi0xMzc2aDE5MnExNCAwIDIzIC05dDkgLTIzcTAgLTEyIC0xMCAtMjRsLTMxOSAtMzE5cS0xMCAtOSAtMjMgLTlxLTEyIDAgLTIzIDlsLTMyMCAzMjBxLTE1IDE2IC03IDM1ek05NDYgMTI4NXEwIDEwNSA3MiAxNzh0MTgxIDczcTEyMyAwIDIwNSAtOTQuNXQ4MiAtMjUyLjVxMCAtNjIgLTEzIC0xMjEuNXQtNDEgLTExNCB0LTY4IC05NS41dC05OC41IC02NS41dC0xMjcuNSAtMjQuNXEtNjIgMCAtMTA4IDE2cS0yNCA4IC00MiAxNWwzOSAxMTNxMTUgLTcgMzEgLTExcTM3IC0xMyA3NSAtMTNxODQgMCAxMzQuNSA1OC41dDY2LjUgMTQ1LjVoLTJxLTIxIC0yMyAtNjEuNSAtMzd0LTg0LjUgLTE0cS0xMDYgMCAtMTczIDcxLjV0LTY3IDE3Mi41ek05NzYgMzI3bDE5MiAxODVoMTIzdi02NTRoMTY1di0xMTRoLTQ2OXYxMTRoMTY3djQzMnEwIDcgMC41IDE5dDAuNSAxN3YxNiBoLTJsLTcgLTEycS04IC0xMyAtMjYgLTMxbC02MiAtNTh6TTEwODUgMTI4NXEwIC01NyAzNi41IC05NXQxMDQuNSAtMzhxNTAgMCA4NSAyN3QzNSA2OHEwIDYzIC00NCAxMTZ0LTEwMyA1M3EtNTIgMCAtODMgLTM3dC0zMSAtOTR6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE2NDsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCA2NHY2NDBxMCAyNiAxOSA0NXQ0NSAxOWgyODhxMjYgMCA0NSAtMTl0MTkgLTQ1di02NDBxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC0yODhxLTI2IDAgLTQ1IDE5dC0xOSA0NXpNMTI4IDE5MnEwIC0yNyAxOC41IC00NS41dDQ1LjUgLTE4LjVxMjYgMCA0NSAxOC41dDE5IDQ1LjVxMCAyNiAtMTkgNDV0LTQ1IDE5cS0yNyAwIC00NS41IC0xOXQtMTguNSAtNDV6TTQ4MCA2NHY2NDFxMCAyNSAxOCA0My41dDQzIDIwLjVxMjQgMiA3NiA1OSB0MTAxIDEyMXE2OCA4NyAxMDEgMTIwcTE4IDE4IDMxIDQ4dDE3LjUgNDguNXQxMy41IDYwLjVxNyAzOSAxMi41IDYxdDE5LjUgNTJ0MzQgNTBxMTkgMTkgNDUgMTlxNDYgMCA4Mi41IC0xMC41dDYwIC0yNnQ0MCAtNDAuNXQyNCAtNDV0MTIgLTUwdDUgLTQ1dDAuNSAtMzlxMCAtMzggLTkuNSAtNzZ0LTE5IC02MHQtMjcuNSAtNTZxLTMgLTYgLTEwIC0xOHQtMTEgLTIydC04IC0yNGgyNzdxNzggMCAxMzUgLTU3dDU3IC0xMzUgcTAgLTg2IC01NSAtMTQ5cTE1IC00NCAxNSAtNzZxMyAtNzYgLTQzIC0xMzdxMTcgLTU2IDAgLTExN3EtMTUgLTU3IC01NCAtOTRxOSAtMTEyIC00OSAtMTgxcS02NCAtNzYgLTE5NyAtNzhoLTM2aC03NmgtMTdxLTY2IDAgLTE0NCAxNS41dC0xMjEuNSAyOXQtMTIwLjUgMzkuNXEtMTIzIDQzIC0xNTggNDRxLTI2IDEgLTQ1IDE5LjV0LTE5IDQ0LjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE2NTsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCA0NDhxMCAtMjYgMTkgLTQ1dDQ1IC0xOWgyODhxMjYgMCA0NSAxOXQxOSA0NXY2NDBxMCAyNiAtMTkgNDV0LTQ1IDE5aC0yODhxLTI2IDAgLTQ1IC0xOXQtMTkgLTQ1di02NDB6TTEyOCA5NjBxMCAyNyAxOC41IDQ1LjV0NDUuNSAxOC41cTI2IDAgNDUgLTE4LjV0MTkgLTQ1LjVxMCAtMjYgLTE5IC00NXQtNDUgLTE5cS0yNyAwIC00NS41IDE5dC0xOC41IDQ1ek00ODAgNDQ3djY0MXEwIDI2IDE5IDQ0LjV0NDUgMTkuNXEzNSAxIDE1OCA0NCBxNzcgMjYgMTIwLjUgMzkuNXQxMjEuNSAyOXQxNDQgMTUuNWgxN2g3NmgzNnExMzMgLTIgMTk3IC03OHE1OCAtNjkgNDkgLTE4MXEzOSAtMzcgNTQgLTk0cTE3IC02MSAwIC0xMTdxNDYgLTYxIDQzIC0xMzdxMCAtMzIgLTE1IC03NnE1NSAtNjEgNTUgLTE0OXEtMSAtNzggLTU3LjUgLTEzNXQtMTM0LjUgLTU3aC0yNzdxNCAtMTQgOCAtMjR0MTEgLTIydDEwIC0xOHExOCAtMzcgMjcgLTU3dDE5IC01OC41dDEwIC03Ni41cTAgLTI0IC0wLjUgLTM5IHQtNSAtNDV0LTEyIC01MHQtMjQgLTQ1dC00MCAtNDAuNXQtNjAgLTI2dC04Mi41IC0xMC41cS0yNiAwIC00NSAxOXEtMjAgMjAgLTM0IDUwdC0xOS41IDUydC0xMi41IDYxcS05IDQyIC0xMy41IDYwLjV0LTE3LjUgNDguNXQtMzEgNDhxLTMzIDMzIC0xMDEgMTIwcS00OSA2NCAtMTAxIDEyMXQtNzYgNTlxLTI1IDIgLTQzIDIwLjV0LTE4IDQzLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE2NjsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0yMTggMzY2cTAgLTE3NiAyMCAtMjYwcTEwIC00MyA0Mi41IC03M3Q3NS41IC0zNXExMzcgLTE1IDQxMiAtMTV0NDEyIDE1cTQzIDUgNzUuNSAzNXQ0Mi41IDczIHEyMCA4NCAyMCAyNjBxMCAxNzcgLTE5IDI2MHEtMTAgNDQgLTQzIDczLjV0LTc2IDM0LjVxLTEzNiAxNSAtNDEyIDE1cS0yNzUgMCAtNDExIC0xNXEtNDQgLTUgLTc2LjUgLTM0LjV0LTQyLjUgLTczLjVxLTIwIC04NyAtMjAgLTI2MHpNMzAwIDU1MXY3MGgyMzJ2LTcwaC04MHYtNDIzaC03NHY0MjNoLTc4ek0zOTYgMTMxM2wyNCAtNjl0MjMgLTY5cTM1IC0xMDMgNDYgLTE1OHYtMjAxaDc0djIwMWw5MCAyOTZoLTc1bC01MSAtMTk1bC01MyAxOTUgaC03OHpNNTQyIDIwNXYyOTBoNjZ2LTI3MHEwIC0yNCAxIC0yNnExIC0xNSAxNSAtMTVxMjAgMCA0MiAzMXYyODBoNjd2LTM2N2gtNjd2NDBxLTM5IC00NSAtNzYgLTQ1cS0zMyAwIC00MiAyOHEtNiAxNiAtNiA1NHpNNjU0IDkzNnEwIC01OCAyMSAtODdxMjcgLTM4IDc4IC0zOHE0OSAwIDc4IDM4cTIxIDI3IDIxIDg3djEzMHEwIDU4IC0yMSA4N3EtMjkgMzggLTc4IDM4cS01MSAwIC03OCAtMzhxLTIxIC0yOSAtMjEgLTg3di0xMzB6TTcyMSA5MjMgdjE1NnEwIDUyIDMyIDUydDMyIC01MnYtMTU2cTAgLTUxIC0zMiAtNTF0LTMyIDUxek03OTAgMTI4djQ5M2g2N3YtMTYxcTMyIDQwIDY4IDQwcTQxIDAgNTMgLTQycTcgLTIxIDcgLTc0di0xNDZxMCAtNTIgLTcgLTczcS0xMiAtNDIgLTUzIC00MnEtMzUgMCAtNjggNDF2LTM2aC02N3pNODU3IDIwMHExNiAtMTYgMzMgLTE2cTI5IDAgMjkgNDl2MTU3cTAgNTAgLTI5IDUwcS0xNyAwIC0zMyAtMTZ2LTIyNHpNOTA3IDg5M3EwIC0zNyA2IC01NSBxMTEgLTI3IDQzIC0yN3EzNiAwIDc3IDQ1di00MGg2N3YzNzBoLTY3di0yODNxLTIyIC0zMSAtNDIgLTMxcS0xNSAwIC0xNiAxNnEtMSAyIC0xIDI2djI3MmgtNjd2LTI5M3pNMTAzNyAyNDd2MTI5cTAgNTkgMjAgODZxMjkgMzggODAgMzh0NzggLTM4cTIxIC0yOCAyMSAtODZ2LTc2aC0xMzN2LTY1cTAgLTUxIDM0IC01MXEyNCAwIDMwIDI2cTAgMSAwLjUgN3QwLjUgMTYuNXYyMS41aDY4di05cTAgLTI5IC0yIC00M3EtMyAtMjIgLTE1IC00MCBxLTI3IC00MCAtODAgLTQwcS01MiAwIC04MSAzOHEtMjEgMjcgLTIxIDg2ek0xMTAzIDM1NWg2NnYzNHEwIDUxIC0zMyA1MXQtMzMgLTUxdi0zNHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTY3OyIgZD0iTTI3IDI2MHEwIDIzNCAyNiAzNTBxMTQgNTkgNTggOTl0MTAzIDQ3cTE4MyAyMCA1NTQgMjB0NTU1IC0yMHE1OCAtNyAxMDIuNSAtNDd0NTcuNSAtOTlxMjYgLTExMiAyNiAtMzUwcTAgLTIzNCAtMjYgLTM1MHEtMTQgLTU5IC01OCAtOTl0LTEwMiAtNDZxLTE4NCAtMjEgLTU1NSAtMjF0LTU1NSAyMXEtNTggNiAtMTAyLjUgNDZ0LTU3LjUgOTlxLTI2IDExMiAtMjYgMzUwek0xMzggNTA5aDEwNXYtNTY5aDEwMHY1NjloMTA3djk0aC0zMTIgdi05NHpNMjY2IDE1MzZoMTA2bDcxIC0yNjNsNjggMjYzaDEwMmwtMTIxIC0zOTl2LTI3MWgtMTAwdjI3MXEtMTQgNzQgLTYxIDIxMnEtMzcgMTAzIC02NSAxODd6TTQ2MyA0M3EwIC00OSA4IC03M3ExMiAtMzcgNTggLTM3cTQ4IDAgMTAyIDYxdi01NGg4OXY0OTRoLTg5di0zNzhxLTMwIC00MiAtNTcgLTQycS0xOCAwIC0yMSAyMXEtMSAzIC0xIDM1djM2NGgtODl2LTM5MXpNNjE0IDEwMjh2MTc1cTAgODAgMjggMTE3cTM4IDUxIDEwNSA1MSBxNjkgMCAxMDYgLTUxcTI4IC0zNyAyOCAtMTE3di0xNzVxMCAtODEgLTI4IC0xMThxLTM3IC01MSAtMTA2IC01MXEtNjcgMCAtMTA1IDUxcS0yOCAzOCAtMjggMTE4ek03MDQgMTAxMXEwIC03MCA0MyAtNzB0NDMgNzB2MjEwcTAgNjkgLTQzIDY5dC00MyAtNjl2LTIxMHpNNzk4IC02MGg4OXY0OHE0NSAtNTUgOTMgLTU1cTU0IDAgNzEgNTVxOSAyNyA5IDEwMHYxOTdxMCA3MyAtOSA5OXEtMTcgNTYgLTcxIDU2cS01MCAwIC05MyAtNTR2MjE3aC04OSB2LTY2M3pNODg3IDM2djMwMXEyMiAyMiA0NSAyMnEzOSAwIDM5IC02N3YtMjExcTAgLTY3IC0zOSAtNjdxLTIzIDAgLTQ1IDIyek05NTUgOTcxdjM5NGg5MXYtMzY3cTAgLTMzIDEgLTM1cTMgLTIyIDIxIC0yMnEyNyAwIDU3IDQzdjM4MWg5MXYtNDk5aC05MXY1NXEtNTMgLTYyIC0xMDMgLTYycS00NiAwIC01OSAzN3EtOCAyNCAtOCA3NXpNMTEzMCAxMDBxMCAtNzkgMjkgLTExNnEzOSAtNTEgMTA4IC01MXE3MiAwIDEwOCA1M3ExOCAyNyAyMSA1NCBxMiA5IDIgNTh2MTNoLTkxcTAgLTUxIC0yIC02MXEtNyAtMzYgLTQwIC0zNnEtNDYgMCAtNDYgNjl2ODdoMTc5djEwM3EwIDc5IC0yNyAxMTZxLTM5IDUxIC0xMDYgNTFxLTY4IDAgLTEwNyAtNTFxLTI4IC0zNyAtMjggLTExNnYtMTczek0xMjE5IDI0NXY0NnEwIDY4IDQ1IDY4dDQ1IC02OHYtNDZoLTkweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxNjg7IiBob3Jpei1hZHYteD0iMTQwOCIgZD0iTTUgMzg0cS0xMCAxNyAwIDM2bDI1MyA0NDhxMSAwIDAgMWwtMTYxIDI3OXEtMTIgMjIgLTEgMzdxOSAxNSAzMiAxNWgyMzlxNDAgMCA2NiAtNDVsMTY0IC0yODZxLTEwIC0xOCAtMjU3IC00NTZxLTI3IC00NiAtNjUgLTQ2aC0yMzlxLTIxIDAgLTMxIDE3ek01MzYgNTM5cTE4IDMyIDUzMSA5NDJxMjUgNDUgNjQgNDVoMjQxcTIyIDAgMzEgLTE1cTExIC0xNiAwIC0zN2wtNTI4IC05MzR2LTFsMzM2IC02MTVxMTEgLTIwIDEgLTM3IHEtMTAgLTE1IC0zMiAtMTVoLTIzOXEtNDIgMCAtNjYgNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE2OTsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0yMjcgMzk2cTggLTEzIDI0IC0xM2gxODVxMzEgMCA1MCAzNmwxOTkgMzUycTAgMSAtMTI2IDIyMnEtMjEgMzQgLTUyIDM0aC0xODRxLTE4IDAgLTI2IC0xMXEtNyAtMTIgMSAtMjkgbDEyNSAtMjE2di0xbC0xOTYgLTM0NnEtOSAtMTQgMCAtMjh6TTYzOCA1MTZxMSAtMiAyNjIgLTQ4MXEyMCAtMzUgNTIgLTM1aDE4NHExOCAwIDI1IDEycTggMTMgLTEgMjhsLTI2MCA0NzZ2MWw0MDkgNzIzcTggMTYgMCAyOHEtNyAxMiAtMjQgMTJoLTE4N3EtMzAgMCAtNDkgLTM1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxNmE7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgNjQwcTAgOTYgMSAxNTB0OC41IDEzNi41dDIyLjUgMTQ3LjVxMTYgNzMgNjkgMTIzdDEyNCA1OHEyMjIgMjUgNjcxIDI1dDY3MSAtMjVxNzEgLTggMTI0LjUgLTU4dDY5LjUgLTEyM3ExNCAtNjUgMjEuNSAtMTQ3LjV0OC41IC0xMzYuNXQxIC0xNTB0LTEgLTE1MHQtOC41IC0xMzYuNXQtMjIuNSAtMTQ3LjVxLTE2IC03MyAtNjkgLTEyM3QtMTI0IC01OHEtMjIyIC0yNSAtNjcxIC0yNXQtNjcxIDI1cS03MSA4IC0xMjQuNSA1OCB0LTY5LjUgMTIzcS0xNCA2NSAtMjEuNSAxNDcuNXQtOC41IDEzNi41dC0xIDE1MHpNNjQwIDMyMHEwIC0zOCAzMyAtNTZxMTYgLTggMzEgLThxMjAgMCAzNCAxMGw1MTIgMzIwcTMwIDE3IDMwIDU0dC0zMCA1NGwtNTEyIDMyMHEtMzEgMjAgLTY1IDJxLTMzIC0xOCAtMzMgLTU2di02NDB6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE2YjsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNNjQgNTU4bDMzOCAyNzFsNDk0IC0zMDVsLTM0MiAtMjg1ek02NCAxMDk5bDQ5MCAzMTlsMzQyIC0yODVsLTQ5NCAtMzA0ek00MDcgMTY2djEwOGwxNDcgLTk2bDM0MiAyODR2MmwxIC0xbDEgMXYtMmwzNDMgLTI4NGwxNDcgOTZ2LTEwOGwtNDkwIC0yOTN2LTFsLTEgMWwtMSAtMXYxek04OTYgNTI0bDQ5NCAzMDVsMzM4IC0yNzFsLTQ4OSAtMzE5ek04OTYgMTEzM2wzNDMgMjg1bDQ4OSAtMzE5bC0zMzggLTI3MHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTZjOyIgaG9yaXotYWR2LXg9IjE0MDgiIGQ9Ik0wIC0yNTV2NzM2aDEyMXYtNjE4aDkyOHY2MThoMTIwdi03MDFsLTEgLTM1di0xaC0xMTMybC0zNSAxaC0xek0yMjEgLTE3djE1MWw3MDcgMXYtMTUxek0yMjcgMjQzbDE0IDE1MGw3MDQgLTY1bC0xMyAtMTUwek0yNzAgNTYzbDM5IDE0Nmw2ODMgLTE4M2wtMzkgLTE0NnpNMzk1IDkyOGw3NyAxMzBsNjA5IC0zNjBsLTc3IC0xMzB6TTcwNyAxMzAzbDEyNSA4NmwzOTggLTU4NWwtMTI0IC04NXpNMTEzNiAxNTEwbDE0OSAyNmwxMjEgLTY5NyBsLTE0OSAtMjZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE2ZDsiIGQ9Ik0wIDY5djExNDJxMCA4MSA1OCAxMzl0MTM5IDU4aDExNDJxODEgMCAxMzkgLTU4dDU4IC0xMzl2LTExNDJxMCAtODEgLTU4IC0xMzl0LTEzOSAtNThoLTExNDJxLTgxIDAgLTEzOSA1OHQtNTggMTM5ek0xNzEgMTEwcTAgLTI2IDE3LjUgLTQzLjV0NDMuNSAtMTcuNWgxMDY5cTI1IDAgNDMgMTcuNXQxOCA0My41djY0OGgtMTM1cTIwIC02MyAyMCAtMTMxcTAgLTEyNiAtNjQgLTIzMi41dC0xNzQgLTE2OC41dC0yNDAgLTYyIHEtMTk3IDAgLTMzNyAxMzUuNXQtMTQwIDMyNy41cTAgNjggMjAgMTMxaC0xNDF2LTY0OHpNNDYxIDY0M3EwIC0xMjQgOTAuNSAtMjExLjV0MjE3LjUgLTg3LjVxMTI4IDAgMjE4LjUgODcuNXQ5MC41IDIxMS41dC05MC41IDIxMS41dC0yMTguNSA4Ny41cS0xMjcgMCAtMjE3LjUgLTg3LjV0LTkwLjUgLTIxMS41ek0xMDUwIDEwMDNxMCAtMjkgMjAgLTQ5dDQ5IC0yMGgxNzRxMjkgMCA0OSAyMHQyMCA0OXYxNjVxMCAyOCAtMjAgNDguNSB0LTQ5IDIwLjVoLTE3NHEtMjkgMCAtNDkgLTIwLjV0LTIwIC00OC41di0xNjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE2ZTsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0yNzQgNjQwcTAgLTg4IDYyIC0xNTB0MTUwIC02MnQxNTAgNjJ0NjIgMTUwdC02MiAxNTB0LTE1MCA2MnQtMTUwIC02MnQtNjIgLTE1MHpNODM4IDY0MHEwIC04OCA2MiAtMTUwIHQxNTAgLTYydDE1MCA2MnQ2MiAxNTB0LTYyIDE1MHQtMTUwIDYydC0xNTAgLTYydC02MiAtMTUweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxNzA7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNMzA5IDM4NGg5NGwxMDQgMTYwaDUyMmwxMDQgLTE2MGg5NGwtNDU5IDY5MXpNNTY3IDYwOGwyMDEgMzA2bDIwMSAtMzA2aC00MDJ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE3MTsiIGhvcml6LWFkdi14PSIxNDA4IiBkPSJNMCAxMjIycTMgMjYgMTcuNSA0OC41dDMxLjUgMzcuNXQ0NSAzMHQ0NiAyMi41dDQ4IDE4LjVxMTI1IDQ2IDMxMyA2NHEzNzkgMzcgNjc2IC01MHExNTUgLTQ2IDIxNSAtMTIycTE2IC0yMCAxNi41IC01MXQtNS41IC01NHEtMjYgLTE2NyAtMTExIC02NTVxLTUgLTMwIC0yNyAtNTZ0LTQzLjUgLTQwdC01NC41IC0zMXEtMjUyIC0xMjYgLTYxMCAtODhxLTI0OCAyNyAtMzk0IDEzOXEtMTUgMTIgLTI1LjUgMjYuNXQtMTcgMzV0LTkgMzQgdC02IDM5LjV0LTUuNSAzNXEtOSA1MCAtMjYuNSAxNTB0LTI4IDE2MS41dC0yMy41IDE0Ny41dC0yMiAxNTh6TTE3MyAyODVsNiAxNmwxOCA5cTIyMyAtMTQ4IDUwNi41IC0xNDh0NTA3LjUgMTQ4cTIxIC02IDI0IC0yM3QtNSAtNDV0LTggLTM3cS04IC0yNiAtMTUuNSAtNzYuNXQtMTQgLTg0dC0yOC41IC03MHQtNTggLTU2LjVxLTg2IC00OCAtMTg5LjUgLTcxLjV0LTIwMiAtMjJ0LTIwMS41IDE4LjVxLTQ2IDggLTgxLjUgMTh0LTc2LjUgMjcgdC03MyA0My41dC01MiA2MS41cS0yNSA5NiAtNTcgMjkyek0yNDMgMTI0MHEzMCAtMjggNzYgLTQ1LjV0NzMuNSAtMjJ0ODcuNSAtMTEuNXEyMjggLTI5IDQ0OCAtMXE2MyA4IDg5LjUgMTJ0NzIuNSAyMS41dDc1IDQ2LjVxLTIwIDI3IC01NiA0NC41dC01OCAyMnQtNzEgMTIuNXEtMjkxIDQ3IC01NjYgLTJxLTQzIC03IC02NiAtMTJ0LTU1IC0yMnQtNTAgLTQzek00ODEgNjU3cTQgLTkxIDc3LjUgLTE1NXQxNjUuNSAtNTZxOTEgOCAxNTIgODQgdDUwIDE2OHEtMTQgMTA3IC0xMTMgMTY0dC0xOTcgMTNxLTYzIC0yOCAtMTAwLjUgLTg4LjV0LTM0LjUgLTEyOS41ek01OTkgNzEwcTE0IDQxIDUyIDU4cTM2IDE4IDcyLjUgMTJ0NjQgLTM1LjV0MjcuNSAtNjcuNXE4IC02MyAtNTAuNSAtMTAxdC0xMTEuNSAtNnEtMzkgMTcgLTUzLjUgNTh0LTAuNSA4MnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTcyOyIgZD0iTTAgMTYwdjk2MHEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoOTYwcTExOSAwIDIwMy41IC04NC41dDg0LjUgLTIwMy41di05NjBxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTk2MHEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTI2MCAxMDYwcTggLTY4IDE5IC0xMzh0MjkgLTE3MXQyNCAtMTM3cTEgLTUgNSAtMzF0NyAtMzZ0MTIgLTI3dDIyIC0yOHExMDUgLTgwIDI4NCAtMTAwcTI1OSAtMjggNDQwIDYzIHEyNCAxMyAzOS41IDIzdDMxIDI5dDE5LjUgNDBxNDggMjY3IDgwIDQ3M3E5IDUzIC04IDc1cS00MyA1NSAtMTU1IDg4cS0yMTYgNjMgLTQ4NyAzNnEtMTMyIC0xMiAtMjI2IC00NnEtMzggLTE1IC01OS41IC0yNXQtNDcgLTM0dC0yOS41IC01NHpNMzg1IDM4NHEyNiAtMTU0IDQxIC0yMTBxNDcgLTgxIDIwNCAtMTA4cTI0OSAtNDYgNDI4IDUzcTM0IDE5IDQ5IDUxLjV0MjIuNSA4NS41dDEyLjUgNzFxMCA3IDUuNSAyNi41dDMgMzIgdC0xNy41IDE2LjVxLTE2MSAtMTA2IC0zNjUgLTEwNnQtMzY2IDEwNmwtMTIgLTZ6TTQzNiAxMDczcTEzIDE5IDM2IDMxdDQwIDE1LjV0NDcgOC41cTE5OCAzNSA0MDggMXEzMyAtNSA1MSAtOC41dDQzIC0xNnQzOSAtMzEuNXEtMjAgLTIxIC01My41IC0zNHQtNTMgLTE2dC02My41IC04cS0xNTUgLTIwIC0zMjQgMHEtNDQgNiAtNjMgOS41dC01Mi41IDE2dC01NC41IDMyLjV6TTYwNyA2NTNxLTIgNDkgMjUuNSA5M3Q3Mi41IDY0IHE3MCAzMSAxNDEuNSAtMTB0ODEuNSAtMTE4cTggLTY2IC0zNiAtMTIxdC0xMTAgLTYxdC0xMTkgNDB0LTU2IDExM3pNNjg3LjUgNjYwLjVxMC41IC01Mi41IDQzLjUgLTcwLjVxMzkgLTIzIDgxIDR0MzYgNzJxMCA0MyAtNDEgNjZ0LTc3IDFxLTQzIC0yMCAtNDIuNSAtNzIuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTczOyIgaG9yaXotYWR2LXg9IjEwMjQiIGQ9Ik03OCA3Nzl2MjE3cTkxIDMwIDE1NSA4NHE2NCA1NSAxMDMgMTMycTM5IDc4IDU0IDE5NmgyMTl2LTM4OGgzNjR2LTI0MWgtMzY0di0zOTRxMCAtMTM2IDE0IC0xNzJxMTMgLTM3IDUyIC02MHE1MCAtMzEgMTE3IC0zMXExMTcgMCAyMzIgNzZ2LTI0MnEtMTAyIC00OCAtMTc4IC02NXEtNzcgLTE5IC0xNzMgLTE5cS0xMDUgMCAtMTg2IDI3cS03OCAyNSAtMTM4IDc1cS01OCA1MSAtNzkgMTA1cS0yMiA1NCAtMjIgMTYxdjUzOWgtMTcweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxNzQ7IiBkPSJNMCAxNjB2OTYwcTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNWg5NjBxMTE5IDAgMjAzLjUgLTg0LjV0ODQuNSAtMjAzLjV2LTk2MHEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtOTYwcS0xMTkgMCAtMjAzLjUgODQuNXQtODQuNSAyMDMuNXpNNDEzIDc0NGgxMjd2LTQwNHEwIC03OCAxNyAtMTIxcTE3IC00MiA1OSAtNzhxNDMgLTM3IDEwNCAtNTdxNjIgLTIwIDE0MCAtMjBxNjcgMCAxMjkgMTRxNTcgMTMgMTM0IDQ5djE4MSBxLTg4IC01NiAtMTc0IC01NnEtNTEgMCAtODggMjNxLTI5IDE3IC0zOSA0NXEtMTEgMzAgLTExIDEyOXYyOTVoMjc0djE4MWgtMjc0djI5MWgtMTY0cS0xMSAtOTAgLTQwIC0xNDd0LTc4IC05OXEtNDggLTQwIC0xMTYgLTYzdi0xNjN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE3NTsiIGhvcml6LWFkdi14PSI3NjgiIGQ9Ik0zIDIzN3E5IDE5IDI5IDE5aDIyNHYxMjQ4cTAgMTQgOSAyM3QyMyA5aDE5MnExNCAwIDIzIC05dDkgLTIzdi0xMjQ4aDIyNHEyMSAwIDI5IC0xOXQtNSAtMzVsLTM1MCAtMzg0cS0xMCAtMTAgLTIzIC0xMHEtMTQgMCAtMjQgMTBsLTM1NSAzODRxLTEzIDE2IC01IDM1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxNzY7IiBob3Jpei1hZHYteD0iNzY4IiBkPSJNMyAxMDQzcS04IDE5IDUgMzVsMzUwIDM4NHExMCAxMCAyMyAxMHExNCAwIDI0IC0xMGwzNTUgLTM4NHExMyAtMTYgNSAtMzVxLTkgLTE5IC0yOSAtMTloLTIyNHYtMTI0OHEwIC0xNCAtOSAtMjN0LTIzIC05aC0xOTJxLTE0IDAgLTIzIDl0LTkgMjN2MTI0OGgtMjI0cS0yMSAwIC0yOSAxOXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTc3OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik02NCA2MzdxMCAxNCAxMCAyNGwzODQgMzU0cTE2IDE0IDM1IDZxMTkgLTkgMTkgLTI5di0yMjRoMTI0OHExNCAwIDIzIC05dDkgLTIzdi0xOTJxMCAtMTQgLTkgLTIzdC0yMyAtOWgtMTI0OHYtMjI0cTAgLTIxIC0xOSAtMjl0LTM1IDVsLTM4NCAzNTBxLTEwIDEwIC0xMCAyM3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTc4OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDU0NHYxOTJxMCAxNCA5IDIzdDIzIDloMTI0OHYyMjRxMCAyMSAxOSAyOXQzNSAtNWwzODQgLTM1MHExMCAtMTAgMTAgLTIzcTAgLTE0IC0xMCAtMjRsLTM4NCAtMzU0cS0xNiAtMTQgLTM1IC02cS0xOSA5IC0xOSAyOXYyMjRoLTEyNDhxLTE0IDAgLTIzIDl0LTkgMjN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE3OTsiIGhvcml6LWFkdi14PSIxNDA4IiBkPSJNMCA2MzRxMCAyMjggMTEzIDM3NHExMTIgMTQ0IDI4NCAxNDRxNzIgMCAxNzcgLTMwcTEwNCAtMzAgMTM4IC0zMHE0NSAwIDE0MyAzNHExMDIgMzQgMTczIDM0cTExOSAwIDIxMyAtNjVxNTIgLTM2IDEwNCAtMTAwcS03OSAtNjcgLTExNCAtMTE4cS02NSAtOTQgLTY1IC0yMDdxMCAtMTI0IDY5IC0yMjN0MTU4IC0xMjZxLTM5IC0xMjUgLTEyMyAtMjUwcS0xMjkgLTE5NiAtMjU3IC0xOTZxLTQ5IDAgLTE0MCAzMnEtODYgMzIgLTE1MSAzMiBxLTYxIDAgLTE0MiAtMzNxLTgxIC0zNCAtMTMyIC0zNHEtMTUyIDAgLTMwMSAyNTlxLTE0NyAyNjEgLTE0NyA1MDN6TTY4MyAxMTMxcTMgMTQ5IDc4IDI1N3E3NCAxMDcgMjUwIDE0OHExIC0zIDIuNSAtMTF0Mi41IC0xMXEwIC00IDAuNSAtMTB0MC41IC0xMHEwIC02MSAtMjkgLTEzNnEtMzAgLTc1IC05MyAtMTM4cS01NCAtNTQgLTEwOCAtNzJxLTM3IC0xMSAtMTA0IC0xN3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTdhOyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0wIC0yN3Y1NTdoNjgydi02NTF6TTAgNjE0djU2NWw2ODIgOTR2LTY1OWgtNjgyek03NTcgLTEzMXY2NjFoOTA3di03ODZ6TTc1NyA2MTR2NjY5bDkwNyAxMjV2LTc5NGgtOTA3eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxN2I7IiBob3Jpei1hZHYteD0iMTQwOCIgZD0iTTAgMzM3djQzMHEwIDQyIDMwIDcydDczIDMwcTQyIDAgNzIgLTMwdDMwIC03MnYtNDMwcTAgLTQzIC0yOS41IC03M3QtNzIuNSAtMzB0LTczIDMwdC0zMCA3M3pNMjQxIDg4NnEwIDExNyA2NCAyMTUuNXQxNzIgMTUzLjVsLTcxIDEzMXEtNyAxMyA1IDIwcTEzIDYgMjAgLTZsNzIgLTEzMnE5NSA0MiAyMDEgNDJ0MjAxIC00Mmw3MiAxMzJxNyAxMiAyMCA2cTEyIC03IDUgLTIwbC03MSAtMTMxcTEwNyAtNTUgMTcxIC0xNTMuNXQ2NCAtMjE1LjUgaC05MjV6TTI0NSAxODR2NjY2aDkxOHYtNjY2cTAgLTQ2IC0zMiAtNzh0LTc3IC0zMmgtNzV2LTIyN3EwIC00MyAtMzAgLTczdC03MyAtMzB0LTczIDMwdC0zMCA3M3YyMjdoLTEzOHYtMjI3cTAgLTQzIC0zMCAtNzN0LTczIC0zMHEtNDIgMCAtNzIgMzB0LTMwIDczbC0xIDIyN2gtNzRxLTQ2IDAgLTc4IDMydC0zMiA3OHpNNDU1IDEwOTJxMCAtMTYgMTEgLTI3LjV0MjcgLTExLjV0MjcuNSAxMS41dDExLjUgMjcuNXQtMTEuNSAyNy41IHQtMjcuNSAxMS41dC0yNyAtMTEuNXQtMTEgLTI3LjV6TTg3NiAxMDkycTAgLTE2IDExLjUgLTI3LjV0MjcuNSAtMTEuNXQyNyAxMS41dDExIDI3LjV0LTExIDI3LjV0LTI3IDExLjV0LTI3LjUgLTExLjV0LTExLjUgLTI3LjV6TTEyMDMgMzM3djQzMHEwIDQzIDMwIDcyLjV0NzIgMjkuNXE0MyAwIDczIC0yOS41dDMwIC03Mi41di00MzBxMCAtNDMgLTMwIC03M3QtNzMgLTMwcS00MiAwIC03MiAzMHQtMzAgNzN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE3YzsiIGQ9Ik0xMSAtMTE1cS0xMCAyMyA3IDY2LjV0MTggNTQuNXExIDE2IC00IDQwdC0xMCA0Mi41dC00LjUgMzYuNXQxMC41IDI3cTE0IDEyIDU3IDE0dDYwIDEycTMwIDE4IDQyIDM1dDEyIDUxcTIxIC03MyAtMzIgLTEwNnEtMzIgLTIwIC04MyAtMTVxLTM0IDMgLTQzIC0xMHEtMTMgLTE1IDUgLTU3cTIgLTYgOCAtMTh0OC41IC0xOHQ0LjUgLTE3dDEgLTIycTAgLTE1IC0xNyAtNDl0LTE0IC00OHEzIC0xNyAzNyAtMjZxMjAgLTYgODQuNSAtMTguNSB0OTkuNSAtMjAuNXEyNCAtNiA3NCAtMjJ0ODIuNSAtMjN0NTUuNSAtNHE0MyA2IDY0LjUgMjh0MjMgNDh0LTcuNSA1OC41dC0xOSA1MnQtMjAgMzYuNXEtMTIxIDE5MCAtMTY5IDI0MnEtNjggNzQgLTExMyA0MHEtMTEgLTkgLTE1IDE1cS0zIDE2IC0yIDM4cTEgMjkgMTAgNTJ0MjQgNDd0MjIgNDJxOCAyMSAyNi41IDcydDI5LjUgNzh0MzAgNjF0MzkgNTRxMTEwIDE0MyAxMjQgMTk1cS0xMiAxMTIgLTE2IDMxMHEtMiA5MCAyNCAxNTEuNSB0MTA2IDEwNC41cTM5IDIxIDEwNCAyMXE1MyAxIDEwNiAtMTMuNXQ4OSAtNDEuNXE1NyAtNDIgOTEuNSAtMTIxLjV0MjkuNSAtMTQ3LjVxLTUgLTk1IDMwIC0yMTRxMzQgLTExMyAxMzMgLTIxOHE1NSAtNTkgOTkuNSAtMTYzdDU5LjUgLTE5MXE4IC00OSA1IC04NC41dC0xMiAtNTUuNXQtMjAgLTIycS0xMCAtMiAtMjMuNSAtMTl0LTI3IC0zNS41dC00MC41IC0zMy41dC02MSAtMTRxLTE4IDEgLTMxLjUgNXQtMjIuNSAxMy41dC0xMy41IDE1LjUgdC0xMS41IDIwLjV0LTkgMTkuNXEtMjIgMzcgLTQxIDMwdC0yOCAtNDl0NyAtOTdxMjAgLTcwIDEgLTE5NXEtMTAgLTY1IDE4IC0xMDAuNXQ3MyAtMzN0ODUgMzUuNXE1OSA0OSA4OS41IDY2LjV0MTAzLjUgNDIuNXE1MyAxOCA3NyAzNi41dDE4LjUgMzQuNXQtMjUgMjguNXQtNTEuNSAyMy41cS0zMyAxMSAtNDkuNSA0OHQtMTUgNzIuNXQxNS41IDQ3LjVxMSAtMzEgOCAtNTYuNXQxNC41IC00MC41dDIwLjUgLTI4LjV0MjEgLTE5dDIxLjUgLTEzIHQxNi41IC05LjVxMjAgLTEyIDMxIC0yNC41dDEyIC0yNHQtMi41IC0yMi41dC0xNS41IC0yMnQtMjMuNSAtMTkuNXQtMzAgLTE4LjV0LTMxLjUgLTE2LjV0LTMyIC0xNS41dC0yNyAtMTNxLTM4IC0xOSAtODUuNSAtNTZ0LTc1LjUgLTY0cS0xNyAtMTYgLTY4IC0xOS41dC04OSAxNC41cS0xOCA5IC0yOS41IDIzLjV0LTE2LjUgMjUuNXQtMjIgMTkuNXQtNDcgOS41cS00NCAxIC0xMzAgMXEtMTkgMCAtNTcgLTEuNXQtNTggLTIuNSBxLTQ0IC0xIC03OS41IC0xNXQtNTMuNSAtMzB0LTQzLjUgLTI4LjV0LTUzLjUgLTExLjVxLTI5IDEgLTExMSAzMXQtMTQ2IDQzcS0xOSA0IC01MSA5LjV0LTUwIDl0LTM5LjUgOS41dC0zMy41IDE0LjV0LTE3IDE5LjV6TTMyMSA0OTVxLTM2IC02NSAxMCAtMTY2cTUgLTEyIDI1IC0yOHQyNCAtMjBxMjAgLTIzIDEwNCAtOTAuNXQ5MyAtNzYuNXExNiAtMTUgMTcuNSAtMzh0LTE0IC00M3QtNDUuNSAtMjNxOCAtMTUgMjkgLTQ0LjV0MjggLTU0IHQ3IC03MC41cTQ2IDI0IDcgOTJxLTQgOCAtMTAuNSAxNnQtOS41IDEydC0yIDZxMyA1IDEzIDkuNXQyMCAtMi41cTQ2IC01MiAxNjYgLTM2cTEzMyAxNSAxNzcgODdxMjMgMzggMzQgMzBxMTIgLTYgMTAgLTUycS0xIC0yNSAtMjMgLTkycS05IC0yMyAtNiAtMzcuNXQyNCAtMTUuNXEzIDE5IDE0LjUgNzd0MTMuNSA5MHEyIDIxIC02LjUgNzMuNXQtNy41IDk3dDIzIDcwLjVxMTUgMTggNTEgMThxMSAzNyAzNC41IDUzdDcyLjUgMTAuNSB0NjAgLTIyLjVxMCAxOCAtNTUgNDJxNCAxNSA3LjUgMjcuNXQ1IDI2dDMgMjEuNXQwLjUgMjIuNXQtMSAxOS41dC0zLjUgMjJ0LTQgMjAuNXQtNSAyNXQtNS41IDI2LjVxLTEwIDQ4IC00NyAxMDN0LTcyIDc1cTI0IC0yMCA1NyAtODNxODcgLTE2MiA1NCAtMjc4cS0xMSAtNDAgLTUwIC00MnEtMzEgLTQgLTM4LjUgMTguNXQtOCA4My41dC0xMS41IDEwN3EtOSAzOSAtMTkuNSA2OXQtMTkuNSA0NS41dC0xNS41IDI0LjV0LTEzIDE1dC03LjUgNyBxLTE0IDYyIC0zMSAxMDN0LTI5LjUgNTZ0LTIzLjUgMzN0LTE1IDQwcS00IDIxIDYgNTMuNXQ0LjUgNDkuNXQtNDQuNSAyNXEtMTUgMyAtNDQuNSAxOHQtMzUuNSAxNnEtOCAxIC0xMSAyNnQ4IDUxdDM2IDI3cTM3IDMgNTEgLTMwdDQgLTU4cS0xMSAtMTkgLTIgLTI2LjV0MzAgLTAuNXExMyA0IDEzIDM2djM3cS01IDMwIC0xMy41IDUwdC0yMSAzMC41dC0yMy41IDE1dC0yNyA3LjVxLTEwNyAtOCAtODkgLTEzNHEwIC0xNSAtMSAtMTUgcS05IDkgLTI5LjUgMTAuNXQtMzMgLTAuNXQtMTUuNSA1cTEgNTcgLTE2IDkwdC00NSAzNHEtMjcgMSAtNDEuNSAtMjcuNXQtMTYuNSAtNTkuNXEtMSAtMTUgMy41IC0zN3QxMyAtMzcuNXQxNS41IC0xMy41cTEwIDMgMTYgMTRxNCA5IC03IDhxLTcgMCAtMTUuNSAxNC41dC05LjUgMzMuNXEtMSAyMiA5IDM3dDM0IDE0cTE3IDAgMjcgLTIxdDkuNSAtMzl0LTEuNSAtMjJxLTIyIC0xNSAtMzEgLTI5cS04IC0xMiAtMjcuNSAtMjMuNSB0LTIwLjUgLTEyLjVxLTEzIC0xNCAtMTUuNSAtMjd0Ny41IC0xOHExNCAtOCAyNSAtMTkuNXQxNiAtMTl0MTguNSAtMTN0MzUuNSAtNi41cTQ3IC0yIDEwMiAxNXEyIDEgMjMgN3QzNC41IDEwLjV0MjkuNSAxM3QyMSAxNy41cTkgMTQgMjAgOHE1IC0zIDYuNSAtOC41dC0zIC0xMnQtMTYuNSAtOS41cS0yMCAtNiAtNTYuNSAtMjEuNXQtNDUuNSAtMTkuNXEtNDQgLTE5IC03MCAtMjNxLTI1IC01IC03OSAycS0xMCAyIC05IC0ydDE3IC0xOSBxMjUgLTIzIDY3IC0yMnExNyAxIDM2IDd0MzYgMTR0MzMuNSAxNy41dDMwIDE3dDI0LjUgMTJ0MTcuNSAyLjV0OC41IC0xMXEwIC0yIC0xIC00LjV0LTQgLTV0LTYgLTQuNXQtOC41IC01dC05IC00LjV0LTEwIC01dC05LjUgLTQuNXEtMjggLTE0IC02Ny41IC00NHQtNjYuNSAtNDN0LTQ5IC0xcS0yMSAxMSAtNjMgNzNxLTIyIDMxIC0yNSAyMnEtMSAtMyAtMSAtMTBxMCAtMjUgLTE1IC01Ni41dC0yOS41IC01NS41dC0yMSAtNTh0MTEuNSAtNjMgcS0yMyAtNiAtNjIuNSAtOTB0LTQ3LjUgLTE0MXEtMiAtMTggLTEuNSAtNjl0LTUuNSAtNTlxLTggLTI0IC0yOSAtM3EtMzIgMzEgLTM2IDk0cS0yIDI4IDQgNTZxNCAxOSAtMSAxOHpNMzcyIDYzMHE0IC0xIDEyLjUgN3QxMi41IDE4cTEgMyAyIDd0MiA2dDEuNSA0LjV0MC41IDR2M3QtMSAyLjV0LTMgMnEtNCAxIC02IC0zdC00LjUgLTEyLjV0LTUuNSAtMTMuNXQtMTAgLTEzcS03IC0xMCAtMSAtMTJ6TTYwMyAxMTkwcTIgLTUgNSAtNiBxMTAgMCA3IC0xNXEtMyAtMjAgOCAtMjBxMyAwIDMgM3EzIDE3IC0yLjUgMzB0LTExLjUgMTVxLTkgMiAtOSAtN3pNNjM0IDExMTBxMCAxMiAxOSAxNWgxMHEtMTEgLTEgLTE1LjUgLTEwLjV0LTguNSAtOS41cS01IC0xIC01IDV6TTcyMSAxMTIycTI0IDExIDMyIC0ycTMgLTYgLTMgLTlxLTQgLTEgLTExLjUgNi41dC0xNy41IDQuNXpNODM1IDExOTZsNCAtMnExNCAtNCAxOCAtMzFxMCAtMyA4IDJsMiAzcTAgMTEgLTUgMTkuNXQtMTEgMTIuNSB0LTkgM3EtMTQgLTEgLTcgLTd6TTg1MSAxMzgxLjVxLTEgLTIuNSAzIC04LjVxNCAtMyA4IDB0MTEgOXQxNSA5cTEgMSA5IDF0MTUgMnQ5IDdxMCAyIC0yLjUgNXQtOSA3dC05LjUgNnEtMTUgMTUgLTI0IDE1cS05IC0xIC0xMS41IC03LjV0LTEgLTEzdC0wLjUgLTEyLjVxLTEgLTQgLTYgLTEwLjV0LTYgLTl6TTk4MSAxMDAycS0xNCAtMTYgNyAtNDMuNXQzOSAtMzEuNXE5IC0xIDE0LjUgOHQzLjUgMjBxLTIgOCAtNi41IDExLjV0LTEzIDUgdC0xNC41IDUuNXEtNSAzIC05LjUgOHQtNyA4dC01LjUgNi41dC00IDR0LTQgLTEuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTdkOyIgZD0iTTAgNjQwcTAgMjA5IDEwMyAzODUuNXQyNzkuNSAyNzkuNXQzODUuNSAxMDN0Mzg1LjUgLTEwM3QyNzkuNSAtMjc5LjV0MTAzIC0zODUuNXQtMTAzIC0zODUuNXQtMjc5LjUgLTI3OS41dC0zODUuNSAtMTAzdC0zODUuNSAxMDN0LTI3OS41IDI3OS41dC0xMDMgMzg1LjV6TTExMiA2NDBxMCAtMTI0IDQ0IC0yMzYuNXQxMjQgLTIwMS41cTUwIDg5IDEyMy41IDE2Ni41dDE0Mi41IDEyNC41dDEzMC41IDgxdDk5LjUgNDhsMzcgMTMgcTQgMSAxMyAzLjV0MTMgNC41cS0yMSA0OSAtNTMgMTExcS0zMTEgLTkzIC02NzMgLTkzcS0xIC03IC0xIC0yMXpNMTI2IDc3NXEzMDIgMCA2MDYgODBxLTEyMCAyMTMgLTI0NCAzNzhxLTEzOCAtNjUgLTIzNCAtMTg2dC0xMjggLTI3MnpNMzUwIDEzNHExODQgLTE1MCA0MTggLTE1MHExMzIgMCAyNTYgNTJxLTQyIDI0MSAtMTQwIDQ5OGgtMmwtMiAtMXEtMTYgLTYgLTQzIC0xNi41dC0xMDEgLTQ5dC0xMzcgLTgydC0xMzEgLTExNC41IHQtMTAzIC0xNDh6TTYwOSAxMjc2cTEgMSAyIDFxLTEgMCAtMiAtMXpNNjEzIDEyNzdxMTMxIC0xNzAgMjQ2IC0zODJxNjkgMjYgMTMwIDYwLjV0OTYuNSA2MS41dDY1LjUgNTd0MzcuNSA0MC41bDEyLjUgMTcuNXEtMTg1IDE2NCAtNDMzIDE2NHEtNzYgMCAtMTU1IC0xOXpNOTA5IDc5N3EyNSAtNTMgNDQgLTk1cTIgLTYgNi41IC0xNy41dDcuNSAtMTYuNXEzNiA1IDc0LjUgN3Q3My41IDJ0NjkgLTEuNXQ2NCAtNHQ1Ni41IC01LjV0NDggLTYuNSB0MzYuNSAtNnQyNSAtNC41bDEwIC0ycS0zIDIzMiAtMTQ5IDQxMGwtMSAtMXEtOSAtMTIgLTE5IC0yNC41dC00My41IC00NC41dC03MSAtNjAuNXQtMTAwIC02NXQtMTMxLjUgLTY0LjV6TTEwMDcgNTY1cTg3IC0yMzkgMTI4IC00NjlxMTExIDc1IDE4NSAxODkuNXQ5NiAyNTAuNXEtMjEwIDYwIC00MDkgMjl6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE3ZTsiIGQ9Ik0wIDEwMjRxMCAxNTkgMTEyLjUgMjcxLjV0MjcxLjUgMTEyLjVxMTMwIDAgMjM0IC04MHE3NyAxNiAxNTAgMTZxMTQzIDAgMjczLjUgLTU1LjV0MjI1IC0xNTB0MTUwIC0yMjV0NTUuNSAtMjczLjVxMCAtNzMgLTE2IC0xNTBxODAgLTEwNCA4MCAtMjM0cTAgLTE1OSAtMTEyLjUgLTI3MS41dC0yNzEuNSAtMTEyLjVxLTEzMCAwIC0yMzQgODBxLTc3IC0xNiAtMTUwIC0xNnEtMTQzIDAgLTI3My41IDU1LjV0LTIyNSAxNTB0LTE1MCAyMjUgdC01NS41IDI3My41cTAgNzMgMTYgMTUwcS04MCAxMDQgLTgwIDIzNHpNMzc2IDM5OXEwIC05MiAxMjIgLTE1Ny41dDI5MSAtNjUuNXE3MyAwIDE0MCAxOC41dDEyMi41IDUzLjV0ODguNSA5My41dDMzIDEzMS41cTAgNTAgLTE5LjUgOTEuNXQtNDguNSA2OC41dC03MyA0OXQtODIuNSAzNHQtODcuNSAyM2wtMTA0IDI0cS0zMCA3IC00NCAxMC41dC0zNSAxMS41dC0zMCAxNnQtMTYuNSAyMXQtNy41IDMwcTAgNzcgMTQ0IDc3cTQzIDAgNzcgLTEyIHQ1NCAtMjguNXQzOCAtMzMuNXQ0MCAtMjl0NDggLTEycTQ3IDAgNzUuNSAzMnQyOC41IDc3cTAgNTUgLTU2IDk5LjV0LTE0MiA2Ny41dC0xODIgMjNxLTY4IDAgLTEzMiAtMTUuNXQtMTE5LjUgLTQ3dC04OSAtODd0LTMzLjUgLTEyOC41cTAgLTYxIDE5IC0xMDYuNXQ1NiAtNzUuNXQ4MCAtNDguNXQxMDMgLTMyLjVsMTQ2IC0zNnE5MCAtMjIgMTEyIC0zNnEzMiAtMjAgMzIgLTYwcTAgLTM5IC00MCAtNjQuNXQtMTA1IC0yNS41IHEtNTEgMCAtOTEuNSAxNnQtNjUgMzguNXQtNDUuNSA0NXQtNDYgMzguNXQtNTQgMTZxLTUwIDAgLTc1LjUgLTMwdC0yNS41IC03NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTgwOyIgaG9yaXotYWR2LXg9IjE2NjQiIGQ9Ik0wIDY0MHEwIDc1IDUzIDEyOGw1ODcgNTg3cTUzIDUzIDEyOCA1M3QxMjggLTUzbDI2NSAtMjY1bC0zOTggLTM5OWwtMTg4IDE4OHEtNDIgNDIgLTk5IDQycS01OSAwIC0xMDAgLTQxbC0xMjAgLTEyMXEtNDIgLTQwIC00MiAtOTlxMCAtNTggNDIgLTEwMGw0MDYgLTQwOHEzMCAtMjggNjcgLTM3bDYgLTRoMjhxNjAgMCA5OSA0MWw2MTkgNjE5bDIgLTNxNTMgLTUzIDUzIC0xMjh0LTUzIC0xMjhsLTU4NyAtNTg3IHEtNTIgLTUzIC0xMjcuNSAtNTN0LTEyOC41IDUzbC01ODcgNTg3cS01MyA1MyAtNTMgMTI4ek0zMDIgNjYwcTAgMjEgMTQgMzVsMTIxIDEyMHExMyAxNSAzNSAxNXQzNiAtMTVsMjUyIC0yNTJsNTc0IDU3NXExNSAxNSAzNiAxNXQzNiAtMTVsMTIwIC0xMjBxMTQgLTE1IDE0IC0zNnQtMTQgLTM2bC03MzAgLTczMHEtMTcgLTE1IC0zNyAtMTVxLTQgMCAtNiAxcS0xOCAyIC0zMCAxNGwtNDA3IDQwOHEtMTQgMTUgLTE0IDM2eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxODE7IiBkPSJNMCAtNjR2MTQwOHEwIDI2IDE5IDQ1dDQ1IDE5aDE0MDhxMjYgMCA0NSAtMTl0MTkgLTQ1di0xNDA4cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTQwOHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0xNjAgMTkycTAgLTE0IDkgLTIzdDIzIC05aDQ4MHExNCAwIDIzIDl0OSAyM3YxMDI0cTAgMTQgLTkgMjN0LTIzIDloLTQ4MHEtMTQgMCAtMjMgLTl0LTkgLTIzdi0xMDI0ek04MzIgNTc2cTAgLTE0IDkgLTIzdDIzIC05aDQ4MHExNCAwIDIzIDl0OSAyMyB2NjQwcTAgMTQgLTkgMjN0LTIzIDloLTQ4MHEtMTQgMCAtMjMgLTl0LTkgLTIzdi02NDB6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE4MjsiIGhvcml6LWFkdi14PSIxMjgwIiBkPSJNMCA0ODBxMCAyOSAxNiA1M2wyNTYgMzg0cTczIDEwNyAxNzYgMTA3aDM4NHExMDMgMCAxNzYgLTEwN2wyNTYgLTM4NHExNiAtMjQgMTYgLTUzcTAgLTQwIC0yOCAtNjh0LTY4IC0yOHEtNTEgMCAtODAgNDNsLTIyNyAzNDFoLTQ1di0xMzJsMjQ3IC00MTFxOSAtMTUgOSAtMzNxMCAtMjYgLTE5IC00NXQtNDUgLTE5aC0xOTJ2LTI3MnEwIC00NiAtMzMgLTc5dC03OSAtMzNoLTE2MHEtNDYgMCAtNzkgMzN0LTMzIDc5djI3MmgtMTkyIHEtMjYgMCAtNDUgMTl0LTE5IDQ1cTAgMTggOSAzM2wyNDcgNDExdjEzMmgtNDVsLTIyNyAtMzQxcS0yOSAtNDMgLTgwIC00M3EtNDAgMCAtNjggMjh0LTI4IDY4ek00MTYgMTI4MHEwIDkzIDY1LjUgMTU4LjV0MTU4LjUgNjUuNXQxNTguNSAtNjUuNXQ2NS41IC0xNTguNXQtNjUuNSAtMTU4LjV0LTE1OC41IC02NS41dC0xNTguNSA2NS41dC02NS41IDE1OC41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxODM7IiBob3Jpei1hZHYteD0iMTAyNCIgZD0iTTAgNDE2djQxNnEwIDgwIDU2IDEzNnQxMzYgNTZoNjQwcTgwIDAgMTM2IC01NnQ1NiAtMTM2di00MTZxMCAtNDAgLTI4IC02OHQtNjggLTI4dC02OCAyOHQtMjggNjh2MzUyaC02NHYtOTEycTAgLTQ2IC0zMyAtNzl0LTc5IC0zM3QtNzkgMzN0LTMzIDc5djQ2NGgtNjR2LTQ2NHEwIC00NiAtMzMgLTc5dC03OSAtMzN0LTc5IDMzdC0zMyA3OXY5MTJoLTY0di0zNTJxMCAtNDAgLTI4IC02OHQtNjggLTI4dC02OCAyOHQtMjggNjh6IE0yODggMTI4MHEwIDkzIDY1LjUgMTU4LjV0MTU4LjUgNjUuNXQxNTguNSAtNjUuNXQ2NS41IC0xNTguNXQtNjUuNSAtMTU4LjV0LTE1OC41IC02NS41dC0xNTguNSA2NS41dC02NS41IDE1OC41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxODQ7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNMzk5LjUgNzY2cTguNSAtMzcgMjQuNSAtNTlsMzQ5IC00NzNsMzUwIDQ3M3ExNiAyMiAyNC41IDU5dC02IDg1dC02MS41IDc5cS00MCAyNiAtODMgMjUuNSB0LTczLjUgLTE3LjV0LTU0LjUgLTQ1cS0zNiAtNDAgLTk2IC00MHEtNTkgMCAtOTUgNDBxLTI0IDI4IC01NC41IDQ1dC03My41IDE3LjV0LTg0IC0yNS41cS00NiAtMzEgLTYwLjUgLTc5dC02IC04NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTg1OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik00NCAzNjNxLTUgMTcgNCAyOWwxODAgMjQ4bC0xODAgMjQ4cS05IDEzIC00IDI5cTQgMTUgMjAgMjBsMjkyIDk2djMwNnEwIDE2IDEzIDI2cTE1IDEwIDI5IDRsMjkyIC05NGwxODAgMjQ4cTkgMTIgMjYgMTJ0MjYgLTEybDE4MCAtMjQ4bDI5MiA5NHExNCA2IDI5IC00cTEzIC0xMCAxMyAtMjZ2LTMwNmwyOTIgLTk2cTE2IC01IDIwIC0yMHE1IC0xNiAtNCAtMjlsLTE4MCAtMjQ4bDE4MCAtMjQ4cTkgLTEyIDQgLTI5cS00IC0xNSAtMjAgLTIwIGwtMjkyIC05NnYtMzA2cTAgLTE2IC0xMyAtMjZxLTE1IC0xMCAtMjkgLTRsLTI5MiA5NGwtMTgwIC0yNDhxLTEwIC0xMyAtMjYgLTEzdC0yNiAxM2wtMTgwIDI0OGwtMjkyIC05NHEtMTQgLTYgLTI5IDRxLTEzIDEwIC0xMyAyNnYzMDZsLTI5MiA5NnEtMTYgNSAtMjAgMjB6TTMyMCA2NDBxMCAtMTE3IDQ1LjUgLTIyMy41dDEyMyAtMTg0dDE4NCAtMTIzdDIyMy41IC00NS41dDIyMy41IDQ1LjV0MTg0IDEyM3QxMjMgMTg0dDQ1LjUgMjIzLjUgdC00NS41IDIyMy41dC0xMjMgMTg0dC0xODQgMTIzdC0yMjMuNSA0NS41dC0yMjMuNSAtNDUuNXQtMTg0IC0xMjN0LTEyMyAtMTg0dC00NS41IC0yMjMuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTg2OyIgZD0iTTAgNjQwcTAgMTUzIDU3LjUgMjkyLjV0MTU2IDI0MS41dDIzNS41IDE2NC41dDI5MCA2OC41cTQ0IDIgNjEgLTM5cTE4IC00MSAtMTUgLTcycS04NiAtNzggLTEzMS41IC0xODEuNXQtNDUuNSAtMjE4LjVxMCAtMTQ4IDczIC0yNzN0MTk4IC0xOTh0MjczIC03M3ExMTggMCAyMjggNTFxNDEgMTggNzIgLTEzcTE0IC0xNCAxNy41IC0zNHQtNC41IC0zOHEtOTQgLTIwMyAtMjgzLjUgLTMyNC41dC00MTMuNSAtMTIxLjVxLTE1NiAwIC0yOTggNjEgdC0yNDUgMTY0dC0xNjQgMjQ1dC02MSAyOTh6TTEyOCA2NDBxMCAtMTMwIDUxIC0yNDguNXQxMzYuNSAtMjA0dDIwNCAtMTM2LjV0MjQ4LjUgLTUxcTE0NCAwIDI3My41IDYxLjV0MjIwLjUgMTcxLjVxLTU0IC05IC0xMTAgLTlxLTE4MiAwIC0zMzcgOTB0LTI0NSAyNDV0LTkwIDMzN3EwIDE5MiAxMDQgMzU3cS0yMDEgLTYwIC0zMjguNSAtMjI5dC0xMjcuNSAtMzg0eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxODc7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTY0IDEwODh2MjU2cTAgMjYgMTkgNDV0NDUgMTloMTUzNnEyNiAwIDQ1IC0xOXQxOSAtNDV2LTI1NnEwIC0yNiAtMTkgLTQ1dC00NSAtMTloLTE1MzZxLTI2IDAgLTQ1IDE5dC0xOSA0NXpNMTI4IC02NHY5NjBxMCAyNiAxOSA0NXQ0NSAxOWgxNDA4cTI2IDAgNDUgLTE5dDE5IC00NXYtOTYwcTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTQwOHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek03MDQgNzA0cTAgLTI2IDE5IC00NXQ0NSAtMTloMjU2IHEyNiAwIDQ1IDE5dDE5IDQ1dC0xOSA0NXQtNDUgMTloLTI1NnEtMjYgMCAtNDUgLTE5dC0xOSAtNDV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE4ODsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMzIgNTc2cTAgMjYgMTkgNDV0NDUgMTloMjI0djI5NGwtMTczIDE3M3EtMTkgMTkgLTE5IDQ1dDE5IDQ1dDQ1IDE5dDQ1IC0xOWwxNzMgLTE3M2g4NDRsMTczIDE3M3ExOSAxOSA0NSAxOXQ0NSAtMTl0MTkgLTQ1dC0xOSAtNDVsLTE3MyAtMTczdi0yOTRoMjI0cTI2IDAgNDUgLTE5dDE5IC00NXQtMTkgLTQ1dC00NSAtMTloLTIyNHEwIC0xNzEgLTY3IC0yOTBsMjA4IC0yMDlxMTkgLTE5IDE5IC00NXQtMTkgLTQ1cS0xOCAtMTkgLTQ1IC0xOSB0LTQ1IDE5bC0xOTggMTk3cS01IC01IC0xNSAtMTN0LTQyIC0yOC41dC02NSAtMzYuNXQtODIgLTI5dC05NyAtMTN2ODk2aC0xMjh2LTg5NnEtNTEgMCAtMTAxLjUgMTMuNXQtODcgMzN0LTY2IDM5dC00My41IDMyLjVsLTE1IDE0bC0xODMgLTIwN3EtMjAgLTIxIC00OCAtMjFxLTI0IDAgLTQzIDE2cS0xOSAxOCAtMjAuNSA0NC41dDE1LjUgNDYuNWwyMDIgMjI3cS01OCAxMTQgLTU4IDI3NGgtMjI0cS0yNiAwIC00NSAxOXQtMTkgNDV6IE01MTIgMTE1MnEwIDEzMyA5My41IDIyNi41dDIyNi41IDkzLjV0MjI2LjUgLTkzLjV0OTMuNSAtMjI2LjVoLTY0MHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTg5OyIgaG9yaXotYWR2LXg9IjE5MjAiIGQ9Ik0tMSAxMDA0cTAgMTEgMyAxNmw0IDZxMTUgMTkgNTcgMTlsMjc0IDJxMTIgLTIgMjMgLTYuNXQxNiAtOC41bDUgLTNxMTYgLTExIDI0IC0zMnEyMCAtNTAgNDYgLTEwMy41dDQxIC04MS41bDE2IC0yOXEyOSAtNjAgNTYgLTEwNHQ0OC41IC02OC41dDQxLjUgLTM4LjV0MzQgLTE0dDI3IDVxMiAxIDUgNXQxMiAyMnQxMy41IDQ3dDkuNSA4MXQwIDEyNXEtMiA0MCAtOSA3M3QtMTQgNDZsLTYgMTJxLTI1IDM0IC04NSA0M3EtMTMgMiA1IDI0IHExNyAxOSAzOCAzMHE1MyAyNiAyMzkgMjRxODIgLTEgMTM1IC0xM3EyMCAtNSAzMy41IC0xMy41dDIwLjUgLTI0dDEwLjUgLTMydDMuNSAtNDUuNXQtMSAtNTV0LTIuNSAtNzAuNXQtMS41IC04Mi41cTAgLTExIC0xIC00MnQtMC41IC00OHQzLjUgLTQwLjV0MTEuNSAtMzl0MjIuNSAtMjQuNXE4IC0yIDE3IC00dDI2IDExdDM4IDM0LjV0NTIgNjd0NjggMTA3LjVxNjAgMTA0IDEwNyAyMjVxNCAxMCAxMCAxNy41dDExIDEwLjVsNCAzbDUgMi41IHQxMyAzdDIwIDAuNWwyODggMnEzOSA1IDY0IC0yLjV0MzEgLTE2LjVsNiAtMTBxMjMgLTY0IC0xNTAgLTI5NHEtMjQgLTMyIC02NSAtODVxLTc4IC0xMDAgLTkwIC0xMzFxLTE3IC00MSAxNCAtODFxMTcgLTIxIDgxIC04MmgxbDEgLTFsMSAtMWwyIC0ycTE0MSAtMTMxIDE5MSAtMjIxcTMgLTUgNi41IC0xMi41dDcgLTI2LjV0LTAuNSAtMzR0LTI1IC0yNy41dC01OSAtMTIuNWwtMjU2IC00cS0yNCAtNSAtNTYgNXQtNTIgMjJsLTIwIDEyIHEtMzAgMjEgLTcwIDY0dC02OC41IDc3LjV0LTYxIDU4dC01Ni41IDE1LjVxLTMgLTEgLTggLTMuNXQtMTcgLTE0LjV0LTIxLjUgLTI5LjV0LTE3IC01MnQtNi41IC03Ny41cTAgLTE1IC0zLjUgLTI3LjV0LTcuNSAtMTguNWwtNCAtNXEtMTggLTE5IC01MyAtMjJoLTExNXEtNzEgLTQgLTE0NiAxNi41dC0xMzEuNSA1M3QtMTAzIDY2dC03MC41IDU3LjVsLTI1IDI0cS0xMCAxMCAtMjcuNSAzMHQtNzEuNSA5MXQtMTA2IDE1MXQtMTIyLjUgMjExIHQtMTMwLjUgMjcycS02IDE2IC02IDI3eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxOGE7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgMzkxcTAgMTE1IDY5LjUgMjQ1dDE5Ny41IDI1OHExNjkgMTY5IDM0MS41IDIzNnQyNDYuNSAtN3E2NSAtNjQgMjAgLTIwOXEtNCAtMTQgLTEgLTIwdDEwIC03dDE0LjUgMC41dDEzLjUgMy41bDYgMnExMzkgNTkgMjQ2IDU5dDE1MyAtNjFxNDUgLTYzIDAgLTE3OHEtMiAtMTMgLTQuNSAtMjB0NC41IC0xMi41dDEyIC03LjV0MTcgLTZxNTcgLTE4IDEwMyAtNDd0ODAgLTgxLjV0MzQgLTExNi41cTAgLTY4IC0zNyAtMTM5LjUgdC0xMDkgLTEzN3QtMTY4LjUgLTExNy41dC0yMjYgLTgzdC0yNzAuNSAtMzF0LTI3NSAzMy41dC0yNDAuNSA5M3QtMTcxLjUgMTUxdC02NSAxOTkuNXpNMTgxIDMyMHE5IC05NiA4OSAtMTcwdDIwOC41IC0xMDl0Mjc0LjUgLTIxcTIyMyAyMyAzNjkuNSAxNDEuNXQxMzIuNSAyNjQuNXEtOSA5NiAtODkgMTcwdC0yMDguNSAxMDl0LTI3NC41IDIxcS0yMjMgLTIzIC0zNjkuNSAtMTQxLjV0LTEzMi41IC0yNjQuNXpNNDEzLjUgMjMwLjUgcS00MC41IDkyLjUgNi41IDE4Ny41cTQ3IDkzIDE1MS41IDEzOXQyMTAuNSAxOXExMTEgLTI5IDE1OC41IC0xMTkuNXQyLjUgLTE5MC41cS00NSAtMTAyIC0xNTggLTE1MHQtMjI0IC0xMnEtMTA3IDM0IC0xNDcuNSAxMjYuNXpNNDk1IDI1Ny41cTkgLTM0LjUgNDMgLTUwLjV0NzQuNSAtMi41dDYyLjUgNDcuNXEyMSAzNCAxMSA2OXQtNDUgNTBxLTM0IDE0IC03MyAxdC02MCAtNDZxLTIyIC0zNCAtMTMgLTY4LjV6TTcwNSAzOTkgcS0xNyAtMzEgMTMgLTQ1cTE0IC01IDI5IDAuNXQyMiAxOC41cTggMTMgMy41IDI2LjV0LTE3LjUgMTguNXEtMTQgNSAtMjguNSAtMC41dC0yMS41IC0xOC41ek0xMTY1IDEyNzRxLTYgMjggOS41IDUxLjV0NDMuNSAyOS41cTEyMyAyNiAyNDQgLTExLjV0MjA4IC0xMzQuNXE4NyAtOTYgMTEyLjUgLTIyMi41dC0xMy41IC0yNDEuNXEtOSAtMjcgLTM0IC00MHQtNTIgLTR0LTQwIDM0dC01IDUycTI4IDgyIDEwIDE3MnQtODAgMTU4IHEtNjIgNjkgLTE0OCA5NS41dC0xNzMgOC41cS0yOCAtNiAtNTIgOS41dC0zMCA0My41ek0xMjI0IDEwNDdxLTUgMjQgOCA0NC41dDM3IDI1LjVxNjAgMTMgMTE5IC01LjV0MTAxIC02NS41dDU0LjUgLTEwOC41dC02LjUgLTExNy41cS04IC0yMyAtMjkuNSAtMzR0LTQ0LjUgLTRxLTIzIDggLTM0IDI5LjV0LTQgNDQuNXEyMCA2MyAtMjQgMTExdC0xMDcgMzVxLTI0IC01IC00NSA4dC0yNSAzN3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMThiOyIgZD0iTTAgNjM4cTAgMTg3IDgzLjUgMzQ5LjV0MjI5LjUgMjY5LjV0MzI1IDEzN3YtNDg1cTAgLTI1MiAtMTI2LjUgLTQ1OS41dC0zMzAuNSAtMzA2LjVxLTE4MSAyMTUgLTE4MSA0OTV6TTM5OCAtMzRxMTM4IDg3IDIzNS41IDIxMXQxMzEuNSAyNjhxMzUgLTE0NCAxMzIuNSAtMjY4dDIzNS41IC0yMTFxLTE3MSAtOTQgLTM2OCAtOTRxLTE5NiAwIC0zNjcgOTR6TTg5OCA5MDl2NDg1cTE3OSAtMzAgMzI1IC0xMzd0MjI5LjUgLTI2OS41IHQ4My41IC0zNDkuNXEwIC0yODAgLTE4MSAtNDk1cS0yMDQgOTkgLTMzMC41IDMwNi41dC0xMjYuNSA0NTkuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMThjOyIgaG9yaXotYWR2LXg9IjE0MDgiIGQ9Ik0wIC0yMTFxMCAxOSAxMyAzMS41dDMyIDEyLjVxMTczIDEgMzIyLjUgMTA3LjV0MjUxLjUgMjk0LjVxLTM2IC0xNCAtNzIgLTIzdC04MyAtMTN0LTkxIDIuNXQtOTMgMjguNXQtOTIgNTl0LTg0LjUgMTAwdC03NC41IDE0NnExMTQgNDcgMjE0IDU3dDE2Ny41IC03LjV0MTI0LjUgLTU2LjV0ODguNSAtNzd0NTYuNSAtODJxNTMgMTMxIDc5IDI5MXEtNyAtMSAtMTggLTIuNXQtNDYuNSAtMi41dC02OS41IDAuNXQtODEuNSAxMHQtODguNSAyMyB0LTg0IDQyLjV0LTc1IDY1dC01NC41IDk0LjV0LTI4LjUgMTI3LjVxNzAgMjggMTMzLjUgMzYuNXQxMTIuNSAtMXQ5MiAtMzB0NzMuNSAtNTB0NTYgLTYxdDQyIC02M3QyNy41IC01NnQxNiAtMzkuNWw0IC0xNnExMiAxMjIgMTIgMTk1cS04IDYgLTIxLjUgMTZ0LTQ5IDQ0LjV0LTYzLjUgNzEuNXQtNTQgOTN0LTMzIDExMi41dDEyIDEyN3Q3MCAxMzguNXE3MyAtMjUgMTI3LjUgLTYxLjV0ODQuNSAtNzYuNXQ0OCAtODV0MjAuNSAtODkgdC0wLjUgLTg1LjV0LTEzIC03Ni41dC0xOSAtNjJ0LTE3IC00MmwtNyAtMTVxMSAtNSAxIC01MC41dC0xIC03MS41cTMgNyAxMCAxOC41dDMwLjUgNDN0NTAuNSA1OHQ3MSA1NS41dDkxLjUgNDQuNXQxMTIgMTQuNXQxMzIuNSAtMjRxLTIgLTc4IC0yMS41IC0xNDEuNXQtNTAgLTEwNC41dC02OS41IC03MS41dC04MS41IC00NS41dC04NC41IC0yNHQtODAgLTkuNXQtNjcuNSAxdC00Ni41IDQuNWwtMTcgM3EtMjMgLTE0NyAtNzMgLTI4MyBxNiA3IDE4IDE4LjV0NDkuNSA0MXQ3Ny41IDUyLjV0OTkuNSA0MnQxMTcuNSAyMHQxMjkgLTIzLjV0MTM3IC03Ny41cS0zMiAtODAgLTc2IC0xMzh0LTkxIC04OC41dC05OSAtNDYuNXQtMTAxLjUgLTE0LjV0LTk2LjUgOC41dC04Ni41IDIydC02OS41IDI3LjV0LTQ2IDIyLjVsLTE3IDEwcS0xMTMgLTIyOCAtMjg5LjUgLTM1OS41dC0zODQuNSAtMTMyLjVxLTE5IDAgLTMyIDEzdC0xMyAzMnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMThkOyIgaG9yaXotYWR2LXg9IjEyODAiIGQ9Ik0yMSAyMTd2NjZoMTIzOHYtNjZxMCAtODUgLTU3LjUgLTE0NC41dC0xMzguNSAtNTkuNWgtNTdsLTI2MCAtMjY5djI2OWgtNTI5cS04MSAwIC0xMzguNSA1OS41dC01Ny41IDE0NC41ek0yMSAzNTR2MjU1aDEyMzh2LTI1NWgtMTIzOHpNMjEgNjgydjI1NWgxMjM4di0yNTVoLTEyMzh6TTIxIDEwMTB2NjdxMCA4NCA1Ny41IDE0My41dDEzOC41IDU5LjVoODQ2cTgxIDAgMTM4LjUgLTU5LjV0NTcuNSAtMTQzLjV2LTY3aC0xMjM4eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxOGU7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNMjI0IDY0MHEwIC0xNDggNzMgLTI3M3QxOTggLTE5OHQyNzMgLTczdDI3MyA3M3QxOTggMTk4dDczIDI3M3QtNzMgMjczdC0xOTggMTk4dC0yNzMgNzN0LTI3MyAtNzMgdC0xOTggLTE5OHQtNzMgLTI3M3pNMzg0IDU0NHYxOTJxMCAxMyA5LjUgMjIuNXQyMi41IDkuNWgzNTJ2MTkycTAgMTQgOSAyM3QyMyA5cTEyIDAgMjQgLTEwbDMxOSAtMzE5cTkgLTkgOSAtMjN0LTkgLTIzbC0zMjAgLTMyMHEtOSAtOSAtMjMgLTlxLTEzIDAgLTIyLjUgOS41dC05LjUgMjIuNXYxOTJoLTM1MnEtMTMgMCAtMjIuNSA5LjV0LTkuNSAyMi41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxOTA7IiBkPSJNMCA2NDBxMCAyMDkgMTAzIDM4NS41dDI3OS41IDI3OS41dDM4NS41IDEwM3QzODUuNSAtMTAzdDI3OS41IC0yNzkuNXQxMDMgLTM4NS41dC0xMDMgLTM4NS41dC0yNzkuNSAtMjc5LjV0LTM4NS41IC0xMDN0LTM4NS41IDEwM3QtMjc5LjUgMjc5LjV0LTEwMyAzODUuNXpNMjI0IDY0MHEwIC0xNDggNzMgLTI3M3QxOTggLTE5OHQyNzMgLTczdDI3MyA3M3QxOTggMTk4dDczIDI3M3QtNzMgMjczdC0xOTggMTk4dC0yNzMgNzN0LTI3MyAtNzMgdC0xOTggLTE5OHQtNzMgLTI3M3pNMzg0IDY0MHEwIDE0IDkgMjNsMzIwIDMyMHE5IDkgMjMgOXExMyAwIDIyLjUgLTkuNXQ5LjUgLTIyLjV2LTE5MmgzNTJxMTMgMCAyMi41IC05LjV0OS41IC0yMi41di0xOTJxMCAtMTMgLTkuNSAtMjIuNXQtMjIuNSAtOS41aC0zNTJ2LTE5MnEwIC0xNCAtOSAtMjN0LTIzIC05cS0xMiAwIC0yNCAxMGwtMzE5IDMxOXEtOSA5IC05IDIzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxOTE7IiBkPSJNMCAxNjB2OTYwcTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNWg5NjBxMTE5IDAgMjAzLjUgLTg0LjV0ODQuNSAtMjAzLjV2LTk2MHEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtOTYwcS0xMTkgMCAtMjAzLjUgODQuNXQtODQuNSAyMDMuNXpNMjU2IDE2MHEwIC0xMyA5LjUgLTIyLjV0MjIuNSAtOS41aDk2MHExMyAwIDIyLjUgOS41dDkuNSAyMi41djk2MHEwIDEzIC05LjUgMjIuNXQtMjIuNSA5LjVoLTk2MCBxLTEzIDAgLTIyLjUgLTkuNXQtOS41IC0yMi41di05NjB6TTQ0OCA2NDBxMCAzMyAyNyA1Mmw0NDggMzIwcTE3IDEyIDM3IDEycTI2IDAgNDUgLTE5dDE5IC00NXYtNjQwcTAgLTI2IC0xOSAtNDV0LTQ1IC0xOXEtMjAgMCAtMzcgMTJsLTQ0OCAzMjBxLTI3IDE5IC0yNyA1MnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTkyOyIgZD0iTTAgNjQwcTAgMjA5IDEwMyAzODUuNXQyNzkuNSAyNzkuNXQzODUuNSAxMDN0Mzg1LjUgLTEwM3QyNzkuNSAtMjc5LjV0MTAzIC0zODUuNXQtMTAzIC0zODUuNXQtMjc5LjUgLTI3OS41dC0zODUuNSAtMTAzdC0zODUuNSAxMDN0LTI3OS41IDI3OS41dC0xMDMgMzg1LjV6TTIyNCA2NDBxMCAtMTQ4IDczIC0yNzN0MTk4IC0xOTh0MjczIC03M3QyNzMgNzN0MTk4IDE5OHQ3MyAyNzN0LTczIDI3M3QtMTk4IDE5OHQtMjczIDczdC0yNzMgLTczIHQtMTk4IC0xOTh0LTczIC0yNzN6TTUxMiA2NDBxMCAxMDYgNzUgMTgxdDE4MSA3NXQxODEgLTc1dDc1IC0xODF0LTc1IC0xODF0LTE4MSAtNzV0LTE4MSA3NXQtNzUgMTgxeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxOTM7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgMzIwcTAgMTgxIDEwNC41IDMzMHQyNzQuNSAyMTFsMTcgLTEzMXEtMTIyIC01NCAtMTk1IC0xNjUuNXQtNzMgLTI0NC41cTAgLTE4NSAxMzEuNSAtMzE2LjV0MzE2LjUgLTEzMS41cTEyNiAwIDIzMi41IDY1dDE2NSAxNzUuNXQ0OS41IDIzNi41bDEwMiAtMjA0cS01OCAtMTc5IC0yMTAgLTI5MHQtMzM5IC0xMTFxLTE1NiAwIC0yODguNSA3Ny41dC0yMTAgMjEwdC03Ny41IDI4OC41ek00MTYgMTM0OHEtMiAxNiA2IDQyIHExNCA1MSA1NyA4Mi41dDk3IDMxLjVxNjYgMCAxMTMgLTQ3dDQ3IC0xMTNxMCAtNjkgLTUyIC0xMTcuNXQtMTIwIC00MS41bDM3IC0yODloNDIzdi0xMjhoLTQwN2wxNiAtMTI4aDQ1NXE0MCAwIDU3IC0zNWwyMjggLTQ1NWwxOTggOTlsNTggLTExNGwtMjU2IC0xMjhxLTEzIC03IC0yOSAtN3EtNDAgMCAtNTcgMzVsLTIzOSA0NzdoLTQ3MnEtMjQgMCAtNDIuNSAxNi41dC0yMS41IDQwLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE5NDsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0xMjggODA2cTE2IC04IDI1LjUgLTI2dDIxLjUgLTIwcTIxIC0zIDU0LjUgOC41dDU4IDEwLjV0NDEuNSAtMzBxMTEgLTE4IDE4LjUgLTM4LjV0MTUgLTQ4dDEyLjUgLTQwLjUgcTE3IC00NiA1MyAtMTg3cTM2IC0xNDYgNTcgLTE5N3E0MiAtOTkgMTAzIC0xMjVxNDMgLTEyIDg1IC0xLjV0NzYgMzEuNXExMzEgNzcgMjUwIDIzN3ExMDQgMTM5IDE3Mi41IDI5Mi41dDgyLjUgMjI2LjVxMTYgODUgLTIxIDEzMnEtNTIgNjUgLTE4NyA0NXEtMTcgLTMgLTQxIC0xMi41dC01Ny41IC0zMC41dC02NC41IC00OC41dC01OS41IC03MHQtNDQuNSAtOTEuNXE4MCA3IDExMy41IC0xNnQyNi41IC05OXEtNSAtNTIgLTUyIC0xNDMgcS00MyAtNzggLTcxIC05OXEtNDQgLTMyIC04NyAxNHEtMjMgMjQgLTM3LjUgNjQuNXQtMTkgNzN0LTEwIDg0dC04LjUgNzEuNXEtMjMgMTI5IC0zNCAxNjRxLTEyIDM3IC0zNS41IDY5dC01MC41IDQwcS01NyAxNiAtMTI3IC0yNXEtNTQgLTMyIC0xMzYuNSAtMTA2dC0xMjIuNSAtMTAydi03eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxOTU7IiBob3Jpei1hZHYteD0iMTE1MiIgZD0iTTAgNjA4djEyOHEwIDIzIDIzIDMxbDIzMyA3MXY5M2wtMjE1IC02NnEtMyAtMSAtOSAtMXEtMTAgMCAtMTkgNnEtMTMgMTAgLTEzIDI2djEyOHEwIDIzIDIzIDMxbDIzMyA3MXYyNTBxMCAxNCA5IDIzdDIzIDloMTYwcTE0IDAgMjMgLTl0OSAtMjN2LTE4MWwzNzUgMTE2cTE1IDUgMjggLTV0MTMgLTI2di0xMjhxMCAtMjMgLTIzIC0zMWwtMzkzIC0xMjF2LTkzbDM3NSAxMTZxMTUgNSAyOCAtNXQxMyAtMjZ2LTEyOHEwIC0yMyAtMjMgLTMxIGwtMzkzIC0xMjF2LTQ4N3ExODggMTMgMzE4IDE1MXQxMzAgMzI4cTAgMTQgOSAyM3QyMyA5aDE2MHExNCAwIDIzIC05dDkgLTIzcTAgLTE5MSAtOTQuNSAtMzUzdC0yNTYuNSAtMjU2LjV0LTM1MyAtOTQuNWgtMTYwcS0xNCAwIC0yMyA5dC05IDIzdjYxMWwtMjE1IC02NnEtMyAtMSAtOSAtMXEtMTAgMCAtMTkgNnEtMTMgMTAgLTEzIDI2eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxOTY7IiBob3Jpei1hZHYteD0iMTQwOCIgZD0iTTAgMjg4djgzMnEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoODMycTExOSAwIDIwMy41IC04NC41dDg0LjUgLTIwMy41di04MzJxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTgzMnEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTEyOCAyODhxMCAtNjYgNDcgLTExM3QxMTMgLTQ3aDgzMnE2NiAwIDExMyA0N3Q0NyAxMTN2ODMycTAgNjYgLTQ3IDExM3QtMTEzIDQ3aC04MzJxLTY2IDAgLTExMyAtNDcgdC00NyAtMTEzdi04MzJ6TTI1NiA2NzJ2NjRxMCAxNCA5IDIzdDIzIDloMzUydjM1MnEwIDE0IDkgMjN0MjMgOWg2NHExNCAwIDIzIC05dDkgLTIzdi0zNTJoMzUycTE0IDAgMjMgLTl0OSAtMjN2LTY0cTAgLTE0IC05IC0yM3QtMjMgLTloLTM1MnYtMzUycTAgLTE0IC05IC0yM3QtMjMgLTloLTY0cS0xNCAwIC0yMyA5dC05IDIzdjM1MmgtMzUycS0xNCAwIC0yMyA5dC05IDIzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxOTc7IiBob3Jpei1hZHYteD0iMjE3NiIgZD0iTTAgNTc2cTAgMTIgMzguNSAyMC41dDk2LjUgMTAuNXEtNyAyNSAtNyA0OXEwIDMzIDkuNSA1Ni41dDIyLjUgMjMuNWg2NHY2NGgxMjhxMTU4IDAgMjY4IC02NGgxMTEzcTQyIC03IDEwNi41IC0xOHQ4MC41IC0xNHE4OSAtMTUgMTUwIC00MC41dDgzLjUgLTQ3LjV0MjIuNSAtNDB0LTIyLjUgLTQwdC04My41IC00Ny41dC0xNTAgLTQwLjVxLTE2IC0zIC04MC41IC0xNHQtMTA2LjUgLTE4aC0xMTEzcS0xMTAgLTY0IC0yNjggLTY0aC0xMjh2NjQgaC02NHEtMTMgMCAtMjIuNSAyMy41dC05LjUgNTYuNXEwIDI0IDcgNDlxLTU4IDIgLTk2LjUgMTAuNXQtMzguNSAyMC41ek0zMjMgMzM2aDI5cTE1NyAwIDI3MyA2NGgxMDE1cS0yMTcgLTM4IC00NTYgLTgwcS01NyAwIC0xMTMgLTI0dC04MyAtNDhsLTI4IC0yNGwtMjg4IC0yODhxLTI2IC0yNiAtNzAuNSAtNDV0LTg5LjUgLTE5aC05NnpNMzIzIDgxNmw5MyA0NjRoOTZxNDYgMCA5MCAtMTl0NzAgLTQ1bDI4OCAtMjg4cTQgLTQgMTEgLTEwLjUgdDMwLjUgLTIzdDQ4LjUgLTI5dDYxLjUgLTIzdDcyLjUgLTEwLjVsNDU2IC04MGgtMTAxNXEtMTE2IDY0IC0yNzMgNjRoLTI5ek0xNzM5IDQ4NGw4MSAtMzBxNjggNDggNjggMTIydC02OCAxMjJsLTgxIC0zMHE1MyAtMzYgNTMgLTkydC01MyAtOTJ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjE5ODsiIGhvcml6LWFkdi14PSIxNjY0IiBkPSJNMCA3OTZxMCA0NyAyNy41IDg1dDcxLjUgNTNsMTU3IDUzbC01MyAxNTlxLTggMjQgLTggNDdxMCA2MCA0MiAxMDIuNXQxMDIgNDIuNXE0NyAwIDg1IC0yN3Q1MyAtNzJsNTQgLTE2MGwzMTAgMTA1bC01NCAxNjBxLTggMjQgLTggNDdxMCA1OSA0Mi41IDEwMnQxMDEuNSA0M3E0NyAwIDg1LjUgLTI3LjV0NTMuNSAtNzEuNWw1MyAtMTYxbDE2MiA1NXEyMSA2IDQzIDZxNjAgMCAxMDIuNSAtMzkuNXQ0Mi41IC05OC41cTAgLTQ1IC0zMCAtODEuNSB0LTc0IC01MS41bC0xNTcgLTU0bDEwNSAtMzE2bDE2NCA1NnEyNCA4IDQ2IDhxNjIgMCAxMDMuNSAtNDAuNXQ0MS41IC0xMDEuNXEwIC05NyAtOTMgLTEzMGwtMTcyIC01OWw1NiAtMTY3cTcgLTIxIDcgLTQ3cTAgLTU5IC00MiAtMTAydC0xMDEgLTQzcS00NyAwIC04NS41IDI3dC01My41IDcybC01NSAxNjVsLTMxMCAtMTA2bDU1IC0xNjRxOCAtMjQgOCAtNDdxMCAtNTkgLTQyIC0xMDJ0LTEwMiAtNDNxLTQ3IDAgLTg1IDI3dC01MyA3MiBsLTU1IDE2M2wtMTUzIC01M3EtMjkgLTkgLTUwIC05cS02MSAwIC0xMDEuNSA0MHQtNDAuNSAxMDFxMCA0NyAyNy41IDg1dDcxLjUgNTNsMTU2IDUzbC0xMDUgMzEzbC0xNTYgLTU0cS0yNiAtOCAtNDggLThxLTYwIDAgLTEwMSA0MC41dC00MSAxMDAuNXpNNjIwIDgxMWwxMDUgLTMxM2wzMTAgMTA1bC0xMDUgMzE1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxOTk7IiBkPSJNMCAxNjB2OTYwcTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNWg5NjBxMTE5IDAgMjAzLjUgLTg0LjV0ODQuNSAtMjAzLjV2LTk2MHEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtOTYwcS0xMTkgMCAtMjAzLjUgODQuNXQtODQuNSAyMDMuNXpNMjU2IDM1MnEwIC00MCAyOCAtNjh0NjggLTI4aDgzMnE0MCAwIDY4IDI4dDI4IDY4djQzNnEtMzEgLTM1IC02NCAtNTVxLTM0IC0yMiAtMTMyLjUgLTg1dC0xNTEuNSAtOTkgcS05OCAtNjkgLTE2NCAtNjl0LTE2NCA2OXEtNDYgMzIgLTE0MS41IDkyLjV0LTE0Mi41IDkyLjVxLTEyIDggLTMzIDI3dC0zMSAyN3YtNDM2ek0yNTYgOTI4cTAgLTM3IDMwLjUgLTc2LjV0NjcuNSAtNjQuNXE0NyAtMzIgMTM3LjUgLTg5dDEyOS41IC04M3EzIC0yIDE3IC0xMS41dDIxIC0xNHQyMSAtMTN0MjMuNSAtMTN0MjEuNSAtOS41dDIyLjUgLTcuNXQyMC41IC0yLjV0MjAuNSAyLjV0MjIuNSA3LjV0MjEuNSA5LjV0MjMuNSAxM3QyMSAxMyB0MjEgMTR0MTcgMTEuNWwyNjcgMTc0cTM1IDIzIDY2LjUgNjIuNXQzMS41IDczLjVxMCA0MSAtMjcuNSA3MHQtNjguNSAyOWgtODMycS00MCAwIC02OCAtMjh0LTI4IC02OHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTlhOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDY0MHEwIDE4MiA3MSAzNDh0MTkxIDI4NnQyODYgMTkxdDM0OCA3MXQzNDggLTcxdDI4NiAtMTkxdDE5MSAtMjg2dDcxIC0zNDh0LTcxIC0zNDh0LTE5MSAtMjg2dC0yODYgLTE5MXQtMzQ4IC03MXQtMzQ4IDcxdC0yODYgMTkxdC0xOTEgMjg2dC03MSAzNDh6TTQxIDY0MHEwIC0xNzMgNjggLTMzMS41dDE4Mi41IC0yNzN0MjczIC0xODIuNXQzMzEuNSAtNjh0MzMxLjUgNjh0MjczIDE4Mi41dDE4Mi41IDI3M3Q2OCAzMzEuNSB0LTY4IDMzMS41dC0xODIuNSAyNzN0LTI3MyAxODIuNXQtMzMxLjUgNjh0LTMzMS41IC02OHQtMjczIC0xODIuNXQtMTgyLjUgLTI3M3QtNjggLTMzMS41ek0xMjcgNjQwcTAgMTYzIDY3IDMxM2wzNjcgLTEwMDVxLTE5NiA5NSAtMzE1IDI4MXQtMTE5IDQxMXpNMjU0IDEwNjJxMTA1IDE2MCAyNzQuNSAyNTMuNXQzNjcuNSA5My41cTE0NyAwIDI4MC41IC01M3QyMzguNSAtMTQ5aC0xMHEtNTUgMCAtOTIgLTQwLjV0LTM3IC05NS41IHEwIC0xMiAyIC0yNHQ0IC0yMS41dDggLTIzdDkgLTIxdDEyIC0yMi41dDEyLjUgLTIxdDE0LjUgLTI0dDE0IC0yM3E2MyAtMTA3IDYzIC0yMTJxMCAtMTkgLTIuNSAtMzguNXQtMTAgLTQ5LjV0LTExLjUgLTQ0dC0xNy41IC01OXQtMTcuNSAtNThsLTc2IC0yNTZsLTI3OCA4MjZxNDYgMyA4OCA4cTE5IDIgMjYgMTguNXQtMi41IDMxdC0yOC41IDEzLjVsLTIwNSAtMTBxLTc1IDEgLTIwMiAxMHEtMTIgMSAtMjAuNSAtNXQtMTEuNSAtMTUgdC0xLjUgLTE4LjV0OSAtMTYuNXQxOS41IC04bDgwIC04bDEyMCAtMzI4bC0xNjggLTUwNGwtMjgwIDgzMnE0NiAzIDg4IDhxMTkgMiAyNiAxOC41dC0yLjUgMzF0LTI4LjUgMTMuNWwtMjA1IC0xMHEtNyAwIC0yMyAwLjV0LTI2IDAuNXpNNjc5IC05N2wyMzAgNjcwbDIzNyAtNjQ3cTEgLTYgNSAtMTFxLTEyNiAtNDQgLTI1NSAtNDRxLTExMiAwIC0yMTcgMzJ6TTEyODIgLTI0bDIzNSA2NzhxNTkgMTY5IDU5IDI3NnEwIDQyIC02IDc5IHE5NSAtMTc0IDk1IC0zNjlxMCAtMjA5IC0xMDQgLTM4NS41dC0yNzkgLTI3OC41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxOWI7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgNDU1cTAgMTQwIDEwMC41IDI2My41dDI3NSAyMDUuNXQzOTEuNSAxMDh2LTE3MnEtMjE3IC0zOCAtMzU2LjUgLTE1MHQtMTM5LjUgLTI1NXEwIC0xNTIgMTU0LjUgLTI2N3QzODguNSAtMTQ1djEzNjBsMjcyIDEzM3YtMTUzNmwtMjcyIC0xMjhxLTIyOCAyMCAtNDE0IDEwMnQtMjkzIDIwOC41dC0xMDcgMjcyLjV6TTExMzQgODYwdjE3MnEyNzcgLTMzIDQ4MSAtMTU3bDE0MCA3OWwzNyAtMzkwbC01MjUgMTE0bDE0NyA4MyBxLTExOSA3MCAtMjgwIDk5eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxOWM7IiBob3Jpei1hZHYteD0iMjA0OCIgZD0iTTAgLTEyOHEwIDI2IDIwLjUgNDV0NDguNSAxOWgxNzgycTI4IDAgNDguNSAtMTl0MjAuNSAtNDV2LTEyOGgtMTkyMHYxMjh6TTAgMTAyNHYxMjhsOTYwIDM4NGw5NjAgLTM4NHYtMTI4aC0xMjhxMCAtMjYgLTIwLjUgLTQ1dC00OC41IC0xOWgtMTUyNnEtMjggMCAtNDguNSAxOXQtMjAuNSA0NWgtMTI4ek0xMjggMHY2NHEwIDI2IDIwLjUgNDV0NDguNSAxOWg1OXY3NjhoMjU2di03NjhoMTI4djc2OGgyNTZ2LTc2OGgxMjh2NzY4aDI1NiB2LTc2OGgxMjh2NzY4aDI1NnYtNzY4aDU5cTI4IDAgNDguNSAtMTl0MjAuNSAtNDV2LTY0aC0xNjY0eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxOWQ7IiBob3Jpei1hZHYteD0iMjMwNCIgZD0iTTAgMTAyNHEwIDIzIDIyIDMxbDExMjAgMzUycTQgMSAxMCAxdDEwIC0xbDExMjAgLTM1MnEyMiAtOCAyMiAtMzF0LTIyIC0zMWwtMTEyMCAtMzUycS00IC0xIC0xMCAtMXQtMTAgMWwtNjUyIDIwNnEtNDMgLTM0IC03MSAtMTExLjV0LTM0IC0xNzguNXE2MyAtMzYgNjMgLTEwOXEwIC02OSAtNTggLTEwN2w1OCAtNDMzcTIgLTE0IC04IC0yNXEtOSAtMTEgLTI0IC0xMWgtMTkycS0xNSAwIC0yNCAxMXEtMTAgMTEgLTggMjVsNTggNDMzIHEtNTggMzggLTU4IDEwN3EwIDczIDY1IDExMXExMSAyMDcgOTggMzMwbC0zMzMgMTA0cS0yMiA4IC0yMiAzMXpNNTEyIDM4NGwxOCAzMTZsNTc0IC0xODFxMjIgLTcgNDggLTd0NDggN2w1NzQgMTgxbDE4IC0zMTZxNCAtNjkgLTgyIC0xMjh0LTIzNSAtOTMuNXQtMzIzIC0zNC41dC0zMjMgMzQuNXQtMjM1IDkzLjV0LTgyIDEyOHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMTllOyIgZD0iTTEwOSAxNTM2cTU4IC0xNSAxMDggLTE1cTQzIDAgMTExIDE1cTYzIC0xMTEgMTMzLjUgLTIyOS41dDE2NyAtMjc2LjV0MTM4LjUgLTIyN3EzNyA2MSAxMDkuNSAxNzcuNXQxMTcuNSAxOTB0MTA1IDE3NnQxMDcgMTg5LjVxNTQgLTE0IDEwNyAtMTRxNTYgMCAxMTQgMTRxLTI4IC0zOSAtNjAgLTg4LjV0LTQ5LjUgLTc4LjV0LTU2LjUgLTk2dC00OSAtODRxLTE0NiAtMjQ4IC0zNTMgLTYxMGwxMyAtNzA3cS02MiAxMSAtMTA1IDExIHEtNDEgMCAtMTA1IC0xMWwxMyA3MDdxLTQwIDY5IC0xNjguNSAyOTUuNXQtMjE2LjUgMzc0LjV0LTE4MSAyODd6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFhMDsiIGhvcml6LWFkdi14PSIxMjgwIiBkPSJNMTExIDE4MnEwIDgxIDQ0LjUgMTUwdDExOC41IDExNXExMzEgODIgNDA0IDEwMHEtMzIgNDEgLTQ3LjUgNzMuNXQtMTUuNSA3My41cTAgNDAgMjEgODVxLTQ2IC00IC02OCAtNHEtMTQ4IDAgLTI0OS41IDk2LjV0LTEwMS41IDI0NC41cTAgODIgMzYgMTU5dDk5IDEzMXE3NiA2NiAxODIgOTh0MjE4IDMyaDQxN2wtMTM3IC04OGgtMTMycTc1IC02MyAxMTMgLTEzM3QzOCAtMTYwcTAgLTcyIC0yNC41IC0xMjkuNXQtNTkuNSAtOTMgdC02OS41IC02NXQtNTkgLTYxLjV0LTI0LjUgLTY2cTAgLTM2IDMyIC03MC41dDc3IC02OHQ5MC41IC03My41dDc3LjUgLTEwNHQzMiAtMTQycTAgLTkxIC00OSAtMTczcS03MSAtMTIyIC0yMDkuNSAtMTc5LjV0LTI5OC41IC01Ny41cS0xMzIgMCAtMjQ2LjUgNDEuNXQtMTcyLjUgMTM3LjVxLTM2IDU5IC0zNiAxMzF6TTI5NyAyMjhxMCAtNTYgMjMuNSAtMTAydDYxIC03NS41dDg3IC01MHQxMDAgLTI5dDEwMS41IC04LjVxNTggMCAxMTEuNSAxMyB0OTkgMzl0NzMgNzN0MjcuNSAxMDlxMCAyNSAtNyA0OXQtMTQuNSA0MnQtMjcgNDEuNXQtMjkuNSAzNXQtMzguNSAzNC41dC0zNi41IDI5dC00MS41IDMwdC0zNi41IDI2cS0xNiAyIC00OSAycS01MyAwIC0xMDQuNSAtN3QtMTA3IC0yNXQtOTcgLTQ2dC02OC41IC03NC41dC0yNyAtMTA1LjV6TTQwMyAxMjIycTAgLTQ2IDEwIC05Ny41dDMxLjUgLTEwM3Q1MiAtOTIuNXQ3NSAtNjd0OTYuNSAtMjZxMzcgMCA3Ny41IDE2LjV0NjUuNSA0My41IHE1MyA1NiA1MyAxNTlxMCA1OSAtMTcgMTI1LjV0LTQ4IDEyOXQtODQgMTAzLjV0LTExNyA0MXEtNDIgMCAtODIuNSAtMTkuNXQtNjYuNSAtNTIuNXEtNDYgLTU5IC00NiAtMTYweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYTE7IiBob3Jpei1hZHYteD0iMTk4NCIgZD0iTTAgNzIycTAgOTQgNjYgMTYwdDE2MCA2NnE4MyAwIDE0OCAtNTVxMjQ4IDE1OCA1OTIgMTY0bDEzNCA0MjNxNCAxNCAxNy41IDIxLjV0MjguNSA0LjVsMzQ3IC04MnEyMiA1MCA2OC41IDgxdDEwMi41IDMxcTc3IDAgMTMxLjUgLTU0LjV0NTQuNSAtMTMxLjV0LTU0LjUgLTEzMnQtMTMxLjUgLTU1cS03NiAwIC0xMzAuNSA1NHQtNTUuNSAxMzFsLTMxNSA3NGwtMTE2IC0zNjZxMzI3IC0xNCA1NjAgLTE2NnE2NCA1OCAxNTEgNTggcTk0IDAgMTYwIC02NnQ2NiAtMTYwcTAgLTYyIC0zMSAtMTE0dC04MyAtODJxNSAtMzMgNSAtNjFxMCAtMTIxIC02OC41IC0yMzAuNXQtMTk3LjUgLTE5My41cS0xMjUgLTgyIC0yODUuNSAtMTI1LjV0LTMzNS41IC00My41cS0xNzYgMCAtMzM2LjUgNDMuNXQtMjg0LjUgMTI1LjVxLTEyOSA4NCAtMTk3LjUgMTkzdC02OC41IDIzMXEwIDI5IDUgNjZxLTQ4IDMxIC03NyA4MS41dC0yOSAxMDkuNXpNNzcgNzIycTAgLTY3IDUxIC0xMTEgcTQ5IDEzMSAxODAgMjM1cS0zNiAyNSAtODIgMjVxLTYyIDAgLTEwNS41IC00My41dC00My41IC0xMDUuNXpNMTc4IDQ2NXEwIC0xMDEgNTkuNSAtMTk0dDE3MS41IC0xNjZxMTE2IC03NSAyNjUuNSAtMTE1LjV0MzEzLjUgLTQwLjV0MzEzLjUgNDAuNXQyNjUuNSAxMTUuNXExMTIgNzMgMTcxLjUgMTY2dDU5LjUgMTk0dC01OS41IDE5My41dC0xNzEuNSAxNjUuNXEtMTE2IDc1IC0yNjUuNSAxMTUuNXQtMzEzLjUgNDAuNXQtMzEzLjUgLTQwLjUgdC0yNjUuNSAtMTE1LjVxLTExMiAtNzMgLTE3MS41IC0xNjUuNXQtNTkuNSAtMTkzLjV6TTU1NSA1NzJxMCA1NyA0MS41IDk4dDk3LjUgNDF0OTYuNSAtNDF0NDAuNSAtOThxMCAtNTYgLTQwLjUgLTk2dC05Ni41IC00MHEtNTcgMCAtOTggNDB0LTQxIDk2ek02NjEgMjA5LjVxMCAxNi41IDExIDI3LjV0MjcgMTF0MjcgLTExcTc3IC03NyAyNjUgLTc3aDJxMTg4IDAgMjY1IDc3cTExIDExIDI3IDExdDI3IC0xMXQxMSAtMjcuNXQtMTEgLTI3LjUgcS05OSAtOTkgLTMxOSAtOTloLTJxLTIyMCAwIC0zMTkgOTlxLTExIDExIC0xMSAyNy41ek0xMTUzIDU3MnEwIDU3IDQxLjUgOTh0OTcuNSA0MXQ5Ni41IC00MXQ0MC41IC05OHEwIC01NiAtNDAuNSAtOTZ0LTk2LjUgLTQwcS01NyAwIC05OCA0MHQtNDEgOTZ6TTE1NTUgMTM1MHEwIC00NSAzMiAtNzd0NzcgLTMydDc3IDMydDMyIDc3dC0zMiA3N3QtNzcgMzJ0LTc3IC0zMnQtMzIgLTc3ek0xNjcyIDg0M3ExMzEgLTEwNSAxNzggLTIzOCBxNTcgNDYgNTcgMTE3cTAgNjIgLTQzLjUgMTA1LjV0LTEwNS41IDQzLjVxLTQ5IDAgLTg2IC0yOHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWEyOyIgZD0iTTAgMTkzdjg5NHEwIDEzMyA5NCAyMjd0MjI2IDk0aDg5NnExMzIgMCAyMjYgLTk0dDk0IC0yMjd2LTg5NHEwIC0xMzMgLTk0IC0yMjd0LTIyNiAtOTRoLTg5NnEtMTMyIDAgLTIyNiA5NHQtOTQgMjI3ek0xNTUgNzA5cTAgLTM3IDE5LjUgLTY3LjV0NTIuNSAtNDUuNXEtNyAtMjUgLTcgLTU0cTAgLTk4IDc0IC0xODEuNXQyMDEuNSAtMTMydDI3OC41IC00OC41cTE1MCAwIDI3Ny41IDQ4LjV0MjAxLjUgMTMydDc0IDE4MS41cTAgMjcgLTYgNTQgcTM1IDE0IDU3IDQ1LjV0MjIgNzAuNXEwIDUxIC0zNiA4Ny41dC04NyAzNi41cS02MCAwIC05OCAtNDhxLTE1MSAxMDcgLTM3NSAxMTVsODMgMjY1bDIwNiAtNDlxMSAtNTAgMzYuNSAtODV0ODQuNSAtMzVxNTAgMCA4NiAzNS41dDM2IDg1LjV0LTM2IDg2dC04NiAzNnEtMzYgMCAtNjYgLTIwLjV0LTQ1IC01My41bC0yMjcgNTRxLTkgMiAtMTcuNSAtMi41dC0xMS41IC0xNC41bC05NSAtMzAycS0yMjQgLTQgLTM4MSAtMTEzcS0zNiA0MyAtOTMgNDMgcS01MSAwIC04NyAtMzYuNXQtMzYgLTg3LjV6TTQ5MyA2MTNxMCAzNyAyNiA2M3Q2MyAyNnQ2MyAtMjZ0MjYgLTYzdC0yNiAtNjR0LTYzIC0yN3QtNjMgMjd0LTI2IDY0ek01NjAgMzc1cTAgMTEgOCAxOHE3IDcgMTcuNSA3dDE3LjUgLTdxNDkgLTUxIDE3MiAtNTFoMWgxcTEyMiAwIDE3MyA1MXE3IDcgMTcuNSA3dDE3LjUgLTd0NyAtMTh0LTcgLTE4cS02NSAtNjQgLTIwOCAtNjRoLTFoLTFxLTE0MyAwIC0yMDcgNjRxLTggNyAtOCAxOHogTTg4MiA2MTNxMCAzNyAyNiA2M3Q2MyAyNnQ2MyAtMjZ0MjYgLTYzdC0yNiAtNjR0LTYzIC0yN3QtNjMgMjd0LTI2IDY0ek0xMTQzIDExMjBxMCAzMCAyMSA1MXQ1MCAyMXEzMCAwIDUxIC0yMXQyMSAtNTFxMCAtMjkgLTIxIC01MHQtNTEgLTIxcS0yOSAwIC01MCAyMXQtMjEgNTB6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFhMzsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjV0LTEwMyAtMzg1LjV0LTI3OS41IC0yNzkuNXQtMzg1LjUgLTEwM3QtMzg1LjUgMTAzdC0yNzkuNSAyNzkuNXQtMTAzIDM4NS41ek0zMjAgNTAycTAgLTgyIDU3LjUgLTEzOXQxMzkuNSAtNTdxODEgMCAxMzguNSA1Ni41dDU3LjUgMTM2LjV2MjgwcTAgMTkgMTMuNSAzM3QzMy41IDE0IHExOSAwIDMyLjUgLTE0dDEzLjUgLTMzdi01NGw2MCAtMjhsOTAgMjd2NjJxMCA3OSAtNTggMTM1dC0xMzggNTZ0LTEzOCAtNTUuNXQtNTggLTEzNC41di0yODNxMCAtMjAgLTE0IC0zMy41dC0zMyAtMTMuNXQtMzIuNSAxMy41dC0xMy41IDMzLjV2MTIwaC0xNTF2LTEyMnpNODA2IDUwMHEwIC04MCA1OCAtMTM3dDEzOSAtNTd0MTM4LjUgNTd0NTcuNSAxMzl2MTIyaC0xNTB2LTEyNnEwIC0yMCAtMTMuNSAtMzMuNXQtMzMuNSAtMTMuNSBxLTE5IDAgLTMyLjUgMTR0LTEzLjUgMzN2MTIzbC05MCAtMjZsLTYwIDI4di0xMjN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFhNDsiIGhvcml6LWFkdi14PSIxOTIwIiBkPSJNMCAzMzZ2MjY2aDMyOHYtMjYycTAgLTQzIDMwIC03Mi41dDcyIC0yOS41dDcyIDI5LjV0MzAgNzIuNXY2MjBxMCAxNzEgMTI2LjUgMjkydDMwMS41IDEyMXExNzYgMCAzMDIgLTEyMnQxMjYgLTI5NHYtMTM2bC0xOTUgLTU4bC0xMzEgNjF2MTE4cTAgNDIgLTMwIDcydC03MiAzMHQtNzIgLTMwdC0zMCAtNzJ2LTYxMnEwIC0xNzUgLTEyNiAtMjk5dC0zMDMgLTEyNHEtMTc4IDAgLTMwMy41IDEyNS41dC0xMjUuNSAzMDMuNXpNMTA2MiAzMzIgdjI2OGwxMzEgLTYxbDE5NSA1OHYtMjcwcTAgLTQyIDMwIC03MS41dDcyIC0yOS41dDcyIDI5LjV0MzAgNzEuNXYyNzVoMzI4di0yNjZxMCAtMTc4IC0xMjUuNSAtMzAzLjV0LTMwMy41IC0xMjUuNXEtMTc3IDAgLTMwMyAxMjQuNXQtMTI2IDMwMC41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYTU7IiBkPSJNMCAxNjB2OTYwcTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNWg5NjBxMTE5IDAgMjAzLjUgLTg0LjV0ODQuNSAtMjAzLjV2LTk2MHEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtOTYwcS0xMTkgMCAtMjAzLjUgODQuNXQtODQuNSAyMDMuNXpNNjQgNjQwaDcwNHYtNzA0aDQ4MHE5MyAwIDE1OC41IDY1LjV0NjUuNSAxNTguNXY0ODBoLTcwNHY3MDRoLTQ4MHEtOTMgMCAtMTU4LjUgLTY1LjV0LTY1LjUgLTE1OC41di00ODB6ICIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYTY7IiBob3Jpei1hZHYteD0iMjA0OCIgZD0iTTAgMjcxdjY5N2gzMjh2Mjg2aDIwNHYtOTgzaC01MzJ6TTIwNSA0MzVoMTIzdjM2OWgtMTIzdi0zNjl6TTYxNCAyNzFoMjA1djY5N2gtMjA1di02OTd6TTYxNCAxMDUwaDIwNXYyMDRoLTIwNXYtMjA0ek05MDEgMjZ2MTYzaDMyOHY4MmgtMzI4djY5N2g1MzN2LTk0MmgtNTMzek0xMTA2IDQzNWgxMjN2MzY5aC0xMjN2LTM2OXpNMTUxNiAyNnYxNjNoMzI3djgyaC0zMjd2Njk3aDUzMnYtOTQyaC01MzJ6TTE3MjAgNDM1aDEyM3YzNjloLTEyMyB2LTM2OXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWE3OyIgZD0iTTAgMTYwdjk2MHEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoOTYwcTExOSAwIDIwMy41IC04NC41dDg0LjUgLTIwMy41di05NjBxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTk2MHEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTI5MyAzODhsMjExIDQxdjIwNnE1NSAtMTkgMTE2IC0xOXExMjUgMCAyMTMuNSA5NXQ4OC41IDIyOXQtODguNSAyMjl0LTIxMy41IDk1cS03NCAwIC0xNDEgLTM2aC0xODZ2LTg0MHogTTUwNCA4MDR2Mjc3cTI4IDE3IDcwIDE3cTUzIDAgOTEgLTQ1dDM4IC0xMDl0LTM4IC0xMDkuNXQtOTEgLTQ1LjVxLTQzIDAgLTcwIDE1ek02MzYgLTM5bDIxMSA0MXYyMDZxNTEgLTE5IDExNyAtMTlxMTI1IDAgMjEzIDk1dDg4IDIyOXQtODggMjI5dC0yMTMgOTVxLTIwIDAgLTM5IC0zcS0yMyAtNzggLTc4IC0xMzZxLTg3IC05NSAtMjExIC0xMDF2LTYzNnpNODQ3IDM3N3YyNzdxMjggMTcgNzAgMTdxNTMgMCA5MSAtNDUuNXQzOCAtMTA5LjUgdC0zOCAtMTA5dC05MSAtNDVxLTQzIDAgLTcwIDE1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYTg7IiBob3Jpei1hZHYteD0iMjAzOCIgZD0iTTQxIDQ1NXEwIDE1IDguNSAyNi41dDIyLjUgMTQuNWw0ODYgMTA2cS04IDE0IC04IDI1dDUuNSAxNy41dDE2IDExLjV0MjAgN3QyMyA0LjV0MTguNSA0LjVxNCAxIDE1LjUgNy41dDE3LjUgNi41cTE1IDAgMjggLTE2dDIwIC0zM3ExNjMgMzcgMTcyIDM3cTE3IDAgMjkuNSAtMTF0MTIuNSAtMjhxMCAtMTUgLTguNSAtMjZ0LTIzLjUgLTE0bC0xODIgLTQwbC0xIC0xNnEtMSAtMjYgODEuNSAtMTE3LjV0MTA0LjUgLTkxLjVxNDcgMCAxMTkgODAgdDcyIDEyOXEwIDM2IC0yMy41IDUzdC01MSAxOC41dC01MSAxMS41dC0yMy41IDM0cTAgMTYgMTAgMzRsLTY4IDE5cTQzIDQ0IDQzIDExN3EwIDI2IC01IDU4cTgyIDE2IDE0NCAxNnE0NCAwIDcxLjUgLTEuNXQ0OC41IC04LjV0MzEgLTEzLjV0MjAuNSAtMjQuNXQxNS41IC0zMy41dDE3IC00Ny41dDI0IC02MGw1MCAyNXEtMyAtNDAgLTIzIC02MHQtNDIuNSAtMjF0LTQwIC02LjV0LTE2LjUgLTIwLjVsMSAtMjFxNzUgMyAxNDMuNSAtMjAuNSB0MTE4IC01OC41dDEwMSAtOTQuNXQ4NCAtMTA4dDc1LjUgLTEyMC41cTMzIC01NiA3OC41IC0xMDl0NzUuNSAtODAuNXQ5OSAtODguNXEtNDggLTMwIC0xMDguNSAtNTcuNXQtMTM4LjUgLTU5dC0xMTQgLTQ3LjVxLTQ0IDM3IC03NCAxMTV0LTQzLjUgMTY0LjV0LTMzIDE4MC41dC00Mi41IDE2OC41dC03Mi41IDEyM3QtMTIyLjUgNDguNWwtMTAgLTJsLTYgLTRxNCAtNSAxMyAtMTRxNiAtNSAyOCAtMjMuNXQyNS41IC0yMnQxOSAtMTggdDE4IC0yMC41dDExLjUgLTIxdDEwLjUgLTI3LjV0NC41IC0zMXQ0IC00MC41bDEgLTMzcTEgLTI2IC0yLjUgLTU3LjV0LTcuNSAtNTJ0LTEyLjUgLTU4LjV0LTExLjUgLTUzcS0zNSAxIC0xMDEgLTkuNXQtOTggLTEwLjVxLTM5IDAgLTcyIDEwcS0yIDE2IC0yIDQ3cTAgNzQgMyA5NnEyIDEzIDMxLjUgNDEuNXQ1NyA1OXQyNi41IDUxLjVxLTI0IDIgLTQzIC0yNHEtMzYgLTUzIC0xMTEuNSAtOTkuNXQtMTM2LjUgLTQ2LjVxLTI1IDAgLTc1LjUgNjMgdC0xMDYuNSAxMzkuNXQtODQgOTYuNXEtNiA0IC0yNyAzMHEtNDgyIC0xMTIgLTUxMyAtMTEycS0xNiAwIC0yOCAxMXQtMTIgMjd6TTc2NCA2NzZxMTAgMSAzMi41IDd0MzQuNSA2cTE5IDAgMzUgLTEwbC05NiAtMjB6TTgyMiA1NjhsNDggMTJsMTA5IC0xNzdsLTczIC00OHpNODU5IDg4NHExNiAzMCAzNiA0Ni41dDU0IDI5LjV0NjUuNSAzNnQ0NiAzNi41dDUwIDU1dDQzLjUgNTAuNXExMiAtOSAyOCAtMzEuNXQzMiAtMzYuNXQzOCAtMTNsMTIgMSB2LTc2bDIyIC0xcTI0NyA5NSAzNzEgMTkwcTI4IDIxIDUwIDM5dDQyLjUgMzcuNXQzMyAzMXQyOS41IDM0dDI0IDMxdDI0LjUgMzd0MjMgMzh0MjcgNDcuNXQyOS41IDUzbDcgOXEtMiAtNTMgLTQzIC0xMzlxLTc5IC0xNjUgLTIwNSAtMjY0dC0zMDYgLTE0MnEtMTQgLTMgLTQyIC03LjV0LTUwIC05LjV0LTM5IC0xNHEzIC0xOSAyNC41IC00NnQyMS41IC0zNHEwIC0xMSAtMjYgLTMwcS01IDUgLTEzLjUgMTUuNXQtMTIgMTQuNXQtMTAuNSAxMS41IHQtMTAgMTAuNWwtOCA4dC04LjUgNy41dC04IDV0LTguNSA0LjVxLTcgMyAtMTQuNSA1dC0yMC41IDIuNXQtMjIgMC41aC0zMi41aC0zNy41cS0xMjYgMCAtMjE3IC00M3pNMTA2MSA0NWgzMWwxMCAtODNsLTQxIC0xMnY5NXpNMTA2MSAtNzlxMzkgMjYgMTMxLjUgNDcuNXQxNDYuNSAyMS41cTkgMCAyMi41IC0xNS41dDI4IC00Mi41dDI2IC01MHQyNCAtNTF0MTQuNSAtMzNxLTEyMSAtNDUgLTI0NCAtNDVxLTYxIDAgLTEyNSAxMXpNMTExNiAyOSBxMjEgMiA2MC41IDguNXQ3MiAxMHQ2MC41IDMuNWgxNHEzIC0xNSAzIC0xNnEwIC03IC0xNy41IC0xNC41dC00NiAtMTN0LTU0IC05LjV0LTUzLjUgLTcuNXQtMzIgLTQuNXpNMTk0NyAxNTI4bDEgM2wyIDRsLTEgLTV6TTE5NTAgMTUzNXYxdi0xek0xOTUwIDE1MzVsMSAxeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYTk7IiBkPSJNMCA1MjBxMCA4OSAxOS41IDE3Mi41dDQ5IDE0NS41dDcwLjUgMTE4LjV0NzguNSA5NHQ3OC41IDY5LjV0NjQuNSA0Ni41dDQyLjUgMjQuNXExNCA4IDUxIDI2LjV0NTQuNSAyOC41dDQ4IDMwdDYwLjUgNDRxMzYgMjggNTggNzIuNXQzMCAxMjUuNXExMjkgLTE1NSAxODYgLTE5M3E0NCAtMjkgMTMwIC02OHQxMjkgLTY2cTIxIC0xMyAzOSAtMjV0NjAuNSAtNDYuNXQ3NiAtNzAuNXQ3NSAtOTV0NjkgLTEyMnQ0NyAtMTQ4LjUgdDE5LjUgLTE3Ny41cTAgLTE2NCAtNjIgLTMwNC41dC0xNjYgLTIzNnQtMjQyLjUgLTE0OS41dC0yOTAuNSAtNTR0LTI5MyA1Ny41dC0yNDcuNSAxNTd0LTE3MC41IDI0MS41dC02NCAzMDJ6TTMzMyAyNTZxLTIgLTExMiA3NCAtMTY0cTI5IC0yMCA2Mi41IC0yOC41dDEwMy41IC04LjVxNTcgMCAxMzIgMzIuNXQxMzQgNzF0MTIwIDcwLjV0OTMgMzFxMjYgLTEgNjUgLTMxLjV0NzEuNSAtNjd0NjggLTY3LjV0NTUuNSAtMzJxMzUgLTMgNTguNSAxNCB0NTUuNSA2M3EyOCA0MSA0Mi41IDEwMXQxNC41IDEwNnEwIDIyIC01IDQ0LjV0LTE2LjUgNDV0LTM0IDM2LjV0LTUyLjUgMTRxLTMzIDAgLTk3IC00MS41dC0xMjkgLTgzLjV0LTEwMSAtNDJxLTI3IC0xIC02My41IDE5dC03NiA0OXQtODMuNSA1OHQtMTAwIDQ5dC0xMTEgMTlxLTExNSAtMSAtMTk3IC03OC41dC04NCAtMTc4LjV6TTY4NS41IC03NnEtMC41IC0xMCA3LjUgLTIwcTM0IC0zMiA4Ny41IC00NnQxMDIuNSAtMTIuNXQ5OSA0LjUgcTQxIDQgODQuNSAyMC41dDY1IDMwdDI4LjUgMjAuNXExMiAxMiA3IDI5cS01IDE5IC0yNCA1cS0zMCAtMjIgLTg3IC0zOXQtMTMxIC0xN3EtMTI5IDAgLTE5MyA0OXEtNSA0IC0xMyA0cS0xMSAwIC0yNiAtMTJxLTcgLTYgLTcuNSAtMTZ6TTg1MiAzMXE5IC04IDE3LjUgLTQuNXQzMS41IDIzLjVxMyAyIDEwLjUgOC41dDEwLjUgOC41dDEwIDd0MTEuNSA3dDEyLjUgNXQxNSA0LjV0MTYuNSAyLjV0MjAuNSAxcTI3IDAgNDQuNSAtNy41IHQyMyAtMTQuNXQxMy41IC0yMnExMCAtMTcgMTIuNSAtMjB0MTIuNSAxcTIzIDEyIDE0IDM0cS0xOSA0NyAtMzkgNjFxLTIzIDE1IC03NiAxNXEtNDcgMCAtNzEgLTEwcS0yOSAtMTIgLTc4IC01NnEtMjYgLTI0IC0xMiAtNDR6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFhYTsiIGQ9Ik0wIDc4cTAgNzIgNDQuNSAxMjh0MTEzLjUgNzJxLTIyIDg2IDEgMTczdDg4IDE1MmwxMiAxMmwxNTEgLTE1MmwtMTEgLTExcS0zNyAtMzcgLTM3IC04OXQzNyAtOTBxMzcgLTM3IDg5IC0zN3Q4OSAzN2wzMCAzMGwxNTEgMTUybDE2MSAxNjBsMTUxIC0xNTJsLTE2MCAtMTYwbC0xNTEgLTE1MmwtMzAgLTMwcS02NSAtNjQgLTE1MS41IC04N3QtMTcxLjUgLTJxLTE2IC03MCAtNzIgLTExNXQtMTI5IC00NXEtODUgMCAtMTQ1IDYwLjUgdC02MCAxNDUuNXpNMiAxMjAycTAgODUgNjAgMTQ1LjV0MTQ1IDYwLjVxNzYgMCAxMzMuNSAtNDl0NjkuNSAtMTIzcTg0IDIwIDE2OS41IC0zLjV0MTQ5LjUgLTg3LjVsMTIgLTEybC0xNTIgLTE1MmwtMTIgMTJxLTM3IDM3IC04OSAzN3QtODkgLTM3dC0zNyAtODkuNXQzNyAtODkuNWwyOSAtMjlsMTUyIC0xNTJsMTYwIC0xNjBsLTE1MSAtMTUybC0xNjEgMTYwbC0xNTEgMTUybC0zMCAzMHEtNjggNjcgLTkwIDE1OS41dDUgMTc5LjUgcS03MCAxNSAtMTE1IDcxdC00NSAxMjl6TTQ0NiA4MDNsMTYxIDE2MGwxNTIgMTUybDI5IDMwcTY3IDY3IDE1OSA4OS41dDE3OCAtMy41cTExIDc1IDY4LjUgMTI2dDEzNS41IDUxcTg1IDAgMTQ1IC02MC41dDYwIC0xNDUuNXEwIC03NyAtNTEgLTEzNXQtMTI3IC02OXEyNiAtODUgMyAtMTc2LjV0LTkwIC0xNTguNWwtMTIgLTEybC0xNTEgMTUybDEyIDEycTM3IDM3IDM3IDg5dC0zNyA4OXQtODkgMzd0LTg5IC0zN2wtMzAgLTMwbC0xNTIgLTE1MiBsLTE2MCAtMTYwek03NzYgNzkzbDE1MiAxNTJsMTYwIC0xNjBsMTUyIC0xNTJsMjkgLTMwcTY0IC02NCA4Ny41IC0xNTAuNXQyLjUgLTE3MS41cTc2IC0xMSAxMjYuNSAtNjguNXQ1MC41IC0xMzQuNXEwIC04NSAtNjAgLTE0NS41dC0xNDUgLTYwLjVxLTc0IDAgLTEzMSA0N3QtNzEgMTE4cS04NiAtMjggLTE3OS41IC02dC0xNjEuNSA5MGwtMTEgMTJsMTUxIDE1MmwxMiAtMTJxMzcgLTM3IDg5IC0zN3Q4OSAzN3QzNyA4OXQtMzcgODlsLTMwIDMwIGwtMTUyIDE1MnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWFiOyIgZD0iTTAgLTE2djEwNzhxMyA5IDQgMTBxNSA2IDIwIDExcTEwNiAzNSAxNDkgNTB2Mzg0bDU1OCAtMTk4cTIgMCAxNjAuNSA1NXQzMTYgMTA4LjV0MTYxLjUgNTMuNXEyMCAwIDIwIC0yMXYtNDE4bDE0NyAtNDd2LTEwNzlsLTc3NCAyNDZxLTE0IC02IC0zNzUgLTEyNy41dC0zNjggLTEyMS41cS0xMyAwIC0xOCAxM3EwIDEgLTEgM3pNMzkgMTVsNjk0IDIzMnYxMDMybC02OTQgLTIzM3YtMTAzMXpNMTQ3IDI5M3E2IDQgODIgOTIgcTIxIDI0IDg1LjUgMTE1dDc4LjUgMTE4cTE3IDMwIDUxIDk4LjV0MzYgNzcuNXEtOCAxIC0xMTAgLTMzcS04IC0yIC0yNy41IC03LjV0LTM0LjUgLTkuNXQtMTcgLTVxLTIgLTIgLTIgLTEwLjV0LTEgLTkuNXEtNSAtMTAgLTMxIC0xNXEtMjMgLTcgLTQ3IDBxLTE4IDQgLTI4IDIxcS00IDYgLTUgMjNxNiAyIDI0LjUgNXQyOS41IDZxNTggMTYgMTA1IDMycTEwMCAzNSAxMDIgMzVxMTAgMiA0MyAxOS41dDQ0IDIxLjVxOSAzIDIxLjUgOCB0MTQuNSA1LjV0NiAtMC41cTIgLTEyIC0xIC0zM3EwIC0yIC0xMi41IC0yN3QtMjYuNSAtNTMuNXQtMTcgLTMzLjVxLTI1IC01MCAtNzcgLTEzMWw2NCAtMjhxMTIgLTYgNzQuNSAtMzJ0NjcuNSAtMjhxNCAtMSAxMC41IC0yNS41dDQuNSAtMzAuNXEtMSAtMyAtMTIuNSAwLjV0LTMxLjUgMTEuNWwtMjAgOXEtNDQgMjAgLTg3IDQ5cS03IDUgLTQxIDMxLjV0LTM4IDI4LjVxLTY3IC0xMDMgLTEzNCAtMTgxcS04MSAtOTUgLTEwNSAtMTEwIHEtNCAtMiAtMTkuNSAtNHQtMTguNSAwek0yNjggOTMzbDEgM3EzIC0zIDE5LjUgLTV0MjYuNSAwdDU4IDE2cTM2IDEyIDU1IDE0cTE3IDAgMjEgLTE3cTMgLTE1IC00IC0yOHEtMTIgLTIzIC01MCAtMzhxLTMwIC0xMiAtNjAgLTEycS0yNiAzIC00OSAyNnEtMTQgMTUgLTE4IDQxek0zMTAgLTExNnEwIDggNSAxMy41dDEzIDUuNXE0IDAgMTggLTcuNXQzMC41IC0xNi41dDIwLjUgLTExcTczIC0zNyAxNTkuNSAtNjEuNXQxNTcuNSAtMjQuNSBxOTUgMCAxNjcgMTQuNXQxNTcgNTAuNXExNSA3IDMwLjUgMTUuNXQzNCAxOXQyOC41IDE2LjVsLTQzIDczbDE1OCAtMTNsLTU0IC0xNjBsLTQwIDY2cS0xMzAgLTgzIC0yNzYgLTEwOHEtNTggLTEyIC05MSAtMTJoLTg0cS03OSAwIC0xOTkuNSAzOXQtMTgzLjUgODVxLTggNyAtOCAxNnpNNzc3IDEyOTRsNTczIC0xODR2Mzgwek04ODUgNDUzbDEwMiAtMzFsNDUgMTEwbDIxMSAtNjVsMzcgLTEzNWwxMDIgLTMxbC0xODEgNjU3bC0xMDAgMzF6IE0xMDcxIDYzMGw3NiAxODVsNjMgLTIyN3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWFjOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIC05NnYxMDg4cTAgNjYgNDcgMTEzdDExMyA0N2gxMjhxNjYgMCAxMTMgLTQ3dDQ3IC0xMTN2LTEwODhxMCAtNjYgLTQ3IC0xMTN0LTExMyAtNDdoLTEyOHEtNjYgMCAtMTEzIDQ3dC00NyAxMTN6TTUxMiAtOTZ2MTUzNnEwIDQwIDI4IDY4dDY4IDI4aDY3MnE0MCAwIDg4IC0yMHQ3NiAtNDhsMTUyIC0xNTJxMjggLTI4IDQ4IC03NnQyMCAtODh2LTE2M3E1OCAtMzQgOTMgLTkzdDM1IC0xMjh2LTc2OHEwIC0xMDYgLTc1IC0xODEgdC0xODEgLTc1aC04NjRxLTY2IDAgLTExMyA0N3QtNDcgMTEzek02NDAgODk2aDg5NnYyNTZoLTE2MHEtNDAgMCAtNjggMjh0LTI4IDY4djE2MGgtNjQwdi01MTJ6TTczNiAwcTAgLTE0IDkgLTIzdDIzIC05aDEyOHExNCAwIDIzIDl0OSAyM3YxMjhxMCAxNCAtOSAyM3QtMjMgOWgtMTI4cS0xNCAwIC0yMyAtOXQtOSAtMjN2LTEyOHpNNzM2IDI1NnEwIC0xNCA5IC0yM3QyMyAtOWgxMjhxMTQgMCAyMyA5dDkgMjN2MTI4cTAgMTQgLTkgMjN0LTIzIDkgaC0xMjhxLTE0IDAgLTIzIC05dC05IC0yM3YtMTI4ek03MzYgNTEycTAgLTE0IDkgLTIzdDIzIC05aDEyOHExNCAwIDIzIDl0OSAyM3YxMjhxMCAxNCAtOSAyM3QtMjMgOWgtMTI4cS0xNCAwIC0yMyAtOXQtOSAtMjN2LTEyOHpNOTkyIDBxMCAtMTQgOSAtMjN0MjMgLTloMTI4cTE0IDAgMjMgOXQ5IDIzdjEyOHEwIDE0IC05IDIzdC0yMyA5aC0xMjhxLTE0IDAgLTIzIC05dC05IC0yM3YtMTI4ek05OTIgMjU2cTAgLTE0IDkgLTIzdDIzIC05aDEyOCBxMTQgMCAyMyA5dDkgMjN2MTI4cTAgMTQgLTkgMjN0LTIzIDloLTEyOHEtMTQgMCAtMjMgLTl0LTkgLTIzdi0xMjh6TTk5MiA1MTJxMCAtMTQgOSAtMjN0MjMgLTloMTI4cTE0IDAgMjMgOXQ5IDIzdjEyOHEwIDE0IC05IDIzdC0yMyA5aC0xMjhxLTE0IDAgLTIzIC05dC05IC0yM3YtMTI4ek0xMjQ4IDBxMCAtMTQgOSAtMjN0MjMgLTloMTI4cTE0IDAgMjMgOXQ5IDIzdjEyOHEwIDE0IC05IDIzdC0yMyA5aC0xMjhxLTE0IDAgLTIzIC05dC05IC0yMyB2LTEyOHpNMTI0OCAyNTZxMCAtMTQgOSAtMjN0MjMgLTloMTI4cTE0IDAgMjMgOXQ5IDIzdjEyOHEwIDE0IC05IDIzdC0yMyA5aC0xMjhxLTE0IDAgLTIzIC05dC05IC0yM3YtMTI4ek0xMjQ4IDUxMnEwIC0xNCA5IC0yM3QyMyAtOWgxMjhxMTQgMCAyMyA5dDkgMjN2MTI4cTAgMTQgLTkgMjN0LTIzIDloLTEyOHEtMTQgMCAtMjMgLTl0LTkgLTIzdi0xMjh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFhZDsiIGQ9Ik0wIC0xOTJ2MTY2NHEwIDI2IDE5IDQ1dDQ1IDE5aDEyODBxMjYgMCA0NSAtMTl0MTkgLTQ1di0xNjY0cTAgLTI2IC0xOSAtNDV0LTQ1IC0xOWgtMTI4MHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek0yNTYgMTYwcTAgLTE0IDkgLTIzdDIzIC05aDY0cTE0IDAgMjMgOXQ5IDIzdjY0cTAgMTQgLTkgMjN0LTIzIDloLTY0cS0xNCAwIC0yMyAtOXQtOSAtMjN2LTY0ek0yNTYgNDE2cTAgLTE0IDkgLTIzdDIzIC05aDY0cTE0IDAgMjMgOXQ5IDIzdjY0IHEwIDE0IC05IDIzdC0yMyA5aC02NHEtMTQgMCAtMjMgLTl0LTkgLTIzdi02NHpNMjU2IDY3MnEwIC0xNCA5IC0yM3QyMyAtOWg2NHExNCAwIDIzIDl0OSAyM3Y2NHEwIDE0IC05IDIzdC0yMyA5aC02NHEtMTQgMCAtMjMgLTl0LTkgLTIzdi02NHpNMjU2IDkyOHEwIC0xNCA5IC0yM3QyMyAtOWg2NHExNCAwIDIzIDl0OSAyM3Y2NHEwIDE0IC05IDIzdC0yMyA5aC02NHEtMTQgMCAtMjMgLTl0LTkgLTIzdi02NHpNMjU2IDExODRxMCAtMTQgOSAtMjMgdDIzIC05aDY0cTE0IDAgMjMgOXQ5IDIzdjY0cTAgMTQgLTkgMjN0LTIzIDloLTY0cS0xNCAwIC0yMyAtOXQtOSAtMjN2LTY0ek01MTIgOTZ2LTE5MnEwIC0xNCA5IC0yM3QyMyAtOWgzMjBxMTQgMCAyMyA5dDkgMjN2MTkycTAgMTQgLTkgMjN0LTIzIDloLTMyMHEtMTQgMCAtMjMgLTl0LTkgLTIzek01MTIgNDE2cTAgLTE0IDkgLTIzdDIzIC05aDY0cTE0IDAgMjMgOXQ5IDIzdjY0cTAgMTQgLTkgMjN0LTIzIDloLTY0cS0xNCAwIC0yMyAtOSB0LTkgLTIzdi02NHpNNTEyIDY3MnEwIC0xNCA5IC0yM3QyMyAtOWg2NHExNCAwIDIzIDl0OSAyM3Y2NHEwIDE0IC05IDIzdC0yMyA5aC02NHEtMTQgMCAtMjMgLTl0LTkgLTIzdi02NHpNNTEyIDkyOHEwIC0xNCA5IC0yM3QyMyAtOWg2NHExNCAwIDIzIDl0OSAyM3Y2NHEwIDE0IC05IDIzdC0yMyA5aC02NHEtMTQgMCAtMjMgLTl0LTkgLTIzdi02NHpNNTEyIDExODRxMCAtMTQgOSAtMjN0MjMgLTloNjRxMTQgMCAyMyA5dDkgMjN2NjQgcTAgMTQgLTkgMjN0LTIzIDloLTY0cS0xNCAwIC0yMyAtOXQtOSAtMjN2LTY0ek03NjggNDE2cTAgLTE0IDkgLTIzdDIzIC05aDY0cTE0IDAgMjMgOXQ5IDIzdjY0cTAgMTQgLTkgMjN0LTIzIDloLTY0cS0xNCAwIC0yMyAtOXQtOSAtMjN2LTY0ek03NjggNjcycTAgLTE0IDkgLTIzdDIzIC05aDY0cTE0IDAgMjMgOXQ5IDIzdjY0cTAgMTQgLTkgMjN0LTIzIDloLTY0cS0xNCAwIC0yMyAtOXQtOSAtMjN2LTY0ek03NjggOTI4cTAgLTE0IDkgLTIzIHQyMyAtOWg2NHExNCAwIDIzIDl0OSAyM3Y2NHEwIDE0IC05IDIzdC0yMyA5aC02NHEtMTQgMCAtMjMgLTl0LTkgLTIzdi02NHpNNzY4IDExODRxMCAtMTQgOSAtMjN0MjMgLTloNjRxMTQgMCAyMyA5dDkgMjN2NjRxMCAxNCAtOSAyM3QtMjMgOWgtNjRxLTE0IDAgLTIzIC05dC05IC0yM3YtNjR6TTEwMjQgMTYwcTAgLTE0IDkgLTIzdDIzIC05aDY0cTE0IDAgMjMgOXQ5IDIzdjY0cTAgMTQgLTkgMjN0LTIzIDloLTY0cS0xNCAwIC0yMyAtOSB0LTkgLTIzdi02NHpNMTAyNCA0MTZxMCAtMTQgOSAtMjN0MjMgLTloNjRxMTQgMCAyMyA5dDkgMjN2NjRxMCAxNCAtOSAyM3QtMjMgOWgtNjRxLTE0IDAgLTIzIC05dC05IC0yM3YtNjR6TTEwMjQgNjcycTAgLTE0IDkgLTIzdDIzIC05aDY0cTE0IDAgMjMgOXQ5IDIzdjY0cTAgMTQgLTkgMjN0LTIzIDloLTY0cS0xNCAwIC0yMyAtOXQtOSAtMjN2LTY0ek0xMDI0IDkyOHEwIC0xNCA5IC0yM3QyMyAtOWg2NHExNCAwIDIzIDl0OSAyM3Y2NCBxMCAxNCAtOSAyM3QtMjMgOWgtNjRxLTE0IDAgLTIzIC05dC05IC0yM3YtNjR6TTEwMjQgMTE4NHEwIC0xNCA5IC0yM3QyMyAtOWg2NHExNCAwIDIzIDl0OSAyM3Y2NHEwIDE0IC05IDIzdC0yMyA5aC02NHEtMTQgMCAtMjMgLTl0LTkgLTIzdi02NHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWFlOyIgaG9yaXotYWR2LXg9IjEyODAiIGQ9Ik02NCAxMDU2cTAgNDAgMjggNjh0NjggMjh0NjggLTI4bDIyOCAtMjI4aDM2OGwyMjggMjI4cTI4IDI4IDY4IDI4dDY4IC0yOHQyOCAtNjh0LTI4IC02OGwtMjkyIC0yOTJ2LTgyNHEwIC00NiAtMzMgLTc5dC03OSAtMzN0LTc5IDMzdC0zMyA3OXYzODRoLTY0di0zODRxMCAtNDYgLTMzIC03OXQtNzkgLTMzdC03OSAzM3QtMzMgNzl2ODI0bC0yOTIgMjkycS0yOCAyOCAtMjggNjh6TTQxNiAxMTUycTAgOTMgNjUuNSAxNTguNXQxNTguNSA2NS41IHQxNTguNSAtNjUuNXQ2NS41IC0xNTguNXQtNjUuNSAtMTU4LjV0LTE1OC41IC02NS41dC0xNTguNSA2NS41dC02NS41IDE1OC41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYjA7IiBob3Jpei1hZHYteD0iMTY2NCIgZD0iTTAgNzI0cTAgODAgNDIgMTM5LjV0MTE5IDU5LjVxNzYgMCAxNDEuNSAtNTUuNXQxMDAuNSAtMTM0dDM1IC0xNTIuNXEwIC04MCAtNDIgLTEzOXQtMTE5IC01OXEtNzYgMCAtMTQxLjUgNTUuNXQtMTAwLjUgMTMzLjV0LTM1IDE1MnpNMjU2IDE5cTAgODYgNTYgMTkxLjV0MTM5LjUgMTkyLjV0MTg3LjUgMTQ2dDE5MyA1OXExMTggMCAyNTUgLTk3LjV0MjI5IC0yMzd0OTIgLTI1NC41cTAgLTQ2IC0xNyAtNzYuNXQtNDguNSAtNDUgdC02NC41IC0yMHQtNzYgLTUuNXEtNjggMCAtMTg3LjUgNDV0LTE4Mi41IDQ1cS02NiAwIC0xOTIuNSAtNDQuNXQtMjAwLjUgLTQ0LjVxLTE4MyAwIC0xODMgMTQ2ek0zMzMgMTE2M3EwIDYwIDE5IDExMy41dDYzIDkyLjV0MTA1IDM5cTc3IDAgMTM4LjUgLTU3LjV0OTEuNSAtMTM1dDMwIC0xNTEuNXEwIC02MCAtMTkgLTExMy41dC02MyAtOTIuNXQtMTA1IC0zOXEtNzYgMCAtMTM4IDU3LjV0LTkyIDEzNS41dC0zMCAxNTF6TTg4NCAxMDY0IHEwIDc0IDMwIDE1MS41dDkxLjUgMTM1dDEzOC41IDU3LjVxNjEgMCAxMDUgLTM5dDYzIC05Mi41dDE5IC0xMTMuNXEwIC03MyAtMzAgLTE1MXQtOTIgLTEzNS41dC0xMzggLTU3LjVxLTYxIDAgLTEwNSAzOXQtNjMgOTIuNXQtMTkgMTEzLjV6TTEyMjYgNTgxcTAgNzQgMzUgMTUyLjV0MTAwLjUgMTM0dDE0MS41IDU1LjVxNzcgMCAxMTkgLTU5LjV0NDIgLTEzOS41cTAgLTc0IC0zNSAtMTUydC0xMDAuNSAtMTMzLjV0LTE0MS41IC01NS41IHEtNzcgMCAtMTE5IDU5dC00MiAxMzl6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFiMTsiIGhvcml6LWFkdi14PSI3NjgiIGQ9Ik02NCAxMDA4cTAgMTI4IDQyLjUgMjQ5LjV0MTE3LjUgMjAwdDE2MCA3OC41dDE2MCAtNzguNXQxMTcuNSAtMjAwdDQyLjUgLTI0OS41cTAgLTE0NSAtNTcgLTI0My41dC0xNTIgLTEzNS41bDQ1IC04MjFxMiAtMjYgLTE2IC00NXQtNDQgLTE5aC0xOTJxLTI2IDAgLTQ0IDE5dC0xNiA0NWw0NSA4MjFxLTk1IDM3IC0xNTIgMTM1LjV0LTU3IDI0My41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYjI7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgMjU2djc2OHEwIDQwIDIzIDczdDYxIDQ3bDcwNCAyNTZxMjIgOCA0NCA4dDQ0IC04bDcwNCAtMjU2cTM4IC0xNCA2MSAtNDd0MjMgLTczdi03NjhxMCAtMzUgLTE4IC02NXQtNDkgLTQ3bC03MDQgLTM4NHEtMjggLTE2IC02MSAtMTZ0LTYxIDE2bC03MDQgMzg0cS0zMSAxNyAtNDkgNDd0LTE4IDY1ek0xMzQgMTAyNmw2OTggLTI1NGw2OTggMjU0bC02OTggMjU0ek04OTYgLTkzbDY0MCAzNDl2NjM2bC02NDAgLTIzM3YtNzUyeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYjM7IiBob3Jpei1hZHYteD0iMjMwNCIgZD0iTTAgOTZ2NDE2cTAgMzggMjEuNSA3MHQ1Ni41IDQ4bDQzNCAxODZ2NDAwcTAgMzggMjEuNSA3MHQ1Ni41IDQ4bDQ0OCAxOTJxMjMgMTAgNTAgMTB0NTAgLTEwbDQ0OCAtMTkycTM1IC0xNiA1Ni41IC00OHQyMS41IC03MHYtNDAwbDQzNCAtMTg2cTM2IC0xNiA1NyAtNDh0MjEgLTcwdi00MTZxMCAtMzYgLTE5IC02N3QtNTIgLTQ3bC00NDggLTIyNHEtMjUgLTE0IC01NyAtMTR0LTU3IDE0bC00NDggMjI0cS01IDIgLTcgNHEtMiAtMiAtNyAtNCBsLTQ0OCAtMjI0cS0yNSAtMTQgLTU3IC0xNHQtNTcgMTRsLTQ0OCAyMjRxLTMzIDE2IC01MiA0N3QtMTkgNjd6TTE3MiA1MzFsNDA0IC0xNzNsNDA0IDE3M2wtNDA0IDE3M3pNNjQwIC05NmwzODQgMTkydjMxNGwtMzg0IC0xNjR2LTM0MnpNNjQ3IDEyMTlsNDQxIC0xODlsNDQxIDE4OWwtNDQxIDE4OXpNMTE1MiA2NTFsMzg0IDE2NXYyNjZsLTM4NCAtMTY0di0yNjd6TTExOTYgNTMxbDQwNCAtMTczbDQwNCAxNzNsLTQwNCAxNzN6TTE2NjQgLTk2IGwzODQgMTkydjMxNGwtMzg0IC0xNjR2LTM0MnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWI0OyIgaG9yaXotYWR2LXg9IjIwNDgiIGQ9Ik0wIDIydjEyNjBoNTk0cTg3IDAgMTU1IC0xNHQxMjYuNSAtNDcuNXQ5MCAtOTYuNXQzMS41IC0xNTRxMCAtMTgxIC0xNzIgLTI2M3ExMTQgLTMyIDE3MiAtMTE1dDU4IC0yMDRxMCAtNzUgLTI0LjUgLTEzNi41dC02NiAtMTAzLjV0LTk4LjUgLTcxdC0xMjEgLTQydC0xMzQgLTEzaC02MTF6TTI3NyAyMzZoMjk2cTIwNSAwIDIwNSAxNjdxMCAxODAgLTE5OSAxODBoLTMwMnYtMzQ3ek0yNzcgNzczaDI4MXE3OCAwIDEyMy41IDM2LjUgdDQ1LjUgMTEzLjVxMCAxNDQgLTE5MCAxNDRoLTI2MHYtMjk0ek0xMTM3IDQ3N3EwIDIwOCAxMzAuNSAzNDUuNXQzMzYuNSAxMzcuNXExMzggMCAyNDAuNSAtNjh0MTUzIC0xNzl0NTAuNSAtMjQ4cTAgLTE3IC0yIC00N2gtNjU4cTAgLTExMSA1Ny41IC0xNzEuNXQxNjYuNSAtNjAuNXE2MyAwIDEyMiAzMnQ3NiA4N2gyMjFxLTEwMCAtMzA3IC00MjcgLTMwN3EtMjE0IDAgLTM0MC41IDEzMnQtMTI2LjUgMzQ3ek0xMzM3IDEwNzNoNTExdjEyNCBoLTUxMXYtMTI0ek0xMzg4IDU3Nmg0MDhxLTE4IDE5NSAtMjAwIDE5NXEtOTAgMCAtMTQ2IC01Mi41dC02MiAtMTQyLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFiNTsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0xMjggMjU0aDM4MnExMTcgMCAxOTcgNTcuNXQ4MCAxNzAuNXEwIDE1OCAtMTQzIDIwMHExMDcgNTIgMTA3IDE2NHEwIDU3IC0xOS41IDk2LjV0LTU2LjUgNjAuNXQtNzkgMjkuNSB0LTk3IDguNWgtMzcxdi03ODd6TTMwMSAzODh2MjE3aDE4OXExMjQgMCAxMjQgLTExM3EwIC0xMDQgLTEyOCAtMTA0aC0xODV6TTMwMSA3MjN2MTg0aDE2M3ExMTkgMCAxMTkgLTkwcTAgLTk0IC0xMDYgLTk0aC0xNzZ6TTgzOCA1MzhxMCAtMTM1IDc5IC0yMTd0MjEzIC04MnEyMDUgMCAyNjcgMTkxaC0xMzhxLTExIC0zNCAtNDcuNSAtNTR0LTc1LjUgLTIwcS02OCAwIC0xMDQgMzh0LTM2IDEwN2g0MTFxMSAxMCAxIDMwIHEwIDEzMiAtNzQuNSAyMjAuNXQtMjAzLjUgODguNXEtMTI4IDAgLTIxMCAtODZ0LTgyIC0yMTZ6TTk2NCA5MTF2NzdoMzE5di03N2gtMzE5ek05OTYgNjAwcTQgNTYgMzkgODl0OTEgMzNxMTEzIDAgMTI0IC0xMjJoLTI1NHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWI2OyIgaG9yaXotYWR2LXg9IjIwNDgiIGQ9Ik0wIDc2NHEwIDg2IDYxIDE0Ni41dDE0NiA2MC41cTczIDAgMTMwIC00NnQ3MyAtMTE3bDc4MyAtMzE1cTQ5IDI5IDEwNiAyOXExNCAwIDIxIC0xbDE3MyAyNDhxMSAxMTQgODIgMTk0LjV0MTk1IDgwLjVxMTE1IDAgMTk2LjUgLTgxdDgxLjUgLTE5NnQtODEuNSAtMTk2LjV0LTE5Ni41IC04MS41bC0yNjUgLTE5NHEtOCAtODAgLTY3LjUgLTEzMy41dC0xMzguNSAtNTMuNXEtNzMgMCAtMTMwIDQ2dC03MyAxMTdsLTc4MyAzMTUgcS01MSAtMzAgLTEwNiAtMzBxLTg1IDAgLTE0NiA2MXQtNjEgMTQ3ek01NSA3NjRxMCAtNjQgNDQuNSAtMTA4LjV0MTA3LjUgLTQ0LjVxMTEgMCAzMyA0bC02NCAyNnEtMzMgMTQgLTUyLjUgNDQuNXQtMTkuNSA2Ni41cTAgNTAgMzUuNSA4NS41dDg1LjUgMzUuNXEyMCAwIDQxIC04djFsNzYgLTMxcS0yMCAzNyAtNTYuNSA1OXQtNzguNSAyMnEtNjMgMCAtMTA3LjUgLTQ0LjV0LTQ0LjUgLTEwNy41ek0xMTY0IDI0NHExOSAtMzcgNTUuNSAtNTkgdDc5LjUgLTIycTYzIDAgMTA3LjUgNDQuNXQ0NC41IDEwNy41dC00NC41IDEwOHQtMTA3LjUgNDVxLTEzIDAgLTMzIC00cTIgLTEgMjAgLTh0MjEuNSAtOC41dDE4LjUgLTguNXQxOSAtMTB0MTYgLTExdDE1LjUgLTEzLjV0MTEgLTE0LjV0MTAgLTE4dDUgLTIxdDIuNSAtMjVxMCAtNTAgLTM1LjUgLTg1LjV0LTg1LjUgLTM1LjVxLTE0IDAgLTMxLjUgNC41dC0yOSA5dC0zMS41IDEzLjV0LTI4IDEyek0xNTg0IDc2N3EwIC03NyA1NC41IC0xMzEuNSB0MTMxLjUgLTU0LjV0MTMyIDU0LjV0NTUgMTMxLjV0LTU1IDEzMS41dC0xMzIgNTQuNXEtNzYgMCAtMTMxIC01NC41dC01NSAtMTMxLjV6TTE2MjMgNzY3cTAgNjIgNDMuNSAxMDUuNXQxMDQuNSA0My41dDEwNSAtNDR0NDQgLTEwNXQtNDMuNSAtMTA0LjV0LTEwNS41IC00My41cS02MSAwIC0xMDQuNSA0My41dC00My41IDEwNC41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYjc7IiBkPSJNMCAxNjB2OTYwcTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNWg5NjBxMTE5IDAgMjAzLjUgLTg0LjV0ODQuNSAtMjAzLjV2LTk2MHEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtOTYwcS0xMTkgMCAtMjAzLjUgODQuNXQtODQuNSAyMDMuNXpNMTI4IDY5M3EwIC01MyAzOCAtOTF0OTIgLTM4cTM2IDAgNjYgMThsNDg5IC0xOTdxMTAgLTQ0IDQ1LjUgLTczdDgxLjUgLTI5cTUwIDAgODYuNSAzNHQ0MS41IDgzbDE2NyAxMjIgcTcxIDAgMTIyIDUwLjV0NTEgMTIyLjV0LTUxIDEyM3QtMTIyIDUxcS03MiAwIC0xMjIuNSAtNTAuNXQtNTEuNSAtMTIxLjVsLTEwOCAtMTU1cS0yIDAgLTYuNSAwLjV0LTYuNSAwLjVxLTM1IDAgLTY3IC0xOWwtNDg5IDE5N3EtMTAgNDQgLTQ1LjUgNzN0LTgwLjUgMjlxLTU0IDAgLTkyIC0zOHQtMzggLTkyek0xNjIgNjkzcTAgNDAgMjggNjh0NjggMjhxMjcgMCA0OS41IC0xNHQzNC41IC0zN2wtNDggMTlxLTI5IDExIC01Ni41IC0yIHQtMzguNSAtNDFxLTEyIC0yOSAtMC41IC01N3QzOS41IC00MHYtMWw0MCAtMTZxLTE0IC0yIC0yMCAtMnEtNDAgMCAtNjggMjcuNXQtMjggNjcuNXpNODU1IDM2OXE1IC0yIDQ3IC0xOXEyOSAtMTIgNTggMC41dDQxIDQxLjVxMTEgMjkgLTEgNTcuNXQtNDEgNDAuNWwtNDAgMTZxMTQgMiAyMSAycTM5IDAgNjcgLTI3LjV0MjggLTY3LjV0LTI4IC02Ny41dC02NyAtMjcuNXEtNTkgMCAtODUgNTF6TTExMTggNjk1cTAgNDggMzQgODJ0ODMgMzQgcTQ4IDAgODIgLTM0dDM0IC04MnQtMzQgLTgydC04MiAtMzRxLTQ5IDAgLTgzIDM0dC0zNCA4MnpNMTE0MiA2OTZxMCAtMzkgMjcuNSAtNjZ0NjUuNSAtMjd0NjUuNSAyN3QyNy41IDY2cTAgMzggLTI3LjUgNjUuNXQtNjUuNSAyNy41dC02NS41IC0yNy41dC0yNy41IC02NS41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYjg7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTE2IDk3MGw0MzMgLTE3bDE4MCAtMzc5bC0xNDcgOTJxLTYzIC03MiAtMTExLjUgLTE0NC41dC03Mi41IC0xMjV0LTM5LjUgLTk0LjV0LTE4LjUgLTYzbC00IC0yMWwtMTkwIDM1N3EtMTcgMjYgLTE4IDU2dDYgNDdsOCAxOHEzNSA2MyAxMTQgMTg4ek0yNzAuNSAxNThxLTMuNSAyOCA0IDY1dDEyIDU1dDIxLjUgNjR0MTkgNTNxNzggLTEyIDUwOSAtMjhsLTE1IC0zNjhsLTIgLTIybC00MjAgMjlxLTM2IDMgLTY3IDMxLjV0LTQ3IDY1LjUgcS0xMSAyNyAtMTQuNSA1NXpNMjk0IDExMjRsMjI1IDM1NnEyMCAzMSA2MCA0NXQ4MCAxMHEyNCAtMiA0OC41IC0xMnQ0MiAtMjF0NDEuNSAtMzN0MzYgLTM0LjV0MzYgLTM5LjV0MzIgLTM1cS00NyAtNjMgLTI2NSAtNDM1bC0zMTcgMTg3ek03ODIgMTUyNGw0MDUgLTFxMzEgMyA1OCAtMTAuNXQzOSAtMjguNWwxMSAtMTVxMzkgLTYxIDExMiAtMTkwbDE0MiA4M2wtMjIwIC0zNzNsLTQxOSAyMGwxNTEgODZxLTM0IDg5IC03NSAxNjYgdC03NS41IDEyMy41dC02NC41IDgwdC00NyA0Ni41ek05NTMgMTk3bDIxMSAzNjJsNyAtMTczcTE3MCAtMTYgMjgzIC01dDE3MCAzM2w1NiAyMmwtMTg4IC0zNTlxLTEyIC0yOSAtMzYuNSAtNDYuNXQtNDMuNSAtMjAuNWwtMTggLTRxLTcxIC03IC0yMTkgLTEybDggLTE2NHpNMTIxOCA4NDdsMzEzIDE5NWwxOSAxMWwyMTIgLTM2M3ExOCAtMzcgMTIuNSAtNzZ0LTI3LjUgLTc0cS0xMyAtMjAgLTMzIC0zN3QtMzggLTI4dC00OC41IC0yMiB0LTQ3IC0xNnQtNTEuNSAtMTR0LTQ2IC0xMnEtMzQgNzIgLTI2NSA0MzZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFiOTsiIGhvcml6LWFkdi14PSIxOTg0IiBkPSJNMCAxNjB2Mzg0cTAgOTMgNjUuNSAxNTguNXQxNTguNSA2NS41aDI4bDEwNSA0MTlxMjMgOTQgMTA0IDE1Ny41dDE3OSA2My41aDcwNHE5OCAwIDE3OSAtNjMuNXQxMDQgLTE1Ny41bDEwNSAtNDE5aDI4cTkzIDAgMTU4LjUgLTY1LjV0NjUuNSAtMTU4LjV2LTM4NHEwIC0xNCAtOSAtMjN0LTIzIC05aC0xMjh2LTEyOHEwIC04MCAtNTYgLTEzNnQtMTM2IC01NnQtMTM2IDU2dC01NiAxMzZ2MTI4aC05Mjh2LTEyOHEwIC04MCAtNTYgLTEzNiB0LTEzNiAtNTZ0LTEzNiA1NnQtNTYgMTM2djEyOGgtOTZxLTE0IDAgLTIzIDl0LTkgMjN6TTE2MCA0NDhxMCAtNjYgNDcgLTExM3QxMTMgLTQ3dDExMyA0N3Q0NyAxMTN0LTQ3IDExM3QtMTEzIDQ3dC0xMTMgLTQ3dC00NyAtMTEzek01MTYgNzY4aDk1MmwtODkgMzU3cS0yIDggLTE0IDE3LjV0LTIxIDkuNWgtNzA0cS05IDAgLTIxIC05LjV0LTE0IC0xNy41ek0xNDcyIDQ0OHEwIC02NiA0NyAtMTEzdDExMyAtNDd0MTEzIDQ3dDQ3IDExMyB0LTQ3IDExM3QtMTEzIDQ3dC0xMTMgLTQ3dC00NyAtMTEzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYmE7IiBob3Jpei1hZHYteD0iMTk4NCIgZD0iTTAgMzJ2Mzg0cTAgOTMgNjUuNSAxNTguNXQxNTguNSA2NS41aDI4bDEwNSA0MTlxMjMgOTQgMTA0IDE1Ny41dDE3OSA2My41aDEyOHYyMjRxMCAxNCA5IDIzdDIzIDloNDQ4cTE0IDAgMjMgLTl0OSAtMjN2LTIyNGg2NHE5OCAwIDE3OSAtNjMuNXQxMDQgLTE1Ny41bDEwNSAtNDE5aDI4cTkzIDAgMTU4LjUgLTY1LjV0NjUuNSAtMTU4LjV2LTM4NHEwIC0xNCAtOSAtMjN0LTIzIC05aC0xMjh2LTY0cTAgLTgwIC01NiAtMTM2dC0xMzYgLTU2IHQtMTM2IDU2dC01NiAxMzZ2NjRoLTkyOHYtNjRxMCAtODAgLTU2IC0xMzZ0LTEzNiAtNTZ0LTEzNiA1NnQtNTYgMTM2djY0aC05NnEtMTQgMCAtMjMgOXQtOSAyM3pNMTYwIDMyMHEwIC02NiA0NyAtMTEzdDExMyAtNDd0MTEzIDQ3dDQ3IDExM3QtNDcgMTEzdC0xMTMgNDd0LTExMyAtNDd0LTQ3IC0xMTN6TTUxNiA2NDBoOTUybC04OSAzNTdxLTIgOCAtMTQgMTcuNXQtMjEgOS41aC03MDRxLTkgMCAtMjEgLTkuNXQtMTQgLTE3LjV6TTE0NzIgMzIwIHEwIC02NiA0NyAtMTEzdDExMyAtNDd0MTEzIDQ3dDQ3IDExM3QtNDcgMTEzdC0xMTMgNDd0LTExMyAtNDd0LTQ3IC0xMTN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFiYjsiIGQ9Ik0zMiA2NHEwIDI2IDE5IDQ1bDQwMiA0MDNoLTIyOXEtMjYgMCAtNDUgMTl0LTE5IDQ1dDE5IDQ1bDQwMiA0MDNoLTE5N3EtMjYgMCAtNDUgMTl0LTE5IDQ1dDE5IDQ1bDM4NCAzODRxMTkgMTkgNDUgMTl0NDUgLTE5bDM4NCAtMzg0cTE5IC0xOSAxOSAtNDV0LTE5IC00NXQtNDUgLTE5aC0xOTdsNDAyIC00MDNxMTkgLTE5IDE5IC00NXQtMTkgLTQ1dC00NSAtMTloLTIyOWw0MDIgLTQwM3ExOSAtMTkgMTkgLTQ1dC0xOSAtNDV0LTQ1IC0xOSBoLTQ2MnExIC0xNyA2IC04Ny41dDUgLTEwOC41cTAgLTI1IC0xOCAtNDIuNXQtNDMgLTE3LjVoLTMyMHEtMjUgMCAtNDMgMTcuNXQtMTggNDIuNXEwIDM4IDUgMTA4LjV0NiA4Ny41aC00NjJxLTI2IDAgLTQ1IDE5dC0xOSA0NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWJjOyIgZD0iTTAgNjQwcTAgMjA5IDEwMyAzODUuNXQyNzkuNSAyNzkuNXQzODUuNSAxMDN0Mzg1LjUgLTEwM3QyNzkuNSAtMjc5LjV0MTAzIC0zODUuNXQtMTAzIC0zODUuNXQtMjc5LjUgLTI3OS41dC0zODUuNSAtMTAzdC0zODUuNSAxMDN0LTI3OS41IDI3OS41dC0xMDMgMzg1LjV6TTIzNyA4ODZxMCAtMzEgMjAuNSAtNTJ0NTEuNSAtMjFxMTEgMCA0MCA4cTEzMyAzNyAzMDcgMzdxMTU5IDAgMzA5LjUgLTM0dDI1My41IC05NXEyMSAtMTIgNDAgLTEyIHEyOSAwIDUwLjUgMjAuNXQyMS41IDUxLjVxMCA0NyAtNDAgNzBxLTEyNiA3MyAtMjkzIDExMC41dC0zNDMgMzcuNXEtMjA0IDAgLTM2NCAtNDdxLTIzIC03IC0zOC41IC0yNS41dC0xNS41IC00OC41ek0yODkgNjM3cTAgLTI1IDE3LjUgLTQyLjV0NDIuNSAtMTcuNXE3IDAgMzcgOHExMjIgMzMgMjUxIDMzcTI3OSAwIDQ4OCAtMTI0cTI0IC0xMyAzOCAtMTNxMjUgMCA0Mi41IDE3LjV0MTcuNSA0Mi41cTAgNDAgLTM1IDYxIHEtMjM3IDE0MSAtNTQ4IDE0MXEtMTUzIDAgLTMwMyAtNDJxLTQ4IC0xMyAtNDggLTY0ek0zMjEgNDA2cTAgLTIwIDEzLjUgLTM0LjV0MzUuNSAtMTQuNXE1IDAgMzcgOHExMzIgMjcgMjQzIDI3cTIyNiAwIDM5NyAtMTAzcTE5IC0xMSAzMyAtMTFxMTkgMCAzMyAxMy41dDE0IDM0LjVxMCAzMiAtMzAgNTFxLTE5MyAxMTUgLTQ0NyAxMTVxLTEzMyAwIC0yODcgLTM0cS00MiAtOSAtNDIgLTUyeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYmQ7IiBkPSJNMCAxMXYxMjU4cTAgNTggNDAuNSA5OC41dDk4LjUgNDAuNWgxMjU4cTU4IDAgOTguNSAtNDAuNXQ0MC41IC05OC41di0xMjU4cTAgLTU4IC00MC41IC05OC41dC05OC41IC00MC41aC0xMjU4cS01OCAwIC05OC41IDQwLjV0LTQwLjUgOTguNXpNNzEgMTFxMCAtMjggMjAgLTQ4dDQ4IC0yMGgxMjU4cTI4IDAgNDggMjB0MjAgNDh2MTI1OHEwIDI4IC0yMCA0OHQtNDggMjBoLTEyNThxLTI4IDAgLTQ4IC0yMHQtMjAgLTQ4di0xMjU4eiBNMTIxIDExdjE0MWw3MTEgMTk1bC0yMTIgNDM5cTQgMSAxMiAyLjV0MTIgMS41cTE3MCAzMiAzMDMuNSAyMS41dDIyMSAtNDZ0MTQzLjUgLTk0LjVxMjcgLTI4IC0yNSAtNDJxLTY0IC0xNiAtMjU2IC02MmwtOTcgMTk4cS0xMTEgNyAtMjQwIC0xNmwxODggLTM4N2w1MzMgMTQ1di00OTZxMCAtNyAtNS41IC0xMi41dC0xMi41IC01LjVoLTEyNThxLTcgMCAtMTIuNSA1LjV0LTUuNSAxMi41ek0xMjEgNzA5djU2MHEwIDcgNS41IDEyLjUgdDEyLjUgNS41aDEyNThxNyAwIDEyLjUgLTUuNXQ1LjUgLTEyLjV2LTQyOHEtODUgMzAgLTE4OCA1MnEtMjk0IDY0IC02NDUgMTJsLTE4IC0zbC02NSAxMzRoLTIzM2w4NSAtMTkwcS0xMzIgLTUxIC0yMzAgLTEzN3pNMjQ2IDQxM3EtMjQgMjAzIDE2NiAzMDVsMTI5IC0yNzBsLTI1NSAtNjFxLTE0IC0zIC0yNiA0LjV0LTE0IDIxLjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFiZTsiIGhvcml6LWFkdi14PSIyMzA0IiBkPSJNMCA0MDVsMTcgMTI4cTIgOSA5IDl0OSAtOWwyMCAtMTI4bC0yMCAtMTI2cS0yIC05IC05IC05dC05IDl6TTc5IDQwNWwyMyAyMDdxMCA5IDkgOXE4IDAgMTAgLTlsMjYgLTIwN2wtMjYgLTIwM3EtMiAtOSAtMTAgLTlxLTkgMCAtOSAxMHpNMTY5IDQwNWwyMSAyNDVxMiAxMiAxMiAxMnExMSAwIDExIC0xMmwyNSAtMjQ1bC0yNSAtMjM3cTAgLTExIC0xMSAtMTFxLTEwIDAgLTEyIDExek0yNTkgNDA1bDIxIDI1MnEwIDEzIDEzIDEzIHExMiAwIDE0IC0xM2wyMyAtMjUybC0yMyAtMjQ0cS0yIC0xMyAtMTQgLTEzcS0xMyAwIC0xMyAxM3pNMzUwIDQwNWwyMCAyMzRxMCA2IDQuNSAxMC41dDEwLjUgNC41cTE0IDAgMTYgLTE1bDIxIC0yMzRsLTIxIC0yNDZxLTIgLTE2IC0xNiAtMTZxLTYgMCAtMTAuNSA0LjV0LTQuNSAxMS41ek00MDEgMTU5ek00NDIgNDA1bDE4IDM4MHEyIDE4IDE4IDE4cTcgMCAxMiAtNS41dDUgLTEyLjVsMjEgLTM4MGwtMjEgLTI0NnEwIC03IC01IC0xMi41IHQtMTIgLTUuNXEtMTYgMCAtMTggMTh6TTUzNCA0MDNsMTYgNDY4cTIgMTkgMjAgMTlxOCAwIDEzLjUgLTUuNXQ1LjUgLTEzLjVsMTkgLTQ2OGwtMTkgLTI0NHEwIC04IC01LjUgLTEzLjV0LTEzLjUgLTUuNXEtMTggMCAtMjAgMTl6TTYyOCA0MDVsMTYgNTA2cTAgOSA2LjUgMTUuNXQxNC41IDYuNXE5IDAgMTUgLTYuNXQ3IC0xNS41bDE4IC01MDZsLTE4IC0yNDJxLTIgLTIxIC0yMiAtMjFxLTE5IDAgLTIxIDIxek03MjMgNDA1bDE0IC0yNDEgcTEgLTEwIDcuNSAtMTYuNXQxNS41IC02LjVxMjIgMCAyNCAyM2wxNiAyNDFsLTE2IDUyM3EtMSAxMCAtNy41IDE3dC0xNi41IDdxLTkgMCAtMTYgLTd0LTcgLTE3ek03ODQgMTY0ek04MTcgNDA1bDE0IDUxMHEwIDExIDcuNSAxOHQxNy41IDd0MTcuNSAtN3Q3LjUgLTE4bDE1IC01MTBsLTE1IC0yMzlxMCAtMTAgLTcuNSAtMTcuNXQtMTcuNSAtNy41dC0xNyA3dC04IDE4ek05MTMgNDA0bDEyIDQ5MnExIDEyIDkgMjB0MTkgOHQxOC41IC04IHQ4LjUgLTIwbDE0IC00OTJsLTE0IC0yMzZxMCAtMTEgLTggLTE5dC0xOSAtOHQtMTkgOHQtOSAxOXpNMTAxMCA0MDVxMCAtMSAxMSAtMjM2di0xcTAgLTEwIDYgLTE3cTkgLTExIDIzIC0xMXExMSAwIDIwIDlxOSA3IDkgMjBsMSAyNGwxMSAyMTFsLTEyIDU4NnEwIDE2IC0xMyAyNHEtOCA1IC0xNiA1dC0xNiAtNXEtMTMgLTggLTEzIC0yNGwtMSAtNnpNMTA3OSAxNjl6TTExMDMgNDA0bDEyIDYzNnYzcTIgMTUgMTIgMjRxOSA3IDIwIDcgcTggMCAxNSAtNXExNCAtOCAxNiAtMjZsMTQgLTYzOWwtMTQgLTIzMXEwIC0xMyAtOSAtMjJ0LTIyIC05dC0yMiA5dC0xMCAyMmwtNiAxMTR6TTEyMDQgMTc0djg5OXEwIDIzIDI4IDMzcTg1IDM0IDE4MSAzNHExOTUgMCAzMzggLTEzMS41dDE2MCAtMzIzLjVxNTMgMjIgMTEwIDIycTExNyAwIDIwMCAtODN0ODMgLTIwMXEwIC0xMTcgLTgzIC0xOTkuNXQtMjAwIC04Mi41aC03ODZxLTEzIDIgLTIyIDExdC05IDIyeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYzA7IiBkPSJNMCAwdjE3MHExMTkgLTg0IDMyNSAtMTI3dDQ0MyAtNDN0NDQzIDQzdDMyNSAxMjd2LTE3MHEwIC02OSAtMTAzIC0xMjh0LTI4MCAtOTMuNXQtMzg1IC0zNC41dC0zODUgMzQuNXQtMjgwIDkzLjV0LTEwMyAxMjh6TTAgMzg0djE3MHExMTkgLTg0IDMyNSAtMTI3dDQ0MyAtNDN0NDQzIDQzdDMyNSAxMjd2LTE3MHEwIC02OSAtMTAzIC0xMjh0LTI4MCAtOTMuNXQtMzg1IC0zNC41dC0zODUgMzQuNXQtMjgwIDkzLjV0LTEwMyAxMjh6TTAgNzY4IHYxNzBxMTE5IC04NCAzMjUgLTEyN3Q0NDMgLTQzdDQ0MyA0M3QzMjUgMTI3di0xNzBxMCAtNjkgLTEwMyAtMTI4dC0yODAgLTkzLjV0LTM4NSAtMzQuNXQtMzg1IDM0LjV0LTI4MCA5My41dC0xMDMgMTI4ek0wIDExNTJ2MTI4cTAgNjkgMTAzIDEyOHQyODAgOTMuNXQzODUgMzQuNXQzODUgLTM0LjV0MjgwIC05My41dDEwMyAtMTI4di0xMjhxMCAtNjkgLTEwMyAtMTI4dC0yODAgLTkzLjV0LTM4NSAtMzQuNXQtMzg1IDM0LjV0LTI4MCA5My41IHQtMTAzIDEyOHoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWMxOyIgZD0iTTAgLTE2MHYxNjAwcTAgNDAgMjggNjh0NjggMjhoODk2cTQwIDAgODggLTIwdDc2IC00OGwzMTIgLTMxMnEyOCAtMjggNDggLTc2dDIwIC04OHYtMTE1MnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTEzNDRxLTQwIDAgLTY4IDI4dC0yOCA2OHpNMTI4IC0xMjhoMTI4MHYxMDI0aC00MTZxLTQwIDAgLTY4IDI4dC0yOCA2OHY0MTZoLTc2OHYtMTUzNnpNMjU3IDYwcTkgNDAgNTYgOTEuNXQxMzIgOTYuNXExNCA5IDIzIC02cTIgLTIgMiAtNCBxNTIgODUgMTA3IDE5N3E2OCAxMzYgMTA0IDI2MnEtMjQgODIgLTMwLjUgMTU5LjV0Ni41IDEyNy41cTExIDQwIDQyIDQwaDIxaDFxMjMgMCAzNSAtMTVxMTggLTIxIDkgLTY4cS0yIC02IC00IC04cTEgLTMgMSAtOHYtMzBxLTIgLTEyMyAtMTQgLTE5MnE1NSAtMTY0IDE0NiAtMjM4cTMzIC0yNiA4NCAtNTZxNTkgNyAxMTcgN3ExNDcgMCAxNzcgLTQ5cTE2IC0yMiAyIC01MnEwIC0xIC0xIC0ybC0yIC0ydi0xcS02IC0zOCAtNzEgLTM4IHEtNDggMCAtMTE1IDIwdC0xMzAgNTNxLTIyMSAtMjQgLTM5MiAtODNxLTE1MyAtMjYyIC0yNDIgLTI2MnEtMTUgMCAtMjggN2wtMjQgMTJxLTEgMSAtNiA1cS0xMCAxMCAtNiAzNnpNMzE4IDU0cTUyIDI0IDEzNyAxNThxLTUxIC00MCAtODcuNSAtODR0LTQ5LjUgLTc0ek01OTIgMzEzcTEzNSA1NCAyODQgODFxLTIgMSAtMTMgOS41dC0xNiAxMy41cS03NiA2NyAtMTI3IDE3NnEtMjcgLTg2IC04MyAtMTk3cS0zMCAtNTYgLTQ1IC04M3ogTTcxNCA4NDJxMSA3IDcgNDRxMCAzIDcgNDNxMSA0IDQgOHEtMSAxIC0xIDJ0LTAuNSAxLjV0LTAuNSAxLjVxLTEgMjIgLTEzIDM2cTAgLTEgLTEgLTJ2LTJxLTE1IC00MiAtMiAtMTMyek0xMDI0IDEwMjRoMzc2cS0xMCAyOSAtMjIgNDFsLTMxMyAzMTNxLTEyIDEyIC00MSAyMnYtMzc2ek0xMDk4IDM1M3E3NiAtMjggMTI0IC0yOHExNCAwIDE4IDFxMCAxIC0yIDNxLTI0IDI0IC0xNDAgMjR6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFjMjsiIGQ9Ik0wIC0xNjB2MTYwMHEwIDQwIDI4IDY4dDY4IDI4aDg5NnE0MCAwIDg4IC0yMHQ3NiAtNDhsMzEyIC0zMTJxMjggLTI4IDQ4IC03NnQyMCAtODh2LTExNTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0xMzQ0cS00MCAwIC02OCAyOHQtMjggNjh6TTEyOCAtMTI4aDEyODB2MTAyNGgtNDE2cS00MCAwIC02OCAyOHQtMjggNjh2NDE2aC03Njh2LTE1MzZ6TTIzMyA2NjFoNzBsMTY0IC02NjFoMTU5bDEyOCA0ODVxNyAyMCAxMCA0NnEyIDE2IDIgMjQgaDRsMyAtMjRxMSAtMyAzLjUgLTIwdDUuNSAtMjZsMTI4IC00ODVoMTU5bDE2NCA2NjFoNzB2MTA3aC0zMDB2LTEwN2g5MGwtOTkgLTQzOHEtNSAtMjAgLTcgLTQ2bC0yIC0yMWgtNGwtMyAyMXEtMSA1IC00IDIxdC01IDI1bC0xNDQgNTQ1aC0xMTRsLTE0NCAtNTQ1cS0yIC05IC00LjUgLTI0LjV0LTMuNSAtMjEuNWwtNCAtMjFoLTRsLTIgMjFxLTIgMjYgLTcgNDZsLTk5IDQzOGg5MHYxMDdoLTMwMHYtMTA3ek0xMDI0IDEwMjRoMzc2IHEtMTAgMjkgLTIyIDQxbC0zMTMgMzEzcS0xMiAxMiAtNDEgMjJ2LTM3NnoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWMzOyIgZD0iTTAgLTE2MHYxNjAwcTAgNDAgMjggNjh0NjggMjhoODk2cTQwIDAgODggLTIwdDc2IC00OGwzMTIgLTMxMnEyOCAtMjggNDggLTc2dDIwIC04OHYtMTE1MnEwIC00MCAtMjggLTY4dC02OCAtMjhoLTEzNDRxLTQwIDAgLTY4IDI4dC0yOCA2OHpNMTI4IC0xMjhoMTI4MHYxMDI0aC00MTZxLTQwIDAgLTY4IDI4dC0yOCA2OHY0MTZoLTc2OHYtMTUzNnpNNDI5IDBoMjgxdjEwNmgtNzVsMTAzIDE2MXE1IDcgMTAgMTYuNXQ3LjUgMTMuNXQzLjUgNCBoMnExIC00IDUgLTEwcTIgLTQgNC41IC03LjV0NiAtOHQ2LjUgLTguNWwxMDcgLTE2MWgtNzZ2LTEwNmgyOTF2MTA2aC02OGwtMTkyIDI3M2wxOTUgMjgyaDY3djEwN2gtMjc5di0xMDdoNzRsLTEwMyAtMTU5cS00IC03IC0xMCAtMTYuNXQtOSAtMTMuNWwtMiAtM2gtMnEtMSA0IC01IDEwcS02IDExIC0xNyAyM2wtMTA2IDE1OWg3NnYxMDdoLTI5MHYtMTA3aDY4bDE4OSAtMjcybC0xOTQgLTI4M2gtNjh2LTEwNnpNMTAyNCAxMDI0aDM3NiBxLTEwIDI5IC0yMiA0MWwtMzEzIDMxM3EtMTIgMTIgLTQxIDIydi0zNzZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFjNDsiIGQ9Ik0wIC0xNjB2MTYwMHEwIDQwIDI4IDY4dDY4IDI4aDg5NnE0MCAwIDg4IC0yMHQ3NiAtNDhsMzEyIC0zMTJxMjggLTI4IDQ4IC03NnQyMCAtODh2LTExNTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0xMzQ0cS00MCAwIC02OCAyOHQtMjggNjh6TTEyOCAtMTI4aDEyODB2MTAyNGgtNDE2cS00MCAwIC02OCAyOHQtMjggNjh2NDE2aC03Njh2LTE1MzZ6TTQxNiAwaDMyN3YxMDZoLTkzdjE2N2gxMzdxNzYgMCAxMTggMTVxNjcgMjMgMTA2LjUgODcgdDM5LjUgMTQ2cTAgODEgLTM3IDE0MXQtMTAwIDg3cS00OCAxOSAtMTMwIDE5aC0zNjh2LTEwN2g5MnYtNTU1aC05MnYtMTA2ek02NTAgMzg2djI2OGgxMjBxNTIgMCA4MyAtMThxNTYgLTMzIDU2IC0xMTVxMCAtODkgLTYyIC0xMjBxLTMxIC0xNSAtNzggLTE1aC0xMTl6TTEwMjQgMTAyNGgzNzZxLTEwIDI5IC0yMiA0MWwtMzEzIDMxM3EtMTIgMTIgLTQxIDIydi0zNzZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFjNTsiIGQ9Ik0wIC0xNjB2MTYwMHEwIDQwIDI4IDY4dDY4IDI4aDg5NnE0MCAwIDg4IC0yMHQ3NiAtNDhsMzEyIC0zMTJxMjggLTI4IDQ4IC03NnQyMCAtODh2LTExNTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0xMzQ0cS00MCAwIC02OCAyOHQtMjggNjh6TTEyOCAtMTI4aDEyODB2MTAyNGgtNDE2cS00MCAwIC02OCAyOHQtMjggNjh2NDE2aC03Njh2LTE1MzZ6TTI1NiAwdjE5MmwxOTIgMTkybDEyOCAtMTI4bDM4NCAzODRsMzIwIC0zMjB2LTMyMCBoLTEwMjR6TTI1NiA3MDRxMCA4MCA1NiAxMzZ0MTM2IDU2dDEzNiAtNTZ0NTYgLTEzNnQtNTYgLTEzNnQtMTM2IC01NnQtMTM2IDU2dC01NiAxMzZ6TTEwMjQgMTAyNGgzNzZxLTEwIDI5IC0yMiA0MWwtMzEzIDMxM3EtMTIgMTIgLTQxIDIydi0zNzZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFjNjsiIGQ9Ik0wIC0xNjB2MTYwMHEwIDQwIDI4IDY4dDY4IDI4aDg5NnE0MCAwIDg4IC0yMHQ3NiAtNDhsMzEyIC0zMTJxMjggLTI4IDQ4IC03NnQyMCAtODh2LTExNTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0xMzQ0cS00MCAwIC02OCAyOHQtMjggNjh6TTEyOCAtMTI4aDEyODB2MTAyNGgtNDE2cS00MCAwIC02OCAyOHQtMjggNjh2NDE2aC0xMjh2LTEyOGgtMTI4djEyOGgtNTEydi0xNTM2ek0zODQgMTkycTAgMjUgOCA1MnEyMSA2MyAxMjAgMzk2IHYxMjhoMTI4di0xMjhoNzlxMjIgMCAzOSAtMTN0MjMgLTM0bDEwNyAtMzQ5cTggLTI3IDggLTUycTAgLTgzIC03Mi41IC0xMzcuNXQtMTgzLjUgLTU0LjV0LTE4My41IDU0LjV0LTcyLjUgMTM3LjV6TTUxMiAxOTJxMCAtMjYgMzcuNSAtNDV0OTAuNSAtMTl0OTAuNSAxOXQzNy41IDQ1dC0zNy41IDQ1dC05MC41IDE5dC05MC41IC0xOXQtMzcuNSAtNDV6TTUxMiA4OTZoMTI4djEyOGgtMTI4di0xMjh6TTUxMiAxMTUyaDEyOHYxMjhoLTEyOHYtMTI4IHpNNjQwIDc2OGgxMjh2MTI4aC0xMjh2LTEyOHpNNjQwIDEwMjRoMTI4djEyOGgtMTI4di0xMjh6TTEwMjQgMTAyNGgzNzZxLTEwIDI5IC0yMiA0MWwtMzEzIDMxM3EtMTIgMTIgLTQxIDIydi0zNzZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFjNzsiIGQ9Ik0wIC0xNjB2MTYwMHEwIDQwIDI4IDY4dDY4IDI4aDg5NnE0MCAwIDg4IC0yMHQ3NiAtNDhsMzEyIC0zMTJxMjggLTI4IDQ4IC03NnQyMCAtODh2LTExNTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0xMzQ0cS00MCAwIC02OCAyOHQtMjggNjh6TTEyOCAtMTI4aDEyODB2MTAyNGgtNDE2cS00MCAwIC02OCAyOHQtMjggNjh2NDE2aC03Njh2LTE1MzZ6TTI1NiAyODh2MTkycTAgMTQgOSAyM3QyMyA5aDEzMWwxNjYgMTY3cTE2IDE1IDM1IDcgcTIwIC04IDIwIC0zMHYtNTQ0cTAgLTIyIC0yMCAtMzBxLTggLTIgLTEyIC0ycS0xMiAwIC0yMyA5bC0xNjYgMTY3aC0xMzFxLTE0IDAgLTIzIDl0LTkgMjN6TTc2MiAyMDYuNXExIC0yNi41IDIwIC00NC41cTIwIC0xNyA0NCAtMTdxMjcgMCA0NyAyMHE4NyA5MyA4NyAyMTl0LTg3IDIxOXEtMTggMTkgLTQ1IDIwdC00NiAtMTd0LTIwIC00NC41dDE4IC00Ni41cTUyIC01NyA1MiAtMTMxdC01MiAtMTMxcS0xOSAtMjAgLTE4IC00Ni41eiBNOTczLjUgNTQuNXEyLjUgLTI2LjUgMjMuNSAtNDIuNXExOCAtMTUgNDAgLTE1cTMxIDAgNTAgMjRxMTI5IDE1OSAxMjkgMzYzdC0xMjkgMzYzcS0xNiAyMSAtNDMgMjR0LTQ3IC0xNHEtMjEgLTE3IC0yMy41IC00My41dDE0LjUgLTQ3LjVxMTAwIC0xMjMgMTAwIC0yODJ0LTEwMCAtMjgycS0xNyAtMjEgLTE0LjUgLTQ3LjV6TTEwMjQgMTAyNGgzNzZxLTEwIDI5IC0yMiA0MWwtMzEzIDMxM3EtMTIgMTIgLTQxIDIydi0zNzZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFjODsiIGQ9Ik0wIC0xNjB2MTYwMHEwIDQwIDI4IDY4dDY4IDI4aDg5NnE0MCAwIDg4IC0yMHQ3NiAtNDhsMzEyIC0zMTJxMjggLTI4IDQ4IC03NnQyMCAtODh2LTExNTJxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0xMzQ0cS00MCAwIC02OCAyOHQtMjggNjh6TTEyOCAtMTI4aDEyODB2MTAyNGgtNDE2cS00MCAwIC02OCAyOHQtMjggNjh2NDE2aC03Njh2LTE1MzZ6TTI1NiAyNTZ2Mzg0cTAgNTIgMzggOTB0OTAgMzhoMzg0cTUyIDAgOTAgLTM4dDM4IC05MCB2LTM4NHEwIC01MiAtMzggLTkwdC05MCAtMzhoLTM4NHEtNTIgMCAtOTAgMzh0LTM4IDkwek05NjAgNDAzdjkwbDI2NSAyNjZxOSA5IDIzIDlxNCAwIDEyIC0ycTIwIC04IDIwIC0zMHYtNTc2cTAgLTIyIC0yMCAtMzBxLTggLTIgLTEyIC0ycS0xNCAwIC0yMyA5ek0xMDI0IDEwMjRoMzc2cS0xMCAyOSAtMjIgNDFsLTMxMyAzMTNxLTEyIDEyIC00MSAyMnYtMzc2eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxYzk7IiBkPSJNMCAtMTYwdjE2MDBxMCA0MCAyOCA2OHQ2OCAyOGg4OTZxNDAgMCA4OCAtMjB0NzYgLTQ4bDMxMiAtMzEycTI4IC0yOCA0OCAtNzZ0MjAgLTg4di0xMTUycTAgLTQwIC0yOCAtNjh0LTY4IC0yOGgtMTM0NHEtNDAgMCAtNjggMjh0LTI4IDY4ek0xMjggLTEyOGgxMjgwdjEwMjRoLTQxNnEtNDAgMCAtNjggMjh0LTI4IDY4djQxNmgtNzY4di0xNTM2ek0yNTQgNDI5cS0xNCAxOSAwIDM4bDIyNiAzMDFxOCAxMSAyMSAxMi41dDI0IC02LjUgbDUxIC0zOHExMSAtOCAxMi41IC0yMXQtNi41IC0yNGwtMTgyIC0yNDNsMTgyIC0yNDNxOCAtMTEgNi41IC0yNHQtMTIuNSAtMjFsLTUxIC0zOHEtMTEgLTggLTI0IC02LjV0LTIxIDEyLjV6TTYzNiA0M2wxMzggODMxcTIgMTMgMTMgMjAuNXQyNCA1LjVsNjMgLTEwcTEzIC0yIDIwLjUgLTEzdDUuNSAtMjRsLTEzOCAtODMxcS0yIC0xMyAtMTMgLTIwLjV0LTI0IC01LjVsLTYzIDEwcS0xMyAyIC0yMC41IDEzdC01LjUgMjR6TTk0Ny41IDE4MSBxLTEuNSAxMyA2LjUgMjRsMTgyIDI0M2wtMTgyIDI0M3EtOCAxMSAtNi41IDI0dDEyLjUgMjFsNTEgMzhxMTEgOCAyNCA2LjV0MjEgLTEyLjVsMjI2IC0zMDFxMTQgLTE5IDAgLTM4bC0yMjYgLTMwMXEtOCAtMTEgLTIxIC0xMi41dC0yNCA2LjVsLTUxIDM4cS0xMSA4IC0xMi41IDIxek0xMDI0IDEwMjRoMzc2cS0xMCAyOSAtMjIgNDFsLTMxMyAzMTNxLTEyIDEyIC00MSAyMnYtMzc2eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxY2E7IiBkPSJNMzkgMTI4NmgyODNxMjYgLTIxOCA3MCAtMzk4LjV0MTA0LjUgLTMxN3QxMjEuNSAtMjM1LjV0MTQwIC0xOTVxMTY5IDE2OSAyODcgNDA2cS0xNDIgNzIgLTIyMyAyMjB0LTgxIDMzM3EwIDE5MiAxMDQgMzE0LjV0Mjg0IDEyMi41cTE3OCAwIDI3MyAtMTA1LjV0OTUgLTI5Ny41cTAgLTE1OSAtNTggLTI4NnEtNyAtMSAtMTkuNSAtM3QtNDYgLTJ0LTYzIDZ0LTYyIDI1LjV0LTUwLjUgNTEuNXEzMSAxMDMgMzEgMTg0cTAgODcgLTI5IDEzMiB0LTc5IDQ1cS01MyAwIC04NSAtNDkuNXQtMzIgLTE0MC41cTAgLTE4NiAxMDUgLTI5My41dDI2NyAtMTA3LjVxNjIgMCAxMjEgMTR2LTE5OHEtMTAxIC0yMyAtMTk4IC0yM3EtNjUgLTEzNiAtMTY1LjUgLTI3MXQtMTgxLjUgLTIxNS41dC0xMjggLTEwNi41cS04MCAtNDUgLTE2MiAzcS0yOCAxNyAtNjAuNSA0My41dC04NSA4My41dC0xMDIuNSAxMjguNXQtMTA3LjUgMTg0dC0xMDUuNSAyNDR0LTkxLjUgMzE0LjV0LTcwLjUgMzkweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxY2I7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgMzY3djU0NnEwIDQxIDM0IDY0bDgxOSA1NDZxMjEgMTMgNDMgMTN0NDMgLTEzbDgxOSAtNTQ2cTM0IC0yMyAzNCAtNjR2LTU0NnEwIC00MSAtMzQgLTY0bC04MTkgLTU0NnEtMjEgLTEzIC00MyAtMTN0LTQzIDEzbC04MTkgNTQ2cS0zNCAyMyAtMzQgNjR6TTE1NCA1MTFsMTkzIDEyOWwtMTkzIDEyOXYtMjU4ek0yMTYgMzY3bDYwMyAtNDAydjM1OWwtMzM0IDIyM3pNMjE2IDkxM2wyNjkgLTE4MGwzMzQgMjIzdjM1OXpNNjI0IDY0MCBsMjcyIC0xODJsMjcyIDE4MmwtMjcyIDE4MnpNOTczIC0zNWw2MDMgNDAybC0yNjkgMTgwbC0zMzQgLTIyM3YtMzU5ek05NzMgOTU2bDMzNCAtMjIzbDI2OSAxODBsLTYwMyA0MDJ2LTM1OXpNMTQ0NSA2NDBsMTkzIC0xMjl2MjU4eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxY2M7IiBob3Jpei1hZHYteD0iMjA0OCIgZD0iTTAgNDA3cTAgMTEwIDU1IDIwM3QxNDcgMTQ3cS0xMiAzOSAtMTIgODJxMCAxMTUgODIgMTk2dDE5OSA4MXE5NSAwIDE3MiAtNThxNzUgMTU0IDIyMi41IDI0OHQzMjYuNSA5NHExNjYgMCAzMDYgLTgwLjV0MjIxLjUgLTIxOC41dDgxLjUgLTMwMXEwIC02IC0wLjUgLTE4dC0wLjUgLTE4cTExMSAtNDYgMTc5LjUgLTE0NS41dDY4LjUgLTIyMS41cTAgLTE2NCAtMTE4IC0yODAuNXQtMjg1IC0xMTYuNXEtNCAwIC0xMS41IDAuNXQtMTAuNSAwLjUgaC0xMjA5aC0xaC0yaC01cS0xNzAgMTAgLTI4OCAxMjUuNXQtMTE4IDI4MC41ek00NjggNDk4cTAgLTEyMiA4NCAtMTkzdDIwOCAtNzFxMTM3IDAgMjQwIDk5cS0xNiAyMCAtNDcuNSA1Ni41dC00My41IDUwLjVxLTY3IC02NSAtMTQ0IC02NXEtNTUgMCAtOTMuNSAzMy41dC0zOC41IDg3LjVxMCA1MyAzOC41IDg3dDkxLjUgMzRxNDQgMCA4NC41IC0yMXQ3MyAtNTV0NjUgLTc1dDY5IC04MnQ3NyAtNzV0OTcgLTU1dDEyMS41IC0yMSBxMTIxIDAgMjA0LjUgNzEuNXQ4My41IDE5MC41cTAgMTIxIC04NCAxOTJ0LTIwNyA3MXEtMTQzIDAgLTI0MSAtOTdxMTQgLTE2IDI5LjUgLTM0dDM0LjUgLTQwdDI5IC0zNHE2NiA2NCAxNDIgNjRxNTIgMCA5MiAtMzN0NDAgLTg0cTAgLTU3IC0zNyAtOTEuNXQtOTQgLTM0LjVxLTQzIDAgLTgyLjUgMjF0LTcyIDU1dC02NS41IDc1dC02OS41IDgydC03Ny41IDc1dC05Ni41IDU1dC0xMTguNSAyMXEtMTIyIDAgLTIwNyAtNzAuNXQtODUgLTE4OS41eiAiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWNkOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDY0MHEwIDE4MiA3MSAzNDh0MTkxIDI4NnQyODYgMTkxdDM0OCA3MXQzNDggLTcxdDI4NiAtMTkxdDE5MSAtMjg2dDcxIC0zNDh0LTcxIC0zNDh0LTE5MSAtMjg2dC0yODYgLTE5MXQtMzQ4IC03MXQtMzQ4IDcxdC0yODYgMTkxdC0xOTEgMjg2dC03MSAzNDh6TTEyOCA2NDBxMCAtMTkwIDkwIC0zNjFsMTk0IDE5NHEtMjggODIgLTI4IDE2N3QyOCAxNjdsLTE5NCAxOTRxLTkwIC0xNzEgLTkwIC0zNjF6TTUxMiA2NDAgcTAgLTE1OSAxMTIuNSAtMjcxLjV0MjcxLjUgLTExMi41dDI3MS41IDExMi41dDExMi41IDI3MS41dC0xMTIuNSAyNzEuNXQtMjcxLjUgMTEyLjV0LTI3MS41IC0xMTIuNXQtMTEyLjUgLTI3MS41ek01MzUgLTM4cTE3MSAtOTAgMzYxIC05MHQzNjEgOTBsLTE5NCAxOTRxLTgyIC0yOCAtMTY3IC0yOHQtMTY3IDI4ek01MzUgMTMxOGwxOTQgLTE5NHE4MiAyOCAxNjcgMjh0MTY3IC0yOGwxOTQgMTk0cS0xNzEgOTAgLTM2MSA5MHQtMzYxIC05MHogTTEzODAgNDczbDE5NCAtMTk0cTkwIDE3MSA5MCAzNjF0LTkwIDM2MWwtMTk0IC0xOTRxMjggLTgyIDI4IC0xNjd0LTI4IC0xNjd6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFjZTsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMCA2NDBxMCAyMjIgMTAxIDQxNC41dDI3Ni41IDMxN3QzOTAuNSAxNTUuNXYtMjYwcS0yMjEgLTQ1IC0zNjYuNSAtMjIxdC0xNDUuNSAtNDA2cTAgLTEzMCA1MSAtMjQ4LjV0MTM2LjUgLTIwNHQyMDQgLTEzNi41dDI0OC41IC01MXQyNDguNSA1MXQyMDQgMTM2LjV0MTM2LjUgMjA0dDUxIDI0OC41cTAgMjMwIC0xNDUuNSA0MDZ0LTM2Ni41IDIyMXYyNjBxMjE1IC0zMSAzOTAuNSAtMTU1LjV0Mjc2LjUgLTMxN3QxMDEgLTQxNC41IHEwIC0xODIgLTcxIC0zNDh0LTE5MSAtMjg2dC0yODYgLTE5MXQtMzQ4IC03MXQtMzQ4IDcxdC0yODYgMTkxdC0xOTEgMjg2dC03MSAzNDh6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFkMDsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNMTkgNjYycTggMjE3IDExNiA0MDZ0MzA1IDMxOGg1cTAgLTEgLTEgLTNxLTggLTggLTI4IC0zMy41dC01MiAtNzYuNXQtNjAgLTExMC41dC00NC41IC0xMzUuNXQtMTQgLTE1MC41dDM5IC0xNTcuNXQxMDguNSAtMTU0cTUwIC01MCAxMDIgLTY5LjV0OTAuNSAtMTEuNXQ2OS41IDIzLjV0NDcgMzIuNWwxNiAxNnEzOSA1MSA1MyAxMTYuNXQ2LjUgMTIyLjV0LTIxIDEwN3QtMjYuNSA4MGwtMTQgMjlxLTEwIDI1IC0zMC41IDQ5LjV0LTQzIDQxIHQtNDMuNSAyOS41dC0zNSAxOWwtMTMgNmwxMDQgMTE1cTM5IC0xNyA3OCAtNTJ0NTkgLTYxbDE5IC0yN3ExIDQ4IC0xOC41IDEwMy41dC00MC41IDg3LjVsLTIwIDMxbDE2MSAxODNsMTYwIC0xODFxLTMzIC00NiAtNTIuNSAtMTAyLjV0LTIyLjUgLTkwLjVsLTQgLTMzcTIyIDM3IDYxLjUgNzIuNXQ2Ny41IDUyLjVsMjggMTdsMTAzIC0xMTVxLTQ0IC0xNCAtODUgLTUwdC02MCAtNjVsLTE5IC0yOXEtMzEgLTU2IC00OCAtMTMzLjV0LTcgLTE3MCB0NTcgLTE1Ni41cTMzIC00NSA3Ny41IC02MC41dDg1IC01LjV0NzYgMjYuNXQ1Ny41IDMzLjVsMjEgMTZxNjAgNTMgOTYuNSAxMTV0NDguNSAxMjEuNXQxMCAxMjEuNXQtMTggMTE4dC0zNyAxMDcuNXQtNDUuNSA5M3QtNDUgNzJ0LTM0LjUgNDcuNWwtMTMgMTdxLTE0IDEzIC03IDEzbDEwIC0zcTQwIC0yOSA2Mi41IC00NnQ2MiAtNTB0NjQgLTU4dDU4LjUgLTY1dDU1LjUgLTc3dDQ1LjUgLTg4dDM4IC0xMDN0MjMuNSAtMTE3dDEwLjUgLTEzNiBxMyAtMjU5IC0xMDggLTQ2NXQtMzEyIC0zMjF0LTQ1NiAtMTE1cS0xODUgMCAtMzUxIDc0dC0yODMuNSAxOTh0LTE4NCAyOTN0LTYwLjUgMzUzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZDE7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgNjQwcTAgMTgyIDcxIDM0OHQxOTEgMjg2dDI4NiAxOTF0MzQ4IDcxdDM0OCAtNzF0Mjg2IC0xOTF0MTkxIC0yODZ0NzEgLTM0OHQtNzEgLTM0OHQtMTkxIC0yODZ0LTI4NiAtMTkxdC0zNDggLTcxdC0zNDggNzF0LTI4NiAxOTF0LTE5MSAyODZ0LTcxIDM0OHpNNDQgNjQwcTAgLTE3MyA2Ny41IC0zMzF0MTgxLjUgLTI3MnQyNzIgLTE4MS41dDMzMSAtNjcuNXQzMzEgNjcuNXQyNzIgMTgxLjV0MTgxLjUgMjcydDY3LjUgMzMxIHQtNjcuNSAzMzF0LTE4MS41IDI3MnQtMjcyIDE4MS41dC0zMzEgNjcuNXQtMzMxIC02Ny41dC0yNzIgLTE4MS41dC0xODEuNSAtMjcydC02Ny41IC0zMzF6TTg3IDY0MHEwIDIwNSA5OCAzODVsNTcgLTMzcS0zMCAtNTYgLTQ5IC0xMTJsODIgLTI4cS0zNSAtMTAwIC0zNSAtMjEycTAgLTEwOSAzNiAtMjEybC04MyAtMjhxMjIgLTYwIDQ5IC0xMTJsLTU3IC0zM3EtOTggMTgwIC05OCAzODV6TTIwNiAyMTdsNTggMzRxMjkgLTQ5IDczIC05OSBsNjUgNTdxMTQ4IC0xNjggMzY4IC0yMTJsLTE3IC04NnE2NSAtMTIgMTIxIC0xM3YtNjZxLTIwOCA2IC0zODUgMTA5LjV0LTI4MyAyNzUuNXpNMjA3IDEwNjNxMTA2IDE3MiAyODIgMjc1LjV0Mzg1IDEwOS41di02NnEtNjUgLTIgLTEyMSAtMTNsMTcgLTg2cS0yMjAgLTQyIC0zNjggLTIxMWwtNjUgNTZxLTM4IC00MiAtNzMgLTk4ek00MTUgODA1cTMzIDkzIDk5IDE2OWwxODUgLTE2MnE1OSA2OCAxNDcgODZsLTQ4IDI0MHE0NCAxMCA5OCAxMCB0OTggLTEwbC00OCAtMjQwcTg4IC0xOCAxNDcgLTg2bDE4NSAxNjJxNjYgLTc2IDk5IC0xNjlsLTIzMyAtODBxMTQgLTQyIDE0IC04NXQtMTQgLTg1bDIzMiAtODBxLTMxIC05MiAtOTggLTE2OWwtMTg1IDE2MnEtNTcgLTY3IC0xNDcgLTg1bDQ4IC0yNDFxLTUyIC0xMCAtOTggLTEwdC05OCAxMGw0OCAyNDFxLTkwIDE4IC0xNDcgODVsLTE4NSAtMTYycS02NyA3NyAtOTggMTY5bDIzMiA4MHEtMTQgNDIgLTE0IDg1dDE0IDg1ek05MTggLTEwMiBxNTYgMSAxMjEgMTNsLTE3IDg2cTIyMCA0NCAzNjggMjEybDY1IC01N3E0NCA1MCA3MyA5OWw1OCAtMzRxLTEwNiAtMTcyIC0yODMgLTI3NS41dC0zODUgLTEwOS41djY2ek05MTggMTM4MnY2NnEyMDkgLTYgMzg1IC0xMDkuNXQyODIgLTI3NS41bC01NyAtMzNxLTM1IDU2IC03MyA5OGwtNjUgLTU2cS0xNDggMTY5IC0zNjggMjExbDE3IDg2cS01NiAxMSAtMTIxIDEzek0xNTE2IDQyOHEzNiAxMDMgMzYgMjEycTAgMTEyIC0zNSAyMTJsODIgMjggcS0xOSA1NiAtNDkgMTEybDU3IDMzcTk4IC0xODAgOTggLTM4NXQtOTggLTM4NWwtNTcgMzNxMjcgNTIgNDkgMTEyeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZDI7IiBkPSJNMCAxNjB2OTYwcTAgMTE5IDg0LjUgMjAzLjV0MjAzLjUgODQuNWg5NjBxMTE5IDAgMjAzLjUgLTg0LjV0ODQuNSAtMjAzLjV2LTk2MHEwIC0xMTkgLTg0LjUgLTIwMy41dC0yMDMuNSAtODQuNWgtOTYwcS0xMTkgMCAtMjAzLjUgODQuNXQtODQuNSAyMDMuNXpNMjU2IDIxOHEwIC00NSAyMCAtNzguNXQ1NCAtNTF0NzIgLTI1LjV0ODEgLThxMjI0IDAgMjI0IDE4OHEwIDY3IC00OCA5OXQtMTI2IDQ2cS0yNyA1IC01MS41IDIwLjUgdC0yNC41IDM5LjVxMCA0NCA0OSA1MnE3NyAxNSAxMjIgNzB0NDUgMTM0cTAgMjQgLTEwIDUycTM3IDkgNDkgMTN2MTI1cS03OCAtMjkgLTEzNSAtMjlxLTUwIDI5IC0xMTAgMjlxLTg2IDAgLTE0NSAtNTd0LTU5IC0xNDNxMCAtNTAgMjkuNSAtMTAydDczLjUgLTY3di0zcS0zOCAtMTcgLTM4IC04NXEwIC01MyA0MSAtNzd2LTNxLTExMyAtMzcgLTExMyAtMTM5ek0zODIgMjI1cTAgNjQgOTggNjRxMTAyIDAgMTAyIC02MXEwIC02NiAtOTMgLTY2IHEtMTA3IDAgLTEwNyA2M3pNMzk1IDY5M3EwIDkwIDc3IDkwcTM2IDAgNTUgLTI1LjV0MTkgLTYzLjVxMCAtODUgLTc0IC04NXEtNzcgMCAtNzcgODR6TTc1NSAxMDcycTAgLTM2IDI1IC02Mi41dDYwIC0yNi41dDU5LjUgMjd0MjQuNSA2MnEwIDM2IC0yNCA2My41dC02MCAyNy41dC02MC41IC0yN3QtMjQuNSAtNjR6TTc3MSAzNTBoMTM3cS0yIDI3IC0yIDgydjM4N3EwIDQ2IDIgNjloLTEzN3EzIC0yMyAzIC03MXYtMzkycTAgLTUwIC0zIC03NXogTTk2NiA3NzFxMzYgMyAzNyAzcTMgMCAxMSAtMC41dDEyIC0wLjV2LTJoLTJ2LTIxN3EwIC0zNyAyLjUgLTY0dDExLjUgLTU2LjV0MjQuNSAtNDguNXQ0My41IC0zMXQ2NiAtMTJxNjQgMCAxMDggMjR2MTIxcS0zMCAtMjEgLTY4IC0yMXEtNTMgMCAtNTMgODJ2MjI1aDUycTkgMCAyNi41IC0xdDI2LjUgLTF2MTE3aC0xMDVxMCA4MiAzIDEwMmgtMTQwcTQgLTI0IDQgLTU1di00N2gtNjB2LTExN3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWQzOyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik02OCA3cTAgMTY1IDE4MiAyMjV2NHEtNjcgNDEgLTY3IDEyNnEwIDEwOSA2MyAxMzd2NHEtNzIgMjQgLTExOS41IDEwOC41dC00Ny41IDE2NS41cTAgMTM5IDk1IDIzMS41dDIzNSA5Mi41cTk2IDAgMTc4IC00N3E5OCAwIDIxOCA0N3YtMjAycS0zNiAtMTIgLTc5IC0yMnExNiAtNDMgMTYgLTg0cTAgLTEyNyAtNzMgLTIxNi41dC0xOTcgLTExMi41cS00MCAtOCAtNTkuNSAtMjd0LTE5LjUgLTU4cTAgLTMxIDIyLjUgLTUxLjV0NTggLTMyIHQ3OC41IC0yMnQ4NiAtMjUuNXQ3OC41IC0zNy41dDU4IC02NHQyMi41IC05OC41cTAgLTMwNCAtMzYzIC0zMDRxLTY5IDAgLTEzMCAxMi41dC0xMTYgNDF0LTg3LjUgODJ0LTMyLjUgMTI3LjV6TTI3MiAxOHEwIC0xMDEgMTcyIC0xMDFxMTUxIDAgMTUxIDEwNXEwIDEwMCAtMTY1IDEwMHEtMTU4IDAgLTE1OCAtMTA0ek0yOTMgNzc1cTAgLTEzNSAxMjQgLTEzNXExMTkgMCAxMTkgMTM3cTAgNjEgLTMwIDEwMnQtODkgNDEgcS0xMjQgMCAtMTI0IC0xNDV6TTg3NSAxMzg5cTAgNTkgMzkuNSAxMDN0OTguNSA0NHE1OCAwIDk2LjUgLTQ0LjV0MzguNSAtMTAyLjV0LTM5IC0xMDEuNXQtOTYgLTQzLjVxLTU4IDAgLTk4IDQzLjV0LTQwIDEwMS41ek05MDEgMjIwcTQgNDUgNCAxMzR2NjA5cTAgOTQgLTQgMTI4aDIyMnEtNCAtMzMgLTQgLTEyNHYtNjEzcTAgLTg5IDQgLTEzNGgtMjIyek0xMjE3IDkwMXYxOTBoOTZ2NzZxMCA1NCAtNiA4OWgyMjdxLTYgLTQxIC02IC0xNjUgaDE3MXYtMTkwcS0xNSAwIC00My41IDJ0LTQyLjUgMmgtODV2LTM2NXEwIC0xMzEgODcgLTEzMXE2MSAwIDEwOSAzM3YtMTk2cS03MSAtMzkgLTE3NCAtMzlxLTYyIDAgLTEwNyAyMHQtNzAgNTB0LTM5LjUgNzh0LTE4LjUgOTJ0LTQgMTAzdjM1MWgydjRxLTcgMCAtMTkgMXQtMTggMXEtMjEgMCAtNTkgLTZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFkNDsiIGQ9Ik0wIDE2MHY5NjBxMCAxMTkgODQuNSAyMDMuNXQyMDMuNSA4NC41aDk2MHExMTkgMCAyMDMuNSAtODQuNXQ4NC41IC0yMDMuNXYtOTYwcTAgLTExOSAtODQuNSAtMjAzLjV0LTIwMy41IC04NC41aC05NjBxLTExOSAwIC0yMDMuNSA4NC41dC04NC41IDIwMy41ek0zNjggMTEzNWwzMjMgLTU4OXYtNDM1aDEzNHY0MzZsMzQzIDU4OGgtMTUwcS0yMSAtMzkgLTYzLjUgLTExOC41dC02OCAtMTI4LjV0LTU5LjUgLTExOC41dC02MCAtMTI4LjVoLTMgcS0yMSA0OCAtNDQuNSA5N3QtNTIgMTA1LjV0LTQ2LjUgOTJ0LTU0IDEwNC41dC00OSA5NWgtMTUweiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZDU7IiBob3Jpei1hZHYteD0iMTI4MCIgZD0iTTU3IDk1M3EwIDExOSA0Ni41IDIyN3QxMjQuNSAxODZ0MTg2IDEyNHQyMjYgNDZxMTU4IDAgMjkyLjUgLTc4dDIxMi41IC0yMTIuNXQ3OCAtMjkyLjV0LTc4IC0yOTJ0LTIxMi41IC0yMTJ0LTI5Mi41IC03OHEtNjQgMCAtMTMxIDE0cS0yMSA1IC0zMi41IDIzLjV0LTYuNSAzOS41cTUgMjAgMjMgMzEuNXQzOSA3LjVxNTEgLTEzIDEwOCAtMTNxOTcgMCAxODYgMzh0MTUzIDEwMnQxMDIgMTUzdDM4IDE4NnQtMzggMTg2dC0xMDIgMTUzIHQtMTUzIDEwMnQtMTg2IDM4dC0xODYgLTM4dC0xNTMgLTEwMnQtMTAyIC0xNTN0LTM4IC0xODZxMCAtMTE0IDUyIC0yMThxMTAgLTIwIDMuNSAtNDB0LTI1LjUgLTMwdC0zOS41IC0zdC0zMC41IDI2cS02NCAxMjMgLTY0IDI2NXpNMTEzLjUgMzguNXExMC41IDEyMS41IDI5LjUgMjE3dDU0IDE4NnQ2OSAxNTUuNXQ3NCAxMjVxNjEgOTAgMTMyIDE2NXEtMTYgMzUgLTE2IDc3cTAgODAgNTYuNSAxMzYuNXQxMzYuNSA1Ni41dDEzNi41IC01Ni41IHQ1Ni41IC0xMzYuNXQtNTcgLTEzNi41dC0xMzYgLTU2LjVxLTYwIDAgLTExMSAzNXEtNjIgLTY3IC0xMTUgLTE0NnEtMjQ3IC0zNzEgLTIwMiAtODU5cTEgLTIyIC0xMi41IC0zOC41dC0zNC41IC0xOC41aC01cS0yMCAwIC0zNSAxMy41dC0xNyAzMy41cS0xNCAxMjYgLTMuNSAyNDcuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWQ2OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0xOCAyNjRxMCAyNzUgMjUyIDQ2NnEtOCAxOSAtOCA1MnEwIDIwIDExIDQ5dDI0IDQ1cS0xIDIyIDcuNSA1M3QyMi41IDQzcTAgMTM5IDkyLjUgMjg4LjV0MjE3LjUgMjA5LjVxMTM5IDY2IDMyNCA2NnExMzMgMCAyNjYgLTU1cTQ5IC0yMSA5MCAtNDh0NzEgLTU2dDU1IC02OHQ0MiAtNzR0MzIuNSAtODQuNXQyNS41IC04OS41dDIyIC05OGwxIC01cTU1IC04MyA1NSAtMTUwcTAgLTE0IC05IC00MHQtOSAtMzhxMCAtMSAxLjUgLTMuNSB0My41IC01dDIgLTMuNXE3NyAtMTE0IDEyMC41IC0yMTQuNXQ0My41IC0yMDguNXEwIC00MyAtMTkuNSAtMTAwdC01NS41IC01N3EtOSAwIC0xOS41IDcuNXQtMTkgMTcuNXQtMTkgMjZ0LTE2IDI2LjV0LTEzLjUgMjZ0LTkgMTcuNXEtMSAxIC0zIDFsLTUgLTRxLTU5IC0xNTQgLTEzMiAtMjIzcTIwIC0yMCA2MS41IC0zOC41dDY5IC00MS41dDM1LjUgLTY1cS0yIC00IC00IC0xNnQtNyAtMThxLTY0IC05NyAtMzAyIC05N3EtNTMgMCAtMTEwLjUgOSB0LTk4IDIwdC0xMDQuNSAzMHEtMTUgNSAtMjMgN3EtMTQgNCAtNDYgNC41dC00MCAxLjVxLTQxIC00NSAtMTI3LjUgLTY1dC0xNjguNSAtMjBxLTM1IDAgLTY5IDEuNXQtOTMgOXQtMTAxIDIwLjV0LTc0LjUgNDB0LTMyLjUgNjRxMCA0MCAxMCA1OS41dDQxIDQ4LjVxMTEgMiA0MC41IDEzdDQ5LjUgMTJxNCAwIDE0IDJxMiAyIDIgNGwtMiAzcS00OCAxMSAtMTA4IDEwNS41dC03MyAxNTYuNWwtNSAzcS00IDAgLTEyIC0yMCBxLTE4IC00MSAtNTQuNSAtNzQuNXQtNzcuNSAtMzcuNWgtMXEtNCAwIC02IDQuNXQtNSA1LjVxLTIzIDU0IC0yMyAxMDB6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFkNzsiIGhvcml6LWFkdi14PSIyMDQ4IiBkPSJNMCA4NThxMCAxNjkgOTcuNSAzMTF0MjY0IDIyMy41dDM2My41IDgxLjVxMTc2IDAgMzMyLjUgLTY2dDI2MiAtMTgyLjV0MTM2LjUgLTI2MC41cS0zMSA0IC03MCA0cS0xNjkgMCAtMzExIC03N3QtMjIzLjUgLTIwOC41dC04MS41IC0yODcuNXEwIC03OCAyMyAtMTUycS0zNSAtMyAtNjggLTNxLTI2IDAgLTUwIDEuNXQtNTUgNi41dC00NC41IDd0LTU0LjUgMTAuNXQtNTAgMTAuNWwtMjUzIC0xMjdsNzIgMjE4cS0yOTAgMjAzIC0yOTAgNDkweiBNMzgwIDEwNzVxMCAtMzkgMzMgLTY0LjV0NzYgLTI1LjVxNDEgMCA2NiAyNC41dDI1IDY1LjV0LTI1IDY2dC02NiAyNXEtNDMgMCAtNzYgLTI1LjV0LTMzIC02NS41ek04MTYgNDA0cTAgMTQzIDgxLjUgMjY0dDIyMy41IDE5MS41dDMxMSA3MC41cTE2MSAwIDMwMyAtNzAuNXQyMjcuNSAtMTkydDg1LjUgLTI2My41cTAgLTExNyAtNjguNSAtMjIzLjV0LTE4NS41IC0xOTMuNWw1NSAtMTgxbC0xOTkgMTA5cS0xNTAgLTM3IC0yMTggLTM3IHEtMTY5IDAgLTMxMSA3MC41dC0yMjMuNSAxOTEuNXQtODEuNSAyNjR6TTg4OCAxMDc1cTAgLTM5IDMzIC02NC41dDc2IC0yNS41cTQxIDAgNjUuNSAyNC41dDI0LjUgNjUuNXQtMjQuNSA2NnQtNjUuNSAyNXEtNDMgMCAtNzYgLTI1LjV0LTMzIC02NS41ek0xMTYwIDU2OHEwIC0yOCAyMi41IC01MC41dDQ5LjUgLTIyLjVxNDAgMCA2NS41IDIydDI1LjUgNTFxMCAyOCAtMjUuNSA1MHQtNjUuNSAyMnEtMjcgMCAtNDkuNSAtMjIuNSB0LTIyLjUgLTQ5LjV6TTE1NTkgNTY4cTAgLTI4IDIyLjUgLTUwLjV0NDkuNSAtMjIuNXEzOSAwIDY1IDIydDI2IDUxcTAgMjggLTI2IDUwdC02NSAyMnEtMjcgMCAtNDkuNSAtMjIuNXQtMjIuNSAtNDkuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWQ4OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDUwOHEtMiA0MCAzMiA1OWwxNjY0IDk2MHExNSA5IDMyIDlxMjAgMCAzNiAtMTFxMzMgLTI0IDI3IC02NGwtMjU2IC0xNTM2cS01IC0yOSAtMzIgLTQ1cS0xNCAtOCAtMzEgLThxLTExIDAgLTI0IDVsLTQ1MyAxODVsLTI0MiAtMjk1cS0xOCAtMjMgLTQ5IC0yM3EtMTMgMCAtMjIgNHEtMTkgNyAtMzAuNSAyMy41dC0xMS41IDM2LjV2MzQ5bDg2NCAxMDU5bC0xMDY5IC05MjVsLTM5NSAxNjJxLTM3IDE0IC00MCA1NXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWQ5OyIgaG9yaXotYWR2LXg9IjE3OTIiIGQ9Ik0wIDUwOHEtMyAzOSAzMiA1OWwxNjY0IDk2MHEzNSAyMSA2OCAtMnEzMyAtMjQgMjcgLTY0bC0yNTYgLTE1MzZxLTUgLTI5IC0zMiAtNDVxLTE0IC04IC0zMSAtOHEtMTEgMCAtMjQgNWwtNTI3IDIxNWwtMjk4IC0zMjdxLTE4IC0yMSAtNDcgLTIxcS0xNCAwIC0yMyA0cS0xOSA3IC0zMCAyMy41dC0xMSAzNi41djQ1MmwtNDcyIDE5M3EtMzcgMTQgLTQwIDU1ek0yMDkgNTIybDMzNiAtMTM3bDg2MyA2MzlsLTQ3OCAtNzk3bDQ5MiAtMjAxIGwyMjEgMTMyM3oiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWRhOyIgZD0iTTAgODMydjQ0OHEwIDQyIDQwIDU5cTM5IDE3IDY5IC0xNGwxMzAgLTEyOXExMDcgMTAxIDI0NC41IDE1Ni41dDI4NC41IDU1LjVxMTU2IDAgMjk4IC02MXQyNDUgLTE2NHQxNjQgLTI0NXQ2MSAtMjk4dC02MSAtMjk4dC0xNjQgLTI0NXQtMjQ1IC0xNjR0LTI5OCAtNjFxLTE3MiAwIC0zMjcgNzIuNXQtMjY0IDIwNC41cS03IDEwIC02LjUgMjIuNXQ4LjUgMjAuNWwxMzcgMTM4cTEwIDkgMjUgOXExNiAtMiAyMyAtMTIgcTczIC05NSAxNzkgLTE0N3QyMjUgLTUycTEwNCAwIDE5OC41IDQwLjV0MTYzLjUgMTA5LjV0MTA5LjUgMTYzLjV0NDAuNSAxOTguNXQtNDAuNSAxOTguNXQtMTA5LjUgMTYzLjV0LTE2My41IDEwOS41dC0xOTguNSA0MC41cS05OCAwIC0xODggLTM1LjV0LTE2MCAtMTAxLjVsMTM3IC0xMzhxMzEgLTMwIDE0IC02OXEtMTcgLTQwIC01OSAtNDBoLTQ0OHEtMjYgMCAtNDUgMTl0LTE5IDQ1ek01MTIgNDgwdjY0cTAgMTQgOSAyM3QyMyA5aDIyNHYzNTIgcTAgMTQgOSAyM3QyMyA5aDY0cTE0IDAgMjMgLTl0OSAtMjN2LTQ0OHEwIC0xNCAtOSAtMjN0LTIzIC05aC0zMjBxLTE0IDAgLTIzIDl0LTkgMjN6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFkYjsiIGQ9Ik0wIDY0MHEwIDIwOSAxMDMgMzg1LjV0Mjc5LjUgMjc5LjV0Mzg1LjUgMTAzdDM4NS41IC0xMDN0Mjc5LjUgLTI3OS41dDEwMyAtMzg1LjV0LTEwMyAtMzg1LjV0LTI3OS41IC0yNzkuNXQtMzg1LjUgLTEwM3QtMzg1LjUgMTAzdC0yNzkuNSAyNzkuNXQtMTAzIDM4NS41ek0xMjggNjQwcTAgLTEzMCA1MSAtMjQ4LjV0MTM2LjUgLTIwNHQyMDQgLTEzNi41dDI0OC41IC01MXQyNDguNSA1MXQyMDQgMTM2LjV0MTM2LjUgMjA0dDUxIDI0OC41IHQtNTEgMjQ4LjV0LTEzNi41IDIwNHQtMjA0IDEzNi41dC0yNDguNSA1MXQtMjQ4LjUgLTUxdC0yMDQgLTEzNi41dC0xMzYuNSAtMjA0dC01MSAtMjQ4LjV6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFkYzsiIGhvcml6LWFkdi14PSIxNzkyIiBkPSJNNjIgMTMzOHEwIDI2IDEyIDQ4dDM2IDIycTQ2IDAgMTM4LjUgLTMuNXQxMzguNSAtMy41cTQyIDAgMTI2LjUgMy41dDEyNi41IDMuNXEyNSAwIDM3LjUgLTIydDEyLjUgLTQ4cTAgLTMwIC0xNyAtNDMuNXQtMzguNSAtMTQuNXQtNDkuNSAtNHQtNDMgLTEzcS0zNSAtMjEgLTM1IC0xNjBsMSAtMzIwcTAgLTIxIDEgLTMycTEzIC0zIDM5IC0zaDY5OXEyNSAwIDM4IDNxMSAxMSAxIDMybDEgMzIwcTAgMTM5IC0zNSAxNjAgcS0xOCAxMSAtNTguNSAxMi41dC02NiAxM3QtMjUuNSA0OS41cTAgMjYgMTIuNSA0OHQzNy41IDIycTQ0IDAgMTMyIC0zLjV0MTMyIC0zLjVxNDMgMCAxMjkgMy41dDEyOSAzLjVxMjUgMCAzNy41IC0yMnQxMi41IC00OHEwIC0zMCAtMTcuNSAtNDR0LTQwIC0xNC41dC01MS41IC0zdC00NCAtMTIuNXEtMzUgLTIzIC0zNSAtMTYxbDEgLTk0M3EwIC0xMTkgMzQgLTE0MHExNiAtMTAgNDYgLTEzLjV0NTMuNSAtNC41dDQxLjUgLTE1LjV0MTggLTQ0LjUgcTAgLTI2IC0xMiAtNDh0LTM2IC0yMnEtNDQgMCAtMTMyLjUgMy41dC0xMzMuNSAzLjVxLTQ0IDAgLTEzMiAtMy41dC0xMzIgLTMuNXEtMjQgMCAtMzcgMjAuNXQtMTMgNDUuNXEwIDMxIDE3IDQ2dDM5IDE3dDUxIDd0NDUgMTVxMzMgMjEgMzMgMTQwbC0xIDM5MXEwIDIxIC0xIDMxcS0xMyA0IC01MCA0aC02NzVxLTM4IDAgLTUxIC00cS0xIC0xMCAtMSAtMzFsLTEgLTM3MXEwIC0xNDIgMzcgLTE2NHExNiAtMTAgNDggLTEzdDU3IC0zLjUgdDQ1IC0xNXQyMCAtNDUuNXEwIC0yNiAtMTIuNSAtNDh0LTM2LjUgLTIycS00NyAwIC0xMzkuNSAzLjV0LTEzOC41IDMuNXEtNDMgMCAtMTI4IC0zLjV0LTEyNyAtMy41cS0yMyAwIC0zNS41IDIxdC0xMi41IDQ1cTAgMzAgMTUuNSA0NXQzNiAxNy41dDQ3LjUgNy41dDQyIDE1cTMzIDIzIDMzIDE0M2wtMSA1N3Y4MTNxMCAzIDAuNSAyNnQwIDM2LjV0LTEuNSAzOC41dC0zLjUgNDJ0LTYuNSAzNi41dC0xMSAzMS41dC0xNiAxOCBxLTE1IDEwIC00NSAxMnQtNTMgMnQtNDEgMTR0LTE4IDQ1eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZGQ7IiBob3Jpei1hZHYteD0iMTI4MCIgZD0iTTI0IDkyNnEwIDE2NiA4OCAyODZxODggMTE4IDIwOSAxNTlxMTExIDM3IDQxNyAzN2g0NzlxMjUgMCA0MyAtMTh0MTggLTQzdi03M3EwIC0yOSAtMTguNSAtNjF0LTQyLjUgLTMycS01MCAwIC01NCAtMXEtMjYgLTYgLTMyIC0zMXEtMyAtMTEgLTMgLTY0di0xMTUycTAgLTI1IC0xOCAtNDN0LTQzIC0xOGgtMTA4cS0yNSAwIC00MyAxOHQtMTggNDN2MTIxOGgtMTQzdi0xMjE4cTAgLTI1IC0xNy41IC00M3QtNDMuNSAtMThoLTEwOCBxLTI2IDAgLTQzLjUgMTh0LTE3LjUgNDN2NDk2cS0xNDcgMTIgLTI0NSA1OXEtMTI2IDU4IC0xOTIgMTc5cS02NCAxMTcgLTY0IDI1OXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWRlOyIgZD0iTTAgNzM2djY0cTAgNDAgMjggNjh0NjggMjhoMzIwcTQwIDAgNjggLTI4dDI4IC02OHYtNjRxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0zMjBxLTQwIDAgLTY4IDI4dC0yOCA2OHpNMTI4IC05NnY2NzJoMjU2di02NzJxMCAtMTQgLTkgLTIzdC0yMyAtOWgtMTkycS0xNCAwIC0yMyA5dC05IDIzek0xMjggOTYwdjQxNnEwIDE0IDkgMjN0MjMgOWgxOTJxMTQgMCAyMyAtOXQ5IC0yM3YtNDE2aC0yNTZ6TTUxMiAyMjR2NjRxMCA0MCAyOCA2OCB0NjggMjhoMzIwcTQwIDAgNjggLTI4dDI4IC02OHYtNjRxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0zMjBxLTQwIDAgLTY4IDI4dC0yOCA2OHpNNjQwIDY0aDI1NnYtMTYwcTAgLTE0IC05IC0yM3QtMjMgLTloLTE5MnEtMTQgMCAtMjMgOXQtOSAyM3YxNjB6TTY0MCA0NDh2OTI4cTAgMTQgOSAyM3QyMyA5aDE5MnExNCAwIDIzIC05dDkgLTIzdi05MjhoLTI1NnpNMTAyNCA5OTJ2NjRxMCA0MCAyOCA2OHQ2OCAyOGgzMjBxNDAgMCA2OCAtMjggdDI4IC02OHYtNjRxMCAtNDAgLTI4IC02OHQtNjggLTI4aC0zMjBxLTQwIDAgLTY4IDI4dC0yOCA2OHpNMTE1MiAtOTZ2OTI4aDI1NnYtOTI4cTAgLTE0IC05IC0yM3QtMjMgLTloLTE5MnEtMTQgMCAtMjMgOXQtOSAyM3pNMTE1MiAxMjE2djE2MHEwIDE0IDkgMjN0MjMgOWgxOTJxMTQgMCAyMyAtOXQ5IC0yM3YtMTYwaC0yNTZ6IiAvPgo8Z2x5cGggdW5pY29kZT0iJiN4ZjFlMDsiIGQ9Ik0wIDY0MHEwIDEzMyA5My41IDIyNi41dDIyNi41IDkzLjVxMTI2IDAgMjE4IC04NmwzNjAgMTgwcS0yIDIyIC0yIDM0cTAgMTMzIDkzLjUgMjI2LjV0MjI2LjUgOTMuNXQyMjYuNSAtOTMuNXQ5My41IC0yMjYuNXQtOTMuNSAtMjI2LjV0LTIyNi41IC05My41cS0xMjYgMCAtMjE4IDg2bC0zNjAgLTE4MHEyIC0yMiAyIC0zNHQtMiAtMzRsMzYwIC0xODBxOTIgODYgMjE4IDg2cTEzMyAwIDIyNi41IC05My41dDkzLjUgLTIyNi41IHQtOTMuNSAtMjI2LjV0LTIyNi41IC05My41dC0yMjYuNSA5My41dC05My41IDIyNi41cTAgMTIgMiAzNGwtMzYwIDE4MHEtOTIgLTg2IC0yMTggLTg2cS0xMzMgMCAtMjI2LjUgOTMuNXQtOTMuNSAyMjYuNXoiIC8+CjxnbHlwaCB1bmljb2RlPSImI3hmMWUxOyIgZD0iTTAgMTYwdjk2MHEwIDExOSA4NC41IDIwMy41dDIwMy41IDg0LjVoOTYwcTExOSAwIDIwMy41IC04NC41dDg0LjUgLTIwMy41di05NjBxMCAtMTE5IC04NC41IC0yMDMuNXQtMjAzLjUgLTg0LjVoLTk2MHEtMTE5IDAgLTIwMy41IDg0LjV0LTg0LjUgMjAzLjV6TTI1NiA2NDBxMCAtODggNjIuNSAtMTUwLjV0MTUwLjUgLTYyLjVxODMgMCAxNDUgNTdsMjQxIC0xMjBxLTIgLTE2IC0yIC0yM3EwIC04OCA2MyAtMTUwLjV0MTUxIC02Mi41IHQxNTAuNSA2Mi41dDYyLjUgMTUwLjV0LTYyLjUgMTUxdC0xNTAuNSA2M3EtODQgMCAtMTQ1IC01OGwtMjQxIDEyMHEyIDE2IDIgMjN0LTIgMjNsMjQxIDEyMHE2MSAtNTggMTQ1IC01OHE4OCAwIDE1MC41IDYzdDYyLjUgMTUxdC02Mi41IDE1MC41dC0xNTAuNSA2Mi41dC0xNTEgLTYyLjV0LTYzIC0xNTAuNXEwIC03IDIgLTIzbC0yNDEgLTEyMHEtNjIgNTcgLTE0NSA1N3EtODggMCAtMTUwLjUgLTYyLjV0LTYyLjUgLTE1MC41eiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZTI7IiBob3Jpei1hZHYteD0iMTc5MiIgZD0iTTAgNDQ4cTAgMTQzIDU1LjUgMjczLjV0MTUwIDIyNXQyMjUgMTUwdDI3My41IDU1LjVxMTgyIDAgMzQzIC04OWw2NCA2NHExOSAxOSA0NS41IDE5dDQ1LjUgLTE5bDY4IC02OGwyNDMgMjQ0bDQ2IC00NmwtMjQ0IC0yNDNsNjggLTY4cTE5IC0xOSAxOSAtNDUuNXQtMTkgLTQ1LjVsLTY0IC02NHE4OSAtMTYxIDg5IC0zNDNxMCAtMTQzIC01NS41IC0yNzMuNXQtMTUwIC0yMjV0LTIyNSAtMTUwdC0yNzMuNSAtNTUuNXQtMjczLjUgNTUuNSB0LTIyNSAxNTB0LTE1MCAyMjV0LTU1LjUgMjczLjV6TTE3MCA2MTVxMTAgLTI0IDM1IC0zNHExMyAtNSAyNCAtNXE0MiAwIDYwIDQwcTM0IDg0IDk4LjUgMTQ4LjV0MTQ4LjUgOTguNXEyNSAxMSAzNSAzNXQwIDQ5dC0zNCAzNXQtNDkgMHEtMTA4IC00NCAtMTkxIC0xMjd0LTEyNyAtMTkxcS0xMCAtMjUgMCAtNDl6TTEzNzYgMTQ3MnEwIDEzIDkgMjNxMTAgOSAyMyA5dDIzIC05bDkwIC05MXExMCAtOSAxMCAtMjIuNXQtMTAgLTIyLjUgcS0xMCAtMTAgLTIyIC0xMHEtMTMgMCAtMjMgMTBsLTkxIDkwcS05IDEwIC05IDIzek0xNTM2IDE0MDh2OTZxMCAxNCA5IDIzdDIzIDl0MjMgLTl0OSAtMjN2LTk2cTAgLTE0IC05IC0yM3QtMjMgLTl0LTIzIDl0LTkgMjN6TTE2MDUgMTI0Mi41cTAgMTMuNSAxMCAyMi41cTkgMTAgMjIuNSAxMHQyMi41IC0xMGw5MSAtOTBxOSAtMTAgOSAtMjN0LTkgLTIzcS0xMSAtOSAtMjMgLTl0LTIzIDlsLTkwIDkxcS0xMCA5IC0xMCAyMi41eiBNMTYwNSAxMzgxLjVxMCAxMy41IDEwIDIyLjVsOTAgOTFxMTAgOSAyMyA5dDIzIC05cTkgLTEwIDkgLTIzdC05IC0yM2wtOTEgLTkwcS0xMCAtMTAgLTIyIC0xMHEtMTMgMCAtMjMgMTBxLTEwIDkgLTEwIDIyLjV6TTE2MzIgMTMxMnEwIDE0IDkgMjN0MjMgOWg5NnExNCAwIDIzIC05dDkgLTIzdC05IC0yM3QtMjMgLTloLTk2cS0xNCAwIC0yMyA5dC05IDIzeiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZTM7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZTQ7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZTU7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZTY7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZTc7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZTg7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZTk7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZWE7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZWI7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZWM7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZWQ7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGYxZWU7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIHVuaWNvZGU9IiYjeGY1MDA7IiBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIGhvcml6LWFkdi14PSIxNzkyIiAvPgo8Z2x5cGggaG9yaXotYWR2LXg9IjE3OTIiIC8+CjxnbHlwaCBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIGhvcml6LWFkdi14PSIxNzkyIiAvPgo8Z2x5cGggaG9yaXotYWR2LXg9IjE3OTIiIC8+CjxnbHlwaCBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIGhvcml6LWFkdi14PSIxNzkyIiAvPgo8Z2x5cGggaG9yaXotYWR2LXg9IjE3OTIiIC8+CjxnbHlwaCBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIGhvcml6LWFkdi14PSIxNzkyIiAvPgo8Z2x5cGggaG9yaXotYWR2LXg9IjE3OTIiIC8+CjxnbHlwaCBob3Jpei1hZHYteD0iMTc5MiIgLz4KPGdseXBoIGhvcml6LWFkdi14PSIxNzkyIiAvPgo8Z2x5cGggaG9yaXotYWR2LXg9IjE3OTIiIC8+CjwvZm9udD4KPC9kZWZzPjwvc3ZnPiA=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/font/fontawesome-webfont.ttf</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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B4AAAAcAAAAGAAAABgAAAAOAAAAHAAAABoAAAAYAAAAEgAAABwAAAAYAAAAGgAAABgAAAAaAAAAGAAAABYAAAAWAAAAFAAAABgAAAAaAACwEAABfBgAAAAaAAAAHgAAABYAAAAYAAAAHAAAABoAAAAYAAAIHAAAABwAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGgAAVBwAAAAWAAAUHAAAABgAAAAeAAAAGgAAQB4AAAAaAAHMHAAABBwAAAAWAAAQGAAAABgAAAAYAAAAHAAAABwAADwcAAAAGAAAABoAAAAaAABsHAABABgAAAAYAAAAGAAAABoAAIAeAAAAEAAAABAAAAAKAAEACgAAABoAAAAQAAAAEAAAABAAAAAcAAAAGAAAABgAAAAcAACgHAAAABwAAAAcAAAADgAABBwAAAAaAAAAHAAAABAAAAAcAAAAHgAAAB4AAAAWAAAAFgAAABwAAAAaAAAAHgAAABYAAAAYAAAAFgAAABYAAAAeAAEAHAAAAB4AAAAaAAEAGAAAABgAAAAQAAC0EAAANBIAATQSAAE0CgAAtAoAADQSAAE0EgABNB4AAAAeAAAAEgAAAAwAAAAYAAAAGgAAABoAAAAYgAAAGAAAABwAAAAaAAAAGgAAAB4AAAAcAAAAHAAAABgAAAAYAAAAGAAAAB4AAAAeAAAAHAABABwAAQAaAAA0HgAAtBwAAAAaAAAIFgAACBoAAAAQAAAAGgAAABAAAYAKAAAACgABiBgAABQYAAAUHgAABBoAAAASAAAAFgAANBQAAAAaAAAAFgAADBoAAJAcAAAAGAAAABgAAAAYAAAAGAAAABYAAAAcAAAwHAAAABIAAAAYAAAAFgAAAAYAAAAYAAAAGAAAABwAANgYAAAAFgAAABAAAAwQAAAMGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAQAAAAEAAAABAAANAOCAAAEAwAEBQAAAAcAAAAFAAA4BgAAAAYAAAAGgAAiBoAAIgcAACIHAAAiBgAAIgYAACIGgAAABoAAAAYAAAAGAAAbBYAABQYAAAAHAAAABwAAQAWAAAAGAAAABgAAAAYAAAAFgAAABgAAAAQAAE4GAAAAAwAAAwMAAAMHAABABwAAAAWAAAAGgAAABYAAAAYAAAsGAAAABgAAAAaAAAAGAAAA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AG4AdABBAHcAZQBzAG8AbQBlADoAIAAyADAAMQAyAEYAbwBuAHQAQQB3AGUAcwBvAG0AZQAgAFIAZQBnAHUAbABhAHIAVgBlAHIAcwBpAG8AbgAgADQALgAxAC4AMAAgADIAMAAxADMARgBvAG4AdABBAHcAZQBzAG8AbQBlAFAAbABlAGEAcwBlACAAcgBlAGYAZQByACAAdABvACAAdABoAGUAIABDAG8AcAB5AHIAaQBnAGgAdAAgAHMAZQBjAHQAaQBvAG4AIABmAG8AcgAgAHQAaABlACAAZgBvAG4AdAAgAHQAcgBhAGQAZQBtAGEAcgBrACAAYQB0AHQAcgBpAGIAdQB0AGkAbwBuACAAbgBvAHQAaQBjAGUAcwAuAEYAbwByAHQAIABBAHcAZQBzAG8AbQBlAEQAYQB2AGUAIABHAGEAbgBkAHkAaAB0AHQAcAA6AC8ALwBmAG8AbgB0AGEAdwBlAHMAbwBtAGUALgBpAG8AaAB0AHQAcAA6AC8ALwBmAG8AbgB0AGEAdwBlAHMAbwBtAGUALgBpAG8ALwBsAGkAYwBlAG4AcwBlAC8AVwBlAGIAZgBvAG4AdAAgADEALgAwAFcAZQBkACAATQBhAHkAIAAxADQAIAAxADUAOgA0ADEAOgAyADkAIAAyADAAMQA0AAIAAAAAAAD/egBaAAAAAAAAAAAAAAAAAAAAAAAAAAAB8AAAAAEAAgADAQIAjgCLAIoAjQCQAJEBAwEEAQUBBgEHAQgBCQEKAQsBDAENAQ4BDwCMAJIAjwEQAREBEgETARQBFQEWARcBGAEZARoBGwEcAR0BHgEfASABIQEiASMBJAElASYBJwEoASkBKgErASwBLQEuAS8BMAExATIBMwE0ATUBNgE3ATgBOQE6ATsBPAE9AT4BPwFAAUEBQgFDAUQBRQFGAUcBSAFJAUoBSwFMAU0BTgFPAVABUQFSAVMBVAFVAVYBVwFYAVkBWgFbAVwBXQFeAV8BYAFhAWIBYwFkAWUBZgFnAWgBaQFqAWsBbAFtAW4BbwFwAXEADgDvAA0BcgFzAXQBdQF2AXcBeAF5AXoBewF8AX0BfgF/AYABgQGCAYMBhAGFAYYBhwGIAYkBigGLAYwBjQGOAY8BkAGRAZIBkwGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaEBogGjAaQBpQGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAbMBtAG1AbYBtwG4AbkBugG7AbwBvQG+Ab8BwAHBAcIBwwHEAcUBxgHHAcgByQHKAcsBzAHNAc4BzwHQAdEB0gHTAdQB1QHWAdcB2AHZAdoB2wHcAd0B3gHfAeAB4QHiAeMB5AHlAeYB5wHoAekB6gHrAewB7QHuAe8B8AHxAfIB8wH0AfUB9gH3AfgB+QH6AfsB/AH9Af4B/wIAAgECAgIDAgQCBQIGAgcCCAIJAgoCCwIMAg0CDgIPAhACEQISAhMCFAIVAhYCFwAiAhgCGQIaAhsCHAIdAh4CHwIgAiECIgIjAiQCJQImAicCKAIpAioCKwIsAi0CLgIvAjACMQIyAjMCNAI1AjYCNwI4AjkCOgI7AjwCPQI+Aj8CQAJBAkICQwJEAkUCRgJHAkgCSQJKAksCTAJNAk4CTwJQAlECUgJTAlQCVQJWAlcCWAJZAloCWwJcAl0CXgJfAmACYQJiANICYwJkAmUCZgJnAmgCaQJqAmsCbAJtAm4CbwJwAnECcgJzAnQCdQJ2AncCeAJ5AnoCewJ8An0CfgJ/AoACgQKCAoMChAKFAoYChwKIAokCigKLAowCjQKOAo8CkAKRApICkwKUApUClgKXApgCmQKaApsCnAKdAp4CnwKgAqECogKjAqQCpQKmAqcCqAKpAqoCqwKsAq0CrgKvArACsQKyArMCtAK1ArYCtwK4ArkCugK7ArwCvQK+Ar8CwALBAsICwwLEAsUCxgLHAsgCyQLKAssCzALNAs4CzwLQAJQC0QLSAtMC1ALVAtYC1wLYAtkC2gLbAtwC3QLeB3VuaTAwQTAHdW5pMjAwMAd1bmkyMDAxB3VuaTIwMDIHdW5pMjAwMwd1bmkyMDA0B3VuaTIwMDUHdW5pMjAwNgd1bmkyMDA3B3VuaTIwMDgHdW5pMjAwOQd1bmkyMDBBB3VuaTIwMkYHdW5pMjA1Rgd1bmkyNUZDBWdsYXNzBW11c2ljBnNlYXJjaAhlbnZlbG9wZQVoZWFydARzdGFyCnN0YXJfZW1wdHkEdXNlcgRmaWxtCHRoX2xhcmdlAnRoB3RoX2xpc3QCb2sGcmVtb3ZlB3pvb21faW4Iem9vbV9vdXQDb2ZmBnNpZ25hbANjb2cFdHJhc2gEaG9tZQhmaWxlX2FsdAR0aW1lBHJvYWQMZG93bmxvYWRfYWx0CGRvd25sb2FkBnVwbG9hZAVpbmJveAtwbGF5X2NpcmNsZQZyZXBlYXQHcmVmcmVzaAhsaXN0X2FsdARsb2NrBGZsYWcKaGVhZHBob25lcwp2b2x1bWVfb2ZmC3ZvbHVtZV9kb3duCXZvbHVtZV91cAZxcmNvZGUHYmFyY29kZQN0YWcEdGFncwRib29rCGJvb2ttYXJrBXByaW50BmNhbWVyYQRmb250BGJvbGQGaXRhbGljC3RleHRfaGVpZ2h0CnRleHRfd2lkdGgKYWxpZ25fbGVmdAxhbGlnbl9jZW50ZXILYWxpZ25fcmlnaHQNYWxpZ25fanVzdGlmeQRsaXN0C2luZGVudF9sZWZ0DGluZGVudF9yaWdodA5mYWNldGltZV92aWRlbwdwaWN0dXJlBnBlbmNpbAptYXBfbWFya2VyBmFkanVzdAR0aW50BGVkaXQFc2hhcmUFY2hlY2sEbW92ZQ1zdGVwX2JhY2t3YXJkDWZhc3RfYmFja3dhcmQIYmFja3dhcmQEcGxheQVwYXVzZQRzdG9wB2ZvcndhcmQMZmFzdF9mb3J3YXJkDHN0ZXBfZm9yd2FyZAVlamVjdAxjaGV2cm9uX2xlZnQNY2hldnJvbl9yaWdodAlwbHVzX3NpZ24KbWludXNfc2lnbgtyZW1vdmVfc2lnbgdva19zaWduDXF1ZXN0aW9uX3NpZ24JaW5mb19zaWduCnNjcmVlbnNob3QNcmVtb3ZlX2NpcmNsZQlva19jaXJjbGUKYmFuX2NpcmNsZQphcnJvd19sZWZ0C2Fycm93X3JpZ2h0CGFycm93X3VwCmFycm93X2Rvd24Jc2hhcmVfYWx0C3Jlc2l6ZV9mdWxsDHJlc2l6ZV9zbWFsbBBleGNsYW1hdGlvbl9zaWduBGdpZnQEbGVhZgRmaXJlCGV5ZV9vcGVuCWV5ZV9jbG9zZQx3YXJuaW5nX3NpZ24FcGxhbmUIY2FsZW5kYXIGcmFuZG9tB2NvbW1lbnQGbWFnbmV0CmNoZXZyb25fdXAMY2hldnJvbl9kb3duB3JldHdlZXQNc2hvcHBpbmdfY2FydAxmb2xkZXJfY2xvc2ULZm9sZGVyX29wZW4PcmVzaXplX3ZlcnRpY2FsEXJlc2l6ZV9ob3Jpem9udGFsCWJhcl9jaGFydAx0d2l0dGVyX3NpZ24NZmFjZWJvb2tfc2lnbgxjYW1lcmFfcmV0cm8Da2V5BGNvZ3MIY29tbWVudHMNdGh1bWJzX3VwX2FsdA90aHVtYnNfZG93bl9hbHQJc3Rhcl9oYWxmC2hlYXJ0X2VtcHR5B3NpZ25vdXQNbGlua2VkaW5fc2lnbgdwdXNocGluDWV4dGVybmFsX2xpbmsGc2lnbmluBnRyb3BoeQtnaXRodWJfc2lnbgp1cGxvYWRfYWx0BWxlbW9uBXBob25lC2NoZWNrX2VtcHR5DmJvb2ttYXJrX2VtcHR5CnBob25lX3NpZ24HdHdpdHRlcghmYWNlYm9vawZnaXRodWIGdW5sb2NrC2NyZWRpdF9jYXJkA3JzcwNoZGQIYnVsbGhvcm4EYmVsbAtjZXJ0aWZpY2F0ZQpoYW5kX3JpZ2h0CWhhbmRfbGVmdAdoYW5kX3VwCWhhbmRfZG93bhFjaXJjbGVfYXJyb3dfbGVmdBJjaXJjbGVfYXJyb3dfcmlnaHQPY2lyY2xlX2Fycm93X3VwEWNpcmNsZV9hcnJvd19kb3duBWdsb2JlBndyZW5jaAV0YXNrcwZmaWx0ZXIJYnJpZWZjYXNlCmZ1bGxzY3JlZW4FZ3JvdXAEbGluawVjbG91ZAZiZWFrZXIDY3V0BGNvcHkKcGFwZXJfY2xpcARzYXZlCnNpZ25fYmxhbmsHcmVvcmRlcgJ1bAJvbA1zdHJpa2V0aHJvdWdoCXVuZGVybGluZQV0YWJsZQVtYWdpYwV0cnVjawlwaW50ZXJlc3QOcGludGVyZXN0X3NpZ24QZ29vZ2xlX3BsdXNfc2lnbgtnb29nbGVfcGx1cwVtb25leQpjYXJldF9kb3duCGNhcmV0X3VwCmNhcmV0X2xlZnQLY2FyZXRfcmlnaHQHY29sdW1ucwRzb3J0CXNvcnRfZG93bgdzb3J0X3VwDGVudmVsb3BlX2FsdAhsaW5rZWRpbgR1bmRvBWxlZ2FsCWRhc2hib2FyZAtjb21tZW50X2FsdAxjb21tZW50c19hbHQEYm9sdAdzaXRlbWFwCHVtYnJlbGxhBXBhc3RlCmxpZ2h0X2J1bGIIZXhjaGFuZ2UOY2xvdWRfZG93bmxvYWQMY2xvdWRfdXBsb2FkB3VzZXJfbWQLc3RldGhvc2NvcGUIc3VpdGNhc2UIYmVsbF9hbHQGY29mZmVlBGZvb2QNZmlsZV90ZXh0X2FsdAhidWlsZGluZwhob3NwaXRhbAlhbWJ1bGFuY2UGbWVka2l0C2ZpZ2h0ZXJfamV0BGJlZXIGaF9zaWduBGYwZmURZG91YmxlX2FuZ2xlX2xlZnQSZG91YmxlX2FuZ2xlX3JpZ2h0D2RvdWJsZV9hbmdsZV91cBFkb3VibGVfYW5nbGVfZG93bgphbmdsZV9sZWZ0C2FuZ2xlX3JpZ2h0CGFuZ2xlX3VwCmFuZ2xlX2Rvd24HZGVza3RvcAZsYXB0b3AGdGFibGV0DG1vYmlsZV9waG9uZQxjaXJjbGVfYmxhbmsKcXVvdGVfbGVmdAtxdW90ZV9yaWdodAdzcGlubmVyBmNpcmNsZQVyZXBseQpnaXRodWJfYWx0EGZvbGRlcl9jbG9zZV9hbHQPZm9sZGVyX29wZW5fYWx0CmV4cGFuZF9hbHQMY29sbGFwc2VfYWx0BXNtaWxlBWZyb3duA21laAdnYW1lcGFkCGtleWJvYXJkCGZsYWdfYWx0DmZsYWdfY2hlY2tlcmVkCHRlcm1pbmFsBGNvZGUJcmVwbHlfYWxsD3N0YXJfaGFsZl9lbXB0eQ5sb2NhdGlvbl9hcnJvdwRjcm9wCWNvZGVfZm9yawZ1bmxpbmsEXzI3OQtleGNsYW1hdGlvbgtzdXBlcnNjcmlwdAlzdWJzY3JpcHQEXzI4MwxwdXp6bGVfcGllY2UKbWljcm9waG9uZQ5taWNyb3Bob25lX29mZgZzaGllbGQOY2FsZW5kYXJfZW1wdHkRZmlyZV9leHRpbmd1aXNoZXIGcm9ja2V0Bm1heGNkbhFjaGV2cm9uX3NpZ25fbGVmdBJjaGV2cm9uX3NpZ25fcmlnaHQPY2hldnJvbl9zaWduX3VwEWNoZXZyb25fc2lnbl9kb3duBWh0bWw1BGNzczMGYW5jaG9yCnVubG9ja19hbHQIYnVsbHNleWUTZWxsaXBzaXNfaG9yaXpvbnRhbBFlbGxpcHNpc192ZXJ0aWNhbARfMzAzCXBsYXlfc2lnbgZ0aWNrZXQObWludXNfc2lnbl9hbHQLY2hlY2tfbWludXMIbGV2ZWxfdXAKbGV2ZWxfZG93bgpjaGVja19zaWduCWVkaXRfc2lnbgRfMzEyCnNoYXJlX3NpZ24HY29tcGFzcwhjb2xsYXBzZQxjb2xsYXBzZV90b3AEXzMxNwNldXIDZ2JwA3VzZANpbnIDanB5A3J1YgNrcncDYnRjBGZpbGUJZmlsZV90ZXh0EHNvcnRfYnlfYWxwaGFiZXQEXzMyORJzb3J0X2J5X2F0dHJpYnV0ZXMWc29ydF9ieV9hdHRyaWJ1dGVzX2FsdA1zb3J0X2J5X29yZGVyEXNvcnRfYnlfb3JkZXJfYWx0BF8zMzQEXzMzNQx5b3V0dWJlX3NpZ24HeW91dHViZQR4aW5nCXhpbmdfc2lnbgx5b3V0dWJlX3BsYXkHZHJvcGJveA1zdGFja2V4Y2hhbmdlCWluc3RhZ3JhbQZmbGlja3IDYWRuBGYxNzEOYml0YnVja2V0X3NpZ24GdHVtYmxyC3R1bWJscl9zaWduD2xvbmdfYXJyb3dfZG93bg1sb25nX2Fycm93X3VwD2xvbmdfYXJyb3dfbGVmdBBsb25nX2Fycm93X3JpZ2h0B3dpbmRvd3MHYW5kcm9pZAVsaW51eAdkcmliYmxlBXNreXBlCmZvdXJzcXVhcmUGdHJlbGxvBmZlbWFsZQRtYWxlBmdpdHRpcANzdW4EXzM2NgdhcmNoaXZlA2J1ZwJ2awV3ZWlibwZyZW5yZW4EXzM3Mg5zdGFja19leGNoYW5nZQRfMzc0FWFycm93X2NpcmNsZV9hbHRfbGVmdARfMzc2DmRvdF9jaXJjbGVfYWx0BF8zNzgMdmltZW9fc3F1YXJlBF8zODANcGx1c19zcXVhcmVfbwRfMzgyBF8zODMEXzM4NARfMzg1BF8zODYEXzM4NwRfMzg4BF8zODkHdW5pRjFBMARmMWExBF8zOTIEXzM5MwRmMWE0BF8zOTUEXzM5NgRfMzk3BF8zOTgEXzM5OQRfNDAwBGYxYWIEXzQwMgRfNDAzBF80MDQHdW5pRjFCMQRfNDA2BF80MDcEXzQwOARfNDA5BF80MTAEXzQxMQRfNDEyBF80MTMEXzQxNARfNDE1BF80MTYEXzQxNwRfNDE4BF80MTkHdW5pRjFDMAd1bmlGMUMxBF80MjIEXzQyMwRfNDI0BF80MjUEXzQyNgRfNDI3BF80MjgEXzQyOQRfNDMwBF80MzEEXzQzMgRfNDMzBF80MzQHdW5pRjFEMAd1bmlGMUQxB3VuaUYxRDIEXzQzOARfNDM5B3VuaUYxRDUHdW5pRjFENgd1bmlGMUQ3BF80NDMEXzQ0NARfNDQ1BF80NDYEXzQ0NwRfNDQ4BF80NDkHdW5pRjFFMARfNDUxBF80NTIEXzQ1MwRfNDU0BF80NTUEXzQ1NgRfNDU3BF80NTgEXzQ1OQRfNDYwBF80NjEEXzQ2MgRfNDYzBF80NjQEXzQ2NgRfNDY3BF80NjgEXzQ2OQRfNDcwBF80NzEEXzQ3MgRfNDczBF80NzQEXzQ3NQRfNDc2BF80NzcEXzQ3OARfNDc5ALgB/4WwAY0AS7AIUFixAQGOWbFGBitYIbAQWUuwFFJYIbCAWR2wBitcWFmwFCsAAAABU3PG6QAA]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/font/fontawesome-webfont.woff</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/font/FontAwesome.otf</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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BgAAAASAAAAHAAAABgAAAAaAAAAGAAAABoAAAAYAAAAFgAAABYAAAAUAAAAGAAAABoAALAQAAF8GAAAABoAAAAeAAAAFgAAABgAAAAcAAAAGgAAABgD//wcAAAAHAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAaAABUHAAAABYAAAAcAAAAGAAAABwAAAAcAAAAHAAAAB4AAAAaAABAHgAAABoAAZgcAAAAHAAAABYAABAYAAAAGAAAABgAAAAcAAAAHAAAPBwAAAAYAAAAGgAAABoAAGwcAAEAGAAAABgAAAAYAAAAGgAAgB4AAAAQAAAAEAAAAAoAAQAKAAAAGgAAABAAAAAQAAAAEAAAABwAAAAYAAAAGAAAABwAAKAcAAAAHAAAABwAAAAOAAAAHAAAABoAAAAcAAAAEAAAABwAAAAeAAAAHgAAABYAAAAWAAAAHAAAABoAAAAeAAAAFgAAABgAAAAWAAAAFgAAAB4AAQAcAAAAHgAAABoAAQAYAAAAGAAAABAAALQQAAA0EgABNBIAATQKAAC0CgAANBIAATQSAAE0HgAAAB4AAAASAAAADAAAABgAAAAaAAAAGgAAABiAAAAYAAAAHAAAABoAAAAaAAAAHgAAABwAAAAcAAAAGAAAABgAAAAYAAAAHgAAAB4AAAAcAAEAHAABABoAADQeAAC0HAAAABoAAAAWAAAAGgAAABAAAAAaAAAACgAAAAoAAYgYAAAUGAAAFB4AAAAaAAAAEgAAABYAADQUAAAAGgAAABYAAAAaAACAHAAAABgAAAAYAAAAGAAAABgAAAAWAAAAHAAAMBwAAAASAAAAGAAAABYAAAAGAAAAGAAAABgAAAAcAADUGAAAABYAAAAQAAAAEAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAEAAAABAAAAAQAAC0DggAABAMAAAUAAAAHAAAABQAAOAYAAAAGAAAABoAAHwaAAB8HAAAfBwAAHwYAAB8GAAAfBoAAAAaAAAAGAAAABgAAGwWAAAAGAAAABwAAAAcAAEAFgAAABgAAAAYAAAAGAAAABYAAAAYAAAAEAABOBgAAAAMAAAADAAAABwAAQAcAAAAFgAAABoAAAAWAAAAGAAAGBgAAAAYAAAAGgP//BgAAAAUAAAAEAAAABgAAAAcAACoGAAAABwAAQAaAACAHgP//BwAAAAYAAAAFgAAABQAAFQYAAAAGAAAABgAAAAYAAAAGgAAABgAAAASAAAAFgAAACIAAAAaAAAAGAAAABwAAAAcAAAAIAAAACQAAAAYAAG0FAABvB8AAAAYAAAAGAAAAB4AAAAYAAAAIAAAABgAAAAf2ACkGAAAABgAAAAYAAAAHAAAABgAAAAUAAEAGgAAAAwAAQAcAAAAJAAAACAAAAAYAAAAIAAAABgAAAAcAABAHwAAAB8AAAAYAACAGAAAABgAAAAkAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAJwcAAAAIAAAABwAAAAcAAAAHAAASBwAAAAYAAAAHAABEBgAAAAUAADkHAAASCAAAAAcAAAAHAP//BgAAAAYAAAAHAAA+BQAAGAYAAAAGAAAABgAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAD/egBaAAAAAAAAAAAAAAAAAAAAAAAAAAABAAQDAAEBAQxGb250QXdlc29tZQABAQFB+BAA+e0C+e0D+BgE+0cMA+UMBIr7lRwJABwGAQUeoABVgDb/i4seoABVgDb/i4sMBxwjbQ8cI5IRpR0AAQT2EgHTAgABAAYACwARABkAHgAiACwAMAA0ADwAPgBFAEcATQBUAFwAXwBlAGgAbQBxAHkAfQCBAI0AlQCbAKAAqwCxALgAwADEAMgA0gDcAOcA8AD2AP0BAAEEAQgBEAEVARsBHwEjASkBNAE+AUgBVAFfAWwBcAF7AYcBlQGcAaIBrAGyAbYBugG/AcQByAHVAeIB6gHuAfMB9wH+AgoCFgIbAicCNAI9AkcCUgJZAmYCbwJ5AoYCjwKZAqMCrgK2AsACyQLUAuAC8AL0AvgC/AMEAw0DGQMeAyYDLAMzAzkDQwNPA1YDYwNvA3oDiQOaA6MDrwO8A8gDywPPA9cD5APzA/wEBwQOBBsEIgQvBDUEOwRGBFAEVQRaBGUEcwR9BIQEjASSBJgEowSmBKkEsQS1BMAEygTTBNoE4wT0BQYFFQUmBSsFMQU2BTwFRQVPBVcFXwVoBW0FcQV2BXwFfwWDBY0FkQWbBaIFpAWmBbMFvAXBBcYFywXUBeIF8gX9BgIGDAYUBh4GKQYwBjQGPQZEBlAGWAZcBmEGagZ1BoEGhQaMBpQGmQajBqsGuQbFBswG1wbfBucG7QbxBv4HBgcOBxcHHQcoBywHMgc2B0cHWQdoB3kHgweOB5YHoAenB60Hswe/B8sH1QfgB+cH7QfyB/wIDAgbCCUIMQg2CDsIPghFCE0IVQhjCGsIbwh4CIcIlQiZCKIIqAisCLcIwgjLCM8I2wjlCPMI+QkHCRgJHgkkCTUJRwlWCWcJbAlwCXYJgAmICZsJrAmwCbkJvwnNCdgJ4AnqCfQJ/QoBCgsKEgoaCiYKKgotCjAKMwo2CjkKPAo/CkIKRgpPCl8KYwp1CosKmAqpCq0KsQq9CsQKyArRCt0K5ArxCvoLAAsDCwcLFQsbCyYLNQtCC1ELYQtmC20LdAt5C4ALhQuPC5ULmwufC6ULqAusC7MLtgu4C70LwwvHC9UL2QvuC/IMAAwEDBAMFAwhDCUMKQwtDDEMNQw5DD0MQQxIDEwMUAxUDFgMXAxgDGQMaAxsDHAMdAx4DHwMgAyHDIsMjwyTDJcMmwyfDKMMpwyrDK8Mswy3DLsMvwzGDM0M0QzVDNkM3QzhDOUM6QztDPEM9Qz5DP0NAQ0IDQ8NFg0aDR4NJQ0sDTMNNw07DT8NQw1HDUsNTw1WDVoNXg1iDWYNag1uDXINdg16DX4Ngg2GDYoNjg2SDZYNmg2eDaINpg2qDa4Nsg22DboNvg3CDcYN0WdsYXNzbXVzaWNzZWFyY2hlbnZlbG9wZWhlYXJ0c3RhcnN0YXJfZW1wdHl1c2VyZmlsbXRoX2xhcmdldGh0aF9saXN0b2tyZW1vdmV6b29tX2luem9vbV9vdXRvZmZzaWduYWxjb2d0cmFzaGhvbWVmaWxlX2FsdHRpbWVyb2FkZG93bmxvYWRfYWx0ZG93bmxvYWR1cGxvYWRpbmJveHBsYXlfY2lyY2xlcmVwZWF0cmVmcmVzaGxpc3RfYWx0bG9ja2ZsYWdoZWFkcGhvbmVzdm9sdW1lX29mZnZvbHVtZV9kb3dudm9sdW1lX3VwcXJjb2RlYmFyY29kZXRhZ3RhZ3Nib29rYm9va21hcmtwcmludGNhbWVyYWZvbnRib2xkaXRhbGljdGV4dF9oZWlnaHR0ZXh0X3dpZHRoYWxpZ25fbGVmdGFsaWduX2NlbnRlcmFsaWduX3JpZ2h0YWxpZ25fanVzdGlmeWxpc3RpbmRlbnRfbGVmdGluZGVudF9yaWdodGZhY2V0aW1lX3ZpZGVvcGljdHVyZXBlbmNpbG1hcF9tYXJrZXJhZGp1c3R0aW50ZWRpdHNoYXJlY2hlY2ttb3Zlc3RlcF9iYWNrd2FyZGZhc3RfYmFja3dhcmRiYWNrd2FyZHBsYXlwYXVzZXN0b3Bmb3J3YXJkZmFzdF9mb3J3YXJkc3RlcF9mb3J3YXJkZWplY3RjaGV2cm9uX2xlZnRjaGV2cm9uX3JpZ2h0cGx1c19zaWdubWludXNfc2lnbnJlbW92ZV9zaWdub2tfc2lnbnF1ZXN0aW9uX3NpZ25pbmZvX3NpZ25zY3JlZW5zaG90cmVtb3ZlX2NpcmNsZW9rX2NpcmNsZWJhbl9jaXJjbGVhcnJvd19sZWZ0YXJyb3dfcmlnaHRhcnJvd191cGFycm93X2Rvd25zaGFyZV9hbHRyZXNpemVfZnVsbHJlc2l6ZV9zbWFsbGV4Y2xhbWF0aW9uX3NpZ25naWZ0bGVhZmZpcmVleWVfb3BlbmV5ZV9jbG9zZXdhcm5pbmdfc2lnbnBsYW5lY2FsZW5kYXJyYW5kb21jb21tZW50bWFnbmV0Y2hldnJvbl91cGNoZXZyb25fZG93bnJldHdlZXRzaG9wcGluZ19jYXJ0Zm9sZGVyX2Nsb3NlZm9sZGVyX29wZW5yZXNpemVfdmVydGljYWxyZXNpemVfaG9yaXpvbnRhbGJhcl9jaGFydHR3aXR0ZXJfc2lnbmZhY2Vib29rX3NpZ25jYW1lcmFfcmV0cm9rZXljb2dzY29tbWVudHN0aHVtYnNfdXBfYWx0dGh1bWJzX2Rvd25fYWx0c3Rhcl9oYWxmaGVhcnRfZW1wdHlzaWdub3V0bGlua2VkaW5fc2lnbnB1c2hwaW5leHRlcm5hbF9saW5rc2lnbmludHJvcGh5Z2l0aHViX3NpZ251cGxvYWRfYWx0bGVtb25waG9uZWNoZWNrX2VtcHR5Ym9va21hcmtfZW1wdHlwaG9uZV9zaWdudHdpdHRlcmZhY2Vib29rZ2l0aHVidW5sb2NrY3JlZGl0X2NhcmRyc3NoZGRidWxsaG9ybmJlbGxjZXJ0aWZpY2F0ZWhhbmRfcmlnaHRoYW5kX2xlZnRoYW5kX3VwaGFuZF9kb3duY2lyY2xlX2Fycm93X2xlZnRjaXJjbGVfYXJyb3dfcmlnaHRjaXJjbGVfYXJyb3dfdXBjaXJjbGVfYXJyb3dfZG93bmdsb2Jld3JlbmNodGFza3NmaWx0ZXJicmllZmNhc2VmdWxsc2NyZWVubm90ZXF1YWxpbmZpbml0eWxlc3NlcXVhbGdyb3VwbGlua2Nsb3VkYmVha2VyY3V0Y29weXBhcGVyX2NsaXBzYXZlc2lnbl9ibGFua3Jlb3JkZXJ1bG9sc3RyaWtldGhyb3VnaHVuZGVybGluZXRhYmxlbWFnaWN0cnVja3BpbnRlcmVzdHBpbnRlcmVzdF9zaWduZ29vZ2xlX3BsdXNfc2lnbmdvb2dsZV9wbHVzbW9uZXljYXJldF9kb3duY2FyZXRfdXBjYXJldF9sZWZ0Y2FyZXRfcmlnaHRjb2x1bW5zc29ydHNvcnRfZG93bnNvcnRfdXBlbnZlbG9wZV9hbHRsaW5rZWRpbnVuZG9sZWdhbGRhc2hib2FyZGNvbW1lbnRfYWx0Y29tbWVudHNfYWx0Ym9sdHNpdGVtYXB1bWJyZWxsYXBhc3RlbGlnaHRfYnVsYmV4Y2hhbmdlY2xvdWRfZG93bmxvYWRjbG91ZF91cGxvYWR1c2VyX21kc3RldGhvc2NvcGVzdWl0Y2FzZWJlbGxfYWx0Y29mZmVlZm9vZGZpbGVfdGV4dF9hbHRidWlsZGluZ2hvc3BpdGFsYW1idWxhbmNlbWVka2l0ZmlnaHRlcl9qZXRiZWVyaF9zaWduZjBmZWRvdWJsZV9hbmdsZV9sZWZ0ZG91YmxlX2FuZ2xlX3JpZ2h0ZG91YmxlX2FuZ2xlX3VwZG91YmxlX2FuZ2xlX2Rvd25hbmdsZV9sZWZ0YW5nbGVfcmlnaHRhbmdsZV91cGFuZ2xlX2Rvd25kZXNrdG9wbGFwdG9wdGFibGV0bW9iaWxlX3Bob25lY2lyY2xlX2JsYW5rcXVvdGVfbGVmdHF1b3RlX3JpZ2h0c3Bpbm5lcmNpcmNsZXJlcGx5Z2l0aHViX2FsdGZvbGRlcl9jbG9zZV9hbHRmb2xkZXJfb3Blbl9hbHRleHBhbmRfYWx0Y29sbGFwc2VfYWx0c21pbGVmcm93bm1laGdhbWVwYWRrZXlib2FyZGZsYWdfYWx0ZmxhZ19jaGVja2VyZWR0ZXJtaW5hbGNvZGVyZXBseV9hbGxzdGFyX2hhbGZfZW1wdHlsb2NhdGlvbl9hcnJvd2Nyb3Bjb2RlX2Zvcmt1bmxpbmtfMjc5ZXhjbGFtYXRpb25zdXBlcnNjcmlwdHN1YnNjcmlwdF8yODNwdXp6bGVfcGllY2VtaWNyb3Bob25lbWljcm9waG9uZV9vZmZzaGllbGRjYWxlbmRhcl9lbXB0eWZpcmVfZXh0aW5ndWlzaGVycm9ja2V0bWF4Y2RuY2hldnJvbl9zaWduX2xlZnRjaGV2cm9uX3NpZ25fcmlnaHRjaGV2cm9uX3NpZ25fdXBjaGV2cm9uX3NpZ25fZG93bmh0bWw1Y3NzM2FuY2hvcnVubG9ja19hbHRidWxsc2V5ZWVsbGlwc2lzX2hvcml6b250YWxlbGxpcHNpc192ZXJ0aWNhbF8zMDNwbGF5X3NpZ250aWNrZXRtaW51c19zaWduX2FsdGNoZWNrX21pbnVzbGV2ZWxfdXBsZXZlbF9kb3duY2hlY2tfc2lnbmVkaXRfc2lnbl8zMTJzaGFyZV9zaWduY29tcGFzc2NvbGxhcHNlY29sbGFwc2VfdG9wXzMxN2V1cmdicHVzZGlucmpweXJ1Ymtyd2J0Y2ZpbGVmaWxlX3RleHRzb3J0X2J5X2FscGhhYmV0XzMyOXNvcnRfYnlfYXR0cmlidXRlc3NvcnRfYnlfYXR0cmlidXRlc19hbHRzb3J0X2J5X29yZGVyc29ydF9ieV9vcmRlcl9hbHRfMzM0XzMzNXlvdXR1YmVfc2lnbnlvdXR1YmV4aW5neGluZ19zaWdueW91dHViZV9wbGF5ZHJvcGJveHN0YWNrZXhjaGFuZ2VpbnN0YWdyYW1mbGlja3JhZG5mMTcxYml0YnVja2V0X3NpZ250dW1ibHJ0dW1ibHJfc2lnbmxvbmdfYXJyb3dfZG93bmxvbmdfYXJyb3dfdXBsb25nX2Fycm93X2xlZnRsb25nX2Fycm93X3JpZ2h0YXBwbGV3aW5kb3dzYW5kcm9pZGxpbnV4ZHJpYmJsZXNreXBlZm91cnNxdWFyZXRyZWxsb2ZlbWFsZW1hbGVnaXR0aXBzdW5fMzY2YXJjaGl2ZWJ1Z3Zrd2VpYm9yZW5yZW5fMzcyc3RhY2tfZXhjaGFuZ2VfMzc0YXJyb3dfY2lyY2xlX2FsdF9sZWZ0XzM3NmRvdF9jaXJjbGVfYWx0XzM3OHZpbWVvX3NxdWFyZV8zODBwbHVzX3NxdWFyZV9vXzM4Ml8zODNfMzg0XzM4NV8zODZfMzg3XzM4OF8zODl1bmlGMUEwZjFhMV8zOTJfMzkzZjFhNF8zOTVfMzk2XzM5N18zOThfMzk5XzQwMGYxYWJfNDAyXzQwM180MDR1bmlGMUIxXzQwNl80MDdfNDA4XzQwOV80MTBfNDExXzQxMl80MTNfNDE0XzQxNV80MTZfNDE3XzQxOF80MTl1bmlGMUMwdW5pRjFDMV80MjJfNDIzXzQyNF80MjVfNDI2XzQyN180MjhfNDI5XzQzMF80MzFfNDMyXzQzM180MzR1bmlGMUQwdW5pRjFEMXVuaUYxRDJfNDM4XzQzOXVuaUYxRDV1bmlGMUQ2dW5pRjFEN180NDNfNDQ0XzQ0NV80NDZfNDQ3XzQ0OF80NDl1bmlGMUUwXzQ1MV80NTJfNDUzXzQ1NF80NTVfNDU2XzQ1N180NThfNDU5XzQ2MF80NjFfNDYyXzQ2M180NjRfNDY2XzQ2N180NjhfNDY5XzQ3MF80NzFfNDcyXzQ3M180NzRfNDc1XzQ3Nl80NzdfNDc4XzQ3OUZvbnRBd2Vzb21lASkCAAEACgAWACMAJwAqAFUAXwBkAHcAfACAAIQArgC1ALkAwwDWANoBLgEzAVcBWwFfAhQCGwIhAjMCOAJYAmsCeAJ8AocCjAKYAqYCqgKvArMCvALHAs0C1QLhAuUC6gLtAvUC+QMHAw8DFgMfA1YDfQONA6MD/wQ7BEUESQRVBKoE0AT3BP0FBwUOBTMFOAU8BUAFZAVwBb0F6gXuBfIF+QYCBhcGGwYjBlMGWQZjBncGfgaHBpcGnganBq4Gswa3BrsG9wccByQHVQddB2IHmQekB6kH3wflB+sH8Af1B/kIDAgbCB8IKAgvCDQIOQg+CEIIWAheCHEIdwh+CIcIjQiSCL4IxgjNCOwI8wj3CPwJAwkLCRIJFgkcCSEJJglMCVAJWQleCWwJegmACaEJrQmxCbUJuQnZCe4KCgoYCjgKQQpTClcKYAp/CocKlAqyCrcKyArPCtgK5wrzCv0LAwsdCycLQAtHC0oLUQtYC18LagtwC34LjAuTC5wLoguqC7ILtwvFC8kL1wvtDAMMGQwfDCMM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]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/graphs/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/graphs/class.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT5Gcm9udEVuZFVzZXJzIDIuMy4xPC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImF1dGhvciIgY29udGVudD0iIi8+CiAgICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iIi8+CgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2Jvb3RzdHJhcC1jb21iaW5lZC5uby1pY29ucy5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL3ByaXNtLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICA8bGluayBocmVmPSIuLi9jc3MvdGVtcGxhdGUuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgICAgICA8bGluayBocmVmPSIuLi9jc3MvanF1ZXJ5Lml2aWV3ZXIuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIDxzdHlsZT4KICAgICAgICAjdmlld2VyIHsKICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOwogICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICB9CiAgICAgICAgLndyYXBwZXIgewogICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIH0KICAgIDwvc3R5bGU+CgogICAgPCEtLVtpZiBsdCBJRSA5XT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9odG1sNS5qcyI+PC9zY3JpcHQ+CiAgICA8IVtlbmRpZl0tLT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9qcXVlcnktMS4xMS4wLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvdWkvMS4xMC40L2pxdWVyeS11aS5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS5zbW9vdGgtc2Nyb2xsLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9wcmlzbS5taW4uanMiPjwvc2NyaXB0PgogICAgPCEtLSBUT0RPOiBBZGQgaHR0cDovL2pzY3JvbGxwYW5lLmtlbHZpbmx1Y2suY29tLyB0byBzdHlsZSB0aGUgc2Nyb2xsYmFycyBmb3IgYnJvd3NlcnMgbm90IHVzaW5nIHdlYmtpdC0tPgogICAgICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9qcXVlcnkubW91c2V3aGVlbC5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9qcXVlcnkuaXZpZXdlci5qcyIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgICAgICAkKHdpbmRvdykucmVzaXplKGZ1bmN0aW9uKCl7CiAgICAgICAgICAgICQoIiN2aWV3ZXIiKS5oZWlnaHQoJCh3aW5kb3cpLmhlaWdodCgpIC0gMTAwKTsKICAgICAgICB9KTsKCiAgICAgICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICQoIiN2aWV3ZXIiKS5pdmlld2VyKHtzcmM6ICcuLi9ncmFwaHMvY2xhc3Nlcy5zdmcnLCB6b29tX2FuaW1hdGlvbjogZmFsc2V9KTsKICAgICAgICAgICAgJCgnI3ZpZXdlciBpbWcnKS5iaW5kKCdkcmFnc3RhcnQnLCBmdW5jdGlvbihldmVudCl7CiAgICAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgICAgICB9KTsKICAgICAgICAgICAgJCh3aW5kb3cpLnJlc2l6ZSgpOwogICAgICAgIH0pOwogICAgPC9zY3JpcHQ+CgogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIuLi9pbWFnZXMvZmF2aWNvbi5pY28iLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24ucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSI3Mng3MiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24tNzJ4NzIucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxMTR4MTE0IiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi0xMTR4MTE0LnBuZyIvPgo8L2hlYWQ+Cjxib2R5PgoKPGRpdiBjbGFzcz0ibmF2YmFyIG5hdmJhci1maXhlZC10b3AiPgogICAgPGRpdiBjbGFzcz0ibmF2YmFyLWlubmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8YSBjbGFzcz0iYnRuIGJ0bi1uYXZiYXIiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9Ii5uYXYtY29sbGFwc2UiPgogICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tZWxsaXBzaXMtdmVydGljYWwiPjwvaT4KICAgICAgICAgICAgPC9hPgogICAgICAgICAgICA8YSBjbGFzcz0iYnJhbmQiIGhyZWY9Ii4uL2luZGV4Lmh0bWwiPkZyb250RW5kVXNlcnMgMi4zLjE8L2E+CgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtY29sbGFwc2UiPgogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgcHVsbC1yaWdodCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIiBpZD0iY2hhcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hhcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0NsYXNzIGhpZXJhcmNoeSBkaWFncmFtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJyZXBvcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVwb3J0cyA8YiBjbGFzcz0iY2FyZXQiPjwvYj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0Vycm9ycyA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij4xMDY8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9yZXBvcnRzL21hcmtlcnMuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7TWFya2VycyA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij4wPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vcmVwb3J0cy9kZXByZWNhdGVkLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtEZXByZWNhdGVkIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjE8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIDwhLS08ZGl2IGNsYXNzPSJnb190b190b3AiPi0tPgogICAgPCEtLTxhIGhyZWY9IiNfX18iIHN0eWxlPSJjb2xvcjogaW5oZXJpdCI+QmFjayB0byB0b3AmIzE2MDsmIzE2MDs8aSBjbGFzcz0iaWNvbi11cGxvYWQgaWNvbi13aGl0ZSI+PC9pPjwvYT4tLT4KICAgIDwhLS08L2Rpdj4tLT4KPC9kaXY+Cgo8ZGl2IGlkPSJfX18iIGNsYXNzPSJjb250YWluZXItZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjEyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0id3JhcHBlciI+CiAgICAgICAgICAgICAgICA8ZGl2IGlkPSJ2aWV3ZXIiIGNsYXNzPSJ2aWV3ZXIiPjwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgIDxmb290ZXIgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQyIj4KICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDEiPgogICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQgZm9vdGVyLXNlY3Rpb25zIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYmFyLWNoYXJ0Ij48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPkNsYXNzIEhpZXJhcmNoeSBEaWFncmFtPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLXB1c2hwaW4iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9yZXBvcnRzL2Vycm9ycy5odG1sIj5FcnJvcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj5NYXJrZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQxIj4KICAgICAgICAgICAgICAgICAgICA8aHIgLz4KICAgICAgICAgICAgICAgICAgICBEb2N1bWVudGF0aW9uIGlzIHBvd2VyZWQgYnkgPGEgaHJlZj0iaHR0cDovL3d3dy5waHBkb2Mub3JnLyI+cGhwRG9jdW1lbnRvciA8L2E+IGFuZCBhdXRob3JlZAogICAgICAgICAgICAgICAgICAgIG9uIEZlYnJ1YXJ5IDEydGgsIDIwMTcgYXQgMDk6NDUuCiAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICA8L3NlY3Rpb24+CiAgICA8L2Zvb3Rlcj4KPC9kaXY+Cgo8L2JvZHk+CjwvaHRtbD4K]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/graphs/classes.svg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIKICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPgo8IS0tIEdlbmVyYXRlZCBieSBncmFwaHZpeiB2ZXJzaW9uIDIuMzYuMCAoMjAxNDAxMTEuMjMxNSkKIC0tPgo8IS0tIFRpdGxlOiBHIFBhZ2VzOiAxIC0tPgo8c3ZnIHdpZHRoPSI0MDRwdCIgaGVpZ2h0PSIyNThwdCIKIHZpZXdCb3g9IjAuMDAgMC4wMCA0MDQuMDAgMjU4LjAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPGcgaWQ9ImdyYXBoMCIgY2xhc3M9ImdyYXBoIiB0cmFuc2Zvcm09InNjYWxlKDEgMSkgcm90YXRlKDApIHRyYW5zbGF0ZSg0IDI1NCkiPgo8dGl0bGU+RzwvdGl0bGU+Cjxwb2x5Z29uIGZpbGw9IndoaXRlIiBzdHJva2U9Im5vbmUiIHBvaW50cz0iLTQsNCAtNCwtMjU0IDQwMCwtMjU0IDQwMCw0IC00LDQiLz4KPGcgaWQ9ImNsdXN0MSIgY2xhc3M9ImNsdXN0ZXIiPjx0aXRsZT5jbHVzdGVyX0dsb2JhbDwvdGl0bGU+CjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iZ3JheSIgZD0iTTIwNCwtOEMyMDQsLTggMzc2LC04IDM3NiwtOCAzODIsLTggMzg4LC0xNCAzODgsLTIwIDM4OCwtMjAgMzg4LC0yMzAgMzg4LC0yMzAgMzg4LC0yMzYgMzgyLC0yNDIgMzc2LC0yNDIgMzc2LC0yNDIgMjA0LC0yNDIgMjA0LC0yNDIgMTk4LC0yNDIgMTkyLC0yMzYgMTkyLC0yMzAgMTkyLC0yMzAgMTkyLC0yMCAxOTIsLTIwIDE5MiwtMTQgMTk4LC04IDIwNCwtOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSIyOTAiIHk9Ii0yMjkuMiIgZm9udC1mYW1pbHk9IlRpbWVzLHNlcmlmIiBmb250LXNpemU9IjExLjAwIiBmaWxsPSJncmF5Ij5HbG9iYWw8L3RleHQ+CjwvZz4KPCEtLSBcXEZyb250RW5kVXNlcnMgLS0+CjxnIGlkPSJub2RlMSIgY2xhc3M9Im5vZGUiPjx0aXRsZT5cXEZyb250RW5kVXNlcnM8L3RpdGxlPgo8cG9seWdvbiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjM0MiwtMjE0IDIzOCwtMjE0IDIzOCwtMTc4IDM0MiwtMTc4IDM0MiwtMjE0Ii8+Cjx0ZXh0IHRleHQtYW5jaG9yPSJtaWRkbGUiIHg9IjI5MCIgeT0iLTE5My4yIiBmb250LWZhbWlseT0iQ291cmllcixtb25vc3BhY2UiIGZvbnQtc2l6ZT0iMTEuMDAiPkZyb250RW5kVXNlcnM8L3RleHQ+CjwvZz4KPCEtLSBcXENHRXh0ZW5zaW9ucyAtLT4KPGcgaWQ9Im5vZGU1IiBjbGFzcz0ibm9kZSI+PHRpdGxlPlxcQ0dFeHRlbnNpb25zPC90aXRsZT4KPGVsbGlwc2UgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgY3g9IjY0IiBjeT0iLTE5NiIgcng9IjYzLjg4OTMiIHJ5PSIxOCIvPgo8dGV4dCB0ZXh0LWFuY2hvcj0ibWlkZGxlIiB4PSI2NCIgeT0iLTE5Mi4zIiBmb250LWZhbWlseT0iVGltZXMsc2VyaWYiIGZvbnQtc2l6ZT0iMTQuMDAiIGZpbGw9ImdyYXkiPlxDR0V4dGVuc2lvbnM8L3RleHQ+CjwvZz4KPCEtLSBcXEZyb250RW5kVXNlcnMmIzQ1OyZndDtcXENHRXh0ZW5zaW9ucyAtLT4KPGcgaWQ9ImVkZ2UxIiBjbGFzcz0iZWRnZSI+PHRpdGxlPlxcRnJvbnRFbmRVc2VycyYjNDU7Jmd0O1xcQ0dFeHRlbnNpb25zPC90aXRsZT4KPHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgZD0iTTIzNy44OTEsLTE5NkMyMDguNDEzLC0xOTYgMTcwLjg0OSwtMTk2IDEzOC4yNzEsLTE5NiIvPgo8cG9seWdvbiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjEzNy44ODYsLTE5Mi41IDEyNy44ODYsLTE5NiAxMzcuODg2LC0xOTkuNSAxMzcuODg2LC0xOTIuNSIvPgo8L2c+CjwhLS0gXFxmZXVfdXNlcl9xdWVyeV9vcHQgLS0+CjxnIGlkPSJub2RlMiIgY2xhc3M9Im5vZGUiPjx0aXRsZT5cXGZldV91c2VyX3F1ZXJ5X29wdDwvdGl0bGU+Cjxwb2x5Z29uIGZpbGw9Im5vbmUiIHN0cm9rZT0iYmxhY2siIHBvaW50cz0iMzU5LC0xNjAgMjIxLC0xNjAgMjIxLC0xMjQgMzU5LC0xMjQgMzU5LC0xNjAiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMjkwIiB5PSItMTM5LjIiIGZvbnQtZmFtaWx5PSJDb3VyaWVyLG1vbm9zcGFjZSIgZm9udC1zaXplPSIxMS4wMCI+ZmV1X3VzZXJfcXVlcnlfb3B0PC90ZXh0Pgo8L2c+CjwhLS0gXFxmZXVfdXNlcl9xdWVyeSAtLT4KPGcgaWQ9Im5vZGUzIiBjbGFzcz0ibm9kZSI+PHRpdGxlPlxcZmV1X3VzZXJfcXVlcnk8L3RpdGxlPgo8cG9seWdvbiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjM0NS41LC0xMDYgMjM0LjUsLTEwNiAyMzQuNSwtNzAgMzQ1LjUsLTcwIDM0NS41LC0xMDYiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMjkwIiB5PSItODUuMiIgZm9udC1mYW1pbHk9IkNvdXJpZXIsbW9ub3NwYWNlIiBmb250LXNpemU9IjExLjAwIj5mZXVfdXNlcl9xdWVyeTwvdGV4dD4KPC9nPgo8IS0tIFxcZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0IC0tPgo8ZyBpZD0ibm9kZTQiIGNsYXNzPSJub2RlIj48dGl0bGU+XFxmZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQ8L3RpdGxlPgo8cG9seWdvbiBmaWxsPSJub25lIiBzdHJva2U9ImJsYWNrIiBwb2ludHM9IjM3OS41LC01MiAyMDAuNSwtNTIgMjAwLjUsLTE2IDM3OS41LC0xNiAzNzkuNSwtNTIiLz4KPHRleHQgdGV4dC1hbmNob3I9Im1pZGRsZSIgeD0iMjkwIiB5PSItMzEuMiIgZm9udC1mYW1pbHk9IkNvdXJpZXIsbW9ub3NwYWNlIiBmb250LXNpemU9IjExLjAwIj5mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQ8L3RleHQ+CjwvZz4KPC9nPgo8L3N2Zz4K]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/images/apple-touch-icon-72x72.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/apple-touch-icon-114x114.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/apple-touch-icon.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/custom-icons.svg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtbG5zOmNjPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9ucyMiCiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB3aWR0aD0iMjIwIgogICBoZWlnaHQ9IjIyMCIKICAgaWQ9InN2ZzIiCiAgIHZlcnNpb249IjEuMSIKICAgaW5rc2NhcGU6dmVyc2lvbj0iMC40OC4zLjEgcjk4ODYiCiAgIHNvZGlwb2RpOmRvY25hbWU9ImN1c3RvbS1pY29ucy5zdmciPgogIDxkZWZzCiAgICAgaWQ9ImRlZnM0IiAvPgogIDxzb2RpcG9kaTpuYW1lZHZpZXcKICAgICBpZD0iYmFzZSIKICAgICBwYWdlY29sb3I9IiNmZmZmZmYiCiAgICAgYm9yZGVyY29sb3I9IiM2NjY2NjYiCiAgICAgYm9yZGVyb3BhY2l0eT0iMS4wIgogICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwIgogICAgIGlua3NjYXBlOnBhZ2VzaGFkb3c9IjIiCiAgICAgaW5rc2NhcGU6em9vbT0iMi40MTgxODE4IgogICAgIGlua3NjYXBlOmN4PSI2MC4zNzU5NCIKICAgICBpbmtzY2FwZTpjeT0iMTEwIgogICAgIGlua3NjYXBlOmRvY3VtZW50LXVuaXRzPSJweCIKICAgICBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJsYXllcjQiCiAgICAgc2hvd2dyaWQ9ImZhbHNlIgogICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMTM2NiIKICAgICBpbmtzY2FwZTp3aW5kb3ctaGVpZ2h0PSI3MTgiCiAgICAgaW5rc2NhcGU6d2luZG93LXg9IjAiCiAgICAgaW5rc2NhcGU6d2luZG93LXk9IjAiCiAgICAgaW5rc2NhcGU6d2luZG93LW1heGltaXplZD0iMSIKICAgICBpbmtzY2FwZTpzaG93cGFnZXNoYWRvdz0iZmFsc2UiCiAgICAgZml0LW1hcmdpbi10b3A9IjEwIgogICAgIGZpdC1tYXJnaW4tbGVmdD0iMTAiCiAgICAgZml0LW1hcmdpbi1yaWdodD0iMTAiCiAgICAgZml0LW1hcmdpbi1ib3R0b209IjEwIiAvPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTciPgogICAgPHJkZjpSREY+CiAgICAgIDxjYzpXb3JrCiAgICAgICAgIHJkZjphYm91dD0iIj4KICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3N2Zyt4bWw8L2RjOmZvcm1hdD4KICAgICAgICA8ZGM6dHlwZQogICAgICAgICAgIHJkZjpyZXNvdXJjZT0iaHR0cDovL3B1cmwub3JnL2RjL2RjbWl0eXBlL1N0aWxsSW1hZ2UiIC8+CiAgICAgICAgPGRjOnRpdGxlPjwvZGM6dGl0bGU+CiAgICAgIDwvY2M6V29yaz4KICAgIDwvcmRmOlJERj4KICA8L21ldGFkYXRhPgogIDxnCiAgICAgaW5rc2NhcGU6bGFiZWw9IkJhY2tncm91bmQiCiAgICAgaW5rc2NhcGU6Z3JvdXBtb2RlPSJsYXllciIKICAgICBpZD0ibGF5ZXIxIgogICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKDcuMDIxNzM2MSw4LjA2OTQ5NjIpIgogICAgIHNvZGlwb2RpOmluc2Vuc2l0aXZlPSJ0cnVlIj4KICAgIDxwYXRoCiAgICAgICBzdHlsZT0iZmlsbDojMzMzMzMzO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lIgogICAgICAgZD0iTSA2MCwxMCBDIDMyLjMsMTAgMTAsMzIuMyAxMCw2MCBsIDAsMTAwIGMgMCwyNy43IDIyLjMsNTAgNTAsNTAgbCAxMDAsMCBjIDI3LjcsMCA1MCwtMjIuMyA1MCwtNTAgTCAyMTAsNjAgQyAyMTAsMzIuMyAxODcuNywxMCAxNjAsMTAgTCA2MCwxMCB6IG0gOC45MDYyNSwxNy43ODEyNSA4Mi4xODc1LDAgYyAyMi43NzQ0LDAgNDEuMTI1LDE4LjM1MDYwMSA0MS4xMjUsNDEuMTI1IGwgMCw4Mi4xODc1IGMgMCwyMi43NzQ0IC0xOC4zNTA2LDQxLjEyNSAtNDEuMTI1LDQxLjEyNSBsIC04Mi4xODc1LDAgYyAtMjIuNzc0Mzk5LDAgLTQxLjEyNSwtMTguMzUwNiAtNDEuMTI1LC00MS4xMjUgbCAwLC04Mi4xODc1IGMgMCwtMjIuNzc0Mzk5IDE4LjM1MDYwMSwtNDEuMTI1IDQxLjEyNSwtNDEuMTI1IHoiCiAgICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNy4wMjE3MzYxLC04LjA2OTQ5NjIpIgogICAgICAgaWQ9InJlY3Q0OTkxIgogICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIgLz4KICA8L2c+CiAgPGcKICAgICBpbmtzY2FwZTpncm91cG1vZGU9ImxheWVyIgogICAgIGlkPSJsYXllcjIiCiAgICAgaW5rc2NhcGU6bGFiZWw9IkNsYXNzIgogICAgIHN0eWxlPSJkaXNwbGF5Om5vbmUiCiAgICAgc29kaXBvZGk6aW5zZW5zaXRpdmU9InRydWUiPgogICAgPGcKICAgICAgIHN0eWxlPSJmb250LXNpemU6MjBweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXZhcmlhbnQ6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXN0cmV0Y2g6bm9ybWFsO3RleHQtYWxpZ246Y2VudGVyO2xpbmUtaGVpZ2h0OjEyNSU7bGV0dGVyLXNwYWNpbmc6MHB4O3dvcmQtc3BhY2luZzowcHg7dGV4dC1hbmNob3I6bWlkZGxlO2ZpbGw6IzMzMzMzMztmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZTtmb250LWZhbWlseTpVYnVudHU7LWlua3NjYXBlLWZvbnQtc3BlY2lmaWNhdGlvbjpVYnVudHUiCiAgICAgICBpZD0idGV4dDM3NjEiPgogICAgICA8cGF0aAogICAgICAgICBkPSJtIDExOS43NzUsMTY4Ljk4ODkzIGMgLTguODQwMDYsMCAtMTYuNzczMzgsLTEuMzYgLTIzLjgsLTQuMDggLTcuMDI2NzAyLC0yLjcxOTk5IC0xMi45NzY2OTYsLTYuNjg2NjUgLTE3Ljg1LC0xMS45IC00Ljg3MzM1MywtNS4zMjY2NCAtOC42MTMzNDksLTExLjc4NjY0IC0xMS4yMiwtMTkuMzggLTIuNjA2Njc3LC03LjU5MzI5IC0zLjkxMDAwOSwtMTYuMzE5OTUgLTMuOTEsLTI2LjE4IC05ZS02LC05Ljg1OTkyNyAxLjQ3MzMyMiwtMTguNTg2NTg1IDQuNDIsLTI2LjE3OTk5NiAzLjA1OTk4MywtNy41OTMyNCA3LjE5NjY0NiwtMTMuOTk2NTY3IDEyLjQxLC0xOS4yMSA1LjIxMzMwMiwtNS4zMjY1NTcgMTEuMzMzMjk2LC05LjM0OTg4NiAxOC4zNiwtMTIuMDcgNy4wMjY2MiwtMi43MTk4ODEgMTQuNTYzMjcsLTQuMDc5ODc5IDIyLjYxLC00LjA4IDQuODczMjYsMS4yMWUtNCA5LjI5MzI2LDAuMzk2Nzg3IDEzLjI2LDEuMTkgMy45NjY1OCwwLjY4MDExOSA3LjQyMzI1LDEuNDczNDUyIDEwLjM3LDIuMzggMi45NDY1NywwLjkwNjc4MyA1LjM4MzI0LDEuODcwMTE1IDcuMzEsMi44OSAxLjkyNjU3LDEuMDIwMTEzIDMuMjg2NTcsMS43NTY3NzkgNC4wOCwyLjIxIGwgLTYuMjksMTcuNTEgYyAtMi43MjAwOSwtMS42OTk5MDQgLTYuNjMwMDksLTMuMjg2NTY5IC0xMS43MywtNC43NiAtNC45ODY3NSwtMS41ODY1NjYgLTEwLjQyNjc0LC0yLjM3OTg5OCAtMTYuMzIsLTIuMzggLTUuMTAwMDYsMS4wMmUtNCAtOS44NjAwNiwwLjkwNjc2OCAtMTQuMjgsMi43MiAtNC40MjAwNSwxLjcwMDA5NyAtOC4yNzMzNzksNC4zMDY3NjEgLTExLjU2LDcuODIgLTMuMTczMzcyLDMuNTEzNDIxIC01LjY2NjcwMyw3LjkzMzQxNyAtNy40OCwxMy4yNiAtMS44MTMzNjYsNS4zMjY3MzkgLTIuNzIwMDMyLDExLjUwMzM5NiAtMi43MiwxOC41Mjk5OTYgLTMuMmUtNSw2LjIzMzM5IDAuNjc5OTY3LDExLjk1NjcyIDIuMDQsMTcuMTcgMS40NzMyOTgsNS4yMTMzNyAzLjY4MzI5Niw5Ljc0NjcgNi42MywxMy42IDIuOTQ2NjIzLDMuNzQwMDMgNi42ODY2Miw2LjY4NjY5IDExLjIyLDguODQgNC41MzMyOCwyLjA0MDAyIDkuOTczMjcsMy4wNjAwMiAxNi4zMiwzLjA2IDcuNTkzMjYsMmUtNSAxMy43Njk5MiwtMC43MzY2NSAxOC41MywtMi4yMSA0Ljc1OTkxLC0xLjU4NjY0IDguNDQzMjQsLTMuMDU5OTcgMTEuMDUsLTQuNDIgbCA1Ljc4LDE3LjUxIGMgLTEuMzYwMSwwLjkwNjY4IC0zLjIzMDEsMS44MTMzNCAtNS42MSwyLjcyIC0yLjI2Njc2LDAuOTA2NjcgLTQuOTg2NzYsMS44MTMzNCAtOC4xNiwyLjcyIC0zLjE3MzQyLDAuNzkzMzQgLTYuNzQzNDIsMS40MTY2NyAtMTAuNzEsMS44NyAtMy45NjY3NCwwLjU2NjY3IC04LjIxNjc0LDAuODUgLTEyLjc1LDAuODUiCiAgICAgICAgIHN0eWxlPSJmb250LXNpemU6MTcwcHg7Zm9udC13ZWlnaHQ6NTAwO2ZpbGw6IzMzMzMzMzstaW5rc2NhcGUtZm9udC1zcGVjaWZpY2F0aW9uOlVidW50dSBNZWRpdW0iCiAgICAgICAgIGlkPSJwYXRoNTAxMyIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIgLz4KICAgIDwvZz4KICA8L2c+CiAgPGcKICAgICBpbmtzY2FwZTpncm91cG1vZGU9ImxheWVyIgogICAgIGlkPSJsYXllcjMiCiAgICAgaW5rc2NhcGU6bGFiZWw9IkludGVyZmFjZSIKICAgICBzdHlsZT0iZGlzcGxheTpub25lIgogICAgIHNvZGlwb2RpOmluc2Vuc2l0aXZlPSJ0cnVlIj4KICAgIDxnCiAgICAgICBzdHlsZT0iZm9udC1zaXplOjIwcHg7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC12YXJpYW50Om5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zdHJldGNoOm5vcm1hbDt0ZXh0LWFsaWduOmNlbnRlcjtsaW5lLWhlaWdodDoxMjUlO2xldHRlci1zcGFjaW5nOjBweDt3b3JkLXNwYWNpbmc6MHB4O3RleHQtYW5jaG9yOm1pZGRsZTtmaWxsOiMzMzMzMzM7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7Zm9udC1mYW1pbHk6VWJ1bnR1Oy1pbmtzY2FwZS1mb250LXNwZWNpZmljYXRpb246VWJ1bnR1IgogICAgICAgaWQ9InRleHQzNzYxLTkiPgogICAgICA8cGF0aAogICAgICAgICBkPSJtIDk5LjI4OTk5Myw0OC42Mjg5MzQgMjEuNDE5OTk3LDAgMCwxMTcuODA5OTk2IC0yMS40MTk5OTcsMCAwLC0xMTcuODA5OTk2IgogICAgICAgICBzdHlsZT0iZm9udC1zaXplOjE3MHB4O2ZvbnQtd2VpZ2h0OjUwMDtmaWxsOiMzMzMzMzM7LWlua3NjYXBlLWZvbnQtc3BlY2lmaWNhdGlvbjpVYnVudHUgTWVkaXVtIgogICAgICAgICBpZD0icGF0aDUwODYiCiAgICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiIC8+CiAgICA8L2c+CiAgPC9nPgogIDxnCiAgICAgaW5rc2NhcGU6Z3JvdXBtb2RlPSJsYXllciIKICAgICBpZD0ibGF5ZXI0IgogICAgIGlua3NjYXBlOmxhYmVsPSJUcmFpdCIKICAgICBzdHlsZT0iZGlzcGxheTppbmxpbmUiCiAgICAgc29kaXBvZGk6aW5zZW5zaXRpdmU9InRydWUiPgogICAgPGcKICAgICAgIHN0eWxlPSJmb250LXNpemU6MjBweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXZhcmlhbnQ6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXN0cmV0Y2g6bm9ybWFsO3RleHQtYWxpZ246Y2VudGVyO2xpbmUtaGVpZ2h0OjEyNSU7bGV0dGVyLXNwYWNpbmc6MHB4O3dvcmQtc3BhY2luZzowcHg7dGV4dC1hbmNob3I6bWlkZGxlO2ZpbGw6IzMzMzMzMztmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZTtmb250LWZhbWlseTpVYnVudHU7LWlua3NjYXBlLWZvbnQtc3BlY2lmaWNhdGlvbjpVYnVudHUiCiAgICAgICBpZD0idGV4dDM3NjEtNyI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Im0gMTU0LjY3MTQ4LDQ4LjYyODkzNCAwLDE4LjUzIC0zNi4yMSwwIDAsOTkuMjc5OTk2IC0yMS41ODk5OTUsMCAwLC05OS4yNzk5OTYgLTM2LjIxLDAgMCwtMTguNTMgOTQuMDA5OTk1LDAiCiAgICAgICAgIHN0eWxlPSJmb250LXNpemU6MTcwcHg7Zm9udC13ZWlnaHQ6NTAwO2ZpbGw6IzMzMzMzMzstaW5rc2NhcGUtZm9udC1zcGVjaWZpY2F0aW9uOlVidW50dSBNZWRpdW0iCiAgICAgICAgIGlkPSJwYXRoNTA4OSIKICAgICAgICAgaW5rc2NhcGU6Y29ubmVjdG9yLWN1cnZhdHVyZT0iMCIgLz4KICAgIDwvZz4KICA8L2c+Cjwvc3ZnPgo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/favicon.ico</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAABAAEAEBAAAAAAAABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAA4ODgAAAAABgAAAHIAAACFAAAAhQAAAIUAAACFAAAAhQAAAIUAAACFAAAAhQAAAIUAAACFAAAAcgAAAAcAAAAAAAAAFwwfQv8dNGH/KUFr/yhCdP8tSXv/KUR1/y5Kff8nRHz/KkeA/y5IgP8nQG7/KD9r/xw0YP8aLlL/AAAAFytBZfofN2T/DyhV/yNAdf8cOW3/L02A/ytKgP85WJL/M1SP/ydHf/85WZL/OFaP/xs2Zv8rQ3L/Ijhj/ytBa/scL1X/IThh/zlShP8VMGH/J0V//05no//Q8f//4f///9z9///U9P//SmCY/yZDd/8tRnj/NlCB/xwzXP8PIkP/JThb/ylBb/8kPmv/NlOI/9fz+v/T8v//MlOM/zdcnf8zVY//MVOU/+H////l9vn/MU2F/yE5Zv8fOGf/HS9Q/xsuU/8lPmz/M015/213nf9QWH//Lk2F/zhalf9zf6X/SFua/zxdl/83WZb/UF6J/1lch/8nQW//KD5n/x4wVf8XKkz/GTBZ/x03Zf/O6v//ME6B/zlWkv/S8v//doGq/9v9///S8///ICpg/y5Lhf/S8P//JD9w/yE5ZP8XKUn/HC9Q/xsyXP8yS3j/0uz3/zhXj/83WJH/5u3y/3J7o//U+P//2vv//yk3bf8zUov/1e/3/zhRfv8oP2f/ITJS/xwvUf8qP2j/OFF8/9vs8P8wTYH/1fX//6u3zP+jrsj/8////05ajf/y9fb/OFOF/9rt8P89VoL/KD9o/yY4WP8eM1b/KUNs/zVPeP/e+f//PluQ/yEzY//n////2t3l/1VmlP/k////cICm/zhVg//W8v//KkZx/ytCaf8kNlj/MENi/zVPdv89VYD/3fj//09pl/9GZJf/MUBq/9nc5f/s////wcjU/0Ngjf9Pa5X/4P3//zlRef8qRW3/Kz9d/zFFYf82UXX/RF+I/z1Yfv/q////aYi1/0xrl/9Na5v/TWuX/0lrm/9gfKn/3vz//0dijP9BW4H/PliA/zhMaP8oP2H/PlV2/0Vihv9IYYX/UW6Y/+v////t8PL/epjC/3SRuP/t7/L/7f///0lki/87Vnz/TGmR/z5Vdv80SWr/Rlt9/0tkjP9KZIf/TmqU/0xni/9Vc5j/Um2V/x07Yf8dOmH/UW2V/0hpk/9Qa5P/TGaM/0Nafv9KZI7/QlV3/wAAAC5EXYD/VG+X/1JukP9MZ4//T22S/1Ntj/9beJn/W3id/05tlf9ceZ7/UGyQ/0tlhv9OZ4//P1Z2/wAAAC/9/f0AIyUqMEtjjf9HW4L/SWSN/0dhiv9EXID/UGeO/09nkv9OZ5H/R2CF/0xliv9KY43/RlyB/yMmKzEAAAAA4AcAAIABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAQAAwAMAAA==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/hierarchy-item.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAA8AAAARCAIAAACNaGH2AAAAA3NCSVQICAjb4U/gAAAAEHRFWHRTb2Z0d2FyZQBTaHV0dGVyY4LQCQAAAIhJREFUKM9jNDY2ZiAaMDGQAihRzSqurCHLTaRqVuWIhsZYTe5B4G4kR3GzEq2a26p63pIGN1lWgqrZ2NhYf12cO/2icn5PNZoGFnS1QtaNq7bBeBL5maZHq459hfEZccS8uENVT6n+9e687gMvfxN0d2amJrpSPGazsrL+/v2b2BDEopTGcQkAlj4m+FZaLVQAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/icon-class-13x13.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAA0AAAANCAYAAABy6+R8AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAA6AAAAOgBhtX2rwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAEpSURBVCiRjZIhS0NhFIaf892rIMw2BJNBwWTxOxdhDkxWq9FVy9KyTYta9gsM/gWDaQhOGLtLBstEl4yDlV2G9x7DHFw3Lu7El+eBl+97xXu/DzSBQ/6/NlAPf4VX4CzLsu8i2jkXAg2gKd57A3biOH6fAap6ICInwGaWZW8ich/H8ZeqbgN9B5CmaZoTGsCLmR2Z2aqI1MxM81yYrxBF0S5wJSIX3W73cpaLiPypOlf9GHClUuk2H5qZFUpmtgUMW61WUvQgC5KIDICyqpaXlpxzD0ACXKvqCkClUlmrVqvrhVKn0/kws3PgFBip6udkMhkmSVLLcyFAEATBLOj1eneq+igikZltiMhgPB4/5Tnx3j8zXcTNkovYC4E60yn1nZv/gYVrA/Uf6WhrDeKPiz4AAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/icon-class.svg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtbG5zOmNjPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9ucyMiCiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB2ZXJzaW9uPSIxLjEiCiAgIHdpZHRoPSIyMjAiCiAgIGhlaWdodD0iMjIwIgogICBpZD0ic3ZnMiI+CiAgPGRlZnMKICAgICBpZD0iZGVmczQiIC8+CiAgPG1ldGFkYXRhCiAgICAgaWQ9Im1ldGFkYXRhNyI+CiAgICA8cmRmOlJERj4KICAgICAgPGNjOldvcmsKICAgICAgICAgcmRmOmFib3V0PSIiPgogICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2Uvc3ZnK3htbDwvZGM6Zm9ybWF0PgogICAgICAgIDxkYzp0eXBlCiAgICAgICAgICAgcmRmOnJlc291cmNlPSJodHRwOi8vcHVybC5vcmcvZGMvZGNtaXR5cGUvU3RpbGxJbWFnZSIgLz4KICAgICAgICA8ZGM6dGl0bGU+PC9kYzp0aXRsZT4KICAgICAgPC9jYzpXb3JrPgogICAgPC9yZGY6UkRGPgogIDwvbWV0YWRhdGE+CiAgPGcKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSg3LjAyMTczNjEsOC4wNjk0OTYyKSIKICAgICBpZD0ibGF5ZXIxIj4KICAgIDxwYXRoCiAgICAgICBkPSJNIDYwLDEwIEMgMzIuMywxMCAxMCwzMi4zIDEwLDYwIGwgMCwxMDAgYyAwLDI3LjcgMjIuMyw1MCA1MCw1MCBsIDEwMCwwIGMgMjcuNywwIDUwLC0yMi4zIDUwLC01MCBMIDIxMCw2MCBDIDIxMCwzMi4zIDE4Ny43LDEwIDE2MCwxMCBMIDYwLDEwIHogbSA4LjkwNjI1LDE3Ljc4MTI1IDgyLjE4NzUsMCBjIDIyLjc3NDQsMCA0MS4xMjUsMTguMzUwNjAxIDQxLjEyNSw0MS4xMjUgbCAwLDgyLjE4NzUgYyAwLDIyLjc3NDQgLTE4LjM1MDYsNDEuMTI1IC00MS4xMjUsNDEuMTI1IGwgLTgyLjE4NzUsMCBjIC0yMi43NzQzOTksMCAtNDEuMTI1LC0xOC4zNTA2IC00MS4xMjUsLTQxLjEyNSBsIDAsLTgyLjE4NzUgYyAwLC0yMi43NzQzOTkgMTguMzUwNjAxLC00MS4xMjUgNDEuMTI1LC00MS4xMjUgeiIKICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKC03LjAyMTczNjEsLTguMDY5NDk2MikiCiAgICAgICBpZD0icmVjdDQ5OTEiCiAgICAgICBzdHlsZT0iZmlsbDojMzMzMzMzO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lIiAvPgogIDwvZz4KICA8ZwogICAgIGlkPSJsYXllcjIiCiAgICAgc3R5bGU9ImRpc3BsYXk6aW5saW5lIj4KICAgIDxnCiAgICAgICBpZD0idGV4dDM3NjEiCiAgICAgICBzdHlsZT0iZm9udC1zaXplOjIwcHg7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC12YXJpYW50Om5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zdHJldGNoOm5vcm1hbDt0ZXh0LWFsaWduOmNlbnRlcjtsaW5lLWhlaWdodDoxMjUlO2xldHRlci1zcGFjaW5nOjBweDt3b3JkLXNwYWNpbmc6MHB4O3RleHQtYW5jaG9yOm1pZGRsZTtmaWxsOiMzMzMzMzM7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7Zm9udC1mYW1pbHk6VWJ1bnR1Oy1pbmtzY2FwZS1mb250LXNwZWNpZmljYXRpb246VWJ1bnR1Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0ibSAxMTkuNzc1LDE2OC45ODg5MyBjIC04Ljg0MDA2LDAgLTE2Ljc3MzM4LC0xLjM2IC0yMy44LC00LjA4IC03LjAyNjcwMiwtMi43MTk5OSAtMTIuOTc2Njk2LC02LjY4NjY1IC0xNy44NSwtMTEuOSAtNC44NzMzNTMsLTUuMzI2NjQgLTguNjEzMzQ5LC0xMS43ODY2NCAtMTEuMjIsLTE5LjM4IC0yLjYwNjY3NywtNy41OTMyOSAtMy45MTAwMDksLTE2LjMxOTk1IC0zLjkxLC0yNi4xOCAtOWUtNiwtOS44NTk5MjcgMS40NzMzMjIsLTE4LjU4NjU4NSA0LjQyLC0yNi4xNzk5OTYgMy4wNTk5ODMsLTcuNTkzMjQgNy4xOTY2NDYsLTEzLjk5NjU2NyAxMi40MSwtMTkuMjEgNS4yMTMzMDIsLTUuMzI2NTU3IDExLjMzMzI5NiwtOS4zNDk4ODYgMTguMzYsLTEyLjA3IDcuMDI2NjIsLTIuNzE5ODgxIDE0LjU2MzI3LC00LjA3OTg3OSAyMi42MSwtNC4wOCA0Ljg3MzI2LDEuMjFlLTQgOS4yOTMyNiwwLjM5Njc4NyAxMy4yNiwxLjE5IDMuOTY2NTgsMC42ODAxMTkgNy40MjMyNSwxLjQ3MzQ1MiAxMC4zNywyLjM4IDIuOTQ2NTcsMC45MDY3ODMgNS4zODMyNCwxLjg3MDExNSA3LjMxLDIuODkgMS45MjY1NywxLjAyMDExMyAzLjI4NjU3LDEuNzU2Nzc5IDQuMDgsMi4yMSBsIC02LjI5LDE3LjUxIGMgLTIuNzIwMDksLTEuNjk5OTA0IC02LjYzMDA5LC0zLjI4NjU2OSAtMTEuNzMsLTQuNzYgLTQuOTg2NzUsLTEuNTg2NTY2IC0xMC40MjY3NCwtMi4zNzk4OTggLTE2LjMyLC0yLjM4IC01LjEwMDA2LDEuMDJlLTQgLTkuODYwMDYsMC45MDY3NjggLTE0LjI4LDIuNzIgLTQuNDIwMDUsMS43MDAwOTcgLTguMjczMzc5LDQuMzA2NzYxIC0xMS41Niw3LjgyIC0zLjE3MzM3MiwzLjUxMzQyMSAtNS42NjY3MDMsNy45MzM0MTcgLTcuNDgsMTMuMjYgLTEuODEzMzY2LDUuMzI2NzM5IC0yLjcyMDAzMiwxMS41MDMzOTYgLTIuNzIsMTguNTI5OTk2IC0zLjJlLTUsNi4yMzMzOSAwLjY3OTk2NywxMS45NTY3MiAyLjA0LDE3LjE3IDEuNDczMjk4LDUuMjEzMzcgMy42ODMyOTYsOS43NDY3IDYuNjMsMTMuNiAyLjk0NjYyMywzLjc0MDAzIDYuNjg2NjIsNi42ODY2OSAxMS4yMiw4Ljg0IDQuNTMzMjgsMi4wNDAwMiA5Ljk3MzI3LDMuMDYwMDIgMTYuMzIsMy4wNiA3LjU5MzI2LDJlLTUgMTMuNzY5OTIsLTAuNzM2NjUgMTguNTMsLTIuMjEgNC43NTk5MSwtMS41ODY2NCA4LjQ0MzI0LC0zLjA1OTk3IDExLjA1LC00LjQyIGwgNS43OCwxNy41MSBjIC0xLjM2MDEsMC45MDY2OCAtMy4yMzAxLDEuODEzMzQgLTUuNjEsMi43MiAtMi4yNjY3NiwwLjkwNjY3IC00Ljk4Njc2LDEuODEzMzQgLTguMTYsMi43MiAtMy4xNzM0MiwwLjc5MzM0IC02Ljc0MzQyLDEuNDE2NjcgLTEwLjcxLDEuODcgLTMuOTY2NzQsMC41NjY2NyAtOC4yMTY3NCwwLjg1IC0xMi43NSwwLjg1IgogICAgICAgICBpZD0icGF0aDUwMTMiCiAgICAgICAgIHN0eWxlPSJmb250LXNpemU6MTcwcHg7Zm9udC13ZWlnaHQ6NTAwO2ZpbGw6IzMzMzMzMzstaW5rc2NhcGUtZm9udC1zcGVjaWZpY2F0aW9uOlVidW50dSBNZWRpdW0iIC8+CiAgICA8L2c+CiAgPC9nPgogIDxnCiAgICAgaWQ9ImxheWVyMyIKICAgICBzdHlsZT0iZGlzcGxheTpub25lIj4KICAgIDx0ZXh0CiAgICAgICB4PSIxMTAuMDgyMzQiCiAgICAgICB5PSIxNjYuNDM4OTMiCiAgICAgICBpZD0idGV4dDM3NjEtOSIKICAgICAgIHhtbDpzcGFjZT0icHJlc2VydmUiCiAgICAgICBzdHlsZT0iZm9udC1zaXplOjIwcHg7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC12YXJpYW50Om5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zdHJldGNoOm5vcm1hbDt0ZXh0LWFsaWduOmNlbnRlcjtsaW5lLWhlaWdodDoxMjUlO2xldHRlci1zcGFjaW5nOjBweDt3b3JkLXNwYWNpbmc6MHB4O3RleHQtYW5jaG9yOm1pZGRsZTtmaWxsOiMzMzMzMzM7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7Zm9udC1mYW1pbHk6VWJ1bnR1Oy1pbmtzY2FwZS1mb250LXNwZWNpZmljYXRpb246VWJ1bnR1Ij48dHNwYW4KICAgICAgICAgeD0iMTEwLjA4MjM0IgogICAgICAgICB5PSIxNjYuNDM4OTMiCiAgICAgICAgIGlkPSJ0c3BhbjM3NjMtNSIKICAgICAgICAgc3R5bGU9ImZvbnQtc2l6ZToxNzBweDtmb250LXdlaWdodDo1MDA7ZmlsbDojMzMzMzMzOy1pbmtzY2FwZS1mb250LXNwZWNpZmljYXRpb246VWJ1bnR1IE1lZGl1bSI+STwvdHNwYW4+PC90ZXh0PgogIDwvZz4KICA8ZwogICAgIGlkPSJsYXllcjQiCiAgICAgc3R5bGU9ImRpc3BsYXk6bm9uZSI+CiAgICA8dGV4dAogICAgICAgeD0iMTA3LjU5MjExIgogICAgICAgeT0iMTY2LjQzODkzIgogICAgICAgaWQ9InRleHQzNzYxLTciCiAgICAgICB4bWw6c3BhY2U9InByZXNlcnZlIgogICAgICAgc3R5bGU9ImZvbnQtc2l6ZToyMHB4O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtdmFyaWFudDpub3JtYWw7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc3RyZXRjaDpub3JtYWw7dGV4dC1hbGlnbjpjZW50ZXI7bGluZS1oZWlnaHQ6MTI1JTtsZXR0ZXItc3BhY2luZzowcHg7d29yZC1zcGFjaW5nOjBweDt0ZXh0LWFuY2hvcjptaWRkbGU7ZmlsbDojMzMzMzMzO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO2ZvbnQtZmFtaWx5OlVidW50dTstaW5rc2NhcGUtZm9udC1zcGVjaWZpY2F0aW9uOlVidW50dSI+PHRzcGFuCiAgICAgICAgIHg9IjEwNy41OTIxMSIKICAgICAgICAgeT0iMTY2LjQzODkzIgogICAgICAgICBpZD0idHNwYW4zNzYzLTgiCiAgICAgICAgIHN0eWxlPSJmb250LXNpemU6MTcwcHg7Zm9udC13ZWlnaHQ6NTAwO2ZpbGw6IzMzMzMzMzstaW5rc2NhcGUtZm9udC1zcGVjaWZpY2F0aW9uOlVidW50dSBNZWRpdW0iPlQ8L3RzcGFuPjwvdGV4dD4KICA8L2c+Cjwvc3ZnPgo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/icon-interface-13x13.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAA0AAAANCAYAAABy6+R8AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAA6AAAAOgBhtX2rwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAACxSURBVCiR7ZIxCsJAEEXf7ibkBoK22krASWflSQQPkMo72FjlAJ7GdGmC7XoBD5Am7moRFxZEkgM45eP9YQa+EpENUAFbxqcGyuQTuAF77/3zl621ToAjUCkReQGrpmnuQcjzfJam6aHv+0vbto/Ai6JYAlYDOOdcvNUYMwdOWZYtYh48PeGP71P/oShkjDExdM5ZpdSu6zob8+ApEbkyNOI8sRHrBCgZqmS1Hr22Bso335szaMsx+TsAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/icon-interface.svg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtbG5zOmNjPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9ucyMiCiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB2ZXJzaW9uPSIxLjEiCiAgIHdpZHRoPSIyMjAiCiAgIGhlaWdodD0iMjIwIgogICBpZD0ic3ZnMiI+CiAgPGRlZnMKICAgICBpZD0iZGVmczQiIC8+CiAgPG1ldGFkYXRhCiAgICAgaWQ9Im1ldGFkYXRhNyI+CiAgICA8cmRmOlJERj4KICAgICAgPGNjOldvcmsKICAgICAgICAgcmRmOmFib3V0PSIiPgogICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2Uvc3ZnK3htbDwvZGM6Zm9ybWF0PgogICAgICAgIDxkYzp0eXBlCiAgICAgICAgICAgcmRmOnJlc291cmNlPSJodHRwOi8vcHVybC5vcmcvZGMvZGNtaXR5cGUvU3RpbGxJbWFnZSIgLz4KICAgICAgICA8ZGM6dGl0bGU+PC9kYzp0aXRsZT4KICAgICAgPC9jYzpXb3JrPgogICAgPC9yZGY6UkRGPgogIDwvbWV0YWRhdGE+CiAgPGcKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSg3LjAyMTczNjEsOC4wNjk0OTYyKSIKICAgICBpZD0ibGF5ZXIxIj4KICAgIDxwYXRoCiAgICAgICBkPSJNIDYwLDEwIEMgMzIuMywxMCAxMCwzMi4zIDEwLDYwIGwgMCwxMDAgYyAwLDI3LjcgMjIuMyw1MCA1MCw1MCBsIDEwMCwwIGMgMjcuNywwIDUwLC0yMi4zIDUwLC01MCBMIDIxMCw2MCBDIDIxMCwzMi4zIDE4Ny43LDEwIDE2MCwxMCBMIDYwLDEwIHogbSA4LjkwNjI1LDE3Ljc4MTI1IDgyLjE4NzUsMCBjIDIyLjc3NDQsMCA0MS4xMjUsMTguMzUwNjAxIDQxLjEyNSw0MS4xMjUgbCAwLDgyLjE4NzUgYyAwLDIyLjc3NDQgLTE4LjM1MDYsNDEuMTI1IC00MS4xMjUsNDEuMTI1IGwgLTgyLjE4NzUsMCBjIC0yMi43NzQzOTksMCAtNDEuMTI1LC0xOC4zNTA2IC00MS4xMjUsLTQxLjEyNSBsIDAsLTgyLjE4NzUgYyAwLC0yMi43NzQzOTkgMTguMzUwNjAxLC00MS4xMjUgNDEuMTI1LC00MS4xMjUgeiIKICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKC03LjAyMTczNjEsLTguMDY5NDk2MikiCiAgICAgICBpZD0icmVjdDQ5OTEiCiAgICAgICBzdHlsZT0iZmlsbDojMzMzMzMzO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lIiAvPgogIDwvZz4KICA8ZwogICAgIGlkPSJsYXllcjIiCiAgICAgc3R5bGU9ImRpc3BsYXk6bm9uZSI+CiAgICA8ZwogICAgICAgaWQ9InRleHQzNzYxIgogICAgICAgc3R5bGU9ImZvbnQtc2l6ZToyMHB4O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtdmFyaWFudDpub3JtYWw7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc3RyZXRjaDpub3JtYWw7dGV4dC1hbGlnbjpjZW50ZXI7bGluZS1oZWlnaHQ6MTI1JTtsZXR0ZXItc3BhY2luZzowcHg7d29yZC1zcGFjaW5nOjBweDt0ZXh0LWFuY2hvcjptaWRkbGU7ZmlsbDojMzMzMzMzO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO2ZvbnQtZmFtaWx5OlVidW50dTstaW5rc2NhcGUtZm9udC1zcGVjaWZpY2F0aW9uOlVidW50dSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Im0gMTE5Ljc3NSwxNjguOTg4OTMgYyAtOC44NDAwNiwwIC0xNi43NzMzOCwtMS4zNiAtMjMuOCwtNC4wOCAtNy4wMjY3MDIsLTIuNzE5OTkgLTEyLjk3NjY5NiwtNi42ODY2NSAtMTcuODUsLTExLjkgLTQuODczMzUzLC01LjMyNjY0IC04LjYxMzM0OSwtMTEuNzg2NjQgLTExLjIyLC0xOS4zOCAtMi42MDY2NzcsLTcuNTkzMjkgLTMuOTEwMDA5LC0xNi4zMTk5NSAtMy45MSwtMjYuMTggLTllLTYsLTkuODU5OTI3IDEuNDczMzIyLC0xOC41ODY1ODUgNC40MiwtMjYuMTc5OTk2IDMuMDU5OTgzLC03LjU5MzI0IDcuMTk2NjQ2LC0xMy45OTY1NjcgMTIuNDEsLTE5LjIxIDUuMjEzMzAyLC01LjMyNjU1NyAxMS4zMzMyOTYsLTkuMzQ5ODg2IDE4LjM2LC0xMi4wNyA3LjAyNjYyLC0yLjcxOTg4MSAxNC41NjMyNywtNC4wNzk4NzkgMjIuNjEsLTQuMDggNC44NzMyNiwxLjIxZS00IDkuMjkzMjYsMC4zOTY3ODcgMTMuMjYsMS4xOSAzLjk2NjU4LDAuNjgwMTE5IDcuNDIzMjUsMS40NzM0NTIgMTAuMzcsMi4zOCAyLjk0NjU3LDAuOTA2NzgzIDUuMzgzMjQsMS44NzAxMTUgNy4zMSwyLjg5IDEuOTI2NTcsMS4wMjAxMTMgMy4yODY1NywxLjc1Njc3OSA0LjA4LDIuMjEgbCAtNi4yOSwxNy41MSBjIC0yLjcyMDA5LC0xLjY5OTkwNCAtNi42MzAwOSwtMy4yODY1NjkgLTExLjczLC00Ljc2IC00Ljk4Njc1LC0xLjU4NjU2NiAtMTAuNDI2NzQsLTIuMzc5ODk4IC0xNi4zMiwtMi4zOCAtNS4xMDAwNiwxLjAyZS00IC05Ljg2MDA2LDAuOTA2NzY4IC0xNC4yOCwyLjcyIC00LjQyMDA1LDEuNzAwMDk3IC04LjI3MzM3OSw0LjMwNjc2MSAtMTEuNTYsNy44MiAtMy4xNzMzNzIsMy41MTM0MjEgLTUuNjY2NzAzLDcuOTMzNDE3IC03LjQ4LDEzLjI2IC0xLjgxMzM2Niw1LjMyNjczOSAtMi43MjAwMzIsMTEuNTAzMzk2IC0yLjcyLDE4LjUyOTk5NiAtMy4yZS01LDYuMjMzMzkgMC42Nzk5NjcsMTEuOTU2NzIgMi4wNCwxNy4xNyAxLjQ3MzI5OCw1LjIxMzM3IDMuNjgzMjk2LDkuNzQ2NyA2LjYzLDEzLjYgMi45NDY2MjMsMy43NDAwMyA2LjY4NjYyLDYuNjg2NjkgMTEuMjIsOC44NCA0LjUzMzI4LDIuMDQwMDIgOS45NzMyNywzLjA2MDAyIDE2LjMyLDMuMDYgNy41OTMyNiwyZS01IDEzLjc2OTkyLC0wLjczNjY1IDE4LjUzLC0yLjIxIDQuNzU5OTEsLTEuNTg2NjQgOC40NDMyNCwtMy4wNTk5NyAxMS4wNSwtNC40MiBsIDUuNzgsMTcuNTEgYyAtMS4zNjAxLDAuOTA2NjggLTMuMjMwMSwxLjgxMzM0IC01LjYxLDIuNzIgLTIuMjY2NzYsMC45MDY2NyAtNC45ODY3NiwxLjgxMzM0IC04LjE2LDIuNzIgLTMuMTczNDIsMC43OTMzNCAtNi43NDM0MiwxLjQxNjY3IC0xMC43MSwxLjg3IC0zLjk2Njc0LDAuNTY2NjcgLTguMjE2NzQsMC44NSAtMTIuNzUsMC44NSIKICAgICAgICAgaWQ9InBhdGg1MDEzIgogICAgICAgICBzdHlsZT0iZm9udC1zaXplOjE3MHB4O2ZvbnQtd2VpZ2h0OjUwMDtmaWxsOiMzMzMzMzM7LWlua3NjYXBlLWZvbnQtc3BlY2lmaWNhdGlvbjpVYnVudHUgTWVkaXVtIiAvPgogICAgPC9nPgogIDwvZz4KICA8ZwogICAgIGlkPSJsYXllcjMiCiAgICAgc3R5bGU9ImRpc3BsYXk6aW5saW5lIj4KICAgIDxnCiAgICAgICBpZD0idGV4dDM3NjEtOSIKICAgICAgIHN0eWxlPSJmb250LXNpemU6MjBweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXZhcmlhbnQ6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXN0cmV0Y2g6bm9ybWFsO3RleHQtYWxpZ246Y2VudGVyO2xpbmUtaGVpZ2h0OjEyNSU7bGV0dGVyLXNwYWNpbmc6MHB4O3dvcmQtc3BhY2luZzowcHg7dGV4dC1hbmNob3I6bWlkZGxlO2ZpbGw6IzMzMzMzMztmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZTtmb250LWZhbWlseTpVYnVudHU7LWlua3NjYXBlLWZvbnQtc3BlY2lmaWNhdGlvbjpVYnVudHUiPgogICAgICA8cGF0aAogICAgICAgICBkPSJtIDk5LjI4OTk5Myw0OC42Mjg5MzQgMjEuNDE5OTk3LDAgMCwxMTcuODA5OTk2IC0yMS40MTk5OTcsMCAwLC0xMTcuODA5OTk2IgogICAgICAgICBpZD0icGF0aDUwODYiCiAgICAgICAgIHN0eWxlPSJmb250LXNpemU6MTcwcHg7Zm9udC13ZWlnaHQ6NTAwO2ZpbGw6IzMzMzMzMzstaW5rc2NhcGUtZm9udC1zcGVjaWZpY2F0aW9uOlVidW50dSBNZWRpdW0iIC8+CiAgICA8L2c+CiAgPC9nPgogIDxnCiAgICAgaWQ9ImxheWVyNCIKICAgICBzdHlsZT0iZGlzcGxheTpub25lIj4KICAgIDxnCiAgICAgICBpZD0idGV4dDM3NjEtNyIKICAgICAgIHN0eWxlPSJmb250LXNpemU6MjBweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXZhcmlhbnQ6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXN0cmV0Y2g6bm9ybWFsO3RleHQtYWxpZ246Y2VudGVyO2xpbmUtaGVpZ2h0OjEyNSU7bGV0dGVyLXNwYWNpbmc6MHB4O3dvcmQtc3BhY2luZzowcHg7dGV4dC1hbmNob3I6bWlkZGxlO2ZpbGw6IzMzMzMzMztmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZTtmb250LWZhbWlseTpVYnVudHU7LWlua3NjYXBlLWZvbnQtc3BlY2lmaWNhdGlvbjpVYnVudHUiPgogICAgICA8cGF0aAogICAgICAgICBkPSJtIDE1NC42NzE0OCw0OC42Mjg5MzQgMCwxOC41MyAtMzYuMjEsMCAwLDk5LjI3OTk5NiAtMjEuNTg5OTk1LDAgMCwtOTkuMjc5OTk2IC0zNi4yMSwwIDAsLTE4LjUzIDk0LjAwOTk5NSwwIgogICAgICAgICBpZD0icGF0aDUwODkiCiAgICAgICAgIHN0eWxlPSJmb250LXNpemU6MTcwcHg7Zm9udC13ZWlnaHQ6NTAwO2ZpbGw6IzMzMzMzMzstaW5rc2NhcGUtZm9udC1zcGVjaWZpY2F0aW9uOlVidW50dSBNZWRpdW0iIC8+CiAgICA8L2c+CiAgPC9nPgo8L3N2Zz4K]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/icon-trait-13x13.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAA0AAAANCAYAAABy6+R8AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAA6AAAAOgBhtX2rwAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAADRSURBVCiR3ZKxTQNBFETf7K4uoQwISCDgn5wQQUQXFIB0EWUQOXAtLgCLZO8AITK7CVJu9xMYpBMWsmN+OJr3NSONzOwCmAOX7L8V0KVv4A24rbWOf7lDCAm4B+YyMwdOcs4bM7uWNPsNuPtL3/fLtm2PgXUCKKUUAEmn7n4TQjhy9xZ4dvcPSZ/AspRSYoyk6cec8wJYmNm5pNda690wDE87UQ8ov9vvv0IxxjgVx3HcSLpqmuZ9qv/4ZGaPbBfxcOAizhLQsZ3SOoS9aVdA9wUmn0iraysBGAAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/icon-trait.svg</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtbG5zOmNjPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9ucyMiCiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB2ZXJzaW9uPSIxLjEiCiAgIHdpZHRoPSIyMjAiCiAgIGhlaWdodD0iMjIwIgogICBpZD0ic3ZnMiI+CiAgPGRlZnMKICAgICBpZD0iZGVmczQiIC8+CiAgPG1ldGFkYXRhCiAgICAgaWQ9Im1ldGFkYXRhNyI+CiAgICA8cmRmOlJERj4KICAgICAgPGNjOldvcmsKICAgICAgICAgcmRmOmFib3V0PSIiPgogICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2Uvc3ZnK3htbDwvZGM6Zm9ybWF0PgogICAgICAgIDxkYzp0eXBlCiAgICAgICAgICAgcmRmOnJlc291cmNlPSJodHRwOi8vcHVybC5vcmcvZGMvZGNtaXR5cGUvU3RpbGxJbWFnZSIgLz4KICAgICAgICA8ZGM6dGl0bGU+PC9kYzp0aXRsZT4KICAgICAgPC9jYzpXb3JrPgogICAgPC9yZGY6UkRGPgogIDwvbWV0YWRhdGE+CiAgPGcKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSg3LjAyMTczNjEsOC4wNjk0OTYyKSIKICAgICBpZD0ibGF5ZXIxIj4KICAgIDxwYXRoCiAgICAgICBkPSJNIDYwLDEwIEMgMzIuMywxMCAxMCwzMi4zIDEwLDYwIGwgMCwxMDAgYyAwLDI3LjcgMjIuMyw1MCA1MCw1MCBsIDEwMCwwIGMgMjcuNywwIDUwLC0yMi4zIDUwLC01MCBMIDIxMCw2MCBDIDIxMCwzMi4zIDE4Ny43LDEwIDE2MCwxMCBMIDYwLDEwIHogbSA4LjkwNjI1LDE3Ljc4MTI1IDgyLjE4NzUsMCBjIDIyLjc3NDQsMCA0MS4xMjUsMTguMzUwNjAxIDQxLjEyNSw0MS4xMjUgbCAwLDgyLjE4NzUgYyAwLDIyLjc3NDQgLTE4LjM1MDYsNDEuMTI1IC00MS4xMjUsNDEuMTI1IGwgLTgyLjE4NzUsMCBjIC0yMi43NzQzOTksMCAtNDEuMTI1LC0xOC4zNTA2IC00MS4xMjUsLTQxLjEyNSBsIDAsLTgyLjE4NzUgYyAwLC0yMi43NzQzOTkgMTguMzUwNjAxLC00MS4xMjUgNDEuMTI1LC00MS4xMjUgeiIKICAgICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKC03LjAyMTczNjEsLTguMDY5NDk2MikiCiAgICAgICBpZD0icmVjdDQ5OTEiCiAgICAgICBzdHlsZT0iZmlsbDojMzMzMzMzO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lIiAvPgogIDwvZz4KICA8ZwogICAgIGlkPSJsYXllcjIiCiAgICAgc3R5bGU9ImRpc3BsYXk6bm9uZSI+CiAgICA8ZwogICAgICAgaWQ9InRleHQzNzYxIgogICAgICAgc3R5bGU9ImZvbnQtc2l6ZToyMHB4O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtdmFyaWFudDpub3JtYWw7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZvbnQtc3RyZXRjaDpub3JtYWw7dGV4dC1hbGlnbjpjZW50ZXI7bGluZS1oZWlnaHQ6MTI1JTtsZXR0ZXItc3BhY2luZzowcHg7d29yZC1zcGFjaW5nOjBweDt0ZXh0LWFuY2hvcjptaWRkbGU7ZmlsbDojMzMzMzMzO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO2ZvbnQtZmFtaWx5OlVidW50dTstaW5rc2NhcGUtZm9udC1zcGVjaWZpY2F0aW9uOlVidW50dSI+CiAgICAgIDxwYXRoCiAgICAgICAgIGQ9Im0gMTE5Ljc3NSwxNjguOTg4OTMgYyAtOC44NDAwNiwwIC0xNi43NzMzOCwtMS4zNiAtMjMuOCwtNC4wOCAtNy4wMjY3MDIsLTIuNzE5OTkgLTEyLjk3NjY5NiwtNi42ODY2NSAtMTcuODUsLTExLjkgLTQuODczMzUzLC01LjMyNjY0IC04LjYxMzM0OSwtMTEuNzg2NjQgLTExLjIyLC0xOS4zOCAtMi42MDY2NzcsLTcuNTkzMjkgLTMuOTEwMDA5LC0xNi4zMTk5NSAtMy45MSwtMjYuMTggLTllLTYsLTkuODU5OTI3IDEuNDczMzIyLC0xOC41ODY1ODUgNC40MiwtMjYuMTc5OTk2IDMuMDU5OTgzLC03LjU5MzI0IDcuMTk2NjQ2LC0xMy45OTY1NjcgMTIuNDEsLTE5LjIxIDUuMjEzMzAyLC01LjMyNjU1NyAxMS4zMzMyOTYsLTkuMzQ5ODg2IDE4LjM2LC0xMi4wNyA3LjAyNjYyLC0yLjcxOTg4MSAxNC41NjMyNywtNC4wNzk4NzkgMjIuNjEsLTQuMDggNC44NzMyNiwxLjIxZS00IDkuMjkzMjYsMC4zOTY3ODcgMTMuMjYsMS4xOSAzLjk2NjU4LDAuNjgwMTE5IDcuNDIzMjUsMS40NzM0NTIgMTAuMzcsMi4zOCAyLjk0NjU3LDAuOTA2NzgzIDUuMzgzMjQsMS44NzAxMTUgNy4zMSwyLjg5IDEuOTI2NTcsMS4wMjAxMTMgMy4yODY1NywxLjc1Njc3OSA0LjA4LDIuMjEgbCAtNi4yOSwxNy41MSBjIC0yLjcyMDA5LC0xLjY5OTkwNCAtNi42MzAwOSwtMy4yODY1NjkgLTExLjczLC00Ljc2IC00Ljk4Njc1LC0xLjU4NjU2NiAtMTAuNDI2NzQsLTIuMzc5ODk4IC0xNi4zMiwtMi4zOCAtNS4xMDAwNiwxLjAyZS00IC05Ljg2MDA2LDAuOTA2NzY4IC0xNC4yOCwyLjcyIC00LjQyMDA1LDEuNzAwMDk3IC04LjI3MzM3OSw0LjMwNjc2MSAtMTEuNTYsNy44MiAtMy4xNzMzNzIsMy41MTM0MjEgLTUuNjY2NzAzLDcuOTMzNDE3IC03LjQ4LDEzLjI2IC0xLjgxMzM2Niw1LjMyNjczOSAtMi43MjAwMzIsMTEuNTAzMzk2IC0yLjcyLDE4LjUyOTk5NiAtMy4yZS01LDYuMjMzMzkgMC42Nzk5NjcsMTEuOTU2NzIgMi4wNCwxNy4xNyAxLjQ3MzI5OCw1LjIxMzM3IDMuNjgzMjk2LDkuNzQ2NyA2LjYzLDEzLjYgMi45NDY2MjMsMy43NDAwMyA2LjY4NjYyLDYuNjg2NjkgMTEuMjIsOC44NCA0LjUzMzI4LDIuMDQwMDIgOS45NzMyNywzLjA2MDAyIDE2LjMyLDMuMDYgNy41OTMyNiwyZS01IDEzLjc2OTkyLC0wLjczNjY1IDE4LjUzLC0yLjIxIDQuNzU5OTEsLTEuNTg2NjQgOC40NDMyNCwtMy4wNTk5NyAxMS4wNSwtNC40MiBsIDUuNzgsMTcuNTEgYyAtMS4zNjAxLDAuOTA2NjggLTMuMjMwMSwxLjgxMzM0IC01LjYxLDIuNzIgLTIuMjY2NzYsMC45MDY2NyAtNC45ODY3NiwxLjgxMzM0IC04LjE2LDIuNzIgLTMuMTczNDIsMC43OTMzNCAtNi43NDM0MiwxLjQxNjY3IC0xMC43MSwxLjg3IC0zLjk2Njc0LDAuNTY2NjcgLTguMjE2NzQsMC44NSAtMTIuNzUsMC44NSIKICAgICAgICAgaWQ9InBhdGg1MDEzIgogICAgICAgICBzdHlsZT0iZm9udC1zaXplOjE3MHB4O2ZvbnQtd2VpZ2h0OjUwMDtmaWxsOiMzMzMzMzM7LWlua3NjYXBlLWZvbnQtc3BlY2lmaWNhdGlvbjpVYnVudHUgTWVkaXVtIiAvPgogICAgPC9nPgogIDwvZz4KICA8ZwogICAgIGlkPSJsYXllcjMiCiAgICAgc3R5bGU9ImRpc3BsYXk6bm9uZSI+CiAgICA8ZwogICAgICAgaWQ9InRleHQzNzYxLTkiCiAgICAgICBzdHlsZT0iZm9udC1zaXplOjIwcHg7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC12YXJpYW50Om5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7Zm9udC1zdHJldGNoOm5vcm1hbDt0ZXh0LWFsaWduOmNlbnRlcjtsaW5lLWhlaWdodDoxMjUlO2xldHRlci1zcGFjaW5nOjBweDt3b3JkLXNwYWNpbmc6MHB4O3RleHQtYW5jaG9yOm1pZGRsZTtmaWxsOiMzMzMzMzM7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7Zm9udC1mYW1pbHk6VWJ1bnR1Oy1pbmtzY2FwZS1mb250LXNwZWNpZmljYXRpb246VWJ1bnR1Ij4KICAgICAgPHBhdGgKICAgICAgICAgZD0ibSA5OS4yODk5OTMsNDguNjI4OTM0IDIxLjQxOTk5NywwIDAsMTE3LjgwOTk5NiAtMjEuNDE5OTk3LDAgMCwtMTE3LjgwOTk5NiIKICAgICAgICAgaWQ9InBhdGg1MDg2IgogICAgICAgICBzdHlsZT0iZm9udC1zaXplOjE3MHB4O2ZvbnQtd2VpZ2h0OjUwMDtmaWxsOiMzMzMzMzM7LWlua3NjYXBlLWZvbnQtc3BlY2lmaWNhdGlvbjpVYnVudHUgTWVkaXVtIiAvPgogICAgPC9nPgogIDwvZz4KICA8ZwogICAgIGlkPSJsYXllcjQiCiAgICAgc3R5bGU9ImRpc3BsYXk6aW5saW5lIj4KICAgIDxnCiAgICAgICBpZD0idGV4dDM3NjEtNyIKICAgICAgIHN0eWxlPSJmb250LXNpemU6MjBweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXZhcmlhbnQ6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmb250LXN0cmV0Y2g6bm9ybWFsO3RleHQtYWxpZ246Y2VudGVyO2xpbmUtaGVpZ2h0OjEyNSU7bGV0dGVyLXNwYWNpbmc6MHB4O3dvcmQtc3BhY2luZzowcHg7dGV4dC1hbmNob3I6bWlkZGxlO2ZpbGw6IzMzMzMzMztmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZTtmb250LWZhbWlseTpVYnVudHU7LWlua3NjYXBlLWZvbnQtc3BlY2lmaWNhdGlvbjpVYnVudHUiPgogICAgICA8cGF0aAogICAgICAgICBkPSJtIDE1NC42NzE0OCw0OC42Mjg5MzQgMCwxOC41MyAtMzYuMjEsMCAwLDk5LjI3OTk5NiAtMjEuNTg5OTk1LDAgMCwtOTkuMjc5OTk2IC0zNi4yMSwwIDAsLTE4LjUzIDk0LjAwOTk5NSwwIgogICAgICAgICBpZD0icGF0aDUwODkiCiAgICAgICAgIHN0eWxlPSJmb250LXNpemU6MTcwcHg7Zm9udC13ZWlnaHQ6NTAwO2ZpbGw6IzMzMzMzMzstaW5rc2NhcGUtZm9udC1zcGVjaWZpY2F0aW9uOlVidW50dSBNZWRpdW0iIC8+CiAgICA8L2c+CiAgPC9nPgo8L3N2Zz4K]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/iviewer/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/images/iviewer/grab.cur</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAABMLAAATCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////////////////////////////////8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////////////////////////////////DAwM/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////////////////////////////////////wICAv8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////////////////////////////////////////////////DQ0N/wAAAAAAAAAAAAAAAAAAAAADAwP//////////////////////////////////////////////////////wUFBf8AAAAAAAAAAAAAAAAAAAAAAAAA////////////////////////////////////////////////////////////BQUF/wAAAAAAAAAAAAAAAAAAAAABAQH/AAAA/////////////////////////////////////////////////wEBAf8AAAAAAAAAAAAAAAAAAAAAAAAAAAcHB/////////////////////////////////////////////////8CAgL/AAAAAAAAAAAAAAAAAAAAABoaGv///////////////////////////////////////////wAAAP//////AgIC/wAAAAAAAAAAAAAAAAAAAAAAAAD///////////8AAAD///////////8AAAD///////////8NDQ3/AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkJCf8AAAD/AAAAAAICAv8AAAD/AAAAAAEBAf8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+AcAwPgH3cDwBwAA4AMAAMADAADAAQAA4AEAAPABAADgAQAA4AMAAPJPAAD//wAA//8AAP//AAD//wAA//8AAA==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/iviewer/hand.cur</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAABMLAAATCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////////////////////////////////8aGhr/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////////////////////////////////AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQH//////////////////////////////////////wEBAf8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////////////////////////////////////////////////AQEB/wAAAAAAAAAAAAAAAAAAAAAAAAD//////////////////////////////////////////////////////xQUFP8AAAAAAAAAAAAAAAAAAAAAHh4e////////////////////////////////////////////////////////////DQ0N/wAAAAAAAAAAAAAA/////////////////////////////////////////////////////////////////wMDA/8AAAAADw8P/////////////////w8PD/////////////////////////////////////////////////8AAAD/AAAAAAAAAP///////////wwMDP8AAAD//////////////////////////////////////////////////////wAAAP8AAAAAAAAA/yEhIf8AAAD/AAAA//////////////////////////////////////8AAAD///////////8BAQH/AAAAAAAAAAAAAAAAAAAA////////////AAAA////////////AAAA////////////BAQE////////////AAAA/wAAAAAAAAAAAAAAAAkJCf///////////xYWFv///////////wICAv///////////wEBAf8AAAD//////wwMDP8AAAAAAAAAAAAAAP///////////wAAAP8NDQ3///////////8AAAD///////////8YGBj/AAAAAAcHB/8AAAAAAAAAAAAAAAABAQH///////////8BAQH/AAAA////////////BQUF////////////AAAA/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD/AAAAAAAAAP///////////wUFBf8EBAT/AwMD/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wQEBP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+AcgIPgHICDwByAg4AMgIMADICDAASAggAEgIAABICAAACAggAAgIOAAICDgACAgwAUgIMAHICDkDyAg/n8gIA==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/iviewer/iviewer.rotate_left.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABXdJREFUWMPFlntQlFUYxg9qjjqiVprllONE/VGOOkmjqZiwkIymjgaIaZlTNjg14zRNSiFNIMoiiJI3QDRQEfEGLKh5SW7LrojKRVYJ5bbLLgsrIPebyNN7vt2lBZZFTO3M/ObAt+ec9/ne814+BoD9nzzLMWxxIEtauovxU4ezFzyGOm1nceLTDIt3CgJefqHGHbexuN9OMfyt8oJTgCDgtRf35tz4WYaMe6txV70V87YyiPwZHMXdqMk7Yr72WRsfttCfJflKGOQl6xCazlCg3Yu8qqXI162A4sEylNVEoKAyHJHS9fD4YypEW9lPtG/IUxlz3JIoXeCVBHuvC/jEWy7l9+wcyHCr4hscus4Qfo0hTM5wLJtjJcyxOW/hzO13kV6yCoW6MIRcXA1HPxbPzxuM8SF2G6M8vGPzoGkFKtsB+1/S+T1PEf3KrvpeZIjMY4ggg4eIyFyGqDz9s8M5DAfpWdhNEpM/CXd1gdh10R0iHxY0mCsZOd8zvkJa1IQ/C5ugagLm/3yJC3ibmP6xJ0vzuURG7zIcIRy2MSyku18SzLDhOEMgXU3kHfIQCTqqsEaObjO+PjgZsz3Y+7TfaiDjVh9+tUP07QE5lI1A4FUVVI1cwDkuYBIxnpjJRfgmM5xQMjjvELJgkY09+266OwtYuJ21eJCQyEISQUISlbYIz/wITr5MQuteGkjAcLsfT0ii5WqklLTA/4oK5YIHEo2pNtQoYgGJ8Kc4+DRIEPAeMZngb7mAiwjKoisqJi+UWOO8djac9ek6xqL1KXNdX/8s4IpgNFRWgeCU8t4CmKkIR28mX6avhBMNgTaKC5n5JfNZH8MQXUFohiGhZiIW6T013mKO2/1wLDjk/D1cU7VjT5qa0JgTYBQxgZgxYgyz7VUJR81cw75YQhWSG3UW6+clQaxxoII12s5TgsKaLpzMqUGYTCugD0KJuWrH39iaGNurF/B7foOYRTgaEBEfEOP6Tb0530ds8IrJRW5lJyKuVeJQZpUwWxDQbyATI4hXDHuMjLMUhCPnb47TZlDqxSvqEJWlwxEiMqtKyALumedZ77tTL1/Xiejsahw3EH2rWkjH5y1ASL1jMjWSi5pxMrcGpwg+x1IslJGAeZsThDqw9oA0YRUJdd8nrVrud+adJyksAw6eeivEV1BUD8Tdru3BWaKsAZi7KZ4LsFm1XwY+mlsfwet0HtyCLz91s+mRersp9TLK2pB4p64HEsJEwFS3vRmCgAxVrTAfTi2Ca0hK6mCbTZ/UU1Q9prrfgAsF9X0o/VfANFeDgL+KdZAqq/EYXcgurcW6iEys8E+YNdgr6U69G5oOXCYB5iit7ysgs7wW19WE5iEetFK77OrCptgcuO2+Gj64rkepl3q/AdLSFiTfbzKLOQH5lQ1QcKoahL/L6pqF5zFyJVx/T9cs9zttM5A3rGwNqad40IV0EpBW0tyH9NJmlJgIcNmjF1BcS89N4P8bRRRo6rH2YCZW7rIcoELqHZGWI4vcLy9rhcwMcmWbWQHaxrY+VBjmjsddwhrfeAXcQlLNByhPveXiy7j3ELip7sB1VZtZbpS3o5gEzOkloL6tA3Wt/dPa2Smsk2Sr4bJHChexpEeAdqdeATWe3MpHyNV2IMcMefSb3gMJPWKAv2MnBZ4ljENd24KNR29h9d6UKGOAjhZ5nxMqnJIaDX/D/uApqG3rbkbTjIXoacaaUDk/YzQX8KrTloRyhy1JQp/ndaA/+O/8y9jB84ySf+24BZ5Lc98nA78KwbVPAPfa5wdkWLnzvNTQIYX+PYNwMOnXluDrphNv8mrIP7mecJ8p9oa91sYPhrG9erUlJhjWjzAcMGEQe03PsP4vJfuZjX8AgDmxlj4vX40AAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/iviewer/iviewer.rotate_right.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABWxJREFUWMPFlgtQlFUYho9CTjUaWqRlkzlZzWRppY2mQsolTVNHE7zmZRobnJpxmkbRQR3FlFUJNTRhRcMLKooKC97C5LYXLioXQQmFZXdZWFhlBeWyIOzbd35WhGWBHyfzzDxz/tv5v/ec873nHAaAPU96UvrM2MkwbQeLo2tH9hzKgGm/MUiiGDy3srN07/B/CxjouY3hH50fNp5i8NjybEU4UC8lHhKmJ8BxD2CYsJnhln4zFLcXYuOZZzMSvd03s1U+fw5HuHw58sul0FSGIe/uTOQaZyOnYgbyDXsQksKgUi+Dv4xhiuS/ywnHGYF9onddWoACYyhS1PNx+sb7iMx6G0czGdFLqENVDNJUhgPpDNcNy/B1IOOpPOCrDRfkk9bFYaJfHDzWxcp7KsrBfRML3HlpLm4atyMydzBCrzHsp4AHsxjCcxgOEeHZFJiehWW2PPO/RFOzgV2h9kMn+V1AeQNQWg+sj8yBy8pDPnxExQTvNdaHDf9+/xBkGX1xJK8fpDzYTYYdNNQrjjFMD2KYTHngtoXh8C0SQ2z6i+HLNSyZ2o8k3nVdex66GuBiQQ3khTVwXRNdRs9fEiPgBU9/JpOmfYFY7WhIKXB4AYMPBZ68ldWNnMe2DZvEfqTvpk7ZznBCSz1PaA0+inAmBruuPQfdQ2DHFR20VP+wT4XPl2535x3sTsArU8he5w1jcUTdDweKGAIzWoLTu4nEcGII8eE3NN8BNP8T2wfnLhjoujYWJTQCAZd1SFTXIUKlh8svJ2R8AetOgPNU6llM5SBElDoiooxh+XGGUYvZJmvgl60JNWgmrYQe61mqTXDWVkBQYglClGXC9bfbLmPoeK83ul1gpgeyh1wEWQq8nk4r3qhF7Dtr8NaV0DrfnxCv2/i/VUBwcimhR6quAbvP34bLz0eDulsr+hOfEXy+PKyMId7k+dF2LyCciH52LEYCZEIShioNAiezKlFQaYHLGhm3ad8uk9AqYmAbXiVeFJNAtgLCUstxIK1CqLPLm+B3PBvjfgpbIdaST71P8J5yF4RnVOBwhhGHiOi8Kii4JX3PGsRa8qkFTPCNEewXcf0ejmW2EEHkGpt6ZElRC9esX0+/N2+vvGL+H0oslaZW0LO3xq+OgYYERNLcn8yuxKnsljqhsBZHleIt2e1m5R0Uv8ovKge15kfghYug5x+MXx0NzQPgzA0TztpQWA3MloizZJebldfuxKSDSYVobLJAoTMJArz3KLiAjx8LkN2sQqwNCo0Zu0Ra0u6Qzw6IGbMsLA2ZxSaYm5uh0N7D30VGQYBXi4ARXEAxCbiQX92BiwUPkFfRLMqSHXZJ710J0tUns/CoqRllNWakl95Hut6ENL2powAa6ngKZo+rpY09siQlWtQwr99TSk+otEIgTVUtcst5Twiq+bU9AQl3auwiL65D0p0HoizZe+7O+FVL9qchv6xaCKKl4EWmWqjbwO95mRP8RICaPk8prkWyuiMpJCDvrkWw5OguLOnovTspyT86T/h5Q7MFhofmTrEnQKU1Q6mp74CKyKBpOCwvsWvJXnMksjFzguWQZeqFH9fTnFfVN3ZKtbmxnYBxJKCIBFwtaUC6zmyXa/pG3L4PzJLEt7Okw8I9ieErj1yH3lSHx6XJYukSi/W7JzkQI4xATvkjZBkaO5DNoXf5tEHZWrLvohAVnrZYF6IRfDMy0KxwK/KR6AwtbVh8xXRff67Vks5LQpU1C/Yphd7waRCHAvP2KrE4RHGf/vGRm2+Uhp+I+bmA+70z+Hs3Oj17rospoXavdXYeEAtv8ynxjvWw4iaynZv1YOPU2XmgJ/S3npycrCclse2cbA48z6f8CxeSsmD2KTWvAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/iviewer/iviewer.zoom_fit.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2RpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDozRjE4NkRCRkVCN0JFMDExODBERUJDM0QxRjY2MzNCMSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo4RkU1MjFBN0YzNTQxMUUwQTgxRkE0QUYwRjU5QkY0QSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4RkU1MjFBNkYzNTQxMUUwQTgxRkE0QUYwRjU5QkY0QSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4MTc5MDFEQTYyRERFMDExQTdBMTk4NkNFRjM1MkFEMyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDozRjE4NkRCRkVCN0JFMDExODBERUJDM0QxRjY2MzNCMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PlTc7RkAAAEWSURBVHja3FddCoMwDF72Jgy6QwiCFxIED6aPgoMdYLBb7Ml7bAh7dS2kkJXK2rSdboUP/CH52vRL0sIucMzzzLLbM/mE4lQAAPFN4uij1ytJgF5tiwaYW5ZyVZIQYoT6hIgzKUeMEgfE6GpHQ80hfkqUxKbEb8mJG0seN6mJW1sBQUetD3GIqsHXhqNqH/WeY6h6kqhpiSRYshFoM3H3WKVJYdZmF2J0XJipZhKLBRFlH6Ly9k6dEueZTXTq32aaBJ3ZTSIPCHWOPlh5rARSMcRVhYiLYvAgHv6igOjRISFQZ+iwS90WV2kSq7bFKAeBEHHpxlFzxLWZw94lIe/Vloucm8Qdn49yJY+fuUlAhH1j2b0EGAAsrdDtPhEtrAAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/iviewer/iviewer.zoom_in.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2RpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDozRjE4NkRCRkVCN0JFMDExODBERUJDM0QxRjY2MzNCMSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpBNzg4MzJBMUYzNTQxMUUwQTRCNENENUJBMjhGNTEyOSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpBNzg4MzJBMEYzNTQxMUUwQTRCNENENUJBMjhGNTEyOSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo2NzM1OEYwMDY4RTBFMDExQTEyN0Q1MzRBODU0NTU1RiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDozRjE4NkRCRkVCN0JFMDExODBERUJDM0QxRjY2MzNCMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pic1crIAAAG+SURBVHjavJbBSsNAEIYbC4GCEMipUAgUhEJPgT6AJ6FvUBC8CoJQ8FTwGfoCgg/gXdBLoVdBqHhKj0KLXpReK5U4A5MyrLubySZx4Kdldme/7GR2Nl6jpKVp6hTn5YyHoBFoCOqAYvK/gNagR9AdwL8aFVkLNAFtcFM52tDcFu5eKp21QU8CoCqMabuCMZ1vyoIJ6Ao0ADVJA/IlylyM7RQF+5qdTinttlcy1ezcLwKesOAtFZS0qocUk8VPpOAA9MkCxzqGoj2YFhqzMVwrkIBPWdArvcei4CbFZuMXNvABxY8Y4Bb049BIMOaGuUSvildnz7JLrdiu+8y/kqSaNwq/BPiQF6gk1XXYt20wA38wX1QCxmPXEvDSUBQek+6C8SBtfOyY/V9KnvSsouO0kB4n3kB4gV06gM+VGyv4j5Z54toys0viuYJLYgfqulyLK8O1GLN5MfXmxHC20T/DZlTkQyBy/BDYaXzvJrgthdcFPn1w7pEhA1p4noVU4ffKUVmQD8dCttjM8HB/4KVNWaxPkFx4pWAhvFsLWACf1wamhXsG+LZWsAU+rx1MADxmDwTF3wj9XhVgF/sVYAAy1yBFOaoPDQAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/iviewer/iviewer.zoom_out.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2RpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDozRjE4NkRCRkVCN0JFMDExODBERUJDM0QxRjY2MzNCMSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpBN0QxOThDNEYzNTQxMUUwQkZCOUE5NTNBRTAyQ0IyRCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpBN0QxOThDM0YzNTQxMUUwQkZCOUE5NTNBRTAyQ0IyRCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo2NTM1OEYwMDY4RTBFMDExQTEyN0Q1MzRBODU0NTU1RiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDozRjE4NkRCRkVCN0JFMDExODBERUJDM0QxRjY2MzNCMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PrmQubEAAAG6SURBVHjavJbBSsNAEIYbC4GCEMipUAgUhEJPgT6AJ6FvUBC8CoJQ8BTwGfoCgg/gXdBLoVdBqHhKj0KLXpReK5U4AxMY1mx2dpM48NMy2ZkvO9mdXa9V0bIsc4rzDM9D0AQ0BvVAMflfQBvQI+gO4F+tmqwDSkBbnJRBWxrbwdlLVWRd0JMAqApjuq5gLOebkjAFXYFGoDZpRL5UGYuxPVuwXzDTGZW97JPMCmbu24ATFryjBSVd1WOKyeMTKTgAfbLAqc12okRTFo+5Agn4lAW90ne0BbcpNs9zUQY+oPgJy3UL+nFoJBhzw1yiT8VX54Dnk4jNesj8a0mpeaPwK4AP+QKVlLoJ+y57mIM/mC+qAOOxGwl4pVkUnklQNn7QHLP/K8mbntW0nZbS7cQbCF9glw7gc+XECv6jZZ64tsz8kHiu4ZDYg/oux+JacyzGbFxMvTnV7G30z7EZ2VwEIseLwL7A966Dl5Xw2uLqg2OPNBUohJsspBV+r2yVJfnwWciSzTUv9wde2ZRkQ4IY4bWChfB+I2ABfNEYmBIPNPBdo+AS+KJxMAFwmz0QFH8j9Ht1gF3sV4ABAAkfEFlXCHkAAAAAAElFTkSuQmCC]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/images/iviewer/iviewer.zoom_zero.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2RpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDozRjE4NkRCRkVCN0JFMDExODBERUJDM0QxRjY2MzNCMSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoyQjA3QTVCMUYzNTQxMUUwQTYxOUM5MDMzMjNGMEQ5OSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoyQjA3QTVCMEYzNTQxMUUwQTYxOUM5MDMzMjNGMEQ5OSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo2MDgwMkVEN0YyREZFMDExQjM5QTlBMjFDMkNBNzIyQSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDozRjE4NkRCRkVCN0JFMDExODBERUJDM0QxRjY2MzNCMSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PnMNZRoAAAB1SURBVHjaYvz//z/DQAAmhgECGBYzMjJSHATEmDFgPmYh18U0sRiY4BiHbVAzDlR2YqFV/IKiC5tZsGhkoaWvYJaAHICebgZPATJq8ajFQ8ZiYFZiHigf84zG8ajFoxbTv81FxcLjPzobXkeP9iSGvcUAAQYA3cwkU5PSBGAAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT5Gcm9udEVuZFVzZXJzIDIuMy4xPC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImF1dGhvciIgY29udGVudD0iIi8+CiAgICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iIi8+CgogICAgPGxpbmsgaHJlZj0iY3NzL2Jvb3RzdHJhcC1jb21iaW5lZC5uby1pY29ucy5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iY3NzL3ByaXNtLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICA8bGluayBocmVmPSJjc3MvdGVtcGxhdGUuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIAogICAgPCEtLVtpZiBsdCBJRSA5XT4KICAgIDxzY3JpcHQgc3JjPSJqcy9odG1sNS5qcyI+PC9zY3JpcHQ+CiAgICA8IVtlbmRpZl0tLT4KICAgIDxzY3JpcHQgc3JjPSJqcy9qcXVlcnktMS4xMS4wLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0ianMvdWkvMS4xMC40L2pxdWVyeS11aS5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9ImpzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9ImpzL2pxdWVyeS5zbW9vdGgtc2Nyb2xsLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSJqcy9wcmlzbS5taW4uanMiPjwvc2NyaXB0PgogICAgPCEtLSBUT0RPOiBBZGQgaHR0cDovL2pzY3JvbGxwYW5lLmtlbHZpbmx1Y2suY29tLyB0byBzdHlsZSB0aGUgc2Nyb2xsYmFycyBmb3IgYnJvd3NlcnMgbm90IHVzaW5nIHdlYmtpdC0tPgogICAgCiAgICA8bGluayByZWw9InNob3J0Y3V0IGljb24iIGhyZWY9ImltYWdlcy9mYXZpY29uLmljbyIvPgogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSJpbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi5wbmciLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjcyeDcyIiBocmVmPSJpbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi03Mng3Mi5wbmciLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjExNHgxMTQiIGhyZWY9ImltYWdlcy9hcHBsZS10b3VjaC1pY29uLTExNHgxMTQucG5nIi8+CjwvaGVhZD4KPGJvZHk+Cgo8ZGl2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWZpeGVkLXRvcCI+CiAgICA8ZGl2IGNsYXNzPSJuYXZiYXItaW5uZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxhIGNsYXNzPSJidG4gYnRuLW5hdmJhciIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iLm5hdi1jb2xsYXBzZSI+CiAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1lbGxpcHNpcy12ZXJ0aWNhbCI+PC9pPgogICAgICAgICAgICA8L2E+CiAgICAgICAgICAgIDxhIGNsYXNzPSJicmFuZCIgaHJlZj0iaW5kZXguaHRtbCI+RnJvbnRFbmRVc2VycyAyLjMuMTwvYT4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1jb2xsYXBzZSI+CiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBwdWxsLXJpZ2h0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJjaGFydHMtbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGFydHMgPGIgY2xhc3M9ImNhcmV0Ij48L2I+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJncmFwaHMvY2xhc3MuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7Q2xhc3MgaGllcmFyY2h5IGRpYWdyYW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wZG93biIgaWQ9InJlcG9ydHMtbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXBvcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0icmVwb3J0cy9lcnJvcnMuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7RXJyb3JzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjEwNjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9InJlcG9ydHMvbWFya2Vycy5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtNYXJrZXJzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJyZXBvcnRzL2RlcHJlY2F0ZWQuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0RlcHJlY2F0ZWQgPHNwYW4gY2xhc3M9ImxhYmVsIGxhYmVsLWluZm8gcHVsbC1yaWdodCI+MTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgPCEtLTxkaXYgY2xhc3M9ImdvX3RvX3RvcCI+LS0+CiAgICA8IS0tPGEgaHJlZj0iI19fXyIgc3R5bGU9ImNvbG9yOiBpbmhlcml0Ij5CYWNrIHRvIHRvcCYjMTYwOyYjMTYwOzxpIGNsYXNzPSJpY29uLXVwbG9hZCBpY29uLXdoaXRlIj48L2k+PC9hPi0tPgogICAgPCEtLTwvZGl2Pi0tPgo8L2Rpdj4KCjxkaXYgaWQ9Il9fXyIgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+CiAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjIgc2lkZWJhciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uIiBzdHlsZT0ibWFyZ2luLWJvdHRvbTogMCI+CiAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWdyb3VwIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWhlYWRpbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iYWNjb3JkaW9uLXRvZ2dsZSAiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNuYW1lc3BhY2UtMTQxMDU5MDQ5NiI+PC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Im5hbWVzcGFjZXMvZGVmYXVsdC5odG1sIiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDMwcHg7IHBhZGRpbmctbGVmdDogMCI+XDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgaWQ9Im5hbWVzcGFjZS0xNDEwNTkwNDk2IiBjbGFzcz0iYWNjb3JkaW9uLWJvZHkgY29sbGFwc2UgaW4iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWlubmVyIj4KCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGFzcyI+PGEgaHJlZj0iY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeS5odG1sIj5mZXVfdXNlcl9xdWVyeTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGFzcyI+PGEgaHJlZj0iY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCI+ZmV1X3VzZXJfcXVlcnlfb3B0PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSJjbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5odG1sIj5mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9ImNsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sIj5Gcm9udEVuZFVzZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj4KICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW4xMCBvZmZzZXQyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgbmFtZXNwYWNlIj4KICAgICAgICAgICAgICAgICAgICA8bmF2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25hdj4KICAgICAgICAgICAgICAgICAgICA8aDE+PHNtYWxsPjwvc21hbGw+XDwvaDE+CgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyPkNsYXNzZXM8L2gyPgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48YSBocmVmPSJjbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwiPmZldV91c2VyX3F1ZXJ5PC9hPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGVtPjwvZW0+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGEgaHJlZj0iY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCI+ZmV1X3VzZXJfcXVlcnlfb3B0PC9hPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGVtPjwvZW0+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGEgaHJlZj0iY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQuaHRtbCI+ZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0PC9hPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGVtPjwvZW0+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGEgaHJlZj0iY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwiPkZyb250RW5kVXNlcnM8L2E+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48ZW0+VGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLCBiZXNpZGVzIGJlaW5nIGEgbW9kdWxlIHRvIHByb3ZpZGUgYXV0aGVudGljYXRpb24gc2VydmljZXMgdG8gdGhlIGZyb250ZW5kIG9mIGEgQ01TTVMgd2Vic2l0ZSBhbHNvIGhhcyBhIGNvbXBsZXRlCmFuZCBmbGV4aWJsZSBBUEkuPC9lbT48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkdD5OYW1lc3BhY2UgaGllcmFyY2h5PC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGNsYXNzPSJoaWVyYXJjaHkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYW1lc3BhY2Utd3JhcHBlciI+XDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L2RkPgogICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgICAgICA8L2FzaWRlPgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIAogICAgICAgICAgICAKICAgICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj4KCiAgICA8Zm9vdGVyIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuMTAgb2Zmc2V0MiI+CiAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQxIj4KICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIGZvb3Rlci1zZWN0aW9ucyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWJhci1jaGFydCI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9ImdyYXBocy9jbGFzcy5odG1sIj5DbGFzcyBIaWVyYXJjaHkgRGlhZ3JhbTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1wdXNocGluIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0icmVwb3J0cy9lcnJvcnMuaHRtbCI+RXJyb3JzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSJyZXBvcnRzL21hcmtlcnMuaHRtbCI+TWFya2VyczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuMTAgb2Zmc2V0MSI+CiAgICAgICAgICAgICAgICAgICAgPGhyIC8+CiAgICAgICAgICAgICAgICAgICAgRG9jdW1lbnRhdGlvbiBpcyBwb3dlcmVkIGJ5IDxhIGhyZWY9Imh0dHA6Ly93d3cucGhwZG9jLm9yZy8iPnBocERvY3VtZW50b3IgPC9hPiBhbmQgYXV0aG9yZWQKICAgICAgICAgICAgICAgICAgICBvbiBGZWJydWFyeSAxMnRoLCAyMDE3IGF0IDA5OjQ1LgogICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgPC9zZWN0aW9uPgogICAgPC9mb290ZXI+CjwvZGl2PgoKPC9ib2R5Pgo8L2h0bWw+Cg==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/js/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/js/bootstrap.min.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoqCiogQm9vdHN0cmFwLmpzIGJ5IEBmYXQgJiBAbWRvCiogcGx1Z2luczogYm9vdHN0cmFwLXRyYW5zaXRpb24uanMsIGJvb3RzdHJhcC1tb2RhbC5qcywgYm9vdHN0cmFwLWRyb3Bkb3duLmpzLCBib290c3RyYXAtc2Nyb2xsc3B5LmpzLCBib290c3RyYXAtdGFiLmpzLCBib290c3RyYXAtdG9vbHRpcC5qcywgYm9vdHN0cmFwLXBvcG92ZXIuanMsIGJvb3RzdHJhcC1hZmZpeC5qcywgYm9vdHN0cmFwLWFsZXJ0LmpzLCBib290c3RyYXAtYnV0dG9uLmpzLCBib290c3RyYXAtY29sbGFwc2UuanMsIGJvb3RzdHJhcC1jYXJvdXNlbC5qcywgYm9vdHN0cmFwLXR5cGVhaGVhZC5qcwoqIENvcHlyaWdodCAyMDEyIFR3aXR0ZXIsIEluYy4KKiBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAudHh0CiovCiFmdW5jdGlvbihhKXthKGZ1bmN0aW9uKCl7YS5zdXBwb3J0LnRyYW5zaXRpb249ZnVuY3Rpb24oKXt2YXIgYT1mdW5jdGlvbigpe3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJvb3RzdHJhcCIpLGI9e1dlYmtpdFRyYW5zaXRpb246IndlYmtpdFRyYW5zaXRpb25FbmQiLE1velRyYW5zaXRpb246InRyYW5zaXRpb25lbmQiLE9UcmFuc2l0aW9uOiJvVHJhbnNpdGlvbkVuZCBvdHJhbnNpdGlvbmVuZCIsdHJhbnNpdGlvbjoidHJhbnNpdGlvbmVuZCJ9LGM7Zm9yKGMgaW4gYilpZihhLnN0eWxlW2NdIT09dW5kZWZpbmVkKXJldHVybiBiW2NdfSgpO3JldHVybiBhJiZ7ZW5kOmF9fSgpfSl9KHdpbmRvdy5qUXVlcnkpLCFmdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbihiLGMpe3RoaXMub3B0aW9ucz1jLHRoaXMuJGVsZW1lbnQ9YShiKS5kZWxlZ2F0ZSgnW2RhdGEtZGlzbWlzcz0ibW9kYWwiXScsImNsaWNrLmRpc21pc3MubW9kYWwiLGEucHJveHkodGhpcy5oaWRlLHRoaXMpKSx0aGlzLm9wdGlvbnMucmVtb3RlJiZ0aGlzLiRlbGVtZW50LmZpbmQoIi5tb2RhbC1ib2R5IikubG9hZCh0aGlzLm9wdGlvbnMucmVtb3RlKX07Yi5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOmIsdG9nZ2xlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXNbdGhpcy5pc1Nob3duPyJoaWRlIjoic2hvdyJdKCl9LHNob3c6ZnVuY3Rpb24oKXt2YXIgYj10aGlzLGM9YS5FdmVudCgic2hvdyIpO3RoaXMuJGVsZW1lbnQudHJpZ2dlcihjKTtpZih0aGlzLmlzU2hvd258fGMuaXNEZWZhdWx0UHJldmVudGVkKCkpcmV0dXJuO3RoaXMuaXNTaG93bj0hMCx0aGlzLmVzY2FwZSgpLHRoaXMuYmFja2Ryb3AoZnVuY3Rpb24oKXt2YXIgYz1hLnN1cHBvcnQudHJhbnNpdGlvbiYmYi4kZWxlbWVudC5oYXNDbGFzcygiZmFkZSIpO2IuJGVsZW1lbnQucGFyZW50KCkubGVuZ3RofHxiLiRlbGVtZW50LmFwcGVuZFRvKGRvY3VtZW50LmJvZHkpLGIuJGVsZW1lbnQuc2hvdygpLGMmJmIuJGVsZW1lbnRbMF0ub2Zmc2V0V2lkdGgsYi4kZWxlbWVudC5hZGRDbGFzcygiaW4iKS5hdHRyKCJhcmlhLWhpZGRlbiIsITEpLGIuZW5mb3JjZUZvY3VzKCksYz9iLiRlbGVtZW50Lm9uZShhLnN1cHBvcnQudHJhbnNpdGlvbi5lbmQsZnVuY3Rpb24oKXtiLiRlbGVtZW50LmZvY3VzKCkudHJpZ2dlcigic2hvd24iKX0pOmIuJGVsZW1lbnQuZm9jdXMoKS50cmlnZ2VyKCJzaG93biIpfSl9LGhpZGU6ZnVuY3Rpb24oYil7YiYmYi5wcmV2ZW50RGVmYXVsdCgpO3ZhciBjPXRoaXM7Yj1hLkV2ZW50KCJoaWRlIiksdGhpcy4kZWxlbWVudC50cmlnZ2VyKGIpO2lmKCF0aGlzLmlzU2hvd258fGIuaXNEZWZhdWx0UHJldmVudGVkKCkpcmV0dXJuO3RoaXMuaXNTaG93bj0hMSx0aGlzLmVzY2FwZSgpLGEoZG9jdW1lbnQpLm9mZigiZm9jdXNpbi5tb2RhbCIpLHRoaXMuJGVsZW1lbnQucmVtb3ZlQ2xhc3MoImluIikuYXR0cigiYXJpYS1oaWRkZW4iLCEwKSxhLnN1cHBvcnQudHJhbnNpdGlvbiYmdGhpcy4kZWxlbWVudC5oYXNDbGFzcygiZmFkZSIpP3RoaXMuaGlkZVdpdGhUcmFuc2l0aW9uKCk6dGhpcy5oaWRlTW9kYWwoKX0sZW5mb3JjZUZvY3VzOmZ1bmN0aW9uKCl7dmFyIGI9dGhpczthKGRvY3VtZW50KS5vbigiZm9jdXNpbi5tb2RhbCIsZnVuY3Rpb24oYSl7Yi4kZWxlbWVudFswXSE9PWEudGFyZ2V0JiYhYi4kZWxlbWVudC5oYXMoYS50YXJnZXQpLmxlbmd0aCYmYi4kZWxlbWVudC5mb2N1cygpfSl9LGVzY2FwZTpmdW5jdGlvbigpe3ZhciBhPXRoaXM7dGhpcy5pc1Nob3duJiZ0aGlzLm9wdGlvbnMua2V5Ym9hcmQ/dGhpcy4kZWxlbWVudC5vbigia2V5dXAuZGlzbWlzcy5tb2RhbCIsZnVuY3Rpb24oYil7Yi53aGljaD09MjcmJmEuaGlkZSgpfSk6dGhpcy5pc1Nob3dufHx0aGlzLiRlbGVtZW50Lm9mZigia2V5dXAuZGlzbWlzcy5tb2RhbCIpfSxoaWRlV2l0aFRyYW5zaXRpb246ZnVuY3Rpb24oKXt2YXIgYj10aGlzLGM9c2V0VGltZW91dChmdW5jdGlvbigpe2IuJGVsZW1lbnQub2ZmKGEuc3VwcG9ydC50cmFuc2l0aW9uLmVuZCksYi5oaWRlTW9kYWwoKX0sNTAwKTt0aGlzLiRlbGVtZW50Lm9uZShhLnN1cHBvcnQudHJhbnNpdGlvbi5lbmQsZnVuY3Rpb24oKXtjbGVhclRpbWVvdXQoYyksYi5oaWRlTW9kYWwoKX0pfSxoaWRlTW9kYWw6ZnVuY3Rpb24oKXt2YXIgYT10aGlzO3RoaXMuJGVsZW1lbnQuaGlkZSgpLHRoaXMuYmFja2Ryb3AoZnVuY3Rpb24oKXthLnJlbW92ZUJhY2tkcm9wKCksYS4kZWxlbWVudC50cmlnZ2VyKCJoaWRkZW4iKX0pfSxyZW1vdmVCYWNrZHJvcDpmdW5jdGlvbigpe3RoaXMuJGJhY2tkcm9wJiZ0aGlzLiRiYWNrZHJvcC5yZW1vdmUoKSx0aGlzLiRiYWNrZHJvcD1udWxsfSxiYWNrZHJvcDpmdW5jdGlvbihiKXt2YXIgYz10aGlzLGQ9dGhpcy4kZWxlbWVudC5oYXNDbGFzcygiZmFkZSIpPyJmYWRlIjoiIjtpZih0aGlzLmlzU2hvd24mJnRoaXMub3B0aW9ucy5iYWNrZHJvcCl7dmFyIGU9YS5zdXBwb3J0LnRyYW5zaXRpb24mJmQ7dGhpcy4kYmFja2Ryb3A9YSgnPGRpdiBjbGFzcz0ibW9kYWwtYmFja2Ryb3AgJytkKyciIC8+JykuYXBwZW5kVG8oZG9jdW1lbnQuYm9keSksdGhpcy4kYmFja2Ryb3AuY2xpY2sodGhpcy5vcHRpb25zLmJhY2tkcm9wPT0ic3RhdGljIj9hLnByb3h5KHRoaXMuJGVsZW1lbnRbMF0uZm9jdXMsdGhpcy4kZWxlbWVudFswXSk6YS5wcm94eSh0aGlzLmhpZGUsdGhpcykpLGUmJnRoaXMuJGJhY2tkcm9wWzBdLm9mZnNldFdpZHRoLHRoaXMuJGJhY2tkcm9wLmFkZENsYXNzKCJpbiIpO2lmKCFiKXJldHVybjtlP3RoaXMuJGJhY2tkcm9wLm9uZShhLnN1cHBvcnQudHJhbnNpdGlvbi5lbmQsYik6YigpfWVsc2UhdGhpcy5pc1Nob3duJiZ0aGlzLiRiYWNrZHJvcD8odGhpcy4kYmFja2Ryb3AucmVtb3ZlQ2xhc3MoImluIiksYS5zdXBwb3J0LnRyYW5zaXRpb24mJnRoaXMuJGVsZW1lbnQuaGFzQ2xhc3MoImZhZGUiKT90aGlzLiRiYWNrZHJvcC5vbmUoYS5zdXBwb3J0LnRyYW5zaXRpb24uZW5kLGIpOmIoKSk6YiYmYigpfX07dmFyIGM9YS5mbi5tb2RhbDthLmZuLm1vZGFsPWZ1bmN0aW9uKGMpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZD1hKHRoaXMpLGU9ZC5kYXRhKCJtb2RhbCIpLGY9YS5leHRlbmQoe30sYS5mbi5tb2RhbC5kZWZhdWx0cyxkLmRhdGEoKSx0eXBlb2YgYz09Im9iamVjdCImJmMpO2V8fGQuZGF0YSgibW9kYWwiLGU9bmV3IGIodGhpcyxmKSksdHlwZW9mIGM9PSJzdHJpbmciP2VbY10oKTpmLnNob3cmJmUuc2hvdygpfSl9LGEuZm4ubW9kYWwuZGVmYXVsdHM9e2JhY2tkcm9wOiEwLGtleWJvYXJkOiEwLHNob3c6ITB9LGEuZm4ubW9kYWwuQ29uc3RydWN0b3I9YixhLmZuLm1vZGFsLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gYS5mbi5tb2RhbD1jLHRoaXN9LGEoZG9jdW1lbnQpLm9uKCJjbGljay5tb2RhbC5kYXRhLWFwaSIsJ1tkYXRhLXRvZ2dsZT0ibW9kYWwiXScsZnVuY3Rpb24oYil7dmFyIGM9YSh0aGlzKSxkPWMuYXR0cigiaHJlZiIpLGU9YShjLmF0dHIoImRhdGEtdGFyZ2V0Iil8fGQmJmQucmVwbGFjZSgvLiooPz0jW15cc10rJCkvLCIiKSksZj1lLmRhdGEoIm1vZGFsIik/InRvZ2dsZSI6YS5leHRlbmQoe3JlbW90ZTohLyMvLnRlc3QoZCkmJmR9LGUuZGF0YSgpLGMuZGF0YSgpKTtiLnByZXZlbnREZWZhdWx0KCksZS5tb2RhbChmKS5vbmUoImhpZGUiLGZ1bmN0aW9uKCl7Yy5mb2N1cygpfSl9KX0od2luZG93LmpRdWVyeSksIWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGQoKXthKCIuZHJvcGRvd24tYmFja2Ryb3AiKS5yZW1vdmUoKSxhKGIpLmVhY2goZnVuY3Rpb24oKXtlKGEodGhpcykpLnJlbW92ZUNsYXNzKCJvcGVuIil9KX1mdW5jdGlvbiBlKGIpe3ZhciBjPWIuYXR0cigiZGF0YS10YXJnZXQiKSxkO2N8fChjPWIuYXR0cigiaHJlZiIpLGM9YyYmLyMvLnRlc3QoYykmJmMucmVwbGFjZSgvLiooPz0jW15cc10qJCkvLCIiKSksZD1jJiZhKGMpO2lmKCFkfHwhZC5sZW5ndGgpZD1iLnBhcmVudCgpO3JldHVybiBkfXZhciBiPSJbZGF0YS10b2dnbGU9ZHJvcGRvd25dIixjPWZ1bmN0aW9uKGIpe3ZhciBjPWEoYikub24oImNsaWNrLmRyb3Bkb3duLmRhdGEtYXBpIix0aGlzLnRvZ2dsZSk7YSgiaHRtbCIpLm9uKCJjbGljay5kcm9wZG93bi5kYXRhLWFwaSIsZnVuY3Rpb24oKXtjLnBhcmVudCgpLnJlbW92ZUNsYXNzKCJvcGVuIil9KX07Yy5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOmMsdG9nZ2xlOmZ1bmN0aW9uKGIpe3ZhciBjPWEodGhpcyksZixnO2lmKGMuaXMoIi5kaXNhYmxlZCwgOmRpc2FibGVkIikpcmV0dXJuO3JldHVybiBmPWUoYyksZz1mLmhhc0NsYXNzKCJvcGVuIiksZCgpLGd8fCgib250b3VjaHN0YXJ0ImluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmYSgnPGRpdiBjbGFzcz0iZHJvcGRvd24tYmFja2Ryb3AiLz4nKS5pbnNlcnRCZWZvcmUoYSh0aGlzKSkub24oImNsaWNrIixkKSxmLnRvZ2dsZUNsYXNzKCJvcGVuIikpLGMuZm9jdXMoKSwhMX0sa2V5ZG93bjpmdW5jdGlvbihjKXt2YXIgZCxmLGcsaCxpLGo7aWYoIS8oMzh8NDB8MjcpLy50ZXN0KGMua2V5Q29kZSkpcmV0dXJuO2Q9YSh0aGlzKSxjLnByZXZlbnREZWZhdWx0KCksYy5zdG9wUHJvcGFnYXRpb24oKTtpZihkLmlzKCIuZGlzYWJsZWQsIDpkaXNhYmxlZCIpKXJldHVybjtoPWUoZCksaT1oLmhhc0NsYXNzKCJvcGVuIik7aWYoIWl8fGkmJmMua2V5Q29kZT09MjcpcmV0dXJuIGMud2hpY2g9PTI3JiZoLmZpbmQoYikuZm9jdXMoKSxkLmNsaWNrKCk7Zj1hKCJbcm9sZT1tZW51XSBsaTpub3QoLmRpdmlkZXIpOnZpc2libGUgYSIsaCk7aWYoIWYubGVuZ3RoKXJldHVybjtqPWYuaW5kZXgoZi5maWx0ZXIoIjpmb2N1cyIpKSxjLmtleUNvZGU9PTM4JiZqPjAmJmotLSxjLmtleUNvZGU9PTQwJiZqPGYubGVuZ3RoLTEmJmorKyx+anx8KGo9MCksZi5lcShqKS5mb2N1cygpfX07dmFyIGY9YS5mbi5kcm9wZG93bjthLmZuLmRyb3Bkb3duPWZ1bmN0aW9uKGIpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZD1hKHRoaXMpLGU9ZC5kYXRhKCJkcm9wZG93biIpO2V8fGQuZGF0YSgiZHJvcGRvd24iLGU9bmV3IGModGhpcykpLHR5cGVvZiBiPT0ic3RyaW5nIiYmZVtiXS5jYWxsKGQpfSl9LGEuZm4uZHJvcGRvd24uQ29uc3RydWN0b3I9YyxhLmZuLmRyb3Bkb3duLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gYS5mbi5kcm9wZG93bj1mLHRoaXN9LGEoZG9jdW1lbnQpLm9uKCJjbGljay5kcm9wZG93bi5kYXRhLWFwaSIsZCkub24oImNsaWNrLmRyb3Bkb3duLmRhdGEtYXBpIiwiLmRyb3Bkb3duIGZvcm0iLGZ1bmN0aW9uKGEpe2Euc3RvcFByb3BhZ2F0aW9uKCl9KS5vbigiY2xpY2suZHJvcGRvd24uZGF0YS1hcGkiLGIsYy5wcm90b3R5cGUudG9nZ2xlKS5vbigia2V5ZG93bi5kcm9wZG93bi5kYXRhLWFwaSIsYisiLCBbcm9sZT1tZW51XSIsYy5wcm90b3R5cGUua2V5ZG93bil9KHdpbmRvdy5qUXVlcnkpLCFmdW5jdGlvbihhKXtmdW5jdGlvbiBiKGIsYyl7dmFyIGQ9YS5wcm94eSh0aGlzLnByb2Nlc3MsdGhpcyksZT1hKGIpLmlzKCJib2R5Iik/YSh3aW5kb3cpOmEoYiksZjt0aGlzLm9wdGlvbnM9YS5leHRlbmQoe30sYS5mbi5zY3JvbGxzcHkuZGVmYXVsdHMsYyksdGhpcy4kc2Nyb2xsRWxlbWVudD1lLm9uKCJzY3JvbGwuc2Nyb2xsLXNweS5kYXRhLWFwaSIsZCksdGhpcy5zZWxlY3Rvcj0odGhpcy5vcHRpb25zLnRhcmdldHx8KGY9YShiKS5hdHRyKCJocmVmIikpJiZmLnJlcGxhY2UoLy4qKD89I1teXHNdKyQpLywiIil8fCIiKSsiIC5uYXYgbGkgPiBhIix0aGlzLiRib2R5PWEoImJvZHkiKSx0aGlzLnJlZnJlc2goKSx0aGlzLnByb2Nlc3MoKX1iLnByb3RvdHlwZT17Y29uc3RydWN0b3I6YixyZWZyZXNoOmZ1bmN0aW9uKCl7dmFyIGI9dGhpcyxjO3RoaXMub2Zmc2V0cz1hKFtdKSx0aGlzLnRhcmdldHM9YShbXSksYz10aGlzLiRib2R5LmZpbmQodGhpcy5zZWxlY3RvcikubWFwKGZ1bmN0aW9uKCl7dmFyIGM9YSh0aGlzKSxkPWMuZGF0YSgidGFyZ2V0Iil8fGMuYXR0cigiaHJlZiIpLGU9L14jXHcvLnRlc3QoZCkmJmEoZCk7cmV0dXJuIGUmJmUubGVuZ3RoJiZbW2UucG9zaXRpb24oKS50b3ArKCFhLmlzV2luZG93KGIuJHNjcm9sbEVsZW1lbnQuZ2V0KDApKSYmYi4kc2Nyb2xsRWxlbWVudC5zY3JvbGxUb3AoKSksZF1dfHxudWxsfSkuc29ydChmdW5jdGlvbihhLGIpe3JldHVybiBhWzBdLWJbMF19KS5lYWNoKGZ1bmN0aW9uKCl7Yi5vZmZzZXRzLnB1c2godGhpc1swXSksYi50YXJnZXRzLnB1c2godGhpc1sxXSl9KX0scHJvY2VzczpmdW5jdGlvbigpe3ZhciBhPXRoaXMuJHNjcm9sbEVsZW1lbnQuc2Nyb2xsVG9wKCkrdGhpcy5vcHRpb25zLm9mZnNldCxiPXRoaXMuJHNjcm9sbEVsZW1lbnRbMF0uc2Nyb2xsSGVpZ2h0fHx0aGlzLiRib2R5WzBdLnNjcm9sbEhlaWdodCxjPWItdGhpcy4kc2Nyb2xsRWxlbWVudC5oZWlnaHQoKSxkPXRoaXMub2Zmc2V0cyxlPXRoaXMudGFyZ2V0cyxmPXRoaXMuYWN0aXZlVGFyZ2V0LGc7aWYoYT49YylyZXR1cm4gZiE9KGc9ZS5sYXN0KClbMF0pJiZ0aGlzLmFjdGl2YXRlKGcpO2ZvcihnPWQubGVuZ3RoO2ctLTspZiE9ZVtnXSYmYT49ZFtnXSYmKCFkW2crMV18fGE8PWRbZysxXSkmJnRoaXMuYWN0aXZhdGUoZVtnXSl9LGFjdGl2YXRlOmZ1bmN0aW9uKGIpe3ZhciBjLGQ7dGhpcy5hY3RpdmVUYXJnZXQ9YixhKHRoaXMuc2VsZWN0b3IpLnBhcmVudCgiLmFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSxkPXRoaXMuc2VsZWN0b3IrJ1tkYXRhLXRhcmdldD0iJytiKyciXSwnK3RoaXMuc2VsZWN0b3IrJ1tocmVmPSInK2IrJyJdJyxjPWEoZCkucGFyZW50KCJsaSIpLmFkZENsYXNzKCJhY3RpdmUiKSxjLnBhcmVudCgiLmRyb3Bkb3duLW1lbnUiKS5sZW5ndGgmJihjPWMuY2xvc2VzdCgibGkuZHJvcGRvd24iKS5hZGRDbGFzcygiYWN0aXZlIikpLGMudHJpZ2dlcigiYWN0aXZhdGUiKX19O3ZhciBjPWEuZm4uc2Nyb2xsc3B5O2EuZm4uc2Nyb2xsc3B5PWZ1bmN0aW9uKGMpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZD1hKHRoaXMpLGU9ZC5kYXRhKCJzY3JvbGxzcHkiKSxmPXR5cGVvZiBjPT0ib2JqZWN0IiYmYztlfHxkLmRhdGEoInNjcm9sbHNweSIsZT1uZXcgYih0aGlzLGYpKSx0eXBlb2YgYz09InN0cmluZyImJmVbY10oKX0pfSxhLmZuLnNjcm9sbHNweS5Db25zdHJ1Y3Rvcj1iLGEuZm4uc2Nyb2xsc3B5LmRlZmF1bHRzPXtvZmZzZXQ6MTB9LGEuZm4uc2Nyb2xsc3B5Lm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gYS5mbi5zY3JvbGxzcHk9Yyx0aGlzfSxhKHdpbmRvdykub24oImxvYWQiLGZ1bmN0aW9uKCl7YSgnW2RhdGEtc3B5PSJzY3JvbGwiXScpLmVhY2goZnVuY3Rpb24oKXt2YXIgYj1hKHRoaXMpO2Iuc2Nyb2xsc3B5KGIuZGF0YSgpKX0pfSl9KHdpbmRvdy5qUXVlcnkpLCFmdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbihiKXt0aGlzLmVsZW1lbnQ9YShiKX07Yi5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOmIsc2hvdzpmdW5jdGlvbigpe3ZhciBiPXRoaXMuZWxlbWVudCxjPWIuY2xvc2VzdCgidWw6bm90KC5kcm9wZG93bi1tZW51KSIpLGQ9Yi5hdHRyKCJkYXRhLXRhcmdldCIpLGUsZixnO2R8fChkPWIuYXR0cigiaHJlZiIpLGQ9ZCYmZC5yZXBsYWNlKC8uKig/PSNbXlxzXSokKS8sIiIpKTtpZihiLnBhcmVudCgibGkiKS5oYXNDbGFzcygiYWN0aXZlIikpcmV0dXJuO2U9Yy5maW5kKCIuYWN0aXZlOmxhc3QgYSIpWzBdLGc9YS5FdmVudCgic2hvdyIse3JlbGF0ZWRUYXJnZXQ6ZX0pLGIudHJpZ2dlcihnKTtpZihnLmlzRGVmYXVsdFByZXZlbnRlZCgpKXJldHVybjtmPWEoZCksdGhpcy5hY3RpdmF0ZShiLnBhcmVudCgibGkiKSxjKSx0aGlzLmFjdGl2YXRlKGYsZi5wYXJlbnQoKSxmdW5jdGlvbigpe2IudHJpZ2dlcih7dHlwZToic2hvd24iLHJlbGF0ZWRUYXJnZXQ6ZX0pfSl9LGFjdGl2YXRlOmZ1bmN0aW9uKGIsYyxkKXtmdW5jdGlvbiBnKCl7ZS5yZW1vdmVDbGFzcygiYWN0aXZlIikuZmluZCgiPiAuZHJvcGRvd24tbWVudSA+IC5hY3RpdmUiKS5yZW1vdmVDbGFzcygiYWN0aXZlIiksYi5hZGRDbGFzcygiYWN0aXZlIiksZj8oYlswXS5vZmZzZXRXaWR0aCxiLmFkZENsYXNzKCJpbiIpKTpiLnJlbW92ZUNsYXNzKCJmYWRlIiksYi5wYXJlbnQoIi5kcm9wZG93bi1tZW51IikmJmIuY2xvc2VzdCgibGkuZHJvcGRvd24iKS5hZGRDbGFzcygiYWN0aXZlIiksZCYmZCgpfXZhciBlPWMuZmluZCgiPiAuYWN0aXZlIiksZj1kJiZhLnN1cHBvcnQudHJhbnNpdGlvbiYmZS5oYXNDbGFzcygiZmFkZSIpO2Y/ZS5vbmUoYS5zdXBwb3J0LnRyYW5zaXRpb24uZW5kLGcpOmcoKSxlLnJlbW92ZUNsYXNzKCJpbiIpfX07dmFyIGM9YS5mbi50YWI7YS5mbi50YWI9ZnVuY3Rpb24oYyl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBkPWEodGhpcyksZT1kLmRhdGEoInRhYiIpO2V8fGQuZGF0YSgidGFiIixlPW5ldyBiKHRoaXMpKSx0eXBlb2YgYz09InN0cmluZyImJmVbY10oKX0pfSxhLmZuLnRhYi5Db25zdHJ1Y3Rvcj1iLGEuZm4udGFiLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gYS5mbi50YWI9Yyx0aGlzfSxhKGRvY3VtZW50KS5vbigiY2xpY2sudGFiLmRhdGEtYXBpIiwnW2RhdGEtdG9nZ2xlPSJ0YWIiXSwgW2RhdGEtdG9nZ2xlPSJwaWxsIl0nLGZ1bmN0aW9uKGIpe2IucHJldmVudERlZmF1bHQoKSxhKHRoaXMpLnRhYigic2hvdyIpfSl9KHdpbmRvdy5qUXVlcnkpLCFmdW5jdGlvbihhKXt2YXIgYj1mdW5jdGlvbihhLGIpe3RoaXMuaW5pdCgidG9vbHRpcCIsYSxiKX07Yi5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOmIsaW5pdDpmdW5jdGlvbihiLGMsZCl7dmFyIGUsZixnLGgsaTt0aGlzLnR5cGU9Yix0aGlzLiRlbGVtZW50PWEoYyksdGhpcy5vcHRpb25zPXRoaXMuZ2V0T3B0aW9ucyhkKSx0aGlzLmVuYWJsZWQ9ITAsZz10aGlzLm9wdGlvbnMudHJpZ2dlci5zcGxpdCgiICIpO2ZvcihpPWcubGVuZ3RoO2ktLTspaD1nW2ldLGg9PSJjbGljayI/dGhpcy4kZWxlbWVudC5vbigiY2xpY2suIit0aGlzLnR5cGUsdGhpcy5vcHRpb25zLnNlbGVjdG9yLGEucHJveHkodGhpcy50b2dnbGUsdGhpcykpOmghPSJtYW51YWwiJiYoZT1oPT0iaG92ZXIiPyJtb3VzZWVudGVyIjoiZm9jdXMiLGY9aD09ImhvdmVyIj8ibW91c2VsZWF2ZSI6ImJsdXIiLHRoaXMuJGVsZW1lbnQub24oZSsiLiIrdGhpcy50eXBlLHRoaXMub3B0aW9ucy5zZWxlY3RvcixhLnByb3h5KHRoaXMuZW50ZXIsdGhpcykpLHRoaXMuJGVsZW1lbnQub24oZisiLiIrdGhpcy50eXBlLHRoaXMub3B0aW9ucy5zZWxlY3RvcixhLnByb3h5KHRoaXMubGVhdmUsdGhpcykpKTt0aGlzLm9wdGlvbnMuc2VsZWN0b3I/dGhpcy5fb3B0aW9ucz1hLmV4dGVuZCh7fSx0aGlzLm9wdGlvbnMse3RyaWdnZXI6Im1hbnVhbCIsc2VsZWN0b3I6IiJ9KTp0aGlzLmZpeFRpdGxlKCl9LGdldE9wdGlvbnM6ZnVuY3Rpb24oYil7cmV0dXJuIGI9YS5leHRlbmQoe30sYS5mblt0aGlzLnR5cGVdLmRlZmF1bHRzLHRoaXMuJGVsZW1lbnQuZGF0YSgpLGIpLGIuZGVsYXkmJnR5cGVvZiBiLmRlbGF5PT0ibnVtYmVyIiYmKGIuZGVsYXk9e3Nob3c6Yi5kZWxheSxoaWRlOmIuZGVsYXl9KSxifSxlbnRlcjpmdW5jdGlvbihiKXt2YXIgYz1hLmZuW3RoaXMudHlwZV0uZGVmYXVsdHMsZD17fSxlO3RoaXMuX29wdGlvbnMmJmEuZWFjaCh0aGlzLl9vcHRpb25zLGZ1bmN0aW9uKGEsYil7Y1thXSE9YiYmKGRbYV09Yil9LHRoaXMpLGU9YShiLmN1cnJlbnRUYXJnZXQpW3RoaXMudHlwZV0oZCkuZGF0YSh0aGlzLnR5cGUpO2lmKCFlLm9wdGlvbnMuZGVsYXl8fCFlLm9wdGlvbnMuZGVsYXkuc2hvdylyZXR1cm4gZS5zaG93KCk7Y2xlYXJUaW1lb3V0KHRoaXMudGltZW91dCksZS5ob3ZlclN0YXRlPSJpbiIsdGhpcy50aW1lb3V0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXtlLmhvdmVyU3RhdGU9PSJpbiImJmUuc2hvdygpfSxlLm9wdGlvbnMuZGVsYXkuc2hvdyl9LGxlYXZlOmZ1bmN0aW9uKGIpe3ZhciBjPWEoYi5jdXJyZW50VGFyZ2V0KVt0aGlzLnR5cGVdKHRoaXMuX29wdGlvbnMpLmRhdGEodGhpcy50eXBlKTt0aGlzLnRpbWVvdXQmJmNsZWFyVGltZW91dCh0aGlzLnRpbWVvdXQpO2lmKCFjLm9wdGlvbnMuZGVsYXl8fCFjLm9wdGlvbnMuZGVsYXkuaGlkZSlyZXR1cm4gYy5oaWRlKCk7Yy5ob3ZlclN0YXRlPSJvdXQiLHRoaXMudGltZW91dD1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yy5ob3ZlclN0YXRlPT0ib3V0IiYmYy5oaWRlKCl9LGMub3B0aW9ucy5kZWxheS5oaWRlKX0sc2hvdzpmdW5jdGlvbigpe3ZhciBiLGMsZCxlLGYsZyxoPWEuRXZlbnQoInNob3ciKTtpZih0aGlzLmhhc0NvbnRlbnQoKSYmdGhpcy5lbmFibGVkKXt0aGlzLiRlbGVtZW50LnRyaWdnZXIoaCk7aWYoaC5pc0RlZmF1bHRQcmV2ZW50ZWQoKSlyZXR1cm47Yj10aGlzLnRpcCgpLHRoaXMuc2V0Q29udGVudCgpLHRoaXMub3B0aW9ucy5hbmltYXRpb24mJmIuYWRkQ2xhc3MoImZhZGUiKSxmPXR5cGVvZiB0aGlzLm9wdGlvbnMucGxhY2VtZW50PT0iZnVuY3Rpb24iP3RoaXMub3B0aW9ucy5wbGFjZW1lbnQuY2FsbCh0aGlzLGJbMF0sdGhpcy4kZWxlbWVudFswXSk6dGhpcy5vcHRpb25zLnBsYWNlbWVudCxiLmRldGFjaCgpLmNzcyh7dG9wOjAsbGVmdDowLGRpc3BsYXk6ImJsb2NrIn0pLHRoaXMub3B0aW9ucy5jb250YWluZXI/Yi5hcHBlbmRUbyh0aGlzLm9wdGlvbnMuY29udGFpbmVyKTpiLmluc2VydEFmdGVyKHRoaXMuJGVsZW1lbnQpLGM9dGhpcy5nZXRQb3NpdGlvbigpLGQ9YlswXS5vZmZzZXRXaWR0aCxlPWJbMF0ub2Zmc2V0SGVpZ2h0O3N3aXRjaChmKXtjYXNlImJvdHRvbSI6Zz17dG9wOmMudG9wK2MuaGVpZ2h0LGxlZnQ6Yy5sZWZ0K2Mud2lkdGgvMi1kLzJ9O2JyZWFrO2Nhc2UidG9wIjpnPXt0b3A6Yy50b3AtZSxsZWZ0OmMubGVmdCtjLndpZHRoLzItZC8yfTticmVhaztjYXNlImxlZnQiOmc9e3RvcDpjLnRvcCtjLmhlaWdodC8yLWUvMixsZWZ0OmMubGVmdC1kfTticmVhaztjYXNlInJpZ2h0IjpnPXt0b3A6Yy50b3ArYy5oZWlnaHQvMi1lLzIsbGVmdDpjLmxlZnQrYy53aWR0aH19dGhpcy5hcHBseVBsYWNlbWVudChnLGYpLHRoaXMuJGVsZW1lbnQudHJpZ2dlcigic2hvd24iKX19LGFwcGx5UGxhY2VtZW50OmZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy50aXAoKSxkPWNbMF0ub2Zmc2V0V2lkdGgsZT1jWzBdLm9mZnNldEhlaWdodCxmLGcsaCxpO2Mub2Zmc2V0KGEpLmFkZENsYXNzKGIpLmFkZENsYXNzKCJpbiIpLGY9Y1swXS5vZmZzZXRXaWR0aCxnPWNbMF0ub2Zmc2V0SGVpZ2h0LGI9PSJ0b3AiJiZnIT1lJiYoYS50b3A9YS50b3ArZS1nLGk9ITApLGI9PSJib3R0b20ifHxiPT0idG9wIj8oaD0wLGEubGVmdDwwJiYoaD1hLmxlZnQqLTIsYS5sZWZ0PTAsYy5vZmZzZXQoYSksZj1jWzBdLm9mZnNldFdpZHRoLGc9Y1swXS5vZmZzZXRIZWlnaHQpLHRoaXMucmVwbGFjZUFycm93KGgtZCtmLGYsImxlZnQiKSk6dGhpcy5yZXBsYWNlQXJyb3coZy1lLGcsInRvcCIpLGkmJmMub2Zmc2V0KGEpfSxyZXBsYWNlQXJyb3c6ZnVuY3Rpb24oYSxiLGMpe3RoaXMuYXJyb3coKS5jc3MoYyxhPzUwKigxLWEvYikrIiUiOiIiKX0sc2V0Q29udGVudDpmdW5jdGlvbigpe3ZhciBhPXRoaXMudGlwKCksYj10aGlzLmdldFRpdGxlKCk7YS5maW5kKCIudG9vbHRpcC1pbm5lciIpW3RoaXMub3B0aW9ucy5odG1sPyJodG1sIjoidGV4dCJdKGIpLGEucmVtb3ZlQ2xhc3MoImZhZGUgaW4gdG9wIGJvdHRvbSBsZWZ0IHJpZ2h0Iil9LGhpZGU6ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7dmFyIGI9c2V0VGltZW91dChmdW5jdGlvbigpe2Mub2ZmKGEuc3VwcG9ydC50cmFuc2l0aW9uLmVuZCkuZGV0YWNoKCl9LDUwMCk7Yy5vbmUoYS5zdXBwb3J0LnRyYW5zaXRpb24uZW5kLGZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KGIpLGMuZGV0YWNoKCl9KX12YXIgYj10aGlzLGM9dGhpcy50aXAoKSxkPWEuRXZlbnQoImhpZGUiKTt0aGlzLiRlbGVtZW50LnRyaWdnZXIoZCk7aWYoZC5pc0RlZmF1bHRQcmV2ZW50ZWQoKSlyZXR1cm47cmV0dXJuIGMucmVtb3ZlQ2xhc3MoImluIiksYS5zdXBwb3J0LnRyYW5zaXRpb24mJnRoaXMuJHRpcC5oYXNDbGFzcygiZmFkZSIpP2UoKTpjLmRldGFjaCgpLHRoaXMuJGVsZW1lbnQudHJpZ2dlcigiaGlkZGVuIiksdGhpc30sZml4VGl0bGU6ZnVuY3Rpb24oKXt2YXIgYT10aGlzLiRlbGVtZW50OyhhLmF0dHIoInRpdGxlIil8fHR5cGVvZiBhLmF0dHIoImRhdGEtb3JpZ2luYWwtdGl0bGUiKSE9InN0cmluZyIpJiZhLmF0dHIoImRhdGEtb3JpZ2luYWwtdGl0bGUiLGEuYXR0cigidGl0bGUiKXx8IiIpLmF0dHIoInRpdGxlIiwiIil9LGhhc0NvbnRlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZXRUaXRsZSgpfSxnZXRQb3NpdGlvbjpmdW5jdGlvbigpe3ZhciBiPXRoaXMuJGVsZW1lbnRbMF07cmV0dXJuIGEuZXh0ZW5kKHt9LHR5cGVvZiBiLmdldEJvdW5kaW5nQ2xpZW50UmVjdD09ImZ1bmN0aW9uIj9iLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOnt3aWR0aDpiLm9mZnNldFdpZHRoLGhlaWdodDpiLm9mZnNldEhlaWdodH0sdGhpcy4kZWxlbWVudC5vZmZzZXQoKSl9LGdldFRpdGxlOmZ1bmN0aW9uKCl7dmFyIGEsYj10aGlzLiRlbGVtZW50LGM9dGhpcy5vcHRpb25zO3JldHVybiBhPWIuYXR0cigiZGF0YS1vcmlnaW5hbC10aXRsZSIpfHwodHlwZW9mIGMudGl0bGU9PSJmdW5jdGlvbiI/Yy50aXRsZS5jYWxsKGJbMF0pOmMudGl0bGUpLGF9LHRpcDpmdW5jdGlvbigpe3JldHVybiB0aGlzLiR0aXA9dGhpcy4kdGlwfHxhKHRoaXMub3B0aW9ucy50ZW1wbGF0ZSl9LGFycm93OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJGFycm93PXRoaXMuJGFycm93fHx0aGlzLnRpcCgpLmZpbmQoIi50b29sdGlwLWFycm93Iil9LHZhbGlkYXRlOmZ1bmN0aW9uKCl7dGhpcy4kZWxlbWVudFswXS5wYXJlbnROb2RlfHwodGhpcy5oaWRlKCksdGhpcy4kZWxlbWVudD1udWxsLHRoaXMub3B0aW9ucz1udWxsKX0sZW5hYmxlOmZ1bmN0aW9uKCl7dGhpcy5lbmFibGVkPSEwfSxkaXNhYmxlOmZ1bmN0aW9uKCl7dGhpcy5lbmFibGVkPSExfSx0b2dnbGVFbmFibGVkOmZ1bmN0aW9uKCl7dGhpcy5lbmFibGVkPSF0aGlzLmVuYWJsZWR9LHRvZ2dsZTpmdW5jdGlvbihiKXt2YXIgYz1iP2EoYi5jdXJyZW50VGFyZ2V0KVt0aGlzLnR5cGVdKHRoaXMuX29wdGlvbnMpLmRhdGEodGhpcy50eXBlKTp0aGlzO2MudGlwKCkuaGFzQ2xhc3MoImluIik/Yy5oaWRlKCk6Yy5zaG93KCl9LGRlc3Ryb3k6ZnVuY3Rpb24oKXt0aGlzLmhpZGUoKS4kZWxlbWVudC5vZmYoIi4iK3RoaXMudHlwZSkucmVtb3ZlRGF0YSh0aGlzLnR5cGUpfX07dmFyIGM9YS5mbi50b29sdGlwO2EuZm4udG9vbHRpcD1mdW5jdGlvbihjKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGQ9YSh0aGlzKSxlPWQuZGF0YSgidG9vbHRpcCIpLGY9dHlwZW9mIGM9PSJvYmplY3QiJiZjO2V8fGQuZGF0YSgidG9vbHRpcCIsZT1uZXcgYih0aGlzLGYpKSx0eXBlb2YgYz09InN0cmluZyImJmVbY10oKX0pfSxhLmZuLnRvb2x0aXAuQ29uc3RydWN0b3I9YixhLmZuLnRvb2x0aXAuZGVmYXVsdHM9e2FuaW1hdGlvbjohMCxwbGFjZW1lbnQ6InRvcCIsc2VsZWN0b3I6ITEsdGVtcGxhdGU6JzxkaXYgY2xhc3M9InRvb2x0aXAiPjxkaXYgY2xhc3M9InRvb2x0aXAtYXJyb3ciPjwvZGl2PjxkaXYgY2xhc3M9InRvb2x0aXAtaW5uZXIiPjwvZGl2PjwvZGl2PicsdHJpZ2dlcjoiaG92ZXIgZm9jdXMiLHRpdGxlOiIiLGRlbGF5OjAsaHRtbDohMSxjb250YWluZXI6ITF9LGEuZm4udG9vbHRpcC5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGEuZm4udG9vbHRpcD1jLHRoaXN9fSh3aW5kb3cualF1ZXJ5KSwhZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oYSxiKXt0aGlzLmluaXQoInBvcG92ZXIiLGEsYil9O2IucHJvdG90eXBlPWEuZXh0ZW5kKHt9LGEuZm4udG9vbHRpcC5Db25zdHJ1Y3Rvci5wcm90b3R5cGUse2NvbnN0cnVjdG9yOmIsc2V0Q29udGVudDpmdW5jdGlvbigpe3ZhciBhPXRoaXMudGlwKCksYj10aGlzLmdldFRpdGxlKCksYz10aGlzLmdldENvbnRlbnQoKTthLmZpbmQoIi5wb3BvdmVyLXRpdGxlIilbdGhpcy5vcHRpb25zLmh0bWw/Imh0bWwiOiJ0ZXh0Il0oYiksYS5maW5kKCIucG9wb3Zlci1jb250ZW50IilbdGhpcy5vcHRpb25zLmh0bWw/Imh0bWwiOiJ0ZXh0Il0oYyksYS5yZW1vdmVDbGFzcygiZmFkZSB0b3AgYm90dG9tIGxlZnQgcmlnaHQgaW4iKX0saGFzQ29udGVudDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmdldFRpdGxlKCl8fHRoaXMuZ2V0Q29udGVudCgpfSxnZXRDb250ZW50OmZ1bmN0aW9uKCl7dmFyIGEsYj10aGlzLiRlbGVtZW50LGM9dGhpcy5vcHRpb25zO3JldHVybiBhPSh0eXBlb2YgYy5jb250ZW50PT0iZnVuY3Rpb24iP2MuY29udGVudC5jYWxsKGJbMF0pOmMuY29udGVudCl8fGIuYXR0cigiZGF0YS1jb250ZW50IiksYX0sdGlwOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJHRpcHx8KHRoaXMuJHRpcD1hKHRoaXMub3B0aW9ucy50ZW1wbGF0ZSkpLHRoaXMuJHRpcH0sZGVzdHJveTpmdW5jdGlvbigpe3RoaXMuaGlkZSgpLiRlbGVtZW50Lm9mZigiLiIrdGhpcy50eXBlKS5yZW1vdmVEYXRhKHRoaXMudHlwZSl9fSk7dmFyIGM9YS5mbi5wb3BvdmVyO2EuZm4ucG9wb3Zlcj1mdW5jdGlvbihjKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGQ9YSh0aGlzKSxlPWQuZGF0YSgicG9wb3ZlciIpLGY9dHlwZW9mIGM9PSJvYmplY3QiJiZjO2V8fGQuZGF0YSgicG9wb3ZlciIsZT1uZXcgYih0aGlzLGYpKSx0eXBlb2YgYz09InN0cmluZyImJmVbY10oKX0pfSxhLmZuLnBvcG92ZXIuQ29uc3RydWN0b3I9YixhLmZuLnBvcG92ZXIuZGVmYXVsdHM9YS5leHRlbmQoe30sYS5mbi50b29sdGlwLmRlZmF1bHRzLHtwbGFjZW1lbnQ6InJpZ2h0Iix0cmlnZ2VyOiJjbGljayIsY29udGVudDoiIix0ZW1wbGF0ZTonPGRpdiBjbGFzcz0icG9wb3ZlciI+PGRpdiBjbGFzcz0iYXJyb3ciPjwvZGl2PjxoMyBjbGFzcz0icG9wb3Zlci10aXRsZSI+PC9oMz48ZGl2IGNsYXNzPSJwb3BvdmVyLWNvbnRlbnQiPjwvZGl2PjwvZGl2Pid9KSxhLmZuLnBvcG92ZXIubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBhLmZuLnBvcG92ZXI9Yyx0aGlzfX0od2luZG93LmpRdWVyeSksIWZ1bmN0aW9uKGEpe3ZhciBiPWZ1bmN0aW9uKGIsYyl7dGhpcy5vcHRpb25zPWEuZXh0ZW5kKHt9LGEuZm4uYWZmaXguZGVmYXVsdHMsYyksdGhpcy4kd2luZG93PWEod2luZG93KS5vbigic2Nyb2xsLmFmZml4LmRhdGEtYXBpIixhLnByb3h5KHRoaXMuY2hlY2tQb3NpdGlvbix0aGlzKSkub24oImNsaWNrLmFmZml4LmRhdGEtYXBpIixhLnByb3h5KGZ1bmN0aW9uKCl7c2V0VGltZW91dChhLnByb3h5KHRoaXMuY2hlY2tQb3NpdGlvbix0aGlzKSwxKX0sdGhpcykpLHRoaXMuJGVsZW1lbnQ9YShiKSx0aGlzLmNoZWNrUG9zaXRpb24oKX07Yi5wcm90b3R5cGUuY2hlY2tQb3NpdGlvbj1mdW5jdGlvbigpe2lmKCF0aGlzLiRlbGVtZW50LmlzKCI6dmlzaWJsZSIpKXJldHVybjt2YXIgYj1hKGRvY3VtZW50KS5oZWlnaHQoKSxjPXRoaXMuJHdpbmRvdy5zY3JvbGxUb3AoKSxkPXRoaXMuJGVsZW1lbnQub2Zmc2V0KCksZT10aGlzLm9wdGlvbnMub2Zmc2V0LGY9ZS5ib3R0b20sZz1lLnRvcCxoPSJhZmZpeCBhZmZpeC10b3AgYWZmaXgtYm90dG9tIixpO3R5cGVvZiBlIT0ib2JqZWN0IiYmKGY9Zz1lKSx0eXBlb2YgZz09ImZ1bmN0aW9uIiYmKGc9ZS50b3AoKSksdHlwZW9mIGY9PSJmdW5jdGlvbiImJihmPWUuYm90dG9tKCkpLGk9dGhpcy51bnBpbiE9bnVsbCYmYyt0aGlzLnVucGluPD1kLnRvcD8hMTpmIT1udWxsJiZkLnRvcCt0aGlzLiRlbGVtZW50LmhlaWdodCgpPj1iLWY/ImJvdHRvbSI6ZyE9bnVsbCYmYzw9Zz8idG9wIjohMTtpZih0aGlzLmFmZml4ZWQ9PT1pKXJldHVybjt0aGlzLmFmZml4ZWQ9aSx0aGlzLnVucGluPWk9PSJib3R0b20iP2QudG9wLWM6bnVsbCx0aGlzLiRlbGVtZW50LnJlbW92ZUNsYXNzKGgpLmFkZENsYXNzKCJhZmZpeCIrKGk/Ii0iK2k6IiIpKX07dmFyIGM9YS5mbi5hZmZpeDthLmZuLmFmZml4PWZ1bmN0aW9uKGMpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZD1hKHRoaXMpLGU9ZC5kYXRhKCJhZmZpeCIpLGY9dHlwZW9mIGM9PSJvYmplY3QiJiZjO2V8fGQuZGF0YSgiYWZmaXgiLGU9bmV3IGIodGhpcyxmKSksdHlwZW9mIGM9PSJzdHJpbmciJiZlW2NdKCl9KX0sYS5mbi5hZmZpeC5Db25zdHJ1Y3Rvcj1iLGEuZm4uYWZmaXguZGVmYXVsdHM9e29mZnNldDowfSxhLmZuLmFmZml4Lm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gYS5mbi5hZmZpeD1jLHRoaXN9LGEod2luZG93KS5vbigibG9hZCIsZnVuY3Rpb24oKXthKCdbZGF0YS1zcHk9ImFmZml4Il0nKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGI9YSh0aGlzKSxjPWIuZGF0YSgpO2Mub2Zmc2V0PWMub2Zmc2V0fHx7fSxjLm9mZnNldEJvdHRvbSYmKGMub2Zmc2V0LmJvdHRvbT1jLm9mZnNldEJvdHRvbSksYy5vZmZzZXRUb3AmJihjLm9mZnNldC50b3A9Yy5vZmZzZXRUb3ApLGIuYWZmaXgoYyl9KX0pfSh3aW5kb3cualF1ZXJ5KSwhZnVuY3Rpb24oYSl7dmFyIGI9J1tkYXRhLWRpc21pc3M9ImFsZXJ0Il0nLGM9ZnVuY3Rpb24oYyl7YShjKS5vbigiY2xpY2siLGIsdGhpcy5jbG9zZSl9O2MucHJvdG90eXBlLmNsb3NlPWZ1bmN0aW9uKGIpe2Z1bmN0aW9uIGYoKXtlLnRyaWdnZXIoImNsb3NlZCIpLnJlbW92ZSgpfXZhciBjPWEodGhpcyksZD1jLmF0dHIoImRhdGEtdGFyZ2V0IiksZTtkfHwoZD1jLmF0dHIoImhyZWYiKSxkPWQmJmQucmVwbGFjZSgvLiooPz0jW15cc10qJCkvLCIiKSksZT1hKGQpLGImJmIucHJldmVudERlZmF1bHQoKSxlLmxlbmd0aHx8KGU9Yy5oYXNDbGFzcygiYWxlcnQiKT9jOmMucGFyZW50KCkpLGUudHJpZ2dlcihiPWEuRXZlbnQoImNsb3NlIikpO2lmKGIuaXNEZWZhdWx0UHJldmVudGVkKCkpcmV0dXJuO2UucmVtb3ZlQ2xhc3MoImluIiksYS5zdXBwb3J0LnRyYW5zaXRpb24mJmUuaGFzQ2xhc3MoImZhZGUiKT9lLm9uKGEuc3VwcG9ydC50cmFuc2l0aW9uLmVuZCxmKTpmKCl9O3ZhciBkPWEuZm4uYWxlcnQ7YS5mbi5hbGVydD1mdW5jdGlvbihiKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGQ9YSh0aGlzKSxlPWQuZGF0YSgiYWxlcnQiKTtlfHxkLmRhdGEoImFsZXJ0IixlPW5ldyBjKHRoaXMpKSx0eXBlb2YgYj09InN0cmluZyImJmVbYl0uY2FsbChkKX0pfSxhLmZuLmFsZXJ0LkNvbnN0cnVjdG9yPWMsYS5mbi5hbGVydC5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGEuZm4uYWxlcnQ9ZCx0aGlzfSxhKGRvY3VtZW50KS5vbigiY2xpY2suYWxlcnQuZGF0YS1hcGkiLGIsYy5wcm90b3R5cGUuY2xvc2UpfSh3aW5kb3cualF1ZXJ5KSwhZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oYixjKXt0aGlzLiRlbGVtZW50PWEoYiksdGhpcy5vcHRpb25zPWEuZXh0ZW5kKHt9LGEuZm4uYnV0dG9uLmRlZmF1bHRzLGMpfTtiLnByb3RvdHlwZS5zZXRTdGF0ZT1mdW5jdGlvbihhKXt2YXIgYj0iZGlzYWJsZWQiLGM9dGhpcy4kZWxlbWVudCxkPWMuZGF0YSgpLGU9Yy5pcygiaW5wdXQiKT8idmFsIjoiaHRtbCI7YSs9IlRleHQiLGQucmVzZXRUZXh0fHxjLmRhdGEoInJlc2V0VGV4dCIsY1tlXSgpKSxjW2VdKGRbYV18fHRoaXMub3B0aW9uc1thXSksc2V0VGltZW91dChmdW5jdGlvbigpe2E9PSJsb2FkaW5nVGV4dCI/Yy5hZGRDbGFzcyhiKS5hdHRyKGIsYik6Yy5yZW1vdmVDbGFzcyhiKS5yZW1vdmVBdHRyKGIpfSwwKX0sYi5wcm90b3R5cGUudG9nZ2xlPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy4kZWxlbWVudC5jbG9zZXN0KCdbZGF0YS10b2dnbGU9ImJ1dHRvbnMtcmFkaW8iXScpO2EmJmEuZmluZCgiLmFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSx0aGlzLiRlbGVtZW50LnRvZ2dsZUNsYXNzKCJhY3RpdmUiKX07dmFyIGM9YS5mbi5idXR0b247YS5mbi5idXR0b249ZnVuY3Rpb24oYyl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBkPWEodGhpcyksZT1kLmRhdGEoImJ1dHRvbiIpLGY9dHlwZW9mIGM9PSJvYmplY3QiJiZjO2V8fGQuZGF0YSgiYnV0dG9uIixlPW5ldyBiKHRoaXMsZikpLGM9PSJ0b2dnbGUiP2UudG9nZ2xlKCk6YyYmZS5zZXRTdGF0ZShjKX0pfSxhLmZuLmJ1dHRvbi5kZWZhdWx0cz17bG9hZGluZ1RleHQ6ImxvYWRpbmcuLi4ifSxhLmZuLmJ1dHRvbi5Db25zdHJ1Y3Rvcj1iLGEuZm4uYnV0dG9uLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gYS5mbi5idXR0b249Yyx0aGlzfSxhKGRvY3VtZW50KS5vbigiY2xpY2suYnV0dG9uLmRhdGEtYXBpIiwiW2RhdGEtdG9nZ2xlXj1idXR0b25dIixmdW5jdGlvbihiKXt2YXIgYz1hKGIudGFyZ2V0KTtjLmhhc0NsYXNzKCJidG4iKXx8KGM9Yy5jbG9zZXN0KCIuYnRuIikpLGMuYnV0dG9uKCJ0b2dnbGUiKX0pfSh3aW5kb3cualF1ZXJ5KSwhZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oYixjKXt0aGlzLiRlbGVtZW50PWEoYiksdGhpcy5vcHRpb25zPWEuZXh0ZW5kKHt9LGEuZm4uY29sbGFwc2UuZGVmYXVsdHMsYyksdGhpcy5vcHRpb25zLnBhcmVudCYmKHRoaXMuJHBhcmVudD1hKHRoaXMub3B0aW9ucy5wYXJlbnQpKSx0aGlzLm9wdGlvbnMudG9nZ2xlJiZ0aGlzLnRvZ2dsZSgpfTtiLnByb3RvdHlwZT17Y29uc3RydWN0b3I6YixkaW1lbnNpb246ZnVuY3Rpb24oKXt2YXIgYT10aGlzLiRlbGVtZW50Lmhhc0NsYXNzKCJ3aWR0aCIpO3JldHVybiBhPyJ3aWR0aCI6ImhlaWdodCJ9LHNob3c6ZnVuY3Rpb24oKXt2YXIgYixjLGQsZTtpZih0aGlzLnRyYW5zaXRpb25pbmd8fHRoaXMuJGVsZW1lbnQuaGFzQ2xhc3MoImluIikpcmV0dXJuO2I9dGhpcy5kaW1lbnNpb24oKSxjPWEuY2FtZWxDYXNlKFsic2Nyb2xsIixiXS5qb2luKCItIikpLGQ9dGhpcy4kcGFyZW50JiZ0aGlzLiRwYXJlbnQuZmluZCgiPiAuYWNjb3JkaW9uLWdyb3VwID4gLmluIik7aWYoZCYmZC5sZW5ndGgpe2U9ZC5kYXRhKCJjb2xsYXBzZSIpO2lmKGUmJmUudHJhbnNpdGlvbmluZylyZXR1cm47ZC5jb2xsYXBzZSgiaGlkZSIpLGV8fGQuZGF0YSgiY29sbGFwc2UiLG51bGwpfXRoaXMuJGVsZW1lbnRbYl0oMCksdGhpcy50cmFuc2l0aW9uKCJhZGRDbGFzcyIsYS5FdmVudCgic2hvdyIpLCJzaG93biIpLGEuc3VwcG9ydC50cmFuc2l0aW9uJiZ0aGlzLiRlbGVtZW50W2JdKHRoaXMuJGVsZW1lbnRbMF1bY10pfSxoaWRlOmZ1bmN0aW9uKCl7dmFyIGI7aWYodGhpcy50cmFuc2l0aW9uaW5nfHwhdGhpcy4kZWxlbWVudC5oYXNDbGFzcygiaW4iKSlyZXR1cm47Yj10aGlzLmRpbWVuc2lvbigpLHRoaXMucmVzZXQodGhpcy4kZWxlbWVudFtiXSgpKSx0aGlzLnRyYW5zaXRpb24oInJlbW92ZUNsYXNzIixhLkV2ZW50KCJoaWRlIiksImhpZGRlbiIpLHRoaXMuJGVsZW1lbnRbYl0oMCl9LHJlc2V0OmZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuZGltZW5zaW9uKCk7cmV0dXJuIHRoaXMuJGVsZW1lbnQucmVtb3ZlQ2xhc3MoImNvbGxhcHNlIilbYl0oYXx8ImF1dG8iKVswXS5vZmZzZXRXaWR0aCx0aGlzLiRlbGVtZW50W2EhPT1udWxsPyJhZGRDbGFzcyI6InJlbW92ZUNsYXNzIl0oImNvbGxhcHNlIiksdGhpc30sdHJhbnNpdGlvbjpmdW5jdGlvbihiLGMsZCl7dmFyIGU9dGhpcyxmPWZ1bmN0aW9uKCl7Yy50eXBlPT0ic2hvdyImJmUucmVzZXQoKSxlLnRyYW5zaXRpb25pbmc9MCxlLiRlbGVtZW50LnRyaWdnZXIoZCl9O3RoaXMuJGVsZW1lbnQudHJpZ2dlcihjKTtpZihjLmlzRGVmYXVsdFByZXZlbnRlZCgpKXJldHVybjt0aGlzLnRyYW5zaXRpb25pbmc9MSx0aGlzLiRlbGVtZW50W2JdKCJpbiIpLGEuc3VwcG9ydC50cmFuc2l0aW9uJiZ0aGlzLiRlbGVtZW50Lmhhc0NsYXNzKCJjb2xsYXBzZSIpP3RoaXMuJGVsZW1lbnQub25lKGEuc3VwcG9ydC50cmFuc2l0aW9uLmVuZCxmKTpmKCl9LHRvZ2dsZTpmdW5jdGlvbigpe3RoaXNbdGhpcy4kZWxlbWVudC5oYXNDbGFzcygiaW4iKT8iaGlkZSI6InNob3ciXSgpfX07dmFyIGM9YS5mbi5jb2xsYXBzZTthLmZuLmNvbGxhcHNlPWZ1bmN0aW9uKGMpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZD1hKHRoaXMpLGU9ZC5kYXRhKCJjb2xsYXBzZSIpLGY9YS5leHRlbmQoe30sYS5mbi5jb2xsYXBzZS5kZWZhdWx0cyxkLmRhdGEoKSx0eXBlb2YgYz09Im9iamVjdCImJmMpO2V8fGQuZGF0YSgiY29sbGFwc2UiLGU9bmV3IGIodGhpcyxmKSksdHlwZW9mIGM9PSJzdHJpbmciJiZlW2NdKCl9KX0sYS5mbi5jb2xsYXBzZS5kZWZhdWx0cz17dG9nZ2xlOiEwfSxhLmZuLmNvbGxhcHNlLkNvbnN0cnVjdG9yPWIsYS5mbi5jb2xsYXBzZS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGEuZm4uY29sbGFwc2U9Yyx0aGlzfSxhKGRvY3VtZW50KS5vbigiY2xpY2suY29sbGFwc2UuZGF0YS1hcGkiLCJbZGF0YS10b2dnbGU9Y29sbGFwc2VdIixmdW5jdGlvbihiKXt2YXIgYz1hKHRoaXMpLGQsZT1jLmF0dHIoImRhdGEtdGFyZ2V0Iil8fGIucHJldmVudERlZmF1bHQoKXx8KGQ9Yy5hdHRyKCJocmVmIikpJiZkLnJlcGxhY2UoLy4qKD89I1teXHNdKyQpLywiIiksZj1hKGUpLmRhdGEoImNvbGxhcHNlIik/InRvZ2dsZSI6Yy5kYXRhKCk7Y1thKGUpLmhhc0NsYXNzKCJpbiIpPyJhZGRDbGFzcyI6InJlbW92ZUNsYXNzIl0oImNvbGxhcHNlZCIpLGEoZSkuY29sbGFwc2UoZil9KX0od2luZG93LmpRdWVyeSksIWZ1bmN0aW9uKGEpe3ZhciBiPWZ1bmN0aW9uKGIsYyl7dGhpcy4kZWxlbWVudD1hKGIpLHRoaXMuJGluZGljYXRvcnM9dGhpcy4kZWxlbWVudC5maW5kKCIuY2Fyb3VzZWwtaW5kaWNhdG9ycyIpLHRoaXMub3B0aW9ucz1jLHRoaXMub3B0aW9ucy5wYXVzZT09ImhvdmVyIiYmdGhpcy4kZWxlbWVudC5vbigibW91c2VlbnRlciIsYS5wcm94eSh0aGlzLnBhdXNlLHRoaXMpKS5vbigibW91c2VsZWF2ZSIsYS5wcm94eSh0aGlzLmN5Y2xlLHRoaXMpKX07Yi5wcm90b3R5cGU9e2N5Y2xlOmZ1bmN0aW9uKGIpe3JldHVybiBifHwodGhpcy5wYXVzZWQ9ITEpLHRoaXMuaW50ZXJ2YWwmJmNsZWFySW50ZXJ2YWwodGhpcy5pbnRlcnZhbCksdGhpcy5vcHRpb25zLmludGVydmFsJiYhdGhpcy5wYXVzZWQmJih0aGlzLmludGVydmFsPXNldEludGVydmFsKGEucHJveHkodGhpcy5uZXh0LHRoaXMpLHRoaXMub3B0aW9ucy5pbnRlcnZhbCkpLHRoaXN9LGdldEFjdGl2ZUluZGV4OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJGFjdGl2ZT10aGlzLiRlbGVtZW50LmZpbmQoIi5pdGVtLmFjdGl2ZSIpLHRoaXMuJGl0ZW1zPXRoaXMuJGFjdGl2ZS5wYXJlbnQoKS5jaGlsZHJlbigpLHRoaXMuJGl0ZW1zLmluZGV4KHRoaXMuJGFjdGl2ZSl9LHRvOmZ1bmN0aW9uKGIpe3ZhciBjPXRoaXMuZ2V0QWN0aXZlSW5kZXgoKSxkPXRoaXM7aWYoYj50aGlzLiRpdGVtcy5sZW5ndGgtMXx8YjwwKXJldHVybjtyZXR1cm4gdGhpcy5zbGlkaW5nP3RoaXMuJGVsZW1lbnQub25lKCJzbGlkIixmdW5jdGlvbigpe2QudG8oYil9KTpjPT1iP3RoaXMucGF1c2UoKS5jeWNsZSgpOnRoaXMuc2xpZGUoYj5jPyJuZXh0IjoicHJldiIsYSh0aGlzLiRpdGVtc1tiXSkpfSxwYXVzZTpmdW5jdGlvbihiKXtyZXR1cm4gYnx8KHRoaXMucGF1c2VkPSEwKSx0aGlzLiRlbGVtZW50LmZpbmQoIi5uZXh0LCAucHJldiIpLmxlbmd0aCYmYS5zdXBwb3J0LnRyYW5zaXRpb24uZW5kJiYodGhpcy4kZWxlbWVudC50cmlnZ2VyKGEuc3VwcG9ydC50cmFuc2l0aW9uLmVuZCksdGhpcy5jeWNsZSghMCkpLGNsZWFySW50ZXJ2YWwodGhpcy5pbnRlcnZhbCksdGhpcy5pbnRlcnZhbD1udWxsLHRoaXN9LG5leHQ6ZnVuY3Rpb24oKXtpZih0aGlzLnNsaWRpbmcpcmV0dXJuO3JldHVybiB0aGlzLnNsaWRlKCJuZXh0Iil9LHByZXY6ZnVuY3Rpb24oKXtpZih0aGlzLnNsaWRpbmcpcmV0dXJuO3JldHVybiB0aGlzLnNsaWRlKCJwcmV2Iil9LHNsaWRlOmZ1bmN0aW9uKGIsYyl7dmFyIGQ9dGhpcy4kZWxlbWVudC5maW5kKCIuaXRlbS5hY3RpdmUiKSxlPWN8fGRbYl0oKSxmPXRoaXMuaW50ZXJ2YWwsZz1iPT0ibmV4dCI/ImxlZnQiOiJyaWdodCIsaD1iPT0ibmV4dCI/ImZpcnN0IjoibGFzdCIsaT10aGlzLGo7dGhpcy5zbGlkaW5nPSEwLGYmJnRoaXMucGF1c2UoKSxlPWUubGVuZ3RoP2U6dGhpcy4kZWxlbWVudC5maW5kKCIuaXRlbSIpW2hdKCksaj1hLkV2ZW50KCJzbGlkZSIse3JlbGF0ZWRUYXJnZXQ6ZVswXSxkaXJlY3Rpb246Z30pO2lmKGUuaGFzQ2xhc3MoImFjdGl2ZSIpKXJldHVybjt0aGlzLiRpbmRpY2F0b3JzLmxlbmd0aCYmKHRoaXMuJGluZGljYXRvcnMuZmluZCgiLmFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSx0aGlzLiRlbGVtZW50Lm9uZSgic2xpZCIsZnVuY3Rpb24oKXt2YXIgYj1hKGkuJGluZGljYXRvcnMuY2hpbGRyZW4oKVtpLmdldEFjdGl2ZUluZGV4KCldKTtiJiZiLmFkZENsYXNzKCJhY3RpdmUiKX0pKTtpZihhLnN1cHBvcnQudHJhbnNpdGlvbiYmdGhpcy4kZWxlbWVudC5oYXNDbGFzcygic2xpZGUiKSl7dGhpcy4kZWxlbWVudC50cmlnZ2VyKGopO2lmKGouaXNEZWZhdWx0UHJldmVudGVkKCkpcmV0dXJuO2UuYWRkQ2xhc3MoYiksZVswXS5vZmZzZXRXaWR0aCxkLmFkZENsYXNzKGcpLGUuYWRkQ2xhc3MoZyksdGhpcy4kZWxlbWVudC5vbmUoYS5zdXBwb3J0LnRyYW5zaXRpb24uZW5kLGZ1bmN0aW9uKCl7ZS5yZW1vdmVDbGFzcyhbYixnXS5qb2luKCIgIikpLmFkZENsYXNzKCJhY3RpdmUiKSxkLnJlbW92ZUNsYXNzKFsiYWN0aXZlIixnXS5qb2luKCIgIikpLGkuc2xpZGluZz0hMSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aS4kZWxlbWVudC50cmlnZ2VyKCJzbGlkIil9LDApfSl9ZWxzZXt0aGlzLiRlbGVtZW50LnRyaWdnZXIoaik7aWYoai5pc0RlZmF1bHRQcmV2ZW50ZWQoKSlyZXR1cm47ZC5yZW1vdmVDbGFzcygiYWN0aXZlIiksZS5hZGRDbGFzcygiYWN0aXZlIiksdGhpcy5zbGlkaW5nPSExLHRoaXMuJGVsZW1lbnQudHJpZ2dlcigic2xpZCIpfXJldHVybiBmJiZ0aGlzLmN5Y2xlKCksdGhpc319O3ZhciBjPWEuZm4uY2Fyb3VzZWw7YS5mbi5jYXJvdXNlbD1mdW5jdGlvbihjKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGQ9YSh0aGlzKSxlPWQuZGF0YSgiY2Fyb3VzZWwiKSxmPWEuZXh0ZW5kKHt9LGEuZm4uY2Fyb3VzZWwuZGVmYXVsdHMsdHlwZW9mIGM9PSJvYmplY3QiJiZjKSxnPXR5cGVvZiBjPT0ic3RyaW5nIj9jOmYuc2xpZGU7ZXx8ZC5kYXRhKCJjYXJvdXNlbCIsZT1uZXcgYih0aGlzLGYpKSx0eXBlb2YgYz09Im51bWJlciI/ZS50byhjKTpnP2VbZ10oKTpmLmludGVydmFsJiZlLnBhdXNlKCkuY3ljbGUoKX0pfSxhLmZuLmNhcm91c2VsLmRlZmF1bHRzPXtpbnRlcnZhbDo1ZTMscGF1c2U6ImhvdmVyIn0sYS5mbi5jYXJvdXNlbC5Db25zdHJ1Y3Rvcj1iLGEuZm4uY2Fyb3VzZWwubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBhLmZuLmNhcm91c2VsPWMsdGhpc30sYShkb2N1bWVudCkub24oImNsaWNrLmNhcm91c2VsLmRhdGEtYXBpIiwiW2RhdGEtc2xpZGVdLCBbZGF0YS1zbGlkZS10b10iLGZ1bmN0aW9uKGIpe3ZhciBjPWEodGhpcyksZCxlPWEoYy5hdHRyKCJkYXRhLXRhcmdldCIpfHwoZD1jLmF0dHIoImhyZWYiKSkmJmQucmVwbGFjZSgvLiooPz0jW15cc10rJCkvLCIiKSksZj1hLmV4dGVuZCh7fSxlLmRhdGEoKSxjLmRhdGEoKSksZztlLmNhcm91c2VsKGYpLChnPWMuYXR0cigiZGF0YS1zbGlkZS10byIpKSYmZS5kYXRhKCJjYXJvdXNlbCIpLnBhdXNlKCkudG8oZykuY3ljbGUoKSxiLnByZXZlbnREZWZhdWx0KCl9KX0od2luZG93LmpRdWVyeSksIWZ1bmN0aW9uKGEpe3ZhciBiPWZ1bmN0aW9uKGIsYyl7dGhpcy4kZWxlbWVudD1hKGIpLHRoaXMub3B0aW9ucz1hLmV4dGVuZCh7fSxhLmZuLnR5cGVhaGVhZC5kZWZhdWx0cyxjKSx0aGlzLm1hdGNoZXI9dGhpcy5vcHRpb25zLm1hdGNoZXJ8fHRoaXMubWF0Y2hlcix0aGlzLnNvcnRlcj10aGlzLm9wdGlvbnMuc29ydGVyfHx0aGlzLnNvcnRlcix0aGlzLmhpZ2hsaWdodGVyPXRoaXMub3B0aW9ucy5oaWdobGlnaHRlcnx8dGhpcy5oaWdobGlnaHRlcix0aGlzLnVwZGF0ZXI9dGhpcy5vcHRpb25zLnVwZGF0ZXJ8fHRoaXMudXBkYXRlcix0aGlzLnNvdXJjZT10aGlzLm9wdGlvbnMuc291cmNlLHRoaXMuJG1lbnU9YSh0aGlzLm9wdGlvbnMubWVudSksdGhpcy5zaG93bj0hMSx0aGlzLmxpc3RlbigpfTtiLnByb3RvdHlwZT17Y29uc3RydWN0b3I6YixzZWxlY3Q6ZnVuY3Rpb24oKXt2YXIgYT10aGlzLiRtZW51LmZpbmQoIi5hY3RpdmUiKS5hdHRyKCJkYXRhLXZhbHVlIik7cmV0dXJuIHRoaXMuJGVsZW1lbnQudmFsKHRoaXMudXBkYXRlcihhKSkuY2hhbmdlKCksdGhpcy5oaWRlKCl9LHVwZGF0ZXI6ZnVuY3Rpb24oYSl7cmV0dXJuIGF9LHNob3c6ZnVuY3Rpb24oKXt2YXIgYj1hLmV4dGVuZCh7fSx0aGlzLiRlbGVtZW50LnBvc2l0aW9uKCkse2hlaWdodDp0aGlzLiRlbGVtZW50WzBdLm9mZnNldEhlaWdodH0pO3JldHVybiB0aGlzLiRtZW51Lmluc2VydEFmdGVyKHRoaXMuJGVsZW1lbnQpLmNzcyh7dG9wOmIudG9wK2IuaGVpZ2h0LGxlZnQ6Yi5sZWZ0fSkuc2hvdygpLHRoaXMuc2hvd249ITAsdGhpc30saGlkZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLiRtZW51LmhpZGUoKSx0aGlzLnNob3duPSExLHRoaXN9LGxvb2t1cDpmdW5jdGlvbihiKXt2YXIgYztyZXR1cm4gdGhpcy5xdWVyeT10aGlzLiRlbGVtZW50LnZhbCgpLCF0aGlzLnF1ZXJ5fHx0aGlzLnF1ZXJ5Lmxlbmd0aDx0aGlzLm9wdGlvbnMubWluTGVuZ3RoP3RoaXMuc2hvd24/dGhpcy5oaWRlKCk6dGhpczooYz1hLmlzRnVuY3Rpb24odGhpcy5zb3VyY2UpP3RoaXMuc291cmNlKHRoaXMucXVlcnksYS5wcm94eSh0aGlzLnByb2Nlc3MsdGhpcykpOnRoaXMuc291cmNlLGM/dGhpcy5wcm9jZXNzKGMpOnRoaXMpfSxwcm9jZXNzOmZ1bmN0aW9uKGIpe3ZhciBjPXRoaXM7cmV0dXJuIGI9YS5ncmVwKGIsZnVuY3Rpb24oYSl7cmV0dXJuIGMubWF0Y2hlcihhKX0pLGI9dGhpcy5zb3J0ZXIoYiksYi5sZW5ndGg/dGhpcy5yZW5kZXIoYi5zbGljZSgwLHRoaXMub3B0aW9ucy5pdGVtcykpLnNob3coKTp0aGlzLnNob3duP3RoaXMuaGlkZSgpOnRoaXN9LG1hdGNoZXI6ZnVuY3Rpb24oYSl7cmV0dXJufmEudG9Mb3dlckNhc2UoKS5pbmRleE9mKHRoaXMucXVlcnkudG9Mb3dlckNhc2UoKSl9LHNvcnRlcjpmdW5jdGlvbihhKXt2YXIgYj1bXSxjPVtdLGQ9W10sZTt3aGlsZShlPWEuc2hpZnQoKSllLnRvTG93ZXJDYXNlKCkuaW5kZXhPZih0aGlzLnF1ZXJ5LnRvTG93ZXJDYXNlKCkpP35lLmluZGV4T2YodGhpcy5xdWVyeSk/Yy5wdXNoKGUpOmQucHVzaChlKTpiLnB1c2goZSk7cmV0dXJuIGIuY29uY2F0KGMsZCl9LGhpZ2hsaWdodGVyOmZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMucXVlcnkucmVwbGFjZSgvW1wtXFtcXXt9KCkqKz8uLFxcXF4kfCNcc10vZywiXFwkJiIpO3JldHVybiBhLnJlcGxhY2UobmV3IFJlZ0V4cCgiKCIrYisiKSIsImlnIiksZnVuY3Rpb24oYSxiKXtyZXR1cm4iPHN0cm9uZz4iK2IrIjwvc3Ryb25nPiJ9KX0scmVuZGVyOmZ1bmN0aW9uKGIpe3ZhciBjPXRoaXM7cmV0dXJuIGI9YShiKS5tYXAoZnVuY3Rpb24oYixkKXtyZXR1cm4gYj1hKGMub3B0aW9ucy5pdGVtKS5hdHRyKCJkYXRhLXZhbHVlIixkKSxiLmZpbmQoImEiKS5odG1sKGMuaGlnaGxpZ2h0ZXIoZCkpLGJbMF19KSxiLmZpcnN0KCkuYWRkQ2xhc3MoImFjdGl2ZSIpLHRoaXMuJG1lbnUuaHRtbChiKSx0aGlzfSxuZXh0OmZ1bmN0aW9uKGIpe3ZhciBjPXRoaXMuJG1lbnUuZmluZCgiLmFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSxkPWMubmV4dCgpO2QubGVuZ3RofHwoZD1hKHRoaXMuJG1lbnUuZmluZCgibGkiKVswXSkpLGQuYWRkQ2xhc3MoImFjdGl2ZSIpfSxwcmV2OmZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuJG1lbnUuZmluZCgiLmFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJhY3RpdmUiKSxjPWIucHJldigpO2MubGVuZ3RofHwoYz10aGlzLiRtZW51LmZpbmQoImxpIikubGFzdCgpKSxjLmFkZENsYXNzKCJhY3RpdmUiKX0sbGlzdGVuOmZ1bmN0aW9uKCl7dGhpcy4kZWxlbWVudC5vbigiZm9jdXMiLGEucHJveHkodGhpcy5mb2N1cyx0aGlzKSkub24oImJsdXIiLGEucHJveHkodGhpcy5ibHVyLHRoaXMpKS5vbigia2V5cHJlc3MiLGEucHJveHkodGhpcy5rZXlwcmVzcyx0aGlzKSkub24oImtleXVwIixhLnByb3h5KHRoaXMua2V5dXAsdGhpcykpLHRoaXMuZXZlbnRTdXBwb3J0ZWQoImtleWRvd24iKSYmdGhpcy4kZWxlbWVudC5vbigia2V5ZG93biIsYS5wcm94eSh0aGlzLmtleWRvd24sdGhpcykpLHRoaXMuJG1lbnUub24oImNsaWNrIixhLnByb3h5KHRoaXMuY2xpY2ssdGhpcykpLm9uKCJtb3VzZWVudGVyIiwibGkiLGEucHJveHkodGhpcy5tb3VzZWVudGVyLHRoaXMpKS5vbigibW91c2VsZWF2ZSIsImxpIixhLnByb3h5KHRoaXMubW91c2VsZWF2ZSx0aGlzKSl9LGV2ZW50U3VwcG9ydGVkOmZ1bmN0aW9uKGEpe3ZhciBiPWEgaW4gdGhpcy4kZWxlbWVudDtyZXR1cm4gYnx8KHRoaXMuJGVsZW1lbnQuc2V0QXR0cmlidXRlKGEsInJldHVybjsiKSxiPXR5cGVvZiB0aGlzLiRlbGVtZW50W2FdPT0iZnVuY3Rpb24iKSxifSxtb3ZlOmZ1bmN0aW9uKGEpe2lmKCF0aGlzLnNob3duKXJldHVybjtzd2l0Y2goYS5rZXlDb2RlKXtjYXNlIDk6Y2FzZSAxMzpjYXNlIDI3OmEucHJldmVudERlZmF1bHQoKTticmVhaztjYXNlIDM4OmEucHJldmVudERlZmF1bHQoKSx0aGlzLnByZXYoKTticmVhaztjYXNlIDQwOmEucHJldmVudERlZmF1bHQoKSx0aGlzLm5leHQoKX1hLnN0b3BQcm9wYWdhdGlvbigpfSxrZXlkb3duOmZ1bmN0aW9uKGIpe3RoaXMuc3VwcHJlc3NLZXlQcmVzc1JlcGVhdD1+YS5pbkFycmF5KGIua2V5Q29kZSxbNDAsMzgsOSwxMywyN10pLHRoaXMubW92ZShiKX0sa2V5cHJlc3M6ZnVuY3Rpb24oYSl7aWYodGhpcy5zdXBwcmVzc0tleVByZXNzUmVwZWF0KXJldHVybjt0aGlzLm1vdmUoYSl9LGtleXVwOmZ1bmN0aW9uKGEpe3N3aXRjaChhLmtleUNvZGUpe2Nhc2UgNDA6Y2FzZSAzODpjYXNlIDE2OmNhc2UgMTc6Y2FzZSAxODpicmVhaztjYXNlIDk6Y2FzZSAxMzppZighdGhpcy5zaG93bilyZXR1cm47dGhpcy5zZWxlY3QoKTticmVhaztjYXNlIDI3OmlmKCF0aGlzLnNob3duKXJldHVybjt0aGlzLmhpZGUoKTticmVhaztkZWZhdWx0OnRoaXMubG9va3VwKCl9YS5zdG9wUHJvcGFnYXRpb24oKSxhLnByZXZlbnREZWZhdWx0KCl9LGZvY3VzOmZ1bmN0aW9uKGEpe3RoaXMuZm9jdXNlZD0hMH0sYmx1cjpmdW5jdGlvbihhKXt0aGlzLmZvY3VzZWQ9ITEsIXRoaXMubW91c2Vkb3ZlciYmdGhpcy5zaG93biYmdGhpcy5oaWRlKCl9LGNsaWNrOmZ1bmN0aW9uKGEpe2Euc3RvcFByb3BhZ2F0aW9uKCksYS5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuc2VsZWN0KCksdGhpcy4kZWxlbWVudC5mb2N1cygpfSxtb3VzZWVudGVyOmZ1bmN0aW9uKGIpe3RoaXMubW91c2Vkb3Zlcj0hMCx0aGlzLiRtZW51LmZpbmQoIi5hY3RpdmUiKS5yZW1vdmVDbGFzcygiYWN0aXZlIiksYShiLmN1cnJlbnRUYXJnZXQpLmFkZENsYXNzKCJhY3RpdmUiKX0sbW91c2VsZWF2ZTpmdW5jdGlvbihhKXt0aGlzLm1vdXNlZG92ZXI9ITEsIXRoaXMuZm9jdXNlZCYmdGhpcy5zaG93biYmdGhpcy5oaWRlKCl9fTt2YXIgYz1hLmZuLnR5cGVhaGVhZDthLmZuLnR5cGVhaGVhZD1mdW5jdGlvbihjKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGQ9YSh0aGlzKSxlPWQuZGF0YSgidHlwZWFoZWFkIiksZj10eXBlb2YgYz09Im9iamVjdCImJmM7ZXx8ZC5kYXRhKCJ0eXBlYWhlYWQiLGU9bmV3IGIodGhpcyxmKSksdHlwZW9mIGM9PSJzdHJpbmciJiZlW2NdKCl9KX0sYS5mbi50eXBlYWhlYWQuZGVmYXVsdHM9e3NvdXJjZTpbXSxpdGVtczo4LG1lbnU6Jzx1bCBjbGFzcz0idHlwZWFoZWFkIGRyb3Bkb3duLW1lbnUiPjwvdWw+JyxpdGVtOic8bGk+PGEgaHJlZj0iIyI+PC9hPjwvbGk+JyxtaW5MZW5ndGg6MX0sYS5mbi50eXBlYWhlYWQuQ29uc3RydWN0b3I9YixhLmZuLnR5cGVhaGVhZC5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGEuZm4udHlwZWFoZWFkPWMsdGhpc30sYShkb2N1bWVudCkub24oImZvY3VzLnR5cGVhaGVhZC5kYXRhLWFwaSIsJ1tkYXRhLXByb3ZpZGU9InR5cGVhaGVhZCJdJyxmdW5jdGlvbihiKXt2YXIgYz1hKHRoaXMpO2lmKGMuZGF0YSgidHlwZWFoZWFkIikpcmV0dXJuO2MudHlwZWFoZWFkKGMuZGF0YSgpKX0pfSh3aW5kb3cualF1ZXJ5KQ==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/js/html5.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoKIEhUTUw1IFNoaXYgdjMuNy4wIHwgQGFmYXJrYXMgQGpkYWx0b24gQGpvbl9uZWFsIEByZW0gfCBNSVQvR1BMMiBMaWNlbnNlZAoqLwooZnVuY3Rpb24obCxmKXtmdW5jdGlvbiBtKCl7dmFyIGE9ZS5lbGVtZW50cztyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGE/YS5zcGxpdCgiICIpOmF9ZnVuY3Rpb24gaShhKXt2YXIgYj1uW2Fbb11dO2J8fChiPXt9LGgrKyxhW29dPWgsbltoXT1iKTtyZXR1cm4gYn1mdW5jdGlvbiBwKGEsYixjKXtifHwoYj1mKTtpZihnKXJldHVybiBiLmNyZWF0ZUVsZW1lbnQoYSk7Y3x8KGM9aShiKSk7Yj1jLmNhY2hlW2FdP2MuY2FjaGVbYV0uY2xvbmVOb2RlKCk6ci50ZXN0KGEpPyhjLmNhY2hlW2FdPWMuY3JlYXRlRWxlbShhKSkuY2xvbmVOb2RlKCk6Yy5jcmVhdGVFbGVtKGEpO3JldHVybiBiLmNhbkhhdmVDaGlsZHJlbiYmIXMudGVzdChhKT9jLmZyYWcuYXBwZW5kQ2hpbGQoYik6Yn1mdW5jdGlvbiB0KGEsYil7aWYoIWIuY2FjaGUpYi5jYWNoZT17fSxiLmNyZWF0ZUVsZW09YS5jcmVhdGVFbGVtZW50LGIuY3JlYXRlRnJhZz1hLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQsYi5mcmFnPWIuY3JlYXRlRnJhZygpOwphLmNyZWF0ZUVsZW1lbnQ9ZnVuY3Rpb24oYyl7cmV0dXJuIWUuc2hpdk1ldGhvZHM/Yi5jcmVhdGVFbGVtKGMpOnAoYyxhLGIpfTthLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQ9RnVuY3Rpb24oImgsZiIsInJldHVybiBmdW5jdGlvbigpe3ZhciBuPWYuY2xvbmVOb2RlKCksYz1uLmNyZWF0ZUVsZW1lbnQ7aC5zaGl2TWV0aG9kcyYmKCIrbSgpLmpvaW4oKS5yZXBsYWNlKC9bXHdcLV0rL2csZnVuY3Rpb24oYSl7Yi5jcmVhdGVFbGVtKGEpO2IuZnJhZy5jcmVhdGVFbGVtZW50KGEpO3JldHVybidjKCInK2ErJyIpJ30pKyIpO3JldHVybiBufSIpKGUsYi5mcmFnKX1mdW5jdGlvbiBxKGEpe2F8fChhPWYpO3ZhciBiPWkoYSk7aWYoZS5zaGl2Q1NTJiYhaiYmIWIuaGFzQ1NTKXt2YXIgYyxkPWE7Yz1kLmNyZWF0ZUVsZW1lbnQoInAiKTtkPWQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXXx8ZC5kb2N1bWVudEVsZW1lbnQ7Yy5pbm5lckhUTUw9Ing8c3R5bGU+YXJ0aWNsZSxhc2lkZSxkaWFsb2csZmlnY2FwdGlvbixmaWd1cmUsZm9vdGVyLGhlYWRlcixoZ3JvdXAsbWFpbixuYXYsc2VjdGlvbntkaXNwbGF5OmJsb2NrfW1hcmt7YmFja2dyb3VuZDojRkYwO2NvbG9yOiMwMDB9dGVtcGxhdGV7ZGlzcGxheTpub25lfTwvc3R5bGU+IjsKYz1kLmluc2VydEJlZm9yZShjLmxhc3RDaGlsZCxkLmZpcnN0Q2hpbGQpO2IuaGFzQ1NTPSEhY31nfHx0KGEsYik7cmV0dXJuIGF9dmFyIGs9bC5odG1sNXx8e30scz0vXjx8Xig/OmJ1dHRvbnxtYXB8c2VsZWN0fHRleHRhcmVhfG9iamVjdHxpZnJhbWV8b3B0aW9ufG9wdGdyb3VwKSQvaSxyPS9eKD86YXxifGNvZGV8ZGl2fGZpZWxkc2V0fGgxfGgyfGgzfGg0fGg1fGg2fGl8bGFiZWx8bGl8b2x8cHxxfHNwYW58c3Ryb25nfHN0eWxlfHRhYmxlfHRib2R5fHRkfHRofHRyfHVsKSQvaSxqLG89Il9odG1sNXNoaXYiLGg9MCxuPXt9LGc7KGZ1bmN0aW9uKCl7dHJ5e3ZhciBhPWYuY3JlYXRlRWxlbWVudCgiYSIpO2EuaW5uZXJIVE1MPSI8eHl6PjwveHl6PiI7aj0iaGlkZGVuImluIGE7dmFyIGI7aWYoIShiPTE9PWEuY2hpbGROb2Rlcy5sZW5ndGgpKXtmLmNyZWF0ZUVsZW1lbnQoImEiKTt2YXIgYz1mLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTtiPSJ1bmRlZmluZWQiPT10eXBlb2YgYy5jbG9uZU5vZGV8fAoidW5kZWZpbmVkIj09dHlwZW9mIGMuY3JlYXRlRG9jdW1lbnRGcmFnbWVudHx8InVuZGVmaW5lZCI9PXR5cGVvZiBjLmNyZWF0ZUVsZW1lbnR9Zz1ifWNhdGNoKGQpe2c9aj0hMH19KSgpO3ZhciBlPXtlbGVtZW50czprLmVsZW1lbnRzfHwiYWJiciBhcnRpY2xlIGFzaWRlIGF1ZGlvIGJkaSBjYW52YXMgZGF0YSBkYXRhbGlzdCBkZXRhaWxzIGRpYWxvZyBmaWdjYXB0aW9uIGZpZ3VyZSBmb290ZXIgaGVhZGVyIGhncm91cCBtYWluIG1hcmsgbWV0ZXIgbmF2IG91dHB1dCBwcm9ncmVzcyBzZWN0aW9uIHN1bW1hcnkgdGVtcGxhdGUgdGltZSB2aWRlbyIsdmVyc2lvbjoiMy43LjAiLHNoaXZDU1M6ITEhPT1rLnNoaXZDU1Msc3VwcG9ydHNVbmtub3duRWxlbWVudHM6ZyxzaGl2TWV0aG9kczohMSE9PWsuc2hpdk1ldGhvZHMsdHlwZToiZGVmYXVsdCIsc2hpdkRvY3VtZW50OnEsY3JlYXRlRWxlbWVudDpwLGNyZWF0ZURvY3VtZW50RnJhZ21lbnQ6ZnVuY3Rpb24oYSxiKXthfHwoYT1mKTsKaWYoZylyZXR1cm4gYS5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7Zm9yKHZhciBiPWJ8fGkoYSksYz1iLmZyYWcuY2xvbmVOb2RlKCksZD0wLGU9bSgpLGg9ZS5sZW5ndGg7ZDxoO2QrKyljLmNyZWF0ZUVsZW1lbnQoZVtkXSk7cmV0dXJuIGN9fTtsLmh0bWw1PWU7cShmKX0pKHRoaXMsZG9jdW1lbnQpOwo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/js/jquery-1.11.0.min.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyohIGpRdWVyeSB2MS4xMS4wIHwgKGMpIDIwMDUsIDIwMTQgalF1ZXJ5IEZvdW5kYXRpb24sIEluYy4gfCBqcXVlcnkub3JnL2xpY2Vuc2UgKi8KIWZ1bmN0aW9uKGEsYil7Im9iamVjdCI9PXR5cGVvZiBtb2R1bGUmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlLmV4cG9ydHM/bW9kdWxlLmV4cG9ydHM9YS5kb2N1bWVudD9iKGEsITApOmZ1bmN0aW9uKGEpe2lmKCFhLmRvY3VtZW50KXRocm93IG5ldyBFcnJvcigialF1ZXJ5IHJlcXVpcmVzIGEgd2luZG93IHdpdGggYSBkb2N1bWVudCIpO3JldHVybiBiKGEpfTpiKGEpfSgidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6dGhpcyxmdW5jdGlvbihhLGIpe3ZhciBjPVtdLGQ9Yy5zbGljZSxlPWMuY29uY2F0LGY9Yy5wdXNoLGc9Yy5pbmRleE9mLGg9e30saT1oLnRvU3RyaW5nLGo9aC5oYXNPd25Qcm9wZXJ0eSxrPSIiLnRyaW0sbD17fSxtPSIxLjExLjAiLG49ZnVuY3Rpb24oYSxiKXtyZXR1cm4gbmV3IG4uZm4uaW5pdChhLGIpfSxvPS9eW1xzXHVGRUZGXHhBMF0rfFtcc1x1RkVGRlx4QTBdKyQvZyxwPS9eLW1zLS8scT0vLShbXGRhLXpdKS9naSxyPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGIudG9VcHBlckNhc2UoKX07bi5mbj1uLnByb3RvdHlwZT17anF1ZXJ5Om0sY29uc3RydWN0b3I6bixzZWxlY3RvcjoiIixsZW5ndGg6MCx0b0FycmF5OmZ1bmN0aW9uKCl7cmV0dXJuIGQuY2FsbCh0aGlzKX0sZ2V0OmZ1bmN0aW9uKGEpe3JldHVybiBudWxsIT1hPzA+YT90aGlzW2ErdGhpcy5sZW5ndGhdOnRoaXNbYV06ZC5jYWxsKHRoaXMpfSxwdXNoU3RhY2s6ZnVuY3Rpb24oYSl7dmFyIGI9bi5tZXJnZSh0aGlzLmNvbnN0cnVjdG9yKCksYSk7cmV0dXJuIGIucHJldk9iamVjdD10aGlzLGIuY29udGV4dD10aGlzLmNvbnRleHQsYn0sZWFjaDpmdW5jdGlvbihhLGIpe3JldHVybiBuLmVhY2godGhpcyxhLGIpfSxtYXA6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKG4ubWFwKHRoaXMsZnVuY3Rpb24oYixjKXtyZXR1cm4gYS5jYWxsKGIsYyxiKX0pKX0sc2xpY2U6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soZC5hcHBseSh0aGlzLGFyZ3VtZW50cykpfSxmaXJzdDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVxKDApfSxsYXN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZXEoLTEpfSxlcTpmdW5jdGlvbihhKXt2YXIgYj10aGlzLmxlbmd0aCxjPSthKygwPmE/YjowKTtyZXR1cm4gdGhpcy5wdXNoU3RhY2soYz49MCYmYj5jP1t0aGlzW2NdXTpbXSl9LGVuZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnByZXZPYmplY3R8fHRoaXMuY29uc3RydWN0b3IobnVsbCl9LHB1c2g6Zixzb3J0OmMuc29ydCxzcGxpY2U6Yy5zcGxpY2V9LG4uZXh0ZW5kPW4uZm4uZXh0ZW5kPWZ1bmN0aW9uKCl7dmFyIGEsYixjLGQsZSxmLGc9YXJndW1lbnRzWzBdfHx7fSxoPTEsaT1hcmd1bWVudHMubGVuZ3RoLGo9ITE7Zm9yKCJib29sZWFuIj09dHlwZW9mIGcmJihqPWcsZz1hcmd1bWVudHNbaF18fHt9LGgrKyksIm9iamVjdCI9PXR5cGVvZiBnfHxuLmlzRnVuY3Rpb24oZyl8fChnPXt9KSxoPT09aSYmKGc9dGhpcyxoLS0pO2k+aDtoKyspaWYobnVsbCE9KGU9YXJndW1lbnRzW2hdKSlmb3IoZCBpbiBlKWE9Z1tkXSxjPWVbZF0sZyE9PWMmJihqJiZjJiYobi5pc1BsYWluT2JqZWN0KGMpfHwoYj1uLmlzQXJyYXkoYykpKT8oYj8oYj0hMSxmPWEmJm4uaXNBcnJheShhKT9hOltdKTpmPWEmJm4uaXNQbGFpbk9iamVjdChhKT9hOnt9LGdbZF09bi5leHRlbmQoaixmLGMpKTp2b2lkIDAhPT1jJiYoZ1tkXT1jKSk7cmV0dXJuIGd9LG4uZXh0ZW5kKHtleHBhbmRvOiJqUXVlcnkiKyhtK01hdGgucmFuZG9tKCkpLnJlcGxhY2UoL1xEL2csIiIpLGlzUmVhZHk6ITAsZXJyb3I6ZnVuY3Rpb24oYSl7dGhyb3cgbmV3IEVycm9yKGEpfSxub29wOmZ1bmN0aW9uKCl7fSxpc0Z1bmN0aW9uOmZ1bmN0aW9uKGEpe3JldHVybiJmdW5jdGlvbiI9PT1uLnR5cGUoYSl9LGlzQXJyYXk6QXJyYXkuaXNBcnJheXx8ZnVuY3Rpb24oYSl7cmV0dXJuImFycmF5Ij09PW4udHlwZShhKX0saXNXaW5kb3c6ZnVuY3Rpb24oYSl7cmV0dXJuIG51bGwhPWEmJmE9PWEud2luZG93fSxpc051bWVyaWM6ZnVuY3Rpb24oYSl7cmV0dXJuIGEtcGFyc2VGbG9hdChhKT49MH0saXNFbXB0eU9iamVjdDpmdW5jdGlvbihhKXt2YXIgYjtmb3IoYiBpbiBhKXJldHVybiExO3JldHVybiEwfSxpc1BsYWluT2JqZWN0OmZ1bmN0aW9uKGEpe3ZhciBiO2lmKCFhfHwib2JqZWN0IiE9PW4udHlwZShhKXx8YS5ub2RlVHlwZXx8bi5pc1dpbmRvdyhhKSlyZXR1cm4hMTt0cnl7aWYoYS5jb25zdHJ1Y3RvciYmIWouY2FsbChhLCJjb25zdHJ1Y3RvciIpJiYhai5jYWxsKGEuY29uc3RydWN0b3IucHJvdG90eXBlLCJpc1Byb3RvdHlwZU9mIikpcmV0dXJuITF9Y2F0Y2goYyl7cmV0dXJuITF9aWYobC5vd25MYXN0KWZvcihiIGluIGEpcmV0dXJuIGouY2FsbChhLGIpO2ZvcihiIGluIGEpO3JldHVybiB2b2lkIDA9PT1ifHxqLmNhbGwoYSxiKX0sdHlwZTpmdW5jdGlvbihhKXtyZXR1cm4gbnVsbD09YT9hKyIiOiJvYmplY3QiPT10eXBlb2YgYXx8ImZ1bmN0aW9uIj09dHlwZW9mIGE/aFtpLmNhbGwoYSldfHwib2JqZWN0Ijp0eXBlb2YgYX0sZ2xvYmFsRXZhbDpmdW5jdGlvbihiKXtiJiZuLnRyaW0oYikmJihhLmV4ZWNTY3JpcHR8fGZ1bmN0aW9uKGIpe2EuZXZhbC5jYWxsKGEsYil9KShiKX0sY2FtZWxDYXNlOmZ1bmN0aW9uKGEpe3JldHVybiBhLnJlcGxhY2UocCwibXMtIikucmVwbGFjZShxLHIpfSxub2RlTmFtZTpmdW5jdGlvbihhLGIpe3JldHVybiBhLm5vZGVOYW1lJiZhLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT1iLnRvTG93ZXJDYXNlKCl9LGVhY2g6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGU9MCxmPWEubGVuZ3RoLGc9cyhhKTtpZihjKXtpZihnKXtmb3IoO2Y+ZTtlKyspaWYoZD1iLmFwcGx5KGFbZV0sYyksZD09PSExKWJyZWFrfWVsc2UgZm9yKGUgaW4gYSlpZihkPWIuYXBwbHkoYVtlXSxjKSxkPT09ITEpYnJlYWt9ZWxzZSBpZihnKXtmb3IoO2Y+ZTtlKyspaWYoZD1iLmNhbGwoYVtlXSxlLGFbZV0pLGQ9PT0hMSlicmVha31lbHNlIGZvcihlIGluIGEpaWYoZD1iLmNhbGwoYVtlXSxlLGFbZV0pLGQ9PT0hMSlicmVhaztyZXR1cm4gYX0sdHJpbTprJiYhay5jYWxsKCJcdWZlZmZceGEwIik/ZnVuY3Rpb24oYSl7cmV0dXJuIG51bGw9PWE/IiI6ay5jYWxsKGEpfTpmdW5jdGlvbihhKXtyZXR1cm4gbnVsbD09YT8iIjooYSsiIikucmVwbGFjZShvLCIiKX0sbWFrZUFycmF5OmZ1bmN0aW9uKGEsYil7dmFyIGM9Ynx8W107cmV0dXJuIG51bGwhPWEmJihzKE9iamVjdChhKSk/bi5tZXJnZShjLCJzdHJpbmciPT10eXBlb2YgYT9bYV06YSk6Zi5jYWxsKGMsYSkpLGN9LGluQXJyYXk6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkO2lmKGIpe2lmKGcpcmV0dXJuIGcuY2FsbChiLGEsYyk7Zm9yKGQ9Yi5sZW5ndGgsYz1jPzA+Yz9NYXRoLm1heCgwLGQrYyk6YzowO2Q+YztjKyspaWYoYyBpbiBiJiZiW2NdPT09YSlyZXR1cm4gY31yZXR1cm4tMX0sbWVyZ2U6ZnVuY3Rpb24oYSxiKXt2YXIgYz0rYi5sZW5ndGgsZD0wLGU9YS5sZW5ndGg7d2hpbGUoYz5kKWFbZSsrXT1iW2QrK107aWYoYyE9PWMpd2hpbGUodm9pZCAwIT09YltkXSlhW2UrK109YltkKytdO3JldHVybiBhLmxlbmd0aD1lLGF9LGdyZXA6ZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZCxlPVtdLGY9MCxnPWEubGVuZ3RoLGg9IWM7Zz5mO2YrKylkPSFiKGFbZl0sZiksZCE9PWgmJmUucHVzaChhW2ZdKTtyZXR1cm4gZX0sbWFwOmZ1bmN0aW9uKGEsYixjKXt2YXIgZCxmPTAsZz1hLmxlbmd0aCxoPXMoYSksaT1bXTtpZihoKWZvcig7Zz5mO2YrKylkPWIoYVtmXSxmLGMpLG51bGwhPWQmJmkucHVzaChkKTtlbHNlIGZvcihmIGluIGEpZD1iKGFbZl0sZixjKSxudWxsIT1kJiZpLnB1c2goZCk7cmV0dXJuIGUuYXBwbHkoW10saSl9LGd1aWQ6MSxwcm94eTpmdW5jdGlvbihhLGIpe3ZhciBjLGUsZjtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIGImJihmPWFbYl0sYj1hLGE9Ziksbi5pc0Z1bmN0aW9uKGEpPyhjPWQuY2FsbChhcmd1bWVudHMsMiksZT1mdW5jdGlvbigpe3JldHVybiBhLmFwcGx5KGJ8fHRoaXMsYy5jb25jYXQoZC5jYWxsKGFyZ3VtZW50cykpKX0sZS5ndWlkPWEuZ3VpZD1hLmd1aWR8fG4uZ3VpZCsrLGUpOnZvaWQgMH0sbm93OmZ1bmN0aW9uKCl7cmV0dXJuK25ldyBEYXRlfSxzdXBwb3J0Omx9KSxuLmVhY2goIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJlZ0V4cCBPYmplY3QgRXJyb3IiLnNwbGl0KCIgIiksZnVuY3Rpb24oYSxiKXtoWyJbb2JqZWN0ICIrYisiXSJdPWIudG9Mb3dlckNhc2UoKX0pO2Z1bmN0aW9uIHMoYSl7dmFyIGI9YS5sZW5ndGgsYz1uLnR5cGUoYSk7cmV0dXJuImZ1bmN0aW9uIj09PWN8fG4uaXNXaW5kb3coYSk/ITE6MT09PWEubm9kZVR5cGUmJmI/ITA6ImFycmF5Ij09PWN8fDA9PT1ifHwibnVtYmVyIj09dHlwZW9mIGImJmI+MCYmYi0xIGluIGF9dmFyIHQ9ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGUsZixnLGgsaSxqLGssbCxtLG4sbyxwLHEscixzPSJzaXp6bGUiKy1uZXcgRGF0ZSx0PWEuZG9jdW1lbnQsdT0wLHY9MCx3PWViKCkseD1lYigpLHk9ZWIoKSx6PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9PT1iJiYoaj0hMCksMH0sQT0idW5kZWZpbmVkIixCPTE8PDMxLEM9e30uaGFzT3duUHJvcGVydHksRD1bXSxFPUQucG9wLEY9RC5wdXNoLEc9RC5wdXNoLEg9RC5zbGljZSxJPUQuaW5kZXhPZnx8ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTAsYz10aGlzLmxlbmd0aDtjPmI7YisrKWlmKHRoaXNbYl09PT1hKXJldHVybiBiO3JldHVybi0xfSxKPSJjaGVja2VkfHNlbGVjdGVkfGFzeW5jfGF1dG9mb2N1c3xhdXRvcGxheXxjb250cm9sc3xkZWZlcnxkaXNhYmxlZHxoaWRkZW58aXNtYXB8bG9vcHxtdWx0aXBsZXxvcGVufHJlYWRvbmx5fHJlcXVpcmVkfHNjb3BlZCIsSz0iW1xceDIwXFx0XFxyXFxuXFxmXSIsTD0iKD86XFxcXC58W1xcdy1dfFteXFx4MDAtXFx4YTBdKSsiLE09TC5yZXBsYWNlKCJ3IiwidyMiKSxOPSJcXFsiK0srIiooIitMKyIpIitLKyIqKD86KFsqXiR8IX5dPz0pIitLKyIqKD86KFsnXCJdKSgoPzpcXFxcLnxbXlxcXFxdKSo/KVxcM3woIitNKyIpfCl8KSIrSysiKlxcXSIsTz0iOigiK0wrIikoPzpcXCgoKFsnXCJdKSgoPzpcXFxcLnxbXlxcXFxdKSo/KVxcM3woKD86XFxcXC58W15cXFxcKClbXFxdXXwiK04ucmVwbGFjZSgzLDgpKyIpKil8LiopXFwpfCkiLFA9bmV3IFJlZ0V4cCgiXiIrSysiK3woKD86XnxbXlxcXFxdKSg/OlxcXFwuKSopIitLKyIrJCIsImciKSxRPW5ldyBSZWdFeHAoIl4iK0srIiosIitLKyIqIiksUj1uZXcgUmVnRXhwKCJeIitLKyIqKFs+K35dfCIrSysiKSIrSysiKiIpLFM9bmV3IFJlZ0V4cCgiPSIrSysiKihbXlxcXSdcIl0qPykiK0srIipcXF0iLCJnIiksVD1uZXcgUmVnRXhwKE8pLFU9bmV3IFJlZ0V4cCgiXiIrTSsiJCIpLFY9e0lEOm5ldyBSZWdFeHAoIl4jKCIrTCsiKSIpLENMQVNTOm5ldyBSZWdFeHAoIl5cXC4oIitMKyIpIiksVEFHOm5ldyBSZWdFeHAoIl4oIitMLnJlcGxhY2UoInciLCJ3KiIpKyIpIiksQVRUUjpuZXcgUmVnRXhwKCJeIitOKSxQU0VVRE86bmV3IFJlZ0V4cCgiXiIrTyksQ0hJTEQ6bmV3IFJlZ0V4cCgiXjoob25seXxmaXJzdHxsYXN0fG50aHxudGgtbGFzdCktKGNoaWxkfG9mLXR5cGUpKD86XFwoIitLKyIqKGV2ZW58b2RkfCgoWystXXwpKFxcZCopbnwpIitLKyIqKD86KFsrLV18KSIrSysiKihcXGQrKXwpKSIrSysiKlxcKXwpIiwiaSIpLGJvb2w6bmV3IFJlZ0V4cCgiXig/OiIrSisiKSQiLCJpIiksbmVlZHNDb250ZXh0Om5ldyBSZWdFeHAoIl4iK0srIipbPit+XXw6KGV2ZW58b2RkfGVxfGd0fGx0fG50aHxmaXJzdHxsYXN0KSg/OlxcKCIrSysiKigoPzotXFxkKT9cXGQqKSIrSysiKlxcKXwpKD89W14tXXwkKSIsImkiKX0sVz0vXig/OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b24pJC9pLFg9L15oXGQkL2ksWT0vXltee10rXHtccypcW25hdGl2ZSBcdy8sWj0vXig/OiMoW1x3LV0rKXwoXHcrKXxcLihbXHctXSspKSQvLCQ9L1srfl0vLF89Lyd8XFwvZyxhYj1uZXcgUmVnRXhwKCJcXFxcKFtcXGRhLWZdezEsNn0iK0srIj98KCIrSysiKXwuKSIsImlnIiksYmI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPSIweCIrYi02NTUzNjtyZXR1cm4gZCE9PWR8fGM/YjowPmQ/U3RyaW5nLmZyb21DaGFyQ29kZShkKzY1NTM2KTpTdHJpbmcuZnJvbUNoYXJDb2RlKGQ+PjEwfDU1Mjk2LDEwMjMmZHw1NjMyMCl9O3RyeXtHLmFwcGx5KEQ9SC5jYWxsKHQuY2hpbGROb2RlcyksdC5jaGlsZE5vZGVzKSxEW3QuY2hpbGROb2Rlcy5sZW5ndGhdLm5vZGVUeXBlfWNhdGNoKGNiKXtHPXthcHBseTpELmxlbmd0aD9mdW5jdGlvbihhLGIpe0YuYXBwbHkoYSxILmNhbGwoYikpfTpmdW5jdGlvbihhLGIpe3ZhciBjPWEubGVuZ3RoLGQ9MDt3aGlsZShhW2MrK109YltkKytdKTthLmxlbmd0aD1jLTF9fX1mdW5jdGlvbiBkYihhLGIsZCxlKXt2YXIgZixnLGgsaSxqLG0scCxxLHUsdjtpZigoYj9iLm93bmVyRG9jdW1lbnR8fGI6dCkhPT1sJiZrKGIpLGI9Ynx8bCxkPWR8fFtdLCFhfHwic3RyaW5nIiE9dHlwZW9mIGEpcmV0dXJuIGQ7aWYoMSE9PShpPWIubm9kZVR5cGUpJiY5IT09aSlyZXR1cm5bXTtpZihuJiYhZSl7aWYoZj1aLmV4ZWMoYSkpaWYoaD1mWzFdKXtpZig5PT09aSl7aWYoZz1iLmdldEVsZW1lbnRCeUlkKGgpLCFnfHwhZy5wYXJlbnROb2RlKXJldHVybiBkO2lmKGcuaWQ9PT1oKXJldHVybiBkLnB1c2goZyksZH1lbHNlIGlmKGIub3duZXJEb2N1bWVudCYmKGc9Yi5vd25lckRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGgpKSYmcihiLGcpJiZnLmlkPT09aClyZXR1cm4gZC5wdXNoKGcpLGR9ZWxzZXtpZihmWzJdKXJldHVybiBHLmFwcGx5KGQsYi5nZXRFbGVtZW50c0J5VGFnTmFtZShhKSksZDtpZigoaD1mWzNdKSYmYy5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lJiZiLmdldEVsZW1lbnRzQnlDbGFzc05hbWUpcmV0dXJuIEcuYXBwbHkoZCxiLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoaCkpLGR9aWYoYy5xc2EmJighb3x8IW8udGVzdChhKSkpe2lmKHE9cD1zLHU9Yix2PTk9PT1pJiZhLDE9PT1pJiYib2JqZWN0IiE9PWIubm9kZU5hbWUudG9Mb3dlckNhc2UoKSl7bT1vYihhKSwocD1iLmdldEF0dHJpYnV0ZSgiaWQiKSk/cT1wLnJlcGxhY2UoXywiXFwkJiIpOmIuc2V0QXR0cmlidXRlKCJpZCIscSkscT0iW2lkPSciK3ErIiddICIsaj1tLmxlbmd0aDt3aGlsZShqLS0pbVtqXT1xK3BiKG1bal0pO3U9JC50ZXN0KGEpJiZtYihiLnBhcmVudE5vZGUpfHxiLHY9bS5qb2luKCIsIil9aWYodil0cnl7cmV0dXJuIEcuYXBwbHkoZCx1LnF1ZXJ5U2VsZWN0b3JBbGwodikpLGR9Y2F0Y2godyl7fWZpbmFsbHl7cHx8Yi5yZW1vdmVBdHRyaWJ1dGUoImlkIil9fX1yZXR1cm4geGIoYS5yZXBsYWNlKFAsIiQxIiksYixkLGUpfWZ1bmN0aW9uIGViKCl7dmFyIGE9W107ZnVuY3Rpb24gYihjLGUpe3JldHVybiBhLnB1c2goYysiICIpPmQuY2FjaGVMZW5ndGgmJmRlbGV0ZSBiW2Euc2hpZnQoKV0sYltjKyIgIl09ZX1yZXR1cm4gYn1mdW5jdGlvbiBmYihhKXtyZXR1cm4gYVtzXT0hMCxhfWZ1bmN0aW9uIGdiKGEpe3ZhciBiPWwuY3JlYXRlRWxlbWVudCgiZGl2Iik7dHJ5e3JldHVybiEhYShiKX1jYXRjaChjKXtyZXR1cm4hMX1maW5hbGx5e2IucGFyZW50Tm9kZSYmYi5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGIpLGI9bnVsbH19ZnVuY3Rpb24gaGIoYSxiKXt2YXIgYz1hLnNwbGl0KCJ8IiksZT1hLmxlbmd0aDt3aGlsZShlLS0pZC5hdHRySGFuZGxlW2NbZV1dPWJ9ZnVuY3Rpb24gaWIoYSxiKXt2YXIgYz1iJiZhLGQ9YyYmMT09PWEubm9kZVR5cGUmJjE9PT1iLm5vZGVUeXBlJiYofmIuc291cmNlSW5kZXh8fEIpLSh+YS5zb3VyY2VJbmRleHx8Qik7aWYoZClyZXR1cm4gZDtpZihjKXdoaWxlKGM9Yy5uZXh0U2libGluZylpZihjPT09YilyZXR1cm4tMTtyZXR1cm4gYT8xOi0xfWZ1bmN0aW9uIGpiKGEpe3JldHVybiBmdW5jdGlvbihiKXt2YXIgYz1iLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PWMmJmIudHlwZT09PWF9fWZ1bmN0aW9uIGtiKGEpe3JldHVybiBmdW5jdGlvbihiKXt2YXIgYz1iLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuKCJpbnB1dCI9PT1jfHwiYnV0dG9uIj09PWMpJiZiLnR5cGU9PT1hfX1mdW5jdGlvbiBsYihhKXtyZXR1cm4gZmIoZnVuY3Rpb24oYil7cmV0dXJuIGI9K2IsZmIoZnVuY3Rpb24oYyxkKXt2YXIgZSxmPWEoW10sYy5sZW5ndGgsYiksZz1mLmxlbmd0aDt3aGlsZShnLS0pY1tlPWZbZ11dJiYoY1tlXT0hKGRbZV09Y1tlXSkpfSl9KX1mdW5jdGlvbiBtYihhKXtyZXR1cm4gYSYmdHlwZW9mIGEuZ2V0RWxlbWVudHNCeVRhZ05hbWUhPT1BJiZhfWM9ZGIuc3VwcG9ydD17fSxmPWRiLmlzWE1MPWZ1bmN0aW9uKGEpe3ZhciBiPWEmJihhLm93bmVyRG9jdW1lbnR8fGEpLmRvY3VtZW50RWxlbWVudDtyZXR1cm4gYj8iSFRNTCIhPT1iLm5vZGVOYW1lOiExfSxrPWRiLnNldERvY3VtZW50PWZ1bmN0aW9uKGEpe3ZhciBiLGU9YT9hLm93bmVyRG9jdW1lbnR8fGE6dCxnPWUuZGVmYXVsdFZpZXc7cmV0dXJuIGUhPT1sJiY5PT09ZS5ub2RlVHlwZSYmZS5kb2N1bWVudEVsZW1lbnQ/KGw9ZSxtPWUuZG9jdW1lbnRFbGVtZW50LG49IWYoZSksZyYmZyE9PWcudG9wJiYoZy5hZGRFdmVudExpc3RlbmVyP2cuYWRkRXZlbnRMaXN0ZW5lcigidW5sb2FkIixmdW5jdGlvbigpe2soKX0sITEpOmcuYXR0YWNoRXZlbnQmJmcuYXR0YWNoRXZlbnQoIm9udW5sb2FkIixmdW5jdGlvbigpe2soKX0pKSxjLmF0dHJpYnV0ZXM9Z2IoZnVuY3Rpb24oYSl7cmV0dXJuIGEuY2xhc3NOYW1lPSJpIiwhYS5nZXRBdHRyaWJ1dGUoImNsYXNzTmFtZSIpfSksYy5nZXRFbGVtZW50c0J5VGFnTmFtZT1nYihmdW5jdGlvbihhKXtyZXR1cm4gYS5hcHBlbmRDaGlsZChlLmNyZWF0ZUNvbW1lbnQoIiIpKSwhYS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpLmxlbmd0aH0pLGMuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZT1ZLnRlc3QoZS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKSYmZ2IoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaW5uZXJIVE1MPSI8ZGl2IGNsYXNzPSdhJz48L2Rpdj48ZGl2IGNsYXNzPSdhIGknPjwvZGl2PiIsYS5maXJzdENoaWxkLmNsYXNzTmFtZT0iaSIsMj09PWEuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgiaSIpLmxlbmd0aH0pLGMuZ2V0QnlJZD1nYihmdW5jdGlvbihhKXtyZXR1cm4gbS5hcHBlbmRDaGlsZChhKS5pZD1zLCFlLmdldEVsZW1lbnRzQnlOYW1lfHwhZS5nZXRFbGVtZW50c0J5TmFtZShzKS5sZW5ndGh9KSxjLmdldEJ5SWQ/KGQuZmluZC5JRD1mdW5jdGlvbihhLGIpe2lmKHR5cGVvZiBiLmdldEVsZW1lbnRCeUlkIT09QSYmbil7dmFyIGM9Yi5nZXRFbGVtZW50QnlJZChhKTtyZXR1cm4gYyYmYy5wYXJlbnROb2RlP1tjXTpbXX19LGQuZmlsdGVyLklEPWZ1bmN0aW9uKGEpe3ZhciBiPWEucmVwbGFjZShhYixiYik7cmV0dXJuIGZ1bmN0aW9uKGEpe3JldHVybiBhLmdldEF0dHJpYnV0ZSgiaWQiKT09PWJ9fSk6KGRlbGV0ZSBkLmZpbmQuSUQsZC5maWx0ZXIuSUQ9ZnVuY3Rpb24oYSl7dmFyIGI9YS5yZXBsYWNlKGFiLGJiKTtyZXR1cm4gZnVuY3Rpb24oYSl7dmFyIGM9dHlwZW9mIGEuZ2V0QXR0cmlidXRlTm9kZSE9PUEmJmEuZ2V0QXR0cmlidXRlTm9kZSgiaWQiKTtyZXR1cm4gYyYmYy52YWx1ZT09PWJ9fSksZC5maW5kLlRBRz1jLmdldEVsZW1lbnRzQnlUYWdOYW1lP2Z1bmN0aW9uKGEsYil7cmV0dXJuIHR5cGVvZiBiLmdldEVsZW1lbnRzQnlUYWdOYW1lIT09QT9iLmdldEVsZW1lbnRzQnlUYWdOYW1lKGEpOnZvaWQgMH06ZnVuY3Rpb24oYSxiKXt2YXIgYyxkPVtdLGU9MCxmPWIuZ2V0RWxlbWVudHNCeVRhZ05hbWUoYSk7aWYoIioiPT09YSl7d2hpbGUoYz1mW2UrK10pMT09PWMubm9kZVR5cGUmJmQucHVzaChjKTtyZXR1cm4gZH1yZXR1cm4gZn0sZC5maW5kLkNMQVNTPWMuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmZnVuY3Rpb24oYSxiKXtyZXR1cm4gdHlwZW9mIGIuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSE9PUEmJm4/Yi5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGEpOnZvaWQgMH0scD1bXSxvPVtdLChjLnFzYT1ZLnRlc3QoZS5xdWVyeVNlbGVjdG9yQWxsKSkmJihnYihmdW5jdGlvbihhKXthLmlubmVySFRNTD0iPHNlbGVjdCB0PScnPjxvcHRpb24gc2VsZWN0ZWQ9Jyc+PC9vcHRpb24+PC9zZWxlY3Q+IixhLnF1ZXJ5U2VsZWN0b3JBbGwoIlt0Xj0nJ10iKS5sZW5ndGgmJm8ucHVzaCgiWypeJF09IitLKyIqKD86Jyd8XCJcIikiKSxhLnF1ZXJ5U2VsZWN0b3JBbGwoIltzZWxlY3RlZF0iKS5sZW5ndGh8fG8ucHVzaCgiXFxbIitLKyIqKD86dmFsdWV8IitKKyIpIiksYS5xdWVyeVNlbGVjdG9yQWxsKCI6Y2hlY2tlZCIpLmxlbmd0aHx8by5wdXNoKCI6Y2hlY2tlZCIpfSksZ2IoZnVuY3Rpb24oYSl7dmFyIGI9ZS5jcmVhdGVFbGVtZW50KCJpbnB1dCIpO2Iuc2V0QXR0cmlidXRlKCJ0eXBlIiwiaGlkZGVuIiksYS5hcHBlbmRDaGlsZChiKS5zZXRBdHRyaWJ1dGUoIm5hbWUiLCJEIiksYS5xdWVyeVNlbGVjdG9yQWxsKCJbbmFtZT1kXSIpLmxlbmd0aCYmby5wdXNoKCJuYW1lIitLKyIqWypeJHwhfl0/PSIpLGEucXVlcnlTZWxlY3RvckFsbCgiOmVuYWJsZWQiKS5sZW5ndGh8fG8ucHVzaCgiOmVuYWJsZWQiLCI6ZGlzYWJsZWQiKSxhLnF1ZXJ5U2VsZWN0b3JBbGwoIiosOngiKSxvLnB1c2goIiwuKjoiKX0pKSwoYy5tYXRjaGVzU2VsZWN0b3I9WS50ZXN0KHE9bS53ZWJraXRNYXRjaGVzU2VsZWN0b3J8fG0ubW96TWF0Y2hlc1NlbGVjdG9yfHxtLm9NYXRjaGVzU2VsZWN0b3J8fG0ubXNNYXRjaGVzU2VsZWN0b3IpKSYmZ2IoZnVuY3Rpb24oYSl7Yy5kaXNjb25uZWN0ZWRNYXRjaD1xLmNhbGwoYSwiZGl2IikscS5jYWxsKGEsIltzIT0nJ106eCIpLHAucHVzaCgiIT0iLE8pfSksbz1vLmxlbmd0aCYmbmV3IFJlZ0V4cChvLmpvaW4oInwiKSkscD1wLmxlbmd0aCYmbmV3IFJlZ0V4cChwLmpvaW4oInwiKSksYj1ZLnRlc3QobS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbikscj1ifHxZLnRlc3QobS5jb250YWlucyk/ZnVuY3Rpb24oYSxiKXt2YXIgYz05PT09YS5ub2RlVHlwZT9hLmRvY3VtZW50RWxlbWVudDphLGQ9YiYmYi5wYXJlbnROb2RlO3JldHVybiBhPT09ZHx8ISghZHx8MSE9PWQubm9kZVR5cGV8fCEoYy5jb250YWlucz9jLmNvbnRhaW5zKGQpOmEuY29tcGFyZURvY3VtZW50UG9zaXRpb24mJjE2JmEuY29tcGFyZURvY3VtZW50UG9zaXRpb24oZCkpKX06ZnVuY3Rpb24oYSxiKXtpZihiKXdoaWxlKGI9Yi5wYXJlbnROb2RlKWlmKGI9PT1hKXJldHVybiEwO3JldHVybiExfSx6PWI/ZnVuY3Rpb24oYSxiKXtpZihhPT09YilyZXR1cm4gaj0hMCwwO3ZhciBkPSFhLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uLSFiLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uO3JldHVybiBkP2Q6KGQ9KGEub3duZXJEb2N1bWVudHx8YSk9PT0oYi5vd25lckRvY3VtZW50fHxiKT9hLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKGIpOjEsMSZkfHwhYy5zb3J0RGV0YWNoZWQmJmIuY29tcGFyZURvY3VtZW50UG9zaXRpb24oYSk9PT1kP2E9PT1lfHxhLm93bmVyRG9jdW1lbnQ9PT10JiZyKHQsYSk/LTE6Yj09PWV8fGIub3duZXJEb2N1bWVudD09PXQmJnIodCxiKT8xOmk/SS5jYWxsKGksYSktSS5jYWxsKGksYik6MDo0JmQ/LTE6MSl9OmZ1bmN0aW9uKGEsYil7aWYoYT09PWIpcmV0dXJuIGo9ITAsMDt2YXIgYyxkPTAsZj1hLnBhcmVudE5vZGUsZz1iLnBhcmVudE5vZGUsaD1bYV0saz1bYl07aWYoIWZ8fCFnKXJldHVybiBhPT09ZT8tMTpiPT09ZT8xOmY/LTE6Zz8xOmk/SS5jYWxsKGksYSktSS5jYWxsKGksYik6MDtpZihmPT09ZylyZXR1cm4gaWIoYSxiKTtjPWE7d2hpbGUoYz1jLnBhcmVudE5vZGUpaC51bnNoaWZ0KGMpO2M9Yjt3aGlsZShjPWMucGFyZW50Tm9kZSlrLnVuc2hpZnQoYyk7d2hpbGUoaFtkXT09PWtbZF0pZCsrO3JldHVybiBkP2liKGhbZF0sa1tkXSk6aFtkXT09PXQ/LTE6a1tkXT09PXQ/MTowfSxlKTpsfSxkYi5tYXRjaGVzPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGRiKGEsbnVsbCxudWxsLGIpfSxkYi5tYXRjaGVzU2VsZWN0b3I9ZnVuY3Rpb24oYSxiKXtpZigoYS5vd25lckRvY3VtZW50fHxhKSE9PWwmJmsoYSksYj1iLnJlcGxhY2UoUywiPSckMSddIiksISghYy5tYXRjaGVzU2VsZWN0b3J8fCFufHxwJiZwLnRlc3QoYil8fG8mJm8udGVzdChiKSkpdHJ5e3ZhciBkPXEuY2FsbChhLGIpO2lmKGR8fGMuZGlzY29ubmVjdGVkTWF0Y2h8fGEuZG9jdW1lbnQmJjExIT09YS5kb2N1bWVudC5ub2RlVHlwZSlyZXR1cm4gZH1jYXRjaChlKXt9cmV0dXJuIGRiKGIsbCxudWxsLFthXSkubGVuZ3RoPjB9LGRiLmNvbnRhaW5zPWZ1bmN0aW9uKGEsYil7cmV0dXJuKGEub3duZXJEb2N1bWVudHx8YSkhPT1sJiZrKGEpLHIoYSxiKX0sZGIuYXR0cj1mdW5jdGlvbihhLGIpeyhhLm93bmVyRG9jdW1lbnR8fGEpIT09bCYmayhhKTt2YXIgZT1kLmF0dHJIYW5kbGVbYi50b0xvd2VyQ2FzZSgpXSxmPWUmJkMuY2FsbChkLmF0dHJIYW5kbGUsYi50b0xvd2VyQ2FzZSgpKT9lKGEsYiwhbik6dm9pZCAwO3JldHVybiB2b2lkIDAhPT1mP2Y6Yy5hdHRyaWJ1dGVzfHwhbj9hLmdldEF0dHJpYnV0ZShiKTooZj1hLmdldEF0dHJpYnV0ZU5vZGUoYikpJiZmLnNwZWNpZmllZD9mLnZhbHVlOm51bGx9LGRiLmVycm9yPWZ1bmN0aW9uKGEpe3Rocm93IG5ldyBFcnJvcigiU3ludGF4IGVycm9yLCB1bnJlY29nbml6ZWQgZXhwcmVzc2lvbjogIithKX0sZGIudW5pcXVlU29ydD1mdW5jdGlvbihhKXt2YXIgYixkPVtdLGU9MCxmPTA7aWYoaj0hYy5kZXRlY3REdXBsaWNhdGVzLGk9IWMuc29ydFN0YWJsZSYmYS5zbGljZSgwKSxhLnNvcnQoeiksail7d2hpbGUoYj1hW2YrK10pYj09PWFbZl0mJihlPWQucHVzaChmKSk7d2hpbGUoZS0tKWEuc3BsaWNlKGRbZV0sMSl9cmV0dXJuIGk9bnVsbCxhfSxlPWRiLmdldFRleHQ9ZnVuY3Rpb24oYSl7dmFyIGIsYz0iIixkPTAsZj1hLm5vZGVUeXBlO2lmKGYpe2lmKDE9PT1mfHw5PT09Znx8MTE9PT1mKXtpZigic3RyaW5nIj09dHlwZW9mIGEudGV4dENvbnRlbnQpcmV0dXJuIGEudGV4dENvbnRlbnQ7Zm9yKGE9YS5maXJzdENoaWxkO2E7YT1hLm5leHRTaWJsaW5nKWMrPWUoYSl9ZWxzZSBpZigzPT09Znx8ND09PWYpcmV0dXJuIGEubm9kZVZhbHVlfWVsc2Ugd2hpbGUoYj1hW2QrK10pYys9ZShiKTtyZXR1cm4gY30sZD1kYi5zZWxlY3RvcnM9e2NhY2hlTGVuZ3RoOjUwLGNyZWF0ZVBzZXVkbzpmYixtYXRjaDpWLGF0dHJIYW5kbGU6e30sZmluZDp7fSxyZWxhdGl2ZTp7Ij4iOntkaXI6InBhcmVudE5vZGUiLGZpcnN0OiEwfSwiICI6e2RpcjoicGFyZW50Tm9kZSJ9LCIrIjp7ZGlyOiJwcmV2aW91c1NpYmxpbmciLGZpcnN0OiEwfSwifiI6e2RpcjoicHJldmlvdXNTaWJsaW5nIn19LHByZUZpbHRlcjp7QVRUUjpmdW5jdGlvbihhKXtyZXR1cm4gYVsxXT1hWzFdLnJlcGxhY2UoYWIsYmIpLGFbM109KGFbNF18fGFbNV18fCIiKS5yZXBsYWNlKGFiLGJiKSwifj0iPT09YVsyXSYmKGFbM109IiAiK2FbM10rIiAiKSxhLnNsaWNlKDAsNCl9LENISUxEOmZ1bmN0aW9uKGEpe3JldHVybiBhWzFdPWFbMV0udG9Mb3dlckNhc2UoKSwibnRoIj09PWFbMV0uc2xpY2UoMCwzKT8oYVszXXx8ZGIuZXJyb3IoYVswXSksYVs0XT0rKGFbNF0/YVs1XSsoYVs2XXx8MSk6MiooImV2ZW4iPT09YVszXXx8Im9kZCI9PT1hWzNdKSksYVs1XT0rKGFbN10rYVs4XXx8Im9kZCI9PT1hWzNdKSk6YVszXSYmZGIuZXJyb3IoYVswXSksYX0sUFNFVURPOmZ1bmN0aW9uKGEpe3ZhciBiLGM9IWFbNV0mJmFbMl07cmV0dXJuIFYuQ0hJTEQudGVzdChhWzBdKT9udWxsOihhWzNdJiZ2b2lkIDAhPT1hWzRdP2FbMl09YVs0XTpjJiZULnRlc3QoYykmJihiPW9iKGMsITApKSYmKGI9Yy5pbmRleE9mKCIpIixjLmxlbmd0aC1iKS1jLmxlbmd0aCkmJihhWzBdPWFbMF0uc2xpY2UoMCxiKSxhWzJdPWMuc2xpY2UoMCxiKSksYS5zbGljZSgwLDMpKX19LGZpbHRlcjp7VEFHOmZ1bmN0aW9uKGEpe3ZhciBiPWEucmVwbGFjZShhYixiYikudG9Mb3dlckNhc2UoKTtyZXR1cm4iKiI9PT1hP2Z1bmN0aW9uKCl7cmV0dXJuITB9OmZ1bmN0aW9uKGEpe3JldHVybiBhLm5vZGVOYW1lJiZhLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT1ifX0sQ0xBU1M6ZnVuY3Rpb24oYSl7dmFyIGI9d1thKyIgIl07cmV0dXJuIGJ8fChiPW5ldyBSZWdFeHAoIihefCIrSysiKSIrYSsiKCIrSysifCQpIikpJiZ3KGEsZnVuY3Rpb24oYSl7cmV0dXJuIGIudGVzdCgic3RyaW5nIj09dHlwZW9mIGEuY2xhc3NOYW1lJiZhLmNsYXNzTmFtZXx8dHlwZW9mIGEuZ2V0QXR0cmlidXRlIT09QSYmYS5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIiKX0pfSxBVFRSOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gZnVuY3Rpb24oZCl7dmFyIGU9ZGIuYXR0cihkLGEpO3JldHVybiBudWxsPT1lPyIhPSI9PT1iOmI/KGUrPSIiLCI9Ij09PWI/ZT09PWM6IiE9Ij09PWI/ZSE9PWM6Il49Ij09PWI/YyYmMD09PWUuaW5kZXhPZihjKToiKj0iPT09Yj9jJiZlLmluZGV4T2YoYyk+LTE6IiQ9Ij09PWI/YyYmZS5zbGljZSgtYy5sZW5ndGgpPT09Yzoifj0iPT09Yj8oIiAiK2UrIiAiKS5pbmRleE9mKGMpPi0xOiJ8PSI9PT1iP2U9PT1jfHxlLnNsaWNlKDAsYy5sZW5ndGgrMSk9PT1jKyItIjohMSk6ITB9fSxDSElMRDpmdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPSJudGgiIT09YS5zbGljZSgwLDMpLGc9Imxhc3QiIT09YS5zbGljZSgtNCksaD0ib2YtdHlwZSI9PT1iO3JldHVybiAxPT09ZCYmMD09PWU/ZnVuY3Rpb24oYSl7cmV0dXJuISFhLnBhcmVudE5vZGV9OmZ1bmN0aW9uKGIsYyxpKXt2YXIgaixrLGwsbSxuLG8scD1mIT09Zz8ibmV4dFNpYmxpbmciOiJwcmV2aW91c1NpYmxpbmciLHE9Yi5wYXJlbnROb2RlLHI9aCYmYi5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLHQ9IWkmJiFoO2lmKHEpe2lmKGYpe3doaWxlKHApe2w9Yjt3aGlsZShsPWxbcF0paWYoaD9sLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT1yOjE9PT1sLm5vZGVUeXBlKXJldHVybiExO289cD0ib25seSI9PT1hJiYhbyYmIm5leHRTaWJsaW5nIn1yZXR1cm4hMH1pZihvPVtnP3EuZmlyc3RDaGlsZDpxLmxhc3RDaGlsZF0sZyYmdCl7az1xW3NdfHwocVtzXT17fSksaj1rW2FdfHxbXSxuPWpbMF09PT11JiZqWzFdLG09alswXT09PXUmJmpbMl0sbD1uJiZxLmNoaWxkTm9kZXNbbl07d2hpbGUobD0rK24mJmwmJmxbcF18fChtPW49MCl8fG8ucG9wKCkpaWYoMT09PWwubm9kZVR5cGUmJisrbSYmbD09PWIpe2tbYV09W3UsbixtXTticmVha319ZWxzZSBpZih0JiYoaj0oYltzXXx8KGJbc109e30pKVthXSkmJmpbMF09PT11KW09alsxXTtlbHNlIHdoaWxlKGw9KytuJiZsJiZsW3BdfHwobT1uPTApfHxvLnBvcCgpKWlmKChoP2wubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXI6MT09PWwubm9kZVR5cGUpJiYrK20mJih0JiYoKGxbc118fChsW3NdPXt9KSlbYV09W3UsbV0pLGw9PT1iKSlicmVhaztyZXR1cm4gbS09ZSxtPT09ZHx8bSVkPT09MCYmbS9kPj0wfX19LFBTRVVETzpmdW5jdGlvbihhLGIpe3ZhciBjLGU9ZC5wc2V1ZG9zW2FdfHxkLnNldEZpbHRlcnNbYS50b0xvd2VyQ2FzZSgpXXx8ZGIuZXJyb3IoInVuc3VwcG9ydGVkIHBzZXVkbzogIithKTtyZXR1cm4gZVtzXT9lKGIpOmUubGVuZ3RoPjE/KGM9W2EsYSwiIixiXSxkLnNldEZpbHRlcnMuaGFzT3duUHJvcGVydHkoYS50b0xvd2VyQ2FzZSgpKT9mYihmdW5jdGlvbihhLGMpe3ZhciBkLGY9ZShhLGIpLGc9Zi5sZW5ndGg7d2hpbGUoZy0tKWQ9SS5jYWxsKGEsZltnXSksYVtkXT0hKGNbZF09ZltnXSl9KTpmdW5jdGlvbihhKXtyZXR1cm4gZShhLDAsYyl9KTplfX0scHNldWRvczp7bm90OmZiKGZ1bmN0aW9uKGEpe3ZhciBiPVtdLGM9W10sZD1nKGEucmVwbGFjZShQLCIkMSIpKTtyZXR1cm4gZFtzXT9mYihmdW5jdGlvbihhLGIsYyxlKXt2YXIgZixnPWQoYSxudWxsLGUsW10pLGg9YS5sZW5ndGg7d2hpbGUoaC0tKShmPWdbaF0pJiYoYVtoXT0hKGJbaF09ZikpfSk6ZnVuY3Rpb24oYSxlLGYpe3JldHVybiBiWzBdPWEsZChiLG51bGwsZixjKSwhYy5wb3AoKX19KSxoYXM6ZmIoZnVuY3Rpb24oYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe3JldHVybiBkYihhLGIpLmxlbmd0aD4wfX0pLGNvbnRhaW5zOmZiKGZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihiKXtyZXR1cm4oYi50ZXh0Q29udGVudHx8Yi5pbm5lclRleHR8fGUoYikpLmluZGV4T2YoYSk+LTF9fSksbGFuZzpmYihmdW5jdGlvbihhKXtyZXR1cm4gVS50ZXN0KGF8fCIiKXx8ZGIuZXJyb3IoInVuc3VwcG9ydGVkIGxhbmc6ICIrYSksYT1hLnJlcGxhY2UoYWIsYmIpLnRvTG93ZXJDYXNlKCksZnVuY3Rpb24oYil7dmFyIGM7ZG8gaWYoYz1uP2IubGFuZzpiLmdldEF0dHJpYnV0ZSgieG1sOmxhbmciKXx8Yi5nZXRBdHRyaWJ1dGUoImxhbmciKSlyZXR1cm4gYz1jLnRvTG93ZXJDYXNlKCksYz09PWF8fDA9PT1jLmluZGV4T2YoYSsiLSIpO3doaWxlKChiPWIucGFyZW50Tm9kZSkmJjE9PT1iLm5vZGVUeXBlKTtyZXR1cm4hMX19KSx0YXJnZXQ6ZnVuY3Rpb24oYil7dmFyIGM9YS5sb2NhdGlvbiYmYS5sb2NhdGlvbi5oYXNoO3JldHVybiBjJiZjLnNsaWNlKDEpPT09Yi5pZH0scm9vdDpmdW5jdGlvbihhKXtyZXR1cm4gYT09PW19LGZvY3VzOmZ1bmN0aW9uKGEpe3JldHVybiBhPT09bC5hY3RpdmVFbGVtZW50JiYoIWwuaGFzRm9jdXN8fGwuaGFzRm9jdXMoKSkmJiEhKGEudHlwZXx8YS5ocmVmfHx+YS50YWJJbmRleCl9LGVuYWJsZWQ6ZnVuY3Rpb24oYSl7cmV0dXJuIGEuZGlzYWJsZWQ9PT0hMX0sZGlzYWJsZWQ6ZnVuY3Rpb24oYSl7cmV0dXJuIGEuZGlzYWJsZWQ9PT0hMH0sY2hlY2tlZDpmdW5jdGlvbihhKXt2YXIgYj1hLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PWImJiEhYS5jaGVja2VkfHwib3B0aW9uIj09PWImJiEhYS5zZWxlY3RlZH0sc2VsZWN0ZWQ6ZnVuY3Rpb24oYSl7cmV0dXJuIGEucGFyZW50Tm9kZSYmYS5wYXJlbnROb2RlLnNlbGVjdGVkSW5kZXgsYS5zZWxlY3RlZD09PSEwfSxlbXB0eTpmdW5jdGlvbihhKXtmb3IoYT1hLmZpcnN0Q2hpbGQ7YTthPWEubmV4dFNpYmxpbmcpaWYoYS5ub2RlVHlwZTw2KXJldHVybiExO3JldHVybiEwfSxwYXJlbnQ6ZnVuY3Rpb24oYSl7cmV0dXJuIWQucHNldWRvcy5lbXB0eShhKX0saGVhZGVyOmZ1bmN0aW9uKGEpe3JldHVybiBYLnRlc3QoYS5ub2RlTmFtZSl9LGlucHV0OmZ1bmN0aW9uKGEpe3JldHVybiBXLnRlc3QoYS5ub2RlTmFtZSl9LGJ1dHRvbjpmdW5jdGlvbihhKXt2YXIgYj1hLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PWImJiJidXR0b24iPT09YS50eXBlfHwiYnV0dG9uIj09PWJ9LHRleHQ6ZnVuY3Rpb24oYSl7dmFyIGI7cmV0dXJuImlucHV0Ij09PWEubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmInRleHQiPT09YS50eXBlJiYobnVsbD09KGI9YS5nZXRBdHRyaWJ1dGUoInR5cGUiKSl8fCJ0ZXh0Ij09PWIudG9Mb3dlckNhc2UoKSl9LGZpcnN0OmxiKGZ1bmN0aW9uKCl7cmV0dXJuWzBdfSksbGFzdDpsYihmdW5jdGlvbihhLGIpe3JldHVybltiLTFdfSksZXE6bGIoZnVuY3Rpb24oYSxiLGMpe3JldHVyblswPmM/YytiOmNdfSksZXZlbjpsYihmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wO2I+YztjKz0yKWEucHVzaChjKTtyZXR1cm4gYX0pLG9kZDpsYihmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0xO2I+YztjKz0yKWEucHVzaChjKTtyZXR1cm4gYX0pLGx0OmxiKGZ1bmN0aW9uKGEsYixjKXtmb3IodmFyIGQ9MD5jP2MrYjpjOy0tZD49MDspYS5wdXNoKGQpO3JldHVybiBhfSksZ3Q6bGIoZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD0wPmM/YytiOmM7KytkPGI7KWEucHVzaChkKTtyZXR1cm4gYX0pfX0sZC5wc2V1ZG9zLm50aD1kLnBzZXVkb3MuZXE7Zm9yKGIgaW57cmFkaW86ITAsY2hlY2tib3g6ITAsZmlsZTohMCxwYXNzd29yZDohMCxpbWFnZTohMH0pZC5wc2V1ZG9zW2JdPWpiKGIpO2ZvcihiIGlue3N1Ym1pdDohMCxyZXNldDohMH0pZC5wc2V1ZG9zW2JdPWtiKGIpO2Z1bmN0aW9uIG5iKCl7fW5iLnByb3RvdHlwZT1kLmZpbHRlcnM9ZC5wc2V1ZG9zLGQuc2V0RmlsdGVycz1uZXcgbmI7ZnVuY3Rpb24gb2IoYSxiKXt2YXIgYyxlLGYsZyxoLGksaixrPXhbYSsiICJdO2lmKGspcmV0dXJuIGI/MDprLnNsaWNlKDApO2g9YSxpPVtdLGo9ZC5wcmVGaWx0ZXI7d2hpbGUoaCl7KCFjfHwoZT1RLmV4ZWMoaCkpKSYmKGUmJihoPWguc2xpY2UoZVswXS5sZW5ndGgpfHxoKSxpLnB1c2goZj1bXSkpLGM9ITEsKGU9Ui5leGVjKGgpKSYmKGM9ZS5zaGlmdCgpLGYucHVzaCh7dmFsdWU6Yyx0eXBlOmVbMF0ucmVwbGFjZShQLCIgIil9KSxoPWguc2xpY2UoYy5sZW5ndGgpKTtmb3IoZyBpbiBkLmZpbHRlcikhKGU9VltnXS5leGVjKGgpKXx8altnXSYmIShlPWpbZ10oZSkpfHwoYz1lLnNoaWZ0KCksZi5wdXNoKHt2YWx1ZTpjLHR5cGU6ZyxtYXRjaGVzOmV9KSxoPWguc2xpY2UoYy5sZW5ndGgpKTtpZighYylicmVha31yZXR1cm4gYj9oLmxlbmd0aDpoP2RiLmVycm9yKGEpOngoYSxpKS5zbGljZSgwKX1mdW5jdGlvbiBwYihhKXtmb3IodmFyIGI9MCxjPWEubGVuZ3RoLGQ9IiI7Yz5iO2IrKylkKz1hW2JdLnZhbHVlO3JldHVybiBkfWZ1bmN0aW9uIHFiKGEsYixjKXt2YXIgZD1iLmRpcixlPWMmJiJwYXJlbnROb2RlIj09PWQsZj12Kys7cmV0dXJuIGIuZmlyc3Q/ZnVuY3Rpb24oYixjLGYpe3doaWxlKGI9YltkXSlpZigxPT09Yi5ub2RlVHlwZXx8ZSlyZXR1cm4gYShiLGMsZil9OmZ1bmN0aW9uKGIsYyxnKXt2YXIgaCxpLGo9W3UsZl07aWYoZyl7d2hpbGUoYj1iW2RdKWlmKCgxPT09Yi5ub2RlVHlwZXx8ZSkmJmEoYixjLGcpKXJldHVybiEwfWVsc2Ugd2hpbGUoYj1iW2RdKWlmKDE9PT1iLm5vZGVUeXBlfHxlKXtpZihpPWJbc118fChiW3NdPXt9KSwoaD1pW2RdKSYmaFswXT09PXUmJmhbMV09PT1mKXJldHVybiBqWzJdPWhbMl07aWYoaVtkXT1qLGpbMl09YShiLGMsZykpcmV0dXJuITB9fX1mdW5jdGlvbiByYihhKXtyZXR1cm4gYS5sZW5ndGg+MT9mdW5jdGlvbihiLGMsZCl7dmFyIGU9YS5sZW5ndGg7d2hpbGUoZS0tKWlmKCFhW2VdKGIsYyxkKSlyZXR1cm4hMTtyZXR1cm4hMH06YVswXX1mdW5jdGlvbiBzYihhLGIsYyxkLGUpe2Zvcih2YXIgZixnPVtdLGg9MCxpPWEubGVuZ3RoLGo9bnVsbCE9YjtpPmg7aCsrKShmPWFbaF0pJiYoIWN8fGMoZixkLGUpKSYmKGcucHVzaChmKSxqJiZiLnB1c2goaCkpO3JldHVybiBnfWZ1bmN0aW9uIHRiKGEsYixjLGQsZSxmKXtyZXR1cm4gZCYmIWRbc10mJihkPXRiKGQpKSxlJiYhZVtzXSYmKGU9dGIoZSxmKSksZmIoZnVuY3Rpb24oZixnLGgsaSl7dmFyIGosayxsLG09W10sbj1bXSxvPWcubGVuZ3RoLHA9Znx8d2IoYnx8IioiLGgubm9kZVR5cGU/W2hdOmgsW10pLHE9IWF8fCFmJiZiP3A6c2IocCxtLGEsaCxpKSxyPWM/ZXx8KGY/YTpvfHxkKT9bXTpnOnE7aWYoYyYmYyhxLHIsaCxpKSxkKXtqPXNiKHIsbiksZChqLFtdLGgsaSksaz1qLmxlbmd0aDt3aGlsZShrLS0pKGw9altrXSkmJihyW25ba11dPSEocVtuW2tdXT1sKSl9aWYoZil7aWYoZXx8YSl7aWYoZSl7aj1bXSxrPXIubGVuZ3RoO3doaWxlKGstLSkobD1yW2tdKSYmai5wdXNoKHFba109bCk7ZShudWxsLHI9W10saixpKX1rPXIubGVuZ3RoO3doaWxlKGstLSkobD1yW2tdKSYmKGo9ZT9JLmNhbGwoZixsKTptW2tdKT4tMSYmKGZbal09IShnW2pdPWwpKX19ZWxzZSByPXNiKHI9PT1nP3Iuc3BsaWNlKG8sci5sZW5ndGgpOnIpLGU/ZShudWxsLGcscixpKTpHLmFwcGx5KGcscil9KX1mdW5jdGlvbiB1YihhKXtmb3IodmFyIGIsYyxlLGY9YS5sZW5ndGgsZz1kLnJlbGF0aXZlW2FbMF0udHlwZV0saT1nfHxkLnJlbGF0aXZlWyIgIl0saj1nPzE6MCxrPXFiKGZ1bmN0aW9uKGEpe3JldHVybiBhPT09Yn0saSwhMCksbD1xYihmdW5jdGlvbihhKXtyZXR1cm4gSS5jYWxsKGIsYSk+LTF9LGksITApLG09W2Z1bmN0aW9uKGEsYyxkKXtyZXR1cm4hZyYmKGR8fGMhPT1oKXx8KChiPWMpLm5vZGVUeXBlP2soYSxjLGQpOmwoYSxjLGQpKX1dO2Y+ajtqKyspaWYoYz1kLnJlbGF0aXZlW2Fbal0udHlwZV0pbT1bcWIocmIobSksYyldO2Vsc2V7aWYoYz1kLmZpbHRlclthW2pdLnR5cGVdLmFwcGx5KG51bGwsYVtqXS5tYXRjaGVzKSxjW3NdKXtmb3IoZT0rK2o7Zj5lO2UrKylpZihkLnJlbGF0aXZlW2FbZV0udHlwZV0pYnJlYWs7cmV0dXJuIHRiKGo+MSYmcmIobSksaj4xJiZwYihhLnNsaWNlKDAsai0xKS5jb25jYXQoe3ZhbHVlOiIgIj09PWFbai0yXS50eXBlPyIqIjoiIn0pKS5yZXBsYWNlKFAsIiQxIiksYyxlPmomJnViKGEuc2xpY2UoaixlKSksZj5lJiZ1YihhPWEuc2xpY2UoZSkpLGY+ZSYmcGIoYSkpfW0ucHVzaChjKX1yZXR1cm4gcmIobSl9ZnVuY3Rpb24gdmIoYSxiKXt2YXIgYz1iLmxlbmd0aD4wLGU9YS5sZW5ndGg+MCxmPWZ1bmN0aW9uKGYsZyxpLGosayl7dmFyIG0sbixvLHA9MCxxPSIwIixyPWYmJltdLHM9W10sdD1oLHY9Znx8ZSYmZC5maW5kLlRBRygiKiIsayksdz11Kz1udWxsPT10PzE6TWF0aC5yYW5kb20oKXx8LjEseD12Lmxlbmd0aDtmb3IoayYmKGg9ZyE9PWwmJmcpO3EhPT14JiZudWxsIT0obT12W3FdKTtxKyspe2lmKGUmJm0pe249MDt3aGlsZShvPWFbbisrXSlpZihvKG0sZyxpKSl7ai5wdXNoKG0pO2JyZWFrfWsmJih1PXcpfWMmJigobT0hbyYmbSkmJnAtLSxmJiZyLnB1c2gobSkpfWlmKHArPXEsYyYmcSE9PXApe249MDt3aGlsZShvPWJbbisrXSlvKHIscyxnLGkpO2lmKGYpe2lmKHA+MCl3aGlsZShxLS0pcltxXXx8c1txXXx8KHNbcV09RS5jYWxsKGopKTtzPXNiKHMpfUcuYXBwbHkoaixzKSxrJiYhZiYmcy5sZW5ndGg+MCYmcCtiLmxlbmd0aD4xJiZkYi51bmlxdWVTb3J0KGopfXJldHVybiBrJiYodT13LGg9dCkscn07cmV0dXJuIGM/ZmIoZik6Zn1nPWRiLmNvbXBpbGU9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkPVtdLGU9W10sZj15W2ErIiAiXTtpZighZil7Ynx8KGI9b2IoYSkpLGM9Yi5sZW5ndGg7d2hpbGUoYy0tKWY9dWIoYltjXSksZltzXT9kLnB1c2goZik6ZS5wdXNoKGYpO2Y9eShhLHZiKGUsZCkpfXJldHVybiBmfTtmdW5jdGlvbiB3YihhLGIsYyl7Zm9yKHZhciBkPTAsZT1iLmxlbmd0aDtlPmQ7ZCsrKWRiKGEsYltkXSxjKTtyZXR1cm4gY31mdW5jdGlvbiB4YihhLGIsZSxmKXt2YXIgaCxpLGosayxsLG09b2IoYSk7aWYoIWYmJjE9PT1tLmxlbmd0aCl7aWYoaT1tWzBdPW1bMF0uc2xpY2UoMCksaS5sZW5ndGg+MiYmIklEIj09PShqPWlbMF0pLnR5cGUmJmMuZ2V0QnlJZCYmOT09PWIubm9kZVR5cGUmJm4mJmQucmVsYXRpdmVbaVsxXS50eXBlXSl7aWYoYj0oZC5maW5kLklEKGoubWF0Y2hlc1swXS5yZXBsYWNlKGFiLGJiKSxiKXx8W10pWzBdLCFiKXJldHVybiBlO2E9YS5zbGljZShpLnNoaWZ0KCkudmFsdWUubGVuZ3RoKX1oPVYubmVlZHNDb250ZXh0LnRlc3QoYSk/MDppLmxlbmd0aDt3aGlsZShoLS0pe2lmKGo9aVtoXSxkLnJlbGF0aXZlW2s9ai50eXBlXSlicmVhaztpZigobD1kLmZpbmRba10pJiYoZj1sKGoubWF0Y2hlc1swXS5yZXBsYWNlKGFiLGJiKSwkLnRlc3QoaVswXS50eXBlKSYmbWIoYi5wYXJlbnROb2RlKXx8YikpKXtpZihpLnNwbGljZShoLDEpLGE9Zi5sZW5ndGgmJnBiKGkpLCFhKXJldHVybiBHLmFwcGx5KGUsZiksZTticmVha319fXJldHVybiBnKGEsbSkoZixiLCFuLGUsJC50ZXN0KGEpJiZtYihiLnBhcmVudE5vZGUpfHxiKSxlfXJldHVybiBjLnNvcnRTdGFibGU9cy5zcGxpdCgiIikuc29ydCh6KS5qb2luKCIiKT09PXMsYy5kZXRlY3REdXBsaWNhdGVzPSEhaixrKCksYy5zb3J0RGV0YWNoZWQ9Z2IoZnVuY3Rpb24oYSl7cmV0dXJuIDEmYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihsLmNyZWF0ZUVsZW1lbnQoImRpdiIpKX0pLGdiKGZ1bmN0aW9uKGEpe3JldHVybiBhLmlubmVySFRNTD0iPGEgaHJlZj0nIyc+PC9hPiIsIiMiPT09YS5maXJzdENoaWxkLmdldEF0dHJpYnV0ZSgiaHJlZiIpfSl8fGhiKCJ0eXBlfGhyZWZ8aGVpZ2h0fHdpZHRoIixmdW5jdGlvbihhLGIsYyl7cmV0dXJuIGM/dm9pZCAwOmEuZ2V0QXR0cmlidXRlKGIsInR5cGUiPT09Yi50b0xvd2VyQ2FzZSgpPzE6Mil9KSxjLmF0dHJpYnV0ZXMmJmdiKGZ1bmN0aW9uKGEpe3JldHVybiBhLmlubmVySFRNTD0iPGlucHV0Lz4iLGEuZmlyc3RDaGlsZC5zZXRBdHRyaWJ1dGUoInZhbHVlIiwiIiksIiI9PT1hLmZpcnN0Q2hpbGQuZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpfSl8fGhiKCJ2YWx1ZSIsZnVuY3Rpb24oYSxiLGMpe3JldHVybiBjfHwiaW5wdXQiIT09YS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpP3ZvaWQgMDphLmRlZmF1bHRWYWx1ZX0pLGdiKGZ1bmN0aW9uKGEpe3JldHVybiBudWxsPT1hLmdldEF0dHJpYnV0ZSgiZGlzYWJsZWQiKX0pfHxoYihKLGZ1bmN0aW9uKGEsYixjKXt2YXIgZDtyZXR1cm4gYz92b2lkIDA6YVtiXT09PSEwP2IudG9Mb3dlckNhc2UoKTooZD1hLmdldEF0dHJpYnV0ZU5vZGUoYikpJiZkLnNwZWNpZmllZD9kLnZhbHVlOm51bGx9KSxkYn0oYSk7bi5maW5kPXQsbi5leHByPXQuc2VsZWN0b3JzLG4uZXhwclsiOiJdPW4uZXhwci5wc2V1ZG9zLG4udW5pcXVlPXQudW5pcXVlU29ydCxuLnRleHQ9dC5nZXRUZXh0LG4uaXNYTUxEb2M9dC5pc1hNTCxuLmNvbnRhaW5zPXQuY29udGFpbnM7dmFyIHU9bi5leHByLm1hdGNoLm5lZWRzQ29udGV4dCx2PS9ePChcdyspXHMqXC8/Pig/OjxcL1wxPnwpJC8sdz0vXi5bXjojXFtcLixdKiQvO2Z1bmN0aW9uIHgoYSxiLGMpe2lmKG4uaXNGdW5jdGlvbihiKSlyZXR1cm4gbi5ncmVwKGEsZnVuY3Rpb24oYSxkKXtyZXR1cm4hIWIuY2FsbChhLGQsYSkhPT1jfSk7aWYoYi5ub2RlVHlwZSlyZXR1cm4gbi5ncmVwKGEsZnVuY3Rpb24oYSl7cmV0dXJuIGE9PT1iIT09Y30pO2lmKCJzdHJpbmciPT10eXBlb2YgYil7aWYody50ZXN0KGIpKXJldHVybiBuLmZpbHRlcihiLGEsYyk7Yj1uLmZpbHRlcihiLGEpfXJldHVybiBuLmdyZXAoYSxmdW5jdGlvbihhKXtyZXR1cm4gbi5pbkFycmF5KGEsYik+PTAhPT1jfSl9bi5maWx0ZXI9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWJbMF07cmV0dXJuIGMmJihhPSI6bm90KCIrYSsiKSIpLDE9PT1iLmxlbmd0aCYmMT09PWQubm9kZVR5cGU/bi5maW5kLm1hdGNoZXNTZWxlY3RvcihkLGEpP1tkXTpbXTpuLmZpbmQubWF0Y2hlcyhhLG4uZ3JlcChiLGZ1bmN0aW9uKGEpe3JldHVybiAxPT09YS5ub2RlVHlwZX0pKX0sbi5mbi5leHRlbmQoe2ZpbmQ6ZnVuY3Rpb24oYSl7dmFyIGIsYz1bXSxkPXRoaXMsZT1kLmxlbmd0aDtpZigic3RyaW5nIiE9dHlwZW9mIGEpcmV0dXJuIHRoaXMucHVzaFN0YWNrKG4oYSkuZmlsdGVyKGZ1bmN0aW9uKCl7Zm9yKGI9MDtlPmI7YisrKWlmKG4uY29udGFpbnMoZFtiXSx0aGlzKSlyZXR1cm4hMH0pKTtmb3IoYj0wO2U+YjtiKyspbi5maW5kKGEsZFtiXSxjKTtyZXR1cm4gYz10aGlzLnB1c2hTdGFjayhlPjE/bi51bmlxdWUoYyk6YyksYy5zZWxlY3Rvcj10aGlzLnNlbGVjdG9yP3RoaXMuc2VsZWN0b3IrIiAiK2E6YSxjfSxmaWx0ZXI6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKHgodGhpcyxhfHxbXSwhMSkpfSxub3Q6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKHgodGhpcyxhfHxbXSwhMCkpfSxpczpmdW5jdGlvbihhKXtyZXR1cm4hIXgodGhpcywic3RyaW5nIj09dHlwZW9mIGEmJnUudGVzdChhKT9uKGEpOmF8fFtdLCExKS5sZW5ndGh9fSk7dmFyIHksej1hLmRvY3VtZW50LEE9L14oPzpccyooPFtcd1xXXSs+KVtePl0qfCMoW1x3LV0qKSkkLyxCPW4uZm4uaW5pdD1mdW5jdGlvbihhLGIpe3ZhciBjLGQ7aWYoIWEpcmV0dXJuIHRoaXM7aWYoInN0cmluZyI9PXR5cGVvZiBhKXtpZihjPSI8Ij09PWEuY2hhckF0KDApJiYiPiI9PT1hLmNoYXJBdChhLmxlbmd0aC0xKSYmYS5sZW5ndGg+PTM/W251bGwsYSxudWxsXTpBLmV4ZWMoYSksIWN8fCFjWzFdJiZiKXJldHVybiFifHxiLmpxdWVyeT8oYnx8eSkuZmluZChhKTp0aGlzLmNvbnN0cnVjdG9yKGIpLmZpbmQoYSk7aWYoY1sxXSl7aWYoYj1iIGluc3RhbmNlb2Ygbj9iWzBdOmIsbi5tZXJnZSh0aGlzLG4ucGFyc2VIVE1MKGNbMV0sYiYmYi5ub2RlVHlwZT9iLm93bmVyRG9jdW1lbnR8fGI6eiwhMCkpLHYudGVzdChjWzFdKSYmbi5pc1BsYWluT2JqZWN0KGIpKWZvcihjIGluIGIpbi5pc0Z1bmN0aW9uKHRoaXNbY10pP3RoaXNbY10oYltjXSk6dGhpcy5hdHRyKGMsYltjXSk7cmV0dXJuIHRoaXN9aWYoZD16LmdldEVsZW1lbnRCeUlkKGNbMl0pLGQmJmQucGFyZW50Tm9kZSl7aWYoZC5pZCE9PWNbMl0pcmV0dXJuIHkuZmluZChhKTt0aGlzLmxlbmd0aD0xLHRoaXNbMF09ZH1yZXR1cm4gdGhpcy5jb250ZXh0PXosdGhpcy5zZWxlY3Rvcj1hLHRoaXN9cmV0dXJuIGEubm9kZVR5cGU/KHRoaXMuY29udGV4dD10aGlzWzBdPWEsdGhpcy5sZW5ndGg9MSx0aGlzKTpuLmlzRnVuY3Rpb24oYSk/InVuZGVmaW5lZCIhPXR5cGVvZiB5LnJlYWR5P3kucmVhZHkoYSk6YShuKToodm9pZCAwIT09YS5zZWxlY3RvciYmKHRoaXMuc2VsZWN0b3I9YS5zZWxlY3Rvcix0aGlzLmNvbnRleHQ9YS5jb250ZXh0KSxuLm1ha2VBcnJheShhLHRoaXMpKX07Qi5wcm90b3R5cGU9bi5mbix5PW4oeik7dmFyIEM9L14oPzpwYXJlbnRzfHByZXYoPzpVbnRpbHxBbGwpKS8sRD17Y2hpbGRyZW46ITAsY29udGVudHM6ITAsbmV4dDohMCxwcmV2OiEwfTtuLmV4dGVuZCh7ZGlyOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD1bXSxlPWFbYl07d2hpbGUoZSYmOSE9PWUubm9kZVR5cGUmJih2b2lkIDA9PT1jfHwxIT09ZS5ub2RlVHlwZXx8IW4oZSkuaXMoYykpKTE9PT1lLm5vZGVUeXBlJiZkLnB1c2goZSksZT1lW2JdO3JldHVybiBkfSxzaWJsaW5nOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPVtdO2E7YT1hLm5leHRTaWJsaW5nKTE9PT1hLm5vZGVUeXBlJiZhIT09YiYmYy5wdXNoKGEpO3JldHVybiBjfX0pLG4uZm4uZXh0ZW5kKHtoYXM6ZnVuY3Rpb24oYSl7dmFyIGIsYz1uKGEsdGhpcyksZD1jLmxlbmd0aDtyZXR1cm4gdGhpcy5maWx0ZXIoZnVuY3Rpb24oKXtmb3IoYj0wO2Q+YjtiKyspaWYobi5jb250YWlucyh0aGlzLGNbYl0pKXJldHVybiEwfSl9LGNsb3Nlc3Q6ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGMsZD0wLGU9dGhpcy5sZW5ndGgsZj1bXSxnPXUudGVzdChhKXx8InN0cmluZyIhPXR5cGVvZiBhP24oYSxifHx0aGlzLmNvbnRleHQpOjA7ZT5kO2QrKylmb3IoYz10aGlzW2RdO2MmJmMhPT1iO2M9Yy5wYXJlbnROb2RlKWlmKGMubm9kZVR5cGU8MTEmJihnP2cuaW5kZXgoYyk+LTE6MT09PWMubm9kZVR5cGUmJm4uZmluZC5tYXRjaGVzU2VsZWN0b3IoYyxhKSkpe2YucHVzaChjKTticmVha31yZXR1cm4gdGhpcy5wdXNoU3RhY2soZi5sZW5ndGg+MT9uLnVuaXF1ZShmKTpmKX0saW5kZXg6ZnVuY3Rpb24oYSl7cmV0dXJuIGE/InN0cmluZyI9PXR5cGVvZiBhP24uaW5BcnJheSh0aGlzWzBdLG4oYSkpOm4uaW5BcnJheShhLmpxdWVyeT9hWzBdOmEsdGhpcyk6dGhpc1swXSYmdGhpc1swXS5wYXJlbnROb2RlP3RoaXMuZmlyc3QoKS5wcmV2QWxsKCkubGVuZ3RoOi0xfSxhZGQ6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2sobi51bmlxdWUobi5tZXJnZSh0aGlzLmdldCgpLG4oYSxiKSkpKX0sYWRkQmFjazpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5hZGQobnVsbD09YT90aGlzLnByZXZPYmplY3Q6dGhpcy5wcmV2T2JqZWN0LmZpbHRlcihhKSl9fSk7ZnVuY3Rpb24gRShhLGIpe2RvIGE9YVtiXTt3aGlsZShhJiYxIT09YS5ub2RlVHlwZSk7cmV0dXJuIGF9bi5lYWNoKHtwYXJlbnQ6ZnVuY3Rpb24oYSl7dmFyIGI9YS5wYXJlbnROb2RlO3JldHVybiBiJiYxMSE9PWIubm9kZVR5cGU/YjpudWxsfSxwYXJlbnRzOmZ1bmN0aW9uKGEpe3JldHVybiBuLmRpcihhLCJwYXJlbnROb2RlIil9LHBhcmVudHNVbnRpbDpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIG4uZGlyKGEsInBhcmVudE5vZGUiLGMpfSxuZXh0OmZ1bmN0aW9uKGEpe3JldHVybiBFKGEsIm5leHRTaWJsaW5nIil9LHByZXY6ZnVuY3Rpb24oYSl7cmV0dXJuIEUoYSwicHJldmlvdXNTaWJsaW5nIil9LG5leHRBbGw6ZnVuY3Rpb24oYSl7cmV0dXJuIG4uZGlyKGEsIm5leHRTaWJsaW5nIil9LHByZXZBbGw6ZnVuY3Rpb24oYSl7cmV0dXJuIG4uZGlyKGEsInByZXZpb3VzU2libGluZyIpfSxuZXh0VW50aWw6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBuLmRpcihhLCJuZXh0U2libGluZyIsYyl9LHByZXZVbnRpbDpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIG4uZGlyKGEsInByZXZpb3VzU2libGluZyIsYyl9LHNpYmxpbmdzOmZ1bmN0aW9uKGEpe3JldHVybiBuLnNpYmxpbmcoKGEucGFyZW50Tm9kZXx8e30pLmZpcnN0Q2hpbGQsYSl9LGNoaWxkcmVuOmZ1bmN0aW9uKGEpe3JldHVybiBuLnNpYmxpbmcoYS5maXJzdENoaWxkKX0sY29udGVudHM6ZnVuY3Rpb24oYSl7cmV0dXJuIG4ubm9kZU5hbWUoYSwiaWZyYW1lIik/YS5jb250ZW50RG9jdW1lbnR8fGEuY29udGVudFdpbmRvdy5kb2N1bWVudDpuLm1lcmdlKFtdLGEuY2hpbGROb2Rlcyl9fSxmdW5jdGlvbihhLGIpe24uZm5bYV09ZnVuY3Rpb24oYyxkKXt2YXIgZT1uLm1hcCh0aGlzLGIsYyk7cmV0dXJuIlVudGlsIiE9PWEuc2xpY2UoLTUpJiYoZD1jKSxkJiYic3RyaW5nIj09dHlwZW9mIGQmJihlPW4uZmlsdGVyKGQsZSkpLHRoaXMubGVuZ3RoPjEmJihEW2FdfHwoZT1uLnVuaXF1ZShlKSksQy50ZXN0KGEpJiYoZT1lLnJldmVyc2UoKSkpLHRoaXMucHVzaFN0YWNrKGUpfX0pO3ZhciBGPS9cUysvZyxHPXt9O2Z1bmN0aW9uIEgoYSl7dmFyIGI9R1thXT17fTtyZXR1cm4gbi5lYWNoKGEubWF0Y2goRil8fFtdLGZ1bmN0aW9uKGEsYyl7YltjXT0hMH0pLGJ9bi5DYWxsYmFja3M9ZnVuY3Rpb24oYSl7YT0ic3RyaW5nIj09dHlwZW9mIGE/R1thXXx8SChhKTpuLmV4dGVuZCh7fSxhKTt2YXIgYixjLGQsZSxmLGcsaD1bXSxpPSFhLm9uY2UmJltdLGo9ZnVuY3Rpb24obCl7Zm9yKGM9YS5tZW1vcnkmJmwsZD0hMCxmPWd8fDAsZz0wLGU9aC5sZW5ndGgsYj0hMDtoJiZlPmY7ZisrKWlmKGhbZl0uYXBwbHkobFswXSxsWzFdKT09PSExJiZhLnN0b3BPbkZhbHNlKXtjPSExO2JyZWFrfWI9ITEsaCYmKGk/aS5sZW5ndGgmJmooaS5zaGlmdCgpKTpjP2g9W106ay5kaXNhYmxlKCkpfSxrPXthZGQ6ZnVuY3Rpb24oKXtpZihoKXt2YXIgZD1oLmxlbmd0aDshZnVuY3Rpb24gZihiKXtuLmVhY2goYixmdW5jdGlvbihiLGMpe3ZhciBkPW4udHlwZShjKTsiZnVuY3Rpb24iPT09ZD9hLnVuaXF1ZSYmay5oYXMoYyl8fGgucHVzaChjKTpjJiZjLmxlbmd0aCYmInN0cmluZyIhPT1kJiZmKGMpfSl9KGFyZ3VtZW50cyksYj9lPWgubGVuZ3RoOmMmJihnPWQsaihjKSl9cmV0dXJuIHRoaXN9LHJlbW92ZTpmdW5jdGlvbigpe3JldHVybiBoJiZuLmVhY2goYXJndW1lbnRzLGZ1bmN0aW9uKGEsYyl7dmFyIGQ7d2hpbGUoKGQ9bi5pbkFycmF5KGMsaCxkKSk+LTEpaC5zcGxpY2UoZCwxKSxiJiYoZT49ZCYmZS0tLGY+PWQmJmYtLSl9KSx0aGlzfSxoYXM6ZnVuY3Rpb24oYSl7cmV0dXJuIGE/bi5pbkFycmF5KGEsaCk+LTE6ISghaHx8IWgubGVuZ3RoKX0sZW1wdHk6ZnVuY3Rpb24oKXtyZXR1cm4gaD1bXSxlPTAsdGhpc30sZGlzYWJsZTpmdW5jdGlvbigpe3JldHVybiBoPWk9Yz12b2lkIDAsdGhpc30sZGlzYWJsZWQ6ZnVuY3Rpb24oKXtyZXR1cm4haH0sbG9jazpmdW5jdGlvbigpe3JldHVybiBpPXZvaWQgMCxjfHxrLmRpc2FibGUoKSx0aGlzfSxsb2NrZWQ6ZnVuY3Rpb24oKXtyZXR1cm4haX0sZmlyZVdpdGg6ZnVuY3Rpb24oYSxjKXtyZXR1cm4haHx8ZCYmIWl8fChjPWN8fFtdLGM9W2EsYy5zbGljZT9jLnNsaWNlKCk6Y10sYj9pLnB1c2goYyk6aihjKSksdGhpc30sZmlyZTpmdW5jdGlvbigpe3JldHVybiBrLmZpcmVXaXRoKHRoaXMsYXJndW1lbnRzKSx0aGlzfSxmaXJlZDpmdW5jdGlvbigpe3JldHVybiEhZH19O3JldHVybiBrfSxuLmV4dGVuZCh7RGVmZXJyZWQ6ZnVuY3Rpb24oYSl7dmFyIGI9W1sicmVzb2x2ZSIsImRvbmUiLG4uQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLCJyZXNvbHZlZCJdLFsicmVqZWN0IiwiZmFpbCIsbi5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksInJlamVjdGVkIl0sWyJub3RpZnkiLCJwcm9ncmVzcyIsbi5DYWxsYmFja3MoIm1lbW9yeSIpXV0sYz0icGVuZGluZyIsZD17c3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gY30sYWx3YXlzOmZ1bmN0aW9uKCl7cmV0dXJuIGUuZG9uZShhcmd1bWVudHMpLmZhaWwoYXJndW1lbnRzKSx0aGlzfSx0aGVuOmZ1bmN0aW9uKCl7dmFyIGE9YXJndW1lbnRzO3JldHVybiBuLkRlZmVycmVkKGZ1bmN0aW9uKGMpe24uZWFjaChiLGZ1bmN0aW9uKGIsZil7dmFyIGc9bi5pc0Z1bmN0aW9uKGFbYl0pJiZhW2JdO2VbZlsxXV0oZnVuY3Rpb24oKXt2YXIgYT1nJiZnLmFwcGx5KHRoaXMsYXJndW1lbnRzKTthJiZuLmlzRnVuY3Rpb24oYS5wcm9taXNlKT9hLnByb21pc2UoKS5kb25lKGMucmVzb2x2ZSkuZmFpbChjLnJlamVjdCkucHJvZ3Jlc3MoYy5ub3RpZnkpOmNbZlswXSsiV2l0aCJdKHRoaXM9PT1kP2MucHJvbWlzZSgpOnRoaXMsZz9bYV06YXJndW1lbnRzKX0pfSksYT1udWxsfSkucHJvbWlzZSgpfSxwcm9taXNlOmZ1bmN0aW9uKGEpe3JldHVybiBudWxsIT1hP24uZXh0ZW5kKGEsZCk6ZH19LGU9e307cmV0dXJuIGQucGlwZT1kLnRoZW4sbi5lYWNoKGIsZnVuY3Rpb24oYSxmKXt2YXIgZz1mWzJdLGg9ZlszXTtkW2ZbMV1dPWcuYWRkLGgmJmcuYWRkKGZ1bmN0aW9uKCl7Yz1ofSxiWzFeYV1bMl0uZGlzYWJsZSxiWzJdWzJdLmxvY2spLGVbZlswXV09ZnVuY3Rpb24oKXtyZXR1cm4gZVtmWzBdKyJXaXRoIl0odGhpcz09PWU/ZDp0aGlzLGFyZ3VtZW50cyksdGhpc30sZVtmWzBdKyJXaXRoIl09Zy5maXJlV2l0aH0pLGQucHJvbWlzZShlKSxhJiZhLmNhbGwoZSxlKSxlfSx3aGVuOmZ1bmN0aW9uKGEpe3ZhciBiPTAsYz1kLmNhbGwoYXJndW1lbnRzKSxlPWMubGVuZ3RoLGY9MSE9PWV8fGEmJm4uaXNGdW5jdGlvbihhLnByb21pc2UpP2U6MCxnPTE9PT1mP2E6bi5EZWZlcnJlZCgpLGg9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBmdW5jdGlvbihlKXtiW2FdPXRoaXMsY1thXT1hcmd1bWVudHMubGVuZ3RoPjE/ZC5jYWxsKGFyZ3VtZW50cyk6ZSxjPT09aT9nLm5vdGlmeVdpdGgoYixjKTotLWZ8fGcucmVzb2x2ZVdpdGgoYixjKX19LGksaixrO2lmKGU+MSlmb3IoaT1uZXcgQXJyYXkoZSksaj1uZXcgQXJyYXkoZSksaz1uZXcgQXJyYXkoZSk7ZT5iO2IrKyljW2JdJiZuLmlzRnVuY3Rpb24oY1tiXS5wcm9taXNlKT9jW2JdLnByb21pc2UoKS5kb25lKGgoYixrLGMpKS5mYWlsKGcucmVqZWN0KS5wcm9ncmVzcyhoKGIsaixpKSk6LS1mO3JldHVybiBmfHxnLnJlc29sdmVXaXRoKGssYyksZy5wcm9taXNlKCl9fSk7dmFyIEk7bi5mbi5yZWFkeT1mdW5jdGlvbihhKXtyZXR1cm4gbi5yZWFkeS5wcm9taXNlKCkuZG9uZShhKSx0aGlzfSxuLmV4dGVuZCh7aXNSZWFkeTohMSxyZWFkeVdhaXQ6MSxob2xkUmVhZHk6ZnVuY3Rpb24oYSl7YT9uLnJlYWR5V2FpdCsrOm4ucmVhZHkoITApfSxyZWFkeTpmdW5jdGlvbihhKXtpZihhPT09ITA/IS0tbi5yZWFkeVdhaXQ6IW4uaXNSZWFkeSl7aWYoIXouYm9keSlyZXR1cm4gc2V0VGltZW91dChuLnJlYWR5KTtuLmlzUmVhZHk9ITAsYSE9PSEwJiYtLW4ucmVhZHlXYWl0PjB8fChJLnJlc29sdmVXaXRoKHosW25dKSxuLmZuLnRyaWdnZXImJm4oeikudHJpZ2dlcigicmVhZHkiKS5vZmYoInJlYWR5IikpfX19KTtmdW5jdGlvbiBKKCl7ei5hZGRFdmVudExpc3RlbmVyPyh6LnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLEssITEpLGEucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsSywhMSkpOih6LmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLEspLGEuZGV0YWNoRXZlbnQoIm9ubG9hZCIsSykpfWZ1bmN0aW9uIEsoKXsoei5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1ldmVudC50eXBlfHwiY29tcGxldGUiPT09ei5yZWFkeVN0YXRlKSYmKEooKSxuLnJlYWR5KCkpfW4ucmVhZHkucHJvbWlzZT1mdW5jdGlvbihiKXtpZighSSlpZihJPW4uRGVmZXJyZWQoKSwiY29tcGxldGUiPT09ei5yZWFkeVN0YXRlKXNldFRpbWVvdXQobi5yZWFkeSk7ZWxzZSBpZih6LmFkZEV2ZW50TGlzdGVuZXIpei5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixLLCExKSxhLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLEssITEpO2Vsc2V7ei5hdHRhY2hFdmVudCgib25yZWFkeXN0YXRlY2hhbmdlIixLKSxhLmF0dGFjaEV2ZW50KCJvbmxvYWQiLEspO3ZhciBjPSExO3RyeXtjPW51bGw9PWEuZnJhbWVFbGVtZW50JiZ6LmRvY3VtZW50RWxlbWVudH1jYXRjaChkKXt9YyYmYy5kb1Njcm9sbCYmIWZ1bmN0aW9uIGUoKXtpZighbi5pc1JlYWR5KXt0cnl7Yy5kb1Njcm9sbCgibGVmdCIpfWNhdGNoKGEpe3JldHVybiBzZXRUaW1lb3V0KGUsNTApfUooKSxuLnJlYWR5KCl9fSgpfXJldHVybiBJLnByb21pc2UoYil9O3ZhciBMPSJ1bmRlZmluZWQiLE07Zm9yKE0gaW4gbihsKSlicmVhaztsLm93bkxhc3Q9IjAiIT09TSxsLmlubGluZUJsb2NrTmVlZHNMYXlvdXQ9ITEsbihmdW5jdGlvbigpe3ZhciBhLGIsYz16LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJib2R5IilbMF07YyYmKGE9ei5jcmVhdGVFbGVtZW50KCJkaXYiKSxhLnN0eWxlLmNzc1RleHQ9ImJvcmRlcjowO3dpZHRoOjA7aGVpZ2h0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDotOTk5OXB4O21hcmdpbi10b3A6MXB4IixiPXouY3JlYXRlRWxlbWVudCgiZGl2IiksYy5hcHBlbmRDaGlsZChhKS5hcHBlbmRDaGlsZChiKSx0eXBlb2YgYi5zdHlsZS56b29tIT09TCYmKGIuc3R5bGUuY3NzVGV4dD0iYm9yZGVyOjA7bWFyZ2luOjA7d2lkdGg6MXB4O3BhZGRpbmc6MXB4O2Rpc3BsYXk6aW5saW5lO3pvb206MSIsKGwuaW5saW5lQmxvY2tOZWVkc0xheW91dD0zPT09Yi5vZmZzZXRXaWR0aCkmJihjLnN0eWxlLnpvb209MSkpLGMucmVtb3ZlQ2hpbGQoYSksYT1iPW51bGwpfSksZnVuY3Rpb24oKXt2YXIgYT16LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2lmKG51bGw9PWwuZGVsZXRlRXhwYW5kbyl7bC5kZWxldGVFeHBhbmRvPSEwO3RyeXtkZWxldGUgYS50ZXN0fWNhdGNoKGIpe2wuZGVsZXRlRXhwYW5kbz0hMX19YT1udWxsfSgpLG4uYWNjZXB0RGF0YT1mdW5jdGlvbihhKXt2YXIgYj1uLm5vRGF0YVsoYS5ub2RlTmFtZSsiICIpLnRvTG93ZXJDYXNlKCldLGM9K2Eubm9kZVR5cGV8fDE7cmV0dXJuIDEhPT1jJiY5IT09Yz8hMTohYnx8YiE9PSEwJiZhLmdldEF0dHJpYnV0ZSgiY2xhc3NpZCIpPT09Yn07dmFyIE49L14oPzpce1tcd1xXXSpcfXxcW1tcd1xXXSpcXSkkLyxPPS8oW0EtWl0pL2c7ZnVuY3Rpb24gUChhLGIsYyl7aWYodm9pZCAwPT09YyYmMT09PWEubm9kZVR5cGUpe3ZhciBkPSJkYXRhLSIrYi5yZXBsYWNlKE8sIi0kMSIpLnRvTG93ZXJDYXNlKCk7aWYoYz1hLmdldEF0dHJpYnV0ZShkKSwic3RyaW5nIj09dHlwZW9mIGMpe3RyeXtjPSJ0cnVlIj09PWM/ITA6ImZhbHNlIj09PWM/ITE6Im51bGwiPT09Yz9udWxsOitjKyIiPT09Yz8rYzpOLnRlc3QoYyk/bi5wYXJzZUpTT04oYyk6Y31jYXRjaChlKXt9bi5kYXRhKGEsYixjKX1lbHNlIGM9dm9pZCAwfXJldHVybiBjfWZ1bmN0aW9uIFEoYSl7dmFyIGI7Zm9yKGIgaW4gYSlpZigoImRhdGEiIT09Ynx8IW4uaXNFbXB0eU9iamVjdChhW2JdKSkmJiJ0b0pTT04iIT09YilyZXR1cm4hMTtyZXR1cm4hMH1mdW5jdGlvbiBSKGEsYixkLGUpe2lmKG4uYWNjZXB0RGF0YShhKSl7dmFyIGYsZyxoPW4uZXhwYW5kbyxpPWEubm9kZVR5cGUsaj1pP24uY2FjaGU6YSxrPWk/YVtoXTphW2hdJiZoO2lmKGsmJmpba10mJihlfHxqW2tdLmRhdGEpfHx2b2lkIDAhPT1kfHwic3RyaW5nIiE9dHlwZW9mIGIpcmV0dXJuIGt8fChrPWk/YVtoXT1jLnBvcCgpfHxuLmd1aWQrKzpoKSxqW2tdfHwoaltrXT1pP3t9Ont0b0pTT046bi5ub29wfSksKCJvYmplY3QiPT10eXBlb2YgYnx8ImZ1bmN0aW9uIj09dHlwZW9mIGIpJiYoZT9qW2tdPW4uZXh0ZW5kKGpba10sYik6altrXS5kYXRhPW4uZXh0ZW5kKGpba10uZGF0YSxiKSksZz1qW2tdLGV8fChnLmRhdGF8fChnLmRhdGE9e30pLGc9Zy5kYXRhKSx2b2lkIDAhPT1kJiYoZ1tuLmNhbWVsQ2FzZShiKV09ZCksInN0cmluZyI9PXR5cGVvZiBiPyhmPWdbYl0sbnVsbD09ZiYmKGY9Z1tuLmNhbWVsQ2FzZShiKV0pKTpmPWcsZgp9fWZ1bmN0aW9uIFMoYSxiLGMpe2lmKG4uYWNjZXB0RGF0YShhKSl7dmFyIGQsZSxmPWEubm9kZVR5cGUsZz1mP24uY2FjaGU6YSxoPWY/YVtuLmV4cGFuZG9dOm4uZXhwYW5kbztpZihnW2hdKXtpZihiJiYoZD1jP2dbaF06Z1toXS5kYXRhKSl7bi5pc0FycmF5KGIpP2I9Yi5jb25jYXQobi5tYXAoYixuLmNhbWVsQ2FzZSkpOmIgaW4gZD9iPVtiXTooYj1uLmNhbWVsQ2FzZShiKSxiPWIgaW4gZD9bYl06Yi5zcGxpdCgiICIpKSxlPWIubGVuZ3RoO3doaWxlKGUtLSlkZWxldGUgZFtiW2VdXTtpZihjPyFRKGQpOiFuLmlzRW1wdHlPYmplY3QoZCkpcmV0dXJufShjfHwoZGVsZXRlIGdbaF0uZGF0YSxRKGdbaF0pKSkmJihmP24uY2xlYW5EYXRhKFthXSwhMCk6bC5kZWxldGVFeHBhbmRvfHxnIT1nLndpbmRvdz9kZWxldGUgZ1toXTpnW2hdPW51bGwpfX19bi5leHRlbmQoe2NhY2hlOnt9LG5vRGF0YTp7ImFwcGxldCAiOiEwLCJlbWJlZCAiOiEwLCJvYmplY3QgIjoiY2xzaWQ6RDI3Q0RCNkUtQUU2RC0xMWNmLTk2QjgtNDQ0NTUzNTQwMDAwIn0saGFzRGF0YTpmdW5jdGlvbihhKXtyZXR1cm4gYT1hLm5vZGVUeXBlP24uY2FjaGVbYVtuLmV4cGFuZG9dXTphW24uZXhwYW5kb10sISFhJiYhUShhKX0sZGF0YTpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIFIoYSxiLGMpfSxyZW1vdmVEYXRhOmZ1bmN0aW9uKGEsYil7cmV0dXJuIFMoYSxiKX0sX2RhdGE6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBSKGEsYixjLCEwKX0sX3JlbW92ZURhdGE6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gUyhhLGIsITApfX0pLG4uZm4uZXh0ZW5kKHtkYXRhOmZ1bmN0aW9uKGEsYil7dmFyIGMsZCxlLGY9dGhpc1swXSxnPWYmJmYuYXR0cmlidXRlcztpZih2b2lkIDA9PT1hKXtpZih0aGlzLmxlbmd0aCYmKGU9bi5kYXRhKGYpLDE9PT1mLm5vZGVUeXBlJiYhbi5fZGF0YShmLCJwYXJzZWRBdHRycyIpKSl7Yz1nLmxlbmd0aDt3aGlsZShjLS0pZD1nW2NdLm5hbWUsMD09PWQuaW5kZXhPZigiZGF0YS0iKSYmKGQ9bi5jYW1lbENhc2UoZC5zbGljZSg1KSksUChmLGQsZVtkXSkpO24uX2RhdGEoZiwicGFyc2VkQXR0cnMiLCEwKX1yZXR1cm4gZX1yZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGE/dGhpcy5lYWNoKGZ1bmN0aW9uKCl7bi5kYXRhKHRoaXMsYSl9KTphcmd1bWVudHMubGVuZ3RoPjE/dGhpcy5lYWNoKGZ1bmN0aW9uKCl7bi5kYXRhKHRoaXMsYSxiKX0pOmY/UChmLGEsbi5kYXRhKGYsYSkpOnZvaWQgMH0scmVtb3ZlRGF0YTpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7bi5yZW1vdmVEYXRhKHRoaXMsYSl9KX19KSxuLmV4dGVuZCh7cXVldWU6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkO3JldHVybiBhPyhiPShifHwiZngiKSsicXVldWUiLGQ9bi5fZGF0YShhLGIpLGMmJighZHx8bi5pc0FycmF5KGMpP2Q9bi5fZGF0YShhLGIsbi5tYWtlQXJyYXkoYykpOmQucHVzaChjKSksZHx8W10pOnZvaWQgMH0sZGVxdWV1ZTpmdW5jdGlvbihhLGIpe2I9Ynx8ImZ4Ijt2YXIgYz1uLnF1ZXVlKGEsYiksZD1jLmxlbmd0aCxlPWMuc2hpZnQoKSxmPW4uX3F1ZXVlSG9va3MoYSxiKSxnPWZ1bmN0aW9uKCl7bi5kZXF1ZXVlKGEsYil9OyJpbnByb2dyZXNzIj09PWUmJihlPWMuc2hpZnQoKSxkLS0pLGUmJigiZngiPT09YiYmYy51bnNoaWZ0KCJpbnByb2dyZXNzIiksZGVsZXRlIGYuc3RvcCxlLmNhbGwoYSxnLGYpKSwhZCYmZiYmZi5lbXB0eS5maXJlKCl9LF9xdWV1ZUhvb2tzOmZ1bmN0aW9uKGEsYil7dmFyIGM9YisicXVldWVIb29rcyI7cmV0dXJuIG4uX2RhdGEoYSxjKXx8bi5fZGF0YShhLGMse2VtcHR5Om4uQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLmFkZChmdW5jdGlvbigpe24uX3JlbW92ZURhdGEoYSxiKyJxdWV1ZSIpLG4uX3JlbW92ZURhdGEoYSxjKX0pfSl9fSksbi5mbi5leHRlbmQoe3F1ZXVlOmZ1bmN0aW9uKGEsYil7dmFyIGM9MjtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIGEmJihiPWEsYT0iZngiLGMtLSksYXJndW1lbnRzLmxlbmd0aDxjP24ucXVldWUodGhpc1swXSxhKTp2b2lkIDA9PT1iP3RoaXM6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGM9bi5xdWV1ZSh0aGlzLGEsYik7bi5fcXVldWVIb29rcyh0aGlzLGEpLCJmeCI9PT1hJiYiaW5wcm9ncmVzcyIhPT1jWzBdJiZuLmRlcXVldWUodGhpcyxhKX0pfSxkZXF1ZXVlOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtuLmRlcXVldWUodGhpcyxhKX0pfSxjbGVhclF1ZXVlOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnF1ZXVlKGF8fCJmeCIsW10pfSxwcm9taXNlOmZ1bmN0aW9uKGEsYil7dmFyIGMsZD0xLGU9bi5EZWZlcnJlZCgpLGY9dGhpcyxnPXRoaXMubGVuZ3RoLGg9ZnVuY3Rpb24oKXstLWR8fGUucmVzb2x2ZVdpdGgoZixbZl0pfTsic3RyaW5nIiE9dHlwZW9mIGEmJihiPWEsYT12b2lkIDApLGE9YXx8ImZ4Ijt3aGlsZShnLS0pYz1uLl9kYXRhKGZbZ10sYSsicXVldWVIb29rcyIpLGMmJmMuZW1wdHkmJihkKyssYy5lbXB0eS5hZGQoaCkpO3JldHVybiBoKCksZS5wcm9taXNlKGIpfX0pO3ZhciBUPS9bKy1dPyg/OlxkKlwufClcZCsoPzpbZUVdWystXT9cZCt8KS8uc291cmNlLFU9WyJUb3AiLCJSaWdodCIsIkJvdHRvbSIsIkxlZnQiXSxWPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9Ynx8YSwibm9uZSI9PT1uLmNzcyhhLCJkaXNwbGF5Iil8fCFuLmNvbnRhaW5zKGEub3duZXJEb2N1bWVudCxhKX0sVz1uLmFjY2Vzcz1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXt2YXIgaD0wLGk9YS5sZW5ndGgsaj1udWxsPT1jO2lmKCJvYmplY3QiPT09bi50eXBlKGMpKXtlPSEwO2ZvcihoIGluIGMpbi5hY2Nlc3MoYSxiLGgsY1toXSwhMCxmLGcpfWVsc2UgaWYodm9pZCAwIT09ZCYmKGU9ITAsbi5pc0Z1bmN0aW9uKGQpfHwoZz0hMCksaiYmKGc/KGIuY2FsbChhLGQpLGI9bnVsbCk6KGo9YixiPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gai5jYWxsKG4oYSksYyl9KSksYikpZm9yKDtpPmg7aCsrKWIoYVtoXSxjLGc/ZDpkLmNhbGwoYVtoXSxoLGIoYVtoXSxjKSkpO3JldHVybiBlP2E6aj9iLmNhbGwoYSk6aT9iKGFbMF0sYyk6Zn0sWD0vXig/OmNoZWNrYm94fHJhZGlvKSQvaTshZnVuY3Rpb24oKXt2YXIgYT16LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxiPXouY3JlYXRlRWxlbWVudCgiZGl2IiksYz16LmNyZWF0ZUVsZW1lbnQoImlucHV0Iik7aWYoYi5zZXRBdHRyaWJ1dGUoImNsYXNzTmFtZSIsInQiKSxiLmlubmVySFRNTD0iICA8bGluay8+PHRhYmxlPjwvdGFibGU+PGEgaHJlZj0nL2EnPmE8L2E+IixsLmxlYWRpbmdXaGl0ZXNwYWNlPTM9PT1iLmZpcnN0Q2hpbGQubm9kZVR5cGUsbC50Ym9keT0hYi5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGJvZHkiKS5sZW5ndGgsbC5odG1sU2VyaWFsaXplPSEhYi5nZXRFbGVtZW50c0J5VGFnTmFtZSgibGluayIpLmxlbmd0aCxsLmh0bWw1Q2xvbmU9Ijw6bmF2PjwvOm5hdj4iIT09ei5jcmVhdGVFbGVtZW50KCJuYXYiKS5jbG9uZU5vZGUoITApLm91dGVySFRNTCxjLnR5cGU9ImNoZWNrYm94IixjLmNoZWNrZWQ9ITAsYS5hcHBlbmRDaGlsZChjKSxsLmFwcGVuZENoZWNrZWQ9Yy5jaGVja2VkLGIuaW5uZXJIVE1MPSI8dGV4dGFyZWE+eDwvdGV4dGFyZWE+IixsLm5vQ2xvbmVDaGVja2VkPSEhYi5jbG9uZU5vZGUoITApLmxhc3RDaGlsZC5kZWZhdWx0VmFsdWUsYS5hcHBlbmRDaGlsZChiKSxiLmlubmVySFRNTD0iPGlucHV0IHR5cGU9J3JhZGlvJyBjaGVja2VkPSdjaGVja2VkJyBuYW1lPSd0Jy8+IixsLmNoZWNrQ2xvbmU9Yi5jbG9uZU5vZGUoITApLmNsb25lTm9kZSghMCkubGFzdENoaWxkLmNoZWNrZWQsbC5ub0Nsb25lRXZlbnQ9ITAsYi5hdHRhY2hFdmVudCYmKGIuYXR0YWNoRXZlbnQoIm9uY2xpY2siLGZ1bmN0aW9uKCl7bC5ub0Nsb25lRXZlbnQ9ITF9KSxiLmNsb25lTm9kZSghMCkuY2xpY2soKSksbnVsbD09bC5kZWxldGVFeHBhbmRvKXtsLmRlbGV0ZUV4cGFuZG89ITA7dHJ5e2RlbGV0ZSBiLnRlc3R9Y2F0Y2goZCl7bC5kZWxldGVFeHBhbmRvPSExfX1hPWI9Yz1udWxsfSgpLGZ1bmN0aW9uKCl7dmFyIGIsYyxkPXouY3JlYXRlRWxlbWVudCgiZGl2Iik7Zm9yKGIgaW57c3VibWl0OiEwLGNoYW5nZTohMCxmb2N1c2luOiEwfSljPSJvbiIrYiwobFtiKyJCdWJibGVzIl09YyBpbiBhKXx8KGQuc2V0QXR0cmlidXRlKGMsInQiKSxsW2IrIkJ1YmJsZXMiXT1kLmF0dHJpYnV0ZXNbY10uZXhwYW5kbz09PSExKTtkPW51bGx9KCk7dmFyIFk9L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWEpJC9pLFo9L15rZXkvLCQ9L14oPzptb3VzZXxjb250ZXh0bWVudSl8Y2xpY2svLF89L14oPzpmb2N1c2luZm9jdXN8Zm9jdXNvdXRibHVyKSQvLGFiPS9eKFteLl0qKSg/OlwuKC4rKXwpJC87ZnVuY3Rpb24gYmIoKXtyZXR1cm4hMH1mdW5jdGlvbiBjYigpe3JldHVybiExfWZ1bmN0aW9uIGRiKCl7dHJ5e3JldHVybiB6LmFjdGl2ZUVsZW1lbnR9Y2F0Y2goYSl7fX1uLmV2ZW50PXtnbG9iYWw6e30sYWRkOmZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGYsZyxoLGksaixrLGwsbSxvLHAscSxyPW4uX2RhdGEoYSk7aWYocil7Yy5oYW5kbGVyJiYoaT1jLGM9aS5oYW5kbGVyLGU9aS5zZWxlY3RvciksYy5ndWlkfHwoYy5ndWlkPW4uZ3VpZCsrKSwoZz1yLmV2ZW50cyl8fChnPXIuZXZlbnRzPXt9KSwoaz1yLmhhbmRsZSl8fChrPXIuaGFuZGxlPWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2Ygbj09PUx8fGEmJm4uZXZlbnQudHJpZ2dlcmVkPT09YS50eXBlP3ZvaWQgMDpuLmV2ZW50LmRpc3BhdGNoLmFwcGx5KGsuZWxlbSxhcmd1bWVudHMpfSxrLmVsZW09YSksYj0oYnx8IiIpLm1hdGNoKEYpfHxbIiJdLGg9Yi5sZW5ndGg7d2hpbGUoaC0tKWY9YWIuZXhlYyhiW2hdKXx8W10sbz1xPWZbMV0scD0oZlsyXXx8IiIpLnNwbGl0KCIuIikuc29ydCgpLG8mJihqPW4uZXZlbnQuc3BlY2lhbFtvXXx8e30sbz0oZT9qLmRlbGVnYXRlVHlwZTpqLmJpbmRUeXBlKXx8byxqPW4uZXZlbnQuc3BlY2lhbFtvXXx8e30sbD1uLmV4dGVuZCh7dHlwZTpvLG9yaWdUeXBlOnEsZGF0YTpkLGhhbmRsZXI6YyxndWlkOmMuZ3VpZCxzZWxlY3RvcjplLG5lZWRzQ29udGV4dDplJiZuLmV4cHIubWF0Y2gubmVlZHNDb250ZXh0LnRlc3QoZSksbmFtZXNwYWNlOnAuam9pbigiLiIpfSxpKSwobT1nW29dKXx8KG09Z1tvXT1bXSxtLmRlbGVnYXRlQ291bnQ9MCxqLnNldHVwJiZqLnNldHVwLmNhbGwoYSxkLHAsaykhPT0hMXx8KGEuYWRkRXZlbnRMaXN0ZW5lcj9hLmFkZEV2ZW50TGlzdGVuZXIobyxrLCExKTphLmF0dGFjaEV2ZW50JiZhLmF0dGFjaEV2ZW50KCJvbiIrbyxrKSkpLGouYWRkJiYoai5hZGQuY2FsbChhLGwpLGwuaGFuZGxlci5ndWlkfHwobC5oYW5kbGVyLmd1aWQ9Yy5ndWlkKSksZT9tLnNwbGljZShtLmRlbGVnYXRlQ291bnQrKywwLGwpOm0ucHVzaChsKSxuLmV2ZW50Lmdsb2JhbFtvXT0hMCk7YT1udWxsfX0scmVtb3ZlOmZ1bmN0aW9uKGEsYixjLGQsZSl7dmFyIGYsZyxoLGksaixrLGwsbSxvLHAscSxyPW4uaGFzRGF0YShhKSYmbi5fZGF0YShhKTtpZihyJiYoaz1yLmV2ZW50cykpe2I9KGJ8fCIiKS5tYXRjaChGKXx8WyIiXSxqPWIubGVuZ3RoO3doaWxlKGotLSlpZihoPWFiLmV4ZWMoYltqXSl8fFtdLG89cT1oWzFdLHA9KGhbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSxvKXtsPW4uZXZlbnQuc3BlY2lhbFtvXXx8e30sbz0oZD9sLmRlbGVnYXRlVHlwZTpsLmJpbmRUeXBlKXx8byxtPWtbb118fFtdLGg9aFsyXSYmbmV3IFJlZ0V4cCgiKF58XFwuKSIrcC5qb2luKCJcXC4oPzouKlxcLnwpIikrIihcXC58JCkiKSxpPWY9bS5sZW5ndGg7d2hpbGUoZi0tKWc9bVtmXSwhZSYmcSE9PWcub3JpZ1R5cGV8fGMmJmMuZ3VpZCE9PWcuZ3VpZHx8aCYmIWgudGVzdChnLm5hbWVzcGFjZSl8fGQmJmQhPT1nLnNlbGVjdG9yJiYoIioqIiE9PWR8fCFnLnNlbGVjdG9yKXx8KG0uc3BsaWNlKGYsMSksZy5zZWxlY3RvciYmbS5kZWxlZ2F0ZUNvdW50LS0sbC5yZW1vdmUmJmwucmVtb3ZlLmNhbGwoYSxnKSk7aSYmIW0ubGVuZ3RoJiYobC50ZWFyZG93biYmbC50ZWFyZG93bi5jYWxsKGEscCxyLmhhbmRsZSkhPT0hMXx8bi5yZW1vdmVFdmVudChhLG8sci5oYW5kbGUpLGRlbGV0ZSBrW29dKX1lbHNlIGZvcihvIGluIGspbi5ldmVudC5yZW1vdmUoYSxvK2Jbal0sYyxkLCEwKTtuLmlzRW1wdHlPYmplY3QoaykmJihkZWxldGUgci5oYW5kbGUsbi5fcmVtb3ZlRGF0YShhLCJldmVudHMiKSl9fSx0cmlnZ2VyOmZ1bmN0aW9uKGIsYyxkLGUpe3ZhciBmLGcsaCxpLGssbCxtLG89W2R8fHpdLHA9ai5jYWxsKGIsInR5cGUiKT9iLnR5cGU6YixxPWouY2FsbChiLCJuYW1lc3BhY2UiKT9iLm5hbWVzcGFjZS5zcGxpdCgiLiIpOltdO2lmKGg9bD1kPWR8fHosMyE9PWQubm9kZVR5cGUmJjghPT1kLm5vZGVUeXBlJiYhXy50ZXN0KHArbi5ldmVudC50cmlnZ2VyZWQpJiYocC5pbmRleE9mKCIuIik+PTAmJihxPXAuc3BsaXQoIi4iKSxwPXEuc2hpZnQoKSxxLnNvcnQoKSksZz1wLmluZGV4T2YoIjoiKTwwJiYib24iK3AsYj1iW24uZXhwYW5kb10/YjpuZXcgbi5FdmVudChwLCJvYmplY3QiPT10eXBlb2YgYiYmYiksYi5pc1RyaWdnZXI9ZT8yOjMsYi5uYW1lc3BhY2U9cS5qb2luKCIuIiksYi5uYW1lc3BhY2VfcmU9Yi5uYW1lc3BhY2U/bmV3IFJlZ0V4cCgiKF58XFwuKSIrcS5qb2luKCJcXC4oPzouKlxcLnwpIikrIihcXC58JCkiKTpudWxsLGIucmVzdWx0PXZvaWQgMCxiLnRhcmdldHx8KGIudGFyZ2V0PWQpLGM9bnVsbD09Yz9bYl06bi5tYWtlQXJyYXkoYyxbYl0pLGs9bi5ldmVudC5zcGVjaWFsW3BdfHx7fSxlfHwhay50cmlnZ2VyfHxrLnRyaWdnZXIuYXBwbHkoZCxjKSE9PSExKSl7aWYoIWUmJiFrLm5vQnViYmxlJiYhbi5pc1dpbmRvdyhkKSl7Zm9yKGk9ay5kZWxlZ2F0ZVR5cGV8fHAsXy50ZXN0KGkrcCl8fChoPWgucGFyZW50Tm9kZSk7aDtoPWgucGFyZW50Tm9kZSlvLnB1c2goaCksbD1oO2w9PT0oZC5vd25lckRvY3VtZW50fHx6KSYmby5wdXNoKGwuZGVmYXVsdFZpZXd8fGwucGFyZW50V2luZG93fHxhKX1tPTA7d2hpbGUoKGg9b1ttKytdKSYmIWIuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSliLnR5cGU9bT4xP2k6ay5iaW5kVHlwZXx8cCxmPShuLl9kYXRhKGgsImV2ZW50cyIpfHx7fSlbYi50eXBlXSYmbi5fZGF0YShoLCJoYW5kbGUiKSxmJiZmLmFwcGx5KGgsYyksZj1nJiZoW2ddLGYmJmYuYXBwbHkmJm4uYWNjZXB0RGF0YShoKSYmKGIucmVzdWx0PWYuYXBwbHkoaCxjKSxiLnJlc3VsdD09PSExJiZiLnByZXZlbnREZWZhdWx0KCkpO2lmKGIudHlwZT1wLCFlJiYhYi5pc0RlZmF1bHRQcmV2ZW50ZWQoKSYmKCFrLl9kZWZhdWx0fHxrLl9kZWZhdWx0LmFwcGx5KG8ucG9wKCksYyk9PT0hMSkmJm4uYWNjZXB0RGF0YShkKSYmZyYmZFtwXSYmIW4uaXNXaW5kb3coZCkpe2w9ZFtnXSxsJiYoZFtnXT1udWxsKSxuLmV2ZW50LnRyaWdnZXJlZD1wO3RyeXtkW3BdKCl9Y2F0Y2gocil7fW4uZXZlbnQudHJpZ2dlcmVkPXZvaWQgMCxsJiYoZFtnXT1sKX1yZXR1cm4gYi5yZXN1bHR9fSxkaXNwYXRjaDpmdW5jdGlvbihhKXthPW4uZXZlbnQuZml4KGEpO3ZhciBiLGMsZSxmLGcsaD1bXSxpPWQuY2FsbChhcmd1bWVudHMpLGo9KG4uX2RhdGEodGhpcywiZXZlbnRzIil8fHt9KVthLnR5cGVdfHxbXSxrPW4uZXZlbnQuc3BlY2lhbFthLnR5cGVdfHx7fTtpZihpWzBdPWEsYS5kZWxlZ2F0ZVRhcmdldD10aGlzLCFrLnByZURpc3BhdGNofHxrLnByZURpc3BhdGNoLmNhbGwodGhpcyxhKSE9PSExKXtoPW4uZXZlbnQuaGFuZGxlcnMuY2FsbCh0aGlzLGEsaiksYj0wO3doaWxlKChmPWhbYisrXSkmJiFhLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpe2EuY3VycmVudFRhcmdldD1mLmVsZW0sZz0wO3doaWxlKChlPWYuaGFuZGxlcnNbZysrXSkmJiFhLmlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkKCkpKCFhLm5hbWVzcGFjZV9yZXx8YS5uYW1lc3BhY2VfcmUudGVzdChlLm5hbWVzcGFjZSkpJiYoYS5oYW5kbGVPYmo9ZSxhLmRhdGE9ZS5kYXRhLGM9KChuLmV2ZW50LnNwZWNpYWxbZS5vcmlnVHlwZV18fHt9KS5oYW5kbGV8fGUuaGFuZGxlcikuYXBwbHkoZi5lbGVtLGkpLHZvaWQgMCE9PWMmJihhLnJlc3VsdD1jKT09PSExJiYoYS5wcmV2ZW50RGVmYXVsdCgpLGEuc3RvcFByb3BhZ2F0aW9uKCkpKX1yZXR1cm4gay5wb3N0RGlzcGF0Y2gmJmsucG9zdERpc3BhdGNoLmNhbGwodGhpcyxhKSxhLnJlc3VsdH19LGhhbmRsZXJzOmZ1bmN0aW9uKGEsYil7dmFyIGMsZCxlLGYsZz1bXSxoPWIuZGVsZWdhdGVDb3VudCxpPWEudGFyZ2V0O2lmKGgmJmkubm9kZVR5cGUmJighYS5idXR0b258fCJjbGljayIhPT1hLnR5cGUpKWZvcig7aSE9dGhpcztpPWkucGFyZW50Tm9kZXx8dGhpcylpZigxPT09aS5ub2RlVHlwZSYmKGkuZGlzYWJsZWQhPT0hMHx8ImNsaWNrIiE9PWEudHlwZSkpe2ZvcihlPVtdLGY9MDtoPmY7ZisrKWQ9YltmXSxjPWQuc2VsZWN0b3IrIiAiLHZvaWQgMD09PWVbY10mJihlW2NdPWQubmVlZHNDb250ZXh0P24oYyx0aGlzKS5pbmRleChpKT49MDpuLmZpbmQoYyx0aGlzLG51bGwsW2ldKS5sZW5ndGgpLGVbY10mJmUucHVzaChkKTtlLmxlbmd0aCYmZy5wdXNoKHtlbGVtOmksaGFuZGxlcnM6ZX0pfXJldHVybiBoPGIubGVuZ3RoJiZnLnB1c2goe2VsZW06dGhpcyxoYW5kbGVyczpiLnNsaWNlKGgpfSksZ30sZml4OmZ1bmN0aW9uKGEpe2lmKGFbbi5leHBhbmRvXSlyZXR1cm4gYTt2YXIgYixjLGQsZT1hLnR5cGUsZj1hLGc9dGhpcy5maXhIb29rc1tlXTtnfHwodGhpcy5maXhIb29rc1tlXT1nPSQudGVzdChlKT90aGlzLm1vdXNlSG9va3M6Wi50ZXN0KGUpP3RoaXMua2V5SG9va3M6e30pLGQ9Zy5wcm9wcz90aGlzLnByb3BzLmNvbmNhdChnLnByb3BzKTp0aGlzLnByb3BzLGE9bmV3IG4uRXZlbnQoZiksYj1kLmxlbmd0aDt3aGlsZShiLS0pYz1kW2JdLGFbY109ZltjXTtyZXR1cm4gYS50YXJnZXR8fChhLnRhcmdldD1mLnNyY0VsZW1lbnR8fHopLDM9PT1hLnRhcmdldC5ub2RlVHlwZSYmKGEudGFyZ2V0PWEudGFyZ2V0LnBhcmVudE5vZGUpLGEubWV0YUtleT0hIWEubWV0YUtleSxnLmZpbHRlcj9nLmZpbHRlcihhLGYpOmF9LHByb3BzOiJhbHRLZXkgYnViYmxlcyBjYW5jZWxhYmxlIGN0cmxLZXkgY3VycmVudFRhcmdldCBldmVudFBoYXNlIG1ldGFLZXkgcmVsYXRlZFRhcmdldCBzaGlmdEtleSB0YXJnZXQgdGltZVN0YW1wIHZpZXcgd2hpY2giLnNwbGl0KCIgIiksZml4SG9va3M6e30sa2V5SG9va3M6e3Byb3BzOiJjaGFyIGNoYXJDb2RlIGtleSBrZXlDb2RlIi5zcGxpdCgiICIpLGZpbHRlcjpmdW5jdGlvbihhLGIpe3JldHVybiBudWxsPT1hLndoaWNoJiYoYS53aGljaD1udWxsIT1iLmNoYXJDb2RlP2IuY2hhckNvZGU6Yi5rZXlDb2RlKSxhfX0sbW91c2VIb29rczp7cHJvcHM6ImJ1dHRvbiBidXR0b25zIGNsaWVudFggY2xpZW50WSBmcm9tRWxlbWVudCBvZmZzZXRYIG9mZnNldFkgcGFnZVggcGFnZVkgc2NyZWVuWCBzY3JlZW5ZIHRvRWxlbWVudCIuc3BsaXQoIiAiKSxmaWx0ZXI6ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZj1iLmJ1dHRvbixnPWIuZnJvbUVsZW1lbnQ7cmV0dXJuIG51bGw9PWEucGFnZVgmJm51bGwhPWIuY2xpZW50WCYmKGQ9YS50YXJnZXQub3duZXJEb2N1bWVudHx8eixlPWQuZG9jdW1lbnRFbGVtZW50LGM9ZC5ib2R5LGEucGFnZVg9Yi5jbGllbnRYKyhlJiZlLnNjcm9sbExlZnR8fGMmJmMuc2Nyb2xsTGVmdHx8MCktKGUmJmUuY2xpZW50TGVmdHx8YyYmYy5jbGllbnRMZWZ0fHwwKSxhLnBhZ2VZPWIuY2xpZW50WSsoZSYmZS5zY3JvbGxUb3B8fGMmJmMuc2Nyb2xsVG9wfHwwKS0oZSYmZS5jbGllbnRUb3B8fGMmJmMuY2xpZW50VG9wfHwwKSksIWEucmVsYXRlZFRhcmdldCYmZyYmKGEucmVsYXRlZFRhcmdldD1nPT09YS50YXJnZXQ/Yi50b0VsZW1lbnQ6ZyksYS53aGljaHx8dm9pZCAwPT09Znx8KGEud2hpY2g9MSZmPzE6MiZmPzM6NCZmPzI6MCksYX19LHNwZWNpYWw6e2xvYWQ6e25vQnViYmxlOiEwfSxmb2N1czp7dHJpZ2dlcjpmdW5jdGlvbigpe2lmKHRoaXMhPT1kYigpJiZ0aGlzLmZvY3VzKXRyeXtyZXR1cm4gdGhpcy5mb2N1cygpLCExfWNhdGNoKGEpe319LGRlbGVnYXRlVHlwZToiZm9jdXNpbiJ9LGJsdXI6e3RyaWdnZXI6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcz09PWRiKCkmJnRoaXMuYmx1cj8odGhpcy5ibHVyKCksITEpOnZvaWQgMH0sZGVsZWdhdGVUeXBlOiJmb2N1c291dCJ9LGNsaWNrOnt0cmlnZ2VyOmZ1bmN0aW9uKCl7cmV0dXJuIG4ubm9kZU5hbWUodGhpcywiaW5wdXQiKSYmImNoZWNrYm94Ij09PXRoaXMudHlwZSYmdGhpcy5jbGljaz8odGhpcy5jbGljaygpLCExKTp2b2lkIDB9LF9kZWZhdWx0OmZ1bmN0aW9uKGEpe3JldHVybiBuLm5vZGVOYW1lKGEudGFyZ2V0LCJhIil9fSxiZWZvcmV1bmxvYWQ6e3Bvc3REaXNwYXRjaDpmdW5jdGlvbihhKXt2b2lkIDAhPT1hLnJlc3VsdCYmKGEub3JpZ2luYWxFdmVudC5yZXR1cm5WYWx1ZT1hLnJlc3VsdCl9fX0sc2ltdWxhdGU6ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9bi5leHRlbmQobmV3IG4uRXZlbnQsYyx7dHlwZTphLGlzU2ltdWxhdGVkOiEwLG9yaWdpbmFsRXZlbnQ6e319KTtkP24uZXZlbnQudHJpZ2dlcihlLG51bGwsYik6bi5ldmVudC5kaXNwYXRjaC5jYWxsKGIsZSksZS5pc0RlZmF1bHRQcmV2ZW50ZWQoKSYmYy5wcmV2ZW50RGVmYXVsdCgpfX0sbi5yZW1vdmVFdmVudD16LnJlbW92ZUV2ZW50TGlzdGVuZXI/ZnVuY3Rpb24oYSxiLGMpe2EucmVtb3ZlRXZlbnRMaXN0ZW5lciYmYS5yZW1vdmVFdmVudExpc3RlbmVyKGIsYywhMSl9OmZ1bmN0aW9uKGEsYixjKXt2YXIgZD0ib24iK2I7YS5kZXRhY2hFdmVudCYmKHR5cGVvZiBhW2RdPT09TCYmKGFbZF09bnVsbCksYS5kZXRhY2hFdmVudChkLGMpKX0sbi5FdmVudD1mdW5jdGlvbihhLGIpe3JldHVybiB0aGlzIGluc3RhbmNlb2Ygbi5FdmVudD8oYSYmYS50eXBlPyh0aGlzLm9yaWdpbmFsRXZlbnQ9YSx0aGlzLnR5cGU9YS50eXBlLHRoaXMuaXNEZWZhdWx0UHJldmVudGVkPWEuZGVmYXVsdFByZXZlbnRlZHx8dm9pZCAwPT09YS5kZWZhdWx0UHJldmVudGVkJiYoYS5yZXR1cm5WYWx1ZT09PSExfHxhLmdldFByZXZlbnREZWZhdWx0JiZhLmdldFByZXZlbnREZWZhdWx0KCkpP2JiOmNiKTp0aGlzLnR5cGU9YSxiJiZuLmV4dGVuZCh0aGlzLGIpLHRoaXMudGltZVN0YW1wPWEmJmEudGltZVN0YW1wfHxuLm5vdygpLHZvaWQodGhpc1tuLmV4cGFuZG9dPSEwKSk6bmV3IG4uRXZlbnQoYSxiKX0sbi5FdmVudC5wcm90b3R5cGU9e2lzRGVmYXVsdFByZXZlbnRlZDpjYixpc1Byb3BhZ2F0aW9uU3RvcHBlZDpjYixpc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZDpjYixwcmV2ZW50RGVmYXVsdDpmdW5jdGlvbigpe3ZhciBhPXRoaXMub3JpZ2luYWxFdmVudDt0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD1iYixhJiYoYS5wcmV2ZW50RGVmYXVsdD9hLnByZXZlbnREZWZhdWx0KCk6YS5yZXR1cm5WYWx1ZT0hMSl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBhPXRoaXMub3JpZ2luYWxFdmVudDt0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPWJiLGEmJihhLnN0b3BQcm9wYWdhdGlvbiYmYS5zdG9wUHJvcGFnYXRpb24oKSxhLmNhbmNlbEJ1YmJsZT0hMCl9LHN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3RoaXMuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQ9YmIsdGhpcy5zdG9wUHJvcGFnYXRpb24oKX19LG4uZWFjaCh7bW91c2VlbnRlcjoibW91c2VvdmVyIixtb3VzZWxlYXZlOiJtb3VzZW91dCJ9LGZ1bmN0aW9uKGEsYil7bi5ldmVudC5zcGVjaWFsW2FdPXtkZWxlZ2F0ZVR5cGU6YixiaW5kVHlwZTpiLGhhbmRsZTpmdW5jdGlvbihhKXt2YXIgYyxkPXRoaXMsZT1hLnJlbGF0ZWRUYXJnZXQsZj1hLmhhbmRsZU9iajtyZXR1cm4oIWV8fGUhPT1kJiYhbi5jb250YWlucyhkLGUpKSYmKGEudHlwZT1mLm9yaWdUeXBlLGM9Zi5oYW5kbGVyLmFwcGx5KHRoaXMsYXJndW1lbnRzKSxhLnR5cGU9YiksY319fSksbC5zdWJtaXRCdWJibGVzfHwobi5ldmVudC5zcGVjaWFsLnN1Ym1pdD17c2V0dXA6ZnVuY3Rpb24oKXtyZXR1cm4gbi5ub2RlTmFtZSh0aGlzLCJmb3JtIik/ITE6dm9pZCBuLmV2ZW50LmFkZCh0aGlzLCJjbGljay5fc3VibWl0IGtleXByZXNzLl9zdWJtaXQiLGZ1bmN0aW9uKGEpe3ZhciBiPWEudGFyZ2V0LGM9bi5ub2RlTmFtZShiLCJpbnB1dCIpfHxuLm5vZGVOYW1lKGIsImJ1dHRvbiIpP2IuZm9ybTp2b2lkIDA7YyYmIW4uX2RhdGEoYywic3VibWl0QnViYmxlcyIpJiYobi5ldmVudC5hZGQoYywic3VibWl0Ll9zdWJtaXQiLGZ1bmN0aW9uKGEpe2EuX3N1Ym1pdF9idWJibGU9ITB9KSxuLl9kYXRhKGMsInN1Ym1pdEJ1YmJsZXMiLCEwKSl9KX0scG9zdERpc3BhdGNoOmZ1bmN0aW9uKGEpe2EuX3N1Ym1pdF9idWJibGUmJihkZWxldGUgYS5fc3VibWl0X2J1YmJsZSx0aGlzLnBhcmVudE5vZGUmJiFhLmlzVHJpZ2dlciYmbi5ldmVudC5zaW11bGF0ZSgic3VibWl0Iix0aGlzLnBhcmVudE5vZGUsYSwhMCkpfSx0ZWFyZG93bjpmdW5jdGlvbigpe3JldHVybiBuLm5vZGVOYW1lKHRoaXMsImZvcm0iKT8hMTp2b2lkIG4uZXZlbnQucmVtb3ZlKHRoaXMsIi5fc3VibWl0Iil9fSksbC5jaGFuZ2VCdWJibGVzfHwobi5ldmVudC5zcGVjaWFsLmNoYW5nZT17c2V0dXA6ZnVuY3Rpb24oKXtyZXR1cm4gWS50ZXN0KHRoaXMubm9kZU5hbWUpPygoImNoZWNrYm94Ij09PXRoaXMudHlwZXx8InJhZGlvIj09PXRoaXMudHlwZSkmJihuLmV2ZW50LmFkZCh0aGlzLCJwcm9wZXJ0eWNoYW5nZS5fY2hhbmdlIixmdW5jdGlvbihhKXsiY2hlY2tlZCI9PT1hLm9yaWdpbmFsRXZlbnQucHJvcGVydHlOYW1lJiYodGhpcy5fanVzdF9jaGFuZ2VkPSEwKX0pLG4uZXZlbnQuYWRkKHRoaXMsImNsaWNrLl9jaGFuZ2UiLGZ1bmN0aW9uKGEpe3RoaXMuX2p1c3RfY2hhbmdlZCYmIWEuaXNUcmlnZ2VyJiYodGhpcy5fanVzdF9jaGFuZ2VkPSExKSxuLmV2ZW50LnNpbXVsYXRlKCJjaGFuZ2UiLHRoaXMsYSwhMCl9KSksITEpOnZvaWQgbi5ldmVudC5hZGQodGhpcywiYmVmb3JlYWN0aXZhdGUuX2NoYW5nZSIsZnVuY3Rpb24oYSl7dmFyIGI9YS50YXJnZXQ7WS50ZXN0KGIubm9kZU5hbWUpJiYhbi5fZGF0YShiLCJjaGFuZ2VCdWJibGVzIikmJihuLmV2ZW50LmFkZChiLCJjaGFuZ2UuX2NoYW5nZSIsZnVuY3Rpb24oYSl7IXRoaXMucGFyZW50Tm9kZXx8YS5pc1NpbXVsYXRlZHx8YS5pc1RyaWdnZXJ8fG4uZXZlbnQuc2ltdWxhdGUoImNoYW5nZSIsdGhpcy5wYXJlbnROb2RlLGEsITApfSksbi5fZGF0YShiLCJjaGFuZ2VCdWJibGVzIiwhMCkpfSl9LGhhbmRsZTpmdW5jdGlvbihhKXt2YXIgYj1hLnRhcmdldDtyZXR1cm4gdGhpcyE9PWJ8fGEuaXNTaW11bGF0ZWR8fGEuaXNUcmlnZ2VyfHwicmFkaW8iIT09Yi50eXBlJiYiY2hlY2tib3giIT09Yi50eXBlP2EuaGFuZGxlT2JqLmhhbmRsZXIuYXBwbHkodGhpcyxhcmd1bWVudHMpOnZvaWQgMH0sdGVhcmRvd246ZnVuY3Rpb24oKXtyZXR1cm4gbi5ldmVudC5yZW1vdmUodGhpcywiLl9jaGFuZ2UiKSwhWS50ZXN0KHRoaXMubm9kZU5hbWUpfX0pLGwuZm9jdXNpbkJ1YmJsZXN8fG4uZWFjaCh7Zm9jdXM6ImZvY3VzaW4iLGJsdXI6ImZvY3Vzb3V0In0sZnVuY3Rpb24oYSxiKXt2YXIgYz1mdW5jdGlvbihhKXtuLmV2ZW50LnNpbXVsYXRlKGIsYS50YXJnZXQsbi5ldmVudC5maXgoYSksITApfTtuLmV2ZW50LnNwZWNpYWxbYl09e3NldHVwOmZ1bmN0aW9uKCl7dmFyIGQ9dGhpcy5vd25lckRvY3VtZW50fHx0aGlzLGU9bi5fZGF0YShkLGIpO2V8fGQuYWRkRXZlbnRMaXN0ZW5lcihhLGMsITApLG4uX2RhdGEoZCxiLChlfHwwKSsxKX0sdGVhcmRvd246ZnVuY3Rpb24oKXt2YXIgZD10aGlzLm93bmVyRG9jdW1lbnR8fHRoaXMsZT1uLl9kYXRhKGQsYiktMTtlP24uX2RhdGEoZCxiLGUpOihkLnJlbW92ZUV2ZW50TGlzdGVuZXIoYSxjLCEwKSxuLl9yZW1vdmVEYXRhKGQsYikpfX19KSxuLmZuLmV4dGVuZCh7b246ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZixnO2lmKCJvYmplY3QiPT10eXBlb2YgYSl7InN0cmluZyIhPXR5cGVvZiBiJiYoYz1jfHxiLGI9dm9pZCAwKTtmb3IoZiBpbiBhKXRoaXMub24oZixiLGMsYVtmXSxlKTtyZXR1cm4gdGhpc31pZihudWxsPT1jJiZudWxsPT1kPyhkPWIsYz1iPXZvaWQgMCk6bnVsbD09ZCYmKCJzdHJpbmciPT10eXBlb2YgYj8oZD1jLGM9dm9pZCAwKTooZD1jLGM9YixiPXZvaWQgMCkpLGQ9PT0hMSlkPWNiO2Vsc2UgaWYoIWQpcmV0dXJuIHRoaXM7cmV0dXJuIDE9PT1lJiYoZz1kLGQ9ZnVuY3Rpb24oYSl7cmV0dXJuIG4oKS5vZmYoYSksZy5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LGQuZ3VpZD1nLmd1aWR8fChnLmd1aWQ9bi5ndWlkKyspKSx0aGlzLmVhY2goZnVuY3Rpb24oKXtuLmV2ZW50LmFkZCh0aGlzLGEsZCxjLGIpfSl9LG9uZTpmdW5jdGlvbihhLGIsYyxkKXtyZXR1cm4gdGhpcy5vbihhLGIsYyxkLDEpfSxvZmY6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGU7aWYoYSYmYS5wcmV2ZW50RGVmYXVsdCYmYS5oYW5kbGVPYmopcmV0dXJuIGQ9YS5oYW5kbGVPYmosbihhLmRlbGVnYXRlVGFyZ2V0KS5vZmYoZC5uYW1lc3BhY2U/ZC5vcmlnVHlwZSsiLiIrZC5uYW1lc3BhY2U6ZC5vcmlnVHlwZSxkLnNlbGVjdG9yLGQuaGFuZGxlciksdGhpcztpZigib2JqZWN0Ij09dHlwZW9mIGEpe2ZvcihlIGluIGEpdGhpcy5vZmYoZSxiLGFbZV0pO3JldHVybiB0aGlzfXJldHVybihiPT09ITF8fCJmdW5jdGlvbiI9PXR5cGVvZiBiKSYmKGM9YixiPXZvaWQgMCksYz09PSExJiYoYz1jYiksdGhpcy5lYWNoKGZ1bmN0aW9uKCl7bi5ldmVudC5yZW1vdmUodGhpcyxhLGMsYil9KX0sdHJpZ2dlcjpmdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtuLmV2ZW50LnRyaWdnZXIoYSxiLHRoaXMpfSl9LHRyaWdnZXJIYW5kbGVyOmZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpc1swXTtyZXR1cm4gYz9uLmV2ZW50LnRyaWdnZXIoYSxiLGMsITApOnZvaWQgMH19KTtmdW5jdGlvbiBlYihhKXt2YXIgYj1mYi5zcGxpdCgifCIpLGM9YS5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7aWYoYy5jcmVhdGVFbGVtZW50KXdoaWxlKGIubGVuZ3RoKWMuY3JlYXRlRWxlbWVudChiLnBvcCgpKTtyZXR1cm4gY312YXIgZmI9ImFiYnJ8YXJ0aWNsZXxhc2lkZXxhdWRpb3xiZGl8Y2FudmFzfGRhdGF8ZGF0YWxpc3R8ZGV0YWlsc3xmaWdjYXB0aW9ufGZpZ3VyZXxmb290ZXJ8aGVhZGVyfGhncm91cHxtYXJrfG1ldGVyfG5hdnxvdXRwdXR8cHJvZ3Jlc3N8c2VjdGlvbnxzdW1tYXJ5fHRpbWV8dmlkZW8iLGdiPS8galF1ZXJ5XGQrPSIoPzpudWxsfFxkKykiL2csaGI9bmV3IFJlZ0V4cCgiPCg/OiIrZmIrIilbXFxzLz5dIiwiaSIpLGliPS9eXHMrLyxqYj0vPCg/IWFyZWF8YnJ8Y29sfGVtYmVkfGhyfGltZ3xpbnB1dHxsaW5rfG1ldGF8cGFyYW0pKChbXHc6XSspW14+XSopXC8+L2dpLGtiPS88KFtcdzpdKykvLGxiPS88dGJvZHkvaSxtYj0vPHwmIz9cdys7LyxuYj0vPCg/OnNjcmlwdHxzdHlsZXxsaW5rKS9pLG9iPS9jaGVja2VkXHMqKD86W149XXw9XHMqLmNoZWNrZWQuKS9pLHBiPS9eJHxcLyg/OmphdmF8ZWNtYSlzY3JpcHQvaSxxYj0vXnRydWVcLyguKikvLHJiPS9eXHMqPCEoPzpcW0NEQVRBXFt8LS0pfCg/OlxdXF18LS0pPlxzKiQvZyxzYj17b3B0aW9uOlsxLCI8c2VsZWN0IG11bHRpcGxlPSdtdWx0aXBsZSc+IiwiPC9zZWxlY3Q+Il0sbGVnZW5kOlsxLCI8ZmllbGRzZXQ+IiwiPC9maWVsZHNldD4iXSxhcmVhOlsxLCI8bWFwPiIsIjwvbWFwPiJdLHBhcmFtOlsxLCI8b2JqZWN0PiIsIjwvb2JqZWN0PiJdLHRoZWFkOlsxLCI8dGFibGU+IiwiPC90YWJsZT4iXSx0cjpbMiwiPHRhYmxlPjx0Ym9keT4iLCI8L3Rib2R5PjwvdGFibGU+Il0sY29sOlsyLCI8dGFibGU+PHRib2R5PjwvdGJvZHk+PGNvbGdyb3VwPiIsIjwvY29sZ3JvdXA+PC90YWJsZT4iXSx0ZDpbMywiPHRhYmxlPjx0Ym9keT48dHI+IiwiPC90cj48L3Rib2R5PjwvdGFibGU+Il0sX2RlZmF1bHQ6bC5odG1sU2VyaWFsaXplP1swLCIiLCIiXTpbMSwiWDxkaXY+IiwiPC9kaXY+Il19LHRiPWViKHopLHViPXRiLmFwcGVuZENoaWxkKHouY3JlYXRlRWxlbWVudCgiZGl2IikpO3NiLm9wdGdyb3VwPXNiLm9wdGlvbixzYi50Ym9keT1zYi50Zm9vdD1zYi5jb2xncm91cD1zYi5jYXB0aW9uPXNiLnRoZWFkLHNiLnRoPXNiLnRkO2Z1bmN0aW9uIHZiKGEsYil7dmFyIGMsZCxlPTAsZj10eXBlb2YgYS5nZXRFbGVtZW50c0J5VGFnTmFtZSE9PUw/YS5nZXRFbGVtZW50c0J5VGFnTmFtZShifHwiKiIpOnR5cGVvZiBhLnF1ZXJ5U2VsZWN0b3JBbGwhPT1MP2EucXVlcnlTZWxlY3RvckFsbChifHwiKiIpOnZvaWQgMDtpZighZilmb3IoZj1bXSxjPWEuY2hpbGROb2Rlc3x8YTtudWxsIT0oZD1jW2VdKTtlKyspIWJ8fG4ubm9kZU5hbWUoZCxiKT9mLnB1c2goZCk6bi5tZXJnZShmLHZiKGQsYikpO3JldHVybiB2b2lkIDA9PT1ifHxiJiZuLm5vZGVOYW1lKGEsYik/bi5tZXJnZShbYV0sZik6Zn1mdW5jdGlvbiB3YihhKXtYLnRlc3QoYS50eXBlKSYmKGEuZGVmYXVsdENoZWNrZWQ9YS5jaGVja2VkKX1mdW5jdGlvbiB4YihhLGIpe3JldHVybiBuLm5vZGVOYW1lKGEsInRhYmxlIikmJm4ubm9kZU5hbWUoMTEhPT1iLm5vZGVUeXBlP2I6Yi5maXJzdENoaWxkLCJ0ciIpP2EuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInRib2R5IilbMF18fGEuYXBwZW5kQ2hpbGQoYS5vd25lckRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRib2R5IikpOmF9ZnVuY3Rpb24geWIoYSl7cmV0dXJuIGEudHlwZT0obnVsbCE9PW4uZmluZC5hdHRyKGEsInR5cGUiKSkrIi8iK2EudHlwZSxhfWZ1bmN0aW9uIHpiKGEpe3ZhciBiPXFiLmV4ZWMoYS50eXBlKTtyZXR1cm4gYj9hLnR5cGU9YlsxXTphLnJlbW92ZUF0dHJpYnV0ZSgidHlwZSIpLGF9ZnVuY3Rpb24gQWIoYSxiKXtmb3IodmFyIGMsZD0wO251bGwhPShjPWFbZF0pO2QrKyluLl9kYXRhKGMsImdsb2JhbEV2YWwiLCFifHxuLl9kYXRhKGJbZF0sImdsb2JhbEV2YWwiKSl9ZnVuY3Rpb24gQmIoYSxiKXtpZigxPT09Yi5ub2RlVHlwZSYmbi5oYXNEYXRhKGEpKXt2YXIgYyxkLGUsZj1uLl9kYXRhKGEpLGc9bi5fZGF0YShiLGYpLGg9Zi5ldmVudHM7aWYoaCl7ZGVsZXRlIGcuaGFuZGxlLGcuZXZlbnRzPXt9O2ZvcihjIGluIGgpZm9yKGQ9MCxlPWhbY10ubGVuZ3RoO2U+ZDtkKyspbi5ldmVudC5hZGQoYixjLGhbY11bZF0pfWcuZGF0YSYmKGcuZGF0YT1uLmV4dGVuZCh7fSxnLmRhdGEpKX19ZnVuY3Rpb24gQ2IoYSxiKXt2YXIgYyxkLGU7aWYoMT09PWIubm9kZVR5cGUpe2lmKGM9Yi5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLCFsLm5vQ2xvbmVFdmVudCYmYltuLmV4cGFuZG9dKXtlPW4uX2RhdGEoYik7Zm9yKGQgaW4gZS5ldmVudHMpbi5yZW1vdmVFdmVudChiLGQsZS5oYW5kbGUpO2IucmVtb3ZlQXR0cmlidXRlKG4uZXhwYW5kbyl9InNjcmlwdCI9PT1jJiZiLnRleHQhPT1hLnRleHQ/KHliKGIpLnRleHQ9YS50ZXh0LHpiKGIpKToib2JqZWN0Ij09PWM/KGIucGFyZW50Tm9kZSYmKGIub3V0ZXJIVE1MPWEub3V0ZXJIVE1MKSxsLmh0bWw1Q2xvbmUmJmEuaW5uZXJIVE1MJiYhbi50cmltKGIuaW5uZXJIVE1MKSYmKGIuaW5uZXJIVE1MPWEuaW5uZXJIVE1MKSk6ImlucHV0Ij09PWMmJlgudGVzdChhLnR5cGUpPyhiLmRlZmF1bHRDaGVja2VkPWIuY2hlY2tlZD1hLmNoZWNrZWQsYi52YWx1ZSE9PWEudmFsdWUmJihiLnZhbHVlPWEudmFsdWUpKToib3B0aW9uIj09PWM/Yi5kZWZhdWx0U2VsZWN0ZWQ9Yi5zZWxlY3RlZD1hLmRlZmF1bHRTZWxlY3RlZDooImlucHV0Ij09PWN8fCJ0ZXh0YXJlYSI9PT1jKSYmKGIuZGVmYXVsdFZhbHVlPWEuZGVmYXVsdFZhbHVlKX19bi5leHRlbmQoe2Nsb25lOmZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlLGYsZyxoLGk9bi5jb250YWlucyhhLm93bmVyRG9jdW1lbnQsYSk7aWYobC5odG1sNUNsb25lfHxuLmlzWE1MRG9jKGEpfHwhaGIudGVzdCgiPCIrYS5ub2RlTmFtZSsiPiIpP2Y9YS5jbG9uZU5vZGUoITApOih1Yi5pbm5lckhUTUw9YS5vdXRlckhUTUwsdWIucmVtb3ZlQ2hpbGQoZj11Yi5maXJzdENoaWxkKSksIShsLm5vQ2xvbmVFdmVudCYmbC5ub0Nsb25lQ2hlY2tlZHx8MSE9PWEubm9kZVR5cGUmJjExIT09YS5ub2RlVHlwZXx8bi5pc1hNTERvYyhhKSkpZm9yKGQ9dmIoZiksaD12YihhKSxnPTA7bnVsbCE9KGU9aFtnXSk7KytnKWRbZ10mJkNiKGUsZFtnXSk7aWYoYilpZihjKWZvcihoPWh8fHZiKGEpLGQ9ZHx8dmIoZiksZz0wO251bGwhPShlPWhbZ10pO2crKylCYihlLGRbZ10pO2Vsc2UgQmIoYSxmKTtyZXR1cm4gZD12YihmLCJzY3JpcHQiKSxkLmxlbmd0aD4wJiZBYihkLCFpJiZ2YihhLCJzY3JpcHQiKSksZD1oPWU9bnVsbCxmfSxidWlsZEZyYWdtZW50OmZ1bmN0aW9uKGEsYixjLGQpe2Zvcih2YXIgZSxmLGcsaCxpLGosayxtPWEubGVuZ3RoLG89ZWIoYikscD1bXSxxPTA7bT5xO3ErKylpZihmPWFbcV0sZnx8MD09PWYpaWYoIm9iamVjdCI9PT1uLnR5cGUoZikpbi5tZXJnZShwLGYubm9kZVR5cGU/W2ZdOmYpO2Vsc2UgaWYobWIudGVzdChmKSl7aD1ofHxvLmFwcGVuZENoaWxkKGIuY3JlYXRlRWxlbWVudCgiZGl2IikpLGk9KGtiLmV4ZWMoZil8fFsiIiwiIl0pWzFdLnRvTG93ZXJDYXNlKCksaz1zYltpXXx8c2IuX2RlZmF1bHQsaC5pbm5lckhUTUw9a1sxXStmLnJlcGxhY2UoamIsIjwkMT48LyQyPiIpK2tbMl0sZT1rWzBdO3doaWxlKGUtLSloPWgubGFzdENoaWxkO2lmKCFsLmxlYWRpbmdXaGl0ZXNwYWNlJiZpYi50ZXN0KGYpJiZwLnB1c2goYi5jcmVhdGVUZXh0Tm9kZShpYi5leGVjKGYpWzBdKSksIWwudGJvZHkpe2Y9InRhYmxlIiE9PWl8fGxiLnRlc3QoZik/Ijx0YWJsZT4iIT09a1sxXXx8bGIudGVzdChmKT8wOmg6aC5maXJzdENoaWxkLGU9ZiYmZi5jaGlsZE5vZGVzLmxlbmd0aDt3aGlsZShlLS0pbi5ub2RlTmFtZShqPWYuY2hpbGROb2Rlc1tlXSwidGJvZHkiKSYmIWouY2hpbGROb2Rlcy5sZW5ndGgmJmYucmVtb3ZlQ2hpbGQoail9bi5tZXJnZShwLGguY2hpbGROb2RlcyksaC50ZXh0Q29udGVudD0iIjt3aGlsZShoLmZpcnN0Q2hpbGQpaC5yZW1vdmVDaGlsZChoLmZpcnN0Q2hpbGQpO2g9by5sYXN0Q2hpbGR9ZWxzZSBwLnB1c2goYi5jcmVhdGVUZXh0Tm9kZShmKSk7aCYmby5yZW1vdmVDaGlsZChoKSxsLmFwcGVuZENoZWNrZWR8fG4uZ3JlcCh2YihwLCJpbnB1dCIpLHdiKSxxPTA7d2hpbGUoZj1wW3ErK10paWYoKCFkfHwtMT09PW4uaW5BcnJheShmLGQpKSYmKGc9bi5jb250YWlucyhmLm93bmVyRG9jdW1lbnQsZiksaD12YihvLmFwcGVuZENoaWxkKGYpLCJzY3JpcHQiKSxnJiZBYihoKSxjKSl7ZT0wO3doaWxlKGY9aFtlKytdKXBiLnRlc3QoZi50eXBlfHwiIikmJmMucHVzaChmKX1yZXR1cm4gaD1udWxsLG99LGNsZWFuRGF0YTpmdW5jdGlvbihhLGIpe2Zvcih2YXIgZCxlLGYsZyxoPTAsaT1uLmV4cGFuZG8saj1uLmNhY2hlLGs9bC5kZWxldGVFeHBhbmRvLG09bi5ldmVudC5zcGVjaWFsO251bGwhPShkPWFbaF0pO2grKylpZigoYnx8bi5hY2NlcHREYXRhKGQpKSYmKGY9ZFtpXSxnPWYmJmpbZl0pKXtpZihnLmV2ZW50cylmb3IoZSBpbiBnLmV2ZW50cyltW2VdP24uZXZlbnQucmVtb3ZlKGQsZSk6bi5yZW1vdmVFdmVudChkLGUsZy5oYW5kbGUpO2pbZl0mJihkZWxldGUgaltmXSxrP2RlbGV0ZSBkW2ldOnR5cGVvZiBkLnJlbW92ZUF0dHJpYnV0ZSE9PUw/ZC5yZW1vdmVBdHRyaWJ1dGUoaSk6ZFtpXT1udWxsLGMucHVzaChmKSl9fX0pLG4uZm4uZXh0ZW5kKHt0ZXh0OmZ1bmN0aW9uKGEpe3JldHVybiBXKHRoaXMsZnVuY3Rpb24oYSl7cmV0dXJuIHZvaWQgMD09PWE/bi50ZXh0KHRoaXMpOnRoaXMuZW1wdHkoKS5hcHBlbmQoKHRoaXNbMF0mJnRoaXNbMF0ub3duZXJEb2N1bWVudHx8eikuY3JlYXRlVGV4dE5vZGUoYSkpfSxudWxsLGEsYXJndW1lbnRzLmxlbmd0aCl9LGFwcGVuZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmRvbU1hbmlwKGFyZ3VtZW50cyxmdW5jdGlvbihhKXtpZigxPT09dGhpcy5ub2RlVHlwZXx8MTE9PT10aGlzLm5vZGVUeXBlfHw5PT09dGhpcy5ub2RlVHlwZSl7dmFyIGI9eGIodGhpcyxhKTtiLmFwcGVuZENoaWxkKGEpfX0pfSxwcmVwZW5kOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZG9tTWFuaXAoYXJndW1lbnRzLGZ1bmN0aW9uKGEpe2lmKDE9PT10aGlzLm5vZGVUeXBlfHwxMT09PXRoaXMubm9kZVR5cGV8fDk9PT10aGlzLm5vZGVUeXBlKXt2YXIgYj14Yih0aGlzLGEpO2IuaW5zZXJ0QmVmb3JlKGEsYi5maXJzdENoaWxkKX19KX0sYmVmb3JlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZG9tTWFuaXAoYXJndW1lbnRzLGZ1bmN0aW9uKGEpe3RoaXMucGFyZW50Tm9kZSYmdGhpcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShhLHRoaXMpfSl9LGFmdGVyOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZG9tTWFuaXAoYXJndW1lbnRzLGZ1bmN0aW9uKGEpe3RoaXMucGFyZW50Tm9kZSYmdGhpcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShhLHRoaXMubmV4dFNpYmxpbmcpfSl9LHJlbW92ZTpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYyxkPWE/bi5maWx0ZXIoYSx0aGlzKTp0aGlzLGU9MDtudWxsIT0oYz1kW2VdKTtlKyspYnx8MSE9PWMubm9kZVR5cGV8fG4uY2xlYW5EYXRhKHZiKGMpKSxjLnBhcmVudE5vZGUmJihiJiZuLmNvbnRhaW5zKGMub3duZXJEb2N1bWVudCxjKSYmQWIodmIoYywic2NyaXB0IikpLGMucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChjKSk7cmV0dXJuIHRoaXN9LGVtcHR5OmZ1bmN0aW9uKCl7Zm9yKHZhciBhLGI9MDtudWxsIT0oYT10aGlzW2JdKTtiKyspezE9PT1hLm5vZGVUeXBlJiZuLmNsZWFuRGF0YSh2YihhLCExKSk7d2hpbGUoYS5maXJzdENoaWxkKWEucmVtb3ZlQ2hpbGQoYS5maXJzdENoaWxkKTthLm9wdGlvbnMmJm4ubm9kZU5hbWUoYSwic2VsZWN0IikmJihhLm9wdGlvbnMubGVuZ3RoPTApfXJldHVybiB0aGlzfSxjbG9uZTpmdW5jdGlvbihhLGIpe3JldHVybiBhPW51bGw9PWE/ITE6YSxiPW51bGw9PWI/YTpiLHRoaXMubWFwKGZ1bmN0aW9uKCl7cmV0dXJuIG4uY2xvbmUodGhpcyxhLGIpfSl9LGh0bWw6ZnVuY3Rpb24oYSl7cmV0dXJuIFcodGhpcyxmdW5jdGlvbihhKXt2YXIgYj10aGlzWzBdfHx7fSxjPTAsZD10aGlzLmxlbmd0aDtpZih2b2lkIDA9PT1hKXJldHVybiAxPT09Yi5ub2RlVHlwZT9iLmlubmVySFRNTC5yZXBsYWNlKGdiLCIiKTp2b2lkIDA7aWYoISgic3RyaW5nIiE9dHlwZW9mIGF8fG5iLnRlc3QoYSl8fCFsLmh0bWxTZXJpYWxpemUmJmhiLnRlc3QoYSl8fCFsLmxlYWRpbmdXaGl0ZXNwYWNlJiZpYi50ZXN0KGEpfHxzYlsoa2IuZXhlYyhhKXx8WyIiLCIiXSlbMV0udG9Mb3dlckNhc2UoKV0pKXthPWEucmVwbGFjZShqYiwiPCQxPjwvJDI+Iik7dHJ5e2Zvcig7ZD5jO2MrKyliPXRoaXNbY118fHt9LDE9PT1iLm5vZGVUeXBlJiYobi5jbGVhbkRhdGEodmIoYiwhMSkpLGIuaW5uZXJIVE1MPWEpO2I9MH1jYXRjaChlKXt9fWImJnRoaXMuZW1wdHkoKS5hcHBlbmQoYSl9LG51bGwsYSxhcmd1bWVudHMubGVuZ3RoKX0scmVwbGFjZVdpdGg6ZnVuY3Rpb24oKXt2YXIgYT1hcmd1bWVudHNbMF07cmV0dXJuIHRoaXMuZG9tTWFuaXAoYXJndW1lbnRzLGZ1bmN0aW9uKGIpe2E9dGhpcy5wYXJlbnROb2RlLG4uY2xlYW5EYXRhKHZiKHRoaXMpKSxhJiZhLnJlcGxhY2VDaGlsZChiLHRoaXMpfSksYSYmKGEubGVuZ3RofHxhLm5vZGVUeXBlKT90aGlzOnRoaXMucmVtb3ZlKCl9LGRldGFjaDpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5yZW1vdmUoYSwhMCl9LGRvbU1hbmlwOmZ1bmN0aW9uKGEsYil7YT1lLmFwcGx5KFtdLGEpO3ZhciBjLGQsZixnLGgsaSxqPTAsaz10aGlzLmxlbmd0aCxtPXRoaXMsbz1rLTEscD1hWzBdLHE9bi5pc0Z1bmN0aW9uKHApO2lmKHF8fGs+MSYmInN0cmluZyI9PXR5cGVvZiBwJiYhbC5jaGVja0Nsb25lJiZvYi50ZXN0KHApKXJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oYyl7dmFyIGQ9bS5lcShjKTtxJiYoYVswXT1wLmNhbGwodGhpcyxjLGQuaHRtbCgpKSksZC5kb21NYW5pcChhLGIpfSk7aWYoayYmKGk9bi5idWlsZEZyYWdtZW50KGEsdGhpc1swXS5vd25lckRvY3VtZW50LCExLHRoaXMpLGM9aS5maXJzdENoaWxkLDE9PT1pLmNoaWxkTm9kZXMubGVuZ3RoJiYoaT1jKSxjKSl7Zm9yKGc9bi5tYXAodmIoaSwic2NyaXB0IikseWIpLGY9Zy5sZW5ndGg7az5qO2orKylkPWksaiE9PW8mJihkPW4uY2xvbmUoZCwhMCwhMCksZiYmbi5tZXJnZShnLHZiKGQsInNjcmlwdCIpKSksYi5jYWxsKHRoaXNbal0sZCxqKTtpZihmKWZvcihoPWdbZy5sZW5ndGgtMV0ub3duZXJEb2N1bWVudCxuLm1hcChnLHpiKSxqPTA7Zj5qO2orKylkPWdbal0scGIudGVzdChkLnR5cGV8fCIiKSYmIW4uX2RhdGEoZCwiZ2xvYmFsRXZhbCIpJiZuLmNvbnRhaW5zKGgsZCkmJihkLnNyYz9uLl9ldmFsVXJsJiZuLl9ldmFsVXJsKGQuc3JjKTpuLmdsb2JhbEV2YWwoKGQudGV4dHx8ZC50ZXh0Q29udGVudHx8ZC5pbm5lckhUTUx8fCIiKS5yZXBsYWNlKHJiLCIiKSkpO2k9Yz1udWxsfXJldHVybiB0aGlzfX0pLG4uZWFjaCh7YXBwZW5kVG86ImFwcGVuZCIscHJlcGVuZFRvOiJwcmVwZW5kIixpbnNlcnRCZWZvcmU6ImJlZm9yZSIsaW5zZXJ0QWZ0ZXI6ImFmdGVyIixyZXBsYWNlQWxsOiJyZXBsYWNlV2l0aCJ9LGZ1bmN0aW9uKGEsYil7bi5mblthXT1mdW5jdGlvbihhKXtmb3IodmFyIGMsZD0wLGU9W10sZz1uKGEpLGg9Zy5sZW5ndGgtMTtoPj1kO2QrKyljPWQ9PT1oP3RoaXM6dGhpcy5jbG9uZSghMCksbihnW2RdKVtiXShjKSxmLmFwcGx5KGUsYy5nZXQoKSk7cmV0dXJuIHRoaXMucHVzaFN0YWNrKGUpfX0pO3ZhciBEYixFYj17fTtmdW5jdGlvbiBGYihiLGMpe3ZhciBkPW4oYy5jcmVhdGVFbGVtZW50KGIpKS5hcHBlbmRUbyhjLmJvZHkpLGU9YS5nZXREZWZhdWx0Q29tcHV0ZWRTdHlsZT9hLmdldERlZmF1bHRDb21wdXRlZFN0eWxlKGRbMF0pLmRpc3BsYXk6bi5jc3MoZFswXSwiZGlzcGxheSIpO3JldHVybiBkLmRldGFjaCgpLGV9ZnVuY3Rpb24gR2IoYSl7dmFyIGI9eixjPUViW2FdO3JldHVybiBjfHwoYz1GYihhLGIpLCJub25lIiE9PWMmJmN8fChEYj0oRGJ8fG4oIjxpZnJhbWUgZnJhbWVib3JkZXI9JzAnIHdpZHRoPScwJyBoZWlnaHQ9JzAnLz4iKSkuYXBwZW5kVG8oYi5kb2N1bWVudEVsZW1lbnQpLGI9KERiWzBdLmNvbnRlbnRXaW5kb3d8fERiWzBdLmNvbnRlbnREb2N1bWVudCkuZG9jdW1lbnQsYi53cml0ZSgpLGIuY2xvc2UoKSxjPUZiKGEsYiksRGIuZGV0YWNoKCkpLEViW2FdPWMpLGN9IWZ1bmN0aW9uKCl7dmFyIGEsYixjPXouY3JlYXRlRWxlbWVudCgiZGl2IiksZD0iLXdlYmtpdC1ib3gtc2l6aW5nOmNvbnRlbnQtYm94Oy1tb3otYm94LXNpemluZzpjb250ZW50LWJveDtib3gtc2l6aW5nOmNvbnRlbnQtYm94O2Rpc3BsYXk6YmxvY2s7cGFkZGluZzowO21hcmdpbjowO2JvcmRlcjowIjtjLmlubmVySFRNTD0iICA8bGluay8+PHRhYmxlPjwvdGFibGU+PGEgaHJlZj0nL2EnPmE8L2E+PGlucHV0IHR5cGU9J2NoZWNrYm94Jy8+IixhPWMuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImEiKVswXSxhLnN0eWxlLmNzc1RleHQ9ImZsb2F0OmxlZnQ7b3BhY2l0eTouNSIsbC5vcGFjaXR5PS9eMC41Ly50ZXN0KGEuc3R5bGUub3BhY2l0eSksbC5jc3NGbG9hdD0hIWEuc3R5bGUuY3NzRmxvYXQsYy5zdHlsZS5iYWNrZ3JvdW5kQ2xpcD0iY29udGVudC1ib3giLGMuY2xvbmVOb2RlKCEwKS5zdHlsZS5iYWNrZ3JvdW5kQ2xpcD0iIixsLmNsZWFyQ2xvbmVTdHlsZT0iY29udGVudC1ib3giPT09Yy5zdHlsZS5iYWNrZ3JvdW5kQ2xpcCxhPWM9bnVsbCxsLnNocmlua1dyYXBCbG9ja3M9ZnVuY3Rpb24oKXt2YXIgYSxjLGUsZjtpZihudWxsPT1iKXtpZihhPXouZ2V0RWxlbWVudHNCeVRhZ05hbWUoImJvZHkiKVswXSwhYSlyZXR1cm47Zj0iYm9yZGVyOjA7d2lkdGg6MDtoZWlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0Oi05OTk5cHgiLGM9ei5jcmVhdGVFbGVtZW50KCJkaXYiKSxlPXouY3JlYXRlRWxlbWVudCgiZGl2IiksYS5hcHBlbmRDaGlsZChjKS5hcHBlbmRDaGlsZChlKSxiPSExLHR5cGVvZiBlLnN0eWxlLnpvb20hPT1MJiYoZS5zdHlsZS5jc3NUZXh0PWQrIjt3aWR0aDoxcHg7cGFkZGluZzoxcHg7em9vbToxIixlLmlubmVySFRNTD0iPGRpdj48L2Rpdj4iLGUuZmlyc3RDaGlsZC5zdHlsZS53aWR0aD0iNXB4IixiPTMhPT1lLm9mZnNldFdpZHRoKSxhLnJlbW92ZUNoaWxkKGMpLGE9Yz1lPW51bGx9cmV0dXJuIGJ9fSgpO3ZhciBIYj0vXm1hcmdpbi8sSWI9bmV3IFJlZ0V4cCgiXigiK1QrIikoPyFweClbYS16JV0rJCIsImkiKSxKYixLYixMYj0vXih0b3B8cmlnaHR8Ym90dG9tfGxlZnQpJC87YS5nZXRDb21wdXRlZFN0eWxlPyhKYj1mdW5jdGlvbihhKXtyZXR1cm4gYS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoYSxudWxsKX0sS2I9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZixnLGg9YS5zdHlsZTtyZXR1cm4gYz1jfHxKYihhKSxnPWM/Yy5nZXRQcm9wZXJ0eVZhbHVlKGIpfHxjW2JdOnZvaWQgMCxjJiYoIiIhPT1nfHxuLmNvbnRhaW5zKGEub3duZXJEb2N1bWVudCxhKXx8KGc9bi5zdHlsZShhLGIpKSxJYi50ZXN0KGcpJiZIYi50ZXN0KGIpJiYoZD1oLndpZHRoLGU9aC5taW5XaWR0aCxmPWgubWF4V2lkdGgsaC5taW5XaWR0aD1oLm1heFdpZHRoPWgud2lkdGg9ZyxnPWMud2lkdGgsaC53aWR0aD1kLGgubWluV2lkdGg9ZSxoLm1heFdpZHRoPWYpKSx2b2lkIDA9PT1nP2c6ZysiIn0pOnouZG9jdW1lbnRFbGVtZW50LmN1cnJlbnRTdHlsZSYmKEpiPWZ1bmN0aW9uKGEpe3JldHVybiBhLmN1cnJlbnRTdHlsZX0sS2I9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZixnLGg9YS5zdHlsZTtyZXR1cm4gYz1jfHxKYihhKSxnPWM/Y1tiXTp2b2lkIDAsbnVsbD09ZyYmaCYmaFtiXSYmKGc9aFtiXSksSWIudGVzdChnKSYmIUxiLnRlc3QoYikmJihkPWgubGVmdCxlPWEucnVudGltZVN0eWxlLGY9ZSYmZS5sZWZ0LGYmJihlLmxlZnQ9YS5jdXJyZW50U3R5bGUubGVmdCksaC5sZWZ0PSJmb250U2l6ZSI9PT1iPyIxZW0iOmcsZz1oLnBpeGVsTGVmdCsicHgiLGgubGVmdD1kLGYmJihlLmxlZnQ9ZikpLHZvaWQgMD09PWc/ZzpnKyIifHwiYXV0byJ9KTtmdW5jdGlvbiBNYihhLGIpe3JldHVybntnZXQ6ZnVuY3Rpb24oKXt2YXIgYz1hKCk7aWYobnVsbCE9YylyZXR1cm4gYz92b2lkIGRlbGV0ZSB0aGlzLmdldDoodGhpcy5nZXQ9YikuYXBwbHkodGhpcyxhcmd1bWVudHMpfX19IWZ1bmN0aW9uKCl7dmFyIGIsYyxkLGUsZixnLGg9ei5jcmVhdGVFbGVtZW50KCJkaXYiKSxpPSJib3JkZXI6MDt3aWR0aDowO2hlaWdodDowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6LTk5OTlweCIsaj0iLXdlYmtpdC1ib3gtc2l6aW5nOmNvbnRlbnQtYm94Oy1tb3otYm94LXNpemluZzpjb250ZW50LWJveDtib3gtc2l6aW5nOmNvbnRlbnQtYm94O2Rpc3BsYXk6YmxvY2s7cGFkZGluZzowO21hcmdpbjowO2JvcmRlcjowIjtoLmlubmVySFRNTD0iICA8bGluay8+PHRhYmxlPjwvdGFibGU+PGEgaHJlZj0nL2EnPmE8L2E+PGlucHV0IHR5cGU9J2NoZWNrYm94Jy8+IixiPWguZ2V0RWxlbWVudHNCeVRhZ05hbWUoImEiKVswXSxiLnN0eWxlLmNzc1RleHQ9ImZsb2F0OmxlZnQ7b3BhY2l0eTouNSIsbC5vcGFjaXR5PS9eMC41Ly50ZXN0KGIuc3R5bGUub3BhY2l0eSksbC5jc3NGbG9hdD0hIWIuc3R5bGUuY3NzRmxvYXQsaC5zdHlsZS5iYWNrZ3JvdW5kQ2xpcD0iY29udGVudC1ib3giLGguY2xvbmVOb2RlKCEwKS5zdHlsZS5iYWNrZ3JvdW5kQ2xpcD0iIixsLmNsZWFyQ2xvbmVTdHlsZT0iY29udGVudC1ib3giPT09aC5zdHlsZS5iYWNrZ3JvdW5kQ2xpcCxiPWg9bnVsbCxuLmV4dGVuZChsLHtyZWxpYWJsZUhpZGRlbk9mZnNldHM6ZnVuY3Rpb24oKXtpZihudWxsIT1jKXJldHVybiBjO3ZhciBhLGIsZCxlPXouY3JlYXRlRWxlbWVudCgiZGl2IiksZj16LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJib2R5IilbMF07aWYoZilyZXR1cm4gZS5zZXRBdHRyaWJ1dGUoImNsYXNzTmFtZSIsInQiKSxlLmlubmVySFRNTD0iICA8bGluay8+PHRhYmxlPjwvdGFibGU+PGEgaHJlZj0nL2EnPmE8L2E+PGlucHV0IHR5cGU9J2NoZWNrYm94Jy8+IixhPXouY3JlYXRlRWxlbWVudCgiZGl2IiksYS5zdHlsZS5jc3NUZXh0PWksZi5hcHBlbmRDaGlsZChhKS5hcHBlbmRDaGlsZChlKSxlLmlubmVySFRNTD0iPHRhYmxlPjx0cj48dGQ+PC90ZD48dGQ+dDwvdGQ+PC90cj48L3RhYmxlPiIsYj1lLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJ0ZCIpLGJbMF0uc3R5bGUuY3NzVGV4dD0icGFkZGluZzowO21hcmdpbjowO2JvcmRlcjowO2Rpc3BsYXk6bm9uZSIsZD0wPT09YlswXS5vZmZzZXRIZWlnaHQsYlswXS5zdHlsZS5kaXNwbGF5PSIiLGJbMV0uc3R5bGUuZGlzcGxheT0ibm9uZSIsYz1kJiYwPT09YlswXS5vZmZzZXRIZWlnaHQsZi5yZW1vdmVDaGlsZChhKSxlPWY9bnVsbCxjfSxib3hTaXppbmc6ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbD09ZCYmaygpLGR9LGJveFNpemluZ1JlbGlhYmxlOmZ1bmN0aW9uKCl7cmV0dXJuIG51bGw9PWUmJmsoKSxlfSxwaXhlbFBvc2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIG51bGw9PWYmJmsoKSxmfSxyZWxpYWJsZU1hcmdpblJpZ2h0OmZ1bmN0aW9uKCl7dmFyIGIsYyxkLGU7aWYobnVsbD09ZyYmYS5nZXRDb21wdXRlZFN0eWxlKXtpZihiPXouZ2V0RWxlbWVudHNCeVRhZ05hbWUoImJvZHkiKVswXSwhYilyZXR1cm47Yz16LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGQ9ei5jcmVhdGVFbGVtZW50KCJkaXYiKSxjLnN0eWxlLmNzc1RleHQ9aSxiLmFwcGVuZENoaWxkKGMpLmFwcGVuZENoaWxkKGQpLGU9ZC5hcHBlbmRDaGlsZCh6LmNyZWF0ZUVsZW1lbnQoImRpdiIpKSxlLnN0eWxlLmNzc1RleHQ9ZC5zdHlsZS5jc3NUZXh0PWosZS5zdHlsZS5tYXJnaW5SaWdodD1lLnN0eWxlLndpZHRoPSIwIixkLnN0eWxlLndpZHRoPSIxcHgiLGc9IXBhcnNlRmxvYXQoKGEuZ2V0Q29tcHV0ZWRTdHlsZShlLG51bGwpfHx7fSkubWFyZ2luUmlnaHQpLGIucmVtb3ZlQ2hpbGQoYyl9cmV0dXJuIGd9fSk7ZnVuY3Rpb24gaygpe3ZhciBiLGMsaD16LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJib2R5IilbMF07aCYmKGI9ei5jcmVhdGVFbGVtZW50KCJkaXYiKSxjPXouY3JlYXRlRWxlbWVudCgiZGl2IiksYi5zdHlsZS5jc3NUZXh0PWksaC5hcHBlbmRDaGlsZChiKS5hcHBlbmRDaGlsZChjKSxjLnN0eWxlLmNzc1RleHQ9Ii13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MXB4O2JvcmRlcjoxcHg7d2lkdGg6NHB4O21hcmdpbi10b3A6MSU7dG9wOjElIixuLnN3YXAoaCxudWxsIT1oLnN0eWxlLnpvb20/e3pvb206MX06e30sZnVuY3Rpb24oKXtkPTQ9PT1jLm9mZnNldFdpZHRofSksZT0hMCxmPSExLGc9ITAsYS5nZXRDb21wdXRlZFN0eWxlJiYoZj0iMSUiIT09KGEuZ2V0Q29tcHV0ZWRTdHlsZShjLG51bGwpfHx7fSkudG9wLGU9IjRweCI9PT0oYS5nZXRDb21wdXRlZFN0eWxlKGMsbnVsbCl8fHt3aWR0aDoiNHB4In0pLndpZHRoKSxoLnJlbW92ZUNoaWxkKGIpLGM9aD1udWxsKX19KCksbi5zd2FwPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlLGYsZz17fTtmb3IoZiBpbiBiKWdbZl09YS5zdHlsZVtmXSxhLnN0eWxlW2ZdPWJbZl07ZT1jLmFwcGx5KGEsZHx8W10pO2ZvcihmIGluIGIpYS5zdHlsZVtmXT1nW2ZdO3JldHVybiBlfTt2YXIgTmI9L2FscGhhXChbXildKlwpL2ksT2I9L29wYWNpdHlccyo9XHMqKFteKV0qKS8sUGI9L14obm9uZXx0YWJsZSg/IS1jW2VhXSkuKykvLFFiPW5ldyBSZWdFeHAoIl4oIitUKyIpKC4qKSQiLCJpIiksUmI9bmV3IFJlZ0V4cCgiXihbKy1dKT0oIitUKyIpIiwiaSIpLFNiPXtwb3NpdGlvbjoiYWJzb2x1dGUiLHZpc2liaWxpdHk6ImhpZGRlbiIsZGlzcGxheToiYmxvY2sifSxUYj17bGV0dGVyU3BhY2luZzowLGZvbnRXZWlnaHQ6NDAwfSxVYj1bIldlYmtpdCIsIk8iLCJNb3oiLCJtcyJdO2Z1bmN0aW9uIFZiKGEsYil7aWYoYiBpbiBhKXJldHVybiBiO3ZhciBjPWIuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrYi5zbGljZSgxKSxkPWIsZT1VYi5sZW5ndGg7d2hpbGUoZS0tKWlmKGI9VWJbZV0rYyxiIGluIGEpcmV0dXJuIGI7cmV0dXJuIGR9ZnVuY3Rpb24gV2IoYSxiKXtmb3IodmFyIGMsZCxlLGY9W10sZz0wLGg9YS5sZW5ndGg7aD5nO2crKylkPWFbZ10sZC5zdHlsZSYmKGZbZ109bi5fZGF0YShkLCJvbGRkaXNwbGF5IiksYz1kLnN0eWxlLmRpc3BsYXksYj8oZltnXXx8Im5vbmUiIT09Y3x8KGQuc3R5bGUuZGlzcGxheT0iIiksIiI9PT1kLnN0eWxlLmRpc3BsYXkmJlYoZCkmJihmW2ddPW4uX2RhdGEoZCwib2xkZGlzcGxheSIsR2IoZC5ub2RlTmFtZSkpKSk6ZltnXXx8KGU9VihkKSwoYyYmIm5vbmUiIT09Y3x8IWUpJiZuLl9kYXRhKGQsIm9sZGRpc3BsYXkiLGU/YzpuLmNzcyhkLCJkaXNwbGF5IikpKSk7Zm9yKGc9MDtoPmc7ZysrKWQ9YVtnXSxkLnN0eWxlJiYoYiYmIm5vbmUiIT09ZC5zdHlsZS5kaXNwbGF5JiYiIiE9PWQuc3R5bGUuZGlzcGxheXx8KGQuc3R5bGUuZGlzcGxheT1iP2ZbZ118fCIiOiJub25lIikpO3JldHVybiBhfWZ1bmN0aW9uIFhiKGEsYixjKXt2YXIgZD1RYi5leGVjKGIpO3JldHVybiBkP01hdGgubWF4KDAsZFsxXS0oY3x8MCkpKyhkWzJdfHwicHgiKTpifWZ1bmN0aW9uIFliKGEsYixjLGQsZSl7Zm9yKHZhciBmPWM9PT0oZD8iYm9yZGVyIjoiY29udGVudCIpPzQ6IndpZHRoIj09PWI/MTowLGc9MDs0PmY7Zis9MikibWFyZ2luIj09PWMmJihnKz1uLmNzcyhhLGMrVVtmXSwhMCxlKSksZD8oImNvbnRlbnQiPT09YyYmKGctPW4uY3NzKGEsInBhZGRpbmciK1VbZl0sITAsZSkpLCJtYXJnaW4iIT09YyYmKGctPW4uY3NzKGEsImJvcmRlciIrVVtmXSsiV2lkdGgiLCEwLGUpKSk6KGcrPW4uY3NzKGEsInBhZGRpbmciK1VbZl0sITAsZSksInBhZGRpbmciIT09YyYmKGcrPW4uY3NzKGEsImJvcmRlciIrVVtmXSsiV2lkdGgiLCEwLGUpKSk7cmV0dXJuIGd9ZnVuY3Rpb24gWmIoYSxiLGMpe3ZhciBkPSEwLGU9IndpZHRoIj09PWI/YS5vZmZzZXRXaWR0aDphLm9mZnNldEhlaWdodCxmPUpiKGEpLGc9bC5ib3hTaXppbmcoKSYmImJvcmRlci1ib3giPT09bi5jc3MoYSwiYm94U2l6aW5nIiwhMSxmKTtpZigwPj1lfHxudWxsPT1lKXtpZihlPUtiKGEsYixmKSwoMD5lfHxudWxsPT1lKSYmKGU9YS5zdHlsZVtiXSksSWIudGVzdChlKSlyZXR1cm4gZTtkPWcmJihsLmJveFNpemluZ1JlbGlhYmxlKCl8fGU9PT1hLnN0eWxlW2JdKSxlPXBhcnNlRmxvYXQoZSl8fDB9cmV0dXJuIGUrWWIoYSxiLGN8fChnPyJib3JkZXIiOiJjb250ZW50IiksZCxmKSsicHgifW4uZXh0ZW5kKHtjc3NIb29rczp7b3BhY2l0eTp7Z2V0OmZ1bmN0aW9uKGEsYil7aWYoYil7dmFyIGM9S2IoYSwib3BhY2l0eSIpO3JldHVybiIiPT09Yz8iMSI6Y319fX0sY3NzTnVtYmVyOntjb2x1bW5Db3VudDohMCxmaWxsT3BhY2l0eTohMCxmb250V2VpZ2h0OiEwLGxpbmVIZWlnaHQ6ITAsb3BhY2l0eTohMCxvcmRlcjohMCxvcnBoYW5zOiEwLHdpZG93czohMCx6SW5kZXg6ITAsem9vbTohMH0sY3NzUHJvcHM6eyJmbG9hdCI6bC5jc3NGbG9hdD8iY3NzRmxvYXQiOiJzdHlsZUZsb2F0In0sc3R5bGU6ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYSYmMyE9PWEubm9kZVR5cGUmJjghPT1hLm5vZGVUeXBlJiZhLnN0eWxlKXt2YXIgZSxmLGcsaD1uLmNhbWVsQ2FzZShiKSxpPWEuc3R5bGU7aWYoYj1uLmNzc1Byb3BzW2hdfHwobi5jc3NQcm9wc1toXT1WYihpLGgpKSxnPW4uY3NzSG9va3NbYl18fG4uY3NzSG9va3NbaF0sdm9pZCAwPT09YylyZXR1cm4gZyYmImdldCJpbiBnJiZ2b2lkIDAhPT0oZT1nLmdldChhLCExLGQpKT9lOmlbYl07aWYoZj10eXBlb2YgYywic3RyaW5nIj09PWYmJihlPVJiLmV4ZWMoYykpJiYoYz0oZVsxXSsxKSplWzJdK3BhcnNlRmxvYXQobi5jc3MoYSxiKSksZj0ibnVtYmVyIiksbnVsbCE9YyYmYz09PWMmJigibnVtYmVyIiE9PWZ8fG4uY3NzTnVtYmVyW2hdfHwoYys9InB4IiksbC5jbGVhckNsb25lU3R5bGV8fCIiIT09Y3x8MCE9PWIuaW5kZXhPZigiYmFja2dyb3VuZCIpfHwoaVtiXT0iaW5oZXJpdCIpLCEoZyYmInNldCJpbiBnJiZ2b2lkIDA9PT0oYz1nLnNldChhLGMsZCkpKSkpdHJ5e2lbYl09IiIsaVtiXT1jfWNhdGNoKGope319fSxjc3M6ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGUsZixnLGg9bi5jYW1lbENhc2UoYik7cmV0dXJuIGI9bi5jc3NQcm9wc1toXXx8KG4uY3NzUHJvcHNbaF09VmIoYS5zdHlsZSxoKSksZz1uLmNzc0hvb2tzW2JdfHxuLmNzc0hvb2tzW2hdLGcmJiJnZXQiaW4gZyYmKGY9Zy5nZXQoYSwhMCxjKSksdm9pZCAwPT09ZiYmKGY9S2IoYSxiLGQpKSwibm9ybWFsIj09PWYmJmIgaW4gVGImJihmPVRiW2JdKSwiIj09PWN8fGM/KGU9cGFyc2VGbG9hdChmKSxjPT09ITB8fG4uaXNOdW1lcmljKGUpP2V8fDA6Zik6Zn19KSxuLmVhY2goWyJoZWlnaHQiLCJ3aWR0aCJdLGZ1bmN0aW9uKGEsYil7bi5jc3NIb29rc1tiXT17Z2V0OmZ1bmN0aW9uKGEsYyxkKXtyZXR1cm4gYz8wPT09YS5vZmZzZXRXaWR0aCYmUGIudGVzdChuLmNzcyhhLCJkaXNwbGF5IikpP24uc3dhcChhLFNiLGZ1bmN0aW9uKCl7cmV0dXJuIFpiKGEsYixkKX0pOlpiKGEsYixkKTp2b2lkIDB9LHNldDpmdW5jdGlvbihhLGMsZCl7dmFyIGU9ZCYmSmIoYSk7cmV0dXJuIFhiKGEsYyxkP1liKGEsYixkLGwuYm94U2l6aW5nKCkmJiJib3JkZXItYm94Ij09PW4uY3NzKGEsImJveFNpemluZyIsITEsZSksZSk6MCl9fX0pLGwub3BhY2l0eXx8KG4uY3NzSG9va3Mub3BhY2l0eT17Z2V0OmZ1bmN0aW9uKGEsYil7cmV0dXJuIE9iLnRlc3QoKGImJmEuY3VycmVudFN0eWxlP2EuY3VycmVudFN0eWxlLmZpbHRlcjphLnN0eWxlLmZpbHRlcil8fCIiKT8uMDEqcGFyc2VGbG9hdChSZWdFeHAuJDEpKyIiOmI/IjEiOiIifSxzZXQ6ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLnN0eWxlLGQ9YS5jdXJyZW50U3R5bGUsZT1uLmlzTnVtZXJpYyhiKT8iYWxwaGEob3BhY2l0eT0iKzEwMCpiKyIpIjoiIixmPWQmJmQuZmlsdGVyfHxjLmZpbHRlcnx8IiI7Yy56b29tPTEsKGI+PTF8fCIiPT09YikmJiIiPT09bi50cmltKGYucmVwbGFjZShOYiwiIikpJiZjLnJlbW92ZUF0dHJpYnV0ZSYmKGMucmVtb3ZlQXR0cmlidXRlKCJmaWx0ZXIiKSwiIj09PWJ8fGQmJiFkLmZpbHRlcil8fChjLmZpbHRlcj1OYi50ZXN0KGYpP2YucmVwbGFjZShOYixlKTpmKyIgIitlKX19KSxuLmNzc0hvb2tzLm1hcmdpblJpZ2h0PU1iKGwucmVsaWFibGVNYXJnaW5SaWdodCxmdW5jdGlvbihhLGIpe3JldHVybiBiP24uc3dhcChhLHtkaXNwbGF5OiJpbmxpbmUtYmxvY2sifSxLYixbYSwibWFyZ2luUmlnaHQiXSk6dm9pZCAwfSksbi5lYWNoKHttYXJnaW46IiIscGFkZGluZzoiIixib3JkZXI6IldpZHRoIn0sZnVuY3Rpb24oYSxiKXtuLmNzc0hvb2tzW2ErYl09e2V4cGFuZDpmdW5jdGlvbihjKXtmb3IodmFyIGQ9MCxlPXt9LGY9InN0cmluZyI9PXR5cGVvZiBjP2Muc3BsaXQoIiAiKTpbY107ND5kO2QrKyllW2ErVVtkXStiXT1mW2RdfHxmW2QtMl18fGZbMF07cmV0dXJuIGV9fSxIYi50ZXN0KGEpfHwobi5jc3NIb29rc1thK2JdLnNldD1YYil9KSxuLmZuLmV4dGVuZCh7Y3NzOmZ1bmN0aW9uKGEsYil7cmV0dXJuIFcodGhpcyxmdW5jdGlvbihhLGIsYyl7dmFyIGQsZSxmPXt9LGc9MDtpZihuLmlzQXJyYXkoYikpe2ZvcihkPUpiKGEpLGU9Yi5sZW5ndGg7ZT5nO2crKylmW2JbZ11dPW4uY3NzKGEsYltnXSwhMSxkKTtyZXR1cm4gZn1yZXR1cm4gdm9pZCAwIT09Yz9uLnN0eWxlKGEsYixjKTpuLmNzcyhhLGIpCn0sYSxiLGFyZ3VtZW50cy5sZW5ndGg+MSl9LHNob3c6ZnVuY3Rpb24oKXtyZXR1cm4gV2IodGhpcywhMCl9LGhpZGU6ZnVuY3Rpb24oKXtyZXR1cm4gV2IodGhpcyl9LHRvZ2dsZTpmdW5jdGlvbihhKXtyZXR1cm4iYm9vbGVhbiI9PXR5cGVvZiBhP2E/dGhpcy5zaG93KCk6dGhpcy5oaWRlKCk6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7Vih0aGlzKT9uKHRoaXMpLnNob3coKTpuKHRoaXMpLmhpZGUoKX0pfX0pO2Z1bmN0aW9uICRiKGEsYixjLGQsZSl7cmV0dXJuIG5ldyAkYi5wcm90b3R5cGUuaW5pdChhLGIsYyxkLGUpfW4uVHdlZW49JGIsJGIucHJvdG90eXBlPXtjb25zdHJ1Y3RvcjokYixpbml0OmZ1bmN0aW9uKGEsYixjLGQsZSxmKXt0aGlzLmVsZW09YSx0aGlzLnByb3A9Yyx0aGlzLmVhc2luZz1lfHwic3dpbmciLHRoaXMub3B0aW9ucz1iLHRoaXMuc3RhcnQ9dGhpcy5ub3c9dGhpcy5jdXIoKSx0aGlzLmVuZD1kLHRoaXMudW5pdD1mfHwobi5jc3NOdW1iZXJbY10/IiI6InB4Iil9LGN1cjpmdW5jdGlvbigpe3ZhciBhPSRiLnByb3BIb29rc1t0aGlzLnByb3BdO3JldHVybiBhJiZhLmdldD9hLmdldCh0aGlzKTokYi5wcm9wSG9va3MuX2RlZmF1bHQuZ2V0KHRoaXMpfSxydW46ZnVuY3Rpb24oYSl7dmFyIGIsYz0kYi5wcm9wSG9va3NbdGhpcy5wcm9wXTtyZXR1cm4gdGhpcy5wb3M9Yj10aGlzLm9wdGlvbnMuZHVyYXRpb24/bi5lYXNpbmdbdGhpcy5lYXNpbmddKGEsdGhpcy5vcHRpb25zLmR1cmF0aW9uKmEsMCwxLHRoaXMub3B0aW9ucy5kdXJhdGlvbik6YSx0aGlzLm5vdz0odGhpcy5lbmQtdGhpcy5zdGFydCkqYit0aGlzLnN0YXJ0LHRoaXMub3B0aW9ucy5zdGVwJiZ0aGlzLm9wdGlvbnMuc3RlcC5jYWxsKHRoaXMuZWxlbSx0aGlzLm5vdyx0aGlzKSxjJiZjLnNldD9jLnNldCh0aGlzKTokYi5wcm9wSG9va3MuX2RlZmF1bHQuc2V0KHRoaXMpLHRoaXN9fSwkYi5wcm90b3R5cGUuaW5pdC5wcm90b3R5cGU9JGIucHJvdG90eXBlLCRiLnByb3BIb29rcz17X2RlZmF1bHQ6e2dldDpmdW5jdGlvbihhKXt2YXIgYjtyZXR1cm4gbnVsbD09YS5lbGVtW2EucHJvcF18fGEuZWxlbS5zdHlsZSYmbnVsbCE9YS5lbGVtLnN0eWxlW2EucHJvcF0/KGI9bi5jc3MoYS5lbGVtLGEucHJvcCwiIiksYiYmImF1dG8iIT09Yj9iOjApOmEuZWxlbVthLnByb3BdfSxzZXQ6ZnVuY3Rpb24oYSl7bi5meC5zdGVwW2EucHJvcF0/bi5meC5zdGVwW2EucHJvcF0oYSk6YS5lbGVtLnN0eWxlJiYobnVsbCE9YS5lbGVtLnN0eWxlW24uY3NzUHJvcHNbYS5wcm9wXV18fG4uY3NzSG9va3NbYS5wcm9wXSk/bi5zdHlsZShhLmVsZW0sYS5wcm9wLGEubm93K2EudW5pdCk6YS5lbGVtW2EucHJvcF09YS5ub3d9fX0sJGIucHJvcEhvb2tzLnNjcm9sbFRvcD0kYi5wcm9wSG9va3Muc2Nyb2xsTGVmdD17c2V0OmZ1bmN0aW9uKGEpe2EuZWxlbS5ub2RlVHlwZSYmYS5lbGVtLnBhcmVudE5vZGUmJihhLmVsZW1bYS5wcm9wXT1hLm5vdyl9fSxuLmVhc2luZz17bGluZWFyOmZ1bmN0aW9uKGEpe3JldHVybiBhfSxzd2luZzpmdW5jdGlvbihhKXtyZXR1cm4uNS1NYXRoLmNvcyhhKk1hdGguUEkpLzJ9fSxuLmZ4PSRiLnByb3RvdHlwZS5pbml0LG4uZnguc3RlcD17fTt2YXIgX2IsYWMsYmM9L14oPzp0b2dnbGV8c2hvd3xoaWRlKSQvLGNjPW5ldyBSZWdFeHAoIl4oPzooWystXSk9fCkoIitUKyIpKFthLXolXSopJCIsImkiKSxkYz0vcXVldWVIb29rcyQvLGVjPVtqY10sZmM9eyIqIjpbZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLmNyZWF0ZVR3ZWVuKGEsYiksZD1jLmN1cigpLGU9Y2MuZXhlYyhiKSxmPWUmJmVbM118fChuLmNzc051bWJlclthXT8iIjoicHgiKSxnPShuLmNzc051bWJlclthXXx8InB4IiE9PWYmJitkKSYmY2MuZXhlYyhuLmNzcyhjLmVsZW0sYSkpLGg9MSxpPTIwO2lmKGcmJmdbM10hPT1mKXtmPWZ8fGdbM10sZT1lfHxbXSxnPStkfHwxO2RvIGg9aHx8Ii41IixnLz1oLG4uc3R5bGUoYy5lbGVtLGEsZytmKTt3aGlsZShoIT09KGg9Yy5jdXIoKS9kKSYmMSE9PWgmJi0taSl9cmV0dXJuIGUmJihnPWMuc3RhcnQ9K2d8fCtkfHwwLGMudW5pdD1mLGMuZW5kPWVbMV0/ZysoZVsxXSsxKSplWzJdOitlWzJdKSxjfV19O2Z1bmN0aW9uIGdjKCl7cmV0dXJuIHNldFRpbWVvdXQoZnVuY3Rpb24oKXtfYj12b2lkIDB9KSxfYj1uLm5vdygpfWZ1bmN0aW9uIGhjKGEsYil7dmFyIGMsZD17aGVpZ2h0OmF9LGU9MDtmb3IoYj1iPzE6MDs0PmU7ZSs9Mi1iKWM9VVtlXSxkWyJtYXJnaW4iK2NdPWRbInBhZGRpbmciK2NdPWE7cmV0dXJuIGImJihkLm9wYWNpdHk9ZC53aWR0aD1hKSxkfWZ1bmN0aW9uIGljKGEsYixjKXtmb3IodmFyIGQsZT0oZmNbYl18fFtdKS5jb25jYXQoZmNbIioiXSksZj0wLGc9ZS5sZW5ndGg7Zz5mO2YrKylpZihkPWVbZl0uY2FsbChjLGIsYSkpcmV0dXJuIGR9ZnVuY3Rpb24gamMoYSxiLGMpe3ZhciBkLGUsZixnLGgsaSxqLGssbT10aGlzLG89e30scD1hLnN0eWxlLHE9YS5ub2RlVHlwZSYmVihhKSxyPW4uX2RhdGEoYSwiZnhzaG93Iik7Yy5xdWV1ZXx8KGg9bi5fcXVldWVIb29rcyhhLCJmeCIpLG51bGw9PWgudW5xdWV1ZWQmJihoLnVucXVldWVkPTAsaT1oLmVtcHR5LmZpcmUsaC5lbXB0eS5maXJlPWZ1bmN0aW9uKCl7aC51bnF1ZXVlZHx8aSgpfSksaC51bnF1ZXVlZCsrLG0uYWx3YXlzKGZ1bmN0aW9uKCl7bS5hbHdheXMoZnVuY3Rpb24oKXtoLnVucXVldWVkLS0sbi5xdWV1ZShhLCJmeCIpLmxlbmd0aHx8aC5lbXB0eS5maXJlKCl9KX0pKSwxPT09YS5ub2RlVHlwZSYmKCJoZWlnaHQiaW4gYnx8IndpZHRoImluIGIpJiYoYy5vdmVyZmxvdz1bcC5vdmVyZmxvdyxwLm92ZXJmbG93WCxwLm92ZXJmbG93WV0saj1uLmNzcyhhLCJkaXNwbGF5Iiksaz1HYihhLm5vZGVOYW1lKSwibm9uZSI9PT1qJiYoaj1rKSwiaW5saW5lIj09PWomJiJub25lIj09PW4uY3NzKGEsImZsb2F0IikmJihsLmlubGluZUJsb2NrTmVlZHNMYXlvdXQmJiJpbmxpbmUiIT09az9wLnpvb209MTpwLmRpc3BsYXk9ImlubGluZS1ibG9jayIpKSxjLm92ZXJmbG93JiYocC5vdmVyZmxvdz0iaGlkZGVuIixsLnNocmlua1dyYXBCbG9ja3MoKXx8bS5hbHdheXMoZnVuY3Rpb24oKXtwLm92ZXJmbG93PWMub3ZlcmZsb3dbMF0scC5vdmVyZmxvd1g9Yy5vdmVyZmxvd1sxXSxwLm92ZXJmbG93WT1jLm92ZXJmbG93WzJdfSkpO2ZvcihkIGluIGIpaWYoZT1iW2RdLGJjLmV4ZWMoZSkpe2lmKGRlbGV0ZSBiW2RdLGY9Znx8InRvZ2dsZSI9PT1lLGU9PT0ocT8iaGlkZSI6InNob3ciKSl7aWYoInNob3ciIT09ZXx8IXJ8fHZvaWQgMD09PXJbZF0pY29udGludWU7cT0hMH1vW2RdPXImJnJbZF18fG4uc3R5bGUoYSxkKX1pZighbi5pc0VtcHR5T2JqZWN0KG8pKXtyPyJoaWRkZW4iaW4gciYmKHE9ci5oaWRkZW4pOnI9bi5fZGF0YShhLCJmeHNob3ciLHt9KSxmJiYoci5oaWRkZW49IXEpLHE/bihhKS5zaG93KCk6bS5kb25lKGZ1bmN0aW9uKCl7bihhKS5oaWRlKCl9KSxtLmRvbmUoZnVuY3Rpb24oKXt2YXIgYjtuLl9yZW1vdmVEYXRhKGEsImZ4c2hvdyIpO2ZvcihiIGluIG8pbi5zdHlsZShhLGIsb1tiXSl9KTtmb3IoZCBpbiBvKWc9aWMocT9yW2RdOjAsZCxtKSxkIGluIHJ8fChyW2RdPWcuc3RhcnQscSYmKGcuZW5kPWcuc3RhcnQsZy5zdGFydD0id2lkdGgiPT09ZHx8ImhlaWdodCI9PT1kPzE6MCkpfX1mdW5jdGlvbiBrYyhhLGIpe3ZhciBjLGQsZSxmLGc7Zm9yKGMgaW4gYSlpZihkPW4uY2FtZWxDYXNlKGMpLGU9YltkXSxmPWFbY10sbi5pc0FycmF5KGYpJiYoZT1mWzFdLGY9YVtjXT1mWzBdKSxjIT09ZCYmKGFbZF09ZixkZWxldGUgYVtjXSksZz1uLmNzc0hvb2tzW2RdLGcmJiJleHBhbmQiaW4gZyl7Zj1nLmV4cGFuZChmKSxkZWxldGUgYVtkXTtmb3IoYyBpbiBmKWMgaW4gYXx8KGFbY109ZltjXSxiW2NdPWUpfWVsc2UgYltkXT1lfWZ1bmN0aW9uIGxjKGEsYixjKXt2YXIgZCxlLGY9MCxnPWVjLmxlbmd0aCxoPW4uRGVmZXJyZWQoKS5hbHdheXMoZnVuY3Rpb24oKXtkZWxldGUgaS5lbGVtfSksaT1mdW5jdGlvbigpe2lmKGUpcmV0dXJuITE7Zm9yKHZhciBiPV9ifHxnYygpLGM9TWF0aC5tYXgoMCxqLnN0YXJ0VGltZStqLmR1cmF0aW9uLWIpLGQ9Yy9qLmR1cmF0aW9ufHwwLGY9MS1kLGc9MCxpPWoudHdlZW5zLmxlbmd0aDtpPmc7ZysrKWoudHdlZW5zW2ddLnJ1bihmKTtyZXR1cm4gaC5ub3RpZnlXaXRoKGEsW2osZixjXSksMT5mJiZpP2M6KGgucmVzb2x2ZVdpdGgoYSxbal0pLCExKX0saj1oLnByb21pc2Uoe2VsZW06YSxwcm9wczpuLmV4dGVuZCh7fSxiKSxvcHRzOm4uZXh0ZW5kKCEwLHtzcGVjaWFsRWFzaW5nOnt9fSxjKSxvcmlnaW5hbFByb3BlcnRpZXM6YixvcmlnaW5hbE9wdGlvbnM6YyxzdGFydFRpbWU6X2J8fGdjKCksZHVyYXRpb246Yy5kdXJhdGlvbix0d2VlbnM6W10sY3JlYXRlVHdlZW46ZnVuY3Rpb24oYixjKXt2YXIgZD1uLlR3ZWVuKGEsai5vcHRzLGIsYyxqLm9wdHMuc3BlY2lhbEVhc2luZ1tiXXx8ai5vcHRzLmVhc2luZyk7cmV0dXJuIGoudHdlZW5zLnB1c2goZCksZH0sc3RvcDpmdW5jdGlvbihiKXt2YXIgYz0wLGQ9Yj9qLnR3ZWVucy5sZW5ndGg6MDtpZihlKXJldHVybiB0aGlzO2ZvcihlPSEwO2Q+YztjKyspai50d2VlbnNbY10ucnVuKDEpO3JldHVybiBiP2gucmVzb2x2ZVdpdGgoYSxbaixiXSk6aC5yZWplY3RXaXRoKGEsW2osYl0pLHRoaXN9fSksaz1qLnByb3BzO2ZvcihrYyhrLGoub3B0cy5zcGVjaWFsRWFzaW5nKTtnPmY7ZisrKWlmKGQ9ZWNbZl0uY2FsbChqLGEsayxqLm9wdHMpKXJldHVybiBkO3JldHVybiBuLm1hcChrLGljLGopLG4uaXNGdW5jdGlvbihqLm9wdHMuc3RhcnQpJiZqLm9wdHMuc3RhcnQuY2FsbChhLGopLG4uZngudGltZXIobi5leHRlbmQoaSx7ZWxlbTphLGFuaW06aixxdWV1ZTpqLm9wdHMucXVldWV9KSksai5wcm9ncmVzcyhqLm9wdHMucHJvZ3Jlc3MpLmRvbmUoai5vcHRzLmRvbmUsai5vcHRzLmNvbXBsZXRlKS5mYWlsKGoub3B0cy5mYWlsKS5hbHdheXMoai5vcHRzLmFsd2F5cyl9bi5BbmltYXRpb249bi5leHRlbmQobGMse3R3ZWVuZXI6ZnVuY3Rpb24oYSxiKXtuLmlzRnVuY3Rpb24oYSk/KGI9YSxhPVsiKiJdKTphPWEuc3BsaXQoIiAiKTtmb3IodmFyIGMsZD0wLGU9YS5sZW5ndGg7ZT5kO2QrKyljPWFbZF0sZmNbY109ZmNbY118fFtdLGZjW2NdLnVuc2hpZnQoYil9LHByZWZpbHRlcjpmdW5jdGlvbihhLGIpe2I/ZWMudW5zaGlmdChhKTplYy5wdXNoKGEpfX0pLG4uc3BlZWQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWEmJiJvYmplY3QiPT10eXBlb2YgYT9uLmV4dGVuZCh7fSxhKTp7Y29tcGxldGU6Y3x8IWMmJmJ8fG4uaXNGdW5jdGlvbihhKSYmYSxkdXJhdGlvbjphLGVhc2luZzpjJiZifHxiJiYhbi5pc0Z1bmN0aW9uKGIpJiZifTtyZXR1cm4gZC5kdXJhdGlvbj1uLmZ4Lm9mZj8wOiJudW1iZXIiPT10eXBlb2YgZC5kdXJhdGlvbj9kLmR1cmF0aW9uOmQuZHVyYXRpb24gaW4gbi5meC5zcGVlZHM/bi5meC5zcGVlZHNbZC5kdXJhdGlvbl06bi5meC5zcGVlZHMuX2RlZmF1bHQsKG51bGw9PWQucXVldWV8fGQucXVldWU9PT0hMCkmJihkLnF1ZXVlPSJmeCIpLGQub2xkPWQuY29tcGxldGUsZC5jb21wbGV0ZT1mdW5jdGlvbigpe24uaXNGdW5jdGlvbihkLm9sZCkmJmQub2xkLmNhbGwodGhpcyksZC5xdWV1ZSYmbi5kZXF1ZXVlKHRoaXMsZC5xdWV1ZSl9LGR9LG4uZm4uZXh0ZW5kKHtmYWRlVG86ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIHRoaXMuZmlsdGVyKFYpLmNzcygib3BhY2l0eSIsMCkuc2hvdygpLmVuZCgpLmFuaW1hdGUoe29wYWNpdHk6Yn0sYSxjLGQpfSxhbmltYXRlOmZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPW4uaXNFbXB0eU9iamVjdChhKSxmPW4uc3BlZWQoYixjLGQpLGc9ZnVuY3Rpb24oKXt2YXIgYj1sYyh0aGlzLG4uZXh0ZW5kKHt9LGEpLGYpOyhlfHxuLl9kYXRhKHRoaXMsImZpbmlzaCIpKSYmYi5zdG9wKCEwKX07cmV0dXJuIGcuZmluaXNoPWcsZXx8Zi5xdWV1ZT09PSExP3RoaXMuZWFjaChnKTp0aGlzLnF1ZXVlKGYucXVldWUsZyl9LHN0b3A6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWZ1bmN0aW9uKGEpe3ZhciBiPWEuc3RvcDtkZWxldGUgYS5zdG9wLGIoYyl9O3JldHVybiJzdHJpbmciIT10eXBlb2YgYSYmKGM9YixiPWEsYT12b2lkIDApLGImJmEhPT0hMSYmdGhpcy5xdWV1ZShhfHwiZngiLFtdKSx0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgYj0hMCxlPW51bGwhPWEmJmErInF1ZXVlSG9va3MiLGY9bi50aW1lcnMsZz1uLl9kYXRhKHRoaXMpO2lmKGUpZ1tlXSYmZ1tlXS5zdG9wJiZkKGdbZV0pO2Vsc2UgZm9yKGUgaW4gZylnW2VdJiZnW2VdLnN0b3AmJmRjLnRlc3QoZSkmJmQoZ1tlXSk7Zm9yKGU9Zi5sZW5ndGg7ZS0tOylmW2VdLmVsZW0hPT10aGlzfHxudWxsIT1hJiZmW2VdLnF1ZXVlIT09YXx8KGZbZV0uYW5pbS5zdG9wKGMpLGI9ITEsZi5zcGxpY2UoZSwxKSk7KGJ8fCFjKSYmbi5kZXF1ZXVlKHRoaXMsYSl9KX0sZmluaXNoOmZ1bmN0aW9uKGEpe3JldHVybiBhIT09ITEmJihhPWF8fCJmeCIpLHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBiLGM9bi5fZGF0YSh0aGlzKSxkPWNbYSsicXVldWUiXSxlPWNbYSsicXVldWVIb29rcyJdLGY9bi50aW1lcnMsZz1kP2QubGVuZ3RoOjA7Zm9yKGMuZmluaXNoPSEwLG4ucXVldWUodGhpcyxhLFtdKSxlJiZlLnN0b3AmJmUuc3RvcC5jYWxsKHRoaXMsITApLGI9Zi5sZW5ndGg7Yi0tOylmW2JdLmVsZW09PT10aGlzJiZmW2JdLnF1ZXVlPT09YSYmKGZbYl0uYW5pbS5zdG9wKCEwKSxmLnNwbGljZShiLDEpKTtmb3IoYj0wO2c+YjtiKyspZFtiXSYmZFtiXS5maW5pc2gmJmRbYl0uZmluaXNoLmNhbGwodGhpcyk7ZGVsZXRlIGMuZmluaXNofSl9fSksbi5lYWNoKFsidG9nZ2xlIiwic2hvdyIsImhpZGUiXSxmdW5jdGlvbihhLGIpe3ZhciBjPW4uZm5bYl07bi5mbltiXT1mdW5jdGlvbihhLGQsZSl7cmV0dXJuIG51bGw9PWF8fCJib29sZWFuIj09dHlwZW9mIGE/Yy5hcHBseSh0aGlzLGFyZ3VtZW50cyk6dGhpcy5hbmltYXRlKGhjKGIsITApLGEsZCxlKX19KSxuLmVhY2goe3NsaWRlRG93bjpoYygic2hvdyIpLHNsaWRlVXA6aGMoImhpZGUiKSxzbGlkZVRvZ2dsZTpoYygidG9nZ2xlIiksZmFkZUluOntvcGFjaXR5OiJzaG93In0sZmFkZU91dDp7b3BhY2l0eToiaGlkZSJ9LGZhZGVUb2dnbGU6e29wYWNpdHk6InRvZ2dsZSJ9fSxmdW5jdGlvbihhLGIpe24uZm5bYV09ZnVuY3Rpb24oYSxjLGQpe3JldHVybiB0aGlzLmFuaW1hdGUoYixhLGMsZCl9fSksbi50aW1lcnM9W10sbi5meC50aWNrPWZ1bmN0aW9uKCl7dmFyIGEsYj1uLnRpbWVycyxjPTA7Zm9yKF9iPW4ubm93KCk7YzxiLmxlbmd0aDtjKyspYT1iW2NdLGEoKXx8YltjXSE9PWF8fGIuc3BsaWNlKGMtLSwxKTtiLmxlbmd0aHx8bi5meC5zdG9wKCksX2I9dm9pZCAwfSxuLmZ4LnRpbWVyPWZ1bmN0aW9uKGEpe24udGltZXJzLnB1c2goYSksYSgpP24uZnguc3RhcnQoKTpuLnRpbWVycy5wb3AoKX0sbi5meC5pbnRlcnZhbD0xMyxuLmZ4LnN0YXJ0PWZ1bmN0aW9uKCl7YWN8fChhYz1zZXRJbnRlcnZhbChuLmZ4LnRpY2ssbi5meC5pbnRlcnZhbCkpfSxuLmZ4LnN0b3A9ZnVuY3Rpb24oKXtjbGVhckludGVydmFsKGFjKSxhYz1udWxsfSxuLmZ4LnNwZWVkcz17c2xvdzo2MDAsZmFzdDoyMDAsX2RlZmF1bHQ6NDAwfSxuLmZuLmRlbGF5PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9bi5meD9uLmZ4LnNwZWVkc1thXXx8YTphLGI9Ynx8ImZ4Iix0aGlzLnF1ZXVlKGIsZnVuY3Rpb24oYixjKXt2YXIgZD1zZXRUaW1lb3V0KGIsYSk7Yy5zdG9wPWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KGQpfX0pfSxmdW5jdGlvbigpe3ZhciBhLGIsYyxkLGU9ei5jcmVhdGVFbGVtZW50KCJkaXYiKTtlLnNldEF0dHJpYnV0ZSgiY2xhc3NOYW1lIiwidCIpLGUuaW5uZXJIVE1MPSIgIDxsaW5rLz48dGFibGU+PC90YWJsZT48YSBocmVmPScvYSc+YTwvYT48aW5wdXQgdHlwZT0nY2hlY2tib3gnLz4iLGE9ZS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYSIpWzBdLGM9ei5jcmVhdGVFbGVtZW50KCJzZWxlY3QiKSxkPWMuYXBwZW5kQ2hpbGQoei5jcmVhdGVFbGVtZW50KCJvcHRpb24iKSksYj1lLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJpbnB1dCIpWzBdLGEuc3R5bGUuY3NzVGV4dD0idG9wOjFweCIsbC5nZXRTZXRBdHRyaWJ1dGU9InQiIT09ZS5jbGFzc05hbWUsbC5zdHlsZT0vdG9wLy50ZXN0KGEuZ2V0QXR0cmlidXRlKCJzdHlsZSIpKSxsLmhyZWZOb3JtYWxpemVkPSIvYSI9PT1hLmdldEF0dHJpYnV0ZSgiaHJlZiIpLGwuY2hlY2tPbj0hIWIudmFsdWUsbC5vcHRTZWxlY3RlZD1kLnNlbGVjdGVkLGwuZW5jdHlwZT0hIXouY3JlYXRlRWxlbWVudCgiZm9ybSIpLmVuY3R5cGUsYy5kaXNhYmxlZD0hMCxsLm9wdERpc2FibGVkPSFkLmRpc2FibGVkLGI9ei5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLGIuc2V0QXR0cmlidXRlKCJ2YWx1ZSIsIiIpLGwuaW5wdXQ9IiI9PT1iLmdldEF0dHJpYnV0ZSgidmFsdWUiKSxiLnZhbHVlPSJ0IixiLnNldEF0dHJpYnV0ZSgidHlwZSIsInJhZGlvIiksbC5yYWRpb1ZhbHVlPSJ0Ij09PWIudmFsdWUsYT1iPWM9ZD1lPW51bGx9KCk7dmFyIG1jPS9cci9nO24uZm4uZXh0ZW5kKHt2YWw6ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGU9dGhpc1swXTt7aWYoYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gZD1uLmlzRnVuY3Rpb24oYSksdGhpcy5lYWNoKGZ1bmN0aW9uKGMpe3ZhciBlOzE9PT10aGlzLm5vZGVUeXBlJiYoZT1kP2EuY2FsbCh0aGlzLGMsbih0aGlzKS52YWwoKSk6YSxudWxsPT1lP2U9IiI6Im51bWJlciI9PXR5cGVvZiBlP2UrPSIiOm4uaXNBcnJheShlKSYmKGU9bi5tYXAoZSxmdW5jdGlvbihhKXtyZXR1cm4gbnVsbD09YT8iIjphKyIifSkpLGI9bi52YWxIb29rc1t0aGlzLnR5cGVdfHxuLnZhbEhvb2tzW3RoaXMubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0sYiYmInNldCJpbiBiJiZ2b2lkIDAhPT1iLnNldCh0aGlzLGUsInZhbHVlIil8fCh0aGlzLnZhbHVlPWUpKX0pO2lmKGUpcmV0dXJuIGI9bi52YWxIb29rc1tlLnR5cGVdfHxuLnZhbEhvb2tzW2Uubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0sYiYmImdldCJpbiBiJiZ2b2lkIDAhPT0oYz1iLmdldChlLCJ2YWx1ZSIpKT9jOihjPWUudmFsdWUsInN0cmluZyI9PXR5cGVvZiBjP2MucmVwbGFjZShtYywiIik6bnVsbD09Yz8iIjpjKX19fSksbi5leHRlbmQoe3ZhbEhvb2tzOntvcHRpb246e2dldDpmdW5jdGlvbihhKXt2YXIgYj1uLmZpbmQuYXR0cihhLCJ2YWx1ZSIpO3JldHVybiBudWxsIT1iP2I6bi50ZXh0KGEpfX0sc2VsZWN0OntnZXQ6ZnVuY3Rpb24oYSl7Zm9yKHZhciBiLGMsZD1hLm9wdGlvbnMsZT1hLnNlbGVjdGVkSW5kZXgsZj0ic2VsZWN0LW9uZSI9PT1hLnR5cGV8fDA+ZSxnPWY/bnVsbDpbXSxoPWY/ZSsxOmQubGVuZ3RoLGk9MD5lP2g6Zj9lOjA7aD5pO2krKylpZihjPWRbaV0sISghYy5zZWxlY3RlZCYmaSE9PWV8fChsLm9wdERpc2FibGVkP2MuZGlzYWJsZWQ6bnVsbCE9PWMuZ2V0QXR0cmlidXRlKCJkaXNhYmxlZCIpKXx8Yy5wYXJlbnROb2RlLmRpc2FibGVkJiZuLm5vZGVOYW1lKGMucGFyZW50Tm9kZSwib3B0Z3JvdXAiKSkpe2lmKGI9bihjKS52YWwoKSxmKXJldHVybiBiO2cucHVzaChiKX1yZXR1cm4gZ30sc2V0OmZ1bmN0aW9uKGEsYil7dmFyIGMsZCxlPWEub3B0aW9ucyxmPW4ubWFrZUFycmF5KGIpLGc9ZS5sZW5ndGg7d2hpbGUoZy0tKWlmKGQ9ZVtnXSxuLmluQXJyYXkobi52YWxIb29rcy5vcHRpb24uZ2V0KGQpLGYpPj0wKXRyeXtkLnNlbGVjdGVkPWM9ITB9Y2F0Y2goaCl7ZC5zY3JvbGxIZWlnaHR9ZWxzZSBkLnNlbGVjdGVkPSExO3JldHVybiBjfHwoYS5zZWxlY3RlZEluZGV4PS0xKSxlfX19fSksbi5lYWNoKFsicmFkaW8iLCJjaGVja2JveCJdLGZ1bmN0aW9uKCl7bi52YWxIb29rc1t0aGlzXT17c2V0OmZ1bmN0aW9uKGEsYil7cmV0dXJuIG4uaXNBcnJheShiKT9hLmNoZWNrZWQ9bi5pbkFycmF5KG4oYSkudmFsKCksYik+PTA6dm9pZCAwfX0sbC5jaGVja09ufHwobi52YWxIb29rc1t0aGlzXS5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIG51bGw9PT1hLmdldEF0dHJpYnV0ZSgidmFsdWUiKT8ib24iOmEudmFsdWV9KX0pO3ZhciBuYyxvYyxwYz1uLmV4cHIuYXR0ckhhbmRsZSxxYz0vXig/OmNoZWNrZWR8c2VsZWN0ZWQpJC9pLHJjPWwuZ2V0U2V0QXR0cmlidXRlLHNjPWwuaW5wdXQ7bi5mbi5leHRlbmQoe2F0dHI6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gVyh0aGlzLG4uYXR0cixhLGIsYXJndW1lbnRzLmxlbmd0aD4xKX0scmVtb3ZlQXR0cjpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7bi5yZW1vdmVBdHRyKHRoaXMsYSl9KX19KSxuLmV4dGVuZCh7YXR0cjpmdW5jdGlvbihhLGIsYyl7dmFyIGQsZSxmPWEubm9kZVR5cGU7aWYoYSYmMyE9PWYmJjghPT1mJiYyIT09ZilyZXR1cm4gdHlwZW9mIGEuZ2V0QXR0cmlidXRlPT09TD9uLnByb3AoYSxiLGMpOigxPT09ZiYmbi5pc1hNTERvYyhhKXx8KGI9Yi50b0xvd2VyQ2FzZSgpLGQ9bi5hdHRySG9va3NbYl18fChuLmV4cHIubWF0Y2guYm9vbC50ZXN0KGIpP29jOm5jKSksdm9pZCAwPT09Yz9kJiYiZ2V0ImluIGQmJm51bGwhPT0oZT1kLmdldChhLGIpKT9lOihlPW4uZmluZC5hdHRyKGEsYiksbnVsbD09ZT92b2lkIDA6ZSk6bnVsbCE9PWM/ZCYmInNldCJpbiBkJiZ2b2lkIDAhPT0oZT1kLnNldChhLGMsYikpP2U6KGEuc2V0QXR0cmlidXRlKGIsYysiIiksYyk6dm9pZCBuLnJlbW92ZUF0dHIoYSxiKSl9LHJlbW92ZUF0dHI6ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGU9MCxmPWImJmIubWF0Y2goRik7aWYoZiYmMT09PWEubm9kZVR5cGUpd2hpbGUoYz1mW2UrK10pZD1uLnByb3BGaXhbY118fGMsbi5leHByLm1hdGNoLmJvb2wudGVzdChjKT9zYyYmcmN8fCFxYy50ZXN0KGMpP2FbZF09ITE6YVtuLmNhbWVsQ2FzZSgiZGVmYXVsdC0iK2MpXT1hW2RdPSExOm4uYXR0cihhLGMsIiIpLGEucmVtb3ZlQXR0cmlidXRlKHJjP2M6ZCl9LGF0dHJIb29rczp7dHlwZTp7c2V0OmZ1bmN0aW9uKGEsYil7aWYoIWwucmFkaW9WYWx1ZSYmInJhZGlvIj09PWImJm4ubm9kZU5hbWUoYSwiaW5wdXQiKSl7dmFyIGM9YS52YWx1ZTtyZXR1cm4gYS5zZXRBdHRyaWJ1dGUoInR5cGUiLGIpLGMmJihhLnZhbHVlPWMpLGJ9fX19fSksb2M9e3NldDpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIGI9PT0hMT9uLnJlbW92ZUF0dHIoYSxjKTpzYyYmcmN8fCFxYy50ZXN0KGMpP2Euc2V0QXR0cmlidXRlKCFyYyYmbi5wcm9wRml4W2NdfHxjLGMpOmFbbi5jYW1lbENhc2UoImRlZmF1bHQtIitjKV09YVtjXT0hMCxjfX0sbi5lYWNoKG4uZXhwci5tYXRjaC5ib29sLnNvdXJjZS5tYXRjaCgvXHcrL2cpLGZ1bmN0aW9uKGEsYil7dmFyIGM9cGNbYl18fG4uZmluZC5hdHRyO3BjW2JdPXNjJiZyY3x8IXFjLnRlc3QoYik/ZnVuY3Rpb24oYSxiLGQpe3ZhciBlLGY7cmV0dXJuIGR8fChmPXBjW2JdLHBjW2JdPWUsZT1udWxsIT1jKGEsYixkKT9iLnRvTG93ZXJDYXNlKCk6bnVsbCxwY1tiXT1mKSxlfTpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIGM/dm9pZCAwOmFbbi5jYW1lbENhc2UoImRlZmF1bHQtIitiKV0/Yi50b0xvd2VyQ2FzZSgpOm51bGx9fSksc2MmJnJjfHwobi5hdHRySG9va3MudmFsdWU9e3NldDpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIG4ubm9kZU5hbWUoYSwiaW5wdXQiKT92b2lkKGEuZGVmYXVsdFZhbHVlPWIpOm5jJiZuYy5zZXQoYSxiLGMpfX0pLHJjfHwobmM9e3NldDpmdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS5nZXRBdHRyaWJ1dGVOb2RlKGMpO3JldHVybiBkfHxhLnNldEF0dHJpYnV0ZU5vZGUoZD1hLm93bmVyRG9jdW1lbnQuY3JlYXRlQXR0cmlidXRlKGMpKSxkLnZhbHVlPWIrPSIiLCJ2YWx1ZSI9PT1jfHxiPT09YS5nZXRBdHRyaWJ1dGUoYyk/Yjp2b2lkIDB9fSxwYy5pZD1wYy5uYW1lPXBjLmNvb3Jkcz1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7cmV0dXJuIGM/dm9pZCAwOihkPWEuZ2V0QXR0cmlidXRlTm9kZShiKSkmJiIiIT09ZC52YWx1ZT9kLnZhbHVlOm51bGx9LG4udmFsSG9va3MuYnV0dG9uPXtnZXQ6ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLmdldEF0dHJpYnV0ZU5vZGUoYik7cmV0dXJuIGMmJmMuc3BlY2lmaWVkP2MudmFsdWU6dm9pZCAwfSxzZXQ6bmMuc2V0fSxuLmF0dHJIb29rcy5jb250ZW50ZWRpdGFibGU9e3NldDpmdW5jdGlvbihhLGIsYyl7bmMuc2V0KGEsIiI9PT1iPyExOmIsYyl9fSxuLmVhY2goWyJ3aWR0aCIsImhlaWdodCJdLGZ1bmN0aW9uKGEsYil7bi5hdHRySG9va3NbYl09e3NldDpmdW5jdGlvbihhLGMpe3JldHVybiIiPT09Yz8oYS5zZXRBdHRyaWJ1dGUoYiwiYXV0byIpLGMpOnZvaWQgMH19fSkpLGwuc3R5bGV8fChuLmF0dHJIb29rcy5zdHlsZT17Z2V0OmZ1bmN0aW9uKGEpe3JldHVybiBhLnN0eWxlLmNzc1RleHR8fHZvaWQgMH0sc2V0OmZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuc3R5bGUuY3NzVGV4dD1iKyIifX0pO3ZhciB0Yz0vXig/OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b258b2JqZWN0KSQvaSx1Yz0vXig/OmF8YXJlYSkkL2k7bi5mbi5leHRlbmQoe3Byb3A6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gVyh0aGlzLG4ucHJvcCxhLGIsYXJndW1lbnRzLmxlbmd0aD4xKX0scmVtb3ZlUHJvcDpmdW5jdGlvbihhKXtyZXR1cm4gYT1uLnByb3BGaXhbYV18fGEsdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dHJ5e3RoaXNbYV09dm9pZCAwLGRlbGV0ZSB0aGlzW2FdfWNhdGNoKGIpe319KX19KSxuLmV4dGVuZCh7cHJvcEZpeDp7ImZvciI6Imh0bWxGb3IiLCJjbGFzcyI6ImNsYXNzTmFtZSJ9LHByb3A6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZixnPWEubm9kZVR5cGU7aWYoYSYmMyE9PWcmJjghPT1nJiYyIT09ZylyZXR1cm4gZj0xIT09Z3x8IW4uaXNYTUxEb2MoYSksZiYmKGI9bi5wcm9wRml4W2JdfHxiLGU9bi5wcm9wSG9va3NbYl0pLHZvaWQgMCE9PWM/ZSYmInNldCJpbiBlJiZ2b2lkIDAhPT0oZD1lLnNldChhLGMsYikpP2Q6YVtiXT1jOmUmJiJnZXQiaW4gZSYmbnVsbCE9PShkPWUuZ2V0KGEsYikpP2Q6YVtiXX0scHJvcEhvb2tzOnt0YWJJbmRleDp7Z2V0OmZ1bmN0aW9uKGEpe3ZhciBiPW4uZmluZC5hdHRyKGEsInRhYmluZGV4Iik7cmV0dXJuIGI/cGFyc2VJbnQoYiwxMCk6dGMudGVzdChhLm5vZGVOYW1lKXx8dWMudGVzdChhLm5vZGVOYW1lKSYmYS5ocmVmPzA6LTF9fX19KSxsLmhyZWZOb3JtYWxpemVkfHxuLmVhY2goWyJocmVmIiwic3JjIl0sZnVuY3Rpb24oYSxiKXtuLnByb3BIb29rc1tiXT17Z2V0OmZ1bmN0aW9uKGEpe3JldHVybiBhLmdldEF0dHJpYnV0ZShiLDQpfX19KSxsLm9wdFNlbGVjdGVkfHwobi5wcm9wSG9va3Muc2VsZWN0ZWQ9e2dldDpmdW5jdGlvbihhKXt2YXIgYj1hLnBhcmVudE5vZGU7cmV0dXJuIGImJihiLnNlbGVjdGVkSW5kZXgsYi5wYXJlbnROb2RlJiZiLnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCksbnVsbH19KSxuLmVhY2goWyJ0YWJJbmRleCIsInJlYWRPbmx5IiwibWF4TGVuZ3RoIiwiY2VsbFNwYWNpbmciLCJjZWxsUGFkZGluZyIsInJvd1NwYW4iLCJjb2xTcGFuIiwidXNlTWFwIiwiZnJhbWVCb3JkZXIiLCJjb250ZW50RWRpdGFibGUiXSxmdW5jdGlvbigpe24ucHJvcEZpeFt0aGlzLnRvTG93ZXJDYXNlKCldPXRoaXN9KSxsLmVuY3R5cGV8fChuLnByb3BGaXguZW5jdHlwZT0iZW5jb2RpbmciKTt2YXIgdmM9L1tcdFxyXG5cZl0vZztuLmZuLmV4dGVuZCh7YWRkQ2xhc3M6ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGUsZixnLGg9MCxpPXRoaXMubGVuZ3RoLGo9InN0cmluZyI9PXR5cGVvZiBhJiZhO2lmKG4uaXNGdW5jdGlvbihhKSlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKGIpe24odGhpcykuYWRkQ2xhc3MoYS5jYWxsKHRoaXMsYix0aGlzLmNsYXNzTmFtZSkpfSk7aWYoailmb3IoYj0oYXx8IiIpLm1hdGNoKEYpfHxbXTtpPmg7aCsrKWlmKGM9dGhpc1toXSxkPTE9PT1jLm5vZGVUeXBlJiYoYy5jbGFzc05hbWU/KCIgIitjLmNsYXNzTmFtZSsiICIpLnJlcGxhY2UodmMsIiAiKToiICIpKXtmPTA7d2hpbGUoZT1iW2YrK10pZC5pbmRleE9mKCIgIitlKyIgIik8MCYmKGQrPWUrIiAiKTtnPW4udHJpbShkKSxjLmNsYXNzTmFtZSE9PWcmJihjLmNsYXNzTmFtZT1nKX1yZXR1cm4gdGhpc30scmVtb3ZlQ2xhc3M6ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGUsZixnLGg9MCxpPXRoaXMubGVuZ3RoLGo9MD09PWFyZ3VtZW50cy5sZW5ndGh8fCJzdHJpbmciPT10eXBlb2YgYSYmYTtpZihuLmlzRnVuY3Rpb24oYSkpcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbihiKXtuKHRoaXMpLnJlbW92ZUNsYXNzKGEuY2FsbCh0aGlzLGIsdGhpcy5jbGFzc05hbWUpKX0pO2lmKGopZm9yKGI9KGF8fCIiKS5tYXRjaChGKXx8W107aT5oO2grKylpZihjPXRoaXNbaF0sZD0xPT09Yy5ub2RlVHlwZSYmKGMuY2xhc3NOYW1lPygiICIrYy5jbGFzc05hbWUrIiAiKS5yZXBsYWNlKHZjLCIgIik6IiIpKXtmPTA7d2hpbGUoZT1iW2YrK10pd2hpbGUoZC5pbmRleE9mKCIgIitlKyIgIik+PTApZD1kLnJlcGxhY2UoIiAiK2UrIiAiLCIgIik7Zz1hP24udHJpbShkKToiIixjLmNsYXNzTmFtZSE9PWcmJihjLmNsYXNzTmFtZT1nKX1yZXR1cm4gdGhpc30sdG9nZ2xlQ2xhc3M6ZnVuY3Rpb24oYSxiKXt2YXIgYz10eXBlb2YgYTtyZXR1cm4iYm9vbGVhbiI9PXR5cGVvZiBiJiYic3RyaW5nIj09PWM/Yj90aGlzLmFkZENsYXNzKGEpOnRoaXMucmVtb3ZlQ2xhc3MoYSk6dGhpcy5lYWNoKG4uaXNGdW5jdGlvbihhKT9mdW5jdGlvbihjKXtuKHRoaXMpLnRvZ2dsZUNsYXNzKGEuY2FsbCh0aGlzLGMsdGhpcy5jbGFzc05hbWUsYiksYil9OmZ1bmN0aW9uKCl7aWYoInN0cmluZyI9PT1jKXt2YXIgYixkPTAsZT1uKHRoaXMpLGY9YS5tYXRjaChGKXx8W107d2hpbGUoYj1mW2QrK10pZS5oYXNDbGFzcyhiKT9lLnJlbW92ZUNsYXNzKGIpOmUuYWRkQ2xhc3MoYil9ZWxzZShjPT09THx8ImJvb2xlYW4iPT09YykmJih0aGlzLmNsYXNzTmFtZSYmbi5fZGF0YSh0aGlzLCJfX2NsYXNzTmFtZV9fIix0aGlzLmNsYXNzTmFtZSksdGhpcy5jbGFzc05hbWU9dGhpcy5jbGFzc05hbWV8fGE9PT0hMT8iIjpuLl9kYXRhKHRoaXMsIl9fY2xhc3NOYW1lX18iKXx8IiIpfSl9LGhhc0NsYXNzOmZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0iICIrYSsiICIsYz0wLGQ9dGhpcy5sZW5ndGg7ZD5jO2MrKylpZigxPT09dGhpc1tjXS5ub2RlVHlwZSYmKCIgIit0aGlzW2NdLmNsYXNzTmFtZSsiICIpLnJlcGxhY2UodmMsIiAiKS5pbmRleE9mKGIpPj0wKXJldHVybiEwO3JldHVybiExfX0pLG4uZWFjaCgiYmx1ciBmb2N1cyBmb2N1c2luIGZvY3Vzb3V0IGxvYWQgcmVzaXplIHNjcm9sbCB1bmxvYWQgY2xpY2sgZGJsY2xpY2sgbW91c2Vkb3duIG1vdXNldXAgbW91c2Vtb3ZlIG1vdXNlb3ZlciBtb3VzZW91dCBtb3VzZWVudGVyIG1vdXNlbGVhdmUgY2hhbmdlIHNlbGVjdCBzdWJtaXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBlcnJvciBjb250ZXh0bWVudSIuc3BsaXQoIiAiKSxmdW5jdGlvbihhLGIpe24uZm5bYl09ZnVuY3Rpb24oYSxjKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD4wP3RoaXMub24oYixudWxsLGEsYyk6dGhpcy50cmlnZ2VyKGIpfX0pLG4uZm4uZXh0ZW5kKHtob3ZlcjpmdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLm1vdXNlZW50ZXIoYSkubW91c2VsZWF2ZShifHxhKX0sYmluZDpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIHRoaXMub24oYSxudWxsLGIsYyl9LHVuYmluZDpmdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLm9mZihhLG51bGwsYil9LGRlbGVnYXRlOmZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiB0aGlzLm9uKGIsYSxjLGQpfSx1bmRlbGVnYXRlOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gMT09PWFyZ3VtZW50cy5sZW5ndGg/dGhpcy5vZmYoYSwiKioiKTp0aGlzLm9mZihiLGF8fCIqKiIsYyl9fSk7dmFyIHdjPW4ubm93KCkseGM9L1w/Lyx5Yz0vKCwpfChcW3x7KXwofXxdKXwiKD86W14iXFxcclxuXXxcXFsiXFxcL2JmbnJ0XXxcXHVbXGRhLWZBLUZdezR9KSoiXHMqOj98dHJ1ZXxmYWxzZXxudWxsfC0/KD8hMFxkKVxkKyg/OlwuXGQrfCkoPzpbZUVdWystXT9cZCt8KS9nO24ucGFyc2VKU09OPWZ1bmN0aW9uKGIpe2lmKGEuSlNPTiYmYS5KU09OLnBhcnNlKXJldHVybiBhLkpTT04ucGFyc2UoYisiIik7dmFyIGMsZD1udWxsLGU9bi50cmltKGIrIiIpO3JldHVybiBlJiYhbi50cmltKGUucmVwbGFjZSh5YyxmdW5jdGlvbihhLGIsZSxmKXtyZXR1cm4gYyYmYiYmKGQ9MCksMD09PWQ/YTooYz1lfHxiLGQrPSFmLSFlLCIiKX0pKT9GdW5jdGlvbigicmV0dXJuICIrZSkoKTpuLmVycm9yKCJJbnZhbGlkIEpTT046ICIrYil9LG4ucGFyc2VYTUw9ZnVuY3Rpb24oYil7dmFyIGMsZDtpZighYnx8InN0cmluZyIhPXR5cGVvZiBiKXJldHVybiBudWxsO3RyeXthLkRPTVBhcnNlcj8oZD1uZXcgRE9NUGFyc2VyLGM9ZC5wYXJzZUZyb21TdHJpbmcoYiwidGV4dC94bWwiKSk6KGM9bmV3IEFjdGl2ZVhPYmplY3QoIk1pY3Jvc29mdC5YTUxET00iKSxjLmFzeW5jPSJmYWxzZSIsYy5sb2FkWE1MKGIpKX1jYXRjaChlKXtjPXZvaWQgMH1yZXR1cm4gYyYmYy5kb2N1bWVudEVsZW1lbnQmJiFjLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJwYXJzZXJlcnJvciIpLmxlbmd0aHx8bi5lcnJvcigiSW52YWxpZCBYTUw6ICIrYiksY307dmFyIHpjLEFjLEJjPS8jLiokLyxDYz0vKFs/Jl0pXz1bXiZdKi8sRGM9L14oLio/KTpbIFx0XSooW15cclxuXSopXHI/JC9nbSxFYz0vXig/OmFib3V0fGFwcHxhcHAtc3RvcmFnZXwuKy1leHRlbnNpb258ZmlsZXxyZXN8d2lkZ2V0KTokLyxGYz0vXig/OkdFVHxIRUFEKSQvLEdjPS9eXC9cLy8sSGM9L14oW1x3ListXSs6KSg/OlwvXC8oPzpbXlwvPyNdKkB8KShbXlwvPyM6XSopKD86OihcZCspfCl8KS8sSWM9e30sSmM9e30sS2M9IiovIi5jb25jYXQoIioiKTt0cnl7QWM9bG9jYXRpb24uaHJlZn1jYXRjaChMYyl7QWM9ei5jcmVhdGVFbGVtZW50KCJhIiksQWMuaHJlZj0iIixBYz1BYy5ocmVmfXpjPUhjLmV4ZWMoQWMudG9Mb3dlckNhc2UoKSl8fFtdO2Z1bmN0aW9uIE1jKGEpe3JldHVybiBmdW5jdGlvbihiLGMpeyJzdHJpbmciIT10eXBlb2YgYiYmKGM9YixiPSIqIik7dmFyIGQsZT0wLGY9Yi50b0xvd2VyQ2FzZSgpLm1hdGNoKEYpfHxbXTtpZihuLmlzRnVuY3Rpb24oYykpd2hpbGUoZD1mW2UrK10pIisiPT09ZC5jaGFyQXQoMCk/KGQ9ZC5zbGljZSgxKXx8IioiLChhW2RdPWFbZF18fFtdKS51bnNoaWZ0KGMpKTooYVtkXT1hW2RdfHxbXSkucHVzaChjKX19ZnVuY3Rpb24gTmMoYSxiLGMsZCl7dmFyIGU9e30sZj1hPT09SmM7ZnVuY3Rpb24gZyhoKXt2YXIgaTtyZXR1cm4gZVtoXT0hMCxuLmVhY2goYVtoXXx8W10sZnVuY3Rpb24oYSxoKXt2YXIgaj1oKGIsYyxkKTtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIGp8fGZ8fGVbal0/Zj8hKGk9aik6dm9pZCAwOihiLmRhdGFUeXBlcy51bnNoaWZ0KGopLGcoaiksITEpfSksaX1yZXR1cm4gZyhiLmRhdGFUeXBlc1swXSl8fCFlWyIqIl0mJmcoIioiKX1mdW5jdGlvbiBPYyhhLGIpe3ZhciBjLGQsZT1uLmFqYXhTZXR0aW5ncy5mbGF0T3B0aW9uc3x8e307Zm9yKGQgaW4gYil2b2lkIDAhPT1iW2RdJiYoKGVbZF0/YTpjfHwoYz17fSkpW2RdPWJbZF0pO3JldHVybiBjJiZuLmV4dGVuZCghMCxhLGMpLGF9ZnVuY3Rpb24gUGMoYSxiLGMpe3ZhciBkLGUsZixnLGg9YS5jb250ZW50cyxpPWEuZGF0YVR5cGVzO3doaWxlKCIqIj09PWlbMF0paS5zaGlmdCgpLHZvaWQgMD09PWUmJihlPWEubWltZVR5cGV8fGIuZ2V0UmVzcG9uc2VIZWFkZXIoIkNvbnRlbnQtVHlwZSIpKTtpZihlKWZvcihnIGluIGgpaWYoaFtnXSYmaFtnXS50ZXN0KGUpKXtpLnVuc2hpZnQoZyk7YnJlYWt9aWYoaVswXWluIGMpZj1pWzBdO2Vsc2V7Zm9yKGcgaW4gYyl7aWYoIWlbMF18fGEuY29udmVydGVyc1tnKyIgIitpWzBdXSl7Zj1nO2JyZWFrfWR8fChkPWcpfWY9Znx8ZH1yZXR1cm4gZj8oZiE9PWlbMF0mJmkudW5zaGlmdChmKSxjW2ZdKTp2b2lkIDB9ZnVuY3Rpb24gUWMoYSxiLGMsZCl7dmFyIGUsZixnLGgsaSxqPXt9LGs9YS5kYXRhVHlwZXMuc2xpY2UoKTtpZihrWzFdKWZvcihnIGluIGEuY29udmVydGVycylqW2cudG9Mb3dlckNhc2UoKV09YS5jb252ZXJ0ZXJzW2ddO2Y9ay5zaGlmdCgpO3doaWxlKGYpaWYoYS5yZXNwb25zZUZpZWxkc1tmXSYmKGNbYS5yZXNwb25zZUZpZWxkc1tmXV09YiksIWkmJmQmJmEuZGF0YUZpbHRlciYmKGI9YS5kYXRhRmlsdGVyKGIsYS5kYXRhVHlwZSkpLGk9ZixmPWsuc2hpZnQoKSlpZigiKiI9PT1mKWY9aTtlbHNlIGlmKCIqIiE9PWkmJmkhPT1mKXtpZihnPWpbaSsiICIrZl18fGpbIiogIitmXSwhZylmb3IoZSBpbiBqKWlmKGg9ZS5zcGxpdCgiICIpLGhbMV09PT1mJiYoZz1qW2krIiAiK2hbMF1dfHxqWyIqICIraFswXV0pKXtnPT09ITA/Zz1qW2VdOmpbZV0hPT0hMCYmKGY9aFswXSxrLnVuc2hpZnQoaFsxXSkpO2JyZWFrfWlmKGchPT0hMClpZihnJiZhWyJ0aHJvd3MiXSliPWcoYik7ZWxzZSB0cnl7Yj1nKGIpfWNhdGNoKGwpe3JldHVybntzdGF0ZToicGFyc2VyZXJyb3IiLGVycm9yOmc/bDoiTm8gY29udmVyc2lvbiBmcm9tICIraSsiIHRvICIrZn19fXJldHVybntzdGF0ZToic3VjY2VzcyIsZGF0YTpifX1uLmV4dGVuZCh7YWN0aXZlOjAsbGFzdE1vZGlmaWVkOnt9LGV0YWc6e30sYWpheFNldHRpbmdzOnt1cmw6QWMsdHlwZToiR0VUIixpc0xvY2FsOkVjLnRlc3QoemNbMV0pLGdsb2JhbDohMCxwcm9jZXNzRGF0YTohMCxhc3luYzohMCxjb250ZW50VHlwZToiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkOyBjaGFyc2V0PVVURi04IixhY2NlcHRzOnsiKiI6S2MsdGV4dDoidGV4dC9wbGFpbiIsaHRtbDoidGV4dC9odG1sIix4bWw6ImFwcGxpY2F0aW9uL3htbCwgdGV4dC94bWwiLGpzb246ImFwcGxpY2F0aW9uL2pzb24sIHRleHQvamF2YXNjcmlwdCJ9LGNvbnRlbnRzOnt4bWw6L3htbC8saHRtbDovaHRtbC8sanNvbjovanNvbi99LHJlc3BvbnNlRmllbGRzOnt4bWw6InJlc3BvbnNlWE1MIix0ZXh0OiJyZXNwb25zZVRleHQiLGpzb246InJlc3BvbnNlSlNPTiJ9LGNvbnZlcnRlcnM6eyIqIHRleHQiOlN0cmluZywidGV4dCBodG1sIjohMCwidGV4dCBqc29uIjpuLnBhcnNlSlNPTiwidGV4dCB4bWwiOm4ucGFyc2VYTUx9LGZsYXRPcHRpb25zOnt1cmw6ITAsY29udGV4dDohMH19LGFqYXhTZXR1cDpmdW5jdGlvbihhLGIpe3JldHVybiBiP09jKE9jKGEsbi5hamF4U2V0dGluZ3MpLGIpOk9jKG4uYWpheFNldHRpbmdzLGEpfSxhamF4UHJlZmlsdGVyOk1jKEljKSxhamF4VHJhbnNwb3J0Ok1jKEpjKSxhamF4OmZ1bmN0aW9uKGEsYil7Im9iamVjdCI9PXR5cGVvZiBhJiYoYj1hLGE9dm9pZCAwKSxiPWJ8fHt9O3ZhciBjLGQsZSxmLGcsaCxpLGosaz1uLmFqYXhTZXR1cCh7fSxiKSxsPWsuY29udGV4dHx8ayxtPWsuY29udGV4dCYmKGwubm9kZVR5cGV8fGwuanF1ZXJ5KT9uKGwpOm4uZXZlbnQsbz1uLkRlZmVycmVkKCkscD1uLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSxxPWsuc3RhdHVzQ29kZXx8e30scj17fSxzPXt9LHQ9MCx1PSJjYW5jZWxlZCIsdj17cmVhZHlTdGF0ZTowLGdldFJlc3BvbnNlSGVhZGVyOmZ1bmN0aW9uKGEpe3ZhciBiO2lmKDI9PT10KXtpZighail7aj17fTt3aGlsZShiPURjLmV4ZWMoZikpaltiWzFdLnRvTG93ZXJDYXNlKCldPWJbMl19Yj1qW2EudG9Mb3dlckNhc2UoKV19cmV0dXJuIG51bGw9PWI/bnVsbDpifSxnZXRBbGxSZXNwb25zZUhlYWRlcnM6ZnVuY3Rpb24oKXtyZXR1cm4gMj09PXQ/ZjpudWxsfSxzZXRSZXF1ZXN0SGVhZGVyOmZ1bmN0aW9uKGEsYil7dmFyIGM9YS50b0xvd2VyQ2FzZSgpO3JldHVybiB0fHwoYT1zW2NdPXNbY118fGEsclthXT1iKSx0aGlzfSxvdmVycmlkZU1pbWVUeXBlOmZ1bmN0aW9uKGEpe3JldHVybiB0fHwoay5taW1lVHlwZT1hKSx0aGlzfSxzdGF0dXNDb2RlOmZ1bmN0aW9uKGEpe3ZhciBiO2lmKGEpaWYoMj50KWZvcihiIGluIGEpcVtiXT1bcVtiXSxhW2JdXTtlbHNlIHYuYWx3YXlzKGFbdi5zdGF0dXNdKTtyZXR1cm4gdGhpc30sYWJvcnQ6ZnVuY3Rpb24oYSl7dmFyIGI9YXx8dTtyZXR1cm4gaSYmaS5hYm9ydChiKSx4KDAsYiksdGhpc319O2lmKG8ucHJvbWlzZSh2KS5jb21wbGV0ZT1wLmFkZCx2LnN1Y2Nlc3M9di5kb25lLHYuZXJyb3I9di5mYWlsLGsudXJsPSgoYXx8ay51cmx8fEFjKSsiIikucmVwbGFjZShCYywiIikucmVwbGFjZShHYyx6Y1sxXSsiLy8iKSxrLnR5cGU9Yi5tZXRob2R8fGIudHlwZXx8ay5tZXRob2R8fGsudHlwZSxrLmRhdGFUeXBlcz1uLnRyaW0oay5kYXRhVHlwZXx8IioiKS50b0xvd2VyQ2FzZSgpLm1hdGNoKEYpfHxbIiJdLG51bGw9PWsuY3Jvc3NEb21haW4mJihjPUhjLmV4ZWMoay51cmwudG9Mb3dlckNhc2UoKSksay5jcm9zc0RvbWFpbj0hKCFjfHxjWzFdPT09emNbMV0mJmNbMl09PT16Y1syXSYmKGNbM118fCgiaHR0cDoiPT09Y1sxXT8iODAiOiI0NDMiKSk9PT0oemNbM118fCgiaHR0cDoiPT09emNbMV0/IjgwIjoiNDQzIikpKSksay5kYXRhJiZrLnByb2Nlc3NEYXRhJiYic3RyaW5nIiE9dHlwZW9mIGsuZGF0YSYmKGsuZGF0YT1uLnBhcmFtKGsuZGF0YSxrLnRyYWRpdGlvbmFsKSksTmMoSWMsayxiLHYpLDI9PT10KXJldHVybiB2O2g9ay5nbG9iYWwsaCYmMD09PW4uYWN0aXZlKysmJm4uZXZlbnQudHJpZ2dlcigiYWpheFN0YXJ0Iiksay50eXBlPWsudHlwZS50b1VwcGVyQ2FzZSgpLGsuaGFzQ29udGVudD0hRmMudGVzdChrLnR5cGUpLGU9ay51cmwsay5oYXNDb250ZW50fHwoay5kYXRhJiYoZT1rLnVybCs9KHhjLnRlc3QoZSk/IiYiOiI/Iikray5kYXRhLGRlbGV0ZSBrLmRhdGEpLGsuY2FjaGU9PT0hMSYmKGsudXJsPUNjLnRlc3QoZSk/ZS5yZXBsYWNlKENjLCIkMV89Iit3YysrKTplKyh4Yy50ZXN0KGUpPyImIjoiPyIpKyJfPSIrd2MrKykpLGsuaWZNb2RpZmllZCYmKG4ubGFzdE1vZGlmaWVkW2VdJiZ2LnNldFJlcXVlc3RIZWFkZXIoIklmLU1vZGlmaWVkLVNpbmNlIixuLmxhc3RNb2RpZmllZFtlXSksbi5ldGFnW2VdJiZ2LnNldFJlcXVlc3RIZWFkZXIoIklmLU5vbmUtTWF0Y2giLG4uZXRhZ1tlXSkpLChrLmRhdGEmJmsuaGFzQ29udGVudCYmay5jb250ZW50VHlwZSE9PSExfHxiLmNvbnRlbnRUeXBlKSYmdi5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LVR5cGUiLGsuY29udGVudFR5cGUpLHYuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IixrLmRhdGFUeXBlc1swXSYmay5hY2NlcHRzW2suZGF0YVR5cGVzWzBdXT9rLmFjY2VwdHNbay5kYXRhVHlwZXNbMF1dKygiKiIhPT1rLmRhdGFUeXBlc1swXT8iLCAiK0tjKyI7IHE9MC4wMSI6IiIpOmsuYWNjZXB0c1siKiJdKTtmb3IoZCBpbiBrLmhlYWRlcnMpdi5zZXRSZXF1ZXN0SGVhZGVyKGQsay5oZWFkZXJzW2RdKTtpZihrLmJlZm9yZVNlbmQmJihrLmJlZm9yZVNlbmQuY2FsbChsLHYsayk9PT0hMXx8Mj09PXQpKXJldHVybiB2LmFib3J0KCk7dT0iYWJvcnQiO2ZvcihkIGlue3N1Y2Nlc3M6MSxlcnJvcjoxLGNvbXBsZXRlOjF9KXZbZF0oa1tkXSk7aWYoaT1OYyhKYyxrLGIsdikpe3YucmVhZHlTdGF0ZT0xLGgmJm0udHJpZ2dlcigiYWpheFNlbmQiLFt2LGtdKSxrLmFzeW5jJiZrLnRpbWVvdXQ+MCYmKGc9c2V0VGltZW91dChmdW5jdGlvbigpe3YuYWJvcnQoInRpbWVvdXQiKX0say50aW1lb3V0KSk7dHJ5e3Q9MSxpLnNlbmQocix4KX1jYXRjaCh3KXtpZighKDI+dCkpdGhyb3cgdzt4KC0xLHcpfX1lbHNlIHgoLTEsIk5vIFRyYW5zcG9ydCIpO2Z1bmN0aW9uIHgoYSxiLGMsZCl7dmFyIGoscixzLHUsdyx4PWI7MiE9PXQmJih0PTIsZyYmY2xlYXJUaW1lb3V0KGcpLGk9dm9pZCAwLGY9ZHx8IiIsdi5yZWFkeVN0YXRlPWE+MD80OjAsaj1hPj0yMDAmJjMwMD5hfHwzMDQ9PT1hLGMmJih1PVBjKGssdixjKSksdT1RYyhrLHUsdixqKSxqPyhrLmlmTW9kaWZpZWQmJih3PXYuZ2V0UmVzcG9uc2VIZWFkZXIoIkxhc3QtTW9kaWZpZWQiKSx3JiYobi5sYXN0TW9kaWZpZWRbZV09dyksdz12LmdldFJlc3BvbnNlSGVhZGVyKCJldGFnIiksdyYmKG4uZXRhZ1tlXT13KSksMjA0PT09YXx8IkhFQUQiPT09ay50eXBlP3g9Im5vY29udGVudCI6MzA0PT09YT94PSJub3Rtb2RpZmllZCI6KHg9dS5zdGF0ZSxyPXUuZGF0YSxzPXUuZXJyb3Isaj0hcykpOihzPXgsKGF8fCF4KSYmKHg9ImVycm9yIiwwPmEmJihhPTApKSksdi5zdGF0dXM9YSx2LnN0YXR1c1RleHQ9KGJ8fHgpKyIiLGo/by5yZXNvbHZlV2l0aChsLFtyLHgsdl0pOm8ucmVqZWN0V2l0aChsLFt2LHgsc10pLHYuc3RhdHVzQ29kZShxKSxxPXZvaWQgMCxoJiZtLnRyaWdnZXIoaj8iYWpheFN1Y2Nlc3MiOiJhamF4RXJyb3IiLFt2LGssaj9yOnNdKSxwLmZpcmVXaXRoKGwsW3YseF0pLGgmJihtLnRyaWdnZXIoImFqYXhDb21wbGV0ZSIsW3Ysa10pLC0tbi5hY3RpdmV8fG4uZXZlbnQudHJpZ2dlcigiYWpheFN0b3AiKSkpfXJldHVybiB2fSxnZXRKU09OOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gbi5nZXQoYSxiLGMsImpzb24iKX0sZ2V0U2NyaXB0OmZ1bmN0aW9uKGEsYil7cmV0dXJuIG4uZ2V0KGEsdm9pZCAwLGIsInNjcmlwdCIpfX0pLG4uZWFjaChbImdldCIsInBvc3QiXSxmdW5jdGlvbihhLGIpe25bYl09ZnVuY3Rpb24oYSxjLGQsZSl7cmV0dXJuIG4uaXNGdW5jdGlvbihjKSYmKGU9ZXx8ZCxkPWMsYz12b2lkIDApLG4uYWpheCh7dXJsOmEsdHlwZTpiLGRhdGFUeXBlOmUsZGF0YTpjLHN1Y2Nlc3M6ZH0pfX0pLG4uZWFjaChbImFqYXhTdGFydCIsImFqYXhTdG9wIiwiYWpheENvbXBsZXRlIiwiYWpheEVycm9yIiwiYWpheFN1Y2Nlc3MiLCJhamF4U2VuZCJdLGZ1bmN0aW9uKGEsYil7bi5mbltiXT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5vbihiLGEpfX0pLG4uX2V2YWxVcmw9ZnVuY3Rpb24oYSl7cmV0dXJuIG4uYWpheCh7dXJsOmEsdHlwZToiR0VUIixkYXRhVHlwZToic2NyaXB0Iixhc3luYzohMSxnbG9iYWw6ITEsInRocm93cyI6ITB9KX0sbi5mbi5leHRlbmQoe3dyYXBBbGw6ZnVuY3Rpb24oYSl7aWYobi5pc0Z1bmN0aW9uKGEpKXJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oYil7bih0aGlzKS53cmFwQWxsKGEuY2FsbCh0aGlzLGIpKX0pO2lmKHRoaXNbMF0pe3ZhciBiPW4oYSx0aGlzWzBdLm93bmVyRG9jdW1lbnQpLmVxKDApLmNsb25lKCEwKTt0aGlzWzBdLnBhcmVudE5vZGUmJmIuaW5zZXJ0QmVmb3JlKHRoaXNbMF0pLGIubWFwKGZ1bmN0aW9uKCl7dmFyIGE9dGhpczt3aGlsZShhLmZpcnN0Q2hpbGQmJjE9PT1hLmZpcnN0Q2hpbGQubm9kZVR5cGUpYT1hLmZpcnN0Q2hpbGQ7cmV0dXJuIGF9KS5hcHBlbmQodGhpcyl9cmV0dXJuIHRoaXN9LHdyYXBJbm5lcjpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5lYWNoKG4uaXNGdW5jdGlvbihhKT9mdW5jdGlvbihiKXtuKHRoaXMpLndyYXBJbm5lcihhLmNhbGwodGhpcyxiKSl9OmZ1bmN0aW9uKCl7dmFyIGI9bih0aGlzKSxjPWIuY29udGVudHMoKTtjLmxlbmd0aD9jLndyYXBBbGwoYSk6Yi5hcHBlbmQoYSl9KX0sd3JhcDpmdW5jdGlvbihhKXt2YXIgYj1uLmlzRnVuY3Rpb24oYSk7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbihjKXtuKHRoaXMpLndyYXBBbGwoYj9hLmNhbGwodGhpcyxjKTphKX0pfSx1bndyYXA6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wYXJlbnQoKS5lYWNoKGZ1bmN0aW9uKCl7bi5ub2RlTmFtZSh0aGlzLCJib2R5Iil8fG4odGhpcykucmVwbGFjZVdpdGgodGhpcy5jaGlsZE5vZGVzKX0pLmVuZCgpfX0pLG4uZXhwci5maWx0ZXJzLmhpZGRlbj1mdW5jdGlvbihhKXtyZXR1cm4gYS5vZmZzZXRXaWR0aDw9MCYmYS5vZmZzZXRIZWlnaHQ8PTB8fCFsLnJlbGlhYmxlSGlkZGVuT2Zmc2V0cygpJiYibm9uZSI9PT0oYS5zdHlsZSYmYS5zdHlsZS5kaXNwbGF5fHxuLmNzcyhhLCJkaXNwbGF5IikpfSxuLmV4cHIuZmlsdGVycy52aXNpYmxlPWZ1bmN0aW9uKGEpe3JldHVybiFuLmV4cHIuZmlsdGVycy5oaWRkZW4oYSl9O3ZhciBSYz0vJTIwL2csU2M9L1xbXF0kLyxUYz0vXHI/XG4vZyxVYz0vXig/OnN1Ym1pdHxidXR0b258aW1hZ2V8cmVzZXR8ZmlsZSkkL2ksVmM9L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8a2V5Z2VuKS9pO2Z1bmN0aW9uIFdjKGEsYixjLGQpe3ZhciBlO2lmKG4uaXNBcnJheShiKSluLmVhY2goYixmdW5jdGlvbihiLGUpe2N8fFNjLnRlc3QoYSk/ZChhLGUpOldjKGErIlsiKygib2JqZWN0Ij09dHlwZW9mIGU/YjoiIikrIl0iLGUsYyxkKX0pO2Vsc2UgaWYoY3x8Im9iamVjdCIhPT1uLnR5cGUoYikpZChhLGIpO2Vsc2UgZm9yKGUgaW4gYilXYyhhKyJbIitlKyJdIixiW2VdLGMsZCl9bi5wYXJhbT1mdW5jdGlvbihhLGIpe3ZhciBjLGQ9W10sZT1mdW5jdGlvbihhLGIpe2I9bi5pc0Z1bmN0aW9uKGIpP2IoKTpudWxsPT1iPyIiOmIsZFtkLmxlbmd0aF09ZW5jb2RlVVJJQ29tcG9uZW50KGEpKyI9IitlbmNvZGVVUklDb21wb25lbnQoYil9O2lmKHZvaWQgMD09PWImJihiPW4uYWpheFNldHRpbmdzJiZuLmFqYXhTZXR0aW5ncy50cmFkaXRpb25hbCksbi5pc0FycmF5KGEpfHxhLmpxdWVyeSYmIW4uaXNQbGFpbk9iamVjdChhKSluLmVhY2goYSxmdW5jdGlvbigpe2UodGhpcy5uYW1lLHRoaXMudmFsdWUpfSk7ZWxzZSBmb3IoYyBpbiBhKVdjKGMsYVtjXSxiLGUpO3JldHVybiBkLmpvaW4oIiYiKS5yZXBsYWNlKFJjLCIrIil9LG4uZm4uZXh0ZW5kKHtzZXJpYWxpemU6ZnVuY3Rpb24oKXtyZXR1cm4gbi5wYXJhbSh0aGlzLnNlcmlhbGl6ZUFycmF5KCkpfSxzZXJpYWxpemVBcnJheTpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcChmdW5jdGlvbigpe3ZhciBhPW4ucHJvcCh0aGlzLCJlbGVtZW50cyIpO3JldHVybiBhP24ubWFrZUFycmF5KGEpOnRoaXN9KS5maWx0ZXIoZnVuY3Rpb24oKXt2YXIgYT10aGlzLnR5cGU7cmV0dXJuIHRoaXMubmFtZSYmIW4odGhpcykuaXMoIjpkaXNhYmxlZCIpJiZWYy50ZXN0KHRoaXMubm9kZU5hbWUpJiYhVWMudGVzdChhKSYmKHRoaXMuY2hlY2tlZHx8IVgudGVzdChhKSl9KS5tYXAoZnVuY3Rpb24oYSxiKXt2YXIgYz1uKHRoaXMpLnZhbCgpO3JldHVybiBudWxsPT1jP251bGw6bi5pc0FycmF5KGMpP24ubWFwKGMsZnVuY3Rpb24oYSl7cmV0dXJue25hbWU6Yi5uYW1lLHZhbHVlOmEucmVwbGFjZShUYywiXHJcbiIpfX0pOntuYW1lOmIubmFtZSx2YWx1ZTpjLnJlcGxhY2UoVGMsIlxyXG4iKX19KS5nZXQoKX19KSxuLmFqYXhTZXR0aW5ncy54aHI9dm9pZCAwIT09YS5BY3RpdmVYT2JqZWN0P2Z1bmN0aW9uKCl7cmV0dXJuIXRoaXMuaXNMb2NhbCYmL14oZ2V0fHBvc3R8aGVhZHxwdXR8ZGVsZXRlfG9wdGlvbnMpJC9pLnRlc3QodGhpcy50eXBlKSYmJGMoKXx8X2MoKX06JGM7dmFyIFhjPTAsWWM9e30sWmM9bi5hamF4U2V0dGluZ3MueGhyKCk7YS5BY3RpdmVYT2JqZWN0JiZuKGEpLm9uKCJ1bmxvYWQiLGZ1bmN0aW9uKCl7Zm9yKHZhciBhIGluIFljKVljW2FdKHZvaWQgMCwhMCl9KSxsLmNvcnM9ISFaYyYmIndpdGhDcmVkZW50aWFscyJpbiBaYyxaYz1sLmFqYXg9ISFaYyxaYyYmbi5hamF4VHJhbnNwb3J0KGZ1bmN0aW9uKGEpe2lmKCFhLmNyb3NzRG9tYWlufHxsLmNvcnMpe3ZhciBiO3JldHVybntzZW5kOmZ1bmN0aW9uKGMsZCl7dmFyIGUsZj1hLnhocigpLGc9KytYYztpZihmLm9wZW4oYS50eXBlLGEudXJsLGEuYXN5bmMsYS51c2VybmFtZSxhLnBhc3N3b3JkKSxhLnhockZpZWxkcylmb3IoZSBpbiBhLnhockZpZWxkcylmW2VdPWEueGhyRmllbGRzW2VdO2EubWltZVR5cGUmJmYub3ZlcnJpZGVNaW1lVHlwZSYmZi5vdmVycmlkZU1pbWVUeXBlKGEubWltZVR5cGUpLGEuY3Jvc3NEb21haW58fGNbIlgtUmVxdWVzdGVkLVdpdGgiXXx8KGNbIlgtUmVxdWVzdGVkLVdpdGgiXT0iWE1MSHR0cFJlcXVlc3QiKTtmb3IoZSBpbiBjKXZvaWQgMCE9PWNbZV0mJmYuc2V0UmVxdWVzdEhlYWRlcihlLGNbZV0rIiIpO2Yuc2VuZChhLmhhc0NvbnRlbnQmJmEuZGF0YXx8bnVsbCksYj1mdW5jdGlvbihjLGUpe3ZhciBoLGksajtpZihiJiYoZXx8ND09PWYucmVhZHlTdGF0ZSkpaWYoZGVsZXRlIFljW2ddLGI9dm9pZCAwLGYub25yZWFkeXN0YXRlY2hhbmdlPW4ubm9vcCxlKTQhPT1mLnJlYWR5U3RhdGUmJmYuYWJvcnQoKTtlbHNle2o9e30saD1mLnN0YXR1cywic3RyaW5nIj09dHlwZW9mIGYucmVzcG9uc2VUZXh0JiYoai50ZXh0PWYucmVzcG9uc2VUZXh0KTt0cnl7aT1mLnN0YXR1c1RleHR9Y2F0Y2goayl7aT0iIn1ofHwhYS5pc0xvY2FsfHxhLmNyb3NzRG9tYWluPzEyMjM9PT1oJiYoaD0yMDQpOmg9ai50ZXh0PzIwMDo0MDR9aiYmZChoLGksaixmLmdldEFsbFJlc3BvbnNlSGVhZGVycygpKX0sYS5hc3luYz80PT09Zi5yZWFkeVN0YXRlP3NldFRpbWVvdXQoYik6Zi5vbnJlYWR5c3RhdGVjaGFuZ2U9WWNbZ109YjpiKCl9LGFib3J0OmZ1bmN0aW9uKCl7YiYmYih2b2lkIDAsITApfX19fSk7ZnVuY3Rpb24gJGMoKXt0cnl7cmV0dXJuIG5ldyBhLlhNTEh0dHBSZXF1ZXN0fWNhdGNoKGIpe319ZnVuY3Rpb24gX2MoKXt0cnl7cmV0dXJuIG5ldyBhLkFjdGl2ZVhPYmplY3QoIk1pY3Jvc29mdC5YTUxIVFRQIil9Y2F0Y2goYil7fX1uLmFqYXhTZXR1cCh7YWNjZXB0czp7c2NyaXB0OiJ0ZXh0L2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2VjbWFzY3JpcHQsIGFwcGxpY2F0aW9uL3gtZWNtYXNjcmlwdCJ9LGNvbnRlbnRzOntzY3JpcHQ6Lyg/OmphdmF8ZWNtYSlzY3JpcHQvfSxjb252ZXJ0ZXJzOnsidGV4dCBzY3JpcHQiOmZ1bmN0aW9uKGEpe3JldHVybiBuLmdsb2JhbEV2YWwoYSksYX19fSksbi5hamF4UHJlZmlsdGVyKCJzY3JpcHQiLGZ1bmN0aW9uKGEpe3ZvaWQgMD09PWEuY2FjaGUmJihhLmNhY2hlPSExKSxhLmNyb3NzRG9tYWluJiYoYS50eXBlPSJHRVQiLGEuZ2xvYmFsPSExKX0pLG4uYWpheFRyYW5zcG9ydCgic2NyaXB0IixmdW5jdGlvbihhKXtpZihhLmNyb3NzRG9tYWluKXt2YXIgYixjPXouaGVhZHx8bigiaGVhZCIpWzBdfHx6LmRvY3VtZW50RWxlbWVudDtyZXR1cm57c2VuZDpmdW5jdGlvbihkLGUpe2I9ei5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSxiLmFzeW5jPSEwLGEuc2NyaXB0Q2hhcnNldCYmKGIuY2hhcnNldD1hLnNjcmlwdENoYXJzZXQpLGIuc3JjPWEudXJsLGIub25sb2FkPWIub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKGEsYyl7KGN8fCFiLnJlYWR5U3RhdGV8fC9sb2FkZWR8Y29tcGxldGUvLnRlc3QoYi5yZWFkeVN0YXRlKSkmJihiLm9ubG9hZD1iLm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsLGIucGFyZW50Tm9kZSYmYi5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGIpLGI9bnVsbCxjfHxlKDIwMCwic3VjY2VzcyIpKX0sYy5pbnNlcnRCZWZvcmUoYixjLmZpcnN0Q2hpbGQpfSxhYm9ydDpmdW5jdGlvbigpe2ImJmIub25sb2FkKHZvaWQgMCwhMCl9fX19KTt2YXIgYWQ9W10sYmQ9Lyg9KVw/KD89JnwkKXxcP1w/LztuLmFqYXhTZXR1cCh7anNvbnA6ImNhbGxiYWNrIixqc29ucENhbGxiYWNrOmZ1bmN0aW9uKCl7dmFyIGE9YWQucG9wKCl8fG4uZXhwYW5kbysiXyIrd2MrKztyZXR1cm4gdGhpc1thXT0hMCxhfX0pLG4uYWpheFByZWZpbHRlcigianNvbiBqc29ucCIsZnVuY3Rpb24oYixjLGQpe3ZhciBlLGYsZyxoPWIuanNvbnAhPT0hMSYmKGJkLnRlc3QoYi51cmwpPyJ1cmwiOiJzdHJpbmciPT10eXBlb2YgYi5kYXRhJiYhKGIuY29udGVudFR5cGV8fCIiKS5pbmRleE9mKCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiKSYmYmQudGVzdChiLmRhdGEpJiYiZGF0YSIpO3JldHVybiBofHwianNvbnAiPT09Yi5kYXRhVHlwZXNbMF0/KGU9Yi5qc29ucENhbGxiYWNrPW4uaXNGdW5jdGlvbihiLmpzb25wQ2FsbGJhY2spP2IuanNvbnBDYWxsYmFjaygpOmIuanNvbnBDYWxsYmFjayxoP2JbaF09YltoXS5yZXBsYWNlKGJkLCIkMSIrZSk6Yi5qc29ucCE9PSExJiYoYi51cmwrPSh4Yy50ZXN0KGIudXJsKT8iJiI6Ij8iKStiLmpzb25wKyI9IitlKSxiLmNvbnZlcnRlcnNbInNjcmlwdCBqc29uIl09ZnVuY3Rpb24oKXtyZXR1cm4gZ3x8bi5lcnJvcihlKyIgd2FzIG5vdCBjYWxsZWQiKSxnWzBdfSxiLmRhdGFUeXBlc1swXT0ianNvbiIsZj1hW2VdLGFbZV09ZnVuY3Rpb24oKXtnPWFyZ3VtZW50c30sZC5hbHdheXMoZnVuY3Rpb24oKXthW2VdPWYsYltlXSYmKGIuanNvbnBDYWxsYmFjaz1jLmpzb25wQ2FsbGJhY2ssYWQucHVzaChlKSksZyYmbi5pc0Z1bmN0aW9uKGYpJiZmKGdbMF0pLGc9Zj12b2lkIDB9KSwic2NyaXB0Iik6dm9pZCAwfSksbi5wYXJzZUhUTUw9ZnVuY3Rpb24oYSxiLGMpe2lmKCFhfHwic3RyaW5nIiE9dHlwZW9mIGEpcmV0dXJuIG51bGw7ImJvb2xlYW4iPT10eXBlb2YgYiYmKGM9YixiPSExKSxiPWJ8fHo7dmFyIGQ9di5leGVjKGEpLGU9IWMmJltdO3JldHVybiBkP1tiLmNyZWF0ZUVsZW1lbnQoZFsxXSldOihkPW4uYnVpbGRGcmFnbWVudChbYV0sYixlKSxlJiZlLmxlbmd0aCYmbihlKS5yZW1vdmUoKSxuLm1lcmdlKFtdLGQuY2hpbGROb2RlcykpfTt2YXIgY2Q9bi5mbi5sb2FkO24uZm4ubG9hZD1mdW5jdGlvbihhLGIsYyl7aWYoInN0cmluZyIhPXR5cGVvZiBhJiZjZClyZXR1cm4gY2QuYXBwbHkodGhpcyxhcmd1bWVudHMpO3ZhciBkLGUsZixnPXRoaXMsaD1hLmluZGV4T2YoIiAiKTtyZXR1cm4gaD49MCYmKGQ9YS5zbGljZShoLGEubGVuZ3RoKSxhPWEuc2xpY2UoMCxoKSksbi5pc0Z1bmN0aW9uKGIpPyhjPWIsYj12b2lkIDApOmImJiJvYmplY3QiPT10eXBlb2YgYiYmKGY9IlBPU1QiKSxnLmxlbmd0aD4wJiZuLmFqYXgoe3VybDphLHR5cGU6ZixkYXRhVHlwZToiaHRtbCIsZGF0YTpifSkuZG9uZShmdW5jdGlvbihhKXtlPWFyZ3VtZW50cyxnLmh0bWwoZD9uKCI8ZGl2PiIpLmFwcGVuZChuLnBhcnNlSFRNTChhKSkuZmluZChkKTphKX0pLmNvbXBsZXRlKGMmJmZ1bmN0aW9uKGEsYil7Zy5lYWNoKGMsZXx8W2EucmVzcG9uc2VUZXh0LGIsYV0pfSksdGhpc30sbi5leHByLmZpbHRlcnMuYW5pbWF0ZWQ9ZnVuY3Rpb24oYSl7cmV0dXJuIG4uZ3JlcChuLnRpbWVycyxmdW5jdGlvbihiKXtyZXR1cm4gYT09PWIuZWxlbX0pLmxlbmd0aH07dmFyIGRkPWEuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O2Z1bmN0aW9uIGVkKGEpe3JldHVybiBuLmlzV2luZG93KGEpP2E6OT09PWEubm9kZVR5cGU/YS5kZWZhdWx0Vmlld3x8YS5wYXJlbnRXaW5kb3c6ITF9bi5vZmZzZXQ9e3NldE9mZnNldDpmdW5jdGlvbihhLGIsYyl7dmFyIGQsZSxmLGcsaCxpLGosaz1uLmNzcyhhLCJwb3NpdGlvbiIpLGw9bihhKSxtPXt9OyJzdGF0aWMiPT09ayYmKGEuc3R5bGUucG9zaXRpb249InJlbGF0aXZlIiksaD1sLm9mZnNldCgpLGY9bi5jc3MoYSwidG9wIiksaT1uLmNzcyhhLCJsZWZ0Iiksaj0oImFic29sdXRlIj09PWt8fCJmaXhlZCI9PT1rKSYmbi5pbkFycmF5KCJhdXRvIixbZixpXSk+LTEsaj8oZD1sLnBvc2l0aW9uKCksZz1kLnRvcCxlPWQubGVmdCk6KGc9cGFyc2VGbG9hdChmKXx8MCxlPXBhcnNlRmxvYXQoaSl8fDApLG4uaXNGdW5jdGlvbihiKSYmKGI9Yi5jYWxsKGEsYyxoKSksbnVsbCE9Yi50b3AmJihtLnRvcD1iLnRvcC1oLnRvcCtnKSxudWxsIT1iLmxlZnQmJihtLmxlZnQ9Yi5sZWZ0LWgubGVmdCtlKSwidXNpbmciaW4gYj9iLnVzaW5nLmNhbGwoYSxtKTpsLmNzcyhtKX19LG4uZm4uZXh0ZW5kKHtvZmZzZXQ6ZnVuY3Rpb24oYSl7aWYoYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gdm9pZCAwPT09YT90aGlzOnRoaXMuZWFjaChmdW5jdGlvbihiKXtuLm9mZnNldC5zZXRPZmZzZXQodGhpcyxhLGIpfSk7dmFyIGIsYyxkPXt0b3A6MCxsZWZ0OjB9LGU9dGhpc1swXSxmPWUmJmUub3duZXJEb2N1bWVudDtpZihmKXJldHVybiBiPWYuZG9jdW1lbnRFbGVtZW50LG4uY29udGFpbnMoYixlKT8odHlwZW9mIGUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0IT09TCYmKGQ9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSksYz1lZChmKSx7dG9wOmQudG9wKyhjLnBhZ2VZT2Zmc2V0fHxiLnNjcm9sbFRvcCktKGIuY2xpZW50VG9wfHwwKSxsZWZ0OmQubGVmdCsoYy5wYWdlWE9mZnNldHx8Yi5zY3JvbGxMZWZ0KS0oYi5jbGllbnRMZWZ0fHwwKX0pOmR9LHBvc2l0aW9uOmZ1bmN0aW9uKCl7aWYodGhpc1swXSl7dmFyIGEsYixjPXt0b3A6MCxsZWZ0OjB9LGQ9dGhpc1swXTtyZXR1cm4iZml4ZWQiPT09bi5jc3MoZCwicG9zaXRpb24iKT9iPWQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk6KGE9dGhpcy5vZmZzZXRQYXJlbnQoKSxiPXRoaXMub2Zmc2V0KCksbi5ub2RlTmFtZShhWzBdLCJodG1sIil8fChjPWEub2Zmc2V0KCkpLGMudG9wKz1uLmNzcyhhWzBdLCJib3JkZXJUb3BXaWR0aCIsITApLGMubGVmdCs9bi5jc3MoYVswXSwiYm9yZGVyTGVmdFdpZHRoIiwhMCkpLHt0b3A6Yi50b3AtYy50b3Atbi5jc3MoZCwibWFyZ2luVG9wIiwhMCksbGVmdDpiLmxlZnQtYy5sZWZ0LW4uY3NzKGQsIm1hcmdpbkxlZnQiLCEwKX19fSxvZmZzZXRQYXJlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oKXt2YXIgYT10aGlzLm9mZnNldFBhcmVudHx8ZGQ7d2hpbGUoYSYmIW4ubm9kZU5hbWUoYSwiaHRtbCIpJiYic3RhdGljIj09PW4uY3NzKGEsInBvc2l0aW9uIikpYT1hLm9mZnNldFBhcmVudDtyZXR1cm4gYXx8ZGR9KX19KSxuLmVhY2goe3Njcm9sbExlZnQ6InBhZ2VYT2Zmc2V0IixzY3JvbGxUb3A6InBhZ2VZT2Zmc2V0In0sZnVuY3Rpb24oYSxiKXt2YXIgYz0vWS8udGVzdChiKTtuLmZuW2FdPWZ1bmN0aW9uKGQpe3JldHVybiBXKHRoaXMsZnVuY3Rpb24oYSxkLGUpe3ZhciBmPWVkKGEpO3JldHVybiB2b2lkIDA9PT1lP2Y/YiBpbiBmP2ZbYl06Zi5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnRbZF06YVtkXTp2b2lkKGY/Zi5zY3JvbGxUbyhjP24oZikuc2Nyb2xsTGVmdCgpOmUsYz9lOm4oZikuc2Nyb2xsVG9wKCkpOmFbZF09ZSl9LGEsZCxhcmd1bWVudHMubGVuZ3RoLG51bGwpfX0pLG4uZWFjaChbInRvcCIsImxlZnQiXSxmdW5jdGlvbihhLGIpe24uY3NzSG9va3NbYl09TWIobC5waXhlbFBvc2l0aW9uLGZ1bmN0aW9uKGEsYyl7cmV0dXJuIGM/KGM9S2IoYSxiKSxJYi50ZXN0KGMpP24oYSkucG9zaXRpb24oKVtiXSsicHgiOmMpOnZvaWQgMH0pfSksbi5lYWNoKHtIZWlnaHQ6ImhlaWdodCIsV2lkdGg6IndpZHRoIn0sZnVuY3Rpb24oYSxiKXtuLmVhY2goe3BhZGRpbmc6ImlubmVyIithLGNvbnRlbnQ6YiwiIjoib3V0ZXIiK2F9LGZ1bmN0aW9uKGMsZCl7bi5mbltkXT1mdW5jdGlvbihkLGUpe3ZhciBmPWFyZ3VtZW50cy5sZW5ndGgmJihjfHwiYm9vbGVhbiIhPXR5cGVvZiBkKSxnPWN8fChkPT09ITB8fGU9PT0hMD8ibWFyZ2luIjoiYm9yZGVyIik7cmV0dXJuIFcodGhpcyxmdW5jdGlvbihiLGMsZCl7dmFyIGU7cmV0dXJuIG4uaXNXaW5kb3coYik/Yi5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnRbImNsaWVudCIrYV06OT09PWIubm9kZVR5cGU/KGU9Yi5kb2N1bWVudEVsZW1lbnQsTWF0aC5tYXgoYi5ib2R5WyJzY3JvbGwiK2FdLGVbInNjcm9sbCIrYV0sYi5ib2R5WyJvZmZzZXQiK2FdLGVbIm9mZnNldCIrYV0sZVsiY2xpZW50IithXSkpOnZvaWQgMD09PWQ/bi5jc3MoYixjLGcpOm4uc3R5bGUoYixjLGQsZyl9LGIsZj9kOnZvaWQgMCxmLG51bGwpfX0pfSksbi5mbi5zaXplPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubGVuZ3RofSxuLmZuLmFuZFNlbGY9bi5mbi5hZGRCYWNrLCJmdW5jdGlvbiI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQmJmRlZmluZSgianF1ZXJ5IixbXSxmdW5jdGlvbigpe3JldHVybiBufSk7dmFyIGZkPWEualF1ZXJ5LGdkPWEuJDtyZXR1cm4gbi5ub0NvbmZsaWN0PWZ1bmN0aW9uKGIpe3JldHVybiBhLiQ9PT1uJiYoYS4kPWdkKSxiJiZhLmpRdWVyeT09PW4mJihhLmpRdWVyeT1mZCksbn0sdHlwZW9mIGI9PT1MJiYoYS5qUXVlcnk9YS4kPW4pLG59KTsK]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/js/jquery.dotdotdot-1.5.9.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoJCiAqCWpRdWVyeSBkb3Rkb3Rkb3QgMS41LjkKICoJCiAqCUNvcHlyaWdodCAoYykgMjAxMyBGcmVkIEhldXNzY2hlbgogKgl3d3cuZnJlYnNpdGUubmwKICoKICoJUGx1Z2luIHdlYnNpdGU6CiAqCWRvdGRvdGRvdC5mcmVic2l0ZS5ubAogKgogKglEdWFsIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgYW5kIEdQTCBsaWNlbnNlcy4KICoJaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9NSVRfTGljZW5zZQogKglodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0dOVV9HZW5lcmFsX1B1YmxpY19MaWNlbnNlCiAqLwoKKGZ1bmN0aW9uKCAkICkKewoJaWYgKCAkLmZuLmRvdGRvdGRvdCApCgl7CgkJcmV0dXJuOwoJfQoKCSQuZm4uZG90ZG90ZG90ID0gZnVuY3Rpb24oIG8gKQoJewoJCWlmICggdGhpcy5sZW5ndGggPT0gMCApCgkJewoJCQlpZiAoICFvIHx8IG8uZGVidWcgIT09IGZhbHNlICkKCQkJewoJCQkJZGVidWcoIHRydWUsICdObyBlbGVtZW50IGZvdW5kIGZvciAiJyArIHRoaXMuc2VsZWN0b3IgKyAnIi4nICk7CQkJCQoJCQl9CgkJCXJldHVybiB0aGlzOwoJCX0KCQlpZiAoIHRoaXMubGVuZ3RoID4gMSApCgkJewoJCQlyZXR1cm4gdGhpcy5lYWNoKAoJCQkJZnVuY3Rpb24oKQoJCQkJewoJCQkJCSQodGhpcykuZG90ZG90ZG90KCBvICk7CgkJCQl9CgkJCSk7CgkJfQoKCgkJdmFyICRkb3QgPSB0aGlzOwoKCQlpZiAoICRkb3QuZGF0YSggJ2RvdGRvdGRvdCcgKSApCgkJewoJCQkkZG90LnRyaWdnZXIoICdkZXN0cm95LmRvdCcgKTsKCQl9CgoJCSRkb3QuZGF0YSggJ2RvdGRvdGRvdC1zdHlsZScsICRkb3QuYXR0ciggJ3N0eWxlJyApICk7CgkJJGRvdC5jc3MoICd3b3JkLXdyYXAnLCAnYnJlYWstd29yZCcgKTsKCgkJJGRvdC5iaW5kX2V2ZW50cyA9IGZ1bmN0aW9uKCkKCQl7CgkJCSRkb3QuYmluZCgKCQkJCSd1cGRhdGUuZG90JywKCQkJCWZ1bmN0aW9uKCBlLCBjICkKCQkJCXsKCQkJCQllLnByZXZlbnREZWZhdWx0KCk7CgkJCQkJZS5zdG9wUHJvcGFnYXRpb24oKTsKCgkJCQkJb3B0cy5tYXhIZWlnaHQgPSAoIHR5cGVvZiBvcHRzLmhlaWdodCA9PSAnbnVtYmVyJyApIAoJCQkJCQk/IG9wdHMuaGVpZ2h0IAoJCQkJCQk6IGdldFRydWVJbm5lckhlaWdodCggJGRvdCApOwoKCQkJCQlvcHRzLm1heEhlaWdodCArPSBvcHRzLnRvbGVyYW5jZTsKCgkJCQkJaWYgKCB0eXBlb2YgYyAhPSAndW5kZWZpbmVkJyApCgkJCQkJewoJCQkJCQlpZiAoIHR5cGVvZiBjID09ICdzdHJpbmcnIHx8IGMgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCApCgkJCQkJCXsKCQkJCQkgCQljID0gJCgnPGRpdiAvPicpLmFwcGVuZCggYyApLmNvbnRlbnRzKCk7CgkJCQkJCX0KCQkJCQkJaWYgKCBjIGluc3RhbmNlb2YgJCApCgkJCQkJCXsKCQkJCQkJCW9yZ0NvbnRlbnQgPSBjOwoJCQkJCQl9CgkJCQkJfQoKCQkJCQkkaW5yID0gJGRvdC53cmFwSW5uZXIoICc8ZGl2IGNsYXNzPSJkb3Rkb3Rkb3QiIC8+JyApLmNoaWxkcmVuKCk7CgkJCQkJJGluci5lbXB0eSgpCgkJCQkJCS5hcHBlbmQoIG9yZ0NvbnRlbnQuY2xvbmUoIHRydWUgKSApCgkJCQkJCS5jc3MoewoJCQkJCQkJJ2hlaWdodCcJOiAnYXV0bycsCgkJCQkJCQknd2lkdGgnCQk6ICdhdXRvJywKCQkJCQkJCSdib3JkZXInCTogJ25vbmUnLAoJCQkJCQkJJ3BhZGRpbmcnCTogMCwKCQkJCQkJCSdtYXJnaW4nCTogMAoJCQkJCQl9KTsKCgkJCQkJdmFyIGFmdGVyID0gZmFsc2UsCgkJCQkJCXRydW5jID0gZmFsc2U7CgoJCQkJCWlmICggY29uZi5hZnRlckVsZW1lbnQgKQoJCQkJCXsKCQkJCQkJYWZ0ZXIgPSBjb25mLmFmdGVyRWxlbWVudC5jbG9uZSggdHJ1ZSApOwoJCQkJCQljb25mLmFmdGVyRWxlbWVudC5yZW1vdmUoKTsKCQkJCQl9CgkJCQkJaWYgKCB0ZXN0KCAkaW5yLCBvcHRzICkgKQoJCQkJCXsKCQkJCQkJaWYgKCBvcHRzLndyYXAgPT0gJ2NoaWxkcmVuJyApCgkJCQkJCXsKCQkJCQkJCXRydW5jID0gY2hpbGRyZW4oICRpbnIsIG9wdHMsIGFmdGVyICk7CgkJCQkJCX0KCQkJCQkJZWxzZQoJCQkJCQl7CgkJCQkJCQl0cnVuYyA9IGVsbGlwc2lzKCAkaW5yLCAkZG90LCAkaW5yLCBvcHRzLCBhZnRlciApOwoJCQkJCQl9CgkJCQkJfQoJCQkJCSRpbnIucmVwbGFjZVdpdGgoICRpbnIuY29udGVudHMoKSApOwoJCQkJCSRpbnIgPSBudWxsOwoJCQkJCQoJCQkJCWlmICggJC5pc0Z1bmN0aW9uKCBvcHRzLmNhbGxiYWNrICkgKQoJCQkJCXsKCQkJCQkJb3B0cy5jYWxsYmFjay5jYWxsKCAkZG90WyAwIF0sIHRydW5jLCBvcmdDb250ZW50ICk7CgkJCQkJfQoKCQkJCQljb25mLmlzVHJ1bmNhdGVkID0gdHJ1bmM7CgkJCQkJcmV0dXJuIHRydW5jOwoJCQkJfQoKCQkJKS5iaW5kKAoJCQkJJ2lzVHJ1bmNhdGVkLmRvdCcsCgkJCQlmdW5jdGlvbiggZSwgZm4gKQoJCQkJewoJCQkJCWUucHJldmVudERlZmF1bHQoKTsKCQkJCQllLnN0b3BQcm9wYWdhdGlvbigpOwoKCQkJCQlpZiAoIHR5cGVvZiBmbiA9PSAnZnVuY3Rpb24nICkKCQkJCQl7CgkJCQkJCWZuLmNhbGwoICRkb3RbIDAgXSwgY29uZi5pc1RydW5jYXRlZCApOwoJCQkJCX0KCQkJCQlyZXR1cm4gY29uZi5pc1RydW5jYXRlZDsKCQkJCX0KCgkJCSkuYmluZCgKCQkJCSdvcmlnaW5hbENvbnRlbnQuZG90JywKCQkJCWZ1bmN0aW9uKCBlLCBmbiApCgkJCQl7CgkJCQkJZS5wcmV2ZW50RGVmYXVsdCgpOwoJCQkJCWUuc3RvcFByb3BhZ2F0aW9uKCk7CgoJCQkJCWlmICggdHlwZW9mIGZuID09ICdmdW5jdGlvbicgKQoJCQkJCXsKCQkJCQkJZm4uY2FsbCggJGRvdFsgMCBdLCBvcmdDb250ZW50ICk7CgkJCQkJfQoJCQkJCXJldHVybiBvcmdDb250ZW50OwoJCQkJfQoKCQkJKS5iaW5kKAoJCQkJJ2Rlc3Ryb3kuZG90JywKCQkJCWZ1bmN0aW9uKCBlICkKCQkJCXsKCQkJCQllLnByZXZlbnREZWZhdWx0KCk7CgkJCQkJZS5zdG9wUHJvcGFnYXRpb24oKTsKCgkJCQkJJGRvdC51bndhdGNoKCkKCQkJCQkJLnVuYmluZF9ldmVudHMoKQoJCQkJCQkuZW1wdHkoKQoJCQkJCQkuYXBwZW5kKCBvcmdDb250ZW50ICkKCQkJCQkJLmF0dHIoICdzdHlsZScsICRkb3QuZGF0YSggJ2RvdGRvdGRvdC1zdHlsZScgKSApCgkJCQkJCS5kYXRhKCAnZG90ZG90ZG90JywgZmFsc2UgKTsKCQkJCX0KCQkJKTsKCQkJcmV0dXJuICRkb3Q7CgkJfTsJLy8JL2JpbmRfZXZlbnRzCgoJCSRkb3QudW5iaW5kX2V2ZW50cyA9IGZ1bmN0aW9uKCkKCQl7CgkJCSRkb3QudW5iaW5kKCcuZG90Jyk7CgkJCXJldHVybiAkZG90OwoJCX07CS8vCS91bmJpbmRfZXZlbnRzCgoJCSRkb3Qud2F0Y2ggPSBmdW5jdGlvbigpCgkJewoJCQkkZG90LnVud2F0Y2goKTsKCQkJaWYgKCBvcHRzLndhdGNoID09ICd3aW5kb3cnICkKCQkJewoJCQkJdmFyICR3aW5kb3cgPSAkKHdpbmRvdyksCgkJCQkJX3dXaWR0aCA9ICR3aW5kb3cud2lkdGgoKSwKCQkJCQlfd0hlaWdodCA9ICR3aW5kb3cuaGVpZ2h0KCk7IAoKCQkJCSR3aW5kb3cuYmluZCgKCQkJCQkncmVzaXplLmRvdCcgKyBjb25mLmRvdElkLAoJCQkJCWZ1bmN0aW9uKCkKCQkJCQl7CgkJCQkJCWlmICggX3dXaWR0aCAhPSAkd2luZG93LndpZHRoKCkgfHwgX3dIZWlnaHQgIT0gJHdpbmRvdy5oZWlnaHQoKSB8fCAhb3B0cy53aW5kb3dSZXNpemVGaXggKQoJCQkJCQl7CgkJCQkJCQlfd1dpZHRoID0gJHdpbmRvdy53aWR0aCgpOwoJCQkJCQkJX3dIZWlnaHQgPSAkd2luZG93LmhlaWdodCgpOwoJCgkJCQkJCQlpZiAoIHdhdGNoSW50ICkKCQkJCQkJCXsKCQkJCQkJCQljbGVhckludGVydmFsKCB3YXRjaEludCApOwoJCQkJCQkJfQoJCQkJCQkJd2F0Y2hJbnQgPSBzZXRUaW1lb3V0KAoJCQkJCQkJCWZ1bmN0aW9uKCkKCQkJCQkJCQl7CgkJCQkJCQkJCSRkb3QudHJpZ2dlciggJ3VwZGF0ZS5kb3QnICk7CgkJCQkJCQkJfSwgMTAKCQkJCQkJCSk7CgkJCQkJCX0KCQkJCQl9CgkJCQkpOwoJCQl9CgkJCWVsc2UKCQkJewoJCQkJd2F0Y2hPcmcgPSBnZXRTaXplcyggJGRvdCApOwoJCQkJd2F0Y2hJbnQgPSBzZXRJbnRlcnZhbCgKCQkJCQlmdW5jdGlvbigpCgkJCQkJewoJCQkJCQl2YXIgd2F0Y2hOZXcgPSBnZXRTaXplcyggJGRvdCApOwoJCQkJCQlpZiAoIHdhdGNoT3JnLndpZHRoICAhPSB3YXRjaE5ldy53aWR0aCB8fAoJCQkJCQkJIHdhdGNoT3JnLmhlaWdodCAhPSB3YXRjaE5ldy5oZWlnaHQgKQoJCQkJCQl7CgkJCQkJCQkkZG90LnRyaWdnZXIoICd1cGRhdGUuZG90JyApOwoJCQkJCQkJd2F0Y2hPcmcgPSBnZXRTaXplcyggJGRvdCApOwoJCQkJCQl9CgkJCQkJfSwgMTAwCgkJCQkpOwoJCQl9CgkJCXJldHVybiAkZG90OwoJCX07CgkJJGRvdC51bndhdGNoID0gZnVuY3Rpb24oKQoJCXsKCQkJJCh3aW5kb3cpLnVuYmluZCggJ3Jlc2l6ZS5kb3QnICsgY29uZi5kb3RJZCApOwoJCQlpZiAoIHdhdGNoSW50ICkKCQkJewoJCQkJY2xlYXJJbnRlcnZhbCggd2F0Y2hJbnQgKTsKCQkJfQoJCQlyZXR1cm4gJGRvdDsKCQl9OwoKCQl2YXIJb3JnQ29udGVudAk9ICRkb3QuY29udGVudHMoKSwKCQkJb3B0cyAJCT0gJC5leHRlbmQoIHRydWUsIHt9LCAkLmZuLmRvdGRvdGRvdC5kZWZhdWx0cywgbyApLAoJCQljb25mCQk9IHt9LAoJCQl3YXRjaE9yZwk9IHt9LAoJCQl3YXRjaEludAk9IG51bGwsCgkJCSRpbnIJCT0gbnVsbDsKCgkJY29uZi5hZnRlckVsZW1lbnQJPSBnZXRFbGVtZW50KCBvcHRzLmFmdGVyLCAkZG90ICk7CgkJY29uZi5pc1RydW5jYXRlZAk9IGZhbHNlOwoJCWNvbmYuZG90SWQJCQk9IGRvdElkKys7CgoKCQkkZG90LmRhdGEoICdkb3Rkb3Rkb3QnLCB0cnVlICkKCQkJLmJpbmRfZXZlbnRzKCkKCQkJLnRyaWdnZXIoICd1cGRhdGUuZG90JyApOwoKCQlpZiAoIG9wdHMud2F0Y2ggKQoJCXsKCQkJJGRvdC53YXRjaCgpOwoJCX0KCgkJcmV0dXJuICRkb3Q7Cgl9OwoKCgkvLwlwdWJsaWMKCSQuZm4uZG90ZG90ZG90LmRlZmF1bHRzID0gewoJCSdlbGxpcHNpcycJOiAnLi4uICcsCgkJJ3dyYXAnCQk6ICd3b3JkJywKCQknbGFzdENoYXJhY3Rlcic6IHsKCQkJJ3JlbW92ZScJCTogWyAnICcsICcsJywgJzsnLCAnLicsICchJywgJz8nIF0sCgkJCSdub0VsbGlwc2lzJwk6IFtdCgkJfSwKCQkndG9sZXJhbmNlJwk6IDAsCgkJJ2NhbGxiYWNrJwk6IG51bGwsCgkJJ2FmdGVyJwkJOiBudWxsLAoJCSdoZWlnaHQnCTogbnVsbCwKCQknd2F0Y2gnCQk6IGZhbHNlLAoJCSd3aW5kb3dSZXNpemVGaXgnOiB0cnVlLAoJCSdkZWJ1ZycJCTogZmFsc2UKCX07CgkKCgkvLwlwcml2YXRlCgl2YXIgZG90SWQgPSAxOwoKCWZ1bmN0aW9uIGNoaWxkcmVuKCAkZWxlbSwgbywgYWZ0ZXIgKQoJewoJCXZhciAkZWxlbWVudHMgCT0gJGVsZW0uY2hpbGRyZW4oKSwKCQkJaXNUcnVuY2F0ZWQJPSBmYWxzZTsKCgkJJGVsZW0uZW1wdHkoKTsKCgkJZm9yICggdmFyIGEgPSAwLCBsID0gJGVsZW1lbnRzLmxlbmd0aDsgYSA8IGw7IGErKyApCgkJewoJCQl2YXIgJGUgPSAkZWxlbWVudHMuZXEoIGEgKTsKCQkJJGVsZW0uYXBwZW5kKCAkZSApOwoJCQlpZiAoIGFmdGVyICkKCQkJewoJCQkJJGVsZW0uYXBwZW5kKCBhZnRlciApOwoJCQl9CgkJCWlmICggdGVzdCggJGVsZW0sIG8gKSApCgkJCXsKCQkJCSRlLnJlbW92ZSgpOwoJCQkJaXNUcnVuY2F0ZWQgPSB0cnVlOwoJCQkJYnJlYWs7CgkJCX0KCQkJZWxzZQoJCQl7CgkJCQlpZiAoIGFmdGVyICkKCQkJCXsKCQkJCQlhZnRlci5yZW1vdmUoKTsKCQkJCX0KCQkJfQoJCX0KCQlyZXR1cm4gaXNUcnVuY2F0ZWQ7Cgl9CglmdW5jdGlvbiBlbGxpcHNpcyggJGVsZW0sICRkLCAkaSwgbywgYWZ0ZXIgKQoJewoJCXZhciAkZWxlbWVudHMgCT0gJGVsZW0uY29udGVudHMoKSwKCQkJaXNUcnVuY2F0ZWQJPSBmYWxzZTsKCgkJJGVsZW0uZW1wdHkoKTsKCgkJdmFyIG5vdHggPSAndGFibGUsIHRoZWFkLCB0Ym9keSwgdGZvb3QsIHRyLCBjb2wsIGNvbGdyb3VwLCBvYmplY3QsIGVtYmVkLCBwYXJhbSwgb2wsIHVsLCBkbCwgc2VsZWN0LCBvcHRncm91cCwgb3B0aW9uLCB0ZXh0YXJlYSwgc2NyaXB0LCBzdHlsZSc7CgkJZm9yICggdmFyIGEgPSAwLCBsID0gJGVsZW1lbnRzLmxlbmd0aDsgYSA8IGw7IGErKyApCgkJewoKCQkJaWYgKCBpc1RydW5jYXRlZCApCgkJCXsKCQkJCWJyZWFrOwoJCQl9CgoJCQl2YXIgZQk9ICRlbGVtZW50c1sgYSBdLAoJCQkJJGUJPSAkKGUpOwoKCQkJaWYgKCB0eXBlb2YgZSA9PSAndW5kZWZpbmVkJyApCgkJCXsKCQkJCWNvbnRpbnVlOwoJCQl9CgoJCQkkZWxlbS5hcHBlbmQoICRlICk7CgkJCWlmICggYWZ0ZXIgKQoJCQl7CgkJCQkkZWxlbVsgKCAkZWxlbS5pcyggbm90eCApICkgPyAnYWZ0ZXInIDogJ2FwcGVuZCcgXSggYWZ0ZXIgKTsKCQkJfQoJCQlpZiAoIGUubm9kZVR5cGUgPT0gMyApCgkJCXsKCQkJCWlmICggdGVzdCggJGksIG8gKSApCgkJCQl7CgkJCQkJaXNUcnVuY2F0ZWQgPSBlbGxpcHNpc0VsZW1lbnQoICRlLCAkZCwgJGksIG8sIGFmdGVyICk7CgkJCQl9CgkJCX0KCQkJZWxzZQoJCQl7CgkJCQlpc1RydW5jYXRlZCA9IGVsbGlwc2lzKCAkZSwgJGQsICRpLCBvLCBhZnRlciApOwoJCQl9CgoJCQlpZiAoICFpc1RydW5jYXRlZCApCgkJCXsKCQkJCWlmICggYWZ0ZXIgKQoJCQkJewoJCQkJCWFmdGVyLnJlbW92ZSgpOwoJCQkJfQoJCQl9CgkJfQoJCXJldHVybiBpc1RydW5jYXRlZDsKCX0KCWZ1bmN0aW9uIGVsbGlwc2lzRWxlbWVudCggJGUsICRkLCAkaSwgbywgYWZ0ZXIgKQoJewoJCXZhciBpc1RydW5jYXRlZAk9IGZhbHNlLAoJCQllID0gJGVbIDAgXTsKCgkJaWYgKCB0eXBlb2YgZSA9PSAndW5kZWZpbmVkJyApCgkJewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoKCQl2YXIgc2Vwb3JhdG9yCT0gKCBvLndyYXAgPT0gJ2xldHRlcicgKSA/ICcnIDogJyAnLAoJCQl0ZXh0QXJyCQk9IGdldFRleHRDb250ZW50KCBlICkuc3BsaXQoIHNlcG9yYXRvciApLAoJCQlwb3NpdGlvbiAJPSAtMSwKCQkJbWlkUG9zCQk9IC0xLAoJCQlzdGFydFBvcwk9IDAsCgkJCWVuZFBvcwkJPSB0ZXh0QXJyLmxlbmd0aCAtIDE7CgoJCXdoaWxlICggc3RhcnRQb3MgPD0gZW5kUG9zICkKCQl7CgkJCXZhciBtID0gTWF0aC5mbG9vciggKCBzdGFydFBvcyArIGVuZFBvcyApIC8gMiApOwoJCQlpZiAoIG0gPT0gbWlkUG9zICkgCgkJCXsKCQkJCWJyZWFrOwoJCQl9CgkJCW1pZFBvcyA9IG07CgoJCQlzZXRUZXh0Q29udGVudCggZSwgdGV4dEFyci5zbGljZSggMCwgbWlkUG9zICsgMSApLmpvaW4oIHNlcG9yYXRvciApICsgby5lbGxpcHNpcyApOwoKCQkJaWYgKCAhdGVzdCggJGksIG8gKSApCgkJCXsKCQkJCXBvc2l0aW9uID0gbWlkUG9zOwoJCQkJc3RhcnRQb3MgPSBtaWRQb3M7IAoJCQl9CgkJCWVsc2UKCQkJewoJCQkJZW5kUG9zID0gbWlkUG9zOwoJCQl9CQkJCQoJCX0JCgkKCQlpZiAoIHBvc2l0aW9uICE9IC0xICYmICEoIHRleHRBcnIubGVuZ3RoID09IDEgJiYgdGV4dEFyclsgMCBdLmxlbmd0aCA9PSAwICkgKQoJCXsKCQkJdmFyIHR4dCA9IGFkZEVsbGlwc2lzKCB0ZXh0QXJyLnNsaWNlKCAwLCBwb3NpdGlvbiArIDEgKS5qb2luKCBzZXBvcmF0b3IgKSwgbyApOwoJCQlpc1RydW5jYXRlZCA9IHRydWU7CgkJCXNldFRleHRDb250ZW50KCBlLCB0eHQgKTsKCQl9CgkJZWxzZQoJCXsKCQkJdmFyICR3ID0gJGUucGFyZW50KCk7CgkJCSRlLnJlbW92ZSgpOwoKCQkJdmFyIGFmdGVyTGVuZ3RoID0gKCBhZnRlciApID8gYWZ0ZXIubGVuZ3RoIDogMCA7CgoJCQlpZiAoICR3LmNvbnRlbnRzKCkuc2l6ZSgpID4gYWZ0ZXJMZW5ndGggKQoJCQl7CgkJCQl2YXIgJG4gPSAkdy5jb250ZW50cygpLmVxKCAtMSAtIGFmdGVyTGVuZ3RoICk7CgkJCQlpc1RydW5jYXRlZCA9IGVsbGlwc2lzRWxlbWVudCggJG4sICRkLCAkaSwgbywgYWZ0ZXIgKTsKCQkJfQoJCQllbHNlCgkJCXsKCQkJCXZhciAkcCA9ICR3LnByZXYoKQoJCQkJdmFyIGUgPSAkcC5jb250ZW50cygpLmVxKCAtMSApWyAwIF07CgoJCQkJaWYgKCB0eXBlb2YgZSAhPSAndW5kZWZpbmVkJyApCgkJCQl7CgkJCQkJdmFyIHR4dCA9IGFkZEVsbGlwc2lzKCBnZXRUZXh0Q29udGVudCggZSApLCBvICk7CgkJCQkJc2V0VGV4dENvbnRlbnQoIGUsIHR4dCApOwoJCQkJCWlmICggYWZ0ZXIgKQoJCQkJCXsKCQkJCQkJJHAuYXBwZW5kKCBhZnRlciApOwoJCQkJCX0KCQkJCQkkdy5yZW1vdmUoKTsKCQkJCQlpc1RydW5jYXRlZCA9IHRydWU7CgkJCQl9CgoJCQl9CgkJfQoKCQlyZXR1cm4gaXNUcnVuY2F0ZWQ7Cgl9CglmdW5jdGlvbiB0ZXN0KCAkaSwgbyApCgl7CgkJcmV0dXJuICRpLmlubmVySGVpZ2h0KCkgPiBvLm1heEhlaWdodDsKCX0KCWZ1bmN0aW9uIGFkZEVsbGlwc2lzKCB0eHQsIG8gKQoJewoJCXdoaWxlKCAkLmluQXJyYXkoIHR4dC5zbGljZSggLTEgKSwgby5sYXN0Q2hhcmFjdGVyLnJlbW92ZSApID4gLTEgKQoJCXsKCQkJdHh0ID0gdHh0LnNsaWNlKCAwLCAtMSApOwoJCX0KCQlpZiAoICQuaW5BcnJheSggdHh0LnNsaWNlKCAtMSApLCBvLmxhc3RDaGFyYWN0ZXIubm9FbGxpcHNpcyApIDwgMCApCgkJewoJCQl0eHQgKz0gby5lbGxpcHNpczsKCQl9CgkJcmV0dXJuIHR4dDsKCX0KCWZ1bmN0aW9uIGdldFNpemVzKCAkZCApCgl7CgkJcmV0dXJuIHsKCQkJJ3dpZHRoJwk6ICRkLmlubmVyV2lkdGgoKSwKCQkJJ2hlaWdodCc6ICRkLmlubmVySGVpZ2h0KCkKCQl9OwoJfQoJZnVuY3Rpb24gc2V0VGV4dENvbnRlbnQoIGUsIGNvbnRlbnQgKQoJewoJCWlmICggZS5pbm5lclRleHQgKQoJCXsKCQkJZS5pbm5lclRleHQgPSBjb250ZW50OwoJCX0KCQllbHNlIGlmICggZS5ub2RlVmFsdWUgKQoJCXsKCQkJZS5ub2RlVmFsdWUgPSBjb250ZW50OwoJCX0KCQllbHNlIGlmIChlLnRleHRDb250ZW50KQoJCXsKCQkJZS50ZXh0Q29udGVudCA9IGNvbnRlbnQ7CgkJfQoKCX0KCWZ1bmN0aW9uIGdldFRleHRDb250ZW50KCBlICkKCXsKCQlpZiAoIGUuaW5uZXJUZXh0ICkKCQl7CgkJCXJldHVybiBlLmlubmVyVGV4dDsKCQl9CgkJZWxzZSBpZiAoIGUubm9kZVZhbHVlICkKCQl7CgkJCXJldHVybiBlLm5vZGVWYWx1ZTsKCQl9CgkJZWxzZSBpZiAoIGUudGV4dENvbnRlbnQgKQoJCXsKCQkJcmV0dXJuIGUudGV4dENvbnRlbnQ7CgkJfQoJCWVsc2UKCQl7CgkJCXJldHVybiAiIjsKCQl9Cgl9CglmdW5jdGlvbiBnZXRFbGVtZW50KCBlLCAkaSApCgl7CgkJaWYgKCB0eXBlb2YgZSA9PSAndW5kZWZpbmVkJyApCgkJewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJCWlmICggIWUgKQoJCXsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCQlpZiAoIHR5cGVvZiBlID09ICdzdHJpbmcnICkKCQl7CgkJCWUgPSAkKGUsICRpKTsKCQkJcmV0dXJuICggZS5sZW5ndGggKQoJCQkJPyBlIAoJCQkJOiBmYWxzZTsKCQl9CgkJaWYgKCB0eXBlb2YgZSA9PSAnb2JqZWN0JyApCgkJewoJCQlyZXR1cm4gKCB0eXBlb2YgZS5qcXVlcnkgPT0gJ3VuZGVmaW5lZCcgKQoJCQkJPyBmYWxzZQoJCQkJOiBlOwoJCX0KCQlyZXR1cm4gZmFsc2U7Cgl9CglmdW5jdGlvbiBnZXRUcnVlSW5uZXJIZWlnaHQoICRlbCApCgl7CgkJdmFyIGggPSAkZWwuaW5uZXJIZWlnaHQoKSwKCQkJYSA9IFsgJ3BhZGRpbmdUb3AnLCAncGFkZGluZ0JvdHRvbScgXTsKCgkJZm9yICggdmFyIHogPSAwLCBsID0gYS5sZW5ndGg7IHogPCBsOyB6KysgKSB7CgkJCXZhciBtID0gcGFyc2VJbnQoICRlbC5jc3MoIGFbIHogXSApLCAxMCApOwoJCQlpZiAoIGlzTmFOKCBtICkgKQoJCQl7CgkJCQltID0gMDsKCQkJfQoJCQloIC09IG07CgkJfQoJCXJldHVybiBoOwoJfQoJZnVuY3Rpb24gZGVidWcoIGQsIG0gKQoJewoJCWlmICggIWQgKQoJCXsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCQlpZiAoIHR5cGVvZiBtID09ICdzdHJpbmcnICkKCQl7CgkJCW0gPSAnZG90ZG90ZG90OiAnICsgbTsKCQl9CgkJZWxzZQoJCXsKCQkJbSA9IFsgJ2RvdGRvdGRvdDonLCBtIF07CgkJfQoKCQlpZiAoIHR5cGVvZiB3aW5kb3cuY29uc29sZSAhPSAndW5kZWZpbmVkJyApCgkJewoJCQlpZiAoIHR5cGVvZiB3aW5kb3cuY29uc29sZS5sb2cgIT0gJ3VuZGVmaW5lZCcgKQoJCQl7CgkJCQl3aW5kb3cuY29uc29sZS5sb2coIG0gKTsKCQkJfQoJCX0KCQlyZXR1cm4gZmFsc2U7Cgl9CgkKCgkvLwlvdmVycmlkZSBqUXVlcnkuaHRtbAoJdmFyIF9vcmdIdG1sID0gJC5mbi5odG1sOwogICAgJC5mbi5odG1sID0gZnVuY3Rpb24oIHN0ciApIHsKCQlpZiAoIHR5cGVvZiBzdHIgIT0gJ3VuZGVmaW5lZCcgKQoJCXsKCQkJaWYgKCB0aGlzLmRhdGEoICdkb3Rkb3Rkb3QnICkgKQoJCQl7CgkJCQlpZiAoIHR5cGVvZiBzdHIgIT0gJ2Z1bmN0aW9uJyApCgkJCQl7CgkJCQkJcmV0dXJuIHRoaXMudHJpZ2dlciggJ3VwZGF0ZScsIFsgc3RyIF0gKTsKCQkJCX0KCQkJfQoJCQlyZXR1cm4gX29yZ0h0bWwuY2FsbCggdGhpcywgc3RyICk7CgkJfQoJCXJldHVybiBfb3JnSHRtbC5jYWxsKCB0aGlzICk7CiAgICB9OwoKCgkvLwlvdmVycmlkZSBqUXVlcnkudGV4dAoJdmFyIF9vcmdUZXh0ID0gJC5mbi50ZXh0OwogICAgJC5mbi50ZXh0ID0gZnVuY3Rpb24oIHN0ciApIHsKCQlpZiAoIHR5cGVvZiBzdHIgIT0gJ3VuZGVmaW5lZCcgKQoJCXsKCQkJaWYgKCB0aGlzLmRhdGEoICdkb3Rkb3Rkb3QnICkgKQoJCQl7CgkJCQl2YXIgdGVtcCA9ICQoICc8ZGl2IC8+JyApOwoJCQkJdGVtcC50ZXh0KCBzdHIgKTsKCQkJCXN0ciA9IHRlbXAuaHRtbCgpOwoJCQkJdGVtcC5yZW1vdmUoKTsKCQkJCXJldHVybiB0aGlzLnRyaWdnZXIoICd1cGRhdGUnLCBbIHN0ciBdICk7CgkJCX0KCQkJcmV0dXJuIF9vcmdUZXh0LmNhbGwoIHRoaXMsIHN0ciApOwoJCX0KICAgICAgICByZXR1cm4gX29yZ1RleHQuY2FsbCggdGhpcyApOwogICAgfTsKCgp9KSggalF1ZXJ5ICk7Cg==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/js/jquery.dotdotdot-1.5.9.min.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoJCiAqCWpRdWVyeSBkb3Rkb3Rkb3QgMS41LjkKICoJCiAqCUNvcHlyaWdodCAoYykgMjAxMyBGcmVkIEhldXNzY2hlbgogKgl3d3cuZnJlYnNpdGUubmwKICoKICoJUGx1Z2luIHdlYnNpdGU6CiAqCWRvdGRvdGRvdC5mcmVic2l0ZS5ubAogKgogKglEdWFsIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgYW5kIEdQTCBsaWNlbnNlcy4KICoJaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9NSVRfTGljZW5zZQogKglodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0dOVV9HZW5lcmFsX1B1YmxpY19MaWNlbnNlCiAqLwoKKGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGMoYSxiLGMpe3ZhciBkPWEuY2hpbGRyZW4oKSxlPSExO2EuZW1wdHkoKTtmb3IodmFyIGc9MCxoPWQubGVuZ3RoO2g+ZztnKyspe3ZhciBpPWQuZXEoZyk7aWYoYS5hcHBlbmQoaSksYyYmYS5hcHBlbmQoYyksZihhLGIpKXtpLnJlbW92ZSgpLGU9ITA7YnJlYWt9YyYmYy5yZW1vdmUoKX1yZXR1cm4gZX1mdW5jdGlvbiBkKGIsYyxnLGgsaSl7dmFyIGo9Yi5jb250ZW50cygpLGs9ITE7Yi5lbXB0eSgpO2Zvcih2YXIgbD0idGFibGUsIHRoZWFkLCB0Ym9keSwgdGZvb3QsIHRyLCBjb2wsIGNvbGdyb3VwLCBvYmplY3QsIGVtYmVkLCBwYXJhbSwgb2wsIHVsLCBkbCwgc2VsZWN0LCBvcHRncm91cCwgb3B0aW9uLCB0ZXh0YXJlYSwgc2NyaXB0LCBzdHlsZSIsbT0wLG49ai5sZW5ndGg7bj5tJiYhazttKyspe3ZhciBvPWpbbV0scD1hKG8pO3ZvaWQgMCE9PW8mJihiLmFwcGVuZChwKSxpJiZiW2IuaXMobCk/ImFmdGVyIjoiYXBwZW5kIl0oaSksMz09by5ub2RlVHlwZT9mKGcsaCkmJihrPWUocCxjLGcsaCxpKSk6az1kKHAsYyxnLGgsaSksa3x8aSYmaS5yZW1vdmUoKSl9cmV0dXJuIGt9ZnVuY3Rpb24gZShhLGIsYyxkLGgpe3ZhciBrPSExLGw9YVswXTtpZihsPT09dm9pZCAwKXJldHVybiExO2Zvcih2YXIgbT0ibGV0dGVyIj09ZC53cmFwPyIiOiIgIixuPWoobCkuc3BsaXQobSksbz0tMSxwPS0xLHE9MCxyPW4ubGVuZ3RoLTE7cj49cTspe3ZhciBzPU1hdGguZmxvb3IoKHErcikvMik7aWYocz09cClicmVhaztwPXMsaShsLG4uc2xpY2UoMCxwKzEpLmpvaW4obSkrZC5lbGxpcHNpcyksZihjLGQpP3I9cDoobz1wLHE9cCl9aWYoLTE9PW98fDE9PW4ubGVuZ3RoJiYwPT1uWzBdLmxlbmd0aCl7dmFyIHU9YS5wYXJlbnQoKTthLnJlbW92ZSgpO3ZhciB2PWg/aC5sZW5ndGg6MDtpZih1LmNvbnRlbnRzKCkuc2l6ZSgpPnYpe3ZhciB3PXUuY29udGVudHMoKS5lcSgtMS12KTtrPWUodyxiLGMsZCxoKX1lbHNle3ZhciB4PXUucHJldigpLGw9eC5jb250ZW50cygpLmVxKC0xKVswXTtpZihsIT09dm9pZCAwKXt2YXIgdD1nKGoobCksZCk7aShsLHQpLGgmJnguYXBwZW5kKGgpLHUucmVtb3ZlKCksaz0hMH19fWVsc2V7dmFyIHQ9ZyhuLnNsaWNlKDAsbysxKS5qb2luKG0pLGQpO2s9ITAsaShsLHQpfXJldHVybiBrfWZ1bmN0aW9uIGYoYSxiKXtyZXR1cm4gYS5pbm5lckhlaWdodCgpPmIubWF4SGVpZ2h0fWZ1bmN0aW9uIGcoYixjKXtmb3IoO2EuaW5BcnJheShiLnNsaWNlKC0xKSxjLmxhc3RDaGFyYWN0ZXIucmVtb3ZlKT4tMTspYj1iLnNsaWNlKDAsLTEpO3JldHVybiAwPmEuaW5BcnJheShiLnNsaWNlKC0xKSxjLmxhc3RDaGFyYWN0ZXIubm9FbGxpcHNpcykmJihiKz1jLmVsbGlwc2lzKSxifWZ1bmN0aW9uIGgoYSl7cmV0dXJue3dpZHRoOmEuaW5uZXJXaWR0aCgpLGhlaWdodDphLmlubmVySGVpZ2h0KCl9fWZ1bmN0aW9uIGkoYSxiKXthLmlubmVyVGV4dD9hLmlubmVyVGV4dD1iOmEubm9kZVZhbHVlP2Eubm9kZVZhbHVlPWI6YS50ZXh0Q29udGVudCYmKGEudGV4dENvbnRlbnQ9Yil9ZnVuY3Rpb24gaihhKXtyZXR1cm4gYS5pbm5lclRleHQ/YS5pbm5lclRleHQ6YS5ub2RlVmFsdWU/YS5ub2RlVmFsdWU6YS50ZXh0Q29udGVudD9hLnRleHRDb250ZW50OiIifWZ1bmN0aW9uIGsoYixjKXtyZXR1cm4gYj09PXZvaWQgMD8hMTpiPyJzdHJpbmciPT10eXBlb2YgYj8oYj1hKGIsYyksYi5sZW5ndGg/YjohMSk6Im9iamVjdCI9PXR5cGVvZiBiP2IuanF1ZXJ5PT09dm9pZCAwPyExOmI6ITE6ITF9ZnVuY3Rpb24gbChhKXtmb3IodmFyIGI9YS5pbm5lckhlaWdodCgpLGM9WyJwYWRkaW5nVG9wIiwicGFkZGluZ0JvdHRvbSJdLGQ9MCxlPWMubGVuZ3RoO2U+ZDtkKyspe3ZhciBmPXBhcnNlSW50KGEuY3NzKGNbZF0pLDEwKTtpc05hTihmKSYmKGY9MCksYi09Zn1yZXR1cm4gYn1mdW5jdGlvbiBtKGEsYil7cmV0dXJuIGE/KGI9InN0cmluZyI9PXR5cGVvZiBiPyJkb3Rkb3Rkb3Q6ICIrYjpbImRvdGRvdGRvdDoiLGJdLHdpbmRvdy5jb25zb2xlIT09dm9pZCAwJiZ3aW5kb3cuY29uc29sZS5sb2chPT12b2lkIDAmJndpbmRvdy5jb25zb2xlLmxvZyhiKSwhMSk6ITF9aWYoIWEuZm4uZG90ZG90ZG90KXthLmZuLmRvdGRvdGRvdD1mdW5jdGlvbihlKXtpZigwPT10aGlzLmxlbmd0aClyZXR1cm4gZSYmZS5kZWJ1Zz09PSExfHxtKCEwLCdObyBlbGVtZW50IGZvdW5kIGZvciAiJyt0aGlzLnNlbGVjdG9yKyciLicpLHRoaXM7aWYodGhpcy5sZW5ndGg+MSlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7YSh0aGlzKS5kb3Rkb3Rkb3QoZSl9KTt2YXIgZz10aGlzO2cuZGF0YSgiZG90ZG90ZG90IikmJmcudHJpZ2dlcigiZGVzdHJveS5kb3QiKSxnLmRhdGEoImRvdGRvdGRvdC1zdHlsZSIsZy5hdHRyKCJzdHlsZSIpKSxnLmNzcygid29yZC13cmFwIiwiYnJlYWstd29yZCIpLGcuYmluZF9ldmVudHM9ZnVuY3Rpb24oKXtyZXR1cm4gZy5iaW5kKCJ1cGRhdGUuZG90IixmdW5jdGlvbihiLGUpe2IucHJldmVudERlZmF1bHQoKSxiLnN0b3BQcm9wYWdhdGlvbigpLGoubWF4SGVpZ2h0PSJudW1iZXIiPT10eXBlb2Ygai5oZWlnaHQ/ai5oZWlnaHQ6bChnKSxqLm1heEhlaWdodCs9ai50b2xlcmFuY2UsZSE9PXZvaWQgMCYmKCgic3RyaW5nIj09dHlwZW9mIGV8fGUgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkmJihlPWEoIjxkaXYgLz4iKS5hcHBlbmQoZSkuY29udGVudHMoKSksZSBpbnN0YW5jZW9mIGEmJihpPWUpKSxxPWcud3JhcElubmVyKCc8ZGl2IGNsYXNzPSJkb3Rkb3Rkb3QiIC8+JykuY2hpbGRyZW4oKSxxLmVtcHR5KCkuYXBwZW5kKGkuY2xvbmUoITApKS5jc3Moe2hlaWdodDoiYXV0byIsd2lkdGg6ImF1dG8iLGJvcmRlcjoibm9uZSIscGFkZGluZzowLG1hcmdpbjowfSk7dmFyIGg9ITEsaz0hMTtyZXR1cm4gbi5hZnRlckVsZW1lbnQmJihoPW4uYWZ0ZXJFbGVtZW50LmNsb25lKCEwKSxuLmFmdGVyRWxlbWVudC5yZW1vdmUoKSksZihxLGopJiYoaz0iY2hpbGRyZW4iPT1qLndyYXA/YyhxLGosaCk6ZChxLGcscSxqLGgpKSxxLnJlcGxhY2VXaXRoKHEuY29udGVudHMoKSkscT1udWxsLGEuaXNGdW5jdGlvbihqLmNhbGxiYWNrKSYmai5jYWxsYmFjay5jYWxsKGdbMF0sayxpKSxuLmlzVHJ1bmNhdGVkPWssa30pLmJpbmQoImlzVHJ1bmNhdGVkLmRvdCIsZnVuY3Rpb24oYSxiKXtyZXR1cm4gYS5wcmV2ZW50RGVmYXVsdCgpLGEuc3RvcFByb3BhZ2F0aW9uKCksImZ1bmN0aW9uIj09dHlwZW9mIGImJmIuY2FsbChnWzBdLG4uaXNUcnVuY2F0ZWQpLG4uaXNUcnVuY2F0ZWR9KS5iaW5kKCJvcmlnaW5hbENvbnRlbnQuZG90IixmdW5jdGlvbihhLGIpe3JldHVybiBhLnByZXZlbnREZWZhdWx0KCksYS5zdG9wUHJvcGFnYXRpb24oKSwiZnVuY3Rpb24iPT10eXBlb2YgYiYmYi5jYWxsKGdbMF0saSksaX0pLmJpbmQoImRlc3Ryb3kuZG90IixmdW5jdGlvbihhKXthLnByZXZlbnREZWZhdWx0KCksYS5zdG9wUHJvcGFnYXRpb24oKSxnLnVud2F0Y2goKS51bmJpbmRfZXZlbnRzKCkuZW1wdHkoKS5hcHBlbmQoaSkuYXR0cigic3R5bGUiLGcuZGF0YSgiZG90ZG90ZG90LXN0eWxlIikpLmRhdGEoImRvdGRvdGRvdCIsITEpfSksZ30sZy51bmJpbmRfZXZlbnRzPWZ1bmN0aW9uKCl7cmV0dXJuIGcudW5iaW5kKCIuZG90IiksZ30sZy53YXRjaD1mdW5jdGlvbigpe2lmKGcudW53YXRjaCgpLCJ3aW5kb3ciPT1qLndhdGNoKXt2YXIgYj1hKHdpbmRvdyksYz1iLndpZHRoKCksZD1iLmhlaWdodCgpO2IuYmluZCgicmVzaXplLmRvdCIrbi5kb3RJZCxmdW5jdGlvbigpe2M9PWIud2lkdGgoKSYmZD09Yi5oZWlnaHQoKSYmai53aW5kb3dSZXNpemVGaXh8fChjPWIud2lkdGgoKSxkPWIuaGVpZ2h0KCkscCYmY2xlYXJJbnRlcnZhbChwKSxwPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtnLnRyaWdnZXIoInVwZGF0ZS5kb3QiKX0sMTApKX0pfWVsc2Ugbz1oKGcpLHA9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXt2YXIgYT1oKGcpOyhvLndpZHRoIT1hLndpZHRofHxvLmhlaWdodCE9YS5oZWlnaHQpJiYoZy50cmlnZ2VyKCJ1cGRhdGUuZG90Iiksbz1oKGcpKX0sMTAwKTtyZXR1cm4gZ30sZy51bndhdGNoPWZ1bmN0aW9uKCl7cmV0dXJuIGEod2luZG93KS51bmJpbmQoInJlc2l6ZS5kb3QiK24uZG90SWQpLHAmJmNsZWFySW50ZXJ2YWwocCksZ307dmFyIGk9Zy5jb250ZW50cygpLGo9YS5leHRlbmQoITAse30sYS5mbi5kb3Rkb3Rkb3QuZGVmYXVsdHMsZSksbj17fSxvPXt9LHA9bnVsbCxxPW51bGw7cmV0dXJuIG4uYWZ0ZXJFbGVtZW50PWsoai5hZnRlcixnKSxuLmlzVHJ1bmNhdGVkPSExLG4uZG90SWQ9YisrLGcuZGF0YSgiZG90ZG90ZG90IiwhMCkuYmluZF9ldmVudHMoKS50cmlnZ2VyKCJ1cGRhdGUuZG90Iiksai53YXRjaCYmZy53YXRjaCgpLGd9LGEuZm4uZG90ZG90ZG90LmRlZmF1bHRzPXtlbGxpcHNpczoiLi4uICIsd3JhcDoid29yZCIsbGFzdENoYXJhY3Rlcjp7cmVtb3ZlOlsiICIsIiwiLCI7IiwiLiIsIiEiLCI/Il0sbm9FbGxpcHNpczpbXX0sdG9sZXJhbmNlOjAsY2FsbGJhY2s6bnVsbCxhZnRlcjpudWxsLGhlaWdodDpudWxsLHdhdGNoOiExLHdpbmRvd1Jlc2l6ZUZpeDohMCxkZWJ1ZzohMX07dmFyIGI9MSxuPWEuZm4uaHRtbDthLmZuLmh0bWw9ZnVuY3Rpb24oYSl7cmV0dXJuIGEhPT12b2lkIDA/dGhpcy5kYXRhKCJkb3Rkb3Rkb3QiKSYmImZ1bmN0aW9uIiE9dHlwZW9mIGE/dGhpcy50cmlnZ2VyKCJ1cGRhdGUiLFthXSk6bi5jYWxsKHRoaXMsYSk6bi5jYWxsKHRoaXMpfTt2YXIgbz1hLmZuLnRleHQ7YS5mbi50ZXh0PWZ1bmN0aW9uKGIpe2lmKGIhPT12b2lkIDApe2lmKHRoaXMuZGF0YSgiZG90ZG90ZG90Iikpe3ZhciBjPWEoIjxkaXYgLz4iKTtyZXR1cm4gYy50ZXh0KGIpLGI9Yy5odG1sKCksYy5yZW1vdmUoKSx0aGlzLnRyaWdnZXIoInVwZGF0ZSIsW2JdKX1yZXR1cm4gby5jYWxsKHRoaXMsYil9cmV0dXJuIG8uY2FsbCh0aGlzKX19fSkoalF1ZXJ5KTs=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/js/jquery.iviewer.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoKICogaXZpZXdlciBXaWRnZXQgZm9yIGpRdWVyeSBVSQogKiBodHRwczovL2dpdGh1Yi5jb20vY2FuM3AvaXZpZXdlcgogKgogKiBDb3B5cmlnaHQgKGMpIDIwMDkgLSAyMDEyIERtaXRyeSBQZXRyb3YKICogRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGFuZCBHUEwgbGljZW5zZXMuCiAqICAtIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwCiAqICAtIGh0dHA6Ly93d3cuZ251Lm9yZy9jb3B5bGVmdC9ncGwuaHRtbAogKgogKiBBdXRob3I6IERtaXRyeSBQZXRyb3YKICogVmVyc2lvbjogMC43LjcKICovCgooIGZ1bmN0aW9uKCAkLCB1bmRlZmluZWQgKSB7CgovL3RoaXMgY29kZSB3YXMgdGFrZW4gZnJvbSB0aGUgaHR0cHM6Ly9naXRodWIuY29tL2Z1cmYvanF1ZXJ5LXVpLXRvdWNoLXB1bmNoCnZhciBtb3VzZUV2ZW50cyA9IHsKICAgICAgICB0b3VjaHN0YXJ0OiAnbW91c2Vkb3duJywKICAgICAgICB0b3VjaG1vdmU6ICdtb3VzZW1vdmUnLAogICAgICAgIHRvdWNoZW5kOiAnbW91c2V1cCcKICAgIH0sCiAgICBnZXN0dXJlc1N1cHBvcnQgPSAnb25nZXN0dXJlc3RhcnQnIGluIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwoKCi8qKgogKiBDb252ZXJ0IGEgdG91Y2ggZXZlbnQgdG8gYSBtb3VzZS1saWtlCiAqLwpmdW5jdGlvbiBtYWtlTW91c2VFdmVudCAoZXZlbnQpIHsKICAgIHZhciB0b3VjaCA9IGV2ZW50Lm9yaWdpbmFsRXZlbnQuY2hhbmdlZFRvdWNoZXNbMF07CgogICAgcmV0dXJuICQuZXh0ZW5kKGV2ZW50LCB7CiAgICAgICAgdHlwZTogICAgbW91c2VFdmVudHNbZXZlbnQudHlwZV0sCiAgICAgICAgd2hpY2g6ICAgMSwKICAgICAgICBwYWdlWDogICB0b3VjaC5wYWdlWCwKICAgICAgICBwYWdlWTogICB0b3VjaC5wYWdlWSwKICAgICAgICBzY3JlZW5YOiB0b3VjaC5zY3JlZW5YLAogICAgICAgIHNjcmVlblk6IHRvdWNoLnNjcmVlblksCiAgICAgICAgY2xpZW50WDogdG91Y2guY2xpZW50WCwKICAgICAgICBjbGllbnRZOiB0b3VjaC5jbGllbnRZLAogICAgICAgIGlzVG91Y2hFdmVudDogdHJ1ZQogICAgfSk7Cn0KCnZhciBtb3VzZVByb3RvID0gJC51aS5tb3VzZS5wcm90b3R5cGUsCiAgICBfbW91c2VJbml0ID0gJC51aS5tb3VzZS5wcm90b3R5cGUuX21vdXNlSW5pdDsKCm1vdXNlUHJvdG8uX21vdXNlSW5pdCA9IGZ1bmN0aW9uKCkgewogICAgdmFyIHNlbGYgPSB0aGlzOwogICAgc2VsZi5fdG91Y2hBY3RpdmUgPSBmYWxzZTsKCiAgICB0aGlzLmVsZW1lbnQuYmluZCggJ3RvdWNoc3RhcnQuJyArIHRoaXMud2lkZ2V0TmFtZSwgZnVuY3Rpb24oZXZlbnQpIHsKICAgICAgICBpZiAoZ2VzdHVyZXNTdXBwb3J0ICYmIGV2ZW50Lm9yaWdpbmFsRXZlbnQudG91Y2hlcy5sZW5ndGggPiAxKSB7IHJldHVybjsgfQogICAgICAgIHNlbGYuX3RvdWNoQWN0aXZlID0gdHJ1ZTsKICAgICAgICByZXR1cm4gc2VsZi5fbW91c2VEb3duKG1ha2VNb3VzZUV2ZW50KGV2ZW50KSk7CiAgICB9KQoKICAgIHZhciBzZWxmID0gdGhpczsKICAgIC8vIHRoZXNlIGRlbGVnYXRlcyBhcmUgcmVxdWlyZWQgdG8ga2VlcCBjb250ZXh0CiAgICB0aGlzLl9tb3VzZU1vdmVEZWxlZ2F0ZSA9IGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgICAgaWYgKGdlc3R1cmVzU3VwcG9ydCAmJiBldmVudC5vcmlnaW5hbEV2ZW50LnRvdWNoZXMgJiYgZXZlbnQub3JpZ2luYWxFdmVudC50b3VjaGVzLmxlbmd0aCA+IDEpIHsgcmV0dXJuOyB9CiAgICAgICAgaWYgKHNlbGYuX3RvdWNoQWN0aXZlKSB7CiAgICAgICAgICAgIHJldHVybiBzZWxmLl9tb3VzZU1vdmUobWFrZU1vdXNlRXZlbnQoZXZlbnQpKTsKICAgICAgICB9CiAgICB9OwogICAgdGhpcy5fbW91c2VVcERlbGVnYXRlID0gZnVuY3Rpb24oZXZlbnQpIHsKICAgICAgICBpZiAoc2VsZi5fdG91Y2hBY3RpdmUpIHsKICAgICAgICAgICAgc2VsZi5fdG91Y2hBY3RpdmUgPSBmYWxzZTsKICAgICAgICAgICAgcmV0dXJuIHNlbGYuX21vdXNlVXAobWFrZU1vdXNlRXZlbnQoZXZlbnQpKTsKICAgICAgICB9CiAgICB9OwoKICAgICQoZG9jdW1lbnQpCiAgICAgICAgLmJpbmQoJ3RvdWNobW92ZS4nKyB0aGlzLndpZGdldE5hbWUsIHRoaXMuX21vdXNlTW92ZURlbGVnYXRlKQogICAgICAgIC5iaW5kKCd0b3VjaGVuZC4nICsgdGhpcy53aWRnZXROYW1lLCB0aGlzLl9tb3VzZVVwRGVsZWdhdGUpOwoKICAgIF9tb3VzZUluaXQuYXBwbHkodGhpcyk7Cn0KCi8qKgogKiBTaW1wbGUgaW1wbGVtZW50YXRpb24gb2YgalF1ZXJ5IGxpa2UgZ2V0dGVycy9zZXR0ZXJzCiAqIHZhciB2YWwgPSBzb21ldGhpbmcoKTsKICogc29tZXRoaW5nKHZhbCk7CiAqLwp2YXIgc2V0dGVyID0gZnVuY3Rpb24oc2V0dGVyLCBnZXR0ZXIpIHsKICAgIHJldHVybiBmdW5jdGlvbih2YWwpIHsKICAgICAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICByZXR1cm4gZ2V0dGVyLmFwcGx5KHRoaXMpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHNldHRlci5hcHBseSh0aGlzLCBhcmd1bWVudHMpOwogICAgICAgIH0KICAgIH0KfTsKCi8qKgogKiBJbnRlcm5ldCBleHBsb3JlciByb3RhdGVzIGltYWdlIHJlbGF0aXZlIGxlZnQgdG9wIGNvcm5lciwgc28gd2Ugc2hvdWxkCiAqIHNoaWZ0IGltYWdlIHdoZW4gaXQncyByb3RhdGVkLgogKi8KdmFyIGllVHJhbnNmb3JtcyA9IHsKICAgICAgICAnMCc6IHsKICAgICAgICAgICAgbWFyZ2luTGVmdDogMCwKICAgICAgICAgICAgbWFyZ2luVG9wOiAwLAogICAgICAgICAgICBmaWx0ZXI6ICdwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuTWF0cml4KE0xMT0xLCBNMTI9MCwgTTIxPTAsIE0yMj0xLCBTaXppbmdNZXRob2Q9ImF1dG8gZXhwYW5kIiknCiAgICAgICAgfSwKCiAgICAgICAgJzkwJzogewogICAgICAgICAgICBtYXJnaW5MZWZ0OiAtMSwKICAgICAgICAgICAgbWFyZ2luVG9wOiAxLAogICAgICAgICAgICBmaWx0ZXI6ICdwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuTWF0cml4KE0xMT0wLCBNMTI9LTEsIE0yMT0xLCBNMjI9MCwgU2l6aW5nTWV0aG9kPSJhdXRvIGV4cGFuZCIpJwogICAgICAgIH0sCgogICAgICAgICcxODAnOiB7CiAgICAgICAgICAgIG1hcmdpbkxlZnQ6IDAsCiAgICAgICAgICAgIG1hcmdpblRvcDogMCwKICAgICAgICAgICAgZmlsdGVyOiAncHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0Lk1hdHJpeChNMTE9LTEsIE0xMj0wLCBNMjE9MCwgTTIyPS0xLCBTaXppbmdNZXRob2Q9ImF1dG8gZXhwYW5kIiknCiAgICAgICAgfSwKCiAgICAgICAgJzI3MCc6IHsKICAgICAgICAgICAgbWFyZ2luTGVmdDogLTEsCiAgICAgICAgICAgIG1hcmdpblRvcDogMSwKICAgICAgICAgICAgZmlsdGVyOiAncHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0Lk1hdHJpeChNMTE9MCwgTTEyPTEsIE0yMT0tMSwgTTIyPTAsIFNpemluZ01ldGhvZD0iYXV0byBleHBhbmQiKScKICAgICAgICB9CiAgICB9LAogICAgLy8gdGhpcyB0ZXN0IGlzIHRoZSBpbnZlcnNpb24gb2YgdGhlIGNzcyBmaWx0ZXJzIHRlc3QgZnJvbSB0aGUgbW9kZXJuaXpyIHByb2plY3QKICAgIHVzZUllVHJhbnNmb3JtcyA9IGZ1bmN0aW9uKCkgewogICAgICAgIHZhciBtb2RFbGVtID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbW9kZXJuaXpyJyksCgkJbVN0eWxlID0gbW9kRWxlbS5zdHlsZSwKCQlvbVByZWZpeGVzID0gJ1dlYmtpdCBNb3ogTyBtcycsCgkJZG9tUHJlZml4ZXMgPSBvbVByZWZpeGVzLnRvTG93ZXJDYXNlKCkuc3BsaXQoJyAnKSwKICAgICAgICAJcHJvcHMgPSAoInRyYW5zZm9ybSIgKyAnICcgKyBkb21QcmVmaXhlcy5qb2luKCJUcmFuc2Zvcm0gIikgKyAiVHJhbnNmb3JtIikuc3BsaXQoJyAnKTsKICAgICAgICBmb3IgKCB2YXIgaSBpbiBwcm9wcyApIHsKICAgICAgICAgICAgdmFyIHByb3AgPSBwcm9wc1tpXTsKICAgICAgICAgICAgaWYgKCAhJC5jb250YWlucyhwcm9wLCAiLSIpICYmIG1TdHlsZVtwcm9wXSAhPT0gdW5kZWZpbmVkICkgewogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiB0cnVlOwogICAgfSgpOwoKJC53aWRnZXQoICJ1aS5pdmlld2VyIiwgJC51aS5tb3VzZSwgewogICAgd2lkZ2V0RXZlbnRQcmVmaXg6ICJpdmlld2VyIiwKICAgIG9wdGlvbnMgOiB7CiAgICAgICAgLyoqCiAgICAgICAgKiBzdGFydCB6b29tIHZhbHVlIGZvciBpbWFnZSwgbm90IHVzZWQgbm93CiAgICAgICAgKiBtYXkgYmUgZXF1YWwgdG8gImZpdCIgdG8gZml0IGltYWdlIGludG8gY29udGFpbmVyIG9yIHNjYWxlIGluICUKICAgICAgICAqKi8KICAgICAgICB6b29tOiAiZml0IiwKICAgICAgICAvKioKICAgICAgICAqIGJhc2UgdmFsdWUgdG8gc2NhbGUgaW1hZ2UKICAgICAgICAqKi8KICAgICAgICB6b29tX2Jhc2U6IDEwMCwKICAgICAgICAvKioKICAgICAgICAqIG1heGltdW0gem9vbQogICAgICAgICoqLwogICAgICAgIHpvb21fbWF4OiA4MDAsCiAgICAgICAgLyoqCiAgICAgICAgKiBtaW5pbXVtIHpvb20KICAgICAgICAqKi8KICAgICAgICB6b29tX21pbjogMjUsCiAgICAgICAgLyoqCiAgICAgICAgKiBiYXNlIG9mIHJhdGUgbXVsdGlwbGllci4KICAgICAgICAqIHpvb20gaXMgY2FsY3VsYXRlZCBieSBmb3JtdWxhOiB6b29tX2Jhc2UgKiB6b29tX2RlbHRhXnJhdGUKICAgICAgICAqKi8KICAgICAgICB6b29tX2RlbHRhOiAxLjQsCiAgICAgICAgLyoqCiAgICAgICAgKiB3aGV0aGVyIHRoZSB6b29tIHNob3VsZCBiZSBhbmltYXRlZC4KICAgICAgICAqLwogICAgICAgIHpvb21fYW5pbWF0aW9uOiB0cnVlLAogICAgICAgIC8qKgogICAgICAgICogaWYgdHJ1ZSBwbHVnaW4gZG9lc24ndCBhZGQgaXRzIG93biBjb250cm9scwogICAgICAgICoqLwogICAgICAgIHVpX2Rpc2FibGVkOiBmYWxzZSwKICAgICAgICAvKioKICAgICAgICAgKiBJZiBmYWxzZSBtb3VzZXdoZWVsIHdpbGwgYmUgZGlzYWJsZWQKICAgICAgICAgKi8KICAgICAgICBtb3VzZXdoZWVsOiB0cnVlLAogICAgICAgIC8qKgogICAgICAgICogaWYgZmFsc2UsIHBsdWdpbiBkb2Vzbid0IGJpbmQgcmVzaXplIGV2ZW50IG9uIHdpbmRvdyBhbmQgdGhpcyBtdXN0CiAgICAgICAgKiBiZSBoYW5kbGVkIG1hbnVhbGx5CiAgICAgICAgKiovCiAgICAgICAgdXBkYXRlX29uX3Jlc2l6ZTogdHJ1ZSwKICAgICAgICAvKioKICAgICAgICAqIGV2ZW50IGlzIHRyaWdnZXJlZCB3aGVuIHpvb20gdmFsdWUgaXMgY2hhbmdlZAogICAgICAgICogQHBhcmFtIGludCBuZXcgem9vbSB2YWx1ZQogICAgICAgICogQHJldHVybiBib29sZWFuIGlmIGZhbHNlIHpvb20gYWN0aW9uIGlzIGFib3J0ZWQKICAgICAgICAqKi8KICAgICAgICBvblpvb206IGpRdWVyeS5ub29wLAogICAgICAgIC8qKgogICAgICAgICogZXZlbnQgaXMgdHJpZ2dlcmVkIHdoZW4gem9vbSB2YWx1ZSBpcyBjaGFuZ2VkIGFmdGVyIGltYWdlIGlzIHNldCB0byB0aGUgbmV3IGRpbWVuc2lvbnMKICAgICAgICAqIEBwYXJhbSBpbnQgbmV3IHpvb20gdmFsdWUKICAgICAgICAqIEByZXR1cm4gYm9vbGVhbiBpZiBmYWxzZSB6b29tIGFjdGlvbiBpcyBhYm9ydGVkCiAgICAgICAgKiovCiAgICAgICAgb25BZnRlclpvb206IGpRdWVyeS5ub29wLAogICAgICAgIC8qKgogICAgICAgICogZXZlbnQgaXMgZmlyZWQgb24gZHJhZyBiZWdpbgogICAgICAgICogQHBhcmFtIG9iamVjdCBjb29yZHMgbW91c2UgY29vcmRpbmF0ZXMgb24gdGhlIGltYWdlCiAgICAgICAgKiBAcmV0dXJuIGJvb2xlYW4gaWYgZmFsc2UgaXMgcmV0dXJuZWQsIGRyYWcgYWN0aW9uIGlzIGFib3J0ZWQKICAgICAgICAqKi8KICAgICAgICBvblN0YXJ0RHJhZzogalF1ZXJ5Lm5vb3AsCiAgICAgICAgLyoqCiAgICAgICAgKiBldmVudCBpcyBmaXJlZCBvbiBkcmFnIGFjdGlvbgogICAgICAgICogQHBhcmFtIG9iamVjdCBjb29yZHMgbW91c2UgY29vcmRpbmF0ZXMgb24gdGhlIGltYWdlCiAgICAgICAgKiovCiAgICAgICAgb25EcmFnOiBqUXVlcnkubm9vcCwKICAgICAgICAvKioKICAgICAgICAqIGV2ZW50IGlzIGZpcmVkIG9uIGRyYWcgc3RvcAogICAgICAgICogQHBhcmFtIG9iamVjdCBjb29yZHMgbW91c2UgY29vcmRpbmF0ZXMgb24gdGhlIGltYWdlCiAgICAgICAgKiovCiAgICAgICAgb25TdG9wRHJhZzogalF1ZXJ5Lm5vb3AsCiAgICAgICAgLyoqCiAgICAgICAgKiBldmVudCBpcyBmaXJlZCB3aGVuIG1vdXNlIG1vdmVzIG92ZXIgaW1hZ2UKICAgICAgICAqIEBwYXJhbSBvYmplY3QgY29vcmRzIG1vdXNlIGNvb3JkaW5hdGVzIG9uIHRoZSBpbWFnZQogICAgICAgICoqLwogICAgICAgIG9uTW91c2VNb3ZlOiBqUXVlcnkubm9vcCwKICAgICAgICAvKioKICAgICAgICAqIG1vdXNlIGNsaWNrIGV2ZW50CiAgICAgICAgKiBAcGFyYW0gb2JqZWN0IGNvb3JkcyBtb3VzZSBjb29yZGluYXRlcyBvbiB0aGUgaW1hZ2UKICAgICAgICAqKi8KICAgICAgICBvbkNsaWNrOiBqUXVlcnkubm9vcCwKICAgICAgICAvKioKICAgICAgICAqIGV2ZW50IGlzIGZpcmVkIHdoZW4gaW1hZ2Ugc3RhcnRzIHRvIGxvYWQKICAgICAgICAqLwogICAgICAgIG9uU3RhcnRMb2FkOiBudWxsLAogICAgICAgIC8qKgogICAgICAgICogZXZlbnQgaXMgZmlyZWQsIHdoZW4gaW1hZ2UgaXMgbG9hZGVkIGFuZCBpbml0aWFsbHkgcG9zaXRpb25lZAogICAgICAgICovCiAgICAgICAgb25GaW5pc2hMb2FkOiBudWxsLAogICAgICAgIC8qKgogICAgICAgICogZXZlbnQgaXMgZmlyZWQgd2hlbiBpbWFnZSBsb2FkIGVycm9yIG9jY3VycwogICAgICAgICovCiAgICAgICAgb25FcnJvckxvYWQ6IG51bGwKICAgIH0sCgogICAgX2NyZWF0ZTogZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIG1lID0gdGhpczsKCiAgICAgICAgLy9kcmFnIHZhcmlhYmxlcwogICAgICAgIHRoaXMuZHggPSAwOwogICAgICAgIHRoaXMuZHkgPSAwOwoKICAgICAgICAvKiBvYmplY3QgY29udGFpbmluZyBhY3R1YWwgaW5mb3JtYXRpb24gYWJvdXQgaW1hZ2UKICAgICAgICAqICAgQGltZ19vYmplY3Qub2JqZWN0IC0ganF1ZXJ5IGltZyBvYmplY3QKICAgICAgICAqICAgQGltZ19vYmplY3Qub3JpZ197d2lkdGh8aGVpZ2h0fSAtIG9yaWdpbmFsIGRpbWVuc2lvbnMKICAgICAgICAqICAgQGltZ19vYmplY3QuZGlzcGxheV97d2lkdGh8aGVpZ2h0fSAtIGFjdHVhbCBkaW1lbnNpb25zCiAgICAgICAgKi8KICAgICAgICB0aGlzLmltZ19vYmplY3QgPSB7fTsKCiAgICAgICAgdGhpcy56b29tX29iamVjdCA9IHt9OyAvL29iamVjdCB0byBzaG93IHpvb20gc3RhdHVzCgogICAgICAgIHRoaXMuX2FuZ2xlID0gMDsKCiAgICAgICAgdGhpcy5jdXJyZW50X3pvb20gPSB0aGlzLm9wdGlvbnMuem9vbTsKCiAgICAgICAgaWYodGhpcy5vcHRpb25zLnNyYyA9PT0gbnVsbCl7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CgogICAgICAgIHRoaXMuY29udGFpbmVyID0gdGhpcy5lbGVtZW50OwoKICAgICAgICB0aGlzLl91cGRhdGVDb250YWluZXJJbmZvKCk7CgogICAgICAgIC8vaW5pdCBjb250YWluZXIKICAgICAgICB0aGlzLmNvbnRhaW5lci5jc3MoIm92ZXJmbG93IiwiaGlkZGVuIik7CgogICAgICAgIGlmICh0aGlzLm9wdGlvbnMudXBkYXRlX29uX3Jlc2l6ZSA9PSB0cnVlKSB7CiAgICAgICAgICAgICQod2luZG93KS5yZXNpemUoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBtZS51cGRhdGUoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgfQoKICAgICAgICB0aGlzLmltZ19vYmplY3QgPSBuZXcgJC51aS5pdmlld2VyLkltYWdlT2JqZWN0KHRoaXMub3B0aW9ucy56b29tX2FuaW1hdGlvbik7CgogICAgICAgIGlmICh0aGlzLm9wdGlvbnMubW91c2V3aGVlbCkgewogICAgICAgICAgICB0aGlzLmNvbnRhaW5lci5iaW5kKCdtb3VzZXdoZWVsLml2aWV3ZXInLCBmdW5jdGlvbihldiwgZGVsdGEpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgLy90aGlzIGV2ZW50IGlzIHRoZXJlIGluc3RlYWQgb2YgY29udGFpbmluZyBkaXYsIGJlY2F1c2UKICAgICAgICAgICAgICAgICAgICAvL2F0IG9wZXJhIGl0IHRyaWdnZXJzIG1hbnkgdGltZXMgb24gZGl2CiAgICAgICAgICAgICAgICAgICAgdmFyIHpvb20gPSAoZGVsdGEgPiAwKT8xOi0xLAogICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXJfb2Zmc2V0ID0gbWUuY29udGFpbmVyLm9mZnNldCgpLAogICAgICAgICAgICAgICAgICAgICAgICBtb3VzZV9wb3MgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL2pxdWVyeS5tb3VzZXdoZWVsIDMuMS4wIHVzZXMgc3RyYW5nZSBNb3pNb3VzZVBpeGVsU2Nyb2xsIGV2ZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3doaWNoIGlzIG5vdCBiZWluZyBmaXhlZCBieSBqUXVlcnkuRXZlbnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHg6IChldi5wYWdlWCB8fCBldi5vcmlnaW5hbEV2ZW50LnBhZ2VYKSAtIGNvbnRhaW5lcl9vZmZzZXQubGVmdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHk6IChldi5wYWdlWSB8fCBldi5vcmlnaW5hbEV2ZW50LnBhZ2VYKSAtIGNvbnRhaW5lcl9vZmZzZXQudG9wCiAgICAgICAgICAgICAgICAgICAgICAgIH07CgogICAgICAgICAgICAgICAgICAgIG1lLnpvb21fYnkoem9vbSwgbW91c2VfcG9zKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIGlmIChnZXN0dXJlc1N1cHBvcnQpIHsKICAgICAgICAgICAgICAgIHZhciBnZXN0dXJlVGhyb3R0bGUgPSArbmV3IERhdGUoKTsKICAgICAgICAgICAgICAgIHZhciBvcmlnaW5hbFNjYWxlLCBvcmlnaW5hbENlbnRlcjsKICAgICAgICAgICAgICAgIHRoaXMuaW1nX29iamVjdC5vYmplY3QoKQogICAgICAgICAgICAgICAgICAgIC8vIC5iaW5kKCdnZXN0dXJlc3RhcnQnLCBmdW5jdGlvbihldikgewogICAgICAgICAgICAgICAgICAgIC5iaW5kKCd0b3VjaHN0YXJ0JywgZnVuY3Rpb24oZXYpIHsKICAgICAgICAgICAgICAgICAgICAgICAgb3JpZ2luYWxTY2FsZSA9IG1lLmN1cnJlbnRfem9vbTsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHRvdWNoZXMgPSBldi5vcmlnaW5hbEV2ZW50LnRvdWNoZXMsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXJfb2Zmc2V0OwogICAgICAgICAgICAgICAgICAgICAgICBpZiAodG91Y2hlcy5sZW5ndGggPT0gMikgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGFpbmVyX29mZnNldCA9IG1lLmNvbnRhaW5lci5vZmZzZXQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yaWdpbmFsQ2VudGVyID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHg6ICh0b3VjaGVzWzBdLnBhZ2VYICsgdG91Y2hlc1sxXS5wYWdlWCkgLyAyICAtIGNvbnRhaW5lcl9vZmZzZXQubGVmdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB5OiAodG91Y2hlc1swXS5wYWdlWSArIHRvdWNoZXNbMV0ucGFnZVkpIC8gMiAtIGNvbnRhaW5lcl9vZmZzZXQudG9wCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JpZ2luYWxDZW50ZXIgPSBudWxsOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSkuYmluZCgnZ2VzdHVyZWNoYW5nZScsIGZ1bmN0aW9uKGV2KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vZG8gbm90IHdhbnQgdG8gaW1wb3J0IHRocm90dGxlIGZ1bmN0aW9uIGZyb20gdW5kZXJzY29yZQogICAgICAgICAgICAgICAgICAgICAgICB2YXIgZCA9ICtuZXcgRGF0ZSgpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoKGQgLSBnZXN0dXJlVGhyb3R0bGUpIDwgNTApIHsgcmV0dXJuOyB9CiAgICAgICAgICAgICAgICAgICAgICAgIGdlc3R1cmVUaHJvdHRsZSA9IGQ7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciB6b29tID0gb3JpZ2luYWxTY2FsZSAqIGV2Lm9yaWdpbmFsRXZlbnQuc2NhbGU7CiAgICAgICAgICAgICAgICAgICAgICAgIG1lLnNldF96b29tKHpvb20sIG9yaWdpbmFsQ2VudGVyKTsKICAgICAgICAgICAgICAgICAgICAgICAgZXYucHJldmVudERlZmF1bHQoKTsKICAgICAgICAgICAgICAgICAgICB9KS5iaW5kKCdnZXN0dXJlZW5kJywgZnVuY3Rpb24oZXYpIHsKICAgICAgICAgICAgICAgICAgICAgICAgb3JpZ2luYWxDZW50ZXIgPSBudWxsOwogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAvL2luaXQgb2JqZWN0CiAgICAgICAgdGhpcy5pbWdfb2JqZWN0Lm9iamVjdCgpCiAgICAgICAgICAgIC8vYmluZCBtb3VzZSBldmVudHMKICAgICAgICAgICAgLmNsaWNrKGZ1bmN0aW9uKGUpe3JldHVybiBtZS5fY2xpY2soZSl9KQogICAgICAgICAgICAgICAgLnByZXBlbmRUbyh0aGlzLmNvbnRhaW5lcik7CgogICAgICAgIHRoaXMuY29udGFpbmVyLmJpbmQoJ21vdXNlbW92ZScsIGZ1bmN0aW9uKGV2KSB7IG1lLl9oYW5kbGVNb3VzZU1vdmUoZXYpOyB9KTsKCiAgICAgICAgdGhpcy5sb2FkSW1hZ2UodGhpcy5vcHRpb25zLnNyYyk7CgogICAgICAgIGlmKCF0aGlzLm9wdGlvbnMudWlfZGlzYWJsZWQpCiAgICAgICAgewogICAgICAgICAgICB0aGlzLmNyZWF0ZXVpKCk7CiAgICAgICAgfQoKICAgICAgICB0aGlzLl9tb3VzZUluaXQoKTsKICAgIH0sCgogICAgZGVzdHJveTogZnVuY3Rpb24oKSB7CiAgICAgICAgJC5XaWRnZXQucHJvdG90eXBlLmRlc3Ryb3kuY2FsbCggdGhpcyApOwogICAgICAgIHRoaXMuX21vdXNlRGVzdHJveSgpOwogICAgICAgIHRoaXMuaW1nX29iamVjdC5vYmplY3QoKS5yZW1vdmUoKTsKICAgICAgICB0aGlzLmNvbnRhaW5lci5vZmYoJy5pdmlld2VyJyk7CiAgICAgICAgdGhpcy5jb250YWluZXIuY3NzKCdvdmVyZmxvdycsICcnKTsgLy9jbGVhbnVwIHN0eWxlcyBvbiBkZXN0cm95CiAgICB9LAoKICAgIF91cGRhdGVDb250YWluZXJJbmZvOiBmdW5jdGlvbigpCiAgICB7CiAgICAgICAgdGhpcy5vcHRpb25zLmhlaWdodCA9IHRoaXMuY29udGFpbmVyLmhlaWdodCgpOwogICAgICAgIHRoaXMub3B0aW9ucy53aWR0aCA9IHRoaXMuY29udGFpbmVyLndpZHRoKCk7CiAgICB9LAoKICAgIHVwZGF0ZTogZnVuY3Rpb24oKQogICAgewogICAgICAgIHRoaXMuX3VwZGF0ZUNvbnRhaW5lckluZm8oKQogICAgICAgIHRoaXMuc2V0Q29vcmRzKHRoaXMuaW1nX29iamVjdC54KCksIHRoaXMuaW1nX29iamVjdC55KCkpOwogICAgfSwKCiAgICBsb2FkSW1hZ2U6IGZ1bmN0aW9uKCBzcmMgKQogICAgewogICAgICAgIHRoaXMuY3VycmVudF96b29tID0gdGhpcy5vcHRpb25zLnpvb207CiAgICAgICAgdmFyIG1lID0gdGhpczsKCiAgICAgICAgdGhpcy5fdHJpZ2dlcignb25TdGFydExvYWQnLCAwLCBzcmMpOwoKICAgICAgICB0aGlzLmNvbnRhaW5lci5hZGRDbGFzcygiaXZpZXdlcl9sb2FkaW5nIik7CiAgICAgICAgdGhpcy5pbWdfb2JqZWN0LmxvYWQoc3JjLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgbWUuX2ltYWdlTG9hZGVkKHNyYyk7CiAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIG1lLl90cmlnZ2VyKCJvbkVycm9yTG9hZCIsIDAsIHNyYyk7CiAgICAgICAgfSk7CiAgICB9LAoKICAgIF9pbWFnZUxvYWRlZDogZnVuY3Rpb24oc3JjKSB7CiAgICAgICAgdGhpcy5jb250YWluZXIucmVtb3ZlQ2xhc3MoIml2aWV3ZXJfbG9hZGluZyIpOwogICAgICAgIHRoaXMuY29udGFpbmVyLmFkZENsYXNzKCJpdmlld2VyX2N1cnNvciIpOwoKICAgICAgICBpZih0aGlzLm9wdGlvbnMuem9vbSA9PSAiZml0Iil7CiAgICAgICAgICAgIHRoaXMuZml0KHRydWUpOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgdGhpcy5zZXRfem9vbSh0aGlzLm9wdGlvbnMuem9vbSwgdHJ1ZSk7CiAgICAgICAgfQoKICAgICAgICB0aGlzLl90cmlnZ2VyKCdvbkZpbmlzaExvYWQnLCAwLCBzcmMpOwogICAgfSwKCiAgICAvKioKICAgICogZml0cyBpbWFnZSBpbiB0aGUgY29udGFpbmVyCiAgICAqCiAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gc2tpcF9hbmltYXRpb24KICAgICoqLwogICAgZml0OiBmdW5jdGlvbihza2lwX2FuaW1hdGlvbikKICAgIHsKICAgICAgICB2YXIgYXNwZWN0X3JhdGlvID0gdGhpcy5pbWdfb2JqZWN0Lm9yaWdfd2lkdGgoKSAvIHRoaXMuaW1nX29iamVjdC5vcmlnX2hlaWdodCgpOwogICAgICAgIHZhciB3aW5kb3dfcmF0aW8gPSB0aGlzLm9wdGlvbnMud2lkdGggLyAgdGhpcy5vcHRpb25zLmhlaWdodDsKICAgICAgICB2YXIgY2hvb3NlX2xlZnQgPSAoYXNwZWN0X3JhdGlvID4gd2luZG93X3JhdGlvKTsKICAgICAgICB2YXIgbmV3X3pvb20gPSAwOwoKICAgICAgICBpZihjaG9vc2VfbGVmdCl7CiAgICAgICAgICAgIG5ld196b29tID0gdGhpcy5vcHRpb25zLndpZHRoIC8gdGhpcy5pbWdfb2JqZWN0Lm9yaWdfd2lkdGgoKSAqIDEwMDsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIG5ld196b29tID0gdGhpcy5vcHRpb25zLmhlaWdodCAvIHRoaXMuaW1nX29iamVjdC5vcmlnX2hlaWdodCgpICogMTAwOwogICAgICAgIH0KCiAgICAgIHRoaXMuc2V0X3pvb20obmV3X3pvb20sIHNraXBfYW5pbWF0aW9uKTsKICAgIH0sCgogICAgLyoqCiAgICAqIGNlbnRlciBpbWFnZSBpbiBjb250YWluZXIKICAgICoqLwogICAgY2VudGVyOiBmdW5jdGlvbigpCiAgICB7CiAgICAgICAgdGhpcy5zZXRDb29yZHMoLU1hdGgucm91bmQoKHRoaXMuaW1nX29iamVjdC5kaXNwbGF5X3dpZHRoKCkgLSB0aGlzLm9wdGlvbnMud2lkdGgpLzIpLAogICAgICAgICAgICAgICAgLU1hdGgucm91bmQoKHRoaXMuaW1nX29iamVjdC5kaXNwbGF5X2hlaWdodCgpIC0gdGhpcy5vcHRpb25zLmhlaWdodCkvMikpOwogICAgfSwKCiAgICAvKioKICAgICogICBtb3ZlIGEgcG9pbnQgaW4gY29udGFpbmVyIHRvIHRoZSBjZW50ZXIgb2YgZGlzcGxheSBhcmVhCiAgICAqICAgQHBhcmFtIHggYSBwb2ludCBpbiBjb250YWluZXIKICAgICogICBAcGFyYW0geSBhIHBvaW50IGluIGNvbnRhaW5lcgogICAgKiovCiAgICBtb3ZlVG86IGZ1bmN0aW9uKHgsIHkpCiAgICB7CiAgICAgICAgdmFyIGR4ID0geC1NYXRoLnJvdW5kKHRoaXMub3B0aW9ucy53aWR0aC8yKTsKICAgICAgICB2YXIgZHkgPSB5LU1hdGgucm91bmQodGhpcy5vcHRpb25zLmhlaWdodC8yKTsKCiAgICAgICAgdmFyIG5ld194ID0gdGhpcy5pbWdfb2JqZWN0LngoKSAtIGR4OwogICAgICAgIHZhciBuZXdfeSA9IHRoaXMuaW1nX29iamVjdC55KCkgLSBkeTsKCiAgICAgICAgdGhpcy5zZXRDb29yZHMobmV3X3gsIG5ld195KTsKICAgIH0sCgogICAgLyoqCiAgICAgKiBHZXQgY29udGFpbmVyIG9mZnNldCBvYmplY3QuCiAgICAgKi8KICAgIGdldENvbnRhaW5lck9mZnNldDogZnVuY3Rpb24oKSB7CiAgICAgICAgcmV0dXJuIGpRdWVyeS5leHRlbmQoe30sIHRoaXMuY29udGFpbmVyLm9mZnNldCgpKTsKICAgIH0sCgogICAgLyoqCiAgICAqIHNldCBjb29yZGluYXRlcyBvZiB1cHBlciBsZWZ0IGNvcm5lciBvZiBpbWFnZSBvYmplY3QKICAgICoqLwogICAgc2V0Q29vcmRzOiBmdW5jdGlvbih4LHkpCiAgICB7CiAgICAgICAgLy9kbyBub3RoaW5nIHdoaWxlIGltYWdlIGlzIGJlaW5nIGxvYWRlZAogICAgICAgIGlmKCF0aGlzLmltZ19vYmplY3QubG9hZGVkKCkpIHsgcmV0dXJuOyB9CgogICAgICAgIHZhciBjb29yZHMgPSB0aGlzLl9jb3JyZWN0Q29vcmRzKHgseSk7CiAgICAgICAgdGhpcy5pbWdfb2JqZWN0LngoY29vcmRzLngpOwogICAgICAgIHRoaXMuaW1nX29iamVjdC55KGNvb3Jkcy55KTsKICAgIH0sCgogICAgX2NvcnJlY3RDb29yZHM6IGZ1bmN0aW9uKCB4LCB5ICkKICAgIHsKICAgICAgICB4ID0gcGFyc2VJbnQoeCwgMTApOwogICAgICAgIHkgPSBwYXJzZUludCh5LCAxMCk7CgogICAgICAgIC8vY2hlY2sgbmV3IGNvb3JkaW5hdGVzIHRvIGJlIGNvcnJlY3QgKHRvIGJlIGluIHJlY3QpCiAgICAgICAgaWYoeSA+IDApewogICAgICAgICAgICB5ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYoeCA+IDApewogICAgICAgICAgICB4ID0gMDsKICAgICAgICB9CiAgICAgICAgaWYoeSArIHRoaXMuaW1nX29iamVjdC5kaXNwbGF5X2hlaWdodCgpIDwgdGhpcy5vcHRpb25zLmhlaWdodCl7CiAgICAgICAgICAgIHkgPSB0aGlzLm9wdGlvbnMuaGVpZ2h0IC0gdGhpcy5pbWdfb2JqZWN0LmRpc3BsYXlfaGVpZ2h0KCk7CiAgICAgICAgfQogICAgICAgIGlmKHggKyB0aGlzLmltZ19vYmplY3QuZGlzcGxheV93aWR0aCgpIDwgdGhpcy5vcHRpb25zLndpZHRoKXsKICAgICAgICAgICAgeCA9IHRoaXMub3B0aW9ucy53aWR0aCAtIHRoaXMuaW1nX29iamVjdC5kaXNwbGF5X3dpZHRoKCk7CiAgICAgICAgfQogICAgICAgIGlmKHRoaXMuaW1nX29iamVjdC5kaXNwbGF5X3dpZHRoKCkgPD0gdGhpcy5vcHRpb25zLndpZHRoKXsKICAgICAgICAgICAgeCA9IC0odGhpcy5pbWdfb2JqZWN0LmRpc3BsYXlfd2lkdGgoKSAtIHRoaXMub3B0aW9ucy53aWR0aCkvMjsKICAgICAgICB9CiAgICAgICAgaWYodGhpcy5pbWdfb2JqZWN0LmRpc3BsYXlfaGVpZ2h0KCkgPD0gdGhpcy5vcHRpb25zLmhlaWdodCl7CiAgICAgICAgICAgIHkgPSAtKHRoaXMuaW1nX29iamVjdC5kaXNwbGF5X2hlaWdodCgpIC0gdGhpcy5vcHRpb25zLmhlaWdodCkvMjsKICAgICAgICB9CgogICAgICAgIHJldHVybiB7IHg6IHgsIHk6eSB9OwogICAgfSwKCgogICAgLyoqCiAgICAqIGNvbnZlcnQgY29vcmRpbmF0ZXMgb24gdGhlIGNvbnRhaW5lciB0byB0aGUgY29vcmRpbmF0ZXMgb24gdGhlIGltYWdlIChpbiBvcmlnaW5hbCBzaXplKQogICAgKgogICAgKiBAcmV0dXJuIG9iamVjdCB3aXRoIGZpZWxkcyB4LHkgYWNjb3JkaW5nIHRvIGNvb3JkaW5hdGVzIG9yIGZhbHNlCiAgICAqIGlmIGluaXRpYWwgY29vcmRzIGFyZSBub3QgaW5zaWRlIGltYWdlCiAgICAqKi8KICAgIGNvbnRhaW5lclRvSW1hZ2UgOiBmdW5jdGlvbiAoeCx5KQogICAgewogICAgICAgIHZhciBjb29yZHMgPSB7IHggOiB4IC0gdGhpcy5pbWdfb2JqZWN0LngoKSwKICAgICAgICAgICAgICAgICB5IDogIHkgLSB0aGlzLmltZ19vYmplY3QueSgpCiAgICAgICAgfTsKCiAgICAgICAgY29vcmRzID0gdGhpcy5pbWdfb2JqZWN0LnRvT3JpZ2luYWxDb29yZHMoY29vcmRzKTsKCiAgICAgICAgcmV0dXJuIHsgeCA6ICB1dGlsLmRlc2NhbGVWYWx1ZShjb29yZHMueCwgdGhpcy5jdXJyZW50X3pvb20pLAogICAgICAgICAgICAgICAgIHkgOiAgdXRpbC5kZXNjYWxlVmFsdWUoY29vcmRzLnksIHRoaXMuY3VycmVudF96b29tKQogICAgICAgIH07CiAgICB9LAoKICAgIC8qKgogICAgKiBjb252ZXJ0IGNvb3JkaW5hdGVzIG9uIHRoZSBpbWFnZSAoaW4gb3JpZ2luYWwgc2l6ZSwgYW5kIHplcm8gYW5nbGUpIHRvIHRoZSBjb29yZGluYXRlcyBvbiB0aGUgY29udGFpbmVyCiAgICAqCiAgICAqIEByZXR1cm4gb2JqZWN0IHdpdGggZmllbGRzIHgseSBhY2NvcmRpbmcgdG8gY29vcmRpbmF0ZXMKICAgICoqLwogICAgaW1hZ2VUb0NvbnRhaW5lciA6IGZ1bmN0aW9uICh4LHkpCiAgICB7CiAgICAgICAgdmFyIGNvb3JkcyA9IHsKICAgICAgICAgICAgICAgIHggOiB1dGlsLnNjYWxlVmFsdWUoeCwgdGhpcy5jdXJyZW50X3pvb20pLAogICAgICAgICAgICAgICAgeSA6IHV0aWwuc2NhbGVWYWx1ZSh5LCB0aGlzLmN1cnJlbnRfem9vbSkKICAgICAgICAgICAgfTsKCiAgICAgICAgcmV0dXJuIHRoaXMuaW1nX29iamVjdC50b1JlYWxDb29yZHMoY29vcmRzKTsKICAgIH0sCgogICAgLyoqCiAgICAqIGdldCBtb3VzZSBjb29yZGluYXRlcyBvbiB0aGUgaW1hZ2UKICAgICogQHBhcmFtIGUgLSBvYmplY3QgY29udGFpbmluZyBwYWdlWCBhbmQgcGFnZVkgZmllbGRzLCBlLmcuIG1vdXNlIGV2ZW50IG9iamVjdAogICAgKgogICAgKiBAcmV0dXJuIG9iamVjdCB3aXRoIGZpZWxkcyB4LHkgYWNjb3JkaW5nIHRvIGNvb3JkaW5hdGVzIG9yIGZhbHNlCiAgICAqIGlmIGluaXRpYWwgY29vcmRzIGFyZSBub3QgaW5zaWRlIGltYWdlCiAgICAqKi8KICAgIF9nZXRNb3VzZUNvb3JkcyA6IGZ1bmN0aW9uKGUpCiAgICB7CiAgICAgICAgdmFyIGNvbnRhaW5lck9mZnNldCA9IHRoaXMuY29udGFpbmVyLm9mZnNldCgpOwogICAgICAgICAgICBjb29yZHMgPSB0aGlzLmNvbnRhaW5lclRvSW1hZ2UoZS5wYWdlWCAtIGNvbnRhaW5lck9mZnNldC5sZWZ0LCBlLnBhZ2VZIC0gY29udGFpbmVyT2Zmc2V0LnRvcCk7CgogICAgICAgIHJldHVybiBjb29yZHM7CiAgICB9LAoKICAgIC8qKgogICAgKiBzZXQgaW1hZ2Ugc2NhbGUgdG8gdGhlIG5ld196b29tCiAgICAqCiAgICAqIEBwYXJhbSB7bnVtYmVyfSBuZXdfem9vbSBpbWFnZSBzY2FsZSBpbiAlCiAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gc2tpcF9hbmltYXRpb24KICAgICogQHBhcmFtIHt4OiBudW1iZXIsIHk6IG51bWJlcn0gQ29vcmRpbmF0ZXMgb2YgcG9pbnQgdGhlIHNob3VsZCBub3QgYmUgbW92ZWQgb24gem9vbS4gVGhlIGRlZmF1bHQgaXMgdGhlIGNlbnRlciBvZiBpbWFnZS4KICAgICoqLwogICAgc2V0X3pvb206IGZ1bmN0aW9uKG5ld196b29tLCBza2lwX2FuaW1hdGlvbiwgem9vbV9jZW50ZXIpCiAgICB7CiAgICAgICAgaWYgKHRoaXMuX3RyaWdnZXIoJ29uWm9vbScsIDAsIG5ld196b29tKSA9PSBmYWxzZSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQoKICAgICAgICAvL2RvIG5vdGhpbmcgd2hpbGUgaW1hZ2UgaXMgYmVpbmcgbG9hZGVkCiAgICAgICAgaWYoIXRoaXMuaW1nX29iamVjdC5sb2FkZWQoKSkgeyByZXR1cm47IH0KCiAgICAgICAgem9vbV9jZW50ZXIgPSB6b29tX2NlbnRlciB8fCB7CiAgICAgICAgICAgIHg6IE1hdGgucm91bmQodGhpcy5vcHRpb25zLndpZHRoLzIpLAogICAgICAgICAgICB5OiBNYXRoLnJvdW5kKHRoaXMub3B0aW9ucy5oZWlnaHQvMikKICAgICAgICB9CgogICAgICAgIGlmKG5ld196b29tIDwgIHRoaXMub3B0aW9ucy56b29tX21pbikKICAgICAgICB7CiAgICAgICAgICAgIG5ld196b29tID0gdGhpcy5vcHRpb25zLnpvb21fbWluOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmKG5ld196b29tID4gdGhpcy5vcHRpb25zLnpvb21fbWF4KQogICAgICAgIHsKICAgICAgICAgICAgbmV3X3pvb20gPSB0aGlzLm9wdGlvbnMuem9vbV9tYXg7CiAgICAgICAgfQoKICAgICAgICAvKiB3ZSBmYWtlIHRoZXNlIHZhbHVlcyB0byBtYWtlIGZpdCB6b29tIHByb3Blcmx5IHdvcmsgKi8KICAgICAgICBpZih0aGlzLmN1cnJlbnRfem9vbSA9PSAiZml0IikKICAgICAgICB7CiAgICAgICAgICAgIHZhciBvbGRfeCA9IHpvb21fY2VudGVyLnggKyBNYXRoLnJvdW5kKHRoaXMuaW1nX29iamVjdC5vcmlnX3dpZHRoKCkvMik7CiAgICAgICAgICAgIHZhciBvbGRfeSA9IHpvb21fY2VudGVyLnkgKyBNYXRoLnJvdW5kKHRoaXMuaW1nX29iamVjdC5vcmlnX2hlaWdodCgpLzIpOwogICAgICAgICAgICB0aGlzLmN1cnJlbnRfem9vbSA9IDEwMDsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIHZhciBvbGRfeCA9IC10aGlzLmltZ19vYmplY3QueCgpICsgem9vbV9jZW50ZXIueDsKICAgICAgICAgICAgdmFyIG9sZF95ID0gLXRoaXMuaW1nX29iamVjdC55KCkgKyB6b29tX2NlbnRlci55CiAgICAgICAgfQoKICAgICAgICB2YXIgbmV3X3dpZHRoID0gdXRpbC5zY2FsZVZhbHVlKHRoaXMuaW1nX29iamVjdC5vcmlnX3dpZHRoKCksIG5ld196b29tKTsKICAgICAgICB2YXIgbmV3X2hlaWdodCA9IHV0aWwuc2NhbGVWYWx1ZSh0aGlzLmltZ19vYmplY3Qub3JpZ19oZWlnaHQoKSwgbmV3X3pvb20pOwogICAgICAgIHZhciBuZXdfeCA9IHV0aWwuc2NhbGVWYWx1ZSggdXRpbC5kZXNjYWxlVmFsdWUob2xkX3gsIHRoaXMuY3VycmVudF96b29tKSwgbmV3X3pvb20pOwogICAgICAgIHZhciBuZXdfeSA9IHV0aWwuc2NhbGVWYWx1ZSggdXRpbC5kZXNjYWxlVmFsdWUob2xkX3ksIHRoaXMuY3VycmVudF96b29tKSwgbmV3X3pvb20pOwoKICAgICAgICBuZXdfeCA9IHpvb21fY2VudGVyLnggLSBuZXdfeDsKICAgICAgICBuZXdfeSA9IHpvb21fY2VudGVyLnkgLSBuZXdfeTsKCiAgICAgICAgbmV3X3dpZHRoID0gTWF0aC5mbG9vcihuZXdfd2lkdGgpOwogICAgICAgIG5ld19oZWlnaHQgPSBNYXRoLmZsb29yKG5ld19oZWlnaHQpOwogICAgICAgIG5ld194ID0gTWF0aC5mbG9vcihuZXdfeCk7CiAgICAgICAgbmV3X3kgPSBNYXRoLmZsb29yKG5ld195KTsKCiAgICAgICAgdGhpcy5pbWdfb2JqZWN0LmRpc3BsYXlfd2lkdGgobmV3X3dpZHRoKTsKICAgICAgICB0aGlzLmltZ19vYmplY3QuZGlzcGxheV9oZWlnaHQobmV3X2hlaWdodCk7CgogICAgICAgIHZhciBjb29yZHMgPSB0aGlzLl9jb3JyZWN0Q29vcmRzKCBuZXdfeCwgbmV3X3kgKSwKICAgICAgICAgICAgc2VsZiA9IHRoaXM7CgogICAgICAgIHRoaXMuaW1nX29iamVjdC5zZXRJbWFnZVByb3BzKG5ld193aWR0aCwgbmV3X2hlaWdodCwgY29vcmRzLngsIGNvb3Jkcy55LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2tpcF9hbmltYXRpb24sIGZ1bmN0aW9uKCkgewogICAgICAgICAgICBzZWxmLl90cmlnZ2VyKCdvbkFmdGVyWm9vbScsIDAsIG5ld196b29tICk7CiAgICAgICAgfSk7CiAgICAgICAgdGhpcy5jdXJyZW50X3pvb20gPSBuZXdfem9vbTsKCiAgICAgICAgdGhpcy51cGRhdGVfc3RhdHVzKCk7CiAgICB9LAoKICAgIC8qKgogICAgKiBjaGFuZ2VzIHpvb20gc2NhbGUgYnkgZGVsdGEKICAgICogem9vbSBpcyBjYWxjdWxhdGVkIGJ5IGZvcm11bGE6IHpvb21fYmFzZSAqIHpvb21fZGVsdGFecmF0ZQogICAgKiBAcGFyYW0gSW50ZWdlciBkZWx0YSBudW1iZXIgdG8gYWRkIHRvIHRoZSBjdXJyZW50IG11bHRpcGxpZXIgcmF0ZSBudW1iZXIKICAgICogQHBhcmFtIHt4OiBudW1iZXIsIHk6IG51bWJlcj19IENvb3JkaW5hdGVzIG9mIHBvaW50IHRoZSBzaG91bGQgbm90IGJlIG1vdmVkIG9uIHpvb20uCiAgICAqKi8KICAgIHpvb21fYnk6IGZ1bmN0aW9uKGRlbHRhLCB6b29tX2NlbnRlcikKICAgIHsKICAgICAgICB2YXIgY2xvc2VzdF9yYXRlID0gdGhpcy5maW5kX2Nsb3Nlc3Rfem9vbV9yYXRlKHRoaXMuY3VycmVudF96b29tKTsKCiAgICAgICAgdmFyIG5leHRfcmF0ZSA9IGNsb3Nlc3RfcmF0ZSArIGRlbHRhOwogICAgICAgIHZhciBuZXh0X3pvb20gPSB0aGlzLm9wdGlvbnMuem9vbV9iYXNlICogTWF0aC5wb3codGhpcy5vcHRpb25zLnpvb21fZGVsdGEsIG5leHRfcmF0ZSkKICAgICAgICBpZihkZWx0YSA+IDAgJiYgbmV4dF96b29tIDwgdGhpcy5jdXJyZW50X3pvb20pCiAgICAgICAgewogICAgICAgICAgICBuZXh0X3pvb20gKj0gdGhpcy5vcHRpb25zLnpvb21fZGVsdGE7CiAgICAgICAgfQoKICAgICAgICBpZihkZWx0YSA8IDAgJiYgbmV4dF96b29tID4gdGhpcy5jdXJyZW50X3pvb20pCiAgICAgICAgewogICAgICAgICAgICBuZXh0X3pvb20gLz0gdGhpcy5vcHRpb25zLnpvb21fZGVsdGE7CiAgICAgICAgfQoKICAgICAgICB0aGlzLnNldF96b29tKG5leHRfem9vbSwgdW5kZWZpbmVkLCB6b29tX2NlbnRlcik7CiAgICB9LAoKICAgIC8qKgogICAgKiBSb3RhdGUgaW1hZ2UKICAgICogQHBhcmFtIHtudW19IGRlZyBEZWdyZWVzIGFtb3VudCB0byByb3RhdGUuIFBvc2l0aXZlIHZhbHVlcyByb3RhdGUgaW1hZ2UgY2xvY2t3aXNlLgogICAgKiAgICAgQ3VycmVudGx5IDAsIDkwLCAxODAsIDI3MCBhbmQgLTkwLCAtMTgwLCAtMjcwIHZhbHVlcyBhcmUgc3VwcG9ydGVkCiAgICAqCiAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gYWJzIElmIHRoZSBmbGFnIGlzIHRydWUgaWYsIHRoZSBkZWcgcGFyYW1ldGVyIHdpbGwgYmUgY29uc2lkZXJlZCBhcwogICAgKiAgICAgYSBhYnNvbHV0ZSB2YWx1ZSBhbmQgcmVsYXRpdmUgb3RoZXJ3aXNlLgogICAgKiBAcmV0dXJuIHtudW18bnVsbH0gTWV0aG9kIHdpbGwgcmV0dXJuIGN1cnJlbnQgaW1hZ2UgYW5nbGUgaWYgY2FsbGVkIHdpdGhvdXQgYW55IGFyZ3VtZW50cy4KICAgICoqLwogICAgYW5nbGU6IGZ1bmN0aW9uKGRlZywgYWJzKSB7CiAgICAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDApIHsgcmV0dXJuIHRoaXMuaW1nX29iamVjdC5hbmdsZSgpOyB9CgogICAgICAgIGlmIChkZWcgPCAtMjcwIHx8IGRlZyA+IDI3MCB8fCBkZWcgJSA5MCAhPT0gMCkgeyByZXR1cm47IH0KICAgICAgICBpZiAoIWFicykgeyBkZWcgKz0gdGhpcy5pbWdfb2JqZWN0LmFuZ2xlKCk7IH0KICAgICAgICBpZiAoZGVnIDwgMCkgeyBkZWcgKz0gMzYwOyB9CiAgICAgICAgaWYgKGRlZyA+PSAzNjApIHsgZGVnIC09IDM2MDsgfQoKICAgICAgICBpZiAoZGVnID09PSB0aGlzLmltZ19vYmplY3QuYW5nbGUoKSkgeyByZXR1cm47IH0KCiAgICAgICAgdGhpcy5pbWdfb2JqZWN0LmFuZ2xlKGRlZyk7CiAgICAgICAgLy90aGUgcm90YXRlIGJlaGF2aW9yIGlzIGRpZmZlcmVudCBpbiBhbGwgZWRpdG9ycy4gRm9yIG5vdyB3ZSAganVzdCBjZW50ZXIgdGhlCiAgICAgICAgLy9pbWFnZS4gSG93ZXZlciwgaXQgd2lsbCBiZSBiZXR0ZXIgdG8gdHJ5IHRvIGtlZXAgdGhlIHBvc2l0aW9uLgogICAgICAgIHRoaXMuY2VudGVyKCk7CiAgICAgICAgdGhpcy5fdHJpZ2dlcignYW5nbGUnLCAwLCB7IGFuZ2xlOiB0aGlzLmltZ19vYmplY3QuYW5nbGUoKSB9KTsKICAgIH0sCgogICAgLyoqCiAgICAqIGZpbmRzIGNsb3Nlc3QgbXVsdGlwbGllciByYXRlIGZvciB2YWx1ZQogICAgKiBiYXNpbmcgb24gem9vbV9iYXNlIGFuZCB6b29tX2RlbHRhIHZhbHVlcyBmcm9tIHNldHRpbmdzCiAgICAqIEBwYXJhbSBOdW1iZXIgdmFsdWUgem9vbSB2YWx1ZSB0byBleGFtaW5lCiAgICAqKi8KICAgIGZpbmRfY2xvc2VzdF96b29tX3JhdGU6IGZ1bmN0aW9uKHZhbHVlKQogICAgewogICAgICAgIGlmKHZhbHVlID09IHRoaXMub3B0aW9ucy56b29tX2Jhc2UpCiAgICAgICAgewogICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIGRpdih2YWwxLHZhbDIpIHsgcmV0dXJuIHZhbDEgLyB2YWwyIH07CiAgICAgICAgZnVuY3Rpb24gbXVsKHZhbDEsdmFsMikgeyByZXR1cm4gdmFsMSAqIHZhbDIgfTsKCiAgICAgICAgdmFyIGZ1bmMgPSAodmFsdWUgPiB0aGlzLm9wdGlvbnMuem9vbV9iYXNlKT9tdWw6ZGl2OwogICAgICAgIHZhciBzZ24gPSAodmFsdWUgPiB0aGlzLm9wdGlvbnMuem9vbV9iYXNlKT8xOi0xOwoKICAgICAgICB2YXIgbWx0cGxyID0gdGhpcy5vcHRpb25zLnpvb21fZGVsdGE7CiAgICAgICAgdmFyIHJhdGUgPSAxOwoKICAgICAgICB3aGlsZShNYXRoLmFicyhmdW5jKHRoaXMub3B0aW9ucy56b29tX2Jhc2UsIE1hdGgucG93KG1sdHBscixyYXRlKSkgLSB2YWx1ZSkgPgogICAgICAgICAgICAgIE1hdGguYWJzKGZ1bmModGhpcy5vcHRpb25zLnpvb21fYmFzZSwgTWF0aC5wb3cobWx0cGxyLHJhdGUrMSkpIC0gdmFsdWUpKQogICAgICAgIHsKICAgICAgICAgICAgcmF0ZSsrOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIHNnbiAqIHJhdGU7CiAgICB9LAoKICAgIC8qIHVwZGF0ZSBzY2FsZSBpbmZvIGluIHRoZSBjb250YWluZXIgKi8KICAgIHVwZGF0ZV9zdGF0dXM6IGZ1bmN0aW9uKCkKICAgIHsKICAgICAgICBpZighdGhpcy5vcHRpb25zLnVpX2Rpc2FibGVkKQogICAgICAgIHsKICAgICAgICAgICAgdmFyIHBlcmNlbnQgPSBNYXRoLnJvdW5kKDEwMCp0aGlzLmltZ19vYmplY3QuZGlzcGxheV9oZWlnaHQoKS90aGlzLmltZ19vYmplY3Qub3JpZ19oZWlnaHQoKSk7CiAgICAgICAgICAgIGlmKHBlcmNlbnQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHRoaXMuem9vbV9vYmplY3QuaHRtbChwZXJjZW50ICsgIiUiKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0sCgogICAgLyoqCiAgICAgKiBHZXQgc29tZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgaW1hZ2UuCiAgICAgKiAgICAgQ3VycmVudGx5IG9yaWdfKHdpZHRofGhlaWdodCksIGRpc3BsYXlfKHdpZHRofGhlaWdodCksIGFuZ2xlLCB6b29tIGFuZCBzcmMgcGFyYW1zIGFyZSBzdXBwb3J0ZWQuCiAgICAgKgogICAgICogIEBwYXJhbSB7c3RyaW5nfSBwYXJhbWV0ZXIgdG8gY2hlY2sKICAgICAqICBAcGFyYW0ge2Jvb2xlYW59IHdpdGhvdXRSb3RhdGlvbiBpZiBwYXJhbSBpcyBvcmlnX3dpZHRoIG9yIG9yaWdfaGVpZ2h0IGFuZCB0aGlzIGZsYWcgaXMgc2V0IHRvIHRydWUsCiAgICAgKiAgICAgIG1ldGhvZCB3aWxsIHJldHVybiBvcmlnaW5hbCBpbWFnZSB3aWR0aCB3aXRob3V0IGNvbnNpZGVyaW5nIHJvdGF0aW9uLgogICAgICoKICAgICAqLwogICAgaW5mbzogZnVuY3Rpb24ocGFyYW0sIHdpdGhvdXRSb3RhdGlvbikgewogICAgICAgIGlmICghcGFyYW0pIHsgcmV0dXJuOyB9CgogICAgICAgIHN3aXRjaCAocGFyYW0pIHsKICAgICAgICAgICAgY2FzZSAnb3JpZ193aWR0aCc6CiAgICAgICAgICAgIGNhc2UgJ29yaWdfaGVpZ2h0JzoKICAgICAgICAgICAgICAgIGlmICh3aXRob3V0Um90YXRpb24pIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gKHRoaXMuaW1nX29iamVjdC5hbmdsZSgpICUgMTgwID09PSAwID8gdGhpcy5pbWdfb2JqZWN0W3BhcmFtXSgpIDoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtID09PSAnb3JpZ193aWR0aCcgPyB0aGlzLmltZ19vYmplY3Qub3JpZ19oZWlnaHQoKSA6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5pbWdfb2JqZWN0Lm9yaWdfd2lkdGgoKSk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmltZ19vYmplY3RbcGFyYW1dKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIGNhc2UgJ2Rpc3BsYXlfd2lkdGgnOgogICAgICAgICAgICBjYXNlICdkaXNwbGF5X2hlaWdodCc6CiAgICAgICAgICAgIGNhc2UgJ2FuZ2xlJzoKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmltZ19vYmplY3RbcGFyYW1dKCk7CiAgICAgICAgICAgIGNhc2UgJ3pvb20nOgogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVudF96b29tOwogICAgICAgICAgICBjYXNlICdzcmMnOgogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaW1nX29iamVjdC5vYmplY3QoKS5hdHRyKCdzcmMnKTsKICAgICAgICAgICAgY2FzZSAnY29vcmRzJzoKICAgICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICAgICAgeDogdGhpcy5pbWdfb2JqZWN0LngoKSwKICAgICAgICAgICAgICAgICAgICB5OiB0aGlzLmltZ19vYmplY3QueSgpCiAgICAgICAgICAgICAgICB9OwogICAgICAgIH0KICAgIH0sCgogICAgLyoqCiAgICAqICAgY2FsbGJhY2sgZm9yIGhhbmRsaW5nIG1vdXNkb3duIGV2ZW50IHRvIHN0YXJ0IGRyYWdnaW5nIGltYWdlCiAgICAqKi8KICAgIF9tb3VzZVN0YXJ0OiBmdW5jdGlvbiggZSApCiAgICB7CiAgICAgICAgJC51aS5tb3VzZS5wcm90b3R5cGUuX21vdXNlU3RhcnQuY2FsbCh0aGlzLCBlKTsKICAgICAgICBpZiAodGhpcy5fdHJpZ2dlcignb25TdGFydERyYWcnLCAwLCB0aGlzLl9nZXRNb3VzZUNvb3JkcyhlKSkgPT09IGZhbHNlKSB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CgogICAgICAgIC8qIHN0YXJ0IGRyYWcgZXZlbnQqLwogICAgICAgIHRoaXMuY29udGFpbmVyLmFkZENsYXNzKCJpdmlld2VyX2RyYWdfY3Vyc29yIik7CgogICAgICAgIC8vIzEwOiBmaXggbW92ZW1lbnQgcXVpcmtzIGZvciBpcGFkCiAgICAgICAgdGhpcy5fZHJhZ0luaXRpYWxpemVkID0gIShlLm9yaWdpbmFsRXZlbnQuY2hhbmdlZFRvdWNoZXMgJiYgZS5vcmlnaW5hbEV2ZW50LmNoYW5nZWRUb3VjaGVzLmxlbmd0aD09MSk7CgogICAgICAgIHRoaXMuZHggPSBlLnBhZ2VYIC0gdGhpcy5pbWdfb2JqZWN0LngoKTsKICAgICAgICB0aGlzLmR5ID0gZS5wYWdlWSAtIHRoaXMuaW1nX29iamVjdC55KCk7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICB9LAoKICAgIF9tb3VzZUNhcHR1cmU6IGZ1bmN0aW9uKCBlICkgewogICAgICAgIHJldHVybiB0cnVlOwogICAgfSwKCiAgICAvKioKICAgICAqIEhhbmRsZSBtb3VzZSBtb3ZlIGlmIG5lZWRlZC4gVXNlciBjYW4gYXZvaWQgdXNpbmcgdGhpcyBjYWxsYmFjaywgYmVjYXVzZQogICAgICogICAgaGUgY2FuIGdldCB0aGUgc2FtZSBpbmZvcm1hdGlvbiB0aHJvdWdoIHB1YmxpYyBtZXRob2RzLgogICAgICogIEBwYXJhbSB7alF1ZXJ5LkV2ZW50fSBlCiAgICAgKi8KICAgIF9oYW5kbGVNb3VzZU1vdmU6IGZ1bmN0aW9uKGUpIHsKICAgICAgICB0aGlzLl90cmlnZ2VyKCdvbk1vdXNlTW92ZScsIGUsIHRoaXMuX2dldE1vdXNlQ29vcmRzKGUpKTsKICAgIH0sCgogICAgLyoqCiAgICAqICAgY2FsbGJhY2sgZm9yIGhhbmRsaW5nIG1vdXNlbW92ZSBldmVudCB0byBkcmFnIGltYWdlCiAgICAqKi8KICAgIF9tb3VzZURyYWc6IGZ1bmN0aW9uKGUpCiAgICB7CiAgICAgICAgJC51aS5tb3VzZS5wcm90b3R5cGUuX21vdXNlRHJhZy5jYWxsKHRoaXMsIGUpOwoKICAgICAgICAvLyMxMDogaW1pdGF0ZSBtb3VzZVN0YXJ0LCBiZWNhdXNlIHdlIGNhbiBnZXQgaGVyZSB3aXRob3V0IGl0IG9uIGlQYWQgZm9yIHNvbWUgcmVhc29uCiAgICAgICAgaWYgKCF0aGlzLl9kcmFnSW5pdGlhbGl6ZWQpIHsKICAgICAgICAgICAgdGhpcy5keCA9IGUucGFnZVggLSB0aGlzLmltZ19vYmplY3QueCgpOwogICAgICAgICAgICB0aGlzLmR5ID0gZS5wYWdlWSAtIHRoaXMuaW1nX29iamVjdC55KCk7CiAgICAgICAgICAgIHRoaXMuX2RyYWdJbml0aWFsaXplZCA9IHRydWU7CiAgICAgICAgfQoKICAgICAgICB2YXIgbHRvcCA9ICBlLnBhZ2VZIC0gdGhpcy5keTsKICAgICAgICB2YXIgbGxlZnQgPSBlLnBhZ2VYIC0gdGhpcy5keDsKCiAgICAgICAgdGhpcy5zZXRDb29yZHMobGxlZnQsIGx0b3ApOwogICAgICAgIHRoaXMuX3RyaWdnZXIoJ29uRHJhZycsIGUsIHRoaXMuX2dldE1vdXNlQ29vcmRzKGUpKTsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9LAoKICAgIC8qKgogICAgKiAgIGNhbGxiYWNrIGZvciBoYW5kbGluZyBzdG9wIGRyYWcKICAgICoqLwogICAgX21vdXNlU3RvcDogZnVuY3Rpb24oZSkKICAgIHsKICAgICAgICAkLnVpLm1vdXNlLnByb3RvdHlwZS5fbW91c2VTdG9wLmNhbGwodGhpcywgZSk7CiAgICAgICAgdGhpcy5jb250YWluZXIucmVtb3ZlQ2xhc3MoIml2aWV3ZXJfZHJhZ19jdXJzb3IiKTsKICAgICAgICB0aGlzLl90cmlnZ2VyKCdvblN0b3BEcmFnJywgMCwgdGhpcy5fZ2V0TW91c2VDb29yZHMoZSkpOwogICAgfSwKCiAgICBfY2xpY2s6IGZ1bmN0aW9uKGUpCiAgICB7CiAgICAgICAgdGhpcy5fdHJpZ2dlcignb25DbGljaycsIDAsIHRoaXMuX2dldE1vdXNlQ29vcmRzKGUpKTsKICAgIH0sCgogICAgLyoqCiAgICAqICAgY3JlYXRlIHpvb20gYnV0dG9ucyBpbmZvIGJveAogICAgKiovCiAgICBjcmVhdGV1aTogZnVuY3Rpb24oKQogICAgewogICAgICAgIHZhciBtZT10aGlzOwoKICAgICAgICAkKCI8ZGl2PiIsIHsgJ2NsYXNzJzogIml2aWV3ZXJfem9vbV9pbiBpdmlld2VyX2NvbW1vbiBpdmlld2VyX2J1dHRvbiJ9KQogICAgICAgICAgICAgICAgICAgIC5iaW5kKCdtb3VzZWRvd24gdG91Y2hzdGFydCcsZnVuY3Rpb24oKXttZS56b29tX2J5KDEpOyByZXR1cm4gZmFsc2U7fSkKICAgICAgICAgICAgICAgICAgICAuYXBwZW5kVG8odGhpcy5jb250YWluZXIpOwoKICAgICAgICAkKCI8ZGl2PiIsIHsgJ2NsYXNzJzogIml2aWV3ZXJfem9vbV9vdXQgaXZpZXdlcl9jb21tb24gaXZpZXdlcl9idXR0b24ifSkKICAgICAgICAgICAgICAgICAgICAuYmluZCgnbW91c2Vkb3duIHRvdWNoc3RhcnQnLGZ1bmN0aW9uKCl7bWUuem9vbV9ieSgtIDEpOyByZXR1cm4gZmFsc2U7fSkKICAgICAgICAgICAgICAgICAgICAuYXBwZW5kVG8odGhpcy5jb250YWluZXIpOwoKICAgICAgICAkKCI8ZGl2PiIsIHsgJ2NsYXNzJzogIml2aWV3ZXJfem9vbV96ZXJvIGl2aWV3ZXJfY29tbW9uIGl2aWV3ZXJfYnV0dG9uIn0pCiAgICAgICAgICAgICAgICAgICAgLmJpbmQoJ21vdXNlZG93biB0b3VjaHN0YXJ0JyxmdW5jdGlvbigpe21lLnNldF96b29tKDEwMCk7IHJldHVybiBmYWxzZTt9KQogICAgICAgICAgICAgICAgICAgIC5hcHBlbmRUbyh0aGlzLmNvbnRhaW5lcik7CgogICAgICAgICQoIjxkaXY+IiwgeyAnY2xhc3MnOiAiaXZpZXdlcl96b29tX2ZpdCBpdmlld2VyX2NvbW1vbiBpdmlld2VyX2J1dHRvbiJ9KQogICAgICAgICAgICAgICAgICAgIC5iaW5kKCdtb3VzZWRvd24gdG91Y2hzdGFydCcsZnVuY3Rpb24oKXttZS5maXQodGhpcyk7IHJldHVybiBmYWxzZTt9KQogICAgICAgICAgICAgICAgICAgIC5hcHBlbmRUbyh0aGlzLmNvbnRhaW5lcik7CgogICAgICAgIHRoaXMuem9vbV9vYmplY3QgPSAkKCI8ZGl2PiIpLmFkZENsYXNzKCJpdmlld2VyX3pvb21fc3RhdHVzIGl2aWV3ZXJfY29tbW9uIikKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmFwcGVuZFRvKHRoaXMuY29udGFpbmVyKTsKCiAgICAgICAgJCgiPGRpdj4iLCB7ICdjbGFzcyc6ICJpdmlld2VyX3JvdGF0ZV9sZWZ0IGl2aWV3ZXJfY29tbW9uIGl2aWV3ZXJfYnV0dG9uIn0pCiAgICAgICAgICAgICAgICAgICAgLmJpbmQoJ21vdXNlZG93biB0b3VjaHN0YXJ0JyxmdW5jdGlvbigpe21lLmFuZ2xlKC05MCk7IHJldHVybiBmYWxzZTt9KQogICAgICAgICAgICAgICAgICAgIC5hcHBlbmRUbyh0aGlzLmNvbnRhaW5lcik7CgogICAgICAgICQoIjxkaXY+IiwgeyAnY2xhc3MnOiAiaXZpZXdlcl9yb3RhdGVfcmlnaHQgaXZpZXdlcl9jb21tb24gaXZpZXdlcl9idXR0b24iIH0pCiAgICAgICAgICAgICAgICAgICAgLmJpbmQoJ21vdXNlZG93biB0b3VjaHN0YXJ0JyxmdW5jdGlvbigpe21lLmFuZ2xlKDkwKTsgcmV0dXJuIGZhbHNlO30pCiAgICAgICAgICAgICAgICAgICAgLmFwcGVuZFRvKHRoaXMuY29udGFpbmVyKTsKCiAgICAgICAgdGhpcy51cGRhdGVfc3RhdHVzKCk7IC8vaW5pdGlhbCBzdGF0dXMgdXBkYXRlCiAgICB9Cgp9ICk7CgovKioKICogQGNsYXNzICQudWkuaXZpZXdlci5JbWFnZU9iamVjdCBDbGFzcyByZXByZXNlbnRzIGltYWdlIGFuZCBwcm92aWRlcyBwdWJsaWMgYXBpIHdpdGhvdXQKICogICAgIGV4dGVuZGluZyBpbWFnZSBwcm90b3R5cGUuCiAqIEBjb25zdHJ1Y3RvcgogKiBAcGFyYW0ge2Jvb2xlYW59IGRvX2FuaW0gRG8gd2Ugd2FudCB0byBhbmltYXRlIGltYWdlIG9uIGRpbWVuc2lvbiBjaGFuZ2VzPwogKi8KJC51aS5pdmlld2VyLkltYWdlT2JqZWN0ID0gZnVuY3Rpb24oZG9fYW5pbSkgewogICAgdGhpcy5faW1nID0gJCgiPGltZz4iKQogICAgICAgICAgICAvL3RoaXMgaXMgbmVlZGVkLCBiZWNhdXNlIGNocm9taXVtIHNldHMgdGhlbSBhdXRvIG90aGVyd2lzZQogICAgICAgICAgICAuY3NzKHsgcG9zaXRpb246ICJhYnNvbHV0ZSIsIHRvcCA6IjBweCIsIGxlZnQ6ICIwcHgifSk7CgogICAgdGhpcy5fbG9hZGVkID0gZmFsc2U7CiAgICB0aGlzLl9zd2FwRGltZW5zaW9ucyA9IGZhbHNlOwogICAgdGhpcy5fZG9fYW5pbSA9IGRvX2FuaW0gfHwgZmFsc2U7CiAgICB0aGlzLngoMCwgdHJ1ZSk7CiAgICB0aGlzLnkoMCwgdHJ1ZSk7CiAgICB0aGlzLmFuZ2xlKDApOwp9OwoKCi8qKiBAbGVuZHMgJC51aS5pdmlld2VyLkltYWdlT2JqZWN0LnByb3RvdHlwZSAqLwooZnVuY3Rpb24oKSB7CiAgICAvKioKICAgICAqIFJlc3RvcmUgaW5pdGlhbCBvYmplY3Qgc3RhdGUuCiAgICAgKgogICAgICogQHBhcmFtIHtudW1iZXJ9IHcgSW1hZ2Ugd2lkdGguCiAgICAgKiBAcGFyYW0ge251bWJlcn0gaCBJbWFnZSBoZWlnaHQuCiAgICAgKi8KICAgIHRoaXMuX3Jlc2V0ID0gZnVuY3Rpb24odywgaCkgewogICAgICAgIHRoaXMuX2FuZ2xlID0gMDsKICAgICAgICB0aGlzLl9zd2FwRGltZW5zaW9ucyA9IGZhbHNlOwogICAgICAgIHRoaXMueCgwKTsKICAgICAgICB0aGlzLnkoMCk7CgogICAgICAgIHRoaXMub3JpZ193aWR0aCh3KTsKICAgICAgICB0aGlzLm9yaWdfaGVpZ2h0KGgpOwogICAgICAgIHRoaXMuZGlzcGxheV93aWR0aCh3KTsKICAgICAgICB0aGlzLmRpc3BsYXlfaGVpZ2h0KGgpOwogICAgfTsKCiAgICAvKioKICAgICAqIENoZWNrIGlmIGltYWdlIGlzIGxvYWRlZC4KICAgICAqCiAgICAgKiBAcmV0dXJuIHtib29sZWFufQogICAgICovCiAgICB0aGlzLmxvYWRlZCA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gdGhpcy5fbG9hZGVkOyB9OwoKICAgIC8qKgogICAgICogTG9hZCBpbWFnZS4KICAgICAqCiAgICAgKiBAcGFyYW0ge3N0cmluZ30gc3JjIEltYWdlIHVybC4KICAgICAqIEBwYXJhbSB7RnVuY3Rpb249fSBsb2FkZWQgRnVuY3Rpb24gd2lsbCBiZSBjYWxsZWQgb24gaW1hZ2UgbG9hZC4KICAgICAqLwogICAgdGhpcy5sb2FkID0gZnVuY3Rpb24oc3JjLCBsb2FkZWQsIGVycm9yKSB7CiAgICAgICAgdmFyIHNlbGYgPSB0aGlzOwoKICAgICAgICBsb2FkZWQgPSBsb2FkZWQgfHwgalF1ZXJ5Lm5vb3A7CiAgICAgICAgdGhpcy5fbG9hZGVkID0gZmFsc2U7CgogICAgICAgIC8vSWYgd2UgYXNzaWduIG5ldyBpbWFnZSB1cmwgdG8gdGhlIHRoaXMuX2ltZyBJRTkgZmlyZXMgb25sb2FkIGV2ZW50IGFuZCBpbWFnZSB3aWR0aCBhbmQKICAgICAgICAvL2hlaWdodCBhcmUgc2V0IHRvIHplcm8uIFNvLCB3ZSBjcmVhdGUgYW5vdGhlciBpbWFnZSBvYmplY3QgYW5kIGxvYWQgaW1hZ2UgdGhyb3VnaCBpdC4KICAgICAgICB2YXIgaW1nID0gbmV3IEltYWdlKCk7CiAgICAgICAgaW1nLm9ubG9hZCA9IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBzZWxmLl9sb2FkZWQgPSB0cnVlOwogICAgICAgICAgICBzZWxmLl9yZXNldCh0aGlzLndpZHRoLCB0aGlzLmhlaWdodCk7CgogICAgICAgICAgICBzZWxmLl9pbWcKICAgICAgICAgICAgICAgIC5yZW1vdmVBdHRyKCJ3aWR0aCIpCiAgICAgICAgICAgICAgICAucmVtb3ZlQXR0cigiaGVpZ2h0IikKICAgICAgICAgICAgICAgIC5yZW1vdmVBdHRyKCJzdHlsZSIpCiAgICAgICAgICAgICAgICAvL21heC13aWR0aCBpcyByZXNldCwgYmVjYXVzZSBwbHVnaW4gYnJlYWtzIGluIHRoZSB0d2l0dGVyIGJvb3RzdHJhcCBvdGhlcndpc2UKICAgICAgICAgICAgICAgIC5jc3MoeyBwb3NpdGlvbjogImFic29sdXRlIiwgdG9wIDoiMHB4IiwgbGVmdDogIjBweCIsIG1heFdpZHRoOiAibm9uZSJ9KQoKICAgICAgICAgICAgc2VsZi5faW1nWzBdLnNyYyA9IHNyYzsKICAgICAgICAgICAgbG9hZGVkKCk7CiAgICAgICAgfTsKCiAgICAgICAgaW1nLm9uZXJyb3IgPSBlcnJvcjsKCiAgICAgICAgLy93ZSBuZWVkIHRoaXMgYmVjYXVzZSBzb21ldGltZXMgaW50ZXJuZXQgZXhwbG9yZXIgOCBmaXJlcyBvbmxvYWQgZXZlbnQKICAgICAgICAvL3JpZ2h0IGFmdGVyIGFzc2lnbm1lbnQgKHN5bmNocm9ub3VzbHkpCiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgaW1nLnNyYyA9IHNyYzsKICAgICAgICB9LCAwKTsKCiAgICAgICAgdGhpcy5hbmdsZSgwKTsKICAgIH07CgogICAgdGhpcy5fZGltZW5zaW9uID0gZnVuY3Rpb24ocHJlZml4LCBuYW1lKSB7CiAgICAgICAgdmFyIGhvcml6ID0gJ18nICsgcHJlZml4ICsgJ18nICsgbmFtZSwKICAgICAgICAgICAgdmVydCA9ICdfJyArIHByZWZpeCArICdfJyArIChuYW1lID09PSAnaGVpZ2h0JyA/ICd3aWR0aCcgOiAnaGVpZ2h0Jyk7CiAgICAgICAgcmV0dXJuIHNldHRlcihmdW5jdGlvbih2YWwpIHsKICAgICAgICAgICAgICAgIHRoaXNbdGhpcy5fc3dhcERpbWVuc2lvbnMgPyBob3JpejogdmVydF0gPSB2YWw7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXNbdGhpcy5fc3dhcERpbWVuc2lvbnMgPyBob3JpejogdmVydF07CiAgICAgICAgICAgIH0pOwogICAgfTsKCiAgICAvKioKICAgICAqIEdldHRlcnMgYW5kIHNldHRlciBmb3IgY29tbW9uIGltYWdlIGRpbWVuc2lvbnMuCiAgICAgKiAgICBkaXNwbGF5XyBtZWFucyByZWFsIGltYWdlIHRhZyBkaW1lbnNpb25zCiAgICAgKiAgICBvcmlnXyBtZWFucyBwaHlzaWNhbCBpbWFnZSBkaW1lbnNpb25zLgogICAgICogIE5vdGUsIHRoYXQgZGltZW5zaW9ucyBhcmUgc3dhcHBlZCBpZiBpbWFnZSBpcyByb3RhdGVkLiBJdCBuZWNlc3NhcnksCiAgICAgKiAgYmVjYXVzZSBhcyBsaXR0bGUgYXMgcG9zc2libGUgY29kZSBzaG91bGQga25vdyBhYm91dCByb3RhdGlvbi4KICAgICAqLwogICAgdGhpcy5kaXNwbGF5X3dpZHRoID0gdGhpcy5fZGltZW5zaW9uKCdkaXNwbGF5JywgJ3dpZHRoJyksCiAgICB0aGlzLmRpc3BsYXlfaGVpZ2h0ID0gdGhpcy5fZGltZW5zaW9uKCdkaXNwbGF5JywgJ2hlaWdodCcpLAogICAgdGhpcy5kaXNwbGF5X2RpZmYgPSBmdW5jdGlvbigpIHsgcmV0dXJuIE1hdGguZmxvb3IoIHRoaXMuZGlzcGxheV93aWR0aCgpIC0gdGhpcy5kaXNwbGF5X2hlaWdodCgpICkgfTsKICAgIHRoaXMub3JpZ193aWR0aCA9IHRoaXMuX2RpbWVuc2lvbignb3JpZycsICd3aWR0aCcpLAogICAgdGhpcy5vcmlnX2hlaWdodCA9IHRoaXMuX2RpbWVuc2lvbignb3JpZycsICdoZWlnaHQnKSwKCiAgICAvKioKICAgICAqIFNldHRlciBmb3IgIFggY29vcmRpbmF0ZS4gSWYgaW1hZ2UgaXMgcm90YXRlZCB3ZSBuZWVkIHRvIGFkZGl0aW9uYWx5IHNoaWZ0IGFuCiAgICAgKiAgICAgaW1hZ2UgdG8gbWFwIGltYWdlIGNvb3JkaW5hdGUgdG8gdGhlIHZpc3VhbCBwb3NpdGlvbi4KICAgICAqCiAgICAgKiBAcGFyYW0ge251bWJlcn0gdmFsIENvb3JkaW5hdGUgdmFsdWUuCiAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IHNraXBDc3MgSWYgdHJ1ZSwgd2Ugb25seSBzZXQgdGhlIHZhbHVlIGFuZCBkbyBub3QgdG91Y2ggdGhlIGRvbS4KICAgICAqLwogICAgdGhpcy54ID0gc2V0dGVyKGZ1bmN0aW9uKHZhbCwgc2tpcENzcykgewogICAgICAgICAgICB0aGlzLl94ID0gdmFsOwogICAgICAgICAgICBpZiAoIXNraXBDc3MpIHsKICAgICAgICAgICAgICAgIHRoaXMuX2ZpbmlzaEFuaW1hdGlvbigpOwogICAgICAgICAgICAgICAgdGhpcy5faW1nLmNzcygibGVmdCIsdGhpcy5feCArICh0aGlzLl9zd2FwRGltZW5zaW9ucyA/IHRoaXMuZGlzcGxheV9kaWZmKCkgLyAyIDogMCkgKyAicHgiKTsKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl94OwogICAgICAgIH0pOwoKICAgIC8qKgogICAgICogU2V0dGVyIGZvciAgWSBjb29yZGluYXRlLiBJZiBpbWFnZSBpcyByb3RhdGVkIHdlIG5lZWQgdG8gYWRkaXRpb25hbHkgc2hpZnQgYW4KICAgICAqICAgICBpbWFnZSB0byBtYXAgaW1hZ2UgY29vcmRpbmF0ZSB0byB0aGUgdmlzdWFsIHBvc2l0aW9uLgogICAgICoKICAgICAqIEBwYXJhbSB7bnVtYmVyfSB2YWwgQ29vcmRpbmF0ZSB2YWx1ZS4KICAgICAqIEBwYXJhbSB7Ym9vbGVhbn0gc2tpcENzcyBJZiB0cnVlLCB3ZSBvbmx5IHNldCB0aGUgdmFsdWUgYW5kIGRvIG5vdCB0b3VjaCB0aGUgZG9tLgogICAgICovCiAgICB0aGlzLnkgPSBzZXR0ZXIoZnVuY3Rpb24odmFsLCBza2lwQ3NzKSB7CiAgICAgICAgICAgIHRoaXMuX3kgPSB2YWw7CiAgICAgICAgICAgIGlmICghc2tpcENzcykgewogICAgICAgICAgICAgICAgdGhpcy5fZmluaXNoQW5pbWF0aW9uKCk7CiAgICAgICAgICAgICAgICB0aGlzLl9pbWcuY3NzKCJ0b3AiLHRoaXMuX3kgLSAodGhpcy5fc3dhcERpbWVuc2lvbnMgPyB0aGlzLmRpc3BsYXlfZGlmZigpIC8gMiA6IDApICsgInB4Iik7CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl95OwogICAgICAgfSk7CgogICAgLyoqCiAgICAgKiBQZXJmb3JtIGltYWdlIHJvdGF0aW9uLgogICAgICoKICAgICAqIEBwYXJhbSB7bnVtYmVyfSBkZWcgQWJzb2x1dGUgaW1hZ2UgYW5nbGUuIFRoZSBtZXRob2Qgd2lsbCB3b3JrIHdpdGggdmFsdWVzIDAsIDkwLCAxODAsIDI3MCBkZWdyZWVzLgogICAgICovCiAgICB0aGlzLmFuZ2xlID0gc2V0dGVyKGZ1bmN0aW9uKGRlZykgewogICAgICAgICAgICB2YXIgcHJldlN3YXAgPSB0aGlzLl9zd2FwRGltZW5zaW9uczsKCiAgICAgICAgICAgIHRoaXMuX2FuZ2xlID0gZGVnOwogICAgICAgICAgICB0aGlzLl9zd2FwRGltZW5zaW9ucyA9IGRlZyAlIDE4MCAhPT0gMDsKCiAgICAgICAgICAgIGlmIChwcmV2U3dhcCAhPT0gdGhpcy5fc3dhcERpbWVuc2lvbnMpIHsKICAgICAgICAgICAgICAgIHZhciB2ZXJ0aWNhbE1vZCA9IHRoaXMuX3N3YXBEaW1lbnNpb25zID8gLTEgOiAxOwogICAgICAgICAgICAgICAgdGhpcy54KHRoaXMueCgpIC0gdmVydGljYWxNb2QgKiB0aGlzLmRpc3BsYXlfZGlmZigpIC8gMiwgdHJ1ZSk7CiAgICAgICAgICAgICAgICB0aGlzLnkodGhpcy55KCkgKyB2ZXJ0aWNhbE1vZCAqIHRoaXMuZGlzcGxheV9kaWZmKCkgLyAyLCB0cnVlKTsKICAgICAgICAgICAgfTsKCiAgICAgICAgICAgIHZhciBjc3NWYWwgPSAncm90YXRlKCcgKyBkZWcgKyAnZGVnKScsCiAgICAgICAgICAgICAgICBpbWcgPSB0aGlzLl9pbWc7CgogICAgICAgICAgICBqUXVlcnkuZWFjaChbJycsICctd2Via2l0LScsICctbW96LScsICctby0nLCAnLW1zLSddLCBmdW5jdGlvbihpLCBwcmVmaXgpIHsKICAgICAgICAgICAgICAgIGltZy5jc3MocHJlZml4ICsgJ3RyYW5zZm9ybScsIGNzc1ZhbCk7CiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgaWYgKHVzZUllVHJhbnNmb3JtcykgewogICAgICAgICAgICAgICAgalF1ZXJ5LmVhY2goWyctbXMtJywgJyddLCBmdW5jdGlvbihpLCBwcmVmaXgpIHsKICAgICAgICAgICAgICAgICAgICBpbWcuY3NzKHByZWZpeCArICdmaWx0ZXInLCBpZVRyYW5zZm9ybXNbZGVnXS5maWx0ZXIpOwogICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgaW1nLmNzcyh7CiAgICAgICAgICAgICAgICAgICAgbWFyZ2luTGVmdDogaWVUcmFuc2Zvcm1zW2RlZ10ubWFyZ2luTGVmdCAqIHRoaXMuZGlzcGxheV9kaWZmKCkgLyAyLAogICAgICAgICAgICAgICAgICAgIG1hcmdpblRvcDogaWVUcmFuc2Zvcm1zW2RlZ10ubWFyZ2luVG9wICogdGhpcy5kaXNwbGF5X2RpZmYoKSAvIDIKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgIGZ1bmN0aW9uKCkgeyByZXR1cm4gdGhpcy5fYW5nbGU7IH0pOwoKICAgIC8qKgogICAgICogTWFwIHBvaW50IGluIHRoZSBjb250YWluZXIgY29vcmRpbmF0ZXMgdG8gdGhlIHBvaW50IGluIGltYWdlIGNvb3JkaW5hdGVzLgogICAgICogICAgIFlvdSB3aWxsIGdldCBjb29yZGluYXRlcyBvZiBwb2ludCBvbiBpbWFnZSB3aXRoIHJlc3BlY3QgdG8gcm90YXRpb24sCiAgICAgKiAgICAgYnV0IHdpbGwgYmUgc2V0IGFzIGlmIGltYWdlIHdhcyBub3Qgcm90YXRlZC4KICAgICAqICAgICBTbywgaWYgaW1hZ2Ugd2FzIHJvdGF0ZWQgOTAgZGVncmVlcywgaXQncyAoMCwwKSBwb2ludCB3aWxsIGJlIG9uIHRoZQogICAgICogICAgIHRvcCByaWdodCBjb3JuZXIuCiAgICAgKgogICAgICogQHBhcmFtIHt7eDogbnVtYmVyLCB5OiBudW1iZXJ9fSBwb2ludCBQb2ludCBpbiBjb250YWluZXIgY29vcmRpbmF0ZXMuCiAgICAgKiBAcmV0dXJuICB7e3g6IG51bWJlciwgeTogbnVtYmVyfX0KICAgICAqLwogICAgdGhpcy50b09yaWdpbmFsQ29vcmRzID0gZnVuY3Rpb24ocG9pbnQpIHsKICAgICAgICBzd2l0Y2ggKHRoaXMuYW5nbGUoKSkgewogICAgICAgICAgICBjYXNlIDA6IHJldHVybiB7IHg6IHBvaW50LngsIHk6IHBvaW50LnkgfQogICAgICAgICAgICBjYXNlIDkwOiByZXR1cm4geyB4OiBwb2ludC55LCB5OiB0aGlzLmRpc3BsYXlfd2lkdGgoKSAtIHBvaW50LnggfQogICAgICAgICAgICBjYXNlIDE4MDogcmV0dXJuIHsgeDogdGhpcy5kaXNwbGF5X3dpZHRoKCkgLSBwb2ludC54LCB5OiB0aGlzLmRpc3BsYXlfaGVpZ2h0KCkgLSBwb2ludC55IH0KICAgICAgICAgICAgY2FzZSAyNzA6IHJldHVybiB7IHg6IHRoaXMuZGlzcGxheV9oZWlnaHQoKSAtIHBvaW50LnksIHk6IHBvaW50LnggfQogICAgICAgIH0KICAgIH07CgogICAgLyoqCiAgICAgKiBNYXAgcG9pbnQgaW4gdGhlIGltYWdlIGNvb3JkaW5hdGVzIHRvIHRoZSBwb2ludCBpbiBjb250YWluZXIgY29vcmRpbmF0ZXMuCiAgICAgKiAgICAgWW91IHdpbGwgZ2V0IGNvb3JkaW5hdGVzIG9mIHBvaW50IG9uIGNvbnRhaW5lciB3aXRoIHJlc3BlY3QgdG8gcm90YXRpb24uCiAgICAgKiAgICAgTm90ZSwgaWYgaW1hZ2Ugd2FzIHJvdGF0ZWQgOTAgZGVncmVlcywgaXQncyAoMCwwKSBwb2ludCB3aWxsIGJlIG9uIHRoZQogICAgICogICAgIHRvcCByaWdodCBjb3JuZXIuCiAgICAgKgogICAgICogQHBhcmFtIHt7eDogbnVtYmVyLCB5OiBudW1iZXJ9fSBwb2ludCBQb2ludCBpbiBjb250YWluZXIgY29vcmRpbmF0ZXMuCiAgICAgKiBAcmV0dXJuICB7e3g6IG51bWJlciwgeTogbnVtYmVyfX0KICAgICAqLwogICAgdGhpcy50b1JlYWxDb29yZHMgPSBmdW5jdGlvbihwb2ludCkgewogICAgICAgIHN3aXRjaCAodGhpcy5hbmdsZSgpKSB7CiAgICAgICAgICAgIGNhc2UgMDogcmV0dXJuIHsgeDogdGhpcy54KCkgKyBwb2ludC54LCB5OiB0aGlzLnkoKSArIHBvaW50LnkgfQogICAgICAgICAgICBjYXNlIDkwOiByZXR1cm4geyB4OiB0aGlzLngoKSArIHRoaXMuZGlzcGxheV93aWR0aCgpIC0gcG9pbnQueSwgeTogdGhpcy55KCkgKyBwb2ludC54fQogICAgICAgICAgICBjYXNlIDE4MDogcmV0dXJuIHsgeDogdGhpcy54KCkgKyB0aGlzLmRpc3BsYXlfd2lkdGgoKSAtIHBvaW50LngsIHk6IHRoaXMueSgpICsgdGhpcy5kaXNwbGF5X2hlaWdodCgpIC0gcG9pbnQueX0KICAgICAgICAgICAgY2FzZSAyNzA6IHJldHVybiB7IHg6IHRoaXMueCgpICsgcG9pbnQueSwgeTogdGhpcy55KCkgKyB0aGlzLmRpc3BsYXlfaGVpZ2h0KCkgLSBwb2ludC54fQogICAgICAgIH0KICAgIH07CgogICAgLyoqCiAgICAgKiBAcmV0dXJuIHtqUXVlcnl9IFJldHVybiBpbWFnZSBub2RlLiB0aGlzIGlzIG5lZWRlZCB0byBhZGQgZXZlbnQgaGFuZGxlcnMuCiAgICAgKi8KICAgIHRoaXMub2JqZWN0ID0gc2V0dGVyKGpRdWVyeS5ub29wLAogICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbigpIHsgcmV0dXJuIHRoaXMuX2ltZzsgfSk7CgogICAgLyoqCiAgICAgKiBDaGFuZ2UgaW1hZ2UgcHJvcGVydGllcy4KICAgICAqCiAgICAgKiBAcGFyYW0ge251bWJlcn0gZGlzcF93IERpc3BsYXkgd2lkdGg7CiAgICAgKiBAcGFyYW0ge251bWJlcn0gZGlzcF9oIERpc3BsYXkgaGVpZ2h0OwogICAgICogQHBhcmFtIHtudW1iZXJ9IHgKICAgICAqIEBwYXJhbSB7bnVtYmVyfSB5CiAgICAgKiBAcGFyYW0ge2Jvb2xlYW59IHNraXBfYW5pbWF0aW9uIElmIHRydWUsIHRoZSBhbmltYXRpb24gd2lsbCBiZSBza2lwZWQgZGVzcGl0ZSB0aGUKICAgICAqICAgICB2YWx1ZSBzZXQgaW4gY29uc3RydWN0b3IuCiAgICAgKiBAcGFyYW0ge0Z1bmN0aW9uPX0gY29tcGxldGUgQ2FsbCBiYWNrIHdpbGwgYmUgZmlyZWQgd2hlbiB6b29tIHdpbGwgYmUgY29tcGxldGUuCiAgICAgKi8KICAgIHRoaXMuc2V0SW1hZ2VQcm9wcyA9IGZ1bmN0aW9uKGRpc3BfdywgZGlzcF9oLCB4LCB5LCBza2lwX2FuaW1hdGlvbiwgY29tcGxldGUpIHsKICAgICAgICBjb21wbGV0ZSA9IGNvbXBsZXRlIHx8IGpRdWVyeS5ub29wOwoKICAgICAgICB0aGlzLmRpc3BsYXlfd2lkdGgoZGlzcF93KTsKICAgICAgICB0aGlzLmRpc3BsYXlfaGVpZ2h0KGRpc3BfaCk7CiAgICAgICAgdGhpcy54KHgsIHRydWUpOwogICAgICAgIHRoaXMueSh5LCB0cnVlKTsKCiAgICAgICAgdmFyIHcgPSB0aGlzLl9zd2FwRGltZW5zaW9ucyA/IGRpc3BfaCA6IGRpc3BfdzsKICAgICAgICB2YXIgaCA9IHRoaXMuX3N3YXBEaW1lbnNpb25zID8gZGlzcF93IDogZGlzcF9oOwoKICAgICAgICB2YXIgcGFyYW1zID0gewogICAgICAgICAgICB3aWR0aDogdywKICAgICAgICAgICAgaGVpZ2h0OiBoLAogICAgICAgICAgICB0b3A6IHkgLSAodGhpcy5fc3dhcERpbWVuc2lvbnMgPyB0aGlzLmRpc3BsYXlfZGlmZigpIC8gMiA6IDApICsgInB4IiwKICAgICAgICAgICAgbGVmdDogeCArICh0aGlzLl9zd2FwRGltZW5zaW9ucyA/IHRoaXMuZGlzcGxheV9kaWZmKCkgLyAyIDogMCkgKyAicHgiCiAgICAgICAgfTsKCiAgICAgICAgaWYgKHVzZUllVHJhbnNmb3JtcykgewogICAgICAgICAgICBqUXVlcnkuZXh0ZW5kKHBhcmFtcywgewogICAgICAgICAgICAgICAgbWFyZ2luTGVmdDogaWVUcmFuc2Zvcm1zW3RoaXMuYW5nbGUoKV0ubWFyZ2luTGVmdCAqIHRoaXMuZGlzcGxheV9kaWZmKCkgLyAyLAogICAgICAgICAgICAgICAgbWFyZ2luVG9wOiBpZVRyYW5zZm9ybXNbdGhpcy5hbmdsZSgpXS5tYXJnaW5Ub3AgKiB0aGlzLmRpc3BsYXlfZGlmZigpIC8gMgogICAgICAgICAgICB9KTsKICAgICAgICB9CgogICAgICAgIHZhciBzd2FwRGltcyA9IHRoaXMuX3N3YXBEaW1lbnNpb25zLAogICAgICAgICAgICBpbWcgPSB0aGlzLl9pbWc7CgogICAgICAgIC8vaGVyZSB3ZSBjb21lOiBhbm90aGVyIElFIG9kZG5lc3MuIElmIGltYWdlIGlzIHJvdGF0ZWQgOTAgZGVncmVlcyB3aXRoIGEgZmlsdGVyLCB0aGFuCiAgICAgICAgLy93aWR0aCBhbmQgaGVpZ2h0IGdldHRlcnMgcmV0dXJuIHJlYWwgd2lkdGggYW5kIGhlaWdodCBvZiByb3RhdGVkIGltYWdlLiBUaGUgYmFkIG5ld3MKICAgICAgICAvL2lzIHRoYXQgdG8gc2V0IGhlaWdodCB5b3UgbmVlZCB0byBzZXQgYSB3aWR0aCBhbmQgdmljZSB2ZXJzYS4gRnVjayBJRS4KICAgICAgICAvL1NvLCBpbiB0aGlzIGNhc2Ugd2UgaGF2ZSB0byBhbmltYXRlIHdpZHRoIGFuZCBoZWlnaHQgbWFudWFsbHkuCiAgICAgICAgaWYodXNlSWVUcmFuc2Zvcm1zICYmIHN3YXBEaW1zKSB7CiAgICAgICAgICAgIHZhciBpZWggPSB0aGlzLl9pbWcud2lkdGgoKSwKICAgICAgICAgICAgICAgIGlldyA9IHRoaXMuX2ltZy5oZWlnaHQoKSwKICAgICAgICAgICAgICAgIGllZGggPSBwYXJhbXMuaGVpZ2h0IC0gaWVoOwogICAgICAgICAgICAgICAgaWVkdyA9IHBhcmFtcy53aWR0aCAtIGlldzsKCiAgICAgICAgICAgIGRlbGV0ZSBwYXJhbXMud2lkdGg7CiAgICAgICAgICAgIGRlbGV0ZSBwYXJhbXMuaGVpZ2h0OwogICAgICAgIH0KCiAgICAgICAgaWYgKHRoaXMuX2RvX2FuaW0gJiYgIXNraXBfYW5pbWF0aW9uKSB7CiAgICAgICAgICAgIHRoaXMuX2ltZy5zdG9wKHRydWUpCiAgICAgICAgICAgICAgICAuYW5pbWF0ZShwYXJhbXMsIHsKICAgICAgICAgICAgICAgICAgICBkdXJhdGlvbjogMjAwLAogICAgICAgICAgICAgICAgICAgIGNvbXBsZXRlOiBjb21wbGV0ZSwKICAgICAgICAgICAgICAgICAgICBzdGVwOiBmdW5jdGlvbihub3csIGZ4KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKHVzZUllVHJhbnNmb3JtcyAmJiBzd2FwRGltcyAmJiAoZngucHJvcCA9PT0gJ3RvcCcpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcGVyY2VudCA9IChub3cgLSBmeC5zdGFydCkgLyAoZnguZW5kIC0gZnguc3RhcnQpOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZy5oZWlnaHQoaWVoICsgaWVkaCAqIHBlcmNlbnQpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nLndpZHRoKGlldyArIGllZHcgKiBwZXJjZW50KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZy5jc3MoJ3RvcCcsIG5vdyk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLl9pbWcuY3NzKHBhcmFtcyk7CiAgICAgICAgICAgIHNldFRpbWVvdXQoY29tcGxldGUsIDApOyAvL2JvdGggaWYgYnJhbmNoZXMgc2hvdWxkIGJlaGF2ZSBlcXVhbGx5LgogICAgICAgIH0KICAgIH07CgogICAgLy9pZiB3ZSBzZXQgaW1hZ2UgY29vcmRpbmF0ZXMgd2UgbmVlZCB0byBiZSBzdXJlIHRoYXQgbm8gYW5pbWF0aW9uIGlzIGFjdGl2ZSBhdG0KICAgIHRoaXMuX2ZpbmlzaEFuaW1hdGlvbiA9IGZ1bmN0aW9uKCkgewogICAgICB0aGlzLl9pbWcuc3RvcCh0cnVlLCB0cnVlKTsKICAgIH0KCn0pLmFwcGx5KCQudWkuaXZpZXdlci5JbWFnZU9iamVjdC5wcm90b3R5cGUpOwoKCgp2YXIgdXRpbCA9IHsKICAgIHNjYWxlVmFsdWU6IGZ1bmN0aW9uKHZhbHVlLCB0b1pvb20pCiAgICB7CiAgICAgICAgcmV0dXJuIHZhbHVlICogdG9ab29tIC8gMTAwOwogICAgfSwKCiAgICBkZXNjYWxlVmFsdWU6IGZ1bmN0aW9uKHZhbHVlLCBmcm9tWm9vbSkKICAgIHsKICAgICAgICByZXR1cm4gdmFsdWUgKiAxMDAgLyBmcm9tWm9vbTsKICAgIH0KfTsKCiB9ICkoIGpRdWVyeSwgdW5kZWZpbmVkICk7Cg==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/js/jquery.iviewer.min.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoKICogaXZpZXdlciBXaWRnZXQgZm9yIGpRdWVyeSBVSQogKiBodHRwczovL2dpdGh1Yi5jb20vY2FuM3AvaXZpZXdlcgogKgogKiBDb3B5cmlnaHQgKGMpIDIwMDkgLSAyMDEyIERtaXRyeSBQZXRyb3YKICogRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGFuZCBHUEwgbGljZW5zZXMuCiAqICAtIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwCiAqICAtIGh0dHA6Ly93d3cuZ251Lm9yZy9jb3B5bGVmdC9ncGwuaHRtbAogKgogKiBBdXRob3I6IERtaXRyeSBQZXRyb3YKICogVmVyc2lvbjogMC43LjcKICovCihmdW5jdGlvbigkLHVuZGVmaW5lZCl7dmFyIG1vdXNlRXZlbnRzPXt0b3VjaHN0YXJ0OiJtb3VzZWRvd24iLHRvdWNobW92ZToibW91c2Vtb3ZlIix0b3VjaGVuZDoibW91c2V1cCJ9LGdlc3R1cmVzU3VwcG9ydD0ib25nZXN0dXJlc3RhcnQiaW4gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7ZnVuY3Rpb24gbWFrZU1vdXNlRXZlbnQoZXZlbnQpe3ZhciB0b3VjaD1ldmVudC5vcmlnaW5hbEV2ZW50LmNoYW5nZWRUb3VjaGVzWzBdO3JldHVybiAkLmV4dGVuZChldmVudCx7dHlwZTptb3VzZUV2ZW50c1tldmVudC50eXBlXSx3aGljaDoxLHBhZ2VYOnRvdWNoLnBhZ2VYLHBhZ2VZOnRvdWNoLnBhZ2VZLHNjcmVlblg6dG91Y2guc2NyZWVuWCxzY3JlZW5ZOnRvdWNoLnNjcmVlblksY2xpZW50WDp0b3VjaC5jbGllbnRYLGNsaWVudFk6dG91Y2guY2xpZW50WSxpc1RvdWNoRXZlbnQ6dHJ1ZX0pfXZhciBtb3VzZVByb3RvPSQudWkubW91c2UucHJvdG90eXBlLF9tb3VzZUluaXQ9JC51aS5tb3VzZS5wcm90b3R5cGUuX21vdXNlSW5pdDsKbW91c2VQcm90by5fbW91c2VJbml0PWZ1bmN0aW9uKCl7dmFyIHNlbGY9dGhpcztzZWxmLl90b3VjaEFjdGl2ZT1mYWxzZTt0aGlzLmVsZW1lbnQuYmluZCgidG91Y2hzdGFydC4iK3RoaXMud2lkZ2V0TmFtZSxmdW5jdGlvbihldmVudCl7aWYoZ2VzdHVyZXNTdXBwb3J0JiZldmVudC5vcmlnaW5hbEV2ZW50LnRvdWNoZXMubGVuZ3RoPjEpcmV0dXJuO3NlbGYuX3RvdWNoQWN0aXZlPXRydWU7cmV0dXJuIHNlbGYuX21vdXNlRG93bihtYWtlTW91c2VFdmVudChldmVudCkpfSk7dmFyIHNlbGY9dGhpczt0aGlzLl9tb3VzZU1vdmVEZWxlZ2F0ZT1mdW5jdGlvbihldmVudCl7aWYoZ2VzdHVyZXNTdXBwb3J0JiZldmVudC5vcmlnaW5hbEV2ZW50LnRvdWNoZXMmJmV2ZW50Lm9yaWdpbmFsRXZlbnQudG91Y2hlcy5sZW5ndGg+MSlyZXR1cm47aWYoc2VsZi5fdG91Y2hBY3RpdmUpcmV0dXJuIHNlbGYuX21vdXNlTW92ZShtYWtlTW91c2VFdmVudChldmVudCkpfTt0aGlzLl9tb3VzZVVwRGVsZWdhdGU9CmZ1bmN0aW9uKGV2ZW50KXtpZihzZWxmLl90b3VjaEFjdGl2ZSl7c2VsZi5fdG91Y2hBY3RpdmU9ZmFsc2U7cmV0dXJuIHNlbGYuX21vdXNlVXAobWFrZU1vdXNlRXZlbnQoZXZlbnQpKX19OyQoZG9jdW1lbnQpLmJpbmQoInRvdWNobW92ZS4iK3RoaXMud2lkZ2V0TmFtZSx0aGlzLl9tb3VzZU1vdmVEZWxlZ2F0ZSkuYmluZCgidG91Y2hlbmQuIit0aGlzLndpZGdldE5hbWUsdGhpcy5fbW91c2VVcERlbGVnYXRlKTtfbW91c2VJbml0LmFwcGx5KHRoaXMpfTt2YXIgc2V0dGVyPWZ1bmN0aW9uKHNldHRlcixnZXR0ZXIpe3JldHVybiBmdW5jdGlvbih2YWwpe2lmKGFyZ3VtZW50cy5sZW5ndGg9PT0wKXJldHVybiBnZXR0ZXIuYXBwbHkodGhpcyk7ZWxzZSBzZXR0ZXIuYXBwbHkodGhpcyxhcmd1bWVudHMpfX07dmFyIGllVHJhbnNmb3Jtcz17IjAiOnttYXJnaW5MZWZ0OjAsbWFyZ2luVG9wOjAsZmlsdGVyOidwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuTWF0cml4KE0xMT0xLCBNMTI9MCwgTTIxPTAsIE0yMj0xLCBTaXppbmdNZXRob2Q9ImF1dG8gZXhwYW5kIiknfSwKOTA6e21hcmdpbkxlZnQ6LTEsbWFyZ2luVG9wOjEsZmlsdGVyOidwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuTWF0cml4KE0xMT0wLCBNMTI9LTEsIE0yMT0xLCBNMjI9MCwgU2l6aW5nTWV0aG9kPSJhdXRvIGV4cGFuZCIpJ30sMTgwOnttYXJnaW5MZWZ0OjAsbWFyZ2luVG9wOjAsZmlsdGVyOidwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuTWF0cml4KE0xMT0tMSwgTTEyPTAsIE0yMT0wLCBNMjI9LTEsIFNpemluZ01ldGhvZD0iYXV0byBleHBhbmQiKSd9LDI3MDp7bWFyZ2luTGVmdDotMSxtYXJnaW5Ub3A6MSxmaWx0ZXI6J3Byb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5NYXRyaXgoTTExPTAsIE0xMj0xLCBNMjE9LTEsIE0yMj0wLCBTaXppbmdNZXRob2Q9ImF1dG8gZXhwYW5kIiknfX0sdXNlSWVUcmFuc2Zvcm1zPWZ1bmN0aW9uKCl7dmFyIGVsPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2VsLnN0eWxlLmNzc1RleHQ9WyItbXMtIiwKIiIsIiJdLmpvaW4oImZpbHRlcjpibHVyKDJweCk7ICIpO3JldHVybiEhZWwuc3R5bGUuY3NzVGV4dCYmZG9jdW1lbnQuZG9jdW1lbnRNb2RlPDl9KCk7JC53aWRnZXQoInVpLml2aWV3ZXIiLCQudWkubW91c2Use3dpZGdldEV2ZW50UHJlZml4OiJpdmlld2VyIixvcHRpb25zOnt6b29tOiJmaXQiLHpvb21fYmFzZToxMDAsem9vbV9tYXg6ODAwLHpvb21fbWluOjI1LHpvb21fZGVsdGE6MS40LHpvb21fYW5pbWF0aW9uOnRydWUsdWlfZGlzYWJsZWQ6ZmFsc2UsbW91c2V3aGVlbDp0cnVlLHVwZGF0ZV9vbl9yZXNpemU6dHJ1ZSxvblpvb206alF1ZXJ5Lm5vb3Asb25BZnRlclpvb206alF1ZXJ5Lm5vb3Asb25TdGFydERyYWc6alF1ZXJ5Lm5vb3Asb25EcmFnOmpRdWVyeS5ub29wLG9uU3RvcERyYWc6alF1ZXJ5Lm5vb3Asb25Nb3VzZU1vdmU6alF1ZXJ5Lm5vb3Asb25DbGljazpqUXVlcnkubm9vcCxvblN0YXJ0TG9hZDpudWxsLG9uRmluaXNoTG9hZDpudWxsLG9uRXJyb3JMb2FkOm51bGx9LApfY3JlYXRlOmZ1bmN0aW9uKCl7dmFyIG1lPXRoaXM7dGhpcy5keD0wO3RoaXMuZHk9MDt0aGlzLmltZ19vYmplY3Q9e307dGhpcy56b29tX29iamVjdD17fTt0aGlzLl9hbmdsZT0wO3RoaXMuY3VycmVudF96b29tPXRoaXMub3B0aW9ucy56b29tO2lmKHRoaXMub3B0aW9ucy5zcmM9PT1udWxsKXJldHVybjt0aGlzLmNvbnRhaW5lcj10aGlzLmVsZW1lbnQ7dGhpcy5fdXBkYXRlQ29udGFpbmVySW5mbygpO3RoaXMuY29udGFpbmVyLmNzcygib3ZlcmZsb3ciLCJoaWRkZW4iKTtpZih0aGlzLm9wdGlvbnMudXBkYXRlX29uX3Jlc2l6ZT09dHJ1ZSkkKHdpbmRvdykucmVzaXplKGZ1bmN0aW9uKCl7bWUudXBkYXRlKCl9KTt0aGlzLmltZ19vYmplY3Q9bmV3ICQudWkuaXZpZXdlci5JbWFnZU9iamVjdCh0aGlzLm9wdGlvbnMuem9vbV9hbmltYXRpb24pO2lmKHRoaXMub3B0aW9ucy5tb3VzZXdoZWVsKXt0aGlzLmNvbnRhaW5lci5iaW5kKCJtb3VzZXdoZWVsLml2aWV3ZXIiLGZ1bmN0aW9uKGV2LApkZWx0YSl7dmFyIHpvb209ZGVsdGE+MD8xOi0xLGNvbnRhaW5lcl9vZmZzZXQ9bWUuY29udGFpbmVyLm9mZnNldCgpLG1vdXNlX3Bvcz17eDpldi5wYWdlWC1jb250YWluZXJfb2Zmc2V0LmxlZnQseTpldi5wYWdlWS1jb250YWluZXJfb2Zmc2V0LnRvcH07bWUuem9vbV9ieSh6b29tLG1vdXNlX3Bvcyk7cmV0dXJuIGZhbHNlfSk7aWYoZ2VzdHVyZXNTdXBwb3J0KXt2YXIgZ2VzdHVyZVRocm90dGxlPStuZXcgRGF0ZTt2YXIgb3JpZ2luYWxTY2FsZSxvcmlnaW5hbENlbnRlcjt0aGlzLmltZ19vYmplY3Qub2JqZWN0KCkuYmluZCgidG91Y2hzdGFydCIsZnVuY3Rpb24oZXYpe29yaWdpbmFsU2NhbGU9bWUuY3VycmVudF96b29tO3ZhciB0b3VjaGVzPWV2Lm9yaWdpbmFsRXZlbnQudG91Y2hlcyxjb250YWluZXJfb2Zmc2V0O2lmKHRvdWNoZXMubGVuZ3RoPT0yKXtjb250YWluZXJfb2Zmc2V0PW1lLmNvbnRhaW5lci5vZmZzZXQoKTtvcmlnaW5hbENlbnRlcj17eDoodG91Y2hlc1swXS5wYWdlWCsKdG91Y2hlc1sxXS5wYWdlWCkvMi1jb250YWluZXJfb2Zmc2V0LmxlZnQseToodG91Y2hlc1swXS5wYWdlWSt0b3VjaGVzWzFdLnBhZ2VZKS8yLWNvbnRhaW5lcl9vZmZzZXQudG9wfX1lbHNlIG9yaWdpbmFsQ2VudGVyPW51bGx9KS5iaW5kKCJnZXN0dXJlY2hhbmdlIixmdW5jdGlvbihldil7dmFyIGQ9K25ldyBEYXRlO2lmKGQtZ2VzdHVyZVRocm90dGxlPDUwKXJldHVybjtnZXN0dXJlVGhyb3R0bGU9ZDt2YXIgem9vbT1vcmlnaW5hbFNjYWxlKmV2Lm9yaWdpbmFsRXZlbnQuc2NhbGU7bWUuc2V0X3pvb20oem9vbSxvcmlnaW5hbENlbnRlcik7ZXYucHJldmVudERlZmF1bHQoKX0pLmJpbmQoImdlc3R1cmVlbmQiLGZ1bmN0aW9uKGV2KXtvcmlnaW5hbENlbnRlcj1udWxsfSl9fXRoaXMuaW1nX29iamVjdC5vYmplY3QoKS5jbGljayhmdW5jdGlvbihlKXtyZXR1cm4gbWUuX2NsaWNrKGUpfSkucHJlcGVuZFRvKHRoaXMuY29udGFpbmVyKTt0aGlzLmNvbnRhaW5lci5iaW5kKCJtb3VzZW1vdmUiLApmdW5jdGlvbihldil7bWUuX2hhbmRsZU1vdXNlTW92ZShldil9KTt0aGlzLmxvYWRJbWFnZSh0aGlzLm9wdGlvbnMuc3JjKTtpZighdGhpcy5vcHRpb25zLnVpX2Rpc2FibGVkKXRoaXMuY3JlYXRldWkoKTt0aGlzLl9tb3VzZUluaXQoKX0sZGVzdHJveTpmdW5jdGlvbigpeyQuV2lkZ2V0LnByb3RvdHlwZS5kZXN0cm95LmNhbGwodGhpcyk7dGhpcy5fbW91c2VEZXN0cm95KCk7dGhpcy5pbWdfb2JqZWN0Lm9iamVjdCgpLnJlbW92ZSgpO3RoaXMuY29udGFpbmVyLm9mZigiLml2aWV3ZXIiKTt0aGlzLmNvbnRhaW5lci5jc3MoIm92ZXJmbG93IiwiIil9LF91cGRhdGVDb250YWluZXJJbmZvOmZ1bmN0aW9uKCl7dGhpcy5vcHRpb25zLmhlaWdodD10aGlzLmNvbnRhaW5lci5oZWlnaHQoKTt0aGlzLm9wdGlvbnMud2lkdGg9dGhpcy5jb250YWluZXIud2lkdGgoKX0sdXBkYXRlOmZ1bmN0aW9uKCl7dGhpcy5fdXBkYXRlQ29udGFpbmVySW5mbygpO3RoaXMuc2V0Q29vcmRzKHRoaXMuaW1nX29iamVjdC54KCksCnRoaXMuaW1nX29iamVjdC55KCkpfSxsb2FkSW1hZ2U6ZnVuY3Rpb24oc3JjKXt0aGlzLmN1cnJlbnRfem9vbT10aGlzLm9wdGlvbnMuem9vbTt2YXIgbWU9dGhpczt0aGlzLl90cmlnZ2VyKCJvblN0YXJ0TG9hZCIsMCxzcmMpO3RoaXMuY29udGFpbmVyLmFkZENsYXNzKCJpdmlld2VyX2xvYWRpbmciKTt0aGlzLmltZ19vYmplY3QubG9hZChzcmMsZnVuY3Rpb24oKXttZS5faW1hZ2VMb2FkZWQoc3JjKX0sZnVuY3Rpb24oKXttZS5fdHJpZ2dlcigib25FcnJvckxvYWQiLDAsc3JjKX0pfSxfaW1hZ2VMb2FkZWQ6ZnVuY3Rpb24oc3JjKXt0aGlzLmNvbnRhaW5lci5yZW1vdmVDbGFzcygiaXZpZXdlcl9sb2FkaW5nIik7dGhpcy5jb250YWluZXIuYWRkQ2xhc3MoIml2aWV3ZXJfY3Vyc29yIik7aWYodGhpcy5vcHRpb25zLnpvb209PSJmaXQiKXRoaXMuZml0KHRydWUpO2Vsc2UgdGhpcy5zZXRfem9vbSh0aGlzLm9wdGlvbnMuem9vbSx0cnVlKTt0aGlzLl90cmlnZ2VyKCJvbkZpbmlzaExvYWQiLAowLHNyYyl9LGZpdDpmdW5jdGlvbihza2lwX2FuaW1hdGlvbil7dmFyIGFzcGVjdF9yYXRpbz10aGlzLmltZ19vYmplY3Qub3JpZ193aWR0aCgpL3RoaXMuaW1nX29iamVjdC5vcmlnX2hlaWdodCgpO3ZhciB3aW5kb3dfcmF0aW89dGhpcy5vcHRpb25zLndpZHRoL3RoaXMub3B0aW9ucy5oZWlnaHQ7dmFyIGNob29zZV9sZWZ0PWFzcGVjdF9yYXRpbz53aW5kb3dfcmF0aW87dmFyIG5ld196b29tPTA7aWYoY2hvb3NlX2xlZnQpbmV3X3pvb209dGhpcy5vcHRpb25zLndpZHRoL3RoaXMuaW1nX29iamVjdC5vcmlnX3dpZHRoKCkqMTAwO2Vsc2UgbmV3X3pvb209dGhpcy5vcHRpb25zLmhlaWdodC90aGlzLmltZ19vYmplY3Qub3JpZ19oZWlnaHQoKSoxMDA7dGhpcy5zZXRfem9vbShuZXdfem9vbSxza2lwX2FuaW1hdGlvbil9LGNlbnRlcjpmdW5jdGlvbigpe3RoaXMuc2V0Q29vcmRzKC1NYXRoLnJvdW5kKCh0aGlzLmltZ19vYmplY3QuZGlzcGxheV93aWR0aCgpLXRoaXMub3B0aW9ucy53aWR0aCkvCjIpLC1NYXRoLnJvdW5kKCh0aGlzLmltZ19vYmplY3QuZGlzcGxheV9oZWlnaHQoKS10aGlzLm9wdGlvbnMuaGVpZ2h0KS8yKSl9LG1vdmVUbzpmdW5jdGlvbih4LHkpe3ZhciBkeD14LU1hdGgucm91bmQodGhpcy5vcHRpb25zLndpZHRoLzIpO3ZhciBkeT15LU1hdGgucm91bmQodGhpcy5vcHRpb25zLmhlaWdodC8yKTt2YXIgbmV3X3g9dGhpcy5pbWdfb2JqZWN0LngoKS1keDt2YXIgbmV3X3k9dGhpcy5pbWdfb2JqZWN0LnkoKS1keTt0aGlzLnNldENvb3JkcyhuZXdfeCxuZXdfeSl9LGdldENvbnRhaW5lck9mZnNldDpmdW5jdGlvbigpe3JldHVybiBqUXVlcnkuZXh0ZW5kKHt9LHRoaXMuY29udGFpbmVyLm9mZnNldCgpKX0sc2V0Q29vcmRzOmZ1bmN0aW9uKHgseSl7aWYoIXRoaXMuaW1nX29iamVjdC5sb2FkZWQoKSlyZXR1cm47dmFyIGNvb3Jkcz10aGlzLl9jb3JyZWN0Q29vcmRzKHgseSk7dGhpcy5pbWdfb2JqZWN0LngoY29vcmRzLngpO3RoaXMuaW1nX29iamVjdC55KGNvb3Jkcy55KX0sCl9jb3JyZWN0Q29vcmRzOmZ1bmN0aW9uKHgseSl7eD1wYXJzZUludCh4LDEwKTt5PXBhcnNlSW50KHksMTApO2lmKHk+MCl5PTA7aWYoeD4wKXg9MDtpZih5K3RoaXMuaW1nX29iamVjdC5kaXNwbGF5X2hlaWdodCgpPHRoaXMub3B0aW9ucy5oZWlnaHQpeT10aGlzLm9wdGlvbnMuaGVpZ2h0LXRoaXMuaW1nX29iamVjdC5kaXNwbGF5X2hlaWdodCgpO2lmKHgrdGhpcy5pbWdfb2JqZWN0LmRpc3BsYXlfd2lkdGgoKTx0aGlzLm9wdGlvbnMud2lkdGgpeD10aGlzLm9wdGlvbnMud2lkdGgtdGhpcy5pbWdfb2JqZWN0LmRpc3BsYXlfd2lkdGgoKTtpZih0aGlzLmltZ19vYmplY3QuZGlzcGxheV93aWR0aCgpPD10aGlzLm9wdGlvbnMud2lkdGgpeD0tKHRoaXMuaW1nX29iamVjdC5kaXNwbGF5X3dpZHRoKCktdGhpcy5vcHRpb25zLndpZHRoKS8yO2lmKHRoaXMuaW1nX29iamVjdC5kaXNwbGF5X2hlaWdodCgpPD10aGlzLm9wdGlvbnMuaGVpZ2h0KXk9LSh0aGlzLmltZ19vYmplY3QuZGlzcGxheV9oZWlnaHQoKS0KdGhpcy5vcHRpb25zLmhlaWdodCkvMjtyZXR1cm57eDp4LHk6eX19LGNvbnRhaW5lclRvSW1hZ2U6ZnVuY3Rpb24oeCx5KXt2YXIgY29vcmRzPXt4OngtdGhpcy5pbWdfb2JqZWN0LngoKSx5OnktdGhpcy5pbWdfb2JqZWN0LnkoKX07Y29vcmRzPXRoaXMuaW1nX29iamVjdC50b09yaWdpbmFsQ29vcmRzKGNvb3Jkcyk7cmV0dXJue3g6dXRpbC5kZXNjYWxlVmFsdWUoY29vcmRzLngsdGhpcy5jdXJyZW50X3pvb20pLHk6dXRpbC5kZXNjYWxlVmFsdWUoY29vcmRzLnksdGhpcy5jdXJyZW50X3pvb20pfX0saW1hZ2VUb0NvbnRhaW5lcjpmdW5jdGlvbih4LHkpe3ZhciBjb29yZHM9e3g6dXRpbC5zY2FsZVZhbHVlKHgsdGhpcy5jdXJyZW50X3pvb20pLHk6dXRpbC5zY2FsZVZhbHVlKHksdGhpcy5jdXJyZW50X3pvb20pfTtyZXR1cm4gdGhpcy5pbWdfb2JqZWN0LnRvUmVhbENvb3Jkcyhjb29yZHMpfSxfZ2V0TW91c2VDb29yZHM6ZnVuY3Rpb24oZSl7dmFyIGNvbnRhaW5lck9mZnNldD10aGlzLmNvbnRhaW5lci5vZmZzZXQoKTsKY29vcmRzPXRoaXMuY29udGFpbmVyVG9JbWFnZShlLnBhZ2VYLWNvbnRhaW5lck9mZnNldC5sZWZ0LGUucGFnZVktY29udGFpbmVyT2Zmc2V0LnRvcCk7cmV0dXJuIGNvb3Jkc30sc2V0X3pvb206ZnVuY3Rpb24obmV3X3pvb20sc2tpcF9hbmltYXRpb24sem9vbV9jZW50ZXIpe2lmKHRoaXMuX3RyaWdnZXIoIm9uWm9vbSIsMCxuZXdfem9vbSk9PWZhbHNlKXJldHVybjtpZighdGhpcy5pbWdfb2JqZWN0LmxvYWRlZCgpKXJldHVybjt6b29tX2NlbnRlcj16b29tX2NlbnRlcnx8e3g6TWF0aC5yb3VuZCh0aGlzLm9wdGlvbnMud2lkdGgvMikseTpNYXRoLnJvdW5kKHRoaXMub3B0aW9ucy5oZWlnaHQvMil9O2lmKG5ld196b29tPHRoaXMub3B0aW9ucy56b29tX21pbiluZXdfem9vbT10aGlzLm9wdGlvbnMuem9vbV9taW47ZWxzZSBpZihuZXdfem9vbT50aGlzLm9wdGlvbnMuem9vbV9tYXgpbmV3X3pvb209dGhpcy5vcHRpb25zLnpvb21fbWF4O2lmKHRoaXMuY3VycmVudF96b29tPT0iZml0Iil7dmFyIG9sZF94PQp6b29tX2NlbnRlci54K01hdGgucm91bmQodGhpcy5pbWdfb2JqZWN0Lm9yaWdfd2lkdGgoKS8yKTt2YXIgb2xkX3k9em9vbV9jZW50ZXIueStNYXRoLnJvdW5kKHRoaXMuaW1nX29iamVjdC5vcmlnX2hlaWdodCgpLzIpO3RoaXMuY3VycmVudF96b29tPTEwMH1lbHNle3ZhciBvbGRfeD0tdGhpcy5pbWdfb2JqZWN0LngoKSt6b29tX2NlbnRlci54O3ZhciBvbGRfeT0tdGhpcy5pbWdfb2JqZWN0LnkoKSt6b29tX2NlbnRlci55fXZhciBuZXdfd2lkdGg9dXRpbC5zY2FsZVZhbHVlKHRoaXMuaW1nX29iamVjdC5vcmlnX3dpZHRoKCksbmV3X3pvb20pO3ZhciBuZXdfaGVpZ2h0PXV0aWwuc2NhbGVWYWx1ZSh0aGlzLmltZ19vYmplY3Qub3JpZ19oZWlnaHQoKSxuZXdfem9vbSk7dmFyIG5ld194PXV0aWwuc2NhbGVWYWx1ZSh1dGlsLmRlc2NhbGVWYWx1ZShvbGRfeCx0aGlzLmN1cnJlbnRfem9vbSksbmV3X3pvb20pO3ZhciBuZXdfeT11dGlsLnNjYWxlVmFsdWUodXRpbC5kZXNjYWxlVmFsdWUob2xkX3ksCnRoaXMuY3VycmVudF96b29tKSxuZXdfem9vbSk7bmV3X3g9em9vbV9jZW50ZXIueC1uZXdfeDtuZXdfeT16b29tX2NlbnRlci55LW5ld195O25ld193aWR0aD1NYXRoLmZsb29yKG5ld193aWR0aCk7bmV3X2hlaWdodD1NYXRoLmZsb29yKG5ld19oZWlnaHQpO25ld194PU1hdGguZmxvb3IobmV3X3gpO25ld195PU1hdGguZmxvb3IobmV3X3kpO3RoaXMuaW1nX29iamVjdC5kaXNwbGF5X3dpZHRoKG5ld193aWR0aCk7dGhpcy5pbWdfb2JqZWN0LmRpc3BsYXlfaGVpZ2h0KG5ld19oZWlnaHQpO3ZhciBjb29yZHM9dGhpcy5fY29ycmVjdENvb3JkcyhuZXdfeCxuZXdfeSksc2VsZj10aGlzO3RoaXMuaW1nX29iamVjdC5zZXRJbWFnZVByb3BzKG5ld193aWR0aCxuZXdfaGVpZ2h0LGNvb3Jkcy54LGNvb3Jkcy55LHNraXBfYW5pbWF0aW9uLGZ1bmN0aW9uKCl7c2VsZi5fdHJpZ2dlcigib25BZnRlclpvb20iLDAsbmV3X3pvb20pfSk7dGhpcy5jdXJyZW50X3pvb209bmV3X3pvb207dGhpcy51cGRhdGVfc3RhdHVzKCl9LAp6b29tX2J5OmZ1bmN0aW9uKGRlbHRhLHpvb21fY2VudGVyKXt2YXIgY2xvc2VzdF9yYXRlPXRoaXMuZmluZF9jbG9zZXN0X3pvb21fcmF0ZSh0aGlzLmN1cnJlbnRfem9vbSk7dmFyIG5leHRfcmF0ZT1jbG9zZXN0X3JhdGUrZGVsdGE7dmFyIG5leHRfem9vbT10aGlzLm9wdGlvbnMuem9vbV9iYXNlKk1hdGgucG93KHRoaXMub3B0aW9ucy56b29tX2RlbHRhLG5leHRfcmF0ZSk7aWYoZGVsdGE+MCYmbmV4dF96b29tPHRoaXMuY3VycmVudF96b29tKW5leHRfem9vbSo9dGhpcy5vcHRpb25zLnpvb21fZGVsdGE7aWYoZGVsdGE8MCYmbmV4dF96b29tPnRoaXMuY3VycmVudF96b29tKW5leHRfem9vbS89dGhpcy5vcHRpb25zLnpvb21fZGVsdGE7dGhpcy5zZXRfem9vbShuZXh0X3pvb20sdW5kZWZpbmVkLHpvb21fY2VudGVyKX0sYW5nbGU6ZnVuY3Rpb24oZGVnLGFicyl7aWYoYXJndW1lbnRzLmxlbmd0aD09PTApcmV0dXJuIHRoaXMuaW1nX29iamVjdC5hbmdsZSgpO2lmKGRlZzwtMjcwfHwKZGVnPjI3MHx8ZGVnJTkwIT09MClyZXR1cm47aWYoIWFicylkZWcrPXRoaXMuaW1nX29iamVjdC5hbmdsZSgpO2lmKGRlZzwwKWRlZys9MzYwO2lmKGRlZz49MzYwKWRlZy09MzYwO2lmKGRlZz09PXRoaXMuaW1nX29iamVjdC5hbmdsZSgpKXJldHVybjt0aGlzLmltZ19vYmplY3QuYW5nbGUoZGVnKTt0aGlzLmNlbnRlcigpO3RoaXMuX3RyaWdnZXIoImFuZ2xlIiwwLHthbmdsZTp0aGlzLmltZ19vYmplY3QuYW5nbGUoKX0pfSxmaW5kX2Nsb3Nlc3Rfem9vbV9yYXRlOmZ1bmN0aW9uKHZhbHVlKXtpZih2YWx1ZT09dGhpcy5vcHRpb25zLnpvb21fYmFzZSlyZXR1cm4gMDtmdW5jdGlvbiBkaXYodmFsMSx2YWwyKXtyZXR1cm4gdmFsMS92YWwyfWZ1bmN0aW9uIG11bCh2YWwxLHZhbDIpe3JldHVybiB2YWwxKnZhbDJ9dmFyIGZ1bmM9dmFsdWU+dGhpcy5vcHRpb25zLnpvb21fYmFzZT9tdWw6ZGl2O3ZhciBzZ249dmFsdWU+dGhpcy5vcHRpb25zLnpvb21fYmFzZT8xOi0xO3ZhciBtbHRwbHI9CnRoaXMub3B0aW9ucy56b29tX2RlbHRhO3ZhciByYXRlPTE7d2hpbGUoTWF0aC5hYnMoZnVuYyh0aGlzLm9wdGlvbnMuem9vbV9iYXNlLE1hdGgucG93KG1sdHBscixyYXRlKSktdmFsdWUpPk1hdGguYWJzKGZ1bmModGhpcy5vcHRpb25zLnpvb21fYmFzZSxNYXRoLnBvdyhtbHRwbHIscmF0ZSsxKSktdmFsdWUpKXJhdGUrKztyZXR1cm4gc2duKnJhdGV9LHVwZGF0ZV9zdGF0dXM6ZnVuY3Rpb24oKXtpZighdGhpcy5vcHRpb25zLnVpX2Rpc2FibGVkKXt2YXIgcGVyY2VudD1NYXRoLnJvdW5kKDEwMCp0aGlzLmltZ19vYmplY3QuZGlzcGxheV9oZWlnaHQoKS90aGlzLmltZ19vYmplY3Qub3JpZ19oZWlnaHQoKSk7aWYocGVyY2VudCl0aGlzLnpvb21fb2JqZWN0Lmh0bWwocGVyY2VudCsiJSIpfX0saW5mbzpmdW5jdGlvbihwYXJhbSx3aXRob3V0Um90YXRpb24pe2lmKCFwYXJhbSlyZXR1cm47c3dpdGNoKHBhcmFtKXtjYXNlICJvcmlnX3dpZHRoIjpjYXNlICJvcmlnX2hlaWdodCI6aWYod2l0aG91dFJvdGF0aW9uKXJldHVybiB0aGlzLmltZ19vYmplY3QuYW5nbGUoKSUKMTgwPT09MD90aGlzLmltZ19vYmplY3RbcGFyYW1dKCk6cGFyYW09PT0ib3JpZ193aWR0aCI/dGhpcy5pbWdfb2JqZWN0Lm9yaWdfaGVpZ2h0KCk6dGhpcy5pbWdfb2JqZWN0Lm9yaWdfd2lkdGgoKTtlbHNlIHJldHVybiB0aGlzLmltZ19vYmplY3RbcGFyYW1dKCk7Y2FzZSAiZGlzcGxheV93aWR0aCI6Y2FzZSAiZGlzcGxheV9oZWlnaHQiOmNhc2UgImFuZ2xlIjpyZXR1cm4gdGhpcy5pbWdfb2JqZWN0W3BhcmFtXSgpO2Nhc2UgInpvb20iOnJldHVybiB0aGlzLmN1cnJlbnRfem9vbTtjYXNlICJzcmMiOnJldHVybiB0aGlzLmltZ19vYmplY3Qub2JqZWN0KCkuYXR0cigic3JjIik7Y2FzZSAiY29vcmRzIjpyZXR1cm57eDp0aGlzLmltZ19vYmplY3QueCgpLHk6dGhpcy5pbWdfb2JqZWN0LnkoKX19fSxfbW91c2VTdGFydDpmdW5jdGlvbihlKXskLnVpLm1vdXNlLnByb3RvdHlwZS5fbW91c2VTdGFydC5jYWxsKHRoaXMsZSk7aWYodGhpcy5fdHJpZ2dlcigib25TdGFydERyYWciLDAsCnRoaXMuX2dldE1vdXNlQ29vcmRzKGUpKT09PWZhbHNlKXJldHVybiBmYWxzZTt0aGlzLmNvbnRhaW5lci5hZGRDbGFzcygiaXZpZXdlcl9kcmFnX2N1cnNvciIpO3RoaXMuX2RyYWdJbml0aWFsaXplZD0hKGUub3JpZ2luYWxFdmVudC5jaGFuZ2VkVG91Y2hlcyYmZS5vcmlnaW5hbEV2ZW50LmNoYW5nZWRUb3VjaGVzLmxlbmd0aD09MSk7dGhpcy5keD1lLnBhZ2VYLXRoaXMuaW1nX29iamVjdC54KCk7dGhpcy5keT1lLnBhZ2VZLXRoaXMuaW1nX29iamVjdC55KCk7cmV0dXJuIHRydWV9LF9tb3VzZUNhcHR1cmU6ZnVuY3Rpb24oZSl7cmV0dXJuIHRydWV9LF9oYW5kbGVNb3VzZU1vdmU6ZnVuY3Rpb24oZSl7dGhpcy5fdHJpZ2dlcigib25Nb3VzZU1vdmUiLGUsdGhpcy5fZ2V0TW91c2VDb29yZHMoZSkpfSxfbW91c2VEcmFnOmZ1bmN0aW9uKGUpeyQudWkubW91c2UucHJvdG90eXBlLl9tb3VzZURyYWcuY2FsbCh0aGlzLGUpO2lmKCF0aGlzLl9kcmFnSW5pdGlhbGl6ZWQpe3RoaXMuZHg9CmUucGFnZVgtdGhpcy5pbWdfb2JqZWN0LngoKTt0aGlzLmR5PWUucGFnZVktdGhpcy5pbWdfb2JqZWN0LnkoKTt0aGlzLl9kcmFnSW5pdGlhbGl6ZWQ9dHJ1ZX12YXIgbHRvcD1lLnBhZ2VZLXRoaXMuZHk7dmFyIGxsZWZ0PWUucGFnZVgtdGhpcy5keDt0aGlzLnNldENvb3JkcyhsbGVmdCxsdG9wKTt0aGlzLl90cmlnZ2VyKCJvbkRyYWciLGUsdGhpcy5fZ2V0TW91c2VDb29yZHMoZSkpO3JldHVybiBmYWxzZX0sX21vdXNlU3RvcDpmdW5jdGlvbihlKXskLnVpLm1vdXNlLnByb3RvdHlwZS5fbW91c2VTdG9wLmNhbGwodGhpcyxlKTt0aGlzLmNvbnRhaW5lci5yZW1vdmVDbGFzcygiaXZpZXdlcl9kcmFnX2N1cnNvciIpO3RoaXMuX3RyaWdnZXIoIm9uU3RvcERyYWciLDAsdGhpcy5fZ2V0TW91c2VDb29yZHMoZSkpfSxfY2xpY2s6ZnVuY3Rpb24oZSl7dGhpcy5fdHJpZ2dlcigib25DbGljayIsMCx0aGlzLl9nZXRNb3VzZUNvb3JkcyhlKSl9LGNyZWF0ZXVpOmZ1bmN0aW9uKCl7dmFyIG1lPQp0aGlzOyQoIjxkaXY+Iix7ImNsYXNzIjoiaXZpZXdlcl96b29tX2luIGl2aWV3ZXJfY29tbW9uIGl2aWV3ZXJfYnV0dG9uIn0pLmJpbmQoIm1vdXNlZG93biB0b3VjaHN0YXJ0IixmdW5jdGlvbigpe21lLnpvb21fYnkoMSk7cmV0dXJuIGZhbHNlfSkuYXBwZW5kVG8odGhpcy5jb250YWluZXIpOyQoIjxkaXY+Iix7ImNsYXNzIjoiaXZpZXdlcl96b29tX291dCBpdmlld2VyX2NvbW1vbiBpdmlld2VyX2J1dHRvbiJ9KS5iaW5kKCJtb3VzZWRvd24gdG91Y2hzdGFydCIsZnVuY3Rpb24oKXttZS56b29tX2J5KC0xKTtyZXR1cm4gZmFsc2V9KS5hcHBlbmRUbyh0aGlzLmNvbnRhaW5lcik7JCgiPGRpdj4iLHsiY2xhc3MiOiJpdmlld2VyX3pvb21femVybyBpdmlld2VyX2NvbW1vbiBpdmlld2VyX2J1dHRvbiJ9KS5iaW5kKCJtb3VzZWRvd24gdG91Y2hzdGFydCIsZnVuY3Rpb24oKXttZS5zZXRfem9vbSgxMDApO3JldHVybiBmYWxzZX0pLmFwcGVuZFRvKHRoaXMuY29udGFpbmVyKTskKCI8ZGl2PiIsCnsiY2xhc3MiOiJpdmlld2VyX3pvb21fZml0IGl2aWV3ZXJfY29tbW9uIGl2aWV3ZXJfYnV0dG9uIn0pLmJpbmQoIm1vdXNlZG93biB0b3VjaHN0YXJ0IixmdW5jdGlvbigpe21lLmZpdCh0aGlzKTtyZXR1cm4gZmFsc2V9KS5hcHBlbmRUbyh0aGlzLmNvbnRhaW5lcik7dGhpcy56b29tX29iamVjdD0kKCI8ZGl2PiIpLmFkZENsYXNzKCJpdmlld2VyX3pvb21fc3RhdHVzIGl2aWV3ZXJfY29tbW9uIikuYXBwZW5kVG8odGhpcy5jb250YWluZXIpOyQoIjxkaXY+Iix7ImNsYXNzIjoiaXZpZXdlcl9yb3RhdGVfbGVmdCBpdmlld2VyX2NvbW1vbiBpdmlld2VyX2J1dHRvbiJ9KS5iaW5kKCJtb3VzZWRvd24gdG91Y2hzdGFydCIsZnVuY3Rpb24oKXttZS5hbmdsZSgtOTApO3JldHVybiBmYWxzZX0pLmFwcGVuZFRvKHRoaXMuY29udGFpbmVyKTskKCI8ZGl2PiIseyJjbGFzcyI6Iml2aWV3ZXJfcm90YXRlX3JpZ2h0IGl2aWV3ZXJfY29tbW9uIGl2aWV3ZXJfYnV0dG9uIn0pLmJpbmQoIm1vdXNlZG93biB0b3VjaHN0YXJ0IiwKZnVuY3Rpb24oKXttZS5hbmdsZSg5MCk7cmV0dXJuIGZhbHNlfSkuYXBwZW5kVG8odGhpcy5jb250YWluZXIpO3RoaXMudXBkYXRlX3N0YXR1cygpfX0pOyQudWkuaXZpZXdlci5JbWFnZU9iamVjdD1mdW5jdGlvbihkb19hbmltKXt0aGlzLl9pbWc9JCgiPGltZz4iKS5jc3Moe3Bvc2l0aW9uOiJhYnNvbHV0ZSIsdG9wOiIwcHgiLGxlZnQ6IjBweCJ9KTt0aGlzLl9sb2FkZWQ9ZmFsc2U7dGhpcy5fc3dhcERpbWVuc2lvbnM9ZmFsc2U7dGhpcy5fZG9fYW5pbT1kb19hbmltfHxmYWxzZTt0aGlzLngoMCx0cnVlKTt0aGlzLnkoMCx0cnVlKTt0aGlzLmFuZ2xlKDApfTsoZnVuY3Rpb24oKXt0aGlzLl9yZXNldD1mdW5jdGlvbih3LGgpe3RoaXMuX2FuZ2xlPTA7dGhpcy5fc3dhcERpbWVuc2lvbnM9ZmFsc2U7dGhpcy54KDApO3RoaXMueSgwKTt0aGlzLm9yaWdfd2lkdGgodyk7dGhpcy5vcmlnX2hlaWdodChoKTt0aGlzLmRpc3BsYXlfd2lkdGgodyk7dGhpcy5kaXNwbGF5X2hlaWdodChoKX07CnRoaXMubG9hZGVkPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2xvYWRlZH07dGhpcy5sb2FkPWZ1bmN0aW9uKHNyYyxsb2FkZWQsZXJyb3Ipe3ZhciBzZWxmPXRoaXM7bG9hZGVkPWxvYWRlZHx8alF1ZXJ5Lm5vb3A7dGhpcy5fbG9hZGVkPWZhbHNlO3ZhciBpbWc9bmV3IEltYWdlO2ltZy5vbmxvYWQ9ZnVuY3Rpb24oKXtzZWxmLl9sb2FkZWQ9dHJ1ZTtzZWxmLl9yZXNldCh0aGlzLndpZHRoLHRoaXMuaGVpZ2h0KTtzZWxmLl9pbWcucmVtb3ZlQXR0cigid2lkdGgiKS5yZW1vdmVBdHRyKCJoZWlnaHQiKS5yZW1vdmVBdHRyKCJzdHlsZSIpLmNzcyh7cG9zaXRpb246ImFic29sdXRlIix0b3A6IjBweCIsbGVmdDoiMHB4IixtYXhXaWR0aDoibm9uZSJ9KTtzZWxmLl9pbWdbMF0uc3JjPXNyYztsb2FkZWQoKX07aW1nLm9uZXJyb3I9ZXJyb3I7c2V0VGltZW91dChmdW5jdGlvbigpe2ltZy5zcmM9c3JjfSwwKTt0aGlzLmFuZ2xlKDApfTt0aGlzLl9kaW1lbnNpb249ZnVuY3Rpb24ocHJlZml4LApuYW1lKXt2YXIgaG9yaXo9Il8iK3ByZWZpeCsiXyIrbmFtZSx2ZXJ0PSJfIitwcmVmaXgrIl8iKyhuYW1lPT09ImhlaWdodCI/IndpZHRoIjoiaGVpZ2h0Iik7cmV0dXJuIHNldHRlcihmdW5jdGlvbih2YWwpe3RoaXNbdGhpcy5fc3dhcERpbWVuc2lvbnM/aG9yaXo6dmVydF09dmFsfSxmdW5jdGlvbigpe3JldHVybiB0aGlzW3RoaXMuX3N3YXBEaW1lbnNpb25zP2hvcml6OnZlcnRdfSl9O3RoaXMuZGlzcGxheV93aWR0aD10aGlzLl9kaW1lbnNpb24oImRpc3BsYXkiLCJ3aWR0aCIpLHRoaXMuZGlzcGxheV9oZWlnaHQ9dGhpcy5fZGltZW5zaW9uKCJkaXNwbGF5IiwiaGVpZ2h0IiksdGhpcy5kaXNwbGF5X2RpZmY9ZnVuY3Rpb24oKXtyZXR1cm4gTWF0aC5mbG9vcih0aGlzLmRpc3BsYXlfd2lkdGgoKS10aGlzLmRpc3BsYXlfaGVpZ2h0KCkpfTt0aGlzLm9yaWdfd2lkdGg9dGhpcy5fZGltZW5zaW9uKCJvcmlnIiwid2lkdGgiKSx0aGlzLm9yaWdfaGVpZ2h0PXRoaXMuX2RpbWVuc2lvbigib3JpZyIsCiJoZWlnaHQiKSx0aGlzLng9c2V0dGVyKGZ1bmN0aW9uKHZhbCxza2lwQ3NzKXt0aGlzLl94PXZhbDtpZighc2tpcENzcyl7dGhpcy5fZmluaXNoQW5pbWF0aW9uKCk7dGhpcy5faW1nLmNzcygibGVmdCIsdGhpcy5feCsodGhpcy5fc3dhcERpbWVuc2lvbnM/dGhpcy5kaXNwbGF5X2RpZmYoKS8yOjApKyJweCIpfX0sZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5feH0pO3RoaXMueT1zZXR0ZXIoZnVuY3Rpb24odmFsLHNraXBDc3Mpe3RoaXMuX3k9dmFsO2lmKCFza2lwQ3NzKXt0aGlzLl9maW5pc2hBbmltYXRpb24oKTt0aGlzLl9pbWcuY3NzKCJ0b3AiLHRoaXMuX3ktKHRoaXMuX3N3YXBEaW1lbnNpb25zP3RoaXMuZGlzcGxheV9kaWZmKCkvMjowKSsicHgiKX19LGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3l9KTt0aGlzLmFuZ2xlPXNldHRlcihmdW5jdGlvbihkZWcpe3ZhciBwcmV2U3dhcD10aGlzLl9zd2FwRGltZW5zaW9uczt0aGlzLl9hbmdsZT1kZWc7dGhpcy5fc3dhcERpbWVuc2lvbnM9CmRlZyUxODAhPT0wO2lmKHByZXZTd2FwIT09dGhpcy5fc3dhcERpbWVuc2lvbnMpe3ZhciB2ZXJ0aWNhbE1vZD10aGlzLl9zd2FwRGltZW5zaW9ucz8tMToxO3RoaXMueCh0aGlzLngoKS12ZXJ0aWNhbE1vZCp0aGlzLmRpc3BsYXlfZGlmZigpLzIsdHJ1ZSk7dGhpcy55KHRoaXMueSgpK3ZlcnRpY2FsTW9kKnRoaXMuZGlzcGxheV9kaWZmKCkvMix0cnVlKX12YXIgY3NzVmFsPSJyb3RhdGUoIitkZWcrImRlZykiLGltZz10aGlzLl9pbWc7alF1ZXJ5LmVhY2goWyIiLCItd2Via2l0LSIsIi1tb3otIiwiLW8tIiwiLW1zLSJdLGZ1bmN0aW9uKGkscHJlZml4KXtpbWcuY3NzKHByZWZpeCsidHJhbnNmb3JtIixjc3NWYWwpfSk7aWYodXNlSWVUcmFuc2Zvcm1zKXtqUXVlcnkuZWFjaChbIi1tcy0iLCIiXSxmdW5jdGlvbihpLHByZWZpeCl7aW1nLmNzcyhwcmVmaXgrImZpbHRlciIsaWVUcmFuc2Zvcm1zW2RlZ10uZmlsdGVyKX0pO2ltZy5jc3Moe21hcmdpbkxlZnQ6aWVUcmFuc2Zvcm1zW2RlZ10ubWFyZ2luTGVmdCoKdGhpcy5kaXNwbGF5X2RpZmYoKS8yLG1hcmdpblRvcDppZVRyYW5zZm9ybXNbZGVnXS5tYXJnaW5Ub3AqdGhpcy5kaXNwbGF5X2RpZmYoKS8yfSl9fSxmdW5jdGlvbigpe3JldHVybiB0aGlzLl9hbmdsZX0pO3RoaXMudG9PcmlnaW5hbENvb3Jkcz1mdW5jdGlvbihwb2ludCl7c3dpdGNoKHRoaXMuYW5nbGUoKSl7Y2FzZSAwOnJldHVybnt4OnBvaW50LngseTpwb2ludC55fTtjYXNlIDkwOnJldHVybnt4OnBvaW50LnkseTp0aGlzLmRpc3BsYXlfd2lkdGgoKS1wb2ludC54fTtjYXNlIDE4MDpyZXR1cm57eDp0aGlzLmRpc3BsYXlfd2lkdGgoKS1wb2ludC54LHk6dGhpcy5kaXNwbGF5X2hlaWdodCgpLXBvaW50Lnl9O2Nhc2UgMjcwOnJldHVybnt4OnRoaXMuZGlzcGxheV9oZWlnaHQoKS1wb2ludC55LHk6cG9pbnQueH19fTt0aGlzLnRvUmVhbENvb3Jkcz1mdW5jdGlvbihwb2ludCl7c3dpdGNoKHRoaXMuYW5nbGUoKSl7Y2FzZSAwOnJldHVybnt4OnRoaXMueCgpK3BvaW50LngseTp0aGlzLnkoKSsKcG9pbnQueX07Y2FzZSA5MDpyZXR1cm57eDp0aGlzLngoKSt0aGlzLmRpc3BsYXlfd2lkdGgoKS1wb2ludC55LHk6dGhpcy55KCkrcG9pbnQueH07Y2FzZSAxODA6cmV0dXJue3g6dGhpcy54KCkrdGhpcy5kaXNwbGF5X3dpZHRoKCktcG9pbnQueCx5OnRoaXMueSgpK3RoaXMuZGlzcGxheV9oZWlnaHQoKS1wb2ludC55fTtjYXNlIDI3MDpyZXR1cm57eDp0aGlzLngoKStwb2ludC55LHk6dGhpcy55KCkrdGhpcy5kaXNwbGF5X2hlaWdodCgpLXBvaW50Lnh9fX07dGhpcy5vYmplY3Q9c2V0dGVyKGpRdWVyeS5ub29wLGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2ltZ30pO3RoaXMuc2V0SW1hZ2VQcm9wcz1mdW5jdGlvbihkaXNwX3csZGlzcF9oLHgseSxza2lwX2FuaW1hdGlvbixjb21wbGV0ZSl7Y29tcGxldGU9Y29tcGxldGV8fGpRdWVyeS5ub29wO3RoaXMuZGlzcGxheV93aWR0aChkaXNwX3cpO3RoaXMuZGlzcGxheV9oZWlnaHQoZGlzcF9oKTt0aGlzLngoeCx0cnVlKTt0aGlzLnkoeSwKdHJ1ZSk7dmFyIHc9dGhpcy5fc3dhcERpbWVuc2lvbnM/ZGlzcF9oOmRpc3Bfdzt2YXIgaD10aGlzLl9zd2FwRGltZW5zaW9ucz9kaXNwX3c6ZGlzcF9oO3ZhciBwYXJhbXM9e3dpZHRoOncsaGVpZ2h0OmgsdG9wOnktKHRoaXMuX3N3YXBEaW1lbnNpb25zP3RoaXMuZGlzcGxheV9kaWZmKCkvMjowKSsicHgiLGxlZnQ6eCsodGhpcy5fc3dhcERpbWVuc2lvbnM/dGhpcy5kaXNwbGF5X2RpZmYoKS8yOjApKyJweCJ9O2lmKHVzZUllVHJhbnNmb3JtcylqUXVlcnkuZXh0ZW5kKHBhcmFtcyx7bWFyZ2luTGVmdDppZVRyYW5zZm9ybXNbdGhpcy5hbmdsZSgpXS5tYXJnaW5MZWZ0KnRoaXMuZGlzcGxheV9kaWZmKCkvMixtYXJnaW5Ub3A6aWVUcmFuc2Zvcm1zW3RoaXMuYW5nbGUoKV0ubWFyZ2luVG9wKnRoaXMuZGlzcGxheV9kaWZmKCkvMn0pO3ZhciBzd2FwRGltcz10aGlzLl9zd2FwRGltZW5zaW9ucyxpbWc9dGhpcy5faW1nO2lmKHVzZUllVHJhbnNmb3JtcyYmc3dhcERpbXMpe3ZhciBpZWg9CnRoaXMuX2ltZy53aWR0aCgpLGlldz10aGlzLl9pbWcuaGVpZ2h0KCksaWVkaD1wYXJhbXMuaGVpZ2h0LWllaDtpZWR3PXBhcmFtcy53aWR0aC1pZXc7ZGVsZXRlIHBhcmFtcy53aWR0aDtkZWxldGUgcGFyYW1zLmhlaWdodH1pZih0aGlzLl9kb19hbmltJiYhc2tpcF9hbmltYXRpb24pdGhpcy5faW1nLnN0b3AodHJ1ZSkuYW5pbWF0ZShwYXJhbXMse2R1cmF0aW9uOjIwMCxjb21wbGV0ZTpjb21wbGV0ZSxzdGVwOmZ1bmN0aW9uKG5vdyxmeCl7aWYodXNlSWVUcmFuc2Zvcm1zJiZzd2FwRGltcyYmZngucHJvcD09PSJ0b3AiKXt2YXIgcGVyY2VudD0obm93LWZ4LnN0YXJ0KS8oZnguZW5kLWZ4LnN0YXJ0KTtpbWcuaGVpZ2h0KGllaCtpZWRoKnBlcmNlbnQpO2ltZy53aWR0aChpZXcraWVkdypwZXJjZW50KTtpbWcuY3NzKCJ0b3AiLG5vdyl9fX0pO2Vsc2V7dGhpcy5faW1nLmNzcyhwYXJhbXMpO3NldFRpbWVvdXQoY29tcGxldGUsMCl9fTt0aGlzLl9maW5pc2hBbmltYXRpb249ZnVuY3Rpb24oKXt0aGlzLl9pbWcuc3RvcCh0cnVlLAp0cnVlKX19KS5hcHBseSgkLnVpLml2aWV3ZXIuSW1hZ2VPYmplY3QucHJvdG90eXBlKTt2YXIgdXRpbD17c2NhbGVWYWx1ZTpmdW5jdGlvbih2YWx1ZSx0b1pvb20pe3JldHVybiB2YWx1ZSp0b1pvb20vMTAwfSxkZXNjYWxlVmFsdWU6ZnVuY3Rpb24odmFsdWUsZnJvbVpvb20pe3JldHVybiB2YWx1ZSoxMDAvZnJvbVpvb219fX0pKGpRdWVyeSx1bmRlZmluZWQpOwo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/js/jquery.mousewheel.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyohIENvcHlyaWdodCAoYykgMjAxMyBCcmFuZG9uIEFhcm9uIChodHRwOi8vYnJhbmRvbi5hYXJvbi5zaCkKICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlIChMSUNFTlNFLnR4dCkuCiAqCiAqIFZlcnNpb246IDMuMS45CiAqCiAqIFJlcXVpcmVzOiBqUXVlcnkgMS4yLjIrCiAqLwoKKGZ1bmN0aW9uIChmYWN0b3J5KSB7CiAgICBpZiAoIHR5cGVvZiBkZWZpbmUgPT09ICdmdW5jdGlvbicgJiYgZGVmaW5lLmFtZCApIHsKICAgICAgICAvLyBBTUQuIFJlZ2lzdGVyIGFzIGFuIGFub255bW91cyBtb2R1bGUuCiAgICAgICAgZGVmaW5lKFsnanF1ZXJ5J10sIGZhY3RvcnkpOwogICAgfSBlbHNlIGlmICh0eXBlb2YgZXhwb3J0cyA9PT0gJ29iamVjdCcpIHsKICAgICAgICAvLyBOb2RlL0NvbW1vbkpTIHN0eWxlIGZvciBCcm93c2VyaWZ5CiAgICAgICAgbW9kdWxlLmV4cG9ydHMgPSBmYWN0b3J5OwogICAgfSBlbHNlIHsKICAgICAgICAvLyBCcm93c2VyIGdsb2JhbHMKICAgICAgICBmYWN0b3J5KGpRdWVyeSk7CiAgICB9Cn0oZnVuY3Rpb24gKCQpIHsKCiAgICB2YXIgdG9GaXggID0gWyd3aGVlbCcsICdtb3VzZXdoZWVsJywgJ0RPTU1vdXNlU2Nyb2xsJywgJ01vek1vdXNlUGl4ZWxTY3JvbGwnXSwKICAgICAgICB0b0JpbmQgPSAoICdvbndoZWVsJyBpbiBkb2N1bWVudCB8fCBkb2N1bWVudC5kb2N1bWVudE1vZGUgPj0gOSApID8KICAgICAgICAgICAgICAgICAgICBbJ3doZWVsJ10gOiBbJ21vdXNld2hlZWwnLCAnRG9tTW91c2VTY3JvbGwnLCAnTW96TW91c2VQaXhlbFNjcm9sbCddLAogICAgICAgIHNsaWNlICA9IEFycmF5LnByb3RvdHlwZS5zbGljZSwKICAgICAgICBudWxsTG93ZXN0RGVsdGFUaW1lb3V0LCBsb3dlc3REZWx0YTsKCiAgICBpZiAoICQuZXZlbnQuZml4SG9va3MgKSB7CiAgICAgICAgZm9yICggdmFyIGkgPSB0b0ZpeC5sZW5ndGg7IGk7ICkgewogICAgICAgICAgICAkLmV2ZW50LmZpeEhvb2tzWyB0b0ZpeFstLWldIF0gPSAkLmV2ZW50Lm1vdXNlSG9va3M7CiAgICAgICAgfQogICAgfQoKICAgIHZhciBzcGVjaWFsID0gJC5ldmVudC5zcGVjaWFsLm1vdXNld2hlZWwgPSB7CiAgICAgICAgdmVyc2lvbjogJzMuMS45JywKCiAgICAgICAgc2V0dXA6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBpZiAoIHRoaXMuYWRkRXZlbnRMaXN0ZW5lciApIHsKICAgICAgICAgICAgICAgIGZvciAoIHZhciBpID0gdG9CaW5kLmxlbmd0aDsgaTsgKSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCB0b0JpbmRbLS1pXSwgaGFuZGxlciwgZmFsc2UgKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRoaXMub25tb3VzZXdoZWVsID0gaGFuZGxlcjsKICAgICAgICAgICAgfQogICAgICAgICAgICAvLyBTdG9yZSB0aGUgbGluZSBoZWlnaHQgYW5kIHBhZ2UgaGVpZ2h0IGZvciB0aGlzIHBhcnRpY3VsYXIgZWxlbWVudAogICAgICAgICAgICAkLmRhdGEodGhpcywgJ21vdXNld2hlZWwtbGluZS1oZWlnaHQnLCBzcGVjaWFsLmdldExpbmVIZWlnaHQodGhpcykpOwogICAgICAgICAgICAkLmRhdGEodGhpcywgJ21vdXNld2hlZWwtcGFnZS1oZWlnaHQnLCBzcGVjaWFsLmdldFBhZ2VIZWlnaHQodGhpcykpOwogICAgICAgIH0sCgogICAgICAgIHRlYXJkb3duOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgaWYgKCB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIgKSB7CiAgICAgICAgICAgICAgICBmb3IgKCB2YXIgaSA9IHRvQmluZC5sZW5ndGg7IGk7ICkgewogICAgICAgICAgICAgICAgICAgIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lciggdG9CaW5kWy0taV0sIGhhbmRsZXIsIGZhbHNlICk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0aGlzLm9ubW91c2V3aGVlbCA9IG51bGw7CiAgICAgICAgICAgIH0KICAgICAgICB9LAoKICAgICAgICBnZXRMaW5lSGVpZ2h0OiBmdW5jdGlvbihlbGVtKSB7CiAgICAgICAgICAgIHJldHVybiBwYXJzZUludCgkKGVsZW0pWydvZmZzZXRQYXJlbnQnIGluICQuZm4gPyAnb2Zmc2V0UGFyZW50JyA6ICdwYXJlbnQnXSgpLmNzcygnZm9udFNpemUnKSwgMTApOwogICAgICAgIH0sCgogICAgICAgIGdldFBhZ2VIZWlnaHQ6IGZ1bmN0aW9uKGVsZW0pIHsKICAgICAgICAgICAgcmV0dXJuICQoZWxlbSkuaGVpZ2h0KCk7CiAgICAgICAgfSwKCiAgICAgICAgc2V0dGluZ3M6IHsKICAgICAgICAgICAgYWRqdXN0T2xkRGVsdGFzOiB0cnVlCiAgICAgICAgfQogICAgfTsKCiAgICAkLmZuLmV4dGVuZCh7CiAgICAgICAgbW91c2V3aGVlbDogZnVuY3Rpb24oZm4pIHsKICAgICAgICAgICAgcmV0dXJuIGZuID8gdGhpcy5iaW5kKCdtb3VzZXdoZWVsJywgZm4pIDogdGhpcy50cmlnZ2VyKCdtb3VzZXdoZWVsJyk7CiAgICAgICAgfSwKCiAgICAgICAgdW5tb3VzZXdoZWVsOiBmdW5jdGlvbihmbikgewogICAgICAgICAgICByZXR1cm4gdGhpcy51bmJpbmQoJ21vdXNld2hlZWwnLCBmbik7CiAgICAgICAgfQogICAgfSk7CgoKICAgIGZ1bmN0aW9uIGhhbmRsZXIoZXZlbnQpIHsKICAgICAgICB2YXIgb3JnRXZlbnQgICA9IGV2ZW50IHx8IHdpbmRvdy5ldmVudCwKICAgICAgICAgICAgYXJncyAgICAgICA9IHNsaWNlLmNhbGwoYXJndW1lbnRzLCAxKSwKICAgICAgICAgICAgZGVsdGEgICAgICA9IDAsCiAgICAgICAgICAgIGRlbHRhWCAgICAgPSAwLAogICAgICAgICAgICBkZWx0YVkgICAgID0gMCwKICAgICAgICAgICAgYWJzRGVsdGEgICA9IDA7CiAgICAgICAgZXZlbnQgPSAkLmV2ZW50LmZpeChvcmdFdmVudCk7CiAgICAgICAgZXZlbnQudHlwZSA9ICdtb3VzZXdoZWVsJzsKCiAgICAgICAgLy8gT2xkIHNjaG9vbCBzY3JvbGx3aGVlbCBkZWx0YQogICAgICAgIGlmICggJ2RldGFpbCcgICAgICBpbiBvcmdFdmVudCApIHsgZGVsdGFZID0gb3JnRXZlbnQuZGV0YWlsICogLTE7ICAgICAgfQogICAgICAgIGlmICggJ3doZWVsRGVsdGEnICBpbiBvcmdFdmVudCApIHsgZGVsdGFZID0gb3JnRXZlbnQud2hlZWxEZWx0YTsgICAgICAgfQogICAgICAgIGlmICggJ3doZWVsRGVsdGFZJyBpbiBvcmdFdmVudCApIHsgZGVsdGFZID0gb3JnRXZlbnQud2hlZWxEZWx0YVk7ICAgICAgfQogICAgICAgIGlmICggJ3doZWVsRGVsdGFYJyBpbiBvcmdFdmVudCApIHsgZGVsdGFYID0gb3JnRXZlbnQud2hlZWxEZWx0YVggKiAtMTsgfQoKICAgICAgICAvLyBGaXJlZm94IDwgMTcgaG9yaXpvbnRhbCBzY3JvbGxpbmcgcmVsYXRlZCB0byBET01Nb3VzZVNjcm9sbCBldmVudAogICAgICAgIGlmICggJ2F4aXMnIGluIG9yZ0V2ZW50ICYmIG9yZ0V2ZW50LmF4aXMgPT09IG9yZ0V2ZW50LkhPUklaT05UQUxfQVhJUyApIHsKICAgICAgICAgICAgZGVsdGFYID0gZGVsdGFZICogLTE7CiAgICAgICAgICAgIGRlbHRhWSA9IDA7CiAgICAgICAgfQoKICAgICAgICAvLyBTZXQgZGVsdGEgdG8gYmUgZGVsdGFZIG9yIGRlbHRhWCBpZiBkZWx0YVkgaXMgMCBmb3IgYmFja3dhcmRzIGNvbXBhdGFiaWxpdGl5CiAgICAgICAgZGVsdGEgPSBkZWx0YVkgPT09IDAgPyBkZWx0YVggOiBkZWx0YVk7CgogICAgICAgIC8vIE5ldyBzY2hvb2wgd2hlZWwgZGVsdGEgKHdoZWVsIGV2ZW50KQogICAgICAgIGlmICggJ2RlbHRhWScgaW4gb3JnRXZlbnQgKSB7CiAgICAgICAgICAgIGRlbHRhWSA9IG9yZ0V2ZW50LmRlbHRhWSAqIC0xOwogICAgICAgICAgICBkZWx0YSAgPSBkZWx0YVk7CiAgICAgICAgfQogICAgICAgIGlmICggJ2RlbHRhWCcgaW4gb3JnRXZlbnQgKSB7CiAgICAgICAgICAgIGRlbHRhWCA9IG9yZ0V2ZW50LmRlbHRhWDsKICAgICAgICAgICAgaWYgKCBkZWx0YVkgPT09IDAgKSB7IGRlbHRhICA9IGRlbHRhWCAqIC0xOyB9CiAgICAgICAgfQoKICAgICAgICAvLyBObyBjaGFuZ2UgYWN0dWFsbHkgaGFwcGVuZWQsIG5vIHJlYXNvbiB0byBnbyBhbnkgZnVydGhlcgogICAgICAgIGlmICggZGVsdGFZID09PSAwICYmIGRlbHRhWCA9PT0gMCApIHsgcmV0dXJuOyB9CgogICAgICAgIC8vIE5lZWQgdG8gY29udmVydCBsaW5lcyBhbmQgcGFnZXMgdG8gcGl4ZWxzIGlmIHdlIGFyZW4ndCBhbHJlYWR5IGluIHBpeGVscwogICAgICAgIC8vIFRoZXJlIGFyZSB0aHJlZSBkZWx0YSBtb2RlczoKICAgICAgICAvLyAgICogZGVsdGFNb2RlIDAgaXMgYnkgcGl4ZWxzLCBub3RoaW5nIHRvIGRvCiAgICAgICAgLy8gICAqIGRlbHRhTW9kZSAxIGlzIGJ5IGxpbmVzCiAgICAgICAgLy8gICAqIGRlbHRhTW9kZSAyIGlzIGJ5IHBhZ2VzCiAgICAgICAgaWYgKCBvcmdFdmVudC5kZWx0YU1vZGUgPT09IDEgKSB7CiAgICAgICAgICAgIHZhciBsaW5lSGVpZ2h0ID0gJC5kYXRhKHRoaXMsICdtb3VzZXdoZWVsLWxpbmUtaGVpZ2h0Jyk7CiAgICAgICAgICAgIGRlbHRhICAqPSBsaW5lSGVpZ2h0OwogICAgICAgICAgICBkZWx0YVkgKj0gbGluZUhlaWdodDsKICAgICAgICAgICAgZGVsdGFYICo9IGxpbmVIZWlnaHQ7CiAgICAgICAgfSBlbHNlIGlmICggb3JnRXZlbnQuZGVsdGFNb2RlID09PSAyICkgewogICAgICAgICAgICB2YXIgcGFnZUhlaWdodCA9ICQuZGF0YSh0aGlzLCAnbW91c2V3aGVlbC1wYWdlLWhlaWdodCcpOwogICAgICAgICAgICBkZWx0YSAgKj0gcGFnZUhlaWdodDsKICAgICAgICAgICAgZGVsdGFZICo9IHBhZ2VIZWlnaHQ7CiAgICAgICAgICAgIGRlbHRhWCAqPSBwYWdlSGVpZ2h0OwogICAgICAgIH0KCiAgICAgICAgLy8gU3RvcmUgbG93ZXN0IGFic29sdXRlIGRlbHRhIHRvIG5vcm1hbGl6ZSB0aGUgZGVsdGEgdmFsdWVzCiAgICAgICAgYWJzRGVsdGEgPSBNYXRoLm1heCggTWF0aC5hYnMoZGVsdGFZKSwgTWF0aC5hYnMoZGVsdGFYKSApOwoKICAgICAgICBpZiAoICFsb3dlc3REZWx0YSB8fCBhYnNEZWx0YSA8IGxvd2VzdERlbHRhICkgewogICAgICAgICAgICBsb3dlc3REZWx0YSA9IGFic0RlbHRhOwoKICAgICAgICAgICAgLy8gQWRqdXN0IG9sZGVyIGRlbHRhcyBpZiBuZWNlc3NhcnkKICAgICAgICAgICAgaWYgKCBzaG91bGRBZGp1c3RPbGREZWx0YXMob3JnRXZlbnQsIGFic0RlbHRhKSApIHsKICAgICAgICAgICAgICAgIGxvd2VzdERlbHRhIC89IDQwOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAvLyBBZGp1c3Qgb2xkZXIgZGVsdGFzIGlmIG5lY2Vzc2FyeQogICAgICAgIGlmICggc2hvdWxkQWRqdXN0T2xkRGVsdGFzKG9yZ0V2ZW50LCBhYnNEZWx0YSkgKSB7CiAgICAgICAgICAgIC8vIERpdmlkZSBhbGwgdGhlIHRoaW5ncyBieSA0MCEKICAgICAgICAgICAgZGVsdGEgIC89IDQwOwogICAgICAgICAgICBkZWx0YVggLz0gNDA7CiAgICAgICAgICAgIGRlbHRhWSAvPSA0MDsKICAgICAgICB9CgogICAgICAgIC8vIEdldCBhIHdob2xlLCBub3JtYWxpemVkIHZhbHVlIGZvciB0aGUgZGVsdGFzCiAgICAgICAgZGVsdGEgID0gTWF0aFsgZGVsdGEgID49IDEgPyAnZmxvb3InIDogJ2NlaWwnIF0oZGVsdGEgIC8gbG93ZXN0RGVsdGEpOwogICAgICAgIGRlbHRhWCA9IE1hdGhbIGRlbHRhWCA+PSAxID8gJ2Zsb29yJyA6ICdjZWlsJyBdKGRlbHRhWCAvIGxvd2VzdERlbHRhKTsKICAgICAgICBkZWx0YVkgPSBNYXRoWyBkZWx0YVkgPj0gMSA/ICdmbG9vcicgOiAnY2VpbCcgXShkZWx0YVkgLyBsb3dlc3REZWx0YSk7CgogICAgICAgIC8vIEFkZCBpbmZvcm1hdGlvbiB0byB0aGUgZXZlbnQgb2JqZWN0CiAgICAgICAgZXZlbnQuZGVsdGFYID0gZGVsdGFYOwogICAgICAgIGV2ZW50LmRlbHRhWSA9IGRlbHRhWTsKICAgICAgICBldmVudC5kZWx0YUZhY3RvciA9IGxvd2VzdERlbHRhOwogICAgICAgIC8vIEdvIGFoZWFkIGFuZCBzZXQgZGVsdGFNb2RlIHRvIDAgc2luY2Ugd2UgY29udmVydGVkIHRvIHBpeGVscwogICAgICAgIC8vIEFsdGhvdWdoIHRoaXMgaXMgYSBsaXR0bGUgb2RkIHNpbmNlIHdlIG92ZXJ3cml0ZSB0aGUgZGVsdGFYL1kKICAgICAgICAvLyBwcm9wZXJ0aWVzIHdpdGggbm9ybWFsaXplZCBkZWx0YXMuCiAgICAgICAgZXZlbnQuZGVsdGFNb2RlID0gMDsKCiAgICAgICAgLy8gQWRkIGV2ZW50IGFuZCBkZWx0YSB0byB0aGUgZnJvbnQgb2YgdGhlIGFyZ3VtZW50cwogICAgICAgIGFyZ3MudW5zaGlmdChldmVudCwgZGVsdGEsIGRlbHRhWCwgZGVsdGFZKTsKCiAgICAgICAgLy8gQ2xlYXJvdXQgbG93ZXN0RGVsdGEgYWZ0ZXIgc29tZXRpbWUgdG8gYmV0dGVyCiAgICAgICAgLy8gaGFuZGxlIG11bHRpcGxlIGRldmljZSB0eXBlcyB0aGF0IGdpdmUgZGlmZmVyZW50CiAgICAgICAgLy8gYSBkaWZmZXJlbnQgbG93ZXN0RGVsdGEKICAgICAgICAvLyBFeDogdHJhY2twYWQgPSAzIGFuZCBtb3VzZSB3aGVlbCA9IDEyMAogICAgICAgIGlmIChudWxsTG93ZXN0RGVsdGFUaW1lb3V0KSB7IGNsZWFyVGltZW91dChudWxsTG93ZXN0RGVsdGFUaW1lb3V0KTsgfQogICAgICAgIG51bGxMb3dlc3REZWx0YVRpbWVvdXQgPSBzZXRUaW1lb3V0KG51bGxMb3dlc3REZWx0YSwgMjAwKTsKCiAgICAgICAgcmV0dXJuICgkLmV2ZW50LmRpc3BhdGNoIHx8ICQuZXZlbnQuaGFuZGxlKS5hcHBseSh0aGlzLCBhcmdzKTsKICAgIH0KCiAgICBmdW5jdGlvbiBudWxsTG93ZXN0RGVsdGEoKSB7CiAgICAgICAgbG93ZXN0RGVsdGEgPSBudWxsOwogICAgfQoKICAgIGZ1bmN0aW9uIHNob3VsZEFkanVzdE9sZERlbHRhcyhvcmdFdmVudCwgYWJzRGVsdGEpIHsKICAgICAgICAvLyBJZiB0aGlzIGlzIGFuIG9sZGVyIGV2ZW50IGFuZCB0aGUgZGVsdGEgaXMgZGl2aXNhYmxlIGJ5IDEyMCwKICAgICAgICAvLyB0aGVuIHdlIGFyZSBhc3N1bWluZyB0aGF0IHRoZSBicm93c2VyIGlzIHRyZWF0aW5nIHRoaXMgYXMgYW4KICAgICAgICAvLyBvbGRlciBtb3VzZSB3aGVlbCBldmVudCBhbmQgdGhhdCB3ZSBzaG91bGQgZGl2aWRlIHRoZSBkZWx0YXMKICAgICAgICAvLyBieSA0MCB0byB0cnkgYW5kIGdldCBhIG1vcmUgdXNhYmxlIGRlbHRhRmFjdG9yLgogICAgICAgIC8vIFNpZGUgbm90ZSwgdGhpcyBhY3R1YWxseSBpbXBhY3RzIHRoZSByZXBvcnRlZCBzY3JvbGwgZGlzdGFuY2UKICAgICAgICAvLyBpbiBvbGRlciBicm93c2VycyBhbmQgY2FuIGNhdXNlIHNjcm9sbGluZyB0byBiZSBzbG93ZXIgdGhhbiBuYXRpdmUuCiAgICAgICAgLy8gVHVybiB0aGlzIG9mZiBieSBzZXR0aW5nICQuZXZlbnQuc3BlY2lhbC5tb3VzZXdoZWVsLnNldHRpbmdzLmFkanVzdE9sZERlbHRhcyB0byBmYWxzZS4KICAgICAgICByZXR1cm4gc3BlY2lhbC5zZXR0aW5ncy5hZGp1c3RPbGREZWx0YXMgJiYgb3JnRXZlbnQudHlwZSA9PT0gJ21vdXNld2hlZWwnICYmIGFic0RlbHRhICUgMTIwID09PSAwOwogICAgfQoKfSkpOwo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/js/jquery.smooth-scroll.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[JChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKSB7CiAgICBmdW5jdGlvbiBmaWx0ZXJQYXRoKHN0cmluZykgewogICAgICAgIHJldHVybiBzdHJpbmcKICAgICAgICAgICAgLnJlcGxhY2UoL15cLy8sJycpCiAgICAgICAgICAgIC5yZXBsYWNlKC8oaW5kZXh8ZGVmYXVsdCkuW2EtekEtWl17Myw0fSQvLCcnKQogICAgICAgICAgICAucmVwbGFjZSgvXC8kLywnJyk7CiAgICB9CiAgICB2YXIgbG9jYXRpb25QYXRoID0gZmlsdGVyUGF0aChsb2NhdGlvbi5wYXRobmFtZSk7CgogICAgJCgnYVtocmVmKj0jXScpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgdmFyIHRoaXNQYXRoID0gZmlsdGVyUGF0aCh0aGlzLnBhdGhuYW1lKSB8fCBsb2NhdGlvblBhdGg7CiAgICAgICAgaWYgKCAgbG9jYXRpb25QYXRoID09IHRoaXNQYXRoCiAgICAgICAgICAgICYmIChsb2NhdGlvbi5ob3N0bmFtZSA9PSB0aGlzLmhvc3RuYW1lIHx8ICF0aGlzLmhvc3RuYW1lKQogICAgICAgICAgICAmJiB0aGlzLmhhc2gucmVwbGFjZSgvIy8sJycpICkgewogICAgICAgICAgICB2YXIgJHRhcmdldCA9ICQodGhpcy5oYXNoKSwgdGFyZ2V0ID0gdGhpcy5oYXNoOwogICAgICAgICAgICBpZiAodGFyZ2V0KSB7CiAgICAgICAgICAgICAgICAkKHRoaXMpLmNsaWNrKGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCEkKHRoaXMuaGFzaCkub2Zmc2V0KCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsKICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiA9ICQodGhpcy5oYXNoKS5vZmZzZXQoKS50b3A7CgogICAgICAgICAgICAgICAgICAgICQoJ2h0bWwsYm9keScpLmFuaW1hdGUoe3Njcm9sbFRvcDogcG9zaXRpb259LCA0MDAsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbi5oYXNoID0gdGFyZ2V0OwogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9KTsKfSk7Cg==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/js/prism.min.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyoqCiAqIFByaXNtOiBMaWdodHdlaWdodCwgcm9idXN0LCBlbGVnYW50IHN5bnRheCBoaWdobGlnaHRpbmcKICogTUlUIGxpY2Vuc2UgaHR0cDovL3d3dy5vcGVuc291cmNlLm9yZy9saWNlbnNlcy9taXQtbGljZW5zZS5waHAvCiAqIEBhdXRob3IgTGVhIFZlcm91IGh0dHA6Ly9sZWEudmVyb3UubWUKICovKGZ1bmN0aW9uKCl7dmFyIGU9L1xibGFuZyg/OnVhZ2UpPy0oPyFcKikoXHcrKVxiL2ksdD1zZWxmLlByaXNtPXt1dGlsOnt0eXBlOmZ1bmN0aW9uKGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkubWF0Y2goL1xbb2JqZWN0IChcdyspXF0vKVsxXX0sY2xvbmU6ZnVuY3Rpb24oZSl7dmFyIG49dC51dGlsLnR5cGUoZSk7c3dpdGNoKG4pe2Nhc2UiT2JqZWN0Ijp2YXIgcj17fTtmb3IodmFyIGkgaW4gZSllLmhhc093blByb3BlcnR5KGkpJiYocltpXT10LnV0aWwuY2xvbmUoZVtpXSkpO3JldHVybiByO2Nhc2UiQXJyYXkiOnJldHVybiBlLnNsaWNlKCl9cmV0dXJuIGV9fSxsYW5ndWFnZXM6e2V4dGVuZDpmdW5jdGlvbihlLG4pe3ZhciByPXQudXRpbC5jbG9uZSh0Lmxhbmd1YWdlc1tlXSk7Zm9yKHZhciBpIGluIG4pcltpXT1uW2ldO3JldHVybiByfSxpbnNlcnRCZWZvcmU6ZnVuY3Rpb24oZSxuLHIsaSl7aT1pfHx0Lmxhbmd1YWdlczt2YXIgcz1pW2VdLG89e307Zm9yKHZhciB1IGluIHMpaWYocy5oYXNPd25Qcm9wZXJ0eSh1KSl7aWYodT09bilmb3IodmFyIGEgaW4gcilyLmhhc093blByb3BlcnR5KGEpJiYob1thXT1yW2FdKTtvW3VdPXNbdV19cmV0dXJuIGlbZV09b30sREZTOmZ1bmN0aW9uKGUsbil7Zm9yKHZhciByIGluIGUpe24uY2FsbChlLHIsZVtyXSk7dC51dGlsLnR5cGUoZSk9PT0iT2JqZWN0IiYmdC5sYW5ndWFnZXMuREZTKGVbcl0sbil9fX0saGlnaGxpZ2h0QWxsOmZ1bmN0aW9uKGUsbil7dmFyIHI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnY29kZVtjbGFzcyo9Imxhbmd1YWdlLSJdLCBbY2xhc3MqPSJsYW5ndWFnZS0iXSBjb2RlLCBjb2RlW2NsYXNzKj0ibGFuZy0iXSwgW2NsYXNzKj0ibGFuZy0iXSBjb2RlJyk7Zm9yKHZhciBpPTAscztzPXJbaSsrXTspdC5oaWdobGlnaHRFbGVtZW50KHMsZT09PSEwLG4pfSxoaWdobGlnaHRFbGVtZW50OmZ1bmN0aW9uKHIsaSxzKXt2YXIgbyx1LGE9cjt3aGlsZShhJiYhZS50ZXN0KGEuY2xhc3NOYW1lKSlhPWEucGFyZW50Tm9kZTtpZihhKXtvPShhLmNsYXNzTmFtZS5tYXRjaChlKXx8WywiIl0pWzFdO3U9dC5sYW5ndWFnZXNbb119aWYoIXUpcmV0dXJuO3IuY2xhc3NOYW1lPXIuY2xhc3NOYW1lLnJlcGxhY2UoZSwiIikucmVwbGFjZSgvXHMrL2csIiAiKSsiIGxhbmd1YWdlLSIrbzthPXIucGFyZW50Tm9kZTsvcHJlL2kudGVzdChhLm5vZGVOYW1lKSYmKGEuY2xhc3NOYW1lPWEuY2xhc3NOYW1lLnJlcGxhY2UoZSwiIikucmVwbGFjZSgvXHMrL2csIiAiKSsiIGxhbmd1YWdlLSIrbyk7dmFyIGY9ci50ZXh0Q29udGVudDtpZighZilyZXR1cm47Zj1mLnJlcGxhY2UoLyYvZywiJmFtcDsiKS5yZXBsYWNlKC88L2csIiZsdDsiKS5yZXBsYWNlKC9cdTAwYTAvZywiICIpO3ZhciBsPXtlbGVtZW50OnIsbGFuZ3VhZ2U6byxncmFtbWFyOnUsY29kZTpmfTt0Lmhvb2tzLnJ1bigiYmVmb3JlLWhpZ2hsaWdodCIsbCk7aWYoaSYmc2VsZi5Xb3JrZXIpe3ZhciBjPW5ldyBXb3JrZXIodC5maWxlbmFtZSk7Yy5vbm1lc3NhZ2U9ZnVuY3Rpb24oZSl7bC5oaWdobGlnaHRlZENvZGU9bi5zdHJpbmdpZnkoSlNPTi5wYXJzZShlLmRhdGEpLG8pO3QuaG9va3MucnVuKCJiZWZvcmUtaW5zZXJ0IixsKTtsLmVsZW1lbnQuaW5uZXJIVE1MPWwuaGlnaGxpZ2h0ZWRDb2RlO3MmJnMuY2FsbChsLmVsZW1lbnQpO3QuaG9va3MucnVuKCJhZnRlci1oaWdobGlnaHQiLGwpfTtjLnBvc3RNZXNzYWdlKEpTT04uc3RyaW5naWZ5KHtsYW5ndWFnZTpsLmxhbmd1YWdlLGNvZGU6bC5jb2RlfSkpfWVsc2V7bC5oaWdobGlnaHRlZENvZGU9dC5oaWdobGlnaHQobC5jb2RlLGwuZ3JhbW1hcixsLmxhbmd1YWdlKTt0Lmhvb2tzLnJ1bigiYmVmb3JlLWluc2VydCIsbCk7bC5lbGVtZW50LmlubmVySFRNTD1sLmhpZ2hsaWdodGVkQ29kZTtzJiZzLmNhbGwocik7dC5ob29rcy5ydW4oImFmdGVyLWhpZ2hsaWdodCIsbCl9fSxoaWdobGlnaHQ6ZnVuY3Rpb24oZSxyLGkpe3JldHVybiBuLnN0cmluZ2lmeSh0LnRva2VuaXplKGUsciksaSl9LHRva2VuaXplOmZ1bmN0aW9uKGUsbixyKXt2YXIgaT10LlRva2VuLHM9W2VdLG89bi5yZXN0O2lmKG8pe2Zvcih2YXIgdSBpbiBvKW5bdV09b1t1XTtkZWxldGUgbi5yZXN0fWU6Zm9yKHZhciB1IGluIG4pe2lmKCFuLmhhc093blByb3BlcnR5KHUpfHwhblt1XSljb250aW51ZTt2YXIgYT1uW3VdLGY9YS5pbnNpZGUsbD0hIWEubG9va2JlaGluZCxjPTA7YT1hLnBhdHRlcm58fGE7Zm9yKHZhciBoPTA7aDxzLmxlbmd0aDtoKyspe3ZhciBwPXNbaF07aWYocy5sZW5ndGg+ZS5sZW5ndGgpYnJlYWsgZTtpZihwIGluc3RhbmNlb2YgaSljb250aW51ZTthLmxhc3RJbmRleD0wO3ZhciBkPWEuZXhlYyhwKTtpZihkKXtsJiYoYz1kWzFdLmxlbmd0aCk7dmFyIHY9ZC5pbmRleC0xK2MsZD1kWzBdLnNsaWNlKGMpLG09ZC5sZW5ndGgsZz12K20seT1wLnNsaWNlKDAsdisxKSxiPXAuc2xpY2UoZysxKSx3PVtoLDFdO3kmJncucHVzaCh5KTt2YXIgRT1uZXcgaSh1LGY/dC50b2tlbml6ZShkLGYpOmQpO3cucHVzaChFKTtiJiZ3LnB1c2goYik7QXJyYXkucHJvdG90eXBlLnNwbGljZS5hcHBseShzLHcpfX19cmV0dXJuIHN9LGhvb2tzOnthbGw6e30sYWRkOmZ1bmN0aW9uKGUsbil7dmFyIHI9dC5ob29rcy5hbGw7cltlXT1yW2VdfHxbXTtyW2VdLnB1c2gobil9LHJ1bjpmdW5jdGlvbihlLG4pe3ZhciByPXQuaG9va3MuYWxsW2VdO2lmKCFyfHwhci5sZW5ndGgpcmV0dXJuO2Zvcih2YXIgaT0wLHM7cz1yW2krK107KXMobil9fX0sbj10LlRva2VuPWZ1bmN0aW9uKGUsdCl7dGhpcy50eXBlPWU7dGhpcy5jb250ZW50PXR9O24uc3RyaW5naWZ5PWZ1bmN0aW9uKGUscixpKXtpZih0eXBlb2YgZT09InN0cmluZyIpcmV0dXJuIGU7aWYoT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpPT0iW29iamVjdCBBcnJheV0iKXJldHVybiBlLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gbi5zdHJpbmdpZnkodCxyLGUpfSkuam9pbigiIik7dmFyIHM9e3R5cGU6ZS50eXBlLGNvbnRlbnQ6bi5zdHJpbmdpZnkoZS5jb250ZW50LHIsaSksdGFnOiJzcGFuIixjbGFzc2VzOlsidG9rZW4iLGUudHlwZV0sYXR0cmlidXRlczp7fSxsYW5ndWFnZTpyLHBhcmVudDppfTtzLnR5cGU9PSJjb21tZW50IiYmKHMuYXR0cmlidXRlcy5zcGVsbGNoZWNrPSJ0cnVlIik7dC5ob29rcy5ydW4oIndyYXAiLHMpO3ZhciBvPSIiO2Zvcih2YXIgdSBpbiBzLmF0dHJpYnV0ZXMpbys9dSsnPSInKyhzLmF0dHJpYnV0ZXNbdV18fCIiKSsnIic7cmV0dXJuIjwiK3MudGFnKycgY2xhc3M9Iicrcy5jbGFzc2VzLmpvaW4oIiAiKSsnIiAnK28rIj4iK3MuY29udGVudCsiPC8iK3MudGFnKyI+In07aWYoIXNlbGYuZG9jdW1lbnQpe3NlbGYuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZnVuY3Rpb24oZSl7dmFyIG49SlNPTi5wYXJzZShlLmRhdGEpLHI9bi5sYW5ndWFnZSxpPW4uY29kZTtzZWxmLnBvc3RNZXNzYWdlKEpTT04uc3RyaW5naWZ5KHQudG9rZW5pemUoaSx0Lmxhbmd1YWdlc1tyXSkpKTtzZWxmLmNsb3NlKCl9LCExKTtyZXR1cm59dmFyIHI9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpO3I9cltyLmxlbmd0aC0xXTtpZihyKXt0LmZpbGVuYW1lPXIuc3JjO2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXImJiFyLmhhc0F0dHJpYnV0ZSgiZGF0YS1tYW51YWwiKSYmZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsdC5oaWdobGlnaHRBbGwpfX0pKCk7OwpQcmlzbS5sYW5ndWFnZXMubWFya3VwPXtjb21tZW50Oi8mbHQ7IS0tW1x3XFddKj8tLT4vZyxwcm9sb2c6LyZsdDtcPy4rP1w/Pi8sZG9jdHlwZTovJmx0OyFET0NUWVBFLis/Pi8sY2RhdGE6LyZsdDshXFtDREFUQVxbW1x3XFddKj9dXT4vaSx0YWc6e3BhdHRlcm46LyZsdDtcLz9bXHc6LV0rXHMqKD86XHMrW1x3Oi1dKyg/Oj0oPzooInwnKShcXD9bXHdcV10pKj9cMXxcdyspKT9ccyopKlwvPz4vZ2ksaW5zaWRlOnt0YWc6e3BhdHRlcm46L14mbHQ7XC8/W1x3Oi1dKy9pLGluc2lkZTp7cHVuY3R1YXRpb246L14mbHQ7XC8/LyxuYW1lc3BhY2U6L15bXHctXSs/Oi99fSwiYXR0ci12YWx1ZSI6e3BhdHRlcm46Lz0oPzooJ3wiKVtcd1xXXSo/KFwxKXxbXlxzPl0rKS9naSxpbnNpZGU6e3B1bmN0dWF0aW9uOi89fD58Ii9nfX0scHVuY3R1YXRpb246L1wvPz4vZywiYXR0ci1uYW1lIjp7cGF0dGVybjovW1x3Oi1dKy9nLGluc2lkZTp7bmFtZXNwYWNlOi9eW1x3LV0rPzovfX19fSxlbnRpdHk6LyZhbXA7Iz9bXGRhLXpdezEsOH07L2dpfTtQcmlzbS5ob29rcy5hZGQoIndyYXAiLGZ1bmN0aW9uKGUpe2UudHlwZT09PSJlbnRpdHkiJiYoZS5hdHRyaWJ1dGVzLnRpdGxlPWUuY29udGVudC5yZXBsYWNlKC8mYW1wOy8sIiYiKSl9KTs7ClByaXNtLmxhbmd1YWdlcy5jc3M9e2NvbW1lbnQ6L1wvXCpbXHdcV10qP1wqXC8vZyxhdHJ1bGU6e3BhdHRlcm46L0BbXHctXSs/Lio/KDt8KD89XHMqeykpL2dpLGluc2lkZTp7cHVuY3R1YXRpb246L1s7Ol0vZ319LHVybDovdXJsXCgoWyInXT8pLio/XDFcKS9naSxzZWxlY3RvcjovW15ce1x9XHNdW15ce1x9O10qKD89XHMqXHspL2cscHJvcGVydHk6LyhcYnxcQilbXHctXSsoPz1ccyo6KS9pZyxzdHJpbmc6LygifCcpKFxcPy4pKj9cMS9nLGltcG9ydGFudDovXEIhaW1wb3J0YW50XGIvZ2ksaWdub3JlOi8mKGx0fGd0fGFtcCk7L2dpLHB1bmN0dWF0aW9uOi9bXHtcfTs6XS9nfTtQcmlzbS5sYW5ndWFnZXMubWFya3VwJiZQcmlzbS5sYW5ndWFnZXMuaW5zZXJ0QmVmb3JlKCJtYXJrdXAiLCJ0YWciLHtzdHlsZTp7cGF0dGVybjovKCZsdDt8PClzdHlsZVtcd1xXXSo/KD58Jmd0OylbXHdcV10qPygmbHQ7fDwpXC9zdHlsZSg+fCZndDspL2lnLGluc2lkZTp7dGFnOntwYXR0ZXJuOi8oJmx0O3w8KXN0eWxlW1x3XFddKj8oPnwmZ3Q7KXwoJmx0O3w8KVwvc3R5bGUoPnwmZ3Q7KS9pZyxpbnNpZGU6UHJpc20ubGFuZ3VhZ2VzLm1hcmt1cC50YWcuaW5zaWRlfSxyZXN0OlByaXNtLmxhbmd1YWdlcy5jc3N9fX0pOzsKUHJpc20ubGFuZ3VhZ2VzLmNzcy5zZWxlY3Rvcj17cGF0dGVybjovW15ce1x9XHNdW15ce1x9XSooPz1ccypceykvZyxpbnNpZGU6eyJwc2V1ZG8tZWxlbWVudCI6LzooPzphZnRlcnxiZWZvcmV8Zmlyc3QtbGV0dGVyfGZpcnN0LWxpbmV8c2VsZWN0aW9uKXw6OlstXHddKy9nLCJwc2V1ZG8tY2xhc3MiOi86Wy1cd10rKD86XCguKlwpKT8vZywiY2xhc3MiOi9cLlstOlwuXHddKy9nLGlkOi8jWy06XC5cd10rL2d9fTtQcmlzbS5sYW5ndWFnZXMuaW5zZXJ0QmVmb3JlKCJjc3MiLCJpZ25vcmUiLHtoZXhjb2RlOi8jW1xkYS1mXXszLDZ9L2dpLGVudGl0eTovXFxbXGRhLWZdezEsOH0vZ2ksbnVtYmVyOi9bXGQlXC5dKy9nLCJmdW5jdGlvbiI6LyhhdHRyfGNhbGN8Y3Jvc3MtZmFkZXxjeWNsZXxlbGVtZW50fGhzbGE/fGltYWdlfGxhbmd8bGluZWFyLWdyYWRpZW50fG1hdHJpeDNkfG1hdHJpeHxwZXJzcGVjdGl2ZXxyYWRpYWwtZ3JhZGllbnR8cmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudHxyZXBlYXRpbmctcmFkaWFsLWdyYWRpZW50fHJnYmE/fHJvdGF0ZXh8cm90YXRleXxyb3RhdGV6fHJvdGF0ZTNkfHJvdGF0ZXxzY2FsZXh8c2NhbGV5fHNjYWxlenxzY2FsZTNkfHNjYWxlfHNrZXd4fHNrZXd5fHNrZXd8c3RlcHN8dHJhbnNsYXRleHx0cmFuc2xhdGV5fHRyYW5zbGF0ZXp8dHJhbnNsYXRlM2R8dHJhbnNsYXRlfHVybHx2YXIpL2lnfSk7OwpQcmlzbS5sYW5ndWFnZXMuY2xpa2U9e2NvbW1lbnQ6e3BhdHRlcm46LyhefFteXFxdKShcL1wqW1x3XFddKj9cKlwvfChefFteOl0pXC9cLy4qPyhccj9cbnwkKSkvZyxsb29rYmVoaW5kOiEwfSxzdHJpbmc6LygifCcpKFxcPy4pKj9cMS9nLCJjbGFzcy1uYW1lIjp7cGF0dGVybjovKCg/Oig/OmNsYXNzfGludGVyZmFjZXxleHRlbmRzfGltcGxlbWVudHN8dHJhaXR8aW5zdGFuY2VvZnxuZXcpXHMrKXwoPzpjYXRjaFxzK1woKSlbYS16MC05X1wuXFxdKy9pZyxsb29rYmVoaW5kOiEwLGluc2lkZTp7cHVuY3R1YXRpb246LyhcLnxcXCkvfX0sa2V5d29yZDovXGIoaWZ8ZWxzZXx3aGlsZXxkb3xmb3J8cmV0dXJufGlufGluc3RhbmNlb2Z8ZnVuY3Rpb258bmV3fHRyeXxjYXRjaHxmaW5hbGx5fG51bGx8YnJlYWt8Y29udGludWUpXGIvZywiYm9vbGVhbiI6L1xiKHRydWV8ZmFsc2UpXGIvZywiZnVuY3Rpb24iOntwYXR0ZXJuOi9bYS16MC05X10rXCgvaWcsaW5zaWRlOntwdW5jdHVhdGlvbjovXCgvfX0sIG51bWJlcjovXGItPygweFtcZEEtRmEtZl0rfFxkKlwuP1xkKyhbRWVdLT9cZCspPylcYi9nLG9wZXJhdG9yOi9bLStdezEsMn18IXwmbHQ7PT98Pj0/fD17MSwzfXwoJmFtcDspezEsMn18XHw/XHx8XD98XCp8XC98XH58XF58XCUvZyxpZ25vcmU6LyYobHR8Z3R8YW1wKTsvZ2kscHVuY3R1YXRpb246L1t7fVtcXTsoKSwuOl0vZ307OwpQcmlzbS5sYW5ndWFnZXMuamF2YXNjcmlwdD1QcmlzbS5sYW5ndWFnZXMuZXh0ZW5kKCJjbGlrZSIse2tleXdvcmQ6L1xiKHZhcnxsZXR8aWZ8ZWxzZXx3aGlsZXxkb3xmb3J8cmV0dXJufGlufGluc3RhbmNlb2Z8ZnVuY3Rpb258bmV3fHdpdGh8dHlwZW9mfHRyeXxjYXRjaHxmaW5hbGx5fG51bGx8YnJlYWt8Y29udGludWUpXGIvZyxudW1iZXI6L1xiLT8oMHhbXGRBLUZhLWZdK3xcZCpcLj9cZCsoW0VlXS0/XGQrKT98TmFOfC0/SW5maW5pdHkpXGIvZ30pO1ByaXNtLmxhbmd1YWdlcy5pbnNlcnRCZWZvcmUoImphdmFzY3JpcHQiLCJrZXl3b3JkIix7cmVnZXg6e3BhdHRlcm46LyhefFteL10pXC8oPyFcLykoXFsuKz9dfFxcLnxbXi9cclxuXSkrXC9bZ2ltXXswLDN9KD89XHMqKCR8W1xyXG4sLjt9KV0pKS9nLGxvb2tiZWhpbmQ6ITB9fSk7UHJpc20ubGFuZ3VhZ2VzLm1hcmt1cCYmUHJpc20ubGFuZ3VhZ2VzLmluc2VydEJlZm9yZSgibWFya3VwIiwidGFnIix7c2NyaXB0OntwYXR0ZXJuOi8oJmx0O3w8KXNjcmlwdFtcd1xXXSo/KD58Jmd0OylbXHdcV10qPygmbHQ7fDwpXC9zY3JpcHQoPnwmZ3Q7KS9pZyxpbnNpZGU6e3RhZzp7cGF0dGVybjovKCZsdDt8PClzY3JpcHRbXHdcV10qPyg+fCZndDspfCgmbHQ7fDwpXC9zY3JpcHQoPnwmZ3Q7KS9pZyxpbnNpZGU6UHJpc20ubGFuZ3VhZ2VzLm1hcmt1cC50YWcuaW5zaWRlfSxyZXN0OlByaXNtLmxhbmd1YWdlcy5qYXZhc2NyaXB0fX19KTs7ClByaXNtLmxhbmd1YWdlcy5waHA9UHJpc20ubGFuZ3VhZ2VzLmV4dGVuZCgiY2xpa2UiLHtrZXl3b3JkOi9cYihhbmR8b3J8eG9yfGFycmF5fGFzfGJyZWFrfGNhc2V8Y2Z1bmN0aW9ufGNsYXNzfGNvbnN0fGNvbnRpbnVlfGRlY2xhcmV8ZGVmYXVsdHxkaWV8ZG98ZWxzZXxlbHNlaWZ8ZW5kZGVjbGFyZXxlbmRmb3J8ZW5kZm9yZWFjaHxlbmRpZnxlbmRzd2l0Y2h8ZW5kd2hpbGV8ZXh0ZW5kc3xmb3J8Zm9yZWFjaHxmdW5jdGlvbnxpbmNsdWRlfGluY2x1ZGVfb25jZXxnbG9iYWx8aWZ8bmV3fHJldHVybnxzdGF0aWN8c3dpdGNofHVzZXxyZXF1aXJlfHJlcXVpcmVfb25jZXx2YXJ8d2hpbGV8YWJzdHJhY3R8aW50ZXJmYWNlfHB1YmxpY3xpbXBsZW1lbnRzfGV4dGVuZHN8cHJpdmF0ZXxwcm90ZWN0ZWR8cGFyZW50fHN0YXRpY3x0aHJvd3xudWxsfGVjaG98cHJpbnR8dHJhaXR8bmFtZXNwYWNlfHVzZXxmaW5hbHx5aWVsZHxnb3RvfGluc3RhbmNlb2Z8ZmluYWxseXx0cnl8Y2F0Y2gpXGIvaWcsIGNvbnN0YW50Oi9cYltBLVowLTlfXXsyLH1cYi9nfSk7UHJpc20ubGFuZ3VhZ2VzLmluc2VydEJlZm9yZSgicGhwIiwia2V5d29yZCIse2RlbGltaXRlcjovKFw/PnwmbHQ7XD9waHB8Jmx0O1w/KS9pZyx2YXJpYWJsZTovKFwkXHcrKVxiL2lnLCJwYWNrYWdlIjp7cGF0dGVybjovKFxcfG5hbWVzcGFjZVxzK3x1c2VccyspW1x3XFxdKy9nLGxvb2tiZWhpbmQ6ITAsaW5zaWRlOntwdW5jdHVhdGlvbjovXFwvfX19KTtQcmlzbS5sYW5ndWFnZXMuaW5zZXJ0QmVmb3JlKCJwaHAiLCJvcGVyYXRvciIse3Byb3BlcnR5OntwYXR0ZXJuOi8oLT4pW1x3XSsvZyxsb29rYmVoaW5kOiEwfX0pOyBQcmlzbS5sYW5ndWFnZXMubWFya3VwJiYoUHJpc20uaG9va3MuYWRkKCJiZWZvcmUtaGlnaGxpZ2h0IixmdW5jdGlvbihhKXsicGhwIj09PWEubGFuZ3VhZ2UmJihhLnRva2VuU3RhY2s9W10sYS5jb2RlPWEuY29kZS5yZXBsYWNlKC8oPzombHQ7XD9waHB8Jmx0O1w/fDxcP3BocHw8XD8pW1x3XFddKj8oPzpcPyZndDt8XD8+KS9pZyxmdW5jdGlvbihiKXthLnRva2VuU3RhY2sucHVzaChiKTtyZXR1cm4ie3t7UEhQIithLnRva2VuU3RhY2subGVuZ3RoKyJ9fX0ifSkpfSksUHJpc20uaG9va3MuYWRkKCJhZnRlci1oaWdobGlnaHQiLGZ1bmN0aW9uKGEpe2lmKCJwaHAiPT09YS5sYW5ndWFnZSl7Zm9yKHZhciBiPTAsYztjPWEudG9rZW5TdGFja1tiXTtiKyspYS5oaWdobGlnaHRlZENvZGU9YS5oaWdobGlnaHRlZENvZGUucmVwbGFjZSgie3t7UEhQIisoYisxKSsifX19IixQcmlzbS5oaWdobGlnaHQoYyxhLmdyYW1tYXIsInBocCIpKTthLmVsZW1lbnQuaW5uZXJIVE1MPWEuaGlnaGxpZ2h0ZWRDb2RlfX0pLCBQcmlzbS5ob29rcy5hZGQoIndyYXAiLGZ1bmN0aW9uKGEpeyJwaHAiPT09YS5sYW5ndWFnZSYmIm1hcmt1cCI9PT1hLnR5cGUmJihhLmNvbnRlbnQ9YS5jb250ZW50LnJlcGxhY2UoLyhce1x7XHtQSFBbMC05XStcfVx9XH0pL2csJzxzcGFuIGNsYXNzPSJ0b2tlbiBwaHAiPiQxPC9zcGFuPicpKX0pLFByaXNtLmxhbmd1YWdlcy5pbnNlcnRCZWZvcmUoInBocCIsImNvbW1lbnQiLHttYXJrdXA6e3BhdHRlcm46LygmbHQ7fDwpW14/XVwvPyguKj8pKD58Jmd0OykvZyxpbnNpZGU6UHJpc20ubGFuZ3VhZ2VzLm1hcmt1cH0scGhwOi9ce1x7XHtQSFBbMC05XStcfVx9XH0vZ30pKTs7ClByaXNtLmxhbmd1YWdlcy5pbnNlcnRCZWZvcmUoInBocCIsInZhcmlhYmxlIix7InRoaXMiOi9cJHRoaXMvZyxnbG9iYWw6L1wkXz8oR0xPQkFMU3xTRVJWRVJ8R0VUfFBPU1R8RklMRVN8UkVRVUVTVHxTRVNTSU9OfEVOVnxDT09LSUV8SFRUUF9SQVdfUE9TVF9EQVRBfGFyZ2N8YXJndnxwaHBfZXJyb3Jtc2d8aHR0cF9yZXNwb25zZV9oZWFkZXIpL2csc2NvcGU6e3BhdHRlcm46L1xiW1x3XFxdKzo6L2csaW5zaWRlOntrZXl3b3JkOi8oc3RhdGljfHNlbGZ8cGFyZW50KS8scHVuY3R1YXRpb246Lyg6OnxcXCkvfX19KTs7CihmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSx0KXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoKHR8fGRvY3VtZW50KS5xdWVyeVNlbGVjdG9yQWxsKGUpKX1mdW5jdGlvbiBuKGUsdCxuKXt2YXIgcj10LnJlcGxhY2UoL1xzKy9nLCIiKS5zcGxpdCgiLCIpLGk9K2UuZ2V0QXR0cmlidXRlKCJkYXRhLWxpbmUtb2Zmc2V0Iil8fDAscz1wYXJzZUZsb2F0KGdldENvbXB1dGVkU3R5bGUoZSkubGluZUhlaWdodCk7Zm9yKHZhciBvPTAsdTt1PXJbbysrXTspe3U9dS5zcGxpdCgiLSIpO3ZhciBhPSt1WzBdLGY9K3VbMV18fGEsbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtsLnRleHRDb250ZW50PUFycmF5KGYtYSsyKS5qb2luKCIgXHJcbiIpO2wuY2xhc3NOYW1lPShufHwiIikrIiBsaW5lLWhpZ2hsaWdodCI7bC5zZXRBdHRyaWJ1dGUoImRhdGEtc3RhcnQiLGEpO2Y+YSYmbC5zZXRBdHRyaWJ1dGUoImRhdGEtZW5kIixmKTtsLnN0eWxlLnRvcD0oYS1pLTEpKnMrInB4IjsoZS5xdWVyeVNlbGVjdG9yKCJjb2RlIil8fGUpLmFwcGVuZENoaWxkKGwpfX1mdW5jdGlvbiByKCl7dmFyIHQ9bG9jYXRpb24uaGFzaC5zbGljZSgxKTtlKCIudGVtcG9yYXJ5LmxpbmUtaGlnaGxpZ2h0IikuZm9yRWFjaChmdW5jdGlvbihlKXtlLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZSl9KTt2YXIgcj0odC5tYXRjaCgvXC4oW1xkLC1dKykkLyl8fFssIiJdKVsxXTtpZighcnx8ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodCkpcmV0dXJuO3ZhciBpPXQuc2xpY2UoMCx0Lmxhc3RJbmRleE9mKCIuIikpLHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaSk7aWYoIXMpcmV0dXJuO3MuaGFzQXR0cmlidXRlKCJkYXRhLWxpbmUiKXx8cy5zZXRBdHRyaWJ1dGUoImRhdGEtbGluZSIsIiIpO24ocyxyLCJ0ZW1wb3JhcnkgIik7ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnRlbXBvcmFyeS5saW5lLWhpZ2hsaWdodCIpLnNjcm9sbEludG9WaWV3KCl9aWYoIXdpbmRvdy5QcmlzbSlyZXR1cm47dmFyIHQ9Y3JsZj0vXHI/XG58XHIvZyxpPTA7UHJpc20uaG9va3MuYWRkKCJhZnRlci1oaWdobGlnaHQiLGZ1bmN0aW9uKHQpe3ZhciBzPXQuZWxlbWVudC5wYXJlbnROb2RlLG89cyYmcy5nZXRBdHRyaWJ1dGUoImRhdGEtbGluZSIpO2lmKCFzfHwhb3x8IS9wcmUvaS50ZXN0KHMubm9kZU5hbWUpKXJldHVybjtjbGVhclRpbWVvdXQoaSk7ZSgiLmxpbmUtaGlnaGxpZ2h0IixzKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2UucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChlKX0pO24ocyxvKTtpPXNldFRpbWVvdXQociwxKX0pO2FkZEV2ZW50TGlzdGVuZXIoImhhc2hjaGFuZ2UiLHIpfSkoKTs7ClByaXNtLmhvb2tzLmFkZCgiYWZ0ZXItaGlnaGxpZ2h0IixmdW5jdGlvbihlKXt2YXIgdD1lLmVsZW1lbnQucGFyZW50Tm9kZTtpZighdHx8IS9wcmUvaS50ZXN0KHQubm9kZU5hbWUpfHx0LmNsYXNzTmFtZS5pbmRleE9mKCJsaW5lLW51bWJlcnMiKT09PS0xKXtyZXR1cm59dmFyIG49MStlLmNvZGUuc3BsaXQoIlxuIikubGVuZ3RoO3ZhciByO2xpbmVzPW5ldyBBcnJheShuKTtsaW5lcz1saW5lcy5qb2luKCI8c3Bhbj48L3NwYW4+Iik7cj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7ci5jbGFzc05hbWU9ImxpbmUtbnVtYmVycy1yb3dzIjtyLmlubmVySFRNTD1saW5lcztpZih0Lmhhc0F0dHJpYnV0ZSgiZGF0YS1zdGFydCIpKXt0LnN0eWxlLmNvdW50ZXJSZXNldD0ibGluZW51bWJlciAiKyhwYXJzZUludCh0LmdldEF0dHJpYnV0ZSgiZGF0YS1zdGFydCIpLDEwKS0xKX1lLmVsZW1lbnQuYXBwZW5kQ2hpbGQocil9KQo7CihmdW5jdGlvbigpe2lmKCFzZWxmLlByaXNtfHwhc2VsZi5kb2N1bWVudHx8IWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IpcmV0dXJuO3ZhciBlPXtqczoiamF2YXNjcmlwdCIsaHRtbDoibWFya3VwIixzdmc6Im1hcmt1cCJ9O0FycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoInByZVtkYXRhLXNyY10iKSkuZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgbj10LmdldEF0dHJpYnV0ZSgiZGF0YS1zcmMiKSxyPShuLm1hdGNoKC9cLihcdyspJC8pfHxbLCIiXSlbMV0saT1lW3JdfHxyLHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY29kZSIpO3MuY2xhc3NOYW1lPSJsYW5ndWFnZS0iK2k7dC50ZXh0Q29udGVudD0iIjtzLnRleHRDb250ZW50PSJMb2FkaW5n4oCmIjt0LmFwcGVuZENoaWxkKHMpO3ZhciBvPW5ldyBYTUxIdHRwUmVxdWVzdDtvLm9wZW4oIkdFVCIsbiwhMCk7by5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXtpZihvLnJlYWR5U3RhdGU9PTQpaWYoby5zdGF0dXM8NDAwJiZvLnJlc3BvbnNlVGV4dCl7cy50ZXh0Q29udGVudD1vLnJlc3BvbnNlVGV4dDtQcmlzbS5oaWdobGlnaHRFbGVtZW50KHMpfWVsc2Ugby5zdGF0dXM+PTQwMD9zLnRleHRDb250ZW50PSLinJYgRXJyb3IgIitvLnN0YXR1cysiIHdoaWxlIGZldGNoaW5nIGZpbGU6ICIrby5zdGF0dXNUZXh0OnMudGV4dENvbnRlbnQ9IuKcliBFcnJvcjogRmlsZSBkb2VzIG5vdCBleGlzdCBvciBpcyBlbXB0eSJ9O28uc2VuZChudWxsKX0pfSkoKTs7Cg==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/js/ui/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/js/ui/1.10.4/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/js/ui/1.10.4/jquery-ui.min.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyohIGpRdWVyeSBVSSAtIHYxLjEwLjQgLSAyMDE0LTAxLTE3CiogaHR0cDovL2pxdWVyeXVpLmNvbQoqIEluY2x1ZGVzOiBqcXVlcnkudWkuY29yZS5qcywganF1ZXJ5LnVpLndpZGdldC5qcywganF1ZXJ5LnVpLm1vdXNlLmpzLCBqcXVlcnkudWkucG9zaXRpb24uanMsIGpxdWVyeS51aS5hY2NvcmRpb24uanMsIGpxdWVyeS51aS5hdXRvY29tcGxldGUuanMsIGpxdWVyeS51aS5idXR0b24uanMsIGpxdWVyeS51aS5kYXRlcGlja2VyLmpzLCBqcXVlcnkudWkuZGlhbG9nLmpzLCBqcXVlcnkudWkuZHJhZ2dhYmxlLmpzLCBqcXVlcnkudWkuZHJvcHBhYmxlLmpzLCBqcXVlcnkudWkuZWZmZWN0LmpzLCBqcXVlcnkudWkuZWZmZWN0LWJsaW5kLmpzLCBqcXVlcnkudWkuZWZmZWN0LWJvdW5jZS5qcywganF1ZXJ5LnVpLmVmZmVjdC1jbGlwLmpzLCBqcXVlcnkudWkuZWZmZWN0LWRyb3AuanMsIGpxdWVyeS51aS5lZmZlY3QtZXhwbG9kZS5qcywganF1ZXJ5LnVpLmVmZmVjdC1mYWRlLmpzLCBqcXVlcnkudWkuZWZmZWN0LWZvbGQuanMsIGpxdWVyeS51aS5lZmZlY3QtaGlnaGxpZ2h0LmpzLCBqcXVlcnkudWkuZWZmZWN0LXB1bHNhdGUuanMsIGpxdWVyeS51aS5lZmZlY3Qtc2NhbGUuanMsIGpxdWVyeS51aS5lZmZlY3Qtc2hha2UuanMsIGpxdWVyeS51aS5lZmZlY3Qtc2xpZGUuanMsIGpxdWVyeS51aS5lZmZlY3QtdHJhbnNmZXIuanMsIGpxdWVyeS51aS5tZW51LmpzLCBqcXVlcnkudWkucHJvZ3Jlc3NiYXIuanMsIGpxdWVyeS51aS5yZXNpemFibGUuanMsIGpxdWVyeS51aS5zZWxlY3RhYmxlLmpzLCBqcXVlcnkudWkuc2xpZGVyLmpzLCBqcXVlcnkudWkuc29ydGFibGUuanMsIGpxdWVyeS51aS5zcGlubmVyLmpzLCBqcXVlcnkudWkudGFicy5qcywganF1ZXJ5LnVpLnRvb2x0aXAuanMKKiBDb3B5cmlnaHQgMjAxNCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzOyBMaWNlbnNlZCBNSVQgKi8KCihmdW5jdGlvbihlLHQpe2Z1bmN0aW9uIGkodCxpKXt2YXIgcyxhLG8scj10Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImFyZWEiPT09cj8ocz10LnBhcmVudE5vZGUsYT1zLm5hbWUsdC5ocmVmJiZhJiYibWFwIj09PXMubm9kZU5hbWUudG9Mb3dlckNhc2UoKT8obz1lKCJpbWdbdXNlbWFwPSMiK2ErIl0iKVswXSwhIW8mJm4obykpOiExKTooL2lucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b258b2JqZWN0Ly50ZXN0KHIpPyF0LmRpc2FibGVkOiJhIj09PXI/dC5ocmVmfHxpOmkpJiZuKHQpfWZ1bmN0aW9uIG4odCl7cmV0dXJuIGUuZXhwci5maWx0ZXJzLnZpc2libGUodCkmJiFlKHQpLnBhcmVudHMoKS5hZGRCYWNrKCkuZmlsdGVyKGZ1bmN0aW9uKCl7cmV0dXJuImhpZGRlbiI9PT1lLmNzcyh0aGlzLCJ2aXNpYmlsaXR5Iil9KS5sZW5ndGh9dmFyIHM9MCxhPS9edWktaWQtXGQrJC87ZS51aT1lLnVpfHx7fSxlLmV4dGVuZChlLnVpLHt2ZXJzaW9uOiIxLjEwLjQiLGtleUNvZGU6e0JBQ0tTUEFDRTo4LENPTU1BOjE4OCxERUxFVEU6NDYsRE9XTjo0MCxFTkQ6MzUsRU5URVI6MTMsRVNDQVBFOjI3LEhPTUU6MzYsTEVGVDozNyxOVU1QQURfQUREOjEwNyxOVU1QQURfREVDSU1BTDoxMTAsTlVNUEFEX0RJVklERToxMTEsTlVNUEFEX0VOVEVSOjEwOCxOVU1QQURfTVVMVElQTFk6MTA2LE5VTVBBRF9TVUJUUkFDVDoxMDksUEFHRV9ET1dOOjM0LFBBR0VfVVA6MzMsUEVSSU9EOjE5MCxSSUdIVDozOSxTUEFDRTozMixUQUI6OSxVUDozOH19KSxlLmZuLmV4dGVuZCh7Zm9jdXM6ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGksbil7cmV0dXJuIm51bWJlciI9PXR5cGVvZiBpP3RoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PXRoaXM7c2V0VGltZW91dChmdW5jdGlvbigpe2UodCkuZm9jdXMoKSxuJiZuLmNhbGwodCl9LGkpfSk6dC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fShlLmZuLmZvY3VzKSxzY3JvbGxQYXJlbnQ6ZnVuY3Rpb24oKXt2YXIgdDtyZXR1cm4gdD1lLnVpLmllJiYvKHN0YXRpY3xyZWxhdGl2ZSkvLnRlc3QodGhpcy5jc3MoInBvc2l0aW9uIikpfHwvYWJzb2x1dGUvLnRlc3QodGhpcy5jc3MoInBvc2l0aW9uIikpP3RoaXMucGFyZW50cygpLmZpbHRlcihmdW5jdGlvbigpe3JldHVybi8ocmVsYXRpdmV8YWJzb2x1dGV8Zml4ZWQpLy50ZXN0KGUuY3NzKHRoaXMsInBvc2l0aW9uIikpJiYvKGF1dG98c2Nyb2xsKS8udGVzdChlLmNzcyh0aGlzLCJvdmVyZmxvdyIpK2UuY3NzKHRoaXMsIm92ZXJmbG93LXkiKStlLmNzcyh0aGlzLCJvdmVyZmxvdy14IikpfSkuZXEoMCk6dGhpcy5wYXJlbnRzKCkuZmlsdGVyKGZ1bmN0aW9uKCl7cmV0dXJuLyhhdXRvfHNjcm9sbCkvLnRlc3QoZS5jc3ModGhpcywib3ZlcmZsb3ciKStlLmNzcyh0aGlzLCJvdmVyZmxvdy15IikrZS5jc3ModGhpcywib3ZlcmZsb3cteCIpKX0pLmVxKDApLC9maXhlZC8udGVzdCh0aGlzLmNzcygicG9zaXRpb24iKSl8fCF0Lmxlbmd0aD9lKGRvY3VtZW50KTp0fSx6SW5kZXg6ZnVuY3Rpb24oaSl7aWYoaSE9PXQpcmV0dXJuIHRoaXMuY3NzKCJ6SW5kZXgiLGkpO2lmKHRoaXMubGVuZ3RoKWZvcih2YXIgbixzLGE9ZSh0aGlzWzBdKTthLmxlbmd0aCYmYVswXSE9PWRvY3VtZW50Oyl7aWYobj1hLmNzcygicG9zaXRpb24iKSwoImFic29sdXRlIj09PW58fCJyZWxhdGl2ZSI9PT1ufHwiZml4ZWQiPT09bikmJihzPXBhcnNlSW50KGEuY3NzKCJ6SW5kZXgiKSwxMCksIWlzTmFOKHMpJiYwIT09cykpcmV0dXJuIHM7YT1hLnBhcmVudCgpfXJldHVybiAwfSx1bmlxdWVJZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt0aGlzLmlkfHwodGhpcy5pZD0idWktaWQtIisgKytzKX0pfSxyZW1vdmVVbmlxdWVJZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXthLnRlc3QodGhpcy5pZCkmJmUodGhpcykucmVtb3ZlQXR0cigiaWQiKX0pfX0pLGUuZXh0ZW5kKGUuZXhwclsiOiJdLHtkYXRhOmUuZXhwci5jcmVhdGVQc2V1ZG8/ZS5leHByLmNyZWF0ZVBzZXVkbyhmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oaSl7cmV0dXJuISFlLmRhdGEoaSx0KX19KTpmdW5jdGlvbih0LGksbil7cmV0dXJuISFlLmRhdGEodCxuWzNdKX0sZm9jdXNhYmxlOmZ1bmN0aW9uKHQpe3JldHVybiBpKHQsIWlzTmFOKGUuYXR0cih0LCJ0YWJpbmRleCIpKSl9LHRhYmJhYmxlOmZ1bmN0aW9uKHQpe3ZhciBuPWUuYXR0cih0LCJ0YWJpbmRleCIpLHM9aXNOYU4obik7cmV0dXJuKHN8fG4+PTApJiZpKHQsIXMpfX0pLGUoIjxhPiIpLm91dGVyV2lkdGgoMSkuanF1ZXJ5fHxlLmVhY2goWyJXaWR0aCIsIkhlaWdodCJdLGZ1bmN0aW9uKGksbil7ZnVuY3Rpb24gcyh0LGksbixzKXtyZXR1cm4gZS5lYWNoKGEsZnVuY3Rpb24oKXtpLT1wYXJzZUZsb2F0KGUuY3NzKHQsInBhZGRpbmciK3RoaXMpKXx8MCxuJiYoaS09cGFyc2VGbG9hdChlLmNzcyh0LCJib3JkZXIiK3RoaXMrIldpZHRoIikpfHwwKSxzJiYoaS09cGFyc2VGbG9hdChlLmNzcyh0LCJtYXJnaW4iK3RoaXMpKXx8MCl9KSxpfXZhciBhPSJXaWR0aCI9PT1uP1siTGVmdCIsIlJpZ2h0Il06WyJUb3AiLCJCb3R0b20iXSxvPW4udG9Mb3dlckNhc2UoKSxyPXtpbm5lcldpZHRoOmUuZm4uaW5uZXJXaWR0aCxpbm5lckhlaWdodDplLmZuLmlubmVySGVpZ2h0LG91dGVyV2lkdGg6ZS5mbi5vdXRlcldpZHRoLG91dGVySGVpZ2h0OmUuZm4ub3V0ZXJIZWlnaHR9O2UuZm5bImlubmVyIituXT1mdW5jdGlvbihpKXtyZXR1cm4gaT09PXQ/clsiaW5uZXIiK25dLmNhbGwodGhpcyk6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZSh0aGlzKS5jc3MobyxzKHRoaXMsaSkrInB4Iil9KX0sZS5mblsib3V0ZXIiK25dPWZ1bmN0aW9uKHQsaSl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiB0P3JbIm91dGVyIituXS5jYWxsKHRoaXMsdCk6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZSh0aGlzKS5jc3MobyxzKHRoaXMsdCwhMCxpKSsicHgiKX0pfX0pLGUuZm4uYWRkQmFja3x8KGUuZm4uYWRkQmFjaz1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5hZGQobnVsbD09ZT90aGlzLnByZXZPYmplY3Q6dGhpcy5wcmV2T2JqZWN0LmZpbHRlcihlKSl9KSxlKCI8YT4iKS5kYXRhKCJhLWIiLCJhIikucmVtb3ZlRGF0YSgiYS1iIikuZGF0YSgiYS1iIikmJihlLmZuLnJlbW92ZURhdGE9ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGkpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoP3QuY2FsbCh0aGlzLGUuY2FtZWxDYXNlKGkpKTp0LmNhbGwodGhpcyl9fShlLmZuLnJlbW92ZURhdGEpKSxlLnVpLmllPSEhL21zaWUgW1x3Ll0rLy5leGVjKG5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKSksZS5zdXBwb3J0LnNlbGVjdHN0YXJ0PSJvbnNlbGVjdHN0YXJ0ImluIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGUuZm4uZXh0ZW5kKHtkaXNhYmxlU2VsZWN0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYmluZCgoZS5zdXBwb3J0LnNlbGVjdHN0YXJ0PyJzZWxlY3RzdGFydCI6Im1vdXNlZG93biIpKyIudWktZGlzYWJsZVNlbGVjdGlvbiIsZnVuY3Rpb24oZSl7ZS5wcmV2ZW50RGVmYXVsdCgpfSl9LGVuYWJsZVNlbGVjdGlvbjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnVuYmluZCgiLnVpLWRpc2FibGVTZWxlY3Rpb24iKX19KSxlLmV4dGVuZChlLnVpLHtwbHVnaW46e2FkZDpmdW5jdGlvbih0LGksbil7dmFyIHMsYT1lLnVpW3RdLnByb3RvdHlwZTtmb3IocyBpbiBuKWEucGx1Z2luc1tzXT1hLnBsdWdpbnNbc118fFtdLGEucGx1Z2luc1tzXS5wdXNoKFtpLG5bc11dKX0sY2FsbDpmdW5jdGlvbihlLHQsaSl7dmFyIG4scz1lLnBsdWdpbnNbdF07aWYocyYmZS5lbGVtZW50WzBdLnBhcmVudE5vZGUmJjExIT09ZS5lbGVtZW50WzBdLnBhcmVudE5vZGUubm9kZVR5cGUpZm9yKG49MDtzLmxlbmd0aD5uO24rKyllLm9wdGlvbnNbc1tuXVswXV0mJnNbbl1bMV0uYXBwbHkoZS5lbGVtZW50LGkpfX0saGFzU2Nyb2xsOmZ1bmN0aW9uKHQsaSl7aWYoImhpZGRlbiI9PT1lKHQpLmNzcygib3ZlcmZsb3ciKSlyZXR1cm4hMTt2YXIgbj1pJiYibGVmdCI9PT1pPyJzY3JvbGxMZWZ0Ijoic2Nyb2xsVG9wIixzPSExO3JldHVybiB0W25dPjA/ITA6KHRbbl09MSxzPXRbbl0+MCx0W25dPTAscyl9fSl9KShqUXVlcnkpOyhmdW5jdGlvbih0LGUpe3ZhciBpPTAscz1BcnJheS5wcm90b3R5cGUuc2xpY2Usbj10LmNsZWFuRGF0YTt0LmNsZWFuRGF0YT1mdW5jdGlvbihlKXtmb3IodmFyIGkscz0wO251bGwhPShpPWVbc10pO3MrKyl0cnl7dChpKS50cmlnZ2VySGFuZGxlcigicmVtb3ZlIil9Y2F0Y2gobyl7fW4oZSl9LHQud2lkZ2V0PWZ1bmN0aW9uKGkscyxuKXt2YXIgbyxhLHIsaCxsPXt9LGM9aS5zcGxpdCgiLiIpWzBdO2k9aS5zcGxpdCgiLiIpWzFdLG89YysiLSIraSxufHwobj1zLHM9dC5XaWRnZXQpLHQuZXhwclsiOiJdW28udG9Mb3dlckNhc2UoKV09ZnVuY3Rpb24oZSl7cmV0dXJuISF0LmRhdGEoZSxvKX0sdFtjXT10W2NdfHx7fSxhPXRbY11baV0scj10W2NdW2ldPWZ1bmN0aW9uKHQsaSl7cmV0dXJuIHRoaXMuX2NyZWF0ZVdpZGdldD8oYXJndW1lbnRzLmxlbmd0aCYmdGhpcy5fY3JlYXRlV2lkZ2V0KHQsaSksZSk6bmV3IHIodCxpKX0sdC5leHRlbmQocixhLHt2ZXJzaW9uOm4udmVyc2lvbixfcHJvdG86dC5leHRlbmQoe30sbiksX2NoaWxkQ29uc3RydWN0b3JzOltdfSksaD1uZXcgcyxoLm9wdGlvbnM9dC53aWRnZXQuZXh0ZW5kKHt9LGgub3B0aW9ucyksdC5lYWNoKG4sZnVuY3Rpb24oaSxuKXtyZXR1cm4gdC5pc0Z1bmN0aW9uKG4pPyhsW2ldPWZ1bmN0aW9uKCl7dmFyIHQ9ZnVuY3Rpb24oKXtyZXR1cm4gcy5wcm90b3R5cGVbaV0uYXBwbHkodGhpcyxhcmd1bWVudHMpfSxlPWZ1bmN0aW9uKHQpe3JldHVybiBzLnByb3RvdHlwZVtpXS5hcHBseSh0aGlzLHQpfTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgaSxzPXRoaXMuX3N1cGVyLG89dGhpcy5fc3VwZXJBcHBseTtyZXR1cm4gdGhpcy5fc3VwZXI9dCx0aGlzLl9zdXBlckFwcGx5PWUsaT1uLmFwcGx5KHRoaXMsYXJndW1lbnRzKSx0aGlzLl9zdXBlcj1zLHRoaXMuX3N1cGVyQXBwbHk9byxpfX0oKSxlKToobFtpXT1uLGUpfSksci5wcm90b3R5cGU9dC53aWRnZXQuZXh0ZW5kKGgse3dpZGdldEV2ZW50UHJlZml4OmE/aC53aWRnZXRFdmVudFByZWZpeHx8aTppfSxsLHtjb25zdHJ1Y3RvcjpyLG5hbWVzcGFjZTpjLHdpZGdldE5hbWU6aSx3aWRnZXRGdWxsTmFtZTpvfSksYT8odC5lYWNoKGEuX2NoaWxkQ29uc3RydWN0b3JzLGZ1bmN0aW9uKGUsaSl7dmFyIHM9aS5wcm90b3R5cGU7dC53aWRnZXQocy5uYW1lc3BhY2UrIi4iK3Mud2lkZ2V0TmFtZSxyLGkuX3Byb3RvKX0pLGRlbGV0ZSBhLl9jaGlsZENvbnN0cnVjdG9ycyk6cy5fY2hpbGRDb25zdHJ1Y3RvcnMucHVzaChyKSx0LndpZGdldC5icmlkZ2UoaSxyKX0sdC53aWRnZXQuZXh0ZW5kPWZ1bmN0aW9uKGkpe2Zvcih2YXIgbixvLGE9cy5jYWxsKGFyZ3VtZW50cywxKSxyPTAsaD1hLmxlbmd0aDtoPnI7cisrKWZvcihuIGluIGFbcl0pbz1hW3JdW25dLGFbcl0uaGFzT3duUHJvcGVydHkobikmJm8hPT1lJiYoaVtuXT10LmlzUGxhaW5PYmplY3Qobyk/dC5pc1BsYWluT2JqZWN0KGlbbl0pP3Qud2lkZ2V0LmV4dGVuZCh7fSxpW25dLG8pOnQud2lkZ2V0LmV4dGVuZCh7fSxvKTpvKTtyZXR1cm4gaX0sdC53aWRnZXQuYnJpZGdlPWZ1bmN0aW9uKGksbil7dmFyIG89bi5wcm90b3R5cGUud2lkZ2V0RnVsbE5hbWV8fGk7dC5mbltpXT1mdW5jdGlvbihhKXt2YXIgcj0ic3RyaW5nIj09dHlwZW9mIGEsaD1zLmNhbGwoYXJndW1lbnRzLDEpLGw9dGhpcztyZXR1cm4gYT0hciYmaC5sZW5ndGg/dC53aWRnZXQuZXh0ZW5kLmFwcGx5KG51bGwsW2FdLmNvbmNhdChoKSk6YSxyP3RoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBzLG49dC5kYXRhKHRoaXMsbyk7cmV0dXJuIG4/dC5pc0Z1bmN0aW9uKG5bYV0pJiYiXyIhPT1hLmNoYXJBdCgwKT8ocz1uW2FdLmFwcGx5KG4saCkscyE9PW4mJnMhPT1lPyhsPXMmJnMuanF1ZXJ5P2wucHVzaFN0YWNrKHMuZ2V0KCkpOnMsITEpOmUpOnQuZXJyb3IoIm5vIHN1Y2ggbWV0aG9kICciK2ErIicgZm9yICIraSsiIHdpZGdldCBpbnN0YW5jZSIpOnQuZXJyb3IoImNhbm5vdCBjYWxsIG1ldGhvZHMgb24gIitpKyIgcHJpb3IgdG8gaW5pdGlhbGl6YXRpb247ICIrImF0dGVtcHRlZCB0byBjYWxsIG1ldGhvZCAnIithKyInIil9KTp0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT10LmRhdGEodGhpcyxvKTtlP2Uub3B0aW9uKGF8fHt9KS5faW5pdCgpOnQuZGF0YSh0aGlzLG8sbmV3IG4oYSx0aGlzKSl9KSxsfX0sdC5XaWRnZXQ9ZnVuY3Rpb24oKXt9LHQuV2lkZ2V0Ll9jaGlsZENvbnN0cnVjdG9ycz1bXSx0LldpZGdldC5wcm90b3R5cGU9e3dpZGdldE5hbWU6IndpZGdldCIsd2lkZ2V0RXZlbnRQcmVmaXg6IiIsZGVmYXVsdEVsZW1lbnQ6IjxkaXY+IixvcHRpb25zOntkaXNhYmxlZDohMSxjcmVhdGU6bnVsbH0sX2NyZWF0ZVdpZGdldDpmdW5jdGlvbihlLHMpe3M9dChzfHx0aGlzLmRlZmF1bHRFbGVtZW50fHx0aGlzKVswXSx0aGlzLmVsZW1lbnQ9dChzKSx0aGlzLnV1aWQ9aSsrLHRoaXMuZXZlbnROYW1lc3BhY2U9Ii4iK3RoaXMud2lkZ2V0TmFtZSt0aGlzLnV1aWQsdGhpcy5vcHRpb25zPXQud2lkZ2V0LmV4dGVuZCh7fSx0aGlzLm9wdGlvbnMsdGhpcy5fZ2V0Q3JlYXRlT3B0aW9ucygpLGUpLHRoaXMuYmluZGluZ3M9dCgpLHRoaXMuaG92ZXJhYmxlPXQoKSx0aGlzLmZvY3VzYWJsZT10KCkscyE9PXRoaXMmJih0LmRhdGEocyx0aGlzLndpZGdldEZ1bGxOYW1lLHRoaXMpLHRoaXMuX29uKCEwLHRoaXMuZWxlbWVudCx7cmVtb3ZlOmZ1bmN0aW9uKHQpe3QudGFyZ2V0PT09cyYmdGhpcy5kZXN0cm95KCl9fSksdGhpcy5kb2N1bWVudD10KHMuc3R5bGU/cy5vd25lckRvY3VtZW50OnMuZG9jdW1lbnR8fHMpLHRoaXMud2luZG93PXQodGhpcy5kb2N1bWVudFswXS5kZWZhdWx0Vmlld3x8dGhpcy5kb2N1bWVudFswXS5wYXJlbnRXaW5kb3cpKSx0aGlzLl9jcmVhdGUoKSx0aGlzLl90cmlnZ2VyKCJjcmVhdGUiLG51bGwsdGhpcy5fZ2V0Q3JlYXRlRXZlbnREYXRhKCkpLHRoaXMuX2luaXQoKX0sX2dldENyZWF0ZU9wdGlvbnM6dC5ub29wLF9nZXRDcmVhdGVFdmVudERhdGE6dC5ub29wLF9jcmVhdGU6dC5ub29wLF9pbml0OnQubm9vcCxkZXN0cm95OmZ1bmN0aW9uKCl7dGhpcy5fZGVzdHJveSgpLHRoaXMuZWxlbWVudC51bmJpbmQodGhpcy5ldmVudE5hbWVzcGFjZSkucmVtb3ZlRGF0YSh0aGlzLndpZGdldE5hbWUpLnJlbW92ZURhdGEodGhpcy53aWRnZXRGdWxsTmFtZSkucmVtb3ZlRGF0YSh0LmNhbWVsQ2FzZSh0aGlzLndpZGdldEZ1bGxOYW1lKSksdGhpcy53aWRnZXQoKS51bmJpbmQodGhpcy5ldmVudE5hbWVzcGFjZSkucmVtb3ZlQXR0cigiYXJpYS1kaXNhYmxlZCIpLnJlbW92ZUNsYXNzKHRoaXMud2lkZ2V0RnVsbE5hbWUrIi1kaXNhYmxlZCAiKyJ1aS1zdGF0ZS1kaXNhYmxlZCIpLHRoaXMuYmluZGluZ3MudW5iaW5kKHRoaXMuZXZlbnROYW1lc3BhY2UpLHRoaXMuaG92ZXJhYmxlLnJlbW92ZUNsYXNzKCJ1aS1zdGF0ZS1ob3ZlciIpLHRoaXMuZm9jdXNhYmxlLnJlbW92ZUNsYXNzKCJ1aS1zdGF0ZS1mb2N1cyIpfSxfZGVzdHJveTp0Lm5vb3Asd2lkZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZWxlbWVudH0sb3B0aW9uOmZ1bmN0aW9uKGkscyl7dmFyIG4sbyxhLHI9aTtpZigwPT09YXJndW1lbnRzLmxlbmd0aClyZXR1cm4gdC53aWRnZXQuZXh0ZW5kKHt9LHRoaXMub3B0aW9ucyk7aWYoInN0cmluZyI9PXR5cGVvZiBpKWlmKHI9e30sbj1pLnNwbGl0KCIuIiksaT1uLnNoaWZ0KCksbi5sZW5ndGgpe2ZvcihvPXJbaV09dC53aWRnZXQuZXh0ZW5kKHt9LHRoaXMub3B0aW9uc1tpXSksYT0wO24ubGVuZ3RoLTE+YTthKyspb1tuW2FdXT1vW25bYV1dfHx7fSxvPW9bblthXV07aWYoaT1uLnBvcCgpLDE9PT1hcmd1bWVudHMubGVuZ3RoKXJldHVybiBvW2ldPT09ZT9udWxsOm9baV07b1tpXT1zfWVsc2V7aWYoMT09PWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHRoaXMub3B0aW9uc1tpXT09PWU/bnVsbDp0aGlzLm9wdGlvbnNbaV07cltpXT1zfXJldHVybiB0aGlzLl9zZXRPcHRpb25zKHIpLHRoaXN9LF9zZXRPcHRpb25zOmZ1bmN0aW9uKHQpe3ZhciBlO2ZvcihlIGluIHQpdGhpcy5fc2V0T3B0aW9uKGUsdFtlXSk7cmV0dXJuIHRoaXN9LF9zZXRPcHRpb246ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5vcHRpb25zW3RdPWUsImRpc2FibGVkIj09PXQmJih0aGlzLndpZGdldCgpLnRvZ2dsZUNsYXNzKHRoaXMud2lkZ2V0RnVsbE5hbWUrIi1kaXNhYmxlZCB1aS1zdGF0ZS1kaXNhYmxlZCIsISFlKS5hdHRyKCJhcmlhLWRpc2FibGVkIixlKSx0aGlzLmhvdmVyYWJsZS5yZW1vdmVDbGFzcygidWktc3RhdGUtaG92ZXIiKSx0aGlzLmZvY3VzYWJsZS5yZW1vdmVDbGFzcygidWktc3RhdGUtZm9jdXMiKSksdGhpc30sZW5hYmxlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3NldE9wdGlvbigiZGlzYWJsZWQiLCExKX0sZGlzYWJsZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9zZXRPcHRpb24oImRpc2FibGVkIiwhMCl9LF9vbjpmdW5jdGlvbihpLHMsbil7dmFyIG8sYT10aGlzOyJib29sZWFuIiE9dHlwZW9mIGkmJihuPXMscz1pLGk9ITEpLG4/KHM9bz10KHMpLHRoaXMuYmluZGluZ3M9dGhpcy5iaW5kaW5ncy5hZGQocykpOihuPXMscz10aGlzLmVsZW1lbnQsbz10aGlzLndpZGdldCgpKSx0LmVhY2gobixmdW5jdGlvbihuLHIpe2Z1bmN0aW9uIGgoKXtyZXR1cm4gaXx8YS5vcHRpb25zLmRpc2FibGVkIT09ITAmJiF0KHRoaXMpLmhhc0NsYXNzKCJ1aS1zdGF0ZS1kaXNhYmxlZCIpPygic3RyaW5nIj09dHlwZW9mIHI/YVtyXTpyKS5hcHBseShhLGFyZ3VtZW50cyk6ZX0ic3RyaW5nIiE9dHlwZW9mIHImJihoLmd1aWQ9ci5ndWlkPXIuZ3VpZHx8aC5ndWlkfHx0Lmd1aWQrKyk7dmFyIGw9bi5tYXRjaCgvXihcdyspXHMqKC4qKSQvKSxjPWxbMV0rYS5ldmVudE5hbWVzcGFjZSx1PWxbMl07dT9vLmRlbGVnYXRlKHUsYyxoKTpzLmJpbmQoYyxoKX0pfSxfb2ZmOmZ1bmN0aW9uKHQsZSl7ZT0oZXx8IiIpLnNwbGl0KCIgIikuam9pbih0aGlzLmV2ZW50TmFtZXNwYWNlKyIgIikrdGhpcy5ldmVudE5hbWVzcGFjZSx0LnVuYmluZChlKS51bmRlbGVnYXRlKGUpfSxfZGVsYXk6ZnVuY3Rpb24odCxlKXtmdW5jdGlvbiBpKCl7cmV0dXJuKCJzdHJpbmciPT10eXBlb2YgdD9zW3RdOnQpLmFwcGx5KHMsYXJndW1lbnRzKX12YXIgcz10aGlzO3JldHVybiBzZXRUaW1lb3V0KGksZXx8MCl9LF9ob3ZlcmFibGU6ZnVuY3Rpb24oZSl7dGhpcy5ob3ZlcmFibGU9dGhpcy5ob3ZlcmFibGUuYWRkKGUpLHRoaXMuX29uKGUse21vdXNlZW50ZXI6ZnVuY3Rpb24oZSl7dChlLmN1cnJlbnRUYXJnZXQpLmFkZENsYXNzKCJ1aS1zdGF0ZS1ob3ZlciIpfSxtb3VzZWxlYXZlOmZ1bmN0aW9uKGUpe3QoZS5jdXJyZW50VGFyZ2V0KS5yZW1vdmVDbGFzcygidWktc3RhdGUtaG92ZXIiKX19KX0sX2ZvY3VzYWJsZTpmdW5jdGlvbihlKXt0aGlzLmZvY3VzYWJsZT10aGlzLmZvY3VzYWJsZS5hZGQoZSksdGhpcy5fb24oZSx7Zm9jdXNpbjpmdW5jdGlvbihlKXt0KGUuY3VycmVudFRhcmdldCkuYWRkQ2xhc3MoInVpLXN0YXRlLWZvY3VzIil9LGZvY3Vzb3V0OmZ1bmN0aW9uKGUpe3QoZS5jdXJyZW50VGFyZ2V0KS5yZW1vdmVDbGFzcygidWktc3RhdGUtZm9jdXMiKX19KX0sX3RyaWdnZXI6ZnVuY3Rpb24oZSxpLHMpe3ZhciBuLG8sYT10aGlzLm9wdGlvbnNbZV07aWYocz1zfHx7fSxpPXQuRXZlbnQoaSksaS50eXBlPShlPT09dGhpcy53aWRnZXRFdmVudFByZWZpeD9lOnRoaXMud2lkZ2V0RXZlbnRQcmVmaXgrZSkudG9Mb3dlckNhc2UoKSxpLnRhcmdldD10aGlzLmVsZW1lbnRbMF0sbz1pLm9yaWdpbmFsRXZlbnQpZm9yKG4gaW4gbyluIGluIGl8fChpW25dPW9bbl0pO3JldHVybiB0aGlzLmVsZW1lbnQudHJpZ2dlcihpLHMpLCEodC5pc0Z1bmN0aW9uKGEpJiZhLmFwcGx5KHRoaXMuZWxlbWVudFswXSxbaV0uY29uY2F0KHMpKT09PSExfHxpLmlzRGVmYXVsdFByZXZlbnRlZCgpKX19LHQuZWFjaCh7c2hvdzoiZmFkZUluIixoaWRlOiJmYWRlT3V0In0sZnVuY3Rpb24oZSxpKXt0LldpZGdldC5wcm90b3R5cGVbIl8iK2VdPWZ1bmN0aW9uKHMsbixvKXsic3RyaW5nIj09dHlwZW9mIG4mJihuPXtlZmZlY3Q6bn0pO3ZhciBhLHI9bj9uPT09ITB8fCJudW1iZXIiPT10eXBlb2Ygbj9pOm4uZWZmZWN0fHxpOmU7bj1ufHx7fSwibnVtYmVyIj09dHlwZW9mIG4mJihuPXtkdXJhdGlvbjpufSksYT0hdC5pc0VtcHR5T2JqZWN0KG4pLG4uY29tcGxldGU9byxuLmRlbGF5JiZzLmRlbGF5KG4uZGVsYXkpLGEmJnQuZWZmZWN0cyYmdC5lZmZlY3RzLmVmZmVjdFtyXT9zW2VdKG4pOnIhPT1lJiZzW3JdP3Nbcl0obi5kdXJhdGlvbixuLmVhc2luZyxvKTpzLnF1ZXVlKGZ1bmN0aW9uKGkpe3QodGhpcylbZV0oKSxvJiZvLmNhbGwoc1swXSksaSgpfSl9fSl9KShqUXVlcnkpOyhmdW5jdGlvbih0KXt2YXIgZT0hMTt0KGRvY3VtZW50KS5tb3VzZXVwKGZ1bmN0aW9uKCl7ZT0hMX0pLHQud2lkZ2V0KCJ1aS5tb3VzZSIse3ZlcnNpb246IjEuMTAuNCIsb3B0aW9uczp7Y2FuY2VsOiJpbnB1dCx0ZXh0YXJlYSxidXR0b24sc2VsZWN0LG9wdGlvbiIsZGlzdGFuY2U6MSxkZWxheTowfSxfbW91c2VJbml0OmZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0aGlzLmVsZW1lbnQuYmluZCgibW91c2Vkb3duLiIrdGhpcy53aWRnZXROYW1lLGZ1bmN0aW9uKHQpe3JldHVybiBlLl9tb3VzZURvd24odCl9KS5iaW5kKCJjbGljay4iK3RoaXMud2lkZ2V0TmFtZSxmdW5jdGlvbihpKXtyZXR1cm4hMD09PXQuZGF0YShpLnRhcmdldCxlLndpZGdldE5hbWUrIi5wcmV2ZW50Q2xpY2tFdmVudCIpPyh0LnJlbW92ZURhdGEoaS50YXJnZXQsZS53aWRnZXROYW1lKyIucHJldmVudENsaWNrRXZlbnQiKSxpLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpLCExKTp1bmRlZmluZWR9KSx0aGlzLnN0YXJ0ZWQ9ITF9LF9tb3VzZURlc3Ryb3k6ZnVuY3Rpb24oKXt0aGlzLmVsZW1lbnQudW5iaW5kKCIuIit0aGlzLndpZGdldE5hbWUpLHRoaXMuX21vdXNlTW92ZURlbGVnYXRlJiZ0KGRvY3VtZW50KS51bmJpbmQoIm1vdXNlbW92ZS4iK3RoaXMud2lkZ2V0TmFtZSx0aGlzLl9tb3VzZU1vdmVEZWxlZ2F0ZSkudW5iaW5kKCJtb3VzZXVwLiIrdGhpcy53aWRnZXROYW1lLHRoaXMuX21vdXNlVXBEZWxlZ2F0ZSl9LF9tb3VzZURvd246ZnVuY3Rpb24oaSl7aWYoIWUpe3RoaXMuX21vdXNlU3RhcnRlZCYmdGhpcy5fbW91c2VVcChpKSx0aGlzLl9tb3VzZURvd25FdmVudD1pO3ZhciBzPXRoaXMsbj0xPT09aS53aGljaCxhPSJzdHJpbmciPT10eXBlb2YgdGhpcy5vcHRpb25zLmNhbmNlbCYmaS50YXJnZXQubm9kZU5hbWU/dChpLnRhcmdldCkuY2xvc2VzdCh0aGlzLm9wdGlvbnMuY2FuY2VsKS5sZW5ndGg6ITE7cmV0dXJuIG4mJiFhJiZ0aGlzLl9tb3VzZUNhcHR1cmUoaSk/KHRoaXMubW91c2VEZWxheU1ldD0hdGhpcy5vcHRpb25zLmRlbGF5LHRoaXMubW91c2VEZWxheU1ldHx8KHRoaXMuX21vdXNlRGVsYXlUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cy5tb3VzZURlbGF5TWV0PSEwfSx0aGlzLm9wdGlvbnMuZGVsYXkpKSx0aGlzLl9tb3VzZURpc3RhbmNlTWV0KGkpJiZ0aGlzLl9tb3VzZURlbGF5TWV0KGkpJiYodGhpcy5fbW91c2VTdGFydGVkPXRoaXMuX21vdXNlU3RhcnQoaSkhPT0hMSwhdGhpcy5fbW91c2VTdGFydGVkKT8oaS5wcmV2ZW50RGVmYXVsdCgpLCEwKTooITA9PT10LmRhdGEoaS50YXJnZXQsdGhpcy53aWRnZXROYW1lKyIucHJldmVudENsaWNrRXZlbnQiKSYmdC5yZW1vdmVEYXRhKGkudGFyZ2V0LHRoaXMud2lkZ2V0TmFtZSsiLnByZXZlbnRDbGlja0V2ZW50IiksdGhpcy5fbW91c2VNb3ZlRGVsZWdhdGU9ZnVuY3Rpb24odCl7cmV0dXJuIHMuX21vdXNlTW92ZSh0KX0sdGhpcy5fbW91c2VVcERlbGVnYXRlPWZ1bmN0aW9uKHQpe3JldHVybiBzLl9tb3VzZVVwKHQpfSx0KGRvY3VtZW50KS5iaW5kKCJtb3VzZW1vdmUuIit0aGlzLndpZGdldE5hbWUsdGhpcy5fbW91c2VNb3ZlRGVsZWdhdGUpLmJpbmQoIm1vdXNldXAuIit0aGlzLndpZGdldE5hbWUsdGhpcy5fbW91c2VVcERlbGVnYXRlKSxpLnByZXZlbnREZWZhdWx0KCksZT0hMCwhMCkpOiEwfX0sX21vdXNlTW92ZTpmdW5jdGlvbihlKXtyZXR1cm4gdC51aS5pZSYmKCFkb2N1bWVudC5kb2N1bWVudE1vZGV8fDk+ZG9jdW1lbnQuZG9jdW1lbnRNb2RlKSYmIWUuYnV0dG9uP3RoaXMuX21vdXNlVXAoZSk6dGhpcy5fbW91c2VTdGFydGVkPyh0aGlzLl9tb3VzZURyYWcoZSksZS5wcmV2ZW50RGVmYXVsdCgpKToodGhpcy5fbW91c2VEaXN0YW5jZU1ldChlKSYmdGhpcy5fbW91c2VEZWxheU1ldChlKSYmKHRoaXMuX21vdXNlU3RhcnRlZD10aGlzLl9tb3VzZVN0YXJ0KHRoaXMuX21vdXNlRG93bkV2ZW50LGUpIT09ITEsdGhpcy5fbW91c2VTdGFydGVkP3RoaXMuX21vdXNlRHJhZyhlKTp0aGlzLl9tb3VzZVVwKGUpKSwhdGhpcy5fbW91c2VTdGFydGVkKX0sX21vdXNlVXA6ZnVuY3Rpb24oZSl7cmV0dXJuIHQoZG9jdW1lbnQpLnVuYmluZCgibW91c2Vtb3ZlLiIrdGhpcy53aWRnZXROYW1lLHRoaXMuX21vdXNlTW92ZURlbGVnYXRlKS51bmJpbmQoIm1vdXNldXAuIit0aGlzLndpZGdldE5hbWUsdGhpcy5fbW91c2VVcERlbGVnYXRlKSx0aGlzLl9tb3VzZVN0YXJ0ZWQmJih0aGlzLl9tb3VzZVN0YXJ0ZWQ9ITEsZS50YXJnZXQ9PT10aGlzLl9tb3VzZURvd25FdmVudC50YXJnZXQmJnQuZGF0YShlLnRhcmdldCx0aGlzLndpZGdldE5hbWUrIi5wcmV2ZW50Q2xpY2tFdmVudCIsITApLHRoaXMuX21vdXNlU3RvcChlKSksITF9LF9tb3VzZURpc3RhbmNlTWV0OmZ1bmN0aW9uKHQpe3JldHVybiBNYXRoLm1heChNYXRoLmFicyh0aGlzLl9tb3VzZURvd25FdmVudC5wYWdlWC10LnBhZ2VYKSxNYXRoLmFicyh0aGlzLl9tb3VzZURvd25FdmVudC5wYWdlWS10LnBhZ2VZKSk+PXRoaXMub3B0aW9ucy5kaXN0YW5jZX0sX21vdXNlRGVsYXlNZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tb3VzZURlbGF5TWV0fSxfbW91c2VTdGFydDpmdW5jdGlvbigpe30sX21vdXNlRHJhZzpmdW5jdGlvbigpe30sX21vdXNlU3RvcDpmdW5jdGlvbigpe30sX21vdXNlQ2FwdHVyZTpmdW5jdGlvbigpe3JldHVybiEwfX0pfSkoalF1ZXJ5KTsoZnVuY3Rpb24odCxlKXtmdW5jdGlvbiBpKHQsZSxpKXtyZXR1cm5bcGFyc2VGbG9hdCh0WzBdKSoocC50ZXN0KHRbMF0pP2UvMTAwOjEpLHBhcnNlRmxvYXQodFsxXSkqKHAudGVzdCh0WzFdKT9pLzEwMDoxKV19ZnVuY3Rpb24gcyhlLGkpe3JldHVybiBwYXJzZUludCh0LmNzcyhlLGkpLDEwKXx8MH1mdW5jdGlvbiBuKGUpe3ZhciBpPWVbMF07cmV0dXJuIDk9PT1pLm5vZGVUeXBlP3t3aWR0aDplLndpZHRoKCksaGVpZ2h0OmUuaGVpZ2h0KCksb2Zmc2V0Ont0b3A6MCxsZWZ0OjB9fTp0LmlzV2luZG93KGkpP3t3aWR0aDplLndpZHRoKCksaGVpZ2h0OmUuaGVpZ2h0KCksb2Zmc2V0Ont0b3A6ZS5zY3JvbGxUb3AoKSxsZWZ0OmUuc2Nyb2xsTGVmdCgpfX06aS5wcmV2ZW50RGVmYXVsdD97d2lkdGg6MCxoZWlnaHQ6MCxvZmZzZXQ6e3RvcDppLnBhZ2VZLGxlZnQ6aS5wYWdlWH19Ont3aWR0aDplLm91dGVyV2lkdGgoKSxoZWlnaHQ6ZS5vdXRlckhlaWdodCgpLG9mZnNldDplLm9mZnNldCgpfX10LnVpPXQudWl8fHt9O3ZhciBhLG89TWF0aC5tYXgscj1NYXRoLmFicyxsPU1hdGgucm91bmQsaD0vbGVmdHxjZW50ZXJ8cmlnaHQvLGM9L3RvcHxjZW50ZXJ8Ym90dG9tLyx1PS9bXCtcLV1cZCsoXC5bXGRdKyk/JT8vLGQ9L15cdysvLHA9LyUkLyxmPXQuZm4ucG9zaXRpb247dC5wb3NpdGlvbj17c2Nyb2xsYmFyV2lkdGg6ZnVuY3Rpb24oKXtpZihhIT09ZSlyZXR1cm4gYTt2YXIgaSxzLG49dCgiPGRpdiBzdHlsZT0nZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo1MHB4O2hlaWdodDo1MHB4O292ZXJmbG93OmhpZGRlbjsnPjxkaXYgc3R5bGU9J2hlaWdodDoxMDBweDt3aWR0aDphdXRvOyc+PC9kaXY+PC9kaXY+Iiksbz1uLmNoaWxkcmVuKClbMF07cmV0dXJuIHQoImJvZHkiKS5hcHBlbmQobiksaT1vLm9mZnNldFdpZHRoLG4uY3NzKCJvdmVyZmxvdyIsInNjcm9sbCIpLHM9by5vZmZzZXRXaWR0aCxpPT09cyYmKHM9blswXS5jbGllbnRXaWR0aCksbi5yZW1vdmUoKSxhPWktc30sZ2V0U2Nyb2xsSW5mbzpmdW5jdGlvbihlKXt2YXIgaT1lLmlzV2luZG93fHxlLmlzRG9jdW1lbnQ/IiI6ZS5lbGVtZW50LmNzcygib3ZlcmZsb3cteCIpLHM9ZS5pc1dpbmRvd3x8ZS5pc0RvY3VtZW50PyIiOmUuZWxlbWVudC5jc3MoIm92ZXJmbG93LXkiKSxuPSJzY3JvbGwiPT09aXx8ImF1dG8iPT09aSYmZS53aWR0aDxlLmVsZW1lbnRbMF0uc2Nyb2xsV2lkdGgsYT0ic2Nyb2xsIj09PXN8fCJhdXRvIj09PXMmJmUuaGVpZ2h0PGUuZWxlbWVudFswXS5zY3JvbGxIZWlnaHQ7cmV0dXJue3dpZHRoOmE/dC5wb3NpdGlvbi5zY3JvbGxiYXJXaWR0aCgpOjAsaGVpZ2h0Om4/dC5wb3NpdGlvbi5zY3JvbGxiYXJXaWR0aCgpOjB9fSxnZXRXaXRoaW5JbmZvOmZ1bmN0aW9uKGUpe3ZhciBpPXQoZXx8d2luZG93KSxzPXQuaXNXaW5kb3coaVswXSksbj0hIWlbMF0mJjk9PT1pWzBdLm5vZGVUeXBlO3JldHVybntlbGVtZW50OmksaXNXaW5kb3c6cyxpc0RvY3VtZW50Om4sb2Zmc2V0Omkub2Zmc2V0KCl8fHtsZWZ0OjAsdG9wOjB9LHNjcm9sbExlZnQ6aS5zY3JvbGxMZWZ0KCksc2Nyb2xsVG9wOmkuc2Nyb2xsVG9wKCksd2lkdGg6cz9pLndpZHRoKCk6aS5vdXRlcldpZHRoKCksaGVpZ2h0OnM/aS5oZWlnaHQoKTppLm91dGVySGVpZ2h0KCl9fX0sdC5mbi5wb3NpdGlvbj1mdW5jdGlvbihlKXtpZighZXx8IWUub2YpcmV0dXJuIGYuYXBwbHkodGhpcyxhcmd1bWVudHMpO2U9dC5leHRlbmQoe30sZSk7dmFyIGEscCxnLG0sdixfLGI9dChlLm9mKSx5PXQucG9zaXRpb24uZ2V0V2l0aGluSW5mbyhlLndpdGhpbiksaz10LnBvc2l0aW9uLmdldFNjcm9sbEluZm8oeSksdz0oZS5jb2xsaXNpb258fCJmbGlwIikuc3BsaXQoIiAiKSxEPXt9O3JldHVybiBfPW4oYiksYlswXS5wcmV2ZW50RGVmYXVsdCYmKGUuYXQ9ImxlZnQgdG9wIikscD1fLndpZHRoLGc9Xy5oZWlnaHQsbT1fLm9mZnNldCx2PXQuZXh0ZW5kKHt9LG0pLHQuZWFjaChbIm15IiwiYXQiXSxmdW5jdGlvbigpe3ZhciB0LGkscz0oZVt0aGlzXXx8IiIpLnNwbGl0KCIgIik7MT09PXMubGVuZ3RoJiYocz1oLnRlc3Qoc1swXSk/cy5jb25jYXQoWyJjZW50ZXIiXSk6Yy50ZXN0KHNbMF0pP1siY2VudGVyIl0uY29uY2F0KHMpOlsiY2VudGVyIiwiY2VudGVyIl0pLHNbMF09aC50ZXN0KHNbMF0pP3NbMF06ImNlbnRlciIsc1sxXT1jLnRlc3Qoc1sxXSk/c1sxXToiY2VudGVyIix0PXUuZXhlYyhzWzBdKSxpPXUuZXhlYyhzWzFdKSxEW3RoaXNdPVt0P3RbMF06MCxpP2lbMF06MF0sZVt0aGlzXT1bZC5leGVjKHNbMF0pWzBdLGQuZXhlYyhzWzFdKVswXV19KSwxPT09dy5sZW5ndGgmJih3WzFdPXdbMF0pLCJyaWdodCI9PT1lLmF0WzBdP3YubGVmdCs9cDoiY2VudGVyIj09PWUuYXRbMF0mJih2LmxlZnQrPXAvMiksImJvdHRvbSI9PT1lLmF0WzFdP3YudG9wKz1nOiJjZW50ZXIiPT09ZS5hdFsxXSYmKHYudG9wKz1nLzIpLGE9aShELmF0LHAsZyksdi5sZWZ0Kz1hWzBdLHYudG9wKz1hWzFdLHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBuLGgsYz10KHRoaXMpLHU9Yy5vdXRlcldpZHRoKCksZD1jLm91dGVySGVpZ2h0KCksZj1zKHRoaXMsIm1hcmdpbkxlZnQiKSxfPXModGhpcywibWFyZ2luVG9wIikseD11K2Yrcyh0aGlzLCJtYXJnaW5SaWdodCIpK2sud2lkdGgsQz1kK18rcyh0aGlzLCJtYXJnaW5Cb3R0b20iKStrLmhlaWdodCxNPXQuZXh0ZW5kKHt9LHYpLFQ9aShELm15LGMub3V0ZXJXaWR0aCgpLGMub3V0ZXJIZWlnaHQoKSk7InJpZ2h0Ij09PWUubXlbMF0/TS5sZWZ0LT11OiJjZW50ZXIiPT09ZS5teVswXSYmKE0ubGVmdC09dS8yKSwiYm90dG9tIj09PWUubXlbMV0/TS50b3AtPWQ6ImNlbnRlciI9PT1lLm15WzFdJiYoTS50b3AtPWQvMiksTS5sZWZ0Kz1UWzBdLE0udG9wKz1UWzFdLHQuc3VwcG9ydC5vZmZzZXRGcmFjdGlvbnN8fChNLmxlZnQ9bChNLmxlZnQpLE0udG9wPWwoTS50b3ApKSxuPXttYXJnaW5MZWZ0OmYsbWFyZ2luVG9wOl99LHQuZWFjaChbImxlZnQiLCJ0b3AiXSxmdW5jdGlvbihpLHMpe3QudWkucG9zaXRpb25bd1tpXV0mJnQudWkucG9zaXRpb25bd1tpXV1bc10oTSx7dGFyZ2V0V2lkdGg6cCx0YXJnZXRIZWlnaHQ6ZyxlbGVtV2lkdGg6dSxlbGVtSGVpZ2h0OmQsY29sbGlzaW9uUG9zaXRpb246bixjb2xsaXNpb25XaWR0aDp4LGNvbGxpc2lvbkhlaWdodDpDLG9mZnNldDpbYVswXStUWzBdLGFbMV0rVFsxXV0sbXk6ZS5teSxhdDplLmF0LHdpdGhpbjp5LGVsZW06Y30pfSksZS51c2luZyYmKGg9ZnVuY3Rpb24odCl7dmFyIGk9bS5sZWZ0LU0ubGVmdCxzPWkrcC11LG49bS50b3AtTS50b3AsYT1uK2ctZCxsPXt0YXJnZXQ6e2VsZW1lbnQ6YixsZWZ0Om0ubGVmdCx0b3A6bS50b3Asd2lkdGg6cCxoZWlnaHQ6Z30sZWxlbWVudDp7ZWxlbWVudDpjLGxlZnQ6TS5sZWZ0LHRvcDpNLnRvcCx3aWR0aDp1LGhlaWdodDpkfSxob3Jpem9udGFsOjA+cz8ibGVmdCI6aT4wPyJyaWdodCI6ImNlbnRlciIsdmVydGljYWw6MD5hPyJ0b3AiOm4+MD8iYm90dG9tIjoibWlkZGxlIn07dT5wJiZwPnIoaStzKSYmKGwuaG9yaXpvbnRhbD0iY2VudGVyIiksZD5nJiZnPnIobithKSYmKGwudmVydGljYWw9Im1pZGRsZSIpLGwuaW1wb3J0YW50PW8ocihpKSxyKHMpKT5vKHIobikscihhKSk/Imhvcml6b250YWwiOiJ2ZXJ0aWNhbCIsZS51c2luZy5jYWxsKHRoaXMsdCxsKX0pLGMub2Zmc2V0KHQuZXh0ZW5kKE0se3VzaW5nOmh9KSl9KX0sdC51aS5wb3NpdGlvbj17Zml0OntsZWZ0OmZ1bmN0aW9uKHQsZSl7dmFyIGkscz1lLndpdGhpbixuPXMuaXNXaW5kb3c/cy5zY3JvbGxMZWZ0OnMub2Zmc2V0LmxlZnQsYT1zLndpZHRoLHI9dC5sZWZ0LWUuY29sbGlzaW9uUG9zaXRpb24ubWFyZ2luTGVmdCxsPW4tcixoPXIrZS5jb2xsaXNpb25XaWR0aC1hLW47ZS5jb2xsaXNpb25XaWR0aD5hP2w+MCYmMD49aD8oaT10LmxlZnQrbCtlLmNvbGxpc2lvbldpZHRoLWEtbix0LmxlZnQrPWwtaSk6dC5sZWZ0PWg+MCYmMD49bD9uOmw+aD9uK2EtZS5jb2xsaXNpb25XaWR0aDpuOmw+MD90LmxlZnQrPWw6aD4wP3QubGVmdC09aDp0LmxlZnQ9byh0LmxlZnQtcix0LmxlZnQpfSx0b3A6ZnVuY3Rpb24odCxlKXt2YXIgaSxzPWUud2l0aGluLG49cy5pc1dpbmRvdz9zLnNjcm9sbFRvcDpzLm9mZnNldC50b3AsYT1lLndpdGhpbi5oZWlnaHQscj10LnRvcC1lLmNvbGxpc2lvblBvc2l0aW9uLm1hcmdpblRvcCxsPW4tcixoPXIrZS5jb2xsaXNpb25IZWlnaHQtYS1uO2UuY29sbGlzaW9uSGVpZ2h0PmE/bD4wJiYwPj1oPyhpPXQudG9wK2wrZS5jb2xsaXNpb25IZWlnaHQtYS1uLHQudG9wKz1sLWkpOnQudG9wPWg+MCYmMD49bD9uOmw+aD9uK2EtZS5jb2xsaXNpb25IZWlnaHQ6bjpsPjA/dC50b3ArPWw6aD4wP3QudG9wLT1oOnQudG9wPW8odC50b3Atcix0LnRvcCl9fSxmbGlwOntsZWZ0OmZ1bmN0aW9uKHQsZSl7dmFyIGkscyxuPWUud2l0aGluLGE9bi5vZmZzZXQubGVmdCtuLnNjcm9sbExlZnQsbz1uLndpZHRoLGw9bi5pc1dpbmRvdz9uLnNjcm9sbExlZnQ6bi5vZmZzZXQubGVmdCxoPXQubGVmdC1lLmNvbGxpc2lvblBvc2l0aW9uLm1hcmdpbkxlZnQsYz1oLWwsdT1oK2UuY29sbGlzaW9uV2lkdGgtby1sLGQ9ImxlZnQiPT09ZS5teVswXT8tZS5lbGVtV2lkdGg6InJpZ2h0Ij09PWUubXlbMF0/ZS5lbGVtV2lkdGg6MCxwPSJsZWZ0Ij09PWUuYXRbMF0/ZS50YXJnZXRXaWR0aDoicmlnaHQiPT09ZS5hdFswXT8tZS50YXJnZXRXaWR0aDowLGY9LTIqZS5vZmZzZXRbMF07MD5jPyhpPXQubGVmdCtkK3ArZitlLmNvbGxpc2lvbldpZHRoLW8tYSwoMD5pfHxyKGMpPmkpJiYodC5sZWZ0Kz1kK3ArZikpOnU+MCYmKHM9dC5sZWZ0LWUuY29sbGlzaW9uUG9zaXRpb24ubWFyZ2luTGVmdCtkK3ArZi1sLChzPjB8fHU+cihzKSkmJih0LmxlZnQrPWQrcCtmKSl9LHRvcDpmdW5jdGlvbih0LGUpe3ZhciBpLHMsbj1lLndpdGhpbixhPW4ub2Zmc2V0LnRvcCtuLnNjcm9sbFRvcCxvPW4uaGVpZ2h0LGw9bi5pc1dpbmRvdz9uLnNjcm9sbFRvcDpuLm9mZnNldC50b3AsaD10LnRvcC1lLmNvbGxpc2lvblBvc2l0aW9uLm1hcmdpblRvcCxjPWgtbCx1PWgrZS5jb2xsaXNpb25IZWlnaHQtby1sLGQ9InRvcCI9PT1lLm15WzFdLHA9ZD8tZS5lbGVtSGVpZ2h0OiJib3R0b20iPT09ZS5teVsxXT9lLmVsZW1IZWlnaHQ6MCxmPSJ0b3AiPT09ZS5hdFsxXT9lLnRhcmdldEhlaWdodDoiYm90dG9tIj09PWUuYXRbMV0/LWUudGFyZ2V0SGVpZ2h0OjAsZz0tMiplLm9mZnNldFsxXTswPmM/KHM9dC50b3ArcCtmK2crZS5jb2xsaXNpb25IZWlnaHQtby1hLHQudG9wK3ArZitnPmMmJigwPnN8fHIoYyk+cykmJih0LnRvcCs9cCtmK2cpKTp1PjAmJihpPXQudG9wLWUuY29sbGlzaW9uUG9zaXRpb24ubWFyZ2luVG9wK3ArZitnLWwsdC50b3ArcCtmK2c+dSYmKGk+MHx8dT5yKGkpKSYmKHQudG9wKz1wK2YrZykpfX0sZmxpcGZpdDp7bGVmdDpmdW5jdGlvbigpe3QudWkucG9zaXRpb24uZmxpcC5sZWZ0LmFwcGx5KHRoaXMsYXJndW1lbnRzKSx0LnVpLnBvc2l0aW9uLmZpdC5sZWZ0LmFwcGx5KHRoaXMsYXJndW1lbnRzKX0sdG9wOmZ1bmN0aW9uKCl7dC51aS5wb3NpdGlvbi5mbGlwLnRvcC5hcHBseSh0aGlzLGFyZ3VtZW50cyksdC51aS5wb3NpdGlvbi5maXQudG9wLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19fSxmdW5jdGlvbigpe3ZhciBlLGkscyxuLGEsbz1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYm9keSIpWzBdLHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7ZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KG8/ImRpdiI6ImJvZHkiKSxzPXt2aXNpYmlsaXR5OiJoaWRkZW4iLHdpZHRoOjAsaGVpZ2h0OjAsYm9yZGVyOjAsbWFyZ2luOjAsYmFja2dyb3VuZDoibm9uZSJ9LG8mJnQuZXh0ZW5kKHMse3Bvc2l0aW9uOiJhYnNvbHV0ZSIsbGVmdDoiLTEwMDBweCIsdG9wOiItMTAwMHB4In0pO2ZvcihhIGluIHMpZS5zdHlsZVthXT1zW2FdO2UuYXBwZW5kQ2hpbGQociksaT1vfHxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsaS5pbnNlcnRCZWZvcmUoZSxpLmZpcnN0Q2hpbGQpLHIuc3R5bGUuY3NzVGV4dD0icG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAxMC43NDMyMjIycHg7IixuPXQocikub2Zmc2V0KCkubGVmdCx0LnN1cHBvcnQub2Zmc2V0RnJhY3Rpb25zPW4+MTAmJjExPm4sZS5pbm5lckhUTUw9IiIsaS5yZW1vdmVDaGlsZChlKX0oKX0pKGpRdWVyeSk7KGZ1bmN0aW9uKGUpe3ZhciB0PTAsaT17fSxhPXt9O2kuaGVpZ2h0PWkucGFkZGluZ1RvcD1pLnBhZGRpbmdCb3R0b209aS5ib3JkZXJUb3BXaWR0aD1pLmJvcmRlckJvdHRvbVdpZHRoPSJoaWRlIixhLmhlaWdodD1hLnBhZGRpbmdUb3A9YS5wYWRkaW5nQm90dG9tPWEuYm9yZGVyVG9wV2lkdGg9YS5ib3JkZXJCb3R0b21XaWR0aD0ic2hvdyIsZS53aWRnZXQoInVpLmFjY29yZGlvbiIse3ZlcnNpb246IjEuMTAuNCIsb3B0aW9uczp7YWN0aXZlOjAsYW5pbWF0ZTp7fSxjb2xsYXBzaWJsZTohMSxldmVudDoiY2xpY2siLGhlYWRlcjoiPiBsaSA+IDpmaXJzdC1jaGlsZCw+IDpub3QobGkpOmV2ZW4iLGhlaWdodFN0eWxlOiJhdXRvIixpY29uczp7YWN0aXZlSGVhZGVyOiJ1aS1pY29uLXRyaWFuZ2xlLTEtcyIsaGVhZGVyOiJ1aS1pY29uLXRyaWFuZ2xlLTEtZSJ9LGFjdGl2YXRlOm51bGwsYmVmb3JlQWN0aXZhdGU6bnVsbH0sX2NyZWF0ZTpmdW5jdGlvbigpe3ZhciB0PXRoaXMub3B0aW9uczt0aGlzLnByZXZTaG93PXRoaXMucHJldkhpZGU9ZSgpLHRoaXMuZWxlbWVudC5hZGRDbGFzcygidWktYWNjb3JkaW9uIHVpLXdpZGdldCB1aS1oZWxwZXItcmVzZXQiKS5hdHRyKCJyb2xlIiwidGFibGlzdCIpLHQuY29sbGFwc2libGV8fHQuYWN0aXZlIT09ITEmJm51bGwhPXQuYWN0aXZlfHwodC5hY3RpdmU9MCksdGhpcy5fcHJvY2Vzc1BhbmVscygpLDA+dC5hY3RpdmUmJih0LmFjdGl2ZSs9dGhpcy5oZWFkZXJzLmxlbmd0aCksdGhpcy5fcmVmcmVzaCgpfSxfZ2V0Q3JlYXRlRXZlbnREYXRhOmZ1bmN0aW9uKCl7cmV0dXJue2hlYWRlcjp0aGlzLmFjdGl2ZSxwYW5lbDp0aGlzLmFjdGl2ZS5sZW5ndGg/dGhpcy5hY3RpdmUubmV4dCgpOmUoKSxjb250ZW50OnRoaXMuYWN0aXZlLmxlbmd0aD90aGlzLmFjdGl2ZS5uZXh0KCk6ZSgpfX0sX2NyZWF0ZUljb25zOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5vcHRpb25zLmljb25zO3QmJihlKCI8c3Bhbj4iKS5hZGRDbGFzcygidWktYWNjb3JkaW9uLWhlYWRlci1pY29uIHVpLWljb24gIit0LmhlYWRlcikucHJlcGVuZFRvKHRoaXMuaGVhZGVycyksdGhpcy5hY3RpdmUuY2hpbGRyZW4oIi51aS1hY2NvcmRpb24taGVhZGVyLWljb24iKS5yZW1vdmVDbGFzcyh0LmhlYWRlcikuYWRkQ2xhc3ModC5hY3RpdmVIZWFkZXIpLHRoaXMuaGVhZGVycy5hZGRDbGFzcygidWktYWNjb3JkaW9uLWljb25zIikpfSxfZGVzdHJveUljb25zOmZ1bmN0aW9uKCl7dGhpcy5oZWFkZXJzLnJlbW92ZUNsYXNzKCJ1aS1hY2NvcmRpb24taWNvbnMiKS5jaGlsZHJlbigiLnVpLWFjY29yZGlvbi1oZWFkZXItaWNvbiIpLnJlbW92ZSgpfSxfZGVzdHJveTpmdW5jdGlvbigpe3ZhciBlO3RoaXMuZWxlbWVudC5yZW1vdmVDbGFzcygidWktYWNjb3JkaW9uIHVpLXdpZGdldCB1aS1oZWxwZXItcmVzZXQiKS5yZW1vdmVBdHRyKCJyb2xlIiksdGhpcy5oZWFkZXJzLnJlbW92ZUNsYXNzKCJ1aS1hY2NvcmRpb24taGVhZGVyIHVpLWFjY29yZGlvbi1oZWFkZXItYWN0aXZlIHVpLWhlbHBlci1yZXNldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwgdWktc3RhdGUtYWN0aXZlIHVpLXN0YXRlLWRpc2FibGVkIHVpLWNvcm5lci10b3AiKS5yZW1vdmVBdHRyKCJyb2xlIikucmVtb3ZlQXR0cigiYXJpYS1leHBhbmRlZCIpLnJlbW92ZUF0dHIoImFyaWEtc2VsZWN0ZWQiKS5yZW1vdmVBdHRyKCJhcmlhLWNvbnRyb2xzIikucmVtb3ZlQXR0cigidGFiSW5kZXgiKS5lYWNoKGZ1bmN0aW9uKCl7L151aS1hY2NvcmRpb24vLnRlc3QodGhpcy5pZCkmJnRoaXMucmVtb3ZlQXR0cmlidXRlKCJpZCIpfSksdGhpcy5fZGVzdHJveUljb25zKCksZT10aGlzLmhlYWRlcnMubmV4dCgpLmNzcygiZGlzcGxheSIsIiIpLnJlbW92ZUF0dHIoInJvbGUiKS5yZW1vdmVBdHRyKCJhcmlhLWhpZGRlbiIpLnJlbW92ZUF0dHIoImFyaWEtbGFiZWxsZWRieSIpLnJlbW92ZUNsYXNzKCJ1aS1oZWxwZXItcmVzZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWJvdHRvbSB1aS1hY2NvcmRpb24tY29udGVudCB1aS1hY2NvcmRpb24tY29udGVudC1hY3RpdmUgdWktc3RhdGUtZGlzYWJsZWQiKS5lYWNoKGZ1bmN0aW9uKCl7L151aS1hY2NvcmRpb24vLnRlc3QodGhpcy5pZCkmJnRoaXMucmVtb3ZlQXR0cmlidXRlKCJpZCIpfSksImNvbnRlbnQiIT09dGhpcy5vcHRpb25zLmhlaWdodFN0eWxlJiZlLmNzcygiaGVpZ2h0IiwiIil9LF9zZXRPcHRpb246ZnVuY3Rpb24oZSx0KXtyZXR1cm4iYWN0aXZlIj09PWU/KHRoaXMuX2FjdGl2YXRlKHQpLHVuZGVmaW5lZCk6KCJldmVudCI9PT1lJiYodGhpcy5vcHRpb25zLmV2ZW50JiZ0aGlzLl9vZmYodGhpcy5oZWFkZXJzLHRoaXMub3B0aW9ucy5ldmVudCksdGhpcy5fc2V0dXBFdmVudHModCkpLHRoaXMuX3N1cGVyKGUsdCksImNvbGxhcHNpYmxlIiE9PWV8fHR8fHRoaXMub3B0aW9ucy5hY3RpdmUhPT0hMXx8dGhpcy5fYWN0aXZhdGUoMCksImljb25zIj09PWUmJih0aGlzLl9kZXN0cm95SWNvbnMoKSx0JiZ0aGlzLl9jcmVhdGVJY29ucygpKSwiZGlzYWJsZWQiPT09ZSYmdGhpcy5oZWFkZXJzLmFkZCh0aGlzLmhlYWRlcnMubmV4dCgpKS50b2dnbGVDbGFzcygidWktc3RhdGUtZGlzYWJsZWQiLCEhdCksdW5kZWZpbmVkKX0sX2tleWRvd246ZnVuY3Rpb24odCl7aWYoIXQuYWx0S2V5JiYhdC5jdHJsS2V5KXt2YXIgaT1lLnVpLmtleUNvZGUsYT10aGlzLmhlYWRlcnMubGVuZ3RoLHM9dGhpcy5oZWFkZXJzLmluZGV4KHQudGFyZ2V0KSxuPSExO3N3aXRjaCh0LmtleUNvZGUpe2Nhc2UgaS5SSUdIVDpjYXNlIGkuRE9XTjpuPXRoaXMuaGVhZGVyc1socysxKSVhXTticmVhaztjYXNlIGkuTEVGVDpjYXNlIGkuVVA6bj10aGlzLmhlYWRlcnNbKHMtMSthKSVhXTticmVhaztjYXNlIGkuU1BBQ0U6Y2FzZSBpLkVOVEVSOnRoaXMuX2V2ZW50SGFuZGxlcih0KTticmVhaztjYXNlIGkuSE9NRTpuPXRoaXMuaGVhZGVyc1swXTticmVhaztjYXNlIGkuRU5EOm49dGhpcy5oZWFkZXJzW2EtMV19biYmKGUodC50YXJnZXQpLmF0dHIoInRhYkluZGV4IiwtMSksZShuKS5hdHRyKCJ0YWJJbmRleCIsMCksbi5mb2N1cygpLHQucHJldmVudERlZmF1bHQoKSl9fSxfcGFuZWxLZXlEb3duOmZ1bmN0aW9uKHQpe3Qua2V5Q29kZT09PWUudWkua2V5Q29kZS5VUCYmdC5jdHJsS2V5JiZlKHQuY3VycmVudFRhcmdldCkucHJldigpLmZvY3VzKCl9LHJlZnJlc2g6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLm9wdGlvbnM7dGhpcy5fcHJvY2Vzc1BhbmVscygpLHQuYWN0aXZlPT09ITEmJnQuY29sbGFwc2libGU9PT0hMHx8IXRoaXMuaGVhZGVycy5sZW5ndGg/KHQuYWN0aXZlPSExLHRoaXMuYWN0aXZlPWUoKSk6dC5hY3RpdmU9PT0hMT90aGlzLl9hY3RpdmF0ZSgwKTp0aGlzLmFjdGl2ZS5sZW5ndGgmJiFlLmNvbnRhaW5zKHRoaXMuZWxlbWVudFswXSx0aGlzLmFjdGl2ZVswXSk/dGhpcy5oZWFkZXJzLmxlbmd0aD09PXRoaXMuaGVhZGVycy5maW5kKCIudWktc3RhdGUtZGlzYWJsZWQiKS5sZW5ndGg/KHQuYWN0aXZlPSExLHRoaXMuYWN0aXZlPWUoKSk6dGhpcy5fYWN0aXZhdGUoTWF0aC5tYXgoMCx0LmFjdGl2ZS0xKSk6dC5hY3RpdmU9dGhpcy5oZWFkZXJzLmluZGV4KHRoaXMuYWN0aXZlKSx0aGlzLl9kZXN0cm95SWNvbnMoKSx0aGlzLl9yZWZyZXNoKCl9LF9wcm9jZXNzUGFuZWxzOmZ1bmN0aW9uKCl7dGhpcy5oZWFkZXJzPXRoaXMuZWxlbWVudC5maW5kKHRoaXMub3B0aW9ucy5oZWFkZXIpLmFkZENsYXNzKCJ1aS1hY2NvcmRpb24taGVhZGVyIHVpLWhlbHBlci1yZXNldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwiKSx0aGlzLmhlYWRlcnMubmV4dCgpLmFkZENsYXNzKCJ1aS1hY2NvcmRpb24tY29udGVudCB1aS1oZWxwZXItcmVzZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWJvdHRvbSIpLmZpbHRlcigiOm5vdCgudWktYWNjb3JkaW9uLWNvbnRlbnQtYWN0aXZlKSIpLmhpZGUoKX0sX3JlZnJlc2g6ZnVuY3Rpb24oKXt2YXIgaSxhPXRoaXMub3B0aW9ucyxzPWEuaGVpZ2h0U3R5bGUsbj10aGlzLmVsZW1lbnQucGFyZW50KCkscj10aGlzLmFjY29yZGlvbklkPSJ1aS1hY2NvcmRpb24tIisodGhpcy5lbGVtZW50LmF0dHIoImlkIil8fCsrdCk7dGhpcy5hY3RpdmU9dGhpcy5fZmluZEFjdGl2ZShhLmFjdGl2ZSkuYWRkQ2xhc3MoInVpLWFjY29yZGlvbi1oZWFkZXItYWN0aXZlIHVpLXN0YXRlLWFjdGl2ZSB1aS1jb3JuZXItdG9wIikucmVtb3ZlQ2xhc3MoInVpLWNvcm5lci1hbGwiKSx0aGlzLmFjdGl2ZS5uZXh0KCkuYWRkQ2xhc3MoInVpLWFjY29yZGlvbi1jb250ZW50LWFjdGl2ZSIpLnNob3coKSx0aGlzLmhlYWRlcnMuYXR0cigicm9sZSIsInRhYiIpLmVhY2goZnVuY3Rpb24odCl7dmFyIGk9ZSh0aGlzKSxhPWkuYXR0cigiaWQiKSxzPWkubmV4dCgpLG49cy5hdHRyKCJpZCIpO2F8fChhPXIrIi1oZWFkZXItIit0LGkuYXR0cigiaWQiLGEpKSxufHwobj1yKyItcGFuZWwtIit0LHMuYXR0cigiaWQiLG4pKSxpLmF0dHIoImFyaWEtY29udHJvbHMiLG4pLHMuYXR0cigiYXJpYS1sYWJlbGxlZGJ5IixhKX0pLm5leHQoKS5hdHRyKCJyb2xlIiwidGFicGFuZWwiKSx0aGlzLmhlYWRlcnMubm90KHRoaXMuYWN0aXZlKS5hdHRyKHsiYXJpYS1zZWxlY3RlZCI6ImZhbHNlIiwiYXJpYS1leHBhbmRlZCI6ImZhbHNlIix0YWJJbmRleDotMX0pLm5leHQoKS5hdHRyKHsiYXJpYS1oaWRkZW4iOiJ0cnVlIn0pLmhpZGUoKSx0aGlzLmFjdGl2ZS5sZW5ndGg/dGhpcy5hY3RpdmUuYXR0cih7ImFyaWEtc2VsZWN0ZWQiOiJ0cnVlIiwiYXJpYS1leHBhbmRlZCI6InRydWUiLHRhYkluZGV4OjB9KS5uZXh0KCkuYXR0cih7ImFyaWEtaGlkZGVuIjoiZmFsc2UifSk6dGhpcy5oZWFkZXJzLmVxKDApLmF0dHIoInRhYkluZGV4IiwwKSx0aGlzLl9jcmVhdGVJY29ucygpLHRoaXMuX3NldHVwRXZlbnRzKGEuZXZlbnQpLCJmaWxsIj09PXM/KGk9bi5oZWlnaHQoKSx0aGlzLmVsZW1lbnQuc2libGluZ3MoIjp2aXNpYmxlIikuZWFjaChmdW5jdGlvbigpe3ZhciB0PWUodGhpcyksYT10LmNzcygicG9zaXRpb24iKTsiYWJzb2x1dGUiIT09YSYmImZpeGVkIiE9PWEmJihpLT10Lm91dGVySGVpZ2h0KCEwKSl9KSx0aGlzLmhlYWRlcnMuZWFjaChmdW5jdGlvbigpe2ktPWUodGhpcykub3V0ZXJIZWlnaHQoITApfSksdGhpcy5oZWFkZXJzLm5leHQoKS5lYWNoKGZ1bmN0aW9uKCl7ZSh0aGlzKS5oZWlnaHQoTWF0aC5tYXgoMCxpLWUodGhpcykuaW5uZXJIZWlnaHQoKStlKHRoaXMpLmhlaWdodCgpKSl9KS5jc3MoIm92ZXJmbG93IiwiYXV0byIpKToiYXV0byI9PT1zJiYoaT0wLHRoaXMuaGVhZGVycy5uZXh0KCkuZWFjaChmdW5jdGlvbigpe2k9TWF0aC5tYXgoaSxlKHRoaXMpLmNzcygiaGVpZ2h0IiwiIikuaGVpZ2h0KCkpfSkuaGVpZ2h0KGkpKX0sX2FjdGl2YXRlOmZ1bmN0aW9uKHQpe3ZhciBpPXRoaXMuX2ZpbmRBY3RpdmUodClbMF07aSE9PXRoaXMuYWN0aXZlWzBdJiYoaT1pfHx0aGlzLmFjdGl2ZVswXSx0aGlzLl9ldmVudEhhbmRsZXIoe3RhcmdldDppLGN1cnJlbnRUYXJnZXQ6aSxwcmV2ZW50RGVmYXVsdDplLm5vb3B9KSl9LF9maW5kQWN0aXZlOmZ1bmN0aW9uKHQpe3JldHVybiJudW1iZXIiPT10eXBlb2YgdD90aGlzLmhlYWRlcnMuZXEodCk6ZSgpfSxfc2V0dXBFdmVudHM6ZnVuY3Rpb24odCl7dmFyIGk9e2tleWRvd246Il9rZXlkb3duIn07dCYmZS5lYWNoKHQuc3BsaXQoIiAiKSxmdW5jdGlvbihlLHQpe2lbdF09Il9ldmVudEhhbmRsZXIifSksdGhpcy5fb2ZmKHRoaXMuaGVhZGVycy5hZGQodGhpcy5oZWFkZXJzLm5leHQoKSkpLHRoaXMuX29uKHRoaXMuaGVhZGVycyxpKSx0aGlzLl9vbih0aGlzLmhlYWRlcnMubmV4dCgpLHtrZXlkb3duOiJfcGFuZWxLZXlEb3duIn0pLHRoaXMuX2hvdmVyYWJsZSh0aGlzLmhlYWRlcnMpLHRoaXMuX2ZvY3VzYWJsZSh0aGlzLmhlYWRlcnMpfSxfZXZlbnRIYW5kbGVyOmZ1bmN0aW9uKHQpe3ZhciBpPXRoaXMub3B0aW9ucyxhPXRoaXMuYWN0aXZlLHM9ZSh0LmN1cnJlbnRUYXJnZXQpLG49c1swXT09PWFbMF0scj1uJiZpLmNvbGxhcHNpYmxlLG89cj9lKCk6cy5uZXh0KCksaD1hLm5leHQoKSxkPXtvbGRIZWFkZXI6YSxvbGRQYW5lbDpoLG5ld0hlYWRlcjpyP2UoKTpzLG5ld1BhbmVsOm99O3QucHJldmVudERlZmF1bHQoKSxuJiYhaS5jb2xsYXBzaWJsZXx8dGhpcy5fdHJpZ2dlcigiYmVmb3JlQWN0aXZhdGUiLHQsZCk9PT0hMXx8KGkuYWN0aXZlPXI/ITE6dGhpcy5oZWFkZXJzLmluZGV4KHMpLHRoaXMuYWN0aXZlPW4/ZSgpOnMsdGhpcy5fdG9nZ2xlKGQpLGEucmVtb3ZlQ2xhc3MoInVpLWFjY29yZGlvbi1oZWFkZXItYWN0aXZlIHVpLXN0YXRlLWFjdGl2ZSIpLGkuaWNvbnMmJmEuY2hpbGRyZW4oIi51aS1hY2NvcmRpb24taGVhZGVyLWljb24iKS5yZW1vdmVDbGFzcyhpLmljb25zLmFjdGl2ZUhlYWRlcikuYWRkQ2xhc3MoaS5pY29ucy5oZWFkZXIpLG58fChzLnJlbW92ZUNsYXNzKCJ1aS1jb3JuZXItYWxsIikuYWRkQ2xhc3MoInVpLWFjY29yZGlvbi1oZWFkZXItYWN0aXZlIHVpLXN0YXRlLWFjdGl2ZSB1aS1jb3JuZXItdG9wIiksaS5pY29ucyYmcy5jaGlsZHJlbigiLnVpLWFjY29yZGlvbi1oZWFkZXItaWNvbiIpLnJlbW92ZUNsYXNzKGkuaWNvbnMuaGVhZGVyKS5hZGRDbGFzcyhpLmljb25zLmFjdGl2ZUhlYWRlcikscy5uZXh0KCkuYWRkQ2xhc3MoInVpLWFjY29yZGlvbi1jb250ZW50LWFjdGl2ZSIpKSl9LF90b2dnbGU6ZnVuY3Rpb24odCl7dmFyIGk9dC5uZXdQYW5lbCxhPXRoaXMucHJldlNob3cubGVuZ3RoP3RoaXMucHJldlNob3c6dC5vbGRQYW5lbDt0aGlzLnByZXZTaG93LmFkZCh0aGlzLnByZXZIaWRlKS5zdG9wKCEwLCEwKSx0aGlzLnByZXZTaG93PWksdGhpcy5wcmV2SGlkZT1hLHRoaXMub3B0aW9ucy5hbmltYXRlP3RoaXMuX2FuaW1hdGUoaSxhLHQpOihhLmhpZGUoKSxpLnNob3coKSx0aGlzLl90b2dnbGVDb21wbGV0ZSh0KSksYS5hdHRyKHsiYXJpYS1oaWRkZW4iOiJ0cnVlIn0pLGEucHJldigpLmF0dHIoImFyaWEtc2VsZWN0ZWQiLCJmYWxzZSIpLGkubGVuZ3RoJiZhLmxlbmd0aD9hLnByZXYoKS5hdHRyKHt0YWJJbmRleDotMSwiYXJpYS1leHBhbmRlZCI6ImZhbHNlIn0pOmkubGVuZ3RoJiZ0aGlzLmhlYWRlcnMuZmlsdGVyKGZ1bmN0aW9uKCl7cmV0dXJuIDA9PT1lKHRoaXMpLmF0dHIoInRhYkluZGV4Iil9KS5hdHRyKCJ0YWJJbmRleCIsLTEpLGkuYXR0cigiYXJpYS1oaWRkZW4iLCJmYWxzZSIpLnByZXYoKS5hdHRyKHsiYXJpYS1zZWxlY3RlZCI6InRydWUiLHRhYkluZGV4OjAsImFyaWEtZXhwYW5kZWQiOiJ0cnVlIn0pfSxfYW5pbWF0ZTpmdW5jdGlvbihlLHQscyl7dmFyIG4scixvLGg9dGhpcyxkPTAsYz1lLmxlbmd0aCYmKCF0Lmxlbmd0aHx8ZS5pbmRleCgpPHQuaW5kZXgoKSksbD10aGlzLm9wdGlvbnMuYW5pbWF0ZXx8e30sdT1jJiZsLmRvd258fGwsdj1mdW5jdGlvbigpe2guX3RvZ2dsZUNvbXBsZXRlKHMpfTtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHUmJihvPXUpLCJzdHJpbmciPT10eXBlb2YgdSYmKHI9dSkscj1yfHx1LmVhc2luZ3x8bC5lYXNpbmcsbz1vfHx1LmR1cmF0aW9ufHxsLmR1cmF0aW9uLHQubGVuZ3RoP2UubGVuZ3RoPyhuPWUuc2hvdygpLm91dGVySGVpZ2h0KCksdC5hbmltYXRlKGkse2R1cmF0aW9uOm8sZWFzaW5nOnIsc3RlcDpmdW5jdGlvbihlLHQpe3Qubm93PU1hdGgucm91bmQoZSl9fSksZS5oaWRlKCkuYW5pbWF0ZShhLHtkdXJhdGlvbjpvLGVhc2luZzpyLGNvbXBsZXRlOnYsc3RlcDpmdW5jdGlvbihlLGkpe2kubm93PU1hdGgucm91bmQoZSksImhlaWdodCIhPT1pLnByb3A/ZCs9aS5ub3c6ImNvbnRlbnQiIT09aC5vcHRpb25zLmhlaWdodFN0eWxlJiYoaS5ub3c9TWF0aC5yb3VuZChuLXQub3V0ZXJIZWlnaHQoKS1kKSxkPTApfX0pLHVuZGVmaW5lZCk6dC5hbmltYXRlKGksbyxyLHYpOmUuYW5pbWF0ZShhLG8scix2KX0sX3RvZ2dsZUNvbXBsZXRlOmZ1bmN0aW9uKGUpe3ZhciB0PWUub2xkUGFuZWw7dC5yZW1vdmVDbGFzcygidWktYWNjb3JkaW9uLWNvbnRlbnQtYWN0aXZlIikucHJldigpLnJlbW92ZUNsYXNzKCJ1aS1jb3JuZXItdG9wIikuYWRkQ2xhc3MoInVpLWNvcm5lci1hbGwiKSx0Lmxlbmd0aCYmKHQucGFyZW50KClbMF0uY2xhc3NOYW1lPXQucGFyZW50KClbMF0uY2xhc3NOYW1lKSx0aGlzLl90cmlnZ2VyKCJhY3RpdmF0ZSIsbnVsbCxlKX19KX0pKGpRdWVyeSk7KGZ1bmN0aW9uKGUpe2Uud2lkZ2V0KCJ1aS5hdXRvY29tcGxldGUiLHt2ZXJzaW9uOiIxLjEwLjQiLGRlZmF1bHRFbGVtZW50OiI8aW5wdXQ+IixvcHRpb25zOnthcHBlbmRUbzpudWxsLGF1dG9Gb2N1czohMSxkZWxheTozMDAsbWluTGVuZ3RoOjEscG9zaXRpb246e215OiJsZWZ0IHRvcCIsYXQ6ImxlZnQgYm90dG9tIixjb2xsaXNpb246Im5vbmUifSxzb3VyY2U6bnVsbCxjaGFuZ2U6bnVsbCxjbG9zZTpudWxsLGZvY3VzOm51bGwsb3BlbjpudWxsLHJlc3BvbnNlOm51bGwsc2VhcmNoOm51bGwsc2VsZWN0Om51bGx9LHJlcXVlc3RJbmRleDowLHBlbmRpbmc6MCxfY3JlYXRlOmZ1bmN0aW9uKCl7dmFyIHQsaSxzLG49dGhpcy5lbGVtZW50WzBdLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCksYT0idGV4dGFyZWEiPT09bixvPSJpbnB1dCI9PT1uO3RoaXMuaXNNdWx0aUxpbmU9YT8hMDpvPyExOnRoaXMuZWxlbWVudC5wcm9wKCJpc0NvbnRlbnRFZGl0YWJsZSIpLHRoaXMudmFsdWVNZXRob2Q9dGhpcy5lbGVtZW50W2F8fG8/InZhbCI6InRleHQiXSx0aGlzLmlzTmV3TWVudT0hMCx0aGlzLmVsZW1lbnQuYWRkQ2xhc3MoInVpLWF1dG9jb21wbGV0ZS1pbnB1dCIpLmF0dHIoImF1dG9jb21wbGV0ZSIsIm9mZiIpLHRoaXMuX29uKHRoaXMuZWxlbWVudCx7a2V5ZG93bjpmdW5jdGlvbihuKXtpZih0aGlzLmVsZW1lbnQucHJvcCgicmVhZE9ubHkiKSlyZXR1cm4gdD0hMCxzPSEwLGk9ITAsdW5kZWZpbmVkO3Q9ITEscz0hMSxpPSExO3ZhciBhPWUudWkua2V5Q29kZTtzd2l0Y2gobi5rZXlDb2RlKXtjYXNlIGEuUEFHRV9VUDp0PSEwLHRoaXMuX21vdmUoInByZXZpb3VzUGFnZSIsbik7YnJlYWs7Y2FzZSBhLlBBR0VfRE9XTjp0PSEwLHRoaXMuX21vdmUoIm5leHRQYWdlIixuKTticmVhaztjYXNlIGEuVVA6dD0hMCx0aGlzLl9rZXlFdmVudCgicHJldmlvdXMiLG4pO2JyZWFrO2Nhc2UgYS5ET1dOOnQ9ITAsdGhpcy5fa2V5RXZlbnQoIm5leHQiLG4pO2JyZWFrO2Nhc2UgYS5FTlRFUjpjYXNlIGEuTlVNUEFEX0VOVEVSOnRoaXMubWVudS5hY3RpdmUmJih0PSEwLG4ucHJldmVudERlZmF1bHQoKSx0aGlzLm1lbnUuc2VsZWN0KG4pKTticmVhaztjYXNlIGEuVEFCOnRoaXMubWVudS5hY3RpdmUmJnRoaXMubWVudS5zZWxlY3Qobik7YnJlYWs7Y2FzZSBhLkVTQ0FQRTp0aGlzLm1lbnUuZWxlbWVudC5pcygiOnZpc2libGUiKSYmKHRoaXMuX3ZhbHVlKHRoaXMudGVybSksdGhpcy5jbG9zZShuKSxuLnByZXZlbnREZWZhdWx0KCkpO2JyZWFrO2RlZmF1bHQ6aT0hMCx0aGlzLl9zZWFyY2hUaW1lb3V0KG4pfX0sa2V5cHJlc3M6ZnVuY3Rpb24ocyl7aWYodClyZXR1cm4gdD0hMSwoIXRoaXMuaXNNdWx0aUxpbmV8fHRoaXMubWVudS5lbGVtZW50LmlzKCI6dmlzaWJsZSIpKSYmcy5wcmV2ZW50RGVmYXVsdCgpLHVuZGVmaW5lZDtpZighaSl7dmFyIG49ZS51aS5rZXlDb2RlO3N3aXRjaChzLmtleUNvZGUpe2Nhc2Ugbi5QQUdFX1VQOnRoaXMuX21vdmUoInByZXZpb3VzUGFnZSIscyk7YnJlYWs7Y2FzZSBuLlBBR0VfRE9XTjp0aGlzLl9tb3ZlKCJuZXh0UGFnZSIscyk7YnJlYWs7Y2FzZSBuLlVQOnRoaXMuX2tleUV2ZW50KCJwcmV2aW91cyIscyk7YnJlYWs7Y2FzZSBuLkRPV046dGhpcy5fa2V5RXZlbnQoIm5leHQiLHMpfX19LGlucHV0OmZ1bmN0aW9uKGUpe3JldHVybiBzPyhzPSExLGUucHJldmVudERlZmF1bHQoKSx1bmRlZmluZWQpOih0aGlzLl9zZWFyY2hUaW1lb3V0KGUpLHVuZGVmaW5lZCl9LGZvY3VzOmZ1bmN0aW9uKCl7dGhpcy5zZWxlY3RlZEl0ZW09bnVsbCx0aGlzLnByZXZpb3VzPXRoaXMuX3ZhbHVlKCl9LGJsdXI6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuY2FuY2VsQmx1cj8oZGVsZXRlIHRoaXMuY2FuY2VsQmx1cix1bmRlZmluZWQpOihjbGVhclRpbWVvdXQodGhpcy5zZWFyY2hpbmcpLHRoaXMuY2xvc2UoZSksdGhpcy5fY2hhbmdlKGUpLHVuZGVmaW5lZCl9fSksdGhpcy5faW5pdFNvdXJjZSgpLHRoaXMubWVudT1lKCI8dWw+IikuYWRkQ2xhc3MoInVpLWF1dG9jb21wbGV0ZSB1aS1mcm9udCIpLmFwcGVuZFRvKHRoaXMuX2FwcGVuZFRvKCkpLm1lbnUoe3JvbGU6bnVsbH0pLmhpZGUoKS5kYXRhKCJ1aS1tZW51IiksdGhpcy5fb24odGhpcy5tZW51LmVsZW1lbnQse21vdXNlZG93bjpmdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCksdGhpcy5jYW5jZWxCbHVyPSEwLHRoaXMuX2RlbGF5KGZ1bmN0aW9uKCl7ZGVsZXRlIHRoaXMuY2FuY2VsQmx1cn0pO3ZhciBpPXRoaXMubWVudS5lbGVtZW50WzBdO2UodC50YXJnZXQpLmNsb3Nlc3QoIi51aS1tZW51LWl0ZW0iKS5sZW5ndGh8fHRoaXMuX2RlbGF5KGZ1bmN0aW9uKCl7dmFyIHQ9dGhpczt0aGlzLmRvY3VtZW50Lm9uZSgibW91c2Vkb3duIixmdW5jdGlvbihzKXtzLnRhcmdldD09PXQuZWxlbWVudFswXXx8cy50YXJnZXQ9PT1pfHxlLmNvbnRhaW5zKGkscy50YXJnZXQpfHx0LmNsb3NlKCl9KX0pfSxtZW51Zm9jdXM6ZnVuY3Rpb24odCxpKXtpZih0aGlzLmlzTmV3TWVudSYmKHRoaXMuaXNOZXdNZW51PSExLHQub3JpZ2luYWxFdmVudCYmL15tb3VzZS8udGVzdCh0Lm9yaWdpbmFsRXZlbnQudHlwZSkpKXJldHVybiB0aGlzLm1lbnUuYmx1cigpLHRoaXMuZG9jdW1lbnQub25lKCJtb3VzZW1vdmUiLGZ1bmN0aW9uKCl7ZSh0LnRhcmdldCkudHJpZ2dlcih0Lm9yaWdpbmFsRXZlbnQpfSksdW5kZWZpbmVkO3ZhciBzPWkuaXRlbS5kYXRhKCJ1aS1hdXRvY29tcGxldGUtaXRlbSIpOyExIT09dGhpcy5fdHJpZ2dlcigiZm9jdXMiLHQse2l0ZW06c30pP3Qub3JpZ2luYWxFdmVudCYmL15rZXkvLnRlc3QodC5vcmlnaW5hbEV2ZW50LnR5cGUpJiZ0aGlzLl92YWx1ZShzLnZhbHVlKTp0aGlzLmxpdmVSZWdpb24udGV4dChzLnZhbHVlKX0sbWVudXNlbGVjdDpmdW5jdGlvbihlLHQpe3ZhciBpPXQuaXRlbS5kYXRhKCJ1aS1hdXRvY29tcGxldGUtaXRlbSIpLHM9dGhpcy5wcmV2aW91czt0aGlzLmVsZW1lbnRbMF0hPT10aGlzLmRvY3VtZW50WzBdLmFjdGl2ZUVsZW1lbnQmJih0aGlzLmVsZW1lbnQuZm9jdXMoKSx0aGlzLnByZXZpb3VzPXMsdGhpcy5fZGVsYXkoZnVuY3Rpb24oKXt0aGlzLnByZXZpb3VzPXMsdGhpcy5zZWxlY3RlZEl0ZW09aX0pKSwhMSE9PXRoaXMuX3RyaWdnZXIoInNlbGVjdCIsZSx7aXRlbTppfSkmJnRoaXMuX3ZhbHVlKGkudmFsdWUpLHRoaXMudGVybT10aGlzLl92YWx1ZSgpLHRoaXMuY2xvc2UoZSksdGhpcy5zZWxlY3RlZEl0ZW09aX19KSx0aGlzLmxpdmVSZWdpb249ZSgiPHNwYW4+Iix7cm9sZToic3RhdHVzIiwiYXJpYS1saXZlIjoicG9saXRlIn0pLmFkZENsYXNzKCJ1aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUiKS5pbnNlcnRCZWZvcmUodGhpcy5lbGVtZW50KSx0aGlzLl9vbih0aGlzLndpbmRvdyx7YmVmb3JldW5sb2FkOmZ1bmN0aW9uKCl7dGhpcy5lbGVtZW50LnJlbW92ZUF0dHIoImF1dG9jb21wbGV0ZSIpfX0pfSxfZGVzdHJveTpmdW5jdGlvbigpe2NsZWFyVGltZW91dCh0aGlzLnNlYXJjaGluZyksdGhpcy5lbGVtZW50LnJlbW92ZUNsYXNzKCJ1aS1hdXRvY29tcGxldGUtaW5wdXQiKS5yZW1vdmVBdHRyKCJhdXRvY29tcGxldGUiKSx0aGlzLm1lbnUuZWxlbWVudC5yZW1vdmUoKSx0aGlzLmxpdmVSZWdpb24ucmVtb3ZlKCl9LF9zZXRPcHRpb246ZnVuY3Rpb24oZSx0KXt0aGlzLl9zdXBlcihlLHQpLCJzb3VyY2UiPT09ZSYmdGhpcy5faW5pdFNvdXJjZSgpLCJhcHBlbmRUbyI9PT1lJiZ0aGlzLm1lbnUuZWxlbWVudC5hcHBlbmRUbyh0aGlzLl9hcHBlbmRUbygpKSwiZGlzYWJsZWQiPT09ZSYmdCYmdGhpcy54aHImJnRoaXMueGhyLmFib3J0KCl9LF9hcHBlbmRUbzpmdW5jdGlvbigpe3ZhciB0PXRoaXMub3B0aW9ucy5hcHBlbmRUbztyZXR1cm4gdCYmKHQ9dC5qcXVlcnl8fHQubm9kZVR5cGU/ZSh0KTp0aGlzLmRvY3VtZW50LmZpbmQodCkuZXEoMCkpLHR8fCh0PXRoaXMuZWxlbWVudC5jbG9zZXN0KCIudWktZnJvbnQiKSksdC5sZW5ndGh8fCh0PXRoaXMuZG9jdW1lbnRbMF0uYm9keSksdH0sX2luaXRTb3VyY2U6ZnVuY3Rpb24oKXt2YXIgdCxpLHM9dGhpcztlLmlzQXJyYXkodGhpcy5vcHRpb25zLnNvdXJjZSk/KHQ9dGhpcy5vcHRpb25zLnNvdXJjZSx0aGlzLnNvdXJjZT1mdW5jdGlvbihpLHMpe3MoZS51aS5hdXRvY29tcGxldGUuZmlsdGVyKHQsaS50ZXJtKSl9KToic3RyaW5nIj09dHlwZW9mIHRoaXMub3B0aW9ucy5zb3VyY2U/KGk9dGhpcy5vcHRpb25zLnNvdXJjZSx0aGlzLnNvdXJjZT1mdW5jdGlvbih0LG4pe3MueGhyJiZzLnhoci5hYm9ydCgpLHMueGhyPWUuYWpheCh7dXJsOmksZGF0YTp0LGRhdGFUeXBlOiJqc29uIixzdWNjZXNzOmZ1bmN0aW9uKGUpe24oZSl9LGVycm9yOmZ1bmN0aW9uKCl7bihbXSl9fSl9KTp0aGlzLnNvdXJjZT10aGlzLm9wdGlvbnMuc291cmNlfSxfc2VhcmNoVGltZW91dDpmdW5jdGlvbihlKXtjbGVhclRpbWVvdXQodGhpcy5zZWFyY2hpbmcpLHRoaXMuc2VhcmNoaW5nPXRoaXMuX2RlbGF5KGZ1bmN0aW9uKCl7dGhpcy50ZXJtIT09dGhpcy5fdmFsdWUoKSYmKHRoaXMuc2VsZWN0ZWRJdGVtPW51bGwsdGhpcy5zZWFyY2gobnVsbCxlKSl9LHRoaXMub3B0aW9ucy5kZWxheSl9LHNlYXJjaDpmdW5jdGlvbihlLHQpe3JldHVybiBlPW51bGwhPWU/ZTp0aGlzLl92YWx1ZSgpLHRoaXMudGVybT10aGlzLl92YWx1ZSgpLGUubGVuZ3RoPHRoaXMub3B0aW9ucy5taW5MZW5ndGg/dGhpcy5jbG9zZSh0KTp0aGlzLl90cmlnZ2VyKCJzZWFyY2giLHQpIT09ITE/dGhpcy5fc2VhcmNoKGUpOnVuZGVmaW5lZH0sX3NlYXJjaDpmdW5jdGlvbihlKXt0aGlzLnBlbmRpbmcrKyx0aGlzLmVsZW1lbnQuYWRkQ2xhc3MoInVpLWF1dG9jb21wbGV0ZS1sb2FkaW5nIiksdGhpcy5jYW5jZWxTZWFyY2g9ITEsdGhpcy5zb3VyY2Uoe3Rlcm06ZX0sdGhpcy5fcmVzcG9uc2UoKSl9LF9yZXNwb25zZTpmdW5jdGlvbigpe3ZhciB0PSsrdGhpcy5yZXF1ZXN0SW5kZXg7cmV0dXJuIGUucHJveHkoZnVuY3Rpb24oZSl7dD09PXRoaXMucmVxdWVzdEluZGV4JiZ0aGlzLl9fcmVzcG9uc2UoZSksdGhpcy5wZW5kaW5nLS0sdGhpcy5wZW5kaW5nfHx0aGlzLmVsZW1lbnQucmVtb3ZlQ2xhc3MoInVpLWF1dG9jb21wbGV0ZS1sb2FkaW5nIil9LHRoaXMpfSxfX3Jlc3BvbnNlOmZ1bmN0aW9uKGUpe2UmJihlPXRoaXMuX25vcm1hbGl6ZShlKSksdGhpcy5fdHJpZ2dlcigicmVzcG9uc2UiLG51bGwse2NvbnRlbnQ6ZX0pLCF0aGlzLm9wdGlvbnMuZGlzYWJsZWQmJmUmJmUubGVuZ3RoJiYhdGhpcy5jYW5jZWxTZWFyY2g/KHRoaXMuX3N1Z2dlc3QoZSksdGhpcy5fdHJpZ2dlcigib3BlbiIpKTp0aGlzLl9jbG9zZSgpfSxjbG9zZTpmdW5jdGlvbihlKXt0aGlzLmNhbmNlbFNlYXJjaD0hMCx0aGlzLl9jbG9zZShlKX0sX2Nsb3NlOmZ1bmN0aW9uKGUpe3RoaXMubWVudS5lbGVtZW50LmlzKCI6dmlzaWJsZSIpJiYodGhpcy5tZW51LmVsZW1lbnQuaGlkZSgpLHRoaXMubWVudS5ibHVyKCksdGhpcy5pc05ld01lbnU9ITAsdGhpcy5fdHJpZ2dlcigiY2xvc2UiLGUpKX0sX2NoYW5nZTpmdW5jdGlvbihlKXt0aGlzLnByZXZpb3VzIT09dGhpcy5fdmFsdWUoKSYmdGhpcy5fdHJpZ2dlcigiY2hhbmdlIixlLHtpdGVtOnRoaXMuc2VsZWN0ZWRJdGVtfSl9LF9ub3JtYWxpemU6ZnVuY3Rpb24odCl7cmV0dXJuIHQubGVuZ3RoJiZ0WzBdLmxhYmVsJiZ0WzBdLnZhbHVlP3Q6ZS5tYXAodCxmdW5jdGlvbih0KXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHQ/e2xhYmVsOnQsdmFsdWU6dH06ZS5leHRlbmQoe2xhYmVsOnQubGFiZWx8fHQudmFsdWUsdmFsdWU6dC52YWx1ZXx8dC5sYWJlbH0sdCl9KX0sX3N1Z2dlc3Q6ZnVuY3Rpb24odCl7dmFyIGk9dGhpcy5tZW51LmVsZW1lbnQuZW1wdHkoKTt0aGlzLl9yZW5kZXJNZW51KGksdCksdGhpcy5pc05ld01lbnU9ITAsdGhpcy5tZW51LnJlZnJlc2goKSxpLnNob3coKSx0aGlzLl9yZXNpemVNZW51KCksaS5wb3NpdGlvbihlLmV4dGVuZCh7b2Y6dGhpcy5lbGVtZW50fSx0aGlzLm9wdGlvbnMucG9zaXRpb24pKSx0aGlzLm9wdGlvbnMuYXV0b0ZvY3VzJiZ0aGlzLm1lbnUubmV4dCgpfSxfcmVzaXplTWVudTpmdW5jdGlvbigpe3ZhciBlPXRoaXMubWVudS5lbGVtZW50O2Uub3V0ZXJXaWR0aChNYXRoLm1heChlLndpZHRoKCIiKS5vdXRlcldpZHRoKCkrMSx0aGlzLmVsZW1lbnQub3V0ZXJXaWR0aCgpKSl9LF9yZW5kZXJNZW51OmZ1bmN0aW9uKHQsaSl7dmFyIHM9dGhpcztlLmVhY2goaSxmdW5jdGlvbihlLGkpe3MuX3JlbmRlckl0ZW1EYXRhKHQsaSl9KX0sX3JlbmRlckl0ZW1EYXRhOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMuX3JlbmRlckl0ZW0oZSx0KS5kYXRhKCJ1aS1hdXRvY29tcGxldGUtaXRlbSIsdCl9LF9yZW5kZXJJdGVtOmZ1bmN0aW9uKHQsaSl7cmV0dXJuIGUoIjxsaT4iKS5hcHBlbmQoZSgiPGE+IikudGV4dChpLmxhYmVsKSkuYXBwZW5kVG8odCl9LF9tb3ZlOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMubWVudS5lbGVtZW50LmlzKCI6dmlzaWJsZSIpP3RoaXMubWVudS5pc0ZpcnN0SXRlbSgpJiYvXnByZXZpb3VzLy50ZXN0KGUpfHx0aGlzLm1lbnUuaXNMYXN0SXRlbSgpJiYvXm5leHQvLnRlc3QoZSk/KHRoaXMuX3ZhbHVlKHRoaXMudGVybSksdGhpcy5tZW51LmJsdXIoKSx1bmRlZmluZWQpOih0aGlzLm1lbnVbZV0odCksdW5kZWZpbmVkKToodGhpcy5zZWFyY2gobnVsbCx0KSx1bmRlZmluZWQpfSx3aWRnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tZW51LmVsZW1lbnR9LF92YWx1ZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLnZhbHVlTWV0aG9kLmFwcGx5KHRoaXMuZWxlbWVudCxhcmd1bWVudHMpfSxfa2V5RXZlbnQ6ZnVuY3Rpb24oZSx0KXsoIXRoaXMuaXNNdWx0aUxpbmV8fHRoaXMubWVudS5lbGVtZW50LmlzKCI6dmlzaWJsZSIpKSYmKHRoaXMuX21vdmUoZSx0KSx0LnByZXZlbnREZWZhdWx0KCkpfX0pLGUuZXh0ZW5kKGUudWkuYXV0b2NvbXBsZXRlLHtlc2NhcGVSZWdleDpmdW5jdGlvbihlKXtyZXR1cm4gZS5yZXBsYWNlKC9bXC1cW1xde30oKSorPy4sXFxcXiR8I1xzXS9nLCJcXCQmIil9LGZpbHRlcjpmdW5jdGlvbih0LGkpe3ZhciBzPVJlZ0V4cChlLnVpLmF1dG9jb21wbGV0ZS5lc2NhcGVSZWdleChpKSwiaSIpO3JldHVybiBlLmdyZXAodCxmdW5jdGlvbihlKXtyZXR1cm4gcy50ZXN0KGUubGFiZWx8fGUudmFsdWV8fGUpfSl9fSksZS53aWRnZXQoInVpLmF1dG9jb21wbGV0ZSIsZS51aS5hdXRvY29tcGxldGUse29wdGlvbnM6e21lc3NhZ2VzOntub1Jlc3VsdHM6Ik5vIHNlYXJjaCByZXN1bHRzLiIscmVzdWx0czpmdW5jdGlvbihlKXtyZXR1cm4gZSsoZT4xPyIgcmVzdWx0cyBhcmUiOiIgcmVzdWx0IGlzIikrIiBhdmFpbGFibGUsIHVzZSB1cCBhbmQgZG93biBhcnJvdyBrZXlzIHRvIG5hdmlnYXRlLiJ9fX0sX19yZXNwb25zZTpmdW5jdGlvbihlKXt2YXIgdDt0aGlzLl9zdXBlckFwcGx5KGFyZ3VtZW50cyksdGhpcy5vcHRpb25zLmRpc2FibGVkfHx0aGlzLmNhbmNlbFNlYXJjaHx8KHQ9ZSYmZS5sZW5ndGg/dGhpcy5vcHRpb25zLm1lc3NhZ2VzLnJlc3VsdHMoZS5sZW5ndGgpOnRoaXMub3B0aW9ucy5tZXNzYWdlcy5ub1Jlc3VsdHMsdGhpcy5saXZlUmVnaW9uLnRleHQodCkpfX0pfSkoalF1ZXJ5KTsoZnVuY3Rpb24oZSl7dmFyIHQsaT0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWNvcm5lci1hbGwiLG49InVpLWJ1dHRvbi1pY29ucy1vbmx5IHVpLWJ1dHRvbi1pY29uLW9ubHkgdWktYnV0dG9uLXRleHQtaWNvbnMgdWktYnV0dG9uLXRleHQtaWNvbi1wcmltYXJ5IHVpLWJ1dHRvbi10ZXh0LWljb24tc2Vjb25kYXJ5IHVpLWJ1dHRvbi10ZXh0LW9ubHkiLHM9ZnVuY3Rpb24oKXt2YXIgdD1lKHRoaXMpO3NldFRpbWVvdXQoZnVuY3Rpb24oKXt0LmZpbmQoIjp1aS1idXR0b24iKS5idXR0b24oInJlZnJlc2giKX0sMSl9LGE9ZnVuY3Rpb24odCl7dmFyIGk9dC5uYW1lLG49dC5mb3JtLHM9ZShbXSk7cmV0dXJuIGkmJihpPWkucmVwbGFjZSgvJy9nLCJcXCciKSxzPW4/ZShuKS5maW5kKCJbbmFtZT0nIitpKyInXSIpOmUoIltuYW1lPSciK2krIiddIix0Lm93bmVyRG9jdW1lbnQpLmZpbHRlcihmdW5jdGlvbigpe3JldHVybiF0aGlzLmZvcm19KSksc307ZS53aWRnZXQoInVpLmJ1dHRvbiIse3ZlcnNpb246IjEuMTAuNCIsZGVmYXVsdEVsZW1lbnQ6IjxidXR0b24+IixvcHRpb25zOntkaXNhYmxlZDpudWxsLHRleHQ6ITAsbGFiZWw6bnVsbCxpY29uczp7cHJpbWFyeTpudWxsLHNlY29uZGFyeTpudWxsfX0sX2NyZWF0ZTpmdW5jdGlvbigpe3RoaXMuZWxlbWVudC5jbG9zZXN0KCJmb3JtIikudW5iaW5kKCJyZXNldCIrdGhpcy5ldmVudE5hbWVzcGFjZSkuYmluZCgicmVzZXQiK3RoaXMuZXZlbnROYW1lc3BhY2UscyksImJvb2xlYW4iIT10eXBlb2YgdGhpcy5vcHRpb25zLmRpc2FibGVkP3RoaXMub3B0aW9ucy5kaXNhYmxlZD0hIXRoaXMuZWxlbWVudC5wcm9wKCJkaXNhYmxlZCIpOnRoaXMuZWxlbWVudC5wcm9wKCJkaXNhYmxlZCIsdGhpcy5vcHRpb25zLmRpc2FibGVkKSx0aGlzLl9kZXRlcm1pbmVCdXR0b25UeXBlKCksdGhpcy5oYXNUaXRsZT0hIXRoaXMuYnV0dG9uRWxlbWVudC5hdHRyKCJ0aXRsZSIpO3ZhciBuPXRoaXMsbz10aGlzLm9wdGlvbnMscj0iY2hlY2tib3giPT09dGhpcy50eXBlfHwicmFkaW8iPT09dGhpcy50eXBlLGg9cj8iIjoidWktc3RhdGUtYWN0aXZlIjtudWxsPT09by5sYWJlbCYmKG8ubGFiZWw9ImlucHV0Ij09PXRoaXMudHlwZT90aGlzLmJ1dHRvbkVsZW1lbnQudmFsKCk6dGhpcy5idXR0b25FbGVtZW50Lmh0bWwoKSksdGhpcy5faG92ZXJhYmxlKHRoaXMuYnV0dG9uRWxlbWVudCksdGhpcy5idXR0b25FbGVtZW50LmFkZENsYXNzKGkpLmF0dHIoInJvbGUiLCJidXR0b24iKS5iaW5kKCJtb3VzZWVudGVyIit0aGlzLmV2ZW50TmFtZXNwYWNlLGZ1bmN0aW9uKCl7by5kaXNhYmxlZHx8dGhpcz09PXQmJmUodGhpcykuYWRkQ2xhc3MoInVpLXN0YXRlLWFjdGl2ZSIpfSkuYmluZCgibW91c2VsZWF2ZSIrdGhpcy5ldmVudE5hbWVzcGFjZSxmdW5jdGlvbigpe28uZGlzYWJsZWR8fGUodGhpcykucmVtb3ZlQ2xhc3MoaCl9KS5iaW5kKCJjbGljayIrdGhpcy5ldmVudE5hbWVzcGFjZSxmdW5jdGlvbihlKXtvLmRpc2FibGVkJiYoZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCkpfSksdGhpcy5fb24oe2ZvY3VzOmZ1bmN0aW9uKCl7dGhpcy5idXR0b25FbGVtZW50LmFkZENsYXNzKCJ1aS1zdGF0ZS1mb2N1cyIpfSxibHVyOmZ1bmN0aW9uKCl7dGhpcy5idXR0b25FbGVtZW50LnJlbW92ZUNsYXNzKCJ1aS1zdGF0ZS1mb2N1cyIpfX0pLHImJnRoaXMuZWxlbWVudC5iaW5kKCJjaGFuZ2UiK3RoaXMuZXZlbnROYW1lc3BhY2UsZnVuY3Rpb24oKXtuLnJlZnJlc2goKX0pLCJjaGVja2JveCI9PT10aGlzLnR5cGU/dGhpcy5idXR0b25FbGVtZW50LmJpbmQoImNsaWNrIit0aGlzLmV2ZW50TmFtZXNwYWNlLGZ1bmN0aW9uKCl7cmV0dXJuIG8uZGlzYWJsZWQ/ITE6dW5kZWZpbmVkfSk6InJhZGlvIj09PXRoaXMudHlwZT90aGlzLmJ1dHRvbkVsZW1lbnQuYmluZCgiY2xpY2siK3RoaXMuZXZlbnROYW1lc3BhY2UsZnVuY3Rpb24oKXtpZihvLmRpc2FibGVkKXJldHVybiExO2UodGhpcykuYWRkQ2xhc3MoInVpLXN0YXRlLWFjdGl2ZSIpLG4uYnV0dG9uRWxlbWVudC5hdHRyKCJhcmlhLXByZXNzZWQiLCJ0cnVlIik7dmFyIHQ9bi5lbGVtZW50WzBdO2EodCkubm90KHQpLm1hcChmdW5jdGlvbigpe3JldHVybiBlKHRoaXMpLmJ1dHRvbigid2lkZ2V0IilbMF19KS5yZW1vdmVDbGFzcygidWktc3RhdGUtYWN0aXZlIikuYXR0cigiYXJpYS1wcmVzc2VkIiwiZmFsc2UiKX0pOih0aGlzLmJ1dHRvbkVsZW1lbnQuYmluZCgibW91c2Vkb3duIit0aGlzLmV2ZW50TmFtZXNwYWNlLGZ1bmN0aW9uKCl7cmV0dXJuIG8uZGlzYWJsZWQ/ITE6KGUodGhpcykuYWRkQ2xhc3MoInVpLXN0YXRlLWFjdGl2ZSIpLHQ9dGhpcyxuLmRvY3VtZW50Lm9uZSgibW91c2V1cCIsZnVuY3Rpb24oKXt0PW51bGx9KSx1bmRlZmluZWQpfSkuYmluZCgibW91c2V1cCIrdGhpcy5ldmVudE5hbWVzcGFjZSxmdW5jdGlvbigpe3JldHVybiBvLmRpc2FibGVkPyExOihlKHRoaXMpLnJlbW92ZUNsYXNzKCJ1aS1zdGF0ZS1hY3RpdmUiKSx1bmRlZmluZWQpfSkuYmluZCgia2V5ZG93biIrdGhpcy5ldmVudE5hbWVzcGFjZSxmdW5jdGlvbih0KXtyZXR1cm4gby5kaXNhYmxlZD8hMTooKHQua2V5Q29kZT09PWUudWkua2V5Q29kZS5TUEFDRXx8dC5rZXlDb2RlPT09ZS51aS5rZXlDb2RlLkVOVEVSKSYmZSh0aGlzKS5hZGRDbGFzcygidWktc3RhdGUtYWN0aXZlIiksdW5kZWZpbmVkKX0pLmJpbmQoImtleXVwIit0aGlzLmV2ZW50TmFtZXNwYWNlKyIgYmx1ciIrdGhpcy5ldmVudE5hbWVzcGFjZSxmdW5jdGlvbigpe2UodGhpcykucmVtb3ZlQ2xhc3MoInVpLXN0YXRlLWFjdGl2ZSIpfSksdGhpcy5idXR0b25FbGVtZW50LmlzKCJhIikmJnRoaXMuYnV0dG9uRWxlbWVudC5rZXl1cChmdW5jdGlvbih0KXt0LmtleUNvZGU9PT1lLnVpLmtleUNvZGUuU1BBQ0UmJmUodGhpcykuY2xpY2soKX0pKSx0aGlzLl9zZXRPcHRpb24oImRpc2FibGVkIixvLmRpc2FibGVkKSx0aGlzLl9yZXNldEJ1dHRvbigpfSxfZGV0ZXJtaW5lQnV0dG9uVHlwZTpmdW5jdGlvbigpe3ZhciBlLHQsaTt0aGlzLnR5cGU9dGhpcy5lbGVtZW50LmlzKCJbdHlwZT1jaGVja2JveF0iKT8iY2hlY2tib3giOnRoaXMuZWxlbWVudC5pcygiW3R5cGU9cmFkaW9dIik/InJhZGlvIjp0aGlzLmVsZW1lbnQuaXMoImlucHV0Iik/ImlucHV0IjoiYnV0dG9uIiwiY2hlY2tib3giPT09dGhpcy50eXBlfHwicmFkaW8iPT09dGhpcy50eXBlPyhlPXRoaXMuZWxlbWVudC5wYXJlbnRzKCkubGFzdCgpLHQ9ImxhYmVsW2Zvcj0nIit0aGlzLmVsZW1lbnQuYXR0cigiaWQiKSsiJ10iLHRoaXMuYnV0dG9uRWxlbWVudD1lLmZpbmQodCksdGhpcy5idXR0b25FbGVtZW50Lmxlbmd0aHx8KGU9ZS5sZW5ndGg/ZS5zaWJsaW5ncygpOnRoaXMuZWxlbWVudC5zaWJsaW5ncygpLHRoaXMuYnV0dG9uRWxlbWVudD1lLmZpbHRlcih0KSx0aGlzLmJ1dHRvbkVsZW1lbnQubGVuZ3RofHwodGhpcy5idXR0b25FbGVtZW50PWUuZmluZCh0KSkpLHRoaXMuZWxlbWVudC5hZGRDbGFzcygidWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIiksaT10aGlzLmVsZW1lbnQuaXMoIjpjaGVja2VkIiksaSYmdGhpcy5idXR0b25FbGVtZW50LmFkZENsYXNzKCJ1aS1zdGF0ZS1hY3RpdmUiKSx0aGlzLmJ1dHRvbkVsZW1lbnQucHJvcCgiYXJpYS1wcmVzc2VkIixpKSk6dGhpcy5idXR0b25FbGVtZW50PXRoaXMuZWxlbWVudH0sd2lkZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYnV0dG9uRWxlbWVudH0sX2Rlc3Ryb3k6ZnVuY3Rpb24oKXt0aGlzLmVsZW1lbnQucmVtb3ZlQ2xhc3MoInVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSIpLHRoaXMuYnV0dG9uRWxlbWVudC5yZW1vdmVDbGFzcyhpKyIgdWktc3RhdGUtYWN0aXZlICIrbikucmVtb3ZlQXR0cigicm9sZSIpLnJlbW92ZUF0dHIoImFyaWEtcHJlc3NlZCIpLmh0bWwodGhpcy5idXR0b25FbGVtZW50LmZpbmQoIi51aS1idXR0b24tdGV4dCIpLmh0bWwoKSksdGhpcy5oYXNUaXRsZXx8dGhpcy5idXR0b25FbGVtZW50LnJlbW92ZUF0dHIoInRpdGxlIil9LF9zZXRPcHRpb246ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5fc3VwZXIoZSx0KSwiZGlzYWJsZWQiPT09ZT8odGhpcy5lbGVtZW50LnByb3AoImRpc2FibGVkIiwhIXQpLHQmJnRoaXMuYnV0dG9uRWxlbWVudC5yZW1vdmVDbGFzcygidWktc3RhdGUtZm9jdXMiKSx1bmRlZmluZWQpOih0aGlzLl9yZXNldEJ1dHRvbigpLHVuZGVmaW5lZCl9LHJlZnJlc2g6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmVsZW1lbnQuaXMoImlucHV0LCBidXR0b24iKT90aGlzLmVsZW1lbnQuaXMoIjpkaXNhYmxlZCIpOnRoaXMuZWxlbWVudC5oYXNDbGFzcygidWktYnV0dG9uLWRpc2FibGVkIik7dCE9PXRoaXMub3B0aW9ucy5kaXNhYmxlZCYmdGhpcy5fc2V0T3B0aW9uKCJkaXNhYmxlZCIsdCksInJhZGlvIj09PXRoaXMudHlwZT9hKHRoaXMuZWxlbWVudFswXSkuZWFjaChmdW5jdGlvbigpe2UodGhpcykuaXMoIjpjaGVja2VkIik/ZSh0aGlzKS5idXR0b24oIndpZGdldCIpLmFkZENsYXNzKCJ1aS1zdGF0ZS1hY3RpdmUiKS5hdHRyKCJhcmlhLXByZXNzZWQiLCJ0cnVlIik6ZSh0aGlzKS5idXR0b24oIndpZGdldCIpLnJlbW92ZUNsYXNzKCJ1aS1zdGF0ZS1hY3RpdmUiKS5hdHRyKCJhcmlhLXByZXNzZWQiLCJmYWxzZSIpfSk6ImNoZWNrYm94Ij09PXRoaXMudHlwZSYmKHRoaXMuZWxlbWVudC5pcygiOmNoZWNrZWQiKT90aGlzLmJ1dHRvbkVsZW1lbnQuYWRkQ2xhc3MoInVpLXN0YXRlLWFjdGl2ZSIpLmF0dHIoImFyaWEtcHJlc3NlZCIsInRydWUiKTp0aGlzLmJ1dHRvbkVsZW1lbnQucmVtb3ZlQ2xhc3MoInVpLXN0YXRlLWFjdGl2ZSIpLmF0dHIoImFyaWEtcHJlc3NlZCIsImZhbHNlIikpfSxfcmVzZXRCdXR0b246ZnVuY3Rpb24oKXtpZigiaW5wdXQiPT09dGhpcy50eXBlKXJldHVybiB0aGlzLm9wdGlvbnMubGFiZWwmJnRoaXMuZWxlbWVudC52YWwodGhpcy5vcHRpb25zLmxhYmVsKSx1bmRlZmluZWQ7dmFyIHQ9dGhpcy5idXR0b25FbGVtZW50LnJlbW92ZUNsYXNzKG4pLGk9ZSgiPHNwYW4+PC9zcGFuPiIsdGhpcy5kb2N1bWVudFswXSkuYWRkQ2xhc3MoInVpLWJ1dHRvbi10ZXh0IikuaHRtbCh0aGlzLm9wdGlvbnMubGFiZWwpLmFwcGVuZFRvKHQuZW1wdHkoKSkudGV4dCgpLHM9dGhpcy5vcHRpb25zLmljb25zLGE9cy5wcmltYXJ5JiZzLnNlY29uZGFyeSxvPVtdO3MucHJpbWFyeXx8cy5zZWNvbmRhcnk/KHRoaXMub3B0aW9ucy50ZXh0JiZvLnB1c2goInVpLWJ1dHRvbi10ZXh0LWljb24iKyhhPyJzIjpzLnByaW1hcnk/Ii1wcmltYXJ5IjoiLXNlY29uZGFyeSIpKSxzLnByaW1hcnkmJnQucHJlcGVuZCgiPHNwYW4gY2xhc3M9J3VpLWJ1dHRvbi1pY29uLXByaW1hcnkgdWktaWNvbiAiK3MucHJpbWFyeSsiJz48L3NwYW4+Iikscy5zZWNvbmRhcnkmJnQuYXBwZW5kKCI8c3BhbiBjbGFzcz0ndWktYnV0dG9uLWljb24tc2Vjb25kYXJ5IHVpLWljb24gIitzLnNlY29uZGFyeSsiJz48L3NwYW4+IiksdGhpcy5vcHRpb25zLnRleHR8fChvLnB1c2goYT8idWktYnV0dG9uLWljb25zLW9ubHkiOiJ1aS1idXR0b24taWNvbi1vbmx5IiksdGhpcy5oYXNUaXRsZXx8dC5hdHRyKCJ0aXRsZSIsZS50cmltKGkpKSkpOm8ucHVzaCgidWktYnV0dG9uLXRleHQtb25seSIpLHQuYWRkQ2xhc3Moby5qb2luKCIgIikpfX0pLGUud2lkZ2V0KCJ1aS5idXR0b25zZXQiLHt2ZXJzaW9uOiIxLjEwLjQiLG9wdGlvbnM6e2l0ZW1zOiJidXR0b24sIGlucHV0W3R5cGU9YnV0dG9uXSwgaW5wdXRbdHlwZT1zdWJtaXRdLCBpbnB1dFt0eXBlPXJlc2V0XSwgaW5wdXRbdHlwZT1jaGVja2JveF0sIGlucHV0W3R5cGU9cmFkaW9dLCBhLCA6ZGF0YSh1aS1idXR0b24pIn0sX2NyZWF0ZTpmdW5jdGlvbigpe3RoaXMuZWxlbWVudC5hZGRDbGFzcygidWktYnV0dG9uc2V0Iil9LF9pbml0OmZ1bmN0aW9uKCl7dGhpcy5yZWZyZXNoKCl9LF9zZXRPcHRpb246ZnVuY3Rpb24oZSx0KXsiZGlzYWJsZWQiPT09ZSYmdGhpcy5idXR0b25zLmJ1dHRvbigib3B0aW9uIixlLHQpLHRoaXMuX3N1cGVyKGUsdCl9LHJlZnJlc2g6ZnVuY3Rpb24oKXt2YXIgdD0icnRsIj09PXRoaXMuZWxlbWVudC5jc3MoImRpcmVjdGlvbiIpO3RoaXMuYnV0dG9ucz10aGlzLmVsZW1lbnQuZmluZCh0aGlzLm9wdGlvbnMuaXRlbXMpLmZpbHRlcigiOnVpLWJ1dHRvbiIpLmJ1dHRvbigicmVmcmVzaCIpLmVuZCgpLm5vdCgiOnVpLWJ1dHRvbiIpLmJ1dHRvbigpLmVuZCgpLm1hcChmdW5jdGlvbigpe3JldHVybiBlKHRoaXMpLmJ1dHRvbigid2lkZ2V0IilbMF19KS5yZW1vdmVDbGFzcygidWktY29ybmVyLWFsbCB1aS1jb3JuZXItbGVmdCB1aS1jb3JuZXItcmlnaHQiKS5maWx0ZXIoIjpmaXJzdCIpLmFkZENsYXNzKHQ/InVpLWNvcm5lci1yaWdodCI6InVpLWNvcm5lci1sZWZ0IikuZW5kKCkuZmlsdGVyKCI6bGFzdCIpLmFkZENsYXNzKHQ/InVpLWNvcm5lci1sZWZ0IjoidWktY29ybmVyLXJpZ2h0IikuZW5kKCkuZW5kKCl9LF9kZXN0cm95OmZ1bmN0aW9uKCl7dGhpcy5lbGVtZW50LnJlbW92ZUNsYXNzKCJ1aS1idXR0b25zZXQiKSx0aGlzLmJ1dHRvbnMubWFwKGZ1bmN0aW9uKCl7cmV0dXJuIGUodGhpcykuYnV0dG9uKCJ3aWRnZXQiKVswXX0pLnJlbW92ZUNsYXNzKCJ1aS1jb3JuZXItbGVmdCB1aS1jb3JuZXItcmlnaHQiKS5lbmQoKS5idXR0b24oImRlc3Ryb3kiKX19KX0pKGpRdWVyeSk7KGZ1bmN0aW9uKGUsdCl7ZnVuY3Rpb24gaSgpe3RoaXMuX2N1ckluc3Q9bnVsbCx0aGlzLl9rZXlFdmVudD0hMSx0aGlzLl9kaXNhYmxlZElucHV0cz1bXSx0aGlzLl9kYXRlcGlja2VyU2hvd2luZz0hMSx0aGlzLl9pbkRpYWxvZz0hMSx0aGlzLl9tYWluRGl2SWQ9InVpLWRhdGVwaWNrZXItZGl2Iix0aGlzLl9pbmxpbmVDbGFzcz0idWktZGF0ZXBpY2tlci1pbmxpbmUiLHRoaXMuX2FwcGVuZENsYXNzPSJ1aS1kYXRlcGlja2VyLWFwcGVuZCIsdGhpcy5fdHJpZ2dlckNsYXNzPSJ1aS1kYXRlcGlja2VyLXRyaWdnZXIiLHRoaXMuX2RpYWxvZ0NsYXNzPSJ1aS1kYXRlcGlja2VyLWRpYWxvZyIsdGhpcy5fZGlzYWJsZUNsYXNzPSJ1aS1kYXRlcGlja2VyLWRpc2FibGVkIix0aGlzLl91bnNlbGVjdGFibGVDbGFzcz0idWktZGF0ZXBpY2tlci11bnNlbGVjdGFibGUiLHRoaXMuX2N1cnJlbnRDbGFzcz0idWktZGF0ZXBpY2tlci1jdXJyZW50LWRheSIsdGhpcy5fZGF5T3ZlckNsYXNzPSJ1aS1kYXRlcGlja2VyLWRheXMtY2VsbC1vdmVyIix0aGlzLnJlZ2lvbmFsPVtdLHRoaXMucmVnaW9uYWxbIiJdPXtjbG9zZVRleHQ6IkRvbmUiLHByZXZUZXh0OiJQcmV2IixuZXh0VGV4dDoiTmV4dCIsY3VycmVudFRleHQ6IlRvZGF5Iixtb250aE5hbWVzOlsiSmFudWFyeSIsIkZlYnJ1YXJ5IiwiTWFyY2giLCJBcHJpbCIsIk1heSIsIkp1bmUiLCJKdWx5IiwiQXVndXN0IiwiU2VwdGVtYmVyIiwiT2N0b2JlciIsIk5vdmVtYmVyIiwiRGVjZW1iZXIiXSxtb250aE5hbWVzU2hvcnQ6WyJKYW4iLCJGZWIiLCJNYXIiLCJBcHIiLCJNYXkiLCJKdW4iLCJKdWwiLCJBdWciLCJTZXAiLCJPY3QiLCJOb3YiLCJEZWMiXSxkYXlOYW1lczpbIlN1bmRheSIsIk1vbmRheSIsIlR1ZXNkYXkiLCJXZWRuZXNkYXkiLCJUaHVyc2RheSIsIkZyaWRheSIsIlNhdHVyZGF5Il0sZGF5TmFtZXNTaG9ydDpbIlN1biIsIk1vbiIsIlR1ZSIsIldlZCIsIlRodSIsIkZyaSIsIlNhdCJdLGRheU5hbWVzTWluOlsiU3UiLCJNbyIsIlR1IiwiV2UiLCJUaCIsIkZyIiwiU2EiXSx3ZWVrSGVhZGVyOiJXayIsZGF0ZUZvcm1hdDoibW0vZGQveXkiLGZpcnN0RGF5OjAsaXNSVEw6ITEsc2hvd01vbnRoQWZ0ZXJZZWFyOiExLHllYXJTdWZmaXg6IiJ9LHRoaXMuX2RlZmF1bHRzPXtzaG93T246ImZvY3VzIixzaG93QW5pbToiZmFkZUluIixzaG93T3B0aW9uczp7fSxkZWZhdWx0RGF0ZTpudWxsLGFwcGVuZFRleHQ6IiIsYnV0dG9uVGV4dDoiLi4uIixidXR0b25JbWFnZToiIixidXR0b25JbWFnZU9ubHk6ITEsaGlkZUlmTm9QcmV2TmV4dDohMSxuYXZpZ2F0aW9uQXNEYXRlRm9ybWF0OiExLGdvdG9DdXJyZW50OiExLGNoYW5nZU1vbnRoOiExLGNoYW5nZVllYXI6ITEseWVhclJhbmdlOiJjLTEwOmMrMTAiLHNob3dPdGhlck1vbnRoczohMSxzZWxlY3RPdGhlck1vbnRoczohMSxzaG93V2VlazohMSxjYWxjdWxhdGVXZWVrOnRoaXMuaXNvODYwMVdlZWssc2hvcnRZZWFyQ3V0b2ZmOiIrMTAiLG1pbkRhdGU6bnVsbCxtYXhEYXRlOm51bGwsZHVyYXRpb246ImZhc3QiLGJlZm9yZVNob3dEYXk6bnVsbCxiZWZvcmVTaG93Om51bGwsb25TZWxlY3Q6bnVsbCxvbkNoYW5nZU1vbnRoWWVhcjpudWxsLG9uQ2xvc2U6bnVsbCxudW1iZXJPZk1vbnRoczoxLHNob3dDdXJyZW50QXRQb3M6MCxzdGVwTW9udGhzOjEsc3RlcEJpZ01vbnRoczoxMixhbHRGaWVsZDoiIixhbHRGb3JtYXQ6IiIsY29uc3RyYWluSW5wdXQ6ITAsc2hvd0J1dHRvblBhbmVsOiExLGF1dG9TaXplOiExLGRpc2FibGVkOiExfSxlLmV4dGVuZCh0aGlzLl9kZWZhdWx0cyx0aGlzLnJlZ2lvbmFsWyIiXSksdGhpcy5kcERpdj1hKGUoIjxkaXYgaWQ9JyIrdGhpcy5fbWFpbkRpdklkKyInIGNsYXNzPSd1aS1kYXRlcGlja2VyIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLWFsbCc+PC9kaXY+IikpfWZ1bmN0aW9uIGEodCl7dmFyIGk9ImJ1dHRvbiwgLnVpLWRhdGVwaWNrZXItcHJldiwgLnVpLWRhdGVwaWNrZXItbmV4dCwgLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGQgYSI7cmV0dXJuIHQuZGVsZWdhdGUoaSwibW91c2VvdXQiLGZ1bmN0aW9uKCl7ZSh0aGlzKS5yZW1vdmVDbGFzcygidWktc3RhdGUtaG92ZXIiKSwtMSE9PXRoaXMuY2xhc3NOYW1lLmluZGV4T2YoInVpLWRhdGVwaWNrZXItcHJldiIpJiZlKHRoaXMpLnJlbW92ZUNsYXNzKCJ1aS1kYXRlcGlja2VyLXByZXYtaG92ZXIiKSwtMSE9PXRoaXMuY2xhc3NOYW1lLmluZGV4T2YoInVpLWRhdGVwaWNrZXItbmV4dCIpJiZlKHRoaXMpLnJlbW92ZUNsYXNzKCJ1aS1kYXRlcGlja2VyLW5leHQtaG92ZXIiKX0pLmRlbGVnYXRlKGksIm1vdXNlb3ZlciIsZnVuY3Rpb24oKXtlLmRhdGVwaWNrZXIuX2lzRGlzYWJsZWREYXRlcGlja2VyKG4uaW5saW5lP3QucGFyZW50KClbMF06bi5pbnB1dFswXSl8fChlKHRoaXMpLnBhcmVudHMoIi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIikuZmluZCgiYSIpLnJlbW92ZUNsYXNzKCJ1aS1zdGF0ZS1ob3ZlciIpLGUodGhpcykuYWRkQ2xhc3MoInVpLXN0YXRlLWhvdmVyIiksLTEhPT10aGlzLmNsYXNzTmFtZS5pbmRleE9mKCJ1aS1kYXRlcGlja2VyLXByZXYiKSYmZSh0aGlzKS5hZGRDbGFzcygidWktZGF0ZXBpY2tlci1wcmV2LWhvdmVyIiksLTEhPT10aGlzLmNsYXNzTmFtZS5pbmRleE9mKCJ1aS1kYXRlcGlja2VyLW5leHQiKSYmZSh0aGlzKS5hZGRDbGFzcygidWktZGF0ZXBpY2tlci1uZXh0LWhvdmVyIikpfSl9ZnVuY3Rpb24gcyh0LGkpe2UuZXh0ZW5kKHQsaSk7Zm9yKHZhciBhIGluIGkpbnVsbD09aVthXSYmKHRbYV09aVthXSk7cmV0dXJuIHR9ZS5leHRlbmQoZS51aSx7ZGF0ZXBpY2tlcjp7dmVyc2lvbjoiMS4xMC40In19KTt2YXIgbixyPSJkYXRlcGlja2VyIjtlLmV4dGVuZChpLnByb3RvdHlwZSx7bWFya2VyQ2xhc3NOYW1lOiJoYXNEYXRlcGlja2VyIixtYXhSb3dzOjQsX3dpZGdldERhdGVwaWNrZXI6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5kcERpdn0sc2V0RGVmYXVsdHM6ZnVuY3Rpb24oZSl7cmV0dXJuIHModGhpcy5fZGVmYXVsdHMsZXx8e30pLHRoaXN9LF9hdHRhY2hEYXRlcGlja2VyOmZ1bmN0aW9uKHQsaSl7dmFyIGEscyxuO2E9dC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLHM9ImRpdiI9PT1hfHwic3BhbiI9PT1hLHQuaWR8fCh0aGlzLnV1aWQrPTEsdC5pZD0iZHAiK3RoaXMudXVpZCksbj10aGlzLl9uZXdJbnN0KGUodCkscyksbi5zZXR0aW5ncz1lLmV4dGVuZCh7fSxpfHx7fSksImlucHV0Ij09PWE/dGhpcy5fY29ubmVjdERhdGVwaWNrZXIodCxuKTpzJiZ0aGlzLl9pbmxpbmVEYXRlcGlja2VyKHQsbil9LF9uZXdJbnN0OmZ1bmN0aW9uKHQsaSl7dmFyIHM9dFswXS5pZC5yZXBsYWNlKC8oW15BLVphLXowLTlfXC1dKS9nLCJcXFxcJDEiKTtyZXR1cm57aWQ6cyxpbnB1dDp0LHNlbGVjdGVkRGF5OjAsc2VsZWN0ZWRNb250aDowLHNlbGVjdGVkWWVhcjowLGRyYXdNb250aDowLGRyYXdZZWFyOjAsaW5saW5lOmksZHBEaXY6aT9hKGUoIjxkaXYgY2xhc3M9JyIrdGhpcy5faW5saW5lQ2xhc3MrIiB1aS1kYXRlcGlja2VyIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1oZWxwZXItY2xlYXJmaXggdWktY29ybmVyLWFsbCc+PC9kaXY+IikpOnRoaXMuZHBEaXZ9fSxfY29ubmVjdERhdGVwaWNrZXI6ZnVuY3Rpb24odCxpKXt2YXIgYT1lKHQpO2kuYXBwZW5kPWUoW10pLGkudHJpZ2dlcj1lKFtdKSxhLmhhc0NsYXNzKHRoaXMubWFya2VyQ2xhc3NOYW1lKXx8KHRoaXMuX2F0dGFjaG1lbnRzKGEsaSksYS5hZGRDbGFzcyh0aGlzLm1hcmtlckNsYXNzTmFtZSkua2V5ZG93bih0aGlzLl9kb0tleURvd24pLmtleXByZXNzKHRoaXMuX2RvS2V5UHJlc3MpLmtleXVwKHRoaXMuX2RvS2V5VXApLHRoaXMuX2F1dG9TaXplKGkpLGUuZGF0YSh0LHIsaSksaS5zZXR0aW5ncy5kaXNhYmxlZCYmdGhpcy5fZGlzYWJsZURhdGVwaWNrZXIodCkpfSxfYXR0YWNobWVudHM6ZnVuY3Rpb24odCxpKXt2YXIgYSxzLG4scj10aGlzLl9nZXQoaSwiYXBwZW5kVGV4dCIpLG89dGhpcy5fZ2V0KGksImlzUlRMIik7aS5hcHBlbmQmJmkuYXBwZW5kLnJlbW92ZSgpLHImJihpLmFwcGVuZD1lKCI8c3BhbiBjbGFzcz0nIit0aGlzLl9hcHBlbmRDbGFzcysiJz4iK3IrIjwvc3Bhbj4iKSx0W28/ImJlZm9yZSI6ImFmdGVyIl0oaS5hcHBlbmQpKSx0LnVuYmluZCgiZm9jdXMiLHRoaXMuX3Nob3dEYXRlcGlja2VyKSxpLnRyaWdnZXImJmkudHJpZ2dlci5yZW1vdmUoKSxhPXRoaXMuX2dldChpLCJzaG93T24iKSwoImZvY3VzIj09PWF8fCJib3RoIj09PWEpJiZ0LmZvY3VzKHRoaXMuX3Nob3dEYXRlcGlja2VyKSwoImJ1dHRvbiI9PT1hfHwiYm90aCI9PT1hKSYmKHM9dGhpcy5fZ2V0KGksImJ1dHRvblRleHQiKSxuPXRoaXMuX2dldChpLCJidXR0b25JbWFnZSIpLGkudHJpZ2dlcj1lKHRoaXMuX2dldChpLCJidXR0b25JbWFnZU9ubHkiKT9lKCI8aW1nLz4iKS5hZGRDbGFzcyh0aGlzLl90cmlnZ2VyQ2xhc3MpLmF0dHIoe3NyYzpuLGFsdDpzLHRpdGxlOnN9KTplKCI8YnV0dG9uIHR5cGU9J2J1dHRvbic+PC9idXR0b24+IikuYWRkQ2xhc3ModGhpcy5fdHJpZ2dlckNsYXNzKS5odG1sKG4/ZSgiPGltZy8+IikuYXR0cih7c3JjOm4sYWx0OnMsdGl0bGU6c30pOnMpKSx0W28/ImJlZm9yZSI6ImFmdGVyIl0oaS50cmlnZ2VyKSxpLnRyaWdnZXIuY2xpY2soZnVuY3Rpb24oKXtyZXR1cm4gZS5kYXRlcGlja2VyLl9kYXRlcGlja2VyU2hvd2luZyYmZS5kYXRlcGlja2VyLl9sYXN0SW5wdXQ9PT10WzBdP2UuZGF0ZXBpY2tlci5faGlkZURhdGVwaWNrZXIoKTplLmRhdGVwaWNrZXIuX2RhdGVwaWNrZXJTaG93aW5nJiZlLmRhdGVwaWNrZXIuX2xhc3RJbnB1dCE9PXRbMF0/KGUuZGF0ZXBpY2tlci5faGlkZURhdGVwaWNrZXIoKSxlLmRhdGVwaWNrZXIuX3Nob3dEYXRlcGlja2VyKHRbMF0pKTplLmRhdGVwaWNrZXIuX3Nob3dEYXRlcGlja2VyKHRbMF0pLCExfSkpfSxfYXV0b1NpemU6ZnVuY3Rpb24oZSl7aWYodGhpcy5fZ2V0KGUsImF1dG9TaXplIikmJiFlLmlubGluZSl7dmFyIHQsaSxhLHMsbj1uZXcgRGF0ZSgyMDA5LDExLDIwKSxyPXRoaXMuX2dldChlLCJkYXRlRm9ybWF0Iik7ci5tYXRjaCgvW0RNXS8pJiYodD1mdW5jdGlvbihlKXtmb3IoaT0wLGE9MCxzPTA7ZS5sZW5ndGg+cztzKyspZVtzXS5sZW5ndGg+aSYmKGk9ZVtzXS5sZW5ndGgsYT1zKTtyZXR1cm4gYX0sbi5zZXRNb250aCh0KHRoaXMuX2dldChlLHIubWF0Y2goL01NLyk/Im1vbnRoTmFtZXMiOiJtb250aE5hbWVzU2hvcnQiKSkpLG4uc2V0RGF0ZSh0KHRoaXMuX2dldChlLHIubWF0Y2goL0RELyk/ImRheU5hbWVzIjoiZGF5TmFtZXNTaG9ydCIpKSsyMC1uLmdldERheSgpKSksZS5pbnB1dC5hdHRyKCJzaXplIix0aGlzLl9mb3JtYXREYXRlKGUsbikubGVuZ3RoKX19LF9pbmxpbmVEYXRlcGlja2VyOmZ1bmN0aW9uKHQsaSl7dmFyIGE9ZSh0KTthLmhhc0NsYXNzKHRoaXMubWFya2VyQ2xhc3NOYW1lKXx8KGEuYWRkQ2xhc3ModGhpcy5tYXJrZXJDbGFzc05hbWUpLmFwcGVuZChpLmRwRGl2KSxlLmRhdGEodCxyLGkpLHRoaXMuX3NldERhdGUoaSx0aGlzLl9nZXREZWZhdWx0RGF0ZShpKSwhMCksdGhpcy5fdXBkYXRlRGF0ZXBpY2tlcihpKSx0aGlzLl91cGRhdGVBbHRlcm5hdGUoaSksaS5zZXR0aW5ncy5kaXNhYmxlZCYmdGhpcy5fZGlzYWJsZURhdGVwaWNrZXIodCksaS5kcERpdi5jc3MoImRpc3BsYXkiLCJibG9jayIpKX0sX2RpYWxvZ0RhdGVwaWNrZXI6ZnVuY3Rpb24odCxpLGEsbixvKXt2YXIgdSxjLGgsbCxkLHA9dGhpcy5fZGlhbG9nSW5zdDtyZXR1cm4gcHx8KHRoaXMudXVpZCs9MSx1PSJkcCIrdGhpcy51dWlkLHRoaXMuX2RpYWxvZ0lucHV0PWUoIjxpbnB1dCB0eXBlPSd0ZXh0JyBpZD0nIit1KyInIHN0eWxlPSdwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogLTEwMHB4OyB3aWR0aDogMHB4OycvPiIpLHRoaXMuX2RpYWxvZ0lucHV0LmtleWRvd24odGhpcy5fZG9LZXlEb3duKSxlKCJib2R5IikuYXBwZW5kKHRoaXMuX2RpYWxvZ0lucHV0KSxwPXRoaXMuX2RpYWxvZ0luc3Q9dGhpcy5fbmV3SW5zdCh0aGlzLl9kaWFsb2dJbnB1dCwhMSkscC5zZXR0aW5ncz17fSxlLmRhdGEodGhpcy5fZGlhbG9nSW5wdXRbMF0scixwKSkscyhwLnNldHRpbmdzLG58fHt9KSxpPWkmJmkuY29uc3RydWN0b3I9PT1EYXRlP3RoaXMuX2Zvcm1hdERhdGUocCxpKTppLHRoaXMuX2RpYWxvZ0lucHV0LnZhbChpKSx0aGlzLl9wb3M9bz9vLmxlbmd0aD9vOltvLnBhZ2VYLG8ucGFnZVldOm51bGwsdGhpcy5fcG9zfHwoYz1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGgsaD1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0LGw9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnR8fGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCxkPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3B8fGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wLHRoaXMuX3Bvcz1bYy8yLTEwMCtsLGgvMi0xNTArZF0pLHRoaXMuX2RpYWxvZ0lucHV0LmNzcygibGVmdCIsdGhpcy5fcG9zWzBdKzIwKyJweCIpLmNzcygidG9wIix0aGlzLl9wb3NbMV0rInB4IikscC5zZXR0aW5ncy5vblNlbGVjdD1hLHRoaXMuX2luRGlhbG9nPSEwLHRoaXMuZHBEaXYuYWRkQ2xhc3ModGhpcy5fZGlhbG9nQ2xhc3MpLHRoaXMuX3Nob3dEYXRlcGlja2VyKHRoaXMuX2RpYWxvZ0lucHV0WzBdKSxlLmJsb2NrVUkmJmUuYmxvY2tVSSh0aGlzLmRwRGl2KSxlLmRhdGEodGhpcy5fZGlhbG9nSW5wdXRbMF0scixwKSx0aGlzfSxfZGVzdHJveURhdGVwaWNrZXI6ZnVuY3Rpb24odCl7dmFyIGksYT1lKHQpLHM9ZS5kYXRhKHQscik7YS5oYXNDbGFzcyh0aGlzLm1hcmtlckNsYXNzTmFtZSkmJihpPXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSxlLnJlbW92ZURhdGEodCxyKSwiaW5wdXQiPT09aT8ocy5hcHBlbmQucmVtb3ZlKCkscy50cmlnZ2VyLnJlbW92ZSgpLGEucmVtb3ZlQ2xhc3ModGhpcy5tYXJrZXJDbGFzc05hbWUpLnVuYmluZCgiZm9jdXMiLHRoaXMuX3Nob3dEYXRlcGlja2VyKS51bmJpbmQoImtleWRvd24iLHRoaXMuX2RvS2V5RG93bikudW5iaW5kKCJrZXlwcmVzcyIsdGhpcy5fZG9LZXlQcmVzcykudW5iaW5kKCJrZXl1cCIsdGhpcy5fZG9LZXlVcCkpOigiZGl2Ij09PWl8fCJzcGFuIj09PWkpJiZhLnJlbW92ZUNsYXNzKHRoaXMubWFya2VyQ2xhc3NOYW1lKS5lbXB0eSgpKX0sX2VuYWJsZURhdGVwaWNrZXI6ZnVuY3Rpb24odCl7dmFyIGksYSxzPWUodCksbj1lLmRhdGEodCxyKTtzLmhhc0NsYXNzKHRoaXMubWFya2VyQ2xhc3NOYW1lKSYmKGk9dC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLCJpbnB1dCI9PT1pPyh0LmRpc2FibGVkPSExLG4udHJpZ2dlci5maWx0ZXIoImJ1dHRvbiIpLmVhY2goZnVuY3Rpb24oKXt0aGlzLmRpc2FibGVkPSExfSkuZW5kKCkuZmlsdGVyKCJpbWciKS5jc3Moe29wYWNpdHk6IjEuMCIsY3Vyc29yOiIifSkpOigiZGl2Ij09PWl8fCJzcGFuIj09PWkpJiYoYT1zLmNoaWxkcmVuKCIuIit0aGlzLl9pbmxpbmVDbGFzcyksYS5jaGlsZHJlbigpLnJlbW92ZUNsYXNzKCJ1aS1zdGF0ZS1kaXNhYmxlZCIpLGEuZmluZCgic2VsZWN0LnVpLWRhdGVwaWNrZXItbW9udGgsIHNlbGVjdC51aS1kYXRlcGlja2VyLXllYXIiKS5wcm9wKCJkaXNhYmxlZCIsITEpKSx0aGlzLl9kaXNhYmxlZElucHV0cz1lLm1hcCh0aGlzLl9kaXNhYmxlZElucHV0cyxmdW5jdGlvbihlKXtyZXR1cm4gZT09PXQ/bnVsbDplfSkpfSxfZGlzYWJsZURhdGVwaWNrZXI6ZnVuY3Rpb24odCl7dmFyIGksYSxzPWUodCksbj1lLmRhdGEodCxyKTtzLmhhc0NsYXNzKHRoaXMubWFya2VyQ2xhc3NOYW1lKSYmKGk9dC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLCJpbnB1dCI9PT1pPyh0LmRpc2FibGVkPSEwLG4udHJpZ2dlci5maWx0ZXIoImJ1dHRvbiIpLmVhY2goZnVuY3Rpb24oKXt0aGlzLmRpc2FibGVkPSEwfSkuZW5kKCkuZmlsdGVyKCJpbWciKS5jc3Moe29wYWNpdHk6IjAuNSIsY3Vyc29yOiJkZWZhdWx0In0pKTooImRpdiI9PT1pfHwic3BhbiI9PT1pKSYmKGE9cy5jaGlsZHJlbigiLiIrdGhpcy5faW5saW5lQ2xhc3MpLGEuY2hpbGRyZW4oKS5hZGRDbGFzcygidWktc3RhdGUtZGlzYWJsZWQiKSxhLmZpbmQoInNlbGVjdC51aS1kYXRlcGlja2VyLW1vbnRoLCBzZWxlY3QudWktZGF0ZXBpY2tlci15ZWFyIikucHJvcCgiZGlzYWJsZWQiLCEwKSksdGhpcy5fZGlzYWJsZWRJbnB1dHM9ZS5tYXAodGhpcy5fZGlzYWJsZWRJbnB1dHMsZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT10P251bGw6ZX0pLHRoaXMuX2Rpc2FibGVkSW5wdXRzW3RoaXMuX2Rpc2FibGVkSW5wdXRzLmxlbmd0aF09dCl9LF9pc0Rpc2FibGVkRGF0ZXBpY2tlcjpmdW5jdGlvbihlKXtpZighZSlyZXR1cm4hMTtmb3IodmFyIHQ9MDt0aGlzLl9kaXNhYmxlZElucHV0cy5sZW5ndGg+dDt0KyspaWYodGhpcy5fZGlzYWJsZWRJbnB1dHNbdF09PT1lKXJldHVybiEwO3JldHVybiExfSxfZ2V0SW5zdDpmdW5jdGlvbih0KXt0cnl7cmV0dXJuIGUuZGF0YSh0LHIpfWNhdGNoKGkpe3Rocm93Ik1pc3NpbmcgaW5zdGFuY2UgZGF0YSBmb3IgdGhpcyBkYXRlcGlja2VyIn19LF9vcHRpb25EYXRlcGlja2VyOmZ1bmN0aW9uKGksYSxuKXt2YXIgcixvLHUsYyxoPXRoaXMuX2dldEluc3QoaSk7cmV0dXJuIDI9PT1hcmd1bWVudHMubGVuZ3RoJiYic3RyaW5nIj09dHlwZW9mIGE/ImRlZmF1bHRzIj09PWE/ZS5leHRlbmQoe30sZS5kYXRlcGlja2VyLl9kZWZhdWx0cyk6aD8iYWxsIj09PWE/ZS5leHRlbmQoe30saC5zZXR0aW5ncyk6dGhpcy5fZ2V0KGgsYSk6bnVsbDoocj1hfHx7fSwic3RyaW5nIj09dHlwZW9mIGEmJihyPXt9LHJbYV09biksaCYmKHRoaXMuX2N1ckluc3Q9PT1oJiZ0aGlzLl9oaWRlRGF0ZXBpY2tlcigpLG89dGhpcy5fZ2V0RGF0ZURhdGVwaWNrZXIoaSwhMCksdT10aGlzLl9nZXRNaW5NYXhEYXRlKGgsIm1pbiIpLGM9dGhpcy5fZ2V0TWluTWF4RGF0ZShoLCJtYXgiKSxzKGguc2V0dGluZ3MsciksbnVsbCE9PXUmJnIuZGF0ZUZvcm1hdCE9PXQmJnIubWluRGF0ZT09PXQmJihoLnNldHRpbmdzLm1pbkRhdGU9dGhpcy5fZm9ybWF0RGF0ZShoLHUpKSxudWxsIT09YyYmci5kYXRlRm9ybWF0IT09dCYmci5tYXhEYXRlPT09dCYmKGguc2V0dGluZ3MubWF4RGF0ZT10aGlzLl9mb3JtYXREYXRlKGgsYykpLCJkaXNhYmxlZCJpbiByJiYoci5kaXNhYmxlZD90aGlzLl9kaXNhYmxlRGF0ZXBpY2tlcihpKTp0aGlzLl9lbmFibGVEYXRlcGlja2VyKGkpKSx0aGlzLl9hdHRhY2htZW50cyhlKGkpLGgpLHRoaXMuX2F1dG9TaXplKGgpLHRoaXMuX3NldERhdGUoaCxvKSx0aGlzLl91cGRhdGVBbHRlcm5hdGUoaCksdGhpcy5fdXBkYXRlRGF0ZXBpY2tlcihoKSksdCl9LF9jaGFuZ2VEYXRlcGlja2VyOmZ1bmN0aW9uKGUsdCxpKXt0aGlzLl9vcHRpb25EYXRlcGlja2VyKGUsdCxpKX0sX3JlZnJlc2hEYXRlcGlja2VyOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuX2dldEluc3QoZSk7dCYmdGhpcy5fdXBkYXRlRGF0ZXBpY2tlcih0KX0sX3NldERhdGVEYXRlcGlja2VyOmZ1bmN0aW9uKGUsdCl7dmFyIGk9dGhpcy5fZ2V0SW5zdChlKTtpJiYodGhpcy5fc2V0RGF0ZShpLHQpLHRoaXMuX3VwZGF0ZURhdGVwaWNrZXIoaSksdGhpcy5fdXBkYXRlQWx0ZXJuYXRlKGkpKX0sX2dldERhdGVEYXRlcGlja2VyOmZ1bmN0aW9uKGUsdCl7dmFyIGk9dGhpcy5fZ2V0SW5zdChlKTtyZXR1cm4gaSYmIWkuaW5saW5lJiZ0aGlzLl9zZXREYXRlRnJvbUZpZWxkKGksdCksaT90aGlzLl9nZXREYXRlKGkpOm51bGx9LF9kb0tleURvd246ZnVuY3Rpb24odCl7dmFyIGksYSxzLG49ZS5kYXRlcGlja2VyLl9nZXRJbnN0KHQudGFyZ2V0KSxyPSEwLG89bi5kcERpdi5pcygiLnVpLWRhdGVwaWNrZXItcnRsIik7aWYobi5fa2V5RXZlbnQ9ITAsZS5kYXRlcGlja2VyLl9kYXRlcGlja2VyU2hvd2luZylzd2l0Y2godC5rZXlDb2RlKXtjYXNlIDk6ZS5kYXRlcGlja2VyLl9oaWRlRGF0ZXBpY2tlcigpLHI9ITE7YnJlYWs7Y2FzZSAxMzpyZXR1cm4gcz1lKCJ0ZC4iK2UuZGF0ZXBpY2tlci5fZGF5T3ZlckNsYXNzKyI6bm90KC4iK2UuZGF0ZXBpY2tlci5fY3VycmVudENsYXNzKyIpIixuLmRwRGl2KSxzWzBdJiZlLmRhdGVwaWNrZXIuX3NlbGVjdERheSh0LnRhcmdldCxuLnNlbGVjdGVkTW9udGgsbi5zZWxlY3RlZFllYXIsc1swXSksaT1lLmRhdGVwaWNrZXIuX2dldChuLCJvblNlbGVjdCIpLGk/KGE9ZS5kYXRlcGlja2VyLl9mb3JtYXREYXRlKG4pLGkuYXBwbHkobi5pbnB1dD9uLmlucHV0WzBdOm51bGwsW2Esbl0pKTplLmRhdGVwaWNrZXIuX2hpZGVEYXRlcGlja2VyKCksITE7Y2FzZSAyNzplLmRhdGVwaWNrZXIuX2hpZGVEYXRlcGlja2VyKCk7YnJlYWs7Y2FzZSAzMzplLmRhdGVwaWNrZXIuX2FkanVzdERhdGUodC50YXJnZXQsdC5jdHJsS2V5Py1lLmRhdGVwaWNrZXIuX2dldChuLCJzdGVwQmlnTW9udGhzIik6LWUuZGF0ZXBpY2tlci5fZ2V0KG4sInN0ZXBNb250aHMiKSwiTSIpO2JyZWFrO2Nhc2UgMzQ6ZS5kYXRlcGlja2VyLl9hZGp1c3REYXRlKHQudGFyZ2V0LHQuY3RybEtleT8rZS5kYXRlcGlja2VyLl9nZXQobiwic3RlcEJpZ01vbnRocyIpOitlLmRhdGVwaWNrZXIuX2dldChuLCJzdGVwTW9udGhzIiksIk0iKTticmVhaztjYXNlIDM1Oih0LmN0cmxLZXl8fHQubWV0YUtleSkmJmUuZGF0ZXBpY2tlci5fY2xlYXJEYXRlKHQudGFyZ2V0KSxyPXQuY3RybEtleXx8dC5tZXRhS2V5O2JyZWFrO2Nhc2UgMzY6KHQuY3RybEtleXx8dC5tZXRhS2V5KSYmZS5kYXRlcGlja2VyLl9nb3RvVG9kYXkodC50YXJnZXQpLHI9dC5jdHJsS2V5fHx0Lm1ldGFLZXk7YnJlYWs7Y2FzZSAzNzoodC5jdHJsS2V5fHx0Lm1ldGFLZXkpJiZlLmRhdGVwaWNrZXIuX2FkanVzdERhdGUodC50YXJnZXQsbz8xOi0xLCJEIikscj10LmN0cmxLZXl8fHQubWV0YUtleSx0Lm9yaWdpbmFsRXZlbnQuYWx0S2V5JiZlLmRhdGVwaWNrZXIuX2FkanVzdERhdGUodC50YXJnZXQsdC5jdHJsS2V5Py1lLmRhdGVwaWNrZXIuX2dldChuLCJzdGVwQmlnTW9udGhzIik6LWUuZGF0ZXBpY2tlci5fZ2V0KG4sInN0ZXBNb250aHMiKSwiTSIpO2JyZWFrO2Nhc2UgMzg6KHQuY3RybEtleXx8dC5tZXRhS2V5KSYmZS5kYXRlcGlja2VyLl9hZGp1c3REYXRlKHQudGFyZ2V0LC03LCJEIikscj10LmN0cmxLZXl8fHQubWV0YUtleTticmVhaztjYXNlIDM5Oih0LmN0cmxLZXl8fHQubWV0YUtleSkmJmUuZGF0ZXBpY2tlci5fYWRqdXN0RGF0ZSh0LnRhcmdldCxvPy0xOjEsIkQiKSxyPXQuY3RybEtleXx8dC5tZXRhS2V5LHQub3JpZ2luYWxFdmVudC5hbHRLZXkmJmUuZGF0ZXBpY2tlci5fYWRqdXN0RGF0ZSh0LnRhcmdldCx0LmN0cmxLZXk/K2UuZGF0ZXBpY2tlci5fZ2V0KG4sInN0ZXBCaWdNb250aHMiKTorZS5kYXRlcGlja2VyLl9nZXQobiwic3RlcE1vbnRocyIpLCJNIik7YnJlYWs7Y2FzZSA0MDoodC5jdHJsS2V5fHx0Lm1ldGFLZXkpJiZlLmRhdGVwaWNrZXIuX2FkanVzdERhdGUodC50YXJnZXQsNywiRCIpLHI9dC5jdHJsS2V5fHx0Lm1ldGFLZXk7YnJlYWs7ZGVmYXVsdDpyPSExfWVsc2UgMzY9PT10LmtleUNvZGUmJnQuY3RybEtleT9lLmRhdGVwaWNrZXIuX3Nob3dEYXRlcGlja2VyKHRoaXMpOnI9ITE7ciYmKHQucHJldmVudERlZmF1bHQoKSx0LnN0b3BQcm9wYWdhdGlvbigpKX0sX2RvS2V5UHJlc3M6ZnVuY3Rpb24oaSl7dmFyIGEscyxuPWUuZGF0ZXBpY2tlci5fZ2V0SW5zdChpLnRhcmdldCk7cmV0dXJuIGUuZGF0ZXBpY2tlci5fZ2V0KG4sImNvbnN0cmFpbklucHV0Iik/KGE9ZS5kYXRlcGlja2VyLl9wb3NzaWJsZUNoYXJzKGUuZGF0ZXBpY2tlci5fZ2V0KG4sImRhdGVGb3JtYXQiKSkscz1TdHJpbmcuZnJvbUNoYXJDb2RlKG51bGw9PWkuY2hhckNvZGU/aS5rZXlDb2RlOmkuY2hhckNvZGUpLGkuY3RybEtleXx8aS5tZXRhS2V5fHwiICI+c3x8IWF8fGEuaW5kZXhPZihzKT4tMSk6dH0sX2RvS2V5VXA6ZnVuY3Rpb24odCl7dmFyIGksYT1lLmRhdGVwaWNrZXIuX2dldEluc3QodC50YXJnZXQpO2lmKGEuaW5wdXQudmFsKCkhPT1hLmxhc3RWYWwpdHJ5e2k9ZS5kYXRlcGlja2VyLnBhcnNlRGF0ZShlLmRhdGVwaWNrZXIuX2dldChhLCJkYXRlRm9ybWF0IiksYS5pbnB1dD9hLmlucHV0LnZhbCgpOm51bGwsZS5kYXRlcGlja2VyLl9nZXRGb3JtYXRDb25maWcoYSkpLGkmJihlLmRhdGVwaWNrZXIuX3NldERhdGVGcm9tRmllbGQoYSksZS5kYXRlcGlja2VyLl91cGRhdGVBbHRlcm5hdGUoYSksZS5kYXRlcGlja2VyLl91cGRhdGVEYXRlcGlja2VyKGEpKX1jYXRjaChzKXt9cmV0dXJuITB9LF9zaG93RGF0ZXBpY2tlcjpmdW5jdGlvbih0KXtpZih0PXQudGFyZ2V0fHx0LCJpbnB1dCIhPT10Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkmJih0PWUoImlucHV0Iix0LnBhcmVudE5vZGUpWzBdKSwhZS5kYXRlcGlja2VyLl9pc0Rpc2FibGVkRGF0ZXBpY2tlcih0KSYmZS5kYXRlcGlja2VyLl9sYXN0SW5wdXQhPT10KXt2YXIgaSxhLG4scixvLHUsYztpPWUuZGF0ZXBpY2tlci5fZ2V0SW5zdCh0KSxlLmRhdGVwaWNrZXIuX2N1ckluc3QmJmUuZGF0ZXBpY2tlci5fY3VySW5zdCE9PWkmJihlLmRhdGVwaWNrZXIuX2N1ckluc3QuZHBEaXYuc3RvcCghMCwhMCksaSYmZS5kYXRlcGlja2VyLl9kYXRlcGlja2VyU2hvd2luZyYmZS5kYXRlcGlja2VyLl9oaWRlRGF0ZXBpY2tlcihlLmRhdGVwaWNrZXIuX2N1ckluc3QuaW5wdXRbMF0pKSxhPWUuZGF0ZXBpY2tlci5fZ2V0KGksImJlZm9yZVNob3ciKSxuPWE/YS5hcHBseSh0LFt0LGldKTp7fSxuIT09ITEmJihzKGkuc2V0dGluZ3MsbiksaS5sYXN0VmFsPW51bGwsZS5kYXRlcGlja2VyLl9sYXN0SW5wdXQ9dCxlLmRhdGVwaWNrZXIuX3NldERhdGVGcm9tRmllbGQoaSksZS5kYXRlcGlja2VyLl9pbkRpYWxvZyYmKHQudmFsdWU9IiIpLGUuZGF0ZXBpY2tlci5fcG9zfHwoZS5kYXRlcGlja2VyLl9wb3M9ZS5kYXRlcGlja2VyLl9maW5kUG9zKHQpLGUuZGF0ZXBpY2tlci5fcG9zWzFdKz10Lm9mZnNldEhlaWdodCkscj0hMSxlKHQpLnBhcmVudHMoKS5lYWNoKGZ1bmN0aW9uKCl7cmV0dXJuIHJ8PSJmaXhlZCI9PT1lKHRoaXMpLmNzcygicG9zaXRpb24iKSwhcn0pLG89e2xlZnQ6ZS5kYXRlcGlja2VyLl9wb3NbMF0sdG9wOmUuZGF0ZXBpY2tlci5fcG9zWzFdfSxlLmRhdGVwaWNrZXIuX3Bvcz1udWxsLGkuZHBEaXYuZW1wdHkoKSxpLmRwRGl2LmNzcyh7cG9zaXRpb246ImFic29sdXRlIixkaXNwbGF5OiJibG9jayIsdG9wOiItMTAwMHB4In0pLGUuZGF0ZXBpY2tlci5fdXBkYXRlRGF0ZXBpY2tlcihpKSxvPWUuZGF0ZXBpY2tlci5fY2hlY2tPZmZzZXQoaSxvLHIpLGkuZHBEaXYuY3NzKHtwb3NpdGlvbjplLmRhdGVwaWNrZXIuX2luRGlhbG9nJiZlLmJsb2NrVUk/InN0YXRpYyI6cj8iZml4ZWQiOiJhYnNvbHV0ZSIsZGlzcGxheToibm9uZSIsbGVmdDpvLmxlZnQrInB4Iix0b3A6by50b3ArInB4In0pLGkuaW5saW5lfHwodT1lLmRhdGVwaWNrZXIuX2dldChpLCJzaG93QW5pbSIpLGM9ZS5kYXRlcGlja2VyLl9nZXQoaSwiZHVyYXRpb24iKSxpLmRwRGl2LnpJbmRleChlKHQpLnpJbmRleCgpKzEpLGUuZGF0ZXBpY2tlci5fZGF0ZXBpY2tlclNob3dpbmc9ITAsZS5lZmZlY3RzJiZlLmVmZmVjdHMuZWZmZWN0W3VdP2kuZHBEaXYuc2hvdyh1LGUuZGF0ZXBpY2tlci5fZ2V0KGksInNob3dPcHRpb25zIiksYyk6aS5kcERpdlt1fHwic2hvdyJdKHU/YzpudWxsKSxlLmRhdGVwaWNrZXIuX3Nob3VsZEZvY3VzSW5wdXQoaSkmJmkuaW5wdXQuZm9jdXMoKSxlLmRhdGVwaWNrZXIuX2N1ckluc3Q9aSkpfX0sX3VwZGF0ZURhdGVwaWNrZXI6ZnVuY3Rpb24odCl7dGhpcy5tYXhSb3dzPTQsbj10LHQuZHBEaXYuZW1wdHkoKS5hcHBlbmQodGhpcy5fZ2VuZXJhdGVIVE1MKHQpKSx0aGlzLl9hdHRhY2hIYW5kbGVycyh0KSx0LmRwRGl2LmZpbmQoIi4iK3RoaXMuX2RheU92ZXJDbGFzcysiIGEiKS5tb3VzZW92ZXIoKTt2YXIgaSxhPXRoaXMuX2dldE51bWJlck9mTW9udGhzKHQpLHM9YVsxXSxyPTE3O3QuZHBEaXYucmVtb3ZlQ2xhc3MoInVpLWRhdGVwaWNrZXItbXVsdGktMiB1aS1kYXRlcGlja2VyLW11bHRpLTMgdWktZGF0ZXBpY2tlci1tdWx0aS00Iikud2lkdGgoIiIpLHM+MSYmdC5kcERpdi5hZGRDbGFzcygidWktZGF0ZXBpY2tlci1tdWx0aS0iK3MpLmNzcygid2lkdGgiLHIqcysiZW0iKSx0LmRwRGl2WygxIT09YVswXXx8MSE9PWFbMV0/ImFkZCI6InJlbW92ZSIpKyJDbGFzcyJdKCJ1aS1kYXRlcGlja2VyLW11bHRpIiksdC5kcERpdlsodGhpcy5fZ2V0KHQsImlzUlRMIik/ImFkZCI6InJlbW92ZSIpKyJDbGFzcyJdKCJ1aS1kYXRlcGlja2VyLXJ0bCIpLHQ9PT1lLmRhdGVwaWNrZXIuX2N1ckluc3QmJmUuZGF0ZXBpY2tlci5fZGF0ZXBpY2tlclNob3dpbmcmJmUuZGF0ZXBpY2tlci5fc2hvdWxkRm9jdXNJbnB1dCh0KSYmdC5pbnB1dC5mb2N1cygpLHQueWVhcnNodG1sJiYoaT10LnllYXJzaHRtbCxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aT09PXQueWVhcnNodG1sJiZ0LnllYXJzaHRtbCYmdC5kcERpdi5maW5kKCJzZWxlY3QudWktZGF0ZXBpY2tlci15ZWFyOmZpcnN0IikucmVwbGFjZVdpdGgodC55ZWFyc2h0bWwpLGk9dC55ZWFyc2h0bWw9bnVsbH0sMCkpfSxfc2hvdWxkRm9jdXNJbnB1dDpmdW5jdGlvbihlKXtyZXR1cm4gZS5pbnB1dCYmZS5pbnB1dC5pcygiOnZpc2libGUiKSYmIWUuaW5wdXQuaXMoIjpkaXNhYmxlZCIpJiYhZS5pbnB1dC5pcygiOmZvY3VzIil9LF9jaGVja09mZnNldDpmdW5jdGlvbih0LGksYSl7dmFyIHM9dC5kcERpdi5vdXRlcldpZHRoKCksbj10LmRwRGl2Lm91dGVySGVpZ2h0KCkscj10LmlucHV0P3QuaW5wdXQub3V0ZXJXaWR0aCgpOjAsbz10LmlucHV0P3QuaW5wdXQub3V0ZXJIZWlnaHQoKTowLHU9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoKyhhPzA6ZShkb2N1bWVudCkuc2Nyb2xsTGVmdCgpKSxjPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQrKGE/MDplKGRvY3VtZW50KS5zY3JvbGxUb3AoKSk7cmV0dXJuIGkubGVmdC09dGhpcy5fZ2V0KHQsImlzUlRMIik/cy1yOjAsaS5sZWZ0LT1hJiZpLmxlZnQ9PT10LmlucHV0Lm9mZnNldCgpLmxlZnQ/ZShkb2N1bWVudCkuc2Nyb2xsTGVmdCgpOjAsaS50b3AtPWEmJmkudG9wPT09dC5pbnB1dC5vZmZzZXQoKS50b3Arbz9lKGRvY3VtZW50KS5zY3JvbGxUb3AoKTowLGkubGVmdC09TWF0aC5taW4oaS5sZWZ0LGkubGVmdCtzPnUmJnU+cz9NYXRoLmFicyhpLmxlZnQrcy11KTowKSxpLnRvcC09TWF0aC5taW4oaS50b3AsaS50b3Arbj5jJiZjPm4/TWF0aC5hYnMobitvKTowKSxpfSxfZmluZFBvczpmdW5jdGlvbih0KXtmb3IodmFyIGksYT10aGlzLl9nZXRJbnN0KHQpLHM9dGhpcy5fZ2V0KGEsImlzUlRMIik7dCYmKCJoaWRkZW4iPT09dC50eXBlfHwxIT09dC5ub2RlVHlwZXx8ZS5leHByLmZpbHRlcnMuaGlkZGVuKHQpKTspdD10W3M/InByZXZpb3VzU2libGluZyI6Im5leHRTaWJsaW5nIl07cmV0dXJuIGk9ZSh0KS5vZmZzZXQoKSxbaS5sZWZ0LGkudG9wXX0sX2hpZGVEYXRlcGlja2VyOmZ1bmN0aW9uKHQpe3ZhciBpLGEscyxuLG89dGhpcy5fY3VySW5zdDshb3x8dCYmbyE9PWUuZGF0YSh0LHIpfHx0aGlzLl9kYXRlcGlja2VyU2hvd2luZyYmKGk9dGhpcy5fZ2V0KG8sInNob3dBbmltIiksYT10aGlzLl9nZXQobywiZHVyYXRpb24iKSxzPWZ1bmN0aW9uKCl7ZS5kYXRlcGlja2VyLl90aWR5RGlhbG9nKG8pfSxlLmVmZmVjdHMmJihlLmVmZmVjdHMuZWZmZWN0W2ldfHxlLmVmZmVjdHNbaV0pP28uZHBEaXYuaGlkZShpLGUuZGF0ZXBpY2tlci5fZ2V0KG8sInNob3dPcHRpb25zIiksYSxzKTpvLmRwRGl2WyJzbGlkZURvd24iPT09aT8ic2xpZGVVcCI6ImZhZGVJbiI9PT1pPyJmYWRlT3V0IjoiaGlkZSJdKGk/YTpudWxsLHMpLGl8fHMoKSx0aGlzLl9kYXRlcGlja2VyU2hvd2luZz0hMSxuPXRoaXMuX2dldChvLCJvbkNsb3NlIiksbiYmbi5hcHBseShvLmlucHV0P28uaW5wdXRbMF06bnVsbCxbby5pbnB1dD9vLmlucHV0LnZhbCgpOiIiLG9dKSx0aGlzLl9sYXN0SW5wdXQ9bnVsbCx0aGlzLl9pbkRpYWxvZyYmKHRoaXMuX2RpYWxvZ0lucHV0LmNzcyh7cG9zaXRpb246ImFic29sdXRlIixsZWZ0OiIwIix0b3A6Ii0xMDBweCJ9KSxlLmJsb2NrVUkmJihlLnVuYmxvY2tVSSgpLGUoImJvZHkiKS5hcHBlbmQodGhpcy5kcERpdikpKSx0aGlzLl9pbkRpYWxvZz0hMSl9LF90aWR5RGlhbG9nOmZ1bmN0aW9uKGUpe2UuZHBEaXYucmVtb3ZlQ2xhc3ModGhpcy5fZGlhbG9nQ2xhc3MpLnVuYmluZCgiLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIiKX0sX2NoZWNrRXh0ZXJuYWxDbGljazpmdW5jdGlvbih0KXtpZihlLmRhdGVwaWNrZXIuX2N1ckluc3Qpe3ZhciBpPWUodC50YXJnZXQpLGE9ZS5kYXRlcGlja2VyLl9nZXRJbnN0KGlbMF0pOyhpWzBdLmlkIT09ZS5kYXRlcGlja2VyLl9tYWluRGl2SWQmJjA9PT1pLnBhcmVudHMoIiMiK2UuZGF0ZXBpY2tlci5fbWFpbkRpdklkKS5sZW5ndGgmJiFpLmhhc0NsYXNzKGUuZGF0ZXBpY2tlci5tYXJrZXJDbGFzc05hbWUpJiYhaS5jbG9zZXN0KCIuIitlLmRhdGVwaWNrZXIuX3RyaWdnZXJDbGFzcykubGVuZ3RoJiZlLmRhdGVwaWNrZXIuX2RhdGVwaWNrZXJTaG93aW5nJiYoIWUuZGF0ZXBpY2tlci5faW5EaWFsb2d8fCFlLmJsb2NrVUkpfHxpLmhhc0NsYXNzKGUuZGF0ZXBpY2tlci5tYXJrZXJDbGFzc05hbWUpJiZlLmRhdGVwaWNrZXIuX2N1ckluc3QhPT1hKSYmZS5kYXRlcGlja2VyLl9oaWRlRGF0ZXBpY2tlcigpfX0sX2FkanVzdERhdGU6ZnVuY3Rpb24odCxpLGEpe3ZhciBzPWUodCksbj10aGlzLl9nZXRJbnN0KHNbMF0pO3RoaXMuX2lzRGlzYWJsZWREYXRlcGlja2VyKHNbMF0pfHwodGhpcy5fYWRqdXN0SW5zdERhdGUobixpKygiTSI9PT1hP3RoaXMuX2dldChuLCJzaG93Q3VycmVudEF0UG9zIik6MCksYSksdGhpcy5fdXBkYXRlRGF0ZXBpY2tlcihuKSl9LF9nb3RvVG9kYXk6ZnVuY3Rpb24odCl7dmFyIGksYT1lKHQpLHM9dGhpcy5fZ2V0SW5zdChhWzBdKTt0aGlzLl9nZXQocywiZ290b0N1cnJlbnQiKSYmcy5jdXJyZW50RGF5PyhzLnNlbGVjdGVkRGF5PXMuY3VycmVudERheSxzLmRyYXdNb250aD1zLnNlbGVjdGVkTW9udGg9cy5jdXJyZW50TW9udGgscy5kcmF3WWVhcj1zLnNlbGVjdGVkWWVhcj1zLmN1cnJlbnRZZWFyKTooaT1uZXcgRGF0ZSxzLnNlbGVjdGVkRGF5PWkuZ2V0RGF0ZSgpLHMuZHJhd01vbnRoPXMuc2VsZWN0ZWRNb250aD1pLmdldE1vbnRoKCkscy5kcmF3WWVhcj1zLnNlbGVjdGVkWWVhcj1pLmdldEZ1bGxZZWFyKCkpLHRoaXMuX25vdGlmeUNoYW5nZShzKSx0aGlzLl9hZGp1c3REYXRlKGEpfSxfc2VsZWN0TW9udGhZZWFyOmZ1bmN0aW9uKHQsaSxhKXt2YXIgcz1lKHQpLG49dGhpcy5fZ2V0SW5zdChzWzBdKTtuWyJzZWxlY3RlZCIrKCJNIj09PWE/Ik1vbnRoIjoiWWVhciIpXT1uWyJkcmF3IisoIk0iPT09YT8iTW9udGgiOiJZZWFyIildPXBhcnNlSW50KGkub3B0aW9uc1tpLnNlbGVjdGVkSW5kZXhdLnZhbHVlLDEwKSx0aGlzLl9ub3RpZnlDaGFuZ2UobiksdGhpcy5fYWRqdXN0RGF0ZShzKX0sX3NlbGVjdERheTpmdW5jdGlvbih0LGksYSxzKXt2YXIgbixyPWUodCk7ZShzKS5oYXNDbGFzcyh0aGlzLl91bnNlbGVjdGFibGVDbGFzcyl8fHRoaXMuX2lzRGlzYWJsZWREYXRlcGlja2VyKHJbMF0pfHwobj10aGlzLl9nZXRJbnN0KHJbMF0pLG4uc2VsZWN0ZWREYXk9bi5jdXJyZW50RGF5PWUoImEiLHMpLmh0bWwoKSxuLnNlbGVjdGVkTW9udGg9bi5jdXJyZW50TW9udGg9aSxuLnNlbGVjdGVkWWVhcj1uLmN1cnJlbnRZZWFyPWEsdGhpcy5fc2VsZWN0RGF0ZSh0LHRoaXMuX2Zvcm1hdERhdGUobixuLmN1cnJlbnREYXksbi5jdXJyZW50TW9udGgsbi5jdXJyZW50WWVhcikpKX0sX2NsZWFyRGF0ZTpmdW5jdGlvbih0KXt2YXIgaT1lKHQpO3RoaXMuX3NlbGVjdERhdGUoaSwiIil9LF9zZWxlY3REYXRlOmZ1bmN0aW9uKHQsaSl7dmFyIGEscz1lKHQpLG49dGhpcy5fZ2V0SW5zdChzWzBdKTtpPW51bGwhPWk/aTp0aGlzLl9mb3JtYXREYXRlKG4pLG4uaW5wdXQmJm4uaW5wdXQudmFsKGkpLHRoaXMuX3VwZGF0ZUFsdGVybmF0ZShuKSxhPXRoaXMuX2dldChuLCJvblNlbGVjdCIpLGE/YS5hcHBseShuLmlucHV0P24uaW5wdXRbMF06bnVsbCxbaSxuXSk6bi5pbnB1dCYmbi5pbnB1dC50cmlnZ2VyKCJjaGFuZ2UiKSxuLmlubGluZT90aGlzLl91cGRhdGVEYXRlcGlja2VyKG4pOih0aGlzLl9oaWRlRGF0ZXBpY2tlcigpLHRoaXMuX2xhc3RJbnB1dD1uLmlucHV0WzBdLCJvYmplY3QiIT10eXBlb2Ygbi5pbnB1dFswXSYmbi5pbnB1dC5mb2N1cygpLHRoaXMuX2xhc3RJbnB1dD1udWxsKX0sX3VwZGF0ZUFsdGVybmF0ZTpmdW5jdGlvbih0KXt2YXIgaSxhLHMsbj10aGlzLl9nZXQodCwiYWx0RmllbGQiKTtuJiYoaT10aGlzLl9nZXQodCwiYWx0Rm9ybWF0Iil8fHRoaXMuX2dldCh0LCJkYXRlRm9ybWF0IiksYT10aGlzLl9nZXREYXRlKHQpLHM9dGhpcy5mb3JtYXREYXRlKGksYSx0aGlzLl9nZXRGb3JtYXRDb25maWcodCkpLGUobikuZWFjaChmdW5jdGlvbigpe2UodGhpcykudmFsKHMpfSkpfSxub1dlZWtlbmRzOmZ1bmN0aW9uKGUpe3ZhciB0PWUuZ2V0RGF5KCk7cmV0dXJuW3Q+MCYmNj50LCIiXX0saXNvODYwMVdlZWs6ZnVuY3Rpb24oZSl7dmFyIHQsaT1uZXcgRGF0ZShlLmdldFRpbWUoKSk7cmV0dXJuIGkuc2V0RGF0ZShpLmdldERhdGUoKSs0LShpLmdldERheSgpfHw3KSksdD1pLmdldFRpbWUoKSxpLnNldE1vbnRoKDApLGkuc2V0RGF0ZSgxKSxNYXRoLmZsb29yKE1hdGgucm91bmQoKHQtaSkvODY0ZTUpLzcpKzF9LHBhcnNlRGF0ZTpmdW5jdGlvbihpLGEscyl7aWYobnVsbD09aXx8bnVsbD09YSl0aHJvdyJJbnZhbGlkIGFyZ3VtZW50cyI7aWYoYT0ib2JqZWN0Ij09dHlwZW9mIGE/IiIrYTphKyIiLCIiPT09YSlyZXR1cm4gbnVsbDt2YXIgbixyLG8sdSxjPTAsaD0ocz9zLnNob3J0WWVhckN1dG9mZjpudWxsKXx8dGhpcy5fZGVmYXVsdHMuc2hvcnRZZWFyQ3V0b2ZmLGw9InN0cmluZyIhPXR5cGVvZiBoP2g6KG5ldyBEYXRlKS5nZXRGdWxsWWVhcigpJTEwMCtwYXJzZUludChoLDEwKSxkPShzP3MuZGF5TmFtZXNTaG9ydDpudWxsKXx8dGhpcy5fZGVmYXVsdHMuZGF5TmFtZXNTaG9ydCxwPShzP3MuZGF5TmFtZXM6bnVsbCl8fHRoaXMuX2RlZmF1bHRzLmRheU5hbWVzLGc9KHM/cy5tb250aE5hbWVzU2hvcnQ6bnVsbCl8fHRoaXMuX2RlZmF1bHRzLm1vbnRoTmFtZXNTaG9ydCxtPShzP3MubW9udGhOYW1lczpudWxsKXx8dGhpcy5fZGVmYXVsdHMubW9udGhOYW1lcyxmPS0xLF89LTEsdj0tMSxrPS0xLHk9ITEsYj1mdW5jdGlvbihlKXt2YXIgdD1pLmxlbmd0aD5uKzEmJmkuY2hhckF0KG4rMSk9PT1lO3JldHVybiB0JiZuKyssdH0sRD1mdW5jdGlvbihlKXt2YXIgdD1iKGUpLGk9IkAiPT09ZT8xNDoiISI9PT1lPzIwOiJ5Ij09PWUmJnQ/NDoibyI9PT1lPzM6MixzPVJlZ0V4cCgiXlxcZHsxLCIraSsifSIpLG49YS5zdWJzdHJpbmcoYykubWF0Y2gocyk7aWYoIW4pdGhyb3ciTWlzc2luZyBudW1iZXIgYXQgcG9zaXRpb24gIitjO3JldHVybiBjKz1uWzBdLmxlbmd0aCxwYXJzZUludChuWzBdLDEwKX0sdz1mdW5jdGlvbihpLHMsbil7dmFyIHI9LTEsbz1lLm1hcChiKGkpP246cyxmdW5jdGlvbihlLHQpe3JldHVybltbdCxlXV19KS5zb3J0KGZ1bmN0aW9uKGUsdCl7cmV0dXJuLShlWzFdLmxlbmd0aC10WzFdLmxlbmd0aCl9KTtpZihlLmVhY2gobyxmdW5jdGlvbihlLGkpe3ZhciBzPWlbMV07cmV0dXJuIGEuc3Vic3RyKGMscy5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT1zLnRvTG93ZXJDYXNlKCk/KHI9aVswXSxjKz1zLmxlbmd0aCwhMSk6dH0pLC0xIT09cilyZXR1cm4gcisxO3Rocm93IlVua25vd24gbmFtZSBhdCBwb3NpdGlvbiAiK2N9LE09ZnVuY3Rpb24oKXtpZihhLmNoYXJBdChjKSE9PWkuY2hhckF0KG4pKXRocm93IlVuZXhwZWN0ZWQgbGl0ZXJhbCBhdCBwb3NpdGlvbiAiK2M7YysrfTtmb3Iobj0wO2kubGVuZ3RoPm47bisrKWlmKHkpIiciIT09aS5jaGFyQXQobil8fGIoIiciKT9NKCk6eT0hMTtlbHNlIHN3aXRjaChpLmNoYXJBdChuKSl7Y2FzZSJkIjp2PUQoImQiKTticmVhaztjYXNlIkQiOncoIkQiLGQscCk7YnJlYWs7Y2FzZSJvIjprPUQoIm8iKTticmVhaztjYXNlIm0iOl89RCgibSIpO2JyZWFrO2Nhc2UiTSI6Xz13KCJNIixnLG0pO2JyZWFrO2Nhc2UieSI6Zj1EKCJ5Iik7YnJlYWs7Y2FzZSJAIjp1PW5ldyBEYXRlKEQoIkAiKSksZj11LmdldEZ1bGxZZWFyKCksXz11LmdldE1vbnRoKCkrMSx2PXUuZ2V0RGF0ZSgpO2JyZWFrO2Nhc2UiISI6dT1uZXcgRGF0ZSgoRCgiISIpLXRoaXMuX3RpY2tzVG8xOTcwKS8xZTQpLGY9dS5nZXRGdWxsWWVhcigpLF89dS5nZXRNb250aCgpKzEsdj11LmdldERhdGUoKTticmVhaztjYXNlIiciOmIoIiciKT9NKCk6eT0hMDticmVhaztkZWZhdWx0Ok0oKX1pZihhLmxlbmd0aD5jJiYobz1hLnN1YnN0cihjKSwhL15ccysvLnRlc3QobykpKXRocm93IkV4dHJhL3VucGFyc2VkIGNoYXJhY3RlcnMgZm91bmQgaW4gZGF0ZTogIitvO2lmKC0xPT09Zj9mPShuZXcgRGF0ZSkuZ2V0RnVsbFllYXIoKToxMDA+ZiYmKGYrPShuZXcgRGF0ZSkuZ2V0RnVsbFllYXIoKS0obmV3IERhdGUpLmdldEZ1bGxZZWFyKCklMTAwKyhsPj1mPzA6LTEwMCkpLGs+LTEpZm9yKF89MSx2PWs7Oyl7aWYocj10aGlzLl9nZXREYXlzSW5Nb250aChmLF8tMSkscj49dilicmVhaztfKyssdi09cn1pZih1PXRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KG5ldyBEYXRlKGYsXy0xLHYpKSx1LmdldEZ1bGxZZWFyKCkhPT1mfHx1LmdldE1vbnRoKCkrMSE9PV98fHUuZ2V0RGF0ZSgpIT09dil0aHJvdyJJbnZhbGlkIGRhdGUiO3JldHVybiB1fSxBVE9NOiJ5eS1tbS1kZCIsQ09PS0lFOiJELCBkZCBNIHl5IixJU09fODYwMToieXktbW0tZGQiLFJGQ184MjI6IkQsIGQgTSB5IixSRkNfODUwOiJERCwgZGQtTS15IixSRkNfMTAzNjoiRCwgZCBNIHkiLFJGQ18xMTIzOiJELCBkIE0geXkiLFJGQ18yODIyOiJELCBkIE0geXkiLFJTUzoiRCwgZCBNIHkiLFRJQ0tTOiIhIixUSU1FU1RBTVA6IkAiLFczQzoieXktbW0tZGQiLF90aWNrc1RvMTk3MDoxZTcqNjAqNjAqMjQqKDcxODY4NStNYXRoLmZsb29yKDQ5Mi41KS1NYXRoLmZsb29yKDE5LjcpK01hdGguZmxvb3IoNC45MjUpKSxmb3JtYXREYXRlOmZ1bmN0aW9uKGUsdCxpKXtpZighdClyZXR1cm4iIjt2YXIgYSxzPShpP2kuZGF5TmFtZXNTaG9ydDpudWxsKXx8dGhpcy5fZGVmYXVsdHMuZGF5TmFtZXNTaG9ydCxuPShpP2kuZGF5TmFtZXM6bnVsbCl8fHRoaXMuX2RlZmF1bHRzLmRheU5hbWVzLHI9KGk/aS5tb250aE5hbWVzU2hvcnQ6bnVsbCl8fHRoaXMuX2RlZmF1bHRzLm1vbnRoTmFtZXNTaG9ydCxvPShpP2kubW9udGhOYW1lczpudWxsKXx8dGhpcy5fZGVmYXVsdHMubW9udGhOYW1lcyx1PWZ1bmN0aW9uKHQpe3ZhciBpPWUubGVuZ3RoPmErMSYmZS5jaGFyQXQoYSsxKT09PXQ7cmV0dXJuIGkmJmErKyxpfSxjPWZ1bmN0aW9uKGUsdCxpKXt2YXIgYT0iIit0O2lmKHUoZSkpZm9yKDtpPmEubGVuZ3RoOylhPSIwIithO3JldHVybiBhfSxoPWZ1bmN0aW9uKGUsdCxpLGEpe3JldHVybiB1KGUpP2FbdF06aVt0XX0sbD0iIixkPSExO2lmKHQpZm9yKGE9MDtlLmxlbmd0aD5hO2ErKylpZihkKSInIiE9PWUuY2hhckF0KGEpfHx1KCInIik/bCs9ZS5jaGFyQXQoYSk6ZD0hMTtlbHNlIHN3aXRjaChlLmNoYXJBdChhKSl7Y2FzZSJkIjpsKz1jKCJkIix0LmdldERhdGUoKSwyKTticmVhaztjYXNlIkQiOmwrPWgoIkQiLHQuZ2V0RGF5KCkscyxuKTticmVhaztjYXNlIm8iOmwrPWMoIm8iLE1hdGgucm91bmQoKG5ldyBEYXRlKHQuZ2V0RnVsbFllYXIoKSx0LmdldE1vbnRoKCksdC5nZXREYXRlKCkpLmdldFRpbWUoKS1uZXcgRGF0ZSh0LmdldEZ1bGxZZWFyKCksMCwwKS5nZXRUaW1lKCkpLzg2NGU1KSwzKTticmVhaztjYXNlIm0iOmwrPWMoIm0iLHQuZ2V0TW9udGgoKSsxLDIpO2JyZWFrO2Nhc2UiTSI6bCs9aCgiTSIsdC5nZXRNb250aCgpLHIsbyk7YnJlYWs7Y2FzZSJ5IjpsKz11KCJ5Iik/dC5nZXRGdWxsWWVhcigpOigxMD50LmdldFllYXIoKSUxMDA/IjAiOiIiKSt0LmdldFllYXIoKSUxMDA7YnJlYWs7Y2FzZSJAIjpsKz10LmdldFRpbWUoKTticmVhaztjYXNlIiEiOmwrPTFlNCp0LmdldFRpbWUoKSt0aGlzLl90aWNrc1RvMTk3MDticmVhaztjYXNlIiciOnUoIiciKT9sKz0iJyI6ZD0hMDticmVhaztkZWZhdWx0OmwrPWUuY2hhckF0KGEpfXJldHVybiBsfSxfcG9zc2libGVDaGFyczpmdW5jdGlvbihlKXt2YXIgdCxpPSIiLGE9ITEscz1mdW5jdGlvbihpKXt2YXIgYT1lLmxlbmd0aD50KzEmJmUuY2hhckF0KHQrMSk9PT1pO3JldHVybiBhJiZ0KyssYX07Zm9yKHQ9MDtlLmxlbmd0aD50O3QrKylpZihhKSInIiE9PWUuY2hhckF0KHQpfHxzKCInIik/aSs9ZS5jaGFyQXQodCk6YT0hMTtlbHNlIHN3aXRjaChlLmNoYXJBdCh0KSl7Y2FzZSJkIjpjYXNlIm0iOmNhc2UieSI6Y2FzZSJAIjppKz0iMDEyMzQ1Njc4OSI7YnJlYWs7Y2FzZSJEIjpjYXNlIk0iOnJldHVybiBudWxsO2Nhc2UiJyI6cygiJyIpP2krPSInIjphPSEwO2JyZWFrO2RlZmF1bHQ6aSs9ZS5jaGFyQXQodCl9cmV0dXJuIGl9LF9nZXQ6ZnVuY3Rpb24oZSxpKXtyZXR1cm4gZS5zZXR0aW5nc1tpXSE9PXQ/ZS5zZXR0aW5nc1tpXTp0aGlzLl9kZWZhdWx0c1tpXX0sX3NldERhdGVGcm9tRmllbGQ6ZnVuY3Rpb24oZSx0KXtpZihlLmlucHV0LnZhbCgpIT09ZS5sYXN0VmFsKXt2YXIgaT10aGlzLl9nZXQoZSwiZGF0ZUZvcm1hdCIpLGE9ZS5sYXN0VmFsPWUuaW5wdXQ/ZS5pbnB1dC52YWwoKTpudWxsLHM9dGhpcy5fZ2V0RGVmYXVsdERhdGUoZSksbj1zLHI9dGhpcy5fZ2V0Rm9ybWF0Q29uZmlnKGUpO3RyeXtuPXRoaXMucGFyc2VEYXRlKGksYSxyKXx8c31jYXRjaChvKXthPXQ/IiI6YX1lLnNlbGVjdGVkRGF5PW4uZ2V0RGF0ZSgpLGUuZHJhd01vbnRoPWUuc2VsZWN0ZWRNb250aD1uLmdldE1vbnRoKCksZS5kcmF3WWVhcj1lLnNlbGVjdGVkWWVhcj1uLmdldEZ1bGxZZWFyKCksZS5jdXJyZW50RGF5PWE/bi5nZXREYXRlKCk6MCxlLmN1cnJlbnRNb250aD1hP24uZ2V0TW9udGgoKTowLGUuY3VycmVudFllYXI9YT9uLmdldEZ1bGxZZWFyKCk6MCx0aGlzLl9hZGp1c3RJbnN0RGF0ZShlKX19LF9nZXREZWZhdWx0RGF0ZTpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5fcmVzdHJpY3RNaW5NYXgoZSx0aGlzLl9kZXRlcm1pbmVEYXRlKGUsdGhpcy5fZ2V0KGUsImRlZmF1bHREYXRlIiksbmV3IERhdGUpKX0sX2RldGVybWluZURhdGU6ZnVuY3Rpb24odCxpLGEpe3ZhciBzPWZ1bmN0aW9uKGUpe3ZhciB0PW5ldyBEYXRlO3JldHVybiB0LnNldERhdGUodC5nZXREYXRlKCkrZSksdH0sbj1mdW5jdGlvbihpKXt0cnl7cmV0dXJuIGUuZGF0ZXBpY2tlci5wYXJzZURhdGUoZS5kYXRlcGlja2VyLl9nZXQodCwiZGF0ZUZvcm1hdCIpLGksZS5kYXRlcGlja2VyLl9nZXRGb3JtYXRDb25maWcodCkpfWNhdGNoKGEpe31mb3IodmFyIHM9KGkudG9Mb3dlckNhc2UoKS5tYXRjaCgvXmMvKT9lLmRhdGVwaWNrZXIuX2dldERhdGUodCk6bnVsbCl8fG5ldyBEYXRlLG49cy5nZXRGdWxsWWVhcigpLHI9cy5nZXRNb250aCgpLG89cy5nZXREYXRlKCksdT0vKFsrXC1dP1swLTldKylccyooZHxEfHd8V3xtfE18eXxZKT8vZyxjPXUuZXhlYyhpKTtjOyl7c3dpdGNoKGNbMl18fCJkIil7Y2FzZSJkIjpjYXNlIkQiOm8rPXBhcnNlSW50KGNbMV0sMTApO2JyZWFrO2Nhc2UidyI6Y2FzZSJXIjpvKz03KnBhcnNlSW50KGNbMV0sMTApO2JyZWFrO2Nhc2UibSI6Y2FzZSJNIjpyKz1wYXJzZUludChjWzFdLDEwKSxvPU1hdGgubWluKG8sZS5kYXRlcGlja2VyLl9nZXREYXlzSW5Nb250aChuLHIpKTticmVhaztjYXNlInkiOmNhc2UiWSI6bis9cGFyc2VJbnQoY1sxXSwxMCksbz1NYXRoLm1pbihvLGUuZGF0ZXBpY2tlci5fZ2V0RGF5c0luTW9udGgobixyKSl9Yz11LmV4ZWMoaSl9cmV0dXJuIG5ldyBEYXRlKG4scixvKX0scj1udWxsPT1pfHwiIj09PWk/YToic3RyaW5nIj09dHlwZW9mIGk/bihpKToibnVtYmVyIj09dHlwZW9mIGk/aXNOYU4oaSk/YTpzKGkpOm5ldyBEYXRlKGkuZ2V0VGltZSgpKTtyZXR1cm4gcj1yJiYiSW52YWxpZCBEYXRlIj09IiIrcj9hOnIsciYmKHIuc2V0SG91cnMoMCksci5zZXRNaW51dGVzKDApLHIuc2V0U2Vjb25kcygwKSxyLnNldE1pbGxpc2Vjb25kcygwKSksdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3Qocil9LF9kYXlsaWdodFNhdmluZ0FkanVzdDpmdW5jdGlvbihlKXtyZXR1cm4gZT8oZS5zZXRIb3VycyhlLmdldEhvdXJzKCk+MTI/ZS5nZXRIb3VycygpKzI6MCksZSk6bnVsbH0sX3NldERhdGU6ZnVuY3Rpb24oZSx0LGkpe3ZhciBhPSF0LHM9ZS5zZWxlY3RlZE1vbnRoLG49ZS5zZWxlY3RlZFllYXIscj10aGlzLl9yZXN0cmljdE1pbk1heChlLHRoaXMuX2RldGVybWluZURhdGUoZSx0LG5ldyBEYXRlKSk7ZS5zZWxlY3RlZERheT1lLmN1cnJlbnREYXk9ci5nZXREYXRlKCksZS5kcmF3TW9udGg9ZS5zZWxlY3RlZE1vbnRoPWUuY3VycmVudE1vbnRoPXIuZ2V0TW9udGgoKSxlLmRyYXdZZWFyPWUuc2VsZWN0ZWRZZWFyPWUuY3VycmVudFllYXI9ci5nZXRGdWxsWWVhcigpLHM9PT1lLnNlbGVjdGVkTW9udGgmJm49PT1lLnNlbGVjdGVkWWVhcnx8aXx8dGhpcy5fbm90aWZ5Q2hhbmdlKGUpLHRoaXMuX2FkanVzdEluc3REYXRlKGUpLGUuaW5wdXQmJmUuaW5wdXQudmFsKGE/IiI6dGhpcy5fZm9ybWF0RGF0ZShlKSl9LF9nZXREYXRlOmZ1bmN0aW9uKGUpe3ZhciB0PSFlLmN1cnJlbnRZZWFyfHxlLmlucHV0JiYiIj09PWUuaW5wdXQudmFsKCk/bnVsbDp0aGlzLl9kYXlsaWdodFNhdmluZ0FkanVzdChuZXcgRGF0ZShlLmN1cnJlbnRZZWFyLGUuY3VycmVudE1vbnRoLGUuY3VycmVudERheSkpO3JldHVybiB0fSxfYXR0YWNoSGFuZGxlcnM6ZnVuY3Rpb24odCl7dmFyIGk9dGhpcy5fZ2V0KHQsInN0ZXBNb250aHMiKSxhPSIjIit0LmlkLnJlcGxhY2UoL1xcXFwvZywiXFwiKTt0LmRwRGl2LmZpbmQoIltkYXRhLWhhbmRsZXJdIikubWFwKGZ1bmN0aW9uKCl7dmFyIHQ9e3ByZXY6ZnVuY3Rpb24oKXtlLmRhdGVwaWNrZXIuX2FkanVzdERhdGUoYSwtaSwiTSIpfSxuZXh0OmZ1bmN0aW9uKCl7ZS5kYXRlcGlja2VyLl9hZGp1c3REYXRlKGEsK2ksIk0iKX0saGlkZTpmdW5jdGlvbigpe2UuZGF0ZXBpY2tlci5faGlkZURhdGVwaWNrZXIoKX0sdG9kYXk6ZnVuY3Rpb24oKXtlLmRhdGVwaWNrZXIuX2dvdG9Ub2RheShhKX0sc2VsZWN0RGF5OmZ1bmN0aW9uKCl7cmV0dXJuIGUuZGF0ZXBpY2tlci5fc2VsZWN0RGF5KGEsK3RoaXMuZ2V0QXR0cmlidXRlKCJkYXRhLW1vbnRoIiksK3RoaXMuZ2V0QXR0cmlidXRlKCJkYXRhLXllYXIiKSx0aGlzKSwhMX0sc2VsZWN0TW9udGg6ZnVuY3Rpb24oKXtyZXR1cm4gZS5kYXRlcGlja2VyLl9zZWxlY3RNb250aFllYXIoYSx0aGlzLCJNIiksITF9LHNlbGVjdFllYXI6ZnVuY3Rpb24oKXtyZXR1cm4gZS5kYXRlcGlja2VyLl9zZWxlY3RNb250aFllYXIoYSx0aGlzLCJZIiksITF9fTtlKHRoaXMpLmJpbmQodGhpcy5nZXRBdHRyaWJ1dGUoImRhdGEtZXZlbnQiKSx0W3RoaXMuZ2V0QXR0cmlidXRlKCJkYXRhLWhhbmRsZXIiKV0pfSl9LF9nZW5lcmF0ZUhUTUw6ZnVuY3Rpb24oZSl7dmFyIHQsaSxhLHMsbixyLG8sdSxjLGgsbCxkLHAsZyxtLGYsXyx2LGsseSxiLEQsdyxNLEMseCxJLE4sVCxBLEUsUyxZLEYsUCxPLGosSyxSLEg9bmV3IERhdGUsVz10aGlzLl9kYXlsaWdodFNhdmluZ0FkanVzdChuZXcgRGF0ZShILmdldEZ1bGxZZWFyKCksSC5nZXRNb250aCgpLEguZ2V0RGF0ZSgpKSksTD10aGlzLl9nZXQoZSwiaXNSVEwiKSxVPXRoaXMuX2dldChlLCJzaG93QnV0dG9uUGFuZWwiKSxCPXRoaXMuX2dldChlLCJoaWRlSWZOb1ByZXZOZXh0Iiksej10aGlzLl9nZXQoZSwibmF2aWdhdGlvbkFzRGF0ZUZvcm1hdCIpLHE9dGhpcy5fZ2V0TnVtYmVyT2ZNb250aHMoZSksRz10aGlzLl9nZXQoZSwic2hvd0N1cnJlbnRBdFBvcyIpLEo9dGhpcy5fZ2V0KGUsInN0ZXBNb250aHMiKSxRPTEhPT1xWzBdfHwxIT09cVsxXSxWPXRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KGUuY3VycmVudERheT9uZXcgRGF0ZShlLmN1cnJlbnRZZWFyLGUuY3VycmVudE1vbnRoLGUuY3VycmVudERheSk6bmV3IERhdGUoOTk5OSw5LDkpKSwkPXRoaXMuX2dldE1pbk1heERhdGUoZSwibWluIiksWD10aGlzLl9nZXRNaW5NYXhEYXRlKGUsIm1heCIpLFo9ZS5kcmF3TW9udGgtRyxldD1lLmRyYXdZZWFyO2lmKDA+WiYmKForPTEyLGV0LS0pLFgpZm9yKHQ9dGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QobmV3IERhdGUoWC5nZXRGdWxsWWVhcigpLFguZ2V0TW9udGgoKS1xWzBdKnFbMV0rMSxYLmdldERhdGUoKSkpLHQ9JCYmJD50PyQ6dDt0aGlzLl9kYXlsaWdodFNhdmluZ0FkanVzdChuZXcgRGF0ZShldCxaLDEpKT50OylaLS0sMD5aJiYoWj0xMSxldC0tKTtmb3IoZS5kcmF3TW9udGg9WixlLmRyYXdZZWFyPWV0LGk9dGhpcy5fZ2V0KGUsInByZXZUZXh0IiksaT16P3RoaXMuZm9ybWF0RGF0ZShpLHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KG5ldyBEYXRlKGV0LFotSiwxKSksdGhpcy5fZ2V0Rm9ybWF0Q29uZmlnKGUpKTppLGE9dGhpcy5fY2FuQWRqdXN0TW9udGgoZSwtMSxldCxaKT8iPGEgY2xhc3M9J3VpLWRhdGVwaWNrZXItcHJldiB1aS1jb3JuZXItYWxsJyBkYXRhLWhhbmRsZXI9J3ByZXYnIGRhdGEtZXZlbnQ9J2NsaWNrJyB0aXRsZT0nIitpKyInPjxzcGFuIGNsYXNzPSd1aS1pY29uIHVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLSIrKEw/ImUiOiJ3IikrIic+IitpKyI8L3NwYW4+PC9hPiI6Qj8iIjoiPGEgY2xhc3M9J3VpLWRhdGVwaWNrZXItcHJldiB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRpc2FibGVkJyB0aXRsZT0nIitpKyInPjxzcGFuIGNsYXNzPSd1aS1pY29uIHVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLSIrKEw/ImUiOiJ3IikrIic+IitpKyI8L3NwYW4+PC9hPiIscz10aGlzLl9nZXQoZSwibmV4dFRleHQiKSxzPXo/dGhpcy5mb3JtYXREYXRlKHMsdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QobmV3IERhdGUoZXQsWitKLDEpKSx0aGlzLl9nZXRGb3JtYXRDb25maWcoZSkpOnMsbj10aGlzLl9jYW5BZGp1c3RNb250aChlLDEsZXQsWik/IjxhIGNsYXNzPSd1aS1kYXRlcGlja2VyLW5leHQgdWktY29ybmVyLWFsbCcgZGF0YS1oYW5kbGVyPSduZXh0JyBkYXRhLWV2ZW50PSdjbGljaycgdGl0bGU9JyIrcysiJz48c3BhbiBjbGFzcz0ndWktaWNvbiB1aS1pY29uLWNpcmNsZS10cmlhbmdsZS0iKyhMPyJ3IjoiZSIpKyInPiIrcysiPC9zcGFuPjwvYT4iOkI/IiI6IjxhIGNsYXNzPSd1aS1kYXRlcGlja2VyLW5leHQgdWktY29ybmVyLWFsbCB1aS1zdGF0ZS1kaXNhYmxlZCcgdGl0bGU9JyIrcysiJz48c3BhbiBjbGFzcz0ndWktaWNvbiB1aS1pY29uLWNpcmNsZS10cmlhbmdsZS0iKyhMPyJ3IjoiZSIpKyInPiIrcysiPC9zcGFuPjwvYT4iLHI9dGhpcy5fZ2V0KGUsImN1cnJlbnRUZXh0Iiksbz10aGlzLl9nZXQoZSwiZ290b0N1cnJlbnQiKSYmZS5jdXJyZW50RGF5P1Y6VyxyPXo/dGhpcy5mb3JtYXREYXRlKHIsbyx0aGlzLl9nZXRGb3JtYXRDb25maWcoZSkpOnIsdT1lLmlubGluZT8iIjoiPGJ1dHRvbiB0eXBlPSdidXR0b24nIGNsYXNzPSd1aS1kYXRlcGlja2VyLWNsb3NlIHVpLXN0YXRlLWRlZmF1bHQgdWktcHJpb3JpdHktcHJpbWFyeSB1aS1jb3JuZXItYWxsJyBkYXRhLWhhbmRsZXI9J2hpZGUnIGRhdGEtZXZlbnQ9J2NsaWNrJz4iK3RoaXMuX2dldChlLCJjbG9zZVRleHQiKSsiPC9idXR0b24+IixjPVU/IjxkaXYgY2xhc3M9J3VpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB1aS13aWRnZXQtY29udGVudCc+IisoTD91OiIiKSsodGhpcy5faXNJblJhbmdlKGUsbyk/IjxidXR0b24gdHlwZT0nYnV0dG9uJyBjbGFzcz0ndWktZGF0ZXBpY2tlci1jdXJyZW50IHVpLXN0YXRlLWRlZmF1bHQgdWktcHJpb3JpdHktc2Vjb25kYXJ5IHVpLWNvcm5lci1hbGwnIGRhdGEtaGFuZGxlcj0ndG9kYXknIGRhdGEtZXZlbnQ9J2NsaWNrJz4iK3IrIjwvYnV0dG9uPiI6IiIpKyhMPyIiOnUpKyI8L2Rpdj4iOiIiLGg9cGFyc2VJbnQodGhpcy5fZ2V0KGUsImZpcnN0RGF5IiksMTApLGg9aXNOYU4oaCk/MDpoLGw9dGhpcy5fZ2V0KGUsInNob3dXZWVrIiksZD10aGlzLl9nZXQoZSwiZGF5TmFtZXMiKSxwPXRoaXMuX2dldChlLCJkYXlOYW1lc01pbiIpLGc9dGhpcy5fZ2V0KGUsIm1vbnRoTmFtZXMiKSxtPXRoaXMuX2dldChlLCJtb250aE5hbWVzU2hvcnQiKSxmPXRoaXMuX2dldChlLCJiZWZvcmVTaG93RGF5IiksXz10aGlzLl9nZXQoZSwic2hvd090aGVyTW9udGhzIiksdj10aGlzLl9nZXQoZSwic2VsZWN0T3RoZXJNb250aHMiKSxrPXRoaXMuX2dldERlZmF1bHREYXRlKGUpLHk9IiIsRD0wO3FbMF0+RDtEKyspe2Zvcih3PSIiLHRoaXMubWF4Um93cz00LE09MDtxWzFdPk07TSsrKXtpZihDPXRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KG5ldyBEYXRlKGV0LFosZS5zZWxlY3RlZERheSkpLHg9IiB1aS1jb3JuZXItYWxsIixJPSIiLFEpe2lmKEkrPSI8ZGl2IGNsYXNzPSd1aS1kYXRlcGlja2VyLWdyb3VwIixxWzFdPjEpc3dpdGNoKE0pe2Nhc2UgMDpJKz0iIHVpLWRhdGVwaWNrZXItZ3JvdXAtZmlyc3QiLHg9IiB1aS1jb3JuZXItIisoTD8icmlnaHQiOiJsZWZ0Iik7YnJlYWs7Y2FzZSBxWzFdLTE6SSs9IiB1aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QiLHg9IiB1aS1jb3JuZXItIisoTD8ibGVmdCI6InJpZ2h0Iik7YnJlYWs7ZGVmYXVsdDpJKz0iIHVpLWRhdGVwaWNrZXItZ3JvdXAtbWlkZGxlIix4PSIifUkrPSInPiJ9Zm9yKEkrPSI8ZGl2IGNsYXNzPSd1aS1kYXRlcGlja2VyLWhlYWRlciB1aS13aWRnZXQtaGVhZGVyIHVpLWhlbHBlci1jbGVhcmZpeCIreCsiJz4iKygvYWxsfGxlZnQvLnRlc3QoeCkmJjA9PT1EP0w/bjphOiIiKSsoL2FsbHxyaWdodC8udGVzdCh4KSYmMD09PUQ/TD9hOm46IiIpK3RoaXMuX2dlbmVyYXRlTW9udGhZZWFySGVhZGVyKGUsWixldCwkLFgsRD4wfHxNPjAsZyxtKSsiPC9kaXY+PHRhYmxlIGNsYXNzPSd1aS1kYXRlcGlja2VyLWNhbGVuZGFyJz48dGhlYWQ+IisiPHRyPiIsTj1sPyI8dGggY2xhc3M9J3VpLWRhdGVwaWNrZXItd2Vlay1jb2wnPiIrdGhpcy5fZ2V0KGUsIndlZWtIZWFkZXIiKSsiPC90aD4iOiIiLGI9MDs3PmI7YisrKVQ9KGIraCklNyxOKz0iPHRoIisoKGIraCs2KSU3Pj01PyIgY2xhc3M9J3VpLWRhdGVwaWNrZXItd2Vlay1lbmQnIjoiIikrIj4iKyI8c3BhbiB0aXRsZT0nIitkW1RdKyInPiIrcFtUXSsiPC9zcGFuPjwvdGg+Ijtmb3IoSSs9TisiPC90cj48L3RoZWFkPjx0Ym9keT4iLEE9dGhpcy5fZ2V0RGF5c0luTW9udGgoZXQsWiksZXQ9PT1lLnNlbGVjdGVkWWVhciYmWj09PWUuc2VsZWN0ZWRNb250aCYmKGUuc2VsZWN0ZWREYXk9TWF0aC5taW4oZS5zZWxlY3RlZERheSxBKSksRT0odGhpcy5fZ2V0Rmlyc3REYXlPZk1vbnRoKGV0LFopLWgrNyklNyxTPU1hdGguY2VpbCgoRStBKS83KSxZPVE/dGhpcy5tYXhSb3dzPlM/dGhpcy5tYXhSb3dzOlM6Uyx0aGlzLm1heFJvd3M9WSxGPXRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KG5ldyBEYXRlKGV0LFosMS1FKSksUD0wO1k+UDtQKyspe2ZvcihJKz0iPHRyPiIsTz1sPyI8dGQgY2xhc3M9J3VpLWRhdGVwaWNrZXItd2Vlay1jb2wnPiIrdGhpcy5fZ2V0KGUsImNhbGN1bGF0ZVdlZWsiKShGKSsiPC90ZD4iOiIiLGI9MDs3PmI7YisrKWo9Zj9mLmFwcGx5KGUuaW5wdXQ/ZS5pbnB1dFswXTpudWxsLFtGXSk6WyEwLCIiXSxLPUYuZ2V0TW9udGgoKSE9PVosUj1LJiYhdnx8IWpbMF18fCQmJiQ+Rnx8WCYmRj5YLE8rPSI8dGQgY2xhc3M9JyIrKChiK2grNiklNz49NT8iIHVpLWRhdGVwaWNrZXItd2Vlay1lbmQiOiIiKSsoSz8iIHVpLWRhdGVwaWNrZXItb3RoZXItbW9udGgiOiIiKSsoRi5nZXRUaW1lKCk9PT1DLmdldFRpbWUoKSYmWj09PWUuc2VsZWN0ZWRNb250aCYmZS5fa2V5RXZlbnR8fGsuZ2V0VGltZSgpPT09Ri5nZXRUaW1lKCkmJmsuZ2V0VGltZSgpPT09Qy5nZXRUaW1lKCk/IiAiK3RoaXMuX2RheU92ZXJDbGFzczoiIikrKFI/IiAiK3RoaXMuX3Vuc2VsZWN0YWJsZUNsYXNzKyIgdWktc3RhdGUtZGlzYWJsZWQiOiIiKSsoSyYmIV8/IiI6IiAiK2pbMV0rKEYuZ2V0VGltZSgpPT09Vi5nZXRUaW1lKCk/IiAiK3RoaXMuX2N1cnJlbnRDbGFzczoiIikrKEYuZ2V0VGltZSgpPT09Vy5nZXRUaW1lKCk/IiB1aS1kYXRlcGlja2VyLXRvZGF5IjoiIikpKyInIisoSyYmIV98fCFqWzJdPyIiOiIgdGl0bGU9JyIralsyXS5yZXBsYWNlKC8nL2csIiYjMzk7IikrIiciKSsoUj8iIjoiIGRhdGEtaGFuZGxlcj0nc2VsZWN0RGF5JyBkYXRhLWV2ZW50PSdjbGljaycgZGF0YS1tb250aD0nIitGLmdldE1vbnRoKCkrIicgZGF0YS15ZWFyPSciK0YuZ2V0RnVsbFllYXIoKSsiJyIpKyI+IisoSyYmIV8/IiYjeGEwOyI6Uj8iPHNwYW4gY2xhc3M9J3VpLXN0YXRlLWRlZmF1bHQnPiIrRi5nZXREYXRlKCkrIjwvc3Bhbj4iOiI8YSBjbGFzcz0ndWktc3RhdGUtZGVmYXVsdCIrKEYuZ2V0VGltZSgpPT09Vy5nZXRUaW1lKCk/IiB1aS1zdGF0ZS1oaWdobGlnaHQiOiIiKSsoRi5nZXRUaW1lKCk9PT1WLmdldFRpbWUoKT8iIHVpLXN0YXRlLWFjdGl2ZSI6IiIpKyhLPyIgdWktcHJpb3JpdHktc2Vjb25kYXJ5IjoiIikrIicgaHJlZj0nIyc+IitGLmdldERhdGUoKSsiPC9hPiIpKyI8L3RkPiIsRi5zZXREYXRlKEYuZ2V0RGF0ZSgpKzEpLEY9dGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QoRik7SSs9TysiPC90cj4ifVorKyxaPjExJiYoWj0wLGV0KyspLEkrPSI8L3Rib2R5PjwvdGFibGU+IisoUT8iPC9kaXY+IisocVswXT4wJiZNPT09cVsxXS0xPyI8ZGl2IGNsYXNzPSd1aS1kYXRlcGlja2VyLXJvdy1icmVhayc+PC9kaXY+IjoiIik6IiIpLHcrPUl9eSs9d31yZXR1cm4geSs9YyxlLl9rZXlFdmVudD0hMSx5fSxfZ2VuZXJhdGVNb250aFllYXJIZWFkZXI6ZnVuY3Rpb24oZSx0LGksYSxzLG4scixvKXt2YXIgdSxjLGgsbCxkLHAsZyxtLGY9dGhpcy5fZ2V0KGUsImNoYW5nZU1vbnRoIiksXz10aGlzLl9nZXQoZSwiY2hhbmdlWWVhciIpLHY9dGhpcy5fZ2V0KGUsInNob3dNb250aEFmdGVyWWVhciIpLGs9IjxkaXYgY2xhc3M9J3VpLWRhdGVwaWNrZXItdGl0bGUnPiIseT0iIjtpZihufHwhZil5Kz0iPHNwYW4gY2xhc3M9J3VpLWRhdGVwaWNrZXItbW9udGgnPiIrclt0XSsiPC9zcGFuPiI7ZWxzZXtmb3IodT1hJiZhLmdldEZ1bGxZZWFyKCk9PT1pLGM9cyYmcy5nZXRGdWxsWWVhcigpPT09aSx5Kz0iPHNlbGVjdCBjbGFzcz0ndWktZGF0ZXBpY2tlci1tb250aCcgZGF0YS1oYW5kbGVyPSdzZWxlY3RNb250aCcgZGF0YS1ldmVudD0nY2hhbmdlJz4iLGg9MDsxMj5oO2grKykoIXV8fGg+PWEuZ2V0TW9udGgoKSkmJighY3x8cy5nZXRNb250aCgpPj1oKSYmKHkrPSI8b3B0aW9uIHZhbHVlPSciK2grIiciKyhoPT09dD8iIHNlbGVjdGVkPSdzZWxlY3RlZCciOiIiKSsiPiIrb1toXSsiPC9vcHRpb24+Iik7eSs9Ijwvc2VsZWN0PiJ9aWYodnx8KGsrPXkrKCFuJiZmJiZfPyIiOiImI3hhMDsiKSksIWUueWVhcnNodG1sKWlmKGUueWVhcnNodG1sPSIiLG58fCFfKWsrPSI8c3BhbiBjbGFzcz0ndWktZGF0ZXBpY2tlci15ZWFyJz4iK2krIjwvc3Bhbj4iO2Vsc2V7Zm9yKGw9dGhpcy5fZ2V0KGUsInllYXJSYW5nZSIpLnNwbGl0KCI6IiksZD0obmV3IERhdGUpLmdldEZ1bGxZZWFyKCkscD1mdW5jdGlvbihlKXt2YXIgdD1lLm1hdGNoKC9jWytcLV0uKi8pP2krcGFyc2VJbnQoZS5zdWJzdHJpbmcoMSksMTApOmUubWF0Y2goL1srXC1dLiovKT9kK3BhcnNlSW50KGUsMTApOnBhcnNlSW50KGUsMTApOwpyZXR1cm4gaXNOYU4odCk/ZDp0fSxnPXAobFswXSksbT1NYXRoLm1heChnLHAobFsxXXx8IiIpKSxnPWE/TWF0aC5tYXgoZyxhLmdldEZ1bGxZZWFyKCkpOmcsbT1zP01hdGgubWluKG0scy5nZXRGdWxsWWVhcigpKTptLGUueWVhcnNodG1sKz0iPHNlbGVjdCBjbGFzcz0ndWktZGF0ZXBpY2tlci15ZWFyJyBkYXRhLWhhbmRsZXI9J3NlbGVjdFllYXInIGRhdGEtZXZlbnQ9J2NoYW5nZSc+IjttPj1nO2crKyllLnllYXJzaHRtbCs9IjxvcHRpb24gdmFsdWU9JyIrZysiJyIrKGc9PT1pPyIgc2VsZWN0ZWQ9J3NlbGVjdGVkJyI6IiIpKyI+IitnKyI8L29wdGlvbj4iO2UueWVhcnNodG1sKz0iPC9zZWxlY3Q+IixrKz1lLnllYXJzaHRtbCxlLnllYXJzaHRtbD1udWxsfXJldHVybiBrKz10aGlzLl9nZXQoZSwieWVhclN1ZmZpeCIpLHYmJihrKz0oIW4mJmYmJl8/IiI6IiYjeGEwOyIpK3kpLGsrPSI8L2Rpdj4ifSxfYWRqdXN0SW5zdERhdGU6ZnVuY3Rpb24oZSx0LGkpe3ZhciBhPWUuZHJhd1llYXIrKCJZIj09PWk/dDowKSxzPWUuZHJhd01vbnRoKygiTSI9PT1pP3Q6MCksbj1NYXRoLm1pbihlLnNlbGVjdGVkRGF5LHRoaXMuX2dldERheXNJbk1vbnRoKGEscykpKygiRCI9PT1pP3Q6MCkscj10aGlzLl9yZXN0cmljdE1pbk1heChlLHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KG5ldyBEYXRlKGEscyxuKSkpO2Uuc2VsZWN0ZWREYXk9ci5nZXREYXRlKCksZS5kcmF3TW9udGg9ZS5zZWxlY3RlZE1vbnRoPXIuZ2V0TW9udGgoKSxlLmRyYXdZZWFyPWUuc2VsZWN0ZWRZZWFyPXIuZ2V0RnVsbFllYXIoKSwoIk0iPT09aXx8IlkiPT09aSkmJnRoaXMuX25vdGlmeUNoYW5nZShlKX0sX3Jlc3RyaWN0TWluTWF4OmZ1bmN0aW9uKGUsdCl7dmFyIGk9dGhpcy5fZ2V0TWluTWF4RGF0ZShlLCJtaW4iKSxhPXRoaXMuX2dldE1pbk1heERhdGUoZSwibWF4Iikscz1pJiZpPnQ/aTp0O3JldHVybiBhJiZzPmE/YTpzfSxfbm90aWZ5Q2hhbmdlOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuX2dldChlLCJvbkNoYW5nZU1vbnRoWWVhciIpO3QmJnQuYXBwbHkoZS5pbnB1dD9lLmlucHV0WzBdOm51bGwsW2Uuc2VsZWN0ZWRZZWFyLGUuc2VsZWN0ZWRNb250aCsxLGVdKX0sX2dldE51bWJlck9mTW9udGhzOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMuX2dldChlLCJudW1iZXJPZk1vbnRocyIpO3JldHVybiBudWxsPT10P1sxLDFdOiJudW1iZXIiPT10eXBlb2YgdD9bMSx0XTp0fSxfZ2V0TWluTWF4RGF0ZTpmdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLl9kZXRlcm1pbmVEYXRlKGUsdGhpcy5fZ2V0KGUsdCsiRGF0ZSIpLG51bGwpfSxfZ2V0RGF5c0luTW9udGg6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gMzItdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QobmV3IERhdGUoZSx0LDMyKSkuZ2V0RGF0ZSgpfSxfZ2V0Rmlyc3REYXlPZk1vbnRoOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIG5ldyBEYXRlKGUsdCwxKS5nZXREYXkoKX0sX2NhbkFkanVzdE1vbnRoOmZ1bmN0aW9uKGUsdCxpLGEpe3ZhciBzPXRoaXMuX2dldE51bWJlck9mTW9udGhzKGUpLG49dGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QobmV3IERhdGUoaSxhKygwPnQ/dDpzWzBdKnNbMV0pLDEpKTtyZXR1cm4gMD50JiZuLnNldERhdGUodGhpcy5fZ2V0RGF5c0luTW9udGgobi5nZXRGdWxsWWVhcigpLG4uZ2V0TW9udGgoKSkpLHRoaXMuX2lzSW5SYW5nZShlLG4pfSxfaXNJblJhbmdlOmZ1bmN0aW9uKGUsdCl7dmFyIGksYSxzPXRoaXMuX2dldE1pbk1heERhdGUoZSwibWluIiksbj10aGlzLl9nZXRNaW5NYXhEYXRlKGUsIm1heCIpLHI9bnVsbCxvPW51bGwsdT10aGlzLl9nZXQoZSwieWVhclJhbmdlIik7cmV0dXJuIHUmJihpPXUuc3BsaXQoIjoiKSxhPShuZXcgRGF0ZSkuZ2V0RnVsbFllYXIoKSxyPXBhcnNlSW50KGlbMF0sMTApLG89cGFyc2VJbnQoaVsxXSwxMCksaVswXS5tYXRjaCgvWytcLV0uKi8pJiYocis9YSksaVsxXS5tYXRjaCgvWytcLV0uKi8pJiYobys9YSkpLCghc3x8dC5nZXRUaW1lKCk+PXMuZ2V0VGltZSgpKSYmKCFufHx0LmdldFRpbWUoKTw9bi5nZXRUaW1lKCkpJiYoIXJ8fHQuZ2V0RnVsbFllYXIoKT49cikmJighb3x8bz49dC5nZXRGdWxsWWVhcigpKX0sX2dldEZvcm1hdENvbmZpZzpmdW5jdGlvbihlKXt2YXIgdD10aGlzLl9nZXQoZSwic2hvcnRZZWFyQ3V0b2ZmIik7cmV0dXJuIHQ9InN0cmluZyIhPXR5cGVvZiB0P3Q6KG5ldyBEYXRlKS5nZXRGdWxsWWVhcigpJTEwMCtwYXJzZUludCh0LDEwKSx7c2hvcnRZZWFyQ3V0b2ZmOnQsZGF5TmFtZXNTaG9ydDp0aGlzLl9nZXQoZSwiZGF5TmFtZXNTaG9ydCIpLGRheU5hbWVzOnRoaXMuX2dldChlLCJkYXlOYW1lcyIpLG1vbnRoTmFtZXNTaG9ydDp0aGlzLl9nZXQoZSwibW9udGhOYW1lc1Nob3J0IiksbW9udGhOYW1lczp0aGlzLl9nZXQoZSwibW9udGhOYW1lcyIpfX0sX2Zvcm1hdERhdGU6ZnVuY3Rpb24oZSx0LGksYSl7dHx8KGUuY3VycmVudERheT1lLnNlbGVjdGVkRGF5LGUuY3VycmVudE1vbnRoPWUuc2VsZWN0ZWRNb250aCxlLmN1cnJlbnRZZWFyPWUuc2VsZWN0ZWRZZWFyKTt2YXIgcz10PyJvYmplY3QiPT10eXBlb2YgdD90OnRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KG5ldyBEYXRlKGEsaSx0KSk6dGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QobmV3IERhdGUoZS5jdXJyZW50WWVhcixlLmN1cnJlbnRNb250aCxlLmN1cnJlbnREYXkpKTtyZXR1cm4gdGhpcy5mb3JtYXREYXRlKHRoaXMuX2dldChlLCJkYXRlRm9ybWF0Iikscyx0aGlzLl9nZXRGb3JtYXRDb25maWcoZSkpfX0pLGUuZm4uZGF0ZXBpY2tlcj1mdW5jdGlvbih0KXtpZighdGhpcy5sZW5ndGgpcmV0dXJuIHRoaXM7ZS5kYXRlcGlja2VyLmluaXRpYWxpemVkfHwoZShkb2N1bWVudCkubW91c2Vkb3duKGUuZGF0ZXBpY2tlci5fY2hlY2tFeHRlcm5hbENsaWNrKSxlLmRhdGVwaWNrZXIuaW5pdGlhbGl6ZWQ9ITApLDA9PT1lKCIjIitlLmRhdGVwaWNrZXIuX21haW5EaXZJZCkubGVuZ3RoJiZlKCJib2R5IikuYXBwZW5kKGUuZGF0ZXBpY2tlci5kcERpdik7dmFyIGk9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpO3JldHVybiJzdHJpbmciIT10eXBlb2YgdHx8ImlzRGlzYWJsZWQiIT09dCYmImdldERhdGUiIT09dCYmIndpZGdldCIhPT10PyJvcHRpb24iPT09dCYmMj09PWFyZ3VtZW50cy5sZW5ndGgmJiJzdHJpbmciPT10eXBlb2YgYXJndW1lbnRzWzFdP2UuZGF0ZXBpY2tlclsiXyIrdCsiRGF0ZXBpY2tlciJdLmFwcGx5KGUuZGF0ZXBpY2tlcixbdGhpc1swXV0uY29uY2F0KGkpKTp0aGlzLmVhY2goZnVuY3Rpb24oKXsic3RyaW5nIj09dHlwZW9mIHQ/ZS5kYXRlcGlja2VyWyJfIit0KyJEYXRlcGlja2VyIl0uYXBwbHkoZS5kYXRlcGlja2VyLFt0aGlzXS5jb25jYXQoaSkpOmUuZGF0ZXBpY2tlci5fYXR0YWNoRGF0ZXBpY2tlcih0aGlzLHQpfSk6ZS5kYXRlcGlja2VyWyJfIit0KyJEYXRlcGlja2VyIl0uYXBwbHkoZS5kYXRlcGlja2VyLFt0aGlzWzBdXS5jb25jYXQoaSkpfSxlLmRhdGVwaWNrZXI9bmV3IGksZS5kYXRlcGlja2VyLmluaXRpYWxpemVkPSExLGUuZGF0ZXBpY2tlci51dWlkPShuZXcgRGF0ZSkuZ2V0VGltZSgpLGUuZGF0ZXBpY2tlci52ZXJzaW9uPSIxLjEwLjQifSkoalF1ZXJ5KTsoZnVuY3Rpb24oZSl7dmFyIHQ9e2J1dHRvbnM6ITAsaGVpZ2h0OiEwLG1heEhlaWdodDohMCxtYXhXaWR0aDohMCxtaW5IZWlnaHQ6ITAsbWluV2lkdGg6ITAsd2lkdGg6ITB9LGk9e21heEhlaWdodDohMCxtYXhXaWR0aDohMCxtaW5IZWlnaHQ6ITAsbWluV2lkdGg6ITB9O2Uud2lkZ2V0KCJ1aS5kaWFsb2ciLHt2ZXJzaW9uOiIxLjEwLjQiLG9wdGlvbnM6e2FwcGVuZFRvOiJib2R5IixhdXRvT3BlbjohMCxidXR0b25zOltdLGNsb3NlT25Fc2NhcGU6ITAsY2xvc2VUZXh0OiJjbG9zZSIsZGlhbG9nQ2xhc3M6IiIsZHJhZ2dhYmxlOiEwLGhpZGU6bnVsbCxoZWlnaHQ6ImF1dG8iLG1heEhlaWdodDpudWxsLG1heFdpZHRoOm51bGwsbWluSGVpZ2h0OjE1MCxtaW5XaWR0aDoxNTAsbW9kYWw6ITEscG9zaXRpb246e215OiJjZW50ZXIiLGF0OiJjZW50ZXIiLG9mOndpbmRvdyxjb2xsaXNpb246ImZpdCIsdXNpbmc6ZnVuY3Rpb24odCl7dmFyIGk9ZSh0aGlzKS5jc3ModCkub2Zmc2V0KCkudG9wOzA+aSYmZSh0aGlzKS5jc3MoInRvcCIsdC50b3AtaSl9fSxyZXNpemFibGU6ITAsc2hvdzpudWxsLHRpdGxlOm51bGwsd2lkdGg6MzAwLGJlZm9yZUNsb3NlOm51bGwsY2xvc2U6bnVsbCxkcmFnOm51bGwsZHJhZ1N0YXJ0Om51bGwsZHJhZ1N0b3A6bnVsbCxmb2N1czpudWxsLG9wZW46bnVsbCxyZXNpemU6bnVsbCxyZXNpemVTdGFydDpudWxsLHJlc2l6ZVN0b3A6bnVsbH0sX2NyZWF0ZTpmdW5jdGlvbigpe3RoaXMub3JpZ2luYWxDc3M9e2Rpc3BsYXk6dGhpcy5lbGVtZW50WzBdLnN0eWxlLmRpc3BsYXksd2lkdGg6dGhpcy5lbGVtZW50WzBdLnN0eWxlLndpZHRoLG1pbkhlaWdodDp0aGlzLmVsZW1lbnRbMF0uc3R5bGUubWluSGVpZ2h0LG1heEhlaWdodDp0aGlzLmVsZW1lbnRbMF0uc3R5bGUubWF4SGVpZ2h0LGhlaWdodDp0aGlzLmVsZW1lbnRbMF0uc3R5bGUuaGVpZ2h0fSx0aGlzLm9yaWdpbmFsUG9zaXRpb249e3BhcmVudDp0aGlzLmVsZW1lbnQucGFyZW50KCksaW5kZXg6dGhpcy5lbGVtZW50LnBhcmVudCgpLmNoaWxkcmVuKCkuaW5kZXgodGhpcy5lbGVtZW50KX0sdGhpcy5vcmlnaW5hbFRpdGxlPXRoaXMuZWxlbWVudC5hdHRyKCJ0aXRsZSIpLHRoaXMub3B0aW9ucy50aXRsZT10aGlzLm9wdGlvbnMudGl0bGV8fHRoaXMub3JpZ2luYWxUaXRsZSx0aGlzLl9jcmVhdGVXcmFwcGVyKCksdGhpcy5lbGVtZW50LnNob3coKS5yZW1vdmVBdHRyKCJ0aXRsZSIpLmFkZENsYXNzKCJ1aS1kaWFsb2ctY29udGVudCB1aS13aWRnZXQtY29udGVudCIpLmFwcGVuZFRvKHRoaXMudWlEaWFsb2cpLHRoaXMuX2NyZWF0ZVRpdGxlYmFyKCksdGhpcy5fY3JlYXRlQnV0dG9uUGFuZSgpLHRoaXMub3B0aW9ucy5kcmFnZ2FibGUmJmUuZm4uZHJhZ2dhYmxlJiZ0aGlzLl9tYWtlRHJhZ2dhYmxlKCksdGhpcy5vcHRpb25zLnJlc2l6YWJsZSYmZS5mbi5yZXNpemFibGUmJnRoaXMuX21ha2VSZXNpemFibGUoKSx0aGlzLl9pc09wZW49ITF9LF9pbml0OmZ1bmN0aW9uKCl7dGhpcy5vcHRpb25zLmF1dG9PcGVuJiZ0aGlzLm9wZW4oKX0sX2FwcGVuZFRvOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5vcHRpb25zLmFwcGVuZFRvO3JldHVybiB0JiYodC5qcXVlcnl8fHQubm9kZVR5cGUpP2UodCk6dGhpcy5kb2N1bWVudC5maW5kKHR8fCJib2R5IikuZXEoMCl9LF9kZXN0cm95OmZ1bmN0aW9uKCl7dmFyIGUsdD10aGlzLm9yaWdpbmFsUG9zaXRpb247dGhpcy5fZGVzdHJveU92ZXJsYXkoKSx0aGlzLmVsZW1lbnQucmVtb3ZlVW5pcXVlSWQoKS5yZW1vdmVDbGFzcygidWktZGlhbG9nLWNvbnRlbnQgdWktd2lkZ2V0LWNvbnRlbnQiKS5jc3ModGhpcy5vcmlnaW5hbENzcykuZGV0YWNoKCksdGhpcy51aURpYWxvZy5zdG9wKCEwLCEwKS5yZW1vdmUoKSx0aGlzLm9yaWdpbmFsVGl0bGUmJnRoaXMuZWxlbWVudC5hdHRyKCJ0aXRsZSIsdGhpcy5vcmlnaW5hbFRpdGxlKSxlPXQucGFyZW50LmNoaWxkcmVuKCkuZXEodC5pbmRleCksZS5sZW5ndGgmJmVbMF0hPT10aGlzLmVsZW1lbnRbMF0/ZS5iZWZvcmUodGhpcy5lbGVtZW50KTp0LnBhcmVudC5hcHBlbmQodGhpcy5lbGVtZW50KX0sd2lkZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudWlEaWFsb2d9LGRpc2FibGU6ZS5ub29wLGVuYWJsZTplLm5vb3AsY2xvc2U6ZnVuY3Rpb24odCl7dmFyIGksYT10aGlzO2lmKHRoaXMuX2lzT3BlbiYmdGhpcy5fdHJpZ2dlcigiYmVmb3JlQ2xvc2UiLHQpIT09ITEpe2lmKHRoaXMuX2lzT3Blbj0hMSx0aGlzLl9kZXN0cm95T3ZlcmxheSgpLCF0aGlzLm9wZW5lci5maWx0ZXIoIjpmb2N1c2FibGUiKS5mb2N1cygpLmxlbmd0aCl0cnl7aT10aGlzLmRvY3VtZW50WzBdLmFjdGl2ZUVsZW1lbnQsaSYmImJvZHkiIT09aS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpJiZlKGkpLmJsdXIoKX1jYXRjaChzKXt9dGhpcy5faGlkZSh0aGlzLnVpRGlhbG9nLHRoaXMub3B0aW9ucy5oaWRlLGZ1bmN0aW9uKCl7YS5fdHJpZ2dlcigiY2xvc2UiLHQpfSl9fSxpc09wZW46ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5faXNPcGVufSxtb3ZlVG9Ub3A6ZnVuY3Rpb24oKXt0aGlzLl9tb3ZlVG9Ub3AoKX0sX21vdmVUb1RvcDpmdW5jdGlvbihlLHQpe3ZhciBpPSEhdGhpcy51aURpYWxvZy5uZXh0QWxsKCI6dmlzaWJsZSIpLmluc2VydEJlZm9yZSh0aGlzLnVpRGlhbG9nKS5sZW5ndGg7cmV0dXJuIGkmJiF0JiZ0aGlzLl90cmlnZ2VyKCJmb2N1cyIsZSksaX0sb3BlbjpmdW5jdGlvbigpe3ZhciB0PXRoaXM7cmV0dXJuIHRoaXMuX2lzT3Blbj8odGhpcy5fbW92ZVRvVG9wKCkmJnRoaXMuX2ZvY3VzVGFiYmFibGUoKSx1bmRlZmluZWQpOih0aGlzLl9pc09wZW49ITAsdGhpcy5vcGVuZXI9ZSh0aGlzLmRvY3VtZW50WzBdLmFjdGl2ZUVsZW1lbnQpLHRoaXMuX3NpemUoKSx0aGlzLl9wb3NpdGlvbigpLHRoaXMuX2NyZWF0ZU92ZXJsYXkoKSx0aGlzLl9tb3ZlVG9Ub3AobnVsbCwhMCksdGhpcy5fc2hvdyh0aGlzLnVpRGlhbG9nLHRoaXMub3B0aW9ucy5zaG93LGZ1bmN0aW9uKCl7dC5fZm9jdXNUYWJiYWJsZSgpLHQuX3RyaWdnZXIoImZvY3VzIil9KSx0aGlzLl90cmlnZ2VyKCJvcGVuIiksdW5kZWZpbmVkKX0sX2ZvY3VzVGFiYmFibGU6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLmVsZW1lbnQuZmluZCgiW2F1dG9mb2N1c10iKTtlLmxlbmd0aHx8KGU9dGhpcy5lbGVtZW50LmZpbmQoIjp0YWJiYWJsZSIpKSxlLmxlbmd0aHx8KGU9dGhpcy51aURpYWxvZ0J1dHRvblBhbmUuZmluZCgiOnRhYmJhYmxlIikpLGUubGVuZ3RofHwoZT10aGlzLnVpRGlhbG9nVGl0bGViYXJDbG9zZS5maWx0ZXIoIjp0YWJiYWJsZSIpKSxlLmxlbmd0aHx8KGU9dGhpcy51aURpYWxvZyksZS5lcSgwKS5mb2N1cygpfSxfa2VlcEZvY3VzOmZ1bmN0aW9uKHQpe2Z1bmN0aW9uIGkoKXt2YXIgdD10aGlzLmRvY3VtZW50WzBdLmFjdGl2ZUVsZW1lbnQsaT10aGlzLnVpRGlhbG9nWzBdPT09dHx8ZS5jb250YWlucyh0aGlzLnVpRGlhbG9nWzBdLHQpO2l8fHRoaXMuX2ZvY3VzVGFiYmFibGUoKX10LnByZXZlbnREZWZhdWx0KCksaS5jYWxsKHRoaXMpLHRoaXMuX2RlbGF5KGkpfSxfY3JlYXRlV3JhcHBlcjpmdW5jdGlvbigpe3RoaXMudWlEaWFsb2c9ZSgiPGRpdj4iKS5hZGRDbGFzcygidWktZGlhbG9nIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLWZyb250ICIrdGhpcy5vcHRpb25zLmRpYWxvZ0NsYXNzKS5oaWRlKCkuYXR0cih7dGFiSW5kZXg6LTEscm9sZToiZGlhbG9nIn0pLmFwcGVuZFRvKHRoaXMuX2FwcGVuZFRvKCkpLHRoaXMuX29uKHRoaXMudWlEaWFsb2cse2tleWRvd246ZnVuY3Rpb24odCl7aWYodGhpcy5vcHRpb25zLmNsb3NlT25Fc2NhcGUmJiF0LmlzRGVmYXVsdFByZXZlbnRlZCgpJiZ0LmtleUNvZGUmJnQua2V5Q29kZT09PWUudWkua2V5Q29kZS5FU0NBUEUpcmV0dXJuIHQucHJldmVudERlZmF1bHQoKSx0aGlzLmNsb3NlKHQpLHVuZGVmaW5lZDtpZih0LmtleUNvZGU9PT1lLnVpLmtleUNvZGUuVEFCKXt2YXIgaT10aGlzLnVpRGlhbG9nLmZpbmQoIjp0YWJiYWJsZSIpLGE9aS5maWx0ZXIoIjpmaXJzdCIpLHM9aS5maWx0ZXIoIjpsYXN0Iik7dC50YXJnZXQhPT1zWzBdJiZ0LnRhcmdldCE9PXRoaXMudWlEaWFsb2dbMF18fHQuc2hpZnRLZXk/dC50YXJnZXQhPT1hWzBdJiZ0LnRhcmdldCE9PXRoaXMudWlEaWFsb2dbMF18fCF0LnNoaWZ0S2V5fHwocy5mb2N1cygxKSx0LnByZXZlbnREZWZhdWx0KCkpOihhLmZvY3VzKDEpLHQucHJldmVudERlZmF1bHQoKSl9fSxtb3VzZWRvd246ZnVuY3Rpb24oZSl7dGhpcy5fbW92ZVRvVG9wKGUpJiZ0aGlzLl9mb2N1c1RhYmJhYmxlKCl9fSksdGhpcy5lbGVtZW50LmZpbmQoIlthcmlhLWRlc2NyaWJlZGJ5XSIpLmxlbmd0aHx8dGhpcy51aURpYWxvZy5hdHRyKHsiYXJpYS1kZXNjcmliZWRieSI6dGhpcy5lbGVtZW50LnVuaXF1ZUlkKCkuYXR0cigiaWQiKX0pfSxfY3JlYXRlVGl0bGViYXI6ZnVuY3Rpb24oKXt2YXIgdDt0aGlzLnVpRGlhbG9nVGl0bGViYXI9ZSgiPGRpdj4iKS5hZGRDbGFzcygidWktZGlhbG9nLXRpdGxlYmFyIHVpLXdpZGdldC1oZWFkZXIgdWktY29ybmVyLWFsbCB1aS1oZWxwZXItY2xlYXJmaXgiKS5wcmVwZW5kVG8odGhpcy51aURpYWxvZyksdGhpcy5fb24odGhpcy51aURpYWxvZ1RpdGxlYmFyLHttb3VzZWRvd246ZnVuY3Rpb24odCl7ZSh0LnRhcmdldCkuY2xvc2VzdCgiLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSIpfHx0aGlzLnVpRGlhbG9nLmZvY3VzKCl9fSksdGhpcy51aURpYWxvZ1RpdGxlYmFyQ2xvc2U9ZSgiPGJ1dHRvbiB0eXBlPSdidXR0b24nPjwvYnV0dG9uPiIpLmJ1dHRvbih7bGFiZWw6dGhpcy5vcHRpb25zLmNsb3NlVGV4dCxpY29uczp7cHJpbWFyeToidWktaWNvbi1jbG9zZXRoaWNrIn0sdGV4dDohMX0pLmFkZENsYXNzKCJ1aS1kaWFsb2ctdGl0bGViYXItY2xvc2UiKS5hcHBlbmRUbyh0aGlzLnVpRGlhbG9nVGl0bGViYXIpLHRoaXMuX29uKHRoaXMudWlEaWFsb2dUaXRsZWJhckNsb3NlLHtjbGljazpmdW5jdGlvbihlKXtlLnByZXZlbnREZWZhdWx0KCksdGhpcy5jbG9zZShlKX19KSx0PWUoIjxzcGFuPiIpLnVuaXF1ZUlkKCkuYWRkQ2xhc3MoInVpLWRpYWxvZy10aXRsZSIpLnByZXBlbmRUbyh0aGlzLnVpRGlhbG9nVGl0bGViYXIpLHRoaXMuX3RpdGxlKHQpLHRoaXMudWlEaWFsb2cuYXR0cih7ImFyaWEtbGFiZWxsZWRieSI6dC5hdHRyKCJpZCIpfSl9LF90aXRsZTpmdW5jdGlvbihlKXt0aGlzLm9wdGlvbnMudGl0bGV8fGUuaHRtbCgiJiMxNjA7IiksZS50ZXh0KHRoaXMub3B0aW9ucy50aXRsZSl9LF9jcmVhdGVCdXR0b25QYW5lOmZ1bmN0aW9uKCl7dGhpcy51aURpYWxvZ0J1dHRvblBhbmU9ZSgiPGRpdj4iKS5hZGRDbGFzcygidWktZGlhbG9nLWJ1dHRvbnBhbmUgdWktd2lkZ2V0LWNvbnRlbnQgdWktaGVscGVyLWNsZWFyZml4IiksdGhpcy51aUJ1dHRvblNldD1lKCI8ZGl2PiIpLmFkZENsYXNzKCJ1aS1kaWFsb2ctYnV0dG9uc2V0IikuYXBwZW5kVG8odGhpcy51aURpYWxvZ0J1dHRvblBhbmUpLHRoaXMuX2NyZWF0ZUJ1dHRvbnMoKX0sX2NyZWF0ZUJ1dHRvbnM6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLGk9dGhpcy5vcHRpb25zLmJ1dHRvbnM7cmV0dXJuIHRoaXMudWlEaWFsb2dCdXR0b25QYW5lLnJlbW92ZSgpLHRoaXMudWlCdXR0b25TZXQuZW1wdHkoKSxlLmlzRW1wdHlPYmplY3QoaSl8fGUuaXNBcnJheShpKSYmIWkubGVuZ3RoPyh0aGlzLnVpRGlhbG9nLnJlbW92ZUNsYXNzKCJ1aS1kaWFsb2ctYnV0dG9ucyIpLHVuZGVmaW5lZCk6KGUuZWFjaChpLGZ1bmN0aW9uKGksYSl7dmFyIHMsbjthPWUuaXNGdW5jdGlvbihhKT97Y2xpY2s6YSx0ZXh0Oml9OmEsYT1lLmV4dGVuZCh7dHlwZToiYnV0dG9uIn0sYSkscz1hLmNsaWNrLGEuY2xpY2s9ZnVuY3Rpb24oKXtzLmFwcGx5KHQuZWxlbWVudFswXSxhcmd1bWVudHMpfSxuPXtpY29uczphLmljb25zLHRleHQ6YS5zaG93VGV4dH0sZGVsZXRlIGEuaWNvbnMsZGVsZXRlIGEuc2hvd1RleHQsZSgiPGJ1dHRvbj48L2J1dHRvbj4iLGEpLmJ1dHRvbihuKS5hcHBlbmRUbyh0LnVpQnV0dG9uU2V0KX0pLHRoaXMudWlEaWFsb2cuYWRkQ2xhc3MoInVpLWRpYWxvZy1idXR0b25zIiksdGhpcy51aURpYWxvZ0J1dHRvblBhbmUuYXBwZW5kVG8odGhpcy51aURpYWxvZyksdW5kZWZpbmVkKX0sX21ha2VEcmFnZ2FibGU6ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KGUpe3JldHVybntwb3NpdGlvbjplLnBvc2l0aW9uLG9mZnNldDplLm9mZnNldH19dmFyIGk9dGhpcyxhPXRoaXMub3B0aW9uczt0aGlzLnVpRGlhbG9nLmRyYWdnYWJsZSh7Y2FuY2VsOiIudWktZGlhbG9nLWNvbnRlbnQsIC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2UiLGhhbmRsZToiLnVpLWRpYWxvZy10aXRsZWJhciIsY29udGFpbm1lbnQ6ImRvY3VtZW50IixzdGFydDpmdW5jdGlvbihhLHMpe2UodGhpcykuYWRkQ2xhc3MoInVpLWRpYWxvZy1kcmFnZ2luZyIpLGkuX2Jsb2NrRnJhbWVzKCksaS5fdHJpZ2dlcigiZHJhZ1N0YXJ0IixhLHQocykpfSxkcmFnOmZ1bmN0aW9uKGUsYSl7aS5fdHJpZ2dlcigiZHJhZyIsZSx0KGEpKX0sc3RvcDpmdW5jdGlvbihzLG4pe2EucG9zaXRpb249W24ucG9zaXRpb24ubGVmdC1pLmRvY3VtZW50LnNjcm9sbExlZnQoKSxuLnBvc2l0aW9uLnRvcC1pLmRvY3VtZW50LnNjcm9sbFRvcCgpXSxlKHRoaXMpLnJlbW92ZUNsYXNzKCJ1aS1kaWFsb2ctZHJhZ2dpbmciKSxpLl91bmJsb2NrRnJhbWVzKCksaS5fdHJpZ2dlcigiZHJhZ1N0b3AiLHMsdChuKSl9fSl9LF9tYWtlUmVzaXphYmxlOmZ1bmN0aW9uKCl7ZnVuY3Rpb24gdChlKXtyZXR1cm57b3JpZ2luYWxQb3NpdGlvbjplLm9yaWdpbmFsUG9zaXRpb24sb3JpZ2luYWxTaXplOmUub3JpZ2luYWxTaXplLHBvc2l0aW9uOmUucG9zaXRpb24sc2l6ZTplLnNpemV9fXZhciBpPXRoaXMsYT10aGlzLm9wdGlvbnMscz1hLnJlc2l6YWJsZSxuPXRoaXMudWlEaWFsb2cuY3NzKCJwb3NpdGlvbiIpLHI9InN0cmluZyI9PXR5cGVvZiBzP3M6Im4sZSxzLHcsc2Usc3csbmUsbnciO3RoaXMudWlEaWFsb2cucmVzaXphYmxlKHtjYW5jZWw6Ii51aS1kaWFsb2ctY29udGVudCIsY29udGFpbm1lbnQ6ImRvY3VtZW50IixhbHNvUmVzaXplOnRoaXMuZWxlbWVudCxtYXhXaWR0aDphLm1heFdpZHRoLG1heEhlaWdodDphLm1heEhlaWdodCxtaW5XaWR0aDphLm1pbldpZHRoLG1pbkhlaWdodDp0aGlzLl9taW5IZWlnaHQoKSxoYW5kbGVzOnIsc3RhcnQ6ZnVuY3Rpb24oYSxzKXtlKHRoaXMpLmFkZENsYXNzKCJ1aS1kaWFsb2ctcmVzaXppbmciKSxpLl9ibG9ja0ZyYW1lcygpLGkuX3RyaWdnZXIoInJlc2l6ZVN0YXJ0IixhLHQocykpfSxyZXNpemU6ZnVuY3Rpb24oZSxhKXtpLl90cmlnZ2VyKCJyZXNpemUiLGUsdChhKSl9LHN0b3A6ZnVuY3Rpb24ocyxuKXthLmhlaWdodD1lKHRoaXMpLmhlaWdodCgpLGEud2lkdGg9ZSh0aGlzKS53aWR0aCgpLGUodGhpcykucmVtb3ZlQ2xhc3MoInVpLWRpYWxvZy1yZXNpemluZyIpLGkuX3VuYmxvY2tGcmFtZXMoKSxpLl90cmlnZ2VyKCJyZXNpemVTdG9wIixzLHQobikpfX0pLmNzcygicG9zaXRpb24iLG4pfSxfbWluSGVpZ2h0OmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vcHRpb25zO3JldHVybiJhdXRvIj09PWUuaGVpZ2h0P2UubWluSGVpZ2h0Ok1hdGgubWluKGUubWluSGVpZ2h0LGUuaGVpZ2h0KX0sX3Bvc2l0aW9uOmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy51aURpYWxvZy5pcygiOnZpc2libGUiKTtlfHx0aGlzLnVpRGlhbG9nLnNob3coKSx0aGlzLnVpRGlhbG9nLnBvc2l0aW9uKHRoaXMub3B0aW9ucy5wb3NpdGlvbiksZXx8dGhpcy51aURpYWxvZy5oaWRlKCl9LF9zZXRPcHRpb25zOmZ1bmN0aW9uKGEpe3ZhciBzPXRoaXMsbj0hMSxyPXt9O2UuZWFjaChhLGZ1bmN0aW9uKGUsYSl7cy5fc2V0T3B0aW9uKGUsYSksZSBpbiB0JiYobj0hMCksZSBpbiBpJiYocltlXT1hKX0pLG4mJih0aGlzLl9zaXplKCksdGhpcy5fcG9zaXRpb24oKSksdGhpcy51aURpYWxvZy5pcygiOmRhdGEodWktcmVzaXphYmxlKSIpJiZ0aGlzLnVpRGlhbG9nLnJlc2l6YWJsZSgib3B0aW9uIixyKX0sX3NldE9wdGlvbjpmdW5jdGlvbihlLHQpe3ZhciBpLGEscz10aGlzLnVpRGlhbG9nOyJkaWFsb2dDbGFzcyI9PT1lJiZzLnJlbW92ZUNsYXNzKHRoaXMub3B0aW9ucy5kaWFsb2dDbGFzcykuYWRkQ2xhc3ModCksImRpc2FibGVkIiE9PWUmJih0aGlzLl9zdXBlcihlLHQpLCJhcHBlbmRUbyI9PT1lJiZ0aGlzLnVpRGlhbG9nLmFwcGVuZFRvKHRoaXMuX2FwcGVuZFRvKCkpLCJidXR0b25zIj09PWUmJnRoaXMuX2NyZWF0ZUJ1dHRvbnMoKSwiY2xvc2VUZXh0Ij09PWUmJnRoaXMudWlEaWFsb2dUaXRsZWJhckNsb3NlLmJ1dHRvbih7bGFiZWw6IiIrdH0pLCJkcmFnZ2FibGUiPT09ZSYmKGk9cy5pcygiOmRhdGEodWktZHJhZ2dhYmxlKSIpLGkmJiF0JiZzLmRyYWdnYWJsZSgiZGVzdHJveSIpLCFpJiZ0JiZ0aGlzLl9tYWtlRHJhZ2dhYmxlKCkpLCJwb3NpdGlvbiI9PT1lJiZ0aGlzLl9wb3NpdGlvbigpLCJyZXNpemFibGUiPT09ZSYmKGE9cy5pcygiOmRhdGEodWktcmVzaXphYmxlKSIpLGEmJiF0JiZzLnJlc2l6YWJsZSgiZGVzdHJveSIpLGEmJiJzdHJpbmciPT10eXBlb2YgdCYmcy5yZXNpemFibGUoIm9wdGlvbiIsImhhbmRsZXMiLHQpLGF8fHQ9PT0hMXx8dGhpcy5fbWFrZVJlc2l6YWJsZSgpKSwidGl0bGUiPT09ZSYmdGhpcy5fdGl0bGUodGhpcy51aURpYWxvZ1RpdGxlYmFyLmZpbmQoIi51aS1kaWFsb2ctdGl0bGUiKSkpfSxfc2l6ZTpmdW5jdGlvbigpe3ZhciBlLHQsaSxhPXRoaXMub3B0aW9uczt0aGlzLmVsZW1lbnQuc2hvdygpLmNzcyh7d2lkdGg6ImF1dG8iLG1pbkhlaWdodDowLG1heEhlaWdodDoibm9uZSIsaGVpZ2h0OjB9KSxhLm1pbldpZHRoPmEud2lkdGgmJihhLndpZHRoPWEubWluV2lkdGgpLGU9dGhpcy51aURpYWxvZy5jc3Moe2hlaWdodDoiYXV0byIsd2lkdGg6YS53aWR0aH0pLm91dGVySGVpZ2h0KCksdD1NYXRoLm1heCgwLGEubWluSGVpZ2h0LWUpLGk9Im51bWJlciI9PXR5cGVvZiBhLm1heEhlaWdodD9NYXRoLm1heCgwLGEubWF4SGVpZ2h0LWUpOiJub25lIiwiYXV0byI9PT1hLmhlaWdodD90aGlzLmVsZW1lbnQuY3NzKHttaW5IZWlnaHQ6dCxtYXhIZWlnaHQ6aSxoZWlnaHQ6ImF1dG8ifSk6dGhpcy5lbGVtZW50LmhlaWdodChNYXRoLm1heCgwLGEuaGVpZ2h0LWUpKSx0aGlzLnVpRGlhbG9nLmlzKCI6ZGF0YSh1aS1yZXNpemFibGUpIikmJnRoaXMudWlEaWFsb2cucmVzaXphYmxlKCJvcHRpb24iLCJtaW5IZWlnaHQiLHRoaXMuX21pbkhlaWdodCgpKX0sX2Jsb2NrRnJhbWVzOmZ1bmN0aW9uKCl7dGhpcy5pZnJhbWVCbG9ja3M9dGhpcy5kb2N1bWVudC5maW5kKCJpZnJhbWUiKS5tYXAoZnVuY3Rpb24oKXt2YXIgdD1lKHRoaXMpO3JldHVybiBlKCI8ZGl2PiIpLmNzcyh7cG9zaXRpb246ImFic29sdXRlIix3aWR0aDp0Lm91dGVyV2lkdGgoKSxoZWlnaHQ6dC5vdXRlckhlaWdodCgpfSkuYXBwZW5kVG8odC5wYXJlbnQoKSkub2Zmc2V0KHQub2Zmc2V0KCkpWzBdfSl9LF91bmJsb2NrRnJhbWVzOmZ1bmN0aW9uKCl7dGhpcy5pZnJhbWVCbG9ja3MmJih0aGlzLmlmcmFtZUJsb2Nrcy5yZW1vdmUoKSxkZWxldGUgdGhpcy5pZnJhbWVCbG9ja3MpfSxfYWxsb3dJbnRlcmFjdGlvbjpmdW5jdGlvbih0KXtyZXR1cm4gZSh0LnRhcmdldCkuY2xvc2VzdCgiLnVpLWRpYWxvZyIpLmxlbmd0aD8hMDohIWUodC50YXJnZXQpLmNsb3Nlc3QoIi51aS1kYXRlcGlja2VyIikubGVuZ3RofSxfY3JlYXRlT3ZlcmxheTpmdW5jdGlvbigpe2lmKHRoaXMub3B0aW9ucy5tb2RhbCl7dmFyIHQ9dGhpcyxpPXRoaXMud2lkZ2V0RnVsbE5hbWU7ZS51aS5kaWFsb2cub3ZlcmxheUluc3RhbmNlc3x8dGhpcy5fZGVsYXkoZnVuY3Rpb24oKXtlLnVpLmRpYWxvZy5vdmVybGF5SW5zdGFuY2VzJiZ0aGlzLmRvY3VtZW50LmJpbmQoImZvY3VzaW4uZGlhbG9nIixmdW5jdGlvbihhKXt0Ll9hbGxvd0ludGVyYWN0aW9uKGEpfHwoYS5wcmV2ZW50RGVmYXVsdCgpLGUoIi51aS1kaWFsb2c6dmlzaWJsZTpsYXN0IC51aS1kaWFsb2ctY29udGVudCIpLmRhdGEoaSkuX2ZvY3VzVGFiYmFibGUoKSl9KX0pLHRoaXMub3ZlcmxheT1lKCI8ZGl2PiIpLmFkZENsYXNzKCJ1aS13aWRnZXQtb3ZlcmxheSB1aS1mcm9udCIpLmFwcGVuZFRvKHRoaXMuX2FwcGVuZFRvKCkpLHRoaXMuX29uKHRoaXMub3ZlcmxheSx7bW91c2Vkb3duOiJfa2VlcEZvY3VzIn0pLGUudWkuZGlhbG9nLm92ZXJsYXlJbnN0YW5jZXMrK319LF9kZXN0cm95T3ZlcmxheTpmdW5jdGlvbigpe3RoaXMub3B0aW9ucy5tb2RhbCYmdGhpcy5vdmVybGF5JiYoZS51aS5kaWFsb2cub3ZlcmxheUluc3RhbmNlcy0tLGUudWkuZGlhbG9nLm92ZXJsYXlJbnN0YW5jZXN8fHRoaXMuZG9jdW1lbnQudW5iaW5kKCJmb2N1c2luLmRpYWxvZyIpLHRoaXMub3ZlcmxheS5yZW1vdmUoKSx0aGlzLm92ZXJsYXk9bnVsbCl9fSksZS51aS5kaWFsb2cub3ZlcmxheUluc3RhbmNlcz0wLGUudWlCYWNrQ29tcGF0IT09ITEmJmUud2lkZ2V0KCJ1aS5kaWFsb2ciLGUudWkuZGlhbG9nLHtfcG9zaXRpb246ZnVuY3Rpb24oKXt2YXIgdCxpPXRoaXMub3B0aW9ucy5wb3NpdGlvbixhPVtdLHM9WzAsMF07aT8oKCJzdHJpbmciPT10eXBlb2YgaXx8Im9iamVjdCI9PXR5cGVvZiBpJiYiMCJpbiBpKSYmKGE9aS5zcGxpdD9pLnNwbGl0KCIgIik6W2lbMF0saVsxXV0sMT09PWEubGVuZ3RoJiYoYVsxXT1hWzBdKSxlLmVhY2goWyJsZWZ0IiwidG9wIl0sZnVuY3Rpb24oZSx0KXsrYVtlXT09PWFbZV0mJihzW2VdPWFbZV0sYVtlXT10KX0pLGk9e215OmFbMF0rKDA+c1swXT9zWzBdOiIrIitzWzBdKSsiICIrYVsxXSsoMD5zWzFdP3NbMV06IisiK3NbMV0pLGF0OmEuam9pbigiICIpfSksaT1lLmV4dGVuZCh7fSxlLnVpLmRpYWxvZy5wcm90b3R5cGUub3B0aW9ucy5wb3NpdGlvbixpKSk6aT1lLnVpLmRpYWxvZy5wcm90b3R5cGUub3B0aW9ucy5wb3NpdGlvbix0PXRoaXMudWlEaWFsb2cuaXMoIjp2aXNpYmxlIiksdHx8dGhpcy51aURpYWxvZy5zaG93KCksdGhpcy51aURpYWxvZy5wb3NpdGlvbihpKSx0fHx0aGlzLnVpRGlhbG9nLmhpZGUoKX19KX0pKGpRdWVyeSk7KGZ1bmN0aW9uKHQpe3Qud2lkZ2V0KCJ1aS5kcmFnZ2FibGUiLHQudWkubW91c2Use3ZlcnNpb246IjEuMTAuNCIsd2lkZ2V0RXZlbnRQcmVmaXg6ImRyYWciLG9wdGlvbnM6e2FkZENsYXNzZXM6ITAsYXBwZW5kVG86InBhcmVudCIsYXhpczohMSxjb25uZWN0VG9Tb3J0YWJsZTohMSxjb250YWlubWVudDohMSxjdXJzb3I6ImF1dG8iLGN1cnNvckF0OiExLGdyaWQ6ITEsaGFuZGxlOiExLGhlbHBlcjoib3JpZ2luYWwiLGlmcmFtZUZpeDohMSxvcGFjaXR5OiExLHJlZnJlc2hQb3NpdGlvbnM6ITEscmV2ZXJ0OiExLHJldmVydER1cmF0aW9uOjUwMCxzY29wZToiZGVmYXVsdCIsc2Nyb2xsOiEwLHNjcm9sbFNlbnNpdGl2aXR5OjIwLHNjcm9sbFNwZWVkOjIwLHNuYXA6ITEsc25hcE1vZGU6ImJvdGgiLHNuYXBUb2xlcmFuY2U6MjAsc3RhY2s6ITEsekluZGV4OiExLGRyYWc6bnVsbCxzdGFydDpudWxsLHN0b3A6bnVsbH0sX2NyZWF0ZTpmdW5jdGlvbigpeyJvcmlnaW5hbCIhPT10aGlzLm9wdGlvbnMuaGVscGVyfHwvXig/OnJ8YXxmKS8udGVzdCh0aGlzLmVsZW1lbnQuY3NzKCJwb3NpdGlvbiIpKXx8KHRoaXMuZWxlbWVudFswXS5zdHlsZS5wb3NpdGlvbj0icmVsYXRpdmUiKSx0aGlzLm9wdGlvbnMuYWRkQ2xhc3NlcyYmdGhpcy5lbGVtZW50LmFkZENsYXNzKCJ1aS1kcmFnZ2FibGUiKSx0aGlzLm9wdGlvbnMuZGlzYWJsZWQmJnRoaXMuZWxlbWVudC5hZGRDbGFzcygidWktZHJhZ2dhYmxlLWRpc2FibGVkIiksdGhpcy5fbW91c2VJbml0KCl9LF9kZXN0cm95OmZ1bmN0aW9uKCl7dGhpcy5lbGVtZW50LnJlbW92ZUNsYXNzKCJ1aS1kcmFnZ2FibGUgdWktZHJhZ2dhYmxlLWRyYWdnaW5nIHVpLWRyYWdnYWJsZS1kaXNhYmxlZCIpLHRoaXMuX21vdXNlRGVzdHJveSgpfSxfbW91c2VDYXB0dXJlOmZ1bmN0aW9uKGUpe3ZhciBpPXRoaXMub3B0aW9ucztyZXR1cm4gdGhpcy5oZWxwZXJ8fGkuZGlzYWJsZWR8fHQoZS50YXJnZXQpLmNsb3Nlc3QoIi51aS1yZXNpemFibGUtaGFuZGxlIikubGVuZ3RoPjA/ITE6KHRoaXMuaGFuZGxlPXRoaXMuX2dldEhhbmRsZShlKSx0aGlzLmhhbmRsZT8odChpLmlmcmFtZUZpeD09PSEwPyJpZnJhbWUiOmkuaWZyYW1lRml4KS5lYWNoKGZ1bmN0aW9uKCl7dCgiPGRpdiBjbGFzcz0ndWktZHJhZ2dhYmxlLWlmcmFtZUZpeCcgc3R5bGU9J2JhY2tncm91bmQ6ICNmZmY7Jz48L2Rpdj4iKS5jc3Moe3dpZHRoOnRoaXMub2Zmc2V0V2lkdGgrInB4IixoZWlnaHQ6dGhpcy5vZmZzZXRIZWlnaHQrInB4Iixwb3NpdGlvbjoiYWJzb2x1dGUiLG9wYWNpdHk6IjAuMDAxIix6SW5kZXg6MWUzfSkuY3NzKHQodGhpcykub2Zmc2V0KCkpLmFwcGVuZFRvKCJib2R5Iil9KSwhMCk6ITEpfSxfbW91c2VTdGFydDpmdW5jdGlvbihlKXt2YXIgaT10aGlzLm9wdGlvbnM7cmV0dXJuIHRoaXMuaGVscGVyPXRoaXMuX2NyZWF0ZUhlbHBlcihlKSx0aGlzLmhlbHBlci5hZGRDbGFzcygidWktZHJhZ2dhYmxlLWRyYWdnaW5nIiksdGhpcy5fY2FjaGVIZWxwZXJQcm9wb3J0aW9ucygpLHQudWkuZGRtYW5hZ2VyJiYodC51aS5kZG1hbmFnZXIuY3VycmVudD10aGlzKSx0aGlzLl9jYWNoZU1hcmdpbnMoKSx0aGlzLmNzc1Bvc2l0aW9uPXRoaXMuaGVscGVyLmNzcygicG9zaXRpb24iKSx0aGlzLnNjcm9sbFBhcmVudD10aGlzLmhlbHBlci5zY3JvbGxQYXJlbnQoKSx0aGlzLm9mZnNldFBhcmVudD10aGlzLmhlbHBlci5vZmZzZXRQYXJlbnQoKSx0aGlzLm9mZnNldFBhcmVudENzc1Bvc2l0aW9uPXRoaXMub2Zmc2V0UGFyZW50LmNzcygicG9zaXRpb24iKSx0aGlzLm9mZnNldD10aGlzLnBvc2l0aW9uQWJzPXRoaXMuZWxlbWVudC5vZmZzZXQoKSx0aGlzLm9mZnNldD17dG9wOnRoaXMub2Zmc2V0LnRvcC10aGlzLm1hcmdpbnMudG9wLGxlZnQ6dGhpcy5vZmZzZXQubGVmdC10aGlzLm1hcmdpbnMubGVmdH0sdGhpcy5vZmZzZXQuc2Nyb2xsPSExLHQuZXh0ZW5kKHRoaXMub2Zmc2V0LHtjbGljazp7bGVmdDplLnBhZ2VYLXRoaXMub2Zmc2V0LmxlZnQsdG9wOmUucGFnZVktdGhpcy5vZmZzZXQudG9wfSxwYXJlbnQ6dGhpcy5fZ2V0UGFyZW50T2Zmc2V0KCkscmVsYXRpdmU6dGhpcy5fZ2V0UmVsYXRpdmVPZmZzZXQoKX0pLHRoaXMub3JpZ2luYWxQb3NpdGlvbj10aGlzLnBvc2l0aW9uPXRoaXMuX2dlbmVyYXRlUG9zaXRpb24oZSksdGhpcy5vcmlnaW5hbFBhZ2VYPWUucGFnZVgsdGhpcy5vcmlnaW5hbFBhZ2VZPWUucGFnZVksaS5jdXJzb3JBdCYmdGhpcy5fYWRqdXN0T2Zmc2V0RnJvbUhlbHBlcihpLmN1cnNvckF0KSx0aGlzLl9zZXRDb250YWlubWVudCgpLHRoaXMuX3RyaWdnZXIoInN0YXJ0IixlKT09PSExPyh0aGlzLl9jbGVhcigpLCExKToodGhpcy5fY2FjaGVIZWxwZXJQcm9wb3J0aW9ucygpLHQudWkuZGRtYW5hZ2VyJiYhaS5kcm9wQmVoYXZpb3VyJiZ0LnVpLmRkbWFuYWdlci5wcmVwYXJlT2Zmc2V0cyh0aGlzLGUpLHRoaXMuX21vdXNlRHJhZyhlLCEwKSx0LnVpLmRkbWFuYWdlciYmdC51aS5kZG1hbmFnZXIuZHJhZ1N0YXJ0KHRoaXMsZSksITApfSxfbW91c2VEcmFnOmZ1bmN0aW9uKGUsaSl7aWYoImZpeGVkIj09PXRoaXMub2Zmc2V0UGFyZW50Q3NzUG9zaXRpb24mJih0aGlzLm9mZnNldC5wYXJlbnQ9dGhpcy5fZ2V0UGFyZW50T2Zmc2V0KCkpLHRoaXMucG9zaXRpb249dGhpcy5fZ2VuZXJhdGVQb3NpdGlvbihlKSx0aGlzLnBvc2l0aW9uQWJzPXRoaXMuX2NvbnZlcnRQb3NpdGlvblRvKCJhYnNvbHV0ZSIpLCFpKXt2YXIgcz10aGlzLl91aUhhc2goKTtpZih0aGlzLl90cmlnZ2VyKCJkcmFnIixlLHMpPT09ITEpcmV0dXJuIHRoaXMuX21vdXNlVXAoe30pLCExO3RoaXMucG9zaXRpb249cy5wb3NpdGlvbn1yZXR1cm4gdGhpcy5vcHRpb25zLmF4aXMmJiJ5Ij09PXRoaXMub3B0aW9ucy5heGlzfHwodGhpcy5oZWxwZXJbMF0uc3R5bGUubGVmdD10aGlzLnBvc2l0aW9uLmxlZnQrInB4IiksdGhpcy5vcHRpb25zLmF4aXMmJiJ4Ij09PXRoaXMub3B0aW9ucy5heGlzfHwodGhpcy5oZWxwZXJbMF0uc3R5bGUudG9wPXRoaXMucG9zaXRpb24udG9wKyJweCIpLHQudWkuZGRtYW5hZ2VyJiZ0LnVpLmRkbWFuYWdlci5kcmFnKHRoaXMsZSksITF9LF9tb3VzZVN0b3A6ZnVuY3Rpb24oZSl7dmFyIGk9dGhpcyxzPSExO3JldHVybiB0LnVpLmRkbWFuYWdlciYmIXRoaXMub3B0aW9ucy5kcm9wQmVoYXZpb3VyJiYocz10LnVpLmRkbWFuYWdlci5kcm9wKHRoaXMsZSkpLHRoaXMuZHJvcHBlZCYmKHM9dGhpcy5kcm9wcGVkLHRoaXMuZHJvcHBlZD0hMSksIm9yaWdpbmFsIiE9PXRoaXMub3B0aW9ucy5oZWxwZXJ8fHQuY29udGFpbnModGhpcy5lbGVtZW50WzBdLm93bmVyRG9jdW1lbnQsdGhpcy5lbGVtZW50WzBdKT8oImludmFsaWQiPT09dGhpcy5vcHRpb25zLnJldmVydCYmIXN8fCJ2YWxpZCI9PT10aGlzLm9wdGlvbnMucmV2ZXJ0JiZzfHx0aGlzLm9wdGlvbnMucmV2ZXJ0PT09ITB8fHQuaXNGdW5jdGlvbih0aGlzLm9wdGlvbnMucmV2ZXJ0KSYmdGhpcy5vcHRpb25zLnJldmVydC5jYWxsKHRoaXMuZWxlbWVudCxzKT90KHRoaXMuaGVscGVyKS5hbmltYXRlKHRoaXMub3JpZ2luYWxQb3NpdGlvbixwYXJzZUludCh0aGlzLm9wdGlvbnMucmV2ZXJ0RHVyYXRpb24sMTApLGZ1bmN0aW9uKCl7aS5fdHJpZ2dlcigic3RvcCIsZSkhPT0hMSYmaS5fY2xlYXIoKX0pOnRoaXMuX3RyaWdnZXIoInN0b3AiLGUpIT09ITEmJnRoaXMuX2NsZWFyKCksITEpOiExfSxfbW91c2VVcDpmdW5jdGlvbihlKXtyZXR1cm4gdCgiZGl2LnVpLWRyYWdnYWJsZS1pZnJhbWVGaXgiKS5lYWNoKGZ1bmN0aW9uKCl7dGhpcy5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMpfSksdC51aS5kZG1hbmFnZXImJnQudWkuZGRtYW5hZ2VyLmRyYWdTdG9wKHRoaXMsZSksdC51aS5tb3VzZS5wcm90b3R5cGUuX21vdXNlVXAuY2FsbCh0aGlzLGUpfSxjYW5jZWw6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5oZWxwZXIuaXMoIi51aS1kcmFnZ2FibGUtZHJhZ2dpbmciKT90aGlzLl9tb3VzZVVwKHt9KTp0aGlzLl9jbGVhcigpLHRoaXN9LF9nZXRIYW5kbGU6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMub3B0aW9ucy5oYW5kbGU/ISF0KGUudGFyZ2V0KS5jbG9zZXN0KHRoaXMuZWxlbWVudC5maW5kKHRoaXMub3B0aW9ucy5oYW5kbGUpKS5sZW5ndGg6ITB9LF9jcmVhdGVIZWxwZXI6ZnVuY3Rpb24oZSl7dmFyIGk9dGhpcy5vcHRpb25zLHM9dC5pc0Z1bmN0aW9uKGkuaGVscGVyKT90KGkuaGVscGVyLmFwcGx5KHRoaXMuZWxlbWVudFswXSxbZV0pKToiY2xvbmUiPT09aS5oZWxwZXI/dGhpcy5lbGVtZW50LmNsb25lKCkucmVtb3ZlQXR0cigiaWQiKTp0aGlzLmVsZW1lbnQ7cmV0dXJuIHMucGFyZW50cygiYm9keSIpLmxlbmd0aHx8cy5hcHBlbmRUbygicGFyZW50Ij09PWkuYXBwZW5kVG8/dGhpcy5lbGVtZW50WzBdLnBhcmVudE5vZGU6aS5hcHBlbmRUbyksc1swXT09PXRoaXMuZWxlbWVudFswXXx8LyhmaXhlZHxhYnNvbHV0ZSkvLnRlc3Qocy5jc3MoInBvc2l0aW9uIikpfHxzLmNzcygicG9zaXRpb24iLCJhYnNvbHV0ZSIpLHN9LF9hZGp1c3RPZmZzZXRGcm9tSGVscGVyOmZ1bmN0aW9uKGUpeyJzdHJpbmciPT10eXBlb2YgZSYmKGU9ZS5zcGxpdCgiICIpKSx0LmlzQXJyYXkoZSkmJihlPXtsZWZ0OitlWzBdLHRvcDorZVsxXXx8MH0pLCJsZWZ0ImluIGUmJih0aGlzLm9mZnNldC5jbGljay5sZWZ0PWUubGVmdCt0aGlzLm1hcmdpbnMubGVmdCksInJpZ2h0ImluIGUmJih0aGlzLm9mZnNldC5jbGljay5sZWZ0PXRoaXMuaGVscGVyUHJvcG9ydGlvbnMud2lkdGgtZS5yaWdodCt0aGlzLm1hcmdpbnMubGVmdCksInRvcCJpbiBlJiYodGhpcy5vZmZzZXQuY2xpY2sudG9wPWUudG9wK3RoaXMubWFyZ2lucy50b3ApLCJib3R0b20iaW4gZSYmKHRoaXMub2Zmc2V0LmNsaWNrLnRvcD10aGlzLmhlbHBlclByb3BvcnRpb25zLmhlaWdodC1lLmJvdHRvbSt0aGlzLm1hcmdpbnMudG9wKX0sX2dldFBhcmVudE9mZnNldDpmdW5jdGlvbigpe3ZhciBlPXRoaXMub2Zmc2V0UGFyZW50Lm9mZnNldCgpO3JldHVybiJhYnNvbHV0ZSI9PT10aGlzLmNzc1Bvc2l0aW9uJiZ0aGlzLnNjcm9sbFBhcmVudFswXSE9PWRvY3VtZW50JiZ0LmNvbnRhaW5zKHRoaXMuc2Nyb2xsUGFyZW50WzBdLHRoaXMub2Zmc2V0UGFyZW50WzBdKSYmKGUubGVmdCs9dGhpcy5zY3JvbGxQYXJlbnQuc2Nyb2xsTGVmdCgpLGUudG9wKz10aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxUb3AoKSksKHRoaXMub2Zmc2V0UGFyZW50WzBdPT09ZG9jdW1lbnQuYm9keXx8dGhpcy5vZmZzZXRQYXJlbnRbMF0udGFnTmFtZSYmImh0bWwiPT09dGhpcy5vZmZzZXRQYXJlbnRbMF0udGFnTmFtZS50b0xvd2VyQ2FzZSgpJiZ0LnVpLmllKSYmKGU9e3RvcDowLGxlZnQ6MH0pLHt0b3A6ZS50b3ArKHBhcnNlSW50KHRoaXMub2Zmc2V0UGFyZW50LmNzcygiYm9yZGVyVG9wV2lkdGgiKSwxMCl8fDApLGxlZnQ6ZS5sZWZ0KyhwYXJzZUludCh0aGlzLm9mZnNldFBhcmVudC5jc3MoImJvcmRlckxlZnRXaWR0aCIpLDEwKXx8MCl9fSxfZ2V0UmVsYXRpdmVPZmZzZXQ6ZnVuY3Rpb24oKXtpZigicmVsYXRpdmUiPT09dGhpcy5jc3NQb3NpdGlvbil7dmFyIHQ9dGhpcy5lbGVtZW50LnBvc2l0aW9uKCk7cmV0dXJue3RvcDp0LnRvcC0ocGFyc2VJbnQodGhpcy5oZWxwZXIuY3NzKCJ0b3AiKSwxMCl8fDApK3RoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbFRvcCgpLGxlZnQ6dC5sZWZ0LShwYXJzZUludCh0aGlzLmhlbHBlci5jc3MoImxlZnQiKSwxMCl8fDApK3RoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbExlZnQoKX19cmV0dXJue3RvcDowLGxlZnQ6MH19LF9jYWNoZU1hcmdpbnM6ZnVuY3Rpb24oKXt0aGlzLm1hcmdpbnM9e2xlZnQ6cGFyc2VJbnQodGhpcy5lbGVtZW50LmNzcygibWFyZ2luTGVmdCIpLDEwKXx8MCx0b3A6cGFyc2VJbnQodGhpcy5lbGVtZW50LmNzcygibWFyZ2luVG9wIiksMTApfHwwLHJpZ2h0OnBhcnNlSW50KHRoaXMuZWxlbWVudC5jc3MoIm1hcmdpblJpZ2h0IiksMTApfHwwLGJvdHRvbTpwYXJzZUludCh0aGlzLmVsZW1lbnQuY3NzKCJtYXJnaW5Cb3R0b20iKSwxMCl8fDB9fSxfY2FjaGVIZWxwZXJQcm9wb3J0aW9uczpmdW5jdGlvbigpe3RoaXMuaGVscGVyUHJvcG9ydGlvbnM9e3dpZHRoOnRoaXMuaGVscGVyLm91dGVyV2lkdGgoKSxoZWlnaHQ6dGhpcy5oZWxwZXIub3V0ZXJIZWlnaHQoKX19LF9zZXRDb250YWlubWVudDpmdW5jdGlvbigpe3ZhciBlLGkscyxuPXRoaXMub3B0aW9ucztyZXR1cm4gbi5jb250YWlubWVudD8id2luZG93Ij09PW4uY29udGFpbm1lbnQ/KHRoaXMuY29udGFpbm1lbnQ9W3Qod2luZG93KS5zY3JvbGxMZWZ0KCktdGhpcy5vZmZzZXQucmVsYXRpdmUubGVmdC10aGlzLm9mZnNldC5wYXJlbnQubGVmdCx0KHdpbmRvdykuc2Nyb2xsVG9wKCktdGhpcy5vZmZzZXQucmVsYXRpdmUudG9wLXRoaXMub2Zmc2V0LnBhcmVudC50b3AsdCh3aW5kb3cpLnNjcm9sbExlZnQoKSt0KHdpbmRvdykud2lkdGgoKS10aGlzLmhlbHBlclByb3BvcnRpb25zLndpZHRoLXRoaXMubWFyZ2lucy5sZWZ0LHQod2luZG93KS5zY3JvbGxUb3AoKSsodCh3aW5kb3cpLmhlaWdodCgpfHxkb2N1bWVudC5ib2R5LnBhcmVudE5vZGUuc2Nyb2xsSGVpZ2h0KS10aGlzLmhlbHBlclByb3BvcnRpb25zLmhlaWdodC10aGlzLm1hcmdpbnMudG9wXSx1bmRlZmluZWQpOiJkb2N1bWVudCI9PT1uLmNvbnRhaW5tZW50Pyh0aGlzLmNvbnRhaW5tZW50PVswLDAsdChkb2N1bWVudCkud2lkdGgoKS10aGlzLmhlbHBlclByb3BvcnRpb25zLndpZHRoLXRoaXMubWFyZ2lucy5sZWZ0LCh0KGRvY3VtZW50KS5oZWlnaHQoKXx8ZG9jdW1lbnQuYm9keS5wYXJlbnROb2RlLnNjcm9sbEhlaWdodCktdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQtdGhpcy5tYXJnaW5zLnRvcF0sdW5kZWZpbmVkKTpuLmNvbnRhaW5tZW50LmNvbnN0cnVjdG9yPT09QXJyYXk/KHRoaXMuY29udGFpbm1lbnQ9bi5jb250YWlubWVudCx1bmRlZmluZWQpOigicGFyZW50Ij09PW4uY29udGFpbm1lbnQmJihuLmNvbnRhaW5tZW50PXRoaXMuaGVscGVyWzBdLnBhcmVudE5vZGUpLGk9dChuLmNvbnRhaW5tZW50KSxzPWlbMF0scyYmKGU9ImhpZGRlbiIhPT1pLmNzcygib3ZlcmZsb3ciKSx0aGlzLmNvbnRhaW5tZW50PVsocGFyc2VJbnQoaS5jc3MoImJvcmRlckxlZnRXaWR0aCIpLDEwKXx8MCkrKHBhcnNlSW50KGkuY3NzKCJwYWRkaW5nTGVmdCIpLDEwKXx8MCksKHBhcnNlSW50KGkuY3NzKCJib3JkZXJUb3BXaWR0aCIpLDEwKXx8MCkrKHBhcnNlSW50KGkuY3NzKCJwYWRkaW5nVG9wIiksMTApfHwwKSwoZT9NYXRoLm1heChzLnNjcm9sbFdpZHRoLHMub2Zmc2V0V2lkdGgpOnMub2Zmc2V0V2lkdGgpLShwYXJzZUludChpLmNzcygiYm9yZGVyUmlnaHRXaWR0aCIpLDEwKXx8MCktKHBhcnNlSW50KGkuY3NzKCJwYWRkaW5nUmlnaHQiKSwxMCl8fDApLXRoaXMuaGVscGVyUHJvcG9ydGlvbnMud2lkdGgtdGhpcy5tYXJnaW5zLmxlZnQtdGhpcy5tYXJnaW5zLnJpZ2h0LChlP01hdGgubWF4KHMuc2Nyb2xsSGVpZ2h0LHMub2Zmc2V0SGVpZ2h0KTpzLm9mZnNldEhlaWdodCktKHBhcnNlSW50KGkuY3NzKCJib3JkZXJCb3R0b21XaWR0aCIpLDEwKXx8MCktKHBhcnNlSW50KGkuY3NzKCJwYWRkaW5nQm90dG9tIiksMTApfHwwKS10aGlzLmhlbHBlclByb3BvcnRpb25zLmhlaWdodC10aGlzLm1hcmdpbnMudG9wLXRoaXMubWFyZ2lucy5ib3R0b21dLHRoaXMucmVsYXRpdmVfY29udGFpbmVyPWkpLHVuZGVmaW5lZCk6KHRoaXMuY29udGFpbm1lbnQ9bnVsbCx1bmRlZmluZWQpfSxfY29udmVydFBvc2l0aW9uVG86ZnVuY3Rpb24oZSxpKXtpfHwoaT10aGlzLnBvc2l0aW9uKTt2YXIgcz0iYWJzb2x1dGUiPT09ZT8xOi0xLG49ImFic29sdXRlIiE9PXRoaXMuY3NzUG9zaXRpb258fHRoaXMuc2Nyb2xsUGFyZW50WzBdIT09ZG9jdW1lbnQmJnQuY29udGFpbnModGhpcy5zY3JvbGxQYXJlbnRbMF0sdGhpcy5vZmZzZXRQYXJlbnRbMF0pP3RoaXMuc2Nyb2xsUGFyZW50OnRoaXMub2Zmc2V0UGFyZW50O3JldHVybiB0aGlzLm9mZnNldC5zY3JvbGx8fCh0aGlzLm9mZnNldC5zY3JvbGw9e3RvcDpuLnNjcm9sbFRvcCgpLGxlZnQ6bi5zY3JvbGxMZWZ0KCl9KSx7dG9wOmkudG9wK3RoaXMub2Zmc2V0LnJlbGF0aXZlLnRvcCpzK3RoaXMub2Zmc2V0LnBhcmVudC50b3Aqcy0oImZpeGVkIj09PXRoaXMuY3NzUG9zaXRpb24/LXRoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbFRvcCgpOnRoaXMub2Zmc2V0LnNjcm9sbC50b3ApKnMsbGVmdDppLmxlZnQrdGhpcy5vZmZzZXQucmVsYXRpdmUubGVmdCpzK3RoaXMub2Zmc2V0LnBhcmVudC5sZWZ0KnMtKCJmaXhlZCI9PT10aGlzLmNzc1Bvc2l0aW9uPy10aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxMZWZ0KCk6dGhpcy5vZmZzZXQuc2Nyb2xsLmxlZnQpKnN9fSxfZ2VuZXJhdGVQb3NpdGlvbjpmdW5jdGlvbihlKXt2YXIgaSxzLG4sYSxvPXRoaXMub3B0aW9ucyxyPSJhYnNvbHV0ZSIhPT10aGlzLmNzc1Bvc2l0aW9ufHx0aGlzLnNjcm9sbFBhcmVudFswXSE9PWRvY3VtZW50JiZ0LmNvbnRhaW5zKHRoaXMuc2Nyb2xsUGFyZW50WzBdLHRoaXMub2Zmc2V0UGFyZW50WzBdKT90aGlzLnNjcm9sbFBhcmVudDp0aGlzLm9mZnNldFBhcmVudCxsPWUucGFnZVgsaD1lLnBhZ2VZO3JldHVybiB0aGlzLm9mZnNldC5zY3JvbGx8fCh0aGlzLm9mZnNldC5zY3JvbGw9e3RvcDpyLnNjcm9sbFRvcCgpLGxlZnQ6ci5zY3JvbGxMZWZ0KCl9KSx0aGlzLm9yaWdpbmFsUG9zaXRpb24mJih0aGlzLmNvbnRhaW5tZW50JiYodGhpcy5yZWxhdGl2ZV9jb250YWluZXI/KHM9dGhpcy5yZWxhdGl2ZV9jb250YWluZXIub2Zmc2V0KCksaT1bdGhpcy5jb250YWlubWVudFswXStzLmxlZnQsdGhpcy5jb250YWlubWVudFsxXStzLnRvcCx0aGlzLmNvbnRhaW5tZW50WzJdK3MubGVmdCx0aGlzLmNvbnRhaW5tZW50WzNdK3MudG9wXSk6aT10aGlzLmNvbnRhaW5tZW50LGUucGFnZVgtdGhpcy5vZmZzZXQuY2xpY2subGVmdDxpWzBdJiYobD1pWzBdK3RoaXMub2Zmc2V0LmNsaWNrLmxlZnQpLGUucGFnZVktdGhpcy5vZmZzZXQuY2xpY2sudG9wPGlbMV0mJihoPWlbMV0rdGhpcy5vZmZzZXQuY2xpY2sudG9wKSxlLnBhZ2VYLXRoaXMub2Zmc2V0LmNsaWNrLmxlZnQ+aVsyXSYmKGw9aVsyXSt0aGlzLm9mZnNldC5jbGljay5sZWZ0KSxlLnBhZ2VZLXRoaXMub2Zmc2V0LmNsaWNrLnRvcD5pWzNdJiYoaD1pWzNdK3RoaXMub2Zmc2V0LmNsaWNrLnRvcCkpLG8uZ3JpZCYmKG49by5ncmlkWzFdP3RoaXMub3JpZ2luYWxQYWdlWStNYXRoLnJvdW5kKChoLXRoaXMub3JpZ2luYWxQYWdlWSkvby5ncmlkWzFdKSpvLmdyaWRbMV06dGhpcy5vcmlnaW5hbFBhZ2VZLGg9aT9uLXRoaXMub2Zmc2V0LmNsaWNrLnRvcD49aVsxXXx8bi10aGlzLm9mZnNldC5jbGljay50b3A+aVszXT9uOm4tdGhpcy5vZmZzZXQuY2xpY2sudG9wPj1pWzFdP24tby5ncmlkWzFdOm4rby5ncmlkWzFdOm4sYT1vLmdyaWRbMF0/dGhpcy5vcmlnaW5hbFBhZ2VYK01hdGgucm91bmQoKGwtdGhpcy5vcmlnaW5hbFBhZ2VYKS9vLmdyaWRbMF0pKm8uZ3JpZFswXTp0aGlzLm9yaWdpbmFsUGFnZVgsbD1pP2EtdGhpcy5vZmZzZXQuY2xpY2subGVmdD49aVswXXx8YS10aGlzLm9mZnNldC5jbGljay5sZWZ0PmlbMl0/YTphLXRoaXMub2Zmc2V0LmNsaWNrLmxlZnQ+PWlbMF0/YS1vLmdyaWRbMF06YStvLmdyaWRbMF06YSkpLHt0b3A6aC10aGlzLm9mZnNldC5jbGljay50b3AtdGhpcy5vZmZzZXQucmVsYXRpdmUudG9wLXRoaXMub2Zmc2V0LnBhcmVudC50b3ArKCJmaXhlZCI9PT10aGlzLmNzc1Bvc2l0aW9uPy10aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxUb3AoKTp0aGlzLm9mZnNldC5zY3JvbGwudG9wKSxsZWZ0OmwtdGhpcy5vZmZzZXQuY2xpY2subGVmdC10aGlzLm9mZnNldC5yZWxhdGl2ZS5sZWZ0LXRoaXMub2Zmc2V0LnBhcmVudC5sZWZ0KygiZml4ZWQiPT09dGhpcy5jc3NQb3NpdGlvbj8tdGhpcy5zY3JvbGxQYXJlbnQuc2Nyb2xsTGVmdCgpOnRoaXMub2Zmc2V0LnNjcm9sbC5sZWZ0KX19LF9jbGVhcjpmdW5jdGlvbigpe3RoaXMuaGVscGVyLnJlbW92ZUNsYXNzKCJ1aS1kcmFnZ2FibGUtZHJhZ2dpbmciKSx0aGlzLmhlbHBlclswXT09PXRoaXMuZWxlbWVudFswXXx8dGhpcy5jYW5jZWxIZWxwZXJSZW1vdmFsfHx0aGlzLmhlbHBlci5yZW1vdmUoKSx0aGlzLmhlbHBlcj1udWxsLHRoaXMuY2FuY2VsSGVscGVyUmVtb3ZhbD0hMX0sX3RyaWdnZXI6ZnVuY3Rpb24oZSxpLHMpe3JldHVybiBzPXN8fHRoaXMuX3VpSGFzaCgpLHQudWkucGx1Z2luLmNhbGwodGhpcyxlLFtpLHNdKSwiZHJhZyI9PT1lJiYodGhpcy5wb3NpdGlvbkFicz10aGlzLl9jb252ZXJ0UG9zaXRpb25UbygiYWJzb2x1dGUiKSksdC5XaWRnZXQucHJvdG90eXBlLl90cmlnZ2VyLmNhbGwodGhpcyxlLGkscyl9LHBsdWdpbnM6e30sX3VpSGFzaDpmdW5jdGlvbigpe3JldHVybntoZWxwZXI6dGhpcy5oZWxwZXIscG9zaXRpb246dGhpcy5wb3NpdGlvbixvcmlnaW5hbFBvc2l0aW9uOnRoaXMub3JpZ2luYWxQb3NpdGlvbixvZmZzZXQ6dGhpcy5wb3NpdGlvbkFic319fSksdC51aS5wbHVnaW4uYWRkKCJkcmFnZ2FibGUiLCJjb25uZWN0VG9Tb3J0YWJsZSIse3N0YXJ0OmZ1bmN0aW9uKGUsaSl7dmFyIHM9dCh0aGlzKS5kYXRhKCJ1aS1kcmFnZ2FibGUiKSxuPXMub3B0aW9ucyxhPXQuZXh0ZW5kKHt9LGkse2l0ZW06cy5lbGVtZW50fSk7cy5zb3J0YWJsZXM9W10sdChuLmNvbm5lY3RUb1NvcnRhYmxlKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGk9dC5kYXRhKHRoaXMsInVpLXNvcnRhYmxlIik7aSYmIWkub3B0aW9ucy5kaXNhYmxlZCYmKHMuc29ydGFibGVzLnB1c2goe2luc3RhbmNlOmksc2hvdWxkUmV2ZXJ0Omkub3B0aW9ucy5yZXZlcnR9KSxpLnJlZnJlc2hQb3NpdGlvbnMoKSxpLl90cmlnZ2VyKCJhY3RpdmF0ZSIsZSxhKSl9KX0sc3RvcDpmdW5jdGlvbihlLGkpe3ZhciBzPXQodGhpcykuZGF0YSgidWktZHJhZ2dhYmxlIiksbj10LmV4dGVuZCh7fSxpLHtpdGVtOnMuZWxlbWVudH0pO3QuZWFjaChzLnNvcnRhYmxlcyxmdW5jdGlvbigpe3RoaXMuaW5zdGFuY2UuaXNPdmVyPyh0aGlzLmluc3RhbmNlLmlzT3Zlcj0wLHMuY2FuY2VsSGVscGVyUmVtb3ZhbD0hMCx0aGlzLmluc3RhbmNlLmNhbmNlbEhlbHBlclJlbW92YWw9ITEsdGhpcy5zaG91bGRSZXZlcnQmJih0aGlzLmluc3RhbmNlLm9wdGlvbnMucmV2ZXJ0PXRoaXMuc2hvdWxkUmV2ZXJ0KSx0aGlzLmluc3RhbmNlLl9tb3VzZVN0b3AoZSksdGhpcy5pbnN0YW5jZS5vcHRpb25zLmhlbHBlcj10aGlzLmluc3RhbmNlLm9wdGlvbnMuX2hlbHBlciwib3JpZ2luYWwiPT09cy5vcHRpb25zLmhlbHBlciYmdGhpcy5pbnN0YW5jZS5jdXJyZW50SXRlbS5jc3Moe3RvcDoiYXV0byIsbGVmdDoiYXV0byJ9KSk6KHRoaXMuaW5zdGFuY2UuY2FuY2VsSGVscGVyUmVtb3ZhbD0hMSx0aGlzLmluc3RhbmNlLl90cmlnZ2VyKCJkZWFjdGl2YXRlIixlLG4pKX0pfSxkcmFnOmZ1bmN0aW9uKGUsaSl7dmFyIHM9dCh0aGlzKS5kYXRhKCJ1aS1kcmFnZ2FibGUiKSxuPXRoaXM7dC5lYWNoKHMuc29ydGFibGVzLGZ1bmN0aW9uKCl7dmFyIGE9ITEsbz10aGlzO3RoaXMuaW5zdGFuY2UucG9zaXRpb25BYnM9cy5wb3NpdGlvbkFicyx0aGlzLmluc3RhbmNlLmhlbHBlclByb3BvcnRpb25zPXMuaGVscGVyUHJvcG9ydGlvbnMsdGhpcy5pbnN0YW5jZS5vZmZzZXQuY2xpY2s9cy5vZmZzZXQuY2xpY2ssdGhpcy5pbnN0YW5jZS5faW50ZXJzZWN0c1dpdGgodGhpcy5pbnN0YW5jZS5jb250YWluZXJDYWNoZSkmJihhPSEwLHQuZWFjaChzLnNvcnRhYmxlcyxmdW5jdGlvbigpe3JldHVybiB0aGlzLmluc3RhbmNlLnBvc2l0aW9uQWJzPXMucG9zaXRpb25BYnMsdGhpcy5pbnN0YW5jZS5oZWxwZXJQcm9wb3J0aW9ucz1zLmhlbHBlclByb3BvcnRpb25zLHRoaXMuaW5zdGFuY2Uub2Zmc2V0LmNsaWNrPXMub2Zmc2V0LmNsaWNrLHRoaXMhPT1vJiZ0aGlzLmluc3RhbmNlLl9pbnRlcnNlY3RzV2l0aCh0aGlzLmluc3RhbmNlLmNvbnRhaW5lckNhY2hlKSYmdC5jb250YWlucyhvLmluc3RhbmNlLmVsZW1lbnRbMF0sdGhpcy5pbnN0YW5jZS5lbGVtZW50WzBdKSYmKGE9ITEpLGF9KSksYT8odGhpcy5pbnN0YW5jZS5pc092ZXJ8fCh0aGlzLmluc3RhbmNlLmlzT3Zlcj0xLHRoaXMuaW5zdGFuY2UuY3VycmVudEl0ZW09dChuKS5jbG9uZSgpLnJlbW92ZUF0dHIoImlkIikuYXBwZW5kVG8odGhpcy5pbnN0YW5jZS5lbGVtZW50KS5kYXRhKCJ1aS1zb3J0YWJsZS1pdGVtIiwhMCksdGhpcy5pbnN0YW5jZS5vcHRpb25zLl9oZWxwZXI9dGhpcy5pbnN0YW5jZS5vcHRpb25zLmhlbHBlcix0aGlzLmluc3RhbmNlLm9wdGlvbnMuaGVscGVyPWZ1bmN0aW9uKCl7cmV0dXJuIGkuaGVscGVyWzBdfSxlLnRhcmdldD10aGlzLmluc3RhbmNlLmN1cnJlbnRJdGVtWzBdLHRoaXMuaW5zdGFuY2UuX21vdXNlQ2FwdHVyZShlLCEwKSx0aGlzLmluc3RhbmNlLl9tb3VzZVN0YXJ0KGUsITAsITApLHRoaXMuaW5zdGFuY2Uub2Zmc2V0LmNsaWNrLnRvcD1zLm9mZnNldC5jbGljay50b3AsdGhpcy5pbnN0YW5jZS5vZmZzZXQuY2xpY2subGVmdD1zLm9mZnNldC5jbGljay5sZWZ0LHRoaXMuaW5zdGFuY2Uub2Zmc2V0LnBhcmVudC5sZWZ0LT1zLm9mZnNldC5wYXJlbnQubGVmdC10aGlzLmluc3RhbmNlLm9mZnNldC5wYXJlbnQubGVmdCx0aGlzLmluc3RhbmNlLm9mZnNldC5wYXJlbnQudG9wLT1zLm9mZnNldC5wYXJlbnQudG9wLXRoaXMuaW5zdGFuY2Uub2Zmc2V0LnBhcmVudC50b3Ascy5fdHJpZ2dlcigidG9Tb3J0YWJsZSIsZSkscy5kcm9wcGVkPXRoaXMuaW5zdGFuY2UuZWxlbWVudCxzLmN1cnJlbnRJdGVtPXMuZWxlbWVudCx0aGlzLmluc3RhbmNlLmZyb21PdXRzaWRlPXMpLHRoaXMuaW5zdGFuY2UuY3VycmVudEl0ZW0mJnRoaXMuaW5zdGFuY2UuX21vdXNlRHJhZyhlKSk6dGhpcy5pbnN0YW5jZS5pc092ZXImJih0aGlzLmluc3RhbmNlLmlzT3Zlcj0wLHRoaXMuaW5zdGFuY2UuY2FuY2VsSGVscGVyUmVtb3ZhbD0hMCx0aGlzLmluc3RhbmNlLm9wdGlvbnMucmV2ZXJ0PSExLHRoaXMuaW5zdGFuY2UuX3RyaWdnZXIoIm91dCIsZSx0aGlzLmluc3RhbmNlLl91aUhhc2godGhpcy5pbnN0YW5jZSkpLHRoaXMuaW5zdGFuY2UuX21vdXNlU3RvcChlLCEwKSx0aGlzLmluc3RhbmNlLm9wdGlvbnMuaGVscGVyPXRoaXMuaW5zdGFuY2Uub3B0aW9ucy5faGVscGVyLHRoaXMuaW5zdGFuY2UuY3VycmVudEl0ZW0ucmVtb3ZlKCksdGhpcy5pbnN0YW5jZS5wbGFjZWhvbGRlciYmdGhpcy5pbnN0YW5jZS5wbGFjZWhvbGRlci5yZW1vdmUoKSxzLl90cmlnZ2VyKCJmcm9tU29ydGFibGUiLGUpLHMuZHJvcHBlZD0hMSl9KX19KSx0LnVpLnBsdWdpbi5hZGQoImRyYWdnYWJsZSIsImN1cnNvciIse3N0YXJ0OmZ1bmN0aW9uKCl7dmFyIGU9dCgiYm9keSIpLGk9dCh0aGlzKS5kYXRhKCJ1aS1kcmFnZ2FibGUiKS5vcHRpb25zO2UuY3NzKCJjdXJzb3IiKSYmKGkuX2N1cnNvcj1lLmNzcygiY3Vyc29yIikpLGUuY3NzKCJjdXJzb3IiLGkuY3Vyc29yKX0sc3RvcDpmdW5jdGlvbigpe3ZhciBlPXQodGhpcykuZGF0YSgidWktZHJhZ2dhYmxlIikub3B0aW9ucztlLl9jdXJzb3ImJnQoImJvZHkiKS5jc3MoImN1cnNvciIsZS5fY3Vyc29yKX19KSx0LnVpLnBsdWdpbi5hZGQoImRyYWdnYWJsZSIsIm9wYWNpdHkiLHtzdGFydDpmdW5jdGlvbihlLGkpe3ZhciBzPXQoaS5oZWxwZXIpLG49dCh0aGlzKS5kYXRhKCJ1aS1kcmFnZ2FibGUiKS5vcHRpb25zO3MuY3NzKCJvcGFjaXR5IikmJihuLl9vcGFjaXR5PXMuY3NzKCJvcGFjaXR5IikpLHMuY3NzKCJvcGFjaXR5IixuLm9wYWNpdHkpfSxzdG9wOmZ1bmN0aW9uKGUsaSl7dmFyIHM9dCh0aGlzKS5kYXRhKCJ1aS1kcmFnZ2FibGUiKS5vcHRpb25zO3MuX29wYWNpdHkmJnQoaS5oZWxwZXIpLmNzcygib3BhY2l0eSIscy5fb3BhY2l0eSl9fSksdC51aS5wbHVnaW4uYWRkKCJkcmFnZ2FibGUiLCJzY3JvbGwiLHtzdGFydDpmdW5jdGlvbigpe3ZhciBlPXQodGhpcykuZGF0YSgidWktZHJhZ2dhYmxlIik7ZS5zY3JvbGxQYXJlbnRbMF0hPT1kb2N1bWVudCYmIkhUTUwiIT09ZS5zY3JvbGxQYXJlbnRbMF0udGFnTmFtZSYmKGUub3ZlcmZsb3dPZmZzZXQ9ZS5zY3JvbGxQYXJlbnQub2Zmc2V0KCkpfSxkcmFnOmZ1bmN0aW9uKGUpe3ZhciBpPXQodGhpcykuZGF0YSgidWktZHJhZ2dhYmxlIikscz1pLm9wdGlvbnMsbj0hMTtpLnNjcm9sbFBhcmVudFswXSE9PWRvY3VtZW50JiYiSFRNTCIhPT1pLnNjcm9sbFBhcmVudFswXS50YWdOYW1lPyhzLmF4aXMmJiJ4Ij09PXMuYXhpc3x8KGkub3ZlcmZsb3dPZmZzZXQudG9wK2kuc2Nyb2xsUGFyZW50WzBdLm9mZnNldEhlaWdodC1lLnBhZ2VZPHMuc2Nyb2xsU2Vuc2l0aXZpdHk/aS5zY3JvbGxQYXJlbnRbMF0uc2Nyb2xsVG9wPW49aS5zY3JvbGxQYXJlbnRbMF0uc2Nyb2xsVG9wK3Muc2Nyb2xsU3BlZWQ6ZS5wYWdlWS1pLm92ZXJmbG93T2Zmc2V0LnRvcDxzLnNjcm9sbFNlbnNpdGl2aXR5JiYoaS5zY3JvbGxQYXJlbnRbMF0uc2Nyb2xsVG9wPW49aS5zY3JvbGxQYXJlbnRbMF0uc2Nyb2xsVG9wLXMuc2Nyb2xsU3BlZWQpKSxzLmF4aXMmJiJ5Ij09PXMuYXhpc3x8KGkub3ZlcmZsb3dPZmZzZXQubGVmdCtpLnNjcm9sbFBhcmVudFswXS5vZmZzZXRXaWR0aC1lLnBhZ2VYPHMuc2Nyb2xsU2Vuc2l0aXZpdHk/aS5zY3JvbGxQYXJlbnRbMF0uc2Nyb2xsTGVmdD1uPWkuc2Nyb2xsUGFyZW50WzBdLnNjcm9sbExlZnQrcy5zY3JvbGxTcGVlZDplLnBhZ2VYLWkub3ZlcmZsb3dPZmZzZXQubGVmdDxzLnNjcm9sbFNlbnNpdGl2aXR5JiYoaS5zY3JvbGxQYXJlbnRbMF0uc2Nyb2xsTGVmdD1uPWkuc2Nyb2xsUGFyZW50WzBdLnNjcm9sbExlZnQtcy5zY3JvbGxTcGVlZCkpKToocy5heGlzJiYieCI9PT1zLmF4aXN8fChlLnBhZ2VZLXQoZG9jdW1lbnQpLnNjcm9sbFRvcCgpPHMuc2Nyb2xsU2Vuc2l0aXZpdHk/bj10KGRvY3VtZW50KS5zY3JvbGxUb3AodChkb2N1bWVudCkuc2Nyb2xsVG9wKCktcy5zY3JvbGxTcGVlZCk6dCh3aW5kb3cpLmhlaWdodCgpLShlLnBhZ2VZLXQoZG9jdW1lbnQpLnNjcm9sbFRvcCgpKTxzLnNjcm9sbFNlbnNpdGl2aXR5JiYobj10KGRvY3VtZW50KS5zY3JvbGxUb3AodChkb2N1bWVudCkuc2Nyb2xsVG9wKCkrcy5zY3JvbGxTcGVlZCkpKSxzLmF4aXMmJiJ5Ij09PXMuYXhpc3x8KGUucGFnZVgtdChkb2N1bWVudCkuc2Nyb2xsTGVmdCgpPHMuc2Nyb2xsU2Vuc2l0aXZpdHk/bj10KGRvY3VtZW50KS5zY3JvbGxMZWZ0KHQoZG9jdW1lbnQpLnNjcm9sbExlZnQoKS1zLnNjcm9sbFNwZWVkKTp0KHdpbmRvdykud2lkdGgoKS0oZS5wYWdlWC10KGRvY3VtZW50KS5zY3JvbGxMZWZ0KCkpPHMuc2Nyb2xsU2Vuc2l0aXZpdHkmJihuPXQoZG9jdW1lbnQpLnNjcm9sbExlZnQodChkb2N1bWVudCkuc2Nyb2xsTGVmdCgpK3Muc2Nyb2xsU3BlZWQpKSkpLG4hPT0hMSYmdC51aS5kZG1hbmFnZXImJiFzLmRyb3BCZWhhdmlvdXImJnQudWkuZGRtYW5hZ2VyLnByZXBhcmVPZmZzZXRzKGksZSl9fSksdC51aS5wbHVnaW4uYWRkKCJkcmFnZ2FibGUiLCJzbmFwIix7c3RhcnQ6ZnVuY3Rpb24oKXt2YXIgZT10KHRoaXMpLmRhdGEoInVpLWRyYWdnYWJsZSIpLGk9ZS5vcHRpb25zO2Uuc25hcEVsZW1lbnRzPVtdLHQoaS5zbmFwLmNvbnN0cnVjdG9yIT09U3RyaW5nP2kuc25hcC5pdGVtc3x8IjpkYXRhKHVpLWRyYWdnYWJsZSkiOmkuc25hcCkuZWFjaChmdW5jdGlvbigpe3ZhciBpPXQodGhpcykscz1pLm9mZnNldCgpO3RoaXMhPT1lLmVsZW1lbnRbMF0mJmUuc25hcEVsZW1lbnRzLnB1c2goe2l0ZW06dGhpcyx3aWR0aDppLm91dGVyV2lkdGgoKSxoZWlnaHQ6aS5vdXRlckhlaWdodCgpLHRvcDpzLnRvcCxsZWZ0OnMubGVmdH0pfSl9LGRyYWc6ZnVuY3Rpb24oZSxpKXt2YXIgcyxuLGEsbyxyLGwsaCxjLHUsZCxwPXQodGhpcykuZGF0YSgidWktZHJhZ2dhYmxlIiksZz1wLm9wdGlvbnMsZj1nLnNuYXBUb2xlcmFuY2UsbT1pLm9mZnNldC5sZWZ0LF89bStwLmhlbHBlclByb3BvcnRpb25zLndpZHRoLHY9aS5vZmZzZXQudG9wLGI9ditwLmhlbHBlclByb3BvcnRpb25zLmhlaWdodDtmb3IodT1wLnNuYXBFbGVtZW50cy5sZW5ndGgtMTt1Pj0wO3UtLSlyPXAuc25hcEVsZW1lbnRzW3VdLmxlZnQsbD1yK3Auc25hcEVsZW1lbnRzW3VdLndpZHRoLGg9cC5zbmFwRWxlbWVudHNbdV0udG9wLGM9aCtwLnNuYXBFbGVtZW50c1t1XS5oZWlnaHQsci1mPl98fG0+bCtmfHxoLWY+Ynx8dj5jK2Z8fCF0LmNvbnRhaW5zKHAuc25hcEVsZW1lbnRzW3VdLml0ZW0ub3duZXJEb2N1bWVudCxwLnNuYXBFbGVtZW50c1t1XS5pdGVtKT8ocC5zbmFwRWxlbWVudHNbdV0uc25hcHBpbmcmJnAub3B0aW9ucy5zbmFwLnJlbGVhc2UmJnAub3B0aW9ucy5zbmFwLnJlbGVhc2UuY2FsbChwLmVsZW1lbnQsZSx0LmV4dGVuZChwLl91aUhhc2goKSx7c25hcEl0ZW06cC5zbmFwRWxlbWVudHNbdV0uaXRlbX0pKSxwLnNuYXBFbGVtZW50c1t1XS5zbmFwcGluZz0hMSk6KCJpbm5lciIhPT1nLnNuYXBNb2RlJiYocz1mPj1NYXRoLmFicyhoLWIpLG49Zj49TWF0aC5hYnMoYy12KSxhPWY+PU1hdGguYWJzKHItXyksbz1mPj1NYXRoLmFicyhsLW0pLHMmJihpLnBvc2l0aW9uLnRvcD1wLl9jb252ZXJ0UG9zaXRpb25UbygicmVsYXRpdmUiLHt0b3A6aC1wLmhlbHBlclByb3BvcnRpb25zLmhlaWdodCxsZWZ0OjB9KS50b3AtcC5tYXJnaW5zLnRvcCksbiYmKGkucG9zaXRpb24udG9wPXAuX2NvbnZlcnRQb3NpdGlvblRvKCJyZWxhdGl2ZSIse3RvcDpjLGxlZnQ6MH0pLnRvcC1wLm1hcmdpbnMudG9wKSxhJiYoaS5wb3NpdGlvbi5sZWZ0PXAuX2NvbnZlcnRQb3NpdGlvblRvKCJyZWxhdGl2ZSIse3RvcDowLGxlZnQ6ci1wLmhlbHBlclByb3BvcnRpb25zLndpZHRofSkubGVmdC1wLm1hcmdpbnMubGVmdCksbyYmKGkucG9zaXRpb24ubGVmdD1wLl9jb252ZXJ0UG9zaXRpb25UbygicmVsYXRpdmUiLHt0b3A6MCxsZWZ0Omx9KS5sZWZ0LXAubWFyZ2lucy5sZWZ0KSksZD1zfHxufHxhfHxvLCJvdXRlciIhPT1nLnNuYXBNb2RlJiYocz1mPj1NYXRoLmFicyhoLXYpLG49Zj49TWF0aC5hYnMoYy1iKSxhPWY+PU1hdGguYWJzKHItbSksbz1mPj1NYXRoLmFicyhsLV8pLHMmJihpLnBvc2l0aW9uLnRvcD1wLl9jb252ZXJ0UG9zaXRpb25UbygicmVsYXRpdmUiLHt0b3A6aCxsZWZ0OjB9KS50b3AtcC5tYXJnaW5zLnRvcCksbiYmKGkucG9zaXRpb24udG9wPXAuX2NvbnZlcnRQb3NpdGlvblRvKCJyZWxhdGl2ZSIse3RvcDpjLXAuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0LGxlZnQ6MH0pLnRvcC1wLm1hcmdpbnMudG9wKSxhJiYoaS5wb3NpdGlvbi5sZWZ0PXAuX2NvbnZlcnRQb3NpdGlvblRvKCJyZWxhdGl2ZSIse3RvcDowLGxlZnQ6cn0pLmxlZnQtcC5tYXJnaW5zLmxlZnQpLG8mJihpLnBvc2l0aW9uLmxlZnQ9cC5fY29udmVydFBvc2l0aW9uVG8oInJlbGF0aXZlIix7dG9wOjAsbGVmdDpsLXAuaGVscGVyUHJvcG9ydGlvbnMud2lkdGh9KS5sZWZ0LXAubWFyZ2lucy5sZWZ0KSksIXAuc25hcEVsZW1lbnRzW3VdLnNuYXBwaW5nJiYoc3x8bnx8YXx8b3x8ZCkmJnAub3B0aW9ucy5zbmFwLnNuYXAmJnAub3B0aW9ucy5zbmFwLnNuYXAuY2FsbChwLmVsZW1lbnQsZSx0LmV4dGVuZChwLl91aUhhc2goKSx7c25hcEl0ZW06cC5zbmFwRWxlbWVudHNbdV0uaXRlbX0pKSxwLnNuYXBFbGVtZW50c1t1XS5zbmFwcGluZz1zfHxufHxhfHxvfHxkKX19KSx0LnVpLnBsdWdpbi5hZGQoImRyYWdnYWJsZSIsInN0YWNrIix7c3RhcnQ6ZnVuY3Rpb24oKXt2YXIgZSxpPXRoaXMuZGF0YSgidWktZHJhZ2dhYmxlIikub3B0aW9ucyxzPXQubWFrZUFycmF5KHQoaS5zdGFjaykpLnNvcnQoZnVuY3Rpb24oZSxpKXtyZXR1cm4ocGFyc2VJbnQodChlKS5jc3MoInpJbmRleCIpLDEwKXx8MCktKHBhcnNlSW50KHQoaSkuY3NzKCJ6SW5kZXgiKSwxMCl8fDApfSk7cy5sZW5ndGgmJihlPXBhcnNlSW50KHQoc1swXSkuY3NzKCJ6SW5kZXgiKSwxMCl8fDAsdChzKS5lYWNoKGZ1bmN0aW9uKGkpe3QodGhpcykuY3NzKCJ6SW5kZXgiLGUraSl9KSx0aGlzLmNzcygiekluZGV4IixlK3MubGVuZ3RoKSl9fSksdC51aS5wbHVnaW4uYWRkKCJkcmFnZ2FibGUiLCJ6SW5kZXgiLHtzdGFydDpmdW5jdGlvbihlLGkpe3ZhciBzPXQoaS5oZWxwZXIpLG49dCh0aGlzKS5kYXRhKCJ1aS1kcmFnZ2FibGUiKS5vcHRpb25zO3MuY3NzKCJ6SW5kZXgiKSYmKG4uX3pJbmRleD1zLmNzcygiekluZGV4IikpLHMuY3NzKCJ6SW5kZXgiLG4uekluZGV4KX0sc3RvcDpmdW5jdGlvbihlLGkpe3ZhciBzPXQodGhpcykuZGF0YSgidWktZHJhZ2dhYmxlIikub3B0aW9ucztzLl96SW5kZXgmJnQoaS5oZWxwZXIpLmNzcygiekluZGV4IixzLl96SW5kZXgpfX0pfSkoalF1ZXJ5KTsoZnVuY3Rpb24odCl7ZnVuY3Rpb24gZSh0LGUsaSl7cmV0dXJuIHQ+ZSYmZStpPnR9dC53aWRnZXQoInVpLmRyb3BwYWJsZSIse3ZlcnNpb246IjEuMTAuNCIsd2lkZ2V0RXZlbnRQcmVmaXg6ImRyb3AiLG9wdGlvbnM6e2FjY2VwdDoiKiIsYWN0aXZlQ2xhc3M6ITEsYWRkQ2xhc3NlczohMCxncmVlZHk6ITEsaG92ZXJDbGFzczohMSxzY29wZToiZGVmYXVsdCIsdG9sZXJhbmNlOiJpbnRlcnNlY3QiLGFjdGl2YXRlOm51bGwsZGVhY3RpdmF0ZTpudWxsLGRyb3A6bnVsbCxvdXQ6bnVsbCxvdmVyOm51bGx9LF9jcmVhdGU6ZnVuY3Rpb24oKXt2YXIgZSxpPXRoaXMub3B0aW9ucyxzPWkuYWNjZXB0O3RoaXMuaXNvdmVyPSExLHRoaXMuaXNvdXQ9ITAsdGhpcy5hY2NlcHQ9dC5pc0Z1bmN0aW9uKHMpP3M6ZnVuY3Rpb24odCl7cmV0dXJuIHQuaXMocyl9LHRoaXMucHJvcG9ydGlvbnM9ZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD8oZT1hcmd1bWVudHNbMF0sdW5kZWZpbmVkKTplP2U6ZT17d2lkdGg6dGhpcy5lbGVtZW50WzBdLm9mZnNldFdpZHRoLGhlaWdodDp0aGlzLmVsZW1lbnRbMF0ub2Zmc2V0SGVpZ2h0fX0sdC51aS5kZG1hbmFnZXIuZHJvcHBhYmxlc1tpLnNjb3BlXT10LnVpLmRkbWFuYWdlci5kcm9wcGFibGVzW2kuc2NvcGVdfHxbXSx0LnVpLmRkbWFuYWdlci5kcm9wcGFibGVzW2kuc2NvcGVdLnB1c2godGhpcyksaS5hZGRDbGFzc2VzJiZ0aGlzLmVsZW1lbnQuYWRkQ2xhc3MoInVpLWRyb3BwYWJsZSIpfSxfZGVzdHJveTpmdW5jdGlvbigpe2Zvcih2YXIgZT0wLGk9dC51aS5kZG1hbmFnZXIuZHJvcHBhYmxlc1t0aGlzLm9wdGlvbnMuc2NvcGVdO2kubGVuZ3RoPmU7ZSsrKWlbZV09PT10aGlzJiZpLnNwbGljZShlLDEpO3RoaXMuZWxlbWVudC5yZW1vdmVDbGFzcygidWktZHJvcHBhYmxlIHVpLWRyb3BwYWJsZS1kaXNhYmxlZCIpfSxfc2V0T3B0aW9uOmZ1bmN0aW9uKGUsaSl7ImFjY2VwdCI9PT1lJiYodGhpcy5hY2NlcHQ9dC5pc0Z1bmN0aW9uKGkpP2k6ZnVuY3Rpb24odCl7cmV0dXJuIHQuaXMoaSl9KSx0LldpZGdldC5wcm90b3R5cGUuX3NldE9wdGlvbi5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LF9hY3RpdmF0ZTpmdW5jdGlvbihlKXt2YXIgaT10LnVpLmRkbWFuYWdlci5jdXJyZW50O3RoaXMub3B0aW9ucy5hY3RpdmVDbGFzcyYmdGhpcy5lbGVtZW50LmFkZENsYXNzKHRoaXMub3B0aW9ucy5hY3RpdmVDbGFzcyksaSYmdGhpcy5fdHJpZ2dlcigiYWN0aXZhdGUiLGUsdGhpcy51aShpKSl9LF9kZWFjdGl2YXRlOmZ1bmN0aW9uKGUpe3ZhciBpPXQudWkuZGRtYW5hZ2VyLmN1cnJlbnQ7dGhpcy5vcHRpb25zLmFjdGl2ZUNsYXNzJiZ0aGlzLmVsZW1lbnQucmVtb3ZlQ2xhc3ModGhpcy5vcHRpb25zLmFjdGl2ZUNsYXNzKSxpJiZ0aGlzLl90cmlnZ2VyKCJkZWFjdGl2YXRlIixlLHRoaXMudWkoaSkpfSxfb3ZlcjpmdW5jdGlvbihlKXt2YXIgaT10LnVpLmRkbWFuYWdlci5jdXJyZW50O2kmJihpLmN1cnJlbnRJdGVtfHxpLmVsZW1lbnQpWzBdIT09dGhpcy5lbGVtZW50WzBdJiZ0aGlzLmFjY2VwdC5jYWxsKHRoaXMuZWxlbWVudFswXSxpLmN1cnJlbnRJdGVtfHxpLmVsZW1lbnQpJiYodGhpcy5vcHRpb25zLmhvdmVyQ2xhc3MmJnRoaXMuZWxlbWVudC5hZGRDbGFzcyh0aGlzLm9wdGlvbnMuaG92ZXJDbGFzcyksdGhpcy5fdHJpZ2dlcigib3ZlciIsZSx0aGlzLnVpKGkpKSl9LF9vdXQ6ZnVuY3Rpb24oZSl7dmFyIGk9dC51aS5kZG1hbmFnZXIuY3VycmVudDtpJiYoaS5jdXJyZW50SXRlbXx8aS5lbGVtZW50KVswXSE9PXRoaXMuZWxlbWVudFswXSYmdGhpcy5hY2NlcHQuY2FsbCh0aGlzLmVsZW1lbnRbMF0saS5jdXJyZW50SXRlbXx8aS5lbGVtZW50KSYmKHRoaXMub3B0aW9ucy5ob3ZlckNsYXNzJiZ0aGlzLmVsZW1lbnQucmVtb3ZlQ2xhc3ModGhpcy5vcHRpb25zLmhvdmVyQ2xhc3MpLHRoaXMuX3RyaWdnZXIoIm91dCIsZSx0aGlzLnVpKGkpKSl9LF9kcm9wOmZ1bmN0aW9uKGUsaSl7dmFyIHM9aXx8dC51aS5kZG1hbmFnZXIuY3VycmVudCxuPSExO3JldHVybiBzJiYocy5jdXJyZW50SXRlbXx8cy5lbGVtZW50KVswXSE9PXRoaXMuZWxlbWVudFswXT8odGhpcy5lbGVtZW50LmZpbmQoIjpkYXRhKHVpLWRyb3BwYWJsZSkiKS5ub3QoIi51aS1kcmFnZ2FibGUtZHJhZ2dpbmciKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9dC5kYXRhKHRoaXMsInVpLWRyb3BwYWJsZSIpO3JldHVybiBlLm9wdGlvbnMuZ3JlZWR5JiYhZS5vcHRpb25zLmRpc2FibGVkJiZlLm9wdGlvbnMuc2NvcGU9PT1zLm9wdGlvbnMuc2NvcGUmJmUuYWNjZXB0LmNhbGwoZS5lbGVtZW50WzBdLHMuY3VycmVudEl0ZW18fHMuZWxlbWVudCkmJnQudWkuaW50ZXJzZWN0KHMsdC5leHRlbmQoZSx7b2Zmc2V0OmUuZWxlbWVudC5vZmZzZXQoKX0pLGUub3B0aW9ucy50b2xlcmFuY2UpPyhuPSEwLCExKTp1bmRlZmluZWR9KSxuPyExOnRoaXMuYWNjZXB0LmNhbGwodGhpcy5lbGVtZW50WzBdLHMuY3VycmVudEl0ZW18fHMuZWxlbWVudCk/KHRoaXMub3B0aW9ucy5hY3RpdmVDbGFzcyYmdGhpcy5lbGVtZW50LnJlbW92ZUNsYXNzKHRoaXMub3B0aW9ucy5hY3RpdmVDbGFzcyksdGhpcy5vcHRpb25zLmhvdmVyQ2xhc3MmJnRoaXMuZWxlbWVudC5yZW1vdmVDbGFzcyh0aGlzLm9wdGlvbnMuaG92ZXJDbGFzcyksdGhpcy5fdHJpZ2dlcigiZHJvcCIsZSx0aGlzLnVpKHMpKSx0aGlzLmVsZW1lbnQpOiExKTohMX0sdWk6ZnVuY3Rpb24odCl7cmV0dXJue2RyYWdnYWJsZTp0LmN1cnJlbnRJdGVtfHx0LmVsZW1lbnQsaGVscGVyOnQuaGVscGVyLHBvc2l0aW9uOnQucG9zaXRpb24sb2Zmc2V0OnQucG9zaXRpb25BYnN9fX0pLHQudWkuaW50ZXJzZWN0PWZ1bmN0aW9uKHQsaSxzKXtpZighaS5vZmZzZXQpcmV0dXJuITE7dmFyIG4sYSxvPSh0LnBvc2l0aW9uQWJzfHx0LnBvc2l0aW9uLmFic29sdXRlKS5sZWZ0LHI9KHQucG9zaXRpb25BYnN8fHQucG9zaXRpb24uYWJzb2x1dGUpLnRvcCxsPW8rdC5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aCxoPXIrdC5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQsYz1pLm9mZnNldC5sZWZ0LHU9aS5vZmZzZXQudG9wLGQ9YytpLnByb3BvcnRpb25zKCkud2lkdGgscD11K2kucHJvcG9ydGlvbnMoKS5oZWlnaHQ7c3dpdGNoKHMpe2Nhc2UiZml0IjpyZXR1cm4gbz49YyYmZD49bCYmcj49dSYmcD49aDtjYXNlImludGVyc2VjdCI6cmV0dXJuIG8rdC5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aC8yPmMmJmQ+bC10LmhlbHBlclByb3BvcnRpb25zLndpZHRoLzImJnIrdC5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQvMj51JiZwPmgtdC5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQvMjtjYXNlInBvaW50ZXIiOnJldHVybiBuPSh0LnBvc2l0aW9uQWJzfHx0LnBvc2l0aW9uLmFic29sdXRlKS5sZWZ0Kyh0LmNsaWNrT2Zmc2V0fHx0Lm9mZnNldC5jbGljaykubGVmdCxhPSh0LnBvc2l0aW9uQWJzfHx0LnBvc2l0aW9uLmFic29sdXRlKS50b3ArKHQuY2xpY2tPZmZzZXR8fHQub2Zmc2V0LmNsaWNrKS50b3AsZShhLHUsaS5wcm9wb3J0aW9ucygpLmhlaWdodCkmJmUobixjLGkucHJvcG9ydGlvbnMoKS53aWR0aCk7Y2FzZSJ0b3VjaCI6cmV0dXJuKHI+PXUmJnA+PXJ8fGg+PXUmJnA+PWh8fHU+ciYmaD5wKSYmKG8+PWMmJmQ+PW98fGw+PWMmJmQ+PWx8fGM+byYmbD5kKTtkZWZhdWx0OnJldHVybiExfX0sdC51aS5kZG1hbmFnZXI9e2N1cnJlbnQ6bnVsbCxkcm9wcGFibGVzOnsiZGVmYXVsdCI6W119LHByZXBhcmVPZmZzZXRzOmZ1bmN0aW9uKGUsaSl7dmFyIHMsbixhPXQudWkuZGRtYW5hZ2VyLmRyb3BwYWJsZXNbZS5vcHRpb25zLnNjb3BlXXx8W10sbz1pP2kudHlwZTpudWxsLHI9KGUuY3VycmVudEl0ZW18fGUuZWxlbWVudCkuZmluZCgiOmRhdGEodWktZHJvcHBhYmxlKSIpLmFkZEJhY2soKTt0OmZvcihzPTA7YS5sZW5ndGg+cztzKyspaWYoIShhW3NdLm9wdGlvbnMuZGlzYWJsZWR8fGUmJiFhW3NdLmFjY2VwdC5jYWxsKGFbc10uZWxlbWVudFswXSxlLmN1cnJlbnRJdGVtfHxlLmVsZW1lbnQpKSl7Zm9yKG49MDtyLmxlbmd0aD5uO24rKylpZihyW25dPT09YVtzXS5lbGVtZW50WzBdKXthW3NdLnByb3BvcnRpb25zKCkuaGVpZ2h0PTA7Y29udGludWUgdH1hW3NdLnZpc2libGU9Im5vbmUiIT09YVtzXS5lbGVtZW50LmNzcygiZGlzcGxheSIpLGFbc10udmlzaWJsZSYmKCJtb3VzZWRvd24iPT09byYmYVtzXS5fYWN0aXZhdGUuY2FsbChhW3NdLGkpLGFbc10ub2Zmc2V0PWFbc10uZWxlbWVudC5vZmZzZXQoKSxhW3NdLnByb3BvcnRpb25zKHt3aWR0aDphW3NdLmVsZW1lbnRbMF0ub2Zmc2V0V2lkdGgsaGVpZ2h0OmFbc10uZWxlbWVudFswXS5vZmZzZXRIZWlnaHR9KSl9fSxkcm9wOmZ1bmN0aW9uKGUsaSl7dmFyIHM9ITE7cmV0dXJuIHQuZWFjaCgodC51aS5kZG1hbmFnZXIuZHJvcHBhYmxlc1tlLm9wdGlvbnMuc2NvcGVdfHxbXSkuc2xpY2UoKSxmdW5jdGlvbigpe3RoaXMub3B0aW9ucyYmKCF0aGlzLm9wdGlvbnMuZGlzYWJsZWQmJnRoaXMudmlzaWJsZSYmdC51aS5pbnRlcnNlY3QoZSx0aGlzLHRoaXMub3B0aW9ucy50b2xlcmFuY2UpJiYocz10aGlzLl9kcm9wLmNhbGwodGhpcyxpKXx8cyksIXRoaXMub3B0aW9ucy5kaXNhYmxlZCYmdGhpcy52aXNpYmxlJiZ0aGlzLmFjY2VwdC5jYWxsKHRoaXMuZWxlbWVudFswXSxlLmN1cnJlbnRJdGVtfHxlLmVsZW1lbnQpJiYodGhpcy5pc291dD0hMCx0aGlzLmlzb3Zlcj0hMSx0aGlzLl9kZWFjdGl2YXRlLmNhbGwodGhpcyxpKSkpfSksc30sZHJhZ1N0YXJ0OmZ1bmN0aW9uKGUsaSl7ZS5lbGVtZW50LnBhcmVudHNVbnRpbCgiYm9keSIpLmJpbmQoInNjcm9sbC5kcm9wcGFibGUiLGZ1bmN0aW9uKCl7ZS5vcHRpb25zLnJlZnJlc2hQb3NpdGlvbnN8fHQudWkuZGRtYW5hZ2VyLnByZXBhcmVPZmZzZXRzKGUsaSl9KX0sZHJhZzpmdW5jdGlvbihlLGkpe2Uub3B0aW9ucy5yZWZyZXNoUG9zaXRpb25zJiZ0LnVpLmRkbWFuYWdlci5wcmVwYXJlT2Zmc2V0cyhlLGkpLHQuZWFjaCh0LnVpLmRkbWFuYWdlci5kcm9wcGFibGVzW2Uub3B0aW9ucy5zY29wZV18fFtdLGZ1bmN0aW9uKCl7aWYoIXRoaXMub3B0aW9ucy5kaXNhYmxlZCYmIXRoaXMuZ3JlZWR5Q2hpbGQmJnRoaXMudmlzaWJsZSl7dmFyIHMsbixhLG89dC51aS5pbnRlcnNlY3QoZSx0aGlzLHRoaXMub3B0aW9ucy50b2xlcmFuY2UpLHI9IW8mJnRoaXMuaXNvdmVyPyJpc291dCI6byYmIXRoaXMuaXNvdmVyPyJpc292ZXIiOm51bGw7ciYmKHRoaXMub3B0aW9ucy5ncmVlZHkmJihuPXRoaXMub3B0aW9ucy5zY29wZSxhPXRoaXMuZWxlbWVudC5wYXJlbnRzKCI6ZGF0YSh1aS1kcm9wcGFibGUpIikuZmlsdGVyKGZ1bmN0aW9uKCl7cmV0dXJuIHQuZGF0YSh0aGlzLCJ1aS1kcm9wcGFibGUiKS5vcHRpb25zLnNjb3BlPT09bn0pLGEubGVuZ3RoJiYocz10LmRhdGEoYVswXSwidWktZHJvcHBhYmxlIikscy5ncmVlZHlDaGlsZD0iaXNvdmVyIj09PXIpKSxzJiYiaXNvdmVyIj09PXImJihzLmlzb3Zlcj0hMSxzLmlzb3V0PSEwLHMuX291dC5jYWxsKHMsaSkpLHRoaXNbcl09ITAsdGhpc1siaXNvdXQiPT09cj8iaXNvdmVyIjoiaXNvdXQiXT0hMSx0aGlzWyJpc292ZXIiPT09cj8iX292ZXIiOiJfb3V0Il0uY2FsbCh0aGlzLGkpLHMmJiJpc291dCI9PT1yJiYocy5pc291dD0hMSxzLmlzb3Zlcj0hMCxzLl9vdmVyLmNhbGwocyxpKSkpfX0pfSxkcmFnU3RvcDpmdW5jdGlvbihlLGkpe2UuZWxlbWVudC5wYXJlbnRzVW50aWwoImJvZHkiKS51bmJpbmQoInNjcm9sbC5kcm9wcGFibGUiKSxlLm9wdGlvbnMucmVmcmVzaFBvc2l0aW9uc3x8dC51aS5kZG1hbmFnZXIucHJlcGFyZU9mZnNldHMoZSxpKX19fSkoalF1ZXJ5KTsoZnVuY3Rpb24odCxlKXt2YXIgaT0idWktZWZmZWN0cy0iO3QuZWZmZWN0cz17ZWZmZWN0Ont9fSxmdW5jdGlvbih0LGUpe2Z1bmN0aW9uIGkodCxlLGkpe3ZhciBzPXVbZS50eXBlXXx8e307cmV0dXJuIG51bGw9PXQ/aXx8IWUuZGVmP251bGw6ZS5kZWY6KHQ9cy5mbG9vcj9+fnQ6cGFyc2VGbG9hdCh0KSxpc05hTih0KT9lLmRlZjpzLm1vZD8odCtzLm1vZCklcy5tb2Q6MD50PzA6dD5zLm1heD9zLm1heDp0KX1mdW5jdGlvbiBzKGkpe3ZhciBzPWgoKSxuPXMuX3JnYmE9W107cmV0dXJuIGk9aS50b0xvd2VyQ2FzZSgpLGYobCxmdW5jdGlvbih0LGEpe3ZhciBvLHI9YS5yZS5leGVjKGkpLGw9ciYmYS5wYXJzZShyKSxoPWEuc3BhY2V8fCJyZ2JhIjtyZXR1cm4gbD8obz1zW2hdKGwpLHNbY1toXS5jYWNoZV09b1tjW2hdLmNhY2hlXSxuPXMuX3JnYmE9by5fcmdiYSwhMSk6ZX0pLG4ubGVuZ3RoPygiMCwwLDAsMCI9PT1uLmpvaW4oKSYmdC5leHRlbmQobixhLnRyYW5zcGFyZW50KSxzKTphW2ldfWZ1bmN0aW9uIG4odCxlLGkpe3JldHVybiBpPShpKzEpJTEsMT42Kmk/dCs2KihlLXQpKmk6MT4yKmk/ZToyPjMqaT90KzYqKGUtdCkqKDIvMy1pKTp0fXZhciBhLG89ImJhY2tncm91bmRDb2xvciBib3JkZXJCb3R0b21Db2xvciBib3JkZXJMZWZ0Q29sb3IgYm9yZGVyUmlnaHRDb2xvciBib3JkZXJUb3BDb2xvciBjb2xvciBjb2x1bW5SdWxlQ29sb3Igb3V0bGluZUNvbG9yIHRleHREZWNvcmF0aW9uQ29sb3IgdGV4dEVtcGhhc2lzQ29sb3IiLHI9L14oW1wtK10pPVxzKihcZCtcLj9cZCopLyxsPVt7cmU6L3JnYmE/XChccyooXGR7MSwzfSlccyosXHMqKFxkezEsM30pXHMqLFxzKihcZHsxLDN9KVxzKig/OixccyooXGQ/KD86XC5cZCspPylccyopP1wpLyxwYXJzZTpmdW5jdGlvbih0KXtyZXR1cm5bdFsxXSx0WzJdLHRbM10sdFs0XV19fSx7cmU6L3JnYmE/XChccyooXGQrKD86XC5cZCspPylcJVxzKixccyooXGQrKD86XC5cZCspPylcJVxzKixccyooXGQrKD86XC5cZCspPylcJVxzKig/OixccyooXGQ/KD86XC5cZCspPylccyopP1wpLyxwYXJzZTpmdW5jdGlvbih0KXtyZXR1cm5bMi41NSp0WzFdLDIuNTUqdFsyXSwyLjU1KnRbM10sdFs0XV19fSx7cmU6LyMoW2EtZjAtOV17Mn0pKFthLWYwLTldezJ9KShbYS1mMC05XXsyfSkvLHBhcnNlOmZ1bmN0aW9uKHQpe3JldHVybltwYXJzZUludCh0WzFdLDE2KSxwYXJzZUludCh0WzJdLDE2KSxwYXJzZUludCh0WzNdLDE2KV19fSx7cmU6LyMoW2EtZjAtOV0pKFthLWYwLTldKShbYS1mMC05XSkvLHBhcnNlOmZ1bmN0aW9uKHQpe3JldHVybltwYXJzZUludCh0WzFdK3RbMV0sMTYpLHBhcnNlSW50KHRbMl0rdFsyXSwxNikscGFyc2VJbnQodFszXSt0WzNdLDE2KV19fSx7cmU6L2hzbGE/XChccyooXGQrKD86XC5cZCspPylccyosXHMqKFxkKyg/OlwuXGQrKT8pXCVccyosXHMqKFxkKyg/OlwuXGQrKT8pXCVccyooPzosXHMqKFxkPyg/OlwuXGQrKT8pXHMqKT9cKS8sc3BhY2U6ImhzbGEiLHBhcnNlOmZ1bmN0aW9uKHQpe3JldHVyblt0WzFdLHRbMl0vMTAwLHRbM10vMTAwLHRbNF1dfX1dLGg9dC5Db2xvcj1mdW5jdGlvbihlLGkscyxuKXtyZXR1cm4gbmV3IHQuQ29sb3IuZm4ucGFyc2UoZSxpLHMsbil9LGM9e3JnYmE6e3Byb3BzOntyZWQ6e2lkeDowLHR5cGU6ImJ5dGUifSxncmVlbjp7aWR4OjEsdHlwZToiYnl0ZSJ9LGJsdWU6e2lkeDoyLHR5cGU6ImJ5dGUifX19LGhzbGE6e3Byb3BzOntodWU6e2lkeDowLHR5cGU6ImRlZ3JlZXMifSxzYXR1cmF0aW9uOntpZHg6MSx0eXBlOiJwZXJjZW50In0sbGlnaHRuZXNzOntpZHg6Mix0eXBlOiJwZXJjZW50In19fX0sdT17ImJ5dGUiOntmbG9vcjohMCxtYXg6MjU1fSxwZXJjZW50OnttYXg6MX0sZGVncmVlczp7bW9kOjM2MCxmbG9vcjohMH19LGQ9aC5zdXBwb3J0PXt9LHA9dCgiPHA+IilbMF0sZj10LmVhY2g7cC5zdHlsZS5jc3NUZXh0PSJiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMSwxLDEsLjUpIixkLnJnYmE9cC5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IuaW5kZXhPZigicmdiYSIpPi0xLGYoYyxmdW5jdGlvbih0LGUpe2UuY2FjaGU9Il8iK3QsZS5wcm9wcy5hbHBoYT17aWR4OjMsdHlwZToicGVyY2VudCIsZGVmOjF9fSksaC5mbj10LmV4dGVuZChoLnByb3RvdHlwZSx7cGFyc2U6ZnVuY3Rpb24obixvLHIsbCl7aWYobj09PWUpcmV0dXJuIHRoaXMuX3JnYmE9W251bGwsbnVsbCxudWxsLG51bGxdLHRoaXM7KG4uanF1ZXJ5fHxuLm5vZGVUeXBlKSYmKG49dChuKS5jc3Mobyksbz1lKTt2YXIgdT10aGlzLGQ9dC50eXBlKG4pLHA9dGhpcy5fcmdiYT1bXTtyZXR1cm4gbyE9PWUmJihuPVtuLG8scixsXSxkPSJhcnJheSIpLCJzdHJpbmciPT09ZD90aGlzLnBhcnNlKHMobil8fGEuX2RlZmF1bHQpOiJhcnJheSI9PT1kPyhmKGMucmdiYS5wcm9wcyxmdW5jdGlvbih0LGUpe3BbZS5pZHhdPWkobltlLmlkeF0sZSl9KSx0aGlzKToib2JqZWN0Ij09PWQ/KG4gaW5zdGFuY2VvZiBoP2YoYyxmdW5jdGlvbih0LGUpe25bZS5jYWNoZV0mJih1W2UuY2FjaGVdPW5bZS5jYWNoZV0uc2xpY2UoKSl9KTpmKGMsZnVuY3Rpb24oZSxzKXt2YXIgYT1zLmNhY2hlO2Yocy5wcm9wcyxmdW5jdGlvbih0LGUpe2lmKCF1W2FdJiZzLnRvKXtpZigiYWxwaGEiPT09dHx8bnVsbD09blt0XSlyZXR1cm47dVthXT1zLnRvKHUuX3JnYmEpfXVbYV1bZS5pZHhdPWkoblt0XSxlLCEwKX0pLHVbYV0mJjA+dC5pbkFycmF5KG51bGwsdVthXS5zbGljZSgwLDMpKSYmKHVbYV1bM109MSxzLmZyb20mJih1Ll9yZ2JhPXMuZnJvbSh1W2FdKSkpfSksdGhpcyk6ZX0saXM6ZnVuY3Rpb24odCl7dmFyIGk9aCh0KSxzPSEwLG49dGhpcztyZXR1cm4gZihjLGZ1bmN0aW9uKHQsYSl7dmFyIG8scj1pW2EuY2FjaGVdO3JldHVybiByJiYobz1uW2EuY2FjaGVdfHxhLnRvJiZhLnRvKG4uX3JnYmEpfHxbXSxmKGEucHJvcHMsZnVuY3Rpb24odCxpKXtyZXR1cm4gbnVsbCE9cltpLmlkeF0/cz1yW2kuaWR4XT09PW9baS5pZHhdOmV9KSksc30pLHN9LF9zcGFjZTpmdW5jdGlvbigpe3ZhciB0PVtdLGU9dGhpcztyZXR1cm4gZihjLGZ1bmN0aW9uKGkscyl7ZVtzLmNhY2hlXSYmdC5wdXNoKGkpfSksdC5wb3AoKX0sdHJhbnNpdGlvbjpmdW5jdGlvbih0LGUpe3ZhciBzPWgodCksbj1zLl9zcGFjZSgpLGE9Y1tuXSxvPTA9PT10aGlzLmFscGhhKCk/aCgidHJhbnNwYXJlbnQiKTp0aGlzLHI9b1thLmNhY2hlXXx8YS50byhvLl9yZ2JhKSxsPXIuc2xpY2UoKTtyZXR1cm4gcz1zW2EuY2FjaGVdLGYoYS5wcm9wcyxmdW5jdGlvbih0LG4pe3ZhciBhPW4uaWR4LG89clthXSxoPXNbYV0sYz11W24udHlwZV18fHt9O251bGwhPT1oJiYobnVsbD09PW8/bFthXT1oOihjLm1vZCYmKGgtbz5jLm1vZC8yP28rPWMubW9kOm8taD5jLm1vZC8yJiYoby09Yy5tb2QpKSxsW2FdPWkoKGgtbykqZStvLG4pKSl9KSx0aGlzW25dKGwpfSxibGVuZDpmdW5jdGlvbihlKXtpZigxPT09dGhpcy5fcmdiYVszXSlyZXR1cm4gdGhpczt2YXIgaT10aGlzLl9yZ2JhLnNsaWNlKCkscz1pLnBvcCgpLG49aChlKS5fcmdiYTtyZXR1cm4gaCh0Lm1hcChpLGZ1bmN0aW9uKHQsZSl7cmV0dXJuKDEtcykqbltlXStzKnR9KSl9LHRvUmdiYVN0cmluZzpmdW5jdGlvbigpe3ZhciBlPSJyZ2JhKCIsaT10Lm1hcCh0aGlzLl9yZ2JhLGZ1bmN0aW9uKHQsZSl7cmV0dXJuIG51bGw9PXQ/ZT4yPzE6MDp0fSk7cmV0dXJuIDE9PT1pWzNdJiYoaS5wb3AoKSxlPSJyZ2IoIiksZStpLmpvaW4oKSsiKSJ9LHRvSHNsYVN0cmluZzpmdW5jdGlvbigpe3ZhciBlPSJoc2xhKCIsaT10Lm1hcCh0aGlzLmhzbGEoKSxmdW5jdGlvbih0LGUpe3JldHVybiBudWxsPT10JiYodD1lPjI/MTowKSxlJiYzPmUmJih0PU1hdGgucm91bmQoMTAwKnQpKyIlIiksdH0pO3JldHVybiAxPT09aVszXSYmKGkucG9wKCksZT0iaHNsKCIpLGUraS5qb2luKCkrIikifSx0b0hleFN0cmluZzpmdW5jdGlvbihlKXt2YXIgaT10aGlzLl9yZ2JhLnNsaWNlKCkscz1pLnBvcCgpO3JldHVybiBlJiZpLnB1c2gofn4oMjU1KnMpKSwiIyIrdC5tYXAoaSxmdW5jdGlvbih0KXtyZXR1cm4gdD0odHx8MCkudG9TdHJpbmcoMTYpLDE9PT10Lmxlbmd0aD8iMCIrdDp0fSkuam9pbigiIil9LHRvU3RyaW5nOmZ1bmN0aW9uKCl7cmV0dXJuIDA9PT10aGlzLl9yZ2JhWzNdPyJ0cmFuc3BhcmVudCI6dGhpcy50b1JnYmFTdHJpbmcoKX19KSxoLmZuLnBhcnNlLnByb3RvdHlwZT1oLmZuLGMuaHNsYS50bz1mdW5jdGlvbih0KXtpZihudWxsPT10WzBdfHxudWxsPT10WzFdfHxudWxsPT10WzJdKXJldHVybltudWxsLG51bGwsbnVsbCx0WzNdXTt2YXIgZSxpLHM9dFswXS8yNTUsbj10WzFdLzI1NSxhPXRbMl0vMjU1LG89dFszXSxyPU1hdGgubWF4KHMsbixhKSxsPU1hdGgubWluKHMsbixhKSxoPXItbCxjPXIrbCx1PS41KmM7cmV0dXJuIGU9bD09PXI/MDpzPT09cj82MCoobi1hKS9oKzM2MDpuPT09cj82MCooYS1zKS9oKzEyMDo2MCoocy1uKS9oKzI0MCxpPTA9PT1oPzA6LjU+PXU/aC9jOmgvKDItYyksW01hdGgucm91bmQoZSklMzYwLGksdSxudWxsPT1vPzE6b119LGMuaHNsYS5mcm9tPWZ1bmN0aW9uKHQpe2lmKG51bGw9PXRbMF18fG51bGw9PXRbMV18fG51bGw9PXRbMl0pcmV0dXJuW251bGwsbnVsbCxudWxsLHRbM11dO3ZhciBlPXRbMF0vMzYwLGk9dFsxXSxzPXRbMl0sYT10WzNdLG89LjU+PXM/cyooMStpKTpzK2ktcyppLHI9MipzLW87cmV0dXJuW01hdGgucm91bmQoMjU1Km4ocixvLGUrMS8zKSksTWF0aC5yb3VuZCgyNTUqbihyLG8sZSkpLE1hdGgucm91bmQoMjU1Km4ocixvLGUtMS8zKSksYV19LGYoYyxmdW5jdGlvbihzLG4pe3ZhciBhPW4ucHJvcHMsbz1uLmNhY2hlLGw9bi50byxjPW4uZnJvbTtoLmZuW3NdPWZ1bmN0aW9uKHMpe2lmKGwmJiF0aGlzW29dJiYodGhpc1tvXT1sKHRoaXMuX3JnYmEpKSxzPT09ZSlyZXR1cm4gdGhpc1tvXS5zbGljZSgpO3ZhciBuLHI9dC50eXBlKHMpLHU9ImFycmF5Ij09PXJ8fCJvYmplY3QiPT09cj9zOmFyZ3VtZW50cyxkPXRoaXNbb10uc2xpY2UoKTtyZXR1cm4gZihhLGZ1bmN0aW9uKHQsZSl7dmFyIHM9dVsib2JqZWN0Ij09PXI/dDplLmlkeF07bnVsbD09cyYmKHM9ZFtlLmlkeF0pLGRbZS5pZHhdPWkocyxlKX0pLGM/KG49aChjKGQpKSxuW29dPWQsbik6aChkKX0sZihhLGZ1bmN0aW9uKGUsaSl7aC5mbltlXXx8KGguZm5bZV09ZnVuY3Rpb24obil7dmFyIGEsbz10LnR5cGUobiksbD0iYWxwaGEiPT09ZT90aGlzLl9oc2xhPyJoc2xhIjoicmdiYSI6cyxoPXRoaXNbbF0oKSxjPWhbaS5pZHhdO3JldHVybiJ1bmRlZmluZWQiPT09bz9jOigiZnVuY3Rpb24iPT09byYmKG49bi5jYWxsKHRoaXMsYyksbz10LnR5cGUobikpLG51bGw9PW4mJmkuZW1wdHk/dGhpczooInN0cmluZyI9PT1vJiYoYT1yLmV4ZWMobiksYSYmKG49YytwYXJzZUZsb2F0KGFbMl0pKigiKyI9PT1hWzFdPzE6LTEpKSksaFtpLmlkeF09bix0aGlzW2xdKGgpKSl9KX0pfSksaC5ob29rPWZ1bmN0aW9uKGUpe3ZhciBpPWUuc3BsaXQoIiAiKTtmKGksZnVuY3Rpb24oZSxpKXt0LmNzc0hvb2tzW2ldPXtzZXQ6ZnVuY3Rpb24oZSxuKXt2YXIgYSxvLHI9IiI7aWYoInRyYW5zcGFyZW50IiE9PW4mJigic3RyaW5nIiE9PXQudHlwZShuKXx8KGE9cyhuKSkpKXtpZihuPWgoYXx8biksIWQucmdiYSYmMSE9PW4uX3JnYmFbM10pe2ZvcihvPSJiYWNrZ3JvdW5kQ29sb3IiPT09aT9lLnBhcmVudE5vZGU6ZTsoIiI9PT1yfHwidHJhbnNwYXJlbnQiPT09cikmJm8mJm8uc3R5bGU7KXRyeXtyPXQuY3NzKG8sImJhY2tncm91bmRDb2xvciIpLG89by5wYXJlbnROb2RlfWNhdGNoKGwpe31uPW4uYmxlbmQociYmInRyYW5zcGFyZW50IiE9PXI/cjoiX2RlZmF1bHQiKX1uPW4udG9SZ2JhU3RyaW5nKCl9dHJ5e2Uuc3R5bGVbaV09bn1jYXRjaChsKXt9fX0sdC5meC5zdGVwW2ldPWZ1bmN0aW9uKGUpe2UuY29sb3JJbml0fHwoZS5zdGFydD1oKGUuZWxlbSxpKSxlLmVuZD1oKGUuZW5kKSxlLmNvbG9ySW5pdD0hMCksdC5jc3NIb29rc1tpXS5zZXQoZS5lbGVtLGUuc3RhcnQudHJhbnNpdGlvbihlLmVuZCxlLnBvcykpfX0pfSxoLmhvb2sobyksdC5jc3NIb29rcy5ib3JkZXJDb2xvcj17ZXhwYW5kOmZ1bmN0aW9uKHQpe3ZhciBlPXt9O3JldHVybiBmKFsiVG9wIiwiUmlnaHQiLCJCb3R0b20iLCJMZWZ0Il0sZnVuY3Rpb24oaSxzKXtlWyJib3JkZXIiK3MrIkNvbG9yIl09dH0pLGV9fSxhPXQuQ29sb3IubmFtZXM9e2FxdWE6IiMwMGZmZmYiLGJsYWNrOiIjMDAwMDAwIixibHVlOiIjMDAwMGZmIixmdWNoc2lhOiIjZmYwMGZmIixncmF5OiIjODA4MDgwIixncmVlbjoiIzAwODAwMCIsbGltZToiIzAwZmYwMCIsbWFyb29uOiIjODAwMDAwIixuYXZ5OiIjMDAwMDgwIixvbGl2ZToiIzgwODAwMCIscHVycGxlOiIjODAwMDgwIixyZWQ6IiNmZjAwMDAiLHNpbHZlcjoiI2MwYzBjMCIsdGVhbDoiIzAwODA4MCIsd2hpdGU6IiNmZmZmZmYiLHllbGxvdzoiI2ZmZmYwMCIsdHJhbnNwYXJlbnQ6W251bGwsbnVsbCxudWxsLDBdLF9kZWZhdWx0OiIjZmZmZmZmIn19KGpRdWVyeSksZnVuY3Rpb24oKXtmdW5jdGlvbiBpKGUpe3ZhciBpLHMsbj1lLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXc/ZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoZSxudWxsKTplLmN1cnJlbnRTdHlsZSxhPXt9O2lmKG4mJm4ubGVuZ3RoJiZuWzBdJiZuW25bMF1dKWZvcihzPW4ubGVuZ3RoO3MtLTspaT1uW3NdLCJzdHJpbmciPT10eXBlb2YgbltpXSYmKGFbdC5jYW1lbENhc2UoaSldPW5baV0pO2Vsc2UgZm9yKGkgaW4gbikic3RyaW5nIj09dHlwZW9mIG5baV0mJihhW2ldPW5baV0pO3JldHVybiBhfWZ1bmN0aW9uIHMoZSxpKXt2YXIgcyxuLG89e307Zm9yKHMgaW4gaSluPWlbc10sZVtzXSE9PW4mJihhW3NdfHwodC5meC5zdGVwW3NdfHwhaXNOYU4ocGFyc2VGbG9hdChuKSkpJiYob1tzXT1uKSk7cmV0dXJuIG99dmFyIG49WyJhZGQiLCJyZW1vdmUiLCJ0b2dnbGUiXSxhPXtib3JkZXI6MSxib3JkZXJCb3R0b206MSxib3JkZXJDb2xvcjoxLGJvcmRlckxlZnQ6MSxib3JkZXJSaWdodDoxLGJvcmRlclRvcDoxLGJvcmRlcldpZHRoOjEsbWFyZ2luOjEscGFkZGluZzoxfTt0LmVhY2goWyJib3JkZXJMZWZ0U3R5bGUiLCJib3JkZXJSaWdodFN0eWxlIiwiYm9yZGVyQm90dG9tU3R5bGUiLCJib3JkZXJUb3BTdHlsZSJdLGZ1bmN0aW9uKGUsaSl7dC5meC5zdGVwW2ldPWZ1bmN0aW9uKHQpeygibm9uZSIhPT10LmVuZCYmIXQuc2V0QXR0cnx8MT09PXQucG9zJiYhdC5zZXRBdHRyKSYmKGpRdWVyeS5zdHlsZSh0LmVsZW0saSx0LmVuZCksdC5zZXRBdHRyPSEwKX19KSx0LmZuLmFkZEJhY2t8fCh0LmZuLmFkZEJhY2s9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuYWRkKG51bGw9PXQ/dGhpcy5wcmV2T2JqZWN0OnRoaXMucHJldk9iamVjdC5maWx0ZXIodCkpfSksdC5lZmZlY3RzLmFuaW1hdGVDbGFzcz1mdW5jdGlvbihlLGEsbyxyKXt2YXIgbD10LnNwZWVkKGEsbyxyKTtyZXR1cm4gdGhpcy5xdWV1ZShmdW5jdGlvbigpe3ZhciBhLG89dCh0aGlzKSxyPW8uYXR0cigiY2xhc3MiKXx8IiIsaD1sLmNoaWxkcmVuP28uZmluZCgiKiIpLmFkZEJhY2soKTpvO2g9aC5tYXAoZnVuY3Rpb24oKXt2YXIgZT10KHRoaXMpO3JldHVybntlbDplLHN0YXJ0OmkodGhpcyl9fSksYT1mdW5jdGlvbigpe3QuZWFjaChuLGZ1bmN0aW9uKHQsaSl7ZVtpXSYmb1tpKyJDbGFzcyJdKGVbaV0pfSl9LGEoKSxoPWgubWFwKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZW5kPWkodGhpcy5lbFswXSksdGhpcy5kaWZmPXModGhpcy5zdGFydCx0aGlzLmVuZCksdGhpc30pLG8uYXR0cigiY2xhc3MiLHIpLGg9aC5tYXAoZnVuY3Rpb24oKXt2YXIgZT10aGlzLGk9dC5EZWZlcnJlZCgpLHM9dC5leHRlbmQoe30sbCx7cXVldWU6ITEsY29tcGxldGU6ZnVuY3Rpb24oKXtpLnJlc29sdmUoZSl9fSk7cmV0dXJuIHRoaXMuZWwuYW5pbWF0ZSh0aGlzLmRpZmYscyksaS5wcm9taXNlKCl9KSx0LndoZW4uYXBwbHkodCxoLmdldCgpKS5kb25lKGZ1bmN0aW9uKCl7YSgpLHQuZWFjaChhcmd1bWVudHMsZnVuY3Rpb24oKXt2YXIgZT10aGlzLmVsO3QuZWFjaCh0aGlzLmRpZmYsZnVuY3Rpb24odCl7ZS5jc3ModCwiIil9KX0pLGwuY29tcGxldGUuY2FsbChvWzBdKX0pfSl9LHQuZm4uZXh0ZW5kKHthZGRDbGFzczpmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oaSxzLG4sYSl7cmV0dXJuIHM/dC5lZmZlY3RzLmFuaW1hdGVDbGFzcy5jYWxsKHRoaXMse2FkZDppfSxzLG4sYSk6ZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fSh0LmZuLmFkZENsYXNzKSxyZW1vdmVDbGFzczpmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oaSxzLG4sYSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg+MT90LmVmZmVjdHMuYW5pbWF0ZUNsYXNzLmNhbGwodGhpcyx7cmVtb3ZlOml9LHMsbixhKTplLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KHQuZm4ucmVtb3ZlQ2xhc3MpLHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGkpe3JldHVybiBmdW5jdGlvbihzLG4sYSxvLHIpe3JldHVybiJib29sZWFuIj09dHlwZW9mIG58fG49PT1lP2E/dC5lZmZlY3RzLmFuaW1hdGVDbGFzcy5jYWxsKHRoaXMsbj97YWRkOnN9OntyZW1vdmU6c30sYSxvLHIpOmkuYXBwbHkodGhpcyxhcmd1bWVudHMpOnQuZWZmZWN0cy5hbmltYXRlQ2xhc3MuY2FsbCh0aGlzLHt0b2dnbGU6c30sbixhLG8pfX0odC5mbi50b2dnbGVDbGFzcyksc3dpdGNoQ2xhc3M6ZnVuY3Rpb24oZSxpLHMsbixhKXtyZXR1cm4gdC5lZmZlY3RzLmFuaW1hdGVDbGFzcy5jYWxsKHRoaXMse2FkZDppLHJlbW92ZTplfSxzLG4sYSl9fSl9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBzKGUsaSxzLG4pe3JldHVybiB0LmlzUGxhaW5PYmplY3QoZSkmJihpPWUsZT1lLmVmZmVjdCksZT17ZWZmZWN0OmV9LG51bGw9PWkmJihpPXt9KSx0LmlzRnVuY3Rpb24oaSkmJihuPWkscz1udWxsLGk9e30pLCgibnVtYmVyIj09dHlwZW9mIGl8fHQuZnguc3BlZWRzW2ldKSYmKG49cyxzPWksaT17fSksdC5pc0Z1bmN0aW9uKHMpJiYobj1zLHM9bnVsbCksaSYmdC5leHRlbmQoZSxpKSxzPXN8fGkuZHVyYXRpb24sZS5kdXJhdGlvbj10LmZ4Lm9mZj8wOiJudW1iZXIiPT10eXBlb2Ygcz9zOnMgaW4gdC5meC5zcGVlZHM/dC5meC5zcGVlZHNbc106dC5meC5zcGVlZHMuX2RlZmF1bHQsZS5jb21wbGV0ZT1ufHxpLmNvbXBsZXRlLGV9ZnVuY3Rpb24gbihlKXtyZXR1cm4hZXx8Im51bWJlciI9PXR5cGVvZiBlfHx0LmZ4LnNwZWVkc1tlXT8hMDoic3RyaW5nIiE9dHlwZW9mIGV8fHQuZWZmZWN0cy5lZmZlY3RbZV0/dC5pc0Z1bmN0aW9uKGUpPyEwOiJvYmplY3QiIT10eXBlb2YgZXx8ZS5lZmZlY3Q/ITE6ITA6ITB9dC5leHRlbmQodC5lZmZlY3RzLHt2ZXJzaW9uOiIxLjEwLjQiLHNhdmU6ZnVuY3Rpb24odCxlKXtmb3IodmFyIHM9MDtlLmxlbmd0aD5zO3MrKyludWxsIT09ZVtzXSYmdC5kYXRhKGkrZVtzXSx0WzBdLnN0eWxlW2Vbc11dKX0scmVzdG9yZTpmdW5jdGlvbih0LHMpe3ZhciBuLGE7Zm9yKGE9MDtzLmxlbmd0aD5hO2ErKyludWxsIT09c1thXSYmKG49dC5kYXRhKGkrc1thXSksbj09PWUmJihuPSIiKSx0LmNzcyhzW2FdLG4pKX0sc2V0TW9kZTpmdW5jdGlvbih0LGUpe3JldHVybiJ0b2dnbGUiPT09ZSYmKGU9dC5pcygiOmhpZGRlbiIpPyJzaG93IjoiaGlkZSIpLGV9LGdldEJhc2VsaW5lOmZ1bmN0aW9uKHQsZSl7dmFyIGkscztzd2l0Y2godFswXSl7Y2FzZSJ0b3AiOmk9MDticmVhaztjYXNlIm1pZGRsZSI6aT0uNTticmVhaztjYXNlImJvdHRvbSI6aT0xO2JyZWFrO2RlZmF1bHQ6aT10WzBdL2UuaGVpZ2h0fXN3aXRjaCh0WzFdKXtjYXNlImxlZnQiOnM9MDticmVhaztjYXNlImNlbnRlciI6cz0uNTticmVhaztjYXNlInJpZ2h0IjpzPTE7YnJlYWs7ZGVmYXVsdDpzPXRbMV0vZS53aWR0aH1yZXR1cm57eDpzLHk6aX19LGNyZWF0ZVdyYXBwZXI6ZnVuY3Rpb24oZSl7aWYoZS5wYXJlbnQoKS5pcygiLnVpLWVmZmVjdHMtd3JhcHBlciIpKXJldHVybiBlLnBhcmVudCgpO3ZhciBpPXt3aWR0aDplLm91dGVyV2lkdGgoITApLGhlaWdodDplLm91dGVySGVpZ2h0KCEwKSwiZmxvYXQiOmUuY3NzKCJmbG9hdCIpfSxzPXQoIjxkaXY+PC9kaXY+IikuYWRkQ2xhc3MoInVpLWVmZmVjdHMtd3JhcHBlciIpLmNzcyh7Zm9udFNpemU6IjEwMCUiLGJhY2tncm91bmQ6InRyYW5zcGFyZW50Iixib3JkZXI6Im5vbmUiLG1hcmdpbjowLHBhZGRpbmc6MH0pLG49e3dpZHRoOmUud2lkdGgoKSxoZWlnaHQ6ZS5oZWlnaHQoKX0sYT1kb2N1bWVudC5hY3RpdmVFbGVtZW50O3RyeXthLmlkfWNhdGNoKG8pe2E9ZG9jdW1lbnQuYm9keX1yZXR1cm4gZS53cmFwKHMpLChlWzBdPT09YXx8dC5jb250YWlucyhlWzBdLGEpKSYmdChhKS5mb2N1cygpLHM9ZS5wYXJlbnQoKSwic3RhdGljIj09PWUuY3NzKCJwb3NpdGlvbiIpPyhzLmNzcyh7cG9zaXRpb246InJlbGF0aXZlIn0pLGUuY3NzKHtwb3NpdGlvbjoicmVsYXRpdmUifSkpOih0LmV4dGVuZChpLHtwb3NpdGlvbjplLmNzcygicG9zaXRpb24iKSx6SW5kZXg6ZS5jc3MoInotaW5kZXgiKX0pLHQuZWFjaChbInRvcCIsImxlZnQiLCJib3R0b20iLCJyaWdodCJdLGZ1bmN0aW9uKHQscyl7aVtzXT1lLmNzcyhzKSxpc05hTihwYXJzZUludChpW3NdLDEwKSkmJihpW3NdPSJhdXRvIil9KSxlLmNzcyh7cG9zaXRpb246InJlbGF0aXZlIix0b3A6MCxsZWZ0OjAscmlnaHQ6ImF1dG8iLGJvdHRvbToiYXV0byJ9KSksZS5jc3Mobikscy5jc3MoaSkuc2hvdygpfSxyZW1vdmVXcmFwcGVyOmZ1bmN0aW9uKGUpe3ZhciBpPWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7cmV0dXJuIGUucGFyZW50KCkuaXMoIi51aS1lZmZlY3RzLXdyYXBwZXIiKSYmKGUucGFyZW50KCkucmVwbGFjZVdpdGgoZSksKGVbMF09PT1pfHx0LmNvbnRhaW5zKGVbMF0saSkpJiZ0KGkpLmZvY3VzKCkpLGV9LHNldFRyYW5zaXRpb246ZnVuY3Rpb24oZSxpLHMsbil7cmV0dXJuIG49bnx8e30sdC5lYWNoKGksZnVuY3Rpb24odCxpKXt2YXIgYT1lLmNzc1VuaXQoaSk7YVswXT4wJiYobltpXT1hWzBdKnMrYVsxXSl9KSxufX0pLHQuZm4uZXh0ZW5kKHtlZmZlY3Q6ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUpe2Z1bmN0aW9uIHMoKXt0LmlzRnVuY3Rpb24oYSkmJmEuY2FsbChuWzBdKSx0LmlzRnVuY3Rpb24oZSkmJmUoKX12YXIgbj10KHRoaXMpLGE9aS5jb21wbGV0ZSxyPWkubW9kZTsobi5pcygiOmhpZGRlbiIpPyJoaWRlIj09PXI6InNob3ciPT09cik/KG5bcl0oKSxzKCkpOm8uY2FsbChuWzBdLGkscyl9dmFyIGk9cy5hcHBseSh0aGlzLGFyZ3VtZW50cyksbj1pLm1vZGUsYT1pLnF1ZXVlLG89dC5lZmZlY3RzLmVmZmVjdFtpLmVmZmVjdF07cmV0dXJuIHQuZngub2ZmfHwhbz9uP3RoaXNbbl0oaS5kdXJhdGlvbixpLmNvbXBsZXRlKTp0aGlzLmVhY2goZnVuY3Rpb24oKXtpLmNvbXBsZXRlJiZpLmNvbXBsZXRlLmNhbGwodGhpcyl9KTphPT09ITE/dGhpcy5lYWNoKGUpOnRoaXMucXVldWUoYXx8ImZ4IixlKX0sc2hvdzpmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYobihlKSlyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dmFyIGk9cy5hcHBseSh0aGlzLGFyZ3VtZW50cyk7cmV0dXJuIGkubW9kZT0ic2hvdyIsdGhpcy5lZmZlY3QuY2FsbCh0aGlzLGkpfX0odC5mbi5zaG93KSxoaWRlOmZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihlKXtpZihuKGUpKXJldHVybiB0LmFwcGx5KHRoaXMsYXJndW1lbnRzKTt2YXIgaT1zLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtyZXR1cm4gaS5tb2RlPSJoaWRlIix0aGlzLmVmZmVjdC5jYWxsKHRoaXMsaSl9fSh0LmZuLmhpZGUpLHRvZ2dsZTpmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYobihlKXx8ImJvb2xlYW4iPT10eXBlb2YgZSlyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dmFyIGk9cy5hcHBseSh0aGlzLGFyZ3VtZW50cyk7cmV0dXJuIGkubW9kZT0idG9nZ2xlIix0aGlzLmVmZmVjdC5jYWxsKHRoaXMsaSl9fSh0LmZuLnRvZ2dsZSksY3NzVW5pdDpmdW5jdGlvbihlKXt2YXIgaT10aGlzLmNzcyhlKSxzPVtdO3JldHVybiB0LmVhY2goWyJlbSIsInB4IiwiJSIsInB0Il0sZnVuY3Rpb24odCxlKXtpLmluZGV4T2YoZSk+MCYmKHM9W3BhcnNlRmxvYXQoaSksZV0pfSksc319KX0oKSxmdW5jdGlvbigpe3ZhciBlPXt9O3QuZWFjaChbIlF1YWQiLCJDdWJpYyIsIlF1YXJ0IiwiUXVpbnQiLCJFeHBvIl0sZnVuY3Rpb24odCxpKXtlW2ldPWZ1bmN0aW9uKGUpe3JldHVybiBNYXRoLnBvdyhlLHQrMil9fSksdC5leHRlbmQoZSx7U2luZTpmdW5jdGlvbih0KXtyZXR1cm4gMS1NYXRoLmNvcyh0Kk1hdGguUEkvMil9LENpcmM6ZnVuY3Rpb24odCl7cmV0dXJuIDEtTWF0aC5zcXJ0KDEtdCp0KX0sRWxhc3RpYzpmdW5jdGlvbih0KXtyZXR1cm4gMD09PXR8fDE9PT10P3Q6LU1hdGgucG93KDIsOCoodC0xKSkqTWF0aC5zaW4oKDgwKih0LTEpLTcuNSkqTWF0aC5QSS8xNSl9LEJhY2s6ZnVuY3Rpb24odCl7cmV0dXJuIHQqdCooMyp0LTIpfSxCb3VuY2U6ZnVuY3Rpb24odCl7Zm9yKHZhciBlLGk9NDsoKGU9TWF0aC5wb3coMiwtLWkpKS0xKS8xMT50Oyk7cmV0dXJuIDEvTWF0aC5wb3coNCwzLWkpLTcuNTYyNSpNYXRoLnBvdygoMyplLTIpLzIyLXQsMil9fSksdC5lYWNoKGUsZnVuY3Rpb24oZSxpKXt0LmVhc2luZ1siZWFzZUluIitlXT1pLHQuZWFzaW5nWyJlYXNlT3V0IitlXT1mdW5jdGlvbih0KXtyZXR1cm4gMS1pKDEtdCl9LHQuZWFzaW5nWyJlYXNlSW5PdXQiK2VdPWZ1bmN0aW9uKHQpe3JldHVybi41PnQ/aSgyKnQpLzI6MS1pKC0yKnQrMikvMn19KX0oKX0pKGpRdWVyeSk7KGZ1bmN0aW9uKHQpe3ZhciBlPS91cHxkb3dufHZlcnRpY2FsLyxpPS91cHxsZWZ0fHZlcnRpY2FsfGhvcml6b250YWwvO3QuZWZmZWN0cy5lZmZlY3QuYmxpbmQ9ZnVuY3Rpb24ocyxuKXt2YXIgYSxvLHIsbD10KHRoaXMpLGg9WyJwb3NpdGlvbiIsInRvcCIsImJvdHRvbSIsImxlZnQiLCJyaWdodCIsImhlaWdodCIsIndpZHRoIl0sYz10LmVmZmVjdHMuc2V0TW9kZShsLHMubW9kZXx8ImhpZGUiKSx1PXMuZGlyZWN0aW9ufHwidXAiLGQ9ZS50ZXN0KHUpLHA9ZD8iaGVpZ2h0Ijoid2lkdGgiLGY9ZD8idG9wIjoibGVmdCIsZz1pLnRlc3QodSksbT17fSx2PSJzaG93Ij09PWM7bC5wYXJlbnQoKS5pcygiLnVpLWVmZmVjdHMtd3JhcHBlciIpP3QuZWZmZWN0cy5zYXZlKGwucGFyZW50KCksaCk6dC5lZmZlY3RzLnNhdmUobCxoKSxsLnNob3coKSxhPXQuZWZmZWN0cy5jcmVhdGVXcmFwcGVyKGwpLmNzcyh7b3ZlcmZsb3c6ImhpZGRlbiJ9KSxvPWFbcF0oKSxyPXBhcnNlRmxvYXQoYS5jc3MoZikpfHwwLG1bcF09dj9vOjAsZ3x8KGwuY3NzKGQ/ImJvdHRvbSI6InJpZ2h0IiwwKS5jc3MoZD8idG9wIjoibGVmdCIsImF1dG8iKS5jc3Moe3Bvc2l0aW9uOiJhYnNvbHV0ZSJ9KSxtW2ZdPXY/cjpvK3IpLHYmJihhLmNzcyhwLDApLGd8fGEuY3NzKGYscitvKSksYS5hbmltYXRlKG0se2R1cmF0aW9uOnMuZHVyYXRpb24sZWFzaW5nOnMuZWFzaW5nLHF1ZXVlOiExLGNvbXBsZXRlOmZ1bmN0aW9uKCl7ImhpZGUiPT09YyYmbC5oaWRlKCksdC5lZmZlY3RzLnJlc3RvcmUobCxoKSx0LmVmZmVjdHMucmVtb3ZlV3JhcHBlcihsKSxuKCl9fSl9fSkoalF1ZXJ5KTsoZnVuY3Rpb24odCl7dC5lZmZlY3RzLmVmZmVjdC5ib3VuY2U9ZnVuY3Rpb24oZSxpKXt2YXIgcyxuLGEsbz10KHRoaXMpLHI9WyJwb3NpdGlvbiIsInRvcCIsImJvdHRvbSIsImxlZnQiLCJyaWdodCIsImhlaWdodCIsIndpZHRoIl0sbD10LmVmZmVjdHMuc2V0TW9kZShvLGUubW9kZXx8ImVmZmVjdCIpLGg9ImhpZGUiPT09bCxjPSJzaG93Ij09PWwsdT1lLmRpcmVjdGlvbnx8InVwIixkPWUuZGlzdGFuY2UscD1lLnRpbWVzfHw1LGY9MipwKyhjfHxoPzE6MCksZz1lLmR1cmF0aW9uL2YsbT1lLmVhc2luZyx2PSJ1cCI9PT11fHwiZG93biI9PT11PyJ0b3AiOiJsZWZ0IixfPSJ1cCI9PT11fHwibGVmdCI9PT11LGI9by5xdWV1ZSgpLHk9Yi5sZW5ndGg7Zm9yKChjfHxoKSYmci5wdXNoKCJvcGFjaXR5IiksdC5lZmZlY3RzLnNhdmUobyxyKSxvLnNob3coKSx0LmVmZmVjdHMuY3JlYXRlV3JhcHBlcihvKSxkfHwoZD1vWyJ0b3AiPT09dj8ib3V0ZXJIZWlnaHQiOiJvdXRlcldpZHRoIl0oKS8zKSxjJiYoYT17b3BhY2l0eToxfSxhW3ZdPTAsby5jc3MoIm9wYWNpdHkiLDApLmNzcyh2LF8/MiotZDoyKmQpLmFuaW1hdGUoYSxnLG0pKSxoJiYoZC89TWF0aC5wb3coMixwLTEpKSxhPXt9LGFbdl09MCxzPTA7cD5zO3MrKyluPXt9LG5bdl09KF8/Ii09IjoiKz0iKStkLG8uYW5pbWF0ZShuLGcsbSkuYW5pbWF0ZShhLGcsbSksZD1oPzIqZDpkLzI7aCYmKG49e29wYWNpdHk6MH0sblt2XT0oXz8iLT0iOiIrPSIpK2Qsby5hbmltYXRlKG4sZyxtKSksby5xdWV1ZShmdW5jdGlvbigpe2gmJm8uaGlkZSgpLHQuZWZmZWN0cy5yZXN0b3JlKG8sciksdC5lZmZlY3RzLnJlbW92ZVdyYXBwZXIobyksaSgpfSkseT4xJiZiLnNwbGljZS5hcHBseShiLFsxLDBdLmNvbmNhdChiLnNwbGljZSh5LGYrMSkpKSxvLmRlcXVldWUoKX19KShqUXVlcnkpOyhmdW5jdGlvbih0KXt0LmVmZmVjdHMuZWZmZWN0LmNsaXA9ZnVuY3Rpb24oZSxpKXt2YXIgcyxuLGEsbz10KHRoaXMpLHI9WyJwb3NpdGlvbiIsInRvcCIsImJvdHRvbSIsImxlZnQiLCJyaWdodCIsImhlaWdodCIsIndpZHRoIl0sbD10LmVmZmVjdHMuc2V0TW9kZShvLGUubW9kZXx8ImhpZGUiKSxoPSJzaG93Ij09PWwsYz1lLmRpcmVjdGlvbnx8InZlcnRpY2FsIix1PSJ2ZXJ0aWNhbCI9PT1jLGQ9dT8iaGVpZ2h0Ijoid2lkdGgiLHA9dT8idG9wIjoibGVmdCIsZj17fTt0LmVmZmVjdHMuc2F2ZShvLHIpLG8uc2hvdygpLHM9dC5lZmZlY3RzLmNyZWF0ZVdyYXBwZXIobykuY3NzKHtvdmVyZmxvdzoiaGlkZGVuIn0pLG49IklNRyI9PT1vWzBdLnRhZ05hbWU/czpvLGE9bltkXSgpLGgmJihuLmNzcyhkLDApLG4uY3NzKHAsYS8yKSksZltkXT1oP2E6MCxmW3BdPWg/MDphLzIsbi5hbmltYXRlKGYse3F1ZXVlOiExLGR1cmF0aW9uOmUuZHVyYXRpb24sZWFzaW5nOmUuZWFzaW5nLGNvbXBsZXRlOmZ1bmN0aW9uKCl7aHx8by5oaWRlKCksdC5lZmZlY3RzLnJlc3RvcmUobyxyKSx0LmVmZmVjdHMucmVtb3ZlV3JhcHBlcihvKSxpKCl9fSl9fSkoalF1ZXJ5KTsoZnVuY3Rpb24odCl7dC5lZmZlY3RzLmVmZmVjdC5kcm9wPWZ1bmN0aW9uKGUsaSl7dmFyIHMsbj10KHRoaXMpLGE9WyJwb3NpdGlvbiIsInRvcCIsImJvdHRvbSIsImxlZnQiLCJyaWdodCIsIm9wYWNpdHkiLCJoZWlnaHQiLCJ3aWR0aCJdLG89dC5lZmZlY3RzLnNldE1vZGUobixlLm1vZGV8fCJoaWRlIikscj0ic2hvdyI9PT1vLGw9ZS5kaXJlY3Rpb258fCJsZWZ0IixoPSJ1cCI9PT1sfHwiZG93biI9PT1sPyJ0b3AiOiJsZWZ0IixjPSJ1cCI9PT1sfHwibGVmdCI9PT1sPyJwb3MiOiJuZWciLHU9e29wYWNpdHk6cj8xOjB9O3QuZWZmZWN0cy5zYXZlKG4sYSksbi5zaG93KCksdC5lZmZlY3RzLmNyZWF0ZVdyYXBwZXIobikscz1lLmRpc3RhbmNlfHxuWyJ0b3AiPT09aD8ib3V0ZXJIZWlnaHQiOiJvdXRlcldpZHRoIl0oITApLzIsciYmbi5jc3MoIm9wYWNpdHkiLDApLmNzcyhoLCJwb3MiPT09Yz8tczpzKSx1W2hdPShyPyJwb3MiPT09Yz8iKz0iOiItPSI6InBvcyI9PT1jPyItPSI6Iis9IikrcyxuLmFuaW1hdGUodSx7cXVldWU6ITEsZHVyYXRpb246ZS5kdXJhdGlvbixlYXNpbmc6ZS5lYXNpbmcsY29tcGxldGU6ZnVuY3Rpb24oKXsiaGlkZSI9PT1vJiZuLmhpZGUoKSx0LmVmZmVjdHMucmVzdG9yZShuLGEpLHQuZWZmZWN0cy5yZW1vdmVXcmFwcGVyKG4pLGkoKX19KX19KShqUXVlcnkpOyhmdW5jdGlvbih0KXt0LmVmZmVjdHMuZWZmZWN0LmV4cGxvZGU9ZnVuY3Rpb24oZSxpKXtmdW5jdGlvbiBzKCl7Yi5wdXNoKHRoaXMpLGIubGVuZ3RoPT09dSpkJiZuKCl9ZnVuY3Rpb24gbigpe3AuY3NzKHt2aXNpYmlsaXR5OiJ2aXNpYmxlIn0pLHQoYikucmVtb3ZlKCksZ3x8cC5oaWRlKCksaSgpfXZhciBhLG8scixsLGgsYyx1PWUucGllY2VzP01hdGgucm91bmQoTWF0aC5zcXJ0KGUucGllY2VzKSk6MyxkPXUscD10KHRoaXMpLGY9dC5lZmZlY3RzLnNldE1vZGUocCxlLm1vZGV8fCJoaWRlIiksZz0ic2hvdyI9PT1mLG09cC5zaG93KCkuY3NzKCJ2aXNpYmlsaXR5IiwiaGlkZGVuIikub2Zmc2V0KCksdj1NYXRoLmNlaWwocC5vdXRlcldpZHRoKCkvZCksXz1NYXRoLmNlaWwocC5vdXRlckhlaWdodCgpL3UpLGI9W107Zm9yKGE9MDt1PmE7YSsrKWZvcihsPW0udG9wK2EqXyxjPWEtKHUtMSkvMixvPTA7ZD5vO28rKylyPW0ubGVmdCtvKnYsaD1vLShkLTEpLzIscC5jbG9uZSgpLmFwcGVuZFRvKCJib2R5Iikud3JhcCgiPGRpdj48L2Rpdj4iKS5jc3Moe3Bvc2l0aW9uOiJhYnNvbHV0ZSIsdmlzaWJpbGl0eToidmlzaWJsZSIsbGVmdDotbyp2LHRvcDotYSpffSkucGFyZW50KCkuYWRkQ2xhc3MoInVpLWVmZmVjdHMtZXhwbG9kZSIpLmNzcyh7cG9zaXRpb246ImFic29sdXRlIixvdmVyZmxvdzoiaGlkZGVuIix3aWR0aDp2LGhlaWdodDpfLGxlZnQ6cisoZz9oKnY6MCksdG9wOmwrKGc/YypfOjApLG9wYWNpdHk6Zz8wOjF9KS5hbmltYXRlKHtsZWZ0OnIrKGc/MDpoKnYpLHRvcDpsKyhnPzA6YypfKSxvcGFjaXR5Omc/MTowfSxlLmR1cmF0aW9ufHw1MDAsZS5lYXNpbmcscyl9fSkoalF1ZXJ5KTsoZnVuY3Rpb24odCl7dC5lZmZlY3RzLmVmZmVjdC5mYWRlPWZ1bmN0aW9uKGUsaSl7dmFyIHM9dCh0aGlzKSxuPXQuZWZmZWN0cy5zZXRNb2RlKHMsZS5tb2RlfHwidG9nZ2xlIik7cy5hbmltYXRlKHtvcGFjaXR5Om59LHtxdWV1ZTohMSxkdXJhdGlvbjplLmR1cmF0aW9uLGVhc2luZzplLmVhc2luZyxjb21wbGV0ZTppfSl9fSkoalF1ZXJ5KTsoZnVuY3Rpb24odCl7dC5lZmZlY3RzLmVmZmVjdC5mb2xkPWZ1bmN0aW9uKGUsaSl7dmFyIHMsbixhPXQodGhpcyksbz1bInBvc2l0aW9uIiwidG9wIiwiYm90dG9tIiwibGVmdCIsInJpZ2h0IiwiaGVpZ2h0Iiwid2lkdGgiXSxyPXQuZWZmZWN0cy5zZXRNb2RlKGEsZS5tb2RlfHwiaGlkZSIpLGw9InNob3ciPT09cixoPSJoaWRlIj09PXIsYz1lLnNpemV8fDE1LHU9LyhbMC05XSspJS8uZXhlYyhjKSxkPSEhZS5ob3JpekZpcnN0LHA9bCE9PWQsZj1wP1sid2lkdGgiLCJoZWlnaHQiXTpbImhlaWdodCIsIndpZHRoIl0sZz1lLmR1cmF0aW9uLzIsbT17fSx2PXt9O3QuZWZmZWN0cy5zYXZlKGEsbyksYS5zaG93KCkscz10LmVmZmVjdHMuY3JlYXRlV3JhcHBlcihhKS5jc3Moe292ZXJmbG93OiJoaWRkZW4ifSksbj1wP1tzLndpZHRoKCkscy5oZWlnaHQoKV06W3MuaGVpZ2h0KCkscy53aWR0aCgpXSx1JiYoYz1wYXJzZUludCh1WzFdLDEwKS8xMDAqbltoPzA6MV0pLGwmJnMuY3NzKGQ/e2hlaWdodDowLHdpZHRoOmN9OntoZWlnaHQ6Yyx3aWR0aDowfSksbVtmWzBdXT1sP25bMF06Yyx2W2ZbMV1dPWw/blsxXTowLHMuYW5pbWF0ZShtLGcsZS5lYXNpbmcpLmFuaW1hdGUodixnLGUuZWFzaW5nLGZ1bmN0aW9uKCl7aCYmYS5oaWRlKCksdC5lZmZlY3RzLnJlc3RvcmUoYSxvKSx0LmVmZmVjdHMucmVtb3ZlV3JhcHBlcihhKSxpKCl9KX19KShqUXVlcnkpOyhmdW5jdGlvbih0KXt0LmVmZmVjdHMuZWZmZWN0LmhpZ2hsaWdodD1mdW5jdGlvbihlLGkpe3ZhciBzPXQodGhpcyksbj1bImJhY2tncm91bmRJbWFnZSIsImJhY2tncm91bmRDb2xvciIsIm9wYWNpdHkiXSxhPXQuZWZmZWN0cy5zZXRNb2RlKHMsZS5tb2RlfHwic2hvdyIpLG89e2JhY2tncm91bmRDb2xvcjpzLmNzcygiYmFja2dyb3VuZENvbG9yIil9OyJoaWRlIj09PWEmJihvLm9wYWNpdHk9MCksdC5lZmZlY3RzLnNhdmUocyxuKSxzLnNob3coKS5jc3Moe2JhY2tncm91bmRJbWFnZToibm9uZSIsYmFja2dyb3VuZENvbG9yOmUuY29sb3J8fCIjZmZmZjk5In0pLmFuaW1hdGUobyx7cXVldWU6ITEsZHVyYXRpb246ZS5kdXJhdGlvbixlYXNpbmc6ZS5lYXNpbmcsY29tcGxldGU6ZnVuY3Rpb24oKXsiaGlkZSI9PT1hJiZzLmhpZGUoKSx0LmVmZmVjdHMucmVzdG9yZShzLG4pLGkoKX19KX19KShqUXVlcnkpOyhmdW5jdGlvbih0KXt0LmVmZmVjdHMuZWZmZWN0LnB1bHNhdGU9ZnVuY3Rpb24oZSxpKXt2YXIgcyxuPXQodGhpcyksYT10LmVmZmVjdHMuc2V0TW9kZShuLGUubW9kZXx8InNob3ciKSxvPSJzaG93Ij09PWEscj0iaGlkZSI9PT1hLGw9b3x8ImhpZGUiPT09YSxoPTIqKGUudGltZXN8fDUpKyhsPzE6MCksYz1lLmR1cmF0aW9uL2gsdT0wLGQ9bi5xdWV1ZSgpLHA9ZC5sZW5ndGg7Zm9yKChvfHwhbi5pcygiOnZpc2libGUiKSkmJihuLmNzcygib3BhY2l0eSIsMCkuc2hvdygpLHU9MSkscz0xO2g+cztzKyspbi5hbmltYXRlKHtvcGFjaXR5OnV9LGMsZS5lYXNpbmcpLHU9MS11O24uYW5pbWF0ZSh7b3BhY2l0eTp1fSxjLGUuZWFzaW5nKSxuLnF1ZXVlKGZ1bmN0aW9uKCl7ciYmbi5oaWRlKCksaSgpfSkscD4xJiZkLnNwbGljZS5hcHBseShkLFsxLDBdLmNvbmNhdChkLnNwbGljZShwLGgrMSkpKSxuLmRlcXVldWUoKX19KShqUXVlcnkpOyhmdW5jdGlvbih0KXt0LmVmZmVjdHMuZWZmZWN0LnB1ZmY9ZnVuY3Rpb24oZSxpKXt2YXIgcz10KHRoaXMpLG49dC5lZmZlY3RzLnNldE1vZGUocyxlLm1vZGV8fCJoaWRlIiksYT0iaGlkZSI9PT1uLG89cGFyc2VJbnQoZS5wZXJjZW50LDEwKXx8MTUwLHI9by8xMDAsbD17aGVpZ2h0OnMuaGVpZ2h0KCksd2lkdGg6cy53aWR0aCgpLG91dGVySGVpZ2h0OnMub3V0ZXJIZWlnaHQoKSxvdXRlcldpZHRoOnMub3V0ZXJXaWR0aCgpfTt0LmV4dGVuZChlLHtlZmZlY3Q6InNjYWxlIixxdWV1ZTohMSxmYWRlOiEwLG1vZGU6bixjb21wbGV0ZTppLHBlcmNlbnQ6YT9vOjEwMCxmcm9tOmE/bDp7aGVpZ2h0OmwuaGVpZ2h0KnIsd2lkdGg6bC53aWR0aCpyLG91dGVySGVpZ2h0Omwub3V0ZXJIZWlnaHQqcixvdXRlcldpZHRoOmwub3V0ZXJXaWR0aCpyfX0pLHMuZWZmZWN0KGUpfSx0LmVmZmVjdHMuZWZmZWN0LnNjYWxlPWZ1bmN0aW9uKGUsaSl7dmFyIHM9dCh0aGlzKSxuPXQuZXh0ZW5kKCEwLHt9LGUpLGE9dC5lZmZlY3RzLnNldE1vZGUocyxlLm1vZGV8fCJlZmZlY3QiKSxvPXBhcnNlSW50KGUucGVyY2VudCwxMCl8fCgwPT09cGFyc2VJbnQoZS5wZXJjZW50LDEwKT8wOiJoaWRlIj09PWE/MDoxMDApLHI9ZS5kaXJlY3Rpb258fCJib3RoIixsPWUub3JpZ2luLGg9e2hlaWdodDpzLmhlaWdodCgpLHdpZHRoOnMud2lkdGgoKSxvdXRlckhlaWdodDpzLm91dGVySGVpZ2h0KCksb3V0ZXJXaWR0aDpzLm91dGVyV2lkdGgoKX0sYz17eToiaG9yaXpvbnRhbCIhPT1yP28vMTAwOjEseDoidmVydGljYWwiIT09cj9vLzEwMDoxfTtuLmVmZmVjdD0ic2l6ZSIsbi5xdWV1ZT0hMSxuLmNvbXBsZXRlPWksImVmZmVjdCIhPT1hJiYobi5vcmlnaW49bHx8WyJtaWRkbGUiLCJjZW50ZXIiXSxuLnJlc3RvcmU9ITApLG4uZnJvbT1lLmZyb218fCgic2hvdyI9PT1hP3toZWlnaHQ6MCx3aWR0aDowLG91dGVySGVpZ2h0OjAsb3V0ZXJXaWR0aDowfTpoKSxuLnRvPXtoZWlnaHQ6aC5oZWlnaHQqYy55LHdpZHRoOmgud2lkdGgqYy54LG91dGVySGVpZ2h0Omgub3V0ZXJIZWlnaHQqYy55LG91dGVyV2lkdGg6aC5vdXRlcldpZHRoKmMueH0sbi5mYWRlJiYoInNob3ciPT09YSYmKG4uZnJvbS5vcGFjaXR5PTAsbi50by5vcGFjaXR5PTEpLCJoaWRlIj09PWEmJihuLmZyb20ub3BhY2l0eT0xLG4udG8ub3BhY2l0eT0wKSkscy5lZmZlY3Qobil9LHQuZWZmZWN0cy5lZmZlY3Quc2l6ZT1mdW5jdGlvbihlLGkpe3ZhciBzLG4sYSxvPXQodGhpcykscj1bInBvc2l0aW9uIiwidG9wIiwiYm90dG9tIiwibGVmdCIsInJpZ2h0Iiwid2lkdGgiLCJoZWlnaHQiLCJvdmVyZmxvdyIsIm9wYWNpdHkiXSxsPVsicG9zaXRpb24iLCJ0b3AiLCJib3R0b20iLCJsZWZ0IiwicmlnaHQiLCJvdmVyZmxvdyIsIm9wYWNpdHkiXSxoPVsid2lkdGgiLCJoZWlnaHQiLCJvdmVyZmxvdyJdLGM9WyJmb250U2l6ZSJdLHU9WyJib3JkZXJUb3BXaWR0aCIsImJvcmRlckJvdHRvbVdpZHRoIiwicGFkZGluZ1RvcCIsInBhZGRpbmdCb3R0b20iXSxkPVsiYm9yZGVyTGVmdFdpZHRoIiwiYm9yZGVyUmlnaHRXaWR0aCIsInBhZGRpbmdMZWZ0IiwicGFkZGluZ1JpZ2h0Il0scD10LmVmZmVjdHMuc2V0TW9kZShvLGUubW9kZXx8ImVmZmVjdCIpLGY9ZS5yZXN0b3JlfHwiZWZmZWN0IiE9PXAsZz1lLnNjYWxlfHwiYm90aCIsbT1lLm9yaWdpbnx8WyJtaWRkbGUiLCJjZW50ZXIiXSx2PW8uY3NzKCJwb3NpdGlvbiIpLF89Zj9yOmwsYj17aGVpZ2h0OjAsd2lkdGg6MCxvdXRlckhlaWdodDowLG91dGVyV2lkdGg6MH07InNob3ciPT09cCYmby5zaG93KCkscz17aGVpZ2h0Om8uaGVpZ2h0KCksd2lkdGg6by53aWR0aCgpLG91dGVySGVpZ2h0Om8ub3V0ZXJIZWlnaHQoKSxvdXRlcldpZHRoOm8ub3V0ZXJXaWR0aCgpfSwidG9nZ2xlIj09PWUubW9kZSYmInNob3ciPT09cD8oby5mcm9tPWUudG98fGIsby50bz1lLmZyb218fHMpOihvLmZyb209ZS5mcm9tfHwoInNob3ciPT09cD9iOnMpLG8udG89ZS50b3x8KCJoaWRlIj09PXA/YjpzKSksYT17ZnJvbTp7eTpvLmZyb20uaGVpZ2h0L3MuaGVpZ2h0LHg6by5mcm9tLndpZHRoL3Mud2lkdGh9LHRvOnt5Om8udG8uaGVpZ2h0L3MuaGVpZ2h0LHg6by50by53aWR0aC9zLndpZHRofX0sKCJib3giPT09Z3x8ImJvdGgiPT09ZykmJihhLmZyb20ueSE9PWEudG8ueSYmKF89Xy5jb25jYXQodSksby5mcm9tPXQuZWZmZWN0cy5zZXRUcmFuc2l0aW9uKG8sdSxhLmZyb20ueSxvLmZyb20pLG8udG89dC5lZmZlY3RzLnNldFRyYW5zaXRpb24obyx1LGEudG8ueSxvLnRvKSksYS5mcm9tLnghPT1hLnRvLngmJihfPV8uY29uY2F0KGQpLG8uZnJvbT10LmVmZmVjdHMuc2V0VHJhbnNpdGlvbihvLGQsYS5mcm9tLngsby5mcm9tKSxvLnRvPXQuZWZmZWN0cy5zZXRUcmFuc2l0aW9uKG8sZCxhLnRvLngsby50bykpKSwoImNvbnRlbnQiPT09Z3x8ImJvdGgiPT09ZykmJmEuZnJvbS55IT09YS50by55JiYoXz1fLmNvbmNhdChjKS5jb25jYXQoaCksby5mcm9tPXQuZWZmZWN0cy5zZXRUcmFuc2l0aW9uKG8sYyxhLmZyb20ueSxvLmZyb20pLG8udG89dC5lZmZlY3RzLnNldFRyYW5zaXRpb24obyxjLGEudG8ueSxvLnRvKSksdC5lZmZlY3RzLnNhdmUobyxfKSxvLnNob3coKSx0LmVmZmVjdHMuY3JlYXRlV3JhcHBlcihvKSxvLmNzcygib3ZlcmZsb3ciLCJoaWRkZW4iKS5jc3Moby5mcm9tKSxtJiYobj10LmVmZmVjdHMuZ2V0QmFzZWxpbmUobSxzKSxvLmZyb20udG9wPShzLm91dGVySGVpZ2h0LW8ub3V0ZXJIZWlnaHQoKSkqbi55LG8uZnJvbS5sZWZ0PShzLm91dGVyV2lkdGgtby5vdXRlcldpZHRoKCkpKm4ueCxvLnRvLnRvcD0ocy5vdXRlckhlaWdodC1vLnRvLm91dGVySGVpZ2h0KSpuLnksby50by5sZWZ0PShzLm91dGVyV2lkdGgtby50by5vdXRlcldpZHRoKSpuLngpLG8uY3NzKG8uZnJvbSksKCJjb250ZW50Ij09PWd8fCJib3RoIj09PWcpJiYodT11LmNvbmNhdChbIm1hcmdpblRvcCIsIm1hcmdpbkJvdHRvbSJdKS5jb25jYXQoYyksZD1kLmNvbmNhdChbIm1hcmdpbkxlZnQiLCJtYXJnaW5SaWdodCJdKSxoPXIuY29uY2F0KHUpLmNvbmNhdChkKSxvLmZpbmQoIipbd2lkdGhdIikuZWFjaChmdW5jdGlvbigpe3ZhciBpPXQodGhpcykscz17aGVpZ2h0OmkuaGVpZ2h0KCksd2lkdGg6aS53aWR0aCgpLG91dGVySGVpZ2h0Omkub3V0ZXJIZWlnaHQoKSxvdXRlcldpZHRoOmkub3V0ZXJXaWR0aCgpfTtmJiZ0LmVmZmVjdHMuc2F2ZShpLGgpLGkuZnJvbT17aGVpZ2h0OnMuaGVpZ2h0KmEuZnJvbS55LHdpZHRoOnMud2lkdGgqYS5mcm9tLngsb3V0ZXJIZWlnaHQ6cy5vdXRlckhlaWdodCphLmZyb20ueSxvdXRlcldpZHRoOnMub3V0ZXJXaWR0aCphLmZyb20ueH0saS50bz17aGVpZ2h0OnMuaGVpZ2h0KmEudG8ueSx3aWR0aDpzLndpZHRoKmEudG8ueCxvdXRlckhlaWdodDpzLmhlaWdodCphLnRvLnksb3V0ZXJXaWR0aDpzLndpZHRoKmEudG8ueH0sYS5mcm9tLnkhPT1hLnRvLnkmJihpLmZyb209dC5lZmZlY3RzLnNldFRyYW5zaXRpb24oaSx1LGEuZnJvbS55LGkuZnJvbSksaS50bz10LmVmZmVjdHMuc2V0VHJhbnNpdGlvbihpLHUsYS50by55LGkudG8pKSxhLmZyb20ueCE9PWEudG8ueCYmKGkuZnJvbT10LmVmZmVjdHMuc2V0VHJhbnNpdGlvbihpLGQsYS5mcm9tLngsaS5mcm9tKSxpLnRvPXQuZWZmZWN0cy5zZXRUcmFuc2l0aW9uKGksZCxhLnRvLngsaS50bykpLGkuY3NzKGkuZnJvbSksaS5hbmltYXRlKGkudG8sZS5kdXJhdGlvbixlLmVhc2luZyxmdW5jdGlvbigpe2YmJnQuZWZmZWN0cy5yZXN0b3JlKGksaCl9KX0pKSxvLmFuaW1hdGUoby50byx7cXVldWU6ITEsZHVyYXRpb246ZS5kdXJhdGlvbixlYXNpbmc6ZS5lYXNpbmcsY29tcGxldGU6ZnVuY3Rpb24oKXswPT09by50by5vcGFjaXR5JiZvLmNzcygib3BhY2l0eSIsby5mcm9tLm9wYWNpdHkpLCJoaWRlIj09PXAmJm8uaGlkZSgpLHQuZWZmZWN0cy5yZXN0b3JlKG8sXyksZnx8KCJzdGF0aWMiPT09dj9vLmNzcyh7cG9zaXRpb246InJlbGF0aXZlIix0b3A6by50by50b3AsbGVmdDpvLnRvLmxlZnR9KTp0LmVhY2goWyJ0b3AiLCJsZWZ0Il0sZnVuY3Rpb24odCxlKXtvLmNzcyhlLGZ1bmN0aW9uKGUsaSl7dmFyIHM9cGFyc2VJbnQoaSwxMCksbj10P28udG8ubGVmdDpvLnRvLnRvcDtyZXR1cm4iYXV0byI9PT1pP24rInB4IjpzK24rInB4In0pfSkpLHQuZWZmZWN0cy5yZW1vdmVXcmFwcGVyKG8pLGkoKX19KX19KShqUXVlcnkpOyhmdW5jdGlvbih0KXt0LmVmZmVjdHMuZWZmZWN0LnNoYWtlPWZ1bmN0aW9uKGUsaSl7dmFyIHMsbj10KHRoaXMpLGE9WyJwb3NpdGlvbiIsInRvcCIsImJvdHRvbSIsImxlZnQiLCJyaWdodCIsImhlaWdodCIsIndpZHRoIl0sbz10LmVmZmVjdHMuc2V0TW9kZShuLGUubW9kZXx8ImVmZmVjdCIpLHI9ZS5kaXJlY3Rpb258fCJsZWZ0IixsPWUuZGlzdGFuY2V8fDIwLGg9ZS50aW1lc3x8MyxjPTIqaCsxLHU9TWF0aC5yb3VuZChlLmR1cmF0aW9uL2MpLGQ9InVwIj09PXJ8fCJkb3duIj09PXI/InRvcCI6ImxlZnQiLHA9InVwIj09PXJ8fCJsZWZ0Ij09PXIsZj17fSxnPXt9LG09e30sdj1uLnF1ZXVlKCksXz12Lmxlbmd0aDtmb3IodC5lZmZlY3RzLnNhdmUobixhKSxuLnNob3coKSx0LmVmZmVjdHMuY3JlYXRlV3JhcHBlcihuKSxmW2RdPShwPyItPSI6Iis9IikrbCxnW2RdPShwPyIrPSI6Ii09IikrMipsLG1bZF09KHA/Ii09IjoiKz0iKSsyKmwsbi5hbmltYXRlKGYsdSxlLmVhc2luZykscz0xO2g+cztzKyspbi5hbmltYXRlKGcsdSxlLmVhc2luZykuYW5pbWF0ZShtLHUsZS5lYXNpbmcpO24uYW5pbWF0ZShnLHUsZS5lYXNpbmcpLmFuaW1hdGUoZix1LzIsZS5lYXNpbmcpLnF1ZXVlKGZ1bmN0aW9uKCl7ImhpZGUiPT09byYmbi5oaWRlKCksdC5lZmZlY3RzLnJlc3RvcmUobixhKSx0LmVmZmVjdHMucmVtb3ZlV3JhcHBlcihuKSxpKCl9KSxfPjEmJnYuc3BsaWNlLmFwcGx5KHYsWzEsMF0uY29uY2F0KHYuc3BsaWNlKF8sYysxKSkpLG4uZGVxdWV1ZSgpfX0pKGpRdWVyeSk7KGZ1bmN0aW9uKHQpe3QuZWZmZWN0cy5lZmZlY3Quc2xpZGU9ZnVuY3Rpb24oZSxpKXt2YXIgcyxuPXQodGhpcyksYT1bInBvc2l0aW9uIiwidG9wIiwiYm90dG9tIiwibGVmdCIsInJpZ2h0Iiwid2lkdGgiLCJoZWlnaHQiXSxvPXQuZWZmZWN0cy5zZXRNb2RlKG4sZS5tb2RlfHwic2hvdyIpLHI9InNob3ciPT09byxsPWUuZGlyZWN0aW9ufHwibGVmdCIsaD0idXAiPT09bHx8ImRvd24iPT09bD8idG9wIjoibGVmdCIsYz0idXAiPT09bHx8ImxlZnQiPT09bCx1PXt9O3QuZWZmZWN0cy5zYXZlKG4sYSksbi5zaG93KCkscz1lLmRpc3RhbmNlfHxuWyJ0b3AiPT09aD8ib3V0ZXJIZWlnaHQiOiJvdXRlcldpZHRoIl0oITApLHQuZWZmZWN0cy5jcmVhdGVXcmFwcGVyKG4pLmNzcyh7b3ZlcmZsb3c6ImhpZGRlbiJ9KSxyJiZuLmNzcyhoLGM/aXNOYU4ocyk/Ii0iK3M6LXM6cyksdVtoXT0ocj9jPyIrPSI6Ii09IjpjPyItPSI6Iis9IikrcyxuLmFuaW1hdGUodSx7cXVldWU6ITEsZHVyYXRpb246ZS5kdXJhdGlvbixlYXNpbmc6ZS5lYXNpbmcsY29tcGxldGU6ZnVuY3Rpb24oKXsiaGlkZSI9PT1vJiZuLmhpZGUoKSx0LmVmZmVjdHMucmVzdG9yZShuLGEpLHQuZWZmZWN0cy5yZW1vdmVXcmFwcGVyKG4pLGkoKX19KX19KShqUXVlcnkpOyhmdW5jdGlvbih0KXt0LmVmZmVjdHMuZWZmZWN0LnRyYW5zZmVyPWZ1bmN0aW9uKGUsaSl7dmFyIHM9dCh0aGlzKSxuPXQoZS50byksYT0iZml4ZWQiPT09bi5jc3MoInBvc2l0aW9uIiksbz10KCJib2R5Iikscj1hP28uc2Nyb2xsVG9wKCk6MCxsPWE/by5zY3JvbGxMZWZ0KCk6MCxoPW4ub2Zmc2V0KCksYz17dG9wOmgudG9wLXIsbGVmdDpoLmxlZnQtbCxoZWlnaHQ6bi5pbm5lckhlaWdodCgpLHdpZHRoOm4uaW5uZXJXaWR0aCgpfSx1PXMub2Zmc2V0KCksZD10KCI8ZGl2IGNsYXNzPSd1aS1lZmZlY3RzLXRyYW5zZmVyJz48L2Rpdj4iKS5hcHBlbmRUbyhkb2N1bWVudC5ib2R5KS5hZGRDbGFzcyhlLmNsYXNzTmFtZSkuY3NzKHt0b3A6dS50b3AtcixsZWZ0OnUubGVmdC1sLGhlaWdodDpzLmlubmVySGVpZ2h0KCksd2lkdGg6cy5pbm5lcldpZHRoKCkscG9zaXRpb246YT8iZml4ZWQiOiJhYnNvbHV0ZSJ9KS5hbmltYXRlKGMsZS5kdXJhdGlvbixlLmVhc2luZyxmdW5jdGlvbigpe2QucmVtb3ZlKCksaSgpfSl9fSkoalF1ZXJ5KTsoZnVuY3Rpb24odCl7dC53aWRnZXQoInVpLm1lbnUiLHt2ZXJzaW9uOiIxLjEwLjQiLGRlZmF1bHRFbGVtZW50OiI8dWw+IixkZWxheTozMDAsb3B0aW9uczp7aWNvbnM6e3N1Ym1lbnU6InVpLWljb24tY2FyYXQtMS1lIn0sbWVudXM6InVsIixwb3NpdGlvbjp7bXk6ImxlZnQgdG9wIixhdDoicmlnaHQgdG9wIn0scm9sZToibWVudSIsYmx1cjpudWxsLGZvY3VzOm51bGwsc2VsZWN0Om51bGx9LF9jcmVhdGU6ZnVuY3Rpb24oKXt0aGlzLmFjdGl2ZU1lbnU9dGhpcy5lbGVtZW50LHRoaXMubW91c2VIYW5kbGVkPSExLHRoaXMuZWxlbWVudC51bmlxdWVJZCgpLmFkZENsYXNzKCJ1aS1tZW51IHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIikudG9nZ2xlQ2xhc3MoInVpLW1lbnUtaWNvbnMiLCEhdGhpcy5lbGVtZW50LmZpbmQoIi51aS1pY29uIikubGVuZ3RoKS5hdHRyKHtyb2xlOnRoaXMub3B0aW9ucy5yb2xlLHRhYkluZGV4OjB9KS5iaW5kKCJjbGljayIrdGhpcy5ldmVudE5hbWVzcGFjZSx0LnByb3h5KGZ1bmN0aW9uKHQpe3RoaXMub3B0aW9ucy5kaXNhYmxlZCYmdC5wcmV2ZW50RGVmYXVsdCgpfSx0aGlzKSksdGhpcy5vcHRpb25zLmRpc2FibGVkJiZ0aGlzLmVsZW1lbnQuYWRkQ2xhc3MoInVpLXN0YXRlLWRpc2FibGVkIikuYXR0cigiYXJpYS1kaXNhYmxlZCIsInRydWUiKSx0aGlzLl9vbih7Im1vdXNlZG93biAudWktbWVudS1pdGVtID4gYSI6ZnVuY3Rpb24odCl7dC5wcmV2ZW50RGVmYXVsdCgpfSwiY2xpY2sgLnVpLXN0YXRlLWRpc2FibGVkID4gYSI6ZnVuY3Rpb24odCl7dC5wcmV2ZW50RGVmYXVsdCgpfSwiY2xpY2sgLnVpLW1lbnUtaXRlbTpoYXMoYSkiOmZ1bmN0aW9uKGUpe3ZhciBpPXQoZS50YXJnZXQpLmNsb3Nlc3QoIi51aS1tZW51LWl0ZW0iKTshdGhpcy5tb3VzZUhhbmRsZWQmJmkubm90KCIudWktc3RhdGUtZGlzYWJsZWQiKS5sZW5ndGgmJih0aGlzLnNlbGVjdChlKSxlLmlzUHJvcGFnYXRpb25TdG9wcGVkKCl8fCh0aGlzLm1vdXNlSGFuZGxlZD0hMCksaS5oYXMoIi51aS1tZW51IikubGVuZ3RoP3RoaXMuZXhwYW5kKGUpOiF0aGlzLmVsZW1lbnQuaXMoIjpmb2N1cyIpJiZ0KHRoaXMuZG9jdW1lbnRbMF0uYWN0aXZlRWxlbWVudCkuY2xvc2VzdCgiLnVpLW1lbnUiKS5sZW5ndGgmJih0aGlzLmVsZW1lbnQudHJpZ2dlcigiZm9jdXMiLFshMF0pLHRoaXMuYWN0aXZlJiYxPT09dGhpcy5hY3RpdmUucGFyZW50cygiLnVpLW1lbnUiKS5sZW5ndGgmJmNsZWFyVGltZW91dCh0aGlzLnRpbWVyKSkpfSwibW91c2VlbnRlciAudWktbWVudS1pdGVtIjpmdW5jdGlvbihlKXt2YXIgaT10KGUuY3VycmVudFRhcmdldCk7aS5zaWJsaW5ncygpLmNoaWxkcmVuKCIudWktc3RhdGUtYWN0aXZlIikucmVtb3ZlQ2xhc3MoInVpLXN0YXRlLWFjdGl2ZSIpLHRoaXMuZm9jdXMoZSxpKX0sbW91c2VsZWF2ZToiY29sbGFwc2VBbGwiLCJtb3VzZWxlYXZlIC51aS1tZW51IjoiY29sbGFwc2VBbGwiLGZvY3VzOmZ1bmN0aW9uKHQsZSl7dmFyIGk9dGhpcy5hY3RpdmV8fHRoaXMuZWxlbWVudC5jaGlsZHJlbigiLnVpLW1lbnUtaXRlbSIpLmVxKDApO2V8fHRoaXMuZm9jdXModCxpKX0sYmx1cjpmdW5jdGlvbihlKXt0aGlzLl9kZWxheShmdW5jdGlvbigpe3QuY29udGFpbnModGhpcy5lbGVtZW50WzBdLHRoaXMuZG9jdW1lbnRbMF0uYWN0aXZlRWxlbWVudCl8fHRoaXMuY29sbGFwc2VBbGwoZSl9KX0sa2V5ZG93bjoiX2tleWRvd24ifSksdGhpcy5yZWZyZXNoKCksdGhpcy5fb24odGhpcy5kb2N1bWVudCx7Y2xpY2s6ZnVuY3Rpb24oZSl7dChlLnRhcmdldCkuY2xvc2VzdCgiLnVpLW1lbnUiKS5sZW5ndGh8fHRoaXMuY29sbGFwc2VBbGwoZSksdGhpcy5tb3VzZUhhbmRsZWQ9ITF9fSl9LF9kZXN0cm95OmZ1bmN0aW9uKCl7dGhpcy5lbGVtZW50LnJlbW92ZUF0dHIoImFyaWEtYWN0aXZlZGVzY2VuZGFudCIpLmZpbmQoIi51aS1tZW51IikuYWRkQmFjaygpLnJlbW92ZUNsYXNzKCJ1aS1tZW51IHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsIHVpLW1lbnUtaWNvbnMiKS5yZW1vdmVBdHRyKCJyb2xlIikucmVtb3ZlQXR0cigidGFiSW5kZXgiKS5yZW1vdmVBdHRyKCJhcmlhLWxhYmVsbGVkYnkiKS5yZW1vdmVBdHRyKCJhcmlhLWV4cGFuZGVkIikucmVtb3ZlQXR0cigiYXJpYS1oaWRkZW4iKS5yZW1vdmVBdHRyKCJhcmlhLWRpc2FibGVkIikucmVtb3ZlVW5pcXVlSWQoKS5zaG93KCksdGhpcy5lbGVtZW50LmZpbmQoIi51aS1tZW51LWl0ZW0iKS5yZW1vdmVDbGFzcygidWktbWVudS1pdGVtIikucmVtb3ZlQXR0cigicm9sZSIpLnJlbW92ZUF0dHIoImFyaWEtZGlzYWJsZWQiKS5jaGlsZHJlbigiYSIpLnJlbW92ZVVuaXF1ZUlkKCkucmVtb3ZlQ2xhc3MoInVpLWNvcm5lci1hbGwgdWktc3RhdGUtaG92ZXIiKS5yZW1vdmVBdHRyKCJ0YWJJbmRleCIpLnJlbW92ZUF0dHIoInJvbGUiKS5yZW1vdmVBdHRyKCJhcmlhLWhhc3BvcHVwIikuY2hpbGRyZW4oKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9dCh0aGlzKTtlLmRhdGEoInVpLW1lbnUtc3VibWVudS1jYXJhdCIpJiZlLnJlbW92ZSgpfSksdGhpcy5lbGVtZW50LmZpbmQoIi51aS1tZW51LWRpdmlkZXIiKS5yZW1vdmVDbGFzcygidWktbWVudS1kaXZpZGVyIHVpLXdpZGdldC1jb250ZW50Iil9LF9rZXlkb3duOmZ1bmN0aW9uKGUpe2Z1bmN0aW9uIGkodCl7cmV0dXJuIHQucmVwbGFjZSgvW1wtXFtcXXt9KCkqKz8uLFxcXF4kfCNcc10vZywiXFwkJiIpfXZhciBzLG4sYSxvLHIsbD0hMDtzd2l0Y2goZS5rZXlDb2RlKXtjYXNlIHQudWkua2V5Q29kZS5QQUdFX1VQOnRoaXMucHJldmlvdXNQYWdlKGUpO2JyZWFrO2Nhc2UgdC51aS5rZXlDb2RlLlBBR0VfRE9XTjp0aGlzLm5leHRQYWdlKGUpO2JyZWFrO2Nhc2UgdC51aS5rZXlDb2RlLkhPTUU6dGhpcy5fbW92ZSgiZmlyc3QiLCJmaXJzdCIsZSk7YnJlYWs7Y2FzZSB0LnVpLmtleUNvZGUuRU5EOnRoaXMuX21vdmUoImxhc3QiLCJsYXN0IixlKTticmVhaztjYXNlIHQudWkua2V5Q29kZS5VUDp0aGlzLnByZXZpb3VzKGUpO2JyZWFrO2Nhc2UgdC51aS5rZXlDb2RlLkRPV046dGhpcy5uZXh0KGUpO2JyZWFrO2Nhc2UgdC51aS5rZXlDb2RlLkxFRlQ6dGhpcy5jb2xsYXBzZShlKTticmVhaztjYXNlIHQudWkua2V5Q29kZS5SSUdIVDp0aGlzLmFjdGl2ZSYmIXRoaXMuYWN0aXZlLmlzKCIudWktc3RhdGUtZGlzYWJsZWQiKSYmdGhpcy5leHBhbmQoZSk7YnJlYWs7Y2FzZSB0LnVpLmtleUNvZGUuRU5URVI6Y2FzZSB0LnVpLmtleUNvZGUuU1BBQ0U6dGhpcy5fYWN0aXZhdGUoZSk7YnJlYWs7Y2FzZSB0LnVpLmtleUNvZGUuRVNDQVBFOnRoaXMuY29sbGFwc2UoZSk7YnJlYWs7ZGVmYXVsdDpsPSExLG49dGhpcy5wcmV2aW91c0ZpbHRlcnx8IiIsYT1TdHJpbmcuZnJvbUNoYXJDb2RlKGUua2V5Q29kZSksbz0hMSxjbGVhclRpbWVvdXQodGhpcy5maWx0ZXJUaW1lciksYT09PW4/bz0hMDphPW4rYSxyPVJlZ0V4cCgiXiIraShhKSwiaSIpLHM9dGhpcy5hY3RpdmVNZW51LmNoaWxkcmVuKCIudWktbWVudS1pdGVtIikuZmlsdGVyKGZ1bmN0aW9uKCl7cmV0dXJuIHIudGVzdCh0KHRoaXMpLmNoaWxkcmVuKCJhIikudGV4dCgpKX0pLHM9byYmLTEhPT1zLmluZGV4KHRoaXMuYWN0aXZlLm5leHQoKSk/dGhpcy5hY3RpdmUubmV4dEFsbCgiLnVpLW1lbnUtaXRlbSIpOnMscy5sZW5ndGh8fChhPVN0cmluZy5mcm9tQ2hhckNvZGUoZS5rZXlDb2RlKSxyPVJlZ0V4cCgiXiIraShhKSwiaSIpLHM9dGhpcy5hY3RpdmVNZW51LmNoaWxkcmVuKCIudWktbWVudS1pdGVtIikuZmlsdGVyKGZ1bmN0aW9uKCl7cmV0dXJuIHIudGVzdCh0KHRoaXMpLmNoaWxkcmVuKCJhIikudGV4dCgpKX0pKSxzLmxlbmd0aD8odGhpcy5mb2N1cyhlLHMpLHMubGVuZ3RoPjE/KHRoaXMucHJldmlvdXNGaWx0ZXI9YSx0aGlzLmZpbHRlclRpbWVyPXRoaXMuX2RlbGF5KGZ1bmN0aW9uKCl7ZGVsZXRlIHRoaXMucHJldmlvdXNGaWx0ZXJ9LDFlMykpOmRlbGV0ZSB0aGlzLnByZXZpb3VzRmlsdGVyKTpkZWxldGUgdGhpcy5wcmV2aW91c0ZpbHRlcn1sJiZlLnByZXZlbnREZWZhdWx0KCl9LF9hY3RpdmF0ZTpmdW5jdGlvbih0KXt0aGlzLmFjdGl2ZS5pcygiLnVpLXN0YXRlLWRpc2FibGVkIil8fCh0aGlzLmFjdGl2ZS5jaGlsZHJlbigiYVthcmlhLWhhc3BvcHVwPSd0cnVlJ10iKS5sZW5ndGg/dGhpcy5leHBhbmQodCk6dGhpcy5zZWxlY3QodCkpfSxyZWZyZXNoOmZ1bmN0aW9uKCl7dmFyIGUsaT10aGlzLm9wdGlvbnMuaWNvbnMuc3VibWVudSxzPXRoaXMuZWxlbWVudC5maW5kKHRoaXMub3B0aW9ucy5tZW51cyk7dGhpcy5lbGVtZW50LnRvZ2dsZUNsYXNzKCJ1aS1tZW51LWljb25zIiwhIXRoaXMuZWxlbWVudC5maW5kKCIudWktaWNvbiIpLmxlbmd0aCkscy5maWx0ZXIoIjpub3QoLnVpLW1lbnUpIikuYWRkQ2xhc3MoInVpLW1lbnUgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwiKS5oaWRlKCkuYXR0cih7cm9sZTp0aGlzLm9wdGlvbnMucm9sZSwiYXJpYS1oaWRkZW4iOiJ0cnVlIiwiYXJpYS1leHBhbmRlZCI6ImZhbHNlIn0pLmVhY2goZnVuY3Rpb24oKXt2YXIgZT10KHRoaXMpLHM9ZS5wcmV2KCJhIiksbj10KCI8c3Bhbj4iKS5hZGRDbGFzcygidWktbWVudS1pY29uIHVpLWljb24gIitpKS5kYXRhKCJ1aS1tZW51LXN1Ym1lbnUtY2FyYXQiLCEwKTtzLmF0dHIoImFyaWEtaGFzcG9wdXAiLCJ0cnVlIikucHJlcGVuZChuKSxlLmF0dHIoImFyaWEtbGFiZWxsZWRieSIscy5hdHRyKCJpZCIpKX0pLGU9cy5hZGQodGhpcy5lbGVtZW50KSxlLmNoaWxkcmVuKCI6bm90KC51aS1tZW51LWl0ZW0pOmhhcyhhKSIpLmFkZENsYXNzKCJ1aS1tZW51LWl0ZW0iKS5hdHRyKCJyb2xlIiwicHJlc2VudGF0aW9uIikuY2hpbGRyZW4oImEiKS51bmlxdWVJZCgpLmFkZENsYXNzKCJ1aS1jb3JuZXItYWxsIikuYXR0cih7dGFiSW5kZXg6LTEscm9sZTp0aGlzLl9pdGVtUm9sZSgpfSksZS5jaGlsZHJlbigiOm5vdCgudWktbWVudS1pdGVtKSIpLmVhY2goZnVuY3Rpb24oKXt2YXIgZT10KHRoaXMpOy9bXlwtXHUyMDE0XHUyMDEzXHNdLy50ZXN0KGUudGV4dCgpKXx8ZS5hZGRDbGFzcygidWktd2lkZ2V0LWNvbnRlbnQgdWktbWVudS1kaXZpZGVyIil9KSxlLmNoaWxkcmVuKCIudWktc3RhdGUtZGlzYWJsZWQiKS5hdHRyKCJhcmlhLWRpc2FibGVkIiwidHJ1ZSIpLHRoaXMuYWN0aXZlJiYhdC5jb250YWlucyh0aGlzLmVsZW1lbnRbMF0sdGhpcy5hY3RpdmVbMF0pJiZ0aGlzLmJsdXIoKX0sX2l0ZW1Sb2xlOmZ1bmN0aW9uKCl7cmV0dXJue21lbnU6Im1lbnVpdGVtIixsaXN0Ym94OiJvcHRpb24ifVt0aGlzLm9wdGlvbnMucm9sZV19LF9zZXRPcHRpb246ZnVuY3Rpb24odCxlKXsiaWNvbnMiPT09dCYmdGhpcy5lbGVtZW50LmZpbmQoIi51aS1tZW51LWljb24iKS5yZW1vdmVDbGFzcyh0aGlzLm9wdGlvbnMuaWNvbnMuc3VibWVudSkuYWRkQ2xhc3MoZS5zdWJtZW51KSx0aGlzLl9zdXBlcih0LGUpfSxmb2N1czpmdW5jdGlvbih0LGUpe3ZhciBpLHM7dGhpcy5ibHVyKHQsdCYmImZvY3VzIj09PXQudHlwZSksdGhpcy5fc2Nyb2xsSW50b1ZpZXcoZSksdGhpcy5hY3RpdmU9ZS5maXJzdCgpLHM9dGhpcy5hY3RpdmUuY2hpbGRyZW4oImEiKS5hZGRDbGFzcygidWktc3RhdGUtZm9jdXMiKSx0aGlzLm9wdGlvbnMucm9sZSYmdGhpcy5lbGVtZW50LmF0dHIoImFyaWEtYWN0aXZlZGVzY2VuZGFudCIscy5hdHRyKCJpZCIpKSx0aGlzLmFjdGl2ZS5wYXJlbnQoKS5jbG9zZXN0KCIudWktbWVudS1pdGVtIikuY2hpbGRyZW4oImE6Zmlyc3QiKS5hZGRDbGFzcygidWktc3RhdGUtYWN0aXZlIiksdCYmImtleWRvd24iPT09dC50eXBlP3RoaXMuX2Nsb3NlKCk6dGhpcy50aW1lcj10aGlzLl9kZWxheShmdW5jdGlvbigpe3RoaXMuX2Nsb3NlKCl9LHRoaXMuZGVsYXkpLGk9ZS5jaGlsZHJlbigiLnVpLW1lbnUiKSxpLmxlbmd0aCYmdCYmL15tb3VzZS8udGVzdCh0LnR5cGUpJiZ0aGlzLl9zdGFydE9wZW5pbmcoaSksdGhpcy5hY3RpdmVNZW51PWUucGFyZW50KCksdGhpcy5fdHJpZ2dlcigiZm9jdXMiLHQse2l0ZW06ZX0pfSxfc2Nyb2xsSW50b1ZpZXc6ZnVuY3Rpb24oZSl7dmFyIGkscyxuLGEsbyxyO3RoaXMuX2hhc1Njcm9sbCgpJiYoaT1wYXJzZUZsb2F0KHQuY3NzKHRoaXMuYWN0aXZlTWVudVswXSwiYm9yZGVyVG9wV2lkdGgiKSl8fDAscz1wYXJzZUZsb2F0KHQuY3NzKHRoaXMuYWN0aXZlTWVudVswXSwicGFkZGluZ1RvcCIpKXx8MCxuPWUub2Zmc2V0KCkudG9wLXRoaXMuYWN0aXZlTWVudS5vZmZzZXQoKS50b3AtaS1zLGE9dGhpcy5hY3RpdmVNZW51LnNjcm9sbFRvcCgpLG89dGhpcy5hY3RpdmVNZW51LmhlaWdodCgpLHI9ZS5oZWlnaHQoKSwwPm4/dGhpcy5hY3RpdmVNZW51LnNjcm9sbFRvcChhK24pOm4rcj5vJiZ0aGlzLmFjdGl2ZU1lbnUuc2Nyb2xsVG9wKGErbi1vK3IpKX0sYmx1cjpmdW5jdGlvbih0LGUpe2V8fGNsZWFyVGltZW91dCh0aGlzLnRpbWVyKSx0aGlzLmFjdGl2ZSYmKHRoaXMuYWN0aXZlLmNoaWxkcmVuKCJhIikucmVtb3ZlQ2xhc3MoInVpLXN0YXRlLWZvY3VzIiksdGhpcy5hY3RpdmU9bnVsbCx0aGlzLl90cmlnZ2VyKCJibHVyIix0LHtpdGVtOnRoaXMuYWN0aXZlfSkpfSxfc3RhcnRPcGVuaW5nOmZ1bmN0aW9uKHQpe2NsZWFyVGltZW91dCh0aGlzLnRpbWVyKSwidHJ1ZSI9PT10LmF0dHIoImFyaWEtaGlkZGVuIikmJih0aGlzLnRpbWVyPXRoaXMuX2RlbGF5KGZ1bmN0aW9uKCl7dGhpcy5fY2xvc2UoKSx0aGlzLl9vcGVuKHQpfSx0aGlzLmRlbGF5KSl9LF9vcGVuOmZ1bmN0aW9uKGUpe3ZhciBpPXQuZXh0ZW5kKHtvZjp0aGlzLmFjdGl2ZX0sdGhpcy5vcHRpb25zLnBvc2l0aW9uKTtjbGVhclRpbWVvdXQodGhpcy50aW1lciksdGhpcy5lbGVtZW50LmZpbmQoIi51aS1tZW51Iikubm90KGUucGFyZW50cygiLnVpLW1lbnUiKSkuaGlkZSgpLmF0dHIoImFyaWEtaGlkZGVuIiwidHJ1ZSIpLGUuc2hvdygpLnJlbW92ZUF0dHIoImFyaWEtaGlkZGVuIikuYXR0cigiYXJpYS1leHBhbmRlZCIsInRydWUiKS5wb3NpdGlvbihpKX0sY29sbGFwc2VBbGw6ZnVuY3Rpb24oZSxpKXtjbGVhclRpbWVvdXQodGhpcy50aW1lciksdGhpcy50aW1lcj10aGlzLl9kZWxheShmdW5jdGlvbigpe3ZhciBzPWk/dGhpcy5lbGVtZW50OnQoZSYmZS50YXJnZXQpLmNsb3Nlc3QodGhpcy5lbGVtZW50LmZpbmQoIi51aS1tZW51IikpO3MubGVuZ3RofHwocz10aGlzLmVsZW1lbnQpLHRoaXMuX2Nsb3NlKHMpLHRoaXMuYmx1cihlKSx0aGlzLmFjdGl2ZU1lbnU9c30sdGhpcy5kZWxheSl9LF9jbG9zZTpmdW5jdGlvbih0KXt0fHwodD10aGlzLmFjdGl2ZT90aGlzLmFjdGl2ZS5wYXJlbnQoKTp0aGlzLmVsZW1lbnQpLHQuZmluZCgiLnVpLW1lbnUiKS5oaWRlKCkuYXR0cigiYXJpYS1oaWRkZW4iLCJ0cnVlIikuYXR0cigiYXJpYS1leHBhbmRlZCIsImZhbHNlIikuZW5kKCkuZmluZCgiYS51aS1zdGF0ZS1hY3RpdmUiKS5yZW1vdmVDbGFzcygidWktc3RhdGUtYWN0aXZlIil9LGNvbGxhcHNlOmZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuYWN0aXZlJiZ0aGlzLmFjdGl2ZS5wYXJlbnQoKS5jbG9zZXN0KCIudWktbWVudS1pdGVtIix0aGlzLmVsZW1lbnQpO2UmJmUubGVuZ3RoJiYodGhpcy5fY2xvc2UoKSx0aGlzLmZvY3VzKHQsZSkpfSxleHBhbmQ6ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5hY3RpdmUmJnRoaXMuYWN0aXZlLmNoaWxkcmVuKCIudWktbWVudSAiKS5jaGlsZHJlbigiLnVpLW1lbnUtaXRlbSIpLmZpcnN0KCk7ZSYmZS5sZW5ndGgmJih0aGlzLl9vcGVuKGUucGFyZW50KCkpLHRoaXMuX2RlbGF5KGZ1bmN0aW9uKCl7dGhpcy5mb2N1cyh0LGUpfSkpfSxuZXh0OmZ1bmN0aW9uKHQpe3RoaXMuX21vdmUoIm5leHQiLCJmaXJzdCIsdCl9LHByZXZpb3VzOmZ1bmN0aW9uKHQpe3RoaXMuX21vdmUoInByZXYiLCJsYXN0Iix0KX0saXNGaXJzdEl0ZW06ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5hY3RpdmUmJiF0aGlzLmFjdGl2ZS5wcmV2QWxsKCIudWktbWVudS1pdGVtIikubGVuZ3RofSxpc0xhc3RJdGVtOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYWN0aXZlJiYhdGhpcy5hY3RpdmUubmV4dEFsbCgiLnVpLW1lbnUtaXRlbSIpLmxlbmd0aH0sX21vdmU6ZnVuY3Rpb24odCxlLGkpe3ZhciBzO3RoaXMuYWN0aXZlJiYocz0iZmlyc3QiPT09dHx8Imxhc3QiPT09dD90aGlzLmFjdGl2ZVsiZmlyc3QiPT09dD8icHJldkFsbCI6Im5leHRBbGwiXSgiLnVpLW1lbnUtaXRlbSIpLmVxKC0xKTp0aGlzLmFjdGl2ZVt0KyJBbGwiXSgiLnVpLW1lbnUtaXRlbSIpLmVxKDApKSxzJiZzLmxlbmd0aCYmdGhpcy5hY3RpdmV8fChzPXRoaXMuYWN0aXZlTWVudS5jaGlsZHJlbigiLnVpLW1lbnUtaXRlbSIpW2VdKCkpLHRoaXMuZm9jdXMoaSxzKX0sbmV4dFBhZ2U6ZnVuY3Rpb24oZSl7dmFyIGkscyxuO3JldHVybiB0aGlzLmFjdGl2ZT8odGhpcy5pc0xhc3RJdGVtKCl8fCh0aGlzLl9oYXNTY3JvbGwoKT8ocz10aGlzLmFjdGl2ZS5vZmZzZXQoKS50b3Asbj10aGlzLmVsZW1lbnQuaGVpZ2h0KCksdGhpcy5hY3RpdmUubmV4dEFsbCgiLnVpLW1lbnUtaXRlbSIpLmVhY2goZnVuY3Rpb24oKXtyZXR1cm4gaT10KHRoaXMpLDA+aS5vZmZzZXQoKS50b3Atcy1ufSksdGhpcy5mb2N1cyhlLGkpKTp0aGlzLmZvY3VzKGUsdGhpcy5hY3RpdmVNZW51LmNoaWxkcmVuKCIudWktbWVudS1pdGVtIilbdGhpcy5hY3RpdmU/Imxhc3QiOiJmaXJzdCJdKCkpKSx1bmRlZmluZWQpOih0aGlzLm5leHQoZSksdW5kZWZpbmVkKX0scHJldmlvdXNQYWdlOmZ1bmN0aW9uKGUpe3ZhciBpLHMsbjtyZXR1cm4gdGhpcy5hY3RpdmU/KHRoaXMuaXNGaXJzdEl0ZW0oKXx8KHRoaXMuX2hhc1Njcm9sbCgpPyhzPXRoaXMuYWN0aXZlLm9mZnNldCgpLnRvcCxuPXRoaXMuZWxlbWVudC5oZWlnaHQoKSx0aGlzLmFjdGl2ZS5wcmV2QWxsKCIudWktbWVudS1pdGVtIikuZWFjaChmdW5jdGlvbigpe3JldHVybiBpPXQodGhpcyksaS5vZmZzZXQoKS50b3AtcytuPjB9KSx0aGlzLmZvY3VzKGUsaSkpOnRoaXMuZm9jdXMoZSx0aGlzLmFjdGl2ZU1lbnUuY2hpbGRyZW4oIi51aS1tZW51LWl0ZW0iKS5maXJzdCgpKSksdW5kZWZpbmVkKToodGhpcy5uZXh0KGUpLHVuZGVmaW5lZCl9LF9oYXNTY3JvbGw6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lbGVtZW50Lm91dGVySGVpZ2h0KCk8dGhpcy5lbGVtZW50LnByb3AoInNjcm9sbEhlaWdodCIpfSxzZWxlY3Q6ZnVuY3Rpb24oZSl7dGhpcy5hY3RpdmU9dGhpcy5hY3RpdmV8fHQoZS50YXJnZXQpLmNsb3Nlc3QoIi51aS1tZW51LWl0ZW0iKTt2YXIgaT17aXRlbTp0aGlzLmFjdGl2ZX07dGhpcy5hY3RpdmUuaGFzKCIudWktbWVudSIpLmxlbmd0aHx8dGhpcy5jb2xsYXBzZUFsbChlLCEwKSx0aGlzLl90cmlnZ2VyKCJzZWxlY3QiLGUsaSl9fSl9KShqUXVlcnkpOyhmdW5jdGlvbih0LGUpe3Qud2lkZ2V0KCJ1aS5wcm9ncmVzc2JhciIse3ZlcnNpb246IjEuMTAuNCIsb3B0aW9uczp7bWF4OjEwMCx2YWx1ZTowLGNoYW5nZTpudWxsLGNvbXBsZXRlOm51bGx9LG1pbjowLF9jcmVhdGU6ZnVuY3Rpb24oKXt0aGlzLm9sZFZhbHVlPXRoaXMub3B0aW9ucy52YWx1ZT10aGlzLl9jb25zdHJhaW5lZFZhbHVlKCksdGhpcy5lbGVtZW50LmFkZENsYXNzKCJ1aS1wcm9ncmVzc2JhciB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCIpLmF0dHIoe3JvbGU6InByb2dyZXNzYmFyIiwiYXJpYS12YWx1ZW1pbiI6dGhpcy5taW59KSx0aGlzLnZhbHVlRGl2PXQoIjxkaXYgY2xhc3M9J3VpLXByb2dyZXNzYmFyLXZhbHVlIHVpLXdpZGdldC1oZWFkZXIgdWktY29ybmVyLWxlZnQnPjwvZGl2PiIpLmFwcGVuZFRvKHRoaXMuZWxlbWVudCksdGhpcy5fcmVmcmVzaFZhbHVlKCl9LF9kZXN0cm95OmZ1bmN0aW9uKCl7dGhpcy5lbGVtZW50LnJlbW92ZUNsYXNzKCJ1aS1wcm9ncmVzc2JhciB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCIpLnJlbW92ZUF0dHIoInJvbGUiKS5yZW1vdmVBdHRyKCJhcmlhLXZhbHVlbWluIikucmVtb3ZlQXR0cigiYXJpYS12YWx1ZW1heCIpLnJlbW92ZUF0dHIoImFyaWEtdmFsdWVub3ciKSx0aGlzLnZhbHVlRGl2LnJlbW92ZSgpfSx2YWx1ZTpmdW5jdGlvbih0KXtyZXR1cm4gdD09PWU/dGhpcy5vcHRpb25zLnZhbHVlOih0aGlzLm9wdGlvbnMudmFsdWU9dGhpcy5fY29uc3RyYWluZWRWYWx1ZSh0KSx0aGlzLl9yZWZyZXNoVmFsdWUoKSxlKX0sX2NvbnN0cmFpbmVkVmFsdWU6ZnVuY3Rpb24odCl7cmV0dXJuIHQ9PT1lJiYodD10aGlzLm9wdGlvbnMudmFsdWUpLHRoaXMuaW5kZXRlcm1pbmF0ZT10PT09ITEsIm51bWJlciIhPXR5cGVvZiB0JiYodD0wKSx0aGlzLmluZGV0ZXJtaW5hdGU/ITE6TWF0aC5taW4odGhpcy5vcHRpb25zLm1heCxNYXRoLm1heCh0aGlzLm1pbix0KSl9LF9zZXRPcHRpb25zOmZ1bmN0aW9uKHQpe3ZhciBlPXQudmFsdWU7ZGVsZXRlIHQudmFsdWUsdGhpcy5fc3VwZXIodCksdGhpcy5vcHRpb25zLnZhbHVlPXRoaXMuX2NvbnN0cmFpbmVkVmFsdWUoZSksdGhpcy5fcmVmcmVzaFZhbHVlKCl9LF9zZXRPcHRpb246ZnVuY3Rpb24odCxlKXsibWF4Ij09PXQmJihlPU1hdGgubWF4KHRoaXMubWluLGUpKSx0aGlzLl9zdXBlcih0LGUpfSxfcGVyY2VudGFnZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLmluZGV0ZXJtaW5hdGU/MTAwOjEwMCoodGhpcy5vcHRpb25zLnZhbHVlLXRoaXMubWluKS8odGhpcy5vcHRpb25zLm1heC10aGlzLm1pbil9LF9yZWZyZXNoVmFsdWU6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm9wdGlvbnMudmFsdWUsaT10aGlzLl9wZXJjZW50YWdlKCk7dGhpcy52YWx1ZURpdi50b2dnbGUodGhpcy5pbmRldGVybWluYXRlfHxlPnRoaXMubWluKS50b2dnbGVDbGFzcygidWktY29ybmVyLXJpZ2h0IixlPT09dGhpcy5vcHRpb25zLm1heCkud2lkdGgoaS50b0ZpeGVkKDApKyIlIiksdGhpcy5lbGVtZW50LnRvZ2dsZUNsYXNzKCJ1aS1wcm9ncmVzc2Jhci1pbmRldGVybWluYXRlIix0aGlzLmluZGV0ZXJtaW5hdGUpLHRoaXMuaW5kZXRlcm1pbmF0ZT8odGhpcy5lbGVtZW50LnJlbW92ZUF0dHIoImFyaWEtdmFsdWVub3ciKSx0aGlzLm92ZXJsYXlEaXZ8fCh0aGlzLm92ZXJsYXlEaXY9dCgiPGRpdiBjbGFzcz0ndWktcHJvZ3Jlc3NiYXItb3ZlcmxheSc+PC9kaXY+IikuYXBwZW5kVG8odGhpcy52YWx1ZURpdikpKToodGhpcy5lbGVtZW50LmF0dHIoeyJhcmlhLXZhbHVlbWF4Ijp0aGlzLm9wdGlvbnMubWF4LCJhcmlhLXZhbHVlbm93IjplfSksdGhpcy5vdmVybGF5RGl2JiYodGhpcy5vdmVybGF5RGl2LnJlbW92ZSgpLHRoaXMub3ZlcmxheURpdj1udWxsKSksdGhpcy5vbGRWYWx1ZSE9PWUmJih0aGlzLm9sZFZhbHVlPWUsdGhpcy5fdHJpZ2dlcigiY2hhbmdlIikpLGU9PT10aGlzLm9wdGlvbnMubWF4JiZ0aGlzLl90cmlnZ2VyKCJjb21wbGV0ZSIpfX0pfSkoalF1ZXJ5KTsoZnVuY3Rpb24odCl7ZnVuY3Rpb24gZSh0KXtyZXR1cm4gcGFyc2VJbnQodCwxMCl8fDB9ZnVuY3Rpb24gaSh0KXtyZXR1cm4haXNOYU4ocGFyc2VJbnQodCwxMCkpfXQud2lkZ2V0KCJ1aS5yZXNpemFibGUiLHQudWkubW91c2Use3ZlcnNpb246IjEuMTAuNCIsd2lkZ2V0RXZlbnRQcmVmaXg6InJlc2l6ZSIsb3B0aW9uczp7YWxzb1Jlc2l6ZTohMSxhbmltYXRlOiExLGFuaW1hdGVEdXJhdGlvbjoic2xvdyIsYW5pbWF0ZUVhc2luZzoic3dpbmciLGFzcGVjdFJhdGlvOiExLGF1dG9IaWRlOiExLGNvbnRhaW5tZW50OiExLGdob3N0OiExLGdyaWQ6ITEsaGFuZGxlczoiZSxzLHNlIixoZWxwZXI6ITEsbWF4SGVpZ2h0Om51bGwsbWF4V2lkdGg6bnVsbCxtaW5IZWlnaHQ6MTAsbWluV2lkdGg6MTAsekluZGV4OjkwLHJlc2l6ZTpudWxsLHN0YXJ0Om51bGwsc3RvcDpudWxsfSxfY3JlYXRlOmZ1bmN0aW9uKCl7dmFyIGUsaSxzLG4sYSxvPXRoaXMscj10aGlzLm9wdGlvbnM7aWYodGhpcy5lbGVtZW50LmFkZENsYXNzKCJ1aS1yZXNpemFibGUiKSx0LmV4dGVuZCh0aGlzLHtfYXNwZWN0UmF0aW86ISFyLmFzcGVjdFJhdGlvLGFzcGVjdFJhdGlvOnIuYXNwZWN0UmF0aW8sb3JpZ2luYWxFbGVtZW50OnRoaXMuZWxlbWVudCxfcHJvcG9ydGlvbmFsbHlSZXNpemVFbGVtZW50czpbXSxfaGVscGVyOnIuaGVscGVyfHxyLmdob3N0fHxyLmFuaW1hdGU/ci5oZWxwZXJ8fCJ1aS1yZXNpemFibGUtaGVscGVyIjpudWxsfSksdGhpcy5lbGVtZW50WzBdLm5vZGVOYW1lLm1hdGNoKC9jYW52YXN8dGV4dGFyZWF8aW5wdXR8c2VsZWN0fGJ1dHRvbnxpbWcvaSkmJih0aGlzLmVsZW1lbnQud3JhcCh0KCI8ZGl2IGNsYXNzPSd1aS13cmFwcGVyJyBzdHlsZT0nb3ZlcmZsb3c6IGhpZGRlbjsnPjwvZGl2PiIpLmNzcyh7cG9zaXRpb246dGhpcy5lbGVtZW50LmNzcygicG9zaXRpb24iKSx3aWR0aDp0aGlzLmVsZW1lbnQub3V0ZXJXaWR0aCgpLGhlaWdodDp0aGlzLmVsZW1lbnQub3V0ZXJIZWlnaHQoKSx0b3A6dGhpcy5lbGVtZW50LmNzcygidG9wIiksbGVmdDp0aGlzLmVsZW1lbnQuY3NzKCJsZWZ0Iil9KSksdGhpcy5lbGVtZW50PXRoaXMuZWxlbWVudC5wYXJlbnQoKS5kYXRhKCJ1aS1yZXNpemFibGUiLHRoaXMuZWxlbWVudC5kYXRhKCJ1aS1yZXNpemFibGUiKSksdGhpcy5lbGVtZW50SXNXcmFwcGVyPSEwLHRoaXMuZWxlbWVudC5jc3Moe21hcmdpbkxlZnQ6dGhpcy5vcmlnaW5hbEVsZW1lbnQuY3NzKCJtYXJnaW5MZWZ0IiksbWFyZ2luVG9wOnRoaXMub3JpZ2luYWxFbGVtZW50LmNzcygibWFyZ2luVG9wIiksbWFyZ2luUmlnaHQ6dGhpcy5vcmlnaW5hbEVsZW1lbnQuY3NzKCJtYXJnaW5SaWdodCIpLG1hcmdpbkJvdHRvbTp0aGlzLm9yaWdpbmFsRWxlbWVudC5jc3MoIm1hcmdpbkJvdHRvbSIpfSksdGhpcy5vcmlnaW5hbEVsZW1lbnQuY3NzKHttYXJnaW5MZWZ0OjAsbWFyZ2luVG9wOjAsbWFyZ2luUmlnaHQ6MCxtYXJnaW5Cb3R0b206MH0pLHRoaXMub3JpZ2luYWxSZXNpemVTdHlsZT10aGlzLm9yaWdpbmFsRWxlbWVudC5jc3MoInJlc2l6ZSIpLHRoaXMub3JpZ2luYWxFbGVtZW50LmNzcygicmVzaXplIiwibm9uZSIpLHRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplRWxlbWVudHMucHVzaCh0aGlzLm9yaWdpbmFsRWxlbWVudC5jc3Moe3Bvc2l0aW9uOiJzdGF0aWMiLHpvb206MSxkaXNwbGF5OiJibG9jayJ9KSksdGhpcy5vcmlnaW5hbEVsZW1lbnQuY3NzKHttYXJnaW46dGhpcy5vcmlnaW5hbEVsZW1lbnQuY3NzKCJtYXJnaW4iKX0pLHRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplKCkpLHRoaXMuaGFuZGxlcz1yLmhhbmRsZXN8fCh0KCIudWktcmVzaXphYmxlLWhhbmRsZSIsdGhpcy5lbGVtZW50KS5sZW5ndGg/e246Ii51aS1yZXNpemFibGUtbiIsZToiLnVpLXJlc2l6YWJsZS1lIixzOiIudWktcmVzaXphYmxlLXMiLHc6Ii51aS1yZXNpemFibGUtdyIsc2U6Ii51aS1yZXNpemFibGUtc2UiLHN3OiIudWktcmVzaXphYmxlLXN3IixuZToiLnVpLXJlc2l6YWJsZS1uZSIsbnc6Ii51aS1yZXNpemFibGUtbncifToiZSxzLHNlIiksdGhpcy5oYW5kbGVzLmNvbnN0cnVjdG9yPT09U3RyaW5nKWZvcigiYWxsIj09PXRoaXMuaGFuZGxlcyYmKHRoaXMuaGFuZGxlcz0ibixlLHMsdyxzZSxzdyxuZSxudyIpLGU9dGhpcy5oYW5kbGVzLnNwbGl0KCIsIiksdGhpcy5oYW5kbGVzPXt9LGk9MDtlLmxlbmd0aD5pO2krKylzPXQudHJpbShlW2ldKSxhPSJ1aS1yZXNpemFibGUtIitzLG49dCgiPGRpdiBjbGFzcz0ndWktcmVzaXphYmxlLWhhbmRsZSAiK2ErIic+PC9kaXY+Iiksbi5jc3Moe3pJbmRleDpyLnpJbmRleH0pLCJzZSI9PT1zJiZuLmFkZENsYXNzKCJ1aS1pY29uIHVpLWljb24tZ3JpcHNtYWxsLWRpYWdvbmFsLXNlIiksdGhpcy5oYW5kbGVzW3NdPSIudWktcmVzaXphYmxlLSIrcyx0aGlzLmVsZW1lbnQuYXBwZW5kKG4pO3RoaXMuX3JlbmRlckF4aXM9ZnVuY3Rpb24oZSl7dmFyIGkscyxuLGE7ZT1lfHx0aGlzLmVsZW1lbnQ7Zm9yKGkgaW4gdGhpcy5oYW5kbGVzKXRoaXMuaGFuZGxlc1tpXS5jb25zdHJ1Y3Rvcj09PVN0cmluZyYmKHRoaXMuaGFuZGxlc1tpXT10KHRoaXMuaGFuZGxlc1tpXSx0aGlzLmVsZW1lbnQpLnNob3coKSksdGhpcy5lbGVtZW50SXNXcmFwcGVyJiZ0aGlzLm9yaWdpbmFsRWxlbWVudFswXS5ub2RlTmFtZS5tYXRjaCgvdGV4dGFyZWF8aW5wdXR8c2VsZWN0fGJ1dHRvbi9pKSYmKHM9dCh0aGlzLmhhbmRsZXNbaV0sdGhpcy5lbGVtZW50KSxhPS9zd3xuZXxud3xzZXxufHMvLnRlc3QoaSk/cy5vdXRlckhlaWdodCgpOnMub3V0ZXJXaWR0aCgpLG49WyJwYWRkaW5nIiwvbmV8bnd8bi8udGVzdChpKT8iVG9wIjovc2V8c3d8cy8udGVzdChpKT8iQm90dG9tIjovXmUkLy50ZXN0KGkpPyJSaWdodCI6IkxlZnQiXS5qb2luKCIiKSxlLmNzcyhuLGEpLHRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplKCkpLHQodGhpcy5oYW5kbGVzW2ldKS5sZW5ndGh9LHRoaXMuX3JlbmRlckF4aXModGhpcy5lbGVtZW50KSx0aGlzLl9oYW5kbGVzPXQoIi51aS1yZXNpemFibGUtaGFuZGxlIix0aGlzLmVsZW1lbnQpLmRpc2FibGVTZWxlY3Rpb24oKSx0aGlzLl9oYW5kbGVzLm1vdXNlb3ZlcihmdW5jdGlvbigpe28ucmVzaXppbmd8fCh0aGlzLmNsYXNzTmFtZSYmKG49dGhpcy5jbGFzc05hbWUubWF0Y2goL3VpLXJlc2l6YWJsZS0oc2V8c3d8bmV8bnd8bnxlfHN8dykvaSkpLG8uYXhpcz1uJiZuWzFdP25bMV06InNlIil9KSxyLmF1dG9IaWRlJiYodGhpcy5faGFuZGxlcy5oaWRlKCksdCh0aGlzLmVsZW1lbnQpLmFkZENsYXNzKCJ1aS1yZXNpemFibGUtYXV0b2hpZGUiKS5tb3VzZWVudGVyKGZ1bmN0aW9uKCl7ci5kaXNhYmxlZHx8KHQodGhpcykucmVtb3ZlQ2xhc3MoInVpLXJlc2l6YWJsZS1hdXRvaGlkZSIpLG8uX2hhbmRsZXMuc2hvdygpKX0pLm1vdXNlbGVhdmUoZnVuY3Rpb24oKXtyLmRpc2FibGVkfHxvLnJlc2l6aW5nfHwodCh0aGlzKS5hZGRDbGFzcygidWktcmVzaXphYmxlLWF1dG9oaWRlIiksby5faGFuZGxlcy5oaWRlKCkpfSkpLHRoaXMuX21vdXNlSW5pdCgpfSxfZGVzdHJveTpmdW5jdGlvbigpe3RoaXMuX21vdXNlRGVzdHJveSgpO3ZhciBlLGk9ZnVuY3Rpb24oZSl7dChlKS5yZW1vdmVDbGFzcygidWktcmVzaXphYmxlIHVpLXJlc2l6YWJsZS1kaXNhYmxlZCB1aS1yZXNpemFibGUtcmVzaXppbmciKS5yZW1vdmVEYXRhKCJyZXNpemFibGUiKS5yZW1vdmVEYXRhKCJ1aS1yZXNpemFibGUiKS51bmJpbmQoIi5yZXNpemFibGUiKS5maW5kKCIudWktcmVzaXphYmxlLWhhbmRsZSIpLnJlbW92ZSgpfTtyZXR1cm4gdGhpcy5lbGVtZW50SXNXcmFwcGVyJiYoaSh0aGlzLmVsZW1lbnQpLGU9dGhpcy5lbGVtZW50LHRoaXMub3JpZ2luYWxFbGVtZW50LmNzcyh7cG9zaXRpb246ZS5jc3MoInBvc2l0aW9uIiksd2lkdGg6ZS5vdXRlcldpZHRoKCksaGVpZ2h0OmUub3V0ZXJIZWlnaHQoKSx0b3A6ZS5jc3MoInRvcCIpLGxlZnQ6ZS5jc3MoImxlZnQiKX0pLmluc2VydEFmdGVyKGUpLGUucmVtb3ZlKCkpLHRoaXMub3JpZ2luYWxFbGVtZW50LmNzcygicmVzaXplIix0aGlzLm9yaWdpbmFsUmVzaXplU3R5bGUpLGkodGhpcy5vcmlnaW5hbEVsZW1lbnQpLHRoaXN9LF9tb3VzZUNhcHR1cmU6ZnVuY3Rpb24oZSl7dmFyIGkscyxuPSExO2ZvcihpIGluIHRoaXMuaGFuZGxlcylzPXQodGhpcy5oYW5kbGVzW2ldKVswXSwocz09PWUudGFyZ2V0fHx0LmNvbnRhaW5zKHMsZS50YXJnZXQpKSYmKG49ITApO3JldHVybiF0aGlzLm9wdGlvbnMuZGlzYWJsZWQmJm59LF9tb3VzZVN0YXJ0OmZ1bmN0aW9uKGkpe3ZhciBzLG4sYSxvPXRoaXMub3B0aW9ucyxyPXRoaXMuZWxlbWVudC5wb3NpdGlvbigpLGg9dGhpcy5lbGVtZW50O3JldHVybiB0aGlzLnJlc2l6aW5nPSEwLC9hYnNvbHV0ZS8udGVzdChoLmNzcygicG9zaXRpb24iKSk/aC5jc3Moe3Bvc2l0aW9uOiJhYnNvbHV0ZSIsdG9wOmguY3NzKCJ0b3AiKSxsZWZ0OmguY3NzKCJsZWZ0Iil9KTpoLmlzKCIudWktZHJhZ2dhYmxlIikmJmguY3NzKHtwb3NpdGlvbjoiYWJzb2x1dGUiLHRvcDpyLnRvcCxsZWZ0OnIubGVmdH0pLHRoaXMuX3JlbmRlclByb3h5KCkscz1lKHRoaXMuaGVscGVyLmNzcygibGVmdCIpKSxuPWUodGhpcy5oZWxwZXIuY3NzKCJ0b3AiKSksby5jb250YWlubWVudCYmKHMrPXQoby5jb250YWlubWVudCkuc2Nyb2xsTGVmdCgpfHwwLG4rPXQoby5jb250YWlubWVudCkuc2Nyb2xsVG9wKCl8fDApLHRoaXMub2Zmc2V0PXRoaXMuaGVscGVyLm9mZnNldCgpLHRoaXMucG9zaXRpb249e2xlZnQ6cyx0b3A6bn0sdGhpcy5zaXplPXRoaXMuX2hlbHBlcj97d2lkdGg6dGhpcy5oZWxwZXIud2lkdGgoKSxoZWlnaHQ6dGhpcy5oZWxwZXIuaGVpZ2h0KCl9Ont3aWR0aDpoLndpZHRoKCksaGVpZ2h0OmguaGVpZ2h0KCl9LHRoaXMub3JpZ2luYWxTaXplPXRoaXMuX2hlbHBlcj97d2lkdGg6aC5vdXRlcldpZHRoKCksaGVpZ2h0Omgub3V0ZXJIZWlnaHQoKX06e3dpZHRoOmgud2lkdGgoKSxoZWlnaHQ6aC5oZWlnaHQoKX0sdGhpcy5vcmlnaW5hbFBvc2l0aW9uPXtsZWZ0OnMsdG9wOm59LHRoaXMuc2l6ZURpZmY9e3dpZHRoOmgub3V0ZXJXaWR0aCgpLWgud2lkdGgoKSxoZWlnaHQ6aC5vdXRlckhlaWdodCgpLWguaGVpZ2h0KCl9LHRoaXMub3JpZ2luYWxNb3VzZVBvc2l0aW9uPXtsZWZ0OmkucGFnZVgsdG9wOmkucGFnZVl9LHRoaXMuYXNwZWN0UmF0aW89Im51bWJlciI9PXR5cGVvZiBvLmFzcGVjdFJhdGlvP28uYXNwZWN0UmF0aW86dGhpcy5vcmlnaW5hbFNpemUud2lkdGgvdGhpcy5vcmlnaW5hbFNpemUuaGVpZ2h0fHwxLGE9dCgiLnVpLXJlc2l6YWJsZS0iK3RoaXMuYXhpcykuY3NzKCJjdXJzb3IiKSx0KCJib2R5IikuY3NzKCJjdXJzb3IiLCJhdXRvIj09PWE/dGhpcy5heGlzKyItcmVzaXplIjphKSxoLmFkZENsYXNzKCJ1aS1yZXNpemFibGUtcmVzaXppbmciKSx0aGlzLl9wcm9wYWdhdGUoInN0YXJ0IixpKSwhMH0sX21vdXNlRHJhZzpmdW5jdGlvbihlKXt2YXIgaSxzPXRoaXMuaGVscGVyLG49e30sYT10aGlzLm9yaWdpbmFsTW91c2VQb3NpdGlvbixvPXRoaXMuYXhpcyxyPXRoaXMucG9zaXRpb24udG9wLGg9dGhpcy5wb3NpdGlvbi5sZWZ0LGw9dGhpcy5zaXplLndpZHRoLGM9dGhpcy5zaXplLmhlaWdodCx1PWUucGFnZVgtYS5sZWZ0fHwwLGQ9ZS5wYWdlWS1hLnRvcHx8MCxwPXRoaXMuX2NoYW5nZVtvXTtyZXR1cm4gcD8oaT1wLmFwcGx5KHRoaXMsW2UsdSxkXSksdGhpcy5fdXBkYXRlVmlydHVhbEJvdW5kYXJpZXMoZS5zaGlmdEtleSksKHRoaXMuX2FzcGVjdFJhdGlvfHxlLnNoaWZ0S2V5KSYmKGk9dGhpcy5fdXBkYXRlUmF0aW8oaSxlKSksaT10aGlzLl9yZXNwZWN0U2l6ZShpLGUpLHRoaXMuX3VwZGF0ZUNhY2hlKGkpLHRoaXMuX3Byb3BhZ2F0ZSgicmVzaXplIixlKSx0aGlzLnBvc2l0aW9uLnRvcCE9PXImJihuLnRvcD10aGlzLnBvc2l0aW9uLnRvcCsicHgiKSx0aGlzLnBvc2l0aW9uLmxlZnQhPT1oJiYobi5sZWZ0PXRoaXMucG9zaXRpb24ubGVmdCsicHgiKSx0aGlzLnNpemUud2lkdGghPT1sJiYobi53aWR0aD10aGlzLnNpemUud2lkdGgrInB4IiksdGhpcy5zaXplLmhlaWdodCE9PWMmJihuLmhlaWdodD10aGlzLnNpemUuaGVpZ2h0KyJweCIpLHMuY3NzKG4pLCF0aGlzLl9oZWxwZXImJnRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplRWxlbWVudHMubGVuZ3RoJiZ0aGlzLl9wcm9wb3J0aW9uYWxseVJlc2l6ZSgpLHQuaXNFbXB0eU9iamVjdChuKXx8dGhpcy5fdHJpZ2dlcigicmVzaXplIixlLHRoaXMudWkoKSksITEpOiExfSxfbW91c2VTdG9wOmZ1bmN0aW9uKGUpe3RoaXMucmVzaXppbmc9ITE7dmFyIGkscyxuLGEsbyxyLGgsbD10aGlzLm9wdGlvbnMsYz10aGlzO3JldHVybiB0aGlzLl9oZWxwZXImJihpPXRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplRWxlbWVudHMscz1pLmxlbmd0aCYmL3RleHRhcmVhL2kudGVzdChpWzBdLm5vZGVOYW1lKSxuPXMmJnQudWkuaGFzU2Nyb2xsKGlbMF0sImxlZnQiKT8wOmMuc2l6ZURpZmYuaGVpZ2h0LGE9cz8wOmMuc2l6ZURpZmYud2lkdGgsbz17d2lkdGg6Yy5oZWxwZXIud2lkdGgoKS1hLGhlaWdodDpjLmhlbHBlci5oZWlnaHQoKS1ufSxyPXBhcnNlSW50KGMuZWxlbWVudC5jc3MoImxlZnQiKSwxMCkrKGMucG9zaXRpb24ubGVmdC1jLm9yaWdpbmFsUG9zaXRpb24ubGVmdCl8fG51bGwsaD1wYXJzZUludChjLmVsZW1lbnQuY3NzKCJ0b3AiKSwxMCkrKGMucG9zaXRpb24udG9wLWMub3JpZ2luYWxQb3NpdGlvbi50b3ApfHxudWxsLGwuYW5pbWF0ZXx8dGhpcy5lbGVtZW50LmNzcyh0LmV4dGVuZChvLHt0b3A6aCxsZWZ0OnJ9KSksYy5oZWxwZXIuaGVpZ2h0KGMuc2l6ZS5oZWlnaHQpLGMuaGVscGVyLndpZHRoKGMuc2l6ZS53aWR0aCksdGhpcy5faGVscGVyJiYhbC5hbmltYXRlJiZ0aGlzLl9wcm9wb3J0aW9uYWxseVJlc2l6ZSgpKSx0KCJib2R5IikuY3NzKCJjdXJzb3IiLCJhdXRvIiksdGhpcy5lbGVtZW50LnJlbW92ZUNsYXNzKCJ1aS1yZXNpemFibGUtcmVzaXppbmciKSx0aGlzLl9wcm9wYWdhdGUoInN0b3AiLGUpLHRoaXMuX2hlbHBlciYmdGhpcy5oZWxwZXIucmVtb3ZlKCksITF9LF91cGRhdGVWaXJ0dWFsQm91bmRhcmllczpmdW5jdGlvbih0KXt2YXIgZSxzLG4sYSxvLHI9dGhpcy5vcHRpb25zO289e21pbldpZHRoOmkoci5taW5XaWR0aCk/ci5taW5XaWR0aDowLG1heFdpZHRoOmkoci5tYXhXaWR0aCk/ci5tYXhXaWR0aDoxLzAsbWluSGVpZ2h0Omkoci5taW5IZWlnaHQpP3IubWluSGVpZ2h0OjAsbWF4SGVpZ2h0Omkoci5tYXhIZWlnaHQpP3IubWF4SGVpZ2h0OjEvMH0sKHRoaXMuX2FzcGVjdFJhdGlvfHx0KSYmKGU9by5taW5IZWlnaHQqdGhpcy5hc3BlY3RSYXRpbyxuPW8ubWluV2lkdGgvdGhpcy5hc3BlY3RSYXRpbyxzPW8ubWF4SGVpZ2h0KnRoaXMuYXNwZWN0UmF0aW8sYT1vLm1heFdpZHRoL3RoaXMuYXNwZWN0UmF0aW8sZT5vLm1pbldpZHRoJiYoby5taW5XaWR0aD1lKSxuPm8ubWluSGVpZ2h0JiYoby5taW5IZWlnaHQ9biksby5tYXhXaWR0aD5zJiYoby5tYXhXaWR0aD1zKSxvLm1heEhlaWdodD5hJiYoby5tYXhIZWlnaHQ9YSkpLHRoaXMuX3ZCb3VuZGFyaWVzPW99LF91cGRhdGVDYWNoZTpmdW5jdGlvbih0KXt0aGlzLm9mZnNldD10aGlzLmhlbHBlci5vZmZzZXQoKSxpKHQubGVmdCkmJih0aGlzLnBvc2l0aW9uLmxlZnQ9dC5sZWZ0KSxpKHQudG9wKSYmKHRoaXMucG9zaXRpb24udG9wPXQudG9wKSxpKHQuaGVpZ2h0KSYmKHRoaXMuc2l6ZS5oZWlnaHQ9dC5oZWlnaHQpLGkodC53aWR0aCkmJih0aGlzLnNpemUud2lkdGg9dC53aWR0aCl9LF91cGRhdGVSYXRpbzpmdW5jdGlvbih0KXt2YXIgZT10aGlzLnBvc2l0aW9uLHM9dGhpcy5zaXplLG49dGhpcy5heGlzO3JldHVybiBpKHQuaGVpZ2h0KT90LndpZHRoPXQuaGVpZ2h0KnRoaXMuYXNwZWN0UmF0aW86aSh0LndpZHRoKSYmKHQuaGVpZ2h0PXQud2lkdGgvdGhpcy5hc3BlY3RSYXRpbyksInN3Ij09PW4mJih0LmxlZnQ9ZS5sZWZ0KyhzLndpZHRoLXQud2lkdGgpLHQudG9wPW51bGwpLCJudyI9PT1uJiYodC50b3A9ZS50b3ArKHMuaGVpZ2h0LXQuaGVpZ2h0KSx0LmxlZnQ9ZS5sZWZ0KyhzLndpZHRoLXQud2lkdGgpKSx0fSxfcmVzcGVjdFNpemU6ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fdkJvdW5kYXJpZXMscz10aGlzLmF4aXMsbj1pKHQud2lkdGgpJiZlLm1heFdpZHRoJiZlLm1heFdpZHRoPHQud2lkdGgsYT1pKHQuaGVpZ2h0KSYmZS5tYXhIZWlnaHQmJmUubWF4SGVpZ2h0PHQuaGVpZ2h0LG89aSh0LndpZHRoKSYmZS5taW5XaWR0aCYmZS5taW5XaWR0aD50LndpZHRoLHI9aSh0LmhlaWdodCkmJmUubWluSGVpZ2h0JiZlLm1pbkhlaWdodD50LmhlaWdodCxoPXRoaXMub3JpZ2luYWxQb3NpdGlvbi5sZWZ0K3RoaXMub3JpZ2luYWxTaXplLndpZHRoLGw9dGhpcy5wb3NpdGlvbi50b3ArdGhpcy5zaXplLmhlaWdodCxjPS9zd3xud3x3Ly50ZXN0KHMpLHU9L253fG5lfG4vLnRlc3Qocyk7cmV0dXJuIG8mJih0LndpZHRoPWUubWluV2lkdGgpLHImJih0LmhlaWdodD1lLm1pbkhlaWdodCksbiYmKHQud2lkdGg9ZS5tYXhXaWR0aCksYSYmKHQuaGVpZ2h0PWUubWF4SGVpZ2h0KSxvJiZjJiYodC5sZWZ0PWgtZS5taW5XaWR0aCksbiYmYyYmKHQubGVmdD1oLWUubWF4V2lkdGgpLHImJnUmJih0LnRvcD1sLWUubWluSGVpZ2h0KSxhJiZ1JiYodC50b3A9bC1lLm1heEhlaWdodCksdC53aWR0aHx8dC5oZWlnaHR8fHQubGVmdHx8IXQudG9wP3Qud2lkdGh8fHQuaGVpZ2h0fHx0LnRvcHx8IXQubGVmdHx8KHQubGVmdD1udWxsKTp0LnRvcD1udWxsLHR9LF9wcm9wb3J0aW9uYWxseVJlc2l6ZTpmdW5jdGlvbigpe2lmKHRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplRWxlbWVudHMubGVuZ3RoKXt2YXIgdCxlLGkscyxuLGE9dGhpcy5oZWxwZXJ8fHRoaXMuZWxlbWVudDtmb3IodD0wO3RoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplRWxlbWVudHMubGVuZ3RoPnQ7dCsrKXtpZihuPXRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplRWxlbWVudHNbdF0sIXRoaXMuYm9yZGVyRGlmKWZvcih0aGlzLmJvcmRlckRpZj1bXSxpPVtuLmNzcygiYm9yZGVyVG9wV2lkdGgiKSxuLmNzcygiYm9yZGVyUmlnaHRXaWR0aCIpLG4uY3NzKCJib3JkZXJCb3R0b21XaWR0aCIpLG4uY3NzKCJib3JkZXJMZWZ0V2lkdGgiKV0scz1bbi5jc3MoInBhZGRpbmdUb3AiKSxuLmNzcygicGFkZGluZ1JpZ2h0Iiksbi5jc3MoInBhZGRpbmdCb3R0b20iKSxuLmNzcygicGFkZGluZ0xlZnQiKV0sZT0wO2kubGVuZ3RoPmU7ZSsrKXRoaXMuYm9yZGVyRGlmW2VdPShwYXJzZUludChpW2VdLDEwKXx8MCkrKHBhcnNlSW50KHNbZV0sMTApfHwwKTtuLmNzcyh7aGVpZ2h0OmEuaGVpZ2h0KCktdGhpcy5ib3JkZXJEaWZbMF0tdGhpcy5ib3JkZXJEaWZbMl18fDAsd2lkdGg6YS53aWR0aCgpLXRoaXMuYm9yZGVyRGlmWzFdLXRoaXMuYm9yZGVyRGlmWzNdfHwwfSl9fX0sX3JlbmRlclByb3h5OmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5lbGVtZW50LGk9dGhpcy5vcHRpb25zO3RoaXMuZWxlbWVudE9mZnNldD1lLm9mZnNldCgpLHRoaXMuX2hlbHBlcj8odGhpcy5oZWxwZXI9dGhpcy5oZWxwZXJ8fHQoIjxkaXYgc3R5bGU9J292ZXJmbG93OmhpZGRlbjsnPjwvZGl2PiIpLHRoaXMuaGVscGVyLmFkZENsYXNzKHRoaXMuX2hlbHBlcikuY3NzKHt3aWR0aDp0aGlzLmVsZW1lbnQub3V0ZXJXaWR0aCgpLTEsaGVpZ2h0OnRoaXMuZWxlbWVudC5vdXRlckhlaWdodCgpLTEscG9zaXRpb246ImFic29sdXRlIixsZWZ0OnRoaXMuZWxlbWVudE9mZnNldC5sZWZ0KyJweCIsdG9wOnRoaXMuZWxlbWVudE9mZnNldC50b3ArInB4Iix6SW5kZXg6KytpLnpJbmRleH0pLHRoaXMuaGVscGVyLmFwcGVuZFRvKCJib2R5IikuZGlzYWJsZVNlbGVjdGlvbigpKTp0aGlzLmhlbHBlcj10aGlzLmVsZW1lbnR9LF9jaGFuZ2U6e2U6ZnVuY3Rpb24odCxlKXtyZXR1cm57d2lkdGg6dGhpcy5vcmlnaW5hbFNpemUud2lkdGgrZX19LHc6ZnVuY3Rpb24odCxlKXt2YXIgaT10aGlzLm9yaWdpbmFsU2l6ZSxzPXRoaXMub3JpZ2luYWxQb3NpdGlvbjtyZXR1cm57bGVmdDpzLmxlZnQrZSx3aWR0aDppLndpZHRoLWV9fSxuOmZ1bmN0aW9uKHQsZSxpKXt2YXIgcz10aGlzLm9yaWdpbmFsU2l6ZSxuPXRoaXMub3JpZ2luYWxQb3NpdGlvbjtyZXR1cm57dG9wOm4udG9wK2ksaGVpZ2h0OnMuaGVpZ2h0LWl9fSxzOmZ1bmN0aW9uKHQsZSxpKXtyZXR1cm57aGVpZ2h0OnRoaXMub3JpZ2luYWxTaXplLmhlaWdodCtpfX0sc2U6ZnVuY3Rpb24oZSxpLHMpe3JldHVybiB0LmV4dGVuZCh0aGlzLl9jaGFuZ2Uucy5hcHBseSh0aGlzLGFyZ3VtZW50cyksdGhpcy5fY2hhbmdlLmUuYXBwbHkodGhpcyxbZSxpLHNdKSl9LHN3OmZ1bmN0aW9uKGUsaSxzKXtyZXR1cm4gdC5leHRlbmQodGhpcy5fY2hhbmdlLnMuYXBwbHkodGhpcyxhcmd1bWVudHMpLHRoaXMuX2NoYW5nZS53LmFwcGx5KHRoaXMsW2UsaSxzXSkpfSxuZTpmdW5jdGlvbihlLGkscyl7cmV0dXJuIHQuZXh0ZW5kKHRoaXMuX2NoYW5nZS5uLmFwcGx5KHRoaXMsYXJndW1lbnRzKSx0aGlzLl9jaGFuZ2UuZS5hcHBseSh0aGlzLFtlLGksc10pKX0sbnc6ZnVuY3Rpb24oZSxpLHMpe3JldHVybiB0LmV4dGVuZCh0aGlzLl9jaGFuZ2Uubi5hcHBseSh0aGlzLGFyZ3VtZW50cyksdGhpcy5fY2hhbmdlLncuYXBwbHkodGhpcyxbZSxpLHNdKSl9fSxfcHJvcGFnYXRlOmZ1bmN0aW9uKGUsaSl7dC51aS5wbHVnaW4uY2FsbCh0aGlzLGUsW2ksdGhpcy51aSgpXSksInJlc2l6ZSIhPT1lJiZ0aGlzLl90cmlnZ2VyKGUsaSx0aGlzLnVpKCkpfSxwbHVnaW5zOnt9LHVpOmZ1bmN0aW9uKCl7cmV0dXJue29yaWdpbmFsRWxlbWVudDp0aGlzLm9yaWdpbmFsRWxlbWVudCxlbGVtZW50OnRoaXMuZWxlbWVudCxoZWxwZXI6dGhpcy5oZWxwZXIscG9zaXRpb246dGhpcy5wb3NpdGlvbixzaXplOnRoaXMuc2l6ZSxvcmlnaW5hbFNpemU6dGhpcy5vcmlnaW5hbFNpemUsb3JpZ2luYWxQb3NpdGlvbjp0aGlzLm9yaWdpbmFsUG9zaXRpb259fX0pLHQudWkucGx1Z2luLmFkZCgicmVzaXphYmxlIiwiYW5pbWF0ZSIse3N0b3A6ZnVuY3Rpb24oZSl7dmFyIGk9dCh0aGlzKS5kYXRhKCJ1aS1yZXNpemFibGUiKSxzPWkub3B0aW9ucyxuPWkuX3Byb3BvcnRpb25hbGx5UmVzaXplRWxlbWVudHMsYT1uLmxlbmd0aCYmL3RleHRhcmVhL2kudGVzdChuWzBdLm5vZGVOYW1lKSxvPWEmJnQudWkuaGFzU2Nyb2xsKG5bMF0sImxlZnQiKT8wOmkuc2l6ZURpZmYuaGVpZ2h0LHI9YT8wOmkuc2l6ZURpZmYud2lkdGgsaD17d2lkdGg6aS5zaXplLndpZHRoLXIsaGVpZ2h0Omkuc2l6ZS5oZWlnaHQtb30sbD1wYXJzZUludChpLmVsZW1lbnQuY3NzKCJsZWZ0IiksMTApKyhpLnBvc2l0aW9uLmxlZnQtaS5vcmlnaW5hbFBvc2l0aW9uLmxlZnQpfHxudWxsLGM9cGFyc2VJbnQoaS5lbGVtZW50LmNzcygidG9wIiksMTApKyhpLnBvc2l0aW9uLnRvcC1pLm9yaWdpbmFsUG9zaXRpb24udG9wKXx8bnVsbDtpLmVsZW1lbnQuYW5pbWF0ZSh0LmV4dGVuZChoLGMmJmw/e3RvcDpjLGxlZnQ6bH06e30pLHtkdXJhdGlvbjpzLmFuaW1hdGVEdXJhdGlvbixlYXNpbmc6cy5hbmltYXRlRWFzaW5nLHN0ZXA6ZnVuY3Rpb24oKXt2YXIgcz17d2lkdGg6cGFyc2VJbnQoaS5lbGVtZW50LmNzcygid2lkdGgiKSwxMCksaGVpZ2h0OnBhcnNlSW50KGkuZWxlbWVudC5jc3MoImhlaWdodCIpLDEwKSx0b3A6cGFyc2VJbnQoaS5lbGVtZW50LmNzcygidG9wIiksMTApLGxlZnQ6cGFyc2VJbnQoaS5lbGVtZW50LmNzcygibGVmdCIpLDEwKX07biYmbi5sZW5ndGgmJnQoblswXSkuY3NzKHt3aWR0aDpzLndpZHRoLGhlaWdodDpzLmhlaWdodH0pLGkuX3VwZGF0ZUNhY2hlKHMpLGkuX3Byb3BhZ2F0ZSgicmVzaXplIixlKX19KX19KSx0LnVpLnBsdWdpbi5hZGQoInJlc2l6YWJsZSIsImNvbnRhaW5tZW50Iix7c3RhcnQ6ZnVuY3Rpb24oKXt2YXIgaSxzLG4sYSxvLHIsaCxsPXQodGhpcykuZGF0YSgidWktcmVzaXphYmxlIiksYz1sLm9wdGlvbnMsdT1sLmVsZW1lbnQsZD1jLmNvbnRhaW5tZW50LHA9ZCBpbnN0YW5jZW9mIHQ/ZC5nZXQoMCk6L3BhcmVudC8udGVzdChkKT91LnBhcmVudCgpLmdldCgwKTpkO3AmJihsLmNvbnRhaW5lckVsZW1lbnQ9dChwKSwvZG9jdW1lbnQvLnRlc3QoZCl8fGQ9PT1kb2N1bWVudD8obC5jb250YWluZXJPZmZzZXQ9e2xlZnQ6MCx0b3A6MH0sbC5jb250YWluZXJQb3NpdGlvbj17bGVmdDowLHRvcDowfSxsLnBhcmVudERhdGE9e2VsZW1lbnQ6dChkb2N1bWVudCksbGVmdDowLHRvcDowLHdpZHRoOnQoZG9jdW1lbnQpLndpZHRoKCksaGVpZ2h0OnQoZG9jdW1lbnQpLmhlaWdodCgpfHxkb2N1bWVudC5ib2R5LnBhcmVudE5vZGUuc2Nyb2xsSGVpZ2h0fSk6KGk9dChwKSxzPVtdLHQoWyJUb3AiLCJSaWdodCIsIkxlZnQiLCJCb3R0b20iXSkuZWFjaChmdW5jdGlvbih0LG4pe3NbdF09ZShpLmNzcygicGFkZGluZyIrbikpfSksbC5jb250YWluZXJPZmZzZXQ9aS5vZmZzZXQoKSxsLmNvbnRhaW5lclBvc2l0aW9uPWkucG9zaXRpb24oKSxsLmNvbnRhaW5lclNpemU9e2hlaWdodDppLmlubmVySGVpZ2h0KCktc1szXSx3aWR0aDppLmlubmVyV2lkdGgoKS1zWzFdfSxuPWwuY29udGFpbmVyT2Zmc2V0LGE9bC5jb250YWluZXJTaXplLmhlaWdodCxvPWwuY29udGFpbmVyU2l6ZS53aWR0aCxyPXQudWkuaGFzU2Nyb2xsKHAsImxlZnQiKT9wLnNjcm9sbFdpZHRoOm8saD10LnVpLmhhc1Njcm9sbChwKT9wLnNjcm9sbEhlaWdodDphLGwucGFyZW50RGF0YT17ZWxlbWVudDpwLGxlZnQ6bi5sZWZ0LHRvcDpuLnRvcCx3aWR0aDpyLGhlaWdodDpofSkpfSxyZXNpemU6ZnVuY3Rpb24oZSl7dmFyIGkscyxuLGEsbz10KHRoaXMpLmRhdGEoInVpLXJlc2l6YWJsZSIpLHI9by5vcHRpb25zLGg9by5jb250YWluZXJPZmZzZXQsbD1vLnBvc2l0aW9uLGM9by5fYXNwZWN0UmF0aW98fGUuc2hpZnRLZXksdT17dG9wOjAsbGVmdDowfSxkPW8uY29udGFpbmVyRWxlbWVudDtkWzBdIT09ZG9jdW1lbnQmJi9zdGF0aWMvLnRlc3QoZC5jc3MoInBvc2l0aW9uIikpJiYodT1oKSxsLmxlZnQ8KG8uX2hlbHBlcj9oLmxlZnQ6MCkmJihvLnNpemUud2lkdGg9by5zaXplLndpZHRoKyhvLl9oZWxwZXI/by5wb3NpdGlvbi5sZWZ0LWgubGVmdDpvLnBvc2l0aW9uLmxlZnQtdS5sZWZ0KSxjJiYoby5zaXplLmhlaWdodD1vLnNpemUud2lkdGgvby5hc3BlY3RSYXRpbyksby5wb3NpdGlvbi5sZWZ0PXIuaGVscGVyP2gubGVmdDowKSxsLnRvcDwoby5faGVscGVyP2gudG9wOjApJiYoby5zaXplLmhlaWdodD1vLnNpemUuaGVpZ2h0KyhvLl9oZWxwZXI/by5wb3NpdGlvbi50b3AtaC50b3A6by5wb3NpdGlvbi50b3ApLGMmJihvLnNpemUud2lkdGg9by5zaXplLmhlaWdodCpvLmFzcGVjdFJhdGlvKSxvLnBvc2l0aW9uLnRvcD1vLl9oZWxwZXI/aC50b3A6MCksby5vZmZzZXQubGVmdD1vLnBhcmVudERhdGEubGVmdCtvLnBvc2l0aW9uLmxlZnQsby5vZmZzZXQudG9wPW8ucGFyZW50RGF0YS50b3Arby5wb3NpdGlvbi50b3AsaT1NYXRoLmFicygoby5faGVscGVyP28ub2Zmc2V0LmxlZnQtdS5sZWZ0Om8ub2Zmc2V0LmxlZnQtdS5sZWZ0KStvLnNpemVEaWZmLndpZHRoKSxzPU1hdGguYWJzKChvLl9oZWxwZXI/by5vZmZzZXQudG9wLXUudG9wOm8ub2Zmc2V0LnRvcC1oLnRvcCkrby5zaXplRGlmZi5oZWlnaHQpLG49by5jb250YWluZXJFbGVtZW50LmdldCgwKT09PW8uZWxlbWVudC5wYXJlbnQoKS5nZXQoMCksYT0vcmVsYXRpdmV8YWJzb2x1dGUvLnRlc3Qoby5jb250YWluZXJFbGVtZW50LmNzcygicG9zaXRpb24iKSksbiYmYSYmKGktPU1hdGguYWJzKG8ucGFyZW50RGF0YS5sZWZ0KSksaStvLnNpemUud2lkdGg+PW8ucGFyZW50RGF0YS53aWR0aCYmKG8uc2l6ZS53aWR0aD1vLnBhcmVudERhdGEud2lkdGgtaSxjJiYoby5zaXplLmhlaWdodD1vLnNpemUud2lkdGgvby5hc3BlY3RSYXRpbykpLHMrby5zaXplLmhlaWdodD49by5wYXJlbnREYXRhLmhlaWdodCYmKG8uc2l6ZS5oZWlnaHQ9by5wYXJlbnREYXRhLmhlaWdodC1zLGMmJihvLnNpemUud2lkdGg9by5zaXplLmhlaWdodCpvLmFzcGVjdFJhdGlvKSl9LHN0b3A6ZnVuY3Rpb24oKXt2YXIgZT10KHRoaXMpLmRhdGEoInVpLXJlc2l6YWJsZSIpLGk9ZS5vcHRpb25zLHM9ZS5jb250YWluZXJPZmZzZXQsbj1lLmNvbnRhaW5lclBvc2l0aW9uLGE9ZS5jb250YWluZXJFbGVtZW50LG89dChlLmhlbHBlcikscj1vLm9mZnNldCgpLGg9by5vdXRlcldpZHRoKCktZS5zaXplRGlmZi53aWR0aCxsPW8ub3V0ZXJIZWlnaHQoKS1lLnNpemVEaWZmLmhlaWdodDtlLl9oZWxwZXImJiFpLmFuaW1hdGUmJi9yZWxhdGl2ZS8udGVzdChhLmNzcygicG9zaXRpb24iKSkmJnQodGhpcykuY3NzKHtsZWZ0OnIubGVmdC1uLmxlZnQtcy5sZWZ0LHdpZHRoOmgsaGVpZ2h0Omx9KSxlLl9oZWxwZXImJiFpLmFuaW1hdGUmJi9zdGF0aWMvLnRlc3QoYS5jc3MoInBvc2l0aW9uIikpJiZ0KHRoaXMpLmNzcyh7bGVmdDpyLmxlZnQtbi5sZWZ0LXMubGVmdCx3aWR0aDpoLGhlaWdodDpsfSl9fSksdC51aS5wbHVnaW4uYWRkKCJyZXNpemFibGUiLCJhbHNvUmVzaXplIix7c3RhcnQ6ZnVuY3Rpb24oKXt2YXIgZT10KHRoaXMpLmRhdGEoInVpLXJlc2l6YWJsZSIpLGk9ZS5vcHRpb25zLHM9ZnVuY3Rpb24oZSl7dChlKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9dCh0aGlzKTtlLmRhdGEoInVpLXJlc2l6YWJsZS1hbHNvcmVzaXplIix7d2lkdGg6cGFyc2VJbnQoZS53aWR0aCgpLDEwKSxoZWlnaHQ6cGFyc2VJbnQoZS5oZWlnaHQoKSwxMCksbGVmdDpwYXJzZUludChlLmNzcygibGVmdCIpLDEwKSx0b3A6cGFyc2VJbnQoZS5jc3MoInRvcCIpLDEwKX0pfSl9OyJvYmplY3QiIT10eXBlb2YgaS5hbHNvUmVzaXplfHxpLmFsc29SZXNpemUucGFyZW50Tm9kZT9zKGkuYWxzb1Jlc2l6ZSk6aS5hbHNvUmVzaXplLmxlbmd0aD8oaS5hbHNvUmVzaXplPWkuYWxzb1Jlc2l6ZVswXSxzKGkuYWxzb1Jlc2l6ZSkpOnQuZWFjaChpLmFsc29SZXNpemUsZnVuY3Rpb24odCl7cyh0KX0pfSxyZXNpemU6ZnVuY3Rpb24oZSxpKXt2YXIgcz10KHRoaXMpLmRhdGEoInVpLXJlc2l6YWJsZSIpLG49cy5vcHRpb25zLGE9cy5vcmlnaW5hbFNpemUsbz1zLm9yaWdpbmFsUG9zaXRpb24scj17aGVpZ2h0OnMuc2l6ZS5oZWlnaHQtYS5oZWlnaHR8fDAsd2lkdGg6cy5zaXplLndpZHRoLWEud2lkdGh8fDAsdG9wOnMucG9zaXRpb24udG9wLW8udG9wfHwwLGxlZnQ6cy5wb3NpdGlvbi5sZWZ0LW8ubGVmdHx8MH0saD1mdW5jdGlvbihlLHMpe3QoZSkuZWFjaChmdW5jdGlvbigpe3ZhciBlPXQodGhpcyksbj10KHRoaXMpLmRhdGEoInVpLXJlc2l6YWJsZS1hbHNvcmVzaXplIiksYT17fSxvPXMmJnMubGVuZ3RoP3M6ZS5wYXJlbnRzKGkub3JpZ2luYWxFbGVtZW50WzBdKS5sZW5ndGg/WyJ3aWR0aCIsImhlaWdodCJdOlsid2lkdGgiLCJoZWlnaHQiLCJ0b3AiLCJsZWZ0Il07dC5lYWNoKG8sZnVuY3Rpb24odCxlKXt2YXIgaT0obltlXXx8MCkrKHJbZV18fDApO2kmJmk+PTAmJihhW2VdPWl8fG51bGwpfSksZS5jc3MoYSl9KX07Im9iamVjdCIhPXR5cGVvZiBuLmFsc29SZXNpemV8fG4uYWxzb1Jlc2l6ZS5ub2RlVHlwZT9oKG4uYWxzb1Jlc2l6ZSk6dC5lYWNoKG4uYWxzb1Jlc2l6ZSxmdW5jdGlvbih0LGUpe2godCxlKX0pfSxzdG9wOmZ1bmN0aW9uKCl7dCh0aGlzKS5yZW1vdmVEYXRhKCJyZXNpemFibGUtYWxzb3Jlc2l6ZSIpfX0pLHQudWkucGx1Z2luLmFkZCgicmVzaXphYmxlIiwiZ2hvc3QiLHtzdGFydDpmdW5jdGlvbigpe3ZhciBlPXQodGhpcykuZGF0YSgidWktcmVzaXphYmxlIiksaT1lLm9wdGlvbnMscz1lLnNpemU7ZS5naG9zdD1lLm9yaWdpbmFsRWxlbWVudC5jbG9uZSgpLGUuZ2hvc3QuY3NzKHtvcGFjaXR5Oi4yNSxkaXNwbGF5OiJibG9jayIscG9zaXRpb246InJlbGF0aXZlIixoZWlnaHQ6cy5oZWlnaHQsd2lkdGg6cy53aWR0aCxtYXJnaW46MCxsZWZ0OjAsdG9wOjB9KS5hZGRDbGFzcygidWktcmVzaXphYmxlLWdob3N0IikuYWRkQ2xhc3MoInN0cmluZyI9PXR5cGVvZiBpLmdob3N0P2kuZ2hvc3Q6IiIpLGUuZ2hvc3QuYXBwZW5kVG8oZS5oZWxwZXIpfSxyZXNpemU6ZnVuY3Rpb24oKXt2YXIgZT10KHRoaXMpLmRhdGEoInVpLXJlc2l6YWJsZSIpO2UuZ2hvc3QmJmUuZ2hvc3QuY3NzKHtwb3NpdGlvbjoicmVsYXRpdmUiLGhlaWdodDplLnNpemUuaGVpZ2h0LHdpZHRoOmUuc2l6ZS53aWR0aH0pfSxzdG9wOmZ1bmN0aW9uKCl7dmFyIGU9dCh0aGlzKS5kYXRhKCJ1aS1yZXNpemFibGUiKTtlLmdob3N0JiZlLmhlbHBlciYmZS5oZWxwZXIuZ2V0KDApLnJlbW92ZUNoaWxkKGUuZ2hvc3QuZ2V0KDApKX19KSx0LnVpLnBsdWdpbi5hZGQoInJlc2l6YWJsZSIsImdyaWQiLHtyZXNpemU6ZnVuY3Rpb24oKXt2YXIgZT10KHRoaXMpLmRhdGEoInVpLXJlc2l6YWJsZSIpLGk9ZS5vcHRpb25zLHM9ZS5zaXplLG49ZS5vcmlnaW5hbFNpemUsYT1lLm9yaWdpbmFsUG9zaXRpb24sbz1lLmF4aXMscj0ibnVtYmVyIj09dHlwZW9mIGkuZ3JpZD9baS5ncmlkLGkuZ3JpZF06aS5ncmlkLGg9clswXXx8MSxsPXJbMV18fDEsYz1NYXRoLnJvdW5kKChzLndpZHRoLW4ud2lkdGgpL2gpKmgsdT1NYXRoLnJvdW5kKChzLmhlaWdodC1uLmhlaWdodCkvbCkqbCxkPW4ud2lkdGgrYyxwPW4uaGVpZ2h0K3UsZj1pLm1heFdpZHRoJiZkPmkubWF4V2lkdGgsZz1pLm1heEhlaWdodCYmcD5pLm1heEhlaWdodCxtPWkubWluV2lkdGgmJmkubWluV2lkdGg+ZCx2PWkubWluSGVpZ2h0JiZpLm1pbkhlaWdodD5wO2kuZ3JpZD1yLG0mJihkKz1oKSx2JiYocCs9bCksZiYmKGQtPWgpLGcmJihwLT1sKSwvXihzZXxzfGUpJC8udGVzdChvKT8oZS5zaXplLndpZHRoPWQsZS5zaXplLmhlaWdodD1wKTovXihuZSkkLy50ZXN0KG8pPyhlLnNpemUud2lkdGg9ZCxlLnNpemUuaGVpZ2h0PXAsZS5wb3NpdGlvbi50b3A9YS50b3AtdSk6L14oc3cpJC8udGVzdChvKT8oZS5zaXplLndpZHRoPWQsZS5zaXplLmhlaWdodD1wLGUucG9zaXRpb24ubGVmdD1hLmxlZnQtYyk6KHAtbD4wPyhlLnNpemUuaGVpZ2h0PXAsZS5wb3NpdGlvbi50b3A9YS50b3AtdSk6KGUuc2l6ZS5oZWlnaHQ9bCxlLnBvc2l0aW9uLnRvcD1hLnRvcCtuLmhlaWdodC1sKSxkLWg+MD8oZS5zaXplLndpZHRoPWQsZS5wb3NpdGlvbi5sZWZ0PWEubGVmdC1jKTooZS5zaXplLndpZHRoPWgsZS5wb3NpdGlvbi5sZWZ0PWEubGVmdCtuLndpZHRoLWgpKX19KX0pKGpRdWVyeSk7KGZ1bmN0aW9uKHQpe3Qud2lkZ2V0KCJ1aS5zZWxlY3RhYmxlIix0LnVpLm1vdXNlLHt2ZXJzaW9uOiIxLjEwLjQiLG9wdGlvbnM6e2FwcGVuZFRvOiJib2R5IixhdXRvUmVmcmVzaDohMCxkaXN0YW5jZTowLGZpbHRlcjoiKiIsdG9sZXJhbmNlOiJ0b3VjaCIsc2VsZWN0ZWQ6bnVsbCxzZWxlY3Rpbmc6bnVsbCxzdGFydDpudWxsLHN0b3A6bnVsbCx1bnNlbGVjdGVkOm51bGwsdW5zZWxlY3Rpbmc6bnVsbH0sX2NyZWF0ZTpmdW5jdGlvbigpe3ZhciBlLGk9dGhpczt0aGlzLmVsZW1lbnQuYWRkQ2xhc3MoInVpLXNlbGVjdGFibGUiKSx0aGlzLmRyYWdnZWQ9ITEsdGhpcy5yZWZyZXNoPWZ1bmN0aW9uKCl7ZT10KGkub3B0aW9ucy5maWx0ZXIsaS5lbGVtZW50WzBdKSxlLmFkZENsYXNzKCJ1aS1zZWxlY3RlZSIpLGUuZWFjaChmdW5jdGlvbigpe3ZhciBlPXQodGhpcyksaT1lLm9mZnNldCgpO3QuZGF0YSh0aGlzLCJzZWxlY3RhYmxlLWl0ZW0iLHtlbGVtZW50OnRoaXMsJGVsZW1lbnQ6ZSxsZWZ0OmkubGVmdCx0b3A6aS50b3AscmlnaHQ6aS5sZWZ0K2Uub3V0ZXJXaWR0aCgpLGJvdHRvbTppLnRvcCtlLm91dGVySGVpZ2h0KCksc3RhcnRzZWxlY3RlZDohMSxzZWxlY3RlZDplLmhhc0NsYXNzKCJ1aS1zZWxlY3RlZCIpLHNlbGVjdGluZzplLmhhc0NsYXNzKCJ1aS1zZWxlY3RpbmciKSx1bnNlbGVjdGluZzplLmhhc0NsYXNzKCJ1aS11bnNlbGVjdGluZyIpfSl9KX0sdGhpcy5yZWZyZXNoKCksdGhpcy5zZWxlY3RlZXM9ZS5hZGRDbGFzcygidWktc2VsZWN0ZWUiKSx0aGlzLl9tb3VzZUluaXQoKSx0aGlzLmhlbHBlcj10KCI8ZGl2IGNsYXNzPSd1aS1zZWxlY3RhYmxlLWhlbHBlcic+PC9kaXY+Iil9LF9kZXN0cm95OmZ1bmN0aW9uKCl7dGhpcy5zZWxlY3RlZXMucmVtb3ZlQ2xhc3MoInVpLXNlbGVjdGVlIikucmVtb3ZlRGF0YSgic2VsZWN0YWJsZS1pdGVtIiksdGhpcy5lbGVtZW50LnJlbW92ZUNsYXNzKCJ1aS1zZWxlY3RhYmxlIHVpLXNlbGVjdGFibGUtZGlzYWJsZWQiKSx0aGlzLl9tb3VzZURlc3Ryb3koKX0sX21vdXNlU3RhcnQ6ZnVuY3Rpb24oZSl7dmFyIGk9dGhpcyxzPXRoaXMub3B0aW9uczt0aGlzLm9wb3M9W2UucGFnZVgsZS5wYWdlWV0sdGhpcy5vcHRpb25zLmRpc2FibGVkfHwodGhpcy5zZWxlY3RlZXM9dChzLmZpbHRlcix0aGlzLmVsZW1lbnRbMF0pLHRoaXMuX3RyaWdnZXIoInN0YXJ0IixlKSx0KHMuYXBwZW5kVG8pLmFwcGVuZCh0aGlzLmhlbHBlciksdGhpcy5oZWxwZXIuY3NzKHtsZWZ0OmUucGFnZVgsdG9wOmUucGFnZVksd2lkdGg6MCxoZWlnaHQ6MH0pLHMuYXV0b1JlZnJlc2gmJnRoaXMucmVmcmVzaCgpLHRoaXMuc2VsZWN0ZWVzLmZpbHRlcigiLnVpLXNlbGVjdGVkIikuZWFjaChmdW5jdGlvbigpe3ZhciBzPXQuZGF0YSh0aGlzLCJzZWxlY3RhYmxlLWl0ZW0iKTtzLnN0YXJ0c2VsZWN0ZWQ9ITAsZS5tZXRhS2V5fHxlLmN0cmxLZXl8fChzLiRlbGVtZW50LnJlbW92ZUNsYXNzKCJ1aS1zZWxlY3RlZCIpLHMuc2VsZWN0ZWQ9ITEscy4kZWxlbWVudC5hZGRDbGFzcygidWktdW5zZWxlY3RpbmciKSxzLnVuc2VsZWN0aW5nPSEwLGkuX3RyaWdnZXIoInVuc2VsZWN0aW5nIixlLHt1bnNlbGVjdGluZzpzLmVsZW1lbnR9KSl9KSx0KGUudGFyZ2V0KS5wYXJlbnRzKCkuYWRkQmFjaygpLmVhY2goZnVuY3Rpb24oKXt2YXIgcyxuPXQuZGF0YSh0aGlzLCJzZWxlY3RhYmxlLWl0ZW0iKTtyZXR1cm4gbj8ocz0hZS5tZXRhS2V5JiYhZS5jdHJsS2V5fHwhbi4kZWxlbWVudC5oYXNDbGFzcygidWktc2VsZWN0ZWQiKSxuLiRlbGVtZW50LnJlbW92ZUNsYXNzKHM/InVpLXVuc2VsZWN0aW5nIjoidWktc2VsZWN0ZWQiKS5hZGRDbGFzcyhzPyJ1aS1zZWxlY3RpbmciOiJ1aS11bnNlbGVjdGluZyIpLG4udW5zZWxlY3Rpbmc9IXMsbi5zZWxlY3Rpbmc9cyxuLnNlbGVjdGVkPXMscz9pLl90cmlnZ2VyKCJzZWxlY3RpbmciLGUse3NlbGVjdGluZzpuLmVsZW1lbnR9KTppLl90cmlnZ2VyKCJ1bnNlbGVjdGluZyIsZSx7dW5zZWxlY3Rpbmc6bi5lbGVtZW50fSksITEpOnVuZGVmaW5lZH0pKX0sX21vdXNlRHJhZzpmdW5jdGlvbihlKXtpZih0aGlzLmRyYWdnZWQ9ITAsIXRoaXMub3B0aW9ucy5kaXNhYmxlZCl7dmFyIGkscz10aGlzLG49dGhpcy5vcHRpb25zLGE9dGhpcy5vcG9zWzBdLG89dGhpcy5vcG9zWzFdLHI9ZS5wYWdlWCxsPWUucGFnZVk7cmV0dXJuIGE+ciYmKGk9cixyPWEsYT1pKSxvPmwmJihpPWwsbD1vLG89aSksdGhpcy5oZWxwZXIuY3NzKHtsZWZ0OmEsdG9wOm8sd2lkdGg6ci1hLGhlaWdodDpsLW99KSx0aGlzLnNlbGVjdGVlcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGk9dC5kYXRhKHRoaXMsInNlbGVjdGFibGUtaXRlbSIpLGg9ITE7aSYmaS5lbGVtZW50IT09cy5lbGVtZW50WzBdJiYoInRvdWNoIj09PW4udG9sZXJhbmNlP2g9IShpLmxlZnQ+cnx8YT5pLnJpZ2h0fHxpLnRvcD5sfHxvPmkuYm90dG9tKToiZml0Ij09PW4udG9sZXJhbmNlJiYoaD1pLmxlZnQ+YSYmcj5pLnJpZ2h0JiZpLnRvcD5vJiZsPmkuYm90dG9tKSxoPyhpLnNlbGVjdGVkJiYoaS4kZWxlbWVudC5yZW1vdmVDbGFzcygidWktc2VsZWN0ZWQiKSxpLnNlbGVjdGVkPSExKSxpLnVuc2VsZWN0aW5nJiYoaS4kZWxlbWVudC5yZW1vdmVDbGFzcygidWktdW5zZWxlY3RpbmciKSxpLnVuc2VsZWN0aW5nPSExKSxpLnNlbGVjdGluZ3x8KGkuJGVsZW1lbnQuYWRkQ2xhc3MoInVpLXNlbGVjdGluZyIpLGkuc2VsZWN0aW5nPSEwLHMuX3RyaWdnZXIoInNlbGVjdGluZyIsZSx7c2VsZWN0aW5nOmkuZWxlbWVudH0pKSk6KGkuc2VsZWN0aW5nJiYoKGUubWV0YUtleXx8ZS5jdHJsS2V5KSYmaS5zdGFydHNlbGVjdGVkPyhpLiRlbGVtZW50LnJlbW92ZUNsYXNzKCJ1aS1zZWxlY3RpbmciKSxpLnNlbGVjdGluZz0hMSxpLiRlbGVtZW50LmFkZENsYXNzKCJ1aS1zZWxlY3RlZCIpLGkuc2VsZWN0ZWQ9ITApOihpLiRlbGVtZW50LnJlbW92ZUNsYXNzKCJ1aS1zZWxlY3RpbmciKSxpLnNlbGVjdGluZz0hMSxpLnN0YXJ0c2VsZWN0ZWQmJihpLiRlbGVtZW50LmFkZENsYXNzKCJ1aS11bnNlbGVjdGluZyIpLGkudW5zZWxlY3Rpbmc9ITApLHMuX3RyaWdnZXIoInVuc2VsZWN0aW5nIixlLHt1bnNlbGVjdGluZzppLmVsZW1lbnR9KSkpLGkuc2VsZWN0ZWQmJihlLm1ldGFLZXl8fGUuY3RybEtleXx8aS5zdGFydHNlbGVjdGVkfHwoaS4kZWxlbWVudC5yZW1vdmVDbGFzcygidWktc2VsZWN0ZWQiKSxpLnNlbGVjdGVkPSExLGkuJGVsZW1lbnQuYWRkQ2xhc3MoInVpLXVuc2VsZWN0aW5nIiksaS51bnNlbGVjdGluZz0hMCxzLl90cmlnZ2VyKCJ1bnNlbGVjdGluZyIsZSx7dW5zZWxlY3Rpbmc6aS5lbGVtZW50fSkpKSkpfSksITF9fSxfbW91c2VTdG9wOmZ1bmN0aW9uKGUpe3ZhciBpPXRoaXM7cmV0dXJuIHRoaXMuZHJhZ2dlZD0hMSx0KCIudWktdW5zZWxlY3RpbmciLHRoaXMuZWxlbWVudFswXSkuZWFjaChmdW5jdGlvbigpe3ZhciBzPXQuZGF0YSh0aGlzLCJzZWxlY3RhYmxlLWl0ZW0iKTtzLiRlbGVtZW50LnJlbW92ZUNsYXNzKCJ1aS11bnNlbGVjdGluZyIpLHMudW5zZWxlY3Rpbmc9ITEscy5zdGFydHNlbGVjdGVkPSExLGkuX3RyaWdnZXIoInVuc2VsZWN0ZWQiLGUse3Vuc2VsZWN0ZWQ6cy5lbGVtZW50fSl9KSx0KCIudWktc2VsZWN0aW5nIix0aGlzLmVsZW1lbnRbMF0pLmVhY2goZnVuY3Rpb24oKXt2YXIgcz10LmRhdGEodGhpcywic2VsZWN0YWJsZS1pdGVtIik7cy4kZWxlbWVudC5yZW1vdmVDbGFzcygidWktc2VsZWN0aW5nIikuYWRkQ2xhc3MoInVpLXNlbGVjdGVkIikscy5zZWxlY3Rpbmc9ITEscy5zZWxlY3RlZD0hMCxzLnN0YXJ0c2VsZWN0ZWQ9ITAsaS5fdHJpZ2dlcigic2VsZWN0ZWQiLGUse3NlbGVjdGVkOnMuZWxlbWVudH0pfSksdGhpcy5fdHJpZ2dlcigic3RvcCIsZSksdGhpcy5oZWxwZXIucmVtb3ZlKCksITF9fSl9KShqUXVlcnkpOyhmdW5jdGlvbih0KXt2YXIgZT01O3Qud2lkZ2V0KCJ1aS5zbGlkZXIiLHQudWkubW91c2Use3ZlcnNpb246IjEuMTAuNCIsd2lkZ2V0RXZlbnRQcmVmaXg6InNsaWRlIixvcHRpb25zOnthbmltYXRlOiExLGRpc3RhbmNlOjAsbWF4OjEwMCxtaW46MCxvcmllbnRhdGlvbjoiaG9yaXpvbnRhbCIscmFuZ2U6ITEsc3RlcDoxLHZhbHVlOjAsdmFsdWVzOm51bGwsY2hhbmdlOm51bGwsc2xpZGU6bnVsbCxzdGFydDpudWxsLHN0b3A6bnVsbH0sX2NyZWF0ZTpmdW5jdGlvbigpe3RoaXMuX2tleVNsaWRpbmc9ITEsdGhpcy5fbW91c2VTbGlkaW5nPSExLHRoaXMuX2FuaW1hdGVPZmY9ITAsdGhpcy5faGFuZGxlSW5kZXg9bnVsbCx0aGlzLl9kZXRlY3RPcmllbnRhdGlvbigpLHRoaXMuX21vdXNlSW5pdCgpLHRoaXMuZWxlbWVudC5hZGRDbGFzcygidWktc2xpZGVyIHVpLXNsaWRlci0iK3RoaXMub3JpZW50YXRpb24rIiB1aS13aWRnZXQiKyIgdWktd2lkZ2V0LWNvbnRlbnQiKyIgdWktY29ybmVyLWFsbCIpLHRoaXMuX3JlZnJlc2goKSx0aGlzLl9zZXRPcHRpb24oImRpc2FibGVkIix0aGlzLm9wdGlvbnMuZGlzYWJsZWQpLHRoaXMuX2FuaW1hdGVPZmY9ITF9LF9yZWZyZXNoOmZ1bmN0aW9uKCl7dGhpcy5fY3JlYXRlUmFuZ2UoKSx0aGlzLl9jcmVhdGVIYW5kbGVzKCksdGhpcy5fc2V0dXBFdmVudHMoKSx0aGlzLl9yZWZyZXNoVmFsdWUoKX0sX2NyZWF0ZUhhbmRsZXM6ZnVuY3Rpb24oKXt2YXIgZSxpLHM9dGhpcy5vcHRpb25zLG49dGhpcy5lbGVtZW50LmZpbmQoIi51aS1zbGlkZXItaGFuZGxlIikuYWRkQ2xhc3MoInVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCIpLGE9IjxhIGNsYXNzPSd1aS1zbGlkZXItaGFuZGxlIHVpLXN0YXRlLWRlZmF1bHQgdWktY29ybmVyLWFsbCcgaHJlZj0nIyc+PC9hPiIsbz1bXTtmb3IoaT1zLnZhbHVlcyYmcy52YWx1ZXMubGVuZ3RofHwxLG4ubGVuZ3RoPmkmJihuLnNsaWNlKGkpLnJlbW92ZSgpLG49bi5zbGljZSgwLGkpKSxlPW4ubGVuZ3RoO2k+ZTtlKyspby5wdXNoKGEpO3RoaXMuaGFuZGxlcz1uLmFkZCh0KG8uam9pbigiIikpLmFwcGVuZFRvKHRoaXMuZWxlbWVudCkpLHRoaXMuaGFuZGxlPXRoaXMuaGFuZGxlcy5lcSgwKSx0aGlzLmhhbmRsZXMuZWFjaChmdW5jdGlvbihlKXt0KHRoaXMpLmRhdGEoInVpLXNsaWRlci1oYW5kbGUtaW5kZXgiLGUpfSl9LF9jcmVhdGVSYW5nZTpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3B0aW9ucyxpPSIiO2UucmFuZ2U/KGUucmFuZ2U9PT0hMCYmKGUudmFsdWVzP2UudmFsdWVzLmxlbmd0aCYmMiE9PWUudmFsdWVzLmxlbmd0aD9lLnZhbHVlcz1bZS52YWx1ZXNbMF0sZS52YWx1ZXNbMF1dOnQuaXNBcnJheShlLnZhbHVlcykmJihlLnZhbHVlcz1lLnZhbHVlcy5zbGljZSgwKSk6ZS52YWx1ZXM9W3RoaXMuX3ZhbHVlTWluKCksdGhpcy5fdmFsdWVNaW4oKV0pLHRoaXMucmFuZ2UmJnRoaXMucmFuZ2UubGVuZ3RoP3RoaXMucmFuZ2UucmVtb3ZlQ2xhc3MoInVpLXNsaWRlci1yYW5nZS1taW4gdWktc2xpZGVyLXJhbmdlLW1heCIpLmNzcyh7bGVmdDoiIixib3R0b206IiJ9KToodGhpcy5yYW5nZT10KCI8ZGl2PjwvZGl2PiIpLmFwcGVuZFRvKHRoaXMuZWxlbWVudCksaT0idWktc2xpZGVyLXJhbmdlIHVpLXdpZGdldC1oZWFkZXIgdWktY29ybmVyLWFsbCIpLHRoaXMucmFuZ2UuYWRkQ2xhc3MoaSsoIm1pbiI9PT1lLnJhbmdlfHwibWF4Ij09PWUucmFuZ2U/IiB1aS1zbGlkZXItcmFuZ2UtIitlLnJhbmdlOiIiKSkpOih0aGlzLnJhbmdlJiZ0aGlzLnJhbmdlLnJlbW92ZSgpLHRoaXMucmFuZ2U9bnVsbCl9LF9zZXR1cEV2ZW50czpmdW5jdGlvbigpe3ZhciB0PXRoaXMuaGFuZGxlcy5hZGQodGhpcy5yYW5nZSkuZmlsdGVyKCJhIik7dGhpcy5fb2ZmKHQpLHRoaXMuX29uKHQsdGhpcy5faGFuZGxlRXZlbnRzKSx0aGlzLl9ob3ZlcmFibGUodCksdGhpcy5fZm9jdXNhYmxlKHQpfSxfZGVzdHJveTpmdW5jdGlvbigpe3RoaXMuaGFuZGxlcy5yZW1vdmUoKSx0aGlzLnJhbmdlJiZ0aGlzLnJhbmdlLnJlbW92ZSgpLHRoaXMuZWxlbWVudC5yZW1vdmVDbGFzcygidWktc2xpZGVyIHVpLXNsaWRlci1ob3Jpem9udGFsIHVpLXNsaWRlci12ZXJ0aWNhbCB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCIpLHRoaXMuX21vdXNlRGVzdHJveSgpfSxfbW91c2VDYXB0dXJlOmZ1bmN0aW9uKGUpe3ZhciBpLHMsbixhLG8scixsLGgsdT10aGlzLGM9dGhpcy5vcHRpb25zO3JldHVybiBjLmRpc2FibGVkPyExOih0aGlzLmVsZW1lbnRTaXplPXt3aWR0aDp0aGlzLmVsZW1lbnQub3V0ZXJXaWR0aCgpLGhlaWdodDp0aGlzLmVsZW1lbnQub3V0ZXJIZWlnaHQoKX0sdGhpcy5lbGVtZW50T2Zmc2V0PXRoaXMuZWxlbWVudC5vZmZzZXQoKSxpPXt4OmUucGFnZVgseTplLnBhZ2VZfSxzPXRoaXMuX25vcm1WYWx1ZUZyb21Nb3VzZShpKSxuPXRoaXMuX3ZhbHVlTWF4KCktdGhpcy5fdmFsdWVNaW4oKSsxLHRoaXMuaGFuZGxlcy5lYWNoKGZ1bmN0aW9uKGUpe3ZhciBpPU1hdGguYWJzKHMtdS52YWx1ZXMoZSkpOyhuPml8fG49PT1pJiYoZT09PXUuX2xhc3RDaGFuZ2VkVmFsdWV8fHUudmFsdWVzKGUpPT09Yy5taW4pKSYmKG49aSxhPXQodGhpcyksbz1lKX0pLHI9dGhpcy5fc3RhcnQoZSxvKSxyPT09ITE/ITE6KHRoaXMuX21vdXNlU2xpZGluZz0hMCx0aGlzLl9oYW5kbGVJbmRleD1vLGEuYWRkQ2xhc3MoInVpLXN0YXRlLWFjdGl2ZSIpLmZvY3VzKCksbD1hLm9mZnNldCgpLGg9IXQoZS50YXJnZXQpLnBhcmVudHMoKS5hZGRCYWNrKCkuaXMoIi51aS1zbGlkZXItaGFuZGxlIiksdGhpcy5fY2xpY2tPZmZzZXQ9aD97bGVmdDowLHRvcDowfTp7bGVmdDplLnBhZ2VYLWwubGVmdC1hLndpZHRoKCkvMix0b3A6ZS5wYWdlWS1sLnRvcC1hLmhlaWdodCgpLzItKHBhcnNlSW50KGEuY3NzKCJib3JkZXJUb3BXaWR0aCIpLDEwKXx8MCktKHBhcnNlSW50KGEuY3NzKCJib3JkZXJCb3R0b21XaWR0aCIpLDEwKXx8MCkrKHBhcnNlSW50KGEuY3NzKCJtYXJnaW5Ub3AiKSwxMCl8fDApfSx0aGlzLmhhbmRsZXMuaGFzQ2xhc3MoInVpLXN0YXRlLWhvdmVyIil8fHRoaXMuX3NsaWRlKGUsbyxzKSx0aGlzLl9hbmltYXRlT2ZmPSEwLCEwKSl9LF9tb3VzZVN0YXJ0OmZ1bmN0aW9uKCl7cmV0dXJuITB9LF9tb3VzZURyYWc6ZnVuY3Rpb24odCl7dmFyIGU9e3g6dC5wYWdlWCx5OnQucGFnZVl9LGk9dGhpcy5fbm9ybVZhbHVlRnJvbU1vdXNlKGUpO3JldHVybiB0aGlzLl9zbGlkZSh0LHRoaXMuX2hhbmRsZUluZGV4LGkpLCExfSxfbW91c2VTdG9wOmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmhhbmRsZXMucmVtb3ZlQ2xhc3MoInVpLXN0YXRlLWFjdGl2ZSIpLHRoaXMuX21vdXNlU2xpZGluZz0hMSx0aGlzLl9zdG9wKHQsdGhpcy5faGFuZGxlSW5kZXgpLHRoaXMuX2NoYW5nZSh0LHRoaXMuX2hhbmRsZUluZGV4KSx0aGlzLl9oYW5kbGVJbmRleD1udWxsLHRoaXMuX2NsaWNrT2Zmc2V0PW51bGwsdGhpcy5fYW5pbWF0ZU9mZj0hMSwhMX0sX2RldGVjdE9yaWVudGF0aW9uOmZ1bmN0aW9uKCl7dGhpcy5vcmllbnRhdGlvbj0idmVydGljYWwiPT09dGhpcy5vcHRpb25zLm9yaWVudGF0aW9uPyJ2ZXJ0aWNhbCI6Imhvcml6b250YWwifSxfbm9ybVZhbHVlRnJvbU1vdXNlOmZ1bmN0aW9uKHQpe3ZhciBlLGkscyxuLGE7cmV0dXJuImhvcml6b250YWwiPT09dGhpcy5vcmllbnRhdGlvbj8oZT10aGlzLmVsZW1lbnRTaXplLndpZHRoLGk9dC54LXRoaXMuZWxlbWVudE9mZnNldC5sZWZ0LSh0aGlzLl9jbGlja09mZnNldD90aGlzLl9jbGlja09mZnNldC5sZWZ0OjApKTooZT10aGlzLmVsZW1lbnRTaXplLmhlaWdodCxpPXQueS10aGlzLmVsZW1lbnRPZmZzZXQudG9wLSh0aGlzLl9jbGlja09mZnNldD90aGlzLl9jbGlja09mZnNldC50b3A6MCkpLHM9aS9lLHM+MSYmKHM9MSksMD5zJiYocz0wKSwidmVydGljYWwiPT09dGhpcy5vcmllbnRhdGlvbiYmKHM9MS1zKSxuPXRoaXMuX3ZhbHVlTWF4KCktdGhpcy5fdmFsdWVNaW4oKSxhPXRoaXMuX3ZhbHVlTWluKCkrcypuLHRoaXMuX3RyaW1BbGlnblZhbHVlKGEpfSxfc3RhcnQ6ZnVuY3Rpb24odCxlKXt2YXIgaT17aGFuZGxlOnRoaXMuaGFuZGxlc1tlXSx2YWx1ZTp0aGlzLnZhbHVlKCl9O3JldHVybiB0aGlzLm9wdGlvbnMudmFsdWVzJiZ0aGlzLm9wdGlvbnMudmFsdWVzLmxlbmd0aCYmKGkudmFsdWU9dGhpcy52YWx1ZXMoZSksaS52YWx1ZXM9dGhpcy52YWx1ZXMoKSksdGhpcy5fdHJpZ2dlcigic3RhcnQiLHQsaSl9LF9zbGlkZTpmdW5jdGlvbih0LGUsaSl7dmFyIHMsbixhO3RoaXMub3B0aW9ucy52YWx1ZXMmJnRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoPyhzPXRoaXMudmFsdWVzKGU/MDoxKSwyPT09dGhpcy5vcHRpb25zLnZhbHVlcy5sZW5ndGgmJnRoaXMub3B0aW9ucy5yYW5nZT09PSEwJiYoMD09PWUmJmk+c3x8MT09PWUmJnM+aSkmJihpPXMpLGkhPT10aGlzLnZhbHVlcyhlKSYmKG49dGhpcy52YWx1ZXMoKSxuW2VdPWksYT10aGlzLl90cmlnZ2VyKCJzbGlkZSIsdCx7aGFuZGxlOnRoaXMuaGFuZGxlc1tlXSx2YWx1ZTppLHZhbHVlczpufSkscz10aGlzLnZhbHVlcyhlPzA6MSksYSE9PSExJiZ0aGlzLnZhbHVlcyhlLGkpKSk6aSE9PXRoaXMudmFsdWUoKSYmKGE9dGhpcy5fdHJpZ2dlcigic2xpZGUiLHQse2hhbmRsZTp0aGlzLmhhbmRsZXNbZV0sdmFsdWU6aX0pLGEhPT0hMSYmdGhpcy52YWx1ZShpKSl9LF9zdG9wOmZ1bmN0aW9uKHQsZSl7dmFyIGk9e2hhbmRsZTp0aGlzLmhhbmRsZXNbZV0sdmFsdWU6dGhpcy52YWx1ZSgpfTt0aGlzLm9wdGlvbnMudmFsdWVzJiZ0aGlzLm9wdGlvbnMudmFsdWVzLmxlbmd0aCYmKGkudmFsdWU9dGhpcy52YWx1ZXMoZSksaS52YWx1ZXM9dGhpcy52YWx1ZXMoKSksdGhpcy5fdHJpZ2dlcigic3RvcCIsdCxpKX0sX2NoYW5nZTpmdW5jdGlvbih0LGUpe2lmKCF0aGlzLl9rZXlTbGlkaW5nJiYhdGhpcy5fbW91c2VTbGlkaW5nKXt2YXIgaT17aGFuZGxlOnRoaXMuaGFuZGxlc1tlXSx2YWx1ZTp0aGlzLnZhbHVlKCl9O3RoaXMub3B0aW9ucy52YWx1ZXMmJnRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoJiYoaS52YWx1ZT10aGlzLnZhbHVlcyhlKSxpLnZhbHVlcz10aGlzLnZhbHVlcygpKSx0aGlzLl9sYXN0Q2hhbmdlZFZhbHVlPWUsdGhpcy5fdHJpZ2dlcigiY2hhbmdlIix0LGkpfX0sdmFsdWU6ZnVuY3Rpb24odCl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg/KHRoaXMub3B0aW9ucy52YWx1ZT10aGlzLl90cmltQWxpZ25WYWx1ZSh0KSx0aGlzLl9yZWZyZXNoVmFsdWUoKSx0aGlzLl9jaGFuZ2UobnVsbCwwKSx1bmRlZmluZWQpOnRoaXMuX3ZhbHVlKCl9LHZhbHVlczpmdW5jdGlvbihlLGkpe3ZhciBzLG4sYTtpZihhcmd1bWVudHMubGVuZ3RoPjEpcmV0dXJuIHRoaXMub3B0aW9ucy52YWx1ZXNbZV09dGhpcy5fdHJpbUFsaWduVmFsdWUoaSksdGhpcy5fcmVmcmVzaFZhbHVlKCksdGhpcy5fY2hhbmdlKG51bGwsZSksdW5kZWZpbmVkO2lmKCFhcmd1bWVudHMubGVuZ3RoKXJldHVybiB0aGlzLl92YWx1ZXMoKTtpZighdC5pc0FycmF5KGFyZ3VtZW50c1swXSkpcmV0dXJuIHRoaXMub3B0aW9ucy52YWx1ZXMmJnRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoP3RoaXMuX3ZhbHVlcyhlKTp0aGlzLnZhbHVlKCk7Zm9yKHM9dGhpcy5vcHRpb25zLnZhbHVlcyxuPWFyZ3VtZW50c1swXSxhPTA7cy5sZW5ndGg+YTthKz0xKXNbYV09dGhpcy5fdHJpbUFsaWduVmFsdWUoblthXSksdGhpcy5fY2hhbmdlKG51bGwsYSk7dGhpcy5fcmVmcmVzaFZhbHVlKCl9LF9zZXRPcHRpb246ZnVuY3Rpb24oZSxpKXt2YXIgcyxuPTA7c3dpdGNoKCJyYW5nZSI9PT1lJiZ0aGlzLm9wdGlvbnMucmFuZ2U9PT0hMCYmKCJtaW4iPT09aT8odGhpcy5vcHRpb25zLnZhbHVlPXRoaXMuX3ZhbHVlcygwKSx0aGlzLm9wdGlvbnMudmFsdWVzPW51bGwpOiJtYXgiPT09aSYmKHRoaXMub3B0aW9ucy52YWx1ZT10aGlzLl92YWx1ZXModGhpcy5vcHRpb25zLnZhbHVlcy5sZW5ndGgtMSksdGhpcy5vcHRpb25zLnZhbHVlcz1udWxsKSksdC5pc0FycmF5KHRoaXMub3B0aW9ucy52YWx1ZXMpJiYobj10aGlzLm9wdGlvbnMudmFsdWVzLmxlbmd0aCksdC5XaWRnZXQucHJvdG90eXBlLl9zZXRPcHRpb24uYXBwbHkodGhpcyxhcmd1bWVudHMpLGUpe2Nhc2Uib3JpZW50YXRpb24iOnRoaXMuX2RldGVjdE9yaWVudGF0aW9uKCksdGhpcy5lbGVtZW50LnJlbW92ZUNsYXNzKCJ1aS1zbGlkZXItaG9yaXpvbnRhbCB1aS1zbGlkZXItdmVydGljYWwiKS5hZGRDbGFzcygidWktc2xpZGVyLSIrdGhpcy5vcmllbnRhdGlvbiksdGhpcy5fcmVmcmVzaFZhbHVlKCk7YnJlYWs7Y2FzZSJ2YWx1ZSI6dGhpcy5fYW5pbWF0ZU9mZj0hMCx0aGlzLl9yZWZyZXNoVmFsdWUoKSx0aGlzLl9jaGFuZ2UobnVsbCwwKSx0aGlzLl9hbmltYXRlT2ZmPSExO2JyZWFrO2Nhc2UidmFsdWVzIjpmb3IodGhpcy5fYW5pbWF0ZU9mZj0hMCx0aGlzLl9yZWZyZXNoVmFsdWUoKSxzPTA7bj5zO3MrPTEpdGhpcy5fY2hhbmdlKG51bGwscyk7dGhpcy5fYW5pbWF0ZU9mZj0hMTticmVhaztjYXNlIm1pbiI6Y2FzZSJtYXgiOnRoaXMuX2FuaW1hdGVPZmY9ITAsdGhpcy5fcmVmcmVzaFZhbHVlKCksdGhpcy5fYW5pbWF0ZU9mZj0hMTticmVhaztjYXNlInJhbmdlIjp0aGlzLl9hbmltYXRlT2ZmPSEwLHRoaXMuX3JlZnJlc2goKSx0aGlzLl9hbmltYXRlT2ZmPSExfX0sX3ZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5vcHRpb25zLnZhbHVlO3JldHVybiB0PXRoaXMuX3RyaW1BbGlnblZhbHVlKHQpfSxfdmFsdWVzOmZ1bmN0aW9uKHQpe3ZhciBlLGkscztpZihhcmd1bWVudHMubGVuZ3RoKXJldHVybiBlPXRoaXMub3B0aW9ucy52YWx1ZXNbdF0sZT10aGlzLl90cmltQWxpZ25WYWx1ZShlKTtpZih0aGlzLm9wdGlvbnMudmFsdWVzJiZ0aGlzLm9wdGlvbnMudmFsdWVzLmxlbmd0aCl7Zm9yKGk9dGhpcy5vcHRpb25zLnZhbHVlcy5zbGljZSgpLHM9MDtpLmxlbmd0aD5zO3MrPTEpaVtzXT10aGlzLl90cmltQWxpZ25WYWx1ZShpW3NdKTtyZXR1cm4gaX1yZXR1cm5bXX0sX3RyaW1BbGlnblZhbHVlOmZ1bmN0aW9uKHQpe2lmKHRoaXMuX3ZhbHVlTWluKCk+PXQpcmV0dXJuIHRoaXMuX3ZhbHVlTWluKCk7aWYodD49dGhpcy5fdmFsdWVNYXgoKSlyZXR1cm4gdGhpcy5fdmFsdWVNYXgoKTt2YXIgZT10aGlzLm9wdGlvbnMuc3RlcD4wP3RoaXMub3B0aW9ucy5zdGVwOjEsaT0odC10aGlzLl92YWx1ZU1pbigpKSVlLHM9dC1pO3JldHVybiAyKk1hdGguYWJzKGkpPj1lJiYocys9aT4wP2U6LWUpLHBhcnNlRmxvYXQocy50b0ZpeGVkKDUpKX0sX3ZhbHVlTWluOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMub3B0aW9ucy5taW59LF92YWx1ZU1heDpmdW5jdGlvbigpe3JldHVybiB0aGlzLm9wdGlvbnMubWF4fSxfcmVmcmVzaFZhbHVlOmZ1bmN0aW9uKCl7dmFyIGUsaSxzLG4sYSxvPXRoaXMub3B0aW9ucy5yYW5nZSxyPXRoaXMub3B0aW9ucyxsPXRoaXMsaD10aGlzLl9hbmltYXRlT2ZmPyExOnIuYW5pbWF0ZSx1PXt9O3RoaXMub3B0aW9ucy52YWx1ZXMmJnRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoP3RoaXMuaGFuZGxlcy5lYWNoKGZ1bmN0aW9uKHMpe2k9MTAwKigobC52YWx1ZXMocyktbC5fdmFsdWVNaW4oKSkvKGwuX3ZhbHVlTWF4KCktbC5fdmFsdWVNaW4oKSkpLHVbImhvcml6b250YWwiPT09bC5vcmllbnRhdGlvbj8ibGVmdCI6ImJvdHRvbSJdPWkrIiUiLHQodGhpcykuc3RvcCgxLDEpW2g/ImFuaW1hdGUiOiJjc3MiXSh1LHIuYW5pbWF0ZSksbC5vcHRpb25zLnJhbmdlPT09ITAmJigiaG9yaXpvbnRhbCI9PT1sLm9yaWVudGF0aW9uPygwPT09cyYmbC5yYW5nZS5zdG9wKDEsMSlbaD8iYW5pbWF0ZSI6ImNzcyJdKHtsZWZ0OmkrIiUifSxyLmFuaW1hdGUpLDE9PT1zJiZsLnJhbmdlW2g/ImFuaW1hdGUiOiJjc3MiXSh7d2lkdGg6aS1lKyIlIn0se3F1ZXVlOiExLGR1cmF0aW9uOnIuYW5pbWF0ZX0pKTooMD09PXMmJmwucmFuZ2Uuc3RvcCgxLDEpW2g/ImFuaW1hdGUiOiJjc3MiXSh7Ym90dG9tOmkrIiUifSxyLmFuaW1hdGUpLDE9PT1zJiZsLnJhbmdlW2g/ImFuaW1hdGUiOiJjc3MiXSh7aGVpZ2h0OmktZSsiJSJ9LHtxdWV1ZTohMSxkdXJhdGlvbjpyLmFuaW1hdGV9KSkpLGU9aX0pOihzPXRoaXMudmFsdWUoKSxuPXRoaXMuX3ZhbHVlTWluKCksYT10aGlzLl92YWx1ZU1heCgpLGk9YSE9PW4/MTAwKigocy1uKS8oYS1uKSk6MCx1WyJob3Jpem9udGFsIj09PXRoaXMub3JpZW50YXRpb24/ImxlZnQiOiJib3R0b20iXT1pKyIlIix0aGlzLmhhbmRsZS5zdG9wKDEsMSlbaD8iYW5pbWF0ZSI6ImNzcyJdKHUsci5hbmltYXRlKSwibWluIj09PW8mJiJob3Jpem9udGFsIj09PXRoaXMub3JpZW50YXRpb24mJnRoaXMucmFuZ2Uuc3RvcCgxLDEpW2g/ImFuaW1hdGUiOiJjc3MiXSh7d2lkdGg6aSsiJSJ9LHIuYW5pbWF0ZSksIm1heCI9PT1vJiYiaG9yaXpvbnRhbCI9PT10aGlzLm9yaWVudGF0aW9uJiZ0aGlzLnJhbmdlW2g/ImFuaW1hdGUiOiJjc3MiXSh7d2lkdGg6MTAwLWkrIiUifSx7cXVldWU6ITEsZHVyYXRpb246ci5hbmltYXRlfSksIm1pbiI9PT1vJiYidmVydGljYWwiPT09dGhpcy5vcmllbnRhdGlvbiYmdGhpcy5yYW5nZS5zdG9wKDEsMSlbaD8iYW5pbWF0ZSI6ImNzcyJdKHtoZWlnaHQ6aSsiJSJ9LHIuYW5pbWF0ZSksIm1heCI9PT1vJiYidmVydGljYWwiPT09dGhpcy5vcmllbnRhdGlvbiYmdGhpcy5yYW5nZVtoPyJhbmltYXRlIjoiY3NzIl0oe2hlaWdodDoxMDAtaSsiJSJ9LHtxdWV1ZTohMSxkdXJhdGlvbjpyLmFuaW1hdGV9KSl9LF9oYW5kbGVFdmVudHM6e2tleWRvd246ZnVuY3Rpb24oaSl7dmFyIHMsbixhLG8scj10KGkudGFyZ2V0KS5kYXRhKCJ1aS1zbGlkZXItaGFuZGxlLWluZGV4Iik7c3dpdGNoKGkua2V5Q29kZSl7Y2FzZSB0LnVpLmtleUNvZGUuSE9NRTpjYXNlIHQudWkua2V5Q29kZS5FTkQ6Y2FzZSB0LnVpLmtleUNvZGUuUEFHRV9VUDpjYXNlIHQudWkua2V5Q29kZS5QQUdFX0RPV046Y2FzZSB0LnVpLmtleUNvZGUuVVA6Y2FzZSB0LnVpLmtleUNvZGUuUklHSFQ6Y2FzZSB0LnVpLmtleUNvZGUuRE9XTjpjYXNlIHQudWkua2V5Q29kZS5MRUZUOmlmKGkucHJldmVudERlZmF1bHQoKSwhdGhpcy5fa2V5U2xpZGluZyYmKHRoaXMuX2tleVNsaWRpbmc9ITAsdChpLnRhcmdldCkuYWRkQ2xhc3MoInVpLXN0YXRlLWFjdGl2ZSIpLHM9dGhpcy5fc3RhcnQoaSxyKSxzPT09ITEpKXJldHVybn1zd2l0Y2gobz10aGlzLm9wdGlvbnMuc3RlcCxuPWE9dGhpcy5vcHRpb25zLnZhbHVlcyYmdGhpcy5vcHRpb25zLnZhbHVlcy5sZW5ndGg/dGhpcy52YWx1ZXMocik6dGhpcy52YWx1ZSgpLGkua2V5Q29kZSl7Y2FzZSB0LnVpLmtleUNvZGUuSE9NRTphPXRoaXMuX3ZhbHVlTWluKCk7YnJlYWs7Y2FzZSB0LnVpLmtleUNvZGUuRU5EOmE9dGhpcy5fdmFsdWVNYXgoKTticmVhaztjYXNlIHQudWkua2V5Q29kZS5QQUdFX1VQOmE9dGhpcy5fdHJpbUFsaWduVmFsdWUobisodGhpcy5fdmFsdWVNYXgoKS10aGlzLl92YWx1ZU1pbigpKS9lKTticmVhaztjYXNlIHQudWkua2V5Q29kZS5QQUdFX0RPV046YT10aGlzLl90cmltQWxpZ25WYWx1ZShuLSh0aGlzLl92YWx1ZU1heCgpLXRoaXMuX3ZhbHVlTWluKCkpL2UpO2JyZWFrO2Nhc2UgdC51aS5rZXlDb2RlLlVQOmNhc2UgdC51aS5rZXlDb2RlLlJJR0hUOmlmKG49PT10aGlzLl92YWx1ZU1heCgpKXJldHVybjthPXRoaXMuX3RyaW1BbGlnblZhbHVlKG4rbyk7YnJlYWs7Y2FzZSB0LnVpLmtleUNvZGUuRE9XTjpjYXNlIHQudWkua2V5Q29kZS5MRUZUOmlmKG49PT10aGlzLl92YWx1ZU1pbigpKXJldHVybjthPXRoaXMuX3RyaW1BbGlnblZhbHVlKG4tbyl9dGhpcy5fc2xpZGUoaSxyLGEpfSxjbGljazpmdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCl9LGtleXVwOmZ1bmN0aW9uKGUpe3ZhciBpPXQoZS50YXJnZXQpLmRhdGEoInVpLXNsaWRlci1oYW5kbGUtaW5kZXgiKTt0aGlzLl9rZXlTbGlkaW5nJiYodGhpcy5fa2V5U2xpZGluZz0hMSx0aGlzLl9zdG9wKGUsaSksdGhpcy5fY2hhbmdlKGUsaSksdChlLnRhcmdldCkucmVtb3ZlQ2xhc3MoInVpLXN0YXRlLWFjdGl2ZSIpKX19fSl9KShqUXVlcnkpOyhmdW5jdGlvbih0KXtmdW5jdGlvbiBlKHQsZSxpKXtyZXR1cm4gdD5lJiZlK2k+dH1mdW5jdGlvbiBpKHQpe3JldHVybi9sZWZ0fHJpZ2h0Ly50ZXN0KHQuY3NzKCJmbG9hdCIpKXx8L2lubGluZXx0YWJsZS1jZWxsLy50ZXN0KHQuY3NzKCJkaXNwbGF5IikpfXQud2lkZ2V0KCJ1aS5zb3J0YWJsZSIsdC51aS5tb3VzZSx7dmVyc2lvbjoiMS4xMC40Iix3aWRnZXRFdmVudFByZWZpeDoic29ydCIscmVhZHk6ITEsb3B0aW9uczp7YXBwZW5kVG86InBhcmVudCIsYXhpczohMSxjb25uZWN0V2l0aDohMSxjb250YWlubWVudDohMSxjdXJzb3I6ImF1dG8iLGN1cnNvckF0OiExLGRyb3BPbkVtcHR5OiEwLGZvcmNlUGxhY2Vob2xkZXJTaXplOiExLGZvcmNlSGVscGVyU2l6ZTohMSxncmlkOiExLGhhbmRsZTohMSxoZWxwZXI6Im9yaWdpbmFsIixpdGVtczoiPiAqIixvcGFjaXR5OiExLHBsYWNlaG9sZGVyOiExLHJldmVydDohMSxzY3JvbGw6ITAsc2Nyb2xsU2Vuc2l0aXZpdHk6MjAsc2Nyb2xsU3BlZWQ6MjAsc2NvcGU6ImRlZmF1bHQiLHRvbGVyYW5jZToiaW50ZXJzZWN0Iix6SW5kZXg6MWUzLGFjdGl2YXRlOm51bGwsYmVmb3JlU3RvcDpudWxsLGNoYW5nZTpudWxsLGRlYWN0aXZhdGU6bnVsbCxvdXQ6bnVsbCxvdmVyOm51bGwscmVjZWl2ZTpudWxsLHJlbW92ZTpudWxsLHNvcnQ6bnVsbCxzdGFydDpudWxsLHN0b3A6bnVsbCx1cGRhdGU6bnVsbH0sX2NyZWF0ZTpmdW5jdGlvbigpe3ZhciB0PXRoaXMub3B0aW9uczt0aGlzLmNvbnRhaW5lckNhY2hlPXt9LHRoaXMuZWxlbWVudC5hZGRDbGFzcygidWktc29ydGFibGUiKSx0aGlzLnJlZnJlc2goKSx0aGlzLmZsb2F0aW5nPXRoaXMuaXRlbXMubGVuZ3RoPyJ4Ij09PXQuYXhpc3x8aSh0aGlzLml0ZW1zWzBdLml0ZW0pOiExLHRoaXMub2Zmc2V0PXRoaXMuZWxlbWVudC5vZmZzZXQoKSx0aGlzLl9tb3VzZUluaXQoKSx0aGlzLnJlYWR5PSEwfSxfZGVzdHJveTpmdW5jdGlvbigpe3RoaXMuZWxlbWVudC5yZW1vdmVDbGFzcygidWktc29ydGFibGUgdWktc29ydGFibGUtZGlzYWJsZWQiKSx0aGlzLl9tb3VzZURlc3Ryb3koKTtmb3IodmFyIHQ9dGhpcy5pdGVtcy5sZW5ndGgtMTt0Pj0wO3QtLSl0aGlzLml0ZW1zW3RdLml0ZW0ucmVtb3ZlRGF0YSh0aGlzLndpZGdldE5hbWUrIi1pdGVtIik7cmV0dXJuIHRoaXN9LF9zZXRPcHRpb246ZnVuY3Rpb24oZSxpKXsiZGlzYWJsZWQiPT09ZT8odGhpcy5vcHRpb25zW2VdPWksdGhpcy53aWRnZXQoKS50b2dnbGVDbGFzcygidWktc29ydGFibGUtZGlzYWJsZWQiLCEhaSkpOnQuV2lkZ2V0LnByb3RvdHlwZS5fc2V0T3B0aW9uLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0sX21vdXNlQ2FwdHVyZTpmdW5jdGlvbihlLGkpe3ZhciBzPW51bGwsbj0hMSxvPXRoaXM7cmV0dXJuIHRoaXMucmV2ZXJ0aW5nPyExOnRoaXMub3B0aW9ucy5kaXNhYmxlZHx8InN0YXRpYyI9PT10aGlzLm9wdGlvbnMudHlwZT8hMToodGhpcy5fcmVmcmVzaEl0ZW1zKGUpLHQoZS50YXJnZXQpLnBhcmVudHMoKS5lYWNoKGZ1bmN0aW9uKCl7cmV0dXJuIHQuZGF0YSh0aGlzLG8ud2lkZ2V0TmFtZSsiLWl0ZW0iKT09PW8/KHM9dCh0aGlzKSwhMSk6dW5kZWZpbmVkfSksdC5kYXRhKGUudGFyZ2V0LG8ud2lkZ2V0TmFtZSsiLWl0ZW0iKT09PW8mJihzPXQoZS50YXJnZXQpKSxzPyF0aGlzLm9wdGlvbnMuaGFuZGxlfHxpfHwodCh0aGlzLm9wdGlvbnMuaGFuZGxlLHMpLmZpbmQoIioiKS5hZGRCYWNrKCkuZWFjaChmdW5jdGlvbigpe3RoaXM9PT1lLnRhcmdldCYmKG49ITApfSksbik/KHRoaXMuY3VycmVudEl0ZW09cyx0aGlzLl9yZW1vdmVDdXJyZW50c0Zyb21JdGVtcygpLCEwKTohMTohMSl9LF9tb3VzZVN0YXJ0OmZ1bmN0aW9uKGUsaSxzKXt2YXIgbixvLGE9dGhpcy5vcHRpb25zO2lmKHRoaXMuY3VycmVudENvbnRhaW5lcj10aGlzLHRoaXMucmVmcmVzaFBvc2l0aW9ucygpLHRoaXMuaGVscGVyPXRoaXMuX2NyZWF0ZUhlbHBlcihlKSx0aGlzLl9jYWNoZUhlbHBlclByb3BvcnRpb25zKCksdGhpcy5fY2FjaGVNYXJnaW5zKCksdGhpcy5zY3JvbGxQYXJlbnQ9dGhpcy5oZWxwZXIuc2Nyb2xsUGFyZW50KCksdGhpcy5vZmZzZXQ9dGhpcy5jdXJyZW50SXRlbS5vZmZzZXQoKSx0aGlzLm9mZnNldD17dG9wOnRoaXMub2Zmc2V0LnRvcC10aGlzLm1hcmdpbnMudG9wLGxlZnQ6dGhpcy5vZmZzZXQubGVmdC10aGlzLm1hcmdpbnMubGVmdH0sdC5leHRlbmQodGhpcy5vZmZzZXQse2NsaWNrOntsZWZ0OmUucGFnZVgtdGhpcy5vZmZzZXQubGVmdCx0b3A6ZS5wYWdlWS10aGlzLm9mZnNldC50b3B9LHBhcmVudDp0aGlzLl9nZXRQYXJlbnRPZmZzZXQoKSxyZWxhdGl2ZTp0aGlzLl9nZXRSZWxhdGl2ZU9mZnNldCgpfSksdGhpcy5oZWxwZXIuY3NzKCJwb3NpdGlvbiIsImFic29sdXRlIiksdGhpcy5jc3NQb3NpdGlvbj10aGlzLmhlbHBlci5jc3MoInBvc2l0aW9uIiksdGhpcy5vcmlnaW5hbFBvc2l0aW9uPXRoaXMuX2dlbmVyYXRlUG9zaXRpb24oZSksdGhpcy5vcmlnaW5hbFBhZ2VYPWUucGFnZVgsdGhpcy5vcmlnaW5hbFBhZ2VZPWUucGFnZVksYS5jdXJzb3JBdCYmdGhpcy5fYWRqdXN0T2Zmc2V0RnJvbUhlbHBlcihhLmN1cnNvckF0KSx0aGlzLmRvbVBvc2l0aW9uPXtwcmV2OnRoaXMuY3VycmVudEl0ZW0ucHJldigpWzBdLHBhcmVudDp0aGlzLmN1cnJlbnRJdGVtLnBhcmVudCgpWzBdfSx0aGlzLmhlbHBlclswXSE9PXRoaXMuY3VycmVudEl0ZW1bMF0mJnRoaXMuY3VycmVudEl0ZW0uaGlkZSgpLHRoaXMuX2NyZWF0ZVBsYWNlaG9sZGVyKCksYS5jb250YWlubWVudCYmdGhpcy5fc2V0Q29udGFpbm1lbnQoKSxhLmN1cnNvciYmImF1dG8iIT09YS5jdXJzb3ImJihvPXRoaXMuZG9jdW1lbnQuZmluZCgiYm9keSIpLHRoaXMuc3RvcmVkQ3Vyc29yPW8uY3NzKCJjdXJzb3IiKSxvLmNzcygiY3Vyc29yIixhLmN1cnNvciksdGhpcy5zdG9yZWRTdHlsZXNoZWV0PXQoIjxzdHlsZT4qeyBjdXJzb3I6ICIrYS5jdXJzb3IrIiAhaW1wb3J0YW50OyB9PC9zdHlsZT4iKS5hcHBlbmRUbyhvKSksYS5vcGFjaXR5JiYodGhpcy5oZWxwZXIuY3NzKCJvcGFjaXR5IikmJih0aGlzLl9zdG9yZWRPcGFjaXR5PXRoaXMuaGVscGVyLmNzcygib3BhY2l0eSIpKSx0aGlzLmhlbHBlci5jc3MoIm9wYWNpdHkiLGEub3BhY2l0eSkpLGEuekluZGV4JiYodGhpcy5oZWxwZXIuY3NzKCJ6SW5kZXgiKSYmKHRoaXMuX3N0b3JlZFpJbmRleD10aGlzLmhlbHBlci5jc3MoInpJbmRleCIpKSx0aGlzLmhlbHBlci5jc3MoInpJbmRleCIsYS56SW5kZXgpKSx0aGlzLnNjcm9sbFBhcmVudFswXSE9PWRvY3VtZW50JiYiSFRNTCIhPT10aGlzLnNjcm9sbFBhcmVudFswXS50YWdOYW1lJiYodGhpcy5vdmVyZmxvd09mZnNldD10aGlzLnNjcm9sbFBhcmVudC5vZmZzZXQoKSksdGhpcy5fdHJpZ2dlcigic3RhcnQiLGUsdGhpcy5fdWlIYXNoKCkpLHRoaXMuX3ByZXNlcnZlSGVscGVyUHJvcG9ydGlvbnN8fHRoaXMuX2NhY2hlSGVscGVyUHJvcG9ydGlvbnMoKSwhcylmb3Iobj10aGlzLmNvbnRhaW5lcnMubGVuZ3RoLTE7bj49MDtuLS0pdGhpcy5jb250YWluZXJzW25dLl90cmlnZ2VyKCJhY3RpdmF0ZSIsZSx0aGlzLl91aUhhc2godGhpcykpO3JldHVybiB0LnVpLmRkbWFuYWdlciYmKHQudWkuZGRtYW5hZ2VyLmN1cnJlbnQ9dGhpcyksdC51aS5kZG1hbmFnZXImJiFhLmRyb3BCZWhhdmlvdXImJnQudWkuZGRtYW5hZ2VyLnByZXBhcmVPZmZzZXRzKHRoaXMsZSksdGhpcy5kcmFnZ2luZz0hMCx0aGlzLmhlbHBlci5hZGRDbGFzcygidWktc29ydGFibGUtaGVscGVyIiksdGhpcy5fbW91c2VEcmFnKGUpLCEwfSxfbW91c2VEcmFnOmZ1bmN0aW9uKGUpe3ZhciBpLHMsbixvLGE9dGhpcy5vcHRpb25zLHI9ITE7Zm9yKHRoaXMucG9zaXRpb249dGhpcy5fZ2VuZXJhdGVQb3NpdGlvbihlKSx0aGlzLnBvc2l0aW9uQWJzPXRoaXMuX2NvbnZlcnRQb3NpdGlvblRvKCJhYnNvbHV0ZSIpLHRoaXMubGFzdFBvc2l0aW9uQWJzfHwodGhpcy5sYXN0UG9zaXRpb25BYnM9dGhpcy5wb3NpdGlvbkFicyksdGhpcy5vcHRpb25zLnNjcm9sbCYmKHRoaXMuc2Nyb2xsUGFyZW50WzBdIT09ZG9jdW1lbnQmJiJIVE1MIiE9PXRoaXMuc2Nyb2xsUGFyZW50WzBdLnRhZ05hbWU/KHRoaXMub3ZlcmZsb3dPZmZzZXQudG9wK3RoaXMuc2Nyb2xsUGFyZW50WzBdLm9mZnNldEhlaWdodC1lLnBhZ2VZPGEuc2Nyb2xsU2Vuc2l0aXZpdHk/dGhpcy5zY3JvbGxQYXJlbnRbMF0uc2Nyb2xsVG9wPXI9dGhpcy5zY3JvbGxQYXJlbnRbMF0uc2Nyb2xsVG9wK2Euc2Nyb2xsU3BlZWQ6ZS5wYWdlWS10aGlzLm92ZXJmbG93T2Zmc2V0LnRvcDxhLnNjcm9sbFNlbnNpdGl2aXR5JiYodGhpcy5zY3JvbGxQYXJlbnRbMF0uc2Nyb2xsVG9wPXI9dGhpcy5zY3JvbGxQYXJlbnRbMF0uc2Nyb2xsVG9wLWEuc2Nyb2xsU3BlZWQpLHRoaXMub3ZlcmZsb3dPZmZzZXQubGVmdCt0aGlzLnNjcm9sbFBhcmVudFswXS5vZmZzZXRXaWR0aC1lLnBhZ2VYPGEuc2Nyb2xsU2Vuc2l0aXZpdHk/dGhpcy5zY3JvbGxQYXJlbnRbMF0uc2Nyb2xsTGVmdD1yPXRoaXMuc2Nyb2xsUGFyZW50WzBdLnNjcm9sbExlZnQrYS5zY3JvbGxTcGVlZDplLnBhZ2VYLXRoaXMub3ZlcmZsb3dPZmZzZXQubGVmdDxhLnNjcm9sbFNlbnNpdGl2aXR5JiYodGhpcy5zY3JvbGxQYXJlbnRbMF0uc2Nyb2xsTGVmdD1yPXRoaXMuc2Nyb2xsUGFyZW50WzBdLnNjcm9sbExlZnQtYS5zY3JvbGxTcGVlZCkpOihlLnBhZ2VZLXQoZG9jdW1lbnQpLnNjcm9sbFRvcCgpPGEuc2Nyb2xsU2Vuc2l0aXZpdHk/cj10KGRvY3VtZW50KS5zY3JvbGxUb3AodChkb2N1bWVudCkuc2Nyb2xsVG9wKCktYS5zY3JvbGxTcGVlZCk6dCh3aW5kb3cpLmhlaWdodCgpLShlLnBhZ2VZLXQoZG9jdW1lbnQpLnNjcm9sbFRvcCgpKTxhLnNjcm9sbFNlbnNpdGl2aXR5JiYocj10KGRvY3VtZW50KS5zY3JvbGxUb3AodChkb2N1bWVudCkuc2Nyb2xsVG9wKCkrYS5zY3JvbGxTcGVlZCkpLGUucGFnZVgtdChkb2N1bWVudCkuc2Nyb2xsTGVmdCgpPGEuc2Nyb2xsU2Vuc2l0aXZpdHk/cj10KGRvY3VtZW50KS5zY3JvbGxMZWZ0KHQoZG9jdW1lbnQpLnNjcm9sbExlZnQoKS1hLnNjcm9sbFNwZWVkKTp0KHdpbmRvdykud2lkdGgoKS0oZS5wYWdlWC10KGRvY3VtZW50KS5zY3JvbGxMZWZ0KCkpPGEuc2Nyb2xsU2Vuc2l0aXZpdHkmJihyPXQoZG9jdW1lbnQpLnNjcm9sbExlZnQodChkb2N1bWVudCkuc2Nyb2xsTGVmdCgpK2Euc2Nyb2xsU3BlZWQpKSksciE9PSExJiZ0LnVpLmRkbWFuYWdlciYmIWEuZHJvcEJlaGF2aW91ciYmdC51aS5kZG1hbmFnZXIucHJlcGFyZU9mZnNldHModGhpcyxlKSksdGhpcy5wb3NpdGlvbkFicz10aGlzLl9jb252ZXJ0UG9zaXRpb25UbygiYWJzb2x1dGUiKSx0aGlzLm9wdGlvbnMuYXhpcyYmInkiPT09dGhpcy5vcHRpb25zLmF4aXN8fCh0aGlzLmhlbHBlclswXS5zdHlsZS5sZWZ0PXRoaXMucG9zaXRpb24ubGVmdCsicHgiKSx0aGlzLm9wdGlvbnMuYXhpcyYmIngiPT09dGhpcy5vcHRpb25zLmF4aXN8fCh0aGlzLmhlbHBlclswXS5zdHlsZS50b3A9dGhpcy5wb3NpdGlvbi50b3ArInB4IiksaT10aGlzLml0ZW1zLmxlbmd0aC0xO2k+PTA7aS0tKWlmKHM9dGhpcy5pdGVtc1tpXSxuPXMuaXRlbVswXSxvPXRoaXMuX2ludGVyc2VjdHNXaXRoUG9pbnRlcihzKSxvJiZzLmluc3RhbmNlPT09dGhpcy5jdXJyZW50Q29udGFpbmVyJiZuIT09dGhpcy5jdXJyZW50SXRlbVswXSYmdGhpcy5wbGFjZWhvbGRlclsxPT09bz8ibmV4dCI6InByZXYiXSgpWzBdIT09biYmIXQuY29udGFpbnModGhpcy5wbGFjZWhvbGRlclswXSxuKSYmKCJzZW1pLWR5bmFtaWMiPT09dGhpcy5vcHRpb25zLnR5cGU/IXQuY29udGFpbnModGhpcy5lbGVtZW50WzBdLG4pOiEwKSl7aWYodGhpcy5kaXJlY3Rpb249MT09PW8/ImRvd24iOiJ1cCIsInBvaW50ZXIiIT09dGhpcy5vcHRpb25zLnRvbGVyYW5jZSYmIXRoaXMuX2ludGVyc2VjdHNXaXRoU2lkZXMocykpYnJlYWs7dGhpcy5fcmVhcnJhbmdlKGUscyksdGhpcy5fdHJpZ2dlcigiY2hhbmdlIixlLHRoaXMuX3VpSGFzaCgpKTticmVha31yZXR1cm4gdGhpcy5fY29udGFjdENvbnRhaW5lcnMoZSksdC51aS5kZG1hbmFnZXImJnQudWkuZGRtYW5hZ2VyLmRyYWcodGhpcyxlKSx0aGlzLl90cmlnZ2VyKCJzb3J0IixlLHRoaXMuX3VpSGFzaCgpKSx0aGlzLmxhc3RQb3NpdGlvbkFicz10aGlzLnBvc2l0aW9uQWJzLCExfSxfbW91c2VTdG9wOmZ1bmN0aW9uKGUsaSl7aWYoZSl7aWYodC51aS5kZG1hbmFnZXImJiF0aGlzLm9wdGlvbnMuZHJvcEJlaGF2aW91ciYmdC51aS5kZG1hbmFnZXIuZHJvcCh0aGlzLGUpLHRoaXMub3B0aW9ucy5yZXZlcnQpe3ZhciBzPXRoaXMsbj10aGlzLnBsYWNlaG9sZGVyLm9mZnNldCgpLG89dGhpcy5vcHRpb25zLmF4aXMsYT17fTtvJiYieCIhPT1vfHwoYS5sZWZ0PW4ubGVmdC10aGlzLm9mZnNldC5wYXJlbnQubGVmdC10aGlzLm1hcmdpbnMubGVmdCsodGhpcy5vZmZzZXRQYXJlbnRbMF09PT1kb2N1bWVudC5ib2R5PzA6dGhpcy5vZmZzZXRQYXJlbnRbMF0uc2Nyb2xsTGVmdCkpLG8mJiJ5IiE9PW98fChhLnRvcD1uLnRvcC10aGlzLm9mZnNldC5wYXJlbnQudG9wLXRoaXMubWFyZ2lucy50b3ArKHRoaXMub2Zmc2V0UGFyZW50WzBdPT09ZG9jdW1lbnQuYm9keT8wOnRoaXMub2Zmc2V0UGFyZW50WzBdLnNjcm9sbFRvcCkpLHRoaXMucmV2ZXJ0aW5nPSEwLHQodGhpcy5oZWxwZXIpLmFuaW1hdGUoYSxwYXJzZUludCh0aGlzLm9wdGlvbnMucmV2ZXJ0LDEwKXx8NTAwLGZ1bmN0aW9uKCl7cy5fY2xlYXIoZSl9KX1lbHNlIHRoaXMuX2NsZWFyKGUsaSk7cmV0dXJuITF9fSxjYW5jZWw6ZnVuY3Rpb24oKXtpZih0aGlzLmRyYWdnaW5nKXt0aGlzLl9tb3VzZVVwKHt0YXJnZXQ6bnVsbH0pLCJvcmlnaW5hbCI9PT10aGlzLm9wdGlvbnMuaGVscGVyP3RoaXMuY3VycmVudEl0ZW0uY3NzKHRoaXMuX3N0b3JlZENTUykucmVtb3ZlQ2xhc3MoInVpLXNvcnRhYmxlLWhlbHBlciIpOnRoaXMuY3VycmVudEl0ZW0uc2hvdygpO2Zvcih2YXIgZT10aGlzLmNvbnRhaW5lcnMubGVuZ3RoLTE7ZT49MDtlLS0pdGhpcy5jb250YWluZXJzW2VdLl90cmlnZ2VyKCJkZWFjdGl2YXRlIixudWxsLHRoaXMuX3VpSGFzaCh0aGlzKSksdGhpcy5jb250YWluZXJzW2VdLmNvbnRhaW5lckNhY2hlLm92ZXImJih0aGlzLmNvbnRhaW5lcnNbZV0uX3RyaWdnZXIoIm91dCIsbnVsbCx0aGlzLl91aUhhc2godGhpcykpLHRoaXMuY29udGFpbmVyc1tlXS5jb250YWluZXJDYWNoZS5vdmVyPTApfXJldHVybiB0aGlzLnBsYWNlaG9sZGVyJiYodGhpcy5wbGFjZWhvbGRlclswXS5wYXJlbnROb2RlJiZ0aGlzLnBsYWNlaG9sZGVyWzBdLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGhpcy5wbGFjZWhvbGRlclswXSksIm9yaWdpbmFsIiE9PXRoaXMub3B0aW9ucy5oZWxwZXImJnRoaXMuaGVscGVyJiZ0aGlzLmhlbHBlclswXS5wYXJlbnROb2RlJiZ0aGlzLmhlbHBlci5yZW1vdmUoKSx0LmV4dGVuZCh0aGlzLHtoZWxwZXI6bnVsbCxkcmFnZ2luZzohMSxyZXZlcnRpbmc6ITEsX25vRmluYWxTb3J0Om51bGx9KSx0aGlzLmRvbVBvc2l0aW9uLnByZXY/dCh0aGlzLmRvbVBvc2l0aW9uLnByZXYpLmFmdGVyKHRoaXMuY3VycmVudEl0ZW0pOnQodGhpcy5kb21Qb3NpdGlvbi5wYXJlbnQpLnByZXBlbmQodGhpcy5jdXJyZW50SXRlbSkpLHRoaXN9LHNlcmlhbGl6ZTpmdW5jdGlvbihlKXt2YXIgaT10aGlzLl9nZXRJdGVtc0FzalF1ZXJ5KGUmJmUuY29ubmVjdGVkKSxzPVtdO3JldHVybiBlPWV8fHt9LHQoaSkuZWFjaChmdW5jdGlvbigpe3ZhciBpPSh0KGUuaXRlbXx8dGhpcykuYXR0cihlLmF0dHJpYnV0ZXx8ImlkIil8fCIiKS5tYXRjaChlLmV4cHJlc3Npb258fC8oLispW1wtPV9dKC4rKS8pO2kmJnMucHVzaCgoZS5rZXl8fGlbMV0rIltdIikrIj0iKyhlLmtleSYmZS5leHByZXNzaW9uP2lbMV06aVsyXSkpfSksIXMubGVuZ3RoJiZlLmtleSYmcy5wdXNoKGUua2V5KyI9Iikscy5qb2luKCImIil9LHRvQXJyYXk6ZnVuY3Rpb24oZSl7dmFyIGk9dGhpcy5fZ2V0SXRlbXNBc2pRdWVyeShlJiZlLmNvbm5lY3RlZCkscz1bXTtyZXR1cm4gZT1lfHx7fSxpLmVhY2goZnVuY3Rpb24oKXtzLnB1c2godChlLml0ZW18fHRoaXMpLmF0dHIoZS5hdHRyaWJ1dGV8fCJpZCIpfHwiIil9KSxzfSxfaW50ZXJzZWN0c1dpdGg6ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5wb3NpdGlvbkFicy5sZWZ0LGk9ZSt0aGlzLmhlbHBlclByb3BvcnRpb25zLndpZHRoLHM9dGhpcy5wb3NpdGlvbkFicy50b3Asbj1zK3RoaXMuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0LG89dC5sZWZ0LGE9byt0LndpZHRoLHI9dC50b3AsaD1yK3QuaGVpZ2h0LGw9dGhpcy5vZmZzZXQuY2xpY2sudG9wLGM9dGhpcy5vZmZzZXQuY2xpY2subGVmdCx1PSJ4Ij09PXRoaXMub3B0aW9ucy5heGlzfHxzK2w+ciYmaD5zK2wsZD0ieSI9PT10aGlzLm9wdGlvbnMuYXhpc3x8ZStjPm8mJmE+ZStjLHA9dSYmZDtyZXR1cm4icG9pbnRlciI9PT10aGlzLm9wdGlvbnMudG9sZXJhbmNlfHx0aGlzLm9wdGlvbnMuZm9yY2VQb2ludGVyRm9yQ29udGFpbmVyc3x8InBvaW50ZXIiIT09dGhpcy5vcHRpb25zLnRvbGVyYW5jZSYmdGhpcy5oZWxwZXJQcm9wb3J0aW9uc1t0aGlzLmZsb2F0aW5nPyJ3aWR0aCI6ImhlaWdodCJdPnRbdGhpcy5mbG9hdGluZz8id2lkdGgiOiJoZWlnaHQiXT9wOmUrdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aC8yPm8mJmE+aS10aGlzLmhlbHBlclByb3BvcnRpb25zLndpZHRoLzImJnMrdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQvMj5yJiZoPm4tdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQvMn0sX2ludGVyc2VjdHNXaXRoUG9pbnRlcjpmdW5jdGlvbih0KXt2YXIgaT0ieCI9PT10aGlzLm9wdGlvbnMuYXhpc3x8ZSh0aGlzLnBvc2l0aW9uQWJzLnRvcCt0aGlzLm9mZnNldC5jbGljay50b3AsdC50b3AsdC5oZWlnaHQpLHM9InkiPT09dGhpcy5vcHRpb25zLmF4aXN8fGUodGhpcy5wb3NpdGlvbkFicy5sZWZ0K3RoaXMub2Zmc2V0LmNsaWNrLmxlZnQsdC5sZWZ0LHQud2lkdGgpLG49aSYmcyxvPXRoaXMuX2dldERyYWdWZXJ0aWNhbERpcmVjdGlvbigpLGE9dGhpcy5fZ2V0RHJhZ0hvcml6b250YWxEaXJlY3Rpb24oKTtyZXR1cm4gbj90aGlzLmZsb2F0aW5nP2EmJiJyaWdodCI9PT1hfHwiZG93biI9PT1vPzI6MTpvJiYoImRvd24iPT09bz8yOjEpOiExfSxfaW50ZXJzZWN0c1dpdGhTaWRlczpmdW5jdGlvbih0KXt2YXIgaT1lKHRoaXMucG9zaXRpb25BYnMudG9wK3RoaXMub2Zmc2V0LmNsaWNrLnRvcCx0LnRvcCt0LmhlaWdodC8yLHQuaGVpZ2h0KSxzPWUodGhpcy5wb3NpdGlvbkFicy5sZWZ0K3RoaXMub2Zmc2V0LmNsaWNrLmxlZnQsdC5sZWZ0K3Qud2lkdGgvMix0LndpZHRoKSxuPXRoaXMuX2dldERyYWdWZXJ0aWNhbERpcmVjdGlvbigpLG89dGhpcy5fZ2V0RHJhZ0hvcml6b250YWxEaXJlY3Rpb24oKTtyZXR1cm4gdGhpcy5mbG9hdGluZyYmbz8icmlnaHQiPT09byYmc3x8ImxlZnQiPT09byYmIXM6biYmKCJkb3duIj09PW4mJml8fCJ1cCI9PT1uJiYhaSl9LF9nZXREcmFnVmVydGljYWxEaXJlY3Rpb246ZnVuY3Rpb24oKXt2YXIgdD10aGlzLnBvc2l0aW9uQWJzLnRvcC10aGlzLmxhc3RQb3NpdGlvbkFicy50b3A7cmV0dXJuIDAhPT10JiYodD4wPyJkb3duIjoidXAiKX0sX2dldERyYWdIb3Jpem9udGFsRGlyZWN0aW9uOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5wb3NpdGlvbkFicy5sZWZ0LXRoaXMubGFzdFBvc2l0aW9uQWJzLmxlZnQ7cmV0dXJuIDAhPT10JiYodD4wPyJyaWdodCI6ImxlZnQiKX0scmVmcmVzaDpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fcmVmcmVzaEl0ZW1zKHQpLHRoaXMucmVmcmVzaFBvc2l0aW9ucygpLHRoaXN9LF9jb25uZWN0V2l0aDpmdW5jdGlvbigpe3ZhciB0PXRoaXMub3B0aW9ucztyZXR1cm4gdC5jb25uZWN0V2l0aC5jb25zdHJ1Y3Rvcj09PVN0cmluZz9bdC5jb25uZWN0V2l0aF06dC5jb25uZWN0V2l0aH0sX2dldEl0ZW1zQXNqUXVlcnk6ZnVuY3Rpb24oZSl7ZnVuY3Rpb24gaSgpe3IucHVzaCh0aGlzKX12YXIgcyxuLG8sYSxyPVtdLGg9W10sbD10aGlzLl9jb25uZWN0V2l0aCgpO2lmKGwmJmUpZm9yKHM9bC5sZW5ndGgtMTtzPj0wO3MtLSlmb3Iobz10KGxbc10pLG49by5sZW5ndGgtMTtuPj0wO24tLSlhPXQuZGF0YShvW25dLHRoaXMud2lkZ2V0RnVsbE5hbWUpLGEmJmEhPT10aGlzJiYhYS5vcHRpb25zLmRpc2FibGVkJiZoLnB1c2goW3QuaXNGdW5jdGlvbihhLm9wdGlvbnMuaXRlbXMpP2Eub3B0aW9ucy5pdGVtcy5jYWxsKGEuZWxlbWVudCk6dChhLm9wdGlvbnMuaXRlbXMsYS5lbGVtZW50KS5ub3QoIi51aS1zb3J0YWJsZS1oZWxwZXIiKS5ub3QoIi51aS1zb3J0YWJsZS1wbGFjZWhvbGRlciIpLGFdKTtmb3IoaC5wdXNoKFt0LmlzRnVuY3Rpb24odGhpcy5vcHRpb25zLml0ZW1zKT90aGlzLm9wdGlvbnMuaXRlbXMuY2FsbCh0aGlzLmVsZW1lbnQsbnVsbCx7b3B0aW9uczp0aGlzLm9wdGlvbnMsaXRlbTp0aGlzLmN1cnJlbnRJdGVtfSk6dCh0aGlzLm9wdGlvbnMuaXRlbXMsdGhpcy5lbGVtZW50KS5ub3QoIi51aS1zb3J0YWJsZS1oZWxwZXIiKS5ub3QoIi51aS1zb3J0YWJsZS1wbGFjZWhvbGRlciIpLHRoaXNdKSxzPWgubGVuZ3RoLTE7cz49MDtzLS0paFtzXVswXS5lYWNoKGkpO3JldHVybiB0KHIpfSxfcmVtb3ZlQ3VycmVudHNGcm9tSXRlbXM6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLmN1cnJlbnRJdGVtLmZpbmQoIjpkYXRhKCIrdGhpcy53aWRnZXROYW1lKyItaXRlbSkiKTt0aGlzLml0ZW1zPXQuZ3JlcCh0aGlzLml0ZW1zLGZ1bmN0aW9uKHQpe2Zvcih2YXIgaT0wO2UubGVuZ3RoPmk7aSsrKWlmKGVbaV09PT10Lml0ZW1bMF0pcmV0dXJuITE7cmV0dXJuITB9KX0sX3JlZnJlc2hJdGVtczpmdW5jdGlvbihlKXt0aGlzLml0ZW1zPVtdLHRoaXMuY29udGFpbmVycz1bdGhpc107dmFyIGkscyxuLG8sYSxyLGgsbCxjPXRoaXMuaXRlbXMsdT1bW3QuaXNGdW5jdGlvbih0aGlzLm9wdGlvbnMuaXRlbXMpP3RoaXMub3B0aW9ucy5pdGVtcy5jYWxsKHRoaXMuZWxlbWVudFswXSxlLHtpdGVtOnRoaXMuY3VycmVudEl0ZW19KTp0KHRoaXMub3B0aW9ucy5pdGVtcyx0aGlzLmVsZW1lbnQpLHRoaXNdXSxkPXRoaXMuX2Nvbm5lY3RXaXRoKCk7aWYoZCYmdGhpcy5yZWFkeSlmb3IoaT1kLmxlbmd0aC0xO2k+PTA7aS0tKWZvcihuPXQoZFtpXSkscz1uLmxlbmd0aC0xO3M+PTA7cy0tKW89dC5kYXRhKG5bc10sdGhpcy53aWRnZXRGdWxsTmFtZSksbyYmbyE9PXRoaXMmJiFvLm9wdGlvbnMuZGlzYWJsZWQmJih1LnB1c2goW3QuaXNGdW5jdGlvbihvLm9wdGlvbnMuaXRlbXMpP28ub3B0aW9ucy5pdGVtcy5jYWxsKG8uZWxlbWVudFswXSxlLHtpdGVtOnRoaXMuY3VycmVudEl0ZW19KTp0KG8ub3B0aW9ucy5pdGVtcyxvLmVsZW1lbnQpLG9dKSx0aGlzLmNvbnRhaW5lcnMucHVzaChvKSk7Zm9yKGk9dS5sZW5ndGgtMTtpPj0wO2ktLSlmb3IoYT11W2ldWzFdLHI9dVtpXVswXSxzPTAsbD1yLmxlbmd0aDtsPnM7cysrKWg9dChyW3NdKSxoLmRhdGEodGhpcy53aWRnZXROYW1lKyItaXRlbSIsYSksYy5wdXNoKHtpdGVtOmgsaW5zdGFuY2U6YSx3aWR0aDowLGhlaWdodDowLGxlZnQ6MCx0b3A6MH0pfSxyZWZyZXNoUG9zaXRpb25zOmZ1bmN0aW9uKGUpe3RoaXMub2Zmc2V0UGFyZW50JiZ0aGlzLmhlbHBlciYmKHRoaXMub2Zmc2V0LnBhcmVudD10aGlzLl9nZXRQYXJlbnRPZmZzZXQoKSk7dmFyIGkscyxuLG87Zm9yKGk9dGhpcy5pdGVtcy5sZW5ndGgtMTtpPj0wO2ktLSlzPXRoaXMuaXRlbXNbaV0scy5pbnN0YW5jZSE9PXRoaXMuY3VycmVudENvbnRhaW5lciYmdGhpcy5jdXJyZW50Q29udGFpbmVyJiZzLml0ZW1bMF0hPT10aGlzLmN1cnJlbnRJdGVtWzBdfHwobj10aGlzLm9wdGlvbnMudG9sZXJhbmNlRWxlbWVudD90KHRoaXMub3B0aW9ucy50b2xlcmFuY2VFbGVtZW50LHMuaXRlbSk6cy5pdGVtLGV8fChzLndpZHRoPW4ub3V0ZXJXaWR0aCgpLHMuaGVpZ2h0PW4ub3V0ZXJIZWlnaHQoKSksbz1uLm9mZnNldCgpLHMubGVmdD1vLmxlZnQscy50b3A9by50b3ApO2lmKHRoaXMub3B0aW9ucy5jdXN0b20mJnRoaXMub3B0aW9ucy5jdXN0b20ucmVmcmVzaENvbnRhaW5lcnMpdGhpcy5vcHRpb25zLmN1c3RvbS5yZWZyZXNoQ29udGFpbmVycy5jYWxsKHRoaXMpO2Vsc2UgZm9yKGk9dGhpcy5jb250YWluZXJzLmxlbmd0aC0xO2k+PTA7aS0tKW89dGhpcy5jb250YWluZXJzW2ldLmVsZW1lbnQub2Zmc2V0KCksdGhpcy5jb250YWluZXJzW2ldLmNvbnRhaW5lckNhY2hlLmxlZnQ9by5sZWZ0LHRoaXMuY29udGFpbmVyc1tpXS5jb250YWluZXJDYWNoZS50b3A9by50b3AsdGhpcy5jb250YWluZXJzW2ldLmNvbnRhaW5lckNhY2hlLndpZHRoPXRoaXMuY29udGFpbmVyc1tpXS5lbGVtZW50Lm91dGVyV2lkdGgoKSx0aGlzLmNvbnRhaW5lcnNbaV0uY29udGFpbmVyQ2FjaGUuaGVpZ2h0PXRoaXMuY29udGFpbmVyc1tpXS5lbGVtZW50Lm91dGVySGVpZ2h0KCk7cmV0dXJuIHRoaXN9LF9jcmVhdGVQbGFjZWhvbGRlcjpmdW5jdGlvbihlKXtlPWV8fHRoaXM7dmFyIGkscz1lLm9wdGlvbnM7cy5wbGFjZWhvbGRlciYmcy5wbGFjZWhvbGRlci5jb25zdHJ1Y3RvciE9PVN0cmluZ3x8KGk9cy5wbGFjZWhvbGRlcixzLnBsYWNlaG9sZGVyPXtlbGVtZW50OmZ1bmN0aW9uKCl7dmFyIHM9ZS5jdXJyZW50SXRlbVswXS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLG49dCgiPCIrcysiPiIsZS5kb2N1bWVudFswXSkuYWRkQ2xhc3MoaXx8ZS5jdXJyZW50SXRlbVswXS5jbGFzc05hbWUrIiB1aS1zb3J0YWJsZS1wbGFjZWhvbGRlciIpLnJlbW92ZUNsYXNzKCJ1aS1zb3J0YWJsZS1oZWxwZXIiKTtyZXR1cm4idHIiPT09cz9lLmN1cnJlbnRJdGVtLmNoaWxkcmVuKCkuZWFjaChmdW5jdGlvbigpe3QoIjx0ZD4mIzE2MDs8L3RkPiIsZS5kb2N1bWVudFswXSkuYXR0cigiY29sc3BhbiIsdCh0aGlzKS5hdHRyKCJjb2xzcGFuIil8fDEpLmFwcGVuZFRvKG4pfSk6ImltZyI9PT1zJiZuLmF0dHIoInNyYyIsZS5jdXJyZW50SXRlbS5hdHRyKCJzcmMiKSksaXx8bi5jc3MoInZpc2liaWxpdHkiLCJoaWRkZW4iKSxufSx1cGRhdGU6ZnVuY3Rpb24odCxuKXsoIWl8fHMuZm9yY2VQbGFjZWhvbGRlclNpemUpJiYobi5oZWlnaHQoKXx8bi5oZWlnaHQoZS5jdXJyZW50SXRlbS5pbm5lckhlaWdodCgpLXBhcnNlSW50KGUuY3VycmVudEl0ZW0uY3NzKCJwYWRkaW5nVG9wIil8fDAsMTApLXBhcnNlSW50KGUuY3VycmVudEl0ZW0uY3NzKCJwYWRkaW5nQm90dG9tIil8fDAsMTApKSxuLndpZHRoKCl8fG4ud2lkdGgoZS5jdXJyZW50SXRlbS5pbm5lcldpZHRoKCktcGFyc2VJbnQoZS5jdXJyZW50SXRlbS5jc3MoInBhZGRpbmdMZWZ0Iil8fDAsMTApLXBhcnNlSW50KGUuY3VycmVudEl0ZW0uY3NzKCJwYWRkaW5nUmlnaHQiKXx8MCwxMCkpKX19KSxlLnBsYWNlaG9sZGVyPXQocy5wbGFjZWhvbGRlci5lbGVtZW50LmNhbGwoZS5lbGVtZW50LGUuY3VycmVudEl0ZW0pKSxlLmN1cnJlbnRJdGVtLmFmdGVyKGUucGxhY2Vob2xkZXIpLHMucGxhY2Vob2xkZXIudXBkYXRlKGUsZS5wbGFjZWhvbGRlcil9LF9jb250YWN0Q29udGFpbmVyczpmdW5jdGlvbihzKXt2YXIgbixvLGEscixoLGwsYyx1LGQscCxmPW51bGwsZz1udWxsO2ZvcihuPXRoaXMuY29udGFpbmVycy5sZW5ndGgtMTtuPj0wO24tLSlpZighdC5jb250YWlucyh0aGlzLmN1cnJlbnRJdGVtWzBdLHRoaXMuY29udGFpbmVyc1tuXS5lbGVtZW50WzBdKSlpZih0aGlzLl9pbnRlcnNlY3RzV2l0aCh0aGlzLmNvbnRhaW5lcnNbbl0uY29udGFpbmVyQ2FjaGUpKXtpZihmJiZ0LmNvbnRhaW5zKHRoaXMuY29udGFpbmVyc1tuXS5lbGVtZW50WzBdLGYuZWxlbWVudFswXSkpY29udGludWU7Zj10aGlzLmNvbnRhaW5lcnNbbl0sZz1ufWVsc2UgdGhpcy5jb250YWluZXJzW25dLmNvbnRhaW5lckNhY2hlLm92ZXImJih0aGlzLmNvbnRhaW5lcnNbbl0uX3RyaWdnZXIoIm91dCIscyx0aGlzLl91aUhhc2godGhpcykpLHRoaXMuY29udGFpbmVyc1tuXS5jb250YWluZXJDYWNoZS5vdmVyPTApO2lmKGYpaWYoMT09PXRoaXMuY29udGFpbmVycy5sZW5ndGgpdGhpcy5jb250YWluZXJzW2ddLmNvbnRhaW5lckNhY2hlLm92ZXJ8fCh0aGlzLmNvbnRhaW5lcnNbZ10uX3RyaWdnZXIoIm92ZXIiLHMsdGhpcy5fdWlIYXNoKHRoaXMpKSx0aGlzLmNvbnRhaW5lcnNbZ10uY29udGFpbmVyQ2FjaGUub3Zlcj0xKTtlbHNle2ZvcihhPTFlNCxyPW51bGwscD1mLmZsb2F0aW5nfHxpKHRoaXMuY3VycmVudEl0ZW0pLGg9cD8ibGVmdCI6InRvcCIsbD1wPyJ3aWR0aCI6ImhlaWdodCIsYz10aGlzLnBvc2l0aW9uQWJzW2hdK3RoaXMub2Zmc2V0LmNsaWNrW2hdLG89dGhpcy5pdGVtcy5sZW5ndGgtMTtvPj0wO28tLSl0LmNvbnRhaW5zKHRoaXMuY29udGFpbmVyc1tnXS5lbGVtZW50WzBdLHRoaXMuaXRlbXNbb10uaXRlbVswXSkmJnRoaXMuaXRlbXNbb10uaXRlbVswXSE9PXRoaXMuY3VycmVudEl0ZW1bMF0mJighcHx8ZSh0aGlzLnBvc2l0aW9uQWJzLnRvcCt0aGlzLm9mZnNldC5jbGljay50b3AsdGhpcy5pdGVtc1tvXS50b3AsdGhpcy5pdGVtc1tvXS5oZWlnaHQpKSYmKHU9dGhpcy5pdGVtc1tvXS5pdGVtLm9mZnNldCgpW2hdLGQ9ITEsTWF0aC5hYnModS1jKT5NYXRoLmFicyh1K3RoaXMuaXRlbXNbb11bbF0tYykmJihkPSEwLHUrPXRoaXMuaXRlbXNbb11bbF0pLGE+TWF0aC5hYnModS1jKSYmKGE9TWF0aC5hYnModS1jKSxyPXRoaXMuaXRlbXNbb10sdGhpcy5kaXJlY3Rpb249ZD8idXAiOiJkb3duIikpO2lmKCFyJiYhdGhpcy5vcHRpb25zLmRyb3BPbkVtcHR5KXJldHVybjtpZih0aGlzLmN1cnJlbnRDb250YWluZXI9PT10aGlzLmNvbnRhaW5lcnNbZ10pcmV0dXJuO3I/dGhpcy5fcmVhcnJhbmdlKHMscixudWxsLCEwKTp0aGlzLl9yZWFycmFuZ2UocyxudWxsLHRoaXMuY29udGFpbmVyc1tnXS5lbGVtZW50LCEwKSx0aGlzLl90cmlnZ2VyKCJjaGFuZ2UiLHMsdGhpcy5fdWlIYXNoKCkpLHRoaXMuY29udGFpbmVyc1tnXS5fdHJpZ2dlcigiY2hhbmdlIixzLHRoaXMuX3VpSGFzaCh0aGlzKSksdGhpcy5jdXJyZW50Q29udGFpbmVyPXRoaXMuY29udGFpbmVyc1tnXSx0aGlzLm9wdGlvbnMucGxhY2Vob2xkZXIudXBkYXRlKHRoaXMuY3VycmVudENvbnRhaW5lcix0aGlzLnBsYWNlaG9sZGVyKSx0aGlzLmNvbnRhaW5lcnNbZ10uX3RyaWdnZXIoIm92ZXIiLHMsdGhpcy5fdWlIYXNoKHRoaXMpKSx0aGlzLmNvbnRhaW5lcnNbZ10uY29udGFpbmVyQ2FjaGUub3Zlcj0xfX0sX2NyZWF0ZUhlbHBlcjpmdW5jdGlvbihlKXt2YXIgaT10aGlzLm9wdGlvbnMscz10LmlzRnVuY3Rpb24oaS5oZWxwZXIpP3QoaS5oZWxwZXIuYXBwbHkodGhpcy5lbGVtZW50WzBdLFtlLHRoaXMuY3VycmVudEl0ZW1dKSk6ImNsb25lIj09PWkuaGVscGVyP3RoaXMuY3VycmVudEl0ZW0uY2xvbmUoKTp0aGlzLmN1cnJlbnRJdGVtO3JldHVybiBzLnBhcmVudHMoImJvZHkiKS5sZW5ndGh8fHQoInBhcmVudCIhPT1pLmFwcGVuZFRvP2kuYXBwZW5kVG86dGhpcy5jdXJyZW50SXRlbVswXS5wYXJlbnROb2RlKVswXS5hcHBlbmRDaGlsZChzWzBdKSxzWzBdPT09dGhpcy5jdXJyZW50SXRlbVswXSYmKHRoaXMuX3N0b3JlZENTUz17d2lkdGg6dGhpcy5jdXJyZW50SXRlbVswXS5zdHlsZS53aWR0aCxoZWlnaHQ6dGhpcy5jdXJyZW50SXRlbVswXS5zdHlsZS5oZWlnaHQscG9zaXRpb246dGhpcy5jdXJyZW50SXRlbS5jc3MoInBvc2l0aW9uIiksdG9wOnRoaXMuY3VycmVudEl0ZW0uY3NzKCJ0b3AiKSxsZWZ0OnRoaXMuY3VycmVudEl0ZW0uY3NzKCJsZWZ0Iil9KSwoIXNbMF0uc3R5bGUud2lkdGh8fGkuZm9yY2VIZWxwZXJTaXplKSYmcy53aWR0aCh0aGlzLmN1cnJlbnRJdGVtLndpZHRoKCkpLCghc1swXS5zdHlsZS5oZWlnaHR8fGkuZm9yY2VIZWxwZXJTaXplKSYmcy5oZWlnaHQodGhpcy5jdXJyZW50SXRlbS5oZWlnaHQoKSksc30sX2FkanVzdE9mZnNldEZyb21IZWxwZXI6ZnVuY3Rpb24oZSl7InN0cmluZyI9PXR5cGVvZiBlJiYoZT1lLnNwbGl0KCIgIikpLHQuaXNBcnJheShlKSYmKGU9e2xlZnQ6K2VbMF0sdG9wOitlWzFdfHwwfSksImxlZnQiaW4gZSYmKHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQ9ZS5sZWZ0K3RoaXMubWFyZ2lucy5sZWZ0KSwicmlnaHQiaW4gZSYmKHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQ9dGhpcy5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aC1lLnJpZ2h0K3RoaXMubWFyZ2lucy5sZWZ0KSwidG9wImluIGUmJih0aGlzLm9mZnNldC5jbGljay50b3A9ZS50b3ArdGhpcy5tYXJnaW5zLnRvcCksImJvdHRvbSJpbiBlJiYodGhpcy5vZmZzZXQuY2xpY2sudG9wPXRoaXMuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0LWUuYm90dG9tK3RoaXMubWFyZ2lucy50b3ApfSxfZ2V0UGFyZW50T2Zmc2V0OmZ1bmN0aW9uKCl7dGhpcy5vZmZzZXRQYXJlbnQ9dGhpcy5oZWxwZXIub2Zmc2V0UGFyZW50KCk7dmFyIGU9dGhpcy5vZmZzZXRQYXJlbnQub2Zmc2V0KCk7cmV0dXJuImFic29sdXRlIj09PXRoaXMuY3NzUG9zaXRpb24mJnRoaXMuc2Nyb2xsUGFyZW50WzBdIT09ZG9jdW1lbnQmJnQuY29udGFpbnModGhpcy5zY3JvbGxQYXJlbnRbMF0sdGhpcy5vZmZzZXRQYXJlbnRbMF0pJiYoZS5sZWZ0Kz10aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxMZWZ0KCksZS50b3ArPXRoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbFRvcCgpKSwodGhpcy5vZmZzZXRQYXJlbnRbMF09PT1kb2N1bWVudC5ib2R5fHx0aGlzLm9mZnNldFBhcmVudFswXS50YWdOYW1lJiYiaHRtbCI9PT10aGlzLm9mZnNldFBhcmVudFswXS50YWdOYW1lLnRvTG93ZXJDYXNlKCkmJnQudWkuaWUpJiYoZT17dG9wOjAsbGVmdDowfSkse3RvcDplLnRvcCsocGFyc2VJbnQodGhpcy5vZmZzZXRQYXJlbnQuY3NzKCJib3JkZXJUb3BXaWR0aCIpLDEwKXx8MCksbGVmdDplLmxlZnQrKHBhcnNlSW50KHRoaXMub2Zmc2V0UGFyZW50LmNzcygiYm9yZGVyTGVmdFdpZHRoIiksMTApfHwwKX19LF9nZXRSZWxhdGl2ZU9mZnNldDpmdW5jdGlvbigpe2lmKCJyZWxhdGl2ZSI9PT10aGlzLmNzc1Bvc2l0aW9uKXt2YXIgdD10aGlzLmN1cnJlbnRJdGVtLnBvc2l0aW9uKCk7cmV0dXJue3RvcDp0LnRvcC0ocGFyc2VJbnQodGhpcy5oZWxwZXIuY3NzKCJ0b3AiKSwxMCl8fDApK3RoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbFRvcCgpLGxlZnQ6dC5sZWZ0LShwYXJzZUludCh0aGlzLmhlbHBlci5jc3MoImxlZnQiKSwxMCl8fDApK3RoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbExlZnQoKX19cmV0dXJue3RvcDowLGxlZnQ6MH19LF9jYWNoZU1hcmdpbnM6ZnVuY3Rpb24oKXt0aGlzLm1hcmdpbnM9e2xlZnQ6cGFyc2VJbnQodGhpcy5jdXJyZW50SXRlbS5jc3MoIm1hcmdpbkxlZnQiKSwxMCl8fDAsdG9wOnBhcnNlSW50KHRoaXMuY3VycmVudEl0ZW0uY3NzKCJtYXJnaW5Ub3AiKSwxMCl8fDB9fSxfY2FjaGVIZWxwZXJQcm9wb3J0aW9uczpmdW5jdGlvbigpe3RoaXMuaGVscGVyUHJvcG9ydGlvbnM9e3dpZHRoOnRoaXMuaGVscGVyLm91dGVyV2lkdGgoKSxoZWlnaHQ6dGhpcy5oZWxwZXIub3V0ZXJIZWlnaHQoKX19LF9zZXRDb250YWlubWVudDpmdW5jdGlvbigpe3ZhciBlLGkscyxuPXRoaXMub3B0aW9uczsicGFyZW50Ij09PW4uY29udGFpbm1lbnQmJihuLmNvbnRhaW5tZW50PXRoaXMuaGVscGVyWzBdLnBhcmVudE5vZGUpLCgiZG9jdW1lbnQiPT09bi5jb250YWlubWVudHx8IndpbmRvdyI9PT1uLmNvbnRhaW5tZW50KSYmKHRoaXMuY29udGFpbm1lbnQ9WzAtdGhpcy5vZmZzZXQucmVsYXRpdmUubGVmdC10aGlzLm9mZnNldC5wYXJlbnQubGVmdCwwLXRoaXMub2Zmc2V0LnJlbGF0aXZlLnRvcC10aGlzLm9mZnNldC5wYXJlbnQudG9wLHQoImRvY3VtZW50Ij09PW4uY29udGFpbm1lbnQ/ZG9jdW1lbnQ6d2luZG93KS53aWR0aCgpLXRoaXMuaGVscGVyUHJvcG9ydGlvbnMud2lkdGgtdGhpcy5tYXJnaW5zLmxlZnQsKHQoImRvY3VtZW50Ij09PW4uY29udGFpbm1lbnQ/ZG9jdW1lbnQ6d2luZG93KS5oZWlnaHQoKXx8ZG9jdW1lbnQuYm9keS5wYXJlbnROb2RlLnNjcm9sbEhlaWdodCktdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQtdGhpcy5tYXJnaW5zLnRvcF0pLC9eKGRvY3VtZW50fHdpbmRvd3xwYXJlbnQpJC8udGVzdChuLmNvbnRhaW5tZW50KXx8KGU9dChuLmNvbnRhaW5tZW50KVswXSxpPXQobi5jb250YWlubWVudCkub2Zmc2V0KCkscz0iaGlkZGVuIiE9PXQoZSkuY3NzKCJvdmVyZmxvdyIpLHRoaXMuY29udGFpbm1lbnQ9W2kubGVmdCsocGFyc2VJbnQodChlKS5jc3MoImJvcmRlckxlZnRXaWR0aCIpLDEwKXx8MCkrKHBhcnNlSW50KHQoZSkuY3NzKCJwYWRkaW5nTGVmdCIpLDEwKXx8MCktdGhpcy5tYXJnaW5zLmxlZnQsaS50b3ArKHBhcnNlSW50KHQoZSkuY3NzKCJib3JkZXJUb3BXaWR0aCIpLDEwKXx8MCkrKHBhcnNlSW50KHQoZSkuY3NzKCJwYWRkaW5nVG9wIiksMTApfHwwKS10aGlzLm1hcmdpbnMudG9wLGkubGVmdCsocz9NYXRoLm1heChlLnNjcm9sbFdpZHRoLGUub2Zmc2V0V2lkdGgpOmUub2Zmc2V0V2lkdGgpLShwYXJzZUludCh0KGUpLmNzcygiYm9yZGVyTGVmdFdpZHRoIiksMTApfHwwKS0ocGFyc2VJbnQodChlKS5jc3MoInBhZGRpbmdSaWdodCIpLDEwKXx8MCktdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aC10aGlzLm1hcmdpbnMubGVmdCxpLnRvcCsocz9NYXRoLm1heChlLnNjcm9sbEhlaWdodCxlLm9mZnNldEhlaWdodCk6ZS5vZmZzZXRIZWlnaHQpLShwYXJzZUludCh0KGUpLmNzcygiYm9yZGVyVG9wV2lkdGgiKSwxMCl8fDApLShwYXJzZUludCh0KGUpLmNzcygicGFkZGluZ0JvdHRvbSIpLDEwKXx8MCktdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQtdGhpcy5tYXJnaW5zLnRvcF0pfSxfY29udmVydFBvc2l0aW9uVG86ZnVuY3Rpb24oZSxpKXtpfHwoaT10aGlzLnBvc2l0aW9uKTt2YXIgcz0iYWJzb2x1dGUiPT09ZT8xOi0xLG49ImFic29sdXRlIiE9PXRoaXMuY3NzUG9zaXRpb258fHRoaXMuc2Nyb2xsUGFyZW50WzBdIT09ZG9jdW1lbnQmJnQuY29udGFpbnModGhpcy5zY3JvbGxQYXJlbnRbMF0sdGhpcy5vZmZzZXRQYXJlbnRbMF0pP3RoaXMuc2Nyb2xsUGFyZW50OnRoaXMub2Zmc2V0UGFyZW50LG89LyhodG1sfGJvZHkpL2kudGVzdChuWzBdLnRhZ05hbWUpO3JldHVybnt0b3A6aS50b3ArdGhpcy5vZmZzZXQucmVsYXRpdmUudG9wKnMrdGhpcy5vZmZzZXQucGFyZW50LnRvcCpzLSgiZml4ZWQiPT09dGhpcy5jc3NQb3NpdGlvbj8tdGhpcy5zY3JvbGxQYXJlbnQuc2Nyb2xsVG9wKCk6bz8wOm4uc2Nyb2xsVG9wKCkpKnMsbGVmdDppLmxlZnQrdGhpcy5vZmZzZXQucmVsYXRpdmUubGVmdCpzK3RoaXMub2Zmc2V0LnBhcmVudC5sZWZ0KnMtKCJmaXhlZCI9PT10aGlzLmNzc1Bvc2l0aW9uPy10aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxMZWZ0KCk6bz8wOm4uc2Nyb2xsTGVmdCgpKSpzfX0sX2dlbmVyYXRlUG9zaXRpb246ZnVuY3Rpb24oZSl7dmFyIGkscyxuPXRoaXMub3B0aW9ucyxvPWUucGFnZVgsYT1lLnBhZ2VZLHI9ImFic29sdXRlIiE9PXRoaXMuY3NzUG9zaXRpb258fHRoaXMuc2Nyb2xsUGFyZW50WzBdIT09ZG9jdW1lbnQmJnQuY29udGFpbnModGhpcy5zY3JvbGxQYXJlbnRbMF0sdGhpcy5vZmZzZXRQYXJlbnRbMF0pP3RoaXMuc2Nyb2xsUGFyZW50OnRoaXMub2Zmc2V0UGFyZW50LGg9LyhodG1sfGJvZHkpL2kudGVzdChyWzBdLnRhZ05hbWUpO3JldHVybiJyZWxhdGl2ZSIhPT10aGlzLmNzc1Bvc2l0aW9ufHx0aGlzLnNjcm9sbFBhcmVudFswXSE9PWRvY3VtZW50JiZ0aGlzLnNjcm9sbFBhcmVudFswXSE9PXRoaXMub2Zmc2V0UGFyZW50WzBdfHwodGhpcy5vZmZzZXQucmVsYXRpdmU9dGhpcy5fZ2V0UmVsYXRpdmVPZmZzZXQoKSksdGhpcy5vcmlnaW5hbFBvc2l0aW9uJiYodGhpcy5jb250YWlubWVudCYmKGUucGFnZVgtdGhpcy5vZmZzZXQuY2xpY2subGVmdDx0aGlzLmNvbnRhaW5tZW50WzBdJiYobz10aGlzLmNvbnRhaW5tZW50WzBdK3RoaXMub2Zmc2V0LmNsaWNrLmxlZnQpLGUucGFnZVktdGhpcy5vZmZzZXQuY2xpY2sudG9wPHRoaXMuY29udGFpbm1lbnRbMV0mJihhPXRoaXMuY29udGFpbm1lbnRbMV0rdGhpcy5vZmZzZXQuY2xpY2sudG9wKSxlLnBhZ2VYLXRoaXMub2Zmc2V0LmNsaWNrLmxlZnQ+dGhpcy5jb250YWlubWVudFsyXSYmKG89dGhpcy5jb250YWlubWVudFsyXSt0aGlzLm9mZnNldC5jbGljay5sZWZ0KSxlLnBhZ2VZLXRoaXMub2Zmc2V0LmNsaWNrLnRvcD50aGlzLmNvbnRhaW5tZW50WzNdJiYoYT10aGlzLmNvbnRhaW5tZW50WzNdK3RoaXMub2Zmc2V0LmNsaWNrLnRvcCkpLG4uZ3JpZCYmKGk9dGhpcy5vcmlnaW5hbFBhZ2VZK01hdGgucm91bmQoKGEtdGhpcy5vcmlnaW5hbFBhZ2VZKS9uLmdyaWRbMV0pKm4uZ3JpZFsxXSxhPXRoaXMuY29udGFpbm1lbnQ/aS10aGlzLm9mZnNldC5jbGljay50b3A+PXRoaXMuY29udGFpbm1lbnRbMV0mJmktdGhpcy5vZmZzZXQuY2xpY2sudG9wPD10aGlzLmNvbnRhaW5tZW50WzNdP2k6aS10aGlzLm9mZnNldC5jbGljay50b3A+PXRoaXMuY29udGFpbm1lbnRbMV0/aS1uLmdyaWRbMV06aStuLmdyaWRbMV06aSxzPXRoaXMub3JpZ2luYWxQYWdlWCtNYXRoLnJvdW5kKChvLXRoaXMub3JpZ2luYWxQYWdlWCkvbi5ncmlkWzBdKSpuLmdyaWRbMF0sbz10aGlzLmNvbnRhaW5tZW50P3MtdGhpcy5vZmZzZXQuY2xpY2subGVmdD49dGhpcy5jb250YWlubWVudFswXSYmcy10aGlzLm9mZnNldC5jbGljay5sZWZ0PD10aGlzLmNvbnRhaW5tZW50WzJdP3M6cy10aGlzLm9mZnNldC5jbGljay5sZWZ0Pj10aGlzLmNvbnRhaW5tZW50WzBdP3Mtbi5ncmlkWzBdOnMrbi5ncmlkWzBdOnMpKSx7dG9wOmEtdGhpcy5vZmZzZXQuY2xpY2sudG9wLXRoaXMub2Zmc2V0LnJlbGF0aXZlLnRvcC10aGlzLm9mZnNldC5wYXJlbnQudG9wKygiZml4ZWQiPT09dGhpcy5jc3NQb3NpdGlvbj8tdGhpcy5zY3JvbGxQYXJlbnQuc2Nyb2xsVG9wKCk6aD8wOnIuc2Nyb2xsVG9wKCkpLGxlZnQ6by10aGlzLm9mZnNldC5jbGljay5sZWZ0LXRoaXMub2Zmc2V0LnJlbGF0aXZlLmxlZnQtdGhpcy5vZmZzZXQucGFyZW50LmxlZnQrKCJmaXhlZCI9PT10aGlzLmNzc1Bvc2l0aW9uPy10aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxMZWZ0KCk6aD8wOnIuc2Nyb2xsTGVmdCgpKX19LF9yZWFycmFuZ2U6ZnVuY3Rpb24odCxlLGkscyl7aT9pWzBdLmFwcGVuZENoaWxkKHRoaXMucGxhY2Vob2xkZXJbMF0pOmUuaXRlbVswXS5wYXJlbnROb2RlLmluc2VydEJlZm9yZSh0aGlzLnBsYWNlaG9sZGVyWzBdLCJkb3duIj09PXRoaXMuZGlyZWN0aW9uP2UuaXRlbVswXTplLml0ZW1bMF0ubmV4dFNpYmxpbmcpLHRoaXMuY291bnRlcj10aGlzLmNvdW50ZXI/Kyt0aGlzLmNvdW50ZXI6MTt2YXIgbj10aGlzLmNvdW50ZXI7dGhpcy5fZGVsYXkoZnVuY3Rpb24oKXtuPT09dGhpcy5jb3VudGVyJiZ0aGlzLnJlZnJlc2hQb3NpdGlvbnMoIXMpfSl9LF9jbGVhcjpmdW5jdGlvbih0LGUpe2Z1bmN0aW9uIGkodCxlLGkpe3JldHVybiBmdW5jdGlvbihzKXtpLl90cmlnZ2VyKHQscyxlLl91aUhhc2goZSkpfX10aGlzLnJldmVydGluZz0hMTt2YXIgcyxuPVtdO2lmKCF0aGlzLl9ub0ZpbmFsU29ydCYmdGhpcy5jdXJyZW50SXRlbS5wYXJlbnQoKS5sZW5ndGgmJnRoaXMucGxhY2Vob2xkZXIuYmVmb3JlKHRoaXMuY3VycmVudEl0ZW0pLHRoaXMuX25vRmluYWxTb3J0PW51bGwsdGhpcy5oZWxwZXJbMF09PT10aGlzLmN1cnJlbnRJdGVtWzBdKXtmb3IocyBpbiB0aGlzLl9zdG9yZWRDU1MpKCJhdXRvIj09PXRoaXMuX3N0b3JlZENTU1tzXXx8InN0YXRpYyI9PT10aGlzLl9zdG9yZWRDU1Nbc10pJiYodGhpcy5fc3RvcmVkQ1NTW3NdPSIiKTt0aGlzLmN1cnJlbnRJdGVtLmNzcyh0aGlzLl9zdG9yZWRDU1MpLnJlbW92ZUNsYXNzKCJ1aS1zb3J0YWJsZS1oZWxwZXIiKX1lbHNlIHRoaXMuY3VycmVudEl0ZW0uc2hvdygpO2Zvcih0aGlzLmZyb21PdXRzaWRlJiYhZSYmbi5wdXNoKGZ1bmN0aW9uKHQpe3RoaXMuX3RyaWdnZXIoInJlY2VpdmUiLHQsdGhpcy5fdWlIYXNoKHRoaXMuZnJvbU91dHNpZGUpKX0pLCF0aGlzLmZyb21PdXRzaWRlJiZ0aGlzLmRvbVBvc2l0aW9uLnByZXY9PT10aGlzLmN1cnJlbnRJdGVtLnByZXYoKS5ub3QoIi51aS1zb3J0YWJsZS1oZWxwZXIiKVswXSYmdGhpcy5kb21Qb3NpdGlvbi5wYXJlbnQ9PT10aGlzLmN1cnJlbnRJdGVtLnBhcmVudCgpWzBdfHxlfHxuLnB1c2goZnVuY3Rpb24odCl7dGhpcy5fdHJpZ2dlcigidXBkYXRlIix0LHRoaXMuX3VpSGFzaCgpKX0pLHRoaXMhPT10aGlzLmN1cnJlbnRDb250YWluZXImJihlfHwobi5wdXNoKGZ1bmN0aW9uKHQpe3RoaXMuX3RyaWdnZXIoInJlbW92ZSIsdCx0aGlzLl91aUhhc2goKSl9KSxuLnB1c2goZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3QuX3RyaWdnZXIoInJlY2VpdmUiLGUsdGhpcy5fdWlIYXNoKHRoaXMpKX19LmNhbGwodGhpcyx0aGlzLmN1cnJlbnRDb250YWluZXIpKSxuLnB1c2goZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3QuX3RyaWdnZXIoInVwZGF0ZSIsZSx0aGlzLl91aUhhc2godGhpcykpfX0uY2FsbCh0aGlzLHRoaXMuY3VycmVudENvbnRhaW5lcikpKSkscz10aGlzLmNvbnRhaW5lcnMubGVuZ3RoLTE7cz49MDtzLS0pZXx8bi5wdXNoKGkoImRlYWN0aXZhdGUiLHRoaXMsdGhpcy5jb250YWluZXJzW3NdKSksdGhpcy5jb250YWluZXJzW3NdLmNvbnRhaW5lckNhY2hlLm92ZXImJihuLnB1c2goaSgib3V0Iix0aGlzLHRoaXMuY29udGFpbmVyc1tzXSkpLHRoaXMuY29udGFpbmVyc1tzXS5jb250YWluZXJDYWNoZS5vdmVyPTApO2lmKHRoaXMuc3RvcmVkQ3Vyc29yJiYodGhpcy5kb2N1bWVudC5maW5kKCJib2R5IikuY3NzKCJjdXJzb3IiLHRoaXMuc3RvcmVkQ3Vyc29yKSx0aGlzLnN0b3JlZFN0eWxlc2hlZXQucmVtb3ZlKCkpLHRoaXMuX3N0b3JlZE9wYWNpdHkmJnRoaXMuaGVscGVyLmNzcygib3BhY2l0eSIsdGhpcy5fc3RvcmVkT3BhY2l0eSksdGhpcy5fc3RvcmVkWkluZGV4JiZ0aGlzLmhlbHBlci5jc3MoInpJbmRleCIsImF1dG8iPT09dGhpcy5fc3RvcmVkWkluZGV4PyIiOnRoaXMuX3N0b3JlZFpJbmRleCksdGhpcy5kcmFnZ2luZz0hMSx0aGlzLmNhbmNlbEhlbHBlclJlbW92YWwpe2lmKCFlKXtmb3IodGhpcy5fdHJpZ2dlcigiYmVmb3JlU3RvcCIsdCx0aGlzLl91aUhhc2goKSkscz0wO24ubGVuZ3RoPnM7cysrKW5bc10uY2FsbCh0aGlzLHQpO3RoaXMuX3RyaWdnZXIoInN0b3AiLHQsdGhpcy5fdWlIYXNoKCkpfXJldHVybiB0aGlzLmZyb21PdXRzaWRlPSExLCExfWlmKGV8fHRoaXMuX3RyaWdnZXIoImJlZm9yZVN0b3AiLHQsdGhpcy5fdWlIYXNoKCkpLHRoaXMucGxhY2Vob2xkZXJbMF0ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0aGlzLnBsYWNlaG9sZGVyWzBdKSx0aGlzLmhlbHBlclswXSE9PXRoaXMuY3VycmVudEl0ZW1bMF0mJnRoaXMuaGVscGVyLnJlbW92ZSgpLHRoaXMuaGVscGVyPW51bGwsIWUpe2ZvcihzPTA7bi5sZW5ndGg+cztzKyspbltzXS5jYWxsKHRoaXMsdCk7dGhpcy5fdHJpZ2dlcigic3RvcCIsdCx0aGlzLl91aUhhc2goKSl9cmV0dXJuIHRoaXMuZnJvbU91dHNpZGU9ITEsITB9LF90cmlnZ2VyOmZ1bmN0aW9uKCl7dC5XaWRnZXQucHJvdG90eXBlLl90cmlnZ2VyLmFwcGx5KHRoaXMsYXJndW1lbnRzKT09PSExJiZ0aGlzLmNhbmNlbCgpfSxfdWlIYXNoOmZ1bmN0aW9uKGUpe3ZhciBpPWV8fHRoaXM7cmV0dXJue2hlbHBlcjppLmhlbHBlcixwbGFjZWhvbGRlcjppLnBsYWNlaG9sZGVyfHx0KFtdKSxwb3NpdGlvbjppLnBvc2l0aW9uLG9yaWdpbmFsUG9zaXRpb246aS5vcmlnaW5hbFBvc2l0aW9uLG9mZnNldDppLnBvc2l0aW9uQWJzLGl0ZW06aS5jdXJyZW50SXRlbSxzZW5kZXI6ZT9lLmVsZW1lbnQ6bnVsbH19fSl9KShqUXVlcnkpOyhmdW5jdGlvbih0KXtmdW5jdGlvbiBlKHQpe3JldHVybiBmdW5jdGlvbigpe3ZhciBlPXRoaXMuZWxlbWVudC52YWwoKTt0LmFwcGx5KHRoaXMsYXJndW1lbnRzKSx0aGlzLl9yZWZyZXNoKCksZSE9PXRoaXMuZWxlbWVudC52YWwoKSYmdGhpcy5fdHJpZ2dlcigiY2hhbmdlIil9fXQud2lkZ2V0KCJ1aS5zcGlubmVyIix7dmVyc2lvbjoiMS4xMC40IixkZWZhdWx0RWxlbWVudDoiPGlucHV0PiIsd2lkZ2V0RXZlbnRQcmVmaXg6InNwaW4iLG9wdGlvbnM6e2N1bHR1cmU6bnVsbCxpY29uczp7ZG93bjoidWktaWNvbi10cmlhbmdsZS0xLXMiLHVwOiJ1aS1pY29uLXRyaWFuZ2xlLTEtbiJ9LGluY3JlbWVudGFsOiEwLG1heDpudWxsLG1pbjpudWxsLG51bWJlckZvcm1hdDpudWxsLHBhZ2U6MTAsc3RlcDoxLGNoYW5nZTpudWxsLHNwaW46bnVsbCxzdGFydDpudWxsLHN0b3A6bnVsbH0sX2NyZWF0ZTpmdW5jdGlvbigpe3RoaXMuX3NldE9wdGlvbigibWF4Iix0aGlzLm9wdGlvbnMubWF4KSx0aGlzLl9zZXRPcHRpb24oIm1pbiIsdGhpcy5vcHRpb25zLm1pbiksdGhpcy5fc2V0T3B0aW9uKCJzdGVwIix0aGlzLm9wdGlvbnMuc3RlcCksIiIhPT10aGlzLnZhbHVlKCkmJnRoaXMuX3ZhbHVlKHRoaXMuZWxlbWVudC52YWwoKSwhMCksdGhpcy5fZHJhdygpLHRoaXMuX29uKHRoaXMuX2V2ZW50cyksdGhpcy5fcmVmcmVzaCgpLHRoaXMuX29uKHRoaXMud2luZG93LHtiZWZvcmV1bmxvYWQ6ZnVuY3Rpb24oKXt0aGlzLmVsZW1lbnQucmVtb3ZlQXR0cigiYXV0b2NvbXBsZXRlIil9fSl9LF9nZXRDcmVhdGVPcHRpb25zOmZ1bmN0aW9uKCl7dmFyIGU9e30saT10aGlzLmVsZW1lbnQ7cmV0dXJuIHQuZWFjaChbIm1pbiIsIm1heCIsInN0ZXAiXSxmdW5jdGlvbih0LHMpe3ZhciBuPWkuYXR0cihzKTt2b2lkIDAhPT1uJiZuLmxlbmd0aCYmKGVbc109bil9KSxlfSxfZXZlbnRzOntrZXlkb3duOmZ1bmN0aW9uKHQpe3RoaXMuX3N0YXJ0KHQpJiZ0aGlzLl9rZXlkb3duKHQpJiZ0LnByZXZlbnREZWZhdWx0KCl9LGtleXVwOiJfc3RvcCIsZm9jdXM6ZnVuY3Rpb24oKXt0aGlzLnByZXZpb3VzPXRoaXMuZWxlbWVudC52YWwoKX0sYmx1cjpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5jYW5jZWxCbHVyPyhkZWxldGUgdGhpcy5jYW5jZWxCbHVyLHZvaWQgMCk6KHRoaXMuX3N0b3AoKSx0aGlzLl9yZWZyZXNoKCksdGhpcy5wcmV2aW91cyE9PXRoaXMuZWxlbWVudC52YWwoKSYmdGhpcy5fdHJpZ2dlcigiY2hhbmdlIix0KSx2b2lkIDApfSxtb3VzZXdoZWVsOmZ1bmN0aW9uKHQsZSl7aWYoZSl7aWYoIXRoaXMuc3Bpbm5pbmcmJiF0aGlzLl9zdGFydCh0KSlyZXR1cm4hMTt0aGlzLl9zcGluKChlPjA/MTotMSkqdGhpcy5vcHRpb25zLnN0ZXAsdCksY2xlYXJUaW1lb3V0KHRoaXMubW91c2V3aGVlbFRpbWVyKSx0aGlzLm1vdXNld2hlZWxUaW1lcj10aGlzLl9kZWxheShmdW5jdGlvbigpe3RoaXMuc3Bpbm5pbmcmJnRoaXMuX3N0b3AodCl9LDEwMCksdC5wcmV2ZW50RGVmYXVsdCgpfX0sIm1vdXNlZG93biAudWktc3Bpbm5lci1idXR0b24iOmZ1bmN0aW9uKGUpe2Z1bmN0aW9uIGkoKXt2YXIgdD10aGlzLmVsZW1lbnRbMF09PT10aGlzLmRvY3VtZW50WzBdLmFjdGl2ZUVsZW1lbnQ7dHx8KHRoaXMuZWxlbWVudC5mb2N1cygpLHRoaXMucHJldmlvdXM9cyx0aGlzLl9kZWxheShmdW5jdGlvbigpe3RoaXMucHJldmlvdXM9c30pKX12YXIgcztzPXRoaXMuZWxlbWVudFswXT09PXRoaXMuZG9jdW1lbnRbMF0uYWN0aXZlRWxlbWVudD90aGlzLnByZXZpb3VzOnRoaXMuZWxlbWVudC52YWwoKSxlLnByZXZlbnREZWZhdWx0KCksaS5jYWxsKHRoaXMpLHRoaXMuY2FuY2VsQmx1cj0hMCx0aGlzLl9kZWxheShmdW5jdGlvbigpe2RlbGV0ZSB0aGlzLmNhbmNlbEJsdXIsaS5jYWxsKHRoaXMpfSksdGhpcy5fc3RhcnQoZSkhPT0hMSYmdGhpcy5fcmVwZWF0KG51bGwsdChlLmN1cnJlbnRUYXJnZXQpLmhhc0NsYXNzKCJ1aS1zcGlubmVyLXVwIik/MTotMSxlKX0sIm1vdXNldXAgLnVpLXNwaW5uZXItYnV0dG9uIjoiX3N0b3AiLCJtb3VzZWVudGVyIC51aS1zcGlubmVyLWJ1dHRvbiI6ZnVuY3Rpb24oZSl7cmV0dXJuIHQoZS5jdXJyZW50VGFyZ2V0KS5oYXNDbGFzcygidWktc3RhdGUtYWN0aXZlIik/dGhpcy5fc3RhcnQoZSk9PT0hMT8hMToodGhpcy5fcmVwZWF0KG51bGwsdChlLmN1cnJlbnRUYXJnZXQpLmhhc0NsYXNzKCJ1aS1zcGlubmVyLXVwIik/MTotMSxlKSx2b2lkIDApOnZvaWQgMH0sIm1vdXNlbGVhdmUgLnVpLXNwaW5uZXItYnV0dG9uIjoiX3N0b3AifSxfZHJhdzpmdW5jdGlvbigpe3ZhciB0PXRoaXMudWlTcGlubmVyPXRoaXMuZWxlbWVudC5hZGRDbGFzcygidWktc3Bpbm5lci1pbnB1dCIpLmF0dHIoImF1dG9jb21wbGV0ZSIsIm9mZiIpLndyYXAodGhpcy5fdWlTcGlubmVySHRtbCgpKS5wYXJlbnQoKS5hcHBlbmQodGhpcy5fYnV0dG9uSHRtbCgpKTt0aGlzLmVsZW1lbnQuYXR0cigicm9sZSIsInNwaW5idXR0b24iKSx0aGlzLmJ1dHRvbnM9dC5maW5kKCIudWktc3Bpbm5lci1idXR0b24iKS5hdHRyKCJ0YWJJbmRleCIsLTEpLmJ1dHRvbigpLnJlbW92ZUNsYXNzKCJ1aS1jb3JuZXItYWxsIiksdGhpcy5idXR0b25zLmhlaWdodCgpPk1hdGguY2VpbCguNSp0LmhlaWdodCgpKSYmdC5oZWlnaHQoKT4wJiZ0LmhlaWdodCh0LmhlaWdodCgpKSx0aGlzLm9wdGlvbnMuZGlzYWJsZWQmJnRoaXMuZGlzYWJsZSgpfSxfa2V5ZG93bjpmdW5jdGlvbihlKXt2YXIgaT10aGlzLm9wdGlvbnMscz10LnVpLmtleUNvZGU7c3dpdGNoKGUua2V5Q29kZSl7Y2FzZSBzLlVQOnJldHVybiB0aGlzLl9yZXBlYXQobnVsbCwxLGUpLCEwO2Nhc2Ugcy5ET1dOOnJldHVybiB0aGlzLl9yZXBlYXQobnVsbCwtMSxlKSwhMDtjYXNlIHMuUEFHRV9VUDpyZXR1cm4gdGhpcy5fcmVwZWF0KG51bGwsaS5wYWdlLGUpLCEwO2Nhc2Ugcy5QQUdFX0RPV046cmV0dXJuIHRoaXMuX3JlcGVhdChudWxsLC1pLnBhZ2UsZSksITB9cmV0dXJuITF9LF91aVNwaW5uZXJIdG1sOmZ1bmN0aW9uKCl7cmV0dXJuIjxzcGFuIGNsYXNzPSd1aS1zcGlubmVyIHVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYWxsJz48L3NwYW4+In0sX2J1dHRvbkh0bWw6ZnVuY3Rpb24oKXtyZXR1cm4iPGEgY2xhc3M9J3VpLXNwaW5uZXItYnV0dG9uIHVpLXNwaW5uZXItdXAgdWktY29ybmVyLXRyJz48c3BhbiBjbGFzcz0ndWktaWNvbiAiK3RoaXMub3B0aW9ucy5pY29ucy51cCsiJz4mIzk2NTA7PC9zcGFuPiIrIjwvYT4iKyI8YSBjbGFzcz0ndWktc3Bpbm5lci1idXR0b24gdWktc3Bpbm5lci1kb3duIHVpLWNvcm5lci1icic+IisiPHNwYW4gY2xhc3M9J3VpLWljb24gIit0aGlzLm9wdGlvbnMuaWNvbnMuZG93bisiJz4mIzk2NjA7PC9zcGFuPiIrIjwvYT4ifSxfc3RhcnQ6ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuc3Bpbm5pbmd8fHRoaXMuX3RyaWdnZXIoInN0YXJ0Iix0KSE9PSExPyh0aGlzLmNvdW50ZXJ8fCh0aGlzLmNvdW50ZXI9MSksdGhpcy5zcGlubmluZz0hMCwhMCk6ITF9LF9yZXBlYXQ6ZnVuY3Rpb24odCxlLGkpe3Q9dHx8NTAwLGNsZWFyVGltZW91dCh0aGlzLnRpbWVyKSx0aGlzLnRpbWVyPXRoaXMuX2RlbGF5KGZ1bmN0aW9uKCl7dGhpcy5fcmVwZWF0KDQwLGUsaSl9LHQpLHRoaXMuX3NwaW4oZSp0aGlzLm9wdGlvbnMuc3RlcCxpKX0sX3NwaW46ZnVuY3Rpb24odCxlKXt2YXIgaT10aGlzLnZhbHVlKCl8fDA7dGhpcy5jb3VudGVyfHwodGhpcy5jb3VudGVyPTEpLGk9dGhpcy5fYWRqdXN0VmFsdWUoaSt0KnRoaXMuX2luY3JlbWVudCh0aGlzLmNvdW50ZXIpKSx0aGlzLnNwaW5uaW5nJiZ0aGlzLl90cmlnZ2VyKCJzcGluIixlLHt2YWx1ZTppfSk9PT0hMXx8KHRoaXMuX3ZhbHVlKGkpLHRoaXMuY291bnRlcisrKX0sX2luY3JlbWVudDpmdW5jdGlvbihlKXt2YXIgaT10aGlzLm9wdGlvbnMuaW5jcmVtZW50YWw7cmV0dXJuIGk/dC5pc0Z1bmN0aW9uKGkpP2koZSk6TWF0aC5mbG9vcihlKmUqZS81ZTQtZSplLzUwMCsxNyplLzIwMCsxKToxfSxfcHJlY2lzaW9uOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5fcHJlY2lzaW9uT2YodGhpcy5vcHRpb25zLnN0ZXApO3JldHVybiBudWxsIT09dGhpcy5vcHRpb25zLm1pbiYmKHQ9TWF0aC5tYXgodCx0aGlzLl9wcmVjaXNpb25PZih0aGlzLm9wdGlvbnMubWluKSkpLHR9LF9wcmVjaXNpb25PZjpmdW5jdGlvbih0KXt2YXIgZT0iIit0LGk9ZS5pbmRleE9mKCIuIik7cmV0dXJuLTE9PT1pPzA6ZS5sZW5ndGgtaS0xfSxfYWRqdXN0VmFsdWU6ZnVuY3Rpb24odCl7dmFyIGUsaSxzPXRoaXMub3B0aW9ucztyZXR1cm4gZT1udWxsIT09cy5taW4/cy5taW46MCxpPXQtZSxpPU1hdGgucm91bmQoaS9zLnN0ZXApKnMuc3RlcCx0PWUraSx0PXBhcnNlRmxvYXQodC50b0ZpeGVkKHRoaXMuX3ByZWNpc2lvbigpKSksbnVsbCE9PXMubWF4JiZ0PnMubWF4P3MubWF4Om51bGwhPT1zLm1pbiYmcy5taW4+dD9zLm1pbjp0fSxfc3RvcDpmdW5jdGlvbih0KXt0aGlzLnNwaW5uaW5nJiYoY2xlYXJUaW1lb3V0KHRoaXMudGltZXIpLGNsZWFyVGltZW91dCh0aGlzLm1vdXNld2hlZWxUaW1lciksdGhpcy5jb3VudGVyPTAsdGhpcy5zcGlubmluZz0hMSx0aGlzLl90cmlnZ2VyKCJzdG9wIix0KSl9LF9zZXRPcHRpb246ZnVuY3Rpb24odCxlKXtpZigiY3VsdHVyZSI9PT10fHwibnVtYmVyRm9ybWF0Ij09PXQpe3ZhciBpPXRoaXMuX3BhcnNlKHRoaXMuZWxlbWVudC52YWwoKSk7cmV0dXJuIHRoaXMub3B0aW9uc1t0XT1lLHRoaXMuZWxlbWVudC52YWwodGhpcy5fZm9ybWF0KGkpKSx2b2lkIDB9KCJtYXgiPT09dHx8Im1pbiI9PT10fHwic3RlcCI9PT10KSYmInN0cmluZyI9PXR5cGVvZiBlJiYoZT10aGlzLl9wYXJzZShlKSksImljb25zIj09PXQmJih0aGlzLmJ1dHRvbnMuZmlyc3QoKS5maW5kKCIudWktaWNvbiIpLnJlbW92ZUNsYXNzKHRoaXMub3B0aW9ucy5pY29ucy51cCkuYWRkQ2xhc3MoZS51cCksdGhpcy5idXR0b25zLmxhc3QoKS5maW5kKCIudWktaWNvbiIpLnJlbW92ZUNsYXNzKHRoaXMub3B0aW9ucy5pY29ucy5kb3duKS5hZGRDbGFzcyhlLmRvd24pKSx0aGlzLl9zdXBlcih0LGUpLCJkaXNhYmxlZCI9PT10JiYoZT8odGhpcy5lbGVtZW50LnByb3AoImRpc2FibGVkIiwhMCksdGhpcy5idXR0b25zLmJ1dHRvbigiZGlzYWJsZSIpKToodGhpcy5lbGVtZW50LnByb3AoImRpc2FibGVkIiwhMSksdGhpcy5idXR0b25zLmJ1dHRvbigiZW5hYmxlIikpKX0sX3NldE9wdGlvbnM6ZShmdW5jdGlvbih0KXt0aGlzLl9zdXBlcih0KSx0aGlzLl92YWx1ZSh0aGlzLmVsZW1lbnQudmFsKCkpfSksX3BhcnNlOmZ1bmN0aW9uKHQpe3JldHVybiJzdHJpbmciPT10eXBlb2YgdCYmIiIhPT10JiYodD13aW5kb3cuR2xvYmFsaXplJiZ0aGlzLm9wdGlvbnMubnVtYmVyRm9ybWF0P0dsb2JhbGl6ZS5wYXJzZUZsb2F0KHQsMTAsdGhpcy5vcHRpb25zLmN1bHR1cmUpOit0KSwiIj09PXR8fGlzTmFOKHQpP251bGw6dH0sX2Zvcm1hdDpmdW5jdGlvbih0KXtyZXR1cm4iIj09PXQ/IiI6d2luZG93Lkdsb2JhbGl6ZSYmdGhpcy5vcHRpb25zLm51bWJlckZvcm1hdD9HbG9iYWxpemUuZm9ybWF0KHQsdGhpcy5vcHRpb25zLm51bWJlckZvcm1hdCx0aGlzLm9wdGlvbnMuY3VsdHVyZSk6dH0sX3JlZnJlc2g6ZnVuY3Rpb24oKXt0aGlzLmVsZW1lbnQuYXR0cih7ImFyaWEtdmFsdWVtaW4iOnRoaXMub3B0aW9ucy5taW4sImFyaWEtdmFsdWVtYXgiOnRoaXMub3B0aW9ucy5tYXgsImFyaWEtdmFsdWVub3ciOnRoaXMuX3BhcnNlKHRoaXMuZWxlbWVudC52YWwoKSl9KX0sX3ZhbHVlOmZ1bmN0aW9uKHQsZSl7dmFyIGk7IiIhPT10JiYoaT10aGlzLl9wYXJzZSh0KSxudWxsIT09aSYmKGV8fChpPXRoaXMuX2FkanVzdFZhbHVlKGkpKSx0PXRoaXMuX2Zvcm1hdChpKSkpLHRoaXMuZWxlbWVudC52YWwodCksdGhpcy5fcmVmcmVzaCgpfSxfZGVzdHJveTpmdW5jdGlvbigpe3RoaXMuZWxlbWVudC5yZW1vdmVDbGFzcygidWktc3Bpbm5lci1pbnB1dCIpLnByb3AoImRpc2FibGVkIiwhMSkucmVtb3ZlQXR0cigiYXV0b2NvbXBsZXRlIikucmVtb3ZlQXR0cigicm9sZSIpLnJlbW92ZUF0dHIoImFyaWEtdmFsdWVtaW4iKS5yZW1vdmVBdHRyKCJhcmlhLXZhbHVlbWF4IikucmVtb3ZlQXR0cigiYXJpYS12YWx1ZW5vdyIpLHRoaXMudWlTcGlubmVyLnJlcGxhY2VXaXRoKHRoaXMuZWxlbWVudCl9LHN0ZXBVcDplKGZ1bmN0aW9uKHQpe3RoaXMuX3N0ZXBVcCh0KX0pLF9zdGVwVXA6ZnVuY3Rpb24odCl7dGhpcy5fc3RhcnQoKSYmKHRoaXMuX3NwaW4oKHR8fDEpKnRoaXMub3B0aW9ucy5zdGVwKSx0aGlzLl9zdG9wKCkpfSxzdGVwRG93bjplKGZ1bmN0aW9uKHQpe3RoaXMuX3N0ZXBEb3duKHQpfSksX3N0ZXBEb3duOmZ1bmN0aW9uKHQpe3RoaXMuX3N0YXJ0KCkmJih0aGlzLl9zcGluKCh0fHwxKSotdGhpcy5vcHRpb25zLnN0ZXApLHRoaXMuX3N0b3AoKSl9LHBhZ2VVcDplKGZ1bmN0aW9uKHQpe3RoaXMuX3N0ZXBVcCgodHx8MSkqdGhpcy5vcHRpb25zLnBhZ2UpfSkscGFnZURvd246ZShmdW5jdGlvbih0KXt0aGlzLl9zdGVwRG93bigodHx8MSkqdGhpcy5vcHRpb25zLnBhZ2UpfSksdmFsdWU6ZnVuY3Rpb24odCl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg/KGUodGhpcy5fdmFsdWUpLmNhbGwodGhpcyx0KSx2b2lkIDApOnRoaXMuX3BhcnNlKHRoaXMuZWxlbWVudC52YWwoKSl9LHdpZGdldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnVpU3Bpbm5lcn19KX0pKGpRdWVyeSk7KGZ1bmN0aW9uKHQsZSl7ZnVuY3Rpb24gaSgpe3JldHVybisrbn1mdW5jdGlvbiBzKHQpe3JldHVybiB0PXQuY2xvbmVOb2RlKCExKSx0Lmhhc2gubGVuZ3RoPjEmJmRlY29kZVVSSUNvbXBvbmVudCh0LmhyZWYucmVwbGFjZShhLCIiKSk9PT1kZWNvZGVVUklDb21wb25lbnQobG9jYXRpb24uaHJlZi5yZXBsYWNlKGEsIiIpKX12YXIgbj0wLGE9LyMuKiQvO3Qud2lkZ2V0KCJ1aS50YWJzIix7dmVyc2lvbjoiMS4xMC40IixkZWxheTozMDAsb3B0aW9uczp7YWN0aXZlOm51bGwsY29sbGFwc2libGU6ITEsZXZlbnQ6ImNsaWNrIixoZWlnaHRTdHlsZToiY29udGVudCIsaGlkZTpudWxsLHNob3c6bnVsbCxhY3RpdmF0ZTpudWxsLGJlZm9yZUFjdGl2YXRlOm51bGwsYmVmb3JlTG9hZDpudWxsLGxvYWQ6bnVsbH0sX2NyZWF0ZTpmdW5jdGlvbigpe3ZhciBlPXRoaXMsaT10aGlzLm9wdGlvbnM7dGhpcy5ydW5uaW5nPSExLHRoaXMuZWxlbWVudC5hZGRDbGFzcygidWktdGFicyB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktY29ybmVyLWFsbCIpLnRvZ2dsZUNsYXNzKCJ1aS10YWJzLWNvbGxhcHNpYmxlIixpLmNvbGxhcHNpYmxlKS5kZWxlZ2F0ZSgiLnVpLXRhYnMtbmF2ID4gbGkiLCJtb3VzZWRvd24iK3RoaXMuZXZlbnROYW1lc3BhY2UsZnVuY3Rpb24oZSl7dCh0aGlzKS5pcygiLnVpLXN0YXRlLWRpc2FibGVkIikmJmUucHJldmVudERlZmF1bHQoKX0pLmRlbGVnYXRlKCIudWktdGFicy1hbmNob3IiLCJmb2N1cyIrdGhpcy5ldmVudE5hbWVzcGFjZSxmdW5jdGlvbigpe3QodGhpcykuY2xvc2VzdCgibGkiKS5pcygiLnVpLXN0YXRlLWRpc2FibGVkIikmJnRoaXMuYmx1cigpfSksdGhpcy5fcHJvY2Vzc1RhYnMoKSxpLmFjdGl2ZT10aGlzLl9pbml0aWFsQWN0aXZlKCksdC5pc0FycmF5KGkuZGlzYWJsZWQpJiYoaS5kaXNhYmxlZD10LnVuaXF1ZShpLmRpc2FibGVkLmNvbmNhdCh0Lm1hcCh0aGlzLnRhYnMuZmlsdGVyKCIudWktc3RhdGUtZGlzYWJsZWQiKSxmdW5jdGlvbih0KXtyZXR1cm4gZS50YWJzLmluZGV4KHQpfSkpKS5zb3J0KCkpLHRoaXMuYWN0aXZlPXRoaXMub3B0aW9ucy5hY3RpdmUhPT0hMSYmdGhpcy5hbmNob3JzLmxlbmd0aD90aGlzLl9maW5kQWN0aXZlKGkuYWN0aXZlKTp0KCksdGhpcy5fcmVmcmVzaCgpLHRoaXMuYWN0aXZlLmxlbmd0aCYmdGhpcy5sb2FkKGkuYWN0aXZlKX0sX2luaXRpYWxBY3RpdmU6ZnVuY3Rpb24oKXt2YXIgaT10aGlzLm9wdGlvbnMuYWN0aXZlLHM9dGhpcy5vcHRpb25zLmNvbGxhcHNpYmxlLG49bG9jYXRpb24uaGFzaC5zdWJzdHJpbmcoMSk7cmV0dXJuIG51bGw9PT1pJiYobiYmdGhpcy50YWJzLmVhY2goZnVuY3Rpb24ocyxhKXtyZXR1cm4gdChhKS5hdHRyKCJhcmlhLWNvbnRyb2xzIik9PT1uPyhpPXMsITEpOmV9KSxudWxsPT09aSYmKGk9dGhpcy50YWJzLmluZGV4KHRoaXMudGFicy5maWx0ZXIoIi51aS10YWJzLWFjdGl2ZSIpKSksKG51bGw9PT1pfHwtMT09PWkpJiYoaT10aGlzLnRhYnMubGVuZ3RoPzA6ITEpKSxpIT09ITEmJihpPXRoaXMudGFicy5pbmRleCh0aGlzLnRhYnMuZXEoaSkpLC0xPT09aSYmKGk9cz8hMTowKSksIXMmJmk9PT0hMSYmdGhpcy5hbmNob3JzLmxlbmd0aCYmKGk9MCksaX0sX2dldENyZWF0ZUV2ZW50RGF0YTpmdW5jdGlvbigpe3JldHVybnt0YWI6dGhpcy5hY3RpdmUscGFuZWw6dGhpcy5hY3RpdmUubGVuZ3RoP3RoaXMuX2dldFBhbmVsRm9yVGFiKHRoaXMuYWN0aXZlKTp0KCl9fSxfdGFiS2V5ZG93bjpmdW5jdGlvbihpKXt2YXIgcz10KHRoaXMuZG9jdW1lbnRbMF0uYWN0aXZlRWxlbWVudCkuY2xvc2VzdCgibGkiKSxuPXRoaXMudGFicy5pbmRleChzKSxhPSEwO2lmKCF0aGlzLl9oYW5kbGVQYWdlTmF2KGkpKXtzd2l0Y2goaS5rZXlDb2RlKXtjYXNlIHQudWkua2V5Q29kZS5SSUdIVDpjYXNlIHQudWkua2V5Q29kZS5ET1dOOm4rKzticmVhaztjYXNlIHQudWkua2V5Q29kZS5VUDpjYXNlIHQudWkua2V5Q29kZS5MRUZUOmE9ITEsbi0tO2JyZWFrO2Nhc2UgdC51aS5rZXlDb2RlLkVORDpuPXRoaXMuYW5jaG9ycy5sZW5ndGgtMTticmVhaztjYXNlIHQudWkua2V5Q29kZS5IT01FOm49MDticmVhaztjYXNlIHQudWkua2V5Q29kZS5TUEFDRTpyZXR1cm4gaS5wcmV2ZW50RGVmYXVsdCgpLGNsZWFyVGltZW91dCh0aGlzLmFjdGl2YXRpbmcpLHRoaXMuX2FjdGl2YXRlKG4pLGU7Y2FzZSB0LnVpLmtleUNvZGUuRU5URVI6cmV0dXJuIGkucHJldmVudERlZmF1bHQoKSxjbGVhclRpbWVvdXQodGhpcy5hY3RpdmF0aW5nKSx0aGlzLl9hY3RpdmF0ZShuPT09dGhpcy5vcHRpb25zLmFjdGl2ZT8hMTpuKSxlO2RlZmF1bHQ6cmV0dXJufWkucHJldmVudERlZmF1bHQoKSxjbGVhclRpbWVvdXQodGhpcy5hY3RpdmF0aW5nKSxuPXRoaXMuX2ZvY3VzTmV4dFRhYihuLGEpLGkuY3RybEtleXx8KHMuYXR0cigiYXJpYS1zZWxlY3RlZCIsImZhbHNlIiksdGhpcy50YWJzLmVxKG4pLmF0dHIoImFyaWEtc2VsZWN0ZWQiLCJ0cnVlIiksdGhpcy5hY3RpdmF0aW5nPXRoaXMuX2RlbGF5KGZ1bmN0aW9uKCl7dGhpcy5vcHRpb24oImFjdGl2ZSIsbil9LHRoaXMuZGVsYXkpKX19LF9wYW5lbEtleWRvd246ZnVuY3Rpb24oZSl7dGhpcy5faGFuZGxlUGFnZU5hdihlKXx8ZS5jdHJsS2V5JiZlLmtleUNvZGU9PT10LnVpLmtleUNvZGUuVVAmJihlLnByZXZlbnREZWZhdWx0KCksdGhpcy5hY3RpdmUuZm9jdXMoKSl9LF9oYW5kbGVQYWdlTmF2OmZ1bmN0aW9uKGkpe3JldHVybiBpLmFsdEtleSYmaS5rZXlDb2RlPT09dC51aS5rZXlDb2RlLlBBR0VfVVA/KHRoaXMuX2FjdGl2YXRlKHRoaXMuX2ZvY3VzTmV4dFRhYih0aGlzLm9wdGlvbnMuYWN0aXZlLTEsITEpKSwhMCk6aS5hbHRLZXkmJmkua2V5Q29kZT09PXQudWkua2V5Q29kZS5QQUdFX0RPV04/KHRoaXMuX2FjdGl2YXRlKHRoaXMuX2ZvY3VzTmV4dFRhYih0aGlzLm9wdGlvbnMuYWN0aXZlKzEsITApKSwhMCk6ZX0sX2ZpbmROZXh0VGFiOmZ1bmN0aW9uKGUsaSl7ZnVuY3Rpb24gcygpe3JldHVybiBlPm4mJihlPTApLDA+ZSYmKGU9biksZX1mb3IodmFyIG49dGhpcy50YWJzLmxlbmd0aC0xOy0xIT09dC5pbkFycmF5KHMoKSx0aGlzLm9wdGlvbnMuZGlzYWJsZWQpOyllPWk/ZSsxOmUtMTtyZXR1cm4gZX0sX2ZvY3VzTmV4dFRhYjpmdW5jdGlvbih0LGUpe3JldHVybiB0PXRoaXMuX2ZpbmROZXh0VGFiKHQsZSksdGhpcy50YWJzLmVxKHQpLmZvY3VzKCksdH0sX3NldE9wdGlvbjpmdW5jdGlvbih0LGkpe3JldHVybiJhY3RpdmUiPT09dD8odGhpcy5fYWN0aXZhdGUoaSksZSk6ImRpc2FibGVkIj09PXQ/KHRoaXMuX3NldHVwRGlzYWJsZWQoaSksZSk6KHRoaXMuX3N1cGVyKHQsaSksImNvbGxhcHNpYmxlIj09PXQmJih0aGlzLmVsZW1lbnQudG9nZ2xlQ2xhc3MoInVpLXRhYnMtY29sbGFwc2libGUiLGkpLGl8fHRoaXMub3B0aW9ucy5hY3RpdmUhPT0hMXx8dGhpcy5fYWN0aXZhdGUoMCkpLCJldmVudCI9PT10JiZ0aGlzLl9zZXR1cEV2ZW50cyhpKSwiaGVpZ2h0U3R5bGUiPT09dCYmdGhpcy5fc2V0dXBIZWlnaHRTdHlsZShpKSxlKX0sX3RhYklkOmZ1bmN0aW9uKHQpe3JldHVybiB0LmF0dHIoImFyaWEtY29udHJvbHMiKXx8InVpLXRhYnMtIitpKCl9LF9zYW5pdGl6ZVNlbGVjdG9yOmZ1bmN0aW9uKHQpe3JldHVybiB0P3QucmVwbGFjZSgvWyEiJCUmJygpKissLlwvOjs8PT4/QFxbXF1cXmB7fH1+XS9nLCJcXCQmIik6IiJ9LHJlZnJlc2g6ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm9wdGlvbnMsaT10aGlzLnRhYmxpc3QuY2hpbGRyZW4oIjpoYXMoYVtocmVmXSkiKTtlLmRpc2FibGVkPXQubWFwKGkuZmlsdGVyKCIudWktc3RhdGUtZGlzYWJsZWQiKSxmdW5jdGlvbih0KXtyZXR1cm4gaS5pbmRleCh0KX0pLHRoaXMuX3Byb2Nlc3NUYWJzKCksZS5hY3RpdmUhPT0hMSYmdGhpcy5hbmNob3JzLmxlbmd0aD90aGlzLmFjdGl2ZS5sZW5ndGgmJiF0LmNvbnRhaW5zKHRoaXMudGFibGlzdFswXSx0aGlzLmFjdGl2ZVswXSk/dGhpcy50YWJzLmxlbmd0aD09PWUuZGlzYWJsZWQubGVuZ3RoPyhlLmFjdGl2ZT0hMSx0aGlzLmFjdGl2ZT10KCkpOnRoaXMuX2FjdGl2YXRlKHRoaXMuX2ZpbmROZXh0VGFiKE1hdGgubWF4KDAsZS5hY3RpdmUtMSksITEpKTplLmFjdGl2ZT10aGlzLnRhYnMuaW5kZXgodGhpcy5hY3RpdmUpOihlLmFjdGl2ZT0hMSx0aGlzLmFjdGl2ZT10KCkpLHRoaXMuX3JlZnJlc2goKX0sX3JlZnJlc2g6ZnVuY3Rpb24oKXt0aGlzLl9zZXR1cERpc2FibGVkKHRoaXMub3B0aW9ucy5kaXNhYmxlZCksdGhpcy5fc2V0dXBFdmVudHModGhpcy5vcHRpb25zLmV2ZW50KSx0aGlzLl9zZXR1cEhlaWdodFN0eWxlKHRoaXMub3B0aW9ucy5oZWlnaHRTdHlsZSksdGhpcy50YWJzLm5vdCh0aGlzLmFjdGl2ZSkuYXR0cih7ImFyaWEtc2VsZWN0ZWQiOiJmYWxzZSIsdGFiSW5kZXg6LTF9KSx0aGlzLnBhbmVscy5ub3QodGhpcy5fZ2V0UGFuZWxGb3JUYWIodGhpcy5hY3RpdmUpKS5oaWRlKCkuYXR0cih7ImFyaWEtZXhwYW5kZWQiOiJmYWxzZSIsImFyaWEtaGlkZGVuIjoidHJ1ZSJ9KSx0aGlzLmFjdGl2ZS5sZW5ndGg/KHRoaXMuYWN0aXZlLmFkZENsYXNzKCJ1aS10YWJzLWFjdGl2ZSB1aS1zdGF0ZS1hY3RpdmUiKS5hdHRyKHsiYXJpYS1zZWxlY3RlZCI6InRydWUiLHRhYkluZGV4OjB9KSx0aGlzLl9nZXRQYW5lbEZvclRhYih0aGlzLmFjdGl2ZSkuc2hvdygpLmF0dHIoeyJhcmlhLWV4cGFuZGVkIjoidHJ1ZSIsImFyaWEtaGlkZGVuIjoiZmFsc2UifSkpOnRoaXMudGFicy5lcSgwKS5hdHRyKCJ0YWJJbmRleCIsMCl9LF9wcm9jZXNzVGFiczpmdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy50YWJsaXN0PXRoaXMuX2dldExpc3QoKS5hZGRDbGFzcygidWktdGFicy1uYXYgdWktaGVscGVyLXJlc2V0IHVpLWhlbHBlci1jbGVhcmZpeCB1aS13aWRnZXQtaGVhZGVyIHVpLWNvcm5lci1hbGwiKS5hdHRyKCJyb2xlIiwidGFibGlzdCIpLHRoaXMudGFicz10aGlzLnRhYmxpc3QuZmluZCgiPiBsaTpoYXMoYVtocmVmXSkiKS5hZGRDbGFzcygidWktc3RhdGUtZGVmYXVsdCB1aS1jb3JuZXItdG9wIikuYXR0cih7cm9sZToidGFiIix0YWJJbmRleDotMX0pLHRoaXMuYW5jaG9ycz10aGlzLnRhYnMubWFwKGZ1bmN0aW9uKCl7cmV0dXJuIHQoImEiLHRoaXMpWzBdfSkuYWRkQ2xhc3MoInVpLXRhYnMtYW5jaG9yIikuYXR0cih7cm9sZToicHJlc2VudGF0aW9uIix0YWJJbmRleDotMX0pLHRoaXMucGFuZWxzPXQoKSx0aGlzLmFuY2hvcnMuZWFjaChmdW5jdGlvbihpLG4pe3ZhciBhLG8scixoPXQobikudW5pcXVlSWQoKS5hdHRyKCJpZCIpLGw9dChuKS5jbG9zZXN0KCJsaSIpLGM9bC5hdHRyKCJhcmlhLWNvbnRyb2xzIik7cyhuKT8oYT1uLmhhc2gsbz1lLmVsZW1lbnQuZmluZChlLl9zYW5pdGl6ZVNlbGVjdG9yKGEpKSk6KHI9ZS5fdGFiSWQobCksYT0iIyIrcixvPWUuZWxlbWVudC5maW5kKGEpLG8ubGVuZ3RofHwobz1lLl9jcmVhdGVQYW5lbChyKSxvLmluc2VydEFmdGVyKGUucGFuZWxzW2ktMV18fGUudGFibGlzdCkpLG8uYXR0cigiYXJpYS1saXZlIiwicG9saXRlIikpLG8ubGVuZ3RoJiYoZS5wYW5lbHM9ZS5wYW5lbHMuYWRkKG8pKSxjJiZsLmRhdGEoInVpLXRhYnMtYXJpYS1jb250cm9scyIsYyksbC5hdHRyKHsiYXJpYS1jb250cm9scyI6YS5zdWJzdHJpbmcoMSksImFyaWEtbGFiZWxsZWRieSI6aH0pLG8uYXR0cigiYXJpYS1sYWJlbGxlZGJ5IixoKX0pLHRoaXMucGFuZWxzLmFkZENsYXNzKCJ1aS10YWJzLXBhbmVsIHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1ib3R0b20iKS5hdHRyKCJyb2xlIiwidGFicGFuZWwiKX0sX2dldExpc3Q6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50YWJsaXN0fHx0aGlzLmVsZW1lbnQuZmluZCgib2wsdWwiKS5lcSgwKX0sX2NyZWF0ZVBhbmVsOmZ1bmN0aW9uKGUpe3JldHVybiB0KCI8ZGl2PiIpLmF0dHIoImlkIixlKS5hZGRDbGFzcygidWktdGFicy1wYW5lbCB1aS13aWRnZXQtY29udGVudCB1aS1jb3JuZXItYm90dG9tIikuZGF0YSgidWktdGFicy1kZXN0cm95IiwhMCl9LF9zZXR1cERpc2FibGVkOmZ1bmN0aW9uKGUpe3QuaXNBcnJheShlKSYmKGUubGVuZ3RoP2UubGVuZ3RoPT09dGhpcy5hbmNob3JzLmxlbmd0aCYmKGU9ITApOmU9ITEpO2Zvcih2YXIgaSxzPTA7aT10aGlzLnRhYnNbc107cysrKWU9PT0hMHx8LTEhPT10LmluQXJyYXkocyxlKT90KGkpLmFkZENsYXNzKCJ1aS1zdGF0ZS1kaXNhYmxlZCIpLmF0dHIoImFyaWEtZGlzYWJsZWQiLCJ0cnVlIik6dChpKS5yZW1vdmVDbGFzcygidWktc3RhdGUtZGlzYWJsZWQiKS5yZW1vdmVBdHRyKCJhcmlhLWRpc2FibGVkIik7dGhpcy5vcHRpb25zLmRpc2FibGVkPWV9LF9zZXR1cEV2ZW50czpmdW5jdGlvbihlKXt2YXIgaT17Y2xpY2s6ZnVuY3Rpb24odCl7dC5wcmV2ZW50RGVmYXVsdCgpfX07ZSYmdC5lYWNoKGUuc3BsaXQoIiAiKSxmdW5jdGlvbih0LGUpe2lbZV09Il9ldmVudEhhbmRsZXIifSksdGhpcy5fb2ZmKHRoaXMuYW5jaG9ycy5hZGQodGhpcy50YWJzKS5hZGQodGhpcy5wYW5lbHMpKSx0aGlzLl9vbih0aGlzLmFuY2hvcnMsaSksdGhpcy5fb24odGhpcy50YWJzLHtrZXlkb3duOiJfdGFiS2V5ZG93biJ9KSx0aGlzLl9vbih0aGlzLnBhbmVscyx7a2V5ZG93bjoiX3BhbmVsS2V5ZG93biJ9KSx0aGlzLl9mb2N1c2FibGUodGhpcy50YWJzKSx0aGlzLl9ob3ZlcmFibGUodGhpcy50YWJzKX0sX3NldHVwSGVpZ2h0U3R5bGU6ZnVuY3Rpb24oZSl7dmFyIGkscz10aGlzLmVsZW1lbnQucGFyZW50KCk7ImZpbGwiPT09ZT8oaT1zLmhlaWdodCgpLGktPXRoaXMuZWxlbWVudC5vdXRlckhlaWdodCgpLXRoaXMuZWxlbWVudC5oZWlnaHQoKSx0aGlzLmVsZW1lbnQuc2libGluZ3MoIjp2aXNpYmxlIikuZWFjaChmdW5jdGlvbigpe3ZhciBlPXQodGhpcykscz1lLmNzcygicG9zaXRpb24iKTsiYWJzb2x1dGUiIT09cyYmImZpeGVkIiE9PXMmJihpLT1lLm91dGVySGVpZ2h0KCEwKSl9KSx0aGlzLmVsZW1lbnQuY2hpbGRyZW4oKS5ub3QodGhpcy5wYW5lbHMpLmVhY2goZnVuY3Rpb24oKXtpLT10KHRoaXMpLm91dGVySGVpZ2h0KCEwKX0pLHRoaXMucGFuZWxzLmVhY2goZnVuY3Rpb24oKXt0KHRoaXMpLmhlaWdodChNYXRoLm1heCgwLGktdCh0aGlzKS5pbm5lckhlaWdodCgpK3QodGhpcykuaGVpZ2h0KCkpKX0pLmNzcygib3ZlcmZsb3ciLCJhdXRvIikpOiJhdXRvIj09PWUmJihpPTAsdGhpcy5wYW5lbHMuZWFjaChmdW5jdGlvbigpe2k9TWF0aC5tYXgoaSx0KHRoaXMpLmhlaWdodCgiIikuaGVpZ2h0KCkpfSkuaGVpZ2h0KGkpKX0sX2V2ZW50SGFuZGxlcjpmdW5jdGlvbihlKXt2YXIgaT10aGlzLm9wdGlvbnMscz10aGlzLmFjdGl2ZSxuPXQoZS5jdXJyZW50VGFyZ2V0KSxhPW4uY2xvc2VzdCgibGkiKSxvPWFbMF09PT1zWzBdLHI9byYmaS5jb2xsYXBzaWJsZSxoPXI/dCgpOnRoaXMuX2dldFBhbmVsRm9yVGFiKGEpLGw9cy5sZW5ndGg/dGhpcy5fZ2V0UGFuZWxGb3JUYWIocyk6dCgpLGM9e29sZFRhYjpzLG9sZFBhbmVsOmwsbmV3VGFiOnI/dCgpOmEsbmV3UGFuZWw6aH07ZS5wcmV2ZW50RGVmYXVsdCgpLGEuaGFzQ2xhc3MoInVpLXN0YXRlLWRpc2FibGVkIil8fGEuaGFzQ2xhc3MoInVpLXRhYnMtbG9hZGluZyIpfHx0aGlzLnJ1bm5pbmd8fG8mJiFpLmNvbGxhcHNpYmxlfHx0aGlzLl90cmlnZ2VyKCJiZWZvcmVBY3RpdmF0ZSIsZSxjKT09PSExfHwoaS5hY3RpdmU9cj8hMTp0aGlzLnRhYnMuaW5kZXgoYSksdGhpcy5hY3RpdmU9bz90KCk6YSx0aGlzLnhociYmdGhpcy54aHIuYWJvcnQoKSxsLmxlbmd0aHx8aC5sZW5ndGh8fHQuZXJyb3IoImpRdWVyeSBVSSBUYWJzOiBNaXNtYXRjaGluZyBmcmFnbWVudCBpZGVudGlmaWVyLiIpLGgubGVuZ3RoJiZ0aGlzLmxvYWQodGhpcy50YWJzLmluZGV4KGEpLGUpLHRoaXMuX3RvZ2dsZShlLGMpKX0sX3RvZ2dsZTpmdW5jdGlvbihlLGkpe2Z1bmN0aW9uIHMoKXthLnJ1bm5pbmc9ITEsYS5fdHJpZ2dlcigiYWN0aXZhdGUiLGUsaSl9ZnVuY3Rpb24gbigpe2kubmV3VGFiLmNsb3Nlc3QoImxpIikuYWRkQ2xhc3MoInVpLXRhYnMtYWN0aXZlIHVpLXN0YXRlLWFjdGl2ZSIpLG8ubGVuZ3RoJiZhLm9wdGlvbnMuc2hvdz9hLl9zaG93KG8sYS5vcHRpb25zLnNob3cscyk6KG8uc2hvdygpLHMoKSl9dmFyIGE9dGhpcyxvPWkubmV3UGFuZWwscj1pLm9sZFBhbmVsO3RoaXMucnVubmluZz0hMCxyLmxlbmd0aCYmdGhpcy5vcHRpb25zLmhpZGU/dGhpcy5faGlkZShyLHRoaXMub3B0aW9ucy5oaWRlLGZ1bmN0aW9uKCl7aS5vbGRUYWIuY2xvc2VzdCgibGkiKS5yZW1vdmVDbGFzcygidWktdGFicy1hY3RpdmUgdWktc3RhdGUtYWN0aXZlIiksbigpfSk6KGkub2xkVGFiLmNsb3Nlc3QoImxpIikucmVtb3ZlQ2xhc3MoInVpLXRhYnMtYWN0aXZlIHVpLXN0YXRlLWFjdGl2ZSIpLHIuaGlkZSgpLG4oKSksci5hdHRyKHsiYXJpYS1leHBhbmRlZCI6ImZhbHNlIiwiYXJpYS1oaWRkZW4iOiJ0cnVlIn0pLGkub2xkVGFiLmF0dHIoImFyaWEtc2VsZWN0ZWQiLCJmYWxzZSIpLG8ubGVuZ3RoJiZyLmxlbmd0aD9pLm9sZFRhYi5hdHRyKCJ0YWJJbmRleCIsLTEpOm8ubGVuZ3RoJiZ0aGlzLnRhYnMuZmlsdGVyKGZ1bmN0aW9uKCl7cmV0dXJuIDA9PT10KHRoaXMpLmF0dHIoInRhYkluZGV4Iil9KS5hdHRyKCJ0YWJJbmRleCIsLTEpLG8uYXR0cih7ImFyaWEtZXhwYW5kZWQiOiJ0cnVlIiwiYXJpYS1oaWRkZW4iOiJmYWxzZSJ9KSxpLm5ld1RhYi5hdHRyKHsiYXJpYS1zZWxlY3RlZCI6InRydWUiLHRhYkluZGV4OjB9KX0sX2FjdGl2YXRlOmZ1bmN0aW9uKGUpe3ZhciBpLHM9dGhpcy5fZmluZEFjdGl2ZShlKTtzWzBdIT09dGhpcy5hY3RpdmVbMF0mJihzLmxlbmd0aHx8KHM9dGhpcy5hY3RpdmUpLGk9cy5maW5kKCIudWktdGFicy1hbmNob3IiKVswXSx0aGlzLl9ldmVudEhhbmRsZXIoe3RhcmdldDppLGN1cnJlbnRUYXJnZXQ6aSxwcmV2ZW50RGVmYXVsdDp0Lm5vb3B9KSl9LF9maW5kQWN0aXZlOmZ1bmN0aW9uKGUpe3JldHVybiBlPT09ITE/dCgpOnRoaXMudGFicy5lcShlKX0sX2dldEluZGV4OmZ1bmN0aW9uKHQpe3JldHVybiJzdHJpbmciPT10eXBlb2YgdCYmKHQ9dGhpcy5hbmNob3JzLmluZGV4KHRoaXMuYW5jaG9ycy5maWx0ZXIoIltocmVmJD0nIit0KyInXSIpKSksdH0sX2Rlc3Ryb3k6ZnVuY3Rpb24oKXt0aGlzLnhociYmdGhpcy54aHIuYWJvcnQoKSx0aGlzLmVsZW1lbnQucmVtb3ZlQ2xhc3MoInVpLXRhYnMgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWNvcm5lci1hbGwgdWktdGFicy1jb2xsYXBzaWJsZSIpLHRoaXMudGFibGlzdC5yZW1vdmVDbGFzcygidWktdGFicy1uYXYgdWktaGVscGVyLXJlc2V0IHVpLWhlbHBlci1jbGVhcmZpeCB1aS13aWRnZXQtaGVhZGVyIHVpLWNvcm5lci1hbGwiKS5yZW1vdmVBdHRyKCJyb2xlIiksdGhpcy5hbmNob3JzLnJlbW92ZUNsYXNzKCJ1aS10YWJzLWFuY2hvciIpLnJlbW92ZUF0dHIoInJvbGUiKS5yZW1vdmVBdHRyKCJ0YWJJbmRleCIpLnJlbW92ZVVuaXF1ZUlkKCksdGhpcy50YWJzLmFkZCh0aGlzLnBhbmVscykuZWFjaChmdW5jdGlvbigpe3QuZGF0YSh0aGlzLCJ1aS10YWJzLWRlc3Ryb3kiKT90KHRoaXMpLnJlbW92ZSgpOnQodGhpcykucmVtb3ZlQ2xhc3MoInVpLXN0YXRlLWRlZmF1bHQgdWktc3RhdGUtYWN0aXZlIHVpLXN0YXRlLWRpc2FibGVkIHVpLWNvcm5lci10b3AgdWktY29ybmVyLWJvdHRvbSB1aS13aWRnZXQtY29udGVudCB1aS10YWJzLWFjdGl2ZSB1aS10YWJzLXBhbmVsIikucmVtb3ZlQXR0cigidGFiSW5kZXgiKS5yZW1vdmVBdHRyKCJhcmlhLWxpdmUiKS5yZW1vdmVBdHRyKCJhcmlhLWJ1c3kiKS5yZW1vdmVBdHRyKCJhcmlhLXNlbGVjdGVkIikucmVtb3ZlQXR0cigiYXJpYS1sYWJlbGxlZGJ5IikucmVtb3ZlQXR0cigiYXJpYS1oaWRkZW4iKS5yZW1vdmVBdHRyKCJhcmlhLWV4cGFuZGVkIikucmVtb3ZlQXR0cigicm9sZSIpfSksdGhpcy50YWJzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT10KHRoaXMpLGk9ZS5kYXRhKCJ1aS10YWJzLWFyaWEtY29udHJvbHMiKTtpP2UuYXR0cigiYXJpYS1jb250cm9scyIsaSkucmVtb3ZlRGF0YSgidWktdGFicy1hcmlhLWNvbnRyb2xzIik6ZS5yZW1vdmVBdHRyKCJhcmlhLWNvbnRyb2xzIil9KSx0aGlzLnBhbmVscy5zaG93KCksImNvbnRlbnQiIT09dGhpcy5vcHRpb25zLmhlaWdodFN0eWxlJiZ0aGlzLnBhbmVscy5jc3MoImhlaWdodCIsIiIpfSxlbmFibGU6ZnVuY3Rpb24oaSl7dmFyIHM9dGhpcy5vcHRpb25zLmRpc2FibGVkO3MhPT0hMSYmKGk9PT1lP3M9ITE6KGk9dGhpcy5fZ2V0SW5kZXgoaSkscz10LmlzQXJyYXkocyk/dC5tYXAocyxmdW5jdGlvbih0KXtyZXR1cm4gdCE9PWk/dDpudWxsfSk6dC5tYXAodGhpcy50YWJzLGZ1bmN0aW9uKHQsZSl7cmV0dXJuIGUhPT1pP2U6bnVsbH0pKSx0aGlzLl9zZXR1cERpc2FibGVkKHMpKX0sZGlzYWJsZTpmdW5jdGlvbihpKXt2YXIgcz10aGlzLm9wdGlvbnMuZGlzYWJsZWQ7aWYocyE9PSEwKXtpZihpPT09ZSlzPSEwO2Vsc2V7aWYoaT10aGlzLl9nZXRJbmRleChpKSwtMSE9PXQuaW5BcnJheShpLHMpKXJldHVybjtzPXQuaXNBcnJheShzKT90Lm1lcmdlKFtpXSxzKS5zb3J0KCk6W2ldfXRoaXMuX3NldHVwRGlzYWJsZWQocyl9fSxsb2FkOmZ1bmN0aW9uKGUsaSl7ZT10aGlzLl9nZXRJbmRleChlKTt2YXIgbj10aGlzLGE9dGhpcy50YWJzLmVxKGUpLG89YS5maW5kKCIudWktdGFicy1hbmNob3IiKSxyPXRoaXMuX2dldFBhbmVsRm9yVGFiKGEpLGg9e3RhYjphLHBhbmVsOnJ9O3Mob1swXSl8fCh0aGlzLnhocj10LmFqYXgodGhpcy5fYWpheFNldHRpbmdzKG8saSxoKSksdGhpcy54aHImJiJjYW5jZWxlZCIhPT10aGlzLnhoci5zdGF0dXNUZXh0JiYoYS5hZGRDbGFzcygidWktdGFicy1sb2FkaW5nIiksci5hdHRyKCJhcmlhLWJ1c3kiLCJ0cnVlIiksdGhpcy54aHIuc3VjY2VzcyhmdW5jdGlvbih0KXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5odG1sKHQpLG4uX3RyaWdnZXIoImxvYWQiLGksaCl9LDEpfSkuY29tcGxldGUoZnVuY3Rpb24odCxlKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ImFib3J0Ij09PWUmJm4ucGFuZWxzLnN0b3AoITEsITApLGEucmVtb3ZlQ2xhc3MoInVpLXRhYnMtbG9hZGluZyIpLHIucmVtb3ZlQXR0cigiYXJpYS1idXN5IiksdD09PW4ueGhyJiZkZWxldGUgbi54aHJ9LDEpfSkpKX0sX2FqYXhTZXR0aW5nczpmdW5jdGlvbihlLGkscyl7dmFyIG49dGhpcztyZXR1cm57dXJsOmUuYXR0cigiaHJlZiIpLGJlZm9yZVNlbmQ6ZnVuY3Rpb24oZSxhKXtyZXR1cm4gbi5fdHJpZ2dlcigiYmVmb3JlTG9hZCIsaSx0LmV4dGVuZCh7anFYSFI6ZSxhamF4U2V0dGluZ3M6YX0scykpfX19LF9nZXRQYW5lbEZvclRhYjpmdW5jdGlvbihlKXt2YXIgaT10KGUpLmF0dHIoImFyaWEtY29udHJvbHMiKTtyZXR1cm4gdGhpcy5lbGVtZW50LmZpbmQodGhpcy5fc2FuaXRpemVTZWxlY3RvcigiIyIraSkpfX0pfSkoalF1ZXJ5KTsoZnVuY3Rpb24odCl7ZnVuY3Rpb24gZShlLGkpe3ZhciBzPShlLmF0dHIoImFyaWEtZGVzY3JpYmVkYnkiKXx8IiIpLnNwbGl0KC9ccysvKTtzLnB1c2goaSksZS5kYXRhKCJ1aS10b29sdGlwLWlkIixpKS5hdHRyKCJhcmlhLWRlc2NyaWJlZGJ5Iix0LnRyaW0ocy5qb2luKCIgIikpKX1mdW5jdGlvbiBpKGUpe3ZhciBpPWUuZGF0YSgidWktdG9vbHRpcC1pZCIpLHM9KGUuYXR0cigiYXJpYS1kZXNjcmliZWRieSIpfHwiIikuc3BsaXQoL1xzKy8pLG49dC5pbkFycmF5KGkscyk7LTEhPT1uJiZzLnNwbGljZShuLDEpLGUucmVtb3ZlRGF0YSgidWktdG9vbHRpcC1pZCIpLHM9dC50cmltKHMuam9pbigiICIpKSxzP2UuYXR0cigiYXJpYS1kZXNjcmliZWRieSIscyk6ZS5yZW1vdmVBdHRyKCJhcmlhLWRlc2NyaWJlZGJ5Iil9dmFyIHM9MDt0LndpZGdldCgidWkudG9vbHRpcCIse3ZlcnNpb246IjEuMTAuNCIsb3B0aW9uczp7Y29udGVudDpmdW5jdGlvbigpe3ZhciBlPXQodGhpcykuYXR0cigidGl0bGUiKXx8IiI7cmV0dXJuIHQoIjxhPiIpLnRleHQoZSkuaHRtbCgpfSxoaWRlOiEwLGl0ZW1zOiJbdGl0bGVdOm5vdChbZGlzYWJsZWRdKSIscG9zaXRpb246e215OiJsZWZ0IHRvcCsxNSIsYXQ6ImxlZnQgYm90dG9tIixjb2xsaXNpb246ImZsaXBmaXQgZmxpcCJ9LHNob3c6ITAsdG9vbHRpcENsYXNzOm51bGwsdHJhY2s6ITEsY2xvc2U6bnVsbCxvcGVuOm51bGx9LF9jcmVhdGU6ZnVuY3Rpb24oKXt0aGlzLl9vbih7bW91c2VvdmVyOiJvcGVuIixmb2N1c2luOiJvcGVuIn0pLHRoaXMudG9vbHRpcHM9e30sdGhpcy5wYXJlbnRzPXt9LHRoaXMub3B0aW9ucy5kaXNhYmxlZCYmdGhpcy5fZGlzYWJsZSgpfSxfc2V0T3B0aW9uOmZ1bmN0aW9uKGUsaSl7dmFyIHM9dGhpcztyZXR1cm4iZGlzYWJsZWQiPT09ZT8odGhpc1tpPyJfZGlzYWJsZSI6Il9lbmFibGUiXSgpLHRoaXMub3B0aW9uc1tlXT1pLHZvaWQgMCk6KHRoaXMuX3N1cGVyKGUsaSksImNvbnRlbnQiPT09ZSYmdC5lYWNoKHRoaXMudG9vbHRpcHMsZnVuY3Rpb24odCxlKXtzLl91cGRhdGVDb250ZW50KGUpfSksdm9pZCAwKX0sX2Rpc2FibGU6ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3QuZWFjaCh0aGlzLnRvb2x0aXBzLGZ1bmN0aW9uKGkscyl7dmFyIG49dC5FdmVudCgiYmx1ciIpO24udGFyZ2V0PW4uY3VycmVudFRhcmdldD1zWzBdLGUuY2xvc2UobiwhMCl9KSx0aGlzLmVsZW1lbnQuZmluZCh0aGlzLm9wdGlvbnMuaXRlbXMpLmFkZEJhY2soKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9dCh0aGlzKTtlLmlzKCJbdGl0bGVdIikmJmUuZGF0YSgidWktdG9vbHRpcC10aXRsZSIsZS5hdHRyKCJ0aXRsZSIpKS5hdHRyKCJ0aXRsZSIsIiIpfSl9LF9lbmFibGU6ZnVuY3Rpb24oKXt0aGlzLmVsZW1lbnQuZmluZCh0aGlzLm9wdGlvbnMuaXRlbXMpLmFkZEJhY2soKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9dCh0aGlzKTtlLmRhdGEoInVpLXRvb2x0aXAtdGl0bGUiKSYmZS5hdHRyKCJ0aXRsZSIsZS5kYXRhKCJ1aS10b29sdGlwLXRpdGxlIikpfSl9LG9wZW46ZnVuY3Rpb24oZSl7dmFyIGk9dGhpcyxzPXQoZT9lLnRhcmdldDp0aGlzLmVsZW1lbnQpLmNsb3Nlc3QodGhpcy5vcHRpb25zLml0ZW1zKTtzLmxlbmd0aCYmIXMuZGF0YSgidWktdG9vbHRpcC1pZCIpJiYocy5hdHRyKCJ0aXRsZSIpJiZzLmRhdGEoInVpLXRvb2x0aXAtdGl0bGUiLHMuYXR0cigidGl0bGUiKSkscy5kYXRhKCJ1aS10b29sdGlwLW9wZW4iLCEwKSxlJiYibW91c2VvdmVyIj09PWUudHlwZSYmcy5wYXJlbnRzKCkuZWFjaChmdW5jdGlvbigpe3ZhciBlLHM9dCh0aGlzKTtzLmRhdGEoInVpLXRvb2x0aXAtb3BlbiIpJiYoZT10LkV2ZW50KCJibHVyIiksZS50YXJnZXQ9ZS5jdXJyZW50VGFyZ2V0PXRoaXMsaS5jbG9zZShlLCEwKSkscy5hdHRyKCJ0aXRsZSIpJiYocy51bmlxdWVJZCgpLGkucGFyZW50c1t0aGlzLmlkXT17ZWxlbWVudDp0aGlzLHRpdGxlOnMuYXR0cigidGl0bGUiKX0scy5hdHRyKCJ0aXRsZSIsIiIpKX0pLHRoaXMuX3VwZGF0ZUNvbnRlbnQocyxlKSl9LF91cGRhdGVDb250ZW50OmZ1bmN0aW9uKHQsZSl7dmFyIGkscz10aGlzLm9wdGlvbnMuY29udGVudCxuPXRoaXMsbz1lP2UudHlwZTpudWxsO3JldHVybiJzdHJpbmciPT10eXBlb2Ygcz90aGlzLl9vcGVuKGUsdCxzKTooaT1zLmNhbGwodFswXSxmdW5jdGlvbihpKXt0LmRhdGEoInVpLXRvb2x0aXAtb3BlbiIpJiZuLl9kZWxheShmdW5jdGlvbigpe2UmJihlLnR5cGU9byksdGhpcy5fb3BlbihlLHQsaSl9KX0pLGkmJnRoaXMuX29wZW4oZSx0LGkpLHZvaWQgMCl9LF9vcGVuOmZ1bmN0aW9uKGkscyxuKXtmdW5jdGlvbiBvKHQpe2wub2Y9dCxhLmlzKCI6aGlkZGVuIil8fGEucG9zaXRpb24obCl9dmFyIGEscixoLGw9dC5leHRlbmQoe30sdGhpcy5vcHRpb25zLnBvc2l0aW9uKTtpZihuKXtpZihhPXRoaXMuX2ZpbmQocyksYS5sZW5ndGgpcmV0dXJuIGEuZmluZCgiLnVpLXRvb2x0aXAtY29udGVudCIpLmh0bWwobiksdm9pZCAwO3MuaXMoIlt0aXRsZV0iKSYmKGkmJiJtb3VzZW92ZXIiPT09aS50eXBlP3MuYXR0cigidGl0bGUiLCIiKTpzLnJlbW92ZUF0dHIoInRpdGxlIikpLGE9dGhpcy5fdG9vbHRpcChzKSxlKHMsYS5hdHRyKCJpZCIpKSxhLmZpbmQoIi51aS10b29sdGlwLWNvbnRlbnQiKS5odG1sKG4pLHRoaXMub3B0aW9ucy50cmFjayYmaSYmL15tb3VzZS8udGVzdChpLnR5cGUpPyh0aGlzLl9vbih0aGlzLmRvY3VtZW50LHttb3VzZW1vdmU6b30pLG8oaSkpOmEucG9zaXRpb24odC5leHRlbmQoe29mOnN9LHRoaXMub3B0aW9ucy5wb3NpdGlvbikpLGEuaGlkZSgpLHRoaXMuX3Nob3coYSx0aGlzLm9wdGlvbnMuc2hvdyksdGhpcy5vcHRpb25zLnNob3cmJnRoaXMub3B0aW9ucy5zaG93LmRlbGF5JiYoaD10aGlzLmRlbGF5ZWRTaG93PXNldEludGVydmFsKGZ1bmN0aW9uKCl7YS5pcygiOnZpc2libGUiKSYmKG8obC5vZiksY2xlYXJJbnRlcnZhbChoKSl9LHQuZnguaW50ZXJ2YWwpKSx0aGlzLl90cmlnZ2VyKCJvcGVuIixpLHt0b29sdGlwOmF9KSxyPXtrZXl1cDpmdW5jdGlvbihlKXtpZihlLmtleUNvZGU9PT10LnVpLmtleUNvZGUuRVNDQVBFKXt2YXIgaT10LkV2ZW50KGUpO2kuY3VycmVudFRhcmdldD1zWzBdLHRoaXMuY2xvc2UoaSwhMCl9fSxyZW1vdmU6ZnVuY3Rpb24oKXt0aGlzLl9yZW1vdmVUb29sdGlwKGEpfX0saSYmIm1vdXNlb3ZlciIhPT1pLnR5cGV8fChyLm1vdXNlbGVhdmU9ImNsb3NlIiksaSYmImZvY3VzaW4iIT09aS50eXBlfHwoci5mb2N1c291dD0iY2xvc2UiKSx0aGlzLl9vbighMCxzLHIpfX0sY2xvc2U6ZnVuY3Rpb24oZSl7dmFyIHM9dGhpcyxuPXQoZT9lLmN1cnJlbnRUYXJnZXQ6dGhpcy5lbGVtZW50KSxvPXRoaXMuX2ZpbmQobik7dGhpcy5jbG9zaW5nfHwoY2xlYXJJbnRlcnZhbCh0aGlzLmRlbGF5ZWRTaG93KSxuLmRhdGEoInVpLXRvb2x0aXAtdGl0bGUiKSYmbi5hdHRyKCJ0aXRsZSIsbi5kYXRhKCJ1aS10b29sdGlwLXRpdGxlIikpLGkobiksby5zdG9wKCEwKSx0aGlzLl9oaWRlKG8sdGhpcy5vcHRpb25zLmhpZGUsZnVuY3Rpb24oKXtzLl9yZW1vdmVUb29sdGlwKHQodGhpcykpfSksbi5yZW1vdmVEYXRhKCJ1aS10b29sdGlwLW9wZW4iKSx0aGlzLl9vZmYobiwibW91c2VsZWF2ZSBmb2N1c291dCBrZXl1cCIpLG5bMF0hPT10aGlzLmVsZW1lbnRbMF0mJnRoaXMuX29mZihuLCJyZW1vdmUiKSx0aGlzLl9vZmYodGhpcy5kb2N1bWVudCwibW91c2Vtb3ZlIiksZSYmIm1vdXNlbGVhdmUiPT09ZS50eXBlJiZ0LmVhY2godGhpcy5wYXJlbnRzLGZ1bmN0aW9uKGUsaSl7dChpLmVsZW1lbnQpLmF0dHIoInRpdGxlIixpLnRpdGxlKSxkZWxldGUgcy5wYXJlbnRzW2VdfSksdGhpcy5jbG9zaW5nPSEwLHRoaXMuX3RyaWdnZXIoImNsb3NlIixlLHt0b29sdGlwOm99KSx0aGlzLmNsb3Npbmc9ITEpfSxfdG9vbHRpcDpmdW5jdGlvbihlKXt2YXIgaT0idWktdG9vbHRpcC0iK3MrKyxuPXQoIjxkaXY+IikuYXR0cih7aWQ6aSxyb2xlOiJ0b29sdGlwIn0pLmFkZENsYXNzKCJ1aS10b29sdGlwIHVpLXdpZGdldCB1aS1jb3JuZXItYWxsIHVpLXdpZGdldC1jb250ZW50ICIrKHRoaXMub3B0aW9ucy50b29sdGlwQ2xhc3N8fCIiKSk7cmV0dXJuIHQoIjxkaXY+IikuYWRkQ2xhc3MoInVpLXRvb2x0aXAtY29udGVudCIpLmFwcGVuZFRvKG4pLG4uYXBwZW5kVG8odGhpcy5kb2N1bWVudFswXS5ib2R5KSx0aGlzLnRvb2x0aXBzW2ldPWUsbn0sX2ZpbmQ6ZnVuY3Rpb24oZSl7dmFyIGk9ZS5kYXRhKCJ1aS10b29sdGlwLWlkIik7cmV0dXJuIGk/dCgiIyIraSk6dCgpfSxfcmVtb3ZlVG9vbHRpcDpmdW5jdGlvbih0KXt0LnJlbW92ZSgpLGRlbGV0ZSB0aGlzLnRvb2x0aXBzW3QuYXR0cigiaWQiKV19LF9kZXN0cm95OmZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0LmVhY2godGhpcy50b29sdGlwcyxmdW5jdGlvbihpLHMpe3ZhciBuPXQuRXZlbnQoImJsdXIiKTtuLnRhcmdldD1uLmN1cnJlbnRUYXJnZXQ9c1swXSxlLmNsb3NlKG4sITApLHQoIiMiK2kpLnJlbW92ZSgpLHMuZGF0YSgidWktdG9vbHRpcC10aXRsZSIpJiYocy5hdHRyKCJ0aXRsZSIscy5kYXRhKCJ1aS10b29sdGlwLXRpdGxlIikpLHMucmVtb3ZlRGF0YSgidWktdG9vbHRpcC10aXRsZSIpKX0pfX0pfSkoalF1ZXJ5KTs=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/namespaces/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/namespaces/default.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT5Gcm9udEVuZFVzZXJzIDIuMy4xPC90aXRsZT4KICAgIDxtZXRhIG5hbWU9ImF1dGhvciIgY29udGVudD0iIi8+CiAgICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iIi8+CgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2Jvb3RzdHJhcC1jb21iaW5lZC5uby1pY29ucy5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzIiByZWw9InN0eWxlc2hlZXQiPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL3ByaXNtLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICA8bGluayBocmVmPSIuLi9jc3MvdGVtcGxhdGUuY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIAogICAgPCEtLVtpZiBsdCBJRSA5XT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9odG1sNS5qcyI+PC9zY3JpcHQ+CiAgICA8IVtlbmRpZl0tLT4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9qcXVlcnktMS4xMS4wLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvdWkvMS4xMC40L2pxdWVyeS11aS5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2Jvb3RzdHJhcC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS5zbW9vdGgtc2Nyb2xsLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9wcmlzbS5taW4uanMiPjwvc2NyaXB0PgogICAgPCEtLSBUT0RPOiBBZGQgaHR0cDovL2pzY3JvbGxwYW5lLmtlbHZpbmx1Y2suY29tLyB0byBzdHlsZSB0aGUgc2Nyb2xsYmFycyBmb3IgYnJvd3NlcnMgbm90IHVzaW5nIHdlYmtpdC0tPgogICAgCiAgICA8bGluayByZWw9InNob3J0Y3V0IGljb24iIGhyZWY9Ii4uL2ltYWdlcy9mYXZpY29uLmljbyIvPgogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi5wbmciLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjcyeDcyIiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi03Mng3Mi5wbmciLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgc2l6ZXM9IjExNHgxMTQiIGhyZWY9Ii4uL2ltYWdlcy9hcHBsZS10b3VjaC1pY29uLTExNHgxMTQucG5nIi8+CjwvaGVhZD4KPGJvZHk+Cgo8ZGl2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWZpeGVkLXRvcCI+CiAgICA8ZGl2IGNsYXNzPSJuYXZiYXItaW5uZXIiPgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxhIGNsYXNzPSJidG4gYnRuLW5hdmJhciIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iLm5hdi1jb2xsYXBzZSI+CiAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1lbGxpcHNpcy12ZXJ0aWNhbCI+PC9pPgogICAgICAgICAgICA8L2E+CiAgICAgICAgICAgIDxhIGNsYXNzPSJicmFuZCIgaHJlZj0iLi4vaW5kZXguaHRtbCI+RnJvbnRFbmRVc2VycyAyLjMuMTwvYT4KCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im5hdi1jb2xsYXBzZSI+CiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9Im5hdiBwdWxsLXJpZ2h0Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJjaGFydHMtbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGFydHMgPGIgY2xhc3M9ImNhcmV0Ij48L2I+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9ncmFwaHMvY2xhc3MuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7Q2xhc3MgaGllcmFyY2h5IGRpYWdyYW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wZG93biIgaWQ9InJlcG9ydHMtbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9IiMiIGNsYXNzPSJkcm9wZG93bi10b2dnbGUiIGRhdGEtdG9nZ2xlPSJkcm9wZG93biI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXBvcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vcmVwb3J0cy9lcnJvcnMuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7RXJyb3JzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjEwNjwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtNYXJrZXJzIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjA8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9yZXBvcnRzL2RlcHJlY2F0ZWQuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0RlcHJlY2F0ZWQgPHNwYW4gY2xhc3M9ImxhYmVsIGxhYmVsLWluZm8gcHVsbC1yaWdodCI+MTwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgPCEtLTxkaXYgY2xhc3M9ImdvX3RvX3RvcCI+LS0+CiAgICA8IS0tPGEgaHJlZj0iI19fXyIgc3R5bGU9ImNvbG9yOiBpbmhlcml0Ij5CYWNrIHRvIHRvcCYjMTYwOyYjMTYwOzxpIGNsYXNzPSJpY29uLXVwbG9hZCBpY29uLXdoaXRlIj48L2k+PC9hPi0tPgogICAgPCEtLTwvZGl2Pi0tPgo8L2Rpdj4KCjxkaXYgaWQ9Il9fXyIgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+CiAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjIgc2lkZWJhciI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uIiBzdHlsZT0ibWFyZ2luLWJvdHRvbTogMCI+CiAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWdyb3VwIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWhlYWRpbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iYWNjb3JkaW9uLXRvZ2dsZSAiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9IiNuYW1lc3BhY2UtMTcyODkyNDg4OSI+PC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL25hbWVzcGFjZXMvZGVmYXVsdC5odG1sIiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDMwcHg7IHBhZGRpbmctbGVmdDogMCI+XDwvYT4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDxkaXYgaWQ9Im5hbWVzcGFjZS0xNzI4OTI0ODg5IiBjbGFzcz0iYWNjb3JkaW9uLWJvZHkgY29sbGFwc2UgaW4iPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWNjb3JkaW9uLWlubmVyIj4KCiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGFzcyI+PGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeS5odG1sIj5mZXVfdXNlcl9xdWVyeTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJjbGFzcyI+PGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCI+ZmV1X3VzZXJfcXVlcnlfb3B0PC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImNsYXNzIj48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5odG1sIj5mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQ8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iY2xhc3MiPjxhIGhyZWY9Ii4uL2NsYXNzZXMvRnJvbnRFbmRVc2Vycy5odG1sIj5Gcm9udEVuZFVzZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj4KICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW4xMCBvZmZzZXQyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNwYW44IGNvbnRlbnQgbmFtZXNwYWNlIj4KICAgICAgICAgICAgICAgICAgICA8bmF2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25hdj4KICAgICAgICAgICAgICAgICAgICA8aDE+PHNtYWxsPjwvc21hbGw+XDwvaDE+CgogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyPkNsYXNzZXM8L2gyPgogICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgdGFibGUtaG92ZXIiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48YSBocmVmPSIuLi9jbGFzc2VzL2ZldV91c2VyX3F1ZXJ5Lmh0bWwiPmZldV91c2VyX3F1ZXJ5PC9hPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGVtPjwvZW0+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9vcHQuaHRtbCI+ZmV1X3VzZXJfcXVlcnlfb3B0PC9hPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGVtPjwvZW0+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGEgaHJlZj0iLi4vY2xhc3Nlcy9mZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQuaHRtbCI+ZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0PC9hPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGVtPjwvZW0+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PGEgaHJlZj0iLi4vY2xhc3Nlcy9Gcm9udEVuZFVzZXJzLmh0bWwiPkZyb250RW5kVXNlcnM8L2E+PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48ZW0+VGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLCBiZXNpZGVzIGJlaW5nIGEgbW9kdWxlIHRvIHByb3ZpZGUgYXV0aGVudGljYXRpb24gc2VydmljZXMgdG8gdGhlIGZyb250ZW5kIG9mIGEgQ01TTVMgd2Vic2l0ZSBhbHNvIGhhcyBhIGNvbXBsZXRlCmFuZCBmbGV4aWJsZSBBUEkuPC9lbT48L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CgogICAgICAgICAgICAgICAgPGFzaWRlIGNsYXNzPSJzcGFuNCBkZXRhaWxzYmFyIj4KICAgICAgICAgICAgICAgICAgICA8ZGw+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkdD5OYW1lc3BhY2UgaGllcmFyY2h5PC9kdD4KICAgICAgICAgICAgICAgICAgICAgICAgPGRkIGNsYXNzPSJoaWVyYXJjaHkiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYW1lc3BhY2Utd3JhcHBlciI+XDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L2RkPgogICAgICAgICAgICAgICAgICAgIDwvZGw+CiAgICAgICAgICAgICAgICA8L2FzaWRlPgogICAgICAgICAgICA8L2Rpdj4KCiAgICAgICAgICAgIAogICAgICAgICAgICAKICAgICAgICA8L2Rpdj4KICAgIDwvc2VjdGlvbj4KCiAgICA8Zm9vdGVyIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuMTAgb2Zmc2V0MiI+CiAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQxIj4KICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIGZvb3Rlci1zZWN0aW9ucyI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWNvZGUiPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLWJhci1jaGFydCI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL2dyYXBocy9jbGFzcy5odG1sIj5DbGFzcyBIaWVyYXJjaHkgRGlhZ3JhbTwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1wdXNocGluIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vcmVwb3J0cy9lcnJvcnMuaHRtbCI+RXJyb3JzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9yZXBvcnRzL21hcmtlcnMuaHRtbCI+TWFya2VyczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuMTAgb2Zmc2V0MSI+CiAgICAgICAgICAgICAgICAgICAgPGhyIC8+CiAgICAgICAgICAgICAgICAgICAgRG9jdW1lbnRhdGlvbiBpcyBwb3dlcmVkIGJ5IDxhIGhyZWY9Imh0dHA6Ly93d3cucGhwZG9jLm9yZy8iPnBocERvY3VtZW50b3IgPC9hPiBhbmQgYXV0aG9yZWQKICAgICAgICAgICAgICAgICAgICBvbiBGZWJydWFyeSAxMnRoLCAyMDE3IGF0IDA5OjQ1LgogICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgPC9zZWN0aW9uPgogICAgPC9mb290ZXI+CjwvZGl2PgoKPC9ib2R5Pgo8L2h0bWw+Cg==]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/reports/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/docs/apidoc/reports/deprecated.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT4gICAgICZyYXF1bzsgRGVwcmVjYXRlZCBlbGVtZW50cwo8L3RpdGxlPgogICAgPG1ldGEgbmFtZT0iYXV0aG9yIiBjb250ZW50PSIiLz4KICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSIiLz4KCiAgICA8bGluayBocmVmPSIuLi9jc3MvYm9vdHN0cmFwLWNvbWJpbmVkLm5vLWljb25zLm1pbi5jc3MiIHJlbD0ic3R5bGVzaGVldCI+CiAgICA8bGluayBocmVmPSIuLi9jc3MvZm9udC1hd2Vzb21lLm1pbi5jc3MiIHJlbD0ic3R5bGVzaGVldCI+CiAgICA8bGluayBocmVmPSIuLi9jc3MvcHJpc20uY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIDxsaW5rIGhyZWY9Ii4uL2Nzcy90ZW1wbGF0ZS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgbWVkaWE9ImFsbCIvPgogICAgCiAgICA8IS0tW2lmIGx0IElFIDldPgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2h0bWw1LmpzIj48L3NjcmlwdD4KICAgIDwhW2VuZGlmXS0tPgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS0xLjExLjAubWluLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy91aS8xLjEwLjQvanF1ZXJ5LXVpLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvYm9vdHN0cmFwLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvanF1ZXJ5LnNtb290aC1zY3JvbGwuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL3ByaXNtLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8IS0tIFRPRE86IEFkZCBodHRwOi8vanNjcm9sbHBhbmUua2VsdmlubHVjay5jb20vIHRvIHN0eWxlIHRoZSBzY3JvbGxiYXJzIGZvciBicm93c2VycyBub3QgdXNpbmcgd2Via2l0LS0+CiAgICAKICAgIDxsaW5rIHJlbD0ic2hvcnRjdXQgaWNvbiIgaHJlZj0iLi4vaW1hZ2VzL2Zhdmljb24uaWNvIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIGhyZWY9Ii4uL2ltYWdlcy9hcHBsZS10b3VjaC1pY29uLnBuZyIvPgogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iNzJ4NzIiIGhyZWY9Ii4uL2ltYWdlcy9hcHBsZS10b3VjaC1pY29uLTcyeDcyLnBuZyIvPgogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iMTE0eDExNCIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24tMTE0eDExNC5wbmciLz4KPC9oZWFkPgo8Ym9keT4KCjxkaXYgY2xhc3M9Im5hdmJhciBuYXZiYXItZml4ZWQtdG9wIj4KICAgIDxkaXYgY2xhc3M9Im5hdmJhci1pbm5lciI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgPGEgY2xhc3M9ImJ0biBidG4tbmF2YmFyIiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIubmF2LWNvbGxhcHNlIj4KICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWVsbGlwc2lzLXZlcnRpY2FsIj48L2k+CiAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgPGEgY2xhc3M9ImJyYW5kIiBocmVmPSIuLi9pbmRleC5odG1sIj5Gcm9udEVuZFVzZXJzIDIuMy4xPC9hPgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWNvbGxhcHNlIj4KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IHB1bGwtcmlnaHQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wZG93biIgaWQ9ImNoYXJ0cy1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9ImRyb3Bkb3duLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENoYXJ0cyA8YiBjbGFzcz0iY2FyZXQiPjwvYj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2dyYXBocy9jbGFzcy5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtDbGFzcyBoaWVyYXJjaHkgZGlhZ3JhbQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIiBpZD0icmVwb3J0cy1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9ImRyb3Bkb3duLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlcG9ydHMgPGIgY2xhc3M9ImNhcmV0Ij48L2I+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9yZXBvcnRzL2Vycm9ycy5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtFcnJvcnMgPHNwYW4gY2xhc3M9ImxhYmVsIGxhYmVsLWluZm8gcHVsbC1yaWdodCI+MTA2PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vcmVwb3J0cy9tYXJrZXJzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO01hcmtlcnMgPHNwYW4gY2xhc3M9ImxhYmVsIGxhYmVsLWluZm8gcHVsbC1yaWdodCI+MDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvZGVwcmVjYXRlZC5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7RGVwcmVjYXRlZCA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij4xPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgICA8IS0tPGRpdiBjbGFzcz0iZ29fdG9fdG9wIj4tLT4KICAgIDwhLS08YSBocmVmPSIjX19fIiBzdHlsZT0iY29sb3I6IGluaGVyaXQiPkJhY2sgdG8gdG9wJiMxNjA7JiMxNjA7PGkgY2xhc3M9Imljb24tdXBsb2FkIGljb24td2hpdGUiPjwvaT48L2E+LS0+CiAgICA8IS0tPC9kaXY+LS0+CjwvZGl2PgoKPGRpdiBpZD0iX19fIiBjbGFzcz0iY29udGFpbmVyLWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ctZmx1aWQiPgoKICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuMiBzaWRlYmFyIj4KICAgICAgICAgICAgPHVsIGNsYXNzPSJzaWRlLW5hdiBuYXYgbmF2LWxpc3QiPgogICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaGVhZGVyIj5OYXZpZ2F0aW9uPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9IiNGcm9udEVuZFVzZXJzLm1vZHVsZS5waHAiPjxpIGNsYXNzPSJpY29uLWZpbGUiPjwvaT4gRnJvbnRFbmRVc2Vycy5tb2R1bGUucGhwPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICA8L2Rpdj4KCiAgICAgICAgPGRpdiBjbGFzcz0ic3BhbjEwIG9mZnNldDIiPgogICAgICAgICAgICA8dWwgY2xhc3M9ImJyZWFkY3J1bWIiPgogICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uLyI+PGkgY2xhc3M9Imljb24tcmVtb3ZlLXNpZ24iPjwvaT48L2E+PHNwYW4gY2xhc3M9ImRpdmlkZXIiPlw8L3NwYW4+PC9saT4KICAgICAgICAgICAgICAgIDxsaT5EZXByZWNhdGVkIGVsZW1lbnRzPC9saT4KICAgICAgICAgICAgPC91bD4KCiAgICAgICAgICAgIDxkaXYgaWQ9Im1hcmtlci1hY2NvcmRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgbmFtZT0iRnJvbnRFbmRVc2Vycy5tb2R1bGUucGhwIiBpZD0iRnJvbnRFbmRVc2Vycy5tb2R1bGUucGhwIj48L2E+CiAgICAgICAgICAgICAgICAgICAgPGgzPgogICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1maWxlIj48L2k+CiAgICAgICAgICAgICAgICAgICAgICAgIEZyb250RW5kVXNlcnMubW9kdWxlLnBocAogICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgc3R5bGU9ImZsb2F0OiByaWdodDtwYWRkaW5nLXJpZ2h0OiAxMHB4OyI+MTwvc21hbGw+CiAgICAgICAgICAgICAgICAgICAgPC9oMz4KICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIG1hcmtlcnMgdGFibGUtYm9yZGVyZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5FbGVtZW50PC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+TGluZTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPkRlc2NyaXB0aW9uPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XEZyb250RW5kVXNlcnM6OkRlbGV0ZVVzZXIoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xMDk0PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2PgoKICAgIDxmb290ZXIgY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQyIj4KICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDEiPgogICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQgZm9vdGVyLXNlY3Rpb25zIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tY29kZSI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tYmFyLWNoYXJ0Ij48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPkNsYXNzIEhpZXJhcmNoeSBEaWFncmFtPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuNCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxPjxpIGNsYXNzPSJpY29uLXB1c2hwaW4iPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9yZXBvcnRzL2Vycm9ycy5odG1sIj5FcnJvcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL3JlcG9ydHMvbWFya2Vycy5odG1sIj5NYXJrZXJzPC9hPjwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW4xMCBvZmZzZXQxIj4KICAgICAgICAgICAgICAgICAgICA8aHIgLz4KICAgICAgICAgICAgICAgICAgICBEb2N1bWVudGF0aW9uIGlzIHBvd2VyZWQgYnkgPGEgaHJlZj0iaHR0cDovL3d3dy5waHBkb2Mub3JnLyI+cGhwRG9jdW1lbnRvciA8L2E+IGFuZCBhdXRob3JlZAogICAgICAgICAgICAgICAgICAgIG9uIEZlYnJ1YXJ5IDEydGgsIDIwMTcgYXQgMDk6NDUuCiAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICA8L3NlY3Rpb24+CiAgICA8L2Zvb3Rlcj4KPC9kaXY+Cgo8L2JvZHk+CjwvaHRtbD4K]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/reports/errors.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT4gICAgICZyYXF1bzsgQ29tcGlsYXRpb24gZXJyb3JzCjwvdGl0bGU+CiAgICA8bWV0YSBuYW1lPSJhdXRob3IiIGNvbnRlbnQ9IiIvPgogICAgPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IiIvPgoKICAgIDxsaW5rIGhyZWY9Ii4uL2Nzcy9ib290c3RyYXAtY29tYmluZWQubm8taWNvbnMubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ij4KICAgIDxsaW5rIGhyZWY9Ii4uL2Nzcy9mb250LWF3ZXNvbWUubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ij4KICAgIDxsaW5rIGhyZWY9Ii4uL2Nzcy9wcmlzbS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgbWVkaWE9ImFsbCIvPgogICAgPGxpbmsgaHJlZj0iLi4vY3NzL3RlbXBsYXRlLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiBtZWRpYT0iYWxsIi8+CiAgICAKICAgIDwhLS1baWYgbHQgSUUgOV0+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvaHRtbDUuanMiPjwvc2NyaXB0PgogICAgPCFbZW5kaWZdLS0+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvanF1ZXJ5LTEuMTEuMC5taW4uanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL3VpLzEuMTAuNC9qcXVlcnktdWkubWluLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9ib290c3RyYXAubWluLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy9qcXVlcnkuc21vb3RoLXNjcm9sbC5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvcHJpc20ubWluLmpzIj48L3NjcmlwdD4KICAgIDwhLS0gVE9ETzogQWRkIGh0dHA6Ly9qc2Nyb2xscGFuZS5rZWx2aW5sdWNrLmNvbS8gdG8gc3R5bGUgdGhlIHNjcm9sbGJhcnMgZm9yIGJyb3dzZXJzIG5vdCB1c2luZyB3ZWJraXQtLT4KICAgIAogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIuLi9pbWFnZXMvZmF2aWNvbi5pY28iLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24ucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSI3Mng3MiIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24tNzJ4NzIucG5nIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIHNpemVzPSIxMTR4MTE0IiBocmVmPSIuLi9pbWFnZXMvYXBwbGUtdG91Y2gtaWNvbi0xMTR4MTE0LnBuZyIvPgo8L2hlYWQ+Cjxib2R5PgoKPGRpdiBjbGFzcz0ibmF2YmFyIG5hdmJhci1maXhlZC10b3AiPgogICAgPGRpdiBjbGFzcz0ibmF2YmFyLWlubmVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICA8YSBjbGFzcz0iYnRuIGJ0bi1uYXZiYXIiIGRhdGEtdG9nZ2xlPSJjb2xsYXBzZSIgZGF0YS10YXJnZXQ9Ii5uYXYtY29sbGFwc2UiPgogICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tZWxsaXBzaXMtdmVydGljYWwiPjwvaT4KICAgICAgICAgICAgPC9hPgogICAgICAgICAgICA8YSBjbGFzcz0iYnJhbmQiIGhyZWY9Ii4uL2luZGV4Lmh0bWwiPkZyb250RW5kVXNlcnMgMi4zLjE8L2E+CgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYXYtY29sbGFwc2UiPgogICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJuYXYgcHVsbC1yaWdodCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIiBpZD0iY2hhcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hhcnRzIDxiIGNsYXNzPSJjYXJldCI+PC9iPgogICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0iZHJvcGRvd24tbWVudSI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vZ3JhcGhzL2NsYXNzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0NsYXNzIGhpZXJhcmNoeSBkaWFncmFtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iZHJvcGRvd24iIGlkPSJyZXBvcnRzLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiBjbGFzcz0iZHJvcGRvd24tdG9nZ2xlIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVwb3J0cyA8YiBjbGFzcz0iY2FyZXQiPjwvYj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO0Vycm9ycyA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij4xMDY8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9yZXBvcnRzL21hcmtlcnMuaHRtbCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7TWFya2VycyA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij4wPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vcmVwb3J0cy9kZXByZWNhdGVkLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtEZXByZWNhdGVkIDxzcGFuIGNsYXNzPSJsYWJlbCBsYWJlbC1pbmZvIHB1bGwtcmlnaHQiPjE8L3NwYW4+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgPC91bD4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIDwhLS08ZGl2IGNsYXNzPSJnb190b190b3AiPi0tPgogICAgPCEtLTxhIGhyZWY9IiNfX18iIHN0eWxlPSJjb2xvcjogaW5oZXJpdCI+QmFjayB0byB0b3AmIzE2MDsmIzE2MDs8aSBjbGFzcz0iaWNvbi11cGxvYWQgaWNvbi13aGl0ZSI+PC9pPjwvYT4tLT4KICAgIDwhLS08L2Rpdj4tLT4KPC9kaXY+Cgo8ZGl2IGlkPSJfX18iIGNsYXNzPSJjb250YWluZXItZmx1aWQiPgogICAgICAgIDxzZWN0aW9uIGNsYXNzPSJyb3ctZmx1aWQiPgogICAgICAgIDxkaXYgY2xhc3M9InNwYW4yIHNpZGViYXIiPgoKICAgICAgICAgICAgPHVsIGNsYXNzPSJzaWRlLW5hdiBuYXYgbmF2LWxpc3QiPgogICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaGVhZGVyIj5OYXZpZ2F0aW9uPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIjRnJvbnRFbmRVc2Vycy5tb2R1bGUucGhwIj48aSBjbGFzcz0iaWNvbi1maWxlIj48L2k+IEZyb250RW5kVXNlcnMubW9kdWxlLnBocDwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9IiNsaWIvY2xhc3MuZmV1X3VzZXJfcXVlcnkucGhwIj48aSBjbGFzcz0iaWNvbi1maWxlIj48L2k+IGxpYi9jbGFzcy5mZXVfdXNlcl9xdWVyeS5waHA8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIjbGliL2NsYXNzLmZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5waHAiPjxpIGNsYXNzPSJpY29uLWZpbGUiPjwvaT4gbGliL2NsYXNzLmZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5waHA8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuMTAgb2Zmc2V0MiI+CiAgICAgICAgICAgIDx1bCBjbGFzcz0iYnJlYWRjcnVtYiI+CiAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vIj48aSBjbGFzcz0iaWNvbi1yZW1vdmUtc2lnbiI+PC9pPjwvYT48c3BhbiBjbGFzcz0iZGl2aWRlciI+XDwvc3Bhbj48L2xpPgogICAgICAgICAgICAgICAgPGxpPkNvbXBpbGF0aW9uIEVycm9yczwvbGk+CiAgICAgICAgICAgIDwvdWw+CgogICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBhY2thZ2UtY29udGVudHMiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIG5hbWU9IkZyb250RW5kVXNlcnMubW9kdWxlLnBocCIgaWQ9IkZyb250RW5kVXNlcnMubW9kdWxlLnBocCI+PC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8aDM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1maWxlIj48L2k+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBGcm9udEVuZFVzZXJzLm1vZHVsZS5waHAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzbWFsbCBzdHlsZT0iZmxvYXQ6IHJpZ2h0O3BhZGRpbmctcmlnaHQ6IDEwcHg7Ij4zNTwvc21hbGw+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvaDM+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGFibGUgY2xhc3M9InRhYmxlIG1hcmtlcnMgdGFibGUtYm9yZGVyZWQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aGVhZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5UeXBlPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPkxpbmU8L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+RGVzY3JpcHRpb248L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aGVhZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGJvZHk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD41ODI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBHZXRBZG1pbk1lbnVJdGVtcygpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjg1OTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TmFtZSBvZiBhcmd1bWVudCAkbG9zdHVuIGRvZXMgbm90IG1hdGNoIHdpdGggdGhlIERvY0Jsb2NrJiMwMzk7cyBuYW1lICRyZXF1aXJlZCBpbiBBZGRHcm91cFByb3BlcnR5UmVsYXRpb24oKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD44NTk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlRoZSB0eXBlIGhpbnQgb2YgdGhlIGFyZ3VtZW50IGlzIGluY29ycmVjdCBmb3IgdGhlIHR5cGUgZGVmaW5pdGlvbiBvZiB0aGUgQHBhcmFtIHRhZyB3aXRoIGFyZ3VtZW50ICRsb3N0dW4gaW4gQWRkR3JvdXBQcm9wZXJ0eVJlbGF0aW9uKCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ODU5PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5OYW1lIG9mIGFyZ3VtZW50ICRyZXF1aXJlZCBkb2VzIG5vdCBtYXRjaCB3aXRoIHRoZSBEb2NCbG9jayYjMDM5O3MgbmFtZSAkbG9zdHVuIGluIEFkZEdyb3VwUHJvcGVydHlSZWxhdGlvbigpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjg1OTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+VGhlIHR5cGUgaGludCBvZiB0aGUgYXJndW1lbnQgaXMgaW5jb3JyZWN0IGZvciB0aGUgdHlwZSBkZWZpbml0aW9uIG9mIHRoZSBAcGFyYW0gdGFnIHdpdGggYXJndW1lbnQgJHJlcXVpcmVkIGluIEFkZEdyb3VwUHJvcGVydHlSZWxhdGlvbigpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjEyNjk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICR1aWRzIGlzIG1pc3NpbmcgZnJvbSB0aGUgRG9jYmxvY2sgb2YgR2V0QnVsa1VzZXJJbmZvPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjEyNjk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICRkZWVwIGlzIG1pc3NpbmcgZnJvbSB0aGUgRG9jYmxvY2sgb2YgR2V0QnVsa1VzZXJJbmZvPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjEyNjk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBHZXRCdWxrVXNlckluZm8oKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xNTk5PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5OYW1lIG9mIGFyZ3VtZW50ICRjaGVja19leGlzdGluZyBkb2VzIG5vdCBtYXRjaCB3aXRoIHRoZSBEb2NCbG9jayYjMDM5O3MgbmFtZSAkY2hlY2tfZXhpc3RpbmcuIGluIElzVmFsaWRFbWFpbEFkZHJlc3MoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPm5vdGljZTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTU5OTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+UGFyYW1ldGVyICRjaGVja19leGlzdGluZy4gY291bGQgbm90IGJlIGZvdW5kIGluIElzVmFsaWRFbWFpbEFkZHJlc3MoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xNjQ0PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5OYW1lIG9mIGFyZ3VtZW50ICRmb3JjZV9sb2dvdXQgZG9lcyBub3QgbWF0Y2ggd2l0aCB0aGUgRG9jQmxvY2smIzAzOTtzIG5hbWUgJGZvcmNlX2xnb3V0IGluIExvZ2luKCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ub3RpY2U8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE2NDQ8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBhcmFtZXRlciAkZm9yY2VfbGdvdXQgY291bGQgbm90IGJlIGZvdW5kIGluIExvZ2luKCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTY4MDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+TmFtZSBvZiBhcmd1bWVudCAkZXZlbnRtc2cgZG9lcyBub3QgbWF0Y2ggd2l0aCB0aGUgRG9jQmxvY2smIzAzOTtzIG5hbWUgJG1lc3NhZ2UgaW4gTG9nb3V0VXNlcigpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+bm90aWNlPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xNjgwPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5QYXJhbWV0ZXIgJG1lc3NhZ2UgY291bGQgbm90IGJlIGZvdW5kIGluIExvZ291dFVzZXIoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xODEwPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5OYW1lIG9mIGFyZ3VtZW50ICRwbGFpbl9wYXNzd29yZCBkb2VzIG5vdCBtYXRjaCB3aXRoIHRoZSBEb2NCbG9jayYjMDM5O3MgbmFtZSAkcGFzc3dvcmQgaW4gRW5jcnlwdFBhc3N3b3JkKCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ub3RpY2U8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE4MTA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlBhcmFtZXRlciAkcGFzc3dvcmQgY291bGQgbm90IGJlIGZvdW5kIGluIEVuY3J5cHRQYXNzd29yZCgpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE5MjE8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICR1aWQgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBTZXRVc2VyUHJvcGVydGllczwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xOTIxPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Bcmd1bWVudCAkcHJvcHMgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBTZXRVc2VyUHJvcGVydGllczwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xOTIxPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBtZXRob2QgU2V0VXNlclByb3BlcnRpZXMoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xOTI3PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Bcmd1bWVudCAkdGl0bGUgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBTZXRVc2VyUHJvcGVydHk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTkyNzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QXJndW1lbnQgJGRhdGEgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBTZXRVc2VyUHJvcGVydHk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTkyNzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgbWV0aG9kIFNldFVzZXJQcm9wZXJ0eSgpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE5MzM8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICR1aWQgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBJc1VzZXJQcm9wZXJ0eVZhbHVlVW5pcXVlPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE5MzM8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICR0aXRsZSBpcyBtaXNzaW5nIGZyb20gdGhlIERvY2Jsb2NrIG9mIElzVXNlclByb3BlcnR5VmFsdWVVbmlxdWU8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTkzMzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QXJndW1lbnQgJHZhbHVlIGlzIG1pc3NpbmcgZnJvbSB0aGUgRG9jYmxvY2sgb2YgSXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xOTMzPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBtZXRob2QgSXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZSgpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE5Mzk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICR0aXRsZSBpcyBtaXNzaW5nIGZyb20gdGhlIERvY2Jsb2NrIG9mIFNldFVzZXJQcm9wZXJ0eUZ1bGw8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTkzOTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QXJndW1lbnQgJGRhdGEgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBTZXRVc2VyUHJvcGVydHlGdWxsPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE5Mzk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICR1c2VyaWQgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBTZXRVc2VyUHJvcGVydHlGdWxsPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE5Mzk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBTZXRVc2VyUHJvcGVydHlGdWxsKCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTk0NTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QXJndW1lbnQgJHVpZCBpcyBtaXNzaW5nIGZyb20gdGhlIERvY2Jsb2NrIG9mIFVzZXJFeGlzdHNCeUlEPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE5NDU8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBVc2VyRXhpc3RzQnlJRCgpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE5NTE8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICR1aWQgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBTZXRFbmNyeXB0aW9uS2V5PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE5NTE8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICRmb3JjZSBpcyBtaXNzaW5nIGZyb20gdGhlIERvY2Jsb2NrIG9mIFNldEVuY3J5cHRpb25LZXk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTk1MTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgbWV0aG9kIFNldEVuY3J5cHRpb25LZXkoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwYWNrYWdlLWNvbnRlbnRzIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBuYW1lPSJsaWIvY2xhc3MuZmV1X3VzZXJfcXVlcnkucGhwIiBpZD0ibGliL2NsYXNzLmZldV91c2VyX3F1ZXJ5LnBocCI+PC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8aDM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1maWxlIj48L2k+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWIvY2xhc3MuZmV1X3VzZXJfcXVlcnkucGhwCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c21hbGwgc3R5bGU9ImZsb2F0OiByaWdodDtwYWRkaW5nLXJpZ2h0OiAxMHB4OyI+NTI8L3NtYWxsPgogICAgICAgICAgICAgICAgICAgICAgICA8L2gzPgogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPSJ0YWJsZSBtYXJrZXJzIHRhYmxlLWJvcmRlcmVkIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+VHlwZTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5MaW5lPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPkRlc2NyaXB0aW9uPC90aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRib2R5PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSB3YXMgZm91bmQgZm9yIHRoaXMgZmlsZTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4zOTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgY2xhc3MgXGZldV91c2VyX3F1ZXJ5X29wdDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xMjA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIGNsYXNzIFxmZXVfdXNlcl9xdWVyeTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD42MDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QXJndW1lbnQgJHR5cGUgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBfX2NvbnN0cnVjdDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD42MDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QXJndW1lbnQgJGV4cHIgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBfX2NvbnN0cnVjdDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD42MDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QXJndW1lbnQgJG9wdCBpcyBtaXNzaW5nIGZyb20gdGhlIERvY2Jsb2NrIG9mIF9fY29uc3RydWN0PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjYwPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBtZXRob2QgX19jb25zdHJ1Y3QoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xMDM8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBnZXRfdHlwZSgpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjEwODwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgbWV0aG9kIGdldF9leHByKCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTEzPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBtZXRob2QgZ2V0X29wdCgpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjU2PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBwcm9wZXJ0eSAkX3R5cGU8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+NTc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIHByb3BlcnR5ICRfZXhwcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD41ODwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgcHJvcGVydHkgJF9vcHQ8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTQxPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBtZXRob2QgX19jb25zdHJ1Y3QoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xNDY8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICRwYWdlbGltaXQgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBzZXRfcGFnZWxpbWl0PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE0NjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgbWV0aG9kIHNldF9wYWdlbGltaXQoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xNTM8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBnZXRfcGFnZWxpbWl0KCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTU4PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Bcmd1bWVudCAkbiBpcyBtaXNzaW5nIGZyb20gdGhlIERvY2Jsb2NrIG9mIHNldF9vZmZzZXQ8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTU4PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBtZXRob2Qgc2V0X29mZnNldCgpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE2MzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgbWV0aG9kIGdldF9vZmZzZXQoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xNjg8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICRmbGFnIGlzIG1pc3NpbmcgZnJvbSB0aGUgRG9jYmxvY2sgb2Ygc2V0X2RlZXA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTY4PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBtZXRob2Qgc2V0X2RlZXAoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xNzM8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBnZXRfZGVlcCgpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjE3ODwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QXJndW1lbnQgJGZsYWcgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBzZXRfd2VicmVhZHk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTc4PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBtZXRob2Qgc2V0X3dlYnJlYWR5KCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTgzPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBtZXRob2QgZ2V0X3dlYnJlYWR5KCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTg4PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Bcmd1bWVudCAkdHlwZSBpcyBtaXNzaW5nIGZyb20gdGhlIERvY2Jsb2NrIG9mIHNldF9yZXN1bHRfdHlwZTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xODg8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBzZXRfcmVzdWx0X3R5cGUoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4yMDM8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBnZXRfcmVzdWx0X3R5cGUoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4yMDg8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICR2YWwgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBzZXRfc29ydGJ5PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjIwODwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgbWV0aG9kIHNldF9zb3J0YnkoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4yMjI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBnZXRfc29ydGJ5KCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MjI3PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Bcmd1bWVudCAkdmFsIGlzIG1pc3NpbmcgZnJvbSB0aGUgRG9jYmxvY2sgb2Ygc2V0X3NvcnRvcmRlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4yMjc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBzZXRfc29ydG9yZGVyKCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MjQwPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBtZXRob2QgZ2V0X3NvcnRvcmRlcigpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjI0NTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QXJndW1lbnQgJHR5cGUgaXMgbWlzc2luZyBmcm9tIHRoZSBEb2NibG9jayBvZiBhZGRfYW5kX29wdDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4yNDU8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICR2YWx1ZSBpcyBtaXNzaW5nIGZyb20gdGhlIERvY2Jsb2NrIG9mIGFkZF9hbmRfb3B0PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjI0NTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgbWV0aG9kIGFkZF9hbmRfb3B0KCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MjUwPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5Bcmd1bWVudCAkb3B0IGlzIG1pc3NpbmcgZnJvbSB0aGUgRG9jYmxvY2sgb2YgYWRkX2FuZF9vcHRfb2JqPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjI1MDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgbWV0aG9kIGFkZF9hbmRfb3B0X29iaigpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjI1NTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgbWV0aG9kIGNvdW50X29wdHMoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4yNjA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBnZXRfb3B0cygpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjI2NTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgbWV0aG9kIGV4ZWN1dGUoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xMzE8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIHByb3BlcnR5ICRfYW5kX29wdHM8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTMyPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBwcm9wZXJ0eSAkX2dyb3VwczwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xMzM8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIHByb3BlcnR5ICRfcGFnZWxpbWl0PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjEzNDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgcHJvcGVydHkgJF9vZmZzZXQ8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTM1PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBwcm9wZXJ0eSAkX3Jlc3VsdF90eXBlPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjEzNjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgcHJvcGVydHkgJF9zb3J0Ynk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MTM3PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBwcm9wZXJ0eSAkX3NvcnRvcmRlcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xMzg8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIHByb3BlcnR5ICRfZGVlcDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4xMzk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIHByb3BlcnR5ICRfd2VicmVhZHk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGFja2FnZS1jb250ZW50cyI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgbmFtZT0ibGliL2NsYXNzLmZldV91c2VyX3F1ZXJ5X3Jlc3VsdHNldC5waHAiIGlkPSJsaWIvY2xhc3MuZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0LnBocCI+PC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8aDM+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1maWxlIj48L2k+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWIvY2xhc3MuZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0LnBocAogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNtYWxsIHN0eWxlPSJmbG9hdDogcmlnaHQ7cGFkZGluZy1yaWdodDogMTBweDsiPjE5PC9zbWFsbD4KICAgICAgICAgICAgICAgICAgICAgICAgPC9oMz4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgbWFya2VycyB0YWJsZS1ib3JkZXJlZCI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoZWFkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlR5cGU8L3RoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+TGluZTwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5EZXNjcmlwdGlvbjwvdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjA8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgd2FzIGZvdW5kIGZvciB0aGlzIGZpbGU8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Mzk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIGNsYXNzIFxmZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQ8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+NDc8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPkFyZ3VtZW50ICRxdWVyeSBpcyBtaXNzaW5nIGZyb20gdGhlIERvY2Jsb2NrIG9mIF9fY29uc3RydWN0PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjQ3PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBtZXRob2QgX19jb25zdHJ1Y3QoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD41MzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgbWV0aG9kIF9nZXRfZ3JvdXBzKCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+NjM8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBfZXhlY3V0ZSgpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjI1NDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgbWV0aG9kIFJlY29yZENvdW50KCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MjYwPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBtZXRob2QgTW92ZU5leHQoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4yNjY8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBNb3ZlRmlyc3QoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4yNzI8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBFT0YoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD4yNzg8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPk5vIHN1bW1hcnkgZm9yIG1ldGhvZCBDbG9zZSgpPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjI4NDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+QXJndW1lbnQgJGtleSBpcyBtaXNzaW5nIGZyb20gdGhlIERvY2Jsb2NrIG9mIF9fZ2V0PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjI4NDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgbWV0aG9kIF9fZ2V0KCk8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5lcnJvcjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+MzE3PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBtZXRob2QgZ2V0X2ZvdW5kX3Jvd3MoKTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD40MTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgcHJvcGVydHkgJF9xdWVyeTwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD40MjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgcHJvcGVydHkgJF9leGVjdXRlZDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD40MzwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgcHJvcGVydHkgJF9yczwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPmVycm9yPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD40NDwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+Tm8gc3VtbWFyeSBmb3IgcHJvcGVydHkgJF9mb3VuZF9yb3dzPC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90cj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+ZXJyb3I8L3RkPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjQ1PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5ObyBzdW1tYXJ5IGZvciBwcm9wZXJ0eSAkX2dyb3VwczwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CgogICAgPGZvb3RlciBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDIiPgogICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuMTAgb2Zmc2V0MSI+CiAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCBmb290ZXItc2VjdGlvbnMiPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1iYXItY2hhcnQiPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9ncmFwaHMvY2xhc3MuaHRtbCI+Q2xhc3MgSGllcmFyY2h5IERpYWdyYW08L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tcHVzaHBpbiI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPkVycm9yczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vcmVwb3J0cy9tYXJrZXJzLmh0bWwiPk1hcmtlcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDEiPgogICAgICAgICAgICAgICAgICAgIDxociAvPgogICAgICAgICAgICAgICAgICAgIERvY3VtZW50YXRpb24gaXMgcG93ZXJlZCBieSA8YSBocmVmPSJodHRwOi8vd3d3LnBocGRvYy5vcmcvIj5waHBEb2N1bWVudG9yIDwvYT4gYW5kIGF1dGhvcmVkCiAgICAgICAgICAgICAgICAgICAgb24gRmVicnVhcnkgMTJ0aCwgMjAxNyBhdCAwOTo0NS4KICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgIDwvc2VjdGlvbj4KICAgIDwvZm9vdGVyPgo8L2Rpdj4KCjwvYm9keT4KPC9odG1sPgo=]]></data>
	</file>
	<file>
	  <filename>/docs/apidoc/reports/markers.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KPGhlYWQ+CiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0xLjAsIHVzZXItc2NhbGFibGU9MCIvPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiLz4KICAgIDx0aXRsZT4gICAgICZyYXF1bzsgTWFya2Vycwo8L3RpdGxlPgogICAgPG1ldGEgbmFtZT0iYXV0aG9yIiBjb250ZW50PSIiLz4KICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSIiLz4KCiAgICA8bGluayBocmVmPSIuLi9jc3MvYm9vdHN0cmFwLWNvbWJpbmVkLm5vLWljb25zLm1pbi5jc3MiIHJlbD0ic3R5bGVzaGVldCI+CiAgICA8bGluayBocmVmPSIuLi9jc3MvZm9udC1hd2Vzb21lLm1pbi5jc3MiIHJlbD0ic3R5bGVzaGVldCI+CiAgICA8bGluayBocmVmPSIuLi9jc3MvcHJpc20uY3NzIiByZWw9InN0eWxlc2hlZXQiIG1lZGlhPSJhbGwiLz4KICAgIDxsaW5rIGhyZWY9Ii4uL2Nzcy90ZW1wbGF0ZS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgbWVkaWE9ImFsbCIvPgogICAgCiAgICA8IS0tW2lmIGx0IElFIDldPgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2h0bWw1LmpzIj48L3NjcmlwdD4KICAgIDwhW2VuZGlmXS0tPgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL2pxdWVyeS0xLjExLjAubWluLmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQgc3JjPSIuLi9qcy91aS8xLjEwLjQvanF1ZXJ5LXVpLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvYm9vdHN0cmFwLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHNyYz0iLi4vanMvanF1ZXJ5LnNtb290aC1zY3JvbGwuanMiPjwvc2NyaXB0PgogICAgPHNjcmlwdCBzcmM9Ii4uL2pzL3ByaXNtLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8IS0tIFRPRE86IEFkZCBodHRwOi8vanNjcm9sbHBhbmUua2VsdmlubHVjay5jb20vIHRvIHN0eWxlIHRoZSBzY3JvbGxiYXJzIGZvciBicm93c2VycyBub3QgdXNpbmcgd2Via2l0LS0+CiAgICAKICAgIDxsaW5rIHJlbD0ic2hvcnRjdXQgaWNvbiIgaHJlZj0iLi4vaW1hZ2VzL2Zhdmljb24uaWNvIi8+CiAgICA8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIGhyZWY9Ii4uL2ltYWdlcy9hcHBsZS10b3VjaC1pY29uLnBuZyIvPgogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iNzJ4NzIiIGhyZWY9Ii4uL2ltYWdlcy9hcHBsZS10b3VjaC1pY29uLTcyeDcyLnBuZyIvPgogICAgPGxpbmsgcmVsPSJhcHBsZS10b3VjaC1pY29uIiBzaXplcz0iMTE0eDExNCIgaHJlZj0iLi4vaW1hZ2VzL2FwcGxlLXRvdWNoLWljb24tMTE0eDExNC5wbmciLz4KPC9oZWFkPgo8Ym9keT4KCjxkaXYgY2xhc3M9Im5hdmJhciBuYXZiYXItZml4ZWQtdG9wIj4KICAgIDxkaXYgY2xhc3M9Im5hdmJhci1pbm5lciI+CiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4KICAgICAgICAgICAgPGEgY2xhc3M9ImJ0biBidG4tbmF2YmFyIiBkYXRhLXRvZ2dsZT0iY29sbGFwc2UiIGRhdGEtdGFyZ2V0PSIubmF2LWNvbGxhcHNlIj4KICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWVsbGlwc2lzLXZlcnRpY2FsIj48L2k+CiAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgPGEgY2xhc3M9ImJyYW5kIiBocmVmPSIuLi9pbmRleC5odG1sIj5Gcm9udEVuZFVzZXJzIDIuMy4xPC9hPgoKICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmF2LWNvbGxhcHNlIj4KICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2IHB1bGwtcmlnaHQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJkcm9wZG93biIgaWQ9ImNoYXJ0cy1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9ImRyb3Bkb3duLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENoYXJ0cyA8YiBjbGFzcz0iY2FyZXQiPjwvYj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9hPgogICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9ImRyb3Bkb3duLW1lbnUiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL2dyYXBocy9jbGFzcy5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtDbGFzcyBoaWVyYXJjaHkgZGlhZ3JhbQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9ImRyb3Bkb3duIiBpZD0icmVwb3J0cy1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgY2xhc3M9ImRyb3Bkb3duLXRvZ2dsZSIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlcG9ydHMgPGIgY2xhc3M9ImNhcmV0Ij48L2I+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPSJkcm9wZG93bi1tZW51Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIuLi9yZXBvcnRzL2Vycm9ycy5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9Imljb24tbGlzdC1hbHQiPjwvaT4mIzE2MDtFcnJvcnMgPHNwYW4gY2xhc3M9ImxhYmVsIGxhYmVsLWluZm8gcHVsbC1yaWdodCI+MTA2PC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iLi4vcmVwb3J0cy9tYXJrZXJzLmh0bWwiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz0iaWNvbi1saXN0LWFsdCI+PC9pPiYjMTYwO01hcmtlcnMgPHNwYW4gY2xhc3M9ImxhYmVsIGxhYmVsLWluZm8gcHVsbC1yaWdodCI+MDwvc3Bhbj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Ii4uL3JlcG9ydHMvZGVwcmVjYXRlZC5odG1sIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJpY29uLWxpc3QtYWx0Ij48L2k+JiMxNjA7RGVwcmVjYXRlZCA8c3BhbiBjbGFzcz0ibGFiZWwgbGFiZWwtaW5mbyBwdWxsLXJpZ2h0Ij4xPC9zcGFuPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CiAgICA8IS0tPGRpdiBjbGFzcz0iZ29fdG9fdG9wIj4tLT4KICAgIDwhLS08YSBocmVmPSIjX19fIiBzdHlsZT0iY29sb3I6IGluaGVyaXQiPkJhY2sgdG8gdG9wJiMxNjA7JiMxNjA7PGkgY2xhc3M9Imljb24tdXBsb2FkIGljb24td2hpdGUiPjwvaT48L2E+LS0+CiAgICA8IS0tPC9kaXY+LS0+CjwvZGl2PgoKPGRpdiBpZD0iX19fIiBjbGFzcz0iY29udGFpbmVyLWZsdWlkIj4KICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuMiBzaWRlYmFyIj4KICAgICAgICAgICAgPHVsIGNsYXNzPSJzaWRlLW5hdiBuYXYgbmF2LWxpc3QiPgogICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaGVhZGVyIj5OYXZpZ2F0aW9uPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgoKICAgICAgICA8ZGl2IGNsYXNzPSJzcGFuMTAgb2Zmc2V0MiI+CgogICAgICAgICAgICA8dWwgY2xhc3M9ImJyZWFkY3J1bWIiPgogICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uLyI+PGkgY2xhc3M9Imljb24tbWFwLW1hcmtlciI+PC9pPjwvYT48c3BhbiBjbGFzcz0iZGl2aWRlciI+XDwvc3Bhbj48L2xpPgogICAgICAgICAgICAgICAgPGxpPk1hcmtlcnM8L2xpPgogICAgICAgICAgICA8L3VsPgoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWluZm8iPk5vIG1hcmtlcnMgaGF2ZSBiZWVuIGZvdW5kIGluIHRoaXMgcHJvamVjdC48L2Rpdj4KICAgICAgICAgICAgCiAgICAgICAgICAgIDxkaXYgaWQ9Im1hcmtlci1hY2NvcmRpb24iPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8L3NlY3Rpb24+CgogICAgPGZvb3RlciBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDIiPgogICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0icm93LWZsdWlkIj4KICAgICAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPSJzcGFuMTAgb2Zmc2V0MSI+CiAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCBmb290ZXItc2VjdGlvbnMiPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1jb2RlIj48L2k+PC9oMT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjQiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxoMT48aSBjbGFzcz0iaWNvbi1iYXItY2hhcnQiPjwvaT48L2gxPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPSIuLi9ncmFwaHMvY2xhc3MuaHRtbCI+Q2xhc3MgSGllcmFyY2h5IERpYWdyYW08L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InNwYW40Ij4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aDE+PGkgY2xhc3M9Imljb24tcHVzaHBpbiI+PC9pPjwvaDE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9Ii4uL3JlcG9ydHMvZXJyb3JzLmh0bWwiPkVycm9yczwvYT48L2xpPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+PGEgaHJlZj0iLi4vcmVwb3J0cy9tYXJrZXJzLmh0bWwiPk1hcmtlcnM8L2E+PC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgICAgICA8L3NlY3Rpb24+CiAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPHNlY3Rpb24gY2xhc3M9InJvdy1mbHVpZCI+CiAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic3BhbjEwIG9mZnNldDEiPgogICAgICAgICAgICAgICAgICAgIDxociAvPgogICAgICAgICAgICAgICAgICAgIERvY3VtZW50YXRpb24gaXMgcG93ZXJlZCBieSA8YSBocmVmPSJodHRwOi8vd3d3LnBocGRvYy5vcmcvIj5waHBEb2N1bWVudG9yIDwvYT4gYW5kIGF1dGhvcmVkCiAgICAgICAgICAgICAgICAgICAgb24gRmVicnVhcnkgMTJ0aCwgMjAxNyBhdCAwOTo0NS4KICAgICAgICAgICAgICAgIDwvc2VjdGlvbj4KICAgICAgICAgICAgPC9zZWN0aW9uPgogICAgICAgIDwvc2VjdGlvbj4KICAgIDwvZm9vdGVyPgo8L2Rpdj4KCjwvYm9keT4KPC9odG1sPgo=]]></data>
	</file>
	<file>
	  <filename>/docs/COPYING</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[ICAgICAgICAgICAgICAgICAgICBHTlUgR0VORVJBTCBQVUJMSUMgTElDRU5TRQogICAgICAgICAgICAgICAgICAgICAgIFZlcnNpb24gMiwgSnVuZSAxOTkxCgogQ29weXJpZ2h0IChDKSAxOTg5LCAxOTkxIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwKIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSBVU0EKIEV2ZXJ5b25lIGlzIHBlcm1pdHRlZCB0byBjb3B5IGFuZCBkaXN0cmlidXRlIHZlcmJhdGltIGNvcGllcwogb2YgdGhpcyBsaWNlbnNlIGRvY3VtZW50LCBidXQgY2hhbmdpbmcgaXQgaXMgbm90IGFsbG93ZWQuCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJlYW1ibGUKCiAgVGhlIGxpY2Vuc2VzIGZvciBtb3N0IHNvZnR3YXJlIGFyZSBkZXNpZ25lZCB0byB0YWtlIGF3YXkgeW91cgpmcmVlZG9tIHRvIHNoYXJlIGFuZCBjaGFuZ2UgaXQuICBCeSBjb250cmFzdCwgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYwpMaWNlbnNlIGlzIGludGVuZGVkIHRvIGd1YXJhbnRlZSB5b3VyIGZyZWVkb20gdG8gc2hhcmUgYW5kIGNoYW5nZSBmcmVlCnNvZnR3YXJlLS10byBtYWtlIHN1cmUgdGhlIHNvZnR3YXJlIGlzIGZyZWUgZm9yIGFsbCBpdHMgdXNlcnMuICBUaGlzCkdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXBwbGllcyB0byBtb3N0IG9mIHRoZSBGcmVlIFNvZnR3YXJlCkZvdW5kYXRpb24ncyBzb2Z0d2FyZSBhbmQgdG8gYW55IG90aGVyIHByb2dyYW0gd2hvc2UgYXV0aG9ycyBjb21taXQgdG8KdXNpbmcgaXQuICAoU29tZSBvdGhlciBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24gc29mdHdhcmUgaXMgY292ZXJlZCBieQp0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGluc3RlYWQuKSAgWW91IGNhbiBhcHBseSBpdCB0bwp5b3VyIHByb2dyYW1zLCB0b28uCgogIFdoZW4gd2Ugc3BlYWsgb2YgZnJlZSBzb2Z0d2FyZSwgd2UgYXJlIHJlZmVycmluZyB0byBmcmVlZG9tLCBub3QKcHJpY2UuICBPdXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZXMgYXJlIGRlc2lnbmVkIHRvIG1ha2Ugc3VyZSB0aGF0IHlvdQpoYXZlIHRoZSBmcmVlZG9tIHRvIGRpc3RyaWJ1dGUgY29waWVzIG9mIGZyZWUgc29mdHdhcmUgKGFuZCBjaGFyZ2UgZm9yCnRoaXMgc2VydmljZSBpZiB5b3Ugd2lzaCksIHRoYXQgeW91IHJlY2VpdmUgc291cmNlIGNvZGUgb3IgY2FuIGdldCBpdAppZiB5b3Ugd2FudCBpdCwgdGhhdCB5b3UgY2FuIGNoYW5nZSB0aGUgc29mdHdhcmUgb3IgdXNlIHBpZWNlcyBvZiBpdAppbiBuZXcgZnJlZSBwcm9ncmFtczsgYW5kIHRoYXQgeW91IGtub3cgeW91IGNhbiBkbyB0aGVzZSB0aGluZ3MuCgogIFRvIHByb3RlY3QgeW91ciByaWdodHMsIHdlIG5lZWQgdG8gbWFrZSByZXN0cmljdGlvbnMgdGhhdCBmb3JiaWQKYW55b25lIHRvIGRlbnkgeW91IHRoZXNlIHJpZ2h0cyBvciB0byBhc2sgeW91IHRvIHN1cnJlbmRlciB0aGUgcmlnaHRzLgpUaGVzZSByZXN0cmljdGlvbnMgdHJhbnNsYXRlIHRvIGNlcnRhaW4gcmVzcG9uc2liaWxpdGllcyBmb3IgeW91IGlmIHlvdQpkaXN0cmlidXRlIGNvcGllcyBvZiB0aGUgc29mdHdhcmUsIG9yIGlmIHlvdSBtb2RpZnkgaXQuCgogIEZvciBleGFtcGxlLCBpZiB5b3UgZGlzdHJpYnV0ZSBjb3BpZXMgb2Ygc3VjaCBhIHByb2dyYW0sIHdoZXRoZXIKZ3JhdGlzIG9yIGZvciBhIGZlZSwgeW91IG11c3QgZ2l2ZSB0aGUgcmVjaXBpZW50cyBhbGwgdGhlIHJpZ2h0cyB0aGF0CnlvdSBoYXZlLiAgWW91IG11c3QgbWFrZSBzdXJlIHRoYXQgdGhleSwgdG9vLCByZWNlaXZlIG9yIGNhbiBnZXQgdGhlCnNvdXJjZSBjb2RlLiAgQW5kIHlvdSBtdXN0IHNob3cgdGhlbSB0aGVzZSB0ZXJtcyBzbyB0aGV5IGtub3cgdGhlaXIKcmlnaHRzLgoKICBXZSBwcm90ZWN0IHlvdXIgcmlnaHRzIHdpdGggdHdvIHN0ZXBzOiAoMSkgY29weXJpZ2h0IHRoZSBzb2Z0d2FyZSwgYW5kCigyKSBvZmZlciB5b3UgdGhpcyBsaWNlbnNlIHdoaWNoIGdpdmVzIHlvdSBsZWdhbCBwZXJtaXNzaW9uIHRvIGNvcHksCmRpc3RyaWJ1dGUgYW5kL29yIG1vZGlmeSB0aGUgc29mdHdhcmUuCgogIEFsc28sIGZvciBlYWNoIGF1dGhvcidzIHByb3RlY3Rpb24gYW5kIG91cnMsIHdlIHdhbnQgdG8gbWFrZSBjZXJ0YWluCnRoYXQgZXZlcnlvbmUgdW5kZXJzdGFuZHMgdGhhdCB0aGVyZSBpcyBubyB3YXJyYW50eSBmb3IgdGhpcyBmcmVlCnNvZnR3YXJlLiAgSWYgdGhlIHNvZnR3YXJlIGlzIG1vZGlmaWVkIGJ5IHNvbWVvbmUgZWxzZSBhbmQgcGFzc2VkIG9uLCB3ZQp3YW50IGl0cyByZWNpcGllbnRzIHRvIGtub3cgdGhhdCB3aGF0IHRoZXkgaGF2ZSBpcyBub3QgdGhlIG9yaWdpbmFsLCBzbwp0aGF0IGFueSBwcm9ibGVtcyBpbnRyb2R1Y2VkIGJ5IG90aGVycyB3aWxsIG5vdCByZWZsZWN0IG9uIHRoZSBvcmlnaW5hbAphdXRob3JzJyByZXB1dGF0aW9ucy4KCiAgRmluYWxseSwgYW55IGZyZWUgcHJvZ3JhbSBpcyB0aHJlYXRlbmVkIGNvbnN0YW50bHkgYnkgc29mdHdhcmUKcGF0ZW50cy4gIFdlIHdpc2ggdG8gYXZvaWQgdGhlIGRhbmdlciB0aGF0IHJlZGlzdHJpYnV0b3JzIG9mIGEgZnJlZQpwcm9ncmFtIHdpbGwgaW5kaXZpZHVhbGx5IG9idGFpbiBwYXRlbnQgbGljZW5zZXMsIGluIGVmZmVjdCBtYWtpbmcgdGhlCnByb2dyYW0gcHJvcHJpZXRhcnkuICBUbyBwcmV2ZW50IHRoaXMsIHdlIGhhdmUgbWFkZSBpdCBjbGVhciB0aGF0IGFueQpwYXRlbnQgbXVzdCBiZSBsaWNlbnNlZCBmb3IgZXZlcnlvbmUncyBmcmVlIHVzZSBvciBub3QgbGljZW5zZWQgYXQgYWxsLgoKICBUaGUgcHJlY2lzZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBmb3IgY29weWluZywgZGlzdHJpYnV0aW9uIGFuZAptb2RpZmljYXRpb24gZm9sbG93LgoKICAgICAgICAgICAgICAgICAgICBHTlUgR0VORVJBTCBQVUJMSUMgTElDRU5TRQogICBURVJNUyBBTkQgQ09ORElUSU9OUyBGT1IgQ09QWUlORywgRElTVFJJQlVUSU9OIEFORCBNT0RJRklDQVRJT04KCiAgMC4gVGhpcyBMaWNlbnNlIGFwcGxpZXMgdG8gYW55IHByb2dyYW0gb3Igb3RoZXIgd29yayB3aGljaCBjb250YWlucwphIG5vdGljZSBwbGFjZWQgYnkgdGhlIGNvcHlyaWdodCBob2xkZXIgc2F5aW5nIGl0IG1heSBiZSBkaXN0cmlidXRlZAp1bmRlciB0aGUgdGVybXMgb2YgdGhpcyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLiAgVGhlICJQcm9ncmFtIiwgYmVsb3csCnJlZmVycyB0byBhbnkgc3VjaCBwcm9ncmFtIG9yIHdvcmssIGFuZCBhICJ3b3JrIGJhc2VkIG9uIHRoZSBQcm9ncmFtIgptZWFucyBlaXRoZXIgdGhlIFByb2dyYW0gb3IgYW55IGRlcml2YXRpdmUgd29yayB1bmRlciBjb3B5cmlnaHQgbGF3Ogp0aGF0IGlzIHRvIHNheSwgYSB3b3JrIGNvbnRhaW5pbmcgdGhlIFByb2dyYW0gb3IgYSBwb3J0aW9uIG9mIGl0LAplaXRoZXIgdmVyYmF0aW0gb3Igd2l0aCBtb2RpZmljYXRpb25zIGFuZC9vciB0cmFuc2xhdGVkIGludG8gYW5vdGhlcgpsYW5ndWFnZS4gIChIZXJlaW5hZnRlciwgdHJhbnNsYXRpb24gaXMgaW5jbHVkZWQgd2l0aG91dCBsaW1pdGF0aW9uIGluCnRoZSB0ZXJtICJtb2RpZmljYXRpb24iLikgIEVhY2ggbGljZW5zZWUgaXMgYWRkcmVzc2VkIGFzICJ5b3UiLgoKQWN0aXZpdGllcyBvdGhlciB0aGFuIGNvcHlpbmcsIGRpc3RyaWJ1dGlvbiBhbmQgbW9kaWZpY2F0aW9uIGFyZSBub3QKY292ZXJlZCBieSB0aGlzIExpY2Vuc2U7IHRoZXkgYXJlIG91dHNpZGUgaXRzIHNjb3BlLiAgVGhlIGFjdCBvZgpydW5uaW5nIHRoZSBQcm9ncmFtIGlzIG5vdCByZXN0cmljdGVkLCBhbmQgdGhlIG91dHB1dCBmcm9tIHRoZSBQcm9ncmFtCmlzIGNvdmVyZWQgb25seSBpZiBpdHMgY29udGVudHMgY29uc3RpdHV0ZSBhIHdvcmsgYmFzZWQgb24gdGhlClByb2dyYW0gKGluZGVwZW5kZW50IG9mIGhhdmluZyBiZWVuIG1hZGUgYnkgcnVubmluZyB0aGUgUHJvZ3JhbSkuCldoZXRoZXIgdGhhdCBpcyB0cnVlIGRlcGVuZHMgb24gd2hhdCB0aGUgUHJvZ3JhbSBkb2VzLgoKICAxLiBZb3UgbWF5IGNvcHkgYW5kIGRpc3RyaWJ1dGUgdmVyYmF0aW0gY29waWVzIG9mIHRoZSBQcm9ncmFtJ3MKc291cmNlIGNvZGUgYXMgeW91IHJlY2VpdmUgaXQsIGluIGFueSBtZWRpdW0sIHByb3ZpZGVkIHRoYXQgeW91CmNvbnNwaWN1b3VzbHkgYW5kIGFwcHJvcHJpYXRlbHkgcHVibGlzaCBvbiBlYWNoIGNvcHkgYW4gYXBwcm9wcmlhdGUKY29weXJpZ2h0IG5vdGljZSBhbmQgZGlzY2xhaW1lciBvZiB3YXJyYW50eTsga2VlcCBpbnRhY3QgYWxsIHRoZQpub3RpY2VzIHRoYXQgcmVmZXIgdG8gdGhpcyBMaWNlbnNlIGFuZCB0byB0aGUgYWJzZW5jZSBvZiBhbnkgd2FycmFudHk7CmFuZCBnaXZlIGFueSBvdGhlciByZWNpcGllbnRzIG9mIHRoZSBQcm9ncmFtIGEgY29weSBvZiB0aGlzIExpY2Vuc2UKYWxvbmcgd2l0aCB0aGUgUHJvZ3JhbS4KCllvdSBtYXkgY2hhcmdlIGEgZmVlIGZvciB0aGUgcGh5c2ljYWwgYWN0IG9mIHRyYW5zZmVycmluZyBhIGNvcHksIGFuZAp5b3UgbWF5IGF0IHlvdXIgb3B0aW9uIG9mZmVyIHdhcnJhbnR5IHByb3RlY3Rpb24gaW4gZXhjaGFuZ2UgZm9yIGEgZmVlLgoKICAyLiBZb3UgbWF5IG1vZGlmeSB5b3VyIGNvcHkgb3IgY29waWVzIG9mIHRoZSBQcm9ncmFtIG9yIGFueSBwb3J0aW9uCm9mIGl0LCB0aHVzIGZvcm1pbmcgYSB3b3JrIGJhc2VkIG9uIHRoZSBQcm9ncmFtLCBhbmQgY29weSBhbmQKZGlzdHJpYnV0ZSBzdWNoIG1vZGlmaWNhdGlvbnMgb3Igd29yayB1bmRlciB0aGUgdGVybXMgb2YgU2VjdGlvbiAxCmFib3ZlLCBwcm92aWRlZCB0aGF0IHlvdSBhbHNvIG1lZXQgYWxsIG9mIHRoZXNlIGNvbmRpdGlvbnM6CgogICAgYSkgWW91IG11c3QgY2F1c2UgdGhlIG1vZGlmaWVkIGZpbGVzIHRvIGNhcnJ5IHByb21pbmVudCBub3RpY2VzCiAgICBzdGF0aW5nIHRoYXQgeW91IGNoYW5nZWQgdGhlIGZpbGVzIGFuZCB0aGUgZGF0ZSBvZiBhbnkgY2hhbmdlLgoKICAgIGIpIFlvdSBtdXN0IGNhdXNlIGFueSB3b3JrIHRoYXQgeW91IGRpc3RyaWJ1dGUgb3IgcHVibGlzaCwgdGhhdCBpbgogICAgd2hvbGUgb3IgaW4gcGFydCBjb250YWlucyBvciBpcyBkZXJpdmVkIGZyb20gdGhlIFByb2dyYW0gb3IgYW55CiAgICBwYXJ0IHRoZXJlb2YsIHRvIGJlIGxpY2Vuc2VkIGFzIGEgd2hvbGUgYXQgbm8gY2hhcmdlIHRvIGFsbCB0aGlyZAogICAgcGFydGllcyB1bmRlciB0aGUgdGVybXMgb2YgdGhpcyBMaWNlbnNlLgoKICAgIGMpIElmIHRoZSBtb2RpZmllZCBwcm9ncmFtIG5vcm1hbGx5IHJlYWRzIGNvbW1hbmRzIGludGVyYWN0aXZlbHkKICAgIHdoZW4gcnVuLCB5b3UgbXVzdCBjYXVzZSBpdCwgd2hlbiBzdGFydGVkIHJ1bm5pbmcgZm9yIHN1Y2gKICAgIGludGVyYWN0aXZlIHVzZSBpbiB0aGUgbW9zdCBvcmRpbmFyeSB3YXksIHRvIHByaW50IG9yIGRpc3BsYXkgYW4KICAgIGFubm91bmNlbWVudCBpbmNsdWRpbmcgYW4gYXBwcm9wcmlhdGUgY29weXJpZ2h0IG5vdGljZSBhbmQgYQogICAgbm90aWNlIHRoYXQgdGhlcmUgaXMgbm8gd2FycmFudHkgKG9yIGVsc2UsIHNheWluZyB0aGF0IHlvdSBwcm92aWRlCiAgICBhIHdhcnJhbnR5KSBhbmQgdGhhdCB1c2VycyBtYXkgcmVkaXN0cmlidXRlIHRoZSBwcm9ncmFtIHVuZGVyCiAgICB0aGVzZSBjb25kaXRpb25zLCBhbmQgdGVsbGluZyB0aGUgdXNlciBob3cgdG8gdmlldyBhIGNvcHkgb2YgdGhpcwogICAgTGljZW5zZS4gIChFeGNlcHRpb246IGlmIHRoZSBQcm9ncmFtIGl0c2VsZiBpcyBpbnRlcmFjdGl2ZSBidXQKICAgIGRvZXMgbm90IG5vcm1hbGx5IHByaW50IHN1Y2ggYW4gYW5ub3VuY2VtZW50LCB5b3VyIHdvcmsgYmFzZWQgb24KICAgIHRoZSBQcm9ncmFtIGlzIG5vdCByZXF1aXJlZCB0byBwcmludCBhbiBhbm5vdW5jZW1lbnQuKQoKVGhlc2UgcmVxdWlyZW1lbnRzIGFwcGx5IHRvIHRoZSBtb2RpZmllZCB3b3JrIGFzIGEgd2hvbGUuICBJZgppZGVudGlmaWFibGUgc2VjdGlvbnMgb2YgdGhhdCB3b3JrIGFyZSBub3QgZGVyaXZlZCBmcm9tIHRoZSBQcm9ncmFtLAphbmQgY2FuIGJlIHJlYXNvbmFibHkgY29uc2lkZXJlZCBpbmRlcGVuZGVudCBhbmQgc2VwYXJhdGUgd29ya3MgaW4KdGhlbXNlbHZlcywgdGhlbiB0aGlzIExpY2Vuc2UsIGFuZCBpdHMgdGVybXMsIGRvIG5vdCBhcHBseSB0byB0aG9zZQpzZWN0aW9ucyB3aGVuIHlvdSBkaXN0cmlidXRlIHRoZW0gYXMgc2VwYXJhdGUgd29ya3MuICBCdXQgd2hlbiB5b3UKZGlzdHJpYnV0ZSB0aGUgc2FtZSBzZWN0aW9ucyBhcyBwYXJ0IG9mIGEgd2hvbGUgd2hpY2ggaXMgYSB3b3JrIGJhc2VkCm9uIHRoZSBQcm9ncmFtLCB0aGUgZGlzdHJpYnV0aW9uIG9mIHRoZSB3aG9sZSBtdXN0IGJlIG9uIHRoZSB0ZXJtcyBvZgp0aGlzIExpY2Vuc2UsIHdob3NlIHBlcm1pc3Npb25zIGZvciBvdGhlciBsaWNlbnNlZXMgZXh0ZW5kIHRvIHRoZQplbnRpcmUgd2hvbGUsIGFuZCB0aHVzIHRvIGVhY2ggYW5kIGV2ZXJ5IHBhcnQgcmVnYXJkbGVzcyBvZiB3aG8gd3JvdGUgaXQuCgpUaHVzLCBpdCBpcyBub3QgdGhlIGludGVudCBvZiB0aGlzIHNlY3Rpb24gdG8gY2xhaW0gcmlnaHRzIG9yIGNvbnRlc3QKeW91ciByaWdodHMgdG8gd29yayB3cml0dGVuIGVudGlyZWx5IGJ5IHlvdTsgcmF0aGVyLCB0aGUgaW50ZW50IGlzIHRvCmV4ZXJjaXNlIHRoZSByaWdodCB0byBjb250cm9sIHRoZSBkaXN0cmlidXRpb24gb2YgZGVyaXZhdGl2ZSBvcgpjb2xsZWN0aXZlIHdvcmtzIGJhc2VkIG9uIHRoZSBQcm9ncmFtLgoKSW4gYWRkaXRpb24sIG1lcmUgYWdncmVnYXRpb24gb2YgYW5vdGhlciB3b3JrIG5vdCBiYXNlZCBvbiB0aGUgUHJvZ3JhbQp3aXRoIHRoZSBQcm9ncmFtIChvciB3aXRoIGEgd29yayBiYXNlZCBvbiB0aGUgUHJvZ3JhbSkgb24gYSB2b2x1bWUgb2YKYSBzdG9yYWdlIG9yIGRpc3RyaWJ1dGlvbiBtZWRpdW0gZG9lcyBub3QgYnJpbmcgdGhlIG90aGVyIHdvcmsgdW5kZXIKdGhlIHNjb3BlIG9mIHRoaXMgTGljZW5zZS4KCiAgMy4gWW91IG1heSBjb3B5IGFuZCBkaXN0cmlidXRlIHRoZSBQcm9ncmFtIChvciBhIHdvcmsgYmFzZWQgb24gaXQsCnVuZGVyIFNlY3Rpb24gMikgaW4gb2JqZWN0IGNvZGUgb3IgZXhlY3V0YWJsZSBmb3JtIHVuZGVyIHRoZSB0ZXJtcyBvZgpTZWN0aW9ucyAxIGFuZCAyIGFib3ZlIHByb3ZpZGVkIHRoYXQgeW91IGFsc28gZG8gb25lIG9mIHRoZSBmb2xsb3dpbmc6CgogICAgYSkgQWNjb21wYW55IGl0IHdpdGggdGhlIGNvbXBsZXRlIGNvcnJlc3BvbmRpbmcgbWFjaGluZS1yZWFkYWJsZQogICAgc291cmNlIGNvZGUsIHdoaWNoIG11c3QgYmUgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHRlcm1zIG9mIFNlY3Rpb25zCiAgICAxIGFuZCAyIGFib3ZlIG9uIGEgbWVkaXVtIGN1c3RvbWFyaWx5IHVzZWQgZm9yIHNvZnR3YXJlIGludGVyY2hhbmdlOyBvciwKCiAgICBiKSBBY2NvbXBhbnkgaXQgd2l0aCBhIHdyaXR0ZW4gb2ZmZXIsIHZhbGlkIGZvciBhdCBsZWFzdCB0aHJlZQogICAgeWVhcnMsIHRvIGdpdmUgYW55IHRoaXJkIHBhcnR5LCBmb3IgYSBjaGFyZ2Ugbm8gbW9yZSB0aGFuIHlvdXIKICAgIGNvc3Qgb2YgcGh5c2ljYWxseSBwZXJmb3JtaW5nIHNvdXJjZSBkaXN0cmlidXRpb24sIGEgY29tcGxldGUKICAgIG1hY2hpbmUtcmVhZGFibGUgY29weSBvZiB0aGUgY29ycmVzcG9uZGluZyBzb3VyY2UgY29kZSwgdG8gYmUKICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSB0ZXJtcyBvZiBTZWN0aW9ucyAxIGFuZCAyIGFib3ZlIG9uIGEgbWVkaXVtCiAgICBjdXN0b21hcmlseSB1c2VkIGZvciBzb2Z0d2FyZSBpbnRlcmNoYW5nZTsgb3IsCgogICAgYykgQWNjb21wYW55IGl0IHdpdGggdGhlIGluZm9ybWF0aW9uIHlvdSByZWNlaXZlZCBhcyB0byB0aGUgb2ZmZXIKICAgIHRvIGRpc3RyaWJ1dGUgY29ycmVzcG9uZGluZyBzb3VyY2UgY29kZS4gIChUaGlzIGFsdGVybmF0aXZlIGlzCiAgICBhbGxvd2VkIG9ubHkgZm9yIG5vbmNvbW1lcmNpYWwgZGlzdHJpYnV0aW9uIGFuZCBvbmx5IGlmIHlvdQogICAgcmVjZWl2ZWQgdGhlIHByb2dyYW0gaW4gb2JqZWN0IGNvZGUgb3IgZXhlY3V0YWJsZSBmb3JtIHdpdGggc3VjaAogICAgYW4gb2ZmZXIsIGluIGFjY29yZCB3aXRoIFN1YnNlY3Rpb24gYiBhYm92ZS4pCgpUaGUgc291cmNlIGNvZGUgZm9yIGEgd29yayBtZWFucyB0aGUgcHJlZmVycmVkIGZvcm0gb2YgdGhlIHdvcmsgZm9yCm1ha2luZyBtb2RpZmljYXRpb25zIHRvIGl0LiAgRm9yIGFuIGV4ZWN1dGFibGUgd29yaywgY29tcGxldGUgc291cmNlCmNvZGUgbWVhbnMgYWxsIHRoZSBzb3VyY2UgY29kZSBmb3IgYWxsIG1vZHVsZXMgaXQgY29udGFpbnMsIHBsdXMgYW55CmFzc29jaWF0ZWQgaW50ZXJmYWNlIGRlZmluaXRpb24gZmlsZXMsIHBsdXMgdGhlIHNjcmlwdHMgdXNlZCB0bwpjb250cm9sIGNvbXBpbGF0aW9uIGFuZCBpbnN0YWxsYXRpb24gb2YgdGhlIGV4ZWN1dGFibGUuICBIb3dldmVyLCBhcyBhCnNwZWNpYWwgZXhjZXB0aW9uLCB0aGUgc291cmNlIGNvZGUgZGlzdHJpYnV0ZWQgbmVlZCBub3QgaW5jbHVkZQphbnl0aGluZyB0aGF0IGlzIG5vcm1hbGx5IGRpc3RyaWJ1dGVkIChpbiBlaXRoZXIgc291cmNlIG9yIGJpbmFyeQpmb3JtKSB3aXRoIHRoZSBtYWpvciBjb21wb25lbnRzIChjb21waWxlciwga2VybmVsLCBhbmQgc28gb24pIG9mIHRoZQpvcGVyYXRpbmcgc3lzdGVtIG9uIHdoaWNoIHRoZSBleGVjdXRhYmxlIHJ1bnMsIHVubGVzcyB0aGF0IGNvbXBvbmVudAppdHNlbGYgYWNjb21wYW5pZXMgdGhlIGV4ZWN1dGFibGUuCgpJZiBkaXN0cmlidXRpb24gb2YgZXhlY3V0YWJsZSBvciBvYmplY3QgY29kZSBpcyBtYWRlIGJ5IG9mZmVyaW5nCmFjY2VzcyB0byBjb3B5IGZyb20gYSBkZXNpZ25hdGVkIHBsYWNlLCB0aGVuIG9mZmVyaW5nIGVxdWl2YWxlbnQKYWNjZXNzIHRvIGNvcHkgdGhlIHNvdXJjZSBjb2RlIGZyb20gdGhlIHNhbWUgcGxhY2UgY291bnRzIGFzCmRpc3RyaWJ1dGlvbiBvZiB0aGUgc291cmNlIGNvZGUsIGV2ZW4gdGhvdWdoIHRoaXJkIHBhcnRpZXMgYXJlIG5vdApjb21wZWxsZWQgdG8gY29weSB0aGUgc291cmNlIGFsb25nIHdpdGggdGhlIG9iamVjdCBjb2RlLgoKICA0LiBZb3UgbWF5IG5vdCBjb3B5LCBtb2RpZnksIHN1YmxpY2Vuc2UsIG9yIGRpc3RyaWJ1dGUgdGhlIFByb2dyYW0KZXhjZXB0IGFzIGV4cHJlc3NseSBwcm92aWRlZCB1bmRlciB0aGlzIExpY2Vuc2UuICBBbnkgYXR0ZW1wdApvdGhlcndpc2UgdG8gY29weSwgbW9kaWZ5LCBzdWJsaWNlbnNlIG9yIGRpc3RyaWJ1dGUgdGhlIFByb2dyYW0gaXMKdm9pZCwgYW5kIHdpbGwgYXV0b21hdGljYWxseSB0ZXJtaW5hdGUgeW91ciByaWdodHMgdW5kZXIgdGhpcyBMaWNlbnNlLgpIb3dldmVyLCBwYXJ0aWVzIHdobyBoYXZlIHJlY2VpdmVkIGNvcGllcywgb3IgcmlnaHRzLCBmcm9tIHlvdSB1bmRlcgp0aGlzIExpY2Vuc2Ugd2lsbCBub3QgaGF2ZSB0aGVpciBsaWNlbnNlcyB0ZXJtaW5hdGVkIHNvIGxvbmcgYXMgc3VjaApwYXJ0aWVzIHJlbWFpbiBpbiBmdWxsIGNvbXBsaWFuY2UuCgogIDUuIFlvdSBhcmUgbm90IHJlcXVpcmVkIHRvIGFjY2VwdCB0aGlzIExpY2Vuc2UsIHNpbmNlIHlvdSBoYXZlIG5vdApzaWduZWQgaXQuICBIb3dldmVyLCBub3RoaW5nIGVsc2UgZ3JhbnRzIHlvdSBwZXJtaXNzaW9uIHRvIG1vZGlmeSBvcgpkaXN0cmlidXRlIHRoZSBQcm9ncmFtIG9yIGl0cyBkZXJpdmF0aXZlIHdvcmtzLiAgVGhlc2UgYWN0aW9ucyBhcmUKcHJvaGliaXRlZCBieSBsYXcgaWYgeW91IGRvIG5vdCBhY2NlcHQgdGhpcyBMaWNlbnNlLiAgVGhlcmVmb3JlLCBieQptb2RpZnlpbmcgb3IgZGlzdHJpYnV0aW5nIHRoZSBQcm9ncmFtIChvciBhbnkgd29yayBiYXNlZCBvbiB0aGUKUHJvZ3JhbSksIHlvdSBpbmRpY2F0ZSB5b3VyIGFjY2VwdGFuY2Ugb2YgdGhpcyBMaWNlbnNlIHRvIGRvIHNvLCBhbmQKYWxsIGl0cyB0ZXJtcyBhbmQgY29uZGl0aW9ucyBmb3IgY29weWluZywgZGlzdHJpYnV0aW5nIG9yIG1vZGlmeWluZwp0aGUgUHJvZ3JhbSBvciB3b3JrcyBiYXNlZCBvbiBpdC4KCiAgNi4gRWFjaCB0aW1lIHlvdSByZWRpc3RyaWJ1dGUgdGhlIFByb2dyYW0gKG9yIGFueSB3b3JrIGJhc2VkIG9uIHRoZQpQcm9ncmFtKSwgdGhlIHJlY2lwaWVudCBhdXRvbWF0aWNhbGx5IHJlY2VpdmVzIGEgbGljZW5zZSBmcm9tIHRoZQpvcmlnaW5hbCBsaWNlbnNvciB0byBjb3B5LCBkaXN0cmlidXRlIG9yIG1vZGlmeSB0aGUgUHJvZ3JhbSBzdWJqZWN0IHRvCnRoZXNlIHRlcm1zIGFuZCBjb25kaXRpb25zLiAgWW91IG1heSBub3QgaW1wb3NlIGFueSBmdXJ0aGVyCnJlc3RyaWN0aW9ucyBvbiB0aGUgcmVjaXBpZW50cycgZXhlcmNpc2Ugb2YgdGhlIHJpZ2h0cyBncmFudGVkIGhlcmVpbi4KWW91IGFyZSBub3QgcmVzcG9uc2libGUgZm9yIGVuZm9yY2luZyBjb21wbGlhbmNlIGJ5IHRoaXJkIHBhcnRpZXMgdG8KdGhpcyBMaWNlbnNlLgoKICA3LiBJZiwgYXMgYSBjb25zZXF1ZW5jZSBvZiBhIGNvdXJ0IGp1ZGdtZW50IG9yIGFsbGVnYXRpb24gb2YgcGF0ZW50CmluZnJpbmdlbWVudCBvciBmb3IgYW55IG90aGVyIHJlYXNvbiAobm90IGxpbWl0ZWQgdG8gcGF0ZW50IGlzc3VlcyksCmNvbmRpdGlvbnMgYXJlIGltcG9zZWQgb24geW91ICh3aGV0aGVyIGJ5IGNvdXJ0IG9yZGVyLCBhZ3JlZW1lbnQgb3IKb3RoZXJ3aXNlKSB0aGF0IGNvbnRyYWRpY3QgdGhlIGNvbmRpdGlvbnMgb2YgdGhpcyBMaWNlbnNlLCB0aGV5IGRvIG5vdApleGN1c2UgeW91IGZyb20gdGhlIGNvbmRpdGlvbnMgb2YgdGhpcyBMaWNlbnNlLiAgSWYgeW91IGNhbm5vdApkaXN0cmlidXRlIHNvIGFzIHRvIHNhdGlzZnkgc2ltdWx0YW5lb3VzbHkgeW91ciBvYmxpZ2F0aW9ucyB1bmRlciB0aGlzCkxpY2Vuc2UgYW5kIGFueSBvdGhlciBwZXJ0aW5lbnQgb2JsaWdhdGlvbnMsIHRoZW4gYXMgYSBjb25zZXF1ZW5jZSB5b3UKbWF5IG5vdCBkaXN0cmlidXRlIHRoZSBQcm9ncmFtIGF0IGFsbC4gIEZvciBleGFtcGxlLCBpZiBhIHBhdGVudApsaWNlbnNlIHdvdWxkIG5vdCBwZXJtaXQgcm95YWx0eS1mcmVlIHJlZGlzdHJpYnV0aW9uIG9mIHRoZSBQcm9ncmFtIGJ5CmFsbCB0aG9zZSB3aG8gcmVjZWl2ZSBjb3BpZXMgZGlyZWN0bHkgb3IgaW5kaXJlY3RseSB0aHJvdWdoIHlvdSwgdGhlbgp0aGUgb25seSB3YXkgeW91IGNvdWxkIHNhdGlzZnkgYm90aCBpdCBhbmQgdGhpcyBMaWNlbnNlIHdvdWxkIGJlIHRvCnJlZnJhaW4gZW50aXJlbHkgZnJvbSBkaXN0cmlidXRpb24gb2YgdGhlIFByb2dyYW0uCgpJZiBhbnkgcG9ydGlvbiBvZiB0aGlzIHNlY3Rpb24gaXMgaGVsZCBpbnZhbGlkIG9yIHVuZW5mb3JjZWFibGUgdW5kZXIKYW55IHBhcnRpY3VsYXIgY2lyY3Vtc3RhbmNlLCB0aGUgYmFsYW5jZSBvZiB0aGUgc2VjdGlvbiBpcyBpbnRlbmRlZCB0bwphcHBseSBhbmQgdGhlIHNlY3Rpb24gYXMgYSB3aG9sZSBpcyBpbnRlbmRlZCB0byBhcHBseSBpbiBvdGhlcgpjaXJjdW1zdGFuY2VzLgoKSXQgaXMgbm90IHRoZSBwdXJwb3NlIG9mIHRoaXMgc2VjdGlvbiB0byBpbmR1Y2UgeW91IHRvIGluZnJpbmdlIGFueQpwYXRlbnRzIG9yIG90aGVyIHByb3BlcnR5IHJpZ2h0IGNsYWltcyBvciB0byBjb250ZXN0IHZhbGlkaXR5IG9mIGFueQpzdWNoIGNsYWltczsgdGhpcyBzZWN0aW9uIGhhcyB0aGUgc29sZSBwdXJwb3NlIG9mIHByb3RlY3RpbmcgdGhlCmludGVncml0eSBvZiB0aGUgZnJlZSBzb2Z0d2FyZSBkaXN0cmlidXRpb24gc3lzdGVtLCB3aGljaCBpcwppbXBsZW1lbnRlZCBieSBwdWJsaWMgbGljZW5zZSBwcmFjdGljZXMuICBNYW55IHBlb3BsZSBoYXZlIG1hZGUKZ2VuZXJvdXMgY29udHJpYnV0aW9ucyB0byB0aGUgd2lkZSByYW5nZSBvZiBzb2Z0d2FyZSBkaXN0cmlidXRlZAp0aHJvdWdoIHRoYXQgc3lzdGVtIGluIHJlbGlhbmNlIG9uIGNvbnNpc3RlbnQgYXBwbGljYXRpb24gb2YgdGhhdApzeXN0ZW07IGl0IGlzIHVwIHRvIHRoZSBhdXRob3IvZG9ub3IgdG8gZGVjaWRlIGlmIGhlIG9yIHNoZSBpcyB3aWxsaW5nCnRvIGRpc3RyaWJ1dGUgc29mdHdhcmUgdGhyb3VnaCBhbnkgb3RoZXIgc3lzdGVtIGFuZCBhIGxpY2Vuc2VlIGNhbm5vdAppbXBvc2UgdGhhdCBjaG9pY2UuCgpUaGlzIHNlY3Rpb24gaXMgaW50ZW5kZWQgdG8gbWFrZSB0aG9yb3VnaGx5IGNsZWFyIHdoYXQgaXMgYmVsaWV2ZWQgdG8KYmUgYSBjb25zZXF1ZW5jZSBvZiB0aGUgcmVzdCBvZiB0aGlzIExpY2Vuc2UuCgogIDguIElmIHRoZSBkaXN0cmlidXRpb24gYW5kL29yIHVzZSBvZiB0aGUgUHJvZ3JhbSBpcyByZXN0cmljdGVkIGluCmNlcnRhaW4gY291bnRyaWVzIGVpdGhlciBieSBwYXRlbnRzIG9yIGJ5IGNvcHlyaWdodGVkIGludGVyZmFjZXMsIHRoZQpvcmlnaW5hbCBjb3B5cmlnaHQgaG9sZGVyIHdobyBwbGFjZXMgdGhlIFByb2dyYW0gdW5kZXIgdGhpcyBMaWNlbnNlCm1heSBhZGQgYW4gZXhwbGljaXQgZ2VvZ3JhcGhpY2FsIGRpc3RyaWJ1dGlvbiBsaW1pdGF0aW9uIGV4Y2x1ZGluZwp0aG9zZSBjb3VudHJpZXMsIHNvIHRoYXQgZGlzdHJpYnV0aW9uIGlzIHBlcm1pdHRlZCBvbmx5IGluIG9yIGFtb25nCmNvdW50cmllcyBub3QgdGh1cyBleGNsdWRlZC4gIEluIHN1Y2ggY2FzZSwgdGhpcyBMaWNlbnNlIGluY29ycG9yYXRlcwp0aGUgbGltaXRhdGlvbiBhcyBpZiB3cml0dGVuIGluIHRoZSBib2R5IG9mIHRoaXMgTGljZW5zZS4KCiAgOS4gVGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiBtYXkgcHVibGlzaCByZXZpc2VkIGFuZC9vciBuZXcgdmVyc2lvbnMKb2YgdGhlIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZnJvbSB0aW1lIHRvIHRpbWUuICBTdWNoIG5ldyB2ZXJzaW9ucyB3aWxsCmJlIHNpbWlsYXIgaW4gc3Bpcml0IHRvIHRoZSBwcmVzZW50IHZlcnNpb24sIGJ1dCBtYXkgZGlmZmVyIGluIGRldGFpbCB0bwphZGRyZXNzIG5ldyBwcm9ibGVtcyBvciBjb25jZXJucy4KCkVhY2ggdmVyc2lvbiBpcyBnaXZlbiBhIGRpc3Rpbmd1aXNoaW5nIHZlcnNpb24gbnVtYmVyLiAgSWYgdGhlIFByb2dyYW0Kc3BlY2lmaWVzIGEgdmVyc2lvbiBudW1iZXIgb2YgdGhpcyBMaWNlbnNlIHdoaWNoIGFwcGxpZXMgdG8gaXQgYW5kICJhbnkKbGF0ZXIgdmVyc2lvbiIsIHlvdSBoYXZlIHRoZSBvcHRpb24gb2YgZm9sbG93aW5nIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucwplaXRoZXIgb2YgdGhhdCB2ZXJzaW9uIG9yIG9mIGFueSBsYXRlciB2ZXJzaW9uIHB1Ymxpc2hlZCBieSB0aGUgRnJlZQpTb2Z0d2FyZSBGb3VuZGF0aW9uLiAgSWYgdGhlIFByb2dyYW0gZG9lcyBub3Qgc3BlY2lmeSBhIHZlcnNpb24gbnVtYmVyIG9mCnRoaXMgTGljZW5zZSwgeW91IG1heSBjaG9vc2UgYW55IHZlcnNpb24gZXZlciBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUKRm91bmRhdGlvbi4KCiAgMTAuIElmIHlvdSB3aXNoIHRvIGluY29ycG9yYXRlIHBhcnRzIG9mIHRoZSBQcm9ncmFtIGludG8gb3RoZXIgZnJlZQpwcm9ncmFtcyB3aG9zZSBkaXN0cmlidXRpb24gY29uZGl0aW9ucyBhcmUgZGlmZmVyZW50LCB3cml0ZSB0byB0aGUgYXV0aG9yCnRvIGFzayBmb3IgcGVybWlzc2lvbi4gIEZvciBzb2Z0d2FyZSB3aGljaCBpcyBjb3B5cmlnaHRlZCBieSB0aGUgRnJlZQpTb2Z0d2FyZSBGb3VuZGF0aW9uLCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyB3ZSBzb21ldGltZXMKbWFrZSBleGNlcHRpb25zIGZvciB0aGlzLiAgT3VyIGRlY2lzaW9uIHdpbGwgYmUgZ3VpZGVkIGJ5IHRoZSB0d28gZ29hbHMKb2YgcHJlc2VydmluZyB0aGUgZnJlZSBzdGF0dXMgb2YgYWxsIGRlcml2YXRpdmVzIG9mIG91ciBmcmVlIHNvZnR3YXJlIGFuZApvZiBwcm9tb3RpbmcgdGhlIHNoYXJpbmcgYW5kIHJldXNlIG9mIHNvZnR3YXJlIGdlbmVyYWxseS4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBOTyBXQVJSQU5UWQoKICAxMS4gQkVDQVVTRSBUSEUgUFJPR1JBTSBJUyBMSUNFTlNFRCBGUkVFIE9GIENIQVJHRSwgVEhFUkUgSVMgTk8gV0FSUkFOVFkKRk9SIFRIRSBQUk9HUkFNLCBUTyBUSEUgRVhURU5UIFBFUk1JVFRFRCBCWSBBUFBMSUNBQkxFIExBVy4gIEVYQ0VQVCBXSEVOCk9USEVSV0lTRSBTVEFURUQgSU4gV1JJVElORyBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EL09SIE9USEVSIFBBUlRJRVMKUFJPVklERSBUSEUgUFJPR1JBTSAiQVMgSVMiIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVJVEhFUiBFWFBSRVNTRUQKT1IgSU1QTElFRCwgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YKTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFRIRSBFTlRJUkUgUklTSyBBUwpUTyBUSEUgUVVBTElUWSBBTkQgUEVSRk9STUFOQ0UgT0YgVEhFIFBST0dSQU0gSVMgV0lUSCBZT1UuICBTSE9VTEQgVEhFClBST0dSQU0gUFJPVkUgREVGRUNUSVZFLCBZT1UgQVNTVU1FIFRIRSBDT1NUIE9GIEFMTCBORUNFU1NBUlkgU0VSVklDSU5HLApSRVBBSVIgT1IgQ09SUkVDVElPTi4KCiAgMTIuIElOIE5PIEVWRU5UIFVOTEVTUyBSRVFVSVJFRCBCWSBBUFBMSUNBQkxFIExBVyBPUiBBR1JFRUQgVE8gSU4gV1JJVElORwpXSUxMIEFOWSBDT1BZUklHSFQgSE9MREVSLCBPUiBBTlkgT1RIRVIgUEFSVFkgV0hPIE1BWSBNT0RJRlkgQU5EL09SClJFRElTVFJJQlVURSBUSEUgUFJPR1JBTSBBUyBQRVJNSVRURUQgQUJPVkUsIEJFIExJQUJMRSBUTyBZT1UgRk9SIERBTUFHRVMsCklOQ0xVRElORyBBTlkgR0VORVJBTCwgU1BFQ0lBTCwgSU5DSURFTlRBTCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgQVJJU0lORwpPVVQgT0YgVEhFIFVTRSBPUiBJTkFCSUxJVFkgVE8gVVNFIFRIRSBQUk9HUkFNIChJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEClRPIExPU1MgT0YgREFUQSBPUiBEQVRBIEJFSU5HIFJFTkRFUkVEIElOQUNDVVJBVEUgT1IgTE9TU0VTIFNVU1RBSU5FRCBCWQpZT1UgT1IgVEhJUkQgUEFSVElFUyBPUiBBIEZBSUxVUkUgT0YgVEhFIFBST0dSQU0gVE8gT1BFUkFURSBXSVRIIEFOWSBPVEhFUgpQUk9HUkFNUyksIEVWRU4gSUYgU1VDSCBIT0xERVIgT1IgT1RIRVIgUEFSVFkgSEFTIEJFRU4gQURWSVNFRCBPRiBUSEUKUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0VTLgoKICAgICAgICAgICAgICAgICAgICAgRU5EIE9GIFRFUk1TIEFORCBDT05ESVRJT05TCgogICAgICAgICAgICBIb3cgdG8gQXBwbHkgVGhlc2UgVGVybXMgdG8gWW91ciBOZXcgUHJvZ3JhbXMKCiAgSWYgeW91IGRldmVsb3AgYSBuZXcgcHJvZ3JhbSwgYW5kIHlvdSB3YW50IGl0IHRvIGJlIG9mIHRoZSBncmVhdGVzdApwb3NzaWJsZSB1c2UgdG8gdGhlIHB1YmxpYywgdGhlIGJlc3Qgd2F5IHRvIGFjaGlldmUgdGhpcyBpcyB0byBtYWtlIGl0CmZyZWUgc29mdHdhcmUgd2hpY2ggZXZlcnlvbmUgY2FuIHJlZGlzdHJpYnV0ZSBhbmQgY2hhbmdlIHVuZGVyIHRoZXNlIHRlcm1zLgoKICBUbyBkbyBzbywgYXR0YWNoIHRoZSBmb2xsb3dpbmcgbm90aWNlcyB0byB0aGUgcHJvZ3JhbS4gIEl0IGlzIHNhZmVzdAp0byBhdHRhY2ggdGhlbSB0byB0aGUgc3RhcnQgb2YgZWFjaCBzb3VyY2UgZmlsZSB0byBtb3N0IGVmZmVjdGl2ZWx5CmNvbnZleSB0aGUgZXhjbHVzaW9uIG9mIHdhcnJhbnR5OyBhbmQgZWFjaCBmaWxlIHNob3VsZCBoYXZlIGF0IGxlYXN0CnRoZSAiY29weXJpZ2h0IiBsaW5lIGFuZCBhIHBvaW50ZXIgdG8gd2hlcmUgdGhlIGZ1bGwgbm90aWNlIGlzIGZvdW5kLgoKICAgIDxvbmUgbGluZSB0byBnaXZlIHRoZSBwcm9ncmFtJ3MgbmFtZSBhbmQgYSBicmllZiBpZGVhIG9mIHdoYXQgaXQgZG9lcy4+CiAgICBDb3B5cmlnaHQgKEMpIDx5ZWFyPiAgPG5hbWUgb2YgYXV0aG9yPgoKICAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiAgICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQogICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKICAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCgogICAgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgogICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQogICAgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KCiAgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhbG9uZwogICAgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwKICAgIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSBVU0EuCgpBbHNvIGFkZCBpbmZvcm1hdGlvbiBvbiBob3cgdG8gY29udGFjdCB5b3UgYnkgZWxlY3Ryb25pYyBhbmQgcGFwZXIgbWFpbC4KCklmIHRoZSBwcm9ncmFtIGlzIGludGVyYWN0aXZlLCBtYWtlIGl0IG91dHB1dCBhIHNob3J0IG5vdGljZSBsaWtlIHRoaXMKd2hlbiBpdCBzdGFydHMgaW4gYW4gaW50ZXJhY3RpdmUgbW9kZToKCiAgICBHbm9tb3Zpc2lvbiB2ZXJzaW9uIDY5LCBDb3B5cmlnaHQgKEMpIHllYXIgbmFtZSBvZiBhdXRob3IKICAgIEdub21vdmlzaW9uIGNvbWVzIHdpdGggQUJTT0xVVEVMWSBOTyBXQVJSQU5UWTsgZm9yIGRldGFpbHMgdHlwZSBgc2hvdyB3Jy4KICAgIFRoaXMgaXMgZnJlZSBzb2Z0d2FyZSwgYW5kIHlvdSBhcmUgd2VsY29tZSB0byByZWRpc3RyaWJ1dGUgaXQKICAgIHVuZGVyIGNlcnRhaW4gY29uZGl0aW9uczsgdHlwZSBgc2hvdyBjJyBmb3IgZGV0YWlscy4KClRoZSBoeXBvdGhldGljYWwgY29tbWFuZHMgYHNob3cgdycgYW5kIGBzaG93IGMnIHNob3VsZCBzaG93IHRoZSBhcHByb3ByaWF0ZQpwYXJ0cyBvZiB0aGUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZS4gIE9mIGNvdXJzZSwgdGhlIGNvbW1hbmRzIHlvdSB1c2UgbWF5CmJlIGNhbGxlZCBzb21ldGhpbmcgb3RoZXIgdGhhbiBgc2hvdyB3JyBhbmQgYHNob3cgYyc7IHRoZXkgY291bGQgZXZlbiBiZQptb3VzZS1jbGlja3Mgb3IgbWVudSBpdGVtcy0td2hhdGV2ZXIgc3VpdHMgeW91ciBwcm9ncmFtLgoKWW91IHNob3VsZCBhbHNvIGdldCB5b3VyIGVtcGxveWVyIChpZiB5b3Ugd29yayBhcyBhIHByb2dyYW1tZXIpIG9yIHlvdXIKc2Nob29sLCBpZiBhbnksIHRvIHNpZ24gYSAiY29weXJpZ2h0IGRpc2NsYWltZXIiIGZvciB0aGUgcHJvZ3JhbSwgaWYKbmVjZXNzYXJ5LiAgSGVyZSBpcyBhIHNhbXBsZTsgYWx0ZXIgdGhlIG5hbWVzOgoKICBZb3lvZHluZSwgSW5jLiwgaGVyZWJ5IGRpc2NsYWltcyBhbGwgY29weXJpZ2h0IGludGVyZXN0IGluIHRoZSBwcm9ncmFtCiAgYEdub21vdmlzaW9uJyAod2hpY2ggbWFrZXMgcGFzc2VzIGF0IGNvbXBpbGVycykgd3JpdHRlbiBieSBKYW1lcyBIYWNrZXIuCgogIDxzaWduYXR1cmUgb2YgVHkgQ29vbj4sIDEgQXByaWwgMTk4OQogIFR5IENvb24sIFByZXNpZGVudCBvZiBWaWNlCgpUaGlzIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZG9lcyBub3QgcGVybWl0IGluY29ycG9yYXRpbmcgeW91ciBwcm9ncmFtIGludG8KcHJvcHJpZXRhcnkgcHJvZ3JhbXMuICBJZiB5b3VyIHByb2dyYW0gaXMgYSBzdWJyb3V0aW5lIGxpYnJhcnksIHlvdSBtYXkKY29uc2lkZXIgaXQgbW9yZSB1c2VmdWwgdG8gcGVybWl0IGxpbmtpbmcgcHJvcHJpZXRhcnkgYXBwbGljYXRpb25zIHdpdGggdGhlCmxpYnJhcnkuICBJZiB0aGlzIGlzIHdoYXQgeW91IHdhbnQgdG8gZG8sIHVzZSB0aGUgR05VIExlc3NlciBHZW5lcmFsClB1YmxpYyBMaWNlbnNlIGluc3RlYWQgb2YgdGhpcyBMaWNlbnNlLgo=]]></data>
	</file>
	<file>
	  <filename>/event.CGEcommerceBase.OrderDeleted.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBhbiBvcmRlciBoYXMgYmVlbiBkZWxldGVkLgppZiggIWlzc2V0KCRwYXJhbXNbJ29yZGVyX2lkJ10pICkgcmV0dXJuOwoKLy8gaGFuZGxlIHRoZSBjYXNlIG9mIGF0dGVtcHRlZCByZWN1cnNpb24uCmlmKCBjZ2VfdG1wZGF0YTo6ZXhpc3RzKF9fRklMRV9fKSApIHJldHVybjsKY2dlX3RtcGRhdGE6OnNldChfX0ZJTEVfXywxKTsKCi8vIGhlcmUgd2UgZ3JhYiB0aGUgb3JkZXIgZGlyZWN0bHkuCiRvcmRlcl9pZCA9IChpbnQpJHBhcmFtc1snb3JkZXJfaWQnXTsKJG9yZGVyX29iaiA9IG9yZGVyc19vcHM6OmxvYWRfYnlfaWQoJG9yZGVyX2lkKTsKaWYoICEkb3JkZXJfb2JqICkKICB7CiAgICByZXR1cm47CiAgfQoKLy8gZmluZCB0aGUgbGluZSBpdGVtIHdpdGggYSBTZWxmUmVnIFN1YnNjcmlwdGlvbi4KZm9yKCAkcyA9IDA7ICRzIDwgJG9yZGVyX29iai0+Y291bnRfZGVzdGluYXRpb25zKCk7ICRzKysgKQogIHsKICAgICRzaGlwcGluZyA9ICRvcmRlcl9vYmotPmdldF9zaGlwcGluZygkcyk7CiAgICBmb3IoICRpID0gMDsgJGkgPCAkc2hpcHBpbmctPmNvdW50X2FsbF9pdGVtcygpOyAkaSsrICkKICAgICAgewoJJGl0ZW0gPSAkc2hpcHBpbmctPmdldF9pdGVtKCRpKTsKCWlmKCAkaXRlbS0+Z2V0X3NvdXJjZSgpICE9ICdTZWxmUmVnaXN0cmF0aW9uJyApCgkgIHsKCSAgICBjb250aW51ZTsKCSAgfQoJaWYoICRpdGVtLT5nZXRfaXRlbV90eXBlKCkgIT0gbGluZV9pdGVtOjpJVEVNVFlQRV9TRVJWSUNFICkgY29udGludWU7CglpZiggISRpdGVtLT5pc19zdWJzY3JpcHRpb24oKSApIGNvbnRpbnVlOwoKCSR1aWQgPSAkaXRlbS0+Z2V0X2V4dHJhKCdmZXVfdWlkJyk7CglpZiggISR1aWQgKSBjb250aW51ZTsgIC8vIG5vIGFzc29jZGF0YSwgbWF5YmUgdGhpcyB1c2VyIG5ldmVyIHBhaWQuCgoJJHVpbmZvID0gJHRoaXMtPkdldFVzZXJJbmZvKCAkdWlkICk7CglpZiggIWlzX2FycmF5KCR1aW5mbykgfHwgJHVpbmZvWzBdID09IEZBTFNFICkKCSAgewoJICAgICR0aGlzLT5BdWRpdCgkdWlkLCR0aGlzLT5HZXROYW1lKCksCgkJCSBzcHJpbnRmKCdPcmRlciAlZCBkZWxldGVkIGJ1dCBjYW5ub3QgZmluZCB1c2VyIGFjY291bnQnLCRvcmRlcl9pZCkpOwoJICAgIHJldHVybjsKCSAgfQoJJHVpbmZvID0gJHVpbmZvWzFdOwoKCXN3aXRjaCggJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Vjb21tX29yZGVyZGVsZXRlZCcpICkKCSAgewoJICBjYXNlICdkZWxldGUnOgoJICAgICR0aGlzLT5EZWxldGVBbGxVc2VyUHJvcGVydGllcygnJywkdWlkLHRydWUpOwoJICAgICR0aGlzLT5EZWxldGVVc2VyRnVsbCgkdWlkKTsKCSAgICAkdGhpcy0+QXVkaXQoJHVpZCwkdGhpcy0+R2V0TmFtZSgpLAoJCQkgc3ByaW50ZignRGVsZXRlZCB1c2VyICVzIGJlY2F1c2Ugb3JkZXIgJWQgd2FzIGRlbGV0ZWQnLCR1aW5mb1sndXNlcm5hbWUnXSwkb3JkZXJfaWQpKTsKCSAgICBicmVhazsKCgkgIGNhc2UgJ2V4cGlyZSc6CgkgICAgJHRoaXMtPlNldFVzZXIoJHVpZCwkdWluZm9bJ3VzZXJuYW1lJ10sJHVpbmZvWydwYXNzd29yZCddLHRpbWUoKS0zNjAwLGZhbHNlKTsKCSAgICAkdGhpcy0+QXVkaXQoJHVpZCwkdGhpcy0+R2V0TmFtZSgpLAoJCQkgc3ByaW50ZignRXhwaXJlZCB1c2VyICVzIGJlY2F1c2Ugb3JkZXIgJWQgd2FzIGRlbGV0ZWQnLCR1aW5mb1sndXNlcm5hbWUnXSwkb3JkZXJfaWQpKTsKCSAgICBicmVhazsKCgkgIGNhc2UgJ25vbmUnOgoJICBkZWZhdWx0OgoJICAgIGJyZWFrOwoJICB9CgogICAgICB9CiAgfQoKLy8gc2V0dXAgZm9yIGFub3RoZXIgb3JkZXIuLi4gc2hvdWxkbid0IGhhcHBlbiwgYnV0IGp1c3QgaW4gY2FzZS4KY2dlX3RtcGRhdGE6OmVyYXNlKF9fRklMRV9fKTsKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/event.CGEcommerceBase.OrderUpdated.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBhbiBvcmRlciBoYXMgYmVlbiBkZWxldGVkLgppZiggIWlzc2V0KCRwYXJhbXNbJ29yZGVyX2lkJ10pICkgcmV0dXJuOwoKLy8gaGFuZGxlIHRoZSBjYXNlIG9mIGF0dGVtcHRlZCByZWN1cnNpb24uCgppZiggY2dlX3RtcGRhdGE6OmV4aXN0cyhfX0ZJTEVfXykgKSByZXR1cm47CmNnZV90bXBkYXRhOjpzZXQoX19GSUxFX18sMSk7CgovLyBoZXJlIHdlIGdyYWIgdGhlIG9yZGVyIGRpcmVjdGx5Lgokb3JkZXJfaWQgPSAoaW50KSRwYXJhbXNbJ29yZGVyX2lkJ107CiRvcmRlcl9vYmogPSBvcmRlcnNfb3BzOjpsb2FkX2J5X2lkKCRvcmRlcl9pZCk7CmlmKCAhJG9yZGVyX29iaiApIHJldHVybjsKaWYoICRvcmRlcl9vYmotPmdldF9zdGF0dXMoKSAhPSAnY2FuY2VsbGVkJyApIHJldHVybjsKCi8vIGZpbmQgdGhlIGxpbmUgaXRlbSB3aXRoIGEgU2VsZlJlZyBTdWJzY3JpcHRpb24uCmZvciggJHMgPSAwOyAkcyA8ICRvcmRlcl9vYmotPmNvdW50X2Rlc3RpbmF0aW9ucygpOyAkcysrICkgewogICRzaGlwcGluZyA9ICRvcmRlcl9vYmotPmdldF9zaGlwcGluZygkcyk7CiAgZm9yKCAkaSA9IDA7ICRpIDwgJHNoaXBwaW5nLT5jb3VudF9hbGxfaXRlbXMoKTsgJGkrKyApIHsKICAgICRpdGVtID0gJHNoaXBwaW5nLT5nZXRfaXRlbSgkaSk7CiAgICBpZiggJGl0ZW0tPmdldF9zb3VyY2UoKSAhPSAnU2VsZlJlZ2lzdHJhdGlvbicgKSBjb250aW51ZTsKICAgIGlmKCAkaXRlbS0+Z2V0X2l0ZW1fdHlwZSgpICE9IGxpbmVfaXRlbTo6SVRFTVRZUEVfU0VSVklDRSApIGNvbnRpbnVlOwogICAgaWYoICEkaXRlbS0+aXNfc3Vic2NyaXB0aW9uKCkgKSBjb250aW51ZTsKCiAgICAkdWlkID0gJGl0ZW0tPmdldF9leHRyYSgnZmV1X3VpZCcpOwogICAgaWYoICEkdWlkICkgY29udGludWU7ICAvLyBubyBhc3NvY2RhdGEsIG1heWJlIHRoaXMgdXNlciBuZXZlciBwYWlkLgoKICAgICR1aW5mbyA9ICR0aGlzLT5HZXRVc2VySW5mbyggJHVpZCApOwogICAgaWYoICFpc19hcnJheSgkdWluZm8pIHx8ICR1aW5mb1swXSA9PSBGQUxTRSApIHsKICAgICAgJHRoaXMtPkF1ZGl0KCR1aWQsJHRoaXMtPkdldE5hbWUoKSxzcHJpbnRmKCdPcmRlciAlZCBkZWxldGVkIGJ1dCBjYW5ub3QgZmluZCB1c2VyIGFjY291bnQnLCRvcmRlcl9pZCkpOwogICAgICByZXR1cm47CiAgICB9CiAgICAkdWluZm8gPSAkdWluZm9bMV07CgogICAgc3dpdGNoKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZWNvbW1fb3JkZXJjYW5jZWxsZWQnKSApIHsKICAgIGNhc2UgJ2RlbGV0ZSc6CiAgICAgICR0aGlzLT5EZWxldGVBbGxVc2VyUHJvcGVydGllcygnJywkdWlkLHRydWUpOwogICAgICAkdGhpcy0+RGVsZXRlVXNlcigkdWlkKTsKICAgICAgJHRoaXMtPkF1ZGl0KCR1aWQsJHRoaXMtPkdldE5hbWUoKSwKCQkgICBzcHJpbnRmKCdEZWxldGVkIHVzZXIgJXMgYmVjYXVzZSBvcmRlciAlZCB3YXMgZGVsZXRlZCcsJHVpbmZvWyd1c2VybmFtZSddLCRvcmRlcl9pZCkpOwogICAgICBicmVhazsKCiAgICBjYXNlICdleHBpcmUnOgogICAgICAkdGhpcy0+U2V0VXNlcigkdWlkLCR1aW5mb1sndXNlcm5hbWUnXSwkdWluZm9bJ3Bhc3N3b3JkJ10sdGltZSgpLTM2MDApOwogICAgICAkdGhpcy0+QXVkaXQoJHVpZCwkdGhpcy0+R2V0TmFtZSgpLAoJCSAgIHNwcmludGYoJ0V4cGlyZWQgdXNlciAlcyBiZWNhdXNlIG9yZGVyICVkIHdhcyBkZWxldGVkJywkdWluZm9bJ3VzZXJuYW1lJ10sJG9yZGVyX2lkKSk7CiAgICAgIGJyZWFrOwoKICAgIGNhc2UgJ25vbmUnOgogICAgZGVmYXVsdDoKICAgICAgYnJlYWs7CiAgICB9CiAgfQp9CgovLyBzZXR1cCBmb3IgYW5vdGhlciBvcmRlci4uLiBzaG91bGRuJ3QgaGFwcGVuLCBidXQganVzdCBpbiBjYXNlLgpjZ2VfdG1wZGF0YTo6ZXJhc2UoX19GSUxFX18pOwoKIwojIEVPRgojCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/event.Core.ContentPostRender.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdCgpOwpyZXR1cm47CgovLyAwLiAgQ2hlY2sgY21zIHZlcnNpb24KZ2xvYmFsICRDTVNfVkVSU0lPTjsKaWYoIHZlcnNpb25fY29tcGFyZSgkQ01TX1ZFUlNJT04sJzIuMC1iZXRhMScpIDwgMCApIHsKICAvLyBub3QgQ01TIDIuMCwgZG9uJ3QgZ28gYW55IGZ1cnRoZXIuCiAgcmV0dXJuOwp9CgovLyAxLiAgR2V0IHRoZSBjb250ZW50X2lkCiRjb250ZW50X2lkID0gY21zX3V0aWxzOjpnZXRfY3VycmVudF9wYWdlaWQoKTsKaWYoICRjb250ZW50X2lkIDw9IDAgKSByZXR1cm47CgovLyAyLiAgR2V0IHRoZSBjb250ZW50IG9iamVjdAppZiggY2xhc3NfZXhpc3RzKCdDTVNDb250ZW50JykpCiRjb250ZW50X29iaiA9IENtc0NvbnRlbnRPcGVyYXRpb25zOjpsb2FkX2NvbnRlbnRfZnJvbV9pZCgkY29udGVudF9pZCk7CmlmKCAhaXNfb2JqZWN0KCRjb250ZW50X29iaikgKQogIHsKICAgIHJldHVybjsKICB9CgovLyAzLiAgR2V0IHRoZSBwcm9wZXJ0aWVzLgokY29udGVudF9vYmotPmxvYWRfcHJvcGVydGllcygpOwokZmV1X2dyb3VwcyA9ICRjb250ZW50X29iai0+Z2V0X3Byb3BlcnR5X3ZhbHVlKCdmZXVfZ3JvdXBzJyk7CiRmZXVfcmVkaXJlY3QgPSAkY29udGVudF9vYmotPmdldF9wcm9wZXJ0eV92YWx1ZSgnZmV1X3JlZGlyZWN0Jyk7CgovLyBpZiB0aGUgZ3JvdXBzIGxpc3QgaXMgZW1wdHksIHJldHVybi4KaWYoICRmZXVfZ3JvdXBzID09ICcnICkgcmV0dXJuOwoKLy8gY2hlY2sgdGhpcyB1c2VycyBtZW1iZXIgZ3JvdXBzCiRwYXNzZWQgPSBmYWxzZTsKJHVpZCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CmlmKCAkdWlkICkKICB7CiAgICAvLyBnZXQgdGhlIG1lbWJlciBncm91cHMuCiAgICAkdDEgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzKCR1aWQpOwogICAgaWYoIGlzX2FycmF5KCAkdDEgKSApCiAgICAgIHsKCS8vIHVzZXIgaXMgYSBtZW1iZXIgb2YgYXQgbGVhc3Qgb25lIGdyb3VwCgkkbWVtYmVyZ3JvdXBzID0gYXJyYXkoKTsKCWZvcmVhY2goICR0MSBhcyAkcm93ICkKCSAgewoJICAgICRtZW1iZXJncm91cHNbXSA9ICRyb3dbJ2dyb3VwaWQnXTsKCSAgfQoKCS8vIHRlc3QgbWVtYmVyc2hpcC4KCSR0MSA9IGV4cGxvZGUoJywnLCRmZXVfZ3JvdXBzKTsKCWlmKCBpbl9hcnJheSgkdDEsJy0xJykgKQoJICB7CgkgICAgLy8gYW55IGdyb3VwIHdpbGwgZG8uCgkgICAgJHBhc3NlZCA9IHRydWU7CgkgIH0KCWVsc2UKCSAgewoJICAgICR0bXAgPSBhcnJheV9pbnRlcnNlY3QoJG1lbWJlcmdyb3VwcywkdDIpOwoJICAgIGlmKCBpc19hcnJheSgkdG1wKSAmJiBjb3VudCgkdG1wKSA+IDAgKQoJICAgICAgewoJCSRwYXNzZWQgPSB0cnVlOwoJICAgICAgfQoJICB9CiAgICAgIH0KICB9CgppZiggISRwYXNzZWQgKQogIHsKICAgIGlmKCAkZmV1X3JlZGlyZWN0ICE9IC0xICkKICAgICAgewoJcmVkaXJlY3RfdG9fYWxpYXMoJGZldV9yZWRpcmVjdCk7CiAgICAgIH0KICB9CiMKIyBFT0YKIwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/FrontEndUsers.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNiBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovKioKICogVGhpcyBmaWxlIGRlZmluZXMgdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGNsYXNzLgogKgogKiBAcGFja2FnZSBGcm9udEVuZFVzZXJzCiAqLwoKLyoqCiAqIFRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSwgYmVzaWRlcyBiZWluZyBhIG1vZHVsZSB0byBwcm92aWRlIGF1dGhlbnRpY2F0aW9uIHNlcnZpY2VzIHRvIHRoZSBmcm9udGVuZCBvZiBhIENNU01TIHdlYnNpdGUgYWxzbyBoYXMgYSBjb21wbGV0ZQogKiBhbmQgZmxleGlibGUgQVBJLgogKgogKiBAcGFja2FnZSBGcm9udEVuZFVzZXJzCiAqLwpmaW5hbCBjbGFzcyBGcm9udEVuZFVzZXJzIGV4dGVuZHMgQ0dFeHRlbnNpb25zCnsKICAgIC8qKgogICAgICogQ29uc3RhbnQgdG8gaW5kZW50aWZ5IGEgdGV4dCBwcm9wZXJ0eS4KICAgICAqLwogICAgY29uc3QgRklFTERUWVBFX1RFWFQgPSAwOwoKICAgIC8qKgogICAgICogQ29uc3RhbnQgdG8gaW5kZW50aWZ5IGEgY2hlY2tib3ggcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9DSEVDS0JPWCA9IDE7CgogICAgLyoqCiAgICAgKiBDb25zdGFudCB0byBpbmRlbnRpZnkgYW4gZW1haWwgcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9FTUFJTCA9IDI7CgogICAgLyoqCiAgICAgKiBDb25zdGFudCB0byBpbmRlbnRpZnkgYSB0ZXh0YXJlYSBwcm9wZXJ0eS4KICAgICAqLwogICAgY29uc3QgRklFTERUWVBFX1RFWFRBUkVBID0gMzsKCiAgICAvKioKICAgICAqIENvbnN0YW50IHRvIGluZGVudGlmeSBhIGRyb3Bkb3duIHByb3BlcnR5LgogICAgICovCiAgICBjb25zdCBGSUVMRFRZUEVfRFJPUERPV04gPSA0OwoKICAgIC8qKgogICAgICogQ29uc3RhbnQgdG8gaW5kZW50aWZ5IGEgbXVsdGlzZWxlY3QgcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9NVUxUSVNFTEVDVCA9IDU7CgogICAgLyoqCiAgICAgKiBDb25zdGFudCB0byBpbmRlbnRpZnkgYW4gaW1hZ2UgcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9JTUFHRSA9IDY7CgogICAgLyoqCiAgICAgKiBDb25zdGFudCB0byBpbmRlbnRpZnkgYSByYWRpbyBidXR0b24gZ3JvdXAgcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9SQURJT0JVVE5TID0gNzsKCiAgICAvKioKICAgICAqIENvbnN0YW50IHRvIGluZGVudGlmeSBhIGRhdGUgcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9EQVRFID0gODsKCiAgICAvKioKICAgICAqIENvbnN0YW50IHRvIGluZGVudGlmeSBhIGRhdGEgcHJvcGVydHkuCiAgICAgKi8KICAgIGNvbnN0IEZJRUxEVFlQRV9EQVRBID0gOTsKCiAgICAvKioKICAgICAqIEhvdyBtYW55IHNlY29uZHMgb2YgaW5hY3Rpdml0eSBiZWZvcmUgYSB1c2VyIGlzIGF1dG9tYXRpY2FsbHkgbG9nZ2VkIG91dC4KICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgcHJvdGVjdGVkICRleHBpcnl0aW1lOwoKICAgIC8qKgogICAgICogU2V0IHRoaXMgdG8gdHJ1ZSBpZiB1c2VyIHNob3VsZCBiZSByZWRpcmVjdGVkIHRvIGRlZmF1bHQgcGFnZSBhZnRlciBsb2dnaW5nIGluL291dC4KICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgcHJvdGVjdGVkICRsb2dpbnRhcmdldDsKCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgcHJvdGVjdGVkICRvdGhlcmludGFyZ2V0OwoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBwcm90ZWN0ZWQgJGxvZ291dHRhcmdldDsKCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgcHJvdGVjdGVkICRvdGhlcm91dHRhcmdldDsKCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgcHJvdGVjdGVkICRhbGxvd3VzZXJhZG1pbjsKCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgcHJvdGVjdGVkICRlbmFibGVlbWFpbHB3OwoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBwcm90ZWN0ZWQgJGxhbmc9IiI7CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIHByaXZhdGUgJHVzZXJtYW5pcCA9IGZhbHNlOwoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBwcm90ZWN0ZWQgJHR5cGVzID0gZmFsc2U7CgoKICAgIC8qKgogICAgICogQ29uc3RydWN0b3IKICAgICAqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpCiAgICB7CiAgICAgICAgcGFyZW50OjpfX2NvbnN0cnVjdCgpOwogICAgICAgICR0aGlzLT50eXBlcyA9IFsgJ3RleHQnID0+IHNlbGY6OkZJRUxEVFlQRV9URVhULAogICAgICAgICAgICAgICAgICAgICAgICAgJ2NoZWNrYm94JyA9PiBzZWxmOjpGSUVMRFRZUEVfQ0hFQ0tCT1gsCiAgICAgICAgICAgICAgICAgICAgICAgICAnZW1haWwnID0+IHNlbGY6OkZJRUxEVFlQRV9FTUFJTCwKICAgICAgICAgICAgICAgICAgICAgICAgICd0ZXh0YXJlYScgPT4gc2VsZjo6RklFTERUWVBFX1RFWFRBUkVBLAogICAgICAgICAgICAgICAgICAgICAgICAgJ2Ryb3Bkb3duJyA9PiBzZWxmOjpGSUVMRFRZUEVfRFJPUERPV04sCiAgICAgICAgICAgICAgICAgICAgICAgICAnbXVsdGlzZWxlY3QnID0+IHNlbGY6OkZJRUxEVFlQRV9NVUxUSVNFTEVDVCwKICAgICAgICAgICAgICAgICAgICAgICAgICdpbWFnZScgPT4gc2VsZjo6RklFTERUWVBFX0lNQUdFLAogICAgICAgICAgICAgICAgICAgICAgICAgJ3JhZGlvYnV0dG9ucycgPT4gc2VsZjo6RklFTERUWVBFX1JBRElPQlVUTlMsCiAgICAgICAgICAgICAgICAgICAgICAgICAnZGF0ZScgPT4gc2VsZjo6RklFTERUWVBFX0RBVEUsCiAgICAgICAgICAgICAgICAgICAgICAgICAnZGF0YScgPT4gc2VsZjo6RklFTERUWVBFX0RBVEEgXTsKCiAgICAgICAgZ2xvYmFsICRDTVNfQURNSU5fUEFHRTsKICAgICAgICBpZiggIWlzc2V0KCRDTVNfQURNSU5fUEFHRSkgKSB7CiAgICAgICAgICAgICRzbWFydHkgPSBTbWFydHlfQ01TOjpnZXRfaW5zdGFuY2UoKTsKICAgICAgICAgICAgaWYoICEkc21hcnR5ICkgcmV0dXJuOwogICAgICAgICAgICAkc21hcnR5LT5yZWdpc3RlckNsYXNzKCdmZXVfc21hcnR5JywnZmV1X3NtYXJ0eScpOwogICAgICAgICAgICAkc21hcnR5LT5yZWdpc3RlclBsdWdpbignYmxvY2snLCdmZXVfcHJvdGVjdCcsJ2ZldV9zbWFydHlfcGx1Z2luczo6ZmV1X3Byb3RlY3QnKTsKICAgICAgICB9CiAgICAgICAgJHRoaXMtPkFkZEltYWdlRGlyKCdpY29ucycpOwoKICAgICAgICAkY29udGVudG9wcyA9IENvbnRlbnRPcGVyYXRpb25zOjpnZXRfaW5zdGFuY2UoKTsKCiAgICAgICAgJG9iaiA9IG5ldyBDbXNDb250ZW50VHlwZVBsYWNlaG9sZGVyKCk7CiAgICAgICAgJG9iai0+Y2xhc3MgPSAnZmV1X3Byb3RlY3RlZF9wYWdlJzsKICAgICAgICAkb2JqLT50eXBlICA9IHN0cnRvbG93ZXIoJG9iai0+Y2xhc3MpOwogICAgICAgICRvYmotPmZpbGVuYW1lID0gX19ESVJfXy4nL2xpYi9jbGFzcy5mZXVfcHJvdGVjdGVkX3BhZ2UucGhwJzsKICAgICAgICAkb2JqLT5sb2FkZWQgPSBmYWxzZTsKICAgICAgICAkb2JqLT5mcmllbmRseW5hbWUgPSAkdGhpcy0+TGFuZygnZmV1X3Byb3RlY3RlZF9wYWdlJyk7CiAgICAgICAgJGNvbnRlbnRvcHMtPnJlZ2lzdGVyX2NvbnRlbnRfdHlwZSgkb2JqKTsKCiAgICAgICAgJG9iaiA9IG5ldyBDbXNDb250ZW50VHlwZVBsYWNlaG9sZGVyKCk7CiAgICAgICAgJG9iai0+Y2xhc3MgPSAnZmV1X3Byb3RlY3RlZF9zZWN0aW9uaGVhZCc7CiAgICAgICAgJG9iai0+dHlwZSAgPSBzdHJ0b2xvd2VyKCRvYmotPmNsYXNzKTsKICAgICAgICAkb2JqLT5maWxlbmFtZSA9IF9fRElSX18uJy9saWIvY2xhc3MuZmV1X3Byb3RlY3RlZF9zZWN0aW9uaGVhZGVyLnBocCc7CiAgICAgICAgJG9iai0+bG9hZGVkID0gZmFsc2U7CiAgICAgICAgJG9iai0+ZnJpZW5kbHluYW1lID0gJHRoaXMtPkxhbmcoJ2ZldV9wcm90ZWN0ZWRfc2VjdGlvbmhlYWQnKTsKICAgICAgICAkY29udGVudG9wcy0+cmVnaXN0ZXJfY29udGVudF90eXBlKCRvYmopOwoKICAgICAgICAkb2JqID0gbmV3IENtc0NvbnRlbnRUeXBlUGxhY2Vob2xkZXIoKTsKICAgICAgICAkb2JqLT5jbGFzcyA9ICdmZXVfcHJvdGVjdGVkX2xvZ291dGxpbmsnOwogICAgICAgICRvYmotPnR5cGUgID0gc3RydG9sb3dlcigkb2JqLT5jbGFzcyk7CiAgICAgICAgJG9iai0+ZmlsZW5hbWUgPSBfX0RJUl9fLicvbGliL2NsYXNzLmZldV9wcm90ZWN0ZWRfbG9nb3V0bGluay5waHAnOwogICAgICAgICRvYmotPmxvYWRlZCA9IGZhbHNlOwogICAgICAgICRvYmotPmZyaWVuZGx5bmFtZSA9ICR0aGlzLT5MYW5nKCdmZXVfcHJvdGVjdGVkX2xvZ291dGxpbmsnKTsKICAgICAgICAkY29udGVudG9wcy0+cmVnaXN0ZXJfY29udGVudF90eXBlKCRvYmopOwogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBwcml2YXRlIGZ1bmN0aW9uIF9sb2FkKCkKICAgIHsKICAgICAgICBpZiggJHRoaXMtPnVzZXJtYW5pcCA9PSBOVUxMICkgewogICAgICAgICAgICAvLyBjaGVjayBhIHByZWZlcmVuY2UgdG8gc2VlIHdoaWNoIHVzZXIgbWFuaXB1bGF0b3IgY2xhc3MKICAgICAgICAgICAgLy8gd2Ugc2hvdWxkIHVzZS4KICAgICAgICAgICAgJG1hbmlwdWxhdG9yID0gJ0Zyb250RW5kVXNlcnNNYW5pcHVsYXRvcic7CiAgICAgICAgICAgICR0aGlzLT51c2VybWFuaXAgPSBuZXcgRnJvbnRFbmRVc2Vyc01hbmlwdWxhdG9yKCAkdGhpcyApOwogICAgICAgICAgICBpZiggIWlzX29iamVjdCggJHRoaXMtPnVzZXJtYW5pcCApICkgZGllKCJFcnJvciBpbnN0YW50aWF0aW9uZyAkbWFuaXB1bGF0b3Igb2JqZWN0Iik7CiAgICAgICAgICAgICR0aGlzLT51c2VybWFuaXAtPlNldEV4cGlyZU5vdGlmaWVyKGFycmF5KCR0aGlzLCdOb3RpZnlFeHBpcmVkVXNlcicpKTsKICAgICAgICB9CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdGhlIFVzZXIgTWFuaXB1bGF0b3IgT2JqZWN0CiAgICAgKiBOT1QgRk9SIEVYVEVSTkFMIFVTRQogICAgICoKICAgICAqIEBpbnRlcm5hbAogICAgICogQHJldHVybiBvYmplY3QKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uICZHZXRNYW5pcHVsYXRvcigpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXA7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldE5hbWUoKSB7IHJldHVybiAnRnJvbnRFbmRVc2Vycyc7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VmVyc2lvbigpIHsgcmV0dXJuICcyLjMuMic7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gSGFzQ29udGVudFR5cGUoKSB7IHJldHVybiBUUlVFOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIElzUGx1Z2luTW9kdWxlKCkgeyByZXR1cm4gVFJVRTsgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBBbGxvd0F1dG9JbnN0YWxsKCkgeyByZXR1cm4gRkFMU0U7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gQWxsb3dBdXRvVXBncmFkZSgpIHsgcmV0dXJuIEZBTFNFOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIExhenlMb2FkQWRtaW4oKSB7IHJldHVybiBUUlVFOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIE1pbmltdW1DTVNWZXJzaW9uKCkgeyByZXR1cm4gJzIuMS41JzsgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBHZXRBZG1pbkRlc2NyaXB0aW9uICgpIHsgcmV0dXJuICR0aGlzLT5MYW5nICgnbW9kZGVzY3JpcHRpb24nKTsgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBHZXRBZG1pblNlY3Rpb24gKCkgeyByZXR1cm4gJ3VzZXJzZ3JvdXBzJzsgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBHZXREZXBlbmRlbmNpZXMoKSB7IHJldHVybiBhcnJheSggJ0NHRXh0ZW5zaW9ucycgPT4gJzEuNTMuMTUnLCdDR1NpbXBsZVNtYXJ0eScgPT4gJzIuMS41JyApOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEV2ZW50RGVzY3JpcHRpb24gKCAkZXZlbnRuYW1lICkgeyByZXR1cm4gJHRoaXMtPkxhbmcoJ2V2ZW50X2luZm9fJy4kZXZlbnRuYW1lICk7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gR2V0RXZlbnRIZWxwICggJGV2ZW50bmFtZSApIHsgcmV0dXJuICR0aGlzLT5MYW5nKCdldmVudF9oZWxwXycuJGV2ZW50bmFtZSApOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEZyaWVuZGx5TmFtZSAoKSB7IHJldHVybiAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyk7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gSGFzQWRtaW4gKCkgeyByZXR1cm4gVFJVRTsgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBJbnN0YWxsUG9zdE1lc3NhZ2UoKSB7IHJldHVybiAkdGhpcy0+TGFuZygncG9zdGluc3RhbGxtZXNzYWdlJyk7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gR2V0QXV0aG9yKCkgeyByZXR1cm4gJ2NhbGd1eTEwMDAnOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEF1dGhvckVtYWlsKCkgeyByZXR1cm4gJ2NhbGd1eTEwMDBAaG90bWFpbC5jb20nOyB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldENoYW5nZUxvZygpIHsgcmV0dXJuIGZpbGVfZ2V0X2NvbnRlbnRzKF9fRElSX18uJy9jaGFuZ2Vsb2cuaW5jJyk7IH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqIEBkZXByZWNhdGVkCiAgICAgKi8KICAgIHByb3RlY3RlZCBmdW5jdGlvbiBsYW5naWZ5S2V5cyggJGFyciApCiAgICB7CiAgICAgICAgJG91dCA9IGFycmF5KCk7CiAgICAgICAgZm9yZWFjaCggJGFyciBhcyAkaz0+JHYgKSB7CiAgICAgICAgICAgICRrID0gJHRoaXMtPkxhbmcoJGspOwogICAgICAgICAgICAkb3V0WyAkayBdID0gJHY7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkb3V0OwogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBJbml0aWFsaXplRnJvbnRlbmQoKQogICAgewogICAgICAgICR0aGlzLT5SZXN0cmljdFVua25vd25QYXJhbXMoKTsKICAgICAgICAkdGhpcy0+UmVnaXN0ZXJNb2R1bGVQbHVnaW4oKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY29kZScsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZm9ybScsQ0xFQU5fU1RSSU5HKTsgLy8gZGVwcmVjYXRlZAogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdyZXR1cm50bycsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnb25seV9ncm91cHMnLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ25vY2FwdGNoYScsQ0xFQU5fSU5UKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfdXNlcm5hbWUnLENMRUFOX1NUUklORyk7IC8vIGRlcHJlY2F0ZWQKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfcGFzc3dvcmQnLENMRUFOX1NUUklORyk7IC8vIGRlcHJlY2F0ZWQKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnaW5wdXRfcmVwZWF0cGFzc3dvcmQnLENMRUFOX1NUUklORyk7IC8vIGRlcHJlY2F0ZWQKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnZXJyb3InLENMRUFOX0lOVCk7IC8vIGRlcHJlY2F0ZWQKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnbWVzc2FnZScsQ0xFQU5fU1RSSU5HKTsgLy8gZGVwcmVjYXRlZAogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdsb3N0dW5fZ3JvdXAnLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2lucHV0X2NhcHRjaGEnLENMRUFOX1NUUklORyk7IC8vIGRlcHJlY2F0ZWQKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnc3VibWl0JyxDTEVBTl9TVFJJTkcpOyAvLyBkZXByZWNhdGVkCiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2NhbmNlbCcsQ0xFQU5fU1RSSU5HKTsgLy8gZGVwcmVjYXRlZAogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbnB1dF9jb2RlJyxDTEVBTl9TVFJJTkcpOyAvLyBkZXByZWNhdGVkCiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3VpZCcsQ0xFQU5fSU5UKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnY2hlY2tvbmx5JyxDTEVBTl9JTlQpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdpbmxpbmUnLENMRUFOX0lOVCk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2xvZ291dHRlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdsb2dpbnRlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdjaGFuZ2VzZXR0aW5nc3RlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdmb3Jnb3Rwd3RlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdmb3Jnb3Rwd2VtYWlsdGVtcGxhdGUnLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2xvc3R1bnRlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOwogICAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCdsb3N0dW5jb25maXJtdGVtcGxhdGUnLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2ZvcmNlbmV3cHd0ZW1wbGF0ZScsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgndmlld3VzZXJ0ZW1wbGF0ZScsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgnYWZ0ZXJ2ZXJpZnl0ZW1wbGF0ZScsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZSgncmVzZXRzZXNzaW9udGVtcGxhdGUnLENMRUFOX1NUUklORyk7CiAgICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3ZlcmlmeWZvcm10ZW1wbGF0ZScsQ0xFQU5fU1RSSU5HKTsKICAgICAgICAkdGhpcy0+U2V0UGFyYW1ldGVyVHlwZShDTEVBTl9SRUdFWFAuJy9mZXVfLiovJyxDTEVBTl9TVFJJTkcpOwoKICAgICAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tmRl1ldVwvdmVyaWZ5Y29kZVwvKD9QPHJldHVybmlkPlswLTldKylcLyg/UDx1aWQ+WzAtOV0rKVwvKD9QPGNvZGU+Lio/KSQvJyxhcnJheSgnYWN0aW9uJz0+J3ZlcmlmeWNvZGUnKSk7CiAgICAgICAgJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bZkZdZXVcL3ZlcmlmeVwvKD9QPHJldHVybmlkPlswLTldKylcLyg/UDx1aWQ+WzAtOV0rKVwvKD9QPGNvZGU+Lio/KSQvJyxhcnJheSgnYWN0aW9uJz0+J3ZlcmlmeW9ubHknKSk7CiAgICAgICAgJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bZkZdZXVcL3Jlc2V0XC8oP1A8dWlkPlswLTldKykkLycsYXJyYXkoJ2FjdGlvbic9PidyZXNldF9zZXNzaW9uJywnc2hvd3RlbXBsYXRlJz0+J2ZhbHNlJywnY2hlY2tvbmx5Jz0+JzEnKSk7CiAgICAgICAgJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bZkZdZXVcL2VkaXRcLyg/UDxyZXR1cm5pZD5bMC05XSspJC8nLGFycmF5KCdhY3Rpb24nPT4nY2hhbmdlc2V0dGluZ3MnKSk7CiAgICAgICAgJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bZkZdZXVcL2xvZ291dFwvKD9QPHJldHVybmlkPlswLTldKykkLycsYXJyYXkoJ2FjdGlvbic9Pidsb2dvdXQnKSk7CiAgICAgICAgJHRoaXMtPlJlZ2lzdGVyUm91dGUoJy9bZkZdZXVcL2ZvcmdvdFwvKD9QPHJldHVybmlkPlswLTldKykkLycsYXJyYXkoJ2FjdGlvbic9Pidmb3Jnb3RwdycpKTsKICAgICAgICAkdGhpcy0+UmVnaXN0ZXJSb3V0ZSgnL1tmRl1ldVwvbG9zdHVzZXJuYW1lXC8oP1A8cmV0dXJuaWQ+WzAtOV0rKSQvJyxhcnJheSgnYWN0aW9uJz0+J2xvc3R1c2VybmFtZScpKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gSW5pdGlhbGl6ZUFkbWluKCkKICAgIHsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gZ2V0X3Rhc2tzKCkKICAgIHsKICAgICAgICAkdG1wID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ZvcmNlbG9nb3V0X3RpbWVzJyk7CiAgICAgICAgaWYoICR0bXAgIT0gJycgKSB7CiAgICAgICAgICAgICRvYmogPSBuZXcgRkVVRm9yY2VkTG9nb3V0VGFzaygkdGhpcyk7CiAgICAgICAgICAgIHJldHVybiAkb2JqOwogICAgICAgIH0KICAgICAgICAkdG1wID0gbnVsbDsKICAgICAgICByZXR1cm4gJHRtcDsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwoJcHVibGljIGZ1bmN0aW9uIGdldF9wcmV0dHlfdXJsKCRpZCwkYWN0aW9uLCRyZXR1cm5pZD0nJywkcGFyYW1zPWFycmF5KCksJGlubGluZT1mYWxzZSkKICAgIHsKICAgICAgICBpZiggJGFjdGlvbiA9PSAnZGVmYXVsdCcgKSB7CiAgICAgICAgICAgICRmb3JtID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdmb3JtJyk7CiAgICAgICAgICAgIHN3aXRjaCggJGZvcm0gKSB7CiAgICAgICAgICAgIGNhc2UgJ2ZvcmdvdHB3JzoKICAgICAgICAgICAgICAgICRhY3Rpb24gPSAnZm9yZ290cHcnOwogICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICBjYXNlICdsb2dpbic6CiAgICAgICAgICAgICAgICAkYWN0aW9uID0gJ2xvZ2luJzsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSAnbG9zdHVzZXJuYW1lJzoKICAgICAgICAgICAgICAgICRhY3Rpb24gPSAnbG9zdHVzZXJuYW1lJzsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSAnY2hhbmdlc2V0dGluZ3MnOgogICAgICAgICAgICAgICAgcmV0dXJuICJmZXUvZWRpdC8kcmV0dXJuaWQiOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiggJGFjdGlvbiA9PSAndmVyaWZ5b25seScgKSB7CiAgICAgICAgICAgICR1aWQgPSBcY2dlX3BhcmFtOjpnZXRfaW50KCRwYXJhbXMsJ3VpZCcpOwogICAgICAgICAgICAkY29kZSA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywnY29kZScpOwogICAgICAgICAgICBpZiggJHVpZCA8IDEgfHwgISRjb2RlICkgcmV0dXJuOwogICAgICAgICAgICByZXR1cm4gImZldS92ZXJpZnkvJHJldHVybmlkLyR1aWQvJGNvZGUiOwogICAgICAgIH0KICAgICAgICBpZiggJGFjdGlvbiA9PSAnZm9yZ290cHcnKSB7CiAgICAgICAgICAgIHJldHVybiAiZmV1L2ZvcmdvdC8kcmV0dXJuaWQiOwogICAgICAgIH0gZWxzZSBpZiggJGFjdGlvbiA9PSAnbG9zdHVzZXJuYW1lJyApIHsKICAgICAgICAgICAgcmV0dXJuICJmZXUvbG9zdHVzZXJuYW1lLyRyZXR1cm5pZCI7CiAgICAgICAgfSBlbHNlaWYoICRhY3Rpb24gPT0gJ2xvZ291dCcgKSB7CiAgICAgICAgICAgICRyZXR1cm50byA9IFxjZ2VfcGFyYW06OmdldF9zdHJpbmcoJHBhcmFtcywncmV0dXJudG8nKTsKICAgICAgICAgICAgaWYoICRyZXR1cm50byApIHJldHVybjsKICAgICAgICAgICAgcmV0dXJuICJmZXUvbG9nb3V0LyRyZXR1cm5pZCI7CiAgICAgICAgfQogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gX0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucyggJHBlcm0gPSAnJyApCiAgICB7CiAgICAgICAgaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJywnMCcpID09ICcxJykgewogICAgICAgICAgICAkcDEgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRkVVIEFkZCBVc2VycycgKTsKICAgICAgICAgICAgJHAyID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0ZFVSBNb2RpZnkgVXNlcnMnICk7CiAgICAgICAgICAgICRwMyA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdGRVUgUmVtb3ZlIFVzZXJzJyApOwogICAgICAgICAgICAkcDQgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnRkVVIEFkZCBHcm91cHMnICk7CiAgICAgICAgICAgICRwNSA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdGRVUgTW9kaWZ5IEdyb3VwcycgKTsKICAgICAgICAgICAgJHA2ID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0ZFVSBNb2RpZnkgR3JvdXAgQXNzaWdubWVudHMnICk7CiAgICAgICAgICAgICRwNyA9ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdGRVUgUmVtb3ZlIEdyb3VwcycgKTsKICAgICAgICAgICAgJHA5ID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ0ZFVSBNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnICk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkcDEgPSAkcDIgPSAkcDMgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnTWFuYWdlIFVzZXJzJyApOwogICAgICAgICAgICAkcDQgPSAkcDUgPSAkcDYgPSAkcDcgPSAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCAnTWFuYWdlIEdyb3VwcycgKTsKICAgICAgICAgICAgJHA5ID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbiggJ01vZGlmeSBGcm9udEVuZFVzZXJQcm9wcycgKTsKICAgICAgICB9CgogICAgICAgICRjb25zdW1lciA9IGZldV91dGlsczo6Z2V0X2F1dGhfY29uc3VtZXIoKTsKICAgICAgICAkcmV0ID0gMDsKICAgICAgICBzd2l0Y2goICRwZXJtICkgewogICAgICAgIGNhc2UgJyc6ICAvLyBhbnkgcGVybWlzc2lvbiBmb3Igd29ya2luZyB3aXRoIGdyb3VwcyBhbmQgdXNlcnMKICAgICAgICAgICAgJHJldCA9ICgkcDEgfHwgJHAyIHx8ICRwMyB8fCAkcDQgfHwgJHA1IHx8ICRwNiB8fCAkcDcgfHwgJHA5ICk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICd1c2Vycyc6CiAgICAgICAgICAgICRyZXQgPSAoJHAxIHx8ICRwMiB8fCAkcDMpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnYWRkdXNlcic6CiAgICAgICAgICAgICRyZXQgPSAoJHAxKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgJ2FkZHByb3AnOgogICAgICAgIGNhc2UgJ2VkaXRwcm9wJzoKICAgICAgICBjYXNlICdkZWxldGVwcm9wJzoKICAgICAgICAgICAgJHJldCA9ICgkcDkpICYmICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX0VESVRQUk9QUyk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdwcm9wZXJ0aWVzJzoKICAgICAgICAgICAgJHJldCA9ICgkcDkpICYmICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX0xJU1RQUk9QUyk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdsaXN0dXNlcnMnOgogICAgICAgICAgICAkcmV0ID0gKCRwMiB8fCAkcDMpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnbGlzdGdyb3Vwcyc6CiAgICAgICAgICAgICRyZXQgPSAoJHA1IHx8ICRwNikgJiYKICAgICAgICAgICAgICAgICgkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9VU0VTVERHUk9VUFMpIHx8ICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX0xJU1RHUk9VUFMpKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgJ2dyb3Vwcyc6CiAgICAgICAgICAgICRyZXQgPSAoJHA0IHx8ICRwNSB8fCAkcDcpICYmCiAgICAgICAgICAgICAgICAoJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfVVNFU1RER1JPVVBTKSB8fCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9MSVNUR1JPVVBTKSk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdhZGRncm91cCc6CiAgICAgICAgICAgICRyZXQgPSAoJHA0KSAmJiAoJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfVVNFU1RER1JPVVBTKSB8fCAkY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUR1JPVVBTKSk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdzdHJpY3RfZWRpdGdyb3Vwcyc6CiAgICAgICAgICAgICRyZXQgPSAoJHA1IHx8ICRwNikgJiYgKCRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX1VTRVNUREdST1VQUykgfHwgJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfRURJVEdST1VQUykpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnZWRpdGdyb3Vwcyc6CiAgICAgICAgICAgICRyZXQgPSAoJHA1IHx8ICRwNikgJiYgJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfVVNFU1RER1JPVVBTLCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUR1JPVVBTLCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUR1JPVVBQUk9QUyk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdlZGl0dXNlcnMnOgogICAgICAgICAgICAkcmV0ID0gKCRwMik7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdyZW1vdmVncm91cHMnOgogICAgICAgICAgICAkcmV0ID0gKCRwNykgJiYgJGNvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkY29uc3VtZXI6OkNBUEFCSUxJVFlfVVNFU1RER1JPVVBTLCRjb25zdW1lcjo6Q0FQQUJJTElUWV9FRElUR1JPVVBTKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgJ3JlbW92ZXVzZXJzJzoKICAgICAgICAgICAgJHJldCA9ICgkcDMpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAndXNlcnNuZ3JvdXBzJzoKICAgICAgICAgICAgJHJldCA9ICgkcDEgfHwgJHAyIHx8ICRwMyB8fCAkcDQgfHwgJHA1IHx8ICRwNiB8fCAkcDcpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgJHJldCA9IDA7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuICRyZXQ7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIFZpc2libGVUb0FkbWluVXNlcigpCiAgICB7CiAgICAgICAgaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJywnMCcpID09ICcxJykgewogICAgICAgICAgICByZXR1cm4gJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IFNpdGUgUHJlZmVyZW5jZXMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIEFkZCBHcm91cHMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIE1vZGlmeSBHcm91cHMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIFJlbW92ZSBHcm91cHMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIEFkZCBVc2VycycpIHx8CiAgICAgICAgICAgICAgICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IFVzZXJzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0ZFVSBSZW1vdmUgVXNlcnMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignRkVVIE1vZGlmeSBGcm9udEVuZFVzZXJQcm9wcycpOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0FkZCBHcm91cHMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignTW9kaWZ5IEdyb3VwcycpIHx8CiAgICAgICAgICAgICAgICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdSZW1vdmUgR3JvdXBzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ0FkZCBVc2VycycpIHx8CiAgICAgICAgICAgICAgICAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNYW5hZ2UgVXNlcnMnKSB8fAogICAgICAgICAgICAgICAgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignUmVtb3ZlIFVzZXJzJykgfHwKICAgICAgICAgICAgICAgICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBGcm9udEVuZFVzZXJQcm9wcycpOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0QWRtaW5NZW51SXRlbXMoKQogICAgewogICAgICAgICRvdXQgPSBhcnJheSgpOwogICAgICAgIGlmKCAkdGhpcy0+VmlzaWJsZVRvQWRtaW5Vc2VyKCkgKSAkb3V0W10gPSBcQ21zQWRtaW5NZW51SXRlbTo6ZnJvbV9tb2R1bGUoJHRoaXMpOwogICAgICAgIGlmKCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycpICkgewogICAgICAgICAgICAkb2JqID0gbmV3IENtc0FkbWluTWVudUl0ZW0oKTsKICAgICAgICAgICAgJG9iai0+bW9kdWxlID0gJHRoaXMtPkdldE5hbWUoKTsKICAgICAgICAgICAgJG9iai0+c2VjdGlvbiA9ICdzaXRlYWRtaW4nOwogICAgICAgICAgICAkb2JqLT50aXRsZSA9ICR0aGlzLT5MYW5nKCd0aXRsZV9hZG1pbm5hdl9zZXR0aW5ncycpOwogICAgICAgICAgICAkb2JqLT5kZXNjcmlwdGlvbiA9ICR0aGlzLT5MYW5nKCdkZXNjX2FkbWlubmF2X3NldHRpbmdzJyk7CiAgICAgICAgICAgICRvYmotPmFjdGlvbiA9ICdhZG1pbl9zZXR0aW5ncyc7CiAgICAgICAgICAgICRvYmotPnVybCA9ICR0aGlzLT5jcmVhdGVfdXJsKCdtMV8nLCRvYmotPmFjdGlvbik7CiAgICAgICAgICAgICRvdXRbXSA9ICRvYmo7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkb3V0OwogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gX0Rpc3BsYXlFcnJvclBhZ2UoJGlkLCAmJHBhcmFtcywgJHJldHVybmlkLCAkbWVzc2FnZT0nJykKICAgIHsKICAgICAgICBlY2hvICR0aGlzLT5EaXNwbGF5RXJyb3JNZXNzYWdlKCRtZXNzYWdlKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gRG9BY3Rpb24oJGFjdGlvbiwgJGlkLCAkcGFyYW1zLCAkcmV0dXJuaWQgPSAtMSkKICAgIHsKICAgICAgICBpZiggaXNzZXQoJHBhcmFtc1snZmV1X2VuYyddKSApIHsKICAgICAgICAgICAgLy8gcmVzdG9yZSBwYXJhbWV0ZXJzIHNhdmVkIGluIHRoZSBzZXNzaW9uIG9uIHJlZGlyZWN0LgogICAgICAgICAgICAkc2lnID0gJHBhcmFtc1snZmV1X2VuYyddOwogICAgICAgICAgICB1bnNldCgkcGFyYW1zWydmZXVfZW5jJ10pOwogICAgICAgICAgICBpZiggaXNzZXQoJF9TRVNTSU9OWyRzaWddKSApIHsKICAgICAgICAgICAgICAgICR0bXAgPSAkX1NFU1NJT05bJHNpZ107CiAgICAgICAgICAgICAgICB1bnNldCgkX1NFU1NJT05bJHNpZ10pOwogICAgICAgICAgICAgICAgJHBhcmFtcyA9IGFycmF5X21lcmdlKCR0bXAsJHBhcmFtcyk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmKCAkYWN0aW9uID09ICdkZWZhdWx0JyApIHsKICAgICAgICAgICAgJGZvcm0gPSAnbG9naW4nOwogICAgICAgICAgICBpZiggJHRoaXMtPkxvZ2dlZEluSWQoKSApICRmb3JtID0gJ2xvZ291dCc7CiAgICAgICAgICAgICRmb3JtID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdmb3JtJywkZm9ybSk7CiAgICAgICAgICAgIHN3aXRjaCggJGZvcm0gKSB7CiAgICAgICAgICAgIGNhc2UgJ2xvZ2luJzoKICAgICAgICAgICAgY2FzZSAnZm9yZ290cHcnOgogICAgICAgICAgICBjYXNlICdzaWxlbnQnOgogICAgICAgICAgICBjYXNlICdjaGFuZ2VzZXR0aW5ncyc6CiAgICAgICAgICAgIGNhc2UgJ2xvc3R1c2VybmFtZSc6CiAgICAgICAgICAgICAgICAkYWN0aW9uID0gJGZvcm07CiAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgIGNhc2UgJ2xvZ291dCc6CiAgICAgICAgICAgICAgICAkYWN0aW9uID0gJ2xvZ291dGZvcm0nOwogICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFxMb2dpY0V4Y2NlcHRpb24oIiRmb3JtIGlzIGFuIGludmFsaWQgdmFsdWUgZm9yIHRoZSBmb3JtIHBhcmFtZXRlciIpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBzd2l0Y2ggKCRhY3Rpb24pIHsKICAgICAgICBjYXNlICdjaGFuZ2VzZXR0aW5nc191cmwnOgogICAgICAgICAgICBicmVhazsKCiAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcGFyZW50OjpEb0FjdGlvbigkYWN0aW9uLCRpZCwkcGFyYW1zLCRyZXR1cm5pZCk7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICogQGRlcHJlY2F0ZWQKICAgICAqLwogICAgZnVuY3Rpb24gbXlSZWRpcmVjdCggJGlkLCAkYWN0aW9uLCAkcmV0dXJuaWQsICRwYXJhbXMgPSBhcnJheSgpLCAkaWdub3JlX3JldHVybnRvID0gZmFsc2UgKQogICAgewogICAgICAgIC8vIGZpbmQgYW55IHBhcmFtZXRlciB2YWx1ZXMgdGhhdCBhcmUgYXJyYXlzCiAgICAgICAgLy8gYXV0b21hdGljYWxseSBzdG9yZSB0aGlzIGRhdGEgaW4gdGhlIHNlc3Npb24KICAgICAgICB1bnNldCgkcGFyYW1zWydhY3Rpb24nXSwkcGFyYW1zWydyZXR1cm5pZCddKTsKCiAgICAgICAgJHNpZyA9IG1kNShfX01FVEhPRF9fLnRpbWUoKS5zZXJpYWxpemUoJHBhcmFtcykpOwogICAgICAgICRfU0VTU0lPTlskc2lnXSA9ICRwYXJhbXM7CiAgICAgICAgJHBhcmFtcyA9IFsgJ2ZldV9lbmMnID0+ICRzaWcgXTsKICAgICAgICAkdGhpcy0+UmVkaXJlY3QoICRpZCwgJGFjdGlvbiwgJHJldHVybmlkLCAkcGFyYW1zICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIEdldEhlYWRlckhUTUwoKQogICAgewogICAgICAgICR0eHQgPSBwYXJlbnQ6OkdldEhlYWRlckhUTUwoKTsKICAgICAgICAkdG1wbCA9PDw8RU9UCntKUXVlcnlUb29scyBhY3Rpb249J3JlcXVpcmUnIGxpYj0ndGFibGVzb3J0ZXIsSlF1ZXJ5VG9vbHMnfQp7SlF1ZXJ5VG9vbHMgYWN0aW9uPSdwbGFjZW1hcmtlcid9CkVPVDsKCiAgICAgICAgJG9iaiA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnSlF1ZXJ5VG9vbHMnLCcxLjInKTsKICAgICAgICBpZiggaXNfb2JqZWN0KCRvYmopICkgewogICAgICAgICAgICAkc21hcnR5ID0gU21hcnR5X0NNUzo6Z2V0X2luc3RhbmNlKCk7CiAgICAgICAgICAgICR0eHQgLj0gJHNtYXJ0eS0+ZmV0Y2goJ3N0cmluZzonLiR0bXBsKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuICR0eHQ7CiAgICB9CgogICAgLyoqCiAgICAgKiBzZW5kIGFuIGV2ZW50IHRoYXQgdGhpcyB1c2VyIGFjY291bnQgaGFzIGJlZW4gZXhwaXJlZAogICAgICogQGludGVybmFsCiAgICAgKi8KICAgIHByb3RlY3RlZCBmdW5jdGlvbiBOb3RpZnlFeHBpcmVkVXNlciggJHVzZXJpZCApCiAgICB7CiAgICAgICAgJHVzZXIgPSAkdGhpcy0+R2V0VXNlckluZm8oICR1c2VyaWQgKTsKICAgICAgICBpZiggJHVzZXJbMF0gPT0gRkFMU0UgKSByZXR1cm47IC8vIHRoaXMgc2hvdWxkIGJlIGFuIGVycm9yCiAgICAgICAgJHBhcm1zID0gYXJyYXkoKTsKICAgICAgICAkcGFybXNbJ2lkJ10gPSAkdXNlcmlkOwogICAgICAgICRwYXJtc1sndXNlcm5hbWUnXSA9ICR1c2VyWzFdWyd1c2VybmFtZSddOwogICAgICAgICR0aGlzLT5TZW5kRXZlbnQoJ09uRXhwaXJlVXNlcicsJHBhcm1zKTsKICAgICAgICAkdGhpcy0+X1NlbmROb3RpZmljYXRpb25FbWFpbCgnT25FeHBpcmVVc2VyJywkcGFybXMpOwogICAgfQoKICAgIC8qKgogICAgICogQGludGVybmFsCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBpc19hbGxvd2VkX3VwbG9hZCgkc3JjZmlsZSkKICAgIHsKICAgICAgICAkYWxsb3dlZF9leHRlbnNpb25zPSR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnLCcuZ2lmLC5wbmcsLmpwZycpOwogICAgICAgICR0bXAgPSBleHBsb2RlKCAnLCcsICRhbGxvd2VkX2V4dGVuc2lvbnMpOwoKICAgICAgICBmb3JlYWNoKCAkdG1wIGFzICRleHQgKSB7CiAgICAgICAgICAgIGlmKCBlbmRzd2l0aCggJHNyY2ZpbGUsICRleHQgKSApIHJldHVybiBUUlVFOwogICAgICAgIH0KICAgICAgICByZXR1cm4gRkFMU0U7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqIEB0b2RvOiBtb3ZlIG1lIG91dCBvZiBoZXJlCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfdXBsb2FkX2RpcnVybCgpCiAgICB7CiAgICAgICAgJGNvbmZpZyA9IFxjbXNfY29uZmlnOjpnZXRfaW5zdGFuY2UoKTsKICAgICAgICAkZG4gPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfdXJsJ10sJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLCAnZmV1c2VycycpKTsKICAgICAgICAkZG4gPSBzdHJfcmVwbGFjZSgnXFwnLCcvJywkZG4pOwogICAgICAgIHJldHVybiAkZG47CiAgICB9CgogICAgLyoqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIGdldF91cGxvYWRfZGlybmFtZSgpCiAgICB7CiAgICAgICAgJGNvbmZpZyA9IFxjbXNfY29uZmlnOjpnZXRfaW5zdGFuY2UoKTsKICAgICAgICAkZG4gPSBjbXNfam9pbl9wYXRoKCRjb25maWdbJ3VwbG9hZHNfcGF0aCddLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdpbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywgJ2ZldXNlcnMnKSk7CiAgICAgICAgcmV0dXJuICRkbjsKICAgIH0KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3VwbG9hZF9maWxlbmFtZSgkZmxkbmFtZSwkc3JjZmlsZSkKICAgIHsKICAgICAgICAvLyBnZXQgdGhlIGZpbGVuYW1lIG9ubHksIG5vdCB0aGUgZGlyZWN0b3J5CiAgICAgICAgJGV4dCA9IHN0cmNocigkc3JjZmlsZSwnLicpOwogICAgICAgIHJldHVybiBtZDUoX19GSUxFX18uc2Vzc2lvbl9pZCgpLiRmbGRuYW1lLiRzcmNmaWxlKS4kZXh0OwogICAgfQoKICAgIC8qKgogICAgICogQGludGVybmFsCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBNYW5hZ2VJbWFnZVVwbG9hZCgka2V5LCAkZmxkbmFtZSkKICAgIHsKICAgICAgICAkcmVzID0gXGZldV91dGlsczo6Y2hlY2tVcGxvYWQoJGtleSk7CiAgICAgICAgaWYoICEkcmVzWzBdICkgcmV0dXJuICRyZXM7CgogICAgICAgICRmaWxlID0gJF9GSUxFU1ska2V5XTsKICAgICAgICAvLyBzZXQgdGhlIGRlc3RpbmF0aW9uIG5hbWUKICAgICAgICAkZGVzdERpciA9ICR0aGlzLT5nZXRfdXBsb2FkX2Rpcm5hbWUoKTsKICAgICAgICAkZGVzdG5hbWUgPSAkdGhpcy0+Z2V0X3VwbG9hZF9maWxlbmFtZSgkZmxkbmFtZSwkZmlsZVsnbmFtZSddKTsKCiAgICAgICAgLy8gQ3JlYXRlIHRoZSBkZXN0aW5hdGlvbiBkaXJlY3RvcnkgaWYgbmVjZXNzYXJ5CiAgICAgICAgQG1rZGlyKCRkZXN0RGlyLDA3NzcsVFJVRSk7CiAgICAgICAgQHRvdWNoKCRkZXN0ZGlyLicvaW5kZXguaHRtbCcpOwogICAgICAgIGlmKCAhaXNfd3JpdGFibGUoICRkZXN0RGlyICkgKSByZXR1cm4gWyBmYWxzZSwgJG1vZC0+TGFuZygnZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZScpIF07CiAgICAgICAgQGNtc19tb3ZlX3VwbG9hZGVkX2ZpbGUoJGZpbGVbJ3RtcF9uYW1lJ10sIGNtc19qb2luX3BhdGgoJGRlc3REaXIsJGRlc3RuYW1lKSk7CgogICAgICAgIHJldHVybiBbIHRydWUsICRkZXN0bmFtZSBdOwogICAgfQoKICAgIC8qKgogICAgICogQGludGVybmFsCiAgICAgKiBAZGVwcmVjYXRlZAogICAgICovCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gX1NlbmROb3RpZmljYXRpb25FbWFpbCgkZXZlbnQsJHBhcmFtcykKICAgIHsKICAgICAgICAkbm90aWZpY2F0aW9ucyA9IGV4cGxvZGUoJywnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdub3RpZmljYXRpb25zJywnJykpOwogICAgICAgIGlmKCAhaW5fYXJyYXkoICRldmVudCwgJG5vdGlmaWNhdGlvbnMgKSApIHJldHVybjsKICAgICAgICAkZGVzdCA9IHRyaW0oJHRoaXMtPkdldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbl9hZGRyZXNzJykpOwogICAgICAgIGlmKCBlbXB0eSgkZGVzdCkgKSByZXR1cm47CgogICAgICAgIC8vIFNldHVwIHNvbWUgc21hcnR5IHN0dWZmLgogICAgICAgICRzbWFydHkgPSBcU21hcnR5X0NNUzo6Z2V0X2luc3RhbmNlKCk7CiAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdldmVudCcsJGV2ZW50KTsKICAgICAgICAkc21hcnR5LT5hc3NpZ24oJ2V2ZW50X25hbWUnLCR0aGlzLT5MYW5nKCRldmVudCkpOwogICAgICAgICRzbWFydHktPmFzc2lnbigncGxhaW50ZXh0X2V2ZW50JywkdGhpcy0+TGFuZygnZXZlbnQnKSk7CiAgICAgICAgZm9yZWFjaCggJHBhcmFtcyBhcyAka2V5ID0+ICR2YWx1ZSApIHsKICAgICAgICAgICAgJHNtYXJ0eS0+YXNzaWduKCdwYXJhbV8nLiRrZXksJHZhbHVlKTsKICAgICAgICB9CiAgICAgICAgJHRleHQgPSAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlRnJvbURhdGFiYXNlKCdub3RpZmljYXRpb25fdGVtcGxhdGUnKTsKCiAgICAgICAgJGNtc21haWxlciA9IG5ldyBcY21zX21haWxlcigpOwogICAgICAgICRjbXNtYWlsZXItPnJlc2V0KCk7CiAgICAgICAgJGNtc21haWxlci0+QWRkQWRkcmVzcygkZGVzdCk7CiAgICAgICAgJGNtc21haWxlci0+U2V0U3ViamVjdCgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbm90aWZpY2F0aW9uX3N1YmplY3QnKSk7CiAgICAgICAgJGNtc21haWxlci0+U2V0Qm9keSgkdGV4dCk7CiAgICAgICAgJGNtc21haWxlci0+SXNIVE1MKGZhbHNlKTsKICAgICAgICAkY21zbWFpbGVyLT5TZW5kKCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIFNldFBvc3RMb2dpblVSTCgkdXJsKQogICAgewogICAgICAgIGlmKCAkdXJsICkgJHRoaXMtPnNlc3Npb25fcHV0KCdwb3N0bG9naW5fdXJsJywkdXJsKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0UG9zdExvZ2luVVJMKCkKICAgIHsKICAgICAgICAkb3V0ID0gJHRoaXMtPnNlc3Npb25fZ2V0KCdwb3N0bG9naW5fdXJsJyk7CiAgICAgICAgJHRoaXMtPnNlc3Npb25fY2xlYXIoJ3Bvc3Rsb2dpbl91cmwnKTsKICAgICAgICByZXR1cm4gJG91dDsKICAgIH0KCiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICAgIC8vICBBUEkgRlVOQ1RJT05TIC8vCiAgICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICovCiAgICBmdW5jdGlvbiBhZGRfaGlzdG9yeSggJHVpZCwgJG1lc3NhZ2UgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5hZGRfaGlzdG9yeSggJHVpZCwgJG1lc3NhZ2UgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEFkZCBhIG5ldyBncm91cAogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGhlIGdyb3VwIG5hbWUKICAgICAqIEBwYXJhbSBzdHJpbmcgJGRlc2NyaXB0aW9uIFRoZSBncm91cCBkZXNjcmlwdGlvbgogICAgICogQHJldHVybiBhcnJheSBBcnJheSBjb250YWluaW5nIHR3byBlbGVtZW50cy4gIFRoZSBmaXJzdCBlbGVtZW50IGlzIHRoZSByZXR1cm4gc3RhdHVzIG9mIHRoZSBmdW5jdGlvbiAoYm9vbGVhbiksIHRoZSBzZWNvbmQgZWxlbWVudCBpcyBlaXRoZXIgYSBtZXNzYWdlIGluIHRoZQogICAgICogICAgY2FzZSBvZiBhbiBlcnJvciwgb3IgdGhlIGdyb3VwIGlkIChpbnRlZ2VyKSBvbiBzdWNjZXNzLgogICAgICovCiAgICBmdW5jdGlvbiBBZGRHcm91cCggJG5hbWUsICRkZXNjcmlwdGlvbiApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkFkZEdyb3VwKCAkbmFtZSwgJGRlc2NyaXB0aW9uICk7CiAgICB9CgoKICAgIC8qKgogICAgICogQWRkIGEgbmV3IGdyb3VwIHByb3BlcnR5IHJlbGF0aW9uLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJGdycGlkIFRoZSBncm91cCBpZAogICAgICogQHBhcmFtIHN0cmluZyAkcHJvcG5hbWUgVGhlIHByb3BlcnR5IG5hbWUKICAgICAqIEBwYXJhbSBpbnQgJHNvcnRrZXkgVGhlIHNvcnRpbmcgb3JkZXIgZm9yIHRoaXMgcmVsYXRpb25zaGlwCiAgICAgKiBAcGFyYW0gaW50ICRyZXF1aXJlZCBUaGUgcmVxdWlyZWQgZmxhZyBmb3IgdGhpcyByZWxhdGlvbnNoaXAuICAwPT1vZmYgMT09b3B0aW9uYWwsIDI9PXJlcXVpcmVkCiAgICAgKiBAcGFyYW0gYm9vbGVhbiAkbG9zdHVuIFdldGhlciB0aGlzIHJlbGF0aW9uc2hpcCBzaG91bGQgYmUgdXNlZCBmb3IgdGhlIGxvc3R1biBzdHVmZiAoZGVwcmVjYXRlZCkKICAgICAqIEByZXR1cm4gYXJyYXkgRmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgdGhlIHJldHVybiBzdGF0dXMsIHNlY29uZCBlbGVtZW50IGlzIHRoZSBlcnJvciBtZXNzYWdlLCBpZiBhbnkuCiAgICAgKi8KICAgIGZ1bmN0aW9uIEFkZEdyb3VwUHJvcGVydHlSZWxhdGlvbiggJGdycGlkLCAkcHJvcG5hbWUsICRzb3J0a2V5LCAkbG9zdHVuLCAkcmVxdWlyZWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5BZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRncnBpZCwgJHByb3BuYW1lLCAkc29ydGtleSwgJGxvc3R1biwgJHJlcXVpcmVkICk7CiAgICB9CgoKICAgIC8qKgogICAgICogQWRkIGEgbmV3IHByb3BlcnR5IGRlZmluaXRpb24KICAgICAqCiAgICAgKiBAcGFyYW0gc3RyaW5nICRuYW1lIFRoZSBwcm9wZXJ0eSBuYW1lCiAgICAgKiBAcGFyYW0gc3RyaW5nICRwcm9tcHQgVGhlIHByb3BlcnR5IHByb21wdCBmb3IgdXNlIGluIHZhcmlvdXMgdmlld3MKICAgICAqIEBwYXJhbSBpbnQgJHR5cGUgVGhlIGZpZWxkIHR5cGUKICAgICAqIEBwYXJhbSBpbnQgJGxlbmd0aCBUaGUgZGVmYXVsdCBsZW5ndGggZm9yIHJlbmRlcmluZyB0aGUgcHJvcGVydHkKICAgICAqIEBwYXJhbSBpbnQgJG1heGxlbmd0aCBUaGUgbWF4aW11bSBsZW5ndGggZm9yIHJlbmRlcmluZyB0aGUgcHJvcGVydHkKICAgICAqIEBwYXJhbSBzdHJpbmcgJGF0dHJpYnMgQSBzZXJpYWxpemVkIGFycmF5IG9mIGF0dHJpYnV0ZXMgZm9yIHRoZSBwcm9wZXJ0eQogICAgICogQHBhcmFtIGJvb2wgJGZvcmNlX3VuaXF1ZSBXaGV0aGVyIG9yIG5vdCB0aGUgdmFsdWUgZm9yIHRoaXMgcHJvcGVydHkgc2hvdWxkIGJlIHVuaXF1ZSBhY3Jvc3MgYWxsIHVzZXJzLgogICAgICogQHBhcmFtIGJvb2wgJGVuY3J5cHQgV2hldGhlciBvciBub3QgdGhpcyBkYXRhIHNob3VsZCBiZSBlbmNyeXB0ZWQgaW4gdGhlIGRhdGFiYXNlLgogICAgICovCiAgICBmdW5jdGlvbiBBZGRQcm9wZXJ0eURlZm4oICRuYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCwgJG1heGxlbmd0aCA9IDAsICRhdHRyaWJzID0gJycsICRmb3JjZV91bmlxdWUgPSAwLCAkZW5jcnlwdCA9IDAgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5BZGRQcm9wZXJ0eURlZm4oICRuYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCwgJG1heGxlbmd0aCwgJGF0dHJpYnMsICRmb3JjZV91bmlxdWUsICRlbmNyeXB0ICApOwogICAgfQoKCiAgICAvKioKICAgICAqIFNldCBzZWxlY3Qgb3B0aW9ucyBmb3IgYSBkcm9wZG93bi9yYWRpby1idXR0b24tZ3JvdXAgb3IgbXVsdGlzZWxlY3QgcHJvcGVydHkuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgcHJvcGVydHkgbmFtZQogICAgICogQHBhcmFtIGFycmF5ICRzZWxvcHRpb25zIHRoZSBTZWxlY3Qgb3B0aW9ucy4KICAgICAqLwogICAgZnVuY3Rpb24gQWRkU2VsZWN0T3B0aW9ucyggJG5hbWUsICRzZWxvcHRpb25zICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+QWRkU2VsZWN0T3B0aW9ucyggJG5hbWUsICRzZWxvcHRpb25zICk7CiAgICB9CgoKICAgIC8qKgogICAgICogQWRkIGEgdXNlciB0byB0aGUgc3lldGVtCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgbmV3IHVzZXJuYW1lCiAgICAgKiBAcGFyYW0gc3RyaW5nICRwYXNzd29yZCBUaGUgcGxhaW4gdGV4dCBwYXNzd29yZAogICAgICogQHBhcmFtIGludCAkZXhwaXJlcyB0aGUgVW5peCB0aW1lc3RhbXAgb2YgdGhlIGV4cGlyeSBkYXRlCiAgICAgKiBAcmV0dXJuIGFycmF5IFRoZSBmaXJzdCBlbGVtZW50IG9mIHRoZSBhcnJheSBpcyBhIGJvb2xlYW4gaW5kaWNhdGluZyBzdWNjZXNzIG9yIGZhaWx1cmUsIHRoZSBzZWNvbmQgZWxlbWVudCBpcyBhbiBlcnJvciBtZXNzYWdlLCBvciB0aGUgbmV3IFVJRC4KICAgICAqLwogICAgZnVuY3Rpb24gQWRkVXNlciggJG5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXMgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5BZGRVc2VyKCAkbmFtZSwgJHBhc3N3b3JkLCAkZXhwaXJlcyApOwogICAgfQoKCiAgICAvKioKICAgICAqIEFzc2lnbiB0aGUgc3BlY2lmaWVkIHVzZXIgdG8gdGhlIHNwZWNpZmllZCBncm91cAogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVpZCBUaGUgdXNlciBpZGVudGlmaWVyCiAgICAgKiBAcGFyYW0gaW50ICRnaWQgVGhlIGdyb3VwIGlkZW50aWZpZXIKICAgICAqIEByZXR1cm4gYm9vbGVhbgogICAgICovCiAgICBmdW5jdGlvbiBBc3NpZ25Vc2VyVG9Hcm91cCggJHVpZCwgJGdpZCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkFzc2lnblVzZXJUb0dyb3VwKCAkdWlkLCAkZ2lkICk7CiAgICB9CgoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBDb3VudFRlbXBDb2RlUmVjb3JkcygpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkNvdW50VGVtcENvZGVSZWNvcmRzKCk7CiAgICB9CgoKICAgIC8qKgogICAgICogQ291bnQgdGhlIG51bWJlciBvZiBub24gZGlzYWJsZWQgdXNlcnMgaW4gYSBncm91cCwgb3IgaW4gdGhlIGVudGlyZSBzeXN0ZW0uCiAgICAgKgogICAgICogQHBhcmFtIGludCAkZ2lkIE9wdGlvbmFsIGdyb3VwIGlkZW50aWZpZXIuCiAgICAgKiBAcmV0dXJuIGludAogICAgICovCiAgICBmdW5jdGlvbiBDb3VudFVzZXJzSW5Hcm91cCggJGdpZCA9ICcnICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+Q291bnRVc2Vyc0luR3JvdXAoICRnaWQgKTsKICAgIH0KCgogICAgLyoqCiAgICAgKiBEZWxldGUgYWxsIHByb3BlcnR5IHJlbGF0aW9ucyBmb3IgYSBncm91cAogICAgICoKICAgICAqIEBpbnRlcm5hbAogICAgICogQHBhcmFtIGludCAkZ3JvdXBpZAogICAgICogQHJldHVybiBhcnJheSBUaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgdGhlIGJvb2xlYW4gcmVzdWx0LCBzZWNvbmQgZWxlbWVudCAoaWYgYW55KSBpcyBhbiBlcnJvciBtZXNzYWdlLgogICAgICovCiAgICBmdW5jdGlvbiBEZWxldGVBbGxHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVBbGxHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQgKTsKICAgIH0KCgogICAgLyoqCiAgICAgKiBQZXJtYW5lbnRseSByZW1vdmUgYSBwcm9wZXJ0eQogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGhlIHByb3BlcnR5IG5hbWUKICAgICAqIEByZXR1cm4gYm9vbGVhbgogICAgICovCiAgICBmdW5jdGlvbiBEZWxldGVQcm9wZXJ0eURlZm4oICRuYW1lICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlUHJvcGVydHlEZWZuKCAkbmFtZSApOwogICAgfQoKCiAgICAvKioKICAgICAqIERlbGV0ZSBhbGwgcHJvcGVydHkgZGVmaW5pdGlvbnMuCiAgICAgKgogICAgICogQGludGVybmFsCiAgICAgKi8KICAgIGZ1bmN0aW9uIERlbGV0ZVByb3BlcnR5RGVmbnMoKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVQcm9wZXJ0eURlZm5zKCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBEZWxldGUgdGhlIHNlbGVjdCBvcHRpb25zIChpZiBhbnkpIGZvciBhIHByb3BlcnR5CiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgcHJvcGVydHkgbmFtZQogICAgICogQHJldHVybiBhcnJheSBUaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgYSBib29sZWFuIHN0YXR1cywgdGhlIHNlY29uZCBlbGVtZW50IChpZiBhbnkpIGlzIGFuIGVycm9yIG1lc3NhZ2UuCiAgICAgKi8KICAgIGZ1bmN0aW9uIERlbGV0ZVNlbGVjdE9wdGlvbnMoICRuYW1lICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlU2VsZWN0T3B0aW9ucyggJG5hbWUgKTsKICAgIH0KCiAgICAvKioKICAgICAqIENvbXBsZXRlbHkgZGVsZXRlIGEgdXNlciBmcm9tIHRoZSBkYXRhYmFzZS4gIEluY2x1ZGluZyBhbGwgcHJvcGVydGllcywgZ3JvdXAgbWVtYmVyc2hpcHMsIGV0Yy4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQgVGhlIHVzZXIgaWRlbnRpZmllciB0byBkZWxldGUuCiAgICAgKiBAcmV0dXJuIGFycmF5IFRoZSBmaXJzdCBlbGVtZW50IG9mIHRoZSBhcnJheSBpcyBhIGJvb2xlYW4gc3RhdHVzLCB0aGUgc2Vjb25kIGVsZW1lbnQgKGlmIGFueSkgaXMgYW4gZXJyb3IgbWVzc2FnZS4KICAgICAqLwogICAgZnVuY3Rpb24gRGVsZXRlVXNlckZ1bGwoICR1aWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVVc2VyRnVsbCggJHVpZCApOwogICAgfQoKICAgIC8qKgogICAgICogUmVtb3ZlIGEgc3BlY2lmaWVkIHByb3BlcnR5IGZvciBhbGwgdXNlcnMsIGJ1dCBkbyBub3QgcmVtb3ZlIHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9uLgogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJHRpdGxlIFRoZSBwcm9wZXJ0eSBuYW1lCiAgICAgKiBAcmV0dXJuIGJvb2xlYW4KICAgICAqLwogICAgZnVuY3Rpb24gRGVsZXRlVXNlclByb3BlcnR5QnlOYW1lKCAkdGl0bGUgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVVc2VyUHJvcGVydHlCeU5hbWUoJHRpdGxlKTsKICAgIH0KCiAgICAvKioKICAgICAqIERlbGV0ZSBhIHVzZXIgcHJvcGVydHkgZm9yIGEgc3BlY2lmaWMgdXNlci4KICAgICAqCiAgICAgKiBAcGFyYW0gc3RyaW5nICR0aXRsZSBUaGUgcHJvcGVydHkgbmFtZQogICAgICogQHBhcmFtIGJvb2xlYW4gJGFsbCBXZXRoZXIgb3Igbm90IHRvIGRlbGV0ZSBhbGwgcHJvcGVydGllcyBmb3IgdGhlIHVzZXIuCiAgICAgKiBAcmV0dXJuIGJvb2xlYW4KICAgICAqLwogICAgZnVuY3Rpb24gRGVsZXRlVXNlclByb3BlcnR5KCR0aXRsZSwkYWxsPWZhbHNlKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVVc2VyUHJvcGVydHkoJHRpdGxlLCRhbGwpOwogICAgfQoKICAgIC8qKgogICAgICogRGVsZXRlIGFsbCB1c2VyIHByb3BlcnRpZXMsIGZvciBhbGwgdXNlcnMKICAgICAqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqIEByZXR1cm4gYm9vbGVhbgogICAgICovCiAgICBmdW5jdGlvbiBEZWxldGVBbGxVc2VyUHJvcGVydGllcygpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkRlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzKCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBEZWxldGUgYWxsIHVzZXIgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVzZXJpZCBUaGUgdXNlcmlkCiAgICAgKiBAcmV0dXJuIGJvb2xlYW4KICAgICAqLwogICAgZnVuY3Rpb24gRGVsZXRlQWxsVXNlclByb3BlcnRpZXNGdWxsKCR1c2VyaWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkRlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzRnVsbCgkdXNlcmlkKTsKICAgIH0KCiAgICAvKioKICAgICAqIERlbGV0ZSBzcGVjaWZpZWQgdXNlciBwcm9wZXJ0aWVzIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkdGl0bGUgVGhlIHByb3BlcnR5IG5hbWUKICAgICAqIEBwYXJhbSBpbnQgJHVzZXJpZCBUaGUgdXNlcmlkCiAgICAgKiBAcGFyYW0gYm9vbGVhbiAkYWxsIFdldGhlciBvciBub3QgdG8gZGVsZXRlIGFsbCBwcm9wZXJ0aWVzIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIuCiAgICAgKi8KICAgIGZ1bmN0aW9uIERlbGV0ZVVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCR1c2VyaWQsJGFsbD1mYWxzZSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVsZXRlVXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJHVzZXJpZCwkYWxsKTsKICAgIH0KCiAgICAvKioKICAgICAqIERlbGV0ZSBhIHNwZWNpZmllZCBncm91cC4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICRnaWQgVGhlIGdyb3VwIGlkZW50aWZpZXIKICAgICAqIEByZXR1cm4gYXJyYXkgVGhlIGZpcnN0IGVsZW1lbnQgb2YgdGhlIGFycmF5IGlzIGEgYm9vbGVhbiBzdGF0dXMsIHRoZSBzZWNvbmQgZWxlbWVudCAoaWYgYW55KSBpcyBhbiBlcnJvciBtZXNzYWdlLgogICAgICovCiAgICBmdW5jdGlvbiBEZWxldGVHcm91cEZ1bGwoICRnaWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVHcm91cEZ1bGwoICRnaWQgKTsKICAgIH0KCiAgICAvKioKICAgICAqIERlbGV0ZSB0aGUgc3BlY2lmaWVkIHVzZXIgYWNjb3VudC4KICAgICAqCiAgICAgKiBAZGVwcmVjYXRlZAogICAgICogQHNlZSBEZWxldGVVc2VyRnVsbAogICAgICogQHBhcmFtIGludCAkaWQgVGhlIHVpZAogICAgICogQHJldHVybiBhcnJheSBUaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgYSBib29sZWFuIHN0YXR1cywgdGhlIHNlY29uZCBlbGVtZW50IChpZiBhbnkpIGlzIGFuIGVycm9yIG1lc3NhZ2UuCiAgICAgKi8KICAgIGZ1bmN0aW9uIERlbGV0ZVVzZXIoJGlkKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5EZWxldGVVc2VyKCAkaWQgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gRXhwaXJlVXNlcnMoKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5FeHBpcmVVc2VycygpOwogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICovCiAgICBmdW5jdGlvbiBFeHBpcmVUZW1wQ29kZXMoICRleHBpcnljb2RlICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RXhwaXJlVGVtcENvZGVzKCAkZXhwaXJ5Y29kZSApOwogICAgfQoKICAgIC8qKgogICAgICogR2VuZXJhdGUgYSByYW5kb20gdXNlcm5hbWUKICAgICAqCiAgICAgKiBAcGFyYW0gc3RyaW5nICRwcmVmaXggYW4gb3B0aW9uYWwgcHJlZml4IGZvciB0aGUgdXNlcm5hbWUKICAgICAqIEByZXR1cm4gc3RyaW5nCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdlbmVyYXRlUmFuZG9tVXNlcm5hbWUoICRwcmVmaXggPSAndXNlcicgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZW5lcmF0ZVJhbmRvbVVzZXJuYW1lKCAkcHJlZml4ICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgYWxsIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgdXNlci4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQgVGhlIHVzZXIgaWRlbnRpZmllcgogICAgICogQHJldHVybiBhcnJheSBUaGUgdXNlciBwcm9wZXJ0aWVzIGFzIHJlYWQgZnJvbSB0aGUgZGF0YWJhc2UuCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldFVzZXJQcm9wZXJ0aWVzKCR1aWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFVzZXJQcm9wZXJ0aWVzKCR1aWQpOwogICAgfQoKICAgIC8qKgogICAgICogR2V0IGEgbGlzdCBvZiB0aGUgc3BlY2lmaWVkIHVzZXJzIGdyb3VwcyAoaWYgYW55KQogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVzZXJpZCBUaGUgdXNlciBpZGVudGlmaWVyCiAgICAgKiBAcmV0dXJuIG51bGx8YXJyYXkgSWYgdGhlIHVzZXIgaXMgYSBtZW1iZXIgb2YgYW55IGdyb3VwcyB0aGUgcmVzdWx0aW5nIGFycmF5IHdpbGwgY29udGFpbCB0aGUgdXNlcmlkLCBhbmQgdGhlIGdyb3VwaWQgaW4gZWFjaCBlbGVtZW50IG9mIHRoZSByZXR1cm5lZCBhcnJheS4KICAgICAqLwogICAgZnVuY3Rpb24gR2V0TWVtYmVyR3JvdXBzQXJyYXkoJHVzZXJpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoJHVzZXJpZCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgYSBwcm9wZXJ0eSB2YWx1ZSBmb3IgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlci4KICAgICAqCiAgICAgKiBAcGFyYW0gc3RyaW5nICR0aXRsZSBUaGUgcHJvcGVydHkgbmFtZQogICAgICogQHBhcmFtIG1peGVkICRkZWZhdWx0dmFsdWUgQW4gb3B0aW9uYWwgZGVmYXVsdCB2YWx1ZSBpZiB0aGUgcHJvcGVydHkgaXMgbm90IHNldCBmb3IgdGhlIHVzZXIuICBOb3RlLCBhbiBlbXB0eSBzdHJpbmcgbWF5IGJlIGEgdmFsaWQgcHJvcGVydHkgdmFsdWUuCiAgICAgKiBAcmV0dXJuIHN0cmluZyAoQWxsIHByb3BlcnRpZXMgYXJlIHN0b3JlZCBhcyBzdHJpbmdzIGluIHRoZSBkYXRhYmFzZSkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VXNlclByb3BlcnR5KCR0aXRsZSwkZGVmYXVsdHZhbHVlPWZhbHNlKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRVc2VyUHJvcGVydHkoICR0aXRsZSwgJGRlZmF1bHR2YWx1ZSApOwogICAgfQoKICAgIC8qKgogICAgICogR2V0IGEgcHJvcGVydHkgdmFsdWUgZm9yIHRoZSBzcGVjaWZpZWQgdXNlciBpZAogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJHRpdGxlIHRoZSBwcm9wZXJ0eSBuYW1lCiAgICAgKiBAcGFyYW0gaW50ICR1c2VyaWQgVGhlIHVzZXIgaWRlbnRpZmllcgogICAgICogQHBhcmFtIG1peGVkICRkZWZhdWx0dmFsdWUgQW4gb3B0aW9uYWwgZGVmYXVsdCB2YWx1ZSBpZiB0aGUgcHJvcGVydHkgaXMgbm90IHNldCBmb3IgdGhlIHVzZXIuICBOb3RlLCBhbiBlbXB0eSBzdHJpbmcgbWF5IGJlIGEgdmFsaWQgcHJvcGVydHkgdmFsdWUuCiAgICAgKiBAcmV0dXJuIHN0cmluZyAoQWxsIHByb3BlcnRpZXMgYXJlIHN0b3JlZCBhcyBzdHJpbmdzIGluIHRoZSBkYXRhYmFzZSkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJHVzZXJpZCwgJGRlZmF1bHR2YWx1ZT1mYWxzZSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJHVzZXJpZCwkZGVmYXVsdHZhbHVlKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VXNlclRlbXBDb2RlKCAkdWlkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlclRlbXBDb2RlKCAkdWlkICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdGhlIGdyb3VwIHByb3BlcnR5IHJlbGF0aW9ucyBmb3IgdGhlIHNwZWNpZmllZCBwcm9wZXJ0eSwgZm9yIGFsbCBncm91cHMuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkdGl0bGUgdGhlIHByb3BlcnR5IHRpdGxlLgogICAgICogQHJldHVybiBhcnJheQogICAgICovCiAgICBmdW5jdGlvbiBHZXRQcm9wZXJ0eUdyb3VwUmVsYXRpb25zKCAkdGl0bGUgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRQcm9wZXJ0eUdyb3VwUmVsYXRpb25zKCAkdGl0bGUgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCB0aGUgcHJvcGVydHkgcmVsYXRpb25zIGZvciB0aGUgc3BlY2lmaWVkIHVzZXIKICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEByZXR1cm4gYXJyYXkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VXNlclByb3BlcnR5UmVsYXRpb25zKCR1aWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFVzZXJQcm9wZXJ0eVJlbGF0aW9ucyggJHVpZCApOwogICAgfQoKICAgIC8qKgogICAgICogR2V0IHRoZSBwcm9wZXJ0eSByZWxhdGlvbnMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAKICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICRncnBpZCBUaGUgZ3JvdXAgaWRlbnRpZmllcgogICAgICogQHJldHVybiBhcnJheQogICAgICovCiAgICBmdW5jdGlvbiBHZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCB0aGUgZ3JvdXAgaW5mb3JtYXRpb24gZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAKICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICRnaWQgVGhlIGdyb3VwIGlkZW50aWZpZXIKICAgICAqIEByZXR1cm4gYXJyYXkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0R3JvdXBJbmZvKCAkZ2lkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0R3JvdXBJbmZvKCAkZ2lkICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdXNlciBoaXN0b3J5IHJlY29yZHMsIGJ5IGRlc2NlbmRpbmcgZGF0ZS4KICAgICAqIFdhcm5pbmc6IFRoaXMgY291bGQgcG90ZW50aWFsbHkgcmV0dXJuIGEgdmVyeSBsYXJnZSBhcnJheS4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEBwYXJhbSBzdHJpbmcgJGFjdGlvbiBBbiBvcHRpb25hbCBhY3Rpb24gZmlsdGVyIChzdWNoIGFzIGxvZ2luIG9yIGxvZ291dCkKICAgICAqIEBwYXJhbSBpbnQgJGNvdW50IEFuIG9wdGlvbmFsIGxpbWl0CiAgICAgKiBAcmV0dXJuIGFycmF5CiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldFVzZXJIaXN0b3J5KCAkdWlkLCAkYWN0aW9uID0gJycsICRjb3VudCA9IC0xICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlckhpc3RvcnkoJHVpZCwkYWN0aW9uLCRjb3VudCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgYSBsaXN0IG9mIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJzLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJG5vdF9hY3RpdmVfc2luY2UgQW4gb3B0aW9uYWwgdW5peCB0aW1lc3RhbXAgZmlsdGVyIGluZGljYXRpbmcgbGFzdCBhY3Rpdml0eS4KICAgICAqIEByZXR1cm4gaW50W10gQXJyYXkgb2YgbG9nZ2VkIGluIHVpZHMuCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldExvZ2dlZEluVXNlcnMoICRub3RfYWN0aXZlX3NpbmNlID0gJycgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRMb2dnZWRJblVzZXJzKCRub3RfYWN0aXZlX3NpbmNlKTsKICAgIH0KCgogICAgLyoqCiAgICAgKiBAaXRub3JlCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEJ1bGtVc2VySW5mbyggJHVpZHMsICRkZWVwID0gVFJVRSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldEJ1bGtVc2VySW5mbygkdWlkcywkZGVlcCk7CiAgICB9CgoKICAgIC8qKgogICAgICogR2V0IHVzZXIgaW5mb3JtYXRpb24gZm9yIHRoZSBzcGVjaWZpZWQgdXNlci4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEBwYXJhbSBib29sICRkZWVwIE9wdGlvbmFsbHkgYWxzbyByZXRyaWV2ZSBwcm9wZXJ0eSB2YWx1ZXMuCiAgICAgKiBAcmV0dXJuIGFycmF5CiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldFVzZXJJbmZvKCAkdWlkLCAkZGVlcCA9IEZBTFNFICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlckluZm8oICR1aWQsICRkZWVwICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdXNlciBpbmZvcm1hdGlvbiBmb3IgdGhlIHNwZWNpZmllZCB1c2VyLCBieSBoaXMgdXNlcm5hbWUuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkdXNlcm5hbWUKICAgICAqIEByZXR1cm4gYXJyYXkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VXNlckluZm9CeU5hbWUoICR1c2VybmFtZSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFVzZXJJbmZvQnlOYW1lKCAkdXNlcm5hbWUgKTsKICAgIH0KCgogICAgLyoqCiAgICAgKiBHZXQgaW5mbyBmb3IgdGhlIHVzZXJzIGJ5IHRoZWlyIGdyb3VwLgogICAgICogV2FybmluZzogVGhpcyBjb3VsZCBwb3RlbnRpYWxseSByZXR1cm4gYWxvdCBvZiBkYXRhLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJGdpZAogICAgICogQHJldHVybiBhcnJheSBBcnJheSBvZiB1c2VyaW5mbyBkYXRhLiAgT25lIGVsZW1lbnQgcGVyIHVzZXIuCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEZ1bGxVc2Vyc0luR3JvdXAoJGdpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0RnVsbFVzZXJzSW5Hcm91cCgkZ2lkKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqIEBkZXByZWNhdGVkCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldFVzZXJzSW5Hcm91cCggJGdpZCA9ICcnLCAkcmVnZXggPSAnJywgJGxpbWl0ID0gJycsICRzb3J0ID0gJycsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwcm9wZXJ0eSA9ICcnLCAkcHJvcHJlZ2V4ID0gJycsICRsb2dnZWRpbm9ubHkgPSAwLCAkc3RhcnRfcmVjb3JkID0gMCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlcnNJbkdyb3VwKCAkZ2lkLCAkcmVnZXgsICRsaW1pdCwgJHNvcnQsICRwcm9wZXJ0eSwgJHByb3ByZWdleCwgJGxvZ2dlZGlub25seSwgJHN0YXJ0X3JlY29yZCApOwogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICogQGRlcHJlY2F0ZWQKICAgICAqLwogICAgZnVuY3Rpb24gZ2V0X2xhc3R1c2VycXVlcnlfbWF0Y2hlcygpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPmdldF9sYXN0dXNlcnF1ZXJ5X21hdGNoZXMoKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqIEBkZXByZWNhdGVkCiAgICAgKi8KICAgIGZ1bmN0aW9uIGdldF9sYXN0dXNlcnF1ZXJ5X2NvdW50KCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+Z2V0X2xhc3R1c2VycXVlcnlfY291bnQoKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpZ25vcmUKICAgICAqIEBkZXByZWNhdGVkCiAgICAgKi8KICAgIGZ1bmN0aW9uIHJlc2V0X2xhc3R1c2VycXVlcnkoKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5yZXNldF9sYXN0dXNlcnF1ZXJ5KCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBUZXN0IGlmIHRoZSBndWlkIHNwZWNpZmllZCBpcyBhIHZhbGlkLCBleGlzdGluZyBncm91cCBpZC4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICRnaWQKICAgICAqIEByZXR1cm4gYm9vbAogICAgICovCiAgICBmdW5jdGlvbiBHcm91cEV4aXN0c0J5SUQoICRnaWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Hcm91cEV4aXN0c0J5SUQoICRnaWQgKTsKICAgIH0KCiAgICAvKioKICAgICAqIFRlc3QgaWYgdGhlIGdyb3VwIG5hbWUgc3BlY2lmaWVkIGlzIGEgdmFsaWQsIGV4aXN0aW5nIGdyb3VwLgogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGhlIGdyb3VwIG5hbWUuCiAgICAgKiBAcmV0dXJuIGJvb2wKICAgICAqLwogICAgZnVuY3Rpb24gR3JvdXBFeGlzdHNCeU5hbWUoICRuYW1lICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R3JvdXBFeGlzdHNCeU5hbWUoICRuYW1lICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBUaGUgZW1haWwgb2YgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlciBmb3IgdGhpcyByZXF1ZXN0LgogICAgICoKICAgICAqIEByZXR1cm4gc3RyaW5nCiAgICAgKi8KICAgIGZ1bmN0aW9uIExvZ2dlZEluRW1haWwoKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Mb2dnZWRJbkVtYWlsKCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdGhlIGVtYWlsIGFkZHJlc3Mgb2YgdGhlIHNwZWNpZmllZCB1c2VyLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVpZAogICAgICogQHJldHVybiBzdHJpbmcKICAgICAqLwogICAgZnVuY3Rpb24gR2V0RW1haWwoJHVpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0RW1haWwoJHVpZCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqIEBpZ25vcmUKICAgICAqLwogICAgZnVuY3Rpb24gQ2xlYXJQcm9wZXJ0eUNhY2hlKCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+Q2xlYXJQcm9wZXJ0eUNhY2hlKCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgYWxsIHByb3BlcnR5IGRlZmluaXRpb25zLgogICAgICoKICAgICAqIEByZXR1cm4gYXJyYXkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0UHJvcGVydHlEZWZucygpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFByb3BlcnR5RGVmbnMoKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCBhIHByb3BlcnR5IGRlZmluaXRpb24gcmVjb3JkIGJ5IGl0cyBuYW1lCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSB0aGUgcHJvcGVydHkgbmFtZS4KICAgICAqIEByZXR1cm4gYXJyYXkKICAgICAqLwogICAgZnVuY3Rpb24gR2V0UHJvcGVydHlEZWZuKCAkbmFtZSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldFByb3BlcnR5RGVmbiggJG5hbWUgKTsKICAgIH0KCiAgICAvKioKICAgICAqIFJldHVybiBzZWxlY3Qgb3B0aW9ucyBmb3IgYSBwcm9wZXJ0eSBhcyBhIHNpbXBsZSwgb3IgYSAyIGRpbWVuc2lvbmFsIGFycmF5CiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgcHJvcGVydHkgbmFtZQogICAgICogQHBhcmFtIGludCAkZGltICBJZiAxLCByZXR1cm4gYSBzaW1wbGUgYXNzb2NpYXRpdmUgYXJyYXkuICBJZiAyLCByZXR1cm4gYSBtdWx0aS1kaW1lbnNpb25hbCBhcnJheSB3aXRoIHByb3BlcnRpZXMgb3B0aW9uX25hbWUsIG9wdGlvbl90ZXh0IGFuZCBjb250cm9sX25hbWUKICAgICAqLwogICAgZnVuY3Rpb24gR2V0U2VsZWN0T3B0aW9ucyggJG5hbWUsICRkaW0gPSAxICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0U2VsZWN0T3B0aW9ucyggJG5hbWUsICRkaW0gKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCB0aGUgdXNlcm5hbWUgZm9yIGEgc3BlY2lmaWVkIHVpZAogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVzZXJpZAogICAgICogQHJldHVybiBzdHJpbmcKICAgICAqLwogICAgZnVuY3Rpb24gR2V0VXNlck5hbWUoJHVzZXJpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlck5hbWUoJHVzZXJpZCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdGhlIHVzZXJpZCBmb3IgYSBzcGVjaWZpZWQgdXNlcm5hbWUKICAgICAqCiAgICAgKiBAcGFyYW0gc3RyaW5nICR1c2VybmFtZQogICAgICogQHJldHVybiBpdAogICAgICovCiAgICBmdW5jdGlvbiBHZXRVc2VySUQoJHVzZXJuYW1lKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRVc2VySUQoJHVzZXJuYW1lKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCB0aGUgZ3JvdXAgbmFtZSBmb3IgYSBzcGVjaWZpZWQgZ3JvdXAgaWQKICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICRncm91cGlkCiAgICAgKiBAcmV0dXJuIHN0cmluZwogICAgICovCiAgICBmdW5jdGlvbiBHZXRHcm91cE5hbWUoJGdyb3VwaWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldEdyb3VwTmFtZSggJGdyb3VwaWQgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCB0aGUgZGVzY3JpcHRpb25mIG9yIGEgc3BlY2lmaWVkIGdyb3VwIGlkCiAgICAgKgogICAgICogQHBhcmFtIGludCAkZ3JvdXBpZAogICAgICogQHJldHVybiBzdHJpbmcKICAgICAqLwogICAgZnVuY3Rpb24gR2V0R3JvdXBEZXNjKCRncm91cGlkKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cERlc2MoICRncm91cGlkICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgYSBsaXN0IG9mIHRoZSBncm91cHMsIGZvciB1c2UgaW4gYSBkcm9wZG93bi4KICAgICAqCiAgICAgKiBAcmV0dXJuIGFycmF5CiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEdyb3VwTGlzdCgpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldEdyb3VwTGlzdCgpOwogICAgfQoKICAgIC8qKgogICAgICogR2V0IGEgZnVsbCBncm91cCBsaXN0LCB3aXRoIGFsbCBpbmZvcm1hdGlvbiBhYm91dCB0aGF0IGdyb3VwLgogICAgICoKICAgICAqIEBwYXJhbSBib29sICR3aXRoX2NvdW50IG9wdGlvbmFsbHkgaW5jbHVkZSBtZW1iZXJzaGlwIGluZm8uCiAgICAgKiBAcmV0dXJuIGFycmF5CiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldEdyb3VwTGlzdEZ1bGwoJHdpdGhfY291bnQgPSBGQUxTRSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0R3JvdXBMaXN0RnVsbCgkd2l0aF9jb3VudCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHaXZlbiBhIGdyb3VwIG5hbWUsIGdldCBhIGdyb3VwIGlkLgogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJGdyb3VwbmFtZQogICAgICogQHJldHVybiBpbnQKICAgICAqLwogICAgZnVuY3Rpb24gR2V0R3JvdXBJRCgkZ3JvdXBuYW1lKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5HZXRHcm91cElEKCAkZ3JvdXBuYW1lICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBHZXQgdGhlIGxpc3Qgb2YgZ3JvdXBzIChieSBuYW1lKSB0aGF0IGEgdXNlciBpcyBhIG1lbWJlciBvZi4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1c2VyaWQKICAgICAqIEByZXR1cm4gc3RyaW5nW10KICAgICAqLwogICAgZnVuY3Rpb24gR2V0TWVtYmVyR3JvdXBzKCR1c2VyaWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkdldE1lbWJlckdyb3VwcygkdXNlcmlkKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdldCB0aGUgZGF0ZSB0aGF0IGEgdXNlciBhY2NvdW50IGV4cGlyZXMuCiAgICAgKgogICAgICogQHBhcmFtICR1aWQKICAgICAqIEByZXR1cm4gaW50IEEgdW5peCB0aW1lc3RhbXAgb2YgdGhlIGV4cGlyeSBkYXRlLgogICAgICovCiAgICBmdW5jdGlvbiBHZXRFeHBpcnlEYXRlKCAkdWlkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0RXhwaXJ5RGF0ZSggJHVpZCApOwogICAgfQoKICAgIC8qKgogICAgICogVGVzdCBpZiB0aGUgc3BlY2lmaWVkIGFjY291bnQgaXMgZXhwaXJlZC4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEByZXR1cm4gYm9vbAogICAgICovCiAgICBmdW5jdGlvbiBJc0FjY291bnRFeHBpcmVkKCAkdWlkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+SXNBY2NvdW50RXhwaXJlZCggJHVpZCApOwogICAgfQoKICAgIC8qKgogICAgICogVGVzdCBpZiB0aGUgc3BlY2lmaWVkIHBsYWluIHRleHQgcGFzc3dvcmQgaXMgc3VpdGFibGUgKG1hdGNoZXMgbW9kdWxlIHNldHRpbmdzKQogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJHBhc3N3b3JkCiAgICAgKiBAcmV0dXJuIGJvb2wKICAgICAqLwogICAgZnVuY3Rpb24gSXNWYWxpZFBhc3N3b3JkKCAkcGFzc3dvcmQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Jc1ZhbGlkUGFzc3dvcmQoICRwYXNzd29yZCApOwogICAgfQoKICAgIC8qKgogICAgICogR2V0IHRoZSBwcm9tcHQgZm9yIGEgdXNlcm5hbWUuCiAgICAgKiBUaGlzIG1heSBjaGFuZ2UgYmFzZWQgb24gbW9kdWxlIHNldHRpbmdzLgogICAgICoKICAgICAqIEByZXR1cm4gc3RyaW5nCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldFVzZXJuYW1lUHJvbXB0KCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+R2V0VXNlcm5hbWVQcm9tcHQoKTsKICAgIH0KCiAgICAvKioKICAgICAqIFRlc3QgaWYgdGhlIGVtYWlsIHNwZWNpZmllZCBpcyB2YWxpZCwgYW5kIG9wdGlvbmFsbHkgbm90IHVzZWQuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkZW1haWwgVGhlIGVtYWlsIGFkZHJlc3MgdG8gdGVzdAogICAgICogQHBhcmFtIGludCAkdWlkIElmIHNwZWNpaWVkLCB0aGlzIHZhbHVlIHdpbGwgYmUgdXNlZCB0byBlbnN1cmUgdGhhdCB0aGUgZW1haWwgYWRkcmVzc3MgaXMgc3RvcmVkIGluIHRoZSBkYXRhYmFzZSBhbmQgbm90IGFzc29jaWF0ZWQgd2l0aCBhbnkgb3RoZXIgdXNlcnMuCiAgICAgKiBAcGFyYW0gYm9vbGVhbiAkY2hlY2tfZXhpc3RpbmcuICBJZiBzcGVjaWZpZWQsIHRoaXMgZmxhZyBpbmRpY2F0ZXMgdGhhdCB0aGUgc3lzdGVtIHNob3VsZCBjaGVjayBpZiB0aGUgZW1haWwgYWRkcmVzcyBpcyBub3QgdXNlZCBjdXJyZW50bHkgaW4gdGhlIHN5c3RlbS4KICAgICAqIEByZXR1cm4gYm9vbGVhbiBpbmRpY2F0aW5nIHdldGhlciB0aGlzIGVtYWlsIGFkZHJlc3MgY2FuIGJlIHVzZWQgd2l0aGluIHRoZSBzeXN0ZW0uCiAgICAgKi8KICAgIGZ1bmN0aW9uIElzVmFsaWRFbWFpbEFkZHJlc3MoICRlbWFpbCwgJHVpZCA9IC0xLCAkY2hlY2tfZXhpc3RpbmcgPSBGQUxTRSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPklzVmFsaWRFbWFpbEFkZHJlc3MoICRlbWFpbCwgJHVpZCwgJGNoZWNrX2V4aXN0aW5nICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBUZXN0IHdldGhlciB0aGUgc3BlY2lmaWVkIHVzZXJuYW1lIGlzIHZhbGlkIGZvciB0aGUgc3lzdGVtLgogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJHVzZXJuYW1lCiAgICAgKiBAcGFyYW0gYm9vbGVhbiAkY2hlY2sgT3B0aW9uYWxseSB0ZXN0IHdoZXRoZXIgdGhpcyB1c2VybmFtZSBpcyBpbiBjdXJyZW50IHVzZS4KICAgICAqIEBwYXJhbSBpbnQgJHVpZCBJZiAkY2hlY2sgaXMgdHJ1ZSwgaW5kaWNhdGUgYW4gb3B0aW9uYWwgdWlkIHRvIGV4Y2x1ZGUgZnJvbSB0aGUgY2hlY2sKICAgICAqIEByZXR1cm4gYm9vbGVhbgogICAgICovCiAgICBmdW5jdGlvbiBJc1ZhbGlkVXNlcm5hbWUoICR1c2VybmFtZSwgJGNoZWNrID0gdHJ1ZSwgJHVpZCA9IC0xICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+SXNWYWxpZFVzZXJuYW1lKCAkdXNlcm5hbWUsICRjaGVjaywgJHVpZCApOwogICAgfQoKICAgIC8qKgogICAgICogVmFsaWRhdGUgdGhlIHVzZXIgcGFzc3dvcmQuCiAgICAgKiBUaGlzIGlzIGlzIG5vdCBhIGxvZ2luIG9wZXJhdGlvbiwgYnV0IGRvZXMgcGVyZm9ybSB0aGUgdmFsaWRhdGlvbiBvZiB0aGUgcGFzc3dvcmQuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkdXNlcm5hbWUgVGhlIHVzZXIgbmFtZQogICAgICogQHBhcmFtIHN0cmluZyAkcGFzc3dvcmQgVGhlIHBsYWluIHRleHQgcGFzc3dvcmQuCiAgICAgKiBAcGFyYW0gc3RyaW5nICRncm91cHMgQW4gb3B0aW9uYWwgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgZ3JvdXAgbmFtZXMuICBJZiBzcGVjaWZpZWQsIHRoZSB1c2VyIG11c3QgYWxzbyBiZWxvbmcgdG8gb25lIG9mIHRoZXNlIGdyb3Vwcy4KICAgICAqIEByZXR1cm4gYm9vbGVhbgogICAgICovCiAgICBmdW5jdGlvbiBDaGVja1Bhc3N3b3JkKCR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZ3JvdXBzID0gJycpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkNoZWNrUGFzc3dvcmQoJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRncm91cHMpOwogICAgfQoKICAgIC8qKgogICAgICogTG9nIHRoZSB1c2VyIGludG8gdGhlIHN5c3RlbS4KICAgICAqCiAgICAgKiBAcGFyYW0gc3RyaW5nICR1c2VybmFtZQogICAgICogQHBhcmFtIHN0cmluZyAkcGFzc3dvcmQgVGhlIHBsYWluIHRleHQgcGFzc3dvcmQKICAgICAqIEBwYXJhbSBzdHJpbmcgJGdyb3VwcyBBbiBvcHRpb25hbCBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBncm91cCBuYW1lcy4gIElmIHNwZWNpZmllZCwgdGhlIHVzZXIgbXVzdCBhbHNvIGJlbG9uZyB0byBvbmUgb2YgdGhlc2UgZ3JvdXBzLgogICAgICogQHBhcmFtIGJvb2xlYW4gJGlnbm9yZWQgTm8gbG9uZ2VyIHVzZWQKICAgICAqIEBwYXJhbSBib29sZWFuICRmb3JjZV9sZ291dCBGb3JjZSB0aGUgdXNlciB0byBhIGxvZ2dlZCBvdXQgc3RhdGUgYmVmb3JlIGJlaW5nIGxvZ2dlZCBpbiBhZ2Fpbi4KICAgICAqIEByZXR1cm4gYXJyYXkgVGhlIGZpcnN0IGVsZW1lbnQgb2YgdGhlIGFycmF5IGlzIGVpdGhlciB0aGUgdWlkIG9yIEZBTFNFLiAgSWYgZmFsc2UsIHRoZSBzZWNvbmQgZWxlbWVudCBpcyBhbiBlcnJvciBzdHJpbmcuCiAgICAgKi8KICAgIGZ1bmN0aW9uIExvZ2luKCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGdyb3VwcyA9ICcnLCAkaWdub3JlZCA9IGZhbHNlLCAkZm9yY2VfbG9nb3V0ID0gZmFsc2UpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkxvZ2luKCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGdyb3VwcywgZmFsc2UsICRmb3JjZV9sb2dvdXQpOwogICAgfQoKICAgIC8qKgogICAgICogVGhlIHVzZXJuYW1lIG9mIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIgZm9yIHRoaXMgcmVxdWVzdC4KICAgICAqCiAgICAgKiBAcmV0dXJuIHN0cmluZwogICAgICovCiAgICBmdW5jdGlvbiBMb2dnZWRJbk5hbWUoKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgICRzdHIgPSAkdGhpcy0+dXNlcm1hbmlwLT5Mb2dnZWRJbk5hbWUoKTsKICAgICAgICByZXR1cm4gJHN0cjsKICAgIH0KCiAgICAvKioKICAgICAqIExvZ291dCB0aGUgc3BlY2lmaWVkIHVzZXIsIG9yIHRoZSBjdXJyZW50IHVzZXIuCiAgICAgKgogICAgICogQHBhcmFtIGludCAkdWlkIEFuIG9wdGlvbmFsIHVpZC4gIElmIG5vdCBzcGVjaWZpZWQsIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1aWQgZm9yIHRoaXMgcmVxdWVzdCB3aWxsIGJlIHVzZWQuCiAgICAgKiBAcGFyYW0gc3RyaW5nICRtZXNzYWdlIEFuIG9wdGlvbmFsIHN0cmluZyB0byBpbmNsdWRlIGluIHRoaWUgaGlzdG9yeSBsb2cuCiAgICAgKi8KICAgIGZ1bmN0aW9uIExvZ291dCgkdWlkID0gJycsJG1lc3NhZ2UgPSAnbG9nb3V0JykKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+TG9nb3V0KCR1aWQsJG1lc3NhZ2UpOwogICAgfQoKICAgIC8qKgogICAgICogTG9nb3V0IHRoZSBzcGVjaWZpZWQgdXNlci4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQgQW4gb3B0aW9uYWwgdWlkLiAgSWYgbm90IHNwZWNpZmllZCwgdGhlIGN1cnJlbnQgbG9nZ2VkIGluIHVpZCBmb3IgdGhpcyByZXF1ZXN0IHdpbGwgYmUgdXNlZC4KICAgICAqIEBwYXJhbSBzdHJpbmcgJG1lc3NhZ2UgQW4gb3B0aW9uYWwgc3RyaW5nIHRvIGluY2x1ZGUgaW4gdGhpZSBoaXN0b3J5IGxvZy4KICAgICAqLwogICAgZnVuY3Rpb24gTG9nb3V0VXNlcigkdWlkLCRldmVudG1zZyA9ICdsb2dvdXQnKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Mb2dvdXRVc2VyKCR1aWQsJGV2ZW50bXNnKTsKICAgIH0KCiAgICAvKioKICAgICAqIFJldHVybiB0aGUgdWlkIG9mIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1c2VyIGZvciB0aGlzIHJlcXVlc3QuCiAgICAgKgogICAgICogQHJldHVybiBpbnQKICAgICAqLwogICAgZnVuY3Rpb24gTG9nZ2VkSW5JZCgpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPkxvZ2dlZEluSWQoKTsKICAgIH0KCiAgICAvKioKICAgICAqIFRlc3Qgd2hldGhlciB0aGUgY3VycmVudCBzaXRlIHZpc2l0b3IgaXMgbG9nZ2VkIGluIHRvIEZyb250RW5kVXNlcnMKICAgICAqCiAgICAgKiBAcmV0dXJuIGJvb2xlYW4KICAgICAqLwogICAgZnVuY3Rpb24gTG9nZ2VkSW4oKQogICAgewogICAgICAgICR0bXAgPSAkdGhpcy0+TG9nZ2VkSW5JZCgpOwogICAgICAgIGlmKCAkdG1wID4gMCApIHJldHVybiBUUlVFOwogICAgICAgIHJldHVybiBGQUxTRTsKICAgIH0KCiAgICAvKioKICAgICAqIFRlc3Qgd2hldGhlciB0aGUgc3BlY2lmaWVkIHVzZXIgaXMgYSBtZW1iZXIgb2YgdGhlIHNwZWNpZmllZCBncm91cC4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1c2VyaWQKICAgICAqIEBwYXJhbSBpbnQgJGdyb3VwaWQKICAgICAqIEByZXR1cm4gYm9vbGVhbgogICAgICovCiAgICBmdW5jdGlvbiBNZW1iZXJPZkdyb3VwKCR1c2VyaWQsJGdyb3VwaWQpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPk1lbWJlck9mR3JvdXAoJHVzZXJpZCwkZ3JvdXBpZCk7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaWdub3JlCiAgICAgKiBAaW50ZXJuYWwKICAgICAqLwogICAgZnVuY3Rpb24gUmVtb3ZlVXNlclRlbXBDb2RlKCAkdWlkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+UmVtb3ZlVXNlclRlbXBDb2RlKCAkdWlkICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBSZW1vdmUgdGhlIHNwZWNpZmllZCB1c2VyIGZyb20gdGhlIHNwZWNpZmllZCBncm91cC4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEBwYXJhbSBpbnQgJGdpZAogICAgICogQHJldHVybiBhcnJheSBUaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgYSBib29sZWFuIHN0YXR1cy4gIElmIGZhbHNlLCB0aGUgc2Vjb25kIGVsZW1lbnQgaXMgYW4gZXJyb3Igc3RyaW5nLgogICAgICovCiAgICBmdW5jdGlvbiBSZW1vdmVVc2VyRnJvbUdyb3VwKCAkdWlkLCAkZ2lkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+UmVtb3ZlVXNlckZyb21Hcm91cCggJHVpZCwgJGdpZCApOwogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICogQGludGVybmFsCiAgICAgKi8KICAgIGZ1bmN0aW9uIFNldFVzZXJUZW1wQ29kZSggJHVpZCwgJGNvZGUgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5TZXRVc2VyVGVtcENvZGUoICR1aWQsICRjb2RlLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycycpICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBVcGRhdGUgdGhlIGluZm9ybWF0aW9uIGZvciBhbiBleGlzdGluZyBwcm9wZXJ0eSBkZWZpbml0aW9uLgogICAgICogVGhpcyBtZXRob2QgZG9lcyBub3QgdXBkYXRlIHRoZSBwcm9wZXJ0aWVzIHRhYmxlIGlmIHRoZSBwcm9wZXJ0eSBpcyBnaXZlbiBhIG5ldyBuYW1lLCBvciBmb3JjZV91bmlxdWUgb3IgZW5jcnlwdCB2YWx1ZXMuCiAgICAgKgogICAgICogQGludGVybmFsCiAgICAgKiBAcGFyYW0gc3RyaW5nICRuYW1lIFRoZSBwcm9wZXJ0eSBkZWZpbml0aW9uIG5hbWUKICAgICAqIEBwYXJhbSBzdHJpbmcgJG5ld25hbWUgQSBuZXcgbmFtZSBmb3IgdGhlIHByb3BlcnR5LgogICAgICogQHBhcmFtIHN0cmluZyAkcHJvbXB0IFRoZSBwcm9wZXJ0eSBwcm9tcHQKICAgICAqIEBwYXJhbSBpbnQgJGxlbmd0aCBUaGUgcHJvcGVydHkgaW5wdXQgZmllbGQgbGVuZ3RoCiAgICAgKiBAcGFyYW0gaW50ICR0eXBlIFRoZSBwcm9wZXJ0eSB0eXBlCiAgICAgKiBAcGFyYW0gaW50ICRtYXhsZW5ndGggVGhlIHByb3BlcnR5IGlucHV0IGZpZWxkIG1heGltdW0gbGVuZ3RoLgogICAgICogQHBhcmFtIHN0cmluZyAkYXR0cmlicyBBIHNlcmlhbGl6ZWQgYXJyYXkgb2YgYXR0cmlidXRlcyBmb3IgdGhlIHByb3BlcnR5CiAgICAgKiBAcGFyYW0gYm9vbCAkZm9yY2VfdW5pcXVlIEZvcmNlIHRoaXMgcHJvcGVydHkgdG8gYmUgdW5pcXVlIGFjcm9zcyBhbGwgdXNlcnMuCiAgICAgKiBAcGFyYW0gYm9vbCAkZW5jcnlwdCBGb3JjZSB0aGUgdmFsdWVzIG9mIHRoaXMgcHJvcGVydHkgdG8gYmUgZW5jcnlwdGVkIHdoZW4gc2F2ZWQuCiAgICAgKiBAcmV0dXJuIGJvb2xlYW4KICAgICAqLwogICAgZnVuY3Rpb24gU2V0UHJvcGVydHlEZWZuKCAkbmFtZSwgJG5ld25hbWUsICRwcm9tcHQsICRsZW5ndGgsICR0eXBlLCAkbWF4bGVuZ3RoID0gMCwgJGF0dHJpYnMgPSAnJywgJGZvcmNlX3VuaXF1ZSA9IDAsICRlbmNyeXB0ID0gMCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFByb3BlcnR5RGVmbiggJG5hbWUsICRuZXduYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCwgJG1heGxlbmd0aCwgJGF0dHJpYnMsICRmb3JjZV91bmlxdWUsICRlbmNyeXB0ICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBTZXQgdGhlIGV4dHJhIGluZm9ybWF0aW9uIGZvciBhIHByb2VydHkuCiAgICAgKgogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgcHJvcGVydHkgbmFtZQogICAgICogQHBhcmFtIHN0cmluZyAkZXh0cmEgVGhlIGV4dHJhIHZhbHVlLgogICAgICovCiAgICBmdW5jdGlvbiBTZXRQcm9wZXJ0eURlZm5FeHRyYSgkbmFtZSwkZXh0cmEpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFByb3BlcnR5RGVmbkV4dHJhKCRuYW1lLCRleHRyYSk7CiAgICB9CgogICAgLyoqCiAgICAgKiBVcGRhdGUgYSBncm91cCBkZWZpbml0aW9uLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJGdpZAogICAgICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgZ3JvdXAgbmFtZQogICAgICogQHBhcmFtIHN0cmluZyAkZGVzYyBBbiBvcHRpb25hbCBncm91cCBkZXNjcmlwdGlvbgogICAgICogQHJldHVybiBhcnJheSBUaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgYSBib29sZWFuIHN0YXR1cy4gIElmIGZhbHNlLCB0aGUgc2Vjb25kIGVsZW1lbnQgaXMgYW4gZXJyb3Igc3RyaW5nLgogICAgICovCiAgICBmdW5jdGlvbiBTZXRHcm91cCggJGdpZCwgJG5hbWUsICRkZXNjID0gbnVsbCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldEdyb3VwKCAkZ2lkLCAkbmFtZSwgJGRlc2MgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEdpdmVuIGEgcGxhaW4gdGV4dCBwYXNzd29yZCwgZW5jcnlwdCBpdCBmb3IgYSB1c2VyCiAgICAgKgogICAgICogQHBhcmFtIGludCAkdWlkCiAgICAgKiBAcGFyYW0gc3RyaW5nICRwYXNzd29yZAogICAgICogQHJldHVybiBzdHJpbmcKICAgICAqLwogICAgZnVuY3Rpb24gRW5jcnlwdFBhc3N3b3JkKCAkdWlkLCAkcGxhaW5fcGFzc3dvcmQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5FbmNyeXB0UGFzc3dvcmQoICR1aWQsICRwbGFpbl9wYXNzd29yZCApOwogICAgfQoKICAgIC8qKgogICAgICogU2V0IHRoZSBwYXNzd29yZCBmb3IgYSB1c2VyCiAgICAgKgogICAgICogQHBhcmFtIGludCAkdWlkCiAgICAgKiBAcGFyYW0gc3RyaW5nICRwYXNzd29yZAogICAgICogQHJldHVybiBhcnJheSBUaGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgYSBib29sZWFuIHN0YXR1cy4gIElmIGZhbHNlLCB0aGUgc2Vjb25kIGVsZW1lbnQgaXMgYW4gZXJyb3Igc3RyaW5nLgogICAgICovCiAgICBmdW5jdGlvbiBTZXRVc2VyUGFzc3dvcmQoICR1aWQsICRwYXNzd29yZCApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFVzZXJQYXNzd29yZCggJHVpZCwgJHBhc3N3b3JkICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBUb2dnbGUgYSB1c2VyIGFjY291bnQgYXMgZGlzYmxlZC4KICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEBwYXJhbSBib29sZWFuICRmbGFnIFdoZXRoZXIgb3Igbm90IHRoZSBhY2NvdW50IGlzIGRpc2FibGVkLgogICAgICovCiAgICBmdW5jdGlvbiBTZXRVc2VyRGlzYWJsZWQoICR1aWQsICRmbGFnID0gVFJVRSApCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgJHRoaXMtPnVzZXJtYW5pcC0+U2V0VXNlckRpc2FibGVkKCR1aWQsJGZsYWcpOwogICAgfQoKICAgIC8qKgogICAgICogVG9nZ2xlIHdoZXRoZXIgYSB1c2VyIGlzIGZvcmNlZCB0byBjaGFuZ2UgaGlzIHBhc3N3b3JkIGF0IHRoZSBuZXh0IGxvZ2luLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVpZAogICAgICogQHBhcmFtIGJvb2xlYW4gJGZsYWcKICAgICAqLwogICAgZnVuY3Rpb24gRm9yY2VQYXNzd29yZENoYW5nZSggJHVpZCwgJGZsYWcgPSBUUlVFICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICAkdGhpcy0+dXNlcm1hbmlwLT5Gb3JjZVBhc3N3b3JkQ2hhbmdlKCR1aWQsJGZsYWcpOwogICAgfQoKICAgIC8qKgogICAgICogVG9nZ2xlIHdoZXRoZXIgYSB1c2VyIGlzIGZvcmNlZCB0byBjaGFuZ2UgaGlzIHNldHRpbmdzIGluIHNvbWUgd2F5IGF0IHRoZSBuZXh0IGxvZ2luLgogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVpZAogICAgICogQHBhcmFtIGJvb2xlYW4gJGZsYWcKICAgICAqLwogICAgZnVuY3Rpb24gRm9yY2VDaGFuZ2VTZXR0aW5ncyggJHVpZCwgJGZsYWcgPSBUUlVFICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICAkdGhpcy0+dXNlcm1hbmlwLT5Gb3JjZUNoYW5nZVNldHRpbmdzKCR1aWQsJGZsYWcpOwogICAgfQoKICAgIC8qKgogICAgICogVG9nZ2xlIHdoZXRoZXIgYSB1c2VyIGlzIGZvcmNlZCB0byByZXZhbGlkYXRlIHRoZW1zZWx2ZXMKICAgICAqCiAgICAgKiBAcGFyYW0gaW50ICR1aWQKICAgICAqIEBwYXJhbSBib29sZWFuICRmbGFnCiAgICAgKi8KICAgIGZ1bmN0aW9uIEZvcmNlVmVyaWZ5KCAkdWlkLCAkZmxhZyA9IFRSVUUgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgICR0aGlzLT51c2VybWFuaXAtPkZvcmNlVmVyaWZ5KCR1aWQsJGZsYWcpOwogICAgfQoKICAgIC8qKgogICAgICogQWRqdXN0IHVzZXIgZGV0YWlscwogICAgICoKICAgICAqIEBwYXJhbSBpbnQgJHVpZAogICAgICogQHBhcmFtIHN0cmluZyAkdXNlcm5hbWUgVGhlIHVzZXIgbmFtZQogICAgICogQHBhcmFtIHN0cmluZyAkcGFzc3dvcmQgVGhlIHVzZXJzIHBsYWluIHRleHQgcGFzc3dvcmQKICAgICAqIEBwYXJhbSBpbnQgJGV4cGlyZXMgQW4gb3B0aW9uYWwgZXhwaXJ5IGRhdGUuCiAgICAgKi8KICAgIGZ1bmN0aW9uIFNldFVzZXIoICR1aWQsICR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZXhwaXJlcyA9IGZhbHNlICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+U2V0VXNlciggJHVpZCwgJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRleHBpcmVzICk7CiAgICB9CgogICAgLyoqCiAgICAgKiBTZXQgZXhwbGljaXQgZ3JvdXAgbWVtYmVyc2hpcC4KICAgICAqIFRoaXMgbWV0aG9kIGRvZXMgbm90IGFsdGVyIHRoZSB1c2VyIHByb3BlcnRpZXMuCiAgICAgKgogICAgICogQHBhcmFtIGludCAkdWlkCiAgICAgKiBAcGFyYW0gaW50W10gJGdycGlkcwogICAgICovCiAgICBmdW5jdGlvbiBTZXRVc2VyR3JvdXBzKCAkdWlkLCAkZ3JwaWRzICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+U2V0VXNlckdyb3VwcyggJHVpZCwgJGdycGlkcyApOwogICAgfQoKICAgIC8qKgogICAgICogQWRkIHVzZXIgdG8gYSBncm91cAogICAgICoKICAgICAqIGRvZXMgbm90IGVmZmVjdCB1c2VyIHByb3BlcnRpZXMKICAgICAqIGRvZXMgbm90IHZhbGlkYXRlIGdpZAogICAgICogdXNlcmlkIGlzIHZhbGlkYXRlZAogICAgICoKICAgICAqIEBwYXJhbSBpbnQgdXNlciBpZAogICAgICogQHBhcmFtIGludCBncm91cCBpZAogICAgICogQHJldHVybiBib29sZWFuCiAgICAgKi8KICAgIGZ1bmN0aW9uIEFkZFVzZXJUb0dyb3VwKCAkdWlkLCAkZ2lkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+QWRkVXNlclRvR3JvdXAoICR1aWQsICRnaWQgKTsKICAgIH0KCiAgICBmdW5jdGlvbiBTZXRVc2VyUHJvcGVydGllcyggJHVpZCwgJHByb3BzICkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+U2V0VXNlclByb3BlcnRpZXMoICR1aWQsICRwcm9wcyApOwogICAgfQoKICAgIGZ1bmN0aW9uIFNldFVzZXJQcm9wZXJ0eSgkdGl0bGUsJGRhdGEpCiAgICB7CiAgICAgICAgJHRoaXMtPl9sb2FkKCk7CiAgICAgICAgcmV0dXJuICR0aGlzLT51c2VybWFuaXAtPlNldFVzZXJQcm9wZXJ0eSgkdGl0bGUsJGRhdGEpOwogICAgfQoKICAgIGZ1bmN0aW9uIElzVXNlclByb3BlcnR5VmFsdWVVbmlxdWUoJHVpZCwkdGl0bGUsJHZhbHVlKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Jc1VzZXJQcm9wZXJ0eVZhbHVlVW5pcXVlKCR1aWQsJHRpdGxlLCR2YWx1ZSk7CiAgICB9CgogICAgZnVuY3Rpb24gU2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJGRhdGEsJHVzZXJpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+U2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJGRhdGEsJHVzZXJpZCk7CiAgICB9CgogICAgZnVuY3Rpb24gVXNlckV4aXN0c0J5SUQoICR1aWQgKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5Vc2VyRXhpc3RzQnlJRCggJHVpZCApOwogICAgfQoKICAgIGZ1bmN0aW9uIFNldEVuY3J5cHRpb25LZXkoJHVpZCA9IC0xLCRmb3JjZSA9IEZBTFNFKQogICAgewogICAgICAgICR0aGlzLT5fbG9hZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+dXNlcm1hbmlwLT5TZXRFbmNyeXB0aW9uS2V5KCAkdWlkLCAkZm9yY2UgKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICovCiAgICBmdW5jdGlvbiBEZWNyeXB0VXNlckRhdGEoJHVpZCwkZGF0YSkKICAgIHsKICAgICAgICAkdGhpcy0+X2xvYWQoKTsKICAgICAgICByZXR1cm4gJHRoaXMtPnVzZXJtYW5pcC0+RGVjcnlwdFVzZXJEYXRhKCR1aWQsJGRhdGEpOwogICAgfQoKICAgIC8qKgogICAgICogQGludGVybmFsCiAgICAgKi8KICAgIGZ1bmN0aW9uIEhhc0NhcGFiaWxpdHkoJGNhcGFiaWxpdHksJHBhcmFtcyA9IGFycmF5KCkpCiAgICB7CiAgICAgICAgc3dpdGNoKCAkY2FwYWJpbGl0eSApIHsKICAgICAgICBjYXNlICdjb250ZW50X3R5cGVzJzoKICAgICAgICBjYXNlICdjb250ZW50X2F0dHJpYnV0ZXMnOgogICAgICAgIGNhc2UgJ3Rhc2tzJzoKICAgICAgICAgICAgcmV0dXJuIFRSVUU7CiAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgICAgIH0KICAgIH0KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICovCiAgICBmdW5jdGlvbiBnZXRfY29udGVudF9hdHRyaWJ1dGVzKCRjb250ZW50X3R5cGUpCiAgICB7CiAgICAgICAgJHRtcCA9IGFycmF5KCk7CiAgICAgICAgJGF0dHIgPSBuZXcgQ21zQ29udGVudFR5cGVQcm9maWxlQXR0cmlidXRlKCdmZXVfZ3JvdXBzJywndmlzaXRvcnMnKTsKICAgICAgICAkYXR0ci0+c2V0X2hlbHBlcihmZXVfY29udGVudF9hdHRyaWJ1dGVfaGVscGVyOjpnZXRfaW5zdGFuY2UoKSk7CiAgICAgICAgJHRtcFtdID0gJGF0dHI7CiAgICAgICAgcmV0dXJuICR0bXA7CiAgICB9CgogICAgLyoqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqLwogICAgc3RhdGljIHB1YmxpYyBmdW5jdGlvbiBwYWdlX3R5cGVfbGFuZ19jYWxsYmFjaygkc3RyKQogICAgewogICAgICAgICRtb2QgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKICAgICAgICAkc3RyID0gc3RyX3JlcGxhY2UoJyAnLCdfJywkc3RyKTsKICAgICAgICBpZiggJHN0ciA9PSAnZm9yZ290X3Bhc3N3b3JkX2VtYWlsJyApICRzdHIgPSAndmVyaWZ5X2VtYWlsJzsKICAgICAgICAkc3RyID0gJ3RwbHR5cGVfJy4kc3RyOwogICAgICAgIGlmKCBpc19vYmplY3QoJG1vZCkgKSByZXR1cm4gJG1vZC0+TGFuZygkc3RyKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBpbnRlcm5hbAogICAgICovCiAgICBzdGF0aWMgcHVibGljIGZ1bmN0aW9uIHJlc2V0X3BhZ2VfdHlwZV9kZWZhdWx0cyhDbXNMYXlvdXRUZW1wbGF0ZVR5cGUgJHR5cGUpCiAgICB7CiAgICAgICAgaWYoICR0eXBlLT5nZXRfb3JpZ2luYXRvcigpICE9ICdGcm9udEVuZFVzZXJzJyApIHRocm93IG5ldyBDbXNMb2dpY0V4Y2VwdGlvbignQ2Fubm90IHJlc2V0IGNvbnRlbnRzIGZvciB0aGlzIHRlbXBsYXRlIHR5cGUnKTsKCiAgICAgICAgJGZuID0gbnVsbDsKICAgICAgICBzd2l0Y2goICR0eXBlLT5nZXRfbmFtZSgpICkgewogICAgICAgIGNhc2UgJ2xvZ2luIGZvcm0nOgogICAgICAgICAgICAkZm4gPSAnb3JpZ19sb2dpbmZvcm0udHBsJzsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnbG9nb3V0IGZvcm0nOgogICAgICAgICAgICAkZm4gPSAnb3JpZ19sb2dvdXRmb3JtLnRwbCc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ2Noc2V0dGluZ3MgZm9ybSc6CiAgICAgICAgICAgICRmbiA9ICdvcmlnX2NoYW5nZXNldHRpbmdzLnRwbCc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ2ZvcmdvdCBwYXNzd29yZCBmb3JtJzoKICAgICAgICAgICAgJGZuID0gJ29yaWdfZm9yZ290cGFzc3dvcmQxLnRwbCc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ2ZvcmdvdCBwYXNzd29yZCBlbWFpbCc6CiAgICAgICAgICAgICRmbiA9ICdvcmlnX2ZvcmdvdHBhc3N3b3JkMi50cGwnOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICdmb3Jnb3QgcGFzc3dvcmQgdmVyaWZ5JzoKICAgICAgICAgICAgJGZuID0gJ29yaWdfZm9yZ290cGFzc3dvcmQzLnRwbCc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ2ZvcmNlIG5ldyBwYXNzd29yZCc6CiAgICAgICAgICAgICRmbiA9ICdvcmlnX2ZvcmNlX25ld3B3X2Zvcm0udHBsJzsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnbG9zdCB1c2VybmFtZSBmb3JtJzoKICAgICAgICAgICAgJGZuID0gJ29yaWdfbG9zdHVuZm9ybV90ZW1wbGF0ZS50cGwnOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICdsb3N0IHVzZXJuYW1lIGNvbmZpcm0nOgogICAgICAgICAgICAkZm4gPSAnb3JpZ19sb3N0dW5mb3JtX2NvbmZpcm1fdGVtcGxhdGUudHBsJzsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAndmlldyB1c2VyJzoKICAgICAgICAgICAgJGZuID0gJ29yaWdfdmlld3VzZXJfdGVtcGxhdGUudHBsJzsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAncmVzZXQgc2Vzc2lvbic6CiAgICAgICAgICAgICRmbiA9ICdvcmlnX3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZS50cGwnOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICd2ZXJpZnlfZm9ybSc6CiAgICAgICAgY2FzZSAndmVyaWZ5IGZvcm0nOgogICAgICAgICAgICAkZm4gPSAnb3JpZ192ZXJpZnlmb3JtLnRwbCc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJHR5cGUtPmdldF9uYW1lKCkuJyBpcyBub3QgYSBrbm93biB0eXBlIGZvciB0aGUgJy4kdHlwZS0+Z2V0X29yaWdpbmF0b3IoKS4nIG9yaWdpbmF0b3InKTsKICAgICAgICB9CgogICAgICAgICRmbiA9IGNtc19qb2luX3BhdGgoX19ESVJfXywndGVtcGxhdGVzJywkZm4pOwogICAgICAgIGlmKCBpc19maWxlKCRmbikgKSByZXR1cm4gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CiAgICB9Cn0gLy8gY2xhc3MKCi8vIEVPRgo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_admintab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBhIGZvcm0gZm9yIHBlcmZvcm1pbmcgdmFyaW91cyBhZG1pbiB0YXNrcwovLyBsaWtlIHJlc2V0dGluZyBleHBpcnkgZGF0ZXMsIGV0YywgZXRjLgogICAgCiRzbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCggJGlkLCAnZG9fYWRtaW50YXNrcycsICRyZXR1cm5pZCwgJ3Bvc3QnLCAnbXVsdGlwYXJ0L2Zvcm0tZGF0YScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9oaWRkZW4nLCAkdGhpcy0+Q3JlYXRlSW5wdXRIaWRkZW4oJGlkLCdhY3RpdmVfdGFiJywnYWRtaW4nKSk7CiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2xlZ2VuZF91c2VyaGlzdG9yeW1haW50ZW5hbmNlJywkdGhpcy0+TGFuZygndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZScpKTsKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknLCR0aGlzLT5MYW5nKCdwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknKSk7CiRleHBvcnRsaXN0ID0gYXJyYXkoKTsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfYWxscmVjb3JkcycpXSA9IC0xOwokZXhwb3J0bGlzdFskdGhpcy0+TGFuZygnZGF0ZV9vbmVob3Vyb2xkJyldID0gJzFoJzsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfc2l4aG91cm9sZCcpXSA9ICc2aCc7CiRleHBvcnRsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3R3ZWx2ZWhvdXJvbGQnKV0gPSAnMTJoJzsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfb25lZGF5b2xkJyldID0gJzFoJzsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfb25ld2Vla29sZCcpXSA9ICcxdyc7CiRleHBvcnRsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3R3b3dlZWtzb2xkJyldID0gJzJ3JzsKJGV4cG9ydGxpc3RbJHRoaXMtPkxhbmcoJ2RhdGVfb25lbW9udGhvbGQnKV0gPSAnMW0nOwokZXhwb3J0bGlzdFskdGhpcy0+TGFuZygnZGF0ZV90aHJlZW1vbnRoc29sZCcpXSA9ICczbSc7CiRleHBvcnRsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX3NpeG1vbnRoc29sZCcpXSA9ICc2bSc7CiRleHBvcnRsaXN0WyR0aGlzLT5MYW5nKCdkYXRlX29uZXllYXJvbGQnKV0gPSAnMXknOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2V4cG9ydHVzZXJoaXN0b3J5JywkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsJ2lucHV0X2V4cG9ydHVzZXJoaXN0b3J5JywkZXhwb3J0bGlzdCkpOwokc21hcnR5LT5hc3NpZ24oJ2J1dHRvbl9leHBvcnR1c2VyaGlzdG9yeScsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnYnV0dG9uX2V4cG9ydHVzZXJoaXN0b3J5JywkdGhpcy0+TGFuZygnZXhwb3J0JykpKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknLCR0aGlzLT5MYW5nKCdwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeScpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9jbGVhcnVzZXJoaXN0b3J5JywkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsJ2lucHV0X2NsZWFydXNlcmhpc3RvcnknLCRleHBvcnRsaXN0KSk7CiRzbWFydHktPmFzc2lnbignYnV0dG9uX2NsZWFydXNlcmhpc3RvcnknLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2J1dHRvbl9jbGVhcnVzZXJoaXN0b3J5JywkdGhpcy0+TGFuZygnY2xlYXInKSkpOwoKLy8gUHJvY2VzcyB0aGUgdGVtcGxhdGUKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbnRhc2tzLnRwbCcpOwoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_authtab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgcmV0dXJuOwppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBTaXRlIFByZWZlcmVuY2VzJykgKSByZXR1cm47Cgokc21hcnR5LT5hc3NpZ24oJ2Zvcm1zdGFydCcsJHRoaXMtPkNHQ3JlYXRlRm9ybVN0YXJ0KCRpZCwnYWRtaW5fc2V0X2F1dGgnKSk7CiRzbWFydHktPmFzc2lnbignZm9ybWVuZCcsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3N1cHBvcnRfbG9zdHVuJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnc3VwcG9ydF9sb3N0dW4nLDEpKTsKJHNtYXJ0eS0+YXNzaWduKCdzdXBwb3J0X2xvc3RwdycsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3N1cHBvcnRfbG9zdHB3JywxKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3JlcXVpcmVfb25lZ3JvdXAnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlX29uZWdyb3VwJykpOwokZ3JvdXBzMSA9ICR0aGlzLT5HZXRHcm91cExpc3QoKTsKJGdyb3VwcyA9IGFycmF5X21lcmdlKCBhcnJheSgiTm9uZSIgPT4gLTEpLCAkZ3JvdXBzMSApOwokc21hcnR5LT5hc3NpZ24oJ2dyb3VwbGlzdCcsYXJyYXlfZmxpcCgkZ3JvdXBzKSk7CiRzbWFydHktPmFzc2lnbignZGVmYXVsdF9ncm91cCcsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfZ3JvdXAnKSk7CiRzbWFydHktPmFzc2lnbigncHdmbGRsZW4nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYXNzd29yZGZsZGxlbmd0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdtaW5wd2xlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ21pbl9wYXNzd29yZGxlbmd0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdtYXhwd2xlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdlbmhhbmNlZHB3JywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZW5oYW5jZWRfcGFzc3dvcmQnKSk7CiRzbWFydHktPmFzc2lnbigncHdyZXF1aXJlZGNoYXJzJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFzc3dvcmRfcmVxdWlyZWRjaGFycycpKTsKCiRzbWFydHktPmFzc2lnbigndW5mbGRsZW4nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZWZsZGxlbmd0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdtaW51bmxlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ21pbl91c2VybmFtZWxlbmd0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdtYXh1bmxlbicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ21heF91c2VybmFtZWxlbmd0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdjb29raWVfa2VlcGFsaXZlJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnY29va2llX2tlZXBhbGl2ZScsMCkpOwokc21hcnR5LT5hc3NpZ24oJ3VzZXJuYW1lX2lzX2VtYWlsJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVfaXNfZW1haWwnKSk7CiRzdHIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnY29va2llbmFtZScpOwppZiggISRzdHIgKSAkc3RyID0gJyc7CiRzbWFydHktPmFzc2lnbigneGNvb2tpZW5hbWUnLCRzdHIpOwokc21hcnR5LT5hc3NpZ24oJ2FsbG93X2NoYW5nZXVzZXJuYW1lJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfY2hhbmdldXNlcm5hbWUnKSk7CiRzbWFydHktPmFzc2lnbignYWxsb3dfZHVwbGljYXRlX2VtYWlscycsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnKSk7CiRzbWFydHktPmFzc2lnbignYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycycsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3NpZ25pbl9idXR0b24nLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzaWduaW5fYnV0dG9uJywkdGhpcy0+TGFuZygnbG9naW4nKSkpOwokc21hcnR5LT5hc3NpZ24oJ3JlcXVpcmVkX2ZpZWxkX21hcmtlcicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX21hcmtlcicsJyonKSk7CiRzbWFydHktPmFzc2lnbigncmVxdWlyZWRfZmllbGRfY29sb3InLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9jb2xvcicsJ2JsdWUnKSk7CiRzbWFydHktPmFzc2lnbignaGlkZGVuX2ZpZWxkX21hcmtlcicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2hpZGRlbl9maWVsZF9tYXJrZXInLCchIScpKTsKJHNtYXJ0eS0+YXNzaWduKCdoaWRkZW5fZmllbGRfY29sb3InLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdoaWRkZW5fZmllbGRfY29sb3InLCdncmVlbicpKTsKCiRzbWFydHktPmFzc2lnbignc2VjdXJlX2ZpZWxkX21hcmtlcicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3NlY3VyZV9maWVsZF9tYXJrZXInLCdeXicpKTsKJHNtYXJ0eS0+YXNzaWduKCdzZWN1cmVfZmllbGRfY29sb3InLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzZWN1cmVfZmllbGRfY29sb3InLCd5ZWxsb3cnKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3BhZ2VpZGZvcmdvdHBhc3N3ZCcsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZGZvcmdvdHBhc3N3ZCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdwYWdlaWRfY2hhbmdlc2V0dGluZ3MnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRfY2hhbmdlc2V0dGluZ3MnKSk7CiRzbWFydHktPmFzc2lnbigncGFnZWlkX2xvZ2luJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZWlkX2xvZ2luJykpOwokc21hcnR5LT5hc3NpZ24oJ3BhZ2VpZF9sb2dvdXQnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRfbG9nb3V0JykpOwokc21hcnR5LT5hc3NpZ24oJ3BhZ2VpZF9vbnZlcmlmeScsJHRoaXMtPkdldFByZWZlcmVuY2UoJ3BhZ2VpZF9vbnZlcmlmeScpKTsKJHNtYXJ0eS0+YXNzaWduKCdwYWdlaWRfYWZ0ZXJ2ZXJpZnknLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRfYWZ0ZXJ2ZXJpZnknKSk7CiRzbWFydHktPmFzc2lnbigncGFnZWlkX2FmdGVyY2hhbmdlc2V0dGluZ3MnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwYWdlaWRfYWZ0ZXJjaGFuZ2VzZXR0aW5ncycpKTsKCi8vIEdldCB0aGUgbnVtYmVyIG9mIHVzZXJzIGluc3RhbGxlZCBpbiBGRVUuCiRxdWVyeSA9ICdTRUxFQ1QgY291bnQoaWQpIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzJzsKJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKJG51c2VycyA9ICRkYi0+R2V0T25lKCRxdWVyeSk7CiRzbWFydHktPmFzc2lnbigndG90YWxfdXNlcl9jb3VudCcsJG51c2Vycyk7CmlmKCAhJHRoaXMtPkdldFByZWZlcmVuY2UoJ3VzZV91c2Vyc2FsdCcpICkgJHNtYXJ0eS0+YXNzaWduKCdwd3NhbHQnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwd3NhbHQnKSk7CgokY2dlY29tID0gY2dlX3V0aWxzOjpnZXRfbW9kdWxlKCdDR0Vjb21tZXJjZUJhc2UnKTsKJHNlbGZyZWcgPSBjZ2VfdXRpbHM6OmdldF9tb2R1bGUoJ1NlbGZSZWdpc3RyYXRpb24nKTsKaWYoICRjZ2Vjb20gJiYgJHNlbGZyZWcgJiYgJHNlbGZyZWctPkdldFByZWZlcmVuY2UoJ2FsbG93cGFpZHJlZ2lzdHJhdGlvbicpICkKICB7CiAgICAkb3B0cyA9IGFycmF5KCk7CiAgICAkb3B0c1snbm9uZSddID0gJHRoaXMtPkxhbmcoJ25vbmUnKTsKICAgICRvcHRzWydkZWxldGUnXSA9ICR0aGlzLT5MYW5nKCdkZWxldGVfdXNlcicpOwogICAgJG9wdHNbJ2V4cGlyZSddID0gJHRoaXMtPkxhbmcoJ2V4cGlyZV91c2VyJyk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2Vjb21tZXJjZV9hY3Rpb25zJywkb3B0cyk7CiAgICAkc21hcnR5LT5hc3NpZ24oJ2Vjb21tX29yZGVyY2FuY2VsbGVkJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZWNvbW1fb3JkZXJjYW5jZWxsZWQnLCdub25lJykpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdlY29tbV9vcmRlcmRlbGV0ZWQnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdlY29tbV9vcmRlcmRlbGV0ZWQnLCdub25lJykpOwogICAgJHNtYXJ0eS0+YXNzaWduKCdlY29tbV9wYWlkcmVnaXN0cmF0aW9uJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbicsMCkpOwogIH0KCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5fYXV0aHRhYi50cGwnKTsKIwojIEVPRgojCg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_clearuserhistory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBHZXQgdGhlIHN0YXJ0IGRhdGUKJGRhdGUgPSAnLTEnOwpzd2l0Y2goICRwYXJhbXNbJ2lucHV0X2NsZWFydXNlcmhpc3RvcnknXSApIHsKY2FzZSAnMWgnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgaG91ciBhZ28nKTsKICAgIGJyZWFrOwpjYXNlICc2aCc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnNiBob3VycyBhZ28nKTsKICAgIGJyZWFrOwpjYXNlICcxMmgnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEyIGhvdXJzIGFnbycpOwogICAgYnJlYWs7CmNhc2UgJzFkJzoKICAgICRkYXRlID0gc3RydG90aW1lKCcxIGRheSBhZ28nKTsKICAgIGJyZWFrOwpjYXNlICcxdyc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMSB3ZWVrIGFnbycpOwogICAgYnJlYWs7CmNhc2UgJzJ3JzoKICAgICRkYXRlID0gc3RydG90aW1lKCcyIHdlZWtzIGFnbycpOwogICAgYnJlYWs7CmNhc2UgJzFtJzoKICAgICRkYXRlID0gc3RydG90aW1lKCcxIG1vbnRoIGFnbycpOwogICAgYnJlYWs7CmNhc2UgJzNtJzoKICAgICRkYXRlID0gc3RydG90aW1lKCczIG1vbnRocyBhZ28nKTsKICAgIGJyZWFrOwpjYXNlICc2bSc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnNiBtb250aHMgYWdvJyk7CiAgICBicmVhazsKY2FzZSAnMXknOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgeWVhciBhZ28nKTsKICAgIGJyZWFrOwp9CgokZGIgPSBcY2dlX3V0aWxzOjpnZXRfZGIoKTsKdHJ5IHsKICAgICRkYi0+QmVnaW5UcmFucygpOwogICAgJHF1ZXJ5ID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IjsKICAgICRwYXJtcyA9IGFycmF5KCk7CiAgICBpZiggJGRhdGUgIT0gLTEgKSAgewogICAgICAgICRxdWVyeSAuPSAiIFdIRVJFIHJlZmRhdGUgPCA/IjsKICAgICAgICAkcGFybXNbXSA9IHRyaW0oJGRiLT5EQlRpbWVTdGFtcCgkZGF0ZSksIiciKTsKICAgIH0KCiAgICAkZGItPkV4ZWN1dGUoICRxdWVyeSwgJHBhcm1zICk7CiAgICAkZGItPkNvbW1pdFRyYW5zKCk7CiAgICAkdGhpcy0+UmVkaXJlY3RUb1RhYigkaWQsJ2FkbWluJyk7Cn0KY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICAkZGItPlJvbGxiYWNrVHJhbnMoKTsKICAgIGF1ZGl0KCcnLCR0aGlzLT5HZXROYW1lKCksJ1Byb2JsZW0gY2xlYXJpbmcgdXNlciBoaXN0b3J5Jyk7CiAgICBkZWJ1Z190b19sb2coX19NRVRIT0RfXyk7CiAgICBkZWJ1Z190b19sb2coJGUtPkdldE1lc3NhZ2UoKSk7Cn0KLy8gRU9GCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_exportuserhistory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBHZXQgdGhlIHN0YXJ0IGRhdGUKJGRhdGUgPSAnLTEnOwpzd2l0Y2goICRwYXJhbXNbJ2lucHV0X2V4cG9ydHVzZXJoaXN0b3J5J10gKQogIHsKICBjYXNlICcxaCc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMSBob3VyIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnNmgnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzYgaG91cnMgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICcxMmgnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEyIGhvdXJzIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnMWQnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgZGF5IGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnMXcnOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgd2VlayBhZ28nKTsKICAgIGJyZWFrOwogIGNhc2UgJzJ3JzoKICAgICRkYXRlID0gc3RydG90aW1lKCcyIHdlZWtzIGFnbycpOwogICAgYnJlYWs7CiAgY2FzZSAnMW0nOgogICAgJGRhdGUgPSBzdHJ0b3RpbWUoJzEgbW9udGggYWdvJyk7CiAgICBicmVhazsKICBjYXNlICczbSc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMyBtb250aHMgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICc2bSc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnNiBtb250aHMgYWdvJyk7CiAgICBicmVhazsKICBjYXNlICcxeSc6CiAgICAkZGF0ZSA9IHN0cnRvdGltZSgnMSB5ZWFyIGFnbycpOwogICAgYnJlYWs7CiAgfQoKJHVzZXJpbmZvID0gYXJyYXkoKTsKCi8vIHdlIHdhbnQgdG8gZXhwb3J0IGEgY3N2IGZpbGUgZG8gd2UKaGVhZGVyKCdDb250ZW50LURlc2NyaXB0aW9uOiBGaWxlIFRyYW5zZmVyJyk7CmhlYWRlcignQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi9mb3JjZS1kb3dubG9hZCcpOwpoZWFkZXIoJ0NvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPXVzZXJoaXN0b3J5LmNzdicpOwp3aGlsZShAb2JfZW5kX2NsZWFuKCkpOwoKJGRiID0mICR0aGlzLT5HZXREYigpOwokZG9uZSA9IDA7CiRzdGFydCA9IDA7CiRudW0gPSAyOyAvLyB0b2RvLCBzaG91bGQgYmUgYSBwcmVmZXJlbmNlCiRxYmFzZSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5ICI7CiRwYXJtcyA9IGFycmF5KCk7CmlmKCAkZGF0ZSAhPSAtMSApCiAgewogICAgJHFiYXNlIC49ICcgV0hFUkUgcmVmZGF0ZSA8ID8nOwogICAgJHBhcm1zW10gPSB0cmltKCRkYi0+REJUaW1lU3RhbXAoJGRhdGUpLCInIik7CiAgfQoKd2hpbGUoICRkb25lID09IDAgKQogIHsKICAgICRxdWVyeSA9ICRxYmFzZSAuICIgTElNSVQgJHN0YXJ0LCRudW0iOwogICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcXVlcnksICRwYXJtcyApOwogICAgaWYoICEkZGJyZXN1bHQgfHwgKCRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKSA9PSAwKSApCiAgICAgIHsKCSRkb25lID0gMTsKCWJyZWFrOwogICAgICB9CgogICAgJG91dHB1dCA9ICcnOwogICAgd2hpbGUoICRkYnJlc3VsdCAmJiAhJGRicmVzdWx0LT5FT0YgKQogICAgICB7CgkkZmllbGRzID0gJGRicmVzdWx0LT5maWVsZHM7CgkKCSR1aWQgPSAkZmllbGRzWyd1c2VyaWQnXTsKCWlmKCAkdWlkID4gMCApCgkgIHsKCSAgICBpZiggIWlzc2V0KCAkdXNlcmluZm9bJHVpZF0gKSApCgkgICAgICB7CgkJJHJlcyA9ICR0aGlzLT5HZXRVc2VySW5mbygkdWlkKTsKCQkkdXNlcmluZm9bJHVpZF0gPSAkcmVzWzFdOwoJICAgICAgfQoJICAgICR1c2VybmFtZSA9ICR1c2VyaW5mb1skdWlkXVsndXNlcm5hbWUnXTsKCSAgICAkZmllbGRzW10gPSAkdXNlcmluZm9bJHVpZF1bJ3VzZXJuYW1lJ107CgkgIH0KCWVsc2UKCSAgewoJICAgICRmaWVsZHNbXSA9ICd1bmtub3duJzsKCSAgfQoKCSRvdXRwdXQgLj0gaW1wbG9kZSgnLCcsJGZpZWxkcykuIlxuIjsKCgkvLyBjaGVhdCwgY29udmVydCB1c2VyaWQgdG8gdXNlcm5hbWUKCSRkYnJlc3VsdC0+TW92ZU5leHQoKTsKICAgICAgfQogICAgZWNobyAkb3V0cHV0OwogICAgJHN0YXJ0ICs9ICRudW07CiAgfQpleGl0KCk7CgoKLy8gRU9GCj8+]]></data>
	</file>
	<file>
	  <filename>/function.admin_groupstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiRncm91cHMgPSAkdGhpcy0+R2V0R3JvdXBMaXN0RnVsbChUUlVFKTsKJHJvd2NsYXNzID0gJ3JvdzEnOwoKJHRwbCA9ICR0aGlzLT5DcmVhdGVTbWFydHlUZW1wbGF0ZSgnZ3JvdXBsaXN0LnRwbCcpOwokdGhlbWVPYmplY3QgPSBjbXNfdXRpbHM6OmdldF90aGVtZV9vYmplY3QoKTsKJHByb3BkZWZucyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CiRuZGVmcyA9IChpc19hcnJheSgkcHJvcGRlZm5zKSAmJiBjb3VudCgkcHJvcGRlZm5zKSk/Y291bnQoJHByb3BkZWZucyk6MDsKJHJvd2FycmF5ID0gYXJyYXkoKTsKJHRwbC0+YXNzaWduKCAnZ3JvdXBzZm91bmQnLCAkdGhpcy0+TGFuZygnZ3JvdXBzZm91bmQnKSk7CiR0cGwtPmFzc2lnbiggJ25wcm9wcycsJG5kZWZzKTsKZm9yZWFjaCggJGdyb3VwcyBhcyAkb25lZ3JvdXAgKSB7CiAgICBpZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ2xpc3Rncm91cHMnKSApIHsKICAgICAgICAkb25lcm93ID0gbmV3IHN0ZENsYXNzKCk7CiAgICAgICAgJG9uZXJvdy0+aWQgPSAkb25lZ3JvdXBbJ2lkJ107CiAgICAgICAgJG9uZXJvdy0+bmFtZSA9ICR0aGlzLT5DcmVhdGVMaW5rKCAkaWQsICdhZGRncm91cCcsICRyZXR1cm5pZCwgJG9uZWdyb3VwWydncm91cG5hbWUnXSwgYXJyYXkgKCdncm91cF9pZCcgPT4gJG9uZWdyb3VwWydpZCddKSk7CiAgICAgICAgJG9uZXJvdy0+ZGVzYyA9ICRvbmVncm91cFsnZ3JvdXBkZXNjJ107CiAgICAgICAgJG9uZXJvdy0+bnVzZXJzID0gJyc7CiAgICAgICAgaWYoIGlzc2V0KCRvbmVncm91cFsnY291bnQnXSkgKSAkb25lcm93LT5udXNlcnMgPSAkb25lZ3JvdXBbJ2NvdW50J107CiAgICAgICAgJG9uZXJvdy0+cm93Y2xhc3MgPSAkcm93Y2xhc3M7CgogICAgICAgIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnZWRpdGdyb3VwcycpICYmICRuZGVmcyApIHsKICAgICAgICAgICAgJG9uZXJvdy0+ZWRpdGxpbmsgPQogICAgICAgICAgICAgICAgJHRoaXMtPkNyZWF0ZUxpbmsgKCRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlICgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywkdGhpcy0+TGFuZyAoJ2VkaXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5ICgnZ3JvdXBfaWQnID0+ICRvbmVncm91cFsnaWQnXSkpOwogICAgICAgICAgICAkb25lcm93LT5leHBvcnRsaW5rID0KICAgICAgICAgICAgICAgICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdhZG1pbl9leHBvcnRncm91cCcsICRyZXR1cm5pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnPGltZyBzcmM9IicuJHRoaXMtPkdldE1vZHVsZVVSTFBhdGgoKS4nL2ljb25zL3htbF9yc3MuZ2lmIiBhbHQ9InhtbCIvPicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXkoJ2dyb3VwX2lkJz0+JG9uZWdyb3VwWydpZCddLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkaXNhYmxlX2J1ZmZlcic9PjEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Rpc2FibGVfdGhlbWUnPT4xKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnJywgZmFsc2UsIGZhbHNlLCAnY2xhc3M9InN5c3RlbWljb24iIHRpdGxlPSInLiR0aGlzLT5MYW5nKCd0aXRsZV9yc3NleHBvcnQnKS4nIicpOwogICAgICAgIH0KICAgICAgICBpZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3JlbW92ZWdyb3VwcycpICYmICRvbmVyb3ctPm51c2VycyA9PSAwICkgewogICAgICAgICAgICAkb25lcm93LT5kZWxldGVsaW5rID0KICAgICAgICAgICAgICAgICR0aGlzLT5DcmVhdGVMaW5rICgkaWQsICdkb19kZWxldGVncm91cCcsICRyZXR1cm5pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSAoJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywkdGhpcy0+TGFuZyAoJ2RlbGV0ZScpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXkgKCdncm91cF9pZCcgPT4gJG9uZWdyb3VwWydpZCddKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+TGFuZyAoJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnKSk7CiAgICAgICAgfQoKICAgICAgICAkcm93YXJyYXlbXSA9ICRvbmVyb3c7CiAgICAgICAgKCRyb3djbGFzcyA9PSAicm93MSIgPyAkcm93Y2xhc3MgPSAicm93MiIgOiAkcm93Y2xhc3MgPSAicm93MSIpOwogICAgfQoKICAgICR0cGwtPmFzc2lnbignaXRlbWNvdW50Jyxjb3VudCgkcm93YXJyYXkpKTsKICAgICR0cGwtPmFzc2lnbignaXRlbXMnLCRyb3dhcnJheSk7CiAgICAkdHBsLT5hc3NpZ24oJ2dyb3Vwc2ZvdW5kJywgJHRoaXMtPkxhbmcoJ2dyb3Vwc2ZvdW5kJykgKTsKICAgICR0cGwtPmFzc2lnbignaWR0ZXh0JywgJHRoaXMtPkxhbmcoJ2lkJykpOwogICAgJHRwbC0+YXNzaWduKCduYW1ldGV4dCcsICR0aGlzLT5MYW5nKCduYW1lJykpOwogICAgJHRwbC0+YXNzaWduKCdkZXNjdGV4dCcsICR0aGlzLT5MYW5nKCdkZXNjcmlwdGlvbicpKTsKfQoKaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdhZGRncm91cCcpICkgewogICAgJHRwbC0+YXNzaWduKCdwcm9wY291bnQnLGNvdW50KCRwcm9wZGVmbnMpKTsKICAgIGlmKCBpc19hcnJheSgkcHJvcGRlZm5zKSAmJiBjb3VudCgkcHJvcGRlZm5zKSA+IDAgKSB7CiAgICAgICAgJHRwbC0+YXNzaWduKCdhZGRncm91cGxpbmsnLAogICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnYWRkZ3JvdXAnLCAkcmV0dXJuaWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL25ld29iamVjdC5naWYnLCR0aGlzLT5MYW5nKCdhZGRncm91cCcpLCcnLCcnLCdzeXN0ZW1pY29uJykpLicgJy4KICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2FkZGdyb3VwJywgJHJldHVybmlkLCR0aGlzLT5MYW5nKCdhZGRncm91cCcpKSk7CiAgICB9CgogICAgJHRwbC0+YXNzaWduKCdpbXBvcnRsaW5rJywKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnYWRtaW5faW1wb3J0Z3JvdXAnLCAkcmV0dXJuaWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGVtZU9iamVjdC0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vaW1wb3J0LmdpZicsICR0aGlzLT5MYW5nKCdpbXBvcnRncm91cCcpLCcnLCcnLCdzeXN0ZW1pY29uJykpLicgJy4KICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlTGluayggJGlkLCAnYWRtaW5faW1wb3J0Z3JvdXAnLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdpbXBvcnRncm91cCcpKSk7Cn0KCiR0cGwtPmRpc3BsYXkoKTsKCi8vIEVPRgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_prefstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyBmaWxsIG91dCB0aGUgdGVtcGxhdGUKJHNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2RvX3NldHByZWZzJykpOwoKJG1vbnRocyA9IGFycmF5KCk7CmZvciggJGkgPSA1MjA7ICRpID4gMDsgJGktLSApIHsKICAgICRtb250aHNbJGldID0gJGk7Cn0KCiRzbWFydHktPmFzc2lnbignYXV0b19jcmVhdGVfdW5rbm93bicsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2F1dG9fY3JlYXRlX3Vua25vd24nLDApKTsKCiRhdXRoX21vZHVsZXMgPSBtb2R1bGVfaGVscGVyOjpnZXRfbW9kdWxlc193aXRoX21ldGhvZCgnR2V0RkVVQXV0aENvbnN1bWVyJyk7CiRhdXRoX21vZHVsZXMgPSBjZ2VfYXJyYXk6Omhhc2hfcHJlcGVuZCgkYXV0aF9tb2R1bGVzLCdfX0JVSUxUSU5fXycsJHRoaXMtPkxhbmcoJ2F1dGhfYnVpbHRpbicpKTsKJHNtYXJ0eS0+YXNzaWduKCdhdXRoX21vZHVsZXMnLCRhdXRoX21vZHVsZXMpOwokc21hcnR5LT5hc3NpZ24oJ2F1dGhfbW9kdWxlJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYXV0aF9tb2R1bGUnLCdfX0JVSUxUSU5fXycpKTsKCiRzbWFydHktPmFzc2lnbignaW5wdXRfcmFuZG9tdXNlcm5hbWUnLAoJCVJSVXRpbHM6Om15Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdpbnB1dF9yYW5kb211c2VybmFtZScsIDEsCgkJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VfcmFuZG9tdXNlcm5hbWUnLDApKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2V4cGlyZWFnZScsCgkJJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCdpbnB1dF9leHBpcmVhZ2UnLCRtb250aHMsLTEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdleHBpcmVhZ2VfbW9udGhzJywxMjApKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9zZXNzaW9udGltZW91dCcsICR0aGlzLT5MYW5nKCdwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfc2Vzc2lvbnRpbWVvdXQnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnaW5wdXRfc2Vzc2lvbnRpbWVvdXQnLAoJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCd1c2VyX3Nlc3Npb25fZXhwaXJlcycpLCA2LCA2ICkpOwoKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnLAoJCSR0aGlzLT5MYW5nKCdwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucycpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJywKCQlSUlV0aWxzOjpteUNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnaW5wdXRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucycsIDEsCgkJCQkJICAgICAgICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdmZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJykpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnLCAkdGhpcy0+TGFuZygnaW5mb19mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJykpOwoKCgokc21hcnR5LT5hc3NpZ24oJ3N1Ym1pdCcsCgkJJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0ICgkaWQsICdzdWJtaXQnLAoJCQkJCSAgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpLCcnLCcnLAoJCQkJCSAgJHRoaXMtPkxhbmcoJ2NvbmZpcm1fc3VibWl0cHJlZnMnKSkpOwokc21hcnR5LT5hc3NpZ24gKCdjYW5jZWwnLAoJCSAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQgKCRpZCwgJ2NhbmNlbCcsCgkJCQkJICAgJHRoaXMtPkxhbmcoJ2NhbmNlbCcpKSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnLAoJCSR0aGlzLT5MYW5nKCdwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJykpOwokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2FsbG93X3JlcGVhdGVkX2xvZ2lucycsCgkJUlJVdGlsczo6bXlDcmVhdGVJbnB1dENoZWNrYm94KCAkaWQsICdpbnB1dF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnLCAxLAoJCQkJCQkkdGhpcy0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfcmVwZWF0ZWRfbG9naW5zJykpKTsKCgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywKCQkJCSR0aGlzLT5MYW5nKCdwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywKCQkJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJywKCQkJCQkJCQkJICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnKSw0MCkpOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnLAoJCQkJJHRoaXMtPkxhbmcoJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJywKCQkJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdpbnB1dF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnLAoJCQkJCQkgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucycpLDQwLDQwKSk7Cgokbm90aWZpY2F0aW9uX2xpc3QgPSBhcnJheSgpOwokbm90aWZpY2F0aW9uX2xpc3RbJHRoaXMtPkxhbmcoJ09uTG9naW4nKV0gPSAnT25Mb2dpbic7CiRub3RpZmljYXRpb25fbGlzdFskdGhpcy0+TGFuZygnT25Mb2dvdXQnKV0gPSAnT25Mb2dvdXQnOwokbm90aWZpY2F0aW9uX2xpc3RbJHRoaXMtPkxhbmcoJ09uRXhwaXJlVXNlcicpXSA9ICdPbkV4cGlyZVVzZXInOwokbm90aWZpY2F0aW9uX2xpc3RbJHRoaXMtPkxhbmcoJ09uQ3JlYXRlVXNlcicpXSA9ICdPbkNyZWF0ZVVzZXInOwokbm90aWZpY2F0aW9uX2xpc3RbJHRoaXMtPkxhbmcoJ09uRGVsZXRlVXNlcicpXSA9ICdPbkRlbGV0ZVVzZXInOwokbm90aWZpY2F0aW9uX2xpc3RbJHRoaXMtPkxhbmcoJ09uVXBkYXRlVXNlcicpXSA9ICdPblVwZGF0ZVVzZXInOwokbm90aWZpY2F0aW9uX2xpc3RbJHRoaXMtPkxhbmcoJ09uQ3JlYXRlR3JvdXAnKV0gPSAnT25DcmVhdGVHcm91cCc7CiRub3RpZmljYXRpb25fbGlzdFskdGhpcy0+TGFuZygnT25VcGRhdGVHcm91cCcpXSA9ICdPblVwZGF0ZUdyb3VwJzsKJG5vdGlmaWNhdGlvbl9saXN0WyR0aGlzLT5MYW5nKCdPbkRlbGV0ZUdyb3VwJyldID0gJ09uRGVsZXRlR3JvdXAnOwokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9ub3RpZmljYXRpb25zJywkdGhpcy0+TGFuZygncHJvbXB0X25vdGlmaWNhdGlvbnMnKSk7CiRub3RpZmljYXRpb25zID0gZXhwbG9kZSgnLCcsJHRoaXMtPkdldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbnMnLCcnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfbm90aWZpY2F0aW9ucycsCgkJJHRoaXMtPkNyZWF0ZUlucHV0U2VsZWN0TGlzdCgkaWQsJ25vdGlmaWNhdGlvbnNbXScsJG5vdGlmaWNhdGlvbl9saXN0LCAkbm90aWZpY2F0aW9ucykpOwoKJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfbm90aWZpY2F0aW9uX2FkZHJlc3MnLCR0aGlzLT5MYW5nKCdwcm9tcHRfbm90aWZpY2F0aW9uX2FkZHJlc3MnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfbm90aWZpY2F0aW9uX2FkZHJlc3MnLAoJCSR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCdub3RpZmljYXRpb25fYWRkcmVzcycsCgkJCQkgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbl9hZGRyZXNzJyksNTAsMjU1KSk7Cgokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCcsJHRoaXMtPkxhbmcoJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCcpKTsKJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9ub3RpZmljYXRpb25fc3ViamVjdCcsCgkJJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsJ25vdGlmaWNhdGlvbl9zdWJqZWN0JywKCQkJCSAgICAgICAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbm90aWZpY2F0aW9uX3N1YmplY3QnKSw1MCwyNTUpKTsKCiRzbWFydHktPmFzc2lnbigncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZScsJHRoaXMtPkxhbmcoJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnKSk7CiRzbWFydHktPmFzc2lnbignaW5wdXRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJywKCQkkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoZmFsc2UsJGlkLAoJCQkJICAgICAgJHRoaXMtPkdldFRlbXBsYXRlKCdub3RpZmljYXRpb25fdGVtcGxhdGUnKSwKCQkJCSAgICAgICdub3RpZmljYXRpb25fdGVtcGxhdGUnKSk7Cgokc21hcnR5LT5hc3NpZ24oJ2luZm9fc3RhcicsJHRoaXMtPkxhbmcoJ2luZm9fc3RhcicpKTsKJG51bSA9ICR0aGlzLT5Db3VudFRlbXBDb2RlUmVjb3JkcygpOwppZiggJG51bSApCiAgICB7CiAgICAgICRzbWFydHktPmFzc2lnbigncHJvbXB0X251bXJlc2V0cmVjb3JkcycsCgkJICAgICAgJHRoaXMtPkxhbmcoJ3Byb21wdF9udW1yZXNldHJlY29yZCcpKTsKICAgICAgJHNtYXJ0eS0+YXNzaWduKCdkYXRhX251bXJlc2V0cmVjb3JkcycsICRudW0pOyAvL3RvZG8KICAgICAgJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9yZW1vdmVhbGwnLAoJCSAgICAgICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsJ2lucHV0X3JlbW92ZWFsbCcsCgkJCQkJICAgICAgICR0aGlzLT5MYW5nKCdyZW1vdmVhbGwnKSwKCQkJCQkgICAgICAgJ29uY2xpY2s9InJldHVybiBjb25maXJtKFwnJy4kdGhpcy0+TGFuZygnYXJleW91c3VyZScpLidcJykiJykpOwogICAgICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X3JlbW92ZTF3ZWVrJywKCQkgICAgICAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCdpbnB1dF9yZW1vdmUxd2VlaycsCgkJCQkJICAgICAgICR0aGlzLT5MYW5nKCdyZW1vdmUxd2VlaycpLAoJCQkJCSAgICAgICAnb25jbGljaz0icmV0dXJuIGNvbmZpcm0oXCcnLiR0aGlzLT5MYW5nKCdhcmV5b3VzdXJlJykuJ1wnKSInKSk7CgogICAgICAkc21hcnR5LT5hc3NpZ24oJ2lucHV0X3JlbW92ZTFtb250aCcsCgkJICAgICAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwnaW5wdXRfcmVtb3ZlMW1vbnRoJywKCQkJCQkgICAgICAgJHRoaXMtPkxhbmcoJ3JlbW92ZTFtb250aCcpLAoJCQkJCSAgICAgICAnb25jbGljaz0icmV0dXJuIGNvbmZpcm0oXCcnLiR0aGlzLT5MYW5nKCdhcmV5b3VzdXJlJykuJ1wnKSInKSk7CiAgICB9Cgokc21hcnR5LT5hc3NpZ24oJ2ZvcmNlbG9nb3V0X3RpbWVzJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZm9yY2Vsb2dvdXRfdGltZXMnKSk7CiRzbWFydHktPmFzc2lnbignZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZScsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnKSk7CiRzbWFydHktPmFzc2lnbignZXhwaXJldXNlcnNfaW50ZXJ2YWwnLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdleHBpcmV1c2Vyc19pbnRlcnZhbCcpKTsKCiR0bXAgPSBleHBsb2RlKCcsJywkdGhpcy0+R2V0UHJlZmVyZW5jZSgncGFnZXR5cGVfZ3JvdXBzJywnJykpOwokc21hcnR5LT5hc3NpZ24oJ3BhZ2V0eXBlX2dyb3VwcycsJHRtcCk7CiRncm91cHMxID0gJHRoaXMtPkdldEdyb3VwTGlzdCgpOwokc21hcnR5LT5hc3NpZ24oJ2FsbF9ncm91cHMnLGFycmF5X2ZsaXAoJGdyb3VwczEpKTsKCiRzbWFydHktPmFzc2lnbignZW5kZm9ybScsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7CmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5wcmVmcy50cGwnKTsKCi8vIEVPRgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_propertiestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCiR0cGwgPSAkdGhpcy0+Q3JlYXRlU21hcnR5VGVtcGxhdGUoJ3Byb3BlcnRpZXNmb3JtLnRwbCcpOwokbWVzc2FnZSA9ICcnOwppZiggaXNzZXQoICRwYXJhbXNbJ21lc3NhZ2UnXSApICkgJHRwbC0+YXNzaWduKCdtZXNzYWdlJywgJG1lc3NhZ2UpOwokdHBsLT5hc3NpZ24oJ3RpdGxlJywkdGhpcy0+TGFuZygncHJvcGVydGllcycpKTsKJHRoZW1lT2JqZWN0ID0gY21zX3V0aWxzOjpnZXRfdGhlbWVfb2JqZWN0KCk7Cgokcm93YXJyYXkgPSBhcnJheSgpOwokcm93Y2xhc3MgPSAncm93MSc7CiRrZXlzID0gYXJyYXlfa2V5cygkdGhpcy0+dHlwZXMpOwoKJGRlZm5zID0gJHRoaXMtPkdldFByb3BlcnR5RGVmbnMoKTsKaWYoIGlzX2FycmF5KCRkZWZucykgKSB7CiAgICBmb3JlYWNoKCAkZGVmbnMgYXMgJGRlZm4gKSB7CiAgICAgICAgJGNhbl9kZWxldGUgPSBUUlVFOwogICAgICAgICRwcm9wZ3JvdXBzID0gJHRoaXMtPkdldFByb3BlcnR5R3JvdXBSZWxhdGlvbnMoJGRlZm5bJ25hbWUnXSk7CiAgICAgICAgaWYoIGNvdW50KCRwcm9wZ3JvdXBzKSApIHsKICAgICAgICAgICAgZm9yZWFjaCggJHByb3Bncm91cHMgYXMgJHJlYyApIHsKICAgICAgICAgICAgICAgIGlmKCAkcmVjWydyZXF1aXJlZCddID4gMSApIHsKICAgICAgICAgICAgICAgICAgICAkY2FuX2RlbGV0ZSA9IEZBTFNFOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAkb25lcm93ID0gbmV3IFN0ZENsYXNzKCk7CiAgICAgICAgaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdlZGl0cHJvcCcpICYmICFpc3NldCgkZGVmblsnZXh0cmEnXVsnbW9kdWxlJ10pICkgewogICAgICAgICAgICAkb25lcm93LT5uYW1lID0gJHRoaXMtPkNyZWF0ZUxpbmsoICRpZCwgJ2FkZHByb3AnLCAkcmV0dXJuaWQsICRkZWZuWyduYW1lJ10sYXJyYXkoJ3Byb3BuYW1lJyA9PiAkZGVmblsnbmFtZSddKSk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkb25lcm93LT5uYW1lID0gJGRlZm5bJ25hbWUnXTsKICAgICAgICAgICAgaWYoIGlzc2V0KCRkZWZuWydleHRyYSddWydtb2R1bGUnXSkgKSB7CiAgICAgICAgICAgICAgICAkb25lcm93LT5uYW1lIC49ICcmbmJzcDs8ZW0gdGl0bGU9IicuJHRoaXMtPkxhbmcoJ3RpdGxlX3Byb3Btb2R1bGUnKS4nIj4oJy4kZGVmblsnZXh0cmEnXVsnbW9kdWxlJ10uJyk8L2VtPic7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgJG9uZXJvdy0+ZW5jcnlwdCA9ICRkZWZuWydlbmNyeXB0J107CiAgICAgICAgJG9uZXJvdy0+cHJvbXB0ID0gJGRlZm5bJ3Byb21wdCddOwogICAgICAgICRvbmVyb3ctPnR5cGUgPSAkdGhpcy0+TGFuZygka2V5c1skZGVmblsndHlwZSddXSk7CiAgICAgICAgJG9uZXJvdy0+bGVuZ3RoID0gJGRlZm5bJ2xlbmd0aCddOwogICAgICAgICRvbmVyb3ctPmZvcmNlX3VuaXF1ZSA9ICRkZWZuWydmb3JjZV91bmlxdWUnXTsKICAgICAgICAkb25lcm93LT5yb3djbGFzcyA9ICRyb3djbGFzczsKICAgICAgICAkaXNfbW9kdWxlcHJvcCA9IDA7CiAgICAgICAgaWYoIGlzc2V0KCRkZWZuWydleHRyYSddKSAmJiBpc3NldCgkZGVmblsnZXh0cmEnXVsnbW9kdWxlJ10pICYmCiAgICAgICAgICAgICRkZWZuWydleHRyYSddWydtb2R1bGUnXSAhPSAnJyApIHsKICAgICAgICAgICAgJHRtcCA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgkZGVmblsnZXh0cmEnXVsnbW9kdWxlJ10pOwogICAgICAgICAgICBpZiggaXNfb2JqZWN0KCR0bXApICkgJGlzX21vZHVsZXByb3AgPSAxOwogICAgICAgIH0KCiAgICAgICAgaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdlZGl0cHJvcCcpICYmICFpc3NldCgkZGVmblsnZXh0cmEnXVsnbW9kdWxlJ10pICkgewogICAgICAgICAgICAkb25lcm93LT5lZGl0bGluayA9CiAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnYWRkcHJvcCcsICRyZXR1cm5pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhlbWVPYmplY3QtPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywkdGhpcy0+TGFuZyAoJ2VkaXQnKSwgJycsICcnLCAnc3lzdGVtaWNvbicpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5KCdwcm9wbmFtZScgPT4gJGRlZm5bJ25hbWUnXSkpOwoKICAgICAgICAgICAgaWYoICRjYW5fZGVsZXRlICYmICEkaXNfbW9kdWxlcHJvcCApIHsKICAgICAgICAgICAgICAgICRvbmVyb3ctPmRlbGV0ZV91cmwgPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2FkbWluX2RlbGV0ZXByb3AnLCRyZXR1cm5pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheSgncHJvcG5hbWUnID0+ICRkZWZuWyduYW1lJ10sICdwcm9wdHlwZScgPT4gJGRlZm5bJ3R5cGUnXSkpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAkcm93YXJyYXlbXSA9ICRvbmVyb3c7CiAgICAgICAgKCRyb3djbGFzcyA9PSAicm93MSIgPyAkcm93Y2xhc3MgPSAicm93MiIgOiAkcm93Y2xhc3MgPSAicm93MSIpOwogICAgfQp9CgokdHBsLT5hc3NpZ24oJ25hbWV0ZXh0JywkdGhpcy0+TGFuZygnbmFtZScpKTsKJHRwbC0+YXNzaWduKCdsZW5ndGh0ZXh0JywkdGhpcy0+TGFuZygnbGVuZ3RoJykpOwokdHBsLT5hc3NpZ24oJ3Byb21wdHRleHQnLCR0aGlzLT5MYW5nKCdwcm9tcHQnKSk7CiR0cGwtPmFzc2lnbigndHlwZXRleHQnLCR0aGlzLT5MYW5nKCdwcm9tcHRfdHlwZScpKTsKJHRwbC0+YXNzaWduKCdwcm9wcycsJHJvd2FycmF5KTsKJHRwbC0+YXNzaWduKCdwcm9wY291bnQnLCBjb3VudCgkcm93YXJyYXkpKTsKJHRwbC0+YXNzaWduKCdwcm9wc2ZvdW5kJywkdGhpcy0+TGFuZygncHJvcHNmb3VuZCcpKTsKCmlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnYWRkcHJvcCcpICkgewogICAgLy8gdG9kbywgYWRkIGEgcGVybWlzc2lvbiBjaGVjayBhcm91bmQgdGhpcwogICAgLy8gbWF5YmUgY3JlYXRlIGFuICJlZGl0IGZyb250ZW5kdXNlciBwcm9wZXJ0aWVzIiBwZXJtaXNzaW9uCiAgICAkdHBsLT5hc3NpZ24oJ2FkZF91cmwnLCR0aGlzLT5jcmVhdGVfdXJsKCRpZCwnYWRkcHJvcCcsJHJldHVybmlkKSk7Cn0KCiR0cGwtPmRpc3BsYXkoKTsKCi8vIEVPRgo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_userstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCi8vIHRoaXMgdGFiIGhhcyBtZXJlbHkgb25lIG1vZm8gbGlzdCBvZiB1c2VzIGFuZCB0aGUgYWJpbGl0eSB0byBlZGl0IHRoZW0sCi8vIHNlZSBkZXRhaWxzIGFib3V0IHRoZW0sIGFuZCB0aGVuIGRlbGV0ZSB0aGVtCgovLwovLyBpbml0aWFsaXphdGlvbgovLwokYWRtaW50aGVtZSA9IGNtc191dGlsczo6Z2V0X3RoZW1lX29iamVjdCgpOwoKJHRwbCA9ICR0aGlzLT5DcmVhdGVTbWFydHlUZW1wbGF0ZSgndXNlcmxpc3QudHBsJyk7CmlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnbGlzdHVzZXJzJykgKSB7CgogICAgJGZpbHRlciA9ICRiYXJlX2ZpbHRlciA9IGFycmF5KCdncm91cCc9PicnLCdyZWdleCc9PicnLCdsb2dnZWRpbm9ubHknPT4wLCdsaW1pdCc9PjUwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd2aWV3cHJvcHMnPT5hcnJheSgpLCdwcm9wc2VsJz0+JycsJ3Byb3B2YWwnPT4nJywnc29ydGJ5Jz0+J3VzZXJuYW1lIGFzYycpOwogICAgJHRtcCA9IGNtc191c2VycHJlZnM6OmdldCgnZmV1X2ZpbHRlcicpOwogICAgaWYoICR0bXAgKSAkZmlsdGVyID0gdW5zZXJpYWxpemUoJHRtcCk7CgogICAgLy8gYnVsayBhY3Rpb24gc3R1ZmYKICAgIGlmKCBpc3NldCggJHBhcmFtc1snZG9idWxrJ10pICkgewogICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydzZWxlY3RlZCddKSAmJiBpc19hcnJheSgkcGFyYW1zWydzZWxlY3RlZCddKSApIHsKICAgICAgICAgICAgJHNlbCA9IGJhc2U2NF9lbmNvZGUoc2VyaWFsaXplKCRwYXJhbXNbJ3NlbGVjdGVkJ10pKTsKICAgICAgICAgICAgJHRoaXMtPm15UmVkaXJlY3QoICRpZCwgJ2FkbWluX2J1bGthY3Rpb25zJywgJHJldHVybmlkLCBhcnJheSgnam9iJz0+XGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCdidWxrX2FjdGlvbicsJ2RlbGV0ZScpLCd1aWRzJz0+JHNlbCkpOwogICAgICAgIH0KICAgIH0KCiAgICAvLyBmaWx0ZXJpbmcgc3R1ZmYKICAgIGlmKCBpc3NldCggJHBhcmFtc1snZmlsdGVyX3Jlc2V0J10gKSApIHsKICAgICAgICBjbXNfdXNlcnByZWZzOjpyZW1vdmUoJ2ZldV9maWx0ZXInKTsKICAgICAgICAkZmlsdGVyID0gJGJhcmVfZmlsdGVyOwogICAgfQogICAgZWxzZSBpZiggaXNzZXQoICRwYXJhbXNbJ2ZpbHRlciddKSApIHsKICAgICAgICAkZmlsdGVyWydncm91cCddID0gZ2V0X3BhcmFtZXRlcl92YWx1ZSgkcGFyYW1zLCdmaWx0ZXJfZ3JvdXAnKTsKICAgICAgICAkZmlsdGVyWydyZWdleCddID0gdHJpbShnZXRfcGFyYW1ldGVyX3ZhbHVlKCRwYXJhbXMsJ2ZpbHRlcl9yZWdleCcpKTsKICAgICAgICAkZmlsdGVyWydsb2dnZWRpbm9ubHknXSA9IChpbnQpZ2V0X3BhcmFtZXRlcl92YWx1ZSgkcGFyYW1zLCdmaWx0ZXJfbG9nZ2VkaW5vbmx5Jyk7CiAgICAgICAgJGZpbHRlclsnbGltaXQnXSA9IChpbnQpZ2V0X3BhcmFtZXRlcl92YWx1ZSgkcGFyYW1zLCdmaWx0ZXJfbGltaXQnKTsKICAgICAgICAkZmlsdGVyWydzb3J0YnknXSA9IHRyaW0oZ2V0X3BhcmFtZXRlcl92YWx1ZSgkcGFyYW1zLCdmaWx0ZXJfc29ydGJ5JykpOwogICAgICAgICRmaWx0ZXJbJ3ZpZXdwcm9wcyddID0gZ2V0X3BhcmFtZXRlcl92YWx1ZSgkcGFyYW1zLCdmaWx0ZXJfdmlld3Byb3BzJyk7CiAgICAgICAgJGZpbHRlclsncHJvcHNlbCddID0gdHJpbShnZXRfcGFyYW1ldGVyX3ZhbHVlKCRwYXJhbXMsJ2ZpbHRlcl9wcm9wZXJ0eXNlbCcpKTsKICAgICAgICBpZiggJGZpbHRlclsncHJvcHNlbCddID09ICdub25lJyApICRmaWx0ZXJbJ3Byb3BzZWwnXSA9ICcnOwogICAgICAgICRmaWx0ZXJbJ3Byb3B2YWwnXSA9IHRyaW0oZ2V0X3BhcmFtZXRlcl92YWx1ZSgkcGFyYW1zLCdmaWx0ZXJfcHJvcGVydHknKSk7CiAgICAgICAgY21zX3VzZXJwcmVmczo6c2V0KCdmZXVfZmlsdGVyJyxzZXJpYWxpemUoJGZpbHRlcikpOwogICAgfQoKICAgICR0cGwtPmFzc2lnbignZmlsdGVyJywkZmlsdGVyKTsKICAgICRmaWx0ZXJhcHBsaWVkID0gKCRmaWx0ZXIgIT0gJGJhcmVfZmlsdGVyKTsKICAgICR0cGwtPmFzc2lnbignZmlsdGVyX2FwcGxpZWQnLCRmaWx0ZXJhcHBsaWVkKTsKCiAgICAvLyBnZXQgYSBncm91cCBsaXN0IGZvciB0aGUgZmlsdGVyCiAgICAvLyBpdCBzaG91bGQgYmUgcmVhZHkgdG8gZ28gcmlnaHQgaW50byB0aGUgZHJvcGRvd24gKGNvb2wgZWgpCiAgICAkZ3JvdXBzMSA9ICR0aGlzLT5HZXRHcm91cExpc3QoKTsKICAgIGlmKCBjb3VudCgkZ3JvdXBzMSkgKSB7CiAgICAgICAgJGdyb3VwcyA9IGFycmF5X21lcmdlKCBhcnJheSgkdGhpcy0+TGFuZygnYW55JykgPT4gLTEpLCAkZ3JvdXBzMSApOwogICAgICAgICR0cGwtPmFzc2lnbignZ3JvdXBzJyxhcnJheV9mbGlwKCRncm91cHMpKTsKICAgIH0KCiAgICAvLyBhIHB1bGxkb3duIGxpc3QgZm9yIGxpbWl0cwogICAgJGxpbWl0cyA9IGFycmF5KCAnMTAnID0+IDEwLAogICAgICAgICAgICAgICAgICAgICAnMjUnID0+IDI1LAogICAgICAgICAgICAgICAgICAgICAnNTAnID0+IDUwLAogICAgICAgICAgICAgICAgICAgICAnMTAwJyA9PiAxMDAsCiAgICAgICAgICAgICAgICAgICAgICcyNTAnID0+IDI1MCwKICAgICAgICAgICAgICAgICAgICAgJzUwMCcgPT4gNTAwICk7CiAgICAkdHBsLT5hc3NpZ24oJ2xpbWl0cycsJGxpbWl0cyk7CgogICAgLy8gYSBwdWxsZG93biBsaXN0IGZvciBwcm9wZXJ0eSBkZWZpbml0aW9ucwogICAgJGRlZm5zMSA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgICAkZGVmbnMgPSBhcnJheSgpOwogICAgJGRlZm5zWydOb25lJ10gPSAnbm9uZSc7CiAgICAkYWxsZGVmbnMgPSBhcnJheSgpOwogICAgaWYoIGlzX2FycmF5KCRkZWZuczEpICkgewogICAgICAgIGZvcmVhY2goICRkZWZuczEgYXMgJGRlZiApIHsKICAgICAgICAgICAgaWYoICRkZWZbJ3Byb21wdCddID09ICcnIHx8ICRkZWZbJ25hbWUnXSA9PSAnJyApIGNvbnRpbnVlOwogICAgICAgICAgICBpZiggJGRlZlsnZW5jcnlwdCddICkgY29udGludWU7IC8vIHlvdSBjYW4ndCB2aWV3IGVuY3J5cHRlZCBwcm9wZXJ0aWVzIGluIHRoaXMgbGlzdC4KICAgICAgICAgICAgJGRlZm5zWyRkZWZbJ3Byb21wdCddXSA9ICRkZWZbJ25hbWUnXTsKICAgICAgICAgICAgJGFsbGRlZm5zWyRkZWZbJ25hbWUnXV0gPSAkZGVmWydwcm9tcHQnXTsKICAgICAgICB9CiAgICB9CiAgICAkdHBsLT5hc3NpZ24oJ2RlZm5saXN0JyxhcnJheV9mbGlwKCRkZWZucykpOwoKICAgIC8vIGEgcHVsbGRvd24gbGlzdCBmb3Igc29ydGluZwogICAgJHNvcnRzID0gYXJyYXkoICR0aGlzLT5MYW5nKCdzb3J0YnlfdXNlcm5hbWVfYXNjJykgPT4gJ3VzZXJuYW1lIGFzYycsCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkxhbmcoJ3NvcnRieV91c2VybmFtZV9kZXNjJykgPT4gJ3VzZXJuYW1lIGRlc2MnLAogICAgICAgICAgICAgICAgICAgICR0aGlzLT5MYW5nKCdzb3J0YnlfY3JlYXRlX2FzYycpID0+ICdjcmVhdGVkYXRlIGFzYycsCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPkxhbmcoJ3NvcnRieV9jcmVhdGVfZGVzYycpID0+ICdjcmVhdGVkYXRlIGRlc2MnLAogICAgICAgICAgICAgICAgICAgICR0aGlzLT5MYW5nKCdzb3J0YnlfZXhwaXJlc19hc2MnKSA9PiAnZXhwaXJlcyBhc2MnLAogICAgICAgICAgICAgICAgICAgICR0aGlzLT5MYW5nKCdzb3J0YnlfZXhwaXJlc19kZXNjJykgPT4gJ2V4cGlyZXMgZGVzYycgKTsKICAgICR0cGwtPmFzc2lnbignc29ydGxpc3QnLGFycmF5X2ZsaXAoJHNvcnRzKSk7CgogICAgLy8gbm93IHNldHVwIHRoZSB0ZW1wbGF0ZSBmaWVsZHMKICAgICR0cGwtPmFzc2lnbiggJ3Byb21wdF9zb3J0JywgJHRoaXMtPkxhbmcoJ3NvcnQnKSk7CiAgICAkdHBsLT5hc3NpZ24oICdzdGFydGZvcm0nLCAkdGhpcy0+Q0dDcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgYXJyYXkoJ2NnX2FjdGl2ZXRhYic9Pid1c2VycycpKSk7CiAgICAkdHBsLT5hc3NpZ24oICdwZXJtX3JlbW92ZXVzZXJzJywgJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3JlbW92ZXVzZXJzJyk/MTowKTsKICAgICR0cGwtPmFzc2lnbiggJ3VzZXJzZm91bmQnLCAkdGhpcy0+TGFuZygndXNlcnNmb3VuZCcpKTsKICAgICR0cGwtPmFzc2lnbiggJ2FsbGRlZm5zJywkYWxsZGVmbnMpOwogICAgJHRwbC0+YXNzaWduKCAndmlld3Byb3BzJywkZmlsdGVyWyd2aWV3cHJvcHMnXSk7CiAgICAkdHBsLT5hc3NpZ24oICdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQgKCkpOwoKICAgIC8vIG5vdyBnZXQgb3VyIHVzZXJzCiAgICAkdXNlcnMgPSBudWxsOwogICAgJGN1cnBhZ2UgPSAxOwogICAgJG5tYXRjaGVzID0gMDsKICAgIGlmKCBpc3NldCgkcGFyYW1zWydwYWdlJ10pICkgJGN1cnBhZ2UgPSAoaW50KSRwYXJhbXNbJ3BhZ2UnXTsKICAgICRvZmZzZXQgPSAoJGN1cnBhZ2UgLSAxKSAqICRmaWx0ZXJbJ2xpbWl0J107CiAgICB0cnkgewogICAgICAgICR1c2VycyA9ICR0aGlzLT5HZXRVc2Vyc0luR3JvdXAoICRmaWx0ZXJbJ2dyb3VwJ10sICRmaWx0ZXJbJ3JlZ2V4J10sICRmaWx0ZXJbJ2xpbWl0J10sICRmaWx0ZXJbJ3NvcnRieSddLCAkZmlsdGVyWydwcm9wc2VsJ10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZpbHRlclsncHJvcHZhbCddLCAkZmlsdGVyWydsb2dnZWRpbm9ubHknXSwgJG9mZnNldCApOwogICAgICAgICRubWF0Y2hlcyA9ICR0aGlzLT5nZXRfbGFzdHVzZXJxdWVyeV9jb3VudCgpOwogICAgfQogICAgY2F0Y2goIEV4Y2VwdGlvbiAkZSApIHsKICAgICAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkZS0+R2V0TWVzc2FnZSgpICk7CiAgICB9CiAgICBpZiggIWlzX2FycmF5KCR1c2VycykgKSB7CiAgICAgICAgLy8gYW4gZXJyb3Igb2NjdXJyZWQKICAgICAgICAkdGhpcy0+X0Rpc3BsYXlFcnJvclBhZ2UgKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCAkZGItPkVycm9yTXNnKCkgKTsKICAgIH0KCiAgICAvLyBjYWxjdWxhdGUgcGFnZXMgYW5kIHBhZ2UgbGlua3MuCiAgICAkbnBhZ2VzID0gKGludCkoJG5tYXRjaGVzIC8gJGZpbHRlclsnbGltaXQnXSk7CiAgICBpZiggJG5tYXRjaGVzICUgJGZpbHRlclsnbGltaXQnXSAhPSAwICkgJG5wYWdlcysrOwogICAgJGN1cnBhZ2UgPSBtYXgoMCxtaW4oJGN1cnBhZ2UsJG5wYWdlcykpOwoKICAgICRuYXYgPSBhcnJheSgpOwogICAgJG5hdlsnbnBhZ2VzJ10gPSAkbnBhZ2VzOwogICAgJG5hdlsnY3VycGFnZSddID0gJGN1cnBhZ2U7CiAgICBpZiggJGN1cnBhZ2UgPiAxICkgewogICAgICAgICRuYXZbJ2ZpcnN0cGFnZV91cmwnXSA9ICR0aGlzLT5jcmVhdGVfdXJsKCRpZCwnZGVmYXVsdGFkbWluJywnJywgYXJyYXkoJ2NnX2FjdGl2ZXRhYic9Pid1c2VycycsJ3BhZ2UnPT4xKSk7CiAgICAgICAgJG5hdlsncHJldnBhZ2VfdXJsJ10gPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2RlZmF1bHRhZG1pbicsJycsIGFycmF5KCdjZ19hY3RpdmV0YWInPT4ndXNlcnMnLCdwYWdlJz0+JGN1cnBhZ2UtMSkpOwogICAgfQogICAgaWYoICRjdXJwYWdlIDwgJG5wYWdlcyApIHsKICAgICAgICAkbmF2WyduZXh0cGFnZV91cmwnXSA9ICR0aGlzLT5jcmVhdGVfdXJsKCRpZCwnZGVmYXVsdGFkbWluJywnJywgYXJyYXkoJ2NnX2FjdGl2ZXRhYic9Pid1c2VycycsJ3BhZ2UnPT4kY3VycGFnZSsxKSk7CiAgICAgICAgJG5hdlsnbGFzdHBhZ2VfdXJsJ10gPSAkdGhpcy0+Y3JlYXRlX3VybCgkaWQsJ2RlZmF1bHRhZG1pbicsJycsIGFycmF5KCdjZ19hY3RpdmV0YWInPT4ndXNlcnMnLCdwYWdlJz0+JG5wYWdlcykpOwogICAgfQogICAgJHRwbC0+YXNzaWduKCduYXZpZ2F0aW9uJywkbmF2KTsKCiAgICAvLyBnZXQgdGhlIHRvdGFsIG51bWJlciBvZiB1c2VycwogICAgJG51bXVzZXJzID0gJHRoaXMtPkNvdW50VXNlcnNJbkdyb3VwKCAkZmlsdGVyWydncm91cCddICk7CgogICAgLy8gZ2V0IHRoZSBzZWxlY3RlZCBwcm9wZXJ0aWVzLgogICAgaWYoIGlzX2FycmF5KCRmaWx0ZXJbJ3ZpZXdwcm9wcyddKSAmJiBjb3VudCgkZmlsdGVyWyd2aWV3cHJvcHMnXSkgKSB7CiAgICAgICAgaWYoIGNvdW50KCR1c2VycykgKSB7CiAgICAgICAgICAgICR1aWRzID0gYXJyYXkoKTsKICAgICAgICAgICAgZm9yZWFjaCggJHVzZXJzIGFzICRyb3cgKSB7CiAgICAgICAgICAgICAgICAkdWlkc1tdID0gJHJvd1snaWQnXTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJHF1ZXJ5ID0gIlNFTEVDVCBBLmlkLCI7CiAgICAgICAgICAgICRmbGRzID0gYXJyYXkoKTsKICAgICAgICAgICAgJGNvbmRzID0gYXJyYXkoKTsKICAgICAgICAgICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJGZpbHRlclsndmlld3Byb3BzJ10pOyAkaSsrICkgewogICAgICAgICAgICAgICAgJHByb3AgPSAkZmlsdGVyWyd2aWV3cHJvcHMnXVskaV07CiAgICAgICAgICAgICAgICAkbm0gPSAnaicuJGk7CiAgICAgICAgICAgICAgICAkZmxkc1tdICA9ICIkbm0uZGF0YSBhcyAkcHJvcCI7CiAgICAgICAgICAgICAgICAkY29uZHNbXSA9IGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBBUyAkbm0gT04gQS5pZCA9ICRubS51c2VyaWQgQU5EICgkbm0udGl0bGUgPSAnJHByb3AnKSI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJHF1ZXJ5IC49IGltcGxvZGUoJywnLCRmbGRzKS4nIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIEEnOwogICAgICAgICAgICAkcXVlcnkgLj0gJyBMRUZUIEpPSU4gJy5pbXBsb2RlKCcgTEVGVCBKT0lOICcsJGNvbmRzKTsKICAgICAgICAgICAgJHF1ZXJ5IC49ICcgV0hFUkUgQS5pZCBJTiAoJy5pbXBsb2RlKCcsJywkdWlkcykuJyknOwogICAgICAgICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCdTRVQgc3FsX2JpZ19zZWxlY3RzID0gMScpOwogICAgICAgICAgICAkdG1wID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwogICAgICAgICAgICAkZXh0cmFwcm9wcyA9IGNnZV9hcnJheTo6dG9faGFzaCgkdG1wLCdpZCcpOwogICAgICAgIH0KICAgIH0KCiAgICAvLyBidWlsZCB0aGUgdXNlciBsaXN0LgogICAgJHJvd2FycmF5ID0gYXJyYXkoKTsKICAgICR0cGwtPmFzc2lnbignbnVtdXNlcnMnLCAkbnVtdXNlcnMgKTsKICAgICRjb25zdW1lciA9IGZldV91dGlsczo6Z2V0X2F1dGhfY29uc3VtZXIoKTsKICAgIGlmKCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVfaXNfZW1haWwnKSAmJiBnZXRfY2xhc3MoJGNvbnN1bWVyKSA9PSAnZmV1X3N0ZF9jb25zdW1lcicgKSB7CiAgICAgICAgJHRwbC0+YXNzaWduKCd1c2VybmFtZXRleHQnLCAkdGhpcy0+TGFuZygncHJvbXB0X2VtYWlsJykpOwogICAgfQogICAgZWxzZSB7CiAgICAgICAgJHRwbC0+YXNzaWduKCd1c2VybmFtZXRleHQnLCAkdGhpcy0+TGFuZygndXNlcm5hbWUnKSk7CiAgICB9CiAgICAkdHBsLT5hc3NpZ24oJ2VtYWlsdGV4dCcsICR0aGlzLT5MYW5nKCdlbWFpbCcpKTsKICAgICR0cGwtPmFzc2lnbignc3RhdHVzdGV4dCcsICR0aGlzLT5MYW5nKCdzdGF0dXMnKSk7CiAgICAkdHBsLT5hc3NpZ24oJ2NyZWF0ZWR0ZXh0JywgJHRoaXMtPkxhbmcoJ2NyZWF0ZWQnKSk7CiAgICAkdHBsLT5hc3NpZ24oJ2V4cGlyZXN0ZXh0JywgJHRoaXMtPkxhbmcoJ2V4cGlyZXMnKSk7CiAgICBpZiggaXNfYXJyYXkoJHVzZXJzKSApIHsKICAgICAgICBmb3JlYWNoKCAkdXNlcnMgYXMgJHJvdyApIHsKICAgICAgICAgICAgJG9uZXJvdyA9IG5ldyBTdGRDbGFzcygpOwogICAgICAgICAgICAkb25lcm93LT5pZCA9ICRyb3dbJ2lkJ107CiAgICAgICAgICAgICRvbmVyb3ctPmRpc2FibGVkID0gKGJvb2wpICRyb3dbJ2Rpc2FibGVkJ107CiAgICAgICAgICAgICRvbmVyb3ctPm11c3RfdmFsaWRhdGUgPSAoYm9vbCkgKGlzc2V0KCRyb3dbJ211c3RfdmFsaWRhdGUnXSkpID8gJHJvd1snbXVzdF92YWxpZGF0ZSddIDogZmFsc2U7CiAgICAgICAgICAgICRvbmVyb3ctPmNyZWF0ZWQgID0gJHJvd1snY3JlYXRlZGF0ZSddOwogICAgICAgICAgICAkb25lcm93LT51c2VybmFtZSA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkbWluX2VkaXR1c2VyJywgJHJldHVybmlkLCAkcm93Wyd1c2VybmFtZSddLCBhcnJheSgndXNlcl9pZCcgPT4gJHJvd1snaWQnXSkpOwogICAgICAgICAgICAkb25lcm93LT5leHBpcmVzICA9ICRyb3dbJ2V4cGlyZXMnXTsKICAgICAgICAgICAgaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdsaXN0dXNlcnMnKSApIHsKICAgICAgICAgICAgICAgICRvbmVyb3ctPmhpc3RvcnlsaW5rID0KICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAndXNlcmhpc3RvcnknLCAkcmV0dXJuaWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9pbmZvLmdpZicsJHRoaXMtPkxhbmcoJ2hpc3RvcnknKSwnJywnJywnc3lzdGVtaWNvbicpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheSgndXNlcl9pZCc9PiRyb3dbJ2lkJ10pKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdlZGl0dXNlcnMnKSApIHsKICAgICAgICAgICAgICAgICRvbmVyb3ctPmVkaXRsaW5rID0KICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCAnYWRtaW5fZWRpdHVzZXInLCAkcmV0dXJuaWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9lZGl0LmdpZicsICR0aGlzLT5MYW5nICgnZWRpdCcpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5ICgndXNlcl9pZCcgPT4gJHJvd1snaWQnXSApKTsKICAgICAgICAgICAgICAgIGlmKCAkcm93Wydsb2dnZWRpbiddICkgewogICAgICAgICAgICAgICAgICAgICRvbmVyb3ctPmxvZ291dGxpbmsgPQogICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCdhZG1pbl9sb2dvdXQnLCRyZXR1cm5pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9iYWNrLmdpZicsICR0aGlzLT5MYW5nKCdwcm9tcHRfbG9nb3V0JyksJycsJycsJ3N5c3RlbWljb24nKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5KCd1c2VyX2lkJz0+JHJvd1snaWQnXSkpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiggJHRoaXMtPl9IYXNTdWZmaWNpZW50UGVybWlzc2lvbnMoJ3JlbW92ZXVzZXJzJykgKSB7CiAgICAgICAgICAgICAgICAkb25lcm93LT5kZWxldGVsaW5rID0KICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Q3JlYXRlTGluayAoJGlkLCdkb19kZWxldGV1c2VyJywkcmV0dXJuaWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRhZG1pbnRoZW1lLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywkdGhpcy0+TGFuZyAoJ2RlbGV0ZScpLCAnJywgJycsICdzeXN0ZW1pY29uJyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5ICgndXNlcl9pZCcgPT4gJHJvd1snaWQnXSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5MYW5nICgnYXJleW91c3VyZV9kZWxldGUnLCRyb3dbJ3VzZXJuYW1lJ10pKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYoIGlzX2FycmF5KCRmaWx0ZXJbJ3ZpZXdwcm9wcyddKSAmJiBjb3VudCgkZmlsdGVyWyd2aWV3cHJvcHMnXSkgKSB7CiAgICAgICAgICAgICAgICAkb25lcm93LT5leHRyYSA9IGFycmF5KCk7CiAgICAgICAgICAgICAgICBmb3JlYWNoKCAkZmlsdGVyWyd2aWV3cHJvcHMnXSBhcyAkb25lICkgewogICAgICAgICAgICAgICAgICAgIGlmKCBpc3NldCgkZXh0cmFwcm9wc1skb25lcm93LT5pZF1bJG9uZV0pICkgJG9uZXJvdy0+ZXh0cmFbJG9uZV0gPSAkZXh0cmFwcm9wc1skb25lcm93LT5pZF1bJG9uZV07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICRyb3dhcnJheVtdID0gJG9uZXJvdzsKICAgICAgICB9CiAgICB9CgogICAgJHRwbC0+YXNzaWduKCdpdGVtY291bnQnLGNvdW50KCRyb3dhcnJheSkpOwogICAgJHRwbC0+YXNzaWduKCdpdGVtcycsJHJvd2FycmF5KTsKICAgICRidWxrX2FjdGlvbnMgPSBbXTsKICAgIGlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnZWRpdHVzZXJzJykgKSB7CiAgICAgICAgJGJ1bGtfYWN0aW9uc1snZGlzYWJsZSddID0gJHRoaXMtPkxhbmcoJ2J1bGtfZGlzYWJsZScpOwogICAgICAgICRidWxrX2FjdGlvbnNbJ2VuYWJsZSddID0gJHRoaXMtPkxhbmcoJ2J1bGtfZW5hYmxlJyk7CiAgICAgICAgJGJ1bGtfYWN0aW9uc1snZm9yY2VjaHB3J10gPSAkdGhpcy0+TGFuZygnYnVsa19mb3JjZWNocHcnKTsKICAgICAgICAkYnVsa19hY3Rpb25zWydzZXRwYXNzd29yZCddID0gJHRoaXMtPkxhbmcoJ2J1bGtfc2V0cGFzc3dvcmQnKTsKICAgICAgICAkYnVsa19hY3Rpb25zWydzZXRleHBpcnknXSA9ICR0aGlzLT5MYW5nKCdidWxrX3NldGV4cGlyeScpOwogICAgfQogICAgaWYoICR0aGlzLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdyZW1vdmV1c2VycycpICkgewogICAgICAgICRidWxrX2FjdGlvbnNbJ2RlbGV0ZSddID0gJHRoaXMtPkxhbmcoJ2J1bGtfZGVsZXRlJyk7CiAgICB9CiAgICBpZiggY291bnQoJGJ1bGtfYWN0aW9ucykgKSAkdHBsLT5hc3NpZ24oJ2J1bGtfYWN0aW9ucycsJGJ1bGtfYWN0aW9ucyk7Cn0gLy8gbGlzdHVzZXJzIHBlcm1pc3Npb24KCmlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygnYWRkdXNlcicpICkgewogICAgaWYoICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlX29uZWdyb3VwJykgPT0gMCB8fCBjb3VudCgkZ3JvdXBzMSkgPiAwICkgewogICAgICAgICR0cGwtPmFzc2lnbignYWRkX3VybCcsICR0aGlzLT5jcmVhdGVfdXJsKCRpZCwnYWRtaW5fZWRpdHVzZXInLCRyZXR1cm5pZCkpOwogICAgfQp9CmlmKCAkdGhpcy0+X0hhc1N1ZmZpY2llbnRQZXJtaXNzaW9ucygndXNlcnMnKSApIHsKICAgIGlmKCBjb3VudCgkZ3JvdXBzKSApICR0cGwtPmFzc2lnbignaW1wb3J0X3VybCcsJHRoaXMtPmNyZWF0ZV91cmwoJGlkLCdhZG1pbl9pbXBvcnRfdXNlcnMnLCRyZXR1cm5pZCkpOwogICAgaWYoIGNvdW50KCRyb3dhcnJheSkgKSAkdHBsLT5hc3NpZ24oJ2V4cG9ydF91cmwnLCR0aGlzLT5jcmVhdGVfdXJsKCRpZCwnYWRtaW5fZXhwb3J0X3VzZXJzJywkcmV0dXJuaWQpKTsKfQoKJHRwbC0+ZGlzcGxheSgpOwo=]]></data>
	</file>
	<file>
	  <filename>/help.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPlRoaXMgbW9kdWxlIGFsbG93cyBtYW5hZ2VtZW50IGFuZCBhZG1pbmlzdHJhdGlvbiBvZiBmcm9udCBlbmQgdXNlcnMgPGk+KHVzZXJzIHdobyBoYXZlIG5vIGFkbWluIGFjY2Vzc3MpPC9pPi4gIEl0IGFsbG93cyBjcmVhdGlvbiBvZiB1c2VyIGdyb3VwcywgYW5kIHVzZXIgYWNjb3VudHMgYW5kIGFsbG93cyB1c2VycyB0byBsb2dpbiBhbmQgbG9nb3V0LiAgaXQgY2FuIGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgQ3VzdG9tQ29udGVudCBtb2R1bGUgdG8gZGlzcGxheSBkaWZmZXJlbnQgY29udGVudCB0byBkaWZmZXJlbnQgdXNlcnMgb25jZSB0aGV5IGhhdmUgbG9nZ2VkIGluPC9wPgo8aDM+RmVhdHVyZXM6PC9oMz4KPHVsPgo8bGk+VXNlcnMgY2FuIGJlIG1lbWJlcnMgb2YgbXVsdGlwbGUgZ3JvdXBzLjwvbGk+CjxsaT5Vc2VyIGFjY291bnQgZXhwaXJhdGlvbi4gIFlvdSBjYW4gY3JlYXRlIHRlbXBvcmFyeSB1c2VyczwvbGk+CjxsaT5Hcm91cCBQcm9wZXJ0aWVzLiAgWW91IGNhbiBhc2sgZm9yIGRpZmZlcmVudCBpbmZvcm1hdGlvbiBmcm9tIG1lbWJlcnMgb2YgZGlmZmVyZW50IGdyb3Vwcy48L2xpPgo8bGk+TG90cyBvZiBmaWVsZCB0eXBlcy48L2xpPgo8bGk+UHJvdmlkZXMgYSBjb250ZW50IHR5cGUgdG8gbWFrZSBwcm90ZWN0aW5nIGNvbnRlbnQgc2ltcGxlLCBpZiBub3QgdHJpdmlhbC48L2xpPgo8bGk+Q2FwYWJsZSBvZiBoYW5kbGluZyB0aG91c2FuZHMgb2YgdXNlcnM8L2xpPgo8bGk+RXh0ZW5zaXZlIGZsZXhpYmlsaXR5IGZvciBoYW5kbGluZyByZWRpcmVjdGlvbiBhZnRlciBsb2dpbiwgYW5kIHNlbmRzIGV2ZW50cyB0byBleHRlbmQgdGhlIHdvcmtmbG93IHByb2Nlc3MuPC9saT4KPGxpPkZvcmdvdHRlbiBwYXNzd29yZCwgYW5kIGZvcmdvdCB1c2VybmFtZSBmdW5jdGlvbmFsaXR5Li4uIGFsbG93cyB1c2VycyB0byBzZXQgYSBuZXcgcGFzc3dvcmQsIGFuZC9vciB0byByZWNvdmVyIHRoZWlyIHVzZXJuYW1lIGlmIHRoZXkgY29tcGxldGVseSBmb3Jnb3QgbG9naW4gZGV0YWlscy48L2xpPgo8bGk+RXh0ZW5kYWJsZSB0byBkaWZmZXJlbnQgYXV0aGVudGljYXRpb24gdHlwZXMgKExEQVAsIEZhY2Vib29rLCBldGMpLjwvbGk+CjxsaT5Qcm92aWRlcyBleHRlbnNpdmUgaW1wb3J0IGFuZCBleHBvcnQgY2FwYWJpbGl0aWVzLjwvbGk+CjxsaT5IYXMgYW4gZXh0ZW5zaXZlIEFQSSBmb3IgYWRkaW5nIGZ1bmN0aW9uYWxpdHkgaW50byB2YXJpb3VzIG90aGVyIENNU01TIGFkZG9uIG1vZHVsZXMuPC9saT4KPGxpPlRoZSBhYmlsaXR5IHRvIGVuY3J5cHQgc2Vuc2l0aXZlIHVzZXIgZGF0YS48L2xpPgo8bGk+U3Ryb25nIGVuY3J5cHRpb24gYW5kIHNlY3VyaXR5LjwvbGk+CjxsaT5FeHRlbnNpdmUgYWRtaW5pc3RyYXRpdmUgY2FwYWJpbGl0aWVzLjwvbGk+CjwvdWw+Cgo8aDM+SG93IGRvIEkgdXNlIGl0OjwvaDM+CjxwPkFmdGVyIGluc3RhbGxhdGlvbiB5b3UgY2FuIHRoZSBhY2Nlc3MgYWRtaW4gcGFuZWwgdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHVuZGVyIHRoZSAmcXVvdDtVc2VycyAmYW1wOyBHcm91cHMmcXVvdDsgbWVudS48L3A+CjxwPllvdSBuZWVkIHRvIGRlZmluZSBhdCBsZWFzdCBvbmUgcHJvcGVydHkuICBQcm9wZXJ0aWVzIGFyZSBlc3NlbnRpYWxseSBmaWVsZCBkZWZpbml0aW9ucywgaGVyZSB5b3Ugc3BlY2lmeSB0aGUgdHlwZSBvZiBpbmZvcm1hdGlvbiB5b3Ugd2FudCB0byBnYXRoZXIsIGFuZCBsaW1pdHMuIGkuZTogIE5hbWUsIEFnZSwgQ2l0eSwgU3RhdGUsIENvdW50cnksIGV0Yy48L3A+CjxwPjxiPk5vdGU6PC9iPiBZb3UgZG8gbm90IG5lZWQgdG8gZGVmaW5lIHByb3BlcnRpZXMgZm9yIHVzZXJuYW1lIChvciBlbWFpbCBhZGRyZXNzKSBhbmQgcGFzc3dvcmQsIHRoZXNlIHdpbGwgYmUgcHJvdmlkZWQgZm9yIHlvdS4gIFRob3VnaCB5b3UgY2FuIHByb3ZpZGUgcHJvcGVydGllcyBmb3IgYWRkaXRpb25hbCBlbWFpbCBhZGRyZXNzZXMuPC9wPgo8cD48Yj5Ob3RlOjwvYj4gTmV3IGluc3RhbGxhdGlvbnMgb2YgdGhlIEZFVSBtb2R1bGUgc3BlY2lmeSB0aGF0IHRoZSB1c2VycyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lICh0aGlzIG9wdGlvbiBjYW4gYmUgY2hhbmdlZCBpbiB0aGUgbW9kdWxlcyBhZG1pbiBwYW5lbCkuICBTbyBpZiB1c2luZyB0aGlzIG9wdGlvbiB5b3Ugd2lsbCBub3QgbmVlZCB0byBjcmVhdGUgYW4gZW1haWwgYWRkcmVzcyBwcm9wZXJ0eS48L3A+CjxwPk5leHQgeW91IG11c3QgY3JlYXRlIG9uZSBvciBtb3JlIHVzZXIgZ3JvdXBzLiAgV2hlbiB5b3UgY3JlYXRlIGEgZ3JvdXAsIHlvdSBhcmUgYXNrZWQgZm9yIGEgZ3JvdXAgbmFtZSwgYSBkZXNjcmlwdGlvbiBhbmQgdG8gYXNzb2NpYXRlIG9uZSBvciBtb3JlIHByb3BlcnRpZXMgd2l0aCB0aGF0IGdyb3VwLCBzcGVjaWZ5IHRoZSBwcm9wZXJ0aWVzIHNvcnQgb3JkZXIsIGFuZCB3aGV0aGVyIGl0IGlzIGFuIG9wdGlvbmFsLCByZXF1aXJlZCwgb3IgaGlkZGVuIGZpZWxkLiAgQXQgbGVhc3Qgb25lIHByb3BlcnR5IG11c3QgYmUgYXNzb2NpYXRlZCB3aXRoIGEgZ3JvdXAuPC9wPgo8cD48Yj5Ob3RlOjwvYj4gQmVmb3JlIHByb2NlZWRpbmcsIHlvdSBzaG91bGQgZW5zdXJlIHRoYXQgdGhlIHByZWZlcmVuY2VzIGFyZSBzZXQgY29ycmVjdGx5LiAgVGFrZSBzb21lIHRpbWUgaGVyZSwgdGhlcmUgYXJlIG51bWVyb3VzIG9wdGlvbnMuPC9wPgo8cD5UaGlyZGx5IHlvdSBzaG91bGQgY3JlYXRlIHNvbWUgdXNlcnMuICBBZGRpbmcgdXNlcnMgaXMgYSB0d28gc3RlcCBwcm9jZXNzLiAgV2hlbiBjcmVhdGluZyBhIHVzZXIgeW91IGFyZSBhc2tlZCBmb3IgdGhlIHVzZXJuYW1lL2VtYWlsIGFuZCBwYXNzd29yZCwgYW5kIGFuIGV4cGlyeSBkYXRlIGZvciB0aGF0IHVzZXIuICBZb3UgdGhlbiBtdXN0IHNlbGVjdCB0aGUgZ3JvdXBzIHRoYXQgdGhhdCB1c2VyIGlzIGEgbWVtYmVyIG9mLCBhbmQgY2xpY2sgJnF1b3Q7TmV4dCZxdW90OzwvcD4KPHA+PGVtPk5vdGU6IDwvZW0+VGhpcyBpcyBhIGxhYm91ciBpbnRlbnNpdmUgYW5kIGJvcmluZyBwcm9jZXNzLCBpdCBpcyBlYXNpZXIgdG8gbGV0IHVzZXJzIHJlZ2lzdGVyIHRoZW1zZWx2ZXMgPGVtPihTZWUgdGhlIFNlbGZSZWdpc3RyYXRpb24gTW9kdWxlKTwvZW0+LCBhbmQgdGhlbiB5b3UgY2FuIGVkaXQgdGhlaXIgZ3JvdXAgaW5mb3JtYXRpb24uICBidXQgZm9yIHRlc3RpbmcgcHVycG9zZXMsIHBsZWFzZSBjcmVhdGUgYXQgbGVhc3Qgb25lIHVzZXI8L3A+CjxwPkxhc3RseSwgYWZ0ZXIgdGhlIHN5c3RlbSBoYXMgZGV0ZXJtaW5lZCBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIGZpZWxkcyB0byBiZSBwcmVzZW50ZWQgZm9yIHRoYXQgdXNlciwgeW91IGFyZSBwcmVzZW50ZWQgd2l0aCBhIGZvcm0gYXNraW5nIGZvciBhbGwgb2YgdGhlIHJlcXVpcmVkIHVzZXIgaW5mb3JtYXRpb24uICBDb21wbGV0ZSB0aGlzIGZvcm0gdG8gY29tcGxldGUgdGhlIHVzZXIgYWRkaXRpb248L3A+CjxwPllvdSBhcmUgbm93IHJlYWR5IHRvIGFkZCB0aGUgZnJvbnQgZW5kIGZ1bmN0aW9uYWxpdHkgdG8geW91ciBzaXRlLiAgVGhpcyBpcyBhcyBzaW1wbGUgYXMgYWRkaW5nIHRoZSB7RnJvbnRFbmRVc2Vyc30gdGFnIHRvIHlvdXIgcGFnZSBvciB0ZW1wbGF0ZS4gIFlvdSBtdXN0IGVuc3VyZSB0aGF0IHRoaXMgcGFnZSBpcyBzZXQgdG8gJnF1b3Q7bm90IGNhY2hlJnF1b3Q7IHdoZW4gZWRpdGluZyB0aGUgY29udGVudCBwYWdlKHMpIHdoZXJlIHRoZSBsb2dpbiBmb3JtIGlzIGRpc3BsYXllZC4gIElmIHlvdSBjYWxsIHRoZSB7RnJvbnRFbmRVc2Vyc30gdGFnIGZyb20gd2l0aGluIGEgcGFnZSB0ZW1wbGF0ZSwgeW91IG11c3QgZGlzYWJsZSBjYWNoaW5nIG9uIGFsbCBwYWdlcyB0aGF0IHVzZSB0aGF0IHRlbXBsYXRlLjwvcD4KPHA+QWRkaW5nIHByb3RlY3RlZCBjb250ZW50IHRvIHlvdXIgQ01TTVMgc2l0ZSBpcyBhcyBzaW1wbGUgYXMgY3JlYXRpbmcgbmV3IHBhZ2VzIG9mIHR5cGUgJnF1b3Q7UHJvdGVjdGVkIENvbnRlbnQmcXVvdDsgYW5kIHNlbGVjdGluZyB3aGljaCB1c2VyIGdyb3VwcyAob3IgYWxsKSB0aGF0IGFyZSBhbGxvd2VkIHRvIHZpZXcgdGhlIHBhZ2UuPC9wPgo8cD48ZW0+T3B0aW9uYWxseTwvZW0+IENyZWF0ZSBhbm90aGVyIG5ldyBjb250ZW50IHBhZ2Ugb2YgdHlwZSAnRXJyb3IgSGFuZGxlcicgYW5kIHNldCB0aGUgZXJyb3IgaGFuZGxlciB0byA0MDMgZXJyb3IuICBJbiB0aGUgY29udGVudCBhcmVhIG9mIHRoYXQgcGFnZSwgeW91IHNob3VsZCBjYWxsIHtGcm9udEVuZFVzZXJzfSB0byBkaXNwbGF5IGEgbG9naW4gZm9ybSBvbiB0aGUgNDAzIGVycm9yIHBhZ2UuPC9wPgoKPGgzPlN0cm9uZyBQYXNzd29yZHM6PC9oMz4KPHA+VGhpcyBtb2R1bGUsIHdoZW4gZnJlc2hseSBpbnN0YWxsZWQgKG5vdCBhbiB1cGdyYWRlKSBlbmFibGVzIHN0cm9uZyBwYXNzd29yZHMuICBBdCBhIG1pbmltdW0gb25lIHVwcGVyIGNhc2UgY2hhcmFjdGVyIGFuZCBvbmUgZGlnaXQgYXJlIHJlcXVpcmVkIHRvIGJlIGluIGV2ZXJ5IHBhc3N3b3JkLiAgVGhlIHNpdGUgYWRtaW5pc3RyYXRvciBjYW4gYWxzbyBzcGVjaWZ5IG90aGVyIG9wdGlvbmFsIGNoYXJhY3RlcnMsIG9uZSBvZiB3aGljaCBtdXN0IGJlIHByZXNlbnQgaW4gYWxsIHBhc3N3b3Jkcy48L3A+Cgo8aDM+U21hcnR5IEZ1bmN0aW9uczo8L2gzPgo8aDQ+e2ZldV9wcm90ZWN0fTwvaDQ+CjxwPlRoZSA8c3Ryb25nPmZldV9wcm90ZWN0PC9zdHJvbmc+IGJsb2NrIHBsdWdpbiBwcm92aWRlcyBhIGNvbnZlbmllbnQgbWV0aG9kIHRvIGhpZGUgc29tZSBjb250ZW50IGZyb20gdXNlcnMgb24gd2hhdCBpcyBub3JtYWxseSBhIHB1YmxpYyBwYWdlLjwvcD4KPHA+PHN0cm9uZyBzdHlsZT0iY29sb3I6IHJlZDsiPldhcm5pbmc6PC9zdHJvbmc+IFRoaXMgcGx1Z2luIGNhbm5vdCBiZSBjb25zaWRlcmVkIDEwMCUgc2VjdXJlLCBhbmQgc2hvdWxkIG5vdCBhdCBhbnkgdGltZSBiZSB1c2VkIGluIHRoZSBwYWdlIHRlbXBsYXRlIHRvIHByb3RlY3QgdGhlIGRlZmF1bHQge2NvbnRlbnR9IHRhZy4gIFRoZXJlIGFyZSB3YXlzIHRvIGFjY2VzcyB0aGUgZGVmYXVsdCBjb250ZW50IHByb3BlcnR5IG9mIGEgcGFnZSwgb3IgdG8gY2FsbCBhIG1vZHVsZSBhY3Rpb24gd2l0aG91dCBwcm9jZXNzaW5nIHRoZSBwYWdlIHRlbXBsYXRlLiAgSWYgeW91IG5lZWQgdG8gcHJvdGVjdCB0aGUgY29udGVudCBhbmQgZW5zdXJlIHRoYXQgbm8gdW5hdXRob3JpemVkIHVzZXJzIGFjY2VzcyB0aGUgcGFnZSwgdXNlIHRoZSBwcm90ZWN0ZWQgcGFnZSBjb250ZW50IHR5cGUgcHJvdmlkZWQgYnkgdGhpcyBtb2R1bGUuPC9wPgo8aDU+VXNhZ2U6PC9oNT4KPHByZT48Y29kZT57ZmV1X3Byb3RlY3QgZ3JvdXBzPSJncm91cDEsZ3JvdXAyLGdyb3AzIn0KICAmbHQ7cCZndDtTbWFydHkgY29udGVudCB0aGF0IHNob3VsZCBvbmx5IGJlIHZpc2libGUgdG8gbWVtYmVycyBvZiB0aG9zZSBncm91cHMuJmx0Oy9wJmd0Owp7L2ZldV9wcm90ZWN0fTwvY29kZT48L3ByZT4KPHA+PHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGUgdXNlciBtdXN0IGJlIGEgbWVtYmVyIG9mIGF0IGxlYXN0IG9uZSBvZiB0aGUgc3BlY2lmaWVkIGdyb3Vwcy4gIFRoZSBncm91cCBuYW1lcyBhcmUgY2FzZSBzZW5zaXRpdmUuPC9wPgoKPGg0PlRoZSBmZXVfc21hcnR5IGNsYXNzPC9oND4KPHA+VGhlIDxzdHJvbmc+ZmV1X3NtYXJ0eTwvc3Ryb25nPiBjbGFzcyBwcm92aWRlcyBzb21lIGZ1bmN0aW9ucyB0byBpbnRlcmFjdCB3aXRoIHRoZSBkYXRhYmFzZSBhbmQgcHVsbCBhbmQgdGVzdCBmb3IgdXNlciBpbmZvcm1hdGlvbi48L3A+CjxwPlNvbWUgaW50ZXJhY3Rpb24gd2l0aCB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgZGF0YWJhc2UgaXMgcG9zc2libGUgd2l0aCBzbWFydHkgYW5kIHRoZSBmZXVfc21hcnR5IGNsYXNzLjwvcD4KPGRpdiBjbGFzcz0iaW5mb3JtYXRpb24iPgogIDxwPjxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gQmVoYXZpb3Igb2YgdGhlIGZldV9zbWFydHkgY2xhc3MgY2hhbmdlZCBzaWduaWZpY2FudGx5IGF0IHZlcnNpb24gMS4yOSByZXN1bHRpbmcgaW4gY29tcGF0aWJpbGl0eSBwcm9ibGVtcy48L3A+CiAgPHA+VGhpcyBpcyBub3cgYSByZWdpc3RlcmVkIGNsYXNzIHdpdGggU21hcnR5IChmb3IgQ01TTVMgMi4wIGNvbXBhdGliaWxpdHkpLiAgQW5kIGFsbCBtZXRob2RzIG11c3QgYmUgYWNjZXNzZWQgc3RhdGljYWxseS4gIEFkZGl0aW9uYWxseSwgdGhlcmUgaXMgbm8gYXNzaWduIHBhcmFtLiAgWW91IG11c3QgY2FwdHVyZSB0aGUgb3V0cHV0IG9mIHRoZSBmdW5jdGlvbiBpbnRvIGEgc21hcnR5IHZhcmlhYmxlLjwvcD4KPC9kaXY+CjxoNT5GdW5jdGlvbnM6PC9oNT4KPHVsPgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X2N1cnJlbnRfdXNlcmlkKCl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgdGhlIGludGVnZXIgdXNlciBpZCBpZiB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyIChpZiBhbnkpLjwvcD4KPHA+RXhhbXBsZTo8L3A+CjxwcmU+PGNvZGU+eyR1aWQ9ZmV1X3NtYXJ0eTo6Z2V0X2N1cnJlbnRfdXNlcmlkKCl9PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmdldF9jdXJyZW50X3VzZXJuYW1lKCl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgdGhlIHVzZXIgbmFtZSBpZiB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyIChpZiBhbnkpLjwvcD4KPHA+RXhhbXBsZTo8L3A+CjxwcmU+PGNvZGU+eyR1c2VybmFtZT1mZXVfc21hcnR5OjpnZXRfY3VycmVudF91c2VybmFtZSgpfTwvY29kZT48L3ByZT4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPntmZXVfc21hcnR5OjpnZXRfdXNlcmlkKCR1c2VybmFtZSl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIHJldHVybiB0aGUgaW50ZWdlciB1c2VyIGlkIGdpdmVuIGEgdXNlcm5hbWUuPC9wPgo8cD5FeGFtcGxlOjwvcD4KPHByZT48Y29kZT57JHVpZD1mZXVfc21hcnR5OjpnZXRfdXNlcmlkKCR1c2VybmFtZSl9PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmdldF91c2VybmFtZShbJHVpZF0pfTwvY29kZT48L3N0cm9uZz4KPHA+VGhpcyBmdW5jdGlvbiBjYW4gYmUgdXNlZCB0byByZXR1cm4gdGhlIHN0cmluZyB1c2VybmFtZSBnaXZlbiBhbiBpbnRlZ2VyIHVpZC4gIElmIG5vIHVpZCBpcyBzcGVjaWZpZWQsIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1aWQgaXMgYXNzdW1lZC48L3A+CjxwPkV4YW1wbGU6PC9wPgo8cHJlPjxjb2RlPntmZXVfc21hcnR5OjpnZXRfdXNlcm5hbWUoJHRoZV91aWQpfTwvY29kZT48L3ByZT4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPntmZXVfc21hcnR5OjpnZXRfZW1haWwoWyR1aWRdKX08L2NvZGU+PC9zdHJvbmc+CjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gcmV0dXJuIGFuIGVtYWlsIGFkZGVyZXNzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ2l2ZW4gaW50ZWdlciB1aWQuICBJZiBubyB1aWQgaXMgc3BlY2lmaWVkLCB0aGUgY3VycmVudCBsb2dnZWQgaW4gdWlkIGlzIGFzc3VtZWQuPC9wPgo8cD5FeGFtcGxlOjwvcD4KPHByZT48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X2VtYWlsKCR0aGVfdWlkKX08L2NvZGU+PC9wcmU+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X3VzZXJpbmZvKFskdWlkXSl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIHJldHVybiB0aGUgdXNlciBpbmZvcm1hdGlvbiBmb3IgYSBzaW5nbGUgdXNlci4gIElmIG5vIHVpZCBpcyBzcGVjaWZpZWQsIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1aWQgaXMgYXNzdW1lZC48L3A+CjxwPkV4YW1wbGU6PC9wPgo8cHJlPjxjb2RlPnskdWluZm89ZmV1X3NtYXJ0eTo6Z2V0X3VzZXJpbmZvKCRzb21ldGhpbmcudXNlcmlkKX08YnIvPnskdWluZm98QHByaW50X3J9PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmdldF91c2Vyc19ieV9ncm91cG5hbWUoJGdyb3VwbmFtZVssJGZvcl9saXN0XSl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIGV4dHJhY3QgYW4gYXJyYXkgb2YgdXNlcm5hbWVzIGFuZCB1c2VyaWRzIGZvciBhbGwgdXNlcnMgdGhhdCBiZWxvbmcgdG8gdGhlIHNwZWNpZmllZCBncm91cC48L3A+CjxwPlRoZSBncm91cG5hbWUgcGFyYW1ldGVyIG11c3QgYmUgYSBzaW5nbGUgc3RyaW5nIGdyb3VwbmFtZS48L3A+CjxwPlRoZSBmb3JfbGlzdCBwYXJhbWV0ZXIgaXMgYSBib29sZWFuIHRoYXQgaW5kaWNhdGVzIHRoYXQgdGhlIG91dHB1dCBzaG91bGQgYmUgc3VpdGFibGUgZm9yIHVzZSBpbiBhIHNlbGVjdCBsaXN0LjwvcD4KPHA+RXhhbXBsZTo8L3A+CjxwcmU+PGNvZGU+eyRteW1lbWJlcnM9ZmV1X3NtYXJ0eTo6Z2V0X3VzZXJzX2J5X2dyb3VwbmFtZSgnbWVtYmVycycpfTxici8+eyRteW1lbWJlcnN8QHByaW50X3J9PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmdldF9ncm91cF9tZW1iZXJsaXN0KCRnaWQpfTwvY29kZT48L3N0cm9uZz4KICA8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgYW4gYXJyYXkgb2YgdWlkIGFuZCB1c2VybmFtZXMgZm9yIGFsbCB1c2VycyB0aGF0IGFyZSBtZW1iZXJzIG9mIHRoZSBzcGVjaWZpZWQgZ3JvdXAgKGJ5IGdyb3VwIGlkKS48L3A+CiAgPHA+RXhhbXBsZTo8L3A+CiAgPHByZT48Y29kZT57aHRtbF9vcHRpb25zIG9wdGlvbnM9ZmV1X3NtYXJ0eTo6Z2V0X2dyb3VwX21lbWJlcmxpc3QoJGdpZCkgc2VsZWN0ZWQ9JHVpZH08L2NvZGU+PC9wcmU+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X3VzZXJfZXhwaXJ5KFskdWlkXSl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgdGhlIHVuaXggdGltZXN0YW1wIHRoYXQgdGhlIHNwZWNpZmllZCB1aWQgYWNjb3VudCBleHBpcmVzLiAgVGhlIGZ1bmN0aW9uIHdpbGwgcmV0dXJuIGZhbHNlIGlmIHRoZSB1aWQgY2Fubm90IGJlIGZvdW5kIG9yIHNvbWUgb3RoZXIgZXJyb3Igb2NjdXJyZWQuPC9wPgo8cD5FeGFtcGxlOjwvcD4KPHByZT48Y29kZT57JGV4cGlyeT1mZXVfc21hcnR5OjpnZXRfdXNlcl9leHBpcnkoMjUpfTxici8+eyRleHBpcnl8Y21zX2RhdGVfZm9ybWF0fTwvY29kZT48L3ByZT4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPntmZXVfc21hcnR5Ojp1c2VyX2V4cGlyZWQoJHVpZCl9PC9jb2RlPjwvc3Ryb25nPgo8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgYSBib29sZWFuIGluZGljYXRpbmcgd2V0aGVyIHRoZSBzcGVjaWZpZWQgdXNlciBhY2NvdW50IGhhcyBleHBpcmVkLiAgVGhlIG1ldGhvZCB3aWxsIGFsc28gcmV0dXJuIGZhbHNlIGlmIHRoZSB1aWQgY2Fubm90IGJlIGZvdW5kIG9yIHNvbWUgb3RoZXIgZXJyb3Igb2NjdXJyZWQuPC9wPgo8cD5FeGFtcGxlOjwvcD4KPHByZT48Y29kZT57JGV4cGlyZWQ9ZmV1X3NtYXJ0eTo6dXNlcl9leHBpcmVkKDI1KX08YnIvPntpZiAkZXhwaXJlZH1VSUQgMjUgY2FuIG5vIGxvbmdlciBsb2dpbiB0byB0aGUgc3lzdGVtey9pZn08L2NvZGU+PC9wcmU+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X3VzZXJfcHJvcGVydGllcygkdWlkKX08L2NvZGU+PC9zdHJvbmc+CjxwPlRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gZXh0cmFjdCBhIGxpc3Qgb2YgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCB1c2VyLiAgSWYgdGhlIHVpZCBpcyBub3Qgc3BlY2lmaWVkIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1aWQgaXMgdXNlZC48L3A+CjxwPkV4YW1wbGU6PC9wPgo8cHJlPjxjb2RlPnskdXNlcnByb3BzPWZldV9zbWFydHk6OmdldF91c2VyX3Byb3BlcnRpZXMoNSl9PGJyLz57JHVzZXJwcm9wc3xAcHJpbnRfcn08L2NvZGU+PC9wcmU+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X3VzZXJfcHJvcGVydHkoJHByb3BlcnR5LFskdWlkXSl9PC9jb2RlPjwvc3Ryb25nPgogIDxwPlRoaXMgZnVuY3Rpb24gcmV0dXJucyB0aGUgdmFsdWUgb2YgYSBzaW5nbGUgcHJvcGVydHkgZm9yIHRoZSBzcGVjaWZpZWQgdWlkLiAgSWYgdGhlIHVpZCBwYXJhbWV0ZXIgaXMgbm90IHNwZWNpZmllZCwgdGhlIGN1cnJlbnQgbG9nZ2VkIGluIHVpZCBpcyB1c2VkLjwvcD4KICA8cD5FeGFtcGxlOjwvcD4KICA8cHJlPjxjb2RlPntmZXVfc21hcnR5OjpnZXRfdXNlcl9wcm9wZXJ0eSgnZnVsbG5hbWUnLDUpfTwvY29kZT48L3ByZT4KPC9saT4KCjxsaT48c3Ryb25nPjxjb2RlPntmZXVfc21hcnR5OjpnZXRfZHJvcGRvd25fdGV4dCgkcHJvcG5hbWUsJHByb3B2YWx1ZSl9PC9jb2RlPjwvc3Ryb25nPgogIDxwPlRoaXMgZnVuY3Rpb24gcmV0dXJucyB0aGUgdGV4dCBzcGVjaWZpZWQgZm9yIGEgcGFydGljdWxhciBvcHRpb24gdmFsdWUgZm9yIGEgc3BlY2lmaWVkIGRyb3Bkb3duIHByb3BlcnR5LjwvcD4KICA8cD5FeGFtcGxlOjwvcD4KICA8cHJlPjxjb2RlPntmZXVfc21hcnR5OjpnZXRfZHJvcGRvd25fdGV4dCgnYWdlX3JhbmdlJywkb25lcHJvcHZhbHVlKX08L2NvZGU+PC9wcmU+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6Z2V0X211bHRpc2VsZWN0X3RleHQoJHByb3BuYW1lLCRwcm9wdmFsdWUpfTwvY29kZT48L3N0cm9uZz4KICA8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgYW4gYXJyYXkgb2Ygb3B0aW9uIHRleHRzIGNvcnJlc3BvbmRpbmcgdG8gYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBvcHRpb24gdmFsdWVzLjwvcD4KICA8cD5FeGFtcGxlOjwvcD4KICA8cHJlPjxjb2RlPnskZmF2b3JpdGVfZm9vZHM9ZmV1X3NtYXJ0eTo6Z2V0X211bHRpc2VsZWN0X3RleHQoJ2Zhdm9yaXRlX2Zvb2RzJywkb25lcHJvcHZhbHVlKX08YnIvPnskZmF2b3JpdGVfZm9vZHN8QHByaW50X3J9PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmdldF9ncm91cF9saXN0KCl9PC9jb2RlPjwvc3Ryb25nPgogIDxwPlRoaXMgZnVuY3Rpb24gcmV0dXJucyBhbiBhcnJheSBvZiBGRVUgZ3JvdXBzIHRoYXQgaXMgc3VpdGFibGUgZm9yIHVzZSBpbiBhIGRyb3Bkb3duLjwvcD4KICA8cD5FeGFtcGxlOjwvcD4KPHByZT48Y29kZT4mbHQ7c2VsZWN0IGlkPSJncm91cCImZ3Q7e2h0bWxfb3B0aW9ucyBvcHRpb25zPWZldV9zbWFydHk6OmdldF9ncm91cF9saXN0KCl9Jmx0Oy9zZWxlY3QmZ3Q7PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmdldF91c2VyX2dyb3VwcyhbJHVpZF0pfTwvY29kZT48L3N0cm9uZz4KICA8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgYW4gYXJyYXkgb2YgRkVVIGdyb3VwcyB0aGF0IHRoaXMgdXNlciBiZWxvbmdzIHRvIChpZiBhbnkpLiAgVGhlIG91dHB1dCBpcyBhbiBhcnJheSBzdWl0YWJsZSBmb3IgdXNlIGluIGEgc2VsZWN0IGxpc3QgKHRoZSBrZXkgaXMgdGhlIGdyb3VwaWQsIHZhbHVlIGlzIHRoZSBncm91cCBuYW1lKS48L3A+CiAgPHA+RXhhbXBsZTo8L3A+CjxwcmU+PGNvZGU+eyRteWdyb3Vwcz1mZXVfc21hcnR5OjpnZXRfdXNlcl9ncm91cHMoKX0KeyRteWdyb3Vwc3xAcHJpbnRfcn08L2NvZGU+PC9wcmU+CjwvbGk+Cgo8bGk+PHN0cm9uZz48Y29kZT57ZmV1X3NtYXJ0eTo6cHJlbG9hZF91c2VycygkdWlkX2xpc3RbLCRkZWVwID0gZmFsc2VdKX08L2NvZGU+PC9zdHJvbmc+CiAgPHA+VGhpcyBmdW5jdGlvbiB3aWxsIHByZWxvYWQgaW5mb3JtYXRpb24gZm9yIHRoZSBzcGVjaWZpZWQgdXNlcnMuICBJdCBkb2VzIG5vdCByZXR1cm4gYW55IG91dHB1dC48L3A+CiAgPHA+RXhhbXBsZTo8L3A+CjxwcmU+PGNvZGU+eyRsaXN0PVsgNSwgMTAsIDExLCAxMywgMTggXX17ZmV1X3NtYXJ0eTo6cHJlbG9hZF91c2VycygkbGlzdCl9PC9jb2RlPjwvcHJlPgo8L2xpPgoKPGxpPjxzdHJvbmc+PGNvZGU+e2ZldV9zbWFydHk6OmlzX3VzZXJfbWVtYmVyb2YoJGdyb3Vwc1ssJHVpZF0pfTwvY29kZT48L3N0cm9uZz4KICA8cD5UaGlzIGZ1bmN0aW9uIHJldHVybnMgYSBib29sZWFuIGlmIHRoZSB1c2VyIGlzIGEgbWVtYmVyIG9mIG9uZSB0aGUgc3BlY2lmaWVkIGdyb3Vwcy48L3A+CiAgPHA+VGhlIGdyb3VwcyBwYXJhbWV0ZXIgY2FuIGJlIGEgY29tbWEgZGVsaW1pdGVkIHN0cmluZyBvZiBncm91cCBuYW1lcywgb3IgYW4gYXJyYXkgb2YgZ3JvdXAgbmFtZXMuPC9wPgogIDxwPklmIHRoZSB1aWQgcGFyYW1ldGVyIGlzIG5vdCBzcGVjaWZpZWQsIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXJpZCBpcyB1c2VkLjwvcD4KICA8cD5FeGFtcGxlOjwvcD4KPHByZT48Y29kZT57aWYgZmV1X3NtYXJ0eTo6aXNfdXNlcl9tZW1iZXJvZignU3RhZmYsTWFuYWdlcnMnKX1IZWxsbyBDdXN0b21lcnsvaWZ9PC9jb2RlPjwvcHJlPgo8L3VsPgoKPGRpdiBjbGFzcz0id2FybmluZyI+CjxoMz5Qcml2YWN5IFdhcm5pbmc6PC9oMz4KPHA+VGhpcyBtb2R1bGUgZG9lcyBsb2cgdGhlIElQIGFkZHJlc3Mgb2YgdXNlcnMuIFRoaXMgaXMgbm90IGNvbXBhdGlibGUgd2l0aCBEby1Ob3QtVHJhY2sgcG9saWNpZXMsIGFuZCBtYXkgYnJlYWsgc29tZSBsYXdzLiAgPHN0cm9uZz5Vc2UgQXQgWW91ciBPd24gUmlzay48L3N0cm9uZz48L3A+CjxwPkFkZGl0aW9uYWxseSwgdGhlIGFkbWluaXN0cmF0b3IgaGFzIHRoZSBhYmlsaXR5IHRvIGNvbmZpZ3VyZSB0aGUgbW9kdWxlIHNvIHRoYXQgY29va2llcyBhcmUgdXNlZC4gIEhvd2V2ZXIgbm8gcGVyc29uYWwgaW5mb3JtYXRpb24gaXMgc3RvcmVkIGluIHRoZSBjb29raWVzIChpZiBlbmFibGVkKS4gIE9ubHkgYSBzeXN0ZW0gYXNzaWduZWQgdW5pcXVlIHVzZXIgaWRlbnRpZmVyLCBhbmQgYSBzZXNzaW9uIGlkZW50aWZpZXIuPC9wPgo8L2Rpdj4KCjxoMz5TZWUgQWxzbzo8L2gzPgo8dWw+CiAgPGxpPkN1c3RvbUNvbnRlbnQgLSA8ZW0+KGRlcHJlY2F0ZWQpPC9lbT4gUHJvdmlkZXMgc21hcnR5IHRhZ3MgYW5kIHV0aWxpdGllcyBmb3IgbW9yZSBmbGV4aWJsZSBjb250cm9sIG9mIHByb3RlY3RlZCBwYWdlcy48L2xpPgogIDxsaT5TZWxmUmVnaXN0cmF0aW9uIC0gUHJvdmlkZXMgdGhlIGFiaWxpdHkgdG8gYWxsb3cgdXNlcnMgdG8gcmVnaXN0ZXIgdGhlbXNlbHZlcywgaW5jbHVkaW5nIHBhaWQgcmVnaXN0cmF0aW9uIG9wdGlvbnMuPC9saT4KICA8bGk+Q0dVc2VyRGlyZWN0b3J5IC0gUHJvdmlkZXMgdGhlIGFiaWxpdHkgdG8gYnJvd3NlIGFuZCBzZWFyY2ggdGhyb3VnaCB0aGUgcHJvZmlsZSBpbmZvcm1hdGlvbiBvZiBrbm93biB1c2Vycy48L2xpPgo8L3VsPgoKPGgzPkVuY3J5cHRlZCBEYXRhOjwvaDM+CjxwPlRoZSBFbmNyeXB0ZWQgZmllbGQgZnVuY3Rpb25hbGl0eSBpcyBpbnRlbmRlZCB0byBzdG9yZSAoaW4gYSBzZWN1cmUgd2F5KSBwZXJzb25hbCBhbmQgcHJpdmF0ZSBkYXRhIHRoYXQgZXZlbiB0aGUgc2l0ZSBhZG1pbmlzdHJhdG9yIHNob3VsZCBub3QgaGF2ZSBhY2Nlc3MgdG8uICBpLmU6IGl0ZW1zIHN1Y2ggYXMgQ3JlZGl0IENhcmQgaW5mb3JtYXRpb24uICBUaGUgb25seSBwZXJzb24gdGhhdCBzaG91bGQgYmUgYWJsZSB0byB2aWV3IGFuZCBlZGl0IHRoaXMgZGF0YSBpcyB0aGUgdXNlciBoaW1zZWxmLiAgIFRoaXMgZGF0YSBzaG91bGQgbm90IGJlIGV4cG9ydGVkIHRvIHBsYWluIHRleHQgZWl0aGVyLiAgVGhlIGRhdGEgY291bGQgaG93ZXZlciBiZSByZWFkIGFuZCB1c2VkIGJ5IG90aGVyIG1vZHVsZXMuPC9wPgo8cD48c3Ryb25nPk5vdGU6PC9zdHJvbmc+ICBUaGVyZSBtYXkgYmUgYSBuZWVkIGZvciBhbiBhZGRpdGlvbmFsIG1vZHVsZSB0byBkaXNwbGF5IHRoZSB1bmVuY3J5cHRlZCBmb3JtIG9mIGVuY3J5dHBlZCB1c2VyIGluZm9ybWF0aW9uLCBob3dldmVyIHRoZSBGRVUgbW9kdWxlIGRvZXMgbm90IG5lZWQgaXQuPC9wPgoKPGgzPkZBUTwvaDM+Cjx1bD4KICA8bGk+PHN0cm9uZz5ROjwvc3Ryb25nPiBXaHkgY2FuJ3QgSSBjcmVhdGUgYSBncm91cAogICAgPHA+PHN0cm9uZz5BOjwvc3Ryb25nPiBHcm91cHMgY2FuJ3QgYmUgY3JlYXRlZCB1bnRpbGwgYXQgbGVhc3Qgb25lIHByb3BlcnR5IGlzIGNyZWF0ZWQuPC9wPgogIDwvbGk+CiAgPGxpPjxzdHJvbmc+UTo8L3N0cm9uZz4gV2h5IGNhbid0IEkgZGVsZXRlIGEgcHJvcGVydHkKICAgIDxwPjxzdHJvbmc+QTo8L3N0cm9uZz4gQSBwcm9wZXJ0eSBjYW4gb25seSBiZSBkZWxldGVkIGlmIGl0IGlzIG5vdCBhc3NvY2lhdGVkIHdpdGggYW55IGdyb3VwcyBhcyByZXF1aXJlZCBvciBoaWRkZW4uICBBZGRpdGlvbmFsbHksIHByb3BlcnRpZXMgY3JlYXRlZCBieSBvdGhlciBtb2R1bGVzIGNhbm5vdCBiZSBkZWxldGVkLjwvcD4KICA8L2xpPgogIDxsaT48c3Ryb25nPlE6PC9zdHJvbmc+IFNldHRpbmcgcHJvcGVydHkgb3JkZXIgZG9lc24ndCBzZWVtIHRvIHdvcmsKICA8cD48c3Ryb25nPkE6PC9zdHJvbmc+IFRoZSBwZXJjaWV2ZWQgcHJvcGVydHkgb3JkZXIgd2lsbCBjaGFuZ2UgZWFjaCB0aW1lIHRoZSBncm91cCBpcyBlZGl0ZWQuICBUaGUgcHJvcGVydGllcyB0aGF0IGFyZSBtYXJrZWQgYXMgJnF1b3Q7b2ZmJnF1b3Q7IHdpbGwgYWx3YXlzIGJlIGRpc3BsYXllZCBhdCB0aGUgYm90dG9tLCBidXQgdGhlIHNvcnQgb3JkZXIgb2Ygb3RoZXIgcHJvcGVydGllcyB3aWxsIGJlIHJldGFpbmVkLjwvcD4KICA8L2xpPgo8L3VsPgoKPGgzPlRpcHM8L2gzPgo8dWw+CiAgPGxpPkR5bmFtaWMgTmF2aWdhdGlvbnM6CiAgICA8cD5JbiBtb3N0IGNpcmN1bXN0YW5jZXMgeW91IGNhbm5vdCBhbGxvdyBicm93c2VyIGNhY2hpbmcgb24gYW55IHBhZ2UgdGhhdCBoYXMgYSBkeW5hbWljIG5hdmlnYXRpb24uLi4gdGhlIHR3byBzaG91bGQgbm90IGJlIG1peGVkLjwvcD4KICA8L2xpPgogIDxsaT5SZWRpcmVjdCBQcmVmZXJlbmNlcyBhbmQgeyR1c2VybmFtZX06CiAgICA8cD5JZiB1c2luZyB0aGUgPGNvZGU+eyR1c2VybmFtZX08L2NvZGU+IHNtYXJ0eSB2YXJpYWJsZSBpbiBhbnkgb2YgdGhlIHJlZGlyZWN0IHByZWZlcmVuY2VzIGluIHRoZSBGRVUgbW9kdWxlJ3MgJnF1b3Q7YnVpbHRpbiBhdXRoZW50aWNhdGlvbiZxdW90OyB0YWIgYmUgc3VyZSB0byB0dXJuIE9GRiB0aGUgJnF1b3Q7RW1haWwgaXMgVXNlcm5hbWUmcXVvdDsgcHJlZmVyZW5jZS48L3A+CiAgPC9saT4KPC91bD4KCjxoMz5TdXBwb3J0PC9oMz4KPHA+VGhlIG1vZHVsZSBhdXRob3IgaXMgaW4gbm8gd2F5IG9ibGlnYXRlZCB0byBwcm92aWRlIHN1cHBvcnQgZm9yIHRoaXMgY29kZSBpbiBhbnkgZmFzaGlvbi4gIEhvd2V2ZXIsIHRoZXJlIGFyZSBhIG51bWJlciBvZiByZXNvdXJjZXMgYXZhaWxhYmxlIHRvIGhlbHAgeW91IHdpdGggaXQ6PC9wPgo8dWw+CjxsaT5BIGJ1ZyB0cmFja2luZyBhbmQgZmVhdHVyZSByZXF1ZXN0IHN5c3RlbSBoYXMgYmVlbiBjcmVhdGVkIGZvciB0aGlzIG1vZHVsZSA8YSBocmVmPSJodHRwOi8vZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2Zyb250ZW5kdXNlcnMiPmhlcmU8L2E+LiAgUGxlYXNlIGJlIHZlcmJvc2UgYW5kIGRlc2NyaXB0aXZlIHdoZW4gc3VibWl0dGluZyBidWcgcmVwb3J0cyBhbmQgZmVhdHVyZSByZXF1ZXN0cywgYW5kIGZvciBidWcgcmVwb3J0cyBlbnN1cmUgdGhhdCB5b3UgaGF2ZSBwcm92aWRlZCBzdWZmaWNpZW50IGluZm9ybWF0aW9uIHRvIHJlbGlhYmx5IHJlcHJvZHVjZSB0aGUgaXNzdWUuPC9saT4KPGxpPkFkZGl0aW9uYWwgZGlzY3Vzc2lvbiBvZiB0aGlzIG1vZHVsZSBtYXkgYWxzbyBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLmNtc21hZGVzaW1wbGUub3JnIj5DTVMgTWFkZSBTaW1wbGUgRm9ydW1zPC9hPi4gIFdoZW4gZGVzY3JpYmluZyBhbiBpc3N1ZSBwbGVhc2UgbWFrZSBhbiBlZmZvcnQgdG8gcHJvdmlkZSBhbGwgcmVsYXZhbnQgaW5mb3JtYXRpb24sIGEgdGhvcm91Z2ggZGVzY3JpcHRpb24gb2YgeW91ciBpc3N1ZSwgYW5kIHN0ZXBzIHRvIHJlcHJvZHVjZSBpdCBvciB5b3VyIGRpc2N1c3Npb24gbWF5IGJlIGlnbm9yZWQuPC9saT4KPGxpPlRoZSBhdXRob3IsIGNhbGd1eTEwMDAsIGNhbiBvZnRlbiBiZSBmb3VuZCBpbiB0aGUgPGEgaHJlZj0iaXJjOi8vaXJjLmZyZWVub2RlLm5ldC8jY21zIj5DTVMgSVJDIENoYW5uZWw8L2E+LjwvbGk+CjxsaT5MYXN0bHksIHlvdSBtYXkgaGF2ZSBzb21lIHN1Y2Nlc3MgZW1haWxpbmcgdGhlIGF1dGhvciBkaXJlY3RseS4gIEhvd2V2ZXIsIHBsZWFzZSB1c2UgdGhpcyBhcyBhIGxhc3QgcmVzb3J0LCBhbmQgZW5zdXJlIHRoYXQgeW91IGhhdmUgZm9sbG93ZWQgYWxsIGFwcGxpY2FibGUgaW5zdHJ1Y3Rpb25zIG9uIHRoZSBmb3JnZSwgaW4gdGhlIGZvcnVtcywgZXRjLjwvbGk+CjwvdWw+Cgo8aDM+UGFyYW1ldGVyczwvaDM+Cjx1bD4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWN0aW9uPSJkZWZhdWx0IgogIDxwPkFjdGlvbnM6PC9wPgogIDx1bD4KICAgIDxsaT48ZW0+ZGVmYXVsdDwvZW0+IC0gVGhlIGRlZmF1bHQgYWN0aW9uLiAgSWYgdGhlIHVzZXIgaXMgbG9nZ2VkIGluLCB0aGUgbG9nb3V0Zm9ybSBhY3Rpb24gd2lsbCBiZSBkaXNwbGF5ZWQuICBJZiB0aGUgdXNlciBpcyBub3QgbG9nZ2VkIGluIHRoZSBsb2dpbiBhY3Rpb24gd2lsbCBiZSBjYWxsZWQuCiAgICA8bGk+PGVtPmxvZ2luPC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dpbiBmb3JtLjwvbGk+CiAgICA8bGk+PGVtPmxvZ291dGZvcm08L2VtPiAtIERpc3BsYXkgb3V0cHV0IGFib3V0IHlvdXIgY3VycmVudCB1c2VybmFtZSwgYW5kIGFjdGlvbnMgdG8gY2hhbmdlIHlvdXIgc2V0dGluZ3MsIG9yIGxvZ291dC4gIElmIHRoZSB1c2VyIGlzIG5vdCBsb2dnZWQgaW4sIHRoaXMgYWN0aW9uIGRvZXMgbm90aGluZy48L2xpPgogICAgPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm0gZm9yIGxvZ2dlZCBpbiB1c2Vycy4gIElmIHRoZSB1c2VyIGlzIG5vdCBsb2dnZWQgaW4sIHRoaXMgYWN0aW9uIGRvZXMgbm90aGluZy48L2xpPgogICAgPGxpPjxlbT5mb3Jnb3RwdzwvZW0+IC0gRGlzcGxheSB0aGUgZm9yZ290IHBhc3N3b3JkIGZvcm0uPC9saT4KICAgIDxsaT48ZW0+c2lsZW50IChkZXByZWNhdGVkKTwvZW0+IC0gQ3JlYXRlcyBhbmQgYXNzaWducyBzb21lIHNtYXJ0eSB2YXJpYWJsZXMgY29udGFpbmluZyBpbmZvIGFib3V0IHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIuPC9saT4KICAgIDxsaT48ZW0+bG9zdHVzZXJuYW1lPC9lbT4gLSBEaXNwbGF5IHRoZSBsb3N0dXNlcm5hbWUgZm9ybSAoaWYgdGhlIHN5c3RlbSBpcyBwcm9wZXJseSBzZXR1cCB0byBoYW5kbGUgbG9zdCB1c2VybmFtZSByZXF1ZXN0cywgYW5kIHRoZSB1c2VyIGlzIG5vdCBjdXJyZW50bHkgbG9nZ2VkIGluLjwvbGk+CiAgICA8bGk+PGVtPnJlc2V0X3Nlc3Npb248L2VtPiAtIFByb3ZpZGUgYSBqYXZhc2NyaXB0IGNvbnRyb2xsZWQgdGVtcGxhdGUgdG8gYWxsb3cgdGhlIG1hbnVhbCwgb3IgYXV0b21hdGljIHBpbmdpbmcgb2YgdGhlIHVzZXIgc2Vzc2lvbi4gIFRoaXMgdGVtcGxhdGUgY2FuIGJlIHVzZWQgdG8gcmVtaW5kIHRoZSB1c2VyIHRoYXQgaGlzIGxvZ2luIHNlc3Npb24gaXMgYWJvdXQgdG8gZXhwaXJlLCBhbmQgdG8gdHJpZ2dlciBpdHMgcmVzZXQuICBOb3JtYWxseSB0aGlzIG1ldGhvZCBpcyBub3QgcmVxdWlyZWQgYXMgYW55IHBhZ2UgdGhhdCBkaXNwbGF5cyB0aGUgRnJvbnRFbmRVc2VyIGNvbnRyb2xzIHdvdWxkIGhhbmRsZSB0aGlzLCBqdXN0IHJlcXVpcmluZyB0aGUgdXNlciB0byB2aWV3IGEgcGFnZSBvbiBhIHJlZ3VsYXIgYmFzaXMuICBIb3dldmVyLCBpZiB0aGVyZSBhcmUgcGFnZXMgd2l0aCBhbG90IG9mIGNvbnRlbnQgcmVxdWlyaW5nIGV4dGVuc2l2ZSByZWFkaW5nLCB0aGlzIG1heSBiZSBhIHVzZWZ1bCBzb2x1dGlvbi48L2xpPgogICAgPGxpPjxlbT52aWV3dXNlcjwvZW0+IC0gRGlzcGxheSBhIHJlcG9ydCBmb3IgYSBzaW5nbGUgdXNlciwgcmVxdWlyZXMgdXNlIG9mIHRoZSB1aWQgcGFyYW1ldGVyLjwvbGk+CiAgPC91bD4KPC9saT4KCjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGZvcm09Im5hbWUiCjxwPkZvcm1zOjwvcD4KPGRpdiBjbGFzcz0id2FybmluZyI+Tm90ZTogVGhlIGZvcm0gcGFyYW1ldGVyIGlzIGRlcHJlY2F0ZWQuICBQbGVhc2UgdXMgdGhlIHN0YW5kYXJkIGFjdGlvbiBwYXJhbWV0ZXIgZm9yIGFjY2Vzc2luZyBkaWZmZXJlbnQgRkVVIGZvcm1zIGRpcmVjdGx5LjwvZGl2Pgo8dWw+CiA8bGk+PGVtPmxvZ2luPC9lbT4gLSBEaXNwbGF5IHRoZSBsb2dpbiBmb3JtIDxlbT4oc2VlIGFjdGlvbj1sb2dpbik8L2VtPjwvbGk+CiA8bGk+PGVtPmxvZ291dDwvZW0+IC0gRGlzcGxheSB0aGUgbG9nb3V0IGZvcm0gPGVtPihzZWUgYWN0aW9uPWxvZ291dGZvcm0pPC9lbT48L2xpPgogPGxpPjxlbT5jaGFuZ2VzZXR0aW5nczwvZW0+IC0gRGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIGZvcm0gPGVtPihzZWUgYWN0aW9uPWNoYW5nZXNldHRpbmdzKTwvZW0+PC9saT4KIDxsaT48ZW0+Zm9yZ290cHc8L2VtPiAtIERpc3BsYXkgdGhlIGZvcmdvdCBwYXNzd29yZCBmb3JtIDxlbT4oc2VlIGFjdGlvbj1mb3Jnb3Rwdyk8L2VtPjwvbGk+CiA8bGk+PGVtPmxvc3R1c2VybmFtZTwvZW0+IC0gRGlzcGxheSB0aGUgbG9zdCB1c2VybmFtZSBmb3JtLiA8ZW0+KHNlZSBhY3Rpb249bG9zdHVzZXJuYW1lKTwvZW0+PC9saT4KPGxpPjxlbT5zaWxlbnQ8L2VtPiA9ICA8ZW0+KHNlZSBhY3Rpb249c2lsZW50KTwvZW0+IERpc3BsYXkgbm90aGluZywgYnV0IGV4cG9ydCBwcm9wZXJ0aWVzIGFuZCBvdGhlciBzbWFydHkgdmFyaWFibGVzIGZvciB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyLiAgSWYgbm8gdXNlciBpcyBsb2dnZWQgaW4sIHRoZW4gbm8gdmFyaWFibGVzIGFyZSBleHBvcnRlZC48L2xpPgo8L3VsPgo8L2xpPgoKPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gcmV0dXJudG89InBhZ2UiCiAgPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiwgbG9nb3V0LCBhbmQgY2hhbmdlc2V0dGluZ3MgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGNvbnRhaW5zIHRoZSBwYWdlIGlkIG9yIGFsaWFzIG9mIGEgcGFnZSB0byByZWRpcmVjdCB0bywgd2hlbiB0aGUgZm9ybSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgY29tcGxldGVkPC9wPgogIDxwPk5vdGU6IFRoYXQgb24gbG9naW4gdGhpcyBjYW4gYmUgb3ZlcnJpZGRlbiB1bmRlciBzb21lIGNpcmN1bXN0YW5jZXMuPC9wPgo8L0xJPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBvbmx5X2dyb3Vwcz0iZ3JvdXAxLCBncm91cDIsIGdyb3VwMyIKICAgPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBmb3Jtcy4gIEJhc2ljYWxseSBvbmx5IGFsbG93cyB1c2VycyB0byBsb2dpbiBpZiB0aGV5IGJlbG9uZyB0byB0aGF0IHBhcnRpY3VsYXIgZ3JvdXAocykuPC9wPgo8L2xpPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsb3N0dW5fZ3JvdXA9Imdyb3VwIgogICA8cD5Vc2VkIHdpdGggdGhlIGxvc3R1c2VybmFtZSBmb3JtLCB0aGlzIGZlYXR1cmUgc3BlY2lmaWVzIHRoZSBmcm9udGVuZCB1c2VyIGdyb3VwIHRvIGFzc3VtZSB0aHQgdXNlcnMgYXJlIG1lbWJlcnMgb2YuPC9wPgo8L2xpPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiBub2NhcHRjaGE9IjEiCiAgPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgdmVyaWZ5IGZvcm1zLCBUaGlzIHdpbGwgZGlzYWJsZSBjYXB0Y2hhIG9uIHRoZSBmb3JtLiBCeSBkZWZhdWx0LCBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGZvciBsb2dpbi4gIFRoaXMgaXMgYSBzZWN1cml0eSBtZWFzdXJlIGludGVudGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy48L3A+CjwvbGk+CjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHVpZD1udWxsCiAgPHA+VXNlZCB3aXRoIHRoZSB2aWV3dXNlciBhY3Rpb24uICBUaGlzIHBhcmFtZXRlciBpcyByZXF1aXJlZCB0byBzcGVjaWZ5IHdoaWNoIHVzZXIgdG8gdmlldyB0aGUgZGV0YWlscyBvZi48L3A+CjwvbGk+CjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGlubGluZT10cnVlCiAgPHA+VXNlZCB3aXRoIHRoZSBsb2dpbiBhY3Rpb24sIHRoaXMgcGFyYW1ldGVyIGluZGljYXRlcyB0aGF0IHRoZSByZXN1bHQgb2YgdGhlIGZvcm0gc3VibWlzc2lvbiBzaG91bGQgcmVwbGFjZSB0aGUgb3JpZ2luYWwgaW5wdXQgdGFnLjwvcD4KPC9saT4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbG9naW50ZW1wbGF0ZT1zdHJpbmcKICA8cD5UaGlzIHBhcmFtZXRlciBhbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCBsb2dpbiBmb3JtIHRlbXBsYXRlIHdpdGggdGhlIG5hbWUgb2YgYSBkaWZmZXJlbnQgb25lLjwvcD4KPC9saT4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbG9nb3V0dGVtcGxhdGU9c3RyaW5nCiAgPHA+VGhpcyBwYXJhbWV0ZXIgYWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgbG9nb3V0IHRlbXBsYXRlIHdpdGggdGhlIG5hbWUgb2YgYSBkaWZmZXJlbnQgb25lLjwvcD4KPC9saT4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gY2hhbmdlc2V0dGluZ3N0ZW1wbGF0ZT1zdHJpbmcKICA8cD5UaGlzIHBhcmFtZXRlciBhbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCBjaGFuZ2VzZXR0aW5ncyBmb3JtIHRlbXBsYXRlIHdpdGggdGhlIG5hbWUgb2YgYSBkaWZmZXJlbnQgb25lLjwvcD4KPC9saT4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gZm9yZ290cHd0ZW1wbGF0ZT1zdHJpbmcKICA8cD5UaGlzIHBhcmFtZXRlciBhbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCBmb3Jnb3QgcGFzc3dvcmQgZm9ybSB0ZW1wbGF0ZSB3aXRoIHRoZSBuYW1lIG9mIGEgZGlmZmVyZW50IG9uZS48L3A+CjwvbGk+CjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxvc3R1bnRlbXBsYXRlPXN0cmluZwogIDxwPlRoaXMgcGFyYW1ldGVyIGFsbG93cyBvdmVycmlkaW5nIHRoZSBsb3N0IHVzZXJuYW1lIGZvcm0gdGVtcGxhdGUgd2l0aCB0aGUgbmFtZSBvZiBhIGRpZmZlcmVudCBvbmUuPC9wPgo8L2xpPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiB2aWV3dXNlcnRlbXBsYXRlPXN0cmluZwogIDxwPlRoaXMgcGFyYW1ldGVyIGFsbG93cyBvdmVycmlkaW5nIHRoZSBkZWZhdWx0IHZpZXd1c2VyIHRlbXBsYXRlIHdpdGggdGhlIG5hbWUgb2YgYSBkaWZmZXJlbnQgb25lLjwvcD4KPC9saT4KPGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gYWZ0ZXJ2ZXJpZnl0ZW1wbGF0ZT1zdHJpbmcKICA8cD5UaGlzIHBhcmFtZXRlciBhbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCBhZnRlciB2ZXJpZmljYXRpb24gdGVtcGxhdGUgd2l0aCB0aGUgbmFtZSBvZiBhIGRpZmZlcmVudCBvbmUuPC9wPgo8L2xpPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiByZXNldHNlc3Npb250ZW1wbGF0ZT1zdHJpbmcKICA8cD5UaGlzIHBhcmFtZXRlciBhbGxvd3Mgb3ZlcnJpZGluZyB0aGUgZGVmYXVsdCByZXNldCBzZXNzaW9uIGZvcm0gdGVtcGxhdGUgd2l0aCB0aGUgbmFtZSBvZiBhIGRpZmZlcmVudCBvbmUuPC9wPgo8L2xpPgo8bGk+PGVtPihvcHRpb25hbCk8L2VtPiB2ZXJpZnlmb3JtdGVtcGxhdGU9c3RyaW5nCiAgPHA+VGhpcyBwYXJhbWV0ZXIgYWxsb3dzIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgdmVyaWZpY2F0aW9uIGZvcm0gdGVtcGxhdGUgd2l0aCB0aGUgbmFtZSBvZiBhIGRpZmZlcmVudCBvbmUuPC9wPgo8L2xpPgo8L3VsPgo8cD48c3Ryb25nPlRpcDo8L3N0cm9uZz4gWW91IGNhbiB1c2UgdGhlIHtjZ2VfbW9kdWxlX2hpbnR9IHBsdWdpbiBmcm9tIENHRXh0ZW5zaW9ucywgb3IgdGhlIHtjbXNfbW9kdWxlX2hpbnR9IHBsdWdpbiBpbiBDTVNNUyAyLjAgdG8gc2V0IHRoZXNlIHBhcmFtZXRlcnMgb24gYSBnbG9iYWwsIHBlci1wYWdlLXRlbXBsYXRlLCBvciBwZXItcGFnZSBiYXNpcyB3aXRob3V0IGhhdmluZyB0byBhZGp1c3QgZXZlcnkgY2FsbCwgYW5kIHdoaWxlIHN0aWxsIG1haW50YWluaW5nIHByZXR0eSBVUkwncy48L3A+Cgo8aDM+VXNpbmcgRGlmZmVyZW50IFRlbXBsYXRlcy48L2gzPgo8cD5BcyBvZiBGRVUgMS4zMCBpdCBpcyBwb3NzaWJsZSB0byBzcGVjaWZ5IGRpZmZlcmVudCB0ZW1wbGF0ZXMgZm9yIG1hbnkgb2YgdGhlIEZFVSBtb2R1bGUgdGVtcGxhdGVzLiAgSXQgaXMgYWxzbyBmbGV4aWJsZS4gIFlvdSBjYW4gdXNlIGdsb2JhbCBjb250ZW50IGJsb2Nrcywgb3IgZmlsZSBiYXNlZCB0ZW1wbGF0ZXMgb3IKIGFueSBvdGhlciBzbWFydHkgcmVzb3VyY2UgYXMgYSB0ZW1wbGF0ZS48L3A+Cjx1bD4KICA8bGk+VGVtcGxhdGUgbmFtZXMgZW5kaW5nIHdpdGggLnRwbAogICAgPHA+SWYgdGhlIHNwZWNpZmllZCB0ZW1wbGF0ZSBuYW1lIGlzIG5vdCBhIHNtYXJ0eSByZXNvdXJjZSwgYnV0IGVuZHMgd2l0aCB0aGUgZXh0ZW5zaW9uIDxjb2RlPi50cGw8L2NvZGU+LCB0aGVuIEZFVSAoYWN0dWFsbHkgQ0dFeHRlbnNpb25zKSB3aWxsIGFzc3VtZSB0aGF0IHlvdSB3YW50IGEgZmlsZSB0ZW1wbGF0ZSBmcm9tIHRoZSBtb2R1bGUgZGlyZWN0b3J5LCBvciBmcm9tIHRoZSBtb2R1bGVfY3VzdG9tIGRpcmVjdG9yeSA8ZW0+KHNlZSA8YSBocmVmPSJodHRwOi8vZG9jcy5jbXNtYWRlc2ltcGxlLm9yZyI+aHR0cDovL2RvY3MuY21zbWFkZXNpbXBsZS5vcmc8L2E+IGZvciBhIGRlc2NyaXB0aW9uIG9mIHRoZSBtb2R1bGVfY3VzdG9tIHN0dWZmKTwvZW0+LgogIDwvbGk+CiAgPGxpPmdsb2JhbGNvbnRlbnQ6Z2NiX25hbWUKICAgIDxwPlNwZWNpZnlpbmcgYSB0ZW1wbGF0ZSBpbiB0aGlzIHN5bnRheCBhbGxvd3MgeW91IHRvIHVzZSBhIGdsb2JhbCBjb250ZW50IGJsb2NrIGFzIGFzIHJlcGxhY2VtZW50IHRlbXBsYXRlLjwvcD4KICA8L2xpPgogIDxsaT50ZW1wbGF0ZTpnY2JfbmFtZQogICAgPHA+U3BlY2lmeWluZyBhIHRlbXBsYXRlIGluIHRoaXMgc3ludGF4IGFsbG93cyB5b3UgdG8gdXNlIGEgcGFnZSB0ZW1wbGF0ZSBhcyBhcyByZXBsYWNlbWVudCB0ZW1wbGF0ZS48L3A+CiAgPC9saT4KICA8bGk+Y21zX3RlbXBsYXRlOm5hbWUgPGVtPihDTVNNUyAyLjAgb25seSk8L2VtPgogICAgPHA+U3BlY2lmeWluZyBhIHRlbXBsYXRlIGluIHRoaXMgc3ludGF4IGFsbG93cyB5b3UgdG8gdXNlIGEgdGVtcGxhdGUgZnJvbSB3aXRoaW4gRGVzaWduIE1hbmFnZXIgYXMgYXMgcmVwbGFjZW1lbnQgdGVtcGxhdGUuPC9wPgogIDwvbGk+CiAgPGxpPmZpbGU6ZmlsZW5hbWUudHBsCiAgICA8cD5Vc2luZyB0aGlzIHN5bnRheCBhbGxvd3MgeW91IHRvIHVzZSBhIGZpbGUgYmFzZWQgdGVtcGxhdGUgZnJvbSB3aXRoaW4gdGhlIHNtYXJ0eSB0ZW1wbGF0ZXMgZGlyIDxlbT4odXN1YWxseSB0bXAvdGVtcGxhdGVzKTwvZW0+LgogIDwvbGk+CjwvdWw+CjxwPlRoZXNlIG1ldGhvZHMgY2FuIGJlIHVzZWQgd2l0aCB0aGUgbG9naW50ZW1wbGF0ZSwgbG9nb3V0dGVtcGxhdGUsIGNoYW5nZXNldHRpbmdzdGVtcGxhdGUsIGFuZCBmb3Jnb3Rwd3RlbXBsYXRlIHBhcmFtZXRlcnMuPC9wPgo8cD5Ob3RlOiBUaGVzZSBwYXJhbWV0ZXJzIG1heSBub3QgYmUgcGFzc2VkIHRvIHRoZSB2YXJpb3VzIGZvcm1zIGZyb20gdGhlIHByaW1hcnkge0Zyb250RW5kVXNlcnN9IGNhbGwuICBJbnN0ZWFkLCB5b3Ugc2hvdWxkIHVzZSB0aGUge2NnZV9tb2R1bGVfaGludH0gdGFnIG9uIHRoZSBwYWdlIHdoZXJlIHRoZSB2YXJpb3VzIGZvcm1zIG9yIHZpZXdzIHdpbGwgYmUgZGlzcGxheWVkLiAgIGkuZTogIHtjZ2VfbW9kdWxlX2hpbnQgbW9kdWxlPUZyb250RW5kVXNlcnMgY2hhbmdlc2V0dGluZ3N0ZW1wbGF0ZT0nZ2xvYmFsX2NvbnRlbnQ6bXljaGFuZ2VzZXR0aW5ncyd9LjwvcD4KCjxwPkFzIHBlciB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkIGFzLWlzLiBQbGVhc2UgcmVhZCB0aGUgdGV4dApvZiB0aGUgbGljZW5zZSBmb3IgdGhlIGZ1bGwgZGlzY2xhaW1lci48L3A+CjxoMz5SZXF1aXJlbWVudHM8L2gzPgo8cD5JbiBvcmRlciB0byBpbXBsZW1lbnQgdGhlIGZvcmdvdHRlbiBwYXNzd29yZCBmdW5jdGlvbmFsaXR5LCB0aGlzIG1vZHVsZSByZXF1aXJlcyB0aGUgQ01TTWFpbGVyIG1vZHVsZSB0byBiZSBwcmV2aW91c2x5IGluc3RhbGxlZCBhbmQgcHJvcGVybHkgY29uZmlndXJlZC48L3A+CjxwPkZvciBlbmNyeXB0ZWQgZmllbGRzIHRoZSBtY3J5cHQgZnVuY3Rpb25hbGl0eSBpcyByZXF1aXJlZC48L3A+CjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPgo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDgsIFJvYmVydCBDYW1wYmVsbCA8YSBocmVmPSJtYWlsdG86Y2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZyI+Jmx0O2NhbGd1eTEwMDBAY21zbWFkZXNpbXBsZS5vcmcmZ3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPgo8cD5UaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQppdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQp0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgooYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLjwvcD4KPHA+SG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCmFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQppbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCk1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbgpzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLjwvcD4KPHA+VGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCmJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCk1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKT3IgcmVhZCBpdCA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPm9ubGluZTwvYT48L3A+Cg==]]></data>
	</file>
	<file>
	  <filename>/icons/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/icons/edit.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhEAAQAOZ/ANfq//r+/ur0/+Xy/9/1/9rs/9bu/nehxf/+/fX///H4/+32/+j0/+P3/+bz/+Hw/3+ny3mgxV2XzViTyXqhxVuXzePx//z9/3eew3CYv/j7//r9//3+///+/9zu//f7//j8/3GZv/T6//b6/9/u/93u/+3+//b7/+Dv/1qTyVeY0HGYv/r8/8jf84etz26Xv1eTyfP4/+v1/uX1+FuY0NHq+q/L5IWhwVCKwG6fyun5/+n6/8DL2dzj6VaRyVqAp+T4//z+//T5//L5+9zt/6Kyxc/b5ODy/+Dn63ifxD9nkUdoj+P//1KKv9/v/52ww/D6/3KawfP6/1ORylGSzGOc0N/w/9fi64ykvJWmvPT9//f+/+Xx/////uH0/42ryf7+//7//1qQw0N1pkx5pYuetleNwFiVzePt8luWz+v7/9PZ41qX0J650MPM29ni6vH3++Lv/97u//b4+VJwllZzlVWTytjr/+Lx/16Bp+31/4Sdt+b4/3adw////////yH5BAEAAH8ALAAAAAAQABAAAAfjgH95BxQUGIeHfRERBz9/fyt+fgiSlX5dkhCPIX5rWZVgF35FPH6af0lIdWWSHEEgfk9LRi6PUQg9c5IXGx8fcG9DOY8ZlWEXLBonIgpQCRPEfh0dQRvKIgsDFiYp0R28GiNSC1x4cWrQf8UcGyAfMTLaKHI66ZwX4QoCDhZOJQVAYDx64YeDED0M5Hko4KGBj0dmAqCRsc+ClYUAWhiw80jMFTpYEjx4UOKOly9KbKR51MSPmz1aSJAgAuDIjTYmpjzC4WfLDBM7+DQgQKCGASZUHpGpwlSC0woVztBgo2LMn0AAOw==]]></data>
	</file>
	<file>
	  <filename>/icons/users.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhEAAQAPYAAAxdeA1deA1eeA5hfA9ifRBifhBjfhBlgRJohBJsiBJsiRNuixJykRNzkhRykBV0kxR1lBZ1lBR5mRV8nRh7nBh8nBh8nRh9nRh/oBWAoheBoxmDpRqDpRiFpxqEphmFqBmGqRqGqBmHqhuHqhqIqxuIqxuKrRyLrxyMrx2QtR6QtB6Stx2bsx6dtR+TuB+TuR6ZuyGbwiGcwyGcxCKhyiOiyyOjyySjzCSkziWq1CWr1Saq1Caq1Se12iiw3Cix3Sm53im14iq45Su/5Su/5gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAEUALAAAAAAQABAAAAeCgEWCg0UtLISIgzBAREQ9iYg7QkFBQjaQgzs+mz6XmEU4O6I7M59FMjc2NzgppikyMbEfphsvtikQnxocKCgnJxuQFx8lIR4bGxzEHxKDDRgVFBQV1NHTGA2CDhAP3d7eEBAOggoL5ufo54IHCO3u7+0HgwQEBfb3+IkC+/wCAISBAAA7]]></data>
	</file>
	<file>
	  <filename>/icons/xml_rss.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhJAAOAOYAAP/////9+f/9+v/68f/58P/45P/24//z3v7x2/7v2v7pvP7os/7muf7nqP7ktf7lr/7jo/7iq/7jmf7frv7gnv7cq/7fiv7cmf7YlP3be/3eZP3bYP3Vm/3aX/7Uj/3VfP3WWv3Qiv3Rgv3VWf3UWP3SXPzQY/3Mhf3PUPzLU/zKW/3FafzHRvzDU/zESv3DXfzAYvzAPPy8S/68N/64Mvy2Qvy4M/6xKfywOvywKfypMfuoJvypH/yjKfukHPuhFfucE/uaE/uZC/+WBf+VBPuVCf2TAvuRAPuSAf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEHAEkALAAAAAAkAA4AAAf/gDdEREOFhoeIiYqHgjMbGpCRkpOUlZAdNIMkIJydnp+goZ+DKKWlDQWlGQUlpQUSphasKLKmtqWDLLq6KQALLAIGuwAAuwICJiwQxbvNLIMx0dIPAAoALtLEHzEqxCoxFADS49GDNufoNsQR6QABAzYMxC02FwDp+IM5+/w5BwAi+gHAAOAFAAcAZOQg2K/hIB4QI64AQABARB4AalQMUCMjDw8WL14c9KOkSQAIfACYcBIHDAAhcADA8SPETBw4dpgsOUiIT58VAAARwgGADp9GhQAQoiPpCWLEEvz0OQiJVas9glztUQSr1a5IenztQTbrVauDiBxZy7at27dwDd0SMZK2rt27ePPODQQAOw==]]></data>
	</file>
	<file>
	  <filename>/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/lang/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3dhcm5fc3Ryb25ncGFzc3dvcmQnXSA9ICdOb3RlLCBieSBkZWZhdWx0LCBzdHJvbmcgcGFzc3dvcmRzIGFyZSBhIHJlcXVpcmVtZW50LCB0aG91Z2ggdGhlIHNldHRpbmdzIGZvciBwYXNzd29yZHMgY2FuIGJlIGNvbnRyb2xsZWQgZnJvbSB3aXRoaW4gdGhlIGFkbWluIHBhbmVsIGZvciB0aGlzIG1vZHVsZSc7CiRsYW5nWydjb2RlJ10gPSAnQ29kZSc7CiRsYW5nWyd2ZXJpZnknXSA9ICdWZXJpZnknOwokbGFuZ1snaW5mb192ZXJpZnlfaWRlbnRpdHknXSA9ICdQbGVhc2UgZW50ZXIgdGhlIHZlcmlmaWNhdGlvbiBjb2RlIHlvdSByZWNlaXZlZCBpbiB0aGlzIGZvcm0gPGVtPihpdCBtYXkgZXZlbiBhdXRvbWF0aWNhbGx5IGJlIHByb3ZpZGVkKS48L2VtPiB0byB2ZXJpZnkgeW91ciBhY2NvdW50Lic7CiRsYW5nWyd0aXRsZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnWW91IGhhdmUgbWlzcGxhY2VkIHlvdXIgY3JlZHMnOwokbGFuZ1snbXNnX3ZlcmlmaWNhdGlvbl9jb21wbGV0ZSddID0gJ1lvdSBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IHZlcmlmaWVkLiAgVGhhbmsgeW91Ljxici8+WW91IG1heSBuZWVkIHRvIHJlLWVudGVyIHlvdXIgbG9naW4gY3JlZGVudGlhbHMgdG8gYWNjZXNzIG91ciBwcm90ZWN0ZWQgYXJlYXMuJzsKJGxhbmdbJ2FjY291bnRfdmVyaWZpY2F0aW9uJ10gPSAnQWNjb3VudCBWZXJpZmljYXRpb24nOwokbGFuZ1sncHJvbXB0X3ZlcmlmeV9wYWdlJ10gPSAnUGFnZSBJRC9BbGlhcyB0byBIYW5kbGUgdGhlIFZlcmlmaWNhdGlvbiBQcm9jZXNzIConOwokbGFuZ1snaW5mb192ZXJpZnllbWFpbF9zZW50J10gPSAnVmVyaWZpY2F0aW9uIGluc3RydWN0aW9ucyBoYXZlIGJlZW4gc2VudCc7CiRsYW5nWydlcnJvcl92YWxpZGF0ZV9pbnN1ZmZpY2llbnRpbmZvJ10gPSAnVGhpcyB1c2VyIG11c3QgcmV2YWxpZGF0ZSBoaW1zZWxmLCBidXQgdGhlcmUgaXMgbm90IGVub3VnaCB1c2VyIGluZm9ybWF0aW9uIGF2YWlsYWJsZSB0byBtYWtlIHRoYXQgcG9zc2libGUuJzsKJGxhbmdbJ2luZm9fbXVzdF92YWxpZGF0ZSddID0gJ1RoaXMgdXNlciBtdXN0IHZhbGlkYXRlIHRoZW1zZWx2ZXMgYmVmb3JlIGxvZ2dpbmcgaW4nOwokbGFuZ1snZmV1X3Byb3RlY3RlZF9sb2dvdXRsaW5rJ10gPSAnRkVVIExvZ291dCBMaW5rJzsKJGxhbmdbJ2hkcl9idWxrX3NldHBhc3N3b3JkJ10gPSAnQnVsayBBZGp1c3QgVXNlciBQYXNzd29yZHMnOwokbGFuZ1snaW5mb19idWxrX3NldHBhc3N3b3JkJ10gPSAnVGhpcyBmb3JtIGFsbG93cyBleHBsaWNpdGx5IHNldHRpbmcgdGhlIHBhc3N3b3JkIGZvciBzZWxlY3RlZCB1c2Vycy4gIFRoZSB1c2VycyBhcmUgbm90IHNlbnQgYW4gZW1haWwgaW5kaWNhdGluZyB0aGF0IHRoZWlyIHBhc3N3b3JkIGhhcyBjaGFuZ2VkLiAgVGhlIHBhc3N3b3JkIHNwZWNpZmllZCBtdXN0IGNvbmZpcm0gdG8gdGhlIHBhc3N3b3JkIHJ1bGVzIGluIHRoZSBtb2R1bGUgc2V0dGluZ3MuJzsKJGxhbmdbJ2hkcl9idWxrX3NldGV4cGlyeSddID0gJ0J1bGsgQWRqdXN0IFVzZXIgRXhwaXJ5JzsKJGxhbmdbJ2luZm9fYnVsa19zZXRleHBpcnknXSA9ICdUaGlzIGZvcm0gYWxsb3dzIGFkanVzdGluZyB0aGUgZXhwaXJ5IGRhdGUgZm9yIHRoZSBzZWxlY3RlZCB1c2Vycy4gIEV4cGlyZWQgdXNlcnMgY2Fubm90IGxvZ2luIHRvIHRoZSB0aGUgd2Vic2l0ZS4gIEl0IGlzIHBvc3NpYmxlIHRvIHNldCBhbiBleHBpcnkgZGF0ZSB0byB0aGUgcGFzdCc7CiRsYW5nWydidWxrX2RlbGV0ZSddID0gJ0RlbGV0ZSc7CiRsYW5nWydidWxrX2Rpc2FibGUnXSA9ICdEaXNhYmxlJzsKJGxhbmdbJ2J1bGtfZW5hYmxlJ10gPSAnRW5hYmxlJzsKJGxhbmdbJ2J1bGtfZm9yY2VjaHB3J10gPSAnRm9yY2UgcGFzc3dvcmQgY2hhbmdlJzsKJGxhbmdbJ2J1bGtfc2V0cGFzc3dvcmQnXSA9ICdTZXQgYSBuZXcgcGFzc3dvcmQnOwokbGFuZ1snYnVsa19zZXRleHBpcnknXSA9ICdTZXQgZXhwaXJ5IGRhdGUnOwokbGFuZ1snd2l0aF9zZWxlY3RlZCddID0gJ1dpdGggc2VsZWN0ZWQnOwokbGFuZ1snYnVsa19zZWxlY3RvbmUnXSA9ICdQbGVhc2Ugc2VsZWN0IG9uZSBvciBtb3JlIHVzZXJzJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VycGFzc3dvcmQnXSA9ICdQbGVhc2UgZW50ZXIgYSBwYXNzd29yZCc7CiRsYW5nWyd0cGx0eXBlX2Noc2V0dGluZ3NfZm9ybSddID0gJ0NoYW5nZSBTZXR0aW5ncyBGb3JtJzsKJGxhbmdbJ3RwbHR5cGVfZm9yZ290X3Bhc3N3b3JkX2Zvcm0nXSA9ICdGb3Jnb3QgUGFzc3dvcmQgRm9ybSc7CiRsYW5nWyd0cGx0eXBlX2ZvcmdvdF9wYXNzd29yZF9lbWFpbCddID0gJ0ZvcmdvdCBQYXNzd29yZCBFbWFpbCc7CiRsYW5nWyd0cGx0eXBlX3ZlcmlmeV9lbWFpbCddID0gJ1ZlcmlmaWNhdGlvbiBFbWFpbCc7CiRsYW5nWyd0cGx0eXBlX2ZvcmdvdF9wYXNzd29yZF92ZXJpZnknXSA9ICdGb3Jnb3R0ZW4gUGFzc3dvcmQgVmVyaWZ5IEZvcm0nOwokbGFuZ1sndHBsdHlwZV9mb3JjZV9uZXdfcGFzc3dvcmQnXSA9ICdGb3JjZSBOZXcgUGFzc3dvcmQnOwokbGFuZ1sndHBsdHlwZV9sb3N0X3VzZXJuYW1lX2Zvcm0nXSA9ICdMb3N0IFVzZXJuYW1lIEZvcm0nOwokbGFuZ1sndHBsdHlwZV9sb3N0X3VzZXJuYW1lX2NvbmZpcm0nXSA9ICdMb3N0IFVzZXJuYW1lIENvbmZpcm0gRm9ybSc7CiRsYW5nWyd0cGx0eXBlX3ZlcmlmeV9mb3JtJ10gPSAnQWNjb3VudCBWZXJpZmljYXRpb24gRm9ybSc7CiRsYW5nWyd0cGx0eXBlX3ZpZXdfdXNlciddID0gJ1ZpZXcgVXNlcic7CiRsYW5nWyd0cGx0eXBlX3Jlc2V0X3Nlc3Npb24nXSA9ICdSZXNldCBTZXNzaW9uJzsKJGxhbmdbJ21zZ191c2VyYWRkZWQnXSA9ICdOZXcgdXNlciBhZGRlZCBzdWNjZXNzZnVsbHknOwokbGFuZ1snbXNnX3VzZXJtb2RpZmllZCddID0gJ1VzZXIgZGV0YWlscyBoYXZlIGJlZW4gdXBkYXRlZCc7CiRsYW5nWydlcnJvcl9mbGR2YWxsZW5ndGgnXSA9ICdUaGUgdmFsdWUgc3BlY2lmaWVkIGZvciAlcyB0b28gbG9uZyc7CiRsYW5nWyd0aXRsZV9hZG1pbm5hdl9zZXR0aW5ncyddID0gJ0Zyb250RW5kVXNlcnMgU2V0dGluZ3MnOwokbGFuZ1snZGVzY19hZG1pbm5hdl9zZXR0aW5ncyddID0gJ1NldHRpbmdzIGZvciB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUnOwokbGFuZ1sndHBsdHlwZV9Gcm9udEVuZFVzZXJzJ10gPSAnRnJvbnRFbmRVc2Vycyc7CiRsYW5nWyd0cGx0eXBlX2xvZ2luX2Zvcm0nXSA9ICdMb2dpbiBGb3JtJzsKJGxhbmdbJ3RwbHR5cGVfbG9nb3V0X2Zvcm0nXSA9ICdMb2dvdXQgRm9ybSc7CiRsYW5nWydwcm9tcHRfZm9yJ10gPSAnRm9yJzsKJGxhbmdbJ3Byb21wdF9mb3JjZV9jaHNldHRpbmdzJ10gPSAnRm9yY2UgdGhlIHVzZXIgdG8gY2hhbmdlIHNldHRpbmdzIG9uIHRoZSBuZXh0IGxvZ2luJzsKJGxhbmdbJ3Byb21wdF9mb3JjZV9yZXZhbGlkYXRlJ10gPSAnVGhpcyB1c2VyIG11c3QgdmFsaWRhdGUgdGhlbWVzZWx2ZXMgYmVmb3JlIHRoZSBuZXh0IGxvZ2luJzsKJGxhbmdbJ2ZldV9wcm90ZWN0ZWRfc2VjdGlvbmhlYWQnXSA9ICdQcm90ZWN0ZWQgU2VjdGlvbkhlYWRlcic7CiRsYW5nWydlcnJvcl9sb3N0dW5fYmFkcGFzc3dvcmQnXSA9ICdTb3JyeS4uLiBidXQgdGhlIHBhc3N3b3JkIHlvdSBwcm92aWRlZCBpcyBpbmNvcnJlY3QuJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl91c2Vybm90Zm91bmQnXSA9ICdTb3JyeS4uLiBnaXZlbiB0aGUgaW5mb3JtYXRpb24geW91IHByb3ZpZGVkLi4uIHdlIGNvdWxkIG5vdCBmaW5kIHlvdXIgdXNlciBhY2NvdW50JzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub2RhdGEnXSA9ICdZb3UgZGlkIG5vdCBlbnRlciBzdWZmaWNpZW50IGRhdGEgaW50byB0aGUgbG9zdCB1c2VybmFtZSBmb3JtIGZvciB1cyB0byBiZSBhYmxlIHRvIGZpbmQgeW91ciBhY2NvdW50IGluIG91ciBkYXRhYmFzZS4nOwokbGFuZ1snaW5mb19sb3N0dW5fdGV4dGZpZWxkJ10gPSAnSWYgeW91IGNhbiByZWNhbGwgYSBwb3J0aW9uIG9mIHRoZSB0ZXh0IGZvciB0aGlzIGZpZWxkIHBsZWFzZSBlbnRlciBpdCBoZXJlIChtaW5pbXVtIG9mIDQgY2hhcmFjdGVycyBub3QgaW5jbHVkaW5nIHdoaXRlc3BhY2UpJzsKJGxhbmdbJ2luZm9fbG9zdHVuX3RleHRhcmVhJ10gPSAnSWYgeW91IGNhbiByZWNhbGwgc29tZSBvZiB0aGUgdGV4dCB5b3UgbWF5IGhhdmUgZW50ZXJlZCBpbiB0aGlzIGZpZWxkLCBwbGVhc2UgZW50ZXIgYSBwb3J0aW9uIG9mIGl0IGhlcmUuICBUaGlzIHdpbGwgY3JlYXRlIGEgc3Vic3RyaW5nIHNlYXJjaC4gIFlvdSBtdXN0IGVudGVyIGF0IGxlYXN0IDQgY2hhcmFjdGVycy4nOwokbGFuZ1snaW5mb19sb3N0dW5fZW1haWwnXSA9ICdJZiB0aGVyZSBhcmUgbXVsdGlwbGUgZW1haWwgYWRkcmVzc2VzIGFzc29jaWF0ZWQgd2l0aCB5b3VyIGFjY291bnQsIHRyeSB0byBlbnRlciBhdCBsZWFzdCBvbmUgb2YgdGhlbSBoZXJlLiAgVGhpcyBjYW4gYWlkZSBpbiB1bmlxdWVseSBpZGVudGlmeWluZyB5b3UnOwokbGFuZ1snaW5mb19sb3N0dXNlcm5hbWUnXSA9ICc8cD5Tby4uLiB5b3Ugc2VlbSB0byBoYXZlIGZvcmdvdHRlbiBvciBsb3N0IHRoZSB1c2VybmFtZSBvciBlbWFpbCBhZGRyZXNzIHlvdSB1c2VkIHRvIGxvZ2luIHRvIHRoaXMgYWNjb3VudCB3aXRoLiAgRG9uXCd0IEZyZXQsIHdlIGNhbiBoZWxwLjwvcD48cD5FbnRlciBhcyBtdWNoIGluZm9ybWF0aW9uIGFzIHBvc3NpYmxlIGludG8gdGhpcyBmb3JtLCBhbmQgd2Ugd2lsbCBzZWUgaWYgd2UgY2FuIHVuaXF1ZWx5IGlkZW50aWZ5IHlvdSBhbmQgZmluZCB5b3UgeW91ciBsb2dpbiBuYW1lLjwvcD4nOwokbGFuZ1snZXJyb3JfeW91YXJlYWJvdCddID0gJ0htbW0uLi4gaXQgbG9va3MgbGlrZSB5b3UgbWF5IGJlIGEgYm90LCBvciB0cnlpbmcgc29tZXRoaW5nIG5lZmFyaW91cy4uLic7CiRsYW5nWydlcnJvcl9kZWxldGVwcm9wJ10gPSAnQW4gZXJyb3Igb2NjdXJyZWQgZGVsZXRpbmcgdGhlIHByb3BlcnR5JzsKJGxhbmdbJ2Vycm9yX2FjdGlvbl9ub3Rjb25maXJtZWQnXSA9ICdPb3BzLiAgSXQgbG9va3MgbGlrZSB5b3UgZmFpbGVkIHRvIGNvbmZpcm0gYW4gaW1wb3J0YW50IGFjdGlvbi4nOwokbGFuZ1snbXNnX2NvbmZpcm1fZGVsZXRlcHJvcCddID0gJ1lvdSBtdXN0IHNlbGVjdCAmcXVvdDtZZXMmcXVvdDsgaW4gdGhlIGNvbmZpcm1hdGlvbiBib3ggdG8gY29uZmlybSB0aGF0IHlvdSB3aXNoIHRvIGRlbGV0ZSB0aGlzIHByb3BlcnR5Lic7CiRsYW5nWydwcm9tcHRfY29uZmlybV9kZWxldGVwcm9wJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIHByb3BlcnR5Pyc7CiRsYW5nWyd3YXJuX2RlbGV0ZXByb3AnXSA9ICc8c3Ryb25nPlVzZSBDYXV0aW9uPC9zdHJvbmc+IERlbGV0aW5nIGEgcHJvcGVydHkgd2lsbCBkZWxldGUgYW55IGRhdGEgYXNzb2NpYXRlZCB3aXRoIGFueSB1c2VycyBmb3IgdGhpcyBwcm9wZXJ0eS4gIEl0IHdpbGwgYWxzbyByZW1vdmUgdGhpcyBwcm9wZXJ0eSBmcm9tIGFsbCBncm91cCByZWxhdGlvbnMuJzsKJGxhbmdbJ2hkcl9kZWxldGVwcm9wJ10gPSAnRGVsZXRlIFByb3BlcnR5JzsKJGxhbmdbJ21zZ19jYW5jZWxsZWQnXSA9ICdPcGVyYXRpb24gY2FuY2VsbGVkJzsKJGxhbmdbJ2Vycm9yX2RlbGV0ZV9wcm9wZGVmbiddID0gJ1NvcnJ5LCBidXQgdGhpcyBwcm9wZXJ0eSBjYW5ub3QgYmUgZGVsZXRlZC4gIEFzIGl0IGlzIGFzc29jaWF0ZWQgYXMgcmVxdWlyZWQsIG9yIGhpZGRlbiB3aXRoIG9uZSBvciBtb3JlIHVzZXIgZ3JvdXBzLiAgT25seSBvcHRpb25hbC9vZmYgcHJvcGVydGllcyBjYW4gYmUgZGVsZXRlZC4nOwokbGFuZ1sndGl0bGVfYWRkX3VzZXInXSA9ICdDcmVhdGUgYSBuZXcgdXNlciBhY2NvdW50JzsKJGxhbmdbJ2luZm9fcGFzc3dvcmRfcmVzZXQnXSA9ICdZb3VyIHBhc3N3b3JkIGhhcyBzdWNjZXNzZnVsbHkgYmVlbiByZXNldC4gIFBsZWFzZSBsb2dpbiB0byBjb250aW51ZS4nOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRub3RjaGFuZ2VkJ10gPSAnUGxlYXNlIGVuc3VyZSB5b3UgY2hhbmdlIHlvdXIgcGFzc3dvcmQgdG8gYSBuZXcgdmFsdWUsIGFuZCB2ZXJpZnkgdGhhdCBpdCBpcyBjb3JyZWN0Lic7CiRsYW5nWydtc2dfZm9yY2VfbmV3cHcnXSA9ICdXZWxjb21lIHRvIHRoZSBzeXN0ZW0uICBGb3Igc2VjdXJpdHkgcHVycG9zZXMsIHBsZWFzZSBzcGVjaWZ5IGEgbmV3IHBhc3N3b3JkLic7CiRsYW5nWydsYmxfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSc7CiRsYW5nWydpbmZvX2ZvcmNlX25ld3B3X3RlbXBsYXRlJ10gPSAnVGhpcyB0ZW1wbGF0ZSBpcyB1c2VkIHRvIGRpc3BsYXkgdGhlIGZvcm0gdG8gZm9yY2UgdGhlIHVzZXIgdG8gY2hhbmdlIGhpcyBwYXNzd29yZC4nOwokbGFuZ1snZm9yY2VfbmV3cHdfdGVtcGxhdGUnXSA9ICdGb3JjZSBOZXcgUGFzc3dvcmQgVGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX25ld3B3J10gPSAnRm9yY2UgdGhpcyB1c2VyIHRvIHJlc2V0IGhpcyBwYXNzd29yZCBhdCB0aGUgbmV4dCBsb2dpbic7CiRsYW5nWydwcm9tcHRfZGlzYWJsZWQnXSA9ICdJcyB0aGlzIGFjY291bnQgZGlzYWJsZWQ/JzsKJGxhbmdbJ21zZ191c2VyX3N0YXRlX2NoYW5nZWQnXSA9ICdVc2VyIHN0YXRlIGNoYW5nZWQnOwokbGFuZ1snaW5mb19kaXNhYmxlZCddID0gJ1RoaXMgdXNlciBhY2NvdW50IGlzIGRpc2FibGVkLCBwcmV2ZW50aW5nIGxvZ2luJzsKJGxhbmdbJ2VuYWJsZV91c2VyJ10gPSAnRW5hYmxlIHRoaXMgdXNlciBhY2NvdW50JzsKJGxhbmdbJ2Rpc2FibGVfdXNlciddID0gJ0Rpc2FibGUgdGhpcyB1c2VyIGFjY291bnQgYW5kIGVuc3VyZSB0aGF0IHRoZSB1c2VyIGlzIGxvZ2dlZCBvdXQnOwokbGFuZ1snZXJyb3JfYWNjb3VudGRpc2FibGVkJ10gPSAnV2UgYXJlIHNvcnJ5LCBidXQgdGhpcyBhY2NvdW50IGFwcGVhcnMgdG8gaGF2ZSBiZWVuIGRpc2FibGVkLiAgUGxlYXNlIGNvbnRhY3Qgc2l0ZSBhZG1pbmlzdHJhdG9ycyB0byByZXNvbHZlIHRoaXMgaXNzdWUnOwokbGFuZ1sndGl0bGVfZm9yZ290cHcnXSA9ICdGb3Jnb3R0ZW4gUGFzc3dvcmQnOwokbGFuZ1sndmVyaWZ5X2lkZW50aXR5J10gPSAnVmVyaWZ5IHlvdXIgaWRlbnRpdHknOwokbGFuZ1snNDAzZXJyb3InXSA9ICdHZW5lcmF0ZSBhIDQwMyBFcnJvcic7CiRsYW5nWydwcm9tcHRfZW5oYW5jZWRwdyddID0gJ1JlcXVpcmUgYSBzdHJvbmcgcGFzc3dvcmQnOwokbGFuZ1snaW5mb19lbmhhbmNlZHB3J10gPSAnSWYgZW5hYmxlZCwgcGFzc3dvcmRzIHdpbGwgcmVxdWlyZSBhdCBsZWFzdCBvbmUgdXBwZXJjYXNlIGFscGhhYmV0aWMgY2hhcmFjdGVyIGFuZCBvbmUgZGlnaXQuJzsKJGxhbmdbJ3Byb21wdF9wd3JlcXVpcmVkY2hhcnMnXSA9ICdSZXF1aXJlIG9uZSBvZiB0aGVzZSBjaGFyYWN0ZXJzIGluIHRoZSBwYXNzd29yZCc7CiRsYW5nWydpbmZvX3B3cmVxdWlyZWRjaGFycyddID0gJ0lmIG5vbiBlbXB0eSwgYW5kIHN0cm9uZyBwYXNzd29yZHMgYXJlIGVuYWJsZWQsIGF0IGxlYXN0IG9uZSBvZiB0aGUgc3BlY2lmaWVkIGNoYXJhY3RlcnMgd2lsbCBiZSByZXF1aXJlZCBpbiB0aGUgcGFzc3dvcmQgaW4gYWRkaXRpb24gdG8gdGhlIHN0cm9uZyBwYXNzd29yZCByZXF1aXJlbWVudHMuJzsKJGxhbmdbJ2Vycm9yX2NhbnRzZXRwcm9wZXJ0eXR5cGUnXSA9ICdDYW5ub3Qgc2V0IHByb3BlcnR5IG9mIHRoaXMgdHlwZSc7CiRsYW5nWydpbmZvX2ltcG9ydF9mb3JtYXQnXSA9ICc8cD5Gb3IgaW5mb3JtYXRpb24gb24gdGhlIGltcG9ydCBmb3JtYXQgeW91IHNob3VsZCBjcmVhdGUgYSBzYW1wbGUgdXNlciAob3IgdHdvKSBpbiB0aGUgZGVzaXJlZCBncm91cHMgYW5kIGV4cG9ydCB0aGF0IGluZm9ybWF0aW9uLiAgVGhlIHJlc3VsdGluZyBmaWxlIGNhbiB0aGVuIGJlIHVzZWQgYXMgYSB0ZW1wbGF0ZSBmb3IgZnVydGhlciBpbXBvcnRzPC9wPjxici8+CiA8cD5BZGRpdGlvbmFsbHksIGEgdHh0cGFzc3dvcmQgY29sdW1uIGNhbiBiZSBhZGRlZCB0byB0aGUgaW1wb3J0IGZpbGUgdG8gZGVmaW5lIChpbiBwbGFpbiB0ZXh0KSB0aGUgcGFzc3dvcmQgZm9yIHVzZXJzLiAgSWYgdGhlIHR4dHBhc3N3b3JkIGNvbHVtbiBpcyBlbXB0eSBmb3IgYW4gZXhpc3RpbmcgdXNlciBoaXMgcGFzc3dvcmQgaXMgbm90IHRvdWNoZWQuICBJZiB0aGlzIGNvbHVtbiBpcyBlbXB0eSBmb3IgYSBuZXcgdXNlciwgb3Igbm90IHByb3ZpZGVkIGF0IGFsbCB0aGUgaGFyZGNvZGVkIHBhc3N3b3JkICZxdW90O2NoYW5nZW1lJnF1b3Q7IGlzIHVzZWQuJzsKJGxhbmdbJ2ltcG9ydF9kZWxldGVkdXNlciddID0gJ0RlbGV0ZWQgdXNlciAlcyc7CiRsYW5nWydlcnJvcl9leHBvcnRfbm91c2VycyddID0gJ05vIHVzZXJzIGZvdW5kIHRvIGV4cG9ydCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0X3VzZXJzJ10gPSAnRXhwb3J0IFVzZXJzJzsKJGxhbmdbJ3RpdGxlX2V4cG9ydF91c2VycyddID0gJ0V4cG9ydCBVc2VycyB0byBhbiBBU0NJSSBmaWxlJzsKJGxhbmdbJ2luZm9fZW5jcnlwdCddID0gJ0VuY3J5cHRlZCBwcm9wZXJ0aWVzIGNhbm5vdCBiZSBleHBvcnRlZCB0byBBU0NJSSBvciB2aWV3ZWQgYnkgYW4gYWRtaW5pc3RyYXRvci4gIFRoZXkgY2FuIG9ubHkgYmUgZWRpdGVkIGJ5IHRoZSBhdXRob3JpemVkIHVzZXInOwokbGFuZ1snZXJyb3JfaW1wb3J0Z3JvdXBuYW1lJ10gPSAnSW52YWxpZCwgb3IgZW1wdHkgZ3JvdXAgbmFtZSBzcGVjaWZpZWQnOwokbGFuZ1snZXJyb3JfaW1wb3J0X2NvbHVtbmNvdW50J10gPSAnSW5jb3JyZWN0IGNvbHVtbiBjb3VudCc7CiRsYW5nWydwcm9tcHRfZGVsaW1pdGVyJ10gPSAnRGVsaW1pdGVyJzsKJGxhbmdbJ2Vycm9yX2NyZWF0ZXRtcGZpbGUnXSA9ICdQcm9ibGVtIGNyZWF0aW5nIHRlbXBvcmFyeSBmaWxlJzsKJGxhbmdbJ3Byb21wdF9kZWxldGVfdXNlcnMnXSA9ICdEZWxldGUgZXh0cmEgdXNlcnMnOwokbGFuZ1snaW5mb19pbXBvcnRfZGVsZXRlX3VzZXJzJ10gPSAnSWYgZW5hYmxlZCwgYW5kIG9ubHkgPHN0cm9uZz5vbmUgdXNlciBncm91cDwvc3Ryb25nPiBpcyBtZW50aW9uZWQgaW4gdGhlIGltcG9ydCBmaWxlLCB1c2VycyB0aGF0IGFyZSBtZW1iZXJzIG9mIHRoYXQgdXNlciBncm91cCBidXQgbm90IG1lbnRpb25lZCBpbiB0aGUgaW1wb3J0IGZpbGUsIHdpbGwgYmUgZGVsZXRlZC4gIENhdXRpb24gc2hvdWxkIGJlIHVzZWQgaGVyZSwgYXMgbm8gY2hlY2tzIGFyZSBkb25lIHRvIHNlZSBpZiB0aGUgZGVsZXRlZCB1c2VycyBhcmUgbWVtYmVycyBvZiBhbnkgb3RoZXIgZ3JvdXBzLic7CiRsYW5nWyd0aXRsZV9pbXBvcnRfdXNlcnMnXSA9ICdJbXBvcnQgdXNlcnMgZnJvbSBhIENTViB0eXBlIGZpbGUnOwokbGFuZ1snZnJvbnRlbmRfYWNjZXNzJ10gPSAnVmlld2Vycyc7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9jb250cm9scyddID0gJ0Nhbm5vdCBkaXNwbGF5IGxvc3R1c2VybmFtZSBmb3JtLi4uIG5vIHN1aXRhYmxlIGZpZWxkcyBmb3VuZCB0byBkaXNwbGF5JzsKJGxhbmdbJ2luZm9fZmlsdGVyX3NvcnRieSddID0gJzxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gQ29sdW1uIHNvcnRpbmcgd2lsbCBwcm92aWRlIGFkZGl0aW9uYWwgc29ydGluZyBvbiBtYXRjaGVkIGVsZW1lbnRzJzsKJGxhbmdbJ2FueSddID0gJ0FueSc7CiRsYW5nWydzb3J0YnlfdXNlcm5hbWVfYXNjJ10gPSAnVXNlcm5hbWUgKGFzY2VuZGluZyknOwokbGFuZ1snc29ydGJ5X3VzZXJuYW1lX2Rlc2MnXSA9ICdVc2VybmFtZSAoZGVzY2VuZGluZyknOwokbGFuZ1snc29ydGJ5X2NyZWF0ZV9hc2MnXSA9ICdDcmVhdGUgRGF0ZSAoYXNjZW5kaW5nKSc7CiRsYW5nWydzb3J0YnlfY3JlYXRlX2Rlc2MnXSA9ICdDcmVhdGUgRGF0ZSAoZGVzY2VuZGluZyknOwokbGFuZ1snc29ydGJ5X2V4cGlyZXNfYXNjJ10gPSAnRXhwaXJ5IERhdGUgKGFzY2VuZGluZyknOwokbGFuZ1snc29ydGJ5X2V4cGlyZXNfZGVzYyddID0gJ0V4cGlyeSBEYXRlIChkZXNjZW5kaW5nKSc7CgokbGFuZ1snaW5mb19lbmNyeXB0ZWQnXSA9ICdFbmNyeXB0ZWQgcHJvcGVydGllcyBjYW4gb25seSBiZSBzZWVuIGFuZCBlZGl0ZWQgYnkgdGhlIHVzZXIuICBOb3QgZXZlbiB0aGUgc2l0ZSBhZG1pbmlzdHJhdG9yIGNhbiBzZWUgb3IgbWFuYWdlIHRoaXMgZGF0YS4nOwokbGFuZ1snZW5jcnlwdGVkJ10gPSAnRW5jcnlwdGVkJzsKJGxhbmdbJ2luZm9fY29va2llbmFtZSddID0gJ0lmIHNldCwgdGhlICZxdW90O3JlbWVtYmVyIG1lJnF1b3Q7IGZ1bmN0aW9uYWxpdHkgd2lsbCBiZSBlbmFibGVkLiAgVGhpcyBpcyBzaW1pbGFyIHRvIHRoZSBjb29raWUga2VlcGFsaXZlIGZ1bmN0aW9uYWxpdHksIGJ1dCBsYXN0cyB1cCB0byBzaXh0eSBkYXlzLic7CiRsYW5nWydtc2dfdXNlcm5hbWVfcmVhZG9ubHknXSA9ICdUaGUgYXV0aGVudGljYXRpb24gY29uc3VtZXIgZG9lcyBub3QgcGVybWl0IGNoYW5naW5nIHRoZSB1c2VybmFtZSBmb3IgdGhpcyBhY2NvdW50JzsKJGxhbmdbJ21zZ19wYXNzd29yZF9yZWFkb25seSddID0gJ1RoZSBhdXRoZW50aWNhdGlvbiBjb25zdW1lciBkb2VzIG5vdCBwZXJtaXQgY2hhbmdpbmcgdGhlIHBhc3N3b3JkIGZvciB0aGlzIGFjY291bnQnOwokbGFuZ1sncHJvbXB0X25vcm1hbGxvZ2luJ10gPSAnU2lnbiBJbic7CiRsYW5nWydtb3ZlX3VwJ10gPSAnTW92ZSBVcCc7CiRsYW5nWydtb3ZlX2Rvd24nXSA9ICdNb3ZlIERvd24nOwokbGFuZ1sndGl0bGVfcHJvcG1vZHVsZSddID0gJ1RoaXMgcHJvcGVydHkgaXMgY3JlYXRlZCBieSBhIG1vZHVsZSwgYW5kIGNhbm5vdCBiZSBlZGl0ZWQnOwokbGFuZ1snbm90X2F2YWlsYWJsZSddID0gJ05vdCBBdmFpbGFibGUnOwokbGFuZ1sncHJvbXB0X2RmbHRfY2hlY2tlZCddID0gJ0J5IGRlZmF1bHQsIHRoaXMgZmllbGQgc2hvdWxkIGJlIGNoZWNrZWQnOwokbGFuZ1snb3BlcmF0aW9uX2NvbXBsZXRlZCddID0gJ09wZXJhdGlvbiBDb21wbGV0ZWQnOwokbGFuZ1snbWVtYmVycyddID0gJ01lbWJlcnMnOwokbGFuZ1sndmlld19maWx0ZXInXSA9ICdWaWV3IEZpbHRlcic7CiRsYW5nWydkYXRhJ10gPSAnRGF0YSc7CiRsYW5nWydhcHBsaWVkJ10gPSAnQXBwbGllZCc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICcmbHQ7Jmx0Oyc7CiRsYW5nWydwcmV2cGFnZSddID0gJyZsdDsnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICcmZ3Q7JzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnJmd0OyZndDsnOwokbGFuZ1sncGFnZSddID0gJ1BhZ2UnOwokbGFuZ1sncHJvbXB0X2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnQWxsb3cgQ2hhbmdpbmcgVXNlcm5hbWUnOwokbGFuZ1snaW5mb19hbGxvd19jaGFuZ2V1c2VybmFtZSddID0gJ0lmIGVuYWJsZWQgdXNlcnMgd2lsbCBiZSBwZXJtaXR0ZWQgdG8gY2hhbmdlIHRoZWlyIHVzZXJuYW1lIGFsb25nIHdpdGggb3RoZXIgc2V0dGluZ3MnOwokbGFuZ1sndGVtcGxhdGVfc2F2ZWQnXSA9ICdUZW1wbGF0ZSBzYXZlZCc7CiRsYW5nWyd0ZW1wbGF0ZV9yZXNldGRlZmF1bHRzJ10gPSAnVGVtcGxhdGUgcmVzZXQgdG8gZGVmYXVsdHMnOwokbGFuZ1snbGJsX3NldHRpbmdzJ10gPSAnU2V0dGluZ3MnOwokbGFuZ1snbGJsX3RlbXBsYXRlcyddID0gJ1RlbXBsYXRlcyc7CiRsYW5nWydlbmFibGVfY2FwdGNoYSddID0gJ0VuYWJsZSBjYXB0Y2hhIG9uIHRoZSBsb2dpbiBmb3JtJzsKJGxhbmdbJ2luZm9fZW5hYmxlX2NhcHRjaGEnXSA9ICdJZiB0aGUgdXNlciBpcyBub3QgbG9nZ2VkIGluLCBhbmQgdGhlIG1vZHVsZSBwcmVmZXJlbmNlIHN0YXRlcyB0byBkaXNwbGF5IHRoZSBsb2dpbiBmb3JtLCB0aGlzIG9wdGlvbiBjb250cm9scyB3ZXRoZXIgYSBjYXB0Y2hhIHdpbGwgYmUgZGlzcGxheWVkIG9uIHRoZSBsb2dpbiBzY3JlZW4uICBJZiBjYXB0Y2hhIGlzIGF2YWlsYWJsZSc7CiRsYW5nWydwYWdldHlwZV91bmF1dGhvcml6ZWQnXSA9ICdZb3UgYXJlIG5vdCBhdXRob3JpemVkIHRvIHZpZXcgdGhpcyBjb250ZW50JzsKJGxhbmdbJ2luZm9fY29udGVudHBhZ2VfZ3JvdXBsaXN0J10gPSAnU3BlY2lmeSBhIGxpc3Qgb2YgRkVVIGdyb3VwcyB0aGF0IG1heSBoYXZlIGFjY2VzcyB0byB0aGlzIHBhZ2UuICBTZWxlY3Rpbmcgbm8gZ3JvdXBzIHdpbGwgYWxsb3cgYW55IHVzZXIgbG9nZ2VkIGluIHRvIEZFVSB0byB2aWV3IHRoZSBwYWdlJzsKJGxhbmdbJ3BhZ2V0eXBlX3NldHRpbmdzJ10gPSAnUHJvdGVjdGVkIFBhZ2UgU2V0dGluZ3MnOwokbGFuZ1sncGFnZXR5cGVfZ3JvdXBzJ10gPSAnQWxsb3dlZCBHcm91cHMnOwokbGFuZ1snaW5mb19wYWdldHlwZV9ncm91cHMnXSA9ICdTZWxlY3QgdGhlIGdyb3VwcyB0aGF0IGFyZSAoYnkgZGVmYXVsdCkgYWxsb3dlZCB0byB2aWV3IHByb3RlY3RlZCBwYWdlcy4gIEFuIGVkaXRvciB3aXRoIHRoZSAmcXVvdDtNYW5hZ2UgQWxsIENvbnRlbnQmcXVvdDsgcGVybWlzc2lvbiBjYW4gb3ZlcnJpZGUgdGhpcyBmb3IgZWFjaCBwYWdlJzsKJGxhbmdbJ3BhZ2V0eXBlX2FjdGlvbiddID0gJ0FjdGlvbiBmb3IgaW5zdWZmaWNpZW50IGFjY2Vzcyc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX2FjdGlvbiddID0gJ1NwZWNpZnkgdGhlIGJlaGF2aW9yIGZvciBwZW9wbGUgYWNjZXNzaW5nIHRoaXMgcGFnZSB3aXRob3V0IHN1ZmZpY2llbnQgcGVybWlzc2lvbi4gIFlvdSBjYW4gZWl0aGVyIHJlZGlyZWN0IHRvIGEgc3BlY2lmaWVkIHBhZ2UsIG9yIGRpc3BsYXkgdGhlIGxvZ2luIGZvcm0nOwokbGFuZ1snc2hvd2xvZ2luZm9ybSddID0gJ1Nob3cgdGhlIExvZ2luIEZvcm0nOwokbGFuZ1sncmVkaXJlY3QnXSA9ICdSZWRpcmVjdCB0byBhIFBhZ2UnOwokbGFuZ1sncGFnZXR5cGVfcmVkaXJlY3R0byddID0gJ1JlZGlyZWN0IFRvJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfcmVkaXJlY3R0byddID0gJ1NwZWNpZnkgdGhlIHBhZ2UgdG8gcmVkaXJlY3QgdG8uICBJZiB5b3Ugc2VsZWN0IG5vbmUsIGFuZCB0aGUgYWN0aW9uIGlzIHNldCB0byAmcXVvdDtyZWRpcmVjdCZxdW90OyB0aGUgdXNlciB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbWVzc2FnZSBpbmRpY2F0aW5nIHRoYXQgdGhleSBkbyBub3QgaGFjZSBhY2Nlc3MgdG8gdGhlIHBhZ2UnOwokbGFuZ1sncGVybWlzc2lvbnMnXSA9ICdQZXJtaXNzaW9ucyc7CiRsYW5nWydmZXVfcHJvdGVjdGVkX3BhZ2UnXSA9ICdQcm90ZWN0ZWQgQ29udGVudCc7CiRsYW5nWydwcm9tcHRfdmlld3Byb3BzJ10gPSAnU2VsZWN0IEFkZGl0aW9uYWwgUHJvcGVydGllcyB0byBWaWV3JzsKJGxhbmdbJ3ZpZXcnXSA9ICdWaWV3JzsKJGxhbmdbJ2luZm9faWdub3JlX3VzZXJpZCddID0gJ0lmIGNoZWNrZWQgdGhlIGltcG9ydCByb3V0aW5lIHdpbGwgYXR0ZW1wdCB0byBhZGQgdXNlcnMgaW5kZXBlbmRhbnQgb2YgdGhlIHVzZXJpZCBjb2x1bW4uICBJZiBhIHVzZXIgd2l0aCB0aGUgbmFtZSBzcGVjaWZpZWQgaW4gdGhlIGltcG9ydCBmaWxlIGFscmVhZHkgZXhpc3RzLCBhbiBlcnJvciB3aWxsIGJlIGdlbmVyYXRlZCc7CiRsYW5nWydpZ25vcmVfdXNlcmlkJ10gPSAnSWdub3JlIFVzZXJJRCBDb2x1bW4gb24gSW1wb3J0JzsKJGxhbmdbJ2V4cG9ydF9wYXNzaGFzaCddID0gJ0V4cG9ydCB0aGUgcGFzc3dvcmQgaGFzaCB0byB0aGUgZmlsZSc7CiRsYW5nWydpbmZvX2V4cG9ydF9wYXNzaGFzaCddID0gJ1RoZSBwYXNzd29yZCBoYXNoIGlzIG9ubHkgdXNlZnVsIGlmIHRoZSBwYXNzd29yZCBzYWx0IG9uIHRoZSBpbXBvcnQgaG9zdCBpcyBpZGVudGljYWwgdG8gdGhhdCBvZiB0aGUgZXhwb3J0IGhvc3QnOwokbGFuZ1snZXJyb3JfYWRqdXN0c2FsdCddID0gJ1RoZSBwYXNzd29yZCBzYWx0IGNhbm5vdCBiZSBhZGp1c3RlZCc7CiRsYW5nWydwcm9tcHRfcHdzYWx0J10gPSAnUGFzc3dvcmQgU2FsdCc7CiRsYW5nWydpbmZvX3B3c2FsdCddID0gJ0Zyb250RW5kVXNlcnMgc2FsdHMgYWxsIHBhc3N3b3JkcyB3aXRoIHRoaXMga2V5IHdoaWNoIGlzIGNyZWF0ZWQgdXBvbiBpbnN0YWxsLiAgT25jZSB1c2VycyBoYXZlIGJlZW4gYWRkZWQgdG8gdGhlIGRhdGFiYXNlIHRoZSBzYWx0IGNhbm5vdCBiZSBjaGFuZ2VkLiBUaGUgc2FsdCBtYXkgYmUgZW1wdHkgZm9yIG9sZGVyIGluc3RhbGxzLic7CiRsYW5nWydhZHZhbmNlZF9zZXR0aW5ncyddID0gJ0FkdmFuY2VkIFNldHRpbmdzJzsKJGxhbmdbJ2luZm9fc2Vzc2lvbnRpbWVvdXQnXSA9ICdTcGVjaWZ5IHRoZSBudW1iZXIgb2Ygc2Vjb25kcyBiZWZvcmUgYW4gaW5hY3RpdmUgdXNlciBpcyBhdXRvbWF0aWNhbGx5IGxvZ2dlZCBvdXQgb2YgdGhlIHdlYnNpdGUnOwokbGFuZ1sncHJvbXB0X2V4cGlyZXVzZXJzX2ludGVydmFsJ10gPSAnVXNlciBFeHBpcnkgSW50ZXJ2YWwnOwokbGFuZ1snaW5mb19leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ1NwZWNpZnkgYSB2YWx1ZSAoaW4gc2Vjb25kcykgdGhhdCBpbmRpY2F0ZXMgaG93IG9mdGVuIHRoZSBzeXN0ZW0gc2hvdWxkIGZvcmNlIHVzZXJzIHdob3Mgc2Vzc2lvbiBoYXMgZXhwaXJlZCB0byBiZSBsb2dnZWQgb3V0LiAgVCJoaXMgaXMgYW4gb3B0aW1pemF0aW9uIHRvIHNhdmUgZGF0YWJhc2UgcXVlcmllcy4gIElmIGxlZnQgZW1wdHkgb3Igc2V0IHRvIDAgZXhwaXJ5IHdpbGwgYmUgcGVyZm9ybWVkIG9uIGV2ZXJ5IHJlcXVlc3QuJzsKJGxhbmdbJ21zZ19zZXR0aW5nc2NoYW5nZWQnXSA9ICdZb3VyIHNldHRpbmdzIHdlcmUgc3VjY2Vzc2Z1bGx5IHVwZGF0ZWQnOwokbGFuZ1snZm9yY2VkbG9nb3V0dGFza19kZXNjJ10gPSAnRm9yY2UgdXNlcnMgdG8gbG9nb3V0IGF0IHJlZ3VsYXIgaW50ZXJ2YWxzJzsKJGxhbmdbJ3Byb21wdF9mb3JjZWxvZ291dF90aW1lcyddID0gJ1RpbWVzIGZvciBmb3JjZWQgbG9nb3V0JzsKJGxhbmdbJ2luZm9fZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICdTcGVjaWZ5IGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgdGltZXMgbGlrZSBISDpNTSxISDpNTSB3aGVyZSB1c2VycyB3aWxsIGJlIGZvcmNpYmx5IGxvZ2dlZCBvdXQuIE5vdGUsIHRoaXMgdXNlcyB0aGUgcHN1ZWRvY3JvbiBtZWNoYW5pc20gc28geW91IG11c3QgYmUgc3VyZSB0aGF0IHRoZSB0aW1lcyBlbnRlcmVkIGhlcmUgd2lsbCBjb2luY2lkZSByZWFzb25hYmx5IHdpdGggeW91ciAmcXVvdDtwc2V1ZG9jcm9uIGdyYW51bGFyaXR5JnF1b3Q7IGFuZCB0aGF0IHN1ZmZpY2llbnQgcmVxdWVzdHMgd2lsbCBvY2N1ciB0byB5b3VyIHdlYnNpdGUgdG8gZW5zdXJlIHRoYXQgcHNldWRvY3JvbiBpcyBleGVjdXRlZC4nOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdFeGNsdWRlIHVzZXJzIHRoYXQgaGF2ZSBiZWVuIGFjdGl2ZSBpbiA8ZW0+KG1pbnV0ZXMpPC9lbT4nOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF9zZXNzaW9uYWdlJ10gPSAnSWYgc3BlY2lmaWVkLCBhbnkgdXNlcnMgdGhhdCBoYXZlIGJlZW4gYWN0aXZlIGluIHRoaXMgbnVtYmVyIG9mIHNlY29uZHMgd2lsbCBub3QgYmUgZm9yY2libHkgbG9nZ2VkIG91dCc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZSddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhlIHVzZXIgJXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGVleHRlbnNpb24nXSA9ICdUaGUgdXBsb2FkZWQgZmlsZSBkb2VzIG5vdCBtYXRjaCB0aGUgbGlzdCBvZiBhbGxvd2VkIGZpbGUgdHlwZXMnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0FsbCBkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgaGFzIGJlZW4gZGVsZXRlZCc7CiRsYW5nWydpbmZvX2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdJZiBlbmFibGVkLCB0aGlzIG1vZHVsZSB3aWxsIGxpc3RlbiB0byBldmVudHMgZnJvbSB0aGUgRWNvbW1lcmNlIHN1aXRlLiAgVGhlIGZvbGxvd2luZyBzZXR0aW5ncyBvbmx5IGhhdmUgZWZmZWN0IGlmIHRoaXMgc2V0dGluZyBpcyBlbmFibGVkLic7CiRsYW5nWydwcm9tcHRfZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ0xpc3RlbiB0byBPcmRlciBFdmVudHMnOwokbGFuZ1snaW5mb19wYWlkcmVnX3NldHRpbmdzJ10gPSAnVGhlIGZvbGxvd2luZyBzZXR0aW5ncyBvbmx5IGFwcGx5IGlmIHVzaW5nIHNlbGYgcmVnaXN0cmF0aW9uIGFuZCBhbGxvd2luZyBmb3IgcGFpZCByZWdpc3RyYXRpb24nOwokbGFuZ1snbm9uZSddID0gJ05vbmUnOwokbGFuZ1snZGVsZXRlX3VzZXInXSA9ICdEZWxldGUgVXNlcic7CiRsYW5nWydleHBpcmVfdXNlciddID0gJ0V4cGlyZSBVc2VyJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnXSA9ICdBY3Rpb24gdG8gcGVyZm9ybSB3aGVuIGEgc3Vic2NyaXB0aW9uIG9yZGVyIGlzIGNhbmNlbGxlZCc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyZGVsZXRlZCddID0gJ0FjdGlvbiB0byBwZXJmb3JtIHdoZW4gYSBzdWJzY3JpcHRpb24gb3JkZXIgaXMgZGVsZXRlZCc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdFY29tbWVyY2UgU2V0dGluZ3MnOwokbGFuZ1snc2VjdXJlZmllbGRtYXJrZXInXSA9ICdTZWN1cmUgRmllbGQgTWFya2VyJzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdTZWN1cmUgRmllbGQgQ29sb3InOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdTdG9yZSB0aGlzIGRhdGEgZW5jcnlwdGVkIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydlcnJvcl9ub3RzdXBwb3J0ZWQnXSA9ICdUaGUgY2hvc2VuIG9wdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGdpdmVuIHlvdXIgY3VycmVudCBjb25maWd1cmF0aW9uJzsKJGxhbmdbJ2F1ZGl0X3VzZXJfY3JlYXRlZCddID0gJ1VzZXIgYXV0b21hdGljYWxseSBjcmVhdGVkJzsKJGxhbmdbJ2luZm9fYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0lmIGEgdXNlciBpcyBhdXRoZW50aWNhdGVkIGJ5IGFuIGV4dGVybmFsIGF1dGhlbnRpY2F0aW9uIG1vZHVsZSBidXQgaXMgbm90IGtub3duIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBzaG91bGQgYW4gRkVVIGFjY291bnQgYmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5Pyc7CiRsYW5nWydwcm9tcHRfYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0F1dG9tYXRpY2FsbHkgQ3JlYXRlIFVua25vd24gVXNlcnMnOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ0Rpc3BsYXkgU2V0dGluZ3MnOwokbGFuZ1snaW5mb19zdGRfYXV0aF9zZXR0aW5ncyddID0gJ1RoZSBmb2xsb3dpbmcgc2V0dGluZ3MgYXJlIG9ubHkgYXBwbGljYWJsZSBpZiB1c2luZyB0aGUgJnF1b3Q7QnVpbHRpbiBBdXRoZW50aWNhdGlvbiZxdW90Oy4nOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3R1biddID0gJ1NlbGVjdGluZyBObyB3aWxsIGRpc2FibGUgdGhlIGFiaWxpdHkgZm9yIGEgdXNlciB0byByZXF1ZXN0IGxvc3QgbG9naW4gaW5mb3JtYXRpb24sIGlycmVzcGVjdGl2ZSBvZiBvdGhlciBzZXR0aW5ncyc7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHB3J10gPSAnU2VsZWN0aW5nIE5vIHdpbGwgZGlzYWJsZSB0aGUgYWJpbGl0eSBmb3IgYSB1c2VyIHRvIGEgcGFzc3dvcmQgcmVzZXQsIGlycmVzcGVjdGl2ZSBvZiBvdGhlciBzZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0dW4nXSA9ICdBbGxvdyB1c2VycyB0byByZXF1ZXN0IHRoZWlyIHVzZXJuYW1lJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3RwdyddID0gJ0FsbG93IHVzZXJzIHRvIHJlcXVlc3QgYSBwYXNzd29yZCBjaGFuZ2UnOwokbGFuZ1snYXV0aF9zZXR0aW5ncyddID0gJ0F1dGhlbnRpY2F0aW9uIFNldHRpbmdzJzsKJGxhbmdbJ2F1dGhlbnRpY2F0aW9uJ10gPSAnQnVpbHRpbiBBdXRoZW50aWNhdGlvbic7CiRsYW5nWydhdXRoX2J1aWx0aW4nXSA9ICdGRVUgU3RhbmRhcmQgQXV0aGVudGljYXRpb24nOwokbGFuZ1snYXV0aF9tb2R1bGUnXSA9ICdBdXRoZW50aWNhdGlvbiBNb2R1bGUvTWV0aG9kJzsKJGxhbmdbJ2luZm9fYXV0aF9tb2R1bGUnXSA9ICdUaGUgRnJvbnRlbmRVc2VycyBtb2R1bGUgc3VwcG9ydHMgdXNpbmcgYWx0ZXJuYXRlIGF1dGhlbnRpY2F0aW9uIG1ldGhvZHMsIHdpdGggdmFyeWluZyBjYXBhYmlsaXRpZXMuICBTb21lIGZ1bmN0aW9uYWxpdHkgd2lsbCBub3QgZnVuY3Rpb24gb3IgYmUgZGlzYWJsZWQgd2hlbiBub3QgdXNpbmcgdGhlIGJ1aWx0IGluIGF1dGhlbnRpY2F0aW9uIG1ldGhvZCc7CiRsYW5nWydlcnJvcl91c2VyX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ1RoZSB2YWx1ZSBzcGVjaWZpZWQgZm9yICVzIGlzIGFscmVhZHkgaW4gdXNlIGJ5IGFub3RoZXIgdXNlcic7CiRsYW5nWyd1bmlxdWUnXSA9ICdVbmlxdWUnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnVGhlIHZhbHVlIHNwZWNpZmllZCBmb3IgJXMgKCVzKSBpcyBub3QgdW5pcXVlJzsKJGxhbmdbJ3Byb21wdF9mb3JjZV91bmlxdWUnXSA9ICdGb3JjZSB2YWx1ZXMgb2YgdGhpcyBwcm9wZXJ0eSB0byBiZSB1bmlxdWUgYWNyb3NzIGFsbCB1c2VyIGFjY291bnRzJzsKJGxhbmdbJ2hlbHBfcmV0dXJudG8nXSA9ICdVc2VkIHdpdGh0IGhlIGxvZ2luIGFuZCBsb2dvdXQgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGluZGljYXRlcyBhIHBhZ2UgaWQgb3IgYWxpYXMgdGhhdCB0aGUgdXNlciBzaG91bGQgYmUgcmV0dXJuZWQgdG8gYWZ0ZXIgdGhlIG9wZXJhdGlvbiBpcyBjb21wbGV0ZS4gIFRoaXMgd2lsbCBvdmVycmlkZSB0aGUgcmV0dXJubGFzdCBhbmQgdGhlIHJlZGlyZWN0aW9uIHByZWZlcmVuY2VzLic7CiRsYW5nWydoZWxwX2lubGluZSddID0gJ1VzZWQgd2l0aCB0aGUgbG9naW4gZm9ybXMvYWN0aW9uLCB0aGlzIHBhcmFtZXRlciBpbmRpY2F0ZXMgdGhhdCB0aGUgcmVzdWx0IG9mIHRoZSBmb3JtIHNob3VsZCByZXBsYWNlIGl0cyBvd24gdGFnIG9uIHRoZSBzYW1lIHBhZ2UuLi4gIHRoaXMgd2lsbCBoYXZlIG5vIGVmZmVjdCBpZiByZXR1cm50bywgcmV0dXJubGFzdCwgb3Igc29tZSByZWRpcmVjdGlvbiBwcmVmZXJlbmNlcyBhcmUgc2V0IHJlc3VsdGluZyBpbiBhIHJlZGlyZWN0aW9uIHRvIGEgZGlmZmVyZW50IHBhZ2UuJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdMb2dpbiBTZXNzaW9uIFRpbWVvdXQgV2FybmluZyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1lvdXIgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIHBsZWFzZSBjbGljayAiJnF1b3Q7T2smcXVvdDsgdG8gY29uZmlybSB5b3VyIGFjdGl2aXR5IG9uIHRoaXMgd2Vic2l0ZS4nOwokbGFuZ1snb2snXSA9ICdPayc7CiRsYW5nWydyZXNldHNlc3Npb25fdGVtcGxhdGUnXSA9ICdSZXNldCBTZXNzaW9uIFRlbXBsYXRlJzsKJGxhbmdbJ2luZm9fbmFtZSddID0gJ1RoaXMgaXMgdGhlIGZpZWxkIG5hbWUsIHRvIGJlIHVzZWQgZm9yIGFkZHJlc3NpbmcgaW4gc21hcnR5LiAgSXQgbXVzdCBjb25zaXN0IG9mIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIHVuZGVyc2NvcmVzLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdWaXNpdG9ycyc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1NlbGVjdCBvbmUgb3IgbW9yZSBGRVUgZ3JvdXBzIHRoYXQgYXJlIGFsbG93ZWQgdG8gdmlldyB0aGlzIHBhZ2UnOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ0EgZ3JvdXAgbXVzdCBiZSBzZWxlY3RlZCc7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdTZWxlY3QgT25lJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdTdGFydCBZZWFyJzsKJGxhbmdbJ2VuZF95ZWFyJ10gPSAnRW5kIFllYXInOwokbGFuZ1snZGF0ZSddID0gJ0RhdGUnOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnVGh1bWJuYWlsIFNpemUnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgTW9kaWZpZWQnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnVG9vIG1hbnkgdXNlcnMgYXJlIHNlbGVjdGVkIGZvciBidWxrIG9wZXJhdGlvbnMuLi4uIFBsZWFzZSB0cmltIGl0IHRvIDI1MCBvciBsZXNzJzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgc2VsZWN0ZWQgdXNlcnM/JzsKJGxhbmdbJ2RlbGV0ZV9zZWxlY3RlZCddID0gJ0RlbGV0ZSBTZWxlY3RlZCc7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmF0ZSByYW5kb20gdXNlcm5hbWUgd2hlbiBhZGRpbmcgbmV3IHVzZXJzJzsKJGxhbmdbJ21vbnRocyddID0gJ21vbnRocyc7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnRGVmYXVsdCB1c2VyIGV4cGlyeSBwZXJpb2QnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnTm90aWZpY2F0aW9uIFNldHRpbmdzJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnUHJvcGVydHkgU2V0dGluZ3MnOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdSZWRpcmVjdGlvbiBTZXR0aW5ncyc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnR2VuZXJhbCBTZXR0aW5ncyc7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnU2Vzc2lvbiBhbmQgQ29va2llIFNldHRpbmdzJzsKJGxhbmdbJ2ZpZWxkX3NldHRpbmdzJ10gPSAnRmllbGQgU2V0dGluZ3MnOwokbGFuZ1sncHJvcF90ZXh0YXJlYV93eXNpd3lnJ10gPSAnQWxsb3cgdXNlIG9mIHd5c2l3eWcgb24gdGhpcyB0ZXh0IGFyZWEnOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnRWRpdGluZyBVc2VyJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnRG8gbm90IGlubGluZSBmb3Jtcyc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaWNrIGhlcmUgaWYgeW91IGNhbm5vdCByZW1lbWJlciB5b3VyIGxvZ2luIGRldGFpbHMnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0NsaWNrIGhlcmUgaWYgeW91IGNhbm5vdCByZW1lbWJlciB5b3VyIHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnQ2xpY2sgaGVyZSB0byBzaWduIG91dCc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnQ2xpY2sgaGVyZSB0byBhZGp1c3QgeW91ciBwYXNzd29yZCBvciBvdGhlciBpbmZvcm1hdGlvbic7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ1ZpZXcgVXNlciBUZW1wbGF0ZSc7CiRsYW5nWydldmVudCddID0gJ0V2ZW50JzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUgRXZlbnQgTm90aWZpY2F0aW9uJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ05vdGlmaWNhdGlvbiBFbWFpbCBBZGRyZXNzJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdOb3RpZmljYXRpb24gRW1haWwgVGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnTm90aWZpY2F0aW9uIEVtYWlsIFN1YmplY3QnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdFbWFpbCBOb3RpZmljYXRpb25zJzsKJGxhbmdbJ09uTG9naW4nXSA9ICdPbiBMb2dpbic7CiRsYW5nWydPbkxvZ291dCddID0gJ09uIExvZ291dCc7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICdPbiBTZXNzaW9uIEV4cGlyeSc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdPbiBOZXcgVXNlciBDcmVhdGVkJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ09uIFVzZXIgRGVsZXRlZCc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdPbiBVc2VyIFNldHRpbmdzIENoYW5nZWQnOwokbGFuZ1snT25DcmVhdGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgQ3JlYXRlZCc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBEZWxldGVkJzsKCiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ1dvb3QhIFdlIGZvdW5kIHlvdSEuIEdpdmVuIHRoZSBkZXRhaWxzIHlvdSBlbnRlcmVkLCB3ZSB3ZXJlIGFibGUgdG8gZmluZCB5b3VyIChhbmQgb25seSB5b3VycykgbG9naW4gbmFtZS4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1lvdXIgdXNlcm5hbWUgaXMnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnV2UgcmVjb21tZW5kIHlvdSByZWNvcmQgdGhpcyBpbmZvcm1hdGlvbiBpbiBhIHNlY3VyZSwgYnV0IHJldHJpZXZhYmxlIGxvY2F0aW9uLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgY2hhbmdlIHNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNvZGUgdmVyaWZpY2F0aW9uIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIERldGFpbHMgVGVtcGxhdGUnOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIENvbmZpcm0gVGVtcGxhdGUnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdFcnJvcjogTW9yZSB0aGFuIG9uZSB1c2VyIGFjY291bnQgbWF0Y2hlZCB0aGUgcHJvcGVydGllcyBzcGVjaWZpZWQnOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnRXJyb3I6IENvdWxkIG5vdCBmaW5kIGEgbWF0Y2hpbmcgdXNlcic7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnRXJyb3I6IENvdWxkIG5vdCBmaW5kIGEgZ3JvdXAgYnkgdGhhdCBuYW1lJzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnUmVhZCBPbmx5JzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdVc2VyIE1hbmlwdWxhdG9yIENsYXNzJzsKJGxhbmdbJ2FkbWluX2xvZ291dCddID0gJ0xvZ2dlZCBvdXQgYnkgYWRtaW5pc3RyYXRvcic7CiRsYW5nWydwcm9tcHRfbG9nZ2VkaW5vbmx5J10gPSAnU2hvdyBPbmx5IExvZ2dlZCBJbiBVc2Vycyc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnTG9nb3V0IHRoaXMgdXNlcic7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdVc2VyIFByb3BlcnRpZXMnOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdVc2VyIEhpc3RvcnknOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0JzsKJGxhbmdbJ2NsZWFyJ10gPSAnQ2xlYXInOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnRXhwb3J0IFVzZXIgSGlzdG9yeSBUbyBBU0NJSSB0aGF0IGlzIGF0IGxlYXN0JzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAnQ2xlYXIgVXNlciBIaXN0b3J5IHJlY29yZHMgdGhhdCBpcyBhdCBsZWFzdCc7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICdGb3Jnb3QgWW91ciBMb2dpbiBEZXRhaWxzPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFeHBvcnQgZ3JvdXAgZGVmaW5pdGlvbiAoYW5kIHByb3BlcnRpZXMpIHRvIFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnVXNlciBIaXN0b3J5IE1haW50ZW5hbmNlJzsKJGxhbmdbJ3llcyddID0gJ1llcyc7CiRsYW5nWydubyddID0gJ05vJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ09mJzsKJGxhbmdbJ2RhdGVfYWxscmVjb3JkcyddID0gJyoqIE5vIExpbWl0ICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ09uZSBIb3VyIE9sZCc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdTaXggSG91cnMgT2xkJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJ1R3ZWx2ZSBIb3VycyBPbGQnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdPbmUgRGF5IE9sZCc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICdPbmUgV2VlayBPbGQnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ1R3byB3ZWVrcyBPbGQnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ09uZSBNb250aCBPbGQnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ1RocmVlIE1vbnRocyBPbGQnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICdTaXggTW9udGhzIE9sZCc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdPbmUgWWVhciBPbGQnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3JvdXBpbmcgYW5kIFNvcnRpbmcnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1JlY29yZHMgbWF0Y2hpbmcgdGhlIGNyaXRlcmlhJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnRGVzY2VuZGluZyBVc2VybmFtZSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnQXNjZW5kaW5nIFVzZXJuYW1lJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIERhdGUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnQXNjZW5kaW5nIERhdGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnRGVzY2VuZGluZyBFdmVudCBUeXBlJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnQXNjZW5kaW5nIEV2ZW50IFR5cGUnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnRGVzY2VuZGluZyBJcCBBZGRyZXNzJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnQXNjZW5kaW5nIElwIEFkZHJlc3MnOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ05vIEhpc3RvcnkgRGV0ZWN0ZWQnOwokbGFuZ1sncmVzZXQnXSA9ICdSZXNldCc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdHcm91cCBCeSBJUCBBZGRyZXNzJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRXZlbnQgVHlwZSBGaWx0ZXInOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9kYXRlJ10gPSAnRGlzcGxheSBvbmx5IGV2ZW50cyB0aGF0IGFyZSBsZXNzIHRoYW46JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdQYWdlIExpbWl0JzsKJGxhbmdbJ2ZvciddID0gJ2Zvcic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ1VzZXIgSGlzdG9yeSBSZXBvcnQnOwokbGFuZ1sndW5rbm93biddID0gJ1Vua25vd24nOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ0V2ZW50IFR5cGUnOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXRlJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdSZXR1cm4nOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ0ltcG9ydCBPcGVyYXRpb24gQ29tcGxldGUnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnTGluZXMgUHJvY2Vzc2VkJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdFcnJvcnMgRW5jb3VudGVyZWQnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ1JlY29yZHMgQWRkZWQnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIGdyb3VwICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnQ291bGQgbm90IGdldCBhIHJlc3BvbnNlIGZyb20gdGhlIFNNVFAgc2VydmVyJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0ZpbGUgc3BlY2lmaWVkICglcykgY291bGQgbm90IGJlIGZvdW5kJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdJbnZhbGlkIHZhbHVlIGZvciBjb2x1bW4gJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdGaWVsZCAlcyBleGNlZWRzIG1heGltdW0gbGVuZ3RoJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGluc2VydHVzZXInXSA9ICdQcm9ibGVtIGNyZWF0aW5nIHVzZXI6ICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVwZGF0ZXVzZXInXSA9ICdQcm9ibGVtIHVwZGF0aW5nIHVzZXI6ICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0IEVycm9yIChsaW5lICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0NvdWxkIG5vdCBnZXQgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zIChpbnRlcm5hbCBlcnJvciknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYSBjb2x1bW4gdG8gbWF0Y2ggdGhlIHJlcXVpcmVkIGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCBncm91cCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnVGhlIGZpbGUgc3BlY2lmaWVkIGZvciBpbXBvcnQgaXMgbm90IGluIHRoZSBjb3JyZWN0IGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnQ291bGQgbm90IG9wZW4gZmlsZSc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdDInXSA9ICcKPGg1PkZpbGUgRm9ybWF0IEluZm9ybWF0aW9uPC9oNT4KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgPGVtPihub3JtYWxseSk8L2VtPiBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIFRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC4gIFRoaXMgaW1wb3J0IHJvdXRpbmUgYWNjZXB0cyBNQUMgYW5kIHVuaXggbGluZSBlbmRpbmdzLiAgQ29sdW1uIHZhbHVlcyBjYW4gYmUgZW5jbG9zZWQgaW4gZG91YmxlIHF1b3RlcyBpZiB0aGUgZGVsaW1pdGVyIG1heSBiZSBjb250YWluZWQgd2l0aGluIHRoZSBjb2x1bW4gdmFsdWUuPC9wPgo8aDU+SGVhZGVyIGxpbmU8L2g1Pgo8dWw+CjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4KPGxpPlRoZSBpbnB1dCBmaWxlIG1heSBjb250YWluIGZpZWxkcyByZXByZXNlbnRpbmcgc29tZSBvZiB0aGUgb3B0aW9uYWwgcHJvcGVydGllcyBpbiB0aGUgc3BlY2lmaWVkIGdyb3VwLjwvbGk+CjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3Vwcy48L2xpPgo8L3VsPjxici8+CjxoNj48c3Ryb25nPkNvbHVtbmFyIERhdGE8L3N0cm9uZz48L2g2Pgo8dWw+CjxsaT5UaGUgPHN0cm9uZz51c2VybmFtZTwvc3Ryb25nPiBGaWVsZCAtIFRoZSBkZXNpcmVkIHVzZXJuYW1lLgogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gSWYgYSB1c2VyIHdpdGggdGhlIHNwZWNpZmllZCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UgaGlzIGluZm9ybWF0aW9uIHdpbGwgYmUgb3ZlcndyaXR0ZW4uPC9wPjwvbGk+CjxsaT5UaGUgPHN0cm9uZz50eHRwYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIDxlbT4ob3B0aW9uYWwpPC9lbT4uICBUaGUgcGFzc3dvcmQgdG8gc2V0IGZvciB0aGUgdXNlciBpbiBwbGFpbiB0ZXh0LiAgSWYgdGhlIHBhc3N3b3JkIGZpZWxkIGlzIGVtcHR5IHdoZW4gY3JlYXRpbmcgbmV3IHVzZXJzIHRoZSBwYXNzd29yZCAmcXVvdDtjaGFuZ2VtZSZxdW90OyBpcyBoYXJkY29kZWQuICBJZiB0aGUgcGFzc3dvcmQgZmllbGQgaXMgZW1wdHkgd2hlbiB1cGRhdGluZyBhIHVzZXIgaGlzIHBhc3N3b3JkIHdpbGwgbm90IGJlIGFkanVzdGVkLjwvbGk+CjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gPGVtPihvcHRpb25hbCk8L2VtPi4gIFRoZSBkZXNpcmVkIGV4cGlyeSBkYXRlIGZvciB0aGUgdXNlci4gIElmIHRoaXMgZmllbGQgaXMgc3BlY2lmaWVkIGFuZCBjYW4gYmUgdmFsaWRhdGVkIGFzIGEgdmFsaWQgZGF0ZSB0aGVuIHRoZSBleHBpcnkgZGF0ZSB3aWxsIGJlIHVzZWQgd2hlbiBjcmVhdGluZyBhIG5ldyB1c2VyLCBvdGhlcndpc2UgYSBkZWZhdWx0IHZhbHVlIG9mIDEwIGZyb20gdGhlIGNyZWF0ZSBkYXRlIHdpbGwgYmUgdXNlZC4gIElmIHRoaXMgZmllbGQgaXMgZW1wdHkgd2hlbiB1cGRhdGluZyBhIHVzZXIgdGhlbiBoaXMgZXhwaXJ5IHdpbGwgbm90IGJlIGFkanVzdGVkLjwvbGk+CjxsaT5UaGUgPHN0cm9uZz5ncm91cG5hbWU8L3N0cm9uZz4gRmllbGQgLSBBIDogc2VwYXJhdGVkIGxpc3Qgb2YgdGhlIGdyb3VwIG5hbWVzIHRoYXQgeW91IHdhbnQgdG8gaGF2ZSB0aGUgdXNlciBiZSBhIG1lbWJlciBvZi4gSWYgYWxsIHJlcXVpcmVkIGZpZWxkcyBhcmUgbm90IGZpbGxlZCBpbiB0aGUgaW5zZXJ0L3VwZGF0ZSBvZiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L2xpPgo8bGk+RHJvcGRvd24vUmFkaW8gRmllbGRzCiAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+CjwvbGk+CjxsaT5NdWx0aXNlbGVjdCBGaWVsZHMKICA8cD5NdWx0aXNlbGVjdCBmaWVsZHMgYXJlIGNvbnRhaW5lZCB3aXRoaW4gdGhlIEFTQ0lJIGZpbGUgYXMgYSA6IHNlcGFyYXRlZCBsaXN0IG9mIHN0cmluZ3MsIHdoZXJlIGVhY2ggc3RyaW5nIHJlcHJlc2VudHMgdGhlIHRleHQgc2hvd24gaW4gdGhlIG11bHRpc2VsZWN0IGxpc3Q8L3A+CjwvbGk+CjxsaT5FbWFpbCBGaWVsZHMKICA8cD5NdXN0IGJlIGEgdmFsaWQgZW1haWwgYWRkcmVzcyB0aGF0IGNhbiBiZSB2YWxpZGF0ZWQgYnkgUEhQcyBidWlsdGluIGZ1bmN0aW9uYWxpdHkuPC9wPgo8L2xpPgo8bGk+RGF0ZSBGaWVsZHMKICA8cD5NdXN0IGJlIGluIGEgZm9ybWF0IHRoYXQgY2FuIGJlIGNvbnZlcnRlZCB0byBhIHVuaXggdGltZXN0YW1wIGJ5IHRoZSBzdHJ0b3RpbWUoKSBtZXRob2QuPC9wPgo8L2xpPgo8bGk+SW1hZ2UgRmllbGRzCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdob1wncyBjb2x1bW4gbmFtZSBtYXRjaGVzIGEgcHJvcGVydHkgb2YgdHlwZSBJbWFnZS4gIElmIHRoaXMgZmllbGQgaXMgbm90IGVtcHR5IHRoZW4gdGhlIGZpbGVuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gaW1hZ2UgZGVzdGluYXRpb24gcGF0aCBhcyBzcGVjaWZpZWQgaW4gdGhlIEZFVSBwcmVmZXJlbmNlcy4uICBJZiB0aGUgaW1hZ2UgZG9lcyBub3QgZXhpc3QsIGFuZCB0aGUgZmllbGQgaXMgcmVxdWlyZWQsIHRoZW4gdGhlIHJlY29yZCB3aWxsIGZhaWwuPC9wPjwvbGk+CjwvdWw+CjxoNT5Ob3RlczwvaDU+CjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBhIG1lbW9yeSBhbmQgZGF0YWJhc2UgaW50ZW5zaXZlIHJvdXRpbmUuICBJdCBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4KPHA+VGhlIEV4cG9ydCBkYXRhIGlzIHRoZSBzYW1lIGZvcm1hdCBhcyBuZWVkZWQgZm9yIGltcG9ydC4gIEhvd2V2ZXIgaXQgbWF5IHByb3ZpZGUgZXh0cmEgZmllbGRzIHRoYXQgYXJlIG5vdCByZXF1aXJlZCBmb3IgaW1wb3J0LjwvcD4KPGg1PkV4YW1wbGU8L2g1Pgo8cHJlPgojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXAKdXNlcjEsdGVzdCx1c2VyLHVzZXIxQHNvbWVkb21haW4uY29tLHNvbWV3aGVyZSxUWCxVUywxMjM0NQo8L3ByZT4KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnQgVXNlcnMgSW50byBUaGlzIEdyb3VwJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ0lucHV0IENTViBGaWxlJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnSW5wdXQgWE1MIEZpbGUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRXhwb3J0IFVzZXJzJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ0ltcG9ydCBVc2Vycyc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdDbGVhcic7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0ltYWdlIERlc3RpbmF0aW9uIFBhdGgnOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdBIHByb2JsZW0gb2NjdXJyZWQgd2l0aCBhIG1pc3NpbmcgKGJ1dCByZXF1aXJlZCkgdXBsb2FkJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdDb3VsZCBub3QgcGFyc2UgdGhlIHByb3ZpZGVkIFhNTCBmaWxlJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdDYW5ub3QgZGVsZXRlIGEgZ3JvdXAgdGhhdCBzdGlsbCBoYXMgdXNlcnMnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ1RoaXMgdXNlciBpcyBhbHJlYWR5IGxvZ2dlZCBpbic7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdTb3JyeSwgYnV0IGNhcHRjaGEgdmVyaWZpY2F0aW9uIGZhaWxlZC4gIFBsZWFzZSB0cnkgYWdhaW4uJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnXSA9ICdBbGxvdyB1c2VycyB0byBsb2dpbiBtb3JlIHRoYW4gb25jZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnSW1hZ2UgRmlsZSBFeHRlbnNpb25zIHRoYXQgVXNlcnMgYWxsb3dlZCB0byB1cGxvYWQnOwokbGFuZ1snZXZlbnRfaGVscF9PblJlZnJlc2hVc2VyJ10gPSAnCjxoMz5PblJlZnJlc2hVc2VyPC9oMz4KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gdGhlIHVzZXIgc2Vzc2lvbiBpcyByZWZyZXNoZWQuPC9wPgo8aDQ+UGFyYW1ldGVyczo8L2g0Pgo8dWw+CiAgPGxpPjxlbT5pZDwvZW0+IC0gVGhlIFVzZXIgaWQ8L2xpPgo8L3VsPgonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICcKPGgzPk9uRGVsZXRlVXNlcjxoMz4KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPgo8L3VsPgonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICcKPGgzPk9uQ3JlYXRlVXNlcjxoMz4KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGNyZWF0ZWQ8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPgo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+CjwvdWw+Cic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJwo8aDM+T25VcGRhdGVVc2VyPGgzPgo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPgo8L3VsPgonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnCjxoMz5PbkNyZWF0ZUdyb3VwPGgzPgo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gVGhlIGdyb3VwIGRlc2NyaXB0aW9uPC9saT4KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4KPC91bD4KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJwo8aDM+T25EZWxldGVHcm91cDxoMz4KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBkZWxldGVkPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+CjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+CjwvdWw+Cic7CiRsYW5nWydldmVudF9oZWxwX0FmdGVyTG9naW5BdXRoJ10gPSAnCjxoMz5PbkxvZ2luPGgzPgo8cD5BbiBldmVudCBzZW50IHdoZW4gYSB1c2VyIGxvZ3MgaW48LCBhZnRlciBhdXRoZW50aWNhdGlvbiwgYnV0IGJlZm9yZSBzZXNzaW9uIGluZm9ybWF0aW9uIGlzIGNyZWF0ZWQsIGFuZCB0aGUgc3lzdGVtIHJlY29nbml6ZXMgaGltIGFzIGxvZ2dlZCBpbi4KVGhpcyBldmVudCBjYW4gYmUgdXNlZCBieSB0aGlyZCBwYXJ0eSBtb2R1bGVzIHRvIGFpZGUgaW4gc2VjdXJpdHkgZm9yIEZFVS48L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4KPGxpPjxlbT5pcDwvZW0+IC0gVGhlIGlwIGFkZHJlc3Mgb2YgdGhlIGNsaWVudDwvbGk+CjxsaT48ZW0+YWxsb3c8L2VtPiAtIGJvb2xlYW4gcmVmZXJlbmNlIGluZGljYXRpbmcgd2hldGhlciB0aGUgdXNlciBzaG91bGQgYmUgYWxsb3dlZCB0byBsb2dpbi4gIE1vZHVsZXMgY2FuIHNldCB0aGlzIHRvIGZhbHNlIHRvIGRpc2FsbG93IGxvZ2luLjwvbGk+CjxsaT48ZW0+bXNnPC9lbT4gLSBzdHJpbmcgbWVzc2FnZSB0byBpbmRpY2F0ZSB0aGUgbmF0dXJlIG9mIHRoZSBwcm9ibGVtIGlmIGEgbW9kdWxlIGhhcyBzZXQgYWxsb3cgdG8gZmFsc2UuPC9saT4KPC91bD4KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfQmVmb3JlTG9naW4nXSA9ICcKPGgzPk9uTG9naW48aDM+CjxwPkFuIGV2ZW50IHNlbnQgd2hlbiBhIHVzZXIgbG9ncyBpbjwsIGFmdGVyIGxvZ2luIGZvcm0gc3VibWlzc2lvbiwgYnV0IGJlZm9yZSB0aGV5IGFyZSBhdXRoZW50aWNhdGVkLi4uClRoaXMgZXZlbnQgY2FuIGJlIHVzZWQgYnkgdGhpcmQgcGFydHkgbW9kdWxlcyB0byBhaWRlIGluIHNlY3VyaXR5IGZvciBGRVUuPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+CjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+CjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPgo8bGk+PGVtPmFsbG93PC9lbT4gLSBib29sZWFuIHJlZmVyZW5jZSBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIHVzZXIgc2hvdWxkIGJlIGFsbG93ZWQgdG8gbG9naW4uICBNb2R1bGVzIGNhbiBzZXQgdGhpcyB0byBmYWxzZSB0byBkaXNhbGxvdyBsb2dpbi48L2xpPgo8bGk+PGVtPm1zZzwvZW0+IC0gc3RyaW5nIG1lc3NhZ2UgdG8gaW5kaWNhdGUgdGhlIG5hdHVyZSBvZiB0aGUgcHJvYmxlbSBpZiBhIG1vZHVsZSBoYXMgc2V0IGFsbG93IHRvIGZhbHNlLjwvbGk+CjwvdWw+Cic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICcKPGgzPk9uTG9naW48aDM+CjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+CjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+CjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPgo8L3VsPgonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luRmFpbGVkJ10gPSAnCjxoMz5PbkxvZ2luRmFpbGVkPGgzPgo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9naW4gZmFpbHM8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPgo8bGk+PGVtPm1zZzwvZW0+IC0gQSBtZXNzYWdlIGluZGljYXRpbmcgd2h5IHRoZSBsb2dpbiBmYWlsZWQuL2xpPgo8L3VsPgonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJwo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQ8L3A+CjxoND5QYXJhbWV0ZXJzPC9oND4KPHVsPgo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+CjwvdWw+Cic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJwo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBleHBpcmVzPC9wPgo8aDQ+UGFyYW1ldGVyczwvaDQ+Cjx1bD4KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+CjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPgo8L3VsPgonOwokbGFuZ1snZXZlbnRfaW5mb19BZnRlckxvZ2luQXV0aCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCBhZnRlciBhdXRoZW50aWNhdGlvbiwgYnV0IGJlZm9yZSBhY3R1YWxseSBsb2dnaW5nIHRoZSB1c2VyIGluLic7CiRsYW5nWydldmVudF9pbmZvX0JlZm9yZUxvZ2luJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW4gdG8gdGhlIHN5c3RlbSwgYWZ0ZXIgaGUgaXMgaGFzIHN1Ym1pdHRlZCB0aGUgbG9naW4gZm9ybSwgYnV0IGJlZm9yZSBhbnkgYXV0aGVudGljYXRpb24gaXMgdGVzdGVkLic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbiB0byB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbkZhaWxlZCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBmYWlscyB0byBsb2cgaW4gdG8gdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uTG9nb3V0J10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0IG9mIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBpcyBleHBpcmVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBuZXcgdXNlciBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25SZWZyZXNoVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyIHNlc3Npb24gaXMgcmVmcmVzaGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGluZm8gaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBhY2NvdW50IGlzIGRlbGV0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGRlbGV0ZWQnOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0JhY2tlbmQgR3JvdXAnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBUaGUgZm9sbG93aW5nIGZpZWxkcyBhcmUgZnVsbCBzbWFydHkgdGVtcGxhdGVzLjxici8+QWxvbmcgd2l0aCBvdGhlciBwcmUtZXhpc3Rpbmcgc21hcnR5IHZhcmlhYmxlcyBhbmQgcGx1Z2lucywgdGhlIHskdXNlcm5hbWV9IGFuZCB7JGdyb3VwfSB2YXJpYWJsZXMgYXJlIGF2YWlsYWJpZS4gIDxlbT4oVGhlIHskZ3JvdXB9IHZhcmlhYmxlIG1hdGNoZXMgdGhlIGZpcnN0IGdyb3VwIHRvIHdoaWNoIHRoZSB1c2VyIGJlbG9uZ3MuKTwvZW0+Lic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnRWRpdCB0aGlzIGZpZWxkIHRvIHJlc2V0IHRoZSB1c2VycyBwYXNzd29yZCc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnRWRpdCB0aGlzIGZpZWxkIHRvIHJlc2V0IHRoZSB1c2VycyBwYXNzd29yZCc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdBIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ05vIHJlc3VsdHMgcmV0dXJuZWQgZnJvbSBjc3YgZXhwb3J0JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0xlbmd0aCBvZiB1c2VybmFtZSBmaWVsZCc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdMZW5ndGggb2YgcGFzc3dvcmQgZmllbGQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ01pbi9NYXggcGFzc3dvcmQgbGVuZ3RocyBhcmUgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTWluL01heCB1c2VybmFtZSBsZW5ndGhzIGFyZSBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdJbnZhbGlkIEVtYWlsIGFkZHJlc3MnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdXZSBjb3VsZCBub3QgZmluZCBhbiBlbWFpbCBhZGRyZXNzIGZvciB0aGlzIGFjY291bnQnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbSBzZXR0aW5nIHByb3BlcnR5JzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVc2VyIEFkZGVkICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnVXNlciBEZWxldGVkIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ1Byb3BlcnR5JzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWx1ZSAocmVndWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1dhcm5pbmc6IFRoZXNlIGZpZWxkcyBhZmZlY3QgdGhlIHNpemUgb2YgaW5wdXQgZmllbGRzIGZvciBmb3Jtcy4gIERlY3JlYXNpbmcgdGhpcyBudW1iZXIgb24gYW4gZXhpc3Rpbmcgc2l0ZSBtYXkgbm90IGJlIGFkdmlzYWJsZSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGFkanVzdCB0aGUgbW9kdWxlIHByZWZlcmVuY2VzPyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnRW1haWwgYWRkcmVzcyBhbHJlYWR5IHVzZWQnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnVXNlIGNvb2tpZXMgdG8gcmVtZW1iZXIgbG9naW4gZGV0YWlscyc7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ1RoZSBuYW1lIG9mIHRoZSAmcXVvdDtSZW1lbWJlciBNZSZxdW90OyBjb29raWUnOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgZW1haWxzJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ0VtYWlsIGFkZHJlc3MgaXMgdXNlcm5hbWUnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnSWYgZW5hYmxlZCwgYSBjb29raWUgd2lsbCBiZSBzZXQgaXRoIGFuIGV4cGlyeSB0aW1lIG9mIDI0IGhvdXJzIHRvIGtlZXAgc2Vzc2lvbnMgYWxpdmUuICBUaGlzIGlzIGRpZmZlcmVudCB0aGFudCB0aGUgcmVtZW1iZXJtZSBmdW5jdGlvbmFsaXR5LCBhbmQgY2FuIGJlIHVzZWQgdG8gZXh0ZW5kIGEgdXNlcnMgbG9naW4gdG8gdGhlIHN5c3RlbSBpZiBzZXNzaW9uIGRhdGEgaXMgY2xlYXJlZCB0b28gZnJlcXVlbnRseS4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKEFsbG93IG11bHRpcGxlIHVzZXJzIHdpdGggdGhlIHNhbWUgZW1haWwgYWRkcmVzcyknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1c2VyXCdzIGVtYWlsIGFkZHJlc3MgaXMgdGhlaXIgdXNlcm5hbWUgLS0gZG9uXCd0IHNldCB0aGlzIHdpdGggImFsbG93IGR1cGxpY2F0ZSBlbWFpbCBhZGRyZXNzZXMiISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgImZvcmdvdCBwYXNzd29yZCIgcmVtaW5kZXJzPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoQWxsb3cgYSB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQsIGV2ZW4gaWYgdGhleSBoYXZlblwndCBhY3RlZCBvbiBhIHByZXZpb3VzIG9uZSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdVc2UgRnJvbnQtZW5kIFVzZXIgc3BlY2lmaWMgcGVybWlzc2lvbnM/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWxseSwgRkVVU2VycyBwZXJtaXNzaW9ucyBhcmUgdGhlIHNhbWUgYXMgdGhlIGVxdWl2YWxlbnQgQWRtaW4gQXJlYSBwZXJtaXNzaW9ucyBsaWtlIEFkZCBVc2VyLCBBZGQgR3JvdXAsIGV0Yy4gSWYgeW91IHNlbGVjdCB0aGlzIG9wdGlvbiwgdGhlcmUgd2lsbCBiZSBzZXBhcmF0ZSBwZXJtaXNzaW9ucyBmb3IgRkVVc2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdDb3VsZCBub3QgZmluZCB0aGUgdXBsb2FkZWQgZmlsZSAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnVGhlcmUgd2FzIGEgcHJvYmxlbSB3aXRoIHlvdXIgdXBsb2FkZWQgZmlsZS4gIFBsZWFzZSB0cnkgYWdhaW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnWW91IGRpZCBub3QgZW50ZXIgYSB1c2VybmFtZSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdZb3UgZGlkIG5vdCBlbnRlciB5b3VyIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ1lvdSBkaWQgbm90IGVudGVyIGEgcGFzc3dvcmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kIFVzZXIgTG9nb3V0JzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kIFVzZXIgTG9naW4nOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSJyZWQiPjxiPlVTRSBDQVVUSU9OPC9iPiB3aGVuIGNoYW5naW5nIGV4aXN0aW5nIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzaWduZWQgdG8gZ3JvdXBzLCB5b3UgbWF5IHBvdGVudGlhbGx5IGNhdXNlIGRhbWFnZSBhbmQgYnJlYWsgYW4gZXhpc3Rpbmcgc2l0ZSA8aT4oZXNwZWNpYWxseSBpZiB5b3UgcmVkdWNlIGZpZWxkIGxlbmd0aHMsIGV0Yyk8L2k+PC9mb250Pic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ1RoaXMgZnVuY3Rpb24gZG9lcyBub3Qgd29yayBvbiB3aW5kb3dzJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdEbyBub3QgY3JlYXRlIGEgcHJvcGVydHkgZm9yIHVzZXJuYW1lLCBvciBwYXNzd29yZCBhcyB0aGVzZSBwcm9wZXJ0aWVzIGFyZSBidWlsdGluIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRXhwb3J0IFVzZXJzIHRvIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnQnOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0JzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW4nOwokbGFuZ1snZWRpdHByb3AnXSA9ICdFZGl0IFByb3BlcnR5OiA8ZW0+JXM8L2VtPic7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYXhpbXVtIExlbmd0aCc7CiRsYW5nWydjcmVhdGVkJ10gPSAnQ3JlYXRlZCc7CiRsYW5nWydzb3J0YnknXSA9ICdTb3J0IEJ5JzsKJGxhbmdbJ3NvcnQnXSA9ICdTb3J0aW5nJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1VzZXJzIGluIHRoZSBzZWxlY3RlZCBncm91cChzKSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdMaW1pdCByZXN1bHRzIHRvJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGZpZWxkIGZvciB0aGlzIHVzZXIuICBZb3UgbWF5IG5lZWQgdG8gY29udGFjdCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIEZvcmdvdCBQYXNzd29yZCBmb3JtJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBDaGFuZ2UgU2V0dGluZ3MgZm9ybSc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ2luIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9nb3V0IConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU29ydCBvcmRlcic7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdBIG51bWJlciBvZiB1c2VycyBhcmUgaW4gdGhlIG1pZGRsZSBvZiByZXNldHRpbmcgbG9zdCBwYXNzd29yZHMuICBDdXJyZW50bHkgdGhpcyBjb3VudCBpcyBhdDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgd2VlayBvbGQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIG1vbnRoIG9sZCc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0FyZSB5b3Ugc3VyZT8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdBbiBpbnZhbGlkIGNvZGUgaGFzIGJlZW4gZW50ZXJlZCwgcGxlYXNlIHRyeSBhZ2Fpbic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnU29ycnksIEl0IGFwcGVhcnMgdGhhdCB0aGUgdGVtcG9yYXJ5IGNvZGUgeW91IHJlY2VpdmVkIGZvciByZXNldHRpbmcgeW91ciBwYXNzd29yZCBpcyBub3cgaW52YWxpZCAodGVtcG9yYXJ5IGNvZGVzIGNhbiBvbmx5IGJlIHVzZWQgb25jZSkuICBQbGVhc2UgdHJ5IGFnYWluLic7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgdG8gZGlzcGxheSB2ZXJpZmljYXRpb24gZm9ybSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNlZCBmb3IgZm9yZ290dGVuIHBhc3N3b3JkIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdFaXRoZXIgeW91cnNlbGYgb3Igc29tZW9uZSBlbHNlIGhhcyBhbHJlYWR5IHRyaWdnZXJlZCBhIHBhc3N3b3JkIHJlc2V0IG9wZXJhdGlvbiBmb3IgdGhpcyBhY2NvdW50LiAgQ2hlY2sgeW91ciBlbWFpbCwgeW91IG1heSBoYXZlIGZ1cnRoZXIgaW5zdHJ1Y3Rpb25zIG9uIGhvdyB0byByZXNldCB5b3VyIHBhc3N3b3JkIGluIHlvdXIgaW5ib3gnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0RhdGFiYXNlIGVycm9yJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1lvdSBhcmUgcmVjZWl2aW5nIHRoaXMgbWVzc2FnZSBiZWNhdXNlIHNvbWVib2R5IHRvbGQgb3VyIHNpdGUgdGhhdCB5b3UgaGFkIGxvc3QgeW91ciBwYXNzd29yZC4gIElmIHRoaXMgaXMgdGhlIGNhc2UsIHJlYWQgdGhlIGluc3RydWN0aW9ucyBiZWxvdy4gIElmIHlvdSBkb25cJ3QgaGF2ZSBhIGNsdWUgd2hhdCB0aGlzIGlzLCB0aGVuIHlvdSBhcmUgc2FmZSB0byBkZWxldGUgdGhpcyBtZXNzYWdlLCBhbmQgd2UgdGhhbmsgeW91IGZvciB5b3VyIHRpbWUuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnQ29kZSc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdUaGUgZm9sbG93aW5nIGNvZGUgaGFzIGJlZW4gcmFuZG9tbHkgZ2VuZXJhdGVkIGluIG9yZGVyIHRvIHZlcmlmeSB0aGUgdXNlciBhY2NvdW50LiAgd2hlbiB5b3UgY2xpY2sgb24gdGhlIGxpbmsgYmVsb3cgeW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBmaWVsZCB0byBlbnRlciB0aGlzIGNvZGUuICBOb3JtYWxseSB0aGUgZmllbGQgaXMgcHJlLWNvbXBsZXRlZCBmb3IgeW91LCBidXQgaW5jYXNlIGl0IGlzblwndCB0aGUgY29kZSBpczonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdDbGlja2luZyBvbiB0aGUgZm9sbG93aW5nIGxpbmsgd2lsbCB0YWtlIHlvdSB0byB0aGUgd2Vic2l0ZSB3aGVyZSB5b3UgY2FuIGVudGVyIHRoZSBhYm92ZSBjb2RlLCBhbmQgcmVzZXQgeW91ciBwYXNzd29yZDonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ0xvc3QgUGFzc3dvcmQnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdDb3VsZCBub3QgZmluZCB0aGUgQ01TTWFpbGVyIG1vZHVsZSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdBbiBlbWFpbCBoYXMgYmVlbiBzZW50IHRvICVzIHdpdGggaW5zdHJ1Y3Rpb25zIGFzIHRvIGhvdyB0byByZXNldCB5b3VyIHBhc3N3b3JkLiAgVGhhbmsgeW91JzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnU28geW91IGZvcmdvdCBvciBsb3N0IHlvdXIgcGFzc3dvcmQuIFdlbGwsIGVudGVyIHRoZSByZXF1aXJlZCBpbmZvcm1hdGlvbiBpbnRvIHRoaXMgZm9ybSwgYW5kIGlmIHdlIGNhbiBmaW5kIHlvdSB3ZSB3aWxsIHNlbmQgeW91IGFuIGVtYWlsIHdpdGggaW5zdHJ1Y3Rpb25zIG9uIGhvdyB0byByZXNldCBpdC4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdGb3Jnb3QgUGFzc3dvcmQgVGVtcGxhdGVzJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnUHJvcGVydHkgJXMgbm90IGZvdW5kJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdQcm9wZXJ0aWVzIGZvdW5kJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdBZGQgUHJvcGVydHknOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0EgcmVxdWlyZWQgZmllbGQgKCVzKSB3YXMgZW1wdHknOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdFbnRlciBhIG5ldyBwYXNzd29yZCBoZXJlIHRvIGNoYW5nZSB5b3VyIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnWW91IGRvIG5vdCBhcHBlYXIgdG8gYmUgbG9nZ2VkIGluJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdTZXR0aW5ncyc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJhdGlvbic7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ1RoaXMgYWNjb3VudCBoYXMgZXhwaXJlZCc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnSW1wcm9wZXIgZW1haWwgYWRkcmVzcyBmb3JtYXR0aW5nJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnSW52YWxpZCBleHBpcnkgZGF0ZS4gIFRoaXMgbWF5IGJlIHN5c3RlbSByZWxhdGVkLiAgVHJ5IHNldHRpbmcgYW4gZWFybGllciB5ZWFyLic7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnRXJyb3Igc2V0dGluZyBwcm9wZXJ0eSAlcyBmb3IgdXNlciAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ0ludmFsaWQgZ3JvdXAgaWQgJXMnOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU29ydCBvcmRlcic7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ0hpZGRlbiBmaWVsZCBtYXJrZXInOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0hpZGRlbiBmaWVsZCBjb2xvcic7CiRsYW5nWydoaWRkZW4nXSA9ICdIaWRkZW4nOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ0EgcHJvcGVydHkgd2l0aCB0aGF0IG5hbWUgaXMgYWxyZWFkeSBkZWZpbmVkJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ05vIHByb3BlcnRpZXMgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ05vIHByb3BlcnRpZXMgd2VyZSBzZWxlY3RlZCBmb3IgdGhpcyBncm91cC4gIEEgZ3JvdXAgbXVzdCBoYXZlIGF0IGxlYXN0IG9uZSBwcm9wZXJ0eSBzZWxlY3RlZCAoUmVxdWlyZWQsT3B0aW9uYWwsIG9yIEhpZGRlbiknOwokbGFuZ1snbm9ncm91cHMnXSA9ICdObyBHcm91cHMgYXJlIGRlZmluZWQnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcm91cHMgZm91bmQnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ01lbWJlcnNoaXAgaW4gYXQgbGVhc3Qgb25lIGdyb3VwIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdSZXF1aXJlIG1lbWJlcnNoaXAgaW4gYXRsZWFzdCBvbmUgZ3JvdXAnOwokbGFuZ1snYmFjayddID0gJ0JhY2snOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGlzIGEgcmVxdWlyZWQgZmllbGQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ01hcmsgcmVxdWlyZWQgZmllbGRzIHdpdGgnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnSGlsaXRlIHJlcXVpcmVkIGZpZWxkcyBpbic7CiRsYW5nWyduZXh0J10gPSAnTmV4dCc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0EgR3JvdXAgd2l0aCB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdSZXF1aXJlZCc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wdGlvbmFsJzsKJGxhbmdbJ29mZiddID0gJ09mZic7CiRsYW5nWydzaXplJ10gPSAnU2l6ZSc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltdW0gc2l6ZSBvZiBhbnkgb25lIGRpbWVuc2lvbiBvZiB0aGUgaW1hZ2UgaW4gcGl4ZWxzKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMZW5ndGgnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2hhcnMgaW4gdGhlIHRleHQgaW5wdXQpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdEcm9wZG93biBvcHRpb25zLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuICBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3JhZGlvb3B0aW9ucyddID0gJ1JhZGlvYnV0dG9uIGxhYmVscywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzLiBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3llcyddID0gJ1llcyc7CiRsYW5nWydwcm9tcHQnXSA9ICdQcm9tcHQnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnUmVxdWlyZWQnOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdGaWVsZCBTdGF0dXMnOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnQXNrIGluIExvc3Q8YnIvPlVzZXJuYW1lJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0JzsKJGxhbmdbJ2NoZWNrYm94J10gPSAnQ2hlY2tib3gnOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdNdWx0aSBTZWxlY3QgTGlzdCc7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdSYWRpbyBCdXR0b25zJzsKJGxhbmdbJ2ltYWdlJ10gPSAnSW1hZ2UnOwokbGFuZ1snZW1haWwnXSA9ICdFbWFpbCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1RleHRhcmVhJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24nOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdXZWxjb21lJzsKJGxhbmdbJ2xvZ291dCddID0gJ1NpZ24gb3V0JzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdVc2UgdGhpcyBncm91cCBuYW1lJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ0NoYW5nZSBNeSBTZXR0aW5ncyc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0xvZ2luIGZhaWxlZC4gIFRoaXMgcHJvYmFibHkgbWVhbnMgdGhhdCB5b3UgZW50ZXJlZCBhbiBpbnZhbGlkIHVzZXJuYW1lIG9yIHBhc3N3b3JkLiAgQnV0IHlvdXIgYWNjb3VudCBtYXkgaGF2ZSBhbHNvIGV4cGlyZWQgb3IgYmVlbiBkaXNhYmxlZCBieSBhbiBhZG1pbmlzdHJhdG9yLiAgUGxlYXNlIGRvdWJsZSBjaGVjayB5b3VyIGxvZ2luIGNyZWRlbnRpYWxzLCBhbmQgaWYgdGhleSBhcmUgY29ycmVjdCB5b3UgbWF5IG5lZWQgdG8gY29udGFjdCB0aGUgc2l0ZSBhZG1pbmlzdHJhdG9yLic7CiRsYW5nWydsb2dpbiddID0gJ1NpZ24gaW4nOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdTaWduIGluIGJ1dHRvbiBsYWJlbCc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdVc2VybmFtZSc7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdFbWFpbCBBZGRyZXNzJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1Bhc3N3b3JkJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnUmVtZW1iZXIgbWUgb24gdGhpcyBjb21wdXRlcic7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdGVyJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnRm9yZ290IFlvdXIgUGFzc3dvcmQ/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0ZvcmdvdCBZb3VyIExvZ2luIERldGFpbHM/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnRGVmYXVsdHMnOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVGhhdCB1c2VybmFtZSAoJXMpIGlzIGFscmVhZHkgaW4gdXNlJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdVc2UgU01UUCB0byB2YWxpZGF0ZSBlbWFpbCBhZGRyZXNzZXM/JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ01pbmltdW0gUGFzc3dvcmQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ01heGltdW0gUGFzc3dvcmQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltdW0gVXNlcm5hbWUgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01heGltdW0gVXNlcm5hbWUgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb24gVGltZW91dCAoc2Vjb25kcyknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1VzZSBjb29raWVzIHRvIGtlZXAgbG9naW5zIGFsaXZlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnQWxsb3cgRW1haWwgUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdEZWZhdWx0IEdyb3VwIGZvciBuZXcgdXNlcnMnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdDaGFuZ2UgU2V0dGluZ3MgVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ1Bhc3N3b3JkcyBEbyBub3QgbWF0Y2gnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnSW52YWxpZCBVc2VybmFtZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdJbnZhbGlkIFBhc3N3b3JkLiAgWW91ciBwYXNzd29yZCBtYXkgYmUgdG9vIHNob3J0LCB0b28gbG9uZywgb3Igbm90IHN0cm9uZyBlbm91Z2ggZm9yIHRoaXMgc3lzdGVtLiAgU2VlIHRoZSB3ZWJzaXRlcyBwYXNzd29yZCBwb2xpY3kgZm9yIG1vcmUgaW5mb3JtYXRpb24uJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ1NvcnJ5LCBzb21ldGhpbmcgaGFzIGdvbmUgd3JvbmcuICBXZSBjb3VsZCBub3QgZmluZCBhbnkgaW5mb3JtYXRpb24gZm9yIHRoZSBzcGVjaWZpZWQgdXNlcic7CiRsYW5nWydlZGl0dXNlciddID0gJ0VkaXQgVXNlcic7CiRsYW5nWyd2YWxpZCddID0gJ1ZhbGlkJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ1RoaXMgdXNlciBpcyBub3QgYSBtZW1iZXIgb2YgYW55IGdyb3Vwcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnTm8gUHJvcGVydGllcyc7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ0F0dGVtcHQgdG8gaW1wb3J0IGR1cGxpY2F0ZSBwcm9wZXJ0aWVzJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnVmFsdWUnOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3JvdXBzJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdQcm9wZXJ0aWVzJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnUHJvcGVydHkgTmFtZSc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdQcm9wZXJ0eSBWYWx1ZSc7CiRsYW5nWydhZGQnXSA9ICdBZGQnOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3RvcnknOwokbGFuZ1snZWRpdCddID0gJ0VkaXQnOwokbGFuZ1snZXhwaXJlcyddID0gJ0V4cGlyZXMnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3BlY2lmeSBEYXRlJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgSG91cnMnOwokbGFuZ1snMjRocnMnXSA9ICcyNCBIb3Vycyc7CiRsYW5nWyc0OGhycyddID0gJzQ4IEhvdXJzJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSBXZWVrJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgV2Vla3MnOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBNb250aCc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBNb250aHMnOwokbGFuZ1snNm1vbnRocyddID0gJzYgTW9udGhzJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSBZZWFyJzsKJGxhbmdbJ25ldmVyJ10gPSAnTmV2ZXInOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWxlIGluc3RhbGxlZCBzdWNlc3NmdWxseS48YnIvPkJlIHN1cmUgdG8gc2V0IHRoZSAiTW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4iJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW1haWwgQWRkcmVzcyc7CiRsYW5nWydwYXNzd29yZCddID0gJ1Bhc3N3b3JkJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnQWdhaW4nOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ0dyb3VwIGJ5IHRoYXQgbmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICdFZGl0IEdyb3VwJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1N1Ym1pdCc7CiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWwnOwokbGFuZ1snZGVsZXRlJ10gPSAnRGVsZXRlJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnQXJlIHlvdSBzdXJlIHRoaXMgaXMgdGhlIHByb3BlciBzZXR0aW5ncyBmb3IgdGhpcyBncm91cD9cblR1cm5pbmcgYSBwcm9wZXJ0eSBvZmYgd2lsbCBub3QgZGVsZXRlIGFueSBlbnRyaWVzIGluIHRoZSBwcm9wZXJ0aWVzIHRhYmxlIGZvciB0aGlzIGdyb3VwL3VzZXIuICBUaGV5IHdpbGwgbWVyZWx5IGJlIHVuYXZhaWxhYmxlLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGdyb3VwPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGNvbXBsZXRlbHkgZGVsZXRlIHRoaXMgcHJvcGVydHk/XG5Eb2luZyBzbyB3aWxsIGFsc28gZXJhc2UgYW55IHVzZXIgZW50cmllcyBmb3IgdGhpcyBwcm9wZXJ0eS4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnSW5zdWZmaWNpZW50IFBhcmFtZXRlcnMnOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWyd1c2VybmFtZSddID0gJ1VzZXJuYW1lJzsKJGxhbmdbJ25hbWUnXSA9ICdOYW1lJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbSBhZGRpbmcgcHJvcGVydHknOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwIHJlbGF0aW9uJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSBhZGRpbmcgYSB1c2VyIHRvIGEgZ3JvdXAnOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZW0gZGVsZXRpbmcgYSBwcm9wZXJ0eSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ0NvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGFkZHJlc3MnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ05vIHdyaXRlIHBlcm1pc3Npb24gdG8gZGVzdGluYXRpb24gZGlyZWN0b3J5JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICdJbnZhbGlkIFBhcmFtZXRlcnMnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdDb3VsZCBub3QgZmluZCBhbnkgZ3JvdXBzJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQXBwbHknOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdGVyJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdVc2VybmFtZSBSZWd1bGFyIEV4cHJlc3Npb24nOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmlwdGlvbic7CiRsYW5nWyduYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdHcm91cCBOYW1lJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2VzcyBEZW5pZWQnOwokbGFuZ1snZXJyb3InXSA9ICdFcnJvcic7CiRsYW5nWydhZGRncm91cCddID0gJ0FkZCBHcm91cCc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydCBHcm91cCc7CiRsYW5nWydhZGR1c2VyJ10gPSAnQWRkIFVzZXInOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcm91cHMgRm91bmQnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ1VzZXJzIGZvdW5kIHRoYXQgbWF0Y2ggdGhlIGNyaXRlcmlhJzsKJGxhbmdbJ2dyb3VwJ10gPSAnR3JvdXAnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTZWxlY3QgR3JvdXAnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnUmVnaXN0cmF0aW9uIFRlbXBsYXRlJzsKJGxhbmdbJ2xvZ291dF90ZW1wbGF0ZSddID0gJ0xvZ291dCBUZW1wbGF0ZSc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ0xvZ2luIFRlbXBsYXRlJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyZW5jZXMnOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3JvdXBzJzsKJGxhbmdbJ3VzZXJzJ10gPSAiVXNlcnMiOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgVXNlciBNYW5hZ2VtZW50JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9nIGluIHRvIHRoZSBmcm9udGVuZCBvZiB5b3VyIHNpdGUnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gIkRlZmF1bHQgZnJvbnQgcGFnZSI7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnTGFzdCBhY2Nlc3NlZCBwYWdlJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ090aGVyIHBhZ2U6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnUGxlYXNlIHZlcmlmeSB5b3UgYXJlIG5vdCBhIGJvdC4nOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/ext/ca_ES.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FueV9sb2dnZWRfaW5fdXNlciddID0gJ1F1YWxzZXZvbCB1c3VhcmkgY29uZWd1dCc7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdWaXNpdGFudHMnOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdTZWxlY3Qgb25lIG9yIG1vcmUgRkVVIGdyb3VwcyB0aGF0IGFyZSBhbGxvd2VkIHRvIHZpZXcgdGhpcyBwYWdlJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdDYWwgdHJpYXIgdW4gZ3J1cCc7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdUcmlhJiMwMzk7biB1bic7CiRsYW5nWydzdGFydF95ZWFyJ10gPSAnQW55IGQmIzAzOTtpbmljaSc7CiRsYW5nWydlbmRfeWVhciddID0gJ0FueSBkZSBmaW5hbCc7CiRsYW5nWydkYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdNaWRhIGRlbHMgY29udGFjdGVzJzsKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIE1vZGlmaWVkJzsKJGxhbmdbJ2Vycm9yX3Rvb21hbnlzZWxlY3RlZCddID0gJ1RvbyBtYW55IHVzZXJzIGFyZSBzZWxlY3RlZCBmb3IgYnVsayBvcGVyYXRpb25zLi4uLiBQbGVhc2UgdHJpbSBpdCB0byAyNTAgb3IgbGVzcyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9zZWxlY3RlZCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhlIHNlbGVjdGVkIHVzZXJzPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdEZWxldGUgU2VsZWN0ZWQnOwokbGFuZ1sncHJvbXB0X3JhbmRvbXVzZXJuYW1lJ10gPSAnR2VuZXJhdGUgcmFuZG9tIHVzZXJuYW1lIHdoZW4gYWRkaW5nIG5ldyB1c2Vycyc7CiRsYW5nWydtb250aHMnXSA9ICdtb250aHMnOwokbGFuZ1sncHJvbXB0X2V4cGlyZWFnZSddID0gJ0RlZmF1bHQgdXNlciBleHBpcnkgcGVyaW9kJzsKJGxhbmdbJ25vdGlmaWNhdGlvbl9zZXR0aW5ncyddID0gJ05vdGlmaWNhdGlvbiBTZXR0aW5ncyc7CiRsYW5nWydwcm9wZXJ0eV9zZXR0aW5ncyddID0gJ1Byb3BlcnR5IFNldHRpbmdzJzsKJGxhbmdbJ3JlZGlyZWN0aW9uX3NldHRpbmdzJ10gPSAnUmVkaXJlY3Rpb24gU2V0dGluZ3MnOwokbGFuZ1snZ2VuZXJhbF9zZXR0aW5ncyddID0gJ0dlbmVyYWwgU2V0dGluZ3MnOwokbGFuZ1snc2Vzc2lvbl9zZXR0aW5ncyddID0gJ1Nlc3Npb24gYW5kIENvb2tpZSBTZXR0aW5ncyc7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ0ZpZWxkIFNldHRpbmdzJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ1RoZSBsb3N0dXNlcm5hbWUgZmxhZyBjYW4gb25seSBiZSB1c2VkIG9uIHJlcXVpcmVkIGZpZWxkcyc7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdBbGxvdyB1c2Ugb2Ygd3lzaXd5ZyBvbiB0aGlzIHRleHQgYXJlYSc7CiRsYW5nWydpbmZvX2Nvb2tpZXN0b3JlbWVtYmVyJ10gPSAnPHN0cm9uZz5Ob3RlOiA8L3N0cm9uZz4gVGhpcyB1c2VzIHRoZSBtY3J5cHQgZnVuY3Rpb25zIGZvciBlbmNyeXB0aW9uIHB1cnBvc2VzLCBhbmQgdGhleSBjb3VsZCBub3QgYmUgZGV0ZWN0ZWQgb24geW91ciBpbnN0YWxsLiAgIFBsZWFzZSBjb250YWN0IHlvdXIgc2VydmVyIGFkbWluaXN0cmF0b3IuJzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ01vZGlmaWNhciB1c3VhcmknOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdObyBwZXJtZXRpcyBmb3JtdWxhcmlzIGlubGluZSc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaWNhIGFxdSZpYWN1dGU7IHNpIG5vIHJlY29yZGVzIGxlcyBkYWRlcyBkZSByZWdpc3RyZSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3J10gPSAnUGljYSBhcXUmaWFjdXRlOyBzaSBubyByZWNvcmRlcyBlbCB0ZXUgcGFzc3dvcmQnOwokbGFuZ1snaW5mb19sb2dvdXQnXSA9ICdQaWNhIGFxdSZpYWN1dGU7IHBlciBzb3J0aXInOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ1BpY2EgYXF1JmlhY3V0ZTsgcGVyIGFqdXN0YXIgZWwgdGV1IHBhc3N3b3JkIG8gYWx0cmEgaW5mb3JtYWNpJm9hY3V0ZTsnOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdWZXVyZSBwbGFudGlsbGEgZCYjMDM5O3VzdWFyaSc7CiRsYW5nWydldmVudCddID0gJ0V2ZW50JzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdOb3RpZmljYWNpJm9hY3V0ZTsgZCYjMDM5O2V2ZW50IEZFVSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX2FkZHJlc3MnXSA9ICdBZHJlJmNjZWRpbDthIGRlbCBtYWlsIGRlIG5vdGlmaWNhY2kmb2FjdXRlOyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnUGxhbnRpbGxhIGRlbCBtYWlsIGRlIG5vdGlmaWNhY2kmb2FjdXRlOyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdUZW1hIGRlIGwmIzAzOTtlbWFpbCBkZSBub3RpZmljYWNpJm9hY3V0ZTsnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdOb3RpZmljYWNpb25zIHBlciBlLW1haWwnOwokbGFuZ1snT25Mb2dpbiddID0gJ0VuIGVudHJhcic7CiRsYW5nWydPbkxvZ291dCddID0gJ0VuIHNvcnRpcic7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICdRdWFuIGxhIHNlc3NpJm9hY3V0ZTsgY2FkdWNhJzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ1F1YW4gZXMgY3JlYSB1biBub3UgdXN1YXJpJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ1F1YW4gcyYjMDM5O2VsaW1pbmEgdW4gdXN1YXJpJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ1F1YW4gZXMgbW9kaWZpY2EgY29uZmlndXJhY2kmb2FjdXRlOyBkJiMwMzk7dXN1YXJpcyc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnUXVhbiBlcyBjcmVhIHVuIGdydXAnOwokbGFuZ1snT25EZWxldGVHcm91cCddID0gJ1F1YW4gcyYjMDM5O2VsaW1pbmEgdW4gZ3J1cCc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ1RoZSBsb3N0IGxvZ2luIGRldGFpbHMgZnVuY3Rpb25hbGl0eSBoYXMgc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZC4gIFdlIGhhdmUgZm91bmQgYSB1bmlxdWUgdXNlcm5hbWUgdGhhdCBtYXRjaGVzIHRoZSBkZXRhaWxzIHlvdSBlbnRlcmVkLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnRWwgdGV1IG5vbSBkJiMwMzk7dXN1YXJpICZlYWN1dGU7cyc7CiRsYW5nWydsb3N0dW5jb25maXJtX3Bvc3Rtc2cnXSA9ICdSZWNvbWFuZW0gcXVlIGRlc2lzIGFxdWVzdGEgaW5mb3JtYWNpJm9hY3V0ZTsgZW4gdW4gbGxvYyBzZWd1ciBwZXImb2dyYXZlOyBhY2Nlc3NpYmxlJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjaGFuZ2Ugc2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgY29kZSB2ZXJpZmljYXRpb24gKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgRGV0YWlscyBUZW1wbGF0ZSc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgQ29uZmlybSBUZW1wbGF0ZSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Vycm9yOiBNb3JlIHRoYW4gb25lIHVzZXIgYWNjb3VudCBtYXRjaGVkIHRoZSBwcm9wZXJ0aWVzIHNwZWNpZmllZCc7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdFcnJvcjogQ291bGQgbm90IGZpbmQgYSBtYXRjaGluZyB1c2VyJzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdFcnJvcjogQ291bGQgbm90IGZpbmQgYSBncm91cCBieSB0aGF0IG5hbWUnOwokbGFuZ1sncmVhZG9ubHknXSA9ICdSZWFkIE9ubHknOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ1VzZXIgTWFuaXB1bGF0b3IgQ2xhc3MnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnTG9nZ2VkIG91dCBieSBhZG1pbmlzdHJhdG9yJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdTaG93IE9ubHkgTG9nZ2VkIEluIFVzZXJzJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdMb2dvdXQgdGhpcyB1c2VyJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ1VzZXIgUHJvcGVydGllcyc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ1VzZXIgSGlzdG9yeSc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnQnOwokbGFuZ1snY2xlYXInXSA9ICdDbGVhcic7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFeHBvcnQgVXNlciBIaXN0b3J5IFRvIEFTQ0lJIHRoYXQgaXMgYXQgbGVhc3QnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdDbGVhciBVc2VyIEhpc3RvcnkgcmVjb3JkcyB0aGF0IGlzIGF0IGxlYXN0JzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0ZvcmdvdCBZb3VyIExvZ2luIERldGFpbHM/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydCBncm91cCBkZWZpbml0aW9uIChhbmQgcHJvcGVydGllcykgdG8gWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdVc2VyIEhpc3RvcnkgTWFpbnRlbmFuY2UnOwokbGFuZ1sneWVzJ10gPSAnWWVzJzsKJGxhbmdbJ25vJ10gPSAnTm8nOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnT2YnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogTm8gTGltaXQgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnT25lIEhvdXIgT2xkJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJ1NpeCBIb3VycyBPbGQnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnVHdlbHZlIEhvdXJzIE9sZCc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ09uZSBEYXkgT2xkJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ09uZSBXZWVrIE9sZCc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnVHdvIHdlZWtzIE9sZCc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnT25lIE1vbnRoIE9sZCc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVGhyZWUgTW9udGhzIE9sZCc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ1NpeCBNb250aHMgT2xkJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ09uZSBZZWFyIE9sZCc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdHcm91cGluZyBhbmQgU29ydGluZyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnUmVjb3JkcyBtYXRjaGluZyB0aGUgY3JpdGVyaWEnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIFVzZXJuYW1lJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdBc2NlbmRpbmcgVXNlcm5hbWUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfZGVzYyddID0gJ0Rlc2NlbmRpbmcgRGF0ZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdBc2NlbmRpbmcgRGF0ZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIEV2ZW50IFR5cGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdBc2NlbmRpbmcgRXZlbnQgVHlwZSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIElwIEFkZHJlc3MnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdBc2NlbmRpbmcgSXAgQWRkcmVzcyc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnTm8gSGlzdG9yeSBEZXRlY3RlZCc7CiRsYW5nWydyZXNldCddID0gJ1Jlc2V0JzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dyb3VwIEJ5IElQIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdFdmVudCBUeXBlIEZpbHRlcic7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdEaXNwbGF5IG9ubHkgZXZlbnRzIHRoYXQgYXJlIGxlc3MgdGhhbjonOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ1BhZ2UgTGltaXQnOwokbGFuZ1snZm9yJ10gPSAnZm9yJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnVXNlciBIaXN0b3J5IFJlcG9ydCc7CiRsYW5nWyd1bmtub3duJ10gPSAnVW5rbm93bic7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnSVAgQWRkcmVzcyc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnRXZlbnQgVHlwZSc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdGUnOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ1JldHVybic7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0IE9wZXJhdGlvbiBDb21wbGV0ZSc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdMaW5lcyBQcm9jZXNzZWQnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0Vycm9ycyBFbmNvdW50ZXJlZCc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUmVjb3JkcyBBZGRlZCc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgZ3JvdXAgJXMnOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdDb3VsZCBub3QgZ2V0IGEgcmVzcG9uc2UgZnJvbSB0aGUgU01UUCBzZXJ2ZXInOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnRmlsZSBzcGVjaWZpZWQgKCVzKSBjb3VsZCBub3QgYmUgZm91bmQnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ0ludmFsaWQgdmFsdWUgZm9yIGRyb3Bkb3duIG9yIG11bHRpc2VsZWN0IGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnRmllbGQgJXMgZXhjZWVkcyBtYXhpbXVtIGxlbmd0aCc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0ltcG9ydCBFcnJvciAobGluZSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdDb3VsZCBub3QgZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucyAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGEgY29sdW1uIHRvIG1hdGNoIHRoZSByZXF1aXJlZCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1RoZSBmaWxlIHNwZWNpZmllZCBmb3IgaW1wb3J0IGlzIG5vdCBpbiB0aGUgY29ycmVjdCBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ0NvdWxkIG5vdCBvcGVuIGZpbGUnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0IFVzZXJzIEludG8gVGhpcyBHcm91cCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnB1dCBDU1YgRmlsZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0lucHV0IFhNTCBGaWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydCBVc2Vycyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQgVXNlcnMnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnRXNib3JyYXInOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdDYW0maWFjdXRlOyBvbiBkZXNhciBpbWF0Z2VzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnSGEgb2NvcnJlZ3V0IHVuIHByb2JsZW1hIGFtYiB1biBhcnhpdSBwdWphdCAocmVxdWVyaXQpIHF1ZSBtYW5jYSc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnQ291bGQgbm90IHBhcnNlIHRoZSBwcm92aWRlZCBYTUwgZmlsZSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnTm8gZXMgcG90IGVzYm9ycmFyIHVuIGdydXAgcXVlIGVuY2FyYSB0JmVhY3V0ZTsgdXN1YXJpcyc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnTCYjMDM5O3VzdWFyaSBqYSBlc3QmYWdyYXZlOyBjb25uZWN0YXQnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnRWwgdGV4dCBkZSBsYSBpbWF0Z2Ugbm8gcyYjMDM5O2hhIGVudHJhdCBjb3JyZWN0YW1lbnQnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1Blcm1ldCBhbHMgdXN1YXJpcyBjb25uZWN0YXItc2UgbSZlYWN1dGU7cyBkJiMwMzk7dW5hIHZlZ2FkYSAnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0V4dGVuc2lvbnMgZCYjMDM5O2FyeGl1cyBkJiMwMzk7aW1hdGdlIHF1ZSBlbHMgdXN1YXJpcyBwb2RlbiBwdWphcic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJzxoMz5PbkRlbGV0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgZGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICc8aDM+T25DcmVhdGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PblVwZGF0ZVVzZXInXSA9ICc8aDM+T25VcGRhdGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIHVwZGF0ZWQgKGVpdGhlciBieSB1c2VyIHRoZW1zZWxmIG9yIGFkbWluKTwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlR3JvdXAnXSA9ICc8aDM+T25DcmVhdGVHcm91cDxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZ3JvdXAgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIGdyb3VwIG5hbWU8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gVGhlIGdyb3VwIGRlc2NyaXB0aW9uPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlR3JvdXAnXSA9ICc8aDM+T25EZWxldGVHcm91cDxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZ3JvdXAgaXMgZGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIGdyb3VwIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJzxoMz5PbkxvZ2luPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW48L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gVGhlIGlwIGFkZHJlc3Mgb2YgdGhlIGNsaWVudDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dvdXQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2Vkb3V0IHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGV4cGlyZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbiB0byB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQgb2YgdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGlzIGV4cGlyZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyB1c2VyIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaW5mbyBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGFjY291bnQgaXMgZGVsZXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgZGVsZXRlZCc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQmFja2VuZCBncnVvcCc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIFRoZSBmb2xsb3dpbmcgbWFjcm9zIGNhbiBiZSB1c2VkIGluIHRoZXNlIGZpZWxkczogeyR1c2VybmFtZX0seyRncm91cH0uIFdoZW4gdXNpbmcgdGhlIHskZ3JvdXB9IG1hY3JvLCB0aGUgc3lzdGVtIHdpbGwgc3Vic2l0dXRlIHRoZSBuYW1lIG9mIHRoZSBmaXJzdCBtZW1iZXIgZ3JvdXAgdGhhdCB0aGUgdXNlciBiZWxvbmdzIHRvLCBhbmQgd2lsbCByZWRpcmVjdCB0byB0aGF0IHBhZ2UuJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ0EgdXNlciB3aXRoIHRoYXQgdXNlcm5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnTm8gcmVzdWx0cyByZXR1cm5lZCBmcm9tIGNzdiBleHBvcnQnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTGVuZ3RoIG9mIHVzZXJuYW1lIGZpZWxkJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0xlbmd0aCBvZiBwYXNzd29yZCBmaWVsZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL01heCBwYXNzd29yZCBsZW5ndGhzIGFyZSBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW4vTWF4IHVzZXJuYW1lIGxlbmd0aHMgYXJlIGludmFsaWQnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ0ludmFsaWQgRW1haWwgYWRkcmVzcyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ1dlIGNvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGFkZHJlc3MgZm9yIHRoaXMgYWNjb3VudCc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibGVtIHNldHRpbmcgcHJvcGVydHknOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ1VzZXIgQWRkZWQgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVc2VyIERlbGV0ZWQgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnUHJvcGVydHknOwokbGFuZ1sndmFsdWVyZWdleCddID0gJ1ZhbHVlIChyZWd1bGFyIGV4cHJlc3Npb24pJzsKJGxhbmdbJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJ10gPSAnV2FybmluZzogVGhlc2UgZmllbGRzIGFmZmVjdCB0aGUgc2l6ZSBvZiBpbnB1dCBmaWVsZHMgZm9yIGZvcm1zLiAgRGVjcmVhc2luZyB0aGlzIG51bWJlciBvbiBhbiBleGlzdGluZyBzaXRlIG1heSBub3QgYmUgYWR2aXNhYmxlJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdDaGFuZ2UgYWRtaW4gcHJlZmVyZW5jZXM/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFbWFpbCBhZGRyZXNzIGFscmVhZHkgdXNlZCc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdVc2UgY29va2llcyB0byByZW1lbWJlciBsb2dpbiBkZXRhaWxzJzsKJGxhbmdbJ3Byb21wdF9jb29raWVuYW1lJ10gPSAnVGhlIG5hbWUgb2YgdGhlIGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ0FsbG93IGR1cGxpY2F0ZSBlbWFpbHMnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnRW1haWwgYWRkcmVzcyBpcyB1c2VybmFtZSc7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdBdHRlbXB0IHRvIGtlZXAgbG9naW5zIGFsaXZlIGJ5IHRoZSB1c2Ugb2YgYSBjb29raWUgPGVtPih0aGUgY29va2llIGlzIHJlc2V0IG9uIGFjdGl2aXR5IGluIHRoZSB3ZWJzaXRlKTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyhhbGxvdyBtdWx0aXBsZSB1c2VycyB3aXRoIHRoZSBzYW1lIGVtYWlsIGFkZHJlc3MpJzsKJGxhbmdbJ2luZm9fdXNlcm5hbWVfaXNfZW1haWwnXSA9ICcodXNlciYjMDM5O3MgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAtLSBkb24mIzAzOTt0IHNldCB0aGlzIHdpdGggJnF1b3Q7YWxsb3cgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlcyZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnQWxsb3cgZHVwbGljYXRlICZxdW90O2ZvcmdvdCBwYXNzd29yZCZxdW90OyByZW1pbmRlcnM/JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJyhhbGxvdyBhIHVzZXJzIHRvIHJlcXVlc3QgYSBwYXNzd29yZCByZXNldCwgZXZlbiBpZiB0aGV5IGhhdmVuJiMwMzk7dCBhY3RlZCBvbiBhIHByZXZpb3VzIG9uZSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdVc2UgRnJvbnQtZW5kIFVzZXIgc3BlY2lmaWMgcGVybWlzc2lvbnM/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWxseSwgRkVVU2VycyBwZXJtaXNzaW9ucyBhcmUgdGhlIHNhbWUgYXMgdGhlIGVxdWl2YWxlbnQgQWRtaW4gQXJlYSBwZXJtaXNzaW9ucyBsaWtlIEFkZCBVc2VyLCBBZGQgR3JvdXAsIGV0Yy4gSWYgeW91IHNlbGVjdCB0aGlzIG9wdGlvbiwgdGhlcmUgd2lsbCBiZSBzZXBhcmF0ZSBwZXJtaXNzaW9ucyBmb3IgRkVVc2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdDb3VsZCBub3QgZmluZCB0aGUgdXBsb2FkZWQgZmlsZSAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnVGhlcmUgd2FzIGEgcHJvYmxlbSB3aXRoIHlvdXIgdXBsb2FkZWQgZmlsZS4gIFBsZWFzZSB0cnkgYWdhaW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnWW91IGRpZCBub3QgZW50ZXIgYSB1c2VybmFtZSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdZb3UgZGlkIG5vdCBlbnRlciB5b3VyIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ1lvdSBkaWQgbm90IGVudGVyIGEgcGFzc3dvcmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kIFVzZXIgTG9nb3V0JzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kIFVzZXIgTG9naW4nOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5VU0UgQ0FVVElPTjwvYj4gd2hlbiBjaGFuZ2luZyBleGlzdGluZyBwcm9wZXJ0aWVzIHRoYXQgYXJlIGFzc2lnbmVkIHRvIGdyb3VwcywgeW91IG1heSBwb3RlbnRpYWxseSBjYXVzZSBkYW1hZ2UgYW5kIGJyZWFrIGFuIGV4aXN0aW5nIHNpdGUgPGk+KGVzcGVjaWFsbHkgaWYgeW91IHJlZHVjZSBmaWVsZCBsZW5ndGhzLCBldGMpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdUaGlzIGZ1bmN0aW9uIGRvZXMgbm90IHdvcmsgb24gd2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnRG8gbm90IGNyZWF0ZSBhIHByb3BlcnR5IGZvciB1c2VybmFtZSwgb3IgcGFzc3dvcmQgYXMgdGhlc2UgcHJvcGVydGllcyBhcmUgYnVpbHRpbiB0byB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydCBVc2VycyB0byBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRXhwb3J0JzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydCc7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnRWRpdCBQcm9wZXJ0eSc7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYXhpbXVtIExlbmd0aCc7CiRsYW5nWydjcmVhdGVkJ10gPSAnQ3JlYXRlZCc7CiRsYW5nWydzb3J0YnknXSA9ICdTb3J0IEJ5JzsKJGxhbmdbJ3NvcnQnXSA9ICdTb3J0aW5nJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1VzZXJzIGluIHRoZSBzZWxlY3RlZCBncm91cChzKSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdMaW1pdCByZXN1bHRzIHRvJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGZpZWxkIGZvciB0aGlzIHVzZXIuICBZb3UgbWF5IG5lZWQgdG8gY29udGFjdCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIEZvcmdvdCBQYXNzd29yZCBmb3JtJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBDaGFuZ2UgU2V0dGluZ3MgZm9ybSc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ2luIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9nb3V0IConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU29ydCBvcmRlcic7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdBIG51bWJlciBvZiB1c2VycyBhcmUgaW4gdGhlIG1pZGRsZSBvZiByZXNldHRpbmcgbG9zdCBwYXNzd29yZHMuICBDdXJyZW50bHkgdGhpcyBjb3VudCBpcyBhdDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgd2VlayBvbGQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIG1vbnRoIG9sZCc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0FyZSB5b3Ugc3VyZT8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdBbiBpbnZhbGlkIGNvZGUgaGFzIGJlZW4gZW50ZXJlZCwgcGxlYXNlIHRyeSBhZ2Fpbic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnQSB0ZW1wb3JhcnkgY29kZSBmb3IgeW91ciB1c2VyIGlkIGNvdWxkIG5vdCBiZSBmb3VuZCBpbiB0aGUgZGF0YWJhc2UnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB1c2VkIHRvIGRpc3BsYXkgdmVyaWZpY2F0aW9uIGZvcm0nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgZm9yIGZvcmdvdHRlbiBwYXNzd29yZCBlbWFpbCc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnRWl0aGVyIHlvdXJzZWxmIG9yIHNvbWVvbmUgZWxzZSBoYXMgYWxyZWFkeSB0cmlnZ2VyZWQgYSBwYXNzd29yZCByZXNldCBvcGVyYXRpb24gZm9yIHRoaXMgYWNjb3VudC4gIENoZWNrIHlvdXIgZW1haWwsIHlvdSBtYXkgaGF2ZSBmdXJ0aGVyIGluc3RydWN0aW9ucyBvbiBob3cgdG8gcmVzZXQgeW91ciBwYXNzd29yZCBpbiB5b3VyIGluYm94JzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdEYXRhYmFzZSBlcnJvcic7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdZb3UgYXJlIHJlY2VpdmluZyB0aGlzIG1lc3NhZ2UgYmVjYXVzZSBzb21lYm9keSB0b2xkIG91ciBzaXRlIHRoYXQgeW91IGhhZCBsb3N0IHlvdXIgcGFzc3dvcmQuICBJZiB0aGlzIGlzIHRoZSBjYXNlLCByZWFkIHRoZSBpbnN0cnVjdGlvbnMgYmVsb3cuICBJZiB5b3UgZG9uJiMwMzk7dCBoYXZlIGEgY2x1ZSB3aGF0IHRoaXMgaXMsIHRoZW4geW91IGFyZSBzYWZlIHRvIGRlbGV0ZSB0aGlzIG1lc3NhZ2UsIGFuZCB3ZSB0aGFuayB5b3UgZm9yIHlvdXIgdGltZS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdDb2RlJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ1RoZSBmb2xsb3dpbmcgY29kZSBoYXMgYmVlbiBnZW5lcmF0ZWQgcmFuZG9tbHkgZ2VuZXJhdGVkIGluIG9yZGVyIHRvIHZlcmlmeSB0aGUgdXNlciBhY2NvdW50LiAgd2hlbiB5b3UgY2xpY2sgb24gdGhlIGxpbmsgYmVsb3cgeW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBmaWVsZCB0byBlbnRlciB0aGlzIGNvZGUuICBOb3JtYWxseSB0aGUgZmllbGQgaXMgcHJlLWNvbXBsZXRlZCBmb3IgeW91LCBidXQgaW5jYXNlIGl0IGlzbiYjMDM5O3QgdGhlIGNvZGUgaXM6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnQ2xpY2tpbmcgb24gdGhlIGZvbGxvd2luZyBsaW5rIHdpbGwgdGFrZSB5b3UgdG8gdGhlIHdlYnNpdGUgd2hlcmUgeW91IGNhbiBlbnRlciB0aGUgYWJvdmUgY29kZSwgYW5kIHJlc2V0IHlvdXIgcGFzc3dvcmQ6JzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdMb3N0IFBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIENNU01haWxlciBtb2R1bGUnOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnQW4gZW1haWwgaGFzIGJlZW4gc2VudCB0byAlcyB3aXRoIGluc3RydWN0aW9ucyBhcyB0byBob3cgdG8gcmVzZXQgeW91ciBwYXNzd29yZC4gIFRoYW5rIHlvdSc7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1NvIHlvdSBmb3Jnb3Qgb3IgbG9zdCB5b3VyIHBhc3N3b3JkLiBXZWxsLCB0eXBlIHlvdXIgdXNlcm5hbWUgaW4gaGVyZSwgYW5kIGlmIHdlIGNhbiBmaW5kIHlvdSB3ZSB3aWxsIHNlbmQgeW91IGFuIGVtYWlsIHdpdGggaW5zdHJ1Y3Rpb25zIG9uIGhvdyB0byByZXNldCBpdCc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJ0ZvcmdvdCBQYXNzd29yZCBUZW1wbGF0ZXMnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnTG9zdCBVc2VybmFtZSBUZW1wbGF0ZSc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdQcm9wZXJ0eSAlcyBub3QgZm91bmQnOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ1Byb3BlcnRpZXMgZm91bmQnOwokbGFuZ1snYWRkcHJvcCddID0gJ0FkZCBQcm9wZXJ0eSc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnQSByZXF1aXJlZCBmaWVsZCAoJXMpIHdhcyBlbXB0eSc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ0VudGVyIGEgbmV3IHBhc3N3b3JkIGhlcmUgdG8gY2hhbmdlIHlvdXIgcGFzc3dvcmQnOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdZb3UgZG8gbm90IGFwcGVhciB0byBiZSBsb2dnZWQgaW4nOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ1NldHRpbmdzJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnVGhpcyBhY2NvdW50IGhhcyBleHBpcmVkJzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdJbXByb3BlciBlbWFpbCBhZGRyZXNzIGZvcm1hdHRpbmcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdJbnZhbGlkIGV4cGlyeSBkYXRlJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcnJvciBzZXR0aW5nIHByb3BlcnR5ICVzIGZvciB1c2VyICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnSW52YWxpZCBncm91cCBpZCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ0hpZGRlbiBmaWVsZCBtYXJrZXInOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0hpZGRlbiBmaWVsZCBjb2xvcic7CiRsYW5nWydoaWRkZW4nXSA9ICdIaWRkZW4nOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ0EgcHJvcGVydHkgd2l0aCB0aGF0IG5hbWUgaXMgYWxyZWFkeSBkZWZpbmVkJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ05vIHByb3BlcnRpZXMgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ05vIHByb3BlcnRpZXMgd2VyZSBzZWxlY3RlZCBmb3IgdGhpcyBncm91cCc7CiRsYW5nWydub2dyb3VwcyddID0gJ05vIEdyb3VwcyBhcmUgZGVmaW5lZCc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ0dyb3VwcyBGb3VuZCc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnTWVtYmVyc2hpcCBpbiBhdCBsZWFzdCBvbmUgZ3JvdXAgaXMgcmVxdWlyZWQnOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ1JlcXVpcmUgbWVtYmVyc2hpcCBpbiBhdGxlYXN0IG9uZSBncm91cCc7CiRsYW5nWydiYWNrJ10gPSAnQmFjayc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgaXMgYSByZXF1aXJlZCBmaWVsZCc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFyayByZXF1aXJlZCBmaWVsZHMgd2l0aCc7CiRsYW5nWydyZXF1aXJlZGZpZWxkY29sb3InXSA9ICdIaWxpdGUgcmVxdWlyZWQgZmllbGRzIGluJzsKJGxhbmdbJ25leHQnXSA9ICdOZXh0JzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnQSBHcm91cCB3aXRoIHRoYXQgbmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydyZXF1aXJlZCddID0gJ1JlcXVpcmVkIEZpZWxkJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnT3B0aW9uYWwnOwokbGFuZ1snb2ZmJ10gPSAnT2ZmJzsKJGxhbmdbJ3NpemUnXSA9ICdTaXplJzsKJGxhbmdbJ3NpemVjb21tZW50J10gPSAnPGJyLz4oTWF4aW11bSBzaXplIG9mIGFueSBvbmUgZGltZW5zaW9uIG9mIHRoZSBpbWFnZSBpbiBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ0xlbmd0aCc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyPihjaGFycyBpbiB0aGUgdGV4dCBpbnB1dCknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ0Ryb3Bkb3duIG9wdGlvbnMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnUmFkaW9idXR0b24gbGFiZWxzLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncHJvbXB0J10gPSAnUHJvbXB0JzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVHlwZSc7CiRsYW5nWyd0eXBlJ10gPSAnVHlwZSc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ0ZpZWxkIFN0YXR1cyc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdBc2sgaW4gTG9zdDxici8+VXNlcm5hbWUnOwokbGFuZ1sndGV4dCddID0gJ1RleHQnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ011bHRpIFNlbGVjdCBMaXN0JzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ1JhZGlvIEJ1dHRvbnMnOwokbGFuZ1snaW1hZ2UnXSA9ICdJbWFnZSc7CiRsYW5nWydlbWFpbCddID0gJ0VtYWlsIEFkZHJlc3MnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZXh0YXJlYSc7CiRsYW5nWydkcm9wZG93biddID0gJ0Ryb3Bkb3duJzsKJGxhbmdbJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJ10gPSAnV2VsY29tZSc7CiRsYW5nWydsb2dvdXQnXSA9ICdTaWduIG91dCc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnVXNlIHRoaXMgZ3JvdXAgbmFtZSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdDaGFuZ2UgTXkgU2V0dGluZ3MnOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdMb2dpbiBmYWlsZWQgLSBJbnZhbGlkIHVzZXJuYW1lIG9yIHBhc3N3b3JkPyc7CiRsYW5nWydsb2dpbiddID0gJ1NpZ24gaW4nOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdTaWduIGluIGJ1dHRvbiBsYWJlbCc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdVc2VybmFtZSc7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdFbWFpbCBBZGRyZXNzJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1Bhc3N3b3JkJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnUmVtZW1iZXIgbWUgb24gdGhpcyBjb21wdXRlcic7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdGVyJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnRm9yZ290IFlvdXIgUGFzc3dvcmQ/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0ZvcmdvdCBZb3VyIExvZ2luIERldGFpbHM/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnRGVmYXVsdHMnOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdVc2VyIElEIG5vdCBmb3VuZCc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVGhhdCB1c2VybmFtZSAoJXMpIGlzIGFscmVhZHkgaW4gdXNlJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdVc2UgU01UUCB0byB2YWxpZGF0ZSBlbWFpbCBhZGRyZXNzZXM/JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ01pbmltdW0gUGFzc3dvcmQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ01heGltdW0gUGFzc3dvcmQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltdW0gVXNlcm5hbWUgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01heGltdW0gVXNlcm5hbWUgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb24gVGltZW91dCAoc2Vjb25kcyknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1VzZSBjb29raWVzIHRvIGtlZXAgbG9naW5zIGFsaXZlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnQWxsb3cgRW1haWwgUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdEZWZhdWx0IEdyb3VwIGZvciBuZXcgdXNlcnMnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdDaGFuZ2UgU2V0dGluZ3MgVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ1Bhc3N3b3JkcyBEbyBub3QgbWF0Y2gnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnSW52YWxpZCBVc2VybmFtZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdJbnZhbGlkIFBhc3N3b3JkJzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnRWRpdCBVc2VyJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnVmFsaWQnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdVc2VybmFtZSc7CiRsYW5nWydzdGF0dXMnXSA9ICdTdGF0dXMnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnVGhpcyB1c2VyIGlzIG5vdCBhIG1lbWJlciBvZiBhbnkgZ3JvdXBzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdObyBQcm9wZXJ0aWVzJzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAnQXR0ZW1wdCB0byBpbXBvcnQgZHVwbGljYXRlIHByb3BlcnRpZXMnOwokbGFuZ1sndmFsdWUnXSA9ICdWYWx1ZSc7CiRsYW5nWydncm91cHMnXSA9ICdHcm91cHMnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1Byb3BlcnRpZXMnOwokbGFuZ1sncHJvcG5hbWUnXSA9ICdQcm9wZXJ0eSBOYW1lJzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ1Byb3BlcnR5IFZhbHVlJzsKJGxhbmdbJ2FkZCddID0gJ0FkZCc7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdG9yeSc7CiRsYW5nWydlZGl0J10gPSAnRWRpdCc7CiRsYW5nWydleHBpcmVzJ10gPSAnRXhwaXJlcyc7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdTcGVjaWZ5IERhdGUnOwokbGFuZ1snMTJocnMnXSA9ICcxMiBob3Jlcyc7CiRsYW5nWycyNGhycyddID0gJzI0IGhvcmVzJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggaG9yZXMnOwokbGFuZ1snMXdlZWsnXSA9ICcxIHNldG1hbmEnOwokbGFuZ1snMndlZWtzJ10gPSAnMiBzZXRtYW5lcyc7CiRsYW5nWycxbW9udGgnXSA9ICcxIG1lcyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBtZXNvcyc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBtZXNvcyc7CiRsYW5nWycxeWVhciddID0gJzEgYW55JzsKJGxhbmdbJ25ldmVyJ10gPSAnTWFpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsZSBpbnN0YWxsZWQgc3VjZXNzZnVsbHkuPGJyLz5CZSBzdXJlIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4mcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdQYXNzd29yZCc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ0FnYWluJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdHcm91cCBieSB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnRWRpdCBHcm91cCc7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtaXQnOwokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ0RlbGV0ZSc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB0aGlzIGlzIHRoZSBwcm9wZXIgc2V0dGluZ3MgZm9yIHRoaXMgZ3JvdXA/XG5UdXJuaW5nIGEgcHJvcGVydHkgb2ZmIHdpbGwgbm90IGRlbGV0ZSBhbnkgZW50cmllcyBpbiB0aGUgcHJvcGVydGllcyB0YWJsZSBmb3IgdGhpcyBncm91cC91c2VyLiAgVGhleSB3aWxsIG1lcmVseSBiZSB1bmF2YWlsYWJsZS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBncm91cD8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjb21wbGV0ZWx5IGRlbGV0ZSB0aGlzIHByb3BlcnR5P1xuRG9pbmcgc28gd2lsbCBhbHNvIGVyYXNlIGFueSB1c2VyIGVudHJpZXMgZm9yIHRoaXMgcHJvcGVydHkuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0luc3VmZmljaWVudCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snbmFtZSddID0gJ05hbWUnOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVtIGFkZGluZyBwcm9wZXJ0eSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlbSBhZGRpbmcgZ3JvdXAgcmVsYXRpb24nOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlbSBhZGRpbmcgZ3JvdXAnOwokbGFuZ1snZXJyb3JfY2FudGFzc2lnbnVzZXInXSA9ICdQcm9ibGVtIGFkZGluZyBhIHVzZXIgdG8gYSBncm91cCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbSBkZWxldGluZyBhIHByb3BlcnR5JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnQ291bGQgbm90IGZpbmQgYW4gZW1haWwgYWRkcmVzcyc7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnTm8gd3JpdGUgcGVybWlzc2lvbiB0byBkZXN0aW5hdGlvbiBkaXJlY3RvcnknOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1BhciZhZ3JhdmU7bWV0cmVzIGludiZhZ3JhdmU7bGlkcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ0NvdWxkIG5vdCBmaW5kIGFueSBncm91cHMnOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBcGxpY2FyJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRyZSc7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnVXNlcm5hbWUgUmVndWxhciBFeHByZXNzaW9uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcGNpJm9hY3V0ZTsnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3JvdXAgTmFtZSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3InOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZmVnaXIgbm91IGdydXAnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRhciBub3UgR3J1cCc7CiRsYW5nWydhZGR1c2VyJ10gPSAnQWZlZ2lyIFVzdWFyaSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVXNlcnMgZm91bmQgdGhhdCBtYXRjaCB0aGUgY3JpdGVyaWEnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnVHJpYXIgR3J1cCc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdQbGFueGV0YSBkZSByZWdpc3RyZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdQbGFueGV0YSBkZSBzb3J0aWRhJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnUGxhbnhldGEgZCYjMDM5O2VudHJhZGEnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXImZWdyYXZlO25jaWVzJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXN1YXJpcyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udGVuZCBVc2VyIE1hbmFnZW1lbnQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBbGxvdyB1c2VycyB0byBsb2cgaW4gdG8gdGhlIGZyb250ZW5kIG9mIHlvdXIgc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnRGVmYXVsdCBmcm9udCBwYWdlJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdMYXN0IGFjY2Vzc2VkIHBhZ2UnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnT3RoZXIgcGFnZTogJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdFbnRlciB0aGUgdGV4dCBmcm9tIHRoZSBpbWFnZSc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/cs_CZ.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fbmFtZSddID0gJ1RoaXMgaXMgdGhlIGZpZWxkIG5hbWUsIHRvIGJlIHVzZWQgZm9yIGFkZHJlc3NpbmcgaW4gc21hcnR5LiAgSXQgbXVzdCBjb25zaXN0IG9mIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIHVuZGVyc2NvcmVzLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdWaXNpdG9ycyc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1NlbGVjdCBvbmUgb3IgbW9yZSBGRVUgZ3JvdXBzIHRoYXQgYXJlIGFsbG93ZWQgdG8gdmlldyB0aGlzIHBhZ2UnOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ0EgZ3JvdXAgbXVzdCBiZSBzZWxlY3RlZCc7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdTZWxlY3QgT25lJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdTdGFydCBZZWFyJzsKJGxhbmdbJ2VuZF95ZWFyJ10gPSAnRW5kIFllYXInOwokbGFuZ1snZGF0ZSddID0gJ0RhdGUnOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnVGh1bWJuYWlsIFNpemUnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgTW9kaWZpZWQnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnVG9vIG1hbnkgdXNlcnMgYXJlIHNlbGVjdGVkIGZvciBidWxrIG9wZXJhdGlvbnMuLi4uIFBsZWFzZSB0cmltIGl0IHRvIDI1MCBvciBsZXNzJzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgc2VsZWN0ZWQgdXNlcnM/JzsKJGxhbmdbJ2RlbGV0ZV9zZWxlY3RlZCddID0gJ0RlbGV0ZSBTZWxlY3RlZCc7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmF0ZSByYW5kb20gdXNlcm5hbWUgd2hlbiBhZGRpbmcgbmV3IHVzZXJzJzsKJGxhbmdbJ21vbnRocyddID0gJ21vbnRocyc7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnRGVmYXVsdCB1c2VyIGV4cGlyeSBwZXJpb2QnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnTm90aWZpY2F0aW9uIFNldHRpbmdzJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnUHJvcGVydHkgU2V0dGluZ3MnOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdSZWRpcmVjdGlvbiBTZXR0aW5ncyc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnR2VuZXJhbCBTZXR0aW5ncyc7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnU2Vzc2lvbiBhbmQgQ29va2llIFNldHRpbmdzJzsKJGxhbmdbJ2ZpZWxkX3NldHRpbmdzJ10gPSAnRmllbGQgU2V0dGluZ3MnOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnVGhlIGxvc3R1c2VybmFtZSBmbGFnIGNhbiBvbmx5IGJlIHVzZWQgb24gcmVxdWlyZWQgZmllbGRzJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ0FsbG93IHVzZSBvZiB3eXNpd3lnIG9uIHRoaXMgdGV4dCBhcmVhJzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBUaGlzIHVzZXMgdGhlIG1jcnlwdCBmdW5jdGlvbnMgZm9yIGVuY3J5cHRpb24gcHVycG9zZXMsIGFuZCB0aGV5IGNvdWxkIG5vdCBiZSBkZXRlY3RlZCBvbiB5b3VyIGluc3RhbGwuICAgUGxlYXNlIGNvbnRhY3QgeW91ciBzZXJ2ZXIgYWRtaW5pc3RyYXRvci4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnJlVhY3V0ZTtwcmF2YSB1xb5pdmF0ZWzFryc7CiRsYW5nWydub2lubGluZSddID0gJ0RvIG5vdCBpbmxpbmUgZm9ybXMnOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdLbGlrbsSbdGUgemRlLCBwb2t1ZCBzaSBuZW3Fr8W+ZXRlIHZ6cG9tZW5vdXQgbmEgcMWZaWhsYSZzY2Fyb247b3ZhYyZpYWN1dGU7ICZ1YWN1dGU7ZGFqZSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3J10gPSAnS2xpa27Em3RlIHpkZSwgcG9rdWQgc2kgbmVtxa/FvmV0ZSB2enBvbWVub3UgbmEgc3YmZWFjdXRlOyBoZXNsbyc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0tsaWtuxJt0ZSB6ZGUgcHJvIG9kaGwmYWFjdXRlOyZzY2Fyb247ZW4maWFjdXRlOyc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2xpa27Em3RlIHpkZSwgY2hjZXRlLWxpIHVwcmF2aXQgaGVzbG8gYSBkYWwmc2Nhcm9uOyZpYWN1dGU7IGluZm9ybWFjZSc7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ1Byb2hsJmVhY3V0ZTtkbm91dCAmc2Nhcm9uO2FibG9udSB1xb5pdmF0ZWxlJzsKJGxhbmdbJ2V2ZW50J10gPSAnVWQmYWFjdXRlO2xvc3QnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVSBFdmVudCBOb3RpZmljYXRpb24nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnTm90aWZpY2F0aW9uIEVtYWlsIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ05vdGlmaWNhdGlvbiBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdOb3RpZmljYXRpb24gRW1haWwgU3ViamVjdCc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ0VtYWlsIE5vdGlmaWNhdGlvbnMnOwokbGFuZ1snT25Mb2dpbiddID0gJ09uIExvZ2luJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnT24gTG9nb3V0JzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ09uIFNlc3Npb24gRXhwaXJ5JzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ09uIE5ldyBVc2VyIENyZWF0ZWQnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnT24gVXNlciBEZWxldGVkJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ09uIFVzZXIgU2V0dGluZ3MgQ2hhbmdlZCc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBDcmVhdGVkJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIERlbGV0ZWQnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdVxb5pdmF0ZWxzayZlYWN1dGU7IGptJmVhY3V0ZTtubyBvZHBvdiZpYWN1dGU7ZGFqJmlhY3V0ZTtjJmlhY3V0ZTsgViZhYWN1dGU7bWkgemFkYW4meWFjdXRlO20gJnVhY3V0ZTtkYWrFr20gYnlsbyBuYWxlemVuby4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1ZhJnNjYXJvbjtlIHXFvml2YXRlbHNrJmVhY3V0ZTsgam0mZWFjdXRlO25vIGplJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ0RvcG9ydcSNdWplbWUgViZhYWN1dGU7bSB1bG/Fvml0IHR5dG8gaW5mb3JtYWNlIG5hIGJlenBlxI1uJmVhY3V0ZTttLCBuaWNtJmVhY3V0ZTtuxJsgZG9zYcW+aXRlbG4mZWFjdXRlO20gbSZpYWN1dGU7c3TEmy4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNoYW5nZSBzZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjb2RlIHZlcmlmaWNhdGlvbiAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbmEgZGV0YWlsxa8gcMWZaSB6dHImYWFjdXRlO3TEmyB1xb5pdmF0ZWxzayZlYWN1dGU7aG8gam0mZWFjdXRlO25hJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbmEgcG90dnJ6ZW4maWFjdXRlOyBwxZlpIHp0ciZhYWN1dGU7dMSbIHXFvml2YXRlbHNrJmVhY3V0ZTtobyBqbSZlYWN1dGU7bmEnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdDaHliYTogWmFkYW4meWFjdXRlO20gdmxhc3Rub3N0ZW0gb2Rwb3YmaWFjdXRlO2QmYWFjdXRlOyB2JmlhY3V0ZTtjZSBuZcW+IDEgdcW+aXZhdGVsJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0NoeWJhOiBUZW50byB1xb5pdmF0ZWwgbmVleGlzdHVqZSc7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnQ2h5YmE6IFNrdXBpbmEgdG9ob3RvIGptJmVhY3V0ZTtuYSBuZWV4aXN0dWplJzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnUG91emUga2UgxI10ZW4maWFjdXRlOyc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnVXNlciBNYW5pcHVsYXRvciBDbGFzcyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdPZGhsJmFhY3V0ZTsmc2Nhcm9uO2VuIGFkbWluaXN0ciZhYWN1dGU7dG9yZW0nOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ1VrJmFhY3V0ZTt6YXQgcG91emUgcMWZaWhsJmFhY3V0ZTsmc2Nhcm9uO2VuJmVhY3V0ZTsgdcW+aXZhdGVsZSc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnT2RobCZhYWN1dGU7c2l0IHRvaG90byB1xb5pdmF0ZWxlJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ1ZsYXN0bm9zdGkgdcW+aXZhdGVsZSc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0hpc3RvcmllIHXFvml2YXRlbGUnOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0JzsKJGxhbmdbJ2NsZWFyJ10gPSAnVnnEjWlzdGl0JzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0V4cG9ydG92YXQgaGlzdG9yaWkgdcW+aXZhdGVsZSBkbyBBU0NJSSc7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ0NsZWFyIFVzZXIgSGlzdG9yeSByZWNvcmRzIHRoYXQgaXMgYXQgbGVhc3QnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnTG9zdCBVc2VybmFtZSBTdXBwb3J0IEZvcm0nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAnRXhwb3J0b3ZhdCBkZWZpbmljaSBza3VwaW55IChhIGplaiZpYWN1dGU7IHZsYXN0bm9zdGkpIGRvIFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnU3ByJmFhY3V0ZTt2YSBoaXN0b3JpZSB1xb5pdmF0ZWxlJzsKJGxhbmdbJ3llcyddID0gJ0Fubyc7CiRsYW5nWydubyddID0gJ05lJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ3onOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogQmV6IGxpbWl0dSAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdKZWRudSBob2RpbnUgc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJyZTY2Fyb247ZXN0IGhvZGluIHN0YXImZWFjdXRlOyc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdEdmFuJmFhY3V0ZTtjdCBob2RpbiBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdKZWRlbiBkZW4gc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ0plZGVuIHQmeWFjdXRlO2RlbiBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ0R2YSB0JnlhY3V0ZTtkbnkgc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdKZWRlbiBtxJtzJmlhY3V0ZTtjIHN0YXImZWFjdXRlOyc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVMWZaSBtxJtzJmlhY3V0ZTtjZSBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICcmU2Nhcm9uO2VzdCBtxJtzJmlhY3V0ZTtjxa8gc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ0plZGVuIHJvayBzdGFyJmVhY3V0ZTsnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnU2Vza3Vwb3YmYWFjdXRlO24maWFjdXRlOyBhIHTFmSZpYWN1dGU7ZMSbbiZpYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzZm91bmQnXSA9ICdaJmFhY3V0ZTt6bmFteSBvZHBvdiZpYWN1dGU7ZGFqJmlhY3V0ZTtjJmlhY3V0ZTsgcG9kbSZpYWN1dGU7bmNlJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnUG9kbGUgdcW+aXZhdGVsc2smZWFjdXRlO2hvIGptJmVhY3V0ZTtuYSBzZXN0dXBuxJsnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ1BvZGxlIHXFvml2YXRlbHNrJmVhY3V0ZTtobyBqbSZlYWN1dGU7bmEgdnplc3R1cG7Emyc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnUG9kbGUgZGF0YSBzZXN0dXBuxJsnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnUG9kbGUgZGF0YSB2emVzdHVwbsSbJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1BvZGxlIHR5cHUgYWtjZSBzZXN0dXBuxJsnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdQb2RsZSB0eXB1IGFrY2Ugdnplc3R1cG7Emyc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdTZXN0dXBuxJsgcG9kbGUgSVAgYWRyZXN5JzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnVnplc3R1cG7Emyc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnSGlzdG9yaWUgbmVieWxhIG5hbGV6ZW5hJzsKJGxhbmdbJ3Jlc2V0J10gPSAnUmVzZXRvdmF0JzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ1Nlc2t1cGl0IHBvZGxlIElQIGFkcmVzeSc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0ZpbHRyb3ZhdCBwb2RsZSB0eXB1IGFrY2UnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9kYXRlJ10gPSAnWm9icmF6aXQgcG91emUgYWtjZSwga3RlciZlYWN1dGU7IGpzb3UgbSZlYWN1dGU7bsSbIG5lxb46JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdTdHImYWFjdXRlO25rb3YmeWFjdXRlOyBsaW1pdCc7CiRsYW5nWydmb3InXSA9ICdwcm8nOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdTaHJudXQmaWFjdXRlOyBoaXN0b3JpZSB1xb5pdmF0ZWxlJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdOZXpuJmFhY3V0ZTttJnlhY3V0ZTsnOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQIEFkcmVzYSc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnVHlwIHVkJmFhY3V0ZTtsb3N0aSc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdHVtJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdacMSbdCc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0IHByb3ZlZGVuJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ8WZJmFhY3V0ZTtka8WvIHpwcmFjb3YmYWFjdXRlO25vJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdWeXNreXRseSBzZSBjaHlieSc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnWiZhYWN1dGU7em5hbXkgYnlseSBwxZlpZCZhYWN1dGU7bnknOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ05lbHplIG5hbCZlYWN1dGU7enQgdmxhc3Rub3N0aSBza3VwaW55ICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnTmVwb2RhxZlpbG8gc2UgeiZpYWN1dGU7c2thdCBvZHBvdsSbxI8gb2QgU01UUCBzZXJ2ZXJ1ICh6a29udHJvbHVqdGUgcHJvcyZpYWN1dGU7bSBuYXN0YXZlbiZpYWN1dGU7LCBwxZkmaWFjdXRlO3BhZG7EmyBrb250YWt0dWp0ZSBzcHImYWFjdXRlO3ZjZSBzZXJ2ZXJ1KSc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdVdmVkZW4meWFjdXRlOyBzb3Vib3IgKCVzKSBuZWJ5bCBuYWxlemVuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdOZXBsYXRuJmFhY3V0ZTsgaG9kbm90YSBwcm8gcm96YmFsb3ZhYyZpYWN1dGU7IHBvbCZpYWN1dGU7xI1rbyBuZWJvIHYmeWFjdXRlO2LEm3IgeiB2JmlhY3V0ZTtjZSBtb8W+bm9zdCZpYWN1dGU7ICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnUG9sZSAlcyBwxZllc2FodWplIG1heGltJmFhY3V0ZTtsbiZpYWN1dGU7IGQmZWFjdXRlO2xrdSc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0NoeWJhIHDFmWkgaW1wb3J0dSAoxZkmYWFjdXRlO2RlayAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdOZWx6ZSBwxZlpc3RvdXBpdCBrIGRlZmluaWMmaWFjdXRlO20gdmxhc3Rub3N0JmlhY3V0ZTsgKHZuaXTFmW4maWFjdXRlOyBjaHliYSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmwmZWFjdXRlO20gcMWZaSBuYXN0YXZvdiZhYWN1dGU7biZpYWN1dGU7IHXFvml2YXRlbHNrJnlhY3V0ZTtjaCBpbmZvcm1hYyZpYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHJlcXVpcmVkZmllbGQnXSA9ICdOZW1vaHUgbmFsJmVhY3V0ZTt6dCBzbG91cGVjLCBrdGVyJnlhY3V0ZTsgb2Rwb3YmaWFjdXRlO2QmYWFjdXRlOyB2ecW+YWRvdmFuJmVhY3V0ZTttdSBwb2xpICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnTmVtb2h1IG5hbCZlYWN1dGU7enQgdmxhc3Rub3N0aSBwcm8gdXZlZGVub3Ugc2t1cGludSc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnU291Ym9yIHZ5YnJhbiZ5YWN1dGU7IHBybyBpbXBvcnQgbmVuJmlhY3V0ZTsgdmUgc3ByJmFhY3V0ZTt2biZlYWN1dGU7bSBmb3JtJmFhY3V0ZTt0dSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnTmVtb2h1IG90ZXbFmSZpYWN1dGU7dCBzb3Vib3InOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjbiBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0b3ZhdCB1xb5pdmF0ZWxlIGRvIHQmZWFjdXRlO3RvIHNrdXBpbnknOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnVmxvxb5pdCBDU1Ygc291Ym9yJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnVmxvxb5pdCBYTUwgc291Ym9yJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydG92YXQgdcW+aXZhdGVsZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnRvdmF0IHXFvml2YXRlbGUnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnVnnEjWlzdGl0JzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnQ2VzdGEgayBvYnImYWFjdXRlO3prdSc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ1Z5c2t5dGwgc2UgcHJvYmwmZWFjdXRlO20gcyBjaHlixJtqJmlhY3V0ZTtjJmlhY3V0ZTttIChhbGUgdnnFvmFkb3ZhbiZ5YWN1dGU7bSkgdXBsb2FkZW0nOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ05lbHplIHBhcnNvdmF0IHBvc2t5dG51dCZ5YWN1dGU7IFhNTCBzb3Vib3InOwokbGFuZ1snZXJyb3Jfbm90ZW1wdHlncm91cCddID0gJ05lbHplIHZ5bWF6YXQgc2t1cGludSwga3RlciZhYWN1dGU7IG0mYWFjdXRlOyBqZSZzY2Fyb247dMSbIMSNbGVueSc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnVcW+aXZhdGVsIGplIGppxb4gcMWZaWhsJmFhY3V0ZTsmc2Nhcm9uO2VuJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1RleHQgeiBvYnImYWFjdXRlO3prdSBuZWJ5bCBzcHImYWFjdXRlO3ZuxJsgdmxvxb5lbic7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnUG92b2xpdCB1xb5pdmF0ZWzFr20gdiZpYWN1dGU7Y2VuJmFhY3V0ZTtzb2JuJmVhY3V0ZTsgcMWZaWhsJmFhY3V0ZTsmc2Nhcm9uO2VuJmlhY3V0ZTsnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ1DFmSZpYWN1dGU7cG9ueSB0eXDFryBvYnImYWFjdXRlO3prxa8sIGt0ZXImZWFjdXRlOyBtb2hvdSB1xb5pdmF0ZWwmZWFjdXRlOyBuYWhyJmFhY3V0ZTt0JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgZ3JvdXAgZGVzY3JpcHRpb248L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBUaGUgaXAgYWRkcmVzcyBvZiB0aGUgY2xpZW50PC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWRvdXQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluIHRvIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dCBvZiB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gaXMgZXhwaXJlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IHVzZXIgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpbmZvIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBkZWxldGVkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIGdydW9wJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogTiZhYWN1dGU7c2xlZHVqJmlhY3V0ZTtjJmlhY3V0ZTsgbWFrcmEgbW9ob3UgYiZ5YWN1dGU7dCBwb3XFvml0YSB2IHTEm2NodG8gcG9sJmlhY3V0ZTtjaCA6IHskdXNlcm5hbWV9JzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdVcHJhdnRlIHRvdG8gcG9sZSBwcm8gcmVzZXRvdiZhYWN1dGU7biZpYWN1dGU7IGhlc2xhIHXFvml2YXRlbGUnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ1VwcmF2dGUgdG90byBwb2xlIHBybyByZXNldG92JmFhY3V0ZTtuJmlhY3V0ZTsgaGVzbGEgdcW+aXZhdGVsZSc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdVxb5pdmF0ZWwgcyB0JmlhY3V0ZTttdG8gdcW+aXZhdGVsc2smeWFjdXRlO20gam0mZWFjdXRlO25lbSBqacW+IGV4aXN0dWplJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ0V4cG9ydCBjc3YgbmV2ciZhYWN1dGU7dGlsIMW+JmFhY3V0ZTtkbiZlYWN1dGU7IHYmeWFjdXRlO3NsZWRreSc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdEJmVhY3V0ZTtsa2EgcG9sZSBwcm8gam0mZWFjdXRlO25vIHXFvml2YXRlbGUnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnRCZlYWN1dGU7bGthIHBvbGUgcHJvIGhlc2xvJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdNaW4vTWF4IGQmZWFjdXRlO2xrYSBoZXNsYSBqZSBuZXBsYXRuJmFhY3V0ZTsnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9NYXggZCZlYWN1dGU7bGthIHXFvml2YXRlbHNrJmVhY3V0ZTtobyBqbSZlYWN1dGU7bmEgamUgbmVwbGF0biZhYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdOZXBsYXRuJmFhY3V0ZTsgZW1haWxvdiZhYWN1dGU7IGFkZHJlc2EnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdFLW1haWxvdiZhYWN1dGU7IGFkcmVzYSBwcm8gdGVudG8gJnVhY3V0ZTvEjWV0IG5lYnlsYSBuYWxlemVuYSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmwmZWFjdXRlO20gcyBuYXN0YXZlbiZpYWN1dGU7bSBpbmZvIG8gdTZpdmF0ZWxpJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsJmVhY3V0ZTttIHMgbmFzdGF2ZW4maWFjdXRlO20gdmxhc3Rub3N0aSc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnVcW+aXZhdGVsIHDFmWlkYWwgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVxb5pdmF0ZWwgc21hemFsIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ1ZsYXN0bm9zdCc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnSG9kbm90YSAocmVndWwmZWFjdXRlO3JuJmlhY3V0ZTsgdiZ5YWN1dGU7cmF6KSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1Zhcm92JmFhY3V0ZTtuJmlhY3V0ZTs6IFRhdG8gcG9sZSBvdmxpdm4maWFjdXRlOyB2ZWxpa29zdCB2c3R1cG4maWFjdXRlO2NoIHBvbCZpYWN1dGU7IGZvcm11bCZhYWN1dGU7xZnFry4gIFNuJmlhY3V0ZTvFvmVuJmlhY3V0ZTsgdG9ob3RvIMSNJmlhY3V0ZTtzbGEgbmEgZXhpc3R1aiZpYWN1dGU7YyZpYWN1dGU7IHN0ciZhYWN1dGU7bmNlIG5lbiZpYWN1dGU7IGRvcG9ydcSNZW5vLic7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnWm3Em25pdCBhZG1pbmlzdHJhxI1uJmlhY3V0ZTsgcHJlZmVyZW5jZT8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0UtbWFpbG92JmFhY3V0ZTsgYWRyZXNhIGJ5bGEgamnFviBwb3XFvml0YSc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdQb3XFviZpYWN1dGU7dCBjb29raWUgcHJvIHphcGFtYXRvdiZhYWN1dGU7biZpYWN1dGU7IHDFmWlobGEmc2Nhcm9uO292YWMmaWFjdXRlO2NoICZ1YWN1dGU7ZGFqxa8nOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdKbSZlYWN1dGU7bm8gY29va2llJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnUG92b2xpdCBkdXBsaWNpdG4maWFjdXRlOyBlbWFpbHkuJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ0VtYWlsIGFkZHJlc3MgaXMgdXNlcm5hbWUnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnUG9rb3Umc2Nhcm9uO2V0IHNlIHVkcsW+ZXQgdcW+aXZhdGVsZSBwxZlpaGwmYWFjdXRlOyZzY2Fyb247ZW4mZWFjdXRlOyBwb21vYyZpYWN1dGU7IGNvb2tpZXMgPGVtPihjb29raWUgcmVzZXR1amUgYWt0aXZpdHUgbmEgc3RyJmFhY3V0ZTtuayZhYWN1dGU7Y2gpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKHBvdm9saXQgdiZpYWN1dGU7Y2UgdcW+aXZhdGVsxa8gc2Ugc3Rlam5vdSBlbWFpbG92b3UgYWRyZXNvdSknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1c2VyJiMwMzk7cyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lIC0tIGRvbiYjMDM5O3Qgc2V0IHRoaXMgd2l0aCAmcXVvdDthbGxvdyBkdXBsaWNhdGUgZW1haWwgYWRkcmVzc2VzJnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgJnF1b3Q7Zm9yZ290IHBhc3N3b3JkJnF1b3Q7IHJlbWluZGVycz8nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKGFsbG93IGEgdXNlcnMgdG8gcmVxdWVzdCBhIHBhc3N3b3JkIHJlc2V0LCBldmVuIGlmIHRoZXkgaGF2ZW4mIzAzOTt0IGFjdGVkIG9uIGEgcHJldmlvdXMgb25lKSc7CiRsYW5nWydwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJ1BvdcW+JmlhY3V0ZTt0IG9wciZhYWN1dGU7dm7Em24maWFjdXRlOyBzcGVjaWZpY2smYWFjdXRlOyBwcm8gRnJvbnQgRW5kIFVzZXJzIG1vZHVsPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoQsSbxb5uxJsganNvdSBwcm8gRkVVc2VycyBtb2R1bCBwb3XFviZpYWN1dGU7diZhYWN1dGU7bmEgc3Rlam4mYWFjdXRlOyBvcHImYWFjdXRlO3ZuxJtuJmlhY3V0ZTsgamFrbyBwcm8gQWRtbmluaXN0cmHEjW4maWFjdXRlOyByb3pocmFuJmlhY3V0ZTsuIFBva3VkIHZ5YmVyZXRlIHR1dG8gbW/Fvm5vc3QsIGJ1ZG91IHBybyBGRVVzZXNycyBwb3XFviZpYWN1dGU7diZhYWN1dGU7bmEgb2RkxJtsZW4mYWFjdXRlOyBuYXN0YXZlbiZpYWN1dGU7LiknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ05lbW9obCBqc2VtIHVwbG9hZG92YXQgc291Ym9yIChpbnRlcm4maWFjdXRlOyBjaHliYSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdQxZlpIG5haHImYWFjdXRlO3YmYWFjdXRlO24maWFjdXRlOyBzb3Vib3LFryBkbyZzY2Fyb247bG8gayBjaHlixJsuIFprdXN0ZSB0byBwcm9zJmlhY3V0ZTttIHpub3Z1JzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ05ldmxvxb5pbGkganN0ZSB1xb5pdmF0ZWxzayZlYWN1dGU7IGptJmVhY3V0ZTtubyc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdOZXZsb8W+aWwganN0ZSB2JmFhY3V0ZTsmc2Nhcm9uOyBlbWFpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdOZXZsb8W+aWxpIGpzdGUgaGVzbG8nOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kIFVzZXIgT2RobCZhYWN1dGU7JnNjYXJvbjtlbiZpYWN1dGU7JzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kIFVzZXIgUMWZaWhsJmFhY3V0ZTsmc2Nhcm9uO2VuJmlhY3V0ZTsnOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5VUE9aT1JOxJpOJklhY3V0ZTs8L2I+IHptxJtuYSBzdCZhYWN1dGU7dmFqJmlhY3V0ZTtjJmlhY3V0ZTtjaCB2bGFzdG5vc3QmaWFjdXRlOywga3RlciZlYWN1dGU7IGpzb3UgcMWZacWZYXplbnkgc2t1cGluJmFhY3V0ZTttIG3Fr8W+ZSB6cMWvc29iaXQgcHJvYmwmZWFjdXRlO215IDxpPihwxZllZGV2JnNjYXJvbjsmaWFjdXRlO20gcMWZaSB6a3ImYWFjdXRlO2NlbiZpYWN1dGU7IG7Em2t0ZXImeWFjdXRlO2NoIHBvbCZpYWN1dGU7KTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnVGF0byBmdW5rY2UgbmVwcmFjdWplIHBvZCB3aW5kb3dzJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdOZXZ5dHYmYWFjdXRlO8WZZWp0ZSB6dmwmYWFjdXRlOyZzY2Fyb247dG4maWFjdXRlOyB2bGFzdG5vc3QgcHJvIHXFvml2YXRlbHNrJmVhY3V0ZTsgam0mZWFjdXRlO25vLCBwcm90b8W+ZSB0b3RvIGplIHXFviBzb3XEjSZhYWN1dGU7c3QmaWFjdXRlOyBtb2R1bHUgRnJvbnRFbmRVc2Vycyc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRXhwb3J0b3ZhdCB1xb5pdmF0ZWxlIGRvIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnRvdmF0JzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydG92YXQnOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbmlzdHJhY2UnOwokbGFuZ1snZWRpdHByb3AnXSA9ICdFZGl0b3ZhdCB2bGFzdG5vc3QnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW0mYWFjdXRlO2xuJmlhY3V0ZTsgZCZlYWN1dGU7bGthJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdWeXR2b8WZZW5vJzsKJGxhbmdbJ3NvcnRieSddID0gJ1NlxZlhZGl0IHBvZGxlJzsKJGxhbmdbJ3NvcnQnXSA9ICfFmGF6ZW4maWFjdXRlOyc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdVxb5pdmF0ZWwmZWFjdXRlOyB2ZSB2eWJyYW4meWFjdXRlO2NoL3Z5YnJhbiZlYWN1dGU7IHNrdXBpbiZhYWN1dGU7Y2gvc2t1cGluxJsuJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ09tZXppdCB2JnlhY3V0ZTtzbGVka3kgZG8nOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnTmVsemUgbmFqJmlhY3V0ZTt0IHBvbG/Fvmt1IGVtYWlsIHBybyB0b2hvdG8gdcW+aXZhdGVsZS4gTmVqc3AmaWFjdXRlOyZzY2Fyb247ZSBidWRldGUgcG90xZllYm92YXQga29udGFrdG92YXQgYWRtaW5pc3RyJmFhY3V0ZTt0b3JhLic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBmb3JtdWwmYWFjdXRlO8WZZSBwcm8gemFwb21lbnV0JmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9ybXVsJmFhY3V0ZTvFmWUgcHJvIHptxJtudSBuYXN0YXZlbiZpYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHN0ciZhYWN1dGU7bmt5IHBvIHDFmWlobCZhYWN1dGU7JnNjYXJvbjtlbiZpYWN1dGU7IConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHN0ciZhYWN1dGU7bmt5IHBvIG9kaGwmYWFjdXRlOyZzY2Fyb247ZW4maWFjdXRlOyAqJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1BvxZlhZCZpYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0EgbnVtYmVyIG9mIHVzZXJzIGFyZSBpbiB0aGUgbWlkZGxlIG9mIHJlc2V0dGluZyBsb3N0IHBhc3N3b3Jkcy4gIEN1cnJlbnRseSB0aGlzIGNvdW50IGlzIGF0Oic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ09kc3RyYW5pdCB2JnNjYXJvbjtlY2hueSB6JmFhY3V0ZTt6bmFteSBzdGFyJnNjYXJvbjsmaWFjdXRlOyBuZcW+IGplZGVuIHQmeWFjdXRlO2Rlbic7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdPZHN0cmFuaXQgdiZzY2Fyb247ZWNobnkgeiZhYWN1dGU7em5hbXkgc3RhciZzY2Fyb247JmlhY3V0ZTsgbmXFviBqZWRlbiBtxJtzJmlhY3V0ZTtjJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ09kc3RyYW5pdCB2JnNjYXJvbjtlY2hueSB6JmFhY3V0ZTt6bmFteSc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnSnN0ZSBzaSBqaXN0Pyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ1phZCZhYWN1dGU7biAmc2Nhcm9uO3BhdG4meWFjdXRlOyBrJm9hY3V0ZTtkLCBwcm9zJmlhY3V0ZTttIHprdXN0ZSB0byB6bm92YSc7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnRG/EjWFzbiZ5YWN1dGU7IGsmb2FjdXRlO2QgcHJvIHZhJnNjYXJvbjtlIHXFvml2YXRlbHNrJmVhY3V0ZTsgam0mZWFjdXRlO25vIG5lbHplIG5haiZpYWN1dGU7dCB2IGRhdGFiJmFhY3V0ZTt6aSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsb25hIGZvcm11bCZhYWN1dGU7xZllIHBybyB2ZXJpZmlrYWNpJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSBmb3JtdWwmYWFjdXRlO8WZZSBwcm8gemFwb21lbnV0JmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ1Z5IG5lYm8gbsSba2RvIGppbiZ5YWN1dGU7IGppxb4gemHFviZhYWN1dGU7ZGFsIG8gcmVzZXRvdiZhYWN1dGU7biZpYWN1dGU7IGhlc2xhIHBybyB0ZW50byAmdWFjdXRlO8SNZXQuIERhbCZzY2Fyb247JmlhY3V0ZTsgaW5zdHJ1a2NlIG5hamRldGUgdmUgc3YmZWFjdXRlOyBlLW1haWxvdiZlYWN1dGU7IHNjaHImYWFjdXRlO25jZS4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0NoeWJhOiBQcm9ibCZlYWN1dGU7bSBzIGRhdGFiJmFhY3V0ZTt6JmlhY3V0ZTsnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnVHV0byB6cHImYWFjdXRlO3Z1IGRvc3QmYWFjdXRlO3YmYWFjdXRlO3RlLCBwcm90b8W+ZSBuxJtrZG8gemHFviZhYWN1dGU7ZGFsIG8gb2Jub3ZlbiZpYWN1dGU7IHphcG9tZW51dCZlYWN1dGU7aG8gaGVzbGEgayB2YSZzY2Fyb247ZW11ICZ1YWN1dGU7xI10dSBuYSBuYSZzY2Fyb247JmlhY3V0ZTsgc3RyJmFhY3V0ZTtuY2UuIFBva3VkIGplIHRvIHRhaywgcG9zdHVwdWp0ZSBwb2RsZSBuJmlhY3V0ZTvFvmUgdXZlZGVuJnlhY3V0ZTtjaCBpbnN0cnVrYyZpYWN1dGU7LiBQb2t1ZCBuZXR1JnNjYXJvbjsmaWFjdXRlO3RlIG8gY28gamRlLCB0YWsgdGVudG8gZS1tYWlsIGlnbm9ydWp0ZS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdLJm9hY3V0ZTtkJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ04mYWFjdXRlO3NsZWR1aiZpYWN1dGU7YyZpYWN1dGU7IGsmb2FjdXRlO2QgYnlsIG4mYWFjdXRlO2hvZG7EmyB2eWdlbmVyb3YmYWFjdXRlO24gcHJvIHZlcmlmaWthY2kgdcW+aXZhdGVsc2smZWFjdXRlO2hvICZ1YWN1dGU7xI10dS4gUG8ga2xlcG51dCZpYWN1dGU7IG5hIG4mYWFjdXRlO3NsZWR1aiZpYWN1dGU7YyZpYWN1dGU7IG9ka2F6IHNlIGRvc3RhbmV0ZSBuYSBzdHImYWFjdXRlO25rdSBrZGUgemFkYXQgdGVudG8gayZvYWN1dGU7ZC4gUG9sZSBqZSBzdGFuZGFyZG7EmyBqacW+IHDFmWVkdnlwbG7Em25vLiBQb2t1ZCBuZW4maWFjdXRlOywgayZvYWN1dGU7ZCBqZSB6ZGU6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnS2xlcG51dCZpYWN1dGU7bSBuYSBuJmFhY3V0ZTtzbGVkdWomaWFjdXRlO2MmaWFjdXRlOyBvZGtheiBzZSBkb3N0YW5ldGUgbmEgc3RyJmFhY3V0ZTtua3UsIGtkZSBtxa/FvmV6ZSB6YWRhdCB2JnlhY3V0ZTsmc2Nhcm9uO2UgdXZlZGVuJnlhY3V0ZTsgayZvYWN1dGU7ZCBhIG9ibm92aXQgdmEmc2Nhcm9uO2UgaGVzbG86JzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdaYXBvbWVudXQmZWFjdXRlOyBoZXNsbyc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ05lbHplIG5haiZpYWN1dGU7dCBtb2R1bCBDTVNNYWlsZXInOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnTmEgYWRyZXN1ICVzIGJ5bCB6YXNsJmFhY3V0ZTtuIGUtbWFpbCBzIGluc3RydWtjZW1pLCBqYWsgb2Jub3ZpdCB2YSZzY2Fyb247ZSBoZXNsby4gRMSba3VqZW1lJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnUG9rdWQganN0ZSB6YXBvbcSbbCBuZWJvIHp0cmF0aWwgc3YmZWFjdXRlOyBoZXNsbywgdGFrIHByb3MmaWFjdXRlO20gdnlwbMWIdGUgc3ZvamUgdcW+aXZhdGVsc2smZWFjdXRlOyBqbSZlYWN1dGU7bm8gYSBlLW1haWxlbSBkb3N0YW5ldGUgaW5zdHJ1a2NlIGphayBwb2tyYcSNb3ZhdCBzIG9ibm92ZW4maWFjdXRlO20gdG9ob3RvIGhlc2xhJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnRm9yZ290IFBhc3N3b3JkIFRlbXBhdGVzJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsb25hIHBvdcW+aXQmYWFjdXRlOywgcG9rdWQgdcW+aXZhdGVsIHp0cmF0JmlhY3V0ZTsgdcW+aXZhdGVsc2smZWFjdXRlOyBqbSZlYWN1dGU7bm8nOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnVmxhc3Rub3N0ICVzIG5lbmFsZXplbmEnOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ1ZsYXN0bm9zdGkgbmFsZXplbnknOwokbGFuZ1snYWRkcHJvcCddID0gJ1DFmWlkYXQgdmxhc3Rub3N0JzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdQb3Zpbm4mYWFjdXRlOyB2bGFzdG5vc3QgKCVzKSBieWxhIHByJmFhY3V0ZTt6ZG4mYWFjdXRlOyc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ1phZGVqdGUgc2VtIG5vdiZlYWN1dGU7IGhlc2xvJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnUHJhdmTEm3BvZG9ibsSbIG5lanN0ZSBwxZlpaGwmYWFjdXRlOyZzY2Fyb247ZW4nOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ05hc3RhdmVuJmlhY3V0ZTsnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyYWNlJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnVGVudG8gJnVhY3V0ZTvEjWV0IHZ5cHImc2Nhcm9uO2VsJzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICcmU2Nhcm9uO3BhdG4meWFjdXRlOyBmb3JtJmFhY3V0ZTt0IGUtbWFpbG92JmVhY3V0ZTsgYWRyZXN5JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnTmVwbGF0biZ5YWN1dGU7IGRhdHVtIHZ5cHImc2Nhcm9uO2VuJmlhY3V0ZTsnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0NoeWJhIHDFmWkgbmFzdGF2ZW4maWFjdXRlOyB2bGFzdG5vc3RpICVzIHXFvml2YXRlbGUgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdOZXBsYXRuJmVhY3V0ZTsgaWQgc2t1cGlueSAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ1puYcSNa292YcSNIHNrcnl0JnlhY3V0ZTtjaCBwb2wmaWFjdXRlOyc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnQmFydmEgc2tyeXQmZWFjdXRlO2hvIHBvbGUnOwokbGFuZ1snaGlkZGVuJ10gPSAnU2tyeXQmZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnVmxhc3Rub3N0IHMgdCZpYWN1dGU7bXRvIGptJmVhY3V0ZTtuZW0gamUgamnFviBkZWZpbm92JmFhY3V0ZTtuYSc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdOZWpzb3UgZGVmaW5vdiZhYWN1dGU7bnkgxb4mYWFjdXRlO2RuJmVhY3V0ZTsgdmxhc3Rub3N0aSc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ1BybyB0dXRvIHNrdXBpbnUgbmVieWx5IHZ5YnImYWFjdXRlO255IHZsYXN0bm9zdGknOwokbGFuZ1snbm9ncm91cHMnXSA9ICfFvSZhYWN1dGU7ZG4mZWFjdXRlOyBza3VwaW55IHXFvml2YXRlbMWvIG5lanNvdSBkZWZpbm92JmFhY3V0ZTtueSc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ1NrdXBpbnkgbmFsZXplbnknOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ0plIHZ5xb5hZG92JmFhY3V0ZTtubyBwxZlpxZlhemVuJmlhY3V0ZTsgYWxlc3BvxYggZG8gamVkbiZlYWN1dGU7IHNrdXBpbnknOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ1Z5xb5hZG92YXQgcMWZacWZYXplbiZpYWN1dGU7IGFsZXNwb8WIIGRvIGplZG4mZWFjdXRlOyBza3VwaW55JzsKJGxhbmdbJ2JhY2snXSA9ICdacMSbdCc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgamUgcG92aW5uJmFhY3V0ZTsgcG9sb8W+a2EnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ096bmHEjWl0IHBvxb5hZG92YW4mYWFjdXRlOyBwb2xlJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0hpbGl0ZSByZXF1aXJlZCBmaWVsZHMgaW4nOwokbGFuZ1snbmV4dCddID0gJ0RhbCZzY2Fyb247JmlhY3V0ZTsnOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdTa3VwaW5hIHMgdCZpYWN1dGU7bXRvIGptJmVhY3V0ZTtuZW0gdcW+IGV4aXN0dWplJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnVnnFvmFkb3ZhbiZhYWN1dGU7IHBvbG/FvmthJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnVm9saXRlbG4mYWFjdXRlOyc7CiRsYW5nWydvZmYnXSA9ICdWeXBub3V0JzsKJGxhbmdbJ3NpemUnXSA9ICdWZWxpa29zdCc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltJmFhY3V0ZTtsbiZpYWN1dGU7IHJvem3Em3Igb2JyJmFhY3V0ZTt6a3UgdiBwaXhlbGVjaCknOwokbGFuZ1snbGVuZ3RoJ10gPSAnRCZlYWN1dGU7bGthJzsKJGxhbmdbJ2xlbmd0aGNvbW1lbnQnXSA9ICc8YnI+KHpuYWt5IHZlIHZzdHVwbiZpYWN1dGU7bSBwb2xpKSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnUG9sb8W+a3kgcm96YmFsb3ZhYyZpYWN1dGU7aG8gbWVudSBvZGTEm2xlbiZlYWN1dGU7IG5vdiZ5YWN1dGU7bWkgxZkmYWFjdXRlO2RreSc7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpb2J1dHRvbiBsYWJlbHMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gVmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgZnJvbSB0ZXh0IHdpdGggYSA9IGNoYXJhY3Rlci4gaS5lOiBGZW1hbGU9Zic7CiRsYW5nWydwcm9tcHQnXSA9ICdWJnlhY3V0ZTt6dmEnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUeXAnOwokbGFuZ1sndHlwZSddID0gJ1R5cCc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ1N0YXYgcG9sJmlhY3V0ZTvEjWthJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ1plcHRhdCBzZSB2IHDFmSZpYWN1dGU7cGFkxJs8YnIvPnphcG9tZW51dCZpYWN1dGU7IHXFvml2YXRlbHNrJmVhY3V0ZTtobyBqbSZlYWN1dGU7bmEnOwokbGFuZ1sndGV4dCddID0gJ1RleHQnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdaYSZzY2Fyb247a3J0JmFhY3V0ZTt2YWMmaWFjdXRlOyBwb2wmaWFjdXRlO8SNa28nOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdWJnlhY3V0ZTtixJtyIHogdiZpYWN1dGU7Y2UgcG9sb8W+ZWsnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnUmFkaW8gQnV0dG9ucyc7CiRsYW5nWydpbWFnZSddID0gJ09iciZhYWN1dGU7emVrJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRS1tYWlsb3YmYWFjdXRlOyBhZHJlc2EnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdPYmxhc3QgdGV4dHUnOwokbGFuZ1snZHJvcGRvd24nXSA9ICdSb3piYWxvdmFjJmlhY3V0ZTsgbWVudSc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1YmaWFjdXRlO3RlanRlJzsKJGxhbmdbJ2xvZ291dCddID0gJ09kaGwmYWFjdXRlO3NpdCc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnUG91xb4maWFjdXRlO3Qgam0mZWFjdXRlO25vIHQmZWFjdXRlO3RvIHNrdXBpbnknOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzJ10gPSAnVXByYXZpdCBtJmFhY3V0ZTsgbmFzdGF2ZW4maWFjdXRlOyc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ1DFmWlobCZhYWN1dGU7JnNjYXJvbjtlbiZpYWN1dGU7IHNlbGhhbG8gLSAmc2Nhcm9uO3BhdG4mZWFjdXRlOyB1xb5pdmF0ZWxzayZlYWN1dGU7IGptJmVhY3V0ZTtubyBuZWJvIGhlc2xvPyc7CiRsYW5nWydsb2dpbiddID0gJ1DFmWlobCZhYWN1dGU7c2l0JzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnUG9waXNlayBwb2wmaWFjdXRlO8SNa2EgcHJvIHDFmWlobCZhYWN1dGU7JnNjYXJvbjtlbiZpYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ1XFvml2YXRlbHNrJmVhY3V0ZTsgam0mZWFjdXRlO25vJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0UtbWFpbG92JmFhY3V0ZTsgYWRyZXNhJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ0hlc2xvJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnUGFtYXR1aiBzaSBtxJsgbmEgdG9tdG8gcG/EjSZpYWN1dGU7dGHEjWknOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3Ryb3ZhdCc7CiRsYW5nWydmb3Jnb3RwdyddID0gJ1phcG9tZW51dCZlYWN1dGU7IGhlc2xvPyc7CiRsYW5nWydsb3N0dXNlcm5hbWUnXSA9ICdaYXBvbW7Em2xpIGpzdGUgcMWZaWhsYSZzY2Fyb247b3ZhYyZpYWN1dGU7ICZ1YWN1dGU7ZGFqZT8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdWJnlhY3V0ZTtjaG96JmlhY3V0ZTsgaG9kbm90eSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsb25hJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ1XFvml2YXRlbHNrJmVhY3V0ZTsgSUQgbmVuYWxlemVubyc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVG90byB1xb5pdmF0ZWxzayZlYWN1dGU7IGptJmVhY3V0ZTtubyAoJXMpIGppxb4gbsSba2RvIHBvdcW+JmlhY3V0ZTt2JmFhY3V0ZTsnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ1BvdcW+JmlhY3V0ZTt2YXQgU01UUCBwcm8gdmFsaWRhY2kgZS1tYWlsb3YmeWFjdXRlO2NoIGFkcmVzPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbSZhYWN1dGU7bG4maWFjdXRlOyBkJmVhY3V0ZTtsa2EgaGVzbGEnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTWF4aW0mYWFjdXRlO2xuJmlhY3V0ZTsgZCZlYWN1dGU7bGthIGhlc2xhJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltJmFhY3V0ZTtsbiZpYWN1dGU7IGQmZWFjdXRlO2xrYSB1xb5pdmF0ZWxzayZlYWN1dGU7aG8gam0mZWFjdXRlO25hJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01heGltJmFhY3V0ZTtsbiZpYWN1dGU7IGQmZWFjdXRlO2xrYSB1xb5pdmF0ZWxzayZlYWN1dGU7aG8gam0mZWFjdXRlO25hJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ0QmZWFjdXRlO2xrYSBwbGF0bm9zdGkgc2Vzc2lvbiAodmUgdnRlxZlpbiZhYWN1dGU7Y2gpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdQb3XFviZpYWN1dGU7dCBjb29raWVzIHBybyB1ZHLFvmVuJmlhY3V0ZTsgcMWZaWhsJmFhY3V0ZTsmc2Nhcm9uO2VuJmlhY3V0ZTsnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdQb3ZvbGl0IHJlZ2lzdHJhY2kgZS1tYWlsdSc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnViZ5YWN1dGU7Y2hveiZpYWN1dGU7IHNrdXBpbmEgcHJvIG5vdiZlYWN1dGU7IHXFvml2YXRlbGUnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSBwcm8gem3Em251IG5hc3RhdmVuJmlhY3V0ZTsnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0hlc2xhIG5lanNvdSBzdGVqbiZhYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ0NoeWJuJmVhY3V0ZTsgdcW+aXZhdGVsc2smZWFjdXRlOyBqbSZlYWN1dGU7bm8nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnQ2h5eWJuJmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1snZWRpdHVzZXInXSA9ICdFZGl0b3ZhdCB1xb5pdmF0ZWxlJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnUGxhdG4mZWFjdXRlOyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ1XFvml2YXRlbHNrJmVhY3V0ZTsgam0mZWFjdXRlO25vJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXYnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnVGVudG8gdcW+aXZhdGVsIG5lbiZpYWN1dGU7IHDFmWnFmWF6ZW4gZG8gxb4mYWFjdXRlO2RuJnlhY3V0ZTtjaCBza3VwaW4nOwokbGFuZ1snZXJyb3JfcHJvcGVydGllcyddID0gJ8W9JmFhY3V0ZTtkbiZlYWN1dGU7IHZsYXN0bm9zdGknOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdJbXBvcnRvdmF0IGR1cGxpayZhYWN1dGU7dG4maWFjdXRlOyB2bGFzdG5vc3RpJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnSG9kbm90YSc7CiRsYW5nWydncm91cHMnXSA9ICdTa3VwaW55JzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdWbGFzdG5vc3RpJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnTiZhYWN1dGU7emV2IHZsYXN0bm9zdGknOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnSG9kbm90YSB2bGFzdG5vc3RpJzsKJGxhbmdbJ2FkZCddID0gJ1DFmWlkYXQnOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3RvcmllJzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0b3ZhdCc7CiRsYW5nWydleHBpcmVzJ10gPSAnVnlwciZzY2Fyb247ZW4maWFjdXRlOyc7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdTcGVjaWZpa3VqdGUgZGF0dW0nOwokbGFuZ1snMTJocnMnXSA9ICcxMiBob2Rpbic7CiRsYW5nWycyNGhycyddID0gJzI0IGhvZGluJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggaG9kaW4nOwokbGFuZ1snMXdlZWsnXSA9ICcxIHQmeWFjdXRlO2Rlbic7CiRsYW5nWycyd2Vla3MnXSA9ICcyIHQmeWFjdXRlO2RueSc7CiRsYW5nWycxbW9udGgnXSA9ICcxIG3Em3MmaWFjdXRlO2MnOwokbGFuZ1snM21vbnRocyddID0gJzMgbcSbcyZpYWN1dGU7Y2UnOwokbGFuZ1snNm1vbnRocyddID0gJzYgbcSbcyZpYWN1dGU7Y8WvJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSByb2snOwokbGFuZ1snbmV2ZXInXSA9ICdOaWtkeSc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bCAmdWFjdXRlO3NwxJsmc2Nhcm9uO27EmyBuYWluc3RhbG92JmFhY3V0ZTtuLjxici8+TmV6YXBvbWXFiHRlIG5hc3Rhdml0IG9wciZhYWN1dGU7dm7Em24maWFjdXRlOyAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMmcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdIZXNsbyc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1pub3ZhJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdTdXBpbmEgcyB0JmlhY3V0ZTttdG8gbiZhYWN1dGU7enZlbSBqacW+IGV4aXN0dWplJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ0VkaXRvdmF0IHNrdXBpbnUnOwokbGFuZ1snc3VibWl0J10gPSAnUG90dnJkaXQnOwokbGFuZ1snY2FuY2VsJ10gPSAnWnJ1JnNjYXJvbjtpdCc7CiRsYW5nWydkZWxldGUnXSA9ICdWeW1hemF0JzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnSnN0ZSBzaSBqaXN0IMW+ZSB0b3RvIGplIHNwciZhYWN1dGU7dm4mZWFjdXRlOyBuYXN0YXZlbiZpYWN1dGU7IHBybyB0dXRvIHNrdXBpbnU/XG4gVnlwbnV0JmlhY3V0ZTttIHZsYXN0bm9zdGkgc2UgbmVzbWHFvm91IMW+JmFhY3V0ZTtkbiZlYWN1dGU7ICZ1YWN1dGU7ZGFqZSB2ZSB2bGFzdG5vc3RlY2ggdG9ob3RvIHXFvml2YXRlbGUvc2t1cGlueS4gJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICdKc3RlIHNpIGppc3Qgxb5lIGNoY2V0ZSBzbWF6YXQgdHV0byBza3VwaW51Pyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnT3ByYXZkdSBjaGNldGUga29tcGxldG7EmyBzbWF6YXQgdHV0byB2bGFzdG5vc3Q/XG5UJmlhY3V0ZTttIHNlIHZ5bWHFvm91IGkgdiZzY2Fyb247ZWNobnkgaG9kbm90eSB0JmVhY3V0ZTt0byB2bGFzdG5vc3RpIHUgdcW+aXZhdGVsxa8uJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ05lZG9zdGF0ZcSNbiZlYWN1dGU7IHBhcmFtZXRyeSc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdKbSZlYWN1dGU7bm8nOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQxZlpIHDFmWlkJmFhY3V0ZTt2JmFhY3V0ZTtuJmlhY3V0ZTsgdmxhc3Rub3N0aSBkbyZzY2Fyb247bG8gayBjaHlixJsnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsJmVhY3V0ZTttIHDFmWkgcMWZaWQmYWFjdXRlO3YmYWFjdXRlO24maWFjdXRlOyB2enRhaHUgc2t1cGlueSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICdQcm9ibCZlYWN1dGU7bSBwxZlpIHDFmWlkJmFhY3V0ZTt2JmFhY3V0ZTtuJmlhY3V0ZTsgc2t1cGlueSc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsJmVhY3V0ZTttIHDFmWkgcMWZaWQmYWFjdXRlO3YmYWFjdXRlO24maWFjdXRlOyB1xb5pdmF0ZWxlIGRvIHNrdXBpbnknOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsJmVhY3V0ZTttIHDFmWkgbWF6JmFhY3V0ZTtuJmlhY3V0ZTsgdmxhc3Rub3N0aSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ05lbW9odSBuYWwmZWFjdXRlO3p0IGUtbWFpbG92b3UgYWRyZXN1JzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdEbyBjJmlhY3V0ZTtsb3YmZWFjdXRlO2hvIGFkcmVzJmFhY3V0ZTvFmWUgbmVuJmlhY3V0ZTsgcG92b2xlbiB6JmFhY3V0ZTtwaXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJyZTY2Fyb247cGF0biZlYWN1dGU7IHBhcmFtYXRyeSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ05lYnlseSBuYWxlemVueSDFviZhYWN1dGU7ZG4mZWFjdXRlOyBza3VwaW55JzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnUG91xb4maWFjdXRlO3QnOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHInOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ1JlZ3VsJmFhY3V0ZTtybiZpYWN1dGU7IHYmeWFjdXRlO3JheiBwcm8gdcW+aXZhdGVsc2smZWFjdXRlOyBqbSZlYWN1dGU7bm8nOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdQb3Bpcyc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOJmFhY3V0ZTt6ZXYgc2t1cGlueSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdQxZkmaWFjdXRlO3N0dXAgb2RlcMWZZW4nOwokbGFuZ1snZXJyb3InXSA9ICdDaHliYSc7CiRsYW5nWydhZGRncm91cCddID0gJ1DFmWlkYXQgc2t1cGludSc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydG92YXQgc2t1cGludSc7CiRsYW5nWydhZGR1c2VyJ10gPSAnUMWZaWRhdCB1xb5pdmF0ZWxlJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVxb5pdmF0ZWwmZWFjdXRlOyBzcGzFiHVqJmlhY3V0ZTtjJmlhY3V0ZTsgdnlobGVkJmFhY3V0ZTt2YWMmaWFjdXRlOyBrcml0ZXJpYSc7CiRsYW5nWydncm91cCddID0gJ1NrdXBpbmEnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdWeWJyYXQgc2t1cGludSc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSBwcm8gcmVnaXN0cmFjaSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibG9uYSBwcm8gb2RobCZhYWN1dGU7JnNjYXJvbjtlbiZpYWN1dGU7JzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbmEgcHJvIHDFmWlobCZhYWN1dGU7JnNjYXJvbjtlbiZpYWN1dGU7JzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUMWZZWR2b2xieSc7CiRsYW5nWyd1c2VycyddID0gJ1XFvml2YXRlbCZlYWN1dGU7JzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ1NwciZhYWN1dGU7dmEgZnJvbnRlbmQgdcW+aXZhdGVsxa8nOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdTcHJhdm92YXQgZnJvbnRlbmQgdcW+aXZhdGVsZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnViZ5YWN1dGU7Y2hveiZpYWN1dGU7IHN0ciZhYWN1dGU7bmthJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdTdHImYWFjdXRlO25rYSBzIHBvc2xlZG4maWFjdXRlO20gcMWZJmlhY3V0ZTtzdHVwZW0nOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnSmluJmFhY3V0ZTsgc3RyJmFhY3V0ZTtua2E6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnT3BpJnNjYXJvbjt0ZSB0ZXh0IHogb2JyJmFhY3V0ZTt6a3UnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/da_DK.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIE1vZGlmaWVkJzsKJGxhbmdbJ2Vycm9yX3Rvb21hbnlzZWxlY3RlZCddID0gJ1RvbyBtYW55IHVzZXJzIGFyZSBzZWxlY3RlZCBmb3IgYnVsayBvcGVyYXRpb25zLi4uLiBQbGVhc2UgdHJpbSBpdCB0byAyNTAgb3IgbGVzcyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9zZWxlY3RlZCddID0gJ0VyIGR1IHNpa2tlciBwJmFyaW5nOyBkdSB2aWwgc2xldHRlIGRlIHZhbGd0ZSBicnVnZXJlPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdTbGV0IGRlIHZhbGd0ZSc7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmF0ZSByYW5kb20gdXNlcm5hbWUgd2hlbiBhZGRpbmcgbmV3IHVzZXJzJzsKJGxhbmdbJ21vbnRocyddID0gJ20mYXJpbmc7bmVkZXInOwokbGFuZ1sncHJvbXB0X2V4cGlyZWFnZSddID0gJ1N0YW5kYXJkIGJydWdlciB1ZGwmb3NsYXNoO2JzIHRpZCc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdJbmRzdGlsbGluZ2VyIGZvciBiZXNrZWRlcic7CiRsYW5nWydwcm9wZXJ0eV9zZXR0aW5ncyddID0gJ0luZHN0aWxsaW5nZXIgZm9yIGVnZW5za2FiZXInOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdWaWRlcnN0aWxsaW5ncyBpbmRzdGlsbGluZ2VyJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lcmVsbGUgaW5kc3RpbGxpbmdlcic7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnSW5kc3RpbGxpbmdlciBmb3Igc2Vzc2lvbiBvZyBjb29raWVzJzsKJGxhbmdbJ2ZpZWxkX3NldHRpbmdzJ10gPSAnRmVsdCBpbmRzdGlsbGluZ2VyJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ1RoZSBsb3N0dXNlcm5hbWUgZmxhZyBjYW4gb25seSBiZSB1c2VkIG9uIHJlcXVpcmVkIGZpZWxkcyc7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdUaWxsYWQgYnJ1ZyBhZiB3eXNpd3lnIGZvciBkZXR0ZSB0ZWtzdG9tciZhcmluZztkZSc7CiRsYW5nWydpbmZvX2Nvb2tpZXN0b3JlbWVtYmVyJ10gPSAnPHN0cm9uZz5Ob3RlOiA8L3N0cm9uZz4gVGhpcyB1c2VzIHRoZSBtY3J5cHQgZnVuY3Rpb25zIGZvciBlbmNyeXB0aW9uIHB1cnBvc2VzLCBhbmQgdGhleSBjb3VsZCBub3QgYmUgZGV0ZWN0ZWQgb24geW91ciBpbnN0YWxsLiAgIFBsZWFzZSBjb250YWN0IHlvdXIgc2VydmVyIGFkbWluaXN0cmF0b3IuJzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ1JlZGlnZXJlciBicnVnZXInOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdWaXMgaWtrZSBmb3JtcyBpbmxpbmUnOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdLbGlrIGhlciBodmlzIGR1IGlra2Uga2FuIGh1c2tlIGRpbmUgbG9naW4gb3BseXNuaW5nZXInOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0tsaWsgaGVyIGh2aXMgZHUgaWtrZSBrYW4gaHVza2UgZGl0IHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnS2xpayBoZXIgZm9yIGF0IGxvZ2dlIHVkJzsKJGxhbmdbJ2luZm9fY2hhbmdlc2V0dGluZ3MnXSA9ICdLbGlrIGhlciBmb3IgYXQgJmFlbGlnO25kcmUgZGl0IHBhc3N3b3JkIGVsbGVyIGFuZGVuIGluZm9ybWF0aW9uJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnU2UgYnJ1Z2VyIHRlbXBsYXRlJzsKJGxhbmdbJ2V2ZW50J10gPSAnQmVnaXZlbmhlZCc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnRkVVIGJlc2tlZCBvbSBiZWdpdmVuaGVkJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ0Jlc2tlZCBlbWFpbCBhZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdCZXNrZWQgZW1haWwgdGVtcGxhdGUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnQmVza2VkIGVtYWlsIGVtbmUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdFbWFpbCBiZXNrZWRlcic7CiRsYW5nWydPbkxvZ2luJ10gPSAnVmVkIGxvZ2luJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnVmVkIGxvZ291dCc7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICdWZWQgdWRsJm9zbGFzaDtiIGFmIHNlc3Npb24nOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnVmVkb3ByZXR0ZWxzZSBhZiBlbiBueSBicnVnZXInOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnVmVkIHNsZXRuaW5nIGFmIGVuIGJydWdlcic7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdWZWQgJmFlbGlnO25kcmluZyBhZiBicnVnZXIgb3BseXNuaW5nZXInOwokbGFuZ1snT25DcmVhdGVHcm91cCddID0gJ1ZlZCBvcHJldHRlbHNlIGFmIGVuIG55IGJydWdlcmdydXBwZSc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnVmVkIHNsZXRuaW5nIGFmIGVuIGJydWdlcmdydXBwZSc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ0Z1bmt0aW9uZW4sIGRlciBrYW4gaGVudGUgbWlzdGVkZSBsb2dpbiBvcGx5c25pbmdlciwgZXIgYWZzbHV0dGV0IG1lZCBzdWNjZXMuICBWaSBoYXIgZnVuZGV0IGV0IHVuaWt0IGJydWdlcm5hdm4sIGRlciBtYXRjaGVkZSBkaW5lIG9wbHlzbmluZ2VyLiAnOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ0RpdCBicnVnZXJuYXZuIGVyJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1ZpIGFuYmVmYWxlciBkdSBnZW1tZXIgZGVubmUgaW5mb3JtYXRpb24gcCZhcmluZzsgZXQgc2lra2VydCBzdGVkLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnRyZhcmluZzsgdGlsIFBhZ2VJRC9BbGlhcyBlZnRlciBhdCBoYXZlICZhZWxpZztuZHJldCBpbmRzdGlsbGluZ2VyJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ0cmYXJpbmc7IHRpbCBQYWdlSUQvQWxpYXMgZWZ0ZXIga29kZSB2ZXJpZmlrYXRpb24gKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0RldGFsamVyZXQgc2thYmVsb24gZm9yIG1pc3RldCBicnVnZXJuYXZuJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnQmVrciZhZWxpZztmdGVsc2VzIHNrYWJlbG9uIGZvciBtaXN0ZXQgYnJ1Z2VybmF2bic7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Zlamw6IE1lcmUgZW5kIGVuIGJydWdlciBwYXNzZXIgdGlsIGRlIGFuZ2l2bmUgZWdlbnNrYWJlcic7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdGZWpsOiBLdW5uZSBpa2tlIGZpbmRlIGVuIGJydWdlciBtZWQgZGUgZWdlbnNrYWJlcic7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnRmVqbDogS3VubmUgaWtrZSBmaW5kZSBlbiBncnVwcGUgbWVkIGRldCBuYXZuJzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnU2tyaXZlYmVza3l0dGV0JzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdVc2VyIE1hbmlwdWxhdG9yIENsYXNzJzsKJGxhbmdbJ2FkbWluX2xvZ291dCddID0gJ0xvZ2dlZCBvdXQgYWYgYWRtaW5pc3RyYXRvcic7CiRsYW5nWydwcm9tcHRfbG9nZ2VkaW5vbmx5J10gPSAnVmlzIGt1biBicnVnZXJlLCBkZXIgZXIgbG9nZ2V0IGluZCc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnTG9nIGRlbm5lIGJydWdlciBhZic7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdCcnVnZXIgZWdlbnNrYWJlcic7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0JydWdlciBoaXN0b3JpZSc7CiRsYW5nWydleHBvcnQnXSA9ICdFa3Nwb3J0JmVhY3V0ZTtyJzsKJGxhbmdbJ2NsZWFyJ10gPSAnUnlkJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0Vrc3BvcnQmZWFjdXRlO3IgYnJ1Z2VyIGhpc3RvcmlrIHRpbCBBU0NJSSBzb20gZXIgbWVyZSBlbmQnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdTbGV0IGJydWdlciBoaXN0b3JpayBkZXIgZXIgbWVyZSBlbmQnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnTWlzdGV0IGJydWdlcm5hdm4gc3VwcG9ydCBmb3J1bSc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFa3Nwb3J0JmVhY3V0ZTtyIGdydXBwZSBkZWZpbml0aW9uZXIgKG9nIGVnZW5za2FiZXIpIHRpbCBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ1ZlZGxpZ2Vob2xkIGJydWdlciBoaXN0b3JpZSc7CiRsYW5nWyd5ZXMnXSA9ICdKYSc7CiRsYW5nWydubyddID0gJ05laic7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICdBZic7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBJbmdlbiBiZWdyJmFlbGlnO25zbmluZyAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdFbiB0aW1lIGdhbW1lbCc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdTZWtzIHRpbWVyIGdhbW1lbCc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdUb2x2IHRpbWVyIGdhbW1lbCc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ0VuIGRhZyBnYW1tZWwnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnRW4gdWdlIGdhbW1lbCc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnVG8gdWdlciBnYW1tZWwnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ0VuIG0mYXJpbmc7bmVkIGdhbW1lbCc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVHJlIG0mYXJpbmc7bmVkZXIgZ2FtbWVsJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnU2VrcyBtJmFyaW5nO25lZGVyIGdhbW1lbCc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdFdCAmYXJpbmc7ciBnYW1tZWwnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3J1cHBlcmluZyBvZyBzb3J0ZXJpbmcnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1Bvc3RlciwgZGVyIG1hdGNoZXIga3JpdGVyaWV0JzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnRmFsZGVuZGUgYnJ1Z2VybmF2bic7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnU3RpZ2VuZGUgYnJ1Z2VybmF2bic7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnRmFsZGVuZGUgZGF0b29yZGVuJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ1N0aWdlbmRlIGRhdG9vcmRlbic7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdGYWxkZW5kZSBiZWdpdmVuaGVkc2thdGVnb3JpJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnU3RpZ2VuZGUgYmVnaXZlbmhlZHNrYXRlZ29yaSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdGYWxkZW5kZSBJUCBhZHJlc3NlIG9yZGVuJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnU3RpZ2VuZGUgSVAgYWRyZXNzZSBvcmRlbic7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnSW5nZW4gaGlzdG9yaWUgZnVuZGV0JzsKJGxhbmdbJ3Jlc2V0J10gPSAnTnVsc3RpbCc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdHcnVwcCZlYWN1dGU7ciBlZnRlciBJUCBhZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnSCZhZWxpZztuZGVsc2VzIHR5cGUgZmlsdGVyJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1ZpcyBrdW4gYmVnaXZlbmhlZGVyLCBkZXIgZXIgbWluZHJlIGVuZDonOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ1NpZGUgYmVnciZhZWxpZztzbmluZyc7CiRsYW5nWydmb3InXSA9ICdmb3InOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdCcnVnZXIgaGlzdG9yaWUgcmFwcG9ydCc7CiRsYW5nWyd1bmtub3duJ10gPSAnVWtlbmR0JzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUCBhZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdCZWdpdmVuaGVkc2thdGVnb3JpJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRGF0byc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnVGlsYmFnZSc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0IGtvbXBsZXQnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnTGluaWVyIGJlYXJiZWpkZXQnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0ZlamwgZnVuZGV0JzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzYWRkZWQnXSA9ICdQb3N0ZXIgdGlsZiZvc2xhc2g7amV0JzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdLdW5uZSBpa2tlIGZyaW5kZSBlZ2Vuc2thYmVyIGZvciBncnVwcGVuICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnRmlrIGludGV0IHN2YXIgZnJhIFNNVFAtc2VydmVyZW4nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnRGVuIGFuZ2l2bmUgZmlsICglcykga3VubmUgaWtrZSBmaW5kZXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ0ZlamxhZ3RpZyB2JmFlbGlnO3JkaWcgZm9yIGRyb3Bkb3duIGVsbGVyIG11bHRpc2VsZWN0IGZlbHQgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdGZWx0ICVzIGVyIG1lcmUgZW5kIGRlbiBtYWtzaW1hbGUgbCZhZWxpZztuZ2RlJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0IGZlamwgKGxpbmllICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0t1bm5lIGlra2UgZmluZGUgZWdlbnNrYWJzZGVmaW5pdGlvbnNuIChpbnRlcm4gZmVqbCknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbWVyIG1lZCBhdCAmYWVsaWc7bmRyZSBicnVnZXIgb3BseXNuaW5nZXInOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0t1bm5lIGlra2UgZmluZGUgZW4gcyZvc2xhc2g7amxlIGRlciBzdmFyZXIgdGlsIGRldCBrciZhZWxpZzt2ZWRlIGZlamx0ICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnS3VubmUgaWtrZSBmaW5kZSBlZ2Vuc2thYmVyIGZvciBkZW4gdmFsZ3RlIGdydXBwZSc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnRGVuIHZhbGd0ZSBmaWwgdGlsIGltcG9ydCBlciBpa2tlIGkgZGV0IGtvcnJla3RlIGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnS3VubmUgaWtrZSAmYXJpbmc7Ym5lIGZpbCc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIEVhY2ggbGluZSBtdXN0IGNvbnRhaW4gdGhlIHNhbWUgbnVtYmVyIG9mIGZpZWxkcywgYW5kIHRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNuIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnRlciBicnVnZXJlIGkgZGVubmUgZ3J1cHBlJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ0luZHMmYWVsaWc7dCBDU1YgZmlsJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnSW5kcyZhZWxpZzt0IFhNTCBmaWwnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRWtzcG9ydCZlYWN1dGU7ciBicnVnZXJlJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ0ltcG9ydGVyIGJydWdlcmUnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnUnlkJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnQmlsbGVkIGRlc3RpbmF0aW9ucyBtYXBwZSc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ0V0IHByb2JsZW0gb3BzdG9kIHZlZCBlbiBtYW5nbGVuZGUgKG1lbiBwJmFyaW5nO2tyJmFlbGlnO3ZldCkgdXBsb2FkJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdLdW5uZSBpa2tlIG92ZXJzJmFlbGlnO3R0ZSBkZW4gYW5naXZuZSBYTUwgZmlsJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdLYW4gaWtrZSBzbGV0dGUgZW4gZ3J1cHBlLCBkZXIgc3RhZGlnIGluZGVob2xkZXIgYnJ1Z2VyZS4nOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ0Rlbm5lIGJydWdlciBlciBhbGxlcmVkZSBsb2dnZXQgaW5kJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ1Rla3N0ZW4gZnJhIGJpbGxlZGVyIGJsZXYgaWtrZSBza3JldmV0IGtvcnJla3QnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1RpbGxhZCBicnVnZXJlIGF0IHYmYWVsaWc7cmUgbG9nZ2V0IGluZCBmbGVyZSBnYW5nZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnQmlsbGVkZmlsLXR5cGVyIHNvbSBicnVnZXJlIG0mYXJpbmc7IHVwbG9hZCYjMDM5O2UnOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPGgzPk9uTG9nb3V0PGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZG91dCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8aDM+T25FeHBpcmVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluIHRvIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dCBvZiB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gaXMgZXhwaXJlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IHVzZXIgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpbmZvIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBkZWxldGVkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIGdyb3VwJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogVGhlIGZvbGxvd2luZyBtYWNyb3MgY2FuIGJlIHVzZWQgaW4gdGhlc2UgZmllbGRzOiB7JHVzZXJuYW1lfSc7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnUmV0IGkgZGV0dGUgZmVsdCBmb3IgYXQgbnVsc3RpbGxlIGJydWdlcmVucyBrb2Rlb3JkJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdSZXQgaSBkZXR0ZSBmZWx0IGZvciBhdCBudWxzdGlsbGUgYnJ1Z2VyZW5zIGtvZGVvcmQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnRW4gYnJ1Z2VyIG1lZCBkZXRicnVnZXJuYXZuIGVrc2lzdGVyZXIgYWxsZXJlZGUnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnTm8gcmVzdWx0cyByZXR1cm5lZCBmcm9tIGNzdiBleHBvcnQnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTCZhZWxpZztuZ2RlIHAmYXJpbmc7IGZlbHRldCBicnVnZXJuYXZuJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0wmYWVsaWc7bmdkZSBwJmFyaW5nOyBmZWx0ZXQga29kZW9yZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL21ha3MgbCZhZWxpZztuZ2UgcCZhcmluZzsga29kZW9yZGV0IGVyIGlra2UgZ3lsZGlnJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW4vbWFrcyBsJmFlbGlnO25nZSBwJmFyaW5nOyBicnVnZXJuYXZuZXQgZXIgaWtrZSBneWxkaWcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ1VneWxkaWcgZW1haWwgYWRyZXNzZSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ1ZpIGt1bm5lIGlra2UgZmluZGUgZW4gZW1haWwgYWRyZXNzZSBmb3IgZGVubmUga29udG8nOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ0ZlamwgdmVkIGluZHMmYWVsaWc7dG5pbmcgYWYgYnJ1Z2VyIGluZm8nOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbSBzZXR0aW5nIHByb3BlcnR5JzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdCcnVnZXIgdGlsZiZvc2xhc2g7amV0ICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnQnJ1Z2VyIHNsZXR0ZXQgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnRWdlbnNrYWInOwokbGFuZ1sndmFsdWVyZWdleCddID0gJ1YmYWVsaWc7cmRpIChyZWd1bCZhZWxpZztydWR0cnlrKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ0FkdmFyc2VsOiBkaXNzZSBmZWx0ZXIgcCZhcmluZzt2aXJrZXIgc3Qmb3NsYXNoO3JyZWxzZSBwJmFyaW5nOyBpbnB1dCBmZWx0ZXIgZm9yIGZvcm11bGFyZXIuIERldCBrYW4gaWtrZSBhbmJlZmFsZXMgYXQgJmFlbGlnO25kcmUgZGlzc2UgdGFsIHAmYXJpbmc7IGFsbGVyZWRlIGVuIGVrc2lzdGVyZW5kZSBzaWRlJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdSZWRpZyZlYWN1dGU7ciBhZG1pbmlzdHJhdGlvbnMgaW5kc3RpbGxpbmdlcj8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0VtYWlsLWFkcmVzc2UgYWxsZXJlZGUgaSBicnVnJzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ1VzZSBjb29raWVzIHRvIHJlbWVtYmVyIGxvZ2luIGRldGFpbHMnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdUaGUgbmFtZSBvZiB0aGUgY29va2llJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnVGlsbGFkIGlkZW50aXNrZSBlbWFpbC1hZHJlc3Nlcic7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdFbWFpbCBhZHJlc3NlIGVyIGJydWdlcm5hdm4nOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnQXR0ZW1wdCB0byBrZWVwIGxvZ2lucyBhbGl2ZSBieSB0aGUgdXNlIG9mIGEgY29va2llIDxlbT4odGhlIGNvb2tpZSBpcyByZXNldCBvbiBhY3Rpdml0eSBpbiB0aGUgd2Vic2l0ZSk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcodGlsbGFkIGZsZXJlIGJydWdlcmUgbWVkIHNhbW1lIGVtYWlsIGFkcmVzc2UpJzsKJGxhbmdbJ2luZm9fdXNlcm5hbWVfaXNfZW1haWwnXSA9ICcodXNlciYjMDM5O3MgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAtLSBkb24mIzAzOTt0IHNldCB0aGlzIHdpdGggJnF1b3Q7YWxsb3cgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlcyZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnVGlsbGFkIG1lcmUgZW5kIGVuICZxdW90O2dsZW10IGtvZGVvcmQmcXVvdDsgcCZhcmluZzttaW5kZWxzZT8nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKHRpbGxhZCBhdCBlbiBicnVnZXIgZiZhcmluZztyIG11bGlnaGVkIGZvciBhdCAmYWVsaWc7bmRyZSBzaXQga29kZW9yZCwgc2Vsdm9tIGRlbm5lIGlra2UgaGFyIHJlYWdlcmV0IHAmYXJpbmc7IGVuIHRpZGxpZ2VyZSBmb3Jlc3Amb3NsYXNoO2dzZWwpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNlIEZyb250LWVuZCBVc2VyIHNwZWNpZmljIHBlcm1pc3Npb25zPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbHksIEZFVVNlcnMgcGVybWlzc2lvbnMgYXJlIHRoZSBzYW1lIGFzIHRoZSBlcXVpdmFsZW50IEFkbWluIEFyZWEgcGVybWlzc2lvbnMgbGlrZSBBZGQgVXNlciwgQWRkIEdyb3VwLCBldGMuIElmIHlvdSBzZWxlY3QgdGhpcyBvcHRpb24sIHRoZXJlIHdpbGwgYmUgc2VwYXJhdGUgcGVybWlzc2lvbnMgZm9yIEZFVXNlcnMuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIHVwbG9hZGVkIGZpbGUgKGludGVybmFsIGVycm9yKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ1RoZXJlIHdhcyBhIHByb2JsZW0gd2l0aCB5b3VyIHVwbG9hZGVkIGZpbGUuICBQbGVhc2UgdHJ5IGFnYWluJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ0R1IGluZHRhc3RlZGUgaWtrZSBldCBicnVnZXJuYXZuJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ1lvdSBkaWQgbm90IGVudGVyIHlvdXIgZW1haWwnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnRHUgaW5kdGFzdGVkZSBpa2tlIGV0IGtvZGVvcmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kIEJydWdlciBMb2cgVWQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnRnJvbnRlbmQgQnJ1Z2VyIExvZyBJbmQnOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5VU0UgQ0FVVElPTjwvYj4gd2hlbiBjaGFuZ2luZyBleGlzdGluZyBwcm9wZXJ0aWVzIHRoYXQgYXJlIGFzc2lnbmVkIHRvIGdyb3VwcywgeW91IG1heSBwb3RlbnRpYWxseSBjYXVzZSBkYW1hZ2UgYW5kIGJyZWFrIGFuIGV4aXN0aW5nIHNpdGUgPGk+KGVzcGVjaWFsbHkgaWYgeW91IHJlZHVjZSBmaWVsZCBsZW5ndGhzLCBldGMpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdEZW5uZSBmdW5rdGlvbiBmdW5nZXJlciBpa2tlIGkgd2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnRG8gbm90IGNyZWF0ZSBhIHByb3BlcnR5IGZvciB1c2VybmFtZSwgb3Igc29tZSBzdWNoIHRoaW5nIGFzIHRoaXMgaXMgYnVpbHRpbiB0byB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0Vrc3BvcnRlciBicnVnZXIgdGlsIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFa3Nwb3J0ZXInOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0ZXInOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbic7CiRsYW5nWydlZGl0cHJvcCddID0gJ1JlZGlnZXIgZWdlbnNrYWJlcic7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYWtzLiBsJmFlbGlnO25nZGUnOwokbGFuZ1snY3JlYXRlZCddID0gJ09wcmV0dGV0JzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnRlciBlZnRlcic7CiRsYW5nWydzb3J0J10gPSAnU29ydGVyZXInOwokbGFuZ1sndXNlcnNpbmdyb3VwJ10gPSAnQnJ1Z2VyZSBpIGRlKG4pIHZhbGd0ZSBncnVwcGUociknOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnQmVnciZhZWxpZztucyByZXN1bHRhdGVyIHRpbCc7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdLdW5uZSBpa2tlIGZpbmRlIGV0IGVtYWlsIGZlbHQgZm9yIGRlbm5lIGJydWdlci4gS29udGFrdCBzeXN0ZW0gYWRtaW5pc3RyYXRvcmVuLic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBmb3IgRm9yZ290IFBhc3N3b3JkIGZvcm0nOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIENoYW5nZSBTZXR0aW5ncyBmb3JtJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9naW4gKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBsb2dvdXQgKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdTb3J0ZXJpbmdzb3JkZW4nOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnQSBudW1iZXIgb2YgdXNlcnMgYXJlIGluIHRoZSBtaWRkbGUgb2YgcmVzZXR0aW5nIGxvc3QgcGFzc3dvcmRzLiAgQ3VycmVudGx5IHRoaXMgY291bnQgaXMgYXQ6JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnU2xldCBhbGxlIGluZGwmYWVsaWc7ZywgZGVyIGVyIG1lcmUgZW5kIGVuIHVnZSBnYW1sZSc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdTbGV0IGFsbGUgaW5kbCZhZWxpZztnLCBkZXIgZXIgbWVyZSBlbmQgZW4gbSZhcmluZztuZWQgZ2FtbGUnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnU2xldCBhbGxlIGluZGwmYWVsaWc7Zyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnRXIgZHUgc2lra2VyPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ0FuIGludmFsaWQgY29kZSBoYXMgYmVlbiBlbnRlcmVkLCBwbGVhc2UgdHJ5IGFnYWluJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdBIHRlbXBvcmFyeSBjb2RlIGZvciB5b3VyIHVzZXIgaWQgY291bGQgbm90IGJlIGZvdW5kIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgdG8gZGlzcGxheSB2ZXJpZmljYXRpb24gZm9ybSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNlZCBmb3IgZm9yZ290dGVuIHBhc3N3b3JkIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdEaWcgc2VsdiBlbGxlciBlbiBhbmRlbiBoYXIgYWxsZXJlZGUgYmVkdCBvbSBhdCBmJmFyaW5nOyBudWxzdGlsbGV0IGtvZGVvcmRldCBmb3IgZGVubmUgYnJ1Z2VyLiBDaGVjayBkaW4gZW1haWwgLSBkdSBoYXIgbXVsaWd2aXMgZiZhcmluZztldCB5ZGVybGlnZXJlIGluc3RydWt0aW9uZXIgb20gaHZvcmRhbiBkdSBudWxzdGlsbGVyIGRpdCBrb2Rlb3JkIGkgZGluIG1haWxib2tzLic7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRGF0YWJhc2UgZmVqbCc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdEdSBtb2R0YWdlciBkZW5uZSBiZXNrZWQsIGRhIG5vZ2VuIGhhciBnaXZldCB2b3JlcyBzaXRlIGJlc2tlZCBvbSBhdCBkdSBoYXIgbWlzdGV0IGRpdCBrb2Rlb3JkLiBIdmlzIGRldHRlIGVyIHJpZ3RpZ3QsIHMmYXJpbmc7IGwmYWVsaWc7cyBuZWRlbnN0JmFyaW5nO2VuZGUgaW5zdHJ1a3Rpb25lci4gSHZpcyBkdSBpa2tlIGhhciBtaXN0ZXQgZGl0IGtvZGVvcmQga2FuIGR1IHNsZXR0ZSBkZW5uZSBiZXNrZWQgb2cgdmkgdW5kc2t5bGRlciB1bGVqbGlnaGVkZW4uJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnQ29kZSc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdUaGUgZm9sbG93aW5nIGNvZGUgaGFzIGJlZW4gZ2VuZXJhdGVkIHJhbmRvbWx5IGdlbmVyYXRlZCBpbiBvcmRlciB0byB2ZXJpZnkgdGhlIHVzZXIgYWNjb3VudC4gIHdoZW4geW91IGNsaWNrIG9uIHRoZSBsaW5rIGJlbG93IHlvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgZmllbGQgdG8gZW50ZXIgdGhpcyBjb2RlLiAgTm9ybWFsbHkgdGhlIGZpZWxkIGlzIHByZS1jb21wbGV0ZWQgZm9yIHlvdSwgYnV0IGluY2FzZSBpdCBpc24mIzAzOTt0IHRoZSBjb2RlIGlzOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0h2aXMgZHUga2xpa2tlciBwJmFyaW5nOyBkZXQgZiZvc2xhc2g7bGdlbmRlIGxpbmssIHZpbCBkdSBibGl2ZSBzZW5kdCB0aWwgaGplbW1lc2lkZW4sIGh2b3IgZHUga2FuIGluZHRhc3RlIG92ZW5zdCZhcmluZztlbmRlIGtvZGUgb2cgbnVsc3RpbGxlIGRpdCBrb2Rlb3JkOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnR2xlbXQga29kZW9yZCc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ0t1bm5lIGlra2UgZmluZGUgQ01TTWFpbGVyLW1vZHVsZXQnOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnRGVyIGVyIGJsZXZldCBzZW5kdCBlbiBlbWFpbCB0aWwgJXMgbWVkIGluc3RydWt0aW9uZXIgb20gaHZvcmRhbiBkdSBudWxzdGlsbGVyIGRpdCBrb2Rlb3JkLiBUYWsuJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnSGFyIGR1IG1pc3RldCBkaXQga29kZW9yZD8gSW5kdGFzdCBkaXQgYnJ1Z2VybmF2biBoZXIgb2cgaHZpcyB2aSBrYW4gZmluZGUgZGlnIGkgdm9yZXMgZGF0YWJhc2UsIHZpbCB2aSBzZW5kZSBkaWcgZW4gZW1haWwgbWVkIGluc3RydWt0aW9uZXIgdGlsIGh2b3JkYW4gZHUgbnVsc3RpbGxlciBkaXQga29kZW9yZC4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdGb3Jnb3QgUGFzc3dvcmQgVGVtcGF0ZXMnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnTWlzdGV0IGJydWdlcm5hdm4gc2thYmVsb24nOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnRWdlbnNrYWJlbiAlcyBpa2tlIGZ1bmRldCc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAnRWdlbnNrYWJlciBmdW5kZXQnOwokbGFuZ1snYWRkcHJvcCddID0gJ1RpbGYmb3NsYXNoO2ogZWdlbnNrYWInOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0V0IG4mb3NsYXNoO2R2ZW5kaWd0IGZlbHQgKCVzKSB2YXIgdG9tdCc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ0luZHRhc3QgZXQgbnl0IGtvZGVvcmQgaGVyIGZvciBhdCAmYWVsaWc7bmRyZSBkaXQga29kZW9yZCc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ0R1IGVyIGlra2UgbG9nZ2V0IGluZCc7CiRsYW5nWyd1c2VyX3NldHRpbmdzJ10gPSAnSW5kc3RpbGxpbmdlcic7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJlcmluZyc7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ0Rlbm5lIGtvbnRvIGVyIHVkbCZvc2xhc2g7YmV0JzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdJbXByb3BlciBlbWFpbCBhZGRyZXNzIGZvcm1hdHRpbmcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdVZ3lsZGlnIHVkbCZvc2xhc2g7YnNkYXRvJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcnJvciBzZXR0aW5nIHByb3BlcnR5ICVzIGZvciB1c2VyICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnVWd5bGRpZyBncnVwcGUgaWQgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdTa2p1bHQgZmVsdCBtYXJrJm9zbGFzaDtyJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdTa2p1bHQgZmVsdCBmYXJ2ZSc7CiRsYW5nWydoaWRkZW4nXSA9ICdTa2p1bHQnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ0VuIGVnZW5za2FiIG1lZCBkZXQgbmF2biBlciBhbGxlcmVkZSBkZWZpbmVyZXQnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnRGVyIGVyIGlra2UgZGVmaW5lcmV0IG5vZ2VuIGVnZW5za2FiZXInOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdEZXIgZXIgaWtrZSB2YWxndCBub2dlbiBlZ2Vuc2thYmVyIGZvciBkZW5uZSBncnVwcGUnOwokbGFuZ1snbm9ncm91cHMnXSA9ICdEZXIgZXIgaWtrZSBkZWZpbmVyZXQgbm9nZW4gZ3J1cHBlcic7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ0dydXBwZXIgZnVuZGV0JzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdCcnVnZXJlbiBza2FsIHYmYWVsaWc7cmUgbWVkbGVtIGFmIG1pbmRzdCBlbiBncnVwcGUnOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ0tyJmFlbGlnO3YgbWVkbGVtc2thYiBhZiBtaW5kc3QgZW4gZ3J1cHBlJzsKJGxhbmdbJ2JhY2snXSA9ICdUaWxiYWdlJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyBlciBldCBwJmFyaW5nO2tyJmFlbGlnO3ZldCBmZWx0JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNYXJrJmVhY3V0ZTtyIHAmYXJpbmc7a3ImYWVsaWc7dmVkZSBmZWx0ZXIgbWVkJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0ZyZW1oJmFlbGlnO3YgcCZhcmluZztrciZhZWxpZzt2ZWRlIGZlbHRlciBtZWQnOwokbGFuZ1snbmV4dCddID0gJ04mYWVsaWc7c3RlJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnRW4gZ3J1cHBlIG1lZCBkZXQgbmF2biBla3Npc3RlcmVyIGFsbGVyZWRlJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnUCZhcmluZztrciZhZWxpZzt2ZXQgZmVsdCc7CiRsYW5nWydvcHRpb25hbCddID0gJ1ZhbGdmcml0JzsKJGxhbmdbJ29mZiddID0gJ0ZyYSc7CiRsYW5nWydzaXplJ10gPSAnU3Qmb3NsYXNoO3JyZWxzZSc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltdW0gc2l6ZSBvZiBhbnkgb25lIGRpbWVuc2lvbiBvZiB0aGUgaW1hZ2UgaW4gcGl4ZWxzKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMJmFlbGlnO25nZGUnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4odGVnbiBpIHRla3N0IGlucHV0KSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnRHJvcGRvd24gb3B0aW9ucywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzJzsKJGxhbmdbJ3JhZGlvb3B0aW9ucyddID0gJ1JhZGlvYnV0dG9uIGxhYmVscywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzLiBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1Byb21wdCc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cGUnOwokbGFuZ1sndHlwZSddID0gJ1R5cGUnOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdGZWx0IHN0YXR1cyc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdTcCZvc2xhc2g7cmcgcCZhcmluZzsgdmVkPGJyLz5nbGVtdCBicnVnZXJuYXZuJzsKJGxhbmdbJ3RleHQnXSA9ICdUZWtzdCc7CiRsYW5nWydjaGVja2JveCddID0gJ0Fma3J5ZHNuaW5nc2Jva3MnOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdNdWx0aS12YWxnIGxpc3RlJzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ1JhZGlvIGtuYXBwZXInOwokbGFuZ1snaW1hZ2UnXSA9ICdCaWxsZWRlJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW1haWwgYWRyZXNzZSc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1Rla3N0b21yJmFyaW5nO2RlJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24nOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdWZWxrb21tZW4nOwokbGFuZ1snbG9nb3V0J10gPSAnTG9nIHVkJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdCZW55dCBkZXR0ZSBncnVwcGUgbmF2bic7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICcmQUVsaWc7bmRyZSBtaW5lIGluZHN0aWxsaW5nZXInOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdMb2dpbiBmZWpsZWRlIC0gdWd5bGRpZ3QgYnJ1Z2VybmF2biBlbGxlciBrb2Rlb3JkPyc7CiRsYW5nWydsb2dpbiddID0gJ0xvZyBpbmQnOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdMb2cgaW5kIGtuYXAgbGFiZWwnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnQnJ1Z2VybmF2bic7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdFbWFpbCBBZHJlc3NlJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ0tvZGVvcmQnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdIdXNrIG1pZyBwJmFyaW5nOyBkZW5uZSBjb21wdXRlcic7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdHImZWFjdXRlO3InOwokbGFuZ1snZm9yZ290cHcnXSA9ICdHbGVtdCBkaXQga29kZW9yZD8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnR2xlbXQgZGluZSBvcGx5c25pbmdlcj8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdTdGFuZGFyZHYmYWVsaWc7cmRpZXInOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdTa2FiZWxvbic7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdCcnVnZXIgSUQgaWtrZSBmdW5kZXQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0RldCBicnVnZXJuYXZuICglcykgZXIgYWxsZXJlZGUgaSBicnVnJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdCZW55dCBTTVRQIHRpbCBhdCB2YWxpZGVyZSBlbWFpbC1hZHJlc3Nlcj8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnTWluaW11bSBsJmFlbGlnO25nZGUgYWYga29kZW9yZCc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdNYWtzaW1hbCBsJmFlbGlnO25nZGUgYWYga29kZW9yZCc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdNaW5pbXVtIGwmYWVsaWc7bmdkZSBhZiBicnVnZXJuYXZuJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01ha3NpbWFsIGwmYWVsaWc7bmdkZSBhZiBicnVnZXJuYXZuJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb24gdWRlbCZvc2xhc2g7YmVyIGVmdGVyIChpc2VrdW5kZXIpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdCcnVnIGNvb2tpZXMgdGlsIGF0IGhvbGRlIGxpdiBpIGxvZ2luJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnVGlsbGFkIGVtYWlsIHJlZ2lzdHJlcmluZyc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnU3RhbmRhcmQgZ3J1cHBlIGZvciBueWUgYnJ1Z2VyZSc7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ1JlZGlnJmVhY3V0ZTtyIHNrYWJlbG9uIGZvciBpbmRzdGlsbGluZ2VyJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdLb2Rlb3JkZW5lIHZhciBpa2tlIGVucyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdVZ3lsZGlndCBicnVnZXJuYXZuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ1VneWxkaWd0IGtvZGVvcmQnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdSZWRpZyZlYWN1dGU7ciBicnVnZXInOwokbGFuZ1sndmFsaWQnXSA9ICdHeWxkaWcnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdCcnVnZXJuYXZuJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdEZW5uZSBicnVnZXIgZXIgaWtrZSBtZWRsZW0gYWYgbm9nZW4gZ3J1cHBlcic7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnSW5nZW4gZWdlbnNrYWJlcic7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ0F0dGVtcHQgdG8gaW1wb3J0IGR1cGxpY2F0ZSBwcm9wZXJ0aWVzJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnViZhZWxpZztyZGknOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3J1cHBlcic7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnRWdlbnNrYWJlcic7CiRsYW5nWydwcm9wbmFtZSddID0gJ05hdm4gcCZhcmluZzsgZWdlbnNrYWInOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnViZhZWxpZztyZGkgZm9yIGVnZW5za2FiJzsKJGxhbmdbJ2FkZCddID0gJ1RpbGYmb3NsYXNoO2onOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3RvcmllJzsKJGxhbmdbJ2VkaXQnXSA9ICdSZWRpZyZlYWN1dGU7cic7CiRsYW5nWydleHBpcmVzJ10gPSAnVWRsJm9zbGFzaDtiZXInOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3BlY2lmaWNlciBkYXRvJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgdGltZXInOwokbGFuZ1snMjRocnMnXSA9ICcyNCB0aW1lcic7CiRsYW5nWyc0OGhycyddID0gJzQ4IHRpbWVyJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSB1Z2UnOwokbGFuZ1snMndlZWtzJ10gPSAnMiB1Z2VyJzsKJGxhbmdbJzFtb250aCddID0gJzEgbSZhcmluZztuZWQnOwokbGFuZ1snM21vbnRocyddID0gJzMgbSZhcmluZztuZWRlcic7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBtJmFyaW5nO25lZGVyJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSAmYXJpbmc7cic7CiRsYW5nWyduZXZlciddID0gJ0FsZHJpZyc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bGUgaW5zdGFsbGVkIHN1Y2Vzc2Z1bGx5Ljxici8+QmUgc3VyZSB0byBzZXQgdGhlICZxdW90O01vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcyBwZXJtaXNzaW9uLiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ0tvZGVvcmQnOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdJZ2VuJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdFbiBncnVwcGUgbWVkIGRldCBuYXZuIGVrc2lzdGVyZXIgYWxsZXJlZGUnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnUmVkaWcmZWFjdXRlO3IgZ3J1cHBlJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0luZHNlbmQnOwokbGFuZ1snY2FuY2VsJ10gPSAnQW5udWxsZXInOwokbGFuZ1snZGVsZXRlJ10gPSAnU2xldCc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ0VyIGR1IHNpa2tlciBwJmFyaW5nOyBhdCBkZXR0ZSBlciBkZSByaWd0aWdlIGluZHN0aWxsaW5nZXIgZm9yIGRlbm5lIGdydXBwZT8gSHZpcyBkdSBmamVybmVyIGVuIGVnZW5za2FiIGhlciwgdmlsIGRldCBpa2tlIHNsZXR0ZSBlZ2Vuc2thYmVybmUgaSBkYXRhYmFzZW4gZm9yIGRlbm5lIGdydXBwZS4gRGUgdmlsIGJsb3QgdiZhZWxpZztyZSB1dGlsZyZhZWxpZztuZ2VsaWdlLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnRXIgZHUgc2lra2VyIHAmYXJpbmc7IGF0IGR1IHZpbCBzbGV0dGUgZGVubmUgZ3J1cHBlPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnRXIgZHUgc2lra2VyIHAmYXJpbmc7IGF0IGR1IHZpbCBzbGV0dGUgZGVubmUgZWdlbnNrYWIgZnVsZHN0JmFlbGlnO25kaWd0PyBIdmlzIGR1IHNsZXR0ZXIgZGVuIHZpbCBkZXQgb2dzJmFyaW5nOyBzbGV0dGUgYnJ1Z2VyaW5kc2xhZyBtZWQgZGVubmUgZWdlbnNrYWIuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1V0aWxzdHImYWVsaWc7a2tlbGlnZSBwYXJhbWV0cmUnOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWyduYW1lJ10gPSAnTmF2bic7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW1lciBtZWQgYXQgdGlsZiZvc2xhc2g7amUgZW4gZWdlbnNrYWInOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW1lciBtZWQgYXQgdGlsZiZvc2xhc2g7amUgZW4gZ3J1cHBlIHJlbGF0aW9uJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1lciBtZWQgYXQgdGlsZiZvc2xhc2g7amUgZW4gZ3J1cHBlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbWVyIG1lZCBhdCB0aWxmJm9zbGFzaDtqZSBlbiBicnVnZXIgdGlsIGVuIGdydXBwZSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbWVyIG1lZCBhdCBzbGV0dGUgZW4gZWdlbnNrYWInOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdLdW5uZSBpa2tlIGZpbmRlIGVuIGVtYWlsIGFkcmVzc2UnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ0RlciBlciBpa2tlIHNrcml2ZS1yZXR0aWdoZWRlciB0aWwgZGVzdGluYXRpb25zLW1hcHBlbic7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnVWd5bGRpZ2UgcGFyYW1ldHJlJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnS3VubmUgaWtrZSBmaW5kZSBub2dlbiBncnVwcGVyJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQW52ZW5kJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnQnJ1Z2VybmF2bic7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Jlc2tyaXZlbHNlJzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ0dydXBwZW5hdm4nOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWRnYW5nIG4mYWVsaWc7Z3RldCc7CiRsYW5nWydlcnJvciddID0gJ0ZlamwnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdUaWxmJm9zbGFzaDtqIGdydXBwZSc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydCZlYWN1dGU7ciBncnVwcGUnOwokbGFuZ1snYWRkdXNlciddID0gJ1RpbGYmb3NsYXNoO2ogYnJ1Z2VyJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdCcnVnZXJlIG1lZCBkZXQgYW5naXZuZSBrcml0ZXJpZSc7CiRsYW5nWydncm91cCddID0gJ0dydXBwZSc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1YmYWVsaWc7bGcgZ3J1cHBlJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJlcmluZ3Mgc2thYmVsb24nOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnTG9nb3V0IHNrYWJlbG9uJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnTG9naW4gc2thYmVsb24nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdJbmRzdGlsbGluZ2VyJzsKJGxhbmdbJ3VzZXJzJ10gPSAnQnJ1Z2VyZSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udGVuZCBVc2VyIE1hbmFnbWVudCc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ01hbmFnZSBGcm9udGVuZCBVc2Vycyc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnU3RhbmRhcmQgZm9yc2lkZSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnU2lkc3QgdGlsZyZhcmluZztlZGUgc2lkZSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdBbmRlbiBzaWRlOiAnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ1Nrcml2IHRla3N0ZW4gcCZhcmluZzsgYmlsbGVkZXQnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/de_DE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX3Bhc3N3b3Jkbm90Y2hhbmdlZCddID0gJ0JpdHRlIMOkbmRlcm4gc2llIGRhcyBLZW5ud29ydCB1bmQgdmVyZ2V3aXNzZXJuIHNpZSBzaWNoLCBkYXNzIGVzIGtvcnJla3QgaXN0Lic7CiRsYW5nWydtc2dfZm9yY2VfbmV3cHcnXSA9ICdIZXJ6bGljaCBXaWxsa29tbWVuLiBCaXR0ZSBnZWJlbiBzaWUgYXVzIFNpY2hlcmhlaXRzZ3LDvG5kZW4gZWluIG5ldWVzIEtlbm53b3J0IGFuLic7CiRsYW5nWydsYmxfdGVtcGxhdGUnXSA9ICdWb3JsYWdlJzsKJGxhbmdbJ2luZm9fZm9yY2VfbmV3cHdfdGVtcGxhdGUnXSA9ICdEaWVzZSBWb3JsYWdlIGlzdCBmw7xyIGRhcyBGb3JtdWxhciwgbWl0IGRlbSBkZXIgQmVudXR6ZXIgZ2V6d3VuZ2VuIHdpcmQsIHNlaW4gS2VubndvcnQgenUgw6RuZGVybi4nOwokbGFuZ1snZm9yY2VfbmV3cHdfdGVtcGxhdGUnXSA9ICdWb3JsYWdlIOKAnk5ldWVzIEtlbm53b3J0IGVyendpbmdlbuKAnCc7CiRsYW5nWydwcm9tcHRfZm9yY2VfbmV3cHcnXSA9ICdEZW4gQmVudXR6ZXIgZGF6dSB6d2luZ2VuLCBiZWltIG7DpGNoc3RlbiBBbm1lbGRlbiBzZWluIEtlbm53b3J0IHp1csO8Y2t6dXNldHplbic7CiRsYW5nWydwcm9tcHRfZGlzYWJsZWQnXSA9ICdJc3QgZGllc2VzIEJlbnV0emVya29udG8gZGVha3RpdmllcnQ/JzsKJGxhbmdbJ21zZ191c2VyX3N0YXRlX2NoYW5nZWQnXSA9ICdCZW51dHplcnN0YXR1cyBnZcOkbmRlcnQnOwokbGFuZ1snaW5mb19kaXNhYmxlZCddID0gJ0RpZXNlcyBCZW51dHplcmtvbnRvIGlzdCBkZWFrdGl2aWVydDsgQW5tZWxkdW5nIG5pY2h0IG3DtmdsaWNoJzsKJGxhbmdbJ2VuYWJsZV91c2VyJ10gPSAnQmVudXR6ZXJrb250byBha3RpdmllcmVuJzsKJGxhbmdbJ2Rpc2FibGVfdXNlciddID0gJ0JlbnV0emVya29udG8gZGVha3RpdmllcmVuIHVuZCB2ZXJzaWNoZXJuLCBkYXNzIGRlciBCZW51dHplciBhYmdlbWVsZGV0IGlzdCc7CiRsYW5nWydlcnJvcl9hY2NvdW50ZGlzYWJsZWQnXSA9ICdFbnRzY2h1bGRpZ3VuZywgYWJlciBkaWVzZXMgQmVudXR6ZXJrb250byB3dXJkZSBkZWFrdGl2aWVydC4gQml0dGUga29udGFrdGllcmVuIHNpZSBkZW4gV2Vic2VpdGVuYWRtaW5pc3RyYXRvciwgdW0gZGllc2VuIEtvbmZsaWt0IHp1IGzDtnNlbi4nOwokbGFuZ1sndGl0bGVfZm9yZ290cHcnXSA9ICdLZW5ud29ydCB2ZXJnZXNzZW4nOwokbGFuZ1sndmVyaWZ5X2lkZW50aXR5J10gPSAnSWRlbnRpdMOkdCBhdWYgUmljaHRpZ2tlaXQgcHLDvGZlbic7CiRsYW5nWyc0MDNlcnJvciddID0gJ0VpbmVuIEZlaGxlciA0MDMgZ2VuZXJpZXJlbic7CiRsYW5nWydwcm9tcHRfZW5oYW5jZWRwdyddID0gJ0VpbiBzdGFya2VzIEtlbm53b3J0IGVyZm9yZGVybic7CiRsYW5nWydpbmZvX2VuaGFuY2VkcHcnXSA9ICdXZW5uIGFrdGl2aWVydCwgbcO8c3NlbiBLZW5ud8O2cnRlciBtaW5kZXN0ZW5zIGVpbmVuIEdyb8OfYnVjaHN0YWJlbiB1bmQgZWluZSBaaWZmZXIgZW50aGFsdGVuJzsKJGxhbmdbJ3Byb21wdF9wd3JlcXVpcmVkY2hhcnMnXSA9ICdFaW5zIGRpZXNlciBaZWljaGVuIGltIEtlbm53b3J0IGVyZm9yZGVybic7CiRsYW5nWydpbmZvX3B3cmVxdWlyZWRjaGFycyddID0gJ1dlbm4gc3RhcmtlIEtlbm53w7ZydGVyIGFrdGl2aWVydCBzaW5kLCBtdXNzIG1pbmRlc3RlbnMgZWlucyBkZXIgaGllciBhbmdlZ2ViZW5lbiBaZWljaGVuIHp1c8OkdHpsaWNoIHp1IGRlbiBBbmZvcmRlcnVuZ2VuIGFuIHN0YXJrZSBLZW5ud8O2cnRlciB2b3Jrb21tZW4uJzsKJGxhbmdbJ2Vycm9yX2NhbnRzZXRwcm9wZXJ0eXR5cGUnXSA9ICdFaWdlbnNjaGFmdCBkaWVzZW4gVHlwcyBrYW5uIG5pY2h0IGFuZ2VnZWJlbiB3ZXJkZW4nOwokbGFuZ1snaW1wb3J0X2RlbGV0ZWR1c2VyJ10gPSAnQmVudXR6ZXIgJXMgZ2Vsw7ZzY2h0JzsKJGxhbmdbJ2Vycm9yX2V4cG9ydF9ub3VzZXJzJ10gPSAnS2VpbmUgQmVudXR6ZXIgenVtIEV4cG9ydGllcmVuIGdlZnVuZGVuJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRfdXNlcnMnXSA9ICdCZW51dHplciBleHBvcnRpZXJlbic7CiRsYW5nWyd0aXRsZV9leHBvcnRfdXNlcnMnXSA9ICdCZW51dHplciBpbiBBU0NJSS1EYXRlaSBleHBvcnRpZXJlbic7CiRsYW5nWydlcnJvcl9pbXBvcnRncm91cG5hbWUnXSA9ICdVbmfDvGx0aWdlciBvZGVyIGxlZXJlciBHcnVwcGVubmFtZSBhbmdlZ2ViZW4nOwokbGFuZ1sncHJvbXB0X2RlbGltaXRlciddID0gJ1RyZW5uZXInOwokbGFuZ1sncHJvbXB0X2RlbGV0ZV91c2VycyddID0gJ0V4dHJhLUJlbnV0emVyIGzDtnNjaGVuJzsKJGxhbmdbJ3RpdGxlX2ltcG9ydF91c2VycyddID0gJ0JlbnV0emVyIGF1cyBDU1YtRGF0ZWkgaW1wb3J0aWVyZW4nOwokbGFuZ1snZnJvbnRlbmRfYWNjZXNzJ10gPSAnQmV0cmFjaHRlcic7CiRsYW5nWydzb3J0YnlfdXNlcm5hbWVfYXNjJ10gPSAnQmVudXR6ZXJuYW1lIChhdWZzdGVpZ2VuZCknOwokbGFuZ1snc29ydGJ5X3VzZXJuYW1lX2Rlc2MnXSA9ICdCZW51dHplcm5hbWUgKGFic3RlaWdlbmQpJzsKJGxhbmdbJ3NvcnRieV9jcmVhdGVfYXNjJ10gPSAnRXJzdGVsbHVuZ3NkYXR1bSAoYXVmc3RlaWdlbmQpJzsKJGxhbmdbJ3NvcnRieV9jcmVhdGVfZGVzYyddID0gJ0Vyc3RlbGx1bmdzZGF0dW0gKGFic3RlaWdlbmQpJzsKJGxhbmdbJ3NvcnRieV9leHBpcmVzX2FzYyddID0gJ0FibGF1ZmRhdHVtIChhdWZzdGVpZ2VuZCknOwokbGFuZ1snc29ydGJ5X2V4cGlyZXNfZGVzYyddID0gJ0FibGF1ZmRhdHVtIChhYnN0ZWlnZW5kKSc7CiRsYW5nWydlbmNyeXB0ZWQnXSA9ICdWZXJzY2hsw7xzc2VsdCc7CiRsYW5nWydwcm9tcHRfbm9ybWFsbG9naW4nXSA9ICdEaXJla3RlIEFubWVsZHVuZyc7CiRsYW5nWydtb3ZlX3VwJ10gPSAnbmFjaCBvYmVuIGJld2VnZW4nOwokbGFuZ1snbW92ZV9kb3duJ10gPSAnbmFjaCB1bnRlbiBiZXdlZ2VuJzsKJGxhbmdbJ3RpdGxlX3Byb3Btb2R1bGUnXSA9ICdEaWVzZSBFaWdlbnNjaGFmdCB3aXJkIGR1cmNoIGRhcyBNb2R1bCBlcnN0ZWxsdCB1bmQga2FubiBuaWNodCBiZWFyYmVpdGV0IHdlcmRlbic7CiRsYW5nWydub3RfYXZhaWxhYmxlJ10gPSAnTmljaHQgdmVyZsO8Z2Jhcic7CiRsYW5nWydwcm9tcHRfZGZsdF9jaGVja2VkJ10gPSAnU3RhbmRhcmRtw6TDn2lnIHNvbGx0ZSBkaWVzZXMgRmVsZCBtYXJraWVydCBzZWluJzsKJGxhbmdbJ29wZXJhdGlvbl9jb21wbGV0ZWQnXSA9ICdWb3JnYW5nIGFiZ2VzY2hsb3NzZW4nOwokbGFuZ1snbWVtYmVycyddID0gJ01pdGdsaWVkZXInOwokbGFuZ1sndmlld19maWx0ZXInXSA9ICdBbnNpY2h0c2ZpbHRlcic7CiRsYW5nWydkYXRhJ10gPSAnRGF0ZW4nOwokbGFuZ1snYXBwbGllZCddID0gJ8OcYmVybm9tZW4nOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnwqsnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICfigLknOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICfigLonOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICfCuyc7CiRsYW5nWydwYWdlJ10gPSAnU2VpdGUnOwokbGFuZ1sncHJvbXB0X2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnw4RuZGVydW5nIGRlcyBCZW51dHplcm5hbWVucyBlcmxhdWJlbic7CiRsYW5nWydpbmZvX2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnV2VubiBha3RpdmllcnQsIHdlcmRlbiBCZW51dHplciBkaWUgTcO2Z2xpY2hrZWl0IGhhYmVuLCBkZW4gQmVudXR6ZXJuYW1lbiB6dXNhbW1lbiBtaXQgYW5kZXJlbiBFaW5zdGVsbHVuZ2VuIHp1IMOkbmRlcm4nOwokbGFuZ1sndGVtcGxhdGVfc2F2ZWQnXSA9ICdWb3JsYWdlIGdlc3BlaWNoZXJ0JzsKJGxhbmdbJ3RlbXBsYXRlX3Jlc2V0ZGVmYXVsdHMnXSA9ICdWb3JsYWdlIHp1csO8Y2tzZXR6ZW4nOwokbGFuZ1snbGJsX3NldHRpbmdzJ10gPSAnRWluc3RlbGx1bmdlbic7CiRsYW5nWydsYmxfdGVtcGxhdGVzJ10gPSAnVm9ybGFnZW4nOwokbGFuZ1snZW5hYmxlX2NhcHRjaGEnXSA9ICdDYXB0Y2hhIGJlaW0gTG9naW4tRm9ybXVsYXIgYWt0aXZpZXJlbic7CiRsYW5nWydpbmZvX2VuYWJsZV9jYXB0Y2hhJ10gPSAnV2VubiBkZXIgQmVudXR6ZXIgbmljaHQgYW5nZW1lbGRldCBpc3QsIHVuZCBkaWUgTW9kdWxlaW5zdGVsbHVuZyBiZXNhZ3QsIGRhcyBMb2dpbi1Gb3JtdWxhciBhbnp1emVpZ2VuLCBzdGV1ZXJ0IGRpZXNlIE9wdGlvbiBvYiBlaW4gQWJmcmFnZSBkZXMgQ2FwdGNoYS1TaWNoZXJoZWl0c2NvZGUgYXVmIGRlbSBMb2dpbi1CaWxkc2NoaXJtIGFuZ2V6ZWlndCB3aXJkLCB3ZW5uIGVpbiBDYXB0Y2hhLU1vZHVsIGluc3RhbGxpZXJ0IGlzdC4nOwokbGFuZ1sncGFnZXR5cGVfdW5hdXRob3JpemVkJ10gPSAnU2llIHNpbmQgbmljaHQgYXV0b3Jpc2llcnQsIGRpZXNlbiBJbmhhbHQgenUgc2VoZW4nOwokbGFuZ1snaW5mb19jb250ZW50cGFnZV9ncm91cGxpc3QnXSA9ICdHZWJlbiBTaWUgZWluZSBMaXN0ZSBkZXIgRkVVLUdydXBwZW4gYW4sIGRpZSBadWdhbmcgenUgZGllc2VyIFNlaXRlIGhhYmVuIGRhcmYuIEtlaW5lIEF1c3dhaGwgZXJsYXVidCBqZWRlbSBhbmdlbWVsZGV0ZW4gRkVVLUJlbnV0emVyLCBkaWUgU2VpdGUgenUgc2VoZW4uJzsKJGxhbmdbJ3BhZ2V0eXBlX3NldHRpbmdzJ10gPSAnRWluc3RlbGx1bmdlbiBmw7xyIGRpZSBnZXNjaMO8dHp0ZSBTZWl0ZSc7CiRsYW5nWydwYWdldHlwZV9ncm91cHMnXSA9ICdFcmxhdWJ0ZSBHcnVwcGVuJzsKJGxhbmdbJ3BhZ2V0eXBlX2FjdGlvbiddID0gJ0FrdGlvbiBmw7xyIHVuYmVyZWNodGlndGUgWnVncmlmZmUnOwokbGFuZ1snc2hvd2xvZ2luZm9ybSddID0gJ0RhcyBBbm1lbGRlZm9ybXVsYXIgYW56ZWlnZW4nOwokbGFuZ1sncmVkaXJlY3QnXSA9ICdBdWYgZWluZSBTZWl0ZSB3ZWl0ZXJsZWl0ZW4nOwokbGFuZ1sncGFnZXR5cGVfcmVkaXJlY3R0byddID0gJ1dlaXRlcmxlaXRlbiBhdWYnOwokbGFuZ1sncGVybWlzc2lvbnMnXSA9ICdCZXJlY2h0aWd1bmdlbic7CiRsYW5nWydmZXVfcHJvdGVjdGVkX3BhZ2UnXSA9ICdHZXNjaMO8dHp0ZXIgSW5oYWx0JzsKJGxhbmdbJ3Byb21wdF92aWV3cHJvcHMnXSA9ICdXw6RobGVuIFNpZSBadXPDpHR6bGljaGUgRWlnZW5zY2hhZnRlbiBmw7xyIEFuc2ljaHQnOwokbGFuZ1sndmlldyddID0gJ0Fuc2ljaHQnOwokbGFuZ1snaWdub3JlX3VzZXJpZCddID0gJ0lnbm9yaWVyZSBVc2VySUQtU3BhbHRlIGJlaW0gSW1wb3J0aWVyZW4nOwokbGFuZ1snZXhwb3J0X3Bhc3NoYXNoJ10gPSAnRXhwb3J0aWVyZSBkaWUgS2VubndvcnQtaGFzaCBpbiBkaWUgRGF0ZWknOwokbGFuZ1snZXJyb3JfYWRqdXN0c2FsdCddID0gJ1Bhc3N3b3JkLVNhbHQga2FubiBuaWNodCBlaW5nZXN0ZWxsdCB3ZXJkZW4nOwokbGFuZ1sncHJvbXB0X3B3c2FsdCddID0gJ1Bhc3N3b3JkLVNhbHQnOwokbGFuZ1snYWR2YW5jZWRfc2V0dGluZ3MnXSA9ICdXZWl0ZXJlIEVpbnN0ZWxsdW5nZW4nOwokbGFuZ1snaW5mb19zZXNzaW9udGltZW91dCddID0gJ0dlYmVuIFNpZXIgaGllciBkaWUgQW56YWhsIHZvbiBTZWt1bmRlbiBhbiwgbmFjaCBkZXJlbiBBYmxhdWYgaW5ha3RpdmUgQmVudXR6ZXIgYXV0b21hdGlzY2ggdm9uIGRlciBXZWJzZWl0ZSBhYmdlbWVsZGV0IHdlcmRlbic7CiRsYW5nWydwcm9tcHRfZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdCZW51dHplcmFibGF1Zi1JbnRlcnZhbGwnOwokbGFuZ1snbXNnX3NldHRpbmdzY2hhbmdlZCddID0gJ0locmUgRWluc3RlbGx1bmdlbiB3dXJkZW4gYWt0dWFsaXNpZXJ0JzsKJGxhbmdbJ2ZvcmNlZGxvZ291dHRhc2tfZGVzYyddID0gJ0JlbnV0emVyIGluIHJlZ2VsbcOkw59pZ2VuIFplaXRhYnN0w6RuZGVuIGFibWVsZGVuJzsKJGxhbmdbJ3Byb21wdF9mb3JjZWxvZ291dF90aW1lcyddID0gJ1plaXRlbiwgenUgZGVuZW4gZGVyIEJlbnV0emVyIGF1dG9tYXRpc2NoIGFiZ2VtZWxkZXQgd2lyZCc7CiRsYW5nWydpbmZvX2ZvcmNlbG9nb3V0X3RpbWVzJ10gPSAnR2ViZW4gU2llIGhpZXIgZWluZSBkdXJjaCBLb21tYXRhIGdldHJlbm50ZSBMaXN0ZSB2b24gWmVpdGVuIHdpZSB6dW0gQmVpc3BpZWwgSEg6TU0sSEg6TU0gYW4sIGluIGRlbmVuIGRpZSBCZW51dHplciBhdXRvbWF0aXNjaCBhYmdlbWVsZGV0IHdlcmRlbi4gSGlud2VpczogTm90ZSwgdGhpcyB1c2VzIHRoZSBwc3VlZG9jcm9uIG1lY2hhbmlzbSBzbyB5b3UgbXVzdCBiZSBzdXJlIHRoYXQgdGhlIHRpbWVzIGVudGVyZWQgaGVyZSB3aWxsIGNvaW5jaWRlIHJlYXNvbmFibHkgd2l0aCB5b3VyICJwc2V1ZG9jcm9uIGdyYW51bGFyaXR5IiBhbmQgdGhhdCBzdWZmaWNpZW50IHJlcXVlc3RzIHdpbGwgb2NjdXIgdG8geW91ciB3ZWJzaXRlIHRvIGVuc3VyZSB0aGF0IHBzZXVkb2Nyb24gaXMgZXhlY3V0ZWQuJzsKJGxhbmdbJ3Byb21wdF9mb3JjZWxvZ291dF9zZXNzaW9uYWdlJ10gPSAnQmVudXR6ZXIgYXVzc2NobGllw59lbiwgZGllIGFrdGl2IHdhcmVuIGluIDxlbT4oTWludXRlbik8L2VtPic7CiRsYW5nWydpbmZvX2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdXaXJkIGRpZXNlciBXZXJ0IGFuZ2VnZWJlbiwgd2lyZCBqZWRlciBCZW51dHplciwgZGVyIGluIGRpZXNlbSBaZWl0cmF1bSBha3RpdiB3YXIsIG5pY2h0IGF1dG9tYXRpc2NoIGFiZ2VtZWxkZXQnOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGUnXSA9ICdXb2xsZW4gU2llIHdpcmtsaWNoIGRlbiBCZW51dHplciAlcyBsw7ZzY2hlbic7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZWV4dGVuc2lvbiddID0gJ0RpZSBob2NoZ2VsYWRlbmUgRGF0ZWkgZW50c3ByaWNodCBuaWNodCBkZXIgZXJsYXVidGVuIERhdGVpdHlwZW4nOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0FsbGUgZGVtIEZyb250RW5kVXNlcnMtTW9kdWwgenVnZW9yZG5ldGVuIERhdGVuIHd1cmRlbiBnZWzDtnNjaHQnOwokbGFuZ1snaW5mb19lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnV2lyZCBkaWVzIGFrdGl2aWVydCwgd2lyZCBkYXMgTW9kdWwgYXVmIEVyZWlnbmlzc2UgYWNodGVuLCBkaWUgZHVyY2ggZGllIEVjb21tZXJjZSBTdWl0ZSBhdXNnZWzDtnN0IHdlcmRlbi4gRGllIGZvbGdlbmRlbiBFaW5zdGVsbHVuZ2VuIGhhYmVuIG51ciBkYW5uIGVpbmUgQXVzd2lya3VuZywgd2VubiBkaWVzZSBFaW5zdGVsbHVuZyBha3RpdmllcnQgd2lyZC4nOwokbGFuZ1sncHJvbXB0X2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdBdWYgQmVzdGVsbHVuZ2VuIGFjaHRlbic7CiRsYW5nWydpbmZvX3BhaWRyZWdfc2V0dGluZ3MnXSA9ICdEaWUgZm9sZ2VuZGVuIEVpbnN0ZWxsdW5nZW4gd2VyZGVuIG51ciBkYW5uIGFuZ2V3ZW5kZXQsIHdlbm4gc2ljaCBCZW51dHplciBzZWxic3QgcmVnaXN0cmllcmVuIGvDtm5uZW4gdW5kIGJlemFobHRlIFJlZ2lzdHJpZXJ1bmdlbiBlcmxhdWJ0IHNpbmQuJzsKJGxhbmdbJ25vbmUnXSA9ICdLZWluKGVyKSc7CiRsYW5nWydkZWxldGVfdXNlciddID0gJ0JlbnV0emVyIGzDtnNjaGVuJzsKJGxhbmdbJ2V4cGlyZV91c2VyJ10gPSAnQWJnZWxhdWZlbmUgQmVudXR6ZXInOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmNhbmNlbGxlZCddID0gJ0FrdGlvbiwgZGllIGF1c2dlZsO8aHJ0IHdpcmQsIHdlbm4gZGllIEJlc3RlbGx1bmcgZWluZXMgQWJvbm5lbWVudHMgYWJnZWJyb2NoZW4gd2lyZCc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyZGVsZXRlZCddID0gJ0FrdGlvbiwgZGllIGF1c2dlZsO8aHJ0IHdpcmQsIHdlbm4gZGllIEJlc3RlbGx1bmcgZWluZXMgQWJvbm5lbWVudHMgZ2Vsw7ZzY2h0IHdpcmQnOwokbGFuZ1snZWNvbW1lcmNlX3NldHRpbmdzJ10gPSAnZUNvbW1lcmNlLUVpbnN0ZWxsdW5nZW4nOwokbGFuZ1snc2VjdXJlZmllbGRtYXJrZXInXSA9ICdLZW5uemVpY2hudW5nIGbDvHIgc2ljaGVyZSBGZWxkZXInOwokbGFuZ1snc2VjdXJlZmllbGRjb2xvciddID0gJ0ZhcmJlIGbDvHIgc2ljaGVyZSBGZWxkZXInOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdEaWVzZSBEYXRlbiBpbiBkZXIgRGF0ZW5iYW5rIHZlcnNjaGzDvHNzZWx0IHNwZWljaGVybic7CiRsYW5nWydlcnJvcl9ub3RzdXBwb3J0ZWQnXSA9ICdEaWUgZ2V3w6RobHRlIE9wdGlvbiB3aXJkIHZvbiBJaHJlciBha3R1ZWxsZW4gS29uZmlndXJhdGlvbiBuaWNodCB1bnRlcnN0w7x0enQnOwokbGFuZ1snYXVkaXRfdXNlcl9jcmVhdGVkJ10gPSAnQmVudXR6ZXIgd3VyZGUgYXV0b21hdGlzY2ggZXJzdGVsbHQnOwokbGFuZ1snaW5mb19hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnU29sbCBmw7xyIGVpbmVuIEJlbnV0emVyLCBkZXIgw7xiZXIgZWluIGV4dGVybmVzIEF1dGhlbnRpZml6aWVydW5ncy1Nb2R1bCBhbmdlbWVsZGV0IHd1cmRlLCBhYmVyIGRlbSBGcm9udEVuZFVzZXJzLU1vZHVsIG5pY2h0IGJla2FubnQgaXN0LCBhdXRvbWF0aXNjaCBlaW4gRkVVLUtvbnRvIGVyc3RlbGx0IHdlcmRlbj8nOwokbGFuZ1sncHJvbXB0X2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdBdXRvbWF0aXNjaCB1bmJla2FubnRlbiBCZW51dHplciBlcnN0ZWxsZW4nOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ0FuemVpZ2VlaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ2luZm9fc3RkX2F1dGhfc2V0dGluZ3MnXSA9ICdEaWUgZm9sZ2VuZGVuIEVpbnN0ZWxsdW5nZW4gd2VyZGVuIG51ciB2ZXJ3ZW5kZXQsIHdlbm4gU2llIGRpZSAiSW50ZXJuZSBBdXRoZW50aWZpemllcnVuZyIgdmVyd2VuZGVuLic7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHVuJ10gPSAnRGllIEVpbnN0ZWxsdW5nICJOZWluIiBkZWFrdGl2aWVydCBkaWUgTcO2Z2xpY2hrZWl0IGbDvHIgZGllIEJlbnV0emVyLCBlaW4gQW5mcmFnZSBuYWNoIFp1c2VuZHVuZyBkZXIgQW5tZWxkZWRhdGVuIHp1IHN0ZWxsZW4gKHVuYWJow6RuZ2lnIHZvbiBhbmRlcmVuIEVpbnN0ZWxsdW5nZW4pJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0cHcnXSA9ICdEaWUgRWluc3RlbGx1bmcgIk5laW4iIGRlYWt0aXZpZXJ0IGRpZSBNw7ZnbGljaGtlaXQgZsO8ciBkaWUgQmVudXR6ZXIsIGVpbiBadXLDvGNrc2V0emVuIGRlcyBQYXNzd29ydHMgYW56dWZvcmRlcm4gKHVuYWJow6RuZ2lnIHZvbiBhbmRlcmVuIEVpbnN0ZWxsdW5nZW4pJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3R1biddID0gJ0JlbnV0emVybiBlaW5lIEFuZnJhZ2UgbmFjaCBJaHJlbiBCZW51dHplcm5hbWVuIGVybGF1YmVuJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3RwdyddID0gJ0JlbnV0emVybiBlaW5lIEFuZnJhZ2UgenVyIMOEbmRlcnVuZ2VuIGRlcyBQYXNzd29ydHMgZXJsYXViZW4nOwokbGFuZ1snYXV0aF9zZXR0aW5ncyddID0gJ0F1dGhlbnRpZml6aWVydW5nc2VpbnN0ZWxsdW5nZW4nOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdJbnRlcm5lIEF1dGhlbnRpZml6aWVydW5nJzsKJGxhbmdbJ2F1dGhfYnVpbHRpbiddID0gJ0ZFVS1TdGFuZGFyZGF1dGhlbnRpZml6aWVydW5nJzsKJGxhbmdbJ2F1dGhfbW9kdWxlJ10gPSAnQXV0aGVudGlmaXppZXJ1bmdzbW9kdWwvLW1ldGhvZGUnOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ0RhcyBGcm9udGVuZFVzZXJzLU1vZHVsIHVudGVyc3TDvHR6dCBkaWUgQW5tZWxkdW5nIMO8YmVyIGFsdGVybmF0aXZlIEF1dGhlbnRpZml6aWVydW5ncy1NZXRob2RlbiwgbWl0IHVudGVyc2NoaWVkbGljaGVuIE3DtmdsaWNoa2VpdGVuLiBKZWRvY2ggc3RlaGVuIGRhbm4gZWluaWdlIEZ1bmt0aW9uZW4gbmljaHQgenVyIFZlcmbDvGd1bmcgb2RlciB3ZXJkZW4gZGVha3RpdmllcnQsIHdlbm4gbmljaHQgZGllIGVpbmdlYmF1dGUgQXV0aGVudGlmaXppZXJ1bmdzLU1ldGhvZGUgdmVyd2VuZGV0IHdpcmQnOwokbGFuZ1snZXJyb3JfdXNlcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdEZXIgZsO8ciAlcyBmZXN0Z2VsZWd0ZSBXZXJ0IHdpcmQgYmVyZWl0cyB2b24gZWluZW0gYW5kZXJlbiBCZW51dHplciB2ZXJ3ZW5kZXQnOwokbGFuZ1sndW5pcXVlJ10gPSAnRWluZGV1dGlnJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ0RlciBmw7xyICVzIGZlc3RnZWxlZ3RlIFdlcnQgKCVzKSBpc3QgbmljaHQgZWluZGV1dGlnJzsKJGxhbmdbJ3Byb21wdF9mb3JjZV91bmlxdWUnXSA9ICdXZXJ0ZSBmw7xyIGRpZXNlIEVpZ2Vuc2NoYWZ0IHNvbGxlbiBpbiBhbGxlbiBCZW51dHplcmtvbnRlbiBlaW5kZXV0aWcgc2Vpbic7CiRsYW5nWydoZWxwX3JldHVybmxhc3QnXSA9ICdXaXJkIG1pdCBBbi0gdW5kIEFibWVsZGUtRm9ybXVsYXJlbiB2ZXJ3ZW5kZXQuIE1pdCBkaWVzZW0gUGFyYW1ldGVyIGthbm4gZmVzdGdlbGVndCB3ZXJkZW4sIGRhc3MgZGVyIFdlYnNlaXRlbmJlc3VjaGVyIG5hY2ggZGVyIEFubWVsZHVuZyBhdWYgZGllIFNlaXRlIChVUkwpIHdlaXRlcmdlbGVpdGV0IHdlcmRlbiwgZGllIHNpZSB2b3IgZGllc2VyIEFrdGlvbiBhbmdlc2VoZW4gaGFiZW4uIERpZXNlciBQYXJhbWV0ZXIgw7xiZXJzY2hyZWlidCBzw6RtbGljaGUgV2VpdGVybGVpdHVuZ3NlaW5zdGVsbHVuZ2VuIHVuZCAtUGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnV2lyZCBtaXQgZWluZW0gZGVyIEZvcm11bGFyZSB2ZXJ3ZW5kZXQuIERpZXNlciBQYXJhbWV0ZXIgbGVndCBmZXN0LCBvYiBkaWUgRm9ybXVsYXJlIGlubGluZSBhbmdlemVpZ3Qgd2VyZGVuIHNvbGxlbiwgYW5zdGF0dCBkYXNzIGRpZSBFcmdlYm5pc2F1c2dhYmUgbmFjaCDDnGJlcm1pdHRsdW5nIGRlcyBGb3JtdWxhcnMgZGVuIFN0YW5kYXJkLUluaGFsdHNibG9jayBlcnNldHp0Lic7CiRsYW5nWyd0aXRsZV9yZXNldF9zZXNzaW9uJ10gPSAnV2FybnVuZyB2b3IgZGVtIEFibGF1ZiBkZXIgQW5tZWxkZS1TZXNzaW9uJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnRGllIFplaXQgZsO8ciBJaHJlIGFrdHVlbGxlIEFubWVsZHVuZyBhdWYgZGllc2VyIFdlYnNlaXRlIGlzdCBhYmdlbGF1ZmVuLiBCaXR0ZSBrbGlja2VuIFNpZSBhdWYg4oCeT0vigJwsIHVtIHp1IGJlc3TDpHRpZ2VuLCBkYXNzIFNpZSBub2NoIGF1ZiBkaWVzZXIgV2Vic2VpdGUgYWt0aXYgc2luZC4nOwokbGFuZ1snb2snXSA9ICdPSyc7CiRsYW5nWydyZXNldHNlc3Npb25fdGVtcGxhdGUnXSA9ICdTZXNzaW9uLVZvcmxhZ2UgenVyw7xja3NldHplbic7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdEaWVzIGlzdCBkZXIgRmVsZG5hbWUsIGRlciBpbiBTbWFydHkgZsO8ciBkaWUgQWRyZXNzaWVydW5nIHZlcndlbmRldCB3aXJkLiBFciBkYXJmIG51ciBhbHBoYW51bWVyaXNjaGUgWmVpY2hlbiB1bmQgVW50ZXJzdHJpY2hlIChfKSBlbnRoYWx0ZW4uJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ0Jlc3VjaGVyJzsKJGxhbmdbJ2ZldV9ncm91cHNfcHJvbXB0J10gPSAnV8OkaGxlbiBzaWUgZWluZSBvZGVyIG1laHJlcmUgRkVVLUJlbnV0emVyZ3J1cHBlbiwgZGVuZW4gZXMgZXJsYXVidCBpc3QsIGRpZXNlIFNlaXRlIGFuenVzZWhlbic7CiRsYW5nWydlcnJvcl9tdXN0c2VsZWN0X2dyb3VwJ10gPSAnRXMgbXVzcyBlaW5lIEdydXBwZSBhdXNnZXfDpGhsdCB3ZXJkZW4nOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnSWhyZSBBdXN3YWhsJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdTdGFydGphaHInOwokbGFuZ1snZW5kX3llYXInXSA9ICdFbmRqYWhyJzsKJGxhbmdbJ2RhdGUnXSA9ICdEYXR1bSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdHcsO2w59lIGRlcyBWb3JzY2hhdWJpbGQnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ0F1c2bDvGhyZW4sIHdlbm4gZGllIEJlbnV0emVyZ3J1cHBlIGdlw6RuZGVydCB3dXJkZSc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdGw7xyIGRpZXNlIEFrdGlvbiB3dXJkZW4genUgdmllbGUgQmVudXR6ZXIgYXVzZ2V3w6RobHQuIEJpdHRlIGJlc2NocsOkbmtlbiBTaWUgc2ljaCBhdWYgMjUwIChvZGVyIHdlbmlnZXIpLic7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9zZWxlY3RlZCddID0gJ1dvbGxlbiBTaWUgd2lya2xpY2ggZGllIGF1c2dld8OkaGx0ZW4gQmVudXR6ZXIgbMO2c2NoZW4/JzsKJGxhbmdbJ2RlbGV0ZV9zZWxlY3RlZCddID0gJ0F1c2dld8OkaGx0ZSBCZW51dHplciBsw7ZzY2hlbic7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdFaW5lbiB6dWbDpGxsaWdlbiBCZW51dHplcm5hbWVuIGVyemV1Z2VuLCB3ZW5uIGVpbiBuZXVlciBCZW51dHplciBoaW56dWdlZsO8Z3Qgd2lyZCc7CiRsYW5nWydtb250aHMnXSA9ICdNb25hdGUnOwokbGFuZ1sncHJvbXB0X2V4cGlyZWFnZSddID0gJ1ZvcmVpbmdlc3RlbGx0ZSBaZWl0IGJpcyB6dW0gVmVyZmFsbCBkZXMgQmVudXR6ZXJrb250b3MnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnQmVuYWNocmljaHRpZ3VuZ3MtRWluc3RlbGx1bmdlbic7CiRsYW5nWydwcm9wZXJ0eV9zZXR0aW5ncyddID0gJ0VpZ2Vuc2NoYWZ0cy1FaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ3JlZGlyZWN0aW9uX3NldHRpbmdzJ10gPSAnV2VpdGVybGVpdHVuZ3MtRWluc3RlbGx1bmdlbic7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnQWxsZ2VtZWluZSBFaW5zdGVsbHVuZ2VuJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdFaW5zdGVsbHVuZ2VuIGbDvHIgU2Vzc2lvbnMgdW5kIENvb2tpZXMnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdGZWxkLUVpbnN0ZWxsdW5nZW4nOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnRGllIEtlbm56ZWljaG51bmcgZsO8ciB2ZXJnZXNzZW5lIEJlbnV0emVybmFtZW4ga2FubiBudXIgYmVpIFBmbGljaHRmZWxkZXJuIHZlcndlbmRldCB3ZXJkZW4uJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ0luIGRpZXNlbSBUZXh0YmVyZWljaCBkaWUgVmVyd2VuZHVuZyBlaW5lcyBXWVNJV1lHLUVkaXRvcnMgZXJsYXViZW4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnQmVudXR6ZXItQmVhcmJlaXR1bmcnOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdLZWluZSBJbmxpbmUtRm9ybXVsYXJlIHZlcndlbmRlbic7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0tsaWNrZW4gU2llIGhpZXIsIHdlbm4gU2llIHNpY2ggbmljaHQgbWVociBhbiBkaWUgRGV0YWlscyBJaHJlciBBbm1lbGR1bmcgZXJpbm5lcm4ga8O2bm5lbic7CiRsYW5nWydpbmZvX2ZvcmdvdHB3J10gPSAnS2xpY2tlbiBTaWUgaGllciwgd2VubiBTaWUgc2ljaCBuaWNodCBtZWhyIGFuIElociBQYXNzd29ydCBlcmlubmVybiBrw7ZubmVuJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnWnVtIEFibWVsZGVuIGhpZXIga2xpY2tlbic7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2xpY2tlbiBTaWUgaGllciwgdW0gSWhyIFBhc3N3b3J0IG9kZXIgYW5kZXJlIEluZm9ybWF0aW9uZW4genUgw6RuZGVybi4nOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdWb3JsYWdlIGbDvHIgZGllIEJlbnV0emVyYW56ZWlnZSc7CiRsYW5nWydldmVudCddID0gJ0VyZWlnbmlzJzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUtRXJlaWduaXNiZW5hY2hyaWNodGlndW5nZW4nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnRS1NYWlsLUFkcmVzc2UgZsO8ciBCZW5hY2hyaWNodGlndW5nZW4nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGbDvHIgRS1NYWlsLUJlbmFjaHJpY2h0aWd1bmdlbic7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdCZXRyZWZmIGRlciBFLk1haWwtQmVuYWNocmljaHRpZ3VuZyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ0UtTWFpbC1CZW5hY2hyaWNodGlndW5nZW4nOwokbGFuZ1snT25Mb2dpbiddID0gJ0F1c2bDvGhyZW4sIHdlbm4gc2ljaCBlaW4gQmVudXR6ZXIgYW5tZWxkZXQnOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdBdXNmw7xocmVuLCB3ZW5uIHNpY2ggZWluIEJlbnV0emVyIGFibWVsZGV0JzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ0F1c2bDvGhyZW4sIHdlbm4gZWluZSBCZW51dHplci1TZXNzaW9uIGFibMOkdWZ0JzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ0F1c2bDvGhyZW4sIHdlbm4gZWluIEJlbnV0emVya29udG8gbmV1IGVyc3RlbGx0IHd1cmRlJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ0F1c2bDvGhyZW4sIHdlbm4gZWluIEJlbnV0emVya29udG8gZ2Vsw7ZzY2h0IHd1cmRlJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ0F1c2bDvGhyZW4sIHdlbm4gQmVudXR6ZXJkYXRlbiBha3R1YWxpc2llcnQgd3VyZGVuJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdBdXNmw7xocmVuLCB3ZW5uIGVpbmUgQmVudXR6ZXJncnVwcGUgbmV1IGVyc3RlbGx0IHd1cmRlJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdBdXNmw7xocmVuLCB3ZW5uIGVpbmUgQmVudXR6ZXJncnVwcGUgZ2Vsw7ZzY2h0IHd1cmRlJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnRGllIERhdGVuIHp1bSBBdWZmaW5kZW4gdmVybG9yZW5lciBQYXNzd8O2cnRlciB3dXJkZW4gdm9sbHN0w6RuZGlnIGVpbmdlZ2ViZW4uIFdpciBoYWJlbiBlaW5lbiBCZW51dHplcm5hbWVuIGdlZnVuZGVuLCBkZXIgZGVuIHZvbiBJaG5lbiBlaW5nZWdlYmVuZW4gRGV0YWlscyBlbnRzcHJpY2h0Lic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnSWhyIEJlbnV0emVybmFtZSBpc3QnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnV2lyIGVtcGZlaGxlbiBJaG5lbiwgZGllc2UgSW5mb3JtYXRpb24gYW4gc2ljaGVyZXIgU3RlbGxlIGF1Znp1YmV3YWhyZW4uJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdTZWl0ZW4tSUQvLUFsaWFzIGRlciBTZWl0ZSwgYXVmIGRpZSBuYWNoIGRlbSDDhG5kZXJuIGRlciBFaW5zdGVsbHVuZ2VuIGdlc3BydW5nZW4gd2VyZGVuIHNvbGwnOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnU2VpdGVuLUlELy1BbGlhcyBkZXIgU2VpdGUsIGF1ZiBkaWUgbmFjaCBkZXIgQ29kZS1QcsO8ZnVuZyBnZXNwcnVuZ2VuIHdlcmRlbiBzb2xsIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdEZXRhaWxzLVRlbXBsYXRlIGJlaSB2ZXJnZXNzZW5lbSBCZW51dHplcm5hbWVuJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnQmVzdMOkdGlndW5ncy1UZW1wbGF0ZSBiZWkgdmVyZ2Vzc2VuZW0gQmVudXR6ZXJuYW1lbic7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0ZFSExFUjogTWVociBhbHMgZWluIEJlbnV0emVyLUtvbnRvIGVudHNwcmljaHQgZGVuIGdlc3VjaHRlbiBFaWdlbnNjaGFmdGVuJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0ZFSExFUjogS29ubnRlIGRlbiBnZXN1Y2h0ZW4gQmVudXR6ZXIgbmljaHQgZmluZGVuJzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdGRUhMRVI6IEtvbm50ZSBrZWluZSBHcnVwcGUgbWl0IGRpZXNlbSBOYW1lbiBmaW5kZW4nOwokbGFuZ1sncmVhZG9ubHknXSA9ICdOdXIgbGVzZW4nOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ0tsYXNzZSB6dXIgQmVhcmJlaXR1bmcgdm9uIEJlbnV0emVybic7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdEdXJjaCBkZW4gQWRtaW5pc3RyYXRvciBhYmdlbWVsZGV0JzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdOdXIgZGllIGFuZ2VtZWxkZXRlbiBCZW51dHplciBhbnplaWdlbic7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnRGllc2VuIEJlbnV0emVyIGFibWVsZGVuJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ0JlbnV0emVyZWlnZW5zY2hhZnRlbic7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0JlbnV0emVyLUdlc2NoaWNodGUnOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0aWVyZW4nOwokbGFuZ1snY2xlYXInXSA9ICdMw7ZzY2hlbic7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdCZW51dHplcmdlc2NoaWNodGUgaW4gZWluZSBBU0NJSS1EYXRlaSBleHBvcnRpZXJlbic7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ0RhdGVuc8OkdHplIGRlciBCZW51dHplcmdlc2NoaWNodGUgbMO2c2NoZW4sIGRpZSBtaW5kZXN0ZW5zJzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0hhYmVuIFNpZSBJaHJlIFp1Z2FuZ3NkYXRlbiB2ZXJnZXNzZW4/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0dydXBwZW4tRGVmaW5pdGlvbiAodW5kIEVpZ2Vuc2NoYWZ0ZW4pIGFscyBYTUwtRGF0ZWkgZXhwb3J0aWVyZW4nOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ1ZlcndhbHR1bmcgZGVyIEJlbnV0emVyZ2VzY2hpY2h0ZW4nOwokbGFuZ1sneWVzJ10gPSAnSmEnOwokbGFuZ1snbm8nXSA9ICdOZWluJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ3Zvbic7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBLZWluZSBCZXNjaHLDpG5rdW5nICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ0VpbmUgU3R1bmRlIGFsdCc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdTZWNocyBTdHVuZGVuIGFsdCc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdad8O2bGYgU3R1bmRlbiBhbHQnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdFaW5lbiBUYWcgYWx0JzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ0VpbmUgV29jaGUgYWx0JzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdad2VpIFdvY2hlbiBhbHQnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ0VpbmVuIE1vbmF0IGFsdCc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnRHJlaSBNb25hdGUgYWx0JzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnU2VjaHMgTW9uYXRlIGFsdCc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdFaW4gSmFociBhbHQnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3J1cHBpZXJ1bmcgdW5kIFNvcnRpZXJ1bmcnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ01pdCBkZW4gdm9yZ2VnZWJlbmVuIEtyaXRlcmllbiDDvGJlcmVpbnN0aW1tZW5kZSBEYXRlbnPDpHR6ZSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ05hY2ggQmVudXR6ZXJuYW1lbiBhYnN0ZWlnZW5kJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdOYWNoIEJlbnV0emVybmFtZW4gYXVmc3RlaWdlbmQnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfZGVzYyddID0gJ05hY2ggRGF0dW0gYWJzdGVpZ2VuZCc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdOYWNoIERhdHVtIGF1ZnN0ZWlnZW5kJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ05hY2ggRXJlaWduaXN0eXAgYWJzdGVpZ2VuZCc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ05hY2ggRXJlaWduaXN0eXAgYXVmc3RlaWdlbmQnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnTmFjaCBJUC1BZHJlc3NlIGFic3RlaWdlbmQnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdOYWNoIElQLUFkcmVzc2UgYXVmc3RlaWdlbmQnOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ0tlaW5lIEdlc2NoaWNodGUgdm9yaGFuZGVuJzsKJGxhbmdbJ3Jlc2V0J10gPSAnWnVyw7xja3NldHplbic7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdHcnVwcGVuIG5hY2ggSVAtQWRyZXNzZSc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0VyZWlnbmlzdHlwZW4tRmlsdGVyJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1plaWd0IG51ciBFcmVpZ25pc3NlIGFuLCBkaWUgZ2VyaW5nZXIgc2luZCBhbHM6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdTZWl0ZW5saW1pdCc7CiRsYW5nWydmb3InXSA9ICdmw7xyJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnQmVyaWNodCB6dXIgQmVudXR6ZXJnZXNjaGljaHRlJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdVbmJla2FubnQnOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQLUFkcmVzc2UnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ0VyZWlnbmlzLVR5cCc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdHVtJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdadXLDvGNrJzsKJGxhbmdbJ2ltcG9ydF9jb21wbGV0ZV9tc2cnXSA9ICdEYXRlbmltcG9ydCBrb21wbGV0dCc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdaZWlsZW4gdmVyYXJiZWl0ZXQnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0ZlaGxlciBhdWZnZXRyZXRlbic7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnRGF0ZW5zw6R0emUgaGluenVnZWbDvGd0JzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdLZWluZSBFaWdlbnNjaGFmdGVuIGbDvHIgZGllIEdydXBwZSAlcyBnZWZ1bmRlbic7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ0tlaW5lIEFudHdvcnQgdm9tIFNNVFAtU2VydmVyIGVyaGFsdGVuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0RpZSBEYXRlaSAoJXMpIGtvbm50ZSBuaWNodCBnZWZ1bmRlbiB3ZXJkZW4nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ1VuZ8O8bHRpZ2VyIFdlcnQgZsO8ciBkYXMgTGlzdGVuZmVsZCBvZGVyIGRhcyBGZWxkIHp1ciBNZWhyZmFjaGF1c3dhaGwgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdEYXMgRmVsZCAlcyDDvGJlcnNjaHJlaXRldCBkaWUgbWF4aW1hbCBtw7ZnbGljaGUgTMOkbmdlJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGluc2VydHVzZXInXSA9ICdFcyBnYWIgZWluIFByb2JsZW0gYmVpbSBFcnN0ZWxsZW4gZGVzIEJlbnV0emVycyDigJ4lc+KAnC4nOwokbGFuZ1snZXJyb3JfaW1wb3J0dXBkYXRldXNlciddID0gJ0VzIGdhYiBlaW4gUHJvYmxlbSBiZWltIEFrdHVhbGlzaWVyZW4gZGVzIEJlbnV0emVycyDigJ4lc+KAnC4nOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQtRmVobGVyIChaZWlsZSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdLb25udGUgZGllIEVpZ2Vuc2NoYWZ0c2RlZmluaXRpb24gbmljaHQgYWJydWZlbiAoaW50ZXJuZXIgRmVobGVyKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdQcm9ibGVtIGJlaW0gRWluc3RlbGxlbiBkZXIgQmVudXR6ZXJpbmZvcm1hdGlvbic7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnS29ubnRlIGtlaW5lIFNwYWx0ZSBmaW5kZW4sIGRpZSBtaXQgZGVtIGVyZm9yZGVybGljaGVuIEZlbGQgJXMgw7xiZXJlaW5zdGltbXQnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3BlcnRpZXMnXSA9ICdLb25udGUgZsO8ciBkaWUgZmVzdGdlbGVndGUgR3J1cHBlIGtlaW5lIEVpZ2Vuc2NoYWZ0ZW4gZmluZGVuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnXSA9ICdEaWUgenUgaW1wb3J0aWVyZW5kZW4gRGF0ZWkgaGF0IGRhcyBmYWxzY2hlIEZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnS29ubnRlIGRpZSBEYXRlaSBuaWNodCDDtmZmbmVuJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdCZW51dHplciBpbiBkaWVzZSBHcnVwcGUgaW1wb3J0aWVyZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnQ1NWLURhdGVpIGF1c3fDpGhsZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdYTUwtRGF0ZWkgYXVzd8OkaGxlbic7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcnMnXSA9ICdCZW51dHplciBleHBvcnRpZXJlbic7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdCZW51dHplciBpbXBvcnRpZXJlbic7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdMw7ZzY2hlbic7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ1ppZWxwZmFkIGbDvHIgZGFzIEJpbGQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdFcyBpc3QgZWluIFByb2JsZW0gbWl0IGVpbmVyIGZlaGxlbmRlbiwgYWJlciBlcmZvcmRlcmxpY2hlbiAoaG9jaHp1bGFkZW5kZW4pIERhdGVpIGF1ZmdldHJldGVuJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdLb25udGUgZGllIGFuZ2VnZWJlbmUgWE1MLURhdGVpIG5pY2h0IHZlcmFyYmVpdGVuJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdEaWUgR3J1cHBlIGtvbm50ZSBuaWNodCBnZWzDtnNjaHQgd2VyZGVuLCBkYSBzaWUgbm9jaCBCZW51dHplciBlbnRow6RsdC4nOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ0RpZXNlciBCZW51dHplciBpc3QgYmVyZWl0cyBhbmdlbWVsZGV0JzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ0RlciBUZXh0IGF1cyBkZW0gQmlsZCB3dXJkZSBuaWNodCByaWNodGlnIGVpbmdlZ2ViZW4nOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ0RlbiBCZW51dHplcm4gZXJsYXViZW4sIHNpY2ggbWVociBhbHMgZWlubWFsIGFuenVtZWxkZW4nOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ05hbWVuc2Vyd2VpdGVydW5nZW4gZsO8ciBCaWxkZXIsIGRpZSBkZXIgQmVudXR6ZXIgaG9jaGxhZGVuIGRhcmYnOwokbGFuZ1snZXZlbnRfaGVscF9PblJlZnJlc2hVc2VyJ10gPSAnPGgzPk9uUmVmcmVzaFVzZXI8L2gzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gdGhlIHVzZXIgc2Vzc2lvbiBpcyByZWZyZXNoZWQuPC9wPg0KPGg0PlBhcmFtZXRlcnM6PC9oND4NCjx1bD4NCiAgPGxpPjxlbT5pZDwvZW0+IC0gVGhlIFVzZXIgaWQ8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QXVzZsO8aHJlbiwgd2VubiBlaW4gQmVudXR6ZXJrb250byBnZWzDtnNjaHQgd3VyZGU8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIGRlciBCZW51dHplcm5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gZGllIEJlbnV0emVyLUlEPC9saT4NCjxsaT48ZW0+cHJvcHM8L2VtPiAtIEVpbiBIYXNoLCBkZXIgbWl0IGRlbiBFaWdlbnNjaGFmdGVuIGRlcyBCZW51dHplcnMgZ2Vmw7xsbHQgd3VyZGU8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICc8aDM+T25DcmVhdGVVc2VyPGgzPg0KPHA+QXVzZsO8aHJlbiwgd2VubiBlaW4gQmVudXR6ZXJrb250byBuZXUgZXJzdGVsbHQgd3VyZGU8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIGRlciBCZW51dHplcm5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gZGllIEJlbnV0emVyLUlEPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkF1c2bDvGhyZW4sIHdlbm4gQmVudXR6ZXJkYXRlbiBha3R1YWxpc2llcnQgd3VyZGVuIChlbnR3ZWRlciBkdXJjaCBpaG4gc2VsYnN0IG9kZXIgZHVyY2ggZGVuIEFkbWluaXN0cmF0b3IpPC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIGRlciBCZW51dHplcm5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gZGllIEJlbnV0emVyLUlEPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+QXVzZsO8aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyZ3J1cHBlIG5ldSBlcnN0ZWxsdCB3dXJkZTwvcD4NCjxoND5QYXJhbWV0ZXI8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBkZXIgQmVudXR6ZXJncnVwcGVuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIGRpZSBCZXNjaHJlaWJ1bmcgZGVyIEJlbnV0emVyZ3J1cHBlPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIGRpZSBCZW51dHplcmdydXBwZW4tSUQ8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BdXNmw7xocmVuLCB3ZW5uIGVpbmUgQmVudXR6ZXJncnVwcGUgZ2Vsw7ZzY2h0IHd1cmRlPC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIGRlciBCZW51dHplcmdydXBwZW5uYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIGRpZSBCZW51dHplcmdydXBwZW4tSUQ8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5BdXNmw7xocmVuLCB3ZW5uIHNpY2ggZWluIEJlbnV0emVyIGFubWVsZGV0PC9wPg0KPGg0PlBhcmFtZXRlcjwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBkaWUgSUQgZGVzIGFuZ2VtZWxkZXRlbiBCZW51dHplcnM8L2xpPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gZGVyIE5hbWUgZGVzIGFuZ2VtZWxkZXRlbiBCZW51dHplcnM8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gZGllIElQLUFkcmVzc2UgZGVzIENsaWVudHM8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxoMz5PbkxvZ291dDxoMz4NCjxwPkF1c2bDvGhyZW4sIHdlbm4gc2ljaCBlaW4gQmVudXR6ZXIgYWJtZWxkZXQ8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIGRlciBOYW1lIGRlcyBhYmdlbWVsZGV0ZW4gQmVudXR6ZXJzPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIGRpZSBCZW51dHplci1JRDwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxoMz5PblNlc3Npb25FeHBpcnk8L2gzPg0KPHA+QXVzZsO8aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyLVNlc3Npb24gYWJsw6R1ZnQ8L3A+DQo8aDQ+UGFyYW1ldGVyPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIGRlciBOYW1lIGRlcyBCZW51dHplcnMgZGVyIGFiZ2VsYXVmZW5lbiBTaXR6dW5nPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIGRpZSBCZW51dHplci1JRCBkZXIgYWJnZWxhdWZlbmVuIFNpdHp1bmc8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnQXVzZsO8aHJlbiwgd2VubiBzaWNoIGVpbiBCZW51dHplciBpbSBTeXN0ZW0gYW5tZWxkZXQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0F1c2bDvGhyZW4sIHdlbm4gc2ljaCBlaW4gQmVudXR6ZXIgaW0gU3lzdGVtIGFibWVsZGV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQXVzZsO8aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyLVNpdHp1bmcgYWJsw6R1ZnQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdBdXNmw7xocmVuLCB3ZW5uIGVpbiBuZXVlciBCZW51dHplciBlcnN0ZWxsdCB3dXJkZSc7CiRsYW5nWydldmVudF9pbmZvX09uUmVmcmVzaFVzZXInXSA9ICdBdXNmw7xocmVuLCB3ZW5uIGRpZSBCZW51dHplci1TaXR6dW5nIGVybmV1ZXJ0IHdpcmQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdBdXNmw7xocmVuLCB3ZW5uIGRpZSBJbmZvcm1hdGlvbmVuIHp1IGVpbmVtIEJlbnV0emVyIGFrdHVhbGlzaWVydCB3dXJkZW4nOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBdXNmw7xocmVuLCB3ZW5uIGVpbiBCZW51dHplcmtvbnRvIGdlbMO2c2NodCB3dXJkZSc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdBdXNmw7xocmVuLCB3ZW5uIGVpbmUgQmVudXR6ZXJncnVwcGUgZXJzdGVsbHQgd3VyZGUnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZUdyb3VwJ10gPSAnQXVzZsO8aHJlbiwgd2VubiBlaW5lIEJlbnV0emVyZ3J1cHBlIGFrdHVhbGlzaWVydCB3dXJkZSc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdBdXNmw7xocmVuLCB3ZW5uIGVpbmUgQmVudXR6ZXJncnVwcGUgZ2Vsw7ZzY2h0IHd1cmRlJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdBZG1pbmlzdHJhdGlvbnMtR3J1cHBlJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogRGllIGZvbGdlbmRlbiBGZWxkZXIgc2luZCBrb21wbGV0dGUgU21hcnR5LVRlbXBsYXRlcy48YnIgLz5OZWJlbiBkZW4gYW5kZXJlbiwgYmVyZWl0cyBleGlzdGllcmVuZGVuIFNtYXJ0eS1WYXJpYWJsZW4gc3RlaGVuIElobmVuIGpldHp0IGRpZSBWYXJpYWJsZW4geyR1c2VybmFtZX0gdW5kIHskZ3JvdXB9IHp1ciBWZXJmw7xndW5nLiA8ZW0+KERpZSBWYXJpYWJsZSB7JGdyb3VwfSBlbnRow6RsdCBkaWUgZXJzdGUgQmVudXR6ZXJncnVwcGUsIGRlciBkZXIgQmVudXR6ZXIgYW5nZWjDtnJ0Lik8L2VtPi4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0JlYXJiZWl0ZW4gU2llIGRpZXNlcyBGZWxkLCB1bSBkYXMgUGFzc3dvcnQgZGVzIEJlbnV0emVycyB6dXLDvGNrenVzZXR6ZW4uJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdCZWFyYmVpdGVuIFNpZSBkaWVzZXMgRmVsZCwgdW0gZGFzIFBhc3N3b3J0IGRlcyBCZW51dHplcnMgenVyw7xja3p1c2V0emVuLic7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdFaW4gQmVudXR6ZXIgbWl0IGRpZXNlbSBCZW51dHplcm5hbWVuIGV4aXN0aWVydCBiZXJlaXRzLic7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdWb20gQ1NWLUV4cG9ydCB3dXJkZW4ga2VpbmUgRGF0ZW4genVyw7xja2dlZ2ViZW4uJzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0zDpG5nZSBkZXMgQmVudXR6ZXJuYW1lbi1GZWxkZXMnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnTMOkbmdlIGRlcyBQYXNzd29ydC1GZWxkZXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ0JlaW0gVW50ZXItL8OcYmVyc2NocmVpdGVuIGRpZXNlciBMw6RuZ2UgaXN0IGRhcyBQYXNzd29ydCB1bmfDvGx0aWcuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdCZWltIFVudGVyLS/DnGJlcnNjaHJlaXRlbiBkaWVzZXIgTMOkbmdlIGlzdCBkZXIgQmVudXR6ZXJuYW1lIHVuZ8O8bHRpZy4nOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ1VuZ8O8bHRpZ2UgRS1NYWlsLUFkcmVzc2UnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdGw7xyIGRpZXNlcyBCZW51dHplcmtvbnRvIHd1cmRlIGtlaW5lIEUtTWFpbC1BZHJlc3NlIGdlZnVuZGVuLic7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBiZWltIFNldHplbiBkZXIgQmVudXR6ZXJpbmZvcm1hdGlvbmVuJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsZW0gYmVpbSBTZXR6ZW4gZGVyIEVpZ2Vuc2NoYWZ0ZW4nOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ0JlbnV0emVyICVzID0gJXMgd3VyZGUgaGluenVnZWbDvGd0JzsKJGxhbmdbJ3VzZXJfZGVsZXRlZCddID0gJ0JlbnV0emVyIG1pdCBkZXIgdWlkPSVzIHd1cmRlIGdlbMO2c2NodCc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ0VpZ2Vuc2NoYWZ0JzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdXZXJ0IChyZWd1bMOkcmVyIEF1c2RydWNrKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1dhcm51bmc6IERpZXNlIEZlbGRlciBiZWVpbmZsdXNzZW4gZGllIEdyw7bDn2UgZGVyIEVpbmdhYmVmZWxkZXIgaW4gRm9ybXVsYXJlbi4gRGllIFZlcnJpbmdlcnVuZyBkaWVzZXIgWmFobCBpc3QgZGFoZXIgYXVmIGVpbmVyIGJlcmVpdHMgZXhpc3RpZXJlbmRlbiBTZWl0ZSBuaWNodCByYXRzYW0uJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdXb2xsZW4gU2llIHdpcmtsaWNoIGRpZSBNb2R1bGVpbnN0ZWxsdW5nZW4gw6RuZGVybj8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0RpZXNlIEUtTWFpbC1BZHJlc3NlIGlzdCBiZXJlaXRzIGluIFZlcndlbmR1bmcuJzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ0Nvb2tpZXMgZsO8ciBkaWUgU3BlaWNoZXJ1bmcgZGVyIEFubWVsZGVkZXRhaWxzIHZlcndlbmRlbic7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ0RlciBOYW1lIGRlcyBDb29raWVzJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnRS1NYWlsLUFkcmVzc2R1cGxpa2F0ZSBlcmxhdWJlbic7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdEaWUgRS1NYWlsLUFkcmVzc2Ugc29sbCBkZXIgQmVudXR6ZXJuYW1lIHNlaW4nOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnRXMgd2lyZCB2ZXJzdWNodCwgZGllIGVyZm9sZ3JlaWNoZSBBbm1lbGR1bmcgw7xiZXIgZWluZW4gQ29va2llIGF1ZiBkZW0gUmVjaG5lciB6dSBzcGVpY2hlcm4gPGVtPihkZXIgQ29va2llIHdpcmQgYmVpIGVudHNwcmVjaGVuZGVuIEFrdGl2aXTDpHRlbiBhdWYgZGVyIFdlYnNlaXRlIHp1csO8Y2sgZ2VzZXR6dCk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcoZXJsYXVidCBtZWhyZXJlbiBCZW51dHplcm4gZGllIE51dHp1bmcgZGVyIGdsZWljaGVuIEUtTWFpbC1BZHJlc3NlKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKGRpZSBFLU1haWwtQWRyZXNzZSBkZXMgQmVudXR6ZXJzIGlzdCBzZWluIEJlbnV0emVybmFtZSAtLSB2ZXJ3ZW5kZW4gU2llIGRpZXNlIEVpbnN0ZWxsdW5nIE5JRU1BTFMgenVzYW1tZW4gbWl0ICJFLU1haWwtQWRyZXNzZHVwbGlrYXRlIGVybGF1YmVuIiEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnRXJuZXV0ZSBBbmZyYWdlICJQYXNzd29ydCB2ZXJnZXNzZW4iIGVybGF1YmVuPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoZXJsYXVidCBlaW5lbSBCZW51dHplciBkaWUgZXJuZXV0ZSBBbmZyYWdlIGF1ZiBkYXMgWnVyw7xja3NldHplbiBkZXMgUGFzc3dvcnRlcywgYXVjaCB3ZW5uIGVyIGF1ZiBlaW5lIHZvcmFuZ2VnYW5nZW5lIFp1csO8Y2tzZXR6dW5nIG5pY2h0IHJlYWdpZXJ0IGhhdCknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdGcm9udGVuZFVzZXItc3BlemlmaXNjaGUgQmVyZWNodGlndW5nZW4gdmVyd2VuZGVuPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsZXJ3ZWlzZSBlbnRzcHJlY2hlbiBkaWUgRkVVc2VycyBCZXJlY2h0aWd1bmdlbiBkZW5lbiBhdXMgZGVyIEFkbWluaXN0cmF0aW9uIHdpZSBldHdhIEJlbnV0emVyIGhpbnp1ZsO8Z2VuLCBHcnVwcGUgaGluenVmw7xnZW4gdXN3LiBXZW5uIFNpZSBqZWRvY2ggZGllc2UgT3B0aW9uIGF1c3fDpGhsZW4sIHdlcmRlbiBmw7xyIGRpZSBGcm9udGVuZFVzZXJzLUJlbnV0emVya29udGVuIHNlcGFyYXRlIEJlcmVjaHRpZ3VuZ2VuIGdlc2V0enQuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnS29ubnRlIGRpZSBob2NoZ2VsYWRlbmUgRGF0ZWkgbmljaHQgZmluZGVuIChpbnRlcm5lciBGZWhsZXIpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnTWl0IGRlciBob2NoZ2VsYWRlbmVuIERhdGVpIGlzdCBlaW4gUHJvYmxlbSBhdWZnZXRyZXRlbi4gQml0dGUgdmVyc3VjaGVuIFNpZSBlcyBub2NoIGVpbm1hbC4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnU2llIGhhYmVuIGtlaW5lbiBCZW51dHplcm5hbWVuIGVpbmdlZ2ViZW4uJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ1NpZSBoYWJlbiBJaHJlIEUtTWFpbC1BZHJlc3NlIG5pY2h0IGVpbmdlZ2ViZW4hJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ1NpZSBoYWJlbiBrZWluIFBhc3N3b3J0IGVpbmdlZ2ViZW4uJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdGcm9udGVuZFVzZXIg4oCTIEFibWVsZHVuZyc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdGcm9udGVuZFVzZXIg4oCTIEFubWVsZHVuZyc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPHNwYW4gc3R5bGU9ImNvbG9yOiByZWQiPjxiPkFDSFRVTkc8L2I+IFdlbm4gU2llIGJlcmVpdHMgZXhpc3RpZXJlbmRlIEVpZ2Vuc2NoYWZ0ZW4gw6RuZGVybiwgZGllIHNjaG9uIEdydXBwZW4genVnZW9yZG5ldCBzaW5kLCBrYW5uIElocmUgU2VpdGUgbcO2Z2xpY2hlcndlaXNlIHplcnN0w7ZydCB3ZXJkZW48aT4oYmVzb25kZXJzLCB3ZW5uIFNpZSBkaWUgTMOkbmdlIGRlciBGZWxkZXIgcmVkdXppZXJlbiwgZXRjKS48L2k+PC9zcGFuPic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ0RpZXMgZnVua3Rpb25pZXJ0IE5JQ0hUIHVudGVyIFdpbmRvd3MuJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdFcnN0ZWxsZW4gU2llIE5JRU1BTFMgZWluZSBFaWdlbnNjaGFmdCBmw7xyIGVpbmVuIEJlbnV0emVybmFtZW4gb2RlciBQYXNzd29ydC4gRGllcyBpc3QgaW0gRnJvbnRFbmRVc2Vycy1Nb2R1bCBiZXJlaXRzIGVpbmdlYmF1dC4nOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0JlbnV0emVyIGluIGVpbmUgQ1NWLURhdGVpIGV4cG9ydGllcmVuJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydGllcmVuJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydGllcmVuJzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW5pc3RyYXRvcic7CiRsYW5nWydlZGl0cHJvcCddID0gJ0VpZ2Vuc2NoYWZ0IDxlbT4lczwvZW0+IGJlYXJiZWl0ZW4nOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW1hbGUgTMOkbmdlJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdFcnN0ZWxsdCc7CiRsYW5nWydzb3J0YnknXSA9ICdTb3J0aWVyZW4gbmFjaCc7CiRsYW5nWydzb3J0J10gPSAnU29ydGllcnVuZyc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdCZW51dHplciBpbiBkZXIvZGVuIGF1c2dld8OkaGx0ZW4gR3J1cHBlKG4pJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0VyZ2Vibmlzc2UgYmVzY2hyw6Rua2VuIGF1Zic7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdGw7xyIGRpZXNlbiBCZW51dHplciBrb25udGUgZGFzIEUtTWFpbC1GZWxkIG5pY2h0IGdlZnVuZGVuIHdlcmRlbi4gQml0dGUga29udGFrdGllcmVuIFNpZSBkZW4gU3lzdGVtYWRtaW5pc3RyYXRvci4nOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdTZWl0ZW4tSUQvLUFsaWFzIGbDvHIgZGFzIEZvcm11bGFyICJQYXNzd29ydCB2ZXJnZXNzZW4iJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnU2VpdGVuLUlELy1BbGlhcyBmw7xyIGRhcyBGb3JtdWxhciAiRWluc3RlbGx1bmdlbiDDpG5kZXJuIic7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1NlaXRlbi1JRC8tQWxpYXMgZGVyIFNlaXRlLCBhdWYgZGllIG5hY2ggZGVyIEFubWVsZHVuZyBnZXNwcnVuZ2VuIHdlcmRlbiBzb2xsIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnU2VpdGVuLUlELy1BbGlhcyBkZXIgU2VpdGUsIGF1ZiBkaWUgbmFjaCBkZXIgQWJtZWxkdW5nIGdlc3BydW5nZW4gd2VyZGVuIHNvbGwgKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdTb3J0aWVycmVpaGVuZm9sZ2UnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnQW56YWhsIGRlciBCZW51dHplcm4sIGRpZSBpaHIgdmVybG9yZW5lcyBQYXNzd29ydCB6dXLDvGNrenVzZXR6ZW4gbcO2Y2h0ZW4uIEFrdHVlbGwgc3RlaHQgZGVyIFrDpGhsZXIgYXVmOic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ0FsbGUgRWludHLDpGdlIGVudGZlcm5lbiwgZGllIMOkbHRlciBhbHMgZWluZSBXb2NoZSBzaW5kJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ0FsbGUgRWludHLDpGdlIGVudGZlcm5lbiwgZGllIMOkbHRlciBhbHMgZWluIE1vbmF0IHNpbmQnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnQWxsZSBFaW50csOkZ2UgZW50ZmVybmVuJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdXb2xsZW4gU2llIGRhcyB3aXJrbGljaD8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdTaWUgaGFiZW4gZWluZW4gdW5nw7xsdGlnZW4gQ29kZSBlaW5nZWdlYmVuOyBiaXR0ZSB2ZXJzdWNoZW4gU2llIGVzIG5vY2ggZWlubWFsLic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnRsO8ciBJaHJlIEJlbnV0emVyLUlEIHd1cmRlIGtlaW4gdGVtcG9yw6RyZXIgQ29kZSBpbiBkZXIgRGF0ZW5iYW5rIGdlZnVuZGVuLic7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGbDvHIgZGllIEFuemVpZ2UgZGVzIMOcYmVycHLDvGZ1bmdzLUZvcm11bGFycyc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZsO8ciBkaWUgRS1NYWlsIGJlaSB2ZXJnZXNzZW5lbSBQYXNzd29ydCc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnRW50d2VkZXIgU2llIHNlbGJzdCBvZGVyIGplbWFuZCBhbmRlcmVzIGhhdCBiZXJlaXRzIGRhcyBadXLDvGNrc2V0emVuIGRlcyBQYXNzd29ydHMgZsO8ciBkaWVzZSBLb250byBhdXNnZWzDtnN0LiBQcsO8ZmVuIFNpZSBJaHJlbiBFLU1haWwtRWluZ2FuZy4gU2llIGZpbmRlbiBkb3J0IHdlaXRlcmUgQW53ZWlzdW5nZW4genVtIFp1csO8Y2tzZXR6ZW4gSWhyZXMgUGFzc3dvcnRlcy4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0RhdGVuYmFua2ZlaGxlcic7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdTaWUgZXJoYWx0ZW4gZGllc2UgTmFjaHJpY2h0LCBkYSBqZW1hbmQgYXVmIHVuc2VyZXIgU2VpdGUgYW5nZWdlYmVuIGhhdCwgZGFzcyBTaWUgSWhyIFBhc3N3b3J0IHZlcmxvcmVuIGhhYmVuLiBGYWxscyBkaWVzIHp1dHJpZmZ0LCBsZXNlbiBTaWUgYml0dGUgZGllIHdlaXRlcmVuIEFud2Vpc3VuZ2VuLiAgV2VubiBTaWUga2VpbmUgQWhudW5nIGhhYmVuLCB1bSB3YXMgZXMgZ2VodCwgZGFubiBsw7ZzY2hlbiBTaWUgc2ljaGVyaGVpdHNoYWxiZXIgZGllc2UgTmFjaHJpY2h0LiBXaXIgYmVkYW5rZW4gdW5zLCBkYXNzIFNpZSBzaWNoIGRpZSBaZWl0IGdlbm9tbWVuIGhhYmVuLic7CiRsYW5nWydwcm9tcHRfY29kZSddID0gJ0NvZGUnOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnRGVyIGZvbGdlbmRlIENvZGUgd3VyZGUgenVmw6RsbGlnIGdlbmVyaWVydCwgdW0gZGFzIEJlbnV0emVyLUtvbnRvIHp1IMO8YmVycHLDvGZlbi4gV2VubiBTaWUgYXVmIGRlbiBmb2xnZW5kZW4gTGluayBrbGlja2VuLCBnZWxhbmdlbiBTaWUgYXVmIGVpbmUgU2VpdGUsIHdvIFNpZSBkaWVzZW4gQ29kZSBlaW5nZWJlbiBtw7xzc2VuLiBOb3JtYWxlcndlaXNlIGVudGjDpGx0IGRhcyBGZWxkIGJlcmVpdHMgSWhyZW4gQ29kZS4gRmFsbHMgYWJlciBuaWNodCwgbGF1dGV0IGRlciBDb2RlOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0VpbiBLbGljayBhdWYgZGVuIGZvbGdlbmRlbiBMaW5rIGJyaW5ndCBTaWUgYXVmIGRpZSBXZWJzZWl0ZSwgd28gU2llIGRlbiB1bnRlbnN0ZWhlbmRlbiBDb2RlIGVpbmdlYmVuIHVuZCBkYW1pdCBJaHIgUGFzc3dvcnQgenVyw7xja3NldHplbiBrw7ZubmVuOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnUGFzc3dvcnQgdmVybG9yZW4nOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdEYXMgQ01TTWFpbGVyLU1vZHVsIHd1cmRlIG5pY2h0IGdlZnVuZGVuLic7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdFaW5lIEUtTWFpbCBtaXQgSW5mb3JtYXRpb25lbiB6dW0gWnVyw7xja3NldHplbiBkZXMgUGFzc3dvcnRzIHd1cmRlIGFuICVzIHZlcnNhbmR0LiBWaWVsZW4gRGFuayEnOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdTaWUgaGFiZW4gSWhyIFBhc3N3b3J0IHZlcmdlc3NlbiBvZGVyIHZlcmxvcmVuLiBHZWJlbiBTaWUgaGllciBJaHJlbiBCZW51dHplcm5hbWVuIGVpbi4gV2VubiB3aXIgU2llIGltIFN5c3RlbSBmaW5kZW4sIGVyaGFsdGVuIFNpZSBlaW5lIEUtTWFpbCBtaXQgd2VpdGVyZW4gQW53ZWlzdW5nZW4genVtIFp1csO8Y2tzZXR6ZW4gZGVzIFBhc3N3b3J0cy4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdWb3JsYWdlIGbDvHIgdmVyZ2Vzc2VuZSBQYXNzd8O2cnRlcic7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdWb3JsYWdlIGbDvHIgdmVyZ2Vzc2VuZSBCZW51dHplcm5hbWVuJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ0VpZ2Vuc2NoYWZ0ICVzIG5pY2h0IGdlZnVuZGVuJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdFaWdlbnNjaGFmdGVuIGdlZnVuZGVuJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdFaWdlbnNjaGFmdCBoaW56dWbDvGdlbic7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnRWluIGVyZm9yZGVybGljaGVzIEZlbGQgKCVzKSB3YXIgbGVlci4nOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdVbSBJaHIgUGFzc3dvcnQgenUgw6RuZGVybiwgZ2ViZW4gU2llIGJpdHRlIGhpZXIgZWluIG5ldWVzIFBhc3N3b3J0IGVpbi4nOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdFcyBzY2hlaW50IHNvLCBhbHMgb2IgU2llIG5pY2h0IGFuZ2VtZWxkZXQgc2luZC4nOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ0VpbnN0ZWxsdW5nZW4nOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyaWVydW5nJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnRGllc2VzIEtvbnRvIGlzdCBhYmdlbGF1ZmVuJzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdVbmdlbmF1ZSBGb3JtYXRpZXJ1bmcgZGVyIEUtTWFpbC1BZHJlc3NlJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnVW5nw7xsdGlnZXMgQWJsYXVmZGF0dW0nOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0ZlaGxlciBiZWltIFNldHplbiBkZXIgRWlnZW5zY2hhZnQgJXMgZsO8ciBkZW4gQmVudXR6ZXIgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdVbmfDvGx0aWdlIEdydXBwZW4tSUQgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdLZW5uemVpY2hudW5nIGbDvHIgdmVyYm9yZ2VuZSBGZWxkZXInOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0ZhcmJlIGbDvHIgdmVyYm9yZ2VuZSBGZWxkZXInOwokbGFuZ1snaGlkZGVuJ10gPSAnVmVyYm9yZ2VuJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdFaW5lIEVpZ2Vuc2NoYWZ0IG1pdCBkaWVzZW0gTmFtZW4gZXhpc3RpZXJ0IGJlcmVpdHMuJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ0VzIHd1cmRlbiBub2NoIGtlaW5lIEVpZ2Vuc2NoYWZ0ZW4gZGVmaW5pZXJ0Lic7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ0bDvHIgZGllc2UgQmVudXR6ZXJncnVwcGUgd3VyZGVuIGtlaW5lIEVpZ2Vuc2NoYWZ0ZW4gYXVzZ2V3w6RobHQuJzsKJGxhbmdbJ25vZ3JvdXBzJ10gPSAnRXMgd3VyZGVuIG5vY2gga2VpbmUgR3J1cHBlbiBkZWZpbmllcnQuJzsKJGxhbmdbJ2dyb3Vwc2ZvdW5kJ10gPSAnQmVudXR6ZXJncnVwcGVuIGdlZnVuZGVuJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdEaWUgTWl0Z2xpZWRzY2hhZnQgaW4gbWluZGVzdGVucyBlaW5lciBHcnVwcGUgaXN0IGVyZm9yZGVybGljaC4nOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ0VyZm9yZGVydCBkaWUgTWl0Z2xpZWRzY2hhZnQgaW4gbWluZGVzdGVucyBlaW5lciBHcnVwcGUnOwokbGFuZ1snYmFjayddID0gJ1p1csO8Y2snOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGlzdCBlaW4gUGZsaWNodGZlbGQuJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdQZmxpY2h0ZmVsZGVyIGtlbm56ZWljaG5lbiBtaXQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnUGZsaWNodGZlbGRlciBlaW5mw6RyYmVuIG1pdCc7CiRsYW5nWyduZXh0J10gPSAnV2VpdGVyJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnRWluZSBHcnVwcGUgbWl0IGRpZXNlbSBOYW1lbiBleGlzdGllcnQgYmVyZWl0cy4nOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdQZmxpY2h0ZmVsZCc7CiRsYW5nWydvcHRpb25hbCddID0gJ29wdGlvbmFsJzsKJGxhbmdbJ29mZiddID0gJ0F1cyc7CiRsYW5nWydzaXplJ10gPSAnR3LDtsOfZSc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltYWxlIEdyw7bDn2UgaXJnZW5kIGVpbmVyIEJpbGRkaW1lbnNpb24gaW4gUGl4ZWwpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ0zDpG5nZSc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyPihaZWljaGVuIGluIGRlciBUZXh0ZWluZ2FiZSknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ0xpc3RlbmZlbGQtT3B0aW9uZW4sIGdldHJlbm50IGR1cmNoIFplaWxlbnVtYnLDvGNoZS4gRGllIFdlcnRlIGvDtm5uZW4gbWl0IGEgPSBaZWljaGVuIHZvbSBUZXh0IGdldHJlbm50IHdlcmRlbiwgei5Cc3AuOiBXZWlibGljaD13JzsKJGxhbmdbJ3JhZGlvb3B0aW9ucyddID0gJ0Jlc2NocmlmdHVuZyBkZXMgT3B0aW9uc2ZlbGRlcywgZ2V0cmVubnQgZHVyY2ggWmVpbGVudW1icsO8Y2hlLiBEaWUgV2VydGUga8O2bm5lbiBtaXQgYSA9IFplaWNoZW4gdm9tIFRleHQgZ2V0cmVubnQgd2VyZGVuLCB6LkJzcC46IFdlaWJsaWNoPXcnOwokbGFuZ1sncHJvbXB0J10gPSAnRWluZ2FiZWF1ZmZvcmRlcnVuZyc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cCc7CiRsYW5nWyd0eXBlJ10gPSAnVHlwJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnRmVsZHN0YXR1cyc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdGcmFnZSBiZWkgdmVyZ2Vzc2VuZW08YnIvPkJlbnV0emVybmFtZW4nOwokbGFuZ1sndGV4dCddID0gJ1RleHQnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdLb250cm9sbGvDpHN0Y2hlbic7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ01laHJmYWNobGlzdGVuYXVzd2FobCc7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdPcHRpb25zZmVsZGVyJzsKJGxhbmdbJ2ltYWdlJ10gPSAnQmlsZCc7CiRsYW5nWydlbWFpbCddID0gJ0UtTWFpbC1BZHJlc3NlJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnVGV4dGZlbGQnOwokbGFuZ1snZHJvcGRvd24nXSA9ICdBdXN3YWhsbGlzdGUnOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdXaWxsa29tbWVuJzsKJGxhbmdbJ2xvZ291dCddID0gJ0FibWVsZGVuJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdEaWVzZW4gR3J1cHBlbm5hbWVuIHZlcndlbmRlbic7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdNZWluZSBFaW5zdGVsbHVuZ2VuIMOkbmRlcm4nOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdJaHJlIEFubWVsZHVuZyBpc3QgZmVobGdlc2NobGFnZW4gLSB1bmfDvGx0aWdlciBCZW51dHplcm5hbWUgb2RlciB1bmfDvGx0aWdlcyBQYXNzd29ydD8nOwokbGFuZ1snbG9naW4nXSA9ICdBbm1lbGRlbic7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0Jlc2NocmlmdHVuZyBkZXMgQW5tZWxkZS1CdXR0b25zJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ0JlbnV0emVybmFtZSc7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdFLU1haWwtQWRyZXNzZSc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICdQYXNzd29ydCc7CiRsYW5nWydwcm9tcHRfcmVtZW1iZXJtZSddID0gJ0FubWVsZHVuZyBhdWYgZGllc2VtIENvbXB1dGVyIG1lcmtlbic7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdHJpZXJlbic7CiRsYW5nWydmb3Jnb3RwdyddID0gJ0hhYmVuIFNpZSBJaHIgUGFzc3dvcnQgdmVyZ2Vzc2VuPyc7CiRsYW5nWydsb3N0dXNlcm5hbWUnXSA9ICdIYWJlbiBTaWUgSWhyZSBCZW51dHplcmRhdGVuIHZlcmdlc3Nlbj8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdTdGFuZGFyZCc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1ZvcmxhZ2UnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnS29ubnRlIGtlaW5lIEluZm9ybWF0aW9uZW4gZsO8ciBkaWVzZW4gQmVudXR6ZXIgZmluZGVuJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdEaWVzZXIgQmVudXR6ZXJuYW1lICglcykgd2lyZCBiZXJlaXRzIHZlcndlbmRldC4nOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ1NvbGwgU01UUCB2ZXJ3ZW5kZXQgd2VyZGVuLCB1bSBFLU1haWwtQWRyZXNzZW4gYXVmIEfDvGx0aWdrZWl0IHp1IHByw7xmZW4/JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ01pbmltYWxlIEzDpG5nZSBkZXMgUGFzc3dvcnRzJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ01heGltYWxlIEzDpG5nZSBkZXMgUGFzc3dvcnRzJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltYWxlIEzDpG5nZSBkZXMgQmVudXR6ZXJuYW1lbnMnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTWF4aW1hbGUgTMOkbmdlIGRlcyBCZW51dHplcm5hbWVucyc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdBdXN6ZWl0IGbDvHIgU2Vzc2lvbnMgKGluIFNla3VuZGVuKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnQ29va2llcyBmw7xyIGRpZSBBbm1lbGR1bmcgdmVyd2VuZGVuJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnRS1NYWlsLVJlZ2lzdHJpZXJ1bmcgZXJsYXViZW4nOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ1N0YW5kYXJkLUJlbnV0emVyZ3J1cHBlIGbDvHIgbmV1ZSBCZW51dHplcic7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGbDvHIgRWluc3RlbGx1bmdlbiDDpG5kZXJuJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdEaWUgUGFzc3fDtnJ0ZXIgc3RpbW1lbiBuaWNodCDDvGJlcmVpbi4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnVW5nw7xsdGlnZXIgQmVudXR6ZXJuYW1lJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ1VuZ8O8bHRpZ2VzIFBhc3N3b3J0JzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnQmVudXR6ZXIgYmVhcmJlaXRlbic7CiRsYW5nWyd2YWxpZCddID0gJ0fDvGx0aWcnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdCZW51dHplcm5hbWUnOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ0RpZXNlciBCZW51dHplciBpc3Qgbm9jaCBrZWluIE1pdGdsaWVkIGVpbmVyIEJlbnV0emVyZ3J1cHBlLic7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnS2VpbmUgRWlnZW5zY2hhZnRlbic7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ1NpZSBoYWJlbiB2ZXJzdWNodCwgRWlnZW5zY2hhZnRlbiBkb3BwZWx0IHp1IGltcG9ydGllcmVuJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnV2VydCc7CiRsYW5nWydncm91cHMnXSA9ICdCZW51dHplcmdydXBwZW4nOwokbGFuZ1sncHJvcGVydGllcyddID0gJ0VpZ2Vuc2NoYWZ0ZW4nOwokbGFuZ1sncHJvcG5hbWUnXSA9ICdOYW1lIGRlciBFaWdlbnNjaGFmdCc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdXZXJ0IGRlciBFaWdlbnNjaGFmdCc7CiRsYW5nWydhZGQnXSA9ICdIaW56dWbDvGdlbic7CiRsYW5nWydoaXN0b3J5J10gPSAnR2VzY2hpY2h0ZSc7CiRsYW5nWydlZGl0J10gPSAnQmVhcmJlaXRlbic7CiRsYW5nWydleHBpcmVzJ10gPSAnQWJsYXVmJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ0RhdHVtIGZlc3RsZWdlbic7CiRsYW5nWycxMmhycyddID0gJzEyIFN0dW5kZW4nOwokbGFuZ1snMjRocnMnXSA9ICcyNCBTdHVuZGVuJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggU3R1bmRlbic7CiRsYW5nWycxd2VlayddID0gJ2VpbmUgV29jaGUnOwokbGFuZ1snMndlZWtzJ10gPSAnendlaSBXb2NoZW4nOwokbGFuZ1snMW1vbnRoJ10gPSAnZWluIE1vbmF0JzsKJGxhbmdbJzNtb250aHMnXSA9ICdkcmVpIE1vbmF0ZSc7CiRsYW5nWyc2bW9udGhzJ10gPSAnc2VjaHMgTW9uYXRlJzsKJGxhbmdbJzF5ZWFyJ10gPSAnZWluIEphaHInOwokbGFuZ1snbmV2ZXInXSA9ICdOaWVtYWxzJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ0RhcyBNb2R1bCB3dXJkZSBpbnN0YWxsaWVydC48YnIvPlN0ZWxsZW4gU2llIHNpY2hlciwgZGFzcyBkaWUgQmVyZWNodGlndW5nICJNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMiIGdlc2V0enQgd3VyZGUuIFp1c8OkdHpsaWNoIHdpcmQgZGllIEluc3RhbGxhdGlvbiBkZXMgQ2FwdGNoYS1Nb2R1bHMgZW1wZm9obGVuLiBOYWNoIGRlc3NlbiBJbnN0YWxsYXRpb24gd2lyZCBiZWkgZGVyIEFubWVsZHVuZyBlcmfDpG56ZW5kIHp1IEJlbnV0emVybmFtZW4gdW5kIFBhc3N3b3J0IGRlciBJbmhhbHQgZWluZXMgQ2FwdGNoYS1CaWxkZXMgYWJnZWZyYWd0LiBEaWVzIHNvbGwgaGVsZmVuLCBCcnV0ZS1mb3JjZS1BdHRhY2tlbiB6dSB2ZXJoaW5kZXJuLiA8c3Ryb25nPkhpbndlaXM6PC9zdHJvbmc+IERpZXNlIEZ1bmt0aW9uYWxpdMOkdCBrYW5uIG1pdCBkZW0gUGFyYW1ldGVyIG5vY2FwdGNoYSBkZWFrdGl2aWVydCB3ZXJkZW4sIGF1Y2ggd2VubiBkYXMgQ2FwdGNoYS1Nb2R1bCBpbnN0YWxsaWVydCBpc3QuJzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnS2VubndvcnQnOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdXaWVkZXJob2x1bmcgS2VubndvcnQnOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ0VpbmUgQmVudXR6ZXJncnVwcGUgbWl0IGRpZXNlbSBOYW1lbiBleGlzdGllcnQgYmVyZWl0cy4nOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnQmVudXR6ZXJncnVwcGUgYmVhcmJlaXRlbic7CiRsYW5nWydzdWJtaXQnXSA9ICdBYnNlbmRlbic7CiRsYW5nWydjYW5jZWwnXSA9ICdBYmJyZWNoZW4nOwokbGFuZ1snZGVsZXRlJ10gPSAnTMO2c2NoZW4nOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdTaW5kIGRhcyB3aXJrbGljaCBkaWUgcmljaHRpZ2VuIEVpbnN0ZWxsdW5nZW4gZsO8ciBkaWVzZSBCZW51dHplcmdydXBwZT9cbkRhcyBEZWFrdGl2aWVyZW4gZWluZXIgRWlnZW5zY2hhZnQgbMO2c2NodCBrZWluZSBFaW50csOkZ2UgaW4gZGVyIEVpZ2Vuc2NoYWZ0ZW50YWJlbGxlIGbDvHIgZGllc2UgQmVudXR6ZXJncnVwcGUvZGllc2VuIEJlbnV0emVyLiBTaWUgc2luZCBsZWRpZ2xpY2ggbmljaHQgbWVociB2ZXJmw7xnYmFyLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnV29sbGVuIFNpZSBkaWVzZSBCZW51dHplcmdydXBwZSB3aXJrbGljaCBsw7ZzY2hlbj8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ1dvbGxlbiBTaWUgZGllc2UgRWlnZW5zY2hhZnQgd2lya2xpY2gga29tcGxldHQgbMO2c2NoZW4/XG5GYWxscyBqYSwgd2lyZCBhdWNoIGplZGVyIEJlbnV0emVyZWludHJhZyBmw7xyIGRpZXNlIEVpZ2Vuc2NoYWZ0IGdlbMO2c2NodC4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnVW56dXJlaWNoZW5kZSBQYXJhbWV0ZXInOwokbGFuZ1snaWQnXSA9ICdJRCc7CiRsYW5nWyduYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW0gYmVpbSBIaW56dWbDvGdlbiBlaW5lciBFaWdlbnNjaGFmdCc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlbSBiZWltIEhpbnp1ZsO8Z2VuIGVpbmVyIEdydXBwZW5iZXppZWh1bmcnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlbSBiZWltIEhpbnp1ZsO8Z2VuIGVpbmVyIEJlbnV0emVyZ3J1cHBlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSBiZWltIEhpbnp1ZsO8Z2VuIGVpbmVzIEJlbnV0emVycyB6dSBlaW5lciBCZW51dHplcmdydXBwZSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbSBiZWltIEzDtnNjaGVuIGVpbmVyIEVpZ2Vuc2NoYWZ0JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnS29ubnRlIGtlaW5lIEUtTWFpbC1BZHJlc3NlIGZpbmRlbic7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnU2llIGhhYmVuIGtlaW5lIFNjaHJlaWJiZXJlY2h0aWd1bmcgZsO8ciBkYXMgWmllbHZlcnplaWNobmlzLic7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnVW5nw7xsdGlnZSBQYXJhbWV0ZXInOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdLb25udGUga2VpbmUgQmVudXR6ZXJncnVwcGVuIGZpbmRlbic7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0Fud2VuZGVuJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnQmVudXR6ZXJuYW1lIChyZWd1bMOkcmVyIEF1c2RydWNrKSc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Jlc2NocmVpYnVuZyc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOYW1lIGRlciBCZW51dHplcmdydXBwZSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdadWdyaWZmIHZlcndlaWdlcnQnOwokbGFuZ1snZXJyb3InXSA9ICdGZWhsZXInOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdFaW5lIEJlbnV0emVyZ3J1cHBlIGhpbnp1ZsO8Z2VuJzsKJGxhbmdbJ2ltcG9ydGdyb3VwJ10gPSAnR3J1cHBlIGltcG9ydGllcmVuJzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdFaW5lbiBCZW51dHplciBoaW56dWbDvGdlbic7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnQmVudXR6ZXIgZ2VmdW5kZW4sIGRpZSBkZW4gS3JpdGVyaWVuIGVudHNwcmVjaGVuJzsKJGxhbmdbJ2dyb3VwJ10gPSAnQmVudXR6ZXJncnVwcGUnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdCZW51dHplcmdydXBwZSBhdXN3w6RobGVuJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJpZXJ1bmdzdm9ybGFnZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdBYm1lbGR1bmdzdm9ybGFnZSc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ0FubWVsZHVuZ3N2b3JsYWdlJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnRWluc3RlbGx1bmdlbic7CiRsYW5nWyd1c2VycyddID0gJ0JlbnV0emVyJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Zyb250ZW5kVXNlci1WZXJ3YWx0dW5nJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRXJsYXVidCBkZW4gQmVudXR6ZXJuLCBzaWNoIGF1ZiBJaHJlciBXZWJzZWl0ZSBhbnp1bWVsZGVuJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdTdGFuZGFyZC1TdGFydHNlaXRlJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdMZXR6dGUgU2VpdGUsIGF1ZiBkaWUgenVnZWdyaWZmZW4gd3VyZGUnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnQW5kZXJlIFNlaXRlOic7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnR2ViZW4gU2llIGRlbiBUZXh0IGF1cyBkZW0gQmlsZCBlaW4nOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/el_GR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ86czq7Ous6/z4Igz4DOtc60zq/Ov8+FIM6zzrnOsSDPhM6/IM+Mzr3Ov868zrEgz4fPgc6uz4PPhM63JzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ86czq7Ous6/z4Igz4DOtc60zq/Ov8+FIM6zzrnOsSDPhM6/zr0gzrrPic60zrnOus+MJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICfOpM6/IM61zrvOrM+HzrnPg8+Ezr8vzrzOrc6zzrnPg8+Ezr8gzrzOrs66zr/PgiDOs865zrEgz4TOv869IM66z4nOtM65zrrPjCDOtM61zr0gzrXOr869zrHOuSDOsc+Azr/OtM61zrrPhM+MJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICfOpM6/IM61zrvOrM+HzrnPg8+Ezr8vzrzOrc6zzrnPg8+Ezr8gzrzOrs66zr/PgiDOs865zrEgz4TOvyDPjM69zr/OvM6xIM+Hz4HOrs+Dz4TOtyDOtM61zr0gzrXOr869zrHOuSDOsc+Azr/OtM61zrrPhM+MJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnzpTOtc69IM61z4XPgc6tzrjOt866zrUgzrTOuc61z43OuM+Fzr3Pg863IGVtYWlsIM6zzrnOsSDOsc+Fz4TPjM69IM+Ezr/OvSDOu86/zrPOsc+BzrnOsc+DzrzPjCc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnzp8gz4fPgc6uz4PPhM63z4Igz4DPgc6/z4PPhM6tzrjOt866zrUgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICfOnyDPh8+Bzq7Pg8+EzrfPgiDOtM65zrHOs8+BzqzPhs63zrrOtSB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICfOmc60zrnPjM+EzrfPhM6xJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICfOpM65zrzOriAocmVndWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ86gz4HOv861zrnOtM6/z4DOv86vzrfPg863OiDOpM6xIM+AzrXOtM6vzrEgzrHPhc+EzqwgzrXPgM63z4HOtc6szrbOv8+Fzr0gz4TOvyDOvM6tzrPOtc64zr/PgiDPhM+Jzr0gz4DOtc60zq/Pic69IM61zrnPg86xzrPPic6zzq7PgiDOs865zrEgz4TOuc+CIM+Gz4zPgc68zrXPgi4gIM6XIM61zrvOu86sz4TPic+Dzrcgz4TOv8+FIM6xz4HOuc64zrzOv8+NIM6xz4XPhM6/z40gz4POtSDOv8+Azr/Ouc6/zrTOrs+Azr/PhM61IM+Fz4DOsc+BzrrPhM+MIM60zrnOus+Ez4XOsc66z4wgz4TPjM+Azr8gzrTOtc69IM61zr3OtM61zq/Ous69z4XPhM6xzrknOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ86Yzq3Ou861z4TOtSDPhM63zr0gzrHOu867zrHOs86uIM+Ez4nOvSDPgM+Bzr/PhM65zrzOrs+DzrXPic69IM+Ezr/PhSDOtM65zrHPh861zrnPgc65z4PPhM6uPyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnzpcgzrTOuc61z43OuM+Fzr3Pg863IEVtYWlsIM6uzrTOtyDPh8+BzrfPg865zrzOv8+Azr/Ouc61zq/PhM6xzrknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICfOnc6xIM61z4DOuc+Ez4HOrc+Azr/Ovc+EzrHOuSDOtM65z4DOu86sIGVtYWlscyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcozp3OsSDOtc+AzrnPhM+Bzq3PgM6/zr3PhM6xzrkgz4DOv867zrvOsc+AzrvOv86vIM+Hz4HOrs+Dz4TOtc+CIM68zrUgz4TOt869IM6vzrTOuc6xIM60zrnOtc+NzrjPhc69z4POtyBlbWFpbCknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnzpTOtc69IM6tz4fOtc+EzrUgzrXOuc+DzqzOs861zrkgzq3Ovc6xIM+Mzr3Ov868zrEgz4fPgc6uz4PPhM63JzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ86UzrXOvSDOrc+HzrXPhM61IM61zrnPg86szrPOtc65IM6tzr3Osc69IM66z4nOtM65zrrPjCDPgM+Bz4zPg86yzrHPg863z4InOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ86Rz4DOv8+Dz43Ovc60zrXPg863IM61zrPOs861zrPPgc6xzrzOrc69zr/PhSDPh8+Bzq7Pg8+EzrcnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnzqPPjc69zrTOtc+DzrcgzrXOs86zzrXOs8+BzrHOvM6tzr3Ov8+FIM+Hz4HOrs+Dz4TOtyc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPs6gz4HOv8+Dzr/Ph86uIM+Dz4TOt869IM+Hz4HOrs+Dzrc8L2I+IM6XIM6xzrvOu86xzrPOriDPhM+Jzr0gzrnOtM65zr/PhM6uz4TPic69IM+Azr/PhSDOuc+Dz4fPjc6/z4XOvSDOs865zrEgz4TOuc+CIM+Fz4DOrM+Bz4fOv8+Fz4POtc+CIM6/zrzOrM60zrXPgiwgzrzPgM6/z4HOtc6vIM69zrEgzrXPgM65z4bOrc+BzrXOuSDOus6xz4TOsc+Dz4TPgc6/z4bOriDOus6xzrkgzrTOuc6xzrrOv8+Azq4gzrvOtc65z4TOv8+Fz4HOs86vzrHPgiDPg861IM6/z4DOv865zr/OtM6uz4DOv8+EzrUgz4XPgM6sz4HPh86/zr3PhM6xIM60zrnOus+Ez4XOsc66z4wgz4TPjM+Azr8gPGk+KM65zrTOuc6xzq/PhM61z4HOsSDOsc69IM61zrvOu86xz4TPjs+DzrXPhM61IM+EzrEgzrzOrs66zrcgz4TPic69IM+AzrXOtM6vz4nOvSwgzrrOu8+AKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnzpHPhc+Ezq4gzrcgzrTOuc6xzrTOuc66zrHPg86vzrEgzrTOtc69IM67zrXOuc+Ezr/Phc+BzrPOtc6vIM+Dz4TOsSB3aW5kb3dzJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICfOnM6uzr0gzrTOt868zrnOv8+Fz4HOs86uz4POtc+EzrUgzrzOr86xIM65zrTOuc+Mz4TOt8+EzrEgzrPOuc6xIM6tzr3OsSDPjM69zr/OvM6xIM+Hz4HOrs+Dz4TOtyDOriDOus6sz4TOuSDPgM6xz4HPjM68zr/Ouc6/IM66zrHOuM+Oz4IgzrHPhc+Ez4wgzrXOr869zrHOuSDOtc69z4PPic68zrHPhM+JzrzOrc69zr8gz4PPhM6/IM6sz4HOuM+Bz4nOvM6xICBGcm9udEVuZFVzZXJzJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRjc3YnXSA9ICfOlc6+zrHOs8+JzrPOriDPh8+BzrfPg8+Ez47OvSDPg861IM6xz4HPh861zq/OvyDPhM+Nz4DOv8+FIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICfOlc6+zrHOs8+JzrPOric7CiRsYW5nWydhZG1pbiddID0gJ86UzrnOsc+HzrXOuc+BzrnPg8+Ezq7Pgic7CiRsYW5nWydlZGl0cHJvcCddID0gJ86Vz4DOtc6+zrXPgc6zzrHPg86vzrEgzrnOtM65z4zPhM63z4TOsc+CJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ86czq3Os865z4PPhM6/IM68zq7Ous6/z4InOwokbGFuZ1snY3JlYXRlZCddID0gJ86UzrfOvM65zr/Phc+BzrPOrs64zrfOus61JzsKJGxhbmdbJ3NvcnRieSddID0gJ86kzrHOvs65zr3PjM68zrfPg863IM66zrHPhM6xJzsKJGxhbmdbJ3NvcnQnXSA9ICfOpM6xzr7Ouc69z4zOvM63z4POtyc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICfOp8+Bzq7Pg8+EzrXPgiDPg8+EzrcozrnPgikgIM61z4DOuc67zrXOs868zq3Ovc63KM61z4IpIM6/zrzOrM60zrEozrXPgiknOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnzpjOrc+Dzrcgzr/Pgc6vzr/PhSDPg8+EzrEgzrHPgM6/z4TOtc67zq3Pg868zrHPhM6xIM+DzrUnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnzpTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TOriDOtyDOtc+Nz4HOtc+DzrcgzrXOvc+Mz4Igz4DOtc60zq/Ov8+FIGVtYWlsIM6zzrnOsSDOsc+Fz4TPjM69IM+Ezr/OvSDPh8+Bzq7Pg8+EzrcuICDOmc+Dz4nPgiDPgM+Bzq3PgM61zrkgzr3OsSDOtc+AzrnOus6/zrnOvc+Jzr3Ors+DzrXPhM61IM68zrUgz4TOv869IM60zrnOsc+HzrXOuc+BzrnPg8+Ezq4gz4PPhc+Dz4TOrs68zrHPhM6/z4InOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICfOkc69zrHOs869z4nPgc65z4PPhM65zrrPjCDPg861zrvOr860zrHPgi/OjM69zr/OvM6xIM6xzr3PhM65z4PPhM6/zq/Ph865z4POt8+CIM6zzrnOsSDPhM63zr0gz4bPjM+BzrzOsSAizp7Orc+HzrHPg86xIM+Ezr/OvSDOus+JzrTOuc66z4wgz4DPgc+Mz4POss6xz4POt8+CIic7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ86Rzr3Osc6zzr3Pic+BzrnPg8+EzrnOus+MIM+DzrXOu86vzrTOsc+CL86Mzr3Ov868zrEgzrHOvc+EzrnPg8+Ezr/Or8+HzrnPg863z4IgzrPOuc6xIM+EzrfOvSDPhs+Mz4HOvM6xICLOkc67zrvOsc6zzq4gz4HPhc64zrzOr8+DzrXPic69Iic7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ86Rzr3Osc6zzr3Pic+BzrnPg8+EzrnOus+MIM+DzrXOu86vzrTOsc+CL86Mzr3Ov868zrEgzrHOvc+EzrnPg8+Ezr/Or8+HzrnPg863z4Igz4PPhM63zr0gzr/PgM6/zq/OsSDOuM6xIM68zrXPhM6xz4bOrc+Bzr/Ovc+EzrHOuSDOvM61z4TOsSDPhM63zr0gzrXOr8+Dzr/OtM6/JzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ86Rzr3Osc6zzr3Pic+BzrnPg8+EzrnOus+MIM+DzrXOu86vzrTOsc+CL86Mzr3Ov868zrEgzrHOvc+EzrnPg8+Ezr/Or8+HzrnPg863z4LPg8+EzrfOvSDOv8+Azr/Or86xIM64zrEgzrzOtc+EzrHPhs6tz4HOv869z4TOsc65IM68zrXPhM6sIM+EzrfOvSDOrc6+zr/OtM6/JzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ86kz4HPjM+Azr/PgiDPhM6xzr7Ouc69z4zOvM63z4POt8+CJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ86Izr3Osc+CIM6xz4HOuc64zrzPjM+CIM+Hz4HOt8+Dz4TPjs69IM61z4XPgc6vz4POus6/zr3PhM6xzrkgz4PPhM63zr0gzrTOuc6xzrTOuc66zrHPg86vzrEgzrHOu867zrHOs86uz4Igz4fOsc68zq3Ovc+Jzr0gzrrPic60zrnOus+Ozr0gz4DPgc+Mz4POss6xz4POt8+CLiAgzqPPhM63zr0gz4DOsc+Bzr/Pjc+DzrEgz4PPhM65zrPOvM6uIM6/IM6xz4HOuc64zrzPjM+CIM6xz4XPhM+Mz4IgzrXOr869zrHOuTonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICfOms6xz4TOrM+BzrPOt8+Dzrcgz4zOu8+Jzr0gzrXOus61zq/Ovc+Jzr0gz4TPic69IM61zrPOs8+BzrHPhs+Ozr0gz4DOv8+FIM61zq/Ovc6xzrkgz4DOsc67zrHOuc+Mz4TOtc+BzrXPgiDOsc+Azr8gzrzOuc6xIM61zrLOtM6/zrzOrM60zrEnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnzprOsc+EzqzPgc6zzrfPg863IM+MzrvPic69IM61zrrOtc6vzr3Pic69IM+Ez4nOvSDOtc6zzrPPgc6xz4bPjs69IM+Azr/PhSDOtc6vzr3Osc65IM+AzrHOu86xzrnPjM+EzrXPgc61z4IgzrHPgM6/IM6tzr3OsSDOvM6uzr3OsSc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICfOms6xz4TOrM+BzrPOt8+Dzrcgz4zOu8+Jzr0gz4TPic69IM61zrPOs8+BzrHPhs+Ozr0nOwokbGFuZ1snYXJleW91c3VyZSddID0gJ86Vzq/Pg8+EzrUgz4POr86zzr/Phc+Bzr/OuT8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICfOiM+HzrXOuSDOtc65z4POsc+HzrjOtc6vIM68zrcgzq3Os866z4XPgc6/z4IgzrrPjs60zrnOus6xz4IsIM+Az4HOv8+Dz4DOsc64zq7Pg8+EzrUgzr7Osc69zqwnOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ86UzrXOvSDOrc+HzrXOuSDOss+BzrXOuM61zq8gz4DPgc6/z4PPic+BzrnOvc+Mz4IgzrrPjs60zrnOus6xz4Igz4DOv8+FIM69zrEgzrHOvc+EzrnPg8+Ezr/Ouc+HzrXOryDPg8+Ezr8gzrTOuc66z4wgz4POsc+CIM6xzr3Osc6zzr3Pic+BzrnPg8+EzrnOus+MIM+Hz4HOrs+Dz4TOtyDPg8+EzrfOvSDOss6sz4POtyDOtM61zrTOv868zq3Ovc+Jzr0nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICfOoM+Bz4zPhM+Fz4DOvyDOtc68z4bOrM69zrnPg863z4Igz4TOt8+CIM+Gz4zPgc68zrHPgiDOtc+AzrHOu86uzrjOtc+Fz4POt8+CIM+Dz4TOv865z4fOtc6vz4nOvSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnzqDPgc+Mz4TPhc+Azr8gZW1haWwgzrPOuc6xIM+Ezr/Phc+CIM6+zrXPh86xz4POvM6tzr3Ov8+Fz4IgzrrPic60zrnOus6/z43PgiDPgM+Bz4zPg86yzrHPg863z4InOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ86JIM61z4POtc6vz4Igzq4gzrrOrM+Azr/Ouc6/z4IgzqzOu867zr/PgiDOrc+HzrXOuSDOrs60zrcgzrXOus66zrnOvc6uz4POtc65IM60zrnOsc60zrnOus6xz4POr86xIM6zzrnOsSDPhM63zr0gzrHOu867zrHOs86uIM66z4nOtM65zrrOv8+NIM+Az4HPjM+DzrLOsc+DzrfPgiDOs865zrEgzrHPhc+Ez4zOvSDPhM6/zr0gzrvOv86zzrHPgc65zrHPg868z4wuICDOlc67zq3Os86+z4TOtSDPhM6/IGVtYWlsIM+DzrHPgiwgzrzPgM6/z4HOtc6vz4TOtSDOvc6xIM67zqzOss61z4TOtSDPgM61z4HOsc65z4TOrc+Bz4kgzr/OtM63zrPOr861z4IgzrPOuc6xIM+EzrfOvSDOsc67zrvOsc6zzq4gzrrPic60zrnOus6/z40gz4PPhM6xIM61zrnPg861z4HPh8+MzrzOtc69zrEnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ86jz4bOrM67zrzOsSDOss6sz4POt8+CIM60zrXOtM6/zrzOrc69z4nOvSc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICfOlc67zqzOss6xz4TOtSDOsc+Fz4TPjCDPhM6/IM68zq7Ovc+FzrzOsSDOtc+AzrXOuc60zq4gzrrOrM+Azr/Ouc6/z4IgzrHOvc6tz4bOtc+BzrUgz4PPhM6/zr0gzrTOuc66z4TPhc6xzrrPjCDPhM+Mz4DOvyDPjM+Ezrkgzq3Ph861z4TOtSDOvs61z4fOrM+DzrXOuSDPhM6/zr0gzrrPic60zrnOus+MIM+Az4HPjM+DzrLOsc+DzrfPgi4gIM6Rzr0gz4zOvc+Ez4nPgiDOrc+Ez4POuSDPg8+FzrzOss6xzq/Ovc61zrkgzrTOuc6xzrLOrM+Dz4TOtSDPhM65z4Igz4DOsc+BzrHOus6sz4TPiSDOv860zrfOs86vzrXPgi4gIM6Rzr0gzrTOtc69IM6tz4fOtc+EzrUgzrnOtM6tzrEgzrPOuc6xIM6xz4XPhM+MIM+Ezr8gzrjOrc68zrEgzrTOuc6xzrPPgc6sz4jPhM61IM68zrUgzrHPg8+GzqzOu861zrnOsSDPhM6/IM+AzrHPgc+Mzr0gzrzOrs69z4XOvM6xLCDPg86xz4IgzrXPhc+HzrHPgc65z4PPhM6/z43OvM61IM6zzrnOsSDPhM6/zr0gz4fPgc+Mzr3OvyDPg86xz4IuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnzprPjs60zrnOus6xz4InOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnzp8gz4DOsc+BzrHOus6sz4TPiSDOus+OzrTOuc66zrHPgiDOrc+HzrXOuSDOtM63zrzOuc6/z4XPgc6zzrfOuM61zq8gz4TPhc+HzrHOr86xIM+Az4HOv866zrXOuc68zq3Ovc6/z4Ugzr3OsSDOtc+AzrHOu863zrjOtc+Fz4TOtc6vIM6/IM67zr/Os86xz4HOuc6xz4POvM+Mz4Igz4fPgc6uz4PPhM63LiAgz4zPhM6xzr0gzrrOrM69zrXPhM61IM66zrvOr866IM+Dz4TOv869IM+Fz4DOtc+Bz4PPjc69zrTOtc+DzrzOvyDPgM6/z4UgzrHOus6/zrvOv8+FzrjOtc6vIM64zrEgz4POsc+CIM61zrzPhs6xzr3Ouc+Dz4TOtc6vIM6tzr3OsSDPgM61zrTOr86/IM6zzrnOsSDPhM63zr0gzrXOuc+DzrHOs8+JzrPOriDPhM6/z4UgzrrPjs60zrnOus6xLiAgzqPPhc69zq7OuM+Jz4Igz4TOvyDPgM61zrTOr86/IM6tz4fOtc65IM+Az4HOv8+Dz4XOvM+AzrvOt8+Bz4nOvM6tzr3OvyDPhM6/zr0gzrrPjs60zrnOus6xIM6xzrvOu86xIM+Dz4TOt869IM+AzrXPgc6vz4DPhM+Jz4POtyDPgM6/z4UgzrTOtc69IM61zq/Ovc6xzrksIM6/IM66z47OtM65zrrOsc+CIM61zq/Ovc6xzrk6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnzprOrM69z4nOvc+EzrHPgiDOus67zq/OuiDPg8+Ezr8gz4DOsc+BzrHOus6sz4TPiSDPhc+AzrXPgc+Dz43Ovc60zrXPg868zr8gzrjOsSDOvM61z4TOsc+GzrXPgc64zrXOr8+EzrUgz4PPhM6/IM60zrnOus+Ez4XOsc66z4wgz4TPjM+Azr8gz4zPgM6/z4UgzrjOsSDOtc65z4POrM6zzrXPhM61IM+Ezr/OvSDPgM6xz4HOsc+AzrHOrM69z4IgzrrPjs60zrnOus6xIM66zrHOuSDOuM6xIM6xzrvOu86szr7Otc+EzrUgz4TOv869IM66z4nOtM65zrrPjDonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ86ezrXPh86xz4POvM6tzr3Ov8+CIM66z4nOtM65zrrPjM+CJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnzpTOtc69IM6uz4TOsc69IM60z4XOvc6xz4TOriDOtyDOtc+Nz4HOtc+Dzrcgz4TOv8+FIM6xz4HOuM+Bz47OvM6xz4TOv8+CIENNU01haWxlcic7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICfOiM+HzrXOuSDOsc+Azr/Pg8+EzrHOu867zrXOryBlbWFpbCDPg8+Ezr/OvSAlcyDOvM61IM6/zrTOt86zzq/Otc+CIM6zzrnOsSDPhM6/zr0gz4TPgc+Mz4DOvyDOsc67zrvOsc6zzq7PgiDOus+JzrTOuc66zr/PjS4gIM6jzrHPgiDOtc+Fz4fOsc+BzrnPg8+Ezr/Pjc68zrUnOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICfOj8+Dz4TOtSDOvs61z4fOrM+DzrHPhM61IM6uIM+HzqzPg86xz4TOtSDPhM6/zr0gzrrPic60zrnOus+MIM+Az4HPjM+DzrLOsc+DzrfPgi4gzpvOv865z4DPjM69LCDPgM67zrfOus+Ez4HOv867zr/Os86uz4PPhM61IM+Ezr8gz4zOvc6/zrzOsSDPh8+Bzq7Pg8+EzrcgzrXOtM+OLCDOus6xzrkgzqzOvSDOtc6vzr3Osc65IM60z4XOvc6xz4TOriDOtyDOtc+Nz4HOtc+Dzrcgz4POsc+CIM64zrEgz4POsc+CIM+Dz4TOsc67zrvOtc6vIM6tzr3OsSBlbWFpbCDOvM61IM6/zrTOt86zzq/Otc+CIM6zzrnOsSDPhM63zr0gzrHOu867zrHOs86uIM+Ezr/PhSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJ86gz4HPjM+Ez4XPgM6xIM6zzrnOsSDPhM6/z4XPgiDPh86xzrzOrc69zr/Phc+CIM66z4nOtM65zrrOv8+Nz4InOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnzpTOtc69IM61z4XPgc6tzrjOt866zrUgzrcgzrnOtM65z4zPhM63z4TOsSAlcyAnOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ86Vz4XPgc6tzrjOt866zrHOvSDOv865IM65zrTOuc+Mz4TOt8+EzrXPgic7CiRsYW5nWydhZGRwcm9wJ10gPSAnzqDPgc6/z4POuM6uzrrOtyDOuc60zrnPjM+EzrfPhM6xz4InOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ86kzr8gzrHPgM6xzrnPhM6/z43OvM61zr3OvyDPgM61zrTOr86/ICglcykgzq7PhM6xzr0gzrrOtc69z4wnOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICfOlc65z4POrM6zzrXPhM61IM6tzr3Osc69IM69zrXPjCDOus+JzrTOuc66z4wgzrXOtM+OIM+Az4HOv866zrXOuc68zq3Ovc6/z4Ugzr3OsSDOsc67zrvOrM6+zrXPhM61IM66z4nOtM65zrrPjCc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ86UzrXOvSDOrc+HzrXPhM61IM66zqzOvc61zrkgzrXOuc+DzrHOs8+JzrPOric7CiRsYW5nWyd1c2VyX3NldHRpbmdzJ10gPSAnzqHPhc64zrzOr8+DzrXOuc+CJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnzpXOs86zz4HOsc+Gzq4nOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICfOkc+Fz4TPjM+CIM6/IM67zr/Os86xz4HOuc6xz4POvM+Mz4Igzq3Ph861zrkgzrvOrs6+zrXOuSc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnzpHOvc+EzrnOus6xzr3Ov869zrnOus6uIM68zr/Pgc+Gzq4gzrTOuc61z43OuM+Fzr3Pg863z4IgZW1haWwnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICfOnM63IM6xz4DOv860zrXOus+Ezq4gzrfOvM61z4HOv868zrfOvc6vzrEgzrvOrs6+zrfPgic7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnzqPPhs6szrvOvM6xIM+Dz4TOt869IM+Bz43OuM68zrnPg863IM+EzrfPgiDOuc60zrnPjM+EzrfPhM6xz4IgJXMgzrPOuc6xIM+Ezr/OvSDPh8+Bzq7Pg8+EzrcgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICfOnM63IM6xz4DOv860zrXOus+Ez4wgzrHOvc6xzrPOvc+Jz4HOuc+Dz4TOuc66z4wgzrPOuc6xIM+EzrfOvSDOv868zqzOtM6xICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnzprPgc+Fz4bPjCDPgM61zrTOr86/IM60zrXOr866z4TOtyc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnzprPgc+Fz4bPjCDPgM61zrTOr86/IM+Hz4HPjs68zrHPhM6/z4InOwokbGFuZ1snaGlkZGVuJ10gPSAnzprPgc+Fz4bPjCc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnzpcgzr/Ovc6/zrzOsc+Dzq/OsSDOsc+Fz4TOrs+CIM+EzrfPgiDOmc60zrnPjM+EzrfPhM6xz4Igzq3Ph861zrkgzq7OtM63IM6xz4DOv860zr/OuM61zq8nOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnzpTOtc69IM6tz4fOv8+Fzr0gzr/Pgc65z4PPhM61zq8gzrnOtM65z4zPhM63z4TOtc+CJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnzpTOtc69IM6tz4fOv8+Fzr0gzrXPgM65zrvOtc6zzrXOryDOuc60zrnPjM+EzrfPhM61z4IgzrPOuc6xIM6xz4XPhM6uzr0gz4TOt869IM6/zrzOrM60zrEnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICfOlc+Fz4HOrc64zrfOus6xzr0gzr/OvM6szrTOtc+CJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICfOkc+AzrHOuc+EzrXOr8+EzrHOuSDPg8+FzrzOvM61z4TOv8+Hzq4gz4POtSDPhM6/z4XOu86sz4fOuc+Dz4TOv869IM68zq/OsSDOv868zqzOtM6xJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICfOkc+AzrHOuc+EzrXOr8+EzrHOuSDPg8+FzrzOvM61z4TOv8+Hzq4gz4POtSDPhM6/z4XOu86sz4fOuc+Dz4TOv869IM68zq/OsSDOv868zqzOtM6xJzsKJGxhbmdbJ2JhY2snXSA9ICfOoM6vz4PPiSc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnzqTOvyAlcyDOtc6vzr3Osc65IM6xz4DOsc65z4TOv8+NzrzOtc69zr8gz4DOtc60zq/Ovyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnzqPOt868zqzOvc61z4TOtSDPhM6xIM6xz4DOsc65z4TOv8+NzrzOtc69zrEgz4DOtc60zq/OsSDOvM61JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ86Vz4DOuc+DzrfOvM6szr3Otc+EzrUgz4TOsSDOsc+AzrHOuc+Ezr/Pjc68zrXOvc6xIM+AzrXOtM6vzrEgzrzOtSc7CiRsYW5nWyduZXh0J10gPSAnzpXPgM+MzrzOtc69zr8nOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICfOpc+AzqzPgc+HzrXOuSDOrs60zrcgzr/OvM6szrTOsSDOvM61IM6xz4XPhM+MIM+Ezr8gz4zOvc6/zrzOsSc7CiRsYW5nWydyZXF1aXJlZCddID0gJ86Rz4DOsc65z4TOv8+NzrzOtc69zr8gz4DOtc60zq/Ovyc7CiRsYW5nWydvcHRpb25hbCddID0gJ86gz4HOv86xzrnPgc61z4TOuc66zqwnOwokbGFuZ1snb2ZmJ10gPSAnzpXOus+Ez4zPgic7CiRsYW5nWydsZW5ndGgnXSA9ICfOnM6uzrrOv8+CJzsKJGxhbmdbJ2xlbmd0aGNvbW1lbnQnXSA9ICc8YnI+KM+HzrHPgc6xzrrPhM6uz4HOtc+CIM+Dz4TOt869IM61zrnPg86xzrPPic6zzq4gzrrOtc65zrzOrc69zr/PhSknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ86Vz4DOuc67zr/Os86tz4IgzrzOtc69zr/PjSBEcm9wZG93biwgzrzOtSDOtM65zrHPh8+Jz4HOuc+Dz4TOuc66zq3PgiDOs8+BzrHOvM68zq3Pgic7CiRsYW5nWyd5ZXMnXSA9ICfOnc6xzrknOwokbGFuZ1sncHJvbXB0J10gPSAnzqDPgc6/z4TPgc6/z4DOric7CiRsYW5nWyd0eXBlJ10gPSAnzqTPjc+Azr/Pgic7CiRsYW5nWyd0ZXh0J10gPSAnzprOtc6vzrzOtc69zr8nOwokbGFuZ1snY2hlY2tib3gnXSA9ICfOkc69z4TOuc66zrXOr868zrXOvc6/IM61zrvOrc6zz4fOv8+FIENoZWNrYm94JzsKJGxhbmdbJ2VtYWlsJ10gPSAnzpTOuc61z43OuM+Fzr3Pg863IEVtYWlsJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnzqDOtc+BzrnOv8+Hzq4gzrrOtc65zrzOrc69zr/PhSc7CiRsYW5nWydkcm9wZG93biddID0gJ86czrXOvc6/z40gRHJvcGRvd24nOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICfOms6xzrvPjs+CIM6uzrvOuM6xz4TOtSc7CiRsYW5nWydsb2dvdXQnXSA9ICfOkc+Azr/Pg8+Nzr3OtM61z4POtyc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICfOkc67zrvOsc6zzq4gz4DPgc6/z4PPic+AzrnOus+Ozr0gz4HPhc64zrzOr8+DzrXPic69JzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnzpcgz4PPjc69zrTOtc+DzrcgzrHPgM6tz4TPhc+HzrUgLSDOnM63IM6xz4DOv860zrXOus+Ez4wgz4zOvc6/zrzOsSDPh8+Bzq7Pg8+Ezrcgzq4gzrrPic60zrnOus6/z40nOwokbGFuZ1snbG9naW4nXSA9ICfOlc6vz4POv860zr/Pgic7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICfOjM69zr/OvM6xIM+Hz4HOrs+Dz4TOtyc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICfOms+JzrTOuc66z4zPgic7CiRsYW5nWydyZWdpc3RlciddID0gJ86VzrPOs8+BzrHPhs6uJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnzp7Otc+HzqzPg86xz4TOtSDPhM6/zr0gzrrPic60zrnOus+MPyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ86gz4HOv861z4DOuc67zr/Os86tz4InOwokbGFuZ1sndGVtcGxhdGUnXSA9ICfOoM+Bz4zPhM+Fz4DOvyc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICfOpM6/IM6xzr3Osc6zzr3Pic+BzrnPg8+EzrnOus+MIM+Hz4HOrs+Dz4TOtyDOtM61zr0gzrXPhc+Bzq3OuM63zrrOtSc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnzpHPhc+Ez4wgz4TOvyDPjM69zr/OvM6xIM+Hz4HOrs+Dz4TOtyAoJXMpIM+Hz4HOt8+DzrnOvM6/z4DOv865zrXOr8+EzrHOuSDOrs60zrcnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ86nz4HOrs+DzrcgU01UUCDOs865zrEgz4TOt869IM61z4DOuc66z43Pgc+Jz4POtyDPhM+Jzr0gzrTOuc61z4XOuM+Nzr3Pg861z4nOvSBlbWFpbD8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnzpXOu86sz4fOuc+Dz4TOvyDOvM6uzrrOv8+CIM6az4nOtM65zrrOv8+NJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ86czq3Os865z4PPhM6/IM68zq7Ous6/z4IgzprPic60zrnOus6/z40nOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnzpXOu86sz4fOuc+Dz4TOvyDOvM6uzrrOv8+CIM6/zr3PjM68zrHPhM6/z4Igz4fPgc6uz4PPhM63JzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ86czq3Os865z4PPhM6/IM68zq7Ous6/z4Igzr/Ovc+MzrzOsc+Ezr/PgiDPh8+Bzq7Pg8+EzrcnOwokbGFuZ1sncHJvbXB0X3Nlc3Npb250aW1lb3V0J10gPSAnzqfPgc+Mzr3Ov8+CIM67zq7Ovs63z4IgzrTOuc61z4DOsc+Gzq7PgiAozrTOtc+Fz4TOtc+Bz4zOu861z4DPhM6xKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ86Vz4DOuc+Ez4HOrc+AzrXPhM6xzrkgzrcgzrXOs86zz4HOsc+Gzq4gz4PPhM63zr0gz4XPgM63z4HOtc+Dzq/OsSBFbWFpbCc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnzqDPgc6/zrXPgM65zrvOtc6zzrzOrc69zrcgzr/OvM6szrTOsSDOs865zrEgz4TOv8+Fz4Igzr3Orc6/z4XPgiDPh8+Bzq7Pg8+EzrXPgic7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ86RzrvOu86xzrPOriDPgc+FzrjOvM6vz4POtc+Jzr0gz4DPgc6/z4TPjc+Azr/PhSc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnzp/OuSDOus+JzrTOuc66zr/OryDPgM+Bz4zPg86yzrHPg863z4IgzrTOtc69IM+EzrHOuc+BzrnOrM62zr/Phc69JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ86czrcgzrHPgM6/zrTOtc66z4TPjCDPjM69zr/OvM6xIM+Hz4HOrs+Dz4TOtyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICfOnM63IM6xz4DOv860zrXOus+Ez4zPgiDOus+JzrTOuc66z4zPgic7CiRsYW5nWydlZGl0dXNlciddID0gJ86Vz4DOtc6+zrXPgc6zzrHPg86vzrEgz4PPhM6/zrnPh861zq/Pic69IM+Hz4HOrs+Dz4TOtyc7CiRsYW5nWyd2YWxpZCddID0gJ86IzrPOus+Fz4HOvyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ86Mzr3Ov868zrEgz4fPgc6uz4PPhM63JzsKJGxhbmdbJ3N0YXR1cyddID0gJ86azrHPhM6sz4PPhM6xz4POtyc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICfOkc+Fz4TPjM+CIM6/IM+Hz4HOrs+Dz4TOt8+CIM60zrXOvSDOtc6vzr3Osc65IM68zq3Ou86/z4IgzrrOsc68zrzOr86xz4Igzr/OvM6szrTOsc+CJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICfOp8+Jz4HOr8+CIM65zrTOuc+Mz4TOt8+EzrXPgic7CiRsYW5nWyd2YWx1ZSddID0gJ86kzrnOvM6uJzsKJGxhbmdbJ2dyb3VwcyddID0gJ86fzrzOrM60zrXPgic7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnzpnOtM65z4zPhM63z4TOtc+CJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnzozOvc6/zrzOsSDOuc60zrnPjM+EzrfPhM6xz4InOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnzqTOuc68zq4gzrnOtM65z4zPhM63z4TOsc+CJzsKJGxhbmdbJ2FkZCddID0gJ86gz4HOv8+DzrjOrs66zrcnOwokbGFuZ1snZWRpdCddID0gJ86Vz4DOtc6+zrXPgc6zzrHPg86vzrEnOwokbGFuZ1snZXhwaXJlcyddID0gJ86bzq7Os861zrknOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnzp/Pgc65z4POvM+Mz4IgzrfOvM61z4HOv868zrfOvc6vzrHPgic7CiRsYW5nWycxMmhycyddID0gJzEyIM+Oz4HOtc+CJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgz47Pgc61z4InOwokbGFuZ1snNDhocnMnXSA9ICc0OCDPjs+BzrXPgic7CiRsYW5nWycxd2VlayddID0gJzEgzrXOss60zr/OvM6szrTOsSc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIM61zrLOtM6/zrzOrM60zrXPgic7CiRsYW5nWycxbW9udGgnXSA9ICcxIM68zq7Ovc6xz4InOwokbGFuZ1snM21vbnRocyddID0gJzMgzrzOrs69zrXPgic7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiDOvM6uzr3Otc+CJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSDOrc+Ezr/Pgic7CiRsYW5nWyduZXZlciddID0gJ86gzr/PhM6tJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ86kzr8gzqzPgc64z4HPic68zrEgzrXOs866zrHPhM6xz4PPhM6szrjOt866zrUgzrXPgM65z4TPhc+Hz47Pgi48YnIvPs6SzrXOss6xzrnPic64zq7PhM61IM+Mz4TOuSDOv8+Bzq/Pg86xz4TOtSDOtM65zrrOsc65z47OvM6xz4TOsSAizqTPgc6/z4DOv8+Azr/Or863z4POtyDOuc60zrnOv8+Ezq7PhM+Jzr0gz4PPhM6xIM60zrnOus6xzrnPjs68zrHPhM6xIM+Ezr/PhSBGcm9udEVuZFVzZXIuIic7CiRsYW5nWydwYXNzd29yZCddID0gJ86az4nOtM65zrrPjM+CIM+Az4HPjM+DzrLOsc+DzrfPgic7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ86Vz4DOsc69zqzOu863z4jOtyc7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnzpcgzr/OvM6szrTOsSDOvM61IM6xz4XPhM6uzr0gz4TOt869IM6/zr3Ov868zrHPg86vzrEgz4XPgM6sz4HPh861zrkgzq7OtM63JzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ86Vz4DOtc6+zrXPgc6zzrHPg86vzrEgzr/OvM6szrTOsc+CJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ86Rz4DOv8+Dz4TOv867zq4nOwokbGFuZ1snY2FuY2VsJ10gPSAnzobOus+Fz4HOvyc7CiRsYW5nWydkZWxldGUnXSA9ICfOlM65zrHOs8+BzrHPhs6uJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnzpXOr8+Dz4TOtSDPg86vzrPOv8+Fz4HOv865IM+Mz4TOuSDOsc+Fz4TOrc+CIM61zq/Ovc6xzrkgzr/OuSDOus6xz4TOrM67zrvOt867zrXPgiDPgc+FzrjOvM6vz4POtc65z4IgzrPOuc6xIM6xz4XPhM6uzr0gz4TOt869IM6/zrzOrM60zrE/XG4gzpcgzrHPgM6/zrXOvc61z4HOs86/z4DOv86vzrfPg863IM68zrnOsc+CIM65zrTOuc+Mz4TOt8+EzrHPgiDOtM61zr0gOM6xIM6tz4fOtc65IM+Jz4Igz4PPhc69zq3PgM61zrnOsSDPhM63zr0gzrTOuc6xzrPPgc6xz4bOriDOus6sz4DOv865zrHPgiDOtc6zzrPPgc6xz4bOrs+CIM+Dz4TOv869IM+Azq/Ovc6xzrrOsSDOuc60zrnOv8+Ezq7PhM+Jzr0gzrPOuc6xIM+EzrfOvSDOv868zqzOtM6xL8+Hz4HOrs+Dz4TOty4gIM6Rz4DOu86sIM60zrXOvSA4zrEgzrXOr869zrHOuSDOtM65zrHOuM6tz4POuc68zrEuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICfOlc6vz4PPhM61IM+Dzq/Os86/z4XPgc6/zrkgzrPOuc6xIM+EzrfOvSDOtM65zrHOs8+BzrHPhs6uIM6xz4XPhM6uz4Igz4TOt8+CIM6/zrzOrM60zrHPgj8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ86Vzq/Pg8+EzrUgz4POr86zzr/Phc+Bzr/OuSDOs865zrEgz4TOt869IM+AzrvOrs+BzrcgzrTOuc6xzrPPgc6xz4bOriDOsc+Fz4TOrs+CIM+EzrfPgiDOuc60zrnPjM+EzrfPhM6xz4I/XG7Oms6xz4RcJ86xz4XPhM+Mzr0gz4TOv869IM+Ez4HPjM+Azr8gzrjOsSDOtM65zrHOs8+BzrHPhs6/z43OvSDOus6xzrkgzr/PgM6/zrnOtc+CIM61zrPOs8+BzrHPhs6tz4Igz4fPgc6uz4PPhM63IM6xz4bOv8+Bzr/Pjc69IM+EzrfOvSDOuc60zrnPjM+EzrfPhM6xIM6xz4XPhM6uLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICfOkc66zrHOuM+Mz4HOuc+Dz4TOtc+CIM+AzrHPgc6szrzOtc+Ez4HOv865JzsKJGxhbmdbJ2lkJ10gPSAnzpHOvc6xzrPOvc+Jz4HOuc+Dz4TOuc66z4wnOwokbGFuZ1snbmFtZSddID0gJ86fzr3Ov868zrHPg86vzrEnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdvcnVwJ10gPSAnzqDPgc+MzrLOu863zrzOsSDPg8+EzrfOvSDPgM+Bzr/Pg864zq7Ous63IM6/zrzOrM60zrHPgic7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnzpzOriDOrc6zzrrPhc+BzrXPgiDPgM6xz4HOrM68zrXPhM+Bzr/OuSc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ86Vz4bOsc+BzrzOv86zzq4nOwokbGFuZ1snZmlsdGVyJ10gPSAnzqbOr867z4TPgc6/JzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdSZWd1bGFyIEV4cHJlc3Npb24gzrPOuc6xIM+Ezr8gz4zOvc6/zrzOsSDPh8+Bzq7Pg8+EzrcnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICfOoM61z4HOuc6zz4HOsc+Gzq4nOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnzp/Ovc6/zrzOsc+Dzq/OsSDOv868zqzOtM6xz4InOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnzpHPgM6xzrPOv8+BzrXPjc61z4TOsc65IM63IM+Az4HPjM+DzrLOsc+DzrcuJzsKJGxhbmdbJ2Vycm9yJ10gPSAnzqPPhs6szrvOvM6xJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnzqDPgc6/z4POuM6uzrrOtyDOvc6tzrHPgiDOn868zqzOtM6xz4InOwokbGFuZ1snYWRkdXNlciddID0gJ86gz4HOv8+DzrjOrs66zrcgzr3Orc6/z4Ugz4fPgc6uz4PPhM63JzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICfOlc+Fz4HOrc64zrfOus6xzr0gzr/OuSDPgM6xz4HOsc66zqzPhM+JIM+Hz4HOrs+Dz4TOtc+CIM+Azr/PhSDOuc66zrHOvc6/z4DOv865zr/Pjc69IM+EzrEgzrrPgc65z4TOrs+BzrnOsSc7CiRsYW5nWydncm91cCddID0gJ86fzrzOrM60zrEnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICfOlc+AzrnOu86/zrPOriDOv868zqzOtM6xz4InOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnzqDPgc+Mz4TPhc+Azr8gzrXOs86zz4HOsc+Gzq7Pgic7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICfOoM+Bz4zPhM+Fz4DOvyDOsc+Azr/Pg8+Nzr3OtM61z4POt8+CJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnzqDPgc+Mz4TPhc+Azr8gz4PPjc69zrTOtc+DzrfPgic7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ86gz4HOv8+EzrnOvM6uz4POtc65z4InOwokbGFuZ1sndXNlcnMnXSA9ICfOp8+Bzq7Pg8+EzrXPgic7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICfOlM65zrHPh861zq/Pgc65z4POtyDOtc6zzrPOtc6zz4HOsc68zq3Ovc+Jzr0gz4fPgc63z4PPhM+Ozr0nOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICfOlM65zrHPh861zrnPgc65z4PPhM61zq/PhM61IM+Ezr/Phc+CIM61zrPOs861zrPPgc6xzrzOrc69zr/Phc+CIM+Hz4HOrs+Dz4TOtc+CJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICfOoM+Bzr/Otc+AzrnOu861zrPOvM6tzr3OtyDOsc+Bz4fOuc66zq4gz4POtc67zq/OtM6xJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICfOo861zrvOr860zrEgz4DOv8+FIM+Az4HOv8+Dz4DOtc67zqzPg8+EzrfOus61IM+Az4HPjM+Dz4bOsc+EzrEnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnzobOu867zrcgz4POtc67zq/OtM6xOiAnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/es_ES.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdVc2FkbyBjb24gdW5hIGRlIGxhcyBmb3JtYXMsIGVzdGUgcGFyJmFhY3V0ZTttZXRybyBlc3BlY2lmaWNhIHF1ZSBsYXMgZm9ybWFzIGRvIGRlYmVyJmFhY3V0ZTtuIHNlciBwdWVzdGFzIGVuIGxpbmVhLCBsbyBjdWFsIHByb3ZvY2FyJmFhY3V0ZTsgcXVlIGRlc3B1ZXMgZGVsIGVudmlvIGRlIHVuYSBmb3JtYSBlbCBjb250ZW5pZG8gcHJlZGV0ZXJtaW5hZG8gZGUgbGEgcGFnaW5hIGVuIGxhIHF1ZSBzZSBlbmN1ZW50cmUsIHNlYSByZWVtcGxhemFkby4nOwokbGFuZ1sndGl0bGVfcmVzZXRfc2Vzc2lvbiddID0gJ0FkdmVydGVuY2lhIGRlIHRpZW1wbyBkZSBlc3BlcmEgYWdvdGFkbyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1N1IHNlc2kmb2FjdXRlO24gZGUgYWNjZXNvIGVzdGEgYSBwdW50byBkZSBleHBpcmFyLCBwb3IgZmF2b3Igb3ByaW1hIE9LIHBhcmEgY29uZmlybWFyIHN1IGFjdGl2aWRhZCBlbiBlc3RlIHNpdGlvJzsKJGxhbmdbJ29rJ10gPSAnT2sgJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1JlZXN0YWJsZWNlciBwbGFudGlsbGEgZGUgc2VzaSZvYWN1dGU7bic7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdFc3RlIGVzIGVsIG5vbWJyZSBkZWwgY2FtcG8sIHVzYWRvIHBhcmEgbGxhbWFkYXMgZW4gU21hcnR5LiBTb2xvIHB1ZWRlIGNvbnRlbmVyIGNhcmFjdGVyZXMgYWxmYW51bWVyaWNvcyB5IGd1aW9uZXMgbWVub3Jlcy4nOwokbGFuZ1sndmlzaXRvcnNfdGFiJ10gPSAnVmlzaXRhbnRlcyc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1NlbGVjY2lvbmUgdW5vIG8gbWFzIGdydXBvcyBGRVUgcXVlIHRpZW5lbiBwZXJtaXNvIHBhcmEgdmVyIGVzdGEgcCZhYWN1dGU7Z2luYSc7CiRsYW5nWydlcnJvcl9tdXN0c2VsZWN0X2dyb3VwJ10gPSAnVW4gZ3J1cG8gZGViZSBzZXIgc2VsZWNjaW9uYWRvJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGVjY2lvbmUgdW5vJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdBJm50aWxkZTtvIGRlIGluaWNpbyc7CiRsYW5nWydlbmRfeWVhciddID0gJ0EmbnRpbGRlO28gZGUgZmluJzsKJGxhbmdbJ2RhdGUnXSA9ICdGZWNoYSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdUYW1hJm50aWxkZTtvIGRlIGltYWdlbiBtaW5pYXR1cmEnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ0N1YW5kbyBzZSBtb2RpZmlxdWUgZWwgZ3J1cG8gZGUgdXN1YXJpb3MnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnRGVtYXNpYWRvcyB1c3VhcmlvcyBzZWxlY2Npb25hZG9zIHBhcmEgb3BlcmFjaW9uZXMgdm9sdW1pbm9zYXMsIHBvciBmYXZvciByZWR1emNhIGEgMjUwIG8gbWVub3NsZXNzJzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnJmlxdWVzdDtFc3QmYWFjdXRlOyBzZWd1cm8gZGUgYm9ycmFyIGxvcyB1c3VhcmlvcyBzZWxlY2Npb25hZG9zPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdCb3JyYXIgbGEgc2VsZWNjaSZvYWN1dGU7bic7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmFyIHVzdWFyaW8gYWxlYXRvcmlvIGN1YW5kbyBzZSBhZ3JlZ3VlbiBudWV2b3MgdXN1YXJpb3MnOwokbGFuZ1snbW9udGhzJ10gPSAnbWVzZXMnOwokbGFuZ1sncHJvbXB0X2V4cGlyZWFnZSddID0gJ1BlcmlvZG8gcHJlZGV0ZXJtaW5hZG8gZGUgZXhwaXJhY2kmb2FjdXRlO24gZGUgdXN1YXJpb3MgJzsKJGxhbmdbJ25vdGlmaWNhdGlvbl9zZXR0aW5ncyddID0gJ0FqdXN0ZXMgZGUgbm90aWZpY2FjaW9uZXMnOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdBanVzdGVzIGRlIHByb3BpZWRhZGVzJzsKJGxhbmdbJ3JlZGlyZWN0aW9uX3NldHRpbmdzJ10gPSAnQWp1c3RlcyBkZSByZWRpcmVjY2lvbmFtaWVudG8nOwokbGFuZ1snZ2VuZXJhbF9zZXR0aW5ncyddID0gJ0FqdXN0ZXMgZ2VuZXJhbGVzJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdBanVzdGVzIGRlIHNlc2kmb2FjdXRlO24geSBjb29raWVzJzsKJGxhbmdbJ2ZpZWxkX3NldHRpbmdzJ10gPSAnQWp1c3RlcyBkZSBjYW1wb3MnOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnVGhlIGxvc3R1c2VybmFtZSBmbGFnIGNhbiBvbmx5IGJlIHVzZWQgb24gcmVxdWlyZWQgZmllbGRzJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ0FsbG93IHVzZSBvZiB3eXNpd3lnIG9uIHRoaXMgdGV4dCBhcmVhJzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBUaGlzIHVzZXMgdGhlIG1jcnlwdCBmdW5jdGlvbnMgZm9yIGVuY3J5cHRpb24gcHVycG9zZXMsIGFuZCB0aGV5IGNvdWxkIG5vdCBiZSBkZXRlY3RlZCBvbiB5b3VyIGluc3RhbGwuICAgUGxlYXNlIGNvbnRhY3QgeW91ciBzZXJ2ZXIgYWRtaW5pc3RyYXRvci4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnVXN1YXJpbyBkZSBlZGljaSZvYWN1dGU7bic7CiRsYW5nWydub2lubGluZSddID0gJ0RvIG5vdCBpbmxpbmUgZm9ybXMnOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdDbGljayBoZXJlIGlmIHlvdSBjYW5ub3QgcmVtZW1iZXIgeW91ciBsb2dpbiBkZXRhaWxzJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdDbGljayBoZXJlIGlmIHlvdSBjYW5ub3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0NsaWNrIGhlcmUgdG8gc2lnbiBvdXQnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ0NsaWNrIGhlcmUgdG8gYWRqdXN0IHlvdXIgcGFzc3dvcmQgb3Igb3RoZXIgaW5mb3JtYXRpb24nOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdWaWV3IFVzZXIgVGVtcGxhdGUnOwokbGFuZ1snZXZlbnQnXSA9ICdFdmVudCc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnRkVVIEV2ZW50IE5vdGlmaWNhdGlvbic7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX2FkZHJlc3MnXSA9ICdOb3RpZmljYXRpb24gRW1haWwgQWRkcmVzcyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnTm90aWZpY2F0aW9uIEVtYWlsIFRlbXBsYXRlJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCddID0gJ05vdGlmaWNhdGlvbiBFbWFpbCBTdWJqZWN0JzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25zJ10gPSAnRW1haWwgTm90aWZpY2F0aW9ucyc7CiRsYW5nWydPbkxvZ2luJ10gPSAnQWwgaW5ncmVzYXInOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdBbCBzYWxpcic7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICdPbiBTZXNzaW9uIEV4cGlyeSc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdPbiBOZXcgVXNlciBDcmVhdGVkJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ09uIFVzZXIgRGVsZXRlZCc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdPbiBVc2VyIFNldHRpbmdzIENoYW5nZWQnOwokbGFuZ1snT25DcmVhdGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgQ3JlYXRlZCc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBEZWxldGVkJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnVGhlIGxvc3QgbG9naW4gZGV0YWlscyBmdW5jdGlvbmFsaXR5IGhhcyBzdWNjZXNzZnVsbHkgY29tcGxldGVkLiAgV2UgaGF2ZSBmb3VuZCBhIHVuaXF1ZSB1c2VybmFtZSB0aGF0IG1hdGNoZXMgdGhlIGRldGFpbHMgeW91IGVudGVyZWQuJzsKJGxhbmdbJ3lvdXJfdXNlcm5hbWVfaXMnXSA9ICdTdSBub21icmUgZGUgdXN1YXJpbyBlcyc7CiRsYW5nWydsb3N0dW5jb25maXJtX3Bvc3Rtc2cnXSA9ICdXZSByZWNvbW1lbmQgeW91IHJlY29yZCB0aGlzIGluZm9ybWF0aW9uIGluIGEgc2VjdXJlLCBidXQgcmV0cmlldmFibGUgbG9jYXRpb24uJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjaGFuZ2Ugc2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnSUQgUCZhYWN1dGU7Zy4vQWxpYXMgYSBkb25kZSBpciBsdWVnbyBkZSB2ZXJpZmljYXIgYyZvYWN1dGU7ZGlnbyAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnUGxhbnRpbGxhIGRlIERldGFsbGVzIGRlIFVzdWFyaW9zIFBlcmRpZG9zJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnUGxhbnRpbGxhIGRlIENvbmZpcm1hY2kmb2FjdXRlO24gZGUgVXN1YXJpb3MgUGVyZGlkb3MnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdFcnJvcjogTSZhYWN1dGU7cyBkZSB1bmEgY3VlbnRhIGRlIHVzdWFyaW8gY29pbmNpZGVuIGNvbiBsYXMgcHJvcGllZGFkZXMgZXNwZWNpZmljYWRhcyc7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdFcnJvcjogTm8gc2UgcHVkbyBoYWxsYXIgdW4gdXN1YXJpbyBxdWUgY29pbmNpZGEnOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0Vycm9yOiBObyBzZSBwdWRvIGhhbGxhciB1biBncnVwbyBjb24gZXNlIG5vbWJyZSc7CiRsYW5nWydyZWFkb25seSddID0gJ1NvbG8gTGVjdHVyYSc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnQ2xhc2UgVXNlciBNYW5pcHVsYXRvcic7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdRdWl0YWRvIGRlbCBzaXN0ZW1hIHBvciBlbCBhZG1pbmlzdHJhZG9yJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdNb3N0cmFyIHNvbG8gdXN1YXJpb3MgbG9ndWVhZG9zJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdEZXNsb2d1ZWFyIGVzdGUgdXN1YXJpbyc7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdQcm9waWVkYWRlcyBkZWwgVXN1YXJpbyc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0hpc3RvcmlhbCBkZWwgVXN1YXJpbyc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnRhcic7CiRsYW5nWydjbGVhciddID0gJ0xpbXBpYXInOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnRXhwb3J0YXIgaGlzdG9yaWFsIGRlbCB1c3VhcmlvIGEgQVNDSUknOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdMaW1waWFyIHJlZ2lzdHJvcyBkZWwgSGlzdG9yaWFsIGRlbCBVc3VhcmlvJzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJyZpcXVlc3Q7T2x2aWQmb2FjdXRlOyBzdXMgRGF0b3MgZGUgQWNjZXNvPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFeHBvcnRhciBkZWZpbmljaSZvYWN1dGU7biBkZSBncnVwbyAoeSBwcm9waWVkYWRlcykgYSBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ01hbnRlbmltaWVudG8gZGVsIEhpc3RvcmlhbCBkZWwgVXN1YXJpbyc7CiRsYW5nWyd5ZXMnXSA9ICdTJmlhY3V0ZTsnOwokbGFuZ1snbm8nXSA9ICdObyAnOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnRGUnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogU2luIExpbWl0ZSAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdVbmEgSG9yYSc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdTZWlzIEhvcmFzJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJ0RvY2UgSG9yYXMnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdVbiBEJmlhY3V0ZTthJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ1VuYSBTZW1hbmEnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ0RvcyBTZW1hbmFzJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdVbiBNZXMnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ1RyZXMgTWVzZXMnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICdTZWlzIE1lc2VzJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ1VuIEEmbnRpbGRlO28nOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnQWdydXBhciB5IE9yZGVuYXInOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1JlZ2lzdHJvcyBxdWUgY3VtcGxhbiBlbCBjcml0ZXJpbyc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ05vbWJyZSBkZSBVc3VhcmlvIGRlc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdOb21icmUgZGUgVXN1YXJpbyBhc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdGZWNoYSBkZXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdGZWNoYSBhc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1RpcG8gZGUgRXZlbnRvIGRlc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnVGlwbyBkZSBFdmVudG8gYXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdEaXJlY2NpJm9hY3V0ZTtuIElQIGRlc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnRGlyZWNjaSZvYWN1dGU7biBJUCBhc2NlbmRlbnRlJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdIaXN0b3JpYWwgbm8gZGV0ZWN0YWRvJzsKJGxhbmdbJ3Jlc2V0J10gPSAnUmVzdGFibGVjZXInOwokbGFuZ1sncHJvbXB0X2dyb3VwX2lwJ10gPSAnQWdydXBhciBwb3IgRGlyZWNjaSZvYWN1dGU7biBJUCc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0ZpbHRybyBkZSBUaXBvIGRlIEV2ZW50byc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdNb3N0cmFyIHNvbG8gZXZlbnRvcyBpbmZlcmlvcmVzIGE6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdMaW1pdGUgZGUgbGEgUCZhYWN1dGU7Z2luYSc7CiRsYW5nWydmb3InXSA9ICdwYXJhJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnSW5mb3JtZSBkZWwgSGlzdG9yaWFsIGRlbCBVc3VhcmlvJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdEZXNjb25vY2lkbyc7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnRGlyZWNjaSZvYWN1dGU7biBJUCc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnVGlwbyBkZSBFdmVudG8nOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdGZWNoYSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnVm9sdmVyJzsKJGxhbmdbJ2ltcG9ydF9jb21wbGV0ZV9tc2cnXSA9ICdPcGVyYWNpJm9hY3V0ZTtuIGRlIEltcG9ydGFjaSZvYWN1dGU7biBDb21wbGV0YWRhJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ0wmaWFjdXRlO25lYXMgUHJvY2VzYWRhcyc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnRXJyb3JlcyBFbmNvbnRyYWRvcyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUmVnaXN0cm9zIEEmbnRpbGRlO2FkaWRvcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnTm8gc2UgcHVlZGUgaGFsbGFyIGxhcyBwcm9waWVkYWRlcyBkZWwgZ3J1cG8gJXMnOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdObyBzZSBwdWRvIG9idGVuZXIgdW5hIHJlc3B1ZXN0YSBkZWwgc2Vydmlkb3IgU01UUCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdObyBzZSBwdWRvIGVuY29udHJhciBlbCBmaWNoZXJvIGVzcGVjaWZpY2FkbyAoJVMpJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdWYWxvciBpbnZhbGlkbyBwYXJhIGxhIGxpc3RhIGRlc3BsZWdhYmxlICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnRWwgY2FtcG8gJXMgZXhjZWRlIGxhIGxvbmdpdHVkIG0mYWFjdXRlO3hpbWEnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdFcnJvciBkdXJhbnRlIGxhIEltcG9ydGFjaSZvYWN1dGU7biAobCZpYWN1dGU7bmVhICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ05vIHNlIHB1ZG8gb2J0ZW5lciBsYSBkZWZpbmljaSZvYWN1dGU7biBkZSBsYSBwcm9waWVkYWQgKGVycm9yIGludGVybm8pJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW1hcyBhbCBjb25maWd1cmFyIGluZm8gZGVsIHVzdWFyaW8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ05vIHNlIGVuY29udHImb2FjdXRlOyBsYSBjb2x1bW5hIGNvcnJlc3BvbmRpZW50ZSBhbCBjYW1wbyByZXF1ZXJpZG8gJXMnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3BlcnRpZXMnXSA9ICdObyBzZSBlbmNvbnRyYXJvbiBwcm9waWVkYWRlcyBwYXJhIGVsIGdydXBvIGVzcGVjaWZpY2Fkbyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnRWwgZm9ybWF0byBkZWwgZmljaGVybyBlc3BlY2lmaWNhZG8gbm8gZXMgY29ycmVjdG8nOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ05vIHNlIHB1ZG8gYWJyaXIgZWwgZmljaGVybyc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5JbmZvcm1hY2kmb2FjdXRlO24gZGUgRm9ybWF0byBkZSBBcmNoaXZvPC9oND4NCjxwPkVsIGFyY2hpdm8gcGFyYSBpbXBvcnRhciBkZWJlIHNlciBkZSBmb3JtYXRvIEFTQ0lJIHVzYW5kbyBsb3MgdmFsb3JlcyBzZXBhcmFkb3MgcG9yIGNvbWEuICBDYWRhIGwmaWFjdXRlO25lYSBlbiBlc3RlIGFyY2hpdm8gZGUgaW1wb3J0YWNpJm9hY3V0ZTtuIChjb24gZXhlcGNpJm9hY3V0ZTtuIGRlIGxhIGwmaWFjdXRlO25lYSBkZSBlbmNhYmV6YWRvcywgZGlzY3V0aWRhIGFiYWpvKSByZXByZXNlbnRhIGVsIHJlZ2lzdHJvIGRlIHVuIHVzdWFyaW8uICBDYWRhIGwmaWFjdXRlO25lYSBkZWJlIGNvbnRlbmVyIGVsIG1pc21vIG4mdWFjdXRlO21lcm8gZGUgY2FtcG9zLCB5IGVsIG9yZGVuIGRlIGxvcyBjYW1wb3MgZW4gY2FkYSBsJmlhY3V0ZTtuZWEgZGViZSBzZXIgaWQmZWFjdXRlO250aWNvLjwvcD4NCjxoNT5MJmlhY3V0ZTtuZWEgZGUgZW5jYWJlemFkbzwvaDU+DQo8dWw+DQo8bGk+TGEgcHJpbWVyYSBsJmlhY3V0ZTtuZWEgZGVsIGFyY2hpdm8gZGViZSBjb21lbnphciBjb24gZG9zIGNhcmFjdGVyZXMgbnVtZXJhbCAoXCMpLCB5IGxvcyBub21icmUgZGUgY2FkYSB1bm8gZGUgbG9zIGNhbXBvcyBlbiBlbCBhcmNoaXZvLiAgRWwgbm9tYnJlIGRlIGVzdG9zIGNhbXBvcyBlcyBzaWduaWZpY2F0aXZvLiAgSGF5IGFsZ3Vub3Mgbm9tYnJlIGRlIGNhbXBvcyByZXF1ZXJpZG9zICh2ZXIgYWJham8pLCB5IG90cm9zIG5vbWJyZXMgZGUgY2FtcG9zIGRlYmVuIGNvaW5jaWRpciBjb24gZWwgbm9tYnJlIGRlIGxhcyBwcm9waWVkYWRlcyBhc29jaWFkYXMgYSBsb3MgZ3J1cG9zIGRlIHVzdWFyaW9zIGEgbG9zIGN1YWxlcyB2YW4gYSBzZXIgYWdyZWdhZG9zLjwvbGk+DQo8bGk+RWwgcHJvY2VzbyBkZSBpbXBvcnRhY2kmb2FjdXRlO24gdmEgYSBmYWxsYXIgc2kgbG9zIGNhbXBvcyBlbiBlbCBhcmNoaXZvIGRlIGltcG9ydGFyIG5vIGNvaW5jaWRlbiBjb24gdG9kYXMgbGFzIHByb3BpZWRhZGVzIHJlcXVlcmlkYXMgYXNvY2lhZGFzIGEgbG9zIGdydXBvcyBkZSB1c3VhcmlvcyBhIGxvcyBjdWFsZXMgdmFuIGEgc2VyIGFncmVnYWRvcy48L2xpPg0KPGxpPkVsIGFyY2hpdm8gZGUgaW1wb3J0YXIgcHVlZGUgY29udGVuZXIgY2FtcG9zIHF1ZSByZXByZXNlbnRlbiBhbGd1bmFzIGRlIGxhcyBwcm9waWVkYWRlcyBvcGNpb25hbGVzIGVuIGVsIGdydXBvIGVzcGVjaWZpY2Fkby48L2xpPg0KPGxpPkVsIHByb2Nlc28gZGUgaW1wb3J0YXIgdmEgYSBpZ25vcmFyIGN1YWxxdWllciBjYW1wbyBlbiBlbCBhcmNoaXZvIGRlIGltcG9ydGFyIHF1ZSBwdWVkYSBzZXIgZGVzY29ub2NpZG8sIG8gbWFwZWUgcHJvcGllZGFkZXMgcXVlIHNlIGhhbGxlbiA8ZW0+YXBhZ2FkYXM8L2VtPiBlbiBlbCBncnVwbyBlc3BlY2lmaWNhZG8gZGUgdXN1YXJpb3MuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNuIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnRhciBVc3VhcmlvcyBhIEVzdGUgR3J1cG8nOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnSW5wb3J0YXIgRmljaGVybyBDU1YnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdBcmNoaXZvIFhNTCBkZSBFbnRyYWRhJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydGFyIFVzdWFyaW9zJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ0ltcG9ydGFyIFVzdWFyaW9zJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ0xpbXBpYXInOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdSdXRhIGRlIERlc3Rpbm8gcGFyYSBsYSBJbWFnZW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdIYSBvY3VycmlkbyB1biBwcm9ibGVtYSBjb24gdW5hIHN1YmlkYSBpbmV4aXN0ZW50ZSAocGVybyByZXF1ZXJpZGEpJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdObyBzZSBwdWVkZSBwYXJzZWFyIGVsIGFyY2hpdm8gWE1MIHByb3Zpc3RvJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdObyBzZSBwdWVkZSBlbGltaW5hciB1biBncnVwbyBjb24gdXN1YXJpb3MnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ0VzdGUgdXN1YXJpbyB5YSBlc3QmYWFjdXRlOyBsb2d1ZWFkbyc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdFbCB0ZXh0byBkZSBsYSBpbWFnZW4gbm8gZXMgY29ycmVjdG8nOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1Blcm1pdGlyIHF1ZSBsb3MgdXN1YXJpb3Mgc2UgbG9ndWVlbiBtJmFhY3V0ZTtzIGRlIHVuYSB2ZXonOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0V4dGVuc2lvbmVzIGRlIGltYWdlbiBwZXJtaXRpZGFzIHBhcmEgbG9zIFVzdWFyaW9zJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkV2ZW50byBnZW5lcmFkbyBjdWFuZG8gdW4gdXN1YXJpbyBlcyBlbGltaW5hZG88L3A+DQo8aDQ+UGFyJmFhY3V0ZTttZXRyb3M8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gTm9tYnJlIGRlbCB1c3VhcmlvPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIElkIGRlbCB1c3VhcmlvPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPlVuIGV2ZW50byBnZW5lcmFkbyBjdWFuZG8gc2UgY3JlYSB1biB1c3VhcmlvPC9wPg0KPGg0PlBhciZhYWN1dGU7bWV0cm9zPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRWwgbm9tYnJlIGRlIHVzdWFyaW88L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gRWwgaWQgZGUgdXN1YXJpbzwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5VbiBldmVudG8gZ2VuZXJhZG8gY3VhbmRvIHNlIGFjdHVhbGl6YSB1biB1c3VhcmlvIChjdWFuZG8gbG8gaGFjZSBwb3Igc2kgbWlzbW8gbyBwb3IgZWwgYWRtaW4pPC9wPg0KPGg0PlBhciZhYWN1dGU7bWV0cm9zPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gTm9tYnJlIGRlbCB1c3VhcmlvPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIElkIGRlbCB1c3VhcmlvPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+VW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyBzZSBjcmVhIHVuIGdydXBvPC9wPg0KPGg0PlBhciZhYWN1dGU7bWV0cm9zPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRWwgbm9tYnJlIGRlIGdydXBvPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIExhIGRlc2NyaXBjaSZvYWN1dGU7biBkZWwgZ3J1cG88L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSWQgZGVsIGdydXBvPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+VW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyBzZSBlbGltaW5hIHVuIGdydXBvPC9wPg0KPGg0PlBhciZhYWN1dGU7bWV0cm9zPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gRWwgbm9tYnJlIGRlbCBncnVwbzwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBJZCBkZWwgZ3J1cG88L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5VbiBldmVudG8gZ2VuZXJhZG8gY3VhbmRvIHVuIHVzdWFyaW8gaW5ncmVzYSBhbCBQb3J0YWw8L3A+DQo8aDQ+UGFyJmFhY3V0ZTttZXRyb3M8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gRWwgbm9tYnJlIGRlbCB1c3VhcmlvIHF1ZSBpbmdyZXMmb2FjdXRlOzwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBMYSBkaXJlY2NpJm9hY3V0ZTtuIElQIGRlbCBjbGllbnRlPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWRvdXQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ1VuIGV2ZW50byBnZW5lcmFkbyBjdWFuZG8gdW4gdXN1YXJpbyBpbmdyZXNhIGFsIHNpc3RlbWEnOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ1VuIGV2ZW50byBnZW5lcmFkbyBjdWFuZG8gdW4gdXN1YXJpbyBzYWxlIGRlbCBzaXN0ZW1hJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnVW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyBsYSBzZXNpJm9hY3V0ZTtuIGRlIHVuIHVzdWFyaW8gZXhwaXJhJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnVW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyB1biBudWV2byB1c3VhcmlvIGVzIGNyZWFkbyc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ1VuIGV2ZW50byBnZW5lcmFkbyBjdWFuZG8gbGEgaW5mbyBkZSB1biB1c3VhcmlvIGVzIGFjdHVhbGl6YWRhJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnVW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyBsYSBjdWVudGEgZGUgdW4gdXN1YXJpbyBlcyBlbGltaW5hZGEnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnVW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyB1biBncnVwbyBkZSB1c3VhcmlvcyBlcyBjcmVhZG8nOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZUdyb3VwJ10gPSAnVW4gZXZlbnRvIGdlbmVyYWRvIGN1YW5kbyB1biBncnVwbyBkZSB1c3VhcmlvcyBlcyBhY3R1YWxpemFkbyc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdVbiBldmVudG8gZ2VuZXJhZG8gY3VhbmRvIHVuIGdydXBvIGRlIHVzdWFyaW9zIGVzIGVsaW1pbmFkbyc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnR3J1cG8gZGUgQWRtaW5pc3RyYWNpJm9hY3V0ZTtuJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogTG9zIHNpZ3VpZW50ZXMgbWFjcm9zIHB1ZWRlbiB1c2Fyc2UgZW4gZXN0b3MgY2FtcG9zOiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gQ3VhbmRvIHNlIHVzYSBlbCBtYWNybyB7JGdyb3VwfSwgZWwgc2lzdGVtYSB2YSBhIHN1c3RpdHVpciBlbCBub21icmUgZGVsIHByaW1lciBncnVwbyBkZSBtaWVtYnJvcyBhbCBjdWFsIGVsIHVzdWFyaW8gcGVydGVuZWNlLCB5IHZhIGEgcmUtZGlyZWNjaW9uYXIgYSBlc2EgcCZhYWN1dGU7Z2luYS4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0VkaXRhciBlc3RlIGNhbXBvIHBhcmEgcmVzZXRlYXIgbGEgY29udHJhc2UmbnRpbGRlO2EgZGVsIHVzdWFyaW8nOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0VkaXRhciBlc3RlIGNhbXBvIHBhcmEgcmVzZXRlYXIgbGEgY29udHJhc2UmbnRpbGRlO2EgZGVsIHVzdWFyaW8nOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnWWEgZXhpc3RlIHVuIHVzYXJpbyBjb24gZXNlIG5vbWJyZSc7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdObyBzZSBoYW4gZGV2dWVsdG8gcmVzdWx0YWRvcyBkZSBsYSBleHBvcnRhY2kmb2FjdXRlO24gYSBDU1YnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTG9uZ2l0dWQgZGVsIGNhbXBvICZxdW90O05vbWJyZSBkZSB1c3VhcmlvJnF1b3Q7JzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0xvbmdpdHVkIGRlbCBjYW1wbyAmcXVvdDtDb250cmFzZSZudGlsZGU7YSZxdW90Oyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTGFzIGxvbmdpdHVkZXMgTWluL01heCBkZSBsYSBjb250cmFzZSZudGlsZGU7YSBzb24gaW52YWxpZGFzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdMYXMgbG9uZ2l0dWRlcyBNaW4vTWF4IGRlbCBub21icmUgZGUgdXN1YXJpbyBzb24gaW52YWxpZGFzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdEaXJlY2NpJm9hY3V0ZTtuIGRlIGUtbWFpbCBpbnZhbGlkYSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ05vIHB1ZGltb3MgZW5jb250cmFyIHVuYSBkaXJlY2NpJm9hY3V0ZTtuIGRlIGUtbWFpbCBwYXJhIGVzdGEgY3VlbnRhJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVtYXMgYWwgZXN0YWJsZWNlciBsYSBpbmZvcm1hY2kmb2FjdXRlO24gZGVsIHVzdWFyaW8nOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbWFzIGFsIGVzdGFibGVjZXIgbGEgcHJvcGllZGFkJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVc3VhcmlvIEEmbnRpbGRlO2FkaWRvICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnVXN1YXJpbyBFbGltaW5hZG8gdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnUHJvcGllZGFkJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWxvciAoZXhwcmVzaSZvYWN1dGU7biByZWd1bGFyKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ0N1aWRhZG86IEVzdG9zIGNhbXBvcyBhZmVjdGFuIGFsIHRhbWEmbnRpbGRlO28gZGUgbG9zIGNhbXBvcyBkZSB0ZXh0byBkZSBsb3MgZm9ybXVsYXJpb3MuIFJlZHVjaXIgZWwgbiZ1YWN1dGU7bWVybyBlbiB1bmEgd2ViIGV4aXN0ZW50ZSwgcHVlZGUgbm8gc2VyIHJlY29tZW5kYWJsZS4nOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0VzdCZhYWN1dGU7cyBzZWd1cm8gZGUgcXVlcmVyIGFqdXN0YXIgbGFzIHByZWZlcmVuY2lhcyBkZWwgbSZvYWN1dGU7ZHVsbz8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0RpcmVjY2kmb2FjdXRlO24gZGUgZS1tYWlsIHlhIHV0aWxpemFkYSc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdVc2FyIGNvb2tpZXMgcGFyYSByZWNvcmRhciBsb3MgZGV0YWxsZXMgZGUgYWNjZXNvJzsKJGxhbmdbJ3Byb21wdF9jb29raWVuYW1lJ10gPSAnRWwgbm9tYnJlIGRlIGxhIGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1Blcm1pdGlyIGUtbWFpbHMgZHVwbGljYWRvcyc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdEaXJlY2NpJm9hY3V0ZTtuIGRlIGVtYWlsIGVzIGVsIHVzdWFyaW8nOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnSW50ZW50YXIgbWFudGVuZXIgbG9zIGluZ3Jlc29zIGNvbiB2aWRhIGNvbiBlbCB1c28gZGUgdW5hIGNvb2tpZSA8ZW0+KGxhIGNvb2tpZSBlcyByZXNldGVhZGEgY29uIGxhIGFjdGl2aWRhZCBkZWwgc2l0aW8gd2ViKTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyhwZXJtaXRpciB2YXJpb3MgdXN1YXJpb3MgY29uIHVuYSBtaXNtYSBkaXJlY2NpJm9hY3V0ZTtuIGRlIGUtbWFpbCknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1c2VyJiMwMzk7cyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lIC0tIGRvbiYjMDM5O3Qgc2V0IHRoaXMgd2l0aCAmcXVvdDthbGxvdyBkdXBsaWNhdGUgZW1haWwgYWRkcmVzc2VzJnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdQZXJtaXRpciByZWNvcmRhdG9yaW9zIGRlICZxdW90O2NvbnRyYXNlJm50aWxkZTthIG9sdmlkYWRhJnF1b3Q7IGR1cGxpY2Fkb3M/JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJyhwZXJtaXRpciBsYSBwZXRpY2kmb2FjdXRlO24gZGUgcmVzZXRlbyBkZSBjb250cmFzZSZudGlsZGU7YSwgYXVucXVlIGVsIHVzdWFyaW8gbm8gaGF5YSB1dGlsaXphZG8gbnVuY2EgbGEgYW50ZXJpb3IpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNhciBwZXJtaXNvcyBlc3BlY2lmaWNvcyBwYXJhIGVsIFVzdWFyaW8gZGUgRnJvbnQtZW5kPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbWVudGUsIGxvcyBwZXJtaXNvcyBkZSBsb3MgVXN1YXJpb3MgRkUgc29uIGVxdWl2YWxlbnRlcyBhIGxvcyBwZXJtaXNvcyBkZWwgQXJlYSBkZSBBZG1pbmlzdHJhY2kmb2FjdXRlO24gY29tbyBBJm50aWxkZTthZGlyIFVzdWFyaW8sIEEmbnRpbGRlO2FkaXIgR3J1cG8sIGV0Yy4gU2kgc2VsZWNjaW9uYSBlc3RhIG9wY2kmb2FjdXRlO24sIGhhYnImYWFjdXRlOyBwZXJtaXNvcyBkaWZlcmVudGVzIHBhcmEgbG9zIFVzdWFyaW8gRkUuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnTm8gc2UgcHVkbyBlbmNvbnRyYXIgZWwgZmljaGVybyBzdWJpZG8gKGVycm9yIGludGVybm8pJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnSHVibyB1biBwcm9ibGVtYSBjb24gc3UgYXJjaGl2byBzdWJpZG8uICBQb3IgZmF2b3IgcHJ1ZWJlIG51ZXZhbWVudGUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnTm8gaW5kaWMmb2FjdXRlOyB1biBub21icmUgZGUgdXN1YXJpbyc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdObyBzZSBpbmdyZXMmb2FjdXRlOyB1biBlbWFpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdObyBpbmRpYyZvYWN1dGU7IHVuYSBjb250cmFzZSZudGlsZGU7YSc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnU2FsaWRhIGRlIFVzdWFyaW8gZGVsIFBvcnRhbCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdJbmdyZXNvIGRlIFVzdWFyaW8gZGVsIFBvcnRhbCc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlRFTkdBIFBSRUNBVUNJJk9hY3V0ZTtOPC9iPiBjdWFuZG8gc2UgY2FtYmlhIHByb3BpZWRhZGVzIGV4aXN0ZW50ZXMgcXVlIHNvbiBhc2lnbmFkYXMgYSBncnVwb3MsIHBvdGVuY2lhbG1lbnRlIHVzdGVkIHB1ZWRlIGNhdXNhciBkYSZudGlsZGU7byB5IGRlc2hhY2VyIHVuIHNpdGlvIGV4aXN0ZW50ZSA8aT4oZXNwZWNpYWxtZW50ZSBzaSByZWR1Y2UgbGEgbG9uZ2l0dWQgZGUgbG9zIGNhbXBvcywgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnRXN0YSBmdW5jaSZvYWN1dGU7biBubyB0cmFiYWphIGVuIFdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ05vIGNyZWFyIHVuYSBwcm9waWVkYWQgcGFyYSBlbCB1c3VhcmlvLCBvIGxhIGNvbnRyYXNlJm50aWxkZTthLCB5YSBxdWUgZXN0YXMgcHJvcGllZGFkZXMgc29uIHBhcnRlIGRlbCBtJm9hY3V0ZTtkdWxvIFVzdWFyaW9zIGRlbCBQb3J0YWwnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydGFyIFVzdWFyaW9zIGEgQ1NWJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydGFyJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydGFyJzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW4gJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnRWRpdGFyIFByb3BpZWRhZCc7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdMb25naXR1ZCBtJmFhY3V0ZTt4aW1hJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdDcmVhZG8nOwokbGFuZ1snc29ydGJ5J10gPSAnT3JkZW5hciBwb3InOwokbGFuZ1snc29ydCddID0gJ09yZGVuYW5kbyc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdVc3VhcmlvcyBlbiBlbC9sb3MgZ3J1cG8ocykgc2VsZWNjaW9uYWRvKHMpJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0xpbWl0YXIgcmVzdWx0YWRvcyBhJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ05vIHNlIGhhIHBvZGlkbyBlbmNvbnRyYXIgdW4gY2FtcG8gZGUgZS1tYWlsIHBhcmEgZXN0ZSB1c3VhcmlvLiBFcyBwb3NpYmxlIHF1ZSB0ZW5nYSBxdWUgcG9uZXJzZSBlbiBjb250YWN0byBjb24gZWwgYWRtaW5pc3RyYWRvciBkZWwgc2lzdGVtYSc7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ0lEUCZhYWN1dGU7Zy9BbGlhcyBwYXJhIGZvcm11bGFyaW8gZGUgT2x2aWRvIGRlIENvbnRyYXNlJm50aWxkZTthJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnSURQJmFhY3V0ZTtnL0FsaWFzIHBhcmEgZm9ybXVsYXJpbyBkZSBDYW1iaW8gQ29uZmlndXJhY2kmb2FjdXRlO24nOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdJRFAmYWFjdXRlO2cvQWxpYXMgcGFyYSBzYWx0YXIgbHVlZ28gZGVsIGluZ3Jlc28qJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ0lEUCZhYWN1dGU7Zy9BbGlhcyBwYXJhIHNhbHRhciBsdWVnbyBkZWwgZWdyZXNvKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdGb3JtYSBkZSBvcmRlbmFyJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0hheSB1biBjaWVydG8gbiZ1YWN1dGU7bWVybyBkZSB1c3VhcmlvcyBxdWUgZXN0JmFhY3V0ZTtuIGVuIGVsIG1lZGlvIGRlIHVuYSByZWN1cGVyYWNpJm9hY3V0ZTtuIGRlIGNvbnRyYXNlJm50aWxkZTthIHBlcmRpZGEuIEVsIG4mdWFjdXRlO21lcm8gYXNjaWVuZGUgYTonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdFbGltaW5hciB0b2RhcyBsYXMgZW50cmFkYXMgZGUgaGFjZSBtJmFhY3V0ZTtzIGRlIHVuYSBzZW1hbmEnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnRWxpbWluYXIgdG9kYXMgbGFzIGVudHJhZGFzIGRlIGhhY2UgbSZhYWN1dGU7cyBkZSB1biBtZXMnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnRWxpbWluYXIgdG9kYXMgbGFzIGVudHJhZGFzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICcmaXF1ZXN0O0VzdCZhYWN1dGU7IHNlZ3Vybz8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdTZSBoYSBpbnRyb2R1Y2lkbyB1biBjJm9hY3V0ZTtkaWdvIGludmFsaWRvLCB2dWVsdmEgYSBpbnRlbnRhcmxvJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdObyBzZSBwdWRvIGhhbGxhciB1biBjJm9hY3V0ZTtkaWdvIHRlbXBvcmFyaW8gcGFyYSBzdSBpZCBkZSB1c3VhcmlvIGVuIGxhIGJhc2UgZGUgZGF0b3MnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdQbGFudGlsbGEgdXNhZGEgcGFyYSBtb3N0cmFyIGVsIGZvcm11bGFyaW8gZGUgdmVyaWZpY2FjaSZvYWN1dGU7bic7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnUGxhbnRpbGxhIHBhcmEgZWwgZW1haWwgZGUgY29udHJhc2UmbnRpbGRlO2Egb2x2aWRhZGEnOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ0JpZW4gdXN0ZWQgdSBvdHJhIHBlcnNvbmEgeWEgaGFuIHJlY2xhbWFkbyBwb3IgdW5hIG9wZXJhY2kmb2FjdXRlO24gZGUgcmVzZXRlbyBkZSBsYSBjb250cmFzZSZudGlsZGU7YSBwYXJhIGVzdGEgY3VlbnRhLiAgT2JzZXJ2ZSBzdSBlbWFpbCwgdXN0ZWQgeWEgZGViZSB0ZW5lciBlbiBzdSBjYXNpbGxhIGxhcyBpbnN0cnVjY2lvbmVzIG5lY2VzYXJpYXMgY29tbyBwYXJhIHJlc2V0ZWFyIHN1IGNvbnRyYXNlJm50aWxkZTthJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJvciBlbiBsYSBiYXNlIGRlIGRhdG9zJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1VzdGVkIGVzdGEgcmVjaWJpZW5kbyBlc3RlIG1lbnNhamUgcHVlcyBhbGd1aWVuIG5vcyBoYSBpbmRpY2FkbyBlbiBudWVzdHJvIHNpdGlvIHdlYiBxdWUgaGEgcGVyZGlkbyBsYSBjb250cmFzZSZudGlsZGU7YS4gIFNpIGFzJmlhY3V0ZTsgZXMsIGxlYSBsYXMgaW5zdHJ1Y2Npb25lcyBkZSBhYmFqby4gIFNpIHVzdGVkIG5vIHRpZW5lIG5pbmd1bmEgaWRlYSBhbCByZXNwZWN0bywgcHVlZGUgZWxpbWluYXIgZXN0ZSBtZW5zYWplIGNvbiB0b2RhIHRyYW5xdWlsaWRhZCwgeSBsZSBhZ3JhZGVjZW1vcyBwb3Igc3UgdGllbXBvLic7CiRsYW5nWydwcm9tcHRfY29kZSddID0gJ0Mmb2FjdXRlO2RpZ28nOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnRWwgYyZvYWN1dGU7ZGlnbyBzaWd1aWVudGUgc2UgaGEgZ2VuZXJhZG8gZW4gZm9ybWEgYWxlYXRvcmlhIGNvbiBlbCBmaW4gZGUgdmVyaWZpY2FyIGFsIHVzdWFyaW8gZGUgbGEgY3VlbnRhLiAgQ3VhbmRvIHVzdGVkIGhhZ2EgY2xpY2sgZW4gZWwgZW5sYWNlIGRlIGFiYWpvIGEgdXN0ZWQgbGUgc2VyJmFhY3V0ZTsgcHJlc2VudGFkbyB1biBjYW1wbyBwYXJhIGluZ3Jlc2FyIGVsIGMmb2FjdXRlO2RpZ28uICBOb3JtYWxtZW50ZSBlbCBjYW1wbyBlcyByZWxsZW5hZG8gYXV0b20mYWFjdXRlO3RpY2FtZW50ZSwgcGVybyBlbiBjYXNvIGRlIHF1ZSBhcyZpYWN1dGU7IG5vIGZ1ZXJhIGVsIGMmb2FjdXRlO2RpZ28gZXM6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnQWwgaGFjZXIgY2xpY2sgc29icmUgZWwgc2lndWllbnRlIGVubGFjZSBzZSBsZSByZWRpcmlnaXImYWFjdXRlOyBhIHVuYSBwJmFhY3V0ZTtnaW5hIGRvbmRlIHB1ZWRhIGludHJvZHVjaXIgZWwgYyZvYWN1dGU7ZGlnbyB5IHJlc2V0ZWFyIHN1IGNvbnRyYXNlJm50aWxkZTthOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnQ29udHJhc2UmbnRpbGRlO2EgUGVyZGlkYSc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ05vIHNlIGhhIHBvZGlkbyBlbmNvbnRyYXIgZWwgbSZvYWN1dGU7ZHVsbyBDTVNNYWlsZXInOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnU2UgaGEgZW52aWFkbyB1biBlbWFpbCBhICVzIGNvbiBsYXMgaW50cnVjY2lvbmVzIGRlIGNvbW8gcmVzZXRlYXIgbGEgY29udHJhc2UmbnRpbGRlO2EuIE11Y2hhcyBncmFjaWFzLic7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ0FzJmlhY3V0ZTsgcXVlIG9sdmlkJm9hY3V0ZTsgbyBwZXJkaSZvYWN1dGU7IHN1IGNvbnRyYXNlJm50aWxkZTthLiBFc2NyaWJhIGFxdSZpYWN1dGU7IHN1IG5vbWJyZSBkZSB1c3VhcmlvIHksIHNpIHBvZGVtb3MgZW5jb250cmFybG8sIGxlIGVudmlhcmVtb3MgdW4gZS1tYWlsIGNvbiBsYXMgaW5zdHJ1Y2Npb25lcyBwYXJhIHJlc2V0ZWFyIGFsIG1pc21vLic7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJ1BsYW50aWxsYXMgZGUgQ29udHJhc2UmbnRpbGRlO2EgUGVyZGlkYSc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdQbGFudGlsbGEgZGUgTm9tYnJlIGRlIFVzdWFyaW8gUGVyZGlkbyc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdQcm9waWVkYWQgJXMgbm8gZW5jb250cmFkYSc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAnUHJvcGllZGFkZXMgZW5jb250cmFkYXMnOwokbGFuZ1snYWRkcHJvcCddID0gJ0EmbnRpbGRlO2FkaXIgUHJvcGllZGFkJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdVbiBjYW1wbyBvYmxpZ2F0b3JpbyAoJXMpIGVzdCZhYWN1dGU7IHZhYyZpYWN1dGU7byc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ0ludHJvZHVjaXIgdW5hIG51ZXZhIGNvbnRyYXNlJm50aWxkZTthIGFxdSZpYWN1dGU7IHBhcmEgbW9kaWZpY2FyIHN1IGNvbnRyYXNlJm50aWxkZTthJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnUGFyZWNlIHF1ZSBubyBlc3QmYWFjdXRlO3MgbG9ndWVhZG8nOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ1ByZWZlcmVuY2lhcyc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJvJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnRXN0YSBjdWVudGEgaGEgY2FkdWNhZG8nOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ0RpcmVjY2kmb2FjdXRlO24gZGUgZS1tYWlsIGludiZhYWN1dGU7bGlkYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ0ZlY2hhIGRlIGNhZHVjaWRhZCBpbnYmYWFjdXRlO2xpZGEnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0Vycm9yIGVzdGFibGVjaWVuZG8gbGEgcHJvcGllZGFkICVzIHBhcmEgZWwgdXN1YXJpbyAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ0lkIGRlIGdydXBvICVzIGludiZhYWN1dGU7bGlkbyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ01hcmNhZG9yIGRlIGNhbXBvIG9jdWx0byc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnQ29sb3IgZGUgY2FtcG8gb2N1bHRvJzsKJGxhbmdbJ2hpZGRlbiddID0gJ09jdWx0byc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnVW5hIHByb3BpZWRhZCBjb24gZXNlIG5vbWJyZSB5YSBlc3QmYWFjdXRlOyBkZWZpbmlkYSc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdObyBoYXkgcHJvcGllZGFkZXMgZGVmaW5pZGFzJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnTm8gaGF5IHByb3BpZWRhZGVzIHNlbGVjY2lvbmFkYXMgcGFyYSBlc3RlIGdydXBvJzsKJGxhbmdbJ25vZ3JvdXBzJ10gPSAnTm8gaGF5IEdydXBvcyBkZWZpbmlkb3MnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcnVwb3MgRW5jb250cmFkb3MnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ0xhIHBlcnRlbmVjaWEgZW4gYWwgbWVub3MgdW4gZ3J1cG8gZXMgcmVxdWVyaWRhJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdQZXJ0ZW5lY2lhIGVuIGFsIG1lbm9zIHVuIGdydXBvIGVzIHJlcXVlcmlkYSc7CiRsYW5nWydiYWNrJ10gPSAnQXRyJmFhY3V0ZTtzJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyBlcyB1biBjYW1wbyBvYmxpZ2F0b3Jpbyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFyY2FyIGxvcyBjYW1wb3MgcmVxdWVyaWRvcyBjb24nOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnRGVzdGFjYXIgbG9zIGNhbXBvcyByZXF1ZXJpZG9zIGVuJzsKJGxhbmdbJ25leHQnXSA9ICdTaWd1aWVudGUnOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdZYSBleGlzdGUgdW4gR3J1cG8gY29uIGVzZSBub21icmUnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdDYW1wbyBPYmxpZ2F0b3Jpbyc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wY2lvbmFsJzsKJGxhbmdbJ29mZiddID0gJ0FwYWdhZG8nOwokbGFuZ1snc2l6ZSddID0gJ1RhbWEmbnRpbGRlO28nOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihUYW1hJm50aWxkZTtvIG0mYWFjdXRlO3hpbW8gZGUgY3VhbHF1aWVyYSBkZSBsYXMgZGltZW5zaW9uZXMgZGUgbGEgaW1hZ2VuIGVuIHBpeGVscyknOwokbGFuZ1snbGVuZ3RoJ10gPSAnTG9uZ2l0dWQnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2FyYWN0ZXJlcyBlbiBlbCB0ZXh0byBpbnRyb2R1Y2lkbyknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ09wY2lvbmVzIGRlIGRlc3BsZWdhYmxlLCBzZXBhcmFkYXMgcG9yIG51ZXZvIHJlbmdsJm9hY3V0ZTtuLiAgTG9zIHZhbG9yZXMgcHVlZGVuIGVzdGFyIHNlcGFyYWRvcyBkZWwgdGV4dG8gY29uIGVsIGNhcmFjdGVyID0gLiBwLmVqOiBGZW1lbmlubz1mJzsKJGxhbmdbJ3JhZGlvb3B0aW9ucyddID0gJ1JhZGlvYnV0dG9uIGxhYmVscywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzLiBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1N1Z2VyZW5jaWEnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUaXBvJzsKJGxhbmdbJ3R5cGUnXSA9ICdUaXBvJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnRXN0YWRvIGRlIENhbXBvJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ1ByZWd1bnRhIHNpIFBlcmRpZG88YnIvPk5vbWJyZSBkZSBVc3VhcmlvJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0byc7CiRsYW5nWydjaGVja2JveCddID0gJ0NhamEgZGUgVGlsZGFyJzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTGlzdGEgTXVsdGkgU2VsZWN0b3JhJzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ0JvdG9uZXMgcmFkaWFsZXMnOwokbGFuZ1snaW1hZ2UnXSA9ICdJbWFnZW4nOwokbGFuZ1snZW1haWwnXSA9ICdEaXJlY2NpJm9hY3V0ZTtuIGUtbWFpbCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJyZBYWN1dGU7cmVhIGRlIFRleHRvJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnTWVuJnVhY3V0ZTsgZGVzcGxlZ2FibGUnOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdCaWVudmVuaWRvJzsKJGxhbmdbJ2xvZ291dCddID0gJ1NhbGlyJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdVc2FyIGVzdGUgbm9tYnJlIGRlIGdydXBvJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ01vZGlmaWNhciBtaXMgcHJlZmVyZW5jaWFzJzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnTG9naW4gZmFsbGlkbyAtIE5vbWJyZSBkZSB1c3VhcmlvIG8gY29udHJhc2UmbnRpbGRlO2EgaW52JmFhY3V0ZTtsaWRvcz8nOwokbGFuZ1snbG9naW4nXSA9ICdFbnRyYXInOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdFdGlxdWV0YSBkZWwgYm90Jm9hY3V0ZTtuIEVudHJhcic7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdVc3VhcmlvJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0RpcmVjY2kmb2FjdXRlO24gZS1tYWlsJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ0NvbnRyYXNlJm50aWxkZTthJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnUmVjb3JkYXJtZSBlbiBlc3RhIGNvbXB1dGFkb3JhJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0cmFyJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnT2x2aWQmb2FjdXRlOyBzdSBjb250cmFzZSZudGlsZGU7YT8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnJmlxdWVzdDtIYSBPbHZpZGFkbyBzdXMgRGF0b3MgZGUgSW5ncmVzbz8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdWYWxvcmVzIHBvciBkZWZlY3RvJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnUGxhbnRpbGxhJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0lEIGRlbCB1c3VhcmlvIG5vIGVuY29udHJhZG8nOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0VsIG5vbWJyZSBkZSB1c3VhcmlvICglcykgeWEgZXN0JmFhY3V0ZTsgZW4gdXNvJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdVc2FyIFNNVFAgcGFyYSB2YWxpZGFkIGRpcmVjY2kmb2FjdXRlO25lcyBkZSBlLW1haWw/JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ0xvbmdpdHVkIE0maWFjdXRlO25pbWEgZGUgbGEgQ29udHJhc2UmbnRpbGRlO2EnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTG9uZ2l0dWQgTSZhYWN1dGU7eGltYSBkZSBsYSBDb250cmFzZSZudGlsZGU7YSc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdMb25naXR1ZCBNJmlhY3V0ZTtuaW1hIGRlbCBOb21icmUgZGUgVXN1YXJpbyc7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdMb25naXR1ZCBNJmFhY3V0ZTt4aW1hIGRlbCBOb21icmUgZGUgVXN1YXJpbyc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdGdWVyYSBkZSBUaWVtcG8gZGUgU2VzaSZvYWN1dGU7biAoc2VndW5kb3MpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdVc2FyIGNvb2tpZXMgcGFyYSBtYW50ZW5lciBsb3MgaW5ncmVzb3Mgdml2b3MnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdQZXJtaXRpciBlbCBSZWdpc3RybyBkZSBFbWFpbCc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnR3J1cG8gcG9yIGRlZmVjdG8gcGFyYSBudWV2b3MgdXN1YXJpb3MnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdDYW1iaWFyIFBsYW50aWxsYSBkZSBQcmVmZXJlbmNpYXMnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0xhcyBjb250cmFzZSZudGlsZGU7YXMgbm8gY29pbmNpZGVuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ05vbWJyZSBkZSB1c3VhcmlvIGludmFsaWRvJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ0NvbnRyYXNlJm50aWxkZTthIGludmFsaWRhJzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnRWRpdGFyIFVzdWFyaW8nOwokbGFuZ1sndmFsaWQnXSA9ICdWYWxpZG8nOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdVc3VhcmlvJzsKJGxhbmdbJ3N0YXR1cyddID0gJ0VzdGFkbyc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdFc3RlIHVzdWFyaW8gbm8gZXMgbWllbWJybyBkZSBuaW5nJnVhY3V0ZTtuIGdydXBvJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdTaW4gUHJvcGllZGFkZXMnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdJbnRlbnRvIGRlIGltcG9ydGFyIHByb3BpZWRhZGVzIGR1cGxpY2FkYXMnOwokbGFuZ1sndmFsdWUnXSA9ICdWYWxvcic7CiRsYW5nWydncm91cHMnXSA9ICdHcnVwb3MnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1Byb3BpZWRhZGVzJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnTm9tYnJlIGRlIGxhIFByb3BpZWRhZCc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdWYWxvciBkZSBsYSBQcm9waWVkYWQnOwokbGFuZ1snYWRkJ10gPSAnQSZudGlsZGU7YWRpcic7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdG9yaWFsJzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0YXInOwokbGFuZ1snZXhwaXJlcyddID0gJ0NhZHVjYSc7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdFc3BlY2lmaWNhciBGZWNoYSc7CiRsYW5nWycxMmhycyddID0gJzEyIEhvcmFzJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgSG9yYXMnOwokbGFuZ1snNDhocnMnXSA9ICc0OCBIb3Jhcyc7CiRsYW5nWycxd2VlayddID0gJzEgU2VtYW5hJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgU2VtYW5hcyc7CiRsYW5nWycxbW9udGgnXSA9ICcxIE1lcyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBNZXNlcyc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBNZXNlcyc7CiRsYW5nWycxeWVhciddID0gJzEgQSZudGlsZGU7byc7CiRsYW5nWyduZXZlciddID0gJ051bmNhJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsZSBpbnN0YWxsZWQgc3VjZXNzZnVsbHkuPGJyLz5CZSBzdXJlIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4mcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdDb250cmFzZSZudGlsZGU7YSc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ0RlIG51ZXZvJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdZYSBleGlzdGUgdW4gZ3J1cG8gY29uIGVzZSBub21icmUnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnRWRpdGFyIEdydXBvJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0Vudmlhcic7CiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWxhcic7CiRsYW5nWydkZWxldGUnXSA9ICdCb3JyYXInOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICcmaXF1ZXN0O1VzdGVkIGVzdCZhYWN1dGU7IHNlZ3VybyBxdWUgZXN0YSBlcyBsYSBjb25maWd1cmFjaSZvYWN1dGU7biBhcHJvcGlhZGEgcGFyYSBlc3RlIGdydXBvP1xuQXBhZ2FuZG8gdW5hIHByb3BpZWRhZCBubyB2YSBhIGFudWxhciBuaW5ndW5hIGVudHJhZGEgZW4gbGEgdGFibGEgZGUgcHJvcGllZGFkZXMgcGFyYSBlc3RlIGdydXBvL3VzdWFyaW8uICBTaW1wbGVtZW50ZSBsYXMgdmEgYSBoYWNlciBpbmFjY2VzaWJsZXMuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICcmaXF1ZXN0O0VzdCZhYWN1dGU7IHNlZ3VybyBxdWUgcXVpZXJlIGVsaW1pbmFyIGVzdGUgZ3J1cG8/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICcmaXF1ZXN0O0VzdCZhYWN1dGU7IHNlZ3VybyBxdWUgcXVpZXJlIGVsaW1pbmFyIGNvbXBsZXRhbWVudGUgZXN0YSBwcm9waWVkYWQ/XG5IYWNpZW5kb2xvIGFzJmlhY3V0ZTsgYm9ycmFyJmFhY3V0ZTsgY3VhbHF1aWVyIGVudHJhZGEgZGUgdXN1YXJpbyBwYXJhIGVzdGEgcHJvcGllZGFkLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdQYXImYWFjdXRlO21ldHJvcyBpbnN1ZmljaWVudGVzJzsKJGxhbmdbJ2lkJ10gPSAnSWQgJzsKJGxhbmdbJ25hbWUnXSA9ICdOb21icmUnOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVtYSBhZ3JlZ2FuZG8gbGEgcHJvcGllZGFkJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBhZ3JlZ2FuZG8gbGEgcmVsYWNpJm9hY3V0ZTtuIGRlIGdydXBvJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1hIGFncmVnYW5kbyBncnVwbyc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIGFncmVnYW5kbyB1biB1c3VhcmlvIGEgdW4gZ3J1cG8nOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZW1hIGVsaW1pbmFuZG8gdW5hIHByb3BpZWRhZCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ05vIHNlIHB1ZG8gaGFsbGFyIHVuYSBkaXJlY2NpJm9hY3V0ZTtuIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdObyBoYXkgcGVybWlzbyBkZSBlc2NyaXR1cmEgZW4gZWwgZGlyZWN0b3JpbyBkZXN0aW5vJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICdQYXImYWFjdXRlO21ldHJvcyAgaW52YWxpZG9zJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTm8gc2UgcHVkbyBlbmNvbnRyYXIgbmluZyZ1YWN1dGU7biBncnVwbyc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0FwbGljYXInOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHJvJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdFeHByZXNpJm9hY3V0ZTtuIE5vcm1hbCBkZSBOb21icmUgZGUgVXN1YXJpbyc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Rlc2NyaXBjaSZvYWN1dGU7bic7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOb21icmUgZGVsIEdydXBvJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2VzbyBEZW5lZ2Fkbyc7CiRsYW5nWydlcnJvciddID0gJ0Vycm9yLic7CiRsYW5nWydhZGRncm91cCddID0gJ0EmbnRpbGRlO2FkaXIgR3J1cG8nOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRhciBHcnVwbyc7CiRsYW5nWydhZGR1c2VyJ10gPSAnQSZudGlsZGU7YWRpciBVc3VhcmlvJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVc3VhcmlvcyBlbmNvbnRyYWRvcyBxdWUgY29pbmNpZGVuIGNvbiBlbCBjcml0ZXJpbyBkZSBiJnVhY3V0ZTtzcXVlZGEnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwbyc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1NlbGVjY2lvbmFyIEdydXBvJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1BsYW50aWxsYSBkZSBSZWdpc3RybyBkZSBVc3Vhcmlvcyc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdQbGFudGlsbGEgZGUgU2FsaWRhJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnUGxhbnRpbGxhIGRlIEFjY2Vzbyc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2lhcyc7CiRsYW5nWyd1c2VycyddID0gJ1VzdWFyaW9zJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0FkbWluaXN0cmFjaSZvYWN1dGU7biBkZSBVc3VhcmlvcyBkZWwgUG9ydGFsJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnUGVybWl0aXIgYSBsb3MgdXN1YXJpb3MgaW5ncmVzYXIgYWwgcG9ydGFsIGRlbCBzaXRpbyB3ZWInOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ1AmYWFjdXRlO2dpbmEgcG9yIGRlZmVjdG8gZGUgaW5pY2lvJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdVbHRpbWEgcCZhYWN1dGU7Z2luYSBhY2NlZGlkYSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdPdHJhIHAmYWFjdXRlO2dpbmE6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnSW50cm9kdXpjYSBlbCB0ZXh0byBkZSBsYSBpbWFnZW4nOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/et_EE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fbmFtZSddID0gJ1RoaXMgaXMgdGhlIGZpZWxkIG5hbWUsIHRvIGJlIHVzZWQgZm9yIGFkZHJlc3NpbmcgaW4gc21hcnR5LiAgSXQgbXVzdCBjb25zaXN0IG9mIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIHVuZGVyc2NvcmVzLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdLJnV1bWw7bGFsaXNlZCc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1ZhbGkgJnV1bWw7a3MgdiZvdGlsZGU7aSByb2hrZW0gRkVVIGdydXBwLCBrZWxsZWwgb24gbHViYXR1ZCBzZWRhIGxlaHRlIG4mYXVtbDtoYSc7CiRsYW5nWydlcnJvcl9tdXN0c2VsZWN0X2dyb3VwJ10gPSAnJlV1bWw7a3MgZ3J1cHAgcGVhYiBvbGVtYSB2YWxpdHVkJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1ZhbGkgJnV1bWw7a3MnOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ0FsZ3VzIGFhc3RhJzsKJGxhbmdbJ2VuZF95ZWFyJ10gPSAnTCZvdGlsZGU7cHAgYWFzdGEnOwokbGFuZ1snZGF0ZSddID0gJ0t1dXAmYXVtbDtldic7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdQaXNpcGlsZGkgc3V1cnVzJzsKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdLYXN1dGFqYSBncnVwaSBtdXV0bWlzZWwnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnTGlpZ2EgcGFsanUga2FzdXRhamFpZCBvbiB2YWxpdHVkIG1hc3NvcGVyYXRzaW9vbmlkZWtzLi4uIFBhbHVuIG11dWRhIHNlZSAyNTAta3MgdiZvdGlsZGU7aSB2JmF1bWw7aWtzZW1ha3MnOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdPbGVkIHNhIGtpbmRlbCwgZXQgdGFoYWQga3VzdHV0YWRhIHZhbGl0dWQga2FzdXRhamFkPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdLdXN0dXRhbWluZSB2YWxpdHVkJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0xpc2FkZXMgdXVzaSBrYXN1dGFqYWlkIGdlbmVyZWVyaSBzdXZhbGluZSBrYXN1dGFqYW5pbWknOwokbGFuZ1snbW9udGhzJ10gPSAna3V1ZCc7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnVmFpa2ltaXNpIGthc3V0YWphIGFlZ3VtaXNwZXJpb29kJzsKJGxhbmdbJ25vdGlmaWNhdGlvbl9zZXR0aW5ncyddID0gJ1RlYWRldGUgc2VhZGVkJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnT21hZHVzdGUgc2VhZGVkJzsKJGxhbmdbJ3JlZGlyZWN0aW9uX3NldHRpbmdzJ10gPSAnU3V1bmFtaXNlIHNlYWRlZCc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnJlV1bWw7bGRpc2VkIHNlYWRlZCc7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnU2Vzc2lvb25pIGphIGsmdXVtbDtwc2lzZSBzZWFkZWQnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdWJmF1bWw7bGphIHNlYWRlZCc7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9ucmVxdWlyZWQnXSA9ICdLYW90YXR1ZCBrYXN1dGFqYW5pbWUgbGlwcHUgc2FhYiBrYXN1dGFkYSBhaW51bHQgbiZvdGlsZGU7dXR1ZCB2JmF1bWw7bGphZGUganV1cmVzJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ0x1YmEga2FzdXRhZGEgd3lzaXd5ZyBzZWxsZWwgdGVrc3RpYWxhbCc7CiRsYW5nWydpbmZvX2Nvb2tpZXN0b3JlbWVtYmVyJ10gPSAnPHN0cm9uZz5Ob3RlOiA8L3N0cm9uZz4gVGhpcyB1c2VzIHRoZSBtY3J5cHQgZnVuY3Rpb25zIGZvciBlbmNyeXB0aW9uIHB1cnBvc2VzLCBhbmQgdGhleSBjb3VsZCBub3QgYmUgZGV0ZWN0ZWQgb24geW91ciBpbnN0YWxsLiAgIFBsZWFzZSBjb250YWN0IHlvdXIgc2VydmVyIGFkbWluaXN0cmF0b3IuJzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ011dWRhIGthc3V0YWphdCc7CiRsYW5nWydub2lubGluZSddID0gJ0FyYSBrYXN1dGEgJnF1b3Q7aW5saW5lJnF1b3Q7IHZvcm1lJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnVmFqdXRhIHNpaWEsIGt1aSBzYSBlaSBtJmF1bWw7bGV0YSBvbWEga2FzdXRhamFuaW1lJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdWYWp1dGEgc2lpYSwga3VpIHNhIGVpIG0mYXVtbDtsZXRhIG9tYSBwYXJvb2xpJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnVmFqdXRhIHNpaWEgdiZhdW1sO2xqYSBsb2dpbWlzZWtzJzsKJGxhbmdbJ2luZm9fY2hhbmdlc2V0dGluZ3MnXSA9ICdWYWp1dGEgc2lpYSBvbWEgcGFyb29saSB2Jm90aWxkZTtpIG11dSBpbmZvcm1hdHNpb29uaSBtdXV0bWlzZWtzJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnS2FzdXRhamEgdmFhdGFtaXNlIG1hbGwnOwokbGFuZ1snZXZlbnQnXSA9ICdTJnV1bWw7bmRtdXMnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVSBzJnV1bWw7bmRtdXNlIHRlYXZpdHVzJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ1RlYWRldGUgZW1haWxpIGFhZHJlc3MnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ1RlYWRldGUgZW1haWxpIG1hbGwnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnVGVhZGV0ZSBlbWFpbGkgdGVlbWEnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdFbWFpbGkgdGVhdGVkJzsKJGxhbmdbJ09uTG9naW4nXSA9ICdTaXNzZWxvZ2ltaXNlbCc7CiRsYW5nWydPbkxvZ291dCddID0gJ1YmYXVtbDtsamFsb2dpbWlzZWwnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnU2Vzc2lvb25pIGFlZ3VtaXNlbCc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdVdWUga2FzdXRhamEgbG9vbWlzZWwnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnS2FzdXRhamEga3VzdHV0YW1pc2VsJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ0thc3V0YWphIHNlYWRldGUgbXV1dHVtaXNlbCc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnS2FzdXRhamFncnVwcGkgbG9vbWlzZWwnOwokbGFuZ1snT25EZWxldGVHcm91cCddID0gJ0thc3V0YWphZ3J1cHBpIGt1c3R1dGFtaXNlbCc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ0thb3RhdHVkIGthc3V0YWphbmltZSBmdW5rdHNpb25hYWxzdXMgbCZvdGlsZGU7cGV0YXMgZWR1a2FsdC4gTWUgbGVpZHNpbWUgdW5pa2FhbHNlIGthc3V0YWphbmltZSwgbWlzIHZhc3RhYiBzaXNlc3RhdHVkIGRldGFpbGlkZWxlLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnU2ludSBrYXN1dGFqYW5pbWkgb24nOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnTWUgc29vdml0YW1lIHNhbHZlc3RhZGEgc2VlIGluZm9ybWF0c2lvb24gdHVydmFsaXNzZSwgYWdhIGsmYXVtbDt0dGVzYWFkYXZhc3NlIGFzdWtvaHRhLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnZUlEL0FsaWFzIGt1aHUgaCZ1dW1sO3BhdGEgcGVhbGUgc2VhZGV0ZSBtdXV0bWlzdCc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdQYWdlSUQvQWxpYXMga3VodSBoJnV1bWw7cGF0YSBwZWFsZSBrb29kaSB2ZXJpZml0c2VlcmltaXN0IConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdLYW90YXR1ZCBrYXN1dGFqYW5pbWUgZGV0YWlsaWRlIG1hbGwnOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdLYW90YXR1ZCBrYXN1dGFqYW5pbWUga2lubml0dXNlIG1hbGwnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdWaWdhOiBSb2hrZW0ga3VpICZ1dW1sO2tzIGthc3V0YWpha29udG8ga2xhcGliIGFudHVkIG9tYWR1c3RlZ2EnOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnVmlnYTogRWkgbGVpZG51ZCBrbGFwcGl2YXQga2FzdXRhamF0JzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdWaWdhOiBFaSBsZWlkbnVkIGdydXBwaSBzZWxsZSBuaW1lIGomYXVtbDtyZ2knOwokbGFuZ1sncmVhZG9ubHknXSA9ICdBaW51bHQgbG9ldGF2JzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdLYXN1dGFqYSBtYW5pcHVsYWF0b3JrbGFzcyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdMb2dpdHVkIHYmYXVtbDtsamEgYWRtaW5pc3RyYWF0b3JpIHBvb2x0JzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdOJmF1bWw7aXRhIGFpbnVsdCBzaXNzZWxvZ2ludWQga2FzdXRhamFpZCc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnTG9naSBzZWUga2FzdXRhamEgdiZhdW1sO2xqYSc7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdLYXN1dGFqYSBvbWFkdXNlZCc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0thc3V0YWphIGFqYWx1Z3UnOwokbGFuZ1snZXhwb3J0J10gPSAnRWtzcG9yZGknOwokbGFuZ1snY2xlYXInXSA9ICdQdWhhc3RhJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0V4cG9ydCBVc2VyIEhpc3RvcnkgVG8gQVNDSUkgdGhhdCBpcyBhdCBsZWFzdCc7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ0NsZWFyIFVzZXIgSGlzdG9yeSByZWNvcmRzIHRoYXQgaXMgYXQgbGVhc3QnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnVW51c3Rhc2lkIGthc3V0YWphbmltZT8nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAnRXhwb3J0IGdyb3VwIGRlZmluaXRpb24gKGFuZCBwcm9wZXJ0aWVzKSB0byBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ0thc3V0YWphIGFqYWxvbyBob29sZHVzJzsKJGxhbmdbJ3llcyddID0gJ0phaCc7CiRsYW5nWydubyddID0gJ0VpJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ2tva2t1JzsKJGxhbmdbJ2RhdGVfYWxscmVjb3JkcyddID0gJyoqIFBpaXJhbWF0dSAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICcmVXVtbDtrcyB0dW5kIHZhbmEnOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnS3V1cyB0dW5kaSB2YW5hJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJzEyIHR1bmRpIHZhbmEnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICcmVXVtbDtrcyBwJmF1bWw7ZXYgdmFuYSc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICcmVXVtbDtrcyBuJmF1bWw7ZGFsIHZhbmEnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ0tha3MgbiZhdW1sO2RhbGF0IHZhbmEnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJyZVdW1sO2tzIGt1dSB2YW5hJzsKJGxhbmdbJ2RhdGVfdGhyZWVtb250aHNvbGQnXSA9ICdLb2xtIGt1dWQgdmFuYSc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ0t1dXMga3V1ZCB2YW5hJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJyZVdW1sO2tzIGFhc3RhIHZhbmEnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3J1cGVlcmltaW5lIGphIHNvcnRpbWluZSc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnS2lyamVkLCBtaXMgdmFzdGF2YWQga3JpdGVlcml1bWlsZSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ1YmYXVtbDtoZW5ldiBrYXN1dGFqYW5pbWknOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ1N1dXJlbmV2IGthc3V0YWphbmltaSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnViZhdW1sO2hlbmV2IGt1dXAmYXVtbDtldic7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdTdXVyZW5ldiBrdXVwJmF1bWw7ZXYnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnViZhdW1sO2hlbmV2IHMmdXVtbDtuZG11c2UgdCZ1dW1sOyZ1dW1sO3AnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdTdXVyZW5ldiBzJnV1bWw7bmRtdXNlIHQmdXVtbDsmdXVtbDtwJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ1YmYXVtbDtoZW5ldiBJUCBhYWRyZXNzJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnU3V1cmVuZXYgSVAgYWFkcmVzcyc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnQWphbHVndSBlaSB0dXZhc3RhdHVkJzsKJGxhbmdbJ3Jlc2V0J10gPSAnVGFhc3RhJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dydXBlZXJpIElQIGFhZHJlc3NpIGomYXVtbDtyZ2knOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdTJnV1bWw7bmRtdXNlIHQmdXVtbDsmdXVtbDtiaSBmaWx0ZXInOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9kYXRlJ10gPSAnTiZhdW1sO2l0YSBzJnV1bWw7bmRtdXNpLCBtaXMgb24gdiZhdW1sO2hlbSBrdWk6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdMZWhlayZ1dW1sO2xqZSBwaWlyYW5nJzsKJGxhbmdbJ2ZvciddID0gJ2Zvcic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ0thc3V0YWphIGFqYWxvbyByYXBvcnQnOwokbGFuZ1sndW5rbm93biddID0gJ1R1bmRtYXR1JzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUCBhYWRyZXNzJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdTJnV1bWw7bmRtdXNlIHQmdXVtbDsmdXVtbDtwJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnS3V1cCZhdW1sO2V2JzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdUYWdhc2knOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ0ltcG9ydCBPcGVyYXRpb24gQ29tcGxldGUnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnUmlkYSB0Jm91bWw7Jm91bWw7ZGVsZHVkJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdWZWFkIHR1dmFzdGF0dWQnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ0tpcmpldCBsaXNhdHVkJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdDb3VsZCBub3QgZmluZCBwcm9wZXJ0aWVzIGZvciBncm91cCAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ0NvdWxkIG5vdCBnZXQgYSByZXNwb25zZSBmcm9tIHRoZSBTTVRQIHNlcnZlcic7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdGaWxlIHNwZWNpZmllZCAoJXMpIGNvdWxkIG5vdCBiZSBmb3VuZCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJ10gPSAnSW52YWxpZCB2YWx1ZSBmb3IgZHJvcGRvd24gb3IgbXVsdGlzZWxlY3QgZmllbGQgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdGaWVsZCAlcyBleGNlZWRzIG1heGltdW0gbGVuZ3RoJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0IEVycm9yIChsaW5lICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0NvdWxkIG5vdCBnZXQgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zIChpbnRlcm5hbCBlcnJvciknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYSBjb2x1bW4gdG8gbWF0Y2ggdGhlIHJlcXVpcmVkIGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCBncm91cCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnVGhlIGZpbGUgc3BlY2lmaWVkIGZvciBpbXBvcnQgaXMgbm90IGluIHRoZSBjb3JyZWN0IGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnQ291bGQgbm90IG9wZW4gZmlsZSc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIFRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcmlkPC9zdHJvbmc+IEZpZWxkIC0gVGhlIHVzZXJpZCBmb3IgdGhlIHVzZXIuIEEgdmFsdWUgaW4gdGhpcyBmaWVsZCB3aWxsIGluZGljYXRlIHlvdSBhcmUgZG9pbmcgYW4gdXBkYXRlLjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNoIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRoZSBwYXNzd29yZCB0byBzZXQgZm9yIHRoZSB1c2VyPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5jcmVhdGVkYXRlPC9zdHJvbmc+IEZpZWxkIC0gdG9kbzwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+ZXhwaXJlczwvc3Ryb25nPiBGaWVsZCAtIHRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmdyb3VwbmFtZTwvc3Ryb25nPiBGaWVsZCAtIFRoZSBncm91cHMgdGhhdCB5b3Ugd2FudCB0byBoYXZlIHRoZSB1c2VyIGJlIGEgbWVtYmVyIG9mLiBJZiBhbGwgcmVxdWlyZWQgZmllbGRzIGFyZSBub3QgZmlsbGVkIGluIHRoZSBpbnNlcnQvdXBkYXRlIG9mIHRoZSByZWNvcmQgd2lsbCBmYWlsLiBTZWUgTXVsdGlzZWxlY3QgRmllbGRzIGJlbG93IGZvciBzeW50YXguPC9saT4NCjxsaT5Ecm9wZG93bi9SYWRpbyBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5EYXRlIEZpZWxkcw0KICAgIDxwPk11c3QgYmUgaW4gdGhlIGZvcm1hdCBvZiBNTS1ERC1ZWVlZPC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD48L2xpPg0KPC91bD4NCjxoNT5Ob3RlczwvaDU+DQo8cD5UaGUgaW1wb3J0IHByb2Nlc3MgaXMgc3ViamVjdCB0byB0aGUgbGltaXRhdGlvbnMgaW1wb3NlZCBieSB0aGUgaG9zdCBwcm92aWRlciwgc3VjaCBhcyBtZW1vcnkgbGltaXRhdGlvbnMsIHByb2Nlc3NpbmcgdGltZSwgZmlsZSBzaXplIHVwbG9hZCwgYW5kIHNhZmUgbW9kZSByZXN0cmljdGlvbnMuICBBbnkgb25lIG9mIHRoZXNlIGxpbWl0YXRpb25zIG1heSBjYXVzZSB0aGUgaW1wb3J0IHRvIGZhaWwuIFRoZXJlZm9yZSBpdCBpcyBhZHZpc2FibGUgdG8gZW5zdXJlIHRoYXQgaW1wb3J0IGZpbGVzIGFyZSBzbWFsbGVyIGluIHNpemUsIGFuZCBzaW1wbGVyIGluIG5hdHVyZS48L3A+DQo8cD5UaG91Z2ggZXZlcnkgZWZmb3J0IGhhcyBiZWVuIG1hZGUgdG8gZW5zdXJlIHRoYXQgZGF0YWJhc2UgY29ycnVwdGlvbiB3aWxsIG5vdCBvY2N1ciwgaXQgaXMgYWR2aXNhYmxlIHRvIHBlcmZvcm0gYSBkYXRhYmFzZSBiYWNrdXAgYmVmb3JlIGRvaW5nIGEgdXNlciBpbXBvcnQuPC9wPg0KPHA+VGhlIEV4cG9ydCBkYXRhIGlzIGluIHRoZSBzYW1lIGZvcm1hdCBhcyBuZWVkZWQgZm9yIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0IFVzZXJzIEludG8gVGhpcyBHcm91cCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnB1dCBDU1YgRmlsZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0lucHV0IFhNTCBGaWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0Vrc3BvcmRpIGthc3V0YWphaWQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnSW1wb3JkaSBrYXN1dGFqYWlkJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ1B1aGFzdGEnOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdQaWxkaSBzaWh0a29oYSB0ZWUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdBIHByb2JsZW0gb2NjdXJyZWQgd2l0aCBhIG1pc3NpbmcgKGJ1dCByZXF1aXJlZCkgdXBsb2FkJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdDb3VsZCBub3QgcGFyc2UgdGhlIHByb3ZpZGVkIFhNTCBmaWxlJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdFaSBzYWEga3VzdHV0YWRhIGdydXBwaSwga3VzIG9uIGVuZGlzZWx0IGthc3V0YWphaWQnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ1NlZSBrYXN1dGFqYSBvbiBqdWJhIHNpc3NlIGxvZ2l0dWQnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGVrc3QgcGlsZGlsdCBlaSBvbG51ZCBrb3JyZWt0c2VsdCBzaXNlc3RhdHVkJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnXSA9ICdMdWJhIGthc3V0YWphdGVsIGxvZ2lkYSBzaXNzZSByb2hrZW0sIGt1aSAmdXVtbDtrcyBrb3JkJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnXSA9ICdQaWxkaSBmYWlsaWRlIGxhaWVuZGlkLCBtaWRhIGthc3V0YWphZCBzYWF2YWQgJnV1bWw7bGVzIGxhYWRpZGEnOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gVGhlIGlwIGFkZHJlc3Mgb2YgdGhlIGNsaWVudDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dvdXQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2Vkb3V0IHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGV4cGlyZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdTJnV1bWw7bmRtdXMsIG1pcyBnZW5lcmVlcml0YWtzZSBrYXN1dGFqYSBzaXNzZWxvZ2ltaXNlbCBzJnV1bWw7c3RlZW1pJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdTJnV1bWw7bmRtdXMsIG1pcyBnZW5lcmVlcml0YWtzZSBrYXN1dGFqYSB2JmF1bWw7bGphbG9naW1pc2VsIHMmdXVtbDtzdGVlbWlzdCc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ1MmdXVtbDtuZG11cywgbWlzIGdlbmVyZWVyaXRha3NlIGthc3V0YWphIHNlc3Npb29uaSBhZWd1bWlzZWwnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdTJnV1bWw7bmRtdXMsIG1pcyBnZW5lcmVlcml0YWtzZSB1dWUga2FzdXRhamEgbG9vbWlzZWwnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdTJnV1bWw7bmRtdXMsIG1pcyBnZW5lcmVlcml0YWtzZSBrYXN1dGFqYSBpbmZvIHV1ZW5kYW1pc2VsJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnUyZ1dW1sO25kbXVzLCBtaXMgZ2VuZXJlZXJpdGFrc2Uga2FzdXRhamFrb250byBrdXN0dXRhbWlzZWwnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnUyZ1dW1sO25kbXVzLCBtaXMgZ2VuZXJlZXJpdGFrc2Uga2FzdXRhamFncnVwaSBsb29taXNlbCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdTJnV1bWw7bmRtdXMsIG1pcyBnZW5lcmVlcml0YWtzZSBrYXN1dGFqYWdydXBpIHV1ZW5kYW1pc2VsJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ1MmdXVtbDtuZG11cywgbWlzIGdlbmVyZWVyaXRha3NlIGthc3V0YWphZ3J1cGkga3VzdHV0YW1pc2VsJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdBZG1pbmlzdHJhYXRvcmlsaWlkZXNlIGdydXBwJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogViZhdW1sO2xqYWRlbCB2Jm90aWxkZTtpYiBrYXN1dGFkYSBqJmF1bWw7cmduZXZhaWQgbWFrcm9zaTogeyR1c2VybmFtZX0seyRncm91cH0uIEthc3V0YWRlcyB7JGdyb3VwfSBtYWtyb3QsIGFzZW5kYWIgcyZ1dW1sO3N0ZWVtIGVzaW1lc2UgZ3J1cGkgbmltZSwgbWlsbGVzc2Uga2FzdXRhamEga3V1bHViLCBqYSBzdXVuYWIgZWRhc2kgc2VsbGVsZSBsZWhlbGUuJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdLYXN1dGFqYSBwYXJvb2xpIHRhYXN0YW1pc2VrcyBtdXVkYSBzZWRhIHYmYXVtbDtsamEnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0thc3V0YWphIHBhcm9vbGkgdGFhc3RhbWlzZWtzIG11dWRhIHNlZGEgdiZhdW1sO2xqYSc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdTZWxsaXNlIG5pbWVnYSBrYXN1dGFqYSBqdWJhIGVrc2lzdGVlcmliJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ0NTViBla3Nwb3J0IGVpIHRvb251ZCB0dWxlbXVzaSc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdLYXN1dGFqYW5pbWUgbGFodHJpIHBpa2t1cyc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdQYXJvb2xpIGxhaHRyaSBwaWtrdXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ01pbi9NYXggcGFyb29saSBwaWtrdXNlZCBvbiB2aWdhc2VkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW4vTWF4IGthc3V0YWphbmltZSBwaWtrdXNlZCBvbiB2aWdhc2VkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdWaWdhbmUgZS1tYWlsaSBhYWRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnTWUgZWkgc3V1dG51ZCBsZWlkYSBzZWxsZSBrb250b2dhIHNlb3R1ZCBlLW1haWxpIGFhZHJlc3NpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVlbSBrYXN1dGFqYWluZm8gc2VhZG1pc2VnYSc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibGVlbSBvbWFkdXNlIHNlYWRtaXNlZ2EnOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ0thc3V0YWphIGxpc2F0dWQgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdrYXN1dGFqYSBrdXN0dXRhdHVkIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ09tYWR1cyc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnViZhdW1sOyZhdW1sO3J0dXMgKHZhYmFzIHZvcm1pcyknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdIb2lhdHVzOiBOZWVkIGxhaHRyaWQgbSZvdGlsZGU7anV0YXZhZCB2b3JtaWRlIGxhaHRyaXRlIHN1dXJ1c2kuIFNlbGxlIG51bWJyaSB2JmF1bWw7aGVuZGFtaW5lIG9sZW1hc29sZXZhbCBzYWlkaWwgZWkgcHJ1dWdpIG9sbGEgc29vdml0YXRhdic7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnTXV1ZGEgYWRtaW5uaSBlZWxpc3R1c2k/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFLW1haWxpIGFhZHJlc3Mgb24ganViYSBrYXN1dHVzZXMnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnS2FzdXRhIGsmdXVtbDtwc2lzZWlkLCBldCBtJmF1bWw7bGV0YWRhIHNpc3NlbG9naW1pc2UgYW5kbWVpZCc7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ0smdXVtbDtwc2lzZSBuaW1pJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnTHViYSBlLW1haWxpIGR1cGxpa2FhdGUnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnRS1tYWlsaSBhYWRyZXNzIG9uIGthc3V0YWphbmltZWtzJzsKJGxhbmdbJ2luZm9fY29va2llX2tlZXBhbGl2ZSddID0gJ0F0dGVtcHQgdG8ga2VlcCBsb2dpbnMgYWxpdmUgYnkgdGhlIHVzZSBvZiBhIGNvb2tpZSA8ZW0+KHRoZSBjb29raWUgaXMgcmVzZXQgb24gYWN0aXZpdHkgaW4gdGhlIHdlYnNpdGUpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKGx1YmEgbWl0bWVsIGthc3V0YWphbCBrYXN1dGFkYSBzYW1hIGUtbWFpbGkgYWFkcmVzc2kpJzsKJGxhbmdbJ2luZm9fdXNlcm5hbWVfaXNfZW1haWwnXSA9ICcodXNlciYjMDM5O3MgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAtLSBkb24mIzAzOTt0IHNldCB0aGlzIHdpdGggJnF1b3Q7YWxsb3cgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlcyZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnQWxsb3cgZHVwbGljYXRlICZxdW90O2ZvcmdvdCBwYXNzd29yZCZxdW90OyByZW1pbmRlcnM/JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJyhBbGxvdyBhIHVzZXJzIHRvIHJlcXVlc3QgYSBwYXNzd29yZCByZXNldCwgZXZlbiBpZiB0aGV5IGhhdmVuJiMwMzk7dCBhY3RlZCBvbiBhIHByZXZpb3VzIG9uZSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdLYXN1dGEgRnJvbnQtZW5kIFVzZXIgc3BldHNpaWZpbGlzaSAmb3RpbGRlO2lndXNlaWQ/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWxseSwgRkVVU2VycyBwZXJtaXNzaW9ucyBhcmUgdGhlIHNhbWUgYXMgdGhlIGVxdWl2YWxlbnQgQWRtaW4gQXJlYSBwZXJtaXNzaW9ucyBsaWtlIEFkZCBVc2VyLCBBZGQgR3JvdXAsIGV0Yy4gSWYgeW91IHNlbGVjdCB0aGlzIG9wdGlvbiwgdGhlcmUgd2lsbCBiZSBzZXBhcmF0ZSBwZXJtaXNzaW9ucyBmb3IgRkVVc2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdFaSBsZWlkbnVkICZ1dW1sO2xlc2xhZXR1ZCBmYWlsaSAoc2lzZW1pbmUgdmlnYSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdUdXZhc3RhdGkgcHJvYmxlZW0gJnV1bWw7bGVzbGFldHVkIGZhaWxpZ2EuIFBhbHVuIHByb292aSB1dWVzdGknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnU2EgZWkgc2lzZXN0YW51ZCBrYXN1dGFqYW5pbWUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2VtYWlsJ10gPSAnU2EgZWkgc2lzZXN0YW51ZCBvbWEgZS1tYWlsaSc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdTYSBlaSBzaXNlc3RhbnVkIHBhcm9vbGknOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Vlc2xpaWRlc2UgS2FzdXRhamEgViZhdW1sO2xqYWxvZ2ltaW5lJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Vlc2xpaWRlc2UgS2FzdXRhamEgU2lzc2Vsb2dpbWluZSc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPkVUVEVWQUFUVVNUPC9iPiBvbGVtYXNvbGV2YXRlIG9tYWR1c3RlIG11dXRtaW5lIHYmb3RpbGRlO2liIGomYXVtbDsmYXVtbDtkYXZhbHQga2FoanVzdGFkYSBvbGVtYXNvbGV2YXQgc2FpdGk8aT4oZXJpdGksIGt1aSBsJnV1bWw7aGVuZGFkIHYmYXVtbDtsamFkZSBwaWtrdXNpIHZtcy4pPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdTZWUgZnVua3RzaW9vbiBlaSB0Jm91bWw7Jm91bWw7dGEgd2luZG93cyYjMDM5O2lsJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICcmQXVtbDtyYSBsb28ga2FzdXRhamFuaW1lIHYmb3RpbGRlO2kgcGFyb29saSBsYWh0cmVpZCAtIG5lZWQgb24ganViYSBGcm9udEVuZFVzZXJzIG1vb2R1bGlzc2Ugc2lzc2UgZWhpdGF0dWQnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0Vrc3BvcmRpIEthc3V0YWphZCBDU1YmIzAzOTtzc2UnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRWtzcG9yZGknOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3JkaSc7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluaXN0cmFhdG9yJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnTXV1ZGEgT21hZHVzdCc7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYWtzaW1hYWxuZSBwaWtrdXMnOwokbGFuZ1snY3JlYXRlZCddID0gJ0xvb2R1ZCc7CiRsYW5nWydzb3J0YnknXSA9ICdTb3J0ZWVyaSc7CiRsYW5nWydzb3J0J10gPSAnU29ydGVlcmltaW5lJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ0thc3V0YWphKHQpIHZhbGl0dWQgZ3J1cHBwaWRlcyc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdUdWxlbXVzaSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdTZWxsZWxlIGthc3V0YWphbGUgZWkgbGVpdHVkIGUtbWFpbGkgdiZhdW1sO2xqYS4gViZvdGlsZGU7aWItb2xsYSBwZWFrc2lkIGtvbnRha3RlZXJ1bWEgcyZ1dW1sO3N0ZWVtaWFkbWluaXN0cmFhdG9yaWdhPyc7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ0xlaGVJRC9BbGlhcyBVbnVzdGF0dWQgUGFyb29saSB2b3JtaSBqYW9rcyc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ0xlaGVJRC9BbGlhcyBTZWFkZXRlIHZvcm1pIGphb2tzJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnTGVoZUlEL0FsaWFzLCBrdWh1IHN1dW5hdGEgcGVhbGUgc2lzc2Vsb2dpbWlzdCAqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ0xlaGVJRC9BbGlhcywga3VodSBzdXVuYXRhIHBlYWxlIHYmYXVtbDtsamFsb2dpbWlzdCAqJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1NvcnRlZXJpbWlzZSBqJmF1bWw7cmpla29yZCc7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdNJm90aWxkZTtuZWQga2FzdXRhamFkIHRhYXN0YXZhZCBvbWEga2FkdW51ZCBwYXJvb2xlLiBIZXRrZWwgb24gbmVpZDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdFZW1hbGRhIGsmb3RpbGRlO2lrIHNpc2VzdHVzZWQsIG1pcyBvbiB2YW5lbWFkIGt1aSAxIG4mYXVtbDtkYWwnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnRWVtYWxkYSBrJm90aWxkZTtpayBzaXNlc3R1c2VkLCBtaXMgb24gdmFuZW1hZCBrdWkgMSBrdXUnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnRWVtYWxkYSBrJm90aWxkZTtpayBzaXNlc3R1c2VkJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdPbGVkIHNhIGtpbmRlbD8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdTaXNlc3RhdHVkIGtvb2Qgb24gdmlnYW5lLCBwYWx1biBwcm9vdmkgdXVlc3RpJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdTaW51IGthc3V0YWphIElELWxlIHZhc3RhdmF0IGFqdXRpc3Qga29vZGkgYW5kbWViYWFzaXN0IGVpIGxlaXR1ZCc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ0tpbm5pdGFtaXNlIHZvcm1pIG1hbGwnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1VudXN0YXR1ZCBwYXJvb2xpIGUtbWFpbGkgbWFsbCc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnS2FzIHNpbmEgdiZvdGlsZGU7aSBrZWVnaSB0ZWluZSBvbiBqdWJhIHNlbGxlIGthc3V0YWpha29udG8gcGFyb29saSB0YWFzdGFtaXN0IGFsdXN0YW51ZC4gIEtvbnRyb2xsaSBvbWEgZS1tYWlsaSwgc2VhbCB2Jm90aWxkZTtpdmFkIG9sbGEgZWRhc2lzZWQganVodG4mb3VtbDsmb3VtbDtyaWQsIGt1aWRhcyBvbWEgcGFyb29saSB0YWFzdGFkYSc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnQW5kbWViYWFzaSB2aWdhJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1NhaWQgc2VsbGUga2lyamEsIGt1bmEga2VlZ2kgJnV1bWw7dGxlcyBtZWllIGxlaGVsZSwgZXQgb2xlZCBrYW90YW51ZCBvbWEgcGFyb29saS4gS3VpIHNlZSBvbiBuaWksIGxvZSBqdWhpc2VpZCBhbGxwb29sLiBLdWkgc3VsIHBvbGUgJm90aWxkZTtybmEgYWltdWdpLCBtaWxsZXN0IGp1dHQgayZhdW1sO2liLCB2Jm90aWxkZTtpZCBzZWxsZSBraXJqYSBrdXN0dXRhZGEuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnS29vZCc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdKJmF1bWw7cmduZXYga29vZCBvbiBzdXZhbGlzZWx0IGdlbmVyZWVyaXR1ZCBrYXN1dGFqYWtvbnRvIGtpbm5pdGFtaXNla3MuIEt1aSBzYSBrbGlraWQgYWxsaiZhdW1sO3JnbmV2YWwgbGluZ2lsLCB0dWxlYiBzdWwgc2VlIGtvb2Qgc2lzZXN0YWRhIHZhc3RhdmFzc2UgbGFodHJpc3NlLiBUYXZhbGlzZWx0IG9uIGtvb2QganViYSBsYWh0cmlzc2Ugc2lzZXN0YXR1ZCwga3VpIGFnYSBtaXR0ZSwgc2lpcyBrb29kIG9uOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0tsaWtraWRlcyBhbGxqJmF1bWw7cmduZXZhbCBsaW5naWwgdmlpYWtzZSBzaW5kIHNhaWRpbGUsIGt1cyBzYWFkIHNpc2VzdGFkYSAmdXVtbDtsYWxwb29sIHRvb2R1ZCBrb29kaSBqYSB0YWFzdGFkYSBvbWEgcGFyb29saTonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ0thb3Rhc2lkIFNhbGFzJm90aWxkZTtuYSc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ0NNU01haWxlciBtb29kdWxpdCBlaSBzdXVkZXR1ZCBsZWlkYSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdBYWRyZXNzaWxlICVzIG9uIHNhYWRldHVkIGUtbWFpbCBqdWhpc3RlZ2EsIGt1aWRhcyBzYSBzYWFkIG9tYSBwYXJvb2xpIHRhYXN0YWRhLiBUJmF1bWw7bmFtZSc7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1RpcGkgc2lzc2Ugb21hIGthc3V0YWphbmltaSBuaW5nIG1lIHNhYWRhbWUgc3VsbGUgZS1tYWlsaWdhIGp1aGlzZWQsIGt1aWRhcyBzYSBvbWEgcGFyb29saSB0YWFzdGFkYSBzYWFkJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnVW51c3RhdHVkIFBhcm9vbGkgTWFsbGlkJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ0thb3RhdHVkIGthc3V0YWphbmltZSBtYWxsJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJyVzIG9tYWR1c2kgZWkgbGVpdHVkJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdvbWFkdXModCkgbGVpdHVkJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdMaXNhIE9tYWR1cyc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnTiZvdGlsZGU7dXR1ZCB2JmF1bWw7bGkgKCVzKSBvbGkgdCZ1dW1sO2hpJzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnT21hIHBhcm9vbGkgbXV1dG1pc2VrcyBzaXNlc3RhIHNpaWEgdXVzIHBhcm9vbCc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ1NhIGVpIG9sZSBzaXNzZSBsb2dpdHVkJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdTZWFkZWQnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyZWVyaW1pbmUnOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdTZWUga29udG8gb24gYWVndW51ZCc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnVmlnYW5lIGUtbWFpbGkgYWFkcmVzc2kgdm9ybWluZyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ1ZpZ2FuZSBhZWd1bWlza3V1cCZhdW1sO2V2JzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdWaWdhIG9tYWR1c2UgJXMgbSZhdW1sOyZhdW1sO3JhbWlzZWwga2FzdXRhamFsZSAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ1ZpZ2FuZSBncnVwaSBJRCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ1BlaWRldHVkIHYmYXVtbDtsamEgbWFya2VyJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdQZWlkZXR1ZCB2JmF1bWw7bGphIHYmYXVtbDtydic7CiRsYW5nWydoaWRkZW4nXSA9ICdQZWlkZXR1ZCc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnU2VsbGlzZSBuaW1lZ2Egb21hZHVzIGp1YmEgZWtzaXN0ZWVyaWInOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnT21hZHVzaSBlaSBvbGUnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdTZWxsZSBncnVwaSBqYW9rcyBlaSB2YWxpdHVkICZ1dW1sO2h0ZWdpIG9tYWR1c3QnOwokbGFuZ1snbm9ncm91cHMnXSA9ICcmVXVtbDtodGVnaSBncnVwcGkgZWkgb2xlIGRlZmluZWVyaXR1ZCc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ2dydXBwKGkpIGxlaXR1ZCc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnS3V1bHV2dXMgdiZhdW1sO2hlbWFsdCAmdXVtbDtodGUgZ3J1cHBpIG9uIGtvaHVzdHVzbGlrJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdLdXVsdXZ1cyB2JmF1bWw7aGVtYWx0ICZ1dW1sO2h0ZSBncnVwcGkgb24ga29odXN0dXNsaWsnOwokbGFuZ1snYmFjayddID0gJ1RhZ2FzaSc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgb24gbiZvdGlsZGU7dXR1ZCB2JmF1bWw7bGknOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ00mYXVtbDtyZ2lzdGEgbiZvdGlsZGU7dXR1ZCB2JmF1bWw7bGphZCc7CiRsYW5nWydyZXF1aXJlZGZpZWxkY29sb3InXSA9ICdUJm90aWxkZTtzdGEgbiZvdGlsZGU7dXR1ZCB2JmF1bWw7bGphZCBlc2lsZSc7CiRsYW5nWyduZXh0J10gPSAnSiZhdW1sO3JnbWluZSc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ1NlbGxpc2UgbmltZWdhIGdydXBwIGp1YmEgZWtzaXN0ZWVyaWInOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdOJm90aWxkZTt1dHVkIFYmYXVtbDtsaSc7CiRsYW5nWydvcHRpb25hbCddID0gJ1ZhbGlrdWxpbmUnOwokbGFuZ1snb2ZmJ10gPSAnViZhdW1sO2xqYXMnOwokbGFuZ1snc2l6ZSddID0gJ1N1dXJ1cyc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KFBpbGRpIGlnYSAmdXVtbDtrc2lrdSBrJnV1bWw7bGplIG1ha3NpbWFhbG5lIHN1dXJ1cyBwaWtzbGl0ZXMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ1Bpa2t1cyc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyPih0JmF1bWw7aGVtJmF1bWw7cmtlIGxhaHRyaXMpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdWYWxpa21lbiZ1dW1sOyZ1dW1sOyB2YWxpa3VkLCBlcmFsZGF0dWQgcmVhdmFoZWdhJzsKJGxhbmdbJ3JhZGlvb3B0aW9ucyddID0gJ1JhZGlvYnV0dG9uIGxhYmVscywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzLiBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1BlYWxraXJpJzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVCZ1dW1sOyZ1dW1sO3AnOwokbGFuZ1sndHlwZSddID0gJ1QmdXVtbDsmdXVtbDtwJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnViZhdW1sO2xqYSBvbGVrJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ0smdXVtbDtzaSBrYW90YXR1ZDxici8+a2FzdXRhamFuaW1lIGtvcnJhbCc7CiRsYW5nWyd0ZXh0J10gPSAnVGVrc3QnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdMaW5udWtlJzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTXVsdGkgU2VsZWN0IExpc3QnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnUmFkaW8gQnV0dG9ucyc7CiRsYW5nWydpbWFnZSddID0gJ1BpbHQnOwokbGFuZ1snZW1haWwnXSA9ICdFLW1haWxpIGFhZHJlc3MnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZWtzdGl2JmF1bWw7bGknOwokbGFuZ1snZHJvcGRvd24nXSA9ICdWYWxpa21lbiZ1dW1sOyZ1dW1sOyc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1RlcmUsJzsKJGxhbmdbJ2xvZ291dCddID0gJ0xvZ2kgdiZhdW1sO2xqYSc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnS2FzdXRhIHNlZGEgZ3J1cGluaW1lJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ011dWRhIG1pbnUgc2VhZGVpZCc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ1Npc3NlbG9naW1pbmUgZWJhJm90aWxkZTtubmVzdHVzLiBWYWxlIGthc3V0YWphbmltaSB2Jm90aWxkZTtpIHBhcm9vbD8nOwokbGFuZ1snbG9naW4nXSA9ICdMb2dpIHNpc3NlJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnTG9naSBzaXNzZSBudXB1IHNpbHQnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnS2FzdXRhamFuaW1pJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0UtbWFpbGkgYWFkcmVzcyc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICdQYXJvb2wnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdNJmF1bWw7bGV0YSBtaW5kIHNlbGxlcyBhcnZ1dGlzJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0cmVlcmknOwokbGFuZ1snZm9yZ290cHcnXSA9ICdVbnVzdGFzaWQgc2FsYXMmb3RpbGRlO25hPyc7CiRsYW5nWydsb3N0dXNlcm5hbWUnXSA9ICdVbnVzdGFzaWQga2FzdXRhamFuaW1lPyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ1RhYXN0YSBhbGdzZWFkZWQnOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdNYWxsJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0thc3V0YWphIElELWQgZWkgbGVpdHVkJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdTZWUga2FzdXRhamFuaW1pICglcykgb24ganViYSBrYXN1dHVzZWwnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ0thc3V0YSBTTVRQLWQgZS1tYWlsaSBhYWRyZXNzaWRlIGtlaHRpdnVzZSBraW5uaXRhbWlzZWtzPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbWFhbG5lIHBhcm9vbGkgcGlra3VzJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ01ha3NpbWFhbG5lIHBhcm9vbGkgcGlra3VzJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltYWFsbmUga2FzdXRhamFuaW1lIHBpa2t1cyc7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdNYWtzaW1hYWxuZSBrYXN1dGFqYW5pbWUgcGlra3VzJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb29uaSB0YWltYXV0IChzZWt1bmRpdGVzKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnS2FzdXRhIGsmdXVtbDtwc2lzZWlkIHNpc3NlbG9naW1pc3RlIGFsYWxob2l1a3MnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdMdWJhIEUtbWFpbGkgcmVnaXN0cmVlcmltaXN0JzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdBbGduZSBncnVwcCB1dXRlbGUga2FzdXRhamF0ZWxlJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnU2VhZGV0ZSBtdXV0bWlzZSBNYWxsJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdQYXJvb2xpZCBlaSBrYXR0dSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdFYmFzb2JpdiBLYXN1dGFqYW5pbWknOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnRWJhc29iaXYgU2FsYXMmb3RpbGRlO25hJzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnTXV1ZGEgS2FzdXRhamF0JzsKJGxhbmdbJ3ZhbGlkJ10gPSAnS2VodGl2JzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnS2FzdXRhamFuaW1pJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YWF0dXMnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnU2VlIGthc3V0YWphIGVpIGt1dWx1ICZ1dW1sO2h0ZWdpIGdydXBwaSc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnT21hZHVzaSBlaSBvbGUnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICcmVXVtbDtyaXRhIGltcG9ydGlkYSBkdXBsaWthYXRvbWFkdXNpJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnViZhdW1sOyZhdW1sO3J0dXMnOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3J1cGlkJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdPbWFkdXNlZCc7CiRsYW5nWydwcm9wbmFtZSddID0gJ09tYWR1c2UgTmltaSc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdPbWFkdXNlIFYmYXVtbDsmYXVtbDtydHVzJzsKJGxhbmdbJ2FkZCddID0gJ0xpc2EnOwokbGFuZ1snaGlzdG9yeSddID0gJ0FqYWx1Z3UnOwokbGFuZ1snZWRpdCddID0gJ011dWRhJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdBZWd1Yic7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdUJmF1bWw7cHN1c3RhIGt1dXAmYXVtbDtldmFnYSc7CiRsYW5nWycxMmhycyddID0gJzEyIFR1bmRpJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgVHVuZGknOwokbGFuZ1snNDhocnMnXSA9ICc0OCBUdW5kaSc7CiRsYW5nWycxd2VlayddID0gJzEgTiZhdW1sO2RhbCc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIE4mYXVtbDtkYWxhdCc7CiRsYW5nWycxbW9udGgnXSA9ICcxIEt1dSc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBLdXVkJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IEt1dWQnOwokbGFuZ1snMXllYXInXSA9ICcxIEFhc3RhJzsKJGxhbmdbJ25ldmVyJ10gPSAnTWl0dGUgS3VuYWdpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vb2R1bCBpbnN0YWxsZWVyaXR1ZC48YnIvPk0mYXVtbDsmYXVtbDtyYSBraW5kbGFzdGkgayZvdGlsZGU7aWtpZGVsZSBhc2phZ2Egc2VvdHVkIGthc3V0YWphdGVsZSAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMmcXVvdDsgJm90aWxkZTtpZ3VzLic7CiRsYW5nWydwYXNzd29yZCddID0gJ1Bhcm9vbCc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1Bhcm9vbCB1dWVzdGknOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ1NlbGxpc2UgbmltZWdhIGdydXBwIGp1YmEgZWtzaXN0ZWVyaWInOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnTXV1ZGEgR3J1cHBpJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1NhbHZlc3RhJzsKJGxhbmdbJ2NhbmNlbCddID0gJ1QmdXVtbDtoaXN0YSc7CiRsYW5nWydkZWxldGUnXSA9ICdLdXN0dXRhJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnT2xlZCBzYSBraW5kZWwsIGV0IG5lZWQgb24gc2VsbGUgZ3J1cGkgamFva3Mga29ycmVrdHNlZCBzZWFkZWQ/XG5PbWFkdXNlIHYmYXVtbDtsamEgbCZ1dW1sO2xpdGFtaW5lIGVpIGt1c3R1dGEgJnV1bWw7aHRlZ2kgc2lzc2VrYW5uZXQgc2VsbGUgZ3J1cGkva2FzdXRhamEgb21hZHVzdGUgdGFiZWxpcy4gTmVpZCBlaSBzYWEgbGlodHNhbHQga2FzdXRhZGEuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICdPbGVkIGtpbmRlbCwgZXQgc29vdmlkIHNlZGEgZ3J1cHBpIGt1c3R1dGFkYT8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ09sZWQga2luZGVsLCBldCBzb292aWQgc2VsbGUgb21hZHVzZSBsJm90aWxkZTtwbGlrdWx0IGt1c3R1dGFkYT9cblNlbGxlZ2Ega2Fhc25lYiBrJm90aWxkZTtpa2lkZSBrYXN1dGFqYXRlIHNlbGxlIG9tYWR1c2Uga3VzdHV0YW1pbmUuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0ViYXBpaXNhdmFkIHBhcmFtZWV0cmlkJzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snbmFtZSddID0gJ05pbWknOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVlbSBvbWFkdXNlIGxpc2FtaXNlbCc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlZW0gZ3J1cGkgc2Vvc2UgbGlzYW1pc2VsJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZWVtIGdydXBpIGxpc2FtaXNlbCc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZWVtIGthc3V0YWphIGdydXBwaSBsaXNhbWlzZWwnOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZWVtIG9tYWR1c2Uga3VzdHV0YW1pc2VsJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnRWkgbGVpZG51ZCBlLW1haWxpIGFhZHJlc3NpJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdQdXVkdXZhZCBraXJqdXRhbWlzZSAmb3RpbGRlO2lndXNlZCBzaWh0a2F0YWxvb2dpbGUnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1ZpZ2FzZWQgUGFyYW1lZXRyaWQnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdFaSBsZWlkbnVkICZ1dW1sO2h0ZWdpIGdydXBwaSc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ1V1ZW5kYSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cmVlcmknOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0thc3V0YWphbmltaSB2YWJhcyB2b3JtaXMnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdLaXJqZWxkdXMnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3J1cGkgTmltaSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdMaWdpcCZhdW1sOyZhdW1sO3Mga2VlbGF0dWQnOwokbGFuZ1snZXJyb3InXSA9ICdWaWdhJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnTGlzYSBHcnVwcCc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9yZGkgR3J1cHAnOwokbGFuZ1snYWRkdXNlciddID0gJ0xpc2EgS2FzdXRhamEnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ0FudHVkIGtyaXRlZXJpdW1pbGUgdmFzdGF2KGF0KSBrYXN1dGFqYSh0KSc7CiRsYW5nWydncm91cCddID0gJ0dydXBwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnVmFsaSBHcnVwcCc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdSZWdpc3RyZWVyaW1pc2UgTWFsbCc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdWJmF1bWw7bGphbG9naW1pc2UgTWFsbCc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ1Npc3NlbG9naW1pc2UgTWFsbCc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0VlbGlzdHVzZWQnOwokbGFuZ1sndXNlcnMnXSA9ICdLYXN1dGFqYWQnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgVXNlciBNYW5hZ21lbnQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdMdWJhIGthc3V0YWphdGVsIG9tYSBzYWlkaSBlZXNsaWl0ZWwgc2lzc2UgbG9naWRhJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdBbGduZSBlc2lsZWh0JzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdWaWltYXRpIHZhYWRhdHVkIGxlaHQnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnTXV1IGxlaHQ6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnU2lzZXN0YSB0ZWtzdCBwaWxkaWx0JzsKPz4K]]></data>
	</file>
	<file>
	  <filename>/lang/ext/eu_ES.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3JlYWRvbmx5J10gPSAnSXJha3VydHpla28gc29pbGlrJzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdVc2VyIE1hbmlwdWxhdG9yIENsYXNzJzsKJGxhbmdbJ2FkbWluX2xvZ2dvdXQnXSA9ICdBZG1pbmlzdHJhdHphaWxlYWsgc2Fpb3RpayBib3RhIGR1JzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdTYWlvYSBoYXNpdGEgZHV0ZW4gZXJhYmlsdHphaWxlYWsgZXJha3V0c2knOwokbGFuZ1sncHJvbXB0X2xvZ291dCddID0gJ0VyYWJpbHR6YWlsZWEgc2Fpb3RpayBhdGVyYSc7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdFcmFiaWx0emFpbGVhcmVuIFByb3BpZXRhdGVhayc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0VyYWJpbHR6YWlsZWFyZW4gSGlzdG9yaWFsYSc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnRhdHUnOwokbGFuZ1snY2xlYXInXSA9ICdHYXJiaXR1JzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0V4cG9ydGF0dSBFcmFiaWx0emFpbGUgSGlzdG9yaWFsYSBBU0NJSSBmb3JtYXR1cmEnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdHYXJiaXR1IEVyYWJpbHR6YWlsZSBIaXN0b3JpYWxhcmVuIGVycmVnaXN0cm9hayc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnRXJhYmlsdHphaWxlIEhpc3RvcmlhbGFyZW4gTWFudGVudWEnOwokbGFuZ1sneWVzJ10gPSAnQmFpJzsKJGxhbmdbJ25vJ10gPSAnRXonOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnT2YnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogTXVnYXJpayBnYWJlICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ09yZHViZXRla29hJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJ1NlaSBvcmR1dGFrb2EnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnSGFtYWJpIG9yZHV0YWtvYSc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ0VndW4gYmF0ZWtvYSc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICdBc3RlYmV0ZWtvYSc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnQmkgQXN0ZXRha29hJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdIaWxhYmV0ZWtvYSc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnSGlydSBIaWxhYmV0ZXRha29hJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnU2VpIEhpbGFiZXRldGFrb2EnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnVXJ0ZWJldGFrb2EnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnVGFsZGVrYWtldGEgZXRhIFNhaWxrYWtldGEnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ0JpbGFrZXRhLWlyaXpwaWRlYSBiZXRldHplbiBkdXRlbiBlcnJlZ2lzdHJvYWsnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICdFcmFiaWx0emFpbGUtaXplbmEgYmVoZXJhbnprYSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnRXJhYmlsdHphaWxlLWl6ZW5hIGdvcmFuemthJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdEYXRhIGJlaGVyYW56a2EnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnRGF0YSBnb3JhbnprYSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdHZXJ0YWVyYS1tb3RhIGJlaGVyYW56a2EnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdHZXJ0YWVyYS1tb3RhIGdvcmFuemthJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ0lQIGhlbGJpZGVhIGJlaGVyYW56a2EnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdJUCBoZWxiaWRlYSBnb3JhbnprYSc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnRXogZGEgSGlzdG9yaWFsaWsgdG9wYXR1JzsKJGxhbmdbJ3Jlc2V0J10gPSAnQmVycmV6YXJyaSc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdJUCBoZWxiaWRlYXJlbiBhcmFiZXJhIFRhbGRla2F0dSc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0dlcnRhZXJhLW1vdGEgaXJhZ2F6a2lhJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ0hhdSBiYWlubyBndXR4aWFnbyBkaXJlbiBnZXJ0YWVyYWsgYmFrYXJyaWsgZXJha3V0c2k6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdPcnJpYWxkZS1tdWdhJzsKJGxhbmdbJ2ZvciddID0gJ2Zvcic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ0VyYWJpbHR6YWlsZSBIaXN0b3JpYWxhcmVuIFR4b3N0ZW5hJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdFemV6YWd1bmEnOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQIEhlbGJpZGVhJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdHZXJ0YWVyYS1tb3RhJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnSXR6dWxpJzsKJGxhbmdbJ2ltcG9ydF9jb21wbGV0ZV9tc2cnXSA9ICdJbnBvcnRhc2lvLWVyYWdpa2V0YSBBbWFpdHV0YSc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdQcm96ZXNhdHVyaWtvIGxlcnJvYWsnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0Vycm9yZWFrIGF1cmtpdHUgZGlyYSc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnRXJyZWdpc3RydWFrIGdlaGl0dXRhJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnRXppbiBpemFuIGRhIFNNVFAgemVyYml0emFyaXRpayBlcmFudHp1bmlrIGphc28nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnRXppbiBpemFuIGRhIGFkaWVyYXppdGFrbyBmaXR4YXRlZ2lhICglcykgdG9wYXR1JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdJbnZhbGlkIHZhbHVlIGZvciBkcm9wZG93biBvciBtdWx0aXNlbGVjdCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ0ZpZWxkICVzIGV4Y2VlZHMgbWF4aW11bSBsZW5ndGgnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQgRXJyb3IgKGxpbmUgJXMpOiAlcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0eWRlZm5zJ10gPSAnQ291bGQgbm90IGdldCB0aGUgcHJvcGVydHkgZGVmaW5pdGlvbnMgKGludGVybmFsIGVycm9yKSc7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYSBjb2x1bW4gdG8gbWF0Y2ggdGhlIHJlcXVpcmVkIGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCBncm91cCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnVGhlIGZpbGUgc3BlY2lmaWVkIGZvciBpbXBvcnQgaXMgbm90IGluIHRoZSBjb3JyZWN0IGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnQ291bGQgbm90IG9wZW4gZmlsZSc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIEVhY2ggbGluZSBtdXN0IGNvbnRhaW4gdGhlIHNhbWUgbnVtYmVyIG9mIGZpZWxkcywgYW5kIHRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNuIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnQgVXNlcnMgSW50byBUaGlzIEdyb3VwJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ0lucHV0IENTViBGaWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydCBVc2Vycyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQgVXNlcnMnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnQ2xlYXInOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdJbWFnZSBEZXN0aW5hdGlvbiBQYXRoJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnQSBwcm9ibGVtIG9jY3VycmVkIHdpdGggYSBtaXNzaW5nIChidXQgcmVxdWlyZWQpIHVwbG9hZCc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnQ2Fubm90IGRlbGV0ZSBhIGdyb3VwIHRoYXQgc3RpbGwgaGFzIHVzZXJzJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdUaGlzIHVzZXIgaXMgYWxyZWFkeSBsb2dnZWQgaW4nOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGhlIHRleHQgZnJvbSB0aGUgaW1hZ2Ugd2FzIG5vdCBlbnRlcmVkIGNvcnJlY3RseSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9naW4gbW9yZSB0aGFuIG9uY2UnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0ltYWdlIEZpbGUgRXh0ZW5zaW9ucyB0aGF0IFVzZXJzIGFsbG93ZWQgdG8gdXBsb2FkJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgZ3JvdXAgZGVzY3JpcHRpb248L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBUaGUgaXAgYWRkcmVzcyBvZiB0aGUgY2xpZW50PC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWRvdXQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluIHRvIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dCBvZiB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gaXMgZXhwaXJlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IHVzZXIgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpbmZvIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBkZWxldGVkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIEdyb3VwJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogVGhlIGZvbGxvd2luZyBtYWNyb3MgY2FuIGJlIHVzZWQgaW4gdGhlc2UgZmllbGRzOiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gV2hlbiB1c2luZyB0aGUgeyRncm91cH0gbWFjcm8sIHRoZSBzeXN0ZW0gd2lsbCBzdWJzaXR1dGUgdGhlIG5hbWUgb2YgdGhlIGZpcnN0IG1lbWJlciBncm91cCB0aGF0IHRoZSB1c2VyIGJlbG9uZ3MgdG8sIGFuZCB3aWxsIHJlZGlyZWN0IHRvIHRoYXQgcGFnZS4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0VkaXQgdGhpcyBmaWVsZCB0byByZXNldCB0aGUgdXNlcnMgcGFzc3dvcmQnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0VkaXQgdGhpcyBmaWVsZCB0byByZXNldCB0aGUgdXNlcnMgcGFzc3dvcmQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnQSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdObyByZXN1bHRzIHJldHVybmVkIGZyb20gY3N2IGV4cG9ydCc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdMZW5ndGggb2YgdXNlcm5hbWUgZmllbGQnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnTGVuZ3RoIG9mIHBhc3N3b3JkIGZpZWxkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdNaW4vTWF4IHBhc3N3b3JkIGxlbmd0aHMgYXJlIGludmFsaWQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9NYXggdXNlcm5hbWUgbGVuZ3RocyBhcmUgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZW1haWxhZGRyZXNzJ10gPSAnSW52YWxpZCBFbWFpbCBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnV2UgY291bGQgbm90IGZpbmQgYW4gZW1haWwgYWRkcmVzcyBmb3IgdGhpcyBhY2NvdW50JzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVtIHNldHRpbmcgdXNlciBpbmZvJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsZW0gc2V0dGluZyBwcm9wZXJ0eSc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnVXNlciBBZGRlZCAlcyA9ICVzJzsKJGxhbmdbJ3VzZXJfZGVsZXRlZCddID0gJ1VzZXIgRGVsZXRlZCB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdQcm9wZXJ0eSc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVmFsdWUgKHJlZ3VsYXIgZXhwcmVzc2lvbiknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdXYXJuaW5nOiBUaGVzZSBmaWVsZHMgYWZmZWN0IHRoZSBzaXplIG9mIGlucHV0IGZpZWxkcyBmb3IgZm9ybXMuICBEZWNyZWFzaW5nIHRoaXMgbnVtYmVyIG9uIGFuIGV4aXN0aW5nIHNpdGUgbWF5IG5vdCBiZSBhZHZpc2FibGUnOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBhZGp1c3QgdGhlIG1vZHVsZSBwcmVmZXJlbmNlcz8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0VtYWlsIGFkZHJlc3MgYWxyZWFkeSB1c2VkJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnQWxsb3cgZHVwbGljYXRlIGVtYWlscyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcoYWxsb3cgbXVsdGlwbGUgdXNlcnMgd2l0aCB0aGUgc2FtZSBlbWFpbCBhZGRyZXNzKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ0FsbG93IGR1cGxpY2F0ZSAmcXVvdDtmb3Jnb3QgcGFzc3dvcmQmcXVvdDsgcmVtaW5kZXJzPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoYWxsb3cgYSB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQsIGV2ZW4gaWYgdGhleSBoYXZlbiYjMDM5O3QgYWN0ZWQgb24gYSBwcmV2aW91cyBvbmUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNlIEZyb250LWVuZCBVc2VyIHNwZWNpZmljIHBlcm1pc3Npb25zPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbHksIEZFVVNlcnMgcGVybWlzc2lvbnMgYXJlIHRoZSBzYW1lIGFzIHRoZSBlcXVpdmFsZW50IEFkbWluIEFyZWEgcGVybWlzc2lvbnMgbGlrZSBBZGQgVXNlciwgQWRkIEdyb3VwLCBldGMuIElmIHlvdSBzZWxlY3QgdGhpcyBvcHRpb24sIHRoZXJlIHdpbGwgYmUgc2VwYXJhdGUgcGVybWlzc2lvbnMgZm9yIEZFVXNlcnMuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIHVwbG9hZGVkIGZpbGUgKGludGVybmFsIGVycm9yKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdZb3UgZGlkIG5vdCBlbnRlciBhIHVzZXJuYW1lJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ1lvdSBkaWQgbm90IGVudGVyIGEgcGFzc3dvcmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kIFVzZXIgTG9nb3V0JzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kIFVzZXIgTG9naW4nOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5VU0UgQ0FVVElPTjwvYj4gd2hlbiBjaGFuZ2luZyBleGlzdGluZyBwcm9wZXJ0aWVzIHRoYXQgYXJlIGFzc2lnbmVkIHRvIGdyb3VwcywgeW91IG1heSBwb3RlbnRpYWxseSBjYXVzZSBkYW1hZ2UgYW5kIGJyZWFrIGFuIGV4aXN0aW5nIHNpdGUgPGk+KGVzcGVjaWFsbHkgaWYgeW91IHJlZHVjZSBmaWVsZCBsZW5ndGhzLCBldGMpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdUaGlzIGZ1bmN0aW9uIGRvZXMgbm90IHdvcmsgb24gd2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnRG8gbm90IGNyZWF0ZSBhIHByb3BlcnR5IGZvciB1c2VybmFtZSwgb3IgcGFzc3dvcmQgYXMgdGhlc2UgcHJvcGVydGllcyBhcmUgYnVpbHRpbiB0byB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydCBVc2VycyB0byBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRXhwb3J0JzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydCc7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnRWRpdCBQcm9wZXJ0eSc7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYXhpbXVtIExlbmd0aCc7CiRsYW5nWydjcmVhdGVkJ10gPSAnQ3JlYXRlZCc7CiRsYW5nWydzb3J0YnknXSA9ICdTb3J0IEJ5JzsKJGxhbmdbJ3NvcnQnXSA9ICdTb3J0aW5nJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1VzZXJzIGluIHRoZSBzZWxlY3RlZCBncm91cChzKSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdMaW1pdCByZXN1bHRzIHRvJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGZpZWxkIGZvciB0aGlzIHVzZXIuICBZb3UgbWF5IG5lZWQgdG8gY29udGFjdCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIEZvcmdvdCBQYXNzd29yZCBmb3JtJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBDaGFuZ2UgU2V0dGluZ3MgZm9ybSc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ2luIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9nb3V0IConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU29ydCBvcmRlcic7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdBIG51bWJlciBvZiB1c2VycyBhcmUgaW4gdGhlIG1pZGRsZSBvZiByZXNldHRpbmcgbG9zdCBwYXNzd29yZHMuICBDdXJyZW50bHkgdGhpcyBjb3VudCBpcyBhdDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgd2VlayBvbGQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIG1vbnRoIG9sZCc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0FyZSB5b3Ugc3VyZT8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdBbiBpbnZhbGlkIGNvZGUgaGFzIGJlZW4gZW50ZXJlZCwgcGxlYXNlIHRyeSBhZ2Fpbic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnQSB0ZW1wb3JhcnkgY29kZSBmb3IgeW91ciB1c2VyIGlkIGNvdWxkIG5vdCBiZSBmb3VuZCBpbiB0aGUgZGF0YWJhc2UnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB1c2VkIHRvIGRpc3BsYXkgdmVyaWZpY2F0aW9uIGZvcm0nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgZm9yIGZvcmdvdHRlbiBwYXNzd29yZCBlbWFpbCc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnRWl0aGVyIHlvdXJzZWxmIG9yIHNvbWVvbmUgZWxzZSBoYXMgYWxyZWFkeSB0cmlnZ2VyZWQgYSBwYXNzd29yZCByZXNldCBvcGVyYXRpb24gZm9yIHRoaXMgYWNjb3VudC4gIENoZWNrIHlvdXIgZW1haWwsIHlvdSBtYXkgaGF2ZSBmdXJ0aGVyIGluc3RydWN0aW9ucyBvbiBob3cgdG8gcmVzZXQgeW91ciBwYXNzd29yZCBpbiB5b3VyIGluYm94JzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdEYXRhYmFzZSBlcnJvcic7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdZb3UgYXJlIHJlY2VpdmluZyB0aGlzIG1lc3NhZ2UgYmVjYXVzZSBzb21lYm9keSB0b2xkIG91ciBzaXRlIHRoYXQgeW91IGhhZCBsb3N0IHlvdXIgcGFzc3dvcmQuICBJZiB0aGlzIGlzIHRoZSBjYXNlLCByZWFkIHRoZSBpbnN0cnVjdGlvbnMgYmVsb3cuICBJZiB5b3UgZG9uJiMwMzk7dCBoYXZlIGEgY2x1ZSB3aGF0IHRoaXMgaXMsIHRoZW4geW91IGFyZSBzYWZlIHRvIGRlbGV0ZSB0aGlzIG1lc3NhZ2UsIGFuZCB3ZSB0aGFuayB5b3UgZm9yIHlvdXIgdGltZS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdDb2RlJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ1RoZSBmb2xsb3dpbmcgY29kZSBoYXMgYmVlbiBnZW5lcmF0ZWQgcmFuZG9tbHkgZ2VuZXJhdGVkIGluIG9yZGVyIHRvIHZlcmlmeSB0aGUgdXNlciBhY2NvdW50LiAgd2hlbiB5b3UgY2xpY2sgb24gdGhlIGxpbmsgYmVsb3cgeW91IHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBmaWVsZCB0byBlbnRlciB0aGlzIGNvZGUuICBOb3JtYWxseSB0aGUgZmllbGQgaXMgcHJlLWNvbXBsZXRlZCBmb3IgeW91LCBidXQgaW5jYXNlIGl0IGlzbiYjMDM5O3QgdGhlIGNvZGUgaXM6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnQ2xpY2tpbmcgb24gdGhlIGZvbGxvd2luZyBsaW5rIHdpbGwgdGFrZSB5b3UgdG8gdGhlIHdlYnNpdGUgd2hlcmUgeW91IGNhbiBlbnRlciB0aGUgYWJvdmUgY29kZSwgYW5kIHJlc2V0IHlvdXIgcGFzc3dvcmQ6JzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdMb3N0IFBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIENNU01haWxlciBtb2R1bGUnOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnQW4gZW1haWwgaGFzIGJlZW4gc2VudCB0byAlcyB3aXRoIGluc3RydWN0aW9ucyBhcyB0byBob3cgdG8gcmVzZXQgeW91ciBwYXNzd29yZC4gIFRoYW5rIHlvdSc7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1NvIHlvdSBmb3Jnb3Qgb3IgbG9zdCB5b3VyIHBhc3N3b3JkLiBXZWxsLCB0eXBlIHlvdXIgdXNlcm5hbWUgaW4gaGVyZSwgYW5kIGlmIHdlIGNhbiBmaW5kIHlvdSB3ZSB3aWxsIHNlbmQgeW91IGFuIGVtYWlsIHdpdGggaW5zdHJ1Y3Rpb25zIG9uIGhvdyB0byByZXNldCBpdCc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJ0ZvcmdvdCBQYXNzd29yZCBUZW1wbGF0ZXMnOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnUHJvcGVydHkgJXMgbm90IGZvdW5kJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdQcm9wZXJ0aWVzIGZvdW5kJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdBZGQgUHJvcGVydHknOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0EgcmVxdWlyZWQgZmllbGQgKCVzKSB3YXMgZW1wdHknOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdFbnRlciBhIG5ldyBwYXNzd29yZCBoZXJlIHRvIGNoYW5nZSB5b3VyIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnWW91IGRvIG5vdCBhcHBlYXIgdG8gYmUgbG9nZ2VkIGluJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdTZXR0aW5ncyc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJhdGlvbic7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ1RoaXMgYWNjb3VudCBoYXMgZXhwaXJlZCc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnSW1wcm9wZXIgZW1haWwgYWRkcmVzcyBmb3JtYXR0aW5nJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnSW52YWxpZCBleHBpcnkgZGF0ZSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnRXJyb3Igc2V0dGluZyBwcm9wZXJ0eSAlcyBmb3IgdXNlciAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ0ludmFsaWQgZ3JvdXAgaWQgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdIaWRkZW4gZmllbGQgbWFya2VyJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdIaWRkZW4gZmllbGQgY29sb3InOwokbGFuZ1snaGlkZGVuJ10gPSAnSGlkZGVuJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdBIHByb3BlcnR5IHdpdGggdGhhdCBuYW1lIGlzIGFscmVhZHkgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdObyBwcm9wZXJ0aWVzIGRlZmluZWQnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdObyBwcm9wZXJ0aWVzIHdlcmUgc2VsZWN0ZWQgZm9yIHRoaXMgZ3JvdXAnOwokbGFuZ1snbm9ncm91cHMnXSA9ICdObyBHcm91cHMgYXJlIGRlZmluZWQnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcm91cHMgRm91bmQnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ01lbWJlcnNoaXAgaW4gYXQgbGVhc3Qgb25lIGdyb3VwIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdSZXF1aXJlIG1lbWJlcnNoaXAgaW4gYXRsZWFzdCBvbmUgZ3JvdXAnOwokbGFuZ1snYmFjayddID0gJ0JhY2snOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGlzIGEgcmVxdWlyZWQgZmllbGQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ01hcmsgcmVxdWlyZWQgZmllbGRzIHdpdGgnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnSGlsaXRlIHJlcXVpcmVkIGZpZWxkcyBpbic7CiRsYW5nWyduZXh0J10gPSAnTmV4dCc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0EgR3JvdXAgd2l0aCB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdSZXF1aXJlZCBGaWVsZCc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wdGlvbmFsJzsKJGxhbmdbJ29mZiddID0gJ09mZic7CiRsYW5nWydzaXplJ10gPSAnU2l6ZSc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltdW0gc2l6ZSBvZiBhbnkgb25lIGRpbWVuc2lvbiBvZiB0aGUgaW1hZ2UgaW4gcGl4ZWxzKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMZW5ndGgnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2hhcnMgaW4gdGhlIHRleHQgaW5wdXQpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdEcm9wZG93biBvcHRpb25zLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuICBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1Byb21wdCc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cGUnOwokbGFuZ1sndHlwZSddID0gJ1R5cGUnOwokbGFuZ1sndGV4dCddID0gJ1RleHQnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ011bHRpIFNlbGVjdCBMaXN0JzsKJGxhbmdbJ2ltYWdlJ10gPSAnSW1hZ2UnOwokbGFuZ1snZW1haWwnXSA9ICdFbWFpbCBBZGRyZXNzJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnVGV4dGFyZWEnOwokbGFuZ1snZHJvcGRvd24nXSA9ICdEcm9wZG93bic7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1dlbGNvbWUnOwokbGFuZ1snbG9nb3V0J10gPSAnU2lnbiBvdXQnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzJ10gPSAnQ2hhbmdlIE15IFNldHRpbmdzJzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnTG9naW4gZmFpbGVkIC0gSW52YWxpZCB1c2VybmFtZSBvciBwYXNzd29yZD8nOwokbGFuZ1snbG9naW4nXSA9ICdTaWduIGluJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnU2lnbiBpbiBidXR0b24gbGFiZWwnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnUGFzc3dvcmQnOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3Rlcic7CiRsYW5nWydmb3Jnb3RwdyddID0gJ0ZvcmdvdCBZb3VyIFBhc3N3b3JkPyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ0RlZmF1bHRzJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnVXNlciBJRCBub3QgZm91bmQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ1RoYXQgdXNlcm5hbWUgKCVzKSBpcyBhbHJlYWR5IGluIHVzZSc7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnVXNlIFNNVFAgdG8gdmFsaWRhdGUgZW1haWwgYWRkcmVzc2VzPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbXVtIFBhc3N3b3JkIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdNYXhpbXVtIFBhc3N3b3JkIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdNaW5pbXVtIFVzZXJuYW1lIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdNYXhpbXVtIFVzZXJuYW1lIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdTZXNzaW9uIFRpbWVvdXQgKHNlY29uZHMpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdVc2UgY29va2llcyB0byBrZWVwIGxvZ2lucyBhbGl2ZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ0FsbG93IEVtYWlsIFJlZ2lzdHJhdGlvbic7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnRGVmYXVsdCBHcm91cCBmb3IgbmV3IHVzZXJzJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnQ2hhbmdlIFNldHRpbmdzIFRlbXBsYXRlJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdQYXNzd29yZHMgRG8gbm90IG1hdGNoJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ0ludmFsaWQgVXNlcm5hbWUnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnSW52YWxpZCBQYXNzd29yZCc7CiRsYW5nWydlZGl0dXNlciddID0gJ0VkaXQgVXNlcic7CiRsYW5nWyd2YWxpZCddID0gJ1ZhbGlkJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ1RoaXMgdXNlciBpcyBub3QgYSBtZW1iZXIgb2YgYW55IGdyb3Vwcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnTm8gUHJvcGVydGllcyc7CiRsYW5nWyd2YWx1ZSddID0gJ1ZhbHVlJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dyb3Vwcyc7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnUHJvcGVydGllcyc7CiRsYW5nWydwcm9wbmFtZSddID0gJ1Byb3BlcnR5IE5hbWUnOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnUHJvcGVydHkgVmFsdWUnOwokbGFuZ1snYWRkJ10gPSAnQWRkJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdIaXN0b3J5JzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0JzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmVzJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ1NwZWNpZnkgRGF0ZSc7CiRsYW5nWycxMmhycyddID0gJzEyIEhvdXJzJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgSG91cnMnOwokbGFuZ1snNDhocnMnXSA9ICc0OCBIb3Vycyc7CiRsYW5nWycxd2VlayddID0gJzEgV2Vlayc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIFdlZWtzJzsKJGxhbmdbJzFtb250aCddID0gJzEgTW9udGgnOwokbGFuZ1snM21vbnRocyddID0gJzMgTW9udGhzJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IE1vbnRocyc7CiRsYW5nWycxeWVhciddID0gJzEgWWVhcic7CiRsYW5nWyduZXZlciddID0gJ05ldmVyJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsZSBpbnN0YWxsZWQgc3VjZXNzZnVsbHkuPGJyLz5CZSBzdXJlIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4mcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdQYXNzd29yZCc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ0FnYWluJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdHcm91cCBieSB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnRWRpdCBHcm91cCc7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtaXQnOwokbGFuZ1snY2FuY2VsJ10gPSAnQ2FuY2VsJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ0RlbGV0ZSc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB0aGlzIGlzIHRoZSBwcm9wZXIgc2V0dGluZ3MgZm9yIHRoaXMgZ3JvdXA/XG5UdXJuaW5nIGEgcHJvcGVydHkgb2ZmIHdpbGwgbm90IGRlbGV0ZSBhbnkgZW50cmllcyBpbiB0aGUgcHJvcGVydGllcyB0YWJsZSBmb3IgdGhpcyBncm91cC91c2VyLiAgVGhleSB3aWxsIG1lcmVseSBiZSB1bmF2YWlsYWJsZS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBncm91cD8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjb21wbGV0ZWx5IGRlbGV0ZSB0aGlzIHByb3BlcnR5P1xuRG9pbmcgc28gd2lsbCBhbHNvIGVyYXNlIGFueSB1c2VyIGVudHJpZXMgZm9yIHRoaXMgcHJvcGVydHkuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0luc3VmZmljaWVudCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snbmFtZSddID0gJ05hbWUnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdvcnVwJ10gPSAnUHJvYmxlbSBhZGRpbmcgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ0ludmFsaWQgUGFyYW1ldGVycyc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0FwcGx5JzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnVXNlcm5hbWUgUmVndWxhciBFeHByZXNzaW9uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24nOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3JvdXAgTmFtZSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3InOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZGQgR3JvdXAnOwokbGFuZ1snYWRkdXNlciddID0gJ0FkZCBVc2VyJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVc2VycyBmb3VuZCB0aGF0IG1hdGNoIHRoZSBjcml0ZXJpYSc7CiRsYW5nWydncm91cCddID0gJ0dyb3VwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnU2VsZWN0IEdyb3VwJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJhdGlvbiBUZW1wbGF0ZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdMb2dvdXQgVGVtcGxhdGUnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdMb2dpbiBUZW1wbGF0ZSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2VzJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXNlcnMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgVXNlciBNYW5hZ2VtZW50JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9nIGluIHRvIHRoZSBmcm9udGVuZCBvZiB5b3VyIHNpdGUnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ0RlZmF1bHQgZnJvbnQgcGFnZSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnTGFzdCBhY2Nlc3NlZCBwYWdlJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ090aGVyIHBhZ2U6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnRW50ZXIgdGhlIHRleHQgZnJvbSB0aGUgaW1hZ2UnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fi_FI.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3Byb21wdF92aWV3cHJvcHMnXSA9ICdTZWxlY3QgQWRkaXRpb25hbCBQcm9wZXJ0aWVzIHRvIFZpZXcnOwokbGFuZ1sndmlldyddID0gJ1ZpZXcnOwokbGFuZ1snaW5mb19pZ25vcmVfdXNlcmlkJ10gPSAnSWYgY2hlY2tlZCB0aGUgaW1wb3J0IHJvdXRpbmUgd2lsbCBhdHRlbXB0IHRvIGFkZCB1c2VycyBpbmRlcGVuZGFudCBvZiB0aGUgdXNlcmlkIGNvbHVtbi4gIElmIGEgdXNlciB3aXRoIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGUgaW1wb3J0IGZpbGUgYWxyZWFkeSBleGlzdHMsIGFuIGVycm9yIHdpbGwgYmUgZ2VuZXJhdGVkJzsKJGxhbmdbJ2lnbm9yZV91c2VyaWQnXSA9ICdJZ25vcmUgVXNlcklEIENvbHVtbiBvbiBJbXBvcnQnOwokbGFuZ1snZXhwb3J0X3Bhc3NoYXNoJ10gPSAnRXhwb3J0IHRoZSBwYXNzd29yZCBoYXNoIHRvIHRoZSBmaWxlJzsKJGxhbmdbJ2luZm9fZXhwb3J0X3Bhc3NoYXNoJ10gPSAnVGhlIHBhc3N3b3JkIGhhc2ggaXMgb25seSB1c2VmdWwgaWYgdGhlIHBhc3N3b3JkIHNhbHQgb24gdGhlIGltcG9ydCBob3N0IGlzIGlkZW50aWNhbCB0byB0aGF0IG9mIHRoZSBleHBvcnQgaG9zdCc7CiRsYW5nWydlcnJvcl9hZGp1c3RzYWx0J10gPSAnVGhlIHBhc3N3b3JkIHNhbHQgY2Fubm90IGJlIGFkanVzdGVkJzsKJGxhbmdbJ3Byb21wdF9wd3NhbHQnXSA9ICdQYXNzd29yZCBTYWx0JzsKJGxhbmdbJ2luZm9fcHdzYWx0J10gPSAnRnJvbnRFbmRVc2VycyBzYWx0cyBhbGwgcGFzc3dvcmRzIHdpdGggdGhpcyBrZXkgd2hpY2ggaXMgY3JlYXRlZCB1cG9uIGluc3RhbGwuICBPbmNlIHVzZXJzIGhhdmUgYmVlbiBhZGRlZCB0byB0aGUgZGF0YWJhc2UgdGhlIHNhbHQgY2Fubm90IGJlIGNoYW5nZWQuIFRoZSBzYWx0IG1heSBiZSBlbXB0eSBmb3Igb2xkZXIgaW5zdGFsbHMuJzsKJGxhbmdbJ2FkdmFuY2VkX3NldHRpbmdzJ10gPSAnQWR2YW5jZWQgU2V0dGluZ3MnOwokbGFuZ1snaW5mb19zZXNzaW9udGltZW91dCddID0gJ1NwZWNpZnkgdGhlIG51bWJlciBvZiBzZWNvbmRzIGJlZm9yZSBhbiBpbmFjdGl2ZSB1c2VyIGlzIGF1dG9tYXRpY2FsbHkgbG9nZ2VkIG91dCBvZiB0aGUgd2Vic2l0ZSc7CiRsYW5nWydwcm9tcHRfZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdVc2VyIEV4cGlyeSBJbnRlcnZhbCc7CiRsYW5nWydpbmZvX2V4cGlyZXVzZXJzX2ludGVydmFsJ10gPSAnU3BlY2lmeSBhIHZhbHVlIChpbiBzZWNvbmRzKSB0aGF0IGluZGljYXRlcyBob3cgb2Z0ZW4gdGhlIHN5c3RlbSBzaG91bGQgZm9yY2UgdXNlcnMgd2hvcyBzZXNzaW9uIGhhcyBleHBpcmVkIHRvIGJlIGxvZ2dlZCBvdXQuICBUJnF1b3Q7aGlzIGlzIGFuIG9wdGltaXphdGlvbiB0byBzYXZlIGRhdGFiYXNlIHF1ZXJpZXMuICBJZiBsZWZ0IGVtcHR5IG9yIHNldCB0byAwIGV4cGlyeSB3aWxsIGJlIHBlcmZvcm1lZCBvbiBldmVyeSByZXF1ZXN0Lic7CiRsYW5nWydtc2dfc2V0dGluZ3NjaGFuZ2VkJ10gPSAnQXNldHVrc2VzaSBvbiBwJmF1bWw7aXZpdGV0dHkgb25uaXN0dW5lZXN0aSc7CiRsYW5nWydmb3JjZWRsb2dvdXR0YXNrX2Rlc2MnXSA9ICdGb3JjZSB1c2VycyB0byBsb2dvdXQgYXQgcmVndWxhciBpbnRlcnZhbHMnOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3RpbWVzJ10gPSAnVGltZXMgZm9yIGZvcmNlZCBsb2dvdXQnOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF90aW1lcyddID0gJ1NwZWNpZnkgYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiB0aW1lcyBsaWtlIEhIOk1NLEhIOk1NIHdoZXJlIHVzZXJzIHdpbGwgYmUgZm9yY2libHkgbG9nZ2VkIG91dC4gTm90ZSwgdGhpcyB1c2VzIHRoZSBwc3VlZG9jcm9uIG1lY2hhbmlzbSBzbyB5b3UgbXVzdCBiZSBzdXJlIHRoYXQgdGhlIHRpbWVzIGVudGVyZWQgaGVyZSB3aWxsIGNvaW5jaWRlIHJlYXNvbmFibHkgd2l0aCB5b3VyICZxdW90O3BzZXVkb2Nyb24gZ3JhbnVsYXJpdHkmcXVvdDsgYW5kIHRoYXQgc3VmZmljaWVudCByZXF1ZXN0cyB3aWxsIG9jY3VyIHRvIHlvdXIgd2Vic2l0ZSB0byBlbnN1cmUgdGhhdCBwc2V1ZG9jcm9uIGlzIGV4ZWN1dGVkLic7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ0V4Y2x1ZGUgdXNlcnMgdGhhdCBoYXZlIGJlZW4gYWN0aXZlIGluIDxlbT4obWludXRlcyk8L2VtPic7CiRsYW5nWydpbmZvX2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdJZiBzcGVjaWZpZWQsIGFueSB1c2VycyB0aGF0IGhhdmUgYmVlbiBhY3RpdmUgaW4gdGhpcyBudW1iZXIgb2Ygc2Vjb25kcyB3aWxsIG5vdCBiZSBmb3JjaWJseSBsb2dnZWQgb3V0JzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgdXNlciAlcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZWV4dGVuc2lvbiddID0gJ1RoZSB1cGxvYWRlZCBmaWxlIGRvZXMgbm90IG1hdGNoIHRoZSBsaXN0IG9mIGFsbG93ZWQgZmlsZSB0eXBlcyc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnQWxsIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBoYXMgYmVlbiBkZWxldGVkJzsKJGxhbmdbJ2luZm9fZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ0lmIGVuYWJsZWQsIHRoaXMgbW9kdWxlIHdpbGwgbGlzdGVuIHRvIGV2ZW50cyBmcm9tIHRoZSBFY29tbWVyY2Ugc3VpdGUuICBUaGUgZm9sbG93aW5nIHNldHRpbmdzIG9ubHkgaGF2ZSBlZmZlY3QgaWYgdGhpcyBzZXR0aW5nIGlzIGVuYWJsZWQuJzsKJGxhbmdbJ3Byb21wdF9lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnTGlzdGVuIHRvIE9yZGVyIEV2ZW50cyc7CiRsYW5nWydpbmZvX3BhaWRyZWdfc2V0dGluZ3MnXSA9ICdUaGUgZm9sbG93aW5nIHNldHRpbmdzIG9ubHkgYXBwbHkgaWYgdXNpbmcgc2VsZiByZWdpc3RyYXRpb24gYW5kIGFsbG93aW5nIGZvciBwYWlkIHJlZ2lzdHJhdGlvbic7CiRsYW5nWydub25lJ10gPSAnTm9uZSc7CiRsYW5nWydkZWxldGVfdXNlciddID0gJ0RlbGV0ZSBVc2VyJzsKJGxhbmdbJ2V4cGlyZV91c2VyJ10gPSAnRXhwaXJlIFVzZXInOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmNhbmNlbGxlZCddID0gJ0FjdGlvbiB0byBwZXJmb3JtIHdoZW4gYSBzdWJzY3JpcHRpb24gb3JkZXIgaXMgY2FuY2VsbGVkJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJkZWxldGVkJ10gPSAnQWN0aW9uIHRvIHBlcmZvcm0gd2hlbiBhIHN1YnNjcmlwdGlvbiBvcmRlciBpcyBkZWxldGVkJzsKJGxhbmdbJ2Vjb21tZXJjZV9zZXR0aW5ncyddID0gJ0Vjb21tZXJjZSBTZXR0aW5ncyc7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ1NlY3VyZSBGaWVsZCBNYXJrZXInOwokbGFuZ1snc2VjdXJlZmllbGRjb2xvciddID0gJ1NlY3VyZSBGaWVsZCBDb2xvcic7CiRsYW5nWydwcm9tcHRfZW5jcnlwdCddID0gJ1N0b3JlIHRoaXMgZGF0YSBlbmNyeXB0ZWQgaW4gdGhlIGRhdGFiYXNlJzsKJGxhbmdbJ2Vycm9yX25vdHN1cHBvcnRlZCddID0gJ1RoZSBjaG9zZW4gb3B0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgZ2l2ZW4geW91ciBjdXJyZW50IGNvbmZpZ3VyYXRpb24nOwokbGFuZ1snYXVkaXRfdXNlcl9jcmVhdGVkJ10gPSAnVXNlciBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQnOwokbGFuZ1snaW5mb19hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnSWYgYSB1c2VyIGlzIGF1dGhlbnRpY2F0ZWQgYnkgYW4gZXh0ZXJuYWwgYXV0aGVudGljYXRpb24gbW9kdWxlIGJ1dCBpcyBub3Qga25vd24gaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIHNob3VsZCBhbiBGRVUgYWNjb3VudCBiZSBjcmVhdGVkIGF1dG9tYXRpY2FsbHk/JzsKJGxhbmdbJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnQXV0b21hdGljYWxseSBDcmVhdGUgVW5rbm93biBVc2Vycyc7CiRsYW5nWydkaXNwbGF5X3NldHRpbmdzJ10gPSAnRGlzcGxheSBTZXR0aW5ncyc7CiRsYW5nWydpbmZvX3N0ZF9hdXRoX3NldHRpbmdzJ10gPSAnVGhlIGZvbGxvd2luZyBzZXR0aW5ncyBhcmUgb25seSBhcHBsaWNhYmxlIGlmIHVzaW5nIHRoZSAmcXVvdDtCdWlsdGluIEF1dGhlbnRpY2F0aW9uJnF1b3Q7Lic7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHVuJ10gPSAnU2VsZWN0aW5nIE5vIHdpbGwgZGlzYWJsZSB0aGUgYWJpbGl0eSBmb3IgYSB1c2VyIHRvIHJlcXVlc3QgbG9zdCBsb2dpbiBpbmZvcm1hdGlvbiwgaXJyZXNwZWN0aXZlIG9mIG90aGVyIHNldHRpbmdzJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0cHcnXSA9ICdTZWxlY3RpbmcgTm8gd2lsbCBkaXNhYmxlIHRoZSBhYmlsaXR5IGZvciBhIHVzZXIgdG8gYSBwYXNzd29yZCByZXNldCwgaXJyZXNwZWN0aXZlIG9mIG90aGVyIHNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3R1biddID0gJ0FsbG93IHVzZXJzIHRvIHJlcXVlc3QgdGhlaXIgdXNlcm5hbWUnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHB3J10gPSAnQWxsb3cgdXNlcnMgdG8gcmVxdWVzdCBhIHBhc3N3b3JkIGNoYW5nZSc7CiRsYW5nWydhdXRoX3NldHRpbmdzJ10gPSAnQXV0aGVudGljYXRpb24gU2V0dGluZ3MnOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdCdWlsdGluIEF1dGhlbnRpY2F0aW9uJzsKJGxhbmdbJ2F1dGhfYnVpbHRpbiddID0gJ0ZFVSBTdGFuZGFyZCBBdXRoZW50aWNhdGlvbic7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F1dGhlbnRpY2F0aW9uIE1vZHVsZS9NZXRob2QnOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ1RoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSBzdXBwb3J0cyB1c2luZyBhbHRlcm5hdGUgYXV0aGVudGljYXRpb24gbWV0aG9kcywgd2l0aCB2YXJ5aW5nIGNhcGFiaWxpdGllcy4gIFNvbWUgZnVuY3Rpb25hbGl0eSB3aWxsIG5vdCBmdW5jdGlvbiBvciBiZSBkaXNhYmxlZCB3aGVuIG5vdCB1c2luZyB0aGUgYnVpbHQgaW4gYXV0aGVudGljYXRpb24gbWV0aG9kJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnVGhlIHZhbHVlIHNwZWNpZmllZCBmb3IgJXMgaXMgYWxyZWFkeSBpbiB1c2UgYnkgYW5vdGhlciB1c2VyJzsKJGxhbmdbJ3VuaXF1ZSddID0gJ1VuaXF1ZSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdUaGUgdmFsdWUgc3BlY2lmaWVkIGZvciAlcyAoJXMpIGlzIG5vdCB1bmlxdWUnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ0ZvcmNlIHZhbHVlcyBvZiB0aGlzIHByb3BlcnR5IHRvIGJlIHVuaXF1ZSBhY3Jvc3MgYWxsIHVzZXIgYWNjb3VudHMnOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnVXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgbG9nb3V0IGZvcm1zLCB0aGlzIHBhcmFtZXRlciBpZiBzcGVjaWZpZWQgd2lsbCBpbmRpY2F0ZSB0aGF0IHRoZSB1c2VyIHNob3VsZCBiZSByZXR1cm5lZCB0byB0aGUgcGFnZSAoYnkgdXJsKSB0aGF0IHRoZSB1c2VyIHdhcyB2aWV3aW5nIGJlZm9yZSB0aGUgYWN0aW9uIG9jY3VycmVkLiAgVGhpcyBwYXJhbWV0ZXIgd2lsbCBvdmVycmlkZSB0aGUgcmVkaXJlY3QgcHJlZmVyZW5jZXMsIGFuZCB0aGUgcmV0dXJudG8gcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnVXNlZCB3aXRoIG9uZSBvZiB0aGUgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGF0IHRoZSBmb3JtcyBzaG91bGQgbm90IGJlIHBsYWNlZCBpbmxpbmUsIGluc3RlYWQgdGhlIHJlc3VsdGluZyBvdXRwdXQgYWZ0ZXIgZm9ybSBzdWJtaXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdMb2dpbiBTZXNzaW9uIFRpbWVvdXQgV2FybmluZyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1lvdXIgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIHBsZWFzZSBjbGljayAmcXVvdDsmcXVvdDtPayZxdW90OyB0byBjb25maXJtIHlvdXIgYWN0aXZpdHkgb24gdGhpcyB3ZWJzaXRlLic7CiRsYW5nWydvayddID0gJ09rJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1Jlc2V0IFNlc3Npb24gVGVtcGxhdGUnOwokbGFuZ1snaW5mb19uYW1lJ10gPSAnVGhpcyBpcyB0aGUgZmllbGQgbmFtZSwgdG8gYmUgdXNlZCBmb3IgYWRkcmVzc2luZyBpbiBzbWFydHkuICBJdCBtdXN0IGNvbnNpc3Qgb2Ygb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyBhbmQgdW5kZXJzY29yZXMuJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ1Zpc2l0b3JzJzsKJGxhbmdbJ2ZldV9ncm91cHNfcHJvbXB0J10gPSAnU2VsZWN0IG9uZSBvciBtb3JlIEZFVSBncm91cHMgdGhhdCBhcmUgYWxsb3dlZCB0byB2aWV3IHRoaXMgcGFnZSc7CiRsYW5nWydlcnJvcl9tdXN0c2VsZWN0X2dyb3VwJ10gPSAnQSBncm91cCBtdXN0IGJlIHNlbGVjdGVkJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGVjdCBPbmUnOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ1N0YXJ0IFllYXInOwokbGFuZ1snZW5kX3llYXInXSA9ICdFbmQgWWVhcic7CiRsYW5nWydkYXRlJ10gPSAnRGF0ZSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdUaHVtYm5haWwgU2l6ZSc7CiRsYW5nWydPblVwZGF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBNb2RpZmllZCc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdUb28gbWFueSB1c2VycyBhcmUgc2VsZWN0ZWQgZm9yIGJ1bGsgb3BlcmF0aW9ucy4uLi4gUGxlYXNlIHRyaW0gaXQgdG8gMjUwIG9yIGxlc3MnOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoZSBzZWxlY3RlZCB1c2Vycz8nOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnRGVsZXRlIFNlbGVjdGVkJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyYXRlIHJhbmRvbSB1c2VybmFtZSB3aGVuIGFkZGluZyBuZXcgdXNlcnMnOwokbGFuZ1snbW9udGhzJ10gPSAnbW9udGhzJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdEZWZhdWx0IHVzZXIgZXhwaXJ5IHBlcmlvZCc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdOb3RpZmljYXRpb24gU2V0dGluZ3MnOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdQcm9wZXJ0eSBTZXR0aW5ncyc7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ1JlZGlyZWN0aW9uIFNldHRpbmdzJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lcmFsIFNldHRpbmdzJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdTZXNzaW9uIGFuZCBDb29raWUgU2V0dGluZ3MnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdGaWVsZCBTZXR0aW5ncyc7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9ucmVxdWlyZWQnXSA9ICdUaGUgbG9zdHVzZXJuYW1lIGZsYWcgY2FuIG9ubHkgYmUgdXNlZCBvbiByZXF1aXJlZCBmaWVsZHMnOwokbGFuZ1sncHJvcF90ZXh0YXJlYV93eXNpd3lnJ10gPSAnQWxsb3cgdXNlIG9mIHd5c2l3eWcgb24gdGhpcyB0ZXh0IGFyZWEnOwokbGFuZ1snaW5mb19jb29raWVzdG9yZW1lbWJlciddID0gJzxzdHJvbmc+Tm90ZTogPC9zdHJvbmc+IFRoaXMgdXNlcyB0aGUgbWNyeXB0IGZ1bmN0aW9ucyBmb3IgZW5jcnlwdGlvbiBwdXJwb3NlcywgYW5kIHRoZXkgY291bGQgbm90IGJlIGRldGVjdGVkIG9uIHlvdXIgaW5zdGFsbC4gICBQbGVhc2UgY29udGFjdCB5b3VyIHNlcnZlciBhZG1pbmlzdHJhdG9yLic7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICdFZGl0aW5nIFVzZXInOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdEbyBub3QgaW5saW5lIGZvcm1zJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnUGFpbmEgdCZhdW1sO3N0JmF1bWw7LCBqb3MgZXQgbXVpc3RhIGtpcmphdXR1bWlzdGlldG9qYXNpJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdQYWluYSB0JmF1bWw7c3QmYXVtbDssIGpvcyBldCBtdWlzdGEgc2FsYXNhbmFhc2knOwokbGFuZ1snaW5mb19sb2dvdXQnXSA9ICdLbGlra2FhIGtpcmphdXR1YWtzZXNpIHVsb3MnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ1BhaW5hIHQmYXVtbDtzdCZhdW1sOyBtdW9rYXRha3Nlc2kgc2FsYXNhbmFhc2kgdGFpIG11aXRhIHRpZXRvamFzaSc7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ04mYXVtbDt5dCZhdW1sOyBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyAtcG9oamEnOwokbGFuZ1snZXZlbnQnXSA9ICdUYXBhaHR1bWEnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVS10YXBhaHR1bWFodW9tYXV0dXMnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnSWxtb2l0dXN2aWVzdGllbiBrb2hkZW9zb2l0ZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnSWxtb2l0dXN2aWVzdGllbiBwb2hqYSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdJbG1vaXR1c3ZpZXN0aWVuIGFpaGUgKFN1YmplY3QpJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25zJ10gPSAnUyZhdW1sO2hrJm91bWw7cG9zdGktaWxtb2l0dWtzZXQnOwokbGFuZ1snT25Mb2dpbiddID0gJ1NpcyZhdW1sOyZhdW1sO25raXJqYXV0dWVzc2EnOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdVbG9za2lyamF1dHVlc3NhJzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ0lzdHVubm9uIHZhbmhldGVzc2EnOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2ppJmF1bWw7IGx1b2Rlc3NhJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ0smYXVtbDt5dHQmYXVtbDtqaSZhdW1sOyBwb2lzdGV0dGFlc3NhJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7biBhc2V0dWtzaWVuIG11dXR0dWVzc2EnOwokbGFuZ1snT25DcmVhdGVHcm91cCddID0gJ0x1b3RhZXNzYSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3J5aG0mYXVtbDsnOwokbGFuZ1snT25EZWxldGVHcm91cCddID0gJ1BvaXN0ZXR0YWVzc2EgayZhdW1sO3l0dCZhdW1sO2omYXVtbDtyeWhtJmF1bWw7JzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnJnF1b3Q7S2Fkb25uZWV0IGtpcmphdXR1bWlzdGllZG90JnF1b3Q7LXRvaW1pbm5hbGxpc3V1cyBvbiBvbm5pc3R1bmVlc3RpIHN1b3JpdGV0dHUuIEwmb3VtbDt5ZGV0dGlpbiB1bmlpa2tpIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVzLCBqb2thIHZhc3RhYSBhbnRhbWlhc2kgdGlldG9qYS4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVrc2VzaSBvbic7CiRsYW5nWydsb3N0dW5jb25maXJtX3Bvc3Rtc2cnXSA9ICdTdW9zaXR0ZWxlbW1lIGtpcmphYW1hYW4gdCZhdW1sO20mYXVtbDtuIHRpZWRvbiB5bCZvdW1sO3MgdHVydmFsbGlzZWVuLCBtdXR0YSBzYWF0YXZpbGxhIG9sZXZhYW4gc2lqYWludGlpbi4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcywgam9ubmUgc2lpcnJ5dCZhdW1sOyZhdW1sO24gYXNldHVzdGVuIG11dXRva3NlbiBqJmF1bWw7bGtlZW4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnUGFnZUlEL0FsaWFzIGtvb2RpbiB2YXJtZW5udWtzZW4gaiZhdW1sO2xrZWVuIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdLYWRvbm51dCBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51cyBwb2hqYSc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ0thZG9ubnV0IGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVzIHZhcm1lbm51cyBwb2hqYSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ1ZpcmhlOiBFbmVtbSZhdW1sO24ga3VpbiB5a3NpIHRpbGkgbCZvdW1sO3l0eWkgb21pbmFpc3V1a3NpbGxhJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ1ZpcmhlOiBLJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyZhdW1sOyBlaSBsJm91bWw7eXR5bnl0IG4mYXVtbDtpbGwmYXVtbDsgZWhkb2lsbGEnOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ1ZpcmhlOiBSeWhtJmF1bWw7JmF1bWw7IGVpIGwmb3VtbDt5dHlueXQnOwokbGFuZ1sncmVhZG9ubHknXSA9ICdWYWluIGx1a3UnOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ0smYXVtbDt5dHQmYXVtbDtqaWVuIG11b2trYXVzbHVva2thJzsKJGxhbmdbJ2FkbWluX2xvZ291dCddID0gJ1lsbCZhdW1sO3BpdCZhdW1sO2omYXVtbDsga2lyamFzaSB1bG9zJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdOJmF1bWw7eXQmYXVtbDsgdmFpbiBraXJqYXV0dW5lZXQgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0JzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdLaXJqYWEgdCZhdW1sO20mYXVtbDsgayZhdW1sO3l0dCZhdW1sO2omYXVtbDsgdWxvcyc7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO24gb21pbmFpc3V1ZGV0JzsKJGxhbmdbJ3VzZXJoaXN0b3J5J10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDtuIGhpc3RvcmlhJzsKJGxhbmdbJ2V4cG9ydCddID0gJ1ZpZSc7CiRsYW5nWydjbGVhciddID0gJ1R5aGplbm4mYXVtbDsnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnVmllIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7aGlzdG9yaWEgQVNDSUktbXVvZG9zc2Egam9rYSBvbiB2JmF1bWw7aGludCZhdW1sOyZhdW1sO24nOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdUeWhqZW5uJmF1bWw7IGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7aGlzdG9yaWEgam9rYSBvbiB2JmF1bWw7aGludCZhdW1sOyZhdW1sO24nOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnVW5vaGRpdGtvIHR1bm51a3NlbiB0YWkgc2FsYXNhbmFuPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdWaWUgcnlobSZhdW1sO20mYXVtbDsmYXVtbDtyaXR5a3NldCBYTUwtbXVvZG9zc2EnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7aGlzdG9yaWFuIGhhbGxpbnRhJzsKJGxhbmdbJ3llcyddID0gJ0t5bGwmYXVtbDsnOwokbGFuZ1snbm8nXSA9ICdFaSc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICcvJzsKJGxhbmdbJ2RhdGVfYWxscmVjb3JkcyddID0gJyoqIEVpIHJham9pdHVzdGEgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnVHVubmluIHZhbmhhJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJ0t1dXNpIHR1bnRpYSB2YW5oYSc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdLYWtzaXRvaXN0YSB0dW50aWEgdmFuaGEnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdQJmF1bWw7aXYmYXVtbDtuIHZhbmhhJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ1ZpaWtvbiB2YW5oYSc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnS2Frc2kgdmlpa2tvYSB2YW5oYSc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnS3V1a2F1ZGVuIHZhbmhhJzsKJGxhbmdbJ2RhdGVfdGhyZWVtb250aHNvbGQnXSA9ICdLb2xtZSBrdXVrYXV0dGEgdmFuaGEnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICdLdXVzaSBrdXVrYXV0dGEgdmFuaGEnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnVnVvZGVuIHZhbmhhJzsKJGxhbmdbJ3RpdGxlX2dyb3Vwc29ydCddID0gJ1J5aG1pdHRlbHkgamEgaiZhdW1sO3JqZXN0eXMnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ0hha3VlaHRvamEgdmFzdGFhdmF0IG1lcmtpbm4mYXVtbDt0JzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgbGFza2V2YSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgbm91c2V2YSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnUCZhdW1sO2l2JmF1bWw7bSZhdW1sOyZhdW1sO3ImYXVtbDsgbGFza2V2YSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdQJmF1bWw7aXYmYXVtbDttJmF1bWw7JmF1bWw7ciZhdW1sOyBub3VzZXZhJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1RhcGFodHVtYW4gdHl5cHBpIGxhc2tldmEnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdUYXBhaHR1bWFuIHR5eXBwaSBub3VzZXZhJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ0lQLW9zb2l0ZSBsYXNrZXZhJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnSVAtb3NvaXRlIG5vdXNldmEnOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ0VpIGhpc3RvcmlhYSc7CiRsYW5nWydyZXNldCddID0gJ05vbGxhYSc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdSeWhtaXR0ZWxlIElQLW9zb2l0dGVlbiBtdWthYW4nOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdUYXBhaHR1bWF0eXlwcGlzdW9kYXR1cyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdOJmF1bWw7eXQmYXVtbDsgdmFpbiB0YXBhaHR1bWF0IGpvdGthIG92YXQ6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdTaXZ1cmFqb2l0dXMnOwokbGFuZ1snZm9yJ10gPSAnZm9yJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDtoaXN0b3JpYXJhcG9ydHRpJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdUdW50ZW1hdG9uJzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUC1Pc29pdGUnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ1RhcGFodHVtYW4gdHl5cHBpJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnUCZhdW1sO2l2JmF1bWw7JzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdQYWxhYSc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnVHVvbnRpIG9ubmlzdHVpJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ1JpdmkmYXVtbDsgayZhdW1sO3NpdGVsdHknOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ1ZpcmhlaXQmYXVtbDsgbCZvdW1sO3l0eWknOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ01lcmtpbnQmYXVtbDsmYXVtbDsgbGlzJmF1bWw7dHR5JzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdSeWhtJmF1bWw7bGxlICVzIGVpIGwmb3VtbDt5dHlueXQgb21pbmFpc3V1a3NpYSc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ1NNVFAtc2VydmVyaWluIGVpIHNhYXR1IHlodGV5dHQmYXVtbDsnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnVGllZG9zdG9hICglcykgZWkgbCZvdW1sO3l0eW55dCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJ10gPSAnVmlyaGVlbGxpbmVuIGFydm8ga2VudCZhdW1sO3NzJmF1bWw7ICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnS2VudCZhdW1sO3NzJmF1bWw7ICVzIGxpaWFuIHBpdGsmYXVtbDsgYXJ2byc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ1R1b250aXZpcmhlIChyaXZpICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0VpIHZvaXR1IGxhZGF0YSBvbWluYWlzdXVzdGlldG9qYSAoU2lzJmF1bWw7aW5lbiB2aXJoZSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnT25nZWxtYSBhc2V0ZXR0YWVzc2EgayZhdW1sO3l0dCZhdW1sO2omYXVtbDtuIHRpZXRvamEnOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ1ZhYWRpdHVsbGUga2VudCZhdW1sO2xsZSAlcyBlaSBsJm91bWw7eXR5bnl0IHNhcmFrZXR0YSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ1J5aG0mYXVtbDtsbGUgZWkgbCZvdW1sO3lkeSBvbWluYWlzdXVrc2lhJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnXSA9ICdUdW9udGl0aWVkb3N0b24gbXVvdG8gb24gdiZhdW1sOyZhdW1sO3ImYXVtbDsnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ1RpZWRvc3RvYSBlaSB2b2l0dSBhdmF0YSc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIEVhY2ggbGluZSBtdXN0IGNvbnRhaW4gdGhlIHNhbWUgbnVtYmVyIG9mIGZpZWxkcywgYW5kIHRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNuIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnVHVvIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCByeWhtJmF1bWw7JmF1bWw7bic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdDU1YtdGllZG9zdG8nOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdYTUwtdGllZG9zdG8nOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnVmllIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdUdW8gayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0JzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ1R5aGplbm4mYXVtbDsnOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdLdXZhbiBrb2hkZXBvbGt1JzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnSGF2YWl0dGlpbiBvbmdlbG1hIHB1dXR0dXZhbiAoamEgdmFhZGl0dW4pIHVwbG9hZGluIGthbnNzYSc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnWE1MLXRpZWRvc3RvYSBlaSB2b2l0dSBsdWtlYSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnRWkgdm9pZGEgdHVob3RhIHJ5aG0mYXVtbDsmYXVtbDsgam9zc2Egb24gdmllbGEgayZhdW1sO3l0dCZhdW1sO2ppJmF1bWw7JzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyBvbiBqbyBraXJqYXV0dW5lZW5hJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ0t1dmFzc2Egb2xldmEgdGVrc3RpIGVpIG9sZSBzeSZvdW1sO3RldHR5IG9pa2Vpbic7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnU2FsbGkgayZhdW1sO3l0dCZhdW1sO2ppZW4ga2lyamF1dHVhIHVzZWFtbWFuIGtlcnJhbic7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnS3V2aWVuIHRpZWRvc3RvcCZhdW1sOyZhdW1sO3R0ZWV0IGpvaXRhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCBzYWF2YXQgbGFkYXRhJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25SZWZyZXNoVXNlciddID0gJzxoMz5PblJlZnJlc2hVc2VyPC9oMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyIHNlc3Npb24gaXMgcmVmcmVzaGVkLjwvcD4NCjxoND5QYXJhbWV0ZXJzOjwvaDQ+DQo8dWw+DQogIDxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBVc2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZG91dCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBleHBpcmVzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZCBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnU3Vvcml0ZXRhYW4ga3VuIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7IGtpcmphdXR1dSBqJmF1bWw7cmplc3RlbG0mYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdTdW9yaXRldGFhbiBrdW4gayZhdW1sO3l0dCZhdW1sO2omYXVtbDsga2lyamF1dHV1IHVsb3MgaiZhdW1sO3JqZXN0ZWxtJmF1bWw7c3QmYXVtbDsnOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdTdW9yaXRldGFhbiBrdW4gayZhdW1sO3l0dCZhdW1sO2omYXVtbDtuIGlzdHVudG8gdmFuaGVuZWUnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdTdW9yaXRldGFhbiBrdW4gdXVzaSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyBsdW9kYWFuJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25SZWZyZXNoVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyIHNlc3Npb24gaXMgcmVmcmVzaGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnU3Vvcml0ZXRhYW4ga3VuIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biB0aWV0b2phIHAmYXVtbDtpdml0ZXQmYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnU3Vvcml0ZXRhYW4ga3VuIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biB0aWxpIHBvaXN0ZXRhYW4nOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnU3Vvcml0ZXRhYW4ga3VuIHJ5aG0mYXVtbDsgbHVvZGFhbic7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdTdW9yaXRldGFhbiBrdW4gcnlobSZhdW1sOyBwb2lzdGV0YWFuJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIEdyb3VwJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogU2V1cmFhdmlhIG1ha3JvamEgdm9pZGFhbiBrJmF1bWw7eXR0JmF1bWw7JmF1bWw7OiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gV2hlbiB1c2luZyB0aGUgeyRncm91cH0gbWFjcm8sIHRoZSBzeXN0ZW0gd2lsbCBzdWJzaXR1dGUgdGhlIG5hbWUgb2YgdGhlIGZpcnN0IG1lbWJlciBncm91cCB0aGF0IHRoZSB1c2VyIGJlbG9uZ3MgdG8sIGFuZCB3aWxsIHJlZGlyZWN0IHRvIHRoYXQgcGFnZS4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ011b2trYWEgdCZhdW1sO3QmYXVtbDsga2VudHQmYXVtbDsmYXVtbDsgbm9sbGF0YWtzZXNpIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biBzYWxhc2FuYW4nOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ011b2trYWEgdCZhdW1sO3QmYXVtbDsga2VudHQmYXVtbDsmYXVtbDsgbm9sbGF0YWtzZXNpIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biBzYWxhc2FuYW4nOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgb24gam8gayZhdW1sO3l0Jm91bWw7c3MmYXVtbDsnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnQ1NWIGV4cG9ydCBlaSBwYWxhdXR0YW51dCB0dWxva3NpYSc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51c2tlbnQmYXVtbDtuIHBpdHV1cyc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdTYWxhc2FuYWtlbnQmYXVtbDtuIHBpdHV1cyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluaW1pLS9NYWtzaW1pLXBpdHV1ZGV0IHNhbGFzYW5hbGxlIG92YXQgdmlyaGVlbGxpc2V0JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW5pbWktL01ha3NpbWktcGl0dXVkZXQgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udWtzZWxsZSBvdmF0IHZpcmhlZWxsaXNldCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZW1haWxhZGRyZXNzJ10gPSAnVmlyaGVlbGxpbmVuIGVtYWlsLW9zb2l0ZSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ1RpbGlsbGUgZWkgbCZvdW1sO3l0eW55dCBlbWFpbC1vc29pdGV0dGEnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ09uZ2VsbWEgYXNldGV0dGFlc3NhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7biB0aWV0b2phJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ09uZ2VsbWEgYXNldGV0dGFlc3NhIG9taW5haXN1dWtzaWEnOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7IGxpcyZhdW1sO3R0eSAlcz0lcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyBwb2lzdGV0dHUgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnT21pbmFpc3V1cyc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnQXJ2byAocmVxdWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1Zhcm9pdHVzOiBOJmF1bWw7bSZhdW1sOyBrZW50JmF1bWw7dCB2YWlrdXR0YXZhdCBzeSZvdW1sO3R0Jm91bWw7a2VudHRpZW4ga29rb29uLiBBcnZvamVuIHBpZW5lbnQmYXVtbDttaW5lbiBlaSBvbGUgc3Vvc2l0ZWx0YXZhYSBrJmF1bWw7eXR0Jm91bWw7c3MmYXVtbDsgb2xldmFsbGEgc2l2dXN0b2xsYSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnSGFsdWF0a28gdmFybWFzdGkgbXVva2F0YSBtb2R1bGluIGFzZXR1a3NpYSc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnRW1haWwgb3NvaXRlIG9uIGpvIGsmYXVtbDt5dCZvdW1sO3NzJmF1bWw7JzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ0smYXVtbDt5dCZhdW1sOyBrZWtzZWomYXVtbDsga2lyamF1dHVtaXN0aWV0b2plbiB0YWxsZW5udWtzZWVuJzsKJGxhbmdbJ3Byb21wdF9jb29raWVuYW1lJ10gPSAnS2Vrc2luIG5pbWknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdTYWxsaSB0dXBsYS1lbWFpbGl0JzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ1MmYXVtbDtoayZvdW1sO3Bvc3Rpb3NvaXRlIG9uIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7bmltaSc7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdZcml0JmF1bWw7IHBpdCZhdW1sOyZhdW1sOyBrJmF1bWw7eXR0JmF1bWw7amllbiBraXJqYXV0dW1pbmVuIGFrdGlpdmlzZW5hIGtla3NpbGwmYXVtbDsnOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnU2FsbGkgdXNlaWxsZSBrJmF1bWw7eXR0JmF1bWw7amlsbGUgc2FtYSBlbWFpbC1vc29pdGUnOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1c2VyJiMwMzk7cyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lIC0tIGRvbiYjMDM5O3Qgc2V0IHRoaXMgd2l0aCAmcXVvdDthbGxvdyBkdXBsaWNhdGUgZW1haWwgYWRkcmVzc2VzJnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdTYWxsaSB1c2VhdCAmcXVvdDt1bm9oZGl0a28gc2FsYXNhbmFzaSZxdW90OyB2aWVzdGl0Pyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdTYWxsaSBrJmF1bWw7eXR0JmF1bWw7amllbiBweXl0JmF1bWw7JmF1bWw7IHNhbGFzYW5hIHV1ZGVzdGFhbiB2YWlra2EgZWRlbGxpc2VlbiBrdXRzdXVuIGVpIG9sZSB2aWVsJmF1bWw7IHJlYWdvaXR1JzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnSyZhdW1sO3l0JmF1bWw7IEZyb250LWVuZCBVc2VyIHNwZWNpZmljaSZhdW1sOyBvaWtldWtzaWEnOwokbGFuZ1snaW5mb19mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnKE5vcm1hbGx5LCBGRVVTZXJzIHBlcm1pc3Npb25zIGFyZSB0aGUgc2FtZSBhcyB0aGUgZXF1aXZhbGVudCBBZG1pbiBBcmVhIHBlcm1pc3Npb25zIGxpa2UgQWRkIFVzZXIsIEFkZCBHcm91cCwgZXRjLiBJZiB5b3Ugc2VsZWN0IHRoaXMgb3B0aW9uLCB0aGVyZSB3aWxsIGJlIHNlcGFyYXRlIHBlcm1pc3Npb25zIGZvciBGRVVzZXJzLiknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0VpIHZvaXR1IGF2YXRhIGxhZGF0dHVhIHRpZWRvc3RvYSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ0xhZGF0dXNzYSB0aWVkb3N0b3NzYSBvbiBoYXZhaXR0dSBvbmdlbG1hLCBvbGUgaHl2JmF1bWw7IGphIHlyaXQmYXVtbDsgdXVkZWxsZWVuJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ0V0IHN5Jm91bWw7dHQmYXVtbDtueXQgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXN0YSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdFdCBzeSZvdW1sO3R0JmF1bWw7bnl0IHMmYXVtbDtoayZvdW1sO3Bvc3Rpb3NvaXRldHRhc2knOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnRXQgc3kmb3VtbDt0dCZhdW1sO255dCBzYWxhc2FuYWEnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0tpcmphdWR1IHVsb3MnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnS2lyamF1ZHUgc2lzJmF1bWw7JmF1bWw7bic7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9XCZxdW90O3JlZFwmcXVvdDs+PGI+VVNFIENBVVRJT048L2I+IHdoZW4gY2hhbmdpbmcgZXhpc3RpbmcgcHJvcGVydGllcyB0aGF0IGFyZSBhc3NpZ25lZCB0byBncm91cHMsIHlvdSBtYXkgcG90ZW50aWFsbHkgY2F1c2UgZGFtYWdlIGFuZCBicmVhayBhbiBleGlzdGluZyBzaXRlIDxpPihlc3BlY2lhbGx5IGlmIHlvdSByZWR1Y2UgZmllbGQgbGVuZ3RocywgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnVCZhdW1sO20mYXVtbDsgdG9pbWludG8gZWkgdG9pbWkgV2luZG93cy15bXAmYXVtbDtyaXN0Jm91bWw7c3MmYXVtbDsnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJyZBdW1sO0wmQXVtbDsgbHVvIG9taW5haXN1dXR0YSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51a3NlbGxlIHRhaSBzYWxhc2FuYWxsZSwgbiZhdW1sO20mYXVtbDsga2VudCZhdW1sO3QgbHVvZGFhbiBhaW5hIGF1dG9tYWF0dGlzZXN0aS4nOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ1ZpZSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3QgQ1NWLXRpZWRvc3Rvb24nOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnVmllJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ1R1byc7CiRsYW5nWydhZG1pbiddID0gJ0hhbGxpbm5vaSc7CiRsYW5nWydlZGl0cHJvcCddID0gJ011b2trYWEgb21pbmFpc3V1dHRhJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01ha3NpbWkgcGl0dXVzJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdMdW90dSc7CiRsYW5nWydzb3J0YnknXSA9ICdKJmF1bWw7cmplc3QmYXVtbDsnOwokbGFuZ1snc29ydCddID0gJ0omYXVtbDtyamVzdHlzJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCB2YWxpdHVzc2EgcnlobSZhdW1sO3NzJmF1bWw7JzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ04mYXVtbDt5dCZhdW1sOyByaXZpJmF1bWw7Oic7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO2xsZSBlaSBsJm91bWw7eWRldHR5IGVtYWlsIGtlbnR0JmF1bWw7JmF1bWw7LiBPdGEgeWh0ZXR0JmF1bWw7IHdlYm1hc3Rlcmlpbic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyAmcXVvdDt1bm9odHVudXQgc2FsYXNhbmEmcXVvdDsgLWxvbWFra2VlbGxlJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzICZxdW90O211dXRhIGFzZXR1a3NpYSZxdW90OyAtbG9tYWtrZWVsbGUnOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgam9rYSBuJmF1bWw7eXRldCZhdW1sOyZhdW1sO24ga2lyamF1dHVtaXNlbiBqJmF1bWw7bGtlZW4nOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGpva2EgbiZhdW1sO3l0ZXQmYXVtbDsmYXVtbDtuIHVsb3Mga2lyamF1dHVtaXNlbiBqJmF1bWw7bGtlZW4nOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnSiZhdW1sO3JqZXN0eXMnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnSm9pdGFpbiBrJmF1bWw7eXR0JmF1bWw7amkmYXVtbDsgb24gdCZhdW1sO2xsJmF1bWw7IGhldGtlbGwmYXVtbDsgcmVzZXRvaW1hc3NhIHNhbGFzYW5vamFhbi4gVCZhdW1sO2xsJmF1bWw7IGhldGtlbGwmYXVtbDsgbiZhdW1sO2l0JmF1bWw7IGsmYXVtbDt5dHQmYXVtbDtqaSZhdW1sOyBvdmF0OiAnOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdQb2lzdGEga2Fpa2tpIHlsaSB2aWlrb24gdmFuaGF0IG1lcmtpbm4mYXVtbDt0JzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1BvaXN0YSBrYWlra2kgeWxpIGt1dWthdWRlbiB2YW5oYXQgbWVya2lubiZhdW1sO3QnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnUG9pc3RhIGthaWtraSBtZXJraW5uJmF1bWw7dCc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnT2xldGtvIHZhcm1hPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ1ZpcmhlZWxsaW5lbiBrb29kaSwgb2xlIGh5diZhdW1sOyBqYSB5cml0JmF1bWw7IHV1ZGVsbGVlbic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnViZhdW1sO2xpYWlrYWlzdGEga29vZGlhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVrc2VsbGUgZWkgbCZvdW1sO3l0eW55dCB0aWV0b2thbm5hc3RhJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnUG9oamEgdmFodmlzdHVzbG9tYWtrZWVsbGUnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1BvaGphICZxdW90O3Vub2h0dW51dCBzYWxhc2FuYSZxdW90OyAtcyZhdW1sO2hrJm91bWw7cG9zdGlsbGUnOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ0pva28gc2luJmF1bWw7IHRhaSBqb2t1IG11dSBvbiBoYWx1bm51dCBub2xsYXRhIHNhbGFzYW5hbiB0JmF1bWw7bGxlIHRpbGlsbGUuIFRhcmtpc3RhIHMmYXVtbDtoayZvdW1sO3Bvc3Rpc2ksIGwmYXVtbDt5ZCZhdW1sO3Qgc2llbHQmYXVtbDsgamF0a28tb2hqZWV0IHNhbGFzYW5hbiBub2xsYWFtaXNlZW4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ1RpZXRva2FudGF2aXJoZSc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdTYWl0IHQmYXVtbDttJmF1bWw7biB2aWVzdGluIGtvc2thIGpva3Ugb24gdmFsaW5udXQgc2l2dXN0b2x0YSAmcXVvdDt1bm9oZGl0a28gc2FsYXNhbmFuc2kmcXVvdDsgdG9pbWlubm9uLiBKb3MgdGVpdCB0JmF1bWw7bSZhdW1sO24gdG9pbWlubm9uIGl0c2UgbCZvdW1sO3lkJmF1bWw7dCBvaGplZXQgYWx0YS4gSm9zIGV0IHRpZWQmYXVtbDsgbWlzdCZhdW1sOyBwdWh1dGFhbiB2b2l0IHR1aG90YSB0JmF1bWw7bSZhdW1sO24gcG9zdGluLCBraWl0b2tzaWEgYWphc3Rhc2kuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnS29vZGknOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnU2V1cmFhdmEga29vZGkgb24gbHVvdHUgc2ludWxsZSwgayZhdW1sO3l0JmF1bWw7IGtvb2RpYSB2YWh2aXN0YWFrc2VzaSBldHQmYXVtbDsgb2xldCB0aWxpbiBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOy4gS3VuIGtsaWtrYWF0IGFsbGEgb2xldmFhIGxpbmtraSZhdW1sOyBzaW51biB0YXJ2aXRzZWUgc3kmb3VtbDt0dCZhdW1sOyZhdW1sOyB0JmF1bWw7bSZhdW1sOyBrb29kaSBsb21ha2tlZXNlZW4uIFlsZWVucyZhdW1sOyBrZW50dCZhdW1sOyBvbiB2YWxtaWlrc2kgdCZhdW1sO3l0ZXR0eSwgbXV0dGEgam9zIGpvc3RhaW4gc3l5c3QmYXVtbDsgZWkgb2xlIGtvb2Rpc2kgb246JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnVCZhdW1sO20mYXVtbDsgbGlua2tpIHZpZSBzaW51dCBzaXZ1bGxlIGpvbm5lIHZvaXQgc3kmb3VtbDt0dCZhdW1sOyZhdW1sOyB5bGwmYXVtbDsgbWFpbml0dW4ga29vZGluIGphIG5vbGxhdGEgc2FsYXNhbmFzaSc7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnS2Fkb25udXQgc2FsYXNhbmEnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdFaSB2b2l0dSBrJmF1bWw7eXR0JmF1bWw7JmF1bWw7IENNU01haWxlci1tb2R1dWxpYSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdTaW51bGxlIG9uIGwmYXVtbDtoZXRldHR5IGVtYWlsLW9zb2l0dGVzZWVuICVzIGpvc3NhIG9uIHRpZWRvdCBtaXRlbiB2b2l0IG5vbGxhdGEgc2FsYXNhbmFzaS4nOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdVbm9oZGl0IHNpaXMgc2FsYXNhbmFzaT8gTm9oLCBraXJqb2l0YSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51a3Nlc2kgdCZhdW1sO2gmYXVtbDtuIGphIGwmYXVtbDtoZXQmYXVtbDttbWUgdHVubnVrc2VuIHMmYXVtbDtoayZvdW1sO3Bvc3Rpb3NvaXR0ZWVzZWVuIHZpZXN0aW4gam9rYSBzaXMmYXVtbDtsdCZhdW1sOyZhdW1sOyBvaGplZXQgc2FsYXNhbmFzaSBub2xsYWFtaXNlZW4uJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnJnF1b3Q7VW5vaHR1bnV0IHNhbGFzYW5hJnF1b3Q7IC1wb2hqYSc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICcmcXVvdDtVbm9odHVudXQgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMmcXVvdDsgLXBvaGphJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ09taW5haXN1dXR0YSAlcyBlaSBsJm91bWw7eWR5JzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdPbWluYWlzdXVrc2lhIGwmb3VtbDt5dHlueXQnOwokbGFuZ1snYWRkcHJvcCddID0gJ0xpcyZhdW1sOyZhdW1sOyBvbWluYWlzdXVzJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdWYWFkaXR0dSBrZW50dCZhdW1sOyAoJXMpIG9uIHR5aGomYXVtbDsnOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdTeSZvdW1sO3QmYXVtbDsgdXVzaSBzYWxhc2FuYSc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ0V0IG9sZSBraXJqYXV0dW51dCc7CiRsYW5nWyd1c2VyX3NldHRpbmdzJ10gPSAnQXNldHVrc2V0JzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVraXN0ZXImb3VtbDtpbnRpJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnVCZhdW1sO20mYXVtbDsgdGlsbGkgb24gdmFuaGVudHVudXQnOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ0VtYWlsLW9zb2l0dGVlbiBtdW90byBvbiB2JmF1bWw7JmF1bWw7ciZhdW1sOyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ1ZpcmhlZWxsaW5lbiB2YW5oZW50dW1pc3AmYXVtbDtpdiZhdW1sOyc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnVmlyaGUgYXNldGV0dGFlc3NhIG9taW5haXN1dXR0YSAlcyBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO2xsZSAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ1ZpcmhlZWxsaW5lbiByeWhtJmF1bWw7ICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnUGlpbG90ZXR0dSBrZW50dCZhdW1sOyAtbWVya2ludCZhdW1sOyc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnUGlpbG90ZXR1biBrZW50JmF1bWw7biB2JmF1bWw7cmknOwokbGFuZ1snaGlkZGVuJ10gPSAnUGlpbG90ZXR0dSc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnU2FtYWxsYSBuaW1lbGwmYXVtbDsgb24gam8gb21pbmFpc3V1cyc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdFaSBvbWluYWlzdXVrc2lhIG0mYXVtbDsmYXVtbDtyaXRlbHR5JzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnVCZhdW1sO2xsZSByeWhtJmF1bWw7bGxlIGVpIG9sZSB2YWxpdHR1amEgb21pbmFpc3V1a3NpYSc7CiRsYW5nWydub2dyb3VwcyddID0gJ0VpIG0mYXVtbDsmYXVtbDtyaXRlbHR5aiZhdW1sOyByeWhtaSZhdW1sOyc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ1J5aG1pJmF1bWw7IGwmb3VtbDt5dHlpJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO24gdHVsZWUga3V1bHVhIHYmYXVtbDtoaW50JmF1bWw7JmF1bWw7biB5aHRlZW4gcnlobSZhdW1sOyZhdW1sO24nOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ1ZhYWRpIHYmYXVtbDtoaW50JmF1bWw7JmF1bWw7biB5a3NpIHJ5aG0mYXVtbDsgcGVyIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7JzsKJGxhbmdbJ2JhY2snXSA9ICdUYWthaXNpbic7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgb24gdmFhZGl0dHUga2VudHQmYXVtbDsnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ01lcmtpdHNlIHZhYWRpdHV0IGtlbnQmYXVtbDt0IG1lcmtpbGwmYXVtbDsnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnS29yb3N0YSB2YWFkaXR0dWphIGtlbnR0aSZhdW1sOyc7CiRsYW5nWyduZXh0J10gPSAnU2V1cmFhdmEnOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdTYW1hbGxhIG5pbWVsbCZhdW1sOyBvbiBqbyByeWhtJmF1bWw7JzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnVmFhZGl0dHUga2VudHQmYXVtbDsnOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdWYXBhYWVodG9pbmVuJzsKJGxhbmdbJ29mZiddID0gJ09mZic7CiRsYW5nWydzaXplJ10gPSAnS29rbyc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1ha3NpbWkga3V2YW4ga29rbyAobGV2ZXlzIGphIGtvcmtldXMpIHBpa3NlbGVpc3MmYXVtbDsgKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdQaXR1dXMnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oTWVya2tlaiZhdW1sOyB0ZWtzdGkga2VudCZhdW1sO3NzJmF1bWw7KSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnQWxhc3ZldG92YWxpa29uIHZhbGlubmF0LCBqb2thaW5lbiBhcnZvIG9tYWxsYSByaXZpbGwmYXVtbDsmYXVtbDtuLiBBcnZvIHZvaWRhYW4gZXJvdHRhYSA9IG1lcmtpbGwmYXVtbDssIGVzaW0gTmFpbmVuPU4NCic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpb2J1dHRvbiBsYWJlbHMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gVmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgZnJvbSB0ZXh0IHdpdGggYSA9IGNoYXJhY3Rlci4gaS5lOiBGZW1hbGU9Zic7CiRsYW5nWydwcm9tcHQnXSA9ICdLZWhvdGUnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUeXlwcGknOwokbGFuZ1sndHlwZSddID0gJ1R5eXBwaSc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ0tlbnQmYXVtbDtuIHRpbGEnOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnQXNrIGluIExvc3Q8YnIvPlVzZXJuYW1lJzsKJGxhbmdbJ3RleHQnXSA9ICdUZWtzdGknOwokbGFuZ1snY2hlY2tib3gnXSA9ICdWYWxpbnRhbGFhdGlra28nOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdNb25pdmFsaW50YSZxdW90O2xpc3RhJzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ1JhZGlvIEJ1dHRvbnMnOwokbGFuZ1snaW1hZ2UnXSA9ICdLdXZhJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW1haWwtb3NvaXRlJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnVGVrc3RpYWx1ZSc7CiRsYW5nWydkcm9wZG93biddID0gJ0FsYXN2ZXRvdmFsaWtrbyc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1RlcnZldHVsb2EnOwokbGFuZ1snbG9nb3V0J10gPSAnS2lyamF1ZHUgdWxvcyc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnSyZhdW1sO3l0JmF1bWw7IHQmYXVtbDt0JmF1bWw7IHJ5aG0mYXVtbDsgbmltZSZhdW1sOyc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdBc2V0dWtzZW5pJzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnS2lyamF1dHVtaW5lbiBlcCZhdW1sO29ubmlzdHVpIC0gdGFya2lzdGEgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgamEgc2FsYXNhbmEnOwokbGFuZ1snbG9naW4nXSA9ICdLaXJqYXVkdSc7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0tpcmphdWR1IHNpcyZhdW1sOyZhdW1sO24gLW5hcGluIG90c2lra28nOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMnOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnUyZhdW1sO2hrJm91bWw7cG9zdGlvc29pdGUnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnU2FsYXNhbmEnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdNdWlzdGEgbWludXQgdCZhdW1sO2xsJmF1bWw7IHRpZXRva29uZWVsbGEnOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWtpc3RlciZvdW1sO2lkeSc7CiRsYW5nWydmb3Jnb3RwdyddID0gJ1Vub2hkaXRrbyBzYWxhc2FuYXNpJzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ1Vub2hkaXRrbyBraXJqYXV0dW1pc3RpZXRvc2k/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnT2xldHVrc2V0JzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnUG9oamEnOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDsmYXVtbDsgZWkgbCZvdW1sO3l0eW55dCc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVmFsaXRzZW1hc2kgayZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgb24gam8gayZhdW1sO3l0Jm91bWw7c3MmYXVtbDsnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ0smYXVtbDt5dCZhdW1sOyBTTVRQOnQmYXVtbDsgZW1haWwtb3NvaXR0ZWlkZW4gdGFya2lzdHVrc2Vzc2EnOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnU2FsYXNhbmFuIG1pbmltaXBpdHV1cyc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdTYWxhc2FuYW4gbWFrc2ltaXBpdHV1cyc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdLJmF1bWw7eXR0JmF1bWw7aiZhdW1sO3R1bm51a3NlbiBtaW5pbWlwaXR1dXMnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udWtzZW4gbWFrc2ltaXBpdHV1cyc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdJc3R1bm5vbiBhaWtha2F0a2Fpc3UgKHNla3VudGVqYSknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ0smYXVtbDt5dCZhdW1sOyBrZWtzZWomYXVtbDsgcGl0JmF1bWw7JmF1bWw7a3Nlc2kga2lyamF1dHVtaXNlbiB5bGwmYXVtbDsnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdTYWxsaSBlbWFpbC1yZWtpc3RlciZvdW1sO2ludGknOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ09sZXR1c3J5aG0mYXVtbDsgdXVzaWxsZSBrJmF1bWw7eXR0JmF1bWw7amlsbGUnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdWYWloZGEgYXNldHVrc2lhIC1wb2hqYSc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnU2FsYXNhbmF0IGVpdiZhdW1sO3Qgb2xlIHlodGVuZXYmYXVtbDt0JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dHVubnVzIGVpIGtlbHBhYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdTYWxhc2FuYSBlaSBrZWxwYWEnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdNdW9ra2FhIGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7JmF1bWw7JzsKJGxhbmdbJ3ZhbGlkJ10gPSAnS2VscGFhJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMnOwokbGFuZ1snc3RhdHVzJ10gPSAnVGlsYSc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdUJmF1bWw7bSZhdW1sOyBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sOyBlaSBrdXVsdSBtaWhpbmsmYXVtbDsmYXVtbDtuIHJ5aG0mYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdFaSBvbWluYWlzdXVrc2lhJzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAnWXJpdCZhdW1sOyB0dW9kYSB0dXBsYW9taW5haXN1dWRldCc7CiRsYW5nWyd2YWx1ZSddID0gJ0Fydm8nOwokbGFuZ1snZ3JvdXBzJ10gPSAnUnlobSZhdW1sO3QnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ09taW5haXN1dWRldCc7CiRsYW5nWydwcm9wbmFtZSddID0gJ09taW5haXN1dWRlbiBuaW1pJzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ09taW5haXN1dWRlbiBhcnZvJzsKJGxhbmdbJ2FkZCddID0gJ0xpcyZhdW1sOyZhdW1sOyc7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdG9yaWEnOwokbGFuZ1snZWRpdCddID0gJ011b2trYWEnOwokbGFuZ1snZXhwaXJlcyddID0gJ1ZhbmhlbmVlJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ00mYXVtbDsmYXVtbDtyaXR0ZWxlIHAmYXVtbDtpdiZhdW1sOyc7CiRsYW5nWycxMmhycyddID0gJzEyIHR1bnRpYSc7CiRsYW5nWycyNGhycyddID0gJzI0IHR1bnRpYSc7CiRsYW5nWyc0OGhycyddID0gJzQ4IHR1bnRpYSc7CiRsYW5nWycxd2VlayddID0gJzEgdmlpa2tvJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgdmlpa2tvYSc7CiRsYW5nWycxbW9udGgnXSA9ICcxIGt1dWthdXNpJzsKJGxhbmdbJzNtb250aHMnXSA9ICczIGt1dWthdXR0YSc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBrdXVrYXV0dGEnOwokbGFuZ1snMXllYXInXSA9ICcxIHZ1b3NpJzsKJGxhbmdbJ25ldmVyJ10gPSAnRWkga29za2Fhbic7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bGUgaW5zdGFsbGVkIHN1Y2Vzc2Z1bGx5Ljxici8+QmUgc3VyZSB0byBzZXQgdGhlIFwmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMgcGVybWlzc2lvbi4gIEFkZGl0aW9uYWxseSwgd2UgcmVjb21tZW5kIHRoYXQgeW91IGluc3RhbGwgdGhlIENhcHRjaGEgbW9kdWxlLiAgSWYgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGluIGFkZGl0aW9uIHRvIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgdG8gbG9naW4uICBUaGlzIGlzIGludGVuZGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGZ1bmN0aW9uYWxpdHkgZXZlbiBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLlwmcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdTYWxhc2FuYSc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1V1ZGVzdGFhbic7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnTmltZWxsJmF1bWw7IG9uIGpvIHJ5aG0mYXVtbDsnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnTXVva2thYSByeWhtJmF1bWw7JmF1bWw7JzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0wmYXVtbDtoZXQmYXVtbDsnOwokbGFuZ1snY2FuY2VsJ10gPSAnUGVydXV0YSc7CiRsYW5nWydkZWxldGUnXSA9ICdQb2lzdGEnOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdBcmUgeW91IHN1cmUgdGhpcyBpcyB0aGUgcHJvcGVyIHNldHRpbmdzIGZvciB0aGlzIGdyb3VwP1xuVHVybmluZyBhIHByb3BlcnR5IG9mZiB3aWxsIG5vdCBkZWxldGUgYW55IGVudHJpZXMgaW4gdGhlIHByb3BlcnRpZXMgdGFibGUgZm9yIHRoaXMgZ3JvdXAvdXNlci4gIFRoZXkgd2lsbCBtZXJlbHkgYmUgdW5hdmFpbGFibGUuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICdIYWx1YXRrbyB2YXJtYXN0aSBwb2lzdGFhIHQmYXVtbDttJmF1bWw7biByeWhtJmF1bWw7JmF1bWw7bic7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGNvbXBsZXRlbHkgZGVsZXRlIHRoaXMgcHJvcGVydHk/XG5Eb2luZyBzbyB3aWxsIGFsc28gZXJhc2UgYW55IHVzZXIgZW50cmllcyBmb3IgdGhpcyBwcm9wZXJ0eS4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnUmlpdHQmYXVtbDttJmF1bWw7dHQmb3VtbDttJmF1bWw7dCBwYXJhbWV0cml0JzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snbmFtZSddID0gJ05pbWknOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdPbmdlbG1hIG9taW5haXN1dWRlbiBsaXMmYXVtbDt5a3Nlc3MmYXVtbDsnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1J5aG0mYXVtbDtsaWl0b2tzZW4gbGlzJmF1bWw7JmF1bWw7bWlzZXNzYSBlc2lpbnR5aSBvbmdlbG1hJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ09uZ2VsbWEgcnlobSZhdW1sO24gbGlzJmF1bWw7JmF1bWw7bWlzZXNzJmF1bWw7JzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnT25nZWxtYSBrJmF1bWw7eXR0JmF1bWw7aiZhdW1sO24gbGlzJmF1bWw7JmF1bWw7bWlzZXNzJmF1bWw7IHJ5aG0mYXVtbDsmYXVtbDtuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdPbmdlbG1hIG9taW5haXN1dWRlbiBwb2lzdGFtaXNlc3NhJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnRW1haWwgb3NvaXRldHRhIGVpIGwmb3VtbDt5ZGV0dHknOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ0tvaGRlIGthbnNpb29uIGVpIG9sZSBraXJqb2l0dXNvaWtldXR0YSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnVmlyaGVlbGxpc2V0IHBhcmFtZXRyaXQnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdSeWhtaSZhdW1sOyBlaSBsJm91bWw7eXR5bnl0JzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQXNldGEnOwokbGFuZ1snZmlsdGVyJ10gPSAnU3VvZGF0YSc7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnSyZhdW1sO3l0dCZhdW1sO2omYXVtbDt0dW5udXMgKHJlZ3VsYXIgZXhwcmVzc2lvbiknOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdLdXZhdXMnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnUnlobSZhdW1sO24gbmltaSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdQJmF1bWw7JmF1bWw7c3kga2llbGxldHR5JzsKJGxhbmdbJ2Vycm9yJ10gPSAnVmlyaGUnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdMaXMmYXVtbDsmYXVtbDsgcnlobSZhdW1sOyc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ1R1byByeWhtJmF1bWw7JzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdMaXMmYXVtbDsmYXVtbDsgayZhdW1sO3l0dCZhdW1sO2omYXVtbDsnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ0hha3VlaHRvaWhpbiBzb3BpdmF0IGsmYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCc7CiRsYW5nWydncm91cCddID0gJ1J5aG0mYXVtbDsnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdWYWxpdHR1IHJ5aG0mYXVtbDsnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnUmVraXN0ZXImb3VtbDtpbnRpIHBvaGphJzsKJGxhbmdbJ2xvZ291dF90ZW1wbGF0ZSddID0gJ0tpcmphdWR1IHVsb3MgcG9oamEnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdLaXJqYXV0dW1pcyBwb2hqYSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ0FzZXR1a3NldCc7CiRsYW5nWyd1c2VycyddID0gJ0smYXVtbDt5dHQmYXVtbDtqJmF1bWw7dCc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udGVuZCBVc2VyIE1hbmFnZW1lbnQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdTYWxsaWkgayZhdW1sO3l0dCZhdW1sO2ppZW4ga2lyamF1dHVhIHNpdnVzdG9sbGVzaSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnT2xldHVzIGV0dXNpdnUnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1ZpaW1la3NpIGsmYXVtbDt5dHkgc2l2dSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdUb2luZW4gc2l2dTogJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdTeSZvdW1sO3QmYXVtbDsga3V2YXNzYSBuJmF1bWw7a3l2JmF1bWw7IHRla3N0aSc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fr_FR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2NvZGUnXSA9ICdDb2RlJzsKJGxhbmdbJ3ZlcmlmeSddID0gJ1bDqXJpZmllcic7CiRsYW5nWydidWxrX2RlbGV0ZSddID0gJ1N1cHByaW1lcic7CiRsYW5nWydidWxrX2Rpc2FibGUnXSA9ICdEw6lzYWN0aXZlcic7CiRsYW5nWydidWxrX2VuYWJsZSddID0gJ0FjdGl2ZXInOwokbGFuZ1snYnVsa19mb3JjZWNocHcnXSA9ICdGb3JjZXIgbGUgY2hhbmdlbWVudCBkZSBtb3QgZGUgcGFzc2UnOwokbGFuZ1snYnVsa19zZXRwYXNzd29yZCddID0gJ0TDqWZpbmlyIHVuIG5vdXZlYXUgbW90IGRlIHBhc3NlJzsKJGxhbmdbJ2J1bGtfc2V0ZXhwaXJ5J10gPSAnRMOpZmluaXIgdW5lIGRhdGUgZFwnZXhwaXJhdGlvbic7CiRsYW5nWyd0cGx0eXBlX3ZpZXdfdXNlciddID0gJ1ZvaXIgbFwndXRpbGlzYXRldXInOwokbGFuZ1sndGl0bGVfYWRtaW5uYXZfc2V0dGluZ3MnXSA9ICdQYXJhbcOodHJlcyBGRVUnOwokbGFuZ1snZGVzY19hZG1pbm5hdl9zZXR0aW5ncyddID0gJ1BhcmFtw6h0cmVzIHBvdXIgbGUgbW9kdWxlIEdlc3Rpb24gZGVzIHV0aWxpc2F0ZXVycyBkdSBzaXRlJzsKJGxhbmdbJ3RwbHR5cGVfRnJvbnRFbmRVc2VycyddID0gJ1V0aWxpc2F0ZXVycyBkdSBzaXRlJzsKJGxhbmdbJ3RwbHR5cGVfbG9naW5fZm9ybSddID0gJ0Zvcm11bGFpcmUgZGUgY29ubmV4aW9uJzsKJGxhbmdbJ3RwbHR5cGVfbG9nb3V0X2Zvcm0nXSA9ICdGb3JtdWxhaXJlIGRlIGTDqWNvbm5leGlvbic7CiRsYW5nWydwcm9tcHRfZm9yJ10gPSAnUG91cic7CiRsYW5nWydwcm9tcHRfZm9yY2VfY2hzZXR0aW5ncyddID0gJ0ZvcmNlciBsXCd1dGlsaXNhdGV1ciDDoCBtb2RpZmllciBzZXMgcGFyYW3DqHRyZXMgw6AgbGEgcHJvY2hhaW5lIGNvbm5leGlvbsKgJzsKJGxhbmdbJ2ZldV9wcm90ZWN0ZWRfc2VjdGlvbmhlYWQnXSA9ICdFbnTDqnRlIGRlIHNlY3Rpb24gcHJvdMOpZ8OpZSc7CiRsYW5nWydlcnJvcl9sb3N0dW5fYmFkcGFzc3dvcmQnXSA9ICdMZSBtb3QgZGUgcGFzc2UgZm91cm5pIGVzdCBpbmNvcnJlY3QuJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl91c2Vybm90Zm91bmQnXSA9ICdMZXMgaW5mb3JtYXRpb25zIGZvdXJuaWVzIG5lIHBlcm1ldHRlbnQgcGFzIGRcJ2FjY8OpZGVyIGF1IGNvbXB0ZSBjbGllbnQuJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub2RhdGEnXSA9ICdWb3VzIG5cJ2F2ZXogcGFzIGVudHLDqSBzdWZmaXNhbW1lbnQgZFwnaW5mb3JtYXRpb24gcG91ciBub3VzIHBlcm1ldHRyZSBkZSByZXRyb3V2ZXIgdm90cmUgY29tcHRlLic7CiRsYW5nWydpbmZvX2xvc3R1bl90ZXh0ZmllbGQnXSA9ICdTaSB2b3VzIHBvdXZleiBtZXR0cmUgdW5lIHBhcnRpZSBkdSB0ZXh0ZSBwb3VyIGNlIGNoYW1wICh1biBtaW5pbXVtIGRlIDQgY2FyYWN0w6hyZXMsIGVzcGFjZXMgbm9uIGNvbXByaXMpJzsKJGxhbmdbJ2luZm9fbG9zdHVuX3RleHRhcmVhJ10gPSAnU2kgdm91cyBwb3V2ZXogbWV0dHJlIHVuZSBwYXJ0aWUgZHUgdGV4dGUgcG91ciBjZSBjaGFtcC4gQ2VsYSB2YSBjcsOpZXIgdW5lIHJlY2hlcmNoZSBkZSBzb3VzLWNoYcOubmUuIFZvdXMgZGV2ZXogc2Fpc2lyIGF1IG1vaW5zIDQgY2FyYWN0w6hyZXMuJzsKJGxhbmdbJ2luZm9fbG9zdHVuX2VtYWlsJ10gPSAnU1wnaWwgeSBhIHBsdXNpZXVycyBhZHJlc3NlcyBlLW1haWwgYXNzb2Npw6llcyDDoCB2b3RyZSBjb21wdGUsIGVzc2F5ZXIgZFwnZW50cmVyIGF1IG1vaW5zIGxcJ3VuZSBkXCdlbnRyZSBlbGxlcyBpY2kuIENlbGEgcGV1dCBhaWRlciDDoCB2b3VzIGlkZW50aWZpZXIuJzsKJGxhbmdbJ2luZm9fbG9zdHVzZXJuYW1lJ10gPSAnPHA+QWxvcnMuLi4gdm91cyBzZW1ibGV6IGF2b2lyIG91Ymxpw6kgb3UgcGVyZHUgbFwnYWRyZXNzZSBlbWFpbCBxdWUgdm91cyB1dGlsaXNleiBwb3VyIHZvdXMgY29ubmVjdGVyIMOgIGNlIGNvbXB0ZS4gTmUgdm91cyBpbnF1acOpdGV6IHBhcywgbm91cyBwb3V2b25zIHZvdXMgYWlkZXIuPC9wPjxwPkVudHJleiBhdXRhbnQgZFwnaW5mb3JtYXRpb25zIHF1ZSBwb3NzaWJsZSBkYW5zIGNlIGZvcm11bGFpcmUsIGV0IG5vdXMgYWxsb25zIHZvaXIgc2kgbm91cyBwb3V2b25zIHZvdXMgaWRlbnRpZmllci48L3A+JzsKJGxhbmdbJ2Vycm9yX3lvdWFyZWFib3QnXSA9ICdIbW1tLi4uIGlsIHNlbWJsZSBxdWUgdm91cyBzb3lleiB1biBib3Qgb3UgZXNzYXlleiBxdWVscXVlIGNob3NlIGRlIHBhcyB0csOocyBiaWVuLi4uJzsKJGxhbmdbJ2Vycm9yX2RlbGV0ZXByb3AnXSA9ICdVbmUgZXJyZXVyIGVzdCBzdXJ2ZW51ZSBsb3JzIGxhIHN1cHByZXNzaW9uIGRlIGxhIHByb3ByacOpdMOpJzsKJGxhbmdbJ2Vycm9yX2FjdGlvbl9ub3Rjb25maXJtZWQnXSA9ICdPb3BzLiBJbCBzZW1ibGUgcXVlIHZvdXMgbmUgcGFydmVuZXogcGFzIMOgIGNvbmZpcm1lciB1bmUgYWN0aW9uIGltcG9ydGFudGUuJzsKJGxhbmdbJ21zZ19jb25maXJtX2RlbGV0ZXByb3AnXSA9ICdWb3VzIGRldmV6IHPDqWxlY3Rpb25uZXIgIk91aSIgZGFucyBsYSBib8OudGUgZGUgY29uZmlybWF0aW9uIHBvdXIgY29uZmlybWVyIHF1ZSB2b3VzIHNvdWhhaXRleiBzdXBwcmltZXIgY2V0dGUgcHJvcHJpw6l0w6kuJzsKJGxhbmdbJ3Byb21wdF9jb25maXJtX2RlbGV0ZXByb3AnXSA9ICfDinRlcy12b3VzIHPDu3IgZGUgdm91bG9pciBzdXBwcmltZXIgY2V0dGUgcHJvcHJpw6l0w6kgPyc7CiRsYW5nWyd3YXJuX2RlbGV0ZXByb3AnXSA9ICc8c3Ryb25nPkZhaXRlcyBhdHRlbnRpb248L3N0cm9uZz4gTGEgc3VwcHJlc3Npb24gZFwndW5lIHByb3ByacOpdMOpIHN1cHByaW1lIGxlcyBkb25uw6llcyBhc3NvY2nDqWVzIMOgIHRvdXMgbGVzIHV0aWxpc2F0ZXVycyBkZSBjZXR0ZSBwcm9wcmnDqXTDqS4gSWwgc2VyYSDDqWdhbGVtZW50IHJldGlyZXIgY2V0dGUgcHJvcHJpw6l0w6kgZGUgdG91dGVzIGxlcyByZWxhdGlvbnMgZGUgZ3JvdXBlLic7CiRsYW5nWydoZHJfZGVsZXRlcHJvcCddID0gJ1N1cHByaW1lciBsYSBwcm9wcmnDqXTDqSc7CiRsYW5nWydtc2dfY2FuY2VsbGVkJ10gPSAnT3DDqXJhdGlvbiBhbm51bMOpZSc7CiRsYW5nWydlcnJvcl9kZWxldGVfcHJvcGRlZm4nXSA9ICdEw6lzb2zDqSwgbWFpcyBjZXR0ZSBwcm9wcmnDqXTDqSBuZSBwZXV0IHBhcyDDqnRyZSBzdXBwcmltw6llLiBFbGxlIGVzdCB1dGlsaXPDqWUgZW4gdGFudCBxdWUgY2hhbXAgcmVxdWlzIG91IGNhY2jDqSBwYXIgdW4gb3UgcGx1c2lldXJzIGdyb3VwZXMgZFwndXRpbGlzYXRldXJzLiBTZXVscyBsZXMgcHJvcHJpw6l0w6lzIG9wdGlvbm5lbGxlcyAvb2ZmIHBldXZlbnQgw6p0cmUgc3VwcHJpbcOpcy4nOwokbGFuZ1sndGl0bGVfYWRkX3VzZXInXSA9ICdDcsOpZXIgdW4gbm91dmVhdSBjb21wdGUgZFwndXRpbGlzYXRldXInOwokbGFuZ1snaW5mb19wYXNzd29yZF9yZXNldCddID0gJ1ZvdHJlIG1vdCBkZSBwYXNzZSBhIMOpdMOpIHLDqWluaXRpYWxpc8OpIGF2ZWMgc3VjY8Oocy4gVmV1aWxsZXogdm91cyBjb25uZWN0ZXIgcG91ciBjb250aW51ZXIuJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3Jkbm90Y2hhbmdlZCddID0gJ1ZldWlsbGV6IHZvdXMgYXNzdXJlciBkXCdhdm9pciBjaGFuZ8OpIHZvdHJlIG1vdCBkZSBwYXNzZSBldCB2w6lyaWZpw6kgcXVcJ2lsIHNvaXQgY29ycmVjdC4nOwokbGFuZ1snbXNnX2ZvcmNlX25ld3B3J10gPSAnQmllbnZlbnVlIGRhbnMgbGUgc3lzdMOobWUuIFBvdXIgZGVzIHJhaXNvbnMgZGUgc8OpY3VyaXTDqSwgVmV1aWxsZXogc3DDqWNpZmllciB1biBub3V2ZWF1IG1vdCBkZSBwYXNzZS4nOwokbGFuZ1snbGJsX3RlbXBsYXRlJ10gPSAnR2FiYXJpdCc7CiRsYW5nWydpbmZvX2ZvcmNlX25ld3B3X3RlbXBsYXRlJ10gPSAnQ2UgZ2FiYXJpdCBlc3QgdXRpbGlzw6kgcG91ciBhZmZpY2hlciBsZSBmb3JtdWxhaXJlIHF1aSBmb3JjZSBsXCd1dGlsaXNhdGV1ciDDoCBjaGFuZ2VyIHNvbiBtb3QgZGUgcGFzc2UuJzsKJGxhbmdbJ2ZvcmNlX25ld3B3X3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBkZSBmb3LDp2FnZSBub3V2ZWF1IG1vdCBkZSBwYXNzZSc7CiRsYW5nWydwcm9tcHRfZm9yY2VfbmV3cHcnXSA9ICdGb3JjZXIgbFwndXRpbGlzYXRldXIgw6AgcsOpaW5pdGlhbGlzZXIgc29uIG1vdCBkZSBwYXNzZSDDoCBsYSBwcm9jaGFpbmUgY29ubmV4aW9uwqAnOwokbGFuZ1sncHJvbXB0X2Rpc2FibGVkJ10gPSAnQ2UgY29tcHRlIGVzdC1pbCBkw6lzYWN0aXbDqSA/JzsKJGxhbmdbJ21zZ191c2VyX3N0YXRlX2NoYW5nZWQnXSA9ICdTdGF0dXQgZGUgbFwndXRpbGlzYXRldXIgbW9kaWZpw6knOwokbGFuZ1snaW5mb19kaXNhYmxlZCddID0gJ0NlIGNvbXB0ZSB1dGlsaXNhdGV1ciBlc3QgZMOpc2FjdGl2w6ksIGVtcMOqY2hhbnQgbGEgY29ubmV4aW9uJzsKJGxhbmdbJ2VuYWJsZV91c2VyJ10gPSAnQWN0aXZlciBjZSBjb21wdGUgdXRpbGlzYXRldXInOwokbGFuZ1snZGlzYWJsZV91c2VyJ10gPSAnRMOpc2FjdGl2ZXIgY2UgY29tcHRlIHV0aWxpc2F0ZXVyIGV0IHZlaWxsZXIgw6AgY2UgcXVlIGxcJ3V0aWxpc2F0ZXVyIHNvaXQgZMOpY29ubmVjdMOpJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRkaXNhYmxlZCddID0gJ05vdXMgc29tbWVzIGTDqXNvbMOpcywgbWFpcyBjZSBjb21wdGUgc2VtYmxlIGF2b2lyIMOpdMOpIGTDqXNhY3RpdsOpLiBWZXVpbGxleiBjb250YWN0ZXIgbGVzIGFkbWluaXN0cmF0ZXVycyBkdSBzaXRlIHBvdXIgcsOpc291ZHJlIGNlIHByb2Jsw6htZSc7CiRsYW5nWyd0aXRsZV9mb3Jnb3RwdyddID0gJ01vdCBkZSBwYXNzZSBvdWJsacOpJzsKJGxhbmdbJ3ZlcmlmeV9pZGVudGl0eSddID0gJ1bDqXJpZmllciB2b3RyZSBpZGVudGl0w6knOwokbGFuZ1snNDAzZXJyb3InXSA9ICdHw6luw6lyZXIgdW5lIGVycmV1ciA0MDMnOwokbGFuZ1sncHJvbXB0X2VuaGFuY2VkcHcnXSA9ICdFeGlnZXIgdW4gbW90IGRlIHBhc3NlIGZvcnQmbmJzcDsnOwokbGFuZ1snaW5mb19lbmhhbmNlZHB3J10gPSAnU2kgYWN0aXbDqSwgbGVzIG1vdHMgZGUgcGFzc2UgZGV2cm9udCBhdm9pciBhdSBtb2lucyB1biBjYXJhY3TDqHJlIGFscGhhYsOpdGlxdWUsIHVuZSBtYWp1c2N1bGUgZXQgdW4gY2hpZmZyZS4nOwokbGFuZ1sncHJvbXB0X3B3cmVxdWlyZWRjaGFycyddID0gJ0V4aWdlciB1biBkZSBjZXMgY2FyYWN0w6hyZXMgZGFucyBsZSBtb3QgZGUgcGFzc2UmbmJzcDsnOwokbGFuZ1snaW5mb19wd3JlcXVpcmVkY2hhcnMnXSA9ICdTaSBsZXMgbW90cyBkZSBwYXNzZSBub24gdmlkZXMgZXQgZm9ydHMgc29udCBhY3RpdsOpcywgYXUgbW9pbnMgbFwndW4gZGVzIGNhcmFjdMOocmVzIHNww6ljaWZpw6lzIHNlcm9udCBuw6ljZXNzYWlyZXMgZGFucyBsZSBtb3QgZGUgcGFzc2UgZW4gcGx1cyBkZXMgZXhpZ2VuY2VzIGRlIG1vdCBkZSBwYXNzZSBmb3J0cyc7CiRsYW5nWydlcnJvcl9jYW50c2V0cHJvcGVydHl0eXBlJ10gPSAnVm91cyBuZSBwb3V2ZXogcGFzIGTDqWZpbmlyIGxhIHByb3ByacOpdMOpIGRlIGNlIHR5cGUnOwokbGFuZ1snaW5mb19pbXBvcnRfZm9ybWF0J10gPSAnPHA+UG91ciBpbmZvcm1hdGlvbiBzdXIgbGUgZm9ybWF0IGRcJ2ltcG9ydCwgdm91cyBkZXZyaWV6IGNyw6llciB1biB1dGlsaXNhdGV1ciAob3UgZGV1eCkgZXhlbXBsZSBkYW5zIGxlcyBncm91cGVzIHNvdWhhaXTDqXMgZXQgZXhwb3J0ZXIgY2V0dGUgaW5mb3JtYXRpb24uIExlIGZpY2hpZXIgYWluc2kgY3LDqcOpIHBldXQgw6p0cmUgdXRpbGlzw6kgY29tbWUgdW4gZ2FiYXJpdCBwb3VyIGxlcyBwcm9jaGFpbnMgaW1wb3J0cy48L3A+PGJyLz4NCiA8cD5EZSBwbHVzLCB1bmUgY29sb25uZSAidHh0cGFzc3dvcmQiIHBldXQgw6p0cmUgYWpvdXTDqWUgYXUgZmljaGllciBkXCdpbXBvcnQgcG91ciBkw6lmaW5pciAoZW4gZm9ybWF0IHRleHRlKSBsZSBtb3QgZGUgcGFzc2UgZGVzIHV0aWxpc2F0ZXVycy4gU2kgbGEgY29sb25uZSAidHh0cGFzc3dvcmQiIGVzdCB2aWRlIHBvdXIgdW4gdXRpbGlzYXRldXIgZXhpc3RhbnQsIHNvbiBtb3QgZGUgcGFzc2UgbmUgc2VyYSBwYXMgdG91Y2jDqS4gU2kgY2V0dGUgY29sb25uZSBlc3QgdmlkZSBwb3VyIHVuIG5vdXZlbCB1dGlsaXNhdGV1ciwgb3Ugbm9uIHByw6lzZW50ZSwgbGUgbW90IGRlIHBhc3NlIGNvZMOpICJjaGFuZ2VtZSIgZXN0IHV0aWxpc8OpLic7CiRsYW5nWydpbXBvcnRfZGVsZXRlZHVzZXInXSA9ICdVdGlsaXNhdGV1ciBzdXBwcmltw6kgJXMnOwokbGFuZ1snZXJyb3JfZXhwb3J0X25vdXNlcnMnXSA9ICdBdWN1biB1dGlsaXNhdGV1ciB0cm91dsOpIMOgIGV4cG9ydGVyJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRfdXNlcnMnXSA9ICdFeHBvcnRlciBsZXMgdXRsaXNhdGV1cnMnOwokbGFuZ1sndGl0bGVfZXhwb3J0X3VzZXJzJ10gPSAnRXhwb3J0ZXIgZGVzIHV0aWxpc2F0ZXVycyBkYW5zIHVuIGZpY2hpZXIgQVNDSUknOwokbGFuZ1snaW5mb19lbmNyeXB0J10gPSAnbGVzIHByb3ByacOpdMOpcyBjcnlwdMOpZXMgbmUgcGV1dmVudCBwYXMgw6p0cmUgZXhwb3J0w6lzIGVuIEFTQ0lJIG91IGNvbnN1bHTDqWVzIHBhciB1biBhZG1pbmlzdHJhdGV1ci4gSWxzIG5lIHBldXZlbnQgw6p0cmUgbW9kaWZpw6lzIHBhciBsXCd1dGlsaXNhdGV1ciBhdXRvcmlzw6kuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGdyb3VwbmFtZSddID0gJ05vbSBkZSBncm91cGUgc3DDqWNpZmnDqSBpbnZhbGlkZSBvdSB2aWRlJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydF9jb2x1bW5jb3VudCddID0gJ05vbWJyZSBkZSBjb2xvbm5lcyBpbmNvcnJlY3QnOwokbGFuZ1sncHJvbXB0X2RlbGltaXRlciddID0gJ0TDqWxpbWl0ZXVyJzsKJGxhbmdbJ2Vycm9yX2NyZWF0ZXRtcGZpbGUnXSA9ICdQcm9ibMOobWUgZGUgY3LDqWF0aW9uIGR1IGZpY2hpZXIgdGVtcG9yYWlyZSc7CiRsYW5nWydwcm9tcHRfZGVsZXRlX3VzZXJzJ10gPSAnU3VwcHJpbWVyIGRlcyB1dGlsaXNhdGV1cnMgc3VwcGzDqW1lbnRhaXJlcyc7CiRsYW5nWydpbmZvX2ltcG9ydF9kZWxldGVfdXNlcnMnXSA9ICdTaSBhY3RpdsOpLCBldCBzaSB1bmlxdWVtZW50IDxzdHJvbmc+dW4gZ3JvdXBlIGRcJ3V0aWxpc2F0ZXVyczwvc3Ryb25nPiBlc3QgbWVudGlvbm7DqSBkYW5zIGxlIGZpY2hpZXIgZFwnaW1wb3J0LCBsZXMgdXRpbGlzYXRldXJzIG1lbWJyZXMgZGUgY2UgZ3JvdXBlLCBtYWlzIG5vbiBtZW50aW9ubsOpcyBkYW5zIGxlIGZpY2hpZXIgZFwnaW1wb3J0IHNlcm9udCBzdXBwcmltw6lzLiBMYSBwcnVkZW5jZSBkb2l0IMOqdHJlIGRlIG1pc2UsIGNhciBhdWN1bmUgdsOpcmlmaWNhdGlvbiBuXCdlc3QgZmFpdGUgcG91ciB2b2lyIHNpIGxlcyB1dGlsaXNhdGV1cnMgc3VwcHJpbcOpcyBzb250IG1lbWJyZXMgZFwndW4gYXV0cmUgZ3JvdXBlLic7CiRsYW5nWyd0aXRsZV9pbXBvcnRfdXNlcnMnXSA9ICdJbXBvcnRlciBkZXMgdXRpbGlzYXRldXJzIMOgIHBhcnRpciBkXCd1biBmaWNoaWVyIGRlIHR5cGUgQ1NWJzsKJGxhbmdbJ2Zyb250ZW5kX2FjY2VzcyddID0gJ1V0aWxpc2F0ZXVycyc7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9jb250cm9scyddID0gJ0ltcG9zc2libGUgZFwnYWZmaWNoZXIgbGUgZm9ybXVsYWlyZSBkZSByw6ljdXDDqXJhdGlvbiBkZXMgZMOpdGFpbHMgZFwnaWRlbnRpZmlhbnQgYWZmaWNoZXIgbGUgZGVybmllciBub20gZFwndXRpbGlzYXRldXIuLi4gcGFzIGRlIGNoYW1wcyBhcHByb3ByacOpcyB0cm91dsOpIHBvdXIgYWZmaWNoZXInOwokbGFuZ1snaW5mb19maWx0ZXJfc29ydGJ5J10gPSAnPHN0cm9uZz4gTm90ZTogPC9zdHJvbmc+IExlIHRyaSBkZXMgY29sb25uZXMgZm91cm5pcmEgdW4gdHJpIHN1cHBsw6ltZW50YWlyZSBzdXIgbGVzIMOpbMOpbWVudHMgY29ycmVzcG9uZGFudHMnOwokbGFuZ1snYW55J10gPSAnQXVjdW4nOwokbGFuZ1snc29ydGJ5X3VzZXJuYW1lX2FzYyddID0gJ05vbSBkXCd1dGlsaXNhdGV1ciAoYXNjZW5kYW50KSc7CiRsYW5nWydzb3J0YnlfdXNlcm5hbWVfZGVzYyddID0gJ05vbSBkXCd1dGlsaXNhdGV1ciAoZGVzY2VuZGFudCknOwokbGFuZ1snc29ydGJ5X2NyZWF0ZV9hc2MnXSA9ICdEYXRlIGRcJ2V4cGlyYXRpb24gKGFzY2VuZGFudCknOwokbGFuZ1snc29ydGJ5X2NyZWF0ZV9kZXNjJ10gPSAnRGF0ZSBkXCdleHBpcmF0aW9uIChkZXNjZW5kYW50KSc7CiRsYW5nWydzb3J0YnlfZXhwaXJlc19hc2MnXSA9ICdEYXRlIGRcJ2V4cGlyYXRpb24gKGFzY2VuZGFudCknOwokbGFuZ1snc29ydGJ5X2V4cGlyZXNfZGVzYyddID0gJ0RhdGUgZFwnZXhwaXJhdGlvbiAoZGVzY2VuZGFudCknOwokbGFuZ1snaW5mb19lbmNyeXB0ZWQnXSA9ICdMZXMgcHJvcHJpw6l0w6lzIGNyeXB0w6llcyBuZSBwZXV2ZW50IMOqdHJlIHZ1ZXMgZXQgw6lkaXTDqWVzIHF1ZSBwYXIgbFwndXRpbGlzYXRldXIuIE3Dqm1lIGxcJ2FkbWluaXN0cmF0ZXVyIGR1IHNpdGUgbmUgcGV1dCB2b2lyIG91IGfDqXJlciBjZXMgZG9ubsOpZXMuJzsKJGxhbmdbJ2VuY3J5cHRlZCddID0gJ0NyeXB0w6knOwokbGFuZ1snaW5mb19jb29raWVuYW1lJ10gPSAnU2kgY29jaMOpLCBsYSBmb25jdGlvbm5hbGl0w6kgInNlIHNvdXZlbmlyIGRlIG1vaSIgZXN0IGFjdGl2w6llLiBDZWNpIGVzdCBzaW1pbGFpcmUgw6AgbGEgZm9uY3Rpb25uYWxpdMOpIGtlZXAtYWxpdmUgZHUgY29va2llLCBtYWlzIHBldXQgZHVyZXIganVzcXVcJ8OgIDYwIGpvdXJzLic7CiRsYW5nWydtc2dfdXNlcm5hbWVfcmVhZG9ubHknXSA9ICdMXCdhdXRoZW50aWZpY2F0aW9uIGRlIGzigJl1dGlsaXNhdGV1ciBuZSBwZXJtZXQgcGFzIGRlIGNoYW5nZXIgbGUgbm9tIGRcJ3V0aWxpc2F0ZXVyIGRlIGNlIGNvbXB0ZSc7CiRsYW5nWydtc2dfcGFzc3dvcmRfcmVhZG9ubHknXSA9ICdMXCdhdXRoZW50aWZpY2F0aW9uIGRlIGzigJl1dGlsaXNhdGV1ciBuZSBwZXJtZXQgcGFzIGRlIGNoYW5nZXIgbGUgbW90IGRlIHBhc3NlIGRlIGNlIGNvbXB0ZSc7CiRsYW5nWydwcm9tcHRfbm9ybWFsbG9naW4nXSA9ICdMb2dpbiBkaXJlY3TCoCc7CiRsYW5nWydtb3ZlX3VwJ10gPSAnRMOpcGxhY2VyIHZlcnMgbGUgaGF1dCc7CiRsYW5nWydtb3ZlX2Rvd24nXSA9ICdEw6lwbGFjZXIgdmVycyBsZSBiYXMnOwokbGFuZ1sndGl0bGVfcHJvcG1vZHVsZSddID0gJ0NldHRlIHByb3ByacOpdMOpIGVzdCBjcsOpw6llIHBhciB1biBtb2R1bGUgZXQgbmUgcGV1dCBwYXMgw6p0cmUgbW9kaWZpw6llJzsKJGxhbmdbJ25vdF9hdmFpbGFibGUnXSA9ICdOb24gZGlzcG9uaWJsZSc7CiRsYW5nWydwcm9tcHRfZGZsdF9jaGVja2VkJ10gPSAnUGFyIGTDqWZhdXQsIGNlIGNoYW1wIGRvaXQgw6p0cmUgY29jaMOpJzsKJGxhbmdbJ29wZXJhdGlvbl9jb21wbGV0ZWQnXSA9ICdPcMOpcmF0aW9uIGNvbXBsw6l0w6llJzsKJGxhbmdbJ21lbWJlcnMnXSA9ICdNZW1icmVzJzsKJGxhbmdbJ3ZpZXdfZmlsdGVyJ10gPSAnVm9pciBsZXMgZmlsdHJlcyc7CiRsYW5nWydkYXRhJ10gPSAnRG9ubsOpZXMnOwokbGFuZ1snYXBwbGllZCddID0gJ0FwcGxpcXXDqSc7CiRsYW5nWydmaXJzdHBhZ2UnXSA9ICc8PCc7CiRsYW5nWydwcmV2cGFnZSddID0gJzwnOwokbGFuZ1snbmV4dHBhZ2UnXSA9ICc+JzsKJGxhbmdbJ2xhc3RwYWdlJ10gPSAnPj4nOwokbGFuZ1sncGFnZSddID0gJ1BhZ2XCoCc7CiRsYW5nWydwcm9tcHRfYWxsb3dfY2hhbmdldXNlcm5hbWUnXSA9ICdBdXRvcmlzZXIgbGUgY2hhbmdlbWVudCBkXCdpZGVudGlmaWFudCBwYXIgbGVzIG1lbWJyZXMmbmJzcDsnOwokbGFuZ1snaW5mb19hbGxvd19jaGFuZ2V1c2VybmFtZSddID0gJ1NpIGNvY2jDqSwgbGVzIHV0aWxpc2F0ZXVycyBwb3Vycm9udCBtb2RpZmllciBsZXVyIGlkZW50aWZpYW50IGFpbnNpIHF1ZSBkXCdhdXRyZXMgcGFyYW3DqHRyZXMnOwokbGFuZ1sndGVtcGxhdGVfc2F2ZWQnXSA9ICdHYWJhcml0IGVucmVnaXN0csOpJzsKJGxhbmdbJ3RlbXBsYXRlX3Jlc2V0ZGVmYXVsdHMnXSA9ICdHYWJhcml0IHLDqWluaXRpYWxpc8OpJzsKJGxhbmdbJ2xibF9zZXR0aW5ncyddID0gJ1LDqWdsYWdlcyc7CiRsYW5nWydsYmxfdGVtcGxhdGVzJ10gPSAnR2FiYXJpdHMnOwokbGFuZ1snZW5hYmxlX2NhcHRjaGEnXSA9ICdBY3RpdmVyIGxlIGNhcHRjaGEgc3VyIGxlIGZvcm11bGFpcmUgZGUgY29ubmV4aW9uJzsKJGxhbmdbJ2luZm9fZW5hYmxlX2NhcHRjaGEnXSA9ICdTaSBsXCd1dGlsaXNhdGV1ciBuXCdlc3QgcGFzIGNvbm5lY3TDqSBldCBxdWUgbGVzIHByw6lmw6lyZW5jZXMgZHUgbW9kdWxlIGluZGlxdWVudCBkXCdhZmZpY2hlciBsZSBmb3JtdWxhaXJlIGRlIGNvbm5leGlvbiwgY2V0dGUgb3B0aW9uIGNvbnRyw7RsZSBzaSBsZSBjYXB0Y2hhIHNlcmEgYWZmaWNow6kgc3VyIGxcJ8OpY3JhbiBkZSBjb25uZXhpb24uIFNpIGxlIGNhcHRjaGEgZXN0IGRpc3BvbmlibGUnOwokbGFuZ1sncGFnZXR5cGVfdW5hdXRob3JpemVkJ10gPSAnVm91cyBuXCfDqnRlcyBwYXMgYXV0b3Jpc8OpKGUpIMOgIGFjY8OpZGVyIMOgIGNlIGNvbnRlbnUnOwokbGFuZ1snaW5mb19jb250ZW50cGFnZV9ncm91cGxpc3QnXSA9ICdTcMOpY2lmaWV6IGxhIGxpc3RlIGRlcyBncm91cGVzIHV0aWxpc2F0ZXVycyBxdWkgYXVyb250IGFjY8OocyDDoCBjZXR0ZSBwYWdlLiBTaSB2b3VzIG5lIHNww6ljaWZpZXogYXVjdW4gZ3JvdXBlLCB0b3V0IHV0aWxpc2F0ZXVyIGNvbm5lY3TDqSBwb3VycmEgdm9pciBjZXR0ZSBwYWdlJzsKJGxhbmdbJ3BhZ2V0eXBlX3NldHRpbmdzJ10gPSAnUsOpZ2xhZ2VzIGRlcyBwYWdlcyBwcm90w6lnw6llcyc7CiRsYW5nWydwYWdldHlwZV9ncm91cHMnXSA9ICdHcm91cGVzIGF1dG9yaXPDqXMmbmJzcDsnOwokbGFuZ1snaW5mb19wYWdldHlwZV9ncm91cHMnXSA9ICdTw6lsZWN0aW9ubmV6IGxlcyBncm91cGVzIHF1aSBwb3Vycm9udCAocGFyIGTDqWZhdXQpIHZvaXIgbGVzIHBhZ2VzIHByb3TDqWfDqWVzLiBVbiDDqWRpdGV1ciBhdmVjIGxhIHBlcm1pc3Npb24gIk1hbmFnZSBBbGwgQ29udGVudCIgcG91cnJhIHN1cnBhc3NlciBjZXR0ZSBwZXJtaXNzaW9uIHBvdXIgY2hhcXVlIHBhZ2UuJzsKJGxhbmdbJ3BhZ2V0eXBlX2FjdGlvbiddID0gJ0FjdGlvbiBwb3VyIHVuIGFjY8OocyBub24tYXV0b3Jpc8OpJm5ic3A7JzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfYWN0aW9uJ10gPSAnU3DDqWNpZmllIGxlIGNvbXBvcnRlbWVudCBkdSBtb2R1bGUgcG91ciBsZXMgcGVyc29ubmVzIGFjY8OpZGFudCDDoCBjZXR0ZSBwYWdlIHNhbnMgYXZvaXIgbGVzIGRyb2l0cyByZXF1aXMuIFZvdXMgcG91dmV6IHNvaXQgcmVkaXJpZ2VyIHZlcnMgdW5lIHBhZ2Ugc3DDqWNpZmlxdWUsIHNvaXQgYWZmaWNoZXIgbGUgZm9ybXVsYWlyZSBkZSBjb25uZXhpb24uJzsKJGxhbmdbJ3Nob3dsb2dpbmZvcm0nXSA9ICdBZmZpY2hlciBsZSBmb3JtdWxhaXJlIGRlIGNvbm5leGlvbic7CiRsYW5nWydyZWRpcmVjdCddID0gJ1JlZGlyaWdlciB2ZXJzIHVuZSBwYWdlJzsKJGxhbmdbJ3BhZ2V0eXBlX3JlZGlyZWN0dG8nXSA9ICdSZWRpcmlnZXIgdmVycyZuYnNwOyc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX3JlZGlyZWN0dG8nXSA9ICdDaG9pc2lzc2V6IGxhIHBhZ2UgZGUgcmVkaXJlY3Rpb24uICBTaSB2b3VzIG5cJ2VuIGNob2lzaXNzZXogcGFzLCBhbG9ycyBxdWUgbFwnYWN0aW9uIGVzdCAicmVkaXJpZ2VyIiwgbGUgdmlzaXRldXIgdmVycmEgdW4gbWVzc2FnZSBsdWkgaW5kaXF1YW50IHF1XCdpbCBuXCdhIHBhcyBhY2PDqHMgw6AgbGEgcGFnZS4nOwokbGFuZ1sncGVybWlzc2lvbnMnXSA9ICdQZXJtaXNzaW9uc8KgJzsKJGxhbmdbJ2ZldV9wcm90ZWN0ZWRfcGFnZSddID0gJ0NvbnRlbnUgcHJvdMOpZ8OpJzsKJGxhbmdbJ3Byb21wdF92aWV3cHJvcHMnXSA9ICdDaG9pc2lzc2V6IHVuZSBwcm9wcmnDqXTDqSBjb21wbMOpbWVudGFpcmUgw6AgYWZmaWNoZXInOwokbGFuZ1sndmlldyddID0gJ1Z1ZSc7CiRsYW5nWydpbmZvX2lnbm9yZV91c2VyaWQnXSA9ICdTaSBjb2Now6ksIGxhIHJvdXRpbmUgZFwnaW1wb3J0IHRlbnRlcmEgZFwnYWpvdXRlciBkZXMgdXRpbGlzYXRldXJzIHNhbnMgdGVuaXIgY29tcHRlIGRlIGxhIGNvbG9ubmUgVXNlcklkLiBTaSBsZSBub20gZFwndW4gdXRpbGlzYXRldXIgc3DDqWNpZmnDqSBkYW5zIGxlIGZpY2hpZXIgZFwnaW1wb3J0IGV4aXN0ZSBkw6lqw6AsIHVuZSBlcnJldXIgc2UgZMOpY2xlbmNoZXJhJzsKJGxhbmdbJ2lnbm9yZV91c2VyaWQnXSA9ICdJZ25vcmUgbGEgY29sb25uZSBVc2VySUQgbG9ycyBkZSBsXCdpbXBvcnRhdGlvbic7CiRsYW5nWydleHBvcnRfcGFzc2hhc2gnXSA9ICdFeHBvcnRlciBsZSBoYWNoIGR1IG1vdCBkZSBwYXNzZSBwb3VyIGxlIGZpY2hpZXInOwokbGFuZ1snaW5mb19leHBvcnRfcGFzc2hhc2gnXSA9ICdMZSBoYWNoYWdlIGR1IG1vdCBkZSBwYXNzZSBuXCdlc3QgdXRpbGUgcXVlIHNpIGxlIHNhbGFnZSBkdSBtb3QgZGUgcGFzc2Ugc3VyIGxcJ2ltcG9ydGF0aW9uIGVzdCBpZGVudGlxdWUgw6AgY2VsdWkgZGUgbFwnZXhwb3J0YXRpb24nOwokbGFuZ1snZXJyb3JfYWRqdXN0c2FsdCddID0gJ0xlIHNhbGFnZSBkZSBtb3QgZGUgcGFzc2UgbmUgcGV1dCDDqnRyZSByw6lnbMOpJzsKJGxhbmdbJ3Byb21wdF9wd3NhbHQnXSA9ICdTYWxhZ2UgZHUgbW90IGRlIHBhc3NlJm5ic3A7JzsKJGxhbmdbJ2luZm9fcHdzYWx0J10gPSAnRnJvbnRFbmRVc2VycyB1dGlsaXNlIGxlIHNhbGFnZSBkZSB0b3VzIGxlcyBtb3RzIGRlIHBhc3NlIGF2ZWMgY2V0dGUgY2zDqSwgcXVpIGVzdCBjcsOpw6kgbG9ycyBkZSBsXCdpbnN0YWxsYXRpb24uIFVuZSBmb2lzIHF1ZSBsZXMgdXRpbGlzYXRldXJzIG9udCDDqXTDqSBham91dMOpcyDDoCBsYSBiYXNlIGRlIGRvbm7DqWVzLCBjZSBjb2RlIG5lIHBldXQgcGx1cyDDqnRyZSBtb2RpZmnDqS4gQ2V0dGUgY2zDqSBwZXV0IMOqdHJlIHZpZGUgcG91ciBsZXMgYW5jaWVubmVzIGluc3RhbGxhdGlvbnMuJzsKJGxhbmdbJ2FkdmFuY2VkX3NldHRpbmdzJ10gPSAnUsOpZ2xhZ2VzIGF2YW5jw6lzJzsKJGxhbmdbJ2luZm9fc2Vzc2lvbnRpbWVvdXQnXSA9ICdTcMOpY2lmaWVyIGxlIG5vbWJyZSBkZSBzZWNvbmRlcyBhdmFudCBxdVwndW4gdXRpbGlzYXRldXIgaW5hY3RpZiBzb2lyIGTDqWNvbm5lY3TDqSBhdXRvbWF0aXF1ZW1lbnQgZHUgc2l0ZSc7CiRsYW5nWydwcm9tcHRfZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdJbnRlcnZhbGxlIHBvdXIgbFwnZXhwaXJhdGlvbiBkXCd1biB1dGlsaXNhdGV1ciZuYnNwOyc7CiRsYW5nWydpbmZvX2V4cGlyZXVzZXJzX2ludGVydmFsJ10gPSAnU3DDqWNpZmllIHVuZSB2YWxldXIgKGVuIHNlY29uZGVzKSBpbmRpcXVhbnQgbGUgZMOpbGFpIGF2YW50IHF1ZSBsZSBzeXN0w6htZSBuZSBkw6ljb25uZWN0ZSB1biB1dGlsaXNhdGV1ciBkb250IGxhIHNlc3Npb24gZXN0IGV4cGlyw6llLiBDZXR0ZSBvcHRpbWlzYXRpb24gcGVybWV0IGRlIGRpbWludWVyIGxlIG5vbWJyZSBkZSByZXF1w6p0ZXMgdmVycyBsYSBiYXNlIGRlIGRvbm7DqWVzLiBTaSBsYWlzc8OpZSB2aWRlIG91IHLDqWdsw6llIMOgIDAsIGxcJ2V4cGlyYXRpb24gZGUgc2Vzc2lvbiBzZXJhIHRlc3TDqWUgw6AgY2hhcXVlIHJlcXXDqnRlIGRlIGxcJ3V0aWxpc2F0ZXVyLic7CiRsYW5nWydtc2dfc2V0dGluZ3NjaGFuZ2VkJ10gPSAnVm9zIHLDqWdsYWdlcyBvbnQgw6l0w6kgbWlzIMOgIGpvdXIgYXZlYyBzdWNjw6hzJzsKJGxhbmdbJ2ZvcmNlZGxvZ291dHRhc2tfZGVzYyddID0gJ09ibGlnZSBsZXMgdXRpbGlzYXRldXJzIMOgIHNlIGTDqWNvbm5lY3RlciDDoCBpbnRlcnZhbGxlcyBkZSB0ZW1wcyByw6lndWxpZXJzJzsKJGxhbmdbJ3Byb21wdF9mb3JjZWxvZ291dF90aW1lcyddID0gJ1RlbXBzIHBvdXIgbGEgZMOpY29ubmV4aW9uIGZvcmPDqWUmbmJzcDsnOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF90aW1lcyddID0gJ1Nww6ljaWZpZSB1bmUgbGlzdGUgZGUgdGVtcHMgc8OpcGFyw6lzIHBhciB1bmUgdmlyZ3VsZSBkZSB0eXBlIEhIOk1NLEhIOk1NIG/DuSBsZXMgdXRpbGlzYXRldXJzIHNlcm9udCBkw6ljb25uZWN0w6lzLiBWZXVpbGxleiBub3RlciBxdWUgY2VjaSB1dGlsaXNlIGxlIG3DqWNhbmlzbWUgcHNldWRvY3JvbiwgYXVzc2kgdm91cyBkZXZleiDDqnRyZSBzw7tyIHF1ZSBsZXMgdGVtcHMgZW50csOpcyBjb8OvbmNpZGVudCByYWlzb25uYWJsZW1lbnQgYXZlYyB2b3RyZSAiZ3JhbnVsYXJpdMOpIHBzZXVkb2Nyb24iIGV0IHF1ZSBzdWZmaXNhbW1lbnQgZGUgcmVxdcOqdGVzIGFycml2ZW50IHZlcnMgbGUgc2l0ZSBwb3VyIGFzc3VyZXIgcXVlIGNlIHBzZXVkb2Nyb24gc29pdCBleMOpY3V0w6kuJzsKJGxhbmdbJ3Byb21wdF9mb3JjZWxvZ291dF9zZXNzaW9uYWdlJ10gPSAnRXhjbHVyZSBsZXMgbWVtYnJlcyBxdWkgblwnb250IHBhcyDDqXTDqSBhY3RpZnMgZW4gPGVtPihtaW51dGVzKTwvZW0+JzsKJGxhbmdbJ2luZm9fZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ1NpIHNww6ljaWZpw6ksIGNoYXF1ZSB1dGlsaXNhdGV1cnMgYWN0aWZzIGR1cmFudCBjZSBub21icmUgZGUgc2Vjb25kZXMgbmUgc2Vyb250IHBhcyBkw6ljb25uZWN0w6lzIGRcJ29mZmljZSc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZSddID0gJ8OKdGVzLXZvdXMgc8O7cihlKSBkZSB2b3Vsb2lyIHN1cHByaW1lciBsXCd1dGlsaXNhdGV1ciA6ICVzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlZXh0ZW5zaW9uJ10gPSAnTGUgdHlwZSBkZSBmaWNoaWVyIHVwbG9hZMOpIG5lIHNlbWJsZSBwYXMgZmFpcmUgcGFydGllIGRlcyBmaWNoaWVycyBhdXRvcmlzw6lzJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdUb3V0ZXMgbGVzIGRvbm7DqWVzIGFzc29jacOpZXMgYXUgbW9kdWxlIEZyb250RW5kVXNlcnMgb250IMOpdMOpIGVmZmFjw6llcyc7CiRsYW5nWydpbmZvX2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdTaSBhY3RpdsOpLCBjZSBtb2R1bGUgdmEgw6ljb3V0ZXIgbGVzIMOpdsOpbmVtZW50cyBkZSBsYSBzdWl0ZSBFY29tbWVyY2UuIExlcyBwYXJhbcOodHJlcyBzdWl2YW50cyBuZSBzZXJvbnQgZFwnYXBwbGljYXRpb24gcXVlIHNpIGNlIHBhcmFtw6h0cmUgZXN0IGFjdGl2w6kuJzsKJGxhbmdbJ3Byb21wdF9lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnRWNvdXRlIGRlcyDDqXbDqW5lbWVudHMgZGUgY29tbWFuZGVzJzsKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ0xlcyBwYXJhbcOodHJlcyBzdWl2YW50cyBuZSBzXCdhcHBsaXF1ZW50IHF1ZSBzaSB2b3VzIHV0aWxpc2V6IGxlIG1vZHVsZSBTZWxmIFJlZ2lzdHJhdGlvbiBldCBhdXRvcmlzZW50IGxlcyBpbnNjcmlwdGlvbnMgcGF5YW50ZXMnOwokbGFuZ1snbm9uZSddID0gJ0F1Y3VuJzsKJGxhbmdbJ2RlbGV0ZV91c2VyJ10gPSAnU3VwcHJpbWVyIGxcJ3V0aWxpc2F0ZXVyJzsKJGxhbmdbJ2V4cGlyZV91c2VyJ10gPSAnVXRpbGlzYXRldXIgZXhwaXLDqSc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyY2FuY2VsbGVkJ10gPSAnQWN0aW9uIMOgIGVmZmVjdHVlciBxdWFuZCB1biBvcmRyZSBkZSBzb3VzY3JpcHRpb24gZXN0IGFubnVsw6knOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmRlbGV0ZWQnXSA9ICdBY3Rpb24gw6AgZWZmZWN0dWVyIHF1YW5kIHVuIG9yZHJlIGRlIHNvdXNjcmlwdGlvbiBlc3Qgc3VwcHJpbcOpJzsKJGxhbmdbJ2Vjb21tZXJjZV9zZXR0aW5ncyddID0gJ1BhcmFtw6h0cmVzIEVjb21tZXJjZSc7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ01hcnF1ZXVyIGRlIGNoYW1wIHPDqWN1cmlzw6kmbmJzcDsnOwokbGFuZ1snc2VjdXJlZmllbGRjb2xvciddID0gJ0NvdWxldXIgZGUgY2hhbXAgc8OpY3VyaXPDqSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfZW5jcnlwdCddID0gJ1N0b2NrZXIgY2VzIGRvbm7DqWVzIGRlIG1hbmnDqHJlIGNyeXB0w6llIGRhbnMgbGEgYmFzZSBkZSBkb25uw6llcyc7CiRsYW5nWydlcnJvcl9ub3RzdXBwb3J0ZWQnXSA9ICdMXCdvcHRpb24gY2hvaXNpZSBuXCdlc3QgcGFzIHN1cHBvcnTDqWUgYXZlYyBsYSBjb25maWd1cmF0aW9uIGFjdHVlbGxlJzsKJGxhbmdbJ2F1ZGl0X3VzZXJfY3JlYXRlZCddID0gJ1V0aWxpc2F0ZXVyIGNyw6nDqSBhdXRvbWF0aXF1ZW1lbnQnOwokbGFuZ1snaW5mb19hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnU2kgdW4gdXRpbGlzYXRldXIgZXN0IGF1dGhlbnRpZmnDqSBwYXIgdW4gbW9kdWxlIGV4dGVybmUgZFwnYXV0aGVudGlmaWNhdGlvbiwgbWFpcyBlc3QgaW5jb25udSBkYW5zIGxlIG1vZHVsZSBGcm9udEVuZFVzZXJzLCB1biBjb21wdGUgRkVVIGRvaXQtaWwgw6p0cmUgY3LDqcOpIGF1dG9tYXRpcXVlbWVudCA/JzsKJGxhbmdbJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnQ3LDqWVyIGF1dG9tYXRpcXVlbWVudCBsZXMgdXRpbGlzYXRldXJzIGluY29ubnVzJm5ic3A7JzsKJGxhbmdbJ2Rpc3BsYXlfc2V0dGluZ3MnXSA9ICdBZmZpY2hlciBsZXMgcsOpZ2xhZ2VzJzsKJGxhbmdbJ2luZm9fc3RkX2F1dGhfc2V0dGluZ3MnXSA9ICdMZXMgcsOpZ2xhZ2VzIHN1aXZhbnRzIG5lIHNvbnQgYXBwbGljYWJsZXMgcXVcJ2F2ZWMgImxcJ0F1dGhlbnRpZmljYXRpb24gaW50w6lncsOpZSIuJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0dW4nXSA9ICdDaG9pc2lyIE5vbiBkw6lzYWN0aXZlIGxhIHBvc3NpYmlsaXTDqSBwb3VyIHVuIHV0aWxpc2F0ZXVyIGRcJ3V0aWxpc2VyIGxhIGZvbmN0aW9uIGRlIHLDqWN1cMOpcmF0aW9uIGRlcyBpZGVudGlmaWFudHMsIGluZMOpcGVuZGFtbWVudCBkZXMgYXV0cmVzIHLDqWdsYWdlcyc7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHB3J10gPSAnQ2hvaXNpciBOb24gZMOpc2FjdGl2ZSBsYSBwb3NzaWJpbGl0w6kgcG91ciB1biB1dGlsaXNhdGV1ciBkZSByw6lpbml0aWFsaXNlciBzb24gbW90IGRlIHBhc3NlLCBpbmTDqXBlbmRhbW1lbnQgZGVzIGF1dHJlcyByw6lnbGFnZXMnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHVuJ10gPSAnQXV0b3Jpc2VyIGxlcyB1dGlsaXNhdGV1cnMgw6AgZGVtYW5kZXIgbGV1ciBpZGVudGlmaWFudCZuYnNwOyc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0cHcnXSA9ICdBdXRvcmlzZXIgbGVzIHV0aWxpc2F0ZXVycyDDoCBkZW1hbmRlciB1biBjaGFuZ2VtZW50IGRlIG1vdCBkZSBwYXNzZSZuYnNwOyc7CiRsYW5nWydhdXRoX3NldHRpbmdzJ10gPSAnUGFyYW3DqXRyZXMgZFwnYXV0aGVudGlmaWNhdGlvbic7CiRsYW5nWydhdXRoZW50aWNhdGlvbiddID0gJ0F1dGhlbnRpZmljYXRpb24gaW50w6lncsOpZSc7CiRsYW5nWydhdXRoX2J1aWx0aW4nXSA9ICdBdXRoZW50aWZpY2F0aW9uIFN0YW5kYXJkIGRlIEZFVSc7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ01vZHVsZS9Nw6l0aG9kZSBkXCdhdXRoZW50aWZpY2F0aW9uJm5ic3A7JzsKJGxhbmdbJ2luZm9fYXV0aF9tb2R1bGUnXSA9ICdMZSBtb2R1bGUgRnJvbnRFbmRVc2VycyBzdXBwb3J0ZSBsXCd1dGlsaXNhdGlvbiBkZSBtw6l0aG9kZSBhbHRlcm5hdGl2ZXMgZFwnYXV0aGVudGlmaWNhdGlvbiwgYXZlYyBkZXMgY2FwYWNpdMOpcyB2YXJpYWJsZXMuIENlcnRhaW5lcyBmb25jdGlvbm5hbGl0w6lzIG5lIHZvbnQgcGFzIGZvbmN0aW9ubmVyIG91IHNlcm9udCBkw6lzYWN0aXbDqWVzIHNpIGxhIG3DqXRob2RlIGRcJ2F1dGhlbnRpZmljYXRpb24gaW50w6lncsOpZSBuXCdlc3QgcGFzIHV0aWxpc8OpZS4nOwokbGFuZ1snZXJyb3JfdXNlcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdMYSB2YWxldXIgc3DDqWNpZmnDqWUgcG91ciAlIHMgZXN0IGTDqWrDoCB1dGlsaXPDqWUgcGFyIHVuIGF1dHJlIHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ3VuaXF1ZSddID0gJ1VuaXF1ZSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdMYSB2YWxldXIgc3DDqWNpZmnDqWUgcG91ciAlIHMgKCUgcykgblwnZXN0IHBhcyB1bmlxdWUnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ0ZvcmNlciBsYSB2YWxldXIgZGUgY2V0dGUgcHJvcHJpw6l0w6kgcG91ciDDqnRyZSB1bmlxdWUgZGFucyB0b3VzIGxlcyBjb21wdGVzIHV0aWxpc2F0ZXVycyc7CiRsYW5nWydoZWxwX3JldHVybnRvJ10gPSAnVXRpbGlzw6kgYXZlYyBsZXMgZm9ybXVsYWlyZXMgZGUgY29ubmV4aW9uIGV0IGTDqWNvbm5leGlvbiwgY2UgcGFyYW3DqHRyZSBpbmRpcXVlIHVuZSBJRCBvdSB1biBhbGlhcyBkZSBwYWdlIGF1cXVlbCBsXCd1dGlsaXNhdGV1ciBzZXJhIHJlbnZvecOpIGFwcsOocyBsYSB2YWxpZGF0aW9uIGRlIGxcJ29ww6lyYXRpb24uIENlY2kgcmVtcGxhY2UgbGVzIHByw6lmw6lyZW5jZXMgZGUgInJldHVybmxhc3QiIGV0IGRlIHJlZGlyZWN0aW9uJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdBdmVydGlzc2VtZW50IGRlIGZpbiBkZSBzZXNzaW9uJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnVm90cmUgc2Vzc2lvbiB2YSBiaWVudMO0dCBleHBpcmVyLCB2ZXVpbGxleiBjbGlxdWVyIHN1ciAiT0siIHBvdXIgcmVzdGVyIGNvbm5lY3TDqShlKS4nOwokbGFuZ1snb2snXSA9ICdPSyc7CiRsYW5nWydyZXNldHNlc3Npb25fdGVtcGxhdGUnXSA9ICdHYWJhcml0IGRlIHJlbWlzZSDDoCB6w6lybyBkZSBzZXNzaW9uJzsKJGxhbmdbJ2luZm9fbmFtZSddID0gJ0NlY2kgZXN0IGxlIG5vbSBkdSBjaGFtcCAow6AgdXRpbGlzZXIgcG91ciBs4oCZYWRyZXNzYWdlIGRhbnMgU21hcnR5KS4gSWwgZG9pdCBjb21wb3J0ZXIgdW5pcXVlbWVudCBkZXMgY2FyYWN0w6hyZXMgYWxwaGFudW3DqXJpcXVlcyBvdSBkZXMgdW5kZXJzY29yZSAoXykuJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ1Zpc2l0ZXVycyc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1PDqWxlY3Rpb25uZXogdW4gb3UgcGx1c2lldXJzIGdyb3VwZXMgRkVVIHF1aSBzZXJvbnQgYXV0b3Jpc8OpcyDDoCBhY2PDqWRlciDDoCBjZXR0ZSBwYWdlJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdVbiBncm91cGUgZG9pdCDDqnRyZSBzw6lsZWN0aW9ubsOpJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1PDqWxlY3Rpb25uZXIgdW4gZ3JvdXBlJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdBbm7DqWUgZGUgZMOpYnV0JzsKJGxhbmdbJ2VuZF95ZWFyJ10gPSAnQW5uw6llIGRlIGZpbic7CiRsYW5nWydkYXRlJ10gPSAnRGF0ZSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdUYWlsbGUgZGUgdmlnbmV0dGUmbmJzcDsnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ0xvcnNxdVwndW4gZ3JvdXBlIGRcJ3V0aWxpc2F0ZXVycyBlc3QgbW9kaWZpw6knOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnVXRpbGlzYXRldXJzIHPDqWxlY3Rpb25uw6lzIHRyb3Agbm9tYnJldXggcG91ciBsZXMgb3DDqXJhdGlvbnMuLi4gTWVyY2kgZGUgcsOpZHVpcmUgw6AgMjUwIG91IG1vaW5zJzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnw4p0ZXMtdm91cyBzw7tyKGUpIGRlIHZvdWxvaXIgc3VwcHJpbWVyIGxlcyB1dGlsaXNhdGV1cnMgc8OpbGVjdGlvbm7DqXMgPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdTdXBwcmltZXIgbGEgc8OpbGVjdGlvbic7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHw6luw6lyZXIgdW4gbm9tIGRcJ3V0aWxpc2F0ZXVyIGF1IGhhc2FyZCBsb3JzIGRlIGxcJ2Fqb3V0IGRlIG5vdXZlYXV4IHV0aWxpc2F0ZXVycyZuYnNwOyc7CiRsYW5nWydtb250aHMnXSA9ICdtb2lzJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdQw6lyaW9kZSBkXCdleHBpcmF0aW9uIHBhciBkw6lmYXV0IHBvdXIgbFwndXRpbGlzYXRldXImbmJzcDsnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnUGFyYW3DqHRyZXMgZGUgbm90aWZpY2F0aW9uJm5ic3A7JzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnUGFyYW3DqHRyZXMgZGUgcHJvcHJpw6l0w6kmbmJzcDsnOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdQYXJhbcOodHJlcyBkZSByZWRpcmVjdGlvbiZuYnNwOyc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnUGFyYW3DqHRyZXMgZ8OpbsOpcmF1eCZuYnNwOyc7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnUGFyYW3DqHRyZXMgZGUgU2Vzc2lvbiBldCBDb29raWUmbmJzcDsnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdQYXJhbcOodHJlcyBkZXMgY2hhbXBzJm5ic3A7JzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ1Blcm1ldHRyZSBsXCd1dGlsaXNhdGlvbiBkZSBsXCfDqWRpdGV1ciB2aXN1ZWwgKFdZU0lXWUcpIHN1ciBjZXR0ZSB6b25lIGRlIHRleHRlJzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ0VkaXRpb24gZFwndXRpbGlzYXRldXImbmJzcDsnOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdOZSBwYXMgbWV0dHJlIGVuIGxpZ25lIGxlcyBmb3JtdWxhaXJlcyc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaXF1ZXogaWNpIHNpIHZvdXMgbmUgdm91cyBzb3V2ZW5leiBwYXMgZGUgdm90cmUgaWRlbnRpZmlhbnQnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0NsaXF1ZXogaWNpIHNpIHZvdXMgbmUgdm91cyBzb3V2ZW5leiBwYXMgZGUgdm90cmUgbW90IGRlIHBhc3NlJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnQ2xpcXVleiBpY2kgcG91ciB2b3VzIGTDqWNvbm5lY3Rlcic7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnQ2xpcXVleiBpY2kgcG91ciBtb2RpZmllciB2b3RyZSBtb3QgZGUgcGFzc2UgZXQgZFwnYXV0cmVzIGluZm9ybWF0aW9ucyc7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ1Z1ZSBnYWJhcml0IHV0aWxpc2F0ZXVyJm5ic3A7JzsKJGxhbmdbJ2V2ZW50J10gPSAnw4l2w6luZW1lbnQnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ05vdGlmaWNhdGlvbiBkXCfDqXbDqW5lbWVudCBtb2R1bGUgRnJvbnRFbmRVc2VyJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ0FkcmVzc2UgZW1haWwgcG91ciBsYSBub3RpZmljYXRpb24mbmJzcDsnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ0dhYmFyaXQgZFwnZW1haWwgcG91ciBsYSBub3RpZmljYXRpb24mbmJzcDsnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnU3VqZXQgZGUgbFwnZW1haWwgcG91ciBsYSBub3RpZmljYXRpb24mbmJzcDsnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdOb3RpZmljYXRpb25zIHBhciBlbWFpbCZuYnNwOyc7CiRsYW5nWydPbkxvZ2luJ10gPSAnw4AgbGEgY29ubmV4aW9uJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnw4AgbGEgZMOpY29ubmV4aW9uJzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ8OAIGxcJ2V4cGlyYXRpb24gZGUgbGEgc2Vzc2lvbic7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdMb3JzcXVcJ3VuIG5vdXZlbCB1dGlsaXNhdGV1ciBlc3QgY3LDqcOpJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ0xvcnNxdVwndW4gdXRpbGlzYXRldXIgZXN0IHN1cHByaW3DqSc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdMb3JzIGRlIGNoYW5nZW1lbnQgZGUgcGFyYW3DqHRyZXMgdXRpbGlzYXRldXInOwokbGFuZ1snT25DcmVhdGVHcm91cCddID0gJ0xvcnNxdVwndW4gZ3JvdXBlIGRcJ3V0aWxpc2F0ZXVycyBlc3QgY3LDqcOpJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdMb3JzcXVcJ3VuIGdyb3VwZSBkXCd1dGlsaXNhdGV1cnMgZXN0IHN1cHByaW3DqSc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ0xhIGZvbmN0aW9uIGRlIHLDqWN1cMOpcmF0aW9uIGRlcyBkw6l0YWlscyBkZSBsb2dpbiBvdWJsacOpIGVzdCB0ZXJtaW7DqWUuIE5vdXMgYXZvbnMgdHJvdXbDqSB1biBpZGVudGlmaWFudCB1bmlxdWUgcXVpIGNvcnJlc3BvbmQgYXV4IGTDqXRhaWxzIHF1ZSB2b3VzIGF2ZXogZW50csOpcy4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1ZvdHJlIGlkZW50aWZpYW50IGVzdCc7CiRsYW5nWydsb3N0dW5jb25maXJtX3Bvc3Rtc2cnXSA9ICdOb3VzIHZvdXMgcmVjb21tYW5kb25zIGRcJ2VucmVnaXN0cmVyIGNldHRlIGluZm9ybWF0aW9uIGRhbnMgdW4gZW5kcm9pdCBzw7tyLCBtYWlzIGZhY2lsZSDDoCByZXRyb3V2ZXIgcG91ciB2b3VzLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnZUlEL0FsaWFzIG/DuSBzZSByZW5kcmUgYXByw6hzIGxhIG1vZGlmaWNhdGlvbiZuYnNwOyc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdMXCdJRCBvdSBsXCdhbGlhcyBkZSBsYSBwYWdlIG/DuSBzZSByZW5kcmUgYXByw6hzIGxhIHbDqXJpZmljYXRpb24gZHUgY29kZSAqJm5ic3A7JzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBwb3VyIGxhIHLDqWN1cMOpcmF0aW9uIGRlcyBkw6l0YWlscyBkXCdpZGVudGlmaWFudCc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ0dhYmFyaXQgcG91ciBsYSBjb25maXJtYXRpb24gZGUgbGEgcsOpY3Vww6lyYXRpb24gZGVzIGTDqXRhaWxzIGRcJ2lkZW50aWZpYW50JzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnRXJyZXVyJm5ic3A7OiBQbHVzIGRcJ3VuIHV0aWxpc2F0ZXVyIGNvcnJlc3BvbmQgYXV4IHByb3ByacOpdMOpcyBkw6lmaW5pZXMnOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnRXJyZXVyJm5ic3A7OiBJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgdW4gdXRpbGlzYXRldXIgY29ycmVzcG9uZGFudCc7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnRXJyZXVyJm5ic3A7OiBJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgdW4gZ3JvdXBlIGRlIGNlIG5vbSc7CiRsYW5nWydyZWFkb25seSddID0gJ0xlY3R1cmUgc2V1bGUnOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ0NsYXNzZSBkZSBtYW5pcHVsYXRpb24gZGVzIGlkZW50aWZpYW50cyZuYnNwOyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdEw6ljb25uZWN0w6kgcGFyIHVuIGFkbWluaXN0cmF0ZXVyJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdBZmZpY2hlIHVuaXF1ZW1lbnQgbGVzIHV0aWxpc2F0ZXVycyBjb25uZWN0w6lzJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdEw6ljb25uZWN0ZXIgY2V0IHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ1Byb3ByacOpdMOpcyBkZSBsXCd1dGlsaXNhdGV1cic7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0hpc3RvcmlxdWUgZGVzIHV0aWxpc2F0ZXVycyc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnRlcic7CiRsYW5nWydjbGVhciddID0gJ1ZpZGVyJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0V4cG9ydGVyIGVuIEFTQ0lJIGxcJ2hpc3RvcmlxdWUgdXRpbGlzYXRldXIgcXVpIGEgbW9pbnMgZGUmbmJzcDsnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdWaWRlciBsXCdoaXN0b3JpcXVlIHV0aWxpc2F0ZXVyIHF1aSBhIHBsdXMgZGUmbmJzcDsnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnQXZlei12b3VzIG91Ymxpw6kgdm90cmUgaWRlbnRpZmlhbnQgPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFeHBvcnRlciBsYSBkw6lmaW5pdGlvbiBkdSBncm91cGUgKGV0IHNlcyBwcm9wcmnDqXTDqXMpIGF1IGZvcm1hdCBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ01haW50ZW5hbmNlIGRlIGxcJ2hpc3RvcmlxdWUgdXRpbGlzYXRldXInOwokbGFuZ1sneWVzJ10gPSAnT3VpJzsKJGxhbmdbJ25vJ10gPSAnTm9uJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ2RlJzsKJGxhbmdbJ2RhdGVfYWxscmVjb3JkcyddID0gJyoqIE5vbiBsaW1pdMOpICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJzEgaGV1cmUnOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnNiBoZXVyZXMnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnMTIgaGV1cmVzJzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAnMSBqb3VyJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJzEgc2VtYWluZSc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnMiBzZW1haW5lcyc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnMSBtb2lzJzsKJGxhbmdbJ2RhdGVfdGhyZWVtb250aHNvbGQnXSA9ICczIG1vaXMnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICc2IG1vaXMnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnMSBhbic7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdHcm91cGVyIGV0IHRyaWVyJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzZm91bmQnXSA9ICdFbnJlZ2lzdHJlbWVudHMgcXVpIGNvcnJlc3BvbmRlbnQgYXV4IGNyaXTDqHJlcyc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ09yZHJlIGRlc2NlbmRhbnQgZGVzIG5vbXMgZFwndXRpbGlzYXRldXJzJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdPcmRyZSBhc2NlbmRhbnQgZGVzIG5vbXMgZFwndXRpbGlzYXRldXJzJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdPcmRyZSBkZXNjZW5kYW50IGRlIGxhIGRhdGUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnT3JkcmUgYXNjZW5kYW50IGRlIGxhIGRhdGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnT3JkcmUgZGVzY2VuZGFudCBkdSB0eXBlIGRcJ8OpdsOpbmVtZW50JzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnT3JkcmUgYXNjZW5kYW50IGR1IHR5cGUgZFwnw6l2w6luZW1lbnQnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnT3JkcmUgZGVzY2VuZGFudCBkZSBsXCdhZHJlc3NlIElQJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnT3JkcmUgYXNjZW5kYW50IGRlIGxcJ2FkcmVzc2UgSVAnOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ0F1Y3VuIGhpc3RvcmlxdWUgZMOpdGVjdMOpJzsKJGxhbmdbJ3Jlc2V0J10gPSAnUsOpaW5pdGlhbGlzZXInOwokbGFuZ1sncHJvbXB0X2dyb3VwX2lwJ10gPSAnR3JvdXBlciBwYXIgYWRyZXNzZSBJUCZuYnNwOyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0ZpbHRyZSBkZSB0eXBlIGRcJ8OpdsOpbmVtZW50Jm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ0FmZmljaGUgdW5pcXVlbWVudCBsZXMgw6l2w6luZW1lbnRzIHF1aSBvbnQgbW9pbnMgZGUmbmJzcDsnOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ0xpbWl0ZSBkZSBwYWdlJm5ic3A7JzsKJGxhbmdbJ2ZvciddID0gJ3BvdXInOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdSYXBwb3J0IGRcJ2hpc3RvcmlxdWUgZFwndXRpbGlzYXRldXInOwokbGFuZ1sndW5rbm93biddID0gJ0luY29ubnUnOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0FkcmVzc2UgSVAnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ1R5cGUgZFwnw6l2w6luZW1lbnQnOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXRlJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdSZXRvdXInOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ09ww6lyYXRpb24gZFwnaW1wb3J0YXRpb24gdGVybWluw6llJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ0xpZ25lcyBlZmZlY3R1w6llcyc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnRXJyZXVycyByZW5jb250csOpZXMnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ0VucmVnaXN0cmVtZW50cyBham91dMOpcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnSW1wb3NzaWJsZSBkZSB0cm91dmVyIGRlcyBwcm9wcmnDqXTDqXMgcG91ciBsZSBncm91cGUgJXMnOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdBdWN1bmUgcsOpcG9uc2UgZHUgc2VydmV1ciBTTVRQJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0ltcG9zc2libGUgZGUgdHJvdXZlciBsZSBmaWNoaWVyIHNww6ljaWZpw6kgKCVzKSc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJ10gPSAnVmFsZXVyIGludmFsaWRlIHBvdXIgbGUgY2hhbXAgbWVudSBkw6lyb3VsYW50IG91IG11bHRpIHPDqWxlY3Rpb24gJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdMZSBjaGFtcCAlcyBkw6lwYXNzZSBsYSBsb25ndWV1ciBtYXhpbWFsZSc7CiRsYW5nWydlcnJvcl9pbXBvcnRpbnNlcnR1c2VyJ10gPSAnVW4gcHJvYmzDqG1lIGVzdCBzdXJ2ZW51IGxvcnMgZGUgbGEgY3LDqWF0aW9uIGRlIGxcJ3V0aWxpc2F0ZXVyIDogJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXBkYXRldXNlciddID0gJ1VuIHByb2Jsw6htZSBlc3Qgc3VydmVudSBsb3JzIGRlIGxhIG1vZGlmaWNhdGlvbiBkZSBsXCd1dGlsaXNhdGV1ciA6ICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnRXJyZXVyIGRcJ2ltcG9ydGF0aW9uIChsaWduZSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdSw6ljdXDDqXJhdGlvbiBkZXMgZMOpZmluaXRpb25zIGRlIHByb3ByacOpdMOpIGltcG9zc2libGUgKGVycmV1ciBpbnRlcm5lKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdQcm9ibMOobWUgbG9ycyBkZSBsYSBkw6lmaW5pdGlvbiBkZXMgaW5mb3MgdXRpbGlzYXRldXInOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0ltcG9zc2libGUgZGUgdHJvdXZlciB1bmUgY29sb25uZSBxdWkgY29ycmVzcG9uZCBhdSBjaGFtcCByZXF1aXMgJXMnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3BlcnRpZXMnXSA9ICdJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgbGVzIHByb3ByacOpdMOpcyBwb3VyIGxlIGdyb3VwZSBzcMOpY2lmacOpJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnXSA9ICdMZSBmaWNoaWVyIHNww6ljaWZpw6kgcG91ciBsXCdpbXBvcnRhdGlvbiBuXCdlc3QgcGFzIGF1IGJvbiBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ091dmVydHVyZSBkZSBmaWNoaWVyIGltcG9zc2libGUnOwokbGFuZ1sncHJvbXB0X2ltcG9ydGRlc3Rncm91cCddID0gJ0ltcG9ydGVyIGxlcyB1dGlsaXNhdGV1cnMgZGFucyBjZSBncm91cGUmbmJzcDsnOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnRW50cmVyIHVuIGZpY2hpZXIgQ1NWJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnRW50cmVyIHVuIGZpY2hpZXIgWE1MJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydGVyIGRlcyB1dGlsaXNhdGV1cnMnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0ZXIgZGVzIHV0aWxpc2F0ZXVycyc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdWaWRlcic7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0NoZW1pbiBkZSBkZXN0aW5hdGlvbiBkZSBsXCdpbWFnZSZuYnNwOyc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ1VuIHByb2Jsw6htZSBlc3QgYXBwYXJ1IGF2ZWMgdW4gdMOpbMOpY2hhcmdlbWVudCBtYW5xdWFudCAobWFpcyByZXF1aXMpJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdJbXBvc3NpYmxlIGRcJ2FuYWx5c2VyIGxlIGZpY2hpZXIgWE1MIGZvdXJuaSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnSW1wb3NzaWJsZSBkZSBzdXBwcmltZXIgdW4gZ3JvdXBlIHF1aSBjb250aWVudCBlbmNvcmUgZGVzIHV0aWxpc2F0ZXVycyc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnQ2V0IHV0aWxpc2F0ZXVyIGVzdCBkw6lqw6AgY29ubmVjdMOpJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ0xlIHRleHRlIGRlIGNldHRlIGltYWdlIG5cJ2EgcGFzIMOpdMOpIGVudHLDqSBjb3JyZWN0ZW1lbnQnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ0F1dG9yaXNlciBsZXMgdXRpbGlzYXRldXJzIMOgIMOqdHJlIGNvbm5lY3TDqXMgcGx1cyBkXCd1bmUgZm9pcyZuYnNwOyc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnRXh0ZW5zaW9ucyBkZXMgZmljaGllcnMgZFwnaW1hZ2VzIHF1ZSBsZXMgdXRpbGlzYXRldXJzIHNvbnQgYXV0b3Jpc8OpcyDDoCB0w6lsw6ljaGFyZ2VyJm5ic3A7JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25SZWZyZXNoVXNlciddID0gJzxoMz5PblJlZnJlc2hVc2VyPC9oMz4NCjxwPlVuIMOpdsOpbmVtZW50IGVzdCBnw6luw6lyw6kgcXVhbmQgbGEgc2Vzc2lvbiB1dGlsaXNhdGV1ciBlc3QgcmFmcmHDrmNoaWUuPC9wPg0KPGg0PlBhcmFtw6h0cmVzOjwvaDQ+DQo8dWw+DQogIDxsaT48ZW0+aWQ8L2VtPiAtIGxcJ2lkIGRlIGxcJ3V0aWxpc2F0ZXVyPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPlVuIMOpdsOpbmVtZW50IGVzdCBnw6luw6lyw6kgcXVhbmQgdW4gdXRpbGlzYXRldXIgZXN0IHN1cHByaW3DqTwvcD4NCjxoND5QYXJhbcOodHJlczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBsZSBub20gZGUgbFwndXRpbGlzYXRldXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gbFwnaWQgZGUgbFwndXRpbGlzYXRldXI8L2xpPg0KPGxpPjxlbT5wcm9wczwvZW0+IC0gVW4gaGFjaGFnZSByZW1wbGlzIGF2ZWMgbGVzIHByb3ByacOpdMOpcyBkZSBsXCd1dGlsaXNhdGV1cjwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5VbiDDqXbDqW5lbWVudCBlc3QgZ8OpbsOpcsOpIHF1YW5kIHVuIHV0aWxpc2F0ZXVyIGVzdCBjcsOpw6k8L3A+DQo8aDQ+UGFyYW3DqHRyZXM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBsZSBub20gZGUgbFwndXRpbGlzYXRldXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gbFwnaWQgZGUgbFwndXRpbGlzYXRldXI8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PblVwZGF0ZVVzZXInXSA9ICc8aDM+T25VcGRhdGVVc2VyPGgzPg0KPHA+VW4gw6l2w6luZW1lbnQgZXN0IGfDqW7DqXLDqSBxdWFuZCB1biB1dGlsaXNhdGV1ciBlc3QgbWlzIMOgIGpvdXIgKHBhciBsdWktbcOqbWUgb3UgcGFyIHVuIGFkbWluKTwvcD4NCjxoND5QYXJhbcOodHJlczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIGxlIG5vbSBkZSBsXCd1dGlsaXNhdGV1cjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBsXCdpZCBkZSBsXCd1dGlsaXNhdGV1cjwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlR3JvdXAnXSA9ICc8aDM+T25DcmVhdGVHcm91cDxoMz4NCjxwPlVuIMOpdsOpbmVtZW50IGVzdCBnw6luw6lyw6kgcXVhbmQgdW4gZ3JvdXBlIGVzdCBjcsOpw6k8L3A+DQo8aDQ+UGFyYW3DqHRyZXM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBsZSBub20gZHUgZ3JvdXBlPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIGxhIGRlc2NyaXB0aW9uIGR1IGdyb3VwZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBsXCdpZCBkdSBncm91cGU8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5VbiDDqXbDqW5lbWVudCBlc3QgZ8OpbsOpcsOpIHF1YW5kIHVuIGdyb3VwZSBlc3Qgc3VwcHJpbcOpPC9wPg0KPGg0PlBhcmFtw6h0cmVzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gbGUgbm9tIGR1IGdyb3VwZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBsXCdpZCBkdSBncm91cGU8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5VbiDDqXbDqW5lbWVudCBlc3QgZ8OpbsOpcsOpIHF1YW5kIHVuIHV0aWxpc2F0ZXVyIHNlIGNvbm5lY3RlPC9wPg0KPGg0PlBhcmFtw6h0cmVzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIGxlIG5vbSBkZSBsXCd1dGlsaXNhdGV1ciBjb25uZWN0w6k8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gbFwnYWRyZXNzZSBpcCBkdSBjbGllbnQ8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxoMz5PbkxvZ291dDxoMz4NCjxwPlVuIMOpdsOpbmVtZW50IGVzdCBnw6luw6lyw6kgcXVhbmQgdW4gdXRpbGlzYXRldXIgc2UgZMOpY29ubmVjdGU8L3A+DQo8aDQ+UGFyYW3DqHRyZXM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gbGUgbm9tIGRlIGxcJ3V0aWxpc2F0ZXVyIGTDqWNvbm5lY3TDqTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBsXCdpZCBkZSBsXCd1dGlsaXNhdGV1cjwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxoMz5PbkV4cGlyZVVzZXI8aDM+DQo8cD5VbiDDqXbDqW5lbWVudCBlc3QgZ8OpbsOpcsOpIHF1YW5kIHVuZSBzZXNzaW9uIGV4cGlyZTwvcD4NCjxoND5QYXJhbcOodHJlczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBsZSBub20gZGUgbFwndXRpbGlzYXRldXIgZG9udCBsYSBzZXNzaW9uIGEgZXhwaXLDqTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBsXCdpZCBkZSBsXCd1dGlsaXNhdGV1ciBkb250IGxhIHNlc3Npb24gYSBleHBpcsOpPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ1VuIMOpdsOpbmVtZW50IGVzdCBnw6luw6lyw6kgcXVhbmQgdW4gdXRpbGlzYXRldXIgc2UgY29ubmVjdGUnOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ1VuIMOpdsOpbmVtZW50IGVzdCBnw6luw6lyw6kgcXVhbmQgdW4gdXRpbGlzYXRldXIgc2UgZMOpY29ubmVjdGUnOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdVbiDDqXbDqW5lbWVudCBlc3QgZ8OpbsOpcsOpIHF1YW5kIHVuZSBzZXNzaW9uIGV4cGlyZSc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ1VuIMOpdsOpbmVtZW50IGVzdCBnw6luw6lyw6kgcXVhbmQgdW4gdXRpbGlzYXRldXIgZXN0IGNyw6nDqSc7CiRsYW5nWydldmVudF9pbmZvX09uUmVmcmVzaFVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiB0aGUgdXNlciBzZXNzaW9uIGlzIHJlZnJlc2hlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ1VuIMOpdsOpbmVtZW50IGVzdCBnw6luw6lyw6kgcXVhbmQgdW4gdXRpbGlzYXRldXIgZXN0IG1pcyDDoCBqb3VyIChwYXIgbHVpLW3Dqm1lIG91IHBhciB1biBhZG1pbiknOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdVbiDDqXbDqW5lbWVudCBlc3QgZ8OpbsOpcsOpIHF1YW5kIHVuIHV0aWxpc2F0ZXVyIGVzdCBzdXBwcmltw6knOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnVW4gw6l2w6luZW1lbnQgZXN0IGfDqW7DqXLDqSBxdWFuZCB1biBncm91cGUgZXN0IGNyw6nDqSc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdVbiDDqXbDqW5lbWVudCBlc3QgZ8OpbsOpcsOpIHF1YW5kIHVuIGdyb3VwZSBlc3QgbWlzIMOgIGpvdXInOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZUdyb3VwJ10gPSAnVW4gw6l2w6luZW1lbnQgZXN0IGfDqW7DqXLDqSBxdWFuZCB1biBncm91cGUgZXN0IHN1cHByaW3DqSc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnR3JvdXBlJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJypMZXMgY2hhbXBzIHN1aXZhbnRzIHNvbnQgZ2FiYXJpdHMgU21hcnR5Ljxici8+QXZlYyBsZXMgdmFyaWFibGVzIGV4aXN0YW50ZXMgIHNtYXJ0eSBldCBsZXMgcGx1Z2lucywgIGxlcyBtYWNyb3Mgc3VpdmFudGVzIHBldXZlbnQgw6p0cmUgdXRpbGlzw6llcyBkYW5zIGNlcyBjaGFtcHMgOiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gTG9ycyBkZSBsXCd1dGlsaXNhdGlvbiBkZSBsYSBtYWNybyB7JGdyb3VwfSwgbGUgc3lzdMOobWUgcmVtcGxhY2UgbGUgbm9tIGR1IHByZW1pZXIgZ3JvdXBlIGF1cXVlbCBsXCd1dGlsaXNhdGV1ciBhcHBhcnRpZW50LCBldCB2YSBsZSByZWRpcmlnZXIgc3VyIGNldHRlIHBhZ2UuJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICfDiWRpdGVyIGNlIGNoYW1wIHBvdXIgcsOpaW5pdGlhbGlzZXIgbGUgbW90IGRlIHBhc3NlIHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICfDiWRpdGVyIGNlIGNoYW1wIHBvdXIgcsOpaW5pdGlhbGlzZXIgbGUgbW90IGRlIHBhc3NlIHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ1VuIHV0aWxpc2F0ZXVyIGF2ZWMgY2Ugbm9tIGV4aXN0ZSBkw6lqw6AuJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ0F1Y3VuIHLDqXN1bHRhdCByZXRvdXJuw6kgZGUgbFwnZXhwb3J0IGNzdic7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdMb25ndWV1ciBkdSBjaGFtcCBub20gZFwndXRpbGlzYXRldXImbmJzcDsnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnTG9uZ3VldXIgZHUgY2hhbXAgbW90IGRlIHBhc3NlJm5ic3A7JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdMb25ndWV1ciBtaW5pbWFsZS9tYXhpbWFsZSBpbnZhbGlkZSBwb3VyIGxlIG1vdCBkZSBwYXNzZSZuYnNwOyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTG9uZ3VldXIgbWluaW1hbGUvbWF4aW1hbGUgaW52YWxpZGUgcG91ciBsZSBub20gZFwndXRpbGlzYXRldXImbmJzcDsnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ0FkcmVzc2UgZW1haWwgaW52YWxpZGUnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdJbCBuXCd5IGEgcGFzIGRcJ2FkcmVzc2UgZW1haWwgZW5yZWdpc3Ryw6llIHBvdXIgY2UgY29tcHRlLic7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmzDqG1lIGxvcnMgZGUgbFwnw6lkaXRpb24gZGVzIGluZm9zIHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2Jsw6htZSBsb3JzIGRlIGxcJ8OpZGl0aW9uIGRlIGxhIHByb3ByacOpdMOpJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVdGlsaXNhdGV1ciBham91dMOpICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnVXRpbGlzYXRldXIgc3VwcHJpbcOpIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ1Byb3ByacOpdMOpJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWxldXIgKGV4cHJlc3Npb24gcsOpZ3VsacOocmUpJzsKJGxhbmdbJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJ10gPSAnQXR0ZW50aW9uIDogY2VzIGNoYW1wcyBhZmZlY3RlbnQgbGEgdGFpbGxlIGRlIGNoYW1wcyBkXCdlbnRyw6llIGRhbnMgbGVzIGZvcm11bGFpcmVzLiAgRGltaW51ZXIgY2V0dGUgdmFsZXVyIHN1ciB1biBzaXRlIGV4aXN0YW50IG5cJ2VzdCBwYXMgcmVjb21tYW5kw6knOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ01vZGlmaWVyIGxlcyBwcsOpZsOpcmVuY2VzIGFkbWluaXN0cmF0ZXVyJm5ic3A7Pyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnQ2V0dGUgYWRyZXNzZSBlbWFpbCBlc3QgZMOpasOgIHV0aWxpc8OpZSc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdVdGlsaXNlciBsZXMgY29va2llcyBwb3VyIG3DqW1vcmlzZXIgbGVzIGTDqXRhaWxzIGRcJ2lkZW50aWZpY2F0aW9uJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9jb29raWVuYW1lJ10gPSAnTGUgbm9tIGR1IGNvb2tpZSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ0F1dG9yaXNlciBsZXMgZG91YmxvbnMgZFwnZW1haWwmbmJzcDsnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnTFwnYWRyZXNzZSBlbWFpbCBlc3QgbGUgbm9tIGRcJ3V0aWxpc2F0ZXVyJm5ic3A7JzsKJGxhbmdbJ2luZm9fY29va2llX2tlZXBhbGl2ZSddID0gJ1RlbnRlIGRlIGdhcmRlciBsZXMgY29ubmV4aW9ucyBhY3RpdmVzIHBhciBsXCd1dGlsaXNhdGlvbiBkZSBjb29raWVzIDxlbT5sZSBjb29raWUgZXN0IHLDqWluaXRpYWxpc8OpIHBhciBsXCdhY3Rpdml0w6kgc3VyIGxlIHNpdGU8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcoQXV0b3Jpc2VyIHBsdXNpZXVycyB1dGlsaXNhdGV1cnMgcGFydGFnZWFudCBsYSBtw6ptZSBhZHJlc3NlIGVtYWlsKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKExcJ2FkcmVzc2UgZW1haWwgZXN0IGxlIG5vbSBkZSBsXCd1dGlsaXNhdGV1ciAtLSBOZSBwYXMgY29jaGVyIHNpIHZvdXMgY2hvaXNpc3NleiAiQXV0b3Jpc2VyIGxlcyBkb3VibG9ucyBkXCdlbWFpbCIgISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdBdXRvcmlzZXIgZGVzIGRlbWFuZGVzIG11bHRpcGxlcyBkZSBtb3QgZGUgcGFzc2Ugb3VibGnDqSZuYnNwOyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoQXV0b3Jpc2VyIGxlcyB1dGlsaXNhdGV1cnMgw6AgcmVkZW1hbmRlciB1bmUgcsOpaW5pdGlhbGlzYXRpb24gZHUgbW90IGRlIHBhc3NlLCBtYWxncsOpIHF1XCdpbHMgblwnYWllbnQgcGFzIHV0aWxpc8OpIHVuZSBwcsOpY8OpZGVudGUgZGVtYW5kZSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdVdGlsaXNlciBsZXMgcGVybWlzc2lvbnMgc3DDqWNpZmlxdWUgZGUgRkVVc2VycyA/Jm5ic3A7JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWxlbWVudCwgbGVzIHBlcm1pc3Npb25zIGRlIEZFVXNlcnMgc29udCBpZGVudGlxdWVzIGF1eCBwZXJtaXNzaW9ucyBkdSBwYW5uZWF1IGRcJ2FkbWluaXN0cmF0aW9uIHRlbCBxdWUgQWpvdXRlciB1biB1dGlsaXNhdGV1ciwgQWpvdXRlciB1bmUgZ3JvdXBlLCBldGMuIFNpIHZvdXMgc8OpbGVjdGlvbm5leiBjZXR0ZSBvcHRpb24sIGlsIHkgYXVyYSBkZXMgcGVybWlzc2lvbnMgZGlmZsOpcmVudGVzIHBvdXIgRkVVc2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgbGUgZmljaGllciBjaGFyZ8OpIChlcnJldXIgaW50ZXJuZSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdJbCB5IGEgZXUgdW4gcHJvYmzDqG1lIGF2ZWMgbGUgZmljaGllciBjaGFyZ8OpLiBWZXVpbGxleiByw6llc3NheWVyLic7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdWb3VzIG5cJ2F2ZXogcGFzIGVudHLDqSBkZSBub20gdXRpbGlzYXRldXInOwokbGFuZ1snZXJyb3JfbWlzc2luZ2VtYWlsJ10gPSAnVm91cyBuZSBkZXZleiBwYXMgZW50cmVyIHZvdHJlIGFkcmVzc2UgZW1haWwnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnVm91cyBuXCdhdmV6IHBhcyBlbnRyw6kgZGUgbW90IGRlIHBhc3NlJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdEw6ljb25uZXhpb24gdXRpbGlzYXRldXInOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnQ29ubmV4aW9uIHV0aWxpc2F0ZXVyJzsKJGxhbmdbJ2VkaXRwcm9wX2luZm9tc2cnXSA9ICc8Zm9udCBjb2xvcj0icmVkIj48Yj5BVFRFTlRJT04gOjwvYj4gZW4gY2hhbmdlYW50IHVuZSBwcm9wcmnDqXTDqSBxdWkgYSDDqXTDqSBhc3NpZ27DqWUgw6AgZGVzIGdyb3VwZXMsIHZvdXMgcG91dmV6IHBvdGVudGllbGxlbWVudCBkw6l0cnVpcmUgb3UgYWLDrm1lciB1biBzaXRlIGV4aXN0YW50IDxpPihlbiBwYXJ0aWN1bGllciBzaSB2b3VzIHLDqWR1aXNleiBsZXMgbG9uZ3VldXJzIGRlIGNoYW1wcywgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnQ2V0dGUgZm9uY3Rpb24gbmUgbWFyY2hlIHBhcyBzb3VzIFdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ05lIGNyw6lleiBwYXMgZGUgcHJvcHJpw6l0w6kgcG91ciB1dGlsaXNhdGV1ciAobm9tIGRcJ3V0aWxpc2F0ZXVyIGV0IG1vdCBkZSBwYXNzZSksIGNhciBjZWNpIGVzdCBpbmNsdXMgZGFucyBsZSBtb2R1bGUgRnJvbnRFbmRVc2Vycyc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRXhwb3J0ZXIgbGEgbGlzdGUgZGVzIHV0aWxpc2F0ZXVycyBhdSBmb3JtYXQgQ1NWJm5ic3A7JzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydGVyJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydGVyJzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW4nOwokbGFuZ1snZWRpdHByb3AnXSA9ICfDiWRpdGVyIGxhIHByb3ByacOpdMOpJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ0xvbmd1ZXVyIG1heGltYWxlJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdDcsOpw6knOwokbGFuZ1snc29ydGJ5J10gPSAnVHJpZXIgcGFyJm5ic3A7JzsKJGxhbmdbJ3NvcnQnXSA9ICdUcmkmbmJzcDsnOwokbGFuZ1sndXNlcnNpbmdyb3VwJ10gPSAnVXRpbGlzYXRldXJzIGRhbnMgbGUgZ3JvdXBlJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0xpbWl0ZXIgbGVzIHLDqXN1bHRhdHMgw6AnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnQXVjdW4gZW1haWwgdHJvdXbDqSBwb3VyIGNldCB1dGlsaXNhdGV1ci4gVm91cyBkZXZleiDDqXZlbnR1ZWxsZW1lbnQgY29udGFjdGVyIGxcJ2FkbWluaXN0cmF0ZXVyLic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBkdSBmb3JtdWxhaXJlIG1vdCBkZSBwYXNzZSBvdWJsacOpJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGR1IGZvcm11bGFpcmUgZGUgY2hhbmdlbWVudCBkZSBwYXJhbcOodHJlcyZuYnNwOyc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBvw7kgcmVkaXJpZ2VyIGxcJ3V0aWxpc2F0ZXVyIGFwcsOocyBxdVwnaWwgc2Ugc29pdCBjb25uZWN0w6kmbmJzcDsnOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIG/DuSByZWRpcmlnZXIgbFwndXRpbGlzYXRldXIgYXByw6hzIHF1XCdpbCBzZSBzb2l0IGTDqWNvbm5lY3TDqSZuYnNwOyc7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdPcmRyZSBkZSB0cmknOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnVW4gbm9tYnJlIGRcJ3V0aWxpc2F0ZXVycyBlc3QgZW4gY291cnMgZGUgcsOpaW5pdGlhbGlzYXRpb24gZGUgbW90cyBkZSBwYXNzZS4gQ2Ugbm9tYnJlIGVzdCBhY3R1ZWxsZW1lbnQgZGUgOic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1N1cHByaW1lciB0b3V0ZXMgbGVzIGVudHLDqWVzIHZpZWlsbGVzIGRlIHBsdXMgZFwndW5lIHNlbWFpbmUnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnU3VwcHJpbWVyIHRvdXRlcyBsZXMgZW50csOpZXMgdmllaWxsZXMgZGUgcGx1cyBkXCd1biBtb2lzJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ1N1cHByaW1lciB0b3V0ZXMgbGVzIGVudHLDqWVzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICfDinRlcy12b3VzIHPDu3IoZSkmbmJzcDs/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnVW4gY29kZSBpbnZhbGlkZSBhIMOpdMOpIGVudHLDqSwgdmV1aWxsZXogcsOpZXNzYXllcic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnTGUgY29kZSB0ZW1wb3JhaXJlIHBvdXIgdm90cmUgaWQgdXRpbGlzYXRldXIgblwnYSBwYXMgcHUgw6p0cmUgdHJvdXbDqSBkYW5zIGxhIGJhc2UgZGUgZG9ubsOpZXMnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdHYWJhcml0IHV0aWxpc8OpIHBvdXIgYWZmaWNoZXIgbGUgZm9ybXVsYWlyZSBkZSB2w6lyaWZpY2F0aW9uJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdHYWJhcml0IHV0aWxpc8OpIHBvdXIgbFwnZW1haWwgZW52b3nDqSBsb3JzIGRlIGxcJ291YmxpIGR1IG1vdCBkZSBwYXNzZSc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnVW5lIGRlbWFuZGUgZGUgcsOpaW5pdGlhbGlzYXRpb24gZGUgbW90IGRlIHBhc3NlIGEgw6l0w6kgc291bWlzZSBwb3VyIGNlIGNvbXB0ZSwgc29pdCBwYXIgdm91cy1tw6ptZSwgc29pdCBwYXIgcXVlbHF1XCd1biBkXCdhdXRyZS4gVsOpcmlmaWV6IHZvdHJlIGVtYWlsLCB2b3VzIHkgdHJvdXZlcmV6IGxlcyBpbnN0cnVjdGlvbnMgcG91ciBsYSByw6lpbml0aWFsaXNhdGlvbiBkZSB2b3RyZSBtb3QgZGUgcGFzc2UuJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJldXIgZGUgYmFzZSBkZSBkb25uw6llcyc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdWb3VzIHJlY2V2ZXogY2UgbWVzc2FnZSBjYXIgcXVlbHF1XCd1biAocGV1dC3DqnRyZSB2b3VzKSBhIGZhaXQgdW5lIGRlbWFuZGUgZGUgcsOpY3Vww6lyYXRpb24gZGUgbW90IGRlIHBhc3NlLiBTaSBjXCdlc3QgbGUgY2FzLCBsaXNleiBsZXMgaW5zdHJ1Y3Rpb25zIGNpLWRlc3NvdXMuIFNpIHZvdXMgbmUgc2F2ZXogcGFzIGRlIHF1b2kgaWwgc1wnYWdpdCBvdSBzaSBjZSBuXCdlc3QgcGFzIHZvdXMsIHZvdXMgcG91dmV6IHNpbXBsZW1lbnQgZWZmYWNlciBjZSBtZXNzYWdlIChjZWxhIG5cJ2F1cmEgYXVjdW5lIGNvbnPDqXF1ZW5jZSBzdXIgdm90cmUgY29tcHRlKS4gTm91cyB2b3VzIHJlbWVyY2lvbnMuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnQ29kZSc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdMZSBjb2RlIHN1aXZhbnQgYSDDqXTDqSBnw6luw6lyw6kgYXUgaGFzYXJkIHBvdXIgbGEgdsOpcmlmaWNhdGlvbiBkdSBjb21wdGUgdXRpbGlzYXRldXIuIExvcnNxdWUgdm91cyBjbGlxdWVyZXogc3VyIGxlIGxpZW4gY2ktZGVzc291cywgdm91cyB0cm91dmVyZXogdW4gY2hhbXAgZGFucyBsZXF1ZWwgZW50cmVyIGNlIGNvZGUuIE5vcm1hbGVtZW50LCBjZSBjaGFtcCBlc3QgcmVtcGxpIHBvdXIgdm91cywgbWFpcyBkYW5zIGxlIGNhcyBjb250cmFpcmUsIGxlIGNvZGUgZXN0IDonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdMZSBsaWVuIHN1aXZhbnQgdm91cyBhbcOobmUgYXUgc2l0ZSBvw7kgdm91cyBwb3VycmV6IGVudHJlciBsZSBjb2RlIGNpLWRlc3N1cywgZXQgcsOpaW5pdGlhbGlzZXIgdm90cmUgbW90IGRlIHBhc3NlIDonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ01vdCBkZSBwYXNzZSBvdWJsacOpJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnTGUgbW9kdWxlIENNU01haWxlciBuXCdhIHBhcyDDqXTDqSB0cm91dsOpJzsKJGxhbmdbJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCddID0gJ1VuIGVtYWlsIGEgw6l0w6kgZW52b3nDqSDDoCAlcyBhdmVjIGxlcyBpbnN0cnVjdGlvbnMgcG91ciBsYSByw6lpbml0aWFsaXNhdGlvbiBkdSBtb3QgZGUgcGFzc2UuIE1lcmNpJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnU2kgdm91cyBhdmV6IG91Ymxpw6kgdm90cmUgbW90IGRlIHBhc3NlLCB2ZXVpbGxleiBlbnRyZXIgdm90cmUgaWRlbnRpZmlhbnQgaWNpLCBldCBzaSBub3VzIGxlIHRyb3V2b25zLCB2b3VzIHJlY2V2cmV6IHVuIGVtYWlsIGF2ZWMgbGVzIGluc3RydWN0aW9ucyBwb3VyIGxhIHLDqWluaXRpYWxpc2F0aW9uIGR1IG1vdCBkZSBwYXNzZS4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdHYWJhcml0IHBvdXIgbFwnb3VibGkgZHUgbW90IGRlIHBhc3NlJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ0dhYmFyaXQgcG91ciBsYSByw6ljdXDDqXJhdGlvbiBkZSBsXCdpZGVudGlmaWFudCc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdMYSBwcm9wcmnDqXTDqSAlcyBuXCdhIHBhcyDDqXTDqSB0cm91dsOpZSc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAncHJvcHJpw6l0w6lzIHRyb3V2w6llcyc7CiRsYW5nWydhZGRwcm9wJ10gPSAnQWpvdXRlciB1bmUgcHJvcHJpw6l0w6knOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ1VuIGNoYW1wIHJlcXVpcyAoJXMpIGVzdCB2aWRlJzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnVmV1aWxsZXogZW50cmVyIGljaSB1biBub3V2ZWF1IG1vdCBkZSBwYXNzZSc7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ1ZvdXMgbmUgc2VtYmxleiBwYXMgw6p0cmUgY29ubmVjdMOpJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdQYXJhbcOodHJlcyc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ0VucmVnaXN0cmVtZW50JzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnQ2UgY29tcHRlIGVzdCBww6lyaW3DqSc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnRm9ybWF0IGRcJ2FkcmVzc2UgZW1haWwgaW52YWxpZGUnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdEYXRlIGRcJ2V4cGlyYXRpb24gaW52YWxpZGUuIEVzc2F5ZXogYXZlYyBhbm7DqWUgYW50w6lyaWV1cmUnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0lsIHkgYSBldSB1bmUgZXJyZXVyIGxvcnMgZGUgbGEgZMOpZmluaXRpb24gJXMgcG91ciBsXCd1dGlsaXNhdGV1ciAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ2lkIGRlIGdyb3VwZSAlcyBpbnZhbGlkZSc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ01hcnF1ZXVyIGRlIGNoYW1wIGNhY2jDqSZuYnNwOyc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnQ291bGV1ciBkZSBjaGFtcCBjYWNow6kmbmJzcDsnOwokbGFuZ1snaGlkZGVuJ10gPSAnQ2FjaMOpJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdVbmUgcHJvcHJpw6l0w6kgZHUgbcOqbWUgbm9tIGVzdCBkw6lqw6AgZMOpZmluaWUnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnQXVjdW5lIHByb3ByacOpdMOpIGTDqWZpbmllJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnQXVjdW4gcHJvcHJpw6l0w6kgblwnYSDDqXTDqSBzw6lsZWN0aW9ubsOpZSBwb3VyIGNlIGdyb3VwZSc7CiRsYW5nWydub2dyb3VwcyddID0gJ0F1Y3VuIGdyb3VwZSBkw6lmaW5pJzsKJGxhbmdbJ2dyb3Vwc2ZvdW5kJ10gPSAnR3JvdXBlcyB0cm91dsOpcyc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnTFwnYXBwYXJ0ZW5hbmNlIMOgIGF1IG1vaW5zIHVuIGdyb3VwZSBlc3QgcmVxdWlzZSc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnUmVxdWllcnQgbFwnYXBwYXJ0ZW5hbmNlIMOgIGF1IG1vaW5zIHVuIGdyb3VwZSZuYnNwOyc7CiRsYW5nWydiYWNrJ10gPSAnUmV0b3VyJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyBlc3QgdW4gY2hhbXAgcmVxdWlzJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNYXJxdWV1ciBkZSBjaGFtcHMgcmVxdWlzJm5ic3A7JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ01pc2UgZW4gw6l2aWRlbmNlIGRlcyBjaGFtcHMgcmVxdWlzIGVuJm5ic3A7JzsKJGxhbmdbJ25leHQnXSA9ICdTdWl2YW50JzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnVW4gZ3JvdXBlIGR1IG3Dqm1lIG5vbSBleGlzdGUgZMOpasOgJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnQ2hhbXAgcmVxdWlzJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnT3B0aW9ubmVsJzsKJGxhbmdbJ29mZiddID0gJ0TDqXNhY3RpdsOpJzsKJGxhbmdbJ3NpemUnXSA9ICdUYWlsbGUnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihUYWlsbGUgbWF4aW1hbGUgZFwndW5lIGRlcyBkaW1lbnNpb25zIGRlIGxcJ2ltYWdlIGVuIHBpeGVscyknOwokbGFuZ1snbGVuZ3RoJ10gPSAnTG9uZ3VldXInOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2FyYWN0w6hyZXMgZGFucyBsZSBjaGFtcCB0ZXh0ZSknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ09wdGlvbnMgbWVudSBkw6lyb3VsYW50LCBzw6lwYXLDqWVzIHBhciBkZXMgcmV0b3VycyDDoCBsYSBsaWduZS4gTGVzIHZhbGV1cnMgcGV1dmVudCDDqnRyZSBzw6lwYXLDqWVzIGR1IHRleHRlIHBhciBsZSBjYXJhY3TDqHJlID0uDQpFeCA6IEZlbW1lPWYnOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnTGFiZWwgZGVzIGJvdXRvbnMgUmFkaW8gc8OpcGFyw6lzIHBhciBkZXMgc2F1dHMgZGUgbGlnbmUuIExlcyB2YWxldXJzIHBldXZlbnQgw6p0cmUgc8OpcGFyw6lzIGR1IHRleHRlIHBhciBsZSBjYXJhY3TDqHJlID0uDQpFeGVtcGxlIDogRmVtbWUgPSBmJzsKJGxhbmdbJ3Byb21wdCddID0gJ0ludml0ZSBkZSBzYWlzaWUnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnU3RhdHV0IGR1IGNoYW1wJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ0RlbWFuZGUgbG9ycyBkZSBsYSByw6ljdXDDqXJhdGlvbiBkZTxici8+bFwnaWRlbnRpZmlhbnQnOwokbGFuZ1sndGV4dCddID0gJ1RleHRlJzsKJGxhbmdbJ2NoZWNrYm94J10gPSAnQ2FzZSDDoCBjb2NoZXInOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdMaXN0ZSBtdWx0aS1zw6lsZWN0aW9uJzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ0JvdXRvbnMgUmFkaW8nOwokbGFuZ1snaW1hZ2UnXSA9ICdJbWFnZcKgJzsKJGxhbmdbJ2VtYWlsJ10gPSAnQWRyZXNzZSBlbWFpbMKgJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnQ2hhbXAgZGUgdGV4dGUnOwokbGFuZ1snZHJvcGRvd24nXSA9ICdNZW51IGTDqXJvdWxhbnQnOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdCaWVudmVudWUnOwokbGFuZ1snbG9nb3V0J10gPSAnRMOpY29ubmV4aW9uJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdVdGlsaXNlciBsZSBub20gZGUgY2UgZ3JvdXBlJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ0NoYW5nZW1lbnQgZGUgbWVzIHBhcmFtw6h0cmVzJzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnTGEgY29ubmV4aW9uIGEgw6ljaG91w6kgOiBpZGVudGlmaWFudCBvdSBtb3QgZGUgcGFzc2UgaW52YWxpZGUgPyc7CiRsYW5nWydsb2dpbiddID0gJ1NcJ2lkZW50aWZpZXInOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdUZXh0ZSBkdSBib3V0b24gZGUgY29ubmV4aW9uJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ0lkZW50aWZpYW50JzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0FkcmVzc2UgZW1haWzCoCc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICdNb3QgZGUgcGFzc2XCoCc7CiRsYW5nWydwcm9tcHRfcmVtZW1iZXJtZSddID0gJ01lIG3DqW1vcmlzZXIgc3VyIGNldCBvcmRpbmF0ZXVyJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnU1wnZW5yZWdpc3RyZXInOwokbGFuZ1snZm9yZ290cHcnXSA9ICdNb3QgZGUgcGFzc2Ugb3VibGnDqSA/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0TDqXRhaWxzIGRcJ2lkZW50aWZpY2F0aW9uIG91Ymxpw6lzID8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdQYXIgZMOpZmF1dCc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ0dhYmFyaXQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0NldCBpZGVudGlmaWFudCAoJXMpIGV4aXN0ZSBkw6lqw6AnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ1V0aWxpc2VyIFNNVFAgcG91ciBsYSB2YWxpZGF0aW9uIGRlcyBhZHJlc3NlcyBlbWFpbCZuYnNwOz8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnTG9uZ3VldXIgbWluaW1hbGUgZHUgbW90IGRlIHBhc3NlJm5ic3A7JzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ0xvbmd1ZXVyIG1heGltYWxlIGR1IG1vdCBkZSBwYXNzZSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdMb25ndWV1ciBtaW5pbWFsZSBkZSBsXCdpZGVudGlmaWFudCZuYnNwOyc7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdMb25ndWV1ciBtYXhpbWFsZSBkZSBsXCdpZGVudGlmaWFudCZuYnNwOyc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdFeHBpcmF0aW9uIGRlIHNlc3Npb24gKHNlY29uZGVzKSZuYnNwOyc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnVXRpbGlzZXIgbGVzIGNvb2tpZXMgcG91ciBnYXJkZXIgbGVzIGNvbm5leGlvbnMgYWN0aXZlcyZuYnNwOyc7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ0F1dG9yaXNlIGxcJ2VucmVnaXN0cmVtZW50IHBhciBlbWFpbCc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnR3JvdXBlIHBhciBkw6lmYXV0IHBvdXIgbGVzIG5vdXZlYXV4IHV0aWxpc2F0ZXVycyZuYnNwOyc7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ0dhYmFyaXQgcG91ciBsZSBjaGFuZ2VtZW50IGRlcyBwYXJhbcOodHJlcyc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnTGVzIG1vdHMgZGUgcGFzc2UgbmUgY29uY29yZGVudCBwYXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnSWRlbnRpZmlhbnQgbm9uIHZhbGlkZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdNb3QgZGUgcGFzc2Ugbm9uIHZhbGlkZSc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdJRCB1dGlsaXNhdGV1ciBub24gdHJvdXbDqSc7CiRsYW5nWydlZGl0dXNlciddID0gJ8OJZGl0ZXIgbFwndXRpbGlzYXRldXInOwokbGFuZ1sndmFsaWQnXSA9ICdWYWxpZGUnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdJZGVudGlmaWFudCc7CiRsYW5nWydzdGF0dXMnXSA9ICdTdGF0dXQnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnQ2V0IHV0aWxpc2F0ZXVyIG5cJ2VzdCBtZW1icmUgZFwnYXVjdW4gZ3JvdXBlJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdBdWN1bmUgcHJvcHJpw6l0w6knOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdUZW50ZSBkXCdpbXBvcnRlciBkZXMgcHJvcHJpw6l0w6lzIMOgIGRvdWJsZSc7CiRsYW5nWyd2YWx1ZSddID0gJ1ZhbGV1cic7CiRsYW5nWydncm91cHMnXSA9ICdHcm91cGVzwqAnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1Byb3ByacOpdMOpcyc7CiRsYW5nWydwcm9wbmFtZSddID0gJ05vbSBkZSBwcm9wcmnDqXTDqSc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdWYWxldXIgZGUgbGEgcHJvcHJpw6l0w6knOwokbGFuZ1snYWRkJ10gPSAnQWpvdXRlcic7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdG9yaXF1ZSc7CiRsYW5nWydlZGl0J10gPSAnw4lkaXRlcic7CiRsYW5nWydleHBpcmVzJ10gPSAnRXhwaXJlwqAnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3DDqWNpZmlleiB1bmUgZGF0ZSc7CiRsYW5nWycxMmhycyddID0gJzEyIGhldXJlcyc7CiRsYW5nWycyNGhycyddID0gJzI0IGhldXJlcyc7CiRsYW5nWyc0OGhycyddID0gJzQ4IGhldXJlcyc7CiRsYW5nWycxd2VlayddID0gJzEgc2VtYWluZSc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIHNlbWFpbmVzJzsKJGxhbmdbJzFtb250aCddID0gJzEgbW9pcyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBtb2lzJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IG1vaXMnOwokbGFuZ1snMXllYXInXSA9ICcxIGFuJzsKJGxhbmdbJ25ldmVyJ10gPSAnSmFtYWlzJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ0xlIG1vZHVsZSBhIMOpdMOpIGluc3RhbGzDqSBhdmVjIHN1Y2PDqHMuPGJyLz5Bc3N1cmV6LXZvdXMgZGUgZMOpZmluaXIgbGEgcGVybWlzc2lvbiAiTW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIi4gRGUgcGx1cywgbm91cyB2b3VzIHJlY29tbWFuZG9ucyBkXCdpbnN0YWxsZXIgbGUgbW9kdWxlIENhcHRjaGEuIExvcnNxdWUgY2VsdWktY2kgZXN0IGluc3RhbGzDqSwgbGEgdmFsaWRhdGlvbiBkZSBsXCdpbWFnZSBjYXB0Y2hhIHNlcmEgcmVxdWlzZSBwb3VyIHNlIGNvbm5lY3RlciwgZW4gcGx1cyBkZSBsXCdpZGVudGlmaWFudCBldCBkdSBtb3QgZGUgcGFzc2UuIENlY2kgZXN0IGNvbnNlaWxsw6kgcG91ciDDqXZpdGVyIGxlcyBhdHRhcXVlcy4NCg0KPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBMZSBwYXJhbcOodHJlIFwnbm9jYXB0Y2hhXCcgcGV1dCDDqnRyZSB1dGlsaXPDqSBwb3VyIGTDqXNhY3RpdmVyIGNldHRlIGZvbmN0aW9uIG3Dqm1lIGxvcnNxdWUgbGUgbW9kdWxlIENhcHRjaGEgZXN0IGluc3RhbGzDqS4NCg0KTGUgbW9kdWxlIFNlbGZSZWdpc3RyYXRpb24gZG9pdCDDqnRyZSBpbnN0YWxsw6kgcG91ciBxdWUgbGVzIHZpc2l0ZXVycyBwdWlzc2VudCBzXCdpbnNjcmlyZSBzdXIgdm90cmUgc2l0ZS4gU2lub24sIHZvdXMgZGV2cmV6IGxlcyBlbnJlZ2lzdHJlciB2b3VzLW3Dqm1lLic7CiRsYW5nWydwYXNzd29yZCddID0gJ01vdCBkZSBwYXNzZcKgJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnUmUtdGFwZXogbGUgbW90IGRlIHBhc3NlwqAnOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ1VuIGdyb3VwZSBkdSBtw6ptZSBub20gZXhpc3RlIGTDqWrDoCc7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICfDiWRpdGVyIGxlIGdyb3VwZSc7CiRsYW5nWydzdWJtaXQnXSA9ICdWYWxpZGVyJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0FubnVsZXInOwokbGFuZ1snZGVsZXRlJ10gPSAnU3VwcHJpbWVyJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnw4p0ZXMtdm91cyBzw7tyKGUpIHF1ZSBjZXR0ZSBwcm9wcmnDqXTDqSBlc3QgY29ycmVjdGUgcG91ciBjZSBncm91cGUmbmJzcDs/XFxuRMOpc2FjdGl2ZXIgdW5lIHByb3ByacOpdMOpIG5cJ2VmZmFjZXJhIHBhcyBsZXMgZW50csOpZXMgZGFucyBsYSB0YWJsZSBkZXMgcHJvcHJpw6l0w6lzIHBvdXIgY2UgZ3JvdXBlL3V0aWxpc2F0ZXVyLiBUb3V0IGF1IHBsdXMsIGxlcyBwcm9wcmnDqXTDqXMgbmUgc2Vyb250IHBhcyBkaXNwb25pYmxlcy4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ8OKdGVzLXZvdXMgc8O7cihlKSBkZSB2b3Vsb2lyIHN1cHByaW1lciBjZSBncm91cGUmbmJzcDs/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICfDinRlcy12b3VzIHPDu3IoZSkgZGUgdm91bG9pciBjb21wbMOodGVtZW50IHN1cHByaW1lciBjZXR0ZSBwcm9wcmnDqXTDqT9cXG5DZWxhIHN1cHByaW1lcmEgdG91dGVzIGxlcyBlbnRyw6llcyBwb3VyIGNldHRlIHByb3ByacOpdMOpJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1BhcmFtw6h0cmVzIGluc3VmZmlzYW50cyc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdOb20nOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibMOobWUgbG9ycyBkZSBsXCdham91dCBkXCd1bmUgcHJvcHJpw6l0w6knOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2Jsw6htZSBsb3JzIGRlIGxcJ2Fqb3V0IGRcJ3VuZSByZWxhdGlvbiBkZSBncm91cGUnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmzDqG1lIGxvcnMgZGUgbFwnYWpvdXQgZFwndW4gZ3JvdXBlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmzDqG1lIGxvcnMgZGUgbFwnYWpvdXQgZFwndW4gdXRpbGlzYXRldXIgw6AgdW4gZ3JvdXBlJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibMOobWUgbG9ycyBkZSBsYSBzdXBwcmVzc2lvbiBkXCd1bmUgcHJvcHJpw6l0w6knOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdJbXBvc3NpYmxlIGRlIHRyb3V2ZXIgdW5lIGFkcmVzc2UgZW1haWwnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ1BhcyBkXCdhY2PDqHMgZW4gw6ljcml0dXJlIGRhbnMgbGUgZG9zc2llciBkZSBkZXN0aW5hdGlvbic7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnUGFyYW3DqHRyZXMgbm9uIHZhbGlkZXMnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdBdWN1biBncm91cGUgdHJvdXbDqSc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0FwcGxpcXVlcic7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cmUmbmJzcDsnOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0lkZW50aWZpYW50IChleHByZXNzaW9uIHLDqWd1bGnDqHJlKSZuYnNwOyc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Rlc2NyaXB0aW9uJzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ05vbSBkdSBncm91cGUnOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWNjw6hzIHJlZnVzw6knOwokbGFuZ1snZXJyb3InXSA9ICdFcnJldXInOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBam91dGVyIHVuIGdyb3VwZSc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydGVyIGxlIGdyb3VwZSc7CiRsYW5nWydhZGR1c2VyJ10gPSAnQWpvdXRlciB1biB1dGlsaXNhdGV1cic7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVXRpbGlzYXRldXJzIHRyb3V2w6lzJzsKJGxhbmdbJ2dyb3VwJ10gPSAnR3JvdXBlJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnU8OpbGVjdGlvbm5lciBsZSBncm91cGUnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnR2FiYXJpdCBkXCdlbnJlZ2lzdHJlbWVudCc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdHYWJhcml0IGRlIGTDqWNvbm5leGlvbic7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ0dhYmFyaXQgZGUgY29ubmV4aW9uJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHLDqWbDqXJlbmNlcyc7CiRsYW5nWyd1c2VycyddID0gJ1V0aWxpc2F0ZXVycyc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdHZXN0aW9uIGRlcyB1dGlsaXNhdGV1cnMgZHUgc2l0ZSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0fDqHJlIGxlcyB1dGlsaXNhdGV1cnMgZHUgc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnUGFnZSBwYXIgZMOpZmF1dCc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnRGVybmnDqHJlIHBhZ2UgYWNjw6lkw6llJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ0F1dHJlIHBhZ2UmbmJzcDs6JzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdWZXVpbGxleiBlbnRyZXIgbGUgdGV4dGUgZGUgbFwnaW1hZ2UnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/hu_HU.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3BhZ2V0eXBlX3VuYXV0aG9yaXplZCddID0gJ05lbSB2YWd5IGZlbGhhdGFsbWF6dmEsIGhvZ3kgZXp0IGEgdGFydGFsbWF0IG1lZ24mZWFjdXRlO3pkJzsKJGxhbmdbJ2luZm9fY29udGVudHBhZ2VfZ3JvdXBsaXN0J10gPSAnU3BlY2lmeSBhIGxpc3Qgb2YgRkVVIGdyb3VwcyB0aGF0IG1heSBoYXZlIGFjY2VzcyB0byB0aGlzIHBhZ2UuICBTZWxlY3Rpbmcgbm8gZ3JvdXBzIHdpbGwgYWxsb3cgYW55IHVzZXIgbG9nZ2VkIGluIHRvIEZFVSB0byB2aWV3IHRoZSBwYWdlJzsKJGxhbmdbJ3BhZ2V0eXBlX3NldHRpbmdzJ10gPSAnViZlYWN1dGU7ZGV0dCBvbGRhbCBiZSZhYWN1dGU7bGwmaWFjdXRlO3QmYWFjdXRlO3NhJzsKJGxhbmdbJ3BhZ2V0eXBlX2dyb3VwcyddID0gJ01lZ2VuZ2VkZXR0IGNzb3BvcnRvayc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX2dyb3VwcyddID0gJ1NlbGVjdCB0aGUgZ3JvdXBzIHRoYXQgYXJlIChieSBkZWZhdWx0KSBhbGxvd2VkIHRvIHZpZXcgcHJvdGVjdGVkIHBhZ2VzLiAgQW4gZWRpdG9yIHdpdGggdGhlICZxdW90O01hbmFnZSBBbGwgQ29udGVudCZxdW90OyBwZXJtaXNzaW9uIGNhbiBvdmVycmlkZSB0aGlzIGZvciBlYWNoIHBhZ2UnOwokbGFuZ1sncGFnZXR5cGVfYWN0aW9uJ10gPSAnQWN0aW9uIGZvciBpbnN1ZmZpY2llbnQgYWNjZXNzJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfYWN0aW9uJ10gPSAnU3BlY2lmeSB0aGUgYmVoYXZpb3IgZm9yIHBlb3BsZSBhY2Nlc3NpbmcgdGhpcyBwYWdlIHdpdGhvdXQgc3VmZmljaWVudCBwZXJtaXNzaW9uLiAgWW91IGNhbiBlaXRoZXIgcmVkaXJlY3QgdG8gYSBzcGVjaWZpZWQgcGFnZSwgb3IgZGlzcGxheSB0aGUgbG9naW4gZm9ybSc7CiRsYW5nWydzaG93bG9naW5mb3JtJ10gPSAnQmVsJmVhY3V0ZTtwxZEgxbFybGFwIG11dGF0JmFhY3V0ZTtzYSc7CiRsYW5nWydyZWRpcmVjdCddID0gJ0F0aXImYWFjdXRlO255JmlhY3V0ZTt0JmFhY3V0ZTtzIGVneSBvbGRhbHJhJzsKJGxhbmdbJ3BhZ2V0eXBlX3JlZGlyZWN0dG8nXSA9ICcmQWFjdXRlO3RpciZhYWN1dGU7bnkmaWFjdXRlO3QmYWFjdXRlO3MgaWRlJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfcmVkaXJlY3R0byddID0gJ1NwZWNpZnkgdGhlIHBhZ2UgdG8gcmVkaXJlY3QgdG8uICBJZiB5b3Ugc2VsZWN0IG5vbmUsIGFuZCB0aGUgYWN0aW9uIGlzIHNldCB0byAmcXVvdDtyZWRpcmVjdCZxdW90OyB0aGUgdXNlciB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgbWVzc2FnZSBpbmRpY2F0aW5nIHRoYXQgdGhleSBkbyBub3QgaGFjZSBhY2Nlc3MgdG8gdGhlIHBhZ2UnOwokbGFuZ1sncGVybWlzc2lvbnMnXSA9ICdFbmdlZCZlYWN1dGU7bHllayc7CiRsYW5nWydmZXVfcHJvdGVjdGVkX3BhZ2UnXSA9ICdWJmVhY3V0ZTtkZXR0IHRhcnRhbG9tJzsKJGxhbmdbJ3Byb21wdF92aWV3cHJvcHMnXSA9ICdTZWxlY3QgQWRkaXRpb25hbCBQcm9wZXJ0aWVzIHRvIFZpZXcnOwokbGFuZ1sndmlldyddID0gJ01lZ3Rla2ludCZlYWN1dGU7cyc7CiRsYW5nWydpbmZvX2lnbm9yZV91c2VyaWQnXSA9ICdJZiBjaGVja2VkIHRoZSBpbXBvcnQgcm91dGluZSB3aWxsIGF0dGVtcHQgdG8gYWRkIHVzZXJzIGluZGVwZW5kYW50IG9mIHRoZSB1c2VyaWQgY29sdW1uLiAgSWYgYSB1c2VyIHdpdGggdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZSBpbXBvcnQgZmlsZSBhbHJlYWR5IGV4aXN0cywgYW4gZXJyb3Igd2lsbCBiZSBnZW5lcmF0ZWQnOwokbGFuZ1snaWdub3JlX3VzZXJpZCddID0gJ0lnbm9yZSBVc2VySUQgQ29sdW1uIG9uIEltcG9ydCc7CiRsYW5nWydleHBvcnRfcGFzc2hhc2gnXSA9ICdFeHBvcnQgdGhlIHBhc3N3b3JkIGhhc2ggdG8gdGhlIGZpbGUnOwokbGFuZ1snaW5mb19leHBvcnRfcGFzc2hhc2gnXSA9ICdUaGUgcGFzc3dvcmQgaGFzaCBpcyBvbmx5IHVzZWZ1bCBpZiB0aGUgcGFzc3dvcmQgc2FsdCBvbiB0aGUgaW1wb3J0IGhvc3QgaXMgaWRlbnRpY2FsIHRvIHRoYXQgb2YgdGhlIGV4cG9ydCBob3N0JzsKJGxhbmdbJ2Vycm9yX2FkanVzdHNhbHQnXSA9ICdUaGUgcGFzc3dvcmQgc2FsdCBjYW5ub3QgYmUgYWRqdXN0ZWQnOwokbGFuZ1sncHJvbXB0X3B3c2FsdCddID0gJ1Bhc3N3b3JkIFNhbHQnOwokbGFuZ1snaW5mb19wd3NhbHQnXSA9ICdGcm9udEVuZFVzZXJzIHNhbHRzIGFsbCBwYXNzd29yZHMgd2l0aCB0aGlzIGtleSB3aGljaCBpcyBjcmVhdGVkIHVwb24gaW5zdGFsbC4gIE9uY2UgdXNlcnMgaGF2ZSBiZWVuIGFkZGVkIHRvIHRoZSBkYXRhYmFzZSB0aGUgc2FsdCBjYW5ub3QgYmUgY2hhbmdlZC4gVGhlIHNhbHQgbWF5IGJlIGVtcHR5IGZvciBvbGRlciBpbnN0YWxscy4nOwokbGFuZ1snYWR2YW5jZWRfc2V0dGluZ3MnXSA9ICdBZHZhbmNlZCBTZXR0aW5ncyc7CiRsYW5nWydpbmZvX3Nlc3Npb250aW1lb3V0J10gPSAnU3BlY2lmeSB0aGUgbnVtYmVyIG9mIHNlY29uZHMgYmVmb3JlIGFuIGluYWN0aXZlIHVzZXIgaXMgYXV0b21hdGljYWxseSBsb2dnZWQgb3V0IG9mIHRoZSB3ZWJzaXRlJzsKJGxhbmdbJ3Byb21wdF9leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ1VzZXIgRXhwaXJ5IEludGVydmFsJzsKJGxhbmdbJ2luZm9fZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdTcGVjaWZ5IGEgdmFsdWUgKGluIHNlY29uZHMpIHRoYXQgaW5kaWNhdGVzIGhvdyBvZnRlbiB0aGUgc3lzdGVtIHNob3VsZCBmb3JjZSB1c2VycyB3aG9zIHNlc3Npb24gaGFzIGV4cGlyZWQgdG8gYmUgbG9nZ2VkIG91dC4gIFQmcXVvdDtoaXMgaXMgYW4gb3B0aW1pemF0aW9uIHRvIHNhdmUgZGF0YWJhc2UgcXVlcmllcy4gIElmIGxlZnQgZW1wdHkgb3Igc2V0IHRvIDAgZXhwaXJ5IHdpbGwgYmUgcGVyZm9ybWVkIG9uIGV2ZXJ5IHJlcXVlc3QuJzsKJGxhbmdbJ21zZ19zZXR0aW5nc2NoYW5nZWQnXSA9ICdZb3VyIHNldHRpbmdzIHdlcmUgc3VjY2Vzc2Z1bGx5IHVwZGF0ZWQnOwokbGFuZ1snZm9yY2VkbG9nb3V0dGFza19kZXNjJ10gPSAnRm9yY2UgdXNlcnMgdG8gbG9nb3V0IGF0IHJlZ3VsYXIgaW50ZXJ2YWxzJzsKJGxhbmdbJ3Byb21wdF9mb3JjZWxvZ291dF90aW1lcyddID0gJ1RpbWVzIGZvciBmb3JjZWQgbG9nb3V0JzsKJGxhbmdbJ2luZm9fZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICdTcGVjaWZ5IGEgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgdGltZXMgbGlrZSBISDpNTSxISDpNTSB3aGVyZSB1c2VycyB3aWxsIGJlIGZvcmNpYmx5IGxvZ2dlZCBvdXQuIE5vdGUsIHRoaXMgdXNlcyB0aGUgcHN1ZWRvY3JvbiBtZWNoYW5pc20gc28geW91IG11c3QgYmUgc3VyZSB0aGF0IHRoZSB0aW1lcyBlbnRlcmVkIGhlcmUgd2lsbCBjb2luY2lkZSByZWFzb25hYmx5IHdpdGggeW91ciAmcXVvdDtwc2V1ZG9jcm9uIGdyYW51bGFyaXR5JnF1b3Q7IGFuZCB0aGF0IHN1ZmZpY2llbnQgcmVxdWVzdHMgd2lsbCBvY2N1ciB0byB5b3VyIHdlYnNpdGUgdG8gZW5zdXJlIHRoYXQgcHNldWRvY3JvbiBpcyBleGVjdXRlZC4nOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdFeGNsdWRlIHVzZXJzIHRoYXQgaGF2ZSBiZWVuIGFjdGl2ZSBpbiA8ZW0+KG1pbnV0ZXMpPC9lbT4nOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF9zZXNzaW9uYWdlJ10gPSAnSWYgc3BlY2lmaWVkLCBhbnkgdXNlcnMgdGhhdCBoYXZlIGJlZW4gYWN0aXZlIGluIHRoaXMgbnVtYmVyIG9mIHNlY29uZHMgd2lsbCBub3QgYmUgZm9yY2libHkgbG9nZ2VkIG91dCc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZSddID0gJ0JpenRvcyB0Jm91bWw7ciZvdW1sO2xuaSBha2Fyb2QgJXMgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO3Q/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlZXh0ZW5zaW9uJ10gPSAnVGhlIHVwbG9hZGVkIGZpbGUgZG9lcyBub3QgbWF0Y2ggdGhlIGxpc3Qgb2YgYWxsb3dlZCBmaWxlIHR5cGVzJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdBbGwgZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlIGhhcyBiZWVuIGRlbGV0ZWQnOwokbGFuZ1snaW5mb19lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnSWYgZW5hYmxlZCwgdGhpcyBtb2R1bGUgd2lsbCBsaXN0ZW4gdG8gZXZlbnRzIGZyb20gdGhlIEVjb21tZXJjZSBzdWl0ZS4gIFRoZSBmb2xsb3dpbmcgc2V0dGluZ3Mgb25seSBoYXZlIGVmZmVjdCBpZiB0aGlzIHNldHRpbmcgaXMgZW5hYmxlZC4nOwokbGFuZ1sncHJvbXB0X2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdMaXN0ZW4gdG8gT3JkZXIgRXZlbnRzJzsKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ1RoZSBmb2xsb3dpbmcgc2V0dGluZ3Mgb25seSBhcHBseSBpZiB1c2luZyBzZWxmIHJlZ2lzdHJhdGlvbiBhbmQgYWxsb3dpbmcgZm9yIHBhaWQgcmVnaXN0cmF0aW9uJzsKJGxhbmdbJ25vbmUnXSA9ICdOb25lJzsKJGxhbmdbJ2RlbGV0ZV91c2VyJ10gPSAnRmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlOyB0Jm91bWw7cmwmZWFjdXRlO3NlJzsKJGxhbmdbJ2V4cGlyZV91c2VyJ10gPSAnRXhwaXJlIFVzZXInOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmNhbmNlbGxlZCddID0gJ0FjdGlvbiB0byBwZXJmb3JtIHdoZW4gYSBzdWJzY3JpcHRpb24gb3JkZXIgaXMgY2FuY2VsbGVkJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJkZWxldGVkJ10gPSAnQWN0aW9uIHRvIHBlcmZvcm0gd2hlbiBhIHN1YnNjcmlwdGlvbiBvcmRlciBpcyBkZWxldGVkJzsKJGxhbmdbJ2Vjb21tZXJjZV9zZXR0aW5ncyddID0gJ0Uta2VyZXNrZWRlbGVtIGJlJmFhY3V0ZTtsbCZpYWN1dGU7dCZhYWN1dGU7c29rJzsKJGxhbmdbJ3NlY3VyZWZpZWxkbWFya2VyJ10gPSAnQml6dG9ucyZhYWN1dGU7Z29zIG1lesWRIGplbHrFkSc7CiRsYW5nWydzZWN1cmVmaWVsZGNvbG9yJ10gPSAnQml6dG9ucyZhYWN1dGU7Z29zIG1lesWRIHN6JmlhY3V0ZTtuJzsKJGxhbmdbJ3Byb21wdF9lbmNyeXB0J10gPSAnVCZhYWN1dGU7cm9sZCBlenQgYXogYWRhdG90IHRpdGtvcyZpYWN1dGU7dHZhIGF6IGFkYXRiJmFhY3V0ZTt6aXNiYW4nOwokbGFuZ1snZXJyb3Jfbm90c3VwcG9ydGVkJ10gPSAnVGhlIGNob3NlbiBvcHRpb24gaXMgbm90IHN1cHBvcnRlZCBnaXZlbiB5b3VyIGN1cnJlbnQgY29uZmlndXJhdGlvbic7CiRsYW5nWydhdWRpdF91c2VyX2NyZWF0ZWQnXSA9ICdGZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7IGF1dG9tYXRpa3VzYW5sJmVhY3V0ZTt0cmVob3p2YSc7CiRsYW5nWydpbmZvX2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdJZiBhIHVzZXIgaXMgYXV0aGVudGljYXRlZCBieSBhbiBleHRlcm5hbCBhdXRoZW50aWNhdGlvbiBtb2R1bGUgYnV0IGlzIG5vdCBrbm93biBpbiB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgc2hvdWxkIGFuIEZFVSBhY2NvdW50IGJlIGNyZWF0ZWQgYXV0b21hdGljYWxseT8nOwokbGFuZ1sncHJvbXB0X2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdBdXRvbWF0aWNhbGx5IENyZWF0ZSBVbmtub3duIFVzZXJzJzsKJGxhbmdbJ2Rpc3BsYXlfc2V0dGluZ3MnXSA9ICdLaWplbHomZWFjdXRlO3NpIGJlJmFhY3V0ZTtsbCZpYWN1dGU7dCZhYWN1dGU7c29rJzsKJGxhbmdbJ2luZm9fc3RkX2F1dGhfc2V0dGluZ3MnXSA9ICdBIGsmb3VtbDt2ZXRrZXrFkSBiJmFhY3V0ZTtsbCZpYWN1dGU7dCZhYWN1dGU7c29rIGNzYWsgYWtrb3IgJmVhY3V0ZTtydiZlYWN1dGU7bnllc2VrIGhhIGEgJmFtcDtxdW90O0JlJmVhY3V0ZTtwJmlhY3V0ZTt0ZXR0IGF6b25vcyZpYWN1dGU7dCZhYWN1dGU7cyZhbXA7cXVvdDstdCBoYXN6biZhYWN1dGU7bGp1ay4nOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3R1biddID0gJ1NlbGVjdGluZyBObyB3aWxsIGRpc2FibGUgdGhlIGFiaWxpdHkgZm9yIGEgdXNlciB0byByZXF1ZXN0IGxvc3QgbG9naW4gaW5mb3JtYXRpb24sIGlycmVzcGVjdGl2ZSBvZiBvdGhlciBzZXR0aW5ncyc7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHB3J10gPSAnU2VsZWN0aW5nIE5vIHdpbGwgZGlzYWJsZSB0aGUgYWJpbGl0eSBmb3IgYSB1c2VyIHRvIGEgcGFzc3dvcmQgcmVzZXQsIGlycmVzcGVjdGl2ZSBvZiBvdGhlciBzZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0dW4nXSA9ICdFbmdlZGQgbWVnIGEgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO2tuYWssIGhvZ3kgayZlYWN1dGU7cmomZWFjdXRlO2sgYSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7bmV2JnV1bWw7a2V0JzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3RwdyddID0gJ0VuZ2VkZCBtZWcgYSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7a25haywgaG9neSBqZWxzeiZvYWN1dGU7Y3NyJmVhY3V0ZTt0IGsmZWFjdXRlO3JqZW5layc7CiRsYW5nWydhdXRoX3NldHRpbmdzJ10gPSAnQXpvbm9zJmlhY3V0ZTt0JmFhY3V0ZTtzaSBiZSZhYWN1dGU7bGwmaWFjdXRlO3QmYWFjdXRlO3Nvayc7CiRsYW5nWydhdXRoZW50aWNhdGlvbiddID0gJ0JlJmVhY3V0ZTtwJmlhY3V0ZTt0ZXR0IGF6b25vcyZpYWN1dGU7dCZhYWN1dGU7cyc7CiRsYW5nWydhdXRoX2J1aWx0aW4nXSA9ICdGRVUgYWxhcHZldMWRIGF6b25vcyZpYWN1dGU7dCZhYWN1dGU7cyc7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F6b25vcyZpYWN1dGU7dCZhYWN1dGU7c2kgbW9kdWwvbSZvYWN1dGU7ZHN6ZXInOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ0EgRnJvbnRlbmRVc2VycyBtb2R1bCBrJnV1bWw7bCZvdW1sO25ib3rFkSBhem9ub3MmaWFjdXRlO3QmYWFjdXRlO3NpIG0mb2FjdXRlO2RzemVyZWtldCBpcyB0JmFhY3V0ZTttb2dhdCwgdiZhYWN1dGU7bHRveiZvYWN1dGU7IGsmZWFjdXRlO3Blc3MmZWFjdXRlO2dla2tlbC4gIEJpem9ueW9zIGZ1bmtjaW9uYWxpdCZhYWN1dGU7cyBuZW0gZm9nIG3FsWsmb3VtbDtkbmkgdmFneSBraSBsZXN6IGthcGNzb2x2YSBtaWtvciBuZW0gYSBiZSZlYWN1dGU7cCZpYWN1dGU7dGV0dCBhem9ub3MmaWFjdXRlO3QmYWFjdXRlO3N0IGhhc3puJmFhY3V0ZTtsb2QuJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnQSAlcy1uYWsobmVrKSBtZWdhZG90dCAmZWFjdXRlO3J0JmVhY3V0ZTtrIG0mYWFjdXRlO3IgaGFzem4mYWFjdXRlO2xhdGJhbiB2YW4gZWd5IG0mYWFjdXRlO3NpayBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7ICZhYWN1dGU7bHRhbCc7CiRsYW5nWyd1bmlxdWUnXSA9ICdFZ3llZGknOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnQSAlcy1uYWsobmVrKSAoJXMpIG1lZ2Fkb3R0ICZlYWN1dGU7cnQmZWFjdXRlO2sgbmVtIGVneWVkaSc7CiRsYW5nWydwcm9tcHRfZm9yY2VfdW5pcXVlJ10gPSAnRm9yY2UgdmFsdWVzIG9mIHRoaXMgcHJvcGVydHkgdG8gYmUgdW5pcXVlIGFjcm9zcyBhbGwgdXNlciBhY2NvdW50cyc7CiRsYW5nWydoZWxwX3JldHVybmxhc3QnXSA9ICdVc2VkIHdpdGggdGhlIGxvZ2luIGFuZCBsb2dvdXQgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIGlmIHNwZWNpZmllZCB3aWxsIGluZGljYXRlIHRoYXQgdGhlIHVzZXIgc2hvdWxkIGJlIHJldHVybmVkIHRvIHRoZSBwYWdlIChieSB1cmwpIHRoYXQgdGhlIHVzZXIgd2FzIHZpZXdpbmcgYmVmb3JlIHRoZSBhY3Rpb24gb2NjdXJyZWQuICBUaGlzIHBhcmFtZXRlciB3aWxsIG92ZXJyaWRlIHRoZSByZWRpcmVjdCBwcmVmZXJlbmNlcywgYW5kIHRoZSByZXR1cm50byBwYXJhbWV0ZXIuJzsKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdVc2VkIHdpdGggb25lIG9mIHRoZSBmb3JtcywgdGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoYXQgdGhlIGZvcm1zIHNob3VsZCBub3QgYmUgcGxhY2VkIGlubGluZSwgaW5zdGVhZCB0aGUgcmVzdWx0aW5nIG91dHB1dCBhZnRlciBmb3JtIHN1Ym1pc3Npb24gd2lsbCByZXBsYWNlIHRoZSBkZWZhdWx0IGNvbnRlbnQgYmxvY2snOwokbGFuZ1sndGl0bGVfcmVzZXRfc2Vzc2lvbiddID0gJ0xvZ2luIFNlc3Npb24gVGltZW91dCBXYXJuaW5nJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnWW91ciBsb2dpbiBzZXNzaW9uIGlzIGFib3V0IHRvIGV4cGlyZSwgcGxlYXNlIGNsaWNrICZxdW90OyZxdW90O09rJnF1b3Q7IHRvIGNvbmZpcm0geW91ciBhY3Rpdml0eSBvbiB0aGlzIHdlYnNpdGUuJzsKJGxhbmdbJ29rJ10gPSAnUmVuZGJlbic7CiRsYW5nWydyZXNldHNlc3Npb25fdGVtcGxhdGUnXSA9ICdSZXNldCBTZXNzaW9uIFRlbXBsYXRlJzsKJGxhbmdbJ2luZm9fbmFtZSddID0gJ1RoaXMgaXMgdGhlIGZpZWxkIG5hbWUsIHRvIGJlIHVzZWQgZm9yIGFkZHJlc3NpbmcgaW4gc21hcnR5LiAgSXQgbXVzdCBjb25zaXN0IG9mIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIHVuZGVyc2NvcmVzLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdMJmFhY3V0ZTt0b2dhdCZvYWN1dGU7ayc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1YmYWFjdXRlO2xhc3N6IGVneSB2YWd5IHQmb3VtbDtiYiBGRVUgY3NvcG9ydG90IGFtZWx5IGwmYWFjdXRlO3RoYXRqYSBlenQgYXogb2xkYWx0JzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdFZ3kgY3NvcG9ydG90IGtpIGtlbGwgdiZhYWN1dGU7bGFzenRhbmknOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnViZhYWN1dGU7bGFzc3ogZWd5ZXQnOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ0tlemQmZWFjdXRlO3NpICZlYWN1dGU7dic7CiRsYW5nWydlbmRfeWVhciddID0gJ0JlZmVqZXrFkWQmZWFjdXRlO3MgJmVhY3V0ZTt2JzsKJGxhbmdbJ2RhdGUnXSA9ICdEJmFhY3V0ZTt0dW0nOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnQiZlYWN1dGU7bHllZ2smZWFjdXRlO3AgbSZlYWN1dGU7cmV0ZSc7CiRsYW5nWydPblVwZGF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBNb2RpZmllZCc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdUb28gbWFueSB1c2VycyBhcmUgc2VsZWN0ZWQgZm9yIGJ1bGsgb3BlcmF0aW9ucy4uLi4gUGxlYXNlIHRyaW0gaXQgdG8gMjUwIG9yIGxlc3MnOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdCaXp0b3NhbiB0Jm91bWw7ciZvdW1sO2xuaSBha2Fyb2QgYSBraXYmYWFjdXRlO2xhc3p0b3R0IGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtrYXQ/JzsKJGxhbmdbJ2RlbGV0ZV9zZWxlY3RlZCddID0gJ0tpdiZhYWN1dGU7bGFzenRvdHRhayB0Jm91bWw7cmwmZWFjdXRlO3NlJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyYXRlIHJhbmRvbSB1c2VybmFtZSB3aGVuIGFkZGluZyBuZXcgdXNlcnMnOwokbGFuZ1snbW9udGhzJ10gPSAnaCZvYWN1dGU7bmFwJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdEZWZhdWx0IHVzZXIgZXhwaXJ5IHBlcmlvZCc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICcmRWFjdXRlO3J0ZXMmaWFjdXRlO3QmZWFjdXRlO3NpIGJlJmFhY3V0ZTtsbCZpYWN1dGU7dCZhYWN1dGU7c29rJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnVHVsYWpkb25zJmFhY3V0ZTtnIGJlJmFhY3V0ZTtsbCZpYWN1dGU7dCZhYWN1dGU7c29rJzsKJGxhbmdbJ3JlZGlyZWN0aW9uX3NldHRpbmdzJ10gPSAnJkFhY3V0ZTt0aXImYWFjdXRlO255JmlhY3V0ZTt0JmFhY3V0ZTtzaSBiZSZhYWN1dGU7bGwmaWFjdXRlO3QmYWFjdXRlO3Nvayc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnJkFhY3V0ZTtsdGFsJmFhY3V0ZTtub3MgYmUmYWFjdXRlO2xsJmlhY3V0ZTt0JmFhY3V0ZTtzb2snOwokbGFuZ1snc2Vzc2lvbl9zZXR0aW5ncyddID0gJ1Nlc3Npb24gYW5kIENvb2tpZSBTZXR0aW5ncyc7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ01lesWRIGJlJmFhY3V0ZTtsbCZpYWN1dGU7dCZhYWN1dGU7c29rJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ1RoZSBsb3N0dXNlcm5hbWUgZmxhZyBjYW4gb25seSBiZSB1c2VkIG9uIHJlcXVpcmVkIGZpZWxkcyc7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdXWVNJV1lHIGhhc3puJmFhY3V0ZTtsYXQmYWFjdXRlO25hayBlbmdlZCZlYWN1dGU7bHlleiZlYWN1dGU7c2UgZXplbiBhIHN6Jm91bWw7dmVnZXMgbWV6xZFuJzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk1lZ2plZ3l6JmVhY3V0ZTtzOiA8L3N0cm9uZz4gRXogYXogbWNyeXB0IGZ1bmtjaSZvYWN1dGU7dCBoYXN6biZhYWN1dGU7bGphIHRpdGtvcyZpYWN1dGU7dCZhYWN1dGU7c2kgYyZlYWN1dGU7bG9rcmEgZXMgZXp0IG5lbSB0YWwmYWFjdXRlO2x0dWsgYSB0ZWxlcCZpYWN1dGU7dCZlYWN1dGU7c2tvci4gSyZlYWN1dGU7cmomdXVtbDtrIGwmZWFjdXRlO3BqIGthcGNzb2xhdGJhIGEgc3plcnZlciByZW5kc3plcmdhemQmYWFjdXRlO2omYWFjdXRlO3ZhbC4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnTSZvYWN1dGU7ZG9zJmlhY3V0ZTt0b3R0IGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTsnOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdEbyBub3QgaW5saW5lIGZvcm1zJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnS2F0dGludHMgaWRlIGhhIG5lbSBlbWwmZWFjdXRlO2tzemVsIGEgYmVsJmVhY3V0ZTtwJmVhY3V0ZTtzaSBpbmZvcm0mYWFjdXRlO2NpJm9hY3V0ZTtkcmEnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0thdHRpbnRzIGlkZSBoYSBuZW0gZW1sJmVhY3V0ZTtrc3plbCBhIGplbHN6YXZhZHJhJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnS2F0dGludHMgaWRlLCBob2d5IGtpamVsZW50a2V6eic7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2F0dGludHMgaWRlLCBob2d5IGJlJmFhY3V0ZTtsbCZpYWN1dGU7dHNkIGEgamVsc3phdmFkICZlYWN1dGU7cyBtJmFhY3V0ZTtzIGluZm9ybSZhYWN1dGU7Y2kmb2FjdXRlO2lkJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnRmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlOyBzYWJsb24gbWVndGVraW50JmVhY3V0ZTtzZSc7CiRsYW5nWydldmVudCddID0gJ0VzZW0mZWFjdXRlO255JzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUgZXNlbSZlYWN1dGU7bnkgJmVhY3V0ZTtydGVzJmlhY3V0ZTt0JmVhY3V0ZTtzJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJyZFYWN1dGU7cnRlcyZpYWN1dGU7dCZlYWN1dGU7c2kgZW1haWwgYyZpYWN1dGU7bSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnJkVhY3V0ZTtydGVzJmlhY3V0ZTt0JmVhY3V0ZTtzaSBlbWFpbCBzYWJsb24nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnJkVhY3V0ZTtydGVzJmlhY3V0ZTt0JmVhY3V0ZTtzaSBlbWFpbCB0JmFhY3V0ZTtyZ3lhJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25zJ10gPSAnRW1haWwgJmVhY3V0ZTtydGVzJmlhY3V0ZTt0JmVhY3V0ZTtzZWsnOwokbGFuZ1snT25Mb2dpbiddID0gJ0JlamVsZW50a2V6JmVhY3V0ZTtza29yJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnS2lqZWxlbnRrZXomZWFjdXRlO3Nrb3InOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnT24gU2Vzc2lvbiBFeHBpcnknOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnJlVhY3V0ZTtqIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTsgbCZlYWN1dGU7dHJlaG96JmFhY3V0ZTtzYWtvcic7CiRsYW5nWydPbkRlbGV0ZVVzZXInXSA9ICdGZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7IHQmb3VtbDtybCZlYWN1dGU7c2Vrb3InOwokbGFuZ1snT25VcGRhdGVVc2VyJ10gPSAnRmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlOyBiZSZhYWN1dGU7bGwmaWFjdXRlO3QmYWFjdXRlO3NhaSBtJm9hY3V0ZTtkb3MmaWFjdXRlO3QmYWFjdXRlO3Nha29yJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdGZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7Y3NvcG9ydCBsJmVhY3V0ZTt0cmVob3omYWFjdXRlO3Nha29yJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdGZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7Y3NvcG9ydCB0Jm91bWw7cmwmZWFjdXRlO3Nla29yJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnQXogZWxmZWxlanRldHQgYmVsJmVhY3V0ZTtwJmVhY3V0ZTtzaSBpbmZvcm0mYWFjdXRlO2NpJm9hY3V0ZTsgZnVua2Npb25hbGl0JmFhY3V0ZTtzIGJlZmVqZXrFkWQmb3VtbDt0dC4gVGFsJmFhY3V0ZTtsdHVuayBlZ3kgZWd5ZWRpIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuZXZldCBhbWkgbWVnZmVsZWwgYXogJmFhY3V0ZTtsdGFsYWQgYmUmaWFjdXRlO3J0IHImZWFjdXRlO3N6bGV0ZWtuZWsnOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ0EgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO25ldmVkJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1dlIHJlY29tbWVuZCB5b3UgcmVjb3JkIHRoaXMgaW5mb3JtYXRpb24gaW4gYSBzZWN1cmUsIGJ1dCByZXRyaWV2YWJsZSBsb2NhdGlvbi4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNoYW5nZSBzZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjb2RlIHZlcmlmaWNhdGlvbiAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnTG9zdCBVc2VybmFtZSBEZXRhaWxzIFRlbXBsYXRlJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnTG9zdCBVc2VybmFtZSBDb25maXJtIFRlbXBsYXRlJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnSGliYTogVCZvdW1sO2JiLCBtaW50IGVneSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7aSBmaSZvYWN1dGU7a290IHRhbCZhYWN1dGU7bHR1bmsgYW1pIG1lZ2VneWV6aWsgYSBtZWdhZG90dCB0dWxhamRvbnMmYWFjdXRlO2duYWsnOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnSGliYTogTmVtIHRhbCZhYWN1dGU7bHRhbSBtZWdmZWxlbMWRIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTt0JzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdIaWJhOiBOZW0gdGFsJmFhY3V0ZTtsdGFtIGlseWVuIG5ldsWxIGNzb3BvcnRvdCc7CiRsYW5nWydyZWFkb25seSddID0gJ0NzYWsgb2x2YXNoYXQmb2FjdXRlOyc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnVXNlciBNYW5pcHVsYXRvciBDbGFzcyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdMb2dnZWQgb3V0IGJ5IGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ0NzYWsgYmVqZWxlbnRrZXpldHQgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO2sgbXV0YXQmYWFjdXRlO3NhJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdGZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7IGtpbCZlYWN1dGU7cHRldCZlYWN1dGU7c2UnOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAnRmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlOyB0dWxhamRvbnMmYWFjdXRlO2dhaSc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ1VzZXIgSGlzdG9yeSc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnQnOwokbGFuZ1snY2xlYXInXSA9ICdDbGVhcic7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFeHBvcnQgVXNlciBIaXN0b3J5IFRvIEFTQ0lJIHRoYXQgaXMgYXQgbGVhc3QnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdDbGVhciBVc2VyIEhpc3RvcnkgcmVjb3JkcyB0aGF0IGlzIGF0IGxlYXN0JzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0VsZmVsZWp0ZXR0ZWQgYSBiZWwmZWFjdXRlO3AmZWFjdXRlO3NpIGluZm9ybSZhYWN1dGU7Y2kmb2FjdXRlO2lkPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFeHBvcnQgZ3JvdXAgZGVmaW5pdGlvbiAoYW5kIHByb3BlcnRpZXMpIHRvIFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnVXNlciBIaXN0b3J5IE1haW50ZW5hbmNlJzsKJGxhbmdbJ3llcyddID0gJ0lnZW4nOwokbGFuZ1snbm8nXSA9ICdOZW0nOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnT2YnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogS29ybCZhYWN1dGU7dCBuJmVhY3V0ZTtsayZ1dW1sO2wgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnRWd5ICZvYWN1dGU7ciZhYWN1dGU7cyc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdIYXQgJm9hY3V0ZTtyJmFhY3V0ZTtzJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJ1RpemVuayZlYWN1dGU7dCAmb2FjdXRlO3ImYWFjdXRlO3MnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdFZ3kgbmFwb3MnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnRWd5IGhldGVzJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdLJmVhY3V0ZTt0IGhldGVzJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdFZ3kgaCZvYWN1dGU7bmFwb3MnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ0gmYWFjdXRlO3JvbSBIJm9hY3V0ZTtuYXBvcyc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ0hhdCBoJm9hY3V0ZTtuYXBvcyc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdFZ3kgJmVhY3V0ZTt2ZXMnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnQ3NvcG9ydG9zJmlhY3V0ZTt0JmFhY3V0ZTtzICZlYWN1dGU7cyByZW5kZXomZWFjdXRlO3MnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ0Ega3JpdCZlYWN1dGU7cml1bW5hayBtZWdmZWxlbMWRIGJlamVneXomZWFjdXRlO3Nlayc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ0NzJm91bWw7a2tlbsWRIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuJmVhY3V0ZTt2JzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdOb3Zla3bFkSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7biZlYWN1dGU7dic7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnQ3Mmb3VtbDtra2VuxZEgZCZhYWN1dGU7dHVtJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ04mb3VtbDt2ZWt2xZEgZCZhYWN1dGU7dHVtJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ0Rlc2NlbmRpbmcgRXZlbnQgVHlwZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ0FzY2VuZGluZyBFdmVudCBUeXBlJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ0Rlc2NlbmRpbmcgSXAgQWRkcmVzcyc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ0FzY2VuZGluZyBJcCBBZGRyZXNzJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdObyBIaXN0b3J5IERldGVjdGVkJzsKJGxhbmdbJ3Jlc2V0J10gPSAnUmVzZXQnOwokbGFuZ1sncHJvbXB0X2dyb3VwX2lwJ10gPSAnR3JvdXAgQnkgSVAgQWRkcmVzcyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0V2ZW50IFR5cGUgRmlsdGVyJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ0Rpc3BsYXkgb25seSBldmVudHMgdGhhdCBhcmUgbGVzcyB0aGFuOic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnUGFnZSBMaW1pdCc7CiRsYW5nWydmb3InXSA9ICdmb3InOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdVc2VyIEhpc3RvcnkgUmVwb3J0JzsKJGxhbmdbJ3Vua25vd24nXSA9ICdVbmtub3duJzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUCBjJmlhY3V0ZTttJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdFdmVudCBUeXBlJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRCZhYWN1dGU7dHVtJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdWaXNzemEnOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ0ltcG9ydCBPcGVyYXRpb24gQ29tcGxldGUnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnTGluZXMgUHJvY2Vzc2VkJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdFcnJvcnMgRW5jb3VudGVyZWQnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ0JlamVneXomZWFjdXRlO3MgaG96eiZhYWN1dGU7YWR2YSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgZ3JvdXAgJXMnOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdDb3VsZCBub3QgZ2V0IGEgcmVzcG9uc2UgZnJvbSB0aGUgU01UUCBzZXJ2ZXInOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnRmlsZSBzcGVjaWZpZWQgKCVzKSBjb3VsZCBub3QgYmUgZm91bmQnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ0ludmFsaWQgdmFsdWUgZm9yIGRyb3Bkb3duIG9yIG11bHRpc2VsZWN0IGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnRmllbGQgJXMgZXhjZWVkcyBtYXhpbXVtIGxlbmd0aCc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0ltcG9ydCBFcnJvciAobGluZSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdDb3VsZCBub3QgZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucyAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGEgY29sdW1uIHRvIG1hdGNoIHRoZSByZXF1aXJlZCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1RoZSBmaWxlIHNwZWNpZmllZCBmb3IgaW1wb3J0IGlzIG5vdCBpbiB0aGUgY29ycmVjdCBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ05lbSB0dWR0YW0gbWVnbnlpdG5pIGEgZiZhYWN1dGU7amx0JzsKJGxhbmdbJ2luZm9faW1wb3J0dXNlcnNmaWxlZm9ybWF0J10gPSAnPGg0PkZpbGUgRm9ybWF0IEluZm9ybWF0aW9uPC9oND4NCjxwPlRoZSBpbnB1dCBmaWxlIG11c3QgYmUgaW4gQVNDSUkgZm9ybWF0IHVzaW5nIGNvbW1hIHNlcGFyYXRlZCB2YWx1ZXMuICBFYWNoIGxpbmUgaW4gdGhpcyBpbnB1dCBmaWxlICh3aXRoIHRoZSBleGNlcHRpb24gb2YgdGhlIGhlYWRlciBsaW5lLCBkaXNjdXNzZWQgYmVsb3cpIHJlcHJlc2VudHMgb25lIHVzZXIgcmVjb3JkLiAgVGhlIG9yZGVyIG9mIHRoZSBmaWVsZHMgaW4gZWFjaCBsaW5lIG11c3QgYmUgaWRlbnRpY2FsLjwvcD4NCjxoNT5IZWFkZXIgbGluZTwvaDU+DQo8dWw+DQo8bGk+VGhlIGZpcnN0IGxpbmUgb2YgdGhlIGZpbGUgbXVzdCBiZWdpbiB3aXRoIHR3byBwb3VuZCAoXCMpIGNoYXJhY3RlcnMsIGFuZCBuYW1lcyBlYWNoIG9mIHRoZSBmaWVsZHMgaW4gdGhlIGZpbGUuICBUaGUgbmFtZXMgb2YgdGhlc2UgZmllbGRzIGlzIHNpZ25pZmljYW50LiAgVGhlcmUgYXJlIHNvbWUgcmVxdWlyZWQgZmllbGQgbmFtZXMgKHNlZSBiZWxvdyksIGFuZCBvdGhlciBmaWVsZCBuYW1lcyBtdXN0IG1hdGNoIHRoZSBwcm9wZXJ0eSBuYW1lcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHVzZXJzIGFyZSBnb2luZyB0byBiZSBhZGRlZCBpbnRvLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgZmFpbCBpZiB0aGUgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIGRvZXMgbm90IG1hdGNoIGFsbCBvZiB0aGUgcmVxdWlyZWQgcHJvcGVydGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHRoYXQgdXNlcnMgYXJlIGJlaW5nIGFkZGVkIGludG88L2xpPg0KPGxpPlRoZSBpbnB1dCBmaWxlIG1heSBjb250YWluIGZpZWxkcyByZXByZXNlbnRpbmcgc29tZSBvZiB0aGUgb3B0aW9uYWwgcHJvcGVydGllcyBpbiB0aGUgc3BlY2lmaWVkIGdyb3VwLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgaWdub3JlIGFueSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgdGhhdCBhcmUgZWl0aGVyIG5vdCBrbm93biwgb3IgbWFwIHRvIHByb3BlcnRpZXMgdGhhdCBhcmUgPGVtPm9mZjwvZW0+IGluIHRoZSBzcGVjaWZpZWQgdXNlciBncm91cC48L2xpPg0KPC91bD48YnIvPg0KPGg2PjxzdHJvbmc+Q29sdW1uYXIgRGF0YTwvc3Ryb25nPjwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcmlkPC9zdHJvbmc+IEZpZWxkIC0gVGhlIHVzZXJpZCBmb3IgdGhlIHVzZXIuIEEgdmFsdWUgaW4gdGhpcyBmaWVsZCB3aWxsIGluZGljYXRlIHlvdSBhcmUgZG9pbmcgYW4gdXBkYXRlLiAgVGhlcmUgaXMgYSBjaGVja2JveCBkdXJpbmcgdGhlIGltcG9ydCBwcm9jZXNzIHRvIHNwZWNpZnkgdGhhdCB0dWUgdXNlcmlkIGZpZWxkIGNhbiBiZSBpZ25vcmVkIGZvciB0aGUgcHVycG9zZXMgb2YgbWlncmF0aW5nIHVzZXJzIGZyb20gb25lIHNlcnZlciB0byBhbm90aGVyLjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNoIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRoZSBwYXNzd29yZCB0byBzZXQgZm9yIHRoZSB1c2VyLiAgT3B0aW9uYWxseSwgYSA8c3Ryb25nPnBhc3N3b3JkaGFzaDwvc3Ryb25nPiBmaWVsZCBtYXkgYmUgaW5jbHVkZWQgdGhhdCBzcGVjaWZpZXMgdGhlZSA8ZW0+c2FsdGVkPC9lbT4gTUQ1IGhhc2ggb2YgdGhlIHVzZXJzIHBhc3N3b3JkLiAgSWYgdGhlIHBhc3N3b3JkIGZpZWxkIGlzIGVtcHR5IHdoZW4gY3JlYXRpbmcgbmV3IHVzZXJzIHRoZSBwYXNzd29yZCAmcXVvdDtjaGFuZ2VtZSZxdW90OyBpcyBoYXJkY29kZWQuPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5jcmVhdGVkYXRlPC9zdHJvbmc+IEZpZWxkIC0gdG9kbzwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+ZXhwaXJlczwvc3Ryb25nPiBGaWVsZCAtIHRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmdyb3VwbmFtZTwvc3Ryb25nPiBGaWVsZCAtIFRoZSBncm91cHMgdGhhdCB5b3Ugd2FudCB0byBoYXZlIHRoZSB1c2VyIGJlIGEgbWVtYmVyIG9mLiBJZiBhbGwgcmVxdWlyZWQgZmllbGRzIGFyZSBub3QgZmlsbGVkIGluIHRoZSBpbnNlcnQvdXBkYXRlIG9mIHRoZSByZWNvcmQgd2lsbCBmYWlsLiBTZWUgTXVsdGlzZWxlY3QgRmllbGRzIGJlbG93IGZvciBzeW50YXguPC9saT4NCjxsaT5Ecm9wZG93bi9SYWRpbyBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5EYXRlIEZpZWxkcw0KICAgIDxwPk11c3QgYmUgaW4gdGhlIGZvcm1hdCBvZiBNTS1ERC1ZWVlZPC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD48L2xpPg0KPC91bD4NCjxoNT5Ob3RlczwvaDU+DQo8cD5UaGUgaW1wb3J0IHByb2Nlc3MgaXMgc3ViamVjdCB0byB0aGUgbGltaXRhdGlvbnMgaW1wb3NlZCBieSB0aGUgaG9zdCBwcm92aWRlciwgc3VjaCBhcyBtZW1vcnkgbGltaXRhdGlvbnMsIHByb2Nlc3NpbmcgdGltZSwgZmlsZSBzaXplIHVwbG9hZCwgYW5kIHNhZmUgbW9kZSByZXN0cmljdGlvbnMuICBBbnkgb25lIG9mIHRoZXNlIGxpbWl0YXRpb25zIG1heSBjYXVzZSB0aGUgaW1wb3J0IHRvIGZhaWwuIFRoZXJlZm9yZSBpdCBpcyBhZHZpc2FibGUgdG8gZW5zdXJlIHRoYXQgaW1wb3J0IGZpbGVzIGFyZSBzbWFsbGVyIGluIHNpemUsIGFuZCBzaW1wbGVyIGluIG5hdHVyZS48L3A+DQo8cD5UaG91Z2ggZXZlcnkgZWZmb3J0IGhhcyBiZWVuIG1hZGUgdG8gZW5zdXJlIHRoYXQgZGF0YWJhc2UgY29ycnVwdGlvbiB3aWxsIG5vdCBvY2N1ciwgaXQgaXMgYWR2aXNhYmxlIHRvIHBlcmZvcm0gYSBkYXRhYmFzZSBiYWNrdXAgYmVmb3JlIGRvaW5nIGEgdXNlciBpbXBvcnQuPC9wPg0KPHA+VGhlIEV4cG9ydCBkYXRhIGlzIGluIHRoZSBzYW1lIGZvcm1hdCBhcyBuZWVkZWQgZm9yIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0IFVzZXJzIEludG8gVGhpcyBHcm91cCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnB1dCBDU1YgRmlsZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0lucHV0IFhNTCBGaWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydCBVc2Vycyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQgVXNlcnMnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnQ2xlYXInOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdJbWFnZSBEZXN0aW5hdGlvbiBQYXRoJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnQSBwcm9ibGVtIG9jY3VycmVkIHdpdGggYSBtaXNzaW5nIChidXQgcmVxdWlyZWQpIHVwbG9hZCc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnQ291bGQgbm90IHBhcnNlIHRoZSBwcm92aWRlZCBYTUwgZmlsZSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnQ2Fubm90IGRlbGV0ZSBhIGdyb3VwIHRoYXQgc3RpbGwgaGFzIHVzZXJzJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdUaGlzIHVzZXIgaXMgYWxyZWFkeSBsb2dnZWQgaW4nOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGhlIHRleHQgZnJvbSB0aGUgaW1hZ2Ugd2FzIG5vdCBlbnRlcmVkIGNvcnJlY3RseSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9naW4gbW9yZSB0aGFuIG9uY2UnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0ltYWdlIEZpbGUgRXh0ZW5zaW9ucyB0aGF0IFVzZXJzIGFsbG93ZWQgdG8gdXBsb2FkJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25SZWZyZXNoVXNlciddID0gJzxoMz5PblJlZnJlc2hVc2VyPC9oMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyIHNlc3Npb24gaXMgcmVmcmVzaGVkLjwvcD4NCjxoND5QYXJhbWV0ZXJzOjwvaDQ+DQo8dWw+DQogIDxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBVc2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjxsaT48ZW0+cHJvcHM8L2VtPiAtIEEgaGFzaCBmaWxsZWQgd2l0aCB0aGUgcHJvcGVydGllcyBvZiB0aGUgdXNlcjwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgZ3JvdXAgZGVzY3JpcHRpb248L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBpZCBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGV4cGlyZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbiB0byB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQgb2YgdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGlzIGV4cGlyZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyB1c2VyIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblJlZnJlc2hVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gdGhlIHVzZXIgc2Vzc2lvbiBpcyByZWZyZXNoZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaW5mbyBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGFjY291bnQgaXMgZGVsZXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgZGVsZXRlZCc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQmFja2VuZCBHcm91cCc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIFRoZSBmb2xsb3dpbmcgZmllbGRzIGFyZSBmdWxsIHNtYXJ0eSB0ZW1wbGF0ZXMuPGJyLz5BbG9uZyB3aXRoIG90aGVyIHByZS1leGlzdGluZyBzbWFydHkgdmFyaWFibGVzIGFuZCBwbHVnaW5zLCB0aGUgeyR1c2VybmFtZX0gYW5kIHskZ3JvdXB9IHZhcmlhYmxlcyBhcmUgYXZhaWxhYmllLiAgPGVtPihUaGUgeyRncm91cH0gdmFyaWFibGUgbWF0Y2hlcyB0aGUgZmlyc3QgZ3JvdXAgdG8gd2hpY2ggdGhlIHVzZXIgYmVsb25ncy4pPC9lbT4uJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ0EgdXNlciB3aXRoIHRoYXQgdXNlcm5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnTm8gcmVzdWx0cyByZXR1cm5lZCBmcm9tIGNzdiBleHBvcnQnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTGVuZ3RoIG9mIHVzZXJuYW1lIGZpZWxkJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0xlbmd0aCBvZiBwYXNzd29yZCBmaWVsZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL01heCBwYXNzd29yZCBsZW5ndGhzIGFyZSBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZWxlbmd0aHMnXSA9ICdNaW4vTWF4IHVzZXJuYW1lIGxlbmd0aHMgYXJlIGludmFsaWQnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ0ludmFsaWQgRW1haWwgYWRkcmVzcyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ1dlIGNvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGFkZHJlc3MgZm9yIHRoaXMgYWNjb3VudCc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibGVtIHNldHRpbmcgcHJvcGVydHknOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ1VzZXIgQWRkZWQgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVc2VyIERlbGV0ZWQgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnVHVsYWpkb25zJmFhY3V0ZTtnJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWx1ZSAocmVndWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1dhcm5pbmc6IFRoZXNlIGZpZWxkcyBhZmZlY3QgdGhlIHNpemUgb2YgaW5wdXQgZmllbGRzIGZvciBmb3Jtcy4gIERlY3JlYXNpbmcgdGhpcyBudW1iZXIgb24gYW4gZXhpc3Rpbmcgc2l0ZSBtYXkgbm90IGJlIGFkdmlzYWJsZSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGFkanVzdCB0aGUgbW9kdWxlIHByZWZlcmVuY2VzPyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnTSZhYWN1dGU7ciBoYXN6biZhYWN1dGU7bGF0YmFuIGxldsWRIGVtYWlsIGMmaWFjdXRlO20nOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnUyZ1dW1sO3RpayBoYXN6biZhYWN1dGU7bGF0YSBhIGJlamVsZW50a2V6JmVhY3V0ZTtzaSBpbmZvcm0mYWFjdXRlO2NpJm9hY3V0ZTsgJmVhY3V0ZTtzemJlbiB0YXJ0JmFhY3V0ZTtzJmFhY3V0ZTtyYSc7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ1MmdXVtbDt0aSBuZXZlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnSXNtJmVhY3V0ZTt0bMWRZMWRIGVtYWlsIGMmaWFjdXRlO20gaGFzem4mYWFjdXRlO2xhdCZhYWN1dGU7bmFrIGVuZ2VkJmVhY3V0ZTtseWV6JmVhY3V0ZTtzZSc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdFbWFpbCBjJmlhY3V0ZTttIGEgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO24mZWFjdXRlO3YnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnQXR0ZW1wdCB0byBrZWVwIGxvZ2lucyBhbGl2ZSBieSB0aGUgdXNlIG9mIGEgY29va2llIDxlbT4odGhlIGNvb2tpZSBpcyByZXNldCBvbiBhY3Rpdml0eSBpbiB0aGUgd2Vic2l0ZSk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcoVCZvdW1sO2JiIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTsgaXMgaGFzem4mYWFjdXRlO2xoYXRqYSB1Z3lhbmF6dCBheiBlbWFpbCBjJmlhY3V0ZTttZXQpJzsKJGxhbmdbJ2luZm9fdXNlcm5hbWVfaXNfZW1haWwnXSA9ICcoQSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7IGVtYWlsIGMmaWFjdXRlO20mZWFjdXRlO3QgaGFzem4mYWFjdXRlO2xqYSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7biZlYWN1dGU7dmsmZWFjdXRlO250IC0tIE5lIGhhc3puJmFhY3V0ZTtsZCBlenQgYXogaXNtJmVhY3V0ZTt0bMWRZMWRIGVtYWlsIGMmaWFjdXRlO20gaGFzem4mYWFjdXRlO2xhdCZhYWN1dGU7bmFrIGVuZ2VkJmVhY3V0ZTtseWV6JmVhY3V0ZTtzJmVhY3V0ZTt2ZWwhKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ0FsbG93IGR1cGxpY2F0ZSAmcXVvdDtmb3Jnb3QgcGFzc3dvcmQmcXVvdDsgcmVtaW5kZXJzPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoQWxsb3cgYSB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQsIGV2ZW4gaWYgdGhleSBoYXZlbiYjMDM5O3QgYWN0ZWQgb24gYSBwcmV2aW91cyBvbmUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNlIEZyb250LWVuZCBVc2VyIHNwZWNpZmljIHBlcm1pc3Npb25zPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbHksIEZFVVNlcnMgcGVybWlzc2lvbnMgYXJlIHRoZSBzYW1lIGFzIHRoZSBlcXVpdmFsZW50IEFkbWluIEFyZWEgcGVybWlzc2lvbnMgbGlrZSBBZGQgVXNlciwgQWRkIEdyb3VwLCBldGMuIElmIHlvdSBzZWxlY3QgdGhpcyBvcHRpb24sIHRoZXJlIHdpbGwgYmUgc2VwYXJhdGUgcGVybWlzc2lvbnMgZm9yIEZFVXNlcnMuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIHVwbG9hZGVkIGZpbGUgKGludGVybmFsIGVycm9yKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ1RoZXJlIHdhcyBhIHByb2JsZW0gd2l0aCB5b3VyIHVwbG9hZGVkIGZpbGUuICBQbGVhc2UgdHJ5IGFnYWluJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ05lbSAmaWFjdXRlO3J0JmFhY3V0ZTtsIGJlIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuZXZldCc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdOZW0gJmlhY3V0ZTtydGFkIGJlIGF6IGVtYWlsIGMmaWFjdXRlO21lZCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdOZW0gYWR0JmFhY3V0ZTtsIG1lZyBqZWxzeiZvYWN1dGU7dCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmRVc2VyIGtpamVsZW50a2V6JmVhY3V0ZTtzJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kVXNlciBiZWplbGVudGtleiZlYWN1dGU7cyc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlVTRSBDQVVUSU9OPC9iPiB3aGVuIGNoYW5naW5nIGV4aXN0aW5nIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzaWduZWQgdG8gZ3JvdXBzLCB5b3UgbWF5IHBvdGVudGlhbGx5IGNhdXNlIGRhbWFnZSBhbmQgYnJlYWsgYW4gZXhpc3Rpbmcgc2l0ZSA8aT4oZXNwZWNpYWxseSBpZiB5b3UgcmVkdWNlIGZpZWxkIGxlbmd0aHMsIGV0Yyk8L2k+PC9mb250Pic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ0V6IGEgZnVua2NpJm9hY3V0ZTsgbmVtIG3FsWsmb3VtbDtkaWsgV2luZG93c29uJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdEbyBub3QgY3JlYXRlIGEgcHJvcGVydHkgZm9yIHVzZXJuYW1lLCBvciBwYXNzd29yZCBhcyB0aGVzZSBwcm9wZXJ0aWVzIGFyZSBidWlsdGluIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRXhwb3J0IFVzZXJzIHRvIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnQnOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0JzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW4nOwokbGFuZ1snZWRpdHByb3AnXSA9ICdFZGl0IFByb3BlcnR5OiA8ZW0+JXM8L2VtPic7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYXhpbXVtIEhvc3N6JzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdMJmVhY3V0ZTt0cmVob3p2YSc7CiRsYW5nWydzb3J0YnknXSA9ICdTb3J0IEJ5JzsKJGxhbmdbJ3NvcnQnXSA9ICdTb3J0aW5nJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1VzZXJzIGluIHRoZSBzZWxlY3RlZCBncm91cChzKSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdIYXQmYWFjdXRlO3JvbGQgYXogZXJlZG0mZWFjdXRlO255ZWtldCBlbm55aXJlJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGZpZWxkIGZvciB0aGlzIHVzZXIuICBZb3UgbWF5IG5lZWQgdG8gY29udGFjdCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIEZvcmdvdCBQYXNzd29yZCBmb3JtJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBDaGFuZ2UgU2V0dGluZ3MgZm9ybSc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ2luIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9nb3V0IConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU29ydCBvcmRlcic7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdBIG51bWJlciBvZiB1c2VycyBhcmUgaW4gdGhlIG1pZGRsZSBvZiByZXNldHRpbmcgbG9zdCBwYXNzd29yZHMuICBDdXJyZW50bHkgdGhpcyBjb3VudCBpcyBhdDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgd2VlayBvbGQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIG1vbnRoIG9sZCc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdNaW5kZW4gYmVqZWd5eiZlYWN1dGU7cyBlbHQmYWFjdXRlO3ZvbCZpYWN1dGU7dCZhYWN1dGU7c2EnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ0JpenRvcyB2YWd5IGJlbm5lPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ0EgbWVnYWRvdHQgayZvYWN1dGU7ZCBoaWImYWFjdXRlO3MsIGsmZWFjdXRlO3JsZWsgcHImb2FjdXRlO2ImYWFjdXRlO2xkICZ1YWN1dGU7anJhJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdBIHRlbXBvcmFyeSBjb2RlIGZvciB5b3VyIHVzZXIgaWQgY291bGQgbm90IGJlIGZvdW5kIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgdG8gZGlzcGxheSB2ZXJpZmljYXRpb24gZm9ybSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNlZCBmb3IgZm9yZ290dGVuIHBhc3N3b3JkIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdFaXRoZXIgeW91cnNlbGYgb3Igc29tZW9uZSBlbHNlIGhhcyBhbHJlYWR5IHRyaWdnZXJlZCBhIHBhc3N3b3JkIHJlc2V0IG9wZXJhdGlvbiBmb3IgdGhpcyBhY2NvdW50LiAgQ2hlY2sgeW91ciBlbWFpbCwgeW91IG1heSBoYXZlIGZ1cnRoZXIgaW5zdHJ1Y3Rpb25zIG9uIGhvdyB0byByZXNldCB5b3VyIHBhc3N3b3JkIGluIHlvdXIgaW5ib3gnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0FkYXRiJmFhY3V0ZTt6aXMgaGliYSc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdZb3UgYXJlIHJlY2VpdmluZyB0aGlzIG1lc3NhZ2UgYmVjYXVzZSBzb21lYm9keSB0b2xkIG91ciBzaXRlIHRoYXQgeW91IGhhZCBsb3N0IHlvdXIgcGFzc3dvcmQuICBJZiB0aGlzIGlzIHRoZSBjYXNlLCByZWFkIHRoZSBpbnN0cnVjdGlvbnMgYmVsb3cuICBJZiB5b3UgZG9uJiMwMzk7dCBoYXZlIGEgY2x1ZSB3aGF0IHRoaXMgaXMsIHRoZW4geW91IGFyZSBzYWZlIHRvIGRlbGV0ZSB0aGlzIG1lc3NhZ2UsIGFuZCB3ZSB0aGFuayB5b3UgZm9yIHlvdXIgdGltZS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdLJm9hY3V0ZTtkJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ1RoZSBmb2xsb3dpbmcgY29kZSBoYXMgYmVlbiByYW5kb21seSBnZW5lcmF0ZWQgaW4gb3JkZXIgdG8gdmVyaWZ5IHRoZSB1c2VyIGFjY291bnQuICB3aGVuIHlvdSBjbGljayBvbiB0aGUgbGluayBiZWxvdyB5b3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGZpZWxkIHRvIGVudGVyIHRoaXMgY29kZS4gIE5vcm1hbGx5IHRoZSBmaWVsZCBpcyBwcmUtY29tcGxldGVkIGZvciB5b3UsIGJ1dCBpbmNhc2UgaXQgaXNuJiMwMzk7dCB0aGUgY29kZSBpczonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdDbGlja2luZyBvbiB0aGUgZm9sbG93aW5nIGxpbmsgd2lsbCB0YWtlIHlvdSB0byB0aGUgd2Vic2l0ZSB3aGVyZSB5b3UgY2FuIGVudGVyIHRoZSBhYm92ZSBjb2RlLCBhbmQgcmVzZXQgeW91ciBwYXNzd29yZDonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ0VsZmVsZWp0ZXR0IGplbHN6Jm9hY3V0ZTsnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdOZW0gdGFsJmFhY3V0ZTtsb20gYSBDTVNNYWlsZXIgbW9kdWx0JzsKJGxhbmdbJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCddID0gJ0FuIGVtYWlsIGhhcyBiZWVuIHNlbnQgdG8gJXMgd2l0aCBpbnN0cnVjdGlvbnMgYXMgdG8gaG93IHRvIHJlc2V0IHlvdXIgcGFzc3dvcmQuICBUaGFuayB5b3UnOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdTbyB5b3UgZm9yZ290IG9yIGxvc3QgeW91ciBwYXNzd29yZC4gV2VsbCwgdHlwZSB5b3VyIHVzZXJuYW1lIGluIGhlcmUsIGFuZCBpZiB3ZSBjYW4gZmluZCB5b3Ugd2Ugd2lsbCBzZW5kIHlvdSBhbiBlbWFpbCB3aXRoIGluc3RydWN0aW9ucyBvbiBob3cgdG8gcmVzZXQgaXQnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdGb3Jnb3QgUGFzc3dvcmQgVGVtcGxhdGVzJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnUHJvcGVydHkgJXMgbm90IGZvdW5kJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdQcm9wZXJ0aWVzIGZvdW5kJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdBZGQgUHJvcGVydHknOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0EgcmVxdWlyZWQgZmllbGQgKCVzKSB3YXMgZW1wdHknOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdFbnRlciBhIG5ldyBwYXNzd29yZCBoZXJlIHRvIGNoYW5nZSB5b3VyIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnWW91IGRvIG5vdCBhcHBlYXIgdG8gYmUgbG9nZ2VkIGluJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdCZSZhYWN1dGU7bGwmaWFjdXRlO3QmYWFjdXRlO3Nvayc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzenRyJmFhY3V0ZTtjaSZvYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnRXogYSBmaSZvYWN1dGU7ayBsZWomYWFjdXRlO3J0JzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdJbXByb3BlciBlbWFpbCBhZGRyZXNzIGZvcm1hdHRpbmcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdJbnZhbGlkIGV4cGlyeSBkYXRlLiAgVGhpcyBtYXkgYmUgc3lzdGVtIHJlbGF0ZWQuICBUcnkgc2V0dGluZyBhbiBlYXJsaWVyIHllYXIuJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcnJvciBzZXR0aW5nIHByb3BlcnR5ICVzIGZvciB1c2VyICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnSW52YWxpZCBncm91cCBpZCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ0hpZGRlbiBmaWVsZCBtYXJrZXInOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0hpZGRlbiBmaWVsZCBjb2xvcic7CiRsYW5nWydoaWRkZW4nXSA9ICdIaWRkZW4nOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ0EgcHJvcGVydHkgd2l0aCB0aGF0IG5hbWUgaXMgYWxyZWFkeSBkZWZpbmVkJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ05vIHByb3BlcnRpZXMgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ05vIHByb3BlcnRpZXMgd2VyZSBzZWxlY3RlZCBmb3IgdGhpcyBncm91cC4gIEEgZ3JvdXAgbXVzdCBoYXZlIGF0IGxlYXN0IG9uZSBwcm9wZXJ0eSBzZWxlY3RlZCAoUmVxdWlyZWQsT3B0aW9uYWwsIG9yIEhpZGRlbiknOwokbGFuZ1snbm9ncm91cHMnXSA9ICdObyBHcm91cHMgYXJlIGRlZmluZWQnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcm91cHMgRm91bmQnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ01lbWJlcnNoaXAgaW4gYXQgbGVhc3Qgb25lIGdyb3VwIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdSZXF1aXJlIG1lbWJlcnNoaXAgaW4gYXRsZWFzdCBvbmUgZ3JvdXAnOwokbGFuZ1snYmFjayddID0gJ1Zpc3N6YSc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgZWd5IGsmb3VtbDt0ZWxlesWRIG1lesWRJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNYXJrIHJlcXVpcmVkIGZpZWxkcyB3aXRoJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0hpbGl0ZSByZXF1aXJlZCBmaWVsZHMgaW4nOwokbGFuZ1snbmV4dCddID0gJ1RvdiZhYWN1dGU7YmInOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdBIEdyb3VwIHdpdGggdGhhdCBuYW1lIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnSyZvdW1sO3RlbGV6xZEnOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdPcHRpb25hbCc7CiRsYW5nWydvZmYnXSA9ICdPZmYnOwokbGFuZ1snc2l6ZSddID0gJ00mZWFjdXRlO3JldCc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltdW0gc2l6ZSBvZiBhbnkgb25lIGRpbWVuc2lvbiBvZiB0aGUgaW1hZ2UgaW4gcGl4ZWxzKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdIb3Nzeic7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyPihjaGFycyBpbiB0aGUgdGV4dCBpbnB1dCknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ0Ryb3Bkb3duIG9wdGlvbnMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnUmFkaW9idXR0b24gbGFiZWxzLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncHJvbXB0J10gPSAnUHJvbXB0JzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVCZpYWN1dGU7cHVzJzsKJGxhbmdbJ3R5cGUnXSA9ICdUJmlhY3V0ZTtwdXMnOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdNZXrFkSAmYWFjdXRlO2xsYXBvdCc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdBc2sgaW4gTG9zdDxici8+VXNlcm5hbWUnOwokbGFuZ1sndGV4dCddID0gJ1N6Jm91bWw7dmVnJzsKJGxhbmdbJ2NoZWNrYm94J10gPSAnSmVsJm91bWw7bMWRbWV6xZEnOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdNdWx0aSBTZWxlY3QgTGlzdCc7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdSJmFhY3V0ZTtkaSZvYWN1dGU7IGdvbWInOwokbGFuZ1snaW1hZ2UnXSA9ICdLJmVhY3V0ZTtwJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW1haWwgYyZpYWN1dGU7bSc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1N6b3ZlZ2VzIG1lesWRJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnTGVnJm91bWw7cmQmdXVtbDtsxZEgbGlzdGEnOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICcmVXVtbDtkdiZvdW1sO3psJnV1bWw7bmsnOwokbGFuZ1snbG9nb3V0J10gPSAnS2lqZWxlbnRrZXomZWFjdXRlO3MnOwokbGFuZ1sncHJvbXB0X25ld2dyb3VwbmFtZSddID0gJ0hhc3puJmFhY3V0ZTtsZCBlenQgYSBjc29wb3J0bmV2ZXQnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzJ10gPSAnQmUmYWFjdXRlO2xsJmlhY3V0ZTt0JmFhY3V0ZTtzYWltIG0mb2FjdXRlO2RvcyZpYWN1dGU7dCZhYWN1dGU7c2EnOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdCZWplbGVudGtleiZlYWN1dGU7cyBzaWtlcnRlbGVuIC0gSGliJmFhY3V0ZTtzIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuJmVhY3V0ZTt2IHZhZ3kgamVsc3omb2FjdXRlOz8nOwokbGFuZ1snbG9naW4nXSA9ICdCZWplbGVudGtleiZlYWN1dGU7cyc7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0JlamVsZW50a2V6JmVhY3V0ZTtzIGdvbWIgYyZpYWN1dGU7bWtlJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ0ZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuJmVhY3V0ZTt2JzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0VtYWlsIGMmaWFjdXRlO20nOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnSmVsc3omb2FjdXRlOyc7CiRsYW5nWydwcm9tcHRfcmVtZW1iZXJtZSddID0gJ0VtbCZlYWN1dGU7a2V6eiByJmFhY3V0ZTttIGV6ZW4gYSBnJmVhY3V0ZTtwZW4nOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3p0ciZhYWN1dGU7Y2kmb2FjdXRlOyc7CiRsYW5nWydmb3Jnb3RwdyddID0gJ0VsZmVsZWp0ZXR0ZWQgYSBqZWxzemF2YWQ/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0VsZmVsZWp0ZXR0ZWQgYSBiZWwmZWFjdXRlO3AmZWFjdXRlO3NpIGluZm9ybSZhYWN1dGU7Y2kmb2FjdXRlO2RhdD8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdBbGFwJmVhY3V0ZTtydGVsbWV6ZXR0ICZlYWN1dGU7cnQmZWFjdXRlO2tlayc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1NhYmxvbic7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdOZW0gdGFsJmFhY3V0ZTtsdGFtIGluZm9ybSZhYWN1dGU7Y2kmb2FjdXRlO3QgZXJyxZFsIGEgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO3Imb2FjdXRlO2wnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0V6IGEgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO24mZWFjdXRlO3YgKCVzKSBtJmFhY3V0ZTtyIGZvZ2xhbHQnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ0hhc3puJmFhY3V0ZTtsaiBTTVRQLXQsIGhvZ3kgJmVhY3V0ZTtydiZlYWN1dGU7bnllcyZpYWN1dGU7dHNkIGF6IGVtYWlsIGMmaWFjdXRlO21la2V0JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ01pbmltdW0gamVsc3omb2FjdXRlOyBob3Nzeic7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdNYXhpbXVtIGplbHN6Jm9hY3V0ZTsgaG9zc3onOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnTWluaW11bSBmZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7biZlYWN1dGU7diBob3Nzeic7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdNYXhpbXVtIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuJmVhY3V0ZTt2IGhvc3N6JzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb24gVGltZW91dCAoc2Vjb25kcyknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1VzZSBjb29raWVzIHRvIGtlZXAgbG9naW5zIGFsaXZlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnQWxsb3cgRW1haWwgUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdBbGFwJmVhY3V0ZTtydGVsbWV6ZXR0IGNzb3BvcnQgYXogJnVhY3V0ZTtqIGZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtrbmFrJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnQmUmYWFjdXRlO2xsJmlhY3V0ZTt0JmFhY3V0ZTtzb2sgbSZvYWN1dGU7ZG9zJmlhY3V0ZTt0JmFhY3V0ZTtzYSBzYWJsb24nOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0plbHN6YXZhayBuZW0gdGFsJmFhY3V0ZTtsbmFrJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJyZFYWN1dGU7cnYmZWFjdXRlO255dGVsZW4gZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlO24mZWFjdXRlO3YnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnJkVhY3V0ZTtydiZlYWN1dGU7bnl0ZWxlbiBqZWxzeiZvYWN1dGU7JzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnRmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlOyBtJm9hY3V0ZTtkb3MmaWFjdXRlO3QmYWFjdXRlO3NhJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnJkVhY3V0ZTtydiZlYWN1dGU7bnllcyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ0ZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtuJmVhY3V0ZTt2JzsKJGxhbmdbJ3N0YXR1cyddID0gJyZBYWN1dGU7bGxhcG90JzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ0V6IGEgZmVsaGFzem4mYWFjdXRlO2wmb2FjdXRlOyBuZW0gdGFnamEgZWd5IGNzb3BvcnRuYWsgc2VtJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdObyBQcm9wZXJ0aWVzJzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAnQXR0ZW1wdCB0byBpbXBvcnQgZHVwbGljYXRlIHByb3BlcnRpZXMnOwokbGFuZ1sndmFsdWUnXSA9ICcmRWFjdXRlO3J0JmVhY3V0ZTtrJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0Nzb3BvcnRvayc7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnVHVsYWpkb25zJmFhY3V0ZTtnb2snOwokbGFuZ1sncHJvcG5hbWUnXSA9ICdUdWxhamRvbnMmYWFjdXRlO2cgbmV2ZSc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdUdWxhamRvbnMmYWFjdXRlO2cgJmVhY3V0ZTtydCZlYWN1dGU7a2UnOwokbGFuZ1snYWRkJ10gPSAnSG96eiZhYWN1dGU7YWQmYWFjdXRlO3MnOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3RvcnknOwokbGFuZ1snZWRpdCddID0gJ1N6ZXJrZXN6dCZlYWN1dGU7cyc7CiRsYW5nWydleHBpcmVzJ10gPSAnTGVqJmFhY3V0ZTtyJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ0hhdCZhYWN1dGU7cm96ZCBtZWcgYSBkJmFhY3V0ZTt0dW1vdCc7CiRsYW5nWycxMmhycyddID0gJzEyICZPYWN1dGU7cmEnOwokbGFuZ1snMjRocnMnXSA9ICcyNCAmT2FjdXRlO3JhJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggJk9hY3V0ZTtyYSc7CiRsYW5nWycxd2VlayddID0gJzEgaCZlYWN1dGU7dCc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIGgmZWFjdXRlO3QnOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBoJm9hY3V0ZTtuYXAnOwokbGFuZ1snM21vbnRocyddID0gJzMgaCZvYWN1dGU7bmFwJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IGgmb2FjdXRlO25hcCc7CiRsYW5nWycxeWVhciddID0gJzEgJmVhY3V0ZTt2JzsKJGxhbmdbJ25ldmVyJ10gPSAnU29oYSc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bGUgaW5zdGFsbGVkIHN1Y2Vzc2Z1bGx5Ljxici8+QmUgc3VyZSB0byBzZXQgdGhlICZxdW90O01vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcyBwZXJtaXNzaW9uLiAgQWRkaXRpb25hbGx5LCB3ZSByZWNvbW1lbmQgdGhhdCB5b3UgaW5zdGFsbCB0aGUgQ2FwdGNoYSBtb2R1bGUuICBJZiBpbnN0YWxsZWQsIHZhbGlkYXRpb24gb2YgYSBjYXB0Y2hhIGltYWdlIHdpbGwgYmUgcmVxdWlyZWQgaW4gYWRkaXRpb24gdG8gdGhlIHVzZXJuYW1lIGFuZCBwYXNzd29yZCB0byBsb2dpbi4gIFRoaXMgaXMgaW50ZW5kZWQgdG8gcHJldmVudCBicnV0ZSBmb3JjZSBhdHRhY2tzLiAgPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGUgbm9jYXB0Y2hhIHBhcmFtZXRlciBjYW4gYmUgdXNlZCB0byBkaXNhYmxlIHRoaXMgZnVuY3Rpb25hbGl0eSBldmVuIGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQuJnF1b3Q7JzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnSmVsc3omb2FjdXRlOyc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJyZVYWN1dGU7anJhJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdJbHllbiBuZXbFsSBjc29wb3J0IG0mYWFjdXRlO3IgbCZlYWN1dGU7dGV6aWsnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnQ3NvcG9ydCBzemVya2VzenQmZWFjdXRlO3NlJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0smdXVtbDtsZCZlYWN1dGU7cyc7CiRsYW5nWydjYW5jZWwnXSA9ICdNJmVhY3V0ZTtnc2UnOwokbGFuZ1snZGVsZXRlJ10gPSAnVCZvdW1sO3JsJmVhY3V0ZTtzJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnQXJlIHlvdSBzdXJlIHRoaXMgaXMgdGhlIHByb3BlciBzZXR0aW5ncyBmb3IgdGhpcyBncm91cD9cblR1cm5pbmcgYSBwcm9wZXJ0eSBvZmYgd2lsbCBub3QgZGVsZXRlIGFueSBlbnRyaWVzIGluIHRoZSBwcm9wZXJ0aWVzIHRhYmxlIGZvciB0aGlzIGdyb3VwL3VzZXIuICBUaGV5IHdpbGwgbWVyZWx5IGJlIHVuYXZhaWxhYmxlLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnQml6dG9zYW4gdCZvdW1sO3Imb3VtbDtsbmkgYWthcm9kIGV6dCBhIGNzb3BvcnRvdD8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjb21wbGV0ZWx5IGRlbGV0ZSB0aGlzIHByb3BlcnR5P1xuRG9pbmcgc28gd2lsbCBhbHNvIGVyYXNlIGFueSB1c2VyIGVudHJpZXMgZm9yIHRoaXMgcHJvcGVydHkuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ0VsJmVhY3V0ZTtndGVsZW4gcGFyYW0mZWFjdXRlO3Rlcic7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdOJmVhY3V0ZTt2JzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbSBhZGRpbmcgcHJvcGVydHknOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwIHJlbGF0aW9uJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSBhZGRpbmcgYSB1c2VyIHRvIGEgZ3JvdXAnOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZW0gZGVsZXRpbmcgYSBwcm9wZXJ0eSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ05lbSB0YWwmYWFjdXRlO2x0YW0gZW1haWwgYyZpYWN1dGU7bWV0JzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdObyB3cml0ZSBwZXJtaXNzaW9uIHRvIGRlc3RpbmF0aW9uIGRpcmVjdG9yeSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnSW52YWxpZCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTmVtIHRhbCZhYWN1dGU7bHRhbSBjc29wb3J0b3QnOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBbGthbG1heic7CiRsYW5nWydmaWx0ZXInXSA9ICdTesWxcsWRJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdVc2VybmFtZSBSZWd1bGFyIEV4cHJlc3Npb24nOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdMZSZpYWN1dGU7ciZhYWN1dGU7cyc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdDc29wb3J0IG5ldmUnOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnSG96eiZhYWN1dGU7ZiZlYWN1dGU7ciZlYWN1dGU7cyBtZWd0aWx0dmEnOwokbGFuZ1snZXJyb3InXSA9ICdIaWJhJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnQ3NvcG9ydCBob3p6JmFhY3V0ZTthZCZhYWN1dGU7c2EnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdDc29wb3J0IGltcG9ydCZhYWN1dGU7bCZhYWN1dGU7c2EnOwokbGFuZ1snYWRkdXNlciddID0gJ0ZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTsgaG96eiZhYWN1dGU7YWQmYWFjdXRlO3NhJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdGZWxoYXN6biZhYWN1dGU7bCZvYWN1dGU7aywgYWtpayBtZWdmZWxlbG5layBhIGtyaXQmZWFjdXRlO3JpdW1va25hayc7CiRsYW5nWydncm91cCddID0gJ0Nzb3BvcnQnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdDc29wb3J0IGtpdiZhYWN1dGU7bGFzenQmYWFjdXRlO3NhJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzenRyJmFhY3V0ZTtjaSZvYWN1dGU7cyBzYWJsb24nOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnS2lqZWxlbnRrZXomZWFjdXRlO3Mgc2FibG9uJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnQmVqZWxlbnRrZXomZWFjdXRlO3Mgc2FibG9uJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyZW5jaSZhYWN1dGU7ayc7CiRsYW5nWyd1c2VycyddID0gJ0ZlbGhhc3puJmFhY3V0ZTtsJm9hY3V0ZTtrJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Zyb250ZW5kIFVzZXIgTWFuYWdlbWVudCc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0FsbG93IHVzZXJzIHRvIGxvZyBpbiB0byB0aGUgZnJvbnRlbmQgb2YgeW91ciBzaXRlJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdFbGFwJmVhY3V0ZTtydGVsbWV6ZXR0IGbFkW9sZGFsJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdVdG9scyZvYWN1dGU7IG1lZ2wmYWFjdXRlO3RvZ2F0b3R0IG9sZGFsJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ00mYWFjdXRlO3Mgb2xkYWw6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnJklhY3V0ZTtyZCBiZSBhIHN6Jm91bWw7dmVnZXQgYSBrJmVhY3V0ZTtwcsWRbCc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/it_IT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fZmlsdGVyX3NvcnRieSddID0gJzxzdHJvbmc+Tm90YTo8L3N0cm9uZz4gSWwgcmlvcmRpbm8gZGVsbGUgY29sb25uZSBmb3JuaXImYWdyYXZlOyB1biBvcmRpbmFtZW50byB1bHRlcmlvcmUgc3VnbGkgZWxlbWVudGkgY29ycmlzcG9uZGVudGknOwokbGFuZ1snYW55J10gPSAnUXVhbHNpYXNpJzsKJGxhbmdbJ3NvcnRieV91c2VybmFtZV9hc2MnXSA9ICdOb21lIHV0ZW50ZSAoY3Jlc2NlbnRlKSc7CiRsYW5nWydzb3J0YnlfdXNlcm5hbWVfZGVzYyddID0gJ05vbWUgdXRlbnRlIChkZWNyZXNjZW50ZSknOwokbGFuZ1snc29ydGJ5X2NyZWF0ZV9hc2MnXSA9ICdEYXRhIGRpIGNyZWF6aW9uZSAoY3Jlc2NlbnRlKSc7CiRsYW5nWydzb3J0YnlfY3JlYXRlX2Rlc2MnXSA9ICdEYXRhIGRpIGNyZWF6aW9uZSAoZGVjcmVzY2VudGUpJzsKJGxhbmdbJ3NvcnRieV9leHBpcmVzX2FzYyddID0gJ0RhdGEgZGkgc2NhZGVuemEgKGNyZXNjZW50ZSknOwokbGFuZ1snc29ydGJ5X2V4cGlyZXNfZGVzYyddID0gJ0RhdGEgZGkgc2NhZGVuemEgKGRlY3Jlc2NlbnRlKSc7CiRsYW5nWydpbmZvX2VuY3J5cHRlZCddID0gJ0xlIHByb3ByaWV0JmFncmF2ZTsgY3JpcHRhdGUgcG9zc29ubyBlc3NlcmUgdmlzdWFsaXp6YXRlIGUgbW9kaWZpY2F0ZSBlc2NsdXNpdmFtZW50ZSBkYWxsJiMwMzk7dXRlbnRlLiBOZW1tZW5vIGwmIzAzOTthbW1pbmlzdHJhdG9yZSBwdSZvZ3JhdmU7IHZlZGVyZSBvIGdlc3RpcmUgcXVlc3RlIGluZm9ybWF6aW9uaSc7CiRsYW5nWydlbmNyeXB0ZWQnXSA9ICdDcmlwdGF0byc7CiRsYW5nWydpbmZvX2Nvb2tpZW5hbWUnXSA9ICdTZSBpbXBvc3RhdG8sIHZlcnImYWdyYXZlOyBhYmlsaXRhdGEgbGEgZnVuemlvbmFsaXQmYWdyYXZlOyAmcXVvdDtyaWNvcmRhbWkmcXVvdDsuICBFJiMwMzk7IHNpbWlsZSBhbGxhIGZ1bnppb25hbGl0JmFncmF2ZTsgJnF1b3Q7a2VlcGFsaXZlJnF1b3Q7IHBlciBpIGNvb2tpZSwgbWEgZHVyYSBmaW5vIGEgc2VpIGdpb3JuaS4nOwokbGFuZ1snbXNnX3VzZXJuYW1lX3JlYWRvbmx5J10gPSAnTm9uICZlZ3JhdmU7IHBlcm1lc3NhIGxhIG1vZGlmaWNhIGRlbCBub21lIHV0ZW50ZSBwZXIgcXVlc3RvIGFjY291bnQnOwokbGFuZ1snbXNnX3Bhc3N3b3JkX3JlYWRvbmx5J10gPSAnTm9uICZlZ3JhdmU7IHBlcm1lc3NhIGxhIG1vZGlmaWNhIGRlbGxhIHBhc3N3b3JkIHBlciBxdWVzdG8gYWNjb3VudCc7CiRsYW5nWydwcm9tcHRfbm9ybWFsbG9naW4nXSA9ICdBY2Nlc3NvIERpcmV0dG8nOwokbGFuZ1snbW92ZV91cCddID0gJ1Nwb3N0YSBTdSc7CiRsYW5nWydtb3ZlX2Rvd24nXSA9ICdTcG9zdGEgR2kmdWdyYXZlOyc7CiRsYW5nWyd0aXRsZV9wcm9wbW9kdWxlJ10gPSAnUXVlc3RhIHByb3ByaWV0JmFncmF2ZTsgJmVncmF2ZTsgZ2VuZXJhdGEgZGEgdW4gbW9kdWxvIGUgbm9uIHB1Jm9ncmF2ZTsgZXNzZXJlIG1vZGlmaWNhdGFUaGlzIHByb3BlcnR5IGlzIGNyZWF0ZWQgYnkgYSBtb2R1bGUsIGFuZCBjYW5ub3QgYmUgZWRpdGVkJzsKJGxhbmdbJ25vdF9hdmFpbGFibGUnXSA9ICdOb24gZGlzcG9uaWJpbGUnOwokbGFuZ1sncHJvbXB0X2RmbHRfY2hlY2tlZCddID0gJ1F1ZXN0byBjYW1wbyBkb3ZyZWJiZSBlc3NlcmUgYXR0aXZvIGluIG1vZG8gcHJlZGVmaW5pdG8nOwokbGFuZ1snb3BlcmF0aW9uX2NvbXBsZXRlZCddID0gJ09wZXJhemlvbmUgQ29tcGxldGEnOwokbGFuZ1snbWVtYmVycyddID0gJ01lbWJyaSc7CiRsYW5nWyd2aWV3X2ZpbHRlciddID0gJ1ZlZGkgRmlsdHJvJzsKJGxhbmdbJ2RhdGEnXSA9ICdEYXRpJzsKJGxhbmdbJ2FwcGxpZWQnXSA9ICdBcHBsaWNhdG8nOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnPDwnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnPic7CiRsYW5nWydsYXN0cGFnZSddID0gJz4+JzsKJGxhbmdbJ3BhZ2UnXSA9ICdQYWdpbmEnOwokbGFuZ1sncHJvbXB0X2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnUGVybWV0dGkgQ2FtYmlvIE5vbWUgVXRlbnRlJzsKJGxhbmdbJ2luZm9fYWxsb3dfY2hhbmdldXNlcm5hbWUnXSA9ICdTZSBhYmlsaXRhdG8sIGFnbGkgdXRlbnRpIHNhciZhZ3JhdmU7IHBlcm1lc3NvIG1vZGlmaWNhcmUgaWwgcHJvcHJpbyBub21lIHV0ZW50ZSBhc3NpZW1lIGFkIGFsdHJlIGltcG9zdGF6aW9uaSc7CiRsYW5nWyd0ZW1wbGF0ZV9zYXZlZCddID0gJ01vZGVsbG8gc2FsdmF0byc7CiRsYW5nWyd0ZW1wbGF0ZV9yZXNldGRlZmF1bHRzJ10gPSAnTW9kZWxsbyByaXBvcnRhdG8gYWkgdmFsb3JpIHByZWRlZmluaXRpJzsKJGxhbmdbJ2xibF9zZXR0aW5ncyddID0gJ0ltcG9zdGF6aW9uaSc7CiRsYW5nWydsYmxfdGVtcGxhdGVzJ10gPSAnTW9kZWxsaSc7CiRsYW5nWydlbmFibGVfY2FwdGNoYSddID0gJ0FiaWxpdGEgQ2FwdGNoYSBzdWwgbW9kdWxvIGRpIGxvZ2luJzsKJGxhbmdbJ2luZm9fZW5hYmxlX2NhcHRjaGEnXSA9ICdTZSBsJiMwMzk7dXRlbnRlIG5vbiBoYSBlc2VndWl0byBsJiMwMzk7YWNjZXNzbyBlIGxlIHByZWZlcmVuemUgZGVsIG1vZHVsbyBpbmRpY2FubyBkaSB2aXN1YWxpenphcmUgaWwgbW9kdWxvIGRpIGxvZ2luLCBxdWVzdCYjMDM5O29wemlvbmUgY29udHJvbGxhIHNlIGRlYmJhIGVzc2VyZSB2aXN1YWxpenphdGEgdW4mIzAzOTthdXRlbnRpY2F6aW9uZSBjYXB0Y2hhLCBzZSBpbCBtb2R1bG8gY2FwdGNoYSAmZWdyYXZlOyBkaXNwb25pYmlsZSc7CiRsYW5nWydwYWdldHlwZV91bmF1dGhvcml6ZWQnXSA9ICdOb24gc2lldGUgYXV0b3JpenphdGkgYSB2ZWRlcmUgcXVlc3RvIGNvbnRlbnV0byc7CiRsYW5nWydpbmZvX2NvbnRlbnRwYWdlX2dyb3VwbGlzdCddID0gJ1NwZWNpZmljYSB1bmEgbGlzdGEgZGkgZ3J1cHBpIGRpIEZFVSBjaGUgcG9zc29ubyBhY2NlZGVyZSBhIHF1ZXN0YSBwYWdpbmEuIE5vbiBzZWxlemlvbmFuZG8gYWxjdW4gZ3J1cHBvIHZlcnImYWdyYXZlOyBwZXJtZXNzYSBsYSB2aXNpb25lIGRlbGxhIHBhZ2luYSBhIHR1dHRpIGdsaSB1dGVudGkgZGkgRkVVJzsKJGxhbmdbJ3BhZ2V0eXBlX3NldHRpbmdzJ10gPSAnaW1wb3N0YXppb25pIFBhZ2luZSBQcm90ZXR0ZSc7CiRsYW5nWydwYWdldHlwZV9ncm91cHMnXSA9ICdHcnVwcGkgQXV0b3JpenphdGknOwokbGFuZ1snaW5mb19wYWdldHlwZV9ncm91cHMnXSA9ICdTZWxlemlvbmF0ZSBpIGdydXBwaSBjaGUgc29ubyBhdXRvcml6emF0aSAoaW4gbW9kbyBwcmVkZWZpbml0bykgYSB2aXN1YWxpenphcmUgcGFnaW5lIHByb3RldHRlLiBVbiB1dGVudGUgZWRpdG9yIGNvbiBwZXJtZXNzaSAmcXVvdDtHZXN0aXNjaSB0dXR0byBpbCBjb250ZW51dG8mcXVvdDsgcHUmb2dyYXZlOyBzb3ZyYXNjcml2ZXJlIHF1ZXN0YSBvcHppb25lIHBlciBvZ25pIHBhZ2luYSc7CiRsYW5nWydwYWdldHlwZV9hY3Rpb24nXSA9ICdBemlvbmUgcGVyIGFjY2Vzc28gbm9uIHN1ZmZpY2llbnRlJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfYWN0aW9uJ10gPSAnU3BlY2lmaWNhIGlsIGNvbXBvcnRhbWVudG8gZGEgc2VndWlyZSBwZXIgY2hpIGFjY2VkZSBhIHF1ZXN0YSBwYWdpbmEgc2VuemEgYXZlcmUgcGVybWVzc2kgc3VmZmljaWVudGkuIFBvdGV0ZSByZWluZGlyaXp6YXJlIHZlcnNvIHVuYSBwYWdpbmEgc3BlY2lmaWNhLCBvcHB1cmUgdmlzdWFsaXp6YXJlIGlsIG1vZHVsbyBkaSBhY2Nlc3NvJzsKJGxhbmdbJ3Nob3dsb2dpbmZvcm0nXSA9ICdWaXN1YWxpenphIG1vZHVsbyBkaSBhY2Nlc3NvJzsKJGxhbmdbJ3JlZGlyZWN0J10gPSAnUmVpbmRpcml6emFyZSB2ZXJzbyB1bmEgUGFnaW5hJzsKJGxhbmdbJ3BhZ2V0eXBlX3JlZGlyZWN0dG8nXSA9ICdSZWluZGlyaXp6YXJlIGEnOwokbGFuZ1snaW5mb19wYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnU3BlY2lmaWNhIGxhIHBhZ2luYSBhIGN1aSByZWluZGlyaXp6YXJlLiBTZSBub24gbmUgc2NlZ2xpZXJldGUgbmVzc3VuYSBlIGwmIzAzOTthemlvbmUgaW1wb3N0YXRhICZlZ3JhdmU7ICZxdW90O3JlaW5kaXJpenphcmUmcXVvdDssIHZlcnImYWdyYXZlOyB2aXN1YWxpenphdG8gdW4gbWVzc2FnZ2lvIGNoZSAgaW5kaWNhIGNoZSBsJiMwMzk7dXRlbnRlIG5vbiBoYSBhY2Nlc3NvIGFsbGEgcGFnaW5hJzsKJGxhbmdbJ3Blcm1pc3Npb25zJ10gPSAnUGVybWVzc2knOwokbGFuZ1snZmV1X3Byb3RlY3RlZF9wYWdlJ10gPSAnQ29udGVudXRvIFByb3RldHRvJzsKJGxhbmdbJ3Byb21wdF92aWV3cHJvcHMnXSA9ICdTZWxlemlvbmF0ZSBQcm9wcmlldCZhZ3JhdmU7IGFnZ2l1bnRpdmUgZGEgdmlzdWFsaXp6YXJlJzsKJGxhbmdbJ3ZpZXcnXSA9ICdWaXN1YWxpenphJzsKJGxhbmdbJ2luZm9faWdub3JlX3VzZXJpZCddID0gJ1NlIHNlbGV6aW9uYXRvLCBsYSBwcm9jZWR1cmEgZGkgaW1wb3J0YXppb25lIHRlbnRlciZhZ3JhdmU7IGRpIGFnZ2l1bmdlcmUgdXRlbnRpIGluZGlwZW5kZW50ZW1lbnRlIGRhbGxhIGNvbG9ubmEgdXNlcmlkLiAgU2UgdW4gdXRlbnRlIGNvbiBpbCBub21lIHNwZWNpZmljYXRvIG5lbCBmaWxlIGltcG9ydGF0byBlc2lzdGUgZ2kmYWdyYXZlOywgdmVyciZhZ3JhdmU7IGdlbmVyYXRvIHVuIGVycm9yZSc7CiRsYW5nWydpZ25vcmVfdXNlcmlkJ10gPSAnSWdub3JhIENvbG9ubmEgVXNlcklEIGR1cmFudGUgbCYjMDM5O2ltcG9ydGF6aW9uZSZpZ3JhdmU7JzsKJGxhbmdbJ2V4cG9ydF9wYXNzaGFzaCddID0gJ0VzcG9ydGEgbCYjMDM5O2hhc2ggZGVsbGEgcGFzc3dvcmQgbmVsIGZpbGUnOwokbGFuZ1snaW5mb19leHBvcnRfcGFzc2hhc2gnXSA9ICdMJiMwMzk7aGFzaCBkZWxsYSBwYXNzd29yZCAmZWdyYXZlOyB1dGlsZSBzb2xvIHNlIGxhIGNvZGlmaWNhIGRlbGxhIHBhc3N3b3JkIHN1bGwmIzAzOTtob3N0IGRpIGltcG9ydGF6aW9uZSAmZWdyYXZlOyBpZGVudGljYSBhIHF1ZWxsYSBkZWxsJiMwMzk7aG9zdCBkaSBlc3BvcnRhemlvbmUnOwokbGFuZ1snZXJyb3JfYWRqdXN0c2FsdCddID0gJ0xhIGNvZGlmaWNhIGRlbGxhIHBhc3N3b3JkIG5vbiBwdSZvZ3JhdmU7IGVzc2VyZSBtb2RpZmljYXRhJzsKJGxhbmdbJ3Byb21wdF9wd3NhbHQnXSA9ICdDb2RpZmljYSBQYXNzd29yZCc7CiRsYW5nWydpbmZvX3B3c2FsdCddID0gJ0lsIG1vZHVsbyBGcm9udEVuZFVzZXJzIGNvZGlmaWNhIHR1dHRlIGxlIHBhc3N3b3JkIGNvbiBxdWVzdGEgY2hpYXZlLCBjcmVhdGEgaW4gZmFzZSBkaSBpbnN0YWxsYXppb25lLiAgRG9wbyBjaGUgZ2xpIHV0ZW50aSB2ZW5nb25vIGFnZ2l1bnRpIGFsIGRhdGFiYXNlLCBsYSBjb2RpZmljYSBub24gcHUmb2dyYXZlOyBlc3NlcmUgbW9kaWZpY2F0YS4gTGEgY2hpYXZlIGRpIGNvZGlmaWNhIHBvdHJlYmJlIGVzc2VyZSB2dW90YSBwZXIgaW5zdGFsbGF6aW9uaSBwaSZ1Z3JhdmU7IGRhdGF0ZS4nOwokbGFuZ1snYWR2YW5jZWRfc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmkgQXZhbnphdGUnOwokbGFuZ1snaW5mb19zZXNzaW9udGltZW91dCddID0gJ1NwZWNpZmljYXRlIGlsIG51bWVybyBkaSBzZWNvbmRpIHByaW1hIGNoZSB1biB1dGVudGUgaW5hdHRpdm8gdmVuZ2EgZGlzY29ubmVzc28gZGFsIHNpdG8gYXV0b21hdGljYW1lbnRlJzsKJGxhbmdbJ3Byb21wdF9leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ0ludGVydmFsbG8gU2NhZGVuemEgVXRlbnRlJzsKJGxhbmdbJ2luZm9fZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdTcGVjaWZpY2F0ZSB1biB2YWxvcmUgKGluIHNlY29uZGkpIGNoZSBpbmRpY2EgbGEgZnJlcXVlbnphIGNvbiBjdWkgaWwgc2lzdGVtYSBmb3J6aSBsYSBkaXNjb25uZXNzaW9uZSBkaSB1dGVudGkgY29uIHNlc3Npb25pIHNjYWR1dGUuIEUmIzAzOTsgdW4mIzAzOTtvdHRpbWl6emF6aW9uZSBwZXIgcmlkdXJyZSBsZSBxdWVzcnkgdmVyc28gaWwgZGF0YWJhc2UuIFNlIGxhc2NpYXRvIHZ1b3RvIG8gaW1wb3N0YXRvIGEgMCwgbGEgc2NhZGVuemEgdmVyciZhZ3JhdmU7IGF0dHVhdGEgYWQgb2duaSByaWNoaWVzdGEuJzsKJGxhbmdbJ21zZ19zZXR0aW5nc2NoYW5nZWQnXSA9ICdJbXBvc3RhemlvbmkgYWdnaW9ybmF0ZSBjb3JyZXR0YW1lbnRlJzsKJGxhbmdbJ2ZvcmNlZGxvZ291dHRhc2tfZGVzYyddID0gJ0ZvcnphIGxhIGRpc2Nvbm5lc3Npb25pIGRlZ2xpIHV0ZW50aSBhZCBpbnRlcnZhbGxpIHJlZ29sYXJpJzsKJGxhbmdbJ3Byb21wdF9mb3JjZWxvZ291dF90aW1lcyddID0gJ1RlbXBpIHBlciBkaXNjb25uZXNzaW9uZSBmb3J6YXRhJzsKJGxhbmdbJ2luZm9fZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICdFbGVuY2F0ZSB1bmEgbGlzdGEgZGkgdGVtcGksIHNlcGFyYXRpIGRhIHZpcmdvbGEsIG5lbGxhIGZvcm1hICZxdW90O0hIOk1NLEhIOk1NLC4uLiZxdW90OyBpbiBjdWkgZ2xpIHV0ZW50aSB2ZXJyYW5ubyBmb3J6YXRpIGFsbGEgZGlzY29ubmVzc2lvbmUuIE5vdGE6IHF1ZXN0YSBwcm9jZWR1cmEgdXRpbGl6emEgaWwgbWVjY2FuaXNtbyBwc2V1ZG9jcm9uLCBwZXJ0YW50byB2ZXJpZmljYXRlIGNoZSBpIHRlbXBpIGluc2VyaXRpIGNvaW5jaWRhbm8gcmFnaW9uZXZvbG1lbnRlIGNvbiBsYSB2b3N0cmEgJnF1b3Q7Z3JhbnVsYXJpdCZhZ3JhdmU7IHBzZXVkb2Nyb24mcXVvdDsgZSBjaGUgY2kgc2lhbm8gcmljaGllc3RlIHN1ZmZpY2llbnRpIHBlcmNoJmVncmF2ZTsgaWwgcHNldWRvY3JvbiB2ZW5nYSBlc2VndWl0by4nOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdFc2NsdWRpIHV0ZW50aSBhdHRpdmkgbmVnbGkgdWx0aW1pIDxlbT4obWludXRpKTwvZW0+JzsKJGxhbmdbJ2luZm9fZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ1NlIHNwZWNpZmljYXRvLCB0dXR0aSBnbGkgdXRlbnRpIGNoZSBzb25vIHN0YXRpIGF0dGl2aSBpbiBxdWVzdG8gbnVtZXJvIGRpIG1pbnV0aSBub24gdmVycmFubm8gZm9yemF0aSBhbGxhIGRpc2Nvbm5lc3Npb25lJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlJ10gPSAnU2lldGUgY2VydGkgZGkgdm9sZXJlIGVsaW1pbmFyZSBsJiMwMzk7dXRlbnRlICVzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRmaWxlZXh0ZW5zaW9uJ10gPSAnSWwgZmlsZSBjYXJpY2F0byBub24gY29ycmlzcG9uZGUgY29uIGkgdGlwaSBkaSBmaWxlIGNvbnNlbnRpdGknOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ1R1dHRpIGkgZGF0aSBhc3NvY2lhdGkgY29uIGlsIG1vZHVsbyBGcm9udEVuZFVzZXJzIHNhcmFubm8gY2FuY2VsbGF0aSc7CiRsYW5nWydpbmZvX2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdTZSBhYmlsaXRhdG8sIHF1ZXN0byBtb2R1bG8gYXNwZXR0YSBwZXIgZXZlbnRpIGRhbGxhIHN1aXRlIEVjb21tZXJjZS4gIExhIHNlZ3VlbnRlIGNvbmZpZ3VyYXppb25lIGhhIGVmZmV0dG8gc29sbyBzZSBxdWVzdG8gJmVncmF2ZTsgYWJpbGl0YXRvLic7CiRsYW5nWydwcm9tcHRfZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ1Byb250byBwZXIgZXZlbnRpIGRpIE9yZGVyJzsKJGxhbmdbJ2luZm9fcGFpZHJlZ19zZXR0aW5ncyddID0gJ0xhIGNvbmZpZ3VyYXppb25lIHNlZ3VlbnRlIHNpIGFwcGxpY2Egc29sbyBjb24gbCYjMDM5O3VzbyBkaSBTZWxmIFJlZ2lzdHJhdGlvbiBlIHBlcm1ldHRlbmRvIGxhIHJlZ2lzdHJhemlvbmUgYSBwYWdhbWVudG8nOwokbGFuZ1snbm9uZSddID0gJ05lc3N1bm8nOwokbGFuZ1snZGVsZXRlX3VzZXInXSA9ICdVdGVudGUgY2FuY2VsbGF0byc7CiRsYW5nWydleHBpcmVfdXNlciddID0gJ1V0ZW50ZSBzY2FkdXRvJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnXSA9ICdBemlvbmUgZGEgZXNlZ3VpcmUgcXVhbmRvIHVuYSBzb3R0b3Njcml6aW9uZSAmZWdyYXZlOyBhbm51bGxhdGEnOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmRlbGV0ZWQnXSA9ICdBemlvbmUgZGEgZXNlZ3VpcmUgcXVhbmRvIHVuYSBzb3R0b3Njcml6aW9uZSAmZWdyYXZlOyBjYW5jZWxsYXRhJzsKJGxhbmdbJ2Vjb21tZXJjZV9zZXR0aW5ncyddID0gJ0NvbmZpZ3VyYXppb25pIEVjb21tZXJjZSc7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ01hcmNhdG9yZSBkZWwgU2VjdXJlIEZpZWxkJzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdDb2xvcmUgZGVsIFNlY3VyZSBGaWVsZCc7CiRsYW5nWydwcm9tcHRfZW5jcnlwdCddID0gJ0ltbWFnYXp6aW5hIHF1ZXN0byBkYXRvIGNyaXB0YXRvIG5lbCBkYXRhYmFzZSc7CiRsYW5nWydlcnJvcl9ub3RzdXBwb3J0ZWQnXSA9ICdMYSBvcHppb25lIHNjZWx0YSBub24gJmVncmF2ZTsgc3VwcG9ydGF0YSBkYWxsJiMwMzk7YXR0dWFsZSBjb25maWd1cmF6aW9uZSc7CiRsYW5nWydhdWRpdF91c2VyX2NyZWF0ZWQnXSA9ICdVdGVudGUgYXV0b21hdGljYW1lbnRlIGNyZWF0byc7CiRsYW5nWydpbmZvX2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdTZSB1biB1dGVudGUgJmVncmF2ZTsgYXV0aGVudGljYXRvIGRhIHVuIG1vZHVsbyBlc3Rlcm5vIG1hIHNjb25vc2NpdXRvIGFsIG1vZHVsbyBGcm9udEVuZFVzZXJzIGRvdnJlYmJlIGVzc2VyZSBjcmVhdG8gYXV0b210aWNhbWVudGUgdW4gYWNjb3VudCBGRVU/JzsKJGxhbmdbJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnQXV0b21hdGljYW1lbnRlIGNyZWEgdXRlbnRpIFNjb25vc2NpdXRpJzsKJGxhbmdbJ2Rpc3BsYXlfc2V0dGluZ3MnXSA9ICdDb25maWd1cmF6aW9uaSBkaSB2aXN1YWxpenphemlvbmUnOwokbGFuZ1snaW5mb19zdGRfYXV0aF9zZXR0aW5ncyddID0gJ0xlIHNlZ3VlbnRpIGNvbmZpZ3VyYXppb25pIHNvbm8gc29sbyBhcHBsaWNhYmlsaSBjb24gbCYjMDM5O3VzbyBkaSAmcXVvdDtBdXRlbnRpY2F6aW9uaSBpbnRlcm5lJnF1b3Q7Lic7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHVuJ10gPSAnU2VsZXppb25hbmRvIE5vIGRpc2FiaWxpdGVyJmFncmF2ZTsgbCYjMDM5O2FiaWxpdCZhZ3JhdmU7IHBlciB1bm8gdXNlciBkaSByaWNoaWVkZXJlIGxlIGluZm9ybWF6aW9uaSBwZXIgbGEgcGVyZGl0YSBkZWwgbG9naW4sIGEgcHJlc2NpbmRlcmUgZGEgYWx0cmUgaW1wb3N0YXppb25pJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0cHcnXSA9ICdTZWxlemlvbmFuZG8gTm8gZGlzYWJpbGl0ZXImYWdyYXZlOyBsJiMwMzk7YWJpbGl0JmFncmF2ZTsgcGVyIHVubyB1c2VyIGRpIHJlaW1wb3N0YXJlIGxhIHBhc3N3b3JkLCBhIHByZXNjaW5kZXJlIGRhIGFsdHJlIGltcG9zdGF6aW9uaSc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0dW4nXSA9ICdQZXJtZXR0ZSBhZ2xpIHV0ZW50aSBkaSByaWNoaWVkZXJlIGlsIGxvcm8gdXNlcm5hbWUnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHB3J10gPSAnUGVybWV0dGUgYWdsaSB1dGVudGkgZGkgcmljaGllZGVyZSB1biBjYW1iaWFtZW50byBkaSBwYXNzd29yZCc7CiRsYW5nWydhdXRoX3NldHRpbmdzJ10gPSAnQ29uZmlndXJhemlvbmkgZGkgYXV0ZW50aWNhemlvbmUnOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdBdXRlbnRpY2F6aW9uaSBpbnRlcm5lJzsKJGxhbmdbJ2F1dGhfYnVpbHRpbiddID0gJ0F1dGVudGljYXppb25lIHN0YW5kYXJkIEZFVSc7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F1dGVudGljYXppb25lIE1vZHVsby9NZXRvZG8nOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ0lsIG1vZHVsbyBGcm9udGVuZFVzZXJzIHN1cHBvcnRhIGwmIzAzOTt1dGlsaXp6byBkaSBtZXRvZGkgZGkgYXV0ZW50aWNhemlvbmUgYWx0ZXJuYXRpdmksIGNvbiBwb3NzaWJpbGl0JmFncmF2ZTsgZGl2ZXJzZS4gIEFsY3VuZSBmdW56aW9uYWxpdCZhZ3JhdmU7IG5vbiByaXNwb25kZXJhbm5vIG8gc2FyYW5ubyBkaXNhYmlsaXRhdGUgbmVsIGNhc28gbm9uIHNpIHV0aWxpenppIGlsIHNpc3RlbWEgZGkgYXV0ZW50aWNhemlvbmUgaW50ZWdyYXRvJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnSWwgdmFsb3JlIHNwZWNpZmljYXRvIHBlciAlcyAmZWdyYXZlOyBnaSZhZ3JhdmU7IGluIHVzbyBkYSBhbHRybyB1dGVudGUnOwokbGFuZ1sndW5pcXVlJ10gPSAnVW5pY28nOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnSWwgdmFsb3JlIHNwZWNpZmljYXRvIHBlciAlcyAoJXMpIG5vbiAmZWdyYXZlOyB1bmljbyc7CiRsYW5nWydwcm9tcHRfZm9yY2VfdW5pcXVlJ10gPSAnRm9yemEgaSB2YWxvcmkgZGkgcXVlc3RhIHByb3ByaWV0JmFncmF2ZTsgZGkgZXNzZXJlIHVuaWNhIGF0dHJhdmVyc28gdHV0dGkgZ2xpIHV0ZW50aSc7CiRsYW5nWydoZWxwX3JldHVybmxhc3QnXSA9ICdVdGlsaXp6YXRvIGNvbiBpIG1vZHVsaSBkaSBsb2dpbiBlIGxvZ291dCwgcXVlc3RvIHBhcmFtZXRybyAoc2Ugc3BlY2lmaWNhdG8pIGluZGljaGVyJmFncmF2ZTsgY2hlIGwmIzAzOTt1dGVudGUgZGViYmEgZXNzZXJlIHJlaW5kaXJpenphdG8gdmVyc28gbGEgcGFnaW5hICh1cmwpIGNoZSBzdGF2YSB2aXN1YWxpenphbmRvIHByaW1hIGRlbGwmIzAzOTtlc2VjdXppb25lIGRlbGwmIzAzOTthemlvbmUuICBJbCBwYXJhbWV0cm8gc292cmFzY3JpdmVyJmFncmF2ZTsgbGUgaW1wb3N0YXppb25pIGRpIHJlaW5kaXJpenphbWVudG8gZSBpbCBwYXJhbWV0cm8gcmV0dXJudG8uJzsKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdVdGlsaXp6YXRvY29uIHVubyBkZWkgbW9kdWxpLCBxdWVzdG8gcGFyYW1ldHJvIHNwZWNpZmljYSBjaGUgaSBtb2R1bGkgbm9uIGRlYmJhbm8gZXNzZXJlIHBvc2l6aW9uYXRpIGluIGxpbmVhLCBtYSBjaGUgbCYjMDM5O291dHB1dCByaXN1bHRhbnRlIGRvcG8gbCYjMDM5O2ludmlvIGRlbCBtb2R1bG8gc29zdGl0dWlzY2EgaWwgYmxvY2NvIGRpIGNvbnRlbnV0byBwcmVkZWZpbml0byc7CiRsYW5nWyd0aXRsZV9yZXNldF9zZXNzaW9uJ10gPSAnQXZ2aXNvIHBlciBzZXNzaW9uZSBkaSBsb2dpbiBzY2FkdXRhJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnWW91ciBsb2dpbiBzZXNzaW9uIGlzIGFib3V0IHRvIGV4cGlyZSwgcGxlYXNlIGNsaWNrICZxdW90OyZxdW90O09rJnF1b3Q7IHRvIGNvbmZpcm0geW91ciBhY3Rpdml0eSBvbiB0aGlzIHdlYnNpdGUuJzsKJGxhbmdbJ29rJ10gPSAnT0snOwokbGFuZ1sncmVzZXRzZXNzaW9uX3RlbXBsYXRlJ10gPSAnUmVpbXBvc3RhIE1vZGVsbG8gU2Vzc2lvbmUnOwokbGFuZ1snaW5mb19uYW1lJ10gPSAnUXVlc3RvICZlZ3JhdmU7IGlsIG5vbWUgZGVsIGNhbXBvIHV0aWxpenphdG8gcGVyIGwmIzAzOTtpbmRpcml6emFtZW50byBpbiBzbWFydHkuICBEZXYmIzAzOTtlc3NlcmUgY29tcG9zdG8gc29sbyBkYSBjYXJhdHRlcmkgYWxmYW51bWVyaWNpIGUgdW5kZXJzY29yZSAoJnF1b3Q7XyZxdW90OykuJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ1Zpc2l0YXRvcmknOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdTZWxlemlvbmEgdW5vIG8gcGkmdWdyYXZlOyBncnVwcGkgRkVVIGEgY3VpICZlZ3JhdmU7IHBlcm1lc3NvIHZpc3VhbGl6emFyZSBxdWVzdGEgcGFnaW5hJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdTZWxlemlvbmFyZSBhbG1lbm8gdW4gZ3J1cHBvJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGV6aW9uYSB1bm8nOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ0Fubm8gZGkgcGFydGVuemEnOwokbGFuZ1snZW5kX3llYXInXSA9ICdBbm5vIGZpbmFsZSc7CiRsYW5nWydkYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdEaW1lbnNpb25lIG1pbmlhdHVyYSc7CiRsYW5nWydPblVwZGF0ZUdyb3VwJ10gPSAnQWxsYSBtb2RpZmljYSBkZWkgR3J1cHBpIFV0ZW50ZSc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdTb25vIHNlbGV6aW9uYXRpIHRyb3BwaSB1dGVudGkgcGVyIG9wZXJhemlvbmkgZGkgbWFzc2EuLi4gUmlkdWNldGVsaSBhIDI1MCBvIG1lbm8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdTaWV0ZSBzaWN1cmkgZGkgdm9sZXJlIGVsaW1pbmFyZSBnbGkgdXRlbnRpIHNlbGV6aW9uYXRpPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdFbGltaW5hIFNlbGV6aW9uYXRpJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyYSBub21lIHV0ZW50ZSBjYXN1YWxlIHF1YW5kbyBzaSBhZ2dpdW5nb25vIG51b3ZpIHV0ZW50aSc7CiRsYW5nWydtb250aHMnXSA9ICdtZXNpJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdQZXJpb2RvIGRpIHZhbGlkaXQmYWdyYXZlOyB1dGVudGUgcHJlZGVmaW5pdG8nOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnSW1wb3N0YXppb25pIGRpIG5vdGlmaWNhJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnSW1wb3N0YXppb25pIGRpIHByb3ByaWV0JmFncmF2ZTsnOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmkgZGkgcmVkaXJlemlvbmFtZW50byc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnSW1wb3N0YXppb25pIEdlbmVyYWxpJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmkgZGkgU2Vzc2lvbmUgZSBDb29raWUnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmkgQ2FtcGknOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnSWwgZmxhZyBsb3N0dXNlcm5hbWUgcHUmb2dyYXZlOyBlc3NlcmUgdXRpbGl6emF0byBzb2xvIHN1IGNhbXBpIG9iYmxpZ2F0b3JpJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ1Blcm1ldHRpIGwmIzAzOTt1c28gZGkgdW4gZWRpdG9yIHd5c2l3eWcgcGVyIHF1ZXN0JiMwMzk7YXJlYSBkaSB0ZXN0byc7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICdNb2RpZmljYSBVdGVudGUnOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdOb24gYWxsaW5lYXJlIE1vZHVsaSc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaWNjYXRlIHF1aSBzZSBub24gcmljb3JkYXRlIGkgZGV0dGFnbGkgZGVsIHZvc3RybyBsb2dpbic7CiRsYW5nWydpbmZvX2ZvcmdvdHB3J10gPSAnQ2xpY2NhdGUgcXVpIHNlIG5vbiByaWNvcmRhdGUgbGEgdm9zdHJhIHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnQ2xpY2NhdGUgcXVpIHBlciBkaXNjb25uZXR0ZXJ2aSc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnQ2xpY2NhdGUgcXVpIHBlciBtb2RpZmljYXJlIGxhIHZvc3RyYSBwYXNzd29yZCBvIGFsdHJlIGluZm9ybWF6aW9uaSc7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ1Zpc3VhbGl6emEgaWwgTW9kZWxsbyBVdGVudGUnOwokbGFuZ1snZXZlbnQnXSA9ICdFdmVudG8nOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ05vdGlmaWNhIEV2ZW50byBGRVUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnSW5kaXJpenpvIEVtYWlsIHBlciBOb3RpZmljaGUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ01vZGVsbG8gRW1haWwgZGkgTm90aWZpY2EnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnT2dnZXR0byBkZWxsYSBFbWFpbCBkaSBub3RpZmljYSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ05vdGlmaWNoZSB2aWEgRW1haWwnOwokbGFuZ1snT25Mb2dpbiddID0gJ0FsIExvZ2luJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnQWwgTG9nb3V0JzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ0FsbGEgU2NhZGVuemEgU2Vzc2lvbmUnOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnQWxsYSBDcmVhemlvbmUgTnVvdm8gVXRlbnRlJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ0FsbGEgQ2FuY2VsbGF6aW9uZSBVdGVudGUnOwokbGFuZ1snT25VcGRhdGVVc2VyJ10gPSAnQWxsYSBNb2RpZmljYSBJbXBvc3RhemlvbmkgVXRlbnRlJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdBbGxhIENyZWF6aW9uZSBHcnVwcGkgVXRlbnRlJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdBbGxhIENhbmNlbGxhemlvbmUgR3J1cHBpIFV0ZW50ZSc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ0xhIGZ1bnppb25hbGl0JmFncmF2ZTsgZGV0dGFnbGkgZGkgbG9naW4gcGVyc2kgJmVncmF2ZTsgc3RhdGEgY29tcGxldGF0YSBjb3JyZXR0YW1lbnRlLiBBYmJpYW1vIHRyb3ZhdG8gdW4gbm9tZSB1dGVudGUgdW5pdm9jbyBjaGUgY29ycmlzcG9uZGUgY29uIGxlIGluZm9ybWF6aW9uaSBjaGUgYXZldGUgaW5zZXJpdG8uJzsKJGxhbmdbJ3lvdXJfdXNlcm5hbWVfaXMnXSA9ICdJbCB2b3N0cm8gbm9tZSB1dGVudGUgJmVncmF2ZTsnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnVmkgcmFjY29tYW5kaWFtbyBkaSByZWdpc3RyYXJlIHF1ZXN0YSBpbmZvcm1hemlvbmUgaW4gdW4gcG9zdG8gc2ljdXJvIG1hIHJlY3VwZXJhYmlsZS4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ0lEL0FsaWFzIGRpIHBhZ2luYSBhIGN1aSBhbmRhcmUgZG9wbyBpbCBjYW1iaW8gZGVsbGUgaW1wb3N0YXppb25pJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ0lEL0FsaWFzIGRpIHBhZ2luYSBhIGN1aSBhbmRhcmUgZG9wbyBsYSB2ZXJpZmljYSBkZWwgY29kaWNlIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdNb2RlbGxvIERldHRhZ2xpIE5vbWUgVXRlbnRlIFBlcnNvJzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnTW9kZWxsbyBDb25mZXJtYSBOb21lIFV0ZW50ZSBQZXJzbyc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Vycm9yZTogUGkmdWdyYXZlOyBkaSB1biBhY2NvdW50IHV0ZW50ZSBjb2luY2lkZSBjb24gbGUgcHJvcHJpZXQmYWdyYXZlOyBzcGVjaWZpY2F0ZSc7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdFcnJvcmU6IE5vbiB0cm92byBuZXNzdW4gdXRlbnRlIGNvcnJpc3BvbmRlbnRlJzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdFcnJvcmU6IE5vbiB0cm92byB1biBncnVwcG8gY29uIHF1ZWwgbm9tZSc7CiRsYW5nWydyZWFkb25seSddID0gJ1NvbGEgbGV0dHVyYSc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnQ2xhc3NlIHBlciBsYSBtYW5pcG9sYXppb25lIHV0ZW50aSc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdEaXNjb25uZXNzbyBkYWxsJiMwMzk7YW1taW5pc3RyYXRvcmUnOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ01vc3RyYSBzb2xvIHV0ZW50aSBjb25uZXNzaSc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnRGlzY29ubmV0dGkgcXVlc3RvIHV0ZW50ZSc7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdQcm9wcmlldCZhZ3JhdmU7IHV0ZW50ZSc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0Nyb25vbG9naWEgdXRlbnRlJzsKJGxhbmdbJ2V4cG9ydCddID0gJ0VzcG9ydGEnOwokbGFuZ1snY2xlYXInXSA9ICdQdWxpc2NpJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0VzcG9ydGEgbGEgQ3Jvbm9sb2dpYSBVdGVudGUgaW4gQVNDSUkgY2hlICZlZ3JhdmU7IGFsbWVubyc7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ1B1bGlzY2kgaSB2YWxvcmkgZGVsbGEgQ3Jvbm9sb2dpYSBVdGVudGUgY2hlIHNvbm8gYWxtZW5vJzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ1ZhbG9yaSBkaSBMb2dpbiBEaW1lbnRpY2F0aT8nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAnRXNwb3J0YSBkZWZpbml6aW9uaSBkZWwgZ3J1cHBvIChlIHByb3ByaWV0JmFncmF2ZTspIGluIFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnR2VzdGlvbmUgY3Jvbm9sb2dpYSB1dGVudGUnOwokbGFuZ1sneWVzJ10gPSAnUyZpZ3JhdmU7JzsKJGxhbmdbJ25vJ10gPSAnTm8nOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnZGknOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogTmVzc3VuIGxpbWl0ZSAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdWZWNjaGlvIGRpIHVuIG9yYSc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdWZWNjaGlvIGRpIHNlaSBvcmUnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnVmVjY2hpbyBkaSBkb2RpY2kgb3JlJzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAnVmVjY2hpbyBkaSB1biBnaW9ybm8nOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnVmVjY2hpbyBkaSB1bmEgc2V0dGltYW5hJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdWZWNjaGlvIGRpIGR1ZSBzZXR0aW1hbmUnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ1ZlY2NoaW8gZGkgdW4gbWVzZSc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVmVjY2hpbyBkaSB0cmUgbWVzaSc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ1ZlY2NoaW8gZGkgc2VpIG1lc2knOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnVmVjY2hpbyBkaSB1biBhbm5vJzsKJGxhbmdbJ3RpdGxlX2dyb3Vwc29ydCddID0gJ1JhZ2dydXBwYW1lbnRvIGUgb3JkaW5hbWVudG8nOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1ZhbG9yaSBjaGUgY29ycmlzcG9uZG9ubyBhbCBjcml0ZXJpbyc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ05vbWkgVXRlbnRlIGRpc2NlbmRlbnRpJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdOb21pIFV0ZW50ZSBhc2NlbmRlbnRpJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdEYXRhIGRpc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ0RhdGEgYXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdUaXBvIGV2ZW50byBkaXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ1RpcG8gZXZlbnRvIGFzY2VuZGVudGUnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnSW5kaXJpenppIElwIGRpc2NlbmRlbnRpJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnSW5kaXJpenppIElwIGFzY2VuZGVudGknOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ05lc3N1bmEgY3Jvbm9sb2dpYSB0cm92YXRhJzsKJGxhbmdbJ3Jlc2V0J10gPSAnQXp6ZXJhJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ1JhZ2dydXBwYSBwZXIgaW5kaXJpenpvIElQJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRmlsdHJhIHBlciB0aXBvIGRpIGV2ZW50byc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdWaXN1YWxpenphIHNvbG8gZ2xpIGV2ZW50aSBjaGUgc29ubyBtZW5vIGRpOic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnTGltaXRlIHBhZ2luYSc7CiRsYW5nWydmb3InXSA9ICdwZXInOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdSZXBvcnQgY3Jvbm9sb2dpYSB1dGVudGUnOwokbGFuZ1sndW5rbm93biddID0gJ1Njb25vc2NpdXRvJzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJbmRpcml6em8gSVAnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ1RpcG8gZXZlbnRvJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnUml0b3JuYSc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnT3BlcmF6aW9uZSBkaSBpbXBvcnRhemlvbmUgY29tcGxldGF0YSc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdMaW5lZSBwcm9jZXNzYXRlJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdFcnJvcmkgaW5jb250cmF0aSc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUmVjb3JkIGFnZ2l1bnRpJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdOb24gdHJvdm8gcHJvcHJpZXQmYWdyYXZlOyBwZXIgaWwgZ3J1cHBvICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnTm9uIGhvIG90dGVudXRvIHJpc3Bvc3RlIGRhbCBzZXJ2ZXIgU01UUCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlbm90Zm91bmQnXSA9ICdJbCBmaWxlIHNwZWNpZmljYXRvICglcykgbm9uICZlZ3JhdmU7IHN0YXRvIHRyb3ZhdG8nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ1ZhbG9yZSBub24gdmFsaWRpIHBlciBjYW1waSB0ZW5kaW5hIG8gbXVsdGlzZWxlemlvbmUgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdJbCBjYW1wbyAlcyBlY2NlZGUgbGEgbHVuZ2hlenphIG1hc3NpbWEnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdFcnJvcmUgZGkgaW1wb3J0YXppb25lIChsaW5lYSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdOb24gcmllc2NvIGFkIG90dGVuZXJlIGxlIGRlZmluaXppb25pIGRlbGxhIHByb3ByaWV0JmFncmF2ZTsgKGVycm9yZSBpbnRlcm5vKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdQcm9ibGVtYSBuZWxsJiMwMzk7aW1wb3N0YXJlIGxlIGluZm9ybWF6aW9uaSB1dGVudGUnOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ05vbiB0cm92byB1bmEgY29sb25uYSBjaGUgY29pbmNpZGEgY29uIGlsIGNhbXBvIHJpY2hpZXN0byAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ05vbiB0cm92byBwcm9wcmlldCZhZ3JhdmU7IHBlciBpbCBncnVwcG8gc3BlY2lmaWNhdG8nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ0lsIGZpbGUgc3BlY2lmaWNhdG8gcGVyIGwmIzAzOTtpbXBvcnRhemlvbmUgbm9uICZlZ3JhdmU7IG5lbCBmb3JtYXRvIGNvcnJldHRvJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90b3BlbmZpbGUnXSA9ICdOb24gcG9zc28gYXByaXJlIGlsIGZpbGUnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjbiBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydGRlc3Rncm91cCddID0gJ0ltcG9ydGEgVXRlbnRpIGluIHF1ZXN0byBHcnVwcG8nOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnRmlsZSBDU1YgZGkgSW5wdXQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdGaWxlIFhNTCBkaSBJbnB1dCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcnMnXSA9ICdFc3BvcnRhIFV0ZW50aSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnRhIFV0ZW50aSc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdQdWxpc2NpJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnUGVyY29yc28gRGVzdGluYXppb25lIEltbWFnaW5lJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnUHJvYmxlbWEgb2Njb3JzbyBjb24gdW4gZmlsZSBjYXJpY2F0byBtYW5jYW50ZSAobWEgbmVjZXNzYXJpbyknOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ05vbiByaWVzY28gYWQgaW50ZXJwcmV0YXJlIGlsIGZpbGUgWE1MIGZvcm5pdG8nOwokbGFuZ1snZXJyb3Jfbm90ZW1wdHlncm91cCddID0gJ05vbiBwb3NzbyBlbGltaW5hcmUgdW4gZ3J1cHBvIGNoZSBjb250aWVuZSBhbmNvcmEgdXRlbnRpJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdRdWVzdG8gdXRlbnRlICZlZ3JhdmU7IGdpJmFncmF2ZTsgY29sbGVnYXRvJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ0lsIHRlc3RvIGRhbGwmIzAzOTtpbW1hZ2luZSBub24gJmVncmF2ZTsgc3RhdG8gaW5zZXJpdG8gY29ycmV0dGFtZW50ZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnUGVybWV0dGUgYWdsaSB1dGVudGkgZGkgY29ubmV0dGVyc2kgcGkmdWdyYXZlOyB2b2x0ZSBjb250ZW1wb3JhbmVhbWVudGUnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0VzdGVuc2lvbmkgZGVsIGZpbGUgaW1tYWdpbmUgZGkgdXBsb2FkIHBlcm1lc3NpIGFsbCYjMDM5O3V0ZW50ZSc7CiRsYW5nWydldmVudF9oZWxwX09uUmVmcmVzaFVzZXInXSA9ICc8aDM+T25SZWZyZXNoVXNlcjwvaDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiB0aGUgdXNlciBzZXNzaW9uIGlzIHJlZnJlc2hlZC48L3A+DQo8aDQ+UGFyYW1ldGVyczo8L2g0Pg0KPHVsPg0KICA8bGk+PGVtPmlkPC9lbT4gLSBUaGUgVXNlciBpZDwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJzxoMz5PbkRlbGV0ZVVzZXI8aDM+DQo8cD5VbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHVuIHV0ZW50ZSB2aWVuZSBjYW5jZWxsYXRvPC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBJbCBub21lIHV0ZW50ZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBMJiMwMzk7SUQgdXRlbnRlPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgY3JlYXRvIHVuIHV0ZW50ZTwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBJbCBub21lIHV0ZW50ZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBMJiMwMzk7SUQgdXRlbnRlPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdW4gdXRlbnRlICZlZ3JhdmU7IGFnZ2lvcm5hdG8gKG8gZGFsbG8gc3Rlc3NvIHVzZXIgbyBkYSBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gSWwgbm9tZSB1dGVudGU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gTCYjMDM5O0lEIHV0ZW50ZTwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlR3JvdXAnXSA9ICc8aDM+T25DcmVhdGVHcm91cDxoMz4NCjxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgY3JlYXRvIHVuIGdydXBwbzwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBJbCBub21lIGRlbCBncnVwcG88L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gTGEgZGVzY3JpemlvbmUgZGVsIGdydXBwbzwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBMJiMwMzk7SUQgZGVsIGdydXBwbzwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlR3JvdXAnXSA9ICc8aDM+T25EZWxldGVHcm91cDxoMz4NCjxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgY2FuY2VsbGF0byB1biBncnVwcG88L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gSWwgbm9tZSBkZWwgZ3J1cHBvPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEwmIzAzOTtJRCBkZWwgZ3J1cHBvPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJzxoMz5PbkxvZ2luPGgzPg0KPHA+VW4gZXZlbnRvIGdlbmVyYXRvIHF1YW5kbyB1biB1dGVudGUgZWZmZXR0dWEgbCYjMDM5O2FjY2Vzc288L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIElsIG5vbWUgZGVsbCYjMDM5O3V0ZW50ZSBjaGUgaGEgZWZmZXR0dWF0byBsJiMwMzk7YWNjZXNzbzwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBMJiMwMzk7aW5kaXJpenpvIElQIGRlbCBjbGllbnQ8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdW4gdXRlbnRlIHNpIGRpc2Nvbm5ldHRlPC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBJbCBub21lIGRlbGwmIzAzOTt1dGVudGUgZGlzY29ubmVzc288L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gTCYjMDM5O0lEIHV0ZW50ZTwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPlVuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gc2NhZGUgdW5hIHNlc3Npb25lIHV0ZW50ZTwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gSWwgbm9tZSBkZWxsJiMwMzk7dXRlbnRlIHNjYWR1dG88L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gTCYjMDM5O0lEIGRlbGwmIzAzOTt1dGVudGUgc2NhZHV0bzwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdVbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHVuIHV0ZW50ZSBzaSBjb25uZXR0ZSBhbCBzaXN0ZW1hJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdVbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHVuIHV0ZW50ZSBzaSBkaXNjb25uZXR0ZSBkYWwgc2lzdGVtYSc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ1VuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gbGEgc2Vzc2lvbmUgdXRlbnRlIHNjYWRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnVW4gZXZlbnRvIGdlbmVyYXRvIHF1YW5kbyB2aWVuZSBjcmVhdG8gdW4gbnVvdm8gdXRlbnRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25SZWZyZXNoVXNlciddID0gJ1VuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgYWdnaW9ybmF0YSBsYSBzZXNzaW9uZSB1dGVudGUnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdVbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIGxlIGluZm9ybWF6aW9uaSB1dGVudGUgc29ubyBhZ2dpb3JuYXRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnVW4gZXZlbnRvIGdlbmVyYXRvIHF1YW5kbyB2aWVuZSBjYW5jZWxsYXRvIHVuIGFjY291bnQgdXRlbnRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ1VuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgY3JlYXRvIHVuIG51b3ZvIGdydXBwbyc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdVbiBldmVudG8gZ2VuZXJhdG8gcXVhbmRvIHVuIGdydXBwbyAmZWdyYXZlOyBhZ2dpb3JuYXRvJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ1VuIGV2ZW50byBnZW5lcmF0byBxdWFuZG8gdmllbmUgY2FuY2VsbGF0byB1biBncnVwcG8nOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0dydXBwbyBkaSBCYWNrZW5kJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogTGUgc2VndWVudGkgbWFjcm8gcG9zc29ubyBlc3NlcmUgdXNhdGUgaW4gcXVlc3RvIGNhbXBpOiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gUXVhbmRvIHVzYXRlIGxhIG1hY3JvIHskZ3JvdXB9LCBpbCBzaXN0ZW1hIHNvc3RpdHVpciZhZ3JhdmU7IGlsIG5vbWUgZGVsIHByaW1vIGdydXBwbyB1dGVudGkgYSBjdWkgYXBwYXJ0aWVuZSBsJiMwMzk7dXRlbnRlIGUgcmVkaXJlemlvbmVyJmFncmF2ZTsgYSBxdWVsbGEgcGFnaW5hLic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnTW9kaWZpY2EgcXVlc3RvIGNhbXBvIHBlciByZXNldHRhcmUgbGUgcGFzc3dvcmQgdXRlbnRpJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdNb2RpZmljYSBxdWVzdG8gY2FtcG8gcGVyIHJlc2V0dGFyZSBsZSBwYXNzd29yZCB1dGVudGknOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnRXNpc3RlIGdpJmFncmF2ZTsgdW4gdXRlbnRlIGNvbiBxdWVzdG8gdXNlcm5hbWUnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnTmVzc3VuIHJpc3VsdGF0byByaWNldnV0byBkYWxsJiMwMzk7ZXNwb3J0YXppb25lIGNzdic7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdMdW5naGV6emEgZGVsIGNhbXBvIG5vbWUgdXRlbnRlJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0x1bmdoZXp6YSBkZWwgY2FtcG8gcGFzc3dvcmQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ0x1bmdoZXp6YSBNaW4vTWF4IGRlbGxhIHBhc3N3b3JkIG5vbiB2YWxpZGEnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ0x1bmdoZXp6YSBNaW4vTWF4IGRlbCBub21lIHV0ZW50ZSBub24gdmFsaWRhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdJbmRpcml6em8gRW1haWwgbm9uIHZhbGlkbyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ05vbiB0cm92byB1biBpbmRpcml6em8gZW1haWwgcGVyIHF1ZXN0byBhY2NvdW50JzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVtYSBuZWxsJiMwMzk7aW1wb3N0YXppb25lIGRlbGxlIGluZm9ybWF6aW9uaSB1dGVudGUnOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbWEgbmVsbCYjMDM5O2ltcG9zdGF6aW9uZSBkZWxsZSBwcm9wcmlldCZhZ3JhdmU7JzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVdGVudGUgYWdnaXVudG8gJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVdGVudGUgY2FuY2VsbGF0byB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdQcm9wcmlldCZhZ3JhdmU7JzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWxvcmUgKGVzcHJlc3Npb25lIHJlZ29sYXJlKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ0F0dGVuemlvbmU6IFF1ZXN0aSBjYW1waSBpbmZsdWlzY29ubyBzdWxsYSBkaW1lbnNpb25lIGRlaSBjYW1waSBkaSBpbnB1dCBkZWkgZm9ybS4gUG90cmViYmUgbm9uIGVzc2VyZSBjb25zaWdsaWFiaWxlIGRpbWludWlyZSBxdWVzdG8gbnVtZXJvIHN1IHVuIHNpdG8gZXNpc3RlbnRlJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdTaWV0ZSBzaWN1cmkgZGkgdm9sZXJlIG1vZGlmaWNhcmUgbGUgcHJlZmVyZW56ZSBkZWwgbW9kdWxvPyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnSW5kaXJpenpvIGVtYWlsIGdpJmFncmF2ZTsgdXNhdG8nOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnVXNhIGNvb2tpZXMgcGVyIHJpY29yZGFyZSBpIGRldHRhZ2xpIGRlbCBsb2dpbic7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ05vbWUgZGVsIGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1Blcm1ldHRpIGVtYWlsIGR1cGxpY2F0ZSc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdMJiMwMzk7aW5kaXJpenpvIEVtYWlsIGRpdmVudGEgbG8gdXNlcm5hbWUnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnU2kgY2VyY2EgZGkgdGVuZXJlIGF0dGl2YSBsYSBzZXNzaW9uZSBjb24gbCYjMDM5O3VzbyBkaSB1biBjb29raWUgPGVtPihpbCBjb29raWUgJmVncmF2ZTsgY29udGludWFtZW50ZSByZXNldHRhdG8gY29uIGwmIzAzOTthdHRpdml0JmFncmF2ZTsgc3VsIHNpdG8pPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKHBlcm1ldHRpIHBpJnVncmF2ZTsgdXRlbnRpIGNvbiBsbyBzdGVzc28gaW5kaXJpenpvIGVtYWlsKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKGluZGlyaXp6byBlbWFpbCBkZWxsJiMwMzk7dXRlbnRlICZlZ3JhdmU7IGlsIHN1byBub21lIHV0ZW50ZSAtLSBub24gdXRpbGl6emFyZSBxdWVzdGEgaW1wb3N0YXppb25lIGNvbiAmcXVvdDtwZXJtZXR0aSBpbmRpcml6emkgZW1haWwgZHVwbGljYXRpJnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdQZXJtZXR0aSByaWNoaWVzdGUgbXVsdGlwbGUgcGVyIHBhc3N3b3JkIGRpbWVudGljYXRlPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcocGVybWV0dGUgYWQgdW4gdXRlbnRlIGRpIHJpY2hpZWRlcmUgbCYjMDM5O2F6emVyYW1lbnRvIGRlbGxhIHBhc3N3b3JkIGFuY2hlIHNlIG5vbiBoYSBwb3J0YXRvIGEgdGVybWluZSB1bmEgcmljaGllc3RhIHByZWNlZGVudGUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNhIGkgcGVybWVzc2kgc3BlY2lmaWNpIGRlbCBtb2R1bG8gRnJvbnRFbmRVc2VyPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbWVudGUgaSBwZXJtZXNzaSBwZXIgRkVVc2VycyBzb25vIGdsaSBzdGVzc2kgZGVnbGkgZXF1aXZhbGVudGkgcGVybWVzc2kgbmVsbCYjMDM5O2FyZWEgQW1taW5pc3RyYXppb25lIGNvbWUgQWdnaXVuZ2kgVXRlbnRlLCBBZ2dpdW5naSBHcnVwcG8sIGV0Yy4gU2Ugc2VsZXppb25hdGUgcXVlc3RhIG9wemlvbmUgY2kgc2FyYW5ubyBwZXJtZXNzaSBzZXBhcmF0aSBwZXIgRkVVc2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdOb24gdHJvdm8gaWwgZmlsZSBkaSB1cGxvYWQgKGVycm9yZSBpbnRlcm5vKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ1NpICZlZ3JhdmU7IHZlcmlmaWNhdG8gdW4gcHJvYmxlbWEgbmVsIGZpbGUgc3BlZGl0by4gU2kgcHJlZ2EgZGkgcmlwcm92YXJlJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ05vbiBhdmV0ZSBpbnNlcml0byB1biBub21lIHV0ZW50ZSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdOb24gYXZldGUgaW5zZXJpdG8gbGEgVm9zdHJhIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ05vbiBhdmV0ZSBpbnNlcml0byB1bmEgcGFzc3dvcmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0xvZ291dCBVdGVudGUgRnJvbnRFbmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnTG9naW4gVXRlbnRlJzsKJGxhbmdbJ2VkaXRwcm9wX2luZm9tc2cnXSA9ICc8c3BhbiBzdHlsZT0mcXVvdDtjb2xvcjpyZWQmcXVvdDs+PGI+VVNBUkUgQ09OIENBVVRFTEE8L2I+IHF1YW5kbyBtb2RpZmljYXRlIHByb3ByaWV0JmFncmF2ZTsgZXNpc3RlbnRpIGNoZSBzb25vIGFzc2VnbmF0ZSBhIGdydXBwaSwgcG90ZXRlIHBvdGVuemlhbG1lbnRlIGNhdXNhcmUgZGFubmkgZSBibG9jY2FyZSB1biBzaXRvIGVzaXN0ZW50ZSA8aT4oc3BlY2lhbG1lbnRlIHNlIHJpZHVjZXRlIGxhIGx1bmdoZXp6YSBkZWkgY2FtcGksIGV0Yyk8L2k+PC9zcGFuPic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ1F1ZXN0YSBmdW56aW9uZSBub24gZnVuemlvbmEgc3Ugd2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnTm9uIGNyZWF0ZSB1bmEgcHJvcHJpZXQmYWdyYXZlOyBwZXIgdXNlcm5hbWUgbyBwYXNzd29yZCwgcG9pY2gmZWdyYXZlOyBxdWVzdGUgcHJvcHJpZXQmYWdyYXZlOyBzb25vIGdpJmFncmF2ZTsgaW5zZXJpdGUgbmVsIG1vZHVsbyBGcm9udEVuZFVzZXJzJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRjc3YnXSA9ICdFc3BvcnRhIGdsaSB1dGVudGkgaW4gQ1NWJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0VzcG9ydGEnOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0YSc7CiRsYW5nWydhZG1pbiddID0gJ0FtbWluaXN0cmF6aW9uZSc7CiRsYW5nWydlZGl0cHJvcCddID0gJ01vZGlmaWNhIHByb3ByaWV0JmFncmF2ZTsnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWFzc2ltYSBsdW5naGV6emEnOwokbGFuZ1snY3JlYXRlZCddID0gJ0NyZWF0byc7CiRsYW5nWydzb3J0YnknXSA9ICdPcmRpbmF0byBwZXInOwokbGFuZ1snc29ydCddID0gJ09yZGluYW1lbnRvJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1V0ZW50aSBuZWwgZ3J1cHBvL2kgc2VsZXppb25hdG8vaSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdMaW1pdGEgcmlzdWx0YXRpIGEnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnTm9uIHJpZXNjbyBhIHRyb3ZhcmUgdW4gY2FtcG8gZW1haWwgcGVyIHF1ZXN0byB1dGVudGUuIENvbnRhdHRhcmUgbCYjMDM5O2FtbWluaXN0cmF0b3JlIGRlbCBzaXN0ZW1hJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnSUQvQWxpYXMgZGVsbGEgcGFnaW5hIHBlciBpbCBtb2R1bG8gZGkgUGFzc3dvcmQgZGltZW50aWNhdGEnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdJRC9BbGlhcyBkZWxsYSBwYWdpbmEgcGVyIGlsIG1vZHVsbyBkaSBNb2RpZmljYSBjb25maWd1cmF6aW9uaSc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ0lEL0FsaWFzIGRlbGxhIHBhZ2luYSBhIGN1aSBhbmRhcmUgZG9wbyBpbCBsb2dpbiAqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ0lEL0FsaWFzIGRlbGxhIHBhZ2luYSBhIGN1aSBhbmRhcmUgZG9wbyBpbCBsb2dvdXQgKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdPcmRpbmEnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnVW4gbnVtZXJvIGRpIHV0ZW50aSBzb25vIG5lbCBtZXp6byBkZWxsJiMwMzk7YXp6ZXJhbWVudG8gZGVsbGEgbG9ybyBwYXNzd29yZCBkaW1lbnRpY2F0ZS4gSW4gcXVlc3RvIG1vbWVudG8gc29ubzonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSaW11b3ZpIHR1dHRlIGxlIGVudGl0JmFncmF2ZTsgcGkmdWdyYXZlOyB2ZWNjaGllIGRpIHVuYSBzZXR0aW1hbmEnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmltdW92aSB0dXR0ZSBsZSBlbnRpdCZhZ3JhdmU7IHBpJnVncmF2ZTsgdmVjY2hpZSBkaSB1biBtZXNlJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ1JpbXVvdmkgdHV0dGUgbGUgZW50aXQmYWdyYXZlOyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnU2lldGUgc2ljdXJpPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ0UmIzAzOTsgc3RhdG8gaW4gc2VyaXRvIHVuIGNvZGljZSBub24gdmFsaWRvLCBwcm92YXRlIGRpIG51b3ZvJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdOb24gJmVncmF2ZTsgcG9zc2liaWxlIHRyb3ZhcmUgdW4gY29kaWNlIHRlbXBvcmFuZW8gcGVyIGlsIHZvc3RybyBJRCB1dGVudGUgbmVsIGRhdGFiYXNlJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnTW9kZWxsbyB1c2F0byBwZXIgdmlzdWFsaXp6YXJlIGlsIG1vZHVsbyBkaSB2ZXJpZmljYSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnTW9kZWxsbyB1c2F0byBwZXIgbGEgZW1haWwgcGVyIHBhc3N3b3JkIGRpbWVudGljYXRhJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdWb2kgbyBxdWFsY3VuJiMwMzk7YWx0cm8gaGEgZ2kmYWdyYXZlOyByaWNoaWVzdG8gZGkgYXp6ZXJhcmUgbGEgcGFzc3dvcmQgcGVyIHF1ZXN0byBhY2NvdW50LiBDb250cm9sbGF0ZSBsYSB2b3N0cmEgZW1haWwsIGRvdnJlc3RlIGF2ZXJlIHJpY2V2dXRvIGxlIGlzdHJ1emlvbmkgc3UgY29tZSBhenplcmFyZSBsYSB2b3N0cmEgcGFzc3dvcmQnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0Vycm9yZSBkZWwgZGF0YWJhc2UnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnQXZldGUgcmljZXZ1dG8gcXVlc3RvIG1lc3NhZ2dpbyBwZXJjaCZlZ3JhdmU7IHF1YWxjdW5vIGhhIHNlZ25hbGF0byBzdWwgbm9zdHJvIHNpdG8gY2hlIGF2ZXRlIHBlcnNvIGxhIFZvc3RyYSBwYXNzd29yZC4gU2UgJmVncmF2ZTsgY29ycmV0dG8sIGxlZ2dldGUgbGUgaXN0cnV6aW9uaSBzb3R0b3N0YW50aS4gU2Ugbm9uIHNhcGV0ZSBkaSBjb3NhIHNpIHRyYXR0aSwgcG90ZXRlIHRyYW5xdWlsbGFtZW50ZSBjYW5jZWxsYXJlIHF1ZXN0byBtZXNzYWdnaW8sIGdyYXppZSBwZXIgaWwgdGVtcG8gZGVkaWNhdG9jaS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdDb2RpY2UnOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnSWwgc2VndWVudGUgY29kaWNlICZlZ3JhdmU7IHN0YXRvIGdlbmVyYXRvIGluIG1hbmllcmEgY2FzdWFsZSBwZXIgdmVyaWZpY2FyZSBsJiMwMzk7YWNjb3VudCB1dGVudGUuIFF1YW5kbyBmYXRlIGNsaWNrIHN1bCBsaW5rIHNvdHRvc3RhbnRlIHZlcnImYWdyYXZlOyB2aXN1YWxpenphdG8gdW4gY2FtcG8gaW4gY3VpIGluc2VyaXJlIHF1ZXN0byBjb2RpY2UuIE5vcm1hbG1lbnRlIGlsIGNhbXBvICZlZ3JhdmU7IHByZS1jb21waWxhdG8gcGVyIFZvaSwgbWEgc2UgY29zJmlncmF2ZTsgbm9uIGZvc3NlIGlsIGNvZGljZSAmZWdyYXZlOzonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdTZWd1ZW5kbyBpbCBsaW5rIHNlZ3VlbnRlIHZlcnJldGUgcG9ydGF0aSBhbCBzaXRvIHdlYiBkb3ZlIGluc2VyaXJlIGlsIGNvZGljZSByaXBvcnRhdG8gc29wcmEgcGVyIGF6emVyYXJlIGxhIHZvc3RyYSBwYXNzd29yZDonOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ1Bhc3N3b3JkIHBlcnNhJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnTm9uIHRyb3ZvIGlsIG1vZHVsbyBDTVNNYWlsZXInOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnVW5hIGVtYWlsICZlZ3JhdmU7IHN0YXRhIHNwZWRpdGEgYWxsJiMwMzk7aW5kaXJpenpvICVzIGNvbiBsZSBpc3RydXppb25pIHN1IGNvbWUgYXp6ZXJhcmUgbGEgdm9zdHJhIHBhc3N3b3JkLiBHcmF6aWUnOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdBdmV0ZSBxdWluZGkgZGltZW50aWNhdG8gbyBwZXJzbyBsYSB2b3N0cmEgcGFzc3dvcmQuIERpZ2l0YXRlIGlsIHZvc3RybyBub21lIHV0ZW50ZSBlIHNlIHZlcnImYWdyYXZlOyB0cm92YXRvIHNwZWRpcmVtbyB1bmEgZW1haWwgY29uIGxlIGlzdHJ1emlvbmkgc3UgY29tZSBhenplcmFybGEnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdNb2RlbGxvIHBlciBQYXNzd29yZCBkaW1lbnRpY2F0YSc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdNb2RlbGxvIFBlcmRpdGEgVXNlcm5hbWUnOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnUHJvcHJpZXQmYWdyYXZlOyAlcyBub24gdHJvdmF0YSc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAnUHJvcHJpZXQmYWdyYXZlOyB0cm92YXRhJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdBZ2dpdW5naSBQcm9wcmlldCZhZ3JhdmU7JzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdVbiBjYW1wbyByaWNoaWVzdG8gKCVzKSBlcmEgdnVvdG8nOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdJbnNlcmlyZSBzb2xvIHBlciBtb2RpZmljYXJlIHF1ZWxsYSBwcmVjZWRlbnRlJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnU2VtYnJhIGNoZSBub24gYWJiaWF0ZSBlZmZldHR1YXRvIGwmIzAzOTthY2Nlc3NvJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdJbXBvc3RhemlvbmknOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyYXppb25lJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnUXVlc3RvIGFjY291bnQgJmVncmF2ZTsgc2NhZHV0byc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnRm9ybWF0dGF6aW9uZSBkZWxsJiMwMzk7aW5kaXJpenpvIGRpIGVtYWlsIG5vbiB2YWxpZGEnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdEYXRhIGRpIHNjYWRlbnphIG5vbiB2YWxpZGEnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0Vycm9yZSBuZWxsJiMwMzk7aW1wb3N0YXppb25lIGRlbGxhIHByb3ByaWV0JmFncmF2ZTsgJXMgcGVyIGwmIzAzOTt1dGVudGUgJXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdJRCBkaSBncnVwcG8gJXMgbm9uIHZhbGlkbyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ01hcmNhdG9yZSBkZWwgY2FtcG8gbmFzY29zdG8nOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0NvbG9yZSBkZWwgY2FtcG8gbmFzY29zdG8nOwokbGFuZ1snaGlkZGVuJ10gPSAnTmFzY29zdG8nOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ1VuYSBwcm9wcmlldCZhZ3JhdmU7IGNvbiBxdWVsIG5vbWUgJmVncmF2ZTsgZ2kmYWdyYXZlOyBkZWZpbml0YSc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdOZXNzdW5hIHByb3ByaWV0JmFncmF2ZTsgZGVmaW5pdGEnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdOZXNzdW5hIHByb3ByaWV0JmFncmF2ZTsgc2VsZXppb25hdGEgcGVyIHF1ZXN0byBncnVwcG8nOwokbGFuZ1snbm9ncm91cHMnXSA9ICdOZXNzdW4gZ3J1cHBvIGRlZmluaXRvJzsKJGxhbmdbJ2dyb3Vwc2ZvdW5kJ10gPSAnR3J1cHBpIHRyb3ZhdGknOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ0UmIzAzOTsgbmVjZXNzYXJpbyBlc3NlcmUgbWVtYnJvIGRpIGFsbWVubyB1biBncnVwcG8nOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ1JpY2hpZWRlIGVzc2VyZSBtZW1icm8gZGkgYWxtZW5vIHVuIGdydXBwbyc7CiRsYW5nWydiYWNrJ10gPSAnSW5kaWV0cm8nOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzICZlZ3JhdmU7IHVuIGNhbXBvIG9iYmxpZ2F0b3Jpbyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFyY2EgaSBjYW1waSByaWNoaWVzdGkgY29uJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0V2aWRlbnppYXJlIGkgY2FtcGkgcmljaGllc3RpIGluJzsKJGxhbmdbJ25leHQnXSA9ICdQcm9zc2ltbyc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ1VuIGdydXBwbyBjb24gcXVlbCBub21lICZlZ3JhdmU7IGdpJmFncmF2ZTsgcHJlc2VudGUnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdDYW1wbyBvYmJsaWdhdG9yaW8nOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdGYWNvbHRhdGl2byc7CiRsYW5nWydvZmYnXSA9ICdPZmYnOwokbGFuZ1snc2l6ZSddID0gJ0RpbWVuc2lvbmUnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIgLz4oTWFzc2ltbyBsYXRvIGRpIHVuYSBpbW1hZ2luZSBpbiBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ0x1bmdoZXp6YSc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyIC8+KGNhcmF0dGVyaSBuZWwgY2FtcG8gZGkgdGVzdG8pJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdPcHppb25pIGRlbGxhIHRlbmRpbmEsIHNlcGFyYXRpIGRhIGZpbmUgbGluZWEuIFZhbG9yaSBwb3Nzb25vIGVzc2VyZSBzZXBhcmF0aSBkYWwgdGVzdG8gY29uIHVuID0sIHBlciBlc2VtcGlvIEZlbW1pbmE9Zic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdFdGljaGV0dGUgUmFkaW9idXR0b24sIHNlcGFyYXRpIGRhIGZpbmUgbGluZWEuIFZhbG9yaSBwb3Nzb25vIGVzc2VyZSBzZXBhcmF0aSBkYWwgdGVzdG8gY29uIHVuID0sIHBlciBlc2VtcGlvIEZlbW1pbmE9Zic7CiRsYW5nWydwcm9tcHQnXSA9ICdTdWdnZXJpbWVudG8nOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUaXBvJzsKJGxhbmdbJ3R5cGUnXSA9ICdUaXBvJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnQ2FtcG8gU3RhdG8nOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnQ2hpZWRpIGluIFBlcmRpdGE8YnIvPlVzZXJuYW1lJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXN0byc7CiRsYW5nWydjaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTGlzdGEgTXVsdGkgU2VsZWN0JzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ1JhZGlvIEJ1dHRvbnMnOwokbGFuZ1snaW1hZ2UnXSA9ICdJbW1hZ2luZSc7CiRsYW5nWydlbWFpbCddID0gJ0luZGlyaXp6byBlbWFpbCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ0FyZWEgZGkgdGVzdG8nOwokbGFuZ1snZHJvcGRvd24nXSA9ICdUZW5kaW5hJzsKJGxhbmdbJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJ10gPSAnQmVudmVudXRvJzsKJGxhbmdbJ2xvZ291dCddID0gJ1VzY2l0YSc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnVXNhIHF1ZXN0byBub21lIGRpIGdydXBwbyc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdNb2RpZmljYSBsZSBtaWUgaW1wb3N0YXppb25pJzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnTG9naW4gZmFsbGl0byAtIG5vbWUgdXRlbnRlIG8gcGFzc3dvcmQgc2JhZ2xpYXRpPyc7CiRsYW5nWydsb2dpbiddID0gJ0FjY2VkaSc7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0V0aWNoZXR0YSBkZWwgcHVsc2FudGUgZGkgQWNjZXNzbyc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdOb21lIHV0ZW50ZSc7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdJbmRpcml6em8gRW1haWwnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnUGFzc3dvcmQnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdSaWNvcmRhbWkgc3UgcXVlc3RvIGNvbXB1dGVyJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0cmF0aSc7CiRsYW5nWydmb3Jnb3RwdyddID0gJ1Bhc3N3b3JkIGRpbWVudGljYXRhPyc7CiRsYW5nWydsb3N0dXNlcm5hbWUnXSA9ICdEaW1lbnRpY2F0byBpbCBWb3N0cm8gbG9naW4/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnVmFsb3JpIHByZWRlZmluaXRpJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnTW9kZWxsbyc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdJRCB1dGVudGUgbm9uIHRyb3ZhdG8nOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ1F1ZXN0byB1c2VybmFtZSAoJXMpICZlZ3JhdmU7IGdpJmFncmF2ZTsgaW4gdXNvJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdVc2FyZSBTTVRQIHBlciB2YWxpZGFyZSBpbmRpcml6emkgZW1haWw/JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ0x1bmdoZXp6YSBtaW5pbWEgZGVsbGEgcGFzc3dvcmQnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTHVuZ2hlenphIG1hc3NpbWEgZGVsbGEgcGFzc3dvcmQnOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnTHVuZ2hlenphIG1pbmltYSBkZWwgbm9tZSB1dGVudGUnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTHVuZ2hlenphIG1hc3NpbWEgZGVsIG5vbWUgdXRlbnRlJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1RpbWVvdXQgZGVsbGEgc2Vzc2lvbmUgKHNlY29uZGkpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdVc28gY29va2llcyBwZXIgdGVuZXIgdml2byBpbCBsb2dpbic7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ1Blcm1ldHRpIHJlZ2lzdHJhemlvbmUgRW1haWwnOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ0dydXBwbyBwcmVkZWZpbml0byBwZXIgbnVvdmkgdXRlbnRpJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnQ2FtYmlhIGlsIE1vZGVsbG8gZGVsbGUgY29uZmlndXJhemlvbmknOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0xlIHBhc3N3b3JkIG5vbiBjb2luY2lkb25vJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ05vbWUgdXRlbnRlIG5vbiB2YWxpZG8nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnUGFzc3dvcmQgbm9uIHZhbGlkYSc7CiRsYW5nWydlZGl0dXNlciddID0gJ01vZGlmaWNhIFV0ZW50ZSc7CiRsYW5nWyd2YWxpZCddID0gJ1ZhbGlkbyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ05vbWUgdXRlbnRlJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXRvJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ1F1ZXN0byB1dGVudGUgbm9uICZlZ3JhdmU7IG1lbWJybyBkaSBuZXNzdW4gZ3J1cHBvJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdOZXNzdW5hIFByb3ByaWV0JmFncmF2ZTsnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdUZW50YXRpdm8gZGkgaW1wb3J0YXJlIHByb3ByaWV0JmFncmF2ZTsgZHVwbGljYXRlJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnVmFsb3JlJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dydXBwaSc7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnUHJvcHJpZXQmYWdyYXZlOyc7CiRsYW5nWydwcm9wbmFtZSddID0gJ05vbWUgZGVsbGEgcHJvcHJpZXQmYWdyYXZlOyc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdWYWxvcmUgZGVsbGEgcHJvcHJpZXQmYWdyYXZlOyc7CiRsYW5nWydhZGQnXSA9ICdBZ2dpdW5nZXJlJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdDcm9ub2xvZ2lhJzsKJGxhbmdbJ2VkaXQnXSA9ICdNb2RpZmljYSc7CiRsYW5nWydleHBpcmVzJ10gPSAnU2NhZGVuemUnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3BlY2lmaWNhcmUgdW5hIGRhdGEnOwokbGFuZ1snMTJocnMnXSA9ICcxMiBPcmUnOwokbGFuZ1snMjRocnMnXSA9ICcyNCBPcmUnOwokbGFuZ1snNDhocnMnXSA9ICc0OCBPcmUnOwokbGFuZ1snMXdlZWsnXSA9ICcxIFNldHRpbWFuYSc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIFNldHRpbWFuZSc7CiRsYW5nWycxbW9udGgnXSA9ICcxIE1lc2UnOwokbGFuZ1snM21vbnRocyddID0gJzMgTWVzaSc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBNZXNpJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSBBbm5vJzsKJGxhbmdbJ25ldmVyJ10gPSAnTWFpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsbyBpbnN0YWxsYXRvLjxiciAvPkFjY2VydGFyc2kgZGkgY29uZmlndXJhcmUgaSBwZXJtZXNzaSBwZXIgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24mcXVvdDsuIENvbnNpZ2xpYW1vIGlub2x0cmUgZGkgaW5zdGFsbGFyZSBpbCBtb2R1bG8gQ2FwdGNoYSBwb2ljaCZlZ3JhdmU7IHB1Jm9ncmF2ZTsgZXNzZXJlIHJpY2hpZXN0byBsYSB2YWxpZGF6aW9uZSBkaSB1bmEgaW1tYWdpbmUuIFF1ZXN0byAmZWdyYXZlOyBpbnRlc28gcGVyIHByZXZlbmlyZSBhdHRhY2NoaSBicnV0ZSBmb3JjZS4gIDxzdHJvbmc+Tm90YTo8L3N0cm9uZz4gaWwgcGFyYW1ldHJvIG5vY2FwdGNoYSBwdSZvZ3JhdmU7IGVzc2VyZSB1c2F0byBwZXIgZGlzYWJpbGl0YXJlIHF1ZXN0YSBmdW56aW9uYWxpdCZhZ3JhdmU7IGFuY2hlIHNlIGlsIG1vZHVsbyAmZWdyYXZlOyBpbnN0YWxsYXRvLic7CiRsYW5nWydwYXNzd29yZCddID0gJ1Bhc3N3b3JkJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnZGkgbnVvdm8nOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ1VuIGdydXBwbyBjb24gcXVlbCBub21lICZlZ3JhdmU7IGdpJmFncmF2ZTsgcHJlc2VudGUnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnTW9kaWZpY2EgR3J1cHBvJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0ludmlhJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0FubnVsbGEnOwokbGFuZ1snZGVsZXRlJ10gPSAnQ2FuY2VsbGEnOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdTaWV0ZSBzaWN1cmkgY2hlIHF1ZXN0ZSBzaWFubyBsZSBpbXBvc3RhemlvbmkgY29ycmV0dGUgcGVyIHF1ZXN0byBncnVwcG8/XG5EaXNhdHRpdmFuZG8gdW5hIHByb3ByaWV0JmFncmF2ZTsgbm9uIHNpIGNhbmNlbGxhbm8gaSBkYXRpIG5lbGxhIHRhYmVsbGEgcHJvcHJpZXQmYWdyYXZlOyBwZXIgcXVlbCBncnVwcG8vdXRlbnRlLiBTYXJhbm5vIHNvbG8gbm9uIGRpc3BvbmliaWxpLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnU2lldGUgc2ljdXJpIGRpIHZvbGVyZSBjYW5jZWxsYXJlIHF1ZXN0byBncnVwcG8/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdTaWV0ZSBzaWN1cm8gZGkgdm9sZXJlIGNhbmNlbGxhcmUgY29tcGxldGFtZW50ZSBxdWVzdGEgcHJvcHJpZXQmYWdyYXZlOz9cbkZhY2VuZG9sbyBzYXJhbm5vIGNhbmNlbGxhdGkgdHV0dGkgaSBkYXRpIGRlZ2xpIHV0ZW50aSBwZXIgcXVlc3RhIHByb3ByaWV0JmFncmF2ZTsuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1BhcmFtZXRyaSBpbnN1ZmZpY2llbnRpJzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snbmFtZSddID0gJ05vbWUnOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVtYSBuZWxsJiMwMzk7YWdnaXVuZ2VyZSBwcm9wcmlldCZhZ3JhdmU7JzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBuZWxsJiMwMzk7YWdnaXVuZ2VyZSByZWxhemlvbmUgZGkgZ3J1cHBvJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1hIG5lbGwmIzAzOTthZ2dpdW5nZXJlIGlsIGdydXBwbyc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIG5lbGwmIzAzOTthZ2dpdW5nZXJlIHVuIHV0ZW50ZSBhbCBncnVwcG8nOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZW1hIG5lbGxhIGNhbmNlbGxhemlvbmUgZGkgdW5hIHByb3ByaWV0JmFncmF2ZTsnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdOb24gdHJvdm8gdW4gaW5kaXJpenpvIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdOZXNzdW4gcGVybWVzc28gZGkgc2NyaXR0dXJhIG5lbGxhIGNhcnRlbGxhIGRpIGRlc3RpbmF6aW9uZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnUGFyYW1ldHJpIG5vbiB2YWxpZGknOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdOb24gdHJvdm8gZ3J1cHBpJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQXBwbGljYSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cm8nOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0VzcHJlc3Npb25lIHJlZ29sYXJlIGRpIFVzZXJuYW1lJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpemlvbmUnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnTm9tZSBncnVwcG8nOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWNjZXNzbyBuZWdhdG8nOwokbGFuZ1snZXJyb3InXSA9ICdFcnJvcmUnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZ2dpdW5nZXJlIGdydXBwbyc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydGEgR3J1cHBvJzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdBZ2dpdW5nZXJlIHV0ZW50ZSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVHJvdmF0aSB1dGVudGkgY2hlIHNvZGRpc2Zhbm8gaWwgY3JpdGVyaW8nOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwcG8nOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTZWxlemlvbmEgR3J1cHBvJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ01vZGVsbG8gZGkgcmVnaXN0cmF6aW9uZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdNb2RlbGxvIGRpIGxvZ291dCc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ01vZGVsbG8gZGkgbG9naW4nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXJlbnplJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXRlbnRpJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0dlc3Rpb25lIHV0ZW50aSBkaSBGcm9udGVuZCc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ1Blcm1ldHRpIGFnbGkgdXRlbnRpIGRpIGVmZmV0dHVhcmUgbCYjMDM5O2FjY2Vzc28gZGFsbCYjMDM5O2ludGVyZmFjY2lhIGRlbCBzaXRvJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdQYWdpbmEgZGkgYWNjZXNzbyBwcmVkZWZpbml0YSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnVWx0aW1hIHBhZ2luYSBhY2NlZHV0YSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdBbHRyYSBwYWdpbmE6JzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdJbnNlcml0ZSBpbCB0ZXN0byB2aXN1YWxpenphdG8gbmVsbCYjMDM5O2ltbWFnaW5lJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuODM4ODExMzc5LjEzODUxMjkxNDMuMTM4OTE5ODg3Mi4xMzg5NzA3MTI0LjQnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMzg5MTk4ODcyLjMuMy51dG1jc3I9c29sZ2VhLm5ldHx1dG1jY249KHJlZmVycmFsKXx1dG1jbWQ9cmVmZXJyYWx8dXRtY2N0PS9jbXNtcy9hZG1pbi9pbmRleC5waHAnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/lt_LT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2VuYWJsZV9jYXB0Y2hhJ10gPSAnRW5hYmxlIGNhcHRjaGEgb24gdGhlIGxvZ2luIGZvcm0nOwokbGFuZ1snaW5mb19lbmFibGVfY2FwdGNoYSddID0gJ0lmIHRoZSB1c2VyIGlzIG5vdCBsb2dnZWQgaW4sIGFuZCB0aGUgbW9kdWxlIHByZWZlcmVuY2Ugc3RhdGVzIHRvIGRpc3BsYXkgdGhlIGxvZ2luIGZvcm0sIHRoaXMgb3B0aW9uIGNvbnRyb2xzIHdldGhlciBhIGNhcHRjaGEgd2lsbCBiZSBkaXNwbGF5ZWQgb24gdGhlIGxvZ2luIHNjcmVlbi4gIElmIGNhcHRjaGEgaXMgYXZhaWxhYmxlJzsKJGxhbmdbJ3BhZ2V0eXBlX3VuYXV0aG9yaXplZCddID0gJ1lvdSBhcmUgbm90IGF1dGhvcml6ZWQgdG8gdmlldyB0aGlzIGNvbnRlbnQnOwokbGFuZ1snaW5mb19jb250ZW50cGFnZV9ncm91cGxpc3QnXSA9ICdTcGVjaWZ5IGEgbGlzdCBvZiBGRVUgZ3JvdXBzIHRoYXQgbWF5IGhhdmUgYWNjZXNzIHRvIHRoaXMgcGFnZS4gIFNlbGVjdGluZyBubyBncm91cHMgd2lsbCBhbGxvdyBhbnkgdXNlciBsb2dnZWQgaW4gdG8gRkVVIHRvIHZpZXcgdGhlIHBhZ2UnOwokbGFuZ1sncGFnZXR5cGVfc2V0dGluZ3MnXSA9ICdBcHNhdWdvdG8gcHVzbGFwaW8gbnVzdGF0eW1haSc7CiRsYW5nWydwYWdldHlwZV9ncm91cHMnXSA9ICdMZWlkxb5pYW1vcyBncnVwxJdzJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfZ3JvdXBzJ10gPSAnU2VsZWN0IHRoZSBncm91cHMgdGhhdCBhcmUgKGJ5IGRlZmF1bHQpIGFsbG93ZWQgdG8gdmlldyBwcm90ZWN0ZWQgcGFnZXMuICBBbiBlZGl0b3Igd2l0aCB0aGUgJnF1b3Q7TWFuYWdlIEFsbCBDb250ZW50JnF1b3Q7IHBlcm1pc3Npb24gY2FuIG92ZXJyaWRlIHRoaXMgZm9yIGVhY2ggcGFnZSc7CiRsYW5nWydwYWdldHlwZV9hY3Rpb24nXSA9ICdBY3Rpb24gZm9yIGluc3VmZmljaWVudCBhY2Nlc3MnOwokbGFuZ1snaW5mb19wYWdldHlwZV9hY3Rpb24nXSA9ICdTcGVjaWZ5IHRoZSBiZWhhdmlvciBmb3IgcGVvcGxlIGFjY2Vzc2luZyB0aGlzIHBhZ2Ugd2l0aG91dCBzdWZmaWNpZW50IHBlcm1pc3Npb24uICBZb3UgY2FuIGVpdGhlciByZWRpcmVjdCB0byBhIHNwZWNpZmllZCBwYWdlLCBvciBkaXNwbGF5IHRoZSBsb2dpbiBmb3JtJzsKJGxhbmdbJ3Nob3dsb2dpbmZvcm0nXSA9ICdSb2R5dGkgcHJpc2lqdW5naW1vIGZvcm3EhSc7CiRsYW5nWydyZWRpcmVjdCddID0gJ1JlZGlyZWN0IHRvIGEgUGFnZSc7CiRsYW5nWydwYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnUmVkaXJlY3QgVG8nOwokbGFuZ1snaW5mb19wYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnU3BlY2lmeSB0aGUgcGFnZSB0byByZWRpcmVjdCB0by4gIElmIHlvdSBzZWxlY3Qgbm9uZSwgYW5kIHRoZSBhY3Rpb24gaXMgc2V0IHRvICZxdW90O3JlZGlyZWN0JnF1b3Q7IHRoZSB1c2VyIHdpbGwgYmUgcHJlc2VudGVkIHdpdGggYSBtZXNzYWdlIGluZGljYXRpbmcgdGhhdCB0aGV5IGRvIG5vdCBoYWNlIGFjY2VzcyB0byB0aGUgcGFnZSc7CiRsYW5nWydwZXJtaXNzaW9ucyddID0gJ1Blcm1pc3Npb25zJzsKJGxhbmdbJ2ZldV9wcm90ZWN0ZWRfcGFnZSddID0gJ1Byb3RlY3RlZCBDb250ZW50JzsKJGxhbmdbJ3Byb21wdF92aWV3cHJvcHMnXSA9ICdTZWxlY3QgQWRkaXRpb25hbCBQcm9wZXJ0aWVzIHRvIFZpZXcnOwokbGFuZ1sndmlldyddID0gJ8W9acWrcsSXdGknOwokbGFuZ1snaW5mb19pZ25vcmVfdXNlcmlkJ10gPSAnSWYgY2hlY2tlZCB0aGUgaW1wb3J0IHJvdXRpbmUgd2lsbCBhdHRlbXB0IHRvIGFkZCB1c2VycyBpbmRlcGVuZGFudCBvZiB0aGUgdXNlcmlkIGNvbHVtbi4gIElmIGEgdXNlciB3aXRoIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGUgaW1wb3J0IGZpbGUgYWxyZWFkeSBleGlzdHMsIGFuIGVycm9yIHdpbGwgYmUgZ2VuZXJhdGVkJzsKJGxhbmdbJ2lnbm9yZV91c2VyaWQnXSA9ICdJZ25vcmUgVXNlcklEIENvbHVtbiBvbiBJbXBvcnQnOwokbGFuZ1snZXhwb3J0X3Bhc3NoYXNoJ10gPSAnRXhwb3J0IHRoZSBwYXNzd29yZCBoYXNoIHRvIHRoZSBmaWxlJzsKJGxhbmdbJ2luZm9fZXhwb3J0X3Bhc3NoYXNoJ10gPSAnVGhlIHBhc3N3b3JkIGhhc2ggaXMgb25seSB1c2VmdWwgaWYgdGhlIHBhc3N3b3JkIHNhbHQgb24gdGhlIGltcG9ydCBob3N0IGlzIGlkZW50aWNhbCB0byB0aGF0IG9mIHRoZSBleHBvcnQgaG9zdCc7CiRsYW5nWydlcnJvcl9hZGp1c3RzYWx0J10gPSAnVGhlIHBhc3N3b3JkIHNhbHQgY2Fubm90IGJlIGFkanVzdGVkJzsKJGxhbmdbJ3Byb21wdF9wd3NhbHQnXSA9ICdQYXNzd29yZCBTYWx0JzsKJGxhbmdbJ2luZm9fcHdzYWx0J10gPSAnRnJvbnRFbmRVc2VycyBzYWx0cyBhbGwgcGFzc3dvcmRzIHdpdGggdGhpcyBrZXkgd2hpY2ggaXMgY3JlYXRlZCB1cG9uIGluc3RhbGwuICBPbmNlIHVzZXJzIGhhdmUgYmVlbiBhZGRlZCB0byB0aGUgZGF0YWJhc2UgdGhlIHNhbHQgY2Fubm90IGJlIGNoYW5nZWQuIFRoZSBzYWx0IG1heSBiZSBlbXB0eSBmb3Igb2xkZXIgaW5zdGFsbHMuJzsKJGxhbmdbJ2FkdmFuY2VkX3NldHRpbmdzJ10gPSAnSSZzY2Fyb247cGzEl3N0aW5pYWkgbnVzdGF0eW1haSc7CiRsYW5nWydpbmZvX3Nlc3Npb250aW1lb3V0J10gPSAnU3BlY2lmeSB0aGUgbnVtYmVyIG9mIHNlY29uZHMgYmVmb3JlIGFuIGluYWN0aXZlIHVzZXIgaXMgYXV0b21hdGljYWxseSBsb2dnZWQgb3V0IG9mIHRoZSB3ZWJzaXRlJzsKJGxhbmdbJ3Byb21wdF9leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ1VzZXIgRXhwaXJ5IEludGVydmFsJzsKJGxhbmdbJ2luZm9fZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdTcGVjaWZ5IGEgdmFsdWUgKGluIHNlY29uZHMpIHRoYXQgaW5kaWNhdGVzIGhvdyBvZnRlbiB0aGUgc3lzdGVtIHNob3VsZCBmb3JjZSB1c2VycyB3aG9zIHNlc3Npb24gaGFzIGV4cGlyZWQgdG8gYmUgbG9nZ2VkIG91dC4gIFQmcXVvdDtoaXMgaXMgYW4gb3B0aW1pemF0aW9uIHRvIHNhdmUgZGF0YWJhc2UgcXVlcmllcy4gIElmIGxlZnQgZW1wdHkgb3Igc2V0IHRvIDAgZXhwaXJ5IHdpbGwgYmUgcGVyZm9ybWVkIG9uIGV2ZXJ5IHJlcXVlc3QuJzsKJGxhbmdbJ21zZ19zZXR0aW5nc2NoYW5nZWQnXSA9ICdKxatzxbMgbnVzdGF0eW1haSBidXZvIHPEl2ttaW5nYWkgYXRuYXVqaW50aSc7CiRsYW5nWydmb3JjZWRsb2dvdXR0YXNrX2Rlc2MnXSA9ICdGb3JjZSB1c2VycyB0byBsb2dvdXQgYXQgcmVndWxhciBpbnRlcnZhbHMnOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3RpbWVzJ10gPSAnVGltZXMgZm9yIGZvcmNlZCBsb2dvdXQnOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF90aW1lcyddID0gJ1NwZWNpZnkgYSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiB0aW1lcyBsaWtlIEhIOk1NLEhIOk1NIHdoZXJlIHVzZXJzIHdpbGwgYmUgZm9yY2libHkgbG9nZ2VkIG91dC4gTm90ZSwgdGhpcyB1c2VzIHRoZSBwc3VlZG9jcm9uIG1lY2hhbmlzbSBzbyB5b3UgbXVzdCBiZSBzdXJlIHRoYXQgdGhlIHRpbWVzIGVudGVyZWQgaGVyZSB3aWxsIGNvaW5jaWRlIHJlYXNvbmFibHkgd2l0aCB5b3VyICZxdW90O3BzZXVkb2Nyb24gZ3JhbnVsYXJpdHkmcXVvdDsgYW5kIHRoYXQgc3VmZmljaWVudCByZXF1ZXN0cyB3aWxsIG9jY3VyIHRvIHlvdXIgd2Vic2l0ZSB0byBlbnN1cmUgdGhhdCBwc2V1ZG9jcm9uIGlzIGV4ZWN1dGVkLic7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ0V4Y2x1ZGUgdXNlcnMgdGhhdCBoYXZlIGJlZW4gYWN0aXZlIGluIDxlbT4obWludXRlcyk8L2VtPic7CiRsYW5nWydpbmZvX2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdJZiBzcGVjaWZpZWQsIGFueSB1c2VycyB0aGF0IGhhdmUgYmVlbiBhY3RpdmUgaW4gdGhpcyBudW1iZXIgb2Ygc2Vjb25kcyB3aWxsIG5vdCBiZSBmb3JjaWJseSBsb2dnZWQgb3V0JzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlJ10gPSAnQXIgdGlrcmFpIG5vcml0ZSBpJnNjYXJvbjt0cmludGkgJXMgbmF1ZG90b2rEhT8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGVleHRlbnNpb24nXSA9ICdUaGUgdXBsb2FkZWQgZmlsZSBkb2VzIG5vdCBtYXRjaCB0aGUgbGlzdCBvZiBhbGxvd2VkIGZpbGUgdHlwZXMnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0FsbCBkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgaGFzIGJlZW4gZGVsZXRlZCc7CiRsYW5nWydpbmZvX2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdJZiBlbmFibGVkLCB0aGlzIG1vZHVsZSB3aWxsIGxpc3RlbiB0byBldmVudHMgZnJvbSB0aGUgRWNvbW1lcmNlIHN1aXRlLiAgVGhlIGZvbGxvd2luZyBzZXR0aW5ncyBvbmx5IGhhdmUgZWZmZWN0IGlmIHRoaXMgc2V0dGluZyBpcyBlbmFibGVkLic7CiRsYW5nWydwcm9tcHRfZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ0xpc3RlbiB0byBPcmRlciBFdmVudHMnOwokbGFuZ1snaW5mb19wYWlkcmVnX3NldHRpbmdzJ10gPSAnVGhlIGZvbGxvd2luZyBzZXR0aW5ncyBvbmx5IGFwcGx5IGlmIHVzaW5nIHNlbGYgcmVnaXN0cmF0aW9uIGFuZCBhbGxvd2luZyBmb3IgcGFpZCByZWdpc3RyYXRpb24nOwokbGFuZ1snbm9uZSddID0gJ05vbmUnOwokbGFuZ1snZGVsZXRlX3VzZXInXSA9ICdJJnNjYXJvbjt0cmludGkgbmF1ZG90b2rEhSc7CiRsYW5nWydleHBpcmVfdXNlciddID0gJ0V4cGlyZSBVc2VyJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnXSA9ICdBY3Rpb24gdG8gcGVyZm9ybSB3aGVuIGEgc3Vic2NyaXB0aW9uIG9yZGVyIGlzIGNhbmNlbGxlZCc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyZGVsZXRlZCddID0gJ0FjdGlvbiB0byBwZXJmb3JtIHdoZW4gYSBzdWJzY3JpcHRpb24gb3JkZXIgaXMgZGVsZXRlZCc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdFLWtvbWVucmNpam9zIG51c3RhdHltYWknOwokbGFuZ1snc2VjdXJlZmllbGRtYXJrZXInXSA9ICdTZWN1cmUgRmllbGQgTWFya2VyJzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdTZWN1cmUgRmllbGQgQ29sb3InOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdTdG9yZSB0aGlzIGRhdGEgZW5jcnlwdGVkIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydlcnJvcl9ub3RzdXBwb3J0ZWQnXSA9ICdUaGUgY2hvc2VuIG9wdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGdpdmVuIHlvdXIgY3VycmVudCBjb25maWd1cmF0aW9uJzsKJGxhbmdbJ2F1ZGl0X3VzZXJfY3JlYXRlZCddID0gJ1VzZXIgYXV0b21hdGljYWxseSBjcmVhdGVkJzsKJGxhbmdbJ2luZm9fYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0lmIGEgdXNlciBpcyBhdXRoZW50aWNhdGVkIGJ5IGFuIGV4dGVybmFsIGF1dGhlbnRpY2F0aW9uIG1vZHVsZSBidXQgaXMgbm90IGtub3duIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBzaG91bGQgYW4gRkVVIGFjY291bnQgYmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5Pyc7CiRsYW5nWydwcm9tcHRfYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0F1dG9tYXRpY2FsbHkgQ3JlYXRlIFVua25vd24gVXNlcnMnOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ1JvZHltbyBudXN0YXR5bWFpJzsKJGxhbmdbJ2luZm9fc3RkX2F1dGhfc2V0dGluZ3MnXSA9ICdUaGUgZm9sbG93aW5nIHNldHRpbmdzIGFyZSBvbmx5IGFwcGxpY2FibGUgaWYgdXNpbmcgdGhlICZxdW90O0J1aWx0aW4gQXV0aGVudGljYXRpb24mcXVvdDsuJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0dW4nXSA9ICdTZWxlY3RpbmcgTm8gd2lsbCBkaXNhYmxlIHRoZSBhYmlsaXR5IGZvciBhIHVzZXIgdG8gcmVxdWVzdCBsb3N0IGxvZ2luIGluZm9ybWF0aW9uLCBpcnJlc3BlY3RpdmUgb2Ygb3RoZXIgc2V0dGluZ3MnOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3RwdyddID0gJ1NlbGVjdGluZyBObyB3aWxsIGRpc2FibGUgdGhlIGFiaWxpdHkgZm9yIGEgdXNlciB0byBhIHBhc3N3b3JkIHJlc2V0LCBpcnJlc3BlY3RpdmUgb2Ygb3RoZXIgc2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHVuJ10gPSAnQWxsb3cgdXNlcnMgdG8gcmVxdWVzdCB0aGVpciB1c2VybmFtZSc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0cHcnXSA9ICdBbGxvdyB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgY2hhbmdlJzsKJGxhbmdbJ2F1dGhfc2V0dGluZ3MnXSA9ICdBdXRlbnRpZmlrYWNpam9zIG51c3RhdHltYWknOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdCdWlsdGluIEF1dGhlbnRpY2F0aW9uJzsKJGxhbmdbJ2F1dGhfYnVpbHRpbiddID0gJ0ZFVSBTdGFuZGFyZCBBdXRoZW50aWNhdGlvbic7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F1dGhlbnRpY2F0aW9uIE1vZHVsZS9NZXRob2QnOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ1RoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSBzdXBwb3J0cyB1c2luZyBhbHRlcm5hdGUgYXV0aGVudGljYXRpb24gbWV0aG9kcywgd2l0aCB2YXJ5aW5nIGNhcGFiaWxpdGllcy4gIFNvbWUgZnVuY3Rpb25hbGl0eSB3aWxsIG5vdCBmdW5jdGlvbiBvciBiZSBkaXNhYmxlZCB3aGVuIG5vdCB1c2luZyB0aGUgYnVpbHQgaW4gYXV0aGVudGljYXRpb24gbWV0aG9kJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnVGhlIHZhbHVlIHNwZWNpZmllZCBmb3IgJXMgaXMgYWxyZWFkeSBpbiB1c2UgYnkgYW5vdGhlciB1c2VyJzsKJGxhbmdbJ3VuaXF1ZSddID0gJ1VuaXF1ZSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdUaGUgdmFsdWUgc3BlY2lmaWVkIGZvciAlcyAoJXMpIGlzIG5vdCB1bmlxdWUnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ0ZvcmNlIHZhbHVlcyBvZiB0aGlzIHByb3BlcnR5IHRvIGJlIHVuaXF1ZSBhY3Jvc3MgYWxsIHVzZXIgYWNjb3VudHMnOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnVXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgbG9nb3V0IGZvcm1zLCB0aGlzIHBhcmFtZXRlciBpZiBzcGVjaWZpZWQgd2lsbCBpbmRpY2F0ZSB0aGF0IHRoZSB1c2VyIHNob3VsZCBiZSByZXR1cm5lZCB0byB0aGUgcGFnZSAoYnkgdXJsKSB0aGF0IHRoZSB1c2VyIHdhcyB2aWV3aW5nIGJlZm9yZSB0aGUgYWN0aW9uIG9jY3VycmVkLiAgVGhpcyBwYXJhbWV0ZXIgd2lsbCBvdmVycmlkZSB0aGUgcmVkaXJlY3QgcHJlZmVyZW5jZXMsIGFuZCB0aGUgcmV0dXJudG8gcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnVXNlZCB3aXRoIG9uZSBvZiB0aGUgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGF0IHRoZSBmb3JtcyBzaG91bGQgbm90IGJlIHBsYWNlZCBpbmxpbmUsIGluc3RlYWQgdGhlIHJlc3VsdGluZyBvdXRwdXQgYWZ0ZXIgZm9ybSBzdWJtaXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICfErnNwxJdqaW1hcyBhcGllIHByaXNpanVuZ2ltbyBzZXNpam9zIHBhYmFpZ8SFJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnSsWrc8WzIHByaXNpanVuZ2ltbyBzZXNpam9zIGdhbGlvamltYXMgYXJ0xJdqYSBwcmllIHBhYmFpZ29zLiBQcmEmc2Nhcm9uO29tIHBhc3BhdXNraXRlICZxdW90O1ByYXTEmXN0aSZxdW90OyBteWd0dWvEhSwgamVpIG5vcml0ZSBwcmF0xJlzdGkgcHJpc2lqdW5naW1vIHNlc2lqb3MgZ2FsaW9qaW3EhSc7CiRsYW5nWydvayddID0gJ1ByYXTEmXN0aSc7CiRsYW5nWydyZXNldHNlc3Npb25fdGVtcGxhdGUnXSA9ICdTZXNpam9zIGF0bmF1amluaW1vICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdUaGlzIGlzIHRoZSBmaWVsZCBuYW1lLCB0byBiZSB1c2VkIGZvciBhZGRyZXNzaW5nIGluIHNtYXJ0eS4gIEl0IG11c3QgY29uc2lzdCBvZiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCB1bmRlcnNjb3Jlcy4nOwokbGFuZ1sndmlzaXRvcnNfdGFiJ10gPSAnTGFua3l0b2phaSc7CiRsYW5nWydmZXVfZ3JvdXBzX3Byb21wdCddID0gJ1Bhc2lyaW5raXRlIHZpZW7EhSBhciBkYXVnaWF1IEZFVSBncnVwacWzLCBrdXJpb21zIGJ1cyBsZWlzdGEgbWF0eXRpICZzY2Fyb247xK8gcHVzbGFwxK8nOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ1R1cmkgYsWrdGkgcGFzaXJpbmt0YSBncnVwxJcnOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnUGFzaXJpbmtpdGUgdmllbsSFJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdQcmFkxb5pb3MgbWV0YWknOwokbGFuZ1snZW5kX3llYXInXSA9ICdQYWJhaWdvcyBtZXRhaSc7CiRsYW5nWydkYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdNaW5pYXRpxatyb3MgZHlkaXMnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ09uIFVzZXIgR3JvdXAgTW9kaWZpZWQnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnVG9vIG1hbnkgdXNlcnMgYXJlIHNlbGVjdGVkIGZvciBidWxrIG9wZXJhdGlvbnMuLi4uIFBsZWFzZSB0cmltIGl0IHRvIDI1MCBvciBsZXNzJzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnQXIgdGlrcmFpIG5vcml0ZSBpJnNjYXJvbjt0cmludGkgJnNjYXJvbjvEryBuYXVkb3RvasSFPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdJJnNjYXJvbjt0cmludGkgcGFzaXJpbmt0dXMnOwokbGFuZ1sncHJvbXB0X3JhbmRvbXVzZXJuYW1lJ10gPSAnUHJpZGVkYW50IG5hdWp1cyBuYXVkb3RvanVzIGdlbmVydW90aSBhdHNpdGlrdGluxK8gbmF1ZG90b2pvIHZhcmTEhSc7CiRsYW5nWydtb250aHMnXSA9ICdtxJduZXNpYWknOwokbGFuZ1sncHJvbXB0X2V4cGlyZWFnZSddID0gJ051bWF0eXRhc2lzIG5hdWRvdG9qbyBnYWxpb2ppbW8gdGVybWluYXMnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnUHJhbmUmc2Nhcm9uO2ltbyBudXN0YXR5bWFpJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnU2F2eWJpxbMgbnVzdGF0eW1haSc7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ1BlcmFkcmVzYXZpbW8gbnVzdGF0eW1haSc7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnUGFncmluZGluaWFpIG51c3RhdHltYWknOwokbGFuZ1snc2Vzc2lvbl9zZXR0aW5ncyddID0gJ1Nlc2lqb3MgaXIgc2xhcHVrxbMgbnVzdGF0eW1haSc7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ0xhdWtvIG51c3RhdHltYWknOwokbGFuZ1snZXJyb3JfbG9zdHVuX25vbnJlcXVpcmVkJ10gPSAnVGhlIGxvc3R1c2VybmFtZSBmbGFnIGNhbiBvbmx5IGJlIHVzZWQgb24gcmVxdWlyZWQgZmllbGRzJzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ0FsbG93IHVzZSBvZiB3eXNpd3lnIG9uIHRoaXMgdGV4dCBhcmVhJzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk5vdGU6IDwvc3Ryb25nPiBUaGlzIHVzZXMgdGhlIG1jcnlwdCBmdW5jdGlvbnMgZm9yIGVuY3J5cHRpb24gcHVycG9zZXMsIGFuZCB0aGV5IGNvdWxkIG5vdCBiZSBkZXRlY3RlZCBvbiB5b3VyIGluc3RhbGwuICAgUGxlYXNlIGNvbnRhY3QgeW91ciBzZXJ2ZXIgYWRtaW5pc3RyYXRvci4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnUmVkYWd1b3RpIG5hdWRvdG9qxIUnOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdEbyBub3QgaW5saW5lIGZvcm1zJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnU3BhdXNraXRlIMSNaWEsIGplaSBuZWF0c2ltZW5hdGUgc2F2byBwcmlzaWp1bmdpbW8gZGV0YWxpxbMnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ1NwYXVza2l0ZSDEjWlhLCBqZWkgbmVhdHNpbWVuYXRlIHNhdm8gc2xhcHRhxb5vZMW+aW8nOwokbGFuZ1snaW5mb19sb2dvdXQnXSA9ICdOb3LEl2RhbWkgYXRzaWp1bmd0aSBzcGF1c2tpdGUgxI1pYSc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnUGFzcGF1c2tpdGUgxI1pYSBzbGFwdGHFvm9kxb5pbyBhciBraXRvcyBpbmZvcm1hY2lqb3Mga2VpdGltdWknOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdOYXVkb3Rvam8gcGVyxb5pxatyxJdqaW1vICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydldmVudCddID0gJ8SudnlraXMnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVSBFdmVudCBOb3RpZmljYXRpb24nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnRS4gcGEmc2Nhcm9uO3RvIGFkcmVzYXMgcHJhbmUmc2Nhcm9uO2ltYW1zJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdQcmFuZSZzY2Fyb247aW1vIGUuIHBhJnNjYXJvbjt0dSAmc2Nhcm9uO2FibG9uYXMnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnUHJhbmUmc2Nhcm9uO2ltbyBlLiBwYSZzY2Fyb247dHUgdGVtYSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ1ByYW5lJnNjYXJvbjtpbWFpIGUuIHBhJnNjYXJvbjt0dSc7CiRsYW5nWydPbkxvZ2luJ10gPSAnUHJpc2lqdW5ndXMnOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdBdHNpanVuZ3VzJzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ1Bhc2liYWlndXMgc2VzaWphaSc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdTdWvFq3J1cyBuYXVqxIUgbmF1ZG90b2rEhSc7CiRsYW5nWydPbkRlbGV0ZVVzZXInXSA9ICdJJnNjYXJvbjt0cnludXMgbmF1ZG90b2rEhSc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdLYWkgbmF1ZG90b2rFsyBudXN0YXR5bWFpIHBha2Vpc3RpJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdLYWkgbmF1ZG90b2rFsyBncnVwxJcgc3VrdXJ0YSc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnS2FpIG5hdWRvdG9qxbMgZ3J1cMSXIGkmc2Nhcm9uO3RyaW50YSc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ1RoZSBsb3N0IGxvZ2luIGRldGFpbHMgZnVuY3Rpb25hbGl0eSBoYXMgc3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZC4gIFdlIGhhdmUgZm91bmQgYSB1bmlxdWUgdXNlcm5hbWUgdGhhdCBtYXRjaGVzIHRoZSBkZXRhaWxzIHlvdSBlbnRlcmVkLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnSsWrc8WzIG5hdWRvdG9qbyB2YXJkYXMgeXJhJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1dlIHJlY29tbWVuZCB5b3UgcmVjb3JkIHRoaXMgaW5mb3JtYXRpb24gaW4gYSBzZWN1cmUsIGJ1dCByZXRyaWV2YWJsZSBsb2NhdGlvbi4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNoYW5nZSBzZXR0aW5ncyc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjb2RlIHZlcmlmaWNhdGlvbiAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnUHJhcmFzdG8gbmF1ZG90b2pvIHZhcmRvIGRldGFsacWzICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ05hdWRvdG9qbyBwYW1pciZzY2Fyb247dG8gdmFyZG8gJnNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnRXJyb3I6IE1vcmUgdGhhbiBvbmUgdXNlciBhY2NvdW50IG1hdGNoZWQgdGhlIHByb3BlcnRpZXMgc3BlY2lmaWVkJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0Vycm9yOiBDb3VsZCBub3QgZmluZCBhIG1hdGNoaW5nIHVzZXInOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0tsYWlkYSAtIGdydXDElyB0b2tpdSB2YXJkdSBuZXJhc3RhJzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnVGlrIHNrYWl0eW11aSc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnTmF1ZG90b2rFsyBtYW5pcHVsaWF0b3JpYXVzIGtsYXPElyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdBdGp1bmd0YXMgYWRtaW5pc3RyYXRvcmlhdXMnOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ1JvZHl0aSB0aWsgcHJpc2lqdW5ndXNpdXMgbmF1ZG90b2p1cyc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnQXRqdW5ndGkgJnNjYXJvbjvEryBuYXVkb3RvasSFJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ05hdWRvdG9qbyBzxIV2eWLEl3MnOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdOYXVkb3Rvam8gaXN0b3JpamEnOwokbGFuZ1snZXhwb3J0J10gPSAnRWtzcG9ydHVvdGknOwokbGFuZ1snY2xlYXInXSA9ICdWYWx5dGknOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnRXhwb3J0IFVzZXIgSGlzdG9yeSBUbyBBU0NJSSB0aGF0IGlzIGF0IGxlYXN0JzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAnQ2xlYXIgVXNlciBIaXN0b3J5IHJlY29yZHMgdGhhdCBpcyBhdCBsZWFzdCc7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICdVxb5taXImc2Nhcm9uO290ZSBwcmlzaWp1bmdpbW8gZGV0YWxlcz8/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydCBncm91cCBkZWZpbml0aW9uIChhbmQgcHJvcGVydGllcykgdG8gWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdVc2VyIEhpc3RvcnkgTWFpbnRlbmFuY2UnOwokbGFuZ1sneWVzJ10gPSAnVGFpcCc7CiRsYW5nWydubyddID0gJ05lJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ2kmc2Nhcm9uOyc7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKkJlIHJpYsWzICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ1ZpZW5vcyB2YWxhbmRvcyBzZW51bW8nOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnJlNjYXJvbjtlJnNjYXJvbjtpxbMgdmFsYW5kxbMgc2VudW1vJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJ0R2eWxpa29zIHZhbGFuZMWzIHNlbnVtbyc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ1ZpZW5vcyBkaWVub3Mgc2VudW1vJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ1ZpZW5vcyBzYXZhaXTEl3Mgc2VudW1vJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdEdmllasWzIG3El25lc2nFsyBzZW51bW8nOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ1ZpZW5vIG3El25lc2lvIHNlbnVtbyc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVHJpasWzIG3El25lc2nFsyBzZW51bW8nOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICcmU2Nhcm9uO2Umc2Nhcm9uO2nFsyBtxJduZXNpxbMgc2VudW1vJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ1ZpZW5lcmnFsyBtZXTFsyBzZW51bW8nOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3J1cGF2aW1hcyBpciByxasmc2Nhcm9uO2lhdmltYXMnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1JlY29yZHMgbWF0Y2hpbmcgdGhlIGNyaXRlcmlhJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnTmF1ZG90b2pvIHZhcmRhcyBtYcW+xJdqaW7EjWlhaSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnTmF1ZG90b2pvIHZhcmRhcyBkaWTEl2phbsSNaWFpJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdEYXRhIHwgbWHFvsSXamFuxI1pYWknOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnRGF0YSB8IGRpZMSXamFuxI1pYWknOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnxK52eWtpbyB0aXBhcyB8IG1hxb7El2phbsSNaWFpJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnxK52eWtpbyB0aXBhcyB8IGRpZMSXamFuxI1pYWknOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnRGVzY2VuZGluZyBJcCBBZGRyZXNzJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnQXNjZW5kaW5nIElwIEFkZHJlc3MnOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ05lYXB0aWt0YSBpc3Rvcmlqb3MnOwokbGFuZ1sncmVzZXQnXSA9ICdSZXNldCc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICdHcm91cCBCeSBJUCBBZGRyZXNzJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRXZlbnQgVHlwZSBGaWx0ZXInOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9kYXRlJ10gPSAnRGlzcGxheSBvbmx5IGV2ZW50cyB0aGF0IGFyZSBsZXNzIHRoYW46JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdQYWdlIExpbWl0JzsKJGxhbmdbJ2ZvciddID0gJ2Zvcic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ05hdWRvdG9qbyBpc3Rvcmlqb3MgYXRhc2thaXRhJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdOZcW+aW5vbWFzJzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUCBhZHJlc2FzJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICfErnZ5a2lvIHRpcGFzJzsKJGxhbmdbJ3Byb21wdF9kYXRlJ10gPSAnRGF0YSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnR3LEr8W+dGknOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ0ltcG9ydCBPcGVyYXRpb24gQ29tcGxldGUnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnTGluZXMgUHJvY2Vzc2VkJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICfErnZ5a28ga2xhaWTFsyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnxK5yYSZzY2Fyb247YWkgcHJpZMSXdGknOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIGdyb3VwICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnQ291bGQgbm90IGdldCBhIHJlc3BvbnNlIGZyb20gdGhlIFNNVFAgc2VydmVyJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0ZpbGUgc3BlY2lmaWVkICglcykgY291bGQgbm90IGJlIGZvdW5kJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdJbnZhbGlkIHZhbHVlIGZvciBkcm9wZG93biBvciBtdWx0aXNlbGVjdCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ0xhdWthcyAlcyB2aXImc2Nhcm9uO2lqbyBtYWtzaW1hbMWzIGlsZ8SvJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0YXZpbW8ga2xhaWRhIChlaWx1dMSXICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0NvdWxkIG5vdCBnZXQgdGhlIHByb3BlcnR5IGRlZmluaXRpb25zIChpbnRlcm5hbCBlcnJvciknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBzZXR0aW5nIHVzZXIgaW5mbyc7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYSBjb2x1bW4gdG8gbWF0Y2ggdGhlIHJlcXVpcmVkIGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCBncm91cCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnVGhlIGZpbGUgc3BlY2lmaWVkIGZvciBpbXBvcnQgaXMgbm90IGluIHRoZSBjb3JyZWN0IGZvcm1hdCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnQ291bGQgbm90IG9wZW4gZmlsZSc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIEVhY2ggbGluZSBtdXN0IGNvbnRhaW4gdGhlIHNhbWUgbnVtYmVyIG9mIGZpZWxkcywgYW5kIHRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNoIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnR1b3RpIG5hdWRvdG9qdXMgxK8gJnNjYXJvbjtpxIUgZ3J1cMSZJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRmaWxlbmFtZSddID0gJ0lucHV0IENTViBGaWxlJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnSW5wdXQgWE1MIEZpbGUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRWtzcG9ydHVvdGkgbmF1ZG90b2p1cyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnR1b3RpIG5hdWRvdG9qdXMnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnVmFseXRpJzsKJGxhbmdbJ3Byb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRoJ10gPSAnSW1hZ2UgRGVzdGluYXRpb24gUGF0aCc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ0EgcHJvYmxlbSBvY2N1cnJlZCB3aXRoIGEgbWlzc2luZyAoYnV0IHJlcXVpcmVkKSB1cGxvYWQnOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ0NvdWxkIG5vdCBwYXJzZSB0aGUgcHJvdmlkZWQgWE1MIGZpbGUnOwokbGFuZ1snZXJyb3Jfbm90ZW1wdHlncm91cCddID0gJ0dydXDElywga3VyaW9qZSB5cmEgbmF1ZG90b2rFsywgbmVnYWxpIGLFq3RpIGkmc2Nhcm9uO3RyaW50YSc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnJlNjYXJvbjtpcyBuYXVkb3RvamFzIGphdSB5cmEgcHJpc2lqdW5nxJlzJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ05ldGVpc2luZ2FpIMSvdmVzdGFzIHRla3N0YXMgaSZzY2Fyb247IHBhdmVpa3NsaXVrbyc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnTGVpc3RpIG5hdWRvdG9qdWkgcHJpc2lqdW5ndGkgZGF1Z2lhdSBuZWd1IHZpZW7EhSBrYXJ0xIUnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0ltYWdlIEZpbGUgRXh0ZW5zaW9ucyB0aGF0IFVzZXJzIGFsbG93ZWQgdG8gdXBsb2FkJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25SZWZyZXNoVXNlciddID0gJzxoMz5PblJlZnJlc2hVc2VyPC9oMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyIHNlc3Npb24gaXMgcmVmcmVzaGVkLjwvcD4NCjxoND5QYXJhbWV0ZXJzOjwvaDQ+DQo8dWw+DQogIDxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBVc2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gVGhlIGlwIGFkZHJlc3Mgb2YgdGhlIGNsaWVudDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dvdXQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2Vkb3V0IHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGV4cGlyZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbiB0byB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQgb2YgdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGlzIGV4cGlyZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyB1c2VyIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblJlZnJlc2hVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gdGhlIHVzZXIgc2Vzc2lvbiBpcyByZWZyZXNoZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaW5mbyBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGFjY291bnQgaXMgZGVsZXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgZGVsZXRlZCc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQmFja2VuZCBHcm91cCc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIFRoZSBmb2xsb3dpbmcgbWFjcm9zIGNhbiBiZSB1c2VkIGluIHRoZXNlIGZpZWxkczogeyR1c2VybmFtZX0seyRncm91cH0uIFdoZW4gdXNpbmcgdGhlIHskZ3JvdXB9IG1hY3JvLCB0aGUgc3lzdGVtIHdpbGwgc3Vic2l0dXRlIHRoZSBuYW1lIG9mIHRoZSBmaXJzdCBtZW1iZXIgZ3JvdXAgdGhhdCB0aGUgdXNlciBiZWxvbmdzIHRvLCBhbmQgd2lsbCByZWRpcmVjdCB0byB0aGF0IHBhZ2UuJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ05hdWRvdG9qYXMgdG9raXUgdmFyZHUgamF1IGVnemlzdHVvamEnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnTm8gcmVzdWx0cyByZXR1cm5lZCBmcm9tIGNzdiBleHBvcnQnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTmF1ZG90b2pvIHZhcmRvIGxhdWtvIGlsZ2lzJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ1NsYXB0YcW+b2TFvmlvIGxhdWtvIGlsZ2lzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdNaW5pbWFsdXMvbWFrc2ltYWx1cyBzbGFwdGHFvm9kxb5pbyBpbGdpcyB5cmEgbmV0ZWlzaW5nYXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ05ldGVpc2luZ2FzIG5hdWRvdG9qbyB2YXJkbyBpbGdpcyAocGVyIHRydW1wYXMgYXJiYSBwZXIgaWxnYXMpJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdOZXRlaXNpbmdhcyBlLiBwYSZzY2Fyb247dG8gYWRyZXNhcyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ0UuIHBhJnNjYXJvbjt0byBhZHJlc2FzICZzY2Fyb247aWFpIHPEhXNrYWl0YWkgbmVyYXN0YXMnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbSBzZXR0aW5nIHByb3BlcnR5JzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdOYXVkb3RvamFzIHByaWTEl3RhcyAlcyA9ICVzJzsKJGxhbmdbJ3VzZXJfZGVsZXRlZCddID0gJ05hdWRvdG9qYXMgaSZzY2Fyb247dHJpbnRhcyB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdTYXZ5YsSXJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWx1ZSAocmVndWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1dhcm5pbmc6IFRoZXNlIGZpZWxkcyBhZmZlY3QgdGhlIHNpemUgb2YgaW5wdXQgZmllbGRzIGZvciBmb3Jtcy4gIERlY3JlYXNpbmcgdGhpcyBudW1iZXIgb24gYW4gZXhpc3Rpbmcgc2l0ZSBtYXkgbm90IGJlIGFkdmlzYWJsZSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGFkanVzdCB0aGUgbW9kdWxlIHByZWZlcmVuY2VzPyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnRS4gcGEmc2Nhcm9uO3RvIGFkcmVzYXMgamF1IHlyYSBuYXVkb2phbWFzJzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ1VzZSBjb29raWVzIHRvIHJlbWVtYmVyIGxvZ2luIGRldGFpbHMnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdUaGUgbmFtZSBvZiB0aGUgY29va2llJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnTGVpc3RpIHTEhSBwYXTEryBlLiBwYSZzY2Fyb247dG8gYWRyZXPEhSBrZWxpZW1zIG5hdWRvdG9qYW1zJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ05hdWRvdG9qbyB2YXJkYXMgeXJhIG5hdWRvdG9qbyBlLiBwYSZzY2Fyb247dG8gYWRyZXNhcyc7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdBdHRlbXB0IHRvIGtlZXAgbG9naW5zIGFsaXZlIGJ5IHRoZSB1c2Ugb2YgYSBjb29raWUgPGVtPih0aGUgY29va2llIGlzIHJlc2V0IG9uIGFjdGl2aXR5IGluIHRoZSB3ZWJzaXRlKTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyhhbGxvdyBtdWx0aXBsZSB1c2VycyB3aXRoIHRoZSBzYW1lIGVtYWlsIGFkZHJlc3MpJzsKJGxhbmdbJ2luZm9fdXNlcm5hbWVfaXNfZW1haWwnXSA9ICcodXNlciYjMDM5O3MgZW1haWwgYWRkcmVzcyBpcyB0aGVpciB1c2VybmFtZSAtLSBkb24mIzAzOTt0IHNldCB0aGlzIHdpdGggJnF1b3Q7YWxsb3cgZHVwbGljYXRlIGVtYWlsIGFkZHJlc3NlcyZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnQWxsb3cgZHVwbGljYXRlICZxdW90O2ZvcmdvdCBwYXNzd29yZCZxdW90OyByZW1pbmRlcnM/JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJyhhbGxvdyBhIHVzZXJzIHRvIHJlcXVlc3QgYSBwYXNzd29yZCByZXNldCwgZXZlbiBpZiB0aGV5IGhhdmVuJiMwMzk7dCBhY3RlZCBvbiBhIHByZXZpb3VzIG9uZSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdVc2UgRnJvbnQtZW5kIFVzZXIgc3BlY2lmaWMgcGVybWlzc2lvbnM/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWxseSwgRkVVU2VycyBwZXJtaXNzaW9ucyBhcmUgdGhlIHNhbWUgYXMgdGhlIGVxdWl2YWxlbnQgQWRtaW4gQXJlYSBwZXJtaXNzaW9ucyBsaWtlIEFkZCBVc2VyLCBBZGQgR3JvdXAsIGV0Yy4gSWYgeW91IHNlbGVjdCB0aGlzIG9wdGlvbiwgdGhlcmUgd2lsbCBiZSBzZXBhcmF0ZSBwZXJtaXNzaW9ucyBmb3IgRkVVc2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdDb3VsZCBub3QgZmluZCB0aGUgdXBsb2FkZWQgZmlsZSAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnVGhlcmUgd2FzIGEgcHJvYmxlbSB3aXRoIHlvdXIgdXBsb2FkZWQgZmlsZS4gIFBsZWFzZSB0cnkgYWdhaW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnSsWrcyBuZcSvdmVkxJd0ZSBuYXVkb3Rvam8gdmFyZG8nOwokbGFuZ1snZXJyb3JfbWlzc2luZ2VtYWlsJ10gPSAnSsWrcyBuZcSvdmVkxJd0ZSBzYXZvIGUuIHBhJnNjYXJvbjt0byBhZHJlc28nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnSsWrcyBuZcSvdmVkxJd0ZSBzbGFwdGHFvm9kxb5pbyc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmQgVXNlciBMb2dvdXQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnRnJvbnRlbmQgVXNlciBMb2dpbic7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlVTRSBDQVVUSU9OPC9iPiB3aGVuIGNoYW5naW5nIGV4aXN0aW5nIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzaWduZWQgdG8gZ3JvdXBzLCB5b3UgbWF5IHBvdGVudGlhbGx5IGNhdXNlIGRhbWFnZSBhbmQgYnJlYWsgYW4gZXhpc3Rpbmcgc2l0ZSA8aT4oZXNwZWNpYWxseSBpZiB5b3UgcmVkdWNlIGZpZWxkIGxlbmd0aHMsIGV0Yyk8L2k+PC9mb250Pic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ1RoaXMgZnVuY3Rpb24gZG9lcyBub3Qgd29yayBvbiB3aW5kb3dzJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdEbyBub3QgY3JlYXRlIGEgcHJvcGVydHkgZm9yIHVzZXJuYW1lLCBvciBwYXNzd29yZCBhcyB0aGVzZSBwcm9wZXJ0aWVzIGFyZSBidWlsdGluIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRWtzcG9ydHVvdGkgbmF1ZG90b2p1cyDEryBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRWtzcG9ydHVvdGknOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0dW90aSc7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluaXN0cmF2aW1hcyc7CiRsYW5nWydlZGl0cHJvcCddID0gJ0tlaXN0aSBzxIV2eWLEmTogPGVtPiVzPC9lbT4nOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWFrc2ltYWx1cyBpbGdpcyc7CiRsYW5nWydjcmVhdGVkJ10gPSAnU3VrdXJ0YXMnOwokbGFuZ1snc29ydGJ5J10gPSAnUsWrJnNjYXJvbjtpdW90aSBwYWdhbCc7CiRsYW5nWydzb3J0J10gPSAnUsWrJnNjYXJvbjtpdW9qYW1hJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ05hdWRvdG9qYWkgcGFzaXJpbmt0b3NlIGdydXDEl3NlJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0Fwcmlib3RpIHJlenVsdGF0dXMgaWtpJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJyZTY2Fyb247aW8gbmF1ZG90b2pvIGUuIHBhJnNjYXJvbjt0byBhZHJlc2FzIG5lcmFuZGFtYXMuIEtyZWlwa2l0xJdzIMSvIHNpc3RlbW9zIGFkbWluaXN0cmF0b3JpxbMuJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBGb3Jnb3QgUGFzc3dvcmQgZm9ybSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBmb3IgQ2hhbmdlIFNldHRpbmdzIGZvcm0nOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBsb2dpbiAqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ291dCAqJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1LFqyZzY2Fyb247aWF2aW1vIHR2YXJrYSc7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdBIG51bWJlciBvZiB1c2VycyBhcmUgaW4gdGhlIG1pZGRsZSBvZiByZXNldHRpbmcgbG9zdCBwYXNzd29yZHMuICBDdXJyZW50bHkgdGhpcyBjb3VudCBpcyBhdDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdQYSZzY2Fyb247YWxpbnRpIHZpc3VzIGRhdWdpYXUgbmVndSBzYXZhaXTEl3Mgc2VudW1vIMSvcmEmc2Nhcm9uO3VzJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1BhJnNjYXJvbjthbGludGkgdmlzdXMgZGF1Z2lhdSBuZWd1IG3El25lc2lvIHNlbnVtbyDEr3JhJnNjYXJvbjt1cyc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdQYSZzY2Fyb247YWxpbnRpIHZpc3VzIMSvcmEmc2Nhcm9uO3VzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdBciBqxatzIMSvc2l0aWtpbsSZcz8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdOZXRlaXNpbmdhcyBrb2RhcyBidXZvIMSvdmVzdGFzLiBCYW5keWtpdGUgZGFyIGthcnTEhSc7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnQSB0ZW1wb3JhcnkgY29kZSBmb3IgeW91ciB1c2VyIGlkIGNvdWxkIG5vdCBiZSBmb3VuZCBpbiB0aGUgZGF0YWJhc2UnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB1c2VkIHRvIGRpc3BsYXkgdmVyaWZpY2F0aW9uIGZvcm0nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgZm9yIGZvcmdvdHRlbiBwYXNzd29yZCBlbWFpbCc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnSsWrcyBhcmJhIGthcyBub3JzIGtpdGFzIGphdSBwcmEmc2Nhcm9uO8SXdGUgc2xhcHRhxb5vZMW+aW8ga2VpdGltby4gUGF0aWtyaW5raXQgc2F2byBlLiBwYSZzY2Fyb247dMSFIC0gdHVyxJd0dW3El3RlIHJhc3RpIGUuIGxhaSZzY2Fyb247a8SFIHN1IGluc3RydWtjaWpvbWlzLCBrYWlwIHBha2Vpc3RpIHNsYXB0YcW+b2TEry4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0R1b21lbsWzIGJhesSXcyBrbGFpZGEnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnSsWrcyBnYXZvdGUgJnNjYXJvbjvEryBsYWkmc2Nhcm9uO2vEhSwgbmVzIGrFq3MgYXJiYSBrYcW+a2FzIGtpdGFzIG3Fq3PFsyBzdmV0YWluxJdqZSBudXJvZMSXLCBrYWQgcHJhcmFkb3RlIHNhdm8gcHJpc2lqdW5naW1vIHNsYXB0YcW+b2TEry4gSmVpIGp1bXMgbmVyZWlraWEga2Vpc3RpIHNhdm8gc2xhcHRhxb5vZMW+aW8sIHRpZXNpb2cgaWdub3J1b2tpdGUgJnNjYXJvbjvEryBsYWkmc2Nhcm9uO2vEhS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdLb2Rhcyc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdOb3LEl2RhbWkgcGFrZWlzdGkgc2F2byBzbGFwdGHFvm9kxK8gc2VraXRlIMW+ZW1pYXUgcGF0ZWlrdMSFIG51b3JvZMSFLiBOb3JpbnQgcGFrZWlzdGkgc2xhcHRhxb5vZMSvLCByZWlraWEgxK92ZXN0aSBpciBrb2TEhS4gxK5wcmFzdGFpIGtvZG8gbGF1a2VsaXMgYsWrbmEgaSZzY2Fyb247IGFua3N0byB1xb5waWxkeXRhcywgdGHEjWlhdSBqZWkgbmUsIHRhaSBrb2RhcyB5cmE6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnU2VraXRlICZzY2Fyb247acSFIG51b3JvZMSFLCBqZWkgbm9yaXRlIHBha2Vpc3RpIHNhdm8gc2xhcHRhxb5vZMSvOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnUHJhcmFzdGFzIHNsYXB0YcW+b2Rpcyc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ25lcmFuZGFtYXMgQ01TTWFpbGVyIG1vZHVsaXMnOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnRS4gbGFpJnNjYXJvbjtrYXMgc3UgaW5zdHJ1a2Npam9taXMsIGthaXAgcGFrZWlzdGkgc2xhcHRhxb5vZMSvLCBpJnNjYXJvbjtzacWzc3RhcyBhZHJlc3UgJXMuIEHEjWnFqyEnOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICfErnZlc2tpdGUgbmF1ZG90b2pvIHZhcmTEhSBpciBqZWlndSB0b2tzIHZhcmRhcyBlZ3ppc3R1b2phLCBlLiBsYWkmc2Nhcm9uO2thcyBzdSBpbnN0cnVrY2lqb21pcywga2FpcCBwYWtlaXN0aSBzbGFwdGHFvm9kxK8sIGJ1cyBqdW1zIGkmc2Nhcm9uO3NpxbNzdGFzLiAnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdVxb5taXImc2Nhcm9uO3RvIHNsYXB0YcW+b2TFvmlvICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdOYXVkb3Rvam8gdmFyZG8gcHJpbWluaW1vICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdTxIV2eWLElyAlcyBuZXJhc3RhJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdSYXN0b3Mgc8SFdnlixJdzJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdQcmlkxJd0aSBzxIV2eWLEmSc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnUHJpdmFsb21hcyBsYXVrYXMgKCVzKSBidXZvIHR1JnNjYXJvbjvEjWlhcyc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ8SudmVza2l0ZSBuYXVqxIUgc2xhcHRhxb5vZMSvLCBqZWkgbm9yaXRlIHBha2Vpc3RpIGRhYmFydGluxK8nOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdKxatzIG5lcHJpc2lqdW5nxJlzJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdOdXN0YXR5bWFpJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVnaXN0cmFjaWphJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnJlNjYXJvbjtpIHBhc2t5cmEgbmViZWdhbGlvamEnOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ05ldGVpc2luZ2FzIGUuIHBhJnNjYXJvbjt0byBhZHJlc28gZm9ybWF0YXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdOZXRlaXNpbmdhIHBhc2t5cm9zIGdhbGlvamltbyBwYWJhaWdvcyBkYXRhLiBUYWkgZ2FsaSBixat0aSBzdXNpZXRhIHN1IHNpc3RlbW9zIG51c3RhdHltYWlzLiBCYW5keWtpdGUgbnVzdGF0eXRpIGFua3N0ZXNuaXVzIG1ldHVzLic7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnRXJyb3Igc2V0dGluZyBwcm9wZXJ0eSAlcyBmb3IgdXNlciAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ05ldGVpc2luZ2FzICVzIGdydXDEl3MgSUQnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdIaWRkZW4gZmllbGQgbWFya2VyJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdIaWRkZW4gZmllbGQgY29sb3InOwokbGFuZ1snaGlkZGVuJ10gPSAnUGFzbMSXcHRhJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdBIHByb3BlcnR5IHdpdGggdGhhdCBuYW1lIGlzIGFscmVhZHkgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdObyBwcm9wZXJ0aWVzIGRlZmluZWQnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdObyBwcm9wZXJ0aWVzIHdlcmUgc2VsZWN0ZWQgZm9yIHRoaXMgZ3JvdXAnOwokbGFuZ1snbm9ncm91cHMnXSA9ICdObyBHcm91cHMgYXJlIGRlZmluZWQnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdSYXN0b3MgZ3J1cMSXcyc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnTWVtYmVyc2hpcCBpbiBhdCBsZWFzdCBvbmUgZ3JvdXAgaXMgcmVxdWlyZWQnOwokbGFuZ1sncHJvbXB0X3JlcXVpcmVvbmVncm91cCddID0gJ1JlcXVpcmUgbWVtYmVyc2hpcCBpbiBhdGxlYXN0IG9uZSBncm91cCc7CiRsYW5nWydiYWNrJ10gPSAnQXRnYWwnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJ2xhdWthcyAlcyB5cmEgcHJpdmFsb21hcyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFyayByZXF1aXJlZCBmaWVsZHMgd2l0aCc7CiRsYW5nWydyZXF1aXJlZGZpZWxkY29sb3InXSA9ICdIaWxpdGUgcmVxdWlyZWQgZmllbGRzIGluJzsKJGxhbmdbJ25leHQnXSA9ICdLaXRhcyc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0dydXDElyB0b2tpdSBwYXZhZGluaW11IGphdSB5cmEnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdCxat0aW5hcyc7CiRsYW5nWydvcHRpb25hbCddID0gJ0xhaXN2YWkgcGFzaXJlbmthbWFzJzsKJGxhbmdbJ29mZiddID0gJ0kmc2Nhcm9uO2p1bmd0YSc7CiRsYW5nWydzaXplJ10gPSAnRHlkaXMnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihNYXhpbXVtIHNpemUgb2YgYW55IG9uZSBkaW1lbnNpb24gb2YgdGhlIGltYWdlIGluIHBpeGVscyknOwokbGFuZ1snbGVuZ3RoJ10gPSAnSWxnaXMnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2hhcnMgaW4gdGhlIHRleHQgaW5wdXQpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdEcm9wZG93biBvcHRpb25zLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuICBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3JhZGlvb3B0aW9ucyddID0gJ1JhZGlvYnV0dG9uIGxhYmVscywgc2VwYXJhdGVkIGJ5IGxpbmUgYnJlYWtzLiBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1Byb21wdCc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1RpcGFzJzsKJGxhbmdbJ3R5cGUnXSA9ICdUaXBhcyc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ0xhdWtlbGlvIHN0YXR1c2FzJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ0FzayBpbiBMb3N0PGJyLz5Vc2VybmFtZSc7CiRsYW5nWyd0ZXh0J10gPSAnVGVrc3Rhcyc7CiRsYW5nWydjaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTXVsdGkgU2VsZWN0IExpc3QnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnUmFkaW8gQnV0dG9ucyc7CiRsYW5nWydpbWFnZSddID0gJ1BhdmVpa3NsaXVrYXMnOwokbGFuZ1snZW1haWwnXSA9ICdFLiBwYSZzY2Fyb247dG8gYWRyZXNhcyc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1RleHRhcmVhJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24nOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdTdmVpa2knOwokbGFuZ1snbG9nb3V0J10gPSAnQXRzaWp1bmd0aSc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnTmF1ZG90aSAmc2Nhcm9uO2lvcyBncnVwxJdzIHZhcmTEhSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdQYWtlaXN0aSBtYW5vIG51c3RhdHltdXMnOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdOZXBhdnlrbyBwcmlzaWp1bmd0aTogbmV0ZWlzaW5naSBuYXVkb3Rvam8gdmFyZGFzIGFyYmEgc2xhcHRvxb5vZGlzJzsKJGxhbmdbJ2xvZ2luJ10gPSAnUHJpc2lqdW5ndGknOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdQcmlzaWp1bmdpbW8gbXlndHVrbyBldGlrZXTElyc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdOYXVkb3Rvam8gdmFyZGFzJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0UuIHBhJnNjYXJvbjt0byBhZHJlc2FzJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1NsYXB0YcW+b2Rpcyc7CiRsYW5nWydwcm9tcHRfcmVtZW1iZXJtZSddID0gJ1ByaXNpbWluayBtYW5lJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0cnVvdGlzJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnVcW+bWlyJnNjYXJvbjtvdGUgc2xhcHRhxb5vZMSvPyc7CiRsYW5nWydsb3N0dXNlcm5hbWUnXSA9ICdVxb5taXImc2Nhcm9uO290ZSBwcmlzaWp1bmdpbW8gZGV0YWxlcz8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdOdW1hdHl0aSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsb25hcyc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdJbmZvcm1hY2lqYSBhcGllICZzY2Fyb247xK8gbmF1ZG90b2rEhSBuZXJhc3RhJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdOYXVkb3Rvam8gdmFyZGFzICglcykgamF1IHlyYSBuYXVkb2phbWFzJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdVc2UgU01UUCB0byB2YWxpZGF0ZSBlbWFpbCBhZGRyZXNzZXM/JzsKJGxhbmdbJ3Byb21wdF9taW5wd2xlbiddID0gJ01pbmltdW0gUGFzc3dvcmQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ01heGltdW0gUGFzc3dvcmQgTGVuZ3RoJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltYWx1cyBuYXVkb3Rvam8gdmFyZG8gaWxnaXMnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTWF4aW11bSBVc2VybmFtZSBMZW5ndGgnOwokbGFuZ1sncHJvbXB0X3Nlc3Npb250aW1lb3V0J10gPSAnU2Vzc2lvbiBUaW1lb3V0IChzZWNvbmRzKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnVXNlIGNvb2tpZXMgdG8ga2VlcCBsb2dpbnMgYWxpdmUnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdBbGxvdyBFbWFpbCBSZWdpc3RyYXRpb24nOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ051bWF0eXRhIGdydXDElyBuYXVqYW0gbmF1ZG90b2p1aSc7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ051c3RhdHltxbMga2VpdGltbyAmc2Nhcm9uO2FibG9uYXMnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ1NsYXB0YcW+b2TFvmlhaSBuZXN1dGFtcGEnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnTmV0ZWlzaW5nYXMgbmF1ZG90b2pvIHZhcmRhcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdOZXRlaXNpbmdhcyBzbGFwdGHFvm9kaXMnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdSZWRhZ3VvdGkgbmF1ZG90b2phJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnR2FsaW9qYW50aXMnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdOYXVkb3Rvam8gdmFyZGFzJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1c2FzJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJyZTY2Fyb247aXMgbmF1ZG90b2phcyBuZXByaWtsYXVzbyBqb2tpYWkgZ3J1cGVpJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdOxJdyYSBzxIV2eWJpxbMnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdBdHRlbXB0IHRvIGltcG9ydCBkdXBsaWNhdGUgcHJvcGVydGllcyc7CiRsYW5nWyd2YWx1ZSddID0gJ1ZlcnTElyc7CiRsYW5nWydncm91cHMnXSA9ICdHcnVwxJdzJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdTYXZ5YsSXcyc7CiRsYW5nWydwcm9wbmFtZSddID0gJ1NhdnlixJdzIHZhcmRhcyc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdTYXZ5YsSXcyB2ZXJ0xJcnOwokbGFuZ1snYWRkJ10gPSAnUHJpZMSXdGknOwokbGFuZ1snaGlzdG9yeSddID0gJ0lzdG9yaWphJzsKJGxhbmdbJ2VkaXQnXSA9ICdLZWlzdGknOwokbGFuZ1snZXhwaXJlcyddID0gJ051c3RvamEgZ2FsaW90aSc7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdTcGVjaWZ5IERhdGUnOwokbGFuZ1snMTJocnMnXSA9ICcxMiBIb3Vycyc7CiRsYW5nWycyNGhycyddID0gJzI0IEhvdXJzJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggSG91cnMnOwokbGFuZ1snMXdlZWsnXSA9ICcxIFdlZWsnOwokbGFuZ1snMndlZWtzJ10gPSAnMiBXZWVrcyc7CiRsYW5nWycxbW9udGgnXSA9ICcxIE1vbnRoJzsKJGxhbmdbJzNtb250aHMnXSA9ICczIE1vbnRocyc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBNb250aHMnOwokbGFuZ1snMXllYXInXSA9ICcxIFllYXInOwokbGFuZ1snbmV2ZXInXSA9ICdOaWVrYWRhJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsaXMgaW5zdGFsaXVvdGFzIHPEl2ttaW5nYWkuPGJyLz5CZSBzdXJlIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4mcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdTbGFwdGHFvm9kaXMnOwokbGFuZ1sncmVwZWF0cGFzc3dvcmQnXSA9ICdTbGFwdGHFvm9kaXMsIGRhciBrYXJ0xIUnOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ0dydXDElyB0b2tpdSBwYXZhZGluaW11IGphdSB5cmEnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnUmVkYWd1b3RpIGdydXDEmSc7CiRsYW5nWydzdWJtaXQnXSA9ICdQYXRlaWt0aSc7CiRsYW5nWydjYW5jZWwnXSA9ICdBdCZzY2Fyb247YXVrdGknOwokbGFuZ1snZGVsZXRlJ10gPSAnVHJpbnRpJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnQXJlIHlvdSBzdXJlIHRoaXMgaXMgdGhlIHByb3BlciBzZXR0aW5ncyBmb3IgdGhpcyBncm91cD9cblR1cm5pbmcgYSBwcm9wZXJ0eSBvZmYgd2lsbCBub3QgZGVsZXRlIGFueSBlbnRyaWVzIGluIHRoZSBwcm9wZXJ0aWVzIHRhYmxlIGZvciB0aGlzIGdyb3VwL3VzZXIuICBUaGV5IHdpbGwgbWVyZWx5IGJlIHVuYXZhaWxhYmxlLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnQXIgasWrcyDEr3NpdGlraW7EmXMsIGthZCBub3JpdGUgaSZzY2Fyb247dHJpbnRpICZzY2Fyb247acSFIGdydXDEmT8/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gY29tcGxldGVseSBkZWxldGUgdGhpcyBwcm9wZXJ0eT9cbkRvaW5nIHNvIHdpbGwgYWxzbyBlcmFzZSBhbnkgdXNlciBlbnRyaWVzIGZvciB0aGlzIHByb3BlcnR5Lic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdJbnN1ZmZpY2llbnQgUGFyYW1ldGVycyc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdWYXJkYXMnOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVtIGFkZGluZyBwcm9wZXJ0eSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlbSBhZGRpbmcgZ3JvdXAgcmVsYXRpb24nOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlbSBhZGRpbmcgZ3JvdXAnOwokbGFuZ1snZXJyb3JfY2FudGFzc2lnbnVzZXInXSA9ICdQcm9ibGVtIGFkZGluZyBhIHVzZXIgdG8gYSBncm91cCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbSBkZWxldGluZyBhIHByb3BlcnR5JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnRS4gcGEmc2Nhcm9uO3RvIGFkcmVzYXMgbmVyYXN0YXMnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ05vIHdyaXRlIHBlcm1pc3Npb24gdG8gZGVzdGluYXRpb24gZGlyZWN0b3J5JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICdOZXRlaXNpbmdpIHBhcmFtZXRyYWknOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdKb2tpYSBncnVwxJcgbmVyYXN0YSc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ1ByaXRhaWt5dGknOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHJhcyc7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnVXNlcm5hbWUgUmVndWxhciBFeHByZXNzaW9uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQXByYSZzY2Fyb247eW1hcyc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdHcnVwxJdzIHBhdmFkaW5pbWFzJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ1ByaXNpanVuZ2ltYXMgYXRtZXN0YXMnOwokbGFuZ1snZXJyb3InXSA9ICdLbGFpZGEnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdQcmlkxJd0aSBncnVwxJknOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnR1b3RpIGdydXDEmSc7CiRsYW5nWydhZGR1c2VyJ10gPSAnUHJpZMSXdGkgbmF1ZG90b2rEhSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVXNlcnMgZm91bmQgdGhhdCBtYXRjaCB0aGUgY3JpdGVyaWEnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwxJcnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdQYXNpcmlua3RpIGdydXDEmSc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdSZWdpc3RyYWNpam9zICZzY2Fyb247YWJsb25hcyc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdBdHNpanVuZ2ltbyAmc2Nhcm9uO2FibG9uYXMnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdQcmlzaWp1bmdpbW8gJnNjYXJvbjthYmxvbmFzJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnTnVzdGF0eW1haSc7CiRsYW5nWyd1c2VycyddID0gJ05hdWRvdG9qYWknOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgbmF1ZG90b2rFsyB0dmFya3ltYXMnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBbGxvdyB1c2VycyB0byBsb2cgaW4gdG8gdGhlIGZyb250ZW5kIG9mIHlvdXIgc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnTnVtYXR5dGFzaXMgcHJpZSZzY2Fyb247YWtpbmlzIHB1c2xhcGlzJzsKJGxhbmdbJ2xhc3RhY2Nlc3NlZHBhZ2UnXSA9ICdMYXN0IGFjY2Vzc2VkIHBhZ2UnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnS2l0YXMgcHVzbGFwaXM6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnxK52ZXNraXRlIHRla3N0xIUgcGF2ZWlrc2xpdWt1aSc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nb_NO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3RpdGxlX2ZvcmdvdHB3J10gPSAnR2xlbXQgcGFzc29yZCc7CiRsYW5nWydpbXBvcnRfZGVsZXRlZHVzZXInXSA9ICdTbGV0dGV0IGJydWtlciAlcyc7CiRsYW5nWydlbmNyeXB0ZWQnXSA9ICdLcnlwdGVydCc7CiRsYW5nWydpbmZvX2Nvb2tpZW5hbWUnXSA9ICdPbSBzYXR0LCAiaHVzayBtZWciIGZ1bmtzam9uYWxpdGV0ZW4gdmlsbCBibGkgYWt0aXZlcnQuIERldHRlIGVyIHRpbHN2YXJlciBjb29raWUgaG9sZCBpIGxpdmUgZnVua3Nqb25lbiwgbWVuIHZhcmVyIG9wcCB0aWwgZXR0IMOlci4nOwokbGFuZ1snbXNnX3VzZXJuYW1lX3JlYWRvbmx5J10gPSAnQXV0ZW50aXNlcmluZ3MgZm9yYnJ1a2VyZW4gdGlsbGF0ZXIgaWtrZSBlbmRyaW5nIGF2IGJydWtlcm5hdm5ldCBmb3IgZGVubmUga29udG9lbic7CiRsYW5nWydtc2dfcGFzc3dvcmRfcmVhZG9ubHknXSA9ICdBdXRlbnRpc2VyaW5ncyBmb3JicnVrZXJlbiB0aWxsYXRlciBpa2tlIGVuZHJpbmcgYXYgcGFzc29yZGV0IGZvciBkZW5uZSBrb250b2VuJzsKJGxhbmdbJ3Byb21wdF9ub3JtYWxsb2dpbiddID0gJ0RpcmVrdGUgaW5ubG9nZ2luZyc7CiRsYW5nWydtb3ZlX3VwJ10gPSAnZmx5dHQgb3BwJzsKJGxhbmdbJ21vdmVfZG93biddID0gJ2ZseXR0IG5lZCc7CiRsYW5nWyd0aXRsZV9wcm9wbW9kdWxlJ10gPSAnRGVubmUgZWdlbnNrYXBlbiBlciBvcHByZXR0ZXQgYXYgZW4gbW9kdWwsIG9nIGthbiBpa2tlIHJlZGlnZXJlcyc7CiRsYW5nWydub3RfYXZhaWxhYmxlJ10gPSAnSWtrZSB0aWxnamVuZ2VsaWcnOwokbGFuZ1sncHJvbXB0X2RmbHRfY2hlY2tlZCddID0gJ1NvbSBzdGFuZGFyZCwgYsO4ciBkZXR0ZSBmZWx0ZXQgdsOmcmUgYXZrcnlzc2V0JzsKJGxhbmdbJ29wZXJhdGlvbl9jb21wbGV0ZWQnXSA9ICdIYW5kbGluZyBmdWxsZsO4cnQnOwokbGFuZ1snbWVtYmVycyddID0gJ01lZGxlbW1lcic7CiRsYW5nWyd2aWV3X2ZpbHRlciddID0gJ1ZpcyBmaWx0ZXInOwokbGFuZ1snZGF0YSddID0gJ0RhdGEnOwokbGFuZ1snYXBwbGllZCddID0gJ0JydWt0JzsKJGxhbmdbJ2ZpcnN0cGFnZSddID0gJzw8JzsKJGxhbmdbJ3ByZXZwYWdlJ10gPSAnPCc7CiRsYW5nWyduZXh0cGFnZSddID0gJz4nOwokbGFuZ1snbGFzdHBhZ2UnXSA9ICc+Pic7CiRsYW5nWydwYWdlJ10gPSAnU2lkZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfY2hhbmdldXNlcm5hbWUnXSA9ICdUaWxsYXQgw6UgZW5kcmUgYnJ1a2VybmF2bic7CiRsYW5nWydpbmZvX2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnT20gYWt0aXZlcnQsIHPDpSB2aWwgYnJ1a2VyZSB0aWxsYXRlcyDDpSBlbmRyZSBzaXR0IGJydWtlcm5hdm4gb2cgYW5kcmUgaW5uc3RpbGxpbmdlcic7CiRsYW5nWyd0ZW1wbGF0ZV9zYXZlZCddID0gJ01hbCBsYWdyZXQnOwokbGFuZ1sndGVtcGxhdGVfcmVzZXRkZWZhdWx0cyddID0gJ01hbCB0aWxiYWtlc3RpbHQgdGlsIHN0YW5kYXJkJzsKJGxhbmdbJ2xibF9zZXR0aW5ncyddID0gJ0lubnN0aWxsaW5nZXInOwokbGFuZ1snbGJsX3RlbXBsYXRlcyddID0gJ01hbGVyJzsKJGxhbmdbJ2VuYWJsZV9jYXB0Y2hhJ10gPSAnQWt0aXZlciBjYXB0Y2hhIHDDpSBpbm5sb2dnaW5nc2tqZW1hZXQnOwokbGFuZ1snaW5mb19lbmFibGVfY2FwdGNoYSddID0gJ0h2aXMgYnJ1a2VyZW4gaWtrZSBlciBsb2dnZXQgaW5uLCBvZyBtb2R1bGVucyBwcmVmZXJhbnNlciBlciBzYXR0IHRpbCDDpSB2aXNlIGlubmxvZ2dpbmdza2plbWEsIHN0eXJlciBkZXR0ZSBhbHRlcm5hdGl2ZXQgb20gZW4gY2FwdGNoYSB2aXNlcyBww6UgaW5ubG9nZ2luZ3NramVtYWV0LiAgICAgSHZpcyBjYXB0Y2hhIGVyIHRpbGdqZW5nZWxpZyc7CiRsYW5nWydwYWdldHlwZV91bmF1dGhvcml6ZWQnXSA9ICdEdSBlciBpa2tlIGF1dG9yaXNlcnQgdGlsIMOlIHNlIGRldHRlIGlubmhvbGRldCc7CiRsYW5nWydpbmZvX2NvbnRlbnRwYWdlX2dyb3VwbGlzdCddID0gJ0FuZ2kgZW4gbGlzdGUgb3ZlciBGRVUtZ3J1cHBlciBzb20ga2FuIGhhIHRpbGdhbmcgdGlsIGRlbm5lIHNpZGVuLiBWZWQgw6UgaWtrZSB2ZWxnZSBub2VuIGdydXBwZXIgc8OlIHZpbCBlbmh2ZXIgYnJ1a2VyIHNvbSBlciBsb2dnZXQgaW5uIG1lZCBGRVUgZsOlIHRpbGxhdGVsc2UgdGlsIMOlIHNlIHNpZGVuJzsKJGxhbmdbJ3BhZ2V0eXBlX3NldHRpbmdzJ10gPSAnSW5uc3RpbGxpbmdlciBmb3IgQmVza3l0dGVkZSBzaWRlcic7CiRsYW5nWydwYWdldHlwZV9ncm91cHMnXSA9ICdUaWxsYXR0ZSBncnVwcGVyJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfZ3JvdXBzJ10gPSAnVmVsZyBncnVwcGVyIHNvbSBoYXIgKHNvbSBzdGFuZGFyZCkgbG92IHRpbCDDpSB2aXNlIGJlc2t5dHRlZGUgc2lkZXIuIEVuIHJlZGFrdMO4ciBtZWQgIkJlaGFuZGxlIGFsdCBJbm5ob2xkIi10aWxsYXRlbHNlIGthbiBvdmVyc3R5cmUgZGV0dGUgZm9yIGh2ZXIgc2lkZSc7CiRsYW5nWydwYWdldHlwZV9hY3Rpb24nXSA9ICdIYW5kbGluZyBmb3IgdXRpbHN0cmVra2VsaWcgdGlsZ2FuZyc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX2FjdGlvbiddID0gJ0FuZ2kgYXRmZXJkIGZvciBwZXJzb25lciBzb20gw6VwbmVyIGRlbm5lIHNpZGVuIHV0ZW4gdGlsc3RyZWtrZWxpZyB0aWxsYXRlbHNlLiBEdSBrYW4gZW50ZW4gb21kaXJpZ2VyZSB0aWwgZW4gYmVzdGVtdCBzaWRlLCBlbGxlciB2aXNlIGlubmxvZ2dpbmdza2plbWFldCc7CiRsYW5nWydzaG93bG9naW5mb3JtJ10gPSAnVmlzIGlubmxvZ2dpbmdza2plbWEnOwokbGFuZ1sncmVkaXJlY3QnXSA9ICdPbWRpcmlnZXIgdGlsIGVuIHNpZGUnOwokbGFuZ1sncGFnZXR5cGVfcmVkaXJlY3R0byddID0gJ09tZGlyaWdlciB0aWwnOwokbGFuZ1snaW5mb19wYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnQW5naSBzaWRlbiDDpSBvbWRpcmlnZXJlIHRpbC4gSHZpcyBkdSB2ZWxnZXIgSW5nZW4sIG9nIGhhbmRsaW5nZW4gZXIgc2F0dCB0aWwgIm9tZGlyaWdlcmUgdGlsIGVuIHNpZGUiIHPDpSB2aWwgYnJ1a2VyZW4gYmxpIHByZXNlbnRlcnQgbWVkIGVuIG1lbGRpbmcgc29tIGluZGlrZXJlciBhdCBkZSBpa2tlIGhhciB0aWxnYW5nIHRpbCBzaWRlbic7CiRsYW5nWydwZXJtaXNzaW9ucyddID0gJ1RpbGxhdGVsc2VyJzsKJGxhbmdbJ2ZldV9wcm90ZWN0ZWRfcGFnZSddID0gJ0Jlc2t5dHRldCBpbm5ob2xkJzsKJGxhbmdbJ3Byb21wdF92aWV3cHJvcHMnXSA9ICdWZWxnIGVrc3RyYSBlZ2Vuc2thcGVyIHNvbSBza2FsIHZpc2VzJzsKJGxhbmdbJ3ZpZXcnXSA9ICdWaXMnOwokbGFuZ1snaW5mb19pZ25vcmVfdXNlcmlkJ10gPSAnT20gdmFsZ3Qgc8OlIHZpbCBpbXBvcnRydXRpbmVuIGZvcnPDuGtlIMOlIGxlZ2dlIHRpbCBicnVrZXJlIHVhdmhlbmdpZyBhdiBicnVrZXJpZCBrb2xvbm5lbi4gSHZpcyBlbiBicnVrZXIgZWtzaXN0ZXJlciBhbGxlcmVkZSBtZWQgbmF2bmV0IHNvbSBlciBhbmdpdHQgaSBpbXBvcnRmaWxlbiwgdmlsIGVuIGZlaWxtZWxkaW5nIGJsaSBnZW5lcmVydCc7CiRsYW5nWydpZ25vcmVfdXNlcmlkJ10gPSAnSWdub3JlciBVc2VySUQga29sb25uZW4gdmVkIGltcG9ydCc7CiRsYW5nWydleHBvcnRfcGFzc2hhc2gnXSA9ICdFa3Nwb3J0ZXIgcGFzc29yZCBoYXNoIHRpbCBmaWxlbic7CiRsYW5nWydpbmZvX2V4cG9ydF9wYXNzaGFzaCddID0gJ1Bhc3NvcmRldCBoYXNoIGVyIGJhcmUgbnl0dGlnIGh2aXMgcGFzc29yZCBzYWx0IHDDpSBpbXBvcnQtdmVydGVuIGVyIGlkZW50aXNrIG1lZCBla3Nwb3J0LXZlcnRlbic7CiRsYW5nWydlcnJvcl9hZGp1c3RzYWx0J10gPSAnUGFzc29yZCBzYWx0IGthbiBpa2tlIGVuZHJlcyc7CiRsYW5nWydwcm9tcHRfcHdzYWx0J10gPSAnUGFzc29yZCBzYWx0JzsKJGxhbmdbJ2luZm9fcHdzYWx0J10gPSAnRnJvbnRFbmRVc2VycyBzYWx0ZXIgYWxsZSBwYXNzb3JkIG1lZCBkZW5uZSBuw7hra2VsZW4gc29tIGVyIG9wcHJldHRldCB2ZWQgaW5zdGFsbGFzam9uLiBOw6VyIGJydWtlcm5lIGhhciBibGl0dCBsYWd0IHRpbCBkYXRhYmFzZW4gc8OlIGthbiBzYWx0IGlra2UgZW5kcmVzLiBTYWx0ZXQga2FuIHbDpnJlIHRvbXQgZm9yIGVsZHJlIGluc3RhbGxhc2pvbmVyLic7CiRsYW5nWydhZHZhbmNlZF9zZXR0aW5ncyddID0gJ0F2YW5zZXJ0ZSBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ2luZm9fc2Vzc2lvbnRpbWVvdXQnXSA9ICdBbmdpIGFudGFsbCBzZWt1bmRlciBmw7hyIGVuIGluYWt0aXYgYnJ1a2VyIGF1dG9tYXRpc2sgYmxpciBsb2dnZXQgdXQgYXYgbmV0dHN0ZWRldCc7CiRsYW5nWydwcm9tcHRfZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdCcnVrZXIgdXRsw7hwcyBpbnRlcnZhbGwnOwokbGFuZ1snaW5mb19leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ0FuZ2kgZW4gdmVyZGkgKGkgc2VrdW5kZXIpIHNvbSB2aXNlciBodm9yIG9mdGUgc3lzdGVtZXQgc2thbCB0dmluZ2UgYnJ1a2VyZSBodm9yIHNlc2pvbmVuIGhhciB1dGzDuHB0IMOlIGJsaSBsb2dnZXQgdXQuIERldHRlIGVyIGVuIG9wdGltYWxpc2VyaW5nIGZvciDDpSBsYWdyZSBkYXRhYmFzZXNww7hycmluZ2VyLiBEZXJzb20gc2F0dCB0b210IGVsbGVyIHNhdHQgdGlsIDAgLSB1dGzDuHAgdmlsIGJsaSB1dGbDuHJ0IHDDpSBodmVyIGZvcmVzcMO4cnNlbC4nOwokbGFuZ1snbXNnX3NldHRpbmdzY2hhbmdlZCddID0gJ0RpbmUgaW5uc3RpbGxpbmdlciBibGUgdmVsbHlra2V0IGxhZ3JldCc7CiRsYW5nWydmb3JjZWRsb2dvdXR0YXNrX2Rlc2MnXSA9ICdUdmluZyBicnVrZXJlIHRpbCDDpSBsb2dnZSB1dCBww6UgZ2l0dGUgaW50ZXJ2YWxsZXInOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3RpbWVzJ10gPSAnVGlkZXIgZm9yIHR2dW5nZXQgdXRsb2dnaW5nJzsKJGxhbmdbJ2luZm9fZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICdBbmdpIGVuIGtvbW1hc2VwYXJlcnQgbGlzdGUgbWVkIHRpZGVyIHNvbSBISDpNTSxISDpNTSBodm9yIGJydWtlcm5lIHZpbCBibGkgdHZhbmdzIHV0bG9nZ2V0LiBNZXJrLCBicnVrZXIgZGV0dGUgcHN1ZWRvY3JvbiBtZWthbmlzbWVuIHPDpSBkdSBtw6UgdsOmcmUgc2lra2VyIHDDpSBhdCBkZSB0aWRlbmUgb3BwZ2l0dCBoZXIgdmlsIGZhbGxlIHJpbWVsaWcgc2FtbWVuIG1lZCAicHNldWRvY3JvbiBncmFudWxhcml0ZXQiIG9nIGF0IG5vayBmb3Jlc3DDuHJzbGVyIHZpbCBvcHBzdMOlIHRpbCBkaXR0IG5ldHRzdGVkIGZvciDDpSBzaWtyZSBhdCBwc2V1ZG9jcm9uIHV0ZsO4cmVzLic7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ0Vrc2tsdWRlcmUgYnJ1a2VyZSBzb20gaGFyIHbDpnJ0IGFrdGl2ZSBpIDxlbT4obWludXR0ZXIpPC9lbT4nOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF9zZXNzaW9uYWdlJ10gPSAnSHZpcyBzcGVzaWZpc2VydCwgdmlsIGFsbGUgYnJ1a2VyZSBzb20gaGFyIHbDpnJ0IGFrdGl2ZSBpIGRldHRlIGFudGFsbGV0IHNla3VuZGVyIGlra2UgYmxpIHR2YW5ncyB1dGxvZ2dldCc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZSddID0gJ0VyIGR1IHNpa2tlciBww6UgYXQgZHUgdmlsIHNsZXR0ZSBicnVrZXJlbiAlcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZWV4dGVuc2lvbiddID0gJ0RlbiBvcHBsYXN0ZWRlIGZpbGVuIHBhc3NlciBpa2tlIHRpbCBsaXN0ZW4gbWVkIHRpbGxhdHRlIGZpbHR5cGVyJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdBbGxlIGRhdGEgYXNzb3NpZXJ0IG1lZCBGcm9udEVuZFVzZXJzIG1vZHVsZW4gaGFyIGJsaXR0IHNsZXR0ZXQnOwokbGFuZ1snaW5mb19lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnT20gc2zDpXR0IHDDpSwgc8OlIHZpbCBkZW5uZSBtb2R1bGVuIGx5dHRlIHDDpSBoYW5kbGluZ2VyIGZyYSBFY29tbWVyY2Ugc3VpdGVuLiBEZSBmw7hsZ2VuZGUgaW5uc3RpbGxpbmdlbmUgaGFyIGt1biBlZmZla3Qgb20gZGVubmUgaW5uc3RpbGxpbmdlbiBlciBww6VzbMOldHQuJzsKJGxhbmdbJ3Byb21wdF9lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnTHl0dCBww6UgT3JkZXIgaGFuZGxpbmdlcic7CiRsYW5nWydpbmZvX3BhaWRyZWdfc2V0dGluZ3MnXSA9ICdEZSBmw7hsZ2VuZGUgaW5uc3RpbGxpbmdlbmUgZ2plbGRlciBiYXJlIGh2aXMgZHUgYnJ1a2VyIFNlbHZyZWdpc3RyZXJpbmcoU2VsZiBSZWdpc3RyYXRpb24pIG9nIHRpbGxhdGVyIEJldGFsdCBww6VtZWxkaW5nJzsKJGxhbmdbJ25vbmUnXSA9ICdJbmdlbic7CiRsYW5nWydkZWxldGVfdXNlciddID0gJ1NsZXR0IGJydWtlcic7CiRsYW5nWydleHBpcmVfdXNlciddID0gJ1RpZHN1dGzDuHAgYnJ1a2VyJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnXSA9ICdIYW5kbGluZyDDpSB1dGbDuHJlIG7DpXIgZW4gYWJvbm5lbWVudGJlc3RpbGxpbmcgZXIga2Fuc2VsbGVydCc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyZGVsZXRlZCddID0gJ0hhbmRsaW5nIMOlIHV0ZsO4cmUgbsOlciBlbiBhYm9ubmVtZW50b3JkcmUgZXIgc2xldHRldCc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdFY29tbWVyY2UgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydzZWN1cmVmaWVsZG1hcmtlciddID0gJ1Npa2tlcnQgZmVsdCBtYXJrw7hyJzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdTaWtrZXJ0IGZlbHQgZmFyZ2UnOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdMYWdyZSBkaXNzZSBkYXRhIGtyeXB0ZXJ0IGkgZGF0YWJhc2VuJzsKJGxhbmdbJ2Vycm9yX25vdHN1cHBvcnRlZCddID0gJ0RlbiB2YWxndGUgb3Bzam9uZW4gZXIgaWtrZSBzdMO4dHRldCBtZWQgZGluIG7DpXbDpnJlbmRlIGtvbmZpZ3VyYXNqb24nOwokbGFuZ1snYXVkaXRfdXNlcl9jcmVhdGVkJ10gPSAnQnJ1a2VyIGF1dG9tYXRpc2sgb3BwcmV0dGV0JzsKJGxhbmdbJ2luZm9fYXV0b19jcmVhdGVfdW5rbm93biddID0gJ09tIGVuIGJydWtlciBlciBpZGVudGlmaXNlcnQgYXYgZW4gZWtzdGVybiBpZGVudGlmaWthc2pvbnNtb2R1bCwgbWVuIGlra2UgZXIga2plbnQgaSBGcm9udEVuZFVzZXJzIG1vZHVsZW4gLSBza2FsIGRhIGVuIEZFVS1rb250byBvcHByZXR0ZXMgYXV0b21hdGlzaz8nOwokbGFuZ1sncHJvbXB0X2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdPcHByZXR0IGF1dG9tYXRpc2sgdWtqZW50ZSBicnVrZXJlJzsKJGxhbmdbJ2Rpc3BsYXlfc2V0dGluZ3MnXSA9ICdWaXNuaW5nc2lubnN0aWxsaW5nZXInOwokbGFuZ1snaW5mb19zdGRfYXV0aF9zZXR0aW5ncyddID0gJ0RlbiBmw7hsZ2VuZGUgaW5uc3RpbGxpbmdlbiBlciBrdW4gZ3lsZGlnIG9tICJJbm5lYnlnZCBpZGVudGlmaWthc2pvbiIgZXIgYmVueXR0ZXQuJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0dW4nXSA9ICfDhSB2ZWxnZSBOZWkgdmkgc2zDpSBhdiBtdWxpZ2hldGVuIGZvciBlbiBicnVrZXIgdGlsIMOlIGJlIG9tIGdsZW10IGlubmxvZ2dpbmdzaW5mb3JtYXNqb24sIHVhdmhlbmdpZyBhdiBhbmRyZSBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0cHcnXSA9ICfDhSB2ZWxnZSBOZWkgdmlsIHNsw6UgYXYgbXVsaWdoZXRlbiBmb3IgZW4gYnJ1a2VyIHRpbCDDpSBiZSBvbSB0aWxiYWtlc3RpbGxpbmcgYXYgcGFzc29yZCwgdWF2aGVuZ2lnIGF2IGFuZHJlIGlubnN0aWxsaW5nZXInOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHVuJ10gPSAnVGlsbGF0IGJydWtlcmUgw6UgYmUgb20gc2l0dCBicnVrZXJuYXZuJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3RwdyddID0gJ1RpbGxhdCBicnVrZXJlIMOlIGJlIG9tIHBhc3NvcmRlbmRyaW5nJzsKJGxhbmdbJ2F1dGhfc2V0dGluZ3MnXSA9ICdJZGVudGlmaWthc2pvbnNpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ2F1dGhlbnRpY2F0aW9uJ10gPSAnSW5uZWJ5Z2QgaWRlbnRpZmlrYXNqb24nOwokbGFuZ1snYXV0aF9idWlsdGluJ10gPSAnRkVVIFN0YW5kYXJkIGlkZW50aWZpa2Fzam9uJzsKJGxhbmdbJ2F1dGhfbW9kdWxlJ10gPSAnSWRlbnRpZmlrYXNqb25zbW9kdWwvbWV0b2RlJzsKJGxhbmdbJ2luZm9fYXV0aF9tb2R1bGUnXSA9ICdGcm9udGVuZFVzZXJzIG1vZHVsZW4gc3TDuHR0ZXIgc3TDuHR0ZXIgYnJ1ayBhbHRlcm5hdGl2ZSBtZXRvZGVyIGZvciBpZGVudGlmaWthc2pvbiwgbWVkIHZhcmllcmVuZGUgZnVua3Nqb25lci4gTm9lIGZ1bmtzam9uYWxpdGV0IHZpbCBpa2tlIGZ1bmdlcmUgZWxsZXIgdmlsIHbDpnJlIGRlYWt0aXZlcnQgbsOlciBpa2tlIGRlbiBpbm5lYnlnZGUgaWRlbnRpZmlrYXNqb25zbWV0b2RlIGVyIGkgYnJ1ayc7CiRsYW5nWydlcnJvcl91c2VyX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ1ZlcmRpZW4gb3BwZ2l0dCBmb3IgJXMgZXIgYWxsZXJlZGUgaSBicnVrIGF2IGVuIGFubmVuIGJydWtlcic7CiRsYW5nWyd1bmlxdWUnXSA9ICdVbmlrJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ1ZlcmRpZW4gc29tIGVyIG9wcGdpdHQgZm9yICVzICglcykgZXIgaWtrZSB1bmlrJzsKJGxhbmdbJ3Byb21wdF9mb3JjZV91bmlxdWUnXSA9ICdUdmluZyB2ZXJkaWVyIGZvciBkZW5uZSBlZ2Vuc2thcGVuIHRpbCDDpSB1bmlrIHDDpSB0dmVycyBhdiBhbGxlIGtvbnRvZXInOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnT20gYmVueXR0ZXQgbWVkIGlubmxvZ2dpbmctIG9nIHV0bG9nZ2luZy1za2plbWFlbmUgdmlsIGRlbm5lIHBhcmFtZXRlciwgb20gZGVuIGVyIHNwZXNpZmlzZXJ0LCBpbmRpa2VyZSBhdCBicnVrZXJlbiBza2FsIHNlbmRlcyB0aWxiYWtlIHRpbCBzaWRlbiAoZXR0ZXIgdXJsKSBzb20gYnJ1a2VyZW4gdmFyIHDDpSBmw7hyIGhhbmRsaW5nZW4gaGVuZHRlLiBEZW5uZSBwYXJhbWV0ZXIgdmlsIG92ZXJzdHlyZSBvbWRpcmlnZXJpbmcgcHJlZmVyYW5zZW5lLCBvZyByZXR1cm50byBwYXJhbWV0ZXJlbi4nOwokbGFuZ1sndGl0bGVfcmVzZXRfc2Vzc2lvbiddID0gJ0lubmxvZ2dpbmdzIHNlc3Npb25zdGlkc3V0bMO4cHNhZHZhcnNlbCc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ0RpbiBpbm5sb2dnaW5nc2Vzc2lvbiBlciBpIGZlcmQgbWVkIMOlIHV0bMO4cGUsIHZlbm5saWdzdCBrbGlrayAgT0sgIGZvciDDpSBiZWtyZWZ0ZSBkaW4gdGlsc3RlZGV2w6ZyZWxzZSBww6UgZGV0dGUgbmV0dHN0ZWRldC4nOwokbGFuZ1snb2snXSA9ICdPSyc7CiRsYW5nWydyZXNldHNlc3Npb25fdGVtcGxhdGUnXSA9ICdUaWxiYWtlc3RpbGwgc2Vzc2lvbnNtYWxlbic7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdEZXR0ZSBlciBmZWx0bmF2bmV0LCBzb20gc2thbCBiZW55dHRlcyBmb3IgYWRyZXNzZXJpbmcgaSBzbWFydHkuIERldCBtw6UgYmVzdMOlIGF2IGt1biBhbGZhbnVtbWVyaXNrZSBib2tzdGF2ZXIgb2cgdW5kZXJzdHJla2VyLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdCZXPDuGtlcmUnOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdWZWxnIGVuIGVsbGVyIGZsZXJlIEZFVS1ncnVwcGVyIHNvbSBlciB0aWxsYXR0IMOlIHNlIGRlbm5lIHNpZGVuJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdFbiBncnVwcGUgbcOlIHZlbGdlcyc7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdWZWxnIGVuJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdTdGFydMOlcic7CiRsYW5nWydlbmRfeWVhciddID0gJ1NsdXR0w6VyJzsKJGxhbmdbJ2RhdGUnXSA9ICdEYXRvJzsKJGxhbmdbJ3Byb21wdF90aHVtYm5haWxfc2l6ZSddID0gJ01pbmlhdHlyYmlsZGVzdMO4cnJlbHNlJzsKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdWZWQgZW5kcmluZyBhdiBCcnVrZXJncnVwcGUoVXNlciBHcm91cCknOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnRm9yIG1hbmdlIGJydWtlcmUgYmxlIHZhbGd0IGZvciBtYXNzZS1oYW5kbGluZ2VyLi4uLiBWZW5ubGlnc3QgcmVkdXNlciBuZWQgdGlsIDI1MCBlbGxlciBtaW5kcmUnOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdFciBkdSBzaWtrZXIgcMOlIGF0IGR1IHZpbCBzbGV0dGUgZGUgdmFsZ3RlIGJydWtlcm5lPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdTbGV0dGluZyB2YWxndCc7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmVyIGV0IHRpbGZlbGRpZyBicnVrZW5hdm4gdmVkIG9wcHJldHRlbHNlIGF2IG55ZSBicnVrZXJlJzsKJGxhbmdbJ21vbnRocyddID0gJ23DpW5lZGVyJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdTdGFuZGFyZCBicnVrZXIgdXRsw7hwc3RpZCc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdWYXJzbGluZyBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnRWdlbnNrYXAgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ09tZGlyaWdlcmluZyBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lcmVsbGUgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnU2Vzc2lvbiBvZyBjb29raWUgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ0ZlbHQgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdUaWxsYXQgYnJ1ayBhdiB3eXNpd3lnIHDDpSBkZXR0ZSB0ZWtzdG9tcsOlZGV0JzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ1JlZGlnZXIgYnJ1a2VyJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnSWtrZSBicnVrIHNramVtYSBzb20gaW5saW5lJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnS2xpa2sgaGVyIG9tIGR1IGlra2Uga2FuIGh1c2tlIGRpbmUgaW5ubG9nZ2luZ3NkZXRhbGplcic7CiRsYW5nWydpbmZvX2ZvcmdvdHB3J10gPSAnS2xpa2sgaGVyIG9tIGR1IGlra2Uga2FuIGh1c2tlIGRpdHQgcGFzc29yZCc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0tsaWtrIGhlciBmb3Igw6UgbG9nZ2UgdXQnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ0tsaWtrIGhlciBmb3Igw6UgZW5kcmUgZGl0dCBwYXNzb3JkIGVsbGVyIGFubmVuIGluZm9ybWFzam9uJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnVmlzIGJydWtlciBtYWwnOwokbGFuZ1snZXZlbnQnXSA9ICdIZW5kZWxzZSc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnRkVVIEhlbmRlbHNlIHZhcnNlbCc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX2FkZHJlc3MnXSA9ICdWYXJzZWwgZS1wb3N0YWRyZXNzZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnVmFyc2xpbmcgRS1wb3N0bWFsJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCddID0gJ1ZhcnNsaW5nIEUtcG9zdGVtbmUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdFLXBvc3R2YXJzbGluZyc7CiRsYW5nWydPbkxvZ2luJ10gPSAnVmVkIGlubmxvZ2dpbmcnOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdWZWQgdXRsb2dnaW5nJzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ1ZlZCB1dGzDuHAgYXYgc2Vzc2lvbic7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdWZWQgQnJ1a2VyIG9wcHJldHRldCc7CiRsYW5nWydPbkRlbGV0ZVVzZXInXSA9ICdWZWQgQnJ1a2VyIHNsZXR0ZXQnOwokbGFuZ1snT25VcGRhdGVVc2VyJ10gPSAnVmVkIGVuZHJpbmcgYXYgYnJ1a2VyaW5uc3RpbGxpbmdlcic7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnVmVkIG9wcHJldHRlbHNlIGF2IGJydWtlcmdydXBwZSc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnVmVkIHNsZXR0aW5nIGF2IGJydWtlcmdydXBwZSc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ0Z1bmtzam9uZW4gZm9yIG1pc3RldCBpbm5sb2dnaW5nc2RldGFsamVyIGVyIGZ1bGxmw7hydC4gVmkgaGFyIGZ1bm5ldCBldCB1bmlrdCBicnVrZXJuYXZuIHNvbSBwYXNzZXIgdGlsIGRlIGRldGFsamVuZSBkdSBoYXIgb3BwZ2l0dC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ0RpdHQgYnJ1a2VybmF2biBlcic7CiRsYW5nWydsb3N0dW5jb25maXJtX3Bvc3Rtc2cnXSA9ICdWaSBhbmJlZmFsZXIgYXQgZHUgdGFyIHZhcmUgcMOlIGRlbm5lIGluZm9ybWFzam9uZW4gcMOlIGVuIHNpa2tlciwgbWVuIHRpbGdqZW5nZWxpZyBwbGFzcy4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyDDpSBob3BwZSB0aWwgZXR0ZXIgZW5kcmluZyBhdiBpbm5zdGlsbGluZ2VyJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ1BhZ2VJRC9BbGlhcyDDpSBob3BwZSB0aWwgZXR0ZXIga29kZSBiZWtyZWZ0ZWxzZSAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnR2xlbXQgQnJ1a2VybmF2biBkZXRhbGptYWwnOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdHbGVtdCBCcnVrZXJuYXZuIGJla3JlZnRlbHNlc21hbCc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0ZlaWw6IE1lcmUgZW5uIGVuIGJydWtlcmtvbnRvIHBhc3NlciBtZWQgZGUgc3Blc2lmaXNlcnRlIGVnZW5za2FwZXInOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnRmVpbDogS3VubmUgaWtrZSBmaW5uZSBlbiBicnVrZXIgc29tIHBhc3Nlcic7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnRmVpbDogS3VubmUgaWtrZSBmaW5uZSBlbiBncnVwcGUgbWVkIGRldCBuYXZuZXQnOwokbGFuZ1sncmVhZG9ubHknXSA9ICdTa3JpdmViZXNreXR0ZXQnOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ0JydWtlciBNYW5pcHVsYXRvciBLbGFzc2UnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnTG9nZ2V0IHV0IGF2IGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ1ZpcyBrdW4gZGUgc29tIGVyIGlubmxvZ2dldCc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnTG9nZyB1dCBkZW5uZSBicnVrZXJlbic7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdCcnVrZXIgZWdlbnNrYXBlcic7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0JydWtlciBoaXN0b3JpZSc7CiRsYW5nWydleHBvcnQnXSA9ICdFa3Nwb3J0ZXInOwokbGFuZ1snY2xlYXInXSA9ICdUw7htJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0Vrc3BvcnRlciBCcnVrZXJoaXN0b3JpZSB0aWwgQVNDSUkgZmlsIHNvbSBlciBtaW5zdCc7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ1TDuG0gQnJ1a2VyaGlzdG9yaWUgb3BwZsO4cmluZ2VyIHNvbSBlciBtaW5zdCc7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICdHbGVtdCBkaW5lIGlubmxvZ2dpbmdzZGV0YWxqZXI/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0Vrc3BvcnRlciBncnVwcGVkZWZpbmlzam9uIChvZyBlZ2Vuc2thcGVyKSB0aWwgWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdCZWhhbmRsZSBCcnVrZXJoaXN0b3JpZSc7CiRsYW5nWyd5ZXMnXSA9ICdKYSc7CiRsYW5nWydubyddID0gJ05laSc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICdhdic7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBJbmdlbiBncmVuc2UgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnRW4gdGltZSBnYW1sZSc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdTZWtzIHRpbWVyIGdhbWxlJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJ1RvbHYgdGltZXIgZ2FtbGUnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdFbiBkYWcgZ2FtbGUnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnRW4gdWtlIGdhbWxlJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdUbyB1a2VyIGdhbWxlJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdFbiBtw6VuZWQgZ2FtbGUnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ1RyZSBtw6VuZWRlciBnYW1sZSc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ1Nla3MgbcOlbmVkZXIgZ2FtbGUnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnRXR0IMOlciBnYW1sZSc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdHcnVwcGVyaW5nIG9nIFNvcnRlcmluZyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnT3BwZsO4cmluZ2VyIHNvbSBwYXNzZXIga3JpdGVyaWV0JzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnU3lua2VuZGUgYnJ1a2VybmF2bic7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnU3RpZ2VuZGUgYnJ1a2VybmF2bic7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnU3lua2VuZGUgRGF0byc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdTdGlnZW5kZSBEYXRvJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1N5bmtlbmRlIEhlbmRlbHNlc3R5cGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdTdGlnZW5kZSBIZW5kZWxzZXN0eXBlJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ1N5bmtlbmRlIElQLWFkcmVzc2UnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdTdGlnZW5kZSBJUC1hZHJlc3NlJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdJa2tlIG5vZSBoaXN0b3Jpc2sgZnVubmV0JzsKJGxhbmdbJ3Jlc2V0J10gPSAnVGlsYmFrZXN0aWxsJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dydXBwZXIgZXR0ZXIgSVAtYWRyZXNzZSc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0hlbmRlbHNlc3R5cGUgRmlsdGVyJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1ZpcyBrdW4gaGVuZGVsc2VyIHNvbSBlciBtaW5kcmUgZW5uOic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnU2lkZWdyZW5zZSc7CiRsYW5nWydmb3InXSA9ICdmb3InOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdCcnVrZXJoaXN0b3JpZSByYXBwb3J0JzsKJGxhbmdbJ3Vua25vd24nXSA9ICdVa2plbnQnOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQLWFkcmVzc2UnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ0hlbmRlbHNlc3R5cGUnOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXRvJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdUaWxiYWtlJzsKJGxhbmdbJ2ltcG9ydF9jb21wbGV0ZV9tc2cnXSA9ICdJbXBvcnQgb3BwZ2F2ZW4gZXIgZmVyZGlnJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ0xpbmplciBwcm9zZXNzZXJ0JzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdEZXQgb3Bwc3RvZCBmZWlsJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzYWRkZWQnXSA9ICdQb3N0ZXIgbGFndCB0aWwnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ0t1bm5lIGlra2UgZmlubmUgZWdlbnNrYXBlciBmb3IgZ3J1cHBlICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnRmlrayBpbmdlbiByZXNwb25zIGZyYSBTTVRQIHNlcnZlcmVuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ1NwZXNpZmlzZXJ0ZSBmaWxlciAoJXMpIGJsZSBpa2tlIGZ1bm5ldCc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJ10gPSAnVWd5bGRpZyB2ZXJkaSBmb3IgbmVkdHJla2sgZWxsZXIgZmxlcnZhbGdzZmVsdCAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ0ZlbHQgJXMgb3ZlcnNrcmlkZXIgbWFrc2ltdW0gbGVuZ2RlJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0IEZlaWwgKGxpbmplICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ0t1bm5lIGlra2UgZsOlIHRhayBpIGVnZW5za2FwIGRlZmluaXNqb25lbmUgKGludGVybiBmZWlsKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdQcm9ibGVtIG1lZCDDpSBzZXR0ZSBicnVrZXJpbmZvJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHJlcXVpcmVkZmllbGQnXSA9ICdLdW5uZSBpa2tlIGZpbm5lIGVuIGtvbG9ubmUgc29tIHNhbXN2YXJ0ZSBtZWQgZGV0IHDDpWtyZXZkZSBmZWx0ZXQgJWVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnS3VubmUgaWtrZSBmaW5uZSBlZ2Vuc2thcGVyIGZvciBkZW4gc3Blc2lmaXNlcnRlIGdydXBwZW4nOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ0ZpbGVuIG9wcGdpdHQgZm9yIGltcG9ydCBlciBpa2tlIGkga29ycmVrdCBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ0t1bm5lIGlra2Ugw6VwbmUgZmlsZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydGRlc3Rncm91cCddID0gJ0ltcG9ydGVyIEJydWtlcmUgdGlsIGRlbm5lIGdydXBwZW4nOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnSW5uZGF0YSBDU1YgZmlsJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnSW5uZGF0YSBYTUwgZmlsJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0Vrc3BvcnRlciBCcnVrZXJlJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ0ltcG9ydGVyIEJydWtlcmUnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnVMO4bSc7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0JpbGRlIG3DpWxzdGknOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdFdCBwcm9ibGVtIGhhciBvcHBzdMOldHQgbWVkIGVuIG1hbmdsZW5kZSAobWVuIG7DuGR2ZW5kaWcpIG9wcGxhc3RpbmcnOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ0t1bm5lIGlra2UgYmVoYW5kbGUgZGVuIHRpbGJ1ZHRlIFhNTCBmaWxlbic7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnS2FuIGlra2Ugc2xldHRlIGVuIGdydXBwZSBzb20gZm9ydHNhdHQgaGFyIGJydWtlcmUnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ0Rlbm5lIGJydWtlcmVuIGVyIGFsbGVyZWRlIGlubmxvZ2dldCc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdUZWtzdGVuIGZyYSBiaWxkZXQgYmxlIGlra2Ugc2tyZXZldCByaWt0aWcnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1RpbGxhdGVyIGJydWtlcmUgw6UgbG9nZ2UgaW5uIG1lciBlbiBlbiBnYW5nJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnXSA9ICdCaWxkZSBmaWxlbmRlbHNlciBzb20gYnJ1a2VyZSBmw6VyIGxvdiDDpSBsYXN0ZSBvcHAnOwokbGFuZ1snZXZlbnRfaGVscF9PblJlZnJlc2hVc2VyJ10gPSAnPGgzPk9uUmVmcmVzaFVzZXI8L2gzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gdGhlIHVzZXIgc2Vzc2lvbiBpcyByZWZyZXNoZWQuPC9wPg0KPGg0PlBhcmFtZXRlcnM6PC9oND4NCjx1bD4NCiAgPGxpPjxlbT5pZDwvZW0+IC0gVGhlIFVzZXIgaWQ8L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+RW4gaGVuZGVsc2UvZXZlbnQgZ2VuZXJlcnQgbsOlciBlbiBicnVrZXIgc2xldHRlczwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIEJydWtlcm5hdm5ldDwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBCcnVrZXIgSURlbjwvbGk+DQo8bGk+PGVtPnByb3BzPC9lbT4gLSBFbiBoYXNoIGZ5bHQgbWVkIGVnZW5za2FwZW5lIHRpbCBicnVrZXJlbjwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5FbiBoZW5kZWxzZS9ldmVudCBnZW5lcmVydCBuw6VyIGVuIGJydWtlciBvcHByZXR0ZXM8L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIEJydWtlcm5hdm5ldDwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBCcnVrZXIgSURlbjwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5FbiBoZW5kZWxzZSBnZW5lcmVydCBuw6VyIGVuIGJydWtlciBlciBvcHBkYXRlcnQgKGVudGVuIGF2IGJydWtlcmVuIHNlbHYgZWxsZXIgYXYgYWRtaW4pPC9wPg0KPGg0PlBhcmFtZXRlcmU8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBCcnVrZXJuYXZuZXQ8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gQnJ1a2VySURcJ2VuPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+RW4gaGVuZGVsc2UvZXZlbnQgZ2VuZXJlcnQgbsOlciBlbiBncnVwcGUgZXIgb3BwcmV0dGV0PC9wPg0KPGg0PlBhcmFtZXRlcmU8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBHcnVwcGVuYXZuZXQ8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gR3J1cHBlYmVza3JpdmVsc2VuPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEdydXBwZSBJRGVuPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+RW4gaGVuZGVsc2UvZXZlbnQgZ2VuZXJlcnQgbsOlciBlbiBncnVwcGUgZXIgc2xldHRldDwvcD4NCjxoND5QYXJhbWV0ZXJlPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gR3J1cHBlbmF2bmV0PC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEdydXBwZSBJRGVuPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJzxoMz5PbkxvZ2luPGgzPg0KPHA+RW4gaGVuZGVsc2UvZXZlbnQgZ2VuZXJlcnQgbsOlciBlbiBicnVrZXIgbG9nZ2VyIHNlZyBpbm48L3A+DQo8aDQ+UGFyYW1ldGVyZTwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBpZFwnZW4gZm9yIGRlbiBpbm5sb2dnZWRlIGJydWtlcjwvbGk+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBOYXZuZXQgcMOlIGJydWtlcmVuIHNvbSBlciBsb2dnZXQgaW5uPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFdlYmtsaWVudGVucyBJUCBhZHJlc3NlIDwvbGk+DQo8L3VsPic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPHA+RW4gaGVuZGVsc2UvZXZlbnQgZ2VuZXJlcnQgbsOlciBlbiBicnVrZXIgbG9nZ2VyIHV0PC9wPg0KPGg0PlBhcmFtZXRlcmU8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gQnJ1a2VyIElEZW48L2xpPg0KPC91bD4nOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8cD5FbiBoZW5kZWxzZS9ldmVudCBnZW5lcmVydCBuw6VyIGVuIGJydWtlcnNlc3Npb24gdXRsw7hwZXI8L3A+DQo8aDQ+UGFyYW1ldGVyZWg0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gTmF2bmV0IHDDpSBicnVrZXJlbiBzb20gdXRsw7hwPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIEJydWtlciBJRGVuIHRpbCBicnVrZXJlbiBzb20gdXRsw7hwPC9saT4NCjwvdWw+JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0VuIGhlbmRlbHNlIHNvbSBnZW5lcmVyZXMgbsOlciBlbiBicnVrZXIgbG9nZ2VyIHNlZyBpbm4gaSBzeXN0ZW1ldCc7CiRsYW5nWydldmVudF9pbmZvX09uTG9nb3V0J10gPSAnRW4gaGVuZGVsc2Ugc29tIGdlbmVyZXJlcyBuw6VyIGVuIGJydWtlciBsb2dnZXIgc2VnIHV0IGF2IHN5c3RlbWV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnRW4gaGVuZGVsc2Ugc29tIGdlbmVyZXJlcyBuw6VyIGVuIGJydWtlci1zZXNzaW9uIGhhciB1dGzDuHB0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnRW4gaGVuZGVsc2UgZ2VuZXJlcnQgbsOlciBlbiBicnVrZXIgZXIgb3BwcmV0dGV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25SZWZyZXNoVXNlciddID0gJ0VuIGhlbmRlbHNlIHNvbSBnZW5lcmVyZXMgbsOlciBlbiBicnVrZXItc2Vzc2lvbiBlciBvcHBmcmlza2V0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnRW4gaGVuZGVsc2UgZ2VuZXJlcnQgbsOlciBlbiBicnVrZXJzIGluZm8gZXIgb3BwZGF0ZXJ0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnRW4gaGVuZGVsc2UgZ2VuZXJlcnQgbsOlciBlbiBicnVrZXJrb250byBlciBzbGV0dGV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0VuIGhlbmRlbHNlIGdlbmVyZXJ0IG7DpXIgZW4gYnJ1a2VyZ3J1cHBlIGVyIG9wcHJldHRldCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdFbiBoZW5kZWxzZSBnZW5lcmVydCBuw6VyIGVuIGJydWtlcmdydXBwZSBlciBvcHBkYXRlcnQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZUdyb3VwJ10gPSAnRW4gaGVuZGVsc2UgZ2VuZXJlcnQgbsOlciBlbiBicnVrZXJncnVwcGUgZXIgc2xldHRldCc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQmFja2VuZCBncnVwcGUnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBGw7hsZ2VuZGUgZmVsdCBlciBmdWxsc3RlbmRpZ2UgU21hcnR5bWFsZXIuPGJyLz5TYW1tZW4gbWVkIGFuZHJlIHRpZGxpZ2VyZSBla3Npc3RlcmVuZGUgc21hcnR5IHZhcmlhYmxlciBvZyBwbHVnaW5zLCBzw6UgZXIgKCR1c2VybmFtZSkgb2cgKCQgZ3J1cHBlKSB2YXJpYWJsZW5lIHRpbGdqZW5nZWxpZ2UuIDxlbT4gKCgkZ3JvdXApLXZhcmlhYmxlbiBrb2JsZXIgZGVuIGbDuHJzdGUgZ3J1cHBlbiB0aWwgZGVuIHNvbSBicnVrZXJlbiB0aWxow7hyZXIuKTwvIGVtPi4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ1JlZGlnZXIgZGV0dGUgZmVsdGV0IGZvciDDpSBlbmRyZSBicnVrZXJlbnMgcGFzc29yZCc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnUmVkaWdlciBkZXR0ZSBmZWx0ZXQgZm9yIMOlIGVuZHJlIGJydWtlcmVucyBwYXNzb3JkJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ0VuIGJydWtlciBtZWQgc2FtbWUgYnJ1a2VybmF2biBmaW5uZXMgYWxsZXJlZGUnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnSW5nZW4gcmVzdWx0YXRlciBmcmEgY3N2IGVrc3BvcnRlbic7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdMZW5nZGVuIHDDpSBicnVrZXJuYXZuZmVsdGV0JzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0xlbmdkZW4gcMOlIHBhc3NvcmRmZWx0ZXQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ01pbi9NYWtzIGxlbmdkZSBww6UgcGFzc29yZGV0IGVyIHVneWxkaWcnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9NYWtzIGxlbmdkZSBww6UgYnJ1a2VybmF2biBlciB1Z3lsZGlnJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdVZ3lsZGlnIGUtcG9zdGFkcmVzc2UnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdWaSBrdW5uZSBpa2tlIGZpbm5lIGVuIGUtcG9zdGFkcmVzc2UgZm9yIGRlbm5lIGtvbnRvZW4nOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ0thbiBpa2tlIGxhZ3JlIGJydWtlcmluZm9ybWFzam9uZW4nOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnS2FuIGlra2UgbGFncmUgZWdlbnNrYXBlbic7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnQnJ1a2VyIGxhZ3QgdGlsICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnQnJ1a2VyIHNsZXR0ZXQgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnRWdlbnNrYXBlcic7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVmVyZGkgKHJlZ3VsYXIgZXhwcmVzc2lvbiknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdBZHZhcnNlbDogRGlzc2UgZmVsdGVuZSBww6V2aXJrZXIgc3TDuHJyZWxzZW4gcMOlIGlubmRhdGFmZWx0ZW5lIGkgc2tqZW1hZXIuIMOFIG1pbnNrZSBkaXNzZSB2ZXJkaWVuZSBww6UgZXQgZWtzaXN0ZXJlbmRlIG5ldHRzdGVkIGVyIGlra2Ugw6UgYW5iZWZhbGUnOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0VyIGR1IHNpa2tlciBww6UgYXQgZHUgdmlsIGVuZHJlIGRlbm5lIG1vZHVsZW5zIGlubnN0aWxsaW5nZXI/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFLXBvc3RhZHJlc3NlbiBlciBhbGxlcmVkZSBpIGJydWsnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnQnJ1ayBpbmZvcm1hc2pvbnNrYXBzbGVyKGNvb2tpZXMpIGZvciDDpSBodXNrZSBpbm5sb2dnaW5nc2RldGFsamVyJzsKJGxhbmdbJ3Byb21wdF9jb29raWVuYW1lJ10gPSAnTmF2bmV0IHDDpSBpbmZvcm1hc2pvbnNrYXBzZWxlbihjb29raWUpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnVGlsbGF0IGlkZW50aXNrZSBlLXBvc3RhZHJlc3Nlcic7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdFLXBvc3RhZHJlc3NlIGVyIGJydWtlcm5hdm4nOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnRm9yc8O4ayDDpSBob2xkZSBpbm5sb2dnaW5nZW4gdmVkIGxpdmUgdmVkIMOlIGJlbnl0dGUgZW4gaW5mb3JtYXNqb25za2Fwc2VsIDxlbT5pbmZvcm1hc2pvbnNrYXBzZWxlbiB2aWwgYmxpIHRpbGJha2VzYXR0IG7DpXIgZHUgZXIgYWt0aXYgcMOlIG5ldHRzdGVkZXQpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKHRpbGxhdCBmbGVyZSBicnVrZXJlIG1lZCBzYW1tZSBlLXBvc3RhZHJlc3NlKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKGJydWtlcnMgZS1wb3N0YWRyZXNzZSBlciBkZXJlcyBicnVrZXJuYXZuIC0tIGlra2Ugc2V0dCBkZXR0ZSBzYW1tZW4gbWVkICJUaWxsYXQgaWRlbnRpc2tlIGUtcG9zdGFkcmVzc2VyIiEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnVGlsbGF0IGZsZXJlICJnbGVtdCBwYXNzb3JkIiBww6VtaW5uZWxzZXI/JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJyh0aWxsYXQgYXQgZW4gYnJ1a2VyIGJlciBvbSBudWxsc3RpbGxpbmcgYXYgcGFzc29yZGV0LCBzZWx2IG9tIGRlIGlra2UgaGFyIGJlbnl0dGV0IGRldCBmb3JyaWdlKSc7CiRsYW5nWydwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJ0Jlbnl0dCBGcm9udC1lbmQgVXNlciBzcGVzaWZpa2UgdGlsbGF0ZWxzZXI/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWx0IGVyLCBGRVVzZXIgdGlsbGF0ZWxzZXIgZGUgc2FtbWUgc29tIHRpbHN2YXJlbmRlIEFkbWluLW9tcsOlZGUgdGlsbGF0ZWxzZXIgLSBMZWdnIHRpbCBicnVrZXIsIExlZ2cgdGlsIGdydXBwZSwgb3N2LiBPbSBkdSBoYWtlciBhdiBoZXIsIHZpbCBkZXQgdsOmcmUgYWRza2lsdGUvZWduZSB0aWxsYXRlbHNlciBmb3IgRkVVc2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdLbGFydGUgaWtrZSDDpSBmaW5uZSBkZW4gb3BwbGFzdGVkZSBmaWxhIChpbnRlcm4gZmVpbCknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdEZXQgZXIgZXQgcHJvYmxlbSBtZWQgZGluIG9wcGxhc3RlZGUgZmlsLiBWZW5ubGlnc3QgZm9yc8O4ayBww6Ugbnl0dCc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdEdSBvcHBnYSBpa2tlIGJydWtlcm5hdm4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ2VtYWlsJ10gPSAnRHUgb3BwZ2EgaWtrZSBlbiBlLXBvc3RhZHJlc3NlJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ0R1IG9wcGdhIGlra2UgcGFzc29yZCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmQgYnJ1a2VyIHV0bG9nZ2luZyc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdGcm9udGVuZCBicnVrZXIgaW5ubG9nZ2luZyc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9InJlZCI+PGI+VsOGUiBWQVJTT008L2I+IG7DpXIgZWtzaXN0ZXJlbmRlIGVnZW5za2FwZXIgc29tIGVyIHRpbGVnbmV0IGdydXBwZXIgZm9yYW5kcmVzLCBkdSBrYW4ga29tbWUgaSBza2FkZSBmb3Igw6Ugw7hkZWxlZ2dlIG5vZSBvZyBkZXJtZWQgbmV0dHN0ZWRldCA8aT4oc3Blc2llbHQgaHZpcyBkdSBtaW5za2VyIGZlbHRsZW5nZGVyLCBldGMpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdEZW5uZSBmdW5rc2pvbmVuIHZpcmtlciBpa2tlIGkgV2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnSWtrZSBvcHByZXR0IGVnZW5za2FwZXIgZm9yIGJydWtlcm5hdm4gZWxsZXIgcGFzc29yZCBkYSBkaXNzZSBlZ2Vuc2thcGVuZSBlciBpbm5lYnlnZ2V0IGkgc2VsdmUgRnJvbnRFbmRVc2VyIG1vZHVsZW4uJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRjc3YnXSA9ICdFa3Nwb3J0ZXIgYnJ1a2VyZSB0aWwgQ1NWJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0Vrc3BvcnRlcic7CiRsYW5nWydpbXBvcnRjc3YnXSA9ICdJbXBvcnRlcic7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnUmVkaWdlciBlZ2Vuc2thcCc7CiRsYW5nWydtYXhsZW5ndGgnXSA9ICdNYWtzIGxlbmdkZSc7CiRsYW5nWydjcmVhdGVkJ10gPSAnT3BwcmV0dGV0JzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnRlciBldHRlcic7CiRsYW5nWydzb3J0J10gPSAnU29ydGVyZXInOwokbGFuZ1sndXNlcnNpbmdyb3VwJ10gPSAnQnJ1a2VyZSBpIHZhbGd0KGUpIGdydXBwZShyKSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdCZWdyZW5zIHJlc3VsdGF0ZW5lIHRpbCc7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdLdW5uZSBpa2tlIGZpbm5lIGV0IGUtcG9zdGZlbHQgZm9yIGRlbm5lIGJydWtlcmVuLiBEdSBtw6Uga2Fuc2tqZSBrb250YWt0ZSBzeXN0ZW1hZG1pbmlzdHJhdG9yZW4nOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdTaWRlSUQvQWxpYXMgZm9yIHNramVtYWV0IEdsZW10IHBhc3NvcmQnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdTaWRlSUQvQWxpYXMgZm9yIHNramVtYWV0IEVuZHJlIGlubnN0aWxsaW5nZXInOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdTaWRlSUQvQWxpYXMgZGV0IHNrYWwgaG9wcGVzIHRpbCBldHRlciBpbm5sb2dnaW5nIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnU2lkZUlEL0FsaWFzIGRldCBza2FsIGhvcHBlcyB0aWwgZXR0ZXIgdXRsb2dnaW5nIConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU29ydGVyaW5nc3Jla2tlZsO4bGdlJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ05vZW4gYnJ1a2VyZSBob2xkZXIgcMOlIMOlIHRpbGJha2VzdGlsbGUgc2luZSB0YXB0ZSBwYXNzb3JkLiBOw6UgZXIgZGV0dGUgYW50YWxsZXQ6JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnRmplcm4gYWxsZSBpbm5sZWdnIHNvbSBlciBtZXIgZW5uIGVuIHVrZSBnYW1sZSc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdGamVybiBhbGxlIGlubmxlZ2cgc29tIGVyIG1lciBlbm4gZW4gbcOlbmVkIGdhbWxlJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ0ZqZXJuIGFsbGUgaW5ubGVnZyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnRXIgZHUgc2lra2VyPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ0VuIHVneWxkaWcga29kZSBlciBsYWd0IGlubiwgdmVubmxpZ3N0IHByw7h2IGlnamVuLic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnRW4gbWlkbGVydGlkaWcga29kZSBmb3IgZGluIGJydWtlcklEIGJsZSBpa2tlIGZ1bm5ldCBpIGRhdGFiYXNlbic7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ01hbCBzb20gYmVueXR0ZXMgZm9yIMOlIHZpc2UgdmVyaWZpa2Fzam9uc3NramVtYWV0JzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdNYWwgc29tIGJlbnl0dGVzIHDDpSBnbGVtdCBwYXNzb3JkIGVwc290ZW4nOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ0VuZHJpbmcgYXYgcGFzc29yZCBmb3IgZGVubmUga29udG9lbiBlciBhbGxlcmVkZSBzYXR0IGkgZ2FuZyBhdiBkZWcgZWxsZXIgbm9lbiBhbm5lbi4gU2pla2sgZS1wb3N0ZW4gZGluLCBkdSBrYW4gaGEgbW90dGF0dCB2aWRlcmUgaW5zdHJ1a3Nqb25lciBvbSBodm9yZGFuIGRldHRlIHNrYWwgZ2plbm5vbWbDuHJlcy4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0RhdGFiYXNlIGZlaWwnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnRHUgZsOlciBkZW5uZSBtZWxkaW5nZW4gZm9yZGkgbm9lbiBoYXIgZm9ydGFsdCB2w6VyIG5ldHRzaWRlIGF0IGR1IGhhciBtaXN0ZXQgZGl0dCBwYXNzb3JkLiAgT20gZGV0dGUgZXIga29ycmVrdCwgbGVzIGluc3RydWtzam9uZW5lIG5lZGVuZm9yLiAgT20gZHUgaWtrZSBza2rDuG5uZXIgaHZhIGRldHRlIGthbiB2w6ZyZSwgc8OlIGthbiBkdSB0cnlndCBzbGV0dGUgZGVubmUgbWVsZGluZ2VuLCBvZyB2aSB0YWtrZXIgZm9yIGRpbiBvcHBtZXJrc29taGV0Lic7CiRsYW5nWydwcm9tcHRfY29kZSddID0gJ0tvZGUnOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnRGVuIGbDuGxnZW5kZSBrb2RlIGhhciBibGl0dCBnZW5lcmVydCB0aWxmZWxkaWcgZm9yIMOlIGdqZW5ramVubmUgYnJ1a2Vya29udG9lbi4gIG7DpXIgZHUga2xpa2tlciBsaW5rZW4gbmVkZW5mb3IgdmlsIGR1IGbDpSBvcHAgZXQgZmVsdCBmb3Igw6Ugc2tyaXZlIGlubiBkZW5uZSBrb2Rlbi4gIE5vcm1hbCBlciBmZWx0ZXQgZm9yaMOlbmRzdXRmeWx0IGZvciBkZWcsIG1lbiBpIHRpbGZlbGxlIGRldCBpa2tlIGVyIC0gc8OlIGVyIGtvZGVuOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0h2aXMgZHUga2xpa2tlciBww6UgbGlua2VuIHNvbSBmw7hsZ2VyIHZpbCBkdSBibGkgZsO4cnQgdGlsIGVuIG5ldHRzaWRlIGh2b3IgZHUga2FuIGxlZ2dlIGlubiB2ZWRsYWd0ZSBrb2RlIG9nIGxlZ2dlIGlubiBueXR0IHBhc3NvcmQuJzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdHbGVtdCBwYXNzb3JkJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnS3VubmUgaWtrZSBmaW5uZSBDTVNNYWlsZXIgbW9kdWxlbic7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdFbiBlLXBvc3QgZXIgYmxpdHQgc2VuZHQgdGlsICVzIG1lZCBpbnN0cnVrc2pvbmVyIG9tIGh2b3JkYW4gcGFzc29yZGV0IGthbiBsZWdnZXMgaW5uIHDDpSBueS4gVGFray4nOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdIYXIgZHUgZ2xlbXQgZWxsZXIgbWlzdGV0IHBhc3NvcmRldCBkaXR0PyBGeWxsIGlubiBicnVrZXJuYXZuZXQgZGl0dCBoZXIgc8OlIHZpbCB2aSBzZW5kZSBkZWcgZW4gZS1wb3N0IG9tIGh2b3JkYW4gZHUga2FuIHRpbGJha2VzdGlsbGUgZGV0Lic7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJ01hbCBmb3IgZ2xlbXQgcGFzc29yZCc7CiRsYW5nWydsb3N0dXNlcm5hbWVfdGVtcGxhdGUnXSA9ICdcJ01pc3RldCBicnVrZXJuYXZuXCcgbWFsJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ0VnZW5za2FwICVzIGlra2UgZnVubmV0JzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdFZ2Vuc2thcCBmdW5uZXQnOwokbGFuZ1snYWRkcHJvcCddID0gJ0xlZ2cgdGlsIGVnZW5za2FwJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdFdCBvYmxpZ2F0b3Jpc2sgZmVsdCAoJXMpIHZhciB0b210JzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnRXZ0LiBueXR0IHBhc3NvcmQgaGVyIGZvciDDpSBlbmRyZSBkZXQgZWtzaXN0ZXJlbmRlJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnRGV0IHNlciBpa2tlIHV0IHRpbCBhdCBkdSBlciBpbm5sb2dnZXQnOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ0lubnN0aWxsaW5nZXInOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyZXJpbmcnOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdLb250b2VuIGhhciB1dGzDuHB0JzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdGZWlsIHDDpSBlLXBvc3RhZHJlc3NlbnMgZm9ybWF0ZXJpbmcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdVZ3lsZGlnIHV0bMO4cHNkYXRvLiBEZXR0ZSBrYW4gdsOmcmUgc3lzdGVtcmVsYXRlcnQuIEZvcnPDuGsgbWVkIMOlIHNldHRlIGV0IHRpZGxpZ2VyZSDDpXIuJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdGZWlsIHZlZCBzZXR0aW5nIGF2IGVnZW5za2FwICVzIGZvciBicnVrZXIgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdVZ3lsZGlnIGdydXBwZUlEICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnTWVya2UgZm9yIHNranVsdCBmZWx0JzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdGYXJnZSBmb3Igc2tqdWx0IGZlbHQnOwokbGFuZ1snaGlkZGVuJ10gPSAnU2tqdWx0JzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdFbiBlZ2Vuc2thcCBtZWQgZGV0IG5hdm5ldCBlciBhbGxlcmVkZSBkZWZpbmVydCc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdJbmdlbiBlZ2Vuc2thcCBkZWZpbmVydCc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ0luZ2VuIGVnZW5za2FwZXIgYmxlIHZhbGd0IGZvciBkZW5uZSBncnVwcGVuJzsKJGxhbmdbJ25vZ3JvdXBzJ10gPSAnSW5nZW4gZ3J1cHBlciBlciBkZWZpbmVydCc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ0dydXBwZXIgZnVubmV0JzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdEZXQgbcOlIHRpbGRlbGVzIG1lZGxlbXNrYXAgZm9yIG1pbnN0IGVuIGdydXBwZSc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnS3JldiBtZWRsZW1za2FwIGZvciBtaW5zdCBlbiBncnVwcGUnOwokbGFuZ1snYmFjayddID0gJ1RpbGJha2UnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGZlbHRldCBtw6UgZnlsbGVzIHV0JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNZXJrIG9ibGlnYXRvcmlza2UgZmVsdCBtZWQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnVXRoZXYgb2JsaWdhdG9yaXNrZSBmZWx0IG1lZCc7CiRsYW5nWyduZXh0J10gPSAnTmVzdGUnOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdFbiBncnVwcGUgbWVkIGRldCBuYXZuZXQgZWtzaXN0ZXJlciBhbGxlcmVkZSc7CiRsYW5nWydyZXF1aXJlZCddID0gJ09ibGlnYXRvcmlzayc7CiRsYW5nWydvcHRpb25hbCddID0gJ1ZhbGdmcml0dCc7CiRsYW5nWydvZmYnXSA9ICdBdic7CiRsYW5nWydzaXplJ10gPSAnU3TDuHJyZWxzZSc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1ha3Mgc3TDuHJyZWxzZSBpIHBpeGxlciBmb3IgZW5odmVyIGRpbWVuc2pvbiBww6UgYmlsZGV0KSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMZW5nZGUnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oYm9rc3RhdmVyIGkgdGVrc3Rpbm5za3JpdmluZ2VuKSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnTmVkdHJla2tzdmFsZywgc2VwYXJlcnQgbWVkIGxpbmplc2tpZnQuIFZlcmRpZXIga2FuIHNlcGFyZXJlcyBmcmEgdGVrc3QgbWVkIGV0ID0gdGVnbi4gRi5la3MuIEh1bm5rasO4bm49Zic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpb2tuYXBwIGV0aWtldHRlciwgc2VwYXJlcnQgbWVkIGxpbmplc2tpZnQuIFZlcmRpZXIga2FuIHNlcGFyZXJlcyBmcmEgdGVrc3QgbWVkIGV0ID0gdGVnbi4gRi5la3M6IEh1bm5rasO4bm49ayc7CiRsYW5nWydwcm9tcHQnXSA9ICdTcMO4cic7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cGUnOwokbGFuZ1sndHlwZSddID0gJ1R5cGUnOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdGZWx0IFN0YXR1cyc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdTcMO4ciBpIE1pc3RldDxici8+YnJ1a2VybmF2bic7CiRsYW5nWyd0ZXh0J10gPSAnVGVrc3QnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdBdmtyeXNzbmluZ3Nib2tzJzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnRmxlcnZhbGdzbGlzdGUnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnUmFkaW9rbmFwcGVyJzsKJGxhbmdbJ2ltYWdlJ10gPSAnQmlsZGUnOwokbGFuZ1snZW1haWwnXSA9ICdFLXBvc3RhZHJlc3NlJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnVGVrc3RvbXLDpWRlJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnTmVkdHJla2tzbWVueSc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1ZlbGtvbW1lbic7CiRsYW5nWydsb2dvdXQnXSA9ICdMb2dnIHV0JzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdCZW55dHQgZGV0dGUgZ3J1cHBlbmF2bmV0JzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ0ZvcmFuZHJlIG1pbmUgaW5uc3RpbGxpbmdlcic7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0lubmxvZ2dpbmcgbWlzc2x5a2tldCAtIHVneWxkaWcgYnJ1a2VybmF2biBlbGxlciBwYXNzb3JkPyc7CiRsYW5nWydsb2dpbiddID0gJ0xvZ2cgaW5uJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnTG9nZyBpbm4ga25hcHAgZXRpa2V0dCc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdCcnVrZXJuYXZuJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0UtcG9zdGFkcmVzc2UnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnUGFzc29yZCc7CiRsYW5nWydwcm9tcHRfcmVtZW1iZXJtZSddID0gJ0h1c2sgbWVnIHDDpSBkZW5uZSBkYXRhbWFza2luZW4nOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3RyZXInOwokbGFuZ1snZm9yZ290cHcnXSA9ICdHbGVtdCBwYXNzb3JkZXQ/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0hhciBkdSBnbGVtdCBpbm5sb2dnaW5nc2RldGFsamVuZT8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdUaWxiYWtlc3RpbGwgdGlsIHN0YW5kYXJkJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnTWFsJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdEZXQgYnJ1a2VybmF2bmV0ICglcykgZXIgYWxsZXJlZGUgaSBicnVrJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdCcnVrIFNNVFAgZm9yIMOlIGtvbnRyb2xsZXJlIGUtcG9zdGFkcmVzc2VyPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbXVtIGxlbmdkZSBww6UgcGFzc29yZCc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdNYWtzaW11bSBsZW5nZGUgcMOlIHBhc3NvcmQnOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnTWluaW11bSBMZW5nZGUgcMOlIGJydWtlcm5hdm4nOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTWFrc2ltdW0gbGVuZ2RlIHDDpSBicnVrZXJuYXZuJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb24gVGltZW91dCAoc2VrdW5kZXIpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdCcnVrIGNvb2tpZXMgZm9yIMOlIGhvbGRlIGlubmxvZ2dpbmdlbiB2ZWQgbGl2JzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnVGlsbGF0IGUtcG9zdCByZWdpc3RyZXJpbmcnOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ1N0YW5kYXJkZ3J1cHBlIGZvciBueWUgYnJ1a2VyZSc7CiRsYW5nWydjaGFuZ2VzZXR0aW5nc190ZW1wbGF0ZSddID0gJ01hbCBmb3IgZm9yYW5kcmUgYnJ1a2VyZGF0YSc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnUGFzc29yZGVuZSBlciBpa2tlIGxpa2UnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnVWd5bGRpZyBicnVrZXJuYXZuJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ1VneWxkaWcgcGFzc29yZCc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdLdW5uZSBpa2tlIGZpbm5lIGluZm9ybWFzam9uIG9tIGRlbm5lIGJydWtlcmVuJzsKJGxhbmdbJ2VkaXR1c2VyJ10gPSAnUmVkaWdlciBicnVrZXInOwokbGFuZ1sndmFsaWQnXSA9ICdHeWxkaWcnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdCcnVrZXJuYXZuJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdEZW5uZSBicnVrZXJlbiBlciBpa2tlIG1lZGxlbSBhdiBub2VuIGdydXBwZSc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnSW5nZW4gZWdlbnNrYXBlcic7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ0ZvcnPDuGsgw6UgaW1wb3J0ZXJlIGR1cGxpa2F0ZSBlZ2Vuc2thcGVyJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnVmVyZGknOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3J1cHBlcic7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAnRWdlbnNrYXBlcic7CiRsYW5nWydwcm9wbmFtZSddID0gJ0VnZW5za2FwZW5zIE5hdm4nOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnRWdlbnNrYXBlbnMgdmVyZGknOwokbGFuZ1snYWRkJ10gPSAnTGVnZyB0aWwnOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3RvcmllJzsKJGxhbmdbJ2VkaXQnXSA9ICdSZWRpZ2VyJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdVdGzDuHBlcic7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdTcGVzaWZpc2VyIGRhdG8nOwokbGFuZ1snMTJocnMnXSA9ICcxMiB0aW1lcic7CiRsYW5nWycyNGhycyddID0gJzI0IHRpbWVyJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggdGltZXInOwokbGFuZ1snMXdlZWsnXSA9ICcxIHVrZSc7CiRsYW5nWycyd2Vla3MnXSA9ICcyIFVrZXInOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBNw6VuZWQnOwokbGFuZ1snM21vbnRocyddID0gJzMgTcOlbmVkZXInOwokbGFuZ1snNm1vbnRocyddID0gJzYgTcOlbmVkZXInOwokbGFuZ1snMXllYXInXSA9ICcxIMOFcic7CiRsYW5nWyduZXZlciddID0gJ0FsZHJpJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ1ZlbGx5a2tldCBpbnN0YWxsYXNqb24gYXYgbW9kdWxlbi48YnIvPkh1c2sgw6UgYWt0aXZpc2VyZSAgIk1vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcyBwZXJtaXNzaW9uLiINCkkgdGlsbGVnZywgYW5iZWZhbGVyIHZpIGRlZyDDpSBpbnN0YWxsZXJlIENhcHRjaGEgbW9kdWxlbi4gIE9tIGRlbm5lIGVyIGluc3RhbGxlcnQsIGVuIGd5bGRpZ2hldHN0ZXN0IGF2IGV0IGNhcHRjaGFiaWxkZSB2aWwga3JldmVzIGkgdGlsbGVnZyB0aWwgYnJ1a2VybmF2biBvZyBwYXNzb3JkIGZvciDDpSBsb2dnZSBpbm4uIE1lbmluZ2VuIG1lZCBkZXR0ZSBlciDDpSBoaW5kcmUgYnJ1dGUgZm9yY2UgYW5ncmVwLiAgPHN0cm9uZz5NZXJrOjwvc3Ryb25nPiBQYXJhbWV0ZXJlbiBub2NhcHRjaGEga2FuIGJlbnl0dGVzIGZvciDDpSBzbMOlIGF2IGRlbm5lIGZ1bmtzam9uZW4gc2VsdiBvbSBDYXB0Y2hhIG1vZHVsZW4gZXIgaW5zdGFsbGVydC4iJzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnTnl0dCBwYXNzb3JkJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnR2plbnRhJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdFbiBncnVwcGUgbWVkIGRldCBuYXZuZXQgZWtzaXN0ZXJlciBhbGxlcmVkZSc7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICdSZWRpZ2VyIGdydXBwZSc7CiRsYW5nWydzdWJtaXQnXSA9ICdTZW5kJzsKJGxhbmdbJ2NhbmNlbCddID0gJ0F2YnJ5dCc7CiRsYW5nWydkZWxldGUnXSA9ICdTbGV0dCc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ0VyIGR1IHNpa2tlciBww6UgYXQgZGV0dGUgZXIga29ycmVrdGUgdmFsZyBmb3IgZGVubmUgZ3J1cHBlbj9cbsOFIHNsw6UgZW4gZWdlbnNrYXAgYXYvb2ZmIHZpbCBpa2tlIHNsZXR0ZSBub2VuIGlubmxlZ2cgaSBlZ2Vuc2thcC10YWJlbGxlbiBmb3IgZGVubmUgZ3J1cHBlbi9icnVrZXJlbi4gIEVnZW5za2FwZW4gdmlsIGkgc3RlZGV0IGJsaSB1dGlsZ2plbmdlbGlnLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnRXIgZHUgc2lra2VyIHDDpSBhdCBkdSB2aWwgc2xldHRlIGRlbm5lIGdydXBwZW4/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdFciBkdSBzaWtrZXIgcMOlIGF0IGR1IHZpbCBzbGV0dGUgZGVubmUgZWdlbnNrYXBlbiBoZWx0P1xuw4UgZ2rDuHJlIGRldHRlIHZpbCBvZ3PDpSBzbGV0dGUgZW5odmVyIGJydWtlcnMgaW5ubGVnZyBpIGRlbm5lIGVnZW5za2FwZW4uJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1VmdWxsc3RlbmRpZ2UgcGFyYW1ldHJlJzsKJGxhbmdbJ2lkJ10gPSAnSWQnOwokbGFuZ1snbmFtZSddID0gJ05hdm4nOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVtIG1lZCDDpSBsZWdnZSB0aWwgZWdlbnNrYXAnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW0gbWVkIMOlIGxlZ2dlIHRpbCBncnVwcGVlZ2Vuc2thcCc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICdQcm9ibGVtIG1lZCDDpSBsZWdnZSB0aWwgZ3J1cHBlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSBtZWQgw6UgbGVnZ2UgZW4gYnJ1a2VyIHRpbCBncnVwcGVuJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibGVtIG1lZCDDpSBzbGV0dGUgZW4gZWdlbnNrYXAnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdLdW5uZSBpa2tlIGZpbm5lIGVuIGUtcG9zdGFkcmVzc2UnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ0luZ2VuIHNrcml2ZXJldHRpZ2hldCBpIG3DpWxtYXBwZW4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1VneWxkaWdlIHBhcmFtZXRlcmUnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdLdW5uZSBpa2tlIGZpbm5lIG5vZW4gZ3J1cHBlcic7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0JydWsnOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdHJlcic7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnQnJ1a2VybmF2biB2YW5saWcgdXR0cnlrayc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Jlc2tyaXZlbHNlJzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ0dydXBwZW5hdm4nOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWRnYW5nIG5la3RldCc7CiRsYW5nWydlcnJvciddID0gJ0ZlaWwnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdMZWdnIHRpbCBncnVwcGUnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRlciBHcnVwcGUnOwokbGFuZ1snYWRkdXNlciddID0gJ0xlZ2cgdGlsIGJydWtlcic7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnQnJ1a2VyZSBzb20gcGFzc2VyIG1lZCBrcml0ZXJpZW5lJzsKJGxhbmdbJ2dyb3VwJ10gPSAnR3J1cHBlJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnVmVsZyBncnVwcGUnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnTWFsIGZvciByZWdpc3RyZXJpbmcnOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnTWFsIGZvciB1dGxvZ2dpbmcnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdNYWwgZm9yIGlubmxvZ2dpbmcnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXJhbnNlcic7CiRsYW5nWyd1c2VycyddID0gJ0JydWtlcmUnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgYnJ1a2VyZSc7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0FkbWluaXN0cmVyIEZyb250ZW5kIGJydWtlcmUnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ1N0YW5kYXJkIGZvcnNpZGUnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1Npc3RlIHZpc3RlIHNpZGUnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnQW5uZW4gc2lkZTonOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ09wcGdpIHRla3N0ZW4gZnJhIGJpbGRldCc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3RwbHR5cGVfbG9naW5fZm9ybSddID0gJ0lubG9nIEZvcm11bGllcic7CiRsYW5nWyd0cGx0eXBlX2xvZ291dF9mb3JtJ10gPSAnVWl0bG9nIEZvcm11bGllcic7CiRsYW5nWydwcm9tcHRfZm9yJ10gPSAnVm9vcic7CiRsYW5nWydlcnJvcl9sb3N0dW5fYmFkcGFzc3dvcmQnXSA9ICdTb3JyeSwgbWFhciBoZXQgaW5nZXZvZXJkZSB3YWNodHdvb3JkIGlzIHZlcmtlZXJkJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl91c2Vybm90Zm91bmQnXSA9ICdTb3JyeSwgZGUgaW5mb3JtYXRpZSBkaWUgdSBpbmdldm9lcmQgaGVlZnQgcGFzdCBuaWV0IGJpaiBlZW4gYmVzdGFhbmQgZ2VicnVpa2Vyc2FjY291bnQnOwokbGFuZ1snZXJyb3JfeW91YXJlYWJvdCddID0gJ0h1bW0sIGhldCBsaWprdCBlciBvcCBkYXQgamlqIGVlbiBCT1QgYmVudCBvZiByYXJlIGRpbmdlbiBhYW4gaGV0IGRvZW4gYmVudC4uLic7CiRsYW5nWydlcnJvcl9kZWxldGVwcm9wJ10gPSAnRXIgaXMgZWVuIGZvdXQgb3BnZXRyZWRlbiBiaWogaGV0IHZlcndpamRlcmVuIHZhbiBkZXplIEVpZ2Vuc2NoYXAnOwokbGFuZ1snZXJyb3JfYWN0aW9uX25vdGNvbmZpcm1lZCddID0gJ09lcHMsIGhldCBsaWprdCBlciBvcCBkYXQgdSB2ZXJnZXRlbiBiZW50IGVlbiBiZWxhbmdyaWprZSBiZXdlcmtpbmcgdGUgYWNjb3JkZXJlbic7CiRsYW5nWydwcm9tcHRfY29uZmlybV9kZWxldGVwcm9wJ10gPSAnV2VldCB1IHpla2VyIGRhdCB1IGRlemUgRWlnZW5zY2hhcCB3aWx0IHZlcndpamRlcmVuPyc7CiRsYW5nWydoZHJfZGVsZXRlcHJvcCddID0gJ0VpZ2Vuc2NoYXAgdmVyd2lqZGVyZW4nOwokbGFuZ1snbXNnX2NhbmNlbGxlZCddID0gJ0Jld2Vya2luZyBnZWFubnVsZWVyZCc7CiRsYW5nWyd0aXRsZV9hZGRfdXNlciddID0gJ05pZXV3IGdlYnJ1aWtlcnNhY2NvdW50IGFhbm1ha2VuJzsKJGxhbmdbJ21zZ19mb3JjZV9uZXdwdyddID0gJ1dlbGtvbS4gT20gdmVpbGlnaGVpZHNyZWRlbmVuIG1vZXQgdSBlZW4gbmlldXcgd2FjaHR3b29yZCBvcGdldmVuLic7CiRsYW5nWydsYmxfdGVtcGxhdGUnXSA9ICdTamFibG9vbic7CiRsYW5nWydmb3JjZV9uZXdwd190ZW1wbGF0ZSddID0gJ0ZvcmNlZXIgbmlldXcgd2FjaHR3b29yZCBzamFibG9vbic7CiRsYW5nWydwcm9tcHRfZm9yY2VfbmV3cHcnXSA9ICdGb3JjZWVyIGRlemUgZ2VicnVpa2VyIG9tIHppam4gd2FjaHR3b29yZCBvcG5pZXV3IGluIHRlIHN0ZWxsZW4gYmlqIGRlIHZvbGdlbmRlIGxvZ2luLic7CiRsYW5nWydwcm9tcHRfZGlzYWJsZWQnXSA9ICdJcyBkaXQgYWNjb3VudCB1aXRnZXNjaGFrZWxkPyc7CiRsYW5nWydlbmFibGVfdXNlciddID0gJ0dlYnJ1aWtlcnNhY2NvdW50IGluc2NoYWtlbGVuJzsKJGxhbmdbJ3RpdGxlX2ZvcmdvdHB3J10gPSAnVmVyZ2V0ZW4gd2FjaHR3b29yZCc7CiRsYW5nWyd2ZXJpZnlfaWRlbnRpdHknXSA9ICdWZXJpZmllZXIgdXcgaWRlbnRpdGVpdCc7CiRsYW5nWyc0MDNlcnJvciddID0gJ0dlbmVyZWVyIGVlbiA0MDMgZXJyb3InOwokbGFuZ1sncHJvbXB0X2VuaGFuY2VkcHcnXSA9ICdWZXJlaXMgZWVuIHN0ZXJrIHdhY2h0d29vcmQnOwokbGFuZ1sncHJvbXB0X3B3cmVxdWlyZWRjaGFycyddID0gJ1ZlcmVpcyBlZW4gdmFuIGRlemUga2FyYWt0ZXJzIGluIGhldCB3YWNodHdvb3JkJzsKJGxhbmdbJ2ltcG9ydF9kZWxldGVkdXNlciddID0gJ1ZlcndpamRlciBnZWJydWlrZXIgJXMnOwokbGFuZ1snZXJyb3JfZXhwb3J0X25vdXNlcnMnXSA9ICdHZWVuIEdlYnJ1aWtlcnNhY2NvdW50cyBnZXZvbmRlbiBvbSB0ZSBleHBvcnRlcmVuJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRfdXNlcnMnXSA9ICdFeHBvcnRlZXIgR2VicnVpa2Vyc2FjY291bnRzJzsKJGxhbmdbJ3RpdGxlX2V4cG9ydF91c2VycyddID0gJ0V4cG9ydGVlciBkZSBnZWJydWlrZXJzIG5hYXIgZWVuIEFTQ0lJIGJlc3RhbmQnOwokbGFuZ1sncHJvbXB0X2RlbGltaXRlciddID0gJ1NjaGVpZGluZ3N0ZWtlbic7CiRsYW5nWydzb3J0YnlfdXNlcm5hbWVfYXNjJ10gPSAnR2VicnVpa2Vyc25hYW0gKG9wbG9wZW5kKSc7CiRsYW5nWydzb3J0YnlfdXNlcm5hbWVfZGVzYyddID0gJ0dlYnJ1aWtlcnNuYWFtIChhZmxvcGVuZCknOwokbGFuZ1snc29ydGJ5X2NyZWF0ZV9hc2MnXSA9ICdBYW5tYWFrZGF0dW0gKG9wbG9wZW5kKSc7CiRsYW5nWydzb3J0YnlfY3JlYXRlX2Rlc2MnXSA9ICdBYW5tYWFrZGF0dW0gKGFmbG9wZW5kKSc7CiRsYW5nWydzb3J0YnlfZXhwaXJlc19hc2MnXSA9ICdWZXJsb29wZGF0dW0gKG9wbG9wZW5kKSc7CiRsYW5nWydzb3J0YnlfZXhwaXJlc19kZXNjJ10gPSAnVmVybG9vcGRhdHVtIChhZmxvcGVuZCknOwokbGFuZ1snZW5jcnlwdGVkJ10gPSAnVmVyc2xldXRlbGQnOwokbGFuZ1snaW5mb19jb29raWVuYW1lJ10gPSAnU2NoYWtlbHQgZGUgInJlbWVtYmVyIG1lIiBmdW5jdGllIGluLiBEaXQgaXMgZ2VsaWprIGFhbiBkZSBjb29raWUga2VlcGFsaXZlIGZ1bmN0aWUsIG1hYXIgZGFuIHZvb3IgNjAgZGFnZW4uJzsKJGxhbmdbJ21zZ191c2VybmFtZV9yZWFkb25seSddID0gJ0hldCBpcyBuaWV0IHRvZWdlc3RhYW4gb20gZGUgZ2VicnVpa2Vyc25hYW0gdm9vciBkaXQgYWNjb3VudCBhYW4gdGUgcGFzc2VuJzsKJGxhbmdbJ21zZ19wYXNzd29yZF9yZWFkb25seSddID0gJ0hldCBpcyBuaWV0IHRvZWdlc3RhYW4gb20gaGV0IHdhY2h0d29vcmQgdm9vciBkaXQgYWNjb3VudCBhYW4gdGUgcGFzc2VuJzsKJGxhbmdbJ3Byb21wdF9ub3JtYWxsb2dpbiddID0gJ0RpcmVjdGUgTG9naW4nOwokbGFuZ1snbW92ZV91cCddID0gJ09taG9vZyc7CiRsYW5nWydtb3ZlX2Rvd24nXSA9ICdPbWxhYWcnOwokbGFuZ1sndGl0bGVfcHJvcG1vZHVsZSddID0gJ0RlemUgcHJvcGVydHkgaXMgZ2VtYWFrdCBkb29yIGVlbiBtb2R1bGUgZW4ga2FuIG5pZXQgd29yZGVuIGFhbmdlcGFzdCc7CiRsYW5nWydub3RfYXZhaWxhYmxlJ10gPSAnTmlldCBiZXNjaGlrYmFhcic7CiRsYW5nWydwcm9tcHRfZGZsdF9jaGVja2VkJ10gPSAnU3RhbmRhYXJkIGhvb3J0IGRpdCB2ZWxkIGFhbmdldmlua3QgdGUgemlqbic7CiRsYW5nWydvcGVyYXRpb25fY29tcGxldGVkJ10gPSAnQWt0aWUgY29tcGxlZXQnOwokbGFuZ1snbWVtYmVycyddID0gJ0xlZGVuJzsKJGxhbmdbJ3ZpZXdfZmlsdGVyJ10gPSAnQmVraWprIEZpbHRlcic7CiRsYW5nWydkYXRhJ10gPSAnRGF0YSc7CiRsYW5nWydhcHBsaWVkJ10gPSAnVmVyd2Vya3QnOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnPDwnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnPic7CiRsYW5nWydsYXN0cGFnZSddID0gJz4+JzsKJGxhbmdbJ3BhZ2UnXSA9ICdQYWdpbmEnOwokbGFuZ1sncHJvbXB0X2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnR2VicnVpa2Vyc25hYW0gd2lqemlnZW4gdG9lc3RhYW4nOwokbGFuZ1snaW5mb19hbGxvd19jaGFuZ2V1c2VybmFtZSddID0gJ0luZGllbiBpbmdlc2NoYWtlbGQgaXMgaGV0IGdlYnJ1aWtlcnMgdG9lZ2VzdGFhbiBvbSBkZSBlaWdlbiBnZWJydWlrZXJzbmFhbSBlbiBhbmRlcmUgaW5zdGVsbGluZ2VuIHRlIHdpanppZ2VuLic7CiRsYW5nWyd0ZW1wbGF0ZV9zYXZlZCddID0gJ1NqYWJsb29uIG9wZ2VzbGFnZW4nOwokbGFuZ1sndGVtcGxhdGVfcmVzZXRkZWZhdWx0cyddID0gJ1NqYWJsb29uIG5hYXIgc3RhbmRhYXJkIHRlcnVnemV0dGVuJzsKJGxhbmdbJ2xibF9zZXR0aW5ncyddID0gJ0luc3RlbGxpbmdlbic7CiRsYW5nWydsYmxfdGVtcGxhdGVzJ10gPSAnU2phYmxvbmVuJzsKJGxhbmdbJ2VuYWJsZV9jYXB0Y2hhJ10gPSAnU2NoYWtlbCBjYXB0Y2hhIGluIHZvb3IgaGV0IGxvZ2luZm9ybXVsaWVyJzsKJGxhbmdbJ2luZm9fZW5hYmxlX2NhcHRjaGEnXSA9ICdBbHMgZGUgZ2VicnVpa2VyIG5pZXQgaXMgYWFuZ2VtZWxkIGVuIGRlIG1vZHVsZXZvb3JrZXVyZW4gc3RhYW4gem8gaW5nZXN0ZWxkIGRhdCBlciBkYW4gZWVuIGxvZ2luZm9ybXVsaWVyIHdvcmR0IHdlZXJnZXZlbiwgZGFuIGt1bnQgdSBtZXQgZGV6ZSBvcHRpZSBhYW5nZXZlbiBvZiB1IHdpbHQgZGF0IGVyIGVlbiBjYXB0Y2hhIHdvcmR0IHdlZXJnZWdldmVuLiBBbGxlZW4gaW5kaWVuIGNhcHRjaGEgYmVzY2hpa2JhYXIgaXMuJzsKJGxhbmdbJ3BhZ2V0eXBlX3VuYXV0aG9yaXplZCddID0gJ1UgYmVudCBuaWV0IGJldm9lZ2Qgb20gZGUgaW5ob3VkIHZhbiBkZXplIHBhZ2luYSB0ZSB6aWVuJzsKJGxhbmdbJ2luZm9fY29udGVudHBhZ2VfZ3JvdXBsaXN0J10gPSAnTWFhayBlZW4gc2VsZWN0aWUgdmFuIEZFVSBncm9lcGVuIGRpZSB0b2VnYW5nIG1vZ2VuIGhlYmJlbiB0b3QgZGV6ZSBwYWdpbmEuIEFscyBlciBnZWVuIGdyb2VwZW4gZ2VzZWxlY3RlZXJkIHppam4sIGlzIGVsa2UgbWV0IEZFVSBpbmdlbG9nZGUgZ2VicnVpa2VyIGdlcmVjaHRpZ2Qgb20gZGV6ZSBwYWdpbmEgdGUgemllbi4nOwokbGFuZ1sncGFnZXR5cGVfc2V0dGluZ3MnXSA9ICdCZXZlaWxpZ2RlIHBhZ2luYSBpbnN0ZWxsaW5nZW4nOwokbGFuZ1sncGFnZXR5cGVfZ3JvdXBzJ10gPSAnVG9lZ2VzdGFuZSBncm9lcGVuJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfZ3JvdXBzJ10gPSAnU2VsZWN0ZWVyIGRlIGdyb2VwKGVuKSBkaWUgc3RhbmRhYXJkIGRlIGFmZ2VzY2hlcm1kZSBwYWdpbmFcJ3MgbW9nZW4gemllbi4gRWVuIGVkaXRvciBtZXQgZGUgImJlaGVlciBhbGxlIGluaG91ZCAobWFuYWdlIGFsbCBjb250ZW50KSIgcmVjaHRlbiBrYW4gZGl0IHZvb3IgZWxrZSBwYWdpbmEgb3BoZWZmZW4uJzsKJGxhbmdbJ3BhZ2V0eXBlX2FjdGlvbiddID0gJ0Jld2Vya2luZyB2b29yIG5pZXQgdm9sZG9lbmRlIHJlY2h0ZW4nOwokbGFuZ1snaW5mb19wYWdldHlwZV9hY3Rpb24nXSA9ICdHZWVmIGRlIGFjdGllcyBhYW4gdm9vciBwZXJzb25lbiBkaWUgZGV6ZSBwYWdpbmEgYmVuYWRlcmVuIHpvbmRlciBkYXQgemUgdm9sZG9lbmRlIHJlY2h0ZW4gaGViYmVuLiBVIGt1bnQgb2Z3ZWwgbGF0ZW4gZG9vcnN0dXJlbiBuYWFyIGVlbiBiZXBhYWxkZSBwYWdpbmEgb2YgaGV0IGxvZ2luIGZvcm11bGllciB0b25lbi4nOwokbGFuZ1snc2hvd2xvZ2luZm9ybSddID0gJ1Rvb24gaGV0IExvZ2luIGZvcm11bGllcic7CiRsYW5nWydyZWRpcmVjdCddID0gJ0Rvb3J2ZXJ3aWp6ZW4gbmFhciBlZW4gcGFnaW5hJzsKJGxhbmdbJ3BhZ2V0eXBlX3JlZGlyZWN0dG8nXSA9ICdEb29ydmVyd2lqemVuIG5hYXInOwokbGFuZ1snaW5mb19wYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnR2VlZiBhYW4gbmFhciB3ZWxrZSBwYWdpbmEgZG9vcmdlc3R1dXJkIHdvcmR0LiBBbHMgdSBoaWVyIGdlZW4gcGFnaW5hIHNlbGVjdGVlcnQgZW4gZGUgYWN0aWUgc3RhYXQgaW5nZXN0ZWxkIG9wICJkb29yc3R1cmVuIiB6YWwgZGUgZ2VicnVpa2VyIGVlbiBiZXJpY2h0IGdldG9vbmQgd29yZGVuIGRhdCBoaWogZ2VlbiB0b2VnYW5nIGhlZWZ0IHRvdCBkZSBwYWdpbmEuJzsKJGxhbmdbJ3Blcm1pc3Npb25zJ10gPSAnUmVjaHRlbic7CiRsYW5nWydmZXVfcHJvdGVjdGVkX3BhZ2UnXSA9ICdCZXZlaWxpZ2RlIGluaG91ZCc7CiRsYW5nWydwcm9tcHRfdmlld3Byb3BzJ10gPSAnU2VsZWN0ZWVyIGV4dHJhIGVpZ2Vuc2NoYXBwZW4gb20gd2VlciB0ZSBnZXZlbic7CiRsYW5nWyd2aWV3J10gPSAnV2VlcmdldmVuJzsKJGxhbmdbJ2luZm9faWdub3JlX3VzZXJpZCddID0gJ1dhbm5lZXIgYWFuZ2V2aW5rdCB6YWwgZGUgaW1wb3J0IHJvdXRpbmUgcHJvYmVyZW4gZ2VicnVpa2VycyBvbmFmaGFua2VsaWprIHZhbiBkZSBVc2VySUQga29sb20gdG9lIHRlIHZvZWdlbi4gV2FubmVlciBlZW4gZ2VicnVpa2VyIGJlc3RhYXQgbWV0IGRlemVsZmRlIG5hYW0sIHphbCBlZW4gZm91dG1lbGRpbmcgd29yZGVuIHdlZXJnZWdldmVuLic7CiRsYW5nWydpZ25vcmVfdXNlcmlkJ10gPSAnU2xhIFVzZXJJRCBrb2xvbSBvdmVyIGJpaiBpbXBvcnRlcmVuJzsKJGxhbmdbJ2V4cG9ydF9wYXNzaGFzaCddID0gJ0V4cG9ydGVlciBkZSB3YWNodHdvb3JkIGhhc2ggbmFhciBoZXQgYmVzdGFuZCc7CiRsYW5nWydpbmZvX2V4cG9ydF9wYXNzaGFzaCddID0gJ0RlIHdhY2h0d29vcmQgaGFzaCBpcyBlbmtlbCBudXR0aWcgYWxzIGRlIHdhY2h0d29vcmR2ZXJzbGV1dGVsaW5nc2NvZGUgb3AgZGUgaW1wb3J0ZXJlbmRlIGhvc3RzIGlkZW50aWVrIGlzIGFhbiBkZWdlbmUgb3AgZGUgZXhwb3J0ZXJlbmRlIGhvc3QnOwokbGFuZ1snZXJyb3JfYWRqdXN0c2FsdCddID0gJ0RlIHdhY2h0d29vcmR2ZXJzbGV1dGVsaW5nc2NvZGUga2FuIG5pZXQgd29yZGVuIGFhbmdlcGFzdCc7CiRsYW5nWydwcm9tcHRfcHdzYWx0J10gPSAnV2FjaHR3b29yZHZlcnNsZXV0ZWxpbmcnOwokbGFuZ1snaW5mb19wd3NhbHQnXSA9ICdGcm9udEVuZFVzZXJzIHZvZWd0IHZlcnNsZXV0ZWxpbmcgdG9lIGFhbiB3YWNodHdvb3JkZW4uIERlIHNsZXV0ZWwgd29yZHQgZ2VnZWdlbmVlcmQgdGlqZGVucyBkZSBpbnN0YWxsYXRpZS4gRGV6ZSBzbGV1dGVsIGthbiBuaWV0IHdvcmRlbiBnZXdpanppZ2QuIERlIHZlcnNsZXV0ZWxpbmdzY29kZSBrYW4gbGVlZyB6aWpuIGJpaiBvdWRlIGluc3RhbGxhdGllcy4nOwokbGFuZ1snYWR2YW5jZWRfc2V0dGluZ3MnXSA9ICdVaXRnZWJyZWlkZSBpbnN0ZWxsaW5nZW4nOwokbGFuZ1snaW5mb19zZXNzaW9udGltZW91dCddID0gJ0dlZWYgaGV0IGFhbnRhbCBzZWNvbmRlbiBvcCB2b29yZGF0IGVlbiBpbmFjdGlldmUgZ2VicnVpa2VyIGF1dG9tYXRpc2NoIG1vZXQgd29yZGVuIGFmZ2VtZWxkIHZhbiBkZSB3ZWJzaXRlJzsKJGxhbmdbJ3Byb21wdF9leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ0ludGVydmFsIGdlYnJ1aWtlcnN2ZXJsb29wJzsKJGxhbmdbJ2luZm9fZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdHZWVmIGVlbiB3YWFyZGUgb3AgKGluIHNlY29uZGVuKSBkaWUgYWFuZ2VlZnQgaG9lIHZhYWsgaGV0IHN5c3RlZW0gbW9ldCBjb250cm9sZXJlbiB3ZWxrZSBnZWJydWlrZXJzc2Vzc2llIHppam4gdmVybG9wZW4gZW4gYWZnZW1lbGQgbW9ldGVuIHdvcmRlbi4gRGl0IGlzIGVlbiBvcHRpbWFsaXNhdGVpIG9tIGRhdGFiYXNlcXVlcnlcJ3MgdGUgYmVzcGFyZW4uIEFscyB1IGRpdCB2ZWxkIGxlZWcgbGFhdCBvZiAwIGludm9lcnQgZGFuIHphbCBoZXQgd29yZGVuIHVpdGdldm9lcmQgYmlqIGllZGVyZSBhYW52cmFhZy4nOwokbGFuZ1snbXNnX3NldHRpbmdzY2hhbmdlZCddID0gJ1V3IGluc3RlbGxpbmdlbiB6aWpuIHN1Y2Nlc3ZvbCBiaWpnZXdlcmt0JzsKJGxhbmdbJ2ZvcmNlZGxvZ291dHRhc2tfZGVzYyddID0gJ1ZlcnBsaWNodCBnZWJydWlrZXJzIG9tIGFmIHRlIG1lbGRlbiBvcCByZWdlbG1hdGlnZSBpbnRlcnZhbGxlbic7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICdUaWpkIHZvb3IgZ2Vkd29uZ2VuIGFmbWVsZGVuJzsKJGxhbmdbJ2luZm9fZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICdHZWVmIGVlbiBsaWpzdCBtZXQga29tbWFnZXNjaGVpZGVuIHdhYXJkZW4gdmFuIHRpamRlbiBvcCAoYmlqdm9vcmJlZWxkOiBISDpNTSxISDpNTSkgd2Fhcm9wIGdlYnJ1aWtlciBnZWZvcmNlZXJkIGFmZ2VtZWxkIHdvcmRlbi4gT3BtZXJraW5nOiBkaXQgZ2VicnVpa3QgaGV0IHBzZXVkb2Nyb24gbWVjaGFuaXNtZSBlbiB1IG1vZXQgemVrZXIgemlqbiBkYXQgZGUgaW5nZXZvZXJkZSB0aWpkZW4genVsbGVuIHNhbWVudmFsbGVuIG1ldCB1dyBcJ3BzZXVkb2Nyb24gZ3JhbnVsYXJpdHlcJyBlbiBkYXQgZGVyZ2VsaWprZSBhYW52cmFnZW4genVsbGVuIHdvcmRlbiB1aXRnZXZvZXJkIG9wIHV3IHdlYnNpdGUgb20gdGUgY29udHJvbGVyZW4gb2YgZGUgcHNldWRvY3JvbiBpcyB1aXRnZXZvZXJkLic7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ1NsdWl0IGdlYnJ1aWtlcnMgdWl0IGRpZSBhY3RpZWYgemlqbiBnZXdlZXN0IGluIGRlIGxhYXRzdGUgPGVtPihtaW51dGVuKTwvZW0+JzsKJGxhbmdbJ2luZm9fZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSddID0gJ0FscyBkaXQgaXMgb3BnZWdldmVuLCB6dWxsZW4gZ2VicnVpa2VycyBkaWUgYWN0aWVmIHdhcmVuIGluIGRpdCBhYW50YWwgbW9ldGVuIG5pZXQgd29yZGVuIGdlZHdvbmdlbiBvbSBhZiB0ZSBtZWxkZW4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGUnXSA9ICdXZWV0IHUgemVrZXIgZGF0IHUgZGV6ZSBnZWJydWlrZXIgd2lsdCB2ZXJ3aWpkZXJlbiAlcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZWV4dGVuc2lvbiddID0gJ0hldCBnZcO8cGxvYWRlIGJlc3RhbmQgaXMgZWVuIG5pZXQgdG9lZ2VzdGFhbiBiZXN0YW5kc3R5cGUnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0FsbGUgYmlqYmVob3JlbmRlIGRhdGEgdmFuIGRlIEZyb250RW5kVXNlcnMgbW9kdWxlIGlzIHZlcndpamRlcmQnOwokbGFuZ1snaW5mb19lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnSW5kaWVuIGluZ2VzY2hha2VsZCB6YWwgZGV6ZSBtb2R1bGUgc2FtZW53ZXJrZW4gbWV0IGRlIEUtY29tbWVyY2Ugc3VpdGUuIERlIHZvbGdlbmRlIGluc3RlbGxpbmdlbiB3ZXJrZW4gYWxsZWVuIHdhbm5lZXIgZGV6ZSBpbnN0ZWxsaW5nIGlzIGluZ2VzY2hha2VsZC4nOwokbGFuZ1sncHJvbXB0X2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdWb2xnb3JkZSB2b29yIHNvcnRlcmVuIHZhbiBnZWJldXJ0ZW5pc3Nlbic7CiRsYW5nWydpbmZvX3BhaWRyZWdfc2V0dGluZ3MnXSA9ICdEZSB2b2xnZW5kZSBpbnN0ZWxsaW5nZW4gemlqbiBhbGxlZW4gYWN0aWVmIGluZGllbiBlciBnZWJydWlrIHdvcmR0IGdlbWFha3QgdmFuIHplbGZyZWdpc3RyYXRpZSBlbiBlciBiZXRhYWxkIHdvcmR0IHZvb3IgcmVnaXN0cmF0aWUnOwokbGFuZ1snbm9uZSddID0gJ0dlZW4nOwokbGFuZ1snZGVsZXRlX3VzZXInXSA9ICdWZXJ3aWpkZXIgZ2VicnVpa2VyJzsKJGxhbmdbJ2V4cGlyZV91c2VyJ10gPSAnVmVybG9vcCBnZWJydWlrZXInOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmNhbmNlbGxlZCddID0gJ0Jld2Vya2luZyBvbSB1aXQgdGUgdm9lcmVuIGluZGllbiBhYW5tZWxkaW5nc3ZlcnpvZWsgaXMgZ2Vhbm51bGVlcmQnOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmRlbGV0ZWQnXSA9ICdCZXdlcmtpbmcgb20gdWl0IHRlIHZvZXJlbiBpbmRpZW4gYWFubWVsZGluZ3N2ZXJ6b2VrIGlzIHZlcndpamRlcmQnOwokbGFuZ1snZWNvbW1lcmNlX3NldHRpbmdzJ10gPSAnRS1jb21tZXJjZSBpbnN0ZWxsaW5nZW4nOwokbGFuZ1snc2VjdXJlZmllbGRtYXJrZXInXSA9ICdCZXZlaWxpZ2QgdmVsZCBtYXJrZXInOwokbGFuZ1snc2VjdXJlZmllbGRjb2xvciddID0gJ0JldmVpbGlnZCB2ZWxkIGtsZXVyJzsKJGxhbmdbJ3Byb21wdF9lbmNyeXB0J10gPSAnU2xhIGRlemUgZGF0YSBiZXZlaWxpZ2Qgb3AgaW4gZGUgZGF0YWJhc2UnOwokbGFuZ1snZXJyb3Jfbm90c3VwcG9ydGVkJ10gPSAnRGV6ZSBvcHRpZSB3b3JkdCBuaWV0IG9uZGVyc3RldW5kIGluIHV3IGh1aWRpZ2UgY29uZmlndXJhdGllJzsKJGxhbmdbJ2F1ZGl0X3VzZXJfY3JlYXRlZCddID0gJ0dlYnJ1aWtlciBhdXRvbWF0aXNjaCBnZWNyZcOrZXJkJzsKJGxhbmdbJ2luZm9fYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0luZGllbiBkZSBnZWJydWlrZXIgd29yZHQgZ2Vjb250cm9sZWVyZCBkb29yIGVlbiBleHRlcm5lIGF1dGhlbmNhdGllbW9kdWxlIGRpZSBuaWV0IGJla2VuZCBpcyBpbiBGcm9udEVuZFVzZXJzIG1vZHVsZSBtb2V0IGVyIGRhbiBhdXRvbWF0aXNjaCBlZW4gRkVVIGFjY291bnQgd29yZGVuIGFhbmdlbWFha3Q/JzsKJGxhbmdbJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnQXV0b21hdGlzY2ggb25iZWtlbmRlIGdlYnJ1aWtlcnMgYWFubWFrZW4nOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ1dlZXJnYXZlIGluc3RlbGxpbmdlbic7CiRsYW5nWydpbmZvX3N0ZF9hdXRoX3NldHRpbmdzJ10gPSAnRGUgdm9sZ2VuZGUgaW5zdGVsbGluZ2VuIHdvcmRlbiBhbGxlZW4gdG9lZ2VwYXN0IGluZGllbiBlciBnZWJydWlrIHdvcmR0IGdlbWFha3QgdmFuIGRlIFwnSW5nZWJvdXdkZSBhdXRoZW50aWNhdGllXCcuJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0dW4nXSA9ICdBbHMgdSBOZWUgc2VsZWN0ZWVydCB6YWwgZGUgb3B0aWUgdm9vciBkZSBnZWJydWlrZXIgb20gdmVybG9yZW4gbG9naW4gaW5mb3JtYXRpZSB1aXRnZXNjaGFrZWxkIHdvcmRlbiwgb25nZWFjaHQgYW5kZXJlIGluc3RlbGxpbmdlbic7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHB3J10gPSAnQWxzIHUgTmVlIHNlbGVjdGVlcnQgemFsIGRlIG9wdGllIHZvb3IgZGUgZ2VicnVpa2VyIG9tIGhldCB3YWNodHdvb3JkIG9wbmlldXcgaW4gdGUgc3RlbGxlbiwgdWl0Z2VzY2hha2VsZCB3b3JkZW4uIERpdCBvbmdlYWNodCBhbmRlcmUgaW5zdGVsbGluZ2VuLic7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0dW4nXSA9ICdTdGEgZ2VicnVpa2VycyB0b2UgaHVuIGdlYnJ1aWtlcnNuYWFtIG9wIHRlIHZyYWdlbic7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0cHcnXSA9ICdTdGEgZ2VicnVpa2VycyB0b2UgZWVuIG5pZXV3IHdhY2h0d29vcmQgYWFuIHRlIHZyYWdlbic7CiRsYW5nWydhdXRoX3NldHRpbmdzJ10gPSAnQXV0aGVuY2F0aWUgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ2F1dGhlbnRpY2F0aW9uJ10gPSAnSW5nZWJvdXdkZSBhdXRoZW5jYXRpZSc7CiRsYW5nWydhdXRoX2J1aWx0aW4nXSA9ICdTdGFuZGFhcmQgRkVVIEF1dGhlbmNhdGllJzsKJGxhbmdbJ2F1dGhfbW9kdWxlJ10gPSAnQXV0aGVuY2F0aWUgTW9kdWxlL01ldGhvZGUnOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ0RlIEZyb250ZW5kVXNlcnMgbW9kdWxlIG9uZGVyc3RldW5kIGFsdGVybmF0aWV2ZSBhdXRoZW50aWNhdGllIG1ldGhvZGVzIG1ldCB2ZXJzY2hpbGxlbmRlIG1vZ2VsaWpraGVkZW4uIFNvbW1pZ2UgZnVuY3Rpb25hbGl0ZWl0IHphbCBuaWV0IHdlcmtlbiBhbHMgdSBnZWVuIGdlYnJ1aWsgbWFha3QgdmFuIGRlIGluZ2Vib3V3ZGUgYXV0aGVudGljYXRpZSBtZXRob2RlLic7CiRsYW5nWydlcnJvcl91c2VyX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ0RlIHdhYXJkZSBpbmdldnVsZCB2b29yICVzIGlzIGFsIGluIGdlYnJ1aWsgYmlqIGVlbiBhbmRlcmUgZ2VicnVpa2VyJzsKJGxhbmdbJ3VuaXF1ZSddID0gJ1VuaWVrJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ0RlIHdhYXJkZSBpbmdlc3RlbGQgdm9vciAlcyAoJXMpIGlzIG5pZXQgdW5pZWsnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ0RlemUgZWlnZW5zY2hhcCBtb2V0IHVuaWVrIHppam4gdGVuIG9wIHppY2h0ZSB2YW4gYWxsZSBnZWJydWlrZXJzJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdMb2dpbnNlc3NpZSB0aW1lb3V0IHdhYXJzY2h1d2luZyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1V3IGxvZ2luIHNlc3NpZSBpcyBiaWpuYSB2ZXJsb3Blbi4gS2xpayBvcCBPSyBvbSB1dyBhY3Rpdml0ZWl0IG9wIGRlIHdlYnNpdGUgdGUgYmV2ZXN0aWdlbi4nOwokbGFuZ1snb2snXSA9ICdPSyc7CiRsYW5nWydyZXNldHNlc3Npb25fdGVtcGxhdGUnXSA9ICdIZXJzdGVsIFNlc3NpZSBTamFibG9vbic7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdEaXQgaXMgZGUgdmVsZG5hYW0sIGRlemUga2FuIGFhbmdlcm9lcGVuIHdvcmRlbiBpbiBlZW4gc21hcnR5LiBIZXQgbWFnIGFsbGVlbiBiZXN0YWFuIHVpdCBhbGZhbnVtZXJpZWtlIHRla2VucyBlbiB1bmRlcnNjb3Jlcy4nOwokbGFuZ1sndmlzaXRvcnNfdGFiJ10gPSAnQmV6b2VrZXJzJzsKJGxhbmdbJ2ZldV9ncm91cHNfcHJvbXB0J10gPSAnU2VsZWN0ZWVyIGVlbiBvZiBtZWVyIEZFVS1ncm9lcGVuIGRpZSBkZXplIHBhZ2luYSBtb2dlbiB6aWVuJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdFciBtb2V0IGVlbiBncm9lcCB6aWpuIGdlc2VsZWN0ZWVyZCc7CiRsYW5nWydzZWxlY3RvbmUnXSA9ICdTZWxlY3RlZXIgw6nDqW4nOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ1N0YXJ0IGphYXInOwokbGFuZ1snZW5kX3llYXInXSA9ICdFaW5kIGphYXInOwokbGFuZ1snZGF0ZSddID0gJ0RhdHVtJzsKJGxhbmdbJ3Byb21wdF90aHVtYm5haWxfc2l6ZSddID0gJ01pbmlhdHV1cmFmbWV0aW5nJzsKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdHZWJydWlrZXJzZ3JvZXAgZ2V3aWp6aWdkJzsKJGxhbmdbJ2Vycm9yX3Rvb21hbnlzZWxlY3RlZCddID0gJ1RlIHZlZWwgZ2VicnVpa2VycyBnZXNlbGVjdGVlcmQgdm9vciBlZW4gYnVsayBvcGVyYXRpZS4uLiBWZXJsYWFnIGhldCBhYW50YWwgdG90IDI1MCBvZiBtaW5kZXIuJzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnV2VldCB1IHpla2VyIGRhdCB1IGRlIGdlc2VsZWN0ZWVyZGUgZ2VicnVpa2VycyB3aWx0IHZlcndpamRlcmVuPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdWZXJ3aWpkZXIgZ2VzZWxlY3RlZXJkZW4nOwokbGFuZ1sncHJvbXB0X3JhbmRvbXVzZXJuYW1lJ10gPSAnR2VuZXJlZXIgd2lsbGVrZXVyaWdlIGdlYnJ1aWtlcnNuYW1lbiB3YW5uZWVyIGVyIG5pZXV3ZSBnZWJydWlrZXJzIHdvcmRlbiBhYW5nZW1hYWt0JzsKJGxhbmdbJ21vbnRocyddID0gJ21hYW5kZW4nOwokbGFuZ1sncHJvbXB0X2V4cGlyZWFnZSddID0gJ1N0YW5kYWFyZCBnZWJydWlrZXIgdmVybG9vcHBlcmlvZGUnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnTm90aWZpY2F0aWUgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnRWlnZW5zY2hhcCBpbnN0ZWxsaW5nZW4nOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdWZXJ3aWp6aW5nc2luc3RlbGxpbmdlbic7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnQWxnZW1lbmUgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdTZXNzaWUgZW4gY29va2llIGluc3RlbGxpbmdlbic7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ1ZlbGRpbnN0ZWxsaW5nZW4nOwokbGFuZ1sncHJvcF90ZXh0YXJlYV93eXNpd3lnJ10gPSAnU3RhIGhldCBnZWJydWlrIHZhbiBXWVNJV1lHIHRvZSB2b29yIGRpdCB0ZWtzdHZlbGQnOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnQWFucGFzc2VuIGdlYnJ1aWtlcic7CiRsYW5nWydub2lubGluZSddID0gJ0dlYnJ1aWsgZ2VlbiBpbmxpbmUgZm9ybXVsaWVyZW4nOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdLbGlrIGhpZXIgYWxzIHUgdXcgaW5sb2dnZWdldmVucyBiZW50IHZlcmdldGVuJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdLbGlrIGhpZXIgYWxzIHUgdXcgd2FjaHR3b29yZCBiZW50IHZlcmdldGVuJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnS2xpayBoaWVyIG9tIGFmIHRlIG1lbGRlbic7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2xpayBoaWVyIG9tIHV3IHdhY2h0d29vcmQgZW4gYW5kZXJlIGluZm9ybWF0aWUgaW4gdGUgc3RlbGxlbic7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ0dlZWYgZ2VicnVpa2Vyc3RlbXBsYXRlIHdlZXInOwokbGFuZ1snZXZlbnQnXSA9ICdHZWJldXJ0ZW5pcyc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnRkVVIEdlYmV1cnRlbmlzc2Vubm90aWZpY2F0aWUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnTm90aWZpY2F0aWUgZS1tYWlsYWRyZXMnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ05vdGlmaWNhdGllIGUtbWFpbCB0ZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdOb3RpZmljYXRpZSBlLW1haWxvbmRlcndlcnAnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdFLW1haWwgbm90aWZpY2F0aWVzJzsKJGxhbmdbJ09uTG9naW4nXSA9ICdCaWogYWFubWVsZGVuJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnQmlqIGFmbWVsZGVuJzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ0JpaiB2ZXJsb29wIHZhbiBzZXNzaWUnOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnQmlqIGhldCBhYW5tYWtlbiB2YW4gbmlldXdlIGdlYnJ1aWtlcic7CiRsYW5nWydPbkRlbGV0ZVVzZXInXSA9ICdCaWogaGV0IHZlcndpamRlcmVuIHZhbiBlZW4gZ2VicnVpa2VyJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ1dhbm5lZXIgZ2VicnVpa2Vyc2luc3RlbGxpbmdlbiB3b3JkZW4gZ2V3aWp6aWdkJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdXYW5uZWVyIGVlbiBnZWJydWlrZXJzZ3JvZXAgd29yZHQgYWFuZ2VtYWFrdCc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnV2FubmVlciBlZW4gZ2VicnVpa2Vyc2dyb2VwIHdvcmR0IHZlcndpamRlcmQnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdEZSB2ZXJsb3JlbiBsb2dpbi1nZWdldmVucyBmdW5jdGlvbmFsaXRlaXQgaXMgc3VjY2Vzdm9sIGFmZ2Vyb25kLiBXZSBoZWJiZW4gZWVuIHVuaWVrZSBnZWJydWlrZXJzbmFhbSBnZXZvbmRlbiBkaWUgb3ZlcmVlbmtvbXQgbWV0IGRlIGdlZ2V2ZW5zIGRpZSB1IGhlYnQgb3BnZWdldmVuLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnVXcgZ2VicnVpa2Vyc25hYW0gaXMnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnV2UgYmV2ZWxlbiB1IGFhbiBvbSBkZXplIGluZm9ybWF0aWUgb3AgZWVuIHZlaWxpZ2UgbWFhciB3ZWwgdG9lZ2Fua2VsaWprZSBwbGFhdHMgb3AgdGUgc2xhYW4uJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdQYWdpbmEgSUQvQWxpYXMgb20gbmFhciBkb29yIHRlIHZlcndpanplbiBuYSBoZXQgd2lqemlnZW4gdmFuIGluc3RlbGxpbmdlbic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdQYWdpbmEgSUQvQWxpYXMgb20gbmFhciBkb29yIHRlIHZlcndpanplbiBuYSBkZSBjb2RldmVyaWZpY2F0aWUgKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ1ZlcmdldGVuIGdlYnJ1aWtlcnNuYWFtIGRldGFpbHMgc2phYmxvb24nOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdWZXJnZXRlbiBnZWJydWlrZXJzbmFhbSBiZXZlc3RpZ2luZ3Mgc2phYmxvb24nOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdGb3V0OiBNZWVyIGRhbiBlZW4gZ2VicnVpa2Vyc2FjY291bnQga29tdCBvdmVyZWVuIG1ldCBkZSBvcGdlZ2V2ZW4gZWlnZW5zY2hhcHBlbic7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdGb3V0OiBLYW4gZ2VlbiBvdmVyZWVua29tc3RpZ2UgZ2VicnVpa2VyIHZpbmRlbic7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnRm91dDogS2FuIGdlZW4gZ3JvZXAgdmluZGVuIG1ldCBkZSBvcGdlZ2V2ZW4gbmFhbSc7CiRsYW5nWydyZWFkb25seSddID0gJ0FsbGVlbiBsZXplbic7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnR2VicnVpa2VyIG1hbmlwdWxhdG9yIGtsYXNzZSc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdBZmdlbWVsZCBkb29yIGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ0xhYXQgYWxsZWVuIGluZ2Vsb2dkZSBnZWJydWlrZXJzIHppZW4nOwokbGFuZ1sncHJvbXB0X2xvZ291dCddID0gJ01lbGQgZGV6ZSBnZWJydWlrZXIgYWYnOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAnR2VicnVpa2VyZWlnZW5zY2hhcHBlbic7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0dlYnJ1aWtlcnNnZXNjaGllZGVuaXMnOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0ZXJlbic7CiRsYW5nWydjbGVhciddID0gJ0hlcnN0ZWxsZW4nOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnRXhwb3J0ZWVyIGdlYnJ1aWtlcnNnZXNjaGllZGVuaXMgbmFhciBBU0NJSSB2YW4gbWluc3RlbnMnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdWZXJ3aWpkZXIgZ2VicnVpa2Vyc2dlc2NoaWVkZW5pcyB2YW4gcmVjb3JkcyBkaWUgbWluc3RlbnMnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnQWNjb3VudGdlZ2V2ZW5zIHZlcmdldGVuPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFeHBvcnRlZXIgZ3JvZXBzZGVmZW5pdGllIChlbiBlaWdlbnNjaGFwcGVuKSBuYWFyIFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnT25kZXJob3VkIGdlYnJ1aWtlcnNnZXNjaGllZGVuaXMnOwokbGFuZ1sneWVzJ10gPSAnSmEnOwokbGFuZ1snbm8nXSA9ICdOZWUnOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnVmFuJzsKJGxhbmdbJ2RhdGVfYWxscmVjb3JkcyddID0gJyoqIEdlZW4gbGltaWV0ICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ0VlbiB1dXIgb3VkJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJ1plcyB1dXIgb3VkJzsKJGxhbmdbJ2RhdGVfdHdlbHZlaG91cm9sZCddID0gJ1R3YWFsZiB1dXIgb3VkJzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAnRWVuIGRhZyBvdWQnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnRWVuIHdlZWsgb3VkJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdUd2VlIHdla2VuIG91ZCc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnRWVuIG1hYW5kIG91ZCc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnRHJpZSBtYWFuZGVuIG91ZCc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ1plcyBtYWFuZGVuIG91ZCc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdFZW4gamFhciBvdWQnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3JvZXBlcmVuIGVuIHNvcnRlcmVuJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzZm91bmQnXSA9ICdSZWNvcmRzIGRpZSBvdmVyZWVua29tZW4gbWV0IGhldCB2b2xnZW5kZSBjcml0ZXJpdW0nOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICdBZmxvcGVuZCBvcCBnZWJydWlrZXJzbmFhbSc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfYXNjJ10gPSAnT3Bsb3BlbmQgb3AgZ2VicnVpa2Vyc25hYW0nOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfZGVzYyddID0gJ0FmbG9wZW5kIG9wIGRhdHVtJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ09wbG9wZW5kIG9wIGRhdHVtJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ0FmbG9wZW5kIG9wIGdlYmV1cnRlbmlzdHlwZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ09wbG9wZW5kIG9wIGdlYmV1cnRlbmlzdHlwZSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdBZmxvcGVuZCBvcCBJUCBBZHJlcyc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ09wbG9wZW5kIG9wIElQIEFkcmVzJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdHZWVuIGdlc2NoaWVkZW5pcyBnZXZvbmRlbic7CiRsYW5nWydyZXNldCddID0gJ0hlcnN0ZWxsZW4nOwokbGFuZ1sncHJvbXB0X2dyb3VwX2lwJ10gPSAnU29ydGVyZW4gb3AgSVAgYWRyZXMnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdHZWJldXJ0ZW5pc3R5cGUgZmlsdGVyJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ0FsbGVlbiBnZWJldXJ0ZW5pc3NlbiB3ZWVyZ2V2ZW4gZGllIG1pbmRlciB6aWpuIGRhbic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnUGFnaW5hbGltaWV0JzsKJGxhbmdbJ2ZvciddID0gJ3Zvb3InOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdHZWJydWlrZXJzZ2VzY2hpZWRlbmlzcmFwcG9ydCc7CiRsYW5nWyd1bmtub3duJ10gPSAnT25iZWtlbmQnOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQIEFkcmVzJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdHZWJldXJ0ZW5pc3R5cGUnOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXR1bSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnVGVydWcnOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ0ltcG9ydCB2b2x0b29pZCc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdSZWdlbHMgdWl0Z2V2b2VyZCc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnUHJvYmxlbWVuIG9wZ2V0cmVkZW4nOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ1JlY29yZHMgdG9lZ2V2b2VnZCc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnS2FuIGdlZW4gZWlnZW5zY2hhcHBlbiB2aW5kZW4gdm9vciBkZSBncm9lcCAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ0tyaWpndCBnZWVuIHJlYWN0aWUgdmFuIGRlIFNNVFAtc2VydmVyJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0hldCBiZXN0YW5kICglcykga2FuIG5pZXQgZ2V2b25kZW4gd29yZGVuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdPbmdlbGRpZ2Ugd2FhcmRlIHZvb3IgZHJvcGRvd24gb2YgbWVlcmtldXplIHZlbGQgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdIZXQgdmVsZCAlcyBvdmVyc2NocmlqZHQgZGUgbWF4aW11bSBsZW5ndGUnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQgZm91dCAocmVnZWwgJXMpOiAlcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0eWRlZm5zJ10gPSAnS2FuIGRlIGVpZ2Vuc2NoYXAgZGVmZW5pdGllcyBuaWV0IHZpbmRlbiAoaW50ZXJuZSBmb3V0KSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdQcm9ibGVlbSBtZXQgaGV0IHZlcmtyaWpnZW4gdmFuIGdlYnJ1aWtlcnNpbmZvcm1hdGllJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHJlcXVpcmVkZmllbGQnXSA9ICdLYW4gZ2VlbiBrb2xvbSB2aW5kZW4gZGllIG92ZXJlZW5rb210IG1ldCBoZXQgdmVyZWlzdGUgdmVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0thbiBnZWVuIGVpZ2Vuc2NoYXBwZW4gdmluZGVuIHZvb3IgZGUgZ2VzcGVjaWZpY2VlcmRlIGdyb2VwJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnXSA9ICdIZXQgYmVzdGFuZCBhYW5nZWdldmVuIHZvb3IgZGUgaW1wb3J0IGlzIG5pZXQgaW4gaGV0IGp1aXN0ZSBmb3JtYWF0JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90b3BlbmZpbGUnXSA9ICdLYW4gYmVzdGFuZCBuaWV0IG9wZW5lbic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0ZWVyIGdlYnJ1aWtlcnMgaW4gZGV6ZSBncm9lcCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnZvZXIgQ1NWLWJlc3RhbmQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdJbnZvZXIgWE1MLWJlc3RhbmQnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRXhwb3J0ZWVyIGdlYnJ1aWtlcnMnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0ZWVyIGdlYnJ1aWtlcnMnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnSGVyc3RlbCc7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0RvZWxtYXAgdm9vciBhZmJlZWxkaW5nZW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdFciBpcyBlZW4gcHJvYmxlZW0gb3BnZXRyZWRlbiBtZXQgZWVuIG1pc3NlbmRlIChtYWFyIHdlbCB2ZXJlaXN0ZSkgdXBsb2FkJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdQcm9ibGVlbSBtZXQgaGV0IHBhcnNlbiB2YW4gaGV0IGdldnJhYWdkZSBYTUwtYmVzdGFuZCc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnRWVuIGdyb2VwIG1ldCBnZWJydWlrZXJzIGthbiBuaWV0IHdvcmRlbiB2ZXJ3aWpkZXJkJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdEZXplIGdlYnJ1aWtlciBpcyByZWVkcyBpbmdlbG9nZCc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdEZSB0ZWtzdCB2YW4gZGUgYWZiZWVsZGluZyBpcyBuaWV0IGNvcnJlY3QgaW5nZXZvZXJkJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnXSA9ICdTdGEgZ2VicnVpa2VycyB0b2UgbWVlciBkYW4gZWVuIGtlZXIgYWFuIHRlIG1lbGRlbic7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnQmVzdGFuZHN0eXBlbiBkaWUgZ2VicnVpa2VycyBtb2dlbiB1cGxvYWRlbic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdFciBpcyBlZW4gZ2ViZXVydGVuaXMgZ2VnZW5lcmVlcmQgdG9lbiBlZW4gZ2VicnVpa2VyIGFhbm1lbGRkZSBvcCBoZXQgc3lzdGVlbSc7CiRsYW5nWydldmVudF9pbmZvX09uTG9nb3V0J10gPSAnRXIgaXMgZWVuIGdlYmV1cnRlbmlzIGdlZ2VuZXJlZXJkIHRvZW4gZWVuIGdlYnJ1aWtlciB6aWNoIGFmbWVsZGUgb3AgaGV0IHN5c3RlZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdFciBpcyBlZW4gZ2ViZXVydGVuaXMgZ2VnZW5lcmVlcmQgdG9lbiBlZW4gZ2VicnVpa2Vyc3Nlc3NpZSB2ZXJsaWVwJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnRXIgaXMgZWVuIGdlYmV1cnRlbmlzIGdlZ2VuZXJlZXJkIHRvZW4gZWVuIG5pZXV3ZSBnZWJydWlrZXIgaXMgYWFuZ2VtYWFrdCc7CiRsYW5nWydldmVudF9pbmZvX09uUmVmcmVzaFVzZXInXSA9ICdFciBpcyBlZW4gZ2ViZXVydGVuaXMgZ2VnZW5lcmVlcmQgdG9lbiBkZSBzZXNzaWUgdmFuIGRlIGdlYnJ1aWtlciB3ZXJkIHZlcm5pZXV3ZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0VyIGlzIGVlbiBnZWJldXJ0ZW5pcyBnZWdlbmVyZWVyZCB0b2VuIGRlIGdlYnJ1aWtlcnNpbmZvcm1hdGllIGlzIGJpamdld2Vya3QnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdFciBpcyBlZW4gZ2ViZXVydGVuaXMgZ2VnZW5lcmVlcmQgdG9lbiBlZW4gZ2VicnVpa2Vyc2FjY291bnQgaXMgdmVyd2lqZGVyZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdFciBpcyBlZW4gZ2ViZXVydGVuaXMgZ2VnZW5lcmVlcmQgdG9lbiBlZW4gZ2VicnVpa2VyZ3JvZXAgd2VyZCBhYW5nZW1hYWt0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVHcm91cCddID0gJ0VyIGlzIGVlbiBnZWJldXJ0ZW5pcyBnZWdlbmVyZWVyZCB0b2VuIGVlbiBnZWJydWlrZXJzZ3JvZXAgaXMgYmlqZ2V3ZXJrdCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdFciBpcyBlZW4gZ2ViZXVydGVuaXMgZ2VnZW5lcmVlcmQgdG9lbiBlZW4gZ2VicnVpa2VyZ3JvZXAgaXMgdmVyd2lqZGVyZCc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQmFja2VuZCBncm9lcCc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIERlIHZvbGdlbmRlIHZlbGRlbiB6aWpuIHZvbGxlZGlnZSBzbWFydHkgdGVtcGxhdGVzLjxici8+RXZlbmFscyByZWVkcyBiZXN0YWFuZGUgc21hcnR5IHZhcmlhYmVsZW4gZW4gcGx1Z2lucywgZGUgeyR1c2VybmFtZX0gZW4geyRncm91cH0gdmFyaWFiZWxlbiB6aWpuIGJlc2NoaWtiYWFyLiAgPGVtPihEZSB7JGdyb3VwfSBrb210IG92ZXJlZW4gbWV0IGRlIGVlcnN0ZSBnZWJydWlrZXJzZ3JvZXAgd2FhciBkZSBnZWJydWlrZXIgYWFuIHRvZWJlaG9vcmQuKTwvZW0+Lic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnV2lqemlnIGRpdCB2ZWxkIG9tIGhldCB3YWNodHdvb3JkIHZhbiBkZSBnZWJydWlrZXIgb3BuaWV1dyBpbiB0ZSBzdGVsbGVuJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdXaWp6aWcgZGl0IHZlbGQgb20gaGV0IHdhY2h0d29vcmQgdmFuIGRlIGdlYnJ1aWtlciBvcG5pZXV3IGluIHRlIHN0ZWxsZW4nOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnRXIgYmVzdGFhdCBhbCBlZW4gZ2VicnVpa2VyIG1ldCBkZXplIG5hYW0nOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnR2VlbiByZXN1bHRhdGVuIHRlcnVnIHZhbiBkZSBjc3YgZXhwb3J0JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0xlbmd0ZSB2YW4gZ2VicnVpa2Vyc25hYW12ZWxkJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0xlbmd0ZSB2YW4gd2FjaHR3b29yZHZlbGQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ01pbi9NYXggd2FjaHR3b29yZGxlbmd0ZSBpcyBvbmdlbGRpZyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTWluL01heCBsZW5ndGUgdmFuIGdlYnJ1aWtlcnNuYWFtIGlzIG9uZ2VsZGlnJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdPbmdlbGRpZyBlLW1haWxhZHJlcyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ1dlIGt1bm5lbiBnZWVuIGUtbWFpbGFkcmVzIHZpbmRlbiB2b29yIGRpdCBhY2NvdW50JzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdGb3V0IHRpamRlbnMgaGV0IG9wc2xhYW4gdmFuIGRlIGdlYnJ1aWtlcnNpbmZvcm1hdGllJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ0ZvdXQgdGlqZGVucyBoZXQgb3BzbGFhbiB2YW4gZGUgaW5zdGVsbGluZ2VuJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdHZWJydWlrZXIgdG9lZ2V2b2VnZCAlcyA9ICVzJzsKJGxhbmdbJ3VzZXJfZGVsZXRlZCddID0gJ0dlYnJ1aWtlciB2ZXJ3aWpkZXJkIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ0VpZ2Vuc2NoYXAnOwokbGFuZ1sndmFsdWVyZWdleCddID0gJ1dhYXJkZSAocmVndWxpZXJlIGV4cHJlc3NpZSknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdMZXQgb3A6IERlemUgdmVsZGVuIGhlYmJlbiBpbnZsb2VkIG9wIGRlIGdyb290dGUgdmFuIGRlIGludm9lcnZlbGRlbiB2b29yIGZvcm11bGllcmVuLiBWZXJsYWdlbiB2YW4gZGl0IGdldGFsIG9wIGVlbiBiZXN0YWFuZGUgd2Vic2l0ZSB3b3JkdCBuaWV0IGFhbmdlcmFkZW4nOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ1dlZXQgdSB6ZWtlciBkYXQgdSBkZXplIG1vZHVsZSBpbnN0ZWxsaW5nZW4gd2lsdCBhYW5wYXNzZW4/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFLW1haWxhZHJlcyBpcyBhbCBpbmdlYnJ1aWt0JzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ0dlYnJ1aWsgY29va2llcyBvbSBkZSBsb2dpbmdlZ2V2ZW5zIHRlIG9udGhvdWRlbic7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ05hYW0gdmFuIGRlIGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1N0YSB0d2VlIGtlZXIgaGV0emVsZmRlIGUtbWFpbGFkcmVzIHRvZSc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdIZXQgZS1tYWlsYWRyZXMgaXMgZGUgZ2VicnVpa2Vyc25hYW0nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKFN0YSBtZWVyZGVyZSBnZWJydWlrZXJzIG1ldCBoZXQgemVsZmRlIGUtbWFpbGFkcmVzIHRvZSknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyhnZWJydWlrZXJzIGUtbWFpbGFkcmVzIGlzIGRlIGdlYnJ1aWtlcnNuYWFtIC0tIGdlYnJ1aWsgZGl0IG5pZXQgaW4gY29tYmluYXRpZSBtZXQgZGUgb3B0aWUgIlN0YSB0d2VlIGtlZXIgaGV0emVsZmRlIGUtbWFpbGFkcmVzIHRvZSIhKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ1N0YSBkdWJiZWxlIFwnd2FjaHR3b29yZCB2ZXJnZXRlblwnLW1lbGRpbmdlbiB0b2U/JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJyhTdGEgdG9lIGdlYnJ1aWtlcnMgZWVuIHdhY2h0d29vcmQgcmVzZXQgYWFuIHRlIHZyYWdlbiwgb29rIGFscyB6ZSBkZSB2b3JpZ2UgbmlldCBoZWJiZW4gYmVudXQpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnR2VicnVpayBGcm9udEVuZFVzZXIgc3BlY2lmaWVrZSByZWNodGVuPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFhbCB6aWpuIGRlIEZFVS1yZWNodGVuIGhldHplbGZkZSBhbHMgZGUgcmVjaHRlbiBpbiBoZXQgYWRtaW5pc3RyYXRvciBnZWRlZWx0ZSB6b2FscyBHZWJydWlrZXIgdG9ldm9lZ2VuLCBHcm9lcCB0b2V2b2VnZW4sIGV0Yy4gQWxzIHUgZGV6ZSBvcHRpZSBzZWxlY3RlZXJ0IGtvbWVuIGVyIGFwYXJ0ZSByZWNodGVuIHZvb3IgaGV0IGJlaGVlciB2YW4gRkVVLWdlYnJ1aWtlcnMuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnS2FuIGhldCBnZcO8cGxvYWRlIGJlc3RhbmQgbmlldCB2aW5kZW4gKGludGVybmUgZm91dCknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdFciB3YXMgZWVuIHByb2JsZWVtIG1ldCBoZXQgZ2XDvHBsb2FkZSBiZXN0YW5kLiBQcm9iZWVyIGhldCBub2cgZWVuIGtlZXInOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnVSBoZWJ0IGdlZW4gZ2VicnVpa2Vyc25hYW0gaW5nZXZvZXJkJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ1UgaGVidCB1dyBlLW1haWxhZHJlcyBuaWV0IGluZ2V2b2VyZCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdVIGhlYnQgZ2VlbiB3YWNodHdvb3JkIGluZ2V2b2VyZCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmRnZWJydWlrZXIgYWZnZW1lbGQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnRnJvbnRlbmRnZWJydWlrZXIgYWFuZ2VtZWxkJzsKJGxhbmdbJ2VkaXRwcm9wX2luZm9tc2cnXSA9ICc8Zm9udCBjb2xvcj0icmVkIj48Yj5XRUVTIFZPT1JaSUNIVEc8L2I+IFdhbm5lZXIgdSBlaWdlbnNjaGFwcGVuIHZhbiBlZW4gdmVsZCBkaWUgaW4gZ2VicnVpayBpcyB3aWp6aWd0IGRhbiBrYW4gdSBkZXplIHdlYnNpdGUgc2NoYWRlIHRvZWJyZW5nZW4hIDxpPihtZXQgbmFtZSBhbHMgdSB2ZWxkYWZtZXRpbmdlbiBrbGVpbmVyIG1hYWt0KTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnRGV6ZSBmdW5jdGlvbmFsaXRlaXQgd2Vya3QgbmlldCBvcCBXaW5kb3dzJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdNYWFrIGdlZW4gdmVsZCBhYW4gdm9vciBkZSBlaWdlbnNjaGFwIGdlYnJ1aWtlcnNuYWFtIG9mIHdhY2h0d29vcmQuIERlemUgZWlnZW5zY2hhcHBlbiB6aWpuIGFsIHJlZWRzIGluZ2Vib3V3ZCBpbiBkZSBGcm9udEVuZFVzZXJzIG1vZHVsZS4nOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydGVlciBnZWJydWlrZXJzIG5hYXIgQ1NWJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydGVlcic7CiRsYW5nWydpbXBvcnRjc3YnXSA9ICdJbXBvcnRlZXInOwokbGFuZ1snYWRtaW4nXSA9ICdCZWhlZXInOwokbGFuZ1snZWRpdHByb3AnXSA9ICdXaWp6aWcgZWlnZW5zY2hhcDogPGVtPiVzPC9lbT4nOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW11bSBsZW5ndGUnOwokbGFuZ1snY3JlYXRlZCddID0gJ0FhbmdlbWFha3QnOwokbGFuZ1snc29ydGJ5J10gPSAnU29ydGVyZW4gb3AnOwokbGFuZ1snc29ydCddID0gJ1NvcnRlcmluZyc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdHZWJydWlrZXJzIGluIGRlIGdlc2VsZWN0ZWVyZGUgZ3JvZXAoZW4pJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0xpbWl0ZWVyIHJlc3VsYXRlbiBuYWFyJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0thbiBnZWVuIEUtbWFpbCB2ZWxkIHZpbmRlbiB2b29yIGRlemUgZ2VicnVpa2VyLiBOZWVtIGNvbnRhY3Qgb3AgbWV0IHV3IHN5c3RlZW1iZWhlZXJkZXIuJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnUGFnaW5hIElEL0FsaWFzIHZvb3IgV2FjaHR3b29yZCBWZXJnZXRlbi1mb3JtdWxpZXInOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdQYWdpbmEgSUQvQWxpYXMgdm9vciBXaWp6aWcgSW5zdGVsbGluZ2VuLWZvcm11bGllcic7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1BhZ2luYSBJRC9BbGlhcyBvbSBuYWFyIHRlIHZlcndpanplbiBuYSBhYW5tZWxkZW4gKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdQYWdpbmEgSUQvQWxpYXMgb20gbmFhciB0ZSB2ZXJ3aWp6ZW4gbmEgYWZtZWxkZW4gKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdTb3J0ZWVyIHZvbGdvcmRlJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0VlbiBhYW50YWwgZ2VicnVpa2VycyB6aXR0ZW4gaW4gaGV0IHByb2NlcyB2YW4gaGV0IGhlcnN0ZWxsZW4gdmFuIHZlcmdldGVuIHdhY2h0d29vcmRlbi4gT3AgZGl0IG1vbWVudCBpcyBkaXQgYWFudGFsOic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1ZlcndpamRlciBhbGxlIGl0ZW1zIHZhbiBtZWVyIGRhbiBlZW4gd2VlayBvdWQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnVmVyd2lqZGVyIGFsbGUgaXRlbXMgdmFuIG1lZXIgZGFuIGVlbiBtYWFuZCBvdWQnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnVmVyd2lqZGVyZSBhbGxlIHJlY29yZHMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1dlZXQgdSBoZXQgemVrZXI/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnRXIgaXMgZWVuIG9uZ2VsZGlnZSBjb2RlIGluZ2V2b2VyZCwgcHJvYmVlciBoZXQgb3BuaWV1dyc7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnRWVuIHRpamRlbGlqa2UgY29kZSB2b29yIHV3IGdlYnJ1aWtlcnNpZCBrb24gbmlldCB3b3JkZW4gZ2V2b25kZW4gaW4gZGUgZGF0YWJhc2UnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdTamFibG9vbiBnZWJydWlrdCBmb29yIGhldCB3ZWVyZ2V2ZW4gdmFuIGNvbnRyb2xlZm9ybXVsaWVyJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdTamFibG9vbiBnZWJydWlrdCB2b29yIGRlIHdhY2h0d29vcmQgdmVyZ2V0ZW4gZS1tYWlsJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdVIG9mIGllbWFuZCBhbmRlcnMgaGVlZnQgYWwgZWVyZGVyIGdlcHJvYmVlcmQgb20gZWVuIHdhY2h0d29vcmQgaGVyc3RlbCBhYW4gdGUgdnJhZ2VuIHZvb3IgZGl0IGFjY291bnQuIENvbnRyb2xlZXIgdXcgZS1tYWlsLCB3ZWxsaWNodCBoZWVmdCB1IGRlIGUtbWFpbCBtZXQgaW5zdHJ1Y3RpZXMgYWwgcmVlZHMgb250dmFuZ2VuIG92ZXIgaG9lIHUgdXcgd2FjaHR3b29yZGVuIG9wbmlldXcga3VudCBpbnN0ZWxsZW4uJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdEYXRhYmFzZSBmb3V0JzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1Ugb250dmFuZ3QgZGl0IGJlcmljaHQgb21kYXQgaWVtYW5kIG9wIG9uemUgc2l0ZSBoZWVmdCBhYW5nZWdldmVuIGRhdCB1IHV3IHdhY2h0d29vcmQgYmVuIHZlcmdldGVuLiBBbHMgZGl0IGhldCBnZXZhbCBpcywgbGVlcyBkYW4gZGUgb25kZXJzdGFhbmRlIGluc3RydWN0aWVzLiBBbHMgdSBnZWVuIGlkZWUgaGVlZnQgd2Fhcm9tIHUgZGl0IGJlcmljaHQgb250dmFuZ3QsIGRhbiBrdW50IHUgZGl0IGJlcmljaHQgem9uZGVyIHByb2JsZW1lbiB2ZXJ3aWpkZXJlbiBlbiBiZWRhbmtlbiB3ZSB1IHZvb3IgdXcgdGlqZC4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdDb2RlJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ0RlIHZvbGdlbmRlIGNvZGUgaXMgd2lsbGVrZXVyaWcgYWFuZ2VtYWFrdCBvbSB0ZSBjb250cm9sZXJlbiBvZiBoZXQgZWNodCBvbSB1dyBnZWJydWlrZXJzYWNjb3VudCBnYWF0LiBBbHMgdSBvcCBkZSBvbmRlcnN0YWFuZGUgbGluayBrbGlrdCBkYW4ga29tdCB1IG9wIGRlIHdlYnBhZ2luYSB3YWFyIGRlemUgY29kZSBhbCByZWVkcyB2b29yIHUgaXMgaW5nZXZvZXJkLiBNb2NodCBkYXQgbmlldCBoZXQgZ2V2YWwgemlqbiwgZGFuIGlzIHV3IGNvZGU6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnQWxzIHUgb3AgZGUgdm9sZ2VuZGUgbGluayBrbGlrdCBrb210IHUgb3AgZGUgd2VicGFnaW5hIHdhYXIgdSBkZSBib3ZlbnN0YWFuZGUgY29kZSBrdW50IGludm9lcmVuIGVuIHUgdmVydm9sZ2VucyB1dyB3YWNodHdvb3JkIG9wbmlldXcga3VudCBpbnN0ZWxsZW46JzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdXYWNodHdvb3JkIHZlcmdldGVuJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnS2FuIGRlIENNU01haWxlciBtb2R1bGUgbmlldCB2aW5kZW4nOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnRXIgaXMgZWVuIEUtbWFpbCB2ZXJ6b25kZW4gbWV0IGluc3RydWN0aWVzIG5hYXIgJXMgb3ZlciBoZXQgb3BuaWV1dyBpbnN0ZWxsZW4gdmFuIHV3IHdhY2h0d29vcmQuIEJlZGFua3QnOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdVIGJlbnQgdXcgd2FjaHR3b29yZCBrd2lqdCBvZiB2ZXJnZXRlbi4gVHlwZSBoaWVyIHV3IGdlYnJ1aWtlcnNuYWFtIGVuIGFscyB3ZSBkZXplIGt1bm5lbiB2aW5kZW4genVsbGVuIHdlIGVlbiBFLW1haWwgbmFhciB1IHZlcnplbmRlbiBtZXQgaW5zdHJ1Y3RpZXMgb3ZlciBob2UgdSB1dyB3YWNodHdvb3JkIG9wbmlldXcga3VudCBpbnN0ZWxsZW4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdWZXJnZXRlbiB3YWNodHdvb3JkIHNqYWJsb29uJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ1ZlcmdldGVuIGdlYnJ1aWtlcnNuYWFtIHNqYWJsb29uJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ0VpZ2Vuc2NoYXAgJXMgbmlldCBnZXZvbmRlbic7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAnRWlnZW5zY2hhcHBlbiBnZXZvbmRlbic7CiRsYW5nWydhZGRwcm9wJ10gPSAnRWlnZW5zY2hhcCB0b2V2b2VnZW4nOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0VlbiB2ZXJwbGljaHQgdmVsZCAoJXMpIGlzIGxlZWcnOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdWb2VyIGVlbiBuaWV1dyB3YWNodHdvb3JkIGluIG9tIHV3IHdhY2h0d29vcmQgdGUgdmVyYW5kZXJlbic7CiRsYW5nWydlcnJvcl9ub3Rsb2dnZWRpbiddID0gJ0hldCB6aWV0IGVyIG5pZXQgbmFhciB1aXQgZGF0IHUgYmVudCBhYW5nZW1lbGQnOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ0luc3RlbGxpbmdlbic7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJhdGllJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnRGl0IGFjY291bnQgaXMgdmVybG9wZW4nOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ1ZlcmtlZXJkZSBFLW1haWwgYWRyZXMgb3Bib3V3JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnT25nZWxkaWdlIHZlcmxvb3BkYXR1bS4gRGl0IGthbiBzeXN0ZWVtZ2VyZWxhdGVlcmQgemlqbi4gUHJvYmVlciBlZW4gamFhciBlZXJkZXIuJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdGb3V0IGJpaiBpbnN0ZWxsZW4gdmFuIGVpZ2Vuc2NoYXAgJXMgdm9vciBnZWJydWlrZXIgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdPbmdlbGRpZ2UgZ3JvZXAgSUQgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdWZXJib3JnZW4gdmVsZCBtYXJrZXJpbmcnOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ1ZlcmJvcmdlbiB2ZWxkIGtsZXVyJzsKJGxhbmdbJ2hpZGRlbiddID0gJ1ZlcmJvcmdlbic7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnRWVuIGVpZ2Vuc2NoYXAgbWV0IGRlemUgbmFhbSBiZXN0YWF0IGFsIHJlZWRzJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ0dlZW4gZWlnZW5zY2hhcHBlbiBpbmdlc3RlbGQnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdFciB6aWpuIGdlZW4gZWlnZW5zY2hhcHBlbiBnZXNlbGVjdGVlcmQgdm9vciBkZXplIGdyb2VwLiBFZW4gZ3JvZXAgbW9ldCB0ZW4gbWluc3RlIMOpw6luIGVpZ2Vuc2NoYXAgaGViYmVuLic7CiRsYW5nWydub2dyb3VwcyddID0gJ0dlZW4gZ3JvZXBlbiBhYW5nZW1hYWt0JzsKJGxhbmdbJ2dyb3Vwc2ZvdW5kJ10gPSAnR3JvZXBlbiBnZXZvbmRlbic7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnTGlkbWFhdHNjaGFwIHZhbiBtaW5zdGVucyBlZW4gZ3JvZXAgaXMgdmVyZWlzdCc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnVmVyZWlzIGxpZG1hYXRzY2hhcCB2YW4gbWluc3RlbnMgZWVuIGdyb2VwJzsKJGxhbmdbJ2JhY2snXSA9ICdUZXJ1Zyc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgaXMgZWVuIHZlcmVpc3QgdmVsZCc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFya2VlciB2ZXJlaXN0ZSB2ZWxkZW4gbWV0JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0hpbGl0ZSB2ZXJlaXN0ZSB2ZWxkZW4gaW4nOwokbGFuZ1snbmV4dCddID0gJ1ZvbGdlbmRlJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnRWVuIGdyb2VwIG1ldCBlZW4gbmFhbSBkaWUgcmVlZHMgYmVzdGFhdCc7CiRsYW5nWydyZXF1aXJlZCddID0gJ1ZlcmVpc3QnOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdPcHRpb25lZWwnOwokbGFuZ1snb2ZmJ10gPSAnVWl0JzsKJGxhbmdbJ3NpemUnXSA9ICdHcm9vdHRlJzsKJGxhbmdbJ3NpemVjb21tZW50J10gPSAnPGJyIC8+KE1heGltdW0gZ3Jvb3R0ZSB2YW4gZWxrZSBkZW1lbnRpZSB2YW4gZGUgYWZiZWVsZGluZyBpbiBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ0xlbmd0ZSc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyIC8+KHRla2VucyBpbiBkZSB0ZWtzdGludm9lciknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ0Ryb3Bkb3duIG1vZ2VsaWpraGVkZW4sIGdlc2NoZWlkZW4gZG9vciByZWdlbGVpbmRlbi4gV2FhcmRlbiBrdW5uZW4gbG9zIHZhbiBkZSB0ZWtzdCBtZXQgYSA9IHRla2VuLiBCaWp2b29yYmVlbGQ6IFZyb3V3PXYnOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnUmFkaW8gYnV0dG9uIGxhYmVscywgZ2VzY2hlaWRlbiBkb29yIHJlZ2VsZWluZGVuLiBXYWFyZGVuIGt1bm5lbiBsb3MgdmFuIGRlIHRla3N0IG1ldCBhID0gdGVrZW4uIEJpanZvb3JiZWVsZDogVnJvdXc9dic7CiRsYW5nWydwcm9tcHQnXSA9ICdQcm9tcHQnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXBlJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnVmVsZHN0YXR1cyc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdWcmFhZyBpbiBWZXJnZXRlbjxiciAvPkdlYnJ1aWtlcnNuYWFtJzsKJGxhbmdbJ3RleHQnXSA9ICdUZWtzdCc7CiRsYW5nWydjaGVja2JveCddID0gJ1Zpbmt2YWtqZSc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ011bHRpLXNlbGVjdGllbGlqc3QnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnUmFkaW8gS25vcHBlbic7CiRsYW5nWydpbWFnZSddID0gJ0FmYmVlbGRpbmcnOwokbGFuZ1snZW1haWwnXSA9ICdFLW1haWwgYWRyZXMnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZWtzdGdlYmllZCc7CiRsYW5nWydkcm9wZG93biddID0gJ0Ryb3Bkb3duJzsKJGxhbmdbJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJ10gPSAnV2Vsa29tJzsKJGxhbmdbJ2xvZ291dCddID0gJ0FmbWVsZGVuJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdHZWJydWlrIGRlemUgZ3JvZXBzbmFhbSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdXaWp6aWcgbWlqbiBpbnN0ZWxsaW5nZW4nOwokbGFuZ1snZXJyb3JfbG9naW5mYWlsZWQnXSA9ICdBYW5tZWxkaW5nIG1pc2x1a3QgLSBPbmdlbGRpZ2UgZ2VicnVpa2Vyc25hYW0gb2Ygd2FjaHR3b29yZD8nOwokbGFuZ1snbG9naW4nXSA9ICdBYW5tZWxkZW4nOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdBYW5tZWxkYnV0dG9uIGxhYmVsJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ0dlYnJ1aWtlcnNuYWFtJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0UtbWFpbCBhZHJlcyc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICdXYWNodHdvb3JkJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnT250aG91ZCBtaWogb3AgZGV6ZSBjb21wdXRlcic7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdHJlcmVuJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnV2FjaHR3b29yZCB2ZXJnZXRlbj8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnR2VicnVpa2Vyc25hYW0gdmVyZ2V0ZW4/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnU3RhbmRhYXJkIHdhYXJkZW4nOwokbGFuZ1sndGVtcGxhdGUnXSA9ICdTamFibG9vbic7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnRGUgZ2VicnVpa2Vyc25hYW0gKCVzKSBpcyBhbCByZWVkcyBpbiBnZWJydWlrJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdHZWJydWlrIFNNVFAgb20gaGV0IGUtbWFpbGFkcmVzIHRlIGNvbnRyb2xlcmVuPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbXVtIHdhY2h0d29vcmRsZW5ndGUnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTWF4aW11bSB3YWNodHdvb3JkbGVuZ3RlJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltdW0gZ2VicnVpa2Vyc25hYW1sZW5ndGUnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTWF4aW11bSBnZWJydWlrZXJzbmFhbWxlbmd0ZSc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdTZXNzaWUgdGltZS1vdXQgKHNlY29uZGVuKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnR2VicnVpayBjb29raWVzIG9tIGxvZ2luc2Vzc2llIGFjdGllZiB0ZSBob3VkZW4nOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdTdGEgRS1tYWlscmVnaXN0cmF0aWUgdG9lJzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdTdGFuZGFhcmQgZ3JvZXAgdm9vciBuaWV1d2UgZ2VidWlrZXJzJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnV2lqemlnIGluc3RlbGxpbmdlbiBzamFibG9vbic7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAnV2FjaHR3b29yZGVuIGtvbWVuIG5pZXQgb3ZlcmVlbic7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdPbmdlbGRpZ2UgZ2VidWlrZXJzbmFhbSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdPbmdlbGRpZyB3YWNodHdvb3JkJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0thbiBnZWVuIGluZm9ybWF0aWUgdmluZGVuIHZvb3IgZGV6ZSBnZWJydWlrZXInOwokbGFuZ1snZWRpdHVzZXInXSA9ICdXaWp6aWcgZ2VicnVpa2VyJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnR2VsZGlnJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnR2VicnVpa2Vyc25hYW0nOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ0RlemUgZ2VicnVpa2VyIGlzIHZhbiBnZWVuIGVua2VsZSBncm9lcCBsaWQnOwokbGFuZ1snZXJyb3JfcHJvcGVydGllcyddID0gJ0dlZW4gZWlnZW5zY2hhcHBlbic7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ1BvZ2luZyB0b3QgaGV0IGltcG9ydGVyZW4gdmFuIGR1YmJlbGUgZWlnZW5zY2hhcHBlbic7CiRsYW5nWyd2YWx1ZSddID0gJ1dhYXJkZSc7CiRsYW5nWydncm91cHMnXSA9ICdHcm9lcGVuJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdFaWdlbnNjaGFwcGVuJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnTmFhbSBlaWdlbnNjaGFwJzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ1dhYXJkZSBlaWdlbnNjaGFwJzsKJGxhbmdbJ2FkZCddID0gJ1RvZXZvZWdlbic7CiRsYW5nWydoaXN0b3J5J10gPSAnR2VzY2hpZWRlbmlzJzsKJGxhbmdbJ2VkaXQnXSA9ICdBYW5wYXNzZW4nOwokbGFuZ1snZXhwaXJlcyddID0gJ1Zlcmxvb3B0JzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ1NwZWNpZmljZWVyIGRhdHVtJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgdXVyJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgdXVyJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggdXVyJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSB3ZWVrJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgd2VrZW4nOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBtYWFuZCc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBtYWFuZGVuJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IG1hYW5kZW4nOwokbGFuZ1snMXllYXInXSA9ICcxIGphYXInOwokbGFuZ1snbmV2ZXInXSA9ICdOb29pdCc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bGUgaW5zdGFsbGVkIHN1Y2Vzc2Z1bGx5Ljxici8+QmUgc3VyZSB0byBzZXQgdGhlICJNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMgcGVybWlzc2lvbi4gIEFkZGl0aW9uYWxseSwgd2UgcmVjb21tZW5kIHRoYXQgeW91IGluc3RhbGwgdGhlIENhcHRjaGEgbW9kdWxlLiAgSWYgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGluIGFkZGl0aW9uIHRvIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgdG8gbG9naW4uICBUaGlzIGlzIGludGVuZGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGZ1bmN0aW9uYWxpdHkgZXZlbiBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLiInOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdXYWNodHdvb3JkJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnT3BuaWV1dyc7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnRXIgYmVzdGFhdCBhbCBlZW4gZ3JvZXAgbWV0IGRlemUgbmFhbSc7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICdXaWp6aWcgZ3JvZXAnOwokbGFuZ1snc3VibWl0J10gPSAnT3BzbGFhbic7CiRsYW5nWydjYW5jZWwnXSA9ICdBbm51bGVyZW4nOwokbGFuZ1snZGVsZXRlJ10gPSAnVmVyd2lqZGVyZW4nOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdXZWV0IHUgemVrZXIgZGF0IGRpdCBkZSBqdWlzdGUgaW5zdGVsbGluZ2VuIHppam4gdm9vciBkZXplIGdyb2VwP1xcbkhldCB1aXRzY2hha2VsZW4gdmFuIGVlbiBlaWdlbnNjaGFwIHphbCBnZWVuIGVua2VsZSB2ZXJtZWxkaW5nIHZhbiBkZSBlaWdlbnNjaGFwcGVudGFiZWwgdmVyd2lqZGVyZW4gdmFuIGRlemUgZ3JvZXAvZ2VicnVpa2VyLiBaZSB6dWxsZW4gYWxsZWVuIG5pZXQgYmVzY2hpa2JhYXIgemlqbi4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ1dlZXQgdSB6ZWtlciBkYXQgdSBkZXplIGdyb2VwIHdpbHQgdmVyd2lqZGVyZW4/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdXZWV0IHUgemVrZXIgZGF0IHUgZGV6ZSBlaWdlbnNjaGFwIHZvbGxlZGlnIHdpbHQgdmVyd2lqZGVyZW4/XFxuQWxzIHUgZGF0IGRvZXQgZGFuIHp1bGxlbiB0ZXZlbnMgYWxsZSBnZWJydWlrZXJzZ2VnZXZlbnMgdmFuIGRlemUgZWlnZW5zY2hhcCBvb2sgdmVyd2lqZGVyZCB3b3JkZW4uJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ09uZ2VsZGlnZSBwYXJhbWV0ZXJzJzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snbmFtZSddID0gJ05hYW0nOwokbGFuZ1snZXJyb3JfY2FudGFkZHByb3AnXSA9ICdQcm9ibGVlbSBiaWogaGV0IHRvZXZvZWdlbiB2YW4gZWlnZW5zY2hhcCc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlZW0gYmlqIGhldCB0b2V2b2VnZW4gdmFuIGdyb2Vwc3JlbGF0aWUnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlZW0gYmlqIGhldCB0b2V2b2VnZW4gdmFuIGdyb2VwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlZW0gYmlqIGhldCB0b2V3aWp6ZW4gdmFuIGdyb2VwIGFhbiBnZWJydWlrZXInOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsZWVtIGJpaiBoZXQgdmVyd2lqZGVyZW4gdmFuIGVlbiBlaWdlbnNjaGFwJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnS2FuIGdlZW4gRS1tYWlsIGFkcmVzIHZpbmRlbic7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnR2VlbiBzY2hyaWpmcmVjaHRlbiBpbiBkZSBkb2VsbWFwJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICdPbmdlbGRpZ2UgcGFyYW1ldGVycyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ0thbiBnZWVuIGVua2VsZSBncm9lcCB2aW5kZW4nOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdUb2VwYXNzZW4nOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdGVyJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdHZWJydWlrZXJzbmFhbSByZWd1bGllcmUgZXhwcmVzc2llJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVzY2hyaWp2aW5nJzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ0dyb2Vwc3NuYWFtJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0dlZW4gdG9lZ2FuZyc7CiRsYW5nWydlcnJvciddID0gJ0ZvdXQnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdWb2VnIGdyb2VwIHRvZSc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydGVlciBncm9lcCc7CiRsYW5nWydhZGR1c2VyJ10gPSAnVm9lZyBnZWJydWlrZXIgdG9lJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdHZWJydWlrZXJzIGdldm9uZGVuIGRpZSB2b2xkb2VuIGFhbiBoZXQgY3JpdGVyaXVtJzsKJGxhbmdbJ2dyb3VwJ10gPSAnR3JvZXAnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTZWxlY3RlZXIgZ3JvZXAnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnUmVnaXN0cmF0aWUgc2phYmxvb24nOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnQWZtZWxkIHNqYWJsb29uJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnQWFubWVsZCBzamFibG9vbic7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1Zvb3JrZXVyZW4nOwokbGFuZ1sndXNlcnMnXSA9ICdHZWJydWlrZXJzJzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Zyb250ZW5kIFVzZXIgQmVoZWVyJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnU3RhIGdlYnJ1aWtlcnMgdG9lIGluIHRlIGxvZ2dlbiBvcCBkZSBmcm9udGVuZCB2YW4gdXcgc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnU3RhbmRhYXJkIHZvb3JwYWdpbmEnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ0xhYXRzdCBiZXpvY2h0ZSBwYWdpbmEnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnQW5kZXJlIHBhZ2luYTonOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ1ZvZXIgZGUgdGVrc3QgdmFuIGRlIGFmYmVlbGRpbmcgaW4nOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/pl_PL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ0VkeXRvd2FuaWUgdcW8eXRrb3duaWthJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnTmllIHdzdGF3aWFqIGZvcm11bGFyenkgaW5saW5lICh3IHRyZcWbY2kpJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnS2xpa25paiB0dXRhaiwgZ2R5IG5pZSBwYW1pxJl0YXN6IHN3b2ljaCBkYW55Y2ggZG8gemFsb2dvd2FuaWEnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0tsaWtuaWogdHV0YWosIGplxZtsaSBuaWUgcGFtacSZdGFzeiBzd29qZWdvIGhhc8WCYSc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0tsaWtuaWogdHV0YWosIGJ5IHNpxJkgd3lsb2dvd2HEhyc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2xpa25paiB0dXRhaiBieSB6bWllbmnEhyBzd29qZSBoYXPFgm8gbHViIGlubmUgZGFuZSc7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ1N6YWJsb24gcG9kZ2zEhWR1IHXFvHl0a293bmlrYSc7CiRsYW5nWydldmVudCddID0gJ1pkYXJ6ZW5pZSc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnWmF3aWFkb21pZW5pZSBvIHpkYXJ6ZW5pdSBGRVUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnQWRyZXMgZW1haWwgZG8gemF3aWFkb21pZW5pYSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnU3phYmxvbiBtYWlsYSBwb3dpYWRhbWlhasSFY2Vnbyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdUeXR1xYIgbWFpbGEgcG93aWFkYW1pYWrEhWNlZ28nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdQb3dpYWRvbWllbmllIGVtYWlsJzsKJGxhbmdbJ09uTG9naW4nXSA9ICdHZHkgemFsb2dvd2FuaWUnOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdHZHkgd3lsb2dvd2FuaWUnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnR2R5IHd5Z2FzYSBzZXNqYSc7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdHZHkgc3R3b3J6b255IG5vd3kgdcW8eXRrb3duaWsnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnR2R5IHXFvHl0a293bmlrIHNrYXNvd2FueSc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdHZHkgem1pZW5pb25lIHVzdGF3aWVuaWEgdcW8eXRrb3duaWthJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdHZHkgc3R3b3J6b25hIGdydXDEmSB1xbx5dGtvd25payZvYWN1dGU7dyc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnR2R5IHNrYXNvd2FubyBncnVwxJknOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdGdW5rY2pvbmFsbm/Fm8SHIHphZ3ViaW9ueWNoIGRhbnljaCBsb2dvd2FuaWEgdXJ1Y2hvbWlvbmEuIFpuYWxlemlvbm8gdW5pa2FsbnkgbG9naW4sIGt0Jm9hY3V0ZTtyeSBwYXN1amUgZG8gVHdvaWNoIGRhbnljaC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1R3b2phIG5hendhIHXFvHl0a293bmlrYSB0bzonOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnUG9sZWNhbXksIMW8ZWJ5IHRhIGluZm9ybWFjamEgem9zdGHFgmEgemFub3Rvd2FuYSB3IGJlenBpZWN6bnltLCBhbGUgem5hbnltIENpIG1pZWpzY3UhJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdJRCBzdHJvbi9BbGlhcyBkbyBwcnplc2tvY3plbmlhIHBvIHptaWFuaWUgdXN0YXdpZcWEJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ0lkLXN0cm9ueS9BbGlhcy1zdHJvbnkgZG8gcHJ6ZXNrb2N6ZW5pYSBwbyB3ZXJ5ZmlrYWNqaSBrb2R1IConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdTemFibG9uIHpndWJpb25lZ28gbG9naW51JzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnU3phYmxvbiBwb3R3aWVyZHplbmlhIHBvIHpndWJpb255bSBsb2dpbmllJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZW1hdGNoJ10gPSAnQsWCxIVkOiB3acSZY2VqIG5pxbwgamVkbm8ga29udG8gc3BlxYJuaWEgd2FydW5raSB3cHJvd2Fkem9uZSBkbyBzeXN0ZW11JzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0LFgsSFZDogbmllIG1vZ8SZIHpuYWxlxbrEhyBwYXN1asSFY2VnbyB1xbx5dGtvd25pa2EnOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0LFgsSFZDogbmllIG1vZ8SZIHpuYWxlxbrEhyB0YWtpZWogZ3J1cHknOwokbGFuZ1sncmVhZG9ubHknXSA9ICdUeWxrbyBkbyBvZGN6eXR1JzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdLbGFzYSBvcGVyYWNqaSB1xbx5dGtvd25pa2EgKFVzZXIgTWFuaXB1bGF0b3IgQ2xhc3MpJzsKJGxhbmdbJ2FkbWluX2xvZ291dCddID0gJ1d5bG9nb3dhbnkgcHJ6ZXogYWRtaW5pc3RyYXRvcmEnOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ1Bva2F6dWogdHlsa28gemFsb2dvd2FueWNoIHXFvHl0a293bmlrJm9hY3V0ZTt3JzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdXeWxvZ3VqIHRlZ28gdcW8eXRrb3duaWthJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ0NlY2h5IGtvbnQnOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdIaXN0b3JpYSc7CiRsYW5nWydleHBvcnQnXSA9ICdFa3Nwb3J0JzsKJGxhbmdbJ2NsZWFyJ10gPSAnV3ljennFm8SHJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ1phcGlzeiBoaXN0b3JpxJkgdyB0cnliaWUgQVNDSUkgeiBwcnplZHppYcWCdSBjemFzdSc7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ1d5Y3p5xZvEhyBoaXN0b3JpxJkgeiBvc3RhdG5pZWdvIG9rcmVzdSc7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICdaYXBvbW5pYW55IGxvZ2luPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFa3Nwb3J0dWogZGVmaW5pY2plIGdydXB5IChpIGNlY2h5KSBkbyBmb3JtYXR1IFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnWmFyesSFZHphbmllIGhpc3RvcmnEhSc7CiRsYW5nWyd5ZXMnXSA9ICdUYWsnOwokbGFuZ1snbm8nXSA9ICdOaWUnOwokbGFuZ1sncHJvbXB0X29mJ10gPSAneic7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBCZXogbGltaXR1ICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJzEgZ29kemlueSc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICc2IGdvZHppbic7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICcxMiBnb2R6aW4nOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICcxIGRuaWEnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnMSB0eWdvZG5pYSc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnMiB0eWdvZG5pJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICcxIG1pZXNpxIVjYSc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnMyBtaWVzacSZY3knOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICc2IG1pZXNpxJljeSc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICcxIHJva3UnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnR3J1cG93YW5pZSBpIHNvcnRvd2FuaWUnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1Jla29yZHksIGt0Jm9hY3V0ZTtyZSBzcGXFgmFuaWFqxIUga3J5dGVyaWEnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICdOYXp3YSB1xbx5dGtvd25pa2EgLSBtYWxlasSFY28nOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ05hendhIHXFvHl0a293bmlrYSAtIHJvc27EhWNvJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2Rlc2MnXSA9ICdEYXRhIC0gbWFsZWrEhWNvJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ0RhdGEgLSByb3NuxIVjbyc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdUeXAgemRhcnplbmlhIC0gbWFsZWrEhWNvJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fYXNjJ10gPSAnVHlwIHpkYXJ6ZW5pYSAtIHJvc27EhWNvJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ0FkcmVzIElQIC0gbWFsZWrEhWNvJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnQWRyZXMgSVAgLSByb3NuxIVjbyc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnTmllIG9kbm90b3dhbm8gxbxhZG55Y2ggemRhcnplxYQnOwokbGFuZ1sncmVzZXQnXSA9ICdXeWN6ecWbxIcnOwokbGFuZ1sncHJvbXB0X2dyb3VwX2lwJ10gPSAnR3J1cHVqIHBvZCBhZHJlc2llIElQJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRmlsdHIgdHlwJm9hY3V0ZTt3IHpkYXJ6ZcWEJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1d5xZt3aWV0bCB0eWxrbyB6ZGFyemVuaWEgeiBvc3RhdG5pZWdvIG9rcmVzdSc7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnTGltaXQgcmVrb3JkJm9hY3V0ZTt3IG5hIHN0cm9uaWUnOwokbGFuZ1snZm9yJ10gPSAnZGxhJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnUmFwb3J0IGhpc3RvcmlpJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdOaWV6bmFuZSc7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnQWRyZXMgSVAnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ1R5cCB6ZGFyemVuaWEnOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXRhJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdQb3dyJm9hY3V0ZTt0JzsKJGxhbmdbJ2ltcG9ydF9jb21wbGV0ZV9tc2cnXSA9ICdPcGVyYWNqYSBpbXBvcnR1IHpha2/FhGN6ecWCYSBzacSZIHN1a2Nlc2VtJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ3ByemV0d29yem9uZSBsaW5pZSc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnT2Rrcnl0ZSBixYLEmWR5JzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzYWRkZWQnXSA9ICdEb2RhbmUgcmVrb3JkeSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnTmllIG1vZ8SZIHpuYWxlxbrEhyBjZWNoeSBncnVweSAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ05pZSBtb2fEmSB1enlza2HEhyBvZHBvd2llZHppIHogc2Vyd2VyYSBTTVRQJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ1BsaWsgbyBuYXp3aWUgKCVzKSBuaWUgem9zdGHFgiBvZG5hbGV6aW9ueSc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZHZhbHVlJ10gPSAnTmllcHJhd2lkxYJvd2Egd2FydG/Fm8SHIGRsYSB3YXJ0b8WbY2kgbHViIGxpc3R5ICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnUG9sZSAlcyBwcnpla3JhY3phIG1ha3N5bWFsbsSFIGTFgnVnb8WbxIcnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdCxYLEhWQgcHJ6eSBpbXBvcmNpZSAobGluaWEgJXMpOiAlcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0eWRlZm5zJ10gPSAnTmllIG1vxbxuYSBwb2JyYcSHIGNlY2ggKGLFgsSFZCB3ZXduxJl0cnpueSBtb2R1xYJ1KSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nXSA9ICdQcm9ibGVtIHByenkgdXN0YXdpYW5pdSBpbmZvcm1hY2ppIG8gdcW8eXRrb3duaWt1JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHJlcXVpcmVkZmllbGQnXSA9ICdOaWUgb2RuYWxlemlvbm8gxbxhZG5laiBrb2x1bW55LCBrdCZvYWN1dGU7cmEgc3BlxYJuaWEgd2FydW5raSAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ05pZSBvZG5hbGV6aW9ubyBjZWNoIGRsYSB3c2themFuZWogZ3J1cHknOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1BsaWsgd3NrYXphbnkgZG8gaW1wb3J0dSBuaWUgemFjaG93dWplIHd5bWFnYW5lZ28gZm9ybWF0dSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdG9wZW5maWxlJ10gPSAnTmllIG1vxbxuYSBvdHdvcnp5xIcgcGxpa3UnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjbiBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0dWogdcW8eXRrb3duaWsmb2FjdXRlO3cgZG8gZ3J1cHknOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnxblyJm9hY3V0ZTtkxYJvd3kgcGxpayBDU1YnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdQbGlrIFhNTCBkbyBvZGN6eXR1JzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0Vrc3BvcnR1aiB1xbx5dGtvd25payZvYWN1dGU7dyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnR1aiB1xbx5dGtvd25pa293JzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ1d5Y3p5xZvEhyc7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0RvY2Vsb3dhIMWbY2llxbxrYSBwbGlrJm9hY3V0ZTt3IHogb2JyYXprYW1pJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnUG9qYXdpxYIgc2nEmSBwcm9ibGVtIHogYnJha3VqxIVjeW0gKGFsZSB3eW1hZ2FueW0pIHdncnl3YW5pZW0gcGxpayZvYWN1dGU7dyc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnTmllIG1vZ8SZIHByemV0d29yennEhyB3c2themFuZWdvIHBsaWt1IFhNTCAoesWCeSBmb3JtYXQ/KSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnTmllIG1vxbxuYSBza2Fzb3dhxIcgZ3J1cHksIGt0Jm9hY3V0ZTtyYSBtYSBwcnp5cGlzYW55Y2ggdcW8eXRrb3duaWsmb2FjdXRlO3cnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ1RlbiB1xbx5dGtvd25payBqdcW8IGplc3QgemFsb2dvd2FueSc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdUZWtzdCB6IG9icmF6a2EgbmllIHpvc3RhxYIgcHJ6ZXBpc2FueSBwb3ByYXduaWUnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1Bvencmb2FjdXRlO2wgdcW8eXRrb3duaWtvbSBsb2dvd2HEhyBzacSZIHdpxJljZWogbmnFvCByYXonOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ1JvenN6ZXJ6ZW5pZSBwbGlrJm9hY3V0ZTt3IHogb2JyYXprYW1pLCBrdCZvYWN1dGU7cmUgdcW8eXRrb3duaWN5IG1vZ8SFIHdncnl3YcSHJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgZ3JvdXAgZGVzY3JpcHRpb248L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBUaGUgaXAgYWRkcmVzcyBvZiB0aGUgY2xpZW50PC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWRvdXQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluIHRvIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dCBvZiB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gaXMgZXhwaXJlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IHVzZXIgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpbmZvIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBkZWxldGVkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdHcnVwYSBzeXN0ZW11IENNUyc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIE5hc3TEmXB1asSFY2Ugem5hY3puaWtpIG1vZ8SFIHpvc3RhxIcgd3lrb3J6eXN0YW5lIHcgdHljaCBwb2xhY2g6IHskdXNlcm5hbWV9LCB7JGdyb3VwfS4gVcW8eXdhasSFYyB6bmFjem5pa2EgeyRncm91cH0sIHN5c3RlbSBwb2RtaWVuaSBuYXp3xJkgcGllcndzemVnbyBjesWCb25rYSBncnVweSwgZG8ga3Qmb2FjdXRlO3JlaiB1xbx5dGtvd25payBuYWxlxbx5IC0gaSBwcnpla2llcnVqZSBkbyB0ZWogc3Ryb255Lic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnRWR5dHVqIHRvIHBvbGUgYnkgd3lrYXNvd2HEhyBoYXPFgm8gdcW8eXRrb3duaWthJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdFZHl0dWogdG8gcG9sZSBieSB3eWthc293YcSHIGhhc8WCbyB1xbx5dGtvd25pa2EnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnVcW8eXRrb3duaWsgbyB0ZWogbmF6d2llIGp1xbwgaXN0bmllamUnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnRWtzcG9ydCBkbyBDU1YgbmllIHphcGlzYcWCIMW8YWRueWNoIHd5bmlrJm9hY3V0ZTt3JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0TFgnVnb8WbxIcgcG9sYSBuYXp3eSB1xbx5dGtvd25pa2EnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnRMWCdWdvxZvEhyBwb2xhIGhhc8WCYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL01heCBkxYJ1Z2/Fm2NpIGhhc8WCYSBzxIUgbmllcHJhd2lkxYJvd2UnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9NYXggZMWCdWdvxZtjaSBuYXp3eSB1xbx5dGtvd25pa2Egc8SFIG5pZXByYXdpZMWCb3dlJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdOaWVwcmF3aWTFgm93eSBhZHJlcyBlbWFpbCc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ05pZSB6bmFsZXppb25vIGFkcmVzdSBlbWFpbCBwcnp5cGlzYW5lZ28gZG8gdGVnbyBrb250YSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSB6IHVzdGFsZW5pZW0gaW5mb3JtYWNqaSBvIHXFvHl0a293bmlrdSc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibGVtIHogdXN0YWxlbmllbSBjZWNoJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVxbx5dGtvd25payBkb2RhbnkgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVxbx5dGtvd25payB1c3VuacSZdHkgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnQ2VjaGEnOwokbGFuZ1sndmFsdWVyZWdleCddID0gJ1dhcnRvxZvEhyAod3lyYcW8ZW5pZSByZWd1bGFybmUpJzsKJGxhbmdbJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJ10gPSAnVXdhZ2E6IHRlIHBvbGEgbWFqxIUgd3DFgnl3IG5hIHdpZWxrb8WbxIcgcCZvYWN1dGU7bCB3ecWbd2lldGxhbmVnbyBmb3JtdWxhcnphLiBabWllbmlhbmllIHRlaiBsaWN6YnkgbmEgaXN0bmllasSFY2VqIHN0cm9uaWUgbW/FvGUgbmllIGJ5xIcgbmFqbGVwc3p5bSBwb215c8WCZW0hJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdabWllbmnEhyBwcmVmZXJlbmNqZSBhZG1pbmlzdHJhdG9yYT8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ1RlbiBlbWFpbCBqdcW8IGplc3QgdcW8eXdhbnkgdyBzeXN0ZW1pZSc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdVxbx5d2FqIGNpYXN0ZWN6ZWsgYnkgemFwYW1pxJl0YcSHIHN6Y3plZyZvYWN1dGU7xYJ5IGxvZ293YW5pYSc7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ05hendhIGNpYXN0ZWN6a2EgKGNvb2tpZSknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdQb3p3Jm9hY3V0ZTtsIG5hIHdpZWxva3JvdG5lIGVtYWlsZSc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdBZHJlcyBlbWFpbCBqZXN0IHImb2FjdXRlO3duaWXFvCBuYXp3xIUgdcW8eXRrb3duaWthJzsKJGxhbmdbJ2luZm9fY29va2llX2tlZXBhbGl2ZSddID0gJ1ByJm9hY3V0ZTtiYSB1dHJ6eW1hbmlhIHphbG9nb3dhbmlhIHByemV6IHXFvHljaWUgY2lhc3RlY3prYSAoY29va2llKSA8ZW0+KGNpYXN0ZWN6a28gamVzdCB1c3Rhd2lhbmUgcHJ6ZXogYWt0eXdub8WbxIcgbmEgc3Ryb25pZSk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcocG96dyZvYWN1dGU7bCB3aWVsdSB1xbx5dGtvd25pa29tIHXFvHl3YcSHIHRlZ28gc2FtZWdvIGVtYWlsYSknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyhlbWFpbCB3cGlzYW55IHByemV6IHXFvHl0a293bmlrYSBqZXN0IHXFvHl0eSBqYWtvIG5hendhIHRlZ28gdcW8eXRrb3duaWthIChqZWdvIGxvZ2luKSAtIHR5bGtvIG5pZSB6ZXN0YXdpYWogdGVnbyB6IG9wY2rEhSAmcXVvdDtwb3p3Jm9hY3V0ZTtsIG5hIHdpZWxva3JvdG5lIGVtYWlsZSZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnUG96dyZvYWN1dGU7bCBuYSB3aWVsb2tyb3RuZSAmcXVvdDtwcnp5cG9taW5hY3plIGhhc2XFgiZxdW90Oz8nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKHBvencmb2FjdXRlO2wgdcW8eXRrb3duaWtvbSB3eXPFgmHEhyDFvMSFZGFuaWUga2Fzb3dhbmlhIGhhc8WCYSBuYXdldCBnZHkgbmllIHXFvHl3YWxpIHBvcHJ6ZWRuaWVnbyknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdVxbx5d2HEhyB1cHJhd25pZcWEIGRlZHlrb3dhbnljaCBkbGEgVcW8eXRrb3duaWsmb2FjdXRlO3cgRkVVPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoWmF6d3ljemFqLCB1xbx5dGtvd25pY3kgRkVVIG1hasSFIHRha2llIHNhbWUgdXByYXduaWVuaWEgamFrIHVwcmF3bmllbmlhIGFkbWluaXN0cmFjeWpuZSBDTVMtYSwgdGFraWUgamFrICZxdW90O2RvZGF3YW5pYSB1xbx5dGtvd25payZvYWN1dGU7dyZxdW90OywgJnF1b3Q7ZG9kYXdhbmllIGdydXAmcXVvdDsgaXRwLiBKYWsgemF6bmFjenlzeiB0xJkgb3BjasSZIC0gdXByYXduaWVuaWEgQ01TLWEgaSB1xbx5dGtvd25payZvYWN1dGU7dyBGRVUgem9zdGFuxIUgcm96ZHppZWxvbmUpJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdOaWUgem5hbGV6aW9ubyB3Z3JhbmVnbyBwbGlrdSAoYsWCxIVkIHdld27EmXRyem55IHN5c3RlbXUpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnQnnFgiBwcm9ibGVtIHogdHdvaW0gcGxpa2llbSBkbyB3Z3J5d2FuaWEuIFNwciZvYWN1dGU7YnVqIHBvbm93bmllLic7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdOaWUgd3Byb3dhZHpvbm8gbmF6d3kgdcW8eXRrb3duaWthJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ05pZSB3cGlzYW5vIGVtYWlsYSc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdOaWUgd3Byb3dhZHpvbm8gaGFzxYJhJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdXeWxvZ3VqIHXFvHl0a293bmlrYSBGRVUnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnWmFsb2d1aiB1xbx5dGtvd25pa2EgRkVVJzsKJGxhbmdbJ2VkaXRwcm9wX2luZm9tc2cnXSA9ICc8Zm9udCBjb2xvcj0mYW1wO2FtcDthbXA7YW1wO3F1b3Q7cmVkJmFtcDthbXA7YW1wO2FtcDtxdW90Oz48Yj5VxbtZV0FKIE9TVFJPxbtOSUU8L2I+IGdkeSB6bWllbmlhc3ogaXN0bmllasSFY2UgY2VjaHksIGt0Jm9hY3V0ZTtyZSBzxIUganXFvCBwcnp5cGlzYW5lIGRvIGdydXAsIG1vxbxlc3ogY2/FmyB1c3prb2R6acSHLCBzdHJhY2nEhyBkYW5lIGx1YiBzcG93b2Rvd2HEhywgxbxlIHN0cm9uYSBixJlkemllIHNpxJkgaW5hY3plaiB3ecWbd2lldGxhxYJhISA8aT4obnAuIGdkeSB6bW5pZWpzemFzeiBkxYJ1Z2/Fm2NpIHAmb2FjdXRlO2wpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdUYSBmdW5rY2phIG5pZSBkemlhxYJhIG5hIHN5c3RlbWllIFdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ05pZSB0dyZvYWN1dGU7cnogY2VjaHkgZGxhIG5hend5IHXFvHl0a293bmlrYSBhbmkgaGFzxYJhIC0gc8SFIG9uZSBqdcW8IHdidWRvd2FuZSBzdGFuZGFyZG93byB3IG1vZHXFgiB1xbx5dGtvd25payZvYWN1dGU7dyBGRVUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0Vrc3BvcnQgdcW8eXRrb3duaWsmb2FjdXRlO3cgZG8gZm9ybWF0dSBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRWtzcG9ydCc7CiRsYW5nWydpbXBvcnRjc3YnXSA9ICdJbXBvcnQnOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbic7CiRsYW5nWydlZGl0cHJvcCddID0gJ0VkeWNqYSBjZWNoJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01ha3N5bWFsbmEgZMWCdWdvxZvEhyc7CiRsYW5nWydjcmVhdGVkJ10gPSAnU3R3b3J6b25vJzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnR1aiBwbyc7CiRsYW5nWydzb3J0J10gPSAnU29ydHVqZSc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdVxbx5dGtvd25payZvYWN1dGU7dyB6IHphem5hY3pvbmVqIGdydXB5IChncnVwKSc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdPZ3JhbmljeiB3eW5pa2kgZG8nOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnTmllIHpuYWxlemlvbm8gcG9sYSBlbWFpbCBkbGEgdGVnbyB1xbx5dGtvd25pa2EuIEJ5xIcgbW/FvGUga29uaWVjem55IGLEmWR6aWUga29udGFrdCB6IGFkbWluaXN0cmF0b3JlbSBzeXN0ZW11JzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnSURTdHJvbnkvQWxpYXMgZGxhIGZvcm11bGFyemEgemFwb21uaWFuZWdvIGhhc8WCYSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ0lEU3Ryb255L0FsaWFzIGRsYSBmb3JtdWxhcnphIHptaWFueSB1c3Rhd2llxYQnOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdJRFN0cm9ueS9BbGlhcyBkbyBwcnplc2tvY3plbmlhIHBvIHphbG9nb3dhbml1IConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnSURTdHJvbnkvQWxpYXMgZG8gcHJ6ZXNrb2N6ZW5pYSBwbyB3eWxvZ293YW5pdSAqJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1BvcnrEhWRlayBzb3J0b3dhbmlhJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0N6xJnFm8SHIHXFvHl0a293bmlrJm9hY3V0ZTt3IHfFgmHFm25pZSBqZXN0IHcgdHJha2NpZSByZXNldG93YW5pYSB6YWd1YmlvbmVnbyBoYXPFgmEuIE9iZWNuaWUgdHljaCB1xbx5dGtvd25payZvYWN1dGU7dyBqZXN0Oic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1VzdcWEIHdzenlzdGtpZSB3cGlzeSBzdGFyc3plIG5pxbwgdHlkemllxYQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnVXN1xYQgd3N6eXN0a2llIHdwaXN5IHN0YXJzemUgbmnFvCBtaWVzacSFYyc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdVc3XFhCB3c3p5c3RraWUgd3Bpc3knOwokbGFuZ1snYXJleW91c3VyZSddID0gJ05hIHBld25vPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ05pZXByYXdpZMWCb3d5IGtvZCB6b3N0YcWCIHdwcm93YWR6b255LCBzcHImb2FjdXRlO2J1aiBwb25vd25pZSc7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnVHltY3phc293eSBrb2QgZGxhIGlkIHXFvHl0a293bmlrYSBuaWUgem9zdGHFgiB6bmFsZXppb255IHcgYmF6aWUgZGFueWNoJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnU3phYmxvbiB1xbx5d2FueSBkbyB3ecWbd2lldGxhbmlhIGZvcm11bGFyeiB3ZXJ5ZmlrdWrEhWNlZ28nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ1N6YWJsb24gdcW8eXdhbnkgZG8gemFwb21uaWFueWNoIGhhc2XFgiBkbGEga29udCBlbWFpbCc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnQWxibyBrdG/FmyBqdcW8IHVydWNob21pxYIgb3BlcmFjasSZIG9wZXJhY2rEmSByZXNldG93YW5pYSBoYXPFgmEgZGxhIHRlZ28ga29udGEsIGFsYm8gc2FtIGp1xbwgdG8genJvYmnFgmXFmy4gU3ByYXdkxbogc3dvasSFIHBvY3p0xJkgZW1haWwsIGJ5xIcgbW/FvGUganXFvCBvdHJ6eW1hxYJlxZsgZGFsc3plIGluc3RydWtjamUsIGphayB6cmV6ZXRvd2HEhyBzd29qZSBoYXPFgm8uJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdCxYLEhWQgYmF6eSBkYW55Y2gnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnT3RyenltYcWCYcWbL8WCZcWbLCBnZHnFvCBrdG/FmyB6Z8WCb3NpxYIgbmFtLCBpxbwgemd1YmnFgmHFmy/FgmXFmyBzd29qZSBoYXPFgm8uIFcgdHltIHByenlwYWRrdSBwcnplY3p5dGFqIHBvbmnFvHN6ZSBpbnN0cnVrY2plLiBKZcW8ZWxpIG5pZSBtYXN6IHBvasSZY2lhIGNvIHRvIGplc3QsIG1vxbxlc3ogYmV6cGllY3puaWUgdXN1bsSFxIcgdMSFIHdpYWRvbW/Fm8SHOyBkemnEmWt1amVteSB6YSBwb8Wbd2nEmWNvbnkgY3phcy4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdLb2QnOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnUG9uacW8c3p5IGtvZCB6b3N0YcWCIHd5Z2VuZXJvd2FueSBhdXRvbWF0eWN6bmllIHcgY2VsdSB3ZXJ5ZmlrYWNqaSBrb250YSB1xbx5dGtvd25pa2EuIEdkeSBrbGlrbmllc3ogcG9uacW8c3p5IGxpbmssIHd5xZt3aWV0bGkgc2nEmSBwb2xlLCB3IGt0Jm9hY3V0ZTtyeW0gbmFsZcW8eSB3cGlzYcSHIHRlbiBrb2QuIFphend5Y3phaiB0byBwb2xlIGplc3QganXFvCB3eXBlxYJuaW9uZSwgamXFvGVsaSBqZWRuYWsgbmllIGplc3QsIHRvIGtvZCBqZXN0IG5hc3TEmXB1asSFY3k6JzsKJGxhbmdbJ3Byb21wdF9saW5rJ10gPSAnS2xpa2FqxIVjIG5hIHRlbiBvZG5vxZtuaWsgcHJ6ZW5pZXNpZXN6IHNpxJkgZG8gc3Ryb255LCBnZHppZSBwbyB3cHJvd2FkemVuaXUgcG93ecW8c3plZ28ga29kdSBixJlkemllIG1vxbxsaXdlIHd5a2Fzb3dhbmllIHR3b2plZ28gaGFzxYJhOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnWmFndWJpb25lIGhhc8WCbyc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ05pZSBtb8W8bmEgb2RuYWxlxbrEhyBtb2R1xYJ1IENNUyBNYWlsZXInOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnV2lhZG9tb8WbxIcgZW1haWwgem9zdGHFgmEgd3lzxYJhbmEgZG8gJXMgeiBpbnN0cnVrY2phbWkgZG90eWN6xIVjeW1pIHptaWFueSBoYXPFgmEuIER6acSZa3VqZW15Lic7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1pndWJpb25lIGx1YiB6YXBvbW5pYW5lIGhhc8WCbz8gV3Byb3dhZMW6IHN3b2rEhSBuYXp3xJkgdcW8eXRrb3duaWthIC0gamXFm2xpIG5hc3ogc3lzdGVtIHpuYWpkemllIHByenl3acSFemFueSBkbyB0ZWdvIHXFvHl0a293bmlrYSBhZHJlcyBlbWFpbCwgd3nFm2xlbXkgaW5zdHJ1a2NqZSBkb3R5Y3rEhWNlIHVzdGF3aWVuaWEgbm93ZWdvIGhhc8WCYS4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdTemFibG9uIHN0cm9ueSB6YXBvbW5pYW5lZ28gaGFzxYJhJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ1N6YWJsb24gemd1YmlvbmVqIG5hend5IHXFvHl0a293bmlrYSc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdDZWNoYSAlcyBuaWUgem9zdGHFgmEgem5hbGV6aW9uYSc7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAnem5hbGV6aW9ueWNoIGNlY2gnOwokbGFuZ1snYWRkcHJvcCddID0gJ0RvZGFqIGNlY2jEmSc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnV3ltYWdhbmUgcG9sZSAoJXMpIGplc3QgcHVzdGUnOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdXcHJvd2FkxbogdHV0YWogbm93ZSBoYXPFgm8gYnkgem1pZW5pxIcgc3RhcmUnOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdXeWRhamUgc2nEmSwgxbxlIG5pZSBqZXN0ZcWbIHphbG9nb3dhbmEoeSknOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ1VzdGF3aWVuaWEnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWplc3RyYWNqYSc7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ1RvIGtvbnRvIHd5Z2FzxYJvJzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdOaWV3xYJhxZtjaXd5IGZvcm1hdCBhZHJlc3UgZW1haWwnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdOaWVwcmF3aWTFgm93YSBkYXRhIHd5Z2HFm25pxJljaWEnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0LFgsSFZCBwcnp5IHVzdGF3aWFuaXUgY2VjaHkgJXMgZGxhIHXFvHl0a293bmlrYSAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ05pZXByYXdpZMWCb3dlIElEIGdydXB5ICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnWm5hY3puaWsgdWtyeXRlZ28gcG9sYSc7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnS29sb3IgdWtyeXRlZ28gcG9sYSc7CiRsYW5nWydoaWRkZW4nXSA9ICdVa3J5dGUnOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ0NlY2hhIG8gdGVqIG5hendpZSBqdcW8IGplc3QgemRlZmluaW93YW5hJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ0JyYWsgemRlZmluaW93YW55Y2ggY2VjaCc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ05pZSB6YXpuYWN6b25vIGNlY2ggZGxhIHRlaiBncnVweSc7CiRsYW5nWydub2dyb3VwcyddID0gJ05pZSB6ZGVmaW5pb3dhbnkgxbxhZG5laiBncnVweSc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ2dydXAgem5hbGV6aW9ubyc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnQ3rFgm9ua29zdHdvIHcgY28gbmFqbW5pZWogamVkbmVqIGdydXBpZSBqZXN0IHd5bWFnYW5lJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdXeW1hZ2FqIGN6xYJvbmtvc3R3YSB3IGNvIG5ham1uaWVqIGplZG5laiBncnVwaWUnOwokbGFuZ1snYmFjayddID0gJ1dyJm9hY3V0ZTvEhyc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgdG8gd3ltYWdhbmUgcG9sZSc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnWmF6bmFjeiB3eW1hZ2FuZSBwb2xhIHXFvHl3YWrEhWMnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnUG9kxZt3aWV0bCB3eW1hZ2FuZSBwb2xhIHcnOwokbGFuZ1snbmV4dCddID0gJ0RhbGVqJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnR3J1cGEgbyB0ZWogbmF6d2llIGp1xbwgaXN0bmllamUnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdXeW1hZ2FuZSBwb2xlJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnT3Bjam9uYWxuaWUnOwokbGFuZ1snb2ZmJ10gPSAnV3nFgsSFY3pvbmUnOwokbGFuZ1snc2l6ZSddID0gJ1Jvem1pYXInOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihNYWtzeW1hbG55IHJvem1pYXIgbmFqd2nEmWtzemVnbyBib2t1IG9icmF6a2EgLSB3IHBpa3NlbGFjaCknOwokbGFuZ1snbGVuZ3RoJ10gPSAnRMWCdWdvxZvEhyc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyIC8+KHpuYWsmb2FjdXRlO3cgdyBwb2x1IHdwcm93YWR6ZW5pYSB0ZWtzdHUpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdPcGNqZSBsaXN0IHJvendpamFueWNoLCBvZGR6aWVsb25lIG5vd3ltaSBsaW5pYW1pJzsKJGxhbmdbJ3Byb21wdCddID0gJ1phY2jEmXRhJzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVHlwJzsKJGxhbmdbJ3R5cGUnXSA9ICdUeXAnOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdTdGF0dXMgcG9sYSc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdaYXB5dGFqIHcgWmd1YmlvbmVqPGJyIC8+bmF6d2llIHXFvHl0a293bmlrYSc7CiRsYW5nWyd0ZXh0J10gPSAnVGVrc3QnOwokbGFuZ1snY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ0xpc3RhIHdpZWxva3JvdG5lZ28gd3lib3J1JzsKJGxhbmdbJ2ltYWdlJ10gPSAnT2JyYXplayc7CiRsYW5nWydlbWFpbCddID0gJ0FkcmVzIGVtYWlsJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnUG9sZSB0ZWtzdG93ZSc7CiRsYW5nWydkcm9wZG93biddID0gJ0xpc3RhIHJvendpamFuYSc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1dpdGFteSc7CiRsYW5nWydsb2dvdXQnXSA9ICdXeWxvZ3VqJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdVxbx5d2FqIHRlbiBuYXp3eSBncnVweSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdabWllxYQgbW9qZSB1c3Rhd2llbmlhJzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnTG9nb3dhbmllIG5pZSBwb3dpb2TFgm8gc2nEmSAtIHrFgnkgdcW8eXRrb3duaWsgbHViIGhhc8WCbz8nOwokbGFuZ1snbG9naW4nXSA9ICdaYWxvZ3VqJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnRXR5a2lldGEgZ3V6aWthIFphcGlzeiBzacSZJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ1XFvHl0a293bmlrJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0FkcmVzIGVtYWlsJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ0hhc8WCbyc7CiRsYW5nWydwcm9tcHRfcmVtZW1iZXJtZSddID0gJ1BhbWnEmXRhaiBtbmllIG5hIHR5bSBrb21wdXRlcnplJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVqZXN0cmFjamEnOwokbGFuZ1snZm9yZ290cHcnXSA9ICdaYXBvbW5pYW5lIGhhc8WCbz8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnWmd1YmlvbnkgbG9naW4/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnV2FydG/Fm2NpIGRvbXnFm2xuZSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1N6YWJsb24nOwokbGFuZ1snZXJyb3JfdXNlcm5vdGZvdW5kJ10gPSAnTmllIHpuYWxlemlvbm8gSUQgdcW8eXRrb3duaWthJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdUYSBuYXp3YSB1xbx5dGtvd25pa2EgKCVzKSBqZXN0IGp1xbwgdcW8eXdhbmEnOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ1XFvHl3YWogU01UUCBieSBzcHJhd2R6YcSHIGFkcmVzIGVtYWlsPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbWFsbmEgZMWCdWdvxZvEhyBoYXPFgmEnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTWFrc3ltYWxuZSBkxYJ1Z2/Fm8SHIGhhc8WCYSc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdNaW5pbWFsbmEgZMWCdWdvxZvEhyBuYXp3eSB1xbx5dGtvd25pa2EnOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTWFrc3ltYWxuYSBkxYJ1Z2/Fm8SHIG5hend5IHXFvHl0a293bmlrYSc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdUaW1lb3V0IHNlc2ppICh3IHNla3VuZGFjaCknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1XFvHl3YWogY2lhc3RlY3playwgYnkgbG9nb3dhbmllIGJ5xYJvIHphcGFtacSZdHl3YW5lIGkgdXRyenlteXdhbmUnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdQb3p3Jm9hY3V0ZTtsIG5hIHJlamVzdHJhY2rEmSBlbWFpbG93xIUnOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ0RvbXnFm2xuYSBncnVwYSBkbGEgbm93eWNoIHXFvHl0a293bmlrJm9hY3V0ZTt3JzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnU3phYmxvbiB6bWlhbnkgdXN0YXdpZcWEJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdIYXPFgmEgbmllIHpnYWR6YWrEhSBzacSZJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ05pZXByYXdpZMWCb3dhIG5hendhIHXFvHl0a293bmlrYSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdOaWVwcmF3aWTFgm93ZSBoYXPFgm8nOwokbGFuZ1snZWRpdHVzZXInXSA9ICdFZHl0dWogdcW8eXRrb3duaWthJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnUG9wcmF3bmllJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnTmF6d2EgdcW8eXRrb3duaWthJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdUZW4gdcW8eXRrb3duaWsgbmllIGplc3QgY3rFgm9ua2llbSDFvGFkbmVqIGdydXB5JzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICdCcmFrIGNlY2gnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdQciZvYWN1dGU7YnVqIHphaW1wb3J0b3dhxIcgemR1cGxpa293YW5lIGNlY2h5JzsKJGxhbmdbJ3ZhbHVlJ10gPSAnV2FydG/Fm8SHJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dydXB5JzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdDZWNoeSc7CiRsYW5nWydwcm9wbmFtZSddID0gJ05hendhIGNlY2h5JzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ1dhcnRvxZvEhyBjZWNoeSc7CiRsYW5nWydhZGQnXSA9ICdEb2Rhaic7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdG9yaWEnOwokbGFuZ1snZWRpdCddID0gJ0VkeXR1aic7CiRsYW5nWydleHBpcmVzJ10gPSAnV3lnYXNhJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ1BvZGFqIGRhdMSZJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgZ29kemluJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgZ29kemlueSc7CiRsYW5nWyc0OGhycyddID0gJzQ4IGdvZHppbnknOwokbGFuZ1snMXdlZWsnXSA9ICcxIHR5ZHppZcWEJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgdHlnb2RuaWUnOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBtaWVzacSFYyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBtaWVzacSFY2UnOwokbGFuZ1snNm1vbnRocyddID0gJzYgbWllc2nEhWNlJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSByb2snOwokbGFuZ1snbmV2ZXInXSA9ICdOaWdkeSc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1xYIgem9zdGHFgiB6YWluc3RhbG93YW55IHBvcHJhd25pZS4gPGJyLz5VcGV3bmlqIHNpxJksIMW8ZSB1c3Rhd2lzeiB1cHJhd25pZW5pYSBkbyAmcXVvdDtabWlhbiB3xYJhxZtjaXdvxZtjaSBtb2R1xYJ1IHXFvHl0a293bmlrJm9hY3V0ZTt3IEZFVS4mcXVvdDs8YnIgLz48YnIgLz4NCkRvZGF0a293byAtIHBvbGVjYW15IHphaW5zdGFsb3dhbmllIG1vZHXFgnUgQ2FwdGNoYS4gUG8gemFpbnN0YWxvd2FuaXUgLSBvZGN6eXRhbmllIHdhcnRvxZtjaSB6IG9icmF6a2EgYsSZZHppZSBrb25pZWN6bmUsIMW8ZWJ5IHd5cGXFgm5pxIcgZm9ybXVsYXJ6LiBUbyB0YWtpIHRyaWNrLCDFvGVieSB6cmVkdWtvd2HEhyBsaWN6YsSZIHNwYW11IGkgYXV0b21hdHljem55Y2ggcm9ib3Qmb2FjdXRlO3csIGt0Jm9hY3V0ZTtyZSB1dHJ1ZG5pYWrEhSDFvHljaWUgdyBzaWVjaS4NCg0KPHN0cm9uZz5Ob3RlOjwvc3Ryb25nPiBUaGUgbm9jYXB0Y2hhIHBhcmFtZXRlciBjYW4gYmUgdXNlZCB0byBkaXNhYmxlIHRoaXMgZnVuY3Rpb25hbGl0eSBldmVuIGlmIHRoZSBDYXB0Y2hhIG1vZHVsZSBpcyBpbnN0YWxsZWQuJnF1b3Q7JzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAnSGFzxYJvJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnUG9ub3duaWUnOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ0dydXBhIG8gdGFraWVqIG5hendpZSBqdcW8IGlzdG5pZWplJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ0VkeXR1aiBncnVwxJknOwokbGFuZ1snc3VibWl0J10gPSAnV3nFm2xpaic7CiRsYW5nWydjYW5jZWwnXSA9ICdBbnVsdWonOwokbGFuZ1snZGVsZXRlJ10gPSAnS2FzdWonOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdDenkgbmEgcGV3bm8gc8SFIHRvIHfFgmHFm2Npd2UgdXN0YXdpZW5pYSBkbGEgdGVqIGdydXB5P1xuIFd5xYLEhWN6ZW5pZSB0ZWogY2VjaHkgbmllIHVzdW5pZSDFvGFkbnljaCB3cGlzJm9hY3V0ZTt3IHogdGFiZWxpIGNlY2ggZGxhIHRlaiBncnVweS91xbx5dGtvd25pa2EuIFBvIHByb3N0dSBixJlkxIUgb25lIG5pZWRvc3TEmXBuZSc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnTmEgcGV3bm8gdXN1bsSFxIcgdMSZIGdydXDEmT8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ05hIHBld25vIHVzdW7EhcSHIHTEmSBjZWNoxJk/IFxuIHBvIHRlaiBha2NqaSBza2Fzb3dhbmUgem9zdGFuxIUgdGXFvCBkYW5lIHXFvHl0a293bmlrJm9hY3V0ZTt3IGRvIG5pZWogcHJ6eXBpc2FueWNoLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdaYSBtYcWCbyBwYXJhbWV0ciZvYWN1dGU7dyc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdOYXp3YSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW0geiBkb2RhbmllbSBjZWNoeSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnUHJvYmxlbSB6IGRvZGFuaWVtIHJlbGFjamkgZ3J1cHknOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlbSB6IGRvZGFuaWVtIGdydXB5JzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSB6IGRvZGFuaWVtIHXFvHl0a293bmlrYSBkbyBncnVweSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbSB6ZSBza2Fzb3dhbmllbSBjZWNoeSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ05pZSBtb2fEmSBvZG5hbGXFusSHIGFkcmVzdSBlbWFpbCc7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnQnJhayB1cHJhd25pZcWEIGRvIHphcGlzdSB3IGthdGFsb2d1IGRvY2Vsb3d5bSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnTmllcHJhd2lkxYJvd2UgcGFyYW1ldHJ5JzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTmllIG1vZ8SZIG9kbmFsZcW6xIcgxbxhZG55Y2ggZ3J1cCc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ1phc3Rvc3VqJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRydWonOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ05hendhIHXFvHl0a293bmlrYSAtIHd5cmHFvGVuaWUgcmVndWxhcm5lJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnT3Bpcyc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOYXp3YSBncnVweSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdEb3N0xJlwIHphYnJvbmlvbnknOwokbGFuZ1snZXJyb3InXSA9ICdCxYLEhWQnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdEb2RhaiBncnVwxJknOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnR1aiBncnVwxJknOwokbGFuZ1snYWRkdXNlciddID0gJ0RvZGFqIHXFvHl0a293bmlrYSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVcW8eXRrb3duaWsmb2FjdXRlO3cgem5hbGV6aW9ubyBzcGXFgm5pYWrEhWN5Y2gga3J5dGVyaWEnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwYSc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1d5YmllcnogZ3J1cMSZJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1N6YWJsb24gcmVqZXN0cmFjamknOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnU3phYmxvbiB3eWxvZ293YW5pYSBzacSZJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnU3phYmxvbiB6YWxvZ293YW5pYSBzacSZJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnVXN0YXdpZW5pYSc7CiRsYW5nWyd1c2VycyddID0gJ1XFvHl0a293bmljeSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdaYXJ6xIVkemFuaWUgdcW8eXRrb3duaWthbWkgRkVVJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnUG96dyZvYWN1dGU7bCB1xbx5dGtvd25pa29tIGxvZ293YcSHIHNpxJkgbmEgc3Ryb25pZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnRG9tecWbbG5hIHN0cm9uYSBnxYImb2FjdXRlO3duYSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnT3N0YXRuaW8gb3R3aWVyYW5hIHN0cm9uYSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdJbm5hIHN0cm9uYTonOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ1dwcm93YWTFuiB0ZWtzdCB6IG9icmF6a2EnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/pt_BR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk5vdGE6IDwvc3Ryb25nPiBFc3RlIG0mb2FjdXRlO2R1bG8gdXNhIG8gbWNyeXB0IHBhcmEgY3JpcHRvZ3JhZmlhLCBvIG1jcnlwdCBuJmF0aWxkZTtvIGZvaSBlbmNvbnRyYWRvIGVtIHN1YSBpbnN0YWxhJmNjZWRpbDsmYXRpbGRlO28uIFBvciBmYXZvciBjb250YXRlIG8gYWRtaW5pc3RyYWRvciBkbyBzZXUgc2Vydmlkb3IuJzsKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ0VkaXRhbmRvIFVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnRG8gbm90IGlubGluZSBmb3Jtcyc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaXF1ZSBhcXVpIHNlIHZvYyZlY2lyYzsgbiZhdGlsZGU7byBzZSBsZW1icmEgZGFzIGluZm9ybWEmY2NlZGlsOyZvdGlsZGU7ZXMgZGUgbG9naW4nOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0NsaXF1ZSBhcXVpIHNlIHZvYyZlY2lyYzsgZXNxdWVjZXUgc3VhIHNlbmhhJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnQ2xpcXVlIGFxdWkgcGFyYSBmYXplciBsb2dvZmYnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ0NsaXF1ZSBhcXVpIHBhcmEgYXR1YWxpemFyIHN1YSBzZW5oYSBvdSBvdXRyYXMgaW5mb3JtYSZjY2VkaWw7Jm90aWxkZTtlcyc7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ1ZlciBtb2RlbG8gZG8gdXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1snZXZlbnQnXSA9ICdFdmVudG8nOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ05vdGlmaWNhJmNjZWRpbDsmYXRpbGRlO28gZGUgRXZlbnRvIGRvIEZFVSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX2FkZHJlc3MnXSA9ICdFbmRlcmUmY2NlZGlsO28gZG8gZW1haWwgZGUgbm90aWZpY2EmY2NlZGlsOyZhdGlsZGU7byc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnTW9kZWxvIGRvIGVtYWlsIGRlIG5vdGlmaWNhJmNjZWRpbDsmYXRpbGRlO28nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnQXNzdW50byBkbyBlbWFpbCBkZSBub3RpZmljYSZjY2VkaWw7JmF0aWxkZTtvJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25zJ10gPSAnTm90aWZpY2EmY2NlZGlsOyZvdGlsZGU7ZXMgZGUgZW1haWwnOwokbGFuZ1snT25Mb2dpbiddID0gJ0FvIGxvZ2FyJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnQW8gZGVzbG9nYXInOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnQW8gZXhwaXJhciBhIHNlc3MmYXRpbGRlO28nOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnQW8gY3JpYXIgbm92byB1c3UmYWFjdXRlO3Jpbyc7CiRsYW5nWydPbkRlbGV0ZVVzZXInXSA9ICdBbyBkZWxldGFyIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ0FvIGFsdGVyYXIgY29uZmlndXJhJmNjZWRpbDsmb3RpbGRlO2VzIGRvIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdBbyBjcmlhciBncnVwbyBkZSB1c3UmYWFjdXRlO3Jpb3MnOwokbGFuZ1snT25EZWxldGVHcm91cCddID0gJ0FvIGRlbGV0YXIgZ3J1cG8gZGUgdXN1JmFhY3V0ZTtyaW9zJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnQXMgaW5mb3JtYSZjY2VkaWw7Jm90aWxkZTtlcyBkZSBsb2dpbiBmb3ImYXRpbGRlO28gdmVyaWZpY2FkYXMgZSBhY2hhbW9zIHVtIHVzdSZhYWN1dGU7cmlvIHF1ZSBjb3JyZXNwb25kZSBhb3MgZGV0YWxoZXMgcXVlIHZvYyZlY2lyYzsgZGlnaXRvdS4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1NldSBub21lIGRlIHVzdSZhYWN1dGU7cmlvICZlYWN1dGU7JzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ04mb2FjdXRlO3MgcmVjb21lbmRhZG9zIHF1ZSB2b2MmZWNpcmM7IGd1YXJkZSBlc3NhcyBpbmZvcm1hJmNjZWRpbDsmb3RpbGRlO2VzIG51bSBsdWdhciBzZWd1cm8gbWFzIHF1ZSB2b2MmZWNpcmM7IHBvc3NhIGFjZXNzYXIuJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdJRC9hcGVsaWRvIGRhIHAmYWFjdXRlO2dpbmEgZGVzdGlubyBhcCZvYWN1dGU7cyBhbHRlcmFyIGNvbmZpZ3VyYSZjY2VkaWw7Jm90aWxkZTtlcyc7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdJRC9hcGVsaWRvIGRhIHAmYWFjdXRlO2dpbmEgZGVzdGlubyBhcCZvYWN1dGU7cyBjZXJpZmljYSZjY2VkaWw7JmF0aWxkZTtvIGRlIGMmb2FjdXRlO2RpZ28gKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0RldGFsaGVzIGRvIGVtYWlsIGRlIG5vbWUgZGUgdXN1JmFhY3V0ZTtyaW8gcGVyZGlkbyc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ01vZGVsbyBkZSBjb25maXJtYSZjY2VkaWw7JmF0aWxkZTtvIGRlIG5vbWUgZGUgdXN1JmFhY3V0ZTtyaW8gcGVyZGlkbyc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Vycm86IE1haXMgZGUgdW1hIGNvbnRhIGRlIHVzdSZhYWN1dGU7cmlvIGNvcnJlc3BvbmRlIGFzIGluZm9ybWEmY2NlZGlsOyZvdGlsZGU7ZXMgZGlnaXRhZGFzLic7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdFcnJvOiBOJmF0aWxkZTtvIGZvaSBwb3NzJmlhY3V0ZTt2ZWwgYWNoYXIgdW0gdXN1JmFhY3V0ZTtyaW8gY29ycmVzcG9uZGVudGUuJzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdFcnJvOiBOJmF0aWxkZTtvIGZvaSBwb3NzJmlhY3V0ZTt2ZWwgZW5jb250cmFyIHVtIGdydXBvIGNvbSBlc3NlIG5vbWUnOwokbGFuZ1sncmVhZG9ubHknXSA9ICdBcGVuYXMgTGVpdHVyYSc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnQ2xhc3NlIGRlIG1hbmlwdWxhJmNjZWRpbDsmYXRpbGRlO28gZGUgdXN1JmFhY3V0ZTtyaW9zJzsKJGxhbmdbJ2FkbWluX2xvZ291dCddID0gJ0Rlc2xvZ2FkbyBwZWxvIGFkbWluaXN0cmFkb3InOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ01vc3RyYXIgYXBlbmFzIHVzdSZhYWN1dGU7cmlvcyBsb2dhZG9zJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdEZXNsb2dhciBlc3RlIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ1Byb3ByaWVkYWRlcyBkbyB1c3UmYWFjdXRlO3Jpbyc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0hpc3Qmb2FjdXRlO3JpY28gZG8gdXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0YXInOwokbGFuZ1snY2xlYXInXSA9ICdMaW1wYXInOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJoaXN0b3J5J10gPSAnRXhwb3J0YXIgaGlzdCZvYWN1dGU7cmljbyBkbyB1c3UmYWFjdXRlO3JpbyBxdWUgdGVuaGFtIGFvIG1lbm9zIHBhcmEgQVNDSUknOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdMaW1wYXIgaGlzdCZvYWN1dGU7cmljbyBkbyB1c3UmYWFjdXRlO3JpbyBxdWUgdGVuaGFtIGFvIG1lbm9zJzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0VzcXVlY2V1IHNldXMgZGV0YWxoZXMgZGUgbG9naW4/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydGFyIGFzIGRlZmluaSZjY2VkaWw7Jm90aWxkZTtlcyAoZSBwcm9wcmllZGFkZXMpIGRlIGdydXBvIHBhcmEgWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdNYW51dGVuJmNjZWRpbDsmYXRpbGRlO28gZG8gaGlzdCZvYWN1dGU7cmljbyBkZSB1c3UmYWFjdXRlO3Jpb3MnOwokbGFuZ1sneWVzJ10gPSAnU2ltJzsKJGxhbmdbJ25vJ10gPSAnTiZhdGlsZGU7byc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICdkZSc7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBTZW0gTGltaXRlICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ1VtYSBob3JhIGF0ciZhYWN1dGU7cyc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdTZWlzIGhvcmFzIGF0ciZhYWN1dGU7cyc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICdEb3plIGhvcmFzIGF0ciZhYWN1dGU7cyc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ1VtIGRpYSBhdHImYWFjdXRlO3MnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnVW1hIHNlbWFuYSBhdHImYWFjdXRlO3MnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ0R1YXMgc2VtYW5hcyBhdHImYWFjdXRlO3MnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ1VtIG0mZWNpcmM7cyBhdHImYWFjdXRlO3MnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ1RyJmVjaXJjO3MgbWVzZXMgYXRyJmFhY3V0ZTtzJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnU2VpcyBtZXNlcyBhdHImYWFjdXRlO3MnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnVW0gYW5vIGF0ciZhYWN1dGU7cyc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdBZ3J1cGFuZG8gZSBBcnJ1bWFucm8nOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1JlZ2lzdHJvcyBkZSBhY29yZG8gY29tIG8gY3JpdCZlYWN1dGU7cmlvJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnTm9tZSBkZSB1c3UmYWFjdXRlO3JpbyAtIGRlc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdOb21lIGRlIHVzdSZhYWN1dGU7cmlvIC0gYXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnRGF0YSAtIGRlc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9kYXRlX2FzYyddID0gJ0RhdGEgLSBhc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1RpcG8gZGUgZXZlbnRvIC0gZGVzY2VuZGVudGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdUaXBvIGRlIGV2ZW50byAtIGFzY2VuZGVudGUnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnRW5kZXJlJmNjZWRpbDtvIElQIC0gZGVzY2VuZGVudGUnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdFbmRlcmUmY2NlZGlsO28gSVAgLSBhc2NlbmRlbnRlJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdOZW5odW0gaGlzdCZvYWN1dGU7cmljbyBkZXRlY3RhZG8nOwokbGFuZ1sncmVzZXQnXSA9ICdMaW1wYXInOwokbGFuZ1sncHJvbXB0X2dyb3VwX2lwJ10gPSAnQWdydXBhciBwb3IgZW5kZXJlJmNjZWRpbDtvIElQJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRmlsdHJvIHBvciB0aXBvIGRlIGV2ZW50byc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdNb3N0cmFyIGFwZW5hcyBldmVudG9zIHF1ZSBzZWphbSBtZW5vcyBxdWUnOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ0xpbWl0ZSBkYSBQJmFhY3V0ZTtnaW5hJzsKJGxhbmdbJ2ZvciddID0gJ3BhcmEnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdSZWxhdCZvYWN1dGU7cmlvIGRvIGhpc3Qmb2FjdXRlO3JpY28gZGUgdXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1sndW5rbm93biddID0gJ0Rlc2NvbmhlY2lkbyc7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnRW5kZXJlJmNjZWRpbDtvIElQJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdUaXBvIGRlIGV2ZW50byc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdGEnOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ1ZvbHRhcic7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0YSZjY2VkaWw7JmF0aWxkZTtvIENvbXBsZXRhJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ0xpbmhhcyBwcm9jZXNzYWRhcyc7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnRXJyb3MgZW5jb250cmFkb3MnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ1JlZ2lzdHJvcyBhZGljaW9uYWRvcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnTiZhdGlsZGU7byBmb2kgcG9zcyZpYWN1dGU7dmVsIGxvY2FsaXphciBwcm9wcmllZGFkZXMgcGFyYSBvIGdydXBvICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnTiZhdGlsZGU7byBmb2kgcG9zcyZpYWN1dGU7dmVsIG9idGVyIHJlc3Bvc3RhIGRvIHNlcnZpZG9yIFNNVFAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnTyBhcnF1aXZvIGVzcGVjaWZpY2FkbyAoJXMpIG4mYXRpbGRlO28gcG9kZSBzciBsb2NhbGl6YWRvJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdWYWxvciBpbnZhbGlkbyBwYXJhIGRyb3Bkb3duIG91IG11bHRpc2VsZWN0IC0gY2FtcG8gJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdPIGNhbXBvICVzIGV4Y2VkZSBvIHRhbW5haG8gbSZhYWN1dGU7eGltbyc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0Vycm8gZGUgaW1wb3J0YSZjY2VkaWw7JmF0aWxkZTtvIChsaWhhICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBvYnRlciBhcyBkZWZpbmkmY2NlZGlsOyZvdGlsZGU7ZXMgZGEgcHJvcHJpZWRhZGUgKGVycm8gaW50ZXJubyknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbWEgYXBsaWNhbmRvIGFzIGluZm9ybWEmY2NlZGlsOyZvdGlsZGU7ZXMgZG8gdXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBhY2hhciB1bWEgY29sdW5hIHBhcmEgbyBjYW1wbyAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBsb2NhbGl6YXIgYXMgcHJvcHJpZWRhZGVzIGRvIGdydXBvIGVzcGVjaWZpY2Fkbyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnTyBhcnF1aXZvIGVzcGVjaWZpY2FkbyBwYXJhIHNlciBpbXBvcnRhZG8gbiZhdGlsZGU7byBlc3QmYWFjdXRlOyBubyBmb3JtYXRvIGNvcnJldG8nOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBhYnJpciBvIGFycXVpdm8nOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0YXIgdXN1JmFhY3V0ZTtyaW9zIHBhcmEgZXN0ZSBncnVwbyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnNlcmlyIGFycXVpdm8gQ1NWJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnSW5zZXJpciBhcnF1aXZvIFhNTCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcnMnXSA9ICdFeHBvcnRhciB1c3UmYWFjdXRlO3Jpb3MnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0YXIgVXN1JmFhY3V0ZTtyaW9zJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ0xpbXBhcic7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0NhbWluaG8gZGVzdGlubyBkYSBpbWFnZW0nOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdVbSBwcm9ibGVtYSBvY29ycmV1IGNvbSB1bSBhcnF1aXZvIHJlcXVlcmlkbyBuJmF0aWxkZTtvIGVuY29udHJhZG8nOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBzZXBhcmFyIG8gYXJxdWl2byBYTUwgZXNwZWNpZmljYWRvJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdOJmF0aWxkZTtvICZlYWN1dGU7IHBvc3MmaWFjdXRlO3ZlbCBkZWxldGFyIHVtIGdydXBvIHF1ZSBhaW5kYSBwb3NzdWkgdXN1JmFhY3V0ZTtyaW9zJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdFc3NlIHVzdSZhYWN1dGU7cmlvIGomYWFjdXRlOyBlc3QmYWFjdXRlOyBsb2dhZG8uJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ08gdGV4dG8gZGEgaW1hZ2VtIG4mYXRpbGRlO28gZm9pIGluc2VyaWRvIGNvcnJldGFtZW50ZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnUGVybWl0aXIgdXN1JmFhY3V0ZTtyaW9zIGxvZ2FyIG1haXMgZGUgdW1hIHZleic7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnRXh0ZW5zJm90aWxkZTtlcyBkZSBhcnF1aXZvcyBkZSBpbWFnZW5zIHF1ZSBvcyB1c3UmYWFjdXRlO3Jpb3MgcG9kZW0gZW52aWFyJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgZ3JvdXAgZGVzY3JpcHRpb248L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBpZCBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZG91dCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBleHBpcmVzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZCBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnVW0gZXZlbnRvIGdlcmFkbyBxdWFuZG8gdW0gdXN1JmFhY3V0ZTtyaW8gbG9nYSBubyBzaXN0ZW1hJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdVbSBldmVudG8gZ2VyYWRvIHF1YW5kbyB1bSB1c3UmYWFjdXRlO3JpbyBkZXNsb2dhIGRvIHNpc3RlbWEnOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdVbSBldmVudG8gZ2VyYWRvIHF1YW5kbyBhIHNlc3MmYXRpbGRlO28gZGUgdW0gdXN1JmFhY3V0ZTtyaW8gZXhwaXJhJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnVW0gZXZlbnRvIGdlcmFkbyBxdWFuZG8gdW0gbm92byB1c3UmYWFjdXRlO3JpbyAmZWFjdXRlOyBjcmlhZG8nOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdVbSBldmVudG8gZ2VyYWRvIHF1YW5kbyBhcyBpbmZvcm1hJmNjZWRpbDsmb3RpbGRlO2VzIGRlIHVtIHVzdSZhYWN1dGU7cmlvIHMmYXRpbGRlO28gYXR1YWxpemFkYXMnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdVbSBldmVudG8gZ2VyYWRvIHF1YW5kbyBhIGNvbnRhIGRlIHVtIHVzdSZhYWN1dGU7cmlvICZlYWN1dGU7IGRlbGV0YWRhJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ1VtIGV2ZW50byBnZXJhZG8gcXVhbmRvIHVtIGdydXBvIGRlIHVzdSZhYWN1dGU7cmlvcyAmZWFjdXRlOyBjcmlhZG8nOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZUdyb3VwJ10gPSAnVW0gZXZlbnRvIGdlcmFkbyBxdWFuZG8gdW0gZ3J1cG8gZGUgdXN1JmFhY3V0ZTtyaW9zICZlYWN1dGU7IGRlbGV0YWRvJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdHcnVwbyBCYWNrZW5kJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogQXMgc2VndWludGVzIG1hY3JvcyBwb2RlbSBzZXIgdXNhZGFzIG5lc3RlcyBjYW1wb3M6IHskdXNlcm5hbWV9LHskZ3JvdXB9LiBRdWFuZG8gdXNhbmRvIGEgbWFjcm8geyRncm91cH0sIE8gc2lzdGVtYSBpciZhYWN1dGU7IHN1YnN0aXR1aXIgbyBub21lIGRvIHByaW1laXJvIG1lbWJybyBkbyBncnVwbyBxdWUgbyB1c3UmYWFjdXRlO3JpbyBwZXJ0ZW5jZSBlIGVudCZhdGlsZGU7byBkaXJlY2lvbmFyIHBhcmEgYXF1ZWxhIHAmYWFjdXRlO2dpbmEnOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0VkaXRlIGVzdGUgY2FtcG8gcGFyYSByZXNldGFyIGFzIHNlbmhhcyBkZSB1c3UmYWFjdXRlO3Jpbyc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnRWRpdGUgZXN0ZSBjYW1wbyBwYXJhIHJlc2V0YXIgYXMgc2VuaGFzIGRlIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ0Vzc2Ugbm9tZSBkZSB1c3UmYWFjdXRlO3JpbyBqJmFhY3V0ZTsgZXhpc3RlJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ05lbmh1bSByZXN1bHRhZG9wIG9idGlkbyBkYSBleHBvcnRhJmNjZWRpbDsmYXRpbGRlO28gY3N2JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ1RhbWFuaG8gZG8gY2FtcG8gbm9tZSBkZSB1c3UmYWFjdXRlO3Jpbyc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdUYW1hbmhvIGRvIGNhbXBvIHNlbmhhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICd0YW1hbmhvcyBtJmlhY3V0ZTtuaW1vIGUgbSZhYWN1dGU7eGltbyBwYXJhIHNlbmhhcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAndGFtYW5ob3MgbSZpYWN1dGU7bmltbyBlIG0mYWFjdXRlO3hpbW8gcGFyYSBub21lcyBkZSB1c3UmYWFjdXRlO3Jpb3MnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ0VuZGVyZSZjY2VkaWw7byBkZSBlbWFpbCBpbnYmYWFjdXRlO2xpZG8nOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdOJmF0aWxkZTtvIGZvaSBwb3NzJmlhY3V0ZTt2ZWwgbG9jYWxpemFyIHVtIGVuZGVyZSZjY2VkaWw7byBkZSBlbWFpbCBwYXJhIGVzdGEgY29udGEnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ1Byb2JsZW1hIGFsdGVyYW5kbyBpbmZvcm1hJmNjZWRpbDsmb3RpbGRlO2VzIGRvIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsZW1hIGFvIGNvbmZpZ3VyYXIgcHJvcHJpZWRhZGUnOwokbGFuZ1sndXNlcl9hZGRlZCddID0gJ1VzdSZhYWN1dGU7cmlvIGFkaWNpb25hZG8gJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVc3UmYWFjdXRlO3JpbyByZW1vdmlkbyB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdQcm9wcmllZGFkZSc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVmFsb3IgKGV4cHJlc3MmYXRpbGRlO28gcmVndWxhciknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdBdGVuJmNjZWRpbDsmYXRpbGRlO286IEVzdGVzIGNhbXBvcyBhZmV0YW0gbyB0YW1hbmhvIGRvcyBjYW1wb3MgZSBmb3JtdWwmYWFjdXRlO3Jpb3MgZGUgZW50cmFkYS4gRGV2ZS1zZSB0b21hciBjdWlkYWRvIGFvIGRpbWludWlyIGVzc2VzIGNhbXBvcyBlbSB1bSBzaXRlIGV4aXN0ZW50ZS4nOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ1ZvYyZlY2lyYzsgdGVtIGNlcnRlemEgcXVlIGRlc2VqYSBhbHRlcmFyIGFzIHByZWZlciZlY2lyYztuY2lhcyBkbyBtJm9hY3V0ZTtkdWxvJzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFbmRlcmUmY2NlZGlsO28gZGUgZW1haWwgaiZhYWN1dGU7IHV0aWxpemFkbyc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdVc2FyIGNvb2tpZXMgcGFyYSBsZW1icmFyIG8gbG9naW4nOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdOb21lIGRvIGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1Blcm1pdGlyIGVtYWlscyBkdXBsaWNhZG9zJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ08gZW5kZXJlJmNjZWRpbDtvIGRlIGVtYWlsICZlYWN1dGU7IG8gbm9tZSBkZSB1c3UmYWFjdXRlO3Jpbyc7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdUZW50YXIgbWFudGVyIG9zIGxvZ2lucyBhdGl2b3MgY29tIG8gdXNvIGRlIGNvb2tpZXMgPGVtPihPIGNvb2tpZSAmZWFjdXRlOyByZWluaWNpYWRvIGNvbSBhdGl2aWRhZGUgbm8gc2l0ZSk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcocGVybWl0aXIgcXVlIG0mdWFjdXRlO2x0aXBsb3MgdXN1JmFhY3V0ZTtyaW9zIHRlbmhhbSBvIG1lc21vIGVuZGVyZSZjY2VkaWw7byBkZSBlbWFpbCknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1c2VyJiMwMzk7cyBlbWFpbCBhZGRyZXNzIGlzIHRoZWlyIHVzZXJuYW1lIC0tIGRvbiYjMDM5O3Qgc2V0IHRoaXMgd2l0aCAmcXVvdDthbGxvdyBkdXBsaWNhdGUgZW1haWwgYWRkcmVzc2VzJnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgJnF1b3Q7Zm9yZ290IHBhc3N3b3JkJnF1b3Q7IHJlbWluZGVycz8nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKGFsbG93IGEgdXNlcnMgdG8gcmVxdWVzdCBhIHBhc3N3b3JkIHJlc2V0LCBldmVuIGlmIHRoZXkgaGF2ZW4mIzAzOTt0IGFjdGVkIG9uIGEgcHJldmlvdXMgb25lKSc7CiRsYW5nWydwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJ1VzYXIgcGVybWlzcyZvdGlsZGU7ZXMgZXNwZWMmaWFjdXRlO2ZpY2FzIGRvIEZyb250IEVuZCBVc2Vycz8nOwokbGFuZ1snaW5mb19mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnKE5vcm1hbG1lbnRlIGFzIHBlcm1pc3Mmb3RpbGRlO2VzIGRvcyBGRVVzZXJzIHMmYXRpbGRlO28gYXMgbWVzbWFzIHF1ZSBhcyBwZXJtaXNzJm90aWxkZTtlcyBkZSAmYWFjdXRlO3JlYSBkb3MgYWRtaW5zLCBjb21vIGFkaWNpb25hciB1c3UmYWFjdXRlO3JpbywgYWRpY2lvbmFyIGdydXBvLCBldGMuIENhc28gdm9jJmVjaXJjOyBzZWxlY2lvbmUgZXN0YSBvcCZjY2VkaWw7JmF0aWxkZTtvIGFzIHBlcm1pc3Mmb3RpbGRlO2VzIHBhcmEgb3VzIEZFVXNlcnMgc2VyJmF0aWxkZTtvIHNlcGFyYWRhcyknOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBhY2hhciBvIGFycXVpdm8gZW52aWFkbyAoZXJybyBpbnRlcm5vKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ0hvdXZlIHVtIHByb2JsZW1hIGNvbSBvIGFycXVpdm8gZW52aWFkby4gUG9yIGZhdm9yIHRlbnRlIG5vdmFtZW50ZSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdWb2MmZWNpcmM7IG4mYXRpbGRlO28gZGlnaXRvdSB1bSBub21lIGRlIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ1ZvYyZlY2lyYzsgbiZhdGlsZGU7byBkaWdpdG91IHNldSBlbmRlcmUmY2NlZGlsO28gZGUgZW1haWwnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3Bhc3N3b3JkJ10gPSAnVm9jJmVjaXJjOyBuJmF0aWxkZTtvIGRpZ2l0b3UgdW1hIHNlbmhhJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdTYWlyIGRvIEZyb250ZW5kIFVzZXInOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ2dlZGluJ10gPSAnTG9naW4gZG8gRnJvbnRlbmQgVXNlcic7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPkN1aWRhZG88L2I+Vm9jJmVjaXJjOyBwb2RlIGNhdXNhciBkYW5vcyBwZXJtYW5lbnRlcyBhbyBzaXRlIGFvIGFsdGVyYXIgcHJvcHJpZWRhZGVzIGV4aXN0ZW50ZXMgZW0gdW0gZ3J1cG8gYXRpdm8gbm8gc2l0ZSA8aT4ocHJpbmNpcGFsbWVudGUgY2FzbyByZWR1emEgbyB0YW1hbmhvIGRlIGNhbXBvcywgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnRXN0YSBmdW4mY2NlZGlsOyZhdGlsZGU7byBuJmF0aWxkZTtvIGVzdCZhYWN1dGU7IGRpc3BvbiZpYWN1dGU7dmVsIG5vIHdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ04mYXRpbGRlO28gY3JpZSB1bWEgcHJvcHJpZWRhZGUgcGFyYSBub21lIGRlIHVzdSZhYWN1dGU7cmlvIG91IHNlbmhhLCBpc3RvIHBvcnF1ZSBlc3NhcyBwcm9wcmllZGFkZXMgcyZhdGlsZGU7byBpbmNsdXNhcyBubyBtJm9hY3V0ZTtkdWxvIEZyb250RW5kVXNlcnMuJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRjc3YnXSA9ICdFeHBvcnRhciB1c3UmYWFjdXRlO3Jpb3MgcGFyYSBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRXhwb3J0YXInOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0YXInOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbmlzdHJhZG9yJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnRWRpdGFyIFByb3ByaWVkYWRlJzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ0NvbXByaW1lbnRvIG0mYWFjdXRlO3hpbW8nOwokbGFuZ1snY3JlYXRlZCddID0gJ0NyaWFkbyc7CiRsYW5nWydzb3J0YnknXSA9ICdPcmRlbmFyIHBvcic7CiRsYW5nWydzb3J0J10gPSAnT3JkZW5hbmRvJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1VzdSZhYWN1dGU7cmlvcyBub3MgZ3J1cG9zIHNlbGVjaW9uYWRvcyc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdMaW1pdGFyIHJlc3VsdGFkb3MgZW0gJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBsb2NhbGl6YXIgdW0gY2FtcG8gZGUgZW1haWwgcGFyYSBlc3RlIHVzdSZhYWN1dGU7cmlvLiBWb2MmZWNpcmM7IHBvZGUgcHJlY2lzYXIgZW50cmFyIGVtIGNvbnRhdG8gY29tIG8gYWRtaW5pc3RyYWRvciBkbyBzaXN0ZW1hLic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ0lEIGRhIHAmYWFjdXRlO2dpbmEvQXBlbGlkbyBwYXJhIGZvcm11bCZhYWN1dGU7cmlvIGRlIHNlbmhhIGVzcXVlY2lkYSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ0lEIGRhIHAmYWFjdXRlO2dpbmEvQXBlbGlkbyBwYXJhIGZvcm11bCZhYWN1dGU7cmlvIGRlIGFsdGVyYXIgY29uZmlndXJhJmNjZWRpbDsmb3RpbGRlO2VzJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnSUQgZGEgcCZhYWN1dGU7Z2luYS9BcGVsaWRvIHBhcmEgaXIgYXAmb2FjdXRlO3MgbyBsb2dpbiAqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ0lEIGRhIHAmYWFjdXRlO2dpbmEvQXBlbGlkbyBwYXJhIGlyIGFwJm9hY3V0ZTtzIHNhaXIgKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdPcmRlbmFyJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ1VtIG4mdWFjdXRlO21lcm8gZGUgdXN1JmFhY3V0ZTtyaW9zIGVzdCZhdGlsZGU7byBhdHVhbG1lbnRlIG1vZGlmaWNhbmRvIHN1YXMgc2VuaGFzLiBBdHVhbG1lbnRlIGVzdGUgbiZ1YWN1dGU7bWVybyBlc3QmYWFjdXRlOyBlbTonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdBcGFnYXIgdG9kYXMgYXMgZW50cmFkYXMgbWFpcyB2ZWxoYXMgcXVlIHVtYSBzZW1hbmEnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnQXBhZ2FyIHRvZGFzIGFzIGVudHJhZGFzIG1haXMgdmVsaGFzIHF1ZSB1bSBtJmVjaXJjO3MnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnQXBhZ2FyIHRvZGFzIGFzIGVudHJhZGFzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdUZW0gY2VydGV6YT8nOwokbGFuZ1snZXJyb3JfaW52YWxpZGNvZGUnXSA9ICdDJm9hY3V0ZTtkaWdvIGludiZhYWN1dGU7bGlkbywgcG9yIGZhdm9yIHRlbnRlIG5vdmFtZW50ZSc7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAndW0gYyZvYWN1dGU7ZGlnbyB0ZW1wb3ImYWFjdXRlO3JpbyBwYXJhIHNldSBJRCBuJmF0aWxkZTtvIGZvaSBsb2NhbGl6YWRvIG5hIGJhc2UgZGUgZGFkb3MnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdNb2RlbG8gdXNhZG8gcGFyYSBleGliaXIgZm9ybXVsJmFhY3V0ZTtyaW8gZGUgdmVyaWZpY2EmY2NlZGlsOyZhdGlsZGU7byc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnTW9kZWxvIHVzYWRvIHBhcmEgbyBlbWFpbCBkZSBzZW5oYSc7CiRsYW5nWydlcnJvcl9yZXNldGFscmVhZHlzZW50J10gPSAnT3Ugdm9jJmVjaXJjOyBvdSBvIGFkbWluaXN0cmFkb3IgaiZhYWN1dGU7IGFjaW9ub3UgYSBvcGVyYSZjY2VkaWw7JmF0aWxkZTtvIHBhcmEgcmVzZXRhciBhIHNlbmhhIGRlc3RhIGNvbnRhLiBWZXJpZmlxdWUgc2V1IGVtYWlsIHBhcmEgb2J0ZXIgbWFpb3JlcyBpbmZvcm1hJmNjZWRpbDsmb3RpbGRlO2VzIGVtIGNvbW8gcmVzZXRhciBzdWEgc2VuaGEuJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcnJvIGRlIGJhbmNvIGRlIGRhZG9zJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1ZvYyZlY2lyYzsgZXN0JmFhY3V0ZTsgcmVjZWJlbmRvIGVzdGEgbWVuc2FnZW0gcG9ycXVlIGFsZ3UmZWFjdXRlO20gY29tdW5pY291IG8gc2l0ZSBxdWUgc3VhIHNlbmhhIGZvaSBwZXJkaWRhLiBTZSBmb3IgZXN0ZSBvIGNhc28gbGVpYSBhcyBpbnN0cnUmY2NlZGlsOyZvdGlsZGU7ZXMgYWJhaXhvLiBTZSB2b2MmZWNpcmM7IG4mYXRpbGRlO28gdGVtIGlkJmVhY3V0ZTtpYSBkbyBxdWUgc2VqYSBlc3RhIG1lbnNhZ2VtIGVudCZhdGlsZGU7byB2b2MmZWNpcmM7IHBvZGUgZGVsZXRhciBlc3RhIG1lbnNhZ2VtIHNlbSBwcm9ibGVtYXMuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnQyZvYWN1dGU7ZGlnbyc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdPIGMmb2FjdXRlO2RpZ28gc2VndWludGUgZm9pIGdlcmFkbyBhdXRvbWF0aWNhbWVudGUgcGFyYSBwb2RlciB2ZXJpZmljYXIgYSBjb250YSBkZSB1c3UmYWFjdXRlO3Jpby4gQW8gY2xpY2FyIG5vIGxpbmsgYWJhaXhvIHNlciZhYWN1dGU7IGFwcmVzZW50YWRvIHVtIGNhbXBvIHBhcmEgYSBlbnRyYWRhIGRlc3RlIGMmb2FjdXRlO2RpZ28sIG5vcm1hbG1lbnRlIG8gY2FtcG8gaiZhYWN1dGU7IHZlbSBwcmVlbmNoaWRvLCBtYXMgY2FzbyBuJmF0aWxkZTtvIHZlbmhhIG8gYyZvYWN1dGU7ZGlnbyAmZWFjdXRlOzonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdDbGljYXIgbm8gbGluYmsgc2VndWludGUgaXImYWFjdXRlOyBlbmNhbWluaCZhYWN1dGU7LWxvIGFvIHNpdGUsIGFvbmRlIHBvZGVyJmFhY3V0ZTsgZW50cmFyIG8gYyZvYWN1dGU7ZGlnbyBhY2ltYSBlIHJlaW5pY2lhciBzdWEgc2VuaGEuJzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdTZW5oYSBQZXJkaWRhJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnTiZhdGlsZGU7byBmb2kgcG9zcyZpYWN1dGU7dmVsIGxvY2FsaXphciBvIG0mb2FjdXRlO2R1bG8gQ01TTWFpbGVyJzsKJGxhbmdbJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCddID0gJ1VtIGVtYWlsIGZvaSBlbnZpYWRvIHBhcmEgJXMgY29tIGFzIGluc3RydSZjY2VkaWw7Jm90aWxkZTtlcyBkbyBjb21vIHJlc2V0YXIgc3VhIHNlbmhhLiBPYnJpZ2Fkby4nOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdFbnQmYXRpbGRlO28gdm9jJmVjaXJjOyBlc3F1ZWNldSBzdWEgc2VuaGEuIEVudCZhdGlsZGU7bywgZXNjcmV2YSBzZXUgbm9tZSBkZSB1c3UmYWFjdXRlO3JpbyBhcXVpLCBjYXNvIHBvc3NhbW9zIGxvY2FsaXphciB2b2MmZWNpcmM7IG4mb2FjdXRlO3MgZW52aWFyZW1vcyB1bSBlbWFpbCBjb20gYXMgaW5zdHJ1JmNjZWRpbDsmb3RpbGRlO2VzIGRlIGNvbW8gcmVzZXRhciBzdWEgc2VuaGEuJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnTW9kZWxvcyBkZSBzZW5oYSBlc3F1ZWNpZGEnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnTW9kZWxvIGRlIG5vbWUgZGUgdXN1JmFhY3V0ZTtyaW8gcGVyZGlkbyc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdQcm9wcmllZGFkZSAgJXMgbiZhdGlsZGU7byBlbmNvbnRyYWRhJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdQcm9wcmllZGFkZXMgZW5jb250cmFkYXMnOwokbGFuZ1snYWRkcHJvcCddID0gJ0FkaWNpb25hciBQcm9wcmllZGFkZSc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnTyBjYW1wbyByZXF1ZXJpZG8gICglcykgZXN0YXZhIHZhemlvJzsKJGxhbmdbJ2luZm9fZW1wdHlwYXNzd29yZGZpZWxkJ10gPSAnRW50cmUgY29tIHVtYSBub3ZhIHNlbmhhIGFxdWkgcGFyYSBhbHRlcmFyIGEgc2VuaGEgZXhpc3RlbnRlJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnVm9jJmVjaXJjOyBuJmF0aWxkZTtvIHBhcmVjZSBlc3RhciBsb2dhZG8nOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ0NvbmZpZ3VyYSZjY2VkaWw7Jm90aWxkZTtlcyc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJhcic7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ0Vzc2EgY29udGEgZXhwaXJvdSc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnRm9ybWF0byBlcnJhZG8gZGUgZW1haWwnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdJbnZhbGlkIGV4cGlyeSBkYXRlJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcnJvIGFsdGVyYW5kbyBwcm9wcmllZGFkZSAlcyBwYXJhIHVzdSZhYWN1dGU7cmlvICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnSWQgZGUgZ3J1cG8gaW52JmFhY3V0ZTtsaWRhICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnTWFyY2Fkb3Igb2N1bHRvIGRlIGNhbXBvJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdDb3Igb2N1bHRhIGRlIGNhbXBvJzsKJGxhbmdbJ2hpZGRlbiddID0gJ09jdWx0byhhKSc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnVW1hIHByb3ByaWVkYWRlIGNvbSBlc3RlIG5vbWUgaiZhYWN1dGU7IGV4aXN0ZSc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdOZW5odW1hIHByb3ByaWVkYWRlIGRlZmluaWRhJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnTmVuaHVtYSBwcm9wcmllZGFkZSBmb2kgc2VsZWNpb25hZGEgcGFyYSBlc3RlIGdydXBvJzsKJGxhbmdbJ25vZ3JvdXBzJ10gPSAnTmVuaHVtIGdydXBvIGRlZmluaWRvJzsKJGxhbmdbJ2dyb3Vwc2ZvdW5kJ10gPSAnR3J1cG9zIGVuY29udHJhZG9zJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdTZXIgbWVtYnJvIGRlIGFvIG1lbm9zIHVtIGdydXBvICZlYWN1dGU7IHJlcXVlcmlkbyc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnUmVxdWVyZXIgc2VyIG1lbWJybyBkZSBhbyBtZW5vcyB1bSBncnVwbyc7CiRsYW5nWydiYWNrJ10gPSAnVm9sdGFyJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyAmZWFjdXRlOyB1bSBjYW1wbyBvYnJpZ2F0Jm9hY3V0ZTtyaW8nOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ01hcmNhciBjYW1wb3Mgb2JyaWdhdCZvYWN1dGU7cmlvcyBjb20nOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnSGlsaXRlIGNhbXBvcyByZXF1ZXJpZG9zIGVtJzsKJGxhbmdbJ25leHQnXSA9ICdQciZvYWN1dGU7eGltbyc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ1VtIGdydXBvIGNvbSBvIG1lc21vIG5vbWUgaiZhYWN1dGU7IGV4aXN0ZSc7CiRsYW5nWydyZXF1aXJlZCddID0gJ1JlcXVlcmlkbyc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wY2lvbmFsJzsKJGxhbmdbJ29mZiddID0gJ0Rlc2xpZ2Fkbyc7CiRsYW5nWydzaXplJ10gPSAnVGFtYW5obyc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KFRhbWFuaG8gbSZhYWN1dGU7eGltbyBlbSBxdWFscXVlciBlaXhvIGRhIGltYWdlbSBlbSBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ1RhbWFuaG8nOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2FyYWN0ZXJlcyBuYSBlbnRyYWRhIGRlIHRleHRvKSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnT3AmY2NlZGlsOyZvdGlsZGU7ZXMgZGUgZHJvcGRvd24sIHNlcGFyYWRvcyBwb3F1ZWJyYXMgZGUgbGluaGFzLiAgT3MgdmFsb3JlcyBwb2RlbSBzZXIgc2VwYXJhZG9zIGRvIHRleHRvIGNvbSBvIGNhcmFjdGVyZT0gY2FyYWN0ZXIuIGkuZTogRmVtaW5pbm89Zic7CiRsYW5nWydwcm9tcHQnXSA9ICdJbmljaWFyJzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAnVGlwbyc7CiRsYW5nWyd0eXBlJ10gPSAnVGlwbyc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ1N0YXR1cyBkbyBjYW1wbyc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdQZXJndWludGFyIGFvIGVzcXVlY2VyPGJyLz5Ob21lIGRlIFVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0byc7CiRsYW5nWydjaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTGlzdGEgbXVsdGlzZWxlY3QnOwokbGFuZ1snaW1hZ2UnXSA9ICdJbWFnZW0gJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW5kZXJlJmNjZWRpbDtvIGRlIGVtYWlsJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnJmFncmF2ZTtyZWEgZGUgVGV4dG8nOwokbGFuZ1snZHJvcGRvd24nXSA9ICdEcm9wZG93bic7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ0JlbSB2aW5kbyc7CiRsYW5nWydsb2dvdXQnXSA9ICdTYWlyJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdVc2UgZXN0ZSBub21lIGRlIGdydXBvJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ0FsdGVyYXIgbWluaGFzIGNvbmZpZ3VyYSZjY2VkaWw7Jm90aWxkZTtlcyc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ08gbG9naW4gZmFsaG91IC0gTm9tZSBkZSB1c3UmYWFjdXRlO3JpbyBvdSBzZW5oYSBpbnYmYWFjdXRlO2xpZG9zID8nOwokbGFuZ1snbG9naW4nXSA9ICdMb2dpbic7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0xvZ2luJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ1VzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0VtYWlsJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1NlbmhhJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnTGVtYnJhciBuZXN0ZSBjb21wdXRhZG9yJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnQ2FkYXN0cmEtc2UnOwokbGFuZ1snZm9yZ290cHcnXSA9ICdFc3F1ZWNldSBzdWEgc2VuaGE/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0VzcXVlY2V1IHNldSBMb2dpbj8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdQYWRyJm90aWxkZTtlcyc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ01vZGVsbyc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdOJmF0aWxkZTtvIGZvaSBwb3NzJmlhY3V0ZTt2ZWwgbG9jYWxpemFyIGluZm9ybWEmY2NlZGlsOyZvdGlsZGU7ZXMgc29icmUgZXN0ZSB1c3UmYWFjdXRlO3Jpbyc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnTyBub21lIGRlIHVzdSZhYWN1dGU7cmlvICglcykgaiZhYWN1dGU7IGVzdCZhYWN1dGU7IGVtIHVzbyc7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnVXNhciBTTVRQIHBhcmEgdmFsaWRhciBlbmRlcmUmY2NlZGlsO29zIGRlIGVtYWlsPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdUYW1hbmhvIG0maWFjdXRlO25pbW8gZGEgc2VuaGEnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnVGFtYW5obyBtJmFhY3V0ZTt4aW1vIGRhIHNlbmhhJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ1RhbWFuaG8gbSZpYWN1dGU7bmltbyBkbyBub21lIGRlIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ1RhbWFuaG8gbSZhYWN1dGU7eGltbyBkbyBub21lIGRlIHVzdSZhYWN1dGU7cmlvJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1RlbXBvIGRlIFNlc3MmYXRpbGRlO28gZXhwaXJhZG8gKHNlZ3VuZG9zKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnVXNhciBjb29raWVzIHBhcmEgbWFudGVyIG9zIGxvZ2lucyBhdGl2b3MnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdQZXJtaXRpciByZWdpc3RybyBwb3IgZW1haWwnOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ0dydXBvIHBhZHImYXRpbGRlO28gcGFyYSBub3ZvcyB1c3UmYWFjdXRlO3Jpb3MnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdBbHRlcmFyIGFzIGNvbmZpZ3VyYSZjY2VkaWw7Jm90aWxkZTtlcyBkbyBtb2RlbG8nOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0FzIHNlbmhhcyBzJmF0aWxkZTtvIGRpZmVyZW50ZXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnTm9tZSBkZSB1cyZhYWN1dGU7cmlvIGludiZhYWN1dGU7bGlkbyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdTZW5oYSBpbnYmYWFjdXRlO2xpZGEnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdFZGl0YXIgdXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1sndmFsaWQnXSA9ICdWJmFhY3V0ZTtsaWRvJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnTm9tZSBkZSBVc3UmYWFjdXRlO3Jpbyc7CiRsYW5nWydzdGF0dXMnXSA9ICdTdGF0dXMnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnRXN0ZSB1c3UmYWFjdXRlO3JpbyBuJmF0aWxkZTtvICZlYWN1dGU7IG1lbWJybyBkZSBuZW5odW0gZ3J1cG8nOwokbGFuZ1snZXJyb3JfcHJvcGVydGllcyddID0gJ1NlbSBwcm9wcmllZGFkZXMnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdUZW50YXIgaW1wb3J0YXIgcHJvcHJpZWRhZGVzIGR1cGxpY2FkYXMnOwokbGFuZ1sndmFsdWUnXSA9ICdWYWxvcic7CiRsYW5nWydncm91cHMnXSA9ICdHcnVwb3MnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1Byb3ByaWVkYWRlcyc7CiRsYW5nWydwcm9wbmFtZSddID0gJ05vbWUgZGEgcHJvcHJpZWRhZGUnOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnVmFsb3IgZGEgcHJvcnByaWVkYWRlJzsKJGxhbmdbJ2FkZCddID0gJ0FkaWNpb25hcic7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdCZvYWN1dGU7cmljbyc7CiRsYW5nWydlZGl0J10gPSAnRWRpdGFyJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmEnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnRXNwZWNpZmljYXIgZGF0YSc7CiRsYW5nWycxMmhycyddID0gJzEyIEhvcmFzJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgSG9yYXMnOwokbGFuZ1snNDhocnMnXSA9ICc0OCBIb3Jhcyc7CiRsYW5nWycxd2VlayddID0gJzEgU2VtYW5hJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgU2VtYW5hcyc7CiRsYW5nWycxbW9udGgnXSA9ICcxIE0mZWNpcmM7cyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBNZXNlcyc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBNZXNlcyc7CiRsYW5nWycxeWVhciddID0gJzEgQW5vJzsKJGxhbmdbJ25ldmVyJ10gPSAnTnVuY2EnOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWxlIGluc3RhbGxlZCBzdWNlc3NmdWxseS48YnIvPkJlIHN1cmUgdG8gc2V0IHRoZSAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMgcGVybWlzc2lvbi4gIEFkZGl0aW9uYWxseSwgd2UgcmVjb21tZW5kIHRoYXQgeW91IGluc3RhbGwgdGhlIENhcHRjaGEgbW9kdWxlLiAgSWYgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGluIGFkZGl0aW9uIHRvIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgdG8gbG9naW4uICBUaGlzIGlzIGludGVuZGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGZ1bmN0aW9uYWxpdHkgZXZlbiBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ1NlbmhhJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnU2VuaGEgTm92YW1lbnRlJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdKJmFhY3V0ZTsgZXhpc3RlIHVtIGdydXBvIGNvbSBlc3RlIG5vbWUnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnRWRpdGFyIGdydXBvJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ0Vudmlhcic7CiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWxhcic7CiRsYW5nWydkZWxldGUnXSA9ICdFeGNsdWlyJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnVm9jJmVjaXJjOyB0ZW0gY2VydGV6YSBxdWUgZXN0YXMgcyZhdGlsZGU7byBhcyBjb25maWd1cmEmY2NlZGlsOyZvdGlsZGU7ZXMgY29ycmV0YXMgcGFyYSBlc3RlIGdydXBvP1xuRGVzYXRpdmFyIHVtIHByb3ByaWVkYWRlIG4mYXRpbGRlO28gaXImYWFjdXRlOyBkZWxldGFyIG5lbmh1bWEgZW50cmFkYSBuYSB0YWJlbGEgcGFyYSBlc3RlIGdydXBvL3VzdSZhYWN1dGU7cmlvLiBBcGVuYXMgdG9ybmFyJmFhY3V0ZTsgYSBwcm9wcmllZGFkZSBpbmRpc3BvbiZpYWN1dGU7dmVsLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnVGVtIGNlcnRlemEgcXVlIHF1ZXIgZGVsZXRhciBlc3RlIGdydXBvPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnUmVhbG1lbnRlIHF1ZXIgZGVsZXRhciBlc3RhIHByb3ByaWVkYWRlP1xuRmF6ZXIgaXNzbyB0YW1iJmVhY3V0ZTttIGlyJmFhY3V0ZTsgZGVsZXRhciBhcyBlbnRyYWRhcyBwYXJhIGVzdGEgcHJvcHJpZWRhZGUuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1BhciZhY2lyYzttZXRyb3MgaW5zdWZpY2llbnRlcyc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdOb21lJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbWEgYW8gYWRpY2lvbmFyIHByb3ByaWVkYWRlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBhbyBhZGljaW9uYXIgcmVsYWNpb25hbWVudG8gZW50cmUgZ3J1cG9zJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1hIGFvIGFkaWNpb25hciBncnVwbyc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIGFvIGFkaWNpb25hciB1c3UmYWFjdXRlO3JpbyBhbyBncnVwbyc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbWEgYW8gZGVsZXRhciBwcm9wcmllZGFkZSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBsb2NhbGl6YXIgdW0gZW5kZXJlJmNjZWRpbDtvIGRlIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdTZW0gcGVybWlzcyZhdGlsZGU7byBkZSBlc2NyaXRhIG5vIGRpcmV0Jm9hY3V0ZTtyaW8gZGUgZGVzdGlubyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnUGFyJmFjaXJjO21ldHJvcyBpbnYmYWFjdXRlO2xpZG9zJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnTiZhdGlsZGU7byBmb2kgcG9zcyZpYWN1dGU7dmVsIGxvY2FsaXphciBuZW5odW0gZ3J1cG8nOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBcGxpY2FyJzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRyYXInOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0V4cHJlc3MmYXRpbGRlO28gcmVndWxhciBwYXJhIG5vbWUgZGUgdXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmkmY2NlZGlsOyZhdGlsZGU7byc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOb21lIGRvIEdydXBvJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjZXNzbyBOZWdhZG8nOwokbGFuZ1snZXJyb3InXSA9ICdFcnJvJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnQWRpY2lvbmFyIEdydXBvJzsKJGxhbmdbJ2ltcG9ydGdyb3VwJ10gPSAnSW1wb3J0YXIgR3J1cG8nOwokbGFuZ1snYWRkdXNlciddID0gJ0FkaWNpb25hciBVc3UmYWFjdXRlO3Jpbyc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVXN1JmFhY3V0ZTtyaW8gZW5jb250cmFkb3MgZW0gY29uZm9ybWlkYWRlIGNvbSBvIGNyaXQmZWFjdXRlO3Jpbyc7CiRsYW5nWydncm91cCddID0gJ0dydXBvJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnU2VsZWNpb25lIEdydXBvJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ01vZGVsbyBkZSBSZWdpc3Rybyc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdNb2RlbG8gZGUgc2EmaWFjdXRlO2RhJzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnTW9kZWxvIGRlIExvZ2luJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZmVyJmFjaXJjO25jaWFzJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXN1JmFhY3V0ZTtyaW8nOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnR2VyZW5jaWFtZW50byBkbyBGcm9udGVuZCBVc2VyJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnUGVybWl0aXIgcXVlIHVzdSZhYWN1dGU7cmlvcyBsb2d1ZW0gbm8gZnJvbnRlbmQgZG8gc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnUCZhYWN1dGU7Z2luYSBkZSBmcmVudGUgcGFkci9hbyc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnJlVhY3V0ZTtsdGltYSBwJmFhY3V0ZTtnaW5hIGFjZXNzYWRhJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ091dHJhIHAmYWFjdXRlO2dpbmE6JzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdFbnRyZSBjb20gbyB0ZXh0byBkYSBpbWFnZW0nOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/pt_PT.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ0VkaXRhbmRvIFV0aWxpemFkb3InOwokbGFuZ1snbm9pbmxpbmUnXSA9ICdOJmF0aWxkZTtvIGFsaW5oYXIgZm9ybXVsJmFhY3V0ZTtyaW9zJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnQ2xpcXVlIGFxdWkgY2FzbyBuJmF0aWxkZTtvIGNvbnNpZ2EgbGVtYnJhci1zZSBkb3Mgc2V1cyBkZXRhbGhlcyBkZSB1dGlsaXphZG9yJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdDbGlxdWUgYXF1aSBjYXNvIG4mYXRpbGRlO28gY29uc2lnYSBsZW1icmFyLXNlIGRhIHN1YSBwYWxhdnJhIGNoYXZlJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnQ2xpcXVlIGFxdWkgcGFyYSBsb2dvdXQnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ0NsaXF1ZSBhcXVpIHBhcmEgYWp1c3RhciBhIHN1YSBwYWxhdnJhIGNoYXZlIG91IG91dHJhcyBpbmZvcm1hJmNjZWRpbDsmb3RpbGRlO2VzJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgVmlzdWFsaXphciBVdGlsaXphZG9yJzsKJGxhbmdbJ2V2ZW50J10gPSAnRXZlbnRvJzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUgTm90aWZpY2EmY2NlZGlsOyZhdGlsZGU7byBFdmVudG8nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnRW5kZXJlJmNjZWRpbDtvIEVtYWlsIHBhcmEgTm90aWZpY2EmY2NlZGlsOyZvdGlsZGU7ZXMnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGRvIEVtYWlsIGRlIE5vdGlmaWNhJmNjZWRpbDsmb3RpbGRlO2VzJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCddID0gJ0Fzc3VudG8gZG8gRW1haWwgZGUgTm90aWZpY2EmY2NlZGlsOyZvdGlsZGU7ZXMnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdFbWFpbCBOb3RpZmljYSZjY2VkaWw7Jm90aWxkZTtlcyc7CiRsYW5nWydPbkxvZ2luJ10gPSAnTm8gTG9naW4nOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdObyBMb2dvdXQnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnTmEgRXhwcmlyYSZjY2VkaWw7JmF0aWxkZTtvIGRhIFNlc3MmYXRpbGRlO28nOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnTmEgQ3JpYSZjY2VkaWw7JmF0aWxkZTtvIGRlIHVtIE5vdm8gVXRpbGl6YWRvcic7CiRsYW5nWydPbkRlbGV0ZVVzZXInXSA9ICdOYSBSZW1vJmNjZWRpbDsmYXRpbGRlO28gZGUgdW0gVXRpbGl6YWRvcic7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdOYSBBbHRlcmEmY2NlZGlsOyZhdGlsZGU7byBkb3MgRGV0YWxoZXMgZGUgVXRpbGl6YWRvcic7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnTmEgQ3JpYSZjY2VkaWw7JmF0aWxkZTtvIGRlIHVtIEdydXBvIGRlIFV0aWxpemFkb3Jlcyc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnTmEgUmVtbyZjY2VkaWw7JmF0aWxkZTtvIGRlIHVtIEdydXBvIGRlIFV0aWxpemFkb3Jlcyc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ0EgcGVzcXVpc2EgcGVsb3Mgc2V1cyBkYWRvcyBkZSB1dGlsaXphZG9yIHRlcm1pbm91LiBGb2kgZW5jb250cmFkbyB1bSBub21lIGRlIHV0aWxpemFkb3IgY29tIGRldGFsaGVzIGlndWFpcyBhb3MgcXVlIGludHJvZHV6aXUuJzsKJGxhbmdbJ3lvdXJfdXNlcm5hbWVfaXMnXSA9ICdPIHNldSBub21lIGRlIHV0aWxpemFkb3IgJmVhY3V0ZTsnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnUmVjb21lbmRhbW9zIHF1ZSBndWFyZGUgZXN0YSBpbmZvcm1hJmNjZWRpbDsmYXRpbGRlO28gbnVtIGxvY2FsIHNlZ3VybywgbWFzIGFjZXNzJmlhY3V0ZTt2ZWwuJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBjaGFuZ2Ugc2V0dGluZ3MnOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgY29kZSB2ZXJpZmljYXRpb24gKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgRGV0YWlscyBUZW1wbGF0ZSc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgQ29uZmlybSBUZW1wbGF0ZSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Vycm86IE1haXMgZG8gcXVlIHVtIHV0aWxpemFkb3IgZm9pIGVuY29udHJhZG8gY29tIG9zIGRhZG9zIHF1ZSBmb3JuZWNldSc7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdFcnJvOiBOJmF0aWxkZTtvIGZvaSBlbmNvbnRyYWRvIG5lbmh1bSB1dGlsaXphZG9yIGNvbSBlc3NlIG5vbWUnOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0Vycm86IE4mYXRpbGRlO28gZm9pIGVuY29udHJhZG8gbmVuaHVtIGdydXBvIGNvbSBlc3NlIG5vbWUnOwokbGFuZ1sncmVhZG9ubHknXSA9ICdTJm9hY3V0ZTsgTGVpdHVyYSc7CiRsYW5nWydwcm9tcHRfdXNlcm1hbmlwdWxhdG9yJ10gPSAnVXNlciBNYW5pcHVsYXRvciBDbGFzcyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdMb2dnZWQgb3V0IHBlbG8gYWRtaW5pc3RyYWRvcic7CiRsYW5nWydwcm9tcHRfbG9nZ2VkaW5vbmx5J10gPSAnTW9zdHJhciBBcGVuYXMgVXRpbGl6YWRvcmVzIEF1dGVudGljYWRvcyc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnTG9nb3V0IHV0aWxpemFkb3InOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAnUHJvcHJpZWRhZGVzIGRvIFV0aWxpemFkb3InOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdIaXN0b3JpYWwgZG8gVXRpbGl6YWRvcic7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnRhcic7CiRsYW5nWydjbGVhciddID0gJ0xpbXBhcic7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFeHBvcnRhciBIaXN0b3JpYWwgZGUgVXRpbGl6YWRvciBQYXJhIEFTQ0lJIHF1ZSAmZWFjdXRlOyBwZWxvIG1lbm9zJzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAnTGltcGFyIEhpc3RvcmlhbCBkZSBVdGlsaXphZG9yIHF1ZSAmZWFjdXRlOyBwZWxvIG1lbm9zJzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0VzcXVlY2V1LXNlIGRvcyBzZXVzIGRldGFsaGVzIGRlIHV0aWxpemFkb3I/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydGFyIGRlZmluaSZjY2VkaWw7Jm90aWxkZTtlcyBkZSBncnVwbyAoZSBwcm9wcmllZGFkZXMpIHBhcmEgWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdVc2VyIEhpc3RvcnkgTWFpbnRlbmFuY2UnOwokbGFuZ1sneWVzJ10gPSAnU2ltJzsKJGxhbmdbJ25vJ10gPSAnTiZhdGlsZGU7byc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICdEZSc7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBTZW0gTGltaXRlICoqJzsKJGxhbmdbJ2RhdGVfb25laG91cm9sZCddID0gJ1VtYSBIb3JhIGRlIElkYWRlJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJ1NlaXMgSG9yYXMgZGUgSWRhZGUnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnRG96ZSBIb3JhcyBkZSBJZGFkZSc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ1VtIERpYSBkZSBJZGFkZSc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICdVbWEgU2VtYW5hIGRlIElkYWRlJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdEdWFzIFNlbWFuYXMgZGUgSWRhZGUnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ1VtIE0mZWNpcmM7cyBkZSBJZGFkZSc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVHImZWNpcmM7cyBNZXNzZXMgZGUgSWRhZGUnOwokbGFuZ1snZGF0ZV9zaXhtb250aHNvbGQnXSA9ICdTZWlzIE1lc3NlcyBkZSBJZGFkZSc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdVbSBBbm8gZGUgSWRhZGUnOwokbGFuZ1sndGl0bGVfZ3JvdXBzb3J0J10gPSAnQWdydXBhbWVudG8gZSBPcmRlbmEmY2NlZGlsOyZhdGlsZGU7byc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnUmVnaXN0b3MgcXVlIGNvbmRpemVtIGNvbSBvcyBjcml0JmVhY3V0ZTtyaW9zJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnTm9tZSBkZSBVdGlsaXphZG9yIERlc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdOb21lIGRlIFV0aWxpemFkb3IgQXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnRGF0YSBEZXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdEYXRhIEFzY2VuZGVudGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnVGlwbyBkZSBFdmVudG8gRGVzY2VuZGVudGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdUaXBvIGRlIEV2ZW50byBBc2NlbmRlbnRlJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfZGVzYyddID0gJ0VuZGVyZSZjY2VkaWw7byBkZSBJUCBEZXNjZW5kZW50ZSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ0VuZGVyZSZjY2VkaWw7byBkZSBJUCBBc2NlbmRlbnRlJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdOJmF0aWxkZTtvIGZvaSBEZXRlY3RhZG8gbmVuaHVtIEhpc3RvcmlhbCc7CiRsYW5nWydyZXNldCddID0gJ1JlcG9yJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0FncnVwYXIgcG9yIEVuZGVyZSZjY2VkaWw7byBJUCc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0ZpbHRybyBkZSBUaXBvIGRlIEV2ZW50byc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdNb3N0cmFyIGFwZW5hcyBldmVudG9zIGNvbSBtZW5vcyBkZTonOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ0xpbWl0ZSBkZSBQJmFhY3V0ZTtnaW5hJzsKJGxhbmdbJ2ZvciddID0gJ3BhcmEnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdSZWxhdCZvYWN1dGU7cmlvIGRvIEhpc3RvcmlhbCBkbyBVdGlsaXphZG9yJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdEZXNjb25oZWNpZG8nOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0VuZGVyZSZjY2VkaWw7byBJUCc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnVGlwbyBkZSBFdmVudG8nOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXRhJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdWb2x0YXInOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ09wZXJhJmNjZWRpbDsmYXRpbGRlO28gZGUgSW1wb3J0YSZjY2VkaWw7JmF0aWxkZTtvIENvbXBsZXRhZGEnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnTGluaGFzIFByb2Nlc3NhZGFzJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdFcnJvcyBFbmNvbnRyYWRvcyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUmVnaXN0b3MgQWRpY2lvbmFkb3MnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBlbmNvbnRyYXIgYXMgcHJvcHJpZWRhZGVzIGRvIGdydXBvICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnTiZhdGlsZGU7byBmb2kgcG9zcyZpYWN1dGU7dmVsIG9idGVyIHVtYSByZXNwb3N0YSBkbyBzZXJ2aWRvciBTTVRQJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ08gZmljaGVpcm8gKCVzKSBuJmF0aWxkZTtvIGZvaSBlbmNvbnRyYWRvJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdJbnZhbGlkIHZhbHVlIGZvciBkcm9wZG93biBvciBtdWx0aXNlbGVjdCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ08gY2FtcG8gJXMgZXhjZWRldSBvIHRhbWFuaG8gbSZhYWN1dGU7eGltbyc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0Vycm8gZGUgSW1wb3J0YSZjY2VkaWw7JmF0aWxkZTtvIChsaW5oYSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdDb3VsZCBub3QgZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucyAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGEgY29sdW1uIHRvIG1hdGNoIHRoZSByZXF1aXJlZCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1RoZSBmaWxlIHNwZWNpZmllZCBmb3IgaW1wb3J0IGlzIG5vdCBpbiB0aGUgY29ycmVjdCBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ04mYXRpbGRlO28gZm9pIHBvc3MmaWFjdXRlO3ZlbCBhYnJpciBvIGZpY2hlaXJvJzsKJGxhbmdbJ2luZm9faW1wb3J0dXNlcnNmaWxlZm9ybWF0J10gPSAnPGg0PkZpbGUgRm9ybWF0IEluZm9ybWF0aW9uPC9oND4NCjxwPlRoZSBpbnB1dCBmaWxlIG11c3QgYmUgaW4gQVNDSUkgZm9ybWF0IHVzaW5nIGNvbW1hIHNlcGFyYXRlZCB2YWx1ZXMuICBFYWNoIGxpbmUgaW4gdGhpcyBpbnB1dCBmaWxlICh3aXRoIHRoZSBleGNlcHRpb24gb2YgdGhlIGhlYWRlciBsaW5lLCBkaXNjdXNzZWQgYmVsb3cpIHJlcHJlc2VudHMgb25lIHVzZXIgcmVjb3JkLiAgRWFjaCBsaW5lIG11c3QgY29udGFpbiB0aGUgc2FtZSBudW1iZXIgb2YgZmllbGRzLCBhbmQgdGhlIG9yZGVyIG9mIHRoZSBmaWVsZHMgaW4gZWFjaCBsaW5lIG11c3QgYmUgaWRlbnRpY2FsLjwvcD4NCjxoNT5IZWFkZXIgbGluZTwvaDU+DQo8dWw+DQo8bGk+VGhlIGZpcnN0IGxpbmUgb2YgdGhlIGZpbGUgbXVzdCBiZWdpbiB3aXRoIHR3byBwb3VuZCAoXCMpIGNoYXJhY3RlcnMsIGFuZCBuYW1lcyBlYWNoIG9mIHRoZSBmaWVsZHMgaW4gdGhlIGZpbGUuICBUaGUgbmFtZXMgb2YgdGhlc2UgZmllbGRzIGlzIHNpZ25pZmljYW50LiAgVGhlcmUgYXJlIHNvbWUgcmVxdWlyZWQgZmllbGQgbmFtZXMgKHNlZSBiZWxvdyksIGFuZCBvdGhlciBmaWVsZCBuYW1lcyBtdXN0IG1hdGNoIHRoZSBwcm9wZXJ0eSBuYW1lcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHVzZXJzIGFyZSBnb2luZyB0byBiZSBhZGRlZCBpbnRvLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgZmFpbCBpZiB0aGUgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIGRvZXMgbm90IG1hdGNoIGFsbCBvZiB0aGUgcmVxdWlyZWQgcHJvcGVydGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHRoYXQgdXNlcnMgYXJlIGJlaW5nIGFkZGVkIGludG88L2xpPg0KPGxpPlRoZSBpbnB1dCBmaWxlIG1heSBjb250YWluIGZpZWxkcyByZXByZXNlbnRpbmcgc29tZSBvZiB0aGUgb3B0aW9uYWwgcHJvcGVydGllcyBpbiB0aGUgc3BlY2lmaWVkIGdyb3VwLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgaWdub3JlIGFueSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgdGhhdCBhcmUgZWl0aGVyIG5vdCBrbm93biwgb3IgbWFwIHRvIHByb3BlcnRpZXMgdGhhdCBhcmUgPGVtPm9mZjwvZW0+IGluIHRoZSBzcGVjaWZpZWQgdXNlciBncm91cC48L2xpPg0KPC91bD4NCjxoNT5Db2x1bW5hciBEYXRhPC9oNT4NCjx1bD4NCjxsaT5UaGUgPHN0cm9uZz51c2VybmFtZTwvc3Ryb25nPiBGaWVsZCAtIFRoZSBkZXNpcmVkIHVzZXJuYW1lLg0KICAgIDxwPlRoaXMgZmllbGQgbXVzdCBleGlzdCBpbiB0aGUgaGVhZGVybGluZSwgYW5kIGluIGVhY2ggYW5kIGV2ZXJ5IGxpbmUgb2YgdGhlIGlucHV0IGZpbGUuIFRoZSByZWNvcmQgd2lsbCBmYWlsIGlmIGEgdXNlciB3aXRoIHRoYXQgdXNlcm5hbWUgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGRhdGFiYXNlLjwvcD48L2xpPg0KPGxpPlRoZSA8c3Ryb25nPnBhc3N3b3JkPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+ZXhwaXJlczwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPkRyb3Bkb3duIEZpZWxkcw0KICAgIDxwPlRoZSB2YWx1ZSBvZiBkcm9wZG93biBwcm9wZXJ0aWVzIGluIGFuIGltcG9ydCBmaWxlIGlzIHJlcHJlc2VudGVkIGFzIHRoZSBzdHJpbmcgdGhhdCBpcyBzaG93biBpbiB0aGUgZHJvcGRvd24gY29udHJvbCBpbiB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUuPC9wPg0KPC9saT4NCjxsaT5NdWx0aXNlbGVjdCBGaWVsZHMNCiAgICA8cD5NdWx0aXNlbGVjdCBmaWVsZHMgYXJlIGNvbnRhaW5lZCB3aXRoaW4gdGhlIEFTQ0lJIGZpbGUgYXMgYSA6IHNlcGFyYXRlZCBsaXN0IG9mIHN0cmluZ3MsIHdoZXJlIGVhY2ggc3RyaW5nIHJlcHJlc2VudHMgdGhlIHRleHQgc2hvd24gaW4gdGhlIG11bHRpc2VsZWN0IGxpc3Q8L3A+DQo8L2xpPg0KPGxpPkltYWdlIEZpZWxkcw0KICAgIDxwPkltYWdlIGFyZSBmaWVsZHMgd2hvJiMwMzk7cyBjb2x1bW4gbmFtZSBtYXRjaGVzIGEgcHJvcGVydHkgb2YgdHlwZSBJbWFnZS4gIElmIHRoaXMgZmllbGQgaXMgYSByZXF1aXJlZCBwYXJ0IG9mIHRoZSBkZXN0aW5hdGlvbiBncm91cCwgdGhlbiB0aGUgbmFtZSBzcGVjaWZpZWQgaW4gdGhlc2UgY29sdW1ucyBtdXN0IGV4aXN0IGluIHRoZSB1cGxvYWRzIGRpc3JlY3Rvcnkgb2YgdGhlIENNUyBpbnN0YWxsYXRpb24uICBJZiB0aGUgaW1hZ2UgZG9lcyBub3QgZXhpc3QsIGFuZCB0aGUgZmllbGQgaXMgcmVxdWlyZWQsIHRoZW4gdGhlIHJlY29yZCB3aWxsIGZhaWwuPC9wPg0KPC91bD4NCjxoNT5Ob3RlczwvaDU+DQo8cD5UaGUgaW1wb3J0IHByb2Nlc3MgaXMgc3ViamVjdCB0byB0aGUgbGltaXRhdGlvbnMgaW1wb3NlZCBieSB0aGUgaG9zdCBwcm92aWRlciwgc3VjaCBhcyBtZW1vcnkgbGltaXRhdGlvbnMsIHByb2Nlc3NpbmcgdGltZSwgZmlsZSBzaXplIHVwbG9hZCwgYW5kIHNhZmUgbW9kZSByZXN0cmljdGlvbnMuICBBbnkgb25lIG9mIHRoZXNlIGxpbWl0YXRpb25zIG1heSBjYXVzZSB0aGUgaW1wb3J0IHRvIGZhaWwuIFRoZXJlZm9yZSBpdCBpcyBhZHZpc2FibGUgdG8gZW5zdXJlIHRoYXQgaW1wb3J0IGZpbGVzIGFyZSBzbWFsbGVyIGluIHNpemUsIGFuZCBzaW1wbGVyIGluIG5hdHVyZS48L3A+DQo8cD5UaG91Z2ggZXZlcnkgZWZmb3J0IGhhcyBiZWVuIG1hZGUgdG8gZW5zdXJlIHRoYXQgZGF0YWJhc2UgY29ycnVwdGlvbiB3aWxsIG5vdCBvY2N1ciwgaXQgaXMgYWR2aXNhYmxlIHRvIHBlcmZvcm0gYSBkYXRhYmFzZSBiYWNrdXAgYmVmb3JlIGRvaW5nIGEgdXNlciBpbXBvcnQuPC9wPg0KPGg1PkV4YW1wbGU8L2g1Pg0KPHByZT4NCiMjdXNlcm5hbWUsZmlyc3RfbmFtZSxsYXN0X25hbWUsZW1haWwsY2l0eSxzdGF0ZSxjb3VudHJ5LHppcA0KdXNlcjEsdGVzdCx1c2VyLHVzZXIxQHNvbWVkb21haW4uY29tLHNvbWV3aGVyZSxUWCxVUywxMjM0NQ0KPC9wcmU+DQonOwokbGFuZ1sncHJvbXB0X2ltcG9ydGRlc3Rncm91cCddID0gJ0ltcG9ydGFyIFV0aWxpemFkb3JlcyBwYXJhIEluY2x1cyZhdGlsZGU7byBubyBHcnVwbyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdGaWNoZWlybyBDU1YgZGUgSW5wdXQnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdGaWNoZWlybyBYTUwgZGUgSW5wdXQnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRXhwb3J0YXIgVXRpbGl6YWRvcmVzJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ0ltcG9ydGFyIFV0aWxpemFkb3Jlcyc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdMaW1wYXInOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdDYW1pbmhvIGRlIERlc3Rpbm8gZGEgSW1hZ2VtJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnQSBwcm9ibGVtIG9jY3VycmVkIHdpdGggYSBtaXNzaW5nIChidXQgcmVxdWlyZWQpIHVwbG9hZCc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnQ291bGQgbm90IHBhcnNlIHRoZSBwcm92aWRlZCBYTUwgZmlsZSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnTiZhdGlsZGU7byAmZWFjdXRlOyBwb3NzJmlhY3V0ZTt2ZWwgcmVtb3ZlciB1bSBncnVwbyBxdWUgYWluZGEgY29udGVtIHV0aWxpemFkb3Jlcyc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnRXN0ZSB1dGlsaXphZG9yIGomYWFjdXRlOyBzZSBlbmNvbnRyYSBhdXRlbnRpY2Fkbyc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdUaGUgdGV4dCBmcm9tIHRoZSBpbWFnZSB3YXMgbm90IGVudGVyZWQgY29ycmVjdGx5JzsKJGxhbmdbJ3Byb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnXSA9ICdBbGxvdyB1c2VycyB0byBsb2dpbiBtb3JlIHRoYW4gb25jZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnSW1hZ2UgRmlsZSBFeHRlbnNpb25zIHRoYXQgVXNlcnMgYWxsb3dlZCB0byB1cGxvYWQnOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGlkIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT5pcDwvZW0+IC0gVGhlIGlwIGFkZHJlc3Mgb2YgdGhlIGNsaWVudDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dvdXQnXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgbG9nZ2Vkb3V0IHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRXhwaXJlVXNlciddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGV4cGlyZXM8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgbmFtZSBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9pbmZvX09uTG9naW4nXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbiB0byB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBvdXQgb2YgdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uRXhwaXJlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBzZXNzaW9uIGlzIGV4cGlyZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIG5ldyB1c2VyIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaW5mbyBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGFjY291bnQgaXMgZGVsZXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlR3JvdXAnXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgZ3JvdXAgaXMgZGVsZXRlZCc7CiRsYW5nWydiYWNrZW5kX2dyb3VwJ10gPSAnQmFja2VuZCBHcm91cCc7CiRsYW5nWydpbmZvX3N0YXInXSA9ICcqIFRoZSBmb2xsb3dpbmcgbWFjcm9zIGNhbiBiZSB1c2VkIGluIHRoZXNlIGZpZWxkczogeyR1c2VybmFtZX0seyRncm91cH0uIFdoZW4gdXNpbmcgdGhlIHskZ3JvdXB9IG1hY3JvLCB0aGUgc3lzdGVtIHdpbGwgc3Vic2l0dXRlIHRoZSBuYW1lIG9mIHRoZSBmaXJzdCBtZW1iZXIgZ3JvdXAgdGhhdCB0aGUgdXNlciBiZWxvbmdzIHRvLCBhbmQgd2lsbCByZWRpcmVjdCB0byB0aGF0IHBhZ2UuJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdFZGl0IHRoaXMgZmllbGQgdG8gcmVzZXQgdGhlIHVzZXJzIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1lX2V4aXN0cyddID0gJ1VtIHV0aWxpemFkb3IgY29tIGVzc2Ugbm9tZSBqJmFhY3V0ZTsgZXhpc3RlJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ05vIHJlc3VsdHMgcmV0dXJuZWQgZnJvbSBjc3YgZXhwb3J0JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0xlbmd0aCBvZiB1c2VybmFtZSBmaWVsZCc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdMZW5ndGggb2YgcGFzc3dvcmQgZmllbGQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ01pbi9NYXggcGFzc3dvcmQgbGVuZ3RocyBhcmUgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTWluL01heCB1c2VybmFtZSBsZW5ndGhzIGFyZSBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdFbmRlcmUmY2NlZGlsO28gZGUgRW1haWwgSW52JmFhY3V0ZTtsaWRvJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnTiZhdGlsZGU7byBmb2kgZW5jb250cmFkbyBuZW5odW0gZW5kcmUmY2NlZGlsO28gZGUgZW1haWwgcGFyYSBlc3RhIGNvbnRhJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVtIHNldHRpbmcgdXNlciBpbmZvJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsZW0gc2V0dGluZyBwcm9wZXJ0eSc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnVXRpbGl6YWRvciBBZGljaW9uYWRvICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnVXRpbGl6YWRvciBSZW1vdmlkbyB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdQcm9wcmllZGFkZSc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVmFsb3IgKGV4cHJlc3MmYXRpbGRlO28gcmVndWxhciknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdXYXJuaW5nOiBUaGVzZSBmaWVsZHMgYWZmZWN0IHRoZSBzaXplIG9mIGlucHV0IGZpZWxkcyBmb3IgZm9ybXMuICBEZWNyZWFzaW5nIHRoaXMgbnVtYmVyIG9uIGFuIGV4aXN0aW5nIHNpdGUgbWF5IG5vdCBiZSBhZHZpc2FibGUnOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBhZGp1c3QgdGhlIG1vZHVsZSBwcmVmZXJlbmNlcz8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0VuZGVyZSZjY2VkaWw7byBkZSBlbWFpbCBlbSB1dGlsaXphJmNjZWRpbDsmYXRpbGRlO28nOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnVXNlIGNvb2tpZXMgdG8gcmVtZW1iZXIgbG9naW4gZGV0YWlscyc7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ1RoZSBuYW1lIG9mIHRoZSBjb29raWUnOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgZW1haWxzJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ0VtYWlsIGFkZHJlc3MgaXMgdXNlcm5hbWUnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnQXR0ZW1wdCB0byBrZWVwIGxvZ2lucyBhbGl2ZSBieSB0aGUgdXNlIG9mIGEgY29va2llIDxlbT4odGhlIGNvb2tpZSBpcyByZXNldCBvbiBhY3Rpdml0eSBpbiB0aGUgd2Vic2l0ZSk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcoYWxsb3cgbXVsdGlwbGUgdXNlcnMgd2l0aCB0aGUgc2FtZSBlbWFpbCBhZGRyZXNzKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKHVzZXImIzAzOTtzIGVtYWlsIGFkZHJlc3MgaXMgdGhlaXIgdXNlcm5hbWUgLS0gZG9uJiMwMzk7dCBzZXQgdGhpcyB3aXRoICZxdW90O2FsbG93IGR1cGxpY2F0ZSBlbWFpbCBhZGRyZXNzZXMmcXVvdDshKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ0FsbG93IGR1cGxpY2F0ZSAmcXVvdDtmb3Jnb3QgcGFzc3dvcmQmcXVvdDsgcmVtaW5kZXJzPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoYWxsb3cgYSB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQsIGV2ZW4gaWYgdGhleSBoYXZlbiYjMDM5O3QgYWN0ZWQgb24gYSBwcmV2aW91cyBvbmUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNlIEZyb250LWVuZCBVc2VyIHNwZWNpZmljIHBlcm1pc3Npb25zPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbHksIEZFVVNlcnMgcGVybWlzc2lvbnMgYXJlIHRoZSBzYW1lIGFzIHRoZSBlcXVpdmFsZW50IEFkbWluIEFyZWEgcGVybWlzc2lvbnMgbGlrZSBBZGQgVXNlciwgQWRkIEdyb3VwLCBldGMuIElmIHlvdSBzZWxlY3QgdGhpcyBvcHRpb24sIHRoZXJlIHdpbGwgYmUgc2VwYXJhdGUgcGVybWlzc2lvbnMgZm9yIEZFVXNlcnMuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIHVwbG9hZGVkIGZpbGUgKGludGVybmFsIGVycm9yKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ1RoZXJlIHdhcyBhIHByb2JsZW0gd2l0aCB5b3VyIHVwbG9hZGVkIGZpbGUuICBQbGVhc2UgdHJ5IGFnYWluJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ04mYXRpbGRlO28gaW50cm9kdXppdSBvIG5vbWUgZGUgdXRpbGl6YWRvcic7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdOJmF0aWxkZTtvIGludHJvZHV6aXUgbyBzZXUgZS1tYWlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ04mYXRpbGRlO28gaW50cm9kdXppdSBhIHBhbGF2cmEgY2hhdmUnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kIFVzZXIgTG9nb3V0JzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kIFVzZXIgTG9naW4nOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5VU0UgQ0FVVElPTjwvYj4gd2hlbiBjaGFuZ2luZyBleGlzdGluZyBwcm9wZXJ0aWVzIHRoYXQgYXJlIGFzc2lnbmVkIHRvIGdyb3VwcywgeW91IG1heSBwb3RlbnRpYWxseSBjYXVzZSBkYW1hZ2UgYW5kIGJyZWFrIGFuIGV4aXN0aW5nIHNpdGUgPGk+KGVzcGVjaWFsbHkgaWYgeW91IHJlZHVjZSBmaWVsZCBsZW5ndGhzLCBldGMpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdUaGlzIGZ1bmN0aW9uIGRvZXMgbm90IHdvcmsgb24gd2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnRG8gbm90IGNyZWF0ZSBhIHByb3BlcnR5IGZvciB1c2VybmFtZSwgb3IgcGFzc3dvcmQgYXMgdGhlc2UgcHJvcGVydGllcyBhcmUgYnVpbHRpbiB0byB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydCBVc2VycyB0byBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRXhwb3J0YXInOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0YXInOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbic7CiRsYW5nWydlZGl0cHJvcCddID0gJ0VkaXQgUHJvcGVydHknOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW11bSBMZW5ndGgnOwokbGFuZ1snY3JlYXRlZCddID0gJ0NyaWFkbyc7CiRsYW5nWydzb3J0YnknXSA9ICdPcmRlbmFyIFBvcic7CiRsYW5nWydzb3J0J10gPSAnT3JkZW5hJmNjZWRpbDsmYXRpbGRlO28nOwokbGFuZ1sndXNlcnNpbmdyb3VwJ10gPSAnVXRpbGl6YWRvcmVzIG5vKHMpIGdydXBvKHMpIHNlbGVjaW9uYWRvKHMpJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0xpbWl0YXIgcmVzdWx0YWRvcyBhdCZlYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGFuIGVtYWlsIGZpZWxkIGZvciB0aGlzIHVzZXIuICBZb3UgbWF5IG5lZWQgdG8gY29udGFjdCB0aGUgc3lzdGVtIGFkbWluaXN0cmF0b3InOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIEZvcmdvdCBQYXNzd29yZCBmb3JtJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBDaGFuZ2UgU2V0dGluZ3MgZm9ybSc7CiRsYW5nWydwcm9tcHRfbG9naW5fcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ2luIConOwokbGFuZ1sncHJvbXB0X2xvZ291dF9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9nb3V0IConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU29ydCBvcmRlcic7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdBIG51bWJlciBvZiB1c2VycyBhcmUgaW4gdGhlIG1pZGRsZSBvZiByZXNldHRpbmcgbG9zdCBwYXNzd29yZHMuICBDdXJyZW50bHkgdGhpcyBjb3VudCBpcyBhdDonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgd2VlayBvbGQnOwokbGFuZ1sncmVtb3ZlMW1vbnRoJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIG1vbnRoIG9sZCc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1RlbSBhIGNlcnRlemE/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnRm9pIGludHJvZHV6aWRvIHVtIGMmb2FjdXRlO2RpZ28gaW52JmFhY3V0ZTtsaWRvLCBwb3IgZmF2b3Igdm9sdGUgYSB0ZW50YXInOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ0EgdGVtcG9yYXJ5IGNvZGUgZm9yIHlvdXIgdXNlciBpZCBjb3VsZCBub3QgYmUgZm91bmQgaW4gdGhlIGRhdGFiYXNlJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNlZCB0byBkaXNwbGF5IHZlcmlmaWNhdGlvbiBmb3JtJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB1c2VkIGZvciBmb3Jnb3R0ZW4gcGFzc3dvcmQgZW1haWwnOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ1ZvYyZlY2lyYzsgb3Ugb3V0cmEgcGVzc29hIGluaWNpb3UgcGFyYSBlc3RhIGNvbnRhLCB1bSBwcm9jZXNzbyBkZSByZWN1cGVyYSZjY2VkaWw7JmF0aWxkZTtvIGRhIHBhbGF2cmEgY2hhdmUuIFZlcmlmaXF1ZSBvIHNldSBlbWFpbCBlIHNpZ2EgYXMgaW5zdHJ1JmNjZWRpbDsmb3RpbGRlO2VzIHBhcmEgcHJvY2VkZXIgY29tIGEgcmVjdXBlcmEmY2NlZGlsOyZhdGlsZGU7byBkYSBtZXNtYS4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ0Vycm8gbmEgYmFzZSBkZSBkYWRvcyc7CiRsYW5nWydtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnXSA9ICdFc3QmYWFjdXRlOyBhIHJlY2ViZXIgZXN0YSBtZW5zYWdlbSBwb3JxdWUgYWxndSZlYWN1dGU7bSBpbmljaW91IHVtIHByb2Nlc3NvIGRlIHJlY3VwZXJhJmNjZWRpbDsmYXRpbGRlO28gZGEgc3VhIHBhbGF2cmEgY2hhdmUuIENhc28gdGVuaGEgbWVzbW8gYSBlc3F1ZWNpZG8gZW50JmF0aWxkZTtvIGxlaWEgYXMgaW5zdHJ1JmNjZWRpbDsmb3RpbGRlO2VzIGFiYWl4bywgY2FzbyBjb250ciZhYWN1dGU7cmlvIHBvZGUgaWdub3JhciBlc3RhIG1lbnNhZ2VtIGUgcGVkaW1vcyBkZXNkZSBqJmFhY3V0ZTsgZGVzY3VscGEgcGVsbyBpbmNvbW9kby4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICdDJm9hY3V0ZTtkaWdvJzsKJGxhbmdbJ21lc3NhZ2VfY29kZSddID0gJ08gc2VndWludGUgYyZvYWN1dGU7ZGlnbyBmb2kgZ2VyYWRvIGF1dG9tYXRpY2FtZW50ZSBlIGFsZWF0b3JpYW1lbnRlIGRlIGZvcm1hIGEgdmVyaWZpY2FyIGEgc3VhIGNvbnRhLiBRdWFuZG8gc2VndWlyIG8gbGluayBhYmFpeG8gdGVyJmFhY3V0ZTsgdW0gY2FtcG8gb25kZSBvIHRlciZhYWN1dGU7IGRlIGNvbG9jYXIuIE5vcm1hbG1lbnRlIGVzdGUgY2FtcG8gJmVhY3V0ZTsgcHJlZW5jaGlkbyBhdXRvbWF0aWNhbWVudGUsIG1hcyBubyBjYXNvIGRlIG4mYXRpbGRlO28gbyB0ZXIgc2lkbyBvIGMmb2FjdXRlO2RpZ28gJmVhY3V0ZTs6ICc7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0FvIHNlZ3VpciBvIGxpbmsgaXImYWFjdXRlOyBzZXIgbGV2YWRvIHBhcmEgbyBzaXRlIG9uZGUgcG9kZXImYWFjdXRlOyBpbnRyb2R1emlyIG8gYyZvYWN1dGU7ZGlnbyBlIHJlcG9yIHVtYSBwYWxhdnJhIGNoYXZlOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnUGVyZGV1IGEgc3VhIHBhbGF2cmEgY2hhdmUnOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdDb3VsZCBub3QgZmluZCB0aGUgQ01TTWFpbGVyIG1vZHVsZSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdPIHNldSBwZWRpZG8gZm9pIGVudmlhZG8gcGFyYSBhIGNhaXhhIGRlIGNvcnJlaW8gJXMgY29tIGluc3RydSZjY2VkaWw7Jm90aWxkZTtlcyBkZSBjb21vIHByb2NlZGVyIHBhcmEgcmVwb3IgYSBzdWEgcGFsYXZyYSBjaGF2ZS4gT2JyaWdhZG8nOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdDYXNvIHRlbmhhIHBlcmRpZG8gYSBzdWEgcGFsYXZyYSBjaGF2ZSwgaW50cm9kdXphIG8gc2V1IG5vbWUgZGUgdXRpbGl6YWRvci4gQ2FzbyBlc3RlIHNlamEgZW5jb250cmFkbyBlbnZpYXJlbW9zLWxoZSB1bSBlbWFpbCBjb20gaW5zdHJ1JmNjZWRpbDsmb3RpbGRlO2VzIGRlIGNvbW8gcHJvY2VkZXIgcGFyYSBhIHJlcG9yLic7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlcyBGb3Jnb3QgUGFzc3dvcmQnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgTG9zdCBVc2VybmFtZSc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdBIHByb3ByaWVkYWRlICVzIG4mYXRpbGRlO28gZm9pIGVuY29udHJhZGEnOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ1Byb3BlcnRpZXMgZm91bmQnOwokbGFuZ1snYWRkcHJvcCddID0gJ0FkaWNpb25hciBQcm9wcmllZGFkZSc7CiRsYW5nWydlcnJvcl9yZXF1aXJlZGZpZWxkJ10gPSAnQSByZXF1aXJlZCBmaWVsZCAoJXMpIHdhcyBlbXB0eSc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ0ludHJvZHV6YSBhIHN1YSBub3ZhIHBhbGF2cmEgY2hhdmUgcGFyYSBwcm9jZWRlciAmYWdyYXZlOyBzdWEgYWx0ZXJhJmNjZWRpbDsmYXRpbGRlO28nOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdOJmF0aWxkZTtvIHNlIGVuY29udHJhIGF1dGVudGljYWRvJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdTZXR0aW5ncyc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdG8nOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdFc3RhIGNvbnRhIGV4cGlyb3UnOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ0ltcHJvcGVyIGVtYWlsIGFkZHJlc3MgZm9ybWF0dGluZyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ0ludmFsaWQgZXhwaXJ5IGRhdGUnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0Vycm9yIHNldHRpbmcgcHJvcGVydHkgJXMgZm9yIHVzZXIgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdJbnZhbGlkIGdyb3VwIGlkICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnSGlkZGVuIGZpZWxkIG1hcmtlcic7CiRsYW5nWydoaWRkZW5maWVsZGNvbG9yJ10gPSAnSGlkZGVuIGZpZWxkIGNvbG9yJzsKJGxhbmdbJ2hpZGRlbiddID0gJ0VzY29uZGlkbyc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnQSBwcm9wZXJ0eSB3aXRoIHRoYXQgbmFtZSBpcyBhbHJlYWR5IGRlZmluZWQnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnTmVuaHVtYSBwcm9wcmllZGFkZSBmb2kgZGVmaW5pZGEnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdOZW5odW1hIHByb3ByaWVkYWRhIGZvaSBzZWxlY2lvbmFkYSBwYXJhIGVzdGUgZ3J1cG8nOwokbGFuZ1snbm9ncm91cHMnXSA9ICdOZW5odW0gR3J1cG8gZm9pIGRlZmluaWRvICZsYXF1bzsnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcnVwb3MgRW5jb250cmFkb3MnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ01lbWJlcnNoaXAgaW4gYXQgbGVhc3Qgb25lIGdyb3VwIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdSZXF1aXJlIG1lbWJlcnNoaXAgaW4gYXRsZWFzdCBvbmUgZ3JvdXAnOwokbGFuZ1snYmFjayddID0gJ1ZvbHRhcic7CiRsYW5nWydlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJ10gPSAnJXMgJmVhY3V0ZTsgdW0gY2FtcG8gb2JyaWdhdCZvYWN1dGU7cmlvJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdNYXJrIHJlcXVpcmVkIGZpZWxkcyB3aXRoJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0hpbGl0ZSByZXF1aXJlZCBmaWVsZHMgaW4nOwokbGFuZ1snbmV4dCddID0gJ1ByJm9hY3V0ZTt4aW1vJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnVW0gR3J1cG8gY29tIGVzc2Ugbm9tZSBqJmFhY3V0ZTsgZXhpc3RlJzsKJGxhbmdbJ3JlcXVpcmVkJ10gPSAnT2JyaWdhdCZvYWN1dGU7cmlvJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnT3BjaW9uYWwnOwokbGFuZ1snb2ZmJ10gPSAnRGVzbGlnYWRvJzsKJGxhbmdbJ3NpemUnXSA9ICdUYW1hbmhvJzsKJGxhbmdbJ3NpemVjb21tZW50J10gPSAnPGJyLz4oTWF4aW11bSBzaXplIG9mIGFueSBvbmUgZGltZW5zaW9uIG9mIHRoZSBpbWFnZSBpbiBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ1RhbWFuaG8nOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2hhcnMgaW4gdGhlIHRleHQgaW5wdXQpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdEcm9wZG93biBvcHRpb25zLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuICBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1Byb21wdCc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1RpcG8nOwokbGFuZ1sndHlwZSddID0gJ1RpcG8nOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdGaWVsZCBTdGF0dXMnOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnQXNrIGluIExvc3Q8YnIvPlVzZXJuYW1lJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0byc7CiRsYW5nWydjaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnTXVsdGkgU2VsZWN0IExpc3QnOwokbGFuZ1snaW1hZ2UnXSA9ICdJbWFnZW0nOwokbGFuZ1snZW1haWwnXSA9ICdFbmRlcmUmY2NlZGlsO28gRW1haWwnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZXh0YXJlYSc7CiRsYW5nWydkcm9wZG93biddID0gJ0Ryb3Bkb3duJzsKJGxhbmdbJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJ10gPSAnQmVtIHZpbmRvJzsKJGxhbmdbJ2xvZ291dCddID0gJ0xvZ291dCc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnVXNlIHRoaXMgZ3JvdXAgbmFtZSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdBbHRlcmFyIERhZG9zJzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnTyBsb2dpbiBmYWxob3UgLSBOb21lIGRlIHV0aWxpemFkb3Igb3UgcGFsYXZyYSBjaGF2ZSBpbnYmYWFjdXRlO2xpZGEuJzsKJGxhbmdbJ2xvZ2luJ10gPSAnTG9naW4nOwokbGFuZ1sncHJvbXB0X3NpZ25pbl9idXR0b24nXSA9ICdTaWduIGluIGJ1dHRvbiBsYWJlbCc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdOb21lIGRlIFV0aWxpemFkb3InOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnRW5kZXJlJmNjZWRpbDtvIGRlIEVtYWlsJzsKJGxhbmdbJ3Byb21wdF9wYXNzd29yZCddID0gJ1BhbGF2cmEgQ2hhdmUnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdNZW1vcml6YXItbWUgbmVzdGUgY29tcHV0YWRvcic7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdGFyJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnRXNxdWVjZXUtc2UgZGEgc3VhIHBhbGF2cmEtY2hhdmUgb3UgJnF1b3Q7cGFzc3dvcmQmcXVvdDs/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0VzcXVlY2V1LXNlIGRvcyBzZXVzIGRldGFsaGVzIGRlIHV0aWxpemFkb3I/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnUGFkciZhdGlsZGU7byc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlICc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdOJmF0aWxkZTtvIGZvaSBlbmNvbnRyYWRhIG5lbmh1bWEgaW5mb3JtYSZjY2VkaWw7JmF0aWxkZTtvIHBhcmEgZXN0ZSB1dGlsaXphZG9yJzsKJGxhbmdbJ2Vycm9yX3VzZXJuYW1ldGFrZW4nXSA9ICdPIG5vbWUgZGUgdXRsaXphZG9yICglcykgbiZhdGlsZGU7byBlc3QmYWFjdXRlOyBkaXNwb24maWFjdXRlO3ZlbCc7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnVXNhciBTTVRQIHBhcmEgdmFsaWRhciBlbmRlcmUmY2NlZGlsO29zIGRlIGUtbWFpbD8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnVGFtYW5obyBNJmlhY3V0ZTtuaW1vIGRhIFBhbGF2cmEgQ2hhdmUnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnVGFtYW5obyBNJmFhY3V0ZTt4aW1vIGRhIFBhbGF2cmEgQ2hhdmUnOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnVGFtYW5obyBNJmlhY3V0ZTtuaW1vIGRvIE5vbWUgZGUgVXRpbGl6YWRvcic7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdUYW1hbmhvIE0mYWFjdXRlO3hpbW8gZG8gTm9tZSBkZSBVdGlsaXphZG9yJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Nlc3Npb24gVGltZW91dCAoc2Vjb25kcyknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1VzZSBjb29raWVzIHRvIGtlZXAgbG9naW5zIGFsaXZlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnQWxsb3cgRW1haWwgUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdEZWZhdWx0IEdyb3VwIGZvciBuZXcgdXNlcnMnOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICdDaGFuZ2UgU2V0dGluZ3MgVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0FzIFBhbGF2cmFzIENoYXZlIG4mYXRpbGRlO28gY29uZGl6ZW0nOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnTm9tZSBkZSBVdGlsaXphZG9yIEludiZhYWN1dGU7bGlkbyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdQYWxhdnJhIENoYXZlIEludiZhYWN1dGU7bGlkYSc7CiRsYW5nWydlZGl0dXNlciddID0gJ0VkaXRhciBVdGlsaXphZG9yJzsKJGxhbmdbJ3ZhbGlkJ10gPSAnVmFsaWRvJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnTm9tZSBkZSBVdGlsaXphZG9yJzsKJGxhbmdbJ3N0YXR1cyddID0gJ0VzdGFkbyc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdFc3RlIHV0aWxpemFkb3IgbiZhdGlsZGU7byAmZWFjdXRlOyBtZW1icm8gZGUgbmVuaHVtIGRvcyBncnVwb3MnOwokbGFuZ1snZXJyb3JfcHJvcGVydGllcyddID0gJ1NlbSBQcm9wcmllZGFkZXMnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdUZW50YXRpdmEgZGUgaW1wb3J0YSZjY2VkaWw7JmF0aWxkZTtvIGRlIHByb3ByaWVkYWRlcyBkdXBsaWNhZGFzJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnVmFsb3InOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3J1cG9zJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdQcm9wcmllZGFkZXMnOwokbGFuZ1sncHJvcG5hbWUnXSA9ICdOb21lIGRlIFByb3ByaWVkYWRlJzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ1ZhbG9yIGRlIFByb3ByaWVkYWRlJzsKJGxhbmdbJ2FkZCddID0gJ0FkaWNpb25hcic7CiRsYW5nWydoaXN0b3J5J10gPSAnSGlzdG9yaWFsJzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0YXInOwokbGFuZ1snZXhwaXJlcyddID0gJ0V4cGlyYSc7CiRsYW5nWydzcGVjaWZ5X2RhdGUnXSA9ICdFc3BlY2lmaWNhciBEYXRhJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgSG9yYXMnOwokbGFuZ1snMjRocnMnXSA9ICcyNCBIb3Jhcyc7CiRsYW5nWyc0OGhycyddID0gJzQ4IEhvcmFzJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSBTZW1hbmEnOwokbGFuZ1snMndlZWtzJ10gPSAnMiBTZW1hbmFzJzsKJGxhbmdbJzFtb250aCddID0gJzEgTSZlY2lyYztzJzsKJGxhbmdbJzNtb250aHMnXSA9ICczIE1lc3Nlcyc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiBNZXNzZXMnOwokbGFuZ1snMXllYXInXSA9ICcxIEFubyc7CiRsYW5nWyduZXZlciddID0gJ051bmNhJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsZSBpbnN0YWxsZWQgc3VjZXNzZnVsbHkuPGJyLz5CZSBzdXJlIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4mcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdQYWxhdnJhIENoYXZlJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnRGUgTm92byc7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnVW0gZ3J1cG8gY29tIGVzc2Ugbm9tZSBqJmFhY3V0ZTsgZXhpc3RlJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ0VkaXRhciBHcnVwbyc7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtZXRlcic7CiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWxhcic7CiRsYW5nWydkZWxldGUnXSA9ICdSZW1vdmVyJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnVGVtIGNlcnRlemEgZGUgcXVlIGVzdGFzIGRlZmluaSZjY2VkaWw7Jm90aWxkZTtlcyBzJmF0aWxkZTtvIGNvcnJlY3RhcyBwYXJhIGVzdGUgZ3J1cG8/IFxuQ29sb2NhciB1bWEgcHJvcHJpZWRhZGUgb2ZmIG4mYXRpbGRlO28gaXImYWFjdXRlOyBhcGFnYXIgdG9kYXMgYXMgZW50cmFkYXMgbmEgdGFiZWxhIGRlIHByb3ByaWVkYWRlcyBkZXNzZSBncnVwby91dGlsaXphZG9yLiBFbGFzIHNpbXBsZXNtZW50ZSBuJmF0aWxkZTtvIGlyJmF0aWxkZTtvIGVzdGFyIGRpc3BvbiZpYWN1dGU7dmVpcy4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ1RlbSBhIGNlcnRlemEgcXVlIHF1ZXIgcmVtb3ZlciBlc3RlIGdydXBvPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnVGVtIGNlcnRlemEgZGUgcXVlIGRlc2VqYSBhcGFnYXIgY29tcGxldGFtZW50ZSBlc3RhIHByb3ByaWVkYWRlPyBcbkRlc3RhIGZvcm1hIHRhbWImZWFjdXRlO20gaXImYWFjdXRlOyBhcGFnYXIgdG9kYXMgYXMgZW50cmFkYXMgZG8gdXRpbGl6YWRvciBwYXJhIGVzdGEgcHJvcHJpZWRhZGUuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1BhciZhY2lyYzttZXRyb3MgSW5zdWZpY2llbnRlcyc7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ25hbWUnXSA9ICdOb21lJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmxlbWEgYWRpY2lvbmFyIHByb3ByaWVkYWRlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBhZGljaW9uYXIgcmVsYSZjY2VkaWw7JmF0aWxkZTtvIGRlIGdydXBvJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW1hIGFkaWNpb25hciBncnVwbyc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIGEgYWRpY2lvbmFyIHV0aWxpemFkb3IgYSB1bSBncnVwbyc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbWEgYW8gZXhjbHVpciB1bWEgcHJvcHJpZWRhZGUnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdOJmF0aWxkZTtvIGZvaSBwb3NzJmlhY3V0ZTt2ZWwgbG9jYWxpemFyIHVtIGVuZGVyZSZjY2VkaWw7byBkZSBlLW1haWwnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ05lbmh1bWEgcGVybWlzcyZhdGlsZGU7byBwYXJhIGVzY3JldmVyIG5vIGRpcmV0Jm9hY3V0ZTtyaW8gZGUgZGVzdGlubyAnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1BhciZhY2lyYzttZXRyb3MgSW52JmFhY3V0ZTtsaWRvcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ04mYXRpbGRlO28gZm9pIGVuY29udHJhZG8gbmVuaHVtIGdydXBvJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQXBsaWNhcic7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cm8nOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ05vbWUgZGUgVXRpbGl6YWRvciBFeHByZXNzJm90aWxkZTtlcyBSZWd1bGFyZXMnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICdEZXNjcmkmY2NlZGlsOyZhdGlsZGU7byc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOb21lIGRlIEdydXBvJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2Vzc28gTmVnYWRvJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJybyc7CiRsYW5nWydhZGRncm91cCddID0gJ0FkaWNpb25hciBHcnVwbyc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ0ltcG9ydGFyIEdydXBvJzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdBZGljb25hciBVdGlsaXphZG9yJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVdGlsaXphZG9yZXMgZW5jb250cmFkb3MgZGUgYWNvcmRvIGNvbSBjcml0JmVhY3V0ZTtyaW9zIGRlIGJ1c2NhJzsKJGxhbmdbJ2dyb3VwJ10gPSAnR3J1cG8nOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTZWxlY2lvbmFyIEdydXBvJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIGRlIFJlZ2lzdG8nOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZGUgTG9nb3V0JzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZGUgTG9naW4nOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXImZWNpcmM7bmNpYXMnOwokbGFuZ1sndXNlcnMnXSA9ICdVdGlsaXphZG9yZXMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnR2VzdCZhdGlsZGU7byBGcm9udGVuZCBVc2VyJzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnUGVybWl0aXIgYW9zIHVzdSZhYWN1dGU7cmlvcyBhY2Vzc2FyICZhZ3JhdmU7IGZyZW50ZSBkbyBzaXRlJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICdQcmltZWlyYSBwJmFhY3V0ZTtnaW5hIFBhZHImYXRpbGRlO28nOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJyZVYWN1dGU7bHRpbWEgcCZhYWN1dGU7Z2luYSBhY2Vzc2FkYSc7CiRsYW5nWydvdGhlcnBhZ2UnXSA9ICdPdXRyYSBwJmFhY3V0ZTtnaW5hOiAnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ0RpZ2l0ZSBvIHRleHRvIGRhIGltYWdlbSc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/ro_RO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnVmFsb2FyZWEgc3BlY2lmaWNhdGEgcGVudHJ1ICVzIGVzdGUgZGVqYSBmb2xvc2l0YSBkZSBhbHQgdXRpbGl6YXRvcic7CiRsYW5nWyd1bmlxdWUnXSA9ICdVbmljJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ1ZhbG9hcmVhIHNwZWNpZmljYXRhIHBlbnRydSAlcyAoJXMpIG51IGVzdGUgdW5pY2EnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ1NlIGZvcnRlYXphIGNhIHZhbG9yaWxlIGFjZXN0ZWkgcHJvcHJpZXRhdGkgc2EgZmllIHVuaWNlIHBlbnRydSB0b2F0ZSBjb250dXJpbGUgZGUgdXRpbGl6YXRvcmknOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnRm9sb3NpdCBwZW50cnUgZm9ybXVsYXJlbGUgZGUgYXV0ZW5yaWZpY2FyZSBzaSBkZWF1dGVudGlmaWNhcmUsIGFjZXN0IHBhcmFtZXRydSBkYWNhIGVzdGUgc3BlY2lmaWNhdCB2YSBpbmRpY2EgZmFwdHVsIGNhIHV0aWxpemF0b3J1bCBhciB0cmVidWkgc2EgZmllIHJlZGlyZWN0aW9uYXQgY2F0cmUgIHBhZ2luYSAodXJsLXVsKSB1bmRlIGVyYSB1dGlsaXphdG9ydWwgaW5haW50ZSBkZSBlZmVjdHVhcmVhIGFjdGl1bmlpLiBBY2VzdCBwYXJhbWV0cnUgdmEgc3VwcmFzY3JpZSBwcmVmZXJpbnRlbGUgZGUgcmVkaXJlY3Rpb25hcmUsIHNpIHBhcmFtZXRydWwgZGUgcmV0dXJudG8uJzsKJGxhbmdbJ2hlbHBfbm9pbmxpbmUnXSA9ICdGb2xvc2l0IGN1IHVudWwgZGluIGZvcm11bGFyZSwgYWNlc3QgcGFyYW1ldHJ1IHNwZWNpZmljYSBmYXB0dWwgY2EgZm9ybWVsZSBhciB0cmVidWkgc2EgbnUgZmllIHBsYXNhdGUgaW5saW5lLCBkdXBhIHRyaW1pdGVyZWEgZm9ybXVsYXJ1bHVpIHJlenVsdGF0dWwgdmEgaW5sb2N1aSBibG9jdWwgZGUgY29udGludXQgaW1wbGljaXQuJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdBdmVydGl6YXJlIFRpbWVvdXQgU2VzaXVuZSBBdXRlbnRpZmljYXJlJzsKJGxhbmdbJ21zZ19yZXNldF9zZXNzaW9uJ10gPSAnU2VzaXVuZWEgZGUgYXV0ZW50aWZpY2FyZSBlc3RlIHBlIGNhbGUgc2Egc2UgdGVybWluZSwgZGF0aSBjY2xpYyBwZSAmcXVvdDsmcXVvdDtPayZxdW90OyBwZW50cnUgYSBjb25maXJtYSBhY3Rpdml0YXRlYSBpbiBzaXRlLic7CiRsYW5nWydvayddID0gJ09LJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIFJlc2V0YXJlIFNlc2l1bmUnOwokbGFuZ1snaW5mb19uYW1lJ10gPSAnQWNlc3RhIGVzdGUgbnVtZWxlIGNhbXB1bHVpLCBzZSB2YSBmb2xvc2kgcGVudHJ1IGFwZWxhcmUgZGluIHNtYXJ0eS4gIFRyZWJ1aWUgc2EgY29udGluYSBudW1haSBjYXJhY3RlcmUgYWxmYW51bWVyaWNlIHNpIHVuZGVyc2NvcmUgKF8pLic7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICdWaXppdGF0b3JpJzsKJGxhbmdbJ2ZldV9ncm91cHNfcHJvbXB0J10gPSAnU2VsZWN0YXRpIHVudWwgc2F1IG1haSBtdWx0ZSBncnVwdXJpIGNhcmUgcG90IHZlZGVhIGFjZWFzdGEgcGFnaW5hJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdVbiBncnVwIHRyZWJ1aWUgc2EgZmllIHNlbGVjdGF0JzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGVjdGF0aSB1bnVsJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdBbiBzdGFydCc7CiRsYW5nWydlbmRfeWVhciddID0gJ0FuIHNmYXJzaXQnOwokbGFuZ1snZGF0ZSddID0gJ0RhdGEnOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnRGltZW5zaXVuZSBtaW5pYXR1cmEnOwokbGFuZ1snT25VcGRhdGVHcm91cCddID0gJ0RpbiBHcnVwIFV0aWxpemF0b3JpIE1vZGlmaWNhdCc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdQcmVhIG11bHRpIHV0aWxpemF0b3JpIHN1bnQgc2VsZWN0YXRpIHBlbnRydSBvcGVyYXRpdW5pIGluIGdydXAuLi4uIFZhIHJ1Z2FtIHNhIHNlbGVjdGF0aSBtYXhpbSAyNTAnOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdTdW50ZXRpIHNpZ3VyIGNhIGRvcml0aSBzYSBzdGVyZ2V0aSB1dGlsaXphdG9yaWkgc2VsZWN0YXRpPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdTdGVyZ2VyZSBzZWxlY3RpYSc7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmFyZSBudW1lIHV0aWxpemF0b3IgbGEgaW50YW1wbGFyZSBjYW5kIHNlIGFkYXVnYSB1dGlsaXphdG9yaSBub2knOwokbGFuZ1snbW9udGhzJ10gPSAnbHVuaSc7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnUGVyaW9hZGEgaW1wbGljaXRhIGV4cGlyYXJlIHV0aWxpemF0b3InOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnU2V0YXJpIG5vdGlmaWNhcmUnOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdTZXRhcmkgcHJvcHJpZXRhdGUnOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdTZXRhcmkgcmVkaXJlY3Rpb25hcmUnOwokbGFuZ1snZ2VuZXJhbF9zZXR0aW5ncyddID0gJ1NldGFyaSBnZW5lcmFsZSc7CiRsYW5nWydzZXNzaW9uX3NldHRpbmdzJ10gPSAnU2V0YXJpIHNlc2l1bmkgc2kgY29va2llLXVyaSc7CiRsYW5nWydmaWVsZF9zZXR0aW5ncyddID0gJ1NldGFyaSBjYW1wJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ1N0ZWd1bGV0dWwgbG9zdHVzZXJuYW1lIHBvYXRlIGZpIGZvbG9zaXQgbnVtYWkgbGEgY2FtcHVyaSBvYmxpZ2F0b3JpaSc7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdTZSBwZXJtaXRlIGZvbG9zaXJlYSBlZGl0b3J1bHVpIHd5c2l3eWcgcGVudHJ1IGFjZWFzdGEgYXJpZSBkZSB0ZXh0JzsKJGxhbmdbJ2luZm9fY29va2llc3RvcmVtZW1iZXInXSA9ICc8c3Ryb25nPk5vdGE6IDwvc3Ryb25nPiBBY2Vhc3RhIGZvbG9zZXN0ZSBmdW5jdGlhIG1jcnlwdCBwZW50cnUgY3JpcHRhcmUsIHNpIG51IGF1IHB1dHV0IGZpIHN0ZXJzZSBkaW4gaW5zdGFsYXJlYSBkdW1uZWF2b2FzdHJhLiBMdWF0aSBsZWdhdHVyYSBjdSBhZG1pbmlzdHJhdG9ydWwgc2VydmVydWx1aS4nOwokbGFuZ1snZWRpdGluZ191c2VyJ10gPSAnRWRpdGFyZSB1dGlsaXphdG9yJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnTnUgc2UgcHVuIGlubGluZSBmb3JtdWxhcmVsZSc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaWMgYWljaSBkYWNhIGF0aSB1aXRhdCBkZXRhbGlpbGUgZGUgYXV0ZW50aWZpY2FyZSc7CiRsYW5nWydpbmZvX2ZvcmdvdHB3J10gPSAnQ2xpYyBhaWNpIGRhY2EgYXRpIHVpdGF0IHBhcm9sYSc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0NsaWMgYWljaSBwZW50cnUgaWVzaXJlIGRpbiBjb250JzsKJGxhbmdbJ2luZm9fY2hhbmdlc2V0dGluZ3MnXSA9ICdDbGljIGFpY2kgcGVudHJ1IGEgbW9kaWZpY2EgcGFyb2xhIHNhdSBhbHRlIGluZm9ybWF0aWknOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdWaXp1YWxpemFyZSB0ZW1wbGF0ZSB1dGlsaXphdG9yJzsKJGxhbmdbJ2V2ZW50J10gPSAnRXZlbmltZW50dCc7CiRsYW5nWydmZXVfZXZlbnRfbm90aWZpY2F0aW9uJ10gPSAnTm90aWZpY2FyZSBldmVuaW1lbnQgRkVVJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ0FkcmVzYSBlLW1haWwgbm90aWZpY2FyZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZS1tYWlsIG5vdGlmaWNhcmUnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9zdWJqZWN0J10gPSAnU3ViaWVjdCBlLW1haWwgbm90aWZpY2FyZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ05vdGlmaWNhcmkgZS1tYWlsJzsKJGxhbmdbJ09uTG9naW4nXSA9ICdMYSBhdXRlbnRpZmljYXJlJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnTGEgaWVzaXJlIGRpbiBjb250JzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ0xhIGV4cGlyYXJlIHNlc2l1bmUnOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnTGEgY3JlYXJlIGNvbnQgdXRpbGl6YXRvciBub3UnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnTGEgc3RlcmdlcmUgdXRpbGl6YXRvcic7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdMYSBtb2RpZmljYXJlIHNldGFyaSB1dGlsaXphdG9yJzsKJGxhbmdbJ09uQ3JlYXRlR3JvdXAnXSA9ICdMYSBjcmVhcmUgZ3J1cCB1dGlsaXphdG9yaSc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnTGEgc3RlcmdlcmUgZ3J1cCB1dGlsaXphdG9yaSc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ0FtIGdhc2l0IHVuIG51bWUgZGUgdXRpbGl6YXRvciBjYXJlIHNlIHBvdHJpdmVzdGUgY3UgZGV0YWxpaWxlIGludHJvZHVzZSBkZSBkdW1uZWF2b2FzdHJhLic7CiRsYW5nWyd5b3VyX3VzZXJuYW1lX2lzJ10gPSAnTnVtZWxlIGR1bW5lYXZvYXN0cmEgZGUgdXRpbGl6YXRvciBlc3RlJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1ZhIHJlY29tYW5kYW0gc2EgcGFzdHJhdGkgYWNlc3RlIGluZm9ybWF0aWkgaW50ci11biBsb2Mgc2lndXIsIGRhciBpbiBhY2VsYXNpIHRpbXAgdW5kZSBzYSBsZSBnYXNpdGkgdXNvci4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ0FsaWFzL0lEIHBhZ2luYSB1bmRlIHNhIHNlIHNhcmEgZHVwYSBzY2hpbWJhcmUgc2V0YXJpJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ0FsaWFzL0lEIHBhZ2luYSB1bmRlIHNhIHNlIHNhcmEgZHVwYSBjb2R1bCBkZSB2ZXJpZmljYXJlIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBkZXRhbGlpIG51bWUgdXRpbGl6YXRvciBwaWVyZHV0JzsKJGxhbmdbJ2xvc3R1bl9jb25maXJtX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgY29uZmlybWFyZSBudW1lIHV0aWxpemF0b3IgcGllcmR1dCc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Vyb2FyZTogTWFpIG11bHQgZGUgdW4gc2luZ3VyIGNvbnQgZGUgdXRpbGl6YXRvciBzZSBwb3RyaXZlc2MgY3UgZGF0ZWxlIHNwZWNpZmljYXRlJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0Vyb2FyZTogTnUgYW0gZ2FzaXQgbmljaSB1biB1dGlsaXphdG9yIGNhcmUgc2EgY29yZXNwdW5kYSc7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnRXJvYXJlOiBOdSBhIGZvc3QgZ2FzaXQgbmljaSB1biBncnVwIGN1IGFjZXN0IG51bWUnOwokbGFuZ1sncmVhZG9ubHknXSA9ICdOdW1haSBjaXRpcmUnOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ0NsYXNhIG1hbmlwdWxhdG9yIHV0aWxpemF0b3InOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnU2NvcyBkaW4gY29udCBkZSBjYXRyZSBhZG1pbmlzdHJhdG9yJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdTZSBhZmlzZWF6YSBudW1haSB1dGlsaXphdG9yaWkgYXV0ZW50aWZpY2F0aSc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnU2NvYXRldGkgZGluIGNvbnQgYWNlcyB1cmlsaXphdG9yJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ1Byb3ByaWV0YXRpIHV0aWxpemF0b3InOwokbGFuZ1sndXNlcmhpc3RvcnknXSA9ICdJc3RvcmljIHV0aWxpemF0b3InOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0YXJlJzsKJGxhbmdbJ2NsZWFyJ10gPSAnR29saXJlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0V4cG9ydGFyZSBpc3RvcmljIHV0aWxpemF0b3JpIGNhdHJlIEFTQ0lJIGNhcmUgc3VudCBtYWNhcic7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ0dvbGlyZSBpbnJlZ2lzdHJhcmkgaXN0b3JpYyB1dGlsaXphdG9yIGNhcmUgc3VudCBtYWNhcic7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICdBdGkgdWl0YXQgZGF0ZWxlIGRlIGF1dGVudGlmaWNhcmU/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydGFyZSBkZWZpbml0aWUgZ3J1cCAoc2kgcHJvcHJpZW50YXRpbGUpIGNhdHJlIFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnTWVudGVuYW50YSBpc3RvcmljIHV0aWxpemF0b3InOwokbGFuZ1sneWVzJ10gPSAnRGEnOwokbGFuZ1snbm8nXSA9ICdOdSc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICdhbCc7CiRsYW5nWydkYXRlX2FsbHJlY29yZHMnXSA9ICcqKiBGYXJhIExpbWl0YSAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdPIG9yYSB2ZWNoaW1lJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJzYgb3JlIHZlY2hpbWUnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnMTIgb3JlIHZlY2hpbWUnOwokbGFuZ1snZGF0ZV9vbmVkYXlvbGQnXSA9ICdPIHppIHZlY2hpbWUnOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnTyBzYXB0YW1hbmEgdmVjaGltZSc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnMiBzYXB0YW1hbmkgdmVjaGltZSc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnTyBsdW5hIHZlY2hpbWUnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJzMgbHVuaSB2ZWNoaW1lJzsKJGxhbmdbJ2RhdGVfc2l4bW9udGhzb2xkJ10gPSAnNiBsdW5pIHZlY2hpbWUnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnVW4gYW4gdmVjaGltZSc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdHcnVwYXJlIHNpIHNvcnRhcmUnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ0lucmVnaXN0cmFyaSBjYXJlIHNlIHBvdHJpdmVzYyBjdSBjcml0ZXJpaWxlJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnTnVtZSB1dGlsaXphdG9yIGRlc2NlbmRlbnQnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ051bWUgdXRpbGl6YXRvciBhc2NlbmRlbnQnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfZGVzYyddID0gJ0RhdGEgZGVzY2VuZGVudCc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdEYXRhIGFzY2VuZGVudCc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdUaXAgZXZlbmltZW50IGRlc2NlbmRlbnQnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdUaXAgZXZlbmltZW50IGFzY2VuZGVudCc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdBZHJlc2EgSVAgZGVzY2VuZGVudCc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ0FkcmVzYSBJUCBhc2NlbmRlbnQnOwokbGFuZ1snaW5mb19ub2hpc3RvcnlkZXRlY3RlZCddID0gJ051IGFzLWEgZGV0ZWN0YXQgaXN0b3JpYyc7CiRsYW5nWydyZXNldCddID0gJ1Jlc2V0YXJlJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dydXBhcmUgZHVwYSBhZHJlc2EgSVAnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdGaWx0cnUgdGlwIGV2ZW5pbWVudCc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdTZSBhZmlzZWF6YSBudW1haSBldmVuaW1lbnRlbGUgY2FyZSBzdW50IG1haSBwdXRpbiBkZTonOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ0xpbWl0YSBwYWdpbmEnOwokbGFuZ1snZm9yJ10gPSAncGVudHJ1JzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnUmFwb3J0IGlzdG9yaWMgdXRpbGl6YXRvcmknOwokbGFuZ1sndW5rbm93biddID0gJ05lY3Vub3NjdXQnOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0FkcmVzYSBJUCc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnVGlwIGV2ZW5pbWVudCc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdGEnOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ0ludG9hcmNlcmUnOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ09wZXJhdGl1bmUgaW1wb3J0IGZpbmFsaXphdGEnOwokbGFuZ1sncHJvbXB0X2xpbmVzcHJvY2Vzc2VkJ10gPSAnTGluaWkgcHJvY2VzYXRlJzsKJGxhbmdbJ3Byb21wdF9lcnJvcnMnXSA9ICdFcm9yaSBpbnRhbG5pdGUnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ0lucmVnaXN0cmFyaSBhZGF1Z2F0ZSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnTnUgYXUgZm9zdCBnYXNpdGUgcHJvcHJpZXRhdGkgcGVudHJ1IGdydXB1bCAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ051IGEgdmVuaXQgbmljaSB1biByYXNwdW5zIGRlIGxhIHNlcnZlcnVsIFNNVFAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnRmlzaWVydWwgc3BlY2lmaWNhdCAoJXMpIG51IGEgcHV0aXQgZmkgZ2FzaXQnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ1ZhbG9hcmUgaW52YWxpZGEgcGVudHJ1IGNhbXB1bCBkcm9wZG93biBzYXUgbXVsdGlzZWxlY3QgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdDYW1wdWwgJXMgZGVwYXNlc3RlIGx1bmdpbWVhIG1heGltYSc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0Vyb2FyZSBsYSBpbXBvcnQgKGxpbmlhICVzKTogJXMnOwokbGFuZ1snZXJyb3JfcHJvcGVydHlkZWZucyddID0gJ051IGF1IHB1dGl0IGZpIG9idGludXRlIGRlZmluaXRpaWxlIHByb3ByaWV0YXRpaSAoZXJvYXJlIGludGVybmEpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW1hIGxhIHNldGFyZSBpbmZvcm1hdGlpIHV0aWxpemF0b3InOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ051IGEgZm9zdCBnYXNpdGEgbyBjb2xvYW5hIGNhcmUgc2Egc2UgcG90cml2ZWFzY2EgY3UgY2FtcHVsIG9ibGlnYXRvcml1ICVzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wZXJ0aWVzJ10gPSAnTnUgYXUgZm9zdCBnYXNpdGUgcHJvcHJpZXRhdGkgcGVudHJ1IGdydXB1bCBzcGVjaWZpY2F0JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVmb3JtYXQnXSA9ICdGaXNpZXJ1bCBzcGVjaWZpY2F0IHBlbnRydSBpbXBvcnQgbnUgZXN0ZSBpbiBmb3JtYXR1bCBjb3JlY3QnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ051IHMtYSBwdXR1dCBkZXNjaGlkZSBmaXNpZXJ1bCc7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5JbmZvcm1hdGlpIGZvcm1hdCBmaXNpZXI8L2g0Pg0KPHA+RmlzaWVydWwgZGUgaW1wb3J0IHRyZWJ1aWUgc2EgZmllIGluIGZvcm1hdCBBU0NJSSBzaSBzYSBmb2xvc2Vhc2NhIHZhbG9yaSBzZXBhcmF0ZSBwcmluIHZpcmd1bGEuIEZpZWNhcmUgbGluaWUgZGluIGZpc2llciAoY3UgZXhjZXB0aWEgbGluaWVpIGhlYWRlciwgZGlzY3V0YXRhIG1haSBqb3MpIHJlcHJlemludGEgbyBpbnJlZ2lzdHJhcmUgZGUgdXRpbGl6YXRvci4gT3JkaW5lYSBjYW1wdXJpbG9yIGRpbiBmaWVjYXJlIGxpbmllIHRyZWJ1aWUgc2EgZmllIGlkZW50aWNhLjwvcD4NCjxoNT5MaW5pZSBoZWFkZXI8L2g1Pg0KPHVsPg0KPGxpPlByaW1hIGxpbmllIGEgZmlzaWVydWx1aSB0cmVidWllIHNhIGluY2VhcGEgY3UgMiBjYXJhY3RlcmUgZGlleiAoXCMpLCBzaSBkYSBudW1lbGUgZmllY2FydWkgY2FtcCBkaW4gZmlzaWVyLiBOdW1lbGUgYWNlc3RvciBjYW1wdXJpIGVzdGUgc2VtbmlmaWNhdGl2LiBTdW50IHVuZWxlIGNhbXB1cmkgb2JsaWdhdG9yaWkgKHZlZGV0aSBtYWkgam9zKSwgc2kgYWx0ZSBudW1lIHRyZWJ1aWUgc2Egc2EgcG90cml2ZWFzY2EgY3UgbnVtZWxlIHByb3ByaWV0YXRpaSBhc29jaWF0ZSBncnVwdWx1aSBpbiBjYXJlIHNlIGFkYXVnYSB1dGlsaXphdG9yaWkuPC9saT4NCjxsaT5Qcm9jZXN1bCBkZSBpbXBvcnQgdmEgZXN1YSBkYWNhIGNhbXB1cmlsZSBkaW4gZmlzaWVydWwgZGUgaW1wb3J0IG51IHNlIHBvdHJpdmVzYyBjdSB0b2F0ZSBwcm9wcmlldGF0aWxlIG9ibGlnYXRvcmlpIGFzb2NpYXRlIGdydXB1bHVpIGluIGNhcmUgc2UgYWRhdWdhIHV0aWxpemF0b3JpaTwvbGk+DQo8bGk+ZmlzaWVydWwgZGUgaW1wb3J0IHBvYXRlIGNvbnRpbmUgY2FtcHVyaSByZXByZXplbnRhbmQgcHJvcHJpZXRhdGkgb3B0aW9uYWxlIGFsZSBncnVwdWx1aSBzcGVjaWZpY2F0LjwvbGk+DQo8bGk+UHJvY2VzdWwgZGUgaW1wb3J0IHZhIGlnbm9yYSBvcmljZSBjYW1wdXJpIGRpbiBmaXNpZXIgY2FyZSBudSBzdW50IGN1bm9zY3V0ZSBzYXUgY2FyZSBzZSBwb3RyaXZlc2MgY3UgcHJvcHJpZXRhdGkgY2FyZSBzdW50IDxlbT5pbmFjdGl2ZTwvZW0+IGluIGdydXB1bCBzcGVjaWZpY2F0LjwvbGk+DQo8L3VsPg0KPGg1PkRhdGUgY29sb2FuZTwvaDU+DQo8dWw+DQo8bGk+Q2FtcHVsIDxzdHJvbmc+dXNlcmlkPC9zdHJvbmc+IC0gSUQgdXRpbGl6YXRvci4gTyB2YWxvYXJlIGluIGFjZXN0IGNhbXAgdmEgaW5kaWNhIGNhIGZhY2V0aSBvIGFjdHVhbGl6YXJlLjwvbGk+DQo8bGk+Q2FtcHVsIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gLSBOdW1lbGUgZGUgdXRpbGl6YXRvciBkb3JpdC4NCiAgICA8cD5BY2VzdCBjYW1wIHRyZWJ1aWUgc2EgZXhpc3RlIGluIGxpbmlhIGhlYWRlciBzaSBpbiBmaWVjYXJlIGxpbmllIGRpbiBmaXNpZXJ1bCBkZSBpbXBvcnQuIEluZWdpc3RyYXJlYSB2YSBlc3VhIGRhY2EgdW4gdXRpbGl6YXRvciBjdSBhY2VsYXNpIG51bWUgZGUgdXRpbGl6YXRvciBleGlzdGEgZGVqYSBpbiBiYXphIGRlIGRhdGUuPC9wPjwvbGk+DQo8bGk+Q2FtcHVsIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gLSBQYXJvbGEgY2FyZSBzZSBzZXRhZXphIHBlbnRydSB1dGlsaXphdG9yPC9saT4NCjxsaT5DYW1wdWwgPHN0cm9uZz5jcmVhdGVkYXRlPC9zdHJvbmc+IC0gZGUgZmFjdXQ8L2xpPg0KPGxpPkNhbXB1bCA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gLSBkZSBmYWN1dDwvbGk+DQo8bGk+Q2FtcHVsIDxzdHJvbmc+Z3JvdXBuYW1lPC9zdHJvbmc+IC0gR3J1cHVyaWxlIGluIGNhcmUgZG9yaXRpIHV0aWxpemF0b3J1bCBzYSBmaWUgZmFjdXQgbWVtYnJ1LiBEYWNhIG51IHN1bnQgY29tcGxldGF0ZSB0b2F0ZSBjYW1wdXJpbGUgY2VydXRlIGxhIGluc2VyYXJlL2FjdHVhbGl6YXJlIGlucmVnaXN0cmFyZSB2YSBlc3VhLiBWZWRldGkgbGEgQ2FtcHVyaSBNdWx0aXNlbGVjdCBtYWkgam9zIHBlbnRydSBzaW50YXhhLjwvbGk+DQo8bGk+Q2FtcHVyaSBEcm9wZG93bi9SYWRpbw0KICAgIDxwPlZhbG9hcmVhIHByb3ByaWV0YXRpbG9yIGRyb3Bkb3duIGludHItdW4gZmlzaWVyIGRlIGltcG9ydCBlc3RlIHJlcHJlemVudGF0YSBjYSBzaXJ1bCBjYWUgc2UgYWZpc2VhemEgaW4gY2FtcHVsIGRyb3Bkb3duIGRpbiBtb2R1bHVsIEZyb250RW5kVXNlcnMuPC9wPg0KPC9saT4NCjxsaT5DYW1wdXJpIE11bHRpc2VsZWN0DQogICAgPHA+Q2FtcHVyaWxlIE11bHRpc2VsZWN0IHN1bnQgY29uaXRudXRlIGluIGZpc2llciBjYSBvIGxpc3RhIHNlcGFyYXRhIGRlIHN0cmluZ3VyaSwgdW5kZSBmaWVjYXJlIHN0cmluZyByZXByZXppbnRhIHRleHR1bCBhZmlzYXQgaW4gbGlzdGEgbXVsdGlzZWxlY3Q8L3A+DQo8L2xpPg0KPGxpPkNhbXB1cmkgRGF0YQ0KICAgIDxwPlRyZWJ1aWUgc2EgZmllIGluIGZvcm1hdHVsIE1NLURELVlZWVk8L3A+DQo8L2xpPg0KPGxpPkNhbXB1cmkgSW1hZ2luZQ0KICAgIDxwPkltYWdpbmlsZSBzdW50IGNhbXB1cmkgYSBjYXJvciBudW1lIGRlIGNvbG9hbmEgc2UgcG90cml2ZXN0ZSBjdSBvIHByb3ByaWV0YXRlIGRlIHRpcCBpbWFnaW5lLiBEYWNhIGFjZXN0IGNhbXAgZXN0ZSBvIHBhcnRlIG9ibGlnYXRvcmllIGRpbiBncnVwdWwgZGUgZGVzdGluYXRpZSwgYXR1bmNpIG51bWVsZSBzcGVjaWZpY2F0IGluIGFjZXN0ZSBjb2xvYW5lIHRyZWJ1aWUgc2EgZXhpc3RlIGluIGZvbGRlcnVsIC91cGxvYWRzIGEgQ01TTVMuIERhY2EgaW1hZ2luZWEgbnUgZXhpc3RhLCBzaSBjYW1wdWwgZXN0ZSBvYmxpZ2F0b3JpdSwgYXR1bmNpIGlucmVnaXN0cmFyZWEgdmEgZXN1YS4gPC9wPjwvbGk+DQo8L3VsPg0KPGg1Pk5vdGU8L2g1Pg0KPHA+UHJvY2VzdWwgZGUgaW1wb3J0IGVzdGUgc3ViaWVjdCBhbCBsaW1pdGFyaWxvciBpbXB1c2UgZGUgY2VsIGNhcmUgb2ZlcmEgaG9zdGluZ3VsLCBjdW0gYXIgZmkgbGltaXRhcmlsZSBkZSBtZW1vcmllLCB0aW1wIGRlIHByb2Nlc2FyZSwgZGltZW5zaXVuZSB1cGxvYWQgZmlzaWVyLCBzaSByZXN0cmljdGlpIHNhZmUgbW9kZS4gT3JpY2FyZSBkaW4gYWNlc3RlIGxpbWl0YXJpIHBvdCBjYXV6YSBjYSBpbXBvcnR1bCBzYSBlc3VlemUuIENhIGF0YXJlIGluY2VyY2F0aSBzYSBwYXN0cmF0aSBmaXNpZXJlbGUgZGUgaW1wb3J0IGxhIGRpbWVuc2l1bmkgcmVkdXNlLCBzaSBzaW1wbGUgaW4gc3RydWN0dXJhLjwvcD4NCjxwPkRlc2kgYW0gZmFjdXQgb3JpY2UgZWZvcnQgcGVudHJ1IGEgbmUgYXNpZ3VyYSBjYSBudSBlc3RlIHBvc2liaWxhIGNvcnVwZXJlYSBiYXplaSBkZSBkYXRlLCBlc3RlIGRlIHByZWZlcmF0IHNhIGVmZWN0dWF0aSB1biBiYWNrLXVwIGFsIGJhemVpIGRlIGRhdGUgaW5haW50ZSBkZSBlZmVjdHVhcmVhIGltcG9ydHVsdWkuPC9wPg0KPHA+RGF0ZWxlIGV4cG9ydGF0ZSBzdW50IGluIGFjZWxhc2kgZm9ybWF0IGNhIGNlbCBjZXJ1dCBwZW50cnUgaW1wb3J0LjwvcD4NCjxoNT5FeGVtcGx1PC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnRhcmUgdXRpbGl6YXRvcmkgaW4gYWNlc3QgZ3J1cCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnRyb2R1Y2VyZSBmaXNpZXIgQ1NWJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAnSW50cm9kdWNlcmUgZmlzaWVyIFhNTCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcnMnXSA9ICdFeHBvcnRhcmUgdXRpbGl6YXRvcmknOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0YXJlIHV0aWxpemF0b3JpJzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ0dvbGlyZSc7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0NhbGUgZGVzdGluYXRpZSBpbWFnaW5lJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnQSBhcGFydXQgbyBwcm9ibGVtYSBjdSB1biB1cGxvYWQgbGlwc2EgKGRhciBvYmxpZ2F0b3JpdSknOwokbGFuZ1snZXJyb3JfYmFkX3htbCddID0gJ0Zpc2llcnVsIFhNTCBmdXJuaXphIG51IGEgcHV0dXQgZmkgcGFyc2F0JzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdOdSBzZSBwb2F0ZSBzdGVyZ2UgdW4gZ3J1cCBjYXJlIGFyZSBpbmNhIHV0aWxpemF0b3JpJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdBY2VzdCB1dGlsaXphdG9yIGVzdGUgZGVqYSBhdXRlbnRpZmljYXQnOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGV4dHVsIGRpbiBpbWFnaW5lIG51IGEgZm9zdCBpbnRyb2R1cyBjb3JlY3QnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1NlIHBlcm1pdGUgY2EgdXRpbGl6YXRvcmlpIHNhIHNlIGF1dGVudGlmaWNlIG1haSBtdWx0IGRlIG8gc2luZ3VyYSBkYXRhJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnMnXSA9ICdFeHRlbnNpaSBmaXNpZXJlIGltYWdpbmUgY2FyZSBzdW50IHBlcm1pc2UgbGEgdXBsb2FkIHBlbnRydSB1dGlsaXphdG9yaSc7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJzxoMz5PbkRlbGV0ZVVzZXI8aDM+DQo8cD5VbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIHV0aWxpemF0b3IgZXN0ZSBzdGVyczwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gTnVtZWxlIGRlIHV0aWxpemF0b3I8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSUQgdXRpbGl6YXRvcjwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5VbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIHV0aWxpemF0b3IgZXN0ZSBjcmVhdDwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gTnVtZWxlIGRlIHV0aWxpemF0b3I8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSUQgdXRpbGl6YXRvcjwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5VbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIHV0aWxpemF0b3IgZXN0ZSBhY3R1YWxpemF0IChmaWUgZWwgc2luZ3VyIGZpZSBkZSB1biBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIE51bWVsZSBkZSB1dGlsaXphdG9yPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIElEIHV0aWxpemF0b3I8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5VbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIGdydXAgZXN0ZSBjcmVhdDwvcD4NCjxoND5QYXJhbWV0cmk8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBOdW1lbGUgZ3J1cHVsdWk8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gRGVzY3JpZXJlIGdydXA8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSUQgZ3J1cDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlR3JvdXAnXSA9ICc8aDM+T25EZWxldGVHcm91cDxoMz4NCjxwPlVuIGV2ZW5pbWVudCBnZW5lcmF0IGNhbmQgdW4gZ3J1cCBlc3RlIHN0ZXJzPC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIE51bWVsZSBncnVwdWx1aTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBJRCBncnVwPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJzxoMz5PbkxvZ2luPGgzPg0KPHA+VW4gZXZlbmltZW50IGdlbmVyYXQgY2FuZCB1biB1dGlsaXphdG9yIHNlIGF1dGVudGlmaWNhPC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBJRC11bCB1dGlsaXphdG9ydWx1aSBjYXJlIHMtYSBhdXRlbnRpZmljYXQ8L2xpPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gTnVtZWxlIHV0aWxpemF0b3J1bHVpIGNhcmUgcy1hIGF1dGVudGlmaWNhdDwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBBZHJlc2EgSVAgYSBjbGllbnR1bHVpPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPlVuIGV2ZW5pbWVudCBnZW5lcmF0IGNhbmQgdW4gdXRpbGl6YXRvciBpZXNlIGRpbiBjb250PC9wPg0KPGg0PlBhcmFtZXRyaTwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBOdW1lbGUgZGUgdXRpbGl6YXRvciBhbCBjZWx1aSBjYXJlIGEgaWVzaXQgZGluIGNvbnQ8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gSUQgdXRpbGl6YXRvcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+VW4gZXZlbmltZW50IGdlbmVyYXQgY2FuZCBvIHNlc2l1bmUgdXRpbGl6YXRvciBleHBpcmE8L3A+DQo8aDQ+UGFyYW1ldHJpPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIE51bWVsZSBkZSB1dGlsaXphdG9yIHBlbnRydSBjYXJlIGEgZXhwaXJhdCBzZXNpdW5lYTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBJRCB1dGlsaXphdG9yPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnVW4gZXZlbmltZW50IGdlbmVyYXQgY2FuZCB1biB1dGlsaXphdG9yIHNlIGF1dGVudGlmaWNhIGluIHNpdGUnOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ1VuIGV2ZW5pbWVudCBnZW5lcmF0IGNhbmQgdW4gdXRpbGl6YXRvciBpZXNlIGRpbiBjb250JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnVW4gZXZlbmltZW50IGdlbmVyYXQgY2FuZCBvIHNlc2l1bmUgdXRpbGl6YXRvciBhIGV4cGlyYXQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZVVzZXInXSA9ICdVbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIGNvbnQgbm91IHV0aWxpemF0b3IgZXN0ZSBjcmVhdCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ1VuIGV2ZW5pbWVudCBnZW5lcmF0IGNhbmQgaW5mb3JtYXRpaWxlIHVudWkgdXRpbGl6YXRvciBzdW50IGFjdHVhbGl6YXRlJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVVc2VyJ10gPSAnVW4gZXZlbmltZW50IGdlbmVyYXQgY2FuZCB1biBjb250IHV0aWxpemF0b3IgZXN0ZSBzdGVycyc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdVbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIGdydXAgdXRpbGl6YXRvcmkgZXN0ZSBjcmVhdCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdVbiBldmVuaW1lbnQgZ2VuZXJhdCBjYW5kIHVuIGdydXAgdXRpbGl6YXRvcmkgZXN0ZSBhY3R1YWxpemF0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ1VuIGV2ZW5pbWVudCBnZW5lcmF0IGNhbmQgdW4gZ3J1cCB1dGlsaXphdG9yaSBlc3RlIHN0ZXJzJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdHcnVwIGJhY2tlbmQnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBVcm1hdG9hcmVsZSBtYWNyby11cmkgcG90IGZpIGZvbG9zaXRlIGluIGFjZXN0ZSBjYW1wdXJpOiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gQ2FuZCBzZSBmb2xvc2VzdGUgbWFjcm8tdWwgeyRncm91cH0sIHNpc3RlbXVsIHZhIGlubG9jdWkgY3UgbnVtZWxlIHByaW11bHVpIGdydXAgZGluIGNhcmUgZmFjZSBwYXJ0ZSB1dGlsaXphdG9ydWwsIHNpIHZhIHJlZGlyZWN0aW9uYSBjYXRyZSBhY2VhIHBhZ2luYS4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0VkaXRhdGkgYWNlc3QgY2FtcCBwZW50cnUgYSByZXNldGEgcGFyb2xhIHV0aWxpemF0b3J1bHVpJzsKJGxhbmdbJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnXSA9ICdFZGl0YXRpIGFjZXN0IGNhbXAgcGVudHJ1IGEgcmVzZXRhIHBhcm9sYSB1dGlsaXphdG9ydWx1aSc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdVbiB1dGlsaXphdG9yIGN1IGFjZWxhc2kgbnVtZSB1dGlsaXphdG9yIGV4aXN0YSBkZWphJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ051IGF1IGZvc3Qgb2J0aW51dGUgcmV6dWx0YXRlIGRpbiBleHBvcnR1bCBDU1YnOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTHVuZ2ltZSBjYW1wIG51bWUgdXRpbGl6YXRvcic7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdMdW5naW1lIGNhbXAgcGFyb2xhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdMdW5naW1pIE1pbi9NYXggcGVudHJ1IHBhcm9sYSBpbnZhbGlkZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTHVuZ2ltaSBNaW4vTWF4IHBlbnRydSBudW1lIHV0aWxpemF0b3IgaW52YWxpZGUnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ0FkcmVzYSBkZSBlLW1haWwgaW52YWxpZGEnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdOdSBhbSBnYXNpdCBvIGFkcmVzYSBkZSBlLW1haWwgcGVudHJ1IGFjZXN0IGNvbnQnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ1Byb2JsZW1hIGxhIHNldGFyZSBpbmZvcm1hdGlpIHV0aWxpemF0b3InOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbWEgbGEgc2V0YXJlIHByb3ByaWV0YXRlJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVdGlsaXphdG9yIGFkYXVnYXQgJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVdGlsaXphdG9yIHN0ZXJzIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ1Byb3ByaWV0YXRlJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWxvYXJlIChleHByZXNpZSByZWd1bGFyYSknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdBVEVOVElFOiBBY2VzdGUgY2FtcHVyaSBhZmVjdGVhemEgZGltZW5zaXVuZWEgY2FtcHVyaWxvciBkZSBpbnRyb2R1Y2VyZSBwZW50cnUgZm9ybXVsYXJlLiBTY2FkZXJlYSBhY2VzdHVpIG51bWFyIHBlIHVuIHNpdGUgZXhpc3RlbnQgcG9hdGUgZmkgY29udHJpbmRpY2F0YSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnU3VudGV0aSBzaWd1ciBjYSBkb3JpdGkgc2EgYWp1c3RhdGkgcHJlZmVyaW50ZWxlIG1vZHVsdWx1aT8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0FkcmVzYSBkZSBlLW1haWwgZm9sb3NpdGEgZGVqYSc7CiRsYW5nWydwcm9tcHRfdXNlY29va2llc3RvcmVtZW1iZXInXSA9ICdTZSBmb2xvc2VzYyBjb29raWUtdXJpIHBlbnRydSBwYXN0cmFyZSBkZXRhbGlpIGF1dGVudGlmaWNhcmUnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdOdW1lIGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1NlIHBlcm1pdGUgZm9sb3NpcmVhIGFkcmVzZWxvciBkZSBlLW1haWwgZHVwbGljYXRlJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ0FkcmVzYSBkZSBlLW1haWwgZXN0ZSBudW1lbGUgZGUgdXRpbGl6YXRvcic7CiRsYW5nWydpbmZvX2Nvb2tpZV9rZWVwYWxpdmUnXSA9ICdTZSBpbmNlYXJjYSBwYXN0cmFyZWEgYXV0ZW50aWZpY2FyaWxvciBpbiB2aWF0YSBwcmluIGZvbG9zaXJlYSB1bnVpIGNvb2tpZSA8ZW0+KGNvb2tpZS11bCBlc3RlIHJlc2V0YXQgbGEgYWN0aXZpdGFlIGluIHdlYnNpdGUpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKFNlIHBlcm1pdGUgZXhpc3RlbnRhIG1haSBtdWx0b3IgdXRpbGl6YXRvcmkgY3UgYWNlZWFzaSBhZHJlc2EgZGUgZS1tYWlsKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKGFkcmVzYSBkZSBlLW1haWwgYSB1dGlsaXphdG9yaWxvciBlc3RlIGZvbG9zaXRhIGNhIG51bWUgZGUgdXRpbGl6YXRvciAtLSBudSBhY3RpdmF0aSBhY2Vhc3Rhb3B0aXVuZSBpbXByZXVuYSBjdSAmcXVvdDtTZSBwZXJtaXRlIGZvbG9zaXJlYSBhZHJlc2Vsb3IgZGUgZS1tYWlsIGR1cGxpY2F0ZSZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnU2UgcGVybWl0ZSByZW1pbmRlcmUgZHVwbGljYXQgcGVudHJ1ICZxdW90O3JlY3VwZXJhcmUgcGFyb2xhJnF1b3Q7Pyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoU2UgcGVycm1pdGUgdXRpbGl6YXRvcmlsb3Igc2EgY2VhcmEgbyBub3VhIHBhcm9sYSwgY2hpYXIgZGFjYSBudSBhdSBhY3Rpb25hdCBsYSBvIGNlcmVyZSBzaW1pbGFyYSBleGlzdGVudGEgZGVqYSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdTZSBmb2xvc2VzYyBwZXJtaXNpdW5pIHNwZWNpZmljZSBwZW50cnUgVXRpbGl6YXRvciBGcm9udC1lbmQ/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhJbiBtb2Qgbm9ybWFsLCBwZXJtaXNpdW5pbGUgcGVudHJ1IHV0aWxpemF0b3JpaSBGRSBzdW50IGFjZWxlYXNpIGNhIHNpIHBlcm1pc2l1bmlsZSBlY2hpdmFsZW50ZSBkaW4gYXJpYSBkZSBhZG1pbmlzdHJhcmVjdW0gYXIgZmkgQWRhdWdhcmUgVXRpbGl6YXRvciwgQWRhdWdhcmUgR3J1cCwgZXRjLiBEYWNhIHNlbGVjdGF0aSBhY2VzdGEgb3B0aXVuZSwgdm9yIGZpIHBlcm1pc2l1bmkgc2VwYXJhdGUgcGVudHJ1IHV0aWxpemF0b3JpaSBGRS4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdOdSBhIHB1dHV0IGZpIGdhc2l0IGZpc2llcnVsIHVwbG9hZGF0IChlcm9hcmUgaW50ZXJuYSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdBIGZvc3QgbyBwcm9ibGVtYSBjdSBmaXNpZXJ1bCB1cGxvYWRhdC4gSW5jZXJjYXRpIGRpbiBub3UnOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnTnUgYXRpIGludHJvZHVzIHVuIG51bWUgZGUgdXRpbGl6YXRvcic7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdOdSBhdGkgaW50cm9kdXMgYWRyZXNhIGRlIGUtbWFpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdOdSBhdGkgaW50cm9kdXMgcGFyb2xhJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdJZXNpcmUgZGluIGNvbnQgdXRpbGl6YXRvciBGcm9udGVuZCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdBdXRlbnRpZmljYXJlIHV0aWxpemF0b3IgRnJvbnRlbmQnOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSZxdW90O3JlZCZxdW90Oz48Yj5GSVRJIFBSRUNBVVQ8L2I+IGNhbmQgbW9kaWZpY2F0aSBwcm9wcmlldGF0aSBleGlzdGVudGUgY2FyZSBzdW50IGFsb2NhdGUgdW5vciBncnVwdXJpLCBwdXRldGkgc2EgY3JlYXRpIHByb2JsZW1lIHNhdSBjaGlhciBzYSBzdHJpY2F0aSB1biBzaXRlIGV4aXN0ZW50IDxpPihpbiBtb2Qgc3BlY2lhbCBkYWNhIHJlZHVjZXRpIGx1bmdtZWEgY2FtcHVyaWxyLCBldGMpPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdBY2Vhc3RhIGZ1bmN0aWUgbnUgZnVuY3Rpb25lYXphIGluIGZlcmVzdHJlJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdOdSBjcmVhdGkgbyBwcm9wcmlldGF0ZSBwZW50cnUgbnVtZSB1dGlsaXphdG9yIHNhdSBwYXJvbGEgcGVudHJ1IGNhIGFjZXN0ZWEgc3VudCBwYXJ0ZSBpbnRlZ3JhbnRhIGRpbiBtb2R1bHVsIEZyb250RW5kVXNlcnMnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydGFyZSB1dGlsaXphdG9yaSBpbiBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnRXhwb3J0YXJlJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydGFyZSc7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluaXN0cmFyZSc7CiRsYW5nWydlZGl0cHJvcCddID0gJ0VkaXRhcmUgUHJvcGlldGF0ZTogPGVtPiVzPC9lbT4nOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTHVuZ2ltZSBtYXhpbWEnOwokbGFuZ1snY3JlYXRlZCddID0gJ0NyZWF0JzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnRhcmUgZHVwYSc7CiRsYW5nWydzb3J0J10gPSAnU29ydGFyZSc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdVdGlsaXphdG9yaSBpbiBncnVwdWwgLSBncnVwdXJpbGUgc2VsZWN0YXQoZSknOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnTGltaXRhcmUgcmV6dWx0YXRlIGxhJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxmaWVsZCddID0gJ051IHMtYSBnYXNpdCB1biBjYW1wIGUtbWFpbCBwZW50cnUgYWNlc3QgdXRpbGl6YXRvci4gRSBwb3NpYmlsIHNhIHRyZWJ1aWFzY2Egc2EgY29udGFjdGF0aSBhZG1pbmlzdHJhdG9ydWwgc2lzdGVtdWx1aSc7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ0FsaWFzL0lEIHBhZ2luYSBwZW50cnUgZm9ybXVsYXIgcmVjdXBlcmFyZSBwYXJvbGEnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdBbGlhcy9JRCBwYWdpbmEgcGVudHJ1IGZvcm11bGFyIG1vZGlmaWNhcmUgc2V0YXJpJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnQWxpYXMvSUQgcGFnaW5hIHVuZGUgc2Ugc2FyZSBkdXBhIGF1dGVudGlmaWNhcmUgKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdBbGlhcy9JRCBwYWdpbmEgdW5kZSBzZSBzYXJlIGR1cGEgaWVzaXJlIGRpbiBjb250IConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnT3JkaW5lIHNvcnRhcmUnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnVW4gbnVtYXIgZGUgdXRpbGl6YXRvcmkgc3VudCBpbiB0aW1wdWwgcHJvY2VzdWx1aSBkZSByZWN1cGVyYXJlIHBhcm9sZSB1aXRhdGUuIE51bWFydWwgY3VyZW50IGVzdGU6JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnSW5sYXR1cmFyZSB0b2F0ZSBpbnRyYXJpbGUgbWFpIHZlY2hpIGRlIG8gc2FwdGFtYW5hJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ0lubGF0dXJhcmUgdG9hdGUgaW50cmFyaWxlIG1haSB2ZWNoaSBkZSBvIGx1bmEnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnSW5sYXR1cmFyZSB0b2F0ZSBpbnRyYXJpbGUnOwokbGFuZ1snYXJleW91c3VyZSddID0gJ1N1bnRldGkgc2lndXI/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnQSBmb3N0IGludHJvZHVzIHVuIGNvbnQgaW52YWxpZCwgaW5jZXJjYXRpIGRpbiBub3UnOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ1VuIGNvZCB0ZW1wb3JhciBwZW50cnUgSUQtdWwgZHVtbmVhdm9hc3RyYSBkZSB1dGlsaXphdG9yIG51IGEgcHV0dXQgZmkgZ2FzaXQgaW4gYmF6YSBkZSBkYXRlJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgZm9sb3NpdCBwZW50cnUgYWZpc2FyZSBmb3JtdWxhciB2ZXJpZmljYXJlJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBmb2xvc2l0IHBlbnRydSBlLW1haWwgcmVjdXBlcmFyZSBwYXJvbGEnOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ0R1bW5lYXZvYXN0cmEgc2F1IGFsdGNpbmV2YSBhIGluaXRpYXQgZGVqYSBvIG9wZXJhdGl1bmUgZGUgcmVjdXBlcmFyZSBwYXJvbGEgcGVudHJ1IGFjZXN0IGNvbnQuIFZlcmlmaWNhdGkgY2FzdXRhIGRlIGUtbWFpbCwgYXIgdHJlYnVpIHNhIGZpIHByaW1pdCBpbnN0cnVjdGl1bmkgcGVudHJ1IHJlc2V0YXJlYSBwYXJvbGVpIGluIGluYm94JzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdFcm9hcmUgbGEgYmF6YSBkZSBkYXRlJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1ByaW1pdGkgYWNlc3QgbWVzYWogZGVvYXJlY2UgY2luZXZhIChkdW1uZWF2b2FzdHJhPykgYSBzcHVzIHNpdGUtdWx1aSBub3N0cnUgY2EgYXRpIHBpZXJkdXQgcGFyb2xhLiBEYWNhIGVzdGUgYXNhLCBjaXRpdGkgaW5zdHJ1Y3RpdW5pbGUgZGUgbWFpIGpvcy4gRGFjYSBudSBhdmV0aSBuaWNpIG8gbGVnYXR1cmEsIGF0dW5jaSBwdXRldGkgc3RlcmdlIGN1IGluY3JlZGVyZSBhY2VzdCBlLW1haWwgc2kgdmEgbXVsdHVtaW0gcGVudHJ1IHRpbXB1bCBkdW1uZWF2b2FzdHJhLic7CiRsYW5nWydwcm9tcHRfY29kZSddID0gJ0NvZCc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdVcm1hdG9ydWwgY29kIGEgZm9zdCBnZW5lcmF0IGxhIGludGFtcGxhcmUgcGVudHJ1IGEgdmVyaWZpY2EgY29udHVsIGRlIHV0aWxpemF0b3IuIENhbmQgdmV0aSBkYSBjbGljIHBlIGxpbmstdWwgZGUgbWFpIGpvcyB2ZXRpIHZlZGVhIHVuIGNhbXAgdW5kZSB0cmVidWllIHNhIGludHJvZHVjZXRpIGFjZXN0IGNvZC4gIGluIG1vZCBub3JtYWwgY2FtcHVsIGVzdGUgcHJlLWNvbXBsZXRhdCBwZW50cnUgZHVtbmVhdm9hc3RyYSwgZGFyIGluIGNheiBjYSBudSBlc3RlIGFzYSBjb2R1bCBlc3RlOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0RhbmQgY2xpYyBwZSB1cm1hdG9ydWwgbGluayB2ZXRpIG1lcmdlIGluIHNpdGUgdW5kZSBwdXRldGkgc2EgaW50cm9kdWNldGkgY29kdWwgZGUgbWFpIHN1cyBwZW50cnUgYSByZXNldGEgcGFyb2xhOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnUGFyb2xhIHVpdGF0YSc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ051IGEgZm9zdCBnYXNpdCBtb2R1bHVsIENNU01haWxlcic7CiRsYW5nWydpbmZvX2ZvcmdvdHB3bWVzc2FnZXNlbnQnXSA9ICdVbiBlLW1haWwgYSBmb3N0IHRyaW1pcyBsYSAlcyBjdSBpbnN0cnVjdGl1bmkgcGVudHJ1IHJlc2V0YXJlYSBwYXJvbGVpLiBWYSBtdWx0dW1pbSc7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1NlIHBhcmUgY2EgYXRpIHVpdGF0IHNhdSBhdGkgcGllcmR1dCBwYXJvbGEuIEVpIGJpbmUsIGludHJvZHVjZXRpIG51bWVsZSBkZSB1dGlsaXphdG9yIGFpY2ksIHNpIGRhY2EgaWwgZ2FzaW0gdmEgdm9tIHRyaW1pdGUgdW4gZS1tYWlsIGN1IGluc3RydWN0aXVuaSBwZW50cnUgcmVzZXRhcmVhIHBhcm9sZWkuJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUtdXJpIHBhcm9sYSB1aXRhdGEnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgbnVtZSB1dGlsaXphdG9yIHVpdGF0JzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ1Byb3ByaWF0YXRlYSAlcyBudSBhIGZvc3QgZ2FzaXRhJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdwcm9wcmlldGF0aSBnYXNpdGUnOwokbGFuZ1snYWRkcHJvcCddID0gJ0FkYXVnYXJlIHByb3ByaWV0YXRlJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdVbiBjYW1wIG9ibGlnYXRvcml1ICglcykgZXN0ZSBnb2wnOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdJbnRyb2R1Y2V0aSBhaWNpIHBhcm9sYSBub3VhIHBlbnRydSBhIHNjaGltYmEgcGFyb2xhIGR1bW5lYXZvYXN0cmEnOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdOdSBwYXJldGkgc2EgZml0aSBhdXRlbnRpZmljYXQnOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ1NldGFyaSc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ0lucmVnaXN0cmFyZSc7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ0FjZXN0IGNvbnQgYSBleHBpcmF0JzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdGb3JtYXRhcmUgYWRyZXNhIGRlIGUtbWFpbCBncmVzaXRhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnRGF0YSBleHBpcmFyZSBpbnZhbGlkYS4gUG9hdGUgZmkgbGVnYXRhIGRlIHNpc3RlbS4gSW5jZXJjYXRpIHNhIHB1bmV0aSB1biBhbiBtYWkgYXByb2FwZSBpbiB0aW1wJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcm9hcmUgbGEgc2V0YXJlIHByb3ByaWV0YXRlICVzIHBlbnRydSB1dGlsaXphdG9ydWwgJHMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGdyb3VwaWQnXSA9ICdJRCBncnVwIGludmFsaWQgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdNYXJjYWogY2FtcCBhc2N1bnMnOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0N1bG9hcmUgY2FtcCBhc2N1bnMnOwokbGFuZ1snaGlkZGVuJ10gPSAnQXNjdW5zJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdPIHByb3ByaWV0YXRlIGN1IGFjZXN0IG51bWUgZXN0ZSBkZWphIGRlZmluaXRhJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ05pY2lvIHByb3ByaWV0YXRlIGRlZmluaXRhJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnTmNpbyBwcm9wcmlldGF0ZSBudSBhIGZvc3Qgc2VsZWN0YXRhIHBlbnRydSBhY2VzdCBncnVwJzsKJGxhbmdbJ25vZ3JvdXBzJ10gPSAnTmljaSB1biBncnVwIG51IGEgZm9zdCBkZWZpbml0JzsKJGxhbmdbJ2dyb3Vwc2ZvdW5kJ10gPSAnR3J1cHVyaSBnYXNpdGUnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ0NhbGl0YXRlYSBkZSBtZW1icnUgaW4gY2VsIHB1dGluIHVuIGdydXAgZXN0ZSBvYmxpZ2F0b3JpZSc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnU2UgY2VyZSBhcGFydGVuZW50YSBsYSBtaW5pbSB1biBncnVwJzsKJGxhbmdbJ2JhY2snXSA9ICdJbmFwb2knOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGVzdGUgdW4gY2FtcCBvYmxpZ2F0b3JpdSc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFyY2FyZSBjYW1wdXJpIG9ibGlnYXRvcmlpIGN1JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0V2aWRlbnRpZXJlIGNhbXB1cmkgb2JsaWdhdG9yaWkgaW4nOwokbGFuZ1snbmV4dCddID0gJ0luYWludGUnOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdVbiBncnVwIGN1IGFjZXN0IG51bWUgZXhpc3RhIGRlamEnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdPYmxpZ2F0b3JpdSc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wdGlvbmFsICc7CiRsYW5nWydvZmYnXSA9ICdJbmFjdGl2JzsKJGxhbmdbJ3NpemUnXSA9ICdEaW1lbnNpdW5lJzsKJGxhbmdbJ3NpemVjb21tZW50J10gPSAnPGJyLz4oRGltZW5zaXVuZSBtYXhpbWEgYSBvcmljYXJlaSBkaW1lbnNpdW5pIGEgaW1hZ2luaWkgaW4gcGl4ZWxpKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMdW5naW1lJzsKJGxhbmdbJ2xlbmd0aGNvbW1lbnQnXSA9ICc8YnI+KGNhcmFjdGVyZSBpbiBjYW1wdWwgZGUgaW50cm9kdWNlcmUpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdPcHRpdW5pIERyb3Bkb3duLCBzZXBhcmF0ZSBkZSBjYW1wdXJpIGRlIGxpbmllIG5vdWEuICBWYWxvcmlsZSBwb3QgZmkgc2VwYXJhdGUgZGUgdGV4dCBjdSB1biA9IChzZW1udWwgZWdhbCkuIEV4OiBGZW1laWU9Zic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdFdGljaGV0ZSBidXRvYW5lIHJhZGlvLCBzZXBhcmF0ZSBkZSBjYW1wdXJpIGRlIGxpbmllIG5vdWEuIFZhbG9yaWxlIHBvdCBmaSBzZXBhcmFyZSBkZSB0ZXh0IGN1IHVuID0gKHNlbW51bCBlZ2FsKS4gRXg6IEZlbWVpZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ0FmaXNhcmUnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUaXAnOwokbGFuZ1sndHlwZSddID0gJ1RpcCc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ1N0YXR1cyBjYW1wJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ0ludHJlYmFyZSBpbiBOdW1lIHV0aWxpemF0b3I8YnIvPnVpdGF0JzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0ICc7CiRsYW5nWydjaGVja2JveCddID0gJ0Nhc3V0YSBzZWxlY3RpZSc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ0xpc3RhIG11bHRpIHNlbGVjdGllJzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ0J1dG9hbmUgcmFkaW8nOwokbGFuZ1snaW1hZ2UnXSA9ICdJbWFnaW5lJzsKJGxhbmdbJ2VtYWlsJ10gPSAnQWRyZXNhIEUtbWFpbCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ0FyaWUgdGV4dCc7CiRsYW5nWydkcm9wZG93biddID0gJ0Ryb3Bkb3duICc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ0JpbmUgYXRpIHZlbml0JzsKJGxhbmdbJ2xvZ291dCddID0gJ0llc2lyZSc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAnU2UgZm9sb3Nlc3RlIGFjZXN0IG51bWUgZGUgZ3J1cCc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3MnXSA9ICdNb2RpZmljYXJlIHNldGFyaSc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0F1dGVudGlmaWNhcmUgZXN1YXRhIC0gTnVtZSB1dGlsaXphdG9yIHNhdSBwYXJvbGEgZ3Jlc2l0ZT8nOwokbGFuZ1snbG9naW4nXSA9ICdBdXRlbnRpZmljYXJlJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnRXRpY2hldGEgYnV0b24gYXV0ZW50aWZpY2FyZSc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdOdW1lIHV0aWxpemF0b3InOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnQWRyZXNhIEUtbWFpbCc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICdQYXNyb2xhJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnVGluZS1tYSBtaW50ZSBwZSBhY2VzdCBjYWxjdWxhdG9yJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnSW5yZWdpc3RyYXJlJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnQXRpIHVpdGF0IHBhcm9sYT8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnQXRpIHVpdGF0IGRhdGVsZSBkZSBhdXRlbnRpZmljYXJlPyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ0ltcGxpY2l0ZSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlICc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdOdSBzLWF1IGdhc2l0IGluZm9ybWF0aWkgcGVudHJ1IGFjZXN0IHV0aWxpemF0b3InOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ0FjZXN0IG51bWUgZGUgdXRpbGl6YXRvciAoJXMpIGVzdGUgZGVqYSBsdWF0JzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdTZSBmb2xvc2VzdGUgU01UUCBwZW50cnUgdmFsaWRhcmUgYWRyZXNlIGRlIGUtbWFpbD8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnTHVuZ2ltZSBtaW5pbWEgcGFyb2xhJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ0x1bmdpbWUgbWF4aW1hIHBhcm9sYSc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdMdW5naW1lIG1pbmltYSBudW1lIHV0aWxpemF0b3InOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTHVuZ2ltZSBtYXhpbWEgbnVtZSB1dGlsaXphdG9yJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1RpbWVvdXQgc2VzaXVuZSAoc2VjdW5kZSknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1NlIGZvbG9zZXNjIGNvb2tpZS11cmkgcGVudHJ1IGEgcGFzdHJhIHNlc2l1bmlsZSBpbiB2aWF0YSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ1NlIHBlcm1pdGUgaW5yZWdpc3RyYXJlIGUtbWFpbCc7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnR3J1cCBpbXBsaWNpdCBwZW50cnUgdXRpbGl6YXRvcmkgbm9pJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgbW9kaWZpY2FyZSBzZXRhcmknOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ1Bhcm9sZWxlIG51IHNlIHBvdHJpdmVzYyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWUnXSA9ICdOdW1lIHV0aWxpemF0b3IgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdQYXJvbGEgaW52YWxpZGEnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdFZGl0YXJlIHV0aWxpemF0b3InOwokbGFuZ1sndmFsaWQnXSA9ICdWYWxpZCAnOwokbGFuZ1sndXNlcm5hbWUnXSA9ICdOdW1lIHV0aWxpemF0b3InOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzICc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdBY2VzdCB1dGlsaXphdG9yIG51IGVzdGUgbWVtYnJ1IGluIG5pY2kgdW4gZ3J1cCc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnTmljaW8gcHJvcHJpZXRhdGUnOwokbGFuZ1snZXJyb3JfZHVwX3Byb3BlcnRpZXMnXSA9ICdTZSBpbmNlYXJjYSBpbXBvcnR1bCBwcm9wcmlldGF0aWxvciBkdXBsaWNhdGUnOwokbGFuZ1sndmFsdWUnXSA9ICdWYWxvYXJlJzsKJGxhbmdbJ2dyb3VwcyddID0gJ0dydXB1cmknOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1Byb3ByaWV0YXRpJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnTnVtZSBwcm9wcmlldGF0ZSc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdWYWxvYXJlIHByb3ByaWV0YXRlJzsKJGxhbmdbJ2FkZCddID0gJ0FkYXVnYXJlJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdJc3RvcmljJzsKJGxhbmdbJ2VkaXQnXSA9ICdFZGl0YXJlJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdFeHBpcmEnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3BlY2lmaWNhcmUgZGF0YSc7CiRsYW5nWycxMmhycyddID0gJzEyIG9yZSc7CiRsYW5nWycyNGhycyddID0gJzI0IG9yZSc7CiRsYW5nWyc0OGhycyddID0gJzQ4IG9yZSc7CiRsYW5nWycxd2VlayddID0gJzEgc2FwdGFtYW5hJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgc2FwdGFtYW5pJzsKJGxhbmdbJzFtb250aCddID0gJzEgbHVuYSc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBsdW5pJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IGx1bmknOwokbGFuZ1snMXllYXInXSA9ICcxIGFuJzsKJGxhbmdbJ25ldmVyJ10gPSAnTmljb2RhdGEnOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWx1bCBhIGZvc3QgaW5zdGFsYXQgY3Ugc3VjY2VzLjxici8+VmVyaWZpY2F0aSBjYSBhdGkgc2V0YXQgcGVybWlzaXVuaWxlIHBlbnRydSAmcXVvdDtNb2RpZmljYXJlIHByb3ByaWV0YXRpIEZyb250RW5kVXNlciZxdW90Oy4gIEFkaXRpb25hbCwgdmEgcmVjb21hbmRhbSBzYSBpbnN0YWxhdGkgbW9kdWx1bCBDYXB0Y2hhLiAgRGFjYSBhY2VzdGEgZXN0ZSBpbnN0YWxhdCwgc2UgdmEgZm9sb3NpIHNpIHZhbGlkYXJlYSBpbWFnaW5lIGluIHBsdXMgZmF0YSBkZSBudW1lIHV0aWxpemF0b3Igc2kgcGFyb2xhIHBlbnRydSBhdXRlbnRpZmNhcmUuIFNlIGZvbG9zZXN0ZSBwZW50cnUgcHJldmVuaXJlYSBhdGFjdXJpbG9yIGJydXRlIGZvcmNlLiAgPHN0cm9uZz5Ob3RhOjwvc3Ryb25nPiBQYXJhbWV0cnVsIG5vY2FwdGNoYSBwb2F0ZSBmaSBmb2xvc2l0IHBlbnRydSBhIGRlemFjdGl2YSBhY2Vhc3RhIGZ1bmN0aW9uYWxpdGF0ZSBjaGlhciBkYWNhIG1vZHVsdWwgQ2FwdGNoYSBlc3RlIGluc3RhbGF0LiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ1Bhcm9sYSc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ0RpbiBub3UnOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ1VuIGdydXAgY3UgYWNlc3QgbnVtZSBleGlzdGEgZGVqYS4nOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnRWRpdGFyZSBncnVwJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1RyaW1pdGVyZSc7CiRsYW5nWydjYW5jZWwnXSA9ICdBbnVsYXJlJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ1N0ZXJnZXJlJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnU3VudGV0aSBzaWd1ciBjYSBhY2VzdGVhIHN1bnQgc2V0YXJpbGUgY29yZWN0ZSBwZW50cnUgYWNlc3QgZ3J1cD8gXG4gRGV6YWN0aXZhbmQgbyBwcm9wcmlldGF0ZSBudSB2YSBzdGVyZ2UgbmljaW8gaW50cmFyZSBkaW4gYmF6YSBkZSBkYXRlIHBlbnRydSBhY2VzdCBncnVwL3V0aWxpemF0b3IuIERvYXIgdm9yIGZpIGluZHNwb25pYmlsZS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ1N1bnRldGkgc2lndXIgY2EgZG9yaXRpIHNhIHN0ZXJnZXRpIGFjZXN0IGdydXA/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdTdW50ZXRpIHNpZ3VyIGNhIGRvcml0aSBzYSBzdGVyZ2V0aSBjb21wbGV0IGFjZWFzdGEgcHJvcHJpZXRhdGU/IFxuIEZhY2FuZCBhY2VzdCBsdWNydSB2ZXRpIHN0ZXJnZSB0b2F0ZSBpbnRyYXJpbGUgZGUgbGEgdXRpbGl6YXRvcmkgcGVudHJ1IGFjZWFzdGEgcHJvcHJpZXRhdGUuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ1BhcmFtZXRyaSBpbnN1ZmljaWVudGknOwokbGFuZ1snaWQnXSA9ICdJRCc7CiRsYW5nWyduYW1lJ10gPSAnTnVtZSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW1hIGxhIGFkYXVnYXJlIHByb3ByaWV0YXRlJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtYSBsYSBhZGF1Z2FyZSByZWxhdGllIGRlIGdydXAnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnUHJvYmxlbWEgbGEgYWRhdWdhcmUgZ3J1cCc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW1hIGxhIGFkYXVnYXJlYSB1bnVpIHV0aWxpemF0b3IgaW50ci11biBncnVwJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibGVtYSBsYSBzdGVyZ2VyZWEgdW5laSBwcm9wcmlldGF0aSc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGZpbmRlbWFpbCddID0gJ051IHMtYSBnYXNpdCBvIGFkcmVzYSBkZSBlLW1haWwnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ1Blcm1pc2l1bmkgZGUgc2NyaWVyZSBpbnN1ZmljaWVudGUgcGVudHJ1IGZvbGRlcnVsIGRlc3RpbmF0aWUnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ1BhcmFtZXRyaSBpbnZhbGl6aSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ051IGF1IGZvc3QgZ2FzaXRlIGdydXB1cmknOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBcGxpY2FyZSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0cnUnOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ0V4cHJlc2llIHJlZ3VsYXJhIG51bWUgdXRpbGl6YXRvcic7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ0Rlc2NyaWVyZSc7CiRsYW5nWydncm91cG5hbWUnXSA9ICdOdW1lIGdydXAnOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWNjZXMgSW50ZXJ6aXMnOwokbGFuZ1snZXJyb3InXSA9ICdFcm9hcmUnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZGF1Z2FyZSBncnVwJzsKJGxhbmdbJ2ltcG9ydGdyb3VwJ10gPSAnSW1wb3J0YXJlIGdydXAnOwokbGFuZ1snYWRkdXNlciddID0gJ0FkYXVnYXJlIHV0aWxpemF0b3InOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ1V0aWxpemF0b3JpIGdhc2l0aSBjYXJlIGNvcmVzcHVuZCBjcml0ZXJpaWxvcic7CiRsYW5nWydncm91cCddID0gJ0dydXAnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdTZWxlY3RhcmUgZ3J1cCc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSBpbnJlZ2lzdHJhcmUnOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgaWVzaXJlIGRpbiBjb250JzsKJGxhbmdbJ2xvZ2luX3RlbXBsYXRlJ10gPSAnVGVtcGxhdGUgYXV0ZW50aWZpY2FyZSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmludGUnOwokbGFuZ1sndXNlcnMnXSA9ICdVdGlsaXphdG9yaSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdNYW5hZ2VtZW50IHV0aWxpemF0b3IgZnJvbnRlbmQnOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdTZSBwZXJtaXRlIHV0aWxpemF0b3JpbG9yIHNhIHNlIGF1dGVudGlmaWNlIGluIGZyb250ZW5kIHNpdGUnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ1BhZ2luYSBpbXBsaWNpdGEnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1VsdGltYSBwYWdpbmEgYWNjZXNhdGEnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnQWx0YSBwYWdpbmE6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnSW50cm9kdWNldGkgdGV4dHVsIGRpbiBpbWFnaW5lJzsKPz4K]]></data>
	</file>
	<file>
	  <filename>/lang/ext/ru_RU.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ3BhZ2V0eXBlX3VuYXV0aG9yaXplZCddID0gJ9CS0Ysg0L3QtSDQsNCy0YLQvtGA0LjQt9C+0LLQsNC90Ysg0LTQu9GPINC/0YDQvtGB0LzQvtGC0YDQsCDRgdC+0LTQtdGA0LbQuNC80L7Qs9C+JzsKJGxhbmdbJ2luZm9fY29udGVudHBhZ2VfZ3JvdXBsaXN0J10gPSAnU3BlY2lmeSBhIGxpc3Qgb2YgRkVVIGdyb3VwcyB0aGF0IG1heSBoYXZlIGFjY2VzcyB0byB0aGlzIHBhZ2UuICBTZWxlY3Rpbmcgbm8gZ3JvdXBzIHdpbGwgYWxsb3cgYW55IHVzZXIgbG9nZ2VkIGluIHRvIEZFVSB0byB2aWV3IHRoZSBwYWdlJzsKJGxhbmdbJ3BhZ2V0eXBlX3NldHRpbmdzJ10gPSAnUHJvdGVjdGVkIFBhZ2UgU2V0dGluZ3MnOwokbGFuZ1sncGFnZXR5cGVfZ3JvdXBzJ10gPSAnQWxsb3dlZCBHcm91cHMnOwokbGFuZ1snaW5mb19wYWdldHlwZV9ncm91cHMnXSA9ICdTZWxlY3QgdGhlIGdyb3VwcyB0aGF0IGFyZSAoYnkgZGVmYXVsdCkgYWxsb3dlZCB0byB2aWV3IHByb3RlY3RlZCBwYWdlcy4gIEFuIGVkaXRvciB3aXRoIHRoZSAiTWFuYWdlIEFsbCBDb250ZW50IiBwZXJtaXNzaW9uIGNhbiBvdmVycmlkZSB0aGlzIGZvciBlYWNoIHBhZ2UnOwokbGFuZ1sncGFnZXR5cGVfYWN0aW9uJ10gPSAnQWN0aW9uIGZvciBpbnN1ZmZpY2llbnQgYWNjZXNzJzsKJGxhbmdbJ2luZm9fcGFnZXR5cGVfYWN0aW9uJ10gPSAnU3BlY2lmeSB0aGUgYmVoYXZpb3IgZm9yIHBlb3BsZSBhY2Nlc3NpbmcgdGhpcyBwYWdlIHdpdGhvdXQgc3VmZmljaWVudCBwZXJtaXNzaW9uLiAgWW91IGNhbiBlaXRoZXIgcmVkaXJlY3QgdG8gYSBzcGVjaWZpZWQgcGFnZSwgb3IgZGlzcGxheSB0aGUgbG9naW4gZm9ybSc7CiRsYW5nWydzaG93bG9naW5mb3JtJ10gPSAnU2hvdyB0aGUgTG9naW4gRm9ybSc7CiRsYW5nWydyZWRpcmVjdCddID0gJ1JlZGlyZWN0IHRvIGEgUGFnZSc7CiRsYW5nWydwYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnUmVkaXJlY3QgVG8nOwokbGFuZ1snaW5mb19wYWdldHlwZV9yZWRpcmVjdHRvJ10gPSAnU3BlY2lmeSB0aGUgcGFnZSB0byByZWRpcmVjdCB0by4gIElmIHlvdSBzZWxlY3Qgbm9uZSwgYW5kIHRoZSBhY3Rpb24gaXMgc2V0IHRvICJyZWRpcmVjdCIgdGhlIHVzZXIgd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIG1lc3NhZ2UgaW5kaWNhdGluZyB0aGF0IHRoZXkgZG8gbm90IGhhY2UgYWNjZXNzIHRvIHRoZSBwYWdlJzsKJGxhbmdbJ3Blcm1pc3Npb25zJ10gPSAnUGVybWlzc2lvbnMnOwokbGFuZ1snZmV1X3Byb3RlY3RlZF9wYWdlJ10gPSAnUHJvdGVjdGVkIENvbnRlbnQnOwokbGFuZ1sncHJvbXB0X3ZpZXdwcm9wcyddID0gJ1NlbGVjdCBBZGRpdGlvbmFsIFByb3BlcnRpZXMgdG8gVmlldyc7CiRsYW5nWyd2aWV3J10gPSAnVmlldyc7CiRsYW5nWydpbmZvX2lnbm9yZV91c2VyaWQnXSA9ICdJZiBjaGVja2VkIHRoZSBpbXBvcnQgcm91dGluZSB3aWxsIGF0dGVtcHQgdG8gYWRkIHVzZXJzIGluZGVwZW5kYW50IG9mIHRoZSB1c2VyaWQgY29sdW1uLiAgSWYgYSB1c2VyIHdpdGggdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZSBpbXBvcnQgZmlsZSBhbHJlYWR5IGV4aXN0cywgYW4gZXJyb3Igd2lsbCBiZSBnZW5lcmF0ZWQnOwokbGFuZ1snaWdub3JlX3VzZXJpZCddID0gJ0lnbm9yZSBVc2VySUQgQ29sdW1uIG9uIEltcG9ydCc7CiRsYW5nWydleHBvcnRfcGFzc2hhc2gnXSA9ICdFeHBvcnQgdGhlIHBhc3N3b3JkIGhhc2ggdG8gdGhlIGZpbGUnOwokbGFuZ1snaW5mb19leHBvcnRfcGFzc2hhc2gnXSA9ICdUaGUgcGFzc3dvcmQgaGFzaCBpcyBvbmx5IHVzZWZ1bCBpZiB0aGUgcGFzc3dvcmQgc2FsdCBvbiB0aGUgaW1wb3J0IGhvc3QgaXMgaWRlbnRpY2FsIHRvIHRoYXQgb2YgdGhlIGV4cG9ydCBob3N0JzsKJGxhbmdbJ2Vycm9yX2FkanVzdHNhbHQnXSA9ICdUaGUgcGFzc3dvcmQgc2FsdCBjYW5ub3QgYmUgYWRqdXN0ZWQnOwokbGFuZ1sncHJvbXB0X3B3c2FsdCddID0gJ1Bhc3N3b3JkIFNhbHQnOwokbGFuZ1snaW5mb19wd3NhbHQnXSA9ICdGcm9udEVuZFVzZXJzIHNhbHRzIGFsbCBwYXNzd29yZHMgd2l0aCB0aGlzIGtleSB3aGljaCBpcyBjcmVhdGVkIHVwb24gaW5zdGFsbC4gIE9uY2UgdXNlcnMgaGF2ZSBiZWVuIGFkZGVkIHRvIHRoZSBkYXRhYmFzZSB0aGUgc2FsdCBjYW5ub3QgYmUgY2hhbmdlZC4gVGhlIHNhbHQgbWF5IGJlIGVtcHR5IGZvciBvbGRlciBpbnN0YWxscy4nOwokbGFuZ1snYWR2YW5jZWRfc2V0dGluZ3MnXSA9ICdBZHZhbmNlZCBTZXR0aW5ncyc7CiRsYW5nWydpbmZvX3Nlc3Npb250aW1lb3V0J10gPSAnU3BlY2lmeSB0aGUgbnVtYmVyIG9mIHNlY29uZHMgYmVmb3JlIGFuIGluYWN0aXZlIHVzZXIgaXMgYXV0b21hdGljYWxseSBsb2dnZWQgb3V0IG9mIHRoZSB3ZWJzaXRlJzsKJGxhbmdbJ3Byb21wdF9leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ1VzZXIgRXhwaXJ5IEludGVydmFsJzsKJGxhbmdbJ2luZm9fZXhwaXJldXNlcnNfaW50ZXJ2YWwnXSA9ICdTcGVjaWZ5IGEgdmFsdWUgKGluIHNlY29uZHMpIHRoYXQgaW5kaWNhdGVzIGhvdyBvZnRlbiB0aGUgc3lzdGVtIHNob3VsZCBmb3JjZSB1c2VycyB3aG9zIHNlc3Npb24gaGFzIGV4cGlyZWQgdG8gYmUgbG9nZ2VkIG91dC4gIFQiaGlzIGlzIGFuIG9wdGltaXphdGlvbiB0byBzYXZlIGRhdGFiYXNlIHF1ZXJpZXMuICBJZiBsZWZ0IGVtcHR5IG9yIHNldCB0byAwIGV4cGlyeSB3aWxsIGJlIHBlcmZvcm1lZCBvbiBldmVyeSByZXF1ZXN0Lic7CiRsYW5nWydtc2dfc2V0dGluZ3NjaGFuZ2VkJ10gPSAnWW91ciBzZXR0aW5ncyB3ZXJlIHN1Y2Nlc3NmdWxseSB1cGRhdGVkJzsKJGxhbmdbJ2ZvcmNlZGxvZ291dHRhc2tfZGVzYyddID0gJ0ZvcmNlIHVzZXJzIHRvIGxvZ291dCBhdCByZWd1bGFyIGludGVydmFscyc7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICdUaW1lcyBmb3IgZm9yY2VkIGxvZ291dCc7CiRsYW5nWydpbmZvX2ZvcmNlbG9nb3V0X3RpbWVzJ10gPSAnU3BlY2lmeSBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIHRpbWVzIGxpa2UgSEg6TU0sSEg6TU0gd2hlcmUgdXNlcnMgd2lsbCBiZSBmb3JjaWJseSBsb2dnZWQgb3V0LiBOb3RlLCB0aGlzIHVzZXMgdGhlIHBzdWVkb2Nyb24gbWVjaGFuaXNtIHNvIHlvdSBtdXN0IGJlIHN1cmUgdGhhdCB0aGUgdGltZXMgZW50ZXJlZCBoZXJlIHdpbGwgY29pbmNpZGUgcmVhc29uYWJseSB3aXRoIHlvdXIgInBzZXVkb2Nyb24gZ3JhbnVsYXJpdHkiIGFuZCB0aGF0IHN1ZmZpY2llbnQgcmVxdWVzdHMgd2lsbCBvY2N1ciB0byB5b3VyIHdlYnNpdGUgdG8gZW5zdXJlIHRoYXQgcHNldWRvY3JvbiBpcyBleGVjdXRlZC4nOwokbGFuZ1sncHJvbXB0X2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnXSA9ICdFeGNsdWRlIHVzZXJzIHRoYXQgaGF2ZSBiZWVuIGFjdGl2ZSBpbiA8ZW0+KG1pbnV0ZXMpPC9lbT4nOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF9zZXNzaW9uYWdlJ10gPSAnSWYgc3BlY2lmaWVkLCBhbnkgdXNlcnMgdGhhdCBoYXZlIGJlZW4gYWN0aXZlIGluIHRoaXMgbnVtYmVyIG9mIHNlY29uZHMgd2lsbCBub3QgYmUgZm9yY2libHkgbG9nZ2VkIG91dCc7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZSddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhlIHVzZXIgJXMnOwokbGFuZ1snZXJyb3JfaW52YWxpZGZpbGVleHRlbnNpb24nXSA9ICdUaGUgdXBsb2FkZWQgZmlsZSBkb2VzIG5vdCBtYXRjaCB0aGUgbGlzdCBvZiBhbGxvd2VkIGZpbGUgdHlwZXMnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0FsbCBkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUgaGFzIGJlZW4gZGVsZXRlZCc7CiRsYW5nWydpbmZvX2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nXSA9ICdJZiBlbmFibGVkLCB0aGlzIG1vZHVsZSB3aWxsIGxpc3RlbiB0byBldmVudHMgZnJvbSB0aGUgRWNvbW1lcmNlIHN1aXRlLiAgVGhlIGZvbGxvd2luZyBzZXR0aW5ncyBvbmx5IGhhdmUgZWZmZWN0IGlmIHRoaXMgc2V0dGluZyBpcyBlbmFibGVkLic7CiRsYW5nWydwcm9tcHRfZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ0xpc3RlbiB0byBPcmRlciBFdmVudHMnOwokbGFuZ1snaW5mb19wYWlkcmVnX3NldHRpbmdzJ10gPSAnVGhlIGZvbGxvd2luZyBzZXR0aW5ncyBvbmx5IGFwcGx5IGlmIHVzaW5nIHNlbGYgcmVnaXN0cmF0aW9uIGFuZCBhbGxvd2luZyBmb3IgcGFpZCByZWdpc3RyYXRpb24nOwokbGFuZ1snbm9uZSddID0gJ05vbmUnOwokbGFuZ1snZGVsZXRlX3VzZXInXSA9ICdEZWxldGUgVXNlcic7CiRsYW5nWydleHBpcmVfdXNlciddID0gJ0V4cGlyZSBVc2VyJzsKJGxhbmdbJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnXSA9ICdBY3Rpb24gdG8gcGVyZm9ybSB3aGVuIGEgc3Vic2NyaXB0aW9uIG9yZGVyIGlzIGNhbmNlbGxlZCc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyZGVsZXRlZCddID0gJ0FjdGlvbiB0byBwZXJmb3JtIHdoZW4gYSBzdWJzY3JpcHRpb24gb3JkZXIgaXMgZGVsZXRlZCc7CiRsYW5nWydlY29tbWVyY2Vfc2V0dGluZ3MnXSA9ICdFY29tbWVyY2UgU2V0dGluZ3MnOwokbGFuZ1snc2VjdXJlZmllbGRtYXJrZXInXSA9ICdTZWN1cmUgRmllbGQgTWFya2VyJzsKJGxhbmdbJ3NlY3VyZWZpZWxkY29sb3InXSA9ICdTZWN1cmUgRmllbGQgQ29sb3InOwokbGFuZ1sncHJvbXB0X2VuY3J5cHQnXSA9ICdTdG9yZSB0aGlzIGRhdGEgZW5jcnlwdGVkIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydlcnJvcl9ub3RzdXBwb3J0ZWQnXSA9ICdUaGUgY2hvc2VuIG9wdGlvbiBpcyBub3Qgc3VwcG9ydGVkIGdpdmVuIHlvdXIgY3VycmVudCBjb25maWd1cmF0aW9uJzsKJGxhbmdbJ2F1ZGl0X3VzZXJfY3JlYXRlZCddID0gJ1VzZXIgYXV0b21hdGljYWxseSBjcmVhdGVkJzsKJGxhbmdbJ2luZm9fYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0lmIGEgdXNlciBpcyBhdXRoZW50aWNhdGVkIGJ5IGFuIGV4dGVybmFsIGF1dGhlbnRpY2F0aW9uIG1vZHVsZSBidXQgaXMgbm90IGtub3duIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBzaG91bGQgYW4gRkVVIGFjY291bnQgYmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5Pyc7CiRsYW5nWydwcm9tcHRfYXV0b19jcmVhdGVfdW5rbm93biddID0gJ0F1dG9tYXRpY2FsbHkgQ3JlYXRlIFVua25vd24gVXNlcnMnOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ0Rpc3BsYXkgU2V0dGluZ3MnOwokbGFuZ1snaW5mb19zdGRfYXV0aF9zZXR0aW5ncyddID0gJ1RoZSBmb2xsb3dpbmcgc2V0dGluZ3MgYXJlIG9ubHkgYXBwbGljYWJsZSBpZiB1c2luZyB0aGUgIkJ1aWx0aW4gQXV0aGVudGljYXRpb24iLic7CiRsYW5nWydpbmZvX3N1cHBvcnRfbG9zdHVuJ10gPSAnU2VsZWN0aW5nIE5vIHdpbGwgZGlzYWJsZSB0aGUgYWJpbGl0eSBmb3IgYSB1c2VyIHRvIHJlcXVlc3QgbG9zdCBsb2dpbiBpbmZvcm1hdGlvbiwgaXJyZXNwZWN0aXZlIG9mIG90aGVyIHNldHRpbmdzJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0cHcnXSA9ICdTZWxlY3RpbmcgTm8gd2lsbCBkaXNhYmxlIHRoZSBhYmlsaXR5IGZvciBhIHVzZXIgdG8gYSBwYXNzd29yZCByZXNldCwgaXJyZXNwZWN0aXZlIG9mIG90aGVyIHNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3R1biddID0gJ0FsbG93IHVzZXJzIHRvIHJlcXVlc3QgdGhlaXIgdXNlcm5hbWUnOwokbGFuZ1sncHJvbXB0X3N1cHBvcnRfbG9zdHB3J10gPSAnQWxsb3cgdXNlcnMgdG8gcmVxdWVzdCBhIHBhc3N3b3JkIGNoYW5nZSc7CiRsYW5nWydhdXRoX3NldHRpbmdzJ10gPSAnQXV0aGVudGljYXRpb24gU2V0dGluZ3MnOwokbGFuZ1snYXV0aGVudGljYXRpb24nXSA9ICdCdWlsdGluIEF1dGhlbnRpY2F0aW9uJzsKJGxhbmdbJ2F1dGhfYnVpbHRpbiddID0gJ0ZFVSBTdGFuZGFyZCBBdXRoZW50aWNhdGlvbic7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F1dGhlbnRpY2F0aW9uIE1vZHVsZS9NZXRob2QnOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ1RoZSBGcm9udGVuZFVzZXJzIG1vZHVsZSBzdXBwb3J0cyB1c2luZyBhbHRlcm5hdGUgYXV0aGVudGljYXRpb24gbWV0aG9kcywgd2l0aCB2YXJ5aW5nIGNhcGFiaWxpdGllcy4gIFNvbWUgZnVuY3Rpb25hbGl0eSB3aWxsIG5vdCBmdW5jdGlvbiBvciBiZSBkaXNhYmxlZCB3aGVuIG5vdCB1c2luZyB0aGUgYnVpbHQgaW4gYXV0aGVudGljYXRpb24gbWV0aG9kJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnVGhlIHZhbHVlIHNwZWNpZmllZCBmb3IgJXMgaXMgYWxyZWFkeSBpbiB1c2UgYnkgYW5vdGhlciB1c2VyJzsKJGxhbmdbJ3VuaXF1ZSddID0gJ1VuaXF1ZSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdUaGUgdmFsdWUgc3BlY2lmaWVkIGZvciAlcyAoJXMpIGlzIG5vdCB1bmlxdWUnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ0ZvcmNlIHZhbHVlcyBvZiB0aGlzIHByb3BlcnR5IHRvIGJlIHVuaXF1ZSBhY3Jvc3MgYWxsIHVzZXIgYWNjb3VudHMnOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnVXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgbG9nb3V0IGZvcm1zLCB0aGlzIHBhcmFtZXRlciBpZiBzcGVjaWZpZWQgd2lsbCBpbmRpY2F0ZSB0aGF0IHRoZSB1c2VyIHNob3VsZCBiZSByZXR1cm5lZCB0byB0aGUgcGFnZSAoYnkgdXJsKSB0aGF0IHRoZSB1c2VyIHdhcyB2aWV3aW5nIGJlZm9yZSB0aGUgYWN0aW9uIG9jY3VycmVkLiAgVGhpcyBwYXJhbWV0ZXIgd2lsbCBvdmVycmlkZSB0aGUgcmVkaXJlY3QgcHJlZmVyZW5jZXMsIGFuZCB0aGUgcmV0dXJudG8gcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnVXNlZCB3aXRoIG9uZSBvZiB0aGUgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGF0IHRoZSBmb3JtcyBzaG91bGQgbm90IGJlIHBsYWNlZCBpbmxpbmUsIGluc3RlYWQgdGhlIHJlc3VsdGluZyBvdXRwdXQgYWZ0ZXIgZm9ybSBzdWJtaXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdMb2dpbiBTZXNzaW9uIFRpbWVvdXQgV2FybmluZyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1lvdXIgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIHBsZWFzZSBjbGljayAiIk9rIiB0byBjb25maXJtIHlvdXIgYWN0aXZpdHkgb24gdGhpcyB3ZWJzaXRlLic7CiRsYW5nWydvayddID0gJ09rJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJ1Jlc2V0IFNlc3Npb24gVGVtcGxhdGUnOwokbGFuZ1snaW5mb19uYW1lJ10gPSAnVGhpcyBpcyB0aGUgZmllbGQgbmFtZSwgdG8gYmUgdXNlZCBmb3IgYWRkcmVzc2luZyBpbiBzbWFydHkuICBJdCBtdXN0IGNvbnNpc3Qgb2Ygb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyBhbmQgdW5kZXJzY29yZXMuJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ1Zpc2l0b3JzJzsKJGxhbmdbJ2ZldV9ncm91cHNfcHJvbXB0J10gPSAnU2VsZWN0IG9uZSBvciBtb3JlIEZFVSBncm91cHMgdGhhdCBhcmUgYWxsb3dlZCB0byB2aWV3IHRoaXMgcGFnZSc7CiRsYW5nWydlcnJvcl9tdXN0c2VsZWN0X2dyb3VwJ10gPSAnQSBncm91cCBtdXN0IGJlIHNlbGVjdGVkJzsKJGxhbmdbJ3NlbGVjdG9uZSddID0gJ1NlbGVjdCBPbmUnOwokbGFuZ1snc3RhcnRfeWVhciddID0gJ1N0YXJ0IFllYXInOwokbGFuZ1snZW5kX3llYXInXSA9ICdFbmQgWWVhcic7CiRsYW5nWydkYXRlJ10gPSAnRGF0ZSc7CiRsYW5nWydwcm9tcHRfdGh1bWJuYWlsX3NpemUnXSA9ICdUaHVtYm5haWwgU2l6ZSc7CiRsYW5nWydPblVwZGF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBNb2RpZmllZCc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdUb28gbWFueSB1c2VycyBhcmUgc2VsZWN0ZWQgZm9yIGJ1bGsgb3BlcmF0aW9ucy4uLi4gUGxlYXNlIHRyaW0gaXQgdG8gMjUwIG9yIGxlc3MnOwokbGFuZ1snY29uZmlybV9kZWxldGVfc2VsZWN0ZWQnXSA9ICdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoZSBzZWxlY3RlZCB1c2Vycz8nOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnRGVsZXRlIFNlbGVjdGVkJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyYXRlIHJhbmRvbSB1c2VybmFtZSB3aGVuIGFkZGluZyBuZXcgdXNlcnMnOwokbGFuZ1snbW9udGhzJ10gPSAnbW9udGhzJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdEZWZhdWx0IHVzZXIgZXhwaXJ5IHBlcmlvZCc7CiRsYW5nWydub3RpZmljYXRpb25fc2V0dGluZ3MnXSA9ICdOb3RpZmljYXRpb24gU2V0dGluZ3MnOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdQcm9wZXJ0eSBTZXR0aW5ncyc7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ1JlZGlyZWN0aW9uIFNldHRpbmdzJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdHZW5lcmFsIFNldHRpbmdzJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdTZXNzaW9uIGFuZCBDb29raWUgU2V0dGluZ3MnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdGaWVsZCBTZXR0aW5ncyc7CiRsYW5nWydlcnJvcl9sb3N0dW5fbm9ucmVxdWlyZWQnXSA9ICdUaGUgbG9zdHVzZXJuYW1lIGZsYWcgY2FuIG9ubHkgYmUgdXNlZCBvbiByZXF1aXJlZCBmaWVsZHMnOwokbGFuZ1sncHJvcF90ZXh0YXJlYV93eXNpd3lnJ10gPSAnQWxsb3cgdXNlIG9mIHd5c2l3eWcgb24gdGhpcyB0ZXh0IGFyZWEnOwokbGFuZ1snaW5mb19jb29raWVzdG9yZW1lbWJlciddID0gJzxzdHJvbmc+Tm90ZTogPC9zdHJvbmc+IFRoaXMgdXNlcyB0aGUgbWNyeXB0IGZ1bmN0aW9ucyBmb3IgZW5jcnlwdGlvbiBwdXJwb3NlcywgYW5kIHRoZXkgY291bGQgbm90IGJlIGRldGVjdGVkIG9uIHlvdXIgaW5zdGFsbC4gICBQbGVhc2UgY29udGFjdCB5b3VyIHNlcnZlciBhZG1pbmlzdHJhdG9yLic7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICfQmNC30LzQtdC90LjRgtGMINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWydub2lubGluZSddID0gJ9Cd0LUg0LLRgdGC0YDQvtC10L3QvdGL0LUg0YTQvtGA0LzRiyc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ9Cd0LDQttC80LjRgtC1INC30LTQtdGB0YwsINC10YHQu9C4INCy0Ysg0LfQsNCx0YvQu9C4INGB0LLQvtC5INC70L7Qs9C40L0nOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ9Cd0LDQttC80LjRgtC1INC30LTQtdGB0YwsINC10YHQu9C4INCy0Ysg0LfQsNCx0YvQu9C4INGB0LLQvtC5INC/0LDRgNC+0LvRjCc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ9Cd0LDQttC80LjRgtC1INC30LTQtdGB0YwsINGH0YLQvtCx0Ysg0LLRi9C50YLQuCc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAn0J3QsNC20LzQuNGC0LUg0LfQtNC10YHRjCwg0YfRgtC+0LHRiyDQuNC30LzQtdC90LjRgtGMINGB0LLQvtC5INC/0LDRgNC+0LvRjCDQuNC70Lgg0LTRgNGD0LPRg9GOINC40L3RhNC+0YDQvNCw0YbQuNGOJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAn0J/QvtGB0LzQvtGC0YDQtdGC0Ywg0YjQsNCx0LvQvtC9INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWydldmVudCddID0gJ9Ch0L7QsdGL0YLQuNC1JzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUg0YPQstC10LTQvtC80LvQtdC90LjRjyDQviDRgdC+0LHRi9GC0LjRj9GFJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ9CQ0LTRgNC10YEgZW1haWwg0YPQstC10LTQvtC80LvQtdC90LjRjyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAn0KjQsNCx0LvQvtC9INGD0LLQtdC00L7QvNC70LXQvdC40Y8g0L/QviBlbWFpbCc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICfQotC10LzQsCDRg9Cy0LXQtNC+0LzQu9C10L3QuNGPINC/0L4gZW1haWwnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICfQo9Cy0LXQtNC+0LzQu9C10L3QuNGPINC/0L4gZW1haWwnOwokbGFuZ1snT25Mb2dpbiddID0gJ9Cd0LAg0LLRhdC+0LQnOwokbGFuZ1snT25Mb2dvdXQnXSA9ICfQndCwINCy0YvRhdC+0LQnOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAn0J3QsCDQuNGB0YLQtdC60YjRg9GOINGB0LXRgdGB0LjRjic7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICfQndCwINCy0L3QvtCy0Ywg0YHQvtC30LTQsNC90L3QvtCz0L4g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ9Cd0LAg0YPQtNCw0LvQtdC90L3QvtCz0L4g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ09uIFVzZXIgU2V0dGluZ3MgQ2hhbmdlZCc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBDcmVhdGVkJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIERlbGV0ZWQnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdUaGUgbG9zdCBsb2dpbiBkZXRhaWxzIGZ1bmN0aW9uYWxpdHkgaGFzIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQuICBXZSBoYXZlIGZvdW5kIGEgdW5pcXVlIHVzZXJuYW1lIHRoYXQgbWF0Y2hlcyB0aGUgZGV0YWlscyB5b3UgZW50ZXJlZC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ9CS0LDRiNC1INC40LzRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAn0JzRiyDRgNC10LrQvtC80LXQvdC00YPQtdC8INCS0LDQvCDRgdC+0YXRgNCw0L3QuNGC0Ywg0Y3RgtGDINC40L3RhNC+0YDQvNCw0YbQuNGOINCyINCx0LXQt9C+0L/QsNGB0L3QvtC8LCDQvdC+INC00L7RgdGC0YPQv9C90L7QvCDQvNC10YHRgtC1Lic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgY2hhbmdlIHNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNvZGUgdmVyaWZpY2F0aW9uIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIERldGFpbHMgVGVtcGxhdGUnOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIENvbmZpcm0gVGVtcGxhdGUnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICfQntGI0LjQsdC60LA6INCx0L7Qu9C10LUg0YfQtdC8INC+0LTQuNC9INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjCDQuNC80LXQtdGCINGD0LrQsNC30LDQvdC90YvQtSDRgdCy0L7QudGB0YLQstCwJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ9Ce0YjQuNCx0LrQsDog0L3QtdCy0L7Qt9C80L7QttC90L4g0L3QsNC50YLQuCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ9Ce0YjQuNCx0LrQsDog0L3QtdCy0L7Qt9C80L7QttC90L4g0L3QsNC50YLQuCDQs9GA0YPQv9C/0YMg0YEg0Y3RgtC40Lwg0LjQvNC10L3QtdC8JzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAn0KLQvtC70YzQutC+INC00LvRjyDRh9GC0LXQvdC40Y8nOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ9Ca0LvQsNGB0YEgVXNlciBNYW5pcHVsYXRvciAnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAn0JLRi9C/0L7Qu9C90LXQvSDQstGL0YXQvtC0INCw0LTQvNC40L3QuNGB0YLRgNCw0YLQvtGA0LAnOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ9Cf0L7QutCw0LfQsNGC0Ywg0YLQvtC70YzQutC+INC30LDQu9C+0LPQuNC90LXQstGI0LjRhdGB0Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10LknOwokbGFuZ1sncHJvbXB0X2xvZ291dCddID0gJ9CS0YvRhdC+0LQg0Y3RgtC+0LPQviDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAn0J3QsNGB0YLRgNC+0LnQutC4INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ9CY0YHRgtC+0YDQuNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWydleHBvcnQnXSA9ICfQrdC60YHQv9C+0YDRgic7CiRsYW5nWydjbGVhciddID0gJ9Ce0YfQuNGB0YLQutCwJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ9Ct0LrRgdC/0L7RgNGCINC40YHRgtC+0YDQuNC4INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDQsiBBU0NJSSDQv9C+INC60YDQsNC50L3QtdC5INC80LXRgNC1JzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAn0J7Rh9C40YHRgtC40YLRjCDQuNGB0YLQvtGA0LjRjiDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8g0L/QviDQutGA0LDQudC90LXQuSDQvNC10YDQtSc7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICfQl9Cw0LHRi9C70Lgg0LLQsNGIINC70L7Qs9C40L0/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ9Ct0LrRgdC/0L7RgNGCINC+0L/RgNC10LTQtdC70LXQvdC40Y8g0LPRgNGD0L/Qv9GLICjQuCDRgdCy0L7QudGB0YLQsikg0LIgWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICfQntCx0YHQu9GD0LbQuNCy0LDQvdC40LUg0LjRgdGC0L7RgNC40Lgg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ3llcyddID0gJ9CU0LAnOwokbGFuZ1snbm8nXSA9ICfQndC10YInOwokbGFuZ1sncHJvbXB0X29mJ10gPSAn0LInOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiog0JHQtdC3INC+0LPRgNCw0L3QuNGH0LXQvdC40LkgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAn0JfQsCDRgtC10LrRg9GJ0LjQuSDRh9Cw0YEnOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAn0JfQsCDRiNC10YHRgtGMINGH0LDRgdC+0LInOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAn0JfQsCDQtNCy0LXQvdCw0LTRhtCw0YLRjCDRh9Cw0YHQvtCyJzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAn0JfQsCDQvtC00LjQvSDQtNC10L3RjCc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICfQl9CwINC+0LTQvdGDINC90LXQtNC10LvRjic7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAn0JfQsCDQtNCy0LUg0L3QtdC00LXQu9C4JzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICfQl9CwINC+0LTQuNC9INC80LXRgdGP0YYnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ9CX0LAg0YLRgNC4INC80LXRgdGP0YbQsCc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ9CX0LAg0YjQtdGB0YLRjCDQvNC10YHRj9GG0LXQsic7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICfQl9CwINC+0LTQuNC9INCz0L7QtCc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICfQk9GA0YPQv9C/0LjRgNC+0LLQutCwINC4INGB0L7RgNGC0LjRgNC+0LLQutCwJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzZm91bmQnXSA9ICfQl9Cw0L/QuNGB0LgsINGB0L7QvtGC0LLQtdGC0YHRgtCy0YPRjtGJ0LjQtSDQutGA0LjRgtC10YDQuNGP0LwnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICfQn9C+INCw0LvRhNCw0LLQuNGC0YMg0JAt0K8nOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ9Cf0L4g0LDQu9GE0LDQstC40YLRgyDQry3QkCc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAn0J/QviDQtNCw0YLQtSAo0YPQsdGL0LLQsNC90LjQtSknOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAn0J/QviDQtNCw0YLQtSAo0LLQvtC30YDQsNGB0YLQsNC90LjQtSknOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAn0J/QviDRgtC40L/RgyDRgdC+0LHRi9GC0LjRjyAo0YPQsdGL0LLQsNC90LjQtSknOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICfQn9C+INGC0LjQv9GDINGB0L7QsdGL0YLQuNGPICjQstC+0LfRgNCw0YHRgtCw0L3QuNC1KSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICfQn9C+IElQICjRg9Cx0YvQstCw0L3QuNC1KSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ9Cf0L4gSVAgKNCy0L7Qt9GA0LDRgdGC0LDQvdC40LUpJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICfQmNGB0YLQvtGA0LjRjyDQvdC1INC90LDQudC00LXQvdCwJzsKJGxhbmdbJ3Jlc2V0J10gPSAn0KHQsdGA0L7RgdC40YLRjCc7CiRsYW5nWydwcm9tcHRfZ3JvdXBfaXAnXSA9ICfQk9GA0YPQv9C/0LjRgNC+0LLQsNGC0Ywg0L/QviBJUCc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ9Ck0LjQu9GM0YLRgCDRgtC40L/QsCDRgdC+0LHRi9GC0LjRjyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICfQn9C+0LrQsNC30YvQstCw0YLRjCDRgtC+0LvRjNC60L4g0YHQvtCx0YvRgtC40Y8sINC60L7RgtC+0YDRi9C1INGA0LDQvdGM0YjQtSDRh9C10Lw6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICfQm9C40LzQuNGCINGB0YLRgNCw0L3QuNGG0YsnOwokbGFuZ1snZm9yJ10gPSAn0LTQu9GPJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAn0J7RgtGH0ZHRgiDQuNGB0YLQvtGA0LjQuCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1sndW5rbm93biddID0gJ9Cd0LXQuNC30LLQtdGB0YLQvdGL0LknOwokbGFuZ1sncHJvbXB0X2lwYWRkcmVzcyddID0gJ0lQINCw0LTRgNC10YEnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ9Ci0LjQvyDRgdC+0LHRi9GC0LjRjyc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ9CU0LDRgtCwJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICfQktC10YDQvdGD0YLRjNGB0Y8nOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ9Ce0L/QtdGA0LDRhtC40Y8g0LjQvNC/0L7RgNGC0LAg0LfQsNCy0LXRgNGI0LXQvdCwJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ9Ce0LHRgNCw0LHQvtGC0LDQvdC+INGB0YLRgNC+0LonOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ9Ce0LHQvdCw0YDRg9C20LXQvdC+INC+0YjQuNCx0L7Quic7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAn0JTQvtCx0LDQstC70LXQvdC+INC30LDQv9C40YHQtdC5JzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICfQndC10LLQvtC30LzQvtC20L3QviDQvdCw0LnRgtC4INGB0LLQvtC50YHRgtCy0LAg0LTQu9GPINCz0YDRg9C/0L/RiyAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ9C90LXRgiDQvtGC0LLQtdGC0LAg0L7RgiBTTVRQINGB0LXRgNCy0LXRgNCwJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ9Cj0LrQsNC30LDQvdC90YvQuSDRhNCw0LnQuyAoJXMpINC90LUg0L7QsdC90LDRgNGD0LbQtdC9JzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICfQvdC10LLQtdGA0L3QvtC1INC30L3QsNGH0LXQvdC40LUg0LLRi9C/0LDQtNCw0Y7RidC10LPQviDRgdC/0LjRgdC60LAgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICfQn9GA0LXQstGL0YjQtdC90LjQtSDQvNCw0LrRgdC40LzQsNC70YzQvdC+0Lkg0LTQu9C40L3RiyDQv9C+0LvRjyAlcyAnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICfQntGI0LjQsdC60LAg0LjQvNC/0L7RgNGC0LAgKNGB0YLRgNC+0LrQsCAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdDb3VsZCBub3QgZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucyAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGEgY29sdW1uIHRvIG1hdGNoIHRoZSByZXF1aXJlZCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1RoZSBmaWxlIHNwZWNpZmllZCBmb3IgaW1wb3J0IGlzIG5vdCBpbiB0aGUgY29ycmVjdCBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0L7RgtC60YDRi9GC0Ywg0YTQsNC50LsnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcXCMpIGNoYXJhY3RlcnMsIGFuZCBuYW1lcyBlYWNoIG9mIHRoZSBmaWVsZHMgaW4gdGhlIGZpbGUuICBUaGUgbmFtZXMgb2YgdGhlc2UgZmllbGRzIGlzIHNpZ25pZmljYW50LiAgVGhlcmUgYXJlIHNvbWUgcmVxdWlyZWQgZmllbGQgbmFtZXMgKHNlZSBiZWxvdyksIGFuZCBvdGhlciBmaWVsZCBuYW1lcyBtdXN0IG1hdGNoIHRoZSBwcm9wZXJ0eSBuYW1lcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHVzZXJzIGFyZSBnb2luZyB0byBiZSBhZGRlZCBpbnRvLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgZmFpbCBpZiB0aGUgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIGRvZXMgbm90IG1hdGNoIGFsbCBvZiB0aGUgcmVxdWlyZWQgcHJvcGVydGllcyBhc3NvY2lhdGVkIHdpdGggdGhlIGdyb3VwIHRoYXQgdXNlcnMgYXJlIGJlaW5nIGFkZGVkIGludG88L2xpPg0KPGxpPlRoZSBpbnB1dCBmaWxlIG1heSBjb250YWluIGZpZWxkcyByZXByZXNlbnRpbmcgc29tZSBvZiB0aGUgb3B0aW9uYWwgcHJvcGVydGllcyBpbiB0aGUgc3BlY2lmaWVkIGdyb3VwLjwvbGk+DQo8bGk+VGhlIGltcG9ydCBwcm9jZXNzIHdpbGwgaWdub3JlIGFueSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgdGhhdCBhcmUgZWl0aGVyIG5vdCBrbm93biwgb3IgbWFwIHRvIHByb3BlcnRpZXMgdGhhdCBhcmUgPGVtPm9mZjwvZW0+IGluIHRoZSBzcGVjaWZpZWQgdXNlciBncm91cC48L2xpPg0KPC91bD4NCjxoNT5Db2x1bW5hciBEYXRhPC9oNT4NCjx1bD4NCjxsaT5UaGUgPHN0cm9uZz51c2VybmFtZTwvc3Ryb25nPiBGaWVsZCAtIFRoZSBkZXNpcmVkIHVzZXJuYW1lLg0KICAgIDxwPlRoaXMgZmllbGQgbXVzdCBleGlzdCBpbiB0aGUgaGVhZGVybGluZSwgYW5kIGluIGVhY2ggYW5kIGV2ZXJ5IGxpbmUgb2YgdGhlIGlucHV0IGZpbGUuIFRoZSByZWNvcmQgd2lsbCBmYWlsIGlmIGEgdXNlciB3aXRoIHRoYXQgdXNlcm5hbWUgYWxyZWFkeSBleGlzdHMgaW4gdGhlIGRhdGFiYXNlLjwvcD48L2xpPg0KPGxpPlRoZSA8c3Ryb25nPnBhc3N3b3JkPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+ZXhwaXJlczwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPkRyb3Bkb3duIEZpZWxkcw0KICAgIDxwPlRoZSB2YWx1ZSBvZiBkcm9wZG93biBwcm9wZXJ0aWVzIGluIGFuIGltcG9ydCBmaWxlIGlzIHJlcHJlc2VudGVkIGFzIHRoZSBzdHJpbmcgdGhhdCBpcyBzaG93biBpbiB0aGUgZHJvcGRvd24gY29udHJvbCBpbiB0aGUgRnJvbnRFbmRVc2VycyBtb2R1bGUuPC9wPg0KPC9saT4NCjxsaT5NdWx0aXNlbGVjdCBGaWVsZHMNCiAgICA8cD5NdWx0aXNlbGVjdCBmaWVsZHMgYXJlIGNvbnRhaW5lZCB3aXRoaW4gdGhlIEFTQ0lJIGZpbGUgYXMgYSA6IHNlcGFyYXRlZCBsaXN0IG9mIHN0cmluZ3MsIHdoZXJlIGVhY2ggc3RyaW5nIHJlcHJlc2VudHMgdGhlIHRleHQgc2hvd24gaW4gdGhlIG11bHRpc2VsZWN0IGxpc3Q8L3A+DQo8L2xpPg0KPGxpPkltYWdlIEZpZWxkcw0KICAgIDxwPkltYWdlIGFyZSBmaWVsZHMgd2hvXCdzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAn0JjQvNC/0L7RgNGCINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5INCyINGN0YLRgyDQs9GA0YPQv9C/0YMnOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAn0JLRhdC+0LTQvdC+0Lkg0YTQsNC50LsgQ1NWJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR4bWxmaWxlJ10gPSAn0JLRhdC+0LTQvdC+0Lkg0YTQsNC50LsgWE1MJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ9Ct0LrRgdC/0L7RgNGCINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5JzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ9CY0LzQv9C+0YDRgiDQv9C+0LvRjNC30L7QstCw0YLQtdC70LXQuSc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICfQntGH0LjRgdGC0LrQsCc7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ0ltYWdlIERlc3RpbmF0aW9uIFBhdGgnOwokbGFuZ1snZXJyb3JfbWlzc2luZ191cGxvYWQnXSA9ICdBIHByb2JsZW0gb2NjdXJyZWQgd2l0aCBhIG1pc3NpbmcgKGJ1dCByZXF1aXJlZCkgdXBsb2FkJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdDb3VsZCBub3QgcGFyc2UgdGhlIHByb3ZpZGVkIFhNTCBmaWxlJzsKJGxhbmdbJ2Vycm9yX25vdGVtcHR5Z3JvdXAnXSA9ICdDYW5ub3QgZGVsZXRlIGEgZ3JvdXAgdGhhdCBzdGlsbCBoYXMgdXNlcnMnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ1RoaXMgdXNlciBpcyBhbHJlYWR5IGxvZ2dlZCBpbic7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdUaGUgdGV4dCBmcm9tIHRoZSBpbWFnZSB3YXMgbm90IGVudGVyZWQgY29ycmVjdGx5JzsKJGxhbmdbJ3Byb21wdF9hbGxvd19yZXBlYXRlZF9sb2dpbnMnXSA9ICdBbGxvdyB1c2VycyB0byBsb2dpbiBtb3JlIHRoYW4gb25jZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnSW1hZ2UgRmlsZSBFeHRlbnNpb25zIHRoYXQgVXNlcnMgYWxsb3dlZCB0byB1cGxvYWQnOwokbGFuZ1snZXZlbnRfaGVscF9PblJlZnJlc2hVc2VyJ10gPSAnPGgzPk9uUmVmcmVzaFVzZXI8L2gzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gdGhlIHVzZXIgc2Vzc2lvbiBpcyByZWZyZXNoZWQuPC9wPg0KPGg0PlBhcmFtZXRlcnM6PC9oND4NCjx1bD4NCiAgPGxpPjxlbT5pZDwvZW0+IC0gVGhlIFVzZXIgaWQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJzxoMz5PbkRlbGV0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgZGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICc8aDM+T25DcmVhdGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PblVwZGF0ZVVzZXInXSA9ICc8aDM+T25VcGRhdGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIHVwZGF0ZWQgKGVpdGhlciBieSB1c2VyIHRoZW1zZWxmIG9yIGFkbWluKTwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlR3JvdXAnXSA9ICc8aDM+T25DcmVhdGVHcm91cDxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZ3JvdXAgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIGdyb3VwIG5hbWU8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gVGhlIGdyb3VwIGRlc2NyaXB0aW9uPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlR3JvdXAnXSA9ICc8aDM+T25EZWxldGVHcm91cDxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZ3JvdXAgaXMgZGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIGdyb3VwIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJzxoMz5PbkxvZ2luPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW48L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBUaGUgaXAgYWRkcmVzcyBvZiB0aGUgY2xpZW50PC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWRvdXQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluIHRvIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dCBvZiB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gaXMgZXhwaXJlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IHVzZXIgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uUmVmcmVzaFVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiB0aGUgdXNlciBzZXNzaW9uIGlzIHJlZnJlc2hlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpbmZvIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBkZWxldGVkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIEdyb3VwJzsKJGxhbmdbJ2luZm9fc3RhciddID0gJyogVGhlIGZvbGxvd2luZyBtYWNyb3MgY2FuIGJlIHVzZWQgaW4gdGhlc2UgZmllbGRzOiB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gV2hlbiB1c2luZyB0aGUgeyRncm91cH0gbWFjcm8sIHRoZSBzeXN0ZW0gd2lsbCBzdWJzaXR1dGUgdGhlIG5hbWUgb2YgdGhlIGZpcnN0IG1lbWJlciBncm91cCB0aGF0IHRoZSB1c2VyIGJlbG9uZ3MgdG8sIGFuZCB3aWxsIHJlZGlyZWN0IHRvIHRoYXQgcGFnZS4nOwokbGFuZ1snaW5mb19hZG1pbl9wYXNzd29yZCddID0gJ0VkaXQgdGhpcyBmaWVsZCB0byByZXNldCB0aGUgdXNlcnMgcGFzc3dvcmQnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ0VkaXQgdGhpcyBmaWVsZCB0byByZXNldCB0aGUgdXNlcnMgcGFzc3dvcmQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnQSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdObyByZXN1bHRzIHJldHVybmVkIGZyb20gY3N2IGV4cG9ydCc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdMZW5ndGggb2YgdXNlcm5hbWUgZmllbGQnOwokbGFuZ1sncHJvbXB0X3B3ZmxkbGVuJ10gPSAnTGVuZ3RoIG9mIHBhc3N3b3JkIGZpZWxkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdNaW4vTWF4IHBhc3N3b3JkIGxlbmd0aHMgYXJlIGludmFsaWQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9NYXggdXNlcm5hbWUgbGVuZ3RocyBhcmUgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZW1haWxhZGRyZXNzJ10gPSAnSW52YWxpZCBFbWFpbCBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnV2UgY291bGQgbm90IGZpbmQgYW4gZW1haWwgYWRkcmVzcyBmb3IgdGhpcyBhY2NvdW50JzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdQcm9ibGVtIHNldHRpbmcgdXNlciBpbmZvJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Byb2JsZW0gc2V0dGluZyBwcm9wZXJ0eSc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnVXNlciBBZGRlZCAlcyA9ICVzJzsKJGxhbmdbJ3VzZXJfZGVsZXRlZCddID0gJ1VzZXIgRGVsZXRlZCB1aWQ9JXMnOwokbGFuZ1sncHJvcGVydHlmaWx0ZXInXSA9ICdQcm9wZXJ0eSc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVmFsdWUgKHJlZ3VsYXIgZXhwcmVzc2lvbiknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdXYXJuaW5nOiBUaGVzZSBmaWVsZHMgYWZmZWN0IHRoZSBzaXplIG9mIGlucHV0IGZpZWxkcyBmb3IgZm9ybXMuICBEZWNyZWFzaW5nIHRoaXMgbnVtYmVyIG9uIGFuIGV4aXN0aW5nIHNpdGUgbWF5IG5vdCBiZSBhZHZpc2FibGUnOwokbGFuZ1snY29uZmlybV9zdWJtaXRwcmVmcyddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBhZGp1c3QgdGhlIG1vZHVsZSBwcmVmZXJlbmNlcz8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0VtYWlsIGFkZHJlc3MgYWxyZWFkeSB1c2VkJzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ1VzZSBjb29raWVzIHRvIHJlbWVtYmVyIGxvZ2luIGRldGFpbHMnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdUaGUgbmFtZSBvZiB0aGUgY29va2llJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnQWxsb3cgZHVwbGljYXRlIGVtYWlscyc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdFbWFpbCBhZGRyZXNzIGlzIHVzZXJuYW1lJzsKJGxhbmdbJ2luZm9fY29va2llX2tlZXBhbGl2ZSddID0gJ0F0dGVtcHQgdG8ga2VlcCBsb2dpbnMgYWxpdmUgYnkgdGhlIHVzZSBvZiBhIGNvb2tpZSA8ZW0+KHRoZSBjb29raWUgaXMgcmVzZXQgb24gYWN0aXZpdHkgaW4gdGhlIHdlYnNpdGUpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKGFsbG93IG11bHRpcGxlIHVzZXJzIHdpdGggdGhlIHNhbWUgZW1haWwgYWRkcmVzcyknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1c2VyXCdzIGVtYWlsIGFkZHJlc3MgaXMgdGhlaXIgdXNlcm5hbWUgLS0gZG9uXCd0IHNldCB0aGlzIHdpdGggImFsbG93IGR1cGxpY2F0ZSBlbWFpbCBhZGRyZXNzZXMiISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgImZvcmdvdCBwYXNzd29yZCIgcmVtaW5kZXJzPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoYWxsb3cgYSB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQsIGV2ZW4gaWYgdGhleSBoYXZlblwndCBhY3RlZCBvbiBhIHByZXZpb3VzIG9uZSknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdVc2UgRnJvbnQtZW5kIFVzZXIgc3BlY2lmaWMgcGVybWlzc2lvbnM/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWxseSwgRkVVU2VycyBwZXJtaXNzaW9ucyBhcmUgdGhlIHNhbWUgYXMgdGhlIGVxdWl2YWxlbnQgQWRtaW4gQXJlYSBwZXJtaXNzaW9ucyBsaWtlIEFkZCBVc2VyLCBBZGQgR3JvdXAsIGV0Yy4gSWYgeW91IHNlbGVjdCB0aGlzIG9wdGlvbiwgdGhlcmUgd2lsbCBiZSBzZXBhcmF0ZSBwZXJtaXNzaW9ucyBmb3IgRkVVc2Vycy4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdDb3VsZCBub3QgZmluZCB0aGUgdXBsb2FkZWQgZmlsZSAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnVGhlcmUgd2FzIGEgcHJvYmxlbSB3aXRoIHlvdXIgdXBsb2FkZWQgZmlsZS4gIFBsZWFzZSB0cnkgYWdhaW4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnWW91IGRpZCBub3QgZW50ZXIgYSB1c2VybmFtZSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdZb3UgZGlkIG5vdCBlbnRlciB5b3VyIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ1lvdSBkaWQgbm90IGVudGVyIGEgcGFzc3dvcmQnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ0Zyb250ZW5kIFVzZXIgTG9nb3V0JzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0Zyb250ZW5kIFVzZXIgTG9naW4nOwokbGFuZ1snZWRpdHByb3BfaW5mb21zZyddID0gJzxmb250IGNvbG9yPSJyZWQiPjxiPlVTRSBDQVVUSU9OPC9iPiB3aGVuIGNoYW5naW5nIGV4aXN0aW5nIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzaWduZWQgdG8gZ3JvdXBzLCB5b3UgbWF5IHBvdGVudGlhbGx5IGNhdXNlIGRhbWFnZSBhbmQgYnJlYWsgYW4gZXhpc3Rpbmcgc2l0ZSA8aT4oZXNwZWNpYWxseSBpZiB5b3UgcmVkdWNlIGZpZWxkIGxlbmd0aHMsIGV0Yyk8L2k+PC9mb250Pic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ1RoaXMgZnVuY3Rpb24gZG9lcyBub3Qgd29yayBvbiB3aW5kb3dzJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdEbyBub3QgY3JlYXRlIGEgcHJvcGVydHkgZm9yIHVzZXJuYW1lLCBvciBwYXNzd29yZCBhcyB0aGVzZSBwcm9wZXJ0aWVzIGFyZSBidWlsdGluIHRvIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnRXhwb3J0IFVzZXJzIHRvIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnQnOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0JzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW4nOwokbGFuZ1snZWRpdHByb3AnXSA9ICdFZGl0IFByb3BlcnR5JzsKJGxhbmdbJ21heGxlbmd0aCddID0gJ01heGltdW0gTGVuZ3RoJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdDcmVhdGVkJzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnQgQnknOwokbGFuZ1snc29ydCddID0gJ1NvcnRpbmcnOwokbGFuZ1sndXNlcnNpbmdyb3VwJ10gPSAnVXNlcnMgaW4gdGhlIHNlbGVjdGVkIGdyb3VwKHMpJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0xpbWl0IHJlc3VsdHMgdG8nOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnQ291bGQgbm90IGZpbmQgYW4gZW1haWwgZmllbGQgZm9yIHRoaXMgdXNlci4gIFlvdSBtYXkgbmVlZCB0byBjb250YWN0IHRoZSBzeXN0ZW0gYWRtaW5pc3RyYXRvcic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBmb3IgRm9yZ290IFBhc3N3b3JkIGZvcm0nOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgZm9yIENoYW5nZSBTZXR0aW5ncyBmb3JtJzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgbG9naW4gKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBsb2dvdXQgKic7CiRsYW5nWydzb3J0b3JkZXInXSA9ICdTb3J0IG9yZGVyJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ0EgbnVtYmVyIG9mIHVzZXJzIGFyZSBpbiB0aGUgbWlkZGxlIG9mIHJlc2V0dGluZyBsb3N0IHBhc3N3b3Jkcy4gIEN1cnJlbnRseSB0aGlzIGNvdW50IGlzIGF0Oic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1JlbW92ZSBhbGwgZW50cmllcyBtb3JlIHRoYW4gYSB3ZWVrIG9sZCc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdSZW1vdmUgYWxsIGVudHJpZXMgbW9yZSB0aGFuIGEgbW9udGggb2xkJzsKJGxhbmdbJ3JlbW92ZWFsbCddID0gJ1JlbW92ZSBhbGwgZW50cmllcyc7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnQXJlIHlvdSBzdXJlPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ0FuIGludmFsaWQgY29kZSBoYXMgYmVlbiBlbnRlcmVkLCBwbGVhc2UgdHJ5IGFnYWluJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdBIHRlbXBvcmFyeSBjb2RlIGZvciB5b3VyIHVzZXIgaWQgY291bGQgbm90IGJlIGZvdW5kIGluIHRoZSBkYXRhYmFzZSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlIHVzZWQgdG8gZGlzcGxheSB2ZXJpZmljYXRpb24gZm9ybSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNlZCBmb3IgZm9yZ290dGVuIHBhc3N3b3JkIGVtYWlsJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdFaXRoZXIgeW91cnNlbGYgb3Igc29tZW9uZSBlbHNlIGhhcyBhbHJlYWR5IHRyaWdnZXJlZCBhIHBhc3N3b3JkIHJlc2V0IG9wZXJhdGlvbiBmb3IgdGhpcyBhY2NvdW50LiAgQ2hlY2sgeW91ciBlbWFpbCwgeW91IG1heSBoYXZlIGZ1cnRoZXIgaW5zdHJ1Y3Rpb25zIG9uIGhvdyB0byByZXNldCB5b3VyIHBhc3N3b3JkIGluIHlvdXIgaW5ib3gnOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ9Ce0YjQuNCx0LrQsCDQsdCw0LfRiyDQtNCw0L3QvdGL0YUnOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnWW91IGFyZSByZWNlaXZpbmcgdGhpcyBtZXNzYWdlIGJlY2F1c2Ugc29tZWJvZHkgdG9sZCBvdXIgc2l0ZSB0aGF0IHlvdSBoYWQgbG9zdCB5b3VyIHBhc3N3b3JkLiAgSWYgdGhpcyBpcyB0aGUgY2FzZSwgcmVhZCB0aGUgaW5zdHJ1Y3Rpb25zIGJlbG93LiAgSWYgeW91IGRvblwndCBoYXZlIGEgY2x1ZSB3aGF0IHRoaXMgaXMsIHRoZW4geW91IGFyZSBzYWZlIHRvIGRlbGV0ZSB0aGlzIG1lc3NhZ2UsIGFuZCB3ZSB0aGFuayB5b3UgZm9yIHlvdXIgdGltZS4nOwokbGFuZ1sncHJvbXB0X2NvZGUnXSA9ICfQmtC+0LQnOwokbGFuZ1snbWVzc2FnZV9jb2RlJ10gPSAnVGhlIGZvbGxvd2luZyBjb2RlIGhhcyBiZWVuIGdlbmVyYXRlZCByYW5kb21seSBnZW5lcmF0ZWQgaW4gb3JkZXIgdG8gdmVyaWZ5IHRoZSB1c2VyIGFjY291bnQuICB3aGVuIHlvdSBjbGljayBvbiB0aGUgbGluayBiZWxvdyB5b3Ugd2lsbCBiZSBwcmVzZW50ZWQgd2l0aCBhIGZpZWxkIHRvIGVudGVyIHRoaXMgY29kZS4gIE5vcm1hbGx5IHRoZSBmaWVsZCBpcyBwcmUtY29tcGxldGVkIGZvciB5b3UsIGJ1dCBpbmNhc2UgaXQgaXNuXCd0IHRoZSBjb2RlIGlzOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0NsaWNraW5nIG9uIHRoZSBmb2xsb3dpbmcgbGluayB3aWxsIHRha2UgeW91IHRvIHRoZSB3ZWJzaXRlIHdoZXJlIHlvdSBjYW4gZW50ZXIgdGhlIGFib3ZlIGNvZGUsIGFuZCByZXNldCB5b3VyIHBhc3N3b3JkOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAn0JfQsNCx0YvQu9C4INC/0LDRgNC+0LvRjCc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0L3QsNC50YLQuCDQvNC+0LTRg9C70YwgQ01TTWFpbGVyJzsKJGxhbmdbJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCddID0gJ9Cd0LAg0Y3Qu9C10LrRgtGA0L7QvdC90YPRjiDQv9C+0YfRgtGDINCx0YvQu9C+INCy0YvRgdC70LDQvdC+ICVzICDRgSDQuNC90YHRgtGA0YPQutGG0LjQtdC5INC60LDQuiDRgdCx0YDQvtGB0LjRgtGMINC/0LDRgNC+0LvRjC4g0KHQv9Cw0YHQuNCx0L4nOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICfQmNGC0LDQuiDQstGLINC30LDQsdGL0LvQuCDQuNC70Lgg0L/QvtGC0LXRgNGP0LvQuCDRgdCy0L7QuSDQv9Cw0YDQvtC70YwuINCl0L7RgNC+0YjQviwg0LLQstC10LTQuNGC0LUg0LjQvNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDQsiDRgdC40YHRgtC10LzRgywg0Lgg0LXRgdC70Lgg0LzRiyDRgdC80L7QttC10Lwg0L3QsNC50YLQuCDQstCw0YEg0LzRiyDQvtGC0L/RgNCw0LLQuNC8INCy0LDQvCDQv9C40YHRjNC80L4g0YEg0LjQvdGB0YLRgNGD0LrRhtC40LXQuSDQv9C+INGB0LzQtdC90LUg0L/QsNGA0L7Qu9GPJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAn0KjQsNCx0LvQvtC9INCy0L7RgdGB0YLQsNC90L7QstC70LXQvdC40Y8g0L/QsNGA0L7Qu9GPJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ9Co0LDQsdC70L7QvSDQstC+0YHRgdGC0LDQvdC+0LLQu9C10L3QuNGPINC40LzQtdC90Lgg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ2Vycm9yX3Byb3Bub3Rmb3VuZCddID0gJ9Ch0LLQvtC50YHRgtCy0L4gJXMg0L3QtSDQvdCw0LnQtNC10L3Qvic7CiRsYW5nWydwcm9wc2ZvdW5kJ10gPSAn0KHQstC+0LnRgdGC0LLQsCDQvdCw0LnQtNC10L3Riyc7CiRsYW5nWydhZGRwcm9wJ10gPSAn0JTQvtCx0LDQstC40YLRjCDRgdCy0L7QudGB0YLQstC+JzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICfQntCx0Y/Qt9Cw0YLQtdC70YzQvdC+0LUg0L/QvtC70LUgKCVzKSDQvdC1INC30LDQv9C+0LvQvdC10L3Qvic7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ0VudGVyIGEgbmV3IHBhc3N3b3JkIGhlcmUgdG8gY2hhbmdlIHlvdXIgcGFzc3dvcmQnOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdZb3UgZG8gbm90IGFwcGVhciB0byBiZSBsb2dnZWQgaW4nOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ9Cd0LDRgdGC0YDQvtC50LrQuCc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ9Cg0LXQs9C40YHRgtGA0LDRhtC40Y8nOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICfQrdGC0LAg0YPRh9C10YLQvdCw0Y8g0LfQsNC/0LjRgdGMINC/0YDQvtGB0YDQvtGH0LXQvdCwJzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdJbXByb3BlciBlbWFpbCBhZGRyZXNzIGZvcm1hdHRpbmcnOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdJbnZhbGlkIGV4cGlyeSBkYXRlJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdFcnJvciBzZXR0aW5nIHByb3BlcnR5ICVzIGZvciB1c2VyICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnSW52YWxpZCBncm91cCBpZCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ0hpZGRlbiBmaWVsZCBtYXJrZXInOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0hpZGRlbiBmaWVsZCBjb2xvcic7CiRsYW5nWydoaWRkZW4nXSA9ICdIaWRkZW4nOwokbGFuZ1snZXJyb3JfZHVwbGljYXRlbmFtZSddID0gJ0EgcHJvcGVydHkgd2l0aCB0aGF0IG5hbWUgaXMgYWxyZWFkeSBkZWZpbmVkJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ05vIHByb3BlcnRpZXMgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ05vIHByb3BlcnRpZXMgd2VyZSBzZWxlY3RlZCBmb3IgdGhpcyBncm91cCc7CiRsYW5nWydub2dyb3VwcyddID0gJ9Cd0LXRgiDQvtC/0YDQtdC00LXQu9GR0L3QvdGL0YUg0LPRgNGD0L/Qvyc7CiRsYW5nWydncm91cHNmb3VuZCddID0gJ9Cd0LDQudC00LXQvdC+INCz0YDRg9C/0L8nOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ01lbWJlcnNoaXAgaW4gYXQgbGVhc3Qgb25lIGdyb3VwIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdSZXF1aXJlIG1lbWJlcnNoaXAgaW4gYXRsZWFzdCBvbmUgZ3JvdXAnOwokbGFuZ1snYmFjayddID0gJ9Cd0LDQt9Cw0LQnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzINGN0YLQviDQvtCx0Y/Qt9Cw0YLQtdC70YzQvdC+0LUg0L/QvtC70LUnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ9Cf0L7QvNC10YfQsNGC0Ywg0L7QsdGP0LfQsNGC0LXQu9GM0L3Ri9C1INC/0L7Qu9GPJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ0hpbGl0ZSByZXF1aXJlZCBmaWVsZHMgaW4nOwokbGFuZ1snbmV4dCddID0gJ9CU0LDQu9GM0YjQtSc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0EgR3JvdXAgd2l0aCB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdSZXF1aXJlZCc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wdGlvbmFsJzsKJGxhbmdbJ29mZiddID0gJ09mZic7CiRsYW5nWydzaXplJ10gPSAn0KDQsNC30LzQtdGAJzsKJGxhbmdbJ3NpemVjb21tZW50J10gPSAnPGJyLz4oTWF4aW11bSBzaXplIG9mIGFueSBvbmUgZGltZW5zaW9uIG9mIHRoZSBpbWFnZSBpbiBwaXhlbHMpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ9CU0LvQuNC90LAnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4o0YHQuNC80LLQvtC70L7QsiDQsiDQstCy0L7QtNC1INGC0LXQutGB0YLQsCknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ0Ryb3Bkb3duIG9wdGlvbnMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnUmFkaW9idXR0b24gbGFiZWxzLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncHJvbXB0J10gPSAnUHJvbXB0JzsKJGxhbmdbJ3Byb21wdF90eXBlJ10gPSAn0KLQuNC/JzsKJGxhbmdbJ3R5cGUnXSA9ICfQotC40L8nOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICfQn9C+0LvQtSDRgdGC0LDRgtGD0YHQsCc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdBc2sgaW4gTG9zdDxici8+VXNlcm5hbWUnOwokbGFuZ1sndGV4dCddID0gJ9Ci0LXQutGB0YInOwokbGFuZ1snY2hlY2tib3gnXSA9ICdDaGVja2JveCc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ011bHRpIFNlbGVjdCBMaXN0JzsKJGxhbmdbJ3JhZGlvYnV0dG9ucyddID0gJ1JhZGlvIEJ1dHRvbnMnOwokbGFuZ1snaW1hZ2UnXSA9ICfQmNC30L7QsdGA0LDQttC10L3QuNC1JzsKJGxhbmdbJ2VtYWlsJ10gPSAn0JDQtNGA0LXRgSBlbWFpbCc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ9Ce0LHQu9Cw0YHRgtGMINGC0LXQutGB0YLQsCc7CiRsYW5nWydkcm9wZG93biddID0gJ9Ch0L/QuNGB0L7Quic7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ9CU0L7QsdGA0L4g0L/QvtC20LDQu9C+0LLQsNGC0YwnOwokbGFuZ1snbG9nb3V0J10gPSAn0JLRi9GF0L7QtCc7CiRsYW5nWydwcm9tcHRfbmV3Z3JvdXBuYW1lJ10gPSAn0JjRgdC/0L7Qu9GM0LfRg9C50YLQtSDRjdGC0L4g0L3QsNC30LLQsNC90LjQtSDQs9GA0YPQv9C/0YsnOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzJ10gPSAn0JjQt9C80LXQvdC40YLRjCDQvNC+0Lgg0L3QsNGB0YLRgNC+0LnQutC4JzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAn0JLRhdC+0LQg0L3QtSDRg9C00LDQu9GB0Y8gLSDQndC10LLQtdGA0L3QvtC1INC40LzRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8g0LjQu9C4INC/0LDRgNC+0LvRjD8nOwokbGFuZ1snbG9naW4nXSA9ICfQktGF0L7QtCc7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ1NpZ24gaW4gYnV0dG9uIGxhYmVsJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ9CY0LzRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAn0JDQtNGA0LXRgSBlbWFpbCc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICfQn9Cw0YDQvtC70YwnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICfQl9Cw0L/QvtC80L3QuNGC0Ywg0LzQtdC90Y8g0L3QsCDRjdGC0L7QvCDQutC+0LzQv9GM0Y7RgtC10YDQtSc7CiRsYW5nWydyZWdpc3RlciddID0gJ9Cg0LXQs9C40YHRgtGA0LDRhtC40Y8nOwokbGFuZ1snZm9yZ290cHcnXSA9ICfQl9Cw0LHRi9C70Lgg0LLQsNGIINC/0LDRgNC+0LvRjD8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAn0JfQsNCx0YvQu9C4INCy0LDRiCDQu9C+0LPQuNC9Pyc7CiRsYW5nWydkZWZhdWx0cyddID0gJ9Cf0L4g0YPQvNC+0LvRh9Cw0L3QuNGOJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAn0KjQsNCx0LvQvtC9JzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ9Cd0LUg0YPQtNCw0LvQvtGB0Ywg0L3QsNC50YLQuCDQuNC90YTQvtGA0LzQsNGG0LjRjiDQvtCxINGN0YLQvtC8INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtSc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAn0JjQvNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyAoJXMpINGD0LbQtSDQuNGB0L/QvtC70YzQt9GD0LXRgtGB0Y8nOwokbGFuZ1sncHJvbXB0X3NtdHB2YWxpZGF0ZSddID0gJ9CY0YHQv9C+0LvRjNC30L7QstCw0YLRjCBTTVRQINC00LvRjyDQv9C+0LTRgtCy0LXQttC00LXQvdC40Y8gZW1haWwg0LDQtNGA0LXRgdCwPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICfQnNC40L3QuNC80LDQu9GM0L3QsNGPINC00LvQuNC90LAg0L/QsNGA0L7Qu9GPJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ9Cc0LDQutGB0LjQvNCw0LvRjNC90LDRjyDQtNC70LjQvdCwINC/0LDRgNC+0LvRjyc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICfQnNC40L3QuNC80LDQu9GM0L3QsNGPINC00LvQuNC90LAg0LjQvNC10L3QuCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAn0JzQsNC60YHQuNC80LDQu9GM0L3QsNGPINC00LvQuNC90LAg0LjQvNC10L3QuCDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1sncHJvbXB0X3Nlc3Npb250aW1lb3V0J10gPSAn0KLQsNC50Lwt0LDRg9GCINGB0LXQsNC90YHQsCAo0LIg0YHQtdC60YPQvdC00LDRhSknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1VzZSBjb29raWVzIHRvIGtlZXAgbG9naW5zIGFsaXZlJzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnQWxsb3cgRW1haWwgUmVnaXN0cmF0aW9uJzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICfQk9GA0YPQv9C/0LAg0L/Qvi3Rg9C80L7Qu9GH0LDQvdC40Y4g0LTQu9GPINC90L7QstC+0LPQviDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8nOwokbGFuZ1snY2hhbmdlc2V0dGluZ3NfdGVtcGxhdGUnXSA9ICfQmNC30LzQtdC90LjRgtGMINC90LDRgdGC0YDQvtC50LrQuCDRiNCw0LHQu9C+0L3QsCc7CiRsYW5nWydlcnJvcl9wYXNzd29yZG1pc21hdGNoJ10gPSAn0J/QsNGA0L7Qu9C4INC90LUg0YHQvtCy0L/QsNC00LDRjtGCJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ9Cd0LXQv9GA0LDQstC40LvRjNC90L7QtSDQuNC80Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ9Cd0LXQv9GA0LDQstC40LvRjNC90YvQuSDQv9Cw0YDQvtC70YwnOwokbGFuZ1snZWRpdHVzZXInXSA9ICfQmNC30LzQtdC90LjRgtGMINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyc7CiRsYW5nWyd2YWxpZCddID0gJ9CU0LXQudGB0YLQstC40YLQtdC70YzQvdGL0LknOwokbGFuZ1sndXNlcm5hbWUnXSA9ICfQmNC80Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ3N0YXR1cyddID0gJ9Ch0YLQsNGC0YPRgSc7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICfQrdGC0L7RgiDQv9C+0LvRjNC30L7QstCw0YLQtdC70Ywg0L3QtSDRj9Cy0LvRj9C10YLRgdGPINGH0LvQtdC90L7QvCDQutCw0LrQvtC5LdC70LjQsdC+INCz0YDRg9C/0L/Riyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAn0J3QtdGCINGB0LLQvtC50YHRgtCyJzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAn0J/QvtC/0YvRgtC60LAg0LjQvNC/0L7RgNGC0LAg0LTRg9Cx0LvQuNC60LDRgtCwINGB0LLQvtC50YHRgtCy0LAnOwokbGFuZ1sndmFsdWUnXSA9ICfQl9C90LDRh9C10L3QuNC1JzsKJGxhbmdbJ2dyb3VwcyddID0gJ9CT0YDRg9C/0L/Riyc7CiRsYW5nWydwcm9wZXJ0aWVzJ10gPSAn0KHQstC+0LnRgdGC0LLQsCc7CiRsYW5nWydwcm9wbmFtZSddID0gJ9Cd0LDQt9Cy0LDQvdC40LUg0YHQstC+0LnRgdGC0LLQsCc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICfQl9C90LDRh9C10L3QuNC1INGB0LLQvtC50YHRgtCy0LAnOwokbGFuZ1snYWRkJ10gPSAn0JTQvtCx0LDQstC40YLRjCc7CiRsYW5nWydoaXN0b3J5J10gPSAn0JjRgdGC0L7RgNC40Y8nOwokbGFuZ1snZWRpdCddID0gJ9CY0LfQvNC10L3QuNGC0YwnOwokbGFuZ1snZXhwaXJlcyddID0gJ9CY0YHRgtC10LrQsNC10YInOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAn0KPQutCw0LbQuNGC0LUg0LTQsNGC0YMnOwokbGFuZ1snMTJocnMnXSA9ICcxMiDRh9Cw0YHQvtCyJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQg0YfQsNGB0LAnOwokbGFuZ1snNDhocnMnXSA9ICc0OCDRh9Cw0YHQvtCyJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSDQvdC10LTQtdC70Y8nOwokbGFuZ1snMndlZWtzJ10gPSAnMiDQvdC10LTQtdC70LgnOwokbGFuZ1snMW1vbnRoJ10gPSAnMSDQvNC10YHRj9GGJzsKJGxhbmdbJzNtb250aHMnXSA9ICczINC80LXRgdGP0YbQsCc7CiRsYW5nWyc2bW9udGhzJ10gPSAnNiDQvNC10YHRj9GG0LXQsic7CiRsYW5nWycxeWVhciddID0gJzEg0LPQvtC0JzsKJGxhbmdbJ25ldmVyJ10gPSAn0J3QuNC60L7Qs9C00LAnOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWxlIGluc3RhbGxlZCBzdWNlc3NmdWxseS48YnIvPkJlIHN1cmUgdG8gc2V0IHRoZSAiTW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4iJzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAn0J/QsNGA0L7Qu9GMJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAn0JXRidGRINGA0LDQtyc7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAn0JPRgNGD0L/Qv9CwINGBINGC0LDQutC40Lwg0LjQvNC10L3QtdC8INGD0LbQtSDRgdGD0YnQtdGB0YLQstGD0LXRgic7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICfQoNC10LTQsNC60YLQuNGA0L7QstCw0YLRjCDQs9GA0YPQv9C/0YMnOwokbGFuZ1snc3VibWl0J10gPSAn0J7RgtC/0YDQsNCy0LjRgtGMJzsKJGxhbmdbJ2NhbmNlbCddID0gJ9Ce0YLQvNC10L3QsCc7CiRsYW5nWydkZWxldGUnXSA9ICfQo9C00LDQu9C40YLRjCc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ0FyZSB5b3Ugc3VyZSB0aGlzIGlzIHRoZSBwcm9wZXIgc2V0dGluZ3MgZm9yIHRoaXMgZ3JvdXA/XFxuVHVybmluZyBhIHByb3BlcnR5IG9mZiB3aWxsIG5vdCBkZWxldGUgYW55IGVudHJpZXMgaW4gdGhlIHByb3BlcnRpZXMgdGFibGUgZm9yIHRoaXMgZ3JvdXAvdXNlci4gIFRoZXkgd2lsbCBtZXJlbHkgYmUgdW5hdmFpbGFibGUuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlZ3JvdXAnXSA9ICfQktGLINGD0LLQtdGA0LXQvdGLINGH0YLQviDRhdC+0YLQuNGC0LUg0YPQtNCw0LvQuNGC0Ywg0Y3RgtGDINCz0YDRg9C/0L/Rgz8nOwokbGFuZ1snY29uZmlybV9kZWxldGVfcHJvcCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBjb21wbGV0ZWx5IGRlbGV0ZSB0aGlzIHByb3BlcnR5P1xcbkRvaW5nIHNvIHdpbGwgYWxzbyBlcmFzZSBhbnkgdXNlciBlbnRyaWVzIGZvciB0aGlzIHByb3BlcnR5Lic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICfQndC10LTQvtGB0YLQsNGC0L7Rh9C90L4g0L/QsNGA0LDQvNC10YLRgNC+0LInOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWyduYW1lJ10gPSAn0JjQvNGPJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAn0J/RgNC+0LHQu9C10LzQsCDQtNC+0LHQsNCy0LvQtdC90LjRjyDRgdCy0L7QudGB0YLQstCwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICfQn9GA0L7QsdC70LXQvNCwINC/0YDQuCDQtNC+0LHQsNCy0LvQtdC90LjQuCDRgdCy0Y/Qt9C4INCz0YDRg9C/0L/Riyc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICfQn9GA0L7QsdC70LXQvNCwINC00L7QsdCw0LLQu9C10L3QuNGPINCz0YDRg9C/0L/Riyc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ9Cf0YDQvtCx0LvQtdC80LAg0LTQvtCx0LDQstC70LXQvdC40Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPINCyINCz0YDRg9C/0L/Rgyc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAn0J/RgNC+0LHQu9C10LzQsCDRg9C00LDQu9C10L3QuNGPINGB0LLQvtC50YHRgtCy0LAnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICfQndC1INGD0LTQsNC70L7RgdGMINC90LDQudGC0LggZW1haWwnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ9Cd0LXRgiDQv9GA0LDQsiDQvdCwINC30LDQv9C40YHRjCDQsiDQv9Cw0L/QutGDINC90LDQt9C90LDRh9C10L3QuNGPJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXJhbXMnXSA9ICfQndC10L/RgNCw0LLQuNC70YzQvdGL0LUg0L/QsNGA0LDQvNC10YLRgNGLJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAn0J3QtSDRg9C00LDQu9C+0YHRjCDQvdCw0LnRgtC4INC60LDQutC40LUt0LvQuNCx0L4g0LPRgNGD0L/Qv9GLJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAn0J/RgNC40LzQtdC90LjRgtGMJzsKJGxhbmdbJ2ZpbHRlciddID0gJ9Ck0LjQu9GM0YLRgCc7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAn0JjQvNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDRgNC10LPRg9C70Y/RgNC90L7QtSDQstGL0YDQsNC20LXQvdC40LUnOwokbGFuZ1snZGVzY3JpcHRpb24nXSA9ICfQntC/0LjRgdCw0L3QuNC1JzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ9CY0LzRjyDQs9GA0YPQv9C/0YsnOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAn0JTQvtGB0YLRg9C/INC30LDQv9GA0LXRidGR0L0nOwokbGFuZ1snZXJyb3InXSA9ICfQntGI0LjQsdC60LAnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICfQlNC+0LHQsNCy0LjRgtGMINCz0YDRg9C/0L/Rgyc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ9CY0LzQv9C+0YDRgiDQs9GA0YPQv9C/0YsnOwokbGFuZ1snYWRkdXNlciddID0gJ9CU0L7QsdCw0LLQuNGC0Ywg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICfQndCw0LnQtNC10L3RiyDQv9C+0LvRjNC30L7QstCw0YLQtdC70LgsINGB0L7QvtGC0LLQtdGC0YHRgtCy0YPRjtGJ0LjQtSDQutGA0LjRgtC10YDQuNGOJzsKJGxhbmdbJ2dyb3VwJ10gPSAn0JPRgNGD0L/Qv9CwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAn0JLRi9Cx0LXRgNC40YLQtSDQs9GA0YPQv9C/0YMnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAn0KjQsNCx0LvQvtC9INGA0LXQs9C40YHRgtGA0LDRhtC40LgnOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAn0KjQsNCx0LvQvtC9INCy0YvRhdC+0LTQsCc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJ9Co0LDQsdC70L7QvSDQstGF0L7QtNCwJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAn0J3QsNGB0YLRgNC+0LnQutC4JzsKJGxhbmdbJ3VzZXJzJ10gPSAn0J/QvtC70YzQt9C+0LLQsNGC0LXQu9C4JzsKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ9CY0L3RgtC10YDRhNC10LnRgSDRg9C/0YDQsNCy0LvQtdC90LjRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y/QvNC4JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAn0KDQsNC30YDQtdGI0LjRgtGMINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRj9C8INCy0L7QudGC0Lgg0LLQviDRhNGA0L7QvdGC0LXQvdC0INCy0LDRiNC10LPQviDRgdCw0LnRgtCwJzsKJGxhbmdbJ2RlZmF1bHRmcm9udHBhZ2UnXSA9ICfQk9C70LDQstC90LDRjyDRgdGC0YDQsNC90LjRhtCwINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOICc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAn0J/QvtGB0LvQtdC00L3QuNC5INC00L7RgdGC0YPQvyDQuiDRgdGC0YDQsNC90LjRhtC1JzsKJGxhbmdbJ290aGVycGFnZSddID0gJ9CU0YDRg9Cz0LDRjyDRgdGC0YDQsNC90LjRhtCwOiAnOwokbGFuZ1snY2FwdGNoYV90aXRsZSddID0gJ9CS0LLQtdC00LjRgtC1INC60L7QtCDRgSDQutCw0YDRgtC40L3QutC4JzsKPz4K]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sk_SK.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2FwcGxpZWQnXSA9ICdVcHJhdmVuJmVhY3V0ZTsnOwokbGFuZ1snZmlyc3RwYWdlJ10gPSAnPDwnOwokbGFuZ1sncHJldnBhZ2UnXSA9ICc8JzsKJGxhbmdbJ25leHRwYWdlJ10gPSAnPic7CiRsYW5nWydsYXN0cGFnZSddID0gJz4+JzsKJGxhbmdbJ3BhZ2UnXSA9ICdTdHJhbmEnOwokbGFuZ1sncHJvbXB0X2FsbG93X2NoYW5nZXVzZXJuYW1lJ10gPSAnUG92b2xpxaUgem1lbnUgcG91xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hJzsKJGxhbmdbJ2luZm9fYWxsb3dfY2hhbmdldXNlcm5hbWUnXSA9ICdQb3XFviZpYWN1dGU7dmF0ZcS+IHNpIG0mb2NpcmM7xb5lIHptZW5pxaUgamVobyBwb3XFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlOyBtZW5vIHNwb2x1IHMgb3N0YXRuJnlhY3V0ZTttaSAmdWFjdXRlO2Rham1pJzsKJGxhbmdbJ3RlbXBsYXRlX3NhdmVkJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHVsb8W+ZW4mYWFjdXRlOyc7CiRsYW5nWyd0ZW1wbGF0ZV9yZXNldGRlZmF1bHRzJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHptZW5lbiZhYWN1dGU7IG5hIHByZWRuYXN0YXZlbiZ1YWN1dGU7JzsKJGxhbmdbJ2xibF9zZXR0aW5ncyddID0gJ05hc3RhdmVuaWEnOwokbGFuZ1snbGJsX3RlbXBsYXRlcyddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtueSc7CiRsYW5nWydlbmFibGVfY2FwdGNoYSddID0gJ1Bvdm9sacWlIG92ZXJlbmllIGNhcHRjaGEgdiBwcmlobGFzb3ZhY2lvbSBmb3JtdWwmYWFjdXRlO3JpJzsKJGxhbmdbJ2luZm9fZW5hYmxlX2NhcHRjaGEnXSA9ICdBayBwb3XFviZpYWN1dGU7dmF0ZcS+IG5pZSBqZSBwcmlobCZhYWN1dGU7c2VueSBhIGplIHpvYnJhemVuJnlhY3V0ZTsgcHJpaGxhc292YWMmaWFjdXRlOyBmb3JtdWwmYWFjdXRlO3IsIHRvdG8gbmFzdGF2ZW5pZSBvdnBsaXZuJmlhY3V0ZTssIMSNaSBidWRlIHBvdcW+aXQmZWFjdXRlOyBvdmVyZW5pZSBwb21vY291IGsmb2FjdXRlO2R1IGNhcHRjaGEsIHBva2lhxL4gamUgZG9zdHVwbiZ5YWN1dGU7Lic7CiRsYW5nWydwYWdldHlwZV91bmF1dGhvcml6ZWQnXSA9ICdOZW0mYWFjdXRlO3RlIG9wciZhYWN1dGU7dm5lbmllIG5hIHByZXplcmFuaWUgdG9ob3RvIG9ic2FodSc7CiRsYW5nWydpbmZvX2NvbnRlbnRwYWdlX2dyb3VwbGlzdCddID0gJ05hc3RhdiB6b3puYW0gRkVVIHBvdcW+JmlhY3V0ZTt2YXRlxL5zayZ5YWN1dGU7Y2ggc2t1cCZpYWN1dGU7biwga3RvciZlYWN1dGU7IG1haiZ1YWN1dGU7IHByJmlhY3V0ZTtzdHVwIGsgdGVqdG8gc3RyJmFhY3V0ZTtua2UuIFBva2lhxL4gbmllIGplIHZ5YnJhbiZhYWN1dGU7IMW+aWFkbmEgc2t1cGluYSwgbWFqJnVhY3V0ZTsgayBuZWogcHImaWFjdXRlO3N0dXAgdiZzY2Fyb247ZXRjaSBwcmlobCZhYWN1dGU7c2VuJnlhY3V0ZTsgcG91xb4maWFjdXRlO3ZhdGVsaWEuJzsKJGxhbmdbJ3BhZ2V0eXBlX3NldHRpbmdzJ10gPSAnTmFzdGF2ZW5pYSBjaHImYWFjdXRlO25lbiZ5YWN1dGU7Y2ggc3RyJmFhY3V0ZTtub2snOwokbGFuZ1sncGFnZXR5cGVfZ3JvdXBzJ10gPSAnUG92b2xlbiZlYWN1dGU7IHNrdXBpbnknOwokbGFuZ1snaW5mb19wYWdldHlwZV9ncm91cHMnXSA9ICdWeWJlcnRlIHNrdXBpbnksIGt0b3ImeWFjdXRlO20gamUgeiZhYWN1dGU7a2xhZG5lIHBvdm9sZW4mZWFjdXRlOyB6b2JyYXplbmllIGNociZhYWN1dGU7bmVuJnlhY3V0ZTtjaCBzdHImYWFjdXRlO25vay4gQWRtaW5pc3RyJmFhY3V0ZTt0b3IgcyBwciZhYWN1dGU7dmFtaSBwcmUgJnVhY3V0ZTtwcmF2dSBvYnNhaHUsIG0mYWFjdXRlOyBtb8W+bm9zxaUgdXByYXZpxaUgdGlldG8gbmFzdGF2ZW5pYSBwcmUgamVkbm90bGl2JmVhY3V0ZTsgc3RyJmFhY3V0ZTtua3kuJzsKJGxhbmdbJ3BhZ2V0eXBlX2FjdGlvbiddID0gJ0FrY2lhIHByaSBuZWRvc3RhdG/EjW5vbSBvcHImYWFjdXRlO3ZuZW4maWFjdXRlOyc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX2FjdGlvbiddID0gJ0FrY2lhLCBrdG9yJmFhY3V0ZTsgc2EgbSZhYWN1dGU7IHZ5a29uYcWlIHBva2lhxL4gcG91xb4maWFjdXRlO3ZhdGXEviBuZW0mYWFjdXRlOyBkb3N0YXRvxI1uJmVhY3V0ZTsgb3ByJmFhY3V0ZTt2bmVuaWEgbmEgem9icmF6ZW5pZSBvYnNhaHUuIE0mb2NpcmM7xb5lIGJ5xaUgcHJlc21lcm92YW4meWFjdXRlOyBuYSB1csSNaXQmdWFjdXRlOyBzdHImYWFjdXRlO25rdSwgYWxlYm8gbXUgbSZvY2lyYzvFvmUgYnnFpSB6b2JyYXplbiZ5YWN1dGU7IHByaWhsYXNvdmFjJmlhY3V0ZTsgZm9ybXVsJmFhY3V0ZTtyJzsKJGxhbmdbJ3Nob3dsb2dpbmZvcm0nXSA9ICdab2JyYXppxaUgcHJpaGxhc292YWMmaWFjdXRlOyBmb3JtdWwmYWFjdXRlO3InOwokbGFuZ1sncmVkaXJlY3QnXSA9ICdQcmVzbWVyb3ZhxaUgbmEgc3RyJmFhY3V0ZTtua3UnOwokbGFuZ1sncGFnZXR5cGVfcmVkaXJlY3R0byddID0gJ1ByZXNtZXJvdmHFpSBuYSc7CiRsYW5nWydpbmZvX3BhZ2V0eXBlX3JlZGlyZWN0dG8nXSA9ICdWeWJlcnRlIHN0ciZhYWN1dGU7bmt1IG5hIGt0b3ImdWFjdXRlOyBtJmFhY3V0ZTsgYnnFpSBwb3XFviZpYWN1dGU7dmF0ZcS+IHByZXNtZXJvdmFuJnlhY3V0ZTsuIFBva2lhxL4gamUgYWtjaWEgbmFzdGF2ZW4mYWFjdXRlOyBuYSBwcmVzbWVyb3ZhbmllIGEgbmllIGplIHZ5YnJhbiZhYWN1dGU7IMW+aWFkbmEgc3RyJmFhY3V0ZTtua2EgcHJlIHByZXNtZXJvdmFuaWUsIHBvdcW+JmlhY3V0ZTt2YXRlxL5vdmkgYnVkZSB6b2JyYXplbiZhYWN1dGU7IHZhcm92biZhYWN1dGU7IHNwciZhYWN1dGU7dmEuJzsKJGxhbmdbJ3Blcm1pc3Npb25zJ10gPSAnT3ByJmFhY3V0ZTt2bmVuaWEnOwokbGFuZ1snZmV1X3Byb3RlY3RlZF9wYWdlJ10gPSAnQ2hyJmFhY3V0ZTtuZW4meWFjdXRlOyBvYnNhaCc7CiRsYW5nWydwcm9tcHRfdmlld3Byb3BzJ10gPSAnVnliZXJ0ZSBkb2RhdG/EjW4mZWFjdXRlOyB2bGFzdG5vc3RpIG5hIHpvYnJhemVuaWUnOwokbGFuZ1sndmlldyddID0gJ1pvYnJhemnFpSc7CiRsYW5nWydpbmZvX2lnbm9yZV91c2VyaWQnXSA9ICdJZiBjaGVja2VkIHRoZSBpbXBvcnQgcm91dGluZSB3aWxsIGF0dGVtcHQgdG8gYWRkIHVzZXJzIGluZGVwZW5kYW50IG9mIHRoZSB1c2VyaWQgY29sdW1uLiAgSWYgYSB1c2VyIHdpdGggdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZSBpbXBvcnQgZmlsZSBhbHJlYWR5IGV4aXN0cywgYW4gZXJyb3Igd2lsbCBiZSBnZW5lcmF0ZWQnOwokbGFuZ1snaWdub3JlX3VzZXJpZCddID0gJ0lnbm9yZSBVc2VySUQgQ29sdW1uIG9uIEltcG9ydCc7CiRsYW5nWydleHBvcnRfcGFzc2hhc2gnXSA9ICdFeHBvcnQgdGhlIHBhc3N3b3JkIGhhc2ggdG8gdGhlIGZpbGUnOwokbGFuZ1snaW5mb19leHBvcnRfcGFzc2hhc2gnXSA9ICdUaGUgcGFzc3dvcmQgaGFzaCBpcyBvbmx5IHVzZWZ1bCBpZiB0aGUgcGFzc3dvcmQgc2FsdCBvbiB0aGUgaW1wb3J0IGhvc3QgaXMgaWRlbnRpY2FsIHRvIHRoYXQgb2YgdGhlIGV4cG9ydCBob3N0JzsKJGxhbmdbJ2Vycm9yX2FkanVzdHNhbHQnXSA9ICdUaGUgcGFzc3dvcmQgc2FsdCBjYW5ub3QgYmUgYWRqdXN0ZWQnOwokbGFuZ1sncHJvbXB0X3B3c2FsdCddID0gJ1Bhc3N3b3JkIFNhbHQnOwokbGFuZ1snaW5mb19wd3NhbHQnXSA9ICdGRVUgcHJpZCZhYWN1dGU7dmEgcmXFpWF6ZWMgayBoZXNsdSBrYcW+ZCZlYWN1dGU7aG8gcG91xb4maWFjdXRlO3ZhdGXEvmEuIFBvIHRvbSBha28gcyZ1YWN1dGU7IHBvdcW+JmlhY3V0ZTt2YXRlbGlhIHByaWRhbiZ5YWN1dGU7IGRvIGRhdGFiJmFhY3V0ZTt6aSBuaWUgamUgbW/Fvm4mZWFjdXRlOyB0ZW50byByZcWlYXplYyBtZW5pxaUuIFByZSBzdGFyJnNjYXJvbjtpZSBpbiZzY2Fyb247dGFsJmFhY3V0ZTtjaWUgbSZvY2lyYzvFvmUgYnnFpSBwciZhYWN1dGU7emRueS4nOwokbGFuZ1snYWR2YW5jZWRfc2V0dGluZ3MnXSA9ICdSb3omc2Nhcm9uOyZpYWN1dGU7cmVuJmVhY3V0ZTsgbmFzdGF2ZW5pYSc7CiRsYW5nWydpbmZvX3Nlc3Npb250aW1lb3V0J10gPSAnxIxhc292JnlhY3V0ZTsgaW50ZXJ2YWwgcG8ga3Rvcm9tIGplIHBvdcW+JmlhY3V0ZTt2YXRlxL4gYXV0b21hdGljayZ5YWN1dGU7IG9kaGwmYWFjdXRlO3NlbiZ5YWN1dGU7IHogZCZvY2lyYzt2b2R1IG5lxI1pbm5vc3RpICh2IHNla3VuZCZhYWN1dGU7Y2gpJzsKJGxhbmdbJ3Byb21wdF9leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ0tvbnRyb2xhIGV4cGlyJmFhY3V0ZTtjaWUnOwokbGFuZ1snaW5mb19leHBpcmV1c2Vyc19pbnRlcnZhbCddID0gJ8SMYXNvdiZ5YWN1dGU7IGludGVydmFsLCBha28gxI1hc3RvIG0mYWFjdXRlOyBzeXN0JmVhY3V0ZTttIG4mdWFjdXRlO3RlbmUgb2RobCZhYWN1dGU7c2nFpSBwb3XFviZpYWN1dGU7dmF0ZcS+b3YsIGt0b3ImeWFjdXRlO2NoIHNlZGVuaWUgdnlwciZzY2Fyb247YWxvICh2IHNla3VuZCZhYWN1dGU7Y2gpLiBTbCZ1YWN1dGU7xb5pIGFrbyBvcHRpbWFsaXomYWFjdXRlO2NpYSBuYSB6biZpYWN1dGU7xb5lbmllIHphxaVhxb5lbmlhIGRhdGFiJmFhY3V0ZTt6aS4gUHJpIDAgc2Ega29udHJvbGEgdnlrb24mYWFjdXRlO3ZhIHByaSBrYcW+ZGVqIHBvxb5pYWRhdmtlLic7CiRsYW5nWydtc2dfc2V0dGluZ3NjaGFuZ2VkJ10gPSAnWW91ciBzZXR0aW5ncyB3ZXJlIHN1Y2Nlc3NmdWxseSB1cGRhdGVkJzsKJGxhbmdbJ2ZvcmNlZGxvZ291dHRhc2tfZGVzYyddID0gJ0ZvcmNlIHVzZXJzIHRvIGxvZ291dCBhdCByZWd1bGFyIGludGVydmFscyc7CiRsYW5nWydwcm9tcHRfZm9yY2Vsb2dvdXRfdGltZXMnXSA9ICfEjGFzaSBwcmUgbiZ1YWN1dGU7dGVuJmVhY3V0ZTsgb2RobCZhYWN1dGU7c2VuaWUnOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF90aW1lcyddID0gJ1pvem5hbSDEjWFzb3YsIG9kZGVsZW4meWFjdXRlO2NoIMSNaWFyb3YgdiB0dmFyZSBISDpNTSxISDpNTSwga2VkeSBtYWomdWFjdXRlOyBiecWlIHBvdcW+JmlhY3V0ZTt2YXRlbGlhIG4mdWFjdXRlO3RlbmUgb2RobCZhYWN1dGU7c2VuJnlhY3V0ZTsuIEJlcnRlIGRvICZ1YWN1dGU7dmFoeSwgxb5lIHNhIHZ5dcW+JmlhY3V0ZTt2YSBtZWNoYW5pem11cyBwc2V1ZG9jcm9uLCB0YWvFvmUgamUgcG90cmVibiZlYWN1dGU7IHYgZGFuJnlhY3V0ZTtjaCDEjWFzb2NoIHphaXN0acWlIHNwbG5lbmllIHBvZG1pZW5vayBuYSB2eXZvbGFuaWUgcHImaWFjdXRlO2thenUuJzsKJGxhbmdbJ3Byb21wdF9mb3JjZWxvZ291dF9zZXNzaW9uYWdlJ10gPSAnVnluZWNoYcWlIHBvdcW+JmlhY3V0ZTt2YXRlxL5vdiwga3RvciZ5YWN1dGU7IGJvbGkgYWt0JmlhY3V0ZTt2bnkgcG9zbGVkbiZ5YWN1dGU7Y2ggPGVtPihtaW4mdWFjdXRlO3QpPC9lbT4nOwokbGFuZ1snaW5mb19mb3JjZWxvZ291dF9zZXNzaW9uYWdlJ10gPSAnUG91xb4maWFjdXRlO3ZhdGXEviwga3RvciZ5YWN1dGU7IGJvbCBha3QmaWFjdXRlO3ZueSB2IGRhbm9tIMSNYXNvdm9tIHJvem1lZHomaWFjdXRlOywgbmVidWRlIG4mdWFjdXRlO3RlbmUgb2RobCZhYWN1dGU7c2VuJnlhY3V0ZTsuJzsKJGxhbmdbJ2FyZXlvdXN1cmVfZGVsZXRlJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgdXNlciAlcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZmlsZWV4dGVuc2lvbiddID0gJ1RoZSB1cGxvYWRlZCBmaWxlIGRvZXMgbm90IG1hdGNoIHRoZSBsaXN0IG9mIGFsbG93ZWQgZmlsZSB0eXBlcyc7CiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnQWxsIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZSBoYXMgYmVlbiBkZWxldGVkJzsKJGxhbmdbJ2luZm9fZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiddID0gJ0lmIGVuYWJsZWQsIHRoaXMgbW9kdWxlIHdpbGwgbGlzdGVuIHRvIGV2ZW50cyBmcm9tIHRoZSBFY29tbWVyY2Ugc3VpdGUuICBUaGUgZm9sbG93aW5nIHNldHRpbmdzIG9ubHkgaGF2ZSBlZmZlY3QgaWYgdGhpcyBzZXR0aW5nIGlzIGVuYWJsZWQuJzsKJGxhbmdbJ3Byb21wdF9lY29tbV9wYWlkcmVnaXN0cmF0aW9uJ10gPSAnTGlzdGVuIHRvIE9yZGVyIEV2ZW50cyc7CiRsYW5nWydpbmZvX3BhaWRyZWdfc2V0dGluZ3MnXSA9ICdUaGUgZm9sbG93aW5nIHNldHRpbmdzIG9ubHkgYXBwbHkgaWYgdXNpbmcgc2VsZiByZWdpc3RyYXRpb24gYW5kIGFsbG93aW5nIGZvciBwYWlkIHJlZ2lzdHJhdGlvbic7CiRsYW5nWydub25lJ10gPSAnxb1pYWRuZSc7CiRsYW5nWydkZWxldGVfdXNlciddID0gJ09kc3RyJmFhY3V0ZTtuacWlIHXFvnZhdGXEvmEnOwokbGFuZ1snZXhwaXJlX3VzZXInXSA9ICdFeHBpciZhYWN1dGU7Y2lhIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydwcm9tcHRfYWN0aW9uX29yZGVyY2FuY2VsbGVkJ10gPSAnQWN0aW9uIHRvIHBlcmZvcm0gd2hlbiBhIHN1YnNjcmlwdGlvbiBvcmRlciBpcyBjYW5jZWxsZWQnOwokbGFuZ1sncHJvbXB0X2FjdGlvbl9vcmRlcmRlbGV0ZWQnXSA9ICdBY3Rpb24gdG8gcGVyZm9ybSB3aGVuIGEgc3Vic2NyaXB0aW9uIG9yZGVyIGlzIGRlbGV0ZWQnOwokbGFuZ1snZWNvbW1lcmNlX3NldHRpbmdzJ10gPSAnRWNvbW1lcmNlIFNldHRpbmdzJzsKJGxhbmdbJ3NlY3VyZWZpZWxkbWFya2VyJ10gPSAnT3puYcSNZW5pZSB6YWJlenBlxI1lbiZ5YWN1dGU7Y2ggcG9sJmlhY3V0ZTsnOwokbGFuZ1snc2VjdXJlZmllbGRjb2xvciddID0gJ0ZhcmJhIHphYmV6cGXEjWVuJnlhY3V0ZTtjaCBwb2wmaWFjdXRlOyc7CiRsYW5nWydwcm9tcHRfZW5jcnlwdCddID0gJ1Vsb8W+acWlIGQmYWFjdXRlO3RhIHYgZGF0YWImYWFjdXRlO3plICZzY2Fyb247aWZyb3ZhbiZlYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX25vdHN1cHBvcnRlZCddID0gJ1RoZSBjaG9zZW4gb3B0aW9uIGlzIG5vdCBzdXBwb3J0ZWQgZ2l2ZW4geW91ciBjdXJyZW50IGNvbmZpZ3VyYXRpb24nOwokbGFuZ1snYXVkaXRfdXNlcl9jcmVhdGVkJ10gPSAnVXNlciBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQnOwokbGFuZ1snaW5mb19hdXRvX2NyZWF0ZV91bmtub3duJ10gPSAnQWsgamUgc2EgcG91xb4maWFjdXRlO3ZhdGXEviBhdXRlbnRpZmlrdWplIHBvbW9jb3UgZXh0ZXJuJmVhY3V0ZTtobyBtb2R1bHUgYSBuZWV4aXN1amUgeiZhYWN1dGU7em5hbSB2IGRhdGFiJmFhY3V0ZTt6ZSBGRVUgbW9kdWx1LCBtJmFhY3V0ZTsgYnnFpSB0YWsmeWFjdXRlO3RvIHomYWFjdXRlO3puYW0gdnl0dm9yZW4meWFjdXRlOz8nOwokbGFuZ1sncHJvbXB0X2F1dG9fY3JlYXRlX3Vua25vd24nXSA9ICdBdXRvbWF0aWNreSB2eXR2b3JpxaUgbmV6biZhYWN1dGU7bXljaCBwb3XFviZpYWN1dGU7dmF0ZcS+b3YnOwokbGFuZ1snZGlzcGxheV9zZXR0aW5ncyddID0gJ05hc3RhdmVuaWUgem9icmF6b3ZhbmlhJzsKJGxhbmdbJ2luZm9fc3RkX2F1dGhfc2V0dGluZ3MnXSA9ICdOYXNsZWR1aiZ1YWN1dGU7Y2UgbmFzdGF2ZW5pYSBzYSBiZXImdWFjdXRlOyBkbyAmdWFjdXRlO3ZhaHUsIGliYSBwb2tpYcS+IHNhIHBvdcW+JmlhY3V0ZTt2YSB2c3RhdmFuJmFhY3V0ZTsgYXV0ZW50aWZpayZhYWN1dGU7Y2lhJzsKJGxhbmdbJ2luZm9fc3VwcG9ydF9sb3N0dW4nXSA9ICdWJnlhY3V0ZTtiZXJvbSBuaWUsIHphayZhYWN1dGU7xb5ldGUgcG91xb4maWFjdXRlO3ZhdGXEvm9tIHBvxb5pYWRhxaUgbyBvYm5vdmVuaWUgc3RyYXRlbiZ5YWN1dGU7Y2ggcHJpaGxhc292YWMmaWFjdXRlO2NoICZ1YWN1dGU7ZGFqb3YsIGJleiBvaMS+YWR1IG5hIG9zdGF0biZlYWN1dGU7IG5hc3RhdmVuaWEnOwokbGFuZ1snaW5mb19zdXBwb3J0X2xvc3RwdyddID0gJ1YmeWFjdXRlO2Jlcm9tIG5pZSwgemFrJmFhY3V0ZTvFvmV0ZSBwb3XFviZpYWN1dGU7dmF0ZcS+b20gcG/FvmlhZGHFpSBvIG9ibm92ZW5pZSBzdHJhdGVuJmVhY3V0ZTtobyBoZXNsYSwgYmV6IG9oxL5hZHUgbmEgb3N0YXRuJmVhY3V0ZTsgbmFzdGF2ZW5pYSc7CiRsYW5nWydwcm9tcHRfc3VwcG9ydF9sb3N0dW4nXSA9ICdQb3ZvbGnFpSBwb3XFviZpYWN1dGU7dmF0ZcS+b20gem1lbnUgcG91xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hJzsKJGxhbmdbJ3Byb21wdF9zdXBwb3J0X2xvc3RwdyddID0gJ1Bvdm9sacWlIHBvdcW+JmlhY3V0ZTt2YXRlxL5vbSB2ecW+aWFkYcWlIHptZW51IGhlc2xhJzsKJGxhbmdbJ2F1dGhfc2V0dGluZ3MnXSA9ICdOYXN0YXZlbmlhIGF1dGVudGlmaWsmYWFjdXRlO2NpZSc7CiRsYW5nWydhdXRoZW50aWNhdGlvbiddID0gJ1ZzdGF2YW4mYWFjdXRlOyBhdXRlbnRpZmlrJmFhY3V0ZTtjaWEnOwokbGFuZ1snYXV0aF9idWlsdGluJ10gPSAnJlNjYXJvbjt0YW5kYXJkbiZhYWN1dGU7IGF1dGVudGlmaWsmYWFjdXRlO2NpYSc7CiRsYW5nWydhdXRoX21vZHVsZSddID0gJ0F1dGVudGlmaWthxI1uJnlhY3V0ZTsgTW9kdWwnOwokbGFuZ1snaW5mb19hdXRoX21vZHVsZSddID0gJ01vZHVsIHBvZHBvcnVqZSBwb3XFviZpYWN1dGU7dmFuaWUgYWx0ZXJuYXQmaWFjdXRlO3ZueWNoIGF1dGVudGlmaWthxI1uJnlhY3V0ZTtjaCBtZXQmb2FjdXRlO2QuIE5pZWt0b3ImZWFjdXRlOyBmdW5rY2llIG5lbXVzaWEgYnnFpSBkb3N0dXBuJmVhY3V0ZTssIHBva2lhxL4gamUgcG91xb4maWFjdXRlO3ZhbiZhYWN1dGU7IGluJmFhY3V0ZTsgYWtvICZzY2Fyb247dGFuZGFyZG4mYWFjdXRlOyBmb3JtYSBhdXRlbnRpZmlrJmFhY3V0ZTtjaWUuJzsKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnVGhlIHZhbHVlIHNwZWNpZmllZCBmb3IgJXMgaXMgYWxyZWFkeSBpbiB1c2UgYnkgYW5vdGhlciB1c2VyJzsKJGxhbmdbJ3VuaXF1ZSddID0gJ1VuaWsmYWFjdXRlO3RueSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVfZmllbGRfdmFsdWUnXSA9ICdUaGUgdmFsdWUgc3BlY2lmaWVkIGZvciAlcyAoJXMpIGlzIG5vdCB1bmlxdWUnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ1Z5xb5hZG92YcWlIGFieSBib2xhIGhvZG5vdGEgdW5payZhYWN1dGU7dG5hIG1lZHppIHYmc2Nhcm9uO2V0ayZ5YWN1dGU7bWkgJnVhY3V0ZTvEjXRhbWknOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnVXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgbG9nb3V0IGZvcm1zLCB0aGlzIHBhcmFtZXRlciBpZiBzcGVjaWZpZWQgd2lsbCBpbmRpY2F0ZSB0aGF0IHRoZSB1c2VyIHNob3VsZCBiZSByZXR1cm5lZCB0byB0aGUgcGFnZSAoYnkgdXJsKSB0aGF0IHRoZSB1c2VyIHdhcyB2aWV3aW5nIGJlZm9yZSB0aGUgYWN0aW9uIG9jY3VycmVkLiAgVGhpcyBwYXJhbWV0ZXIgd2lsbCBvdmVycmlkZSB0aGUgcmVkaXJlY3QgcHJlZmVyZW5jZXMsIGFuZCB0aGUgcmV0dXJudG8gcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnVXNlZCB3aXRoIG9uZSBvZiB0aGUgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGF0IHRoZSBmb3JtcyBzaG91bGQgbm90IGJlIHBsYWNlZCBpbmxpbmUsIGluc3RlYWQgdGhlIHJlc3VsdGluZyBvdXRwdXQgYWZ0ZXIgZm9ybSBzdWJtaXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdMb2dpbiBTZXNzaW9uIFRpbWVvdXQgV2FybmluZyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1lvdXIgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIHBsZWFzZSBjbGljayAmcXVvdDsmcXVvdDtPayZxdW90OyB0byBjb25maXJtIHlvdXIgYWN0aXZpdHkgb24gdGhpcyB3ZWJzaXRlLic7CiRsYW5nWydvayddID0gJ09rJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtuYSBwcmUgcmVzZXRvdmFuaWEgc2VkZW5pYSc7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdUaGlzIGlzIHRoZSBmaWVsZCBuYW1lLCB0byBiZSB1c2VkIGZvciBhZGRyZXNzaW5nIGluIHNtYXJ0eS4gIEl0IG11c3QgY29uc2lzdCBvZiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCB1bmRlcnNjb3Jlcy4nOwokbGFuZ1sndmlzaXRvcnNfdGFiJ10gPSAnTiZhYWN1dGU7diZzY2Fyb247dGV2biZpYWN1dGU7Y2knOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdTZWxlY3Qgb25lIG9yIG1vcmUgRkVVIGdyb3VwcyB0aGF0IGFyZSBhbGxvd2VkIHRvIHZpZXcgdGhpcyBwYWdlJzsKJGxhbmdbJ2Vycm9yX211c3RzZWxlY3RfZ3JvdXAnXSA9ICdTa3VwaW5hIG11cyZpYWN1dGU7IGJ5xaUgdnlicmFuJmFhY3V0ZTsnOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnVnlicmHFpSc7CiRsYW5nWydzdGFydF95ZWFyJ10gPSAnUG/EjWlhdG/EjW4meWFjdXRlOyByb2snOwokbGFuZ1snZW5kX3llYXInXSA9ICdLb25lxI1uJnlhY3V0ZTsgcm9rJzsKJGxhbmdbJ2RhdGUnXSA9ICdEJmFhY3V0ZTt0dW0nOwokbGFuZ1sncHJvbXB0X3RodW1ibmFpbF9zaXplJ10gPSAnVmXEvmtvc8WlIG4mYWFjdXRlO2jEvmFkdSc7CiRsYW5nWydPblVwZGF0ZUdyb3VwJ10gPSAnUHJpIHptZW5lIHNrdXBpbnknOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnUHImaWFjdXRlO2xpJnNjYXJvbjsgdmXEvmEgdcW+JmlhY3V0ZTt2YXRlxL5vdiB6dm9sZW4meWFjdXRlO2NoIHByZSBocm9tYWRuJnVhY3V0ZTsgYWtjaXUuIE1heGltJmFhY3V0ZTtsbnkgcG/EjWV0IGplIDI1JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJ10gPSAnU3RlIHNpIGlzdCZ5YWN1dGU7LCDFvmUgY2hjZXRlIG9kc3RyJmFhY3V0ZTtuacWlIHZ5YnJhbiZ5YWN1dGU7Y2ggdcW+JmlhY3V0ZTt2YXRlxL5vdic7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdabWF6YcWlIHZ5YnJhbiZlYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyb3ZhxaUgbiZhYWN1dGU7aG9kbmUgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbnUgcHJpIHZsb8W+ZW4maWFjdXRlOyc7CiRsYW5nWydtb250aHMnXSA9ICdtZXNpYWNlJzsKJGxhbmdbJ3Byb21wdF9leHBpcmVhZ2UnXSA9ICdQcmVkbmFzdGF2ZW4mYWFjdXRlOyBob2Rub3RlIHByZSBleHBpciZhYWN1dGU7Y2l1JzsKJGxhbmdbJ25vdGlmaWNhdGlvbl9zZXR0aW5ncyddID0gJ05hc3RhdmVuaWEgbm90aWZpayZhYWN1dGU7Y2llJzsKJGxhbmdbJ3Byb3BlcnR5X3NldHRpbmdzJ10gPSAnTmFzdGF2ZW5pYSB2bGFzdG5vc3RpJzsKJGxhbmdbJ3JlZGlyZWN0aW9uX3NldHRpbmdzJ10gPSAnTmFzdGF2ZW5pYSBwcmVzbWVyb3ZhbmlhJzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdIbGF2biZlYWN1dGU7IG5hc3RhdmVuaWEnOwokbGFuZ1snc2Vzc2lvbl9zZXR0aW5ncyddID0gJ05hc3RhdmVuaWEgU2Vzc2lvbiBhIENvb2tpZSAnOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdOYXN0YXZlbmlhIHBvbCZpYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ1puYcSNa2EgcG/EvmEgcHJlIHphYnVkbnV0JmVhY3V0ZTsgaGVzbG8gbSZvY2lyYzvFvmUgYnnFpSBsZW4gcHJpIHBvdmlubiZ5YWN1dGU7Y2ggcG9saWFjaCc7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdQb3ZvbGnFpSB3eXNpd3lnIGVkaXRvcmUgcHJlIHRleHRvdiZlYWN1dGU7IHBvbGUnOwokbGFuZ1snaW5mb19jb29raWVzdG9yZW1lbWJlciddID0gJzxzdHJvbmc+UG96biZhYWN1dGU7bWthOiA8L3N0cm9uZz4gVnl1xb4maWFjdXRlO3ZhIGZ1bmtjaWUgbWNyeXB0LCBwcmUgJnNjYXJvbjtpZnJvdmFjaSAmdWFjdXRlO8SNZWx5LCB0aWUgbmllIGplIG1vxb5uJmVhY3V0ZTsgZGV0ZWtvdmHFpSBwcmkgaW4mc2Nhcm9uO3RhbCZhYWN1dGU7Y2lpLiBQcm9zJmlhY3V0ZTttIGtvbnRha3R1anRlIGFkbWluaXN0ciZhYWN1dGU7dG9yYSBzZXJ2ZXJ1Lic7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICdVcHJhdm92YW4meWFjdXRlOyB1xb4maWFjdXRlO3ZhdGXEvic7CiRsYW5nWydub2lubGluZSddID0gJ0RvIG5vdCBpbmxpbmUgZm9ybXMnOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdDbGljayBoZXJlIGlmIHlvdSBjYW5ub3QgcmVtZW1iZXIgeW91ciBsb2dpbiBkZXRhaWxzJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdDbGljayBoZXJlIGlmIHlvdSBjYW5ub3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0NsaWNrIGhlcmUgdG8gc2lnbiBvdXQnOwokbGFuZ1snaW5mb19jaGFuZ2VzZXR0aW5ncyddID0gJ0NsaWNrIGhlcmUgdG8gYWRqdXN0IHlvdXIgcGFzc3dvcmQgb3Igb3RoZXIgaW5mb3JtYXRpb24nOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICcmU2Nhcm9uO2FibCZvYWN1dGU7bmEgcHJlIHYmeWFjdXRlO3BpcyBwb3XFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydldmVudCddID0gJ1VkYWxvc8WlJzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUgRXZlbnQgTm90aWZpY2F0aW9uJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ0FkcmVzYSBwcmUgemFzaWVsYW5pZSB1cG96b3JuZW4maWFjdXRlOyc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHVwb3pvcm5lbmlhJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCddID0gJ1ByZWRtZXQgdXBvem9ybmVuaWEnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdVcG96b3JuZW5pZSBlLW1haWxvbSc7CiRsYW5nWydPbkxvZ2luJ10gPSAnUHJpIHByaWhsJmFhY3V0ZTtzZW4maWFjdXRlOyc7CiRsYW5nWydPbkxvZ291dCddID0gJ1ByaSBvZGhsJmFhY3V0ZTtzZW4maWFjdXRlOyc7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICdQcmkgZXhwaXImYWFjdXRlO2NpaSBzZWRlbmlhJzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ1ByaSB2eXR2b3JlbiZpYWN1dGU7IG5vdiZlYWN1dGU7aG8gcG91xb4maWFjdXRlO3ZhdGXEvmEnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnUHJpIG9kc3RyJmFhY3V0ZTtuZW4maWFjdXRlOyBwb3XFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdQcmkgem1lbmUgbmFzdGF2ZW4maWFjdXRlOyBwb3XFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnUHJpIHZ5dHZvcmVuJmlhY3V0ZTsgbm92ZWogc2t1cGlueSc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnUHJpIG9kdHImYWFjdXRlO25lbiZpYWN1dGU7IHNrdXBpbnknOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdUaGUgbG9zdCBsb2dpbiBkZXRhaWxzIGZ1bmN0aW9uYWxpdHkgaGFzIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQuICBXZSBoYXZlIGZvdW5kIGEgdW5pcXVlIHVzZXJuYW1lIHRoYXQgbWF0Y2hlcyB0aGUgZGV0YWlscyB5b3UgZW50ZXJlZC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1ZhJnNjYXJvbjtlIHXFviZpYWN1dGU7dmF0ZcS+c2tlIG1lbm8gamUnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnV2UgcmVjb21tZW5kIHlvdSByZWNvcmQgdGhpcyBpbmZvcm1hdGlvbiBpbiBhIHNlY3VyZSwgYnV0IHJldHJpZXZhYmxlIGxvY2F0aW9uLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnZUlEL0FsaWFzIHN0ciZhYWN1dGU7bmt5IHBvIHptZW5lIG5hc3RhdmVuJmlhY3V0ZTsnOwokbGFuZ1sncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJ10gPSAnUGFnZUlEL0FsaWFzIHN0ciZhYWN1dGU7bmt5IHBvIG92ZXJlbiZpYWN1dGU7IHJlZ2lzdHImYWFjdXRlO2NpZSAqJzsKJGxhbmdbJ2xvc3R1bl9kZXRhaWxzX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByZSBvYm5vdnUgc3RyYXRlbiZlYWN1dGU7aG8gbWVuYSc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtuYSBwcmUgcG90dnJkZW5pZSBvYm5vdnkgc3RyYXRlbiZlYWN1dGU7aG8gbWVuYSc7CiRsYW5nWydlcnJvcl9ub251bmlxdWVtYXRjaCddID0gJ0Vycm9yOiBNb3JlIHRoYW4gb25lIHVzZXIgYWNjb3VudCBtYXRjaGVkIHRoZSBwcm9wZXJ0aWVzIHNwZWNpZmllZCc7CiRsYW5nWydlcnJvcl9jYW50ZmluZHVzZXInXSA9ICdDaHlieTogdcW+JmlhY3V0ZTt2YXRlxL4gbmVuJmFhY3V0ZTtqZGVuJnlhY3V0ZTsnOwokbGFuZ1snZXJyb3JfZ3JvdXBub3Rmb3VuZCddID0gJ0NoeWJhOiBOZWJvbGEgbiZhYWN1dGU7amRlbiZhYWN1dGU7IHNrdXBpbmEgcyB0JnlhY3V0ZTttdG8gbWVub20nOwokbGFuZ1sncmVhZG9ubHknXSA9ICdJYmEgbmEgxI0maWFjdXRlO3RhbmllJzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdUcmllZGEgVXNlciBNYW5pcHVsYXRvciBDbGFzcyc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdPZGhsJmFhY3V0ZTtzZW5pZSBhZG1pbmlzdHImYWFjdXRlO3Rvcm9tJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdVayZhYWN1dGU7emHFpSBpYmEgcHJpaGwmYWFjdXRlO3NlbiZ5YWN1dGU7Y2ggdcW+JmlhY3V0ZTt2YXRlxL5vdic7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnT2RobCZhYWN1dGU7c2nFpSB0b2h0byB1xb4maWFjdXRlO3ZhdGXEvmEnOwokbGFuZ1sndXNlcl9wcm9wZXJ0aWVzJ10gPSAnVmxhc25vc3RpIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0hpc3Qmb2FjdXRlO3JpYSB1xb4maWFjdXRlO3ZhdGXEvmEnOwokbGFuZ1snZXhwb3J0J10gPSAnRXhwb3J0b3ZhxaUnOwokbGFuZ1snY2xlYXInXSA9ICdWecSNaXN0acWlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0V4cG9ydG92YcWlIGhpc3Qmb2FjdXRlO3JpdSBkbyBBU0NJSSc7CiRsYW5nWydwcm9tcHRfY2xlYXJ1c2VyaGlzdG9yeSddID0gJ1Z5xI1pc3RpxaUgaGlzdCZvYWN1dGU7cml1IHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWyd0aXRsZV9sb3N0dXNlcm5hbWUnXSA9ICdaYWJ1ZGxpIHN0ZSB2YSZzY2Fyb247ZSBwcmlobGFzb3ZhY2llICZ1YWN1dGU7ZGFqZT8nOwokbGFuZ1sndGl0bGVfcnNzZXhwb3J0J10gPSAnRXhwb3J0b3ZhxaUgc2t1cGlueSBhIGljaCB2bGFzdG5vc3QmaWFjdXRlOyBkbyBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJyZVYWN1dGU7ZHLFvmJhIGhpc3Qmb2FjdXRlO3JpZSB1xb4maWFjdXRlO3ZhdGXEvmEnOwokbGFuZ1sneWVzJ10gPSAnJkFhY3V0ZTtubyc7CiRsYW5nWydubyddID0gJ05pZSc7CiRsYW5nWydwcm9tcHRfb2YnXSA9ICd6JzsKJGxhbmdbJ2RhdGVfYWxscmVjb3JkcyddID0gJyoqIEJleiBsaW1pdHUgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnMSBob2RpbnUgc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJzYgaG9kJmlhY3V0ZTtuIHN0YXImZWFjdXRlOyc7CiRsYW5nWydkYXRlX3R3ZWx2ZWhvdXJvbGQnXSA9ICcxMiBob2QmaWFjdXRlO24gc3RhciZlYWN1dGU7JzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAnSmVkZW4gZGVuIHN0YXImZWFjdXRlOyc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICdKZWRlbiB0JnlhY3V0ZTvFvmRlxYggc3RhcmUnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ0R2YSB0JnlhY3V0ZTvFvmRuZSBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ0plZGVuIG1lc2lhYyBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ1RyaSBtZXNpYWNlIHN0YXImZWFjdXRlOyc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJyZTY2Fyb247ZXPFpSBtZXNpYWNvdiBzdGFyJmVhY3V0ZTsnOwokbGFuZ1snZGF0ZV9vbmV5ZWFyb2xkJ10gPSAnSmVkZW4gcm9rIHN0YXImZWFjdXRlOyc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdab3NrdXBvdmFuaWUgYSB0cmllZGVuaWUnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNmb3VuZCddID0gJ1omYWFjdXRlO3puYW15IG9kcG92ZWRhaiZ1YWN1dGU7Y2UgcG9kbWllbmtlJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnWm9zdHVwbmUgcG9kxL5hIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlO2hvIG1lbmEnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ1Z6b3N0dXBuZSBwb2TEvmEgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7aG8gbWVuYSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnWm9zdHVwbmUgcG9kxL5hIGQmYWFjdXRlO3R1bXUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnVnpvc3R1cG5lIHBvZMS+YSBkJmFhY3V0ZTt0dW11JzsKJGxhbmdbJ3NvcnRvcmRlcl9hY3Rpb25fZGVzYyddID0gJ1pvc3R1cG5lIHBvZMS+YSB0eXB1IHVkYWxvc3QmaWFjdXRlOyc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ1Z6b3N0dXBuZSBwb2TEvmEgdHlwdSB1ZGFsb3N0JmlhY3V0ZTsnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnWm9zdHVwbmUgcG9kxL5hIElQIGFkcmVzeSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2FzYyddID0gJ1Z6b3N0dXBuZSBwb2TEvmEgSVAgYWRyZXN5JzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdIaXN0Jm9hY3V0ZTtyaWEgbmVuJmFhY3V0ZTtqZGVuJmFhY3V0ZTsnOwokbGFuZ1sncmVzZXQnXSA9ICdSZXNldG92YcWlJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ1pvc2t1cGnFpSBwb2TEvmEgSVAgYWRyaWVzJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZXZlbnR0eXBlJ10gPSAnRmlsdHJvdmFuaWUgcG9kxL5hIHR5cG92IHVkYWxvc3QmaWFjdXRlOyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdab2JyYXppxaUgaWJhIGFrY2llLCBrdG9yJmVhY3V0ZTsgc3UgbWVuZWogYWtvOic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnU3RyJmFhY3V0ZTtua292YWMmaWFjdXRlOyBsaW1pdCc7CiRsYW5nWydmb3InXSA9ICdwcmUnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdaJmFhY3V0ZTt6bmFtIHXFviZpYWN1dGU7dmF0ZcS+b3YgaGlzdCZvYWN1dGU7cmllJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdOZXpuJmFhY3V0ZTttaSc7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnSVAgYWRyZXNhJzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdUeXAgdWRhbG9zdGknOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEJmFhY3V0ZTt0dW0nOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ04mYWFjdXRlO3ZyYXQnOwokbGFuZ1snaW1wb3J0X2NvbXBsZXRlX21zZyddID0gJ0ltcG9ydCBrb21wbGV0biZ5YWN1dGU7JzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ1NwcmFjb3ZhbiZ5YWN1dGU7Y2ggcmlhZGtvdic7CiRsYW5nWydwcm9tcHRfZXJyb3JzJ10gPSAnQ2h5YnknOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ1ByaWRhbiZ5YWN1dGU7Y2ggeiZhYWN1dGU7em5hbW92JzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdOZW4mYWFjdXRlO2pkZW4mZWFjdXRlOyB2bGFzdG5vc3QmaWFjdXRlOyBwcmUgc2t1cGludSAlcyc7CiRsYW5nWydlcnJvcl9ub3Jlc3BvbnNlZnJvbXNlcnZlciddID0gJ0JleiBvZG96dnkgU01UUCBzZXJ2ZXJhJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0ZpbGUgc3BlY2lmaWVkICglcykgY291bGQgbm90IGJlIGZvdW5kJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkdmFsdWUnXSA9ICdDaHlibiZhYWN1dGU7IGhvZG5vdGEgdiZ5YWN1dGU7YmVyb3YmZWFjdXRlO2hvIHBvxL5hIGFsZWJvIHZpYWN2JnlhY3V0ZTtiZXJvdiZlYWN1dGU7aG8gcG/EvmEgJXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGRsZW5ndGgnXSA9ICdQb2xlICVzIHByZXNpYWhsbyBtYXhpbSZhYWN1dGU7bG55IHBvxI1ldCB6bmFrb3YnOwokbGFuZ1snZXJyb3JfaW1wb3J0dXNlcnMnXSA9ICdDaHliYSBwcmkgaW1wb3J0ZSAgKHJpYWRvayAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdDb3VsZCBub3QgZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucyAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGEgY29sdW1uIHRvIG1hdGNoIHRoZSByZXF1aXJlZCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1RoZSBmaWxlIHNwZWNpZmllZCBmb3IgaW1wb3J0IGlzIG5vdCBpbiB0aGUgY29ycmVjdCBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ05pZSBqZSBtb8W+biZlYWN1dGU7IG90dm9yacWlIHMmdWFjdXRlO2Jvcic7CiRsYW5nWydpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdCddID0gJzxoND5GaWxlIEZvcm1hdCBJbmZvcm1hdGlvbjwvaDQ+DQo8cD5UaGUgaW5wdXQgZmlsZSBtdXN0IGJlIGluIEFTQ0lJIGZvcm1hdCB1c2luZyBjb21tYSBzZXBhcmF0ZWQgdmFsdWVzLiAgRWFjaCBsaW5lIGluIHRoaXMgaW5wdXQgZmlsZSAod2l0aCB0aGUgZXhjZXB0aW9uIG9mIHRoZSBoZWFkZXIgbGluZSwgZGlzY3Vzc2VkIGJlbG93KSByZXByZXNlbnRzIG9uZSB1c2VyIHJlY29yZC4gIEVhY2ggbGluZSBtdXN0IGNvbnRhaW4gdGhlIHNhbWUgbnVtYmVyIG9mIGZpZWxkcywgYW5kIHRoZSBvcmRlciBvZiB0aGUgZmllbGRzIGluIGVhY2ggbGluZSBtdXN0IGJlIGlkZW50aWNhbC48L3A+DQo8aDU+SGVhZGVyIGxpbmU8L2g1Pg0KPHVsPg0KPGxpPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIG11c3QgYmVnaW4gd2l0aCB0d28gcG91bmQgKFwjKSBjaGFyYWN0ZXJzLCBhbmQgbmFtZXMgZWFjaCBvZiB0aGUgZmllbGRzIGluIHRoZSBmaWxlLiAgVGhlIG5hbWVzIG9mIHRoZXNlIGZpZWxkcyBpcyBzaWduaWZpY2FudC4gIFRoZXJlIGFyZSBzb21lIHJlcXVpcmVkIGZpZWxkIG5hbWVzIChzZWUgYmVsb3cpLCBhbmQgb3RoZXIgZmllbGQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgcHJvcGVydHkgbmFtZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB1c2VycyBhcmUgZ29pbmcgdG8gYmUgYWRkZWQgaW50by48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGZhaWwgaWYgdGhlIGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSBkb2VzIG5vdCBtYXRjaCBhbGwgb2YgdGhlIHJlcXVpcmVkIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBncm91cCB0aGF0IHVzZXJzIGFyZSBiZWluZyBhZGRlZCBpbnRvPC9saT4NCjxsaT5UaGUgaW5wdXQgZmlsZSBtYXkgY29udGFpbiBmaWVsZHMgcmVwcmVzZW50aW5nIHNvbWUgb2YgdGhlIG9wdGlvbmFsIHByb3BlcnRpZXMgaW4gdGhlIHNwZWNpZmllZCBncm91cC48L2xpPg0KPGxpPlRoZSBpbXBvcnQgcHJvY2VzcyB3aWxsIGlnbm9yZSBhbnkgZmllbGRzIGluIHRoZSBpbnB1dCBmaWxlIHRoYXQgYXJlIGVpdGhlciBub3Qga25vd24sIG9yIG1hcCB0byBwcm9wZXJ0aWVzIHRoYXQgYXJlIDxlbT5vZmY8L2VtPiBpbiB0aGUgc3BlY2lmaWVkIHVzZXIgZ3JvdXAuPC9saT4NCjwvdWw+DQo8aDU+Q29sdW1uYXIgRGF0YTwvaDU+DQo8dWw+DQo8bGk+VGhlIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gRmllbGQgLSBUaGUgZGVzaXJlZCB1c2VybmFtZS4NCiAgICA8cD5UaGlzIGZpZWxkIG11c3QgZXhpc3QgaW4gdGhlIGhlYWRlcmxpbmUsIGFuZCBpbiBlYWNoIGFuZCBldmVyeSBsaW5lIG9mIHRoZSBpbnB1dCBmaWxlLiBUaGUgcmVjb3JkIHdpbGwgZmFpbCBpZiBhIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzIGluIHRoZSBkYXRhYmFzZS48L3A+PC9saT4NCjxsaT5UaGUgPHN0cm9uZz5wYXNzd29yZDwvc3Ryb25nPiBGaWVsZCAtIFRvZG88L2xpPg0KPGxpPlRoZSA8c3Ryb25nPmV4cGlyZXM8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5Ecm9wZG93biBGaWVsZHMNCiAgICA8cD5UaGUgdmFsdWUgb2YgZHJvcGRvd24gcHJvcGVydGllcyBpbiBhbiBpbXBvcnQgZmlsZSBpcyByZXByZXNlbnRlZCBhcyB0aGUgc3RyaW5nIHRoYXQgaXMgc2hvd24gaW4gdGhlIGRyb3Bkb3duIGNvbnRyb2wgaW4gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlLjwvcD4NCjwvbGk+DQo8bGk+TXVsdGlzZWxlY3QgRmllbGRzDQogICAgPHA+TXVsdGlzZWxlY3QgZmllbGRzIGFyZSBjb250YWluZWQgd2l0aGluIHRoZSBBU0NJSSBmaWxlIGFzIGEgOiBzZXBhcmF0ZWQgbGlzdCBvZiBzdHJpbmdzLCB3aGVyZSBlYWNoIHN0cmluZyByZXByZXNlbnRzIHRoZSB0ZXh0IHNob3duIGluIHRoZSBtdWx0aXNlbGVjdCBsaXN0PC9wPg0KPC9saT4NCjxsaT5JbWFnZSBGaWVsZHMNCiAgICA8cD5JbWFnZSBhcmUgZmllbGRzIHdobyYjMDM5O3MgY29sdW1uIG5hbWUgbWF0Y2hlcyBhIHByb3BlcnR5IG9mIHR5cGUgSW1hZ2UuICBJZiB0aGlzIGZpZWxkIGlzIGEgcmVxdWlyZWQgcGFydCBvZiB0aGUgZGVzdGluYXRpb24gZ3JvdXAsIHRoZW4gdGhlIG5hbWUgc3BlY2lmaWVkIGluIHRoZXNlIGNvbHVtbnMgbXVzdCBleGlzdCBpbiB0aGUgdXBsb2FkcyBkaXNyZWN0b3J5IG9mIHRoZSBDTVMgaW5zdGFsbGF0aW9uLiAgSWYgdGhlIGltYWdlIGRvZXMgbm90IGV4aXN0LCBhbmQgdGhlIGZpZWxkIGlzIHJlcXVpcmVkLCB0aGVuIHRoZSByZWNvcmQgd2lsbCBmYWlsLjwvcD4NCjwvdWw+DQo8aDU+Tm90ZXM8L2g1Pg0KPHA+VGhlIGltcG9ydCBwcm9jZXNzIGlzIHN1YmplY3QgdG8gdGhlIGxpbWl0YXRpb25zIGltcG9zZWQgYnkgdGhlIGhvc3QgcHJvdmlkZXIsIHN1Y2ggYXMgbWVtb3J5IGxpbWl0YXRpb25zLCBwcm9jZXNzaW5nIHRpbWUsIGZpbGUgc2l6ZSB1cGxvYWQsIGFuZCBzYWZlIG1vZGUgcmVzdHJpY3Rpb25zLiAgQW55IG9uZSBvZiB0aGVzZSBsaW1pdGF0aW9ucyBtYXkgY2F1c2UgdGhlIGltcG9ydCB0byBmYWlsLiBUaGVyZWZvcmUgaXQgaXMgYWR2aXNhYmxlIHRvIGVuc3VyZSB0aGF0IGltcG9ydCBmaWxlcyBhcmUgc21hbGxlciBpbiBzaXplLCBhbmQgc2ltcGxlciBpbiBuYXR1cmUuPC9wPg0KPHA+VGhvdWdoIGV2ZXJ5IGVmZm9ydCBoYXMgYmVlbiBtYWRlIHRvIGVuc3VyZSB0aGF0IGRhdGFiYXNlIGNvcnJ1cHRpb24gd2lsbCBub3Qgb2NjdXIsIGl0IGlzIGFkdmlzYWJsZSB0byBwZXJmb3JtIGEgZGF0YWJhc2UgYmFja3VwIGJlZm9yZSBkb2luZyBhIHVzZXIgaW1wb3J0LjwvcD4NCjxoNT5FeGFtcGxlPC9oNT4NCjxwcmU+DQojI3VzZXJuYW1lLGZpcnN0X25hbWUsbGFzdF9uYW1lLGVtYWlsLGNpdHksc3RhdGUsY291bnRyeSx6aXANCnVzZXIxLHRlc3QsdXNlcix1c2VyMUBzb21lZG9tYWluLmNvbSxzb21ld2hlcmUsVFgsVVMsMTIzNDUNCjwvcHJlPg0KJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnRkZXN0Z3JvdXAnXSA9ICdJbXBvcnRvdmHFpSB1xb4maWFjdXRlO3ZhdGXEvm92IGRvIHRlanRvIHNrdXBpbnknOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnVmxvxb5pxaUgQ1NWIHMmdWFjdXRlO2Jvcic7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ1Zsb8W+acWlIFhNTCBzJnVhY3V0ZTtib3InOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRXhwb3J0b3ZhxaUgdcW+JmlhY3V0ZTt2YXRlxL5vdic7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnRvdmHFpSB1xb4maWFjdXRlO3ZhdGXEvm92JzsKJGxhbmdbJ3Byb21wdF9jbGVhciddID0gJ1Z5xI1pc3RpxaUnOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdDZXN0YSBrIG9iciZhYWN1dGU7emt1JzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnQSBwcm9ibGVtIG9jY3VycmVkIHdpdGggYSBtaXNzaW5nIChidXQgcmVxdWlyZWQpIHVwbG9hZCc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnQ291bGQgbm90IHBhcnNlIHRoZSBwcm92aWRlZCBYTUwgZmlsZSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnQ2Fubm90IGRlbGV0ZSBhIGdyb3VwIHRoYXQgc3RpbGwgaGFzIHVzZXJzJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdUaGlzIHVzZXIgaXMgYWxyZWFkeSBsb2dnZWQgaW4nOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGhlIHRleHQgZnJvbSB0aGUgaW1hZ2Ugd2FzIG5vdCBlbnRlcmVkIGNvcnJlY3RseSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnUG92b2xpxaUgdmlhYyBzaW11bHQmYWFjdXRlO2xueWNoIHByaWhsJmFhY3V0ZTtzZW4maWFjdXRlOyBwb3XFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnVHlweSBzJnVhY3V0ZTtib3Jvdiwga3RvciZlYWN1dGU7IHMmdWFjdXRlOyBwb3XFviZpYWN1dGU7dmF0ZcS+b20gZG92b2xlbiZlYWN1dGU7IG5haHImYWFjdXRlO3ZhxaUgbmEgc2VydmVyJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25SZWZyZXNoVXNlciddID0gJzxoMz5PblJlZnJlc2hVc2VyPC9oMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyIHNlc3Npb24gaXMgcmVmcmVzaGVkLjwvcD4NCjxoND5QYXJhbWV0ZXJzOjwvaDQ+DQo8dWw+DQogIDxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBVc2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZG91dCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBleHBpcmVzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZCBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW4gdG8gdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uTG9nb3V0J10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0IG9mIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBpcyBleHBpcmVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBuZXcgdXNlciBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25SZWZyZXNoVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIHRoZSB1c2VyIHNlc3Npb24gaXMgcmVmcmVzaGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGluZm8gaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBhY2NvdW50IGlzIGRlbGV0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGRlbGV0ZWQnOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0JhY2tlbmQgR3JvdXAnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBOYXNsZWR1aiZ1YWN1dGU7Y2UgbWFrcmEgbSZvY2lyYzvFvnUgYnnFpSBwb3XFvml0JmVhY3V0ZTsgdiB0JnlhY3V0ZTtjaHRvIHBvbGlhY2g6IHskdXNlcm5hbWV9Lic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnVXByYXZ0ZSB0b3RvIHBvbGUgcHJlIHJlc2V0b3ZhbmllIGhlc2xhIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnVXByYXZ0ZSB0b3RvIHBvbGUgcHJlIHJlc2V0b3ZhbmllIGhlc2xhIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdVxb4maWFjdXRlO3ZhdGXEviBzIHQmeWFjdXRlO210byB1xb4maWFjdXRlO3ZhdGXEvnNrJnlhY3V0ZTttIG1lbm9tIHXFviBleGlzdHVqZSc7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdDU1YgZXhwb3J0IG5ldnImYWFjdXRlO3RpbCDFvmlhZG5lIHYmeWFjdXRlO3NsZWRreSc7CiRsYW5nWydwcm9tcHRfdW5mbGRsZW4nXSA9ICdExLrFvmthIHBvxL5hIHByZSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdExLrFvmthIHBvxL5hIHByZSBoZXNsbyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmRsZW5ndGhzJ10gPSAnTWluL01heCBkxLrFvmthIGhlc2xhIG5pZSBqZSBuZXBsYXRuJmFhY3V0ZTsnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9NYXggZMS6xb5rYSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hIG5pZSBqZSBuZXBsYXRuJmFhY3V0ZTsnOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ05lcGxhdG4mYWFjdXRlOyBlLW1haWxvdiZhYWN1dGU7IGFkcmVzYSc7CiRsYW5nWydlcnJvcl9ub2VtYWlsYWRkcmVzcyddID0gJ0UtbWFpbG92JmFhY3V0ZTsgYWRyZXNhIHByZSB0ZW50byAmdWFjdXRlO8SNZXQgbmVib2xpIG4mYWFjdXRlO2pkZW4mZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2VldHRpbmdpbmZvJ10gPSAnUHJvYmwmZWFjdXRlO20gcyBuYXN0YXZlbiZpYWN1dGU7bSB1xb4maWFjdXRlO3ZhdGXEvnNrJnlhY3V0ZTtjaCBpbmZvcm0mYWFjdXRlO2NpaSc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdQcm9ibCZlYWN1dGU7bSBzIG5hc3RhdmVuJmlhY3V0ZTttIHZsYXNub3N0aSc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnVcW+JmlhY3V0ZTt2YXRlxL4gcHJpZGFsICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnVcW+JmlhY3V0ZTt2YXRlxL4gdnltYXphbCAgdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnVmxhc3Rub3PFpSc7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnSG9kbm90YSAocmVndWwmYWFjdXRlO3JueSB2JnlhY3V0ZTtyYXopJzsKJGxhbmdbJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJ10gPSAnVmFyb3ZhbmllOiBUaWV0byBwb2xpYSBvdnBseW5pYSB2ZcS+a29zxaUgdnN0dXBuJnlhY3V0ZTtjaCBwb2wmaWFjdXRlOyBmb3JtdWwmYWFjdXRlO3Jvdi4gWm4maWFjdXRlO8W+ZW4maWFjdXRlO20gdG9odG8gxI0maWFjdXRlO3NsYSBuYSBleGlzdHVqJnVhY3V0ZTtjZWogc3RyJmFhY3V0ZTtua2UgbmVkb3BvcnXEjXVqZW1lLic7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnU3RlIHNpIGlzdCZ5YWN1dGU7LCDFvmUgY2hjZXRlIHptZW5pxaUgbmFzdGF2ZW5pYSBtb2R1bHU/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFLW1haWxvdiZhYWN1dGU7IGFkcmVzYSB1xb4gamUgcG91xb4maWFjdXRlO3ZhbiZhYWN1dGU7JzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ1BvdcW+acWlIGNvb2tpZSBwcmUgemFwYW0mYXVtbDt0YW5pZSBwcmlobGFzb3ZhYyZpYWN1dGU7Y2ggJnVhY3V0ZTtkYWpvdic7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ01lbm8gY29va2llJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnUG92b2xpxaUgZHVwbGljaXRuJmVhY3V0ZTsgZS1tYWlseSc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdFLW1haWxvdiZhYWN1dGU7IGFkcmVzYSBqZSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyAnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnU2smdWFjdXRlOyZzY2Fyb247YcWlIHVkcsW+YcWlICBwcmlobCZhYWN1dGU7c2VuJnlhY3V0ZTtjaCB1xb4maWFjdXRlO3ZhdGXEvm92IHBvbW9jb3UgY29va2llcyA8ZW0+KGNvb2tpZSByZXNldHVqZSBha3Rpdml0dSBuYSBzdHImYWFjdXRlO25rYWNoKTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyhwb3ZvbGnFpSB2aWFjIHXFviZpYWN1dGU7dmF0ZcS+b3YgcyByb3ZuYWtvdSBlLW1haWxvdm91IGFkcmVzb3UpJzsKJGxhbmdbJ2luZm9fdXNlcm5hbWVfaXNfZW1haWwnXSA9ICcocG91xb4maWFjdXRlO3ZhdGXEvm92YSBlLW1haWxvdiZhYWN1dGU7IGFkcmVzYSBqZSB6JmFhY3V0ZTtyb3ZlxYggYWogamVobyBwb3XFviZpYWN1dGU7dmF0ZcS+c2smeWFjdXRlO20gbWVub20gLS0gbmVwb3XFviZpYWN1dGU7dmFqdGUgcyBuYXN0YXZlbiZpYWN1dGU7bSAmcXVvdDtwb3ZvbGnFpSBkdXBsaWNpdG4mZWFjdXRlOyBlLW1haWx5JnF1b3Q7ISknOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICdQb3ZvbGnFpSBkdXBsaWNpdG4mZWFjdXRlOyB2ecW+aWFkYW5pZSBzdHJhdGVuJmVhY3V0ZTtobyBoZXNsYSc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoUG92b2xpxaUgcG91xb4maWFjdXRlO3ZhdGXEvm92aSBwb8W+aWFkYcWlIG8gb2Jub3ZlbmllIGhlc2xhLCBwb2tpYcS+IG5lcmVhZ292YWwgbmEgcHJlZGNoJmFhY3V0ZTtkemFqJnVhY3V0ZTtjdSDFvmlhZG9zxaUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnUG/FvmnFpSBvcHImYWFjdXRlO3ZuZW5pYSAmc2Nhcm9uO3BlY2lmaWNrJmVhY3V0ZTsgcHJlIEZyb250LWVuZCBVc2VyIG1vZHVsPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoWnZ5xI1ham5lIHMmdWFjdXRlOyBwcmUgRkVVc2VycyBtb2R1bCAgcG91xb4maWFjdXRlO3ZhbiZlYWN1dGU7IHJvdm5hayZlYWN1dGU7IG9wciZhYWN1dGU7dm5lbmlhIGFrbyBwcmUgYWRtaW5pc3RyYcSNbiZlYWN1dGU7IHJvemhyYW5pZS4gUG9raWHEviB2eWJlcmV0ZSB0JnVhY3V0ZTt0byBtb8W+bm9zxaUsIGJ1ZCZ1YWN1dGU7IHByZSBGRVVzZXNycyBwb3XFvml0JmVhY3V0ZTsgdmxhc3RuJmVhY3V0ZTsgbmFzdGF2ZW5pYS4pJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1cGxvYWQnXSA9ICdOYWhyYXQmeWFjdXRlOyBzJnVhY3V0ZTtib3IgbmVib2wgbiZhYWN1dGU7amRlbiZ5YWN1dGU7IChpbnRlcm4mYWFjdXRlOyBjaHliYSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbV91cGxvYWQnXSA9ICdQcmkgbmFociZhYWN1dGU7dmFuJmlhY3V0ZTsgcyZ1YWN1dGU7Ym9ydSBkbyZzY2Fyb247bG8gayBjaHliZS4gU2t1c3RlIHRvIHpub3Z1JzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ05ldmxvxb5pbGkgc3RlIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlOyBtZW5vJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdlbWFpbCddID0gJ05ldmxvxb5pbGkgc3RlIGUtbWFpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdOZXZsb8W+aWxpIHN0ZSBoZXNsbyc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nb3V0J10gPSAnRnJvbnRlbmQgVXNlciBvZGhsJmFhY3V0ZTtzZW5pZSc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdGcm9udGVuZCBVc2VyIHByaWhsJmFhY3V0ZTtzZW5pZSc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlVQT1pPUk5FTklFPC9iPiB6bWVuYSBzdCZhYWN1dGU7dmFqJnVhY3V0ZTtjaWNoIHZsYXNub3N0JmlhY3V0ZTssIGt0b3ImZWFjdXRlOyBzJnVhY3V0ZTsgcHJpcmFkZW4mZWFjdXRlOyBza3VwaW4mYWFjdXRlO20gbSZvY2lyYzvFvnUgc3Amb2NpcmM7c29iacWlIHByb2JsJmVhY3V0ZTtteSA8aT4ocHJlZG92JnNjYXJvbjtldGsmeWFjdXRlO20gcHJpIHNrciZhYWN1dGU7dGVuJmlhY3V0ZTsgbmlla3RvciZ5YWN1dGU7Y2ggcG9sJmlhY3V0ZTspPC9pPjwvZm9udD4nOwokbGFuZ1snaW5mb19zbXRwdmFsaWRhdGUnXSA9ICdUJmFhY3V0ZTt0byBmdW5rY2lhIG5lcHJhY3VqZSBwb2Qgd2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnTmV2eXR2JmFhY3V0ZTtyYWp0ZSB2bGFzbm9zxaUgcHJlIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlOyBtZW5vLCBwcmV0b8W+ZSB0byB1xb4gamUgcyZ1YWN1dGU7xI1hc8Wlb3UgbW9kdWx1IEZyb250RW5kVXNlcnMnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydG92YcWlIHXFviZpYWN1dGU7dmF0ZcS+b3YgZG8gQ1NWJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydG9ydG92YcWlJzsKJGxhbmdbJ2ltcG9ydGNzdiddID0gJ0ltcG9ydG92YcWlJzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW5pc3RyJmFhY3V0ZTtjaWEnOwokbGFuZ1snZWRpdHByb3AnXSA9ICdVcHJhdmnFpSB2bGFzbm9zxaUnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW0mYWFjdXRlO2xuYSBkxLrFvmthJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdWeXR2b3JlbiZlYWN1dGU7JzsKJGxhbmdbJ3NvcnRieSddID0gJ1pvcmFkacWlIHBvZMS+YSc7CiRsYW5nWydzb3J0J10gPSAnWm9yYWRlbmllJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1XFviZpYWN1dGU7dmF0ZWxpYSB2byB2eWJyYW5lai92eWJyYW4meWFjdXRlO2NoIHNrdXBpbiZhYWN1dGU7Y2gnOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnT2JtZWR6acWlIHYmeWFjdXRlO3NsZWRreSBkbyc7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdOaWUgamUgbW/Fvm4mZWFjdXRlOyBuJmFhY3V0ZTtqc8WlIHBvbG/Fvmt1IGUtbWFpbCBwcmUgdG9odG8gdcW+JmlhY3V0ZTt2YXRlxL5hLiBLb250YWt0dWp0ZSBhZG1pbmlzdHImYWFjdXRlO3RvcmEgd2VidS4nOwokbGFuZ1sncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgc3RyJmFhY3V0ZTtua3kgcHJlIGZvcm11bCZhYWN1dGU7ciB6bWVueSBoZXNsYSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBzdHImYWFjdXRlO25reSBwcmUgZm9ybXVsJmFhY3V0ZTtyIHptZW55IG5hc3RhdmVuaWEnOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgc3RyJmFhY3V0ZTtua3kgcG8gcHJpaGwmYWFjdXRlO3NlbmkgKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgc3RyJmFhY3V0ZTtua3kgcHJlIG9kaGwmYWFjdXRlO3NlbmllIConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnUG9yYWRpZSc7CiRsYW5nWydwcm9tcHRfbnVtcmVzZXRyZWNvcmQnXSA9ICdQb8SNZXQgdcW+JmlhY3V0ZTt2YXRlbG/Evm92LCBrdG9yJnlhY3V0ZTsgbW9tZW50JmFhY3V0ZTtsbmUgxb5pYWRhaiZ1YWN1dGU7IG8gcmVzZXQgaGVzbGE6JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnT2RzdHJhbmnFpSB2JnNjYXJvbjtldGt5IHomYWFjdXRlO3puYW15IHN0YXImc2Nhcm9uO2llIGFrbyAxIHQmeWFjdXRlO8W+ZGXFiCc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdPZHN0ciZhYWN1dGU7bmnFpSB2JnNjYXJvbjtldGt5IHomYWFjdXRlO3puYW15IHN0YXImc2Nhcm9uO2llIGFrbyAxIG1lc2lhYyc7CiRsYW5nWydyZW1vdmVhbGwnXSA9ICdPZHN0ciZhYWN1dGU7bmnFpSB2JnNjYXJvbjtldGt5IHomYWFjdXRlO3puYW15JzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdTdGUgc2kgaXN0JnlhY3V0ZTs/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnVmxvxb5lbiZ5YWN1dGU7IGJvbCBuZXNwciZhYWN1dGU7dm55IGsmb2FjdXRlO2QsIHNrJnVhY3V0ZTtzdGUgdG8gem5vdnUnOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ0RvxI1hc24meWFjdXRlOyBrJm9hY3V0ZTtkIHByZSB2YSZzY2Fyb247ZSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyBuZWJvbG8gbiZhYWN1dGU7amRlbiZlYWN1dGU7IHYgZGF0YWImYWFjdXRlO3plJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIGZvcm11bCZhYWN1dGU7cmEgcHJlIHZlcmlmaWsmYWFjdXRlO2NpdSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF9lbWFpbHRlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIGZvcm11bCZhYWN1dGU7cmEgcHJlIHphYnVkbnV0JmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ8SOYWwmc2Nhcm9uO2llIGluJnNjYXJvbjt0cnVrY2llIG4mYWFjdXRlO2pkZXRlIHZvIHN2b2plaiBlLW1haWxvdmVqIHNjaHImYWFjdXRlO25reS4nOwokbGFuZ1snZXJyb3JfZGJlcnJvciddID0gJ1Byb2JsZW0gcyBkYXRhYiZhYWN1dGU7em92JzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ1QmdWFjdXRlO3RvIHNwciZhYWN1dGU7dnUgc3RlIGRvc3RhbGksIHByZXRvxb5lIG5pZWt0byBwb8W+aWFkYWwgbyBvYm5vdmVuaWUgemFidWRudXQmZWFjdXRlO2hvIGhlc2xhIGsgdiZhYWN1dGU7JnNjYXJvbjttdSAmdWFjdXRlO8SNdHUgbmEgbmEmc2Nhcm9uO2VqIHN0ciZhYWN1dGU7bmtlLiBQb2tpYcS+IGplIHRvIHRhaywgcG9zdHVwdWp0ZSBwb2TEvmEgbmnFviZzY2Fyb247aWUgdXZlZGVuJnlhY3V0ZTtjaCBpbiZzY2Fyb247dHJ1a2NpJmlhY3V0ZTsuIFBva2lhxL4gbmV0dSZzY2Fyb247JmlhY3V0ZTt0ZSBvIMSNbyBpZGUsIHRhayB0ZW50byBlLW1haWwgcHJvcyZpYWN1dGU7bSBpZ25vcnVqdGUuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnSyZvYWN1dGU7ZCc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdOYXNsZWR1aiZ1YWN1dGU7Y2kgayZvYWN1dGU7ZCBib2wgbiZhYWN1dGU7aG9kbmUgdnlnZW5lcm92YW4meWFjdXRlOyBwcmUgb3ZlcmVuaWUgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7aG8gJnVhY3V0ZTvEjXR1LiBQbyBrbGlrbnV0JmlhY3V0ZTsgbmEgbmFzbGVkdWomdWFjdXRlO2NpIG9ka2F6IHNhIGRvc3RhbmUgbmEgc3RyJmFhY3V0ZTtua3UsIGtkZSB6YWQmYWFjdXRlO3RlIHRlbnRvIGsmb2FjdXRlO2QuUG9sZSBidWRlIHByZWR2eXBsbmVuJmVhY3V0ZTsuIFBva2lhxL4gbmllLCBrJm9hY3V0ZTtkIGplIHR1Oic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0tsaWtudXQmaWFjdXRlO20gbmEgbmFzbGVkdWomdWFjdXRlO2NpIG9ka2F6IHNhIGRvc3RhbmV0ZSBuYSBzdHImYWFjdXRlO25rdSwga2RlIG0mb2NpcmM7xb5ldGUgemFkYcWlIHZ5JnNjYXJvbjtpZSB1dmVkZW4meWFjdXRlOyBrJm9hY3V0ZTtkIGEgb2Jub3ZpxaUgdmEmc2Nhcm9uO2UgaGVzbG8nOwokbGFuZ1snbG9zdHBhc3N3b3JkX2VtYWlsc3ViamVjdCddID0gJ1phYnVkbnV0JmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1snZXJyb3Jfbm9tYWlsZXJtb2R1bGUnXSA9ICdOZW4mYWFjdXRlO2pkZW4meWFjdXRlOyBDTVNNYWlsZXIgbW9kdWwnOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnTmEgZS1tYWlsICVzIGJvbGkgemFzbGFuJmVhY3V0ZTsgaW4mc2Nhcm9uO3RydWtjaWUgcHJlIG9ibm92ZW5pZSBoZXNsYS4gxI5ha3VqZW1lJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnUG9raWHEviBzdGUgemFidWRsaSBhbGVibyBzdHJhdGlsaSBzdm9qZSBoZXNsbywgdGFrIHByb3MmaWFjdXRlO20gdnlwbMWIdGUgc3ZvamUgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbm8gYSBlLW1haWxvbSBkb3N0YW5lbmUgaW4mc2Nhcm9uO3RydWtjaWUgYWtvIHBva3JhxI1vdmHFpSBwcmkgb2Jub3ZlbiZpYWN1dGU7IGhlc2xhJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByaSBzdHJhdGUgaGVzbGEnOwokbGFuZ1snbG9zdHVzZXJuYW1lX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByaSBzdHJhdGUgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7aG8gbWVuYSc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdWbGFzbm9zxaUgJXMgbmVuJmFhY3V0ZTtqZGVuJmFhY3V0ZTsnOwokbGFuZ1sncHJvcHNmb3VuZCddID0gJ1ZsYXNub3PFpSBuJmFhY3V0ZTtqZGVuJmFhY3V0ZTsnOwokbGFuZ1snYWRkcHJvcCddID0gJ1ByaWRhxaUgdmxhc25vc8WlJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdQb3Zpbm4mZWFjdXRlOyBwb2xlICglcykgYm9sbyBwciZhYWN1dGU7emRuZSc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ1phZGFqdGUgbm92JmVhY3V0ZTsgaGVzbG8nOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdQcmF2ZGVwb2RvYm5lIG5pZSBzdGUgcHJpaGwmYWFjdXRlO3NlbiZ5YWN1dGU7JzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdOYXN0YXZlbmlhJzsKJGxhbmdbJ3VzZXJfcmVnaXN0cmF0aW9uJ10gPSAnUmVnaXN0ciZhYWN1dGU7Y2lhJzsKJGxhbmdbJ2Vycm9yX2FjY291bnRleHBpcmVkJ10gPSAnVGVudG8gJnVhY3V0ZTvEjWV0IHZ5cHImc2Nhcm9uO2FsJzsKJGxhbmdbJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnXSA9ICdOZXNwciZhYWN1dGU7dm55IGZvcm0mYWFjdXRlO3QgZS1tYWlsb3ZlaiBhZHJlc3knOwokbGFuZ1snZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnXSA9ICdOZXBsYXRuJnlhY3V0ZTsgZCZhYWN1dGU7dHVtIGV4cGlyJmFhY3V0ZTtjaWUnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdwcm9wZXJ0eSddID0gJ0NoeWJhIHByaSBuYXN0YXZlbiZpYWN1dGU7IHZsYXNub3N0JmlhY3V0ZTsgJXMgcHJlIHXFviZpYWN1dGU7dmF0ZcS+YSAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ05lcGxhbnQmZWFjdXRlOyBJRCBza3VwaW55ICVzJzsKJGxhbmdbJ2hpZGRlbmZpZWxkbWFya2VyJ10gPSAnT3puYcSNZW5pYSBza3J5dCZ5YWN1dGU7Y2ggcG9sJmlhY3V0ZTsnOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0ZhcmJhIHNrcnl0JmVhY3V0ZTtobyBwb8S+YSc7CiRsYW5nWydoaWRkZW4nXSA9ICdTa3J5dCZlYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdWbGFzdG5vc8WlIHMgdCZ5YWN1dGU7bXRvIG1lbm9tIHXFviBib2xhIG5hZGVmaW5vdmFuJmFhY3V0ZTsnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnTmVib2xpIG5hZGVmaW5vdmFuJmVhY3V0ZTsgxb5pYWRuZSB2bGFzdG5vc3RpJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnTmVib2xpIHZ5YnJhbiZlYWN1dGU7IHZsYXNub3N0aSBwcmUgdCZ1YWN1dGU7dG8gc2t1cGludSc7CiRsYW5nWydub2dyb3VwcyddID0gJ8W9aWFkbmUgc2t1cGlueSBuaWUgcyZ1YWN1dGU7IG5hZGVmaW5vdmFuJmVhY3V0ZTsnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdTa3VwaW55IG4mYWFjdXRlO2pkZW4mZWFjdXRlOyc7CiRsYW5nWydlcnJvcl9vbmVncm91cHJlcXVpcmVkJ10gPSAnSmUgbnV0JmVhY3V0ZTsgcHJpcmFkZW5pZSBhc3BvxYggayBqZWRuZWogc2t1cGluZSc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnVnnFvmFkb3ZhxaUgcHJpcmFkZW5pZSBhc3BvxYggZG8gamVkbmVqIHNrdXBpbnknOwokbGFuZ1snYmFjayddID0gJ1NwJmF1bWw7xaUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGplIHBvdmlubiZhYWN1dGU7IHBvbG/FvmthJzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRtYXJrZXInXSA9ICdPem5hxI1pxaUgcG92aW5uJmVhY3V0ZTsgcG9saWEgcyc7CiRsYW5nWydyZXF1aXJlZGZpZWxkY29sb3InXSA9ICdadiZ5YWN1dGU7cmF6bmnFpSBwb8W+YWRvdmFuJmVhY3V0ZTsgcG9saWEnOwokbGFuZ1snbmV4dCddID0gJ8SOYWwmc2Nhcm9uO2llJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnU2t1cGluYSBzIHQmeWFjdXRlO210byBuJmFhY3V0ZTt6dm9tIHXFviBleGlzdHVqZSc7CiRsYW5nWydyZXF1aXJlZCddID0gJ1Z5xb5hZG92YW4mYWFjdXRlOyc7CiRsYW5nWydvcHRpb25hbCddID0gJ1ZvbGl0ZcS+biZhYWN1dGU7JzsKJGxhbmdbJ29mZiddID0gJ1Z5cG4mdWFjdXRlO8WlJzsKJGxhbmdbJ3NpemUnXSA9ICdWZcS+a29zxaUnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihtYXhpbSZhYWN1dGU7bG5hIHJvem1lciB2IHB4IHByZSBqZWRlbiB6IHJvem1lcm92IC0gdiZ5YWN1dGU7JnNjYXJvbjtrYSwgJnNjYXJvbjsmaWFjdXRlO3JrYSknOwokbGFuZ1snbGVuZ3RoJ10gPSAnRMS6xb5rYSc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyPihwb8SNZXQgem5ha292IHYgdGV4dG92b20gcG9saSknOwokbGFuZ1snc2Vsb3B0aW9ucyddID0gJ1BvbG/Fvmt5IHJvemJhxL5vdmFjaWVobyBtZW51IG9kZGVsZW4mZWFjdXRlOyBub3YmeWFjdXRlO21pIHJpYWRrYW1pLic7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpb2J1dHRvbiBsYWJlbHMsIHNlcGFyYXRlZCBieSBsaW5lIGJyZWFrcy4gVmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgZnJvbSB0ZXh0IHdpdGggYSA9IGNoYXJhY3Rlci4gaS5lOiBGZW1hbGU9Zic7CiRsYW5nWydwcm9tcHQnXSA9ICdWZXJlam4meWFjdXRlOyBuJmFhY3V0ZTt6b3YgcG/EvmEnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUeXAnOwokbGFuZ1sndHlwZSddID0gJ1R5cCc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ1N0YXYgcG/EvmEnOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnUCZ5YWN1dGU7dGHFpSBwcmkgc3RyYXRlPGJyLz5Vxb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyc7CiRsYW5nWyd0ZXh0J10gPSAnVGV4dCc7CiRsYW5nWydjaGVja2JveCddID0gJ1phJnNjYXJvbjtrcnQmYWFjdXRlO3ZhY2llIHBvbCZpYWN1dGU7xI1rbyc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ1ZpYWN2JnlhY3V0ZTtiZXJvdiZlYWN1dGU7IHBvbGUnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnU2t1cGluYSByYWRpbyBwcnZrb3YnOwokbGFuZ1snaW1hZ2UnXSA9ICdPYnImYWFjdXRlO3pvayc7CiRsYW5nWydlbWFpbCddID0gJ0UtbWFpbG92JmFhY3V0ZTsgYWRyZXNhJzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnVGV4dG92JmFhY3V0ZTsgb2JsYXPFpSc7CiRsYW5nWydkcm9wZG93biddID0gJ1JvemJhxL5vdmFjaWUgbWVudSc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1ZpdGFqJzsKJGxhbmdbJ2xvZ291dCddID0gJ09kaGwmYWFjdXRlO3NpxaUnOwokbGFuZ1sncHJvbXB0X25ld2dyb3VwbmFtZSddID0gJ1BvdcW+acWlIHRvaG8gbWVubyBza3VwaW55JzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ1VwcmF2IG1vamUgbmFzdGF2ZW5pYSc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0NoeWJhIHByaSBwcmlobCZhYWN1dGU7c2VuJmlhY3V0ZTsgLSBuZXNwciZhYWN1dGU7dm5lIHXFviZpYWN1dGU7dmF0ZcS+c2smZWFjdXRlOyBtZW5vIGFsZWJvIGhlc2xvPyc7CiRsYW5nWydsb2dpbiddID0gJ1ByaWhsJmFhY3V0ZTtzacWlJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnTiZhYWN1dGU7em92IHByaWhsYXNvdmFjaWVobyBwb2wmaWFjdXRlO8SNa2EnOwokbGFuZ1sncHJvbXB0X3VzZXJuYW1lJ10gPSAnVcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbm8nOwokbGFuZ1sncHJvbXB0X2VtYWlsJ10gPSAnRS1tYWlsb3YmYWFjdXRlOyBhZHJlc2EnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnSGVzbG8nOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdaYXBhbSZhdW1sO3RhaiBzaSBtYSBuYSB0b210byBwb8SNJmlhY3V0ZTt0YcSNaSc7CiRsYW5nWydyZWdpc3RlciddID0gJ1JlZ2lzdHJvdmHFpSc7CiRsYW5nWydmb3Jnb3RwdyddID0gJ1phYnVkbnV0JmVhY3V0ZTsgaGVzbG8/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ1phYnVkbnV0JmVhY3V0ZTsgcHJpaGxhc292YWNpZSAmdWFjdXRlO2RhamU/JzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAnViZ5YWN1dGU7Y2hvZHppZSc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtuYSc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdOZWJvbGkgbiZhYWN1dGU7amRlbiZlYWN1dGU7IMW+aWFkbmUgaW5mb3JtJmFhY3V0ZTtjaWUgbyB1xb4maWFjdXRlO3ZhdGXEvm92aSc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnVG90byB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgKCVzKSB1xb4gbmlla2RvIHBvdcW+JmlhY3V0ZTt2YSc7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnUG91xb5pxaUgU01UUCBwcmUgdmFsaWQmYWFjdXRlO2NpdSBlLW1haWxvdiZ5YWN1dGU7Y2ggYWRyaWVzPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbSZhYWN1dGU7bG5hIGTEusW+a2EgaGVzbGEnOwokbGFuZ1sncHJvbXB0X21heHB3bGVuJ10gPSAnTWF4aW0mYWFjdXRlO2xuYSBkxLrFvmthIGhlc2xhJzsKJGxhbmdbJ3Byb21wdF9taW51bmxlbiddID0gJ01pbmltJmFhY3V0ZTtsbmEgZMS6xb5rYSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ01heGltJmFhY3V0ZTtsbmEgZMS6xb5rYSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTtobyBtZW5hJzsKJGxhbmdbJ3Byb21wdF9zZXNzaW9udGltZW91dCddID0gJ1Z5cHImc2Nhcm9uO2FuaWUgc2VkZW5pYSAoc2VrdW5keSknOwokbGFuZ1sncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZSddID0gJ1BvdcW+acWlIGNvb2tpZXMgbmEgdWRyxb5hbmllIHByaWhsJmFhY3V0ZTtzZW5pYSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ1Bvdm9sacWlIGUtbWFpbG92JnVhY3V0ZTsgcmVnaXN0ciZhYWN1dGU7Y2l1JzsKJGxhbmdbJ3Byb21wdF9kZmx0Z3JvdXAnXSA9ICdWJnlhY3V0ZTtjaG9kemlhIHNrdXBpbnkgcHJlIG5vdiZlYWN1dGU7aG8gdcW+JmlhY3V0ZTt2YXRlxL5hJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByZSB6bWVudSBuYXN0YXZlbiZpYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdIZXNsYSBzYSBuZXpob2R1aiZ1YWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ05lc3ByJmFhY3V0ZTt2bmUgdcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbm8nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnTmVzcHImYWFjdXRlO3ZuZSBoZXNsbyc7CiRsYW5nWydlZGl0dXNlciddID0gJ1VwcmF2acWlIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWyd2YWxpZCddID0gJ1NwciZhYWN1dGU7dm5lJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVcW+JmlhY3V0ZTt2YXRlxL5zayZlYWN1dGU7IG1lbm8nOwokbGFuZ1snc3RhdHVzJ10gPSAnU3Rhdic7CiRsYW5nWydlcnJvcl9tZW1iZXJncm91cHMnXSA9ICdUZW50byB1xb4maWFjdXRlO3ZhdGXEviBuaWUgamUgcHJpcmFkZW4meWFjdXRlOyBkbyDFvmlhZG5laiBza3VwaW55JzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnRpZXMnXSA9ICfFvWlhZG5lIHZsYXNub3N0aSc7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ1Bva3VzIG8gaW1wb3J0IGR1cGxpY2l0biZ5YWN1dGU7Y2ggdmxhc3Rub3N0JmlhY3V0ZTsnOwokbGFuZ1sndmFsdWUnXSA9ICdIb2Rub3R5JzsKJGxhbmdbJ2dyb3VwcyddID0gJ1NrdXBpbnknOwokbGFuZ1sncHJvcGVydGllcyddID0gJ1ZsYXNub3N0aSc7CiRsYW5nWydwcm9wbmFtZSddID0gJ04mYWFjdXRlO3pvdiB2bGFzdG5vc3RpJzsKJGxhbmdbJ3Byb3B2YWx1ZSddID0gJ0hvZG5vdGEgdmxhc25vc3RpJzsKJGxhbmdbJ2FkZCddID0gJ1ByaWRhxaUnOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3Qmb2FjdXRlO3JpYSc7CiRsYW5nWydlZGl0J10gPSAnVXByYXZpxaUnOwokbGFuZ1snZXhwaXJlcyddID0gJ1BsYW5vc8WlJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJyZTY2Fyb247cGVjaWZpa3VqdGUgZCZhYWN1dGU7dHVtJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgaG9kJmlhY3V0ZTtuJzsKJGxhbmdbJzI0aHJzJ10gPSAnMjQgaG9kJmlhY3V0ZTtuJzsKJGxhbmdbJzQ4aHJzJ10gPSAnNDggaG9kJmlhY3V0ZTtuJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSB0JnlhY3V0ZTvFvmRlxYgnOwokbGFuZ1snMndlZWtzJ10gPSAnMiB0JnlhY3V0ZTvFvmRuZSc7CiRsYW5nWycxbW9udGgnXSA9ICcxIG1lc2lhYyc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBtZXNpYWNlJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IG1lc2lhY292JzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSByb2snOwokbGFuZ1snbmV2ZXInXSA9ICdOaWtkeSc7CiRsYW5nWydwb3N0aW5zdGFsbG1lc3NhZ2UnXSA9ICdNb2R1bCAmdWFjdXRlO3NwZSZzY2Fyb247bmUgbmFpbiZzY2Fyb247dGFsb3ZhbiZ5YWN1dGU7LjxiciAvPiBOZXphYnVkbml0ZSBuYXN0YXZpxaUgcHImYWFjdXRlO3ZhICAmYW1wO3F1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzJmFtcDtxdW90Oy4nOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdIZXNsbyc7CiRsYW5nWydyZXBlYXRwYXNzd29yZCddID0gJ1pub3ZhJzsKJGxhbmdbJ2Vycm9yX2dyb3VwbmFtZV9leGlzdHMnXSA9ICdTa3VwaW5hIHMgdCZ5YWN1dGU7bXRvIG4mYWFjdXRlO3p2b20gdcW+IGV4aXN0dWplJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ1VwcmF2acWlIHNrdXBpbnUnOwokbGFuZ1snc3VibWl0J10gPSAnT2Rvc2xhxaUnOwokbGFuZ1snY2FuY2VsJ10gPSAnWnJ1JnNjYXJvbjtpxaUnOwokbGFuZ1snZGVsZXRlJ10gPSAnT2RzdHImYWFjdXRlO25pxaUnOwokbGFuZ1snY29uZmlybV9lZGl0Z3JvdXAnXSA9ICdTdGUgc2kgaXN0JnlhY3V0ZTssIMW+ZSB0b3RvIGplIHNwciZhYWN1dGU7dm5lIG5hc3RhdmVuaWVwcmUgdCZ1YWN1dGU7dG8gc2t1cGludT9cbiBWeXBudXQmaWFjdXRlO20gdmxhc3Rub3N0JmlhY3V0ZTsgc2EgbmVvZHN0ciZhYWN1dGU7bmlhIMW+aWFkbmUgJnVhY3V0ZTtkYWplIHZvIHZsYXNub3N0aWFjaCB1xb4maWFjdXRlO3ZhdGXEvmEvc2t1cGlueS4nOwokbGFuZ1snYXJleW91c3VyZV9kZWxldGVncm91cCddID0gJ1N0ZSBzaSBpc3QmeWFjdXRlOywgxb5lIGNoY2V0ZSB6bWF6YcWlIHQmdWFjdXRlO3RvIHNrdXBpbnU/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICdOYW96YWogY2hjZXRlIGtvbXBsZXRuZSB6bWF6YcWlIHQmdWFjdXRlO3RvIHZsYXNub3PFpT9cblZ5bWHFvnUgc2EgdCZ5YWN1dGU7bSBhaiB2JnNjYXJvbjtldGt5IGhvZG5vdHkgdGVqdG8gdmxhc25vc3RpIHUgdcW+JmlhY3V0ZTt2YXRlxL5vY2guJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ05lZG9zdGF0b8SNbiZlYWN1dGU7IHBhcmFtZXRyZSc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICdNZW5vJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnUHJvYmwmZWFjdXRlO20gcHJpIHByaWQmYWFjdXRlO3ZhbiZpYWN1dGU7IHZsYXNub3N0JmlhY3V0ZTsnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwIHJlbGF0aW9uJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cCddID0gJ1Byb2JsZW0gYWRkaW5nIGdyb3VwJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnUHJvYmxlbSBhZGRpbmcgYSB1c2VyIHRvIGEgZ3JvdXAnOwokbGFuZ1snZXJyb3JfY291bGRub3RkZWxldGVwcm9wZXJ0eSddID0gJ1Byb2JsJmVhY3V0ZTttIHMgb2RzdHImYWFjdXRlO25lbiZpYWN1dGU7bSB2bGFzbm9zdCZpYWN1dGU7JzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnTmVuJmFhY3V0ZTtqZGVuJmFhY3V0ZTsgZS1tYWlsb3YmYWFjdXRlOyBhZHJlc2EnOwokbGFuZ1snZXJyb3JfZGVzdGluYXRpb25ub3R3cml0YWJsZSddID0gJ0JleiBwciZhYWN1dGU7diBuYSB6YXBpc292YW5pZSBkbyBjaWXEvm92JmVhY3V0ZTtobyBhZHJlcyZhYWN1dGU7cmEnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ0NoeWJuJmVhY3V0ZTsgcGFyYW1ldHJlJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnU2t1cGluYSBuZWJvbGEgcHJpZGFuJmFhY3V0ZTsnOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdQb3XFvmnFpSc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXInOwokbGFuZ1sndXNlcmZpbHRlciddID0gJ1JlZ3VsJmFhY3V0ZTtybnkgdiZ5YWN1dGU7cmF6IHByZSB1xb4maWFjdXRlO3ZhdGXEvnNrJmVhY3V0ZTsgbWVubyc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ1BvcGlzJzsKJGxhbmdbJ2dyb3VwbmFtZSddID0gJ04mYWFjdXRlO3pvdiBza3VwaW55JzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ1ByJmlhY3V0ZTtzdHVwIHphbWlldG51dCZ5YWN1dGU7JzsKJGxhbmdbJ2Vycm9yJ10gPSAnQ2h5YmEnOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdQcmlkYcWlIHNrdXBpbnUnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRvdmHFpSBza3VwaW51JzsKJGxhbmdbJ2FkZHVzZXInXSA9ICdQcmlkYcWlIHXFviZpYWN1dGU7dmF0ZcS+YSc7CiRsYW5nWyd1c2Vyc2ZvdW5kJ10gPSAnVcW+JmlhY3V0ZTt2YXRlbGlhIHNwbMWIdWomdWFjdXRlO2NpIGtyaXQmZWFjdXRlO3JpYSB2eWjEvmFkJmFhY3V0ZTt2YW5pYSc7CiRsYW5nWydncm91cCddID0gJ1NrdXBpbmEnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdWeWJyYcWlIHNrdXBpbnUnOwokbGFuZ1sncmVnaXN0cmF0aW9uX3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmwmb2FjdXRlO25hIHByZSByZWdpc3RyJmFhY3V0ZTtjaXUnOwokbGFuZ1snbG9nb3V0X3RlbXBsYXRlJ10gPSAnJlNjYXJvbjthYmxvbiZhYWN1dGU7IHByZSBvZGhsJmFhY3V0ZTtzZW5pZSc7CiRsYW5nWydsb2dpbl90ZW1wbGF0ZSddID0gJyZTY2Fyb247YWJsJm9hY3V0ZTtuYSBwcmUgcHJpaGwmYWFjdXRlO3NlbmllJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnUHJlZHZvxL5ieSc7CiRsYW5nWyd1c2VycyddID0gJ1XFviZpYWN1dGU7dmF0ZWxpYSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdGcm9udGVuZCBVc2VyIE1hbmFnZW1lbnQgKHNwciZhYWN1dGU7dmEgdcW+JmlhY3V0ZTt2YXRlxL5vdiknOwokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdBbGxvdyB1c2VycyB0byBsb2cgaW4gdG8gdGhlIGZyb250ZW5kIG9mIHlvdXIgc2l0ZSc7CiRsYW5nWydkZWZhdWx0ZnJvbnRwYWdlJ10gPSAnViZ5YWN1dGU7Y2hvZHppYSBzdHImYWFjdXRlO25rYSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnU3RyJmFhY3V0ZTtua2EgcyBwb3NsZWRuJnlhY3V0ZTttIHByJmlhY3V0ZTtzdHVwb20nOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnSW4mYWFjdXRlOyBzdHImYWFjdXRlO25rYSc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnVmxvxb50ZSB0ZXh0IHogb2JyJmFhY3V0ZTt6a2EnOwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sl_SI.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdPYiBzcHJlbWVtYmkgdXBvcmFibmkmc2Nhcm9uO2tlIHNrdXBpbmUnOwokbGFuZ1snZXJyb3JfdG9vbWFueXNlbGVjdGVkJ10gPSAnWmEgc2t1cGluc2tlIG9wZXJhY2lqZSBqZSBpemJyYW5paCBwcmV2ZcSNIHVwb3JhYm5pa292Li4uIFByb3NpbW8sIG9tZWppdGUgbmEgMjUwIGFsaSBtYW5qLic7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9zZWxlY3RlZCddID0gJ1N0ZSBwcmVwcmnEjWFuaSwgZGEgxb5lbGl0ZSBpemJyaXNhdGkgaXpicmFuZSB1cG9yYWJuaWtlPyc7CiRsYW5nWydkZWxldGVfc2VsZWN0ZWQnXSA9ICdJemJyaSZzY2Fyb247aSBpemJyYW5lJzsKJGxhbmdbJ3Byb21wdF9yYW5kb211c2VybmFtZSddID0gJ0dlbmVyaXJhaiBuYWtsanXEjW5vIHVwb3JhYm5pJnNjYXJvbjtrbyBpbWUgb2IgZG9kYWphbmp1IG5vdmloIMSNbGFub3YnOwokbGFuZ1snbW9udGhzJ10gPSAnbWVzZWNldic7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnUHJpdnpldG8gb2Jkb2JqZSB2ZWxqYXZub3N0aSDEjWxhbnN0dmEnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnTmFzdGF2aXR2ZSBvYnZlJnNjYXJvbjvEjWFuamEnOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdOYXN0YXZpdHZlIGxhc3Rub3N0aSc7CiRsYW5nWydyZWRpcmVjdGlvbl9zZXR0aW5ncyddID0gJ05hc3Rhdml0dmUgcHJldXNtZXJpdGV2JzsKJGxhbmdbJ2dlbmVyYWxfc2V0dGluZ3MnXSA9ICdTcGxvJnNjYXJvbjtuZSBuYXN0YXZpdHZlJzsKJGxhbmdbJ3Nlc3Npb25fc2V0dGluZ3MnXSA9ICdOYXN0YXZpdHZlIHNlaiBpbiBwaSZzY2Fyb247a290a292JzsKJGxhbmdbJ2ZpZWxkX3NldHRpbmdzJ10gPSAnTmFzdGF2aXR2ZSBwb2xqJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ096bmFrYSBwb3phYmxqZW5vIHVwb3JhYm5pJnNjYXJvbjtrbyBpbWUgc2UgbGFoa28gdXBvcmFiaSBzYW1vIG5hIG9idmV6bmloIHBvbGppaCc7CiRsYW5nWydwcm9wX3RleHRhcmVhX3d5c2l3eWcnXSA9ICdEb3ZvbGkgdXBvcmFibyB2aXp1YWxuZWdhIHVyZWpldmFsbmlrYSBuYSB0ZW0gdGVrc3Rvdm5lbSBwb2xqdSc7CiRsYW5nWydpbmZvX2Nvb2tpZXN0b3JlbWVtYmVyJ10gPSAnPHN0cm9uZz5Qb3pvcjogPC9zdHJvbmc+IFVwb3JhYmxqYSBtY3J5cHQgZnVua2NpamUgemEgZW5rcmlwY2lqby4gT2IgbmFtZXN0aXR2aSBkb2RhdGVrIG1jcnlwdCBuaSBiaWwgemF6bmFuLiBQcm9zaW1vLCBvYnZlc3RpdGUgYWRtaW5pc3RyYXRvcmphLic7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICdVcmVqYW5qZSB1cG9yYWJuaWthJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnQnJleiBpbmxpbmUgb2JyYXpjZXYnOwokbGFuZ1snaW5mb19sb3N0dW4nXSA9ICdLbGlrbml0ZSwgxI1lIHN0ZSBwb3phYmlsaSB1cG9yYWJuaSZzY2Fyb247a28gaW1lIGluIGdlc2xvJzsKJGxhbmdbJ2luZm9fZm9yZ290cHcnXSA9ICdLbGlrbml0ZSwgxI1lIHN0ZSBwb3phYmlsaSB2YSZzY2Fyb247ZSBnZXNsbyc7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJ0tsaWtuaXRlIHphIG9kamF2byc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2xpa25pdGUsIMSNZSDFvmVsaXRlIG5hc3Rhdml0aSB2YSZzY2Fyb247ZSBnZXNsbyBhbGkgZHJ1Z2UgaW5mb3JtYWNpamUnOwokbGFuZ1sndmlld3VzZXJfdGVtcGxhdGUnXSA9ICdQb2dsZWogcHJlZGxvZ28gdXBvcmFibmlrYSc7CiRsYW5nWydldmVudCddID0gJ0RvZ29kZWsnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ09idmVzdGlsbyBvIEZFVSBkb2dvZGt1JzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ0UtcG8mc2Nhcm9uO3RuaSBuYXNsb3ZpIHphIG9idmVzdGlsYSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlJ10gPSAnUHJlZGxvZ2UgemEgb2J2ZXN0aWxhIHBvIEUtcG8mc2Nhcm9uO3RpJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fc3ViamVjdCddID0gJ1phZGV2YSAoc3ViamVjdCkgb2J2ZXN0aWwgcG8gRS1wbyZzY2Fyb247dGknOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbnMnXSA9ICdPYnZlc3RpbGEgcG8gRS1wbyZzY2Fyb247dGknOwokbGFuZ1snT25Mb2dpbiddID0gJ09iIHByaWphdmknOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdPYiBvZGphdmknOwokbGFuZ1snT25FeHBpcmVVc2VyJ10gPSAnT2IgaXp0ZWt1IHNlamUnOwokbGFuZ1snT25DcmVhdGVVc2VyJ10gPSAnT2IgcmVnaXN0cmFjaWppJzsKJGxhbmdbJ09uRGVsZXRlVXNlciddID0gJ09iIGl6YnJpc3UgdXBvcmFibmlrYSc7CiRsYW5nWydPblVwZGF0ZVVzZXInXSA9ICdPYiBzcHJlbWVtYmkgbmFzdGF2aXRldic7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnT2IgdXN0YW5vdml0dmkgc2t1cGluZSc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnT2IgaXpicmlzdSBza3VwaW5lJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcHJlbXNnJ10gPSAnVXBvcmFibmkmc2Nhcm9uO2tvIGltZSwga2kgdXN0cmV6YSBwb2RhdGtvbSwga2kgc3RlIGppaCB2cGlzYWxpLCBqZSBiaWxvIHVzcGUmc2Nhcm9uO25vIG5hamRlbm8uJzsKJGxhbmdbJ3lvdXJfdXNlcm5hbWVfaXMnXSA9ICdWYSZzY2Fyb247ZSB1cG9yYWJuaSZzY2Fyb247a28gaW1lIGplJzsKJGxhbmdbJ2xvc3R1bmNvbmZpcm1fcG9zdG1zZyddID0gJ1N2ZXR1amVtbyB2YW0sIGRhIHNpIHRlIHBvZGF0a2Ugc2hyYW5pdGUgbmEgdmFybm8gbG9rYWNpam8uJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl9jaGFuZ2Vfc2V0dGluZ3MnXSA9ICdJRCBzdHJhbmkvYWxpYXMgemEgcHJldXNtZXJpdGV2IHBvIHNwcmVtZW1iaSBwb2RhdGtvdic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfdmVyaWZ5X2NvZGUnXSA9ICdJRCBzdHJhbmkvYWxpYXMgemEgcHJldXNtZXJpdGV2IHBvIHByZXZlcmphbmp1IGtvZGUgKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ1ByZWRsb2dhIHphIHBvemFibGplbm8gdXBvcmFibmkmc2Nhcm9uO2tvIGltZSc7CiRsYW5nWydsb3N0dW5fY29uZmlybV90ZW1wbGF0ZSddID0gJ1ByZWRsb2dhIHphIHBvdHJkaXRldiBwb3phYmxqZW5lZ2EgdXBvcmFibmkmc2Nhcm9uO2tlZ2EgaW1lbmEnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdOYXBha2E6IFZuZSZzY2Fyb247ZW5pbSBuYXN0YXZpdHZhbSB1c3RyZXphIHZlxI0gcmHEjXVub3YnOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnTmFwYWthOiBOZSBuYWpkZW0gdXN0cmV6bmVnYSB1cG9yYWJuaWthJzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdOYXBha2E6IE5lIG5hamRlbSBza3VwaW5lIHMgdGVtIGltZW5vbSc7CiRsYW5nWydyZWFkb25seSddID0gJ1NhbW8gemEgYnJhbmplJzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdSYXpyZWQgemEgdXJlamFuamUgdXBvcmFibmlrb3YnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnT2RqYXZsamVuIHMgc3RyYW5pIGFkbWluaXN0cmF0b3JqYSc7CiRsYW5nWydwcm9tcHRfbG9nZ2VkaW5vbmx5J10gPSAnUHJpa2HFvmkgc2FtbyBwcmlqYXZsamVuZSB1cG9yYWJuaWtlJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdPZGphdmkgdGVnYSB1cG9yYWJuaWthJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ05hc3Rhdml0dmUgdXBvcmFibmlrYSc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ1pnb2RvdmluYSB1cG9yYWJuaWthJzsKJGxhbmdbJ2V4cG9ydCddID0gJ0l6dm96aSc7CiRsYW5nWydjbGVhciddID0gJ0l6YnJpJnNjYXJvbjtpJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VyaGlzdG9yeSddID0gJ0l6dm96aSB1cG9yYWJuaWtvdm8gemdvZG92aW5vIHYgQVNDSUksIGtpIGltYSBuYWptYW5qJzsKJGxhbmdbJ3Byb21wdF9jbGVhcnVzZXJoaXN0b3J5J10gPSAnSXpicmkmc2Nhcm9uO2kgdXBvcmFibmlrb3ZvIHpnb2Rvdmlubywga2kgaW1hIG5ham1hbmonOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnU3RlIHBvemFiaWxpIHVwb3JhYm5pJnNjYXJvbjtrbyBpbWUgYWxpIGdlc2xvPyc7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdJenZvemkgZGVmaW5pY2lqbyBza3VwaW5lIChpbiBuYXN0YXZpdHZlKSB2IFhNTCc7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeW1haW50ZW5hbmNlJ10gPSAnVnpkcsW+ZXZhbmplIHpnb2RvdmluZSB1cG9yYWJuaWtvdic7CiRsYW5nWyd5ZXMnXSA9ICdEYSc7CiRsYW5nWydubyddID0gJ05lJzsKJGxhbmdbJ3Byb21wdF9vZiddID0gJ29kJzsKJGxhbmdbJ2RhdGVfYWxscmVjb3JkcyddID0gJyoqIGJyZXogb21laml0dmUgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnc3Rhcm9zdCAxIHVybyc7CiRsYW5nWydkYXRlX3NpeGhvdXJvbGQnXSA9ICdzdGFyb3N0IDYgdXInOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnc3Rhcm9zdCAxMiB1cic7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ3N0YXJvc3QgMSBkYW4nOwokbGFuZ1snZGF0ZV9vbmV3ZWVrb2xkJ10gPSAnc3Rhcm9zdCAxIHRlZGVuJzsKJGxhbmdbJ2RhdGVfdHdvd2Vla3NvbGQnXSA9ICdzdGFyb3N0IDIgdGVkbmEnOwokbGFuZ1snZGF0ZV9vbmVtb250aG9sZCddID0gJ3N0YXJvc3QgMSBtZXNlYyc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnc3Rhcm9zdCAzIG1lc2VjZSc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ3N0YXJvc3QgNiBtZXNlY2V2JzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ3N0YXJvc3QgMSBsZXRvJzsKJGxhbmdbJ3RpdGxlX2dyb3Vwc29ydCddID0gJ0dydXBpcmFuamUgaW4gc29ydGlyYW5qZSc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnWmFwaXNpLCBraSB1c3RyZXpham8ga3JpdGVyaWp1JzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9kZXNjJ10gPSAnVXBvcmFibmkmc2Nhcm9uO2tvIGltZSBwYWRham/EjWUnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2FzYyddID0gJ1Vwb3JhYm5pJnNjYXJvbjtrbyBpbWUgbmFyYSZzY2Fyb247xI1ham/EjWUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfZGVzYyddID0gJ0RhdHVtIHBhZGFqb8SNZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdEYXR1bSBuYXJhJnNjYXJvbjvEjWFqb8SNZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdUaXAgZG9nb2RrYSBwYWRham/EjWUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdUaXAgZG9nb2RrYSBuYXJhJnNjYXJvbjvEjWFqb8SNZSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdJUCBuYXNsb3YgcGFkYWpvxI1lJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnSVAgbmFzbG92IG5hcmEmc2Nhcm9uO8SNYWpvxI1lJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdOZSBuYWpkZW0gemdvZG92aW5lJzsKJGxhbmdbJ3Jlc2V0J10gPSAnUG9uYXN0YXZpJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dydXBpcmFqIHBvIElQIG5hc2xvdnUnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdGaWx0ZXIgcG8gdGlwdSBkb2dvZGthJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1ByaWthxb5pIHNhbW8gZG9nb2RrZSwga2kgc28gbWFuaiBrb3Q6JzsKJGxhbmdbJ3Byb21wdF9wYWdlbGltaXQnXSA9ICdPbWVqaXRldiBzdHJhbmknOwokbGFuZ1snZm9yJ10gPSAnemEnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnknXSA9ICdQb3JvxI1pbG8gbyB6Z29kb3ZpbmkgdXBvcmFibmlrYSc7CiRsYW5nWyd1bmtub3duJ10gPSAnTmV6bmFubyc7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnSVAgbmFzbG92JzsKJGxhbmdbJ3Byb21wdF9ldmVudHR5cGUnXSA9ICdUaXAgZG9nb2RrYSc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdHVtJzsKJGxhbmdbJ3Byb21wdF9yZXR1cm4nXSA9ICdOYXphaic7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnVXZveiBrb27EjWFuJzsKJGxhbmdbJ3Byb21wdF9saW5lc3Byb2Nlc3NlZCddID0gJ09iZGVsYW5paCB2cnN0aWMnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ1phem5hbmloIG5hcGFrJzsKJGxhbmdbJ3Byb21wdF9yZWNvcmRzYWRkZWQnXSA9ICdaYXBpc292IGRvZGFuaWgnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3ByZWxucyddID0gJ05lIG5hamRlbSBuYXN0YXZpdGV2IHphIHNrdXBpbm8gJXMnOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdOZSBtb3JlbSBkb2JpdGkgb2Rnb3ZvcmEgcyBTTVRQIHN0cmXFvm5pa2EnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnSXpicmFuYSBkYXRvdGVrYSAoJXMpIG5lIG9ic3RhamEnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ05hcGHEjW5hIHZyZWRub3N0IHphIGl6YmlybyAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ1BvbGplICVzIHByZXNlZ2EgbmFqdmXEjWpvIGRvdm9samVubyBkb2zFvmlubyc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ05hcGFrYSBwcmkgdXZvenUgKHZyc3RpY2EgJXMpOiAlcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0eWRlZm5zJ10gPSAnTmUgbW9yZW0gZG9iaXRpIHZyZWRub3N0aSBuYXN0YXZpdHZlIChpbnRlcm5hIG5hcGFrYSknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnVGXFvmF2ZSBwcmkgbmFzdGF2bGphbmp1IHVwb3JhYm5pa292aWggbmFzdGF2aXRldic7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnTmUgbmFqZGVtIHN0b2xwY2EgemEgb2J2ZXpubyBwb2xqZSAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ05lIG5hamRlbSBuYXN0YXZpdGV2IGl6YnJhbmUgc2t1cGluZSc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnRGF0b3Rla2EgemEgdXZveiBuaSB2IHByYXZpbG5lbSB6YXBpc3UnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ05lIG1vcmVtIG9kcHJldGkgZGF0b3Rla2UnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnVXZvemkgdXBvcmFibmlrZSB2IHRvIHNrdXBpbm8nOwokbGFuZ1sncHJvbXB0X2ltcG9ydGZpbGVuYW1lJ10gPSAnVmhvZG5hIENTViBkYXRvdGVrYSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ1Zob2RuYSBYTUwgZGF0b3Rla2EnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnSXp2b3ppIHVwb3JhYm5pa2UnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHVzZXJzJ10gPSAnVXZvemkgdXBvcmFibmlrZSc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdJemJyaSZzY2Fyb247aSc7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ1BvdCB6YSBzaHJhbmpldmFuamUgc2xpayc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ05pc3RlIGl6YnJhbGkgZGF0b3Rla2UgemEgcHJlbm9zIChvYnZlem5vKSc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnTmUgbW9yZW0gcHJlYnJhdGkgcG9kYW5lIFhNTCBkYXRvdGVrZSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnTmUgbW9yZW0gaXpicmlzYXRpIHNrdXBpbm8sIGtpIHZzZWJ1amUgdXBvcmFibmlrZSc7CiRsYW5nWydlcnJvcl9ub3JlcGVhdGVkbG9naW5zJ10gPSAnVGEgdXBvcmFibmlrIGplIMW+ZSBwcmlqYXZsamVuJzsKJGxhbmdbJ2Vycm9yX2NhcHRjaGFtaXNtYXRjaCddID0gJ0Jlc2VkaWxvIHMgc2xpa2Ugc3RlIHByZXBpc2FsaSBuYXBhxI1ubyc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnRG92b2xpIHVwb3JhYm5pa29tIHZlxI1rcmF0bm8gcHJpamF2byc7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnS2F0ZXJlIGtvbsSNbmljZSBzbGlrb3ZuaWggZGF0b3RlayBsYWhrbyB1cG9yYWJuaWtpIG5hbG/Fvmlqbyc7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlVXNlciddID0gJzxoMz5PbkRlbGV0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgZGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZVVzZXInXSA9ICc8aDM+T25DcmVhdGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PblVwZGF0ZVVzZXInXSA9ICc8aDM+T25VcGRhdGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIHVwZGF0ZWQgKGVpdGhlciBieSB1c2VyIHRoZW1zZWxmIG9yIGFkbWluKTwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlR3JvdXAnXSA9ICc8aDM+T25DcmVhdGVHcm91cDxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZ3JvdXAgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIGdyb3VwIG5hbWU8L2xpPg0KPGxpPjxlbT5kZXNjcmlwdGlvbjwvZW0+IC0gVGhlIGdyb3VwIGRlc2NyaXB0aW9uPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uRGVsZXRlR3JvdXAnXSA9ICc8aDM+T25EZWxldGVHcm91cDxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgZ3JvdXAgaXMgZGVsZXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIGdyb3VwIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25Mb2dpbiddID0gJzxoMz5PbkxvZ2luPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW48L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgaWQgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWQgaW4gdXNlcjwvbGk+DQo8bGk+PGVtPmlwPC9lbT4gLSBUaGUgaXAgYWRkcmVzcyBvZiB0aGUgY2xpZW50PC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ291dCddID0gJzxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBsb2dnZWRvdXQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25FeHBpcmVVc2VyJ10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gZXhwaXJlczwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+dXNlcm5hbWU8L2VtPiAtIFRoZSBuYW1lIG9mIHRoZSBleHBpcmVkIHVzZXI8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8L3VsPg0KJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dpbiddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluIHRvIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ291dCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIG91dCBvZiB0aGUgc3lzdGVtJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIHNlc3Npb24gaXMgZXhwaXJlZCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgbmV3IHVzZXIgaXMgY3JlYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpbmZvIGlzIHVwZGF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgYWNjb3VudCBpcyBkZWxldGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyB1cGRhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBncm91cCBpcyBkZWxldGVkJzsKJGxhbmdbJ2JhY2tlbmRfZ3JvdXAnXSA9ICdCYWNrZW5kIHNrdXBpbmEnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBWIHRlaCBwb2xqaWggbGFoa28gdXBvcmFiaXRlIG5hc2xlZG5qZSBtYWtyZTogeyR1c2VybmFtZX0seyRncm91cH0uIEtvIHVwb3JhYmxqYXRlIG1ha3JvIHskZ3JvdXB9IGJvIHNpc3RlbSB6YW1lbmphbCBpbWUgc2t1cGluZSBwcnZlZ2EgxI1sYW5hIGluIHByZXVzbWVyaWwgbmEgdG8gc3RyYW4uJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdVcmVkaXRlIHRvIHBvbGplLCDEjWUgxb5lbGl0ZSBzcHJlbWVuaXRpIGdlc2xvIHVwb3JhYm5pa2EnOwokbGFuZ1snaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCddID0gJ1VyZWRpdGUgdG8gcG9samUsIMSNZSDFvmVsaXRlIHNwcmVtZW5pdGkgZ2VzbG8gdXBvcmFibmlrYSc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdVcG9yYWJuaWsgcyB0ZW0gdXBvcmFibmkmc2Nhcm9uO2tpbSBpbWVub20gxb5lIG9ic3RhamEnOwokbGFuZ1snbm9jc3ZyZXN1bHRzJ10gPSAnTmkgcmV6dWx0YXRvdiBpeiBDU1YgaXp2b3phJzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0RvbMW+aW5hIHVwb3JhYm5pJnNjYXJvbjtrZWdhIGltZW5hJzsKJGxhbmdbJ3Byb21wdF9wd2ZsZGxlbiddID0gJ0RvbMW+aW5hIGdlc2xhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZGxlbmd0aHMnXSA9ICdNaW4vTWF4IGRvbMW+aW5pIGdlc2xhIHN0YSBuYXBhxI1uaSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTWluL01heCBkb2zFvmluaSB1cG9yYWJuaSZzY2Fyb247a2VnYSBpbWVuYSBzdGEgbmFwYcSNbmknOwokbGFuZ1snZXJyb3JfaW52YWxpZGVtYWlsYWRkcmVzcyddID0gJ05hcGHEjWVuIEUtbWFpbCBuYXNsb3YnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdFLXBvJnNjYXJvbjt0bmkgbmFzbG92IHphIHRhIHJhxI11biBuaSBiaWwgbmFqZGVuJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdUZcW+YXZlIHByaSBuYXN0YXZsamFuanUgdXBvcmFibmlrb3ZpaCBpbmZvcm1hY2lqJzsKJGxhbmdbJ2Vycm9yX3NldHRpbmdwcm9wZXJ0eSddID0gJ1Rlxb5hdmEgcHJpIGRvZGVsamV2YW5qdSBuYXN0YXZpdHZlJzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVcG9yYWJuaWsgZG9kYW4gJXMgPSAlcyc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdVcG9yYWJuaWsgaXpicmlzYW4gdWlkPSVzJzsKJGxhbmdbJ3Byb3BlcnR5ZmlsdGVyJ10gPSAnTmFzdGF2aXRldic7CiRsYW5nWyd2YWx1ZXJlZ2V4J10gPSAnVnJlZG5vc3QgKHJlZ3VsYXJuaSBpenJheiknOwokbGFuZ1snd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnXSA9ICdQb3pvcjogdGEgcG9samEgaW1ham8gdnBsaXYgbmEgdmVsaWtvc3QgcG9saiB6YSBvYnJhemNlLiBabWFuaiZzY2Fyb247ZXZhbmplIHRlZ2EgJnNjYXJvbjt0ZXZpbGEgbmEgb2JzdG9qZcSNaSBzdHJhbmkgbmkgcHJpcG9yb8SNbGppdmEuJzsKJGxhbmdbJ2NvbmZpcm1fc3VibWl0cHJlZnMnXSA9ICdTdGUgcHJlcHJpxI1hbmksIGRhIMW+ZWxpdGUgbmFzdGF2aXRpIG1vxb5ub3N0aSBtb2R1bGE/JzsKJGxhbmdbJ2Vycm9yX2VtYWlsYWxyZWFkeXVzZWQnXSA9ICdFLW1haWwgbmFzbG92IGplIMW+ZSB2IHVwb3JhYmknOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnVXBvcmFiaSBwaSZzY2Fyb247a290a2UgemEgc2hyYW5pdGV2IHByaWphdmUnOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdJbWUgcGkmc2Nhcm9uO2tvdGthJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnRG92b2xpIHBvZHZvamVuZSBFLW1haWwgbmFzbG92ZSc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdFLW1haWwgbmFzbG92IGplIHVwb3JhYm5pJnNjYXJvbjtrbyBpbWUnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnUG9pemt1c2kgb2hyYW5pdGkgcHJpamF2bGplbmUgdXBvcmFibmlrZSB6IHVwb3JhYm8gcGkmc2Nhcm9uO2tvdGtvdiA8ZW0+KHBpJnNjYXJvbjtrb3RlayBqZSBwb25hc3RhdmxqZW4gb2IgYWt0aXZub3N0aSBuYSBzdHJhbmkpPC9lbT4nOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfZW1haWxzJ10gPSAnKGRvdm9saSB2ZcSNIHVwb3JhYm5pa292IHogaXN0aW0gRS1wbyZzY2Fyb247dG5pbSBuYXNsb3ZvbSknOwokbGFuZ1snaW5mb191c2VybmFtZV9pc19lbWFpbCddID0gJyh1cG9yYWJuaWtvdiBFLXBvJnNjYXJvbjt0bmkgbmFzbG92IGplIG5qZWdvdm8gdXBvcmFibmkmc2Nhcm9uO2tvIGltZSAtLSB0ZSBtb8W+bm9zdGkgbmUgbmFzdGF2aXRlIGhrcmF0aSB6IG1vxb5ub3N0am8gJnF1b3Q7RG92b2xpIHBvZHZvamVuZSBFX21haWwgbmFzbG92ZSZxdW90OyEpJzsKJGxhbmdbJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnRG92b2xpIHBvZHZvamVuZSAmcXVvdDtwb3phYmxqZW5vIGdlc2xvJnF1b3Q7IG9wb21uaWtlPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoZG92b2xpIHVwb3JhYm5pa29tIG9kZGFqbyB6YWh0ZXZrYSB6YSBwb3Zybml0ZXYgZ2VzbGEsIMSNZXByYXYgc2UgbmlzbyBvZHp2YWxpIG5hIHByZWomc2Nhcm9uO25qaSB6YWh0ZXZlayknOwokbGFuZ1sncHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICdVcG9yYWJpIHNwZWNpZmnEjW5lIHByYXZpY2UgemEgZnJvbnQtZW5kIHVwb3JhYm5pa2U/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhQb25hdmFkaSBzbyBwcmF2aWNlIGZyb250LWVuZCB1cG9yYWJuaWtvdiBlbmFrZSB0aXN0aW0gdiBhZG1pbmlzdHJhY2lqaSwga290IG5wci4gZG9kYWogdXBvcmFibmlrYSwgZG9kYWogc2t1cGlubyBpdGQuIMSMZSBpemJlcmV0ZSB0byBtb8W+bm9zdCwgYm9zdGUgbGFoa28gaXpiaXJhbGkgbG/EjWVuZSBwcmF2aWNlIHphIGZyb250LWVuZCB1cG9yYWJuaWtlKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnTmUgbmFqZGVtIG5hbG/FvmVuZSBkYXRvdGVrZSAoaW50ZXJuYSBuYXBha2EpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJ10gPSAnUHJpJnNjYXJvbjtsbyBqZSBkbyBuYXBha2UgcHJpIG5hbGFnYW5qdSBkYXRvdGVrZS4gUHJvc2ltbyBwb2l6a3VzaXRlIHBvbm92bm8nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VzZXJuYW1lJ10gPSAnTmlzdGUgdnBpc2FsaSB1cG9yYWJuaSZzY2Fyb247a2VnYSBpbWVuYSc7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdOaXN0ZSB2cGlzYWxpIEUtbWFpbCBuYXNsb3ZhJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdwYXNzd29yZCddID0gJ05pc3RlIHZwaXNhbGkgZ2VzbGEnOwokbGFuZ1snZnJvbnRlbmR1c2VyX2xvZ291dCddID0gJ09kamF2YSBmcm9udGVuZCB1cG9yYWJuaWthJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ1ByaWphdmEgZnJvbnRlbmQgdXBvcmFibmlrYSc7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlVTRSBDQVVUSU9OPC9iPiB3aGVuIGNoYW5naW5nIGV4aXN0aW5nIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzaWduZWQgdG8gZ3JvdXBzLCB5b3UgbWF5IHBvdGVudGlhbGx5IGNhdXNlIGRhbWFnZSBhbmQgYnJlYWsgYW4gZXhpc3Rpbmcgc2l0ZSA8aT4oZXNwZWNpYWxseSBpZiB5b3UgcmVkdWNlIGZpZWxkIGxlbmd0aHMsIGV0Yyk8L2k+PC9mb250Pic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ1RhIGZ1bmtjaWphIG5lIGRlbHVqZSBuYSBXaW5kb3dzJzsKJGxhbmdbJ21zZ19kb250Y3JlYXRldXNlcm5hbWUnXSA9ICdOZSB1c3R2YXJqYWp0ZSBtb8W+bm9zdGkgemEgdXBvcmFibmkmc2Nhcm9uO2tvIGltZSBhbGkgZ2VzbG8sIHNhaiBzbyBsZS10ZSDFvmUgdmtsanXEjWVuZSB2IHNhbSBtb2R1bCc7CiRsYW5nWydwcm9tcHRfZXhwb3J0Y3N2J10gPSAnSXp2b3ppIHVwb3JhYm5pa2UgdiBDU1YnOwokbGFuZ1snZXhwb3J0Y3N2J10gPSAnSXp2b3onOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnVXZveic7CiRsYW5nWydhZG1pbiddID0gJ0FkbWluJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnVXJlZGkgbW/Fvm5vc3QnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTmFqdmXEjWphIGRvbMW+aW5hJzsKJGxhbmdbJ2NyZWF0ZWQnXSA9ICdVc3R2YXJqZW5vJzsKJGxhbmdbJ3NvcnRieSddID0gJ1JhenZyc3RpIHBvJzsKJGxhbmdbJ3NvcnQnXSA9ICdSYXp2ciZzY2Fyb247xI1hbmplJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ1Vwb3JhYm5pa2kgdiBpemJyYW5paCBza3VwaW5haCc7CiRsYW5nWyd1c2VybGltaXQnXSA9ICdPbWVqaSByZXp1bHRhdGUgbmEnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGZpZWxkJ10gPSAnTmUgbmFqZGVtIEUtbWFpbCBwb2xqYSB6YSB0ZWdhIHVwb3JhYm5pa2EuIFByb3NpbW8sIG9idmVzdGl0ZSBhZG1pbmlzdHJhdG9yamEuJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnSUQgc3RyYW5pL0FsaWFzIHphIG9icmF6ZWMgemEgcG96YWJsamVubyBnZXNsbyc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ0lEIHN0cmFuaS9BbGlhcyB6YSBvYnJhemVjIHphIHNwcmVtZW1ibyBuYXN0YXZpdGV2JzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnSUQgc3RyYW5pL0FsaWFzIHphIG9icmF6ZWMgemEgcHJldXNtZXJpdGV2IHBvIHByaWphdmkgKic7CiRsYW5nWydwcm9tcHRfbG9nb3V0X3BhZ2UnXSA9ICdJRCBzdHJhbmkvQWxpYXMgemEgb2JyYXplYyB6YSBwcmV1c21lcml0ZXYgcG8gb2RqYXZpIConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU21lciByYXp2ciZzY2Fyb247xI1hbmphJzsKJGxhbmdbJ3Byb21wdF9udW1yZXNldHJlY29yZCddID0gJ05la2F0ZXJpIHVwb3JhYm5pa2kgc28gdiBwb3N0b3BrdSByZXNldGlyYW5qYSBwb3phYmxqZW5lZ2EgZ2VzbGEuIFRyZW51dG5vICZzY2Fyb247dGV2aWxvIHRlaCB1cG9yYWJuaWtvdjonOwokbGFuZ1sncmVtb3ZlMXdlZWsnXSA9ICdJemJyaSZzY2Fyb247aSB2c2Ugdm5vc2UsIHN0YXJlaiZzY2Fyb247ZSBvZCBlbmVnYSB0ZWRuYSc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdJemJyaSZzY2Fyb247aSB2c2Ugdm5vc2UsIHN0YXJlaiZzY2Fyb247ZSBvZCBlbmVnYSBtZXNlY2EnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnSXpicmkmc2Nhcm9uO2kgdnNlIHZub3NlJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdTdGUgcHJlcHJpxI1hbmk/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnVnBpc2FsaSBzdGUgbmFwYcSNbm8ga29kby4gUHJvc2ltbywgcG9pemt1c2l0ZSBwb25vdm5vJzsKJGxhbmdbJ2Vycm9yX3RlbXBjb2Rlbm90Zm91bmQnXSA9ICdaYcSNYXNuYSBrb2RhIHphIHZhJnNjYXJvbjsgdXBvcmFibmkmc2Nhcm9uO2tpIHJhxI11biBuZSBvYnN0YWphIHYgYmF6aSc7CiRsYW5nWydmb3Jnb3RwYXNzd29yZF92ZXJpZnl0ZW1wbGF0ZSddID0gJ1ByZWRsb2dhIHphIHByaWtheiBvYnJhemNhIHphIHByZXZlcmphbmplJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdQcmVkbG9nYSB6YSBwb3phYmxqZW5vIGdlc2xvJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdNb3JkYSBzdGUgdmkgYWxpIGtkbyBkcnVnIMW+ZSB6YWh0ZXZhbGkgcmVzZXRpcmFuamUgZ2VzbGEgemEgdGEgcmHEjXVuLiBQcm9zaW1vLCBwcmV2ZXJpdGUgdmEmc2Nhcm9uOyBFLXBvJnNjYXJvbjt0bmkgcHJlZGFsLCBramVyIHZhcyDEjWFrYWpvIG5hdm9kaWxhIHphIHJlc2V0aXJhbmplIGdlc2xhLic7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnTmFwYWthIG5hIGJhemknOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnVG8gc3Bvcm/EjWlsbyBzdGUgcHJlamVsaSwgc2FqIHN0ZSBwb2RhbGkgemFodGV2ZWsgemEgcG96YWJsamVubyBnZXNsby4gxIxlIHN0ZSBnZXNsbyB6YXJlcyBwb3phYmlsaSwgc2xlZGl0ZSBuYXZvZGlsb20gdiBuYWRhbGpldmFuanUuIFYga29saWtvciBtZW5pdGUsIGRhIHN0ZSB0byBzcG9yb8SNaWxvIHByZWplbGkgcG8gcG9tb3RpLCBnYSBsYWhrbyBicmV6IHNrcmJpIGl6YnJpJnNjYXJvbjtldGUuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnS29kYSc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdOYXNsZWRuamEga29kYSBqZSBiaWxhIGF2dG9tYXRpxI1ubyBnZW5lcmlyYW5hIHphIHByZXZlcmphbmplIHVwb3JhYm5pa292ZWdhIHJhxI11bmEuIEtvIGtsaWtuZXRlIG5hIHNwb2Ruam8gcG92ZXphdm8gYm9zdGUgcHJpJnNjYXJvbjtsaSBuYSBzdHJhbiBzIHBvbGplbSB6YSB2bm9zIHRlIGtvZGUuIFRvIHBvbGplIGJvIMW+ZSB2bmFwcmVqIGl6cG9sbmplbm8sIHYga29saWtvciBuaSwgdmFuaiB2cGkmc2Nhcm9uO2l0ZSBuYXNsZWRuam8ga29kbzonOwokbGFuZ1sncHJvbXB0X2xpbmsnXSA9ICdTIGtsaWtvbSBuYSBzcG9kbmpvIHBvdmV6YXZvIGJvc3RlIHByaSZzY2Fyb247bGkgbmEgc3BsZXRubyBzdHJhbiwga2plciB2cGkmc2Nhcm9uO2l0ZSB6Z29ybmpvIGtvZG8gaW4gcmVzZXRpcmFqdGUgdmEmc2Nhcm9uO2UgZ2VzbG86JzsKJGxhbmdbJ2xvc3RwYXNzd29yZF9lbWFpbHN1YmplY3QnXSA9ICdQb3phYmxqZW5vIGdlc2xvJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnTmUgbmFqZGVtIG1vZHVsYSBDTVNNYWlsZXInOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnRS1tYWlsIGplIGJpbCBwb3NsYW4gbmEgbmFzbG92ICVzIHogbmF2b2RpbGkgemEgcG9uYXN0YXZpdGV2IHZhJnNjYXJvbjtlZ2EgZ2VzbGEuIFByb3NpbW8sIHByZXZlcml0ZSB2YSZzY2Fyb247IHBvJnNjYXJvbjt0bmkgcHJlZGFsLic7CiRsYW5nWydsb3N0cHdfbWVzc2FnZSddID0gJ1Yga29saWtvciBzdGUgcG96YWJpbGkgZ2VzbG8sIHZwaSZzY2Fyb247aXRlIHZhJnNjYXJvbjtlIHVwb3JhYm5pJnNjYXJvbjtrbyBpbWUgaW4gcG9zbGFsaSB2YW0gYm9tbyBFLW1haWwgeiBuYXZvZGlsaSB6YSBwcmlkb2JpdGV2IG5vdmVnYSBnZXNsYS4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdQcmVkbG9nZSB6YSBwb3phYmxqZW5vIGdlc2xvJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ1ByZWRsb2dlIHphIHBvemFibGplbm8gdXBvcmFibmkmc2Nhcm9uO2tvIGltZSc7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdNb8W+bm9zdCAlcyBuaSBuYWpkZW5hJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdNb8W+bm9zdGkgbmFqZGVuZSc7CiRsYW5nWydhZGRwcm9wJ10gPSAnRG9kYWogbW/Fvm5vc3QnOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ09idmV6bm8gcG9samUgKCVzKSBqZSBiaWxvIHByYXpubyc7CiRsYW5nWydpbmZvX2VtcHR5cGFzc3dvcmRmaWVsZCddID0gJ1ZwaSZzY2Fyb247aXRlIG5vdm8gZ2VzbG8gemEgc3ByZW1lbWJvIGdlc2xhJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnTmlzdGUgcHJpamF2bGplbmkgdiBzaXN0ZW0nOwokbGFuZ1sndXNlcl9zZXR0aW5ncyddID0gJ05hc3Rhdml0dmUnOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyYWNpamEnOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdUYSByYcSNdW4gamUgcG90ZWtlbCc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnTmVwcmF2aWxlbiBFLW1haWwgbmFzbG92JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnTmFwYcSNZW4gZGF0dW0gcG90ZWthJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5ncHJvcGVydHknXSA9ICdOYXBha2EgcHJpIG5hc3RhdmxqYW5qdSBtb8W+bm9zdGkgJXMgemEgdXBvcmFibmlrYSAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ05hcGHEjWVuIElEIHNrdXBpbmUgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdPem5hxI1ldmFsZWMgc2tyaXRlZ2EgcG9samEnOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0JhcnZhIHNrcml0ZWdhIHBvbGphJzsKJGxhbmdbJ2hpZGRlbiddID0gJ1Nrcml0byc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnTW/Fvm5vc3QgcyB0ZW0gaW1lbm9tIGplIMW+ZSBkZWZpbmlyYW5hJzsKJGxhbmdbJ2Vycm9yX25vcHJvcGVydGllcyddID0gJ05pIGRlZmluaXJhbmloIG1vxb5ub3N0aSc7CiRsYW5nWydlcnJvcl9ub3JlbGF0aW9ucyddID0gJ05vYmVuYSBtb8W+bm9zdCBuaSBiaWxhIGl6YnJhbmEgemEgdG8gc2t1cGlubyc7CiRsYW5nWydub2dyb3VwcyddID0gJ05vYmVuYSBza3VwaW5hIG5pIGRlZmluaXJhbmEnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdOYWpkZW5lIHNrdXBpbmUnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ09idmV6bm8gamUgxI1sYW5zdHZvIHYgdnNhaiBlbmkgc2t1cGluaSc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnWmFodGV2YWogxI1sYW5zdHZvIHYgdnNhaiBlbmkgc2t1cGluaSc7CiRsYW5nWydiYWNrJ10gPSAnTmF6YWonOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGplIG9idmV6bm8gcG9samUnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ096bmHEjWkgb2J2ZXpuYSBwb2xqYSB6JzsKJGxhbmdbJ3JlcXVpcmVkZmllbGRjb2xvciddID0gJ01hcmtpcmFqIG9idmV6bmEgcG9samEgeic7CiRsYW5nWyduZXh0J10gPSAnTmFwcmVqJzsKJGxhbmdbJ2Vycm9yX2dyb3VwZXhpc3RzJ10gPSAnU2t1cGluYSBzIHRlbSBpbWVub20gxb5lIG9ic3RhamEnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdPYnZlem5vJzsKJGxhbmdbJ29wdGlvbmFsJ10gPSAnTmVvYnZlem5vJzsKJGxhbmdbJ29mZiddID0gJ0l6a2xvcGxqZW5vJzsKJGxhbmdbJ3NpemUnXSA9ICdWZWxpa29zdCc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE5hanZlxI1qYSB2ZWxpa29zdCBuYWpkYWxqJnNjYXJvbjtlIHN0cmFuaWNlIHNsaWtlIHYgcGl4bGloKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdEb2zFvmluYSc7CiRsYW5nWydsZW5ndGhjb21tZW50J10gPSAnPGJyPih6bmFrb3YgdiB0ZWtzdG92bmVtIHBvbGp1KSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnTW/Fvm5vc3RpIGl6dmxlxI1uZWdhIG1lbmlqYSwgbG/EjWVuZSB6IG5vdmltaSB2cnN0aWNhbWkuIFZyZWRub3N0aSBzbyBsYWhrbyBsb8SNZW5lIG9kIGJlc2VkaWxhIHogem5ha29tID07IG5wcjogTW8mc2Nhcm9uO2tpPW0nOwokbGFuZ1sncmFkaW9vcHRpb25zJ10gPSAnUmFkaW9idXR0b24gbGFiZWxzLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuIFZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gdGV4dCB3aXRoIGEgPSBjaGFyYWN0ZXIuIGkuZTogRmVtYWxlPWYnOwokbGFuZ1sncHJvbXB0J10gPSAnVm5vcyc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1RpcCc7CiRsYW5nWyd0eXBlJ10gPSAnVGlwJzsKJGxhbmdbJ2ZpZWxkc3RhdHVzJ10gPSAnU3RhdHVzIHBvbGphJzsKJGxhbmdbJ3VzZWRpbmxvc3R1biddID0gJ1ZwcmEmc2Nhcm9uO2FqIHYgcG96YWJsamVuZW08YnIvPnVwb3JhYm5pJnNjYXJvbjtrZW0gaW1lbnUnOwokbGFuZ1sndGV4dCddID0gJ0Jlc2VkaWxvICh0ZXh0KSc7CiRsYW5nWydjaGVja2JveCddID0gJ0NoZWNrYm94JzsKJGxhbmdbJ211bHRpc2VsZWN0J10gPSAnU2V6bmFtIHogdmXEjWtyYXRubyBpemJpcm8gKG11bHRpc2VsZWN0KSc7CiRsYW5nWydyYWRpb2J1dHRvbnMnXSA9ICdSYWRpbyBCdXR0b25zJzsKJGxhbmdbJ2ltYWdlJ10gPSAnU2xpa2EnOwokbGFuZ1snZW1haWwnXSA9ICdFLW1haWwgbmFzbG92JzsKJGxhbmdbJ3RleHRhcmVhJ10gPSAnQmVzZWRpbG8gKHRleHRhcmVhKSc7CiRsYW5nWydkcm9wZG93biddID0gJ0l6dmxlxI1uaSBtZW5pJzsKJGxhbmdbJ21zZ19jdXJyZW50bHlsb2dnZWRpbmFzJ10gPSAnRG9icm9kbyZzY2Fyb247bGknOwokbGFuZ1snbG9nb3V0J10gPSAnT2RqYXZhJzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdVcG9yYWJpIHRvIGltZSBza3VwaW5lJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ1NwcmVtZW1iYSBtb2ppaCBuYXN0YXZpdGV2JzsKJGxhbmdbJ2Vycm9yX2xvZ2luZmFpbGVkJ10gPSAnUHJpamF2YSBuaSB1c3BlJnNjYXJvbjtuYSAtIHN0ZSBwb3phYmlsaSB1cG9yYWJuaSZzY2Fyb247a28gaW1lIGFsaSBnZXNsbz8nOwokbGFuZ1snbG9naW4nXSA9ICdQcmlqYXZhJzsKJGxhbmdbJ3Byb21wdF9zaWduaW5fYnV0dG9uJ10gPSAnTmFwaXMgbmEgZ3VtYnUgemEgcHJpamF2byc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdVcG9yYWJuaSZzY2Fyb247a28gaW1lJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0UtbWFpbCBuYXNsb3YnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnR2VzbG8nOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdaYXBvbW5pIHNpIG1lJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0cmFjaWphJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnU3RlIHBvemFiaWxpIGdlc2xvPyc7CiRsYW5nWydsb3N0dXNlcm5hbWUnXSA9ICdTdGUgcG96YWJpbGkgdXBvcmFibmkmc2Nhcm9uO2tvIGltZT8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdQcml2emV0byc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1ByZWRsb2dhJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ05lIG5hamRlbSBpbmZvcm1hY2lqIG8gdGVtIHVwb3JhYm5pa3UnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ1RvIHVwb3JhYm5pJnNjYXJvbjtrbyBpbWUgKCVzKSBqZSDFvmUgdiB1cG9yYWJpJzsKJGxhbmdbJ3Byb21wdF9zbXRwdmFsaWRhdGUnXSA9ICdVcG9yYWJpIFNNVFAgemEgcHJldmVyamFuamUgRS1tYWlsIG5hc2xvdm92Pyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdOYWptYW5qJnNjYXJvbjthIGRvbMW+aW5hIGdlc2xhJzsKJGxhbmdbJ3Byb21wdF9tYXhwd2xlbiddID0gJ05hanZlxI1qYSBkb2zFvmluYSBnZXNsYSc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdOYWptYW5qJnNjYXJvbjthIGRvbMW+aW5hIHVwb3JhYm5pJnNjYXJvbjtrZWdhIGltZW5hJzsKJGxhbmdbJ3Byb21wdF9tYXh1bmxlbiddID0gJ05hanZlxI1qYSBkb2zFvmluYSB1cG9yYWJuaSZzY2Fyb247a2VnYSBpbWVuYSc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdJenRlayBzZWplIHYgc2VrdW5kYWggKHRpbWVvdXQpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdVcG9yYWJpIHBpJnNjYXJvbjtrb3RrZSB6YSBzaHJhbmpldmFuamUgcHJpamF2JzsKJGxhbmdbJ3Byb21wdF9hbGxvd2VtYWlscmVnJ10gPSAnRG92b2xpIHJlZ2lzdHJhY2lqbyBwcmVrIEUtbWFpbGEnOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ1ByaXZ6ZXRhIHNrdXBpbmEgemEgbm92ZSB1cG9yYWJuaWtlJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnU3ByZW1lbmkgcHJlZGxvZ28geiBuYXN0YXZpdHZhbWknOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0dlc2xpIHNlIG5lIHVqZW1hdGEnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnTmFwYcSNbm8gdXBvcmFibmkmc2Nhcm9uO2tvIGltZSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFzc3dvcmQnXSA9ICdOYXBhxI1ubyBnZXNsbyc7CiRsYW5nWydlZGl0dXNlciddID0gJ1VyZWRpIHVwb3JhYm5pa2EnOwokbGFuZ1sndmFsaWQnXSA9ICdWZWxqYXZlbic7CiRsYW5nWyd1c2VybmFtZSddID0gJ1Vwb3JhYm5pJnNjYXJvbjtrbyBpbWUnOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ1RhIHVwb3JhYm5payBuaSDEjWxhbiBub2JlbmUgc2t1cGluZSc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnTmkgbW/Fvm5vc3RpJzsKJGxhbmdbJ2Vycm9yX2R1cF9wcm9wZXJ0aWVzJ10gPSAnUG9pemt1cyB1dm96YSBwb2R2b2plbmloIG1vxb5ub3N0aSc7CiRsYW5nWyd2YWx1ZSddID0gJ1ZyZWRub3N0JzsKJGxhbmdbJ2dyb3VwcyddID0gJ1NrdXBpbmUnOwokbGFuZ1sncHJvcGVydGllcyddID0gJ01vxb5ub3N0aSc7CiRsYW5nWydwcm9wbmFtZSddID0gJ0ltZSBtb8W+bm9zdGknOwokbGFuZ1sncHJvcHZhbHVlJ10gPSAnVnJlZG5vc3QgbW/Fvm5vc3RpJzsKJGxhbmdbJ2FkZCddID0gJ0RvZGFqJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdaZ29kb3ZpbmEnOwokbGFuZ1snZWRpdCddID0gJ1VyZWRpJzsKJGxhbmdbJ2V4cGlyZXMnXSA9ICdQb3RlxI1lJzsKJGxhbmdbJ3NwZWNpZnlfZGF0ZSddID0gJ0RvbG/EjWl0ZXYgZGF0dW1hJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgdXInOwokbGFuZ1snMjRocnMnXSA9ICcyNCB1cic7CiRsYW5nWyc0OGhycyddID0gJzQ4IHVyJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSB0ZWRlbic7CiRsYW5nWycyd2Vla3MnXSA9ICcyIHRlZG5hJzsKJGxhbmdbJzFtb250aCddID0gJzEgbWVzZWMnOwokbGFuZ1snM21vbnRocyddID0gJzMgbWVzZWNlJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IG1lc2VjZXYnOwokbGFuZ1snMXllYXInXSA9ICcxIGxldG8nOwokbGFuZ1snbmV2ZXInXSA9ICdOaWtvbGknOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWxlIGluc3RhbGxlZCBzdWNlc3NmdWxseS48YnIvPkJlIHN1cmUgdG8gc2V0IHRoZSAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMgcGVybWlzc2lvbi4gIEFkZGl0aW9uYWxseSwgd2UgcmVjb21tZW5kIHRoYXQgeW91IGluc3RhbGwgdGhlIENhcHRjaGEgbW9kdWxlLiAgSWYgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGluIGFkZGl0aW9uIHRvIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgdG8gbG9naW4uICBUaGlzIGlzIGludGVuZGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGZ1bmN0aW9uYWxpdHkgZXZlbiBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ0dlc2xvJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnUG9ub3Zubyc7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnU2t1cGluYSBzIHRlbSBpbWVub20gxb5lIG9ic3RhamEnOwokbGFuZ1snZWRpdGdyb3VwJ10gPSAnVXJlamFuamUgc2t1cGluZSc7CiRsYW5nWydzdWJtaXQnXSA9ICdQbyZzY2Fyb247bGppJzsKJGxhbmdbJ2NhbmNlbCddID0gJ1ByZWtsacSNaSc7CiRsYW5nWydkZWxldGUnXSA9ICdJemJyaSZzY2Fyb247aSc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJ1N0ZSBwcmVwcmnEjWFuaSwgZGEgc28gdG8gcHJhdmlsbmUgbmFzdGF2aXR2ZSB6YSB0byBza3VwaW5vP1xuxIxlIG9uZW1vZ2/EjWl0ZSBtb8W+bm9zdCBuZSBib2RvIGl6YnJpc2FuaSBub2JlbmkgemFwaXNpIHYgdGFiZWxpIHphIHRvIHNrdXBpbm8vdXBvcmFibmlrYSwgYW1wYWsgc2FtbyBuZSBib2RvIG5hIHZvbGpvLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnU3RlIHByZXByacSNYW5pLCBkYSDFvmVsaXRlIGl6YnJpc2F0aSB0byBza3VwaW5vPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnU3RlIHByZXByacSNYW5pLCBkYSDFvmVsaXRlIGl6YnJpc2F0aSB0byBtb8W+bm9zdD9cbsSMZSBqbyBpemJyaSZzY2Fyb247ZXRlLCBib2RvIGl6YnJpc2FuZSB0dWRpIHZzZSB2cmVkbm9zdGkgdXBvcmFibmlrb3YgemEgdG8gbW/Fvm5vc3QuJzsKJGxhbmdbJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcyddID0gJ05lemFkb3N0bmkgcGFyYW1ldHJpJzsKJGxhbmdbJ2lkJ10gPSAnSUQnOwokbGFuZ1snbmFtZSddID0gJ0ltZSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ05hcGFrYSBwcmkgZG9kYWphbmp1IG1vxb5ub3N0aSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXByZWxuJ10gPSAnTmFwYWthIHByaSBkb2RhamFuanUgcmVsYWNpamUgc2t1cGluZSc7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICdOYXBha2EgcHJpIGRvZGFqYW5qdSBza3VwaW5lJzsKJGxhbmdbJ2Vycm9yX2NhbnRhc3NpZ251c2VyJ10gPSAnTmFwYWthIHByaSBkb2RhamFuanUgdXBvcmFibmlrYSBza3VwaW5pJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdOYXBha2EgcHJpIGl6YnJpc3UgbW/Fvm5vc3RpJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZmluZGVtYWlsJ10gPSAnTmUgbmFqZGVtIEUtbWFpbCBuYXNsb3ZhJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdOaSBwcmF2aWMgemEgcGlzYW5qZSB2IHRvIG1hcG8nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ05hcGHEjW5pIHBhcmFtZXRyaSc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcyddID0gJ05lIG5hamRlbSBub2JlbmloIHNrdXBpbic7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ1Vwb3JhYmknOwokbGFuZ1snZmlsdGVyJ10gPSAnRmlsdGVyJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdSZWd1bGFybmkgaXpyYXogemEgdXBvcmFibmkmc2Nhcm9uO2tvIGltZSc7CiRsYW5nWydkZXNjcmlwdGlvbiddID0gJ09waXMnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnSW1lIHNrdXBpbmUnOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnRG9zdG9wIHphdnJuamVuJzsKJGxhbmdbJ2Vycm9yJ10gPSAnTmFwYWthJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnRG9kYWogc2t1cGlubyc7CiRsYW5nWydpbXBvcnRncm91cCddID0gJ1V2b3ppIHNrdXBpbm8nOwokbGFuZ1snYWRkdXNlciddID0gJ0RvZGFqIHVwb3JhYm5pa2EnOwokbGFuZ1sndXNlcnNmb3VuZCddID0gJ05hamRlbmkgdXBvcmFibmlraSwga2kgdXN0cmV6YWpvIGtyaXRlcmlqdSc7CiRsYW5nWydncm91cCddID0gJ1NrdXBpbmEnOwokbGFuZ1snc2VsZWN0Z3JvdXAnXSA9ICdJemJlcml0ZSBza3VwaW5vJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1ByZWRsb2dhIHphIHJlZ2lzdHJhY2lqbyc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdQcmVkbG9nYSB6YSBvZGphdm8nOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdQcmVkbG9nYSB6YSBwcmlqYXZvJzsKJGxhbmdbJ3ByZWZlcmVuY2VzJ10gPSAnTmFzdGF2aXR2ZSc7CiRsYW5nWyd1c2VycyddID0gJ1Vwb3JhYm5pa2knOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnVXByYXZpdGVsaiB1cG9yYWJuaWtvdi/EjWxhbm92JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnRG92b2xpIHByaWphdm8gdXBvcmFibmlrb3YgcHJla28gc3BsZXRuZSBzdHJhbmknOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ1ByaXZ6ZXRhIHZzdG9wbmEgc3RyYW4nOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1phZG5qYSBkb3N0b3BhbmEgc3RyYW4nOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnRHJ1Z2Egc3RyYW46ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnVnBpJnNjYXJvbjtpdGUgYmVzZWRpbG8gcyBzbGlrZSc7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/sv_SE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2Vycm9yX3VzZXJfbm9udW5pcXVlX2ZpZWxkX3ZhbHVlJ10gPSAnRGV0IGFuZ2l2bmEgdiZhdW1sO3JkZXQgZiZvdW1sO3IgJSBzIGFudiZhdW1sO25kcyByZWRhbiBhdiBlbiBhbm5hbiBhbnYmYXVtbDtuZGFyZSc7CiRsYW5nWyd1bmlxdWUnXSA9ICdVbmlrJzsKJGxhbmdbJ2Vycm9yX25vbnVuaXF1ZV9maWVsZF92YWx1ZSddID0gJ0RldCBhbmdpdm5hIHYmYXVtbDtyZGV0IGYmb3VtbDtyICUgcyAoJSBzKSAmYXVtbDtyIGludGUgdW5pa3QnOwokbGFuZ1sncHJvbXB0X2ZvcmNlX3VuaXF1ZSddID0gJ0ZvcmNlIHZhbHVlcyBvZiB0aGlzIHByb3BlcnR5IHRvIGJlIHVuaXF1ZSBhY3Jvc3MgYWxsIHVzZXIgYWNjb3VudHMnOwokbGFuZ1snaGVscF9yZXR1cm5sYXN0J10gPSAnVXNlZCB3aXRoIHRoZSBsb2dpbiBhbmQgbG9nb3V0IGZvcm1zLCB0aGlzIHBhcmFtZXRlciBpZiBzcGVjaWZpZWQgd2lsbCBpbmRpY2F0ZSB0aGF0IHRoZSB1c2VyIHNob3VsZCBiZSByZXR1cm5lZCB0byB0aGUgcGFnZSAoYnkgdXJsKSB0aGF0IHRoZSB1c2VyIHdhcyB2aWV3aW5nIGJlZm9yZSB0aGUgYWN0aW9uIG9jY3VycmVkLiAgVGhpcyBwYXJhbWV0ZXIgd2lsbCBvdmVycmlkZSB0aGUgcmVkaXJlY3QgcHJlZmVyZW5jZXMsIGFuZCB0aGUgcmV0dXJudG8gcGFyYW1ldGVyLic7CiRsYW5nWydoZWxwX25vaW5saW5lJ10gPSAnVXNlZCB3aXRoIG9uZSBvZiB0aGUgZm9ybXMsIHRoaXMgcGFyYW1ldGVyIHNwZWNpZmllcyB0aGF0IHRoZSBmb3JtcyBzaG91bGQgbm90IGJlIHBsYWNlZCBpbmxpbmUsIGluc3RlYWQgdGhlIHJlc3VsdGluZyBvdXRwdXQgYWZ0ZXIgZm9ybSBzdWJtaXNzaW9uIHdpbGwgcmVwbGFjZSB0aGUgZGVmYXVsdCBjb250ZW50IGJsb2NrJzsKJGxhbmdbJ3RpdGxlX3Jlc2V0X3Nlc3Npb24nXSA9ICdMb2dpbiBTZXNzaW9uIFRpbWVvdXQgV2FybmluZyc7CiRsYW5nWydtc2dfcmVzZXRfc2Vzc2lvbiddID0gJ1lvdXIgbG9naW4gc2Vzc2lvbiBpcyBhYm91dCB0byBleHBpcmUsIHBsZWFzZSBjbGljayAmcXVvdDsmcXVvdDtPayZxdW90OyB0byBjb25maXJtIHlvdXIgYWN0aXZpdHkgb24gdGhpcyB3ZWJzaXRlLic7CiRsYW5nWydvayddID0gJ09LJzsKJGxhbmdbJ3Jlc2V0c2Vzc2lvbl90ZW1wbGF0ZSddID0gJyZBcmluZzt0ZXJzdCZhdW1sO2xsIFNlc3Npb25zbWFsbCc7CiRsYW5nWydpbmZvX25hbWUnXSA9ICdEZXR0YSAmYXVtbDtyIGYmYXVtbDtsdG5hbW5ldCwgc29tIHNrYSBhbnYmYXVtbDtuZGFzIGYmb3VtbDtyIGF0dCB0YSBpdHUgbWVkIFNtYXJ0eS4gRGV0IHNrYWxsIGJlc3QmYXJpbmc7IGF2IGVuZGFzdCBhbGZhbnVtZXJpc2thIHRlY2tlbiBvY2ggdW5kZXJzdHJlY2suJzsKJGxhbmdbJ3Zpc2l0b3JzX3RhYiddID0gJ0JlcyZvdW1sO2thcmUnOwokbGFuZ1snZmV1X2dyb3Vwc19wcm9tcHQnXSA9ICdWJmF1bWw7bGogZW4gZWxsZXIgZmxlcmEgRkVVIGdydXBwZXIgc29tIGhhciB0aWxsZyZhcmluZztuZyB0aWxsIGRlbm5hIHNpZGEnOwokbGFuZ1snZXJyb3JfbXVzdHNlbGVjdF9ncm91cCddID0gJ0R1IG0mYXJpbmc7c3RlIHYmYXVtbDtsamEgZW4gZ3J1cHAnOwokbGFuZ1snc2VsZWN0b25lJ10gPSAnViZhdW1sO2xqIGVuJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICdTdGFydCAmYXJpbmc7cic7CiRsYW5nWydlbmRfeWVhciddID0gJ1NsdXQgJmFyaW5nO3InOwokbGFuZ1snZGF0ZSddID0gJ0RhdHVtJzsKJGxhbmdbJ3Byb21wdF90aHVtYm5haWxfc2l6ZSddID0gJ1N0b3JsZWsgZiZvdW1sO3IgdHVtbmFnZWxiaWxkJzsKJGxhbmdbJ09uVXBkYXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIE1vZGlmaWVkICc7CiRsYW5nWydlcnJvcl90b29tYW55c2VsZWN0ZWQnXSA9ICdGJm91bWw7ciBtJmFyaW5nO25nYSBhbnYmYXVtbDtuZGFyZSAmYXVtbDtyIHZhbGRhIGYmb3VtbDtyIGJ1bGsgdmVya3NhbWhldCAuLi4uIFNrdWxsZSBkdSBrdW5uYSB0cmltbWEgZGVuIHRpbGwgMjUwIGVsbGVyIG1pbmRyZSc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9zZWxlY3RlZCddID0gJyZBdW1sO3IgZHUgcyZhdW1sO2tlciBwJmFyaW5nOyBhdHQgZHUgdmlsbCByYWRlcmEgZGVuIHZhbGRhIGFudiZhdW1sO25kYXJlbj8nOwokbGFuZ1snZGVsZXRlX3NlbGVjdGVkJ10gPSAnUmFkZXJhIG1hcmtlcmFkZSc7CiRsYW5nWydwcm9tcHRfcmFuZG9tdXNlcm5hbWUnXSA9ICdHZW5lcmVyYSBzbHVtcG0mYXVtbDtzc2lndCBhbnYmYXVtbDtuZGFybmFtbiB2aWQgYWRkZXJpbmcgYXYgbnkgYW52JmF1bWw7bmRhcmUnOwokbGFuZ1snbW9udGhzJ10gPSAnbSZhcmluZztuYWRlcic7CiRsYW5nWydwcm9tcHRfZXhwaXJlYWdlJ10gPSAnR3J1bmRhbnYmYXVtbDtuZGFyZW5zIHV0ZyZhcmluZztuZ3N0aWQnOwokbGFuZ1snbm90aWZpY2F0aW9uX3NldHRpbmdzJ10gPSAnTm90aWZlcmluZ3NpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1sncHJvcGVydHlfc2V0dGluZ3MnXSA9ICdFZ2Vuc2thcHNpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1sncmVkaXJlY3Rpb25fc2V0dGluZ3MnXSA9ICdPbWRpcmlnZXJpbmdzIGluc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydnZW5lcmFsX3NldHRpbmdzJ10gPSAnQWxsbSZhdW1sO25uYSBpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1snc2Vzc2lvbl9zZXR0aW5ncyddID0gJ1Nlc3Npb24gb2NoIENvb2tpZSBpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1snZmllbGRfc2V0dGluZ3MnXSA9ICdGJmF1bWw7bHQgaW5zdCZhdW1sO2xsbmluZ2FyJzsKJGxhbmdbJ2Vycm9yX2xvc3R1bl9ub25yZXF1aXJlZCddID0gJ0dsJm91bWw7bXQgYW52JmF1bWw7bmRhcm5hbW4gZmxhZ2dhbiBrYW4gYmFyYSBhbnYmYXVtbDtuZGFzIHAmYXJpbmc7IG9ibGlnYXRvcmlza2EgZiZhdW1sO2x0JzsKJGxhbmdbJ3Byb3BfdGV4dGFyZWFfd3lzaXd5ZyddID0gJ1RpbGwmYXJpbmc7dCBhbnYmYXVtbDtuZG5pbmcgYXYgd3lzaXd5ZyBwJmFyaW5nOyBkZXR0YSB0ZXh0b21yJmFyaW5nO2RldCc7CiRsYW5nWydpbmZvX2Nvb2tpZXN0b3JlbWVtYmVyJ10gPSAnPHN0cm9uZz5Ob3Rpc2U6IDwvc3Ryb25nPiBEZXR0YSBhbnYmYXVtbDtuZGVyIG1jcnlwdCBmdW5rdGlvbmVyIGYmb3VtbDtyIGtyeXB0ZXJpbmcsIG9jaCBkZSBrdW5kZSBpbnRlIHVwcHQmYXVtbDtja2FzIHAmYXJpbmc7IGRpbiBpbnN0YWxsYXRpb24uIEtvbnRha3RhIGRpbiBzZXJ2ZXIgYWRtaW5pc3RyYXQmb3VtbDtyLic7CiRsYW5nWydlZGl0aW5nX3VzZXInXSA9ICdSZWRpZ2VyYSBhbnYmYXVtbDtuZGFyZSc7CiRsYW5nWydub2lubGluZSddID0gJ0FudiZhdW1sO25kIGludGUgZm9ybXVsJmF1bWw7ciBzb20gaW5saW5lJzsKJGxhbmdbJ2luZm9fbG9zdHVuJ10gPSAnR2wmb3VtbDttdCBkaW5hIGFudiZhdW1sO25kYXJ1cHBnaWZ0ZXInOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ0dsJm91bWw7bXQgZGl0dCBsJm91bWw7c2Vub3JkJzsKJGxhbmdbJ2luZm9fbG9nb3V0J10gPSAnS2xpY2thIGgmYXVtbDtyIGYmb3VtbDtyIGF0dCBsb2dnYSB1dCc7CiRsYW5nWydpbmZvX2NoYW5nZXNldHRpbmdzJ10gPSAnS2xpY2thIGgmYXVtbDtyIGYmb3VtbDtyIGF0dCAmYXVtbDtuZHJhIGRpdHQgbCZvdW1sO3Nlbm9yZCBlbGxlciBhbm5hbiBpbmZvcm1hdGlvbic7CiRsYW5nWyd2aWV3dXNlcl90ZW1wbGF0ZSddID0gJ1Zpc2EgYW52JmF1bWw7bmRhcm1hbGwnOwokbGFuZ1snZXZlbnQnXSA9ICdIJmF1bWw7bmRlbHNlJzsKJGxhbmdbJ2ZldV9ldmVudF9ub3RpZmljYXRpb24nXSA9ICdGRVUgSCZhdW1sO25kZWxzZW5vdGlmaWVyaW5nJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fYWRkcmVzcyddID0gJ0Vwb3N0YWRyZXNzIGYmb3VtbDtyIG5vdGlmaWVyaW5nJzsKJGxhbmdbJ3Byb21wdF9ub3RpZmljYXRpb25fdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIG5vdGlmaWVyaW5ncy1lcG9zdCc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICcmQXVtbDttbmVzcmFkIGYmb3VtbDtyIG5vdGlmaWVyaW5ncy1lcG9zdCc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ05vdGlmaWVyaW5ncy1lcG9zdCc7CiRsYW5nWydPbkxvZ2luJ10gPSAnVmlkIGlubG9nZ25pbmcnOwokbGFuZ1snT25Mb2dvdXQnXSA9ICdWaWQgdXRsb2dnbmluZyc7CiRsYW5nWydPbkV4cGlyZVVzZXInXSA9ICdWaWQgdXRsJm91bWw7cHQgc2Vzc2lvbic7CiRsYW5nWydPbkNyZWF0ZVVzZXInXSA9ICdWaWQgc2thcGFuZGUgYXYgbnkgYW52JmF1bWw7bmRhcmUnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnVmlkIGJvcnR0YWdhbmRlIGF2IGFudiZhdW1sO25kYXJlJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ1ZpZCAmYXVtbDtuZHJhZGUgYW52JmF1bWw7bmRhcmluc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnVmlkIHNrYXBhbmRlIGF2IGFudiZhdW1sO25kYXJncnVwcCc7CiRsYW5nWydPbkRlbGV0ZUdyb3VwJ10gPSAnVmlkIGJvcnR0YWdhbmRlIGF2IGFudiZhdW1sO25kYXJncnVwcCc7CiRsYW5nWydsb3N0dW5jb25maXJtX3ByZW1zZyddID0gJ1ZpIGhhciBmdW5uaXQgZXR0IHVuaWt0IGFudiZhdW1sO25kYXJuYW1uIHNvbSBtYXRjaGFyIGRlIHVwcGdpZnRlciBkdSBsJmF1bWw7bW5hdC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ0RpdHQgYW52JmF1bWw7bmRhcm5hbW4gJmF1bWw7cic7CiRsYW5nWydsb3N0dW5jb25maXJtX3Bvc3Rtc2cnXSA9ICdWaSByZWtvbW1lbmRlcmFyIGF0dCBkdSBzcGFyYXIgZGVubmEgaW5mb3JtYXRpb24gcCZhcmluZzsgZW4gcyZhdW1sO2tlciBwbGF0cy4nOwokbGFuZ1sncHJvbXB0X2FmdGVyX2NoYW5nZV9zZXR0aW5ncyddID0gJ1BhZ2VJRC9BbGlhcyBhdHQgZyZhcmluZzsgdGlsbCBlZnRlciAmYXVtbDtuZHJhZGUgaW5zdCZhdW1sO2xsbmluZ2FyJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ1BhZ2VJRC9BbGlhcyBhdHQgZyZhcmluZzsgdGlsbCBlZnRlciB2ZXJpZmllcmluZyBhdiBrb2QgKic7CiRsYW5nWydsb3N0dW5fZGV0YWlsc190ZW1wbGF0ZSddID0gJ01hbGwgZiZvdW1sO3IgdXBwZ2lmdGVyIG9tIGdsJm91bWw7bXQgYW52JmF1bWw7bmRhcm5hbW4nOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIGJla3ImYXVtbDtmdGVsc2UgdmlkIGdsJm91bWw7bXQgYW52JmF1bWw7bmRhcm5hbW4nOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdGZWw6IE1lciAmYXVtbDtuIGVuIGFudiZhdW1sO25kYXJlIHN0JmF1bWw7bWRlICZvdW1sO3ZlcmVucyBtZWQgZGUgZWdlbnNrYXBlciBzb20gYW5nYXZzJzsKJGxhbmdbJ2Vycm9yX2NhbnRmaW5kdXNlciddID0gJ0ZlbDogS3VuZGUgaW50ZSBoaXR0YSBlbiBhbnYmYXVtbDtuZGFyZSBzb20gc3QmYXVtbDttZGUgJm91bWw7dmVyZW5zIG1lZCBzJm91bWw7a2tyaXRlcmllcm5hJzsKJGxhbmdbJ2Vycm9yX2dyb3Vwbm90Zm91bmQnXSA9ICdGZWw6IEt1bmRlIGludGUgaGl0dGEgZW4gZ3J1cHAgbWVkIGRldCBuYW1uZXQnOwokbGFuZ1sncmVhZG9ubHknXSA9ICdFbmJhcnQgbCZhdW1sO3NyJmF1bWw7dHRpZ2hldGVyJzsKJGxhbmdbJ3Byb21wdF91c2VybWFuaXB1bGF0b3InXSA9ICdLbGFzcyBmJm91bWw7ciBhbnYmYXVtbDtuZGFyaGFudGVyaW5nIChVc2VyIE1hbmlwdWxhdG9yIENsYXNzKSc7CiRsYW5nWydhZG1pbl9sb2dvdXQnXSA9ICdVdGxvZ2dhZCBhdiBhZG1pbmlzdHJhdCZvdW1sO3InOwokbGFuZ1sncHJvbXB0X2xvZ2dlZGlub25seSddID0gJ1Zpc2EgZW5iYXJ0IGlubG9nZ2FkZSBhbnYmYXVtbDtuZGFyZSc7CiRsYW5nWydwcm9tcHRfbG9nb3V0J10gPSAnTG9nZ2EgdXQgZGVuIGgmYXVtbDtyIGFudiZhdW1sO25kYXJlbic7CiRsYW5nWyd1c2VyX3Byb3BlcnRpZXMnXSA9ICdBbnYmYXVtbDtuZGFyZWdlbnNrYXBlcic7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ0FudiZhdW1sO25kYXJoaXN0b3Jpayc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnRlcmEnOwokbGFuZ1snY2xlYXInXSA9ICdSZW5zYSc7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFeHBvcnRlcmEgYW52JmF1bWw7bmRhcmhpc3RvcmlrIHRpbGwgQVNDSUkgc29tICZhdW1sO3IgbWluc3QnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdSZW5zYSBhbnYmYXVtbDtuZGFyaGlzdG9yaWsgc29tICZhdW1sO3IgbWluc3QnOwokbGFuZ1sndGl0bGVfbG9zdHVzZXJuYW1lJ10gPSAnU3VwcG9ydGZvcm11bCZhdW1sO3IgZiZvdW1sO3IgZiZvdW1sO3Jsb3JhdCBhbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWyd0aXRsZV9yc3NleHBvcnQnXSA9ICdFeHBvcnRlcmEgZ3J1cHBkZWZpbml0aW9uIChvY2ggZWdlbnNrYXBlcikgdGlsbCBYTUwnOwokbGFuZ1sndGl0bGVfdXNlcmhpc3RvcnltYWludGVuYW5jZSddID0gJ1VuZGVyaCZhcmluZztsbCBhbnYmYXVtbDtuZGFyaGlzdG9yaWsnOwokbGFuZ1sneWVzJ10gPSAnSmEnOwokbGFuZ1snbm8nXSA9ICdOZWonOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnQXYnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogSW5nZW4gYmVnciZhdW1sO25zbmluZyAqKic7CiRsYW5nWydkYXRlX29uZWhvdXJvbGQnXSA9ICdFbiB0aW1tZSBnYW1tYWwnOwokbGFuZ1snZGF0ZV9zaXhob3Vyb2xkJ10gPSAnU2V4IHRpbW1hciBnYW1tYWwnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnVG9sdiB0aW1tYXIgZ2FtbWFsJzsKJGxhbmdbJ2RhdGVfb25lZGF5b2xkJ10gPSAnRW4gZGFnIGdhbW1hbCc7CiRsYW5nWydkYXRlX29uZXdlZWtvbGQnXSA9ICdFbiB2ZWNrYSBnYW1tYWwnOwokbGFuZ1snZGF0ZV90d293ZWVrc29sZCddID0gJ1R2JmFyaW5nOyB2ZWNrb3IgZ2FtbWFsJzsKJGxhbmdbJ2RhdGVfb25lbW9udGhvbGQnXSA9ICdFbiBtJmFyaW5nO25hZCBnYW1tYWwnOwokbGFuZ1snZGF0ZV90aHJlZW1vbnRoc29sZCddID0gJ1RyZSBtJmFyaW5nO25hZGVyIGdhbW1hbCc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ1NleCBtJmFyaW5nO25hZGVyIGdhbW1hbCc7CiRsYW5nWydkYXRlX29uZXllYXJvbGQnXSA9ICdFdHQgJmFyaW5nO3IgZ2FtbWFsJzsKJGxhbmdbJ3RpdGxlX2dyb3Vwc29ydCddID0gJ0dydXBwZXJpbmcgb2NoIHNvcnRlcmluZyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnRiZhdW1sO2x0IHNvbSAmb3VtbDt2ZXJlbnNzdCZhdW1sO21tZXIgbWVkIGtyaXRlcmlldCc7CiRsYW5nWydzb3J0b3JkZXJfdXNlcm5hbWVfZGVzYyddID0gJ0ZhbGxhbmRlIGFudiZhdW1sO25kYXJuYW1uJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdTdGlnYW5kZSBhbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9kZXNjJ10gPSAnRmFsbGFuZGUgZGF0dW0nOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfYXNjJ10gPSAnU3RpZ2FuZGUgZGF0dW0nOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9kZXNjJ10gPSAnRmFsbGFuZGUgaCZhdW1sO25kZWxzZXR5cCc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2FzYyddID0gJ1N0aWdhbmRlIGgmYXVtbDtuZGVsc2V0eXAnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19kZXNjJ10gPSAnRmFsbGFuZGUgSVAtYWRyZXNzJzsKJGxhbmdbJ3NvcnRvcmRlcl9pcGFkZHJlc3NfYXNjJ10gPSAnU3RpZ2FuZGUgSVAtYWRyZXNzJzsKJGxhbmdbJ2luZm9fbm9oaXN0b3J5ZGV0ZWN0ZWQnXSA9ICdJbmdlbiBoaXN0b3JpayBoaXR0YWRlcyc7CiRsYW5nWydyZXNldCddID0gJyZBcmluZzt0ZXJzdCZhdW1sO2xsJzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dydXBwZXJhIHAmYXJpbmc7IElQLWFkcmVzcyc7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZSddID0gJ0gmYXVtbDtuZGVsc2V0eXBzZmlsdGVyJzsKJGxhbmdbJ3Byb21wdF9maWx0ZXJfZGF0ZSddID0gJ1Zpc2EgYmFyYSBoJmF1bWw7bmRlbHNlIHNvbSAmYXVtbDtyIG1pbmRyZSAmYXVtbDtuOic7CiRsYW5nWydwcm9tcHRfcGFnZWxpbWl0J10gPSAnU2lkZ3ImYXVtbDtucyc7CiRsYW5nWydmb3InXSA9ICdmJm91bWw7cic7CiRsYW5nWyd0aXRsZV91c2VyaGlzdG9yeSddID0gJ1JhcHBvcnQgZiZvdW1sO3IgYW52JmF1bWw7bmRhcmhpc3RvcmlrJzsKJGxhbmdbJ3Vua25vd24nXSA9ICdPayZhdW1sO25kJzsKJGxhbmdbJ3Byb21wdF9pcGFkZHJlc3MnXSA9ICdJUC1hZHJlc3MnOwokbGFuZ1sncHJvbXB0X2V2ZW50dHlwZSddID0gJ0gmYXVtbDtuZGVsc2V0eXAnOwokbGFuZ1sncHJvbXB0X2RhdGUnXSA9ICdEYXR1bSc7CiRsYW5nWydwcm9tcHRfcmV0dXJuJ10gPSAnJkFyaW5nO3RlcnYmYXVtbDtuZCc7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0ZW4gc2x1dGYmb3VtbDtyZCc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdIYW50ZXJhZGUgcmFkZXInOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ1AmYXJpbmc7dHImYXVtbDtmZmFkZSBmZWwnOwokbGFuZ1sncHJvbXB0X3JlY29yZHNhZGRlZCddID0gJ1RpbGxhZ2RhIHJhZGVyJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBwcm9wcmVsbnMnXSA9ICdLdW5kZSBpbnRlIGhpdHRhIGVnZW5zcGFlciBmJm91bWw7ciBncnVwcGVuICVzJzsKJGxhbmdbJ2Vycm9yX25vcmVzcG9uc2Vmcm9tc2VydmVyJ10gPSAnS3VuZGUgaW50ZSBmJmFyaW5nOyBuJmFyaW5nO2dvdCBzdmFyIGZyJmFyaW5nO24gU01UUC1zZXJ2ZXJuJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpbGVub3Rmb3VuZCddID0gJ0ZpbGVuICglcykga3VuZGUgaW50ZSBoaXR0YXMnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ09naWx0aWd0IHYmYXVtbDtyZGUgZiZvdW1sO3IgZHJvcGRvd24gZWxsZXIgZmxlcnZhbHNmJmF1bWw7bHRldCAlcyc7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWVsZGxlbmd0aCddID0gJ0YmYXVtbDtsdGV0ICVzICZvdW1sO3ZlcnN0aWdlciBtYWdsJmF1bWw7bmdkJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydHVzZXJzJ10gPSAnSW1wb3J0ZmVsIChyYWQgJXMpOiAlcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0eWRlZm5zJ10gPSAnS3VuZGUgaW50ZSBoJmF1bWw7bXRhIGRlZmluaXRpb25lciBmJm91bWw7ciBlZ2Vuc2thcGVuIChpbnRlcm50IGZlbCknOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNldHRpbmdpbmZvJ10gPSAnUHJvYmxlbSBtZWQgYXR0IHN0JmF1bWw7bGxhIGluIGFudiZhdW1sO25kYXJpbmZvcm1hdGlvbic7CiRsYW5nWydlcnJvcl9pbXBvcnRyZXF1aXJlZGZpZWxkJ10gPSAnS3VuZGUgaW50ZSBoaXR0YSBlbiBrb2x1bW4gZiZvdW1sO3IgZiZhdW1sO2x0ZXQgJXMnOwokbGFuZ1snZXJyb3Jfbm9ncm91cHByb3BlcnRpZXMnXSA9ICdLdW5kZSBpbnRlIGhpdHRhIGVnZW5za2FwZXIgZiZvdW1sO3IgZGVuIGFuZ2l2bmEgZ3J1cHBlbic7CiRsYW5nWydlcnJvcl9pbXBvcnRmaWxlZm9ybWF0J10gPSAnRGVuIGFuZ2l2bmEgaW1wb3J0ZmlsZW4gJmF1bWw7ciBpbnRlIGtvcnJla3QgZm9ybWF0dGVyYWQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ0t1bmRlIGludGUgJm91bWw7cHBuYSBmaWwnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjbiBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0ZXJhIGFudiZhdW1sO25kYXJlIHRpbGwgZGVubmEgZ3J1cHBlbic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdBbmdlIENTVi1maWwnOwokbGFuZ1sncHJvbXB0X2ltcG9ydHhtbGZpbGUnXSA9ICdBbmdlIFhNTC1maWwnOwokbGFuZ1sncHJvbXB0X2V4cG9ydHVzZXJzJ10gPSAnRXhwb3J0ZXJhIGFudiZhdW1sO25kYXJlJzsKJGxhbmdbJ3Byb21wdF9pbXBvcnR1c2VycyddID0gJ0ltcG9ydGVyYSBhbnYmYXVtbDtuZGFyZSc7CiRsYW5nWydwcm9tcHRfY2xlYXInXSA9ICdSZW5zYSc7CiRsYW5nWydwcm9tcHRfaW1hZ2VfZGVzdGluYXRpb25fcGF0aCddID0gJ1Mmb3VtbDtrdiZhdW1sO2cgZiZvdW1sO3IgYmlsZCc7CiRsYW5nWydlcnJvcl9taXNzaW5nX3VwbG9hZCddID0gJ0V0dCBwcm9ibGVtIHVwcHN0b2QgbWVkIGVuIHNha25hZCAobWVuIGtyJmF1bWw7dmQpIHVwcGxhZGRuaW5nJzsKJGxhbmdbJ2Vycm9yX2JhZF94bWwnXSA9ICdLdW5kZSBpbnRlIGhhbnRlcmEgZGVuIHRpbGxoYW5kYWgmYXJpbmc7bGxuYSBYTUwtZmlsZW4nOwokbGFuZ1snZXJyb3Jfbm90ZW1wdHlncm91cCddID0gJ0thbiBpbnRlIHRhIGJvcnQgZW4gZ3J1cHAgc29tIGlubmVoJmFyaW5nO2xsZXIgYW52JmF1bWw7bmRhcmUnOwokbGFuZ1snZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucyddID0gJ0RlbiBoJmF1bWw7ciBhbnYmYXVtbDtuZGFyZW4gaGFyIHJlZGFuIGxvZ2dhdCBpdCc7CiRsYW5nWydlcnJvcl9jYXB0Y2hhbWlzbWF0Y2gnXSA9ICdCaWxkZW5zIHRleHQgaGFyIGludGUgbWF0YXRzIGluIGtvcnJla3QnOwokbGFuZ1sncHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2lucyddID0gJ1RpbGwmYXJpbmc7dCBhbnYmYXVtbDtuZGFyZSBhdHQgbG9nZ2EgaW4gbWVkIGZsZXJhIHNlc3Npb25lcic7CiRsYW5nWydwcm9tcHRfYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJ10gPSAnVGlsbCZhcmluZzt0bmEgZmlsJmF1bWw7bmRlbHNlIGYmb3VtbDtyIGJpbGRlciBzb20gYW52JmF1bWw7bmRhcmUgdGlsbCZhcmluZzt0cyBsYWRkYSB1cHAnOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZVVzZXInXSA9ICc8aDM+T25EZWxldGVVc2VyPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPnVzZXJuYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVVc2VyJ10gPSAnPGgzPk9uQ3JlYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25VcGRhdGVVc2VyJ10gPSAnPGgzPk9uVXBkYXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyB1cGRhdGVkIChlaXRoZXIgYnkgdXNlciB0aGVtc2VsZiBvciBhZG1pbik8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSB1c2VyIG5hbWU8L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIHVzZXIgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkNyZWF0ZUdyb3VwJ10gPSAnPGgzPk9uQ3JlYXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGNyZWF0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+ZGVzY3JpcHRpb248L2VtPiAtIFRoZSBncm91cCBkZXNjcmlwdGlvbjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkRlbGV0ZUdyb3VwJ10gPSAnPGgzPk9uRGVsZXRlR3JvdXA8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIGdyb3VwIGlzIGRlbGV0ZWQ8L3A+DQo8aDQ+UGFyYW1ldGVyczwvaDQ+DQo8dWw+DQo8bGk+PGVtPm5hbWU8L2VtPiAtIFRoZSBncm91cCBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBncm91cCBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9naW4nXSA9ICc8aDM+T25Mb2dpbjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBsb2dzIGluPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZG91dCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBleHBpcmVzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZCBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnRW4gaCZhdW1sO25kZWxzZSBzb20gc2thcGFzIGQmYXJpbmc7IGVuIGFudiZhdW1sO25kYXJlIGxvZ2dhciBpbiBpIHN5c3RlbWV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25Mb2dvdXQnXSA9ICdFbiBoJmF1bWw7bmRlbHNlIHNvbSBza2FwYXMgZCZhcmluZzsgZW4gYW52JmF1bWw7bmRhcmUgbG9nZ2FyIHV0IHVyIHN5c3RlbWV0JzsKJGxhbmdbJ2V2ZW50X2luZm9fT25FeHBpcmVVc2VyJ10gPSAnRW4gaCZhdW1sO25kZWxzZSBzb20gc2thcGFzIGQmYXJpbmc7IGVuIGFudiZhdW1sO25kYXJlcyBpbmxvZ2duaW5nc3Nlc3Npb24gbCZvdW1sO3BlciB1dCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlVXNlciddID0gJ0VuIGgmYXVtbDtuZGVsc2Ugc29tIHNrYXBhcyBkJmFyaW5nOyBlbiBhbnYmYXVtbDtuZGFyZSBza2FwYXMnOwokbGFuZ1snZXZlbnRfaW5mb19PblVwZGF0ZVVzZXInXSA9ICdFbiBoJmF1bWw7bmRlbHNlIHNvbSBza2FwYXMgZCZhcmluZzsgZW4gYW52JmF1bWw7bmRhcmVzIGluZm9ybWF0aW9uIHVwcGRhdGVyYXMnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZVVzZXInXSA9ICdFbiBoJmF1bWw7bmRlbHNlIHNvbSBza2FwYXMgZCZhcmluZzsgZXR0IGFudiZhdW1sO25kYXJrb250byB0YXMgYm9ydCc7CiRsYW5nWydldmVudF9pbmZvX09uQ3JlYXRlR3JvdXAnXSA9ICdFbiBoJmF1bWw7bmRlbHNlIHNvbSBza2FwYXMgZCZhcmluZzsgZW4gYW52JmF1bWw7bmRhcmdydXBwIHNrYXBhcyc7CiRsYW5nWydldmVudF9pbmZvX09uVXBkYXRlR3JvdXAnXSA9ICdFbiBnZW5lcmVyYWQgaCZhdW1sO25kZWxzZSBkJmFyaW5nOyBlbiBhbnYmYXVtbDtuZGFyZ3J1cHAgJmF1bWw7ciB1cHBkYXRlcmFkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25EZWxldGVHcm91cCddID0gJ0VuIGgmYXVtbDtuZGVsc2Ugc29tIHNrYXBhcyBkJmFyaW5nOyBlbiBhbnYmYXVtbDtuZGFyZ3J1cHAgdGFzIGJvcnQnOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0JhY2tlbmQtZ3J1cHAnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBGJm91bWw7bGphbmRlIG1ha3JvbiBrYW4gYW52JmF1bWw7bmRhcyBpIGRlc3NhIGYmYXVtbDtsdCB7JHVzZXJuYW1lfSx7JGdyb3VwfS4gTiZhdW1sO3IgJiMwMzk7eyRncm91cH0tbWFrcm90JiMwMzk7IGFudiZhdW1sO25kcyBrb21tZXIgc3lzdGVtZXQgZXJzJmF1bWw7dHRhIG5hbW5ldCAgcCZhcmluZzsgZGVuIGYmb3VtbDtyc3RhIG1lZGxlbXNncnVwcGVuIHNvbSBhbnYmYXVtbDtuZGFyZW4gdGlsbGgmb3VtbDtyIG9jaCBrb21tZXIgc3R5cmEgb20gdGlsbCBkZW4gc2lkYW4uJzsKJGxhbmdbJ2luZm9fYWRtaW5fcGFzc3dvcmQnXSA9ICdSZWRpZ2VyYSBkZXR0YSBmJmF1bWw7bHRldCBmJm91bWw7ciBhdHQgJmFyaW5nO3RlcnN0JmF1bWw7bGxhIGFudiZhdW1sO25kYXJlbnMgbCZvdW1sO3Nlbm9yZCc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnUmVkaWdlcmEgZGV0dGEgZiZhdW1sO2x0ZXQgZiZvdW1sO3IgYXR0ICZhcmluZzt0ZXJzdCZhdW1sO2xsYSBhbnYmYXVtbDtuZGFyZW5zIGwmb3VtbDtzZW5vcmQnOwokbGFuZ1snZXJyb3JfdXNlcm5hbWVfZXhpc3RzJ10gPSAnRGV0IGZpbm5zIHJlZGFuIGVuIGFudiZhdW1sO25kYXJlIG1lZCBkZXQgYW52JmF1bWw7bmRhcm5hbW5ldCc7CiRsYW5nWydub2NzdnJlc3VsdHMnXSA9ICdJbmdldCByZXN1bHRhdCByZXR1cm5lcmFkZXMgZnImYXJpbmc7biBDU1YtZXhwb3J0ZW4nOwokbGFuZ1sncHJvbXB0X3VuZmxkbGVuJ10gPSAnTCZhdW1sO25nZCBwJmFyaW5nOyBmJmF1bWw7bHRldCBmJm91bWw7ciBhbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdMJmF1bWw7bmdkIHAmYXJpbmc7IGYmYXVtbDtsdGV0IGYmb3VtbDtyIGwmb3VtbDtzZW5vcmQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ01pbi9tYXgtdiZhdW1sO3JkZW5hIGYmb3VtbDtyIGwmYXVtbDtuZ2RlbiBwJmFyaW5nOyBsJm91bWw7c2Vub3JkICZhdW1sO3Igb2dpbHRpZ2EnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lbGVuZ3RocyddID0gJ01pbi9tYXgtdiZhdW1sO3JkZW5hIGYmb3VtbDtyIGwmYXVtbDtuZ2RlbiBwJmFyaW5nOyBhbnYmYXVtbDtuZGFybmFtbiAmYXVtbDtyIG9naWx0aWdhJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdPZ2lsdGlnIGVwb3N0YWRyZXNzJzsKJGxhbmdbJ2Vycm9yX25vZW1haWxhZGRyZXNzJ10gPSAnSW5nZW4gZXBvc3RhZHJlc3MgaGl0dGFkZXMgZiZvdW1sO3IgZGV0dGEga29udG90JzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZWV0dGluZ2luZm8nXSA9ICdFdHQgZmVsIHVwcHN0b2QgbiZhdW1sO3IgYW52JmF1bWw7bmRhcmluZm9ybWF0aW9uZW4gc2t1bGxlIHNwYXJhcyc7CiRsYW5nWydlcnJvcl9zZXR0aW5ncHJvcGVydHknXSA9ICdFdHQgZmVsIHVwcHN0b2QgbiZhdW1sO3IgYW52JmF1bWw7bmRhcmVnZW5za2FwZW4gc2t1bGxlIHNwYXJhcyc7CiRsYW5nWyd1c2VyX2FkZGVkJ10gPSAnQW52JmF1bWw7bmRhcmVuICVzID0gJXMgbGFkZXMgdGlsbCc7CiRsYW5nWyd1c2VyX2RlbGV0ZWQnXSA9ICdBbnYmYXVtbDtuZGFyZW4gdWlkPSVzIHRvZ3MgYm9ydCc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ0VnZW5za2FwJzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWJmF1bWw7cmRlIChyZWd1bGomYXVtbDtydCB1dHRyeWNrKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1Zhcm5pbmc6IERlc3NhIGYmYXVtbDtsdCBwJmFyaW5nO3ZlcmthciBzdG9ybGVrZW4gcCZhcmluZzsgZiZhdW1sO2x0IGkgZm9ybXVsJmF1bWw7ci4gRGV0ICZhdW1sO3IgaW50ZSB0aWxsciZhcmluZztkbGlndCBhdHQgbWluc2thIGRlc3NhIHYmYXVtbDtyZGVuIGkgZW4gZXhpc3RlcmFuZGUgd2ViYnBsYXRzLic7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnJkF1bWw7ciBkdSBzJmF1bWw7a2VyIHAmYXJpbmc7IGF0dCBkdSB2aWxsIGp1c3RlcmEgaW5zdCZhdW1sO2xsbmluZ2FybmEgZiZvdW1sO3IgbW9kdWxlbj8nOwokbGFuZ1snZXJyb3JfZW1haWxhbHJlYWR5dXNlZCddID0gJ0Vwb3N0YWRyZXNzZW4gYW52JmF1bWw7bmRzIHJlZGFuJzsKJGxhbmdbJ3Byb21wdF91c2Vjb29raWVzdG9yZW1lbWJlciddID0gJ0FudiZhdW1sO25kIGNvb2tpZXMgZiZvdW1sO3IgYXR0IGtvbW1hIGloJmFyaW5nO2cgaW5sb2dnbmluZ3N1cHBnaWZ0ZXInOwokbGFuZ1sncHJvbXB0X2Nvb2tpZW5hbWUnXSA9ICdOYW1uIHAmYXJpbmc7IGNvb2tpZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJ1RpbGwmYXJpbmc7dCBkdWJsZXR0ZXIgcCZhcmluZzsgZXBvc3RhZHJlc3Nlcic7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWVfaXNfZW1haWwnXSA9ICdlcG9zdGFkZHJlc3NlbiAmYXVtbDtyIGFudiZhdW1sO25kYXJuYW1uZXQnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnRiZvdW1sO3JzJm91bWw7ayBoJmFyaW5nO2xsYSBpbmxvZ2duaW5nYXIgdmlkIGxpdiBnZW5vbSBhdHQgYW52JmF1bWw7bmRhIGNvb2tpZXMgPGVtPihjb29raWU6biAmYXJpbmc7dGVyc3QmYXVtbDtsbHMgdmlkIGFrdGl2aXRldCBpIHdlYmJwbGF0c2VuKTwvZW0+JzsKJGxhbmdbJ2luZm9fYWxsb3dfZHVwbGljYXRlX2VtYWlscyddID0gJyh0aWxsJmFyaW5nO3QgbXVsdGlwbGEgYW52JmF1bWw7bmRhcmUgbWVkIHNhbW1hIGVwb3N0YWRyZXNzKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKHVzZXImIzAzOTtzIGVtYWlsIGFkZHJlc3MgaXMgdGhlaXIgdXNlcm5hbWUgLS0gZG9uJiMwMzk7dCBzZXQgdGhpcyB3aXRoICZxdW90O2FsbG93IGR1cGxpY2F0ZSBlbWFpbCBhZGRyZXNzZXMmcXVvdDshKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ1RpbGwmYXJpbmc7dCBtdWx0aXBsYSBwJmFyaW5nO21pbm5lbHNlciBhdiB0eXBlbiAmcXVvdDtnbCZvdW1sO210IGwmb3VtbDtzZW5vcmQmcXVvdDsnOwokbGFuZ1snaW5mb19hbGxvd19kdXBsaWNhdGVfcmVtaW5kZXJzJ10gPSAnKHRpbGwmYXJpbmc7dCBhbnYmYXVtbDtuZGFyZSBhdHQgYmVnJmF1bWw7cmEgZW4gJmFyaW5nO3RlcnN0JmF1bWw7bGxuaW5nIGF2IGwmb3VtbDtzZW5vcmRldCwgJmF1bWw7dmVuIG9tIGRlIGludGUgaGFyIGJla3ImYXVtbDtmdGF0IHRpZGlnYXJlKSc7CiRsYW5nWydwcm9tcHRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJ0FudiZhdW1sO25kIEZyb250LWVuZCBVc2VyOnMgc3BlY2lmaWthIHImYXVtbDt0dGlnaGV0ZXI/JzsKJGxhbmdbJ2luZm9fZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9ucyddID0gJyhOb3JtYWx0ICZhdW1sO3IgciZhdW1sO3R0aWdoZXRlcm5hIGYmb3VtbDtyIEZyb250ZW5kLWFudiZhdW1sO25kYXJlIHNhbW1hIHNvbSBtb3RzdmFyYW5kZSByJmF1bWw7dHRpZ2hldGVyIGYmb3VtbDtyIEFkbWluLWRlbGVuIHNvbSBMJmF1bWw7Z2cgdGlsbCBhbnYmYXVtbDtuZGFyZSwgTCZhdW1sO2dnIHRpbGwgZ3J1cHAgb3N2LiBPbSBkdSB2JmF1bWw7bGplciBkZXR0YSBhbHRlcm5hdGl2IGtvbW1lciBkZXQgYmxpIHNlcGFyYXRhIHImYXVtbDt0dGlnaGV0ZXIgZiZvdW1sO3IgRnJvbnRlbmQtYW52JmF1bWw7bmRhbmRhcmUuKS4nOwokbGFuZ1snZXJyb3JfbWlzc2luZ3VwbG9hZCddID0gJ0t1bmRlIGludGUgaGl0dGEgZGVuIHVwcGxhZGRhZGUgZmlsZW4gKGludGVybnQgZmVsKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ0RldCB1cHBzdG9kIGV0dCBmZWwgbWVkIGZpbGVuIGR1IGxhZGRhdCB1cHAuIEYmb3VtbDtycyZvdW1sO2sgaWdlbic7CiRsYW5nWydlcnJvcl9taXNzaW5ndXNlcm5hbWUnXSA9ICdEdSBhbmdhdiBpbmdldCBhbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWydlcnJvcl9taXNzaW5nZW1haWwnXSA9ICdEdSBhbmdhdiBpbnRlIGRpbiBlcG9zdGFkcmVzcyc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdEdSBhbmdhdiBpbmdldCBsJm91bWw7c2Vub3JkJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdMb2dnYXQgdXQgZnImYXJpbmc7biBGcm9udGVuZCBVc2VyJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dnZWRpbiddID0gJ0xvZ2dhIGluIGkgRnJvbnRlbmQgVXNlcic7CiRsYW5nWydlZGl0cHJvcF9pbmZvbXNnJ10gPSAnPGZvbnQgY29sb3I9JnF1b3Q7cmVkJnF1b3Q7PjxiPlVTRSBDQVVUSU9OPC9iPiB3aGVuIGNoYW5naW5nIGV4aXN0aW5nIHByb3BlcnRpZXMgdGhhdCBhcmUgYXNzaWduZWQgdG8gZ3JvdXBzLCB5b3UgbWF5IHBvdGVudGlhbGx5IGNhdXNlIGRhbWFnZSBhbmQgYnJlYWsgYW4gZXhpc3Rpbmcgc2l0ZSA8aT4oZXNwZWNpYWxseSBpZiB5b3UgcmVkdWNlIGZpZWxkIGxlbmd0aHMsIGV0Yyk8L2k+PC9mb250Pic7CiRsYW5nWydpbmZvX3NtdHB2YWxpZGF0ZSddID0gJ0RlbiBoJmF1bWw7ciBmdW5rdGlvbmVuIGZ1bmdlcmFyIGludGUgcCZhcmluZzsgV2luZG93cyc7CiRsYW5nWydtc2dfZG9udGNyZWF0ZXVzZXJuYW1lJ10gPSAnU2thcGEgaW50ZSBlZ2Vuc2thcGVyIGYmb3VtbDtyIGFudiZhdW1sO25kYXJuYW1uIG9jaCBsJm91bWw7c2Vub3JkIGVmdGVyc29tIGRlc3NhICZhdW1sO3IgaW5neWdnZGEgaSBtb2R1bGVuIEZyb250RW5kVXNlcnMnOwokbGFuZ1sncHJvbXB0X2V4cG9ydGNzdiddID0gJ0V4cG9ydGVyYSBhbnYmYXVtbDtuZGFyZSB0aWxsIENTVic7CiRsYW5nWydleHBvcnRjc3YnXSA9ICdFeHBvcnRlcmEnOwokbGFuZ1snaW1wb3J0Y3N2J10gPSAnSW1wb3J0ZXJhJzsKJGxhbmdbJ2FkbWluJ10gPSAnQWRtaW5pc3RyZXJhJzsKJGxhbmdbJ2VkaXRwcm9wJ10gPSAnUmVkaWdlcmEgZWdlbnNrYXAnOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4bCZhdW1sO25nZCc7CiRsYW5nWydjcmVhdGVkJ10gPSAnU2thcGFkJzsKJGxhbmdbJ3NvcnRieSddID0gJ1NvcnRlcmEgZWZ0ZXInOwokbGFuZ1snc29ydCddID0gJ1NvcnRlcmFyJzsKJGxhbmdbJ3VzZXJzaW5ncm91cCddID0gJ0FudiZhdW1sO25kYXJlIGkgZGVuIHZhbGRhIGdydXBwZW4vZ3J1cHBlcm5hJzsKJGxhbmdbJ3VzZXJsaW1pdCddID0gJ0JlZ3ImYXVtbDtuc2EgcmVzdWx0YXRldCBlZnRlcic7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdLdW5kZSBpbnRlIGhpdHRhIGV0dCBlLXBvc3RmJmF1bWw7bHQgZiZvdW1sO3IgZGVubmEgYW52JmF1bWw7bmRhcmVuLiBEdSBrYW5za2UgYmVoJm91bWw7dmVyIGtvbnRha3RhIHN5c3RlbWFkbWluaXN0cmF0Jm91bWw7cmVuLic7CiRsYW5nWydwcm9tcHRfZm9yZ290cHdfcGFnZSddID0gJ1NpZC1JRC8tYWxpYXMgZiZvdW1sO3IgR2wmb3VtbDttdCBsJm91bWw7c2Vub3JkLWZvcm11bCZhdW1sO3JldCc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ1NpZC1JRC8tYWxpYXMgZiZvdW1sO3IgJkF1bWw7bmRyYSBpbnN0JmF1bWw7bGxuaW5nYXItZm9ybXVsJmF1bWw7cmV0JzsKJGxhbmdbJ3Byb21wdF9sb2dpbl9wYWdlJ10gPSAnU2lkLUlELy1hbGlhcyBmJm91bWw7ciBnJmFyaW5nOyB0aWxsIGVmdGVyIGlubG9nZ25pbmcqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ1NpZC1JRC8tYWxpYXMgZiZvdW1sO3IgZyZhcmluZzsgdGlsbCBlZnRlciB1dGxvZ2duaW5nIConOwokbGFuZ1snc29ydG9yZGVyJ10gPSAnU29ydGVyaW5nc29yZG5pbmcnOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnRXR0IGFudGFsIGFudiZhdW1sO25kYXJlIGgmYXJpbmc7bGxlciBwJmFyaW5nOyBhdHQgJmFyaW5nO3RlcnN0JmF1bWw7bGxhIGdsJm91bWw7bWRhIGwmb3VtbDtzZW5vcmQuIEp1c3QgbnUgJmF1bWw7ciBhbnRhbGV0Oic7CiRsYW5nWydyZW1vdmUxd2VlayddID0gJ1JhZGVyYSBwb3N0ZXIgc29tICZhdW1sO3IgJmF1bWw7bGRyZSBlbiB2ZWNrYSc7CiRsYW5nWydyZW1vdmUxbW9udGgnXSA9ICdSYWRlcmEgcG9zdGVyIHNvbSAmYXVtbDtyICZhdW1sO2xkcmUgZW4gbSZhcmluZztuYWQnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnVGEgYm9ydCBhbGxhIHBvc3Rlcic7CiRsYW5nWydhcmV5b3VzdXJlJ10gPSAnJkF1bWw7ciBkdSBzJmF1bWw7a2VyPyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkY29kZSddID0gJ0VuIG9naWx0aWcga29kIGhhciBhbmdldHRzLCB2JmF1bWw7bmxpZ2VuIGYmb3VtbDtycyZvdW1sO2sgaWdlbic7CiRsYW5nWydlcnJvcl90ZW1wY29kZW5vdGZvdW5kJ10gPSAnSW5nZW4gdGlsbGYmYXVtbDtsbGlnIGtvZCBmJm91bWw7ciBkaXR0IGFudiZhdW1sO25kYS1JRCBrdW5kZSBoaXR0YXMgaSBkYXRhYmFzZW4nOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdmVyaWZ5dGVtcGxhdGUnXSA9ICdNYWxsIHNvbSBhbnYmYXVtbDtuZHMgZiZvdW1sO3IgYXR0IHZpc2EgYmVrciZhdW1sO2Z0ZWxzZWZvcm11bCZhdW1sO3InOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfZW1haWx0ZW1wbGF0ZSddID0gJ01hbGwgc29tIGFudiZhdW1sO25kcyBmJm91bWw7ciBhdHQgc2tpY2thIGJvcnRnbCZvdW1sO21kYSBsJm91bWw7c2Vub3JkJzsKJGxhbmdbJ2Vycm9yX3Jlc2V0YWxyZWFkeXNlbnQnXSA9ICdBbnRpbmdlbiBoYXIgZHUgc2omYXVtbDtsdiBlbGxlciBuJmFyaW5nO2dvbiBhbm5hbiBiZWcmYXVtbDtydCBhdHQgZiZhcmluZzsgJmFyaW5nO3RlcnN0JmF1bWw7bGxhIGwmb3VtbDtzZW5vcmRldCBmJm91bWw7ciBkZXR0YSBrb250by4gS29udHJvbGxlcmEgZGluIGUtcG9zdCwgZHUgaGl0dGFyIHZpZGFyZSBpbnN0cnVrdGlvbmVyIGYmb3VtbDtyIGh1ciBkdSAmYXJpbmc7dGVyc3QmYXVtbDtsbGVyIGwmb3VtbDtzZW5vcmRldCBpIGRpbiBpbmtvcmcuJzsKJGxhbmdbJ2Vycm9yX2RiZXJyb3InXSA9ICdEYXRhYmFzZmVsJzsKJGxhbmdbJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCddID0gJ0R1IGYmYXJpbmc7ciBkZXR0YSBtZWRkZWxhbmRlIGVmdGVyc29tIG4mYXJpbmc7Z29uIGhhciBhbmdldHQgYXR0IGR1IGhhciBnbCZvdW1sO210IGRpdHQgbCZvdW1sO3Nlbm9yZC4gT20gcyZhcmluZzsgJmF1bWw7ciBmYWxsZXQsIGwmYXVtbDtzIGluc3RydWt0aW9uZXJuYSBuZWRhbi4gT20gZHUgaW50ZSBoYXIgZW4gYW5pbmcgb20gdmFkIGRldHRhICZhdW1sO3Iga2FuIGR1IHRhIGJvcnQgZGV0dGEgbWVkZGVsYW5kZSBvY2ggdmkgdGFja2FyIGRpZyBmJm91bWw7ciBkaW4gdGlkLic7CiRsYW5nWydwcm9tcHRfY29kZSddID0gJ0tvZCc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdGJm91bWw7bGphbmRlIGtvZCBoYXIgc2x1bXBtJmF1bWw7c3NpZ3QgZ2VuZXJlcmF0cyBmJm91bWw7ciBhdHQgdmVyaWZpZXJhIGFudiZhdW1sO25kYXJrb250b3QuIE4mYXVtbDtyIGR1IGtsaWNrYXIgcCZhcmluZzsgbCZhdW1sO25rZW4gbmVkYW4ga29tbWVyIGR1IGF0dCBzZSBldHQgZiZhdW1sO2x0IGYmb3VtbDtyIGF0dCBza3JpdmEgaW4gZGVubmEga29kZW4uIE5vcm1hbHQgJmF1bWw7ciBmJmF1bWw7bHRldCByZWRhbiBpZnlsbHQgZiZvdW1sO3IgZGlnLCBtZW4gb20gZGV0IGludGUgJmF1bWw7ciBzJmFyaW5nOyAmYXVtbDtyIGtvZGVuOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0dlbm9tIGF0dCBrbGlja2EgcCZhcmluZzsgZiZvdW1sO2xqYW5kZSBsJmF1bWw7bmsga29tbWVyIGR1IGhhbW5hIHAmYXJpbmc7IHdlYmJwbGF0c2VuIGQmYXVtbDtyIGR1IGthbiBtYXRhIGluIGtvZGVuIG92YW4gb2NoIGQmYXVtbDtybWVkICZhcmluZzt0ZXJzdCZhdW1sO2xsYSBkaXR0IGwmb3VtbDtzZW5vcmQuOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnR2wmb3VtbDttdCBsJm91bWw7c2Vub3JkJzsKJGxhbmdbJ2Vycm9yX25vbWFpbGVybW9kdWxlJ10gPSAnS2FuIGludGUgaGl0dGEgbW9kdWxlbiBDTVNNYWlsZXInOwokbGFuZ1snaW5mb19mb3Jnb3Rwd21lc3NhZ2VzZW50J10gPSAnRXR0IG1haWwgaGFyIHNraWNrYXRzIHRpbGwgJXMgbWVkIGluc3RydWt0aW9uZXIgb20gaHVyIGwmb3VtbDtzZW5vcmRldCAmYXJpbmc7dGVyc3QmYXVtbDtsbHMuJzsKJGxhbmdbJ2xvc3Rwd19tZXNzYWdlJ10gPSAnUyZhcmluZzsgZHUgaGFyIGdsJm91bWw7bXQgZWxsZXIgdGFwcGF0IGJvcnQgZGl0dCBsJm91bWw7c2Vub3JkPyBNYXRhIGluIGRpdHQgYW52JmF1bWw7bmRhcm5hbW4gaCZhdW1sO3IuIE9tIHZpIGthbiBoaXR0YSBkaWcgaSB2JmFyaW5nO3IgbGlzdGEgJm91bWw7dmVyIGFudiZhdW1sO25kYXJlIGtvbW1lciB2aSBza2lja2EgaW5zdHJ1a3Rpb25lciBmJm91bWw7ciBodXIgZHUga2FuICZhcmluZzt0ZXJzdCZhdW1sO2xsYSBkaXR0IGwmb3VtbDtzZW5vcmQnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdNYWxsYXIgZiZvdW1sO3IgZ2wmb3VtbDttdCBsJm91bWw7c2Vub3JkJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ01hbGwgZiZvdW1sO3IgZ2wmb3VtbDttdCBhbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWydlcnJvcl9wcm9wbm90Zm91bmQnXSA9ICdFZ2Vuc2thcGVuICVzIGt1bmRlIGludGUgaGl0dGFzJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdIaXR0YWRlIGVnZW5za2FwZXInOwokbGFuZ1snYWRkcHJvcCddID0gJ0wmYXVtbDtnZyB0aWxsIGVnZW5za2FwJzsKJGxhbmdbJ2Vycm9yX3JlcXVpcmVkZmllbGQnXSA9ICdFdHQgYmVnJmF1bWw7cnQgZiZhdW1sO2x0ICglcykgdmFyIHRvbXQnOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdBbmdlIGV0dCBueXR0IGwmb3VtbDtzZW5vcmQnOwokbGFuZ1snZXJyb3Jfbm90bG9nZ2VkaW4nXSA9ICdEdSB2ZXJrYXIgaW50ZSB2YXJhIGlubG9nZ2FkJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdJbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1sndXNlcl9yZWdpc3RyYXRpb24nXSA9ICdSZWdpc3RyZXJpbmcnOwokbGFuZ1snZXJyb3JfYWNjb3VudGV4cGlyZWQnXSA9ICdEZXQgaCZhdW1sO3Iga29udG90IGhhciBsJm91bWw7cHQgdXQnOwokbGFuZ1snZXJyb3JfaW1wcm9wZXJlbWFpbGZvcm1hdCddID0gJ09naWx0aWd0IGZvcm1hdCBwJmFyaW5nOyBlcG9zdGFkcmVzcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZXhwaXJ5ZGF0ZSddID0gJ09naWx0aWd0IHV0ZyZhcmluZztuZ3NkYXR1bSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnRXR0IGZlbCB1cHBzdG9kIG4mYXVtbDtyIGVnZW5za2FwZW4gJXMgc2t1bGxlIHMmYXVtbDt0dGFzIGYmb3VtbDtyIGFudiZhdW1sO25kYXJlICRzJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRncm91cGlkJ10gPSAnT2dpbHRpZ3QgZ3J1cHBJRCAlcyc7CiRsYW5nWydoaWRkZW5maWVsZG1hcmtlciddID0gJ01hcmsmb3VtbDtyIGYmb3VtbDtyIGcmb3VtbDttdCBmJmF1bWw7bHQnOwokbGFuZ1snaGlkZGVuZmllbGRjb2xvciddID0gJ0YmYXVtbDtyZyBmJm91bWw7ciBnJm91bWw7bXQgZiZhdW1sO2x0JzsKJGxhbmdbJ2hpZGRlbiddID0gJ0cmb3VtbDttZCc7CiRsYW5nWydlcnJvcl9kdXBsaWNhdGVuYW1lJ10gPSAnRW4gZWdlbnNrYXAgbWVkIGRldCBuYW1uZXQgJmF1bWw7ciByZWRhbiBza2FwYXQnOwokbGFuZ1snZXJyb3Jfbm9wcm9wZXJ0aWVzJ10gPSAnSW5nYSBlZ2Vuc2thcGVyIGRlZmluaWVyYWRlJzsKJGxhbmdbJ2Vycm9yX25vcmVsYXRpb25zJ10gPSAnSW5nYSBlZ2Vuc2thcGVyIHZhbGRlcyBmJm91bWw7ciBkZW4gaCZhdW1sO3IgZ3J1cHBlbic7CiRsYW5nWydub2dyb3VwcyddID0gJ0luZ2EgZ3J1cHBlciAmYXVtbDtyIGRlZmluaWVyYWRlJzsKJGxhbmdbJ2dyb3Vwc2ZvdW5kJ10gPSAnSGl0dGFkZSBncnVwcGVyJzsKJGxhbmdbJ2Vycm9yX29uZWdyb3VwcmVxdWlyZWQnXSA9ICdNZWRsZW1za2FwIGkgbWluc3QgZW4gZ3J1cHAga3ImYXVtbDt2cyc7CiRsYW5nWydwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJ10gPSAnS3ImYXVtbDt2IG1lZGxlbXNza2FwIGkgbWluc3QgZW4gZ3J1cHAnOwokbGFuZ1snYmFjayddID0gJ1RpbGxiYWthJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nXSA9ICclcyAmYXVtbDtyIGV0dCBvYmxpZ2F0b3Jpc2t0IGYmYXVtbDtsdCc7CiRsYW5nWydyZXF1aXJlZGZpZWxkbWFya2VyJ10gPSAnTWFya2VyYSBvYmxpZ2F0b3Jpc2thIGYmYXVtbDtsdCBtZWQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnTWFya2VyYSBvYmxpZ2F0b3Jpc2thIGYmYXVtbDtsdCBtZWQnOwokbGFuZ1snbmV4dCddID0gJ04mYXVtbDtzdGEnOwokbGFuZ1snZXJyb3JfZ3JvdXBleGlzdHMnXSA9ICdFbiBncnVwcCBtZWQgZGV0IG5hbW5ldCBleGlzdGVyYXIgcmVkYW4nOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdPYmxpZ2F0b3Jpc2snOwokbGFuZ1snb3B0aW9uYWwnXSA9ICdGcml2aWxsaWcnOwokbGFuZ1snb2ZmJ10gPSAnQXYnOwokbGFuZ1snc2l6ZSddID0gJ1N0b3JsZWsnOwokbGFuZ1snc2l6ZWNvbW1lbnQnXSA9ICc8YnIvPihNYXhzdG9ybGVrIHAmYXJpbmc7IGJpbGQgaSBhbnRhbCBwaXhsYXIpJzsKJGxhbmdbJ2xlbmd0aCddID0gJ0wmYXVtbDtuZ2QnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4odGVja2VuIGkgaW5tYXRuaW5nc2YmYXVtbDtsdGV0KSc7CiRsYW5nWydzZWxvcHRpb25zJ10gPSAnQWx0ZXJuYXRpdiBpIHJ1bGxnYXJkaW5zbWVueSwgc2VwYXJlcmFkZSBtZWQgcmFkYnJ5dG5pbmdhci4gViZhdW1sO3JkZW4gc2VwYXJlcmFzIG1lZCAmcXVvdDtsaWthIG1lZCZxdW90Oy10ZWNrZW4gKHQuZXguIEt2aW5uYT1rKSc7CiRsYW5nWydyYWRpb29wdGlvbnMnXSA9ICdSYWRpbyBidXR0b24gZXRpa2V0dCwgc2VwYXJlcmFkIG1lZCByYWRicnl0bmluZ2FyLiBWJmF1bWw7cmRlbiBzZXBhcmVyYXMgbWVkICZxdW90O2xpa2EgbWVkJnF1b3Q7LXRlY2tlbiAodC5leC4gS3Zpbm5hPWspJzsKJGxhbmdbJ3Byb21wdCddID0gJ1Byb21wdCAnOwokbGFuZ1sncHJvbXB0X3R5cGUnXSA9ICdUeXAnOwokbGFuZ1sndHlwZSddID0gJ1R5cCc7CiRsYW5nWydmaWVsZHN0YXR1cyddID0gJ0YmYXVtbDtsdHN0YXR1cyc7CiRsYW5nWyd1c2VkaW5sb3N0dW4nXSA9ICdGciZhcmluZztnYSBpIGJvcnR0YXBwYXQ8YnIvPmFudiZhdW1sO25kYXJuYW1uJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0ICc7CiRsYW5nWydjaGVja2JveCddID0gJ0tyeXNzcnV0YSc7CiRsYW5nWydtdWx0aXNlbGVjdCddID0gJ0ZsZXJ2YWxzbGlzdGEnOwokbGFuZ1sncmFkaW9idXR0b25zJ10gPSAnUmFkaW8gQnV0dG9ucyAnOwokbGFuZ1snaW1hZ2UnXSA9ICdCaWxkJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRXBvc3RhZHJlc3MnOwokbGFuZ1sndGV4dGFyZWEnXSA9ICdUZXh0cnV0YSc7CiRsYW5nWydkcm9wZG93biddID0gJ1J1bGxnYXJkaW5zbWVueSc7CiRsYW5nWydtc2dfY3VycmVudGx5bG9nZ2VkaW5hcyddID0gJ1YmYXVtbDtsa29tbWVuJzsKJGxhbmdbJ2xvZ291dCddID0gJ0xvZ2dhIHV0JzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdBbnYmYXVtbDtuZCBkZXR0YSBncnVwcG5hbW4nOwokbGFuZ1sncHJvbXB0X2NoYW5nZXNldHRpbmdzJ10gPSAnJkF1bWw7bmRyYSBtaW5hIGluc3QmYXVtbDtsbG5pbmdhcic7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0lubG9nZ25pbmdlbiBtaXNzbHlja2FkZXMgLSBGZWxha3RpZ3QgYW52JmF1bWw7bmRhcm5hbW4gZWxsZXIgbCZvdW1sO3Nlbm9yZD8nOwokbGFuZ1snbG9naW4nXSA9ICdMb2dnYSBpbic7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ0V0aWtldHQgZiZvdW1sO3IgaW5sb2dnbmluZ3NrbmFwcCc7CiRsYW5nWydwcm9tcHRfdXNlcm5hbWUnXSA9ICdBbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWydwcm9tcHRfZW1haWwnXSA9ICdFcG9zdGFkcmVzcyc7CiRsYW5nWydwcm9tcHRfcGFzc3dvcmQnXSA9ICdMJm91bWw7c2Vub3JkJzsKJGxhbmdbJ3Byb21wdF9yZW1lbWJlcm1lJ10gPSAnS29tIGloJmFyaW5nO2cgbWlnIHAmYXJpbmc7IGRlbiBoJmF1bWw7ciBkYXRvcm4nOwokbGFuZ1sncmVnaXN0ZXInXSA9ICdSZWdpc3RyZXJhJzsKJGxhbmdbJ2ZvcmdvdHB3J10gPSAnR2wmb3VtbDttdCBkaXR0IGwmb3VtbDtzZW5vcmQ/JzsKJGxhbmdbJ2xvc3R1c2VybmFtZSddID0gJ0dsJm91bWw7bXQgZGluYSBpbmxvZ2duaW5nc3VwcGdpZnRlcj8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdTdGFuZGFyZHYmYXVtbDtyZGVuJzsKJGxhbmdbJ3RlbXBsYXRlJ10gPSAnTWFsbCc7CiRsYW5nWydlcnJvcl91c2Vybm90Zm91bmQnXSA9ICdBbnYmYXVtbDtuZGFySUQgaGl0dGFkZXMgaW50ZSc7CiRsYW5nWydlcnJvcl91c2VybmFtZXRha2VuJ10gPSAnQW52JmF1bWw7bmRhcm5hbW5ldCAoJXMpIGFudiZhdW1sO25kcyByZWRhbic7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnQW52JmF1bWw7bmQgU01UUCBmJm91bWw7ciBhdHQgdmFsaWRlcmEgZXBvc3RhZHJlc3Nlcj8nOwokbGFuZ1sncHJvbXB0X21pbnB3bGVuJ10gPSAnTWluc3RhIGwmYXVtbDtuZ2QgcCZhcmluZzsgbCZvdW1sO3Nlbm9yZCc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdNYXhsJmF1bWw7bmdkIGYmb3VtbDtyIGwmb3VtbDtzZW5vcmQnOwokbGFuZ1sncHJvbXB0X21pbnVubGVuJ10gPSAnTWluc3RhIGwmYXVtbDtuZ2QgcCZhcmluZzsgYW52JmF1bWw7bmRhcm5hbW4nOwokbGFuZ1sncHJvbXB0X21heHVubGVuJ10gPSAnTWF4bCZhdW1sO25nZCBmJm91bWw7ciBhbnYmYXVtbDtuZGFybmFtbic7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdTZXNzaW9uIFRpbWVvdXQgKHNla3VuZGVyKSc7CiRsYW5nWydwcm9tcHRfY29va2lla2VlcGFsaXZlJ10gPSAnQW52JmF1bWw7bmQgY29va2llcyBmJm91bWw7ciBhdHQgaCZhcmluZztsbGEgaW5sb2dnbmluZ2FyIHZpZCBsaXYnOwokbGFuZ1sncHJvbXB0X2FsbG93ZW1haWxyZWcnXSA9ICdUaWxsJmFyaW5nO3QgZXBvc3RyZWdpc3RyZXJpbmcnOwokbGFuZ1sncHJvbXB0X2RmbHRncm91cCddID0gJ1N0YW5kYXJkZ3J1cHAgZiZvdW1sO3IgbnlhIGFudiZhdW1sO25kYXJlJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnTWFsbCBmJm91bWw7ciAmYXVtbDtuZHJpbmdhciBhdiBpbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1snZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCddID0gJ0wmb3VtbDtzZW5vcmRlbiBzdCZhdW1sO21tZXIgaW50ZSAmb3VtbDt2ZXJlbnMnOwokbGFuZ1snZXJyb3JfaW52YWxpZHVzZXJuYW1lJ10gPSAnT2d0aWx0aWd0IGFudiZhdW1sO25kYXJuYW1uJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRwYXNzd29yZCddID0gJ09naWx0aWd0IGwmb3VtbDtzZW5vcmQnOwokbGFuZ1snZWRpdHVzZXInXSA9ICdSZWRpZ2VyYSBhbnYmYXVtbDtuZGFyZSc7CiRsYW5nWyd2YWxpZCddID0gJ0dpbHRpZyc7CiRsYW5nWyd1c2VybmFtZSddID0gJ0FudiZhdW1sO25kYXJuYW1uJzsKJGxhbmdbJ3N0YXR1cyddID0gJ1N0YXR1cyAnOwokbGFuZ1snZXJyb3JfbWVtYmVyZ3JvdXBzJ10gPSAnRGVuIGgmYXVtbDtyIGFudiZhdW1sO25kYXJlbiAmYXVtbDtyIGludGUgbWVkbGVtIGkgbiZhcmluZztnb24gZ3J1cHAnOwokbGFuZ1snZXJyb3JfcHJvcGVydGllcyddID0gJ0luZ2EgZWdlbnNrYXBlcic7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ0Ymb3VtbDtycyZvdW1sO2sgaW1wb3J0ZXJhIGR1YmxldHRlciBhdiBlZ2Vuc2thcGVyJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnViZhdW1sO3JkZSc7CiRsYW5nWydncm91cHMnXSA9ICdHcnVwcGVyJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdFZ2Vuc2thcGVyJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnTmFtbiBwJmFyaW5nOyBlZ2Vuc2thcCc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdWJmF1bWw7cmRlJzsKJGxhbmdbJ2FkZCddID0gJ0wmYXVtbDtnZyB0aWxsJzsKJGxhbmdbJ2hpc3RvcnknXSA9ICdIaXN0b3Jpayc7CiRsYW5nWydlZGl0J10gPSAnUmVkaWdlcmEnOwokbGFuZ1snZXhwaXJlcyddID0gJ0wmb3VtbDtwZXIgdXQnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnQW5nZSBkYXR1bSc7CiRsYW5nWycxMmhycyddID0gJzEyIHRpbW1hcic7CiRsYW5nWycyNGhycyddID0gJzI0IHRpbW1hcic7CiRsYW5nWyc0OGhycyddID0gJzQ4IHRpbW1hcic7CiRsYW5nWycxd2VlayddID0gJzEgdmVja2EnOwokbGFuZ1snMndlZWtzJ10gPSAnMiB2ZWNrb3InOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBtJmFyaW5nO25hZCc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBtJmFyaW5nO25hZGVyJzsKJGxhbmdbJzZtb250aHMnXSA9ICc2IG0mYXJpbmc7bmFkZXInOwokbGFuZ1snMXllYXInXSA9ICcxICZhcmluZztyJzsKJGxhbmdbJ25ldmVyJ10gPSAnQWxkcmlnJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsbWVzc2FnZSddID0gJ01vZHVsZSBpbnN0YWxsZWQgc3VjZXNzZnVsbHkuPGJyLz5CZSBzdXJlIHRvIHNldCB0aGUgJnF1b3Q7TW9kaWZ5IEZyb250RW5kVXNlciBQcm9wZXJ0aWVzIHBlcm1pc3Npb24uICBBZGRpdGlvbmFsbHksIHdlIHJlY29tbWVuZCB0aGF0IHlvdSBpbnN0YWxsIHRoZSBDYXB0Y2hhIG1vZHVsZS4gIElmIGluc3RhbGxlZCwgdmFsaWRhdGlvbiBvZiBhIGNhcHRjaGEgaW1hZ2Ugd2lsbCBiZSByZXF1aXJlZCBpbiBhZGRpdGlvbiB0byB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHRvIGxvZ2luLiAgVGhpcyBpcyBpbnRlbmRlZCB0byBwcmV2ZW50IGJydXRlIGZvcmNlIGF0dGFja3MuICA8c3Ryb25nPk5vdGU6PC9zdHJvbmc+IFRoZSBub2NhcHRjaGEgcGFyYW1ldGVyIGNhbiBiZSB1c2VkIHRvIGRpc2FibGUgdGhpcyBmdW5jdGlvbmFsaXR5IGV2ZW4gaWYgdGhlIENhcHRjaGEgbW9kdWxlIGlzIGluc3RhbGxlZC4mcXVvdDsnOwokbGFuZ1sncGFzc3dvcmQnXSA9ICdMJm91bWw7c2Vub3JkJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnSWdlbic7CiRsYW5nWydlcnJvcl9ncm91cG5hbWVfZXhpc3RzJ10gPSAnRW4gZ3J1cHAgbWVkIGRldCBuYW1uZXQgZXhpc3RlcmFyIHJlZGFuJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ1JlZGlnZXJhIGdydXBwJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1NraWNrYSc7CiRsYW5nWydjYW5jZWwnXSA9ICdBdmJyeXQnOwokbGFuZ1snZGVsZXRlJ10gPSAnVGEgYm9ydCc7CiRsYW5nWydjb25maXJtX2VkaXRncm91cCddID0gJyZBdW1sO3IgZHUgcyZhdW1sO2tlciBwJmFyaW5nOyBhdHQgZGV0dGEgJmF1bWw7ciBkZSBrb3JyZWt0YSBpbnN0JmF1bWw7bGxuaWduYXJuYSBmJm91bWw7ciBkZW4gaCZhdW1sO3IgZ3J1cHBlbj9cbkF0dCBzdCZhdW1sO25nYSBhdiBkZW5uYSBlZ2Vuc2thcGVuIHRhciBpbnRlIGJvcnQgbiZhcmluZztncmEgcG9zdGVyIGkgZWdlbnNrYXBzdGFiZWxsZW4gZiZvdW1sO3IgZGVubmEgZ3J1cHAvYW52JmF1bWw7bmRhcmUuIERlIGtvbW1hIGJhcmEgaW50ZSB2YXJhIHRpbGxnJmF1bWw7bmdsaWdhLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnJkF1bWw7ciBkdSBzJmF1bWw7a2VyIHAmYXJpbmc7IGF0dCBkdSB2aWxsIHRhIGJvcnQgZGVuIGgmYXVtbDtyIGdydXBwZW4/JzsKJGxhbmdbJ2NvbmZpcm1fZGVsZXRlX3Byb3AnXSA9ICcmQXVtbDtyIGR1IHMmYXVtbDtrZXIgcCZhcmluZzsgYXR0IGR1IHZpbGwgdGEgYm9ydCBkZW4gaCZhdW1sO3IgZWdlbnNrYXBlbj9cbkdlbm9tIGF0dCB0YSBib3J0IGRlbiBmJm91bWw7cnN2aW5uZXIgYWxsYSBldmVudHVlbGxhIGFudiZhdW1sO25kYXJ1cHBnaWZ0ZXIgbWVkIGRlbiBoJmF1bWw7ciBlZ2Vuc2thcGVuLic7CiRsYW5nWydlcnJvcl9pbnN1ZmZpY2llbnRwYXJhbXMnXSA9ICdPdGlsbHImYXVtbDtja2xpZ2EgcGFyYW1ldHJhcic7CiRsYW5nWydpZCddID0gJ0lEJzsKJGxhbmdbJ25hbWUnXSA9ICdOYW1uJzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRwcm9wJ10gPSAnRXR0IGZlbCB1cHBzdG9kIGQmYXJpbmc7IGVuIGVnZW5za2FwIGYmb3VtbDtyIGdydXBwZW4gc2t1bGxlIGwmYXVtbDtnZ2FzIHRpbGwnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwcmVsbiddID0gJ0V0dCBmZWwgdXBwc3RvZCBkJmFyaW5nOyBlbiByZWxhdGlvbiB0aWxsIGdydXBwZW4gc2t1bGxlIGwmYXVtbDtnZ2FzIHRpbGwnOwokbGFuZ1snZXJyb3JfY2FudGFkZGdyb3VwJ10gPSAnRXR0IGZlbCB1cHBzdG9kIGQmYXJpbmc7IGdydXBwZW4gc2t1bGxlIGwmYXVtbDtnZ2FzIHRpbGwnOwokbGFuZ1snZXJyb3JfY2FudGFzc2lnbnVzZXInXSA9ICdQcm9ibGVtIGF0dCBsJmF1bWw7Z2dhIHRpbGwgYW52JmF1bWw7bmRhcmUgdGlsbCBncnVwcCc7CiRsYW5nWydlcnJvcl9jb3VsZG5vdGRlbGV0ZXByb3BlcnR5J10gPSAnUHJvYmxlbSBtZWQgYXR0IHRhIGJvcnQgZW4gZWdlbnNrYXAnOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdLdW5kZSBpbnRlIGhpdHRhIG4mYXJpbmc7Z29uIGUtcG9zdGFkcmVzcyc7CiRsYW5nWydlcnJvcl9kZXN0aW5hdGlvbm5vdHdyaXRhYmxlJ10gPSAnSW5nYSBza3JpdnImYXVtbDt0dGlnaGV0ZXIgdGlsbCBtJmFyaW5nO2xtYXBwZW4nOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhcmFtcyddID0gJ09naWx0aWdhIHBhcmFtZXRyYXInOwokbGFuZ1snZXJyb3Jfbm9ncm91cHMnXSA9ICdLdW5kZSBpbnRlIGhpdHRhIG4mYXJpbmc7Z3JhIGdydXBwZXInOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdWZXJrc3QmYXVtbDtsbCc7CiRsYW5nWydmaWx0ZXInXSA9ICdGaWx0ZXIgJzsKJGxhbmdbJ3VzZXJmaWx0ZXInXSA9ICdSZWd1bGomYXVtbDtydCB1dHRyeWNrIGYmb3VtbDtyIGFudiZhdW1sO25kYXJuYW1uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnQmVza3Jpdm5pbmcnOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3J1cHBuYW1uJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ1RpbGx0ciZhdW1sO2RlIG5la2FzJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRmVsJzsKJGxhbmdbJ2FkZGdyb3VwJ10gPSAnTCZhdW1sO2dnIHRpbGwgZ3J1cHAnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnRlcmEgZ3J1cHAnOwokbGFuZ1snYWRkdXNlciddID0gJ0wmYXVtbDtnZyB0aWxsIGFudiZhdW1sO25kYXJlJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdBbnYmYXVtbDtuZGFyZSBzb20gJm91bWw7dmVyZW5zc3QmYXVtbDttbWVyIG1lZCBrcml0ZXJpZXQnOwokbGFuZ1snZ3JvdXAnXSA9ICdHcnVwcCc7CiRsYW5nWydzZWxlY3Rncm91cCddID0gJ1YmYXVtbDtsaiBncnVwcCc7CiRsYW5nWydyZWdpc3RyYXRpb25fdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIHJlZ2lzdHJlcmluZyc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIHV0bG9nZ25pbmcnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdNYWxsIGYmb3VtbDtyIGlubG9nZ25pbmcnOwokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdJbnN0JmF1bWw7bGxuaW5nYXInOwokbGFuZ1sndXNlcnMnXSA9ICdBbnYmYXVtbDtuZGFyZSc7CiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdIYW50ZXJpbmcgYXYgRnJvbnRlbmQgVXNlcic7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ1RpbGwmYXJpbmc7dCBhbnYmYXVtbDtuZGFyZSBsb2dnYSBpbiB2aWEgZnJvbnRlbmQnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ0Ymb3VtbDtydmFsZCBmJm91bWw7cnN0YXNpZGEnOwokbGFuZ1snbGFzdGFjY2Vzc2VkcGFnZSddID0gJ1NlbmFzdCBsJmF1bWw7c3RhIHNpZGEnOwokbGFuZ1snb3RoZXJwYWdlJ10gPSAnQW5uYW4gc2lkYTogJzsKJGxhbmdbJ2NhcHRjaGFfdGl0bGUnXSA9ICdTa3JpdiBpbiB0ZXh0ZW4gaSBiaWxkZW4nOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/tr_TR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2VkaXRpbmdfdXNlciddID0gJ0t1bGxhbsSxY8SxIGQmdXVtbDt6ZW5sZW1lJzsKJGxhbmdbJ25vaW5saW5lJ10gPSAnRG8gbm90IGlubGluZSBmb3Jtcyc7CiRsYW5nWydpbmZvX2xvc3R1biddID0gJ0NsaWNrIGhlcmUgaWYgeW91IGNhbm5vdCByZW1lbWJlciB5b3VyIGxvZ2luIGRldGFpbHMnOwokbGFuZ1snaW5mb19mb3Jnb3RwdyddID0gJ8WeaWZyZW5pemkgaGF0xLFybGFtxLF5b3JzYW7EsXogdMSxa2xhecSxbic7CiRsYW5nWydpbmZvX2xvZ291dCddID0gJyZDY2VkaWw7xLFrxLHFnyBpJmNjZWRpbDtpbiB0xLFrbGF5xLFuxLF6JzsKJGxhbmdbJ2luZm9fY2hhbmdlc2V0dGluZ3MnXSA9ICdDbGljayBoZXJlIHRvIGFkanVzdCB5b3VyIHBhc3N3b3JkIG9yIG90aGVyIGluZm9ybWF0aW9uJzsKJGxhbmdbJ3ZpZXd1c2VyX3RlbXBsYXRlJ10gPSAnVmlldyBVc2VyIFRlbXBsYXRlJzsKJGxhbmdbJ2V2ZW50J10gPSAnRXZlbnQnOwokbGFuZ1snZmV1X2V2ZW50X25vdGlmaWNhdGlvbiddID0gJ0ZFVSBFdmVudCBOb3RpZmljYXRpb24nOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzJ10gPSAnTm90aWZpY2F0aW9uIEVtYWlsIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZSddID0gJ05vdGlmaWNhdGlvbiBFbWFpbCBUZW1wbGF0ZSc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9uX3N1YmplY3QnXSA9ICdOb3RpZmljYXRpb24gRW1haWwgU3ViamVjdCc7CiRsYW5nWydwcm9tcHRfbm90aWZpY2F0aW9ucyddID0gJ0VtYWlsIE5vdGlmaWNhdGlvbnMnOwokbGFuZ1snT25Mb2dpbiddID0gJ09uIExvZ2luJzsKJGxhbmdbJ09uTG9nb3V0J10gPSAnT24gTG9nb3V0JzsKJGxhbmdbJ09uRXhwaXJlVXNlciddID0gJ09uIFNlc3Npb24gRXhwaXJ5JzsKJGxhbmdbJ09uQ3JlYXRlVXNlciddID0gJ09uIE5ldyBVc2VyIENyZWF0ZWQnOwokbGFuZ1snT25EZWxldGVVc2VyJ10gPSAnT24gVXNlciBEZWxldGVkJzsKJGxhbmdbJ09uVXBkYXRlVXNlciddID0gJ09uIFVzZXIgU2V0dGluZ3MgQ2hhbmdlZCc7CiRsYW5nWydPbkNyZWF0ZUdyb3VwJ10gPSAnT24gVXNlciBHcm91cCBDcmVhdGVkJzsKJGxhbmdbJ09uRGVsZXRlR3JvdXAnXSA9ICdPbiBVc2VyIEdyb3VwIERlbGV0ZWQnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wcmVtc2cnXSA9ICdUaGUgbG9zdCBsb2dpbiBkZXRhaWxzIGZ1bmN0aW9uYWxpdHkgaGFzIHN1Y2Nlc3NmdWxseSBjb21wbGV0ZWQuICBXZSBoYXZlIGZvdW5kIGEgdW5pcXVlIHVzZXJuYW1lIHRoYXQgbWF0Y2hlcyB0aGUgZGV0YWlscyB5b3UgZW50ZXJlZC4nOwokbGFuZ1sneW91cl91c2VybmFtZV9pcyddID0gJ1lvdXIgdXNlcm5hbWUgaXMnOwokbGFuZ1snbG9zdHVuY29uZmlybV9wb3N0bXNnJ10gPSAnV2UgcmVjb21tZW5kIHlvdSByZWNvcmQgdGhpcyBpbmZvcm1hdGlvbiBpbiBhIHNlY3VyZSwgYnV0IHJldHJpZXZhYmxlIGxvY2F0aW9uLic7CiRsYW5nWydwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJ10gPSAnUGFnZUlEL0FsaWFzIHRvIGp1bXAgdG8gYWZ0ZXIgY2hhbmdlIHNldHRpbmdzJzsKJGxhbmdbJ3Byb21wdF9hZnRlcl92ZXJpZnlfY29kZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGNvZGUgdmVyaWZpY2F0aW9uIConOwokbGFuZ1snbG9zdHVuX2RldGFpbHNfdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIERldGFpbHMgVGVtcGxhdGUnOwokbGFuZ1snbG9zdHVuX2NvbmZpcm1fdGVtcGxhdGUnXSA9ICdMb3N0IFVzZXJuYW1lIENvbmZpcm0gVGVtcGxhdGUnOwokbGFuZ1snZXJyb3Jfbm9udW5pcXVlbWF0Y2gnXSA9ICdFcnJvcjogTW9yZSB0aGFuIG9uZSB1c2VyIGFjY291bnQgbWF0Y2hlZCB0aGUgcHJvcGVydGllcyBzcGVjaWZpZWQnOwokbGFuZ1snZXJyb3JfY2FudGZpbmR1c2VyJ10gPSAnRXJyb3I6IENvdWxkIG5vdCBmaW5kIGEgbWF0Y2hpbmcgdXNlcic7CiRsYW5nWydlcnJvcl9ncm91cG5vdGZvdW5kJ10gPSAnRXJyb3I6IENvdWxkIG5vdCBmaW5kIGEgZ3JvdXAgYnkgdGhhdCBuYW1lJzsKJGxhbmdbJ3JlYWRvbmx5J10gPSAnU2FsdCBPa3VudXInOwokbGFuZ1sncHJvbXB0X3VzZXJtYW5pcHVsYXRvciddID0gJ1VzZXIgTWFuaXB1bGF0b3IgQ2xhc3MnOwokbGFuZ1snYWRtaW5fbG9nb3V0J10gPSAnTG9nZ2VkIG91dCBieSBhZG1pbmlzdHJhdG9yJzsKJGxhbmdbJ3Byb21wdF9sb2dnZWRpbm9ubHknXSA9ICdTaG93IE9ubHkgTG9nZ2VkIEluIFVzZXJzJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXQnXSA9ICdMb2dvdXQgdGhpcyB1c2VyJzsKJGxhbmdbJ3VzZXJfcHJvcGVydGllcyddID0gJ1VzZXIgUHJvcGVydGllcyc7CiRsYW5nWyd1c2VyaGlzdG9yeSddID0gJ1VzZXIgSGlzdG9yeSc7CiRsYW5nWydleHBvcnQnXSA9ICdFeHBvcnQnOwokbGFuZ1snY2xlYXInXSA9ICdDbGVhcic7CiRsYW5nWydwcm9tcHRfZXhwb3J0dXNlcmhpc3RvcnknXSA9ICdFeHBvcnQgVXNlciBIaXN0b3J5IFRvIEFTQ0lJIHRoYXQgaXMgYXQgbGVhc3QnOwokbGFuZ1sncHJvbXB0X2NsZWFydXNlcmhpc3RvcnknXSA9ICdDbGVhciBVc2VyIEhpc3RvcnkgcmVjb3JkcyB0aGF0IGlzIGF0IGxlYXN0JzsKJGxhbmdbJ3RpdGxlX2xvc3R1c2VybmFtZSddID0gJ0ZvcmdvdCBZb3VyIExvZ2luIERldGFpbHM/JzsKJGxhbmdbJ3RpdGxlX3Jzc2V4cG9ydCddID0gJ0V4cG9ydCBncm91cCBkZWZpbml0aW9uIChhbmQgcHJvcGVydGllcykgdG8gWE1MJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5bWFpbnRlbmFuY2UnXSA9ICdVc2VyIEhpc3RvcnkgTWFpbnRlbmFuY2UnOwokbGFuZ1sneWVzJ10gPSAnWWVzJzsKJGxhbmdbJ25vJ10gPSAnTm8nOwokbGFuZ1sncHJvbXB0X29mJ10gPSAnT2YnOwokbGFuZ1snZGF0ZV9hbGxyZWNvcmRzJ10gPSAnKiogTm8gTGltaXQgKionOwokbGFuZ1snZGF0ZV9vbmVob3Vyb2xkJ10gPSAnT25lIEhvdXIgT2xkJzsKJGxhbmdbJ2RhdGVfc2l4aG91cm9sZCddID0gJ1NpeCBIb3VycyBPbGQnOwokbGFuZ1snZGF0ZV90d2VsdmVob3Vyb2xkJ10gPSAnVHdlbHZlIEhvdXJzIE9sZCc7CiRsYW5nWydkYXRlX29uZWRheW9sZCddID0gJ09uZSBEYXkgT2xkJzsKJGxhbmdbJ2RhdGVfb25ld2Vla29sZCddID0gJ09uZSBXZWVrIE9sZCc7CiRsYW5nWydkYXRlX3R3b3dlZWtzb2xkJ10gPSAnVHdvIHdlZWtzIE9sZCc7CiRsYW5nWydkYXRlX29uZW1vbnRob2xkJ10gPSAnT25lIE1vbnRoIE9sZCc7CiRsYW5nWydkYXRlX3RocmVlbW9udGhzb2xkJ10gPSAnVGhyZWUgTW9udGhzIE9sZCc7CiRsYW5nWydkYXRlX3NpeG1vbnRoc29sZCddID0gJ1NpeCBNb250aHMgT2xkJzsKJGxhbmdbJ2RhdGVfb25leWVhcm9sZCddID0gJ09uZSBZZWFyIE9sZCc7CiRsYW5nWyd0aXRsZV9ncm91cHNvcnQnXSA9ICdHcm91cGluZyBhbmQgU29ydGluZyc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2ZvdW5kJ10gPSAnUmVjb3JkcyBtYXRjaGluZyB0aGUgY3JpdGVyaWEnOwokbGFuZ1snc29ydG9yZGVyX3VzZXJuYW1lX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIFVzZXJuYW1lJzsKJGxhbmdbJ3NvcnRvcmRlcl91c2VybmFtZV9hc2MnXSA9ICdBc2NlbmRpbmcgVXNlcm5hbWUnOwokbGFuZ1snc29ydG9yZGVyX2RhdGVfZGVzYyddID0gJ0Rlc2NlbmRpbmcgRGF0ZSc7CiRsYW5nWydzb3J0b3JkZXJfZGF0ZV9hc2MnXSA9ICdBc2NlbmRpbmcgRGF0ZSc7CiRsYW5nWydzb3J0b3JkZXJfYWN0aW9uX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIEV2ZW50IFR5cGUnOwokbGFuZ1snc29ydG9yZGVyX2FjdGlvbl9hc2MnXSA9ICdBc2NlbmRpbmcgRXZlbnQgVHlwZSc7CiRsYW5nWydzb3J0b3JkZXJfaXBhZGRyZXNzX2Rlc2MnXSA9ICdEZXNjZW5kaW5nIElwIEFkZHJlc3MnOwokbGFuZ1snc29ydG9yZGVyX2lwYWRkcmVzc19hc2MnXSA9ICdBc2NlbmRpbmcgSXAgQWRkcmVzcyc7CiRsYW5nWydpbmZvX25vaGlzdG9yeWRldGVjdGVkJ10gPSAnTm8gSGlzdG9yeSBEZXRlY3RlZCc7CiRsYW5nWydyZXNldCddID0gJ1Jlc2V0JzsKJGxhbmdbJ3Byb21wdF9ncm91cF9pcCddID0gJ0dyb3VwIEJ5IElQIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X2ZpbHRlcl9ldmVudHR5cGUnXSA9ICdFdmVudCBUeXBlIEZpbHRlcic7CiRsYW5nWydwcm9tcHRfZmlsdGVyX2RhdGUnXSA9ICdEaXNwbGF5IG9ubHkgZXZlbnRzIHRoYXQgYXJlIGxlc3MgdGhhbjonOwokbGFuZ1sncHJvbXB0X3BhZ2VsaW1pdCddID0gJ1BhZ2UgTGltaXQnOwokbGFuZ1snZm9yJ10gPSAnZm9yJzsKJGxhbmdbJ3RpdGxlX3VzZXJoaXN0b3J5J10gPSAnVXNlciBIaXN0b3J5IFJlcG9ydCc7CiRsYW5nWyd1bmtub3duJ10gPSAnVW5rbm93bic7CiRsYW5nWydwcm9tcHRfaXBhZGRyZXNzJ10gPSAnSVAgQWRkcmVzcyc7CiRsYW5nWydwcm9tcHRfZXZlbnR0eXBlJ10gPSAnRXZlbnQgVHlwZSc7CiRsYW5nWydwcm9tcHRfZGF0ZSddID0gJ0RhdGUnOwokbGFuZ1sncHJvbXB0X3JldHVybiddID0gJ1JldHVybic7CiRsYW5nWydpbXBvcnRfY29tcGxldGVfbXNnJ10gPSAnSW1wb3J0IE9wZXJhdGlvbiBDb21wbGV0ZSc7CiRsYW5nWydwcm9tcHRfbGluZXNwcm9jZXNzZWQnXSA9ICdMaW5lcyBQcm9jZXNzZWQnOwokbGFuZ1sncHJvbXB0X2Vycm9ycyddID0gJ0Vycm9ycyBFbmNvdW50ZXJlZCc7CiRsYW5nWydwcm9tcHRfcmVjb3Jkc2FkZGVkJ10gPSAnUmVjb3JkcyBBZGRlZCc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcHJlbG5zJ10gPSAnQ291bGQgbm90IGZpbmQgcHJvcGVydGllcyBmb3IgZ3JvdXAgJXMnOwokbGFuZ1snZXJyb3Jfbm9yZXNwb25zZWZyb21zZXJ2ZXInXSA9ICdDb3VsZCBub3QgZ2V0IGEgcmVzcG9uc2UgZnJvbSB0aGUgU01UUCBzZXJ2ZXInOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZW5vdGZvdW5kJ10gPSAnRmlsZSBzcGVjaWZpZWQgKCVzKSBjb3VsZCBub3QgYmUgZm91bmQnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmllbGR2YWx1ZSddID0gJ0ludmFsaWQgdmFsdWUgZm9yIGRyb3Bkb3duIG9yIG11bHRpc2VsZWN0IGZpZWxkICVzJzsKJGxhbmdbJ2Vycm9yX2ltcG9ydGZpZWxkbGVuZ3RoJ10gPSAnRmllbGQgJXMgZXhjZWVkcyBtYXhpbXVtIGxlbmd0aCc7CiRsYW5nWydlcnJvcl9pbXBvcnR1c2VycyddID0gJ0ltcG9ydCBFcnJvciAobGluZSAlcyk6ICVzJzsKJGxhbmdbJ2Vycm9yX3Byb3BlcnR5ZGVmbnMnXSA9ICdDb3VsZCBub3QgZ2V0IHRoZSBwcm9wZXJ0eSBkZWZpbml0aW9ucyAoaW50ZXJuYWwgZXJyb3IpJzsKJGxhbmdbJ2Vycm9yX3Byb2JsZW1zZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3JfaW1wb3J0cmVxdWlyZWRmaWVsZCddID0gJ0NvdWxkIG5vdCBmaW5kIGEgY29sdW1uIHRvIG1hdGNoIHRoZSByZXF1aXJlZCBmaWVsZCAlcyc7CiRsYW5nWydlcnJvcl9ub2dyb3VwcHJvcGVydGllcyddID0gJ0NvdWxkIG5vdCBmaW5kIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgZ3JvdXAnOwokbGFuZ1snZXJyb3JfaW1wb3J0ZmlsZWZvcm1hdCddID0gJ1RoZSBmaWxlIHNwZWNpZmllZCBmb3IgaW1wb3J0IGlzIG5vdCBpbiB0aGUgY29ycmVjdCBmb3JtYXQnOwokbGFuZ1snZXJyb3JfY291bGRub3RvcGVuZmlsZSddID0gJ0NvdWxkIG5vdCBvcGVuIGZpbGUnOwokbGFuZ1snaW5mb19pbXBvcnR1c2Vyc2ZpbGVmb3JtYXQnXSA9ICc8aDQ+RmlsZSBGb3JtYXQgSW5mb3JtYXRpb248L2g0Pg0KPHA+VGhlIGlucHV0IGZpbGUgbXVzdCBiZSBpbiBBU0NJSSBmb3JtYXQgdXNpbmcgY29tbWEgc2VwYXJhdGVkIHZhbHVlcy4gIEVhY2ggbGluZSBpbiB0aGlzIGlucHV0IGZpbGUgKHdpdGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaGVhZGVyIGxpbmUsIGRpc2N1c3NlZCBiZWxvdykgcmVwcmVzZW50cyBvbmUgdXNlciByZWNvcmQuICBFYWNoIGxpbmUgbXVzdCBjb250YWluIHRoZSBzYW1lIG51bWJlciBvZiBmaWVsZHMsIGFuZCB0aGUgb3JkZXIgb2YgdGhlIGZpZWxkcyBpbiBlYWNoIGxpbmUgbXVzdCBiZSBpZGVudGljYWwuPC9wPg0KPGg1PkhlYWRlciBsaW5lPC9oNT4NCjx1bD4NCjxsaT5UaGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSBtdXN0IGJlZ2luIHdpdGggdHdvIHBvdW5kIChcIykgY2hhcmFjdGVycywgYW5kIG5hbWVzIGVhY2ggb2YgdGhlIGZpZWxkcyBpbiB0aGUgZmlsZS4gIFRoZSBuYW1lcyBvZiB0aGVzZSBmaWVsZHMgaXMgc2lnbmlmaWNhbnQuICBUaGVyZSBhcmUgc29tZSByZXF1aXJlZCBmaWVsZCBuYW1lcyAoc2VlIGJlbG93KSwgYW5kIG90aGVyIGZpZWxkIG5hbWVzIG11c3QgbWF0Y2ggdGhlIHByb3BlcnR5IG5hbWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdXNlcnMgYXJlIGdvaW5nIHRvIGJlIGFkZGVkIGludG8uPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBmYWlsIGlmIHRoZSBmaWVsZHMgaW4gdGhlIGlucHV0IGZpbGUgZG9lcyBub3QgbWF0Y2ggYWxsIG9mIHRoZSByZXF1aXJlZCBwcm9wZXJ0aWVzIGFzc29jaWF0ZWQgd2l0aCB0aGUgZ3JvdXAgdGhhdCB1c2VycyBhcmUgYmVpbmcgYWRkZWQgaW50bzwvbGk+DQo8bGk+VGhlIGlucHV0IGZpbGUgbWF5IGNvbnRhaW4gZmllbGRzIHJlcHJlc2VudGluZyBzb21lIG9mIHRoZSBvcHRpb25hbCBwcm9wZXJ0aWVzIGluIHRoZSBzcGVjaWZpZWQgZ3JvdXAuPC9saT4NCjxsaT5UaGUgaW1wb3J0IHByb2Nlc3Mgd2lsbCBpZ25vcmUgYW55IGZpZWxkcyBpbiB0aGUgaW5wdXQgZmlsZSB0aGF0IGFyZSBlaXRoZXIgbm90IGtub3duLCBvciBtYXAgdG8gcHJvcGVydGllcyB0aGF0IGFyZSA8ZW0+b2ZmPC9lbT4gaW4gdGhlIHNwZWNpZmllZCB1c2VyIGdyb3VwLjwvbGk+DQo8L3VsPg0KPGg1PkNvbHVtbmFyIERhdGE8L2g1Pg0KPHVsPg0KPGxpPlRoZSA8c3Ryb25nPnVzZXJuYW1lPC9zdHJvbmc+IEZpZWxkIC0gVGhlIGRlc2lyZWQgdXNlcm5hbWUuDQogICAgPHA+VGhpcyBmaWVsZCBtdXN0IGV4aXN0IGluIHRoZSBoZWFkZXJsaW5lLCBhbmQgaW4gZWFjaCBhbmQgZXZlcnkgbGluZSBvZiB0aGUgaW5wdXQgZmlsZS4gVGhlIHJlY29yZCB3aWxsIGZhaWwgaWYgYSB1c2VyIHdpdGggdGhhdCB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgZGF0YWJhc2UuPC9wPjwvbGk+DQo8bGk+VGhlIDxzdHJvbmc+cGFzc3dvcmQ8L3N0cm9uZz4gRmllbGQgLSBUb2RvPC9saT4NCjxsaT5UaGUgPHN0cm9uZz5leHBpcmVzPC9zdHJvbmc+IEZpZWxkIC0gVG9kbzwvbGk+DQo8bGk+RHJvcGRvd24gRmllbGRzDQogICAgPHA+VGhlIHZhbHVlIG9mIGRyb3Bkb3duIHByb3BlcnRpZXMgaW4gYW4gaW1wb3J0IGZpbGUgaXMgcmVwcmVzZW50ZWQgYXMgdGhlIHN0cmluZyB0aGF0IGlzIHNob3duIGluIHRoZSBkcm9wZG93biBjb250cm9sIGluIHRoZSBGcm9udEVuZFVzZXJzIG1vZHVsZS48L3A+DQo8L2xpPg0KPGxpPk11bHRpc2VsZWN0IEZpZWxkcw0KICAgIDxwPk11bHRpc2VsZWN0IGZpZWxkcyBhcmUgY29udGFpbmVkIHdpdGhpbiB0aGUgQVNDSUkgZmlsZSBhcyBhIDogc2VwYXJhdGVkIGxpc3Qgb2Ygc3RyaW5ncywgd2hlcmUgZWFjaCBzdHJpbmcgcmVwcmVzZW50cyB0aGUgdGV4dCBzaG93biBpbiB0aGUgbXVsdGlzZWxlY3QgbGlzdDwvcD4NCjwvbGk+DQo8bGk+SW1hZ2UgRmllbGRzDQogICAgPHA+SW1hZ2UgYXJlIGZpZWxkcyB3aG8mIzAzOTtzIGNvbHVtbiBuYW1lIG1hdGNoZXMgYSBwcm9wZXJ0eSBvZiB0eXBlIEltYWdlLiAgSWYgdGhpcyBmaWVsZCBpcyBhIHJlcXVpcmVkIHBhcnQgb2YgdGhlIGRlc3RpbmF0aW9uIGdyb3VwLCB0aGVuIHRoZSBuYW1lIHNwZWNpZmllZCBpbiB0aGVzZSBjb2x1bW5zIG11c3QgZXhpc3QgaW4gdGhlIHVwbG9hZHMgZGlzcmVjdG9yeSBvZiB0aGUgQ01TIGluc3RhbGxhdGlvbi4gIElmIHRoZSBpbWFnZSBkb2VzIG5vdCBleGlzdCwgYW5kIHRoZSBmaWVsZCBpcyByZXF1aXJlZCwgdGhlbiB0aGUgcmVjb3JkIHdpbGwgZmFpbC48L3A+DQo8L3VsPg0KPGg1Pk5vdGVzPC9oNT4NCjxwPlRoZSBpbXBvcnQgcHJvY2VzcyBpcyBzdWJqZWN0IHRvIHRoZSBsaW1pdGF0aW9ucyBpbXBvc2VkIGJ5IHRoZSBob3N0IHByb3ZpZGVyLCBzdWNoIGFzIG1lbW9yeSBsaW1pdGF0aW9ucywgcHJvY2Vzc2luZyB0aW1lLCBmaWxlIHNpemUgdXBsb2FkLCBhbmQgc2FmZSBtb2RlIHJlc3RyaWN0aW9ucy4gIEFueSBvbmUgb2YgdGhlc2UgbGltaXRhdGlvbnMgbWF5IGNhdXNlIHRoZSBpbXBvcnQgdG8gZmFpbC4gVGhlcmVmb3JlIGl0IGlzIGFkdmlzYWJsZSB0byBlbnN1cmUgdGhhdCBpbXBvcnQgZmlsZXMgYXJlIHNtYWxsZXIgaW4gc2l6ZSwgYW5kIHNpbXBsZXIgaW4gbmF0dXJlLjwvcD4NCjxwPlRob3VnaCBldmVyeSBlZmZvcnQgaGFzIGJlZW4gbWFkZSB0byBlbnN1cmUgdGhhdCBkYXRhYmFzZSBjb3JydXB0aW9uIHdpbGwgbm90IG9jY3VyLCBpdCBpcyBhZHZpc2FibGUgdG8gcGVyZm9ybSBhIGRhdGFiYXNlIGJhY2t1cCBiZWZvcmUgZG9pbmcgYSB1c2VyIGltcG9ydC48L3A+DQo8aDU+RXhhbXBsZTwvaDU+DQo8cHJlPg0KIyN1c2VybmFtZSxmaXJzdF9uYW1lLGxhc3RfbmFtZSxlbWFpbCxjaXR5LHN0YXRlLGNvdW50cnksemlwDQp1c2VyMSx0ZXN0LHVzZXIsdXNlcjFAc29tZWRvbWFpbi5jb20sc29tZXdoZXJlLFRYLFVTLDEyMzQ1DQo8L3ByZT4NCic7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZGVzdGdyb3VwJ10gPSAnSW1wb3J0IFVzZXJzIEludG8gVGhpcyBHcm91cCc7CiRsYW5nWydwcm9tcHRfaW1wb3J0ZmlsZW5hbWUnXSA9ICdJbnB1dCBDU1YgRmlsZSc7CiRsYW5nWydwcm9tcHRfaW1wb3J0eG1sZmlsZSddID0gJ0lucHV0IFhNTCBGaWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnR1c2VycyddID0gJ0V4cG9ydCBVc2Vycyc7CiRsYW5nWydwcm9tcHRfaW1wb3J0dXNlcnMnXSA9ICdJbXBvcnQgVXNlcnMnOwokbGFuZ1sncHJvbXB0X2NsZWFyJ10gPSAnQ2xlYXInOwokbGFuZ1sncHJvbXB0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnXSA9ICdJbWFnZSBEZXN0aW5hdGlvbiBQYXRoJzsKJGxhbmdbJ2Vycm9yX21pc3NpbmdfdXBsb2FkJ10gPSAnQSBwcm9ibGVtIG9jY3VycmVkIHdpdGggYSBtaXNzaW5nIChidXQgcmVxdWlyZWQpIHVwbG9hZCc7CiRsYW5nWydlcnJvcl9iYWRfeG1sJ10gPSAnQ291bGQgbm90IHBhcnNlIHRoZSBwcm92aWRlZCBYTUwgZmlsZSc7CiRsYW5nWydlcnJvcl9ub3RlbXB0eWdyb3VwJ10gPSAnQ2Fubm90IGRlbGV0ZSBhIGdyb3VwIHRoYXQgc3RpbGwgaGFzIHVzZXJzJzsKJGxhbmdbJ2Vycm9yX25vcmVwZWF0ZWRsb2dpbnMnXSA9ICdUaGlzIHVzZXIgaXMgYWxyZWFkeSBsb2dnZWQgaW4nOwokbGFuZ1snZXJyb3JfY2FwdGNoYW1pc21hdGNoJ10gPSAnVGhlIHRleHQgZnJvbSB0aGUgaW1hZ2Ugd2FzIG5vdCBlbnRlcmVkIGNvcnJlY3RseSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfcmVwZWF0ZWRfbG9naW5zJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9naW4gbW9yZSB0aGFuIG9uY2UnOwokbGFuZ1sncHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9ucyddID0gJ0ltYWdlIEZpbGUgRXh0ZW5zaW9ucyB0aGF0IFVzZXJzIGFsbG93ZWQgdG8gdXBsb2FkJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVVc2VyJ10gPSAnPGgzPk9uRGVsZXRlVXNlcjxoMz4NCjxwPkFuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uQ3JlYXRlVXNlciddID0gJzxoMz5PbkNyZWF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgY3JlYXRlZDwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+bmFtZTwvZW0+IC0gVGhlIHVzZXIgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZDwvbGk+DQo8L3VsPiANCic7CiRsYW5nWydldmVudF9oZWxwX09uVXBkYXRlVXNlciddID0gJzxoMz5PblVwZGF0ZVVzZXI8aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgaXMgdXBkYXRlZCAoZWl0aGVyIGJ5IHVzZXIgdGhlbXNlbGYgb3IgYWRtaW4pPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgdXNlciBuYW1lPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25DcmVhdGVHcm91cCddID0gJzxoMz5PbkNyZWF0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBjcmVhdGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmRlc2NyaXB0aW9uPC9lbT4gLSBUaGUgZ3JvdXAgZGVzY3JpcHRpb248L2xpPg0KPGxpPjxlbT5pZDwvZW0+IC0gVGhlIGdyb3VwIGlkPC9saT4NCjwvdWw+IA0KJzsKJGxhbmdbJ2V2ZW50X2hlbHBfT25EZWxldGVHcm91cCddID0gJzxoMz5PbkRlbGV0ZUdyb3VwPGgzPg0KPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBncm91cCBpcyBkZWxldGVkPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT5uYW1lPC9lbT4gLSBUaGUgZ3JvdXAgbmFtZTwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgZ3JvdXAgaWQ8L2xpPg0KPC91bD4gDQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkxvZ2luJ10gPSAnPGgzPk9uTG9naW48aDM+DQo8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgbG9ncyBpbjwvcD4NCjxoND5QYXJhbWV0ZXJzPC9oND4NCjx1bD4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSBpZCBvZiB0aGUgbG9nZ2VkIGluIHVzZXI8L2xpPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZCBpbiB1c2VyPC9saT4NCjxsaT48ZW0+aXA8L2VtPiAtIFRoZSBpcCBhZGRyZXNzIG9mIHRoZSBjbGllbnQ8L2xpPg0KPC91bD4NCic7CiRsYW5nWydldmVudF9oZWxwX09uTG9nb3V0J10gPSAnPHA+QW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0PC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGxvZ2dlZG91dCB1c2VyPC9saT4NCjxsaT48ZW0+aWQ8L2VtPiAtIFRoZSB1c2VyIGlkPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaGVscF9PbkV4cGlyZVVzZXInXSA9ICc8cD5BbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBleHBpcmVzPC9wPg0KPGg0PlBhcmFtZXRlcnM8L2g0Pg0KPHVsPg0KPGxpPjxlbT51c2VybmFtZTwvZW0+IC0gVGhlIG5hbWUgb2YgdGhlIGV4cGlyZWQgdXNlcjwvbGk+DQo8bGk+PGVtPmlkPC9lbT4gLSBUaGUgdXNlciBpZCBvZiB0aGUgZXhwaXJlZCB1c2VyPC9saT4NCjwvdWw+DQonOwokbGFuZ1snZXZlbnRfaW5mb19PbkxvZ2luJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3MgaW4gdG8gdGhlIHN5c3RlbSc7CiRsYW5nWydldmVudF9pbmZvX09uTG9nb3V0J10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGxvZ3Mgb3V0IG9mIHRoZSBzeXN0ZW0nOwokbGFuZ1snZXZlbnRfaW5mb19PbkV4cGlyZVVzZXInXSA9ICdBbiBldmVudCBnZW5lcmF0ZWQgd2hlbiBhIHVzZXIgc2Vzc2lvbiBpcyBleHBpcmVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25DcmVhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSBuZXcgdXNlciBpcyBjcmVhdGVkJzsKJGxhbmdbJ2V2ZW50X2luZm9fT25VcGRhdGVVc2VyJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGluZm8gaXMgdXBkYXRlZCc7CiRsYW5nWydldmVudF9pbmZvX09uRGVsZXRlVXNlciddID0gJ0FuIGV2ZW50IGdlbmVyYXRlZCB3aGVuIGEgdXNlciBhY2NvdW50IGlzIGRlbGV0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkNyZWF0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGNyZWF0ZWQnOwokbGFuZ1snZXZlbnRfaW5mb19PbkRlbGV0ZUdyb3VwJ10gPSAnQW4gZXZlbnQgZ2VuZXJhdGVkIHdoZW4gYSB1c2VyIGdyb3VwIGlzIGRlbGV0ZWQnOwokbGFuZ1snYmFja2VuZF9ncm91cCddID0gJ0JhY2tlbmQgR3JvdXAnOwokbGFuZ1snaW5mb19zdGFyJ10gPSAnKiBUaGUgZm9sbG93aW5nIG1hY3JvcyBjYW4gYmUgdXNlZCBpbiB0aGVzZSBmaWVsZHM6IHskdXNlcm5hbWV9LHskZ3JvdXB9LiBXaGVuIHVzaW5nIHRoZSB7JGdyb3VwfSBtYWNybywgdGhlIHN5c3RlbSB3aWxsIHN1YnNpdHV0ZSB0aGUgbmFtZSBvZiB0aGUgZmlyc3QgbWVtYmVyIGdyb3VwIHRoYXQgdGhlIHVzZXIgYmVsb25ncyB0bywgYW5kIHdpbGwgcmVkaXJlY3QgdG8gdGhhdCBwYWdlLic7CiRsYW5nWydpbmZvX2FkbWluX3Bhc3N3b3JkJ10gPSAnRWRpdCB0aGlzIGZpZWxkIHRvIHJlc2V0IHRoZSB1c2VycyBwYXNzd29yZCc7CiRsYW5nWydpbmZvX2FkbWluX3JlcGVhdHBhc3N3b3JkJ10gPSAnRWRpdCB0aGlzIGZpZWxkIHRvIHJlc2V0IHRoZSB1c2VycyBwYXNzd29yZCc7CiRsYW5nWydlcnJvcl91c2VybmFtZV9leGlzdHMnXSA9ICdBIHVzZXIgd2l0aCB0aGF0IHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzJzsKJGxhbmdbJ25vY3N2cmVzdWx0cyddID0gJ05vIHJlc3VsdHMgcmV0dXJuZWQgZnJvbSBjc3YgZXhwb3J0JzsKJGxhbmdbJ3Byb21wdF91bmZsZGxlbiddID0gJ0xlbmd0aCBvZiB1c2VybmFtZSBmaWVsZCc7CiRsYW5nWydwcm9tcHRfcHdmbGRsZW4nXSA9ICdMZW5ndGggb2YgcGFzc3dvcmQgZmllbGQnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkbGVuZ3RocyddID0gJ01pbi9NYXggcGFzc3dvcmQgbGVuZ3RocyBhcmUgaW52YWxpZCc7CiRsYW5nWydlcnJvcl9pbnZhbGlkdXNlcm5hbWVsZW5ndGhzJ10gPSAnTWluL01heCB1c2VybmFtZSBsZW5ndGhzIGFyZSBpbnZhbGlkJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnXSA9ICdJbnZhbGlkIEVtYWlsIGFkZHJlc3MnOwokbGFuZ1snZXJyb3Jfbm9lbWFpbGFkZHJlc3MnXSA9ICdXZSBjb3VsZCBub3QgZmluZCBhbiBlbWFpbCBhZGRyZXNzIGZvciB0aGlzIGFjY291bnQnOwokbGFuZ1snZXJyb3JfcHJvYmxlbXNlZXR0aW5naW5mbyddID0gJ1Byb2JsZW0gc2V0dGluZyB1c2VyIGluZm8nOwokbGFuZ1snZXJyb3Jfc2V0dGluZ3Byb3BlcnR5J10gPSAnUHJvYmxlbSBzZXR0aW5nIHByb3BlcnR5JzsKJGxhbmdbJ3VzZXJfYWRkZWQnXSA9ICdVc2VyIEFkZGVkICVzID0gJXMnOwokbGFuZ1sndXNlcl9kZWxldGVkJ10gPSAnVXNlciBEZWxldGVkIHVpZD0lcyc7CiRsYW5nWydwcm9wZXJ0eWZpbHRlciddID0gJ1Byb3BlcnR5JzsKJGxhbmdbJ3ZhbHVlcmVnZXgnXSA9ICdWYWx1ZSAocmVndWxhciBleHByZXNzaW9uKSc7CiRsYW5nWyd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCddID0gJ1dhcm5pbmc6IFRoZXNlIGZpZWxkcyBhZmZlY3QgdGhlIHNpemUgb2YgaW5wdXQgZmllbGRzIGZvciBmb3Jtcy4gIERlY3JlYXNpbmcgdGhpcyBudW1iZXIgb24gYW4gZXhpc3Rpbmcgc2l0ZSBtYXkgbm90IGJlIGFkdmlzYWJsZSc7CiRsYW5nWydjb25maXJtX3N1Ym1pdHByZWZzJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGFkanVzdCB0aGUgbW9kdWxlIHByZWZlcmVuY2VzPyc7CiRsYW5nWydlcnJvcl9lbWFpbGFscmVhZHl1c2VkJ10gPSAnRW1haWwgYWRkcmVzcyBhbHJlYWR5IHVzZWQnOwokbGFuZ1sncHJvbXB0X3VzZWNvb2tpZXN0b3JlbWVtYmVyJ10gPSAnVXNlIGNvb2tpZXMgdG8gcmVtZW1iZXIgbG9naW4gZGV0YWlscyc7CiRsYW5nWydwcm9tcHRfY29va2llbmFtZSddID0gJ1RoZSBuYW1lIG9mIHRoZSBjb29raWUnOwokbGFuZ1sncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICdBbGxvdyBkdXBsaWNhdGUgZW1haWxzJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCddID0gJ0VtYWlsIGFkZHJlc3MgaXMgdXNlcm5hbWUnOwokbGFuZ1snaW5mb19jb29raWVfa2VlcGFsaXZlJ10gPSAnQXR0ZW1wdCB0byBrZWVwIGxvZ2lucyBhbGl2ZSBieSB0aGUgdXNlIG9mIGEgY29va2llIDxlbT4odGhlIGNvb2tpZSBpcyByZXNldCBvbiBhY3Rpdml0eSBpbiB0aGUgd2Vic2l0ZSk8L2VtPic7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnXSA9ICcoYWxsb3cgbXVsdGlwbGUgdXNlcnMgd2l0aCB0aGUgc2FtZSBlbWFpbCBhZGRyZXNzKSc7CiRsYW5nWydpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJ10gPSAnKHVzZXImIzAzOTtzIGVtYWlsIGFkZHJlc3MgaXMgdGhlaXIgdXNlcm5hbWUgLS0gZG9uJiMwMzk7dCBzZXQgdGhpcyB3aXRoICZxdW90O2FsbG93IGR1cGxpY2F0ZSBlbWFpbCBhZGRyZXNzZXMmcXVvdDshKSc7CiRsYW5nWydwcm9tcHRfYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyddID0gJ0FsbG93IGR1cGxpY2F0ZSAmcXVvdDtmb3Jnb3QgcGFzc3dvcmQmcXVvdDsgcmVtaW5kZXJzPyc7CiRsYW5nWydpbmZvX2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnXSA9ICcoYWxsb3cgYSB1c2VycyB0byByZXF1ZXN0IGEgcGFzc3dvcmQgcmVzZXQsIGV2ZW4gaWYgdGhleSBoYXZlbiYjMDM5O3QgYWN0ZWQgb24gYSBwcmV2aW91cyBvbmUpJzsKJGxhbmdbJ3Byb21wdF9mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zJ10gPSAnVXNlIEZyb250LWVuZCBVc2VyIHNwZWNpZmljIHBlcm1pc3Npb25zPyc7CiRsYW5nWydpbmZvX2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnMnXSA9ICcoTm9ybWFsbHksIEZFVVNlcnMgcGVybWlzc2lvbnMgYXJlIHRoZSBzYW1lIGFzIHRoZSBlcXVpdmFsZW50IEFkbWluIEFyZWEgcGVybWlzc2lvbnMgbGlrZSBBZGQgVXNlciwgQWRkIEdyb3VwLCBldGMuIElmIHlvdSBzZWxlY3QgdGhpcyBvcHRpb24sIHRoZXJlIHdpbGwgYmUgc2VwYXJhdGUgcGVybWlzc2lvbnMgZm9yIEZFVXNlcnMuKSc7CiRsYW5nWydlcnJvcl9taXNzaW5ndXBsb2FkJ10gPSAnQ291bGQgbm90IGZpbmQgdGhlIHVwbG9hZGVkIGZpbGUgKGludGVybmFsIGVycm9yKSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtX3VwbG9hZCddID0gJ1RoZXJlIHdhcyBhIHByb2JsZW0gd2l0aCB5b3VyIHVwbG9hZGVkIGZpbGUuICBQbGVhc2UgdHJ5IGFnYWluJzsKJGxhbmdbJ2Vycm9yX21pc3Npbmd1c2VybmFtZSddID0gJ1lvdSBkaWQgbm90IGVudGVyIGEgdXNlcm5hbWUnOwokbGFuZ1snZXJyb3JfbWlzc2luZ2VtYWlsJ10gPSAnWW91IGRpZCBub3QgZW50ZXIgeW91ciBlbWFpbCc7CiRsYW5nWydlcnJvcl9taXNzaW5ncGFzc3dvcmQnXSA9ICdZb3UgZGlkIG5vdCBlbnRlciBhIHBhc3N3b3JkJzsKJGxhbmdbJ2Zyb250ZW5kdXNlcl9sb2dvdXQnXSA9ICdGcm9udGVuZCBVc2VyIExvZ291dCc7CiRsYW5nWydmcm9udGVuZHVzZXJfbG9nZ2VkaW4nXSA9ICdGcm9udGVuZCBVc2VyIExvZ2luJzsKJGxhbmdbJ2VkaXRwcm9wX2luZm9tc2cnXSA9ICc8Zm9udCBjb2xvcj0mcXVvdDtyZWQmcXVvdDs+PGI+VVNFIENBVVRJT048L2I+IHdoZW4gY2hhbmdpbmcgZXhpc3RpbmcgcHJvcGVydGllcyB0aGF0IGFyZSBhc3NpZ25lZCB0byBncm91cHMsIHlvdSBtYXkgcG90ZW50aWFsbHkgY2F1c2UgZGFtYWdlIGFuZCBicmVhayBhbiBleGlzdGluZyBzaXRlIDxpPihlc3BlY2lhbGx5IGlmIHlvdSByZWR1Y2UgZmllbGQgbGVuZ3RocywgZXRjKTwvaT48L2ZvbnQ+JzsKJGxhbmdbJ2luZm9fc210cHZhbGlkYXRlJ10gPSAnVGhpcyBmdW5jdGlvbiBkb2VzIG5vdCB3b3JrIG9uIHdpbmRvd3MnOwokbGFuZ1snbXNnX2RvbnRjcmVhdGV1c2VybmFtZSddID0gJ0RvIG5vdCBjcmVhdGUgYSBwcm9wZXJ0eSBmb3IgdXNlcm5hbWUsIG9yIHBhc3N3b3JkIGFzIHRoZXNlIHByb3BlcnRpZXMgYXJlIGJ1aWx0aW4gdG8gdGhlIEZyb250RW5kVXNlcnMgbW9kdWxlJzsKJGxhbmdbJ3Byb21wdF9leHBvcnRjc3YnXSA9ICdFeHBvcnQgVXNlcnMgdG8gQ1NWJzsKJGxhbmdbJ2V4cG9ydGNzdiddID0gJ0V4cG9ydCc7CiRsYW5nWydpbXBvcnRjc3YnXSA9ICdJbXBvcnQnOwokbGFuZ1snYWRtaW4nXSA9ICdBZG1pbic7CiRsYW5nWydlZGl0cHJvcCddID0gJ0VkaXQgUHJvcGVydHknOwokbGFuZ1snbWF4bGVuZ3RoJ10gPSAnTWF4aW11bSBMZW5ndGgnOwokbGFuZ1snY3JlYXRlZCddID0gJ0NyZWF0ZWQnOwokbGFuZ1snc29ydGJ5J10gPSAnU29ydCBCeSc7CiRsYW5nWydzb3J0J10gPSAnU29ydGluZyc7CiRsYW5nWyd1c2Vyc2luZ3JvdXAnXSA9ICdVc2VycyBpbiB0aGUgc2VsZWN0ZWQgZ3JvdXAocyknOwokbGFuZ1sndXNlcmxpbWl0J10gPSAnTGltaXQgcmVzdWx0cyB0byc7CiRsYW5nWydlcnJvcl9ub2VtYWlsZmllbGQnXSA9ICdDb3VsZCBub3QgZmluZCBhbiBlbWFpbCBmaWVsZCBmb3IgdGhpcyB1c2VyLiAgWW91IG1heSBuZWVkIHRvIGNvbnRhY3QgdGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yJzsKJGxhbmdbJ3Byb21wdF9mb3Jnb3Rwd19wYWdlJ10gPSAnUGFnZUlEL0FsaWFzIGZvciBGb3Jnb3QgUGFzc3dvcmQgZm9ybSc7CiRsYW5nWydwcm9tcHRfY2hhbmdlc2V0dGluZ3NfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyBmb3IgQ2hhbmdlIFNldHRpbmdzIGZvcm0nOwokbGFuZ1sncHJvbXB0X2xvZ2luX3BhZ2UnXSA9ICdQYWdlSUQvQWxpYXMgdG8ganVtcCB0byBhZnRlciBsb2dpbiAqJzsKJGxhbmdbJ3Byb21wdF9sb2dvdXRfcGFnZSddID0gJ1BhZ2VJRC9BbGlhcyB0byBqdW1wIHRvIGFmdGVyIGxvZ291dCAqJzsKJGxhbmdbJ3NvcnRvcmRlciddID0gJ1NvcnQgb3JkZXInOwokbGFuZ1sncHJvbXB0X251bXJlc2V0cmVjb3JkJ10gPSAnQSBudW1iZXIgb2YgdXNlcnMgYXJlIGluIHRoZSBtaWRkbGUgb2YgcmVzZXR0aW5nIGxvc3QgcGFzc3dvcmRzLiAgQ3VycmVudGx5IHRoaXMgY291bnQgaXMgYXQ6JzsKJGxhbmdbJ3JlbW92ZTF3ZWVrJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzIG1vcmUgdGhhbiBhIHdlZWsgb2xkJzsKJGxhbmdbJ3JlbW92ZTFtb250aCddID0gJ1JlbW92ZSBhbGwgZW50cmllcyBtb3JlIHRoYW4gYSBtb250aCBvbGQnOwokbGFuZ1sncmVtb3ZlYWxsJ10gPSAnUmVtb3ZlIGFsbCBlbnRyaWVzJzsKJGxhbmdbJ2FyZXlvdXN1cmUnXSA9ICdBcmUgeW91IHN1cmU/JzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRjb2RlJ10gPSAnQW4gaW52YWxpZCBjb2RlIGhhcyBiZWVuIGVudGVyZWQsIHBsZWFzZSB0cnkgYWdhaW4nOwokbGFuZ1snZXJyb3JfdGVtcGNvZGVub3Rmb3VuZCddID0gJ0EgdGVtcG9yYXJ5IGNvZGUgZm9yIHlvdXIgdXNlciBpZCBjb3VsZCBub3QgYmUgZm91bmQgaW4gdGhlIGRhdGFiYXNlJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX3ZlcmlmeXRlbXBsYXRlJ10gPSAnVGVtcGxhdGUgdXNlZCB0byBkaXNwbGF5IHZlcmlmaWNhdGlvbiBmb3JtJzsKJGxhbmdbJ2ZvcmdvdHBhc3N3b3JkX2VtYWlsdGVtcGxhdGUnXSA9ICdUZW1wbGF0ZSB1c2VkIGZvciBmb3Jnb3R0ZW4gcGFzc3dvcmQgZW1haWwnOwokbGFuZ1snZXJyb3JfcmVzZXRhbHJlYWR5c2VudCddID0gJ0VpdGhlciB5b3Vyc2VsZiBvciBzb21lb25lIGVsc2UgaGFzIGFscmVhZHkgdHJpZ2dlcmVkIGEgcGFzc3dvcmQgcmVzZXQgb3BlcmF0aW9uIGZvciB0aGlzIGFjY291bnQuICBDaGVjayB5b3VyIGVtYWlsLCB5b3UgbWF5IGhhdmUgZnVydGhlciBpbnN0cnVjdGlvbnMgb24gaG93IHRvIHJlc2V0IHlvdXIgcGFzc3dvcmQgaW4geW91ciBpbmJveCc7CiRsYW5nWydlcnJvcl9kYmVycm9yJ10gPSAnRGF0YWJhc2UgZXJyb3InOwokbGFuZ1snbWVzc2FnZV9mb3Jnb3Rwd2VtYWlsJ10gPSAnWW91IGFyZSByZWNlaXZpbmcgdGhpcyBtZXNzYWdlIGJlY2F1c2Ugc29tZWJvZHkgdG9sZCBvdXIgc2l0ZSB0aGF0IHlvdSBoYWQgbG9zdCB5b3VyIHBhc3N3b3JkLiAgSWYgdGhpcyBpcyB0aGUgY2FzZSwgcmVhZCB0aGUgaW5zdHJ1Y3Rpb25zIGJlbG93LiAgSWYgeW91IGRvbiYjMDM5O3QgaGF2ZSBhIGNsdWUgd2hhdCB0aGlzIGlzLCB0aGVuIHlvdSBhcmUgc2FmZSB0byBkZWxldGUgdGhpcyBtZXNzYWdlLCBhbmQgd2UgdGhhbmsgeW91IGZvciB5b3VyIHRpbWUuJzsKJGxhbmdbJ3Byb21wdF9jb2RlJ10gPSAnQ29kZSc7CiRsYW5nWydtZXNzYWdlX2NvZGUnXSA9ICdUaGUgZm9sbG93aW5nIGNvZGUgaGFzIGJlZW4gZ2VuZXJhdGVkIHJhbmRvbWx5IGdlbmVyYXRlZCBpbiBvcmRlciB0byB2ZXJpZnkgdGhlIHVzZXIgYWNjb3VudC4gIHdoZW4geW91IGNsaWNrIG9uIHRoZSBsaW5rIGJlbG93IHlvdSB3aWxsIGJlIHByZXNlbnRlZCB3aXRoIGEgZmllbGQgdG8gZW50ZXIgdGhpcyBjb2RlLiAgTm9ybWFsbHkgdGhlIGZpZWxkIGlzIHByZS1jb21wbGV0ZWQgZm9yIHlvdSwgYnV0IGluY2FzZSBpdCBpc24mIzAzOTt0IHRoZSBjb2RlIGlzOic7CiRsYW5nWydwcm9tcHRfbGluayddID0gJ0NsaWNraW5nIG9uIHRoZSBmb2xsb3dpbmcgbGluayB3aWxsIHRha2UgeW91IHRvIHRoZSB3ZWJzaXRlIHdoZXJlIHlvdSBjYW4gZW50ZXIgdGhlIGFib3ZlIGNvZGUsIGFuZCByZXNldCB5b3VyIHBhc3N3b3JkOic7CiRsYW5nWydsb3N0cGFzc3dvcmRfZW1haWxzdWJqZWN0J10gPSAnTG9zdCBQYXNzd29yZCc7CiRsYW5nWydlcnJvcl9ub21haWxlcm1vZHVsZSddID0gJ0NvdWxkIG5vdCBmaW5kIHRoZSBDTVNNYWlsZXIgbW9kdWxlJzsKJGxhbmdbJ2luZm9fZm9yZ290cHdtZXNzYWdlc2VudCddID0gJ0FuIGVtYWlsIGhhcyBiZWVuIHNlbnQgdG8gJXMgd2l0aCBpbnN0cnVjdGlvbnMgYXMgdG8gaG93IHRvIHJlc2V0IHlvdXIgcGFzc3dvcmQuICBUaGFuayB5b3UnOwokbGFuZ1snbG9zdHB3X21lc3NhZ2UnXSA9ICdTbyB5b3UgZm9yZ290IG9yIGxvc3QgeW91ciBwYXNzd29yZC4gV2VsbCwgdHlwZSB5b3VyIHVzZXJuYW1lIGluIGhlcmUsIGFuZCBpZiB3ZSBjYW4gZmluZCB5b3Ugd2Ugd2lsbCBzZW5kIHlvdSBhbiBlbWFpbCB3aXRoIGluc3RydWN0aW9ucyBvbiBob3cgdG8gcmVzZXQgaXQnOwokbGFuZ1snZm9yZ290cGFzc3dvcmRfdGVtcGxhdGUnXSA9ICdGb3Jnb3QgUGFzc3dvcmQgVGVtcGxhdGVzJzsKJGxhbmdbJ2xvc3R1c2VybmFtZV90ZW1wbGF0ZSddID0gJ0xvc3QgVXNlcm5hbWUgVGVtcGxhdGUnOwokbGFuZ1snZXJyb3JfcHJvcG5vdGZvdW5kJ10gPSAnUHJvcGVydHkgJXMgbm90IGZvdW5kJzsKJGxhbmdbJ3Byb3BzZm91bmQnXSA9ICdQcm9wZXJ0aWVzIGZvdW5kJzsKJGxhbmdbJ2FkZHByb3AnXSA9ICdBZGQgUHJvcGVydHknOwokbGFuZ1snZXJyb3JfcmVxdWlyZWRmaWVsZCddID0gJ0EgcmVxdWlyZWQgZmllbGQgKCVzKSB3YXMgZW1wdHknOwokbGFuZ1snaW5mb19lbXB0eXBhc3N3b3JkZmllbGQnXSA9ICdFbnRlciBhIG5ldyBwYXNzd29yZCBoZXJlIHRvIGNoYW5nZSB5b3VyIHBhc3N3b3JkJzsKJGxhbmdbJ2Vycm9yX25vdGxvZ2dlZGluJ10gPSAnWW91IGRvIG5vdCBhcHBlYXIgdG8gYmUgbG9nZ2VkIGluJzsKJGxhbmdbJ3VzZXJfc2V0dGluZ3MnXSA9ICdTZXR0aW5ncyc7CiRsYW5nWyd1c2VyX3JlZ2lzdHJhdGlvbiddID0gJ1JlZ2lzdHJhdGlvbic7CiRsYW5nWydlcnJvcl9hY2NvdW50ZXhwaXJlZCddID0gJ1RoaXMgYWNjb3VudCBoYXMgZXhwaXJlZCc7CiRsYW5nWydlcnJvcl9pbXByb3BlcmVtYWlsZm9ybWF0J10gPSAnSW1wcm9wZXIgZW1haWwgYWRkcmVzcyBmb3JtYXR0aW5nJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWRleHBpcnlkYXRlJ10gPSAnSW52YWxpZCBleHBpcnkgZGF0ZSc7CiRsYW5nWydlcnJvcl9wcm9ibGVtc2V0dGluZ3Byb3BlcnR5J10gPSAnRXJyb3Igc2V0dGluZyBwcm9wZXJ0eSAlcyBmb3IgdXNlciAkcyc7CiRsYW5nWydlcnJvcl9pbnZhbGlkZ3JvdXBpZCddID0gJ0ludmFsaWQgZ3JvdXAgaWQgJXMnOwokbGFuZ1snaGlkZGVuZmllbGRtYXJrZXInXSA9ICdIaWRkZW4gZmllbGQgbWFya2VyJzsKJGxhbmdbJ2hpZGRlbmZpZWxkY29sb3InXSA9ICdIaWRkZW4gZmllbGQgY29sb3InOwokbGFuZ1snaGlkZGVuJ10gPSAnSGlkZGVuJzsKJGxhbmdbJ2Vycm9yX2R1cGxpY2F0ZW5hbWUnXSA9ICdBIHByb3BlcnR5IHdpdGggdGhhdCBuYW1lIGlzIGFscmVhZHkgZGVmaW5lZCc7CiRsYW5nWydlcnJvcl9ub3Byb3BlcnRpZXMnXSA9ICdObyBwcm9wZXJ0aWVzIGRlZmluZWQnOwokbGFuZ1snZXJyb3Jfbm9yZWxhdGlvbnMnXSA9ICdObyBwcm9wZXJ0aWVzIHdlcmUgc2VsZWN0ZWQgZm9yIHRoaXMgZ3JvdXAnOwokbGFuZ1snbm9ncm91cHMnXSA9ICdObyBHcm91cHMgYXJlIGRlZmluZWQnOwokbGFuZ1snZ3JvdXBzZm91bmQnXSA9ICdHcm91cHMgRm91bmQnOwokbGFuZ1snZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCddID0gJ01lbWJlcnNoaXAgaW4gYXQgbGVhc3Qgb25lIGdyb3VwIGlzIHJlcXVpcmVkJzsKJGxhbmdbJ3Byb21wdF9yZXF1aXJlb25lZ3JvdXAnXSA9ICdSZXF1aXJlIG1lbWJlcnNoaXAgaW4gYXRsZWFzdCBvbmUgZ3JvdXAnOwokbGFuZ1snYmFjayddID0gJ0JhY2snOwokbGFuZ1snZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbSddID0gJyVzIGlzIGEgcmVxdWlyZWQgZmllbGQnOwokbGFuZ1sncmVxdWlyZWRmaWVsZG1hcmtlciddID0gJ01hcmsgcmVxdWlyZWQgZmllbGRzIHdpdGgnOwokbGFuZ1sncmVxdWlyZWRmaWVsZGNvbG9yJ10gPSAnSGlsaXRlIHJlcXVpcmVkIGZpZWxkcyBpbic7CiRsYW5nWyduZXh0J10gPSAnTmV4dCc7CiRsYW5nWydlcnJvcl9ncm91cGV4aXN0cyddID0gJ0EgR3JvdXAgd2l0aCB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMnOwokbGFuZ1sncmVxdWlyZWQnXSA9ICdSZXF1aXJlZCc7CiRsYW5nWydvcHRpb25hbCddID0gJ09wdGlvbmFsJzsKJGxhbmdbJ29mZiddID0gJ09mZic7CiRsYW5nWydzaXplJ10gPSAnU2l6ZSc7CiRsYW5nWydzaXplY29tbWVudCddID0gJzxici8+KE1heGltdW0gc2l6ZSBvZiBhbnkgb25lIGRpbWVuc2lvbiBvZiB0aGUgaW1hZ2UgaW4gcGl4ZWxzKSc7CiRsYW5nWydsZW5ndGgnXSA9ICdMZW5ndGgnOwokbGFuZ1snbGVuZ3RoY29tbWVudCddID0gJzxicj4oY2hhcnMgaW4gdGhlIHRleHQgaW5wdXQpJzsKJGxhbmdbJ3NlbG9wdGlvbnMnXSA9ICdEcm9wZG93biBvcHRpb25zLCBzZXBhcmF0ZWQgYnkgbGluZSBicmVha3MuICBWYWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRleHQgd2l0aCBhID0gY2hhcmFjdGVyLiBpLmU6IEZlbWFsZT1mJzsKJGxhbmdbJ3Byb21wdCddID0gJ1Byb21wdCc7CiRsYW5nWydwcm9tcHRfdHlwZSddID0gJ1R5cGUnOwokbGFuZ1sndHlwZSddID0gJ1R5cGUnOwokbGFuZ1snZmllbGRzdGF0dXMnXSA9ICdGaWVsZCBTdGF0dXMnOwokbGFuZ1sndXNlZGlubG9zdHVuJ10gPSAnQXNrIGluIExvc3Q8YnIvPlVzZXJuYW1lJzsKJGxhbmdbJ3RleHQnXSA9ICdUZXh0JzsKJGxhbmdbJ2NoZWNrYm94J10gPSAnQ2hlY2tib3gnOwokbGFuZ1snbXVsdGlzZWxlY3QnXSA9ICdNdWx0aSBTZWxlY3QgTGlzdCc7CiRsYW5nWydpbWFnZSddID0gJ0ltYWdlJzsKJGxhbmdbJ2VtYWlsJ10gPSAnRW1haWwgQWRkcmVzcyc7CiRsYW5nWyd0ZXh0YXJlYSddID0gJ1RleHRhcmVhJzsKJGxhbmdbJ2Ryb3Bkb3duJ10gPSAnRHJvcGRvd24nOwokbGFuZ1snbXNnX2N1cnJlbnRseWxvZ2dlZGluYXMnXSA9ICdXZWxjb21lJzsKJGxhbmdbJ2xvZ291dCddID0gJ1NpZ24gb3V0JzsKJGxhbmdbJ3Byb21wdF9uZXdncm91cG5hbWUnXSA9ICdVc2UgdGhpcyBncm91cCBuYW1lJzsKJGxhbmdbJ3Byb21wdF9jaGFuZ2VzZXR0aW5ncyddID0gJ0NoYW5nZSBNeSBTZXR0aW5ncyc7CiRsYW5nWydlcnJvcl9sb2dpbmZhaWxlZCddID0gJ0xvZ2luIGZhaWxlZCAtIEludmFsaWQgdXNlcm5hbWUgb3IgcGFzc3dvcmQ/JzsKJGxhbmdbJ2xvZ2luJ10gPSAnU2lnbiBpbic7CiRsYW5nWydwcm9tcHRfc2lnbmluX2J1dHRvbiddID0gJ1NpZ24gaW4gYnV0dG9uIGxhYmVsJzsKJGxhbmdbJ3Byb21wdF91c2VybmFtZSddID0gJ1VzZXJuYW1lJzsKJGxhbmdbJ3Byb21wdF9lbWFpbCddID0gJ0VtYWlsIEFkZHJlc3MnOwokbGFuZ1sncHJvbXB0X3Bhc3N3b3JkJ10gPSAnUGFzc3dvcmQnOwokbGFuZ1sncHJvbXB0X3JlbWVtYmVybWUnXSA9ICdSZW1lbWJlciBtZSBvbiB0aGlzIGNvbXB1dGVyJzsKJGxhbmdbJ3JlZ2lzdGVyJ10gPSAnUmVnaXN0ZXInOwokbGFuZ1snZm9yZ290cHcnXSA9ICdGb3Jnb3QgWW91ciBQYXNzd29yZD8nOwokbGFuZ1snbG9zdHVzZXJuYW1lJ10gPSAnRm9yZ290IFlvdXIgTG9naW4gRGV0YWlscz8nOwokbGFuZ1snZGVmYXVsdHMnXSA9ICdEZWZhdWx0cyc7CiRsYW5nWyd0ZW1wbGF0ZSddID0gJ1RlbXBsYXRlJzsKJGxhbmdbJ2Vycm9yX3VzZXJub3Rmb3VuZCddID0gJ0NvdWxkIG5vdCBmaW5kIGluZm9ybWF0aW9uIGZvciB0aGlzIHVzZXInOwokbGFuZ1snZXJyb3JfdXNlcm5hbWV0YWtlbiddID0gJ1RoYXQgdXNlcm5hbWUgKCVzKSBpcyBhbHJlYWR5IGluIHVzZSc7CiRsYW5nWydwcm9tcHRfc210cHZhbGlkYXRlJ10gPSAnVXNlIFNNVFAgdG8gdmFsaWRhdGUgZW1haWwgYWRkcmVzc2VzPyc7CiRsYW5nWydwcm9tcHRfbWlucHdsZW4nXSA9ICdNaW5pbXVtIFBhc3N3b3JkIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfbWF4cHdsZW4nXSA9ICdNYXhpbXVtIFBhc3N3b3JkIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfbWludW5sZW4nXSA9ICdNaW5pbXVtIFVzZXJuYW1lIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfbWF4dW5sZW4nXSA9ICdNYXhpbXVtIFVzZXJuYW1lIExlbmd0aCc7CiRsYW5nWydwcm9tcHRfc2Vzc2lvbnRpbWVvdXQnXSA9ICdTZXNzaW9uIFRpbWVvdXQgKHNlY29uZHMpJzsKJGxhbmdbJ3Byb21wdF9jb29raWVrZWVwYWxpdmUnXSA9ICdVc2UgY29va2llcyB0byBrZWVwIGxvZ2lucyBhbGl2ZSc7CiRsYW5nWydwcm9tcHRfYWxsb3dlbWFpbHJlZyddID0gJ0FsbG93IEVtYWlsIFJlZ2lzdHJhdGlvbic7CiRsYW5nWydwcm9tcHRfZGZsdGdyb3VwJ10gPSAnRGVmYXVsdCBHcm91cCBmb3IgbmV3IHVzZXJzJzsKJGxhbmdbJ2NoYW5nZXNldHRpbmdzX3RlbXBsYXRlJ10gPSAnQ2hhbmdlIFNldHRpbmdzIFRlbXBsYXRlJzsKJGxhbmdbJ2Vycm9yX3Bhc3N3b3JkbWlzbWF0Y2gnXSA9ICdQYXNzd29yZHMgRG8gbm90IG1hdGNoJzsKJGxhbmdbJ2Vycm9yX2ludmFsaWR1c2VybmFtZSddID0gJ0ludmFsaWQgVXNlcm5hbWUnOwokbGFuZ1snZXJyb3JfaW52YWxpZHBhc3N3b3JkJ10gPSAnSW52YWxpZCBQYXNzd29yZCc7CiRsYW5nWydlZGl0dXNlciddID0gJ0VkaXQgVXNlcic7CiRsYW5nWyd2YWxpZCddID0gJ1ZhbGlkJzsKJGxhbmdbJ3VzZXJuYW1lJ10gPSAnVXNlcm5hbWUnOwokbGFuZ1snc3RhdHVzJ10gPSAnU3RhdHVzJzsKJGxhbmdbJ2Vycm9yX21lbWJlcmdyb3VwcyddID0gJ1RoaXMgdXNlciBpcyBub3QgYSBtZW1iZXIgb2YgYW55IGdyb3Vwcyc7CiRsYW5nWydlcnJvcl9wcm9wZXJ0aWVzJ10gPSAnTm8gUHJvcGVydGllcyc7CiRsYW5nWydlcnJvcl9kdXBfcHJvcGVydGllcyddID0gJ0F0dGVtcHQgdG8gaW1wb3J0IGR1cGxpY2F0ZSBwcm9wZXJ0aWVzJzsKJGxhbmdbJ3ZhbHVlJ10gPSAnVmFsdWUnOwokbGFuZ1snZ3JvdXBzJ10gPSAnR3JvdXBzJzsKJGxhbmdbJ3Byb3BlcnRpZXMnXSA9ICdQcm9wZXJ0aWVzJzsKJGxhbmdbJ3Byb3BuYW1lJ10gPSAnUHJvcGVydHkgTmFtZSc7CiRsYW5nWydwcm9wdmFsdWUnXSA9ICdQcm9wZXJ0eSBWYWx1ZSc7CiRsYW5nWydhZGQnXSA9ICdBZGQnOwokbGFuZ1snaGlzdG9yeSddID0gJ0hpc3RvcnknOwokbGFuZ1snZWRpdCddID0gJ0VkaXQnOwokbGFuZ1snZXhwaXJlcyddID0gJ0V4cGlyZXMnOwokbGFuZ1snc3BlY2lmeV9kYXRlJ10gPSAnU3BlY2lmeSBEYXRlJzsKJGxhbmdbJzEyaHJzJ10gPSAnMTIgSG91cnMnOwokbGFuZ1snMjRocnMnXSA9ICcyNCBIb3Vycyc7CiRsYW5nWyc0OGhycyddID0gJzQ4IEhvdXJzJzsKJGxhbmdbJzF3ZWVrJ10gPSAnMSBXZWVrJzsKJGxhbmdbJzJ3ZWVrcyddID0gJzIgV2Vla3MnOwokbGFuZ1snMW1vbnRoJ10gPSAnMSBNb250aCc7CiRsYW5nWyczbW9udGhzJ10gPSAnMyBNb250aHMnOwokbGFuZ1snNm1vbnRocyddID0gJzYgTW9udGhzJzsKJGxhbmdbJzF5ZWFyJ10gPSAnMSBZZWFyJzsKJGxhbmdbJ25ldmVyJ10gPSAnTmV2ZXInOwokbGFuZ1sncG9zdGluc3RhbGxtZXNzYWdlJ10gPSAnTW9kdWxlIGluc3RhbGxlZCBzdWNlc3NmdWxseS48YnIvPkJlIHN1cmUgdG8gc2V0IHRoZSAmcXVvdDtNb2RpZnkgRnJvbnRFbmRVc2VyIFByb3BlcnRpZXMgcGVybWlzc2lvbi4gIEFkZGl0aW9uYWxseSwgd2UgcmVjb21tZW5kIHRoYXQgeW91IGluc3RhbGwgdGhlIENhcHRjaGEgbW9kdWxlLiAgSWYgaW5zdGFsbGVkLCB2YWxpZGF0aW9uIG9mIGEgY2FwdGNoYSBpbWFnZSB3aWxsIGJlIHJlcXVpcmVkIGluIGFkZGl0aW9uIHRvIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgdG8gbG9naW4uICBUaGlzIGlzIGludGVuZGVkIHRvIHByZXZlbnQgYnJ1dGUgZm9yY2UgYXR0YWNrcy4gIDxzdHJvbmc+Tm90ZTo8L3N0cm9uZz4gVGhlIG5vY2FwdGNoYSBwYXJhbWV0ZXIgY2FuIGJlIHVzZWQgdG8gZGlzYWJsZSB0aGlzIGZ1bmN0aW9uYWxpdHkgZXZlbiBpZiB0aGUgQ2FwdGNoYSBtb2R1bGUgaXMgaW5zdGFsbGVkLiZxdW90Oyc7CiRsYW5nWydwYXNzd29yZCddID0gJ1Bhc3N3b3JkJzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAnQWdhaW4nOwokbGFuZ1snZXJyb3JfZ3JvdXBuYW1lX2V4aXN0cyddID0gJ0dyb3VwIGJ5IHRoYXQgbmFtZSBhbHJlYWR5IGV4aXN0cyc7CiRsYW5nWydlZGl0Z3JvdXAnXSA9ICdFZGl0IEdyb3VwJzsKJGxhbmdbJ3N1Ym1pdCddID0gJ1N1Ym1pdCc7CiRsYW5nWydjYW5jZWwnXSA9ICdDYW5jZWwnOwokbGFuZ1snZGVsZXRlJ10gPSAnRGVsZXRlJzsKJGxhbmdbJ2NvbmZpcm1fZWRpdGdyb3VwJ10gPSAnQXJlIHlvdSBzdXJlIHRoaXMgaXMgdGhlIHByb3BlciBzZXR0aW5ncyBmb3IgdGhpcyBncm91cD9cblR1cm5pbmcgYSBwcm9wZXJ0eSBvZmYgd2lsbCBub3QgZGVsZXRlIGFueSBlbnRyaWVzIGluIHRoZSBwcm9wZXJ0aWVzIHRhYmxlIGZvciB0aGlzIGdyb3VwL3VzZXIuICBUaGV5IHdpbGwgbWVyZWx5IGJlIHVuYXZhaWxhYmxlLic7CiRsYW5nWydhcmV5b3VzdXJlX2RlbGV0ZWdyb3VwJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGdyb3VwPyc7CiRsYW5nWydjb25maXJtX2RlbGV0ZV9wcm9wJ10gPSAnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGNvbXBsZXRlbHkgZGVsZXRlIHRoaXMgcHJvcGVydHk/XG5Eb2luZyBzbyB3aWxsIGFsc28gZXJhc2UgYW55IHVzZXIgZW50cmllcyBmb3IgdGhpcyBwcm9wZXJ0eS4nOwokbGFuZ1snZXJyb3JfaW5zdWZmaWNpZW50cGFyYW1zJ10gPSAnSW5zdWZmaWNpZW50IFBhcmFtZXRlcnMnOwokbGFuZ1snaWQnXSA9ICdJZCc7CiRsYW5nWyduYW1lJ10gPSAnTmFtZSc7CiRsYW5nWydlcnJvcl9jYW50YWRkcHJvcCddID0gJ1Byb2JsZW0gYWRkaW5nIHByb3BlcnR5JzsKJGxhbmdbJ2Vycm9yX2NhbnRhZGRncm91cHJlbG4nXSA9ICdQcm9ibGVtIGFkZGluZyBncm91cCByZWxhdGlvbic7CiRsYW5nWydlcnJvcl9jYW50YWRkZ3JvdXAnXSA9ICdQcm9ibGVtIGFkZGluZyBncm91cCc7CiRsYW5nWydlcnJvcl9jYW50YXNzaWdudXNlciddID0gJ1Byb2JsZW0gYWRkaW5nIGEgdXNlciB0byBhIGdyb3VwJzsKJGxhbmdbJ2Vycm9yX2NvdWxkbm90ZGVsZXRlcHJvcGVydHknXSA9ICdQcm9ibGVtIGRlbGV0aW5nIGEgcHJvcGVydHknOwokbGFuZ1snZXJyb3JfY291bGRub3RmaW5kZW1haWwnXSA9ICdDb3VsZCBub3QgZmluZCBhbiBlbWFpbCBhZGRyZXNzJzsKJGxhbmdbJ2Vycm9yX2Rlc3RpbmF0aW9ubm90d3JpdGFibGUnXSA9ICdObyB3cml0ZSBwZXJtaXNzaW9uIHRvIGRlc3RpbmF0aW9uIGRpcmVjdG9yeSc7CiRsYW5nWydlcnJvcl9pbnZhbGlkcGFyYW1zJ10gPSAnSW52YWxpZCBQYXJhbWV0ZXJzJzsKJGxhbmdbJ2Vycm9yX25vZ3JvdXBzJ10gPSAnQ291bGQgbm90IGZpbmQgYW55IGdyb3Vwcyc7CiRsYW5nWydhcHBseWZpbHRlciddID0gJ0FwcGx5JzsKJGxhbmdbJ2ZpbHRlciddID0gJ0ZpbHRlcic7CiRsYW5nWyd1c2VyZmlsdGVyJ10gPSAnVXNlcm5hbWUgUmVndWxhciBFeHByZXNzaW9uJzsKJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24nOwokbGFuZ1snZ3JvdXBuYW1lJ10gPSAnR3JvdXAgTmFtZSc7CiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkJzsKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3InOwokbGFuZ1snYWRkZ3JvdXAnXSA9ICdBZGQgR3JvdXAnOwokbGFuZ1snaW1wb3J0Z3JvdXAnXSA9ICdJbXBvcnQgR3JvdXAnOwokbGFuZ1snYWRkdXNlciddID0gJ0FkZCBVc2VyJzsKJGxhbmdbJ3VzZXJzZm91bmQnXSA9ICdVc2VycyBmb3VuZCB0aGF0IG1hdGNoIHRoZSBjcml0ZXJpYSc7CiRsYW5nWydncm91cCddID0gJ0dyb3VwJzsKJGxhbmdbJ3NlbGVjdGdyb3VwJ10gPSAnU2VsZWN0IEdyb3VwJzsKJGxhbmdbJ3JlZ2lzdHJhdGlvbl90ZW1wbGF0ZSddID0gJ1JlZ2lzdHJhdGlvbiBUZW1wbGF0ZSc7CiRsYW5nWydsb2dvdXRfdGVtcGxhdGUnXSA9ICdMb2dvdXQgVGVtcGxhdGUnOwokbGFuZ1snbG9naW5fdGVtcGxhdGUnXSA9ICdMb2dpbiBUZW1wbGF0ZSc7CiRsYW5nWydwcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2VzJzsKJGxhbmdbJ3VzZXJzJ10gPSAnVXNlcnMnOwokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnRnJvbnRlbmQgVXNlciBNYW5hZ2VtZW50JzsKJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnQWxsb3cgdXNlcnMgdG8gbG9nIGluIHRvIHRoZSBmcm9udGVuZCBvZiB5b3VyIHNpdGUnOwokbGFuZ1snZGVmYXVsdGZyb250cGFnZSddID0gJ0RlZmF1bHQgZnJvbnQgcGFnZSc7CiRsYW5nWydsYXN0YWNjZXNzZWRwYWdlJ10gPSAnTGFzdCBhY2Nlc3NlZCBwYWdlJzsKJGxhbmdbJ290aGVycGFnZSddID0gJ090aGVyIHBhZ2U6ICc7CiRsYW5nWydjYXB0Y2hhX3RpdGxlJ10gPSAnRW50ZXIgdGhlIHRleHQgZnJvbSB0aGUgaW1hZ2UnOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/zh_TW.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ25vbmUnXSA9ICfnhKEnOwokbGFuZ1snb2snXSA9ICdPSyc7CiRsYW5nWyd2aXNpdG9yc190YWInXSA9ICfoqKrlrqInOwokbGFuZ1snc2VsZWN0b25lJ10gPSAn6YG45pOH5LiA5YCLJzsKJGxhbmdbJ3N0YXJ0X3llYXInXSA9ICfplovlp4vlubQnOwokbGFuZ1snZW5kX3llYXInXSA9ICfntZDmnZ/lubQnOwokbGFuZ1snZGF0ZSddID0gJ+aXpeacnyc7CiRsYW5nWydtb250aHMnXSA9ICfmnIgnOwokbGFuZ1sneWVzJ10gPSAn5pivJzsKJGxhbmdbJ25vJ10gPSAn5LiNJzsKJGxhbmdbJ2RlZmF1bHRzJ10gPSAn6aCQ6KitJzsKJGxhbmdbJ3Bhc3N3b3JkJ10gPSAn5a+G56K8JzsKJGxhbmdbJ3JlcGVhdHBhc3N3b3JkJ10gPSAn5YaN5LiA5qyhJzsKJGxhbmdbJ2VkaXRncm91cCddID0gJ+e3qOi8r+e+pOe1hCc7CiRsYW5nWydzdWJtaXQnXSA9ICfmj5DkuqQnOwokbGFuZ1snY2FuY2VsJ10gPSAn5Y+W5raIJzsKJGxhbmdbJ2RlbGV0ZSddID0gJ+WIqumZpCc7CiRsYW5nWydpZCddID0gJ0lkJzsKJGxhbmdbJ25hbWUnXSA9ICflkI3lrZcnOwokbGFuZ1snZ3JvdXAnXSA9ICfnvqTntYQnOwokbGFuZ1sndXNlcnMnXSA9ICfkvb/nlKjogIUnOwo/Pg==]]></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.email_verify_assistant.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKbmFtZXNwYWNlIEZyb250RW5kVXNlcnM7CgpjbGFzcyBlbWFpbF92ZXJpZnlfYXNzaXN0YW50IGV4dGVuZHMgdmVyaWZpY2F0aW9uX2Fzc2lzdGFudAp7CiAgICBwcml2YXRlICRfdGVtcGxhdGU7CiAgICBwcml2YXRlICRfc3ViamVjdDsKICAgIHByaXZhdGUgJF90aXRsZTsKICAgIHByaXZhdGUgJF9tc2c7CiAgICBwcml2YXRlICRfY29kZV9wcm9tcHQ7CiAgICBwcml2YXRlICRfbGlua19wcm9tcHQ7CiAgICBwcml2YXRlICRfc2VudDsKCiAgICBwcml2YXRlIGZ1bmN0aW9uIGdldF9kZWZhdWx0X3RlbXBsYXRlKCkKICAgIHsKICAgICAgICAkdHlwZW5hbWUgPSAnRnJvbnRFbmRVc2Vyczo6Zm9yZ290IHBhc3N3b3JkIGVtYWlsJzsKICAgICAgICAkdHBsID0gXENtc0xheW91dFRlbXBsYXRlOjpsb2FkX2RmbHRfYnlfdHlwZSgkdHlwZW5hbWUpOwogICAgICAgIGlmKCAhJHRwbCApIHsKICAgICAgICAgICAgYXVkaXQoJycsJ0Zyb250RW5kVXNlcnMnLCdObyBkZWZhdWx0IHRlbXBsYXRlIG9mIHR5cGUgJy4kdHlwZW5hbWUuJyBmb3VuZCcpOwogICAgICAgICAgICB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJ05vIGRlZmF1bHQgdGVtcGxhdGUgb2YgdHlwZSAnLiR0eXBlbmFtZSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkdHBsLT5nZXRfbmFtZSgpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkdWlkKQogICAgewogICAgICAgIHBhcmVudDo6X19jb25zdHJ1Y3QoJHVpZCk7CiAgICAgICAgJGZldSA9IFxjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpOwogICAgICAgICR0aGlzLT5fZW1haWwgPSAkZmV1LT5HZXRFbWFpbCgkdWlkKTsKICAgICAgICBpZiggISR0aGlzLT5fZW1haWwgKSB0aHJvdyBuZXcgXExvZ2ljRXhjZXB0aW9uKCdBdHRlbXB0IHRvIGNyZWF0ZSBhICcuX19DTEFTU19fLicgZm9yIGEgdXNlciB3aXRob3V0IGEgdmFsaWQgZW1haWwgYWRkcmVzcycpOwoKICAgICAgICAkdGhpcy0+X3RlbXBsYXRlID0gJHRoaXMtPmdldF9kZWZhdWx0X3RlbXBsYXRlKCk7CiAgICAgICAgJHRoaXMtPl9zdWJqZWN0ID0gJ1BsZWFzZSB2ZXJpZnkgeW91ciBhY2NvdW50IGZvciB7c2l0ZW5hbWV9JzsKICAgICAgICAkdGhpcy0+X3RpdGxlID0gJ1BsZWFzZSB2ZXJpZnkgeW91ciBhY2NvdW50JzsKICAgICAgICAkdGhpcy0+X21zZyA9ICc8cD5Gb3Igc2VjdXJpdHkgcHVycG9zZXMgd2UgbmVlZCB0byB2YWxpZGF0ZSB5b3VyIGlkZW50aXR5LiAgVGhpcyBpcyBkb25lIGJ5IHZlcmlmeWluZyB0aGF0IHlvdSByZWNlaXZlZCB0aGlzIGVtYWlsIGNvcnJlY3RseSwgYW5kIGNhbiBmb2xsb3cgdGhlc2UgaW5zdHJ1Y3Rpb25zLjwvcD4KPHA+QmVsb3csIFdlIGhhdmUgcHJvdmlkZWQgYSB1bmlxdWUgc2VjdXJpdHkgY29kZSB0byB1c2UgdG8gdmFsaWRhdGUgeW91ciBjcmVkZW50aWFscy4gUGxlYXNlIGNsaWNrIG9uIHRoZSBsaW5rIHByb3ZpZGVkIGFuZCBlbnRlciB0aGUgc2VjdXJpdHkgY29kZS4gPGVtPkl0IG1heSBhbHJlYWR5IGJlIGZpbGxlZCBpbiBvbiB0aGUgZm9ybTwvZW0+LiAgVGhpcyB3aWxsIGNvbXBsZXRlIHRoZSBvcGVyYXRpb24gYW5kIGFsbG93IHlvdSB0byBsb2dpbiB0byB0aGUgc2VydmljZS48L3A+JzsKICAgICAgICAkdGhpcy0+X2NvZGVfcHJvbXB0ID0gJ1lvdXIgc2VjdXJpdHkgY29kZSBpczonOwogICAgICAgICR0aGlzLT5fbGlua19wcm9tcHQgPSAnUGxlYXNlIGNsaWNrIG9uIHRoaXMgbGluayc7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIFNldFRlbXBsYXRlKCRzdHIpCiAgICB7CiAgICAgICAgaWYoICRzdHIgKSAkdGhpcy0+X3RlbXBsYXRlID0gJHN0cjsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gU2V0VGl0bGUoJHN0cikKICAgIHsKICAgICAgICBpZiggJHN0ciApICR0aGlzLT5fdGl0bGUgPSAkc3RyOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBTZXRTdWJqZWN0KCRzdHIpCiAgICB7CiAgICAgICAgaWYoICRzdHIgKSAkdGhpcy0+X3N1YmplY3QgPSAkc3RyOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBTZXRNZXNzYWdlKCRzdHIpCiAgICB7CiAgICAgICAgaWYoICRzdHIgKSAkdGhpcy0+X21zZyA9ICRzdHI7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIFNldENvZGVQcm9tcHQoJHN0cikKICAgIHsKICAgICAgICBpZiggJHN0ciApICR0aGlzLT5fY29kZV9wcm9tcHQgPSAkc3RyOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBTZXRMaW5rUHJvbXB0KCRzdHIpCiAgICB7CiAgICAgICAgaWYoICRzdHIgKSAkdGhpcy0+X2xpbmtfcHJvbXB0ID0gJHN0cjsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gc2VuZCgpCiAgICB7CiAgICAgICAgaWYoICR0aGlzLT5fc2VudCApIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJ0Nhbm5vdCB1c2UgdGhlIHNlbmQgbWV0aG9kIG9uIGFuIG9iamVjdCBvZiB0eXBlICcuX19DTEFTU19fLicgbW9yZSB0aGFuIG9uY2UnKTsKCiAgICAgICAgJHVpZCA9ICR0aGlzLT5nZXRfdWlkKCk7CiAgICAgICAgJGRlc3RwYWdlID0gJHRoaXMtPmdldF9kZXN0cGFnZSgpOwogICAgICAgICRjb2RlID0gJHRoaXMtPmdldF9jb2RlKCk7CgogICAgICAgICRmZXUgPSBcZmV1X3V0aWxzOjpnZXRfbW9kKCk7CiAgICAgICAgJHVybCA9ICRmZXUtPmNyZWF0ZV91cmwoJ2NudG50MDEnLCd2ZXJpZnlvbmx5JywkZGVzdHBhZ2UsWyd1aWQnPT4kdWlkLCdjb2RlJz0+JGNvZGVdKTsKCiAgICAgICAgJHRwbCA9ICRmZXUtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCR0aGlzLT5fdGVtcGxhdGUpOwogICAgICAgICR0cGwtPmFzc2lnbigndGl0bGUnLCR0aGlzLT5fdGl0bGUpOwogICAgICAgICR0cGwtPmFzc2lnbignbWVzc2FnZV9mb3Jnb3Rwd21haWwnLCR0aGlzLT5fbXNnKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ21lc3NhZ2VfZm9yZ290cHdlbWFpbCcsJHRoaXMtPl9tc2cpOwogICAgICAgICR0cGwtPmFzc2lnbignbWVzc2FnZScsJHRoaXMtPl9tc2cpOwogICAgICAgICR0cGwtPmFzc2lnbigncHJvbXB0X2NvZGUnLCR0aGlzLT5fY29kZV9wcm9tcHQpOwogICAgICAgICR0cGwtPmFzc2lnbigncHJvbXB0X2xpbmsnLCR0aGlzLT5fbGlua19wcm9tcHQpOwogICAgICAgICR0cGwtPmFzc2lnbignZGVzdHBhZ2UnLCRkZXN0cGFnZSk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdkYXRhX2NvZGUnLCRjb2RlKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3N1YmplY3QnLCR0aGlzLT5fc3ViamVjdCk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdkYXRhX3VybCcsJHVybCk7CiAgICAgICAgJGJvZHkgPSAkdHBsLT5mZXRjaCgpOwoKICAgICAgICAvLyBkdXBsaWNhdGVkIGNvZGUuLi4gSSBrbm93LCBJIGtub3cuLi4gc2hhZGRhcAogICAgICAgICR0cGwgPSAkZmV1LT5DcmVhdGVTbWFydHlUZW1wbGF0ZSgnc3RyaW5nOicuJHRoaXMtPl9zdWJqZWN0KTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3RpdGxlJywkdGhpcy0+X3RpdGxlKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ21lc3NhZ2VfZm9yZ290cHdtYWlsJywkdGhpcy0+X21zZyk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdtZXNzYWdlX2ZvcmdvdHB3ZW1haWwnLCR0aGlzLT5fbXNnKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ21lc3NhZ2UnLCR0aGlzLT5fbXNnKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3Byb21wdF9jb2RlJywkdGhpcy0+X2NvZGVfcHJvbXB0KTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3Byb21wdF9saW5rJywkdGhpcy0+X2xpbmtfcHJvbXB0KTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2Rlc3RwYWdlJywkZGVzdHBhZ2UpOwogICAgICAgICR0cGwtPmFzc2lnbignZGF0YV9jb2RlJywkY29kZSk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdzdWJqZWN0JywkdGhpcy0+X3N1YmplY3QpOwogICAgICAgICR0cGwtPmFzc2lnbignZGF0YV91cmwnLCR1cmwpOwogICAgICAgICRzdWJqZWN0ID0gJHRwbC0+ZmV0Y2goKTsKCiAgICAgICAgJG1haWxlciA9IG5ldyBcY21zX21haWxlcigpOwogICAgICAgICRtYWlsZXItPkFkZEFkZHJlc3MoJHRoaXMtPl9lbWFpbCk7CiAgICAgICAgJG1haWxlci0+U2V0Qm9keSgkYm9keSk7CiAgICAgICAgJG1haWxlci0+U2V0U3ViamVjdCgkc3ViamVjdCk7CiAgICAgICAgJG1haWxlci0+SXNIVE1MKFRSVUUpOwogICAgICAgICRtYWlsZXItPlNldFByaW9yaXR5KDEpOwogICAgICAgICRtYWlsZXItPlNlbmQoKTsKICAgICAgICAkdGhpcy0+X3NlbnQgPSBUUlVFOwoKICAgICAgICBhdWRpdCgkdWlkLCRmZXUtPkdldE5hbWUoKSwnVmVyaWZpY2F0aW9uIGVtYWlsIHNlbnQnKTsKICAgICAgICAkZmV1LT5hZGRfaGlzdG9yeSgkdWlkLCdpbml0X3ZlcmlmeScpOwogICAgfQp9]]></data>
	</file>
	<file>
	  <filename>/lib/class.FEUForcedLogoutTask.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBGRVVGb3JjZWRMb2dvdXRUYXNrIGltcGxlbWVudHMgQ21zUmVndWxhclRhc2sKewogIHB1YmxpYyBmdW5jdGlvbiBnZXRfbmFtZSgpCiAgewogICAgcmV0dXJuIGdldF9jbGFzcygpOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZGVzY3JpcHRpb24oKQogIHsKICAgICRtb2QgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKICAgIHJldHVybiAkbW9kLT5MYW5nKCdmb3JjZWRsb2dvdXR0YXNrX2Rlc2MnKTsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gdGVzdCgkdGltZSA9ICcnKQogIHsKICAgIGlmKCAhJHRpbWUgKSAkdGltZSA9IHRpbWUoKTsKICAgICRtb2QgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKICAgICRsYXN0cnVuID0gJG1vZC0+R2V0UHJlZmVyZW5jZSgnZm9yY2Vsb2dvdXRfbGFzdHJ1bicpOwoKICAgICR0aW1lcyA9ICRtb2QtPkdldFByZWZlcmVuY2UoJ2ZvcmNlbG9nb3V0X3RpbWVzJyk7IC8vIGxpa2U6IDE4OjMwLDIwOjMwLDA4OjAwLCBldGMuCiAgICBpZiggJHRpbWVzID09ICcnICkgcmV0dXJuIEZBTFNFOwoKICAgICR0bXAgPSBhcnJheSgpOwogICAgJHRpbWVzID0gZXhwbG9kZSgnLCcsJHRpbWVzKTsKICAgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCR0aW1lcyk7ICRpKysgKQogICAgICB7CgkkdF9oID0gJyc7CgkkdF9tID0gJyc7CglpZiggc3RhcnRzd2l0aCgkdGltZXNbJGldLCcqJykgKQoJICB7CgkgICAgbGlzdCgkanVuaywkbWludXRlcykgPSBleHBsb2RlKCcvJywkdGltZXNbJGldLDIpOwoJICAgICRtaW51dGVzID0gKGludCkkbWludXRlczsKCSAgICAkbWludXRlcyA9IG1heCgkbWludXRlcywxKTsgLy8gbWludW11bSAyIG1pbnV0ZXMKCSAgICAkbWludXRlcyA9IG1pbigkbWludXRlcywxODApOyAvLyBtYXhpbXVtIDE4MCBtaW51dGVzLgoJICAgIGZvciggJGkgPSAwOyAkaSA8IDYwKjI0OyAkaSArPSAkbWludXRlcyApCgkgICAgICB7CgkJJHRfaCA9IChpbnQpKCRpLzYwKTsKCQkkdF9tID0gKGludCkoJGklNjApOwoJCSR0bXBbXSA9IG1rdGltZSgoaW50KSR0X2gsKGludCkkdF9tLDAsKGludClkYXRlKCdtJywkdGltZSksKGludClkYXRlKCdkJywkdGltZSksKGludClkYXRlKCdZJywkdGltZSkpOwoJICAgICAgfQoJICB9CgllbHNlCgkgIHsKCSAgICBsaXN0KCR0X2gsJHRfbSkgPSBleHBsb2RlKCc6Jyx0cmltKCR0aW1lc1skaV0pLDIpOwoJICB9CiAgICAgIH0KICAgIHJzb3J0KCR0bXApOwoKICAgICRmaSA9ICcnOwogICAgJGZ0ID0gJyc7CiAgICAvLyBmaW5kIHRoZSBjbG9zZXN0IGVudHJ5LgoKICAgICRkYiA9IGNtc21zKCktPkdldERiKCk7CiAgICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkdG1wKTsgJGkrKyApCiAgICAgIHsKCWlmKCAkdGltZSA+ICR0bXBbJGldICkgYnJlYWs7IC8vIG5vdGhpbmcgdG8gZG8uLgoKCgkkZHQgPSAkdG1wWyRpXSAtICR0aW1lOwoJaWYoICRmdCA9PSAnJyB8fCAkZHQgPCAoJGZ0IC0gJHRpbWUpICkKCSAgewoJICAgICRmaSA9ICRpOwoJICAgICRmdCA9ICR0bXBbJGldOwoJICB9CgogICAgICB9CiAgICBpZiggJGZ0ICE9ICcnICYmICRmaSAhPSAnJyAmJiAoJHRpbWUgLSAkZnQpIDwgNjAgKQogICAgICB7CgkvLyB3ZSBmb3VuZCBzb21ldGhpbmcgdGhhdCBjYW4gZXhlY3V0ZS4KCSRfU0VTU0lPTltnZXRfY2xhc3MoKS4nX3J1bnRpbWUnXSA9ICR0bXBbJGldOwoJcmV0dXJuIFRSVUU7CiAgICAgIH0KICAgIHJldHVybiBGQUxTRTsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gZXhlY3V0ZSgkdGltZSA9ICcnKQogIHsKICAgIGlmKCAhJHRpbWUgKSAkdGltZSA9IHRpbWUoKTsKICAgIGlmKCAhaXNzZXQoJF9TRVNTSU9OW2dldF9jbGFzcygpLidfcnVudGltZSddKSApIHJldHVybiBGQUxTRTsKICAgICR0aGVfdGltZSA9ICRfU0VTU0lPTltnZXRfY2xhc3MoKS4nX3J1bnRpbWUnXTsKICAgIHVuc2V0KCRfU0VTU0lPTltnZXRfY2xhc3MoKS4nX3J1bnRpbWUnXSk7CgogICAgLy8gbm93IGZpbmQgYWxsIHRoZSB1aWQncyB0aGF0IGFyZSBsb2dnZWQgaW4gYnV0IG5vdCBhY3RpdmUgc2luY2UgJHRoZV90aW1lCiAgICAkZmV1ID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdGcm9udEVuZFVzZXJzJyk7CiAgICAkZm9yZ2l2ZW5lc3MgPSAoaW50KSRmZXUtPkdldFByZWZlcmVuY2UoJ2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnKTsKICAgICRmb3JnaXZlbmVzcyA9IG1heCgwLCRmb3JnaXZlbmVzcykqNjA7CiAgICAkdGhlX3RpbWUgLT0gJGZvcmdpdmVuZXNzOwogICAgJHVpZHMgPSAkZmV1LT5HZXRMb2dnZWRJblVzZXJzKCR0aGVfdGltZSk7CiAgICBpZiggIWlzX2FycmF5KCR1aWRzKSB8fCBjb3VudCgkdWlkcykgPT0gMCApCiAgICAgIHsKCXJldHVybiBUUlVFOyAvLyBub3RoaW5nIHRvIGRvLgogICAgICB9CgogICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHVpZHMpOyAkaSsrICkKICAgICAgewoJJGZldS0+TG9nb3V0KCR1aWRzWyRpXSwnZm9yY2VkIGxvZ291dCcpOwogICAgICB9CiAgICAkZmV1LT5BdWRpdCgnJywkZmV1LT5HZXROYW1lKCksJ0ZvcmNlZCBsb2dvdXQgb2YgJy5jb3VudCgkdWlkcykuJyB1c2VycyBhdCAnLnN0cmZ0aW1lKCclSDolTScsJHRoZV90aW1lKSk7CiAgICByZXR1cm4gVFJVRTsKICB9CgoKICBwdWJsaWMgZnVuY3Rpb24gb25fc3VjY2VzcygkdGltZSA9ICcnKQogIHsKICAgICAgaWYoICEkdGltZSApICR0aW1lID0gdGltZSgpOwogICAgICAkZmV1ID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdGcm9udEVuZFVzZXJzJyk7CiAgICAgICRmZXUtPlNldFByZWZlcmVuY2UoJ2ZvcmNlbG9nb3V0X2xhc3RydW4nLCR0aW1lKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBvbl9mYWlsdXJlKCR0aW1lID0gJycpCiAgewogICAgaWYoICEkdGltZSApICR0aW1lID0gdGltZSgpOwogIH0KCn0gLy8gZW5kIG9mIGNsYXNzCgojCiMgRU9GCiMKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_content_attribute_helper.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBmZXVfY29udGVudF9hdHRyaWJ1dGVfaGVscGVyIGV4dGVuZHMgQ21zQ29udGVudEF0dHJpYnV0ZUhlbHBlckJhc2UKewogIHByaXZhdGUgc3RhdGljICRfaW5zdGFuY2U7CgoKICBwcml2YXRlIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkKICB7CiAgICAvLyBub3RoaW5nIGhlcmUuCiAgfQoKCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRfaW5zdGFuY2UoKQogIHsKICAgIGlmICghc2VsZjo6JF9pbnN0YW5jZSkKICAgICAgewogICAgICAgIHNlbGY6OiRfaW5zdGFuY2UgPSBuZXcgZmV1X2NvbnRlbnRfYXR0cmlidXRlX2hlbHBlcigpOwogICAgICB9CiAgICAKICAgIHJldHVybiBzZWxmOjokX2luc3RhbmNlOwogIH0KCgogIHByaXZhdGUgc3RhdGljIGZ1bmN0aW9uICZnZXRfZmV1KCkKICB7CiAgICAkZ0NtcyA9IGNtc21zKCk7CiAgICByZXR1cm4gJGdDbXMtPm1vZHVsZXNbJ0Zyb250RW5kVXNlcnMnXVsnb2JqZWN0J107CiAgfQoKCiAgcHVibGljIGZ1bmN0aW9uIGdldF9hdHRyaWJ1dGVfdGFicygpCiAgewogICAgJGZldSA9IHNlbGY6OmdldF9mZXUoKTsKICAgICRkYXRhID0gYXJyYXkoKTsKICAgICRkYXRhWyd2aXNpdG9ycyddID0gYXJyYXkoJ3Byb21wdCc9PiRmZXUtPkxhbmcoJ3Zpc2l0b3JzX3RhYicpLCdwZXJtaXNzaW9uJz0+JycpOwogICAgcmV0dXJuICRkYXRhOwogIH0KCgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfYXR0cmlidXRlX2lucHV0KCRhdHRyLCRjb250ZW50X29iaiwkYWRkaW5nKQogIHsKICAgICRnQ21zID0gY21zbXMoKTsKICAgICRmZXUgPSBzZWxmOjpnZXRfZmV1KCk7CgogICAgc3dpdGNoKCAkYXR0ci0+Z2V0X25hbWUoKSApCiAgICB7CiAgICBjYXNlICdmZXVfZ3JvdXBzJzoKICAgICAgJHRtcCA9IGFycmF5KCRmZXUtPkxhbmcoJ2FueV9sb2dnZWRfaW5fdXNlcicpPT4nLTEnKTsKICAgICAgJHQyID0gJGZldS0+R2V0R3JvdXBMaXN0KCk7CiAgICAgIGZvcmVhY2goICR0MiBhcyAkayA9PiAkdiApCgl7CgkgICR0bXBbJGtdID0gJHY7Cgl9CiAgICAgIGlmKCBpc19hcnJheSgkdG1wKSApCgl7CgkgICRzZWwgPSBhcnJheSgpOwoJICAkc2VsX3N0ciA9ICRjb250ZW50X29iai0+Z2V0X3Byb3BlcnR5X3ZhbHVlKCdmZXVfZ3JvdXBzJyk7CgkgIGlmKCAkc2VsX3N0ciApCgkgICAgewoJICAgICAgJHNlbCA9IGV4cGxvZGUoJywnLCRzZWxfc3RyKTsKCSAgICB9CgkgICRwcm9tcHQgPSAkZmV1LT5MYW5nKCdmZXVfZ3JvdXBzX3Byb21wdCcpOwoJICAkZmllbGQgPSAkZmV1LT5DcmVhdGVJbnB1dFNlbGVjdExpc3QoJycsJ2ZldV9ncm91cHNbXScsJHRtcCwkc2VsLAoJCQkJCSAgICAgICBtaW4oY291bnQoJHRtcCksNSkpOwoJICByZXR1cm4gYXJyYXkoJHByb21wdC4nOicsJGZpZWxkKTsKCX0KICAgICAgYnJlYWs7CgogICAgY2FzZSAnZmV1X3JlZGlyZWN0JzoKICAgICAgLy8gZ2V0IGEgbGlzdCBvZiBwYWdlcwogICAgICAkdmFsID0gJGNvbnRlbnRfb2JqLT5nZXRfcHJvcGVydHlfdmFsdWUoJ2ZldV9yZWRpcmVjdCcsLTEpOwogICAgICAkcHJvbXB0ID0gJGZldS0+TGFuZygnZmV1X3JlZGlyZWN0X3Byb21wdCcpOwogICAgICAkZmllbGQgPSBDbXNDb250ZW50T3BlcmF0aW9uczo6Q3JlYXRlSGllcmFyY2h5RHJvcGRvd24oJHZhbCwnJywnZmV1X3JlZGlyZWN0Jyk7CiAgICAgIHJldHVybiBhcnJheSgkcHJvbXB0Lic6JywkZmllbGQpOwogICAgICBicmVhazsKICAgIH0KICAgIAogIH0KCgogIGZ1bmN0aW9uIGdldF9hdHRyaWJ1dGVzX2Zyb21fZm9ybWRhdGEoJGNvbnRlbnRfb2JqLCRwYXJhbXMpCiAgewogICAgJHByb3BzID0gYXJyYXkoJ2ZldV9ncm91cHMnLCdmZXVfcmVkaXJlY3QnKTsKICAgIGZvcmVhY2goICRwcm9wcyBhcyAkb25lICkKICAgICAgewoJc3dpdGNoKCAkb25lICkKCSAgewoJICBjYXNlICdmZXVfZ3JvdXBzJzoKCSAgICBpZiggaXNzZXQoJHBhcmFtc1skb25lXSkgKQoJICAgICAgewoJCSRzdHIgPSBpbXBsb2RlKCcsJywkcGFyYW1zWyRvbmVdKTsKCQkkY29udGVudF9vYmotPnNldF9wcm9wZXJ0eV92YWx1ZSgkb25lLCRzdHIpOwoJICAgICAgfQoJICAgIGVsc2UKCSAgICAgIHsKCQkkY29udGVudF9vYmotPnNldF9wcm9wZXJ0eV92YWx1ZSgkb25lLCcnKTsKCSAgICAgIH0KCSAgICBicmVhazsKCSAgICAKCSAgZGVmYXVsdDoKCSAgICBpZiggaXNzZXQoJHBhcmFtc1skb25lXSkgKQoJICAgICAgewoJCSRjb250ZW50X29iai0+c2V0X3Byb3BlcnR5X3ZhbHVlKCRvbmUsJHBhcmFtc1skb25lXSk7CgkgICAgICB9CgkgIH0KICAgICAgfQogIH0KICAKCn0gLy8gZW5kIG9mIGNsYXNzCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_protected_logoutlink.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNSBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyA5OSUgb2YgdGhpcyBjbGFzcyAoYWxsIG9mIGl0PykgY291bGQgYmUgaW4gYSB0cmFpdCwgYXMgaXQgaXMgaW5pdGlhbGx5IGp1c3QgY29waWVkIGZyb20gdGhlIEZFVSBwcm90ZWN0ZWQgcGFnZSBjbGFzcy4KY2xhc3MgZmV1X3Byb3RlY3RlZF9sb2dvdXRsaW5rIGV4dGVuZHMgQ29udGVudEJhc2UKewogICAgcHVibGljIGZ1bmN0aW9uIElzQ29weWFibGUoKSB7IHJldHVybiBUUlVFOyB9CiAgICBwdWJsaWMgZnVuY3Rpb24gSXNWaWV3YWJsZSgpIHsgcmV0dXJuIEZBTFNFOyB9CglwdWJsaWMgZnVuY3Rpb24gSGFzU2VhcmNoYWJsZUNvbnRlbnQoKSB7IHJldHVybiBGQUxTRTsgfQoKICAgIGZ1bmN0aW9uIFNldFByb3BlcnRpZXMoKQogICAgewoJCXBhcmVudDo6U2V0UHJvcGVydGllcygpOwoJCSR0aGlzLT5SZW1vdmVQcm9wZXJ0eSgnc2VjdXJlJywwKTsKCQkkdGhpcy0+UmVtb3ZlUHJvcGVydHkoJ2NhY2hhYmxlJyxmYWxzZSk7CgkJJHRoaXMtPlJlbW92ZVByb3BlcnR5KCdzaG93aW5tZW51Jyx0cnVlKTsKCQkkdGhpcy0+UmVtb3ZlUHJvcGVydHkoJ3BhZ2VfdXJsJywnJyk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBfaXNBdXRob3JpemVkKCkKICAgIHsKICAgICAgICAvLyBkbyB3ZSBoYXZlIGFjY2VzcyB0byBpdD8KICAgICAgICAkZmV1ID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKTsKICAgICAgICBpZiggJGZldSApIHsKICAgICAgICAgICAgJHVpZCA9ICRmZXUtPkxvZ2dlZEluSWQoKTsKICAgICAgICAgICAgaWYoICR1aWQgKSByZXR1cm4gVFJVRTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBGcmllbmRseU5hbWUoKQogICAgewogICAgICAgIHJldHVybiBjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpLT5MYW5nKGdldF9jbGFzcygpKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0TW9kaWZpZWREYXRlKCkKICAgIHsKICAgICAgICAvLyBvbiBmcm9udGVuZCByZXF1ZXN0cyB0aGlzIHdpbGwgZm9yY2UgdGhlIHRlbXBsYXRlIHRvIGJlIHJlY29tcGlsZWQKICAgICAgICAvLyBhbmQgdGhlcmVmb3JlIGV2YWx1YXRpb24gdG8gYmUgZG9uZSBmb3IgZWFjaCByZXF1ZXN0LgogICAgICAgIGlmKCBjbXNtcygpLT5pc19mcm9udGVuZF9yZXF1ZXN0KCkgKSByZXR1cm4gdGltZSgpOwogICAgICAgIHJldHVybiBwYXJlbnQ6OkdldE1vZGlmaWVkRGF0ZSgpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBJc1Blcm1pdHRlZCgpCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5faXNBdXRob3JpemVkKCk7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIFNob3dJbk1lbnUoKQogICAgewogICAgICAgICRyZXMgPSBwYXJlbnQ6OlNob3dJbk1lbnUoKTsKICAgICAgICBpZiggISRyZXMgKSByZXR1cm4gJHJlczsKICAgICAgICAkcmVzID0gJHRoaXMtPl9pc0F1dGhvcml6ZWQoKTsKICAgICAgICByZXR1cm4gJHJlczsKICAgIH0KCiAgICBmdW5jdGlvbiBHZXRVUkwoJHJld3JpdGUgPSB0cnVlKQogICAgewogICAgICAgICRmZXUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpOwogICAgICAgICRwYWdlX2lkID0gQ29udGVudE9wZXJhdGlvbnM6OmdldF9pbnN0YW5jZSgpLT5HZXREZWZhdWx0Q29udGVudCgpOwogICAgICAgIHJldHVybiAkZmV1LT5jcmVhdGVfdXJsKCdjbnRudDAxJywnbG9nb3V0JywkcGFnZV9pZCk7CiAgICB9Cgp9IC8vIGVuZCBvZiBjbGFzcwo=]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_protected_page.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBmZXVfcHJvdGVjdGVkX3BhZ2UgZXh0ZW5kcyBDb250ZW50CnsKICAgIHByaXZhdGUgJF9kYXRhOwogICAgY29uc3QgRkVVX1BST1BOQU1FID0gJ19fZmV1X2RhdGVfXyc7IC8vIG9vcHM6IHR5cG8sIGNhbid0IGNoYW5nZSBpdCBub3cgdGhvdWdoLgogICAgY29uc3QgVEFCX0ZFVSA9ICdjY19mZXUnOwoKICAgIHByaXZhdGUgZnVuY3Rpb24gX2dldERhdGEoKQogICAgewogICAgICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9kYXRhKSApIHsKICAgICAgICAgICAgJHRtcCA9ICR0aGlzLT5HZXRQcm9wZXJ0eVZhbHVlKHNlbGY6OkZFVV9QUk9QTkFNRSk7CiAgICAgICAgICAgICR0aGlzLT5fZGF0YSA9IGFycmF5KCk7CiAgICAgICAgICAgIGlmKCAkdG1wICkgJHRoaXMtPl9kYXRhID0gdW5zZXJpYWxpemUoJHRtcCk7CiAgICAgICAgfQogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gX3NldERhdGEoKQogICAgewogICAgICAgIGlmKCBpc19hcnJheSgkdGhpcy0+X2RhdGEpICYmIGNvdW50KCR0aGlzLT5fZGF0YSkgKSB7CiAgICAgICAgICAgICR0aGlzLT5TZXRQcm9wZXJ0eVZhbHVlKHNlbGY6OkZFVV9QUk9QTkFNRSxzZXJpYWxpemUoJHRoaXMtPl9kYXRhKSk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkdGhpcy0+U2V0UHJvcGVydHlWYWx1ZShzZWxmOjpGRVVfUFJPUE5BTUUsJycpOwogICAgICAgIH0KICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIF9pc0F1dGhvcml6ZWQoKQogICAgewogICAgICAgIC8vIGRvIHdlIGhhdmUgYWNjZXNzIHRvIGl0PwogICAgICAgICR0aGlzLT5fZ2V0RGF0YSgpOwoKICAgICAgICAkZmV1ID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKTsKICAgICAgICBpZiggJGZldSApIHsKICAgICAgICAgICAgJHVpZCA9ICRmZXUtPkxvZ2dlZEluSWQoKTsKICAgICAgICAgICAgaWYoICR1aWQgKSB7CiAgICAgICAgICAgICAgICBpZiggIWlzc2V0KCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10pIHx8IGNvdW50KCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10pID09IDAgKSB7CiAgICAgICAgICAgICAgICAgICAgLy8gbm8gbWVtYmVyIGdyb3VwcyBzZWxlY3RlZCwgYnV0IHN0aWxsIGxvZ2dlZCBpbiwgd2UgY2FuIGRpc3BsYXkgdGhpcy4KICAgICAgICAgICAgICAgICAgICByZXR1cm4gVFJVRTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgIC8vIGdldCBtZW1iZXIgZ3JvdXBzIGFuZCBkbyBhIGNyb3NzIHJlZmVyZW5jZS4KICAgICAgICAgICAgICAgICAgICAkZ3JvdXBzID0gJGZldS0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoJHVpZCk7CiAgICAgICAgICAgICAgICAgICAgaWYoICFpc19hcnJheSgkZ3JvdXBzKSB8fCBjb3VudCgkZ3JvdXBzKSA9PSAwICkgcmV0dXJuIEZBTFNFOwogICAgICAgICAgICAgICAgICAgICRtZW1iZXJncm91cHMgPSBjZ2VfYXJyYXk6OmV4dHJhY3RfZmllbGQoJGdyb3VwcywnZ3JvdXBpZCcpOwogICAgICAgICAgICAgICAgICAgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10pOyAkaSsrICkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiggaW5fYXJyYXkoJHRoaXMtPl9kYXRhWydncm91cHMnXVskaV0sJG1lbWJlcmdyb3VwcykgKSByZXR1cm4gVFJVRTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBGcmllbmRseU5hbWUoKQogICAgewogICAgICAgIHJldHVybiBjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpLT5MYW5nKGdldF9jbGFzcygpKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0TW9kaWZpZWREYXRlKCkKICAgIHsKICAgICAgICAvLyBvbiBmcm9udGVuZCByZXF1ZXN0cyB0aGlzIHdpbGwgZm9yY2UgdGhlIHRlbXBsYXRlIHRvIGJlIHJlY29tcGlsZWQKICAgICAgICAvLyBhbmQgdGhlcmVmb3JlIGV2YWx1YXRpb24gdG8gYmUgZG9uZSBmb3IgZWFjaCByZXF1ZXN0LgogICAgICAgIGlmKCBjbXNtcygpLT5pc19mcm9udGVuZF9yZXF1ZXN0KCkgKSByZXR1cm4gdGltZSgpOwogICAgICAgIHJldHVybiBwYXJlbnQ6OkdldE1vZGlmaWVkRGF0ZSgpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBTZXRQcm9wZXJ0aWVzKCkKICAgIHsKICAgICAgICBwYXJlbnQ6OlNldFByb3BlcnRpZXMoKTsKICAgICAgICAkdGhpcy0+UmVtb3ZlUHJvcGVydHkoJ2NhY2hhYmxlJyxmYWxzZSk7CiAgICAgICAgaWYoIHZlcnNpb25fY29tcGFyZShDTVNfVkVSU0lPTiwnMS45OCcpIDwgMCApIHsKICAgICAgICAgICAgJHRoaXMtPkFkZENvbnRlbnRQcm9wZXJ0eSgnX19mZXVfZ3JvdXBzX18nLDEpOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJHRoaXMtPkFkZFByb3BlcnR5KCdfX2ZldV9ncm91cHNfXycsMSxzZWxmOjpUQUJfRkVVKTsKICAgICAgICB9CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIElzUGVybWl0dGVkKCkKICAgIHsKICAgICAgICAkciA9ICR0aGlzLT5faXNBdXRob3JpemVkKCk7CiAgICAgICAgaWYoICEkciApIHsKICAgICAgICAgICAgJGZldSA9IGNtc191dGlsczo6Z2V0X21vZHVsZShNT0RfRlJPTlRFTkRVU0VSUyk7CiAgICAgICAgICAgIGlmKCBcQ21zQXBwOjpnZXRfaW5zdGFuY2UoKS0+aXNfZnJvbnRlbmRfcmVxdWVzdCgpICYmICRmZXUgKSAkZmV1LT5TZXRQb3N0TG9naW5VcmwoXGNnZV91cmw6OmN1cnJlbnRfdXJsKCkpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gJHI7CiAgICB9CgogICAgLy8gQ01TTVMgMS4xMS54IGFuZCBwcmV2aW91cyBvbmx5CiAgICBwdWJsaWMgZnVuY3Rpb24gVGFiTmFtZXMoKQogICAgewogICAgICAgICRyZXMgPSBwYXJlbnQ6OlRhYk5hbWVzKCk7CiAgICAgICAgaWYoIGNoZWNrX3Blcm1pc3Npb24oZ2V0X3VzZXJpZCgpLCdNYW5hZ2UgQWxsIENvbnRlbnQnKSApIHsKICAgICAgICAgICAgJHJlc1tdID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKS0+TGFuZygnZnJvbnRlbmRfYWNjZXNzJyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkcmVzOwogICAgfQoKICAgIC8vIENNU01TIDEuMTEueCBhbmQgcHJldmlvdXMgb25seQogICAgcHVibGljIGZ1bmN0aW9uIEVkaXRBc0FycmF5KCRhZGRpbmcgPSBmYWxzZSwgJHRhYiA9IDAsICRzaG93YWRtaW4gPSBmYWxzZSkKICAgIHsKICAgICAgICAkbmFtZXMgPSAkdGhpcy0+VGFiTmFtZXMoKTsKICAgICAgICAkc3RyID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKS0+TGFuZygnZnJvbnRlbmRfYWNjZXNzJyk7CiAgICAgICAgaWYoICFpc3NldCgkbmFtZXNbJHRhYl0pIHx8ICRuYW1lc1skdGFiXSAhPSAkc3RyICkgcmV0dXJuIHBhcmVudDo6RWRpdEFzQXJyYXkoJGFkZGluZywkdGFiLCRzaG93YWRtaW4pOwoKICAgICAgICAkcmV0ID0gYXJyYXkoKTsKICAgICAgICAvLyB0aGUgcGVybWlzc2lvbnMgdGFiLgogICAgICAgICRmZXUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKICAgICAgICAkZ3JvdXBsaXN0ID0gYXJyYXlfZmxpcCgkZmV1LT5HZXRHcm91cExpc3QoKSk7CgogICAgICAgICR0aGlzLT5fZ2V0RGF0YSgpOwogICAgICAgIGlmKCAhaXNzZXQoJHRoaXMtPl9kYXRhWydncm91cHMnXSkgKSB7CiAgICAgICAgICAgICR0bXAgPSBleHBsb2RlKCcsJywkZmV1LT5HZXRQcmVmZXJlbmNlKCdwYWdldHlwZV9ncm91cHMnKSk7CiAgICAgICAgICAgIGlmKCBpc19hcnJheSgkdG1wKSAmJiBjb3VudCgkdG1wKSApICR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10gPSAkdG1wOwogICAgICAgIH0KICAgICAgICAkc2l6ZSA9IG1pbihjb3VudCgkZ3JvdXBsaXN0KSwxMCk7CiAgICAgICAgJHRtcCA9IGFycmF5KCRmZXUtPkxhbmcoJ2dyb3VwcycpLic6Jyk7CiAgICAgICAgJG9wdCA9ICc8c2VsZWN0IG5hbWU9Il9fZmV1X2dyb3Vwc19fW10iIG11bHRpcGxlPSJtdWx0aXBsZSIgc2l6ZT0iJy4kc2l6ZS4nIj4nOwogICAgICAgIGZvcmVhY2goICRncm91cGxpc3QgYXMgJGdpZCA9PiAkZ25hbWUgKSB7CiAgICAgICAgICAgICRzZWxlY3RlZCA9ICcnOwogICAgICAgICAgICBpZiggaXNzZXQoJHRoaXMtPl9kYXRhWydncm91cHMnXSkgJiYgaW5fYXJyYXkoJGdpZCwkdGhpcy0+X2RhdGFbJ2dyb3VwcyddKSApICRzZWxlY3RlZD0nc2VsZWN0ZWQ9InNlbGVjdGVkIiAnOwogICAgICAgICAgICAkb3B0IC49ICc8b3B0aW9uICcuJHNlbGVjdGVkLid2YWx1ZT0iJy4kZ2lkLiciPicuJGduYW1lLic8L29wdGlvbj4nOwogICAgICAgIH0KICAgICAgICAkb3B0IC49ICc8L3NlbGVjdD48YnIvPicuJGZldS0+TGFuZygnaW5mb19jb250ZW50cGFnZV9ncm91cGxpc3QnKTsKICAgICAgICAkdG1wW10gPSAkb3B0OwogICAgICAgICRyZXRbXSA9ICR0bXA7CgogICAgICAgIHJldHVybiAkcmV0OwogICAgfQoKICAgIC8vIENNU01TIDIuMAogICAgcHVibGljIGZ1bmN0aW9uIEdldFRhYk5hbWVzKCkKICAgIHsKICAgICAgICAkb3V0ID0gcGFyZW50OjpHZXRUYWJOYW1lcygpOwogICAgICAgIGlmKCAhY2hlY2tfcGVybWlzc2lvbihnZXRfdXNlcmlkKCksJ01hbmFnZSBBbGwgQ29udGVudCcpICkgewogICAgICAgICAgICBpZiggaXNzZXQoJG91dFtzZWxmOjpUQUJfRkVVXSkgKSB1bnNldCgkb3V0W3NlbGY6OlRBQl9GRVVdKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIGlmKCBpc3NldCgkb3V0W3NlbGY6OlRBQl9GRVVdKSApICRvdXRbc2VsZjo6VEFCX0ZFVV0gPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpLT5MYW5nKCdmcm9udGVuZF9hY2Nlc3MnKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuICRvdXQ7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIEZpbGxQYXJhbXMoJHBhcmFtcywkZWRpdGluZyA9IGZhbHNlKQogICAgewogICAgICAgICR0aGlzLT5fZ2V0RGF0YSgpOwogICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydfX2ZldV9ncm91cHNfXyddKSApIHsKICAgICAgICAgICAgJHRoaXMtPl9kYXRhWydncm91cHMnXSA9ICRwYXJhbXNbJ19fZmV1X2dyb3Vwc19fJ107CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYoIGlzc2V0KCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10pICkgewogICAgICAgICAgICB1bnNldCgkdGhpcy0+X2RhdGFbJ2dyb3VwcyddKTsKICAgICAgICB9CiAgICAgICAgcGFyZW50OjpGaWxsUGFyYW1zKCRwYXJhbXMsJGVkaXRpbmcpOwogICAgICAgICR0aGlzLT5TZXRDYWNoYWJsZShmYWxzZSk7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIFNob3dJbk1lbnUoKQogICAgewogICAgICAgICRyZXMgPSBwYXJlbnQ6OlNob3dJbk1lbnUoKTsKICAgICAgICBpZiggISRyZXMgKSByZXR1cm4gJHJlczsKICAgICAgICByZXR1cm4gJHRoaXMtPl9pc0F1dGhvcml6ZWQoKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gU2F2ZSgpCiAgICB7CiAgICAgICAgJHRoaXMtPl9zZXREYXRhKCk7CiAgICAgICAgcmV0dXJuIHBhcmVudDo6U2F2ZSgpOwogICAgfQoKICAgIC8vIHBvc3NpYmxlIGZvciAxLjExLngsIHJlcXVpcmVkIGZvciBDTVNNUyAyLjAKICAgIHByb3RlY3RlZCBmdW5jdGlvbiBkaXNwbGF5X3NpbmdsZV9lbGVtZW50KCRvbmUsJGFkZGluZykKICAgIHsKICAgICAgICAkZmV1ID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKTsKCiAgICAgICAgc3dpdGNoKCAkb25lICkgewogICAgICAgIGNhc2UgJ19fZmV1X2dyb3Vwc19fJzoKICAgICAgICAgICAgJHJldCA9IGFycmF5KCk7CiAgICAgICAgICAgIC8vIHRoZSBwZXJtaXNzaW9ucyB0YWIuCiAgICAgICAgICAgICRncm91cGxpc3QgPSBhcnJheV9mbGlwKCRmZXUtPkdldEdyb3VwTGlzdCgpKTsKCiAgICAgICAgICAgICR0aGlzLT5fZ2V0RGF0YSgpOwogICAgICAgICAgICBpZiggIWlzc2V0KCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10pICkgewogICAgICAgICAgICAgICAgJHRtcCA9IGV4cGxvZGUoJywnLCRmZXUtPkdldFByZWZlcmVuY2UoJ3BhZ2V0eXBlX2dyb3VwcycpKTsKICAgICAgICAgICAgICAgIGlmKCBpc19hcnJheSgkdG1wKSAmJiBjb3VudCgkdG1wKSApICR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10gPSAkdG1wOwogICAgICAgICAgICB9CiAgICAgICAgICAgICRzaXplID0gbWluKGNvdW50KCRncm91cGxpc3QpLDEwKTsKICAgICAgICAgICAgJHRtcCA9IGFycmF5KCRmZXUtPkxhbmcoJ2dyb3VwcycpLic6Jyk7CiAgICAgICAgICAgICRvcHQgPSAnPHNlbGVjdCBuYW1lPSJfX2ZldV9ncm91cHNfX1tdIiBtdWx0aXBsZT0ibXVsdGlwbGUiIHNpemU9IicuJHNpemUuJyI+JzsKICAgICAgICAgICAgZm9yZWFjaCggJGdyb3VwbGlzdCBhcyAkZ2lkID0+ICRnbmFtZSApIHsKICAgICAgICAgICAgICAgICRzZWxlY3RlZCA9ICcnOwogICAgICAgICAgICAgICAgaWYoIGlzc2V0KCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10pICYmIGluX2FycmF5KCRnaWQsJHRoaXMtPl9kYXRhWydncm91cHMnXSkgKSAkc2VsZWN0ZWQ9J3NlbGVjdGVkPSJzZWxlY3RlZCIgJzsKICAgICAgICAgICAgICAgICRvcHQgLj0gJzxvcHRpb24gJy4kc2VsZWN0ZWQuJ3ZhbHVlPSInLiRnaWQuJyI+Jy4kZ25hbWUuJzwvb3B0aW9uPic7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJG9wdCAuPSAnPC9zZWxlY3Q+PGJyLz4nLiRmZXUtPkxhbmcoJ2luZm9fY29udGVudHBhZ2VfZ3JvdXBsaXN0Jyk7CiAgICAgICAgICAgICR0bXBbXSA9ICRvcHQ7CiAgICAgICAgICAgIHJldHVybiAkdG1wOwoKICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICByZXR1cm4gcGFyZW50OjpkaXNwbGF5X3NpbmdsZV9lbGVtZW50KCRvbmUsJGFkZGluZyk7CiAgICAgICAgfQogICAgfQoKfSAvLyBlbmQgb2YgY2xhc3MKCiMKIyBFT0YKIwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_protected_sectionhead.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNSBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovLyA5OSUgb2YgdGhpcyBjbGFzcyAoYWxsIG9mIGl0PykgY291bGQgYmUgaW4gYSB0cmFpdCwgYXMgaXQgaXMgaW5pdGlhbGx5IGp1c3QgY29waWVkIGZyb20gdGhlIEZFVSBwcm90ZWN0ZWQgcGFnZSBjbGFzcy4KY2xhc3MgZmV1X3Byb3RlY3RlZF9zZWN0aW9uaGVhZCBleHRlbmRzIFNlY3Rpb25IZWFkZXIKewogICAgcHJpdmF0ZSAkX2RhdGE7CiAgICBjb25zdCBGRVVfUFJPUE5BTUUgPSAnX19mZXVfZGF0ZV9fJzsgLy8gb29wczogdHlwbywgY2FuJ3QgY2hhbmdlIGl0IG5vdyB0aG91Z2guCiAgICBjb25zdCBUQUJfRkVVID0gJ2NjX2ZldSc7CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBfZ2V0RGF0YSgpCiAgICB7CiAgICAgICAgaWYoICFpc19hcnJheSgkdGhpcy0+X2RhdGEpICkgewogICAgICAgICAgICAkdG1wID0gJHRoaXMtPkdldFByb3BlcnR5VmFsdWUoc2VsZjo6RkVVX1BST1BOQU1FKTsKICAgICAgICAgICAgJHRoaXMtPl9kYXRhID0gYXJyYXkoKTsKICAgICAgICAgICAgaWYoICR0bXAgKSAkdGhpcy0+X2RhdGEgPSB1bnNlcmlhbGl6ZSgkdG1wKTsKICAgICAgICB9CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBfc2V0RGF0YSgpCiAgICB7CiAgICAgICAgaWYoIGlzX2FycmF5KCR0aGlzLT5fZGF0YSkgJiYgY291bnQoJHRoaXMtPl9kYXRhKSApIHsKICAgICAgICAgICAgJHRoaXMtPlNldFByb3BlcnR5VmFsdWUoc2VsZjo6RkVVX1BST1BOQU1FLHNlcmlhbGl6ZSgkdGhpcy0+X2RhdGEpKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICR0aGlzLT5TZXRQcm9wZXJ0eVZhbHVlKHNlbGY6OkZFVV9QUk9QTkFNRSwnJyk7CiAgICAgICAgfQogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gX2lzQXV0aG9yaXplZCgpCiAgICB7CiAgICAgICAgLy8gZG8gd2UgaGF2ZSBhY2Nlc3MgdG8gaXQ/CiAgICAgICAgJHRoaXMtPl9nZXREYXRhKCk7CgogICAgICAgICRmZXUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpOwogICAgICAgIGlmKCAkZmV1ICkgewogICAgICAgICAgICAkdWlkID0gJGZldS0+TG9nZ2VkSW5JZCgpOwogICAgICAgICAgICBpZiggJHVpZCApIHsKICAgICAgICAgICAgICAgIGlmKCAhaXNzZXQoJHRoaXMtPl9kYXRhWydncm91cHMnXSkgfHwgY291bnQoJHRoaXMtPl9kYXRhWydncm91cHMnXSkgPT0gMCApIHsKICAgICAgICAgICAgICAgICAgICAvLyBubyBtZW1iZXIgZ3JvdXBzIHNlbGVjdGVkLCBidXQgc3RpbGwgbG9nZ2VkIGluLCB3ZSBjYW4gZGlzcGxheSB0aGlzLgogICAgICAgICAgICAgICAgICAgIHJldHVybiBUUlVFOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgLy8gZ2V0IG1lbWJlciBncm91cHMgYW5kIGRvIGEgY3Jvc3MgcmVmZXJlbmNlLgogICAgICAgICAgICAgICAgICAgICRncm91cHMgPSAkZmV1LT5HZXRNZW1iZXJHcm91cHNBcnJheSgkdWlkKTsKICAgICAgICAgICAgICAgICAgICBpZiggIWlzX2FycmF5KCRncm91cHMpIHx8IGNvdW50KCRncm91cHMpID09IDAgKSByZXR1cm4gRkFMU0U7CiAgICAgICAgICAgICAgICAgICAgJG1lbWJlcmdyb3VwcyA9IGNnZV9hcnJheTo6ZXh0cmFjdF9maWVsZCgkZ3JvdXBzLCdncm91cGlkJyk7CiAgICAgICAgICAgICAgICAgICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHRoaXMtPl9kYXRhWydncm91cHMnXSk7ICRpKysgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKCBpbl9hcnJheSgkdGhpcy0+X2RhdGFbJ2dyb3VwcyddWyRpXSwkbWVtYmVyZ3JvdXBzKSApIHJldHVybiBUUlVFOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gRkFMU0U7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIEZyaWVuZGx5TmFtZSgpCiAgICB7CiAgICAgICAgcmV0dXJuIGNtc191dGlsczo6Z2V0X21vZHVsZShNT0RfRlJPTlRFTkRVU0VSUyktPkxhbmcoZ2V0X2NsYXNzKCkpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRNb2RpZmllZERhdGUoKQogICAgewogICAgICAgIC8vIG9uIGZyb250ZW5kIHJlcXVlc3RzIHRoaXMgd2lsbCBmb3JjZSB0aGUgdGVtcGxhdGUgdG8gYmUgcmVjb21waWxlZAogICAgICAgIC8vIGFuZCB0aGVyZWZvcmUgZXZhbHVhdGlvbiB0byBiZSBkb25lIGZvciBlYWNoIHJlcXVlc3QuCiAgICAgICAgaWYoIGNtc21zKCktPmlzX2Zyb250ZW5kX3JlcXVlc3QoKSApIHJldHVybiB0aW1lKCk7CiAgICAgICAgcmV0dXJuIHBhcmVudDo6R2V0TW9kaWZpZWREYXRlKCk7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIFNldFByb3BlcnRpZXMoKQogICAgewogICAgICAgIHBhcmVudDo6U2V0UHJvcGVydGllcygpOwogICAgICAgICR0aGlzLT5SZW1vdmVQcm9wZXJ0eSgnY2FjaGFibGUnLGZhbHNlKTsKICAgICAgICBpZiggdmVyc2lvbl9jb21wYXJlKENNU19WRVJTSU9OLCcxLjk4JykgPCAwICkgewogICAgICAgICAgICAkdGhpcy0+QWRkQ29udGVudFByb3BlcnR5KCdfX2ZldV9ncm91cHNfXycsMSk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkdGhpcy0+QWRkUHJvcGVydHkoJ19fZmV1X2dyb3Vwc19fJywxLHNlbGY6OlRBQl9GRVUpOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gSXNQZXJtaXR0ZWQoKQogICAgewogICAgICAgIHJldHVybiAkdGhpcy0+X2lzQXV0aG9yaXplZCgpOwogICAgfQoKICAgIC8vIENNU01TIDEuMTEueCBhbmQgcHJldmlvdXMgb25seQogICAgcHVibGljIGZ1bmN0aW9uIFRhYk5hbWVzKCkKICAgIHsKICAgICAgICAkcmVzID0gcGFyZW50OjpUYWJOYW1lcygpOwogICAgICAgIGlmKCBjaGVja19wZXJtaXNzaW9uKGdldF91c2VyaWQoKSwnTWFuYWdlIEFsbCBDb250ZW50JykgKSB7CiAgICAgICAgICAgICRyZXNbXSA9IGNtc191dGlsczo6Z2V0X21vZHVsZShNT0RfRlJPTlRFTkRVU0VSUyktPkxhbmcoJ2Zyb250ZW5kX2FjY2VzcycpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gJHJlczsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gRWRpdEFzQXJyYXkoJGFkZGluZyA9IGZhbHNlLCAkdGFiID0gMCwgJHNob3dhZG1pbiA9IGZhbHNlKQogICAgewogICAgICAgICRuYW1lcyA9ICR0aGlzLT5UYWJOYW1lcygpOwogICAgICAgICRzdHIgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpLT5MYW5nKCdmcm9udGVuZF9hY2Nlc3MnKTsKICAgICAgICBpZiggIWlzc2V0KCRuYW1lc1skdGFiXSkgfHwgJG5hbWVzWyR0YWJdICE9ICRzdHIgKSByZXR1cm4gcGFyZW50OjpFZGl0QXNBcnJheSgkYWRkaW5nLCR0YWIsJHNob3dhZG1pbik7CgogICAgICAgICRyZXQgPSBhcnJheSgpOwogICAgICAgIC8vIHRoZSBwZXJtaXNzaW9ucyB0YWIuCiAgICAgICAgJGZldSA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwogICAgICAgICRncm91cGxpc3QgPSBhcnJheV9mbGlwKCRmZXUtPkdldEdyb3VwTGlzdCgpKTsKCiAgICAgICAgJHRoaXMtPl9nZXREYXRhKCk7CiAgICAgICAgaWYoICFpc3NldCgkdGhpcy0+X2RhdGFbJ2dyb3VwcyddKSApIHsKICAgICAgICAgICAgJHRtcCA9IGV4cGxvZGUoJywnLCRmZXUtPkdldFByZWZlcmVuY2UoJ3BhZ2V0eXBlX2dyb3VwcycpKTsKICAgICAgICAgICAgaWYoIGlzX2FycmF5KCR0bXApICYmIGNvdW50KCR0bXApICkgJHRoaXMtPl9kYXRhWydncm91cHMnXSA9ICR0bXA7CiAgICAgICAgfQogICAgICAgICRzaXplID0gbWluKGNvdW50KCRncm91cGxpc3QpLDEwKTsKICAgICAgICAkdG1wID0gYXJyYXkoJGZldS0+TGFuZygnZ3JvdXBzJykuJzonKTsKICAgICAgICAkb3B0ID0gJzxzZWxlY3QgbmFtZT0iX19mZXVfZ3JvdXBzX19bXSIgbXVsdGlwbGU9Im11bHRpcGxlIiBzaXplPSInLiRzaXplLiciPic7CiAgICAgICAgZm9yZWFjaCggJGdyb3VwbGlzdCBhcyAkZ2lkID0+ICRnbmFtZSApIHsKICAgICAgICAgICAgJHNlbGVjdGVkID0gJyc7CiAgICAgICAgICAgIGlmKCBpc3NldCgkdGhpcy0+X2RhdGFbJ2dyb3VwcyddKSAmJiBpbl9hcnJheSgkZ2lkLCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10pICkgJHNlbGVjdGVkPSdzZWxlY3RlZD0ic2VsZWN0ZWQiICc7CiAgICAgICAgICAgICRvcHQgLj0gJzxvcHRpb24gJy4kc2VsZWN0ZWQuJ3ZhbHVlPSInLiRnaWQuJyI+Jy4kZ25hbWUuJzwvb3B0aW9uPic7CiAgICAgICAgfQogICAgICAgICRvcHQgLj0gJzwvc2VsZWN0Pjxici8+Jy4kZmV1LT5MYW5nKCdpbmZvX2NvbnRlbnRwYWdlX2dyb3VwbGlzdCcpOwogICAgICAgICR0bXBbXSA9ICRvcHQ7CiAgICAgICAgJHJldFtdID0gJHRtcDsKCiAgICAgICAgcmV0dXJuICRyZXQ7CiAgICB9CgogICAgLy8gQ01TTVMgMi4wCiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0VGFiTmFtZXMoKQogICAgewogICAgICAgICRvdXQgPSBwYXJlbnQ6OkdldFRhYk5hbWVzKCk7CiAgICAgICAgaWYoICFjaGVja19wZXJtaXNzaW9uKGdldF91c2VyaWQoKSwnTWFuYWdlIEFsbCBDb250ZW50JykgKSB7CiAgICAgICAgICAgIGlmKCBpc3NldCgkb3V0W3NlbGY6OlRBQl9GRVVdKSApIHVuc2V0KCRvdXRbc2VsZjo6VEFCX0ZFVV0pOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgaWYoIGlzc2V0KCRvdXRbc2VsZjo6VEFCX0ZFVV0pICkgJG91dFtzZWxmOjpUQUJfRkVVXSA9IGNtc191dGlsczo6Z2V0X21vZHVsZShNT0RfRlJPTlRFTkRVU0VSUyktPkxhbmcoJ2Zyb250ZW5kX2FjY2VzcycpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gJG91dDsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gRmlsbFBhcmFtcygkcGFyYW1zLCRlZGl0aW5nID0gZmFsc2UpCiAgICB7CiAgICAgICAgJHRoaXMtPl9nZXREYXRhKCk7CiAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ19fZmV1X2dyb3Vwc19fJ10pICkgewogICAgICAgICAgICAkdGhpcy0+X2RhdGFbJ2dyb3VwcyddID0gJHBhcmFtc1snX19mZXVfZ3JvdXBzX18nXTsKICAgICAgICB9CiAgICAgICAgZWxzZSBpZiggaXNzZXQoJHRoaXMtPl9kYXRhWydncm91cHMnXSkgKSB7CiAgICAgICAgICAgIHVuc2V0KCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10pOwogICAgICAgIH0KICAgICAgICBwYXJlbnQ6OkZpbGxQYXJhbXMoJHBhcmFtcywkZWRpdGluZyk7CiAgICAgICAgJHRoaXMtPlNldENhY2hhYmxlKGZhbHNlKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gU2hvd0luTWVudSgpCiAgICB7CiAgICAgICAgJHJlcyA9IHBhcmVudDo6U2hvd0luTWVudSgpOwogICAgICAgIGlmKCAhJHJlcyApIHJldHVybiAkcmVzOwogICAgICAgIHJldHVybiAkdGhpcy0+X2lzQXV0aG9yaXplZCgpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBTYXZlKCkKICAgIHsKICAgICAgICAkdGhpcy0+X3NldERhdGEoKTsKICAgICAgICByZXR1cm4gcGFyZW50OjpTYXZlKCk7CiAgICB9CgogICAgLy8gcG9zc2libGUgZm9yIDEuMTEueCwgcmVxdWlyZWQgZm9yIENNU01TIDIuMAogICAgcHJvdGVjdGVkIGZ1bmN0aW9uIGRpc3BsYXlfc2luZ2xlX2VsZW1lbnQoJG9uZSwkYWRkaW5nKQogICAgewogICAgICAgICRmZXUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpOwoKICAgICAgICBzd2l0Y2goICRvbmUgKSB7CiAgICAgICAgY2FzZSAnX19mZXVfZ3JvdXBzX18nOgogICAgICAgICAgICBpZiggdmVyc2lvbl9jb21wYXJlKENNU19WRVJTSU9OLCcxLjk4JykgPCAwICkgcmV0dXJuOwoKICAgICAgICAgICAgJHJldCA9IGFycmF5KCk7CiAgICAgICAgICAgIC8vIHRoZSBwZXJtaXNzaW9ucyB0YWIuCiAgICAgICAgICAgICRncm91cGxpc3QgPSBhcnJheV9mbGlwKCRmZXUtPkdldEdyb3VwTGlzdCgpKTsKCiAgICAgICAgICAgICR0aGlzLT5fZ2V0RGF0YSgpOwogICAgICAgICAgICBpZiggIWlzc2V0KCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10pICkgewogICAgICAgICAgICAgICAgJHRtcCA9IGV4cGxvZGUoJywnLCRmZXUtPkdldFByZWZlcmVuY2UoJ3BhZ2V0eXBlX2dyb3VwcycpKTsKICAgICAgICAgICAgICAgIGlmKCBpc19hcnJheSgkdG1wKSAmJiBjb3VudCgkdG1wKSApICR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10gPSAkdG1wOwogICAgICAgICAgICB9CiAgICAgICAgICAgICRzaXplID0gbWluKGNvdW50KCRncm91cGxpc3QpLDEwKTsKICAgICAgICAgICAgJHRtcCA9IGFycmF5KCRmZXUtPkxhbmcoJ2dyb3VwcycpLic6Jyk7CiAgICAgICAgICAgICRvcHQgPSAnPHNlbGVjdCBuYW1lPSJfX2ZldV9ncm91cHNfX1tdIiBtdWx0aXBsZT0ibXVsdGlwbGUiIHNpemU9IicuJHNpemUuJyI+JzsKICAgICAgICAgICAgZm9yZWFjaCggJGdyb3VwbGlzdCBhcyAkZ2lkID0+ICRnbmFtZSApIHsKICAgICAgICAgICAgICAgICRzZWxlY3RlZCA9ICcnOwogICAgICAgICAgICAgICAgaWYoIGlzc2V0KCR0aGlzLT5fZGF0YVsnZ3JvdXBzJ10pICYmIGluX2FycmF5KCRnaWQsJHRoaXMtPl9kYXRhWydncm91cHMnXSkgKSAkc2VsZWN0ZWQ9J3NlbGVjdGVkPSJzZWxlY3RlZCIgJzsKICAgICAgICAgICAgICAgICRvcHQgLj0gJzxvcHRpb24gJy4kc2VsZWN0ZWQuJ3ZhbHVlPSInLiRnaWQuJyI+Jy4kZ25hbWUuJzwvb3B0aW9uPic7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJG9wdCAuPSAnPC9zZWxlY3Q+PGJyLz4nLiRmZXUtPkxhbmcoJ2luZm9fY29udGVudHBhZ2VfZ3JvdXBsaXN0Jyk7CiAgICAgICAgICAgICR0bXBbXSA9ICRvcHQ7CiAgICAgICAgICAgIHJldHVybiAkdG1wOwoKICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICByZXR1cm4gcGFyZW50OjpkaXNwbGF5X3NpbmdsZV9lbGVtZW50KCRvbmUsJGFkZGluZyk7CiAgICAgICAgfQogICAgfQoKfSAvLyBlbmQgb2YgY2xhc3MKCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_pure_consumer.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBmZXVfcHVyZV9jb25zdW1lciBpbXBsZW1lbnRzIGZldV9hdXRoX2NvbnN1bWVyCnsKICBwdWJsaWMgZnVuY3Rpb24gaXNfYXV0aGVudGljYXRlZCgpIHsKICAgIHJldHVybiBGQUxTRTsKICB9CgogIGZpbmFsIHB1YmxpYyBmdW5jdGlvbiBoYXNfY2FwYWJpbGl0eSgpCiAgewogICAgJGZsYWcgPSBmdW5jX2dldF9hcmdzKCk7CiAgICBpZiggIWlzX2FycmF5KCRmbGFnKSApICRmbGFnID0gYXJyYXkoJGZsYWcpOwogICAgZm9yZWFjaCggJGZsYWcgYXMgJG9uZSApIHsKICAgICAgaWYoIGluX2FycmF5KCRvbmUsJHRoaXMtPmdldF9jYXBhYmlsaXRpZXMoKSkgKSByZXR1cm4gVFJVRTsKICAgIH0KICAgIHJldHVybiBGQUxTRTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfY2FwYWJpbGl0aWVzKCkKICB7CiAgICByZXR1cm4gYXJyYXkoKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfbG9naW5fZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpCiAgewogICAgcmV0dXJuOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9sb2dvdXRfZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpCiAgewogICAgcmV0dXJuOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9jaGFuZ2VzZXR0aW5nc19kaXNwbGF5KCRpZCwkcmV0dXJuaWQsJHBhcmFtcykKICB7CiAgICByZXR1cm47CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3VzZXJfaW5mbygpCiAgewogICAgcmV0dXJuOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9jb25uZWN0aW5nX3Byb3BlcnR5X25hbWUoKQogIHsKICAgIHJldHVybjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdW5pcXVlX2lkZW50aWZpZXIoKQogIHsKICAgIHJldHVybjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZ3JvdXBfbGlzdCgkd2l0aF9jb3VudCA9IEZBTFNFKQogIHsKICAgIHJldHVybjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZ3JvdXBfbWVtYmVyc2hpcCgkdXNlcmlkKQogIHsKICAgIHJldHVybjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZGVmYXVsdF9ncm91cHMoKQogIHsKICAgIHJldHVybjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdXNlcm5hbWUoJHVpZCA9IG51bGwpCiAgewogICAgcmV0dXJuOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF91c2VybmFtZV9wcm9tcHQoKQogIHsKICAgICRmZXUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKICAgIHJldHVybiAkZmV1LT5MYW5nKCdwcm9tcHRfdXNlcm5hbWUnKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiB2YWxpZGF0ZV91c2VybmFtZSgkdXNlcm5hbWUsJGNoZWNrX2VtYWlsX2FkZHIgPSBGQUxTRSwkdWlkID0gLTEpCiAgewogICAgcmV0dXJuIFRSVUU7CiAgfQp9IC8vIGVuZCBvZiBjbGFzcwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_smarty.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpmaW5hbCBjbGFzcyBmZXVfc21hcnR5CnsKICAgIHByaXZhdGUgc3RhdGljICRfbW9kdWxlOwogICAgcHJpdmF0ZSBzdGF0aWMgJF9wcm9wZXJ0aWVzOwogICAgcHJpdmF0ZSBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpIHt9CgogICAgcHJpdmF0ZSBzdGF0aWMgZnVuY3Rpb24gX2dldF9tb2R1bGUoKQogICAgewogICAgICAgIGlmKCAhc2VsZjo6JF9tb2R1bGUgKSBzZWxmOjokX21vZHVsZSA9IFxjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpOwogICAgICAgIHJldHVybiBzZWxmOjokX21vZHVsZTsKICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldF9jdXJyZW50X3VzZXJpZCgpCiAgICB7CiAgICAgICAgJHVpZCA9IHNlbGY6Ol9nZXRfbW9kdWxlKCktPkxvZ2dlZEluSWQoKTsKICAgICAgICByZXR1cm4gJHVpZDsKICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldF9jdXJyZW50X3VzZXJuYW1lKCkKICAgIHsKICAgICAgICByZXR1cm4gc2VsZjo6X2dldF9tb2R1bGUoKS0+TG9nZ2VkSW5OYW1lKCk7CiAgICB9CgogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRfdXNlcmlkKCR1c2VybmFtZSkKICAgIHsKICAgICAgICAkdXNlcm5hbWUgPSB0cmltKCR1c2VybmFtZSk7CiAgICAgICAgaWYoICR1c2VybmFtZSApIHJldHVybiAoaW50KXNlbGY6Ol9nZXRfbW9kdWxlKCktPkdldFVzZXJJRCgkdXNlcm5hbWUpOwogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0X3VzZXJuYW1lKCR1aWQgPSBudWxsKQogICAgewogICAgICAgIGlmKCAkdWlkIDwgMSApICR1aWQgPSBzZWxmOjpfZ2V0X21vZHVsZSgpLT5Mb2dnZWRJbklkKCk7CiAgICAgICAgaWYoICR1aWQgPCAxICkgcmV0dXJuOwogICAgICAgICR1aW5mbyA9IHNlbGY6Ol9nZXRfbW9kdWxlKCktPkdldFVzZXJJbmZvKCR1aWQpOwogICAgICAgIGlmKCAhaXNfYXJyYXkoJHVpbmZvKSB8fCBjb3VudCgkdWluZm8pID09IDAgfHwgJHVpbmZvWzBdID09IEZBTFNFICkgcmV0dXJuOwogICAgICAgIHJldHVybiAkdWluZm9bMV1bJ3VzZXJuYW1lJ107CiAgICB9CgogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRfZW1haWwoJHVpZCA9IG51bGwpCiAgICB7CiAgICAgICAgaWYoICR1aWQgPCAxICkgJHVpZCA9IHNlbGY6Ol9nZXRfbW9kdWxlKCktPkxvZ2dlZEluSWQoKTsKICAgICAgICBpZiggJHVpZCA8IDEgKSByZXR1cm47CiAgICAgICAgJG1vZCA9IGNtc191dGlsczo6Z2V0X21vZHVsZShNT0RfRlJPTlRFTkRVU0VSUyk7CiAgICAgICAgaWYoICRtb2QtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJykgKSByZXR1cm4gc2VsZjo6Z2V0X3VzZXJuYW1lKCR1aWQpOwogICAgICAgICR0bXAgPSAkbW9kLT5HZXRFbWFpbCgkdWlkKTsKICAgICAgICByZXR1cm4gJHRtcDsKICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldF91c2VyaW5mbygkdWlkID0gbnVsbCkKICAgIHsKICAgICAgICBpZiggJHVpZCA8IDEgKSAkdWlkID0gc2VsZjo6X2dldF9tb2R1bGUoKS0+TG9nZ2VkSW5JZCgpOwogICAgICAgIGlmKCAkdWlkIDwgMSApIHJldHVybjsKICAgICAgICAkdWlkID0gKGludCkkdWlkOwogICAgICAgIGlmKCAkdWlkID4gMCApIHsKICAgICAgICAgICAgaWYoIGlzX29iamVjdChzZWxmOjpfZ2V0X21vZHVsZSgpKSApIHsKICAgICAgICAgICAgICAgICR1aW5mbyA9IHNlbGY6Ol9nZXRfbW9kdWxlKCktPkdldFVzZXJJbmZvKCR1aWQsVFJVRSk7CiAgICAgICAgICAgICAgICBpZiggIWlzX2FycmF5KCR1aW5mbykgfHwgY291bnQoJHVpbmZvKSA9PSAwICkgewogICAgICAgICAgICAgICAgICAgIGlmKCAkdWluZm9bMF0gPT0gRkFMU0UgKSB7CgogICAgICAgICAgICAgICAgICAgICAgICBpZiggaXNzZXQoJHVpbmZvWzFdWydmcHJvcHMnXSkgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdG1wID0gYXJyYXkoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmVhY2goICR1aW5mb1sxXVsnZnByb3BzJ10gYXMgJG9uZXByb3AgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRtcFskb25lcHJvcFsndGl0bGUnXV0gPSAkb25lcHJvcFsnZGF0YSddOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2V0KCR1aW5mb1sxXVsnZnByb3BzJ10pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJHVpbmZvWzFdWydwcm9wcyddID0gJHRtcDsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gJHVpbmZvWzFdOwogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0X3VzZXJzX2J5X2dyb3VwbmFtZSgkZ3JvdXBuYW1lLCRmb3JfbGlzdCA9IEZBTFNFKQogICAgewogICAgICAgIGlmKCAhZW1wdHkoJGdyb3VwbmFtZSkgKSB7CiAgICAgICAgICAgIGlmKCBpc19vYmplY3Qoc2VsZjo6X2dldF9tb2R1bGUoKSkgKSB7CgogICAgICAgICAgICAgICAgJGdpZCA9IHNlbGY6Ol9nZXRfbW9kdWxlKCktPkdldEdyb3VwSUQoJGdyb3VwbmFtZSk7CiAgICAgICAgICAgICAgICBpZiggJGdpZCApIHsKICAgICAgICAgICAgICAgICAgICAkdXNlcnNmdWxsID0gc2VsZjo6X2dldF9tb2R1bGUoKS0+R2V0VXNlcnNJbkdyb3VwKCRnaWQpOwoKICAgICAgICAgICAgICAgICAgICAkdXNlcnMgPSBhcnJheSgpOwogICAgICAgICAgICAgICAgICAgIGZvcmVhY2goICR1c2Vyc2Z1bGwgYXMgJG9uZXVzZXIgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKCAkZm9yX2xpc3QgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdXNlcnNbJG9uZXVzZXJbJ2lkJ11dID0gJG9uZXVzZXJbJ3VzZXJuYW1lJ107CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdXNlcnNbXSA9IGFycmF5KCdpZCc9PiRvbmV1c2VyWydpZCddLCd1c2VybmFtZSc9PiRvbmV1c2VyWyd1c2VybmFtZSddKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gJHVzZXJzOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0X2dyb3VwX21lbWJlcmxpc3QoJGdpZCkKICAgIHsKICAgICAgICAkbW9kID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKTsKICAgICAgICAkdXNlcnNmdWxsID0gJG1vZC0+R2V0VXNlcnNJbkdyb3VwKCRnaWQpOwogICAgICAgICRvdXQgPSBhcnJheSgpOwogICAgICAgIGZvcmVhY2goICR1c2Vyc2Z1bGwgYXMgJG9uZXVzZXIgKSB7CiAgICAgICAgICAgICRvdXRbJG9uZXVzZXJbJ2lkJ11dID0gJG9uZXVzZXJbJ3VzZXJuYW1lJ107CiAgICAgICAgfQogICAgICAgIHJldHVybiAkb3V0OwogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0X3VzZXJfZXhwaXJ5KCR1aWQgPSBudWxsKQogICAgewogICAgICAgIGlmKCAkdWlkIDwgMSApICR1aWQgPSBzZWxmOjpfZ2V0X21vZHVsZSgpLT5Mb2dnZWRJbklkKCk7CiAgICAgICAgaWYoICR1aWQgPCAxICkgcmV0dXJuOwoKICAgICAgICAkcmVzID0gbnVsbDsKICAgICAgICAkcmVzID0gc2VsZjo6X2dldF9tb2R1bGUoKS0+R2V0RXhwaXJ5RGF0ZSgkdWlkKTsKICAgICAgICByZXR1cm4gJHJlczsKICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHVzZXJfZXhwaXJlZCgkdWlkKQogICAgewogICAgICAgIGlmKCBlbXB0eSgkdWlkKSApIHJldHVybjsKICAgICAgICBpZiggIWlzX29iamVjdChzZWxmOjpfZ2V0X21vZHVsZSgpKSApIHJldHVybjsKCiAgICAgICAgJHJlcyA9IHNlbGY6Ol9nZXRfbW9kdWxlKCktPklzQWNjb3VudEV4cGlyZWQoJHVpZCk7CiAgICAgICAgcmV0dXJuICRyZXM7CiAgICB9CgogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRfdXNlcl9wcm9wZXJ0aWVzKCR1aWQgPSBudWxsKQogICAgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIGlmKCAkdWlkIDwgMSApICR1aWQgPSBzZWxmOjpfZ2V0X21vZHVsZSgpLT5Mb2dnZWRJbklkKCk7CiAgICAgICAgICAgIGlmKCAkdWlkIDwgMSApIHRocm93IG5ldyBFeGNlcHRpb24oJ2EnKTsKCiAgICAgICAgICAgICRyZXMgPSBzZWxmOjpfZ2V0X21vZHVsZSgpLT5HZXRVc2VyUHJvcGVydGllcygkdWlkKTsKICAgICAgICAgICAgaWYoICEkcmVzICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignZCcpOwoKICAgICAgICAgICAgJHJlczIgPSBhcnJheSgpOwogICAgICAgICAgICBmb3JlYWNoKCAkcmVzIGFzICRvbmUgKSB7CiAgICAgICAgICAgICAgICAkcmVzMlskb25lWyd0aXRsZSddXSA9ICRvbmVbJ2RhdGEnXTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gJHJlczI7CiAgICAgICAgfQogICAgICAgIGNhdGNoKCBFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgfQogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0X3VzZXJfcHJvcGVydHkoJHByb3BlcnR5LCR1aWQgPSBudWxsKQogICAgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgICRwcm9wZXJ0eSA9IHRyaW0oJHByb3BlcnR5KTsKICAgICAgICAgICAgaWYoICEkcHJvcGVydHkgKSB0aHJvdyBuZXcgXEV4Y2VwdGlvbignMCcpOwogICAgICAgICAgICBpZiggJHVpZCA8IDEgKSAkdWlkID0gc2VsZjo6X2dldF9tb2R1bGUoKS0+TG9nZ2VkSW5JZCgpOwogICAgICAgICAgICBpZiggJHVpZCA8IDEgKSB0aHJvdyBuZXcgXEV4Y2VwdGlvbignYScpOwoKICAgICAgICAgICAgJHRtcCA9IHNlbGY6OmdldF91c2VyX3Byb3BlcnRpZXMoJHVpZCk7CiAgICAgICAgICAgIGlmKCBpc3NldCgkdG1wWyRwcm9wZXJ0eV0pICkgcmV0dXJuICR0bXBbJHByb3BlcnR5XTsKICAgICAgICB9CiAgICAgICAgY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgfQogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0X2Ryb3Bkb3duX3RleHQoJHByb3BuYW1lLCRwcm9wdmFsdWUpCiAgICB7CiAgICAgICAgJHJlcyA9IG51bGw7CgogICAgICAgIHRyeSB7CiAgICAgICAgICAgIGlmKCAhaXNfb2JqZWN0KHNlbGY6Ol9nZXRfbW9kdWxlKCkpICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignYScpOwogICAgICAgICAgICBpZiggc2VsZjo6JF9wcm9wZXJ0aWVzID09IG51bGwgKSB7CiAgICAgICAgICAgICAgICBzZWxmOjokX3Byb3BlcnRpZXMgPSBhcnJheSgpOwogICAgICAgICAgICAgICAgJHRtcCA9IHNlbGY6Ol9nZXRfbW9kdWxlKCktPkdldFByb3BlcnR5RGVmbnMoKTsKICAgICAgICAgICAgICAgIGZvcmVhY2goICR0bXAgYXMgJG9uZSApIHsKICAgICAgICAgICAgICAgICAgICBpZiggJG9uZVsndHlwZSddID09IDQgfHwgJG9uZVsndHlwZSddID09IDUgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR0bXAyID0gc2VsZjo6X2dldF9tb2R1bGUoKS0+R2V0U2VsZWN0T3B0aW9ucygkb25lWyduYW1lJ10pOwogICAgICAgICAgICAgICAgICAgICAgICAkb25lWydvcHRpb25zJ10gPSBhcnJheSgpOwogICAgICAgICAgICAgICAgICAgICAgICBmb3JlYWNoKCAkdG1wMiBhcyAkayA9PiAkdiApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICRvbmVbJ29wdGlvbnMnXVskdl0gPSAkazsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBzZWxmOjokX3Byb3BlcnRpZXNbJG9uZVsnbmFtZSddXSA9ICRvbmU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmKCAhaXNzZXQoc2VsZjo6JF9wcm9wZXJ0aWVzWyRwcm9wbmFtZV0pICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignYicpOwoKICAgICAgICAgICAgaWYoIChzZWxmOjokX3Byb3BlcnRpZXNbJHByb3BuYW1lXVsndHlwZSddICE9IDQgJiYgc2VsZjo6JF9wcm9wZXJ0aWVzWyRwcm9wbmFtZV1bJ3R5cGUnXSAhPSA1KSB8fAogICAgICAgICAgICAgICAgIWlzc2V0KHNlbGY6OiRfcHJvcGVydGllc1skcHJvcG5hbWVdWydvcHRpb25zJ10pICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignYycpOwoKICAgICAgICAgICAgaWYoICFpc3NldChzZWxmOjokX3Byb3BlcnRpZXNbJHByb3BuYW1lXVsnb3B0aW9ucyddWyRwcm9wdmFsdWVdKSApIHRocm93IG5ldyBFeGNlcHRpb24oJ2QnKTsKCiAgICAgICAgICAgICRyZXMgPSBzZWxmOjokX3Byb3BlcnRpZXNbJHByb3BuYW1lXVsnb3B0aW9ucyddWyRwcm9wdmFsdWVdOwogICAgICAgIH0KICAgICAgICBjYXRjaCggRXhjZXB0aW9uICRlICkgewogICAgICAgIH0KICAgICAgICByZXR1cm4gJHJlczsKICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldF9tdWx0aXNlbGVjdF90ZXh0KCRwcm9wbmFtZSwkcHJvcHZhbHVlKQogICAgewogICAgICAgICR2YWx1ZXMgPSBleHBsb2RlKCcsJywkcHJvcHZhbHVlKTsKICAgICAgICAkcmVzID0gYXJyYXkoKTsKICAgICAgICBmb3JlYWNoKCAkdmFsdWVzIGFzICRvbmUgKSB7CiAgICAgICAgICAgICRyZXNbXSA9IHNlbGY6OmdldF9kcm9wZG93bl90ZXh0KCRwcm9wbmFtZSwkb25lKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuICRyZXM7CiAgICB9CgogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRfZ3JvdXBfbGlzdCgpCiAgICB7CiAgICAgICAgJGxpc3QgPSBhcnJheV9mbGlwKHNlbGY6Ol9nZXRfbW9kdWxlKCktPkdldEdyb3VwTGlzdCgpKTsKICAgICAgICByZXR1cm4gJGxpc3Q7CiAgICB9CgogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRfdXNlcl9ncm91cHMoJHVpZD1udWxsKQogICAgewogICAgICAgIGlmKCAkdWlkIDwgMSApICR1aWQgPSBzZWxmOjpfZ2V0X21vZHVsZSgpLT5Mb2dnZWRJbklkKCk7CiAgICAgICAgaWYoICR1aWQgPCAxICkgcmV0dXJuOwoKICAgICAgICAkZ3JvdXBzID0gc2VsZjo6X2dldF9tb2R1bGUoKS0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoICR1aWQgKTsKICAgICAgICAkZ25zID0gYXJyYXkoKTsKICAgICAgICAkZ2lkcyA9IGFycmF5KCk7CiAgICAgICAgaWYoICRncm91cHMgIT09IGZhbHNlICkgewogICAgICAgICAgICBmb3JlYWNoKCAkZ3JvdXBzIGFzICRnaWQgKSB7CiAgICAgICAgICAgICAgICAkZ2lkc1tdID0gJGdpZFsnZ3JvdXBpZCddOwogICAgICAgICAgICAgICAgJGduc1skZ2lkWydncm91cGlkJ11dID0gc2VsZjo6X2dldF9tb2R1bGUoKS0+R2V0R3JvdXBOYW1lKCRnaWRbJ2dyb3VwaWQnXSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuICRnbnM7CiAgICB9CgogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBpc191c2VyX21lbWJlcm9mKCRncm91cHMsJHVpZD1udWxsKQogICAgewogICAgICAgIGlmKCAkdWlkIDwgMSApICR1aWQgPSBzZWxmOjpfZ2V0X21vZHVsZSgpLT5Mb2dnZWRJbklkKCk7CiAgICAgICAgaWYoICR1aWQgPCAxICkgcmV0dXJuOwoKICAgICAgICBpZiggIWlzX2FycmF5KCRncm91cHMpICkgJGdyb3VwcyA9IGV4cGxvZGUoJywnLCRncm91cHMpOwogICAgICAgICR0bXAgPSBhcnJheSgpOwogICAgICAgIGZvcmVhY2goICRncm91cHMgYXMgJGdycCApIHsKICAgICAgICAgICAgJGdycCA9IHRyaW0oJGdycCk7CiAgICAgICAgICAgIGlmKCAhJGdycCApIGNvbnRpbnVlOwogICAgICAgICAgICAkdG1wW10gPSAkZ3JwOwogICAgICAgIH0KICAgICAgICBpZiggIWNvdW50KCR0bXApICkgcmV0dXJuOwoKICAgICAgICAkZ3JvdXBzID0gc2VsZjo6Z2V0X3VzZXJfZ3JvdXBzKCR1aWQpOwogICAgICAgIGZvcmVhY2goICR0bXAgYXMgJG9uZSApIHsKICAgICAgICAgICAgaWYoIGluX2FycmF5KCRvbmUsJGdyb3VwcykgKSByZXR1cm4gVFJVRTsKICAgICAgICB9CiAgICB9CgogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBwcmVsb2FkX3VzZXJzKCR1aWRfbGlzdCwkZGVlcCA9IEZBTFNFKQogICAgewogICAgICAgIGZldV91c2VyX2NhY2hlOjpsb2FkX3VzZXJzKCR1aWRfbGlzdCwkZGVlcCk7CiAgICB9Cn0KCiMKIyBFT0YKIwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_smarty_plugins.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNiBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpmaW5hbCBjbGFzcyBmZXVfc21hcnR5X3BsdWdpbnMKewogICAgcHJpdmF0ZSBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpIHt9CgogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBmZXVfcHJvdGVjdCgkcGFyYW1zLCRjb250ZW50LCYkc21hcnR5LCRyZXBlYXQpCiAgICB7CiAgICAgICAgaWYoICEkY29udGVudCApIHJldHVybjsKCiAgICAgICAgJGZldSA9IFxjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpOwogICAgICAgIGlmKCAhKCR1aWQgPSAkZmV1LT5Mb2dnZWRJbklkKCkpICkgcmV0dXJuOwoKICAgICAgICAkZ3JvdXBzID0gbnVsbDsKICAgICAgICBpZiggaXNzZXQoJHBhcmFtc1snZ3JvdXAnXSkgKSB7CiAgICAgICAgICAgICRncm91cHMgPSBleHBsb2RlKCcsJywkcGFyYW1zWydncm91cCddKTsKICAgICAgICAgICAgZm9yZWFjaCggJGdyb3VwcyBhcyAmJGdycCApIHsKICAgICAgICAgICAgICAgICRncnAgPSB0cmltKCRncnApOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYoIGlzc2V0KCRwYXJhbXNbJ2dyb3VwcyddKSApIHsKICAgICAgICAgICAgJGdyb3VwcyA9IGV4cGxvZGUoJywnLCRwYXJhbXNbJ2dyb3VwcyddKTsKICAgICAgICAgICAgZm9yZWFjaCggJGdyb3VwcyBhcyAmJGdycCApIHsKICAgICAgICAgICAgICAgICRncnAgPSB0cmltKCRncnApOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiggIWlzX2FycmF5KCRncm91cHMpIHx8IGNvdW50KCRncm91cHMpID09IDAgKSB7CiAgICAgICAgICAgIC8vIGVtcHR5IGdyb3VwcyBhcnJheSBzcGVjaWZpZWQuCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CgogICAgICAgIC8vIGNvbnZlcnQgZ3JvdXAgbmFtZXMgdG8gaWRzCiAgICAgICAgJGdyb3VwbGlzdCA9ICRmZXUtPkdldEdyb3VwTGlzdCgpOwogICAgICAgICRnaWRzID0gYXJyYXkoKTsKICAgICAgICBmb3JlYWNoKCRncm91cHMgYXMgJG5hbWUpIHsKICAgICAgICAgICAgaWYoIChpbnQpJG5hbWUgPiAwICkgewogICAgICAgICAgICAgICAgJGdpZHNbXSA9IChpbnQpJG5hbWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSBpZiggaXNzZXQoJGdyb3VwbGlzdFskbmFtZV0pICkgewogICAgICAgICAgICAgICAgJGdpZHNbXSA9ICRncm91cGxpc3RbJG5hbWVdOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmKCAhY291bnQoJGdpZHMpICkgcmV0dXJuOwoKICAgICAgICAkbWVtYmVyZ3JvdXBzID0gJGZldS0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoJHVpZCk7CiAgICAgICAgaWYoICFpc19hcnJheSgkbWVtYmVyZ3JvdXBzKSB8fCBjb3VudCgkZ3JvdXBzKSA9PSAwICkgewogICAgICAgICAgICAvLyBncm91cHMgc3BlY2lmaWVkLCBidXQgdXNlciBpcyBub3QgYSBtZW1iZXIgb2YgYW55IGdyb3Vwcy4KICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KCiAgICAgICAgLy8gRklOQUwgdGVzdCwgaWYgdGhlIHVzZXIgaXMgYSBtZW1iZXIgb2YgYW55IG9mIHRoZXNlIGdyb3Vwcywgb3V0cHV0IHRoZSBjb250ZW50LgogICAgICAgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCRtZW1iZXJncm91cHMpOyAkaSsrICkgewogICAgICAgICAgICAkZ2lkID0gJG1lbWJlcmdyb3Vwc1skaV1bJ2dyb3VwaWQnXTsKICAgICAgICAgICAgaWYoIGluX2FycmF5KCRnaWQsJGdpZHMpICkgcmV0dXJuICRjb250ZW50OwogICAgICAgIH0KCiAgICAgICAgLy8gdXNlciBpcyBub3QgYSBtZW1iZXIgb2YgYW55IG9mIHRoZSBzcGVjaWZpZWQgZ3JvdXBzLgogICAgfQp9IC8vIGVuZCBvZiBjbGFzcwo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_std_consumer.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBmZXVfc3RkX2NvbnN1bWVyIGV4dGVuZHMgZmV1X3B1cmVfY29uc3VtZXIKewogICAgcHVibGljIGZ1bmN0aW9uIGlzX2F1dGhlbnRpY2F0ZWQoKQogICAgewogICAgICAgICRyZXMgPSAkdGhpcy0+Z2V0X3VuaXF1ZV9pZGVudGlmaWVyKCk7CiAgICAgICAgaWYoICRyZXMgKSByZXR1cm4gVFJVRTsKICAgICAgICByZXR1cm4gRkFMU0U7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIGdldF9jYXBhYmlsaXRpZXMoKQogICAgewogICAgICAgICRyZXMgPSBhcnJheSgpOwogICAgICAgICRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfVVNFU1REQ0hBTkdFU0VUVElOR1M7CiAgICAgICAgJHJlc1tdID0gc2VsZjo6Q0FQQUJJTElUWV9DSEFOR0VQQVNTV0Q7CiAgICAgICAgJHJlc1tdID0gc2VsZjo6Q0FQQUJJTElUWV9MSVNUR1JPVVBTOwogICAgICAgICRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfRURJVEdST1VQUzsKICAgICAgICAkcmVzW10gPSBzZWxmOjpDQVBBQklMSVRZX0VESVRHUk9VUFBST1BTOwogICAgICAgICRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfTElTVFBST1BTOwogICAgICAgICRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfRURJVFBST1BTOwogICAgICAgICRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfTElTVEdST1VQUzsKICAgICAgICAkcmVzW10gPSBzZWxmOjpDQVBBQklMSVRZX0dST1VQTUVNQkVSU0hJUDsKICAgICAgICAkcmVzW10gPSBzZWxmOjpDQVBBQklMSVRZX0RFRkFVTFRHUk9VUFM7CiAgICAgICAgJHJlc1tdID0gc2VsZjo6Q0FQQUJJTElUWV9VU0VSTkFNRTsKICAgICAgICAkbW9kID0gY2dlX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKTsKICAgICAgICBpZiggJG1vZC0+R2V0UHJlZmVyZW5jZSgnYWxsb3dfY2hhbmdldXNlcm5hbWUnKSApICRyZXNbXSA9IHNlbGY6OkNBUEFCSUxJVFlfQ0hBTkdFVVNFUk5BTUU7CgogICAgICAgIHJldHVybiAkcmVzOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfbG9naW5fZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpCiAgICB7CiAgICAgICAgLy8gdG9kbwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2xvZ291dF9kaXNwbGF5KCRpZCwkcmV0dXJuaWQsJHBhcmFtcykKICAgIHsKICAgICAgICAvLyB0b2RvCiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfY2hhbmdlc2V0dGluZ3NfZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpCiAgICB7CiAgICAgICAgLy8gdG9kbwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3VzZXJfaW5mbygpCiAgICB7CiAgICAgICAgLy8gdG9kbwogICAgICAgIHN0YWNrX3RyYWNlKCk7CiAgICAgICAgZGllKCdub3QgaW1wbGVtZW50ZWQnKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3VuaXF1ZV9pZGVudGlmaWVyKCkKICAgIHsKICAgICAgICAkbW9kdWxlID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKTsKICAgICAgICAkbWFuaXAgPSAkbW9kdWxlLT5HZXRNYW5pcHVsYXRvcigpOwogICAgICAgIHJldHVybiAkbWFuaXAtPl9zdGRfTG9nZ2VkaW5JZCgpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfZ3JvdXBfbGlzdCgkd2l0aF9jb3VudCA9IEZBTFNFKQogICAgewogICAgICAgIC8vIHRoaXMgbWV0aG9kIGRvZXNuJ3QgZXhhY3RseSBsaXN0ZW4gdG8gdGhlIGRvY3MuCiAgICAgICAgJGRiID0gY21zbXMoKS0+R2V0RGIoKTsKICAgICAgICAkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBzJzsKICAgICAgICBpZiggJHdpdGhfY291bnQgKSB7CiAgICAgICAgICAgICRxdWVyeSA9ICdTRUxFQ1QgZy4qLGNvdW50KGIudXNlcmlkKSBBUyBjb3VudCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19ncm91cHMgZwogICAgICAgICAgICAgICAgTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIGIKICAgICAgICAgICAgICAgIE9OIGcuaWQgPSBiLmdyb3VwaWQKICAgICAgICAgICAgICAgIEdST1VQIEJZIGcuaWQnOwogICAgICAgIH0KICAgICAgICAkZGJyID0gJGRiLT5HZXRBcnJheSgkcXVlcnkpOwogICAgICAgIGlmKCBpc19hcnJheSgkZGJyKSAmJiBjb3VudCgkZGJyKSApIHsKICAgICAgICAgICAgJHRtcCA9IGFycmF5KCk7CiAgICAgICAgICAgIGZvcmVhY2goICRkYnIgYXMgJG9uZSApIHsKICAgICAgICAgICAgICAgICR0bXBbJG9uZVsnaWQnXV0gPSAkb25lOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiAkdG1wOwogICAgICAgIH0KICAgICAgICByZXR1cm4gJGRicjsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2dyb3VwX21lbWJlcnNoaXAoJHVzZXJpZCkKICAgIHsKICAgICAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwogICAgICAgICRxID0gIlNFTEVDVCBncm91cGlkIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgV0hFUkUgdXNlcmlkPT8iOwogICAgICAgICRkYnIgPSAkZGItPkdldENvbCgkcSxhcnJheSgkdXNlcmlkKSk7CiAgICAgICAgcmV0dXJuICRkYnI7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIGdldF9kZWZhdWx0X2dyb3VwcygpCiAgICB7CiAgICAgICAgJG1vZCA9IGNtc191dGlsczo6Z2V0X21vZHVsZShNT0RfRlJPTlRFTkRVU0VSUyk7CiAgICAgICAgJHRtcCA9ICRtb2QtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfZ3JvdXAnKTsKICAgICAgICBpZiggKGludCkkdG1wID4gMCApIHJldHVybiBhcnJheSgkdG1wKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3VzZXJuYW1lKCRpZGVudGlmaWVyID0gbnVsbCkKICAgIHsKICAgICAgICBpZiggISRpZGVudGlmaWVyICkgJGlkZW50aWZpZXIgPSAkdGhpcy0+Z2V0X3VuaXF1ZV9pZGVudGlmaWVyKCk7CiAgICAgICAgJHJvdyA9IGZldV91c2VyX2NhY2hlOjpnZXRfdXNlcigkaWRlbnRpZmllcik7CiAgICAgICAgaWYoICEkcm93ICkgcmV0dXJuIEZBTFNFOwogICAgICAgIHJldHVybiAkcm93Wyd1c2VybmFtZSddOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfdXNlcm5hbWVfcHJvbXB0KCkKICAgIHsKICAgICAgICAkZmV1ID0gY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKTsKICAgICAgICBpZiggJGZldS0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVfaXNfZW1haWwnKSApIHJldHVybiAkZmV1LT5MYW5nKCdwcm9tcHRfZW1haWwnKTsKICAgICAgICByZXR1cm4gJGZldS0+TGFuZygncHJvbXB0X3VzZXJuYW1lJyk7CiAgICB9CgoKICAgIHB1YmxpYyBmdW5jdGlvbiB2YWxpZGF0ZV91c2VybmFtZSgkdXNlcm5hbWUsJGNoZWNrX2VtYWlsX2FkZHIgPSBGQUxTRSwkdWlkID0gLTEpCiAgICB7CiAgICAgICAgLy8gYSB1c2VybmFtZSBpcyB2YWxpZCwgaWYgaXQncyBsZW5ndGggaXMKICAgICAgICAvLyB3aXRoaW4gY2VydGFpbiByYW5nZXMsIGFuZCBpdCBjb250YWlucwogICAgICAgIC8vIG9ubHkgYWxwaGFudW1lcmljcwogICAgICAgICRtb2R1bGUgPSBjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpOwogICAgICAgICRtaW5sZW4gPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdtaW5fdXNlcm5hbWVsZW5ndGgnLCA0ICk7CiAgICAgICAgJG1heGxlbiA9ICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ21heF91c2VybmFtZWxlbmd0aCcsIDIwICk7CiAgICAgICAgaWYoIHN0cmxlbiggJHVzZXJuYW1lICkgPCAkbWlubGVuIHx8IHN0cmxlbiggJHVzZXJuYW1lICkgPiAkbWF4bGVuICkgcmV0dXJuIGZhbHNlOwogICAgICAgIGlmICgkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZV9pc19lbWFpbCcpKSB7CiAgICAgICAgICAgICR0ZXN0ID0gJG1vZHVsZS0+SXNWYWxpZEVtYWlsQWRkcmVzcygkdXNlcm5hbWUsJHVpZCwkY2hlY2tfZW1haWxfYWRkcik7CiAgICAgICAgICAgIGlmICgkdGVzdFswXSA9PT0gZmFsc2UpIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgZWxzZSBpZiggIXByZWdfbWF0Y2goICcvXlthLXpBLVowLTlcX1wtXHNcLlxAXCtdKiQvJywgJHVzZXJuYW1lICkgKSB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICB9Cn0gLy8gZW5kIG9mIGNsYXNzCgojIEVPRgojCg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_user_cache.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgovKioKICogdGhpcyBpcyBhbiBpbnRlcm5hbCBjbGFzcyAuLi5kbyBubyB1c2UKICovCgpmaW5hbCBjbGFzcyBmZXVfdXNlcl9jYWNoZQp7CiAgcHJpdmF0ZSBzdGF0aWMgJF91c2VycyA9IGFycmF5KCk7CiAgcHJpdmF0ZSBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpIHt9CgogIC8qKgogICAqIEdldCB1c2VyIGluZm9ybWF0aW9uIGZvciBhIHVpZAogICAqIHdpbGwgcmV0dXJuIGRlZXAgaW5mb3JtYXRpb24gaWYgYWxyZWR5IGxvYWRlZAogICAqIHdpbGwgbm90IGxvYWQgYW55IGluZm8KICAgKiovCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRfdXNlcl9ub2xvYWQoJHVpZCkKICB7CiAgICAkdWlkID0gKGludCkkdWlkOwogICAgaWYoICR1aWQgPD0gMCApIHJldHVybjsKICAgIGlmKCAhaXNzZXQoc2VsZjo6JF91c2Vyc1skdWlkXSkgKSByZXR1cm47CgogICAgcmV0dXJuIHNlbGY6OiRfdXNlcnNbJHVpZF07CiAgfQoKICAvKioKICAgKiBHZXQgdXNlciBpbmZvcm1hdGlvbiBmb3IgYSB1aWQKICAgKiB3aWxsIHJldHVybiBkZWVwIGluZm8gaWYgaXQgaXMgYWxyZWFkeSBsb2FkZWQsIGV2ZW4gaWYgJGRlZXAgPSBGQUxTRQogICAqIHdpbGwgbG9hZCB0aGUgdXNlciBpZiBub3QgaW4gbWVtb3J5CiAgICoqLwogIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0X3VzZXIoJHVpZCwkZGVlcCA9IEZBTFNFKQogIHsKICAgICR1aWQgPSAoaW50KSR1aWQ7CiAgICBpZiggJHVpZCA8PSAwICkgcmV0dXJuOwogICAgaWYoICFpc3NldChzZWxmOjokX3VzZXJzWyR1aWRdKSB8fCAoJGRlZXAgJiYgIWlzc2V0KHNlbGY6OiRfdXNlcnNbJHVpZF1bJ2Zwcm9wcyddKSkgKSB7CiAgICAgIHNlbGY6OmxvYWRfdXNlcnMoYXJyYXkoJHVpZCksJGRlZXApOwogICAgfQogICAgcmV0dXJuIHNlbGY6OmdldF91c2VyX25vbG9hZCgkdWlkKTsKICB9CgogIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gc2V0X3VzZXIoJHVpbmZvKQogIHsKICAgIGlmKCAhaXNfYXJyYXkoJHVpbmZvKSApIHJldHVybiBGQUxTRTsKICAgIGlmKCAhaXNzZXQoJHVpbmZvWydpZCddKSApIHJldHVybiBGQUxTRTsKICAgICR1aWQgPSAoaW50KSR1aW5mb1snaWQnXTsKICAgIGlmKCAkdWlkIDw9IDAgKSByZXR1cm4gRkFMU0U7CiAgICBpZiggIWlzc2V0KCR1aW5mb1sndXNlcm5hbWUnXSkgKSByZXR1cm4gRkFMU0U7CgogICAgc2VsZjo6JF91c2Vyc1skdWlkXSA9ICR1aW5mbzsKICAgIHJldHVybiBUUlVFOwogIH0KCiAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBzZXRfbmV3X3VzZXIoJHVpbmZvKQogIHsKICAgIGlmKCAhaXNfYXJyYXkoJHVpbmZvKSApIHJldHVybiBGQUxTRTsKICAgIGlmKCAhaXNzZXQoJHVpbmZvWydpZCddKSApIHJldHVybiBGQUxTRTsKICAgICR1aWQgPSAoaW50KSR1aW5mb1snaWQnXTsKICAgIGlmKCAkdWlkIDw9IDAgKSByZXR1cm4gRkFMU0U7CiAgICBpZiggIWlzc2V0KCR1aW5mb1sndXNlcm5hbWUnXSkgKSByZXR1cm4gRkFMU0U7CiAgICBpZiggaXNzZXQoc2VsZjo6JF91c2Vyc1skdWlkXSkgKSByZXR1cm4gRkFMU0U7CgogICAgc2VsZjo6JF91c2Vyc1skdWluZm9bJ2lkJ11dID0gJHVpbmZvOwogICAgcmV0dXJuIFRSVUU7CiAgfQoKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGRlbF91c2VyKCR1aWQpCiAgewogICAgJHVpZCA9IChpbnQpJHVpZDsKICAgIGlmKCAkdWlkIDw9IDAgKSByZXR1cm4gRkFMU0U7CiAgICBpZiggIWlzc2V0KHNlbGY6OiRfdXNlcnNbJHVpZF0pICkgcmV0dXJuIEZBTFNFOwoKICAgIHVuc2V0KHNlbGY6OiRfdXNlcnNbJHVpZF0pOwogICAgcmV0dXJuIFRSVUU7CiAgfQoKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGNsZWFyX2FsbCgpCiAgewogICAgc2VsZjo6JF91c2VycyA9IGFycmF5KCk7CiAgfQoKICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGxvYWRfdXNlcnMoJHVpZF9saXN0LCRkZWVwID0gRkFMU0UpCiAgewogICAgICBpZiggIWlzX2FycmF5KCR1aWRfbGlzdCkgfHwgY291bnQoJHVpZF9saXN0KSA9PSAwICkgcmV0dXJuOwoKICAgICAgJG5lZWQgPSBhcnJheSgpOwogICAgICAkbmVlZF9wcm9wcyA9IGFycmF5KCk7CiAgICAgIGZvcmVhY2goICR1aWRfbGlzdCBhcyAkb25lICkgewogICAgICAgICAgJG9uZSA9IChpbnQpJG9uZTsKICAgICAgICAgIGlmKCAkb25lIDw9IDAgKSBjb250aW51ZTsKCiAgICAgICAgICBpZiggIWlzc2V0KHNlbGY6OiRfdXNlcnNbJG9uZV0pICkgJG5lZWRbXSA9ICRvbmU7CiAgICAgICAgICBpZiggIWlzc2V0KHNlbGY6OiRfdXNlcnNbJG9uZV1bJ2Zwcm9wcyddKSApICRuZWVkX3Byb3BzW10gPSAkb25lOwogICAgICB9CgogICAgICAkbmVlZCA9IGFycmF5X3VuaXF1ZSgkbmVlZCk7CiAgICAgICRuZWVkX3Byb3BzID0gYXJyYXlfdW5pcXVlKCRuZWVkX3Byb3BzKTsKICAgICAgYXNvcnQoJG5lZWQpOwogICAgICBhc29ydCgkbmVlZF9wcm9wcyk7CgogICAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwogICAgICBpZiggY291bnQoJG5lZWQpICkgewogICAgICAgICAgLy8gZ2V0IHRoZSB1c2VyIGluZm8KICAgICAgICAgICR1cXVlcnkgPSAnU0VMRUNUIHUuKixjb3VudChsaS51c2VyaWQpIEFTIGxvZ2dlZGluIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIHUKICAgICAgICAgICAgICAgICBMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIGxpIE9OIHUuaWQgPSBsaS51c2VyaWQKICAgICAgICAgICAgICAgICBXSEVSRSB1LmlkIElOICgnOwogICAgICAgICAgJHVxdWVyeSAuPSBpbXBsb2RlKCcsJywkbmVlZCkuJykgR1JPVVAgQlkgdS5pZCBPUkRFUiBCWSB1LmlkJzsKICAgICAgICAgICR1aW5mbyA9ICRkYi0+R2V0QXJyYXkoJHVxdWVyeSk7CiAgICAgICAgICBmb3JlYWNoKCR1aW5mbyBhcyAkcmVjKSB7CiAgICAgICAgICAgICAgdW5zZXQoJHJlY1sncGFzc3dvcmQnXSk7CiAgICAgICAgICAgICAgdW5zZXQoJHJlY1snc2FsdCddKTsKICAgICAgICAgICAgICBzZWxmOjokX3VzZXJzWyRyZWNbJ2lkJ11dID0gJHJlYzsKICAgICAgICAgIH0KICAgICAgfQoKICAgIGlmKCAkZGVlcCAmJiBjb3VudCgkbmVlZF9wcm9wcykgKSB7CiAgICAgICAgJG1vZCA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwogICAgICAgICRkZWZucyA9ICRtb2QtPkdldFByb3BlcnR5RGVmbnMoKTsKCiAgICAgICAgJHBxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIFdIRVJFIHVzZXJpZCBJTiAoJzsKICAgICAgICAkcHF1ZXJ5IC49IGltcGxvZGUoJywnLCRuZWVkX3Byb3BzKS4nKSBPUkRFUiBCWSB1c2VyaWQsdGl0bGUnOwogICAgICAgICRwaW5mbyA9ICRkYi0+R2V0QXJyYXkoJHBxdWVyeSk7CgogICAgICAgICRwcmV2X3VpZCA9IG51bGw7CiAgICAgICAgJGZwcm9wcyA9IG51bGw7CiAgICAgICAgZm9yZWFjaCgkcGluZm8gYXMgJHJlYykgewogICAgICAgICAgICBpZiggY291bnQoJGZwcm9wcykgJiYgJHJlY1sndXNlcmlkJ10gIT0gJHByZXZfdWlkICYmICRwcmV2X3VpZCAhPSBudWxsKSB7CiAgICAgICAgICAgICAgICAkdHVpZCA9ICRmcHJvcHNbMF1bJ3VzZXJpZCddOwogICAgICAgICAgICAgICAgaWYoICFpc3NldChzZWxmOjokX3VzZXJzWyR0dWlkXSkgKSB0aHJvdyBuZXcgQ21zRXhjZXB0aW9uKCdMb2FkZWQgcHJvcGVydGllcyBmb3IgdXNlciwgYnV0IG5vIHVzZXIgbG9hZGVkJyk7CiAgICAgICAgICAgICAgICBzZWxmOjokX3VzZXJzWyR0dWlkXVsnZnByb3BzJ10gPSAkZnByb3BzOwogICAgICAgICAgICAgICAgJGZwcm9wcyA9IGFycmF5KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYoICRkZWZuc1skcmVjWyd0aXRsZSddXVsnZW5jcnlwdCddICkgewogICAgICAgICAgICAgICAgJHJlY1snZGF0YSddID0gJG1vZC0+RGVjcnlwdFVzZXJEYXRhKCRyZWNbJ3VzZXJpZCddLCRyZWNbJ2RhdGEnXSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJGZwcm9wc1tdID0gJHJlYzsKICAgICAgICAgICAgJHByZXZfdWlkID0gJHJlY1sndXNlcmlkJ107CiAgICAgICAgfQogICAgICAgIGlmKCBjb3VudCgkZnByb3BzKSApIHsKICAgICAgICAgICAgJHR1aWQgPSAkZnByb3BzWzBdWyd1c2VyaWQnXTsKICAgICAgICAgICAgaWYoICFpc3NldChzZWxmOjokX3VzZXJzWyR0dWlkXSkgKSB0aHJvdyBuZXcgQ21zRXhjZXB0aW9uKCdMb2FkZWQgcHJvcGVydGllcyBmb3IgdXNlciwgYnV0IG5vIHVzZXIgbG9hZGVkJyk7CiAgICAgICAgICAgIHNlbGY6OiRfdXNlcnNbJHR1aWRdWydmcHJvcHMnXSA9ICRmcHJvcHM7CiAgICAgICAgfQogICAgfQogIH0KCn0gLy8gZW5kIG9mIGNsYXNzCgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_user_query.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBmZXVfdXNlcl9xdWVyeV9vcHQKewogIGNvbnN0IE1BVENIX1VTRVJOQU1FICAgID0gJyp1c2VybmFtZSonOwogIGNvbnN0IE1BVENIX1VTRVJOQU1FX1JFID0gJyp1c2VybmFtZS1yZSonOwogIGNvbnN0IE1BVENIX1BBU1NXT1JEICAgID0gJypwYXNzd29yZConOwogIGNvbnN0IE1BVENIX0VYUElSRVNfTFQgID0gJypleHBpcmVzLWx0Kic7CiAgY29uc3QgTUFUQ0hfTk9URVhQSVJFRCAgPSAnKm5vdGV4cGlyZWQqJzsKICBjb25zdCBNQVRDSF9HUk9VUCAgICAgICA9ICcqZ3JvdXAqJzsKICBjb25zdCBNQVRDSF9HUk9VUElEICAgICA9ICcqZ2lkKic7CiAgY29uc3QgTUFUQ0hfUFJPUEVSVFkgICAgPSAnKnByb3BlcnR5Kic7CiAgY29uc3QgTUFUQ0hfUFJPUEVSVFlfUkUgPSAnKnByb3BlcnR5LXJlKic7CiAgY29uc3QgTUFUQ0hfVVNFUkxJU1QgICAgPSAnKnVzZXJsaXN0Kic7CiAgY29uc3QgTUFUQ0hfVVNFUk5BTUVMSVNUID0gJyp1c2VybmFtZWxpc3QqJzsKICBjb25zdCBNQVRDSF9MT0dHRURJTiAgICA9ICcqbG9nZ2VkaW4qJzsKICBjb25zdCBNQVRDSF9DUkVBVEVEX0dFICA9ICcqY3JlYXRlZF9nZSonOwogIGNvbnN0IE1BVENIX0NSRUFURURfTFQgID0gJypjcmVhdGVkX2x0Kic7CgogIHByaXZhdGUgJF90eXBlOwogIHByaXZhdGUgJF9leHByOwogIHByaXZhdGUgJF9vcHQ7CgogIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkdHlwZSwkZXhwciA9IG51bGwsJG9wdCA9IG51bGwpCiAgewogICAgc3dpdGNoKCR0eXBlKSB7CiAgICBjYXNlIHNlbGY6Ok1BVENIX1VTRVJOQU1FOgogICAgY2FzZSBzZWxmOjpNQVRDSF9VU0VSTkFNRV9SRToKICAgIGNhc2Ugc2VsZjo6TUFUQ0hfUEFTU1dPUkQ6CiAgICBjYXNlIHNlbGY6Ok1BVENIX0VYUElSRVNfTFQ6CiAgICBjYXNlIHNlbGY6Ok1BVENIX0NSRUFURURfR0U6CiAgICBjYXNlIHNlbGY6Ok1BVENIX0NSRUFURURfTFQ6CiAgICBjYXNlIHNlbGY6Ok1BVENIX0dST1VQOgogICAgY2FzZSBzZWxmOjpNQVRDSF9HUk9VUElEOgogICAgY2FzZSBzZWxmOjpNQVRDSF9VU0VSTElTVDoKICAgIGNhc2Ugc2VsZjo6TUFUQ0hfVVNFUk5BTUVMSVNUOgogICAgY2FzZSBzZWxmOjpNQVRDSF9MT0dHRURJTjoKICAgICAgICBpZiggZW1wdHkoJGV4cHIpICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignaW52YWxpZCB2YWx1ZSBmb3IgZXhwcicpOwogICAgICAgICR0aGlzLT5fdHlwZSA9ICR0eXBlOwogICAgICAgICR0aGlzLT5fZXhwciA9ICRleHByOwogICAgICAgIGJyZWFrOwoKICAgIGNhc2Ugc2VsZjo6TUFUQ0hfTk9URVhQSVJFRDoKICAgICAgICAkdGhpcy0+X3R5cGUgPSAkdHlwZTsKICAgICAgICBicmVhazsKCiAgICBjYXNlIHNlbGY6Ok1BVENIX1BST1BFUlRZX1JFOgogICAgICAgIGlmKCBlbXB0eSgkZXhwcikgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCdpbnZhbGlkIHZhbHVlIGZvciBleHByJyk7CiAgICAgICAgaWYoIGVtcHR5KCRvcHQpICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignaW52YWxpZCBvcHQgdmFsdWUnKTsKICAgICAgICAkdGhpcy0+X3R5cGUgPSAkdHlwZTsKICAgICAgICAkdGhpcy0+X2V4cHIgPSAkZXhwcjsKICAgICAgICAkdGhpcy0+X29wdCA9ICRvcHQ7CiAgICAgICAgYnJlYWs7CgogICAgY2FzZSBzZWxmOjpNQVRDSF9QUk9QRVJUWToKICAgICAgICBpZiggZW1wdHkoJGV4cHIpICkgdGhyb3cgbmV3IEV4Y2VwdGlvbignaW52YWxpZCB2YWx1ZSBmb3IgZXhwcicpOwogICAgICAgICR0aGlzLT5fdHlwZSA9ICR0eXBlOwogICAgICAgICR0aGlzLT5fZXhwciA9ICRleHByOwogICAgICAgICR0aGlzLT5fb3B0ID0gJG9wdDsKICAgICAgICBicmVhazsKCiAgICBkZWZhdWx0OgogICAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJ2ludmFsaWQgdmFsdWUnKTsKICAgIH0KICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdHlwZSgpCiAgewogICAgcmV0dXJuICR0aGlzLT5fdHlwZTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZXhwcigpCiAgewogICAgcmV0dXJuICR0aGlzLT5fZXhwcjsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfb3B0KCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9vcHQ7CiAgfQp9IC8vIGNsYXNzCgoKY2xhc3MgZmV1X3VzZXJfcXVlcnkKewogIGNvbnN0IFJFU1VMVF9UWVBFX0lEID0gJyppZConOwogIGNvbnN0IFJFU1VMVF9UWVBFX0xJU1QgPSAnKmxpc3QqJzsKICBjb25zdCBSRVNVTFRfVFlQRV9GVUxMID0gJypmdWxsKic7CiAgY29uc3QgUkVTVUxUX1NPUlRPUkRFUl9BU0MgPSAnKmFzYyonOwogIGNvbnN0IFJFU1VMVF9TT1JUT1JERVJfREVTQyA9ICcqZGVzYyonOwogIGNvbnN0IFJFU1VMVF9TT1JUQllfVVNFUk5BTUUgPSAnKnVzZXJuYW1lKic7CiAgY29uc3QgUkVTVUxUX1NPUlRCWV9DUkVBVEVEID0gJypjcmVhdGVkYXRlKic7CiAgY29uc3QgUkVTVUxUX1NPUlRCWV9FWFBJUkVTID0gJypleHBpcmVzKic7CgogIHByaXZhdGUgJF9hbmRfb3B0cyAgID0gYXJyYXkoKTsKICBwcml2YXRlICRfZ3JvdXBzID0gJyc7CiAgcHJpdmF0ZSAkX3BhZ2VsaW1pdCA9IDEwMDAwMDsKICBwcml2YXRlICRfb2Zmc2V0ID0gMDsKICBwcml2YXRlICRfcmVzdWx0X3R5cGUgPSBzZWxmOjpSRVNVTFRfVFlQRV9JRDsKICBwcml2YXRlICRfc29ydGJ5ID0gc2VsZjo6UkVTVUxUX1NPUlRCWV9VU0VSTkFNRTsKICBwcml2YXRlICRfc29ydG9yZGVyID0gc2VsZjo6UkVTVUxUX1NPUlRPUkRFUl9BU0M7CiAgcHJpdmF0ZSAkX2RlZXAgPSBGQUxTRTsKICBwcml2YXRlICRfd2VicmVhZHkgPSBGQUxTRTsKCiAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkKICB7CiAgICAvLyBub3RoaW5nIGhlcmUuCiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X3BhZ2VsaW1pdCgkcGFnZWxpbWl0KQogIHsKICAgICRwYWdlbGltaXQgPSAoaW50KSRwYWdlbGltaXQ7CiAgICAkcGFnZWxpbWl0ID0gbWF4KDEsJHBhZ2VsaW1pdCk7CiAgICAkdGhpcy0+X3BhZ2VsaW1pdCA9ICRwYWdlbGltaXQ7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3BhZ2VsaW1pdCgpCiAgewogICAgcmV0dXJuICR0aGlzLT5fcGFnZWxpbWl0OwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIHNldF9vZmZzZXQoJG4pCiAgewogICAgJHRoaXMtPl9vZmZzZXQgPSBtYXgoMCwoaW50KSRuKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfb2Zmc2V0KCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9vZmZzZXQ7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X2RlZXAoJGZsYWcgPSBUUlVFKQogIHsKICAgICR0aGlzLT5fZGVlcCA9IChib29sKSRmbGFnOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF9kZWVwKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9kZWVwOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIHNldF93ZWJyZWFkeSgkZmxhZyA9IFRSVUUpCiAgewogICAgJHRoaXMtPl93ZWJyZWFkeSA9IChib29sKSRmbGFnOwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGdldF93ZWJyZWFkeSgpCiAgewogICAgcmV0dXJuICR0aGlzLT5fd2VicmVhZHk7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X3Jlc3VsdF90eXBlKCR0eXBlKQogIHsKICAgICAgLy8gY3VycmVudGx5IG5vdCB1c2VkIGluIHRoZSByZXN1bHRzZXQsIG1heSByZW1vdmUKICAgIHN3aXRjaCggJHR5cGUgKSB7CiAgICBjYXNlIHNlbGY6OlJFU1VMVF9UWVBFX0lEOgogICAgY2FzZSBzZWxmOjpSRVNVTFRfVFlQRV9MSVNUOgogICAgY2FzZSBzZWxmOjpSRVNVTFRfVFlQRV9GVUxMOgogICAgICAkdGhpcy0+X3Jlc3VsdF90eXBlID0gJHR5cGU7CiAgICAgIGJyZWFrOwoKICAgIGRlZmF1bHQ6CiAgICAgIHRocm93IG5ldyBDbXNFeGNlcHRpb24oJ0ludmFsaWQgcmVzdWx0IHR5cGUgJy4kdHlwZSk7CiAgICB9CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3Jlc3VsdF90eXBlKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9yZXN1bHRfdHlwZTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBzZXRfc29ydGJ5KCR2YWwpCiAgewogICAgc3dpdGNoKCAkdmFsICkgewogICAgY2FzZSBzZWxmOjpSRVNVTFRfU09SVEJZX1VTRVJOQU1FOgogICAgY2FzZSBzZWxmOjpSRVNVTFRfU09SVEJZX0NSRUFURUQ6CiAgICBjYXNlIHNlbGY6OlJFU1VMVF9TT1JUQllfRVhQSVJFUzoKICAgICAgJHRoaXMtPl9zb3J0YnkgPSAkdmFsOwogICAgICBicmVhazsKCiAgICBkZWZhdWx0OgogICAgICB0aHJvdyBuZXcgQ21zRXhjZXB0aW9uKCdJbnZhbGlkIHNvcnRieSB2YWx1ZTogJy4kdmFsKTsKICAgIH0KICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfc29ydGJ5KCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9zb3J0Ynk7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gc2V0X3NvcnRvcmRlcigkdmFsKQogIHsKICAgIHN3aXRjaCggJHZhbCApIHsKICAgIGNhc2Ugc2VsZjo6UkVTVUxUX1NPUlRPUkRFUl9BU0M6CiAgICBjYXNlIHNlbGY6OlJFU1VMVF9TT1JUT1JERVJfREVTQzoKICAgICAgJHRoaXMtPl9zb3J0b3JkZXIgPSAkdmFsOwogICAgICBicmVhazsKCiAgICBkZWZhdWx0OgogICAgICB0aHJvdyBuZXcgQ21zRXhjZXB0aW9uKCdJbnZhbGlkIHNvcnRvcmRlciB2YWx1ZTogJy4kdmFsKTsKICAgIH0KICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfc29ydG9yZGVyKCkKICB7CiAgICByZXR1cm4gJHRoaXMtPl9zb3J0b3JkZXI7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gYWRkX2FuZF9vcHQoJHR5cGUsJHZhbHVlID0gbnVsbCkKICB7CiAgICAkdGhpcy0+X2FuZF9vcHRzW10gPSBuZXcgZmV1X3VzZXJfcXVlcnlfb3B0KCR0eXBlLCR2YWx1ZSk7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gYWRkX2FuZF9vcHRfb2JqKGZldV91c2VyX3F1ZXJ5X29wdCYgJG9wdCkKICB7CiAgICAkdGhpcy0+X2FuZF9vcHRzW10gPSAkb3B0OwogIH0KCiAgcHVibGljIGZ1bmN0aW9uIGNvdW50X29wdHMoKQogIHsKICAgIHJldHVybiBjb3VudCgkdGhpcy0+X2FuZF9vcHRzKTsKICB9CgogIHB1YmxpYyBmdW5jdGlvbiBnZXRfb3B0cygpCiAgewogICAgcmV0dXJuICR0aGlzLT5fYW5kX29wdHM7CiAgfQoKICBwdWJsaWMgZnVuY3Rpb24gJmV4ZWN1dGUoKQogIHsKICAgICRycyA9IG5ldyBmZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQoJHRoaXMpOwogICAgcmV0dXJuICRyczsKICB9Cgp9IC8vIGVuZCBvZiBjbGFzcwoKCgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_user_query_resultset.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpmaW5hbCBjbGFzcyBmZXVfdXNlcl9xdWVyeV9yZXN1bHRzZXQKewogICAgcHJpdmF0ZSAkX3F1ZXJ5OwogICAgcHJpdmF0ZSAkX2V4ZWN1dGVkOwogICAgcHJpdmF0ZSAkX3JzOwogICAgcHJpdmF0ZSAkX2ZvdW5kX3Jvd3M7CiAgICBwcml2YXRlICRfZ3JvdXBzOwoKICAgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdChmZXVfdXNlcl9xdWVyeSAmJHF1ZXJ5KQogICAgewogICAgICAgICR0aGlzLT5fcXVlcnkgPSAkcXVlcnk7CiAgICAgICAgJHRoaXMtPl9leGVjdXRlKCRxdWVyeSk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBfZ2V0X2dyb3VwcygpCiAgICB7CiAgICAgICAgaWYoICFpc19hcnJheSgkdGhpcy0+X2dyb3VwcykgKSB7CiAgICAgICAgICAgICRmZXUgPSBjZ2VfdXRpbHM6OmdldF9tb2R1bGUoJ0Zyb250RW5kVXNlcnMnKTsKICAgICAgICAgICAgJHRtcCA9ICRmZXUtPkdldEdyb3VwTGlzdEZ1bGwoKTsKICAgICAgICAgICAgaWYoIGlzX2FycmF5KCR0bXApICYmIGNvdW50KCR0bXApICkgJHRoaXMtPl9ncm91cHMgPSBjZ2VfYXJyYXk6OnRvX2hhc2goJHRtcCwnZ3JvdXBuYW1lJyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkdGhpcy0+X2dyb3VwczsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIF9leGVjdXRlKCkKICAgIHsKICAgICAgICAkZGIgPSBjbXNtcygpLT5HZXREYigpOwogICAgICAgICR3aGVyZSAgPSBhcnJheSgpOwogICAgICAgICRxcGFybXMgPSBhcnJheSgpOwogICAgICAgICRqb2lucyAgPSBhcnJheSgpOwogICAgICAgICRqY291bnQgPSAwOwogICAgICAgICRoYXZpbmcgPSBudWxsOwoKICAgICAgICAkcXJlYyA9ICdTRUxFQ1QgU1FMX0NBTENfRk9VTkRfUk9XUyB1LiosY291bnQobGkudXNlcmlkKSBBUyBsb2dnZWRpbiBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyB1JzsKICAgICAgICAkam9pbnNbXSA9ICdMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIGxpIE9OIHUuaWQgPSBsaS51c2VyaWQnOwoKICAgICAgICBmb3JlYWNoKCAkdGhpcy0+X3F1ZXJ5LT5nZXRfb3B0cygpIGFzICRvcHQgKSB7CiAgICAgICAgICAgIHN3aXRjaCggJG9wdC0+Z2V0X3R5cGUoKSApIHsKICAgICAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX1VTRVJOQU1FOgogICAgICAgICAgICAgICAgJHdoZXJlW10gID0gJ3UudXNlcm5hbWUgTElLRSA/JzsKICAgICAgICAgICAgICAgICRleHByID0gc3RyX3JlcGxhY2UoJyonLCclJywkb3B0LT5nZXRfZXhwcigpKTsKICAgICAgICAgICAgICAgICRleHByID0gc3RyX3JlcGxhY2UoJyUlJywnJScsJGV4cHIpOwogICAgICAgICAgICAgICAgJHFwYXJtc1tdID0gJGV4cHI7CiAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9VU0VSTkFNRV9SRToKICAgICAgICAgICAgICAgICR3aGVyZVtdICA9ICd1LnVzZXJuYW1lIFJFR0VYUCAnLiRkYi0+cXN0cigkb3B0LT5nZXRfZXhwcigpKTsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX1BBU1NXT1JEOgogICAgICAgICAgICAgICAgJHdoZXJlW10gID0gJ3UucGFzc3dvcmQgPSA/JzsKICAgICAgICAgICAgICAgICRxcGFybXNbXSA9ICRvcHQtPmdldF9leHByKCk7CiAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9OT1RFWFBJUkVEOgogICAgICAgICAgICAgICAgJHRtcCA9ICRkYi0+RGJUaW1lU3RhbXAodGltZSgpIC0gMzApOwogICAgICAgICAgICAgICAgJHdoZXJlW10gPSAidS5leHBpcmVzID4geyR0bXB9IjsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX0VYUElSRVNfTFQ6CiAgICAgICAgICAgICAgICAkdG1wID0gJGRiLT5EYlRpbWVTdGFtcCgkb3B0LT5nZXRfZXhwcigpKTsKICAgICAgICAgICAgICAgICR3aGVyZVtdID0gInUuZXhwaXJlcyA8IHskdG1wfSI7CiAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9DUkVBVEVEX0dFOgogICAgICAgICAgICAgICAgJHRtcCA9ICRkYi0+RGJUaW1lU3RhbXAoJG9wdC0+Z2V0X2V4cHIoKSk7CiAgICAgICAgICAgICAgICAkd2hlcmVbXSA9ICJ1LmNyZWF0ZWRhdGUgPj0geyR0bXB9IjsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX0NSRUFURURfTFQ6CiAgICAgICAgICAgICAgICAkdG1wID0gJGRiLT5EYlRpbWVTdGFtcCgkb3B0LT5nZXRfZXhwcigpKTsKICAgICAgICAgICAgICAgICR3aGVyZVtdID0gInUuY3JlYXRlZGF0ZSA8IHskdG1wfSI7CiAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9HUk9VUDoKICAgICAgICAgICAgICAgICR0bXAgPSAkdGhpcy0+X2dldF9ncm91cHMoKTsKICAgICAgICAgICAgICAgIGlmKCAhaXNzZXQoJHRtcFskb3B0LT5nZXRfZXhwcigpXSkgKSB7CiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbignaW52YWxpZCB2YWx1ZScpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJGpvaW5zW10gPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIGJsIE9OIHUuaWQgPSBibC51c2VyaWQnOwogICAgICAgICAgICAgICAgJHdoZXJlW10gPSAnYmwuZ3JvdXBpZCA9ID8nOwogICAgICAgICAgICAgICAgJHFwYXJtc1tdID0gJHRtcFskb3B0LT5nZXRfZXhwcigpXVsnaWQnXTsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX0xPR0dFRElOOgogICAgICAgICAgICAgICAgJGhhdmluZyA9ICdjb3VudChsaS51c2VyaWQpID4gMCc7CiAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnlfb3B0OjpNQVRDSF9HUk9VUElEOgogICAgICAgICAgICAgICAgJGV4cHIgPSAkb3B0LT5nZXRfZXhwcigpOwogICAgICAgICAgICAgICAgaWYoIGlzX2FycmF5KCRleHByKSApIHsKICAgICAgICAgICAgICAgICAgICAkdG1wID0gYXJyYXkoKTsKICAgICAgICAgICAgICAgICAgICBmb3JlYWNoKCAkZXhwciBhcyAkb25lICkgewogICAgICAgICAgICAgICAgICAgICAgICAkb25lID0gKGludCkkb25lOwogICAgICAgICAgICAgICAgICAgICAgICBpZiggJG9uZSA8IDEgKSBjb250aW51ZTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYoICFpbl9hcnJheSgkb25lLCR0bXApICkgJHRtcFtdID0gJG9uZTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYoIGNvdW50KCR0bXApID09IDAgKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCdObyB2YWxpZCBncm91cCBpZHMgc3BlY2lmaWVkJyk7CiAgICAgICAgICAgICAgICAgICAgJGpvaW5zW10gPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIGJsIE9OIHUuaWQgPSBibC51c2VyaWQnOwogICAgICAgICAgICAgICAgICAgICR3aGVyZVtdID0gJ2JsLmdyb3VwaWQgSU4gKCcuaW1wbG9kZSgnLCcsJHRtcCkuJyknOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgJGpvaW5zW10gPSAnTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIGJsIE9OIHUuaWQgPSBibC51c2VyaWQnOwogICAgICAgICAgICAgICAgICAgICR3aGVyZVtdID0gJ2JsLmdyb3VwaWQgPSA/JzsKICAgICAgICAgICAgICAgICAgICAkcXBhcm1zW10gPSAkZXhwcjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX1VTRVJOQU1FTElTVDoKICAgICAgICAgICAgICAgICR0bXAgPSAkb3B0LT5nZXRfZXhwcigpOwogICAgICAgICAgICAgICAgaWYoICFpc19hcnJheSgkdG1wKSApICR0bXAgPSBleHBsb2RlKCcsJywkdG1wKTsKICAgICAgICAgICAgICAgICR0bXAyID0gYXJyYXkoKTsKICAgICAgICAgICAgICAgIGZvcmVhY2goICR0bXAgYXMgJG9uZSApIHsKICAgICAgICAgICAgICAgICAgICAkdG1wMltdID0gIiciLnRyaW0oJG9uZSkuIiciOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJHRtcDIgPSBhcnJheV91bmlxdWUoJHRtcDIpOwogICAgICAgICAgICAgICAgJHdoZXJlW10gPSAndS51c2VybmFtZSBJTiAoJy5pbXBsb2RlKCcsJywkdG1wMikuJyknOwogICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICBjYXNlIGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfVVNFUkxJU1Q6CiAgICAgICAgICAgICAgICAkdG1wID0gJG9wdC0+Z2V0X2V4cHIoKTsKICAgICAgICAgICAgICAgIGlmKCAhaXNfYXJyYXkoJHRtcCkgKSAkdG1wID0gZXhwbG9kZSgnLCcsJHRtcCk7CiAgICAgICAgICAgICAgICAkdG1wMiA9IGFycmF5KCk7CiAgICAgICAgICAgICAgICBmb3JlYWNoKCAkdG1wIGFzICRvbmUgKSB7CiAgICAgICAgICAgICAgICAgICAgaWYoIChpbnQpJG9uZSA8IDEgKSBjb250aW51ZTsKICAgICAgICAgICAgICAgICAgICAkdG1wMltdID0gKGludCkkb25lOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJHRtcDIgPSBhcnJheV91bmlxdWUoJHRtcDIpOwogICAgICAgICAgICAgICAgJHdoZXJlW10gPSAndS5pZCBJTiAoJy5pbXBsb2RlKCcsJywkdG1wMikuJyknOwogICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICBjYXNlIGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfUFJPUEVSVFk6CiAgICAgICAgICAgICAgICAkZmV1ID0gY2dlX3V0aWxzOjpnZXRfbW9kdWxlKCdGcm9udEVuZFVzZXJzJyk7CiAgICAgICAgICAgICAgICAkZGVmbnMgPSAkZmV1LT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgICAgICAgICAgICAgICBpZiggIWluX2FycmF5KCRvcHQtPmdldF9leHByKCksYXJyYXlfa2V5cygkZGVmbnMpKSApIHRocm93IG5ldyBFeGNlcHRpb24oJ2ludmFsaWQgdmFsdWUnKTsKICAgICAgICAgICAgICAgICRqY291bnQrKzsKICAgICAgICAgICAgICAgICRqb2luc1tdID0gJ0xFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBwcnskamNvdW50fQogICAgICAgICAgICAgICAgICAgIE9OIHByeyRqY291bnR9LnVzZXJpZCA9IHUuaWQiOwogICAgICAgICAgICAgICAgJHdoZXJlW10gPSAicHJ7JGpjb3VudH0udGl0bGUgPSAnIi4kb3B0LT5nZXRfZXhwcigpLiInIjsKICAgICAgICAgICAgICAgIGlmKCAkb3B0LT5nZXRfb3B0KCkgKSB7CiAgICAgICAgICAgICAgICAgICAgaWYoIHN0cnN0cigkb3B0LT5nZXRfb3B0KCksJyonKSA9PT0gRkFMU0UgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR3aGVyZVtdID0gInByeyRqY291bnR9LmRhdGEgPSAnIi4kb3B0LT5nZXRfb3B0KCkuIiciOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgJHdoZXJlW10gPSAicHJ7JGpjb3VudH0uZGF0YSBMSUtFICciLnN0cl9yZXBsYWNlKCcqJywnJScsJG9wdC0+Z2V0X29wdCgpKS4iJyI7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICBjYXNlIGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfUFJPUEVSVFlfUkU6CiAgICAgICAgICAgICAgICAkZmV1ID0gY2dlX3V0aWxzOjpnZXRfbW9kdWxlKCdGcm9udEVuZFVzZXJzJyk7CiAgICAgICAgICAgICAgICAkZGVmbnMgPSAkZmV1LT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgICAgICAgICAgICAgICBpZiggIWluX2FycmF5KCRvcHQtPmdldF9leHByKCksYXJyYXlfa2V5cygkZGVmbnMpKSApIHsKICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKCdpbnZhbGlkIHZhbHVlJyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAkamNvdW50Kys7CiAgICAgICAgICAgICAgICAkam9pbnNbXSA9ICdMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgcHJ7JGpjb3VudH0KICAgICAgICAgICAgICAgICAgICAgIE9OIHByeyRqY291bnR9LnVzZXJpZCA9IHUuaWQKICAgICAgICAgICAgICAgICAgICAgQU5EIHByeyRqY291bnR9LnRpdGxlID0gJyIuJG9wdC0+Z2V0X2V4cHIoKS4iJyI7CiAgICAgICAgICAgICAgICAkd2hlcmVbXSA9ICJwcnskamNvdW50fS5kYXRhIFJFR0VYUCAiLiRkYi0+cXN0cigkb3B0LT5nZXRfb3B0KCkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIC8vIGFzc2VtYmx5CiAgICAgICAgaWYoIGNvdW50KCRqb2lucykgKSAkcXJlYyAuPSAnICcuaW1wbG9kZSgnICcsJGpvaW5zKTsKICAgICAgICBpZiggY291bnQoJHdoZXJlKSApICRxcmVjIC49ICJcbldIRVJFICIuaW1wbG9kZSgnIEFORCAnLCR3aGVyZSk7CgogICAgICAgICRvcmRlcmJ5ID0gJ3VzZXJuYW1lJzsKICAgICAgICBzd2l0Y2goICR0aGlzLT5fcXVlcnktPmdldF9zb3J0YnkoKSApIHsKICAgICAgICBjYXNlIGZldV91c2VyX3F1ZXJ5OjpSRVNVTFRfU09SVEJZX1VTRVJOQU1FOgogICAgICAgICAgICAkb3JkZXJieSA9ICd1c2VybmFtZSc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUQllfQ1JFQVRFRDoKICAgICAgICAgICAgJG9yZGVyYnkgPSAnY3JlYXRlZGF0ZSc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUQllfRVhQSVJFUzoKICAgICAgICAgICAgJG9yZGVyYnkgPSAnZXhwaXJlcyc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KCiAgICAgICAgc3dpdGNoKCAkdGhpcy0+X3F1ZXJ5LT5nZXRfc29ydG9yZGVyKCkgKSB7CiAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRPUkRFUl9BU0M6CiAgICAgICAgICAgICRvcmRlcmJ5IC49ICcgQVNDJzsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSBmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRPUkRFUl9ERVNDOgogICAgICAgICAgICAkb3JkZXJieSAuPSAnIERFU0MnOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CgogICAgICAgICRxcmVjIC49ICcgR1JPVVAgQlkgdS5pZCc7CiAgICAgICAgaWYoICRoYXZpbmcgKSAkcXJlYyAuPSAnIEhBVklORyAnLiRoYXZpbmc7CiAgICAgICAgJHFyZWMgLj0gJyBPUkRFUiBCWSAnLiRvcmRlcmJ5OwoKICAgICAgICAkdGhpcy0+X3JzID0gJGRiLT5TZWxlY3RMaW1pdCgkcXJlYywkdGhpcy0+X3F1ZXJ5LT5nZXRfcGFnZWxpbWl0KCksJHRoaXMtPl9xdWVyeS0+Z2V0X29mZnNldCgpLCRxcGFybXMpOwogICAgICAgIGlmKCAhJHRoaXMtPl9ycyApIHRocm93IG5ldyBFeGNlcHRpb24oJ0lOVEVSTkFMIEVSUk9SOiBRdWVyeSBmYWlsZWQgLSAnLiRkYi0+c3FsLicgLS0gJy4kZGItPkVycm9yTXNnKCkpOwogICAgICAgICR0aGlzLT5fZm91bmRfcm93cyA9ICRkYi0+R2V0T25lKCdTRUxFQ1QgRk9VTkRfUk9XUygpJyk7CgogICAgICAgIC8vIHRoaXMgcHJlbG9hZHMgdGhlIHVzZXIgaW5mby4KICAgICAgICAkdWlkcyA9IGFycmF5KCk7CiAgICAgICAgd2hpbGUoICEkdGhpcy0+X3JzLT5FT0YgKSB7CiAgICAgICAgICAgIGZldV91c2VyX2NhY2hlOjpzZXRfbmV3X3VzZXIoJHRoaXMtPl9ycy0+ZmllbGRzKTsKICAgICAgICAgICAgJHVpZHNbXSA9ICR0aGlzLT5fcnMtPmZpZWxkc1snaWQnXTsKICAgICAgICAgICAgJHRoaXMtPl9ycy0+TW92ZU5leHQoKTsKICAgICAgICB9CiAgICAgICAgJHRoaXMtPl9ycy0+TW92ZUZpcnN0KCk7CgogICAgICAgIGlmKCBjb3VudCgkdWlkcykgJiYgJHRoaXMtPl9xdWVyeS0+Z2V0X2RlZXAoKSApIHsKICAgICAgICAgICAgLy8gdXNlcnMgYXJlIGFscmVhZHkgbG9hZGVkIChzaGFsbG93KS4uLiB0aGlzIHdpbGwgZ2V0IHByb3BlcnR5IGluZm9ybWF0aW9uLgogICAgICAgICAgICBmZXVfdXNlcl9jYWNoZTo6bG9hZF91c2VycygkdWlkcyxUUlVFKTsKICAgICAgICB9CgogICAgICAgICR0aGlzLT5fZXhlY3V0ZWQgPSBUUlVFOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBSZWNvcmRDb3VudCgpCiAgICB7CiAgICAgICAgaWYoICR0aGlzLT5fcnMgKSByZXR1cm4gJHRoaXMtPl9ycy0+UmVjb3JkQ291bnQoKTsKICAgICAgICByZXR1cm4gMDsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gTW92ZU5leHQoKQogICAgewogICAgICAgIGlmKCAkdGhpcy0+X3JzICkgcmV0dXJuICR0aGlzLT5fcnMtPk1vdmVOZXh0KCk7CiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBNb3ZlRmlyc3QoKQogICAgewogICAgICAgIGlmKCAkdGhpcy0+X3JzICkgcmV0dXJuICR0aGlzLT5fcnMtPk1vdmVGaXJzdCgpOwogICAgICAgIHJldHVybiBGQUxTRTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gRU9GKCkKICAgIHsKICAgICAgICBpZiggJHRoaXMtPl9ycyApIHJldHVybiAkdGhpcy0+X3JzLT5FT0YoKTsKICAgICAgICByZXR1cm4gVFJVRTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gQ2xvc2UoKQogICAgewogICAgICAgIGlmKCAkdGhpcy0+X3JzICkgcmV0dXJuICR0aGlzLT5fcnMtPkNsb3NlKCk7CiAgICAgICAgcmV0dXJuIFRSVUU7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIF9fZ2V0KCRrZXkpCiAgICB7CiAgICAgICAgaWYoICRrZXkgPT0gJ0VPRicgJiYgJHRoaXMtPl9ycyApIHJldHVybiAkdGhpcy0+X3JzLT5FT0Y7CgogICAgICAgIGlmKCAka2V5ID09ICdmaWVsZHMnICYmICR0aGlzLT5fcnMgKSB7CiAgICAgICAgICAgICRyZWMgPSBmZXVfdXNlcl9jYWNoZTo6Z2V0X3VzZXIoJHRoaXMtPl9ycy0+ZmllbGRzWydpZCddKTsKICAgICAgICAgICAgaWYoICR0aGlzLT5fcXVlcnktPmdldF93ZWJyZWFkeSgpICkgewogICAgICAgICAgICAgICAgJGZldSA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnRnJvbnRFbmRVc2VycycpOwogICAgICAgICAgICAgICAgaWYoICRmZXUtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJykgKSB7CiAgICAgICAgICAgICAgICAgICAgJHJlY1snZW1haWwnXSA9ICRyZWNbJ3VzZXJuYW1lJ107CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB1bnNldCgkcmVjWydwYXNzd29yZCddKTsKICAgICAgICAgICAgICAgICRkZWZucyA9ICRmZXUtPkdldFByb3BlcnR5RGVmbnMoKTsKICAgICAgICAgICAgICAgIGlmKCBpc3NldCgkcmVjWydmcHJvcHMnXSkgKSB7CiAgICAgICAgICAgICAgICAgICAgZm9yZWFjaCggJHJlY1snZnByb3BzJ10gYXMgJiRvbmUgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKCAhJGZldS0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVfaXNfZW1haWwnKSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKCAkZGVmbnNbJG9uZVsndGl0bGUnXV1bJ3R5cGUnXSA9PSBGcm9udEVuZFVzZXJzOjpGSUVMRFRZUEVfRU1BSUwgJiYgIWlzc2V0KCRyZWNbJ2VtYWlsJ10pICkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRyZWNbJ2VtYWlsJ10gPSAkb25lWydkYXRhJ107CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgaWYoICRkZWZuc1skb25lWyd0aXRsZSddXVsndHlwZSddID09IEZyb250RW5kVXNlcnM6OkZJRUxEVFlQRV9JTUFHRSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGdldCB0aGUgZnVsbCB1cmwuCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY29uZmlnID0gXGNtc19jb25maWc6OmdldF9pbnN0YW5jZSgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJG9uZVsndXJsJ10gPSAkY29uZmlnWyd1cGxvYWRzX3VybCddLicvZmV1c2Vycy8nLiRvbmVbJ2RhdGEnXTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBpZiggIWlzc2V0KCRyZWNbJ2VtYWlsJ10pICYmIGlzX2VtYWlsKCRyZWNbJ3VzZXJuYW1lJ10pICkgJHJlY1snZW1haWwnXSA9ICRyZWNbJ3VzZXJuYW1lJ107CiAgICAgICAgICAgIHJldHVybiAkcmVjOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2ZvdW5kX3Jvd3MoKQogICAgewogICAgICAgIGlmKCAhJHRoaXMtPl9ycyApIHJldHVybjsKICAgICAgICByZXR1cm4gJHRoaXMtPl9mb3VuZF9yb3dzOwogICAgfQoKfSAvLyBjbGFzcwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/class.feu_utils.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpmaW5hbCBjbGFzcyBmZXVfdXRpbHMKewogICAgcHJpdmF0ZSBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpIHt9CiAgICBwcml2YXRlIHN0YXRpYyAkX21vZDsKCiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uICZnZXRfbW9kKCkKICAgIHsKICAgICAgICBpZiggIXNlbGY6OiRfbW9kICkgc2VsZjo6JF9tb2QgPSBcY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKTsKICAgICAgICByZXR1cm4gc2VsZjo6JF9tb2Q7CiAgICB9CgogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiB1c2luZ19zdGRfY29uc3VtZXIoKQogICAgewogICAgICAgICRmZXUgPSBzZWxmOjpnZXRfbW9kKCk7CiAgICAgICAgJG5hbWUgPSAkZmV1LT5HZXRQcmVmZXJlbmNlKCdhdXRoX21vZHVsZScsJycpOwogICAgICAgIGlmKCAkbmFtZSA9PSAnJyB8fCAkbmFtZSA9PSAnX19CVUlMVElOX18nICkgcmV0dXJuIFRSVUU7CiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gJmdldF9zdGRfY29uc3VtZXIoKQogICAgewogICAgICAgICRvYmogPSBuZXcgZmV1X3N0ZF9jb25zdW1lcigpOwogICAgICAgIHJldHVybiAkb2JqOwogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gJmdldF9hdXRoX2NvbnN1bWVyKCkKICAgIHsKICAgICAgICAkZmV1ID0gc2VsZjo6Z2V0X21vZCgpOwogICAgICAgICRuYW1lID0gJGZldS0+R2V0UHJlZmVyZW5jZSgnYXV0aF9tb2R1bGUnLCcnKTsKICAgICAgICBpZiggJG5hbWUgPT0gJycgfHwgJG5hbWUgPT0gJ19fQlVJTFRJTl9fJyApIHsKICAgICAgICAgICAgcmV0dXJuIHNlbGY6OmdldF9zdGRfY29uc3VtZXIoKTsKICAgICAgICB9CgogICAgICAgICRtb2R1bGUgPSBjZ2VfdXRpbHM6OmdldF9tb2R1bGUoJG5hbWUpOwogICAgICAgICRyZXMgPSBudWxsOwogICAgICAgIGlmKCBpc19vYmplY3QoJG1vZHVsZSkgKSB7CiAgICAgICAgICAgICRvYmogPSAkbW9kdWxlLT5HZXRGRVVBdXRoQ29uc3VtZXIoKTsKICAgICAgICAgICAgcmV0dXJuICRvYmo7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gc2VsZjo6Z2V0X3N0ZF9jb25zdW1lcigpOwogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gZ2V0X3VzZXJsaXN0KCRub25lID0gbnVsbCkKICAgIHsKICAgICAgICBzdGF0aWMgJGxpc3Q7CiAgICAgICAgaWYoICFpc19hcnJheSgkbGlzdCkgKSB7CiAgICAgICAgICAgICRsaXN0ID0gYXJyYXkoKTsKCiAgICAgICAgICAgIC8vIG5vdyBhZGQgaW4gZmV1IHVzZXJzCiAgICAgICAgICAgICRmZXUgPSBzZWxmOjpnZXRfbW9kKCk7CiAgICAgICAgICAgIGlmKCBpc19vYmplY3QoJGZldSkgKSB7CiAgICAgICAgICAgICAgICAkcXVlcnkgPSBuZXcgXGZldV91c2VyX3F1ZXJ5OwogICAgICAgICAgICAgICAgJHF1ZXJ5LT5hZGRfYW5kX29wdChcZmV1X3VzZXJfcXVlcnlfT1BUOjpNQVRDSF9OT1RFWFBJUkVEKTsKICAgICAgICAgICAgICAgICRxdWVyeS0+c2V0X3NvcnRieShcZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUQllfVVNFUk5BTUUpOwogICAgICAgICAgICAgICAgJHF1ZXJ5LT5zZXRfc29ydG9yZGVyKFxmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRPUkRFUl9BU0MpOwogICAgICAgICAgICAgICAgJHJzID0gJHF1ZXJ5LT5leGVjdXRlKCk7CiAgICAgICAgICAgICAgICBpZiggJHJzLT5nZXRfZm91bmRfcm93cygpID4gMCAmJiAkbm9uZSApIHsKICAgICAgICAgICAgICAgICAgICAkbGlzdFsnJ10gPSAkZmV1LT5MYW5nKCdub25lJyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB3aGlsZSggISRycy0+RU9GKCkgKSB7CiAgICAgICAgICAgICAgICAgICAgJGxpc3RbJHJzLT5maWVsZHNbJ2lkJ11dID0gJHJzLT5maWVsZHNbJ3VzZXJuYW1lJ107CiAgICAgICAgICAgICAgICAgICAgJHJzLT5Nb3ZlTmV4dCgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAkbGlzdDsKICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldF90ZW1wbGF0ZSgkcGFyYW1zLCRrZXksJHR5cGVuYW1lKQogICAgewogICAgICAgIGlmKCAka2V5ICkgewogICAgICAgICAgICAkdHBsID0gXGNnZV9wYXJhbTo6Z2V0X3N0cmluZygkcGFyYW1zLCRrZXkpOwogICAgICAgICAgICBpZiggJHRwbCApIHJldHVybiAkdHBsOwogICAgICAgIH0KCiAgICAgICAgJHRwbCA9IFxDbXNMYXlvdXRUZW1wbGF0ZTo6bG9hZF9kZmx0X2J5X3R5cGUoJHR5cGVuYW1lKTsKICAgICAgICBpZiggJHRwbCApIHJldHVybiAkdHBsLT5nZXRfbmFtZSgpOwoKICAgICAgICBhdWRpdCgnJywnRnJvbnRFbmRVc2VycycsJ05vIGRlZmF1bHQgdGVtcGxhdGUgb2YgdHlwZSAnLiR0eXBlbmFtZS4nIGZvdW5kJyk7CiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgIC8qKgogICAgICogQGlnbm9yZQogICAgICogQGludGVybmFsCiAgICAgKi8KICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gX0Rpc3BsYXlBZG1pblVzZXJQYWdlKCAkaWQsICYkcGFyYW1zLCAkcmV0dXJuaWQgKQogICAgewogICAgICAgICRtb2QgPSBzZWxmOjpnZXRfbW9kKCk7CiAgICAgICAgJHRwbCA9ICRtb2QtPkNyZWF0ZVNtYXJ0eVRlbXBsYXRlKCdhZGR1c2VyMS50cGwnKTsKCiAgICAgICAgLy8gcG9wdWxhdGUgdGhlIHRlbXBsYXRlCiAgICAgICAgJGVkaXRpbmcgPSAwOwogICAgICAgICRoaWRkZW4gPSBhcnJheSgpOwogICAgICAgICR1c2VybmFtZSA9ICcnOwogICAgICAgICRwYXNzd29yZCA9ICcnOwogICAgICAgICRyZXBlYXRwYXNzd29yZCA9ICcnOwogICAgICAgICRleHBpcmVzID0gJyc7CiAgICAgICAgJHVpbmZvID0gbnVsbDsKICAgICAgICAkdHBsLT5hc3NpZ24oJ29yaWdwYXJhbXMnLCRwYXJhbXMpOwoKICAgICAgICBpZiggaXNzZXQoJHBhcmFtc1sncmV0dXJudG8nXSkgKSAkaGlkZGVuWydyZXR1cm50byddID0gJHBhcmFtc1sncmV0dXJudG8nXTsKICAgICAgICBpZiggaXNzZXQoICRwYXJhbXNbJ2FjdGlvbiddICkgJiYgKCRwYXJhbXNbJ2FjdGlvbiddID09ICdlZGl0dXNlcid8fCAkcGFyYW1zWydhY3Rpb24nXSA9PSAnZG9fZWRpdHVzZXIxJyApICkgewogICAgICAgICAgICAkZWRpdGluZyA9IDE7CiAgICAgICAgICAgICRoaWRkZW5bJ3VzZXJfaWQnXSA9ICRwYXJhbXNbJ3VzZXJfaWQnXTsKICAgICAgICAgICAgJHVpbmZvID0gJG1vZC0+R2V0VXNlckluZm8oJHBhcmFtc1sndXNlcl9pZCddKTsKICAgICAgICAgICAgJHRwbC0+YXNzaWduKCd0aXRsZScsICRtb2QtPkxhbmcoJ2VkaXR1c2VyJykpOwogICAgICAgICAgICAkdHBsLT5hc3NpZ24oJ3N0YXJ0Zm9ybScsJG1vZC0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwnZG9fZWRpdHVzZXIxJywkcmV0dXJuaWQpKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICR0cGwtPmFzc2lnbigndGl0bGUnLCAkbW9kLT5MYW5nKCdhZGR1c2VyJykpOwogICAgICAgICAgICAkdHBsLT5hc3NpZ24oJ3N0YXJ0Zm9ybScsJG1vZC0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwnZG9fYWRkdXNlcjEnLCRyZXR1cm5pZCkpOwogICAgICAgIH0KCiAgICAgICAgaWYoICFlbXB0eSgkaGlkZGVuKSApIHsKICAgICAgICAgICAgJHR4dCA9ICcnOwogICAgICAgICAgICBmb3JlYWNoKCAkaGlkZGVuIGFzICRrZXkgPT4gJHZhbHVlICkgewogICAgICAgICAgICAgICAgJHR4dCAuPSAkbW9kLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsJGtleSwkdmFsdWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgICR0cGwtPmFzc2lnbignaGlkZGVuJywkdHh0KTsKICAgICAgICB9CgogICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydlcnJvciddKSApICR0cGwtPmFzc2lnbignZXJyb3InLCRwYXJhbXNbJ2Vycm9yJ10pOwogICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydtZXNzYWdlJ10pICkgJHRwbC0+YXNzaWduKCdtZXNzYWdlJywkcGFyYW1zWydtZXNzYWdlJ10pOwoKICAgICAgICBpZiggJG1vZC0+R2V0UHJlZmVyZW5jZSgndXNlX3JhbmRvbXVzZXJuYW1lJywwKSA9PSAxICkgJHVzZXJuYW1lID0gJG1vZC0+R2VuZXJhdGVSYW5kb21Vc2VybmFtZSgpOwogICAgICAgIC8vJGRpc2FibGVkID0gKGludCkgY2dlX3V0aWxzOjpnZXRfcGFyYW0oJHBhcmFtcywnaW5wdXRfZGlzYWJsZWQnKTsKICAgICAgICAvLyRmb3JjZV9uZXdwdyA9IChpbnQpIGNnZV91dGlsczo6Z2V0X3BhcmFtKCRwYXJhbXMsJ2lucHV0X2ZvcmNlX25ld3B3Jyk7CiAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3VzZXJuYW1lJ10pICkgICR1c2VybmFtZSA9IHRyaW0oJHBhcmFtc1snaW5wdXRfdXNlcm5hbWUnXSk7CiAgICAgICAgaWYoIGlzc2V0KCRwYXJhbXNbJ2lucHV0X3Bhc3N3b3JkJ10pICkgJHBhc3N3b3JkID0gdHJpbSgkcGFyYW1zWydpbnB1dF9wYXNzd29yZCddKTsKICAgICAgICBpZiggaXNzZXQoJHBhcmFtc1snaW5wdXRfcmVwZWF0cGFzc3dvcmQnXSkgKSAkcmVwZWF0cGFzc3dvcmQgPSB0cmltKCRwYXJhbXNbJ2lucHV0X3JlcGVhdHBhc3N3b3JkJ10pOwogICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydpbnB1dF9leHBpcmVzJ10pICkgJGV4cGlyZXMgPSB0cmltKCRwYXJhbXNbJ2lucHV0X2V4cGlyZXMnXSk7CgogICAgICAgICR0cGwtPmFzc2lnbignZW5kZm9ybScsICRtb2QtPkNyZWF0ZUZvcm1FbmQoKSk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdzdWJtaXQnLCAkbW9kLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdzdWJtaXQnLCAkbW9kLT5MYW5nKCduZXh0JykpKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2NhbmNlbCcsICRtb2QtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ2NhbmNlbCcsICRtb2QtPkxhbmcoJ2NhbmNlbCcpKSk7CgogICAgICAgICRhdXRoX2NvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwogICAgICAgICRhZGR0ZXh0ID0gJyc7CiAgICAgICAgaWYoICRlZGl0aW5nICYmICR1aW5mb1sxXVsnbm9uc3RkJ10gKSB7CiAgICAgICAgICAgICRhZGR0ZXh0ID0gJ3JlYWRvbmx5PSJyZWFkb25seSInOwogICAgICAgICAgICAkdHBsLT5hc3NpZ24oJ3VzZXJuYW1lX3JlYWRvbmx5JywxKTsKICAgICAgICB9CiAgICAgICAgJHRwbC0+YXNzaWduKCdwcm9tcHRfdXNlcm5hbWUnLCRhdXRoX2NvbnN1bWVyLT5nZXRfdXNlcm5hbWVfcHJvbXB0KCkpOwogICAgICAgICR0cGwtPmFzc2lnbigndW5mbGRsZW4nLCRtb2QtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJykpOwogICAgICAgICR0cGwtPmFzc2lnbignbWF4X3VuZmxkbGVuJywkbW9kLT5HZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnKSk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdwd2ZsZGxlbicsJG1vZC0+R2V0UHJlZmVyZW5jZSgncGFzc3dvcmRmbGRsZW5ndGgnKSk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdtYXhfcHdmbGRsZW4nLCRtb2QtPkdldFByZWZlcmVuY2UoJ21heF9wYXNzd29yZGxlbmd0aCcpKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2lucHV0X3VzZXJuYW1lJywgJG1vZC0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2lucHV0X3VzZXJuYW1lJywkdXNlcm5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJG1vZC0+R2V0UHJlZmVyZW5jZSgndXNlcm5hbWVmbGRsZW5ndGgnKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkbW9kLT5HZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkYWRkdGV4dCkpOwoKICAgICAgICAkYWRkdGV4dCA9ICcnOwogICAgICAgIGlmKCAkZWRpdGluZyAmJiAkdWluZm9bMV1bJ25vbnN0ZCddICkgewogICAgICAgICAgICAkYWRkdGV4dCA9ICdyZWFkb25seT0icmVhZG9ubHkiJzsKICAgICAgICAgICAgJHRwbC0+YXNzaWduKCdwYXNzd29yZF9yZWFkb25seScsMSk7CiAgICAgICAgfQogICAgICAgICR0cGwtPmFzc2lnbigncHJvbXB0X3Bhc3N3b3JkJywkbW9kLT5MYW5nKCdwYXNzd29yZCcpKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ2lucHV0X3Bhc3N3b3JkJywKICAgICAgICAkbW9kLT5DcmVhdGVJbnB1dFBhc3N3b3JkKCRpZCwgJ2lucHV0X3Bhc3N3b3JkJywgJHBhc3N3b3JkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRtb2QtPkdldFByZWZlcmVuY2UoJ3Bhc3N3b3JkZmxkbGVuZ3RoJyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJG1vZC0+R2V0UHJlZmVyZW5jZSgnbWF4X3Bhc3N3b3JkbGVuZ3RoJyksCiAgICAgICAgJGFkZHRleHQpKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3Byb21wdF9yZXBlYXRwYXNzd29yZCcsJG1vZC0+TGFuZyAoJ3JlcGVhdHBhc3N3b3JkJykpOwogICAgICAgICR0cGwtPmFzc2lnbignaW5wdXRfcmVwZWF0cGFzc3dvcmQnLAogICAgICAgICRtb2QtPkNyZWF0ZUlucHV0UGFzc3dvcmQoJGlkLCAnaW5wdXRfcmVwZWF0cGFzc3dvcmQnLCAkcmVwZWF0cGFzc3dvcmQsCiAgICAgICAgJG1vZC0+R2V0UHJlZmVyZW5jZSgncGFzc3dvcmRmbGRsZW5ndGgnKSwKICAgICAgICAkbW9kLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnKSwKICAgICAgICAkYWRkdGV4dCkpOwoKICAgICAgICBpZiggJGVkaXRpbmcgPT0gMSApIHsKICAgICAgICAgICAgJHRwbC0+YXNzaWduKCdpbmZvX3Bhc3N3b3JkJywkbW9kLT5MYW5nKCdpbmZvX2FkbWluX3Bhc3N3b3JkJykpOwogICAgICAgICAgICAkdHBsLT5hc3NpZ24oJ2luZm9fcmVwZWF0cGFzc3dvcmQnLCRtb2QtPkxhbmcoJ2luZm9fYWRtaW5fcmVwZWF0cGFzc3dvcmQnKSk7CiAgICAgICAgfQoKICAgICAgICAkdHBsLT5hc3NpZ24oJ3Byb21wdF9leHBpcmVzJywkbW9kLT5MYW5nKCdleHBpcmVzJykpOwogICAgICAgICR0cGwtPmFzc2lnbignZXhwaXJlc19kYXRlcHJlZml4JywkaWQuJ2V4cGlyZXNkYXRlXycpOwogICAgICAgICR0bXAgPSAkbW9kLT5HZXRQcmVmZXJlbmNlKCdleHBpcmVhZ2VfbW9udGhzJyw1MjApOwogICAgICAgICRleHBpcmVzZGF0ZSA9IHN0cnRvdGltZSgiK3skdG1wfSBtb250aHMiLCB0aW1lKCkpOwogICAgICAgIGlmKCBpc3NldCggJHBhcmFtc1snaW5wdXRfZXhwaXJlc2RhdGUnXSApICkgJGV4cGlyZXNkYXRlID0gJHBhcmFtc1snaW5wdXRfZXhwaXJlc2RhdGUnXTsKICAgICAgICAkdHBsLT5hc3NpZ24gKCdleHBpcmVzZGF0ZScsICRleHBpcmVzZGF0ZSApOwoKICAgICAgICAvLyBkaXNwbGF5IGFuZCBlZGl0IGdyb3VwcwogICAgICAgIGlmKCAkbW9kLT5fSGFzU3VmZmljaWVudFBlcm1pc3Npb25zKCdzdHJpY3RfZWRpdGdyb3VwcycpICkgewogICAgICAgICAgICBpZiggaXNzZXQoJHBhcmFtc1snbWVtYmVyb2YnXSApICkgewogICAgICAgICAgICAgICAgJHRtcCA9IChpbnQpJHBhcmFtc1snbWVtYmVyb2YnXTsKICAgICAgICAgICAgICAgICRwYXJhbXNbJ21lbWJlcm9mXycuJHRtcF0gPSAxOwogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBub3cgZGlzcGxheSBhIGxpc3Qgb2YgZ3JvdXBzIHRoYXQgdGhpcyB1c2VyIG1heSBvcHRpb25hbGx5IGJlIGluCiAgICAgICAgICAgICR0cGwtPmFzc2lnbiggJ2lkdGV4dCcsICRtb2QtPkxhbmcoJ2lkJykgKTsKICAgICAgICAgICAgJHRwbC0+YXNzaWduKCAnbmFtZXRleHQnLCAkbW9kLT5MYW5nKCduYW1lJykgKTsKICAgICAgICAgICAgJHRwbC0+YXNzaWduKCAnZGVzY3RleHQnLCAkbW9kLT5MYW5nKCdkZXNjcmlwdGlvbicpICk7CgogICAgICAgICAgICAkZ3JvdXBzID0gJG1vZC0+R2V0R3JvdXBMaXN0RnVsbCgpOwogICAgICAgICAgICAkY2hlY2tlZCA9IC0xOwogICAgICAgICAgICBpZiggJG1vZC0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZV9vbmVncm91cCcpICYmICBjb3VudCgkZ3JvdXBzKSA9PSAxICkgewogICAgICAgICAgICAgICAgJGtleXMgPSBhcnJheV9rZXlzKCRncm91cHMpOwogICAgICAgICAgICAgICAgJGNoZWNrZWQgPSAka2V5c1swXTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJHJvd2FycmF5ID0gYXJyYXkoKTsKICAgICAgICAgICAgJHJvd2NsYXNzID0gJ3JvdzEnOwogICAgICAgICAgICBmb3JlYWNoKCAkZ3JvdXBzIGFzICRncm91cCApIHsKICAgICAgICAgICAgICAgICRvbmVyb3cgPSBuZXcgU3RkQ2xhc3MoKTsKICAgICAgICAgICAgICAgICRvbmVyb3ctPmlkID0gJGdyb3VwWydpZCddOwogICAgICAgICAgICAgICAgJG9uZXJvdy0+bmFtZSA9ICRncm91cFsnZ3JvdXBuYW1lJ107CiAgICAgICAgICAgICAgICAkb25lcm93LT5kZXNjID0gJGdyb3VwWydncm91cGRlc2MnXTsKICAgICAgICAgICAgICAgIGlmKCBpc3NldCgkcGFyYW1zWydtZW1iZXJvZl8nLiRncm91cFsnaWQnXV0pICkgJGNoZWNrZWQgPSAkcGFyYW1zWydtZW1iZXJvZl8nLiRncm91cFsnaWQnXV07CiAgICAgICAgICAgICAgICAkb25lcm93LT5tZW1iZXIgPSAkbW9kLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwnbWVtYmVyb2ZfJy4kZ3JvdXBbJ2lkJ10sICRncm91cFsnaWQnXSwkY2hlY2tlZCk7CiAgICAgICAgICAgICAgICAkb25lcm93LT5yb3djbGFzcyA9ICRyb3djbGFzczsKCiAgICAgICAgICAgICAgICAkcm93YXJyYXlbXSA9ICRvbmVyb3c7CiAgICAgICAgICAgICAgICAoJHJvd2NsYXNzID09ICJyb3cxIiA/ICRyb3djbGFzcyA9ICJyb3cyIiA6ICRyb3djbGFzcyA9ICJyb3cxIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJHRwbC0+YXNzaWduKCdpdGVtY291bnQnLGNvdW50KCRyb3dhcnJheSkpOwogICAgICAgICAgICAkdHBsLT5hc3NpZ24oJ2l0ZW1zJywkcm93YXJyYXkpOwogICAgICAgIH0KCiAgICAgICAgJHRwbC0+YXNzaWduKCdwcm9wYWRkJywgJG1vZC0+Q3JlYXRlSW5wdXRTdWJtaXQoICRpZCwgJ3Byb3BhZGQnLCRtb2QtPkxhbmcoJ2FkZCcpKSk7CiAgICAgICAgJHRwbC0+YXNzaWduKCdncm91cHN0aXRsZScsICRtb2QtPkxhbmcoJ2dyb3VwcycpKTsKICAgICAgICAkdHBsLT5hc3NpZ24oJ3Byb3BlcnRpZXN0aXRsZScsICRtb2QtPkxhbmcoJ3Byb3BlcnRpZXMnKSk7CgogICAgICAgICR0cGwtPmFzc2lnbigncHJvcHMnLCAkbW9kLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdwcm9wcycsICRtb2QtPkxhbmcoJ3Byb3BlcnRpZXMnKS4iLi4uIikpOwogICAgICAgICR0cGwtPmRpc3BsYXkoKTsKICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGNoZWNrVXBsb2FkKCRrZXkpCiAgICB7CiAgICAgICAgJG1vZCA9IHNlbGY6OmdldF9tb2QoKTsKICAgICAgICBpZiggIWlzc2V0KCRfRklMRVNbJGtleV0pIHx8ICFpc3NldCgkX0ZJTEVTKSApIHJldHVybiBbIGZhbHNlLCAkbW9kLT5MYW5nKCdlcnJvcl9taXNzaW5nX3VwbG9hZCcpIF07CiAgICAgICAgJGZpbGUgPSAkX0ZJTEVTWyRrZXldOwogICAgICAgIGlmKCAhaXNzZXQoJGZpbGVbJ25hbWUnXSkgfHwgIWlzc2V0KCRmaWxlWydzaXplJ10pIHx8ICRmaWxlWydzaXplJ10gPT0gMCApIHJldHVybiBbIGZhbHNlLCRtb2QtPkxhbmcoJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJykgXTsKCiAgICAgICAgaWYgKCFpc3NldCAoJGZpbGVbJ3R5cGUnXSkpICRmaWxlWyd0eXBlJ10gPSAnJzsKICAgICAgICBpZiAoIWlzc2V0ICgkZmlsZVsnc2l6ZSddKSkgJGZpbGVbJ3NpemUnXSA9ICcnOwogICAgICAgIGlmICghaXNzZXQgKCRmaWxlWyd0bXBfbmFtZSddKSkgcmV0dXJuIFsgZmFsc2UsICRtb2QtPkxhbmcoJ2Vycm9yX3Byb2JsZW1fdXBsb2FkJykgXTsKICAgICAgICAkZmlsZVsnbmFtZSddID0KICAgICAgICAgICAgcHJlZ19yZXBsYWNlKCcvW15hLXpBLVowLTlcLlwkXCVcJ1xgXC1cQFx7XH1cflwhXCNcKFwpXCZcX1xeXS8nLCAnJywKICAgICAgICAgICAgc3RyX3JlcGxhY2UgKGFycmF5ICgnICcsICclMjAnKSwgYXJyYXkgKCdfJywgJ18nKSwgJGZpbGVbJ25hbWUnXSkpOwoKICAgICAgICAvLyBjaGVjayB0aGUgZmlsZW5hbWUKICAgICAgICBpZiggISRtb2QtPmlzX2FsbG93ZWRfdXBsb2FkKCRmaWxlWyduYW1lJ10pICkgcmV0dXJuIFsgZmFsc2UsICRtb2QtPkxhbmcoJ2Vycm9yX2ludmFsaWRmaWxlZXh0ZW5zaW9uJykgXTsKICAgICAgICByZXR1cm4gWyBUUlVFIF07CiAgICB9CgogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBnZXRfcHJvcGVydGllc19mb3JfZ3JvdXBzKCAkZ3JvdXBsaXN0ICkgewogICAgICAgICRvdXQgPSBbXTsKICAgICAgICBmb3JlYWNoKCAkZ3JvdXBsaXN0IGFzICRnaWQgKSB7CiAgICAgICAgICAgICRnaWQgPSAoaW50KSAkZ2lkOwogICAgICAgICAgICBpZiggJGdpZCA8IDEgKSBjb250aW51ZTsKCiAgICAgICAgICAgICRyZWxhdGlvbnMgPSBcZmV1X3V0aWxzOjpnZXRfbW9kKCktPkdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRnaWQgKTsKICAgICAgICAgICAgJG91dCA9IFxSUlV0aWxzOjphcnJheV9tZXJnZV9ieV9uYW1lX3JlcXVpcmVkKCAkb3V0LCAkcmVsYXRpb25zICk7CiAgICAgICAgfQogICAgICAgIHVhc29ydCggJG91dCwgYXJyYXkoJ2NnZV9hcnJheScsJ2NvbXBhcmVfZWxlbWVudHNfYnlfc29ydG9yZGVyX2tleScpICk7CiAgICAgICAgcmV0dXJuICRvdXQ7CiAgICB9CgogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiByZXNvbHZlX3ByZWZ0cGxfdG9fcGFnZSgkcHJlZm5hbWUsJHVpZCwkZGZsdCA9IG51bGwpCiAgICB7CiAgICAgICAgJHByZWZuYW1lID0gdHJpbSgkcHJlZm5hbWUpOwogICAgICAgICR1aWQgPSAoaW50KSAkdWlkOwogICAgICAgIGlmKCAhJHByZWZuYW1lIHx8ICR1aWQgPCAxICkgcmV0dXJuICRkZmx0OwoKICAgICAgICAvLyBzaG91bGQgdGhyb3cgYW4gZXhjZXB0aW9uIG1heWJlLgogICAgICAgICRmZXUgPSBzZWxmOjpnZXRfbW9kKCk7CiAgICAgICAgJHJlcyA9ICRmZXUtPkdldFVzZXJJbmZvKCAkdWlkICk7CiAgICAgICAgaWYoICFpc19hcnJheSgkcmVzKSB8fCAkcmVzWzBdID09IEZBTFNFICkgcmV0dXJuICRkZmx0OwogICAgICAgICR1aW5mbyA9ICRyZXNbMV07CgogICAgICAgICR0cGxkYXRhID0gJGZldS0+R2V0UHJlZmVyZW5jZSgkcHJlZm5hbWUpOwogICAgICAgIGlmKCAhJHRwbGRhdGEgKSByZXR1cm4gJGRmbHQ7CgogICAgICAgICR0bXBfdHBsID0gJGZldS0+Q3JlYXRlU21hcnR5VGVtcGxhdGUoJ3N0cmluZzonLiR0cGxkYXRhKTsKICAgICAgICAkdG1wX3RwbC0+YXNzaWduKCd1c2VybmFtZScsJHVpbmZvWyd1c2VybmFtZSddKTsKICAgICAgICAkdG1wX3RwbC0+YXNzaWduKCd1aWQnLCR1aWQpOwogICAgICAgICRncm91cHMgPSAkZmV1LT5HZXRNZW1iZXJHcm91cHNBcnJheSgkdWlkKTsKICAgICAgICAkZ3JvdXBuYW1lID0gbnVsbDsKICAgICAgICBpZiggY291bnQoJGdyb3VwcykgKSAkZ3JvdXBuYW1lID0gJGZldS0+R2V0R3JvdXBOYW1lKCAkZ3JvdXBzWzBdWydncm91cGlkJ10gKTsKICAgICAgICAkdG1wX3RwbC0+YXNzaWduKCdncm91cG5hbWUnLCRncm91cG5hbWUpOwogICAgICAgICRwYWdlID0gJHRtcF90cGwtPmZldGNoKCk7CiAgICAgICAgJGRlc3QgPSAkZmV1LT5yZXNvbHZlX2FsaWFzX29yX2lkKCRwYWdlKTsKICAgICAgICBpZiggJGRlc3QgKSByZXR1cm4gJGRlc3Q7CiAgICAgICAgcmV0dXJuICRkZmx0OwogICAgfQp9IC8vIGNsYXNzCgojCiMgRU9GCiMK]]></data>
	</file>
	<file>
	  <filename>/lib/class.FrontEndUsersManipulator.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAgLy8gLSotIG1vZGU6cGhwOyBjLWZpbGUtc3R5bGU6bGludXg7IHRhYi13aWR0aDoyOyBpbmRlbnQtdGFicy1tb2RlOnQ7IGMtYmFzaWMtb2Zmc2V0OiAyOyAtKi0KI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDggYnkgUm9iZXJ0IENhbXBiZWxsCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gYWxsb3cgbWFuYWdlbWVudCBvZiBmcm9udGVuZAojICB1c2VycywgYW5kIHRoZWlyIGxvZ2luIHByb2Nlc3Mgd2l0aGluIGEgQ01TIE1hZGUgU2ltcGxlIHBvd2VyZWQKIyAgd2Vic2l0ZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0cyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IKIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgojCiMgSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkCiMgYXMgYW4gYWRkb24gbW9kdWxlIHRvIENNUyBNYWRlIFNpbXBsZS4gIFlvdSBtYXkgbm90IHVzZSB0aGlzIHNvZnR3YXJlCiMgaW4gYW55IE5vbiBHUEwgdmVyc2lvbiBvZiBDTVMgTWFkZSBzaW1wbGUsIG9yIGluIGFueSB2ZXJzaW9uIG9mIENNUwojIE1hZGUgc2ltcGxlIHRoYXQgZG9lcyBub3QgaW5kaWNhdGUgY2xlYXJseSBhbmQgb2J2aW91c2x5IGluIGl0cyBhZG1pbgojIHNlY3Rpb24gdGhhdCB0aGUgc2l0ZSB3YXMgYnVpbHQgd2l0aCBDTVMgTWFkZSBzaW1wbGUuCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojRU5EX0xJQ0VOU0UKCmNsYXNzIEZyb250RW5kVXNlcnNNYW5pcHVsYXRvciBleHRlbmRzIFVzZXJNYW5pcHVsYXRvcgp7CiAgICBwcml2YXRlICRfY2FjaGVkX3Byb3BkZWZuczsKICAgIHByaXZhdGUgJF9lbmNyeXB0aW9uX2tleTsKICAgIHByaXZhdGUgJF9ncm91cGluZm9fY2FjaGU7CiAgICBwcml2YXRlICRfbXVsdGlzZWxlY3Rfb3B0aW9uczsKICAgIHByaXZhdGUgJF91c2VyaWRieW5hbWU7CiAgICBwcml2YXRlICRfZ3JvdXBwcm9wbWFwOwogICAgcHJpdmF0ZSAkX2xhc3RfdXNlcnF1ZXJ5X21hdGNoZXM7CiAgICBwcml2YXRlICRfbGFzdF91c2VycXVlcnlfY291bnQ7CgogICAgcHJpdmF0ZSAkX2hhc3J1bjEgPSBudWxsOwogICAgcHJpdmF0ZSAkX2hhc3J1bjIgPSBudWxsOwogICAgcHJpdmF0ZSAkX3JlYWRkYXRhMSA9IG51bGw7CiAgICBwcml2YXRlICRfaGFzcmVhZDEgPSBudWxsOwoKICAgIHByaXZhdGUgZnVuY3Rpb24gZ2V0X3NhbHQoKQogICAgewogICAgICAgICRtb2QgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgcmV0dXJuICRtb2QtPkdldFByZWZlcmVuY2UoJ3B3c2FsdCcsJycpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBhZGRfaGlzdG9yeSgkdWlkLCRtZXNzYWdlKQogICAgewogICAgICAgIGlmKCAkdWlkIDw9IDAgfHwgIWlzX3N0cmluZygkbWVzc2FnZSkgfHwgJG1lc3NhZ2UgPT0gJycgKQlyZXR1cm4gRkFMU0U7CgogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRub3cgPSAkZGItPkRiVGltZVN0YW1wKHRpbWUoKSk7CiAgICAgICAgJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5ICh1c2VyaWQsc2Vzc2lvbmlkLGFjdGlvbixyZWZkYXRlLGlwYWRkcmVzcykgVkFMVUVTICg/LD8sPywkbm93LD8pIjsKICAgICAgICAkaXAgPSBjZ2VfdXRpbHM6OmdldF9yZWFsX2lwKCk7CiAgICAgICAgJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHVpZCxzZXNzaW9uX2lkKCksc3Vic3RyKCRtZXNzYWdlLDAsMjU1KSwkaXApKTsKICAgICAgICByZXR1cm4gVFJVRTsKICAgIH0KCiAgICBmdW5jdGlvbiBTZXRFbmNyeXB0aW9uS2V5KCR1aWQgPSAtMSwkZm9yY2UgPSBGQUxTRSApCiAgICB7CiAgICAgICAgZ2xvYmFsICRDTVNfQURNSU5fUEFHRTsKICAgICAgICAkZ0NtcyA9IENtc0FwcDo6Z2V0X2luc3RhbmNlKCk7CgogICAgICAgIGlmKCAkQ01TX0FETUlOX1BBR0UgKSB7Ci8vIGFuIGFkbWluaXN0cmF0b3IgY2FuIHNlZSBlbmNyeXB0ZWQgZGF0YS4KICAgICAgICAgICAgJHJlcyA9ICR0aGlzLT5HZXRVc2VySW5mbygkdWlkKTsKICAgICAgICAgICAgaWYoICFpc19hcnJheSgkcmVzKSB8fCAkcmVzWzBdID09IEZBTFNFICkgcmV0dXJuIEZBTFNFOwoKICAgICAgICAgICAgJGtleSA9IG1kNSgkZ0Ntcy0+Y29uZmlnWydyb290X3VybCddLiR1aWQuJHJlc1sxXVsnY3JlYXRlZGF0ZSddLiR0aGlzLT5nZXRfc2FsdCgpKTsKICAgICAgICAgICAgJHRoaXMtPl9lbmNyeXB0aW9uX2tleSA9ICRrZXk7CiAgICAgICAgICAgIHJldHVybiBUUlVFOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJHR1aWQgPSAkdGhpcy0+TG9nZ2VkSW5JZCgpOwogICAgICAgICAgICBpZiggKCR0dWlkICE9ICR1aWQgfHwgJHR1aWQgPD0gMCkgJiYgJGZvcmNlID09PSBGQUxTRSApIHJldHVybiBGQUxTRTsKCiAgICAgICAgICAgICRyZXMgPSAkdGhpcy0+R2V0VXNlckluZm8oJHVpZCk7CiAgICAgICAgICAgIGlmKCAhaXNfYXJyYXkoJHJlcykgfHwgJHJlc1swXSA9PSBGQUxTRSApIHJldHVybiBGQUxTRTsKCiAgICAgICAgICAgICRrZXkgPSBtZDUoJGdDbXMtPmNvbmZpZ1sncm9vdF91cmwnXS4kdWlkLiRyZXNbMV1bJ2NyZWF0ZWRhdGUnXS4kdGhpcy0+Z2V0X3NhbHQoKSk7CiAgICAgICAgICAgICR0aGlzLT5fZW5jcnlwdGlvbl9rZXkgPSAka2V5OwogICAgICAgICAgICByZXR1cm4gVFJVRTsKICAgICAgICB9CgogICAgICAgIHJldHVybiBGQUxTRTsKICAgIH0KCiAgICBmdW5jdGlvbiBEZWNyeXB0VXNlckRhdGEoJHVpZCwkZGF0YSkKICAgIHsKICAgICAgICAkdWlkID0gKGludCkkdWlkOwogICAgICAgIGlmKCAkdWlkIDwgMSApIHJldHVybjsKICAgICAgICAkdGhpcy0+U2V0RW5jcnlwdGlvbktleSgkdWlkLFRSVUUpOwogICAgICAgICR4ID0gdHJpbShjZ2VfZW5jcnlwdDo6ZGVjcnlwdCgkdGhpcy0+X2VuY3J5cHRpb25fa2V5LGJhc2U2NF9kZWNvZGUoJGRhdGEpKSk7CiAgICAgICAgcmV0dXJuICR4OwogICAgfQoKICAgIGZ1bmN0aW9uIENvdW50VGVtcENvZGVSZWNvcmRzKCkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0REIoKTsKICAgICAgICAkcSA9ICJTRUxFQ1QgQ09VTlQoKikgQVMgY291bnQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdGVtcGNvZGUiOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEgKTsKICAgICAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiAwOwogICAgICAgICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgICAgICAgcmV0dXJuICRyb3dbJ2NvdW50J107CiAgICB9CgogICAgZnVuY3Rpb24gRXhwaXJlVGVtcENvZGVzKCRleHBpcnljb2RlKQogICAgewogICAgICAgICRkYiA9IFxjZ2VfdXRpbHM6OmdldF9kYigpOwogICAgICAgIHRyeSB7CiAgICAgICAgICAgICRkYi0+QmVnaW5UcmFucygpOwogICAgICAgICAgICAkZXhwaXJlcyA9IHN0cnRvdGltZSggJGV4cGlyeWNvZGUgKTsKICAgICAgICAgICAgJHEgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3RlbXBjb2RlIFdIRVJFIGNyZWF0ZWQgPiA/IjsKICAgICAgICAgICAgJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRleHBpcmVzICkgKTsKICAgICAgICAgICAgJGRiLT5Db21taXRUcmFucygpOwogICAgICAgICAgICByZXR1cm4gVFJVRTsKICAgICAgICB9CiAgICAgICAgY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgICAgICRkYi0+Um9sbGJhY2tUcmFucygpOwogICAgICAgICAgICAkbW9kID0gJHRoaXMtPkdldE1vZHVsZSgpOwogICAgICAgICAgICBhdWRpdCgnJywkbW9kLT5HZXROYW1lKCksJ0NvdWxkIGV4cGlyZSB0ZW1wIGNvZGVzICcpOwogICAgICAgICAgICBkZWJ1Z190b19sb2coX19NRVRIT0RfXyk7CiAgICAgICAgICAgIGRlYnVnX3RvX2xvZygkZS0+R2V0TWVzc2FnZSgpKTsKICAgICAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiBSZW1vdmVVc2VyVGVtcENvZGUoICR1aWQgKQogICAgewogICAgICAgICRkYiA9IFxjZ2VfdXRpbHM6OmdldF9kYigpOwogICAgICAgIHRyeSB7CiAgICAgICAgICAgICR1aWQgPSAoaW50KSAkdWlkOwogICAgICAgICAgICBpZiggJHVpZCA8IDEgKSByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICRkYi0+QmVnaW5UcmFucygpOwogICAgICAgICAgICAkcSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdGVtcGNvZGUgV0hFUkUgdXNlcmlkID0gPyI7CiAgICAgICAgICAgICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkdWlkICkgKTsKICAgICAgICAgICAgJGRiLT5Db21taXRUcmFucygpOwogICAgICAgICAgICByZXR1cm4gVFJVRTsKICAgICAgICB9CiAgICAgICAgY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgICAgICRkYi0+Um9sbGJhY2tUcmFucygpOwogICAgICAgICAgICAkbW9kID0gJHRoaXMtPkdldE1vZHVsZSgpOwogICAgICAgICAgICBhdWRpdCgkdWlkLCRtb2QtPkdldE5hbWUoKSwnQ291bGQgcmVtb3ZlIHRlbXAgY29kZScpOwogICAgICAgICAgICBkZWJ1Z190b19sb2coX19NRVRIT0RfXyk7CiAgICAgICAgICAgIGRlYnVnX3RvX2xvZygkZS0+R2V0TWVzc2FnZSgpKTsKICAgICAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgICAgIH0KICAgIH0KCgogICAgZnVuY3Rpb24gR2V0VXNlclRlbXBDb2RlKCAkdWlkICkKICAgIHsKICAgICAgICBpZiggISR1aWQgKSByZXR1cm4gZmFsc2U7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdGVtcGNvZGUgV0hFUkUgdXNlcmlkID0gPyBPUkRFUiBCWSBjcmVhdGVkIERFU0MiOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+R2V0Um93KCAkcSwgYXJyYXkoICR1aWQgKSk7CiAgICAgICAgaWYoIGlzX2FycmF5KCRkYnJlc3VsdCkgJiYgY291bnQoJGRicmVzdWx0KSApIHJldHVybiAkZGJyZXN1bHRbJ2NvZGUnXTsKICAgIH0KCgogICAgZnVuY3Rpb24gU2V0VXNlclRlbXBDb2RlKCAkdWlkLCAkY29kZSApCiAgICB7CiAgICAgICAgJHVpZCA9IChpbnQpICR1aWQ7CiAgICAgICAgJGNvZGUgPSB0cmltKCRjb2RlKTsKICAgICAgICBpZiggJHVpZCA8IDEgfHwgISRjb2RlICkgcmV0dXJuIEZBTFNFOwogICAgICAgICRkYiA9IFxjZ2VfdXRpbHM6OmdldF9kYigpOwoKICAgICAgICB0cnkgewogICAgICAgICAgICAkZGItPkJlZ2luVHJhbnMoKTsKICAgICAgICAgICAgJHEgPSAnREVMRVRFIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3RlbXBjb2RlIFdIRVJFIHVzZXJpZCA9ID8nOwogICAgICAgICAgICAkZGItPkV4ZWN1dGUoJHEsYXJyYXkoJHVpZCkpOwoKICAgICAgICAgICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3RlbXBjb2RlIFZBTFVFUyg/LD8sTk9XKCkpIjsKICAgICAgICAgICAgJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICR1aWQsICRjb2RlICkgKTsKICAgICAgICAgICAgJGRiLT5Db21taXRUcmFucygpOwogICAgICAgICAgICByZXR1cm4gVFJVRTsKICAgICAgICB9CiAgICAgICAgY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgICAgICRkYi0+Um9sbGJhY2tUcmFucygpOwogICAgICAgICAgICAkbW9kID0gJHRoaXMtPkdldE1vZHVsZSgpOwogICAgICAgICAgICBhdWRpdCgkdWlkLCRtb2QtPkdldE5hbWUoKSwnQ291bGQgc2V0IHRlbXAgY29kZScpOwogICAgICAgICAgICBkZWJ1Z190b19sb2coX19NRVRIT0RfXyk7CiAgICAgICAgICAgIGRlYnVnX3RvX2xvZygkZS0+R2V0TWVzc2FnZSgpKTsKICAgICAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgICAgIH0KICAgIH0KCgogICAgZnVuY3Rpb24gU2V0UHJvcGVydHlEZWZuKCAkbmFtZSwgJG5ld25hbWUsICRwcm9tcHQsICRsZW5ndGgsICR0eXBlLCAkbWF4bGVuZ3RoID0gMCwgJGF0dHJpYnMgPSAnJywgJGZvcmNlX3VuaXF1ZSA9IDAsICRlbmNyeXB0ID0gMCApCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPmdldERiKCk7CgogICAgICAgIGlmKCAkbWF4bGVuZ3RoID09IDAgKSAkbWF4bGVuZ3RoID0gJGxlbmd0aDsKICAgICAgICAkcSA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BkZWZuCiAgICAgICAgICAgICAgU0VUIG5hbWUgPSA/LCBwcm9tcHQgPSA/LCB0eXBlID0gPywgbGVuZ3RoID0gPywgbWF4bGVuZ3RoID0gPywgYXR0cmlicyA9ID8sIGZvcmNlX3VuaXF1ZSA9ID8sIGVuY3J5cHQgPSA/CiAgICAgICAgICAgICAgV0hFUkUgbmFtZSA9ID8iOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkbmV3bmFtZSwgJHByb21wdCwgJHR5cGUsICRsZW5ndGgsICRtYXhsZW5ndGgsICRhdHRyaWJzLCAkZm9yY2VfdW5pcXVlLCAkZW5jcnlwdCwgJG5hbWUgKSk7CiAgICAgICAgaWYoICEkZGJyZXN1bHQgKSByZXR1cm4gZmFsc2U7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICB9CgoKICAgIGZ1bmN0aW9uIERlbGV0ZVByb3BlcnR5RGVmbiggJG5hbWUgKQogICAgewogICAgICAgICRkYiA9IFxjZ2VfdXRpbHM6OmdldF9kYigpOwogICAgICAgIHRyeSB7CiAgICAgICAgICAgICRkYi0+QmVnaW5UcmFucygpOwogICAgICAgICAgICAkdGhpcy0+RGVsZXRlU2VsZWN0T3B0aW9ucygkbmFtZSk7CgogICAgICAgICAgICAkcSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBXSEVSRSB0aXRsZSA9ID8nOwogICAgICAgICAgICAkZGItPkV4ZWN1dGUoJHEsYXJyYXkoJG5hbWUpKTsKCiAgICAgICAgICAgICRxdWVyeSA9ICdTRUxFQ1QgZ3JvdXBfaWQsc29ydF9rZXkgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwIFdIRVJFIG5hbWUgPSA/JzsKICAgICAgICAgICAgJGRiciA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5LGFycmF5KCRuYW1lKSk7CgogICAgICAgICAgICBpZiggaXNfYXJyYXkoJGRicikgJiYgY291bnQoJGRicikgKSB7CiAgICAgICAgICAgICAgICAkcSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcAogICAgICAgICAgICAgICAgICAgICAgICAgIFNFVCBzb3J0X2tleSA9IHNvcnRfa2V5IC0gMQogICAgICAgICAgICAgICAgICAgICAgICAgIFdIRVJFIGdyb3VwX2lkID0gPyBBTkQgc29ydF9rZXkgPiA/JzsKICAgICAgICAgICAgICAgIGZvcmVhY2goICRkYnIgYXMgJHJvdyApIHsKICAgICAgICAgICAgICAgICAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRyb3dbJ2dyb3VwX2lkJ10sJHJvd1snc29ydF9rZXknXSkpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICAkcSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwIFdIRVJFIG5hbWUgPSA/JzsKICAgICAgICAgICAgJGRiLT5FeGVjdXRlKCRxLGFycmF5KCRuYW1lKSk7CgogICAgICAgICAgICAkcSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4gV0hFUkUgbmFtZT0/IjsKICAgICAgICAgICAgJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRuYW1lICkgKTsKCiAgICAgICAgICAgICRkYi0+Q29tbWl0VHJhbnMoKTsKICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgfQogICAgICAgIGNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgICAgICAgICAkZGItPlJvbGxiYWNrVHJhbnMoKTsKICAgICAgICAgICAgJG1vZCA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAgICAgYXVkaXQoJycsJG1vZC0+R2V0TmFtZSgpLCdDb3VsZCBub3QgZGVsZXRlIHByb3BlcnR5ICcuJG5hbWUpOwogICAgICAgICAgICBkZWJ1Z190b19sb2coX19NRVRIT0RfXyk7CiAgICAgICAgICAgIGRlYnVnX3RvX2xvZygkZS0+R2V0TWVzc2FnZSgpKTsKICAgICAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgICAgIH0KCiAgICB9CgoKICAgIGZ1bmN0aW9uIEdldFByb3BlcnR5R3JvdXBSZWxhdGlvbnMoICR0aXRsZSApCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CgogICAgICAgICRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcCBXSEVSRSBuYW1lID0gPyBPUkRFUiBCWSBzb3J0X2tleSBERVNDIjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHRpdGxlICkgKTsKICAgICAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBhcnJheShGQUxTRSwkZGItPkVycm9yTXNnKCkpOwogICAgICAgICRyZXN1bHQgPSBhcnJheSgpOwogICAgICAgIHdoaWxlKCAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpICkgewogICAgICAgICAgICAkcmVzdWx0W10gPSAkcm93OwogICAgICAgIH0KICAgICAgICByZXR1cm4gJHJlc3VsdDsKICAgIH0KCgovKioKICogUmV0dXJuIHRoZSB1bml4IHRpbWVzdGFtcCBvZiB0aGUgdXNlcnMgZXhwaXJ5IGRhdGUKICogb3IgZmFsc2U7CiAqLwogICAgZnVuY3Rpb24gR2V0RXhwaXJ5RGF0ZSgkdWlkKQogICAgewogICAgICAgIGlmKCAhJHVpZCApIHJldHVybiBmYWxzZTsKICAgICAgICAkcmVzID0gZmV1X3VzZXJfY2FjaGU6OmdldF91c2VyKCR1aWQpOwogICAgICAgIGlmKCBpc19hcnJheSgkcmVzKSAmJiAkcmVzWydleHBpcmVzJ10gIT0gJycgKSB7CiAgICAgICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICAgICByZXR1cm4gJGRiLT5Vbml4VGltZVN0YW1wKCRyZXNbJ2V4cGlyZXMnXSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KCgogICAgZnVuY3Rpb24gSXNBY2NvdW50RXhwaXJlZCggJHVpZCApCiAgICB7CiAgICAgICAgaWYoICEkdWlkICkgcmV0dXJuIHRydWU7IC8vIGR1bm5vIGFib3V0IHRoaXMKICAgICAgICAkZXhwaXJ5ID0gJHRoaXMtPkdldEV4cGlyeURhdGUoICR1aWQgKTsKCiAgICAgICAgaWYoICEkZXhwaXJ5ICkgcmV0dXJuIHRydWU7CiAgICAgICAgaWYoICRleHBpcnkgPCB0aW1lKCkgKSByZXR1cm4gdHJ1ZTsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgoKICAgIGZ1bmN0aW9uIEdldFVzZXJQcm9wZXJ0eVJlbGF0aW9ucyggJHVpZCApCiAgICB7CiAgICAgICAgJGdyb3VwcyA9ICR0aGlzLT5HZXRNZW1iZXJHcm91cHNBcnJheSgkdWlkKTsKICAgICAgICBpZiggIWlzX2FycmF5KCRncm91cHMpIHx8IGNvdW50KCRncm91cHMpID09IDAgKSByZXR1cm47CgogICAgICAgICR1cHJvcHMgPSBhcnJheSgpOwogICAgICAgIGZvciggJGEgPSAwOyAkYSA8IGNvdW50KCRncm91cHMpOyAkYSsrICkgewogICAgICAgICAgICAkZ2lkID0gJGdyb3Vwc1skYV1bJ2dyb3VwaWQnXTsKICAgICAgICAgICAgJHJlbG5zID0gJHRoaXMtPkdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoJGdpZCk7CiAgICAgICAgICAgICR1cHJvcHMgPSBSUlV0aWxzOjphcnJheV9tZXJnZV9ieV9uYW1lX3JlcXVpcmVkKCR1cHJvcHMsJHJlbG5zKTsKICAgICAgICAgICAgdXNvcnQoJHVwcm9wcywgYXJyYXkoJ2NnZV9hcnJheScsJ2NvbXBhcmVfZWxlbWVudHNfYnlfc29ydG9yZGVyX2tleScpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuICR1cHJvcHM7CiAgICB9CgogICAgZnVuY3Rpb24gR2V0R3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdycGlkICkKICAgIHsKICAgICAgICBpZiggIWlzX2FycmF5KCR0aGlzLT5fZ3JvdXBwcm9wbWFwKSApIHsKICAgICAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgICAgICRxID0gIlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcCBPUkRFUiBCWSBncm91cF9pZCxzb3J0X2tleSBERVNDIjsKICAgICAgICAgICAgJHRoaXMtPl9ncm91cHByb3BtYXAgPSAkZGItPkdldEFycmF5KCRxKTsKICAgICAgICAgICAgaWYoICEkdGhpcy0+X2dyb3VwcHJvcG1hcCApIHJldHVybiBhcnJheShGQUxTRSwkZGItPkVycm9yTXNnKCkpOwogICAgICAgIH0KCiAgICAgICAgJHJlcyA9IGFycmF5KCk7CiAgICAgICAgZm9yKCAkaSA9IDA7ICRpIDwgY291bnQoJHRoaXMtPl9ncm91cHByb3BtYXApOyAkaSsrICkgewogICAgICAgICAgICAkcm93ID0gJHRoaXMtPl9ncm91cHByb3BtYXBbJGldOwogICAgICAgICAgICBpZiggJHJvd1snZ3JvdXBfaWQnXSA8ICRncnBpZCApIGNvbnRpbnVlOwogICAgICAgICAgICBpZiggJHJvd1snZ3JvdXBfaWQnXSA+ICRncnBpZCApIGJyZWFrOwoKICAgICAgICAgICAgJHJlc1tdID0gJHJvdzsKICAgICAgICB9CiAgICAgICAgaWYoICFjb3VudCgkcmVzKSApIHJldHVybiBhcnJheShGQUxTRSwnbm90Zm91bmQnKTsKCiAgICAgICAgcmV0dXJuICRyZXM7CiAgICB9CgoKICAgIGZ1bmN0aW9uIEFkZEdyb3VwUHJvcGVydHlSZWxhdGlvbiggJGdycGlkLCAkcHJvcG5hbWUsICRzb3J0a2V5LCAkbG9zdHVuLCAkdmFsICkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCiAgICAgICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcCBWQUxVRVMoPyw/LD8sPyw/KSI7CiAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRwcm9wbmFtZSwgJGdycGlkLCAkc29ydGtleSwgJHZhbCwgJGxvc3R1biApKTsKICAgICAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBhcnJheShGQUxTRSwkZGItPkVycm9yTXNnKCkpOwogICAgICAgIHJldHVybiBhcnJheShUUlVFKTsKICAgIH0KCgogICAgZnVuY3Rpb24gRGVsZXRlQWxsR3JvdXBQcm9wZXJ0eVJlbGF0aW9ucyggJGdycGlkICkKICAgIHsKICAgICAgICAkZGIgPSBcY2dlX3V0aWxzOjpnZXRfZGIoKTsKICAgICAgICB0cnkgewogICAgICAgICAgICAkZGItPkJlZ2luVHJhbnMoKTsKICAgICAgICAgICAgJHEgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcCBXSEVSRSBncm91cF9pZCA9ID8iOwogICAgICAgICAgICAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJGdycGlkICkpOwogICAgICAgICAgICAkZGItPkNvbW1pdFRyYW5zKCk7CiAgICAgICAgICAgIHJldHVybiBhcnJheShUUlVFKTsKICAgICAgICB9CiAgICAgICAgY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgICAgICRkYi0+Um9sbGJhY2tUcmFucygpOwogICAgICAgICAgICAkbW9kID0gJHRoaXMtPkdldE1vZHVsZSgpOwogICAgICAgICAgICBhdWRpdCgnJywkbW9kLT5HZXROYW1lKCksJ0NvdWxkIG5vdCBkZWxldGUgYWxsIGdyb3VwIHByb3BlcnR5IHJlbGF0aW9ucycpOwogICAgICAgICAgICBkZWJ1Z190b19sb2coX19NRVRIT0RfXyk7CiAgICAgICAgICAgIGRlYnVnX3RvX2xvZygkZS0+R2V0TWVzc2FnZSgpKTsKICAgICAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCRlLT5HZXRNZXNzYWdlKCkpOwogICAgICAgIH0KICAgIH0KCgogICAgZnVuY3Rpb24gRGVsZXRlR3JvdXBQcm9wZXJ0eVJlbGF0aW9uKCAkZ3JwaWQsICRwcm9wbmFtZSApCiAgICB7CiAgICAgICAgJGRiID0gXGNnZV91dGlsczo6Z2V0X2RiKCk7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgJGRiLT5CZWdpblRyYW5zKCk7CiAgICAgICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHByb3BtYXAgV0hFUkUgbmFtZSA9ID8gQU5EIGdyb3VwX2lkID0gPyI7CiAgICAgICAgICAgICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkcHJvcG5hbWUsICRncnBpZCApKTsKICAgICAgICAgICAgJGRiLT5Db21taXRUcmFucygpOwogICAgICAgICAgICByZXR1cm4gYXJyYXkoVFJVRSk7CiAgICAgICAgfQogICAgICAgIGNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgICAgICAgICAkZGItPlJvbGxiYWNrVHJhbnMoKTsKICAgICAgICAgICAgJG1vZCA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAgICAgYXVkaXQoJycsJG1vZC0+R2V0TmFtZSgpLCdDb3VsZCBub3QgZGVsZXRlIGdyb3VwIHByb3BlcnR5IHJlbGF0aW9uJyk7CiAgICAgICAgICAgIGRlYnVnX3RvX2xvZyhfX01FVEhPRF9fKTsKICAgICAgICAgICAgZGVidWdfdG9fbG9nKCRlLT5HZXRNZXNzYWdlKCkpOwogICAgICAgICAgICByZXR1cm4gYXJyYXkoRkFMU0UsJGUtPkdldE1lc3NhZ2UoKSk7CiAgICAgICAgfQogICAgfQoKCiAgICBmdW5jdGlvbiBBZGRQcm9wZXJ0eURlZm4oICRuYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCwgJG1heGxlbmd0aCA9IDAsICRhdHRyaWJzID0gJycsICRmb3JjZV91bmlxdWUgPSAwLCAkZW5jcnlwdCA9IDAgKQogICAgewogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgIGlmKCAkbWF4bGVuZ3RoID09IDAgKSAkbWF4bGVuZ3RoID09ICRsZW5ndGg7CgogICAgICAgICRwID0gYXJyYXkoICRuYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCwgJG1heGxlbmd0aCwgJGF0dHJpYnMsICRmb3JjZV91bmlxdWUsICRlbmNyeXB0ICk7CiAgICAgICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BkZWZuCiAgICAgICAgICAobmFtZSxwcm9tcHQsdHlwZSxsZW5ndGgsbWF4bGVuZ3RoLGF0dHJpYnMsZm9yY2VfdW5pcXVlLGVuY3J5cHQpCiAgICAgICAgICBWQUxVRVMgKD8sPyw/LD8sPyw/LD8sPykiOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsICRwICk7CiAgICAgICAgaWYoICRkYnJlc3VsdCA9PSBmYWxzZSApIHJldHVybiBhcnJheShGQUxTRSwgJGRiLT5zcWwuJzxici8+Jy4kZGItPkVycm9yTXNnKCkpOwogICAgICAgICRuZXdfaWQgPSAkZGItPkluc2VydF9JRCgpOwoKICAgICAgICAkdGhpcy0+X2NhY2hlZF9wcm9wZGVmbiA9IG51bGw7CiAgICAgICAgcmV0dXJuIGFycmF5KFRSVUUpOwogICAgfQoKICAgIGZ1bmN0aW9uIFNldFByb3BlcnR5RGVmbkV4dHJhKCRuYW1lLCRleHRyYSkKICAgIHsKICAgICAgICBpZiggaXNfYXJyYXkoJGV4dHJhKSApICRleHRyYSA9IHNlcmlhbGl6ZSgkZXh0cmEpOwogICAgICAgICRkYiA9IENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldERiKCk7CiAgICAgICAgJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4gU0VUIGV4dHJhID0gPyBXSEVSRSBuYW1lID0gPyc7CiAgICAgICAgJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGV4dHJhLCRuYW1lKSk7CiAgICB9CgogICAgZnVuY3Rpb24gQWRkU2VsZWN0T3B0aW9ucyggJG5hbWUsICRvcHRpb25zICkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAkaW5zZXJ0X3ZhbHMgPSAnJzsKICAgICAgICAkb3JkZXJfaWQgPSAwOwogICAgICAgIGZvcmVhY2ggKCRvcHRpb25zIGFzICRvcHR0ZXh0KXsKLy8gaWYgbm8gYWN0dWFsIHRleHQgaW4gdGhlIGxpbmUsIG1ha2Ugc3VyZSBpdCBlcXVhbHMgJycsCi8vIGluIG9yZGVyIG5vdCB0byBhZGQgaXQgdG8gdGhlIGRiCiAgICAgICAgICAgICRvcHR0ZXh0ID0gdHJpbSgkb3B0dGV4dCk7CiAgICAgICAgICAgIGlmKHRyaW0oJG9wdHRleHQpID09ICcnIHx8IHRyaW0oJG9wdHRleHQpID09ICdfXycgKSBjb250aW51ZTsKCiAgICAgICAgICAgICRvcHRuYW1lID0gdHJpbSgkb3B0dGV4dCk7CiAgICAgICAgICAgIGlmKCBzdHJjaHIoICRvcHR0ZXh0LCAnPScgKSAhPT0gRkFMU0UgKSB7CiAgICAgICAgICAgICAgICAkdG1wID0gZXhwbG9kZSgnPScsJG9wdHRleHQsMik7CiAgICAgICAgICAgICAgICAkb3B0bmFtZSA9IHRyaW0oJHRtcFsxXSk7CiAgICAgICAgICAgICAgICAkb3B0dGV4dCA9IHRyaW0oJHRtcFswXSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICRvcmRlcl9pZCsrOwogICAgICAgICAgICAkaW5zZXJ0X3ZhbHMgLj0gIignIgogICAgICAgICAgICAgICAgLiAkb3JkZXJfaWQgLiAiJywgJyIKICAgICAgICAgICAgICAgIC4gJG9wdG5hbWUgLiAiJywgJyIKICAgICAgICAgICAgICAgIC4gJG9wdHRleHQgLiAiJywgJyIKICAgICAgICAgICAgICAgIC4gJG5hbWUuICInKSwgIjsKICAgICAgICB9CgogICAgICAgICRpbnNlcnRfdmFscyA9IHN1YnN0cigkaW5zZXJ0X3ZhbHMsIDAsIC0yKTsKCiAgICAgICAgJGRiID0gJHRoaXMtPmdldERiKCk7CiAgICAgICAgJHF1ZXJ5ID0gIklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19kcm9wZG93bnMKICAgIAkJCSAgKG9yZGVyX2lkLCBvcHRpb25fbmFtZSwgb3B0aW9uX3RleHQsIGNvbnRyb2xfbmFtZSkKCQkJICAgICAgVkFMVUVTICIgLiAkaW5zZXJ0X3ZhbHM7CiAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCRxdWVyeSk7CiAgICAgICAgaWYoICRkYnJlc3VsdCA9PSBmYWxzZSApIHJldHVybiBhcnJheShGQUxTRSwgJGRiLT5FcnJvck1zZygpKTsKCiAgICAgICAgJHRoaXMtPl9tdWx0aXNlbGVjdF9vcHRpb25zID0gbnVsbDsKICAgICAgICByZXR1cm4gYXJyYXkoVFJVRSk7CiAgICB9CgoKCiAgICBmdW5jdGlvbiBEZWxldGVQcm9wZXJ0eURlZm5zKCkKICAgIHsKICAgICAgICAkZGIgPSBcY2dlX3V0aWxzOjpnZXRfZGIoKTsKICAgICAgICB0cnkgewogICAgICAgICAgICAkZGVmbnMgPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZucygpOwogICAgICAgICAgICBmb3JlYWNoKCAkZGVmbnMgYXMgJG5hbWUgPT4gJHJlYyApIHsKICAgICAgICAgICAgICAgICR0aGlzLT5EZWxldGVQcm9wZXJ0eURlZm4oJG5hbWUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgICR0aGlzLT5fY2FjaGVkX3Byb3BkZWZuID0gbnVsbDsKICAgICAgICAgICAgJGRiLT5Db21taXRUcmFucygpOwogICAgICAgICAgICByZXR1cm4gYXJyYXkoVFJVRSk7CiAgICAgICAgfQogICAgICAgIGNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgICAgICAgICAkZGItPlJvbGxiYWNrVHJhbnMoKTsKICAgICAgICAgICAgJG1vZCA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAgICAgYXVkaXQoJycsJG1vZC0+R2V0TmFtZSgpLCdDb3VsZCBub3QgZGVsZXRlIGFsbCBwcm9wZXJ0eSBkZWZpbml0aW9ucycpOwogICAgICAgICAgICBkZWJ1Z190b19sb2coX19NRVRIT0RfXyk7CiAgICAgICAgICAgIGRlYnVnX3RvX2xvZygkZS0+R2V0TWVzc2FnZSgpKTsKICAgICAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCRlLT5HZXRNZXNzYWdlKCkpOwogICAgICAgIH0KICAgIH0KCgogICAgZnVuY3Rpb24gRGVsZXRlU2VsZWN0T3B0aW9ucyggJG5hbWUgKQogICAgewogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19kcm9wZG93bnMgV0hFUkUgY29udHJvbF9uYW1lID0gPyI7CiAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRuYW1lICkgKTsKICAgICAgICBpZiggJGRicmVzdWx0ID09IGZhbHNlICkgcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CiAgICAgICAgJHRoaXMtPl9tdWx0aXNlbGVjdF9vcHRpb25zID0gbnVsbDsKICAgICAgICByZXR1cm4gYXJyYXkoVFJVRSk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIEdlbmVyYXRlUmFuZG9tVXNlcm5hbWUoICRwcmVmaXggPSAndXNlcicgKQogICAgewogICAgICAgIHNyYW5kKHRpbWUoKSk7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJG1vZCA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKCiAgICAgICAgJG51bSA9IHJhbmQoMTAwLDk5OTk5KTsKICAgICAgICAkY291bnQgPSAwOwogICAgICAgICRzdWZmaXggPSAnJzsKICAgICAgICBpZiAoJG1vZC0+R2V0UHJlZmVyZW5jZSgidXNlcm5hbWVfaXNfZW1haWwiKSkgJHN1ZmZpeCA9ICdAc2FtcGxlLmNvbSc7CiAgICAgICAgd2hpbGUoICRjb3VudCA8IDEwMCApIHsgLy8gdG9kbywgMTAwIHNob3VsZCBiZSBjb25maWd1cmFibGU/CiAgICAgICAgICAgICRxID0gIlNFTEVDVCBpZCBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2VycyBXSEVSRSB1c2VybmFtZSA9ID8iOwogICAgICAgICAgICAkdG1wID0gJGRiLT5HZXRPbmUoICRxLCBhcnJheSggJHByZWZpeC4kbnVtLiRzdWZmaXggKSApOwogICAgICAgICAgICBpZiggISR0bXAgKSByZXR1cm4gJHByZWZpeC4kbnVtLiRzdWZmaXg7CiAgICAgICAgICAgICRudW0gPSByYW5kKDEwMCw5OTk5OSk7CiAgICAgICAgICAgICsrJGNvdW50OwogICAgICAgIH0KICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgoKICAgIGZ1bmN0aW9uIENsZWFyUHJvcGVydHlDYWNoZSgpCiAgICB7CiAgICAgICAgdW5zZXQoJHRoaXMtPl9jYWNoZWRfcHJvcGRlZm5zKTsKICAgIH0KCgogICAgZnVuY3Rpb24gX2NhY2hlX3Byb3BlcnR5ZGVmbnMoKQogICAgewogICAgICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9jYWNoZWRfcHJvcGRlZm5zKSApIHsKICAgICAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgICAgICR0aGlzLT5fY2FjaGVkX3Byb3BkZWZucyA9IGFycmF5KCk7CgogICAgICAgICAgICAkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4nOwogICAgICAgICAgICAkZGF0YSA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5KTsKICAgICAgICAgICAgaWYoICEkZGF0YSApIHJldHVybjsKCiAgICAgICAgICAgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCRkYXRhKTsgJGkrKyApIHsKICAgICAgICAgICAgICAgIGlmKCAhZW1wdHkoJGRhdGFbJGldWydleHRyYSddKSAmJiAhaXNfbnVsbCgkZGF0YVskaV1bJ2V4dHJhJ10pICkgJGRhdGFbJGldWydleHRyYSddID0gQHVuc2VyaWFsaXplKCRkYXRhWyRpXVsnZXh0cmEnXSk7CiAgICAgICAgICAgICAgICBpZiggIWVtcHR5KCRkYXRhWyRpXVsnYXR0cmlicyddKSApICRkYXRhWyRpXVsnZXh0cmEnXSA9IHVuc2VyaWFsaXplKCRkYXRhWyRpXVsnYXR0cmlicyddKTsKICAgICAgICAgICAgICAgICR0aGlzLT5fY2FjaGVkX3Byb3BkZWZuc1skZGF0YVskaV1bJ25hbWUnXV0gPSAkZGF0YVskaV07CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgoKICAgIGZ1bmN0aW9uIEdldFByb3BlcnR5RGVmbiggJG5hbWUgKQogICAgewogICAgICAgICR0aGlzLT5fY2FjaGVfcHJvcGVydHlkZWZucygpOwogICAgICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9jYWNoZWRfcHJvcGRlZm5zKSApIHJldHVybiBGQUxTRTsKICAgICAgICBpZiggIWlzc2V0KCR0aGlzLT5fY2FjaGVkX3Byb3BkZWZuc1skbmFtZV0pKSByZXR1cm4gRkFMU0U7CiAgICAgICAgcmV0dXJuICR0aGlzLT5fY2FjaGVkX3Byb3BkZWZuc1skbmFtZV07CiAgICB9CgoKICAgIGZ1bmN0aW9uIEdldFByb3BlcnR5RGVmbnMoKQogICAgewogICAgICAgICR0aGlzLT5fY2FjaGVfcHJvcGVydHlkZWZucygpOwogICAgICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9jYWNoZWRfcHJvcGRlZm5zKSApIHJldHVybiBGQUxTRTsKICAgICAgICByZXR1cm4gJHRoaXMtPl9jYWNoZWRfcHJvcGRlZm5zOwogICAgfQoKCiAgICAvKioKICAgICAqIFJldHVybnMgc2VsZWN0IG9wdGlvbnMgYXMgYSBzaW1wbGUgb3IgYSAyIGRpbWVuc2lvbmFsIGFycmF5CiAgICAgKgogICAgICogQHBhcmFtIFN0cmluZyAkY29udHJvbG5hbWUgLSBuYW1lIG9mIHRoZSBkcm9wZG93biBhcyBpbiB0aGUgcHJvcGRlZm4gdGFibGUKICAgICAqIEBwYXJhbSBpbnQgJGRpbSAtIGRpbWVuc2lvbiBvZiB0aGUgYXJyYXkKICAgICAqIAlpZiAkZGltID09IDEsIHJldHVybnMgYSAxIGRpbWVuc2lvbmFsIGFycmF5IHRleHQ9Pm5hbWUKICAgICAqICAgIGlmICRkaW0gPT0gMiwgcmV0dXJucyBhIDIgZGltZW5zaW9uYWwgYXJyYXksIGVhY2ggaXRlbSBiZWluZyBhbgogICAgICogCQlhcnJheSB3aXRoIHByb3BlcnRpZXMgJ29wdGlvbl9uYW1lJywgJ29wdGlvbl90ZXh0JywgJ2NvbnRyb2xfbmFtZScuCiAgICAgKi8KICAgIGZ1bmN0aW9uIEdldFNlbGVjdE9wdGlvbnMoICRjb250cm9sbmFtZSwgJGRpbT0xICkKICAgIHsKICAgICAgICBpZiggISR0aGlzLT5fbXVsdGlzZWxlY3Rfb3B0aW9ucyApIHsKICAgICAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CgogICAgICAgICAgICAkcSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19kcm9wZG93bnMgT1JERVIgQlkgb3JkZXJfaWQiOwogICAgICAgICAgICAkZGJyID0gJGRiLT5HZXRBcnJheSgkcSk7CiAgICAgICAgICAgIGlmKCBpc19hcnJheSgkZGJyKSApICR0aGlzLT5fbXVsdGlzZWxlY3Rfb3B0aW9ucyA9ICRkYnI7CiAgICAgICAgfQoKICAgICAgICBpZiggIWNvdW50KCR0aGlzLT5fbXVsdGlzZWxlY3Rfb3B0aW9ucykgKSByZXR1cm4gZmFsc2U7CgogICAgICAgICRyZXQgPSBhcnJheSgpOwogICAgICAgIGZvciggJGkgPSAwOyAkaSA8IGNvdW50KCR0aGlzLT5fbXVsdGlzZWxlY3Rfb3B0aW9ucyk7ICRpKysgKSB7CiAgICAgICAgICAgICRyb3cgPSAkdGhpcy0+X211bHRpc2VsZWN0X29wdGlvbnNbJGldOwoKICAgICAgICAgICAgaWYoICRyb3dbJ2NvbnRyb2xfbmFtZSddID09ICRjb250cm9sbmFtZSApIHsKICAgICAgICAgICAgICAgIGlmKCAkZGltID09IDIgKSB7CiAgICAgICAgICAgICAgICAgICAgJHJldFtdID0gJHJvdzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICRyZXRbdHJpbSgkcm93WydvcHRpb25fdGV4dCddKV0gPSB0cmltKCRyb3dbJ29wdGlvbl9uYW1lJ10pOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmKCAhY291bnQoJHJldCkgKSByZXR1cm4gZmFsc2U7CgogICAgICAgIHJldHVybiAkcmV0OwogICAgfQoKCiAgICAvKioKICAgICAqIExvZyB0aGUgdXNlciBpbnRvIHRoZSBzaXRlLgogICAgICogVGhpcyBjaGVja3MgdGhlIHVzZXIgcGFzc3dvcmQsIGFuZCBwcmVmZXJlbmNlcyBhYm91dCBkdXBsaWNhdGUgbG9naW5zIGFuZCBvdGVociB0aGluZ3MgdGhlbiBtYXJrcyB0aGUgdXNlcgogICAgICogYXMgbG9nZ2VkIGluIHdpdGggdGhlIGFwcHJvcHJpYXRlIGRhdGFiYXNlIGNoYW5nZS4gIEl0IGRvZXMgbm90IHNlbmQgZXZlbnRzLgogICAgICoKICAgICAqIEBwYXJhbSBzdHJpbmcgJHVzZXJuYW1lCiAgICAgKiBAcGFyYW0gc3RyaW5nICRwYXNzd29yZCBUaGUgcGxhaW50ZXh0IHBhc3N3b3JkCiAgICAgKiBAcGFyYW0gc3RyaW5nICRncm91cHMgQSBjb21tYSBzZXBhcmF0ZWQgbGlzdCBvZiBncm91cCBuYW1lcyB0aGF0IHRoZSB1c2VyIG11c3QgYmUgYSBtZW1iZXIgb2YuCiAgICAgKiBAcGFyYW0gc3RyaW5nICRpZ25vcmVkCiAgICAgKiBAcGFyYW0gYm9vbCAkZm9yY2VfbG9nb3V0IE9wdGlvbmFsbHkgZm9yY2UgdGhlIHVzZXIgdG8gbG9nb3V0IGJlZm9yZSBsb2dnaW5nIGhpbSBpbiBhZ2Fpbi4KICAgICAqLwogICAgZnVuY3Rpb24gTG9naW4oICR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZ3JvdXBzID0gJycsICRpZ25vcmVkID0gZmFsc2UsICRmb3JjZV9sb2dvdXQgPSBmYWxzZSkKICAgIHsKICAgICAgICAkZXJyb3IgPSAnJzsKICAgICAgICAkdWlkID0gLTE7CiAgICAgICAgJGdDbXMgPSBDbXNBcHA6OmdldF9pbnN0YW5jZSgpOwogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRtb2QgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CgogICAgICAgIGlmKCAhJHRoaXMtPkNoZWNrUGFzc3dvcmQoICR1c2VybmFtZSwgJHBhc3N3b3JkLCAkZ3JvdXBzICkgKSB7CiAgICAgICAgICAgICR1aWQgPSAkdGhpcy0+R2V0VXNlcklEKCAkdXNlcm5hbWUgKTsKICAgICAgICAgICAgaWYoICEkdWlkICkgJHVpZCA9IC0xOwogICAgICAgICAgICAkZXJyb3IgPSAkbW9kLT5MYW5nKCdlcnJvcl9sb2dpbmZhaWxlZCcpOwogICAgICAgICAgICAkdGhpcy0+YWRkX2hpc3RvcnkoJHVpZCwnZmFpbCcpOwogICAgICAgICAgICByZXR1cm4gWyBGQUxTRSwgJG1vZC0+TGFuZygnZXJyb3JfbG9naW5mYWlsZWQnKSBdOwogICAgICAgIH0KCiAgICAgICAgJHVpZCA9ICR0aGlzLT5HZXRVc2VySUQoICR1c2VybmFtZSApOwogICAgICAgIGlmKCAhJHVpZCApIHJldHVybiBbIEZBTFNFLCAkbW9kLT5MYW5nKCdlcnJvcl91c2Vybm90Zm91bmQnKSBdOwogICAgICAgIGlmKCAkZm9yY2VfbG9nb3V0ICkgJHRoaXMtPkxvZ291dCgkdWlkKTsKCiAgICAgICAgaWYoICR0aGlzLT5Jc0FjY291bnRFeHBpcmVkKCAkdWlkICkgKSByZXR1cm4gYXJyYXkoRkFMU0UsJG1vZC0+TGFuZygnZXJyb3JfYWNjb3VudGV4cGlyZWQnKSk7CiAgICAgICAgaWYoICRtb2QtPkdldFByZWZlcmVuY2UoJ2FsbG93X3JlcGVhdGVkX2xvZ2lucycpID09IDAgKSB7CiAgICAgICAgICAgIC8vIG1ha2Ugc3VyZSB0aGlzIHVzZXIgaXNuJ3QgYWxyZWFkeSBsb2dnZWQgaW4KICAgICAgICAgICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4gV0hFUkUgVVNFUklEID0gPyI7CiAgICAgICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkdWlkICkgKTsKICAgICAgICAgICAgaWYoICRkYnJlc3VsdCAmJiAkZGJyZXN1bHQtPlJlY29yZENvdW50KCkgKSByZXR1cm4gWyBGQUxTRSwgJG1vZC0+TGFuZygnZXJyb3Jfbm9yZXBlYXRlZGxvZ2lucycpIF07CiAgICAgICAgfQoKICAgICAgICAkdGhpcy0+X19yZXNldCgpOwogICAgICAgICR0aGlzLT5fc2V0X3NhdmVkX2xvZ2luZGV0YWlscygkdWlkKTsKCiAgICAgICAgLy8gYW5kIGFkZCBoaXN0b3J5IGluZm8KICAgICAgICBhdWRpdCgkdWlkLCRtb2QtPkdldE5hbWUoKSwiJHVzZXJuYW1lIGxvZ2dlZCBpbiIpOwogICAgICAgICR0aGlzLT5hZGRfaGlzdG9yeSgkdWlkLCdsb2dpbicpOwoKICAgICAgICAvLyBzZW5kIHRoZSBldmVudC4KICAgICAgICAkaXAgPSBjZ2VfdXRpbHM6OmdldF9yZWFsX2lwKCk7CiAgICAgICAgJG1vZC0+U2VuZEV2ZW50KCdPbkxvZ2luJyxhcnJheSgnaWQnPT4kdWlkLCd1c2VybmFtZSc9PiR1c2VybmFtZSwnaXAnPT4kaXApKTsKCiAgICAgICAgcmV0dXJuIFsgJHVpZCBdOwogICAgfQoKCiAgICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICAvLyByZXR1cm5zIHRydWUvZmFsc2UKICAgIGZ1bmN0aW9uIEFzc2lnblVzZXJUb0dyb3VwKCAkdWlkLCAkZ2lkICkKICAgIHsKICAgICAgICAkdWlkID0gKGludCkgJHVpZDsKICAgICAgICAkZ2lkID0gKGludCkgJGdpZDsKICAgICAgICBpZiggJHVpZCA8IDEgfHwgJGdpZCA8IDEgKSByZXR1cm4gZmFsc2U7CiAgICAgICAgLy8gdmFsaWRhdGUgdGhlIHVzZXIgaWQKICAgICAgICBpZiggISR0aGlzLT5Vc2VyRXhpc3RzQnlJRCggJHVpZCApICkgcmV0dXJuIGZhbHNlOwoKICAgICAgICAvLyB2YWxpZGF0ZSB0aGUgZ3JvdXAgaWQKICAgICAgICBpZiggISR0aGlzLT5Hcm91cEV4aXN0c0J5SUQoICRnaWQgKSApIHJldHVybiBmYWxzZTsKCiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgLy8gbWFrZSBzdXJlIGl0IGFscmVhZHkgZG9lc24ndCBleGlzdAogICAgICAgICRxID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgV0hFUkUgdXNlcmlkID0gPyBBTkQgZ3JvdXBpZCA9ID8nOwogICAgICAgICR0bXAgPSAkZGItPkdldFJvdygkcSxhcnJheSgkdWlkLCRnaWQpKTsKICAgICAgICBpZiggJHRtcCApIHJldHVybiB0cnVlOwoKICAgICAgICAvLyBhZGQgdGhlIHJlY29yZCB0byB0aGUgdGFibGUgdG8gbWFrZSB0aGlzCiAgICAgICAgLy8gdXNlciBhIG1lbWJlciBvZiB0aGlzIGdyb3VwCiAgICAgICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgKHVzZXJpZCwgZ3JvdXBpZCkgVkFMVUVTICg/LD8pIjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCwgJGdpZCApICk7CiAgICAgICAgcmV0dXJuKCAkZGJyZXN1bHQgIT0gZmFsc2UgKTsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCi8vIHJldHVybnMgdHJ1ZS9mYWxzZQogICAgZnVuY3Rpb24gSXNWYWxpZFBhc3N3b3JkKCAkcGFzc3dvcmQgKQogICAgewogICAgICAgIC8vIGEgcGFzc3dvcmQgaXMgdmFsaWQsIGlmIGl0J3MgbGVuZ3RoIGlzCiAgICAgICAgLy8gd2l0aGluIGNlcnRhaW4gcmFuZ2VzCiAgICAgICAgJG1vZHVsZSA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAkbWlubGVuID0gJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnbWluX3Bhc3N3b3JkbGVuZ3RoJywgNiApOwogICAgICAgICRtYXhsZW4gPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnLCAyMCApOwogICAgICAgICRlbmhhbmNlZHB3ID0gKGludCkgJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnZW5oYW5jZWRfcGFzc3dvcmQnLDApOwogICAgICAgICRyZXF1aXJlZGNoYXJzID0gJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgncGFzc3dvcmRfcmVxdWlyZWRjaGFycycpOwogICAgICAgICRsZW4gPSBzdHJsZW4oJHBhc3N3b3JkKTsKICAgICAgICBpZiggJGxlbiA8ICRtaW5sZW4gfHwgJGxlbiA+ICRtYXhsZW4gKSB7CiAgICAgICAgICAgIHJldHVybiBGQUxTRTsKICAgICAgICB9CiAgICAgICAgaWYoICRlbmhhbmNlZHB3ICkgewogICAgICAgICAgICBpZiggIXByZWdfbWF0Y2goJyNbQS1aXSMnLCRwYXNzd29yZCkgKSByZXR1cm4gRkFMU0U7CiAgICAgICAgICAgIGlmKCAhcHJlZ19tYXRjaCgnI1swLTldIycsJHBhc3N3b3JkKSApIHJldHVybiBGQUxTRTsKICAgICAgICAgICAgJHRtcCA9IHN0cnBicmsoJHBhc3N3b3JkLCchZicpOwogICAgICAgICAgICBpZiggJHJlcXVpcmVkY2hhcnMgJiYgc3RycGJyaygkcGFzc3dvcmQsJHJlcXVpcmVkY2hhcnMpID09PSBGQUxTRSApIHJldHVybiBGQUxTRTsKICAgICAgICB9CgogICAgICAgIHJldHVybiBUUlVFOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KLy8gcmV0dXJucyBhbiBhcnJheQogICAgZnVuY3Rpb24gRGVsZXRlVXNlckZ1bGwoICRpZCApCiAgICB7CiAgICAgICAgJGRiID0gXGNnZV91dGlsczo6Z2V0X2RiKCk7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgJGlkID0gKGludCkgJGlkOwogICAgICAgICAgICBpZiggJGlkIDwgMSApIHJldHVybiBhcnJheShGQUxTRSwnSW52YWxpZCBVSUQnKTsKICAgICAgICAgICAgJHJlcyA9ICR0aGlzLT5HZXRVc2VySW5mbygkaWQpOwogICAgICAgICAgICBpZiggIWlzX2FycmF5KCRyZXMpIHx8ICRyZXNbMF09PSBGQUxTRSApIHJldHVybiBGQUxTRTsKICAgICAgICAgICAgJHVzZXJuYW1lID0gJHJlc1sxXVsndXNlcm5hbWUnXTsKCiAgICAgICAgICAgIC8vIGxvZyB0aGUgdXNlciBvdXQKICAgICAgICAgICAgJHRoaXMtPkxvZ291dFVzZXIoICRpZCApOwoKICAgICAgICAgICAgLy8gc2VuZCB0aGUgZXZlbnQuLi4gYmVmb3JlIHdlIGFjdHVhbGx5IGRlbGV0ZSBzdHVmZi4KICAgICAgICAgICAgJHBhcm1zID0gYXJyYXkoKTsKICAgICAgICAgICAgJHBhcm1zWydpZCddID0gJGlkOwogICAgICAgICAgICAkcGFybXNbJ3VzZXJuYW1lJ10gPSAkdXNlcm5hbWU7CiAgICAgICAgICAgICRtb2QgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgICAgICRtb2QtPlNlbmRFdmVudCggJ09uRGVsZXRlVXNlcicsICRwYXJtcyApOwoKICAgICAgICAgICAgJGRiLT5CZWdpblRyYW5zKCk7CgogICAgICAgICAgICAvLyBkZWxldGUgdXNlciBwcm9wZXJ0aWVzCiAgICAgICAgICAgICR0aGlzLT5EZWxldGVBbGxVc2VyUHJvcGVydGllc0Z1bGwoICRpZCApOwoKICAgICAgICAgICAgLy8gZGVsZXRlIHVzZXIgZnJvbSBncm91cHMKICAgICAgICAgICAgJHJldCA9ICR0aGlzLT5SZW1vdmVVc2VyRnJvbUdyb3VwKCAkaWQsICcnICk7CiAgICAgICAgICAgIGlmKCAkcmV0WzBdID09IGZhbHNlICkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCdQcm9ibGVtIHJlbW92aW5nIHVzZXIgZnJvbSBncm91cCcpOwogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBkZWxldGUgdGhlIHVzZXIgaGlzdG9yeQogICAgICAgICAgICAkcSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfaGlzdG9yeSBXSEVSRSB1c2VyaWQgPSA/JzsKICAgICAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRpZCApICk7CgogICAgICAgICAgICAvLyBkZWxldGUgdXNlciByZWNvcmQKICAgICAgICAgICAgJHEgPSAiREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIFdIRVJFIGlkID0gPyI7CiAgICAgICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkaWQgKSApOwoKICAgICAgICAgICAgLy8gYW5kIGRlbGV0ZSBhbnl0aGluZyBmcm9tIHRoZSB0ZW1wY29kZXMgdGFibGUgdG9vCiAgICAgICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc190ZW1wY29kZSBXSEVSRSB1c2VyaWQgPSA/IjsKICAgICAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRpZCApICk7CgogICAgICAgICAgICAkdGhpcy0+X3VzZXJpZGJ5bmFtZSA9IGFycmF5KCk7CiAgICAgICAgICAgIGZldV91c2VyX2NhY2hlOjpkZWxfdXNlcigkaWQpOwogICAgICAgICAgICAkZGItPkNvbW1pdFRyYW5zKCk7CgogICAgICAgICAgICByZXR1cm4gYXJyYXkoIFRSVUUsICIiICk7CiAgICAgICAgfQogICAgICAgIGNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgICAgICAgICAkZGItPlJvbGxiYWNrVHJhbnMoKTsKICAgICAgICAgICAgJG1vZCA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAgICAgYXVkaXQoJGlkLCRtb2QtPkdldE5hbWUoKSwnUHJvYmxlbSBkZWxldGluZyB1c2VyOiAnLiRlLT5HZXRNZXNzYWdlKCkpOwogICAgICAgICAgICBkZWJ1Z190b19sb2coX19NRVRIT0RfXyk7CiAgICAgICAgICAgIGRlYnVnX3RvX2xvZygkZS0+R2V0TWVzc2FnZSgpKTsKICAgICAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCRlLT5HZXRNZXNzYWdlKCkpOwogICAgICAgIH0KICAgIH0KCgogICAgcHJpdmF0ZSBmdW5jdGlvbiBfZ2V0X2dyb3VwaW5mbygkd2l0aF9jb3VudCA9IGZhbHNlKQogICAgewogICAgICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl9ncm91cGluZm9fY2FjaGUpICkgewogICAgICAgICAgICAkYXV0aF9jb25zdW1lciA9IGZldV91dGlsczo6Z2V0X2F1dGhfY29uc3VtZXIoKTsKICAgICAgICAgICAgaWYoICRhdXRoX2NvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9MSVNUR1JPVVBTKSApIHsKICAgICAgICAgICAgICAgICR0bXAgPSAkYXV0aF9jb25zdW1lci0+Z2V0X2dyb3VwX2xpc3QoVFJVRSk7CgkJJHRoaXMtPl9ncm91cGluZm9fY2FjaGUgPSBhcnJheSgpOwogICAgICAgICAgICAgICAgaWYoICFjb3VudCgkdG1wKSApIHJldHVybjsKICAgICAgICAgICAgICAgICRvdXQgPSBhcnJheSgpOwogICAgICAgICAgICAgICAgZm9yZWFjaCggJHRtcCBhcyAkZ2lkID0+ICRyZWMgKSB7CiAgICAgICAgICAgICAgICAgICAgJHRtcDIgPSBhcnJheSgnaWQnPT4kZ2lkLCdncm91cGRlc2MnPT4nJyk7CiAgICAgICAgICAgICAgICAgICAgaWYoIGlzX3N0cmluZygkcmVjKSAmJiAhaXNfYXJyYXkoJHJlYykgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR0bXAyWydncm91cG5hbWUnXSA9ICRyZWM7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKCBpc3NldCgkcmVjWyduYW1lJ10pICkgewogICAgICAgICAgICAgICAgICAgICAgICAkdG1wMlsnZ3JvdXBuYW1lJ10gPSAkcmVjWyduYW1lJ107CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKCBpc3NldCgkcmVjWydncm91cG5hbWUnXSkgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR0bXAyWydncm91cG5hbWUnXSA9ICRyZWNbJ2dyb3VwbmFtZSddOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBpZiggaXNfYXJyYXkoJHJlYykgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKCBpc3NldCgkcmVjWydkZXNjJ10pICkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRtcDJbJ2dyb3VwZGVzYyddID0gJHJlY1snZGVzYyddOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYoIGlzc2V0KCRyZWNbJ2Rlc2NyaXB0aW9uJ10pICkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRtcDJbJ2dyb3VwZGVzYyddID0gJHJlY1snZGVzY3JpcHRpb24nXTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmKCBpc3NldCgkcmVjWydncm91cGRlc2MnXSkgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdG1wMlsnZ3JvdXBkZXNjJ10gPSAkcmVjWydncm91cGRlc2MnXTsKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgaWYoIGlzc2V0KCRyZWNbJ2NvdW50J10pICkgJHRtcDJbJ2NvdW50J10gPSAkcmVjWydjb3VudCddOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgJG91dFskZ2lkXSA9ICR0bXAyOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJHRoaXMtPl9ncm91cGluZm9fY2FjaGUgPSAkb3V0OwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyB0aGUgY29uc3VtZXIgZG9lcyBub3QgcHJvdmlkZSBncm91cCBpbmZvLi4uLiBzbyB3ZSBnb3R0YSBsaXN0IGVtLgogICAgICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2dyb3Vwcyc7CiAgICAgICAgICAgIGlmKCAkd2l0aF9jb3VudCApIHsKICAgICAgICAgICAgICAgICRxdWVyeSA9ICdTRUxFQ1QgZy4qLGNvdW50KGIudXNlcmlkKSBBUyBjb3VudCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19ncm91cHMgZwogICAgICAgICAgICAgICAgICBMRUZUIEpPSU4gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgYgogICAgICAgICAgICAgICAgICBPTiBnLmlkID0gYi5ncm91cGlkIEdST1VQIEJZIGcuaWQnOwogICAgICAgICAgICB9CiAgICAgICAgICAgICRkYnIgPSAkZGItPkdldEFycmF5KCRxdWVyeSk7CiAgICAgICAgICAgIGlmKCBpc19hcnJheSgkZGJyKSApICR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlID0gY2dlX2FycmF5Ojp0b19oYXNoKCRkYnIsJ2lkJyk7CiAgICAgICAgfQogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KLy8gcmV0dXJucyBhbiBhcnJheQogICAgZnVuY3Rpb24gR2V0R3JvdXBJbmZvKCAkZ2lkICkKICAgIHsKICAgICAgICAkdGhpcy0+X2dldF9ncm91cGluZm8oKTsKICAgICAgICBpZiggaXNfYXJyYXkoJHRoaXMtPl9ncm91cGluZm9fY2FjaGUpICYmIGlzc2V0KCR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlWyRnaWRdKSApIHJldHVybiAkdGhpcy0+X2dyb3VwaW5mb19jYWNoZVskZ2lkXTsKICAgIH0KCi8qKgogKiBSZXR1cm4gYW4gYXJyYXkgb2YgdXNlciBpbmZvcm1hdGlvbgogKgogKiBAcGFyYW0gYXJyYXkgQW4gYXJyYXkgb2YgaW50ZWdlciB1c2VyIGlkcwogKiBAcGFyYW0gYm9vb2xlYW4gZmxhZyBpbmRpY2F0aW5nIHdldGhlciB0byByZXR1cm4gcHJvcGVydHkgaW5mb3JtYXRpb24KICogQHJldHVybiBhcnJheSBvZiB1c2VyIGluZm8uICBPciBudWxsLgogKiBAZGVwcmVjYXRlZAogKi8KICAgIGZ1bmN0aW9uIEdldEJ1bGtVc2VySW5mbyggJHVpZHMsICRkZWVwID0gVFJVRSApCiAgICB7CiAgICAgICAgZmV1X3VzZXJfY2FjaGU6OmxvYWRfdXNlcnMoJHVpZHMsJGRlZXApOwoKICAgICAgICAkb3V0ID0gYXJyYXkoKTsKICAgICAgICBmb3JlYWNoKCAkdWlkcyBhcyAkb25lICkgewogICAgICAgICAgICAkb25lID0gKGludCkkb25lOwogICAgICAgICAgICBpZiggJG9uZSA8IDEgKSBjb250aW51ZTsKICAgICAgICAgICAgJHQgPSBmZXVfdXNlcl9jYWNoZTo6Z2V0X3VzZXJfbm9sb2FkKCRvbmUpOwogICAgICAgICAgICBpZiggaXNfYXJyYXkoJHQpICkgJG91dFtdID0gJHQ7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkb3V0OwogICAgfQoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgovLyByZXR1cm5zIGFuIGFycmF5Ci8vIHNlY29uZCBlbGVtZW50IG9mIGFycmF5IG1heSBiZSBhbiBhcnJheQogICAgZnVuY3Rpb24gR2V0VXNlckluZm8oICR1aWQsICRkZWVwID0gRkFMU0UgKQogICAgewogICAgICAgIGlmKCAhJHVpZCApIHJldHVybiBhcnJheShGQUxTRSk7IC8vIHRvZG8sIGFkZCBhIG1lc3NhZ2UKICAgICAgICAkcm93ID0gZmV1X3VzZXJfY2FjaGU6OmdldF91c2VyKCR1aWQsJGRlZXApOwogICAgICAgIGlmKCAhaXNfYXJyYXkoJHJvdykgKSByZXR1cm4gYXJyYXkoRkFMU0UpOwogICAgICAgIHJldHVybiBhcnJheSggVFJVRSwgJHJvdyApOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KLy8gcmV0dXJucyBhbiBhcnJheQovLyBzZWNvbmQgZWxlbWVudCBvZiBhcnJheSBtYXkgYmUgYW4gYXJyYXkKICAgIGZ1bmN0aW9uIEdldFVzZXJJbmZvQnlOYW1lKCAkdXNlcm5hbWUgKQogICAgewogICAgICAgIGlmKCAhJHVzZXJuYW1lICkgcmV0dXJuIGFycmF5KEZBTFNFKTsgLy8gdG9kbywgYWRkIGEgbWVzc2FnZQoKICAgICAgICAkdWlkID0gJHRoaXMtPkdldFVzZXJJRCgkdXNlcm5hbWUpOwogICAgICAgIGlmKCAhJHVpZCApIHsKICAgICAgICAgICAgJG1vZHVsZSA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCRtb2R1bGUtPkxhbmcoJ2Vycm9yX3VzZXJub3Rmb3VuZCcpKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuICR0aGlzLT5HZXRVc2VySW5mbygkdWlkKTsKICAgIH0KCgogICAgcHJvdGVjdGVkIGZ1bmN0aW9uIEdldFVzZXJJbmZvQnlQcm9wZXJ0eSgkcHJvcG5hbWUsJHByb3B2YWx1ZSA9IG51bGwpCiAgICB7CiAgICAgICAgLy8gbm90ZS4uLiBjYW5ub3Qgd29yayBvbiBlbmNyeXB0ZWQgcHJvcGVydGllcy4KICAgICAgICAkbW9kdWxlID0gJHRoaXMtPkdldE1vZHVsZSgpOwogICAgICAgICRkZWZucyA9ICR0aGlzLT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgICAgICAgaWYoICFpc19hcnJheSgkZGVmbnMpICkgcmV0dXJuIGFycmF5KEZBTFNFLCRtb2R1bGUtPkxhbmcoJ2Vycm9yX2RiZXJyb3InKSk7CiAgICAgICAgaWYoICFpc3NldCgkZGVmbnNbJHByb3BuYW1lXSkgKSByZXR1cm4gYXJyYXkoRkFMU0UsJG1vZHVsZS0+TGFuZygnZXJyb3JfZGJlcnJvcicpKTsKICAgICAgICBpZiggJGRlZm5zWyRwcm9wbmFtZV1bJ2VuY3J5cHQnXSApIHJldHVybiBhcnJheShGQUxTRSwkbW9kdWxlLT5MYW5nKCdlcnJvcl9kYmVycm9yJykpOwoKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAkcGFybXMgPSBhcnJheSgkcHJvcG5hbWUpOwogICAgICAgICRxdWVyeSA9ICdTRUxFQ1QgdXNlcmlkIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgdXAgV0hFUkUgdXAudGl0bGUgPSA/JzsKCiAgICAgICAgaWYoICFpc19udWxsKCRwcm9wdmFsdWUpICkgewogICAgICAgICAgICAkcXVlcnkgLj0gJyBBTkQgZGF0YSA9ID8nOwogICAgICAgICAgICAkcGFybXNbXSA9ICRwcm9wdmFsdWU7CiAgICAgICAgfQogICAgICAgICR1aWQgPSAkZGItPkdldE9uZSgkcXVlcnksJHBhcm1zKTsKICAgICAgICBpZiggISR1aWQgKSByZXR1cm4gYXJyYXkoRkFMU0UsJG1vZHVsZS0+TGFuZygnZXJyb3JfdXNlcm5vdGZvdW5kJykpOwoKICAgICAgICByZXR1cm4gJHRoaXMtPkdldFVzZXJJbmZvKCAkdWlkICk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIEdldFVzZXJIaXN0b3J5KCR1aWQsJGFjdGlvbj0nJywkY291bnQ9LTEpCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJHBhcm1zID0gYXJyYXkoJHVpZCk7CiAgICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCAqIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2hpc3RvcnkgV0hFUkUgdXNlcmlkID0gPyc7CiAgICAgICAgaWYoICFlbXB0eSgkYWN0aW9uKSApIHsKICAgICAgICAgICAgJHF1ZXJ5IC49ICcgQU5EIGFjdGlvbiA9ID8nOwogICAgICAgICAgICAkcGFybXNbXSA9ICRhY3Rpb247CiAgICAgICAgfQogICAgICAgICRxdWVyeSAuPSAnIE9SREVSIEJZIHJlZmRhdGUgREVTQyc7CgogICAgICAgICRyZXN1bHRzID0gJyc7CiAgICAgICAgaWYoICRjb3VudCA8PSAwICkgewogICAgICAgICAgICAkcmVzdWx0cyA9ICRkYi0+R2V0QXJyYXkoJHF1ZXJ5LCRwYXJtcyk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkZGJyID0gJGRiLT5TZWxlY3RMaW1pdCgkcXVlcnksKGludCkkY291bnQpOwogICAgICAgICAgICB3aGlsZSggJGRiciAmJiAoJHJvdyA9ICRkYnItPkZldGNoUm93KCkpICkgewogICAgICAgICAgICAgICAgJHJlc3VsdHNbXSA9ICRyb3c7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmKCBjb3VudCgkcmVzdWx0cykgPT0gMSApIHsKICAgICAgICAgICAgICAgICR0bXAgPSAkcmVzdWx0c1swXTsKICAgICAgICAgICAgICAgICRyZXN1bHRzID0gJHRtcDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gJHJlc3VsdHM7CiAgICB9CgoKICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRMb2dnZWRJblVzZXJzKCRub3RfYWN0aXZlX3NpbmNlID0gJycpCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CgogICAgICAgICRxID0gJ1NFTEVDVCB1c2VyaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4nOwogICAgICAgICRxcGFybXMgPSBhcnJheSgpOwogICAgICAgIGlmKCAkbm90X2FjdGl2ZV9zaW5jZSApIHsKICAgICAgICAgICAgJHEgLj0gIiBXSEVSRSBsYXN0dXNlZCA8ID8iOwogICAgICAgICAgICAkcXBhcm1zW10gPSAkbm90X2FjdGl2ZV9zaW5jZTsKICAgICAgICB9CgogICAgICAgICRyZXMgPSAkZGItPkdldENvbCgkcSwkcXBhcm1zKTsKICAgICAgICByZXR1cm4gJHJlczsKICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCi8vIHJldHVybnMgYW4gYXJyYXkgb3IgZmFsc2UKICAgIGZ1bmN0aW9uIENvdW50VXNlcnNJbkdyb3VwKCAkZ3JvdXBpZCApCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CgogICAgICAgICRxID0gJyc7CiAgICAgICAgJHBhcm1zID0gYXJyYXkoKTsKICAgICAgICBpZiggJGdyb3VwaWQgPT0gJycgfHwgJGdyb3VwaWQgPCAwICkgewogICAgICAgICAgICAkcSA9ICJTRUxFQ1QgY291bnQoaWQpIGFzIG51bSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2VycyBXSEVSRSBjb2FsZXNjZShkaXNhYmxlZCwwKSA9IDAiOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJHEgPSAiU0VMRUNUIGNvdW50KGlkKSBhcyBudW0gRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMsIi4KICAgICAgICAgICAgICAgIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfYmVsb25ncyBXSEVSRSBpZD11c2VyaWQgQU5EIGdyb3VwaWQgPSA/IEFORCBjb2FsZXNjZShkaXNhYmxlZCwwKSA9IDAiOwogICAgICAgICAgICAkcGFybXNbXSA9ICRncm91cGlkOwogICAgICAgIH0KCiAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgJHBhcm1zICk7CiAgICAgICAgaWYoICEkZGJyZXN1bHQgKSByZXR1cm4gZmFsc2U7CgogICAgICAgICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgICAgICAgcmV0dXJuICRyb3dbJ251bSddOwogICAgfQoKCi8qKgogKiBSZXBsYWNlIHRoaXMgY29kZSB3aXRoIGEgdXNlciBxdWVyeQogKi8KICAgIGZ1bmN0aW9uIEdldEZ1bGxVc2Vyc0luR3JvdXAoJGdpZCkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAkcXVlcnkgPSAnU0VMRUNUIHVzZXJpZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIFdIRVJFIGdyb3VwaWQgPSA/JzsKICAgICAgICAkdG1wID0gJGRiLT5HZXRDb2woJHF1ZXJ5LGFycmF5KCRnaWQpKTsKICAgICAgICBpZiggISR0bXAgKSByZXR1cm4gRkFMU0U7CgogICAgICAgIGZldV91c2VyX2NhY2hlOjpsb2FkX3VzZXJzKCR0bXAsVFJVRSk7CiAgICAgICAgJG91dCA9IGFycmF5KCk7CiAgICAgICAgZm9yZWFjaCggJHRtcCBhcyAkb25lICkgewogICAgICAgICAgICAkb25lID0gKGludCkkb25lOwogICAgICAgICAgICBpZiggJG9uZSA8IDEgKSBjb250aW51ZTsKCiAgICAgICAgICAgICRyZWMgPSBmZXVfdXNlcl9jYWNoZTo6Z2V0X3VzZXJfbm9sb2FkKCRvbmUsVFJVRSk7CiAgICAgICAgICAgIGlmKCBpc19hcnJheSgkcmVjKSAmJiBpc3NldCgkcmVjWydmcHJvcHMnXSkgKSB7CiAgICAgICAgICAgICAgICAkdG1wMiA9IGFycmF5KCk7CiAgICAgICAgICAgICAgICBmb3JlYWNoKCAkcmVjWydmcHJvcHMnXSBhcyAkb25lX3Byb3AgKSB7CiAgICAgICAgICAgICAgICAgICAgJHRtcDJbJG9uZV9wcm9wWyd0aXRsZSddXSA9ICRvbmVfcHJvcFsnZGF0YSddOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJHJlY1sncHJvcHMnXSA9ICR0bXAyOwogICAgICAgICAgICB9CiAgICAgICAgICAgICRvdXRbXSA9ICRyZWM7CiAgICAgICAgfQoKICAgICAgICBpZiggY291bnQoJG91dCkgKSByZXR1cm4gJG91dDsKICAgICAgICByZXR1cm4gRkFMU0U7CiAgICB9CgoKLy8gZGVwcmVjYXRlZAogICAgZnVuY3Rpb24gR2V0VXNlcnNJbkdyb3VwKCAkZ3JvdXBpZCA9ICcnLCAkdXNlcnJlZ2V4ID0gJycsICRsaW1pdCA9ICcnLCAkc29ydCA9ICcnLCAkcHJvcGVydHkgPSAnJywgJHByb3ByZWdleCA9ICcnLAogICAgJGxvZ2dlZGlub25seSA9IDAsICRzdGFydF9yZWNvcmQgPSAwKQogICAgewogICAgICAgIC8vIHRvZG86IHRoaXMgc2hvdWxkIGdvIGludG8gdGhlIGNvbnN1bWVyLgogICAgICAgICR0aGlzLT5yZXNldF9sYXN0dXNlcnF1ZXJ5KCk7CiAgICAgICAgJHF1ZXJ5ID0gbmV3IGZldV91c2VyX3F1ZXJ5KCk7CiAgICAgICAgaWYoIChpbnQpJGxpbWl0ID4gMCApICRxdWVyeS0+c2V0X3BhZ2VsaW1pdCgkbGltaXQpOwogICAgICAgIGlmKCAoaW50KSRzdGFydF9yZWNvcmQgPiAwICkgJHF1ZXJ5LT5zZXRfb2Zmc2V0KCRzdGFydF9yZWNvcmQpOwogICAgICAgIGlmKCAkZ3JvdXBpZCA+IDAgKSAkcXVlcnktPmFkZF9hbmRfb3B0KGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfR1JPVVBJRCwkZ3JvdXBpZCk7CiAgICAgICAgaWYoICR1c2VycmVnZXggKSAkcXVlcnktPmFkZF9hbmRfb3B0KGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfVVNFUk5BTUVfUkUsJHVzZXJyZWdleCk7CiAgICAgICAgaWYoICRwcm9wZXJ0eSAmJiAkcHJvcHJlZ2V4ICkgJHF1ZXJ5LT5hZGRfYW5kX29wdF9vYmoobmV3IGZldV91c2VyX3F1ZXJ5X29wdChmZXVfdXNlcl9xdWVyeV9vcHQ6Ok1BVENIX1BST1BFUlRZX1JFLCRwcm9wZXJ0eSwkcHJvcHJlZ2V4KSk7CiAgICAgICAgaWYoICRsb2dnZWRpbm9ubHkgKSAkcXVlcnktPmFkZF9hbmRfb3B0KGZldV91c2VyX3F1ZXJ5X29wdDo6TUFUQ0hfTE9HR0VESU4sMSk7CiAgICAgICAgJHF1ZXJ5LT5zZXRfcmVzdWx0X3R5cGUoZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9UWVBFX0ZVTEwpOwoKICAgICAgICBzd2l0Y2goICRzb3J0ICkgewogICAgICAgIGNhc2UgJ3VzZXJuYW1lJzoKICAgICAgICAgICAgJHF1ZXJ5LT5zZXRfc29ydGJ5KGZldV91c2VyX3F1ZXJ5OjpSRVNVTFRfU09SVEJZX1VTRVJOQU1FKTsKICAgICAgICAgICAgJHF1ZXJ5LT5zZXRfc29ydG9yZGVyKGZldV91c2VyX3F1ZXJ5OjpSRVNVTFRfU09SVE9SREVSX0FTQyk7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ3VzZXJuYW1lIGRlc2MnOgogICAgICAgICAgICAkcXVlcnktPnNldF9zb3J0YnkoZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUQllfVVNFUk5BTUUpOwogICAgICAgICAgICAkcXVlcnktPnNldF9zb3J0b3JkZXIoZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUT1JERVJfREVTQyk7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ2NyZWF0ZWRhdGUnOgogICAgICAgICAgICAkcXVlcnktPnNldF9zb3J0YnkoZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUQllfQ1JFQVRFRCk7CiAgICAgICAgICAgICRxdWVyeS0+c2V0X3NvcnRvcmRlcihmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRPUkRFUl9BU0MpOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICdjcmVhdGVkYXRlIGRlc2MnOgogICAgICAgICAgICAkcXVlcnktPnNldF9zb3J0YnkoZmV1X3VzZXJfcXVlcnk6OlJFU1VMVF9TT1JUQllfQ1JFQVRFRCk7CiAgICAgICAgICAgICRxdWVyeS0+c2V0X3NvcnRvcmRlcihmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRPUkRFUl9ERVNDKTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnZXhwaXJlcyc6CiAgICAgICAgICAgICRxdWVyeS0+c2V0X3NvcnRieShmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRCWV9FWFBJUkVTKTsKICAgICAgICAgICAgJHF1ZXJ5LT5zZXRfc29ydG9yZGVyKGZldV91c2VyX3F1ZXJ5OjpSRVNVTFRfU09SVE9SREVSX0FTQyk7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ2V4cGlyZXMgZGVzYyc6CiAgICAgICAgICAgICRxdWVyeS0+c2V0X3NvcnRieShmZXVfdXNlcl9xdWVyeTo6UkVTVUxUX1NPUlRCWV9FWFBJUkVTKTsKICAgICAgICAgICAgJHF1ZXJ5LT5zZXRfc29ydG9yZGVyKGZldV91c2VyX3F1ZXJ5OjpSRVNVTFRfU09SVE9SREVSX0RFU0MpOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CgogICAgICAgICRycyA9ICRxdWVyeS0+ZXhlY3V0ZSgpOwogICAgICAgICR0b3RhbF9tYXRjaGVzID0gJHJzLT5nZXRfZm91bmRfcm93cygpOwogICAgICAgICRkYXRhID0gYXJyYXkoKTsKICAgICAgICB3aGlsZSggISRycy0+RU9GICkgewogICAgICAgICAgICAkZGF0YVtdID0gJHJzLT5maWVsZHM7CiAgICAgICAgICAgICRycy0+TW92ZU5leHQoKTsKICAgICAgICB9CiAgICAgICAgJHRoaXMtPl9sYXN0X3VzZXJxdWVyeV9tYXRjaGVzID0gJGRhdGE7CiAgICAgICAgJHRoaXMtPl9sYXN0X3VzZXJxdWVyeV9jb3VudCA9ICR0b3RhbF9tYXRjaGVzOwogICAgICAgIHJldHVybiAkZGF0YTsKICAgIH0KCi8vIGRlcHJlY2F0ZWQKICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfbGFzdHVzZXJxdWVyeV9jb3VudCgpCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5fbGFzdF91c2VycXVlcnlfY291bnQ7CiAgICB9CgovLyBkZXByZWNhdGVkCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2xhc3R1c2VycXVlcnlfbWF0Y2hlcygpCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5fbGFzdF91c2VycXVlcnlfbWF0Y2hlczsKICAgIH0KCi8vIGRlcHJlY2F0ZWQKICAgIHB1YmxpYyBmdW5jdGlvbiByZXNldF9sYXN0dXNlcnF1ZXJ5KCkKICAgIHsKICAgICAgICAkdGhpcy0+X2xhc3RfdXNlcnF1ZXJ5X2NvdW50ID0gbnVsbDsKICAgICAgICAkdGhpcy0+X2xhc3RfdXNlcnF1ZXJ5X21hdGNoZXMgPSBudWxsOwogICAgfQoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgovLyByZXR1cm5zIHRydWUvZmFsc2UKICAgIGZ1bmN0aW9uIEdyb3VwRXhpc3RzQnlJRCggJGdpZCApCiAgICB7CiAgICAgICAgJGRhdGEgPSAkdGhpcy0+R2V0R3JvdXBJbmZvKCAkZ2lkICk7CiAgICAgICAgcmV0dXJuKCAkZGF0YSAhPSBmYWxzZSApOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KLy8gcmV0dXJucyB0cnVlL2ZhbHNlCiAgICBmdW5jdGlvbiBHcm91cEV4aXN0c0J5TmFtZSggJG5hbWUgKQogICAgewogICAgICAgICRnaWQgPSAkdGhpcy0+R2V0R3JvdXBJRCggJG5hbWUgKTsKICAgICAgICByZXR1cm4oICRnaWQgIT0gZmFsc2UgKTsKICAgIH0KCgogICAgZnVuY3Rpb24gTG9nZ2VkSW5FbWFpbCgpCiAgICB7CiAgICAgICAgJHVzZXJpZD0kdGhpcy0+TG9nZ2VkSW5JZCgpOwogICAgICAgIHJldHVybiAkdGhpcy0+R2V0RW1haWwoJHVzZXJpZCk7CiAgICB9CgoKICAgIGZ1bmN0aW9uIEdldEVtYWlsKCR1aWQpCiAgICB7CiAgICAgICAgJG1vZHVsZSA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAkcmVzdWx0ID0gZmFsc2U7CgogICAgICAgIGlmICgkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCd1c2VybmFtZV9pc19lbWFpbCcpKSB7CiAgICAgICAgICAgICR0bXAgPSBmZXVfdXNlcl9jYWNoZTo6Z2V0X3VzZXIoJHVpZCk7CiAgICAgICAgICAgIGlmKCAhaXNfYXJyYXkoJHRtcCkgKSByZXR1cm4gRkFMU0U7CiAgICAgICAgICAgICRyZXN1bHQgPSAkdG1wWyd1c2VybmFtZSddOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgLy8gZ2V0IHRoZSB1c2VycyBmaXJzdCBlbWFpbCBhZGRyZXNzLgogICAgICAgICAgICAkcSA9ICdTRUxFQ1QgZGF0YSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZGVmbiwnLgogICAgICAgICAgICAgICAgY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIFdIRVJFIG5hbWU9dGl0bGUgQU5EIHR5cGU9MiBBTkQgdXNlcmlkID0gPyc7CiAgICAgICAgICAgICRyZXN1bHQgPSAkZGItPkdldE9uZSggJHEsIGFycmF5KCAkdWlkICkgKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuICRyZXN1bHQ7CiAgICB9CgoKICAgIC8vIHRvZG86IG1vdmUgdGhpcyB0byBtYWluIG1vZHVsZS4KICAgIGZ1bmN0aW9uIElzVmFsaWRFbWFpbEFkZHJlc3MoICRlbWFpbCwgJHVpZCA9IC0xLCAkY2hlY2tfZXhpc3RpbmcgPSBGQUxTRSApCiAgICB7CiAgICAgICAgJG1vZHVsZSA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAkcmVzdWx0ID0gYXJyYXkoKTsKICAgICAgICBpZiggIWlzX2VtYWlsKCRlbWFpbCkgKSB7CiAgICAgICAgICAgICRyZXN1bHRbMF0gPSBmYWxzZTsKICAgICAgICAgICAgJHJlc3VsdFsxXSA9ICRtb2R1bGUtPkxhbmcoJ2Vycm9yX2ltcHJvcGVyZW1haWxmb3JtYXQnKTsKICAgICAgICAgICAgcmV0dXJuICRyZXN1bHQ7CiAgICAgICAgfQoKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCiAgICAgICAgaWYoICRjaGVja19leGlzdGluZyApIHsKICAgICAgICAgICAgaWYgKCRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJykpIHsKICAgICAgICAgICAgICAgICRxID0gJ1NFTEVDVCB1c2VybmFtZSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyBXSEVSRSB1c2VybmFtZSA9ID8nOwogICAgICAgICAgICAgICAgJHBhcm0gPSBhcnJheSgkZW1haWwpOwogICAgICAgICAgICAgICAgaWYgKCR1aWQgPiAtMSkgewogICAgICAgICAgICAgICAgICAgICRxIC49ICcgQU5EIGlkICE9ID8nOwogICAgICAgICAgICAgICAgICAgICRwYXJtW10gPSAkdWlkOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgJHBhcm0gKTsKICAgICAgICAgICAgICAgIGlmKCAkZGJyZXN1bHQgJiYgJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpICkgewogICAgICAgICAgICAgICAgICAgICRyZXN1bHRbMF0gPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAkcmVzdWx0WzFdID0gJG1vZHVsZS0+TGFuZygnZXJyb3JfZW1haWxhbHJlYWR5dXNlZCcpOwogICAgICAgICAgICAgICAgICAgIHJldHVybiAkcmVzdWx0OwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgaWYoICEkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfZW1haWxzJykgKSB7CiAgICAgICAgICAgICAgICAkcSA9ICJTRUxFQ1QgZGF0YSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZGVmbiwiLgogICAgICAgICAgICAgICAgICAgIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBXSEVSRSBuYW1lPXRpdGxlIEFORCB0eXBlPTIgQU5EIGRhdGEgTElLRSA/IjsKICAgICAgICAgICAgICAgICRwYXJtcyA9IGFycmF5KCAkZW1haWwgKTsKICAgICAgICAgICAgICAgIGlmKCAkdWlkID4gLTEgKSB7CiAgICAgICAgICAgICAgICAgICAgJHEgLj0gJyBBTkQgdXNlcmlkICE9ID8nOwogICAgICAgICAgICAgICAgICAgICRwYXJtc1tdID0gJHVpZDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkZW1haWwgKSApOwogICAgICAgICAgICAgICAgaWYoICRkYnJlc3VsdCAmJiAkZGJyZXN1bHQtPlJlY29yZENvdW50KCkgKSB7CiAgICAgICAgICAgICAgICAgICAgJHJlc3VsdFswXSA9IGZhbHNlOwogICAgICAgICAgICAgICAgICAgICRyZXN1bHRbMV0gPSAkbW9kdWxlLT5MYW5nKCdlcnJvcl9lbWFpbGFscmVhZHl1c2VkJyk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICRyZXN1bHQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgICRyZXN1bHRbMF0gPSB0cnVlOwogICAgICAgIHJldHVybiAkcmVzdWx0OwogICAgfQoKCiAgICBmdW5jdGlvbiBHZXRVc2VybmFtZVByb21wdCgpCiAgICB7CiAgICAgICAgJGNvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwogICAgICAgIHJldHVybiAkY29uc3VtZXItPmdldF91c2VybmFtZV9wcm9tcHQoKTsKICAgIH0KCi8vIHRvZG86IG1vdmUgdGhpcyB0byB0aGUgbWFpbiBtb2R1bGUuCiAgICBmdW5jdGlvbiBJc1ZhbGlkVXNlcm5hbWUoICR1c2VybmFtZSwgJGNoZWNrX2VtYWlsID0gdHJ1ZSwgJHVpZCA9IC0xICkKICAgIHsKICAgICAgICAkY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CiAgICAgICAgcmV0dXJuICRjb25zdW1lci0+dmFsaWRhdGVfdXNlcm5hbWUoJHVzZXJuYW1lLCRjaGVja19lbWFpbCwkdWlkKTsKICAgIH0KCgogICAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgLy8gcmV0dXJucyBhbiBhcnJheQogICAgZnVuY3Rpb24gUmVtb3ZlVXNlckZyb21Hcm91cCggJHVpZCwgJGdpZCApCiAgICB7CiAgICAgICAgJHVpZCA9IChpbnQpICR1aWQ7CiAgICAgICAgJGdpZCA9IChpbnQpICRnaWQ7CiAgICAgICAgJGRiID0gXGNtc191dGlsczo6Z2V0X2RiKCk7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgaWYoICR1aWQgPCAxICkgcmV0dXJuIGFycmF5KEZBTFNFKTsKICAgICAgICAgICAgJGRiLT5CZWdpblRyYW5zKCk7CiAgICAgICAgICAgICRwYXJtcyA9IGFycmF5KCAkdWlkICk7CiAgICAgICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIFdIRVJFIHVzZXJpZCA9ID8iOwogICAgICAgICAgICBpZiggJGdpZCA+IDAgKSB7CiAgICAgICAgICAgICAgICAkcSAuPSAiIEFORCBncm91cGlkID0gPyI7CiAgICAgICAgICAgICAgICAkcGFybXNbXSA9ICRnaWQ7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJGRiLT5FeGVjdXRlKCAkcSwgJHBhcm1zICk7CiAgICAgICAgICAgICRkYi0+Q29tbWl0VHJhbnMoKTsKICAgICAgICAgICAgcmV0dXJuIGFycmF5KCBUUlVFICk7CiAgICAgICAgfQogICAgICAgIGNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgICAgICAgICAkZGItPlJvbGxiYWNrVHJhbnMoKTsKICAgICAgICAgICAgJG1vZCA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAgICAgYXVkaXQoJHVpZCwkbW9kLT5HZXROYW1lKCksJ0NvdWxkIG5vdCByZW1vdmUgdXNlciBmcm9tIGdyb3VwICcuJGdpZCk7CiAgICAgICAgICAgIGRlYnVnX3RvX2xvZyhfX01FVEhPRF9fKTsKICAgICAgICAgICAgZGVidWdfdG9fbG9nKCRlLT5HZXRNZXNzYWdlKCkpOwogICAgICAgICAgICByZXR1cm4gYXJyYXkoRkFMU0UsJGUtPkdldE1lc3NhZ2UoKSk7CiAgICAgICAgfQogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KLy8gcmV0dXJucyBhcnJheQogICAgZnVuY3Rpb24gU2V0R3JvdXAoICRpZCwgJG5hbWUsICRkZXNjID0gbnVsbCApCiAgICB7CiAgICAgICAgJGlkID0gKGludCkgJGlkOwogICAgICAgICRuYW1lID0gdHJpbSgkbmFtZSk7CiAgICAgICAgJGRlc2MgPSB0cmltKCRkZXNjKTsKCiAgICAgICAgJHRoaXMtPl9ncm91cGluZm9fY2FjaGUgPSBudWxsOwogICAgICAgIGlmKCAkaWQgPCAxIHx8ICEkbmFtZSApIHsKICAgICAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCRtb2QtPkxhbmcoJ2Vycm9yX2luc3VmZmljaWVudHBhcmFtcycpKTsKICAgICAgICB9CgogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwoKICAgICAgICAkZWlkID0gJHRoaXMtPkdldEdyb3VwSUQoICRuYW1lICk7CiAgICAgICAgaWYoICRlaWQgIT0gZmFsc2UgJiYgJGVpZCAhPSAkaWQgKSB7CiAgICAgICAgICAgICRtb2QgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgICAgIHJldHVybiBhcnJheShGQUxTRSwkbW9kLT5MYW5nKCdlcnJvcl9ncm91cG5hbWVfZXhpc3RzJykpOwogICAgICAgIH0KCiAgICAgICAgJHEgPSAiVVBEQVRFICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHMgU0VUIGdyb3VwbmFtZSA9ID8sIGdyb3VwZGVzYyA9ID8gV0hFUkUgaWQgPSA/IjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJG5hbWUsICRkZXNjLCAkaWQgKSApOwogICAgICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGFycmF5KEZBTFNFLCRkYi0+RXJyb3JNc2coKSk7CgogICAgICAgICR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlID0gbnVsbDsKICAgICAgICByZXR1cm4gYXJyYXkoIFRSVUUgKTsKICAgIH0KCgogICAgZnVuY3Rpb24gRW5jcnlwdFBhc3N3b3JkKCAkdWlkLCAkcGxhaW5fcGFzc3dvcmQgKQogICAgewogICAgICAgIGlmKCAhJHRoaXMtPnVzZV91c2Vyc2FsdCgpICkgewogICAgICAgICAgICByZXR1cm4gbWQ1KCRwbGFpbl9wYXNzd29yZC4kdGhpcy0+Z2V0X3NhbHQoKSk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkZGIgPSBDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXREYigpOwogICAgICAgICAgICAkc2FsdCA9ICRkYi0+R2V0T25lKCdTRUxFQ1Qgc2FsdCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyBXSEVSRSBpZCA9ID8nLGFycmF5KCR1aWQpKTsKICAgICAgICAgICAgaWYoICEkc2FsdCApIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJ1VzaW5nIHVzZXIgc2FsdGVkIHBhc3N3b3JkcywgYnV0IG5vIHNhbHQgc2V0IGZvciB0aGlzIHVzZXIgKG9yIHRoZSB1c2VyIGNvdWxkIG5vdCBiZSBmb3VuZCknKTsKICAgICAgICAgICAgcmV0dXJuIHNoYTEoJHBsYWluX3Bhc3N3b3JkLiRzYWx0KTsKICAgICAgICB9CiAgICB9CgogICAgZnVuY3Rpb24gU2V0VXNlclBhc3N3b3JkKCAkdWlkLCAkcGFzc3dvcmQgKQogICAgewogICAgICAgICR1aWQgPSAoaW50KSAkdWlkOwogICAgICAgICRwYXNzd29yZCA9IHRyaW0oKHN0cmluZykgJHBhc3N3b3JkKTsKICAgICAgICAkbW9kID0gJHRoaXMtPkdldE1vZHVsZSgpOwogICAgICAgIGlmKCAkdWlkIDwgMSB8fCAhJHBhc3N3b3JkICkgcmV0dXJuIGFycmF5KEZBTFNFLCRtb2QtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXJhbXMnKSk7CgogICAgICAgICRtb2QgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgaWYoICEkdWlkICkgcmV0dXJuIGFycmF5KEZBTFNFLCRtb2QtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXJhbXMnKSk7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CgogICAgICAgICRwdyA9ICR0aGlzLT5FbmNyeXB0UGFzc3dvcmQoJHVpZCwkcGFzc3dvcmQpOwogICAgICAgICRxID0gIlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMgU0VUIHBhc3N3b3JkID0gPyBXSEVSRSBpZCA9ID8iOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkcHcsICR1aWQgKSk7CiAgICAgICAgaWYoICEkZGJyZXN1bHQgKSByZXR1cm4gYXJyYXkoRkFMU0UsJGRiLT5FcnJvck1zZygpKTsKCiAgICAgICAgZmV1X3VzZXJfY2FjaGU6OmRlbF91c2VyKCR1aWQpOwogICAgICAgIHJldHVybiBhcnJheShUUlVFKTsKICAgIH0KCiAgICBmdW5jdGlvbiBTZXRVc2VyRGlzYWJsZWQoICR1aWQsICRmbGFnID0gVFJVRSApCiAgICB7CiAgICAgICAgJHVpZCA9IChpbnQpICR1aWQ7CiAgICAgICAgJGZsYWcgPSAoYm9vbCkgJGZsYWc7CiAgICAgICAgaWYoICR1aWQgPCAxICkgdGhyb3cgbmV3IFxMb2dpY0V4Y2VwdGlvbignSW52YWxpZCB1aWQgcGFzc2VkIHRvICcuX19NRVRIT0RfXyk7CgogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRxdWVyeSA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIFNFVCBkaXNhYmxlZCA9ID8gV0hFUkUgaWQgPSA/JzsKICAgICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkZmxhZywkdWlkKSk7CiAgICAgICAgaWYoICEkZGJyICkgdGhyb3cgbmV3IFxMb2dpY0V4Y2VwdGlvbigncHJvYmxlbSBzZXR0aW5nIHVpZCAnLiR1aWQuJyB0byBkaXNhYmxlZCcpOwoKICAgICAgICBpZiggJGZsYWcgKSB7CiAgICAgICAgICAgICR0aGlzLT5Mb2dvdXRVc2VyKCR1aWQsJ3VzZXIgZGlzYWJsZWQnKTsKICAgICAgICAgICAgJHRoaXMtPmFkZF9oaXN0b3J5KCR1aWQsJ3VzZXIgZGlzYWJsZWQnKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICR0aGlzLT5hZGRfaGlzdG9yeSgkdWlkLCd1c2VyIGVuYWJsZWQnKTsKICAgICAgICB9CiAgICB9CgogICAgZnVuY3Rpb24gRm9yY2VQYXNzd29yZENoYW5nZSggJHVpZCwgJGZsYWcgPSBUUlVFICkKICAgIHsKICAgICAgICAkdWlkID0gKGludCkgJHVpZDsKICAgICAgICAkZmxhZyA9IChib29sKSAkZmxhZzsKICAgICAgICBpZiggJHVpZCA8IDEgKSB0aHJvdyBuZXcgXExvZ2ljRXhjZXB0aW9uKCdJbnZhbGlkIHVpZCBwYXNzZWQgdG8gJy5fX01FVEhPRF9fKTsKCiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgU0VUIGZvcmNlX25ld3B3ID0gPyBXSEVSRSBpZCA9ID8nOwogICAgICAgICRkYnIgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCRmbGFnLCR1aWQpKTsKICAgICAgICBpZiggISRkYnIgKSB0aHJvdyBuZXcgXExvZ2ljRXhjZXB0aW9uKCdwcm9ibGVtIHNldHRpbmcgZm9yY2VfbmV3cHcgZmxhZyBmb3IgdXNlciAnLiR1aWQpOwoKICAgICAgICBpZiggJGZsYWcgKSAkdGhpcy0+YWRkX2hpc3RvcnkoJHVpZCwnZm9yY2Vwd3Jlc2V0Jyk7CiAgICB9CgogICAgZnVuY3Rpb24gRm9yY2VDaGFuZ2VTZXR0aW5ncyggJHVpZCwgJGZsYWcgPSBUUlVFICkKICAgIHsKICAgICAgICAkdWlkID0gKGludCkgJHVpZDsKICAgICAgICAkZmxhZyA9IChib29sKSAkZmxhZzsKICAgICAgICBpZiggJHVpZCA8IDEgKSB0aHJvdyBuZXcgXExvZ2ljRXhjZXB0aW9uKCdJbnZhbGlkIHVpZCBwYXNzZWQgdG8gJy5fX01FVEhPRF9fKTsKCiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJHF1ZXJ5ID0gJ1VQREFURSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgU0VUIGZvcmNlX2Noc2V0dGluZ3MgPSA/IFdIRVJFIGlkID0gPyc7CiAgICAgICAgJGRiciA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJGZsYWcsJHVpZCkpOwogICAgICAgIGlmKCAhJGRiciApIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJ3Byb2JsZW0gc2V0dGluZyBmb3JjZV9jaHNldHRpbmdzIGZsYWcgZm9yIHVzZXIgJy4kdWlkKTsKCiAgICAgICAgaWYoICRmbGFnICkgJHRoaXMtPmFkZF9oaXN0b3J5KCR1aWQsJ2ZvcmNlY2hzZXR0aW5ncycpOwogICAgfQoKICAgIGZ1bmN0aW9uIEZvcmNlVmVyaWZ5KCAkdWlkLCAkZmxhZyA9IFRSVUUgKQogICAgewogICAgICAgICR1aWQgPSAoaW50KSAkdWlkOwogICAgICAgICRmbGFnID0gKGJvb2wpICRmbGFnOwogICAgICAgIGlmKCAkdWlkIDwgMSApIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJ0ludmFsaWQgdWlkIHBhc3NlZCB0byAnLl9fTUVUSE9EX18pOwoKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyBTRVQgbXVzdF92YWxpZGF0ZSA9ID8gV0hFUkUgaWQgPSA/JzsKICAgICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkZmxhZywkdWlkKSk7CiAgICAgICAgLy9pZiggISRkYnIgKSB0aHJvdyBuZXcgXExvZ2ljRXhjZXB0aW9uKCdwcm9ibGVtIHNldHRpbmcgZm9yY2UgdmVyaWZ5IGZsYWcgZm9yIHVzZXIgJy4kdWlkKTsKCiAgICAgICAgaWYoICRmbGFnICkgJHRoaXMtPmFkZF9oaXN0b3J5KCR1aWQsJ2luaXRfdmVyaWZ5Jyk7CiAgICB9CgogICAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgLy8gcmV0dXJucyBhcnJheQogICAgZnVuY3Rpb24gU2V0VXNlciggJHVpZCwgJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRleHBpcmVzID0gZmFsc2UgKQogICAgewogICAgICAgIGlmKCAhJHVpZCApIHJldHVybiBhcnJheShGQUxTRSwiIik7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJG1vZHVsZSA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKCiAgICAgICAgLy8gbWFrZSBzdXJlIHRoYXQgdGhpcyB1c2VyIGV4aXN0cwogICAgICAgICRyZXQgPSAkdGhpcy0+R2V0VXNlckluZm8oICR1aWQgKTsKICAgICAgICBpZiggJHJldFswXSA9PSBGQUxTRSApIHJldHVybiBhcnJheShGQUxTRSwgJG1vZHVsZS0+TGFuZygnZXJyb3JfdXNlcm5vdGZvdW5kJykpOwoKICAgICAgICAvLyBtYWtlIHN1cmUgdGhhdCB0aGlzIHVzZXJuYW1lIGlzIG5vdCB0YWtlbiBieSBzb21lIG90aGVyIGlkCiAgICAgICAgJG51aWQgPSAkdGhpcy0+R2V0VXNlcklEKCR1c2VybmFtZSk7CiAgICAgICAgaWYoICRudWlkICE9IGZhbHNlICYmICRudWlkICE9ICR1aWQgKSByZXR1cm4gYXJyYXkoRkFMU0UsICRtb2R1bGUtPkxhbmcoJ2Vycm9yX3VzZXJuYW1ldGFrZW4nLCR1aWQpKTsKCiAgICAgICAgJGRicmVzdWx0ID0gJyc7CiAgICAgICAgJHBhcm1zID0gYXJyYXkoKTsKICAgICAgICAkcSA9ICJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIFNFVCB1c2VybmFtZSA9ID8iOwogICAgICAgICRwYXJtc1tdID0gJHVzZXJuYW1lOwoKICAgICAgICBpZiggJGV4cGlyZXMgIT0gZmFsc2UgKSB7CiAgICAgICAgICAgICRxIC49ICIsIGV4cGlyZXMgPSA/IjsKICAgICAgICAgICAgJHBhcm1zW10gPSB0cmltKCRkYi0+REJUaW1lU3RhbXAoJGV4cGlyZXMpLCInIik7CiAgICAgICAgfQogICAgICAgICRxIC49ICIgV0hFUkUgaWQgPSA/IjsKICAgICAgICAkcGFybXNbXSA9ICR1aWQ7CiAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgJHBhcm1zICk7CiAgICAgICAgaWYoICRkYnJlc3VsdCA9PSBmYWxzZSApIHJldHVybiBhcnJheSggRkFMU0UsICRkYi0+RXJyb3JNc2coKSApOwoKICAgICAgICBpZiggJHBhc3N3b3JkICkgewogICAgICAgICAgICAkcmVzID0gJHRoaXMtPlNldFVzZXJQYXNzd29yZCgkdWlkLCAkcGFzc3dvcmQpOwogICAgICAgICAgICBpZiggISRyZXNbMF0gKSByZXR1cm4gJHJlczsKICAgICAgICB9CgogICAgICAgICR0aGlzLT5fdXNlcmlkYnluYW1lID0gYXJyYXkoKTsKICAgICAgICBmZXVfdXNlcl9jYWNoZTo6ZGVsX3VzZXIoJHVpZCk7CgogICAgICAgIC8vIENoYW5nZWQgdG8gcGFzcyAkdWlkIGJhY2sgc28gaXQgbWF0Y2hlcyBBZGRVc2VyKCkKICAgICAgICByZXR1cm4gYXJyYXkoIFRSVUUsICR1aWQgKTsKICAgIH0KCiAgICAvKioKICAgICAqIFNldCB0aGUgdXNlciBncm91cCBtZW1iZXJzaGlwcwogICAgICogZG9lcyBub3QgYWx0ZXIgYW55IHVzZXIgcHJvcGVydGllcy4KICAgICAqIGRvZXMgbm90IHZhbGlkYXRlIGdyb3VwIGlkcywgYnV0IGRvZXMgdmFsaWRhdGUgdWlkCiAgICAgKgogICAgICogQHBhcmFtIGludCB1c2VyaWQKICAgICAqIEBwYXJhbSBhcnJheSBhcnJheSBvZiBpbnRlZ2VyIGdyb3VwIGlkcwogICAgICogQHJldHVybiBhcnJheSAoc3RhdHVzLG1zZykKICAgICAqLwogICAgZnVuY3Rpb24gU2V0VXNlckdyb3VwcyggJHVpZCwgJGdycGlkcyApCiAgICB7CiAgICAgICAgaWYoICEkdWlkICkgcmV0dXJuIGFycmF5KEZBTFNFLCIiKTsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCiAgICAgICAgLy8gZmlyc3QgbWFrZSBzdXJlIHRoaXMgdXNlciBleGlzdHMKICAgICAgICAkcmV0ID0gJHRoaXMtPkdldFVzZXJJbmZvKCAkdWlkICk7CiAgICAgICAgaWYoICRyZXRbMF0gPT0gRkFMU0UgKSByZXR1cm4gYXJyYXkoRkFMU0UsICJVc2VyIGRvZXMgbm90IGV4aXN0Iik7CgogICAgICAgIC8vIHRoZW4gcmVtb3ZlIGFsbCBoaXMgY3VycmVudCBhc3NpZ25tZW50cwogICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIFdIRVJFIHVzZXJpZCA9ID8iOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkdWlkICkpOwogICAgICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGFycmF5KCBGQUxTRSwgJGRiLT5FcnJvck1zZygpICApOwoKICAgICAgICBpZiggaXNfYXJyYXkoJGdycGlkcykgJiYgY291bnQoJGdycGlkcykgKSB7CiAgICAgICAgICAgIC8vIGFuZCBhZGQgYWxsIG9mIHRoZW0gaW4KICAgICAgICAgICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgVkFMVUVTICg/LD8pIjsKICAgICAgICAgICAgZm9yZWFjaCggJGdycGlkcyBhcyAkZ3JwaWQgKSB7CiAgICAgICAgICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJHVpZCwgJGdycGlkICkgKTsKICAgICAgICAgICAgICAgIGlmKCAhJGRicmVzdWx0ICkgcmV0dXJuIGFycmF5KCBGQUxTRSwgJGRiLT5FcnJvck1zZygpICApOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBhcnJheSggVFJVRSwgIiIgKTsKICAgIH0KCiAgICBmdW5jdGlvbiBBZGRVc2VyVG9Hcm91cCggJHVpZCwgJGdpZCApCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5Bc3NpZ25Vc2VyVG9Hcm91cCgkdWlkLCRnaWQpOwogICAgfQoKICAgIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIC8vIHJldHVybnMgdHJ1ZS9mYWxzZQogICAgZnVuY3Rpb24gU2V0VXNlclByb3BlcnRpZXMoICR1aWQsICRwcm9wcyApCiAgICB7CiAgICAgICAgaWYoICEkdWlkICkgcmV0dXJuIEZBTFNFOwogICAgICAgIC8vIERlbGV0ZSBhbGwgdGhlIHVzZXIgcHJvcGVydGllcwogICAgICAgIC8vIGFuZCBzZXQgbmV3IG9uZXMKICAgICAgICAkdGhpcy0+RGVsZXRlVXNlclByb3BlcnR5RnVsbCggJycsICR1aWQsIHRydWUgKTsKICAgICAgICBmZXVfdXNlcl9jYWNoZTo6ZGVsX3VzZXIoJHVpZCk7CgogICAgICAgIGlmKCBpc19hcnJheSgkcHJvcHMpICYmIGNvdW50KCRwcm9wcykgKSB7CiAgICAgICAgICAgIGlmKCBjZ2VfYXJyYXk6OmlzX2hhc2goJHByb3BzKSApIHsKICAgICAgICAgICAgICAgIGZvcmVhY2goICRwcm9wcyBhcyAka2V5ID0+ICR2YWwgKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCAoJHIgPSAkdGhpcy0+U2V0VXNlclByb3BlcnR5RnVsbCggJGtleSwgJHZhbCwgJHVpZCApKSA9PSBmYWxzZSkgcmV0dXJuIEZBTFNFOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgZm9yZWFjaCggJHByb3BzIGFzICRwcm9wICkgewogICAgICAgICAgICAgICAgICAgIGxpc3QoICRrZXksICR2YWwgKSA9IGV4cGxvZGUoJz0nLCRwcm9wLDIpOwogICAgICAgICAgICAgICAgICAgIGlmICggKCRyID0gJHRoaXMtPlNldFVzZXJQcm9wZXJ0eUZ1bGwoICRrZXksICR2YWwsICR1aWQgKSkgPT0gZmFsc2UpIHJldHVybiBGQUxTRTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIFRSdUU7CiAgICB9CgoKICAgIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIC8vIHJldHVybnMgdHJ1ZS9mYWxzZQogICAgZnVuY3Rpb24gVXNlckV4aXN0c0J5SUQoICR1aWQgKQogICAgewogICAgICAgIGlmKCAhJHVpZCApIHJldHVybiBmYWxzZTsKICAgICAgICAkZGF0YSA9ICR0aGlzLT5HZXRVc2VySW5mbyggJHVpZCApOwogICAgICAgIHJldHVybiggJGRhdGFbMF0gIT09IEZBTFNFICk7CiAgICB9CgoKICAgIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIC8vIHJldHVybnMgYW4gYXJyYXkgb3IgZmFsc2UKICAgIGZ1bmN0aW9uIEdldFVzZXJQcm9wZXJ0aWVzKCR1aWQpCiAgICB7CiAgICAgICAgaWYoICEkdWlkICkgcmV0dXJuIGZhbHNlOwogICAgICAgICR1aW5mbyA9IGZldV91c2VyX2NhY2hlOjpnZXRfdXNlcigkdWlkLFRSVUUpOwogICAgICAgIGlmKCAhaXNfYXJyYXkoJHVpbmZvICkgfHwgIWlzc2V0KCR1aW5mb1snZnByb3BzJ10pICkgcmV0dXJuIEZBTFNFOwoKICAgICAgICByZXR1cm4gJHVpbmZvWydmcHJvcHMnXTsKICAgIH0KCgogICAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgLy8gcmV0dXJucyBhbiBhcnJheSBvZiByZWNvcmRzIG9yIGZhbHNlCiAgICBmdW5jdGlvbiBHZXRNZW1iZXJHcm91cHNBcnJheSgkdXNlcmlkKQogICAgewogICAgICAgICRhdXRoX2NvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwogICAgICAgIGlmKCAkYXV0aF9jb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGF1dGhfY29uc3VtZXI6OkNBUEFCSUxJVFlfR1JPVVBNRU1CRVJTSElQKSApIHsKICAgICAgICAgICAgJG91dCA9ICRhdXRoX2NvbnN1bWVyLT5nZXRfZ3JvdXBfbWVtYmVyc2hpcCgkdXNlcmlkKTsKICAgICAgICAgICAgaWYoICFpc19hcnJheSgkb3V0KSB8fCBjb3VudCgkb3V0KSA9PSAwICkgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAkcmVzID0gYXJyYXkoKTsKICAgICAgICAgICAgZm9yZWFjaCggJG91dCBhcyAkb25lICkgewogICAgICAgICAgICAgICAgJHJlc1tdID0gYXJyYXkoJ3VzZXJpZCc9PiR1c2VyaWQsJ2dyb3VwaWQnPT4kb25lKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gJHJlczsKICAgICAgICB9CgogICAgICAgIC8vIHNob3VsZG4ndCBiZSB1c2VkIGFueSBtb3JlLi4uIGJ1dCBqdXN0IGluIGNhc2UuCiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJHEgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfYmVsb25ncyBXSEVSRSB1c2VyaWQ9PyI7CiAgICAgICAgJGRicmVzdWx0PSRkYi0+RXhlY3V0ZSgkcSxhcnJheSgkdXNlcmlkKSk7CiAgICAgICAgaWYgKCRkYnJlc3VsdCAmJiAkZGJyZXN1bHQtPlJlY29yZENvdW50KCkpIHsKICAgICAgICAgICAgJHJlc3VsdD1hcnJheSgpOzsKICAgICAgICAgICAgd2hpbGUgKCRyb3c9JGRicmVzdWx0LT5GZXRjaFJvdygpKSB7CiAgICAgICAgICAgICAgICAkcmVzdWx0W10gPSAkcm93OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiAkcmVzdWx0OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICB9CgovLwovLyBlbmQgb2YgcmMgZnVuY3Rpb25zCi8vCgogICAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gR2V0VXNlclByb3BlcnR5KCR0aXRsZSwkZGVmYXVsdHZhbHVlPWZhbHNlKQogICAgewogICAgICAgICR1c2VyaWQ9JHRoaXMtPkxvZ2dlZEluSWQoKTsKICAgICAgICBpZiAoJHVzZXJpZD09PWZhbHNlKSByZXR1cm4gZmFsc2U7CiAgICAgICAgcmV0dXJuICR0aGlzLT5HZXRVc2VyUHJvcGVydHlGdWxsKCR0aXRsZSwkdXNlcmlkLCRkZWZhdWx0dmFsdWUpOwogICAgfQoKCiAgICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBHZXRVc2VyUHJvcGVydHlGdWxsKCR0aXRsZSwkdXNlcmlkLCAkZGVmYXVsdHZhbHVlPWZhbHNlKQogICAgewogICAgICAgIGlmICgkdXNlcmlkPT09ZmFsc2UpIHJldHVybiBmYWxzZTsKICAgICAgICAkdWluZm8gPSBmZXVfdXNlcl9jYWNoZTo6Z2V0X3VzZXIoJHVzZXJpZCxUUlVFKTsKCiAgICAgICAgJGRlZm4gPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZuKCR0aXRsZSk7CiAgICAgICAgaWYoICEkZGVmbiApIHJldHVybiBmYWxzZTsKCiAgICAgICAgaWYoIGlzc2V0KCR1aW5mb1snZnByb3BzJ10pICkgewogICAgICAgICAgICBmb3JlYWNoKCAkdWluZm9bJ2Zwcm9wcyddIGFzICRvbmVwcm9wICkgewogICAgICAgICAgICAgICAgaWYoICRvbmVwcm9wWyd0aXRsZSddID09ICR0aXRsZSApIHJldHVybiAkb25lcHJvcFsnZGF0YSddOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAkZGVmYXVsdHZhbHVlOwogICAgfQoKCiAgICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBJc1VzZXJQcm9wZXJ0eVZhbHVlVW5pcXVlKCR1aWQsJHRpdGxlLCRkYXRhKQogICAgewogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRkYnIgPSAnJzsKICAgICAgICBpZiggJHVpZCA+IDAgKSB7CiAgICAgICAgICAgICRxID0gJ1NFTEVDVCBpZCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzCiAgICAgICAgICAgIFdIRVJFIHRpdGxlID0gPyBBTkQgdXNlcmlkICE9ID8gQU5EIGRhdGEgPSA/JzsKICAgICAgICAgICAgJGRiciA9ICRkYi0+R2V0T25lKCRxLGFycmF5KCR0aXRsZSwkdWlkLCRkYXRhKSk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkcSA9ICdTRUxFQ1QgaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcwogICAgICAgICAgICBXSEVSRSB0aXRsZSA9ID8gQU5EIGRhdGEgPSA/JzsKICAgICAgICAgICAgJGRiciA9ICRkYi0+R2V0T25lKCRxLGFycmF5KCR0aXRsZSwkZGF0YSkpOwogICAgICAgIH0KICAgICAgICBpZiggJGRiciApIHJldHVybiBGQUxTRTsKICAgICAgICByZXR1cm4gVFJVRTsKICAgIH0KCgogICAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gU2V0VXNlclByb3BlcnR5KCR0aXRsZSwkZGF0YSkKICAgIHsKICAgICAgICAkdXNlcmlkPSR0aGlzLT5Mb2dnZWRJbklkKCk7CiAgICAgICAgaWYgKCR1c2VyaWQ9PT1mYWxzZSkgcmV0dXJuIGZhbHNlOwogICAgICAgIHJldHVybiAkdGhpcy0+U2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJGRhdGEsJHVzZXJpZCk7CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gU2V0VXNlclByb3BlcnR5RnVsbCgkdGl0bGUsJGRhdGEsJHVzZXJpZCkKICAgIHsKICAgICAgICBpZiAoJHVzZXJpZD09PWZhbHNlKSByZXR1cm4gRkFMU0U7CiAgICAgICAgJGRlZm4gPSAkdGhpcy0+R2V0UHJvcGVydHlEZWZuKCR0aXRsZSk7CiAgICAgICAgaWYoICEkZGVmbiApIHJldHVybiBGQUxTRTsKCiAgICAgICAgaWYoICRkZWZuWydlbmNyeXB0J10gKSB7CiAgICAgICAgICAgIC8vIGdvdHRhIGVuY3J5cHQuCiAgICAgICAgICAgICR0aGlzLT5TZXRFbmNyeXB0aW9uS2V5KCR1c2VyaWQsVFJVRSk7CiAgICAgICAgICAgICRkYXRhID0gYmFzZTY0X2VuY29kZShjZ2VfZW5jcnlwdDo6ZW5jcnlwdCgkdGhpcy0+X2VuY3J5cHRpb25fa2V5LCRkYXRhKSk7CiAgICAgICAgfQoKICAgICAgICBpZiggJGRlZm5bJ2ZvcmNlX3VuaXF1ZSddICYmICEkdGhpcy0+SXNVc2VyUHJvcGVydHlWYWx1ZVVuaXF1ZSgkdXNlcmlkLCR0aXRsZSwkZGF0YSkgKSByZXR1cm4gRkFMU0U7CgogICAgICAgICAgICAkZGIgPSAkdGhpcy0+R2V0REIoKTsKICAgICAgICAgICAgJHE9IlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgV0hFUkUgdGl0bGU9PyBBTkQgdXNlcmlkPT8iOwogICAgICAgICAgICAkcD1hcnJheSgkdGl0bGUsJHVzZXJpZCk7CiAgICAgICAgICAgICRyPSRkYi0+RXhlY3V0ZSgkcSwkcCk7CiAgICAgICAgICAgIGlmICghJHIgfHwgKCRyLT5OdW1Sb3dzKCk9PTApKSB7CiAgICAgICAgICAgICAgICAkcT0iSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgKHVzZXJpZCx0aXRsZSxkYXRhKSBWQUxVRVMgKD8sPyw/KSI7CiAgICAgICAgICAgICAgICAkcD1hcnJheSgkdXNlcmlkLCR0aXRsZSwkZGF0YSk7CiAgICAgICAgICAgICAgICAkcj0kZGItPkV4ZWN1dGUoJHEsJHApOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgJHJvdz0kci0+RmV0Y2hSb3coKTsKICAgICAgICAgICAgICAgICRxPSJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgU0VUIGRhdGE9PyBXSEVSRSBpZD0/IjsKICAgICAgICAgICAgICAgICRwPWFycmF5KCRkYXRhLChpbnQpJHJvd1siaWQiXSk7CiAgICAgICAgICAgICAgICAkcj0kZGItPkV4ZWN1dGUoJHEsJHApOwogICAgICAgICAgICB9CgogICAgICAgIGZldV91c2VyX2NhY2hlOjpkZWxfdXNlcigkdXNlcmlkKTsKICAgICAgICByZXR1cm4gKCRyIT1mYWxzZSk7CiAgICB9CgoKICAgIC8vIGRlbGV0ZSBhbGwgb2NjdXJhbmNlcyBvZiB0aGUgdXNlcnByb3BlcnR5IGJ5IG5hbWUKICAgIGZ1bmN0aW9uIERlbGV0ZVVzZXJQcm9wZXJ0eUJ5TmFtZSggJHRpdGxlICkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0REIoKTsKICAgICAgICAkcSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBXSEVSRSB0aXRsZT0/IjsKICAgICAgICAkcCA9IGFycmF5KCAkdGl0bGUgKTsKICAgICAgICAkcmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgJHAgKTsKCiAgICAgICAgZmV1X3VzZXJfY2FjaGU6OmNsZWFyX2FsbCgpOwogICAgICAgIHJldHVybiAoJHJlc3VsdCE9ZmFsc2UpOwogICAgfQoKCiAgICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBEZWxldGVVc2VyUHJvcGVydHkoJHRpdGxlLCRhbGw9ZmFsc2UpCiAgICB7CiAgICAgICAgJHVzZXJpZD0kdGhpcy0+TG9nZ2VkSW5JZCgpOwogICAgICAgIGlmICgkdXNlcmlkPT09ZmFsc2UpIHJldHVybiBmYWxzZTsKICAgICAgICByZXR1cm4gJHRoaXMtPkRlbGV0ZVVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCR1c2VyaWQsJGFsbCk7CiAgICB9CgoKICAgIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIERlbGV0ZVVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCR1c2VyaWQsJGFsbD1mYWxzZSkKICAgIHsKICAgICAgICAkZGI9JHRoaXMtPkdldERCKCk7CiAgICAgICAgJHE9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIFdIRVJFIHVzZXJpZD0/IjsKICAgICAgICBpZiAoISRhbGwpICRxLj0iIEFORCB0aXRsZT0/IjsKICAgICAgICAkcD1hcnJheSgpOwogICAgICAgIGlmICgkYWxsKSAkcD1hcnJheSgkdXNlcmlkKTsgZWxzZSAkcD1hcnJheSgkdXNlcmlkLCR0aXRsZSk7CiAgICAgICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHEsJHApOwoKICAgICAgICBmZXVfdXNlcl9jYWNoZTo6ZGVsX3VzZXIoJHVzZXJpZCk7CiAgICAgICAgcmV0dXJuICgkcmVzdWx0IT1mYWxzZSk7CiAgICB9CgoKICAgIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIERlbGV0ZUFsbFVzZXJQcm9wZXJ0aWVzKCkKICAgIHsKICAgICAgICByZXR1cm4gJHRoaXMtPkRlbGV0ZVVzZXJQcm9wZXJ0eSgiIix0cnVlKTsKICAgIH0KCgogICAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gRGVsZXRlQWxsVXNlclByb3BlcnRpZXNGdWxsKCR1c2VyaWQpCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5EZWxldGVVc2VyUHJvcGVydHlGdWxsKCIiLCR1c2VyaWQsdHJ1ZSk7CiAgICB9CgoKICAgIHByb3RlY3RlZCBmdW5jdGlvbiB1c2VfdXNlcnNhbHQoKQogICAgewogICAgICAgICRtb2QgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgcmV0dXJuIChpbnQpICRtb2QtPkdldFByZWZlcmVuY2UoJ3VzZV91c2Vyc2FsdCcsMCk7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIENoZWNrUGFzc3dvcmQoJHVzZXJuYW1lLCRwYXNzd29yZCwkZ3JvdXBzID0gJycpCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJHE9IlNFTEVDVCB1LmlkIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIHUiOwogICAgICAgIGlmICgkZ3JvdXBzICE9ICcnKSB7CiAgICAgICAgICAgICRxIC49ICcgSU5ORVIgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfYmVsb25ncyBiIE9OIHUuaWQgPSBiLnVzZXJpZCBJTk5FUiBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19ncm91cHMgZyBPTiBnLmlkID0gYi5ncm91cGlkICc7CiAgICAgICAgfQogICAgICAgICR3aGVyZSA9ICRwYXJtcyA9IGFycmF5KCk7CiAgICAgICAgJHdoZXJlW10gPSAndS51c2VybmFtZSA9ID8nOyAkcGFybXNbXSA9ICR1c2VybmFtZTsKICAgICAgICAkd2hlcmVbXSA9ICdDT0FMRVNDRSh1LmRpc2FibGVkLDApID0gMCc7CiAgICAgICAgLy8kd2hlcmVbXSA9ICdDT0FMRVNDRSh1Lm11c3RfdmFsaWRhdGUsMCkgPSAwJzsKCiAgICAgICAgaWYoICEkdGhpcy0+dXNlX3VzZXJzYWx0KCkgKSB7CiAgICAgICAgICAgICR3aGVyZVtdID0gJ3UucGFzc3dvcmQgPSA/JzsKICAgICAgICAgICAgJHRtcCA9IG1kNSh0cmltKCRwYXNzd29yZCkuJHRoaXMtPmdldF9zYWx0KCkpOwogICAgICAgICAgICAkcGFybXNbXSA9ICR0bXA7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkcTIgPSAnU0VMRUNUIFUuc2FsdCBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyBVIFdIRVJFIHVzZXJuYW1lID0gPyc7CiAgICAgICAgICAgICRzYWx0ID0gJGRiLT5HZXRPbmUoJHEyLGFycmF5KCR1c2VybmFtZSkpOwogICAgICAgICAgICAkd2hlcmVbXSA9ICd1LnBhc3N3b3JkID0gPyc7CiAgICAgICAgICAgICRwYXJtc1tdID0gc2hhMSgkcGFzc3dvcmQuJHNhbHQpOwogICAgICAgIH0KCiAgICAgICAgaWYgKCRncm91cHMgIT0gJycpIHsKICAgICAgICAgICAgLy9zcGxpdCB0aGUgc3RyaW5nIG9uIHRoZSBjb21tYXMKICAgICAgICAgICAgJGdyb3VwcyA9IGV4cGxvZGUoJywnLCRncm91cHMpOwogICAgICAgICAgICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkZ3JvdXBzKTsgJGkrKyApIHsKICAgICAgICAgICAgICAgICRncm91cHNbJGldID0gJGRiLT5xc3RyKHRyaW0oJGdyb3Vwc1skaV0pKTsKICAgICAgICAgICAgfQogICAgICAgICAgICAkZ3JvdXBzID0gJygnLmltcGxvZGUoJywnLCRncm91cHMpLicpJzsKICAgICAgICAgICAgJHdoZXJlW10gPSAnZy5ncm91cG5hbWUgSU4gJy4kZ3JvdXBzOwogICAgICAgIH0KCiAgICAgICAgJHEgLj0gJyBXSEVSRSAnLmltcGxvZGUoJyBBTkQgJywkd2hlcmUpOwogICAgICAgICRyZXN1bHQ9IChpbnQpICRkYi0+R2V0T25lKCRxLCRwYXJtcyk7CiAgICAgICAgaWYoICRyZXN1bHQgPiAwICkgcmV0dXJuICRyZXN1bHQ7CiAgICB9CgogICAgLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gTG9nZ2VkSW5OYW1lKCkKICAgIHsKICAgICAgICAkdXNlcmlkPSR0aGlzLT5Mb2dnZWRJbklkKCk7CiAgICAgICAgaWYgKCR1c2VyaWQpIHJldHVybiAkdGhpcy0+R2V0VXNlck5hbWUoJHVzZXJpZCk7IGVsc2UgcmV0dXJuICIiOwogICAgfQoKCiAgICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBMb2dvdXQoJHVpZCA9ICcnLCRtZXNzYWdlID0gJ2xvZ291dCcpCiAgICB7CiAgICAgICAgJGdDbXMgPSBDbXNBcHA6OmdldF9pbnN0YW5jZSgpOwogICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICRxID0gJyc7CiAgICAgICAgJHAgPSAnJzsKICAgICAgICBpZiggJHVpZCA9PSAnJyApIHsKICAgICAgICAgICAgJHVpZCA9ICR0aGlzLT5Mb2dnZWRJbklkKCk7CiAgICAgICAgICAgIGlmKCAhJHVpZCApIHJldHVybiBmYWxzZTsKICAgICAgICB9CgogICAgICAgICR0aGlzLT5fY2xlYXJfbG9naW5kZXRhaWxzKCR1aWQpOwoKICAgICAgICAvLyBhbmQgYWRkIGhpc3RvcnkgaW5mbwogICAgICAgICR0aGlzLT5hZGRfaGlzdG9yeSgkdWlkLCRtZXNzYWdlKTsKCiAgICAgICAgLy8gc2VuZCB0aGUgZXZlbnQuCiAgICAgICAgJG1vZHVsZSA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAkbW9kdWxlLT5TZW5kRXZlbnQoJ09uTG9nb3V0JyxhcnJheSgnaWQnPT4kdWlkKSk7CiAgICB9CgoKICAgIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIExvZ291dFVzZXIoJHVpZCwkZXZlbnRtc2cgPSAnbG9nb3V0JykKICAgIHsKICAgICAgICBpZiggISR1aWQgKSByZXR1cm47CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CiAgICAgICAgJHE9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19sb2dnZWRpbiBXSEVSRSB1c2VyaWQ9PyI7CiAgICAgICAgJHA9YXJyYXkoJHVpZCk7CiAgICAgICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHEsJHApOwoKICAgICAgICAkdGhpcy0+YWRkX2hpc3RvcnkoJHVpZCwkZXZlbnRtc2cpOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIEV4cGlyZVVzZXJzKCkKICAgIHsKICAgICAgICAvLyB0b2RvOiBtb3ZlZCB0byBjb25zdW1lci4uLgogICAgICAgIGlmKCAkdGhpcy0+X2hhc3J1bjEgKSByZXR1cm47CiAgICAgICAgJG1vZHVsZSA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAkZXhwaXJlX2ludGVydmFsID0gJG1vZHVsZS0+R2V0UHJlZmVyZW5jZSgnZXhwaXJldXNlcnNfaW50ZXJ2YWwnLDYwKTsKICAgICAgICAkZXhwaXJlX2xhc3RydW4gPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdleHBpcmV1c2Vyc19sYXN0cnVuJyk7CiAgICAgICAgZGVidWdfYnVmZmVyKCdGRVUgRXhwaXJlVXNlcnMgJy4kZXhwaXJlX2ludGVydmFsLicgLS0gJy4kZXhwaXJlX2xhc3RydW4pOwogICAgICAgIGlmKCB0aW1lKCkgLSAkZXhwaXJlX2xhc3RydW4gPj0gJGV4cGlyZV9pbnRlcnZhbCApIHsKICAgICAgICAgICAgJGV4cGlyeXRpbWUgPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCd1c2VyX3Nlc3Npb25fZXhwaXJlcycpOwogICAgICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKICAgICAgICAgICAgJHE9IlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIFdIRVJFIGxhc3R1c2VkPD8iOwogICAgICAgICAgICAkcD1hcnJheSh0aW1lKCktJGV4cGlyeXRpbWUpOwogICAgICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCAkcCApOwogICAgICAgICAgICB3aGlsZSggJGRicmVzdWx0ICYmICgkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKSApIHsKICAgICAgICAgICAgICAgICR0aGlzLT5hZGRfaGlzdG9yeSgkcm93Wyd1c2VyaWQnXSwnZXhwaXJlJyk7CiAgICAgICAgICAgICAgICBpZiggaXNzZXQoJF9TRVNTSU9OWydfX0ZFVV9fJ10pICYmICRfU0VTU0lPTlsnX19GRVVfXyddICE9ICcnICkgewogICAgICAgICAgICAgICAgICAgICRkYXRhID0gdW5zZXJpYWxpemUoYmFzZTY0X2RlY29kZSgkX1NFU1NJT05bJ19fRkVVX18nXSkpOwogICAgICAgICAgICAgICAgICAgIGlmKCBpc3NldCgkZGF0YVsndWlkJ10pICYmICRkYXRhWyd1aWQnXSA9PSAkcm93Wyd1c2VyaWQnXSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPl9jbGVhcl9sb2dpbmRldGFpbHMoJHJvd1sndXNlcmlkJ10sVFJVRSk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJHRoaXMtPk5vdGlmeUV4cGlyZWRVc2VyKCAkcm93Wyd1c2VyaWQnXSApOwogICAgICAgICAgICB9CgogICAgICAgICAgICAkcT0iREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIFdIRVJFIGxhc3R1c2VkPD8iOwogICAgICAgICAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkcSwkcCk7CgogICAgICAgICAgICAkbW9kdWxlLT5TZXRQcmVmZXJlbmNlKCdleHBpcmV1c2Vyc19sYXN0cnVuJyx0aW1lKCkpOwogICAgICAgIH0KICAgICAgICAkdGhpcy0+X2hhc3J1bjEgPSAxOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIExvZ2dlZEluSWQoKQogICAgewogICAgICAgIC8vIGlmIHRoZSB1c2VyIGlzIGF1dGhlbnRpY2F0ZWQgdXNpbmcgdGhlIGF1dGggbW9kdWxlCiAgICAgICAgJG1vZHVsZSA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKICAgICAgICAkYXV0aF9jb25zdW1lciA9IGZldV91dGlsczo6Z2V0X2F1dGhfY29uc3VtZXIoKTsKICAgICAgICBpZiggISRhdXRoX2NvbnN1bWVyLT5oYXNfY2FwYWJpbGl0eSgkYXV0aF9jb25zdW1lcjo6Q0FQQUJJTElUWV9MT0dJTikgKSB7CiAgICAgICAgICAgIC8vIGl0cyB0aGUgYnVpbHQgaW4gc3R1ZmYuCiAgICAgICAgICAgICRyZXMgPSAkdGhpcy0+X3N0ZF9Mb2dnZWRJbklkKCk7CiAgICAgICAgICAgIGlmKCAkcmVzICkgcmV0dXJuICRyZXM7CiAgICAgICAgfQoKICAgICAgICAvLyBlaXRoZXIgdGhlIGNvbnN1bWVyIGRvZXNuJ3QgcHJvdmlkZSBhYnNvbHV0ZSBsb2dpbiAoQ0FQQUJJTElUWV9MT0dJTikgT1IgdGhlIHVzZXIgaXMgbm90CiAgICAgICAgLy8gYXV0aGVudGljYXRlZCB2aWEgdGhlIG9sZCBzdHVmZi4KICAgICAgICBpZiggJGF1dGhfY29uc3VtZXItPmlzX2F1dGhlbnRpY2F0ZWQoKSApIHsKICAgICAgICAgICAgLy8gYXV0aGVudGljYXRlZCB2aWEgc29tZSBleHRlcm5hbCBtZWNoYW5pc20uLi4gc3RpbGwgbmVlZCB0byB0aWUgdGhpcyB0byBhbgogICAgICAgICAgICAvLyBpbnRlcm5hbCB1c2VyIHJlY29yZCBmb3IgcHJvcGVydGllcyBhbmQgZ3JvdXBzIGFuZCBjcnVmdC4KCiAgICAgICAgICAgIC8vIHNlYXJjaCBmb3IgYSB1c2VyaWQgYmFzZWQgb24gYSBwcm9wZXJ0eQogICAgICAgICAgICAkcHJvcCA9ICRhdXRoX2NvbnN1bWVyLT5nZXRfY29ubmVjdGluZ19wcm9wZXJ0eV9uYW1lKCk7CiAgICAgICAgICAgICR2YWwgID0gJGF1dGhfY29uc3VtZXItPmdldF91bmlxdWVfaWRlbnRpZmllcigpOwogICAgICAgICAgICBpZiggISR2YWwgKSByZXR1cm4gRkFMU0U7CgogICAgICAgICAgICAkdWluZm8gPSAnJzsKICAgICAgICAgICAgJHVzZXByb3AgPSBmYWxzZTsKICAgICAgICAgICAgaWYoICRwcm9wID09ICcnIHx8ICRwcm9wID09IGZldV9hdXRoX2NvbnN1bWVyOjpQUk9QRVJUWV9VU0VSTkFNRSApIHsKICAgICAgICAgICAgICAgIC8vIGdldCB1c2VyIGJ5IG5hbWUKICAgICAgICAgICAgICAgICR1aW5mbyA9ICR0aGlzLT5HZXRVc2VySW5mb0J5TmFtZSggJGF1dGhfY29uc3VtZXItPmdldF91c2VybmFtZSgkdmFsKSApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgaWYoICRwcm9wID09IGZldV9hdXRoX2NvbnN1bWVyOjpQUk9QRVJUWV9VSUQgKSB7CiAgICAgICAgICAgICAgICAvLyBzZWUgaWYgdGhlIHVpZCBleGlzdHMuCiAgICAgICAgICAgICAgICAkdWluZm8gPSAkdGhpcy0+R2V0VXNlckluZm8oICR2YWwgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIC8vIGl0J3MgYSBwcm9wZXJ0eSBvZiBzb21lIHR5cGUuCiAgICAgICAgICAgICAgICAkdWluZm8gPSAkdGhpcy0+R2V0VXNlckluZm9CeVByb3BlcnR5KCRwcm9wLCR2YWwpOwogICAgICAgICAgICAgICAgJHVzZXByb3AgPSB0cnVlOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiggIWlzX2FycmF5KCR1aW5mbykgfHwgKGlzX2FycmF5KCR1aW5mbykgJiYgJHVpbmZvWzBdID09IEZBTFNFKSApIHsKICAgICAgICAgICAgICAgIC8vIHVzZXIgYXV0aGVudGljYXRlZCBidXQgbm90IGZvdW5kLCBkbyB3ZSBuZWVkIHRvIGNyZWF0ZSBvbmU/CiAgICAgICAgICAgICAgICBpZiggJGF1dGhfY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KGZldV9hdXRoX2NvbnN1bWVyOjpDQVBBQklMSVRZX0FMVExPR0lOKSB8fCAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdhdXRvX2NyZWF0ZV91bmtub3duJykgKSB7CgogICAgICAgICAgICAgICAgICAgIC8vIHdlJ3JlIGdvbm5hIGNyZWF0ZSBhIG5ldyB1c2VyLgogICAgICAgICAgICAgICAgICAgICR1c2VybmFtZSA9ICcnOwoKICAgICAgICAgICAgICAgICAgICBpZiggJGF1dGhfY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRhdXRoX2NvbnN1bWVyOjpDQVBBQklMSVRZX1VTRVJOQU1FKSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgJHVzZXJuYW1lID0gJGF1dGhfY29uc3VtZXItPmdldF91c2VybmFtZSgpOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgaWYoICEkdXNlcm5hbWUgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR1c2VybmFtZSA9ICR2YWw7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKCAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCd1c2VfcmFuZG9tdXNlcm5hbWUnKSAmJgogICAgICAgICAgICAgICAgICAgICAgICAkcHJvcCAhPSBmZXVfYXV0aF9jb25zdW1lcjo6UFJPUEVSVFlfVVNFUk5BTUUgJiYKICAgICAgICAgICAgICAgICAgICAgICAgJHByb3AgIT0gZmV1X2F1dGhfY29uc3VtZXI6OlBST1BFUlRZX1VJRCAmJgogICAgICAgICAgICAgICAgICAgICAgICAkcHJvcCAhPSAnJyApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICR1c2VybmFtZSA9ICRtb2R1bGUtPkdlbmVyYXRlUmFuZG9tVXNlcm5hbWUoKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgJHRtcCA9ICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ2V4cGlyZWFnZV9tb250aHMnLDYpOwogICAgICAgICAgICAgICAgICAgICRleHBpcmVzID0gc3RydG90aW1lKHNwcmludGYoIislZCBtb250aHMiLCR0bXApKTsKCiAgICAgICAgICAgICAgICAgICAgJHJldCA9ICR0aGlzLT5BZGRVc2VyKCAkdXNlcm5hbWUsCiAgICAgICAgICAgICAgICAgICAgZmV1X3V0aWxzOjpnZW5lcmF0ZV9yYW5kb21fcHJpbnRhYmxlX3N0cmluZygpLAogICAgICAgICAgICAgICAgICAgICRleHBpcmVzLCBUUlVFLCBUUlVFICk7CgogICAgICAgICAgICAgICAgICAgIGlmKCAkcmV0WzBdID09IEZBTFNFICkgewogICAgICAgICAgICAgICAgICAgICAgICAkbW9kdWxlLT5BdWRpdCgnJywkbW9kdWxlLT5HZXROYW1lKCksJHJldFsxXSk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBGQUxTRTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgJHVpZCA9ICRyZXRbMV07CgogICAgICAgICAgICAgICAgICAgIC8vIHNldCBoaXMgZ3JvdXBzLgogICAgICAgICAgICAgICAgICAgICRkZmx0X2dyb3VwcyA9ICR0aGlzLT5HZXREZmx0R3JvdXBzKCk7CiAgICAgICAgICAgICAgICAgICAgaWYoIGlzX2FycmF5KCRkZmx0X2dyb3VwcykgJiYgY291bnQoJGRmbHRfZ3JvdXBzKSApICRyZXMgPSAkdGhpcy0+U2V0VXNlckdyb3VwcygkdWlkLCRkZmx0X2dyb3Vwcyk7CgogICAgICAgICAgICAgICAgICAgIC8vIG5vdyBzZXQgYSBwcm9wZXJ0eS4KICAgICAgICAgICAgICAgICAgICBpZiggJHVzZXByb3AgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRyZXQgPSAkdGhpcy0+U2V0VXNlclByb3BlcnR5RnVsbCgkcHJvcCwkdmFsLCR1aWQpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiggJHJldCA9PSBmYWxzZSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHNob3VsZCByZW1vdmUgdGhlIHVzZXIuLi4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICRtb2R1bGUtPkF1ZGl0KCcnLCRtb2R1bGUtPkdldE5hbWUoKSwkbW9kdWxlLT5MYW5nKCdlcnJvcl9wcm9ibGVtc2V0dGluZ2luZm8nKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gRkFMU0U7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICRtb2R1bGUtPkF1ZGl0KCR1aWQsJG1vZHVsZS0+R2V0TmFtZSgpLCRtb2R1bGUtPkxhbmcoJ2F1ZGl0X3VzZXJfY3JlYXRlZCcpKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gJHVpZDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIHJldHVybiAkdWluZm9bMV1bJ2lkJ107CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gX2RlY3J5cHQoJGtleSwkZW5jZGF0YSkKICAgIHsKICAgICAgICBpZiggIWZ1bmN0aW9uX2V4aXN0cygnbWNyeXB0X21vZHVsZV9vcGVuJykgKSByZXR1cm4gRkFMU0U7CiAgICAgICAgJGRhdGEgPSBGQUxTRTsKICAgICAgICAkdGQgPSBAbWNyeXB0X21vZHVsZV9vcGVuKE1DUllQVF9ERVMsJycsTUNSWVBUX01PREVfRUNCLCcnKTsKICAgICAgICBpZiggJHRkID09PSBGQUxTRSApIHJldHVybiBGQUxTRTsKCiAgICAgICAgJGtleSA9IHN1YnN0cigka2V5LDAsbWNyeXB0X2VuY19nZXRfa2V5X3NpemUoJHRkKSk7CiAgICAgICAgJGl2X3NpemUgPSBAbWNyeXB0X2VuY19nZXRfaXZfc2l6ZSgkdGQpOwogICAgICAgICRpdiA9IEBtY3J5cHRfY3JlYXRlX2l2KCRpdl9zaXplLCBNQ1JZUFRfUkFORCk7CgogICAgICAgIC8vIGluaXRpYWxpemUgZW5jcnlwdGlvbiBoYW5kbGUKICAgICAgICAkdG1wID0gQG1jcnlwdF9nZW5lcmljX2luaXQoJHRkLCRrZXksICRpdik7CiAgICAgICAgaWYoICR0bXAgIT0gLTEgKSB7CiAgICAgICAgICAgICRkYXRhID0gQG1kZWNyeXB0X2dlbmVyaWMoJHRkLCRlbmNkYXRhKTsKICAgICAgICAgICAgbWNyeXB0X2dlbmVyaWNfZGVpbml0KCR0ZCk7CiAgICAgICAgfQogICAgICAgIEBtY3J5cHRfbW9kdWxlX2Nsb3NlKCR0ZCk7CiAgICAgICAgcmV0dXJuICRkYXRhOwogICAgfQoKICAgIC8qKgogICAgICogTk9UIEZPUiBFWFRFUk5BTCBVU0UKICAgICAqCiAgICAgKiBAaW50ZXJuYWwKICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIF9zdGRfTG9nZ2VkSW5JZCgpCiAgICB7CiAgICAgICAgJHNlc3Npb25pZCA9IHNlc3Npb25faWQoKTsKICAgICAgICBpZiggJHNlc3Npb25pZCA9PSAiIiApIHJldHVybiBGQUxTRTsKICAgICAgICAkdGhpcy0+RXhwaXJlVXNlcnMoKTsKCiAgICAgICAgJGRhdGEgPSAkdGhpcy0+X2dldF9zYXZlZF9sb2dpbmRldGFpbHMoKTsKICAgICAgICBpZiggISRkYXRhICkgcmV0dXJuIEZBTFNFOwogICAgICAgIGlmKCAhaXNzZXQoJGRhdGFbJ3VpZCddKSApIHJldHVybiBGQUxTRTsKCiAgICAgICAgJHVpZCA9ICRkYXRhWyd1aWQnXTsKICAgICAgICAkdGhpcy0+X3NldF9zYXZlZF9sb2dpbmRldGFpbHMoJHVpZCk7CiAgICAgICAgcmV0dXJuICR1aWQ7CiAgICB9CgoKICAgIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIExvZ2dlZEluKCkKICAgIHsKICAgICAgICBpZiggISR0aGlzLT5Mb2dnZWRJbklkKCkgKSByZXR1cm4gZmFsc2U7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICB9CgoKICAgIC8qKgogICAgICogRGV0ZXJtaW5lIGlmIHRoZSB1c2VyIGlkIGlzIGEgbWVtYmVyIG9mIHRoZSBncm91cChzKSBzcGVjaWZpZWQuCiAgICAgKgogICAgICogQHBhcmFtIGludGVnZXIgdXNlcmlkCiAgICAgKiBAcGFyYW0gbWl4ZWQgaW50ZWdlciAocG9zaXRpdmUpIGdyb3VwIGlkLCBvciBhbiBhcnJheSBvZiBwb3NpdGl2ZSBpbnRlZ2VyIGdyb3VwIGlkcy4KICAgICAqIEByZXR1cm4gYm9vbGVhbgogICAgICovCiAgICBmdW5jdGlvbiBNZW1iZXJPZkdyb3VwKCR1c2VyaWQsJGdyb3VwaWQpCiAgICB7CiAgICAgICAgaWYoICR1c2VyaWQgPCAxICkgcmV0dXJuIEZBTFNFOwoKICAgICAgICAvLyBjbGVhbnVwIHRoZSBpbnB1dCBncm91cGlkIGxpc3QuCiAgICAgICAgaWYoICFpc19hcnJheSgkZ3JvdXBpZCkgKSAkZ3JvdXBpZCA9IGFycmF5KChpbnQpJGdyb3VwaWQpOwogICAgICAgICRncm91cGlkID0gYXJyYXlfdmFsdWVzKCRncm91cGlkKTsKICAgICAgICBmb3IoICRpID0gMDsgJGkgPCBjb3VudCgkZ3JvdXBpZCk7ICRpKysgKSB7CiAgICAgICAgICAgIGlmKCAkZ3JvdXBpZFskaV0gPCAxICkgdW5zZXQoJGdyb3VwaWRbJGldKTsKICAgICAgICB9CiAgICAgICAgaWYoICFpc19hcnJheSgkZ3JvdXBpZCkgfHwgY291bnQoJGdyb3VwaWQpID09IDAgKSByZXR1cm4gRkFMU0U7CgogICAgICAgICR0bXAgPSAkdGhpcy0+R2V0TWVtYmVyR3JvdXBzQXJyYXkoJHVzZXJpZCk7CiAgICAgICAgaWYoICFpc19hcnJheSgkdG1wKSB8fCBjb3VudCgkdG1wKSA9PSAwICkgcmV0dXJuIEZBTFNFOwogICAgICAgICRtZW1iZXJzaGlwID0gY2dlX2FycmF5OjpleHRyYWN0X2ZpZWxkKCR0bXAsJ2dyb3VwaWQnKTsKCiAgICAgICAgJHRtcCA9IGFycmF5X2ludGVyc2VjdCgkbWVtYmVyc2hpcCwkZ3JvdXBpZCk7CiAgICAgICAgaWYoIGlzX2FycmF5KCR0bXApICYmIGNvdW50KCR0bXApICkgcmV0dXJuIFRSVUU7CiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKCiAgICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBHZXRVc2VyTmFtZSgkdXNlcmlkKQogICAgewogICAgICAgICRyb3cgPSBmZXVfdXNlcl9jYWNoZTo6Z2V0X3VzZXIoJHVzZXJpZCk7CiAgICAgICAgaWYoICEkcm93ICkgcmV0dXJuIEZBTFNFOwogICAgICAgIHJldHVybiAkcm93Wyd1c2VybmFtZSddOwogICAgfQoKCiAgICAvLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBHZXRVc2VySUQoJHVzZXJuYW1lKQogICAgewogICAgICAgIGlmKCAhaXNfYXJyYXkoJHRoaXMtPl91c2VyaWRieW5hbWUpICkgJHRoaXMtPl91c2VyaWRieW5hbWUgPSBhcnJheSgpOwogICAgICAgIGlmKCAhaXNzZXQoJHRoaXMtPl91c2VyaWRieW5hbWVbJHVzZXJuYW1lXSkgKSB7CiAgICAgICAgICAgICRkYiA9ICR0aGlzLT5HZXREYigpOwogICAgICAgICAgICAkcSA9ICJTRUxFQ1QgaWQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMgV0hFUkUgdXNlcm5hbWUgPSA/IjsKICAgICAgICAgICAgJHVpZCA9IChpbnQpICRkYi0+R2V0T25lKCRxLGFycmF5KCR1c2VybmFtZSkpOwogICAgICAgICAgICBpZiggJHVpZCA8IDEgKSByZXR1cm47CiAgICAgICAgICAgICR0aGlzLT5fdXNlcmlkYnluYW1lWyR1c2VybmFtZV0gPSAkdWlkOwogICAgICAgICAgICByZXR1cm4gJHVpZDsKICAgICAgICB9CiAgICAgICAgcmV0dXJuICR0aGlzLT5fdXNlcmlkYnluYW1lWyR1c2VybmFtZV07CiAgICB9CgoKICAgIC8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIC8vIHJldHVybnMgYXJyYXkKICAgIGZ1bmN0aW9uIEFkZEdyb3VwKCAkbmFtZSwgJGRlc2NyaXB0aW9uICkKICAgIHsKICAgICAgICAkZGIgPSAkdGhpcy0+R2V0RGIoKTsKCiAgICAgICAgLy8gc2VlIGlmIGl0IGV4aXN0cyBhbHJlYWR5IG9yIG5vdCAoYnkgbmFtZSkKICAgICAgICAkcSA9ICJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHMgV0hFUkUgZ3JvdXBuYW1lID0gPyI7CiAgICAgICAgJGRicmVzdWx0ID0gJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRuYW1lICkgKTsKICAgICAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBhcnJheShGQUxTRSwkZGItPkVycm9yTXNnKCkpOwogICAgICAgICRyb3cgPSAkZGJyZXN1bHQtPkZldGNoUm93KCk7CiAgICAgICAgaWYoICRyb3cgKSB7CiAgICAgICAgICAgICRtb2R1bGUgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgICAgIHJldHVybiBhcnJheShGQUxTRSwkbW9kdWxlLT5MYW5nKCdlcnJvcl9ncm91cG5hbWVfZXhpc3RzJykpOwogICAgICAgIH0KCiAgICAgICAgJHEgPSAiSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcyAoZ3JvdXBuYW1lLGdyb3VwZGVzYykgVkFMVUVTICg/LD8pIjsKICAgICAgICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoICRxLCBhcnJheSggJG5hbWUsICRkZXNjcmlwdGlvbiApICk7CiAgICAgICAgaWYoICEkZGJyZXN1bHQgKSByZXR1cm4gYXJyYXkoRkFMU0UsJGRiLT5FcnJvck1zZygpKTsKICAgICAgICAkZ3JwaWQgPSAkZGItPkluc2VydF9JRCgpOwogICAgICAgIHVuc2V0KCR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlKTsKICAgICAgICByZXR1cm4gYXJyYXkoVFJVRSwkZ3JwaWQpOwogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KLy8gcmV0dXJucyBhcnJheQogICAgZnVuY3Rpb24gQWRkVXNlciggJG5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXMsICRub25zdGQgPSBGQUxTRSApCiAgICB7CiAgICAgICAgJGRiID0gJHRoaXMtPkdldERiKCk7CgogICAgICAgIC8vIHNlZSBpZiBpdCBleGlzdHMgYWxyZWFkeSBvciBub3QgKGJ5IG5hbWUpCiAgICAgICAgJHVpZCA9ICR0aGlzLT5HZXRVc2VySUQoJG5hbWUpOwogICAgICAgIGlmKCAkdWlkICkgewogICAgICAgICAgICAkbW9kdWxlID0gJHRoaXMtPkdldE1vZHVsZSgpOwogICAgICAgICAgICByZXR1cm4gYXJyYXkoRkFMU0UsJG1vZHVsZS0+TGFuZygnZXJyb3JfdXNlcm5hbWVfZXhpc3RzJykpOwogICAgICAgIH0KCiAgICAgICAgLy8gZ2VuZXJhdGUgdGhlIHNhbHQuCiAgICAgICAgJHNhbHQgPSBtZDUodGltZSgpLiRuYW1lLiRleHBpcmVzLl9fRklMRV9fKTsKCiAgICAgICAgLy8gaW5zZXJ0IHRoZSByZWNvcmQKICAgICAgICAkcSA9ICJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMgKHVzZXJuYW1lLHBhc3N3b3JkLGNyZWF0ZWRhdGUsZXhwaXJlcyxub25zdGQsc2FsdCkgVkFMVUVTICg/LD8sPyw/LD8sPykiOwogICAgICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkbmFtZSwgJyAnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmltKCRkYi0+RGJUaW1lU3RhbXAodGltZSgpKSwiJyIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmltKCRkYi0+RGJUaW1lU3RhbXAoJGV4cGlyZXMpLCInIiksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRub25zdGQsICRzYWx0ICkgKTsKICAgICAgICBpZiggISRkYnJlc3VsdCApIHJldHVybiBhcnJheShGQUxTRSwkZGItPkVycm9yTXNnKCkpOwogICAgICAgICR1aWQgPSAkZGItPkluc2VydF9JRCgpOwoKICAgICAgICAvLyBzZXQgdGhlIHBhc3N3b3JkCiAgICAgICAgJHJlcyA9ICR0aGlzLT5TZXRVc2VyUGFzc3dvcmQoJHVpZCwkcGFzc3dvcmQpOwogICAgICAgIGlmKCAhJHJlc1swXSApIHJldHVybiAkcmVzOwoKICAgICAgICAkdGhpcy0+X3VzZXJpZGJ5bmFtZSA9IGFycmF5KCk7CiAgICAgICAgcmV0dXJuIGFycmF5KFRSVUUsJHVpZCk7CiAgICB9CgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCiAgICBmdW5jdGlvbiBHZXRHcm91cE5hbWUoJGdpZCkKICAgIHsKICAgICAgICAkdGhpcy0+X2dldF9ncm91cGluZm8oKTsKICAgICAgICBpZiggaXNfYXJyYXkoJHRoaXMtPl9ncm91cGluZm9fY2FjaGUpICYmIGlzc2V0KCR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlWyRnaWRdKSApIHsKICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlWyRnaWRdWydncm91cG5hbWUnXTsKICAgICAgICB9CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gR2V0R3JvdXBEZXNjKCRncm91cGlkKQogICAgewogICAgICAgICR0aGlzLT5fZ2V0X2dyb3VwaW5mbygpOwogICAgICAgIGlmKCBpc19hcnJheSgkdGhpcy0+X2dyb3VwaW5mb19jYWNoZSkgJiYgaXNzZXQoJHRoaXMtPl9ncm91cGluZm9fY2FjaGVbJGdpZF0pICkgewogICAgICAgICAgICByZXR1cm4gJHRoaXMtPl9ncm91cGluZm9fY2FjaGVbJGdpZF1bJ2dyb3VwZGVzYyddOwogICAgICAgIH0KICAgIH0KCgovLyB1c2VyaWQgYXBpIGZ1bmN0aW9uCi8vIHJldHVybnMgYW4gYXJyYXkKICAgIGZ1bmN0aW9uIERlbGV0ZUdyb3VwRnVsbCggJGlkICkKICAgIHsKICAgICAgICAkZGIgPSBcY2dlX3V0aWxzOjpnZXRfZGIoKTsKICAgICAgICB0cnkgewogICAgICAgICAgICAkZGItPkJlZ2luVHJhbnMoKTsKCiAgICAgICAgICAgIC8vIGRlbGV0ZSBhbGwgcHJvcGVydHkgcmVsYXRpb25zIGZyb20gdGhpcyBncm91cAogICAgICAgICAgICAkcSA9ICJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwIFdIRVJFIGdyb3VwX2lkID0gPyI7CiAgICAgICAgICAgICRkYi0+RXhlY3V0ZSggJHEsIGFycmF5KCAkaWQgKSApOwoKICAgICAgICAgICAgLy8gZGVsZXRlIGFsbCBpbmRpY2F0aW9uIHRoYXQgYW55Ym9keSBpcyBhIG1lbWJlcgogICAgICAgICAgICAvLyBvZiB0aGlzIGdyb3VwCiAgICAgICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIFdIRVJFIGdyb3VwaWQgPSA/IjsKICAgICAgICAgICAgJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRpZCApICk7CgogICAgICAgICAgICAvLyBhbmQgdGhlbiBkZWxldGUgdGhlIGdyb3VwCiAgICAgICAgICAgICRxID0gIkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHMgV0hFUkUgaWQgPSA/IjsKICAgICAgICAgICAgJGRiLT5FeGVjdXRlKCAkcSwgYXJyYXkoICRpZCApICk7CgogICAgICAgICAgICAkZGItPkNvbW1pdFRyYW5zKCk7CiAgICAgICAgICAgICR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlID0gbnVsbDsKICAgICAgICAgICAgcmV0dXJuIGFycmF5KCBUUlVFLCAnJyApOwogICAgICAgIH0KICAgICAgICBjYXRjaCggXEV4Y2VwdGlvbiAkZSApIHsKICAgICAgICAgICAgJGRiLT5Sb2xsYmFja1RyYW5zKCk7CiAgICAgICAgICAgICRtb2QgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgICAgIGF1ZGl0KCRpZCwkbW9kLT5HZXROYW1lKCksJ1Byb2JsZW0gRGVsZXRpbmcgR3JvdXA6ICcuJGUtPkdldE1lc3NhZ2UoKSk7CiAgICAgICAgICAgIGRlYnVnX3RvX2xvZyhfX01FVEhPRF9fKTsKICAgICAgICAgICAgZGVidWdfdG9fbG9nKCRlLT5HZXRNZXNzYWdlKCkpOwogICAgICAgICAgICByZXR1cm4gYXJyYXkoRkFMU0UsJGUtPkdldE1lc3NhZ2UoKSk7CiAgICAgICAgfQogICAgfQoKCi8vIHVzZXJpZCBhcGkgZnVuY3Rpb24KICAgIGZ1bmN0aW9uIEdldEdyb3VwTGlzdCgpCiAgICB7CiAgICAgICAgJHRoaXMtPl9nZXRfZ3JvdXBpbmZvKCk7CiAgICAgICAgJHJlc3VsdCA9IGFycmF5KCk7CiAgICAgICAgaWYoIGlzX2FycmF5KCR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlKSApIHsKICAgICAgICAgICAgZm9yZWFjaCggJHRoaXMtPl9ncm91cGluZm9fY2FjaGUgYXMgJGdpZCA9PiAkaW5mbyApIHsKICAgICAgICAgICAgICAgICRyZXN1bHRbJGluZm9bJ2dyb3VwbmFtZSddXSA9IChpbnQpICRnaWQ7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuICRyZXN1bHQ7CiAgICB9CgoKLy8gdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gR2V0R3JvdXBMaXN0RnVsbCgkd2l0aF9jb3VudCA9IEZBTFNFKQogICAgewogICAgICAgICR0aGlzLT5fZ2V0X2dyb3VwaW5mbygkd2l0aF9jb3VudCk7CiAgICAgICAgJHJlc3VsdCA9IGFycmF5KCk7CiAgICAgICAgaWYoIGlzX2FycmF5KCR0aGlzLT5fZ3JvdXBpbmZvX2NhY2hlKSApICRyZXN1bHQgPSAkdGhpcy0+X2dyb3VwaW5mb19jYWNoZTsKICAgICAgICByZXR1cm4gJHJlc3VsdDsKICAgIH0KCgovLyBvbGQgdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gR2V0R3JvdXBJRCgkZ3JvdXBuYW1lKQogICAgewogICAgICAgICR0aGlzLT5fZ2V0X2dyb3VwaW5mbygpOwogICAgICAgIGlmKCBpc19hcnJheSggJHRoaXMtPl9ncm91cGluZm9fY2FjaGUgKSApIHsKICAgICAgICAgICAgZm9yZWFjaCggJHRoaXMtPl9ncm91cGluZm9fY2FjaGUgYXMgJGdpZCA9PiAkaW5mbyApIHsKICAgICAgICAgICAgICAgIGlmKCAkaW5mb1snZ3JvdXBuYW1lJ10gPT0gJGdyb3VwbmFtZSApIHJldHVybiAkZ2lkOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KCgovKioKICogUmV0dXJuIGEgbGlzdCBvZiBncm91cHMgdGhhdCB0aGUgdXNlciBpcyBhIG1lbWJlciBvZgogKgogKiBAZGVwcmVjYXRlZAogKiBAcGFyYW0gaW50ZWdlciBUaGUgdXNlciBpZGVudGlmaWVyCiAqIEByZXR1cm4gc3RyaW5nIEEgY29tbWEgZGVsaW1pdGVkIHN0cmluZyBjb250YWluaW5nIG1lbWJlciBncm91cCBuYW1lcy4gIG9yICdub25lJwogKi8KICAgIGZ1bmN0aW9uIEdldE1lbWJlckdyb3VwcygkdXNlcmlkKQogICAgewogICAgICAgICRhdXRoX2NvbnN1bWVyID0gZmV1X3V0aWxzOjpnZXRfYXV0aF9jb25zdW1lcigpOwogICAgICAgIGlmKCAhJGF1dGhfY29uc3VtZXItPmhhc19jYXBhYmlsaXR5KCRhdXRoX2NvbnN1bWVyOjpDQVBBQklMSVRZX0dST1VQTUVNQkVSU0hJUCkgKSB7CiAgICAgICAgICAgIHJldHVybiAnbm9uZSc7CiAgICAgICAgfQoKICAgICAgICAkb3V0ID0gJGF1dGhfY29uc3VtZXItPmdldF9ncm91cF9tZW1iZXJzaGlwKCR1c2VyaWQpOwogICAgICAgIGlmKCAhaXNfYXJyYXkoJG91dCkgfHwgY291bnQoJG91dCkgPT0gMCApIHJldHVybiAnbm9uZSc7CgogICAgICAgICRpbmZvID0gJHRoaXMtPl9nZXRfZ3JvdXBpbmZvKCk7CiAgICAgICAgJHRtcCA9IGFycmF5KCk7CiAgICAgICAgZm9yZWFjaCggJG91dCBhcyAkb25lICkgewogICAgICAgICAgICBpZiggaXNzZXQoJGluZm9bJG9uZV0pICkgJHRtcFtdID0gJGluZm9bJG9uZV1bJ2dyb3VwbmFtZSddOwogICAgICAgIH0KICAgICAgICBpZiggY291bnQoJG91dCkgPT0gMCApIHJldHVybiAnbm9uZSc7CgogICAgICAgIHJldHVybiBpbXBsb2RlKCcsJywkdG1wKTsKICAgIH0KCgovLyBvbGQgdXNlcmlkIGFwaSBmdW5jdGlvbgogICAgZnVuY3Rpb24gRGVsZXRlVXNlcigkaWQpCiAgICB7CiAgICAgICAgJHJlcyA9ICR0aGlzLT5EZWxldGVVc2VyRnVsbCgkaWQpOwogICAgICAgIGlmKCAkcmVzWzBdICkgcmV0dXJuIFRSVUU7CiAgICAgICAgcmV0dXJuOwogICAgfQoKICAgIHByb3RlY3RlZCBmdW5jdGlvbiBHZXREZmx0R3JvdXBzKCkKICAgIHsKICAgICAgICAkY29uc3VtZXIgPSBmZXVfdXRpbHM6OmdldF9hdXRoX2NvbnN1bWVyKCk7CiAgICAgICAgaWYoICRjb25zdW1lci0+aGFzX2NhcGFiaWxpdHkoJGNvbnN1bWVyOjpDQVBBQklMSVRZX0RFRkFVTFRHUk9VUFMpICkgcmV0dXJuICRjb25zdW1lci0+Z2V0X2RlZmF1bHRfZ3JvdXBzKCk7CgogICAgICAgICRmZXUgPSBcY21zX3V0aWxzOjpnZXRfbW9kdWxlKE1PRF9GUk9OVEVORFVTRVJTKTsKICAgICAgICAkZGZsdF9ncm91cCA9ICRmZXUtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfZ3JvdXAnKTsKICAgICAgICByZXR1cm4gYXJyYXkoKGludCkkZGZsdF9ncm91cCk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBfZ2V0X3NhdmVkX2xvZ2luZGV0YWlscygpCiAgICB7CiAgICAgICAgJGtleSA9ICdfX0ZFVV9fJzsKICAgICAgICAka2V5MiA9ICdfX0ZFVV9fbHInOwogICAgICAgICRzZXNzaW9uaWQgPSBzZXNzaW9uX2lkKCk7CiAgICAgICAgaWYoICEkc2Vzc2lvbmlkICkgcmV0dXJuOwogICAgICAgICRsYXN0ciA9IDA7CiAgICAgICAgJGRvX3JlYWQgPSBGQUxTRTsKICAgICAgICAkZGF0YSA9IG51bGw7CiAgICAgICAgJG1vZHVsZSA9ICR0aGlzLT5HZXRNb2R1bGUoKTsKCiAgICAgICAgaWYoICR0aGlzLT5fcmVhZGRhdGExICkgcmV0dXJuICR0aGlzLT5fcmVhZGRhdGExOwoKICAgICAgICBpZiggaXNzZXQoJF9TRVNTSU9OWyRrZXkyXSkgKSAkbGFzdHIgPSAkX1NFU1NJT05bJGtleTJdOwogICAgICAgIGlmKCAkbGFzdHIgPiAwICYmICRsYXN0ciA8IHRpbWUoKSAtIDE4MCApICRkb19yZWFkID0gVFJVRTsKCiAgICAgICAgaWYoICEkZG9fcmVhZCApIHsKICAgICAgICAgICAgLy8gc2VlIGlmIHVpZCBpbmZvIGlzIGluIHRoZSBzZXNzaW9uCiAgICAgICAgICAgIGlmKCAhZW1wdHkoJF9TRVNTSU9OWyRrZXldKSApICRkYXRhID0gdW5zZXJpYWxpemUoYmFzZTY0X2RlY29kZSgkX1NFU1NJT05bJGtleV0pKTsKICAgICAgICB9CgogICAgICAgIGlmKCAhJGRvX3JlYWQgJiYgISRkYXRhICkgewogICAgICAgICAgICAvLyBnZXQgZGF0YSBmcm9tIGEgc2Vzc2lvbiBjb29raWUKICAgICAgICAgICAgaWYoICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ2Nvb2tpZV9rZWVwYWxpdmUnLDApICYmICFlbXB0eSgkX0NPT0tJRVska2V5XSkgKSAkZGF0YSA9IHVuc2VyaWFsaXplKGJhc2U2NF9kZWNvZGUoJF9DT09LSUVbJGtleV0pKTsKICAgICAgICB9CgogICAgICAgIGlmKCAhJGRvX3JlYWQgJiYgISRkYXRhICkgewogICAgICAgICAgICAvLyBzZWUgaWYgd2UgY2FuIGdldCB0aGUgZGF0YSBmcm9tIGEgcGVybWFuZW50IGNvb2tpZS4KICAgICAgICAgICAgaWYoICgkY24gPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCdjb29raWVuYW1lJykpICE9ICcnKSB7CiAgICAgICAgICAgICAgICAvLyB0aGlzIGlzIHJlbWVtYmVyIG1lIGZ1bmN0aW9uYWxpdHkuIGFzIG9wcG9zZWQgdG8gYSBzZXNzaW9uIGNvb2tpZS4KICAgICAgICAgICAgICAgICR0bXAgPSBcY21zX2Nvb2tpZXM6OmdldCgkY24pOwogICAgICAgICAgICAgICAgaWYoICR0bXAgKSAkZGF0YSA9IHVuc2VyaWFsaXplKGJhc2U2NF9kZWNvZGUoJHRtcCkpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiggISRkb19yZWFkICYmICRkYXRhICkgewogICAgICAgICAgICAkdGhpcy0+X3JlYWRkYXRhMSA9ICRkYXRhOwogICAgICAgICAgICByZXR1cm4gJGRhdGE7CiAgICAgICAgfQoKICAgICAgICAvLyByZWFkIGxvZ2dlZCBpbiBkYXRhIGZyb20gZGF0YWJhc2UKICAgICAgICAkZGIgPSBDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXREYigpOwogICAgICAgICRxID0gJ1NFTEVDVCB1c2VyaWQgQVMgdWlkLGxhc3R1c2VkIEFTIHRpbWUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4gV0hFUkUgc2Vzc2lvbmlkID0gPyc7CiAgICAgICAgJGRhdGEgPSAkZGItPkdldFJvdygkcSxhcnJheSgkc2Vzc2lvbmlkKSk7CiAgICAgICAgJHRoaXMtPl9oYXNyZWFkMSA9IFRSVUU7CiAgICAgICAgaWYoIGlzX2FycmF5KCRkYXRhKSAmJiBjb3VudCgkZGF0YSkgKSB7CiAgICAgICAgICAgICRfU0VTU0lPTlska2V5Ml0gPSB0aW1lKCk7CiAgICAgICAgICAgICR0aGlzLT5fcmVhZGRhdGExID0gJGRhdGE7CiAgICAgICAgICAgIHJldHVybiAkZGF0YTsKICAgICAgICB9CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBfc2V0X3NhdmVkX2xvZ2luZGV0YWlscygkdWlkKQogICAgewogICAgICAgIC8vIGRvIHRoaXMgb25seSBvbmNlIHBlciByZXF1ZXN0LgogICAgICAgIGlmKCAkdGhpcy0+X2hhc3J1bjIgPT0gVFJVRSApIHJldHVybjsKICAgICAgICAkdGhpcy0+X2hhc3J1bjIgPSBUUlVFOwoKICAgICAgICAka2V5ID0gJ19fRkVVX18nOwogICAgICAgICRzZXNzaW9uaWQgPSBzZXNzaW9uX2lkKCk7CiAgICAgICAgaWYoICEkc2Vzc2lvbmlkICkgcmV0dXJuOwogICAgICAgICRsYXN0dXBkYXRlID0gMDsKICAgICAgICBpZiggaXNzZXQoJF9TRVNTSU9OWyRrZXkuJ19sdSddKSApICRsYXN0dXBkYXRlID0gJF9TRVNTSU9OWyRrZXkuJ19sdSddOwoKICAgICAgICAkZGF0YSA9IGFycmF5KCd1aWQnPT4oaW50KSR1aWQsJ3RpbWUnPT50aW1lKCksJ3Nlc3Npb25pZCc9PiRzZXNzaW9uaWQpOwogICAgICAgICRfU0VTU0lPTlska2V5XSA9IGJhc2U2NF9lbmNvZGUoc2VyaWFsaXplKCRkYXRhKSk7CgogICAgICAgICRtb2R1bGUgPSAkdGhpcy0+R2V0TW9kdWxlKCk7CiAgICAgICAgaWYoICRtb2R1bGUtPkdldFByZWZlcmVuY2UoJ2Nvb2tpZV9rZWVwYWxpdmUnLDApICkgewogICAgICAgICAgICAkdXNlcl9zZXNzaW9uX2V4cGlyZXMgPSAkbW9kdWxlLT5HZXRQcmVmZXJlbmNlKCd1c2VyX3Nlc3Npb25fZXhwaXJlcycpOwogICAgICAgICAgICBpZiggJHVzZXJfc2Vzc2lvbl9leHBpcmVzICkgXGNtc19jb29raWVzOjpzZXQoJGtleSxiYXNlNjRfZW5jb2RlKHNlcmlhbGl6ZSgkZGF0YSkpLHRpbWUoKSskdXNlcl9zZXNzaW9uX2V4cGlyZXMpOyAvLyBleHBpcnkgdG8gMjQgaG91cnMuCiAgICAgICAgfQoKICAgICAgICBpZiggdGltZSgpIC0gMTgwID4gJGxhc3R1cGRhdGUgKSB7CiAgICAgICAgICAgIC8vIG9ubHkgdXBkYXRlIHRoZSB1c2VyIGV2ZXJ5IDMgbWludXRlcy4uLgogICAgICAgICAgICAkZGIgPSBDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXREYigpOwogICAgICAgICAgICAkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19sb2dnZWRpbiBTRVQgbGFzdHVzZWQgPSA/IFdIRVJFIHVzZXJpZCA9ID8gQU5EIHNlc3Npb25pZCA9ID8nOwogICAgICAgICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkZGF0YVsndGltZSddLCRkYXRhWyd1aWQnXSwkZGF0YVsnc2Vzc2lvbmlkJ10pKTsKICAgICAgICAgICAgaWYoICEkZGJyIHx8ICRkYi0+QWZmZWN0ZWRfUm93cygpID09IDAgKSB7CiAgICAgICAgICAgICAgICAkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIChzZXNzaW9uaWQsbGFzdHVzZWQsdXNlcmlkKSBWQUxVRVMgKD8sPyw/KSc7CiAgICAgICAgICAgICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkZGF0YVsnc2Vzc2lvbmlkJ10sJGRhdGFbJ3RpbWUnXSwkZGF0YVsndWlkJ10pKTsKICAgICAgICAgICAgfQogICAgICAgICAgICAkX1NFU1NJT05bJGtleS4nX2x1J10gPSB0aW1lKCk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBUUlVFOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gX2NsZWFyX2xvZ2luZGV0YWlscygkdWlkLCRzZXNzaW9uX29ubHkgPSBGQUxTRSkKICAgIHsKICAgICAgICAka2V5ID0gJ19fRkVVX18nOwogICAgICAgICRzZXNzaW9uaWQgPSBzZXNzaW9uX2lkKCk7CiAgICAgICAgaWYoICEkc2Vzc2lvbmlkICkgcmV0dXJuOwoKICAgICAgICBmb3JlYWNoKCAkX1NFU1NJT04gYXMgJGsgPT4gJHYgKSB7CiAgICAgICAgICAgIGlmKCBzdGFydHN3aXRoKCRrLCRrZXkpICkgdW5zZXQoJF9TRVNTSU9OWyRrXSk7CiAgICAgICAgfQoKICAgICAgICBpZiggJHNlc3Npb25fb25seSA9PSBUUlVFICkgcmV0dXJuOwogICAgICAgIFxjbXNfY29va2llczo6ZXJhc2UoJGtleSk7CiAgICAgICAgJGZldSA9IFxjbXNfdXRpbHM6OmdldF9tb2R1bGUoTU9EX0ZST05URU5EVVNFUlMpOwogICAgICAgIGlmKCAoJGNuID0gJGZldS0+R2V0UHJlZmVyZW5jZSgnY29va2llbmFtZScpKSAhPSAnJyApIFxjbXNfY29va2llczo6c2V0KCRjbiwnJyx0aW1lKCktNjAwMDApOwoKICAgICAgICAkcXVlcnkgPSAnREVMRVRFIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIFdIRVJFIHVzZXJpZCA9ID8nOwogICAgICAgICRkYiA9IENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldERiKCk7CiAgICAgICAgJGRiLT5FeGVjdXRlKCRxdWVyeSxhcnJheSgkdWlkKSk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBfX3Jlc2V0KCkKICAgIHsKICAgICAgICAkdGhpcy0+X2hhc3J1bjEgPSBudWxsOwogICAgICAgICR0aGlzLT5faGFzcnVuMiA9IG51bGw7CiAgICAgICAgJHRoaXMtPl9yZWFkZGF0YTEgPSBudWxsOwogICAgICAgICR0aGlzLT5faGFzcmVhZDEgPSBudWxsOwogICAgfQp9IC8vIGNsYXNzCgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lib/class.property_editor_defn.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCm5hbWVzcGFjZSBGcm9udEVuZFVzZXJzOwoKY2xhc3MgcHJvcGVydHlfZWRpdG9yX2RlZm4KewogICAgcHJpdmF0ZSAkX3Byb3BkZWZuOwogICAgcHJpdmF0ZSAkX3JlbGF0aW9uOwogICAgcHJpdmF0ZSAkX3VzZXI7CiAgICBwcml2YXRlICRfYXR0cmliczsKICAgIHByaXZhdGUgJF9yZXFfY29sb3I7CiAgICBwcml2YXRlICRfcmVxX21hcmtlcjsKICAgIHByaXZhdGUgJF9oaWRkZW5fY29sb3I7CiAgICBwcml2YXRlICRfaGlkZGVuX21hcmtlcjsKICAgIHByaXZhdGUgJF9lcnJvcjsgLy8gYW4gZXJyb3Iga2V5CiAgICBwcml2YXRlICRfdG1wMTsgLy8gc29tZSB0ZW1wb3Jhcnkgc3RvcmFnZSBkYXRhLgogICAgcHJpdmF0ZSAkX3RtcDI7CgogICAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRwcm9wZGVmbiwkcmVsYXRpb24sdXNlcl9lZGl0X2Fzc2lzdGFudCAmJHVzZXIpCiAgICB7CiAgICAgICAgaWYoICFpc3NldCgkcHJvcGRlZm5bJ25hbWUnXSkgfHwgISRwcm9wZGVmblsnbmFtZSddIHx8ICFpc3NldCgkcHJvcGRlZm5bJ3R5cGUnXSkgKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJ0ludmFsaWQgcHJvcGVydHkgZGVmIHBhc3NlZCB0byAnLl9fTUVUSE9EX18pOwogICAgICAgIH0KICAgICAgICBpZiggIWlzc2V0KCRyZWxhdGlvblsnbmFtZSddKSB8fCAhJHJlbGF0aW9uWyduYW1lJ10gfHwgIWlzc2V0KCRyZWxhdGlvblsnZ3JvdXBfaWQnXSkgfHwgISRyZWxhdGlvblsnZ3JvdXBfaWQnXSApIHsKICAgICAgICAgICAgdGhyb3cgbmV3IFxMb2dpY0V4Y2VwdGlvbignSW52YWxpZCBwcm9wZXJ0eSByZWxhdGlvbiBwYXNzZWQgdG8gJy5fX01FVEhPRF9fKTsKICAgICAgICB9CiAgICAgICAgaWYoICRwcm9wZGVmblsnbmFtZSddICE9ICRyZWxhdGlvblsnbmFtZSddICkgdGhyb3cgbmV3IFxMb2dpY0V4Y2VwdGlvbignTWlzbWF0Y2hlZCBwcm9wZXJ0eSBhbmQgcmVsYXRpb24gcGFzc2VkIHRvICcuX19NRVRIT0RfXyk7CgogICAgICAgICR0aGlzLT5fcHJvcGRlZm4gPSAkcHJvcGRlZm47CiAgICAgICAgJHRoaXMtPl9yZWxhdGlvbiA9ICRyZWxhdGlvbjsKICAgICAgICAkdGhpcy0+X3VzZXIgPSYgJHVzZXI7CiAgICAgICAgaWYoIGlzc2V0KCR0aGlzLT5fcHJvcGRlZm5bJ2F0dHJpYnMnXSkgJiYgJHRoaXMtPl9wcm9wZGVmblsnYXR0cmlicyddICkgJHRoaXMtPl9hdHRyaWJzID0gdW5zZXJpYWxpemUoJHRoaXMtPl9wcm9wZGVmblsnYXR0cmlicyddKTsKCiAgICAgICAgJHRoaXMtPl9yZXFfY29sb3IgPSBcZmV1X3V0aWxzOjpnZXRfbW9kKCktPkdldFByZWZlcmVuY2UoJ3JlcXVpcmVkX2ZpZWxkX2NvbG9yJywnYmx1ZScpOwogICAgICAgICR0aGlzLT5faGlkZGVuX2NvbG9yID0gXGZldV91dGlsczo6Z2V0X21vZCgpLT5HZXRQcmVmZXJlbmNlKCdoaWRkZW5fZmllbGRfY29sb3InLCdncmVlbicpOwogICAgICAgICR0aGlzLT5fcmVxX21hcmtlciA9IFxmZXVfdXRpbHM6OmdldF9tb2QoKS0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfbWFya2VyJywnKicpOwogICAgICAgICR0aGlzLT5faGlkZGVuX21hcmtlciA9IFxmZXVfdXRpbHM6OmdldF9tb2QoKS0+R2V0UHJlZmVyZW5jZSgnaGlkZGVuX2ZpZWxkX21hcmtlcicsJyEhJyk7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIF9fZ2V0KCRrZXkpCiAgICB7CiAgICAgICAgJG1vZCA9IFxmZXVfdXRpbHM6OmdldF9tb2QoKTsKCiAgICAgICAgc3dpdGNoKCAka2V5ICkgewogICAgICAgIGNhc2UgJ25hbWUnOgogICAgICAgICAgICByZXR1cm4gJHRoaXMtPl9wcm9wZGVmblsnbmFtZSddOwoKICAgICAgICBjYXNlICdyZXF1aXJlZCc6CiAgICAgICAgICAgIHJldHVybiAoJHRoaXMtPl9yZWxhdGlvblsncmVxdWlyZWQnXSA9PSAyKTsKCiAgICAgICAgY2FzZSAncHJvbXB0JzoKICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5fcHJvcGRlZm5bJ3Byb21wdCddOwoKICAgICAgICBjYXNlICd0eXBlJzoKICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5fcHJvcGRlZm5bJ3R5cGUnXTsKCiAgICAgICAgY2FzZSAnY29sb3InOgogICAgICAgICAgICBpZiggJHRoaXMtPnJlcXVpcmVkICkgewogICAgICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5fcmVxX2NvbG9yOwogICAgICAgICAgICB9IGVsc2UgaWYoICR0aGlzLT5fcmVsYXRpb25bJ3JlcXVpcmVkJ10gPT0gMyApIHsKICAgICAgICAgICAgICAgIHJldHVybiAkdGhpcy0+X2hpZGRlbl9jb2xvcjsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm47CgogICAgICAgIGNhc2UgJ2xlbmd0aCc6CiAgICAgICAgY2FzZSAnc2l6ZSc6CiAgICAgICAgICAgIGlmKCAkdGhpcy0+dHlwZSA9PSAwIHx8ICR0aGlzLT50eXBlID09IDIgKSByZXR1cm4gKGludCkgJHRoaXMtPl9wcm9wZGVmblsnbGVuZ3RoJ107CiAgICAgICAgICAgIHJldHVybjsKCiAgICAgICAgY2FzZSAnaW1hZ2VfcGF0aCc6CiAgICAgICAgICAgICR2YWwgPSAkdGhpcy0+dmFsdWU7CiAgICAgICAgICAgIGlmKCAkdGhpcy0+dHlwZSAhPSA2IHx8ICEkdmFsICkgcmV0dXJuOwogICAgICAgICAgICByZXR1cm4gJG1vZC0+Z2V0X3VwbG9hZF9kaXJuYW1lKCkuJy8nLiR2YWw7CgogICAgICAgIGNhc2UgJ2ltYWdlX3VybCc6CiAgICAgICAgICAgICR2YWwgPSAkdGhpcy0+dmFsdWU7CiAgICAgICAgICAgIGlmKCAkdGhpcy0+dHlwZSAhPSA2IHx8ICEkdmFsICkgcmV0dXJuOwogICAgICAgICAgICByZXR1cm4gJG1vZC0+Z2V0X3VwbG9hZF9kaXJ1cmwoKS4nLycuJHZhbDsKCiAgICAgICAgY2FzZSAnbWF4bGVuZ3RoJzoKICAgICAgICBjYXNlICdtYXhsZW5uJzoKICAgICAgICAgICAgaWYoICR0aGlzLT50eXBlID09IDAgfHwgJHRoaXMtPnR5cGUgPT0gMiApIHJldHVybiAoaW50KSAkdGhpcy0+X3Byb3BkZWZuWydtYXhsZW5ndGgnXTsKICAgICAgICAgICAgcmV0dXJuOwoKICAgICAgICBjYXNlICd3eXNpd3lnJzoKICAgICAgICAgICAgaWYoICR0aGlzLT50eXBlID09IDMgKSB7CiAgICAgICAgICAgICAgICBpZiggaXNzZXQoJHRoaXMtPl9hdHRyaWJzWyd3eXNpd3lnJ10pICkgcmV0dXJuICR0aGlzLT5fYXR0cmlic1snd3lzaXd5ZyddOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybjsKCiAgICAgICAgY2FzZSAnbWFya2VyJzoKICAgICAgICAgICAgaWYoICR0aGlzLT5yZXF1aXJlZCApIHsKICAgICAgICAgICAgICAgIHJldHVybiAkdGhpcy0+X3JlcV9tYXJrZXI7CiAgICAgICAgICAgIH0gZWxzZSBpZiggJHRoaXMtPl9yZWxhdGlvblsncmVxdWlyZWQnXSA9PSAzICkgewogICAgICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5faGlkZGVuX21hcmtlcjsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm47CgogICAgICAgIGNhc2UgJ29wdGlvbnMnOgogICAgICAgICAgICBzd2l0Y2goICR0aGlzLT50eXBlICkgewogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgICAgJG9wdHMgPSBcZmV1X3V0aWxzOjpnZXRfbW9kKCktPkdldFNlbGVjdE9wdGlvbnMoJHRoaXMtPl9wcm9wZGVmblsnbmFtZSddKTsKICAgICAgICAgICAgICAgIGlmKCAhY291bnQoJG9wdHMpICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCdObyBzZWxlY3Qgb3B0aW9ucyBmb3IgYSBkcm9wZG93bi9hcnJheSBwcm9wZXJ0eScpOwogICAgICAgICAgICAgICAgcmV0dXJuIGFycmF5X2ZsaXAoJG9wdHMpOwogICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgLy8gbm8gYXJyYXkgdG8gcmV0dXJuLgogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybjsKCiAgICAgICAgY2FzZSAnZGZsdCc6CiAgICAgICAgY2FzZSAnZGVmYXVsdCc6CiAgICAgICAgICAgIHN3aXRjaCggJHRoaXMtPnR5cGUgKSB7CiAgICAgICAgICAgIGNhc2UgMDogLy8gdGV4dAogICAgICAgICAgICBjYXNlIDI6IC8vIGVtYWlsCiAgICAgICAgICAgIGNhc2UgMzogLy8gdGV4dGFyZWEKICAgICAgICAgICAgY2FzZSA0OiAvLyBkcm9wZG93bgogICAgICAgICAgICBjYXNlIDU6IC8vIG11bHRpc2VsZWN0CiAgICAgICAgICAgIGNhc2UgNjogLy8gaW1hZ2UKICAgICAgICAgICAgY2FzZSA3OiAvLyByYWRpbyBidXR0b24gZ3JvdXAKICAgICAgICAgICAgY2FzZSA4OiAvLyBkYXRlCiAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgIGNhc2UgMTogLy8gY2hlY2tib3gKICAgICAgICAgICAgICAgIGlmKCBpc3NldCgkdGhpcy0+X2F0dHJpYnNbJ2NoZWNrZWQnXSkgKSByZXR1cm4gJHRoaXMtPl9hdHRyaWJzWydjaGVja2VkJ107CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm47CgogICAgICAgIGNhc2UgJ3ZhbCc6CiAgICAgICAgY2FzZSAndmFsdWUnOgogICAgICAgICAgICAkdmFsID0gJHRoaXMtPl91c2VyLT5nZXRfcHJvcGVydHkoJHRoaXMtPm5hbWUpOwogICAgICAgICAgICBzd2l0Y2goICR0aGlzLT50eXBlICkgewogICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgICBpZiggIWlzX2FycmF5KCR2YWwpICkgewogICAgICAgICAgICAgICAgICAgIGlmKCBzdHJwb3MoJHZhbCwnLCcpICE9PSBGQUxTRSApICB7CiAgICAgICAgICAgICAgICAgICAgICAgICR2YWwgPSBleHBsb2RlKCcsJywkdmFsKTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2VpZiggc3RycG9zKCR2YWwsJzonKSAhPT0gRkFMU0UgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR2YWwgPSBleHBsb2RlKCc6JywkdmFsKTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAkdmFsID0gWyAkdmFsIF07CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiAkdmFsOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gc2V0X3ZhbHVlKCR2YWwpCiAgICB7CiAgICAgICAgJG1vZCA9IFxmZXVfdXRpbHM6OmdldF9tb2QoKTsKCiAgICAgICAgLy8gJHZhbCBjYW4gYmUgbWl4ZWQKICAgICAgICBzd2l0Y2goICR0aGlzLT50eXBlICkgewogICAgICAgIGNhc2UgMDogLy8gdGV4dCBmaWVsZAogICAgICAgICAgICAkdmFsID0gKHN0cmluZykgJHZhbDsKICAgICAgICAgICAgJGwgPSBzdHJsZW4oJHZhbCk7CiAgICAgICAgICAgIGlmKCAkbCA+ICR0aGlzLT5tYXhsZW5ndGggKSB0aHJvdyBuZXcgXENtc0ludmFsaWREYXRhRXhjZXB0aW9uKCRtb2QtPkxhbmcoJ2Vycm9yX2ZsZHZhbGxlbmd0aCcsJHRoaXMtPm5hbWUpKTsKICAgICAgICAgICAgJHRoaXMtPl91c2VyLT5zZXRfcHJvcGVydHkoJHRoaXMtPm5hbWUsJHZhbCk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlIDE6IC8vIGNoZWNrYm94CiAgICAgICAgICAgICR0aGlzLT5fdXNlci0+c2V0X3Byb3BlcnR5KCR0aGlzLT5uYW1lLChpbnQpICR2YWwpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAyOiAvLyBlbWFpbAogICAgICAgICAgICAkdmFsID0gKHN0cmluZykgJHZhbDsKICAgICAgICAgICAgJHRoaXMtPl91c2VyLT5zZXRfcHJvcGVydHkoJHRoaXMtPm5hbWUsJHZhbCk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlIDM6IC8vIHRleHRhcmVhCiAgICAgICAgICAgICR2YWwgPSAoc3RyaW5nKSAkdmFsOwogICAgICAgICAgICAkdGhpcy0+X3VzZXItPnNldF9wcm9wZXJ0eSgkdGhpcy0+bmFtZSwkdmFsKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgNDogLy8gZHJvcGRvd24KICAgICAgICAgICAgJHZhbCA9IChzdHJpbmcpICR2YWw7CiAgICAgICAgICAgICR0aGlzLT5fdXNlci0+c2V0X3Byb3BlcnR5KCR0aGlzLT5uYW1lLCR2YWwpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSA1OiAvLyBtdWx0aXNlbGVjdAogICAgICAgICAgICBpZiggaXNfYXJyYXkoJHZhbCkgKSAkdmFsID0gaW1wbG9kZSgnLCcsJHZhbCk7CiAgICAgICAgICAgICR0aGlzLT5fdXNlci0+c2V0X3Byb3BlcnR5KCR0aGlzLT5uYW1lLCR2YWwpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSA2OiAvLyBpbWFnZQogICAgICAgICAgICAvLyB3ZSBjaGVjayBpZiBhbnl0aGluZyBpcyB1cGxvYWRlZC4KICAgICAgICAgICAgaWYoIGlzc2V0KCRfRklMRVMpICYmIGlzc2V0KCRfRklMRVNbJHZhbF0pICYmICRfRklMRVNbJHZhbF1bJ25hbWUnXSApIHsKICAgICAgICAgICAgICAgICR0aGlzLT5fdG1wMSA9ICR2YWw7IC8vIHRoZSBrZXkKICAgICAgICAgICAgICAgICR0aGlzLT5fdG1wMiA9ICR0aGlzLT5fdXNlci0+Z2V0X3Byb3BlcnR5KCR0aGlzLT5uYW1lKTsgLy8gY3VycmVudCB2YWx1ZS4KICAgICAgICAgICAgICAgICRuZXd2YWwgPSAkbW9kLT5nZXRfdXBsb2FkX2ZpbGVuYW1lKCR0aGlzLT5uYW1lLCRfRklMRVNbJHZhbF1bJ25hbWUnXSk7CiAgICAgICAgICAgICAgICAkdGhpcy0+X3VzZXItPnNldF9wcm9wZXJ0eSgkdGhpcy0+bmFtZSwkbmV3dmFsKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSA3OiAvLyByYWRpbyBidXR0b24gZ3JvdXAKICAgICAgICAgICAgJHZhbCA9IChzdHJpbmcpICR2YWw7CiAgICAgICAgICAgICR0aGlzLT5fdXNlci0+c2V0X3Byb3BlcnR5KCR0aGlzLT5uYW1lLCR2YWwpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSA4OiAvLyBkYXRlCiAgICAgICAgICAgICR2YWwgPSAoaW50KSAkdmFsOwogICAgICAgICAgICAkdGhpcy0+X3VzZXItPnNldF9wcm9wZXJ0eSgkdGhpcy0+bmFtZSwkdmFsKTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiB2YWxpZGF0ZSgpCiAgICB7CiAgICAgICAgJG5hbWUgPSAkdGhpcy0+bmFtZTsKICAgICAgICAkdmFsID0gJHRoaXMtPl91c2VyLT5nZXRfcHJvcGVydHkoJG5hbWUpOwogICAgICAgICRtb2QgPSBcZmV1X3V0aWxzOjpnZXRfbW9kKCk7CgogICAgICAgIGlmKCAkdGhpcy0+X2Vycm9yICkgdGhyb3cgbmV3IFxDbXNJbnZhbGlkRGF0YUV4Y2VwdGlvbigkbW9kLT5MYW5nKCR0aGlzLT5fZXJyb3IpKTsKICAgICAgICBzd2l0Y2goICR0aGlzLT50eXBlICkgewogICAgICAgIGNhc2UgMDogLy8gdGV4dAogICAgICAgICAgICBpZiggISR2YWwgJiYgJHRoaXMtPnJlcXVpcmVkICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCRtb2QtPkxhbmcoJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nLCRuYW1lKSk7CiAgICAgICAgICAgICRsID0gc3RybGVuKCR2YWwpOwogICAgICAgICAgICBpZiggJGwgPiAkdGhpcy0+bWF4bGVuZ3RoICkgdGhyb3cgbmV3IFxDbXNJbnZhbGlkRGF0YUV4Y2VwdGlvbigkbW9kLT5MYW5nKCdlcnJvcl9mbGR2YWxsZW5ndGgnLCRuYW1lKSk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlIDI6IC8vIGVtYWlsCiAgICAgICAgICAgIGlmKCAhJHZhbCAmJiAkdGhpcy0+cmVxdWlyZWQgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJG1vZC0+TGFuZygnZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbScsJG5hbWUpKTsKICAgICAgICAgICAgJGwgPSBzdHJsZW4oJHZhbCk7CiAgICAgICAgICAgIGlmKCAkbCA+ICR0aGlzLT5tYXhsZW5ndGggKSB0aHJvdyBuZXcgXENtc0ludmFsaWREYXRhRXhjZXB0aW9uKFxmZXVfdXRpbHM6OmdldF9tb2QoKS0+TGFuZygnZXJyb3JfZmxkdmFsbGVuZ3RoJywkbmFtZSkpOwogICAgICAgICAgICBpZiggIWlzX2VtYWlsKCR2YWwpICkgdGhyb3cgbmV3IFxDbXNJbnZhbGlkRGF0YUV4Y2VwdGlvbihcZmV1X3V0aWxzOjpnZXRfbW9kKCktPkxhbmcoJ2Vycm9yX2ludmFsaWRlbWFpbGFkZHJlc3MnKSk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlIDE6IC8vIGNoZWNrYm94CiAgICAgICAgICAgIGlmKCAkdmFsID09PSAnJyAmJiAkdGhpcy0+cmVxdWlyZWQgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJG1vZC0+TGFuZygnZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbScsJG5hbWUpKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgMzogLy8gdGV4dGFyZWEKICAgICAgICAgICAgaWYoICR2YWwgPT09ICcnICYmICR0aGlzLT5yZXF1aXJlZCApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkbW9kLT5MYW5nKCdlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJywkbmFtZSkpOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSA0OiAvLyBkcm9wZG93bgogICAgICAgICAgICBpZiggJHZhbCA9PT0gJycgJiYgJHRoaXMtPnJlcXVpcmVkICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCRtb2QtPkxhbmcoJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nLCRuYW1lKSk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlIDU6IC8vIG11bHRpc2VsZWN0CiAgICAgICAgICAgIGlmKCAkdmFsID09PSAnJyAmJiAkdGhpcy0+cmVxdWlyZWQgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJG1vZC0+TGFuZygnZXJyb3JfbWlzc2luZ19yZXF1aXJlZF9wYXJhbScsJG5hbWUpKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgNjogLy8gaW1hZ2UKICAgICAgICAgICAgaWYoICR0aGlzLT5fdG1wMSApIHsKICAgICAgICAgICAgICAgICRyZXQgPSBcZmV1X3V0aWxzOjpjaGVja1VwbG9hZCgkdGhpcy0+X3RtcDEpOwogICAgICAgICAgICAgICAgaWYoICEkcmV0WzBdICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCRyZXRbMV0pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlIDc6IC8vIHJhZGlvIGJ1dHRvbiBncm91cAogICAgICAgICAgICBpZiggJHZhbCA9PT0gJycgJiYgJHRoaXMtPnJlcXVpcmVkICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCRtb2QtPkxhbmcoJ2Vycm9yX21pc3NpbmdfcmVxdWlyZWRfcGFyYW0nLCRuYW1lKSk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlIDg6IC8vIGRhdGUKICAgICAgICAgICAgaWYoICR2YWwgPCAxICYmICR0aGlzLT5yZXF1aXJlZCApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkbW9kLT5MYW5nKCdlcnJvcl9taXNzaW5nX3JlcXVpcmVkX3BhcmFtJywkbmFtZSkpOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIGNsZWFyX3ZhbHVlKCkKICAgIHsKICAgICAgICBzd2l0Y2goICR0aGlzLT50eXBlICkgewogICAgICAgIGNhc2UgNjogLy8gaW1hZ2UKICAgICAgICAgICAgJG1vZCA9IFxmZXVfdXRpbHM6OmdldF9tb2QoKTsKICAgICAgICAgICAgaWYoICR0aGlzLT52YWx1ZSApIHsKICAgICAgICAgICAgICAgIC8vIHdlIGhhdmUgYW4gZXhpc3RpbmcgaWFtZ2UKICAgICAgICAgICAgICAgICRwYXRoID0gJG1vZC0+Z2V0X3VwbG9hZF9kaXJuYW1lKCkuJy8nLiR0aGlzLT52YWx1ZTsKICAgICAgICAgICAgICAgIEB1bmxpbmsoJHBhdGgpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICAkdGhpcy0+X3VzZXItPnNldF9wcm9wZXJ0eSgkdGhpcy0+bmFtZSxudWxsKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gcG9zdHByb2Nlc3MoJHVzZXIpCiAgICB7CiAgICAgICAgc3dpdGNoKCAkdGhpcy0+dHlwZSApIHsKICAgICAgICBjYXNlIDY6IC8vIGltYWdlCiAgICAgICAgICAgICRtb2QgPSBcZmV1X3V0aWxzOjpnZXRfbW9kKCk7CiAgICAgICAgICAgIGlmKCAhJHRoaXMtPl90bXAxICkgcmV0dXJuOwogICAgICAgICAgICBpZiggJHRoaXMtPl90bXAyICkgewogICAgICAgICAgICAgICAgLy8gd2UgaGF2ZSBhbiBleGlzdGluZyBmaWxlIHRvIGdldCByaWQgb2YuCiAgICAgICAgICAgICAgICAkcGF0aCA9ICRtb2QtPmdldF91cGxvYWRfZGlybmFtZSgpLicvJy4kdGhpcy0+X3RtcDI7CiAgICAgICAgICAgICAgICBAdW5saW5rKCRwYXRoKTsKICAgICAgICAgICAgfQogICAgICAgICAgICAvLyBub3cgd2UgZ290dGEgbW92ZSB0aGUgdXBsb2FkIGZyb20gdGVtcG9yYXJ5IGxvY2F0aW9uIHRvIHBlcm1hbmVudCBsb2NhdGlvbgogICAgICAgICAgICAkcmVzID0gJG1vZC0+TWFuYWdlSW1hZ2VVcGxvYWQoJHRoaXMtPl90bXAxLCAkdGhpcy0+bmFtZSk7CiAgICAgICAgfQogICAgfQp9]]></data>
	</file>
	<file>
	  <filename>/lib/class.Random.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiNCRUdJTl9MSUNFTlNFCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgTW9kdWxlOiBGcm9udEVuZFVzZXJzIChjKSAyMDA4LTIwMTQgYnkgUm9iZXJ0IENhbXBiZWxsCiMgICAgICAgICAoY2FsZ3V5MTAwMEBjbXNtYWRlc2ltcGxlLm9yZykKIyAgQW4gYWRkb24gbW9kdWxlIGZvciBDTVMgTWFkZSBTaW1wbGUgdG8gYWxsb3cgbWFuYWdlbWVudCBvZiBmcm9udGVuZAojICB1c2VycywgYW5kIHRoZWlyIGxvZ2luIHByb2Nlc3Mgd2l0aGluIGEgQ01TIE1hZGUgU2ltcGxlIHBvd2VyZWQKIyAgd2Vic2l0ZS4KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVmlzaXQgdGhlIENNU01TIEhvbWVwYWdlIGF0OiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBIb3dldmVyLCBhcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgZGlzdHJpYnV0ZWQKIyBhcyBhbiBhZGRvbiBtb2R1bGUgdG8gQ01TIE1hZGUgU2ltcGxlLiAgWW91IG1heSBub3QgdXNlIHRoaXMgc29mdHdhcmUKIyBpbiBhbnkgTm9uIEdQTCB2ZXJzaW9uIG9mIENNUyBNYWRlIHNpbXBsZSwgb3IgaW4gYW55IHZlcnNpb24gb2YgQ01TCiMgTWFkZSBzaW1wbGUgdGhhdCBkb2VzIG5vdCBpbmRpY2F0ZSBjbGVhcmx5IGFuZCBvYnZpb3VzbHkgaW4gaXRzIGFkbWluCiMgc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIHNpbXBsZS4KIwojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBCiMgT3IgcmVhZCBpdCBvbmxpbmU6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTAojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiNFTkRfTElDRU5TRQoNCi8qKg0KICogR2VuZXJhdGUgcmFuZG9tIGNoYXJhY3RlcnMuDQogKg0KICogQGF1dGhvciAgICBMYXVyZW50aXUgVGFuYXNlIDxleHBlcnRwaHBAeWFob28uY29tPg0KICogQHZlcnNpb24gICAxLjENCiAqLw0KDQpjbGFzcyBSYW5kb20NCnsNCgkvKioNCgkgKiBTZXQgZGVmYXVsdCBjaGFyYWN0ZXJzLg0KICAgICAqDQogICAgICogQHZhciAgICAgIHN0cmluZw0KICAgICAqIEBhY2Nlc3MgICBwcml2YXRlDQogICAgICovDQoNCgl2YXIgJF92Y3JzOw0KDQoJLyoqDQoJICogSWYgaGF2ZSBudW1iZXINCiAgICAgKg0KICAgICAqIEB2YXIgICAgICBib29sDQogICAgICogQGFjY2VzcyAgIHByaXZhdGUNCiAgICAgKi8NCg0KCXZhciAkX3ZudW07DQoNCgkvKioNCgkgKiBJZiBkb2Vzbid0IGhhdmUgbnVtYmVyDQogICAgICoNCiAgICAgKiBAdmFyICAgICAgYm9vbA0KICAgICAqIEBhY2Nlc3MgICBwcml2YXRlDQogICAgICovDQoNCgl2YXIgJF92bm90Ow0KDQoJLyoqDQoJICogQ29uc3RydWN0b3INCgkgKg0KCSAqIFNldCBkZWZhdWx0IHZhbHVlcw0KCSAqDQoJICogQHBhcmFtICBzdHJpbmcgICRjcnMgICBDaGFyYWN0ZXJzIG91dHB1dA0KCSAqIEBwYXJhbSAgYm9vbCAgICAkbnVtICAgV2l0aCBudW1iZXINCgkgKiBAcGFyYW0gIGJvb2wgICAgJG5vdCAgIFdpdGggbm90IG51bWJlcg0KCSAqLw0KDQoJZnVuY3Rpb24gUmFuZG9tKCRjcnMgPSBmYWxzZSwgJG51bSA9IGZhbHNlLCAkbm90ID0gZmFsc2Upew0KCQkkdGhpcy0+X3ZudW0gPSAkbnVtOw0KCQkkdGhpcy0+X3Zub3QgPSAkbm90Ow0KCQlpZighJGNycyl7DQoJCQkkdGhpcy0+X3ZjcnMgPSAiMDEyMzQ1Njc4OSIuDQoJCQkJImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Ii4NCgkJCQkiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoiOw0KCQl9ZWxzZXsNCgkJCSR0aGlzLT5fdmNycyA9ICRjcnM7DQoJCQlpZigoJG51bSB8fCAkbm90KSAmJiAhJHRoaXMtPl9yZWMoJGNycywgJG51bSwgJG5vdCkpew0KCQkJCWlmKCRudW0gJiYgJG5vdCkgJGVyciA9ICJudW1iZXIgb3Igbm90IG51bWJlciI7DQoJCQkJZWxzZWlmKCRudW0pICRlcnIgPSAibnVtYmVyIjsNCgkJCQllbHNlaWYoJG5vdCkgJGVyciA9ICJub3QgbnVtYmVyIjsNCgkJCQllbHNlICRlcnIgPSAiY29tcGFyYXRpb24iOw0KCQkJCXRyaWdnZXJfZXJyb3IoIkNsYXNzIFJhbmRvbSAtIFN0cmluZyBpbnB1dCBbICIuJGNycy4iIF0gZG9lc24ndCBoYXZlICIuJGVyciwgRV9VU0VSX0VSUk9SKTsNCgkJCX0NCgkJfQ0KCX0NCg0KCS8qKg0KCSAqIENvbXBhcmUgaW5wdXQgc3RyaW5nDQoJICoNCgkgKiBAYWNjZXNzICBwcml2YXRlDQoJICogQHBhcmFtICAgc3RyaW5nICAgJHN0ciAgICAgIENoYXJhY3RlcnMgaW5wdXQNCgkgKiBAcGFyYW0gICBib29sICAgICAkbnVtYmVyICAgSGF2ZSBudW1iZXINCgkgKiBAcGFyYW0gICBib29sICAgICAkbm90bnVtICAgSGF2ZSBub3QgbnVtYmVyDQoJICogQHJldHVybiAgYm9vbCAgICAgSWYgaGF2ZSBudW1iZXIgb3IvYW5kIG5vdCBudW1iZXINCgkgKi8NCg0KCWZ1bmN0aW9uIF9yZWMoJHN0ciwgJG51bWJlciA9IHRydWUsICRub3RudW0gPSB0cnVlKXsNCgkJJGNudCA9IHN0cmxlbigkc3RyKTsNCgkJJHNldDEgPSAkc2V0MiA9IGZhbHNlOw0KCQlpZigkbnVtYmVyIHx8ICRub3RudW0pew0KCQkJZm9yKCRpPTA7JGk8JGNudDskaSsrKXsNCgkJCQlpZigkc3RyeyRpfSA9PT0gc3RydmFsKGludHZhbCgkc3RyeyRpfSkpKSAkc2V0MSA9IHRydWU7DQoJCQkJZWxzZSAkc2V0MiA9IHRydWU7DQoJCQkJaWYoJHNldDEgJiYgJHNldDIpIGJyZWFrOw0KCQkJfQ0KCQkJaWYoJG51bWJlciAmJiAkbm90bnVtKSByZXR1cm4gKCRzZXQxICYmICRzZXQyKTsNCgkJCWVsc2VpZigkbnVtYmVyKSByZXR1cm4gJHNldDE7DQoJCQllbHNlaWYoJG5vdG51bSkgcmV0dXJuICRzZXQyOw0KCQkJZWxzZSByZXR1cm4gdHJ1ZTsNCgkJfWVsc2UgcmV0dXJuIHRydWU7DQoJfQ0KDQoJLyoqDQoJICogR2VuZXJhdGUgcmFuZG9tIGNoYXJhY3RlcnMNCgkgKg0KCSAqIEBhY2Nlc3MgIHB1YmxpYw0KCSAqIEBwYXJhbSAgIGludCAgICAgICRsZW4gICBMZW5ndGggb2YgdGhlIHN0cmluZyB5b3Ugd2FudCBnZW5lcmF0ZWQNCgkgKiBAcmV0dXJuICBzdHJpbmcgICBSYW5kb20gY2hhcmFjdGVycw0KCSAqLw0KDQoJZnVuY3Rpb24gZ2V0KCRsZW4pew0KCQlpZighKGlzX2ludCgkbGVuKSAmJiAkbGVuID4gMCkpIHJldHVybiAkdGhpcy0+X3ZjcnM7DQoJCSRyZXQgPSAiIjsNCgkJJGNudCA9IHN0cmxlbigkdGhpcy0+X3ZjcnMpLTE7DQoJCWZvcigkaT0wOyRpPCRsZW47JGkrKykgJHJldCAuPSAkdGhpcy0+X3ZjcnN7cmFuZCgwLCAkY250KX07DQoJCWlmKCR0aGlzLT5fdm51bSB8fCAkdGhpcy0+X3Zub3QpIHJldHVybiAkdGhpcy0+X3JlYygkcmV0LCAkdGhpcy0+X3ZudW0sICR0aGlzLT5fdm5vdCkgPyAkcmV0IDogUmFuZG9tOjpnZXQoJGxlbik7DQoJCWVsc2UgcmV0dXJuICRyZXQ7DQoJfQ0KDQp9DQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/class.RRUtils.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgpjbGFzcyBSUlV0aWxzCnsKICBzdGF0aWMgcHVibGljIGZ1bmN0aW9uIGFycmF5X21lcmdlX2J5X25hbWVfcmVxdWlyZWQoICRhcnIxLCAkYXJyMiApCiAgewogICAgICAkeHhyZXN1bHQgPSBhcnJheSgpOwogICAgICAvLyBhZGQgaXRlbXMgY29tbW9uIHRvIGFycjEgYW5kIGFycjIKICAgICAgLy8gYnV0IGZhdm9yIHJlcXVpcmVkIGl0ZW1zCiAgICAgIGlmKCAhaXNfYXJyYXkoICRhcnIxICkgfHwgIWlzX2FycmF5KCAkYXJyMiApICkgIHJldHVybjsKICAgICAgZm9yZWFjaCggJGFycjEgYXMgJGExICkgewogICAgICAgICAgZm9yZWFjaCggJGFycjIgYXMgJGEyICkgewogICAgICAgICAgICAgIGlmKCAkYTFbJ25hbWUnXSA9PSAkYTJbJ25hbWUnXSApIHsKICAgICAgICAgICAgICAgICAgaWYoICRhMVsncmVxdWlyZWQnXSA9PSAyICkgewogICAgICAgICAgICAgICAgICAgICAgJHh4cmVzdWx0W10gPSAkYTE7CiAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICR4eHJlc3VsdFtdID0gJGEyOwogICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgIH0KCiAgICAgIC8vIGFkZCBpdGVtcyBpbiBhcnIxIG5vdCBpbiByZXN1bHQKICAgICAgZm9yZWFjaCggJGFycjEgYXMgJGExICkgewogICAgICAgICAgJGZvdW5kID0gZmFsc2U7CiAgICAgICAgICBmb3JlYWNoKCAkeHhyZXN1bHQgYXMgJHJlcyApIHsKICAgICAgICAgICAgICBpZiggJGExWyduYW1lJ10gPT0gJHJlc1snbmFtZSddICkgewogICAgICAgICAgICAgICAgICAkZm91bmQgPSB0cnVlOwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICBpZiggISRmb3VuZCApICR4eHJlc3VsdFtdID0gJGExOwogICAgICB9CgogICAgICAvLyBhZGQgaXRlbXMgaW4gYXJyMiBub3QgaW4gcmVzdWx0CiAgICAgIGZvcmVhY2goICRhcnIyIGFzICRhMiApIHsKICAgICAgICAgICRmb3VuZCA9IGZhbHNlOwogICAgICAgICAgZm9yZWFjaCggJHh4cmVzdWx0IGFzICRyZXMgKSB7CiAgICAgICAgICAgICAgaWYoICRhMlsnbmFtZSddID09ICRyZXNbJ25hbWUnXSApIHsKICAgICAgICAgICAgICAgICAgJGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgICAgaWYoICEkZm91bmQgKSAkeHhyZXN1bHRbXSA9ICRhMjsKICAgICAgfQogICAgICByZXR1cm4gJHh4cmVzdWx0OwogIH0KCiAgZnVuY3Rpb24gY29tcGFyZV9lbGVtZW50c19ieV9zb3J0b3JkZXJfa2V5KCAkZTEsICRlMiApCiAgewogICAgICBpZiggJGUxWydzb3J0X2tleSddIDwgJGUyWydzb3J0X2tleSddICkgewogICAgICAgICAgcmV0dXJuIC0xOwogICAgICB9CiAgICAgIGVsc2UgaWYoICRlMVsnc29ydF9rZXknXSA+ICRlMlsnc29ydF9rZXknXSApIHsKICAgICAgICAgIHJldHVybiAxOwogICAgICB9CiAgICAgIHJldHVybiAwOwogIH0KCiAgc3RhdGljIHB1YmxpYyBmdW5jdGlvbiBpbXBsb2RlX3dpdGhfa2V5KCRhc3NvYywgJGluZ2x1ZSA9ICc9JywgJG91dGdsdWUgPSAnJicpCiAgewogICAgICAkcmV0dXJuID0gbnVsbDsKICAgICAgZm9yZWFjaCAoJGFzc29jIGFzICR0ayA9PiAkdHYpICRyZXR1cm4gLj0gJG91dGdsdWUuJHRrLiRpbmdsdWUuJHR2OwogICAgICByZXR1cm4gc3Vic3RyKCRyZXR1cm4sc3RybGVuKCRvdXRnbHVlKSk7CiAgfQoKICBzdGF0aWMgcHVibGljIGZ1bmN0aW9uIG15Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICRuYW1lLCAkdmFsdWU9JycsICRzZWxlY3RlZHZhbHVlPScnLCAkYWRkdHRleHQ9JycpCiAgewogICAgICAkdGV4dCA9ICc8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9IicuJGlkLiRuYW1lLiciIHZhbHVlPSInLiR2YWx1ZS4nIic7CiAgICAgICRhcnIgPSBleHBsb2RlKCIsIiwkc2VsZWN0ZWR2YWx1ZSk7CiAgICAgIGZvcmVhY2goICRhcnIgYXMgJGEgKSB7CiAgICAgICAgICBpZiAoJGEgPT0gJHZhbHVlKSAkdGV4dCAuPSAnICcgLiAnY2hlY2tlZD0iY2hlY2tlZCInOwogICAgICB9CiAgICAgIGlmICgkYWRkdHRleHQgIT0gJycpICR0ZXh0IC49ICcgJy4kYWRkdHRleHQ7CiAgICAgICR0ZXh0IC49ICIgLz5cbiI7CiAgICAgIHJldHVybiAkdGV4dDsKICB9Cgp9IC8vIEVuZCBvZiBjbGFzcw==]]></data>
	</file>
	<file>
	  <filename>/lib/class.user.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCm5hbWVzcGFjZSBGcm9udEVuZFVzZXJzOwoKY2xhc3MgdXNlciBpbXBsZW1lbnRzIFxBcnJheUFjY2Vzcwp7CiAgICBwcml2YXRlICRfZGF0YSA9IFsgJ2lkJyA9PiBudWxsLCAndXNlcm5hbWUnID0+IG51bGwsICdjcmVhdGVkYXRlJyA9PiBudWxsLCAnZXhwaXJlcycgPT4gbnVsbCwgJ25vbnN0ZCcgPT4gRkFMU0UsICdkaXNhYmxlZCcgPT4gRkFMU0UsICdmb3JjZV9uZXdwdycgPT4gRkFMU0UsCiAgICAgICAgICAgICAgICAgICAgICAgJ2ZvcmNlX2Noc2V0dGluZ3MnID0+IEZBTFNFLCAnbXVzdF92YWxpZGF0ZScgPT4gRkFMU0UsICdsb2dnZWRpbicgPT4gbnVsbCBdOwogICAgcHJpdmF0ZSAkX25ld19wYXNzd29yZDsKICAgIHByaXZhdGUgJF9wcm9wczsKICAgIHByaXZhdGUgJF9ncm91cHM7IC8vIGxhenkgbG9hZGVkLgogICAgcHJpdmF0ZSAkX2RpcnR5OwoKICAgIHB1YmxpYyBmdW5jdGlvbiBPZmZzZXRHZXQoJGtleSkKICAgIHsKICAgICAgICByZXR1cm4gJHRoaXMtPl9fZ2V0KCRrZXkpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBPZmZzZXRTZXQoJGtleSwkdmFsKQogICAgewogICAgICAgIHJldHVybiAkdGhpcy0+X19zZXQoJGtleSwkdmFsKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gT2Zmc2V0VW5zZXQoJGtleSkgeyAvKiBkbyBub3RoaW5nICovIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gT2Zmc2V0RXhpc3RzKCRrZXkpIHsKICAgICAgICByZXR1cm4gaXNzZXQoJHRoaXMtPl9kYXRhWyRrZXldKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gX19nZXQoJGtleSkKICAgIHsKICAgICAgICBzd2l0Y2goICRrZXkgKSB7CiAgICAgICAgY2FzZSAnaWQnOgogICAgICAgICAgICByZXR1cm4gKGludCkgJHRoaXMtPl9kYXRhWyRrZXldOwoKICAgICAgICBjYXNlICd1c2VybmFtZSc6CiAgICAgICAgICAgIHJldHVybiB0cmltKCR0aGlzLT5fZGF0YVska2V5XSk7CgogICAgICAgIGNhc2UgJ2NyZWF0ZWRhdGVfdHMnOgogICAgICAgICAgICBpZiggISR0aGlzLT5fZGF0YVsnY3JlYXRlZGF0ZSddICkgcmV0dXJuIDA7CiAgICAgICAgICAgICRkYiA9IFxDbXNBcHA6OmdldF9pbnN0YW5jZSgpLT5HZXREYigpOwogICAgICAgICAgICByZXR1cm4gJGRiLT5Vbml4VGltZVN0YW1wKCR0aGlzLT5fZGF0YVsnY3JlYXRlZGF0ZSddKTsKCiAgICAgICAgY2FzZSAnY3JlYXRlZGF0ZV9zdHInOiAvLyBkYiBkYXRlCiAgICAgICAgICAgIHJldHVybiB0cmltKCR0aGlzLT5fZGF0YVsnY3JlYXRlZGF0ZSddKTsKCiAgICAgICAgY2FzZSAnZXhwaXJlc190cyc6CiAgICAgICAgICAgIGlmKCAhJHRoaXMtPl9kYXRhWydleHBpcmVzJ10gKSByZXR1cm4gMDsKICAgICAgICAgICAgJGRiID0gXENtc0FwcDo6Z2V0X2luc3RhbmNlKCktPkdldERiKCk7CiAgICAgICAgICAgIHJldHVybiAkZGItPlVuaXhUaW1lU3RhbXAoJHRoaXMtPl9kYXRhWydleHBpcmVzJ10pOwoKICAgICAgICBjYXNlICdleHBpcmVzX3N0cic6IC8vIGRiIGRhdGUKICAgICAgICAgICAgcmV0dXJuIHRyaW0oJHRoaXMtPl9kYXRhWydleHBpcmVzJ10pOwoKICAgICAgICBjYXNlICdub25zdGQnOgogICAgICAgIGNhc2UgJ2Rpc2FibGVkJzoKICAgICAgICBjYXNlICdmb3JjZV9uZXdwdyc6CiAgICAgICAgY2FzZSAnZm9yY2VfY2hzZXR0aW5ncyc6CiAgICAgICAgY2FzZSAnbXVzdF92YWxpZGF0ZSc6CiAgICAgICAgY2FzZSAnbG9nZ2VkaW4nOgogICAgICAgICAgICByZXR1cm4gKGJvb2wpICR0aGlzLT5fZGF0YVska2V5XTsKCiAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgdGhyb3cgbmV3IFxMb2dpY0V4Y2VwdGlvbigiJGtleSBpcyBub3QgYSBnZXR0YWJsZSBtZW1iZXIgb2YgIi5fX0NMQVNTX18pOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gaXNfZXhwaXJlZCgpCiAgICB7CiAgICAgICAgcmV0dXJuICgkdGhpcy0+ZXhwaXJlc190cyA8IHRpbWUoKSk7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIGdldF9wcm9wZXJ0eSgka2V5KQogICAgewogICAgICAgICRrZXkgPSB0cmltKCRrZXkpOwogICAgICAgIGlmKCAhJGtleSApIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJ0ludmFsaWQga2V5IHBhc3NlZCB0byAnLl9fTUVUSE9EX18pOwogICAgICAgIGlmKCBpc3NldCgkdGhpcy0+X3Byb3BzWyRrZXldKSApIHJldHVybiAkdGhpcy0+X3Byb3BzWyRrZXldOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfcHJvcGVydGllcygpCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5fcHJvcHM7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIGdldF9ncm91cHMoKQogICAgewogICAgICAgIGlmKCAhJHRoaXMtPl9ncm91cHMgKSB7CiAgICAgICAgICAgIGlmKCAhJHRoaXMtPmlkICkgcmV0dXJuOwogICAgICAgICAgICAkbW9kID0gXGNtc191dGlsczo6Z2V0X21vZHVsZShNT0RfRlJPTlRFTkRVU0VSUyk7CiAgICAgICAgICAgICR0bXAgPSAkbW9kLT5HZXRNZW1iZXJHcm91cHNBcnJheSgkdGhpcy0+aWQpOwogICAgICAgICAgICBpZiggJHRtcCAmJiBjb3VudCgkdG1wKSApIHsKICAgICAgICAgICAgICAgICRvdXQgPSBhcnJheSgpOwogICAgICAgICAgICAgICAgZm9yZWFjaCggJHRtcCBhcyAkb25lICkgJG91dFtdID0gKGludCkgJG9uZVsnZ3JvdXBpZCddOwogICAgICAgICAgICAgICAgJHRoaXMtPl9ncm91cHMgPSAkb3V0OwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiAkdGhpcy0+X2dyb3VwczsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gbWVtYmVyb2YoJGdpZCkKICAgIHsKICAgICAgICAkZ2lkID0gKGludCkgJGdpZDsKICAgICAgICBpZiggJGdpZCA8IDEgKSB0aHJvdyBuZXcgXExvZ2ljRXhjZXB0aW9uKCdJbnZhbGlkIGdpZCBwYXNzZWQgdG8gJy5fX01FVEhPRF9fKTsKICAgICAgICAkZ3JvdXBzID0gJHRoaXMtPmdldF9ncm91cHMoKTsKICAgICAgICByZXR1cm4gaW5fYXJyYSgkZ2lkLCRncm91cHMpOwogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gbG9hZCgkdXNlcl9pZCkKICAgIHsKICAgICAgICAkdXNlcl9pZCA9IChpbnQpICR1c2VyX2lkOwogICAgICAgIGlmKCAkdXNlcl9pZCA8IDEgKSB0aHJvdyBuZXcgXExvZ2ljRXhjZXB0aW9uKCdJbnZhbGlkIHVzZXJfaWQgcGFzc2VkIHRvICcuX19NRVRIT0RfXyk7CgogICAgICAgICRyb3cgPSBcZmV1X3VzZXJfY2FjaGU6OmdldF91c2VyKCR1c2VyX2lkLFRSVUUpOwogICAgICAgICRvYmogPSBuZXcgc2VsZigpOwoKICAgICAgICAka2V5cyA9IGFycmF5X2tleXMoJG9iai0+X2RhdGEpOwogICAgICAgIGZvcmVhY2goICRrZXlzIGFzICRrZXkgKSB7CiAgICAgICAgICAgIHN3aXRjaCggJGtleSApIHsKICAgICAgICAgICAgY2FzZSAnaWQnOgogICAgICAgICAgICAgICAgJG9iai0+X2RhdGFbJGtleV0gPSAoaW50KSAkcm93WyRrZXldOwogICAgICAgICAgICBjYXNlICd1c2VybmFtZSc6CiAgICAgICAgICAgIGNhc2UgJ2NyZWF0ZWRhdGUnOgogICAgICAgICAgICBjYXNlICdleHBpcmVzJzoKICAgICAgICAgICAgICAgICRvYmotPl9kYXRhWyRrZXldID0gdHJpbSgkcm93WyRrZXldKTsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgY2FzZSAnbm9uc3RkJzoKICAgICAgICAgICAgY2FzZSAnZGlzYWJsZWQnOgogICAgICAgICAgICBjYXNlICdmb3JjZV9uZXdwdyc6CiAgICAgICAgICAgIGNhc2UgJ2ZvcmNlX2Noc2V0dGluZ3MnOgogICAgICAgICAgICBjYXNlICdtdXN0X3ZhbGlkYXRlJzoKICAgICAgICAgICAgY2FzZSAnbG9nZ2VkaW4nOgogICAgICAgICAgICAgICAgJG9iai0+X2RhdGFbJGtleV0gPSBmYWxzZTsKICAgICAgICAgICAgICAgIGlmKCBpc3NldCgkcm93WyRrZXldKSApICRvYmotPl9kYXRhWyRrZXldID0gKGJvb2wpICRyb3dbJGtleV07CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgLy8gbm90ZTogZW5jcnlwdGVkIHByb3BlcnRpZXMgYXJlIGFscmVhZHkgZGVjcnlwdGVkIGhlcmUuCiAgICAgICAgaWYoIGlzc2V0KCRyb3dbJ2Zwcm9wcyddKSAmJiBjb3VudCgkcm93WydmcHJvcHMnXSkgKSB7CiAgICAgICAgICAgICRvYmotPl9wcm9wcyA9IFtdOwogICAgICAgICAgICBmb3JlYWNoKCAkcm93WydmcHJvcHMnXSBhcyAkcHJvcCApIHsKICAgICAgICAgICAgICAgICRvYmotPl9wcm9wc1skcHJvcFsndGl0bGUnXV0gPSAkcHJvcFsnZGF0YSddOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gJG9iajsKICAgIH0KfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/class.UserManipulator.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgphYnN0cmFjdCBjbGFzcyBVc2VyTWFuaXB1bGF0b3IKewogICAgcHJpdmF0ZSAkbW9kOwogICAgcHJpdmF0ZSAkX2V4cGlyZV9ub3RpZmllcl9jYWxsYmFjazsKCiAgICAvLwogICAgLy8gSW50ZXJuYWxzCiAgICAvLwoKICAgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCggJiR0aGVfbW9kdWxlICkKICAgIHsKICAgICAgICAkdGhpcy0+bW9kID0mICR0aGVfbW9kdWxlOwogICAgfQoKCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gJkdldERiKCkKICAgIHsKICAgICAgICByZXR1cm4gJHRoaXMtPm1vZC0+R2V0RGIoKTsKICAgIH0KCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gJkdldE1vZHVsZSgpCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5tb2Q7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIFNldEV4cGlyZU5vdGlmaWVyKCRjYWxsYmFjaykKICAgIHsKICAgICAgICBpZiggaXNfY2FsbGFibGUoJGNhbGxiYWNrKSApICR0aGlzLT5fZXhwaXJlX25vdGlmaWVyX2NhbGxiYWNrID0gJGNhbGxiYWNrOwogICAgfQoKICAgIHByb3RlY3RlZCBmdW5jdGlvbiBOb3RpZnlFeHBpcmVkVXNlcigkcGFyYW1zID0gYXJyYXkoKSkKICAgIHsKICAgICAgICBpZiggIWlzX2FycmF5KCRwYXJhbXMpICYmIChpc19zdHJpbmcoJHBhcmFtcykgfHwgaXNfaW50KCRwYXJhbXMpKSAmJiAkcGFyYW1zICE9ICcnICkgJHBhcmFtcyA9IGFycmF5KCRwYXJhbXMpOwogICAgICAgIGlmKCAkdGhpcy0+X2V4cGlyZV9ub3RpZmllcl9jYWxsYmFjayApIGNhbGxfdXNlcl9mdW5jX2FycmF5KCR0aGlzLT5fZXhwaXJlX25vdGlmaWVyX2NhbGxiYWNrLCRwYXJhbXMpOwogICAgfQoKICAgIC8vCiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgICAvLwoKICAgIHB1YmxpYyBmdW5jdGlvbiBBZGRHcm91cFByb3BlcnR5UmVsYXRpb24oICRncnBpZCwgJHByb3BuYW1lLCAkc29ydGtleSwgJGxvc3R1biwgJHZhbCApCiAgICB7CiAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQiKTsKICAgIH0KCiAgICAvLyEgQWRkIGEgc2luZ2xlIHByb3BlcnR5IGRlZmluaXRpb24KICAgIC8vISBccGFyYW0gbmFtZSBUaGUgbmFtZSBvZiB0aGUgcHJvcGVydHkKICAgIC8vISBccGFyYW0gcHJvbXB0IFRoZSBwcm9tcHQgdG8gZGlzcGxheSB0byB0aGUgdXNlcgogICAgLy8hICAgICAgIG5vdGUsIHRoaXMgd2lsbCBiZSBMYW5naWZpZWQKICAgIC8vISBccGFyYW0gdHlwZSAgVGhlIHR5cGUgb2YgdGhlIHByb3BlcnR5CiAgICAvLyEgICAgICAgMCA9IHRleHQsIDEgPSBjaGVja2JveCwgMiA9IGVtYWlsCiAgICAvLyEgXHBhcmFtIHJlcXVpcmVkIHdldGhlciBvciBub3QgdGhlIHByb3BlcnR5IGlzIHJlcXVpcmVkCiAgICAvLyEgXHJldHVybiBBbiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgaXMgYSBib29sZWFuIHdoaWNoIGluZGljYXRlcyBzdWNjZXNzIG9yIGZhaWx1cmUsIHRoZQogICAgLy8hICAgIHNlY29uZCBlbGVtZW50IChvcHRpb25hbCkgY29udGFpbnMgYW4gZXJyb3IgbWVzc2FnZSBpbiB0aGUgZXZlbnQgb2YgYW4gZXJyb3IuCiAgICAvLyEKICAgIHB1YmxpYyBmdW5jdGlvbiBBZGRQcm9wZXJ0eURlZm4oICRuYW1lLCAkcHJvbXB0LCAkdHlwZSwgJGxlbmd0aCApCiAgICB7CiAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCJOb3QgSW1wbGVtZW50ZWQiKTsKICAgIH0KCiAgICAvLyEgQWRkIGEgbmV3IGdyb3VwCiAgICAvLyEKICAgIC8vISBBZGRzIGEgbmV3IGdyb3VwIHdpdGggdGhlIHN1cHBsaWVkIG5hbWUgYW5kIGRlc2NyaXB0aW9uCiAgICAvLyEKICAgIC8vISBccGFyYW0gbmFtZSBUaGUgbmV3IGdyb3VwIG5hbWUKICAgIC8vISBccGFyYW0gZGVzY3JpcHRpb24gdGhlIGdyb3VwIGRlc2NyaXB0aW9uCiAgICAvLyEgXHJldHVybiBhbiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgaXMgYSBkZXNjcmlwdGlvbiBkZXNjcmliaW5nIHRoZSByZXR1cm4gc3RhdHVzCiAgICAvLyEgICAgKHRydWUgb24gc3VjY2VzcywgZmFsc2Ugb24gZXJyb3IpLiAgVGhlIHNlY29uZCBlbGVtZW50IChvcHRpb25hbCkgaXMgYW4gZXJyb3Igc3RyaW5nIGluIHRoZQogICAgLy8hICAgIGV2ZW50IG9mIGFuIGVycm9yLgogICAgLy8hCiAgICBwdWJsaWMgZnVuY3Rpb24gQWRkR3JvdXAoICRuYW1lLCAkZGVzY3JpcHRpb24gKQogICAgewogICAgICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICAgIH0KCiAgICAvLyEgQWRkIGEgbmV3IHVzZXIKICAgIC8vIQogICAgLy8hIEFkZCB0aGUgc3BlY2lmaWVkIHVzZXIgdG8gdGhlIGRhdGFiYXNlCiAgICAvLyEKICAgIC8vISBccGFyYW0gbmFtZSBUaGUgZGVzaXJlZCB1c2VybmFtZQogICAgLy8hIFxwYXJhbSBwYXNzd29yZCBUaGUgZGVzaXJlZCBwYXNzd29yZCAodW5lbmNyeXB0ZWQpCiAgICAvLyEgXHBhcmFtIGV4cGlyZXMgVGhlIGV4cGlyeSBkYXRlCiAgICAvLyEgXHJldHVybiBhbiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgaXMgYSBkZXNjcmlwdGlvbiBkZXNjcmliaW5nIHRoZSByZXR1cm4gc3RhdHVzCiAgICAvLyEgICAgKHRydWUgb24gc3VjY2VzcywgZmFsc2Ugb24gZXJyb3IpLiAgVGhlIHNlY29uZCBlbGVtZW50IChvcHRpb25hbCkgaXMgYW4gZXJyb3Igc3RyaW5nIGluIHRoZQogICAgLy8hICAgIGV2ZW50IG9mIGFuIGVycm9yLCBvciB0aGUgdXNlcmlkIG90aGVyd2lzZQogICAgLy8hCiAgICBwdWJsaWMgZnVuY3Rpb24gQWRkVXNlciggJG5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXMgKQogICAgewogICAgICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICAgIH0KCiAgICAvLyEgQ2hlY2sgaWYgdGhlIHNwZWNpZmllZCB1c2VyIGhhcyB0aGUgc3BlY2lmaWVkIHBlcm1pc3Npb24KICAgIC8vISBBc3NpZ24gdGhlIHVzZXIgc3BlY2lmaWVkIChieSBpZCkgdG8gdGhlIGdyb3VwIHNwZWNpZmllZCAoYnkgaWQpCiAgICAvLyEKICAgIC8vIVxwYXJhbSAgdWlkICBUaGUgdXNlcmlkIGZvciB0aGUgbmV3IGFzc29jaWF0aW9uCiAgICAvLyFccGFyYW0gIGdpZCAgVGhlIGdyb3VwIGlkIGZvciB0aGUgbmV3IGFzc29jaWF0aW9uCiAgICAvLyFccmV0dXJuIHRydWUgb24gc3VjY2VzcywgZmFsc2Ugb3RoZXJ3aXNlCiAgICAvLyEKICAgIHB1YmxpYyBmdW5jdGlvbiBBc3NpZ25Vc2VyVG9Hcm91cCggJHVpZCwgJGdpZCApCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBDaGVjayBpZiB0aGUgZ3JvdXAgc3BlY2lmaWVkIGhhcyB0aGUgcmVxdWlyZWQgcGVybWlzc2lvbgogICAgcHVibGljIGZ1bmN0aW9uIENoZWNrR3JvdXBQZXJtaXNzaW9uKCAkZ2lkLCAkcGVybSApCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBDaGVjayBpZiB0aGUgdXNlciBoYXMgdGhlIHNwZWNpZmllZCBwZXJtaXNzaW9uCiAgICBwdWJsaWMgZnVuY3Rpb24gQ2hlY2tVc2VyUGVybWlzc2lvbiggJHBlcm0gKQogICAgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gQ2hlY2tVc2VyUGVybWlzc2lvbkJ5VWlkKCAkdWlkLCAkcGVybSApCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBDb3VudFRlbXBDb2RlUmVjb3JkcygpCiAgICB7CiAgICAgICAgcmV0dXJuIDA7CiAgICB9CgoKICAgIHB1YmxpYyBmdW5jdGlvbiBEZWxldGVBbGxHcm91cFByb3BlcnR5UmVsYXRpb25zKCAkZ3JwaWQgKQogICAgewogICAgICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGltcGxlbWVudGVkIik7CiAgICB9CgogICAgLy8hIERlbGV0ZSBhbGwgb2YgdGhlIGN1cnJlbnQgdXNlcnMgcHJvcGVydGllcwogICAgLy8hCiAgICAvLyEgXHJldHVybiB0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG90aGVyd2lzZQogICAgLy8hCiAgICBwdWJsaWMgZnVuY3Rpb24gRGVsZXRlQWxsVXNlclByb3BlcnRpZXMoKQogICAgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KCiAgICAvLyEgRGVsZXRlIEFsbCBwcm9wZXJ0aWVzIGZvciBhIHNwZWNpZmllZCB1c2VyIGlkCiAgICAvLyEKICAgIC8vISBccGFyYW0gdXNlcmlkCiAgICAvLyEgXHJldHVybiB0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG90aGVyd2lzZQogICAgLy8hCiAgICBwdWJsaWMgZnVuY3Rpb24gRGVsZXRlQWxsVXNlclByb3BlcnRpZXNGdWxsKCR1c2VyaWQpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBEZWxldGUgdGhlIHNwZWNpZmllZCBncm91cAogICAgLy8hCiAgICAvLyEgRGVsZXRlIHRoZSBncm91cCByZWNvcmQgZm9yIHRoZSBtYXRjaGluZCBpZAogICAgLy8hCiAgICAvLyEgXHJldHVybiBhbiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgaXMgYSBkZXNjcmlwdGlvbiBkZXNjcmliaW5nIHRoZSByZXR1cm4gc3RhdHVzCiAgICAvLyEgICAgKHRydWUgb24gc3VjY2VzcywgZmFsc2Ugb24gZXJyb3IpLiAgVGhlIHNlY29uZCBlbGVtZW50IChvcHRpb25hbCkgaXMgYW4gZXJyb3Igc3RyaW5nIGluIHRoZQogICAgLy8hICAgIGV2ZW50IG9mIGFuIGVycm9yLgogICAgLy8hCiAgICBwdWJsaWMgZnVuY3Rpb24gRGVsZXRlR3JvdXBGdWxsKCAkaWQgKQogICAgewogICAgICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gRGVsZXRlR3JvdXBQcm9wZXJ0eVJlbGF0aW9uKCAkZ3JwaWQsICRwcm9wbmFtZSApCiAgICB7CiAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQiKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gRGVsZXRlUHJvcGVydHlEZWZuKCAkbmFtZSApCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBEZWxldGUgYWxsIHByb3BlcnR5IGRlZmluaXRpb25zICh1c2Ugd2l0aCBjYXV0aW9uKQogICAgcHVibGljIGZ1bmN0aW9uIERlbGV0ZVByb3BlcnR5RGVmbnMoKQogICAgewogICAgICAgIHJldHVybiBhcnJheShGQUxTRSwiTm90IEltcGxlbWVudGVkIik7CiAgICB9CgogICAgLy8hIERlbGV0ZSB0aGUgdXNlciB3aXRoIHRoZSBzcGVjaWZpZWQgaWQKICAgIC8vISBcbm90ZSBUaGlzIGlzIGEgZGVwcmVjYXRlZCBmdW5jdGlvbiBhcyBpdCByZWxpZXMgb24gdGhlIHVzZXJpZCBiZWluZyBzZXQgaW4gdGhlIF9HRVQKICAgIC8vISB2YXJpYWJsZS4KICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIERlbGV0ZVVzZXIoJGlkKQogICAgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KCiAgICAvLyEgQ29tcGxldGVseSBkZWxldGUgYWxsIHJlZmVyZW5jZXMgdG8gdGhlIHN1cHBsaWVkIHVzZXIgaWQKICAgIC8vIQogICAgLy8hVGhpcyBtZXRob2QgY29tcGxldGVseSBkZWxldGVzIGFueXRoaW5nIGZyb20gdGhlIGRhdGFiYXNlIHJlbGF0ZWQgdG8gdGhlIHNwZWNpZmllZCB1c2VyIGlkLgogICAgLy8hc3BlY2lmaWNhbGx5LCBncm91cCBhc3NvY2lhdGlvbnMsIHByb3BlcnRpZXMsIGFuZCB0aGUgdXNlciByZWNvcmQgaXRzZWxmLgogICAgLy8hCiAgICAvLyFccGFyYW0gdWlkIHRoZSB1c2VyaWQgdG8gZGVsZXRlIGFsbCByZWZlcmVuY2VzIHRvCiAgICAvLyFccmV0dXJuIGFycmF5LCB0aGUgZmlyc3QgZWxlbWVudCBvZiB0aGUgYXJyYXkgaXMgYSBib29sZWFuIGluZGljYXRpbmcgc3VjY2VzcyBvciBmYWlsdXJlLgogICAgLy8hICAgaWYgdGhlIGZpcnN0IGVsZW1lbnQgaXMgZmFsc2UsIHRoZW4gdGhlIHNlY29uZCBlbGVtZW50IHdpbGwgY29udGFpbiBhbiBlcnJvciBtZXNzYWdlLgogICAgLy8hCiAgICBwdWJsaWMgZnVuY3Rpb24gRGVsZXRlVXNlckZ1bGwoICR1aWQgKQogICAgewogICAgICAgIHJldHVybiBhcnJheShGQUxTRSwiTm8gZnVuY3Rpb24gZGVmaW5lZCIpOwogICAgfQoKCiAgICAvLyEgRGVsZXRlIGEgcHJvcGVydHkgZm9yIHRoZSBjdXJyZW50IHVzZXIKICAgIC8vIQogICAgLy8hIFJlbW92ZSBhIHByb3BlcnR5IGZyb20gdGhlIGRhdGFiYXNlIGZvciB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyCiAgICAvLyEKICAgIC8vISBccGFyYW0gdGl0bGUgVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5IHRvIGRlbGV0ZQogICAgLy8hIFxwYXJhbSBhbGwgICBPcHRpb25hbGx5IGRlbGV0ZSBhbGwgcHJvcGVydGllcyBmb3IgdGhpcyB1c2VyCiAgICAvLyEgXHJldHVybnMgdHJ1ZSBvbiBzdWNjZXNzLCBmYWxzZSBvdGh3ZXJpc2VuCiAgICAvLyEKICAgIHB1YmxpYyBmdW5jdGlvbiBEZWxldGVVc2VyUHJvcGVydHkoJHRpdGxlLCRhbGw9ZmFsc2UpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBEZWxldGUgYSBwcm9wZXJ0eSBmb3IgYSBzcGVjaWZpZWQgdXNlcgogICAgLy8hCiAgICAvLyFccGFyYW0gdGl0bGUgVGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5IHRvIGRlbGV0ZQogICAgLy8hXHBhcmFtIHVzZXJpZCBUaGUgaWQgdG8gZGVsZXRlIHRoZSBwcm9wZXJ0eSBmb3IKICAgIC8vIVxwYXJhbSBhbGwgKG9wdGlvbmFsKSBEZWxldGUgYWxsIHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgdXNlcmlkLgogICAgLy8hXHJldHVybiB0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG90aGVyd2lzZS4KICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIERlbGV0ZVVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCR1c2VyaWQsJGFsbD1mYWxzZSkKICAgIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgogICAgLyogZXhwaXJ5Y29kZSBpcyBhIHN0cnRvdGltZSBzdHJpbmcgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBFeHBpcmVUZW1wQ29kZXMoJGV4cGlyeWNvZGUpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBFeHBpcmUgYW55IGFuZCBhbGwgdXNlcnMgdGhhdCBoYXZlIGJlZW4gYXdheSBmb3IgdG9vIGxvbmcKICAgIHB1YmxpYyBmdW5jdGlvbiBFeHBpcmVVc2VycygpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBHZXQgdGhlIGVtYWlsIGFkZHJlc3Mgb2YgdGhlIHVzZXIgd2l0aCB0aGUgc3BlY2lmaWVkIGlkCiAgICAvLyEKICAgIC8vIVxyZXR1cm4gRW1haWwgYWRkcmVzcywgb3IgZmFsc2UKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIEdldEVtYWlsKCR1c2VyaWQpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBHZW5lcmF0ZSBhIHJhbmRvbSAoYnV0IG5vdCB1c2VkKSB1c2VybmFtZQogICAgLy8hCiAgICAvLyFcIHJldHVybiB1c2VybmFtZSwgb3IgZmFsc2UKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIEdlbmVyYXRlUmFuZG9tVXNlcm5hbWUoICRwcmVmaXggPSAndXNlcicgKQogICAgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KCiAgICAvLyEgR2V0IHRoZSBncm91cGlkIGdpdmVuIGEgZ3JvdXAgbmFtZQogICAgLy8hCiAgICAvLyEgXHJldHVybiBncm91cGlkIG9yIGZhbHNlCiAgICAvLyEKICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRHcm91cElEKCRncm91cG5hbWUpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBHZXQgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGdyb3VwCiAgICAvLyEKICAgIC8vISBUaGlzIG1ldGhvZCByZXR1cm5zIGFuIGFzc29jaWF0aW9uIHdpdGggdGhlIGZvbGxvd2luZyBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc3BlY2lmaWVkCiAgICAvLyEgZ3JvdXAgaWQKICAgIC8vISAgICBpZCA9PiBUaGUgcmVxdWVzdGVkIGdyb3VwIGlkCiAgICAvLyEgICAgZ3JvdXBuYW1lID0+IFRoZSBuYW1lIG9mIHRoZSBncm91cAogICAgLy8hICAgIGdyb3VwZGVzYyA9PiBUaGUgZ3JvdXAgZGVzY3JpcHRpb24KICAgIC8vIQogICAgLy8hIFxwYXJhbSBnaWQgVGhlIGdyb3VwIGlkCiAgICAvLyEgXHBhcmFtIGFzc29jaWF0aXZlIGFycmF5LCBvciBhcnJheSB3aXRoIGZpcnN0IGVsZW1lbnQgb2YgZmFsc2UsIHNlY29uZCBlbGVtZW50IGNvbnRhaW5zIGVycm9yIG1lc3NhZ2UKICAgIC8vISBccmV0dXJuIGFuIGFzc29jaWF0aXZlIGFycmF5IHdpdGggZ3JvdXAgaW5mbywgb3IgZmFsc2UKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIEdldEdyb3VwSW5mbyggJGdpZCApCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBHZXQgYSBsaXN0IG9mIGFsbCBvZiB0aGUgZ3JvdXBzLCBhbmQgdGhlaXIgaWQncwogICAgLy8hCiAgICAvLyEgXHJldHVybiBhbiBhc3NvY2lhdGl2ZSBhcnJheSBjb250YWluaW5nIGdyb3VwIG5hbWVzIGFzIGtleXMsIGFuZCBpZCdzIGFzIHZhbHVlcwogICAgLy8hCiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0R3JvdXBMaXN0KCkKICAgIHsKICAgICAgICByZXR1cm4gYXJyYXkoKTsKICAgIH0KCiAgICAvLyEgR2V0IGluZm9ybWF0aW9uIGFib3V0IHRoZSBjb21wbGV0ZSBsaXN0IG9mIGdyb3VwcwogICAgLy8hCiAgICAvLyEgVGhpcyBtZXRob2QgcmV0dXJucyBhbiBhcnJheSBvZiBncm91cGluZm8gYXNzb2NpYXRpb25zLCByZXByZXNlbnRpbmcgYWxsIG9mIHRoZQogICAgLy8hIGdyb3VwcyBpbiB0aGUgdGFibGUuCiAgICAvLyEKICAgIC8vISBccmV0dXJucyBhbiBhcnJheSBvZiBncm91cGluZm8gYXNzb2NpYXRpb25zCiAgICAvLyEKICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRHcm91cExpc3RGdWxsKCkKICAgIHsKICAgICAgICByZXR1cm4gYXJyYXkoKTsKICAgIH0KCiAgICAvLyEgR2V0IHRoZSBncm91cCBuYW1lIGdpdmVuIGEgZ3JvdXAgaWQKICAgIC8vIQogICAgLy8hIFxyZXR1cm4gZ3JvdXAgbmFtZSwgb3IgZmFsc2UKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIEdldEdyb3VwTmFtZSgkZ3JvdXBpZCkKICAgIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgogICAgLy8hIEdldCB0aGUgZ3JvdXAgZGVzY3JpcHRpb24gZ2l2ZW4gYSBncm91cCBpZAogICAgLy8hCiAgICAvLyEgXHJldHVybiBncm91cCBkZXNjcmlwdGlvbiwgb3IgZmFsc2UKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIEdldEdyb3VwRGVzYygkZ3JvdXBpZCkKICAgIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIEdldEdyb3VwUHJvcGVydHlSZWxhdGlvbnMoICRncnBpZCApCiAgICB7CiAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQiKTsKICAgIH0KCiAgICAvLyEgR2V0IGEgbGlzdCBvZiB0aGUgZ3JvdXBzIHRoYXQgdGhlIHNwZWNpZmllZCB1c2VyIGJlbG9uZ3MgdG8KICAgIC8vIQogICAgLy8hIFJldHVybiBhIHN0cmluZyBvZiBjb21tYSBkZWxpbWl0ZWQgZ3JvdXAgbmFtZXMsIGNvcnJlc3BvbmRpbmcgdG8gdGhlCiAgICAvLyEgZ3JvdXBzIHRoYXQgdGhlIHVzZXIgaXMgYSBtZW1iZXIgb2YKICAgIC8vIQogICAgLy8hIFxyZXR1cm4gYSBjb21tYSBkZWxpbWl0ZWQgbGlzdCBvZiBncm91cCBuYW1lcywgb3IgIm5vbmUiCiAgICAvLyEKICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRNZW1iZXJHcm91cHMoJHVzZXJpZCkKICAgIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgogICAgLy8hIFJldHVybiBhIGNvbXBsZXRlIGxpc3Qgb2YgdGhlIGdyb3VwcyB0aGF0IHRoaXMgdXNlciBiZWxvbmdzIHRvCiAgICAvLyEKICAgIC8vISBSZXR1cm5zIGFuIGFycmF5IG9mIGdyb3VwaW5mbyByZWNvcmRzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGdyb3VwcyB0aGF0CiAgICAvLyEgdGhpcyB1c2VyIGlzIGFzc29jaWF0ZWQgd2l0aC4KICAgIC8vIQogICAgLy8hIFxwYXJhbSB1c2VyaWQgVGhlIHVzZXJpZCB0byB0ZXN0CiAgICAvLyEgXHJldHVybiBmYWxzZSBvbiBlcnJvciwgb3RoZXJ3aXNlLCBhbiBhcnJheSBvZiBncm91cGluZm8gcmVjb3Jkcy4KICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIEdldE1lbWJlckdyb3Vwc0FycmF5KCR1c2VyaWQpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBHZXQgYSBzaW5nbGUgcHJvcGVydHkgZGVmaW5pdGlvbiBieSBuYW1lCiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0UHJvcGVydHlEZWZuKCAkbmFtZSApCiAgICB7CiAgICAgICAgcmV0dXJuIEZBTFNFOwogICAgfQoKICAgIC8vISBHZXQgYW4gYXJyYXkgb2YgcHJvcGVydHkgZGVmaW5pdGlvbnMKICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRQcm9wZXJ0eURlZm5zKCkKICAgIHsKICAgICAgICByZXR1cm4gYXJyYXkoRkFMU0UsIk5vdCBJbXBsZW1lbnRlZCIpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRQcm9wZXJ0eUdyb3VwUmVsYXRpb25zKCAkdGl0bGUgKQogICAgewogICAgICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGltcGxlbWVudGVkIik7CiAgICB9CgogICAgLy8hIEdldCB0aGUgdXNlcmlkIG9mIHRoZSB1c2VyIHdpdGggdGhlIG1hdGNoaW5nIG5hbWUKICAgIC8vIQogICAgLy8hIFxyZXR1cm4gVXNlcklELCBvciBmYWxzZQogICAgLy8hCiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0VXNlcklEKCR1c2VybmFtZSkKICAgIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgogICAgLy8hIEdldCBpbmZvcm1hdGlvbiBhYm91dCBhIHVzZXIKICAgIC8vIQogICAgLy8hIFRoaXMgbWV0aG9kIHJldHVybnMgYW4gYXNzb2NpYXRpb24gd2l0aCB0aGUgZm9sbG93aW5nIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcGVjaWZpZWQKICAgIC8vISB1c2VyIGlkCiAgICAvLyEgICBpZCA9IHRoZSByZXF1ZXN0ZWQgdXNlciBpZAogICAgLy8hICAgdXNlcm5hbWUgPSB0aGUgdXNlcnMgbmFtZQogICAgLy8hICAgcGFzc3dvcmQgPSB0aGUgKGVuY3J5cHRlZCkgdXNlciBwYXNzd29yZAogICAgLy8hICAgZW1haWwgICAgPSB0aGUgdXNlcnMgZW1haWwgYWRkcmVzcwogICAgLy8hICAgZXhwaXJlcyAgPSB0aGUgdXNlcnMgZXhwaXJ5IGRhdGUKICAgIC8vISAgIHN0YXR1cyAgID0gdGhlIHVzZXJzIHN0YXR1cwogICAgLy8hCiAgICAvLyEgXHBhcmFtIHVpZCBUaGUgdXNlcmlkIHRvIGlucXVpcmUgYWJvdXQKICAgIC8vISBccmV0dXJuIGFuIGFycmF5LCB0aGUgZmlyc3QgZWxlbWVudCBjb250YWlucyByZXR1cm4gc3RhdHVzICh0cnVlL2ZhbHNlKSwgdGhlIHNlY29uZCBlbGVtZW50CiAgICAvLyEgICAgaXMgZWl0aGVyIGFuIGFycmF5IGNvbnRhaW5pbmcgdGhlIGRldGFpbHMgYWJvdmUsIG9yIGFuIGVycm9yIG1lc3NhZ2UuCiAgICAvLyEKICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRVc2VySW5mbyggJHVpZCApCiAgICB7CiAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgZGVmaW5lZCIpOwogICAgfQoKICAgIC8vISBSZXR1cm4gdGhlIHVzZXJuYW1lIHRoYXQgbWFjaGVzIHRoZSBzcGVjaWZpZWQgdXNlciBpZAogICAgLy8hCiAgICAvLyFccmV0dXJuIFRoZSBtYXRjaGluZyB1c2VybmFtZSwgb3IgZmFsc2UKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIEdldFVzZXJOYW1lKCR1c2VyaWQpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBHZXQgYSBzaW5nbGUgcHJvcGVydHkgZm9yIHRoZSBjdXJyZW50IHVzZXIKICAgIC8vIQogICAgLy8hIEdldCBhIHNpbmdsZSBwcm9wZXJ0eSBmb3IgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlci4KICAgIC8vIQogICAgLy8hIFxwYXJhbSB0aXRsZSBUaGUgbmFtZSBvZiB0aGUgcGFyYW1ldGVyIHRvIHJldHVybgogICAgLy8hIFxwYXJhbSBkZWZhdWx0dmFsdWUgQSB2YWx1ZSB0byByZXR1cm4gaWYgdGhlIHByb3BlcnR5IGRvZXMgbm90IGV4aXN0IGZvciB0aGF0IHVzZXIKICAgIC8vISBccmV0dXJuIFRoZSBwcm9wZXJ0eSB2YWx1ZSwgb3IgZmFsc2UuCiAgICAvLyEKICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRVc2VyUHJvcGVydHkoJHRpdGxlLCRkZWZhdWx0dmFsdWU9ZmFsc2UpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBHZXQgcHJvcGVydHkgaW5mb3JtYXRpb24gZm9yIHRoZSBzcGVjaWZpZWQgdXNlciBpZAogICAgLy8hCiAgICAvLyEgXHBhcmFtIHRpdGxlIFRoZSBuYW1lIG9mIHRoZSBwcm9wZXJ0eSB3ZSBhcmUgc2VhcmNoaW5nIGZvcgogICAgLy8hIFxwYXJhbSB1c2VyaWQgVGhlIHVzZXJpZCBmb3Igd2hvJ3MgcHJvcGVydHkgd2UgYXJlIHNlYXJjaGluZwogICAgLy8hIFxwYXJhbSBkZWZhdWx0dmFsdWUgVGhlIHZhbHVlIHRvIHJldHVybiBpZiB0aGlzIHByb3BlcnR5IGRvZXMgbm90IGV4aXN0IGZvciB0aGlzIHVzZXIKICAgIC8vISBccmV0dXJuIFRoZSBwcm9wZXJ0eSB2YWx1ZSwgb3IgZmFsc2UuCiAgICAvLyEKICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRVc2VyUHJvcGVydHlGdWxsKCR0aXRsZSwkdXNlcmlkLCAkZGVmYXVsdHZhbHVlPWZhbHNlKQogICAgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KCiAgICAvLyEgR2V0IGEgbGlzdCBvZiBhbGwgb2YgdGhlIHVzZXJzIHRoYXQgYmVsb25nIHRvIHRoZSBzcGVjaWZpZWQgZ3JvdXAKICAgIC8vISBpbmNsdWRpbmcgYWxsIG9mIHRoZWlyIHByb3BlcnRpZXMKICAgIC8vIQogICAgLy8hIFRoaXMgbWV0aG9kIHJldHVybnMgYW4gYXNzb2NpYXRpdmUgYXJyYXkgKHdpdGggdXNlcmlkIGFzIHRoZSBrZXkpCiAgICAvLyEKICAgIC8vISBccGFyYW0gZ3JvdXBpZCB0aGUgZGVzaXJlZCBncm91cCBpZAogICAgLy8hIFxyZXR1cm4gYW4gYXJyYXkgb2YgdXNlciBpbmZvcm1hdGlvbiAoc2VlIEdldFVzZXJJbmZvKSwgb3IgZmFsc2UKICAgIC8vISBcc2EgR2V0VXNlckluZm8KICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIEdldEZ1bGxVc2Vyc0luR3JvdXAoJGdyb3VwaWQpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBHZXQgYSBsaXN0IG9mIHRoZSB1c2VycyB0aGF0IGJlbG9uZyB0byB0aGUgc3BlY2lmaWVkIGdyb3VwCiAgICAvLyEKICAgIC8vISBUaGlzIG1ldGhvZCByZXR1cm5zIGFuIGFzc29jaWF0aXZlIGFycmF5IGNvbnRhaW5pbmcgYSBjb21wbGV0ZSBzZXQgb2YgdGhlCiAgICAvLyEgaW5mb3JtYXRpb24gYWJvdXQgYWxsIG9mIHRoZSB1c2VycyB0aGF0IGJlbG9uZyB0byB0aGUgc3BlY2lmaWVkIGdyb3VwCiAgICAvLyEKICAgIC8vISBccGFyYW0gZ3JvdXBpZCB0aGUgZGVzaXJlZCBncm91cCBpZAogICAgLy8hIFxyZXR1cm4gYW4gYXJyYXkgb2YgdXNlciBpbmZvcm1hdGlvbiAoc2VlIEdldFVzZXJJbmZvKSwgb3IgZmFsc2UKICAgIC8vISBcc2EgR2V0VXNlckluZm8KICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIEdldFVzZXJzSW5Hcm91cCggJGdyb3VwaWQgPSAnJyApCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBSZXR1cm4gYW4gYXJyYXkgb2YgdGhlIHVzZXIncyBwcm9wZXJ0aWVzCiAgICAvLyEKICAgIC8vISBSZXR1cm5zIGEgY29tcGxldGUgbGlzdCBvZiB0aGUgdXNlcnMgcHJvcGVydGllcwogICAgLy8hCiAgICAvLyEgXHBhcmFtIHVpZCBUaGUgdWlkIHRvIHRlc3QKICAgIC8vISBccmV0dXJuIGZhbHNlIG9uIGVycm9yLCBvdGhlcndpc2UgYW4gYXJyYXkgb2YgYXNzb2NpYXRpb25zLCBlYWNoIGFzc29jaWF0aW9uCiAgICAvLyEgICBoYXMgdGhlIGZvbGxvd2luZyBrZXlzOgogICAgLy8hICAgICAgaWQgICAgID0gVGhlIHByb3BlcnR5IGlkCiAgICAvLyEgICAgICB1c2VyaWQgPSBUaGUgbWF0Y2hpbmcgdXNlciBpZAogICAgLy8hICAgICAgdGl0bGUgID0gVGhlIHByb3BlcnR5IHRpdGxlCiAgICAvLyEgICAgICBkYXRhICAgPSBUaGUgcHJvcGVydHkgZGF0YQogICAgLy8hCiAgICBwdWJsaWMgZnVuY3Rpb24gR2V0VXNlclByb3BlcnRpZXMoJHVpZCkKICAgIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIEdldFVzZXJUZW1wQ29kZSggJHVpZCApCiAgICB7CiAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQiKTsKICAgIH0KCiAgICAvLyEgQSBmdW5jdGlvbiB0aGF0IHRlc3RzIHdldGhlciBhIGdyb3VwIHdpdGggdGhlIHNwZWZpZmllZCBpZCBleGlzdHMKICAgIC8vIQogICAgLy8hIFxwYXJhbSBnaWQgVGhlIGRlc2lyZWQgZ3JvdXAgaWQKICAgIC8vISBccmV0dXJuIGJvb2xlYW4KICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIEdyb3VwRXhpc3RzQnlJRCggJGdpZCApCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBBIHB1YmxpYyBmdW5jdGlvbiB0aGF0IHRlc3RzIHdldGhlciBhIGdyb3VwIHdpdGggdGhlIG5hbWUgZXhpc3RzCiAgICAvLyEKICAgIC8vISBccGFyYW0gZ2lkIFRoZSBkZXNpcmVkIGdyb3VwIG5hbWUKICAgIC8vISBccmV0dXJuIGJvb2xlYW4KICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIEdyb3VwRXhpc3RzQnlOYW1lKCAkbmFtZSApCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBHZXRFeHBpcnlEYXRlKCAkdWlkICkKICAgIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIElzQWNjb3VudEV4cGlyZWQoICR1aWQgKQogICAgewogICAgICAgIHJldHVybiB0cnVlOwogICAgfQoKICAgIC8vISBUZXN0IHdldGhlciB0aGUgc3BlY2lmaWVkIGVtYWlsIGFkZHJlc3MgcGFzc2VzIHRoZSBydWxlcy4KICAgIC8vIQogICAgLy8hIFRoaXMgbWV0aG9kIHdpbGwgdGVzdCBpZiB0aGUgZW1haWwgYWRkcmVzcyBzdXBwbGllZCBtYXRjaGVzIHRoZQogICAgLy8hIHNldCBydWxlcy4gIE9wdGlvbmFsbHksIHRoZSBlbWFpbCBhZGRyZXNzIGNhbiBiZSB2YWxpZGF0ZWQgdmlhCiAgICAvLyEgc210cC4KICAgIC8vIQogICAgLy8hIFxwYXJhbSAgZW1haWwgVGhlIGFkZHJlc3MgdG8gdGVzdAogICAgLy8hIFxyZXR1cm4gYW4gYXJyYXksIHRoZSBmaXJzdCBlbGVtZW50IG9mIHRoZSBhcnJheSBpbmRpY3VhdGVzIHN1Y2Nlc3Mgb3IgZmFpbHVyZQogICAgLy8hICAgIHRoZSBzZWNvbmQgZWxlbWVudCBpcyB0aGUgZXJyb3IgbWVzc2FnZSwgaWYgYW4gZXJyb3Igb2NjdXJyZWQKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIElzVmFsaWRFbWFpbEFkZHJlc3MoICRlbWFpbCApCiAgICB7CiAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgZGVmaW5lZCIpOwogICAgfQoKICAgIC8vISBDaGVjayB0aGUgdmFsaWRpdHkgb2YgdGhlIHN1cHBsaWVkIHBhc3N3b3JkCiAgICAvLyEKICAgIC8vIVxwYXJhbSAgcGFzc3dvcmQgVGhlIHBhc3N3b3JkIHRvIHRlc3QuCiAgICAvLyFccmV0dXJuIHRydWUgaWYgdGhlIHBhc3N3b3JkIGlzIHZhbGlkLCBmYWxzZSBvdGhlcndpc2UKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIElzVmFsaWRQYXNzd29yZCggJHBhc3N3b3JkICkKICAgIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgogICAgLy8hIENoZWNrIHdldGhlciB0aGUgdXNlcm5hbWUgc3VwcGxpZWQgcGFzc2VzIHRoZSBydWxlcwogICAgLy8hCiAgICAvLyFccGFyYW0gdXNlcm5hbWUgVGhlIHVzZXJuYW1lIHRvIGJlIHRlc3RlZAogICAgLy8hXHJldHVybiBib29sZWFuIHRydWUvZmFsc2UKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIElzVmFsaWRVc2VybmFtZSggJHVzZXJuYW1lICkKICAgIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgogICAgLy8hIFRlc3RzIHdldGhlciB0aGUgY3VycmVudCB1c2VyIGlzIGxvZ2dlZCBpbiBvciBub3QuCiAgICBwdWJsaWMgZnVuY3Rpb24gTG9nZ2VkSW4oKQogICAgewogICAgICAgIGlmICgkdGhpcy0+TG9nZ2VkSW5JZCgpPT1mYWxzZSkgcmV0dXJuIGZhbHNlOyBlbHNlIHJldHVybiB0cnVlOwogICAgfQoKICAgIC8vISBSZXR1cm4gdGhlIGVtYWlsIGFkZHJlc3Mgb2YgdGhlIGN1cnJlbnQgdXNlcgogICAgLy8hCiAgICAvLyEgXHJldHVybnMgYSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBlbWFpbCBhZGRyZXNzIG9mIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIKICAgIC8vISAgIGlmIG5vb25lIGlzIGxvZ2dlZCBpbiwgdGhlbiBhbiBlbXB0eSBzdHJpbmcgaXMgcmV0dXJuZWQKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIExvZ2dlZEluRW1haWwoKQogICAgewogICAgICAgIHJldHVybiAiIjsKICAgIH0KCiAgICAvLyEgUmV0dXJuIHRoZSB1c2VyaWQgb2YgdGhlIGN1cnJlbnRseSBsb2dnZWQgaW4gdXNlcgogICAgcHVibGljIGZ1bmN0aW9uIExvZ2dlZEluSWQoKQogICAgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KCiAgICAvLyEgUmV0dXJuIHRoZSB1c2VybmFtZSBvZiB0aGUgY3VycmVudCB1c2VyCiAgICAvLyEKICAgIC8vISBccmV0dXJucyBhIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIHVzZXJuYW1lIG9mIHRoZSBjdXJyZW50bHkgbG9nZ2VkIGluIHVzZXIKICAgIC8vISAgIGlmIG5vb25lIGlzIGxvZ2dlZCBpbiwgdGhlbiBhbiBlbXB0eSBzdHJpbmcgaXMgcmV0dXJuZWQKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIExvZ2dlZEluTmFtZSgpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBMb2dpbiggJHVzZXJuYW1lLCAkcGFzc3dvcmQsICRncm91cHMgPSAnJywgJG1kNXB3ID0gZmFsc2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICRmb3JjZV9sb2dvdXQgPSBmYWxzZSkKICAgIHsKICAgICAgICByZXR1cm4gYXJyYXkoRkFMU0UsIkZ1bmN0aW9uIG5vdCBpbXBsZW1lbnRlZCIpOwogICAgfQoKCiAgICAvLyEgTG9nb3V0IHRoZSBjdXJyZW50IHVzZXIKICAgIHB1YmxpYyBmdW5jdGlvbiBMb2dvdXQoKQogICAgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KCiAgICAvLyEgVGVzdCB3ZXRoZXIgYW4gYXNzb2NpYXRpb24gZXhpc3RzIGJldHdlZW4gdGhlIHNwZWNpZmllZCB1c2VyIGFuZCBncm91cAogICAgLy8hCiAgICAvLyEgXHBhcmFtIHVzZXJpZCBUaGUgdXNlcmlkIHRvIHRlc3QKICAgIC8vISBccGFyYW0gZ3JvdXBpZCBUaGUgZ3JvdXBpZCB0byB0ZXN0CiAgICAvLyEgXHJldHVybiB0cnVlIGlmIGFuIGFzc29jaWF0aW9uIGV4aXN0cywgZmFsc2Ugb3RoZXJ3aXNlCiAgICAvLyEKICAgIHB1YmxpYyBmdW5jdGlvbiBNZW1iZXJPZkdyb3VwKCR1c2VyaWQsJGdyb3VwaWQpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBSZW1vdmUgdGhlIHNwZWNpZmllZCB1c2VyIGZyb20gdGhlIHNwZWNpZmllZCBncm91cAogICAgLy8hCiAgICAvLyFUaGlzIG1ldGhvZCByZXZva2VzIHRoZSBtZW1iZXJzaGlwIG9mIHVzZXIgJHVpZCBmcm9tIGdyb3VwICRnaWQKICAgIC8vIQogICAgLy8hXHBhcmFtIHVpZAogICAgLy8hXHBhcmFtIGdpZAogICAgLy8hXHJldHVybiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgY29udGFpbnMgZXhpdCBzdGF0dXMgKGJvb2xlYW4pLCB0aGUgc2Vjb25kIGVsZW1lbnQKICAgIC8vISAgIChvcHRpb25hbCkgcmV0dXJucyBhbiBlcnJvciBtZXNzYWdlLCBpZiBhbiBlcnJvciBvY2N1cnJlZC4KICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIFJlbW92ZVVzZXJGcm9tR3JvdXAoICR1aWQsICRnaWQgKQogICAgewogICAgICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gUmVtb3ZlVXNlclRlbXBDb2RlKCAkdWlkICkKICAgIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgogICAgLy8hIEEgbWV0aG9kIHRvIG1vZGlmeSBhbiBleGlzdGluZyBncm91cAogICAgLy8hCiAgICAvLyFccGFyYW0gZ2lkIEFuIGV4aXN0aW5nIGdyb3VwIGlkCiAgICAvLyFccGFyYW0gbmFtZSBUaGUgbmV3IGdyb3VwIG5hbWUKICAgIC8vIVxwYXJhbSBkZXNjIFRoZSBuZXcgZ3JvdXAgZGVzY3JpcHRpb24KICAgIC8vIVxyZXR1cm4gQW4gYXJyYXksIHRoZSBmaXJzdCBlbGVtZW50IGlzIGEgYm9vbGVhbiB3aGljaCBpbmRpY2F0ZXMgc3VjY2VzcyBvciBmYWlsdXJlLCB0aGUKICAgIC8vISAgc2Vjb25kIGVsZW1lbnQgKG9wdGlvbmFsKSBjb250YWlucyBhbiBlcnJvciBtZXNzYWdlIGluIHRoZSBldmVudCBvZiBhbiBlcnJvci4KICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIFNldEdyb3VwKCAkZ2lkLCAkbmFtZSwgJGRlc2MgKQogICAgewogICAgICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gU2V0UHJvcGVydHlEZWZuKCAkbmFtZSwgJG5ld25hbWUsICRwcm9tcHQsICRsZW5ndGgsICR0eXBlICkKICAgIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgogICAgLy8hIE1vZGlmeSBhbiBleGlzdGluZyBncm91cAogICAgLy8hCiAgICAvLyEgXHBhcmFtIHVpZCBUaGUgaWQgb2YgdGhlIGV4aXN0aW5nIHVzZXIKICAgIC8vISBccGFyYW0gdXNlcm5hbWUgVGhlIG5ldyB1c2VyIG5hbWUKICAgIC8vISBccGFyYW0gZW1haWwgVGhlIG5ldyBlbWFpbCBhZGRyZXNzCiAgICAvLyEgXHBhcmFtIHBhc3N3b3JkIFRoZSBuZXcgKHVuZW5jcnlwdGVkKSBwYXNzd29yZAogICAgLy8hIFxwYXJhbSBleHBpcmVzIFRoZSBuZXcgZXhwaXJ5IGRhdGUKICAgIC8vISBccGFyYW0gc3RhdHVzIHRoZSBuZXcgc3RhdHVzCiAgICAvLyEgXHJldHVybiBBbiBhcnJheSwgdGhlIGZpcnN0IGVsZW1lbnQgaXMgYSBib29sZWFuIHdoaWNoIGluZGljYXRlcyBzdWNjZXNzIG9yIGZhaWx1cmUsIHRoZQogICAgLy8hICAgIHNlY29uZCBlbGVtZW50IChvcHRpb25hbCkgY29udGFpbnMgYW4gZXJyb3IgbWVzc2FnZSBpbiB0aGUgZXZlbnQgb2YgYW4gZXJyb3IuCiAgICAvLyEKICAgIHB1YmxpYyBmdW5jdGlvbiBTZXRVc2VyKCAkdWlkLCAkdXNlcm5hbWUsICRwYXNzd29yZCwgJGV4cGlyZXMgPSBmYWxzZSApCiAgICB7CiAgICAgICAgcmV0dXJuIGFycmF5KEZBTFNFLCJGdW5jdGlvbiBub3QgZGVmaW5lZCIpOwogICAgfQoKICAgIC8vISBTZXQgdGhlIHVzZXIncyBncm91cCBtZW1iZXJzaGlwcyBhYnNvbHV0ZWx5CiAgICAvLyEKICAgIC8vIVRoaXMgbWV0aG9kIHJlbW92ZXMgYWxsIHByZXZpb3VzIGdyb3VwIGFzc29jaWF0aW9ucywgYW5kIHNldHMgbmV3IG9uZXMKICAgIC8vIXRvIG1hdGNoIHRob3NlIGluIHRoZSBncnBpZHMgYXJyYXkuCiAgICAvLyEKICAgIC8vIVxwYXJhbSB1aWQgVGhlIHVzZXIgaWQgdG8gZWRpdAogICAgLy8hXHBhcmFtIGdycGlkcyBBbiBhcnJheSBvZiB1c2VyIGlkcyB0byBhc3NvY2lhdGUgd2l0aAogICAgLy8hXHJldHVybnMgdHJ1ZSBvbiBzdWNjZXNzLCBmYWxzZSBvdGhlcndpc2UKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIFNldFVzZXJHcm91cHMoICR1aWQsICRncnBpZHMgKQogICAgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gU2V0VXNlclBhc3N3b3JkKCAkdWlkLCAkcGFzc3dvcmQgKQogICAgewogICAgICAgIHJldHVybiBhcnJheShGQUxTRSwiRnVuY3Rpb24gbm90IGRlZmluZWQiKTsKICAgIH0KCiAgICAvLyEgU2V0IHRoZSB1c2VyJ3MgcHJvcGVydGllcyBhYnNvbHV0ZWx5LgogICAgLy8hCiAgICAvLyEgVGhpcyBtZXRob2QgZGVsZXRlcyBhbnkgZXhpc3RpbmcgdXNlciBwcm9wZXJ0aWVzIGFuZCBzZXRzIHRoZW0gYWNjb3JkaW5nIHRvIHRoZSBwcm9wZXJ0aWVzCiAgICAvLyEgc3VwcGxpZWQuCiAgICAvLyEKICAgIC8vISBccGFyYW0gdWlkIFRoZSB1c2VyIGlkIHRvIGJlIGVkaXRlZAogICAgLy8hIFxwYXJhbSBwcm9wcyBBbiBhcnJheSBvZiBLZXk9VmFsdWUgc3RyaW5ncyBjb25zaXN0aW5nIG9mIHRoZSB1c2VyIHByb3BlcnRpZXMuCiAgICAvLyEgXHJldHVybiB0cnVlIG9uIHN1Y2Nlc3MsIGZhbHNlIG90aGVyd2lzZQogICAgLy8hCiAgICBwdWJsaWMgZnVuY3Rpb24gU2V0VXNlclByb3BlcnRpZXMoICR1aWQsICRwcm9wcyApCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vISBTZXQgYSBwcm9wZXJ0eSBmb3IgdGhlIGN1cnJlbnQgdXNlcgogICAgLy8hCiAgICAvLyEgU2V0cyBhIHByb3BlcnR5IGZvciB0aGUgY3VycmVudGx5IGxvZ2dlZCBpbiB1c2VyCiAgICAvLyEKICAgIC8vISBccGFyYW0gdGl0bGUgVGhlIHByb3BlcnR5IG5hbWUKICAgIC8vISBccGFyYW0gZGF0YSAgVGhlIHByb3BlcnR5IHZhbHVlCiAgICAvLyEgXHJldHVybnMgdHJ1ZSBvbiBzdWNjZXNzLCBmYWxzZSBvdGhlcndpc2UKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIFNldFVzZXJQcm9wZXJ0eSgkdGl0bGUsJGRhdGEpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKCiAgICAvLyEgU2V0IGEgcHJvcGVydHkgZm9yIHRoZSBwcm92aWRlZCB1c2VyaWQKICAgIC8vIQogICAgLy8hIFNldHMgYSBwcm9wZXJ0eSBleGNsdXNpdmVseSBmb3IgYSBjZXJ0YWluIHVzZXIKICAgIC8vIQogICAgLy8hIFxwYXJhbSB0aXRsZSBUaGUgcHJvcGVydHkgbmFtZQogICAgLy8hIFxwYXJhbSBkYXRhICBUaGUgcHJvcGVydHkgdmFsdWUKICAgIC8vISBccGFyYW0gdXNlcmlkIFRoZSBkZXNpcmVkIHVzZXIgaWQKICAgIC8vIQogICAgcHVibGljIGZ1bmN0aW9uIFNldFVzZXJQcm9wZXJ0eUZ1bGwoJHRpdGxlLCRkYXRhLCR1c2VyaWQpCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBTZXRVc2VyVGVtcENvZGUoICR1aWQsICRjb2RlICkKICAgIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CgogICAgLy8hIFRlc3QgaWYgdGhlIHVzZXIgaWQgaXMgYWxyZWFkeSB0YWtlbgogICAgLy8hCiAgICAvLyEgVGVzdHMgaWYgYSB1c2VyIGJ5IHRoYXQgaWQgYWxyZWFkeSBleGlzdHMKICAgIC8vIQogICAgLy8hIFxwYXJhbSB1aWQgVGhlIHVzZXJpZCB0byB0ZXN0CiAgICAvLyEgXHJldHVybiBib29sZWFuCiAgICAvLyEKICAgIHB1YmxpYyBmdW5jdGlvbiBVc2VyRXhpc3RzQnlJRCggJHVpZCApCiAgICB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8vCiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgICAvLwoKfSAvLyBjbGFzcwo=]]></data>
	</file>
	<file>
	  <filename>/lib/class.user_edit_assistant.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCm5hbWVzcGFjZSBGcm9udEVuZFVzZXJzOwoKLy8gdGhpcyBjbGFzcyBhaWRzIGluIGFkZGluZyBvciBlZGl0aW5nIGEgdXNlcgovLyBpdCBlbmNhcHN1bGF0ZXMgdGhlIHJlYWQgb25seSB1c2VyIG9iamVjdC4KLy8gYW5kIHByb3ZpZGVzIGVkaXRpbmcgYW5kIHNhdmluZyBmdW5jdGlvbmFsaXR5LgpjbGFzcyB1c2VyX2VkaXRfYXNzaXN0YW50CnsKICAgIHByaXZhdGUgJF91c2VyOwogICAgcHJpdmF0ZSAkX25ld191aWQ7CiAgICBwcml2YXRlICRfbmV3X3VzZXJuYW1lOwogICAgcHJpdmF0ZSAkX25ld19wYXNzd29yZDsKICAgIHByaXZhdGUgJF9yZXBlYXRfcGFzc3dvcmQ7CiAgICBwcml2YXRlICRfZHJhZnRfZ3JvdXBzOwogICAgcHJpdmF0ZSAkX2RyYWZ0X3Byb3BzOwogICAgcHJpdmF0ZSAkX2V4cGlyZXM7CiAgICBwcml2YXRlICRfaXNfZGlzYWJsZWQ7CiAgICBwcml2YXRlICRfZm9yY2VfcGFzc3dvcmRfY2hhbmdlOwogICAgcHJpdmF0ZSAkX2ZvcmNlX2NoYW5nZV9zZXR0aW5nczsKICAgIHByaXZhdGUgJF9tdXN0X3ZhbGlkYXRlOwoKICAgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkdXNlcl9pZCkKICAgIHsKICAgICAgICAkbW9kID0gXGZldV91dGlsczo6Z2V0X21vZCgpOwogICAgICAgICR1c2VyX2lkID0gKGludCkgJHVzZXJfaWQ7CiAgICAgICAgaWYoICR1c2VyX2lkIDwgMSApIHsKICAgICAgICAgICAgLy8gYSBicmFuZCBuZXcgdXNlci4uLiBzZXQgc29tZSBkZWZhbHQgdmFsdWVzLgogICAgICAgICAgICAkdXNlciA9IG5ldyB1c2VyOwogICAgICAgICAgICBpZiggJG1vZC0+R2V0UHJlZmVyZW5jZSgndXNlX3JhbmRvbXVzZXJuYW1lJykgKSAkdGhpcy0+bmV3X3VzZXJuYW1lID0gJG1vZC0+R2VuZXJhdGVSYW5kb21Vc2VybmFtZSgpOwogICAgICAgICAgICAkZGZsdF9ncm91cCA9IChpbnQpICRtb2QtPkdldFByZWZlcmVuY2UoJ2RlZmF1bHRfZ3JvdXAnKTsKICAgICAgICAgICAgJG9uZV9ncm91cCA9IChib29sKSAkbW9kLT5HZXRQcmVmZXJlbmNlKCdyZXF1aXJlX29uZWdyb3VwJyk7CiAgICAgICAgICAgICRncm91cHMgPSAkbW9kLT5HZXRHcm91cExpc3QoKTsKICAgICAgICAgICAgaWYoICFjb3VudCgkZ3JvdXBzKSApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbignQ291bGQgbm90IGZpbmQgYW55IGdyb3Vwcy4uLiBjYW5ub3QgY3JlYXRlIHVzZXJzJyk7CiAgICAgICAgICAgICRncm91cHMgPSBhcnJheV9mbGlwKCRncm91cHMpOyAvLyBpdCdzIGJhY2t3YXJkcyBmb3IgaGlzdG9yaWNhbCByZWFzb25zLgogICAgICAgICAgICBpZiggJGRmbHRfZ3JvdXAgKSB7CiAgICAgICAgICAgICAgICBpZiggaXNzZXQoJGdyb3Vwc1skZGZsdF9ncm91cF0pICkgJHRoaXMtPl9kcmFmdF9ncm91cHNbXSA9ICRkZmx0X2dyb3VwOwogICAgICAgICAgICB9IGVsc2UgaWYoICRvbmVfZ3JvdXAgKSB7CiAgICAgICAgICAgICAgICAka2V5cyA9IGFycmF5X2tleXMoJGdyb3Vwcyk7CiAgICAgICAgICAgICAgICAkdGhpcy0+X2RyYWZ0X2dyb3Vwc1tdID0gJGtleXNbMF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJHRtcCA9IChpbnQpICRtb2QtPkdldFByZWZlcmVuY2UoJ2V4cGlyZWFnZV9tb250aHMnLDUyMCk7CiAgICAgICAgICAgICR0aGlzLT5fZXhwaXJlcyA9IHN0cnRvdGltZSgiK3skdG1wfSBtb250aHMiKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAkdXNlciA9IHVzZXI6OmxvYWQoJHVzZXJfaWQpOwogICAgICAgICAgICAkdGhpcy0+X2RyYWZ0X2dyb3VwcyA9ICR1c2VyLT5nZXRfZ3JvdXBzKCk7CiAgICAgICAgICAgICR0aGlzLT5fZXhwaXJlcyA9ICR1c2VyLT5leHBpcmVzX3RzOwogICAgICAgIH0KICAgICAgICAkdGhpcy0+X2RyYWZ0X3Byb3BzID0gJHVzZXItPmdldF9wcm9wZXJ0aWVzKCk7CiAgICAgICAgJHRoaXMtPl91c2VyID0gJHVzZXI7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIF9fZ2V0KCRrZXkpCiAgICB7CiAgICAgICAgc3dpdGNoKCAka2V5ICkgewogICAgICAgIGNhc2UgJ2lkJzoKICAgICAgICAgICAgaWYoIGlzX251bGwoJHRoaXMtPl9uZXdfdWlkKSApIHJldHVybiAkdGhpcy0+X3VzZXItPmlkOwogICAgICAgICAgICByZXR1cm4gJHRoaXMtPl9uZXdfdWlkOwoKICAgICAgICBjYXNlICduZXdfdXNlcm5hbWUnOgogICAgICAgICAgICBpZiggISR0aGlzLT5fbmV3X3VzZXJuYW1lICkgcmV0dXJuICR0aGlzLT5fdXNlci0+dXNlcm5hbWU7CiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+X25ld191c2VybmFtZTsKCiAgICAgICAgY2FzZSAnbmV3X3Bhc3N3b3JkJzoKICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5fbmV3X3Bhc3N3b3JkOwoKICAgICAgICBjYXNlICdyZXBlYXRfcGFzc3dvcmQnOgogICAgICAgICAgICByZXR1cm4gJHRoaXMtPl9yZXBlYXRfcGFzc3dvcmQ7CgogICAgICAgIGNhc2UgJ2V4cGlyZXMnOgogICAgICAgICAgICByZXR1cm4gJHRoaXMtPl9leHBpcmVzOwoKICAgICAgICBjYXNlICdmb3JjZV9wYXNzd29yZF9jaGFuZ2UnOgogICAgICAgICAgICBpZiggaXNfbnVsbCgkdGhpcy0+X2ZvcmNlX3Bhc3N3b3JkX2NoYW5nZSkgKSByZXR1cm4gJHRoaXMtPl91c2VyLT5mb3JjZV9uZXdwdzsKICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5fZm9yY2VfcGFzc3dvcmRfY2hhbmdlOwoKICAgICAgICBjYXNlICdmb3JjZV9jaGFuZ2Vfc2V0dGluZ3MnOgogICAgICAgICAgICBpZiggaXNfbnVsbCgkdGhpcy0+X2ZvcmNlX2NoYW5nZV9zZXR0aW5ncykgKSByZXR1cm4gJHRoaXMtPl91c2VyLT5mb3JjZV9jaHNldHRpbmdzOwogICAgICAgICAgICByZXR1cm4gJHRoaXMtPl9mb3JjZV9jaGFuZ2Vfc2V0dGluZ3M7CgogICAgICAgIGNhc2UgJ211c3RfdmFsaWRhdGUnOgogICAgICAgICAgICBpZiggaXNfbnVsbCgkdGhpcy0+X211c3RfdmFsaWRhdGUpICkgcmV0dXJuICR0aGlzLT5fdXNlci0+bXVzdF92YWxpZGF0ZTsKICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5fbXVzdF92YWxpZGF0ZTsKCiAgICAgICAgY2FzZSAnaXNfZGlzYWJsZWQnOgogICAgICAgICAgICBpZiggaXNfbnVsbCgkdGhpcy0+X2lzX2Rpc2FibGVkKSApIHJldHVybiAkdGhpcy0+X3VzZXItPmRpc2FibGVkOwogICAgICAgICAgICByZXR1cm4gJHRoaXMtPl9pc19kaXNhYmxlZDsKCiAgICAgICAgY2FzZSAndmVyaWZ5Y29kZSc6CiAgICAgICAgICAgIC8vIGdldHRhYmxlIG9ubHkKICAgICAgICAgICAgaWYoICR0aGlzLT5pZCA+IDEgKSByZXR1cm4gJGZldS0+R2V0VXNlclRlbXBDb2RlKCAkdGhpcy0+aWQgKTsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+X3VzZXItPl9fZ2V0KCRrZXkpOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gX19zZXQoJGtleSwkdmFsKQogICAgewogICAgICAgIHN3aXRjaCggJGtleSApIHsKICAgICAgICBjYXNlICduZXdfdXNlcm5hbWUnOgogICAgICAgICAgICAkdGhpcy0+X25ld191c2VybmFtZSA9IHRyaW0oJHZhbCk7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICduZXdfcGFzc3dvcmQnOgogICAgICAgICAgICAkdGhpcy0+X25ld19wYXNzd29yZCA9ICR2YWw7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdyZXBlYXRfcGFzc3dvcmQnOgogICAgICAgICAgICAkdGhpcy0+X3JlcGVhdF9wYXNzd29yZCA9ICR2YWw7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdleHBpcmVzJzoKICAgICAgICAgICAgJHRoaXMtPl9leHBpcmVzID0gKGludCkgJHZhbDsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgJ2lzX2Rpc2FibGVkJzoKICAgICAgICAgICAgJHRoaXMtPl9pc19kaXNhYmxlZCA9IChib29sKSAkdmFsOwogICAgICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSAnZm9yY2VfcGFzc3dvcmRfY2hhbmdlJzoKICAgICAgICAgICAgJHRoaXMtPl9mb3JjZV9wYXNzd29yZF9jaGFuZ2UgPSAoYm9vbCkgJHZhbDsKICAgICAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgJ2ZvcmNlX2NoYW5nZV9zZXR0aW5ncyc6CiAgICAgICAgICAgICR0aGlzLT5fZm9yY2VfY2hhbmdlX3NldHRpbmdzID0gKGJvb2wpICR2YWw7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlICdtdXN0X3ZhbGlkYXRlJzoKICAgICAgICAgICAgJHRoaXMtPl9tdXN0X3ZhbGlkYXRlID0gKGJvb2wpICR2YWw7CiAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAkdGhpcy0+X3VzZXItPl9fc2V0KCRrZXksJHZhbCk7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gdmFsaWRhdGUoKQogICAgewogICAgICAgICRtb2QgPSBcZmV1X3V0aWxzOjpnZXRfbW9kKCk7CiAgICAgICAgaWYoICR0aGlzLT5fdXNlci0+aWQgPCAxICkgewogICAgICAgICAgICAvLyBuZXcgdXNlcgogICAgICAgICAgICAvLyBtdXN0IGhhdmUgYSB1c2VybmFtZSwgYW5kIGl0IG11c3QgYmUgdmFsaWQKICAgICAgICAgICAgaWYoICEkbW9kLT5Jc1ZhbGlkVXNlcm5hbWUoICR0aGlzLT5uZXdfdXNlcm5hbWUgKSApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkbW9kLT5MYW5nKCdlcnJvcl9pbnZhbGlkdXNlcm5hbWUnKSk7CiAgICAgICAgICAgICR0X3VpZCA9ICRtb2QtPkdldFVzZXJJRCgkdGhpcy0+bmV3X3VzZXJuYW1lKTsKICAgICAgICAgICAgaWYoICR0X3VpZCApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkbW9kLT5MYW5nKCdlcnJvcl91c2VybmFtZV9leGlzdHMnKSk7CgogICAgICAgICAgICAvLyBtdXN0IGhhdmUgYSBwYXNzd29yZCwgYW5kIGl0IG11c3QgYmUgdmFsaWQKICAgICAgICAgICAgaWYoICEkdGhpcy0+bmV3X3Bhc3N3b3JkICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCRtb2QtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXNzd29yZCcpKTsKICAgICAgICAgICAgaWYoICEkbW9kLT5pc1ZhbGlkUGFzc3dvcmQoJHRoaXMtPm5ld19wYXNzd29yZCkgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJG1vZC0+TGFuZygnZXJyb3JfaW52YWxpZHBhc3N3b3JkJykpOwoKICAgICAgICAgICAgLy8gcmVwZWF0IHBhc3N3b3JkIG11c3QgYmUgdmFsaWQuCiAgICAgICAgICAgIGlmKCAkdGhpcy0+bmV3X3Bhc3N3b3JkICE9ICR0aGlzLT5yZXBlYXRfcGFzc3dvcmQgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJG1vZC0+TGFuZygnZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCcpKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAvLyBlZGl0aW5nIGEgdXNlci4KICAgICAgICAgICAgLy8gaWYgd2UgaGF2ZSBhIHVzZXJuYW1lLCBpdCBtdXN0IGJlIHZhbGlkIChjaGFuZ2luZyB1c2VybmFtZSkKICAgICAgICAgICAgaWYoICR0aGlzLT5fbmV3X3VzZXJuYW1lICYmICEkbW9kLT5Jc1ZhbGlkVXNlcm5hbWUoJHRoaXMtPl9uZXdfdXNlcm5hbWUsIEZBTFNFKSApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkbW9kLT5MYW5nKCdlcnJvcl9pbnZhbGlkdXNlcm5hbWUnKSk7CiAgICAgICAgICAgICR0X3VpZCA9ICRtb2QtPkdldFVzZXJJRCgkdGhpcy0+bmV3X3VzZXJuYW1lKTsKICAgICAgICAgICAgaWYoICR0X3VpZCAmJiAkdF91aWQgIT0gJHRoaXMtPl91c2VyLT5pZCApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbigkbW9kLT5MYW5nKCdlcnJvcl91c2VybmFtZV9leGlzdHMnKSk7CgogICAgICAgICAgICAvLyBpZiB3ZSBoYXZlIGEgcGFzc3dvcmQsIGl0IG11c3QgYmUgdmFsaWQsIGFuZCByZXBlYXQgbXVzdCBtYXRjaAogICAgICAgICAgICBpZiggJHRoaXMtPm5ld19wYXNzd29yZCApIHsKICAgICAgICAgICAgICAgIGlmKCAhJG1vZC0+aXNWYWxpZFBhc3N3b3JkKCR0aGlzLT5uZXdfcGFzc3dvcmQpICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCRtb2QtPkxhbmcoJ2Vycm9yX2ludmFsaWRwYXNzd29yZCcpKTsKCiAgICAgICAgICAgICAgICAvLyByZXBlYXQgcGFzc3dvcmQgbXVzdCBiZSB2YWxpZC4KICAgICAgICAgICAgICAgIGlmKCAkdGhpcy0+bmV3X3Bhc3N3b3JkICE9ICR0aGlzLT5yZXBlYXRfcGFzc3dvcmQgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJG1vZC0+TGFuZygnZXJyb3JfcGFzc3dvcmRtaXNtYXRjaCcpKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgLy8gbmVlZCBhIHZhbGlkIGV4cGlyeSBkYXRlIHdoZW4gYWRkaW5nL2VkaXRpbmcgYSB1c2VyLgogICAgICAgIGlmKCAhJHRoaXMtPmV4cGlyZXMgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJG1vZC0+TGFuZygnZXJyb3JfaW52YWxpZGV4cGlyeWRhdGUnKSk7CgogICAgICAgIC8vIGlmIHJlcXVpcmUgbWVtYmVyc2hpcCBpbiBvbmUgZ3J1b3AsIG1ha2Ugc3VyZSB3ZSBoYXZlIG9uZS4KICAgICAgICBpZiggJG1vZC0+R2V0UHJlZmVyZW5jZSgncmVxdWlyZV9vbmVncm91cCcpICYmIGNvdW50KCR0aGlzLT5fZHJhZnRfZ3JvdXBzKSA8IDEgKSB0aHJvdyBuZXcgXFJ1bnRpbWVleGNlcHRpb24oJG1vZC0+TGFuZygnZXJyb3Jfb25lZ3JvdXByZXF1aXJlZCcpKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gc2V0X2dyb3VwcygkZ3JvdXBzID0gbnVsbCkKICAgIHsKICAgICAgICBpZiggaXNfbnVsbCgkZ3JvdXBzKSApIHsKICAgICAgICAgICAgJHRoaXMtPl9kcmFmdF9ncm91cHMgPSBbXTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiggIWlzX2FycmF5KCRncm91cHMpIHx8ICFjb3VudCgkZ3JvdXBzKSApIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJ0ludmFsaWQgZ3JvdXAgYXJyYXkgcGFzc2VkIHRvICcuX19NRVRIT0RfXyk7CiAgICAgICAgJHRtcCA9IGFycmF5KCk7CiAgICAgICAgZm9yZWFjaCggJGdyb3VwcyBhcyAkb25lICkgewogICAgICAgICAgICAkb25lID0gKGludCkgJG9uZTsKICAgICAgICAgICAgaWYoICRvbmUgPCAxICkgY29udGludWU7CiAgICAgICAgICAgIGlmKCAhaW5fYXJyYXkoJG9uZSwkdG1wKSApICR0bXBbXSA9ICRvbmU7CiAgICAgICAgfQogICAgICAgICR0bXAgPSBhcnJheV91bmlxdWUoJHRtcCk7CiAgICAgICAgJHRoaXMtPl9kcmFmdF9ncm91cHMgPSAkdG1wOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBtZW1iZXJvZigkZ2lkKQogICAgewogICAgICAgICRnaWQgPSAoaW50KSAkZ2lkOwogICAgICAgIGlmKCAkZ2lkIDwgMSApIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJ0ludmFsaWQgZ2lkIHBhc3NlZCB0byAnLl9fTUVUSE9EX18pOwogICAgICAgIHJldHVybiAoaXNfYXJyYXkoJHRoaXMtPl9kcmFmdF9ncm91cHMpICYmIGluX2FycmF5KCRnaWQsJHRoaXMtPl9kcmFmdF9ncm91cHMpKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2dyb3VwcygpCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5fZHJhZnRfZ3JvdXBzOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBzZXRfcHJvcGVydHkoJG5hbWUsJHZhbCkKICAgIHsKICAgICAgICAkbmFtZSA9IHRyaW0oJG5hbWUpOwogICAgICAgIGlmKCAhJG5hbWUgKSB0aHJvdyBuZXcgXExvZ2ljRXhjZXB0aW9uKCdJbnZhbGlkIG5hbWUgcGFzc2VkIHRvICcuX19NRVRIT0RfXyk7CiAgICAgICAgJHRoaXMtPl9kcmFmdF9wcm9wc1skbmFtZV0gPSAoc3RyaW5nKSAkdmFsOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfcHJvcGVydHkoJG5hbWUpCiAgICB7CiAgICAgICAgJG5hbWUgPSB0cmltKCRuYW1lKTsKICAgICAgICBpZiggISRuYW1lICkgdGhyb3cgbmV3IFxMb2dpY0V4Y2VwdGlvbignSW52YWxpZCBuYW1lIHBhc3NlZCB0byAnLl9fTUVUSE9EX18pOwogICAgICAgIGlmKCBpc3NldCgkdGhpcy0+X2RyYWZ0X3Byb3BzWyRuYW1lXSkgKSByZXR1cm4gJHRoaXMtPl9kcmFmdF9wcm9wc1skbmFtZV07CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIGVyYXNlX3Byb3BlcnR5KCRuYW1lKQogICAgewogICAgICAgICRuYW1lID0gdHJpbSgkbmFtZSk7CiAgICAgICAgaWYoICEkbmFtZSApIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJ0ludmFsaWQgbmFtZSBwYXNzZWQgdG8gJy5fX01FVEhPRF9fKTsKICAgICAgICBpZiggaXNzZXQoJHRoaXMtPl9kcmFmdF9wcm9wc1skbmFtZV0pICkgdW5zZXQoJHRoaXMtPl9kcmFmdF9wcm9wc1skbmFtZV0pOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBjYW5fdmFsaWRhdGUoKQogICAgewogICAgICAgIC8vIHRlc3QgaWYgdGhlcmUgaXMgZW5vdWdoIGluZm9ybWF0aW9uIGZvciB0aGlzIHVzZXIgdG8gYmUgYWJsZSB0byByZS12YWxpZGF0ZSBoaW1zZWxmCiAgICAgICAgaWYoICR0aGlzLT5pZCA8IDEgKSByZXR1cm4gRkFMU0U7CgogICAgICAgICRmZXUgPSBcZmV1X3V0aWxzOjpnZXRfbW9kKCk7CiAgICAgICAgaWYoICRmZXUtPkdldFByZWZlcmVuY2UoJ3VzZXJuYW1lX2lzX2VtYWlsJykgKSByZXR1cm4gVFJVRTsKCiAgICAgICAgJHByb3BzID0gXGZldV91dGlsczo6Z2V0X3Byb3BlcnRpZXNfZm9yX2dyb3VwcyggJHRoaXMtPmdldF9ncm91cHMoKSApOwogICAgICAgIGlmKCAhY291bnQoJHByb3BzKSApIHJldHVybiBGQUxTRTsKICAgICAgICAkYWxsZGVmbnMgPSAkZmV1LT5HZXRQcm9wZXJ0eURlZm5zKCk7CiAgICAgICAgJGZuZCA9IG51bGw7CiAgICAgICAgZm9yZWFjaCggJHByb3BzIGFzICRwcm9wICkgewogICAgICAgICAgICAkcHJvcF9uYW1lID0gJHByb3BbJ25hbWUnXTsKICAgICAgICAgICAgaWYoIGlzc2V0KCRhbGxkZWZuc1skcHJvcF9uYW1lXSkgJiYgJGFsbGRlZm5zWyRwcm9wX25hbWVdWyd0eXBlJ10gPT0gMiApIHsKICAgICAgICAgICAgICAgICR2YWwgPSAkdGhpcy0+Z2V0X3Byb3BlcnR5KCRwcm9wX25hbWUpOwogICAgICAgICAgICAgICAgaWYoICR2YWwgKSByZXR1cm4gVFJVRTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gRkFMU0U7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIHN0b3JlKCkKICAgIHsKICAgICAgICAka2V5ID0gbWQ1KF9fRklMRV9fKTsKICAgICAgICAkX1NFU1NJT05bJGtleV0gPSBzZXJpYWxpemUoJHRoaXMpOwogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gcmV0cmlldmUoKQogICAgewogICAgICAgICRrZXkgPSBtZDUoX19GSUxFX18pOwogICAgICAgIGlmKCAhaXNzZXQoJF9TRVNTSU9OWyRrZXldKSApIHJldHVybjsKICAgICAgICAkb2JqID0gdW5zZXJpYWxpemUoJF9TRVNTSU9OWyRrZXldKTsKICAgICAgICB1bnNldCgkX1NFU1NJT05bJGtleV0pOwogICAgICAgIHJldHVybiAkb2JqOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBzYXZlKCkKICAgIHsKICAgICAgICAkdWlkID0gJHRoaXMtPmlkOwogICAgICAgICRtb2QgPSBcZmV1X3V0aWxzOjpnZXRfbW9kKCk7CiAgICAgICAgaWYoICR1aWQgPCAxICkgewogICAgICAgICAgICAvLyBhZGRpbmcgYSBuZXcgdXNlcgogICAgICAgICAgICAkcmV0ID0gJG1vZC0+QWRkVXNlciggJHRoaXMtPm5ld191c2VybmFtZSwgJHRoaXMtPm5ld19wYXNzd29yZCwgJHRoaXMtPmV4cGlyZXMgKTsKICAgICAgICAgICAgaWYoICFpc19hcnJheSgkcmV0KSB8fCAkcmV0WzBdID09IEZBTFNFICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCAkcmV0WzFdICk7CiAgICAgICAgICAgICR1aWQgPSAkdGhpcy0+X25ld191aWQgPSAoaW50KSAkcmV0WzFdOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIC8vIHVwZGF0aW5nIGFuIGV4aXN0aW5nIHVzZXIKICAgICAgICAgICAgJHJlcyA9ICRtb2QtPlNldFVzZXIoICR1aWQsICR0aGlzLT5uZXdfdXNlcm5hbWUsICR0aGlzLT5uZXdfcGFzc3dvcmQsICR0aGlzLT5leHBpcmVzICk7CiAgICAgICAgICAgIGlmKCAhaXNfYXJyYXkoJHJlcykgfHwgJHJlc1swXSA9PSBGQUxTRSApIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbignRXJyb3Igc2V0dGluZyB1c2VyICcuJHJlc1sxXSk7CiAgICAgICAgfQoKICAgICAgICAkbW9kLT5TZXRVc2VyRGlzYWJsZWQoICR1aWQsICR0aGlzLT5pc19kaXNhYmxlZCApOwogICAgICAgICRtb2QtPkZvcmNlUGFzc3dvcmRDaGFuZ2UoICR1aWQsICR0aGlzLT5mb3JjZV9wYXNzd29yZF9jaGFuZ2UgKTsKICAgICAgICAkbW9kLT5Gb3JjZUNoYW5nZVNldHRpbmdzKCAkdWlkLCAkdGhpcy0+Zm9yY2VfY2hhbmdlX3NldHRpbmdzICk7CiAgICAgICAgJG1vZC0+Rm9yY2VWZXJpZnkoICR1aWQsICR0aGlzLT5tdXN0X3ZhbGlkYXRlICk7CgogICAgICAgIC8vIGRvIHRoaXMsIGp1c3QgaSBuIGNhc2UuCiAgICAgICAgJG1vZC0+UmVtb3ZlVXNlclRlbXBDb2RlKCAkdWlkICk7CgogICAgICAgIC8vIGFkZCB0aGUgdXNlciB0byBoaXMgZ3JvdXBzCiAgICAgICAgJHJldCA9ICRtb2QtPlNldFVzZXJHcm91cHMoICR1aWQsICR0aGlzLT5fZHJhZnRfZ3JvdXBzICk7CiAgICAgICAgaWYoICFpc19hcnJheSgkcmV0KSB8fCAkcmV0WzBdID09IEZBTFNFICkgdGhyb3cgbmV3IFxSdW50aW1lRXhjZXB0aW9uKCRtb2QtPkxhbmcoJ2Vycm9yX2NhbnRhc3NpZ251c2VyJykpOwoKICAgICAgICAvLyBhbmQgdGhlbiBhZGQgaGlzIHByb3BlcnRpZXMuCiAgICAgICAgJG1vZC0+U2V0RW5jcnlwdGlvbktleSgkdWlkKTsKCiAgICAgICAgLy8kbW9kLT5EZWxldGVVc2VyUHJvcGVydHlGdWxsKCAnJywgJHVpZCwgVFJVRSApOyAvLyBERUxFVEUgQUxMIFBST1BFUlRJRVMKICAgICAgICBpZiggY291bnQoJHRoaXMtPl9kcmFmdF9wcm9wcykgKSAgewogICAgICAgICAgICBmb3JlYWNoKCAkdGhpcy0+X2RyYWZ0X3Byb3BzIGFzICRwcm9wX25hbWUgPT4gJHZhbCApIHsKICAgICAgICAgICAgICAgICRyZXQgPSAkbW9kLT5TZXRVc2VyUHJvcGVydHlGdWxsKCAkcHJvcF9uYW1lLCAkdmFsLCAkdWlkICk7CiAgICAgICAgICAgICAgICBpZiggISRyZXQgKSB0aHJvdyBuZXcgXFJ1bnRpbWVFeGNlcHRpb24oJ0Vycm9yIFNldHRpbmcgcHJvcGVydHkgJy4kcHJvcF9uYW1lLicgdG8gJy4kdmFsLicgZm9yIHVzZXIgJy4kdWlkKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KfQ==]]></data>
	</file>
	<file>
	  <filename>/lib/class.verification_assistant.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKbmFtZXNwYWNlIEZyb250RW5kVXNlcnM7CgphYnN0cmFjdCBjbGFzcyB2ZXJpZmljYXRpb25fYXNzaXN0YW50CnsKICAgIHByaXZhdGUgJF91aWQ7CiAgICBwcml2YXRlICRfZGVzdHBhZ2U7CiAgICBwcml2YXRlICRfY29kZTsKCiAgICBwcml2YXRlIGZ1bmN0aW9uIGdlbmVyYXRlX2NvZGUoKQogICAgewogICAgICAgICRjb2RlID0gc3Vic3RyKHN0cnRvdXBwZXIobWQ1KF9fRklMRV9fLnNlc3Npb25faWQoKS5taWNyb3RpbWUoVFJVRSkpKSwwLDI1KTsKICAgICAgICAkZmV1ID0gXGZldV91dGlsczo6Z2V0X21vZCgpOwogICAgICAgICRmZXUtPlNldFVzZXJUZW1wQ29kZSgkdGhpcy0+X3VpZCwkY29kZSk7CiAgICAgICAgcmV0dXJuICRjb2RlOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gZ2VuZXJhdGVfZGVzdHBhZ2UoKQogICAgewogICAgICAgICRkZmx0ID0gXENvbnRlbnRPcGVyYXRpb25zOjpnZXRfaW5zdGFuY2UoKS0+R2V0RGVmYXVsdENvbnRlbnQoKTsKICAgICAgICAkcGFnZSA9IFxmZXVfdXRpbHM6OnJlc29sdmVfcHJlZnRwbF90b19wYWdlKCdwYWdlaWRfb252ZXJpZnknLCR0aGlzLT5fdWlkKTsKICAgICAgICBpZiggISRwYWdlICkgJHBhZ2UgPSAkZGZsdDsKICAgICAgICByZXR1cm4gJHBhZ2U7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCR1aWQsICRjb2RlID0gbnVsbCkKICAgIHsKICAgICAgICAkdWlkID0gKGludCkgJHVpZDsKICAgICAgICBpZiggJHVpZCA8IDEgKSB0aHJvdyBuZXcgXExvZ2ljRXhjZXB0aW9uKCdJbnZhbGlkIHVpZCBwYXNzZWQgdG8gJy5fX01FVEhPRF9fKTsKCiAgICAgICAgJGZldSA9IFxmZXVfdXRpbHM6OmdldF9tb2QoKTsKICAgICAgICAkdGhpcy0+X3VpZCA9ICR1aWQ7CiAgICAgICAgJHRoaXMtPl9jb2RlID0gJGNvZGU7CiAgICAgICAgaWYoICEkdGhpcy0+X2NvZGUgKSAkdGhpcy0+X2NvZGUgPSAkZmV1LT5HZXRVc2VyVGVtcENvZGUoJHVpZCk7CiAgICAgICAgaWYoICEkdGhpcy0+X2NvZGUgKSAkdGhpcy0+X2NvZGUgPSAkdGhpcy0+Z2VuZXJhdGVfY29kZSgpOwogICAgICAgICR0aGlzLT5fZGVzdHBhZ2UgPSAkdGhpcy0+Z2VuZXJhdGVfZGVzdHBhZ2UoKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X3VpZCgpCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5fdWlkOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfY29kZSgpCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5fY29kZTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2Rlc3RwYWdlKCkKICAgIHsKICAgICAgICByZXR1cm4gJHRoaXMtPl9kZXN0cGFnZTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gU2V0RGVzdFBhZ2UoJHN0cikKICAgIHsKICAgICAgICBpZiggJHN0ciApIHsKICAgICAgICAgICAgJGZldSA9IFxmZXVfdXRpbHM6OmdldF9tb2QoKTsKICAgICAgICAgICAgJHRoaXMtPl9kZXN0cGFnZSA9ICRmZXUtPnJlc29sdmVfYWxpYXNfb3JfaWQoJHN0ciwkdGhpcy0+X2Rlc3RwYWdlKTsKICAgICAgICB9CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIEdldFZlcmlmeUZvcm1VcmwoJHdpdGhjb2RlID0gdHJ1ZSkKICAgIHsKICAgICAgICAkY29kZSA9ICR0aGlzLT5fY29kZTsKICAgICAgICBpZiggISR3aXRoY29kZSApICRjb2RlID0gJ3h4eHgnOwogICAgICAgICRmZXUgPSBcZmV1X3V0aWxzOjpnZXRfbW9kKCk7CiAgICAgICAgJHVybCA9ICRmZXUtPmNyZWF0ZV91cmwoJ2NudG50MDEnLCd2ZXJpZnlvbmx5JywkdGhpcy0+X2Rlc3RwYWdlLFsgJ3VpZCc9PiR0aGlzLT5fdWlkLCAnY29kZSc9PiRjb2RlIF0gKTsKICAgICAgICByZXR1cm4gJHVybDsKICAgIH0KCiAgICBhYnN0cmFjdCBwdWJsaWMgZnVuY3Rpb24gc2VuZCgpOwp9]]></data>
	</file>
	<file>
	  <filename>/lib/interface.feu_auth_consumer.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgppbnRlcmZhY2UgZmV1X2F1dGhfY29uc3VtZXIKewogIGNvbnN0IENBUEFCSUxJVFlfQUxUTE9HSU4gPSAnQ0FQQUJJTElUWV9BTFRMT0dJTic7CiAgY29uc3QgQ0FQQUJJTElUWV9MT0dJTiA9ICdDQVBBQklMSVRZX0xPR0lOJzsKICBjb25zdCBDQVBBQklMSVRZX0xPR09VVCA9ICdDQVBBQklMSVRZX0xPR09VVCc7CiAgY29uc3QgQ0FQQUJJTElUWV9DSEFOR0VTRVRUSU5HUyA9ICdDQVBBQklMSVRZX0NIQU5HRVNFVFRJTkdTJzsKICBjb25zdCBDQVBBQklMSVRZX0xPU1RVU0VSTkFNRSA9ICdDQVBBQklMSVRZX0xPU1RVU0VSTkFNRSc7CiAgY29uc3QgQ0FQQUJJTElUWV9GT1JHT1RQQVNTV0QgPSAnQ0FQQUJJTElUWV9GT1JHT1RQQVNTV0QnOwogIGNvbnN0IENBUEFCSUxJVFlfVVNFU1REQ0hBTkdFU0VUVElOR1MgPSAnQ0FQQUJJTElUWV9VU0VTVERDSEFOR0VTRVRUSU5HUyc7CiAgY29uc3QgQ0FQQUJJTElUWV9VU0VTVERHUk9VUFMgPSAnQ0FQQUJJTElUWV9VU0VTVERHUk9VUFMnOwogIGNvbnN0IENBUEFCSUxJVFlfQ0hBTkdFUEFTU1dEID0gJ0NBUEFCSUxJVFlfQ0hBTkdFUEFTU1dEJzsKICBjb25zdCBDQVBBQklMSVRZX0NIQU5HRVVTRVJOQU1FID0gJ0NBUEFCSUxJVFlfQ0hBTkdFVVNFUk5BTUUnOwogIGNvbnN0IENBUEFCSUxJVFlfTElTVFBST1BTID0gJ0NBUEFCSUxJVFlfTElTVFBST1BTJzsKICBjb25zdCBDQVBBQklMSVRZX0VESVRQUk9QUyA9ICdDQVBBQklMSVRZX0VESVRQUk9QUyc7CiAgY29uc3QgQ0FQQUJJTElUWV9MSVNUR1JPVVBTID0gJ0NBUEFCSUxJVFlfTElTVEdST1VQUyc7CiAgY29uc3QgQ0FQQUJJTElUWV9FRElUR1JPVVBTID0gJ0NBUEFCSUxJVFlfRURJVEdST1VQUyc7CiAgY29uc3QgQ0FQQUJJTElUWV9FRElUR1JPVVBQUk9QUyA9ICdDQVBBQklMSVRZX0VESVRHUk9VUFBST1BTJzsKICBjb25zdCBDQVBBQklMSVRZX0dST1VQTUVNQkVSU0hJUCA9ICdDQVBBQklMSVRZX0dST1VQTUVNQkVSU0hJUCc7CiAgY29uc3QgQ0FQQUJJTElUWV9ERUZBVUxUR1JPVVBTID0gJ0NBUEFCSUxJVFlfREVGQVVMVEdST1VQUyc7CiAgY29uc3QgQ0FQQUJJTElUWV9VU0VSTkFNRSA9ICdDQVBBQklMSVRZX1VTRVJOQU1FJzsgLy8gcmV0cmlldmUgcmVhZGFibGUgdXNlcm5hbWUgZ2l2ZW4gYSB1bmlxdWUgaWRlbnRpZmllci4KCiAgY29uc3QgUFJPUEVSVFlfVVNFUk5BTUUgPSAnX19VU0VSTkFNRV9fJzsKICBjb25zdCBQUk9QRVJUWV9VSUQgICAgICA9ICdfX1VJRF9fJzsKCiAgLyoqCiAgICogUmV0dXJuIGEgZmxhZyBpZiB0aGUgdXNlciBpcyBhdXRoZW50aWNhdGVkLgogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBpc19hdXRoZW50aWNhdGVkKCk7CgogIC8qKgogICAqIFJldHVybiBhbiBhcnJheSB3aXRoIHRoaXMgYXV0aGVudGljYXRpb24gbWV0aG9kcyBjYXBhYmlsaXRpZXMKICAgKgogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBnZXRfY2FwYWJpbGl0aWVzKCk7CgogIC8qKgogICAqIFRlc3QgaWYgdGhlIGNvbnN1bWVyIGhhcyB0aGUgY2FwYWJpbGl0eQogICAqCiAgICogQWNjZXB0cyBhIHNpbmdsZSBjYXBhYmlsaXR5IGlkZW50aWZpZXIsIG9yIGxpc3Qgb2YgYXJndW1lbnQgY2FwYWJpbGl0aWVzLgogICAqIHJldHVybnMgVFJVRSBpZiBhbnkgb2YgdGhlIHBhc3NlZCBpbiBwcm9wZXJ0aWVzIG1hdGNoLgogICAqIHJldHVybnMgRkFMU0Ugb3RoZXJ3aXNlLgogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBoYXNfY2FwYWJpbGl0eSgpOwoKICAvKioKICAgKiBBIGZ1bmN0aW9uIHRvIGRpc3BsYXkgbG9naW4gaW5mb3JtYXRpbwogICAqIChvciBhIGxpbmsgdG8gYSBsb2dpbiBwYWdlKQogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBnZXRfbG9naW5fZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpOwoKICAvKioKICAgKiBBIGZ1bmN0aW9uIHRvIGRpc3BsYXkgbG9naW4gaW5mb3JtYXRpb24KICAgKiAob3IgYSBsaW5rIHRvIGEgbG9naW4gcGFnZSkKICAgKi8KICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2xvZ291dF9kaXNwbGF5KCRpZCwkcmV0dXJuaWQsJHBhcmFtcyk7CgogIC8qKgogICAqIEEgZnVuY3Rpb24gdG8gZGlzcGxheSB0aGUgY2hhbmdlIHNldHRpbmdzIHBhZ2UKICAgKgogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBnZXRfY2hhbmdlc2V0dGluZ3NfZGlzcGxheSgkaWQsJHJldHVybmlkLCRwYXJhbXMpOwoKCiAgLyoqCiAgICogR2V0IHRoZSB1c2VyIGluZm9ybWF0aW9uIGZyb20gdGhlIGV4dGVybmFsIGF1dGhlbnRpY2F0aW9uIHN5c3RlbQogICAqIGZvciB1c2UgYnkgRkVVIAogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdXNlcl9pbmZvKCk7CgoKICAvKioKICAgKiBHZXQgdGhlIG5hbWUgb2YgYW4gRkVVIHByb3BlcnR5IHRoYXQgaXMgdXNlZCB0byB1bmlxdWVseSBpZGVudGlmeQogICAqIGEgdXNlciAKICAgKi8KICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2Nvbm5lY3RpbmdfcHJvcGVydHlfbmFtZSgpOwoKCiAgLyoqCiAgICogR2V0IGFuIGlkZW50aWZpZXIgdGhhdCB1bmlxdWVseSBpZGVudGlmaWVzIGEgdXNlciBpbiB0aGlzIGVudmlyb25tZW50CiAgICovCiAgcHVibGljIGZ1bmN0aW9uIGdldF91bmlxdWVfaWRlbnRpZmllcigpOwoKICAvKioKICAgKiBHZXQgYSBsaXN0IG9mIGFsbCBncm91cHMKICAgKgogICAqIEByZXR1cm4gQXNzb2NpYXRpdmUgYXJyYXkgb2YgZ3JvdXBuYW1lcyBhbmQgZ3JvdXBpZCdzLgogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBnZXRfZ3JvdXBfbGlzdCgkd2l0aF9jb3VudCA9IEZBTFNFKTsKCiAgLyoqCiAgICogR2V0IHRoZSBsaXN0IG9mIGdyb3VwIChpZHMpIHRoYXQgYSB1c2VyIGlzIGEgbWVtYmVyIG9mLgogICAqCiAgICogQHBhcmFtIGludGVnZXIgVGhlIHVzZXIgaWQuICBNYXkgYmUgbmVnYXRpdmUgdG8gaW5kaWNhdGUgdGhhdCB0aGUgdXNlciBhY2NvdW50IGlzIHJlcHJlc2VudGluZyBhIG5ldyB1c2VyLgogICAqIEByZXR1cm4gbWl4ZWQgYXJyYXkgb2YgaW50ZWdlcnMsIG9yIG51bGwKICAgKi8KICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2dyb3VwX21lbWJlcnNoaXAoJHVzZXJpZCk7CgogIC8qKgogICAqIEdldCB0aGUgbGlzdCBvZiBncm91cCAoaWRzKSB0aGF0IGJ5IGRlZmF1bHQsIGEgbmV3IHVzZXIgc2hvdWxkIGJlbG9uZyB0by4KICAgKgogICAqIEByZXR1cm4gbWl4ZWQgYXJyYXkgb2YgaW50ZWdlcnMsIG9yIG51bGwuCiAgICovCiAgcHVibGljIGZ1bmN0aW9uIGdldF9kZWZhdWx0X2dyb3VwcygpOwoKICAvKioKICAgKiBHZXQgdGhlIHVzZXJuYW1lIHByb21wdAogICAqLwogIHB1YmxpYyBmdW5jdGlvbiBnZXRfdXNlcm5hbWVfcHJvbXB0KCk7CgogIC8qKgogICAqIFZhbGlkYXRlIHVzZXJuYW1lLgogICAqCiAgICogQHBhcmFtIHN0cmluZyB0aGUgcHJvcG9zZWQgdXNlZXJuYW1lIAogICAqIEBwYXJhbSBib29sZWFuIGluZGljYXRlcyB3ZXRoZXIgdGhlIHVzZXJuYW1lIHNob3VsZCBiZSB0cmVhdGVkIGFzIGFuIGVtYWlsIGFkZHJlc3MsIGFuZCB2YWxpZGF0ZWQKICAgKiBAcGFyYW0gaW50ZWdlciBUaGUgdXNlciBpZCAoaWYgaXRzIGFuIGV4aXN0aW5nIHVzZXIpLi4uIHRvIHVzZSBmb3IgY2hlY2tpbmcgZm9yIGR1cGxpY2F0ZSBhZGRyZXNzZXMKICAgKiBAcmV0dXJuIGJvb2xlYW4KICAgKi8KICBwdWJsaWMgZnVuY3Rpb24gdmFsaWRhdGVfdXNlcm5hbWUoJHVzZXJuYW1lLCRjaGVja19lbWFpbF9hZGRyID0gRkFMU0UsJHVpZCA9IC0xKTsKfQoKPz4=]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCmlmKCB2ZXJzaW9uX2NvbXBhcmUocGhwdmVyc2lvbigpLCc1LjQuMycpIDwgMCApIHsKICAgIHJldHVybiAiTWluaW11bSBQSFAgdmVyc2lvbiBvZiA1LjQuMyByZXF1aXJlZCI7Cn0KCiRsb2dfZXhjZXB0aW9uID0gZnVuY3Rpb24oXEV4Y2VwdGlvbiAkZSkgewogICAgJG91dCA9ICctLSBFWENFUFRJT04gRFVNUCAtLScuIlxuIjsKICAgICRvdXQgLj0gIlRZUEU6ICIuZ2V0X2NsYXNzKCRlKS4iXG4iOwogICAgJG91dCAuPSAiTUVTU0FHRTogIi4kZS0+Z2V0TWVzc2FnZSgpLiJcbiI7CiAgICAkb3V0IC49ICJGSUxFOiAiLiRlLT5nZXRGaWxlKCkuJzonLiRlLT5HZXRMaW5lKCkuIlxuIjsKICAgICRvdXQgLj0gIlRSRUFDRTpcbiI7CiAgICAkb3V0IC49ICRlLT5nZXRUcmFjZUFzU3RyaW5nKCk7CiAgICBkZWJ1Z190b19sb2coJG91dCwnLS0gJy5fX01FVEhPRF9fLicgLS0nKTsKfTsKCiRkYiA9ICR0aGlzLT5HZXREYigpOwokZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CgokdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdFTkdJTkU9SW5ub0RCJyk7CgovL1VzZXIgbGlzdAokZmxkcyA9ICIKICAgICAgICAgaWQgSSBLRVkgQVVUTyBOT1ROVUxMLAogICAgICAgICB1c2VybmFtZSBDKDgwKSBOT1ROVUxMLAogICAgICAgICBwYXNzd29yZCBDKDY0KSBOT1ROVUxMLAogICAgICAgICBjcmVhdGVkYXRlICIuQ01TX0FET0RCX0RULiIsCiAgICAgICAgIGV4cGlyZXMgICAgIi5DTVNfQURPREJfRFQuIiwKICAgICAgICAgbm9uc3RkICAgSTEsCiAgICAgICAgIGRpc2FibGVkIEkxLAogICAgICAgICBzYWx0ICAgICBDKDMyKSwKICAgICAgICAgZm9yY2VfbmV3cHcgSTEsCiAgICAgICAgIGZvcmNlX2Noc2V0dGluZ3MgSTEsCiAgICAgICAgIG11c3RfdmFsaWRhdGUgSTEKICAgICAgICAiOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc191c2VycyIsICRmbGRzLCAkdGFib3B0YXJyYXkgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CgovL0dyb3VwIGxpc3QKJGZsZHMgPSAiCgkgICAgIGlkIEkgS0VZIEFVVE8gTk9UTlVMTCwKCSAgICAgZ3JvdXBuYW1lIEMoMzIpIE5PVE5VTEwsCgkgICAgIGdyb3VwZGVzYyBDKDEyOCkKCSAgICAiOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19ncm91cHMiLCAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwoKLy8gbG9nZ2VkaW4KJGZsZHMgPSAiCgkgICAgIHNlc3Npb25pZCBDKDI1NSksCgkgICAgIGxhc3R1c2VkIEksCgkgICAgIHVzZXJpZCBJCgkgICAgIjsKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4iLCAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwoKLy9Db25uZWN0aW9ucyBiZXR3ZWVuIHVzZXJzIGFuZCBncm91cHMKJGZsZHMgPSAiCgkgICAgIHVzZXJpZCBJIEtFWSBOT1ROVUxMLAoJICAgICBncm91cGlkIEkgS0VZIE5PVE5VTEwKCSAgICAiOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIiwgJGZsZHMsICR0YWJvcHRhcnJheSApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCi8vcHJvcGVydHkgZGVmaW5pdGlvbgokZmxkcyA9ICIKICAgICAgICAgbmFtZSAgICAgIEMoNDApIEtFWSBOT1ROVUxMLAogICAgICAgICBwcm9tcHQgICAgQygyNTUpIE5PVE5VTEwsCiAgICAgICAgIHR5cGUgICAgICBDKDIwKSBOT1ROVUxMLAogICAgICAgICBsZW5ndGggICAgSSwKICAgICAgICAgbWF4bGVuZ3RoIEksCiAgICAgICAgIGF0dHJpYnMgICBDKDI1NSksCiAgICAgICAgIGZvcmNlX3VuaXF1ZSBJMSwKICAgICAgICAgZW5jcnlwdCAgIEkxLAogICAgICAgICBleHRyYSAgICAgWAogICAgICAgICI7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNxbChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BkZWZuIiwgJGZsZHMsICR0YWJvcHRhcnJheSApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKCi8vZHJvcGRvd24gc2VsZWN0IG9wdGlvbnMKJGZsZHMgPSAiCiAgICAgICAgIG9yZGVyX2lkCQlJIE5PVE5VTEwsCiAgICAgICAgIG9wdGlvbl9uYW1lCUMoNDApIE5PVE5VTEwsCiAgICAgICAgIG9wdGlvbl90ZXh0CUMoMjU1KSBOT1ROVUxMLAogICAgICAgICBjb250cm9sX25hbWUJQyg0MCkgTk9UTlVMTDsKICAgICAgICAiOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTcWwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19kcm9wZG93bnMiLCAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwoKLy8gZ3JvdXAgcHJvcGVydHkgbWFwCi8vIHVzZWQgdG8gYXNzb2NpYXRlIGEgcHJvcGVydHkgdG8gYSBncm91cAokZmxkcyA9ICIKICAgICAgICAgbmFtZSAgICBDKDQwKSBLRVkgTk9UTlVMTCwKICAgICAgICAgZ3JvdXBfaWQgSSBLRVkgTk9UTlVMTCwKICAgICAgICAgc29ydF9rZXkgSSBOT1ROVUxMLAogICAgICAgICByZXF1aXJlZCBJIE5PVE5VTEwsCiAgICAgICAgIGxvc3R1bmZsYWcgSQogICAgICAgICI7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNxbChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcCIsICRmbGRzLCAkdGFib3B0YXJyYXkgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CgovL3VzZXIgcHJvcGVydGllcwokZmxkcyA9ICIKCSAgICAgaWQgSSBLRVkgQVVUTyBOT1ROVUxMLAoJICAgICB1c2VyaWQgSSBOT1ROVUxMLAoJICAgICB0aXRsZSBDKDEwMCkgTk9UTlVMTCwKCSAgICAgZGF0YSBYMgoJICAgICI7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMiLCAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwovLyRkYi0+Q3JlYXRlU2VxdWVuY2UoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllc19zZXEiICk7CgovLyBmb3Jnb3R0ZW4gcGFzc3dvcmQgc3R1ZmYKJGZsZHMgPSAiCgkgICAgIHVzZXJpZCBJIEtFWSwKICAgICAgICAgY29kZSBDKDI1KSBOT1ROVUxMLAogICAgICAgICBjcmVhdGVkICIuQ01TX0FET0RCX0RUOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc190ZW1wY29kZSIsICRmbGRzLCAkdGFib3B0YXJyYXkgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CgovLyBsb2dpbiBoaXN0b3J5IHN0dWZmCiRmbGRzID0gIgogICAgICAgICB1c2VyaWQgSSBOT1ROVUxMLAoJICAgICBzZXNzaW9uaWQgQygzMikgTk9UTlVMTCwKICAgICAgICAgYWN0aW9uIEMoMjU1KSBOT1ROVUxMLAogICAgICAgICByZWZkYXRlICIuQ01TX0FET0RCX0RULiIsCiAgICAgICAgIGlwYWRkcmVzcyBDKDY0KSI7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2hpc3RvcnkiLCAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwoKLy8gaW5kZXhlcwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlSW5kZXhTUUwoY21zX2RiX3ByZWZpeCgpLidmZXVfaWR4X2JlbG9uZ3MnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfYmVsb25ncycsJ2dyb3VwaWQnKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlSW5kZXhTUUwoY21zX2RiX3ByZWZpeCgpLidmZXVfaWR4X3VzZXJuYW1lJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzJywndXNlcm5hbWUnKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlSW5kZXhTUUwoY21zX2RiX3ByZWZpeCgpLidmZXVfaWR4X2V4cGlyZXMnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMnLCdleHBpcmVzJyk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZUluZGV4U1FMKGNtc19kYl9wcmVmaXgoKS4nZmV1X2lkeF9yZWZkYXRlJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2hpc3RvcnknLCd1c2VyaWQscmVmZGF0ZSxhY3Rpb24nKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlSW5kZXhTUUwoY21zX2RiX3ByZWZpeCgpLidmZXVfaWR4X3Byb3B1c2VydGl0bGUnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcycsJ3VzZXJpZCx0aXRsZScpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTChjbXNfZGJfcHJlZml4KCkuJ2ZldV9pZHhfcHJvcHRpdGxlJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMnLCd0aXRsZScpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgovLyBzZXR1cCBmb3JlaWduIGtleSByZWxhdGlvbnNoaXBzCiRzcWwgPSAnQUxURVIgVEFCTEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgQUREIEZPUkVJR04gS0VZICh1c2VyaWQpIFJFRkVSRU5DRVMgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIChpZCknOwokZGItPkV4ZWN1dGUoJHNxbCk7CiRzcWwgPSAnQUxURVIgVEFCTEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2xvZ2dlZGluIEFERCBGT1JFSUdOIEtFWSAodXNlcmlkKSBSRUZFUkVOQ0VTICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyAoaWQpJzsKJGRiLT5FeGVjdXRlKCRzcWwpOwokc3FsID0gJ0FMVEVSIFRBQkxFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIEFERCBGT1JFSUdOIEtFWSAoZ3JvdXBpZCkgUkVGRVJFTkNFUyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBzIChpZCknOwokZGItPkV4ZWN1dGUoJHNxbCk7CiRzcWwgPSAnQUxURVIgVEFCTEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2Ryb3Bkb3ducyBBREQgRk9SRUlHTiBLRVkgKGNvbnRyb2xfbmFtZSkgUkVGRVJFTkNFUyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4gKG5hbWUpJzsKJGRiLT5FeGVjdXRlKCRzcWwpOwokc3FsID0gJ0FMVEVSIFRBQkxFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19ncm91cHByb3BtYXAgQUREIEZPUkVJR04gS0VZIChncm91cF9pZCkgUkVGRVJFTkNFUyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBzIChpZCknOwokZGItPkV4ZWN1dGUoJHNxbCk7CiRzcWwgPSAnQUxURVIgVEFCTEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcCBBREQgRk9SRUlHTiBLRVkgKG5hbWUpIFJFRkVSRU5DRVMgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BkZWZuIChuYW1lKSc7CiRkYi0+RXhlY3V0ZSgkc3FsKTsKJHNxbCA9ICdBTFRFUiBUQUJMRSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBBREQgRk9SRUlHTiBLRVkgKHVzZXJpZCkgUkVGRVJFTkNFUyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgKGlkKSc7CiRkYi0+RXhlY3V0ZSgkc3FsKTsKJHNxbCA9ICdBTFRFUiBUQUJMRSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBBREQgRk9SRUlHTiBLRVkgKHRpdGxlKSBSRUZFUkVOQ0VTICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZGVmbiAobmFtZSknOwokZGItPkV4ZWN1dGUoJHNxbCk7CiRzcWwgPSAnQUxURVIgVEFCTEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3RlbXBjb2RlIEFERCBGT1JFSUdOIEtFWSAodXNlcmlkKSBSRUZFUkVOQ0VTICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyAoaWQpJzsKJGRiLT5FeGVjdXRlKCRzcWwpOwokc3FsID0gJ0FMVEVSIFRBQkxFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IEFERCBGT1JFSUdOIEtFWSAodXNlcmlkKSBSRUZFUkVOQ0VTICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyAoaWQpJzsKJGRiLT5FeGVjdXRlKCRzcWwpOwoKJHVpZCA9IGdldF91c2VyaWQoKTsKJGxvZ2luX3RwbF90eXBlID0gJGxvZ291dF90cGxfdHlwZSA9ICRjaHNldHRpbmdzX3RwbF90eXBlID0gJGZvcmdvdHB3Zm9ybV90cGxfdHlwZSA9ICRmb3Jnb3Rwd3ZlcmlmeV90cGxfdHlwZSA9CiAgICAkZm9yY2VuZXdwd190cGxfdHlwZSA9ICRsb3N0dW5mb3JtX3RwbF90eXBlID0gJGxvc3R1bmNvbmZpcm1fdHBsX3R5cGUgPSAkdmlld3VzZXJfdHBsX3R5cGUgPSAkcmVzZXRzZXNzaW9uX3RwbF90eXBlID0gbnVsbDsKCiRtb2QgPSAkdGhpczsKJGNyZWF0ZV9kZmx0X3RlbXBsYXRlID0gZnVuY3Rpb24oJG5ld190eXBlKSB1c2UgKCYkbW9kLCYkX2ZpeF9uYW1lLCR1aWQpIHsKICAgIHRyeSB7CiAgICAgICAgJHByb3RvdHlwZSA9ICdGRVUgJy4kbmV3X3R5cGUtPmdldF9uYW1lKCk7CiAgICAgICAgJHRwbCA9IG5ldyBDbXNMYXlvdXRUZW1wbGF0ZTsKICAgICAgICAkdHBsLT5zZXRfbmFtZSgkdHBsOjpnZW5lcmF0ZV91bmlxdWVfbmFtZSgkcHJvdG90eXBlKSk7CiAgICAgICAgJHRwbC0+c2V0X293bmVyKCR1aWQpOwogICAgICAgICR0cGwtPnNldF90eXBlKCRuZXdfdHlwZSk7CiAgICAgICAgJHRwbC0+c2V0X2NvbnRlbnQoJG5ld190eXBlLT5nZXRfZGZsdF9jb250ZW50cygpKTsKICAgICAgICAkdHBsLT5zZXRfdHlwZV9kZmx0KFRSVUUpOyAvLyBGRVUgb25seSBoYWQgb25lIHRlbXBsYXRlIG9mIGVhY2ggdHlwZS4KICAgICAgICAkdHBsLT5zYXZlKCk7CiAgICB9CiAgICBjYXRjaCggXENtc0ludmFsaWREYXRhRXhjZXB0aW9uICRlICkgewogICAgICAgICRsb2dfZXhjZXB0aW9uKCRlKTsKICAgICAgICBhdWRpdCgnJywkbW9kLT5HZXROYW1lKCksJ1VwZ3JhZGUgUHJvYmxlbSAnLiRlLT5HZXRNZXNzYWdlKCkpOwogICAgfQp9OwoKdHJ5IHsKICAgICRsb2dpbl90cGxfdHlwZSA9IG5ldyBcQ21zTGF5b3V0VGVtcGxhdGVUeXBlKCk7CiAgICAkbG9naW5fdHBsX3R5cGUtPnNldF9vcmlnaW5hdG9yKCR0aGlzLT5HZXROYW1lKCkpOwogICAgJGxvZ2luX3RwbF90eXBlLT5zZXRfbmFtZSgnbG9naW4gZm9ybScpOwogICAgJGxvZ2luX3RwbF90eXBlLT5zZXRfZGZsdF9mbGFnKFRSVUUpOwogICAgJGxvZ2luX3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICRsb2dpbl90cGxfdHlwZS0+c2V0X2NvbnRlbnRfY2FsbGJhY2soJ0Zyb250RW5kVXNlcnM6OnJlc2V0X3BhZ2VfdHlwZV9kZWZhdWx0cycpOwogICAgJGxvZ2luX3RwbF90eXBlLT5yZXNldF9jb250ZW50X3RvX2ZhY3RvcnkoKTsKICAgICRsb2dpbl90cGxfdHlwZS0+c2F2ZSgpOwoKICAgICRsb2dvdXRfdHBsX3R5cGUgPSBuZXcgXENtc0xheW91dFRlbXBsYXRlVHlwZSgpOwogICAgJGxvZ291dF90cGxfdHlwZS0+c2V0X29yaWdpbmF0b3IoJHRoaXMtPkdldE5hbWUoKSk7CiAgICAkbG9nb3V0X3RwbF90eXBlLT5zZXRfbmFtZSgnbG9nb3V0IGZvcm0nKTsKICAgICRsb2dvdXRfdHBsX3R5cGUtPnNldF9kZmx0X2ZsYWcoVFJVRSk7CiAgICAkbG9nb3V0X3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICRsb2dvdXRfdHBsX3R5cGUtPnNldF9jb250ZW50X2NhbGxiYWNrKCdGcm9udEVuZFVzZXJzOjpyZXNldF9wYWdlX3R5cGVfZGVmYXVsdHMnKTsKICAgICRsb2dvdXRfdHBsX3R5cGUtPnJlc2V0X2NvbnRlbnRfdG9fZmFjdG9yeSgpOwogICAgJGxvZ291dF90cGxfdHlwZS0+c2F2ZSgpOwoKICAgICRjaHNldHRpbmdzX3RwbF90eXBlID0gbmV3IFxDbXNMYXlvdXRUZW1wbGF0ZVR5cGUoKTsKICAgICRjaHNldHRpbmdzX3RwbF90eXBlLT5zZXRfb3JpZ2luYXRvcigkdGhpcy0+R2V0TmFtZSgpKTsKICAgICRjaHNldHRpbmdzX3RwbF90eXBlLT5zZXRfbmFtZSgnY2hzZXR0aW5ncyBmb3JtJyk7CiAgICAkY2hzZXR0aW5nc190cGxfdHlwZS0+c2V0X2RmbHRfZmxhZyhUUlVFKTsKICAgICRjaHNldHRpbmdzX3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICRjaHNldHRpbmdzX3RwbF90eXBlLT5zZXRfY29udGVudF9jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzJyk7CiAgICAkY2hzZXR0aW5nc190cGxfdHlwZS0+cmVzZXRfY29udGVudF90b19mYWN0b3J5KCk7CiAgICAkY2hzZXR0aW5nc190cGxfdHlwZS0+c2F2ZSgpOwoKICAgICRmb3Jnb3Rwd2Zvcm1fdHBsX3R5cGUgPSBuZXcgXENtc0xheW91dFRlbXBsYXRlVHlwZSgpOwogICAgJGZvcmdvdHB3Zm9ybV90cGxfdHlwZS0+c2V0X29yaWdpbmF0b3IoJHRoaXMtPkdldE5hbWUoKSk7CiAgICAkZm9yZ290cHdmb3JtX3RwbF90eXBlLT5zZXRfbmFtZSgnZm9yZ290IHBhc3N3b3JkIGZvcm0nKTsKICAgICRmb3Jnb3Rwd2Zvcm1fdHBsX3R5cGUtPnNldF9kZmx0X2ZsYWcoVFJVRSk7CiAgICAkZm9yZ290cHdmb3JtX3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICRmb3Jnb3Rwd2Zvcm1fdHBsX3R5cGUtPnNldF9jb250ZW50X2NhbGxiYWNrKCdGcm9udEVuZFVzZXJzOjpyZXNldF9wYWdlX3R5cGVfZGVmYXVsdHMnKTsKICAgICRmb3Jnb3Rwd2Zvcm1fdHBsX3R5cGUtPnJlc2V0X2NvbnRlbnRfdG9fZmFjdG9yeSgpOwogICAgJGZvcmdvdHB3Zm9ybV90cGxfdHlwZS0+c2F2ZSgpOwoKICAgICRmb3Jnb3Rwd2VtYWlsX3RwbF90eXBlID0gbmV3IFxDbXNMYXlvdXRUZW1wbGF0ZVR5cGUoKTsKICAgICRmb3Jnb3Rwd2VtYWlsX3RwbF90eXBlLT5zZXRfb3JpZ2luYXRvcigkdGhpcy0+R2V0TmFtZSgpKTsKICAgICRmb3Jnb3Rwd2VtYWlsX3RwbF90eXBlLT5zZXRfbmFtZSgnZm9yZ290IHBhc3N3b3JkIGVtYWlsJyk7CiAgICAkZm9yZ290cHdlbWFpbF90cGxfdHlwZS0+c2V0X2RmbHRfZmxhZyhUUlVFKTsKICAgICRmb3Jnb3Rwd2VtYWlsX3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICRmb3Jnb3Rwd2VtYWlsX3RwbF90eXBlLT5zZXRfY29udGVudF9jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzJyk7CiAgICAkZm9yZ290cHdlbWFpbF90cGxfdHlwZS0+cmVzZXRfY29udGVudF90b19mYWN0b3J5KCk7CiAgICAkZm9yZ290cHdlbWFpbF90cGxfdHlwZS0+c2F2ZSgpOwoKICAgICRmb3Jnb3Rwd3ZlcmlmeV90cGxfdHlwZSA9IG5ldyBcQ21zTGF5b3V0VGVtcGxhdGVUeXBlKCk7CiAgICAkZm9yZ290cHd2ZXJpZnlfdHBsX3R5cGUtPnNldF9vcmlnaW5hdG9yKCR0aGlzLT5HZXROYW1lKCkpOwogICAgJGZvcmdvdHB3dmVyaWZ5X3RwbF90eXBlLT5zZXRfbmFtZSgnZm9yZ290IHBhc3N3b3JkIHZlcmlmeScpOwogICAgJGZvcmdvdHB3dmVyaWZ5X3RwbF90eXBlLT5zZXRfZGZsdF9mbGFnKFRSVUUpOwogICAgJGZvcmdvdHB3dmVyaWZ5X3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICRmb3Jnb3Rwd3ZlcmlmeV90cGxfdHlwZS0+c2V0X2NvbnRlbnRfY2FsbGJhY2soJ0Zyb250RW5kVXNlcnM6OnJlc2V0X3BhZ2VfdHlwZV9kZWZhdWx0cycpOwogICAgJGZvcmdvdHB3dmVyaWZ5X3RwbF90eXBlLT5yZXNldF9jb250ZW50X3RvX2ZhY3RvcnkoKTsKICAgICRmb3Jnb3Rwd3ZlcmlmeV90cGxfdHlwZS0+c2F2ZSgpOwoKICAgICRmb3JjZW5ld3B3X3RwbF90eXBlID0gbmV3IFxDbXNMYXlvdXRUZW1wbGF0ZVR5cGUoKTsKICAgICRmb3JjZW5ld3B3X3RwbF90eXBlLT5zZXRfb3JpZ2luYXRvcigkdGhpcy0+R2V0TmFtZSgpKTsKICAgICRmb3JjZW5ld3B3X3RwbF90eXBlLT5zZXRfbmFtZSgnZm9yY2UgbmV3IHBhc3N3b3JkJyk7CiAgICAkZm9yY2VuZXdwd190cGxfdHlwZS0+c2V0X2RmbHRfZmxhZyhUUlVFKTsKICAgICRmb3JjZW5ld3B3X3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICRmb3JjZW5ld3B3X3RwbF90eXBlLT5zZXRfY29udGVudF9jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzJyk7CiAgICAkZm9yY2VuZXdwd190cGxfdHlwZS0+cmVzZXRfY29udGVudF90b19mYWN0b3J5KCk7CiAgICAkZm9yY2VuZXdwd190cGxfdHlwZS0+c2F2ZSgpOwoKICAgICRsb3N0dW5mb3JtX3RwbF90eXBlID0gbmV3IFxDbXNMYXlvdXRUZW1wbGF0ZVR5cGUoKTsKICAgICRsb3N0dW5mb3JtX3RwbF90eXBlLT5zZXRfb3JpZ2luYXRvcigkdGhpcy0+R2V0TmFtZSgpKTsKICAgICRsb3N0dW5mb3JtX3RwbF90eXBlLT5zZXRfbmFtZSgnbG9zdCB1c2VybmFtZSBmb3JtJyk7CiAgICAkbG9zdHVuZm9ybV90cGxfdHlwZS0+c2V0X2RmbHRfZmxhZyhUUlVFKTsKICAgICRsb3N0dW5mb3JtX3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICRsb3N0dW5mb3JtX3RwbF90eXBlLT5zZXRfY29udGVudF9jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzJyk7CiAgICAkbG9zdHVuZm9ybV90cGxfdHlwZS0+cmVzZXRfY29udGVudF90b19mYWN0b3J5KCk7CiAgICAkbG9zdHVuZm9ybV90cGxfdHlwZS0+c2F2ZSgpOwoKICAgICRsb3N0dW5jb25maXJtX3RwbF90eXBlID0gbmV3IFxDbXNMYXlvdXRUZW1wbGF0ZVR5cGUoKTsKICAgICRsb3N0dW5jb25maXJtX3RwbF90eXBlLT5zZXRfb3JpZ2luYXRvcigkdGhpcy0+R2V0TmFtZSgpKTsKICAgICRsb3N0dW5jb25maXJtX3RwbF90eXBlLT5zZXRfbmFtZSgnbG9zdCB1c2VybmFtZSBjb25maXJtJyk7CiAgICAkbG9zdHVuY29uZmlybV90cGxfdHlwZS0+c2V0X2RmbHRfZmxhZyhUUlVFKTsKICAgICRsb3N0dW5jb25maXJtX3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICRsb3N0dW5jb25maXJtX3RwbF90eXBlLT5zZXRfY29udGVudF9jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzJyk7CiAgICAkbG9zdHVuY29uZmlybV90cGxfdHlwZS0+cmVzZXRfY29udGVudF90b19mYWN0b3J5KCk7CiAgICAkbG9zdHVuY29uZmlybV90cGxfdHlwZS0+c2F2ZSgpOwoKICAgICR2aWV3dXNlcl90cGxfdHlwZSA9IG5ldyBcQ21zTGF5b3V0VGVtcGxhdGVUeXBlKCk7CiAgICAkdmlld3VzZXJfdHBsX3R5cGUtPnNldF9vcmlnaW5hdG9yKCR0aGlzLT5HZXROYW1lKCkpOwogICAgJHZpZXd1c2VyX3RwbF90eXBlLT5zZXRfbmFtZSgndmlldyB1c2VyJyk7CiAgICAkdmlld3VzZXJfdHBsX3R5cGUtPnNldF9kZmx0X2ZsYWcoVFJVRSk7CiAgICAkdmlld3VzZXJfdHBsX3R5cGUtPnNldF9sYW5nX2NhbGxiYWNrKCdGcm9udEVuZFVzZXJzOjpwYWdlX3R5cGVfbGFuZ19jYWxsYmFjaycpOwogICAgJHZpZXd1c2VyX3RwbF90eXBlLT5zZXRfY29udGVudF9jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzJyk7CiAgICAkdmlld3VzZXJfdHBsX3R5cGUtPnJlc2V0X2NvbnRlbnRfdG9fZmFjdG9yeSgpOwogICAgJHZpZXd1c2VyX3RwbF90eXBlLT5zYXZlKCk7CgogICAgJHJlc2V0c2Vzc2lvbl90cGxfdHlwZSA9IG5ldyBcQ21zTGF5b3V0VGVtcGxhdGVUeXBlKCk7CiAgICAkcmVzZXRzZXNzaW9uX3RwbF90eXBlLT5zZXRfb3JpZ2luYXRvcigkdGhpcy0+R2V0TmFtZSgpKTsKICAgICRyZXNldHNlc3Npb25fdHBsX3R5cGUtPnNldF9uYW1lKCdyZXNldCBzZXNzaW9uJyk7CiAgICAkcmVzZXRzZXNzaW9uX3RwbF90eXBlLT5zZXRfZGZsdF9mbGFnKFRSVUUpOwogICAgJHJlc2V0c2Vzc2lvbl90cGxfdHlwZS0+c2V0X2xhbmdfY2FsbGJhY2soJ0Zyb250RW5kVXNlcnM6OnBhZ2VfdHlwZV9sYW5nX2NhbGxiYWNrJyk7CiAgICAkcmVzZXRzZXNzaW9uX3RwbF90eXBlLT5zZXRfY29udGVudF9jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzJyk7CiAgICAkcmVzZXRzZXNzaW9uX3RwbF90eXBlLT5yZXNldF9jb250ZW50X3RvX2ZhY3RvcnkoKTsKICAgICRyZXNldHNlc3Npb25fdHBsX3R5cGUtPnNhdmUoKTsKCiAgICAkdmVyaWZ5Zm9ybV90cGxfdHlwZSA9IG5ldyBcQ21zTGF5b3V0VGVtcGxhdGVUeXBlKCk7CiAgICAkdmVyaWZ5Zm9ybV90cGxfdHlwZS0+c2V0X29yaWdpbmF0b3IoJHRoaXMtPkdldE5hbWUoKSk7CiAgICAkdmVyaWZ5Zm9ybV90cGxfdHlwZS0+c2V0X25hbWUoJ3ZlcmlmeV9mb3JtJyk7CiAgICAkdmVyaWZ5Zm9ybV90cGxfdHlwZS0+c2V0X2RmbHRfZmxhZyhUUlVFKTsKICAgICR2ZXJpZnlmb3JtX3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICR2ZXJpZnlmb3JtX3RwbF90eXBlLT5zZXRfY29udGVudF9jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzJyk7CiAgICAkdmVyaWZ5Zm9ybV90cGxfdHlwZS0+cmVzZXRfY29udGVudF90b19mYWN0b3J5KCk7CiAgICAkdmVyaWZ5Zm9ybV90cGxfdHlwZS0+c2F2ZSgpOwp9CmNhdGNoKCBcQ21zU1FMRXJyb3JFeGNlcHRpb24gJGUgKSB7CiAgICAkbG9nX2V4Y2VwdGlvbigkZSk7CiAgICBhdWRpdCgnJywkdGhpcy0+R2V0TmFtZSgpLCdVcGdyYWRlIEVycm9yOiAnLiRlLT5HZXRNZXNzYWdlKCkpOwp9CmNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgJGxvZ19leGNlcHRpb24oJGUpOwogICAgYXVkaXQoJycsJHRoaXMtPkdldE5hbWUoKSwnVXBncmFkZSBFcnJvcjogJy4kZS0+R2V0TWVzc2FnZSgpKTsKICAgIHJldHVybiAnRVJST1I6ICcuJGUtPkdldE1lc3NhZ2UoKTsKfQoKLy8gbm93IGNyZWF0ZSB0aGUgdGVtcGxhdGVzIHRoZW1zZWx2ZXMuCiRjcmVhdGVfZGZsdF90ZW1wbGF0ZSgkbG9naW5fdHBsX3R5cGUpOwokY3JlYXRlX2RmbHRfdGVtcGxhdGUoJGxvZ291dF90cGxfdHlwZSk7CiRjcmVhdGVfZGZsdF90ZW1wbGF0ZSgkY2hzZXR0aW5nc190cGxfdHlwZSk7CiRjcmVhdGVfZGZsdF90ZW1wbGF0ZSgkZm9yZ290cHdmb3JtX3RwbF90eXBlKTsKJGNyZWF0ZV9kZmx0X3RlbXBsYXRlKCRmb3Jnb3Rwd2VtYWlsX3RwbF90eXBlKTsKJGNyZWF0ZV9kZmx0X3RlbXBsYXRlKCRmb3Jnb3Rwd3ZlcmlmeV90cGxfdHlwZSk7CiRjcmVhdGVfZGZsdF90ZW1wbGF0ZSgkZm9yY2VuZXdwd190cGxfdHlwZSk7CiRjcmVhdGVfZGZsdF90ZW1wbGF0ZSgkbG9zdHVuZm9ybV90cGxfdHlwZSk7CiRjcmVhdGVfZGZsdF90ZW1wbGF0ZSgkbG9zdHVuY29uZmlybV90cGxfdHlwZSk7CiRjcmVhdGVfZGZsdF90ZW1wbGF0ZSgkdmlld3VzZXJfdHBsX3R5cGUpOwokY3JlYXRlX2RmbHRfdGVtcGxhdGUoJHJlc2V0c2Vzc2lvbl90cGxfdHlwZSk7CiRjcmVhdGVfZGZsdF90ZW1wbGF0ZSgkdmVyaWZ5Zm9ybV90cGxfdHlwZSk7CgovLyBwcmVmZXJlbmNlcwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnbWluX3Bhc3N3b3JkbGVuZ3RoJywgNik7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdtYXhfcGFzc3dvcmRsZW5ndGgnLCAyMCk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdlbmhhbmNlZF9wYXNzd29yZCcsMSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwd3JlcXVpcmVkY2hhcnMnLCd+QCMkJV4mKj0rXy0oKS4sIScpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnbWluX3VzZXJuYW1lbGVuZ3RoJywgNCk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdtYXhfdXNlcm5hbWVsZW5ndGgnLCA0MCk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VyX3Nlc3Npb25fZXhwaXJlcycsIDE4MDApOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnY29va2llX2tlZXBhbGl2ZScsMCk7CiRzdHIgPSAneCcuc3Vic3RyKHN0cl9zaHVmZmxlKG1kNSh0aW1lKCkuJGNvbmZpZ1sncm9vdF91cmwnXS5fX0ZJTEVfXykpLDAsNyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdjb29raWVuYW1lJywkc3RyKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2RlZmF1bHRfZ3JvdXAnLCAtMSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdyZXF1aXJlZF9maWVsZF9tYXJrZXInLCAnKicpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncmVxdWlyZWRfZmllbGRfY29sb3InLCAnYmx1ZScpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgncmVxdWlyZV9vbmVncm91cCcsIDEpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnaGlkZGVuX2ZpZWxkX21hcmtlcicsICchJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdoaWRkZW5fZmllbGRfY29sb3InLCAnZ3JlZW4nKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9mb3Jnb3RwYXNzd2QnLCAnJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYWdlaWRfY2hhbmdlc2V0dGluZ3MnLCAnJyk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYWdlaWRfbG9naW4nLCcnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9sb2dvdXQnLCcnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9hZnRlcnZlcmlmeScsJycpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWxsb3dfZHVwbGljYXRlX2VtYWlscycsMCk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VybmFtZV9pc19lbWFpbCcsMSk7CiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwYXNzd29yZGZsZGxlbmd0aCcsIDIwKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ3VzZXJuYW1lZmxkbGVuZ3RoJywgNDApOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWxsb3dfcmVwZWF0ZWRfbG9naW5zJywwKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGgnLCdfZmV1c2VycycpOwokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWxsb3dlZF9pbWFnZV9leHRlbnNpb25zJywnLmdpZiwucG5nLC5qcGcnKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbl9zdWJqZWN0JywkdGhpcy0+TGFuZygnZmV1X2V2ZW50X25vdGlmaWNhdGlvbicpKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2V4cGlyZWFnZV9tb250aHMnLDYwKTsKCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCd1c2VfdXNlcnNhbHQnLDEpOwoKLy8gRXZlbnRzCiR0aGlzLT5DcmVhdGVFdmVudCggJ0FmdGVyTG9naW5BdXRoJyApOwokdGhpcy0+Q3JlYXRlRXZlbnQoICdCZWZvcmVMb2dpbicgKTsKJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25Mb2dpbicgKTsKJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25Mb2dpbkZhaWxlZCcgKTsKJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25Mb2dvdXQnICk7CiR0aGlzLT5DcmVhdGVFdmVudCggJ09uRXhwaXJlVXNlcicgKTsKJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25DcmVhdGVVc2VyJyApOwokdGhpcy0+Q3JlYXRlRXZlbnQoICdPbkRlbGV0ZVVzZXInICk7CiR0aGlzLT5DcmVhdGVFdmVudCggJ09uVXBkYXRlVXNlcicgKTsKJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25DcmVhdGVHcm91cCcgKTsKJHRoaXMtPkNyZWF0ZUV2ZW50KCAnT25VcGRhdGVHcm91cCcpOwokdGhpcy0+Q3JlYXRlRXZlbnQoICdPbkRlbGV0ZUdyb3VwJyApOwokdGhpcy0+Q3JlYXRlRXZlbnQoICdPblJlZnJlc2hVc2VyJyApOwoKLy8gcGVybWlzc2lvbnMKJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ01vZGlmeSBGcm9udEVuZFVzZXJQcm9wcycsJ01vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcycpOw==]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCgokZGIgPSAkdGhpcy0+R2V0RGIoKTsKJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSggJGRiICk7CiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfbG9nZ2VkaW4iICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19iZWxvbmdzIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2Ryb3Bkb3ducyIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcCIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3RlbXBjb2RlIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfaGlzdG9yeSIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZGVmbiIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcyIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgovLyB0ZW1wbGF0ZXMKJHRoaXMtPkRlbGV0ZVRlbXBsYXRlKCk7CgovLyBwcmVmZXJlbmNlcwokdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgpOwoKLy8gcGVybWlzc2lvbnMKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ01vZGlmeSBGcm9udEVuZFVzZXJQcm9wcycpOwoKLy8gRkVVc2Vycy1zcGVjaWZpYyBwZXJtaXNzaW9ucyAuLi4gbWF5IG9yIG1heSBub3QgZXhpc3QKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBBZGQgVXNlcnMnKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgVXNlcnMnKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBSZW1vdmUgVXNlcnMnKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBBZGQgR3JvdXBzJyk7CiR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdGRVUgTW9kaWZ5IEdyb3VwcycpOwokdGhpcy0+UmVtb3ZlUGVybWlzc2lvbignRkVVIE1vZGlmeSBHcm91cCBBc3NpZ25tZW50cycpOwokdGhpcy0+UmVtb3ZlUGVybWlzc2lvbignRkVVIFJlbW92ZSBHcm91cHMnKTsKJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ0ZFVSBNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnKTsKCi8vIEV2ZW50cwokdGhpcy0+UmVtb3ZlRXZlbnQoICdBZnRlckxvZ2luQXV0aCcgKTsKJHRoaXMtPlJlbW92ZUV2ZW50KCAnQmVmb3JlTG9naW4nICk7CiR0aGlzLT5SZW1vdmVFdmVudCggJ09uTG9naW4nICk7CiR0aGlzLT5SZW1vdmVFdmVudCggJ09uTG9naW4nICk7CiR0aGlzLT5SZW1vdmVFdmVudCggJ09uTG9naW5GYWlsZWQnICk7CiR0aGlzLT5SZW1vdmVFdmVudCggJ09uTG9nb3V0JyApOwokdGhpcy0+UmVtb3ZlRXZlbnQoICdPbkV4cGlyZVVzZXInICk7CiR0aGlzLT5SZW1vdmVFdmVudCggJ09uQ3JlYXRlVXNlcicgKTsKJHRoaXMtPlJlbW92ZUV2ZW50KCAnT25EZWxldGVVc2VyJyApOwokdGhpcy0+UmVtb3ZlRXZlbnQoICdPbkNyZWF0ZUdyb3VwJyApOwokdGhpcy0+UmVtb3ZlRXZlbnQoICdPbkRlbGV0ZUdyb3VwJyApOwokdGhpcy0+UmVtb3ZlRXZlbnQoICdPblVwZGF0ZVVzZXInICk7CgokdGhpcy0+UmVtb3ZlRXZlbnRIYW5kbGVyKCdDb3JlJywnQ29udGVudFBvc3RSZW5kZXInKTsKJHRoaXMtPlJlbW92ZUV2ZW50SGFuZGxlcignQ0dFY29tbWVyY2VCYXNlJywnT3JkZXJVcGRhdGVkJyk7CiR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0NHRWNvbW1lcmNlQmFzZScsJ09yZGVyRGVsZXRlZCcpOw==]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKI0JFR0lOX0xJQ0VOU0UKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEZyb250RW5kVXNlcnMgKGMpIDIwMDgtMjAxNCBieSBSb2JlcnQgQ2FtcGJlbGwKIyAgICAgICAgIChjYWxndXkxMDAwQGNtc21hZGVzaW1wbGUub3JnKQojICBBbiBhZGRvbiBtb2R1bGUgZm9yIENNUyBNYWRlIFNpbXBsZSB0byBhbGxvdyBtYW5hZ2VtZW50IG9mIGZyb250ZW5kCiMgIHVzZXJzLCBhbmQgdGhlaXIgbG9naW4gcHJvY2VzcyB3aXRoaW4gYSBDTVMgTWFkZSBTaW1wbGUgcG93ZXJlZAojICB3ZWJzaXRlLgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA1IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBWaXNpdCB0aGUgQ01TTVMgSG9tZXBhZ2UgYXQ6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KIwojIEhvd2V2ZXIsIGFzIGEgc3BlY2lhbCBleGNlcHRpb24gdG8gdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBkaXN0cmlidXRlZAojIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuICBZb3UgbWF5IG5vdCB1c2UgdGhpcyBzb2Z0d2FyZQojIGluIGFueSBOb24gR1BMIHZlcnNpb24gb2YgQ01TIE1hZGUgc2ltcGxlLCBvciBpbiBhbnkgdmVyc2lvbiBvZiBDTVMKIyBNYWRlIHNpbXBsZSB0aGF0IGRvZXMgbm90IGluZGljYXRlIGNsZWFybHkgYW5kIG9idmlvdXNseSBpbiBpdHMgYWRtaW4KIyBzZWN0aW9uIHRoYXQgdGhlIHNpdGUgd2FzIGJ1aWx0IHdpdGggQ01TIE1hZGUgc2ltcGxlLgojCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiMgRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgMDIxMTEtMTMwNyBVU0EKIyBPciByZWFkIGl0IG9ubGluZTogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KI0VORF9MSUNFTlNFCmlmKCAhaXNzZXQoJGdDbXMpICkgZXhpdDsKCmlmKCB2ZXJzaW9uX2NvbXBhcmUocGhwdmVyc2lvbigpLCc1LjQuMycpIDwgMCApIHsKICAgIHJldHVybiAiTWluaW11bSBQSFAgdmVyc2lvbiBvZiA1LjQuMyByZXF1aXJlZCI7Cn0KCiRkYiA9ICR0aGlzLT5HZXREYigpOwokZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CiR1aWQgPSBnZXRfdXNlcmlkKCk7CiRtb2QgPSAkdGhpczsKJGNyZWF0ZV9kZmx0X3RlbXBsYXRlID0gZnVuY3Rpb24oJG9sZF90cGxfbmFtZSwkbmV3X3R5cGUpIHVzZSAoJiRtb2QsJHVpZCkgewogICAgJGNvbnRlbnRzID0gJG1vZC0+R2V0VGVtcGxhdGUoJG9sZF90cGxfbmFtZSk7CiAgICBpZiggISRjb250ZW50cyApIHJldHVybjsKICAgICRwcm90b3R5cGUgPSAnRkVVICcuJG5ld190eXBlLT5nZXRfbmFtZSgpOwoKICAgIHRyeSB7CiAgICAgICAgJHRwbCA9IG5ldyBDbXNMYXlvdXRUZW1wbGF0ZSgpOwogICAgICAgICR0cGwtPnNldF9uYW1lKCR0cGw6OmdlbmVyYXRlX3VuaXF1ZV9uYW1lKCRwcm90b3R5cGUpKTsKICAgICAgICAkdHBsLT5zZXRfb3duZXIoJHVpZCk7CiAgICAgICAgJHRwbC0+c2V0X2NvbnRlbnQoJGNvbnRlbnRzKTsKICAgICAgICAkdHBsLT5zZXRfdHlwZSgkbmV3X3R5cGUpOwogICAgICAgICR0cGwtPnNldF90eXBlX2RmbHQoVFJVRSk7IC8vIEZFVSBvbmx5IGhhZCBvbmUgdGVtcGxhdGUgb2YgZWFjaCB0eXBlLgogICAgICAgICR0cGwtPnNhdmUoKTsKCiAgICAgICAgaWYoICRvbGRfdHBsX25hbWUgKSAkbW9kLT5EZWxldGVUZW1wbGF0ZSgkb2xkX3RwbF9uYW1lKTsKICAgIH0KICAgIGNhdGNoKCBcQ21zSW52YWxpZERhdGFFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgXGNnZV91dGlsczo6bG9nX2V4Y2VwdGlvbigkZSk7CiAgICAgICAgYXVkaXQoJycsJG1vZC0+R2V0TmFtZSgpLCdVcGdyYWRlIFByb2JsZW0gJy4kZS0+R2V0TWVzc2FnZSgpKTsKICAgIH0KfTsKCgpzd2l0Y2goICRvbGR2ZXJzaW9uICkgewpjYXNlICcwLjEuMCc6CmNhc2UgJzAuMS4xJzoKewogICAgLy8gcGVybWlzc2lvbnMKICAgICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdNb2RpZnkgRnJvbnRFbmRVc2VyUHJvcHMnLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ01vZGlmeSBGcm9udEVuZFVzZXIgUHJvcGVydGllcycpOwogICAgJHRoaXMtPlNldFRlbXBsYXRlKCdmZXVzZXJzX2ZvcmdvdHBhc3N3b3JkZm9ybScsICR0aGlzLT5kZmx0X2ZvcmdvdHBhc3N3b3JkdGVtcGxhdGUxKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGVtYWlsZm9ybScsICR0aGlzLT5kZmx0X2ZvcmdvdHBhc3N3b3JkdGVtcGxhdGUyKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZHZlcmlmeWZvcm0nLCAkdGhpcy0+ZGZsdF9mb3Jnb3RwYXNzd29yZHRlbXBsYXRlMyk7CgogICAgLy8gZm9yZ290dGVuIHBhc3N3b3JkIHN0dWZmCiAgICAkZmxkcyA9ICIKCSAgICAgICAgICAgICB1c2VyaWQgSSBLRVksCiAgICAgICAgICAgICAgICAgY29kZSBDKDI1KSwKICAgICAgICAgICAgICAgICBjcmVhdGVkICIuQ01TX0FET0RCX0RUOwogICAgJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwogICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdGVtcGNvZGUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRmbGRzLCAkdGFib3B0YXJyYXkgKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwogICAgLy8gbm90aWNlIG5vIGJyZWFrCn0KCmNhc2UgJzAuMS4yJzoKewogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9mb3Jnb3RwYXNzd2QnLCAnJyk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2NoYW5nZXNldHRpbmdzJywgJycpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9sb2dpbicsJycpOwogICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ3BhZ2VpZF9sb2dvdXQnLCcnKTsKICAgIC8vIG5vdGljZSBubyBicmVhawp9CgpjYXNlICcwLjEuMyc6CmNhc2UgJzAuMS40JzoKY2FzZSAnMC4xLjUnOgpjYXNlICcwLjEuNic6CnsKICAgIC8vZHJvcGRvd24gc2VsZWN0IG9wdGlvbnMKICAgICRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKICAgICR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7CiAgICAkZmxkcyA9ICIKCQkJIG9yZGVyX2lkCQlJLAoJCQkgb3B0aW9uX25hbWUJQyg0MCkgTk9UIE5VTEwsCgkJCSBvcHRpb25fdGV4dAlDKDgwKSBOT1QgTlVMTCwKCQkJIGNvbnRyb2xfbmFtZQlDKDQwKSBOT1QgTlVMTDsKCQkJIjsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNxbChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2Ryb3Bkb3ducyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZsZHMsICR0YWJvcHRhcnJheSApOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CgogICAgLy8gYW5kIGNsZWFudXAgcHJvcGVydHkgbmFtZXMKICAgICRxID0gJ3VwZGF0ZSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4gc2V0IG5hbWUgPSBsY2FzZShyZXBsYWNlKG5hbWUsIiAiLCJfIikpJzsKICAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHEgKTsKfSAvL2Nhc2UKCmNhc2UgJzAuMS43JzoKewogICAgJHNxbGFycmF5ID0gJGRpY3QtPkFkZGNvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BkZWZuIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1heGxlbmd0aCBJIik7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKfSAvLyBjYXNlCgpjYXNlICcxLjAuMCc6CnsKICAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhbGxvd19kdXBsaWNhdGVfZW1haWxzJywxKTsKfQoKY2FzZSAnMS4wLjEnOgp7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFzc3dvcmRmbGRsZW5ndGgnLCAyMCk7CiAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgndXNlcm5hbWVmbGRsZW5ndGgnLCAyMCk7Cn0KCmNhc2UgJzEuMC41JzoKY2FzZSAnMS4wLjYnOgp7CiAgICAvLyBFdmVudHMKICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uTG9naW4nICk7CiAgICAkdGhpcy0+Q3JlYXRlRXZlbnQoICdPbkxvZ291dCcgKTsKICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uRXhwaXJlVXNlcicgKTsKICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uQ3JlYXRlVXNlcicgKTsKICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uRGVsZXRlVXNlcicgKTsKICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uQ3JlYXRlR3JvdXAnICk7CiAgICAkdGhpcy0+Q3JlYXRlRXZlbnQoICdPbkRlbGV0ZUdyb3VwJyApOwoKICAgIC8vIFByZWZlcmVuY2VzCiAgICAkdGhpcy0+UmVtb3ZlUHJlZmVyZW5jZSgnYWxsb3dfcmVwZWF0ZWRfbG9naW5zJywxKTsKCiAgICAvLyBUYWJsZXMKICAgICRmbGRzID0gIgogICAgICAgICB1c2VyaWQgSSBLRVksCgkgICAgIHNlc3Npb25pZCBDKDMyKSwKICAgICAgICAgYWN0aW9uIEMoMzIpLAogICAgICAgICB3aGVuIERUCiAgICAgICAgIjsKICAgICR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7CiAgICAkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZmxkcywgJHRhYm9wdGFycmF5ICk7CiAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKfQoKICBjYXNlICcxLjEuMCc6CiAgICB7CiAgICAgICRzcWxhcnJheSA9ICRkaWN0LT5DaGFuZ2VUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2Ryb3Bkb3ducyIsCgkJCQkJIm9wdGlvbl90ZXh0IEMoMjU1KSBOT1QgTlVMTCIpOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKICAgIH0KCiAgY2FzZSAnMS4yLjEnOgogICAgewogICAgICAkdGhpcy0+Q3JlYXRlRXZlbnQoICdPblVwZGF0ZVVzZXInICk7CiAgICB9CgogIGNhc2UgJzEuMi4yJzoKICAgIHsKICAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLgoJCQkJICAgICAgICJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IiApOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgogICAgICAkdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwogICAgICAkZmxkcyA9ICIKICAgICAgICAgICAgIHVzZXJpZCBJLAoJICAgICBzZXNzaW9uaWQgQygzMiksCiAgICAgICAgICAgICBhY3Rpb24gQygzMiksCiAgICAgICAgICAgICByZWZkYXRlICIuQ01TX0FET0RCX0RULiIsCiAgICAgICAgICAgICBpcGFkZHJlc3MgQygyMCkiOwogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLgoJCQkJCSJtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IiwKCQkJCQkkZmxkcywgJHRhYm9wdGFycmF5ICk7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwogICAgfQoKCiAgY2FzZSAnMS4zJzoKICAgIHsKICAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkFkZGNvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcCIsCgkJCQkgICAgICAibG9zdHVuZmxhZyBJIik7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSk7CgogICAgICAkdGhpcy0+U2V0UHJlZmVyZW5jZSgncGFnZWlkX2FmdGVydmVyaWZ5JywnJyk7CiAgICB9CgogIGNhc2UgJzEuMy4xJzoKICAgIHsKICAgICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ25vdGlmaWNhdGlvbl9zdWJqZWN0JywkdGhpcy0+TGFuZygnZmV1X2V2ZW50X25vdGlmaWNhdGlvbicpKTsKICAgICAgJGZuID0gY21zX2pvaW5fcGF0aChfX0RJUl9fLCd0ZW1wbGF0ZXMnLCdvcmlnX25vdGlmaWNhdGlvbl90ZW1wbGF0ZS50cGwnKTsKICAgICAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApCgl7CgkgICR0ZW1wbGF0ZSA9IEBmaWxlX2dldF9jb250ZW50cygkZm4pOwoJICAkdGhpcy0+U2V0VGVtcGxhdGUoJ25vdGlmaWNhdGlvbl90ZW1wbGF0ZScsJHRlbXBsYXRlKTsKCX0KICAgIH0KCiAgY2FzZSAnMS4zLjInOgogICAgewogICAgICAkdG1wX25hbWUgPSBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXNfdG1wJzsKICAgICAgJHJlYWxfbmFtZSA9IGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyc7CgogICAgICAvLyAxIENyZWF0ZSB0ZW1wb3JhcnkgdGFibGUKICAgICAgLy91c2VyIHByb3BlcnRpZXMKICAgICAgJGZsZHMgPSAiCgkgICAgICBpZCBJIEtFWSwKICAJICAgICAgdXNlcmlkIEksCiAJICAgICAgdGl0bGUgQygxMDApLAoJICAgICAgZGF0YSBYMgoJICAgICI7CiAgICAgICR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7CiAgICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTCgkdG1wX25hbWUsJGZsZHMsJHRhYm9wdGFycmF5KTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSggJHNxbGFycmF5ICk7CgogICAgICAvLyAyLiAgQ29weSBhbGwgZGF0YSBmcm9tIGZldXNlcnNfcHJvcGVydGllcyB0byB0ZW1wb3JhcnkgdGFibGUKICAgICAgJHF1ZXJ5ID0gJ0lOU0VSVCBJTlRPICcuJHRtcF9uYW1lLicgKGlkLHVzZXJpZCx0aXRsZSxkYXRhKQogICAgICAgICAgICAgICAgICAgICAgU0VMRUNUIGlkLHVzZXJpZCx0aXRsZSxkYXRhIEZST00gJy4kcmVhbF9uYW1lOwogICAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKCiAgICAgIC8vIDMuICBEcm9wIGZldXNlcnNfcHJvcGVydGllcwogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMiICk7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiAgICAgIC8vIDQuICBSZW5hbWUgdGFibGUKICAgICAgJHNxbGFycmF5ID0gJGRpY3QtPlJlbmFtZVRhYmxlU1FMKCR0bXBfbmFtZSwkcmVhbF9uYW1lKTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgfQoKICBjYXNlICcxLjMuMyc6CiAgICAkZm4gPSBjbXNfam9pbl9wYXRoKF9fRElSX18sJ3RlbXBsYXRlcycsJ29yaWdfdmlld3VzZXJfdGVtcGxhdGUudHBsJyk7CiAgICBpZiggZmlsZV9leGlzdHMoICRmbiApICkKICAgICAgewoJJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkkdGhpcy0+U2V0VGVtcGxhdGUoJ2ZldXNlcnNfdmlld3VzZXInLCR0ZW1wbGF0ZSk7CiAgICAgIH0KCiAgY2FzZSAnMS40JzoKICBjYXNlICcxLjQuMSc6CiAgY2FzZSAnMS40LjInOgogIGNhc2UgJzEuNC4zJzoKICBjYXNlICcxLjQuNCc6CiAgY2FzZSAnMS41JzoKICAgIHsKICAgICAgJHNxbGFycmF5ID0gJGRpY3QtPkFsdGVyQ29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iLCAicHJvbXB0IEMoMjU1KSBOT1QgTlVMTCIpOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgICB9CgogIGNhc2UgJzEuNS4xJzoKICBjYXNlICcxLjUuMic6CiAgY2FzZSAnMS41LjMnOgogICAgewogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWx0ZXJDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19sb2dnZWRpbicsICJzZXNzaW9uaWQgQygyNTUpIik7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgIH0KCiAgY2FzZSAnMS41LjQnOgogICAgewogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkY29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iLAoJCQkJICAgICAgImF0dHJpYnMgQygyNTUpIik7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgIH0KCiAgY2FzZSAnMS42LjUnOgogIGNhc2UgJzEuNi42JzoKICBjYXNlICcxLjYuNyc6CiAgY2FzZSAnMS42LjgnOgogIGNhc2UgJzEuNi45JzoKICBjYXNlICcxLjYuMTAnOgogICAgewogICAgICAkdGhpcy0+QWRkRXZlbnRIYW5kbGVyKCAnQ29yZScsICdDb250ZW50UG9zdFJlbmRlcicsIGZhbHNlICk7CiAgICB9CgogIGNhc2UgJzEuNi4xMSc6CiAgY2FzZSAnMS42LjEyJzoKICBjYXNlICcxLjYuMTMnOgogIGNhc2UgJzEuNi4xNCc6CiAgY2FzZSAnMS42LjE1JzoKICBjYXNlICcxLjYuMTYnOgogICAgewogICAgICAkZm4gPSBjbXNfam9pbl9wYXRoKF9fRElSX18sJ3RlbXBsYXRlcycsJ29yaWdfcmVzZXRzZXNzaW9uX3RlbXBsYXRlLnRwbCcpOwogICAgICBpZiggZmlsZV9leGlzdHMoICRmbiApICkKCXsKCSAgJHRlbXBsYXRlID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRmbik7CgkgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZmV1c2Vyc19yZXNldHNlc3Npb24nLCR0ZW1wbGF0ZSk7Cgl9CiAgICB9CgogIGNhc2UgJzEuNy4xMSc6CiAgY2FzZSAnMS44JzoKICBjYXNlICcxLjguMSc6CiAgY2FzZSAnMS44LjInOgogIGNhc2UgJzEuOC4zJzoKICBjYXNlICcxLjguNSc6CiAgY2FzZSAnMS45JzoKICBjYXNlICcxLjkuMSc6CiAgY2FzZSAnMS45LjInOgogICAgewogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkY29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iLAoJCQkJICAgICAgImZvcmNlX3VuaXF1ZSBJMSIpOwogICAgICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiAgICB9CgogIGNhc2UgJzEuMTAnOgogIGNhc2UgJzEuMTAuMSc6CiAgY2FzZSAnMS4xMC4yJzoKICBjYXNlICcxLjEwLjMnOgogICAgewogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkY29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iLAoJCQkJICAgICAgImVuY3J5cHQgSTEiKTsKICAgICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgfQoKICBjYXNlICcxLjExJzoKICBjYXNlICcxLjExLjEnOgogIGNhc2UgJzEuMTInOgogIGNhc2UgJzEuMTIuMSc6CiAgY2FzZSAnMS4xMi4yJzoKICAgIHsKICAgICAgJHRoaXMtPlJlbW92ZUV2ZW50SGFuZGxlcignQ0dFY29tbWVyY2VCYXNlJywnT3JkZXJVcGRhdGVkJyk7CiAgICAgICR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0NHRWNvbW1lcmNlQmFzZScsJ09yZGVyRGVsZXRlZCcpOwogICAgICAkdGhpcy0+UmVtb3ZlRXZlbnRIYW5kbGVyKCdDb3JlJywnTW9kdWxlSW5zdGFsbGVkJyk7CiAgICAgICR0aGlzLT5SZW1vdmVFdmVudEhhbmRsZXIoJ0NvcmUnLCdNb2R1bGVVbmluc3RhbGxlZCcpOwogICAgfQoKICBjYXNlICcxLjEyLjMnOgogIGNhc2UgJzEuMTIuNCc6CiAgY2FzZSAnMS4xMi41JzoKICBjYXNlICcxLjEyLjYnOgogIGNhc2UgJzEuMTIuNyc6CiAgY2FzZSAnMS4xMi44JzoKICBjYXNlICcxLjEyLjknOgogIGNhc2UgJzEuMTIuMTAnOgogIGNhc2UgJzEuMTIuMTEnOgogIGNhc2UgJzEuMTIuMTInOgogIGNhc2UgJzEuMTIuMTMnOgogICAgewogICAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkY29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4iLCJlbmNyeXB0IEkxIik7CiAgICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgIH0KCiAgY2FzZSAnMS4xMi4xNCc6CiAgY2FzZSAnMS4xMi4xNSc6CiAgY2FzZSAnMS4xMi4xNic6CiAgY2FzZSAnMS4xMi4xNyc6CiAgICB7CiAgICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uUmVmcmVzaFVzZXInICk7CiAgICB9CiAgfSAvLyBzd2l0Y2gKCmlmKCB2ZXJzaW9uX2NvbXBhcmUoJG9sZHZlcnNpb24sJzEuMTYuMicpIDwgMCApCiAgewogICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZUluZGV4U1FMKCdpZHhfdXNlcm5hbWUnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMnLCd1c2VybmFtZScpOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICAgJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZUluZGV4U1FMKCdpZHhfZXhwaXJlcycsY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycycsJ2V4cGlyZXMnKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKICAgICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTCgnaWR4X3JlZmRhdGUnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfaGlzdG9yeScsJ3VzZXJpZCxyZWZkYXRlLGFjdGlvbicpOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogIH0KaWYoIHZlcnNpb25fY29tcGFyZSgkb2xkdmVyc2lvbiwnMS4xOS4xJykgPCAwICkgewogICRzcWxhcnJheSA9ICRkaWN0LT5BZGRjb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZGVmbiIsImV4dHJhIFgiKTsKICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCAkc3FsYXJyYXkgKTsKfQppZiggdmVyc2lvbl9jb21wYXJlKCRvbGR2ZXJzaW9uLCcxLjIxJykgPCAwICkgewogICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTChjbXNfZGJfcHJlZml4KCkuJ2ZldV9pZHhfdXNlcm5hbWUnLGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfYmVsb25ncycsJ2dyb3VwaWQnKTsKICAkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cn0KaWYoIHZlcnNpb25fY29tcGFyZSgkb2xkdmVyc2lvbiwnMS4yMS43JykgPCAwICkgewogICRzcWxhcnJheSA9ICRkaWN0LT5BZGRDb2x1bW5TUUwoY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycycsJ25vbnN0ZCBJMScpOwogICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKfQppZiggdmVyc2lvbl9jb21wYXJlKCRvbGR2ZXJzaW9uLCcxLjIxLjE2JykgPCAwICkgewogICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTChjbXNfZGJfcHJlZml4KCkuJ2ZldV9pZHhfcHJvcHVzZXJ0aXRsZScsY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzJywndXNlcmlkLHRpdGxlJyk7CiAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwogICRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVJbmRleFNRTChjbXNfZGJfcHJlZml4KCkuJ2ZldV9pZHhfcHJvcHRpdGxlJyxjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMnLCd0aXRsZScpOwogICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKfQoKaWYoIHZlcnNpb25fY29tcGFyZSgkb2xkdmVyc2lvbiwnMS4yMy41JykgPCAwICkgewogICAgJHRoaXMtPlJlbW92ZUV2ZW50SGFuZGxlcignQ29yZScsJ0NvbnRlbnRQb3N0UmVuZGVyJyk7Cn0KCmlmKCB2ZXJzaW9uX2NvbXBhcmUoJG9sZHZlcnNpb24sJzEuMjgnKSA8IDAgKSB7CiAgICAkc3FsYXJyYXkgPSAkZGljdC0+QWRkY29sdW1uU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnMiLCJkaXNhYmxlZCBJMSwgc2FsdCBDKDMyKSwgZm9yY2VfbmV3cHcgSTEiKTsKICAgICRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoICRzcWxhcnJheSApOwoKICAgICR0cGwgPSBmaWxlX2dldF9jb250ZW50cyhfX0RJUl9fLicvdGVtcGxhdGVzL29yaWdfZm9yY2VfbmV3cHdfZm9ybS50cGwnKTsKICAgICR0aGlzLT5TZXRUZW1wbGF0ZSgnZm9yY2VfbmV3cHdfdGVtcGxhdGUnLCR0cGwpOwp9CgppZiggdmVyc2lvbl9jb21wYXJlKCRvbGR2ZXJzaW9uLCcxLjMwJykgPCAwICkgewogICAgLy8gZ29ubmEgdXNlIGlubm9kYiBub3cuCiAgICAkZGIgPSBcY2dlX3V0aWxzOjpnZXRfZGIoKTsKICAgIHRyeSB7CiAgICAgICAgJHRhYmxlcyA9IGFycmF5KCk7ICAvLyBpZ25vcmUgc2VxIHRhYmxlcwogICAgICAgICR0YWJsZXNbXSA9IGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMnOwogICAgICAgICR0YWJsZXNbXSA9IGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBzJzsKICAgICAgICAkdGFibGVzW10gPSBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2xvZ2dlZGluJzsKICAgICAgICAkdGFibGVzW10gPSBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MnOwogICAgICAgICR0YWJsZXNbXSA9IGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4nOwogICAgICAgICR0YWJsZXNbXSA9IGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZHJvcGRvd25zJzsKICAgICAgICAkdGFibGVzW10gPSBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2dyb3VwcHJvcG1hcCc7CiAgICAgICAgJHRhYmxlc1tdID0gY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzJzsKICAgICAgICAkdGFibGVzW10gPSBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3RlbXBjb2RlJzsKICAgICAgICAkdGFibGVzW10gPSBjbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2hpc3RvcnknOwogICAgICAgICRzcWxfaSA9ICJBTFRFUiBUQUJMRSAlcyBFTkdJTkU9SW5ub0RCIjsKICAgICAgICBmb3JlYWNoKCAkdGFibGVzIGFzICRvbmUgKSB7CiAgICAgICAgICAgICRzcWwgPSBzcHJpbnRmKCRzcWxfaSwkb25lKTsKICAgICAgICAgICAgJGRiLT5FeGVjdXRlKCRzcWwpOwogICAgICAgIH0KCiAgICAgICAgLy8gYWx0ZXIgdGhlIGlwIGFkZHJlc3MgZmllbGQgaW4gdGhlIGhpc3RvcnkgdGFibGUgdG8gYmUgYSBiaXQgbG9uZ2VyCiAgICAgICAgJHNxbCA9ICdBTFRFUiBUQUJMRSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfaGlzdG9yeSBNT0RJRlkgaXBhZGRyZXNzIHZhcmNoYXIoNjQpJzsKICAgICAgICAkZGItPkV4ZWN1dGUoJHNxbCk7CgogICAgICAgICRkYi0+QmVnaW5UcmFucygpOwoKICAgICAgICAvLyBnZXQgYSBsaXN0IG9mIGFsbCBvZiB0aGUgdXNlciBpZHMgdGhhdCBhcmUgaW4gdGhpcyBoaXN0b3J5IHRhYmxlLCBidXQgbm90IGluIHRoZQogICAgICAgIC8vIHVzZXJzIHRhYmxlLgogICAgICAgICRxdWVyeSA9ICdTRUxFQ1QgQS51c2VyaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfaGlzdG9yeSBBCiAgICAgICAgICAgICAgICAgIExFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgQiBPTiBBLnVzZXJpZCA9IEIuaWQKICAgICAgICAgICAgICAgICAgV0hFUkUgQi5pZCBJUyBOVUxMJzsKICAgICAgICAkZGVsX3VzZXJpZHMgPSAkZGItPkdldENvbCgkcXVlcnkpOwogICAgICAgICRkZWxfdXNlcmlkcyA9IGFycmF5X3VuaXF1ZSgkZGVsX3VzZXJpZHMpOwogICAgICAgIGlmKCBjb3VudCgkZGVsX3VzZXJpZHMpICkgewogICAgICAgICAgICAkc3RyID0gaW1wbG9kZSgnLCcsJGRlbF91c2VyaWRzKTsKICAgICAgICAgICAgJHN0ciA9IHN0cl9yZXBsYWNlKCcsLCcsJywnLCRzdHIpOwogICAgICAgICAgICAkc3RyID0gdHJpbSgkc3RyLCcsJyk7CiAgICAgICAgICAgIGlmKCAkc3RyICkgewogICAgICAgICAgICAgICAgJHF1ZXJ5ID0gJ0RFTEVURSBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IFdIRVJFIHVzZXJpZCBJUyBOVUxMIE9SIHVzZXJpZCBJTiAoJy4kc3RyLicpJzsKICAgICAgICAgICAgICAgICRkYi0+RXhlY3V0ZSgkcXVlcnkpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAvLyBnZXQgYSBsaXN0IG9mIGFsbCBvZiB0aGUgcHJvcGVydGllcyB0aGF0IGFyZSBub3QgaW4gdGhlIHByb3BkZWZuIHRhYmxlIChjbGVhbiB1cCB0aGUgcHJvcGVydGllcyB0YWJsZSkKICAgICAgICAkcXVlcnkgPSAnU0VMRUNUIEEuaWQgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBBCiAgICAgICAgICAgICAgICAgIExFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4gQiBPTiBBLnRpdGxlID0gQi5uYW1lCiAgICAgICAgICAgICAgICAgIFdIRVJFIEIubmFtZSBJUyBOVUxMJzsKICAgICAgICAkZGVsX3Byb3BpZHMgPSAkZGItPkdldENvbCgkcXVlcnkpOwogICAgICAgIGlmKCBjb3VudCgkZGVsX3Byb3BpZHMpICkgewogICAgICAgICAgICAkc3RyID0gaW1wbG9kZSgnLCcsJGRlbF91c2VyaWRzKTsKICAgICAgICAgICAgaWYoICRzdHIgKSB7CiAgICAgICAgICAgICAgICAkcXVlcnkgPSAnREVMRVRFIEZST00gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgV0hFUkUgaWQgSU4gKCcuJHN0ci4nKSc7CiAgICAgICAgICAgICAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgLy8gZ2V0IGEgbGlzdCBvZiBhbGwgb2YgdGhlIHByb3BlcnRpZXMgdGhhdCBhcmUgbm90IGluIHRoZSBncm91cHByb3BtYXAgdGFibGUgKGNsZWFuIHVwIHRoZSBncm91cHByb3BtYXAgdGFibGUpCiAgICAgICAgJHF1ZXJ5ID0gJ1NFTEVDVCBBLm5hbWUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwICBBCiAgICAgICAgICAgICAgICAgIExFRlQgSk9JTiAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4gQiBPTiBBLm5hbWUgPSBCLm5hbWUKICAgICAgICAgICAgICAgICAgV0hFUkUgQi5uYW1lIElTIE5VTEwnOwogICAgICAgICRkZWxfZ3JwcHJvcCA9ICRkYi0+R2V0Q29sKCRxdWVyeSk7CiAgICAgICAgaWYoIGNvdW50KCRkZWxfZ3JwcHJvcCkgKSB7CiAgICAgICAgICAgICRxdWVyeSA9ICdERUxFVEUgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwIFdIRVJFIG5hbWUgPSA/JzsKICAgICAgICAgICAgZm9yKCAkaSA9IDAsICRuID0gY291bnQoJGRlbF9ncnBwcm9wKTsgJGkgPCAkbjsgJGkrKyApIHsKICAgICAgICAgICAgICAgICR0bXAxID0gJGRlbF9ncnBwcm9wWyRpXTsKICAgICAgICAgICAgICAgICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHRtcDEpKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgJGRiLT5Db21taXRUcmFucygpOwoKICAgICAgICAvLyBnZXQgcmlkIG9mIHRoZSB1c2VycyBzZXEgdGFibGUuCiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgJHZhbCA9ICRkYi0+R2VuSUQoIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnNfc2VxJyk7CiAgICAgICAgICAgICRxdWVyeSA9ICdBTFRFUiBUQUJMRSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgTU9ESUZZIENPTFVNTiBpZCBJTlQgTk9UIE5VTEwgQVVUT19JTkNSRU1FTlQnOwogICAgICAgICAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKICAgICAgICAgICAgJHF1ZXJ5ID0gJ0FMVEVSIFRBQkxFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyBBVVRPX0lOQ1JFTUVOVCA9ID8nOwogICAgICAgICAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCR2YWwpKTsKICAgICAgICAgICAgJGRiLT5Ecm9wU2VxdWVuY2UoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfdXNlcnNfc2VxIiApOwogICAgICAgIH0KICAgICAgICBjYXRjaCggXEV4Y2VwdGlvbiAkZSApIHsKICAgICAgICAgICAgLy8gc2lsZW50bHkgaWdub3JlLCBpbmNhc2UgdGhpcyBpcyBhbHJlYWR5IGRvbmUuCiAgICAgICAgfQoKICAgICAgICAvLyBnZXQgcmlkIG9mIHRoZSBncm91cHMgc2VxIHRhYmxlCiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgJHZhbCA9ICRkYi0+R2VuSUQoIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBzX3NlcScpOwogICAgICAgICAgICAkcXVlcnkgPSAnQUxURVIgVEFCTEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2dyb3VwcyBNT0RJRlkgQ09MVU1OIGlkIElOVCBOT1QgTlVMTCBBVVRPX0lOQ1JFTUVOVCc7CiAgICAgICAgICAgICRkYi0+RXhlY3V0ZSgkcXVlcnkpOwogICAgICAgICAgICAkcXVlcnkgPSAnQUxURVIgVEFCTEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2dyb3VwcyBBVVRPX0lOQ1JFTUVOVCA9ID8nOwogICAgICAgICAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5LGFycmF5KCR2YWwpKTsKICAgICAgICAgICAgJGRiLT5Ecm9wU2VxdWVuY2UoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2ZldXNlcnNfZ3JvdXBzX3NlcSIgKTsKICAgICAgICB9CiAgICAgICAgY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgICAgIC8vIHNpbGVudGx5IGlnbm9yZSwgaW5jYXNlIHRoaXMgaXMgYWxyZWFkeSBkb25lLgogICAgICAgIH0KCiAgICAgICAgLy8gZ2V0IHJpZCBvZiB0aGUgcHJvcGVydGllcyBzZXEgdGFibGUKICAgICAgICB0cnkgewogICAgICAgICAgICAkdmFsID0gJGRiLT5HZW5JRCggY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzX3NlcScpOwogICAgICAgICAgICAkcXVlcnkgPSAnQUxURVIgVEFCTEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgTU9ESUZZIENPTFVNTiBpZCBJTlQgTk9UIE5VTEwgQVVUT19JTkNSRU1FTlQnOwogICAgICAgICAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKICAgICAgICAgICAgJHF1ZXJ5ID0gJ0FMVEVSIFRBQkxFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIEFVVE9fSU5DUkVNRU5UID0gPyc7CiAgICAgICAgICAgICRkYi0+RXhlY3V0ZSgkcXVlcnksYXJyYXkoJHZhbCkpOwogICAgICAgICAgICAkZGItPkRyb3BTZXF1ZW5jZSggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzX3NlcSIgKTsKICAgICAgICAgICAgJHF1ZXJ5ID0gJ0FMVEVSIFRBQkxFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19wcm9wZXJ0aWVzIE1PRElGWSBDT0xVTU4gdXNlcmlkIElOVCBOT1QgTlVMTCc7CiAgICAgICAgICAgICRkYi0+RXhlY3V0ZSgkcXVlcnkpOwogICAgICAgICAgICAkcXVlcnkgPSAnQUxURVIgVEFCTEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgTU9ESUZZIENPTFVNTiB0aXRsZSB2YXJjaGFyKDEwMCkgTk9UIE5VTEwnOwogICAgICAgICAgICAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKICAgICAgICB9CiAgICAgICAgY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgICAgIC8vIHNpbGVudGx5IGlnbm9yZSwgaW5jYXNlIHRoaXMgaXMgYWxyZWFkeSBkb25lLgogICAgICAgIH0KCiAgICAgICAgLy8gc2V0dXAgZm9yZWlnbiBrZXkgcmVsYXRpb25zaGlwcwogICAgICAgICRzcWwgPSAnQUxURVIgVEFCTEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgQUREIEZPUkVJR04gS0VZICh1c2VyaWQpIFJFRkVSRU5DRVMgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIChpZCknOwogICAgICAgICRkYi0+RXhlY3V0ZSgkc3FsKTsKICAgICAgICAkc3FsID0gJ0FMVEVSIFRBQkxFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19sb2dnZWRpbiBBREQgRk9SRUlHTiBLRVkgKHVzZXJpZCkgUkVGRVJFTkNFUyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgKGlkKSc7CiAgICAgICAgJGRiLT5FeGVjdXRlKCRzcWwpOwogICAgICAgICRzcWwgPSAnQUxURVIgVEFCTEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2JlbG9uZ3MgQUREIEZPUkVJR04gS0VZIChncm91cGlkKSBSRUZFUkVOQ0VTICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19ncm91cHMgKGlkKSc7CiAgICAgICAgJGRiLT5FeGVjdXRlKCRzcWwpOwogICAgICAgICRzcWwgPSAnQUxURVIgVEFCTEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2Ryb3Bkb3ducyBBREQgRk9SRUlHTiBLRVkgKGNvbnRyb2xfbmFtZSkgUkVGRVJFTkNFUyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4gKG5hbWUpJzsKICAgICAgICAkZGItPkV4ZWN1dGUoJHNxbCk7CiAgICAgICAgJHNxbCA9ICdBTFRFUiBUQUJMRSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwIEFERCBGT1JFSUdOIEtFWSAoZ3JvdXBfaWQpIFJFRkVSRU5DRVMgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX2dyb3VwcyAoaWQpJzsKICAgICAgICAkZGItPkV4ZWN1dGUoJHNxbCk7CiAgICAgICAgJHNxbCA9ICdBTFRFUiBUQUJMRSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfZ3JvdXBwcm9wbWFwIEFERCBGT1JFSUdOIEtFWSAobmFtZSkgUkVGRVJFTkNFUyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4gKG5hbWUpJzsKICAgICAgICAkZGItPkV4ZWN1dGUoJHNxbCk7CiAgICAgICAgJHNxbCA9ICdBTFRFUiBUQUJMRSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGVydGllcyBBREQgRk9SRUlHTiBLRVkgKHVzZXJpZCkgUkVGRVJFTkNFUyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdXNlcnMgKGlkKSc7CiAgICAgICAgJGRiLT5FeGVjdXRlKCRzcWwpOwogICAgICAgICRzcWwgPSAnQUxURVIgVEFCTEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3Byb3BlcnRpZXMgQUREIEZPUkVJR04gS0VZICh0aXRsZSkgUkVGRVJFTkNFUyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfcHJvcGRlZm4gKG5hbWUpJzsKICAgICAgICAkZGItPkV4ZWN1dGUoJHNxbCk7CiAgICAgICAgJHNxbCA9ICdBTFRFUiBUQUJMRSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfdGVtcGNvZGUgQUREIEZPUkVJR04gS0VZICh1c2VyaWQpIFJFRkVSRU5DRVMgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9mZXVzZXJzX3VzZXJzIChpZCknOwogICAgICAgICRkYi0+RXhlY3V0ZSgkc3FsKTsKICAgICAgICAkc3FsID0gJ0FMVEVSIFRBQkxFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc19oaXN0b3J5IEFERCBGT1JFSUdOIEtFWSAodXNlcmlkKSBSRUZFUkVOQ0VTICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfZmV1c2Vyc191c2VycyAoaWQpJzsKICAgICAgICAkZGItPkV4ZWN1dGUoJHNxbCk7CgogICAgfQogICAgY2F0Y2goIFxFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgZGllKCRkYi0+c3FsLicgJy4kZGItPkVycm9yTXNnKCkpOwogICAgICAgIGRlYnVnX3RvX2xvZygkZGItPnNxbCk7CiAgICAgICAgZGVidWdfdG9fbG9nKCRlLT5HZXRNZXNzYWdlKCkpOwogICAgICAgIGF1ZGl0KCcnLCR0aGlzLT5HZXROYW1lKCksJ1VwZ3JhZGUgRmFpbGVkOiAnLiRlLT5HZXRNZXNzYWdlKCkpOwogICAgICAgIHJldHVybiAkZS0+R2V0TWVzc2FnZSgpOwogICAgfQp9CgppZiggdmVyc2lvbl9jb21wYXJlKCRvbGR2ZXJzaW9uLCcxLjMxJykgPCAwICkgewogICAgJGRiID0gXGNnZV91dGlsczo6Z2V0X2RiKCk7CgogICAgJHNxbGFycmF5ID0gJGRpY3QtPkFkZGNvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIiwiZm9yY2VfY2hzZXR0aW5ncyBJMSIpOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwp9CmlmKCB2ZXJzaW9uX2NvbXBhcmUoJG9sZHZlcnNpb24sJzEuMzEuMycpIDwgMCApIHsKICAgICRkYiA9IFxjZ2VfdXRpbHM6OmdldF9kYigpOwogICAgJGRiLT5FeGVjdXRlKCdBTFRFUiBUQUJMRSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2ZldXNlcnNfaGlzdG9yeSBNT0RJRlkgYWN0aW9uIHZhcmNoYXIoMjU1KScpOwp9CgppZiggdmVyc2lvbl9jb21wYXJlKCRvbGR2ZXJzaW9uLCcyLjAnKSA8IDAgKSB7CiAgICAkbG9naW5fdHBsX3R5cGUgPSAkbG9nb3V0X3RwbF90eXBlID0gJGNoc2V0dGluZ3NfdHBsX3R5cGUgPSAkZm9yZ290cHdmb3JtX3RwbF90eXBlID0gJGZvcmdvdHB3dmVyaWZ5X3RwbF90eXBlID0KICAgICAgICAkZm9yY2VuZXdwd190cGxfdHlwZSA9ICRsb3N0dW5mb3JtX3RwbF90eXBlID0gJGxvc3R1bmNvbmZpcm1fdHBsX3R5cGUgPSAkdmlld3VzZXJfdHBsX3R5cGUgPSAkcmVzZXRzZXNzaW9uX3RwbF90eXBlID0gbnVsbDsKCiAgICB0cnkgewogICAgICAgICRsb2dpbl90cGxfdHlwZSA9IG5ldyBcQ21zTGF5b3V0VGVtcGxhdGVUeXBlKCk7CiAgICAgICAgJGxvZ2luX3RwbF90eXBlLT5zZXRfb3JpZ2luYXRvcigkdGhpcy0+R2V0TmFtZSgpKTsKICAgICAgICAkbG9naW5fdHBsX3R5cGUtPnNldF9uYW1lKCdsb2dpbiBmb3JtJyk7CiAgICAgICAgJGxvZ2luX3RwbF90eXBlLT5zZXRfZGZsdF9mbGFnKFRSVUUpOwogICAgICAgICRsb2dpbl90cGxfdHlwZS0+c2V0X2xhbmdfY2FsbGJhY2soJ0Zyb250RW5kVXNlcnM6OnBhZ2VfdHlwZV9sYW5nX2NhbGxiYWNrJyk7CiAgICAgICAgJGxvZ2luX3RwbF90eXBlLT5zZXRfY29udGVudF9jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzJyk7CiAgICAgICAgJGxvZ2luX3RwbF90eXBlLT5yZXNldF9jb250ZW50X3RvX2ZhY3RvcnkoKTsKICAgICAgICAkbG9naW5fdHBsX3R5cGUtPnNhdmUoKTsKCiAgICAgICAgJGxvZ291dF90cGxfdHlwZSA9IG5ldyBcQ21zTGF5b3V0VGVtcGxhdGVUeXBlKCk7CiAgICAgICAgJGxvZ291dF90cGxfdHlwZS0+c2V0X29yaWdpbmF0b3IoJHRoaXMtPkdldE5hbWUoKSk7CiAgICAgICAgJGxvZ291dF90cGxfdHlwZS0+c2V0X25hbWUoJ2xvZ291dCBmb3JtJyk7CiAgICAgICAgJGxvZ291dF90cGxfdHlwZS0+c2V0X2RmbHRfZmxhZyhUUlVFKTsKICAgICAgICAkbG9nb3V0X3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICAgICAkbG9nb3V0X3RwbF90eXBlLT5zZXRfY29udGVudF9jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzJyk7CiAgICAgICAgJGxvZ291dF90cGxfdHlwZS0+cmVzZXRfY29udGVudF90b19mYWN0b3J5KCk7CiAgICAgICAgJGxvZ291dF90cGxfdHlwZS0+c2F2ZSgpOwoKICAgICAgICAkY2hzZXR0aW5nc190cGxfdHlwZSA9IG5ldyBcQ21zTGF5b3V0VGVtcGxhdGVUeXBlKCk7CiAgICAgICAgJGNoc2V0dGluZ3NfdHBsX3R5cGUtPnNldF9vcmlnaW5hdG9yKCR0aGlzLT5HZXROYW1lKCkpOwogICAgICAgICRjaHNldHRpbmdzX3RwbF90eXBlLT5zZXRfbmFtZSgnY2hzZXR0aW5ncyBmb3JtJyk7CiAgICAgICAgJGNoc2V0dGluZ3NfdHBsX3R5cGUtPnNldF9kZmx0X2ZsYWcoVFJVRSk7CiAgICAgICAgJGNoc2V0dGluZ3NfdHBsX3R5cGUtPnNldF9sYW5nX2NhbGxiYWNrKCdGcm9udEVuZFVzZXJzOjpwYWdlX3R5cGVfbGFuZ19jYWxsYmFjaycpOwogICAgICAgICRjaHNldHRpbmdzX3RwbF90eXBlLT5zZXRfY29udGVudF9jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzJyk7CiAgICAgICAgJGNoc2V0dGluZ3NfdHBsX3R5cGUtPnJlc2V0X2NvbnRlbnRfdG9fZmFjdG9yeSgpOwogICAgICAgICRjaHNldHRpbmdzX3RwbF90eXBlLT5zYXZlKCk7CgogICAgICAgICRmb3Jnb3Rwd2Zvcm1fdHBsX3R5cGUgPSBuZXcgXENtc0xheW91dFRlbXBsYXRlVHlwZSgpOwogICAgICAgICRmb3Jnb3Rwd2Zvcm1fdHBsX3R5cGUtPnNldF9vcmlnaW5hdG9yKCR0aGlzLT5HZXROYW1lKCkpOwogICAgICAgICRmb3Jnb3Rwd2Zvcm1fdHBsX3R5cGUtPnNldF9uYW1lKCdmb3Jnb3QgcGFzc3dvcmQgZm9ybScpOwogICAgICAgICRmb3Jnb3Rwd2Zvcm1fdHBsX3R5cGUtPnNldF9kZmx0X2ZsYWcoVFJVRSk7CiAgICAgICAgJGZvcmdvdHB3Zm9ybV90cGxfdHlwZS0+c2V0X2xhbmdfY2FsbGJhY2soJ0Zyb250RW5kVXNlcnM6OnBhZ2VfdHlwZV9sYW5nX2NhbGxiYWNrJyk7CiAgICAgICAgJGZvcmdvdHB3Zm9ybV90cGxfdHlwZS0+c2V0X2NvbnRlbnRfY2FsbGJhY2soJ0Zyb250RW5kVXNlcnM6OnJlc2V0X3BhZ2VfdHlwZV9kZWZhdWx0cycpOwogICAgICAgICRmb3Jnb3Rwd2Zvcm1fdHBsX3R5cGUtPnJlc2V0X2NvbnRlbnRfdG9fZmFjdG9yeSgpOwogICAgICAgICRmb3Jnb3Rwd2Zvcm1fdHBsX3R5cGUtPnNhdmUoKTsKCiAgICAgICAgJGZvcmdvdHB3ZW1haWxfdHBsX3R5cGUgPSBuZXcgXENtc0xheW91dFRlbXBsYXRlVHlwZSgpOwogICAgICAgICRmb3Jnb3Rwd2VtYWlsX3RwbF90eXBlLT5zZXRfb3JpZ2luYXRvcigkdGhpcy0+R2V0TmFtZSgpKTsKICAgICAgICAkZm9yZ290cHdlbWFpbF90cGxfdHlwZS0+c2V0X25hbWUoJ2ZvcmdvdCBwYXNzd29yZCBlbWFpbCcpOwogICAgICAgICRmb3Jnb3Rwd2VtYWlsX3RwbF90eXBlLT5zZXRfZGZsdF9mbGFnKFRSVUUpOwogICAgICAgICRmb3Jnb3Rwd2VtYWlsX3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICAgICAkZm9yZ290cHdlbWFpbF90cGxfdHlwZS0+c2V0X2NvbnRlbnRfY2FsbGJhY2soJ0Zyb250RW5kVXNlcnM6OnJlc2V0X3BhZ2VfdHlwZV9kZWZhdWx0cycpOwogICAgICAgICRmb3Jnb3Rwd2VtYWlsX3RwbF90eXBlLT5yZXNldF9jb250ZW50X3RvX2ZhY3RvcnkoKTsKICAgICAgICAkZm9yZ290cHdlbWFpbF90cGxfdHlwZS0+c2F2ZSgpOwoKICAgICAgICAkZm9yZ290cHd2ZXJpZnlfdHBsX3R5cGUgPSBuZXcgXENtc0xheW91dFRlbXBsYXRlVHlwZSgpOwogICAgICAgICRmb3Jnb3Rwd3ZlcmlmeV90cGxfdHlwZS0+c2V0X29yaWdpbmF0b3IoJHRoaXMtPkdldE5hbWUoKSk7CiAgICAgICAgJGZvcmdvdHB3dmVyaWZ5X3RwbF90eXBlLT5zZXRfbmFtZSgnZm9yZ290IHBhc3N3b3JkIHZlcmlmeScpOwogICAgICAgICRmb3Jnb3Rwd3ZlcmlmeV90cGxfdHlwZS0+c2V0X2RmbHRfZmxhZyhUUlVFKTsKICAgICAgICAkZm9yZ290cHd2ZXJpZnlfdHBsX3R5cGUtPnNldF9sYW5nX2NhbGxiYWNrKCdGcm9udEVuZFVzZXJzOjpwYWdlX3R5cGVfbGFuZ19jYWxsYmFjaycpOwogICAgICAgICRmb3Jnb3Rwd3ZlcmlmeV90cGxfdHlwZS0+c2V0X2NvbnRlbnRfY2FsbGJhY2soJ0Zyb250RW5kVXNlcnM6OnJlc2V0X3BhZ2VfdHlwZV9kZWZhdWx0cycpOwogICAgICAgICRmb3Jnb3Rwd3ZlcmlmeV90cGxfdHlwZS0+cmVzZXRfY29udGVudF90b19mYWN0b3J5KCk7CiAgICAgICAgJGZvcmdvdHB3dmVyaWZ5X3RwbF90eXBlLT5zYXZlKCk7CgogICAgICAgICRmb3JjZW5ld3B3X3RwbF90eXBlID0gbmV3IFxDbXNMYXlvdXRUZW1wbGF0ZVR5cGUoKTsKICAgICAgICAkZm9yY2VuZXdwd190cGxfdHlwZS0+c2V0X29yaWdpbmF0b3IoJHRoaXMtPkdldE5hbWUoKSk7CiAgICAgICAgJGZvcmNlbmV3cHdfdHBsX3R5cGUtPnNldF9uYW1lKCdmb3JjZSBuZXcgcGFzc3dvcmQnKTsKICAgICAgICAkZm9yY2VuZXdwd190cGxfdHlwZS0+c2V0X2RmbHRfZmxhZyhUUlVFKTsKICAgICAgICAkZm9yY2VuZXdwd190cGxfdHlwZS0+c2V0X2xhbmdfY2FsbGJhY2soJ0Zyb250RW5kVXNlcnM6OnBhZ2VfdHlwZV9sYW5nX2NhbGxiYWNrJyk7CiAgICAgICAgJGZvcmNlbmV3cHdfdHBsX3R5cGUtPnNldF9jb250ZW50X2NhbGxiYWNrKCdGcm9udEVuZFVzZXJzOjpyZXNldF9wYWdlX3R5cGVfZGVmYXVsdHMnKTsKICAgICAgICAkZm9yY2VuZXdwd190cGxfdHlwZS0+cmVzZXRfY29udGVudF90b19mYWN0b3J5KCk7CiAgICAgICAgJGZvcmNlbmV3cHdfdHBsX3R5cGUtPnNhdmUoKTsKCiAgICAgICAgJGxvc3R1bmZvcm1fdHBsX3R5cGUgPSBuZXcgXENtc0xheW91dFRlbXBsYXRlVHlwZSgpOwogICAgICAgICRsb3N0dW5mb3JtX3RwbF90eXBlLT5zZXRfb3JpZ2luYXRvcigkdGhpcy0+R2V0TmFtZSgpKTsKICAgICAgICAkbG9zdHVuZm9ybV90cGxfdHlwZS0+c2V0X25hbWUoJ2xvc3QgdXNlcm5hbWUgZm9ybScpOwogICAgICAgICRsb3N0dW5mb3JtX3RwbF90eXBlLT5zZXRfZGZsdF9mbGFnKFRSVUUpOwogICAgICAgICRsb3N0dW5mb3JtX3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICAgICAkbG9zdHVuZm9ybV90cGxfdHlwZS0+c2V0X2NvbnRlbnRfY2FsbGJhY2soJ0Zyb250RW5kVXNlcnM6OnJlc2V0X3BhZ2VfdHlwZV9kZWZhdWx0cycpOwogICAgICAgICRsb3N0dW5mb3JtX3RwbF90eXBlLT5yZXNldF9jb250ZW50X3RvX2ZhY3RvcnkoKTsKICAgICAgICAkbG9zdHVuZm9ybV90cGxfdHlwZS0+c2F2ZSgpOwoKICAgICAgICAkbG9zdHVuY29uZmlybV90cGxfdHlwZSA9IG5ldyBcQ21zTGF5b3V0VGVtcGxhdGVUeXBlKCk7CiAgICAgICAgJGxvc3R1bmNvbmZpcm1fdHBsX3R5cGUtPnNldF9vcmlnaW5hdG9yKCR0aGlzLT5HZXROYW1lKCkpOwogICAgICAgICRsb3N0dW5jb25maXJtX3RwbF90eXBlLT5zZXRfbmFtZSgnbG9zdCB1c2VybmFtZSBjb25maXJtJyk7CiAgICAgICAgJGxvc3R1bmNvbmZpcm1fdHBsX3R5cGUtPnNldF9kZmx0X2ZsYWcoVFJVRSk7CiAgICAgICAgJGxvc3R1bmNvbmZpcm1fdHBsX3R5cGUtPnNldF9sYW5nX2NhbGxiYWNrKCdGcm9udEVuZFVzZXJzOjpwYWdlX3R5cGVfbGFuZ19jYWxsYmFjaycpOwogICAgICAgICRsb3N0dW5jb25maXJtX3RwbF90eXBlLT5zZXRfY29udGVudF9jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzJyk7CiAgICAgICAgJGxvc3R1bmNvbmZpcm1fdHBsX3R5cGUtPnJlc2V0X2NvbnRlbnRfdG9fZmFjdG9yeSgpOwogICAgICAgICRsb3N0dW5jb25maXJtX3RwbF90eXBlLT5zYXZlKCk7CgogICAgICAgICR2aWV3dXNlcl90cGxfdHlwZSA9IG5ldyBcQ21zTGF5b3V0VGVtcGxhdGVUeXBlKCk7CiAgICAgICAgJHZpZXd1c2VyX3RwbF90eXBlLT5zZXRfb3JpZ2luYXRvcigkdGhpcy0+R2V0TmFtZSgpKTsKICAgICAgICAkdmlld3VzZXJfdHBsX3R5cGUtPnNldF9uYW1lKCd2aWV3IHVzZXInKTsKICAgICAgICAkdmlld3VzZXJfdHBsX3R5cGUtPnNldF9kZmx0X2ZsYWcoVFJVRSk7CiAgICAgICAgJHZpZXd1c2VyX3RwbF90eXBlLT5zZXRfbGFuZ19jYWxsYmFjaygnRnJvbnRFbmRVc2Vyczo6cGFnZV90eXBlX2xhbmdfY2FsbGJhY2snKTsKICAgICAgICAkdmlld3VzZXJfdHBsX3R5cGUtPnNldF9jb250ZW50X2NhbGxiYWNrKCdGcm9udEVuZFVzZXJzOjpyZXNldF9wYWdlX3R5cGVfZGVmYXVsdHMnKTsKICAgICAgICAkdmlld3VzZXJfdHBsX3R5cGUtPnJlc2V0X2NvbnRlbnRfdG9fZmFjdG9yeSgpOwogICAgICAgICR2aWV3dXNlcl90cGxfdHlwZS0+c2F2ZSgpOwoKICAgICAgICAkcmVzZXRzZXNzaW9uX3RwbF90eXBlID0gbmV3IFxDbXNMYXlvdXRUZW1wbGF0ZVR5cGUoKTsKICAgICAgICAkcmVzZXRzZXNzaW9uX3RwbF90eXBlLT5zZXRfb3JpZ2luYXRvcigkdGhpcy0+R2V0TmFtZSgpKTsKICAgICAgICAkcmVzZXRzZXNzaW9uX3RwbF90eXBlLT5zZXRfbmFtZSgncmVzZXQgc2Vzc2lvbicpOwogICAgICAgICRyZXNldHNlc3Npb25fdHBsX3R5cGUtPnNldF9kZmx0X2ZsYWcoVFJVRSk7CiAgICAgICAgJHJlc2V0c2Vzc2lvbl90cGxfdHlwZS0+c2V0X2xhbmdfY2FsbGJhY2soJ0Zyb250RW5kVXNlcnM6OnBhZ2VfdHlwZV9sYW5nX2NhbGxiYWNrJyk7CiAgICAgICAgJHJlc2V0c2Vzc2lvbl90cGxfdHlwZS0+c2V0X2NvbnRlbnRfY2FsbGJhY2soJ0Zyb250RW5kVXNlcnM6OnJlc2V0X3BhZ2VfdHlwZV9kZWZhdWx0cycpOwogICAgICAgICRyZXNldHNlc3Npb25fdHBsX3R5cGUtPnJlc2V0X2NvbnRlbnRfdG9fZmFjdG9yeSgpOwogICAgICAgICRyZXNldHNlc3Npb25fdHBsX3R5cGUtPnNhdmUoKTsKICAgIH0KICAgIGNhdGNoKCBcQ21zU1FMRXJyb3JFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgXGNnZV91dGlsczo6bG9nX2V4Y2VwdGlvbigkZSk7CiAgICAgICAgYXVkaXQoJycsJHRoaXMtPkdldE5hbWUoKSwnVXBncmFkZSBFcnJvcjogJy4kZS0+R2V0TWVzc2FnZSgpKTsKICAgIH0KICAgIGNhdGNoKCBcRXhjZXB0aW9uICRlICkgewogICAgICAgIFxjZ2VfdXRpbHM6OmxvZ19leGNlcHRpb24oJGUpOwogICAgICAgIGF1ZGl0KCcnLCR0aGlzLT5HZXROYW1lKCksJ1VwZ3JhZGUgRXJyb3I6ICcuJGUtPkdldE1lc3NhZ2UoKSk7CiAgICAgICAgcmV0dXJuICdFUlJPUjogJy4kZS0+R2V0TWVzc2FnZSgpOwogICAgfQoKICAgIC8vIG5vdyBjcmVhdGUgdGhlIHRlbXBsYXRlcyB0aGVtc2VsdmVzLgogICAgJGNyZWF0ZV9kZmx0X3RlbXBsYXRlKCdmZXVzZXJzX2xvZ2luZm9ybScsJGxvZ2luX3RwbF90eXBlKTsKICAgICRjcmVhdGVfZGZsdF90ZW1wbGF0ZSgnZmV1c2Vyc19sb2dvdXRmb3JtJywkbG9nb3V0X3RwbF90eXBlKTsKICAgICRjcmVhdGVfZGZsdF90ZW1wbGF0ZSgnZmV1c2Vyc19jaGFuZ2VzZXR0aW5nc2Zvcm0nLCRjaHNldHRpbmdzX3RwbF90eXBlKTsKICAgICRjcmVhdGVfZGZsdF90ZW1wbGF0ZSgnZmV1c2Vyc19mb3Jnb3RwYXNzd29yZGZvcm0nLCRmb3Jnb3Rwd2Zvcm1fdHBsX3R5cGUpOwogICAgJGNyZWF0ZV9kZmx0X3RlbXBsYXRlKCdmZXVzZXJzX2ZvcmdvdHBhc3N3b3JkZW1haWxmb3JtJywkZm9yZ290cHdlbWFpbF90cGxfdHlwZSk7CiAgICAkY3JlYXRlX2RmbHRfdGVtcGxhdGUoJ2ZldXNlcnNfZm9yZ290cGFzc3dvcmR2ZXJpZnlmb3JtJywkZm9yZ290cHd2ZXJpZnlfdHBsX3R5cGUpOwogICAgJGNyZWF0ZV9kZmx0X3RlbXBsYXRlKCdmb3JjZW53cHdfdGVtcGxhdGUnLCRmb3JjZW5ld3B3X3RwbF90eXBlKTsKICAgICRjcmVhdGVfZGZsdF90ZW1wbGF0ZSgnZmV1c2Vyc19sb3N0dW5mb3JtJywkbG9zdHVuZm9ybV90cGxfdHlwZSk7CiAgICAkY3JlYXRlX2RmbHRfdGVtcGxhdGUoJ2ZldXNlcnNfbG9zdHVuZm9ybV9jb25maXJtJywkbG9zdHVuY29uZmlybV90cGxfdHlwZSk7CiAgICAkY3JlYXRlX2RmbHRfdGVtcGxhdGUoJ2ZldXNlcnNfdmlld3VzZXInLCR2aWV3dXNlcl90cGxfdHlwZSk7CiAgICAkY3JlYXRlX2RmbHRfdGVtcGxhdGUoJ2ZldXNlcnNfcmVzZXRzZXNzaW9uJywkcmVzZXRzZXNzaW9uX3RwbF90eXBlKTsKfQppZiggdmVyc2lvbl9jb21wYXJlKCRvbGR2ZXJzaW9uLCcyLjAuMScpIDwgMCApIHsKICAgICR0aGlzLT5DcmVhdGVFdmVudCggJ09uTG9naW5GYWlsZWQnICk7Cn0KaWYoIHZlcnNpb25fY29tcGFyZSgkb2xkdmVyc2lvbiwnMi4yJykgPCAwICkgewogICAgJGRiID0gXGNtc191dGlsczo6Z2V0X2RiKCk7CgogICAgJHNxbGFycmF5ID0gJGRpY3QtPkFkZGNvbHVtblNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9mZXVzZXJzX3VzZXJzIiwibXVzdF92YWxpZGF0ZSBJMSIpOwogICAgJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwp9CmlmKCB2ZXJzaW9uX2NvbXBhcmUoJG9sZHZlcnNpb24sJzIuMi4wLjEnKSA8IDAgKSB7CiAgICAkdGhpcy0+Q3JlYXRlRXZlbnQoICdCZWZvcmVMb2dpbicgKTsKfQppZiggdmVyc2lvbl9jb21wYXJlKCRvbGR2ZXJzaW9uLCcyLjIuMC4yJykgPCAwICkgewogICAgJGNyZWF0ZV9kZmx0X3RlbXBsYXRlID0gZnVuY3Rpb24oJG5ld190eXBlKSB1c2UgKCYkbW9kLCR1aWQpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICAkcHJvdG90eXBlID0gJ0ZFVSAnLiRuZXdfdHlwZS0+Z2V0X25hbWUoKTsKICAgICAgICAgICAgJHRwbCA9IG5ldyBDbXNMYXlvdXRUZW1wbGF0ZTsKICAgICAgICAgICAgJHRwbC0+c2V0X25hbWUoJHRwbDo6Z2VuZXJhdGVfdW5pcXVlX25hbWUoJHByb3RvdHlwZSkpOwogICAgICAgICAgICAkdHBsLT5zZXRfb3duZXIoJHVpZCk7CiAgICAgICAgICAgICR0cGwtPnNldF90eXBlKCRuZXdfdHlwZSk7CiAgICAgICAgICAgICR0cGwtPnNldF9jb250ZW50KCRuZXdfdHlwZS0+Z2V0X2RmbHRfY29udGVudHMoKSk7CiAgICAgICAgICAgICR0cGwtPnNldF90eXBlX2RmbHQoVFJVRSk7IC8vIEZFVSBvbmx5IGhhZCBvbmUgdGVtcGxhdGUgb2YgZWFjaCB0eXBlLgogICAgICAgICAgICAkdHBsLT5zYXZlKCk7CiAgICAgICAgfQogICAgICAgIGNhdGNoKCBcQ21zSW52YWxpZERhdGFFeGNlcHRpb24gJGUgKSB7CiAgICAgICAgICAgICRsb2dfZXhjZXB0aW9uKCRlKTsKICAgICAgICAgICAgYXVkaXQoJycsJG1vZC0+R2V0TmFtZSgpLCdVcGdyYWRlIFByb2JsZW0gJy4kZS0+R2V0TWVzc2FnZSgpKTsKICAgICAgICB9CiAgICB9OwoKICAgICR2ZXJpZnlmb3JtX3RwbF90eXBlID0gbmV3IFxDbXNMYXlvdXRUZW1wbGF0ZVR5cGUoKTsKICAgICR2ZXJpZnlmb3JtX3RwbF90eXBlLT5zZXRfb3JpZ2luYXRvcigkdGhpcy0+R2V0TmFtZSgpKTsKICAgICR2ZXJpZnlmb3JtX3RwbF90eXBlLT5zZXRfbmFtZSgndmVyaWZ5X2Zvcm0nKTsKICAgICR2ZXJpZnlmb3JtX3RwbF90eXBlLT5zZXRfZGZsdF9mbGFnKFRSVUUpOwogICAgJHZlcmlmeWZvcm1fdHBsX3R5cGUtPnNldF9sYW5nX2NhbGxiYWNrKCdGcm9udEVuZFVzZXJzOjpwYWdlX3R5cGVfbGFuZ19jYWxsYmFjaycpOwogICAgJHZlcmlmeWZvcm1fdHBsX3R5cGUtPnNldF9jb250ZW50X2NhbGxiYWNrKCdGcm9udEVuZFVzZXJzOjpyZXNldF9wYWdlX3R5cGVfZGVmYXVsdHMnKTsKICAgICR2ZXJpZnlmb3JtX3RwbF90eXBlLT5yZXNldF9jb250ZW50X3RvX2ZhY3RvcnkoKTsKICAgICR2ZXJpZnlmb3JtX3RwbF90eXBlLT5zYXZlKCk7CgogICAgJGNyZWF0ZV9kZmx0X3RlbXBsYXRlKCR2ZXJpZnlmb3JtX3RwbF90eXBlKTsKfQppZiggdmVyc2lvbl9jb21wYXJlKCRvbGR2ZXJzaW9uLCcyLjIuMC43JykgPCAwICkgewogICAgJHRoaXMtPkNyZWF0ZUV2ZW50KCAnQWZ0ZXJMb2dpbkF1dGgnICk7Cn0K]]></data>
	</file>
	<file>
	  <filename>/moduleinfo.ini</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[W21vZHVsZV0KbmFtZSA9IEZyb250RW5kVXNlcnMKdmVyc2lvbiA9IDIuMy4yCmRlc2NyaXB0aW9uID0gCmF1dGhvciA9IGNhbGd1eTEwMDAKYXV0aG9yZW1haWwgPSBjYWxndXkxMDAwQGhvdG1haWwuY29tCm1pbmNtc3ZlcnNpb24gPSAyLjEuNQpsYXp5bG9hZGFkbWluID0gMQpsYXp5bG9hZGZyb250ZW5kID0gMApbZGVwZW5kc10KQ0dFeHRlbnNpb25zID0gMS41My4xNQpDR1NpbXBsZVNtYXJ0eSA9IDIuMS41Cg==]]></data>
	</file>
	<file>
	  <filename>/phpdoc.xml</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiID8+CjxwaHBkb2M+CiAgPHRpdGxlPjwhW0NEQVRBW0Zyb250RW5kVXNlcnMgZm9yICNjbXNtcyBieSBjYWxndXkxMDAwXV0+PC90aXRsZT4KICA8cGFyc2VyPgogICAgPHRhcmdldD4vdG1wL0Zyb250RW5kVXNlcnMueDwvdGFyZ2V0PgogIDwvcGFyc2VyPgogIDx0cmFuc2Zvcm1lcj4KICAgIDx0YXJnZXQ+ZG9jcy9hcGlkb2M8L3RhcmdldD4KICA8L3RyYW5zZm9ybWVyPgogIDxmaWxlcz4KICAgIDxmaWxlPkZyb250RW5kVXNlcnMubW9kdWxlLnBocDwvZmlsZT4KICAgIDxmaWxlPmxpYi9jbGFzcy5mZXVfdXNlcl9xdWVyeS5waHA8L2ZpbGU+CiAgICA8ZmlsZT5saWIvY2xhc3MuZmV1X3VzZXJfcXVlcnlfcmVzdWx0c2V0LnBocDwvZmlsZT4KICA8L2ZpbGVzPgo8L3BocGRvYz4K]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/addgroup.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGV9OjwvaDM+Cgp7aWYgaXNzZXQoJG1lc3NhZ2UpIH0KICB7aWYgaXNzZXQoJGVycm9yKSB9CiAgICA8cD48Zm9udCBjb2xvcj0icmVkIj57JG1lc3NhZ2V9PC9mb250PjwvcD4KICB7ZWxzZX0KICAgIDxwPnskbWVzc2FnZX08L3A+CiAgey9pZn0Key9pZn0KCnskc3RhcnRmb3JtfQp7aWYgaXNzZXQoJGhpZGRlbil9CjxkaXY+eyRoaWRkZW59PC9kaXY+CnsvaWZ9Cgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZ3JvdXBuYW1lfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2dyb3VwbmFtZX08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZ3JvdXBkZXNjfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2dyb3VwZGVzY308L3A+CjwvZGl2PgoKe2lmICRwcm9wY291bnQgPiAwfQo8YnIvPgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPgogIDx0aGVhZD4KICAgIDx0cj4KICAgICAgPHRoPnskbmFtZXRleHR9PC90aD4KICAgICAgPHRoPnskcHJvbXB0dGV4dH08L3RoPgogICAgICA8dGg+eyR0eXBldGV4dH08L3RoPgogICAgICA8dGg+eyRtb2QtPkxhbmcoJ2VuY3J5cHRlZCcpfTwvdGg+CiAgICAgIDx0aD57JGZpZWxkc3RhdHVzdGV4dH08L3RoPgogICAgICA8dGggY2xhc3M9InBhZ2VpY29uIj48L3RoPgogICAgICA8dGggY2xhc3M9InBhZ2VpY29uIj48L3RoPgogICAgPC90cj4KICA8L3RoZWFkPgogIDx0Ym9keT4KICB7Zm9yZWFjaCAkcHJvcHMgYXMgJHByb3BlfQogICAge2N5Y2xlIHZhbHVlcz0icm93MSxyb3cyIiBhc3NpZ249J3Jvd2NsYXNzJ30KICAgIDx0ciBjbGFzcz0ieyRyb3djbGFzc30iIG9ubW91c2VvdmVyPSJ0aGlzLmNsYXNzTmFtZT0neyRyb3djbGFzc31ob3Zlcic7IiBvbm1vdXNlb3V0PSJ0aGlzLmNsYXNzTmFtZT0neyRyb3djbGFzc30nOyI+CiAgICAgIDx0ZD57JHByb3BlLT5oaWRkZW59eyRwcm9wZS0+bmFtZX08L3RkPgogICAgICA8dGQ+eyRwcm9wZS0+cHJvbXB0fTwvdGQ+CiAgICAgIDx0ZD57JHByb3BlLT50eXBlfTwvdGQ+CiAgICAgIDx0ZD57aWYgJHByb3BlLT5lbmNyeXB0ZWR9PHNwYW4gaW5mbz0ieyRtb2QtPkxhbmcoJ2luZm9fZW5jcnlwdGVkJyl9IiBzdHlsZT0iY29sb3I6IHJlZDsgZm9udC13ZWlnaHQ6IGJvbGQ7Ij57JG1vZC0+TGFuZygneWVzJyl9PC9zcGFuPnsvaWZ9PC90ZD4KICAgICAgPHRkPnskcHJvcGUtPnJlcXVpcmVkfTwvdGQ+CiAgICAgIDx0ZD4KICAgICAgICB7aWYgaXNzZXQoJHByb3BlLT5tb3ZldXBfaWR4KX0KICAgICAgICAgIDxidXR0b24gbmFtZT0ieyRhY3Rpb25pZH1tb3ZldXAiIHRpdGxlPSJ7JG1vZC0+TGFuZygnbW92ZV91cCcpfSIgdmFsdWU9InskcHJvcGUtPm1vdmV1cF9pZHh9Ij57JGltZ191cH08L2J1dHRvbj4KICAgICAgICB7L2lmfQogICAgICA8L3RkPgogICAgICA8dGQ+CiAgICAgICAge2lmIGlzc2V0KCRwcm9wZS0+bW92ZWRvd25faWR4KX0KICAgICAgICAgIDxidXR0b24gbmFtZT0ieyRhY3Rpb25pZH1tb3ZlZG93biIgdGl0bGU9InskbW9kLT5MYW5nKCdtb3ZlX2Rvd24nKX0iIHZhbHVlPSJ7JHByb3BlLT5tb3ZlZG93bl9pZHh9Ij57JGltZ19kb3dufTwvYnV0dG9uPgogICAgICAgIHsvaWZ9CiAgICAgIDwvdGQ+CiAgICA8L3RyPgogIHsvZm9yZWFjaH0KICA8L3Rib2R5Pgo8L3RhYmxlPgo8L2Rpdj4Key9pZn0KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRzdWJtaXR9eyRjYW5jZWx9PC9wPgo8L2Rpdj4KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/addprop.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGV9PC9oMz4Ke2lmIGlzc2V0KCRtZXNzYWdlKSB9CiAge2lmIGlzc2V0KCRlcnJvcikgfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9Cnskc3RhcnRmb3JtfQo8ZGl2Pnskb3JpZ190eXBlfTwvZGl2PgogIDxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgICA8cCBjbGFzcz0iZ3JpZF80Ij57JHByb21wdF9uYW1lfTo8L3A+CiAgICA8cCBjbGFzcz0iZ3JpZF84Ij57JGlucHV0X25hbWV9PC9wPgogICAgPGRpdiBjbGFzcz0iY2xlYXJiIj48L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJjX2Z1bGwiPgogICAgPHAgY2xhc3M9ImdyaWRfNCI+eyRwcm9tcHRfcHJvbXB0fTo8L3A+CiAgICA8cCBjbGFzcz0iZ3JpZF84Ij57JGlucHV0X3Byb21wdH08L3A+CiAgICA8ZGl2IGNsYXNzPSJjbGVhcmIiPjwvZGl2PgogIDwvZGl2PgogIDxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgICA8cCBjbGFzcz0iZ3JpZF80Ij57JHByb21wdF90eXBlfTo8L3A+CiAgICA8cCBjbGFzcz0iZ3JpZF84Ij57JGlucHV0X3R5cGV9PC9wPgogICAgPGRpdiBjbGFzcz0iY2xlYXJiIj48L2Rpdj4KICA8L2Rpdj4KICB7aWYgaXNzZXQoJGZpZWxkcyl9CiAge2ZvcmVhY2ggZnJvbT0kZmllbGRzIGl0ZW09J29uZWZsZCd9CiAgPGRpdiBjbGFzcz0iY19mdWxsIj4KICAgIDxwIGNsYXNzPSJncmlkXzQiPnskb25lZmxkWzBdfTo8L3A+CiAgICA8cCBjbGFzcz0iZ3JpZF84Ij57JG9uZWZsZFsxXX08L3A+CiAgICA8ZGl2IGNsYXNzPSJjbGVhcmIiPjwvZGl2PgogIDwvZGl2PgogIHsvZm9yZWFjaH0KICB7L2lmfQp7aWYgaXNzZXQoJGlucHV0X2ZvcmNlX3VuaXF1ZSkgJiYgJGRlZm4udHlwZSAhPSA2fQogIDxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgICA8cCBjbGFzcz0iZ3JpZF80Ij57JG1vZC0+TGFuZygncHJvbXB0X2ZvcmNlX3VuaXF1ZScpfTo8L3A+CiAgICA8cCBjbGFzcz0iZ3JpZF84Ij57JGlucHV0X2ZvcmNlX3VuaXF1ZX08L3A+CiAgICA8ZGl2IGNsYXNzPSJjbGVhcmIiPjwvZGl2PgogIDwvZGl2Pgp7L2lmfQp7aWYgJGRlZm4udHlwZSAhPSAyICYmICRkZWZuLnR5cGUgIT0gNn0KICA8ZGl2IGNsYXNzPSJjX2Z1bGwiPgogICAgPHAgY2xhc3M9ImdyaWRfNCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9lbmNyeXB0Jyl9OjwvcD4KICAgIDxkaXYgY2xhc3M9ImdyaWRfOCI+eyRpbnB1dF9lbmNyeXB0fTxwPnskbW9kLT5MYW5nKCdpbmZvX2VuY3J5cHQnKX08L3A+PC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJjbGVhcmIiPjwvZGl2PgogIDwvZGl2Pgp7L2lmfQogIDxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgICA8cCBjbGFzcz0iZ3JpZF84Ij57JGhpZGRlbnxkZWZhdWx0OicnfXskc3VibWl0fXskY2FuY2VsfTwvcD4KICAgIDxkaXYgY2xhc3M9ImNsZWFyYiI+PC9kaXY+CiAgPC9kaXY+CnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/templates/adminprefs.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGlzc2V0KCRtZXNzYWdlKSB9PHA+eyRtZXNzYWdlfTwvcD57L2lmfQp7JHN0YXJ0Zm9ybX0KCjxmaWVsZHNldD4KICA8bGVnZW5kPnskbW9kLT5MYW5nKCdnZW5lcmFsX3NldHRpbmdzJyl9OjwvbGVnZW5kPgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdhdXRoX21vZHVsZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWF1dGhfbW9kdWxlIj4KICAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGF1dGhfbW9kdWxlcyBzZWxlY3RlZD0kYXV0aF9tb2R1bGV9CiAgICAgIDwvc2VsZWN0PgogICAgICA8YnIvPnskbW9kLT5MYW5nKCdpbmZvX2F1dGhfbW9kdWxlJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9hdXRvX2NyZWF0ZV91bmtub3duJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPSdhdXRvX2NyZWF0ZV91bmtub3duJyBzZWxlY3RlZD0kYXV0b19jcmVhdGVfdW5rbm93bn0KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fYXV0b19jcmVhdGVfdW5rbm93bicpfQogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2FsbG93X3JlcGVhdGVkX2xvZ2luc306PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9hbGxvd19yZXBlYXRlZF9sb2dpbnN9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZXhwaXJlYWdlJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZXhwaXJlYWdlfSZuYnNwOyh7JG1vZC0+TGFuZygnbW9udGhzJyl9KTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3JhbmRvbXVzZXJuYW1lJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcmFuZG9tdXNlcm5hbWV9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2ZldXNlcnNfc3BlY2lmaWNfcGVybWlzc2lvbnN9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZmV1c2Vyc19zcGVjaWZpY19wZXJtaXNzaW9uc308YnIvPnskaW5mb19mZXVzZXJzX3NwZWNpZmljX3Blcm1pc3Npb25zfTwvcD4KICA8L2Rpdj4KPC9maWVsZHNldD4KCjxmaWVsZHNldD4KICA8bGVnZW5kPnskbW9kLT5MYW5nKCdzZXNzaW9uX3NldHRpbmdzJyl9OjwvbGVnZW5kPgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3Nlc3Npb250aW1lb3V0fTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3Nlc3Npb250aW1lb3V0fQogICAgICA8YnIvPnskbW9kLT5MYW5nKCdpbmZvX3Nlc3Npb250aW1lb3V0Jyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9leHBpcmV1c2Vyc19pbnRlcnZhbCcpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9ZXhwaXJldXNlcnNfaW50ZXJ2YWwiIHZhbHVlPSJ7JGV4cGlyZXVzZXJzX2ludGVydmFsfSIgc2l6ZT0iNCIgbWF4bGVuZ3RoPSI0Ii8+CiAgICAgIDxici8+eyRtb2QtPkxhbmcoJ2luZm9fZXhwaXJldXNlcnNfaW50ZXJ2YWwnKX0KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ZvcmNlbG9nb3V0X3RpbWVzJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1mb3JjZWxvZ291dF90aW1lcyIgc2l6ZT0iNDAiIG1heGxlbmd0aD0iMjU1IiB2YWx1ZT0ieyRmb3JjZWxvZ291dF90aW1lc30iLz4KICAgICAgPGJyLz57JG1vZC0+TGFuZygnaW5mb19mb3JjZWxvZ291dF90aW1lcycpfQogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Zm9yY2Vsb2dvdXRfc2Vzc2lvbmFnZSIgc2l6ZT0iNSIgbWF4bGVuZ3RoPSI1IiB2YWx1ZT0ieyRmb3JjZWxvZ291dF9zZXNzaW9uYWdlfSIvPgogICAgICA8YnIvPnskbW9kLT5MYW5nKCdpbmZvX2ZvcmNlbG9nb3V0X3Nlc3Npb25hZ2UnKX0KICAgIDwvcD4KICA8L2Rpdj4KPC9maWVsZHNldD4KCjxmaWVsZHNldD4KICA8bGVnZW5kPnskbW9kLT5MYW5nKCdwcm9wZXJ0eV9zZXR0aW5ncycpfTo8L2xlZ2VuZD4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9pbWFnZV9kZXN0aW5hdGlvbl9wYXRofTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ltYWdlX2Rlc3RpbmF0aW9uX3BhdGh9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X2FsbG93ZWRfaW1hZ2VfZXh0ZW5zaW9uc306PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9hbGxvd2VkX2ltYWdlX2V4dGVuc2lvbnN9PC9wPgogIDwvZGl2Pgo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0PgogIDxsZWdlbmQ+eyRtb2QtPkxhbmcoJ25vdGlmaWNhdGlvbl9zZXR0aW5ncycpfTo8L2xlZ2VuZD4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9ub3RpZmljYXRpb25zfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X25vdGlmaWNhdGlvbnN9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X25vdGlmaWNhdGlvbl9hZGRyZXNzfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X25vdGlmaWNhdGlvbl9hZGRyZXNzfTwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9ub3RpZmljYXRpb25fc3ViamVjdH06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9ub3RpZmljYXRpb25fc3ViamVjdH08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfbm90aWZpY2F0aW9uX3RlbXBsYXRlfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X25vdGlmaWNhdGlvbl90ZW1wbGF0ZX08L3A+CiAgPC9kaXY+CjwvZmllbGRzZXQ+Cgo8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JG1vZC0+TGFuZygncGFnZXR5cGVfc2V0dGluZ3MnKX06PC9sZWdlbmQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3BhZ2V0eXBlX2dyb3VwcycpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfXBhZ2V0eXBlX2dyb3Vwc1tdIiBtdWx0aXBsZT0ibXVsdGlwbGUiIHNpemU9IjUiPgogICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kYWxsX2dyb3VwcyBzZWxlY3RlZD0kcGFnZXR5cGVfZ3JvdXBzfQogICAgICA8L3NlbGVjdD4KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fcGFnZXR5cGVfZ3JvdXBzJyl9CiAgICA8L3A+CiAgPC9kaXY+CjwvZmllbGRzZXQ+Cgp7aWYgaXNzZXQoJGRhdGFfbnVtcmVzZXRyZWNvcmRzKX0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPGhyIHdpZHRoPSI1MCUiIGFsaWduPSJsZWZ0Ii8+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfbnVtcmVzZXRyZWNvcmRzfTwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskZGF0YV9udW1yZXNldHJlY29yZHN9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3JlbW92ZTF3ZWVrfXskaW5wdXRfcmVtb3ZlMW1vbnRofXskaW5wdXRfcmVtb3ZlYWxsfTwvcD4KICA8L2Rpdj4Key9pZn0KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW58ZGVmYXVsdDonJ317JHN1Ym1pdH17JGNhbmNlbH08L3A+CjwvZGl2Pgp7JGVuZGZvcm19Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/admintasks.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGlzc2V0KCRtZXNzYWdlKSB9PGRpdiBjbGFzcz0iaW5mb3JtYXRpb24iPnskbWVzc2FnZX08L2Rpdj57L2lmfQoKeyogQSBmb3JtIChzaW1wbGUgYnV0dG9uKSBmb3IgZXhwb3J0aW5nIHVzZXJzIHRvIGNzdiAqfQp7JHN0YXJ0Zm9ybX17JGlucHV0X2hpZGRlbn0KCjxmaWVsZHNldD4KPGxlZ2VuZD57JGxlZ2VuZF91c2VyaGlzdG9yeW1haW50ZW5hbmNlfTwvbGVnZW5kPgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZXhwb3J0dXNlcmhpc3Rvcnl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2V4cG9ydHVzZXJoaXN0b3J5fSZuYnNwO3skYnV0dG9uX2V4cG9ydHVzZXJoaXN0b3J5fTwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9jbGVhcnVzZXJoaXN0b3J5fTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9jbGVhcnVzZXJoaXN0b3J5fSZuYnNwO3skYnV0dG9uX2NsZWFydXNlcmhpc3Rvcnl9PC9wPgo8L2Rpdj4KPC9maWVsZHNldD4KeyRlbmRmb3JtfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/admin_authtab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRmb3Jtc3RhcnR9CjxkaXYgY2xhc3M9ImluZm9ybWF0aW9uIj57JG1vZC0+TGFuZygnaW5mb19zdGRfYXV0aF9zZXR0aW5ncycpfTwvZGl2Pgo8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JG1vZC0+TGFuZygnYXV0aF9zZXR0aW5ncycpfTwvbGVnZW5kPgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfcmVxdWlyZW9uZWdyb3VwJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPXJlcXVpcmVfb25lZ3JvdXAgc2VsZWN0ZWQ9JHJlcXVpcmVfb25lZ3JvdXB9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9kZmx0Z3JvdXAnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1kZWZhdWx0X2dyb3VwIj4KICAgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGdyb3VwbGlzdCBzZWxlY3RlZD0kZGVmYXVsdF9ncm91cH0KICAgICAgPC9zZWxlY3Q+CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9zdXBwb3J0X2xvc3R1bicpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT1zdXBwb3J0X2xvc3R1biBzZWxlY3RlZD0kc3VwcG9ydF9sb3N0dW59CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX3N1cHBvcnRfbG9zdHVuJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9hbGxvd19jaGFuZ2V1c2VybmFtZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT1hbGxvd19jaGFuZ2V1c2VybmFtZSBzZWxlY3RlZD0kYWxsb3dfY2hhbmdldXNlcm5hbWV9CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2FsbG93X2NoYW5nZXVzZXJuYW1lJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9zdXBwb3J0X2xvc3RwdycpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT1zdXBwb3J0X2xvc3RwdyBzZWxlY3RlZD0kc3VwcG9ydF9sb3N0cHd9CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX3N1cHBvcnRfbG9zdHB3Jyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9wd2ZsZGxlbicpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9cHdmbGRsZW4iIHZhbHVlPSJ7JHB3ZmxkbGVufSIgc2l6ZT0iMiIgbWF4bGVuZ3RoPSIyIi8+CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9taW5wd2xlbicpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9bWlucHdsZW4iIHZhbHVlPSJ7JG1pbnB3bGVufSIgc2l6ZT0iMiIgbWF4bGVuZ3RoPSIyIi8+CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCcpfQogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfbWF4cHdsZW4nKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfW1heHB3bGVuIiB2YWx1ZT0ieyRtYXhwd2xlbn0iIHNpemU9IjIiIG1heGxlbmd0aD0iMiIvPgogICAgICA8YnIvPgogICAgICB7JG1vZC0+TGFuZygnd2FybmluZ19lZmZlY3RzZmllbGRsZW5ndGgnKX0KICAgIDwvcD4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9lbmhhbmNlZHB3Jyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPWVuaGFuY2VkcHcgc2VsZWN0ZWQ9JGVuaGFuY2VkcHd9CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2VuaGFuY2VkcHcnKX0KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3B3cmVxdWlyZWRjaGFycycpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9cHdyZXF1aXJlZGNoYXJzIiB2YWx1ZT0ieyRwd3JlcXVpcmVkY2hhcnN9IiBtYXhsZW5ndGg9IjQwIi8+CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX3B3cmVxdWlyZWRjaGFycycpfQogICAgPC9wPgogIDwvZGl2PgoKICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X3VuZmxkbGVuJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH11bmZsZGxlbiIgdmFsdWU9InskdW5mbGRsZW59IiBzaXplPSIyIiBtYXhsZW5ndGg9IjIiLz4KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X21pbnVubGVuJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1taW51bmxlbiIgdmFsdWU9InskbWludW5sZW59IiBzaXplPSIyIiBtYXhsZW5ndGg9IjIiLz4KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ3dhcm5pbmdfZWZmZWN0c2ZpZWxkbGVuZ3RoJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9tYXh1bmxlbicpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9bWF4dW5sZW4iIHZhbHVlPSJ7JG1heHVubGVufSIgc2l6ZT0iMiIgbWF4bGVuZ3RoPSIyIi8+CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCd3YXJuaW5nX2VmZmVjdHNmaWVsZGxlbmd0aCcpfQogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfY29va2llbmFtZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y29va2llbmFtZSIgdmFsdWU9InskeGNvb2tpZW5hbWV8ZGVmYXVsdDonJ30iIHNpemU9IjUwIiBtYXhsZW5ndGg9IjUwIi8+CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2Nvb2tpZW5hbWUnKX0KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2Nvb2tpZWtlZXBhbGl2ZScpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT1jb29raWVfa2VlcGFsaXZlIHNlbGVjdGVkPSRjb29raWVfa2VlcGFsaXZlfQogICAgICA8YnIvPgogICAgICB7JG1vZC0+TGFuZygnaW5mb19jb29raWVfa2VlcGFsaXZlJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF91c2VybmFtZV9pc19lbWFpbCcpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT11c2VybmFtZV9pc19lbWFpbCBzZWxlY3RlZD0kdXNlcm5hbWVfaXNfZW1haWx9CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX3VzZXJuYW1lX2lzX2VtYWlsJyl9CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9hbGxvd19kdXBsaWNhdGVfZW1haWxzJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPWFsbG93X2R1cGxpY2F0ZV9lbWFpbHMgc2VsZWN0ZWQ9JGFsbG93X2R1cGxpY2F0ZV9lbWFpbHN9CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2FsbG93X2R1cGxpY2F0ZV9lbWFpbHMnKX0KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2FsbG93X2R1cGxpY2F0ZV9yZW1pbmRlcnMnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIHtjZ2VfeWVzbm9fb3B0aW9ucyBwcmVmaXg9JGFjdGlvbmlkIG5hbWU9YWxsb3dfZHVwbGljYXRlX3JlbWluZGVycyBzZWxlY3RlZD0kYWxsb3dfZHVwbGljYXRlX3JlbWluZGVyc30KICAgICAgPGJyLz4KICAgICAgeyRtb2QtPkxhbmcoJ2luZm9fYWxsb3dfZHVwbGljYXRlX3JlbWluZGVycycpfQogICAgPC9wPgogIDwvZGl2Pgo8L2ZpZWxkc2V0PgoKPGZpZWxkc2V0Pgo8bGVnZW5kPnskbW9kLT5MYW5nKCdkaXNwbGF5X3NldHRpbmdzJyl9PC9sZWdlbmQ+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9zaWduaW5fYnV0dG9uJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1zaWduaW5fYnV0dG9uIiB2YWx1ZT0ieyRzaWduaW5fYnV0dG9ufSIgc2l6ZT0iMTUiIG1heGxlbmd0aD0iMTUiLz4KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncmVxdWlyZWRmaWVsZG1hcmtlcicpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9cmVxdWlyZWRfZmllbGRfbWFya2VyIiB2YWx1ZT0ieyRyZXF1aXJlZF9maWVsZF9tYXJrZXJ9IiBzaXplPSIyIiBtYXhsZW5ndGg9IjIiLz4KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncmVxdWlyZWRmaWVsZGNvbG9yJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1yZXF1aXJlZF9maWVsZF9jb2xvciIgdmFsdWU9InskcmVxdWlyZWRfZmllbGRfY29sb3J9IiBzaXplPSIxMCIgbWF4bGVuZ3RoPSIxMCIvPgogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdzZWN1cmVmaWVsZG1hcmtlcicpfTo8L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9c2VjdXJlX2ZpZWxkX21hcmtlciIgdmFsdWU9Inskc2VjdXJlX2ZpZWxkX21hcmtlcn0iIHNpemU9IjIiIG1heGxlbmd0aD0iMiIvPgogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdzZWN1cmVmaWVsZGNvbG9yJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1zZWN1cmVfZmllbGRfY29sb3IiIHZhbHVlPSJ7JHNlY3VyZV9maWVsZF9jb2xvcn0iIHNpemU9IjEwIiBtYXhsZW5ndGg9IjEwIi8+CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2hpZGRlbmZpZWxkbWFya2VyJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1oaWRkZW5fZmllbGRfbWFya2VyIiB2YWx1ZT0ieyRoaWRkZW5fZmllbGRfbWFya2VyfSIgc2l6ZT0iMiIgbWF4bGVuZ3RoPSIyIi8+CiAgICA8L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ2hpZGRlbmZpZWxkY29sb3InKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWhpZGRlbl9maWVsZF9jb2xvciIgdmFsdWU9InskaGlkZGVuX2ZpZWxkX2NvbG9yfSIgc2l6ZT0iMTAiIG1heGxlbmd0aD0iMTAiLz4KICAgIDwvcD4KICA8L2Rpdj4KPC9maWVsZHNldD4KCntpZiBpc3NldCgkZWNvbW1fb3JkZXJjYW5jZWxsZWQpfQo8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JG1vZC0+TGFuZygnZWNvbW1lcmNlX3NldHRpbmdzJyl9OjwvbGVnZW5kPgogIDxwIGNsYXNzPSJwYWdlb3ZlcmZsb3ciPnskbW9kLT5MYW5nKCdpbmZvX3BhaWRyZWdfc2V0dGluZ3MnKX08L3A+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9lY29tbV9wYWlkcmVnaXN0cmF0aW9uJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbiI+CiAgICAgIHtjZ2VfeWVzbm9fb3B0aW9ucyBzZWxlY3RlZD0kZWNvbW1fcGFpZHJlZ2lzdHJhdGlvbn0KICAgICAgPC9zZWxlY3Q+CiAgICAgIDxici8+CiAgICAgIHskbW9kLT5MYW5nKCdpbmZvX2Vjb21tX3BhaWRyZWdpc3RyYXRpb24nKX0KICAgIDwvcD4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9hY3Rpb25fb3JkZXJjYW5jZWxsZWQnKX06PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1lY29tbV9vcmRlcmNhbmNlbGxlZCI+CiAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kZWNvbW1lcmNlX2FjdGlvbnMgc2VsZWN0ZWQ9JGVjb21tX29yZGVyY2FuY2VsbGVkfQogICAgICA8L3NlbGVjdD4KICAgIDwvcD4KICA8L2Rpdj4KCiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9hY3Rpb25fb3JkZXJkZWxldGVkJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8c2VsZWN0IG5hbWU9InskYWN0aW9uaWR9ZWNvbW1fb3JkZXJkZWxldGVkIj4KICAgICAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRlY29tbWVyY2VfYWN0aW9ucyBzZWxlY3RlZD0kZWNvbW1fb3JkZXJkZWxldGVkfQogICAgICA8L3NlbGVjdD4KICAgIDwvcD4KICA8L2Rpdj4KPC9maWVsZHNldD4Key9pZn0KCjxmaWVsZHNldD4KPGxlZ2VuZD57JG1vZC0+TGFuZygncmVkaXJlY3Rpb25fc2V0dGluZ3MnKX06PC9sZWdlbmQ+CjxkaXYgY2xhc3M9ImluZm9ybWF0aW9uIj57JG1vZC0+TGFuZygnaW5mb19zdGFyJyl9PC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ZvcmdvdHB3X3BhZ2UnKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9cGFnZWlkZm9yZ290cGFzc3dkIiB2YWx1ZT0ieyRwYWdlaWRmb3Jnb3RwYXNzd2R9IiBzaXplPSI4MCIgbWF4bGVuZ3RoPSIyNTUiLz4KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9jaGFuZ2VzZXR0aW5nc19wYWdlJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfXBhZ2VpZF9jaGFuZ2VzZXR0aW5ncyIgdmFsdWU9InskcGFnZWlkX2NoYW5nZXNldHRpbmdzfSIgc2l6ZT0iODAiIG1heGxlbmd0aD0iMjU1Ii8+CiAgPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfbG9naW5fcGFnZScpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1wYWdlaWRfbG9naW4iIHZhbHVlPSJ7JHBhZ2VpZF9sb2dpbn0iIHNpemU9IjgwIiBtYXhsZW5ndGg9IjI1NSIvPgogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2xvZ291dF9wYWdlJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfXBhZ2VpZF9sb2dvdXQiIHZhbHVlPSJ7JHBhZ2VpZF9sb2dvdXR9IiBzaXplPSI4MCIgbWF4bGVuZ3RoPSIyNTUiLz4KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF92ZXJpZnlfcGFnZScpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1wYWdlaWRfb252ZXJpZnkiIHZhbHVlPSJ7JHBhZ2VpZF9vbnZlcmlmeX0iIHNpemU9IjgwIiBtYXhsZW5ndGg9IjI1NSIvPgogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2FmdGVyX3ZlcmlmeV9jb2RlJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfXBhZ2VpZF9hZnRlcnZlcmlmeSIgdmFsdWU9InskcGFnZWlkX2FmdGVydmVyaWZ5fSIgc2l6ZT0iODAiIG1heGxlbmd0aD0iMjU1Ii8+CiAgPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfYWZ0ZXJfY2hhbmdlX3NldHRpbmdzJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfXBhZ2VpZF9hZnRlcmNoYW5nZXNldHRpbmdzIiB2YWx1ZT0ieyRwYWdlaWRfYWZ0ZXJjaGFuZ2VzZXR0aW5nc30iIHNpemU9IjgwIiBtYXhsZW5ndGg9IjI1NSIvPgogIDwvcD4KPC9kaXY+CjwvZmllbGRzZXQ+Cgp7aWYgaXNzZXQoJHB3c2FsdCl9CjxmaWVsZHNldD4KICA8bGVnZW5kPnskbW9kLT5MYW5nKCdhZHZhbmNlZF9zZXR0aW5ncycpfTwvbGVnZW5kPgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfcHdzYWx0Jyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1wd3NhbHQiIHZhbHVlPSJ7JHB3c2FsdH0iIHNpemU9IjUiIG1heGxlbmd0aD0iNSIge2lmICR0b3RhbF91c2VyX2NvdW50IGd0IDB9cmVhZG9ubHk9InJlYWRvbmx5InsvaWZ9Lz4KICAgICAgPGJyLz57JG1vZC0+TGFuZygnaW5mb19wd3NhbHQnKX0KICAgIDwvcD4KICA8L2Rpdj4KPC9maWVsZHNldD4Key9pZn0KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij48L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9c3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogIDwvcD4KPC9kaXY+Cgp7JGZvcm1lbmR9]]></data>
	</file>
	<file>
	  <filename>/templates/admin_bulk_setexpiry.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCdoZHJfYnVsa19zZXRleHBpcnknKX08L2gzPgo8ZGl2IGNsYXNzPSJpbmZvcm1hdGlvbiI+eyRtb2QtPkxhbmcoJ2luZm9fYnVsa19zZXRleHBpcnknKX08L2Rpdj4KCntmb3JtX3N0YXJ0IGpvYj0kam9iIHVpZHM9JHVpZHN9CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygnZXhwaXJlcycpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICB7aHRtbF9zZWxlY3RfZGF0ZSBwcmVmaXg9InskYWN0aW9uaWR8Y2F0OidleHBpcmVzJ30iIHN0YXJ0X3llYXI9Ii0xMCIgZW5kX3llYXI9IjIwMzgiIHRpbWU9IntzdHJ0b3RpbWUoJys1IHllYXJzJyl9In0KICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfXN1Ym1pdCIgdmFsdWU9InskbW9kLT5MYW5nKCdzdWJtaXQnKX0iLz4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9Y2FuY2VsIiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ2NhbmNlbCcpfSIgZm9ybW5vdmFsaWRhdGUvPgogIDwvcD4KPC9kaXY+Cntmb3JtX2VuZH0=]]></data>
	</file>
	<file>
	  <filename>/templates/admin_bulk_setpasswd.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCdoZHJfYnVsa19zZXRwYXNzd29yZCcpfTwvaDM+CjxkaXYgY2xhc3M9ImluZm9ybWF0aW9uIj57JG1vZC0+TGFuZygnaW5mb19idWxrX3NldHBhc3N3b3JkJyl9PC9kaXY+Cgp7Zm9ybV9zdGFydCBqb2I9JGpvYiB1aWRzPSR1aWRzfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Bhc3N3b3JkJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij48aW5wdXQgdHlwZT0icGFzc3dvcmQiIG5hbWU9InskYWN0aW9uaWR9cGFzc3dvcmQiLz48L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3JlcGVhdHBhc3N3b3JkJyl9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij48aW5wdXQgdHlwZT0icGFzc3dvcmQiIG5hbWU9InskYWN0aW9uaWR9cmVwZWF0cGFzc3dvcmQiLz48L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfXN1Ym1pdCIgdmFsdWU9InskbW9kLT5MYW5nKCdzdWJtaXQnKX0iLz4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9Y2FuY2VsIiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ2NhbmNlbCcpfSIgZm9ybW5vdmFsaWRhdGUvPgogIDwvcD4KPC9kaXY+Cntmb3JtX2VuZH0=]]></data>
	</file>
	<file>
	  <filename>/templates/admin_deleteprop.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCdoZHJfZGVsZXRlcHJvcCcpfTo8L2gzPgo8ZGl2IGNsYXNzPSJ3YXJuaW5nIj57JG1vZC0+TGFuZygnd2Fybl9kZWxldGVwcm9wJyl9PC9kaXY+Cgo8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JGRlZm4ucHJvbXB0fSA8ZW0+KHskZGVmbi5uYW1lfSk8L2VtPjwvbGVnZW5kPgogIDxwPlR5cGU6IHskZmllbGR0eXBlc1skZGVmbi50eXBlXX08L3A+CjwvZmllbGRzZXQ+Cgp7JGZvcm1zdGFydH0KICA8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfY29uZmlybV9kZWxldGVwcm9wJyl9OjwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgICAgPHNlbGVjdCBpZD0iZmV1X2NvbmZpcm0iIG5hbWU9InskYWN0aW9uaWR9ZmV1X2NvbmZpcm0iPgogICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iMCI+eyRtb2QtPkxhbmcoJ25vJyl9PC9vcHRpb24+CiAgICAgICAgICA8b3B0aW9uIHZhbHVlPSIxIj57JG1vZC0+TGFuZygneWVzJyl9PC9vcHRpb24+CiAgICAgICA8L3NlbGVjdD4KICAgIDwvcD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgaWQ9ImZldV9zdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9c3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhbmNlbCIgdmFsdWU9InskbW9kLT5MYW5nKCdjYW5jZWwnKX0iLz4KICAgIDwvcD4KICA8L2Rpdj4KCnskZm9ybWVuZH0K]]></data>
	</file>
	<file>
	  <filename>/templates/admin_edituser.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICR1c2VyLT5pZH0KPGgzPnskbW9kLT5MYW5nKCdlZGl0dXNlcicpfTwvaDM+CntlbHNlfQo8aDM+eyRtb2QtPkxhbmcoJ2FkZHVzZXInKX08L2gzPgp7L2lmfQoKeyogcGFzc3dvcmQgaXMgcmVhZG9ubHkgZm9yIG5vbiBzdGFuZGFyZCBhY2NvdW50cywgYnV0IHJlcXVpcmVkIGZvciBuZXcsIHN0YW5kYXJkIGFjY291bnRzICp9CnskcHdyZWFkb25seT0nJ30Ke2lmICR1c2VyLT5ub25zdGR9eyRwd3JlYWRvbmx5PSdyZWFkb25seSd9ey9pZn0KeyRwd3JlcXVpcmVkPScnfQp7aWYgISRwd3JlYWRvbmx5ICYmICR1c2VyLT5pZCA8IDF9eyRwd3JlcXVpcmVkPSdyZXF1aXJlZCd9ey9pZn0KCntmb3JtX3N0YXJ0IHVzZXJfaWQ9JHVzZXItPmlkfQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnbmV4dCcpfSIvPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1jYW5jZWwiIHZhbHVlPSJ7JG1vZC0+TGFuZygnY2FuY2VsJyl9IiBmb3Jtbm92YWxpZGF0ZS8+CiAgPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0iY19mdWxsIGNmIj4KICAgPGxhYmVsIGNsYXNzPSJncmlkXzQgdGV4dC1yaWdodCI+eyRwcm9tcHRfdXNlcm5hbWV9OjwvbGFiZWw+CiAgIDxwIGNsYXNzPSJncmlkXzgiPgogICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfXVzZXJuYW1lIiB2YWx1ZT0ieyR1c2VyLT5uZXdfdXNlcm5hbWV9IiBzaXplPSJ7JHVuZmxkbGVufSIgbWF4bGVuZ3RoPSJ7JG1heF91bmZsZGxlbn0iIHJlcXVpcmVkLz4KICAgPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0iY19mdWxsIGNmIj4KICAgPGxhYmVsIGNsYXNzPSJncmlkXzQgdGV4dC1yaWdodCI+eyRtb2QtPkxhbmcoJ3Bhc3N3b3JkJyl9OjwvbGFiZWw+CiAgIDxwIGNsYXNzPSJncmlkXzgiPgogICAgIDxpbnB1dCB0eXBlPSJwYXNzd29yZCIgbmFtZT0ieyRhY3Rpb25pZH1wYXNzd29yZCIgdmFsdWU9InskdXNlci0+bmV3X3Bhc3N3b3JkfSIgc2l6ZT0ieyRwd2ZsZGxlbn0iIG1heGxlbmd0aD0ieyRtYXhfcHdmbGRsZW59IiB7JHB3cmVhZG9ubHl9eyRwd3JlcXVpcmVkfS8+CiAgICAge2lmICR1c2VyLT5pZCA+IDB9eyRtb2QtPkxhbmcoJ2luZm9fYWRtaW5fcGFzc3dvcmQnKX17L2lmfQogICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJjX2Z1bGwgY2YiPgogICA8bGFiZWwgY2xhc3M9ImdyaWRfNCB0ZXh0LXJpZ2h0Ij57JG1vZC0+TGFuZygncmVwZWF0cGFzc3dvcmQnKX06PC9sYWJlbD4KICAgPHAgY2xhc3M9ImdyaWRfOCI+CiAgICAgPGlucHV0IHR5cGU9InBhc3N3b3JkIiBuYW1lPSJ7JGFjdGlvbmlkfXJlcGVhdHBhc3N3b3JkIiB2YWx1ZT0ieyR1c2VyLT5yZXBlYXRfcGFzc3dvcmR9IiBzaXplPSJ7JHB3ZmxkbGVufSIgbWF4bGVuZ3RoPSJ7JG1heF9wd2ZsZGxlbn0iIHskcHdyZWFkb25seX17JHB3cmVxdWlyZWR9Lz4KICAgICB7aWYgJHVzZXItPmlkID4gMH17JG1vZC0+TGFuZygnaW5mb19hZG1pbl9yZXBlYXRwYXNzd29yZCcpfXsvaWZ9CiAgIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9ImNfZnVsbCBjZiI+CiAgIDxsYWJlbCBjbGFzcz0iZ3JpZF80IHRleHQtcmlnaHQiPjxzcGFuIHN0eWxlPSJjb2xvcjogcmVkOyI+ISE8L3NwYW4+Jm5ic3A7IHskbW9kLT5MYW5nKCdwcm9tcHRfZGlzYWJsZWQnKX06PC9sYWJlbD4KICAgPHAgY2xhc3M9ImdyaWRfOCI+CiAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT1kaXNhYmxlZCBzZWxlY3RlZD0kdXNlci0+aXNfZGlzYWJsZWR9CiAgIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9ImNfZnVsbCBjZiI+CiAgIDxsYWJlbCBjbGFzcz0iZ3JpZF80IHRleHQtcmlnaHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfZm9yY2VfY2hzZXR0aW5ncycpfTo8L2xhYmVsPgogICA8cCBjbGFzcz0iZ3JpZF84Ij4KICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPWZvcmNlX2Noc2V0dGluZ3Mgc2VsZWN0ZWQ9JHVzZXItPmZvcmNlX2NoYW5nZV9zZXR0aW5nc30KICAgPC9wPgo8L2Rpdj4KPGRpdiBjbGFzcz0iY19mdWxsIGNmIj4KICAgPGxhYmVsIGNsYXNzPSJncmlkXzQgdGV4dC1yaWdodCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9mb3JjZV9uZXdwdycpfTo8L2xhYmVsPgogICA8cCBjbGFzcz0iZ3JpZF84Ij4KICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPWZvcmNlX25ld3B3IHNlbGVjdGVkPSR1c2VyLT5mb3JjZV9wYXNzd29yZF9jaGFuZ2V9CiAgIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9ImNfZnVsbCBjZiI+CiAgIDxsYWJlbCBjbGFzcz0iZ3JpZF80IHRleHQtcmlnaHQiPjxzcGFuIHN0eWxlPSJjb2xvcjogb3JhbmdlOyI+Kio8L3NwYW4+Jm5ic3A7IHskbW9kLT5MYW5nKCdwcm9tcHRfZm9yY2VfcmV2YWxpZGF0ZScpfTo8L2xhYmVsPgogICA8cCBjbGFzcz0iZ3JpZF84Ij4KICAgICB7Y2dlX3llc25vX29wdGlvbnMgcHJlZml4PSRhY3Rpb25pZCBuYW1lPW11c3RfdmFsaWRhdGUgc2VsZWN0ZWQ9JHVzZXItPm11c3RfdmFsaWRhdGV9CiAgICAgeyRjb2RlPSRtb2QtPkdldFVzZXJUZW1wQ29kZSgkdXNlci0+aWQpfQogICAgIHtpZiAkY29kZX08c3BhbiBzdHlsZT0iY29sb3I6IG9yYW5nZTsiPnskbW9kLT5MYW5nKCdpbmZvX3ZlcmlmeWVtYWlsX3NlbnQnKX17L2lmfQogICA8L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJjX2Z1bGwgY2YiPgogICA8bGFiZWwgY2xhc3M9ImdyaWRfNCB0ZXh0LXJpZ2h0Ij57JG1vZC0+TGFuZygnZXhwaXJlcycpfTo8L2xhYmVsPgogICA8cCBjbGFzcz0iZ3JpZF84Ij4KICAgICB7aHRtbF9zZWxlY3RfZGF0ZSBwcmVmaXg9InskYWN0aW9uaWR9ZXhwaXJlcyIgdGltZT0ieyR1c2VyLT5leHBpcmVzfSIgc3RhcnRfeWVhcj0yMDAwIGVuZF95ZWFyPTIwMzd9CiAgIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9Indhcm5pbmciPnskbW9kLT5MYW5nKCd3YXJuX3N0cm9uZ3Bhc3N3b3JkJyl9PC9kaXY+Cgp7aWYgJGdyb3Vwc30KPHRhYmxlIGNsYXNzPSJwYWdldGFibGUiPgogIDx0aGVhZD4KICAgIDx0cj4KICAgICAgPHRoPnskbW9kLT5MYW5nKCdpZCcpfTwvdGg+CiAgICAgIDx0aD57JG1vZC0+TGFuZygnbmFtZScpfTwvdGg+CiAgICAgIDx0aD57JG1vZC0+TGFuZygnZGVzY3JpcHRpb24nKX08L3RoPgogICAgICA8dGggY2xhc3M9InBhZ2VpY29uIj48L3RoPgogICAgPC90cj4KICA8L3RoZWFkPgogIDx0Ym9keT4KICB7Zm9yZWFjaCAkZ3JvdXBzIGFzICRncm91cH0KICAgIHskY2hlY2tlZD0wfQogICAge2lmICR1c2VyLT5pZCA+IDAgJiYgJHVzZXItPm1lbWJlcm9mKCRncm91cC5pZCl9CiAgICAgIHskY2hlY2tlZD0xfQogICAge2Vsc2VpZiAkdXNlci0+aWQgPCAxICYmICRkZWZhdWx0X2dyb3VwID09ICRncm91cC5pZH0KICAgICAgeyRjaGVja2VkPTF9CiAgICB7L2lmfQogICAgPHRyIGNsYXNzPSJ7Y3ljbGUgdmFsdWVzPSdyb3cxLHJvdzInfSI+CiAgICAgICA8dGQ+eyRncm91cC5pZH08L3RkPgogICAgICAgPHRkPnskZ3JvdXAuZ3JvdXBuYW1lfTwvdGQ+CiAgICAgICA8dGQ+eyRncm91cC5ncm91cGRlc2N9PC90ZD4KICAgICAgIDx0ZD4KICAgICAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1tZW1iZXJvZltdIiB2YWx1ZT0ieyRncm91cC5pZH0iIHtpZiAkY2hlY2tlZH1jaGVja2Vkey9pZn0vPgogICAgICAgPC90ZD4KICAgIDwvdHI+CiAgey9mb3JlYWNofQogIDwvdGJvZHk+CjwvdGFibGU+CnsvaWZ9Cntmb3JtX2VuZH0=]]></data>
	</file>
	<file>
	  <filename>/templates/admin_edituser2.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmICR1c2VyLT5pZCA+IDAgfQo8aDM+eyRtb2QtPkxhbmcoJ2VkaXR1c2VyJyl9IHskdXNlci0+dXNlcm5hbWV9IC8geyR1c2VyLT5pZH08L2gzPgp7ZWxzZX0KPGgzPnskbW9kLT5MYW5nKCdhZGR1c2VyJyl9PC9oMz4Key9pZn0KCntmb3JtX3N0YXJ0fQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1iYWNrIiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ2JhY2snKX0iIGZvcm1ub3ZhbGlkYXRlLz4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9c3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1jYW5jZWwiIHZhbHVlPSJ7JG1vZC0+TGFuZygnY2FuY2VsJyl9IiBmb3Jtbm92YWxpZGF0ZS8+CiAgPC9wPgo8L2Rpdj4KCntmb3JlYWNoICRmaWVsZHMgYXMgJGZpZWxkfQogIHskZmxkaWQ9ImZsZF97JGZpZWxkLT5uYW1lfSJ9CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93IiBpZD0iY29udF97JGZpZWxkLT5uYW1lfSI+CiAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij48bGFiZWwge2lmICRmaWVsZC0+Y29sb3J9c3R5bGU9ImNvbG9yOiB7JGZpZWxkLT5jb2xvcn0iey9pZn0+eyRmaWVsZC0+bWFya2VyfXskZmllbGQtPnByb21wdH06PC9sYWJlbD48L3A+CiAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAge2lmICRmaWVsZC0+dHlwZSA9PSAwfQogICAgICAgIHsqIHRleHQgZmllbGQgKn0KCTxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0ieyRmbGRpZH0iIG5hbWU9InskYWN0aW9uaWR9cHJvcF97JGZpZWxkLT5uYW1lfSIgdmFsdWU9InskZmllbGQtPnZhbHVlfSIgc2l6ZT0ieyRmaWVsZC0+c2l6ZX0iIG1heGxlbj0ieyRmaWVsZC0+bWF4bGVufSIvPgogICAgIHtlbHNlaWYgJGZpZWxkLT50eXBlID09IDF9CiAgICAgICAgeyogY2hlY2tib3ggKn0KCTxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InskYWN0aW9uaWR9cHJvcF97JGZpZWxkLT5uYW1lfSIgdmFsdWU9IjAiLz4KCTxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9InskZmxkaWR9IiBuYW1lPSJ7JGFjdGlvbmlkfXByb3BfeyRmaWVsZC0+bmFtZX0iIHZhbHVlPSIxIiB7aWYgJGZpZWxkLT52YWx1ZX1jaGVja2Vkey9pZn0vPgogICAgIHtlbHNlaWYgJGZpZWxkLT50eXBlID09IDJ9CiAgICAgICAgeyogZW1haWwgKn0KCTxpbnB1dCB0eXBlPSJlbWFpbCIgaWQ9InskZmxkaWR9IiBuYW1lPSJ7JGFjdGlvbmlkfXByb3BfeyRmaWVsZC0+bmFtZX0iIHZhbHVlPSJ7JGZpZWxkLT52YWx1ZX0iIHNpemU9InskZmllbGQtPnNpemV9IiBtYXhsZW49InskZmllbGQtPm1heGxlbn0iLz4KICAgICB7ZWxzZWlmICRmaWVsZC0+dHlwZSA9PSAzfQogICAgICAgIHsqIHRleHRhcmVhICp9CiAgICAgICAge2NnZV90ZXh0YXJlYSBpZD0kZmxkaWQgbmFtZT0ieyRhY3Rpb25pZH1wcm9wX3skZmllbGQtPm5hbWV9IiB2YWx1ZT0kZmllbGQtPnZhbHVlIHd5c2l3eWc9JGZpZWxkLT53eXNpd3lnfQogICAgIHtlbHNlaWYgJGZpZWxkLT50eXBlID09IDR9CiAgICAgICAgeyogZHJvcGRvd24gKn0KCTxzZWxlY3QgaWQ9InskZmxkaWR9IiBuYW1lPSJ7JGFjdGlvbmlkfXByb3BfeyRmaWVsZC0+bmFtZX0iPgoJICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGZpZWxkLT5vcHRpb25zIHNlbGVjdGVkPSRmaWVsZC0+dmFsdWV9Cgk8L3NlbGVjdD4KICAgICB7ZWxzZWlmICRmaWVsZC0+dHlwZSA9PSA1fQogICAgICAgIHsqIG11bHRpc2VsZWN0ICp9Cgl7JHRtcD1jb3VudCgkZmllbGQtPm9wdGlvbnMpfXtpZiAkdG1wID4gOH17JHRtcD04fXsvaWZ9Cgk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ7JGFjdGlvbmlkfXByb3BfeyRmaWVsZC0+bmFtZX0iIHZhbHVlPSIiLz4KCTxzZWxlY3QgaWQ9InskZmxkaWR9IiBuYW1lPSJ7JGFjdGlvbmlkfXByb3BfeyRmaWVsZC0+bmFtZX1bXSIgc2l6ZT0ieyR0bXB9IiBtdWx0aXBsZT4KCSAge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRmaWVsZC0+b3B0aW9ucyBzZWxlY3RlZD0kZmllbGQtPnZhbHVlfTxici8+Cgk8L3NlbGVjdD4KICAgICB7ZWxzZWlmICRmaWVsZC0+dHlwZSA9PSA2fQogICAgICAgIHsqIGltYWdlICp9Cgl7JHRtcD0kZmllbGQtPmltYWdlX3VybH0KCXtpZiAkdG1wfQoJICAgPGltZyBzcmM9InskdG1wfSIgd2lkdGg9IjEwMCIgYWx0PSJ7JGZpZWxkLT52YWx1ZX0iLz4KICAgICAgICAgICA8bGFiZWw+CgkgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0ieyRhY3Rpb25pZH1wcm9wZGVsX3skZmllbGQtPm5hbWV9IiB2YWx1ZT0iMSIvPgoJICAgICB7JG1vZC0+TGFuZygncHJvbXB0X2NsZWFyJyl9CgkgICA8L2xhYmVsPgoJICAgPGJyLz4KCXsvaWZ9Cgk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ7JGFjdGlvbmlkfXByb3BfeyRmaWVsZC0+bmFtZX0iIHZhbHVlPSIqKkZJTEUqKiIvPgoJPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9InskYWN0aW9uaWR9cHJvcF97JGZpZWxkLT5uYW1lfSIvPgogICAgIHtlbHNlaWYgJGZpZWxkLT50eXBlID09IDd9CiAgICAgICAgeyogcmFkaW9idXR0b25zICp9Cgl7Zm9yZWFjaCAkZmllbGQtPm9wdGlvbnMgYXMgJGtleSA9PiAkdmFsfQoJPGxhYmVsPjxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0ieyRhY3Rpb25pZH1wcm9wX3skZmllbGQtPm5hbWV9IiB2YWx1ZT0ieyRrZXl9IiB7aWYgJGtleSA9PSAkZmllbGQtPnZhbHVlfWNoZWNrZWR7L2lmfS8+IHskdmFsfTwvbGFiZWw+Cgl7L2ZvcmVhY2h9CiAgICAge2Vsc2VpZiAkZmllbGQtPnR5cGUgPT0gOH0KICAgICAgICB7KiBkYXRlICp9Cgl7JHRtcD0ieyRhY3Rpb25pZH1wcm9wX3skZmllbGQtPm5hbWV9In0KCXtodG1sX3NlbGVjdF9kYXRlIHByZWZpeD0kdG1wIHRpbWU9JGZpZWxkLT52YWx1ZSBzdGFydF95ZWFyPTE5MDAgZW5kX3llYXI9MjAzNn0KICAgICB7L2lmfQogICAgIDwvcD57KiAucGFnZWlucHV0ICp9CiAgPC9kaXY+CnsvZm9yZWFjaH0KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWJhY2siIHZhbHVlPSJ7JG1vZC0+TGFuZygnYmFjaycpfSIgZm9ybW5vdmFsaWRhdGUvPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnc3VibWl0Jyl9Ii8+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhbmNlbCIgdmFsdWU9InskbW9kLT5MYW5nKCdjYW5jZWwnKX0iIGZvcm1ub3ZhbGlkYXRlLz4KICA8L3A+CjwvZGl2Pgp7Zm9ybV9lbmR9]]></data>
	</file>
	<file>
	  <filename>/templates/admin_import_users.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCdwcm9tcHRfaW1wb3J0dXNlcnMnKX08L2gzPgoKPGRpdiBjbGFzcz0iaW5mb3JtYXRpb24iPnskbW9kLT5MYW5nKCdpbmZvX2ltcG9ydF9mb3JtYXQnKX08L2Rpdj4KCntjZ2VfaGVscGhhbmRsZXJ9CnskZm9ybXN0YXJ0fQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3Byb21wdF9kZWxldGVfdXNlcnMnKX06PC9wPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWRlbGV0ZV91c2VycyI+CiAgICAgIHtjZ2VfeWVzbm9fb3B0aW9ucyBzZWxlY3RlZD0kb3B0aW9ucy5kZWxldGVfdXNlcnN9CiAgICA8L3NlbGVjdD4KICAgIDxici8+eyRtb2QtPkxhbmcoJ2luZm9faW1wb3J0X2RlbGV0ZV91c2VycycpfQogIDwvcD4KPC9kaXY+CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2RlbGltaXRlcicpfTo8L3A+CiAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1kZWxpbWl0ZXIiIHZhbHVlPSJ7JG9wdGlvbnMuZGVsaW1pdGVyfSIgc2l6ZT0iMyIgbWF4bGVuZ3RoPSIxIi8+CiAgPC9wPgo8L2Rpdj4KCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygncHJvbXB0X2ltcG9ydGZpbGVuYW1lJyl9OiZuYnNwO3tjZ2VfaGVscHRhZyBrZXk9J2ltcG9ydF9mb3JtYXQnfTwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJ7JGFjdGlvbmlkfWZpbGUiLz4KICA8L3A+CjwvZGl2PgoKPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9c3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1jYW5jZWwiIHZhbHVlPSJ7JG1vZC0+TGFuZygnY2FuY2VsJyl9Ii8+CiAgPC9wPgo8L2Rpdj4KeyRmb3JtZW5kfQoKPGRpdiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPgp7Y2dlX2hlbHBjb250ZW50IGtleT0naW1wb3J0X2Zvcm1hdCcgdGV4dD0kbW9kLT5MYW5nKCdpbmZvX2ltcG9ydHVzZXJzZmlsZWZvcm1hdDInKX0KPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/templates/admin_import_users2.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskbW9kLT5MYW5nKCdwcm9tcHRfaW1wb3J0dXNlcnMnKX08L2gzPgoKe2Ntc19qcXVlcnl9Cgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CnZhciBwcm9ncmVzc19tYXggPSAxMDA7CmZ1bmN0aW9uIGltcG9ydF9wcm9ncmVzc19tYXgodmFsKSB7CiAgcHJvZ3Jlc3NfbWF4ID0gcGFyc2VJbnQodmFsKTsKICBpZiggcHJvZ3Jlc3NfbWF4IDwgMSApIHByb2dyZXNzX21heCA9IDE7CiAgcHJvZ3Jlc3NfdmFsID0gMDsKICAkKCcjcHJvZ3Jlc3MnKS53aWR0aCgwKTsKfQpmdW5jdGlvbiBpbXBvcnRfcHJvZ3Jlc3Nfc2V0KG4pIHsKICBuID0gcGFyc2VJbnQobik7CiAgaWYoIG4gPCAxICkgbiA9IDE7CiAgdmFyIHYgPSBNYXRoLnJvdW5kKG4gLyBwcm9ncmVzc19tYXggKiAxMDAuMCk7CiAgJCgnI3Byb2dyZXNzJykud2lkdGgodisnJScpLmh0bWwodisnJScpOwp9CmZ1bmN0aW9uIGltcG9ydF9zdGF0dXMobXNnKSB7CiAgJCgnI3N0YXR1c19hcmVhJykuYXBwZW5kKCc8cD4nK21zZysnPC9wPicpOwp9CmZ1bmN0aW9uIGltcG9ydF93YXJuaW5nKG1zZykgewogICQoJyNzdGF0dXNfYXJlYScpLmFwcGVuZCgnPHAgY2xhc3M9ImltcG9ydF93YXJuaW5nIj4nK21zZysnPC9wPicpOwp9CmZ1bmN0aW9uIGltcG9ydF9lcnJvcihtc2cpIHsKICAkKCcjc3RhdHVzX2FyZWEnKS5hcHBlbmQoJzxwIGNsYXNzPSJpbXBvcnRfZXJyb3IiPicrbXNnKyc8L3A+Jyk7Cn0KZnVuY3Rpb24gaW1wb3J0X2ZpbmlzaCgpIHsKICBhbGVydCgnYWxsIGRvbmUnKTsKICAkKCcjZmluaXNoX2FyZWEnKS5zaG93KCdzbG93Jyk7Cn0KPC9zY3JpcHQ+Cgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgojbWV0ZXIgewogIG1hcmdpbi1sZWZ0OiBhdXRvOwogIG1hcmdpbi1yaWdodDogYXV0bzsKICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwogIGNvbG9yOiBncmF5OwogIGhlaWdodDogMmVtOwogIG1hcmdpbi1ib3R0b206IDJlbTsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KI3Byb2dyZXNzIHsKICBkaXNwbGF5OiBibG9jazsKICBvdmVyZmxvdzogaGlkZGVuOwogIGhlaWdodDogMTAwJTsKICBiYWNrZ3JvdW5kLWNvbG9yOiAgY3lhbjsKICB2ZXJ0aWNhbC1hbGlnbjogY2VudGVyOwogIGxpbmUtaGVpZ2h0OiAyZW07Cn0KI3N0YXR1c19hcmVhID4gcCB7CiAgZm9udC1zaXplOiAxMXB4OwogIGxpbmUtaGVpZ2h0OiAxLjFlbTsKfQojc3RhdHVzX2FyZWEgPiBwLmltcG9ydF93YXJuaW5nIHsKICBiYWNrZ3JvdW5kOiAjZmFmNmQ0OwogIGJvcmRlcjogMXB4IHNvbGlkICNlNmMyNmU7Cn0KI3N0YXR1c19hcmVhID4gcC5pbXBvcnRfZXJyb3IgewogIGJhY2tncm91bmQ6ICNmMmQ0Y2U7CiAgYm9yZGVyOiAxcHggc29saWQgI2FlNDMyZTsKfQojZmluaXNoX2FyZWEgewogIG1hcmdpbi10b3A6IDFlbTsKICBtYXJnaW4tYm90dG9tOiAxZW07Cn0KPC9zdHlsZT4KCjxkaXYgaWQ9Im1ldGVyIj4KICA8c3BhbiBpZD0icHJvZ3Jlc3MiPjwvc3Bhbj4KPC9kaXY+Cgo8ZGl2IGlkPSJzdGF0dXNfYXJlYSI+PC9kaXY+Cgo8ZGl2IGlkPSJmaW5pc2hfYXJlYSIgY2xhc3M9InBhZ2VvdmVyZmxvdyIgc3R5bGU9ImRpc3BsYXk6IG5vbmU7Ij4KICA8ZGl2IGNsYXNzPSJwYWdlaW5wdXQiPgogICAgPGEgaHJlZj0ieyRyZXR1cm5fdXJsfSI+eyRtb2QtPkxhbmcoJ3Byb21wdF9yZXR1cm4nKX08L2E+CiAgPC9kaXY+CjwvZGl2Pgo8aWZyYW1lIGlkPSJpbXBvcnRfaWZyYW1lIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIHNyYz0ieyRpZnJhbWVfc3JjfSI+PC9pZnJhbWU+]]></data>
	</file>
	<file>
	  <filename>/templates/edituserprops.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyR0aXRsZX0Ke2lmIGlzc2V0KCRtZXNzYWdlKSB9CiAge2lmIGlzc2V0KCRlcnJvcikgfQogICAgPHA+PGZvbnQgY29sb3I9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9Cnskc3RhcnRmb3JtfQogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3Byb3BuYW1lfTwvcD4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfcHJvcG5hbWV9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3Byb3B2YWx1ZX08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3Byb3B2YWx1ZX08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaGlkZGVucGFyYW1zfXskc3VibWl0fTwvcD4KICA8L2Rpdj4KeyRlbmRmb3JtfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/error.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGVfZXJyb3J9PC9oMz4Ke2lmIGlzc2V0KCRtZXNzYWdlKX08cD57JG1lc3NhZ2V9PC9wPnsvaWZ9Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/forgotpw_templateform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19CjxwPnskcHJvbXB0X3RlbXBsYXRlMX08L3A+CnskaW5wdXRfdGVtcGxhdGUxfQo8YnIvPgo8cD57JHByb21wdF90ZW1wbGF0ZTJ9PC9wPgp7JGlucHV0X3RlbXBsYXRlMn0KPGJyLz4Ke2lmIGlzc2V0KCRwcm9tcHRfdGVtcGxhdGUzKX0KPHA+eyRwcm9tcHRfdGVtcGxhdGUzfTwvcD4KeyRpbnB1dF90ZW1wbGF0ZTN9Cjxici8+CnsvaWZ9Cnskc3VibWl0fXskZGVmYXVsdHN9CnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/templates/grouplist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[CntpZiAkbnByb3BzID09IDB9CiAgPGRpdiBjbGFzcz0icmVkIGNlbnRlciI+eyRtb2QtPkxhbmcoJ2Vycm9yX25vcHJvcGVydGllcycpfTwvZGl2Pgp7ZWxzZX0KICB7aWYgIWlzc2V0KCRpdGVtY291bnQpIHx8ICRpdGVtY291bnQgPT0gMH0KICAgIDxkaXYgY2xhc3M9ImluZm9ybWF0aW9uIj4wJm5ic3A7eyRncm91cHNmb3VuZH08L2Rpdj4KICB7L2lmfQogIDxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgICA8ZGl2IGNsYXNzPSJncmlkXzgiIHN0eWxlPSJtYXJnaW4tbGVmdDogMDsiPgogICAgICB7aWYgJHByb3Bjb3VudCA+IDB9eyRhZGRncm91cGxpbmt8ZGVmYXVsdDonJ30mbmJzcDt7L2lmfQogICAgICB7aWYgaXNzZXQoJGl0ZW1jb3VudCkgJiYgJGl0ZW1jb3VudCA+IDAgJiYgaXNzZXQoJGV4cG9ydGxpbmspfXskZXhwb3J0bGlua30mbmJzcDt7L2lmfQogICAgICB7JGltcG9ydGxpbmt8ZGVmYXVsdDonJ30KICAgIDwvZGl2PgogICAge2lmIGlzc2V0KCRpdGVtY291bnQpICYmICRpdGVtY291bnQgPiAwfQogICAgPGRpdiBjbGFzcz0iZ3JpZF80IHRleHQtcmlnaHQiPnskaXRlbWNvdW50fSZuYnNwO3skZ3JvdXBzZm91bmR9PC9kaXY+CiAgICB7L2lmfQogICAgPGRpdiBjbGFzcz0iY2xlYXJiIj48L2Rpdj4KICA8L2Rpdj4KCiAge2lmIGlzc2V0KCRpdGVtcyl9CiAgPHRhYmxlIGNsYXNzPSJwYWdldGFibGUiPgoJPHRoZWFkPgoJCTx0cj4KCQkJPHRoIHdpZHRoPSI1JSI+eyRpZHRleHR9PC90aD4KCQkJPHRoPnskbmFtZXRleHR9PC90aD4KCQkJPHRoPnskZGVzY3RleHR9PC90aD4KCQkJPHRoPnskbW9kLT5MYW5nKCdtZW1iZXJzJyl9PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiB7bGl0ZXJhbH17c29ydGVyOiBmYWxzZX17L2xpdGVyYWx9Ij4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIHtsaXRlcmFsfXtzb3J0ZXI6IGZhbHNlfXsvbGl0ZXJhbH0iPiZuYnNwOzwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24ge2xpdGVyYWx9e3NvcnRlcjogZmFsc2V9ey9saXRlcmFsfSI+Jm5ic3A7PC90aD4KCQk8L3RyPgoJPC90aGVhZD4KCTx0Ym9keT4KCQl7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWVudHJ5fQoJCTx0ciBjbGFzcz0ieyRlbnRyeS0+cm93Y2xhc3N9Ij4KCQkJPHRkPnskZW50cnktPmlkfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5uYW1lfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5kZXNjfTwvdGQ+CgkgICAgICAgICAgICAgICAgPHRkPnskZW50cnktPm51c2Vyc3xkZWZhdWx0OiRtb2QtPkxhbmcoJ25vdF9hdmFpbGFibGUnKX08L3RkPgoJCQk8dGQ+eyRlbnRyeS0+ZXhwb3J0bGlua3xkZWZhdWx0OicnfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5lZGl0bGlua3xkZWZhdWx0OicnfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5kZWxldGVsaW5rfGRlZmF1bHQ6Jyd9PC90ZD4KCQk8L3RyPgoJCXsvZm9yZWFjaH0KCTwvdGJvZHk+CiAgPC90YWJsZT4KICB7L2lmfQp7L2lmfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/group_xml.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iSVNPLTg4NTktMSI/Pgo8IURPQ1RZUEUgZmV1X2dyb3VwIFsKICA8IUVMRU1FTlQgZmV1X2dyb3VwIChncnBfbmFtZSxncnBfZGVzY3JpcHRpb24scHJvcGVydHkqKT4KICA8IUVMRU1FTlQgZ3JwX25hbWUgKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBncnBfZGVzY3JpcHRpb24gKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBwcm9wZXJ0eSAocHJvcF9uYW1lLHByb3BfcHJvbXB0LHByb3BfdHlwZSxwcm9wX29wdGlvbj8scHJvcF9sZW5ndGg/LHByb3BfbWF4bGVuZ3RoPyxwcm9wX3NvcnRvcmRlcixwcm9wX3N0YXR1cyxwcm9wX2xvc3R1bmZsYWcpPgogIDwhRUxFTUVOVCBwcm9wX25hbWUgKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBwcm9wX3Byb21wdCAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIHByb3BfdHlwZSAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIHByb3Bfb3B0aW9uIChvcF9uYW1lLG9wX3RleHQpPgogIDwhRUxFTUVOVCBwcm9wX2xlbmd0aCAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIHByb3BfbWF4bGVuZ3RoICgjUENEQVRBKT4KICA8IUVMRU1FTlQgcHJvcF9zb3J0b3JkZXIgKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBwcm9wX3N0YXR1cyAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIHByb3BfbG9zdHVuZmxhZyAoI1BDREFUQSk+CiAgPCFFTEVNRU5UIG9wX25hbWUgKCNQQ0RBVEEpPgogIDwhRUxFTUVOVCBvcF90ZXh0ICgjUENEQVRBKT4KXT4KPGZldV9ncm91cD4KICA8Z3JwX25hbWU+eyRncm91cF9uYW1lfTwvZ3JwX25hbWU+CiAgPGdycF9kZXNjcmlwdGlvbj57JGdyb3VwX2Rlc2NyaXB0aW9ufTwvZ3JwX2Rlc2NyaXB0aW9uPgp7Zm9yZWFjaCBmcm9tPSRwcm9wZXJ0aWVzIGl0ZW09J3Byb3AnfQogIDxwcm9wZXJ0eT4KICAgIDxwcm9wX25hbWU+eyRwcm9wLT5uYW1lfTwvcHJvcF9uYW1lPgogICAgPHByb3BfcHJvbXB0PjwhW0NEQVRBW3skcHJvcC0+cHJvbXB0fV1dPjwvcHJvcF9wcm9tcHQ+CiAgICA8cHJvcF90eXBlPnskcHJvcC0+dHlwZX08L3Byb3BfdHlwZT4KICAgIHtpZiBpc3NldCgkcHJvcC0+b3B0aW9ucyl9e2ZvcmVhY2ggZnJvbT0kcHJvcC0+b3B0aW9ucyBpdGVtPSdvcHRpb24nfQogICAgPHByb3Bfb3B0aW9uPgogICAgICA8b3BfbmFtZT48IVtDREFUQVt7JG9wdGlvbi0+bmFtZX1dXT48L29wX25hbWU+CiAgICAgIDxvcF90ZXh0PjwhW0NEQVRBW3skb3B0aW9uLT50ZXh0fV1dPjwvb3BfdGV4dD4KICAgIDwvcHJvcF9vcHRpb24+CiAgICB7L2ZvcmVhY2h9ey9pZn0KICAgIHtpZiBpc3NldCgkcHJvcC0+bGVuZ3RoKX0KICAgIDxwcm9wX2xlbmd0aD57JHByb3AtPmxlbmd0aH08L3Byb3BfbGVuZ3RoPgogICAgey9pZn0KICAgIHtpZiBpc3NldCgkcHJvcC0+bWF4bGVuZ3RoKX0KICAgIDxwcm9wX21heGxlbmd0aD57JHByb3AtPm1heGxlbmd0aH08L3Byb3BfbWF4bGVuZ3RoPgogICAgey9pZn0KICAgIDxwcm9wX3NvcnRvcmRlcj57JHByb3AtPnNvcnRvcmRlcn08L3Byb3Bfc29ydG9yZGVyPgogICAgPHByb3Bfc3RhdHVzPnskcHJvcC0+c3RhdHVzfTwvcHJvcF9zdGF0dXM+CiAgICA8cHJvcF9sb3N0dW5mbGFnPnskcHJvcC0+bG9zdHVuZmxhZ308L3Byb3BfbG9zdHVuZmxhZz4KICA8L3Byb3BlcnR5Pgp7L2ZvcmVhY2h9CjwvZmV1X2dyb3VwPg==]]></data>
	</file>
	<file>
	  <filename>/templates/importgroup.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfZmlsZW5hbWV9PC9wPgogICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9maWxlbmFtZX08L3A+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4KICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfbmV3bmFtZX08L3A+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X25ld25hbWV9PC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdH0mbmJzcDt7JGNhbmNlbH08L3A+CiAgPC9kaXY+CnskZW5kZm9ybX0K]]></data>
	</file>
	<file>
	  <filename>/templates/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/templates/orig_changesettings.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBjaGFuZ2Ugc2V0dGluZ3MgdGVtcGxhdGUgLS0+CjxkaXYgaWQ9ImZldV9jaGFuZ2VzZXR0aW5nc2Zvcm0iPgo8aDQ+eyRtb2QtPkxhbmcoJ3VzZXJfc2V0dGluZ3MnKX08L2g0PgoKe2lmIGlzc2V0KCRtZXNzYWdlKSAmJiAkbWVzc2FnZSAhPSAnJ30KICB7aWYgaXNzZXQoJGVycm9yKSAmJiAkZXJyb3IgIT0gJyd9CiAgICA8cCBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPnskbWVzc2FnZX08L3A+CiAge2Vsc2V9CiAgICA8cCBjbGFzcz0iYWxlcnQgYWxlcnQtaW5mbyI+eyRtZXNzYWdlfTwvcD4KICB7L2lmfQp7L2lmfQoKeyRzdGFydGZvcm19CiAge2lmICRjb250cm9sY291bnQgPiAwfQogIHtmb3JlYWNoICRjb250cm9scyBhcyAka2V5PT4kZmllbGR9CiAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICA8bGFiZWwgZm9yPSIkZmllbGQtPmlucHV0X2lkIiBjbGFzcz0iY29sLXNtLTMgdGV4dC1yaWdodCIgc3R5bGU9ImNvbG9yOiB7JGZpZWxkLT5jb2xvcnxkZWZhdWx0Oidpbmhlcml0J30iPnskZmllbGQtPm1hcmtlcnxkZWZhdWx0OicnfSB7JGZpZWxkLT5wcm9tcHR9OjwvbGFiZWw+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS05Ij4KICAgICAgICB7JGZpZWxkLT5oaWRkZW58ZGVmYXVsdDonJ30KICAgICAgICB7aWYgaXNzZXQoJGZpZWxkLT5oaWRkZW4pfXskZmllbGQtPmhpZGRlbn17L2lmfQoKCXsqIGJ1aWxkIHRoZSBmaWVsZCBpdHNlbGYgKn0KCXtpZiAkZmllbGQtPnR5cGUgPT0gJzAnfSB7KiB0ZXh0ICp9CgkgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0ieyRmaWVsZC0+aW5wdXRfaWR9IiBjbGFzcz0iZm9ybS1jb250cm9sIiBuYW1lPSJ7JGZpZWxkLT5pbnB1dF9uYW1lfSIgc2l6ZT0ieyRmaWVsZC0+bGVuZ3RofSIgbWF4bGVuZ3RoPSJ7JGZpZWxkLT5tYXhsZW5ndGh9IiB2YWx1ZT0ieyRmaWVsZC0+dmFsdWV9IiB7aWYgJGZpZWxkLT5yZWFkb25seX1yZWFkb25seXsvaWZ9Lz4KCXtlbHNlaWYgJGZpZWxkLT50eXBlID09ICdwYXNzd29yZCd9IHsqIHRleHQgKn0KCSAgPGlucHV0IHR5cGU9InBhc3N3b3JkIiBpZD0ieyRmaWVsZC0+aW5wdXRfaWR9IiBjbGFzcz0iZm9ybS1jb250cm9sIiBuYW1lPSJ7JGZpZWxkLT5pbnB1dF9uYW1lfSIgc2l6ZT0ieyRmaWVsZC0+bGVuZ3RofSIgbWF4bGVuZ3RoPSJ7JGZpZWxkLT5tYXhsZW5ndGh9IiB2YWx1ZT0ieyRmaWVsZC0+dmFsdWV9IiB7aWYgJGZpZWxkLT5yZWFkb25seX1yZWFkb25seXsvaWZ9Lz4KCXtlbHNlaWYgJGZpZWxkLT50eXBlID09IDJ9IHsqIGVtYWlsICp9CgkgIDxpbnB1dCB0eXBlPSJlbWFpbCIgaWQ9InskZmllbGQtPmlucHV0X2lkfSIgY2xhc3M9ImZvcm0tY29udHJvbCIgbmFtZT0ieyRmaWVsZC0+aW5wdXRfbmFtZX0iIHNpemU9InskZmllbGQtPmxlbmd0aH0iIG1heGxlbmd0aD0ieyRmaWVsZC0+bWF4bGVuZ3RofSIgdmFsdWU9InskZmllbGQtPnZhbHVlfSIge2lmICRmaWVsZC0+cmVhZG9ubHl9cmVhZG9ubHl7L2lmfS8+Cgl7ZWxzZWlmICRmaWVsZC0+dHlwZSA9PSAzfSB7KiB0ZXh0YXJlYSAqfQogICAgICAgICAge2NnZV90ZXh0YXJlYSBpZD0kZmllbGQtPmlucHV0X2lkIHd5c2l3eWc9JGZpZWxkLT53eXNpd3lnIG5hbWU9JGZpZWxkLT5pbnB1dF9uYW1lIGNvbnRlbnQ9JGZpZWxkLT52YWx1ZSBjbGFzcz0iZm9ybS1jb250cm9sIn0KCXtlbHNlaWYgJGZpZWxkLT50eXBlID09IDF9IHsqIGNoZWNrYm94ICp9CgkgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InskZmllbGQtPmlucHV0X25hbWV9IiB2YWx1ZT0iMCIvPgoJICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJ7JGZpZWxkLT5pbnB1dF9pZH0iIGNsYXNzPSJjaGVja2JveCIgbmFtZT0ieyRmaWVsZC0+aW5wdXRfbmFtZX0iIHZhbHVlPSIxIiB7aWYgJGZpZWxkLT52YWx1ZX1jaGVja2Vkey9pZn0vPgoJe2Vsc2VpZiAkZmllbGQtPnR5cGUgPT0gNH0geyogZHJvcGRvd24gKn0KCSAgIDxzZWxlY3QgaWQ9InskZmllbGQtPmlucHV0X2lkfSIgY2xhc3M9ImZvcm0tY29udHJvbCIgbmFtZT0ieyRmaWVsZC0+aW5wdXRfbmFtZX0iIHtpZiAkZmllbGQtPnJlYWRvbmx5fXJlYWRvbmx5ey9pZn0+CgkgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGZpZWxkLT5vcHRpb25zIHNlbGVjdGVkPSRmaWVsZC0+dmFsdWV9CgkgICA8L3NlbGVjdD4KCXtlbHNlaWYgJGZpZWxkLT50eXBlID09IDV9IHsqIG11bHRpc2VsZWN0ICp9CgkgICA8c2VsZWN0IGlkPSJ7JGZpZWxkLT5pbnB1dF9pZH0iIGNsYXNzPSJmb3JtLWNvbnRyb2wiIG5hbWU9InskZmllbGQtPmlucHV0X25hbWV9W10iIHtpZiAkZmllbGQtPnJlYWRvbmx5fXJlYWRvbmx5ey9pZn0gbXVsdGlwbGU+CgkgICAgICB7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGZpZWxkLT5vcHRpb25zIHNlbGVjdGVkPSRmaWVsZC0+c2VsZWN0ZWR9CgkgICA8L3NlbGVjdD4KCXtlbHNlaWYgJGZpZWxkLT50eXBlID09IDd9IHsqIHJhZGlvIGdyb3VwICp9CgkgICB7Zm9yZWFjaCAkZmllbGQtPm9wdGlvbnMgYXMgJGtleSA9PiAkdmFsfQoJICAgICAgPGxhYmVsPjxpbnB1dCB0eXBlPSJyYWRpbyIgY2xhc3M9ImZvcm0tY29udHJvbCIgbmFtZT0ieyRmaWVsZC0+aW5wdXRfbmFtZX0iIHZhbHVlPSJ7JGtleX0iIHtpZiAka2V5PT0kZmllbGQtPnZhbHVlfWNoZWNrZWQ9ImNoZWNrZWQiey9pZn0+IHskdmFsfTwvbGFiZWw+CgkgICB7L2ZvcmVhY2h9Cgl7ZWxzZWlmICRmaWVsZC0+dHlwZSA9PSA2fSB7KiBpbWFnZSAqfQoJICAge2lmIGlzc2V0KCRmaWVsZC0+aW1hZ2VfdXJsKSAmJiAkZmllbGQtPmltYWdlX3VybH08aW1nIHNyYz0ieyRmaWVsZC0+aW1hZ2VfdXJsfSIgYWx0PSJ7JGZpZWxkLT5pbWFnZV91cmx9IiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIvPnsvaWZ9CgkgICB7aWYgaXNzZXQoJGZpZWxkLT5wcm9tcHQyKSAmJiAkZmllbGQtPnByb21wdDJ9PGxhYmVsPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgY2xhc3M9ImNoZWNrYm94IiBuYW1lPSJ7JGZpZWxkLT5pbnB1dF9uYW1lMn0iIHZhbHVlPSJjbGVhciIvPiB7JGZpZWxkLT5wcm9tcHQyfTwvbGFiZWw+ey9pZn0KCSAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InskZmllbGQtPmlucHV0X25hbWV9IiB2YWx1ZT0ieyRmaWVsZC0+dmFsdWV9Ii8+CiAJICAgPGlucHV0IHR5cGU9ImZpbGUiIGlkPSJ7JGZpZWxkLT5pbnB1dF9pZH0iIGNsYXNzPSJmb3JtLWNvbnRyb2wiIG5hbWU9InskZmllbGQtPmlucHV0X25hbWV9IiB7aWYgJGZpZWxkLT5yZWFkb25seX1yZWFkb25seXsvaWZ9Lz4KCXtlbHNlaWYgJGZpZWxkLT50eXBlID09IDh9IHsqIGRhdGUgKn0KCSAgIHtodG1sX3NlbGVjdF9kYXRlIHByZWZpeD0kZmllbGQtPmlucHV0X25hbWUgc3RhcnRfeWVhcj0nLTUnIGVuZF95ZWFyPScrMTAnIHRpbWU9JGZpZWxkLT52YWx1ZX0KCXsvaWZ9CiAgICAgICAgeyRmaWVsZC0+YWRkdGV4dHxkZWZhdWx0OicnfQogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIHsvZm9yZWFjaH0KICB7L2lmfQoKICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgPGRpdiBjbGFzcz0iY29sLXNtLTMiPjwvZGl2PgogICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICA8YnV0dG9uIHR5cGU9InN1Ym1pdCIgY2xhc3M9ImJ0biBidG5fYWN0aXZlIiBuYW1lPSJ7JGFjdGlvbmlkfXN1Ym1pdCI+eyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfTwvYnV0dG9uPgogICAgPC9kaXY+CiAgPC9kaXY+CnskaGlkZGVufGRlZmF1bHQ6Jyd9eyRlbmRmb3JtfQo8L2Rpdj4KPCEtLSBjaGFuZ2Ugc2V0dGluZ3MgdGVtcGxhdGUgLS0+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_force_newpw_form.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogc3lzdGVtIGRlZmF1bHQgZm9yY2UgbmV3IHBhc3N3b3JkIGZvcm0gdGVtcGxhdGUgKn0KPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtaW5mbyI+eyRtb2QtPkxhbmcoJ21zZ19mb3JjZV9uZXdwdycpfTwvZGl2PgoKe2lmIGlzc2V0KCRlcnJvcil9CjxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWRhbmdlciI+eyRlcnJvcn08L2Rpdj4Key9pZn0KCnskZm9ybXN0YXJ0fQo8ZGl2IGNsYXNzPSJyb3ciPgogIDxkaXYgY2xhc3M9ImNvbC14cy0zIHRleHQtcmlnaHQiPiogeyRtb2QtPkxhbmcoJ3Bhc3N3b3JkJyl9OjwvZGl2PgogIDxkaXYgY2xhc3M9ImNvbC14cy05Ij4KICAgIDxpbnB1dCB0eXBlPSJwYXNzd29yZCIgbmFtZT0ieyRhY3Rpb25pZH1mZXVfcGFzc3dvcmQiIHZhbHVlPSIiIHJlcXVpcmVkLz4KICA8L2Rpdj4KPC9kaXY+CjxkaXYgY2xhc3M9InJvdyI+CiAgPGRpdiBjbGFzcz0iY29sLXhzLTMgdGV4dC1yaWdodCI+KiB7JG1vZC0+TGFuZygncmVwZWF0cGFzc3dvcmQnKX06PC9kaXY+CiAgPGRpdiBjbGFzcz0iY29sLXhzLTkiPgogICAgPGlucHV0IHR5cGU9InBhc3N3b3JkIiBuYW1lPSJ7JGFjdGlvbmlkfWZldV9yZXBlYXRwYXNzd29yZCIgdmFsdWU9IiIgcmVxdWlyZWQvPgogIDwvZGl2Pgo8L2Rpdj4KPGRpdiBjbGFzcz0icm93Ij4KICA8ZGl2IGNsYXNzPSJjb2wteHMtMyI+Jm5ic3A7PC9kaXY+CiAgPGRpdiBjbGFzcz0iY29sLXhzLTkiPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1mZXVfc3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogIDwvZGl2Pgo8L2Rpdj4KeyRmb3JtZW5kfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_forgotpassword1.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogZm9yZ290IHBhc3N3b3JkIHRlbXBsYXRlICp9CjxoND57JG1vZC0+TGFuZygndGl0bGVfZm9yZ290cHcnKX08L2g0Pgp7aWYgIWVtcHR5KCRtZXNzYWdlKSB9CiAge2lmICFlbXB0eSgkZXJyb3IpIH0KICAgIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWRhbmdlciI+eyRtZXNzYWdlfTwvZGl2PgogIHtlbHNlfQogICAgPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtaW5mbyI+eyRtZXNzYWdlfTwvZGl2PgogIHsvaWZ9CntlbHNlfQogIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWluZm8iPnskbW9kLT5MYW5nKCdsb3N0cHdfbWVzc2FnZScpfTwvZGl2Pgp7L2lmfQoKe2lmICFpc3NldCgkZm9yZ290cHdkb25lKX0KICB7aWYgaXNzZXQoJHN0YXJ0Zm9ybSl9CiAgICB7JHN0YXJ0Zm9ybX0KICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS0yIHRleHQtcmlnaHQiPgogICAgICAgIHtpZiAkdXNlcm5hbWVfaXNfZW1haWx9CiAgICAgICAgICB7JG1vZC0+TGFuZygncHJvbXB0X2VtYWlsJyl9OgogICAgICAgIHtlbHNlfQogICAgICAgICAgeyRtb2QtPkxhbmcoJ3Byb21wdF91c2VybmFtZScpfToKICAgICAgICB7L2lmfQogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTEwIj4KICAgICAgICA8aW5wdXQgbmFtZT0ieyRhY3Rpb25pZH1mZXVfdXNlcm5hbWUiIHR5cGU9IntpZiAkdXNlcm5hbWVfaXNfZW1haWx9ZW1haWx7ZWxzZX10ZXh0ey9pZn0iIHNpemU9InskdW5mbGRsZW59IiBtYXhsZW5ndGg9InskbWF4X3VuZmxkbGVufSIgdmFsdWU9InskdXNlcm5hbWV9IiByZXF1aXJlZC8+ICoKICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAgIHtpZiBpc3NldCgkY2FwdGNoYSl9CiAgICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMiB0ZXh0LXJpZ2h0Ij57JGNhcHRjaGFfdGl0bGV9OjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMTAiPnskY2FwdGNoYX0KICAgICAgICB7aWYgaXNzZXQoJGlucHV0X2NhcHRjaGEpfTxkaXYgY2xhc3M9InJvdyI+eyRpbnB1dF9jYXB0Y2hhfTwvcD57L2lmfQogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgey9pZn0KICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS0xMCBjb2wtc20tb2Zmc2V0LTIiPgogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9ZmV1X3N1Ym1pdCIgdmFsdWU9InskbW9kLT5MYW5nKCdzdWJtaXQnKX0iLz4KICAgICAgICA8aW5wdXQgaWQ9ImZldV9jYW5jZWwiIHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1mZXVfY2FuY2VsIiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ2NhbmNlbCcpfSIgZm9ybW5vdmFsaWRhdGUvPgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogICAgeyRlbmRmb3JtfQogIHsvaWZ9CnsvaWZ9Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_forgotpassword2.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogdmVyaWZ5IGVtYWlsIHRlbXBsYXRlIC0tIGZvcm1lcmx5IGZvZ290IHBhc3N3b3JkIGVtYWlsIHRlbXBsYXRlICp9CjxoMz57JHRpdGxlfTwvaDM+CjxkaXY+eyRtZXNzYWdlfTwvZGl2Pgo8aDQ+eyRwcm9tcHRfY29kZX06IHskZGF0YV9jb2RlfTwvaDQ+CjxwPnskcHJvbXB0X2xpbmt9OiA8YSBocmVmPSJ7JGRhdGFfdXJsfSI+eyRkYXRhX3VybH08L2E+PC9wPgp7L3N0cmlwfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_forgotpassword3.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogZm9yZ290IHBhc3N3b3JkIHZlcmlmaWNhdGlvbiB0ZW1wbGF0ZSAqfQo8aDQ+eyRtb2QtPkxhbmcoJ3ZlcmlmeV9pZGVudGl0eScpfTwvaDQ+CntpZiAhZW1wdHkoJG1lc3NhZ2UpfQogIHtpZiAhZW1wdHkoJGVycm9yKSB9CiAgICA8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1kYW5nZXIiPnskbWVzc2FnZX08L2Rpdj4KICB7ZWxzZX0KICAgIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWluZm8iPnskbWVzc2FnZX08L2Rpdj4KICB7L2lmfQp7L2lmfQoKe2lmIGlzc2V0KCRzdGFydGZvcm0pfQogIHskc3RhcnRmb3JtfQogIDxkaXYgY2xhc3M9InJvdyI+CiAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMyB0ZXh0LXJpZ2h0Ij57JG1vZC0+TGFuZygncHJvbXB0X3VzZXJuYW1lJyl9OjwvZGl2PgogICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICA8aW5wdXQgdHlwZT0ie2lmICR1c2VybmFtZV9pc19lbWFpbH1lbWFpbHtlbHNlfXRleHR7L2lmfSIgbmFtZT0ieyRhY3Rpb25pZH1mZXVfdXNlcm5hbWUiIHNpemU9InskdW5mbGRsZW59IiBtYXhsZW5ndGg9InskbWF4X3VuZmxkbGVufSIgdmFsdWU9InskdXNlcm5hbWV9IiBkaXNhYmxlZD0iZGlzYWJsZWQiLz4KICAgIDwvZGl2PgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InJvdyI+CiAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMyB0ZXh0LXJpZ2h0Ij57JG1vZC0+TGFuZygncHJvbXB0X2NvZGUnKX06PC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWZldV9jb2RlIiB2YWx1ZT0ieyRjb2RlfSIgc2l6ZT0iNDAiIG1heGxlbmd0aD0iNDAiIHJlcXVpcmVkIC8+ICoKICAgIDwvZGl2PgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InJvdyI+CiAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMyB0ZXh0LXJpZ2h0Ij57JG1vZC0+TGFuZygncHJvbXB0X3Bhc3N3b3JkJyl9OjwvZGl2PgogICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICA8aW5wdXQgdHlwZT0icGFzc3dvcmQiIG5hbWU9InskYWN0aW9uaWR9ZmV1X3Bhc3N3b3JkMSIgdmFsdWU9InskcGFzc3dvcmQxfSIgc2l6ZT0ieyRwd2ZsZGxlbn0iIG1heGxlbmd0aD0ieyRtYXhfcHdmbGRsZW59IiByZXF1aXJlZC8+ICoKICAgIDwvZGl2PgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InJvdyI+CiAgICA8ZGl2IGNsYXNzPSJjb2wtc20tMyB0ZXh0LXJpZ2h0Ij57JG1vZC0+TGFuZygncmVwZWF0cGFzc3dvcmQnKX06PC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOSI+CiAgICAgIDxpbnB1dCB0eXBlPSJwYXNzd29yZCIgbmFtZT0ieyRhY3Rpb25pZH1mZXVfcGFzc3dvcmQyIiB2YWx1ZT0ieyRwYXNzd29yZDJ9IiBzaXplPSJ7JHB3ZmxkbGVufSIgbWF4bGVuZ3RoPSJ7JG1heF9wd2ZsZGxlbn0iIHJlcXVpcmVkLz4gKgogICAgPC9kaXY+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0icm93Ij4KICAgIDxkaXYgY2xhc3M9ImNvbC1zbS0zIHRleHQtcmlnaHQiPiZuYnNwOzwvZGl2PgogICAgPGRpdiBjbGFzcz0iY29sLXNtLTkiPgogICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWZldV9zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnc3VibWl0Jyl9Ii8+CiAgICA8L2Rpdj4KICA8L2Rpdj4KeyRlbmRmb3JtfQp7L2lmfQo=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_loginform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogbG9naW4gZm9ybSB0ZW1wbGF0ZSAqfQp7KiB0aGlzIGlzIGEgc2FtcGxlIHRlbXBsYXRlLCBmZWVsIGZyZWUgdG8gY3VzdG9taXplIGl0ICp9CntpZiBpc3NldCgkYWx0X2xvZ2luZm9ybSl9CiAgPGRpdiBjbGFzcz0icm93IiBpZD0iYWx0bG9naW4iPnskYWx0X2xvZ2luZm9ybX08L2Rpdj48YnIvPgp7L2lmfQoKPGZpZWxkc2V0IGlkPSJsb2dpbmZvcm0iPgogIDxsZWdlbmQ+eyRGcm9udEVuZFVzZXJzLT5MYW5nKCdwcm9tcHRfbm9ybWFsbG9naW4nKX06PC9sZWdlbmQ+CiAgeyRzdGFydGZvcm19CgogIHsqCiAgICogYSBzaW1wbGUgaG9uZXlwb3QgY2FwdGNoYS4uLi5pZiB0aGlzIGZpZWxkIGhhcyBhIHZhbHVlIGFmdGVyIHN1Ym1pdCBhbiBlcnJvciB3aWxsIGJlIHRocm93bgogICAqIGRlbGV0aW5nIHRoaXMgZmllbGQgd2lsbCBzaW1wbHkgZGlzYWJsZSB0aGUgaG9uZXlwb3QuCiAgICogaXQgaXMgaW1wb3J0YW50IHRoYXQgdGhlIGZpZWxkIGJlIGhpZGRlbiB3aXRoIENTUyByYXRoZXIgdGhhbiB1c2luZyBhIGhpZGRlbiBpbnB1dCBmaWVsZC4KICAgKn0KICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1mZXVfX2RhdGEiIHZhbHVlPSIiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIvPgoKICB7aWYgJGVycm9yfTxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWRhbmdlciI+eyRlcnJvcn08L2Rpdj57L2lmfQogIDxkaXYgY2xhc3M9InJvdyI+CiAgICA8cCBjbGFzcz0iY29sLW1kLTQgdGV4dC1yaWdodCI+PGxhYmVsIGZvcj0iZmV1X3VzZXJuYW1lIj4qeyRwcm9tcHRfdXNlcm5hbWV9OjwvbGFiZWw+PC9wPgogICAgPHAgY2xhc3M9ImNvbC1tZC04Ij4KICAgICAgPGlucHV0IHR5cGU9IntpZiAkdXNlcm5hbWVfaXNfZW1haWx9ZW1haWx7ZWxzZX10ZXh0ey9pZn0iIGlkPSJmZXVfdXNlcm5hbWUiIG5hbWU9InskZmxkbmFtZV91c2VybmFtZX0iIHZhbHVlPSJ7JHVzZXJuYW1lfSIgc2l6ZT0ieyR1c2VybmFtZV9zaXplfSIgbWF4bGVuZ3RoPSJ7JHVzZXJuYW1lX21heGxlbmd0aH0iIHtpZiAhJHVzZXJuYW1lX2lzX2VtYWlsfWF1dG9jb3JyZWN0PSJvZmYiIGF1dG9jYXBpdGFsaXplPSJvZmYiey9pZn0gcmVxdWlyZWQvPgogICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InJvdyI+CiAgICA8cCBjbGFzcz0iY29sLW1kLTQgdGV4dC1yaWdodCI+PGxhYmVsIGZvcj0iZmV1X3Bhc3N3b3JkIj4qeyRwcm9tcHRfcGFzc3dvcmR9OjwvbGFiZWw+PC9wPgogICAgPHAgY2xhc3M9ImNvbC1tZC04Ij4KICAgICAgPGlucHV0IHR5cGU9InBhc3N3b3JkIiBpZD0iZmV1X3Bhc3N3b3JkIiBuYW1lPSJ7JGZsZG5hbWVfcGFzc3dvcmR9IiB2YWx1ZT0ieyRwYXNzd29yZH0iIHNpemU9InskcGFzc3dvcmRfc2l6ZX0iIG1heGxlbmd0aD0ieyRwYXNzd29yZF9tYXhsZW5ndGh9IiByZXF1aXJlZC8+CiAgICA8L3A+CiAgPC9kaXY+CiAge2lmIGlzc2V0KCRjYXB0Y2hhKX0KICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgPHAgY2xhc3M9ImNvbC1tZC00IHRleHQtcmlnaHQiPnskY2FwdGNoYV90aXRsZX08L3A+CiAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtOCI+eyRjYXB0Y2hhfQogICAgICB7aWYgJG5lZWRfY2FwdGNoYV9pbnB1dH0KICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1mZXVfaW5wdXRfY2FwdGNoYSIgc2l6ZT0iMTAiLz4KICAgICAgPC9kaXY+CiAgICAgIHsvaWZ9CiAgICA8L2Rpdj4KICA8L2Rpdj4KICB7L2lmfQoKICB7aWYgaXNzZXQoJHByb21wdF9yZW1lbWJlcm1lKX0KICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgPHAgY2xhc3M9ImNvbC1tZC00Ij48L3A+CiAgICA8cCBjbGFzcz0iY29sLW1kLTgiPgogICAgICA8bGFiZWw+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJ7JGFjdGlvbmlkfWZldV9yZW1lbWJlcm1lIiB2YWx1ZT0iMSIge2lmICRyZW1lbWJlcm1lPT0xfWNoZWNrZWR7L2lmfS8+IHskcHJvbXB0X3JlbWVtYmVybWV9PC9sYWJlbD4KICAgIDwvcD4KICA8L2Rpdj4KICB7L2lmfQoKICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgPHAgY2xhc3M9ImNvbC1tZC00Ij48L3A+CiAgICA8cCBjbGFzcz0iY29sLW1kLTgiPgogICAgICA8YnV0dG9uIGNsYXNzPSJidG4gYnRuLWFjdGl2ZSIgbmFtZT0ieyRhY3Rpb25pZH1mZXVfc3VibWl0Ij57JEZyb250RW5kVXNlcnMtPkxhbmcoJ2xvZ2luJyl9PC9idXR0b24+CiAgICA8L3A+CiAgPC9kaXY+CgogIHtpZiBpc3NldCgkdXJsX2xvc3R1bikgfHwgaXNzZXQoJHVybF9mb3Jnb3QpfQogIDxkaXYgY2xhc3M9InJvdyI+CiAgICA8cCBjbGFzcz0iY29sLW1kLTQiPjwvcD4KICAgIDxwIGNsYXNzPSJjb2wtc20tOCI+CiAgICAgIHtpZiBpc3NldCgkdXJsX2ZvcmdvdCl9CiAgICAgICAgPGEgaHJlZj0ieyR1cmxfZm9yZ290fSIgdGl0bGU9InskRnJvbnRFbmRVc2Vycy0+TGFuZygnaW5mb19mb3Jnb3RwdycpfSI+eyRGcm9udEVuZFVzZXJzLT5MYW5nKCdmb3Jnb3RwdycpfTwvYT4KICAgICAgey9pZn0KICAgICAge2lmIGlzc2V0KCR1cmxfbG9zdHVuKX0KICAgICAgICB8IDxhIGhyZWY9InskdXJsX2xvc3R1bn0iIHRpdGxlPSJ7JEZyb250RW5kVXNlcnMtPkxhbmcoJ2luZm9fbG9zdHVuJyl9Ij57JEZyb250RW5kVXNlcnMtPkxhbmcoJ2xvc3R1c2VybmFtZScpfTwvYT4KICAgICAgey9pZn0KICAgIDwvcD4KICA8L2Rpdj4KICB7L2lmfQogIHskZW5kZm9ybX0KPC9maWVsZHNldD4K]]></data>
	</file>
	<file>
	  <filename>/templates/orig_logoutform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogbG9nb3V0IGZvcm0gdGVtcGxhdGUgKn0Ke2lmIGlzc2V0KCRhbHRfbG9nb3V0Zm9ybSl9eyRhbHRfbG9nb3V0Zm9ybX17L2lmfQp7aWYgaXNzZXQoJG1lc3NhZ2UpfTxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWluZm8iPnskbWVzc2FnZX08L2Rpdj57L2lmfQo8cD57JHByb21wdF9sb2dnZWRpbn0mbmJzcDt7JHVzZXJuYW1lfTwvcD4KPHA+PGEgaHJlZj0ieyR1cmxfY2hhbmdlc2V0dGluZ3N9IiB0aXRsZT0ieyRtb2QtPkxhbmcoJ2luZm9fY2hhbmdlc2V0dGluZ3MnKX0iPnskbW9kLT5MYW5nKCdwcm9tcHRfY2hhbmdlc2V0dGluZ3MnKX08L2E+PC9wPgp7aWYgaXNzZXQoJHVybF9sb2dvdXQpfQo8cD48YSBocmVmPSJ7JHVybF9sb2dvdXR9IiB0aXRsZT0ieyRtb2QtPkxhbmcoJ2luZm9fbG9nb3V0Jyl9Ij57JG1vZC0+TGFuZygnbG9nb3V0Jyl9PC9hPjwvcD4Key9pZn0K]]></data>
	</file>
	<file>
	  <filename>/templates/orig_lostunform_confirm_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogbG9zdCB1c2VybmFtZSBjb25maXJtIHRlbXBsYXRlIGZvcm0gKn0KPGgzPnskcHJlbXNnfTwvaDM+CjxwPnskcHJvbXB0X3lvdXJ1c2VybmFtZWlzfTogPHN0cm9uZz57JHVzZXJuYW1lfTwvc3Ryb25nPi48L3A+CjxwPnskcG9zdG1zZ308L3A+]]></data>
	</file>
	<file>
	  <filename>/templates/orig_lostunform_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogbG9zdCB1c2VybmFtZSBjb25maXJtIHRlbXBsYXRlIGZvcm0gKn0KPGg0PnskbW9kLT5MYW5nKCd0aXRsZV9sb3N0dXNlcm5hbWUnKX08L2g0Pgo8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1pbmZvIj57JG1vZC0+TGFuZygnaW5mb19sb3N0dXNlcm5hbWUnKX08L2Rpdj4Ke2lmIGlzc2V0KCRtZXNzYWdlKX08ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1kYW5nZXIiPnskbWVzc2FnZX08L2Rpdj57L2lmfQp7aWYgY291bnQoJGNvbnRyb2xzKX0KICB7JHN0YXJ0Zm9ybX0KICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InskYWN0aW9uaWR9ZmV1X19kYXRhIiB2YWx1ZT0iIi8+eyogc2ltcGxlIGhvbmV5cG90IGNhcHRjaGEgKn0KICAgIHtmb3JlYWNoIGZyb209JGNvbnRyb2xzIGl0ZW09J2VudHJ5J30KICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tNCB0ZXh0LXJpZ2h0Ij57JGVudHJ5LT5wcm9tcHR9PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOCI+CgkgICAge2lmICRlbnRyeS0+dHlwZSA9PSAnX3Bhc3N3b3JkJ30KCSAgICAgIDxpbnB1dCB0eXBlPSJwYXNzd29yZCIgbmFtZT0ieyRlbnRyeS0+ZmxkbmFtZX0iIHZhbHVlPSJ7JGVudHJ5LT52YWx9IiBzaXplPSJ7JGVudHJ5LT5sZW5ndGh9IiBtYXhsZW5ndGg9InskZW50cnktPm1heGxlbmd0aH0iLz4KCSAgICAgIDxici8+eyRtb2QtPkxhbmcoJ2luZm9fbG9zdHVuX3B3ZmllbGQnKX0KCSAgICB7ZWxzZSBpZiAkZW50cnktPnR5cGUgPT0gMH0KCSAgICAgIHsqIHRleHQgKn0KCSAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGVudHJ5LT5mbGRuYW1lfSIgdmFsdWU9InskZW50cnktPnZhbH0iIHNpemU9InskZW50cnktPmxlbmd0aH0iIG1heGxlbmd0aD0ieyRlbnRyeS0+bWF4bGVuZ3RofSIvPgoJICAgICAgPGJyLz57JG1vZC0+TGFuZygnaW5mb19sb3N0dW5fdGV4dGZpZWxkJyl9CgkgICAge2Vsc2VpZiAkZW50cnktPnR5cGUgPT0gMX0KCSAgICAgIHsqIGNoZWNrYm94ICp9CgkgICAgICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5hbWU9InskZW50cnktPmZsZG5hbWV9IiB2YWx1ZT0iMSIge2lmICRlbnRyeS0+dmFsfWNoZWNrZWR7L2lmfS8+CgkgICAge2Vsc2VpZiAkZW50cnktPnR5cGUgPT0gMn0KCSAgICAgIHsqIGVtYWlsICp9CgkgICAgICA8aW5wdXQgdHlwZT0iZW1haWwiIG5hbWU9InskZW50cnktPmZsZG5hbWV9IiB2YWx1ZT0ieyRlbnRyeS0+dmFsfSIgc2l6ZT0ieyRlbnRyeS0+bGVuZ3RofSIgbWF4bGVuZ3RoPSJ7JGVudHJ5LT5tYXhsZW5ndGh9Ii8+CgkgICAge2Vsc2VpZiAkZW50cnktPnR5cGUgPT0gM30KCSAgICAgIHsqIHRleHRhcmVhICp9CgkgICAgICA8dGV4dGFyZWEgbmFtZT0ieyRlbnRyeS0+ZmxkbmFtZX0iIHJvd3M9IjMiIGNvbHM9IjUwIj57JGVudHJ5LT52YWx9PC90ZXh0YXJlYT4KCSAgICAgIDxici8+eyRtb2QtPkxhbmcoJ2luZm9fbG9zdHVuX3RleHRhcmVhJyl9CgkgICAge2Vsc2VpZiAkZW50cnktPnR5cGUgPT0gNH0KCSAgICAgIHsqIGRyb3Bkb3duICp9CgkgICAgICA8c2VsZWN0IG5hbWU9InskZW50cnktPmZsZG5hbWV9Ij4KCSAgICAgICAgPG9wdGlvbiB2YWx1ZT0iIj57JG1vZC0+TGFuZygnZG9ub3Rrbm93Jyl9PC9vcHRpb24+CgkJe2h0bWxfb3B0aW9ucyBvcHRpb25zPSRlbnRyeS0+b3B0aW9ucyBzZWxlY3RlZD0kZW50cnktPnZhbH0KCSAgICAgIDwvc2VsZWN0PgoJICAgIHtlbHNlaWYgJGVudHJ5LT50eXBlID09IDV9CgkgICAgICB7KiBtdWx0aXNlbGVjdCAqfQoJICAgICAgPHNlbGVjdCBuYW1lPSJ7JGVudHJ5LT5mbGRuYW1lfVtdIiBtdWx0aXBsZSBzaXplPSJ7JGVudHJ5LT5sZW5ndGh9Ij4KCQl7aHRtbF9vcHRpb25zIG9wdGlvbnM9JGVudHJ5LT5vcHRpb25zIHNlbGVjdGVkPSRlbnRyeS0+dmFsfQoJICAgICAgPC9zZWxlY3Q+CgkgICAge2Vsc2VpZiAkZW50cnktPnR5cGUgPT0gN30KCSAgICAgIHsqIHJhZGlvYnRucyAqfQoJICAgICAge2ZvcmVhY2ggJGVudHJ5LT5vcHRpb25zIGFzICRrZXkgPT4gJHZhbH0KCSAgICAgICAgPGxhYmVsPjxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0ieyRlbnRyeS0+ZmxkbmFtZX0iIHZhbHVlPSJ7JGtleX0iIHtpZiAka2V5ID09ICRlbnRyeS0+dmFsfWNoZWNrZWR7L2lmfS8+IHskdmFsfTwvbGFiZWw+CgkgICAgICAgIHtpZiAhJHZhbEBsYXN0fTxici8+ey9pZn0KCSAgICAgIHsvZm9yZWFjaH0KCSAgICB7ZWxzZWlmICRlbnRyeS0+dHlwZSA9PSA4fQoJICAgICAgeyogZGF0ZSAqfQoJICAgICAge2h0bWxfc2VsZWN0X2RhdGUgcHJlZml4PSRlbnRyeS0+ZmxkbmFtZSBzdGFydF95ZWFyPSRlbnRyeS0+c3RhcnRfeWVhciBlbmRfeWVhcj0kZW50cnktPmVuZF95ZWFyIHRpbWU9JGVudHJ5LT52YWwgYWxsX2VtcHR5PSctLSd9CgkgICAgey9pZn0KCSAgPC9kaXY+CiAgICAgICA8L2Rpdj4KICAgIHsvZm9yZWFjaH0KICAgIHtpZiBpc3NldCgkY2FwdGNoYSl9CiAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgPHAgY2xhc3M9ImNvbC1zbS00IHRleHQtcmlnaHQiPnskY2FwdGNoYV90aXRsZX08L3A+CiAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTgiPnskY2FwdGNoYX0KICAgICAgICAgIHtpZiAkbmVlZF9jYXB0Y2hhX2lucHV0fQogICAgICAgICAgPGRpdiBjbGFzcz0icm93IGNvbC1zbS0xMiI+CiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWZldV9pbnB1dF9jYXB0Y2hhIiBzaXplPSIxMCIvPgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICB7L2lmfQoJPC9kaXY+CiAgICAgIDwvZGl2PgogICAgey9pZn0KICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1zbS00IHRleHQtcmlnaHQiPjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOCI+CiAgICAgICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1mZXVfc3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9ZmV1X2NhbmNlbCIgdmFsdWU9InskbW9kLT5MYW5nKCdjYW5jZWwnKX0iLz4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICB7JGVuZGZvcm19CnsvaWZ9Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_notification_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogdGhpcyB0ZW1wbGF0ZSBkZWZpbmVzIGhvdyBub3RpZmljYXRpb24gZW1haWxzIHdpbGwgYmUgc2VudCAqfQp7KiB0aGUgc2FtZSB0ZW1wbGF0ZSBpcyB1c2VkIGZvciBhbGwgbm90aWZpY2F0aW9uIGV2ZW50cyBzbyB5b3UgbWF5IG5lZWQgCiAgIHRvIHRocm93IGluIHNvbWUgbG9naWMgaGVyZSB0byBkaXNwbGF5IGFsbCBvZiB0aGUgaW5mb3JtYXRpb24geW91IHdhbnQKICAgaW4gZWFjaCBlbWFpbC4gKn0KeyogYWxsIHNtYXJ0eSB2YXJpYWJsZXMgY2FuIGJlIHVzZWQgaW4gdGhpcyB0ZW1wbGF0ZSwgaW5jbHVkaW5nIGZ1bmN0aW9ucwogICBmcm9tIGN1c3RvbWNvbnRlbnQgZm9yIGZyb250ZW5kIGdlbmVyYXRlZCBldmVudHMgKn0KeyogSSBlbmNvdXJhZ2UgeW91IHRvIHVzZSB0aGUge2dldF90ZW1wbGF0ZV92YXJzfSBzbWFydHkgcGx1Z2luIGFuZCB0aGUKICAgcHJpbnRfciBzbWFydHkgbW9kaWZpZXIgdG8gc2VlIHdoYXQgdmFyaWFibGVzIGFyZSBhdmFpbGFibGUgKn0KCntnZXRfdGVtcGxhdGVfdmFyc30=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_resetsession_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogcmVzZXQgc2Vzc2lvbiB0ZW1wbGF0ZSAqfQp7KiBOT1RFOiB0aGlzIHRlbXBsYXRlIHJlcXVpcmVzIGpxdWVyeSBiZSBhdmFpbGFibGUgaW4gYW55IHBhZ2UgdGhhdCBpdCBpcyB1c2VkIG9uICp9Cgo8cD48YSBocmVmPSJqYXZhc2NyaXB0OjsiIG5hbWU9ImZldV9tYW51YWxfcmVzZXQiPkNsaWNrIEhlcmUgVG8gQ29uZmlybSBMb2dpbiBTdGF0dXM8L2E+PC9wPnsqIHNhZmUgdG8gcmVtb3ZlIHRoaXMgKn0KCnsqIHN0eWxlIGluZm9ybWF0aW9uIGZvciB0aGUgbW9kYWwgd2luZG93IGFuZCB0aGUgbWFzay4uLiB0aGVzZSBjYW4gYmUgcmVtb3ZlZCBhbmQgcGxhY2VkIGluIGEgQ01TTVMgc3R5bGVzaGVldCAqfQp7bGl0ZXJhbH0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KI2ZldV9tb2RhbCB7CiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICBib3JkZXI6IDFweCBzb2xpZCAjMDBmOwogIHBhZGRpbmc6IDJweDsKICBtYXJnaW46ICAycHg7Cn0KI2ZldV9tYXNrIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOwp9CiNmZXVfbW9kYWwgLnRpdGxlIHsKICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBmOwogIGNvbG9yOiAgI2ZmZjsKICBwYWRkaW5nOiAwcHg7Cn0KPC9zdHlsZT4Key9saXRlcmFsfQoKe2NhcHR1cmUgYXNzaWduPSdmZXVfdGhlZm9ybSd9e3N0cmlwfQp7KiB0aGUgcmVzZXQtc2Vzc2lvbiBmb3JtLCBhIHNpbXBsZSBmb3JtIHRvIGRpc3BsYXkgYSBtZXNzYWdlIHdpdGggYSB0aXRsZSB0byB0aGUgdXNlciB3aXRoIHR3byBvcHRpb25zLi4uIG9rYXksIGFuZCBjYW5jZWwuLi4gdGhlIG5hbWUgb2YgdGhlc2UgYnV0dG9ucyBpcyBpbXBvcnRhbnQsIGFzIHdlbGwgdGhlIHN0cmlwIHRhZyBpcyBpbXBvcnRhbnQgKn0KPGZvcm0gYWN0aW9uPSJqYXZhc2NyaXB0OjsiPgo8cCBjbGFzcz0idGl0bGUiPnskbW9kLT5MYW5nKCd0aXRsZV9yZXNldF9zZXNzaW9uJyl9PC9wPgo8cCBjbGFzcz0icm93Ij57JG1vZC0+TGFuZygnbXNnX3Jlc2V0X3Nlc3Npb24nKX08L3A+CjxwIGNsYXNzPSJyb3ciPgogIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImZldV9vayIgdmFsdWU9InskbW9kLT5MYW5nKCdvaycpfSIvPgogIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImZldV9jYW5jZWwiIHZhbHVlPSJ7JG1vZC0+TGFuZygnY2FuY2VsJyl9Ii8+CjwvcD4KPC9mb3JtPgp7L3N0cmlwfXsvY2FwdHVyZX0KCntsaXRlcmFsfQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Ci8vPCFbQ0RBVEFbCi8vIHRoZSB0aW1lciBpbnRlcnZhbCAoaG93IG9mdGVuIHlvdSB3YW50IHRvIGRpc3BsYXkgdGhlIGRpYWxvZyB0byB5b3VyIHVzZXJzCnZhciB0aW1lcl9pbnRlcnZhbCA9IHsvbGl0ZXJhbH17JHNlc3Npb25fdGltZW91dH17bGl0ZXJhbH0gLSAzMDsKCi8vIGEgZnVuY3Rpb24gdG8gaGlkZSB0aGUgbW9kYWwgZGlhbG9nIC0tIHlvdSBjYW4gbW9kaWZ5IHRoaXMgZnVuY3Rpb24KZnVuY3Rpb24gZmV1X2Nsb3NlX21vZGFsKCkKewogICBqUXVlcnkoJyNmZXVfbW9kYWwnKS5mYWRlT3V0KDIwMDApOwogICBqUXVlcnkoJyNmZXVfbWFzaycpLmZhZGVPdXQoMTAwMCk7Cn0KCi8vIGEgZnVuY3Rpb24gdG8gZGlzcGxheSB0aGUgbW9kYWwgZGlhbG9nLi4uIHlvdSBjYW4gbW9kaWZ5IHRoaXMgZnVuY3Rpb24KZnVuY3Rpb24gZmV1X29wZW5fbW9kYWwoKQp7CiAgdmFyIG1hc2tIZWlnaHQgPSBqUXVlcnkoZG9jdW1lbnQpLmhlaWdodCgpOwogIHZhciBtYXNrV2lkdGggPSBqUXVlcnkoZG9jdW1lbnQpLndpZHRoKCk7CgogIC8vIHNldCB0aGUgbWFzayBzaXplIHRvIGZpbGwgdXAgdGhlIHdob2xlIHNjcmVlbgogIGpRdWVyeSgnI2ZldV9tYXNrJykuY3NzKHsnd2lkdGgnOm1hc2tXaWR0aCwnaGVpZ2h0JzptYXNrSGVpZ2h0fSk7CgogIC8vIHRyYW5zaXRpb24gZWZmZWN0CiAgalF1ZXJ5KCcjZmV1X21hc2snKS5mYWRlSW4oMTAwMCk7CiAgalF1ZXJ5KCcjZmV1X21hc2snKS5mYWRlVG8oInNsb3ciLDAuOCk7CgogIC8vIGdldCB0aGUgdG9wIGxlZnQgY29ybmVyIG9mIHRoZSBwb3B1cAogIHZhciB3aW5IZWlnaHQgPSBqUXVlcnkod2luZG93KS5oZWlnaHQoKTsKICB2YXIgd2luV2lkdGggPSBqUXVlcnkod2luZG93KS53aWR0aCgpOwoKICB2YXIgcG9wdXBIZWlnaHQgPSBqUXVlcnkoJyNmZXVfbW9kYWwnKS5oZWlnaHQoKTsKICB2YXIgcG9wdXBXaWR0aCAgPSBqUXVlcnkoJyNmZXVfbW9kYWwnKS53aWR0aCgpOwoKICB2YXIgdG9wID0gd2luSGVpZ2h0LzIgLSBwb3B1cEhlaWdodC8yOwogIHZhciBsZWZ0ID0gd2luV2lkdGgvMiAtIHBvcHVwV2lkdGgvMjsKICAvLyBzZXQgdGhlIHBvcHVwIHdpbmRvdyB0byBjZW50ZXIKICBqUXVlcnkoJyNmZXVfbW9kYWwnKS5jc3Moeyd0b3AnOnRvcCwnbGVmdCc6bGVmdH0pOwoKICAvLyB0cmFuc2l0aW9uIGVmZmVjdAogIGpRdWVyeSgnI2ZldV9tb2RhbCcpLmZhZGVJbigyMDAwKTsKfQoKZnVuY3Rpb24gZmV1X3VzZXJfY2FuY2VsbGVkKCkKewogIC8vIGEgY2FsbGJhY2sgZnVuY3Rpb24gdGhhdCBtYXkgYmUgY3VzdG9taXplZCB0byBhbGxvdyBkaXNwbGF5aW5nIGEgbWVzc2FnZSB0byB0aGUgdXNlcgogIC8vIHRvIGluZGljYXRlIHRoYXQgdGhleSBtYXkgYmUgbG9nZ2VkIG91dCBhdCBhbnkgdGltZS4KICBhbGVydCgnWW91IGhhdmUgY2hvc2VuIHRvIGRpc3JlZ2FyZCB0aGUgc2Vzc2lvbiB3YXJuaW5nLCB5b3UgbWF5IGNvbnRpbnVlIHRvIGJyb3dzZSB0aGlzIHNpdGUgaG93ZXZlciBzb21lIGZ1bmN0aW9uYWxpdHkgbWF5IGJlIHVuYXZhaWxhYmxlIHRvIHlvdSB1bnRpbCB5b3UgbG9naW4gYWdhaW4nKTsKfQoKLy8gKgovLyAqIGRvIG5vdCBtb2RpZnkgYmVsb3cgaGVyZSB1bmxlc3MgeW91IGFyZSBhbiBleHBlcmllbmNlZCBqcXVlcnkgcHJvZ3JhbW1lciAqCi8vICoKCmlmKCB0aW1lcl9pbnRlcnZhbCA8PSAwICkKICB7CiAgICAgdGltZXJfaW50ZXJ2YWwgPSAwOwogIH0KdmFyIGRpYWxvZ2NvbnRlbnRzID0gJ3svbGl0ZXJhbH17JGZldV90aGVmb3JtfXtsaXRlcmFsfSc7CgoKLy8gd2UgaGF2ZSBqUXVlcnkKalF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpewogIC8vIGNyZWF0ZSBhIG5ldyBpZCBmb3Igb3VyIHN0dWZmCiAgalF1ZXJ5KCdib2R5JykuYXBwZW5kKCc8ZGl2IGlkPSJmZXVfYm9keSI+PC9kaXY+Jyk7CiAgCiAgLy8gY3JlYXRlIHRoZSBtYXNrIGFuZCBhcHBlbmQgaXQgdG8gdGhlIGRvbQogIGpRdWVyeSgnI2ZldV9ib2R5JykuYXBwZW5kKCc8ZGl2IGlkPSJmZXVfbWFzayI+PC9kaXY+Jyk7CgogIC8vIGNyZWF0ZSB0aGUgbW9kYWwgZGlhbG9nIGFuZCBhcHBlbmQgaXQgdG8gdGhlIERPTQogIGpRdWVyeSgnI2ZldV9ib2R5JykuYXBwZW5kKCc8ZGl2IGlkPSJmZXVfbW9kYWwiPicrZGlhbG9nY29udGVudHMrJzwvZGl2PicpOwogIAogIC8vIGFuZCBhIGp1bmsgZGl2CiAgalF1ZXJ5KCcjZmV1X2JvZHknKS5hcHBlbmQoJzxkaXYgaWQ9ImZldV9qdW5rIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPjwvZGl2PicpOwoKICAvLyBoYW5kbGUgY2xpY2sgZXZlbnRzCiAgalF1ZXJ5KCcjZmV1X21vZGFsIGlucHV0W25hbWU9ZmV1X29rXScpLmNsaWNrKGZ1bmN0aW9uKGUpewogICAgZS5wcmV2ZW50RGVmYXVsdCgpOwoKICAgIC8vIGRvIHRoZSBhamF4IHJlcXVlc3QKICAgIHZhciB1cmwgPSAney9saXRlcmFsfXskcmVzZXRfdXJsfXtsaXRlcmFsfSc7CiAgICB2YXIgdXJsID0gdXJsLnJlcGxhY2UoL2FtcDsvZywnJyk7CiAgICBqUXVlcnkoJyNmZXVfanVuaycpLmxvYWQodXJsKTsKCiAgICAvLyBhbmQgZG9uZS4KICAgIGZldV9jbG9zZV9tb2RhbCgpOwogICB9KTsKICBqUXVlcnkoJyNmZXVfbW9kYWwgaW5wdXRbbmFtZT1mZXVfY2FuY2VsXScpLmNsaWNrKGZ1bmN0aW9uKGUpewogICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgZmV1X2Nsb3NlX21vZGFsKCk7CiAgICBmZXVfdXNlcl9jYW5jZWxsZWQoKTsKICB9KTsKICBqUXVlcnkoJ2FbbmFtZT1mZXVfbWFudWFsX3Jlc2V0XScpLmNsaWNrKGZ1bmN0aW9uKGUpewogICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgZmV1X29wZW5fbW9kYWwoKTsKICB9KTsKCiAgLy8gY3JlYXRlIG91ciB0aW1lcgogIGlmKCB0aW1lcl9pbnRlcnZhbCA+IDAgKQogICAgIHsKICAgICAgICBzZXRUaW1lb3V0KGZldV9vcGVuX21vZGFsLHRpbWVyX2ludGVydmFsICogMTAwMCk7CiAgICAgfQoKfSk7Ci8vXV0+Cjwvc2NyaXB0Pgp7L2xpdGVyYWx9Cgp7KiByZXF1aXJlZCBjc3MgKn0Ke2xpdGVyYWx9CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CiNmZXVfbW9kYWwgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiA5OTk5OwogIGRpc3BsYXk6IG5vbmU7Cn0KI2ZldV9tYXNrIHsKICB0b3A6IDA7CiAgbGVmdDogMDsKICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgei1pbmRleDogOTAwMDsKICBkaXNwbGF5OiBub25lOwp9Cjwvc3R5bGU+CnsvbGl0ZXJhbH0=]]></data>
	</file>
	<file>
	  <filename>/templates/orig_verifyform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogb3JpZ2luYWwgdmVyaWZpY2F0aW9uIGZvcm0gKn0KPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtaW5mbyI+eyRtb2QtPkxhbmcoJ2luZm9fdmVyaWZ5X2lkZW50aXR5Jyl9PC9kaXY+Cntmb3JtX3N0YXJ0IHVpZD0kdWlkfQogIDxkaXYgY2xhc3M9InJvdyI+CiAgICA8bGFiZWw+eyRtb2QtPkxhbmcoJ2NvZGUnKX06IDxpbnB1dCB0eXBlPSJ0ZXh0IiBjbGFzcz0iZm9ybV9jb250cm9sIiBuYW1lPSJ7JGFjdGlvbmlkfWNvZGUiIHZhbHVlPSJ7JGNvZGV9IiByZXF1aXJlZC8+PC9sYWJlbD4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgPGJ1dHRvbiB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9ZmV1X3N1Ym1pdCIgY2xhc3M9ImJ0biBidG5fYWN0aXZlIj57JG1vZC0+TGFuZygndmVyaWZ5Jyl9PC9idXR0b24+CiAgPC9kaXY+CjwvZGl2Pgp7Zm9ybV9lbmR9Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/orig_viewuser_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogdmlldyB1c2VyIHRlbXBsYXRlICp9CjxwPnskbW9kLT5MYW5nKCdpZCcpfTombmJzcDt7JHVzZXJpbmZvLmlkfTwvcD4KPHA+eyRtb2QtPkxhbmcoJ3VzZXJuYW1lJyl9OiZuYnNwO3skdXNlcmluZm8udXNlcm5hbWV9PC9wPgo8cD57JG1vZC0+TGFuZygnZW1haWwnKX06Jm5ic3A7PGEgaHJlZj0ibWFpbHRvOnskZW1haWxfYWRkcmVzc30iPnskZW1haWxfYWRkcmVzc308L3A+CjxwPnskbW9kLT5MYW5nKCdleHBpcmVzJyl9OiZuYnNwO3skdXNlcmluZm8uZXhwaXJlc308L3A+Cntmb3JlYWNoIGZyb209JHVzZXJfcHJvcGVydGllcyBpdGVtPSdlbnRyeSd9CntpZiAkZW50cnkudHlwZSAhPSAwfQo8cD57JGVudHJ5LnByb21wdH06Jm5ic3A7eyRlbnRyeS5kYXRhfTwvcD4Key9pZn0Key9mb3JlYWNofQo=]]></data>
	</file>
	<file>
	  <filename>/templates/propertiesform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e2lmIGlzc2V0KCRtZXNzYWdlKSB9CiAge2lmIGlzc2V0KCRlcnJvcikgfQogICAgPHAgY2xhc3M9InJlZCI+eyRtZXNzYWdlfTwvZm9udD48L3A+CiAge2Vsc2V9CiAgICA8cD57JG1lc3NhZ2V9PC9wPgogIHsvaWZ9CnsvaWZ9Cgo8ZGl2IGNsYXNzPSJjX2Z1bGwiPgogIDxwIGNsYXNzPSJncmlkXzgiIHN0eWxlPSJtYXJnaW4tbGVmdDogMDsiPgogICAge2lmIGlzc2V0KCRhZGRfdXJsKX0KICAgICAgPGEgaHJlZj0ieyRhZGRfdXJsfSIgdGl0bGU9InskbW9kLT5MYW5nKCdhZGRwcm9wJyl9Ij57Y2dpbWFnZSBpbWFnZT0naWNvbnMvc3lzdGVtL25ld29iamVjdC5naWYnfSB7JG1vZC0+TGFuZygnYWRkcHJvcCcpfTwvYT4KICAgIHsvaWZ9CiAgPC9wPgogIDxwIGNsYXNzPSJncmlkXzQgdGV4dC1yaWdodCI+eyRwcm9wY291bnR9Jm5ic3A7eyRwcm9wc2ZvdW5kfTwvcD4KICA8ZGl2IGNsYXNzPSJjbGVhcmIiPjwvZGl2Pgo8L2Rpdj4KCntpZiAkcHJvcGNvdW50ID4gMH0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4KCTx0aGVhZD4KCQk8dHI+CgkJCTx0aD57JG5hbWV0ZXh0fTwvdGg+CgkJCTx0aD57JHByb21wdHRleHR9PC90aD4KCQkJPHRoPnskdHlwZXRleHR9PC90aD4KCQkJPHRoPnskbGVuZ3RodGV4dH08L3RoPgoJCQk8dGg+eyRtb2QtPkxhbmcoJ3VuaXF1ZScpfTwvdGg+CgkJCTx0aD57JG1vZC0+TGFuZygnZW5jcnlwdGVkJyl9PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiB7bGl0ZXJhbH17c29ydGVyOiBmYWxzZX17L2xpdGVyYWx9Ij4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIHtsaXRlcmFsfXtzb3J0ZXI6IGZhbHNlfXsvbGl0ZXJhbH0iPiZuYnNwOzwvdGg+CgkJPC90cj4KCTwvdGhlYWQ+Cgk8dGJvZHk+Cntmb3JlYWNoIGZyb209JHByb3BzIGl0ZW09cHJvcGV9CgkJPHRyIGNsYXNzPSJ7JHByb3BlLT5yb3djbGFzc30iPgoJCQk8dGQ+eyRwcm9wZS0+bmFtZX08L3RkPgoJCQk8dGQ+eyRwcm9wZS0+cHJvbXB0fTwvdGQ+CgkJCTx0ZD57JHByb3BlLT50eXBlfTwvdGQ+CgkJCTx0ZD57JHByb3BlLT5sZW5ndGh9PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgPHRkPntpZiAkcHJvcGUtPmZvcmNlX3VuaXF1ZX17JG1vZC0+TGFuZygneWVzJyl9e2Vsc2V9eyRtb2QtPkxhbmcoJ25vJyl9ey9pZn08L3RkPgogICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e2lmICRwcm9wZS0+ZW5jcnlwdH17JG1vZC0+TGFuZygneWVzJyl9ey9pZn08L3RkPgoJCQk8dGQ+eyRwcm9wZS0+ZWRpdGxpbmt8ZGVmYXVsdDonJ308L3RkPgoJCQk8dGQ+CgkJCSAge2lmIGlzc2V0KCRwcm9wZS0+ZGVsZXRlX3VybCl9CgkJCSAgICA8YSBocmVmPSJ7JHByb3BlLT5kZWxldGVfdXJsfSI+e2NnaW1hZ2UgaW1hZ2U9J2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJyBhbHQ9JG1vZC0+TGFuZygnZGVsZXRlJyl9PC9hPgoJCQkgIHsvaWZ9CgkJCTwvdGQ+CgkJPC90cj4Key9mb3JlYWNofQoJPC90Ym9keT4KPC90YWJsZT4Key9pZn0K]]></data>
	</file>
	<file>
	  <filename>/templates/protectedcontent.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[e3N0cmlwfQp7aWYgJGZldV9hdXRob3JpemVkID09IDB9CiAgICB7aWYgJGFjdGlvbiA9PSAncmVkaXJlY3QnfSAKICAgICAge2lmICRmZXVfcGFnZSA9PSAtMX0KICAgICAgICB7JG1vZC0+TGFuZygncGFnZXR5cGVfdW5hdXRob3JpemVkJyl9CiAgICAgIHtlbHNlfQogICAgICAgIHtyZWRpcmVjdF9wYWdlIHBhZ2U9JGZldV9wYWdlfQogICAgICB7L2lmfQogICAge2Vsc2VpZiAkc2hvd193aGF0ID09ICdjb250ZW50X2VuJ30KICAgICAge2lmICRkb2NhcHRjaGEgPT0gMX0KICAgICAgICB7RnJvbnRFbmRVc2VycyBmb3JtPWxvZ2lufQogICAgICB7ZWxzZX0KICAgICAgICB7RnJvbnRFbmRVc2VycyBmb3JtPWxvZ2luIG5vY2FwdGNoYT0xfQogICAgICB7L2lmfQogICAgey9pZn0Ke2Vsc2V9CiAgIHskb3V0cHV0fGRlZmF1bHQ6Jyd9CnsvaWZ9Cnsvc3RyaXB9]]></data>
	</file>
	<file>
	  <filename>/templates/resetsession_templateform.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19CjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF90ZW1wbGF0ZTF9OjwvcD4KICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X3RlbXBsYXRlMX08L3A+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskc3VibWl0fSZuYnNwO3skZGVmYXVsdHN9PC9wPgo8L2Rpdj4KeyRlbmRmb3JtfQo=]]></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+CiAge2Vsc2V9CiAgICA8ZGl2IGNsYXNzPSJpbmZvcm1hdGlvbiI+eyRtZXNzYWdlfTwvZGl2PgogIHsvaWZ9CnsvaWZ9Cgp7aWYgIWlzc2V0KCRtdWx0aXVzZXIpfQo8aDQ+eyR0aXRsZV91c2VyaGlzdG9yeX0mbmJzcDt7JGZvcn0mbmJzcDt7JHVzZXJfdXNlcm5hbWV9PC9oND4Key9pZn0KeyRmb3Jtc3RhcnR9CjxkaXYgY2xhc3M9ImNfZnVsbCI+CjxmaWVsZHNldCBjbGFzcz0iZ3JpZF82Ij4KPGxlZ2VuZD57JHRpdGxlX2xlZ2VuZF9maWx0ZXJ9OjwvbGVnZW5kPgogIDxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgICAgPHAgY2xhc3M9ImdyaWRfMyI+eyRwcm9tcHRfZmlsdGVyX2V2ZW50dHlwZX06PC9wPgogICAgIDxwIGNsYXNzPSJncmlkXzkiPnskaW5wdXRfZmlsdGVyX2V2ZW50dHlwZX08L3A+CiAgICAgPGRpdiBjbGFzcz0iY2xlYXJiIj48L2Rpdj4KICA8L2Rpdj4Ke2lmIGlzc2V0KCRtdWx0aXVzZXIpfQogIDxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgICAgPHAgY2xhc3M9ImdyaWRfMyI+eyRwcm9tcHRfdXNlcm5hbWVfcmVnZXh9OjwvcD4KICAgICA8cCBjbGFzcz0iZ3JpZF85Ij57JGlucHV0X3VzZXJuYW1lX3JlZ2V4fTwvcD4KICAgICA8ZGl2IGNsYXNzPSJjbGVhcmIiPjwvZGl2PgogIDwvZGl2Pgp7L2lmfQogIDxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgICAgPHAgY2xhc3M9ImdyaWRfMyI+eyRwcm9tcHRfZmlsdGVyX2RhdGV9OjwvcD4KICAgICA8cCBjbGFzcz0iZ3JpZF85Ij57JGlucHV0X2ZpbHRlcl9kYXRlfTwvcD4KICAgICA8ZGl2IGNsYXNzPSJjbGVhcmIiPjwvZGl2PgogIDwvZGl2PgogIDxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgICAgPHAgY2xhc3M9ImdyaWRfMyI+eyRwcm9tcHRfcGFnZWxpbWl0fTo8L3A+CiAgICAgPHAgY2xhc3M9ImdyaWRfOSI+eyRpbnB1dF9wYWdlbGltaXR9PC9wPgogICAgIDxkaXYgY2xhc3M9ImNsZWFyYiI+PC9kaXY+CiAgPC9kaXY+CjwvZmllbGRzZXQ+CjxmaWVsZHNldCBjbGFzcz0iZ3JpZF82Ij4KPGxlZ2VuZD57JHRpdGxlX2xlZ2VuZF9ncm91cHNvcnR9OjwvbGVnZW5kPgogIDxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgICAgPHAgY2xhc3M9ImdyaWRfMyI+eyRwcm9tcHRfZ3JvdXBfaXB9OjwvcD4KICAgICA8cCBjbGFzcz0iZ3JpZF85Ij57JGlucHV0X2dyb3VwX2lwfTwvcD4KICAgICA8ZGl2IGNsYXNzPSJjbGVhcmIiPjwvZGl2PgogIDwvZGl2PgogIDxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgICAgPHAgY2xhc3M9ImdyaWRfMyI+eyRwcm9tcHRfc29ydG9yZGVyfTo8L3A+CiAgICAgPHAgY2xhc3M9ImdyaWRfOSI+eyRpbnB1dF9zb3J0b3JkZXJ9PC9wPgogICAgIDxkaXYgY2xhc3M9ImNsZWFyYiI+PC9kaXY+CiAgPC9kaXY+CjwvZmllbGRzZXQ+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJjX2Z1bGwiPgogICA8cCBjbGFzcz0iZ3JpZF85Ij57JHN1Ym1pdH0mbmJzcDt7JHJlc2V0fTwvcD4KICAgPGRpdiBjbGFzcz0iY2xlYXJiIj48L2Rpdj4KPC9kaXY+CnskZm9ybWVuZH0KPGJyLz4KCjxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgPGRpdiBjbGFzcz0iZ3JpZF82IiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDA7Ij4KICAgIHskcmVjb3JkY291bnR9Jm5ic3A7eyRwcm9tcHRfcmVjb3Jkc2ZvdW5kfQogIDwvZGl2PgogIDxkaXYgY2xhc3M9ImdyaWRfNiB0ZXh0LXJpZ2h0Ij4KICAgIHtpZiAkaXRlbWNvdW50ID4gMH17aWYgJHBhZ2Vjb3VudCA+IDF9e2lmICRwYWdlbnVtYmVyID4gMX17JGZpcnN0cGFnZX0mbmJzcDt7JHByZXZwYWdlfSZuYnNwO3svaWZ9CiAgICAgIHskcGFnZW51bWJlcn0mbmJzcDt7JG9mdGV4dH0mbmJzcDt7JHBhZ2Vjb3VudH0KICAgICAge2lmICRwYWdlbnVtYmVyIDwgJHBhZ2Vjb3VudH0KICAgICAgJm5ic3A7eyRuZXh0cGFnZX0mbmJzcDt7JGxhc3RwYWdlfQogICAgey9pZn0KICAgIHsvaWZ9CiA8L2Rpdj4KPC9kaXY+Cgo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPgogIDx0aGVhZD4KICAgIDx0cj4Ke2lmIGlzc2V0KCRtdWx0aXVzZXIpfQoJPHRoPnskcHJvbXB0X3VzZXJuYW1lfTwvdGg+CnsvaWZ9Cgk8dGg+eyRwcm9tcHRfaXBhZGRyZXNzfTwvdGg+Cgk8dGg+eyRwcm9tcHRfYWN0aW9ufTwvdGg+Cgk8dGg+eyRwcm9tcHRfcmVmZGF0ZX08L3RoPgogICAgPC90cj4KICA8L3RoZWFkPgogIDx0Ym9keT4Ke2ZvcmVhY2ggZnJvbT0kaXRlbXMgaXRlbT1lbnRyeX0KICA8dHIgY2xhc3M9InskZW50cnktPnJvd2NsYXNzfSI+CntpZiBpc3NldCgkbXVsdGl1c2VyKX0KICAgICAgICA8dGQ+eyRlbnRyeS0+dXNlcm5hbWV9PC90ZD4Key9pZn0KCTx0ZD57JGVudHJ5LT5pcGFkZHJlc3N9PC90ZD4KCTx0ZD57JGVudHJ5LT5hY3Rpb259PC90ZD4KCTx0ZD57JGVudHJ5LT5yZWZkYXRlfGRhdGVfZm9ybWF0OiIlYiAlZSwgJVkgLSAlWCJ9PC90ZD4KICA8L3RyPgp7L2ZvcmVhY2h9CiAgPC90Ym9keT4KPC90YWJsZT4Key9pZn0K]]></data>
	</file>
	<file>
	  <filename>/templates/userlist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgovKjwhW0NEQVRBWyovCiQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7CiAgJCgnI2ZldV9maWx0ZXJib3gnKS5jbGljayhmdW5jdGlvbigpewogICAgaWYoIHRoaXMuY2hlY2tlZCApIHsKICAgICAgJCgnI2ZldV9maWx0ZXJmb3JtJykuc2hvdygpOwogICAgfQogICAgZWxzZSB7CiAgICAgICQoJyNmZXVfZmlsdGVyZm9ybScpLmhpZGUoKTsKICAgIH0KICB9KTsKCiAgJCgnI2RvYnVsaycpLmNsaWNrKGZ1bmN0aW9uKGV2KXsKICAgICB2YXIgbGVuID0gJCgnaW5wdXQuYnVsa3NlbGVjdDpjaGVja2VkJykubGVuZ3RoOwogICAgIGlmKCBsZW4gPT0gMCApIHsKICAgICAgICBldi5wcmV2ZW50RGVmYXVsdCgpOwoJY21zX2FsZXJ0KCd7JG1vZC0+TGFuZygnYnVsa19zZWxlY3RvbmUnfGNtc19lc2NhcGUpfScpOwogICAgIH0KICB9KQp9KTsKZnVuY3Rpb24gc2VsZWN0X2FsbCgpCnsKICBjYiA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlOYW1lKCd7JGFjdGlvbmlkfXNlbGVjdGVkW10nKTsKICBlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdzZWxlY3RhbGwnKTsKICBzdCA9IGVsLmNoZWNrZWQ7CiAgZm9yKCBpID0gMDsgaSA8IGNiLmxlbmd0aDsgaSsrICkgewogICAgaWYoIGNiW2ldLnR5cGUgPT0gImNoZWNrYm94IiApICBjYltpXS5jaGVja2VkPXN0OwogIH0KfQoKZnVuY3Rpb24gY29uZmlybV9kZWxldGUoKQp7CiAgdmFyIGNiID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoJ3skYWN0aW9uaWR9c2VsZWN0ZWRbXScpOwogIHZhciBjb3VudCA9IDA7CiAgZm9yKCBpID0gMDsgaSA8IGNiLmxlbmd0aDsgaSsrICkgewogICAgIGlmKCBjYltpXS5jaGVja2VkICkgY291bnQrKzsKICB9CgogIGlmKCBjb3VudCA+IDI1MCApIHsKICAgICBhbGVydCgneyRtb2QtPkxhbmcoJ2Vycm9yX3Rvb21hbnlzZWxlY3RlZCcpfSd8Y21zX2VzY2FwZSk7CiAgICAgcmV0dXJuIGZhbHNlOwogIH0KICByZXR1cm4gY29uZmlybSgneyRtb2QtPkxhbmcoJ2NvbmZpcm1fZGVsZXRlX3NlbGVjdGVkJyl9Jyk7Cn0KLypdXT4gKi8KPC9zY3JpcHQ+Cgp7JHN0YXJ0Zm9ybX0KPGRpdiBpZD0iZmV1X2ZpbHRlcmZvcm0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+Cjx0YWJsZSB3aWR0aD0iMTAwJSI+Cjx0cj48dGQgd2lkdGg9IjUwJSIgdmFsaWduPSJ0b3AiPgogIDxmaWVsZHNldD4KICA8bGVnZW5kPnskbW9kLT5MYW5nKCdmaWx0ZXInKX06PC9sZWdlbmQ+CiAge2lmIGlzc2V0KCRncm91cHMpfQogIDxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgIDxwIGNsYXNzPSJncmlkXzMiPnskbW9kLT5MYW5nKCdncm91cCcpfTo8L3A+CiAgIDxwIGNsYXNzPSJncmlkXzkiPgogICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1maWx0ZXJfZ3JvdXAiPgogICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kZ3JvdXBzIHNlbGVjdGVkPSRmaWx0ZXIuZ3JvdXB9CiAgICAgPC9zZWxlY3Q+CiAgIDwvcD4KICA8L2Rpdj4KICB7L2lmfQoKICA8ZGl2IGNsYXNzPSJjX2Z1bGwiPgogICA8cCBjbGFzcz0iZ3JpZF8zIj57JG1vZC0+TGFuZygndXNlcmZpbHRlcicpfTo8L3A+CiAgIDxwIGNsYXNzPSJncmlkXzkiPgogICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWZpbHRlcl9yZWdleCIgdmFsdWU9InskZmlsdGVyLnJlZ2V4fSIvPgogICA8L3A+CiAgIDxkaXYgY2xhc3M9ImNsZWFyYiI+PC9kaXY+CiAgPC9kaXY+CiAgPGRpdiBjbGFzcz0iY19mdWxsIj4KICAgPHAgY2xhc3M9ImdyaWRfMyI+eyRtb2QtPkxhbmcoJ3Byb3BlcnR5ZmlsdGVyJyl9OjwvcD4KICAgPHAgY2xhc3M9ImdyaWRfOSI+CiAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWZpbHRlcl9wcm9wZXJ0eXNlbCI+e2h0bWxfb3B0aW9ucyBvcHRpb25zPSRkZWZubGlzdCBzZWxlY3RlZD0kZmlsdGVyLnByb3BzZWx9PC9zZWxlY3Q+CiAgIDwvcD4KICAgPGRpdiBjbGFzcz0iY2xlYXJiIj48L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJjX2Z1bGwiPgogICA8cCBjbGFzcz0iZ3JpZF8zIj57JG1vZC0+TGFuZygndmFsdWVyZWdleCcpfTo8L3A+CiAgIDxwIGNsYXNzPSJncmlkXzkiPgogICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfWZpbHRlcl9wcm9wZXJ0eSIgdmFsdWU9InskZmlsdGVyLnByb3B2YWx9IiBzaXplPSIzMCIvPgogICA8L3A+CiAgIDxkaXYgY2xhc3M9ImNsZWFyYiI+PC9kaXY+CiAgPC9kaXY+CgogIDxkaXYgY2xhc3M9ImNfZnVsbCI+CiAgIDxwIGNsYXNzPSJncmlkXzMiPnskbW9kLT5MYW5nKCdwcm9tcHRfbG9nZ2VkaW5vbmx5Jyl9OjwvcD4KICAgPHAgY2xhc3M9ImdyaWRfOSI+CiAgICAge2NnZV95ZXNub19vcHRpb25zIHByZWZpeD0kYWN0aW9uaWQgbmFtZT0nZmlsdGVyX2xvZ2dlZGlub25seScgc2VsZWN0ZWQ9JGZpbHRlci5sb2dnZWRpbm9ubHl9CiAgIDwvcD4KICAgPGRpdiBjbGFzcz0iY2xlYXJiIj48L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJjX2Z1bGwiPgogICA8cCBjbGFzcz0iZ3JpZF8zIj57JG1vZC0+TGFuZygndXNlcmxpbWl0Jyl9OjwvcD4KICAgPHAgY2xhc3M9ImdyaWRfOSI+CiAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWZpbHRlcl9saW1pdCI+e2h0bWxfb3B0aW9ucyBvcHRpb25zPSRsaW1pdHMgc2VsZWN0ZWQ9JGZpbHRlci5saW1pdH08L3NlbGVjdD4KICAgPC9wPgogICA8ZGl2IGNsYXNzPSJjbGVhcmIiPjwvZGl2PgogIDwvZGl2PgogIDwvZmllbGRzZXQ+CjwvdGQ+PHRkIHZhbGlnbj0idG9wIj4KICA8ZmllbGRzZXQ+CiAgPGxlZ2VuZD57JG1vZC0+TGFuZygndmlldycpfTo8L2xlZ2VuZD4KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCdwcm9tcHRfdmlld3Byb3BzJyl9OjwvcD4KICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+CiAgICAgPHNlbGVjdCBuYW1lPSJ7JGFjdGlvbmlkfWZpbHRlcl92aWV3cHJvcHNbXSIgbXVsdGlwbGU9Im11bHRpcGxlIiBzaXplPSI1Ij4KICAgICAgIHtodG1sX29wdGlvbnMgb3B0aW9ucz0kYWxsZGVmbnMgc2VsZWN0ZWQ9JHZpZXdwcm9wc30KICAgICA8L3NlbGVjdD4KICAgPC9wPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+CiAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3NvcnRieScpfTo8L3A+CiAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPgogICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1maWx0ZXJfc29ydGJ5Ij57aHRtbF9vcHRpb25zIG9wdGlvbnM9JHNvcnRsaXN0IHNlbGVjdGVkPSRmaWx0ZXIuc29ydGJ5fTwvc2VsZWN0PgogICA8L3A+CiAgPC9kaXY+CjwvZmllbGRzZXQ+CjwvdGQ+PC90cj4KPHRyPgogIDx0ZCBjb2xzcGFuPSIyIiBhbGlnbj0iY2VudGVyIj4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9ZmlsdGVyIiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ2FwcGx5ZmlsdGVyJyl9Ii8+CiAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWZpbHRlcl9yZXNldCIgdmFsdWU9InskbW9kLT5MYW5nKCdyZXNldCcpfSIvPgogIDwvdGQ+CjwvdHI+CjwvdGFibGU+Cjxici8+CjwvZGl2PnsqICNmZXVfZmlsdGVyZm9ybSAqfQoKPGRpdiBjbGFzcz0iY19mdWxsIj4KICA8ZGl2IGNsYXNzPSJncmlkXzkiIHN0eWxlPSJtYXJnaW4tbGVmdDogMDsiPgogICAgPGlucHV0IGlkPSJmZXVfZmlsdGVyYm94IiB0eXBlPSJjaGVja2JveCIgdmFsdWU9IjEiLz48bGFiZWwgZm9yPSJmZXVfZmlsdGVyYm94Ij57JG1vZC0+TGFuZygndmlld19maWx0ZXInKX0ge2lmICRmaWx0ZXJfYXBwbGllZH0oeyRtb2QtPkxhbmcoJ2FwcGxpZWQnKX0pey9pZn08L2xhYmVsPiZuYnNwOwogICAgPHNwYW4gdGl0bGU9InskbW9kLT5MYW5nKCd1c2Vyc2luZ3JvdXAnKX0iPntjZ2ltYWdlIGltYWdlPSd1c2Vycy5naWYnIGFsdD0iIn0gPSB7JG51bXVzZXJzfTwvc3Bhbj4mbmJzcDsKICAgIHtpZiBpc3NldCgkYWRkX3VybCl9PGEgaHJlZj0ieyRhZGRfdXJsfSIgdGl0bGU9InskbW9kLT5MYW5nKCd0aXRsZV9hZGRfdXNlcicpfSI+e2NnaW1hZ2UgaW1hZ2U9J2ljb25zL3N5c3RlbS9uZXdvYmplY3QuZ2lmJ30geyRtb2QtPkxhbmcoJ2FkZHVzZXInKX08L2E+ey9pZn0KICAgIHtpZiBpc3NldCgkaW1wb3J0X3VybCl9PGEgaHJlZj0ieyRpbXBvcnRfdXJsfSIgdGl0bGU9InskbW9kLT5MYW5nKCd0aXRsZV9pbXBvcnRfdXNlcnMnKX0iPntjZ2ltYWdlIGltYWdlPSdpY29ucy9zeXN0ZW0vaW1wb3J0LmdpZid9IHskbW9kLT5MYW5nKCdwcm9tcHRfaW1wb3J0dXNlcnMnKX08L2E+ey9pZn0KICAgIHtpZiBpc3NldCgkZXhwb3J0X3VybCl9PGEgaHJlZj0ieyRleHBvcnRfdXJsfSIgdGl0bGU9InskbW9kLT5MYW5nKCd0aXRsZV9leHBvcnRfdXNlcnMnKX0iPntjZ2ltYWdlIGltYWdlPSdpY29ucy9zeXN0ZW0vZXhwb3J0LmdpZid9IHskbW9kLT5MYW5nKCdwcm9tcHRfZXhwb3J0dXNlcnMnKX08L2E+ey9pZn0KICA8L2Rpdj4KICA8ZGl2IGNsYXNzPSJncmlkXzMgdGV4dC1yaWdodCI+CiAge2lmICRpdGVtY291bnQgPiAwfQogICAge2lmIGlzc2V0KCRuYXZpZ2F0aW9uLmZpcnN0cGFnZV91cmwpfQogICAgICA8YSBocmVmPSJ7JG5hdmlnYXRpb24uZmlyc3RwYWdlX3VybH0iPnskbW9kLT5MYW5nKCdmaXJzdHBhZ2UnKX08L2E+Jm5ic3A7CiAgICAgIDxhIGhyZWY9InskbmF2aWdhdGlvbi5wcmV2cGFnZV91cmx9Ij57JG1vZC0+TGFuZygncHJldnBhZ2UnKX08L2E+Jm5ic3A7CiAgICB7L2lmfQogICAgeyRtb2QtPkxhbmcoJ3BhZ2UnKX0geyRuYXZpZ2F0aW9uLmN1cnBhZ2V9IHskbW9kLT5MYW5nKCdwcm9tcHRfb2YnKX0geyRuYXZpZ2F0aW9uLm5wYWdlc30KICAgIHtpZiBpc3NldCgkbmF2aWdhdGlvbi5sYXN0cGFnZV91cmwpfQogICAgICAmbmJzcDs8YSBocmVmPSJ7JG5hdmlnYXRpb24ubmV4dHBhZ2VfdXJsfSI+eyRtb2QtPkxhbmcoJ25leHRwYWdlJyl9PC9hPgogICAgICAmbmJzcDs8YSBocmVmPSJ7JG5hdmlnYXRpb24ubGFzdHBhZ2VfdXJsfSI+eyRtb2QtPkxhbmcoJ2xhc3RwYWdlJyl9PC9hPgogICAgey9pZn0KICB7L2lmfQogIDwvZGl2PgogIDxkaXYgY2xhc3M9ImNsZWFyYiI+PC9kaXY+CjwvZGl2Pgp7aWYgIWlzc2V0KCRncm91cHMpfQogIDxkaXYgY2xhc3M9InJlZCBjZW50ZXIiPnskbW9kLT5MYW5nKCdub2dyb3VwcycpfTwvZGl2Pgp7ZWxzZWlmICRpdGVtY291bnQgPiAwfQo8dGFibGUgY2xhc3M9InBhZ2V0YWJsZSI+Cgk8dGhlYWQ+CgkJPHRyPgoJCQk8dGg+eyR1c2VybmFtZXRleHR9PC90aD4KCQkJPHRoPnskY3JlYXRlZHRleHR9PC90aD4KCQkJPHRoPnskZXhwaXJlc3RleHR9PC90aD4KICAgICAgICAgICAgICAgICAgICAgICAge2lmIGlzc2V0KCR2aWV3cHJvcHMpICYmIGlzX2FycmF5KCR2aWV3cHJvcHMpfQogICAgICAgICAgICAgICAgICAgICAgICB7Zm9yZWFjaCBmcm9tPSR2aWV3cHJvcHMgaXRlbT0nb25lJ30KICAgICAgICAgICAgICAgICAgICAgICAgPHRoPnskYWxsZGVmbnMuJG9uZX08L3RoPgogICAgICAgICAgICAgICAgICAgICAgICB7L2ZvcmVhY2h9CiAgICAgICAgICAgICAgICAgICAgICAgIHsvaWZ9CgkJCTx0aCBjbGFzcz0icGFnZWljb24ge2xpdGVyYWx9e3NvcnRlcjogZmFsc2V9ey9saXRlcmFsfSI+Jm5ic3A7PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiB7bGl0ZXJhbH17c29ydGVyOiBmYWxzZX17L2xpdGVyYWx9Ij4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIHtsaXRlcmFsfXtzb3J0ZXI6IGZhbHNlfXsvbGl0ZXJhbH0iPiZuYnNwOzwvdGg+CgkJCTx0aCBjbGFzcz0icGFnZWljb24ge2xpdGVyYWx9e3NvcnRlcjogZmFsc2V9ey9saXRlcmFsfSI+Jm5ic3A7PC90aD4KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiB7bGl0ZXJhbH17c29ydGVyOiBmYWxzZX17L2xpdGVyYWx9Ij4mbmJzcDs8L3RoPgoJCQk8dGggY2xhc3M9InBhZ2VpY29uIHtsaXRlcmFsfXtzb3J0ZXI6IGZhbHNlfXsvbGl0ZXJhbH0iPjxpbnB1dCBpZD0ic2VsZWN0YWxsIiB0eXBlPSJjaGVja2JveCIgbmFtZT0ianVuayIgb25jbGljaz0ic2VsZWN0X2FsbCgpOyIvPjwvdGg+CgkJPC90cj4KCTwvdGhlYWQ+Cgk8dGJvZHk+Cntmb3JlYWNoIGZyb209JGl0ZW1zIGl0ZW09ZW50cnl9CgkJPHRyIGNsYXNzPSJ7Y3ljbGUgdmFsdWVzPSdyb3cxLHJvdzInfSI+CgkJCTx0ZD4KCQkJICB7aWYgJGVudHJ5LT5kaXNhYmxlZH0KCQkJICAgICA8c3BhbiBzdHlsZT0iY29sb3I6IHJlZDsiIHRpdGxlPSJ7JG1vZC0+TGFuZygnaW5mb19kaXNhYmxlZCcpfSI+ISEmbmJzcDsgeyRlbnRyeS0+dXNlcm5hbWV9PC9zcGFuPgoJCQkgIHtlbHNlIGlmICRlbnRyeS0+bXVzdF92YWxpZGF0ZX0KCQkJICAgICA8c3BhbiBzdHlsZT0iY29sb3I6IG9yYW5nZTsiIHRpdGxlPSJ7JG1vZC0+TGFuZygnaW5mb19tdXN0X3ZhbGlkYXRlJyl9Ij4qKiZuYnNwOyB7JGVudHJ5LT51c2VybmFtZX08L3NwYW4+CgkJCSAge2Vsc2V9CgkJCSAgICAgeyRlbnRyeS0+dXNlcm5hbWV9CgkJCSAgey9pZn0KCQkJPC90ZD4KCQkJPHRkPnskZW50cnktPmNyZWF0ZWR9PC90ZD4KCQkJPHRkPnskZW50cnktPmV4cGlyZXN9PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAge2lmIGlzc2V0KCR2aWV3cHJvcHMpICYmIGlzc2V0KCRlbnRyeS0+ZXh0cmEpfQogICAgICAgICAgICAgICAgICAgICAgICB7Zm9yZWFjaCBmcm9tPSR2aWV3cHJvcHMgaXRlbT0nb25lJ30KICAgICAgICAgICAgICAgICAgICAgICAgPHRkPntpZiBpc3NldCgkZW50cnktPmV4dHJhLiRvbmUpICYmICRlbnRyeS0+ZXh0cmEuJG9uZX17JGVudHJ5LT5leHRyYS4kb25lfXsvaWZ9PC90ZD4KICAgICAgICAgICAgICAgICAgICAgICAgey9mb3JlYWNofQogICAgICAgICAgICAgICAgICAgICAgICB7L2lmfQoJCQk8dGQ+CgkJCSAge2lmICRlbnRyeS0+ZGlzYWJsZWR9CgkJCSAgICA8YSBocmVmPSJ7bW9kdWxlX2FjdGlvbl91cmwgYWN0aW9uPWFkbWluX2VuYWJsZV91c2VyIHVpZD0kZW50cnktPmlkIHN0YXRlPTF9Ij57Y2dpbWFnZSBpbWFnZT0naWNvbnMvc3lzdGVtL2ZhbHNlLmdpZicgYWx0PSRtb2QtPkxhbmcoJ2VuYWJsZV91c2VyJyl9PC9hPgoJCQkgIHtlbHNlfQoJCQkgICAgPGEgaHJlZj0ie21vZHVsZV9hY3Rpb25fdXJsIGFjdGlvbj1hZG1pbl9lbmFibGVfdXNlciB1aWQ9JGVudHJ5LT5pZCBzdGF0ZT0wfSI+e2NnaW1hZ2UgaW1hZ2U9J2ljb25zL3N5c3RlbS90cnVlLmdpZicgYWx0PSRtb2QtPkxhbmcoJ2Rpc2FibGVfdXNlcicpfTwvYT4KCQkJICB7L2lmfQoJCQk8L3RkPgoJCQk8dGQ+e2lmIGlzc2V0KCRlbnRyeS0+bG9nb3V0bGluayl9eyRlbnRyeS0+bG9nb3V0bGlua317L2lmfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5oaXN0b3J5bGlua3xkZWZhdWx0OicnfTwvdGQ+CgkJCTx0ZD57JGVudHJ5LT5lZGl0bGlua3xkZWZhdWx0OicnfTwvdGQ+CgkJCTx0ZD57aWYgaXNzZXQoJGVudHJ5LT5kZWxldGVsaW5rKX17JGVudHJ5LT5kZWxldGVsaW5rfXsvaWZ9PC90ZD4KCQkJPHRkPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgY2xhc3M9ImJ1bGtzZWxlY3QiIG5hbWU9InskYWN0aW9uaWR9c2VsZWN0ZWRbXSIgdmFsdWU9InskZW50cnktPmlkfSIvPjwvdGQ+CgkJPC90cj4Key9mb3JlYWNofQoJPC90Ym9keT4KPC90YWJsZT4Key9pZn0Ke2lmICRpdGVtY291bnQgPiAwICYmICFlbXB0eSgkYnVsa19hY3Rpb25zKX0KICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPgogICAgPGRpdiBzdHlsZT0iZmxvYXQ6IGxlZnQ7Ij48L2Rpdj4KICAgIDxkaXYgc3R5bGU9ImZsb2F0OiByaWdodDsiPgogICAgICA8bGFiZWw+eyRtb2QtPkxhbmcoJ3dpdGhfc2VsZWN0ZWQnKX06CiAgICAgICAgIDxzZWxlY3QgbmFtZT0ieyRhY3Rpb25pZH1idWxrX2FjdGlvbiI+Cgkge2h0bWxfb3B0aW9ucyBvcHRpb25zPSRidWxrX2FjdGlvbnN9CgkgPC9zZWxlY3Q+CiAgICAgIDwvbGFiZWw+CiAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGlkPSJkb2J1bGsiIG5hbWU9InskYWN0aW9uaWR9ZG9idWxrIiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPgogICAgPC9kaXY+CiAgPC9kaXY+CnsvaWZ9CnskZW5kZm9ybX0K]]></data>
	</file>
</module>
