<?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>btAdminer</name>
	<version>1.0</version>
  <mincmsversion>1.9.4.2</mincmsversion>
	<help><![CDATA[LS1BZGQgTWUgLSBtb2R1bGU6YnRBZG1pbmVyIHN0cmluZzpoZWxwLS08aDM+UGFyYW1ldGVyPC9oMz48dWw+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbGFuZz0iZW5fVVMiIC0gRGllc2VyIFBhcmFtZXRlciBsZWd0IGRpZSBTcHJhY2hlIGZlc3QsIGRpZSB2b20gTW9kdWwgZiZ1dW1sO3IgZGllIEF1c2dhYmUgYXVmIGRlciBXZWJzZWl0ZSB2ZXJ3ZW5kZXQgd2lyZC4gRGllcyB3aXJkIGplZG9jaCBuaWNodCB2b24gYWxsZW4gTW9kdWxlbiB1bnRlcnN0JnV1bWw7dHp0IGJ6dy4gYmVuJm91bWw7dGlndC48L2xpPjwvdWw+]]></help>
	<about><![CDATA[PGJyIC8+QXV0b3I6IGJsYXR0ZXJ0ZWNoIGluZm9ybWF0aWsgJmx0O2luZm9AYmxhdHRlcnRlY2guY2gmZ3Q7PGJyIC8+PGJyIC8+VmVyc2lvbiA6IDEuMDxiciAvPg==]]></about>
	<description><![CDATA[Bindet den Datenbank-Editor Adminer ein.]]></description>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.admin_editoption.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIE1vZHVsZSA6IGJ0QWRtaW5lciAoYykgMjAxMSBieSBibGF0dGVydGVjaCBpbmZvcm1hdGlrIChpbmZvQGJsYXR0ZXJ0ZWNoLmNoKQ0KIyAgICAgICAgICBhIEFkbWluZXIgZXh0ZW5zaW9uIGZvciBDTVMgTWFkZSBTaW1wbGUNCiMgICAgICAgICAgVGhlIHByb2plY3RzIGhvbWVwYWdlIGlzIGRldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9idGFkbWluZXIvDQojICAgICAgICAgIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAwNC0yMDEwIGJ5IFRlZCBLdWxwDQojICAgICAgICAgIFRoZSBwcm9qZWN0cyBob21lcGFnZSBpczogY21zbWFkZXNpbXBsZS5vcmcNCiMgVmVyc2lvbjogMS4wDQojIEZpbGUgICA6IGFjdGlvbi5hZG1pbl9lZGl0b3B0aW9uLnBocA0KIyBQdXJwb3NlOiBzYXZlcyB0aGUgcHJlZmVyZW5jZXMgaW4gdGhlIGRhdGFiYXNlDQojIExpY2Vuc2U6IEdQTA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdTZXQgYnRBZG1pbmVyIFByZWZzJykpIHJldHVybjsNCg0KJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FkbWluX3NlY3Rpb24nLCBpc3NldCgkcGFyYW1zWydhZG1pbl9zZWN0aW9uJ10pID8gJHBhcmFtc1snYWRtaW5fc2VjdGlvbiddIDogJ3NpdGVhZG1pbicpOw0KJHRoaXMtPlNldFByZWZlcmVuY2UoJ3Byb2cnLCBpc3NldCgkcGFyYW1zWydwcm9nJ10pID8gJHBhcmFtc1sncHJvZyddIDogJ2FkbWluZXInKTsNCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkaXNwbGF5JywgaXNzZXQoJHBhcmFtc1snZGlzcGxheSddKSA/ICRwYXJhbXNbJ2Rpc3BsYXknXSA6ICdpZnJhbWUnKTsNCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdmcmFtZWhlaWdodCcsIGlzc2V0KCRwYXJhbXNbJ2ZyYW1laGVpZ2h0J10pID8gJHBhcmFtc1snZnJhbWVoZWlnaHQnXSA6ICc4MDAnKTsNCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdvbmx5YmFja2VuZCcsIGlzc2V0KCRwYXJhbXNbJ29ubHliYWNrZW5kJ10pID8gJHBhcmFtc1snb25seWJhY2tlbmQnXSA6ICcwJyk7DQoNCiR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsIGFycmF5KCdtZXNzYWdlJz0+ICdvcHRpb25zX3VwZGF0ZWQnLCAnYWN0aXZlX3RhYicgPT4gJ29wdGlvbnRhYicpKTsNCj8+]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTW9kdWxlIDogYnRBZG1pbmVyIChjKSAyMDExIGJ5IGJsYXR0ZXJ0ZWNoIGluZm9ybWF0aWsgKGluZm9AYmxhdHRlcnRlY2guY2gpDQojICAgICAgICAgIGEgQWRtaW5lciBleHRlbnNpb24gZm9yIENNUyBNYWRlIFNpbXBsZQ0KIyAgICAgICAgICBUaGUgcHJvamVjdHMgaG9tZXBhZ2UgaXMgZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2J0YWRtaW5lci8NCiMgICAgICAgICAgQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA0LTIwMTAgYnkgVGVkIEt1bHANCiMgICAgICAgICAgVGhlIHByb2plY3RzIGhvbWVwYWdlIGlzOiBjbXNtYWRlc2ltcGxlLm9yZw0KIyBWZXJzaW9uOiAxLjANCiMgRmlsZSAgIDogYWN0aW9uLmRlZmF1bHRhZG1pbi5waHANCiMgUHVycG9zZTogcGVyZm9ybXMgdGhlIGRlZmF1bHQgYmFja2VuZCBhY3Rpb24gaWYgIkV4dGVuc2lvbnMtPmJ0QWRtaW5lciIgaXMgc2VsZWN0ZWQNCiMgTGljZW5zZTogR1BMDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZighZnVuY3Rpb25fZXhpc3RzKCdjbXNtcycpIHx8ICFpc19vYmplY3QoY21zbXMoKSkpIGV4aXQ7DQoNCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbignVXNlIGJ0QWRtaW5lcicpKSB7DQoJcmV0dXJuOw0KfQ0KDQpnbG9iYWwgJGNvbmZpZzsNCg0KLy8gQWRtaW5lciBTZXNzaW9uDQovLyBOZWVkIHRvIGhhdmUgY29va2llIHZpc2libGUgZnJvbSBwYXJlbnQgZGlyZWN0b3J5DQpzZXNzaW9uX3NldF9jb29raWVfcGFyYW1zKDAsICcvJywgJycsIDApOw0KLy8gQ3JlYXRlIHNpZ25vbiBzZXNzaW9uDQokc2Vzc2lvbl9uYW1lID0gJ2J0QWRtaW5lcic7DQpzZXNzaW9uX25hbWUoJHNlc3Npb25fbmFtZSk7DQpzZXNzaW9uX3N0YXJ0KCk7DQoNCi8vIFN0b3JlIHRoZXJlIGNyZWRlbnRpYWxzIGluIHRoZSBzZXNzaW9uDQokX1NFU1NJT05bJ0FETV9kcml2ZXInXSA9ICdzZXJ2ZXInOw0KJF9TRVNTSU9OWydBRE1fdXNlciddID0gJGNvbmZpZ1snZGJfdXNlcm5hbWUnXTsNCiRfU0VTU0lPTlsncHdkcyddWyRfU0VTU0lPTlsnQURNX2RyaXZlciddXVskY29uZmlnWydkYl9ob3N0bmFtZSddXVskY29uZmlnWydkYl91c2VybmFtZSddXSA9ICRjb25maWdbJ2RiX3Bhc3N3b3JkJ107DQokX1NFU1NJT05bJ0FETV9wYXNzd29yZCddID0gJGNvbmZpZ1snZGJfcGFzc3dvcmQnXTsNCiRfU0VTU0lPTlsnQURNX3NlcnZlciddID0gJGNvbmZpZ1snZGJfaG9zdG5hbWUnXTsNCiRfU0VTU0lPTlsnQURNX2RiJ10gPSAkY29uZmlnWydkYl9uYW1lJ107DQokX1NFU1NJT05bJ0FETV9oaWRlT3RoZXJEQnMnXSA9ICcnOw0KLy8gR2V0IHNpZ25vbiB1cmkgZm9yIHJlZGlyZWN0DQokX1NFU1NJT05bJ0FETV9TaWdub25VUkwnXSA9ICRjb25maWdbJ3Jvb3RfdXJsJ10uJy9tb2R1bGVzL2J0QWRtaW5lci9idEFkbWluZXIucGhwJzsNCiRfU0VTU0lPTlsnQURNX0xvZ291dFVSTCddID0gJGNvbmZpZ1sncm9vdF91cmwnXS4nLycuJGNvbmZpZ1snYWRtaW5fZGlyJ10uJy9sb2dvdXQucGhwJzsNCiRfU0VTU0lPTlsnQURNX3VwbG9hZERpciddID0gJGNvbmZpZ1sndXBsb2Fkc19wYXRoJ107DQovLyBPcHRpb25zDQokX1NFU1NJT05bJ0FETV9wcm9nJ10gPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgncHJvZycpOw0KDQokc2lkID0gc2Vzc2lvbl9pZCgpOw0KLy8gRm9yY2UgdG8gc2V0IHRoZSBjb29raWUNCnNldGNvb2tpZSgkc2Vzc2lvbl9uYW1lLCAkc2lkLCAwLCAnLycsICcnKTsNCi8vIENsb3NlIHRoYXQgc2Vzc2lvbg0Kc2Vzc2lvbl93cml0ZV9jbG9zZSgpOw0KDQoNCg0KaWYgKGlzc2V0KCRwYXJhbXNbJ21lc3NhZ2UnXSkpIHsNCgllY2hvICR0aGlzLT5TaG93TWVzc2FnZSgkdGhpcy0+TGFuZygkcGFyYW1zWydtZXNzYWdlJ10pKTsNCn0NCg0KaWYgKGlzc2V0KCRwYXJhbXNbJ2Vycm9ycyddKSAmJiBjb3VudCgkcGFyYW1zWydlcnJvcnMnXSkpIHsNCgllY2hvICR0aGlzLT5TaG93RXJyb3JzKCRwYXJhbXNbJ2Vycm9ycyddKTsNCn0NCg0KaWYoJHRoaXMtPkNoZWNrUGVybWlzc2lvbignU2V0IGJ0QWRtaW5lciBQcmVmcycpKSB7DQoNCglpZiAoIWVtcHR5KCRwYXJhbXNbJ2FjdGl2ZV90YWInXSkpIHsNCgkJJHRhYiA9ICRwYXJhbXNbJ2FjdGl2ZV90YWInXTsNCgl9IGVsc2Ugew0KCQkkdGFiID0gJHRoaXMtPkNoZWNrUGVybWlzc2lvbignU2V0IGJ0QWRtaW5lciBQcmVmcycpID8gJ2FkbWluZXJ0YWInIDogJ29wdGlvbnRhYic7DQoJfQ0KDQoJZWNobyAkdGhpcy0+U3RhcnRUYWJIZWFkZXJzKCk7DQoNCgllY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ2FkbWluZXJ0YWInLCAnYnRBZG1pbmVyJywgKCR0YWIgPT0gJ2FkbWluZXJ0YWInKSk7DQoJZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCdvcHRpb250YWInLCAkdGhpcy0+TGFuZygnb3B0aW9ucycpLCAoJHRhYiA9PSAnb3B0aW9udGFiJykpOw0KDQoNCgllY2hvICR0aGlzLT5FbmRUYWJIZWFkZXJzKCk7DQoJZWNobyAkdGhpcy0+U3RhcnRUYWJDb250ZW50KCk7DQoNCgllY2hvICR0aGlzLT5TdGFydFRhYignYWRtaW5lcnRhYicsICRwYXJhbXMpOw0KCWluY2x1ZGUgZGlybmFtZShfX0ZJTEVfXykgLiAnL2Z1bmN0aW9uLmFkbWluX2FkbWluZXJ0YWIucGhwJzsNCgllY2hvICR0aGlzLT5FbmRUYWIoKTsNCg0KCWVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdvcHRpb250YWInLCAkcGFyYW1zKTsNCglpbmNsdWRlIGRpcm5hbWUoX19GSUxFX18pIC4gJy9mdW5jdGlvbi5hZG1pbl9vcHRpb250YWIucGhwJzsNCgllY2hvICR0aGlzLT5FbmRUYWIoKTsNCg0KCWVjaG8gJHRoaXMtPkVuZFRhYkNvbnRlbnQoKTsNCg0KfSBlbHNlIHsNCglpbmNsdWRlIGRpcm5hbWUoX19GSUxFX18pIC4gJy9mdW5jdGlvbi5hZG1pbl9hZG1pbmVydGFiLnBocCc7DQp9DQo=]]></data>
	</file>
	<file>
	  <filename>/adminer.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[DQpib2R5IHsNCiAgICBmb250LXNpemU6IDExcHg7DQogICAgbGluZS1oZWlnaHQ6IDE0cHg7DQogICAgZm9udC1mYW1pbHk6IFZlcmRhbmEsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7DQp9DQpjb2RlIHsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsNCn0NCnRhYmxlIHsNCiAgICBmb250LXNpemU6IDExcHg7DQogICAgYmFja2dyb3VuZDogbm9uZSByZXBlYXQgc2Nyb2xsIDAgMCAjRkZGRkZGOw0KICAgIGJvcmRlcjogMXB4IHNvbGlkICNBMkFBQjg7DQp9DQp0YWJsZS5ub3dyYXAgew0KICAgIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgI0ZGRkZGRjsNCiAgICBib3JkZXI6IDFweCBzb2xpZCAjQTJBQUI4Ow0KfQ0KdGhlYWQgdGQsIHRoZWFkIHRoLCB0aGVhZCB0cjpob3ZlciB0ZCwgdGhlYWQgdHI6aG92ZXIgdGggew0KICAgIGJhY2tncm91bmQtY29sb3I6ICM1ODU4NTg7DQogICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoY2VudGVyIHRvcCwgIzdGN0Y3RiAxMCUsICM1QjVCNUIgMTAwJSk7DQogICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14Ow0KICAgIGNvbG9yOiAjRkZGRkZGOw0KICAgIGZvbnQtc2l6ZTogMTBweDsNCiAgICBoZWlnaHQ6IDIwcHg7DQogICAgbGluZS1oZWlnaHQ6IDE5cHg7DQp9DQp0ciB7DQogICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjsNCn0NCnRyLm9kZCB7DQogICAgYmFja2dyb3VuZC1jb2xvcjogI0Y3RjdGNzsNCn0NCnRkLCB0aCB7DQogICAgYm9yZGVyOiBtZWRpdW0gbm9uZTsNCiAgICBiYWNrZ3JvdW5kOiBub25lOw0KfQ0KdGJvZHkgdHI6aG92ZXIgdGQsIHRib2R5IHRyOmhvdmVyIHRoIHsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjREVERURFOw0KfQ0KYSB7DQogICAgY29sb3I6IGJsYWNrOw0KICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCiAgICBjdXJzb3I6IHBvaW50ZXI7DQp9DQphOmxpbmsgew0KICAgIGNvbG9yOiBibGFjazsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQogICAgY3Vyc29yOiBwb2ludGVyOw0KfQ0KYTp2aXNpdGVkIHsNCiAgICBjb2xvcjogYmxhY2s7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIGN1cnNvcjogcG9pbnRlcjsNCn0NCmE6aG92ZXIgew0KICAgIGNvbG9yOiBibGFjazsNCiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsNCn0NCmE6YWN0aXZlIHsNCiAgICBjb2xvcjogYmxhY2s7DQogICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7DQp9DQp0YWJsZS5ub3dyYXAgYVtocmVmKj0iZWRpdD0iXVtocmVmKj0iJndoZXJlIl0gew0KICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgICBsZWZ0OiA0cHg7DQogICAgd2lkdGg6IDE2cHg7DQogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgIG92ZXJmbG93OiBoaWRkZW47DQp9DQoNCnRhYmxlLm5vd3JhcCBhW2hyZWYqPSJlZGl0PSJdW2hyZWYqPSImd2hlcmUiXTpob3ZlciB7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KfQ0KdGFibGUubm93cmFwIGFbaHJlZio9ImVkaXQ9Il1baHJlZio9IiZ3aGVyZSJdOmJlZm9yZSB7DQogICAgY29udGVudDogIlwwMGEwIjsNCiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImltYWdlcy9kb2N1bWVudC1vcGVuLnBuZyIpOw0KICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IDA7DQogICAgaGVpZ2h0OiAxNnB4Ow0KICAgIHdpZHRoOiAxNnB4Ow0KICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgICBvdmVyZmxvdzogaGlkZGVuOw0KICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsNCn0NCnRhYmxlLm5vd3JhcCB0aGVhZCB0aCBhLCB0YWJsZS5ub3dyYXAgdGhlYWQgdGQgYSB7DQogICAgY29sb3I6IHdoaXRlOw0KfQ0KDQpwI2JyZWFkY3J1bWIgew0KICAgIGJvcmRlcjogbWVkaXVtIG5vbmU7DQp9DQpwI2JyZWFkY3J1bWIgYSB7DQogICAgY29sb3I6ICNGRkZGRkY7DQp9DQojbWVudSB7DQogICAgbWFyZ2luOiAwOw0KICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgICB0b3A6IDA7DQogICAgYm90dG9tOiAwOw0KICAgIGxlZnQ6IDA7DQogICAgd2lkdGg6IDI3MHB4Ow0KICAgIHBhZGRpbmc6IDA7DQogICAgYmFja2dyb3VuZC1jb2xvcjogI0VCRUJFQjsNCiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQU1BQUFBQkNBWUFBQUFiNEJTMEFBQUFHRWxFUVZSNDJnRU5BUEwvQU1qSXlFekl5TWl6eU1qSS96aHZDUWVsYUhQUEFBQUFBRWxGVGtTdVFtQ0MiKTsNCiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7DQogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyOw0KfQ0KI21lbnUgZm9ybVttZXRob2QqPSJwb3N0Il0gew0KICAgIGJhY2tncm91bmQtY29sb3I6ICNEQURBREE7DQogICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFNQUFBQUJDQVlBQUFBYjRCUzBBQUFBR0VsRVFWUjQyZ0VOQVBML0FMaTR1RXk0dUxpMHVMaTQvelNFQ0hpanB3TUdBQUFBQUVsRlRrU3VRbUNDIik7DQogICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15Ow0KICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjsNCn0NCiNtZW51IHAgew0KICAgIG1hcmdpbjogMDsNCiAgICBwYWRkaW5nOiA0cHggMTBweDsNCiAgICBib3JkZXI6IG1lZGl1bSBub25lOw0KfQ0KI21lbnUgcCBzZWxlY3Qgew0KICAgIHdpZHRoOiAxMDAlOw0KfQ0KDQojbWVudSBoMSB7DQogICAgaGVpZ2h0OiAyMnB4Ow0KICAgIHBhZGRpbmc6IDAgMTBweDsNCiAgICBtYXJnaW46IDA7DQogICAgbGluZS1oZWlnaHQ6IDIwcHg7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgYmFja2dyb3VuZC1jb2xvcjogIzU4NTg1ODsNCiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQU1BQUFBQkNBWUFBQUFiNEJTMEFBQUFHRWxFUVZSNDJnRU5BUEwvQUVCQVFFeEFRRUN6UUVCQS94YjNCRDhDSEJOMEFBQUFBRWxGVGtTdVFtQ0MiKTsNCiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7DQogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyOw0KICAgIGNvbG9yOiAjRkZGRkZGOw0KICAgIGZvbnQtc2l6ZTogMTBweDsNCiAgICBib3JkZXI6IG1lZGl1bSBub25lOw0KfQ0KDQojbWVudSBoMSBhIHsNCiAgICBmb250LXNpemU6IDEzcHg7DQogICAgY29sb3I6ICNGRkZGRkY7DQp9DQoNCiNtZW51IGgxIC52ZXJzaW9uIHsNCiAgICBmb250LXNpemU6IDlweDsNCiAgICBjb2xvcjogI0ZGRkZGRjsNCn0NCg0KI21lbnUgKiB7DQogICAgbWFyZ2luOiAwOw0KICAgIHBhZGRpbmc6IDA7DQp9DQoNCnAjdGFibGVzIHsNCiAgICBtYXJnaW46IDA7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIHRvcDogOTdweDsNCiAgICBib3R0b206IDA7DQogICAgbGVmdDogMDsNCiAgICBwYWRkaW5nOiAwIDAgMCA1cHg7DQogICAgb3ZlcmZsb3cteDogaGlkZGVuOw0KICAgIG92ZXJmbG93LXk6IGF1dG87DQogICAgd2lkdGg6IDI2NXB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAxOHB4Ow0KICAgIGJhY2tncm91bmQtY29sb3I6ICNFQkVCRUI7DQogICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFNQUFBQUJDQVlBQUFBYjRCUzBBQUFBR0VsRVFWUjQyZ0VOQVBML0FNakl5RXpJeU1penlNakkvemh2Q1FlbGFIUFBBQUFBQUVsRlRrU3VRbUNDIik7DQogICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15Ow0KICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjsNCn0NCg0KcCN0YWJsZXMgYSB7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgbWFyZ2luOiAwOw0KICAgIHBhZGRpbmc6IDA7DQogICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOw0KICAgIG1hcmdpbi10b3A6IDFweDsNCiAgICB0b3A6IDBweDsNCn0NCg0KcCN0YWJsZXMgYVtocmVmKj0ic2VsZWN0PSJdIHsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgbGVmdDogMTBweDsNCiAgICB3aWR0aDogMTZweDsNCiAgICBkaXNwbGF5OiBibG9jazsNCiAgICBvdmVyZmxvdzogaGlkZGVuOw0KfQ0KDQpwI3RhYmxlcyBhW2hyZWYqPSJzZWxlY3Q9Il06YmVmb3JlIHsNCiAgICBjb250ZW50OiAiXDAwYTAiOw0KICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiaW1hZ2VzL3N5c3RlbS1saXN0LW9wZW4ucG5nIik7DQogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggMDsNCiAgICBoZWlnaHQ6IDE2cHg7DQogICAgd2lkdGg6IDE2cHg7DQogICAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICAgIG92ZXJmbG93OiBoaWRkZW47DQogICAgcG9zaXRpb246IHJlbGF0aXZlOw0KICAgIGxpbmUtaGVpZ2h0OiAxOHB4Ow0KfQ0KDQpwI3RhYmxlcyBhW2hyZWYqPSJ0YWJsZT0iXSB7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICAgIGxlZnQ6IDM2cHg7DQogICAgd2lkdGg6IDIwMHB4Ow0KfQ0KcCN0YWJsZXMgc3Bhbi50YWJsZXMtbGluZSB7DQogICAgZGlzcGxheTogbGlzdC1pdGVtOw0KICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50Ow0KICAgIHBvc2l0aW9uOiByZWxhdGl2ZQ0KfQ0KcCN0YWJsZXMgc3Bhbi50YWJsZXMtbGluZS1hY3RpdmUgew0KICAgIGRpc3BsYXk6IGxpc3QtaXRlbTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4Ow0KICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDdEN0Q3Ow0KICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0Q3RDdENzsNCiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0Q3RDdENzsNCiAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQp9DQpwI3RhYmxlcyBzcGFuLnRhYmxlcy1saW5lOmhvdmVyIHsNCiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Q3RDdENzsNCiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNEN0Q3RDc7DQogICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNEN0Q3RDc7DQogICAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjJGMjsNCiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQU1BQUFBQkNBWUFBQUFiNEJTMEFBQUFHRWxFUVZSNDJnRU5BUEwvQU1qSXlFekl5TWl6eU1qSS96aHZDUWVsYUhQUEFBQUFBRWxGVGtTdVFtQ0MiKTsNCiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7DQogICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15Ow0KICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzcHg7DQogICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDsNCn0NCiNsYW5nIHsNCiAgICB0b3A6IDFweDsNCiAgICByaWdodDogMThweDsNCiAgICBsZWZ0OiBhdXRvOw0KICAgIG1hcmdpbjogMDsNCiAgICBwYWRkaW5nOiAwOw0KICAgIHotaW5kZXg6IDEwOw0KICAgIGNvbG9yOiAjRkZGRkZGOw0KfQ0KI2xhbmcgc2VsZWN0IHsNCiAgICBoZWlnaHQ6IDE4cHg7DQp9DQoNCiNjb250ZW50IHsNCiAgICBtYXJnaW46IDA7DQogICAgcGFkZGluZzogMCAxMHB4IDEwcHggMTBweDsNCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgbGVmdDogMjcwcHg7DQogICAgcmlnaHQ6IDA7DQogICAgdG9wOiA0OXB4Ow0KICAgIGJvdHRvbTogMDsNCiAgICBvdmVyZmxvdzogYXV0bzsNCn0NCiNjb250ZW50IHRhYmxlIHRyOm50aC1jaGlsZCgybikgdGQsICNjb250ZW50IHRhYmxlIHRyOm50aC1jaGlsZCgybikgdGggew0KICAgIGJhY2tncm91bmQtY29sb3I6ICNGN0Y3Rjc7DQp9DQojY29udGVudCB0YWJsZSB0Ym9keSB0cjpob3ZlciB0ZCwgI2NvbnRlbnQgdGFibGUgdGJvZHkgdHI6aG92ZXIgdGggew0KICAgIGJhY2tncm91bmQtY29sb3I6ICNERURFREU7DQp9DQojY29udGVudCBoMiB7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgbWFyZ2luOiAwOw0KICAgIGhlaWdodDogMjFweDsNCiAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgbGVmdDogMjcwcHg7DQogICAgcmlnaHQ6IDA7DQogICAgdG9wOiAyMnB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAyMnB4Ow0KICAgIHBhZGRpbmc6IDAgMCA2cHggMTBweDsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjREFEQURBOw0KICAgIGZvbnQtc2l6ZTogMTJweDsNCiAgICBib3JkZXI6IG1lZGl1bSBub25lOw0KICAgIGZvbnQtd2VpZ2h0OiBib2xkOw0KfQ0KDQpoMSwgaDIsIGgzLCBoNCB7DQogICAgY29sb3I6ICM1NTU1NTU7DQogICAgZm9udC13ZWlnaHQ6IGJvbGQ7DQp9DQpoMyB7DQogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNDRENEQ0Q7DQogICAgcGFkZGluZy1ib3R0b206IDZweDsNCn0NCiNicmVhZGNydW1iIHsNCiAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgbGVmdDogMjcwcHg7DQogICAgcmlnaHQ6IDA7DQogICAgdG9wOiAwOw0KICAgIGhlaWdodDogMjJweDsNCiAgICBtYXJnaW46IDA7DQogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5OTk7DQogICAgYmFja2dyb3VuZC1jb2xvcjogIzU4NTg1ODsNCiAgICBjb2xvcjogI0ZGRkZGRjsNCn0NCg0KaW5wdXQsIHRleHRhcmVhLCBzZWxlY3QsIGJ1dHRvbiB7DQogICAgZm9udC1mYW1pbHk6IFZlcmRhbmEsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7DQogICAgZm9udC1zaXplOiAxMXB4Ow0KICAgIGxpbmUtaGVpZ2h0OiAxNnB4Ow0KfQ0KaW5wdXRbdHlwZT0ic3VibWl0Il0sIGlucHV0W3R5cGU9ImJ1dHRvbiJdLCBpbnB1dFt0eXBlPSJyZXNldCJdIHsNCiAgICBib3JkZXI6IDFweCBzb2xpZCAjQUNCM0JFOw0KICAgIGNvbG9yOiAjMzMzMzMzOw0KICAgIGN1cnNvcjogcG9pbnRlcjsNCiAgICBoZWlnaHQ6IDE5cHg7DQogICAgbWFyZ2luLWxlZnQ6IDVweDsNCiAgICBwYWRkaW5nOiAwIDRweCAycHg7DQogICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjsNCiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2ltYWdlcy9idXR0b24ucG5nJyk7DQogICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KGNlbnRlciB0b3AsICNmNmY2ZjYgMTAlLCAjZDVkNWQ1IDkwJSk7DQogICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQoY2VudGVyIHRvcCwgI2Y2ZjZmNiAxMCUsICNkNWQ1ZDUgOTAlKTsNCiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCUgMCUsIDAlIDEwMCUsIGNvbG9yLXN0b3AoMC4xLCAjZjZmNmY2KSwgY29sb3Itc3RvcCgwLjksICNkNWQ1ZDUpKTsNCiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tOw0KICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDsNCiAgICBib3JkZXItcmFkaXVzOiAxcHg7DQogICAgLW1vei1ib3JkZXItcmFkaXVzOiAxcHg7DQp9DQppbnB1dFt0eXBlPSJzdWJtaXQiXTpob3ZlciwgaW5wdXRbdHlwZT0iYnV0dG9uIl06aG92ZXIsIGlucHV0W3R5cGU9InJlc2V0Il06aG92ZXIgew0KICAgIGJhY2tncm91bmQtY29sb3I6ICNjOGM4Yzg7DQogICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdpbWFnZXMvYnV0dG9uLWhvdmVyLnBuZycpOw0KICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChjZW50ZXIgdG9wLCAjZjZmNmY2IDEwJSwgI2M4YzhjOCA5MCUpOw0KICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KGNlbnRlciB0b3AsICNmNmY2ZjYgMTAlLCAjYmRiY2JjIDkwJSk7DQogICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAlIDAlLCAwJSAxMDAlLCBjb2xvci1zdG9wKDAuMSwgI2Y2ZjZmNiksIGNvbG9yLXN0b3AoMC45LCAjYzhjOGM4KSk7DQogICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tOw0KICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDsNCiAgICBib3JkZXI6IDFweCBzb2xpZCAjNzM3ZjkxOw0KICAgIGNvbG9yOiAjMWUxZTFlOw0KICAgIGN1cnNvcjogcG9pbnRlcjsNCn0NCiNtZW51IGlucHV0W3R5cGU9InN1Ym1pdCJdLCAjbWVudSBpbnB1dFt0eXBlPSJidXR0b24iXSwgI21lbnUgaW5wdXRbdHlwZT0icmVzZXQiXSB7DQogICAgcGFkZGluZzogMCA0cHggMnB4Ow0KICAgIG1hcmdpbi1sZWZ0OiA1cHg7DQp9DQoubWVzc2FnZSwgLmVycm9yIHsNCiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMHB4IDEycHg7DQogICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsNCiAgICBib3JkZXI6IDFweCBzb2xpZDsNCiAgICBtYXJnaW4tYm90dG9tOiA0cHg7DQogICAgcGFkZGluZzogMTJweCAxMnB4IDEycHggMzZweDsNCn0NCi5tZXNzYWdlIHsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUFGN0ZGOw0KICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiaW1hZ2VzL2luZm9ybWF0aW9uLnBuZyIpOw0KICAgIGJvcmRlci1jb2xvcjogI0M1REJFNjsNCiAgICBjb2xvcjogIzRDNzNBMTsNCn0NCi5lcnJvciB7DQogICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RDNDRjsNCiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoImltYWdlcy9lcnJvci5wbmciKTsNCiAgICBib3JkZXItY29sb3I6ICNENjZDNjg7DQogICAgY29sb3I6ICNBQTAyMjU7DQp9DQojbG9hZGVyIHsNCiAgICB0b3A6IDJlbTsNCiAgICBsZWZ0OiA1OWVtOw0KfQ0KcC50YWJzIHsNCiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0FEQURBRDsNCiAgICBwYWRkaW5nOiAzcHggMCAzcHggMTBweDsNCn0NCnAudGFicyBhIHsNCiAgICAtbW96LWJvcmRlci1ib3R0b20tY29sb3JzOiBub25lOw0KICAgIC1tb3otYm9yZGVyLWltYWdlOiBub25lOw0KICAgIC1tb3otYm9yZGVyLWxlZnQtY29sb3JzOiBub25lOw0KICAgIC1tb3otYm9yZGVyLXJpZ2h0LWNvbG9yczogbm9uZTsNCiAgICAtbW96LWJvcmRlci10b3AtY29sb3JzOiBub25lOw0KICAgIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgI0RBREFEQTsNCiAgICBib3JkZXItY29sb3I6ICNBREFEQUQgI0FEQURBRCAtbW96LXVzZS10ZXh0LWNvbG9yOw0KICAgIGJvcmRlci1zdHlsZTogc29saWQgc29saWQgbm9uZTsNCiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzcHg7DQogICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDsNCiAgICBib3JkZXItd2lkdGg6IDFweCAxcHggbWVkaXVtOw0KICAgIGNvbG9yOiAjNjA2MDYwOw0KICAgIHBhZGRpbmc6IDRweCAxMHB4Ow0KICAgIG1hcmdpbjogMCAtMXB4IDAgLTJweDsNCiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0MwQzBDMDsNCn0NCnAudGFicyBhOmhvdmVyIHsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVFRUVFOw0KICAgIGJvcmRlci1jb2xvcjogI0FEQURBRDsNCiAgICBjb2xvcjogIzYwNjA2MDsNCiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7DQp9DQpwLnRhYnMgYS5hY3RpdmUgew0KICAgIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgI0ZGRkZGRjsNCiAgICBjb2xvcjogIzAwMDAwMDsNCiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZGRkZGRjsNCn0=]]></data>
	</file>
	<file>
	  <filename>/adminer/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/adminer/.htaccess</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[b3JkZXIgYWxsb3csZGVueQpkZW55IGZyb20gYWxs]]></data>
	</file>
	<file>
	  <filename>/adminer/adminer-3.2.2.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKLyoqIEFkbWluZXIgLSBDb21wYWN0IGRhdGFiYXNlIG1hbmFnZW1lbnQKKiBAbGluayBodHRwOi8vd3d3LmFkbWluZXIub3JnLwoqIEBhdXRob3IgSmFrdWIgVnJhbmEsIGh0dHA6Ly93d3cudnJhbmEuY3ovCiogQGNvcHlyaWdodCAyMDA3IEpha3ViIFZyYW5hCiogQGxpY2Vuc2UgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMAoqIEBsaWNlbnNlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWwgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UsIHZlcnNpb24gMiAob25lIG9yIG90aGVyKQoqL2Vycm9yX3JlcG9ydGluZyg2MTM1KTskX2U9KCFlcmVnKCdeKHVuc2FmZV9yYXcpPyQnLGluaV9nZXQoImZpbHRlci5kZWZhdWx0IikpfHxpbmlfZ2V0KCJmaWx0ZXIuZGVmYXVsdF9mbGFncyIpKTtpZigkX2Upe2ZvcmVhY2goYXJyYXkoJ19HRVQnLCdfUE9TVCcsJ19DT09LSUUnLCdfU0VSVkVSJylhcyRiKXskYmU9ZmlsdGVyX2lucHV0X2FycmF5KGNvbnN0YW50KCJJTlBVVCRiIiksRklMVEVSX1VOU0FGRV9SQVcpO2lmKCRiZSl7JCRiPSRiZTt9fX1pZihpc3NldCgkX0dFVFsiZmlsZSJdKSl7aGVhZGVyKCJFeHBpcmVzOiAiLmdtZGF0ZSgiRCwgZCBNIFkgSDppOnMiLHRpbWUoKSszNjUqMjQqNjAqNjApLiIgR01UIik7aWYoJF9HRVRbImZpbGUiXT09ImZhdmljb24uaWNvIil7aGVhZGVyKCJDb250ZW50LVR5cGU6IGltYWdlL3gtaWNvbiIpO2VjaG8KYmFzZTY0X2RlY29kZSgiQUFBQkFBRUFFQkFRQUFFQUJBQW9BUUFBRmdBQUFDZ0FBQUFRQUFBQUlBQUFBQUVBQkFBQUFBQUF3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vLy9BQUFBL3dCaFRnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRVJFUkFBQUFBQUVUTXpFUUFBQUFBVEVSRXhBQUFBQUJNUkVURUFBQUFBRXhFUk1RQUFBQUFURVJFeEFBQUFBQk1SRVRFQUFBQUFFek16TVJFUkVRQVRFUkV4RWhFaEFCRXpNeEVoRVJFQUFSRVJFaEVSSVJBQUFBQVJJUkVTRUFBQUFBRVNFaUVRQUFBQUFCRVJFUUFBQUFBQUFBQUFELy85VUF3UC9WQUlCL0FBQ0FmL0FBZ0gra0FJQi9nQUNBZndBQWdIOEFBSUFCQUFDQUFmOEFnQUgvQU1BQS93RCtBUDhBL3dBSUFmK0IxUUQvLzlVQSIpO31lbHNlaWYoJF9HRVRbImZpbGUiXT09ImRlZmF1bHQuY3NzIil7aGVhZGVyKCJDb250ZW50LVR5cGU6IHRleHQvY3NzOyBjaGFyc2V0PXV0Zi04Iik7ZWNobydib2R5e2NvbG9yOiMwMDA7YmFja2dyb3VuZDojZmZmO2ZvbnQ6OTAlLzEuMjUgVmVyZGFuYSxBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjttYXJnaW46MDt9YXtjb2xvcjpibHVlO31hOnZpc2l0ZWR7Y29sb3I6bmF2eTt9YTpob3Zlcntjb2xvcjpyZWQ7fWgxe2ZvbnQtc2l6ZToxNTAlO21hcmdpbjowO3BhZGRpbmc6LjhlbSAxZW07Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzk5OTtmb250LXdlaWdodDpub3JtYWw7Y29sb3I6Izc3NztiYWNrZ3JvdW5kOiNlZWU7fWgye2ZvbnQtc2l6ZToxNTAlO21hcmdpbjowIDAgMjBweCAtMThweDtwYWRkaW5nOi44ZW0gMWVtO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICMwMDA7Y29sb3I6IzAwMDtmb250LXdlaWdodDpub3JtYWw7YmFja2dyb3VuZDojZGRmO31oM3tmb250LXdlaWdodDpub3JtYWw7Zm9udC1zaXplOjEzMCU7bWFyZ2luOjFlbSAwIDA7fWZvcm17bWFyZ2luOjA7fXRhYmxle21hcmdpbjoxZW0gMjBweCAwIDA7Ym9yZGVyOjA7Ym9yZGVyLXRvcDoxcHggc29saWQgIzk5OTtib3JkZXItbGVmdDoxcHggc29saWQgIzk5OTtmb250LXNpemU6OTAlO310ZCx0aHtib3JkZXI6MDtib3JkZXItcmlnaHQ6MXB4IHNvbGlkICM5OTk7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzk5OTtwYWRkaW5nOi4yZW0gLjNlbTt9dGh7YmFja2dyb3VuZDojZWVlO3RleHQtYWxpZ246bGVmdDt9dGhlYWQgdGh7dGV4dC1hbGlnbjpjZW50ZXI7fXRoZWFkIHRkLHRoZWFkIHRoe2JhY2tncm91bmQ6I2RkZjt9ZmllbGRzZXR7ZGlzcGxheTppbmxpbmU7dmVydGljYWwtYWxpZ246dG9wO3BhZGRpbmc6LjVlbSAuOGVtO21hcmdpbjouOGVtIC41ZW0gMCAwO2JvcmRlcjoxcHggc29saWQgIzk5OTt9cHttYXJnaW46LjhlbSAyMHB4IDAgMDt9aW1ne3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtib3JkZXI6MDt9dGQgaW1ne21heC13aWR0aDoyMDBweDttYXgtaGVpZ2h0OjIwMHB4O31jb2Rle2JhY2tncm91bmQ6I2VlZTt9dHI6aG92ZXIgdGQsdHI6aG92ZXIgdGh7YmFja2dyb3VuZDojZGRmO31wcmV7bWFyZ2luOjFlbSAwIDA7fS52ZXJzaW9ue2NvbG9yOiM3Nzc7Zm9udC1zaXplOjY3JTt9LmpzIC5oaWRkZW4sLm5vanMgLmpzb25seXtkaXNwbGF5Om5vbmU7fS5ub3dyYXAgdGQsLm5vd3JhcCB0aCx0ZC5ub3dyYXB7d2hpdGUtc3BhY2U6cHJlO30ud3JhcCB0ZHt3aGl0ZS1zcGFjZTpub3JtYWw7fS5lcnJvcntjb2xvcjpyZWQ7YmFja2dyb3VuZDojZmVlO30uZXJyb3IgYntiYWNrZ3JvdW5kOiNmZmY7Zm9udC13ZWlnaHQ6bm9ybWFsO30ubWVzc2FnZXtjb2xvcjpncmVlbjtiYWNrZ3JvdW5kOiNlZmU7fS5lcnJvciwubWVzc2FnZXtwYWRkaW5nOi41ZW0gLjhlbTttYXJnaW46MWVtIDIwcHggMCAwO30uY2hhcntjb2xvcjojMDA3RjAwO30uZGF0ZXtjb2xvcjojN0YwMDdGO30uZW51bXtjb2xvcjojMDA3RjdGO30uYmluYXJ5e2NvbG9yOnJlZDt9Lm9kZCB0ZHtiYWNrZ3JvdW5kOiNGNUY1RjU7fS50aW1le2NvbG9yOnNpbHZlcjtmb250LXNpemU6NzAlO30uZnVuY3Rpb257dGV4dC1hbGlnbjpyaWdodDt9Lm51bWJlcnt0ZXh0LWFsaWduOnJpZ2h0O30uZGF0ZXRpbWV7dGV4dC1hbGlnbjpyaWdodDt9LnR5cGV7d2lkdGg6MTVleDt3aWR0aDphdXRvXFw5O30ub3B0aW9ucyBzZWxlY3R7d2lkdGg6MjBleDt3aWR0aDphdXRvXFw5O30uYWN0aXZle2ZvbnQtd2VpZ2h0OmJvbGQ7fS5zcWxhcmVhe3dpZHRoOjk4JTt9I21lbnV7cG9zaXRpb246YWJzb2x1dGU7bWFyZ2luOjEwcHggMCAwO3BhZGRpbmc6MCAwIDMwcHggMDt0b3A6MmVtO2xlZnQ6MDt3aWR0aDoxOWVtO292ZXJmbG93OmF1dG87b3ZlcmZsb3cteTpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO30jbWVudSBwe3BhZGRpbmc6LjhlbSAxZW07bWFyZ2luOjA7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2NjYzt9I2NvbnRlbnR7bWFyZ2luOjJlbSAwIDAgMjFlbTtwYWRkaW5nOjEwcHggMjBweCAyMHB4IDA7fSNsYW5ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtsaW5lLWhlaWdodDoxLjhlbTtwYWRkaW5nOi4zZW0gMWVtO30jYnJlYWRjcnVtYnt3aGl0ZS1zcGFjZTpub3dyYXA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDoyMWVtO2JhY2tncm91bmQ6I2VlZTtoZWlnaHQ6MmVtO2xpbmUtaGVpZ2h0OjEuOGVtO3BhZGRpbmc6MCAxZW07bWFyZ2luOjAgMCAwIC0xOHB4O30jbG9hZGVye3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MThlbTt6LWluZGV4OjE7fSNoMXtjb2xvcjojNzc3O3RleHQtZGVjb3JhdGlvbjpub25lO2ZvbnQtc3R5bGU6aXRhbGljO30jdmVyc2lvbntmb250LXNpemU6NjclO2NvbG9yOnJlZDt9I3NjaGVtYXttYXJnaW4tbGVmdDo2MHB4O3Bvc2l0aW9uOnJlbGF0aXZlO30jc2NoZW1hIC50YWJsZXtib3JkZXI6MXB4IHNvbGlkIHNpbHZlcjtwYWRkaW5nOjAgMnB4O2N1cnNvcjptb3ZlO3Bvc2l0aW9uOmFic29sdXRlO30jc2NoZW1hIC5yZWZlcmVuY2Vze3Bvc2l0aW9uOmFic29sdXRlO30ucnRsIGgye21hcmdpbjowIC0xOHB4IDIwcHggMDt9LnJ0bCBwLC5ydGwgdGFibGUsLnJ0bCAuZXJyb3IsLnJ0bCAubWVzc2FnZXttYXJnaW46MWVtIDAgMCAyMHB4O30ucnRsICNjb250ZW50e21hcmdpbjoyZW0gMjFlbSAwIDA7cGFkZGluZzoxMHB4IDAgMjBweCAyMHB4O30ucnRsICNicmVhZGNydW1ie2xlZnQ6YXV0bztyaWdodDoyMWVtO21hcmdpbjowIC0xOHB4IDAgMDt9LnJ0bCAjbGFuZywucnRsICNtZW51e2xlZnQ6YXV0bztyaWdodDowO31AbWVkaWEgcHJpbnR7I2xhbmcsI21lbnV7ZGlzcGxheTpub25lO30jY29udGVudHttYXJnaW4tbGVmdDoxZW07fSNicmVhZGNydW1ie2xlZnQ6MWVtO30ubm93cmFwIHRkLC5ub3dyYXAgdGgsdGQubm93cmFwe3doaXRlLXNwYWNlOm5vcm1hbDt9fSc7fWVsc2VpZigkX0dFVFsiZmlsZSJdPT0iZnVuY3Rpb25zLmpzIil7aGVhZGVyKCJDb250ZW50LVR5cGU6IHRleHQvamF2YXNjcmlwdDsgY2hhcnNldD11dGYtOCIpOz8+CmZ1bmN0aW9uIHRvZ2dsZShpZCl7dmFyIGVsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTtlbC5jbGFzc05hbWU9KGVsLmNsYXNzTmFtZT09J2hpZGRlbic/Jyc6J2hpZGRlbicpO3JldHVybiB0cnVlO30KZnVuY3Rpb24gY29va2llKGFzc2lnbixkYXlzKXt2YXIgZGF0ZT1uZXcgRGF0ZSgpO2RhdGUuc2V0RGF0ZShkYXRlLmdldERhdGUoKStkYXlzKTtkb2N1bWVudC5jb29raWU9YXNzaWduKyc7IGV4cGlyZXM9JytkYXRlO30KZnVuY3Rpb24gdmVyaWZ5VmVyc2lvbigpe2Nvb2tpZSgnYWRtaW5lcl92ZXJzaW9uPTAnLDEpO3ZhciBzY3JpcHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7c2NyaXB0LnNyYz1sb2NhdGlvbi5wcm90b2NvbCsnLy93d3cuYWRtaW5lci5vcmcvdmVyc2lvbi5waHAnO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoc2NyaXB0KTt9CmZ1bmN0aW9uIHNlbGVjdFZhbHVlKHNlbGVjdCl7dmFyIHNlbGVjdGVkPXNlbGVjdC5vcHRpb25zW3NlbGVjdC5zZWxlY3RlZEluZGV4XTtyZXR1cm4oKHNlbGVjdGVkLmF0dHJpYnV0ZXMudmFsdWV8fHt9KS5zcGVjaWZpZWQ/c2VsZWN0ZWQudmFsdWU6c2VsZWN0ZWQudGV4dCk7fQpmdW5jdGlvbiBmb3JtQ2hlY2soZWwsbmFtZSl7dmFyIGVsZW1zPWVsLmZvcm0uZWxlbWVudHM7Zm9yKHZhciBpPTA7aTxlbGVtcy5sZW5ndGg7aSsrKXtpZihuYW1lLnRlc3QoZWxlbXNbaV0ubmFtZSkpe2VsZW1zW2ldLmNoZWNrZWQ9ZWwuY2hlY2tlZDt9fX0KZnVuY3Rpb24gZm9ybVVuY2hlY2soaWQpe2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKS5jaGVja2VkPWZhbHNlO30KZnVuY3Rpb24gZm9ybUNoZWNrZWQoZWwsbmFtZSl7dmFyIGNoZWNrZWQ9MDt2YXIgZWxlbXM9ZWwuZm9ybS5lbGVtZW50cztmb3IodmFyIGk9MDtpPGVsZW1zLmxlbmd0aDtpKyspe2lmKG5hbWUudGVzdChlbGVtc1tpXS5uYW1lKSYmZWxlbXNbaV0uY2hlY2tlZCl7Y2hlY2tlZCsrO319CnJldHVybiBjaGVja2VkO30KZnVuY3Rpb24gdGFibGVDbGljayhldmVudCl7dmFyIGVsPWV2ZW50LnRhcmdldHx8ZXZlbnQuc3JjRWxlbWVudDt3aGlsZSghL150ciQvaS50ZXN0KGVsLnRhZ05hbWUpKXtpZigvXih0YWJsZXxhfGlucHV0fHRleHRhcmVhKSQvaS50ZXN0KGVsLnRhZ05hbWUpKXtyZXR1cm47fQplbD1lbC5wYXJlbnROb2RlO30KZWw9ZWwuZmlyc3RDaGlsZC5maXJzdENoaWxkO2VsLmNsaWNrJiZlbC5jbGljaygpO2VsLm9uY2xpY2smJmVsLm9uY2xpY2soKTt9CmZ1bmN0aW9uIHNldEh0bWwoaWQsaHRtbCl7dmFyIGVsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTtpZihlbCl7aWYoaHRtbD09dW5kZWZpbmVkKXtlbC5wYXJlbnROb2RlLmlubmVySFRNTD0nJm5ic3A7Jzt9ZWxzZXtlbC5pbm5lckhUTUw9aHRtbC5yZXBsYWNlKC88bm9zY3JpcHQ+Lio8XC9ub3NjcmlwdD4vaSwnJyk7fX19CmZ1bmN0aW9uIG5vZGVQb3NpdGlvbihlbCl7dmFyIHBvcz0wO3doaWxlKGVsPWVsLnByZXZpb3VzU2libGluZyl7cG9zKys7fQpyZXR1cm4gcG9zO30KZnVuY3Rpb24gcGFnZUNsaWNrKGhyZWYscGFnZSxldmVudCl7aWYoIWlzTmFOKHBhZ2UpJiZwYWdlKXtocmVmKz0ocGFnZSE9MT8nJnBhZ2U9JysocGFnZS0xKTonJyk7aWYoIWFqYXhTZW5kKGhyZWYpKXtsb2NhdGlvbi5ocmVmPWhyZWY7fX19CmZ1bmN0aW9uIHNlbGVjdEFkZFJvdyhmaWVsZCl7ZmllbGQub25jaGFuZ2U9ZnVuY3Rpb24oKXt9O3ZhciByb3c9ZmllbGQucGFyZW50Tm9kZS5jbG9uZU5vZGUodHJ1ZSk7dmFyIHNlbGVjdHM9cm93LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKTtmb3IodmFyIGk9MDtpPHNlbGVjdHMubGVuZ3RoO2krKyl7c2VsZWN0c1tpXS5uYW1lPXNlbGVjdHNbaV0ubmFtZS5yZXBsYWNlKC9bYS16XVxbXGQrLywnJCYxJyk7c2VsZWN0c1tpXS5zZWxlY3RlZEluZGV4PTA7fQp2YXIgaW5wdXRzPXJvdy5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaW5wdXQnKTtpZihpbnB1dHMubGVuZ3RoKXtpbnB1dHNbMF0ubmFtZT1pbnB1dHNbMF0ubmFtZS5yZXBsYWNlKC9bYS16XVxbXGQrLywnJCYxJyk7aW5wdXRzWzBdLnZhbHVlPScnO2lucHV0c1swXS5jbGFzc05hbWU9Jyc7fQpmaWVsZC5wYXJlbnROb2RlLnBhcmVudE5vZGUuYXBwZW5kQ2hpbGQocm93KTt9CmZ1bmN0aW9uIHRleHRhcmVhS2V5ZG93bih0YXJnZXQsZXZlbnQpe2lmKCFldmVudC5zaGlmdEtleSYmIWV2ZW50LmFsdEtleSYmIWV2ZW50LmN0cmxLZXkmJiFldmVudC5tZXRhS2V5KXtpZihldmVudC5rZXlDb2RlPT05KXtpZih0YXJnZXQuc2V0U2VsZWN0aW9uUmFuZ2Upe3ZhciBzdGFydD10YXJnZXQuc2VsZWN0aW9uU3RhcnQ7dmFyIHNjcm9sbGVkPXRhcmdldC5zY3JvbGxUb3A7dGFyZ2V0LnZhbHVlPXRhcmdldC52YWx1ZS5zdWJzdHIoMCxzdGFydCkrJ1x0Jyt0YXJnZXQudmFsdWUuc3Vic3RyKHRhcmdldC5zZWxlY3Rpb25FbmQpO3RhcmdldC5zZXRTZWxlY3Rpb25SYW5nZShzdGFydCsxLHN0YXJ0KzEpO3RhcmdldC5zY3JvbGxUb3A9c2Nyb2xsZWQ7cmV0dXJuIGZhbHNlO31lbHNlIGlmKHRhcmdldC5jcmVhdGVUZXh0UmFuZ2Upe2RvY3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpLnRleHQ9J1x0JztyZXR1cm4gZmFsc2U7fX0KaWYoZXZlbnQua2V5Q29kZT09Mjcpe3ZhciBlbHM9dGFyZ2V0LmZvcm0uZWxlbWVudHM7Zm9yKHZhciBpPTE7aTxlbHMubGVuZ3RoO2krKyl7aWYoZWxzW2ktMV09PXRhcmdldCl7ZWxzW2ldLmZvY3VzKCk7YnJlYWs7fX0KcmV0dXJuIGZhbHNlO319CnJldHVybiB0cnVlO30KZnVuY3Rpb24gYm9keUtleWRvd24oZXZlbnQpe3ZhciB0YXJnZXQ9ZXZlbnQudGFyZ2V0fHxldmVudC5zcmNFbGVtZW50O2lmKGV2ZW50LmN0cmxLZXkmJihldmVudC5rZXlDb2RlPT0xM3x8ZXZlbnQua2V5Q29kZT09MTApJiYhZXZlbnQuYWx0S2V5JiYhZXZlbnQubWV0YUtleSYmL3NlbGVjdHx0ZXh0YXJlYS9pLnRlc3QodGFyZ2V0LnRhZ05hbWUpKXt0YXJnZXQuYmx1cigpO2lmKCghdGFyZ2V0LmZvcm0ub25zdWJtaXR8fHRhcmdldC5mb3JtLm9uc3VibWl0KCkhPT1mYWxzZSkmJiFhamF4Rm9ybSh0YXJnZXQuZm9ybSkpe3RhcmdldC5mb3JtLnN1Ym1pdCgpO30KcmV0dXJuIGZhbHNlO319CmZ1bmN0aW9uIGVkaXRpbmdLZXlkb3duKGV2ZW50KXtpZigoZXZlbnQua2V5Q29kZT09NDB8fGV2ZW50LmtleUNvZGU9PTM4KSYmZXZlbnQuY3RybEtleSYmIWV2ZW50LmFsdEtleSYmIWV2ZW50Lm1ldGFLZXkpe3ZhciB0YXJnZXQ9ZXZlbnQudGFyZ2V0fHxldmVudC5zcmNFbGVtZW50O3ZhciBzaWJsaW5nPShldmVudC5rZXlDb2RlPT00MD8nbmV4dFNpYmxpbmcnOidwcmV2aW91c1NpYmxpbmcnKTt2YXIgZWw9dGFyZ2V0LnBhcmVudE5vZGUucGFyZW50Tm9kZVtzaWJsaW5nXTtpZihlbCYmKC9edHIkL2kudGVzdChlbC50YWdOYW1lKXx8KGVsPWVsW3NpYmxpbmddKSkmJi9edHIkL2kudGVzdChlbC50YWdOYW1lKSYmKGVsPWVsLmNoaWxkTm9kZXNbbm9kZVBvc2l0aW9uKHRhcmdldC5wYXJlbnROb2RlKV0pJiYoZWw9ZWwuY2hpbGROb2Rlc1tub2RlUG9zaXRpb24odGFyZ2V0KV0pKXtlbC5mb2N1cygpO30KcmV0dXJuIGZhbHNlO30KcmV0dXJuIHRydWU7fQpmdW5jdGlvbiBmdW5jdGlvbkNoYW5nZShzZWxlY3Qpe3ZhciBpbnB1dD1zZWxlY3QuZm9ybVtzZWxlY3QubmFtZS5yZXBsYWNlKC9eZnVuY3Rpb24vLCdmaWVsZHMnKV07aWYoc2VsZWN0VmFsdWUoc2VsZWN0KSl7aWYoaW5wdXQub3JpZ01heExlbmd0aD09PXVuZGVmaW5lZCl7aW5wdXQub3JpZ01heExlbmd0aD1pbnB1dC5tYXhMZW5ndGg7fQppbnB1dC5yZW1vdmVBdHRyaWJ1dGUoJ21heGxlbmd0aCcpO31lbHNlIGlmKGlucHV0Lm9yaWdNYXhMZW5ndGg+PTApe2lucHV0Lm1heExlbmd0aD1pbnB1dC5vcmlnTWF4TGVuZ3RoO319CmZ1bmN0aW9uIGFqYXgodXJsLGNhbGxiYWNrLGRhdGEpe3ZhciB4bWxodHRwPSh3aW5kb3cuWE1MSHR0cFJlcXVlc3Q/bmV3IFhNTEh0dHBSZXF1ZXN0KCk6KHdpbmRvdy5BY3RpdmVYT2JqZWN0P25ldyBBY3RpdmVYT2JqZWN0KCdNaWNyb3NvZnQuWE1MSFRUUCcpOmZhbHNlKSk7aWYoeG1saHR0cCl7eG1saHR0cC5vcGVuKChkYXRhPydQT1NUJzonR0VUJyksdXJsKTtpZihkYXRhKXt4bWxodHRwLnNldFJlcXVlc3RIZWFkZXIoJ0NvbnRlbnQtVHlwZScsJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcpO30KeG1saHR0cC5zZXRSZXF1ZXN0SGVhZGVyKCdYLVJlcXVlc3RlZC1XaXRoJywnWE1MSHR0cFJlcXVlc3QnKTt4bWxodHRwLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpe2lmKHhtbGh0dHAucmVhZHlTdGF0ZT09NCl7Y2FsbGJhY2soeG1saHR0cCk7fX07eG1saHR0cC5zZW5kKGRhdGEpO30KcmV0dXJuIHhtbGh0dHA7fQpmdW5jdGlvbiBhamF4U2V0SHRtbCh1cmwpe3JldHVybiBhamF4KHVybCxmdW5jdGlvbih4bWxodHRwKXtpZih4bWxodHRwLnN0YXR1cyl7dmFyIGRhdGE9ZXZhbCgnKCcreG1saHR0cC5yZXNwb25zZVRleHQrJyknKTtmb3IodmFyIGtleSBpbiBkYXRhKXtzZXRIdG1sKGtleSxkYXRhW2tleV0pO319fSk7fQpmdW5jdGlvbiByZXBsYWNlRmF2aWNvbihocmVmKXt2YXIgZmF2aWNvbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZmF2aWNvbicpO2Zhdmljb24uaHJlZj1ocmVmO2Zhdmljb24ucGFyZW50Tm9kZS5hcHBlbmRDaGlsZChmYXZpY29uKTt9CnZhciBhamF4U3RhdGU9MDtmdW5jdGlvbiBhamF4U2VuZCh1cmwsZGF0YSxwb3BTdGF0ZSl7aWYoIWhpc3RvcnkucHVzaFN0YXRlKXtyZXR1cm4gZmFsc2U7fQp2YXIgY3VycmVudFN0YXRlPSsrYWpheFN0YXRlO29uYmx1cj1mdW5jdGlvbigpe3JlcGxhY2VGYXZpY29uKGxvY2F0aW9uLnBhdGhuYW1lKyc/ZmlsZT1sb2FkZXIuZ2lmJmFtcDt2ZXJzaW9uPTMuMi4yJyk7fTtzZXRIdG1sKCdsb2FkZXInLCc8aW1nIHNyYz0iJytsb2NhdGlvbi5wYXRobmFtZSsnP2ZpbGU9bG9hZGVyLmdpZiZhbXA7dmVyc2lvbj0zLjIuMiIgYWx0PSIiPicpO3JldHVybiBhamF4KHVybCxmdW5jdGlvbih4bWxodHRwKXtpZihjdXJyZW50U3RhdGU9PWFqYXhTdGF0ZSl7dmFyIHRpdGxlPXhtbGh0dHAuZ2V0UmVzcG9uc2VIZWFkZXIoJ1gtQUpBWC1UaXRsZScpO2lmKHRpdGxlKXtkb2N1bWVudC50aXRsZT1kZWNvZGVVUklDb21wb25lbnQodGl0bGUpO30KdmFyIHJlZGlyZWN0PXhtbGh0dHAuZ2V0UmVzcG9uc2VIZWFkZXIoJ1gtQUpBWC1SZWRpcmVjdCcpO2lmKHJlZGlyZWN0KXtyZXR1cm4gYWpheFNlbmQocmVkaXJlY3QsJycscG9wU3RhdGUpO30Kb25ibHVyPWZ1bmN0aW9uKCl7fTtyZXBsYWNlRmF2aWNvbihsb2NhdGlvbi5wYXRobmFtZSsnP2ZpbGU9ZmF2aWNvbi5pY28mYW1wO3ZlcnNpb249My4yLjInKTtpZigheG1saHR0cC5zdGF0dXMpe3NldEh0bWwoJ2xvYWRlcicsJycpO31lbHNle2lmKCFwb3BTdGF0ZSl7aWYoZGF0YXx8dXJsIT1sb2NhdGlvbi5ocmVmKXtoaXN0b3J5LnB1c2hTdGF0ZShkYXRhLCcnLHVybCk7fQpzY3JvbGxUbygwLDApO30Kc2V0SHRtbCgnY29udGVudCcseG1saHR0cC5yZXNwb25zZVRleHQpO3ZhciBjb250ZW50PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjb250ZW50Jyk7dmFyIHNjcmlwdHM9Y29udGVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0Jyk7dmFyIGxlbmd0aD1zY3JpcHRzLmxlbmd0aDtmb3IodmFyIGk9MDtpPGxlbmd0aDtpKyspe3ZhciBzY3JpcHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7c2NyaXB0LnRleHQ9c2NyaXB0c1tpXS50ZXh0O2NvbnRlbnQuYXBwZW5kQ2hpbGQoc2NyaXB0KTt9CnZhciBhcz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbWVudScpLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdhJyk7dmFyIGhyZWY9bG9jYXRpb24uaHJlZi5yZXBsYWNlKC8oJihzcWw9fGR1bXA9fChzZWxlY3R8dGFibGUpPVteJl0qKSkuKi8sJyQxJyk7Zm9yKHZhciBpPTA7aTxhcy5sZW5ndGg7aSsrKXtpZihocmVmPT1hc1tpXS5ocmVmKXthc1tpXS5jbGFzc05hbWU9J2FjdGl2ZSc7fWVsc2UgaWYoYXNbaV0uY2xhc3NOYW1lPT0nYWN0aXZlJyl7YXNbaV0uY2xhc3NOYW1lPScnO319CnZhciBkdW1wPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkdW1wJyk7aWYoZHVtcCl7dmFyIG1hdGNoPS8mKHNlbGVjdHx0YWJsZSk9KFteJl0rKS8uZXhlYyhocmVmKTtkdW1wLmhyZWY9ZHVtcC5ocmVmLnJlcGxhY2UoL1tePV0rJC8sJycpKyhtYXRjaD9tYXRjaFsyXTonJyk7fQppZih3aW5kb3cuanVzaCl7anVzaC5oaWdobGlnaHRfdGFnKCdjb2RlJywwKTt9fX19LGRhdGEpO30Kb25wb3BzdGF0ZT1mdW5jdGlvbihldmVudCl7aWYoYWpheFN0YXRlfHxldmVudC5zdGF0ZSl7YWpheFNlbmQobG9jYXRpb24uaHJlZiwoZXZlbnQuc3RhdGUmJmNvbmZpcm0oYXJlWW91U3VyZSk/ZXZlbnQuc3RhdGU6JycpLDEpO31lbHNle2FqYXhTdGF0ZSsrO319CmZ1bmN0aW9uIGFqYXhGb3JtKGZvcm0sZGF0YSl7aWYoLyYoZGF0YWJhc2V8c2NoZW1lfGNyZWF0ZXx2aWV3fHNxbHx1c2VyfGR1bXB8Y2FsbCk9Ly50ZXN0KGxvY2F0aW9uLmhyZWYpJiYhL1wuLy50ZXN0KGRhdGEpKXtyZXR1cm4gZmFsc2U7fQp2YXIgcGFyYW1zPVtdO2Zvcih2YXIgaT0wO2k8Zm9ybS5lbGVtZW50cy5sZW5ndGg7aSsrKXt2YXIgZWw9Zm9ybS5lbGVtZW50c1tpXTtpZigvZmlsZS9pLnRlc3QoZWwudHlwZSkmJmVsLnZhbHVlKXtyZXR1cm4gZmFsc2U7fWVsc2UgaWYoZWwubmFtZSYmKCEvY2hlY2tib3h8cmFkaW98c3VibWl0fGZpbGUvaS50ZXN0KGVsLnR5cGUpfHxlbC5jaGVja2VkKSl7cGFyYW1zLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KGVsLm5hbWUpKyc9JytlbmNvZGVVUklDb21wb25lbnQoL3NlbGVjdC9pLnRlc3QoZWwudGFnTmFtZSk/c2VsZWN0VmFsdWUoZWwpOmVsLnZhbHVlKSk7fX0KaWYoZGF0YSl7cGFyYW1zLnB1c2goZGF0YSk7fQppZihmb3JtLm1ldGhvZD09J3Bvc3QnKXtyZXR1cm4gYWpheFNlbmQoKC9cPy8udGVzdChmb3JtLmFjdGlvbik/Zm9ybS5hY3Rpb246bG9jYXRpb24uaHJlZikscGFyYW1zLmpvaW4oJyYnKSk7fQpyZXR1cm4gYWpheFNlbmQoKGZvcm0uYWN0aW9ufHxsb2NhdGlvbi5ocmVmKS5yZXBsYWNlKC9cPy4qLywnJykrJz8nK3BhcmFtcy5qb2luKCcmJykpO30KZnVuY3Rpb24gc2VsZWN0RGJsQ2xpY2sodGQsZXZlbnQsdGV4dCl7dGQub25kYmxjbGljaz1mdW5jdGlvbigpe307dmFyIHBvcz1ldmVudC5yYW5nZU9mZnNldDt2YXIgdmFsdWU9KHRkLmZpcnN0Q2hpbGQuYWx0P3RkLmZpcnN0Q2hpbGQuYWx0Oih0ZC50ZXh0Q29udGVudD90ZC50ZXh0Q29udGVudDp0ZC5pbm5lclRleHQpKTt2YXIgaW5wdXQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0ZXh0Pyd0ZXh0YXJlYSc6J2lucHV0Jyk7aW5wdXQuc3R5bGUud2lkdGg9TWF0aC5tYXgodGQuY2xpZW50V2lkdGgtMTQsMjApKydweCc7aWYodGV4dCl7dmFyIHJvd3M9MTt2YWx1ZS5yZXBsYWNlKC9cbi9nLGZ1bmN0aW9uKCl7cm93cysrO30pO2lucHV0LnJvd3M9cm93czt9CmlmKHZhbHVlPT0nXHUwMEEwJ3x8dGQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2knKS5sZW5ndGgpe3ZhbHVlPScnO30KaWYoZG9jdW1lbnQuc2VsZWN0aW9uKXt2YXIgcmFuZ2U9ZG9jdW1lbnQuc2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCk7cmFuZ2UubW92ZVRvUG9pbnQoZXZlbnQuY2xpZW50WCxldmVudC5jbGllbnRZKTt2YXIgcmFuZ2UyPXJhbmdlLmR1cGxpY2F0ZSgpO3JhbmdlMi5tb3ZlVG9FbGVtZW50VGV4dCh0ZCk7cmFuZ2UyLnNldEVuZFBvaW50KCdFbmRUb0VuZCcscmFuZ2UpO3Bvcz1yYW5nZTIudGV4dC5sZW5ndGg7fQp0ZC5pbm5lckhUTUw9Jyc7dGQuYXBwZW5kQ2hpbGQoaW5wdXQpO2lucHV0LmZvY3VzKCk7aWYodGV4dD09Mil7cmV0dXJuIGFqYXgobG9jYXRpb24uaHJlZisnJicrZW5jb2RlVVJJQ29tcG9uZW50KHRkLmlkKSsnPScsZnVuY3Rpb24oeG1saHR0cCl7aWYoeG1saHR0cC5zdGF0dXMpe2lucHV0LnZhbHVlPXhtbGh0dHAucmVzcG9uc2VUZXh0O2lucHV0Lm5hbWU9dGQuaWQ7fX0pO30KaW5wdXQudmFsdWU9dmFsdWU7aW5wdXQubmFtZT10ZC5pZDtpbnB1dC5zZWxlY3Rpb25TdGFydD1wb3M7aW5wdXQuc2VsZWN0aW9uRW5kPXBvcztpZihkb2N1bWVudC5zZWxlY3Rpb24pe3ZhciByYW5nZT1kb2N1bWVudC5zZWxlY3Rpb24uY3JlYXRlUmFuZ2UoKTtyYW5nZS5tb3ZlRW5kKCdjaGFyYWN0ZXInLC1pbnB1dC52YWx1ZS5sZW5ndGgrcG9zKTtyYW5nZS5zZWxlY3QoKTt9fQpmdW5jdGlvbiBib2R5Q2xpY2soZXZlbnQsZGIsbnMpe2lmKGV2ZW50LmJ1dHRvbnx8ZXZlbnQuY3RybEtleXx8ZXZlbnQuc2hpZnRLZXl8fGV2ZW50LmFsdEtleXx8ZXZlbnQubWV0YUtleSl7cmV0dXJuO30KaWYoZXZlbnQuZ2V0UHJldmVudERlZmF1bHQ/ZXZlbnQuZ2V0UHJldmVudERlZmF1bHQoKTpldmVudC5yZXR1cm5WYWx1ZT09PWZhbHNlKXtyZXR1cm4gZmFsc2U7fQp2YXIgZWw9ZXZlbnQudGFyZ2V0fHxldmVudC5zcmNFbGVtZW50O2lmKC9eYSQvaS50ZXN0KGVsLnBhcmVudE5vZGUudGFnTmFtZSkpe2VsPWVsLnBhcmVudE5vZGU7fQppZigvXmEkL2kudGVzdChlbC50YWdOYW1lKSYmIS9eOnwjfCZkb3dubG9hZD0vaS50ZXN0KGVsLmdldEF0dHJpYnV0ZSgnaHJlZicpKSYmL1smP111c2VybmFtZT0vLnRlc3QoZWwuaHJlZikpe3ZhciBtYXRjaD0vJmRiPShbXiZdKikvLmV4ZWMoZWwuaHJlZik7dmFyIG1hdGNoMj0vJm5zPShbXiZdKikvLmV4ZWMoZWwuaHJlZik7cmV0dXJuIShkYj09KG1hdGNoP21hdGNoWzFdOicnKSYmbnM9PShtYXRjaDI/bWF0Y2gyWzFdOicnKSYmYWpheFNlbmQoZWwuaHJlZikpO30KaWYoL15pbnB1dCQvaS50ZXN0KGVsLnRhZ05hbWUpJiYvaW1hZ2V8c3VibWl0Ly50ZXN0KGVsLnR5cGUpKXtyZXR1cm4hYWpheEZvcm0oZWwuZm9ybSwoZWwubmFtZT9lbmNvZGVVUklDb21wb25lbnQoZWwubmFtZSkrKGVsLnR5cGU9PSdpbWFnZSc/Jy54JzonJykrJz0xJzonJykpO30KcmV0dXJuIHRydWU7fQpmdW5jdGlvbiBldmVudFN0b3AoZXZlbnQpe2lmKGV2ZW50LnN0b3BQcm9wYWdhdGlvbil7ZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7fWVsc2V7ZXZlbnQuY2FuY2VsQnViYmxlPXRydWU7fX0KdmFyIGp1c2hSb290PWxvY2F0aW9uLnByb3RvY29sICsgJy8vd3d3LmFkbWluZXIub3JnL3N0YXRpYy8nO2Z1bmN0aW9uIGJvZHlMb2FkKHZlcnNpb24pe2lmKGhpc3Rvcnkuc3RhdGUhPT11bmRlZmluZWQpe29ucG9wc3RhdGUoaGlzdG9yeSk7fQppZihqdXNoUm9vdCl7dmFyIHNjcmlwdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtzY3JpcHQuc3JjPWp1c2hSb290KydqdXNoLmpzJztzY3JpcHQub25sb2FkPWZ1bmN0aW9uKCl7aWYod2luZG93Lmp1c2gpe2p1c2guY3JlYXRlX2xpbmtzPScgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9yZWZlcnJlciInO2p1c2gudXJscy5zcWxfc3Fsc2V0PWp1c2gudXJscy5zcWxbMF09anVzaC51cmxzLnNxbHNldFswXT1qdXNoLnVybHMuc3Fsc3RhdHVzWzBdPSdodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVmbWFuLycrdmVyc2lvbisnL2VuLyRrZXknO3ZhciBwZ3NxbD0naHR0cDovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9kb2NzLycrdmVyc2lvbisnL3N0YXRpYy8nO2p1c2gudXJscy5wZ3NxbF9wZ3NxbHNldD1qdXNoLnVybHMucGdzcWxbMF09cGdzcWwrJyRrZXknO2p1c2gudXJscy5wZ3NxbHNldFswXT1wZ3NxbCsncnVudGltZS1jb25maWctJGtleS5odG1sI0dVQy0kMSc7anVzaC5zdHlsZShqdXNoUm9vdCsnanVzaC5jc3MnKTtpZih3aW5kb3cuanVzaExpbmtzKXtqdXNoLmN1c3RvbV9saW5rcz1qdXNoTGlua3M7fQpqdXNoLmhpZ2hsaWdodF90YWcoJ2NvZGUnLDApO319O3NjcmlwdC5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXtpZigvXihsb2FkZWR8Y29tcGxldGUpJC8udGVzdChzY3JpcHQucmVhZHlTdGF0ZSkpe3NjcmlwdC5vbmxvYWQoKTt9fTtkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHNjcmlwdCk7fX0KZnVuY3Rpb24gZm9ybUZpZWxkKGZvcm0sbmFtZSl7Zm9yKHZhciBpPTA7aTxmb3JtLmxlbmd0aDtpKyspe2lmKGZvcm1baV0ubmFtZT09bmFtZSl7cmV0dXJuIGZvcm1baV07fX19CmZ1bmN0aW9uIHR5cGVQYXNzd29yZChlbCxkaXNhYmxlKXt0cnl7ZWwudHlwZT0oZGlzYWJsZT8ndGV4dCc6J3Bhc3N3b3JkJyk7fWNhdGNoKGUpe319CmZ1bmN0aW9uIGxvZ2luRHJpdmVyKGRyaXZlcil7dmFyIHRycz1kcml2ZXIucGFyZW50Tm9kZS5wYXJlbnROb2RlLnBhcmVudE5vZGUucm93cztmb3IodmFyIGk9MTtpPHRycy5sZW5ndGg7aSsrKXt0cnNbaV0uY2xhc3NOYW1lPSgvc3FsaXRlLy50ZXN0KGRyaXZlci52YWx1ZSk/J2hpZGRlbic6JycpO319CnZhciBhZGRlZD0nLicscm93Q291bnQ7ZnVuY3Rpb24gZGVsaW1pdGVyRXF1YWwodmFsLGEsYil7cmV0dXJuKHZhbD09YSsnXycrYnx8dmFsPT1hK2J8fHZhbD09YStiLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpK2Iuc3Vic3RyKDEpKTt9CmZ1bmN0aW9uIGlkZkVzY2FwZShzKXtyZXR1cm4gcy5yZXBsYWNlKC9gLywnYGAnKTt9CmZ1bmN0aW9uIGVkaXRpbmdOYW1lQ2hhbmdlKGZpZWxkKXt2YXIgbmFtZT1maWVsZC5uYW1lLnN1YnN0cigwLGZpZWxkLm5hbWUubGVuZ3RoLTcpO3ZhciB0eXBlPWZvcm1GaWVsZChmaWVsZC5mb3JtLG5hbWUrJ1t0eXBlXScpO3ZhciBvcHRzPXR5cGUub3B0aW9uczt2YXIgY2FuZGlkYXRlO3ZhciB2YWw9ZmllbGQudmFsdWU7Zm9yKHZhciBpPW9wdHMubGVuZ3RoO2ktLTspe3ZhciBtYXRjaD0vKC4rKWAoLispLy5leGVjKG9wdHNbaV0udmFsdWUpO2lmKCFtYXRjaCl7aWYoY2FuZGlkYXRlJiZpPT1vcHRzLmxlbmd0aC0yJiZ2YWw9PW9wdHNbY2FuZGlkYXRlXS52YWx1ZS5yZXBsYWNlKC8uK2AvLCcnKSYmbmFtZT09J2ZpZWxkc1sxXScpe3JldHVybjt9CmJyZWFrO30KdmFyIHRhYmxlPW1hdGNoWzFdO3ZhciBjb2x1bW49bWF0Y2hbMl07dmFyIHRhYmxlcz1bdGFibGUsdGFibGUucmVwbGFjZSgvcyQvLCcnKSx0YWJsZS5yZXBsYWNlKC9lcyQvLCcnKV07Zm9yKHZhciBqPTA7ajx0YWJsZXMubGVuZ3RoO2orKyl7dGFibGU9dGFibGVzW2pdO2lmKHZhbD09Y29sdW1ufHx2YWw9PXRhYmxlfHxkZWxpbWl0ZXJFcXVhbCh2YWwsdGFibGUsY29sdW1uKXx8ZGVsaW1pdGVyRXF1YWwodmFsLGNvbHVtbix0YWJsZSkpe2lmKGNhbmRpZGF0ZSl7cmV0dXJuO30KY2FuZGlkYXRlPWk7YnJlYWs7fX19CmlmKGNhbmRpZGF0ZSl7dHlwZS5zZWxlY3RlZEluZGV4PWNhbmRpZGF0ZTt0eXBlLm9uY2hhbmdlKCk7fX0KZnVuY3Rpb24gZWRpdGluZ0FkZFJvdyhidXR0b24sYWxsb3dlZCxmb2N1cyl7aWYoYWxsb3dlZCYmcm93Q291bnQ+PWFsbG93ZWQpe3JldHVybiBmYWxzZTt9CnZhciBtYXRjaD0vKFxkKykoXC5cZCspPy8uZXhlYyhidXR0b24ubmFtZSk7dmFyIHg9bWF0Y2hbMF0rKG1hdGNoWzJdP2FkZGVkLnN1YnN0cihtYXRjaFsyXS5sZW5ndGgpOmFkZGVkKSsnMSc7dmFyIHJvdz1idXR0b24ucGFyZW50Tm9kZS5wYXJlbnROb2RlO3ZhciByb3cyPXJvdy5jbG9uZU5vZGUodHJ1ZSk7dmFyIHRhZ3M9cm93LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKTt2YXIgdGFnczI9cm93Mi5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2VsZWN0Jyk7Zm9yKHZhciBpPTA7aTx0YWdzLmxlbmd0aDtpKyspe3RhZ3MyW2ldLm5hbWU9dGFnc1tpXS5uYW1lLnJlcGxhY2UoLyhbMC05Ll0rKS8seCk7dGFnczJbaV0uc2VsZWN0ZWRJbmRleD10YWdzW2ldLnNlbGVjdGVkSW5kZXg7fQp0YWdzPXJvdy5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaW5wdXQnKTt0YWdzMj1yb3cyLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdpbnB1dCcpO3ZhciBpbnB1dD10YWdzMlswXTtmb3IodmFyIGk9MDtpPHRhZ3MubGVuZ3RoO2krKyl7aWYodGFnc1tpXS5uYW1lPT0nYXV0b19pbmNyZW1lbnRfY29sJyl7dGFnczJbaV0udmFsdWU9eDt0YWdzMltpXS5jaGVja2VkPWZhbHNlO30KdGFnczJbaV0ubmFtZT10YWdzW2ldLm5hbWUucmVwbGFjZSgvKFswLTkuXSspLyx4KTtpZigvXFsob3JpZ3xmaWVsZHxjb21tZW50fGRlZmF1bHQpLy50ZXN0KHRhZ3NbaV0ubmFtZSkpe3RhZ3MyW2ldLnZhbHVlPScnO30KaWYoL1xbKGhhc19kZWZhdWx0KS8udGVzdCh0YWdzW2ldLm5hbWUpKXt0YWdzMltpXS5jaGVja2VkPWZhbHNlO319CnRhZ3NbMF0ub25jaGFuZ2U9ZnVuY3Rpb24oKXtlZGl0aW5nTmFtZUNoYW5nZSh0YWdzWzBdKTt9O3Jvdy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShyb3cyLHJvdy5uZXh0U2libGluZyk7aWYoZm9jdXMpe2lucHV0Lm9uY2hhbmdlPWZ1bmN0aW9uKCl7ZWRpdGluZ05hbWVDaGFuZ2UoaW5wdXQpO307aW5wdXQuZm9jdXMoKTt9CmFkZGVkKz0nMCc7cm93Q291bnQrKztyZXR1cm4gdHJ1ZTt9CmZ1bmN0aW9uIGVkaXRpbmdSZW1vdmVSb3coYnV0dG9uKXt2YXIgZmllbGQ9Zm9ybUZpZWxkKGJ1dHRvbi5mb3JtLGJ1dHRvbi5uYW1lLnJlcGxhY2UoL2Ryb3BfY29sKC4rKS8sJ2ZpZWxkcyQxW2ZpZWxkXScpKTtmaWVsZC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGZpZWxkKTtidXR0b24ucGFyZW50Tm9kZS5wYXJlbnROb2RlLnN0eWxlLmRpc3BsYXk9J25vbmUnO3JldHVybiB0cnVlO30KdmFyIGxhc3RUeXBlPScnO2Z1bmN0aW9uIGVkaXRpbmdUeXBlQ2hhbmdlKHR5cGUpe3ZhciBuYW1lPXR5cGUubmFtZS5zdWJzdHIoMCx0eXBlLm5hbWUubGVuZ3RoLTYpO3ZhciB0ZXh0PXNlbGVjdFZhbHVlKHR5cGUpO2Zvcih2YXIgaT0wO2k8dHlwZS5mb3JtLmVsZW1lbnRzLmxlbmd0aDtpKyspe3ZhciBlbD10eXBlLmZvcm0uZWxlbWVudHNbaV07aWYoZWwubmFtZT09bmFtZSsnW2xlbmd0aF0nJiYhKCgvKGNoYXJ8YmluYXJ5KSQvLnRlc3QobGFzdFR5cGUpJiYvKGNoYXJ8YmluYXJ5KSQvLnRlc3QodGV4dCkpfHwoLyhlbnVtfHNldCkkLy50ZXN0KGxhc3RUeXBlKSYmLyhlbnVtfHNldCkkLy50ZXN0KHRleHQpKSkpe2VsLnZhbHVlPScnO30KaWYobGFzdFR5cGU9PSd0aW1lc3RhbXAnJiZlbC5uYW1lPT1uYW1lKydbaGFzX2RlZmF1bHRdJyYmL3RpbWVzdGFtcC9pLnRlc3QoZm9ybUZpZWxkKHR5cGUuZm9ybSxuYW1lKydbZGVmYXVsdF0nKS52YWx1ZSkpe2VsLmNoZWNrZWQ9ZmFsc2U7fQppZihlbC5uYW1lPT1uYW1lKydbY29sbGF0aW9uXScpe2VsLmNsYXNzTmFtZT0oLyhjaGFyfHRleHR8ZW51bXxzZXQpJC8udGVzdCh0ZXh0KT8nJzonaGlkZGVuJyk7fQppZihlbC5uYW1lPT1uYW1lKydbdW5zaWduZWRdJyl7ZWwuY2xhc3NOYW1lPSgvKGludHxmbG9hdHxkb3VibGV8ZGVjaW1hbCkkLy50ZXN0KHRleHQpPycnOidoaWRkZW4nKTt9CmlmKGVsLm5hbWU9PW5hbWUrJ1tvbl9kZWxldGVdJyl7ZWwuY2xhc3NOYW1lPSgvYC8udGVzdCh0ZXh0KT8nJzonaGlkZGVuJyk7fX19CmZ1bmN0aW9uIGVkaXRpbmdMZW5ndGhGb2N1cyhmaWVsZCl7dmFyIHRkPWZpZWxkLnBhcmVudE5vZGU7aWYoLyhlbnVtfHNldCkkLy50ZXN0KHNlbGVjdFZhbHVlKHRkLnByZXZpb3VzU2libGluZy5maXJzdENoaWxkKSkpe3ZhciBlZGl0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlbnVtLWVkaXQnKTt2YXIgdmFsPWZpZWxkLnZhbHVlO2VkaXQudmFsdWU9KC9eJy4rJywnLisnJC8udGVzdCh2YWwpP3ZhbC5zdWJzdHIoMSx2YWwubGVuZ3RoLTIpLnJlcGxhY2UoLycsJy9nLCJcbiIpLnJlcGxhY2UoLycnL2csIiciKTp2YWwpO3RkLmFwcGVuZENoaWxkKGVkaXQpO2ZpZWxkLnN0eWxlLmRpc3BsYXk9J25vbmUnO2VkaXQuc3R5bGUuZGlzcGxheT0naW5saW5lJztlZGl0LmZvY3VzKCk7fX0KZnVuY3Rpb24gZWRpdGluZ0xlbmd0aEJsdXIoZWRpdCl7dmFyIGZpZWxkPWVkaXQucGFyZW50Tm9kZS5maXJzdENoaWxkO3ZhciB2YWw9ZWRpdC52YWx1ZTtmaWVsZC52YWx1ZT0oL1xuLy50ZXN0KHZhbCk/IiciK3ZhbC5yZXBsYWNlKC9cbiskLywnJykucmVwbGFjZSgvJy9nLCInJyIpLnJlcGxhY2UoL1xuL2csIicsJyIpKyInIjp2YWwpO2ZpZWxkLnN0eWxlLmRpc3BsYXk9J2lubGluZSc7ZWRpdC5zdHlsZS5kaXNwbGF5PSdub25lJzt9CmZ1bmN0aW9uIGNvbHVtblNob3coY2hlY2tlZCxjb2x1bW4pe3ZhciB0cnM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2VkaXQtZmllbGRzJykuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3RyJyk7Zm9yKHZhciBpPTA7aTx0cnMubGVuZ3RoO2krKyl7dHJzW2ldLmdldEVsZW1lbnRzQnlUYWdOYW1lKCd0ZCcpW2NvbHVtbl0uY2xhc3NOYW1lPShjaGVja2VkPycnOidoaWRkZW4nKTt9fQpmdW5jdGlvbiBwYXJ0aXRpb25CeUNoYW5nZShlbCl7dmFyIHBhcnRpdGlvblRhYmxlPS9SQU5HRXxMSVNULy50ZXN0KHNlbGVjdFZhbHVlKGVsKSk7ZWwuZm9ybVsncGFydGl0aW9ucyddLmNsYXNzTmFtZT0ocGFydGl0aW9uVGFibGV8fCFlbC5zZWxlY3RlZEluZGV4PydoaWRkZW4nOicnKTtkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncGFydGl0aW9uLXRhYmxlJykuY2xhc3NOYW1lPShwYXJ0aXRpb25UYWJsZT8nJzonaGlkZGVuJyk7fQpmdW5jdGlvbiBwYXJ0aXRpb25OYW1lQ2hhbmdlKGVsKXt2YXIgcm93PWVsLnBhcmVudE5vZGUucGFyZW50Tm9kZS5jbG9uZU5vZGUodHJ1ZSk7cm93LmZpcnN0Q2hpbGQuZmlyc3RDaGlsZC52YWx1ZT0nJztlbC5wYXJlbnROb2RlLnBhcmVudE5vZGUucGFyZW50Tm9kZS5hcHBlbmRDaGlsZChyb3cpO2VsLm9uY2hhbmdlPWZ1bmN0aW9uKCl7fTt9CmZ1bmN0aW9uIGZvcmVpZ25BZGRSb3coZmllbGQpe2ZpZWxkLm9uY2hhbmdlPWZ1bmN0aW9uKCl7fTt2YXIgcm93PWZpZWxkLnBhcmVudE5vZGUucGFyZW50Tm9kZS5jbG9uZU5vZGUodHJ1ZSk7dmFyIHNlbGVjdHM9cm93LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKTtmb3IodmFyIGk9MDtpPHNlbGVjdHMubGVuZ3RoO2krKyl7c2VsZWN0c1tpXS5uYW1lPXNlbGVjdHNbaV0ubmFtZS5yZXBsYWNlKC9cXS8sJzEkJicpO3NlbGVjdHNbaV0uc2VsZWN0ZWRJbmRleD0wO30KZmllbGQucGFyZW50Tm9kZS5wYXJlbnROb2RlLnBhcmVudE5vZGUuYXBwZW5kQ2hpbGQocm93KTt9CmZ1bmN0aW9uIGluZGV4ZXNBZGRSb3coZmllbGQpe2ZpZWxkLm9uY2hhbmdlPWZ1bmN0aW9uKCl7fTt2YXIgcm93PWZpZWxkLnBhcmVudE5vZGUucGFyZW50Tm9kZS5jbG9uZU5vZGUodHJ1ZSk7dmFyIHNwYW5zPXJvdy5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc3BhbicpO2Zvcih2YXIgaT0wO2k8c3BhbnMubGVuZ3RoLTE7aSsrKXtyb3cucmVtb3ZlQ2hpbGQoc3BhbnNbaV0pO30KdmFyIHNlbGVjdHM9cm93LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKTtmb3IodmFyIGk9MDtpPHNlbGVjdHMubGVuZ3RoO2krKyl7c2VsZWN0c1tpXS5uYW1lPXNlbGVjdHNbaV0ubmFtZS5yZXBsYWNlKC9pbmRleGVzXFtcZCsvLCckJjEnKTtzZWxlY3RzW2ldLnNlbGVjdGVkSW5kZXg9MDt9CnZhciBpbnB1dD1yb3cuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2lucHV0JylbMF07aW5wdXQubmFtZT1pbnB1dC5uYW1lLnJlcGxhY2UoL2luZGV4ZXNcW1xkKy8sJyQmMScpO2lucHV0LnZhbHVlPScnO2ZpZWxkLnBhcmVudE5vZGUucGFyZW50Tm9kZS5wYXJlbnROb2RlLmFwcGVuZENoaWxkKHJvdyk7fQpmdW5jdGlvbiBpbmRleGVzQWRkQ29sdW1uKGZpZWxkKXtmaWVsZC5vbmNoYW5nZT1mdW5jdGlvbigpe307dmFyIGNvbHVtbj1maWVsZC5wYXJlbnROb2RlLmNsb25lTm9kZSh0cnVlKTt2YXIgc2VsZWN0PWNvbHVtbi5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2VsZWN0JylbMF07c2VsZWN0Lm5hbWU9c2VsZWN0Lm5hbWUucmVwbGFjZSgvXF1cW1xkKy8sJyQmMScpO3NlbGVjdC5zZWxlY3RlZEluZGV4PTA7dmFyIGlucHV0PWNvbHVtbi5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaW5wdXQnKVswXTtpbnB1dC5uYW1lPWlucHV0Lm5hbWUucmVwbGFjZSgvXF1cW1xkKy8sJyQmMScpO2lucHV0LnZhbHVlPScnO2ZpZWxkLnBhcmVudE5vZGUucGFyZW50Tm9kZS5hcHBlbmRDaGlsZChjb2x1bW4pO3NlbGVjdD1maWVsZC5mb3JtW2ZpZWxkLm5hbWUucmVwbGFjZSgvXF0uKi8sJ11bdHlwZV0nKV07aWYoIXNlbGVjdC5zZWxlY3RlZEluZGV4KXtzZWxlY3Quc2VsZWN0ZWRJbmRleD0zO319CnZhciB0aGF0LHgseSxlbSx0YWJsZVBvcztmdW5jdGlvbiBzY2hlbWFNb3VzZWRvd24oZWwsZXZlbnQpe3RoYXQ9ZWw7eD1ldmVudC5jbGllbnRYLWVsLm9mZnNldExlZnQ7eT1ldmVudC5jbGllbnRZLWVsLm9mZnNldFRvcDt9CmZ1bmN0aW9uIHNjaGVtYU1vdXNlbW92ZShldil7aWYodGhhdCE9PXVuZGVmaW5lZCl7ZXY9ZXZ8fGV2ZW50O3ZhciBsZWZ0PShldi5jbGllbnRYLXgpL2VtO3ZhciB0b3A9KGV2LmNsaWVudFkteSkvZW07dmFyIGRpdnM9dGhhdC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnZGl2Jyk7dmFyIGxpbmVTZXQ9e307Zm9yKHZhciBpPTA7aTxkaXZzLmxlbmd0aDtpKyspe2lmKGRpdnNbaV0uY2xhc3NOYW1lPT0ncmVmZXJlbmNlcycpe3ZhciBkaXYyPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKChkaXZzW2ldLmlkLnN1YnN0cigwLDQpPT0ncmVmcyc/J3JlZmQnOidyZWZzJykrZGl2c1tpXS5pZC5zdWJzdHIoNCkpO3ZhciByZWY9KHRhYmxlUG9zW2RpdnNbaV0udGl0bGVdP3RhYmxlUG9zW2RpdnNbaV0udGl0bGVdOltkaXYyLnBhcmVudE5vZGUub2Zmc2V0VG9wL2VtLDBdKTt2YXIgbGVmdDE9LTE7dmFyIGlzVG9wPXRydWU7dmFyIGlkPWRpdnNbaV0uaWQucmVwbGFjZSgvXnJlZi4oLispLS4rLywnJDEnKTtpZihkaXZzW2ldLnBhcmVudE5vZGUhPWRpdjIucGFyZW50Tm9kZSl7bGVmdDE9TWF0aC5taW4oMCxyZWZbMV0tbGVmdCktMTtkaXZzW2ldLnN0eWxlLmxlZnQ9bGVmdDErJ2VtJztkaXZzW2ldLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdkaXYnKVswXS5zdHlsZS53aWR0aD0tbGVmdDErJ2VtJzt2YXIgbGVmdDI9TWF0aC5taW4oMCxsZWZ0LXJlZlsxXSktMTtkaXYyLnN0eWxlLmxlZnQ9bGVmdDIrJ2VtJztkaXYyLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdkaXYnKVswXS5zdHlsZS53aWR0aD0tbGVmdDIrJ2VtJztpc1RvcD0oZGl2Mi5vZmZzZXRUb3ArcmVmWzBdKmVtPmRpdnNbaV0ub2Zmc2V0VG9wK3RvcCplbSk7fQppZighbGluZVNldFtpZF0pe3ZhciBsaW5lPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGRpdnNbaV0uaWQucmVwbGFjZSgvXi4uLi4oLispLVxkKyQvLCdyZWZsJDEnKSk7dmFyIHNoaWZ0PWV2LmNsaWVudFkteS10aGF0Lm9mZnNldFRvcDtsaW5lLnN0eWxlLmxlZnQ9KGxlZnQrbGVmdDEpKydlbSc7aWYoaXNUb3Ape2xpbmUuc3R5bGUudG9wPShsaW5lLm9mZnNldFRvcCtzaGlmdCkvZW0rJ2VtJzt9CmlmKGRpdnNbaV0ucGFyZW50Tm9kZSE9ZGl2Mi5wYXJlbnROb2RlKXtsaW5lPWxpbmUuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2RpdicpWzBdO2xpbmUuc3R5bGUuaGVpZ2h0PShsaW5lLm9mZnNldEhlaWdodCsoaXNUb3A/LTE6MSkqc2hpZnQpL2VtKydlbSc7fQpsaW5lU2V0W2lkXT10cnVlO319fQp0aGF0LnN0eWxlLmxlZnQ9bGVmdCsnZW0nO3RoYXQuc3R5bGUudG9wPXRvcCsnZW0nO319CmZ1bmN0aW9uIHNjaGVtYU1vdXNldXAoZXYsZGIpe2lmKHRoYXQhPT11bmRlZmluZWQpe2V2PWV2fHxldmVudDt0YWJsZVBvc1t0aGF0LmZpcnN0Q2hpbGQuZmlyc3RDaGlsZC5maXJzdENoaWxkLmRhdGFdPVsoZXYuY2xpZW50WS15KS9lbSwoZXYuY2xpZW50WC14KS9lbV07dGhhdD11bmRlZmluZWQ7dmFyIHM9Jyc7Zm9yKHZhciBrZXkgaW4gdGFibGVQb3Mpe3MrPSdfJytrZXkrJzonK01hdGgucm91bmQodGFibGVQb3Nba2V5XVswXSoxMDAwMCkvMTAwMDArJ3gnK01hdGgucm91bmQodGFibGVQb3Nba2V5XVsxXSoxMDAwMCkvMTAwMDA7fQpzPWVuY29kZVVSSUNvbXBvbmVudChzLnN1YnN0cigxKSk7dmFyIGxpbms9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3NjaGVtYS1saW5rJyk7bGluay5ocmVmPWxpbmsuaHJlZi5yZXBsYWNlKC9bXj1dKyQvLCcnKStzO2Nvb2tpZSgnYWRtaW5lcl9zY2hlbWEtJytkYisnPScrcywzMCk7fX08P3BocAp9ZWxzZXtoZWFkZXIoIkNvbnRlbnQtVHlwZTogaW1hZ2UvZ2lmIik7c3dpdGNoKCRfR0VUWyJmaWxlIl0pe2Nhc2UicGx1cy5naWYiOmVjaG8KYmFzZTY0X2RlY29kZSgiUjBsR09EZGhFZ0FTQUtFQUFPN3U3Z0FBQUptWm1RQUFBQ3dBQUFBQUVnQVNBQUFDSVlTUHFjdnREMDBJOGN3cUtiNXYrcThwSUFoeGxSbWhaWWkxN2lQRThrekxCUUE3Iik7YnJlYWs7Y2FzZSJjcm9zcy5naWYiOmVjaG8KYmFzZTY0X2RlY29kZSgiUjBsR09EZGhFZ0FTQUtFQUFPN3U3Z0FBQUptWm1RQUFBQ3dBQUFBQUVnQVNBQUFDSTRTUHFjdnREeU1LWWRaR2IzNTV3eTZCWDNkaGxPRXg1N0ZLN2d0SHdrelhObDBBQURzPSIpO2JyZWFrO2Nhc2UidXAuZ2lmIjplY2hvCmJhc2U2NF9kZWNvZGUoIlIwbEdPRGRoRWdBU0FLRUFBTzd1N2dBQUFKbVptUUFBQUN3QUFBQUFFZ0FTQUFBQ0lJU1BxY3Z0RDAwSVVVNEs3MzBUOUo1aEZUaUtFWG1hWWNXMnJnREg4aHdYQURzPSIpO2JyZWFrO2Nhc2UiZG93bi5naWYiOmVjaG8KYmFzZTY0X2RlY29kZSgiUjBsR09EZGhFZ0FTQUtFQUFPN3U3Z0FBQUptWm1RQUFBQ3dBQUFBQUVnQVNBQUFDSUlTUHFjdnREMDBJOGN3cUtiNWJWLzVjb3NkTUp0bWNIY2EybFFESDhod1hBRHM9Iik7YnJlYWs7Y2FzZSJhcnJvdy5naWYiOmVjaG8KYmFzZTY0X2RlY29kZSgiUjBsR09EbGhDQUFLQUlBQUFJQ0FnUC8vL3lINUJBRUFBQUVBTEFBQUFBQUlBQW9BQUFJUEJJSnBsckdMbnBRUnF0T3kzcnNBQURzPSIpO2JyZWFrO2Nhc2UibG9hZGVyLmdpZiI6ZWNobwpiYXNlNjRfZGVjb2RlKCJSMGxHT0RsaEVBQVFBUElBQVAvLy93QUFBTUxDd2tKQ1FnQUFBR0ppWW9LQ2dwS1NraUgvQzA1RlZGTkRRVkJGTWk0d0F3RUFBQUFoL2hwRGNtVmhkR1ZrSUhkcGRHZ2dZV3BoZUd4dllXUXVhVzVtYndBaCtRUUpDZ0FBQUN3QUFBQUFFQUFRQUFBRE13aTYzUDR3eWtsckUyTUlPZ2dabkFkT21HWUpSYkV4d3JvVW1jRzJMbURFd25IUUxWc1lPZDJtQnprWURBZEthK2RJQUFBaCtRUUpDZ0FBQUN3QUFBQUFFQUFRQUFBRE5BaTYzUDVPakNFZ0c0UU11N0RtaWtSeFFsRlVZREVaSUdCTVJWc2FxSHdjdFhYZjdXRVlCNEFnMXhqaWhrTVpzaVVrS2hJQUlma0VDUW9BQUFBc0FBQUFBQkFBRUFBQUF6WUl1aklqSzhwQnlKRE1sRll2Qm9WakhBNzBHVTd4U1VKaG1LdHdIUEFLekxPOUhNYW9Ld0paN1JmOEFZUEREektwWkJxZnZ3UUFJZmtFQ1FvQUFBQXNBQUFBQUJBQUVBQUFBek1JdW1JbEs4b3locEhzbkZaZmhZdW1DWVVoREFReFJJZGhIQkdxUm9LdzBSOERZbEpkOHowZk1EZ3NHby9JcEhJNVRBQUFJZmtFQ1FvQUFBQXNBQUFBQUJBQUVBQUFBeklJdW5Jbkswcm5aQlR3R1BOTWdRd21kc05nWEdKVWxJV0V1UjVvV1VJcHo4cEFFQU1lNlR3Znd5WXNHby9JcEZLU0FBQWgrUVFKQ2dBQUFDd0FBQUFBRUFBUUFBQURNd2k2SU1LUU9SZmpkT2U4MnA0d0djY2M0Q0V1UXJhZHlsZXNvakVNQmdzVWMyRzdzRFgzbFFHQk1MQUppYnVmYlNsS0FBQWgrUVFKQ2dBQUFDd0FBQUFBRUFBUUFBQURNZ2k2M1A3d0NSSFpuRlZkbWdIdTJuRndsV0NJM1dHYzNUU1doVUZHeFRBVWtHQ2J0Z0VOQk1KQUVKc3hnTUxXenBFQUFDSDVCQWtLQUFBQUxBQUFBQUFRQUJBQUFBTXlDTHJjL2pES1NhdGxRdFNjS2RjZUNBakRJSTdIY1E0RU1UQ3B5ckN1VUJqQ1lSZ0hWdHFsQWlCMVloaUNubHNSa0FBQU93QUFBQUFBQUFBQUFBPT0iKTticmVhazt9fWV4aXQ7fWZ1bmN0aW9uCmNvbm5lY3Rpb24oKXtnbG9iYWwkZztyZXR1cm4kZzt9ZnVuY3Rpb24KaWRmX3VuZXNjYXBlKCROKXskeGI9c3Vic3RyKCROLC0xKTtyZXR1cm4Kc3RyX3JlcGxhY2UoJHhiLiR4YiwkeGIsc3Vic3RyKCROLDEsLTEpKTt9ZnVuY3Rpb24KZXNjYXBlX3N0cmluZygkYil7cmV0dXJuCnN1YnN0cihxKCRiKSwxLC0xKTt9ZnVuY3Rpb24KcmVtb3ZlX3NsYXNoZXMoJHViKXtpZihnZXRfbWFnaWNfcXVvdGVzX2dwYygpKXt3aGlsZShsaXN0KCRkLCRiKT1lYWNoKCR1Yikpe2ZvcmVhY2goJGIKYXMkTWE9PiR5KXt1bnNldCgkdWJbJGRdWyRNYV0pO2lmKGlzX2FycmF5KCR5KSl7JHViWyRkXVtzdHJpcHNsYXNoZXMoJE1hKV09JHk7JHViW109JiR1YlskZF1bc3RyaXBzbGFzaGVzKCRNYSldO31lbHNleyR1YlskZF1bc3RyaXBzbGFzaGVzKCRNYSldPSgkX2U/JHk6c3RyaXBzbGFzaGVzKCR5KSk7fX19fX1mdW5jdGlvbgpicmFja2V0X2VzY2FwZSgkTiwkcGY9ZmFsc2Upe3N0YXRpYyRYZD1hcnJheSgnOic9Pic6MScsJ10nPT4nOjInLCdbJz0+JzozJyk7cmV0dXJuCnN0cnRyKCROLCgkcGY/YXJyYXlfZmxpcCgkWGQpOiRYZCkpO31mdW5jdGlvbgpoKCRJKXtyZXR1cm4KaHRtbHNwZWNpYWxjaGFycygkSSxFTlRfUVVPVEVTKTt9ZnVuY3Rpb24KbmJzcCgkSSl7cmV0dXJuKHRyaW0oJEkpIT0iIj9oKCRJKToiJm5ic3A7Iik7fWZ1bmN0aW9uCm5sX2JyKCRJKXtyZXR1cm4Kc3RyX3JlcGxhY2UoIlxuIiwiPGJyPiIsJEkpO31mdW5jdGlvbgpjaGVja2JveCgkZiwkcSwkYWIsJFVkPSIiLCRhZT0iIil7c3RhdGljJFM9MDskUysrOyRjPSI8aW5wdXQgdHlwZT0nY2hlY2tib3gnIi4oJGY/IiBuYW1lPSckZicgdmFsdWU9JyIuaCgkcSkuIiciOiIgY2xhc3M9J2pzb25seSciKS4oJGFiPyIgY2hlY2tlZCI6IiIpLigkYWU/IiBvbmNsaWNrPVwiJGFlXCIiOiIiKS4iIGlkPSdjaGVja2JveC0kUyc+IjtyZXR1cm4oJFVkIT0iIj8iPGxhYmVsIGZvcj0nY2hlY2tib3gtJFMnPiRjIi5oKCRVZCkuIjwvbGFiZWw+IjokYyk7fWZ1bmN0aW9uCm9wdGlvbmxpc3QoJFdjLCRNZj1udWxsLCRvZT1mYWxzZSl7JGM9IiI7Zm9yZWFjaCgkV2MKYXMkTWE9PiR5KXskZ2U9YXJyYXkoJE1hPT4keSk7aWYoaXNfYXJyYXkoJHkpKXskYy49JzxvcHRncm91cCBsYWJlbD0iJy5oKCRNYSkuJyI+JzskZ2U9JHk7fWZvcmVhY2goJGdlCmFzJGQ9PiRiKXskYy49JzxvcHRpb24nLigkb2V8fGlzX3N0cmluZygkZCk/JyB2YWx1ZT0iJy5oKCRkKS4nIic6JycpLigoJG9lfHxpc19zdHJpbmcoJGQpPyhzdHJpbmcpJGQ6JGIpPT09JE1mPycgc2VsZWN0ZWQnOicnKS4nPicuaCgkYik7fWlmKGlzX2FycmF5KCR5KSl7JGMuPSc8L29wdGdyb3VwPic7fX1yZXR1cm4kYzt9ZnVuY3Rpb24KaHRtbF9zZWxlY3QoJGYsJFdjLCRxPSIiLCRRYj10cnVlKXtpZigkUWIpe3JldHVybiI8c2VsZWN0IG5hbWU9JyIuaCgkZikuIiciLihpc19zdHJpbmcoJFFiKT8iIG9uY2hhbmdlPVwiJFFiXCIiOiIiKS4iPiIub3B0aW9ubGlzdCgkV2MsJHEpLiI8L3NlbGVjdD4iO30kYz0iIjtmb3JlYWNoKCRXYwphcyRkPT4kYil7JGMuPSI8bGFiZWw+PGlucHV0IHR5cGU9J3JhZGlvJyBuYW1lPSciLmgoJGYpLiInIHZhbHVlPSciLmgoJGQpLiInIi4oJGQ9PSRxPyIgY2hlY2tlZCI6IiIpLiI+Ii5oKCRiKS4iPC9sYWJlbD4iO31yZXR1cm4kYzt9ZnVuY3Rpb24KY29uZmlybSgkUWM9IiIsJFNmPWZhbHNlKXtyZXR1cm4iIG9uY2xpY2s9XCIiLigkU2Y/ImV2ZW50U3RvcChldmVudCk7ICI6IiIpLiJyZXR1cm4gY29uZmlybSgnIi5sYW5nKDApLigkUWM/IiAoJyArICRRYyArICcpIjoiIikuIicpO1wiIjt9ZnVuY3Rpb24KanNfZXNjYXBlKCRJKXtyZXR1cm4KYWRkY3NsYXNoZXMoJEksIlxyXG4nXFwvIik7fWZ1bmN0aW9uCmluaV9ib29sKCRSZil7JGI9aW5pX2dldCgkUmYpO3JldHVybihlcmVnaSgnXihvbnx0cnVlfHllcykkJywkYil8fChpbnQpJGIpO31mdW5jdGlvbgpzaWQoKXtzdGF0aWMkYztpZighaXNzZXQoJGMpKXskYz0oU0lEJiYhKCRfQ09PS0lFJiZpbmlfYm9vbCgic2Vzc2lvbi51c2VfY29va2llcyIpKSk7fXJldHVybiRjO31mdW5jdGlvbgpxKCRJKXtnbG9iYWwkZztyZXR1cm4kZy0+cXVvdGUoJEkpO31mdW5jdGlvbgpnZXRfdmFscygkaiwkQz0wKXtnbG9iYWwkZzskYz1hcnJheSgpOyRpPSRnLT5xdWVyeSgkaik7aWYoaXNfb2JqZWN0KCRpKSl7d2hpbGUoJGE9JGktPmZldGNoX3JvdygpKXskY1tdPSRhWyRDXTt9fXJldHVybiRjO31mdW5jdGlvbgpnZXRfa2V5X3ZhbHMoJGosJEc9bnVsbCl7Z2xvYmFsJGc7aWYoIWlzX29iamVjdCgkRykpeyRHPSRnO30kYz1hcnJheSgpOyRpPSRHLT5xdWVyeSgkaik7aWYoaXNfb2JqZWN0KCRpKSl7d2hpbGUoJGE9JGktPmZldGNoX3JvdygpKXskY1skYVswXV09JGFbMV07fX1yZXR1cm4kYzt9ZnVuY3Rpb24KZ2V0X3Jvd3MoJGosJEc9bnVsbCwkbj0iPHAgY2xhc3M9J2Vycm9yJz4iKXtnbG9iYWwkZztpZighaXNfb2JqZWN0KCRHKSl7JEc9JGc7fSRjPWFycmF5KCk7JGk9JEctPnF1ZXJ5KCRqKTtpZihpc19vYmplY3QoJGkpKXt3aGlsZSgkYT0kaS0+ZmV0Y2hfYXNzb2MoKSl7JGNbXT0kYTt9fWVsc2VpZighJGkmJiRnLT5lcnJvciYmJG4mJmRlZmluZWQoIlBBR0VfSEVBREVSIikpe2VjaG8kbi5lcnJvcigpLiJcbiI7fXJldHVybiRjO31mdW5jdGlvbgp1bmlxdWVfYXJyYXkoJGEsJEope2ZvcmVhY2goJEoKYXMkeCl7aWYoZXJlZygiUFJJTUFSWXxVTklRVUUiLCR4WyJ0eXBlIl0pKXskYz1hcnJheSgpO2ZvcmVhY2goJHhbImNvbHVtbnMiXWFzJGQpe2lmKCFpc3NldCgkYVskZF0pKXtjb250aW51ZQoyO30kY1skZF09JGFbJGRdO31yZXR1cm4kYzt9fSRjPWFycmF5KCk7Zm9yZWFjaCgkYQphcyRkPT4kYil7aWYoIXByZWdfbWF0Y2goJ35eKENPVU5UXFwoKFxcKnwoRElTVElOQ1QgKT9gKD86W15gXXxgYCkrYClcXCl8KEFWR3xHUk9VUF9DT05DQVR8TUFYfE1JTnxTVU0pXFwoYCg/OlteYF18YGApK2BcXCkpJH4nLCRkKSl7JGNbJGRdPSRiO319cmV0dXJuJGM7fWZ1bmN0aW9uCndoZXJlKCRzKXtnbG9iYWwkdjskYz1hcnJheSgpO2ZvcmVhY2goKGFycmF5KSRzWyJ3aGVyZSJdYXMkZD0+JGIpeyRjW109aWRmX2VzY2FwZShicmFja2V0X2VzY2FwZSgkZCwxKSkuKGVyZWcoJ1xcLicsJGIpfHwkdj09Im1zc3FsIj8iIExJS0UgIi5leGFjdF92YWx1ZShhZGRjc2xhc2hlcygkYiwiJV8iKSk6IiA9ICIuZXhhY3RfdmFsdWUoJGIpKTt9Zm9yZWFjaCgoYXJyYXkpJHNbIm51bGwiXWFzJGQpeyRjW109aWRmX2VzY2FwZSgkZCkuIiBJUyBOVUxMIjt9cmV0dXJuCmltcGxvZGUoIiBBTkQgIiwkYyk7fWZ1bmN0aW9uCndoZXJlX2NoZWNrKCRiKXtwYXJzZV9zdHIoJGIsJGZlKTtyZW1vdmVfc2xhc2hlcyhhcnJheSgmJGZlKSk7cmV0dXJuCndoZXJlKCRmZSk7fWZ1bmN0aW9uCndoZXJlX2xpbmsoJGwsJEMsJHEsJElmPSI9Iil7cmV0dXJuIiZ3aGVyZSU1QiRsJTVEJTVCY29sJTVEPSIudXJsZW5jb2RlKCRDKS4iJndoZXJlJTVCJGwlNUQlNUJvcCU1RD0iLnVybGVuY29kZSgoaXNzZXQoJHEpPyRJZjoiSVMgTlVMTCIpKS4iJndoZXJlJTVCJGwlNUQlNUJ2YWwlNUQ9Ii51cmxlbmNvZGUoJHEpO31mdW5jdGlvbgpjb29raWUoJGYsJHEpe2dsb2JhbCRBYzskeGM9YXJyYXkoJGYsKGVyZWcoIlxuIiwkcSk/IiI6JHEpLHRpbWUoKSsyNTkyMDAwLHByZWdfcmVwbGFjZSgnflxcPy4qficsJycsJF9TRVJWRVJbIlJFUVVFU1RfVVJJIl0pLCIiLCRBYyk7aWYodmVyc2lvbl9jb21wYXJlKFBIUF9WRVJTSU9OLCc1LjIuMCcpPj0wKXskeGNbXT10cnVlO31yZXR1cm4KY2FsbF91c2VyX2Z1bmNfYXJyYXkoJ3NldGNvb2tpZScsJHhjKTt9ZnVuY3Rpb24KcmVzdGFydF9zZXNzaW9uKCl7aWYoIWluaV9ib29sKCJzZXNzaW9uLnVzZV9jb29raWVzIikpe3Nlc3Npb25fc3RhcnQoKTt9fWZ1bmN0aW9uJmdldF9zZXNzaW9uKCRkKXtyZXR1cm4kX1NFU1NJT05bJGRdW0RSSVZFUl1bU0VSVkVSXVskX0dFVFsidXNlcm5hbWUiXV07fWZ1bmN0aW9uCnNldF9zZXNzaW9uKCRkLCRiKXskX1NFU1NJT05bJGRdW0RSSVZFUl1bU0VSVkVSXVskX0dFVFsidXNlcm5hbWUiXV09JGI7fWZ1bmN0aW9uCmF1dGhfdXJsKCRJYiwkRiwkUCl7Z2xvYmFsJG5hO3ByZWdfbWF0Y2goJ34oW14/XSopXFw/PyguKil+JyxyZW1vdmVfZnJvbV91cmkoaW1wbG9kZSgifCIsYXJyYXlfa2V5cygkbmEpKS4ifHVzZXJuYW1lfCIuc2Vzc2lvbl9uYW1lKCkpLCRrKTtyZXR1cm4iJGtbMV0/Ii4oc2lkKCk/U0lELiImIjoiIikuKCRJYiE9InNlcnZlciJ8fCRGIT0iIj91cmxlbmNvZGUoJEliKS4iPSIudXJsZW5jb2RlKCRGKS4iJiI6IiIpLiJ1c2VybmFtZT0iLnVybGVuY29kZSgkUCkuKCRrWzJdPyImJGtbMl0iOiIiKTt9ZnVuY3Rpb24KaXNfYWpheCgpe3JldHVybigkX1NFUlZFUlsiSFRUUF9YX1JFUVVFU1RFRF9XSVRIIl09PSJYTUxIdHRwUmVxdWVzdCIpO31mdW5jdGlvbgpyZWRpcmVjdCgkZ2EsJHZhPW51bGwpe2lmKGlzc2V0KCR2YSkpe3Jlc3RhcnRfc2Vzc2lvbigpOyRfU0VTU0lPTlsibWVzc2FnZXMiXVtwcmVnX3JlcGxhY2UoJ35eW14/XSp+JywnJywoaXNzZXQoJGdhKT8kZ2E6JF9TRVJWRVJbIlJFUVVFU1RfVVJJIl0pKV1bXT0kdmE7fWlmKGlzc2V0KCRnYSkpe2lmKCRnYT09IiIpeyRnYT0iLiI7fWhlYWRlcigoaXNfYWpheCgpPyJYLUFKQVgtUmVkaXJlY3QiOiJMb2NhdGlvbiIpLiI6ICRnYSIpO2V4aXQ7fX1mdW5jdGlvbgpxdWVyeV9yZWRpcmVjdCgkaiwkZ2EsJHZhLCRmZD10cnVlLCRFZj10cnVlLCRiZj1mYWxzZSl7Z2xvYmFsJGcsJG4sJG87aWYoJEVmKXskYmY9ISRnLT5xdWVyeSgkaik7fSR4ZD0iIjtpZigkail7JHhkPSRvLT5tZXNzYWdlUXVlcnkoIiRqOyIpO31pZigkYmYpeyRuPWVycm9yKCkuJHhkO3JldHVybgpmYWxzZTt9aWYoJGZkKXtyZWRpcmVjdCgkZ2EsJHZhLiR4ZCk7fXJldHVybgp0cnVlO31mdW5jdGlvbgpxdWVyaWVzKCRqPW51bGwpe2dsb2JhbCRnO3N0YXRpYyRqYj1hcnJheSgpO2lmKCFpc3NldCgkaikpe3JldHVybgppbXBsb2RlKCI7XG4iLCRqYik7fSRqYltdPShlcmVnKCc7JCcsJGopPyJERUxJTUlURVIgOztcbiRqO1xuREVMSU1JVEVSICI6JGopO3JldHVybiRnLT5xdWVyeSgkaik7fWZ1bmN0aW9uCmFwcGx5X3F1ZXJpZXMoJGosJEUsJERmPSd0YWJsZScpe2ZvcmVhY2goJEUKYXMkaCl7aWYoIXF1ZXJpZXMoIiRqICIuJERmKCRoKSkpe3JldHVybgpmYWxzZTt9fXJldHVybgp0cnVlO31mdW5jdGlvbgpxdWVyaWVzX3JlZGlyZWN0KCRnYSwkdmEsJGZkKXtyZXR1cm4KcXVlcnlfcmVkaXJlY3QocXVlcmllcygpLCRnYSwkdmEsJGZkLGZhbHNlLCEkZmQpO31mdW5jdGlvbgpyZW1vdmVfZnJvbV91cmkoJFphPSIiKXtyZXR1cm4Kc3Vic3RyKHByZWdfcmVwbGFjZSgifig/PD1bPyZdKSgkWmEiLihTSUQ/IiI6InwiLnNlc3Npb25fbmFtZSgpKS4iKT1bXiZdKiZ+IiwnJywiJF9TRVJWRVJbUkVRVUVTVF9VUkldJiIpLDAsLTEpO31mdW5jdGlvbgpwYWdpbmF0aW9uKCRjYSwkemYpe3JldHVybiIgIi4oJGNhPT0kemY/JGNhKzE6JzxhIGhyZWY9IicuaChyZW1vdmVfZnJvbV91cmkoInBhZ2UiKS4oJGNhPyImcGFnZT0kY2EiOiIiKSkuJyI+Jy4oJGNhKzEpLiI8L2E+Iik7fWZ1bmN0aW9uCmdldF9maWxlKCRkLCRzZD1mYWxzZSl7JElhPSRfRklMRVNbJGRdO2lmKCEkSWF8fCRJYVsiZXJyb3IiXSl7cmV0dXJuJElhWyJlcnJvciJdO30kYz1maWxlX2dldF9jb250ZW50cygkc2QmJmVyZWcoJ1xcLmd6JCcsJElhWyJuYW1lIl0pPyJjb21wcmVzcy56bGliOi8vJElhW3RtcF9uYW1lXSI6KCRzZCYmZXJlZygnXFwuYnoyJCcsJElhWyJuYW1lIl0pPyJjb21wcmVzcy5iemlwMjovLyRJYVt0bXBfbmFtZV0iOiRJYVsidG1wX25hbWUiXSkpO2lmKCRzZCl7JEZiPXN1YnN0cigkYywwLDMpO2lmKGZ1bmN0aW9uX2V4aXN0cygiaWNvbnYiKSYmZXJlZygiXlx4RkVceEZGfF5ceEZGXHhGRSIsJEZiLCRYZikpeyRjPWljb252KCJ1dGYtMTYiLCJ1dGYtOCIsJGMpO31lbHNlaWYoJEZiPT0iXHhFRlx4QkJceEJGIil7JGM9c3Vic3RyKCRjLDMpO319cmV0dXJuJGM7fWZ1bmN0aW9uCnVwbG9hZF9lcnJvcigkbil7JGdmPSgkbj09VVBMT0FEX0VSUl9JTklfU0laRT9pbmlfZ2V0KCJ1cGxvYWRfbWF4X2ZpbGVzaXplIik6bnVsbCk7cmV0dXJuKCRuP2xhbmcoMSkuKCRnZj8iICIubGFuZygyLCRnZik6IiIpOmxhbmcoMykpO31mdW5jdGlvbgpvZGQoJGM9JyBjbGFzcz0ib2RkIicpe3N0YXRpYyRsPTA7aWYoISRjKXskbD0tMTt9cmV0dXJuKCRsKyslCjI/JGM6JycpO31mdW5jdGlvbgpqc29uX3JvdygkZCwkYj1udWxsKXtzdGF0aWMkQmE9dHJ1ZTtpZigkQmEpe2VjaG8ieyI7fWlmKCRkIT0iIil7ZWNobygkQmE/IiI6IiwiKS4iXG5cdFwiIi5hZGRjc2xhc2hlcygkZCwiXHJcblwiXFwiKS4nIjogJy4oaXNzZXQoJGIpPyciJy5hZGRjc2xhc2hlcygkYiwiXHJcblwiXFwiKS4nIic6J3VuZGVmaW5lZCcpOyRCYT1mYWxzZTt9ZWxzZXtlY2hvIlxufVxuIjskQmE9dHJ1ZTt9fWZ1bmN0aW9uCmlzX3V0ZjgoJGIpe3JldHVybihwcmVnX21hdGNoKCd+fnUnLCRiKSYmIXByZWdfbWF0Y2goJ35bXFwwLVxceDhcXHhCXFx4Q1xceEUtXFx4MUZdficsJGIpKTt9ZnVuY3Rpb24KcmVwZWF0X3BhdHRlcm4oJGJhLCRXKXtyZXR1cm4Kc3RyX3JlcGVhdCgiJGJhezAsNjU1MzV9IiwkVy82NTUzNSkuIiRiYXswLCIuKCRXCiUKNjU1MzUpLiJ9Ijt9ZnVuY3Rpb24Kc2hvcnRlbl91dGY4KCRJLCRXPTgwLCRBZj0iIil7aWYoIXByZWdfbWF0Y2goIiheKCIucmVwZWF0X3BhdHRlcm4oIltcdFxyXG4gLVx4e0ZGRkZ9XSIsJFcpLiIpKCQpPyl1IiwkSSwkaykpe3ByZWdfbWF0Y2goIiheKCIucmVwZWF0X3BhdHRlcm4oIltcdFxyXG4gLX5dIiwkVykuIikoJCk/KSIsJEksJGspO31yZXR1cm4KaCgka1sxXSkuJEFmLihpc3NldCgka1syXSk/IiI6IjxpPi4uLjwvaT4iKTt9ZnVuY3Rpb24KZnJpZW5kbHlfdXJsKCRiKXtyZXR1cm4KcHJlZ19yZXBsYWNlKCd+W15hLXowLTlfXX5pJywnLScsJGIpO31mdW5jdGlvbgpoaWRkZW5fZmllbGRzKCR1YiwkUWY9YXJyYXkoKSl7d2hpbGUobGlzdCgkZCwkYik9ZWFjaCgkdWIpKXtpZihpc19hcnJheSgkYikpe2ZvcmVhY2goJGIKYXMkTWE9PiR5KXskdWJbJGQuIlskTWFdIl09JHk7fX1lbHNlaWYoIWluX2FycmF5KCRkLCRRZikpe2VjaG8nPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iJy5oKCRkKS4nIiB2YWx1ZT0iJy5oKCRiKS4nIj4nO319fWZ1bmN0aW9uCmhpZGRlbl9maWVsZHNfZ2V0KCl7ZWNobyhzaWQoKT8nPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iJy5zZXNzaW9uX25hbWUoKS4nIiB2YWx1ZT0iJy5oKHNlc3Npb25faWQoKSkuJyI+JzonJyksKFNFUlZFUiE9PW51bGw/JzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IicuRFJJVkVSLiciIHZhbHVlPSInLmgoU0VSVkVSKS4nIj4nOiIiKSwnPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0idXNlcm5hbWUiIHZhbHVlPSInLmgoJF9HRVRbInVzZXJuYW1lIl0pLiciPic7fWZ1bmN0aW9uCmNvbHVtbl9mb3JlaWduX2tleXMoJGgpe2dsb2JhbCRvOyRjPWFycmF5KCk7Zm9yZWFjaCgkby0+Zm9yZWlnbktleXMoJGgpYXMkQSl7Zm9yZWFjaCgkQVsic291cmNlIl1hcyRiKXskY1skYl1bXT0kQTt9fXJldHVybiRjO31mdW5jdGlvbgplbnVtX2lucHV0KCR6LCRSYSwkZSwkcSwkaGM9bnVsbCl7Z2xvYmFsJG87cHJlZ19tYXRjaF9hbGwoIn4nKCg/OlteJ118JycpKiknfiIsJGVbImxlbmd0aCJdLCRvYSk7JGM9KGlzc2V0KCRoYyk/IjxsYWJlbD48aW5wdXQgdHlwZT0nJHonJFJhIHZhbHVlPSckaGMnIi4oKGlzX2FycmF5KCRxKT9pbl9hcnJheSgkaGMsJHEpOiRxPT09MCk/IiBjaGVja2VkIjoiIikuIj48aT4iLmxhbmcoNCkuIjwvaT48L2xhYmVsPiI6IiIpO2ZvcmVhY2goJG9hWzFdYXMkbD0+JGIpeyRiPXN0cmlwY3NsYXNoZXMoc3RyX3JlcGxhY2UoIicnIiwiJyIsJGIpKTskYWI9KGlzX2ludCgkcSk/JHE9PSRsKzE6KGlzX2FycmF5KCRxKT9pbl9hcnJheSgkbCsxLCRxKTokcT09PSRiKSk7JGMuPSIgPGxhYmVsPjxpbnB1dCB0eXBlPSckeickUmEgdmFsdWU9JyIuKCRsKzEpLiInIi4oJGFiPycgY2hlY2tlZCc6JycpLic+Jy5oKCRvLT5lZGl0VmFsKCRiLCRlKSkuJzwvbGFiZWw+Jzt9cmV0dXJuJGM7fWZ1bmN0aW9uCmlucHV0KCRlLCRxLCRLKXtnbG9iYWwkUiwkbywkdjskZj1oKGJyYWNrZXRfZXNjYXBlKCRlWyJmaWVsZCJdKSk7ZWNobyI8dGQgY2xhc3M9J2Z1bmN0aW9uJz4iOyREZT0oJHY9PSJtc3NxbCImJiRlWyJhdXRvX2luY3JlbWVudCJdKTtpZigkRGUmJiEkX1BPU1RbInNhdmUiXSl7JEs9bnVsbDt9JGRhPShpc3NldCgkX0dFVFsic2VsZWN0Il0pfHwkRGU/YXJyYXkoIm9yaWciPT5sYW5nKDUpKTphcnJheSgpKSskby0+ZWRpdEZ1bmN0aW9ucygkZSk7JFJhPSIgbmFtZT0nZmllbGRzWyRmXSciO2lmKCRlWyJ0eXBlIl09PSJlbnVtIil7ZWNobwpuYnNwKCRkYVsiIl0pLiI8dGQ+Ii4kby0+ZWRpdElucHV0KCRfR0VUWyJlZGl0Il0sJGUsJFJhLCRxKTt9ZWxzZXskQmE9MDtmb3JlYWNoKCRkYQphcyRkPT4kYil7aWYoJGQ9PT0iInx8ISRiKXticmVhazt9JEJhKys7fSRRYj0oJEJhPyIgb25jaGFuZ2U9XCJ2YXIgZiA9IHRoaXMuZm9ybVsnZnVuY3Rpb25bIi5qc19lc2NhcGUoJGYpLiJdJ107IGlmICgkQmEgPiBmLnNlbGVjdGVkSW5kZXgpIGYuc2VsZWN0ZWRJbmRleCA9ICRCYTtcIiI6IiIpOyRSYS49JFFiO2VjaG8oY291bnQoJGRhKT4xP2h0bWxfc2VsZWN0KCJmdW5jdGlvblskZl0iLCRkYSwhaXNzZXQoJEspfHxpbl9hcnJheSgkSywkZGEpfHxpc3NldCgkZGFbJEtdKT8kSzoiIiwiZnVuY3Rpb25DaGFuZ2UodGhpcyk7Iik6bmJzcChyZXNldCgkZGEpKSkuJzx0ZD4nOyRBZT0kby0+ZWRpdElucHV0KCRfR0VUWyJlZGl0Il0sJGUsJFJhLCRxKTtpZigkQWUhPSIiKXtlY2hvJEFlO31lbHNlaWYoJGVbInR5cGUiXT09InNldCIpe3ByZWdfbWF0Y2hfYWxsKCJ+JygoPzpbXiddfCcnKSopJ34iLCRlWyJsZW5ndGgiXSwkb2EpO2ZvcmVhY2goJG9hWzFdYXMkbD0+JGIpeyRiPXN0cmlwY3NsYXNoZXMoc3RyX3JlcGxhY2UoIicnIiwiJyIsJGIpKTskYWI9KGlzX2ludCgkcSk/KCRxPj4kbCkmMTppbl9hcnJheSgkYixleHBsb2RlKCIsIiwkcSksdHJ1ZSkpO2VjaG8iIDxsYWJlbD48aW5wdXQgdHlwZT0nY2hlY2tib3gnIG5hbWU9J2ZpZWxkc1skZl1bJGxdJyB2YWx1ZT0nIi4oMTw8JGwpLiInIi4oJGFiPycgY2hlY2tlZCc6JycpLiIkUWI+Ii5oKCRvLT5lZGl0VmFsKCRiLCRlKSkuJzwvbGFiZWw+Jzt9fWVsc2VpZihlcmVnKCdibG9ifGJ5dGVhfHJhd3xmaWxlJywkZVsidHlwZSJdKSYmaW5pX2Jvb2woImZpbGVfdXBsb2FkcyIpKXtlY2hvIjxpbnB1dCB0eXBlPSdmaWxlJyBuYW1lPSdmaWVsZHMtJGYnJFFiPiI7fWVsc2VpZihlcmVnKCd0ZXh0fGxvYicsJGVbInR5cGUiXSkpe2VjaG8iPHRleHRhcmVhICIuKCR2IT0ic3FsaXRlInx8ZXJlZygiXG4iLCRxKT8iY29scz0nNTAnIHJvd3M9JzEyJyI6ImNvbHM9JzMwJyByb3dzPScxJyBzdHlsZT0naGVpZ2h0OiAxLjJlbTsnIikuIiRSYT4iLmgoJHEpLic8L3RleHRhcmVhPic7fWVsc2V7JG5kPSghZXJlZygnaW50JywkZVsidHlwZSJdKSYmcHJlZ19tYXRjaCgnfl4oXFxkKykoLChcXGQrKSk/JH4nLCRlWyJsZW5ndGgiXSwkayk/KChlcmVnKCJiaW5hcnkiLCRlWyJ0eXBlIl0pPzI6MSkqJGtbMV0rKCRrWzNdPzE6MCkrKCRrWzJdJiYhJGVbInVuc2lnbmVkIl0/MTowKSk6KCRSWyRlWyJ0eXBlIl1dPyRSWyRlWyJ0eXBlIl1dKygkZVsidW5zaWduZWQiXT8wOjEpOjApKTtlY2hvIjxpbnB1dCB2YWx1ZT0nIi5oKCRxKS4iJyIuKCRuZD8iIG1heGxlbmd0aD0nJG5kJyI6IiIpLihlcmVnKCdjaGFyfGJpbmFyeScsJGVbInR5cGUiXSkmJiRuZD4yMD8iIHNpemU9JzQwJyI6IiIpLiIkUmE+Ijt9fX1mdW5jdGlvbgpwcm9jZXNzX2lucHV0KCRlKXtnbG9iYWwkbzskTj1icmFja2V0X2VzY2FwZSgkZVsiZmllbGQiXSk7JEs9JF9QT1NUWyJmdW5jdGlvbiJdWyROXTskcT0kX1BPU1RbImZpZWxkcyJdWyROXTtpZigkZVsidHlwZSJdPT0iZW51bSIpe2lmKCRxPT0tMSl7cmV0dXJuCmZhbHNlO31pZigkcT09IiIpe3JldHVybiJOVUxMIjt9cmV0dXJuKyRxO31pZigkZVsiYXV0b19pbmNyZW1lbnQiXSYmJHE9PSIiKXtyZXR1cm4KbnVsbDt9aWYoJEs9PSJvcmlnIil7cmV0dXJuCmZhbHNlO31pZigkSz09Ik5VTEwiKXtyZXR1cm4iTlVMTCI7fWlmKCRlWyJ0eXBlIl09PSJzZXQiKXtyZXR1cm4KYXJyYXlfc3VtKChhcnJheSkkcSk7fWlmKGVyZWcoJ2Jsb2J8Ynl0ZWF8cmF3fGZpbGUnLCRlWyJ0eXBlIl0pJiZpbmlfYm9vbCgiZmlsZV91cGxvYWRzIikpeyRJYT1nZXRfZmlsZSgiZmllbGRzLSROIik7aWYoIWlzX3N0cmluZygkSWEpKXtyZXR1cm4KZmFsc2U7fXJldHVybgpxKCRJYSk7fXJldHVybiRvLT5wcm9jZXNzSW5wdXQoJGUsJHEsJEspO31mdW5jdGlvbgpzZWFyY2hfdGFibGVzKCl7Z2xvYmFsJG8sJGc7JF9HRVRbIndoZXJlIl1bMF1bIm9wIl09IkxJS0UgJSUiOyRfR0VUWyJ3aGVyZSJdWzBdWyJ2YWwiXT0kX1BPU1RbInF1ZXJ5Il07JHRhPWZhbHNlO2ZvcmVhY2godGFibGVfc3RhdHVzKClhcyRoPT4kRCl7JGY9JG8tPnRhYmxlTmFtZSgkRCk7aWYoaXNzZXQoJERbIkVuZ2luZSJdKSYmJGYhPSIiJiYoISRfUE9TVFsidGFibGVzIl18fGluX2FycmF5KCRoLCRfUE9TVFsidGFibGVzIl0pKSl7JGk9JGctPnF1ZXJ5KCJTRUxFQ1QiLmxpbWl0KCIxIEZST00gIi50YWJsZSgkaCksIiBXSEVSRSAiLmltcGxvZGUoIiBBTkQgIiwkby0+c2VsZWN0U2VhcmNoUHJvY2VzcyhmaWVsZHMoJGgpLGFycmF5KCkpKSwxKSk7aWYoJGktPmZldGNoX3JvdygpKXtpZighJHRhKXtlY2hvIjx1bD5cbiI7JHRhPXRydWU7fWVjaG8iPGxpPjxhIGhyZWY9JyIuaChNRS4ic2VsZWN0PSIudXJsZW5jb2RlKCRoKS4iJndoZXJlWzBdW29wXT0iLnVybGVuY29kZSgkX0dFVFsid2hlcmUiXVswXVsib3AiXSkuIiZ3aGVyZVswXVt2YWxdPSIudXJsZW5jb2RlKCRfR0VUWyJ3aGVyZSJdWzBdWyJ2YWwiXSkpLiInPiRmPC9hPlxuIjt9fX1lY2hvKCR0YT8iPC91bD4iOiI8cCBjbGFzcz0nbWVzc2FnZSc+Ii5sYW5nKDYpKS4iXG4iO31mdW5jdGlvbgpkdW1wX2hlYWRlcnMoJFNjLCRfZD1mYWxzZSl7Z2xvYmFsJG87JGM9JG8tPmR1bXBIZWFkZXJzKCRTYywkX2QpOyROYT0kX1BPU1RbIm91dHB1dCJdO2lmKCROYSE9InRleHQiKXtoZWFkZXIoIkNvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPSIuKCRTYyE9IiI/ZnJpZW5kbHlfdXJsKCRTYyk6ImR1bXAiKS4iLiRjIi4oJE5hIT0iZmlsZSImJiFlcmVnKCdbXjAtOWEtel0nLCROYSk/Ii4kTmEiOiIiKSk7fXNlc3Npb25fd3JpdGVfY2xvc2UoKTtyZXR1cm4kYzt9ZnVuY3Rpb24KZHVtcF9jc3YoJGEpe2ZvcmVhY2goJGEKYXMkZD0+JGIpe2lmKHByZWdfbWF0Y2goIn5bXCJcbiw7XHRdfiIsJGIpfHwkYj09PSIiKXskYVskZF09JyInLnN0cl9yZXBsYWNlKCciJywnIiInLCRiKS4nIic7fX1lY2hvCmltcGxvZGUoKCRfUE9TVFsiZm9ybWF0Il09PSJjc3YiPyIsIjooJF9QT1NUWyJmb3JtYXQiXT09InRzdiI/Ilx0IjoiOyIpKSwkYSkuIlxyXG4iO31mdW5jdGlvbgphcHBseV9zcWxfZnVuY3Rpb24oJEssJEMpe3JldHVybigkSz8oJEs9PSJ1bml4ZXBvY2giPyJEQVRFVElNRSgkQywgJyRLJykiOigkSz09ImNvdW50IGRpc3RpbmN0Ij8iQ09VTlQoRElTVElOQ1QgIjpzdHJ0b3VwcGVyKCIkSygiKSkuIiRDKSIpOiRDKTt9ZnVuY3Rpb24KcGFzc3dvcmRfZmlsZSgpeyRSYz1pbmlfZ2V0KCJ1cGxvYWRfdG1wX2RpciIpO2lmKCEkUmMpe2lmKGZ1bmN0aW9uX2V4aXN0cygnc3lzX2dldF90ZW1wX2RpcicpKXskUmM9c3lzX2dldF90ZW1wX2RpcigpO31lbHNleyRqYT1AdGVtcG5hbSgiIiwiIik7aWYoISRqYSl7cmV0dXJuCmZhbHNlO30kUmM9ZGlybmFtZSgkamEpO3VubGluaygkamEpO319JGphPSIkUmMvYWRtaW5lci5rZXkiOyRjPUBmaWxlX2dldF9jb250ZW50cygkamEpO2lmKCRjKXtyZXR1cm4kYzt9JFBhPUBmb3BlbigkamEsInciKTtpZigkUGEpeyRjPW1kNSh1bmlxaWQobXRfcmFuZCgpLHRydWUpKTtmd3JpdGUoJFBhLCRjKTtmY2xvc2UoJFBhKTt9cmV0dXJuJGM7fWZ1bmN0aW9uCmlzX21haWwoJHhmKXskTmU9J1stYS16MC05ISMkJSZcJyorLz0/Xl9ge3x9fl0nOyR2Yz0nW2EtejAtOV0oWy1hLXowLTldezAsNjF9W2EtejAtOV0pJzskYmE9IiROZSsoXFwuJE5lKykqQCgkdmM/XFwuKSskdmMiO3JldHVybgpwcmVnX21hdGNoKCIoXiRiYSgsXFxzKiRiYSkqXCQpaSIsJHhmKTt9ZnVuY3Rpb24KaXNfdXJsKCRJKXskdmM9J1thLXowLTldKFstYS16MC05XXswLDYxfVthLXowLTldKSc7cmV0dXJuKHByZWdfbWF0Y2goIn5eKGh0dHBzPyk6Ly8oJHZjP1xcLikrJHZjKDpcXGQrKT8oLy4qKT8oXFw/LiopPygjLiopP1wkfmkiLCRJLCRrKT9zdHJ0b2xvd2VyKCRrWzFdKToiIik7fWZ1bmN0aW9uCnByaW50X2ZpZWxkc2V0KCRTLCRPZiwkS2Y9ZmFsc2Upe2VjaG8iPGZpZWxkc2V0PjxsZWdlbmQ+PGEgaHJlZj0nI2ZpZWxkc2V0LSRTJyBvbmNsaWNrPVwicmV0dXJuICF0b2dnbGUoJ2ZpZWxkc2V0LSRTJyk7XCI+JE9mPC9hPjwvbGVnZW5kPjxkaXYgaWQ9J2ZpZWxkc2V0LSRTJyIuKCRLZj8iIjoiIGNsYXNzPSdoaWRkZW4nIikuIj5cbiI7fWZ1bmN0aW9uCmJvbGQoJExmKXtyZXR1cm4oJExmPyIgY2xhc3M9J2FjdGl2ZSciOiIiKTt9Z2xvYmFsJG8sJGcsJG5hLCROYiwkR2IsJG4sJGRhLCRsYiwkQWMsJGpjLCR2LCR1YSwkTGIsJGZiLCRMYSwkTSwkWSwkUiwkb2IsJHRjO2lmKCFpc3NldCgkX1NFUlZFUlsiUkVRVUVTVF9VUkkiXSkpeyRfU0VSVkVSWyJSRVFVRVNUX1VSSSJdPSRfU0VSVkVSWyJPUklHX1BBVEhfSU5GTyJdLigkX1NFUlZFUlsiUVVFUllfU1RSSU5HIl0hPSIiPyI/JF9TRVJWRVJbUVVFUllfU1RSSU5HXSI6IiIpO30kQWM9JF9TRVJWRVJbIkhUVFBTIl0mJnN0cmNhc2VjbXAoJF9TRVJWRVJbIkhUVFBTIl0sIm9mZiIpO0Bpbmlfc2V0KCJzZXNzaW9uLnVzZV90cmFuc19zaWQiLGZhbHNlKTtpZighZGVmaW5lZCgiU0lEIikpe3Nlc3Npb25fbmFtZSgiYWRtaW5lcl9zaWQiKTskeGM9YXJyYXkoMCxwcmVnX3JlcGxhY2UoJ35cXD8uKn4nLCcnLCRfU0VSVkVSWyJSRVFVRVNUX1VSSSJdKSwiIiwkQWMpO2lmKHZlcnNpb25fY29tcGFyZShQSFBfVkVSU0lPTiwnNS4yLjAnKT49MCl7JHhjW109dHJ1ZTt9Y2FsbF91c2VyX2Z1bmNfYXJyYXkoJ3Nlc3Npb25fc2V0X2Nvb2tpZV9wYXJhbXMnLCR4Yyk7c2Vzc2lvbl9zdGFydCgpO31yZW1vdmVfc2xhc2hlcyhhcnJheSgmJF9HRVQsJiRfUE9TVCwmJF9DT09LSUUpKTtpZihmdW5jdGlvbl9leGlzdHMoInNldF9tYWdpY19xdW90ZXNfcnVudGltZSIpKXtzZXRfbWFnaWNfcXVvdGVzX3J1bnRpbWUoZmFsc2UpO31Ac2V0X3RpbWVfbGltaXQoMCk7QGluaV9zZXQoInplbmQuemUxX2NvbXBhdGliaWxpdHlfbW9kZSIsZmFsc2UpO0Bpbmlfc2V0KCJwcmVjaXNpb24iLDIwKTskTGI9YXJyYXkoJ2VuJz0+J0VuZ2xpc2gnLCdjcyc9PifEjGXFoXRpbmEnLCdzayc9PidTbG92ZW7EjWluYScsJ25sJz0+J05lZGVybGFuZHMnLCdlcyc9PidFc3Bhw7FvbCcsJ2RlJz0+J0RldXRzY2gnLCdmcic9PidGcmFuw6dhaXMnLCdpdCc9PidJdGFsaWFubycsJ2V0Jz0+J0Vlc3RpJywnaHUnPT4nTWFneWFyJywncGwnPT4nUG9sc2tpJywnY2EnPT4nQ2F0YWzDoCcsJ3B0Jz0+J1BvcnR1Z3XDqnMnLCdzbCc9PidTbG92ZW5za2knLCd0cic9PidUw7xya8OnZScsJ3J1Jz0+J9Cg0YPRgdGB0LrQuNC5INGP0LfRi9C6JywnemgnPT4n566A5L2T5Lit5paHJywnemgtdHcnPT4n57mB6auU5Lit5paHJywnamEnPT4n5pel5pys6KqeJywndGEnPT4n4K6k4oCM4K6u4K6/4K604K+NJywnYXInPT4n2KfZhNi52LHYqNmK2KknLCk7ZnVuY3Rpb24KZ2V0X2xhbmcoKXtnbG9iYWwkdWE7cmV0dXJuJHVhO31mdW5jdGlvbgpsYW5nKCROLCRsYz1udWxsKXtnbG9iYWwkdWEsJFk7JGtjPSRZWyROXTtpZihpc19hcnJheSgka2MpJiYka2MpeyR1Yz0oJGxjPT0xfHwoISRsYyYmJHVhPT0nZnInKT8wOigkdWE9PSdzbCcmJighJGxjfHwkbGM+Mik/MTowKSsoKCEkbGN8fCRsYz49NSkmJmVyZWcoJ2NzfHNrfHJ1fHNsfHBsJywkdWEpPzI6MSkpOyRrYz0ka2NbJHVjXTt9JEJlPWZ1bmNfZ2V0X2FyZ3MoKTthcnJheV9zaGlmdCgkQmUpO3JldHVybgp2c3ByaW50ZigoaXNzZXQoJGtjKT8ka2M6JE4pLCRCZSk7fWZ1bmN0aW9uCnN3aXRjaF9sYW5nKCl7Z2xvYmFsJHVhLCRMYjtlY2hvIjxmb3JtIGFjdGlvbj0nJz5cbjxkaXYgaWQ9J2xhbmcnPiI7aGlkZGVuX2ZpZWxkcygkX0dFVCxhcnJheSgnbGFuZycpKTtlY2hvCmxhbmcoNykuIjogIi5odG1sX3NlbGVjdCgibGFuZyIsJExiLCR1YSwidmFyIGxvYyA9IGxvY2F0aW9uLnNlYXJjaC5yZXBsYWNlKC9bPyZdbGFuZz1bXiZdKi8sICcnKTsgbG9jYXRpb24uc2VhcmNoID0gbG9jICsgKGxvYyA/ICcmJyA6ICcnKSArICdsYW5nPScgKyB0aGlzLnZhbHVlOyIpLCIgPGlucHV0IHR5cGU9J3N1Ym1pdCcgdmFsdWU9JyIubGFuZyg4KS4iJyBjbGFzcz0naGlkZGVuJz5cbiIsIjwvZGl2PlxuPC9mb3JtPlxuIjt9aWYoaXNzZXQoJF9HRVRbImxhbmciXSkpeyRfQ09PS0lFWyJhZG1pbmVyX2xhbmciXT0kX0dFVFsibGFuZyJdOyRfU0VTU0lPTlsibGFuZyJdPSRfR0VUWyJsYW5nIl07fSR1YT0iZW4iO2lmKGlzc2V0KCRMYlskX0NPT0tJRVsiYWRtaW5lcl9sYW5nIl1dKSl7Y29va2llKCJhZG1pbmVyX2xhbmciLCRfQ09PS0lFWyJhZG1pbmVyX2xhbmciXSk7JHVhPSRfQ09PS0lFWyJhZG1pbmVyX2xhbmciXTt9ZWxzZWlmKGlzc2V0KCRMYlskX1NFU1NJT05bImxhbmciXV0pKXskdWE9JF9TRVNTSU9OWyJsYW5nIl07fWVsc2V7JGNkPWFycmF5KCk7cHJlZ19tYXRjaF9hbGwoJ34oWy1hLXpdKykoO3E9KFswLTkuXSspKT9+JyxzdHJfcmVwbGFjZSgiXyIsIi0iLHN0cnRvbG93ZXIoJF9TRVJWRVJbIkhUVFBfQUNDRVBUX0xBTkdVQUdFIl0pKSwkb2EsUFJFR19TRVRfT1JERVIpO2ZvcmVhY2goJG9hCmFzJGspeyRjZFska1sxXV09KGlzc2V0KCRrWzNdKT8ka1szXToxKTt9YXJzb3J0KCRjZCk7Zm9yZWFjaCgkY2QKYXMkZD0+JGFhKXtpZihpc3NldCgkTGJbJGRdKSl7JHVhPSRkO2JyZWFrO30kZD1wcmVnX3JlcGxhY2UoJ34tLip+JywnJywkZCk7aWYoIWlzc2V0KCRjZFskZF0pJiZpc3NldCgkTGJbJGRdKSl7JHVhPSRkO2JyZWFrO319fXN3aXRjaCgkdWEpe2Nhc2UiZW4iOiRZPWFycmF5KCdBcmUgeW91IHN1cmU/JywnVW5hYmxlIHRvIHVwbG9hZCBhIGZpbGUuJywnTWF4aW11bSBhbGxvd2VkIGZpbGUgc2l6ZSBpcyAlc0IuJywnRmlsZSBkb2VzIG5vdCBleGlzdC4nLCdlbXB0eScsJ29yaWdpbmFsJywnTm8gdGFibGVzLicsJ0xhbmd1YWdlJywnVXNlJywnUGxlYXNlIHVzZSBvbmUgb2YgdGhlIGV4dGVuc2lvbnMgJXMuJywnRmlsZSBleGlzdHMuJywnVXNlciB0eXBlcycsJ051bWJlcnMnLCdEYXRlIGFuZCB0aW1lJywnU3RyaW5ncycsJ0JpbmFyeScsJ05ldHdvcmsnLCdHZW9tZXRyeScsJ0xpc3RzJywnU3lzdGVtJywnU2VydmVyJywnVXNlcm5hbWUnLCdQYXNzd29yZCcsJ0xvZ2luJywnUGVybWFuZW50IGxvZ2luJywnU2VsZWN0IGRhdGEnLCdTaG93IHN0cnVjdHVyZScsJ0FsdGVyIHZpZXcnLCdBbHRlciB0YWJsZScsJ05ldyBpdGVtJywnTGFzdCBwYWdlJywnRWRpdCcsYXJyYXkoJyVkIGJ5dGUnLCclZCBieXRlcycpLCdTZWxlY3QnLCdGdW5jdGlvbnMnLCdBZ2dyZWdhdGlvbicsJ1NlYXJjaCcsJ2FueXdoZXJlJywnU29ydCcsJ2Rlc2NlbmRpbmcnLCdMaW1pdCcsJ1RleHQgbGVuZ3RoJywnQWN0aW9uJywnU1FMIGNvbW1hbmQnLCdvcGVuJywnc2F2ZScsJ0FsdGVyIGRhdGFiYXNlJywnQWx0ZXIgc2NoZW1hJywnQ3JlYXRlIHNjaGVtYScsJ0R1bXAnLCdMb2dvdXQnLCdkYXRhYmFzZScsJ3NjaGVtYScsJ0NyZWF0ZSBuZXcgdGFibGUnLCdzZWxlY3QnLCdsdHInLCdSZXNlbmQgUE9TVCBkYXRhPycsJ0ludmFsaWQgQ1NSRiB0b2tlbi4gU2VuZCB0aGUgZm9ybSBhZ2Fpbi4nLCdMb2dvdXQgc3VjY2Vzc2Z1bC4nLCdTZXNzaW9uIHN1cHBvcnQgbXVzdCBiZSBlbmFibGVkLicsJ1Nlc3Npb24gZXhwaXJlZCwgcGxlYXNlIGxvZ2luIGFnYWluLicsJ0ludmFsaWQgY3JlZGVudGlhbHMuJywnTm8gZXh0ZW5zaW9uJywnTm9uZSBvZiB0aGUgc3VwcG9ydGVkIFBIUCBleHRlbnNpb25zICglcykgYXJlIGF2YWlsYWJsZS4nLCdUb28gYmlnIFBPU1QgZGF0YS4gUmVkdWNlIHRoZSBkYXRhIG9yIGluY3JlYXNlIHRoZSAlcyBjb25maWd1cmF0aW9uIGRpcmVjdGl2ZS4nLCdEYXRhYmFzZScsJ0ludmFsaWQgZGF0YWJhc2UuJywnRGF0YWJhc2VzIGhhdmUgYmVlbiBkcm9wcGVkLicsJ1NlbGVjdCBkYXRhYmFzZScsJ0NyZWF0ZSBuZXcgZGF0YWJhc2UnLCdQcml2aWxlZ2VzJywnUHJvY2VzcyBsaXN0JywnVmFyaWFibGVzJywnU3RhdHVzJywnJXMgdmVyc2lvbjogJXMgdGhyb3VnaCBQSFAgZXh0ZW5zaW9uICVzJywnTG9nZ2VkIGFzOiAlcycsJ0NvbGxhdGlvbicsJ1RhYmxlcycsJ0Ryb3AnLCdSZWZyZXNoJywnU2NoZW1hJywnSW52YWxpZCBzY2hlbWEuJywnTm8gcm93cy4nLCclLjNmIHMnLCdGb3JlaWduIGtleXMnLCdjb2xsYXRpb24nLCdPTiBERUxFVEUnLCdDb2x1bW4gbmFtZScsJ1BhcmFtZXRlciBuYW1lJywnVHlwZScsJ0xlbmd0aCcsJ09wdGlvbnMnLCdBdXRvIEluY3JlbWVudCcsJ0RlZmF1bHQgdmFsdWVzJywnQ29tbWVudCcsJ0FkZCBuZXh0JywnTW92ZSB1cCcsJ01vdmUgZG93bicsJ1JlbW92ZScsJ1ZpZXcnLCdUYWJsZScsJ0NvbHVtbicsJ0luZGV4ZXMnLCdBbHRlciBpbmRleGVzJywnU291cmNlJywnVGFyZ2V0JywnT04gVVBEQVRFJywnQWx0ZXInLCdBZGQgZm9yZWlnbiBrZXknLCdUcmlnZ2VycycsJ0FkZCB0cmlnZ2VyJywnRGF0YWJhc2Ugc2NoZW1hJywnUGVybWFuZW50IGxpbmsnLCdFeHBvcnQnLCdPdXRwdXQnLCdGb3JtYXQnLCdSb3V0aW5lcycsJ0V2ZW50cycsJ0RhdGEnLCdlZGl0JywnQ3JlYXRlIHVzZXInLGFycmF5KCdRdWVyeSBleGVjdXRlZCBPSywgJWQgcm93IGFmZmVjdGVkLicsJ1F1ZXJ5IGV4ZWN1dGVkIE9LLCAlZCByb3dzIGFmZmVjdGVkLicpLGFycmF5KCclZCByb3cnLCclZCByb3dzJyksJ0Vycm9yIGluIHF1ZXJ5JywnTm8gY29tbWFuZHMgdG8gZXhlY3V0ZS4nLGFycmF5KCclZCBxdWVyeSBleGVjdXRlZCBPSy4nLCclZCBxdWVyaWVzIGV4ZWN1dGVkIE9LLicpLCdGaWxlIHVwbG9hZCcsJ0ZpbGUgdXBsb2FkcyBhcmUgZGlzYWJsZWQuJywnRXhlY3V0ZScsJ1N0b3Agb24gZXJyb3InLCdTaG93IG9ubHkgZXJyb3JzJywnRnJvbSBzZXJ2ZXInLCdXZWJzZXJ2ZXIgZmlsZSAlcycsJ1J1biBmaWxlJywnSGlzdG9yeScsJ0NsZWFyJywnRWRpdCBhbGwnLCdJdGVtIGhhcyBiZWVuIGRlbGV0ZWQuJywnSXRlbSBoYXMgYmVlbiB1cGRhdGVkLicsJ0l0ZW0lcyBoYXMgYmVlbiBpbnNlcnRlZC4nLCdJbnNlcnQnLCdTYXZlJywnU2F2ZSBhbmQgY29udGludWUgZWRpdCcsJ1NhdmUgYW5kIGluc2VydCBuZXh0JywnRGVsZXRlJywnVGFibGUgaGFzIGJlZW4gZHJvcHBlZC4nLCdUYWJsZSBoYXMgYmVlbiBhbHRlcmVkLicsJ1RhYmxlIGhhcyBiZWVuIGNyZWF0ZWQuJywnQ3JlYXRlIHRhYmxlJywnTWF4aW11bSBudW1iZXIgb2YgYWxsb3dlZCBmaWVsZHMgZXhjZWVkZWQuIFBsZWFzZSBpbmNyZWFzZSAlcyBhbmQgJXMuJywnVGFibGUgbmFtZScsJ2VuZ2luZScsJ1BhcnRpdGlvbiBieScsJ1BhcnRpdGlvbnMnLCdQYXJ0aXRpb24gbmFtZScsJ1ZhbHVlcycsJ0luZGV4ZXMgaGF2ZSBiZWVuIGFsdGVyZWQuJywnSW5kZXggVHlwZScsJ0NvbHVtbiAobGVuZ3RoKScsJ0RhdGFiYXNlIGhhcyBiZWVuIGRyb3BwZWQuJywnRGF0YWJhc2UgaGFzIGJlZW4gcmVuYW1lZC4nLCdEYXRhYmFzZSBoYXMgYmVlbiBjcmVhdGVkLicsJ0RhdGFiYXNlIGhhcyBiZWVuIGFsdGVyZWQuJywnQ3JlYXRlIGRhdGFiYXNlJywnU2NoZW1hIGhhcyBiZWVuIGRyb3BwZWQuJywnU2NoZW1hIGhhcyBiZWVuIGNyZWF0ZWQuJywnU2NoZW1hIGhhcyBiZWVuIGFsdGVyZWQuJywnQ2FsbCcsYXJyYXkoJ1JvdXRpbmUgaGFzIGJlZW4gY2FsbGVkLCAlZCByb3cgYWZmZWN0ZWQuJywnUm91dGluZSBoYXMgYmVlbiBjYWxsZWQsICVkIHJvd3MgYWZmZWN0ZWQuJyksJ0ZvcmVpZ24ga2V5IGhhcyBiZWVuIGRyb3BwZWQuJywnRm9yZWlnbiBrZXkgaGFzIGJlZW4gYWx0ZXJlZC4nLCdGb3JlaWduIGtleSBoYXMgYmVlbiBjcmVhdGVkLicsJ1NvdXJjZSBhbmQgdGFyZ2V0IGNvbHVtbnMgbXVzdCBoYXZlIHRoZSBzYW1lIGRhdGEgdHlwZSwgdGhlcmUgbXVzdCBiZSBhbiBpbmRleCBvbiB0aGUgdGFyZ2V0IGNvbHVtbnMgYW5kIHJlZmVyZW5jZWQgZGF0YSBtdXN0IGV4aXN0LicsJ0ZvcmVpZ24ga2V5JywnVGFyZ2V0IHRhYmxlJywnQ2hhbmdlJywnQWRkIGNvbHVtbicsJ1ZpZXcgaGFzIGJlZW4gZHJvcHBlZC4nLCdWaWV3IGhhcyBiZWVuIGFsdGVyZWQuJywnVmlldyBoYXMgYmVlbiBjcmVhdGVkLicsJ0NyZWF0ZSB2aWV3JywnTmFtZScsJ0V2ZW50IGhhcyBiZWVuIGRyb3BwZWQuJywnRXZlbnQgaGFzIGJlZW4gYWx0ZXJlZC4nLCdFdmVudCBoYXMgYmVlbiBjcmVhdGVkLicsJ0FsdGVyIGV2ZW50JywnQ3JlYXRlIGV2ZW50JywnU3RhcnQnLCdFbmQnLCdFdmVyeScsJ09uIGNvbXBsZXRpb24gcHJlc2VydmUnLCdSb3V0aW5lIGhhcyBiZWVuIGRyb3BwZWQuJywnUm91dGluZSBoYXMgYmVlbiBhbHRlcmVkLicsJ1JvdXRpbmUgaGFzIGJlZW4gY3JlYXRlZC4nLCdBbHRlciBmdW5jdGlvbicsJ0FsdGVyIHByb2NlZHVyZScsJ0NyZWF0ZSBmdW5jdGlvbicsJ0NyZWF0ZSBwcm9jZWR1cmUnLCdSZXR1cm4gdHlwZScsJ1NlcXVlbmNlIGhhcyBiZWVuIGRyb3BwZWQuJywnU2VxdWVuY2UgaGFzIGJlZW4gY3JlYXRlZC4nLCdTZXF1ZW5jZSBoYXMgYmVlbiBhbHRlcmVkLicsJ0FsdGVyIHNlcXVlbmNlJywnQ3JlYXRlIHNlcXVlbmNlJywnVHlwZSBoYXMgYmVlbiBkcm9wcGVkLicsJ1R5cGUgaGFzIGJlZW4gY3JlYXRlZC4nLCdBbHRlciB0eXBlJywnQ3JlYXRlIHR5cGUnLCdUcmlnZ2VyIGhhcyBiZWVuIGRyb3BwZWQuJywnVHJpZ2dlciBoYXMgYmVlbiBhbHRlcmVkLicsJ1RyaWdnZXIgaGFzIGJlZW4gY3JlYXRlZC4nLCdBbHRlciB0cmlnZ2VyJywnQ3JlYXRlIHRyaWdnZXInLCdUaW1lJywnRXZlbnQnLCdVc2VyIGhhcyBiZWVuIGRyb3BwZWQuJywnVXNlciBoYXMgYmVlbiBhbHRlcmVkLicsJ1VzZXIgaGFzIGJlZW4gY3JlYXRlZC4nLCdIYXNoZWQnLCdSb3V0aW5lJywnR3JhbnQnLCdSZXZva2UnLGFycmF5KCclZCBwcm9jZXNzIGhhcyBiZWVuIGtpbGxlZC4nLCclZCBwcm9jZXNzZXMgaGF2ZSBiZWVuIGtpbGxlZC4nKSwnJWQgaW4gdG90YWwnLCdLaWxsJyxhcnJheSgnJWQgaXRlbSBoYXMgYmVlbiBhZmZlY3RlZC4nLCclZCBpdGVtcyBoYXZlIGJlZW4gYWZmZWN0ZWQuJyksJ0RvdWJsZSBjbGljayBvbiBhIHZhbHVlIHRvIG1vZGlmeSBpdC4nLGFycmF5KCclZCByb3cgaGFzIGJlZW4gaW1wb3J0ZWQuJywnJWQgcm93cyBoYXZlIGJlZW4gaW1wb3J0ZWQuJyksJ1VuYWJsZSB0byBzZWxlY3QgdGhlIHRhYmxlJywnUmVsYXRpb25zJywnVXNlIGVkaXQgbGluayB0byBtb2RpZnkgdGhpcyB2YWx1ZS4nLCdQYWdlJywnbGFzdCcsJ3dob2xlIHJlc3VsdCcsJ0Nsb25lJywnSW1wb3J0JywnLCcsJ1RhYmxlcyBoYXZlIGJlZW4gdHJ1bmNhdGVkLicsJ1RhYmxlcyBoYXZlIGJlZW4gbW92ZWQuJywnVGFibGVzIGhhdmUgYmVlbiBjb3BpZWQuJywnVGFibGVzIGhhdmUgYmVlbiBkcm9wcGVkLicsJ1RhYmxlcyBhbmQgdmlld3MnLCdTZWFyY2ggZGF0YSBpbiB0YWJsZXMnLCdFbmdpbmUnLCdEYXRhIExlbmd0aCcsJ0luZGV4IExlbmd0aCcsJ0RhdGEgRnJlZScsJ1Jvd3MnLCdBbmFseXplJywnT3B0aW1pemUnLCdDaGVjaycsJ1JlcGFpcicsJ1RydW5jYXRlJywnTW92ZSB0byBvdGhlciBkYXRhYmFzZScsJ01vdmUnLCdDb3B5JywnU2VxdWVuY2VzJywnU2NoZWR1bGUnLCdBdCBnaXZlbiB0aW1lJyxhcnJheSgnJWQgZS1tYWlsIGhhcyBiZWVuIHNlbnQuJywnJWQgZS1tYWlscyBoYXZlIGJlZW4gc2VudC4nKSk7YnJlYWs7Y2FzZSJjcyI6JFk9YXJyYXkoJ09wcmF2ZHU/JywnTmVwb2RhxZlpbG8gc2UgbmFocsOhdCBzb3Vib3IuJywnTWF4aW3DoWxuw60gcG92b2xlbsOhIHZlbGlrb3N0IHNvdWJvcnUgamUgJXNCLicsJ1NvdWJvciBuZWV4aXN0dWplLicsJ3Byw6F6ZG7DqScsJ3DFr3ZvZG7DrScsJ8W9w6FkbsOpIHRhYnVsa3kuJywnSmF6eWsnLCdWeWJyYXQnLCdQcm9zw61tIHBvdcW+aWp0ZSBqZWRudSB6IGtvbmNvdmVrICVzLicsJ1NvdWJvciBleGlzdHVqZS4nLCdVxb5pdmF0ZWxza8OpIHR5cHknLCfEjMOtc2xhJywnRGF0dW0gYSDEjWFzJywnxZhldMSbemNlJywnQmluw6FybsOtJywnU8OtxaUnLCdHZW9tZXRyaWUnLCdTZXpuYW15JywnU3lzdMOpbScsJ1NlcnZlcicsJ1XFvml2YXRlbCcsJ0hlc2xvJywnUMWZaWhsw6FzaXQgc2UnLCdUcnZhbMOpIHDFmWlobMOhxaFlbsOtJywnVnlwc2F0IGRhdGEnLCdab2JyYXppdCBzdHJ1a3R1cnUnLCdQb3ptxJtuaXQgcG9obGVkJywnUG96bcSbbml0IHRhYnVsa3UnLCdOb3bDoSBwb2xvxb5rYScsJ1Bvc2xlZG7DrSBzdHLDoW5rYScsJ1VwcmF2aXQnLGFycmF5KCclZCBiYWp0JywnJWQgYmFqdHknLCclZCBiYWp0xa8nKSwnVnlwc2F0JywnRnVua2NlJywnQWdyZWdhY2UnLCdWeWhsZWRhdCcsJ2tkZWtvbGl2JywnU2XFmWFkaXQnLCdzZXN0dXBuxJsnLCdMaW1pdCcsJ0TDqWxrYSB0ZXh0xa8nLCdBa2NlJywnU1FMIHDFmcOta2F6Jywnb3RldsWZw610JywndWxvxb5pdCcsJ1Bvem3Em25pdCBkYXRhYsOhemknLCdQb3ptxJtuaXQgc2Now6ltYScsJ1Z5dHZvxZlpdCBzY2jDqW1hJywnRXhwb3J0JywnT2RobMOhc2l0JywnZGF0YWLDoXplJywnc2Now6ltYScsJ1Z5dHZvxZlpdCBub3ZvdSB0YWJ1bGt1Jywndnlwc2F0JywnbHRyJywnWm5vdnUgb2Rlc2xhdCBQT1NUIGRhdGE/JywnTmVwbGF0bsO9IHRva2VuIENTUkYuIE9kZcWhbGV0ZSBmb3JtdWzDocWZIHpub3Z1LicsJ09kaGzDocWhZW7DrSBwcm9ixJtobG8gdiBwb8WZw6Fka3UuJywnU2Vzc2lvbiBwcm9txJtubsOpIG11c8OtIGLDvXQgcG92b2xlbsOpLicsJ1Nlc3Npb24gdnlwcsWhZWxhLCBwxZlpaGxhxaF0ZSBzZSBwcm9zw61tIHpub3Z1LicsJ05lcGxhdG7DqSBwxZlpaGxhxaFvdmFjw60gw7pkYWplLicsJ8W9w6FkbsOhIGV4dGVuemUnLCdOZW7DrSBkb3N0dXBuw6Egxb7DoWRuw6EgeiBwb2Rwb3JvdmFuw71jaCBQSFAgZXh0ZW56w60gKCVzKS4nLCdQxZnDrWxpxaEgdmVsa8OhIFBPU1QgZGF0YS4gWm1lbsWhZXRlIGRhdGEgbmVibyB6dnnFoXRlIGhvZG5vdHUga29uZmlndXJhxI1uw60gZGlyZWt0aXZ5ICVzLicsJ0RhdGFiw6F6ZScsJ05lc3Byw6F2bsOhIGRhdGFiw6F6ZS4nLCdEYXRhYsOhemUgYnlseSBvZHN0cmFuxJtueS4nLCdWeWJyYXQgZGF0YWLDoXppJywnVnl0dm/FmWl0IG5vdm91IGRhdGFiw6F6aScsJ09wcsOhdm7Em27DrScsJ1Nlem5hbSBwcm9jZXPFrycsJ1Byb23Em25uw6knLCdTdGF2JywnVmVyemUgJXM6ICVzIHDFmWVzIFBIUCBleHRlbnppICVzJywnUMWZaWhsw6HFoWVuIGpha286ICVzJywnUG9yb3Zuw6F2w6Fuw60nLCdUYWJ1bGt5JywnT2RzdHJhbml0JywnT2Jub3ZpdCcsJ1NjaMOpbWEnLCdOZXNwcsOhdm7DqSBzY2jDqW1hLicsJ8W9w6FkbsOpIMWZw6Fka3kuJywnJS4zZiBzJywnQ2l6w60ga2zDrcSNZScsJ3Bvcm92bsOhdsOhbsOtJywnUMWZaSBzbWF6w6Fuw60nLCdOw6F6ZXYgc2xvdXBjZScsJ07DoXpldiBwYXJhbWV0cnUnLCdUeXAnLCdEw6lsa2EnLCdWb2xieScsJ0F1dG8gSW5jcmVtZW50JywnVsO9Y2hvesOtIGhvZG5vdHknLCdLb21lbnTDocWZJywnUMWZaWRhdCBkYWzFocOtJywnUMWZZXN1bm91dCBuYWhvcnUnLCdQxZllc3Vub3V0IGRvbMWvJywnT2RlYnJhdCcsJ1BvaGxlZCcsJ1RhYnVsa2EnLCdTbG91cGVjJywnSW5kZXh5JywnUG96bcSbbml0IGluZGV4eScsJ1pkcm9qJywnQ8OtbCcsJ1DFmWkgem3Em27EmycsJ1ptxJtuaXQnLCdQxZlpZGF0IGNpesOtIGtsw63EjScsJ1RyaWdnZXJ5JywnUMWZaWRhdCB0cmlnZ2VyJywnU2Now6ltYSBkYXRhYsOhemUnLCdUcnZhbMO9IG9ka2F6JywnRXhwb3J0JywnVsO9c3R1cCcsJ0Zvcm3DoXQnLCdQcm9jZWR1cnkgYSBmdW5rY2UnLCdVZMOhbG9zdGknLCdEYXRhJywndXByYXZpdCcsJ1Z5dHZvxZlpdCB1xb5pdmF0ZWxlJyxhcnJheSgnUMWZw61rYXogcHJvYsSbaGwgdiBwb8WZw6Fka3UsIGJ5bCB6bcSbbsSbbiAlZCB6w6F6bmFtLicsJ1DFmcOta2F6IHByb2LEm2hsIHYgcG/FmcOhZGt1LCBieWx5IHptxJtuxJtueSAlZCB6w6F6bmFteS4nLCdQxZnDrWtheiBwcm9ixJtobCB2IHBvxZnDoWRrdSwgYnlsbyB6bcSbbsSbbm8gJWQgesOhem5hbcWvLicpLGFycmF5KCclZCDFmcOhZGVrJywnJWQgxZnDoWRreScsJyVkIMWZw6Fka8WvJyksJ0NoeWJhIHYgZG90YXp1Jywnxb3DoWRuw6kgcMWZw61rYXp5IGsgdnlrb27DoW7DrS4nLGFycmF5KCclZCBwxZnDrWtheiBwcm9ixJtobCB2IHBvxZnDoWRrdS4nLCclZCBwxZnDrWthenkgcHJvYsSbaGx5IHYgcG/FmcOhZGt1LicsJyVkIHDFmcOta2F6xa8gcHJvYsSbaGxvIHYgcG/FmcOhZGt1LicpLCdOYWhyw6Fuw60gc291Ym9ydScsJ05haHLDoXbDoW7DrSBzb3Vib3LFryBuZW7DrSBwb3ZvbGVuby4nLCdQcm92w6lzdCcsJ1phc3Rhdml0IHDFmWkgY2h5YsSbJywnWm9icmF6aXQgcG91emUgY2h5YnknLCdaZSBzZXJ2ZXJ1JywnU291Ym9yICVzIG5hIHdlYm92w6ltIHNlcnZlcnUnLCdTcHVzdGl0IHNvdWJvcicsJ0hpc3RvcmllJywnVnnEjWlzdGl0JywnVXByYXZpdCB2xaFlJywnUG9sb8W+a2EgYnlsYSBzbWF6w6FuYS4nLCdQb2xvxb5rYSBieWxhIGFrdHVhbGl6b3bDoW5hLicsJ1BvbG/FvmthJXMgYnlsYSB2bG/FvmVuYS4nLCdWbG/Fvml0JywnVWxvxb5pdCcsJ1Vsb8W+aXQgYSBwb2tyYcSNb3ZhdCB2IGVkaXRhY2knLCdVbG/Fvml0IGEgdmxvxb5pdCBkYWzFocOtJywnU21hemF0JywnVGFidWxrYSBieWxhIG9kc3RyYW7Em25hLicsJ1RhYnVsa2EgYnlsYSB6bcSbbsSbbmEuJywnVGFidWxrYSBieWxhIHZ5dHZvxZllbmEuJywnVnl0dm/FmWl0IHRhYnVsa3UnLCdCeWwgcMWZZWtyb8SNZW4gbWF4aW3DoWxuw60gcG92b2xlbsO9IHBvxI1ldCBwb2zDrS4gWnZ5xaF0ZSBwcm9zw61tICVzIGEgJXMuJywnTsOhemV2IHRhYnVsa3knLCfDumxvxb5pxaF0xJsnLCdSb3pkxJtsaXQgcG9kbGUnLCdPZGTDrWx5JywnTsOhemV2IG9kZMOtbHUnLCdIb2Rub3R5JywnSW5kZXh5IGJ5bHkgem3Em27Em255LicsJ1R5cCBpbmRleHUnLCdTbG91cGVjIChkw6lsa2EpJywnRGF0YWLDoXplIGJ5bGEgb2RzdHJhbsSbbmEuJywnRGF0YWLDoXplIGJ5bGEgcMWZZWptZW5vdsOhbmEuJywnRGF0YWLDoXplIGJ5bGEgdnl0dm/FmWVuYS4nLCdEYXRhYsOhemUgYnlsYSB6bcSbbsSbbmEuJywnVnl0dm/FmWl0IGRhdGFiw6F6aScsJ1NjaMOpbWEgYnlsbyBvZHN0cmFuxJtuby4nLCdTY2jDqW1hIGJ5bG8gdnl0dm/FmWVuby4nLCdTY2jDqW1hIGJ5bG8gem3Em27Em25vLicsJ1phdm9sYXQnLGFycmF5KCdQcm9jZWR1cmEgYnlsYSB6YXZvbMOhbmEsIGJ5bCB6bcSbbsSbbiAlZCB6w6F6bmFtLicsJ1Byb2NlZHVyYSBieWxhIHphdm9sw6FuYSwgYnlseSB6bcSbbsSbbnkgJWQgesOhem5hbXkuJywnUHJvY2VkdXJhIGJ5bGEgemF2b2zDoW5hLCBieWxvIHptxJtuxJtubyAlZCB6w6F6bmFtxa8uJyksJ0NpesOtIGtsw63EjSBieWwgb2RzdHJhbsSbbi4nLCdDaXrDrSBrbMOtxI0gYnlsIHptxJtuxJtuLicsJ0NpesOtIGtsw63EjSBieWwgdnl0dm/FmWVuLicsJ1pkcm9qb3bDqSBhIGPDrWxvdsOpIHNsb3VwY2UgbXVzw60gbcOtdCBzdGVqbsO9IGRhdG92w70gdHlwLCBuYWQgY8OtbG92w71taSBzbG91cGNpIG11c8OtIGLDvXQgZGVmaW5vdsOhbiBpbmRleCBhIG9ka2F6b3ZhbsOhIGRhdGEgbXVzw60gZXhpc3RvdmF0LicsJ0NpesOtIGtsw63EjScsJ0PDrWxvdsOhIHRhYnVsa2EnLCdabcSbbml0JywnUMWZaWRhdCBzbG91cGVjJywnUG9obGVkIGJ5bCBvZHN0cmFuxJtuLicsJ1BvaGxlZCBieWwgem3Em27Em24uJywnUG9obGVkIGJ5bCB2eXR2b8WZZW4uJywnVnl0dm/FmWl0IHBvaGxlZCcsJ07DoXpldicsJ1Vkw6Fsb3N0IGJ5bGEgb2RzdHJhbsSbbmEuJywnVWTDoWxvc3QgYnlsYSB6bcSbbsSbbmEuJywnVWTDoWxvc3QgYnlsYSB2eXR2b8WZZW5hLicsJ1Bvem3Em25pdCB1ZMOhbG9zdCcsJ1Z5dHZvxZlpdCB1ZMOhbG9zdCcsJ1phxI3DoXRlaycsJ0tvbmVjJywnS2HFvmTDvWNoJywnUG8gZG9rb27EjWVuw60gemFjaG92YXQnLCdQcm9jZWR1cmEgYnlsYSBvZHN0cmFuxJtuYS4nLCdQcm9jZWR1cmEgYnlsYSB6bcSbbsSbbmEuJywnUHJvY2VkdXJhIGJ5bGEgdnl0dm/FmWVuYS4nLCdabcSbbml0IGZ1bmtjaScsJ1ptxJtuaXQgcHJvY2VkdXJ1JywnVnl0dm/FmWl0IGZ1bmtjaScsJ1Z5dHZvxZlpdCBwcm9jZWR1cnUnLCdOw6F2cmF0b3bDvSB0eXAnLCdTZWt2ZW5jZSBieWxhIG9kc3RyYW7Em25hLicsJ1Nla3ZlbmNlIGJ5bGEgdnl0dm/FmWVuYS4nLCdTZWt2ZW5jZSBieWxhIHptxJtuxJtuYS4nLCdQb3ptxJtuaXQgc2VrdmVuY2knLCdWeXR2b8WZaXQgc2VrdmVuY2knLCdUeXAgYnlsIG9kc3RyYW7Em24uJywnVHlwIGJ5bCB2eXR2b8WZZW4uJywnUG96bcSbbml0IHR5cCcsJ1Z5dHZvxZlpdCB0eXAnLCdUcmlnZ2VyIGJ5bCBvZHN0cmFuxJtuLicsJ1RyaWdnZXIgYnlsIHptxJtuxJtuLicsJ1RyaWdnZXIgYnlsIHZ5dHZvxZllbi4nLCdabcSbbml0IHRyaWdnZXInLCdWeXR2b8WZaXQgdHJpZ2dlcicsJ8SMYXMnLCdVZMOhbG9zdCcsJ1XFvml2YXRlbCBieWwgb2RzdHJhbsSbbi4nLCdVxb5pdmF0ZWwgYnlsIHptxJtuxJtuLicsJ1XFvml2YXRlbCBieWwgdnl0dm/FmWVuLicsJ1phaGHFoW92YW7DqScsJ1Byb2NlZHVyYScsJ1Bvdm9saXQnLCdaYWvDoXphdCcsYXJyYXkoJ0J5bCB1a29uxI1lbiAlZCBwcm9jZXMuJywnQnlseSB1a29uxI1lbnkgJWQgcHJvY2VzeS4nLCdCeWxvIHVrb27EjWVubyAlZCBwcm9jZXPFry4nKSwnJWQgY2Vsa2VtJywnVWtvbsSNaXQnLGFycmF5KCdCeWwgb3ZsaXZuxJtuICVkIHrDoXpuYW0uJywnQnlseSBvdmxpdm7Em255ICVkIHrDoXpuYW15LicsJ0J5bG8gb3ZsaXZuxJtubyAlZCB6w6F6bmFtxa8uJyksJ0R2b2prbGlrbsSbdGUgbmEgcG9sw63EjWtvLCBrdGVyw6kgY2hjZXRlIHptxJtuaXQuJyxhcnJheSgnQnlsIGltcG9ydG92w6FuICVkIHrDoXpuYW0uJywnQnlseSBpbXBvcnRvdsOhbnkgJWQgesOhem5hbXkuJywnQnlsbyBpbXBvcnRvdsOhbm8gJWQgesOhem5hbcWvLicpLCdOZXBvZGHFmWlsbyBzZSB2eXBzYXQgdGFidWxrdScsJ1Z6dGFoeScsJ0tlIHptxJtuxJsgdMOpdG8gaG9kbm90eSBwb3XFvmlqdGUgb2RrYXogdXByYXZpdC4nLCdTdHLDoW5rYScsJ3Bvc2xlZG7DrScsJ2NlbMO9IHbDvXNsZWRlaycsJ0tsb25vdmF0JywnSW1wb3J0JywnICcsJ1RhYnVsa3kgYnlseSB2eXByw6F6ZG7Em255LicsJ1RhYnVsa3kgYnlseSBwxZllc3VudXR5LicsJ1RhYnVsa3kgYnlseSB6a29ww61yb3bDoW55LicsJ1RhYnVsa3kgYnlseSBvZHN0cmFuxJtueS4nLCdUYWJ1bGt5IGEgcG9obGVkeScsJ1Z5aGxlZGF0IGRhdGEgdiB0YWJ1bGvDoWNoJywnw5psb8W+acWhdMSbJywnVmVsaWtvc3QgZGF0JywnVmVsaWtvc3QgaW5kZXjFrycsJ1ZvbG7DqSBtw61zdG8nLCfFmMOhZGvFrycsJ0FuYWx5em92YXQnLCdPcHRpbWFsaXpvdmF0JywnWmtvbnRyb2xvdmF0JywnT3ByYXZpdCcsJ1Z5cHLDoXpkbml0JywnUMWZZXN1bm91dCBkbyBqaW7DqSBkYXRhYsOhemUnLCdQxZllc3Vub3V0JywnWmtvcMOtcm92YXQnLCdTZWt2ZW5jZScsJ1Bsw6FuJywnViBkYW7DvSDEjWFzJywndGXEjycpO2JyZWFrO2Nhc2Uic2siOiRZPWFycmF5KCdOYW96YWo/JywnU8O6Ym9yIHNhIG5lcG9kYXJpbG8gbmFocmHFpS4nLCdNYXhpbcOhbG5hIHBvdm9sZW7DoSB2ZcS+a29zxaUgc8O6Ym9ydSBqZSAlc0IuJywnU8O6Ym9yIG5lZXhpc3R1amUuJywncHLDoXpkbmUnLCdvcmlnaW7DoWwnLCfFvWlhZG5lIHRhYnXEvmt5LicsJ0phenlrJywnVnlicmHFpScsJ1Byb3PDrW0gdnliZXJ0ZSBqZWRudSB6IGtvbmNvdmllayAlcy4nLCdTw7pib3IgZXhpc3R1amUuJywnVcW+w612YXRlxL5za8OpIHR5cHknLCfEjMOtc2xhJywnRMOhdHVtIGEgxI1hcycsJ1JlxaVhemNlJywnQmluw6FybmUnLCdTaWXFpScsJ0dlb21ldHJpYScsJ1pvem5hbXknLCdTeXN0w6ltJywnU2VydmVyJywnUG91xb7DrXZhdGXEvicsJ0hlc2xvJywnUHJpaGzDoXNpxaUgc2EnLCdUcnZhbMOpIHByaWhsw6FzZW5pZScsJ1Z5cMOtc2HFpSBkw6F0YScsJ1pvYnJhemnFpSDFoXRydWt0w7pydScsJ1ptZW5pxaUgcG9oxL5hZCcsJ1ptZW5pxaUgdGFidcS+a3UnLCdOb3bDoSBwb2xvxb5rYScsJ1Bvc2xlZG7DoSBzdHLDoW5rYScsJ1VwcmF2acWlJyxhcnJheSgnJWQgYmFqdCcsJyVkIGJhanR5JywnJWQgYmFqdG92JyksJ1Z5cMOtc2HFpScsJ0Z1bmtjaWUnLCdBZ3JlZ8OhY2lhJywnVnloxL5hZGHFpScsJ2tkZWtvxL52ZWsnLCdab3RyaWVkacWlJywnem9zdHVwbmUnLCdMaW1pdCcsJ0TEusW+a2EgdGV4dG92JywnQWtjaWEnLCdTUUwgcHLDrWtheicsJ290dm9yacWlJywndWxvxb5pxaUnLCdabWVuacWlIGRhdGFiw6F6dScsJ1Bvem1lbmnFpSBzY2jDqW11JywnVnl0dm9yacWlIHNjaMOpbXUnLCdFeHBvcnQnLCdPZGhsw6FzacWlJywnZGF0YWLDoXphJywnc2Now6ltYScsJ1Z5dHZvcmnFpSBub3bDuiB0YWJ1xL5rdScsJ3Z5cMOtc2HFpScsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/JywnTmVwbGF0bsO9IHRva2VuIENTUkYuIE9kb8WhbGl0ZSBmb3JtdWzDoXIgem5vdmEuJywnT2RobMOhc2VuaWUgcHJlYmVobG8gdiBwb3JpYWRrdS4nLCdTZXNzaW9uIHByZW1lbm7DqSBtdXNpYSBiecWlIHBvdm9sZW7DqS4nLCdTZXNzaW9uIHZ5cHLFoWFsYSwgcHJpaGzDoXN0ZSBzYSBwcm9zw61tIHpub3ZhLicsJ05lcGxhdG7DqSBwcmlobGFzb3ZhY2llIMO6ZGFqZS4nLCfFvWlhZG5lIHJvesWhw61yZW5pZScsJ05pZSBqZSBkb3N0dXBuw6kgxb5pYWRuZSB6IHBvZHBvcm92YW7DvWNoIHJvesWhw61yZW7DrSAoJXMpLicsJ1Byw61sacWhIHZlxL5rw6kgUE9TVCBkw6F0YS4gWm1lbsWhaXRlIGTDoXRhIGFsZWJvIHp2w73FoXRlIGhvZG5vdHUga29uZmlndXJhxI1laiBkaXJla3TDrXZ5ICVzLicsJ0RhdGFiw6F6YScsJ05lc3Byw6F2bmEgZGF0YWLDoXphLicsJ0RhdGFiw6F6eSBib2xpIG9kc3Ryw6FuZW7DqS4nLCdWeWJyYcWlIGRhdGFiw6F6dScsJ1Z5dHZvcmnFpSBub3bDuiBkYXRhYsOhenUnLCdPcHLDoXZuZW5pYScsJ1pvem5hbSBwcm9jZXNvdicsJ1ByZW1lbm7DqScsJ1N0YXYnLCdWZXJ6aWEgJXM6ICVzIGNleiBQSFAgcm96xaHDrXJlbmllICVzJywnUHJpaGzDoXNlbsO9IGFrbzogJXMnLCdQb3Jvdm7DoXZhbmllJywnVGFidcS+a3knLCdPZHN0csOhbmnFpScsJ09ibm92acWlJywnU2Now6ltYScsJ05lcGxhdG7DqSBzY2jDqW1hLicsJ8W9aWFkbmUgcmlhZGt5LicsJyUuM2YgcycsJ0N1ZHppZSBrxL7DusSNZScsJ3Bvcm92bsOhdmFuaWUnLCdPTiBERUxFVEUnLCdOw6F6b3Ygc3TEunBjYScsJ07DoXpvdiBwYXJhbWV0cmEnLCdUeXAnLCdExLrFvmthJywnVm/EvmJ5JywnQXV0byBJbmNyZW1lbnQnLCdWw71jaG9kemllIGhvZG5vdHknLCdLb21lbnTDoXInLCdQcmlkYcWlIMSPYWzFocOtJywnUHJlc3Vuw7rFpSBob3JlJywnUHJlc3Vuw7rFpSBkb2x1JywnT2RvYnJhxaUnLCdQb2jEvmFkJywnVGFidcS+a2EnLCdTdMS6cGVjJywnSW5kZXh5JywnWm1lbmnFpSBpbmRleHknLCdaZHJvaicsJ0NpZcS+JywnT04gVVBEQVRFJywnWm1lbmnFpScsJ1ByaWRhxaUgY3VkesOtIGvEvsO6xI0nLCdUcmlnZ2VyeScsJ1ByaWRhxaUgdHJpZ2dlcicsJ1NjaMOpbWEgZGF0YWLDoXp5JywnUGVybWFuZW50IGxpbmsnLCdFeHBvcnQnLCdWw71zdHVwJywnRm9ybcOhdCcsJ1Byb2NlZMO6cnknLCdVZGFsb3N0aScsJ0TDoXRhJywndXByYXZpxaUnLCdWeXR2b3JpxaUgcG91xb7DrXZhdGXEvmEnLGFycmF5KCdQcsOta2F6IHByZWJlaG9sIHYgcG9yaWFka3UsIGJvbCB6bWVuZW7DvSAlZCB6w6F6bmFtLicsJ1Byw61rYXogcHJlYmVob2wgdiBwb3JpYWRrdSBib2xpIHptZW5lbsOpICVkIHrDoXpuYW15LicsJ1Byw61rYXogcHJlYmVob2wgdiBwb3JpYWRrdSBib2xvIHptZW5lbsO9Y2ggJWQgesOhem5hbW92LicpLGFycmF5KCclZCByaWFkb2snLCclZCByaWFka3knLCclZCByaWFka292JyksJ0NoeWJhIHYgZG90YXplJywnxb1pYWRuZSBwcsOta2F6eSBuYSB2eWtvbmFuaWUuJyxhcnJheSgnQm9sIHZ5a29uYW7DvSAlZCBkb3Rhei4nLCdCb2xpIHZ5a29uYW7DqSAlZCBkb3RhenkuJywnQm9sbyB2eWtvbmFuw71jaCAlZCBkb3Rhem92LicpLCdOYWhyYW5pZSBzw7pib3J1JywnTmFocsOhdsOhbmllIHPDumJvcm92IG5pZSBqZSBwb3ZvbGVuw6kuJywnVnlrb25hxaUnLCdaYXN0YXZpxaUgcHJpIGNoeWJlJywnWm9icmF6acWlIGliYSBjaHlieScsJ1pvIHNlcnZlcnUnLCdTw7pib3IgJXMgbmEgd2Vib3ZvbSBzZXJ2ZXJpJywnU3B1c3RpxaUgc8O6Ym9yJywnSGlzdMOzcmlhJywnVnnEjWlzdGnFpScsJ0VkaXQgYWxsJywnUG9sb8W+a2EgYm9sYSB2eW1hemFuw6EuJywnUG9sb8W+a2EgYm9sYSBha3R1YWxpem92YW7DoS4nLCdQb2xvxb5rYSVzIGJvbGEgdmxvxb5lbsOhLicsJ1Zsb8W+acWlJywnVWxvxb5pxaUnLCdVbG/FvmnFpSBhIHBva3JhxI1vdmHFpSB2IMO6cHJhdsOhY2gnLCdVbG/FvmnFpSBhIHZsb8W+acWlIMSPYWzFocOtJywnWm1hemHFpScsJ1RhYnXEvmthIGJvbGEgb2RzdHLDoW5lbsOhLicsJ1RhYnXEvmthIGJvbGEgem1lbmVuw6EuJywnVGFidcS+a2EgYm9sYSB2eXR2b3JlbsOhLicsJ1Z5dHZvcmnFpSB0YWJ1xL5rdScsJ0JvbCBwcmVrcm/EjWVuw70gbWF4aW3DoWxueSBwb8SNZXQgcG92b2xlbsO9Y2ggcG9sw60uIFp2w73FoXRlIHByb3PDrW0gJXMgYSAlcy4nLCdOw6F6b3YgdGFidcS+a3knLCfDumxvxb5pc2tvJywnUm96ZGVsacWlIHBvZMS+YScsJ09kZGllbHknLCdOw6F6b3Ygb2RkaWVsdScsJ0hvZG5vdHknLCdJbmRleHkgYm9saSB6bWVuZW7DqS4nLCdUeXAgaW5kZXh1JywnU3TEunBlYyAoZMS6xb5rYSknLCdEYXRhYsOhemEgYm9sYSBvZHN0csOhbmVuw6EuJywnRGF0YWLDoXphIGJvbGEgcHJlbWVub3ZhbsOhLicsJ0RhdGFiw6F6YSBib2xhIHZ5dHZvcmVuw6EuJywnRGF0YWLDoXphIGJvbGEgem1lbmVuw6EuJywnVnl0dm9yacWlIGRhdGFiw6F6dScsJ1NjaMOpbWEgYm9sYSBvZHN0csOhbmVuw6EuJywnU2Now6ltYSBib2xhIHZ5dHZvcmVuw6EuJywnU2Now6ltYSBib2xhIHptZW5lbsOhLicsJ1phdm9sYcWlJyxhcnJheSgnUHJvY2Vkw7pyYSBib2xhIHphdm9sYW7DoSwgYm9sIHptZW5lbsO9ICVkIHrDoXpuYW0uJywnUHJvY2Vkw7pyYSBib2xhIHphdm9sYW7DoSwgYm9saSB6bWVuZW7DqSAlZCB6w6F6bmFteS4nLCdQcm9jZWTDunJhIGJvbGEgemF2b2xhbsOhLCBib2xvIHptZW5lbsO9Y2ggJWQgesOhem5hbW92LicpLCdDdWR6w60ga8S+w7rEjSBib2wgb2RzdHLDoW5lbsO9LicsJ0N1ZHrDrSBrxL7DusSNIGJvbCB6bWVuZW7DvS4nLCdDdWR6w60ga8S+w7rEjSBib2wgdnl0dm9yZW7DvS4nLCdaZHJvam92w6kgYSBjaWXEvm92w6kgc3TEunBjZSBtdXNpYSBtYcWlIHJvdm5ha8O9IGRhdG92w70gdHlwLCBuYWQgY2llxL5vdsO9bWkgc3TEunBjYW1pIG11c8OtIGJ5xaUgZGVmaW5vdmFuw70gaW5kZXggYSBvZGthem92YW7DqSBkw6F0YSBtdXNpYSBleGlzdG92YcWlLicsJ0N1ZHrDrSBrxL7DusSNJywnQ2llxL5vdsOhIHRhYnXEvmthJywnWm1lbmnFpScsJ1ByaWRhxaUgc3TEunBlYycsJ1BvaMS+YWQgYm9sIG9kc3Ryw6FuZW7DvS4nLCdQb2jEvmFkIGJvbCB6bWVuZW7DvS4nLCdQb2jEvmFkIGJvbCB2eXR2b3JlbsO9LicsJ1Z5dHZvcmnFpSBwb2jEvmFkJywnTsOhem92JywnVWRhbG9zxaUgYm9sYSBvZHN0csOhbmVuw6EuJywnVWRhbG9zxaUgYm9sYSB6bWVuZW7DoS4nLCdVZGFsb3PFpSBib2xhIHZ5dHZvcmVuw6EuJywnVXByYXZpxaUgdWRhbG9zxaUnLCdWeXR2b3JpxaUgdWRhbG9zxaUnLCdaYcSNaWF0b2snLCdLb25pZWMnLCdLYcW+ZMO9Y2gnLCdQbyBkb2tvbsSNZW7DrSB6YWNob3ZhdCcsJ1Byb2NlZMO6cmEgYm9sYSBvZHN0csOhbmVuw6EuJywnUHJvY2Vkw7pyYSBib2xhIHptZW5lbsOhLicsJ1Byb2NlZMO6cmEgYm9sYSB2eXR2b3JlbsOhLicsJ1ptZW5pxaUgZnVua2NpdScsJ1ptZW5pxaUgcHJvY2Vkw7pydScsJ1Z5dHZvcmnFpSBmdW5rY2l1JywnVnl0dm9yacWlIHByb2NlZMO6cnUnLCdOw6F2cmF0b3bDvSB0eXAnLCdTZWt2ZW5jaWEgYm9sYSBvZHN0csOhbmVuw6EuJywnU2VrdmVuY2lhIGJvbGEgdnl0dm9yZW7DoS4nLCdTZWt2ZW5jaWEgYm9sYSB6bWVuZW7DoS4nLCdQb3ptZW5pxaUgc2VrdmVuY2l1JywnVnl0dm9yacWlIHNla3ZlbmNpdScsJ1R5cCBib2wgb2RzdHLDoW5lbsO9LicsJ1R5cCBib2wgdnl0dm9yZW7DvS4nLCdQb3ptZW5pxaUgdHlwJywnVnl0dm9yacWlIHR5cCcsJ1RyaWdnZXIgYm9sIG9kc3Ryw6FuZW7DvS4nLCdUcmlnZ2VyIGJvbCB6bWVuZW7DvS4nLCdUcmlnZ2VyIGJvbCB2eXR2b3JlbsO9LicsJ1ptZW5pxaUgdHJpZ2dlcicsJ1Z5dHZvcmnFpSB0cmlnZ2VyJywnxIxhcycsJ1VkYWxvc8WlJywnUG91xb7DrXZhdGXEviBib2wgb2RzdHLDoW5lbsO9LicsJ1BvdcW+w612YXRlxL4gYm9sIHptZW5lbsO9LicsJ1BvdcW+w612YXRlxL4gYm9sIHZ5dHZvcmVuw70uJywnWmFoYcWhb3ZhbsOpJywnUHJvY2Vkw7pyYScsJ1Bvdm9sacWlJywnWmFrw6F6YcWlJyxhcnJheSgnQm9sIHVrb27EjWVuw70gJWQgcHJvY2VzLicsJ0JvbGkgdWtvbsSNZW7DqSAlZCBwcm9jZXN5LicsJ0JvbG8gdWtvbsSNZW7DvWNoICVkIHByb2Nlc292LicpLCclZCBjZWxrb20nLCdVa29uxI1pxaUnLCclZCBwb2xvxb5pZWsgYm9sbyBvdnBseXZuZW7DvWNoLicsJ0R2b2prbGlrbml0ZSBuYSBwb2zDrcSNa28sIGt0b3LDqSBjaGNldGUgem1lbmnFpS4nLGFycmF5KCdCb2wgaW1wb3J0b3ZhbsO9ICVkIHrDoXpuYW0uJywnQm9saSBpbXBvcnRvdmFuw6kgJWQgesOhem5hbXkuJywnQm9sbyBpbXBvcnRvdmFuw71jaCAlZCB6w6F6bmFtb3YuJyksJ1RhYnXEvmt1IHNhIG5lcG9kYXJpbG8gdnlww61zYcWlJywnVnrFpWFoeScsJ1ByZSB6bWVudSB0ZWp0byBob2Rub3R5IHBvdcW+aXRlIG9ka2F6IHVwcmF2acWlLicsJ1N0csOhbmthJywncG9zbGVkbsO9JywnY2Vsw70gdsO9c2xlZG9rJywnS2xvbm92YcWlJywnSW1wb3J0JywnICcsJ1RhYnXEvmthIGJvbGEgdnlwcsOhemRuZW7DoS4nLCdUYWJ1xL5rYSBib2xhIHByZXN1bnV0w6EuJywnVGFibGVzIGhhdmUgYmVlbiBjb3BpZWQuJywnVGFidcS+a2EgYm9sYSBvZHN0csOhbmVuw6EuJywnVGFidcS+a3kgYSBwb2jEvmFkeScsJ1Z5aMS+YWRhxaUgZMOhdGEgdiB0YWJ1xL5rw6FjaCcsJ1R5cCcsJ1ZlxL5rb3PFpSBkw6F0JywnVmXEvmtvc8WlIGluZGV4dScsJ1ZvxL5uw6kgbWllc3RvJywnUmlhZGt5JywnQW5hbHl6b3ZhxaUnLCdPcHRpbWFsaXpvdmHFpScsJ1Nrb250cm9sb3ZhxaUnLCdPcHJhdmnFpScsJ1Z5cHLDoXpkbmnFpScsJ1ByZXN1bsO6xaUgZG8gaW5laiBkYXRhYsOhenknLCdQcmVzdW7DusWlJywnQ29weScsJ1Nla3ZlbmNpYScsJ1Bsw6FuJywnViBzdGFub3ZlbsO9IMSNYXMnLCd0ZXJheicpO2JyZWFrO2Nhc2UibmwiOiRZPWFycmF5KCdXZWV0IHUgaGV0IHpla2VyPycsJ09ubW9nZWxpamsgYmVzdGFuZCB0ZSB1cGxvYWRlbi4nLCdNYXhpbXVtIHRvZWdlbGF0ZW4gYmVzdGFuZHNncm9vdHRlIGlzICVzQi4nLCdCZXN0YW5kIG5pZXQgZ2V2b25kZW4uJywnbGVlZycsJ29yaWdpbmVlbCcsJ0dlZW4gdGFiZWxsZW4uJywnVGFhbCcsJ0dlYnJ1aWsnLCdHZWJydWlrIDEgdmFuIHZvbGdlbmRlIGV4dGVuc2llczogJXMuJywnQmVzdGFuZCBiZXN0YWF0IHJlZWRzLicsJ0dlYnJ1aWtlcnNnZWRlZmluacOrZXJkZSB0eXBlcycsJ0dldGFsbGVuJywnRGF0dW0gZW4gdGlqZCcsJ1Rla3N0JywnQmluYWlyZSBnZWdldmVucycsJ05ldHdlcmsnLCdHZW9tZXRyaWUnLCdMaWpzdGVuJywnRGF0YWJhc2VzeXN0ZWVtJywnU2VydmVyJywnR2VicnVpa2Vyc25hYW0nLCdXYWNodHdvb3JkJywnSW5sb2dnZW4nLCdCbGlqZiBhYW5nZW1lbGQnLCdHZWdldmVucyBzZWxlY3RlcmVuJywnVG9vbiBzdHJ1Y3R1dXInLCdWaWV3IGFhbnBhc3NlbicsJ1RhYmVsIGFhbnBhc3NlbicsJ05pZXV3IGl0ZW0nLCdMYWF0c3RlIHBhZ2luYScsJ0Jld2VyaycsYXJyYXkoJyVkIGJ5dGUnLCclZCBieXRlcycpLCdLaWVzJywnRnVuY3RpZXMnLCdUb3RhbGVuJywnWm9la2VuJywnb3ZlcmFsJywnU29ydGVyZW4nLCdBZmxvcGVuZCcsJ0JlcGVyaycsJ1Rla3N0IGxlbmd0ZScsJ0FjdGllcycsJ1NRTCBvcGRyYWNodCcsJ29wZW5lbicsJ29wc2xhYW4nLCdEYXRhYmFzZSBhYW5wYXNzZW4nLCdTY2hlbWEgd2lqemlnZW4nLCdTY2hlbWEgbWFrZW4nLCdFeHBvcnRlZXInLCdVaXRsb2dnZW4nLCdkYXRhYmFzZScsJ3NjaGVtYScsJ05pZXV3ZSB0YWJlbCcsJ2tpZXMnLCdsdHInLCdSZXNlbmQgUE9TVCBkYXRhPycsJ09uZ2VsZGlnIENTUkYgdG9rZW4uIFZlcnN0dXVyIGhldCBmb3JtdWxpZXIgb3BuaWV1dy4nLCdVaXRsb2dnZW4gZ2VzbGFhZ2QuJywnU2Vzc2llcyBtb2V0ZW4gZ2VhY3RpdmVlcmQgemlqbi4nLCdVdyBzZXNzaWUgaXMgdmVybG9wZW4uIEdlbGlldmUgb3BuaWV1dyBpbiB0ZSBsb2dnZW4uJywnT25nZWxkaWdlIGxvZ2luZ2VnZXZlbnMuJywnR2VlbiBleHRlbnNpZScsJ0dlZW4gZ2VsZGlnZSBQSFAgZXh0ZW5zaWVzIGJlc2NoaWtiYWFyICglcykuJywnUE9TVC1kYXRhIGlzIHRlIGdyb290LiBWZXJrbGVpbiBkZSBob2V2ZWVsaGVpZCBkYXRhIG9mIHZlcmhvb2cgZGUgJXMgY29uZmlndXJhdGllLicsJ0RhdGFiYXNlJywnT25nZWxkaWdlIGRhdGFiYXNlLicsJ0RhdGFiYXNlcyB2ZXJ3aWpkZXJkLicsJ0RhdGFiYXNlIHNlbGVjdGVyZW4nLCdOaWV1d2UgZGF0YWJhc2UnLCdSZWNodGVuJywnUHJvY2VzbGlqc3QnLCdWYXJpYWJlbGVuJywnU3RhdHVzJywnJXMgdmVyc2llOiAlcyBtZXQgUEhQIGV4dGVuc2llICVzJywnQWFuZ2VtZWxkIGFsczogJXMnLCdDb2xsYXRpZScsJ1RhYmVsbGVuJywnVmVyd2lqZGVyZW4nLCdWZXJuaWV1d2VuJywnU2NoZW1hJywnT25nZWxkaWcgc2NoZW1hLicsJ0dlZW4gcmlqZW4uJywnJS4zZiBzJywnRm9yZWlnbiBrZXlzJywnY29sbGF0aW9uJywnT04gREVMRVRFJywnS29sb21uYWFtJywnUGFyYW1ldGVybmFhbScsJ1R5cGUnLCdMZW5ndGUnLCdPcHRpZXMnLCdBdXRvIG51bW1lcmluZycsJ1N0YW5kYWFyZCB3YWFyZGVuJywnQ29tbWVudGFhcicsJ1ZvbGdlbmRlIHRvZXZvZWdlbicsJ09taG9vZycsJ09tbGFhZycsJ1ZlcndpamRlcmVuJywnVmlldycsJ1RhYmVsJywnS29sb20nLCdJbmRleGVuJywnSW5kZXhlbiBhYW5wYXNzZW4nLCdCcm9uJywnRG9lbCcsJ09OIFVQREFURScsJ0FhbnBhc3NlbicsJ0ZvcmVpZ24ga2V5IGFhbm1ha2VuJywnVHJpZ2dlcnMnLCdUcmlnZ2VyIGFhbm1ha2VuJywnRGF0YWJhc2Ugc2NoZW1hJywnUGVybWFuZW50IGxpbmsnLCdFeHBvcnRlcmVuJywnVWl0dm9lcicsJ0Zvcm1hYXQnLCdQcm9jZWR1cmVzJywnRXZlbnRzJywnRGF0YScsJ2Jld2VyaycsJ0dlYnJ1aWtlciBhYW5tYWtlbicsYXJyYXkoJ1F1ZXJ5IHVpdGdldm9lcmQsICVkIHJpaiBnZXJhYWt0LicsJ1F1ZXJ5IHVpdGdldm9lcmQsICVkIHJpamVuIGdlcmFha3QuJyksYXJyYXkoJyVkIHJpaicsJyVkIHJpamVuJyksJ0ZvdXQgaW4gcXVlcnknLCdHZWVuIG9wZHJhY2h0ZW4gdWl0IHRlIHZvZXJlbi4nLGFycmF5KCclZCBxdWVyeSBzdWNjZXN2b2wgdWl0Z2V2b2VyZC4nLCclZCBxdWVyeXMgc3VjY2Vzdm9sIHVpdGdldm9lcmQnKSwnQmVzdGFuZCB1cGxvYWRlbicsJ0Jlc3RhbmRlbiB1cGxvYWRlbiBpcyB1aXRnZXNjaGFrZWxkLicsJ1VpdHZvZXJlbicsJ1N0b3BwZW4gYmlqIGZvdXQnLCdFbmtlbCBmb3V0ZW4gdG9uZW4nLCdWYW4gc2VydmVyJywnV2Vic2VydmVyIGJlc3RhbmQgJXMnLCdCZXN0YW5kIHVpdHZvZXJlbicsJ0dlc2NoaWVkZW5pcycsJ1dpc3NlbicsJ0VkaXQgYWxsJywnSXRlbSB2ZXJ3aWpkZXJkLicsJ0l0ZW0gYWFuZ2VwYXN0LicsJ0l0ZW0lcyB0b2VnZXZvZWdkLicsJ1RvZXZvZWdlbicsJ09wc2xhYW4nLCdPcHNsYWFuIGVuIHZlcmRlciBiZXdlcmtlbicsJ09wc2xhYW4sIGRhYXJuYSB0b2V2b2VnZW4nLCdWZXJ3aWpkZXJlbicsJ1RhYmVsIHZlcndpamRlcmQuJywnVGFiZWwgYWFuZ2VwYXN0LicsJ1RhYmVsIGFhbmdlbWFha3QuJywnVGFiZWwgYWFubWFrZW4nLCdNYXhpbXVtIGFhbnRhbCB2ZWxkZW4gYmVyZWlrdC4gVmVyaG9vZyAlcyBlbiAlcy4nLCdUYWJlbG5hYW0nLCdlbmdpbmUnLCdQYXJ0aXRpb25lcmVuIG9wJywnUGFydGl0aWVzJywnUGFydGl0aWUgbmFhbScsJ1dhYXJkZW4nLCdJbmRleCBhYW5nZXBhc3QuJywnSW5kZXggdHlwZScsJ0tvbG9tIChsZW5ndGUpJywnRGF0YWJhc2UgdmVyd2lqZGVyZC4nLCdEYXRhYmFzZSBoZXJub2VtZC4nLCdEYXRhYmFzZSBhYW5nZW1hYWt0LicsJ0RhdGFiYXNlIGFhbmdlcGFzdC4nLCdEYXRhYmFzZSBhYW5tYWtlbicsJ1NjaGVtYSB2ZXJ3aWpkZXJkLicsJ1NjaGVtYSBhYW5nZW1hYWt0LicsJ1NjaGVtYSBnZXdpanppZ2QuJywnVWl0dm9lcmVuJyxhcnJheSgnUHJvY2VkdXJlIHVpdGdldm9lcmQsICVkIHJpaiBnZXJhYWt0LicsJ1Byb2NlZHVyZSB1aXRnZXZvZXJkLCAlZCByaWplbiBnZXJhYWt0LicpLCdGb3JlaWduIGtleSB2ZXJ3aWpkZXJkLicsJ0ZvcmVpZ24ga2V5IGFhbmdlcGFzdC4nLCdGb3JlaWduIGtleSBhYW5nZW1hYWt0LicsJ0Jyb24tIGVuIGRvZWxrb2xvbW1lbiBtb2V0ZW4gdmFuIGhldHplbGZkZSBkYXRhIHR5cGUgemlqbiwgZXIgbW9ldCBlZW4gaW5kZXggYmVzdGFhbiBvcCBkZSBnZWtvemVuIGtvbG9tbWVuIGVuIGVyIG1vZXQgZ2VyZWxhdGVlcmRlIGRhdGEgYmVzdGFhbi4nLCdGb3JlaWduIGtleScsJ0RvZWx0YWJlbCcsJ1ZlcmFuZGVyZW4nLCdLb2xvbSB0b2V2b2VnZW4nLCdWaWV3IHZlcndpamRlcmQuJywnVmlldyBhYW5nZXBhc3QuJywnVmlldyBhYW5nZW1hYWt0LicsJ1ZpZXcgYWFubWFrZW4nLCdOYWFtJywnRXZlbnQgd2VyZCB2ZXJ3aWpkZXJkLicsJ0V2ZW50IHdlcmQgYWFuZ2VwYXN0LicsJ0V2ZW50IHdlcmQgYWFuZ2VtYWFrdC4nLCdFdmVudCBhYW5wYXNzZW4nLCdFdmVudCBhYW5tYWtlbicsJ1N0YXJ0JywnU3RvcCcsJ0llZGVyZScsJ0Jld2FyZW4gbmEgdm9sdG9vaWluZycsJ1Byb2NlZHVyZSB2ZXJ3aWpkZXJkLicsJ1Byb2NlZHVyZSBhYW5nZXBhc3QuJywnUHJvY2VkdXJlIGFhbmdlbWFha3QuJywnRnVuY3RpZSBhYW5wYXNzZW4nLCdQcm9jZWR1cmUgYWFucGFzc2VuJywnRnVuY3RpZSBhYW5tYWtlbicsJ1Byb2NlZHVyZSBhYW5tYWtlbicsJ1JldHVybiB0eXBlJywnU2VxdWVuY2UgdmVyd2lqZGVyZC4nLCdTZXF1ZW5jZSBhYW5nZW1hYWt0LicsJ1NlcXVlbmNlIGdld2lqemlnZC4nLCdTZXF1ZW5jZSB3aWp6aWdlbicsJ1NlcXVlbmNlIG1ha2VuJywnVHlwZSB2ZXJ3aWpkZXJkLicsJ1R5cGUgYWFuZ2VtYWFrdC4nLCdUeXBlIHdpanppZ2VuJywnVHlwZSBtYWtlbicsJ1RyaWdnZXIgdmVyd2lqZGVyZC4nLCdUcmlnZ2VyIGFhbmdlcGFzdC4nLCdUcmlnZ2VyIGFhbmdlbWFha3QuJywnVHJpZ2dlciBhYW5wYXNzZW4nLCdUcmlnZ2VyIGFhbm1ha2VuJywnVGltZScsJ0V2ZW50JywnR2VicnVpa2VyIHZlcndpamRlcmQuJywnR2VicnVpa2VyIGFhbmdlcGFzdC4nLCdHZWJydWlrZXIgYWFuZ2VtYWFrdC4nLCdHZWhhc2hlZCcsJ1JvdXRpbmUnLCdUb2VrZW5uZW4nLCdJbnRyZWtrZW4nLGFycmF5KCclZCBwcm9jZXMgZ2VzdG9wdC4nLCclZCBwcm9jZXNzZW4gZ2VzdG9wdC4nKSwnJWQgaW4gdG90YWFsJywnU3RvcHBlbicsYXJyYXkoJyVkIGl0ZW0gYWFuZ2VwYXN0LicsJyVkIGl0ZW1zIGFhbmdlcGFzdC4nKSwnRHViYmVsa2xpayBvcCBlZW4gd2FhcmRlIG9tIGRlemUgdGUgYmV3ZXJrZW4uJyxhcnJheSgnJWQgcmlqIHdlcmQgZ2XDr21wb3J0ZWVyZC4nLCclZCByaWplbiB3ZXJkZW4gZ2XDr21wb3J0ZWVyZC4nKSwnT25tb2dlbGlqayB0YWJlbCB0ZSBzZWxlY3RlcmVuJywnUmVsYXRpZXMnLCdHZWJydWlrIGRlIGxpbmsgImJld2VyayIgb20gZGV6ZSB3YWFyZGUgdGUgd2lqemlnZW4uJywnUGFnaW5hJywnbGFhdHN0ZScsJ3ZvbGxlZGlnIHJlc3VsdGFhdCcsJ0R1cGxpY2VlcicsJ0ltcG9ydGVyZW4nLCcuJywnVGFiZWxsZW4gd2VyZGVuIGdlbGVlZ2QuJywnVGFiZWxsZW4gd2VyZGVuIHZlcnBsYWF0c3QuJywnVGFibGVzIGhhdmUgYmVlbiBjb3BpZWQuJywnVGFiZWxsZW4gd2VyZGVuIHZlcndpamRlcmQuJywnVGFiZWxsZW4gZW4gdmlld3MnLCdab2VrZW4gaW4gZGF0YWJhc2UnLCdFbmdpbmUnLCdEYXRhIGxlbmd0ZScsJ0luZGV4IGxlbmd0ZScsJ0RhdGEgVnJpaicsJ1JpamVuJywnQW5hbHlzZWVyJywnT3B0aW1hbGlzZWVyJywnQ29udHJvbGVlcicsJ0hlcnN0ZWwnLCdMZWdlbicsJ1ZlcnBsYWF0cyBuYWFyIGFuZGVyZSBkYXRhYmFzZScsJ1ZlcnBsYWF0cycsJ0NvcHknLCdTZXF1ZW5jZXMnLCdTY2hlZHVsZScsJ09wIGFhbmdlZ2V2ZW4gdGlqZCcsJ251Jyk7YnJlYWs7Y2FzZSJlcyI6JFk9YXJyYXkoJ0VzdMOhIHNlZ3Vybz8nLCdObyBlcyBwb3NpYmxlIGltcG9ydGFyIGFyY2hpdm8uJywnVGFtYcOxbyBtw6F4aW1vIGRlIGFyY2hpdm8gZXMgJXNCLicsJ0FyY2hpdm8gbm8gZXhpc3RlLicsJ25pbmfDum5vJywnb3JpZ2luYWwnLCdObyBleGlzdGVuIHRhYmxhcy4nLCdJZGlvbWEnLCdVc2FyJywnUG9yIGZhdm9yIHVzZSB1bmEgZGUgbGFzIGV4dGVuc2lvbmVzICVzLicsJ0FyY2hpdm8geWEgZXhpc3RlLicsJ1RpcG9zIGRlZmluaWRvIHBvciBlbCB1c3VhcmlvJywnTsO6bWVyb3MnLCdGZWNoYSB5IGhvcmEnLCdDYWRlbmEnLCdCaW5hcmlvJywnUmVkJywnR2VvbWV0csOtYScsJ0xpc3RhcycsJ01vdG9yIGRlIGJhc2UgZGUgZGF0b3MnLCdTZXJ2aWRvcicsJ1VzdWFyaW8nLCdDb250cmFzZcOxYScsJ0xvZ2luJywnR3VhcmRhciBjb250cmFzZcOxYScsJ1NlbGVjY2lvbmFyIGRhdG9zJywnTW9zdHJhciBlc3RydWN0dXJhJywnTW9kaWZpY2FyIHZpc3RhJywnTW9kaWZpcXVlIGVzdHJ1Y3R1cmEnLCdOdWV2byBSZWdpc3RybycsJ1VsdGltYSBww6FnaW5hJywnTW9kaWZpY2FyJyxhcnJheSgnJWQgYnl0ZScsJyVkIGJ5dGVzJyksJ01vc3RyYXInLCdGdW5jaW9uZXMnLCdBZ3JlZ2FjaW9uZXMnLCdDb25kaWNpw7NuJywnZG9uZGUgc2VhJywnT3JkZW5hcicsJ2Rlc2NlbmRpZW50ZScsJ0xpbWl0JywnTG9uZ2l0dWQgZGUgdGV4dG8nLCdBY2Npw7NuJywnQ29tYW5kbyBTUUwnLCdtb3N0cmFyJywnYXJjaGl2bycsJ01vZGlmaWNhciBCYXNlIGRlIGRhdG9zJywnTW9kaWZpY2FyIGVzcXVlbWEnLCdDcmVhciBlc3F1ZW1hJywnRXhwb3J0JywnTG9nb3V0JywnYmFzZSBkZSBkYXRvcycsJ2VzcXVlbWEnLCdOdWV2YSB0YWJsYScsJ3JlZ2lzdHJvcycsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/JywnVG9rZW4gQ1NSRiBpbnbDoWxpZG8uIFZ1ZWx2YSBhIGVudmlhciBsb3MgZGF0b3MgZGVsIGZvcm11bGFyaW8uJywnU2FsaWRhIGV4aXRvc2EuJywnRGViZW4gZXN0YXIgaGFiaWxpdGFkYXMgbGFzIHNlc2lvbmVzLicsJ1Nlc2nDs24gZXhwaXJhZGEsIHBvciBmYXZvciBpbmdyZXNlIHN1IGNsYXZlIGRlIG51ZXZvLicsJ0lkZW50aWZpY2FjaW9uIGludsOhbGlkYS4nLCdObyBoYXkgZXh0ZW5zaW9uJywnTmluZ3VuYSBkZSBsYXMgZXh0ZW5zaW9uZXMgUEhQIHNvcG9ydGFkYXMgKCVzKSBlc3TDoSBkaXNwb25pYmxlLicsJ1BPU1QgZGF0YSBkZW1hc2lhZG8gZ3JhbmRlLiBSZWR1emNhIGVsIHRhbWHDsW8gbyBhdW1lbnRlIGxhIGRpcmVjdGl2YSBkZSBjb25maWd1cmFjacOzbiAlcy4nLCdCYXNlIGRlIGRhdG9zJywnQmFzZSBkZSBkYXRvcyBpbnbDoWxpZGEuJywnQmFzZXMgZGUgZGF0b3MgZWxpbWluYWRhcy4nLCdTZWxlY2Npb25hciBCYXNlIGRlIGRhdG9zJywnSW5ncmVzZSBudWV2YSBiYXNlIGRlIGRhdG9zJywnUHJpdmlsZWdpb3MnLCdMaXN0YSBkZSBwcm9jZXNvcycsJ1ZhcmlhYmxlcycsJ0VzdGFkbycsJ1ZlcnNpw7NuICVzOiAlcyBhIHRyYXbDqXMgZGUgZXh0ZW5zacOzbiBQSFAgJXMnLCdMb2dlYWRvIGNvbW86ICVzJywnQ29sYWNpw7NuJywnVGFibGFzJywnRWxpbWluYXInLCdSZWZyZXNjYXInLCdFc3F1ZW1hJywnRXNxdWVtYSBpbnbDoWxpZG8uJywnTm8gZXhpc3RlbiByZWdpc3Ryb3MuJywnJS4zZiBzJywnQ2xhdmVzIGZvcsOhbmVhcycsJ2NvbGFjacOzbicsJ09OIERFTEVURScsJ05vbWJyZSBkZSBjb2x1bW5hJywnTm9tYnJlIGRlIFBhcsOhbWV0cm8nLCdUaXBvJywnTG9uZ2l0dWQnLCdPcGNpb25lcycsJ0luY3JlbWVudG8gYXV0b23DoXRpY28nLCdWYWxvcmVzIHByZWRldGVybWluYWRvcycsJ0NvbWVudGFyaW8nLCdBZ3JlZ2FyJywnTW92ZXIgYXJyaWJhJywnTW92ZXIgYWJham8nLCdFbGltaW5hcicsJ1Zpc3RhcycsJ1RhYmxhJywnQ29sdW1uYScsJ0luZGljZXMnLCdNb2RpZmljYXIgaW5kaWNlcycsJ09yaWdlbicsJ0Rlc3Rpbm8nLCdPTiBVUERBVEUnLCdNb2RpZmljYXInLCdBZ3JlZ2FyIGNsYXZlIGZvcsOhbmVhJywnVHJpZ2dlcnMnLCdBZ3JlZ2FyIHRyaWdnZXInLCdFc3F1ZW1hIGRlIGJhc2UgZGUgZGF0b3MnLCdQZXJtYW5lbnQgbGluaycsJ0V4cG9ydGFyJywnU2FsaWRhJywnRm9ybWF0bycsJ1Byb2NlZGltaWVudG9zJywnRXZlbnRvcycsJ0RhdG9zJywnbW9kaWZpY2FyJywnQ3JlYXIgVXN1YXJpbycsYXJyYXkoJ0NvbnN1bHRhIGVqZWN1dGFkYSwgJWQgcmVnaXN0cm8gYWZlY3RhZG8uJywnQ29uc3VsdGEgZWplY3V0YWRhLCAlZCByZWdpc3Ryb3MgYWZlY3RhZG9zLicpLGFycmF5KCclZCByZWdpc3RybycsJyVkIHJlZ2lzdHJvcycpLCdFcnJvciBlbiBjb25zdWx0YScsJ05vIGhheSBjb21hbmRvIHBhcmEgZWplY3V0YXIuJyxhcnJheSgnJWQgc2VudGVuY2lhIHNxbCBlamVjdXRhZGEgY29ycmVjdGFtZW50ZS4nLCclZCBzZW50ZW5jaWFzIHNxbCBlamVjdXRhZGFzIGNvcnJlY3RhbWVudGUuJyksJ0ltcG9ydGFyIGFyY2hpdm8nLCdJbXBvcnRhY2nDs24gZGUgYXJjaGl2b3MgZGVzaGFibGlsaXRhZG8uJywnRWplY3V0YXInLCdQYXJhciBlbiBjYXNvIGRlIGVycm9yJywnTW9zdHJhciBzb2xhbWVudGUgZXJyb3JlcycsJ0Rlc2RlIHNlcnZpZG9yJywnQXJjaGl2byBkZSBzZXJ2aWRvciB3ZWIgJXMnLCdFamVjdXRhciBBcmNoaXZvJywnSGlzdG9yeScsJ1ZhY2lhcicsJ0VkaXQgYWxsJywnUmVnaXN0cm8gZWxpbWluYWRvLicsJ1JlZ2lzdHJvIG1vZGlmaWNhZG8uJywnUmVnaXN0cm8lcyBpbnNlcnRhZG8uJywnQWdyZWdhcicsJ0d1YXJkYXInLCdHdWFyZGFyIHkgY29udGludWFyIGVkaXRhbmRvJywnR3VhcmRhciBlIGluc2VydGFyIG90cm8nLCdFbGltaW5hcicsJ1RhYmxhIGVsaW1pbmFkYS4nLCdUYWJsYSBtb2RpZmljYWRhLicsJ1RhYmxhIGNyZWFkYS4nLCdDcmVlIHRhYmxhJywnQ2FudGlkYSBtw6F4aW1hIGRlIGNhbXBvcyBwZXJtaXRpZG9zIGV4Y2VkaWRvcy4gUG9yIGZhdm9yIGF1bWVudGUgJXMgeSAlcy4nLCdOb21icmUgZGUgbGEgdGFibGEnLCdtb3RvcicsJ1BhcnRpY2lvbmFyIHBvcicsJ1BhcnRpY2lvbmVzJywnTm9tYnJlIGRlIFBhcnRpY2nDs24nLCdWYWxvcmVzJywnSW5kaWNlcyBtb2RpZmljYWRvcy4nLCdUaXBvIGRlIMOtbmRpY2UnLCdDb2x1bW5hIChsb25naXR1ZCknLCdCYXNlIGRlIGRhdG9zIGVsaW1pbmFkYS4nLCdCYXNlIGRlIGRhdG9zIHJlbm9tYnJhZGEuJywnQmFzZSBkZSBkYXRvcyBjcmVhZGEuJywnQmFzZSBkZSBkYXRvcyBtb2RpZmljYWRhLicsJ0NyZWFyIEJhc2UgZGUgZGF0b3MnLCdFc3F1ZW1hIGVsaW1pbmFkby4nLCdFc3F1ZW1hIGNyZWFkby4nLCdFc3F1ZW1hIG1vZGlmaWNhZG8uJywnTGxhbWFyJyxhcnJheSgnQ29uc3VsdGEgZWplY3V0YWRhLCAlZCByZWdpc3RybyBhZmVjdGFkby4nLCdDb25zdWx0YSBlamVjdXRhZGEsICVkIHJlZ2lzdHJvcyBhZmVjdGFkb3MuJyksJ0NsYXZlIGV4dGVybmEgZWxpbWluYWRhLicsJ0NsYXZlIGV4dGVybmEgbW9kaWZpY2FkYS4nLCdDbGF2ZSBleHRlcm5hIGNyZWFkYS4nLCdMYXMgY29sdW1uYXMgZGUgb3JpZ2VuIHkgZGVzdGlubyBkZWJlbiBzZXIgZGVsIG1pc21vIHRpcG8sIGRlYmUgZXhpc3RpciB1biDDrW5kaWNlIGVudHJlIGxhcyBjb2x1bW5hcyBkZWwgZGVzdGlubyB5IGVsIHJlZ2lzdHJvIHJlZmVyZW5jaWFkbyBkZWJlIGV4aXN0aXIuJywnQ2xhdmUgZXh0ZXJuYScsJ1RhYmxhIGRlIGRlc3Rpbm8nLCdNb2RpZmljYXInLCdBZ3JlZ2FyIGNvbHVtbmEnLCdWaXN0YSBlbGltaW5hZGEuJywnVmlzdGEgbW9kaWZpY2FkYS4nLCdWaXN0YSBjcmVhZGEuJywnQ2VhciB2aXN0YScsJ05vbWJyZScsJ0V2ZW50byBlbGltaW5hZG8uJywnRXZlbnRvIG1vZGlmaWNhZG8uJywnRXZlbnRvIGNyZWFkby4nLCdNb2RpZmljYXIgRXZlbnRvJywnQ3JlYXIgRXZlbnRvJywnSW5pY2lvJywnRmluJywnQ2FkYScsJ0FsIGNvbXBsZXRhciBwcmVzZXJ2YXInLCdQcm9jZWRpbWllbnRvIGVsaW1pbmFkby4nLCdQcm9jZWRpbWllbnRvIG1vZGlmaWNhZG8uJywnUHJvY2VkaW1pZW50byBjcmVhZG8uJywnTW9kaWZpY2FyIEZ1bmNpw7NuJywnTW9kaWZpY2FyIHByb2NlZGltaWVudG8nLCdDcmVhciBmdW5jacOzbicsJ0NyZWFyIHByb2NlZGltaWVudG8nLCdUaXBvIGRlIHZhbG9yIGRlIHJlZ3Jlc28nLCdTZWN1ZW5jaWEgZWxpbWluYWRhLicsJ1NlY3VlbmNpYSBjcmVhZGEuJywnU2VjdWVuY2lhIG1vZGlmaWNhZGEuJywnTW9kaWZpY2FyIHNlY3VlbmNpYScsJ0NyZWFyIHNlY3VlbmNpYXMnLCdUaXBvIGVsaW1pbmFkby4nLCdUaXBvIGNyZWFkby4nLCdNb2RpZmljYXIgdGlwbycsJ0NyZWFyIHRpcG8nLCdUcmlnZ2VyIGVsaW1pbmFkby4nLCdUcmlnZ2VyIG1vZGlmaWNhZG8uJywnVHJpZ2dlciBjcmVhZG8uJywnTW9kaWZpY2FyIFRyaWdnZXInLCdBZ3JlZ2FyIFRyaWdnZXInLCdUaWVtcG8nLCdFdmVudG8nLCdVc3VhcmlvIGVsaW1pbmFkby4nLCdVc3VhcmlvIG1vZGlmaWNhZG8uJywnVXN1YXJpbyBjcmVhZG8uJywnSGFzaCcsJ1J1dGluYScsJ0NvbmNlZGVyJywnSW1wZWRpcicsYXJyYXkoJyVkIHByb2Nlc28gZGV0ZW5pZG8uJywnJWQgcHJvY2Vzb3MgZGV0ZW5pZG9zLicpLCclZCBlbiB0b3RhbCcsJ0RldGVuZXInLGFycmF5KCclZCDDrXRlbSBhZmVjdGFkby4nLCclZCBpdGVtZXMgYWZlY3RhZG9zLicpLCdEb2JsZS1jbGljIHNvYnJlIGVsIHZhbG9yIHBhcmEgZWRpdGFybG8uJyxhcnJheSgnJWQgcmVnaXN0cm8gaW1wb3J0YWRvLicsJyVkIHJlZ2lzdHJvcyBpbXBvcnRhZG9zLicpLCdObyBlcyBwb3NpYmxlIHNlbGVjY2lvbmFyIGxhIHRhYmxhJywnUmVsYWNpb25lcycsJ1V0aWxpY2UgZWwgZW5sYWNlIGRlIG1vZGlmaWNhciBwYXJhIHJlYWxpemFyIGxvcyBjYW1iaW9zLicsJ1DDoWdpbmEnLCfDumx0aW1vJywncmVzdWx0YWRvIGNvbXBsZXRvJywnQ2xvbmFyJywnSW1wb3J0YXInLCcgJywnVGFibGFzIHZhY2lhZGFzICh0cnVuY2F0ZSkuJywnU2UgbW92aWVyb24gbGFzIHRhYmxhcy4nLCdUYWJsZXMgaGF2ZSBiZWVuIGNvcGllZC4nLCdUYWJsYXMgZWxpbWluYWRhcy4nLCdUYWJsYXMgeSB2aXN0YXMnLCdCdXNjYXIgZGF0b3MgZW4gdGFibGFzJywnTW90b3InLCdMb25naXR1ZCBkZSBkYXRvcycsJ0xvbmdpdHVkIGRlIMOtbmRpY2UnLCdFc3BhY2lvIGxpYnJlJywnUmVnaXN0cm9zJywnQW5hbGl6YXInLCdPcHRpbWl6YXInLCdDb21wcm9iYXInLCdSZXBhcmFyJywnVmFjaWFyJywnTW92ZXIgYSBvdHJhIGJhc2UgZGUgZGF0b3MnLCdNb3ZlcicsJ0NvcHknLCdTZWN1ZW5jaWFzJywnQWdlbmRhJywnQSBob3JhIGRldGVybWluYWRhJywnYWhvcmEnKTticmVhaztjYXNlImRlIjokWT1hcnJheSgnU2luZCBTaWUgc2ljaGVyID8nLCdIb2NobGFkZW4gdm9uIERhdGVpIGZlaGxnZXNjaGxhZ2VuLicsJ01heGltYWwgZXJsYXVidGUgRGF0ZWlncsO2c3NlIGlzdCAlc0IuJywnRGF0ZWkgZXhpc3RpZXJ0IG5pY2h0LicsJ2xlZXInLCdPcmlnaW5hbCcsJ0tlaW5lIFRhYmVsbGVuLicsJ1NwcmFjaGUnLCdCZW51dHp1bmcnLCdCaXR0ZSBlaW5lbiBkZXIgRGF0ZWl0eXBlbiAlcyBiZW51dHplbi4nLCdEYXRlaSBleGlzdGllcnQgc2Nob24uJywnQmVudXR6ZXItZGVmaW5pZXJ0ZSBUeXBlbicsJ1phaGxlbicsJ0RhdHVtIG9kZXIgWmVpdCcsJ1plaWNoZW5rZXR0ZW4nLCdCaW7DpHInLCdOZXR6d2VyaycsJ0dlb21ldHJpZScsJ0xpc3RlbicsJ0RhdGVuYmFuayBTeXN0ZW0nLCdTZXJ2ZXInLCdCZW51dHplcicsJ1Bhc3N3b3J0JywnTG9naW4nLCdQYXNzd29ydCBzcGVpY2hlcm4nLCdEYXRlbiBhdXN3w6RobGVuJywnU3RydWt0dXIgYW56ZWlnZW4nLCdWaWV3IMOkbmRlcm4nLCdUYWJlbGxlIMOkbmRlcm4nLCdOZXVlciBEYXRlbnNhdHonLCdMZXR6dGUgU2VpdGUnLCfDhG5kZXJuJyxhcnJheSgnJWQgQnl0ZScsJyVkIEJ5dGVzJyksJ0RhdGVuIHplaWdlbiB2b24nLCdGdW5rdGlvbmVuJywnQWdyZWdhdGlvbmVuJywnU3VjaGVuJywnYmVsaWViaWcnLCdPcmRuZW4nLCdhYnN0ZWlnZW5kJywnQmVncmVuenVuZycsJ1RleHRsw6RuZ2UnLCdBa3Rpb24nLCdTUUwtUXVlcnknLCdhbnplaWdlbicsJ0RhdGVpJywnRGF0ZW5iYW5rIMOkbmRlcm4nLCdTY2hlbWEgw6RuZGVybicsJ05ldWVzIFNjaGVtYScsJ0V4cG9ydCcsJ0FibWVsZGVuJywnRGF0ZW5iYW5rJywnU2NoZW1hJywnTmV1ZSBUYWJlbGxlJywnemVpZ2VuJywnbHRyJywnUmVzZW5kIFBPU1QgZGF0YT8nLCdDU1JGIFRva2VuIHVuZ8O8bHRpZy4gQml0dGUgZGllIEZvcm11bGFyZGF0ZW4gZXJuZXV0IGFic2NoaWNrZW4uJywnQWJtZWxkdW5nIGVyZm9sZ3JlaWNoLicsJ1NpdHp1bmdlbiBtw7xzc2VuIGFrdGl2aWVydCBzZWluLicsJ1NpdHp1bmdzZGF1ZXIgYWJnZWxhdWZlbiwgYml0dGUgZXJuZXV0IGFubWVsZGVuLicsJ1VuZ8O8bHRpZ2UgQW5tZWxkZS1JbmZvcm1hdGlvbmVuLicsJ0tlaW5lIEVyd2VpdGVydW5nZW4gaW5zdGFsbGllcnQnLCdLZWluZSBkZXIgdW50ZXJzdMO8dHp0ZW4gUEhQLUVyd2VpdGVydW5nZW4gKCVzKSBpc3Qgdm9yaGFuZGVuLicsJ1BPU1QgZGF0YSB6dSBncm9zcy4gUmVkdXppZXJlbiBTaWUgZGllIEdyw7Zzc2Ugb2RlciB2ZXJncsO2c3Nlcm4gU2llIGRlbiBXZXJ0ICVzIGluIGRlciBLb25maWd1cmF0aW9uLicsJ0RhdGVuYmFuaycsJ0RhdGVuYmFuayB1bmfDvGx0aWcuJywnRGF0ZW5iYW5rZW4gZW50ZmVybnQuJywnRGF0ZW5iYW5rIGF1c3fDpGhsZW4nLCdOZXVlIERhdGVuYmFuaycsJ1JlY2h0ZScsJ1Byb3plc3NsaXN0ZScsJ1ZhcmlhYmxlbicsJ1N0YXR1cycsJ1ZlcnNpb24gJXM6ICVzLCBtaXQgUEhQLUVyd2VpdGVydW5nICVzJywnQW5nZW1lbGRldCBhbHM6ICVzJywnQ29sbGF0aW9uJywnVGFiZWxsZW4nLCdFbnRmZXJuZW4nLCdBa3R1YWxpc2llcmVuJywnU2NoZW1hJywnU2NoZW1hIG5pY2h0IGfDvGx0aWcuJywnS2VpbmUgRGF0ZW4uJywnJS4zZiBzJywnRnJlbWRzY2hsw7xzc2VsJywnS29sbGF0aW9uJywnT04gREVMRVRFJywnU3BhbHRlbm5hbWUnLCdOYW1lIGRlcyBQYXJhbWV0ZXJzJywnVHlwJywnTMOkbmdlJywnT3B0aW9uZW4nLCdBdXRvLUlua3JlbWVudCcsJ1ZvcmdhYmV3ZXJ0ZSBmZXN0bGVnZW4nLCdLb21tZW50YXInLCdIaW56dWbDvGdlbicsJ05hY2ggb2JlbicsJ05hY2ggdW50ZW4nLCdFbnRmZXJuZW4nLCdWaWV3JywnVGFiZWxsZScsJ1NwYWx0ZScsJ0luZGl6ZXMnLCdJbmRpemVzIMOkbmRlcm4nLCdVcnNwcnVuZycsJ1ppZWwnLCdPTiBVUERBVEUnLCfDhG5kZXJuJywnRnJlbWRzY2hsw7xzc2VsIGhpbnp1ZsO8Z2VuJywnVHJpZ2dlcicsJ1RyaWdnZXIgaGluenVmw7xnZW4nLCdEYXRlbmJhbmtzY2hlbWEnLCdQZXJtYW5lbnQgbGluaycsJ0V4cG9ydGllcmVuJywnRXJnZWJuaXMnLCdGb3JtYXQnLCdQcm96ZWR1cmVuJywnRXJlaWduaXNzZScsJ0RhdGVuJywnw6RuZGVybicsJ05ldWVyIEJlbnV0emVyJyxhcnJheSgnQWJmcmFnZSBhdXNnZWbDvGhydCwgJWQgRGF0ZW5zYXR6IGJldHJvZmZlbi4nLCdBYmZyYWdlIGF1c2dlZsO8aHJ0LCAlZCBEYXRlbnPDpHR6ZSBiZXRyb2ZmZW4uJyksYXJyYXkoJyVkIERhdGVuc2F0eicsJyVkIERhdGVuc8OkdHplJyksJ0ZlaGxlciBpbiBkZXIgU1FMLUFiZnJhZ2UnLCdLZWluIEtvbW1hbmRvIHZvcmhhbmRlbi4nLGFycmF5KCdTUUwtUXVlcnkgZXJmb2xncmVpY2ggYXVzZ2Vmw7xocnQuJywnJWQgU1FMLVF1ZXJpZXMgZXJmb2xncmVpY2ggYXVzZ2Vmw7xocnQuJyksJ0RhdGVpIGltcG9ydGllcmVuJywnSW1wb3J0aWVyZW4gdm9uIERhdGVpZW4gYWJnZXNjaGFsdGV0LicsJ0F1c2bDvGhyZW4nLCdCZWkgRmVobGVyIGFuaGFsdGVuJywnTnVyIEZlaGxlciBhbnplaWdlbicsJ0F1ZiBTZXJ2ZXInLCdXZWJzZXJ2ZXIgRGF0ZWkgJXMnLCdEYXRlaSBhdXNmw7xocmVuJywnSGlzdG9yeScsJ0VudGxlZXJlbicsJ0VkaXQgYWxsJywnRGF0ZW5zYXR6IGdlbMO2c2NodC4nLCdEYXRlbnNhdHogZ2XDpG5kZXJ0LicsJ0RhdGVuc2F0eiVzIGhpbnp1Z2Vmw7xndC4nLCdIaW56dWbDvGdlbicsJ1NwZWljaGVybicsJ1NwZWljaGVybiB1bmQgd2VpdGVyIGJlYXJiZWl0ZW4nLCdTcGVpY2hlcm4gdW5kIG7DpGNoc3RlbiBoaW56dWbDvGdlbicsJ0VudGZlcm5lbicsJ1RhYmVsbGUgZW50ZmVybnQuJywnVGFiZWxsZSBnZcOkbmRlcnQuJywnVGFiZWxsZSBlcnN0ZWxsdC4nLCdOZXVlIFRhYmVsbGUgZXJzdGVsbGVuJywnRGllIG1heGltYWwgZXJsYXVidGUgQW56YWhsIGRlciBGZWxkZXIgaXN0IMO8YmVyc2Nocml0dGVuLiBCaXR0ZSAlcyB1bmQgJXMgZXJow7ZoZW4uJywnTmFtZSBkZXIgVGFiZWxsZScsJ01vdG9yJywnUGFydGl0aW9uaWVyZW4gdW0nLCdQYXJ0aXRpb25lbicsJ05hbWUgZGVyIFBhcnRpdGlvbicsJ1dlcnRlJywnSW5kaXplcyBnZcOkbmRlcnQuJywnSW5kZXgtVHlwJywnU3BhbHRlIChMw6RuZ2UpJywnRGF0ZW5iYW5rIGVudGZlcm50LicsJ0RhdGVuYmFuayB1bWJlbmFubnQuJywnRGF0ZW5iYW5rIGVyc3RlbGx0LicsJ0RhdGVuYmFuayBnZcOkbmRlcnQuJywnTmV1ZSBEYXRlbmJhbmsnLCdTY2hlbWEgd3VyZGUgZ2Vsw7ZzY2h0LicsJ05ldWVzIFNjaGVtYSBlcnN0ZWxsdC4nLCdTY2hlbWEgZ2XDpG5kZXJ0LicsJ0F1ZnJ1ZmVuJyxhcnJheSgnS29tbWFuZG8gU1FMIGF1c2dlZsO8aHJ0LCAlZCBEYXRlbnNhdHogYmV0cm9mZmVuLicsJ0tvbW1hbmRvIFNRTCBhdXNnZWbDvGhydCwgJWQgRGF0ZW5zw6R0emUgYmV0cm9mZmVuLicpLCdGcmVtZHNjaGzDvHNzZWwgZW50ZmVybnQuJywnRnJlbWRzY2hsw7xzc2VsIGdlw6RuZGVydC4nLCdGcmVtZHNjaGzDvHNzZWwgZXJzdGVsbHQuJywnU3BhbHRlbiBkZXMgVXJzcHJ1bmdzIHVuZCBkZXMgWmllbGVzIG3DvHNzZW4gdm9tIGdsZWljaGVuIERhdGVudHlwIHNlaW4sIGVzIG11c3MgdW50ZXIgZGVuIFppZWxzcGFsdGVuIGVpbiBJbmRleCBleGlzdGllcmVuIHVuZCBkaWUgcmVmZXJlbnppZXJ0ZW4gRGF0ZW4gbcO8c3NlbiBleGlzdGllcmVuLicsJ0ZyZW1kc2NobMO8c3NlbCcsJ1ppZWx0YWJlbGxlJywnw4RuZGVybicsJ1NwYWx0ZSBoaW56dWbDvGdlbicsJ1ZpZXcgZW50ZmVybnQuJywnVmlldyBnZcOkbmRlcnQuJywnVmlldyBlcnN0ZWxsdC4nLCdOZXVlIFZpZXcgZXJzdGVsbGVuJywnTmFtZScsJ0VyZWlnbmlzIGVudGZlcm50LicsJ0VyZWlnbmlzIGdlw6RuZGVydC4nLCdFcmVpZ25pcyBlcnN0ZWxsdC4nLCdFcmVpZ25pcyDDpG5kZXJuJywnRXJlaWduaXMgZXJzdGVsbGVuJywnU3RhcnQnLCdFbmRlJywnSmVkZScsJ05hY2ggZGVyIEF1c2bDvGhydW5nIGVyaGFsdGVuJywnUHJvemVkdXIgZW50ZmVybnQuJywnUHJvemVkdXIgZ2XDpG5kZXJ0LicsJ1Byb3plZHVyIGVyc3RlbGx0LicsJ0Z1bmt0aW9uIMOkbmRlcm4nLCdQcm96ZWR1ciDDpG5kZXJuJywnTmV1ZSBGdW5rdGlvbicsJ05ldWUgUHJvemVkdXInLCdUeXAgZGVzIFLDvGNrZ2FiZXdlcnRlcycsJ1NlcXVlbnogZ2Vsw7ZzY2h0LicsJ05ldWUgU2VxdWVueiBlcnN0ZWxsdC4nLCdTZXF1ZW56IGdlw6RuZGVydC4nLCdTZXF1ZW56IMOkbmRlcm4nLCdOZXVlIFNlcXVlbnonLCdUeXAgZ2Vsw7ZzY2h0LicsJ1R5cCBlcnN0ZWxsdC4nLCdUeXAgw6RuZGVybicsJ1R5cCBlcnN0ZWxsZW4nLCdUcmlnZ2VyIGVudGZlcm50LicsJ1RyaWdnZXIgZ2XDpG5kZXJ0LicsJ1RyaWdnZXIgZXJzdGVsbHQuJywnVHJpZ2dlciDDpG5kZXJuJywnVHJpZ2dlciBoaW56dWbDvGdlbicsJ1plaXRwdW5rdCcsJ0VyZWlnbmlzJywnQmVudXR6ZXIgZW50ZmVybnQuJywnQmVudXR6ZXIgZ2XDpG5kZXJ0LicsJ0JlbnV0emVyIGVyc3RlbGx0LicsJ0hhc2hlZCcsJ1J1dGluZScsJ0VybGF1YmVuJywnVmVyYmlldGVuJyxhcnJheSgnJWQgUHJvemVzcyBnZXN0b3BwdC4nLCclZCBQcm96ZXNzZSBnZXN0b3BwdC4nKSwnJWQgaW5zZ2VzYW10JywnQW5oYWx0ZW4nLCclZCBBcnRpa2VsIGJldHJvZmZlbi4nLCdEb3BwZWxrbGljayB6dW0gQmVhcmJlaXRlbiBkZXMgV2VydGVzLicsYXJyYXkoJyVkIERhdGVuc2F0eiBpbXBvcnRpZXJ0LicsJyVkIERhdGVuc8OkdHplIHd1cmRlbiBpbXBvcnRpZXJ0LicpLCdBdXN3YWhsIGRlciBUYWJlbGxlIGZlaGxnZXNjaGxhZ2VuJywnUmVsYXRpb25lbicsJ0JlbnV0emVuIFNpZSBkZW4gTGluayB6dW0gZWRpdGllcmVuIGRpZXNlcyBXZXJ0ZXMuJywnU2VpdGUnLCdsZXR6dGUnLCdHZXNhbXRlcmdlYm5pcycsJ0tsb25lbicsJ0ltcG9ydGllcmVuJywnICcsJ1RhYmVsbGVuIHNpbmQgZW50bGVlcnQgd29yZGVuICh0cnVuY2F0ZSkuJywnVGFiZWxsZW4gdmVyc2Nob2Jlbi4nLCdUYWJsZXMgaGF2ZSBiZWVuIGNvcGllZC4nLCdUYWJlbGxlbiB3dXJkZW4gZW50ZmVybnQgKGRyb3ApLicsJ1RhYmVsbGVuIHVuZCBWaWV3cycsJ1N1Y2hlIGluIFRhYmVsbGVuJywnTW90b3InLCdEYXRlbmdyw7Zzc2UnLCdJbmRleGdyw7Zzc2UnLCdGcmVpZXIgQmVyZWljaCcsJ0RhdGVuc8OkdHplJywnQW5hbHlzaWVyZW4nLCdPcHRpbWllcmVuJywnUHLDvGZlbicsJ1JlcGFyaWVyZW4nLCdFbnRsZWVyZW4gKHRydW5jYXRlKScsJ0luIGFuZGVyZSBEYXRlbmJhbmsgdmVyc2NoaWViZW4nLCdWZXJzY2hpZWJlbicsJ0NvcHknLCdTZXF1ZW56JywnWmVpdHBsYW4nLCdadXIgYW5nZWdlYmVuZW4gWmVpdCcsJ2pldHp0Jyk7YnJlYWs7Y2FzZSJmciI6JFk9YXJyYXkoJ8OKdGVzLXZvdXMgY2VydGFpbiA/JywnSW1wb3NzaWJsZSBkXCdpbXBvcnRlciBsZSBmaWNoaWVyLicsJ0xhIHRhaWxsZSBtYXhpbWFsZSBkZXMgZmljaGllcnMgZXN0IGRlICVzQi4nLCdMZSBmaWNoaWVyIGVzdCBpbnRyb3V2YWJsZS4nLCd2aWRlJywnb3JpZ2luYWwnLCdBdWN1bmUgdGFibGUuJywnTGFuZ3VlJywnVXRpbGlzZXInLCdWZXVpbGxleiB1dGlsaXNlciBsXCd1bmUgZGVzIGV4dGVuc2lvbnMgJXMuJywnTGUgZmljaGllciBleGlzdGUuJywnVHlwZXMgdXRpbGlzYXRldXInLCdOb21icmVzJywnRGF0ZSBldCBoZXVyZScsJ0NoYcOubmVzJywnQmluYWlyZXMnLCdSw6lzZWF1JywnR8Opb23DqXRyaWUnLCdMaXN0ZXMnLCdTeXN0w6htZScsJ1NlcnZldXInLCdVdGlsaXNhdGV1cicsJ01vdCBkZSBwYXNzZScsJ0F1dGhlbnRpZmljYXRpb24nLCdBdXRoZW50aWZpY2F0aW9uIHBlcm1hbmVudGUnLCdBZmZpY2hlciBsZXMgZG9ubsOpZXMnLCdBZmZpY2hlciBsYSBzdHJ1Y3R1cmUnLCdNb2RpZmllciB1bmUgdnVlJywnTW9kaWZpZXIgbGEgdGFibGUnLCdOb3V2ZWwgw6lsw6ltZW50JywnRGVybmnDqHJlIHBhZ2UnLCdNb2RpZmllcicsYXJyYXkoJyVkIG9jdGV0JywnJWQgb2N0ZXRzJyksJ1NlbGVjdCcsJ0ZvbmN0aW9ucycsJ0FncsOpZ2F0aW9uJywnUmVjaGVyY2hlcicsJ25cJ2ltcG9ydGUgb8O5JywnVHJpZXInLCdkw6ljcm9pc3NhbnQnLCdMaW1pdGUnLCdMb25ndWV1ciBkdSB0ZXh0ZScsJ0FjdGlvbicsJ1JlcXXDqnRlIFNRTCcsJ291dnJpcicsJ3NhdXZlZ2FyZGVyJywnTW9kaWZpZXIgbGEgYmFzZSBkZSBkb25uw6llcycsJ01vZGlmaWVyIGxlIHNjaMOpbWEnLCdDcsOpZXIgdW4gc2Now6ltYScsJ0V4cG9ydGVyJywnRMOpY29ubmV4aW9uJywnYmFzZSBkZSBkb25uw6llcycsJ3NjaMOpbWEnLCdDcsOpZXIgdW5lIG5vdXZlbGxlIHRhYmxlJywnc2VsZWN0JywnbHRyJywnUmVzZW5kIFBPU1QgZGF0YT8nLCdUb2tlbiBDU1JGIGludmFsaWRlLiBWZXVpbGxleiByw6llbnZveWVyIGxlIGZvcm11bGFpcmUuJywnQXUgcmV2b2lyICEnLCdWZXVpbGxleiBhY3RpdmVyIGxlcyBzZXNzaW9ucy4nLCdTZXNzaW9uIGV4cGlyw6llLCB2ZXVpbGxleiB2b3VzIGF1dGhlbnRpZmllciDDoCBub3V2ZWF1LicsJ0F1dGhlbnRpZmljYXRpb24gw6ljaG91w6llLicsJ0V4dGVuc2lvbiBpbnRyb3V2YWJsZScsJ0F1Y3VuZSBkZXMgZXh0ZW5zaW9ucyBQSFAgc3VwcG9ydMOpZXMgKCVzKSBuXCdlc3QgZGlzcG9uaWJsZS4nLCdEb25uw6llcyBQT1NUIHRyb3AgZ3JhbmRlcy4gUsOpZHVpc2V6IGxhIHRhaWxsZSBkZXMgZG9ubsOpZXMgb3UgYXVnbWVudGV6IGxhIHZhbGV1ciBkZSAlcyBkYW5zIGxhIGNvbmZpZ3VyYXRpb24gZGUgUEhQLicsJ0Jhc2UgZGUgZG9ubsOpZXMnLCdCYXNlIGRlIGRvbm7DqWVzIGludmFsaWRlLicsJ0xlcyBiYXNlcyBkZSBkb25uw6llcyBvbnQgw6l0w6kgc3VwcHJpbcOpZXMuJywnU8OpbGVjdGlvbm5lciBsYSBiYXNlIGRlIGRvbm7DqWVzJywnQ3LDqWVyIHVuZSBiYXNlIGRlIGRvbm7DqWVzJywnUHJpdmlsw6hnZXMnLCdMaXN0ZSBkZXMgcHJvY2Vzc3VzJywnVmFyaWFibGVzJywnU3RhdHV0JywnVmVyc2lvbiBkZSAlcyA6ICVzIHZpYSBsXCdleHRlbnNpb24gUEhQICVzJywnQXV0aGVudGlmacOpIGVuIHRhbnQgcXVlIDogJXMnLCdJbnRlcmNsYXNzZW1lbnQnLCdUYWJsZXMnLCdTdXBwcmltZXInLCdSYWZyYcOuY2hpcicsJ1NjaMOpbWEnLCdTY2jDqW1hIGludmFsaWRlLicsJ0F1Y3VuIHLDqXN1bHRhdC4nLCclLjNmIHMnLCdDbMOpcyDDqXRyYW5nw6hyZXMnLCdpbnRlcmNsYXNzZW1lbnQnLCdPTiBERUxFVEUnLCdOb20gZGUgbGEgY29sb25uZScsJ05vbSBkdSBwYXJhbcOodHJlJywnVHlwZScsJ0xvbmd1ZXVyJywnT3B0aW9ucycsJ0F1dG8gaW5jcmVtZW50JywnVmFsZXVycyBwYXIgZMOpZmF1dCcsJ0NvbW1lbnRhaXJlJywnQWpvdXRlciBsZSBwcm9jaGFpbicsJ0TDqXBsYWNlciB2ZXJzIGxlIGhhdXQnLCdEw6lwbGFjZXIgdmVycyBsZSBiYXMnLCdFZmZhY2VyJywnVnVlJywnVGFibGUnLCdDb2xvbm5lJywnSW5kZXgnLCdNb2RpZmllciBsZXMgaW5kZXgnLCdTb3VyY2UnLCdDaWJsZScsJ09OIFVQREFURScsJ01vZGlmaWVyJywnQWpvdXRlciB1bmUgY2zDqSDDqXRyYW5nw6hyZScsJ1RyaWdnZXJzJywnQWpvdXRlciB1biB0cmlnZ2VyJywnU2Now6ltYSBkZSBsYSBiYXNlIGRlIGRvbm7DqWVzJywnUGVybWFuZW50IGxpbmsnLCdFeHBvcnRlcicsJ1NvcnRpZScsJ0Zvcm1hdCcsJ1JvdXRpbmVzJywnw4l2w6huZW1lbnRzJywnRG9ubsOpZXMnLCdtb2RpZmllcicsJ0Nyw6llciB1biB1dGlsaXNhdGV1cicsYXJyYXkoJ1JlcXXDqnRlIGV4w6ljdXTDqWUgYXZlYyBzdWNjw6hzLCAlZCBsaWduZSBtb2RpZmnDqWUuJywnUmVxdcOqdGUgZXjDqWN1dMOpZSBhdmVjIHN1Y2PDqHMsICVkIGxpZ25lcyBtb2RpZmnDqWVzLicpLGFycmF5KCclZCBsaWduZScsJyVkIGxpZ25lcycpLCdFcnJldXIgZGFucyBsYSByZXF1w6p0ZScsJ0F1Y3VuZSBjb21tYW5kZSDDoCBleMOpY3V0ZXIuJyxhcnJheSgnJWQgcmVxdcOqdGUgZXjDqWN1dMOpZSBhdmVjIHN1Y2PDqHMuJywnJWQgcmVxdcOqdGVzIGV4w6ljdXTDqWVzIGF2ZWMgc3VjY8Oocy4nKSwnSW1wb3J0ZXIgdW4gZmljaGllcicsJ0xcJ2ltcG9ydGF0aW9uIGRlIGZpY2hpZXIgZXN0IGTDqXNhY3RpdsOpZS4nLCdFeMOpY3V0ZXInLCdBcnLDqnRlciBlbiBjYXMgZFwnZXJyZXVyJywnTW9udHJlciBzZXVsZW1lbnQgbGVzIGVycmV1cnMnLCdEZXB1aXMgbGUgc2VydmV1cicsJ0ZpY2hpZXIgJXMgZHUgc2VydmV1ciBXZWInLCdFeMOpY3V0ZXIgbGUgZmljaGllcicsJ0hpc3RvcmlxdWUnLCdFZmZhY2VyJywnRWRpdCBhbGwnLCdMXCfDqWzDqW1lbnQgYSDDqXTDqSBzdXBwcmltw6kuJywnTFwnw6lsw6ltZW50IGEgw6l0w6kgbW9kaWZpw6kuJywnTFwnw6lsw6ltZW50JXMgYSDDqXTDqSBpbnPDqXLDqS4nLCdJbnPDqXJlcicsJ1NhdXZlZ2FyZGVyJywnU2F1dmVnYXJkZXIgZXQgY29udGludWVyIGxcJ8OpZGl0aW9uJywnU2F1dmVnYXJkZXIgZXQgaW5zw6lyZXIgbGUgcHJvY2hhaW4nLCdFZmZhY2VyJywnTGEgdGFibGUgYSDDqXTDqSBlZmZhY8OpZS4nLCdMYSB0YWJsZSBhIMOpdMOpIG1vZGlmacOpZS4nLCdMYSB0YWJsZSBhIMOpdMOpIGNyw6nDqWUuJywnQ3LDqWVyIHVuZSB0YWJsZScsJ0xlIG5vbWJyZSBtYXhpbXVtIGRlIGNoYW1wcyBlc3QgZMOpcGFzc8OpLiBWZXVpbGxleiBhdWdtZW50ZXIgJXMgZXQgJXMuJywnTm9tIGRlIGxhIHRhYmxlJywnbW90ZXVyJywnUGFydGl0aW9ubmVyIHBhcicsJ1BhcnRpdGlvbnMnLCdOb20gZGUgbGEgcGFydGl0aW9uJywnVmFsZXVycycsJ0luZGV4IG1vZGlmacOpcy4nLCdUeXBlIGRcJ2luZGV4JywnQ29sb25uZSAobG9uZ3VldXIpJywnTGEgYmFzZSBkZSBkb25uw6llcyBhIMOpdMOpIHN1cHByaW3DqWUuJywnTGEgYmFzZSBkZSBkb25uw6llcyBhIMOpdMOpIHJlbm9tbcOpZS4nLCdMYSBiYXNlIGRlIGRvbm7DqWVzIGEgw6l0w6kgY3LDqcOpZS4nLCdMYSBiYXNlIGRlIGRvbm7DqWVzIGEgw6l0w6kgbW9kaWZpw6llLicsJ0Nyw6llciB1bmUgYmFzZSBkZSBkb25uw6llcycsJ0xlIHNjaMOpbWEgYSDDqXTDqSBzdXBwcmltw6kuJywnTGUgc2Now6ltYSBhIMOpdMOpIGNyw6nDqS4nLCdMZSBzY2jDqW1hIGEgw6l0w6kgbW9kaWZpw6kuJywnQXBwZWxlcicsYXJyYXkoJ0xhIHJvdXRpbmUgYSDDqXTDqSBleMOpY3V0w6llLCAlZCBsaWduZSBtb2RpZmnDqWUuJywnTGEgcm91dGluZSBhIMOpdMOpIGV4w6ljdXTDqWUsICVkIGxpZ25lcyBtb2RpZmnDqWVzLicpLCdMYSBjbMOpIMOpdHJhbmfDqHJlIGEgw6l0w6kgZWZmYWPDqWUuJywnTGEgY2zDqSDDqXRyYW5nw6hyZSBhIMOpdMOpIG1vZGlmacOpZS4nLCdMYSBjbMOpIMOpdHJhbmfDqHJlIGEgw6l0w6kgY3LDqcOpZS4nLCdMZXMgY29sb25uZXMgZGUgc291cmNlIGV0IGRlIGRlc3RpbmF0aW9uIGRvaXZlbnQgw6p0cmUgZHUgbcOqbWUgdHlwZSwgaWwgZG9pdCB5IGF2b2lyIHVuIGluZGV4IHN1ciBsZXMgY29sb25uZXMgZGUgZGVzdGluYXRpb24gZXQgbGVzIGRvbm7DqWVzIHLDqWbDqXJlbmPDqWVzIGRvaXZlbnQgZXhpc3Rlci4nLCdDbMOpIMOpdHJhbmfDqHJlJywnVGFibGUgdmlzw6llJywnTW9kaWZpZXInLCdBam91dGVyIHVuZSBjb2xvbm5lJywnTGEgdnVlIGEgw6l0w6kgZWZmYWPDqWUuJywnTGEgdnVlIGEgw6l0w6kgbW9kaWZpw6llLicsJ0xhIHZ1ZSBhIMOpdMOpIGNyw6nDqWUuJywnQ3LDqWVyIHVuZSB2dWUnLCdOb20nLCdMXCfDqXbDqG5lbWVudCBhIMOpdMOpIHN1cHByaW3DqS4nLCdMXCfDqXbDqG5lbWVudCBhIMOpdMOpIG1vZGlmacOpLicsJ0xcJ8OpdsOobmVtZW50IGEgw6l0w6kgY3LDqcOpLicsJ01vZGlmaWVyIHVuIMOpdsOobmVtZW50JywnQ3LDqWVyIHVuIMOpdsOobmVtZW50JywnRMOpbWFycmVyJywnVGVybWluZXInLCdDaGFxdWUnLCdDb25zZXJ2ZXIgcXVhbmQgY29tcGzDqXTDqScsJ0xhIHJvdXRpbmUgYSDDqXTDqSBzdXBwcmltw6llLicsJ0xhIHJvdXRpbmUgYSDDqXTDqSBtb2RpZmnDqWUuJywnTGEgcm91dGluZSBhIMOpdMOpIGNyw6nDqWUuJywnTW9kaWZpZXIgbGEgZm9uY3Rpb24nLCdNb2RpZmllciBsYSBwcm9jw6lkdXJlJywnQ3LDqWVyIHVuZSBmb25jdGlvbicsJ0Nyw6llciB1bmUgcHJvY8OpZHVyZScsJ1R5cGUgZGUgcmV0b3VyJywnTGEgc8OpcXVlbmNlIGEgw6l0w6kgc3VwcHJpbcOpZS4nLCdMYSBzw6lxdWVuY2UgYSDDqXTDqSBjcsOpw6llLicsJ0xhIHPDqXF1ZW5jZSBhIMOpdMOpIG1vZGlmacOpZS4nLCdNb2RpZmllciBsYSBzw6lxdWVuY2UnLCdDcsOpZXIgdW5lIHPDqXF1ZW5jZScsJ0xlIHR5cGUgYSDDqXTDqSBzdXBwcmltw6kuJywnTGUgdHlwZSBhIMOpdMOpIGNyw6nDqS4nLCdNb2RpZmllciBsZSB0eXBlJywnQ3LDqWVyIHVuIHR5cGUnLCdMZSB0cmlnZ2VyIGEgw6l0w6kgc3VwcHJpbcOpLicsJ0xlIHRyaWdnZXIgYSDDqXTDqSBtb2RpZmnDqS4nLCdMZSB0cmlnZ2VyIGEgw6l0w6kgY3LDqcOpLicsJ01vZGlmaWVyIHVuIHRyaWdnZXInLCdBam91dGVyIHVuIHRyaWdnZXInLCdUZW1wcycsJ8OJdsOobmVtZW50JywnTFwndXRpbGlzYXRldXIgYSDDqXTDqSBlZmZhY8OpLicsJ0xcJ3V0aWxpc2F0ZXVyIGEgw6l0w6kgbW9kaWZpw6kuJywnTFwndXRpbGlzYXRldXIgYSDDqXTDqSBjcsOpw6kuJywnSGFjaMOpJywnUm91dGluZScsJ0dyYW50JywnUmV2b2tlJyxhcnJheSgnJWQgcHJvY2Vzc3VzIGEgw6l0w6kgYXJyw6p0w6kuJywnJWQgcHJvY2Vzc3VzIG9udCDDqXTDqSBhcnLDqnTDqXMuJyksJyVkIGF1IHRvdGFsJywnQXJyw6p0ZXInLGFycmF5KCclZCDDqWzDqW1lbnQgYSDDqXTDqSBtb2RpZmnDqS4nLCclZCDDqWzDqW1lbnRzIG9udCDDqXTDqSBtb2RpZmnDqXMuJyksJ0RvdWJsZS1jbGlxdWV6IHN1ciB1bmUgdmFsZXVyIHBvdXIgbGEgbW9kaWZpZXIuJyxhcnJheSgnJWQgbGlnbmUgYSDDqXTDqSBpbXBvcnTDqWUuJywnJWQgbGlnbmVzIG9udCDDqXTDqSBpbXBvcnTDqWVzLicpLCdJbXBvc3NpYmxlIGRlIHPDqWxlY3Rpb25uZXIgbGEgdGFibGUnLCdSZWxhdGlvbnMnLCdVdGlsaXNleiBsZSBsaWVuICJtb2RpZmllciIgcG91ciBtb2RpZmllciBjZXR0ZSB2YWxldXIuJywnUGFnZScsJ2Rlcm5pw6hyZScsJ3LDqXN1bHRhdCBlbnRpZXInLCdDbG9uZXInLCdJbXBvcnRlcicsJywnLCdMZXMgdGFibGVzIG9udCDDqXTDqSB0cm9ucXXDqWVzLicsJ0xlcyB0YWJsZXMgb250IMOpdMOpIGTDqXBsYWPDqWVzLicsJ1RhYmxlcyBoYXZlIGJlZW4gY29waWVkLicsJ0xlcyB0YWJsZXMgb250IMOpdMOpIGVmZmFjw6llcy4nLCdUYWJsZXMgZXQgdnVlcycsJ1JlY2hlcmNoZXIgZGFucyBsZXMgdGFibGVzJywnTW90ZXVyJywnTG9uZ3VldXIgZGVzIGRvbm7DqWVzJywnTG9uZ3VldXIgZGUgbFwnaW5kZXgnLCdFc3BhY2UgaW51dGlsaXPDqScsJ0xpZ25lcycsJ0FuYWx5c2VyJywnT3B0aW1pc2VyJywnVsOpcmlmaWVyJywnUsOpcGFyZXInLCdUcm9ucXVlcicsJ0TDqXBsYWNlciB2ZXJzIHVuZSBhdXRyZSBiYXNlIGRlIGRvbm7DqWVzJywnRMOpcGxhY2VyJywnQ29weScsJ1PDqXF1ZW5jZXMnLCdIb3JhaXJlJywnw4AgdW4gbW9tZW50IHByw6ljaXMnLCdtYWludGVuYW50Jyk7YnJlYWs7Y2FzZSJpdCI6JFk9YXJyYXkoJ1NpY3Vybz8nLCdDYXJpY2FtZW50byBkZWwgZmlsZSBub24gcml1c2NpdG8uJywnTGEgZGltZW5zaW9uZSBtYXNzaW1hIGRlbCBmaWxlIMOoICVzQi4nLCdJbCBmaWxlIG5vbiBlc2lzdGUuJywndnVvdG8nLCdvcmlnaW5hbGUnLCdObyB0YWJlbGxlLicsJ0xpbmd1YScsJ1VzYScsJ1VzYSB1bmEgZGVsbGUgZXN0ZW5zaW9uaSAlcy4nLCdJbCBmaWxlIGVzaXN0ZSBnacOgLicsJ1RpcGkgZGVmaW5pdGkgZGFsbFwndXRlbnRlJywnTnVtZXJpJywnRGF0YSBlIG9yYScsJ1N0cmluZ2hlJywnQmluYXJpJywnUmV0ZScsJ0dlb21ldHJpYScsJ0xpc3RlJywnU2lzdGVtYScsJ1NlcnZlcicsJ1V0ZW50ZScsJ1Bhc3N3b3JkJywnQXV0ZW50aWNhemlvbmUnLCdMb2dpbiBwZXJtYW5lbnRlJywnVmlzdWFsaXp6YSBkYXRpJywnVmlzdWFsaXp6YSBzdHJ1dHR1cmEnLCdNb2RpZmljYSB2aXN0YScsJ01vZGlmaWNhIHRhYmVsbGEnLCdOdW92byBlbGVtZW50bycsJ1VsdGltYSBwYWdpbmEnLCdNb2RpZmljYScsYXJyYXkoJyVkIGJ5dGUnLCclZCBieXRlcycpLCdTZWxlemlvbmEnLCdGdW56aW9uaScsJ0FnZ3JlZ2F6aW9uZScsJ0NlcmNhJywnb3Z1bnF1ZScsJ09yZGluYScsJ2Rpc2NlbmRlbnRlJywnTGltaXRlJywnTHVuZ2hlenphIHRlc3RvJywnQXppb25lJywnQ29tYW5kbyBTUUwnLCdhcHJpJywnc2FsdmEnLCdNb2RpZmljYSBkYXRhYmFzZScsJ01vZGlmaWNhIHNjaGVtYScsJ0NyZWEgc2NoZW1hJywnRHVtcCcsJ0VzY2knLCdkYXRhYmFzZScsJ3NjaGVtYScsJ0NyZWEgbnVvdmEgdGFiZWxsYScsJ3NlbGV6aW9uYScsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/JywnVG9rZW4gQ1NSRiBub24gdmFsaWRvLiBSZWludmlhIGxhIHJpY2hpZXN0YS4nLCdVc2NpdGEgZWZmZXR0dWF0YSBjb24gc3VjY2Vzc28uJywnTGUgc2Vzc2lvbmkgZGV2b25vIGVzc2VyZSBhYmlsaXRhdGUuJywnU2Vzc2lvbmUgc2NhZHV0YSwgYXV0ZW50aWNhcnNpIGRpIG51b3ZvLicsJ0NyZWRlbnppYWxpIG5vbiB2YWxpZGUuJywnRXN0ZW5zaW9uaSBub24gcHJlc2VudGknLCdOZXNzdW5hIGRlbGxlIGVzdGVuc2lvbmkgUEhQIHN1cHBvcnRhdGUgKCVzKSBkaXNwb25pYmlsZS4nLCdUcm9wcGkgZGF0aSB2aWEgUE9TVC4gUmlkdXJyZSBpIGRhdGkgbyBhdW1lbnRhcmUgbGEgZGlyZXR0aXZhIGRpIGNvbmZpZ3VyYXppb25lICVzLicsJ0RhdGFiYXNlJywnRGF0YWJhc2Ugbm9uIHZhbGlkby4nLCdEYXRhYmFzZSBlbGltaW5hdGkuJywnU2VsZXppb25hIGRhdGFiYXNlJywnQ3JlYSBudW92byBkYXRhYmFzZScsJ1ByaXZpbGVnaScsJ0VsZW5jbyBwcm9jZXNzaScsJ1ZhcmlhYmlsaScsJ1N0YXRvJywnVmVyc2lvbmUgJXM6ICVzIHZpYSBlc3RlbnNpb25lIFBIUCAlcycsJ0F1dGVudGljYXRvIGNvbWU6ICVzJywnQ29sbGF6aW9uZScsJ1RhYmVsbGUnLCdFbGltaW5hJywnQWdnaW9ybmEnLCdTY2hlbWEnLCdTY2hlbWEgbm9uIHZhbGlkby4nLCdOZXNzdW5hIHJpZ2EuJywnJS4zZiBzJywnQ2hpYXZpIGVzdGVybmUnLCdjb2xsYXppb25lJywnT04gREVMRVRFJywnTm9tZSBjb2xvbm5hJywnTm9tZSBwYXJhbWV0cm8nLCdUaXBvJywnTHVuZ2hlenphJywnT3B6aW9uaScsJ0F1dG8gaW5jcmVtZW50bycsJ1ZhbG9yaSBwcmVkZWZpbml0aScsJ0NvbW1lbnRvJywnQWdnaXVuZ2kgYWx0cm8nLCdTcG9zdGEgc3UnLCdTcG9zdGEgZ2l1JywnUmltdW92aScsJ1ZlZGknLCdUYWJlbGxhJywnQ29sb25uYScsJ0luZGljaScsJ01vZGlmaWNhIGluZGljaScsJ1NvcmdlbnRlJywnT2JpZXR0aXZvJywnT04gVVBEQVRFJywnTW9kaWZpY2EnLCdBZ2dpdW5naSBmb3JlaWduIGtleScsJ1RyaWdnZXInLCdBZ2dpdW5naSB0cmlnZ2VyJywnU2NoZW1hIGRhdGFiYXNlJywnUGVybWFuZW50IGxpbmsnLCdFc3BvcnRhJywnUmlzdWx0YXRvJywnRm9ybWF0bycsJ1JvdXRpbmUnLCdFdmVudGknLCdEYXRpJywnbW9kaWZpY2EnLCdDcmVhIHV0ZW50ZScsYXJyYXkoJ0VzZWN1emlvbmUgZGVsbGEgcXVlcnkgT0ssICVkIHJpZ2EgaW50ZXJlc3NhdGEuJywnRXNlY3V6aW9uZSBkZWxsYSBxdWVyeSBPSywgJWQgcmlnaGUgaW50ZXJlc3NhdGUuJyksYXJyYXkoJyVkIHJpZ2EnLCclZCByaWdoZScpLCdFcnJvcmUgbmVsbGEgcXVlcnknLCdOZXNzdW4gY29tbWFuZG8gZGEgZXNlZ3VpcmUuJyxhcnJheSgnJWQgcXVlcnkgZXNlZ3VpdGEgY29uIHN1Y2Nlc3NvLicsJyVkIHF1ZXJ5IGVzZWd1aXRlIGNvbiBzdWNjZXNzby4nKSwnQ2FyaWNhbWVudG8gZmlsZScsJ0NhcmljYW1lbnRvIGZpbGUgZGlzYWJpbGl0YXRvLicsJ0VzZWd1aScsJ1N0b3Agc3UgZXJyb3JlJywnTW9zdHJhIHNvbG8gZ2xpIGVycm9yaScsJ0RhbCBzZXJ2ZXInLCdXZWJzZXJ2ZXIgZmlsZSAlcycsJ0VzZWd1aSBmaWxlJywnU3RvcmljbycsJ1B1bGlzY2knLCdFZGl0IGFsbCcsJ0VsZW1lbnRvIGVsaW1pbmF0by4nLCdFbGVtZW50byBhZ2dpb3JuYXRvLicsJ0VsZW1lbnRvJXMgaW5zZXJpdG8uJywnSW5zZXJpc2NpJywnU2FsdmEnLCdTYWx2YSBlIGNvbnRpbnVhJywnU2FsdmEgZSBpbnNlcmlzY2kgdW4gYWx0cm8nLCdFbGltaW5hJywnVGFiZWxsYSBlbGltaW5hdGEuJywnVGFiZWxsYSBtb2RpZmljYXRhLicsJ1RhYmVsbGEgY3JlYXRhLicsJ0NyZWEgdGFiZWxsYScsJ1Ryb3BwaSBjYW1waS4gUGVyIGZhdm9yZSBhdW1lbnRhcmUgJXMgZSAlcy4nLCdOb21lIHRhYmVsbGEnLCdtb3RvcmUnLCdQYXJ0aXppb25hIHBlcicsJ1BhcnRpemlvbmknLCdOb21lIHBhcnRpemlvbmUnLCdWYWxvcmknLCdJbmRpY2kgbW9kaWZpY2F0aS4nLCdUaXBvIGluZGljZScsJ0NvbG9ubmEgKGx1bmdoZXp6YSknLCdEYXRhYmFzZSBlbGltaW5hdG8uJywnRGF0YWJhc2Ugcmlub21pbmF0by4nLCdEYXRhYmFzZSBjcmVhdG8uJywnRGF0YWJhc2UgbW9kaWZpY2F0by4nLCdDcmVhIGRhdGFiYXNlJywnU2NoZW1hIGVsaW1pbmF0by4nLCdTY2hlbWEgY3JlYXRvLicsJ1NjaGVtYSBtb2RpZmljYXRvLicsJ0NoaWFtYScsYXJyYXkoJ1JvdXRpbmUgY2hpYW1hdGEsICVkIHJpZ2EgaW50ZXJlc3NhdGEuJywnUm91dGluZSBjaGlhbWF0YSwgJWQgcmlnaGUgaW50ZXJlc3NhdGUuJyksJ0ZvcmVpZ24ga2V5IGVsaW1pbmF0YS4nLCdGb3JlaWduIGtleSBtb2RpZmljYXRhLicsJ0ZvcmVpZ24ga2V5IGNyZWF0YS4nLCdMZSBjb2xvbm5lIHNvcmdlbnRlIGUgZGVzdGluYXppb25lIGRldm9ubyBlc3NlcmUgZGVsbG8gc3Rlc3NvIHRpcG8gZSBjaSBkZXZlIGVzc2VyZSB1biBpbmRpY2Ugc3VsbGEgY29sb25uYSBkaSBkZXN0aW5hemlvbmUgZSBzdWkgZGF0aSByZWZlcmVuemlhdGkuJywnRm9yZWlnbiBrZXknLCdUYWJlbGxhIG9iaWV0dGl2bycsJ0NhbWJpYScsJ0FnZ2l1bmdpIGNvbG9ubmEnLCdWaXN0YSBlbGltaW5hdGEuJywnVmlzdGEgbW9kaWZpY2F0YS4nLCdWaXN0YSBjcmVhdGEuJywnQ3JlYSB2aXN0YScsJ05vbWUnLCdFdmVudG8gZWxpbWluYXRvLicsJ0V2ZW50byBtb2RpZmljYXRvLicsJ0V2ZW50byBjcmVhdG8uJywnTW9kaWZpY2EgZXZlbnRvJywnQ3JlYSBldmVudG8nLCdJbml6aW8nLCdGaW5lJywnT2duaScsJ0FsIHRlcm1pbmUgcHJlc2VydmFyZScsJ1JvdXRpbmUgZWxpbWluYXRhLicsJ1JvdXRpbmUgbW9kaWZpY2F0YS4nLCdSb3V0aW5lIGNyZWF0YS4nLCdNb2RpZmljYSBmdW56aW9uZScsJ01vZGlmaWNhIHByb2NlZHVyYScsJ0NyZWEgZnVuemlvbmUnLCdDcmVhIHByb2NlZHVyYScsJ1JldHVybiB0eXBlJywnU2VxdWVuemEgZWxpbWluYXRhLicsJ1NlcXVlbnphIGNyZWF0YS4nLCdTZXF1ZW56YSBtb2RpZmljYXRhLicsJ01vZGlmaWNhIHNlcXVlbnphJywnQ3JlYSBzZXF1ZW56YScsJ1RpcG8gZGVmaW5pdG8gZGFsbFwndXRlbnRlIGVsaW1pbmF0by4nLCdUaXBvIGRlZmluaXRvIGRhbGxcJ3V0ZW50ZSBjcmVhdG8uJywnTW9kaWZpY2EgdGlwbyBkZWZpbml0byBkYWxsXCd1dGVudGUnLCdDcmVhIHRpcG8gZGVmaW5pdG8gZGFsbFwndXRlbnRlJywnVHJpZ2dlciBlbGltaW5hdG8uJywnVHJpZ2dlciBtb2RpZmljYXRvLicsJ1RyaWdnZXIgY3JlYXRvLicsJ01vZGlmaWNhIHRyaWdnZXInLCdDcmVhIHRyaWdnZXInLCdPcmFyaW8nLCdFdmVudG8nLCdVdGVudGUgZWxpbWluYXRvLicsJ1V0ZW50ZSBtb2RpZmljYXRvLicsJ1V0ZW50ZSBjcmVhdG8uJywnSGFzaGVkJywnUm91dGluZScsJ1Blcm1ldHRpJywnUmV2b2NhJyxhcnJheSgnJWQgcHJvY2Vzc28gaW50ZXJyb3R0by4nLCclZCBwcm9jZXNzaSBpbnRlcnJvdHRpLicpLCclZCBpbiB0b3RhbGUnLCdJbnRlcnJvbXBpJyxhcnJheSgnSWwgcmlzdWx0YXRvIGNvbnNpc3RlIGluICVkIGVsZW1lbnRvLicsJ0lsIHJpc3VsdGF0byBjb25zaXN0ZSBpbiAlZCBlbGVtZW50aS4nKSwnRmFpIGRvcHBpbyBjbGljayBzdSB1biB2YWxvcmUgcGVyIG1vZGlmaWNhcmxvLicsYXJyYXkoJyVkIHJpZ2EgaW1wb3J0YXRhLicsJyVkIHJpZ2hlIGltcG9ydGF0ZS4nKSwnU2VsZXppb25lIGRlbGxhIHRhYmVsbGEgbm9uIHJpdXNjaXRhJywnUmVsYXppb25pJywnVXNhIGlsIGxpbmsgbW9kaWZpY2EgcGVyIG1vZGlmaWNhcmUgcXVlc3RvIHZhbG9yZS4nLCdQYWdpbmEnLCd1bHRpbWEnLCdpbnRlcm8gcmlzdWx0YXRvJywnQ2xvbmEnLCdJbXBvcnRhJywnLicsJ0xlIHRhYmVsbGUgc29ubyBzdGF0ZSBzdnVvdGF0ZS4nLCdMZSB0YWJlbGxlIHNvbm8gc3RhdGUgc3Bvc3RhdGUuJywnVGFibGVzIGhhdmUgYmVlbiBjb3BpZWQuJywnTGUgdGFiZWxsZSBzb25vIHN0YXRlIGVsaW1pbmF0ZS4nLCdUYWJlbGxlIGUgdmlzdGUnLCdDZXJjYSBuZWxsZSB0YWJlbGxlJywnTW90b3JlJywnTHVuZ2hlenphIGRhdG8nLCdMdW5naGV6emEgaW5kaWNlJywnRGF0aSBsaWJlcmknLCdSaWdoZScsJ0FuYWxpenphJywnT3R0aW1penphJywnQ29udHJvbGxhJywnUmlwYXJhJywnU3Z1b3RhJywnU3Bvc3RhIGluIGFsdHJvIGRhdGFiYXNlJywnU3Bvc3RhJywnQ29weScsJ1NlcXVlbnphJywnUGlhbmlmaWNhJywnQSB0ZW1wbyBwcmVzdGFiaWxpdG8nLCdhZGVzc28nKTticmVhaztjYXNlImV0IjokWT1hcnJheSgnS2FzIG9sZWQga2luZGVsPycsJ0ZhaWxpIMO8bGVzbGFhZGltaW5lIHBvbGUgdsO1aW1hbGlrLicsJ01ha3NpbWFhbG5lIGZhaWxpc3V1cnVzICVzQi4nLCdGYWlsaSBlaSBsZWl0dWQuJywndMO8aGknLCdvcmlnaW5hYWwnLCdUYWJlbGVpZCBlaSBsZWl0dWQuJywnS2VlbCcsJ0thc3V0YScsJ1BhbHVuIGthc3V0YSDDvGh0IGxhaWVuZHVzdGVzdCAlcy4nLCdGYWlsIGp1YmEgZWtzaXN0ZWVyaWIuJywnS2FzdXRhamF0w7zDvGJpZCcsJ051bWJyaWxpc2VkJywnS3V1cMOkZXYgamEga2VsbGFhZWcnLCdUZWtzdGlkJywnQmluYWFyJywnVsO1cmsgKG5ldHdvcmspJywnR2VvbWVldHJpYScsJ0xpc3RpZCcsJ0FuZG1lYmFhc2ltb290b3InLCdTZXJ2ZXInLCdLYXN1dGFqYW5pbWknLCdQYXJvb2wnLCdMb2dpIHNpc3NlJywnSsOkdGEgbWluZCBtZWVsZGUnLCdWYWF0YSBhbmRtZWlkJywnTsOkaXRhIHN0cnVrdHV1cmknLCdNdXVkYSB2YWFkZXQgKFZJRVcpJywnTXV1ZGEgdGFiZWxpIHN0cnVrdHV1cmknLCdMaXNhIGtpcmplJywnVmlpbWFuZSBsZWhla8O8bGcnLCdNdXVkYScsYXJyYXkoJyVkIGJhaXQnLCclZCBiYWl0aScpLCdLdXZhJywnRnVua3RzaW9vbmlkJywnTGlpdG1pbmUnLCdPdHNpJywndmFoZXQgcG9sZScsJ1NvcnRlZXJpJywna2FoYW5ldmFsdCcsJ1BpaXJhJywnVGVrc3RpIHBpa2t1cycsJ1RlZ2V2dXMnLCdTUUwtUMOkcmluZycsJ27DpGl0YSBicmF1c2VyaXMnLCdzYWx2ZXN0YSBmYWlsaW5hJywnTXV1ZGEgYW5kbWViYWFzaScsJ011dWRhIHN0cnVrdHV1cmknLCdMb28gc3RydWt0dXVyJywnRWtzcG9yZGknLCdMb2dpIHbDpGxqYScsJ2FuZG1lYmFhcycsJ3N0cnVrdHV1cicsJ0xvbyB1dXMgdGFiZWwnLCdrdXZhJywnbHRyJywnUmVzZW5kIFBPU1QgZGF0YT8nLCdTb2JpbWF0dSBDU1JGLCBwYWx1biBwb3N0aXRhZ2Ugdm9ybSB1dWVzdGkuJywnVsOkbGphbG9naW1pbmUgw7VubmVzdHVzLicsJ1Nlc3Npb29uaWQgcGVhdmFkIG9sZW1hIGx1YmF0dWQuJywnU2Vzc2lvb24gb24gYWVndW51ZCwgcGFsdW4gbG9naWdlIHV1ZXN0aSBzaXNzZS4nLCdFYmFrb3JyZWt0c2VkIGFuZG1lZC4nLCdFaSBsZWl0dWQgbGFpZW5kdXN0JywnU2VydmVyaXMgcG9sZSDDvGh0ZWdpIHRvZXRhdHVkIFBIUCBsYWllbmR1c3Rlc3QgKCVzKS4nLCdQT1NULWFuZG1ldGUgbWFodCBvbiBsaWlhbHQgc3V1ci4gUGFsdW4gdsOkaGVuZGFnZSBhbmRtZWlkIHbDtWkgc3V1cmVuZGFnZSAlcyBwaHAtc2VhZGV0LicsJ0FuZG1lYmFhcycsJ1R1bmRtYXR1IGFuZG1lYmFhcy4nLCdBbmRtZWJhYXNpZCBvbiBlZHVrYWx0IGt1c3R1dGF0dWQuJywnVmFsaSBhbmRtZWJhYXMnLCdMb28gdXVzIGFuZG1lYmFhcycsJ8OVaWd1c2VkJywnUHJvdHNlc3NpZGUgbmltZWtpcmknLCdNdXV0dWphZCcsJ1N0YWF0dXMnLCclcyB2ZXJzaW9vbjogJXMsIGthc3V0YXR1ZCBQSFAgbW9vZHVsOiAlcycsJ1Npc3NlIGxvZ2l0dWQ6ICVzJywnVMOkaGV0YWJlbCcsJ1RhYmVsaWQnLCdLdXN0dXRhJywnVXVlbmRhJywnU3RydWt0dXVyJywnU29iaW1hdHUgc2tlZW1hLicsJ1Npc3Nla2FuZGVkIHB1dWR1dmFkLicsJyUuM2YgcycsJ1bDtcO1cnbDtXRtZWQgKGZvcmVpZ24ga2V5KScsJ3TDpGhldGFiZWwnLCdPTiBERUxFVEUnLCdWZWVydSBuaW1pJywnUGFyYW1lZXRyaSBuaW1pJywnVMO8w7xwJywnUGlra3VzJywnVmFsaWt1ZCcsJ0F1dG9tYWF0c2VsdCBzdXVyZW5ldicsJ1ZhaWtpbWlzaSB2w6TDpHJ0dXNlZCcsJ0tvbW1lbnRhYXInLCdMaXNhIGrDpHJnbWluZScsJ0xpaWd1dGEgw7xsZXNwb29sZScsJ0xpaWd1dGEgYWxsYXBvb2xlJywnRWVtYWxkYScsJ1ZhYXRhJywnVGFiZWwnLCdWZWVyZycsJ0luZGVrc2lkJywnTXV1ZGEgaW5kZWtzZWlkJywnQWxsaWthcycsJ1NpaHRrb2h0JywnT04gVVBEQVRFJywnTXV1ZGEnLCdMaXNhIHbDtcO1cnbDtXRpJywnUMOkw6RzdGlrdWQgKHRyaWdnZXIpJywnTGlzYSBww6TDpHN0aWsgKFRSSUdHRVIpJywnQW5kbWViYWFzaSBza2VlbScsJ1Blcm1hbmVudCBsaW5rJywnRWtzcG9yZGknLCdWw6RsanVuZCcsJ0Zvcm1hYXQnLCdQcm90c2VkdXVyaWQnLCdTw7xuZG11c2VkIChFVkVOVFMpJywnQW5kbWVkJywnbXV1ZGEnLCdMb28gdXVzIGthc3V0YWphJywnUMOkcmluZyDDtW5uZXN0dXMsIG3DtWp1dGF0YXR1ZCByaWR1OiAlZC4nLCclZCByaWRhJywnUMOkcmluZ3VzIGVzaW5lcyB2aWdhJywnS8Okc2sgcHV1ZHViLicsYXJyYXkoJyVkIHDDpHJpbmcgZWR1a2FsdCBrw6Rpdml0YXR1ZC4nLCclZCBww6RyaW5ndXQgZWR1a2FsdCBrw6Rpdml0YXR1ZC4nKSwnRmFpbGkgw7xsZXNsYWFkaW1pbmUnLCdGYWlsaWRlIMO8bGVzbGFhZGltaW5lIG9uIGtlZWxhdHVkLicsJ0vDpGl2aXRhJywnUGVhdHVkYSB2ZWEgZXNpbmVtaXNlbCcsJ0t1dmEgdmFpZCB2ZWF0ZWF0ZWlkJywnU2VydmVyaXN0JywnRmFpbCBzZXJ2ZXJpczogJXMnLCdLw6Rpdml0YSBmYWlsJywnQWphbHVndScsJ1B1aGFzdGEnLCdFZGl0IGFsbCcsJ0t1c3R1dGFtaW5lIMO1bm5lc3R1cy4nLCdVdWVuZGFtaW5lIMO1bm5lc3R1cy4nLCdLaXJqZSVzIG9uIGVkdWthbHQgbGlzYXR1ZC4nLCdTaXNlc3RhJywnU2FsdmVzdGEnLCdTYWx2ZXN0YSBqYSBqw6R0a2EgbXV1dG1pc3QnLCdTYWx2ZXN0YSBqYSBsaXNhIGrDpHJnbWluZScsJ0t1c3R1dGEnLCdUYWJlbCBvbiBlZHVrYWx0IGt1c3R1dGF0dWQuJywnVGFiZWxpIGFuZG1lZCBvbiBlZHVrYWx0IG11dWRldHVkLicsJ1RhYmVsIG9uIGVkdWthbHQgbG9vZHVkLicsJ0xvbyB1dXMgdGFiZWwnLCdNYWtzaW1hYWxuZSB2w6RsamFkZSBhcnYgw7xsZXRhdHVkLiBQYWx1biBzdXVyZW5kYWdlICVzIGphICVzLicsJ1RhYmVsaSBuaW1pJywnYW5kbWViYWFzaW1vb3RvcicsJ1BhcnRpdHNpb29uaScsJ1BhcnRpdHNpb29uaWQnLCdQYXJ0aXRzaW9vbmkgbmltaScsJ1bDpMOkcnR1c2VkJywnSW5kZWtzaXRlIGFuZG1lZCBvbiBlZHVrYWx0IHV1ZW5kYXR1ZC4nLCdJbmRla3NpIHTDvMO8cCcsJ1ZlZXJnIChwaWtrdXMpJywnQW5kbWViYWFzIG9uIGVkdWthbHQga3VzdHV0YXR1ZC4nLCdBbmRtZWJhYXMgb24gZWR1a2FsdCDDvG1iZXIgbmltZXRhdHVkLicsJ0FuZG1lYmFhcyBvbiBlZHVrYWx0IGxvb2R1ZC4nLCdBbmRtZWJhYXNpIHN0cnVrdHV1cmkgdXVlbmRhbWluZSDDtW5uZXN0dXMuJywnTG9vIHV1cyBhbmRtZWJhYXMnLCdTdHJ1a3R1dXIgb24gZWR1a2FsdCBrdXN0dXRhdHVkLicsJ1N0cnVrdHV1ciBvbiBlZHVrYWx0IGxvb2R1ZC4nLCdTdHJ1a3R1dXIgb24gZWR1a2FsdCBtdXVkZXR1ZC4nLCdLw6Rpdml0YScsJ1Byb3RzZWR1dXIgdMOkaWRldGkgZWR1a2FsdCwgbcO1anV0YXR1ZCByaWR1OiAlZC4nLCdWw7XDtXJ2w7V0aSBvbiBlZHVrYWx0IGt1c3R1dGF0dWQuJywnVsO1w7VydsO1dG1lIGFuZG1lZCBvbiBlZHVrYWx0IG11dWRldHVkLicsJ1bDtcO1cnbDtXJpIG9uIGVkdWthbHQgbG9vZHVkLicsJ0zDpGh0ZS0gamEgc2lodHZlZXJ1ZCBwZWF2YWQgZWtzaXN0ZWVyaW1hIGphIG9tYW1hIHNhbWEgYW5kbWV0w7zDvHBpLCBzaWh0dmVlcmd1ZGVsIHBlYWIgb2xlbWEgbcOkw6RyYXR1ZCBpbmRla3MgbmluZyB2aWlkYXR1ZCBhbmRtZWQgcGVhdmFkIGVrc2lzdGVlcmltYS4nLCdWw7XDtXJ2w7V0aScsJ1NpaHQtdGFiZWwnLCdNdXVkYScsJ0xpc2EgdmVlcmcnLCdWYWFkZSAoVklFVykgb24gZWR1a2FsdCBrdXN0dXRhdHVkLicsJ1ZhYWRlIChWSUVXKSBvbiBlZHVrYWx0IG11dWRldHVkLicsJ1ZhYWRlIChWSUVXKSBvbiBlZHVrYWx0IGxvb2R1ZC4nLCdMb28gdXVzIHZhYWRlIChWSUVXKScsJ05pbWknLCdTw7xuZG11cyBvbiBlZHVrYWx0IGt1c3R1dGF0dWQuJywnU8O8bmRtdXNlIGFuZG1lZCBvbiBlZHVrYWx0IHV1ZW5kYXR1ZC4nLCdTw7xuZG11cyBvbiBlZHVrYWx0IGxvb2R1ZC4nLCdNdXVkYSBzw7xuZG11c2UgYW5kbWVpZCcsJ0xvbyB1dXMgc8O8bmRtdXMgKEVWRU5UKScsJ0FsdXN0YScsJ0zDtXBldGEnLCdJZ2EnLCdMw7VwZXRhbWlzZWwgasOkdGEgc8O8bmRtdXMgYWxsZXMnLCdQcm90c2VkdXVyIG9uIGVkdWthbHQga3VzdHV0YXR1ZC4nLCdQcm90c2VkdXVyaSBhbmRtZWQgb24gZWR1a2FsdCBtdXVkZXR1ZC4nLCdQcm90c2VkdXVyIG9uIGVkdWthbHQgbG9vZHVkLicsJ011dWRhIGZ1bmt0c2lvb25pJywnTXV1ZGEgcHJvdHNlZHV1cmknLCdMb28gdXVzIGZ1bmt0c2lvb24nLCdMb28gdXVzIHByb3RzZWR1dXInLCdUYWdhc3R1c3TDvMO8cCcsJ0phZGEgb24gZWR1a2FsdCBrdXN0dXRhdHVkLicsJ0phZGEgb24gZWR1a2FsdCBsb29kdWQuJywnSmFkYSBvbiBlZHVrYWx0IG11dWRldHVkLicsJ011dWRhIGphZGEnLCdMb28gamFkYScsJ1TDvMO8cCBvbiBlZHVrYWx0IGt1c3R1dGF0dWQuJywnVMO8w7xwIG9uIGVkdWthbHQgbG9vZHVkLicsJ011dWRhIHTDvMO8cGknLCdMb28gdMO8w7xwJywnUMOkw6RzdGlrIG9uIGVkdWthbHQga3VzdHV0YXR1ZC4nLCdQw6TDpHN0aWt1IGFuZG1lZCBvbiBlZHVrYWx0IHV1ZW5kYXR1ZC4nLCdVdXMgcMOkw6RzdGlrIG9uIGVkdWthbHQgbG9vZHVkLicsJ011dWRhIHDDpMOkc3Rpa3UgYW5kbWVpZCcsJ0xvbyB1dXMgcMOkw6RzdGlrIChUUklHR0VSKScsJ0FlZycsJ1PDvG5kbXVzJywnS2FzdXRhamEgb24gZWR1a2FsdCBrdXN0dXRhdHVkLicsJ0thc3V0YWphIGFuZG1lZCBvbiBlZHVrYWx0IG11dWRldHVkLicsJ0thc3V0YWphIG9uIGVkdWthbHQgbGlzYXR1ZC4nLCdIw6RzaGl0dWQgKEhhc2hlZCknLCdQcm90c2VkdXVyJywnQW5uYScsJ0VlbWFsZGEnLGFycmF5KCdQcm90c2VzcyBvbiBlZHVrYWx0IHBlYXRhdHVkICglZCkuJywnVmFsaXR1ZCBwcm90c2Vzc2lkICglZCkgb24gZWR1a2FsdCBwZWF0YXR1ZC4nKSwnS29ra3U6ICVkJywnUGVhdGEnLCdNw7VqdXRhdHVkIGtpcmplaWQ6ICVkLicsJ1bDpMOkcnR1c2UgbXV1dG1pc2VrcyB0b3BlbHQta2xpa2kgc2VsbGVsLicsJ0ltcG9yZGl0aSAlZCByaWRhLicsJ1RhYmVsaSB2YWxpbWluZSBlYmHDtW5uZXN0dXMnLCdTZW9zZWQnLCdWw6TDpHJ0dXNlIG11dXRtaXNla3Mga2FzdXRhIG11dXRtaXNsaW5raS4nLCdMZWhla8O8bGcnLCd2aWltYW5lJywnVMOkaWVsaWt1ZCB0dWxlbXVzZWQnLCdLbG9vbicsJ0ltcG9yZGknLCcsJywnVmFsaWR1ZCB0YWJlbGlkIG9uIGVkdWthbHQgdMO8aGplbmRhdHVkLicsJ1ZhbGl0dWQgdGFiZWxpZCBvbiBlZHVrYWx0IGxpaWd1dGF0dWQuJywnVGFibGVzIGhhdmUgYmVlbiBjb3BpZWQuJywnVmFsaXR1ZCB0YWJlbGlkIG9uIGVkdWthbHQga3VzdHV0YXR1ZC4nLCdUYWJlbGlkIGphIHZhYXRlZCcsJ090c2kga29ndSBhbmRtZWJhYXNpc3QnLCdJbXBsZW1lbnRhdHNpb29uJywnQW5kbWV0ZSBwaWtrdXMnLCdJbmRla3NpIHBpa2t1cycsJ1ZhYmEgcnV1bWknLCdSaWR1JywnQW5hbMO8w7xzaScsJ09wdGltZWVyaScsJ0tvbnRyb2xsaScsJ1BhcmFuZGEnLCdUw7xoamVuZGEnLCdMaWlndXRhIHRlaXNlIGFuZG1lYmFhc2knLCdMaWlndXRhJywnQ29weScsJ0phZGFkIChzZXF1ZW5jZXMpJywnQWpha2F2YScsJ0FudHVkIGFqYWhldGtlbCcsJ27DvMO8ZCcpO2JyZWFrO2Nhc2UiaHUiOiRZPWFycmF5KCdCaXp0b3MgYmVubmU/JywnTmVtIHR1ZG9tIGZlbHTDtmx0ZW5pIGEgZsOhamx0LicsJ0EgbWF4aW3DoWxpcyBmw6FqbG3DqXJldCAlcyBCLicsJ0EgZsOhamwgbmVtIGzDqXRlemlrLicsJ8O8cmVzJywnZXJlZGV0aScsJ05pbmNzIHTDoWJsYS4nLCdOeWVsdicsJ0hhc3puw6FsJywnSGFzem7DoWxqYSBhKHopICVzIGtpdGVyamVzenTDqXN0LicsJ0EgZsOhamwgbMOpdGV6aWsuJywnRmVsaGFzem7DoWzDs2kgdMOtcHVzJywnU3rDoW0nLCdEw6F0dW0gw6lzIGlkxZEnLCdTesO2dmVnJywnQmluw6FyaXMnLCdIw6Fsw7N6YXQnLCdHZW9tZXRyaWEnLCdMaXN0YScsJ0FkYXRiw6F6aXMnLCdTemVydmVyJywnRmVsaGFzem7DoWzDsycsJ0plbHN6w7MnLCdCZWzDqXDDqXMnLCdFbWzDqWtlenogcsOhbScsJ1RhcnRhbG9tJywnU3RydWt0w7pyYScsJ07DqXpldCBtw7Nkb3PDrXTDoXNhJywnVMOhYmxhIG3Ds2Rvc8OtdMOhc2EnLCfDmmogdMOpdGVsJywnVXRvbHPDsyBvbGRhbCcsJ1N6ZXJrZXN6dCcsYXJyYXkoJyVkIGLDoWp0JywnJWQgYsOhanQnLCclZCBiw6FqdCcpLCdLaXbDoWxhc3p0JywnRnVua2Npw7NrJywnQWdncmVnw6Fsw6FzJywnS2VyZXPDqXMnLCdiw6FyaG9sJywnU29yYmEgcmVuZGV6w6lzJywnY3PDtmtrZW7FkScsJ2tvcmzDoXQnLCdTesO2dmVnIGhvc3N6JywnTcWxdmVsZXQnLCdTUUwgcGFyYW5jcycsJ21lZ255aXQnLCdtZW50JywnQWRhdGLDoXppcyBtw7Nkb3PDrXTDoXNhJywnU8OpbWEgbcOzZG9zw610w6FzYScsJ1PDqW1hIGzDqXRyZWhvesOhc2EnLCdFeHBvcnTDoWzDoXMnLCdLaWzDqXDDqXMnLCdhZGF0YsOhemlzJywnc8OpbWEnLCfDmmogdMOhYmxhJywna2l2w6FsYXN6dCcsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/Jywnw4lydsOpbnl0ZWxlbiBDU1JGIGF6b25vc8OtdMOzLiBLw7xsZGQgw7pqcmEgYXogxbFybGFwb3QuJywnU2lrZXJlcyBraWzDqXDDqXMuJywnQSBtdW5rYW1lbmV0ZWtuZWsgKHNlc3Npb24pIGVuZ2Vkw6lseWV6dmUga2VsbCBsZW5uaWUuJywnTXVua2FtZW5ldCBsZWrDoXJ0LCBqZWxlbnRrZXp6IGJlIMO6anJhLicsJ8OJcnbDqW55dGVsZW4gYWRhdG9rLicsJ05pbmNzIGtpdGVyamVzenTDqXMnLCdOaW5jcyBlZ3kgZWzDqXJoZXTFkSB0w6Ftb2dhdG90dCBQSFAga2l0ZXJqZXN6dMOpcyAoJXMpIHNlbS4nLCdUw7psIHNvayBhIFBPU1QgYWRhdCEgQ3PDtmtrZW50c2QgYXogYWRhdCBtw6lyZXTDqXQsIHZhZ3kgbsO2dmVsZCBhICVzIGJlw6FsbMOtdMOhc3QuJywnQWRhdGLDoXppcycsJ8OJcnbDqW55dGVsZW4gYWRhdGLDoXppcy4nLCdBZGF0YsOhemlzIGVsZG9idmEuJywnQWRhdGLDoXppcyBraXbDoWxhc3p0w6FzYScsJ8OaaiBhZGF0YsOhemlzJywnUHJpdmlsw6lnaXVtb2snLCdGb2x5YW1hdG9rJywnVsOhbHRvesOzaycsJ8OBbGxhcG90JywnJXMgdmVyemnDszogJXMsIFBIUDogJXMnLCdCZWzDqXB2ZTogJXMnLCdFZ3liZXZldMOpcycsJ1TDoWJsw6FrJywnRWxkb2InLCdGcmlzc8OtdMOpcycsJ1PDqW1hJywnw4lydsOpbnl0ZWxlbiBzw6ltYS4nLCdOaW5jcyBtZWdqZWxlbsOtdGhldMWRIGVyZWRtw6lueS4nLCclLjNmIG3DoXNvZHBlcmMnLCdJZGVnZW4ga3VsY3MnLCdlZ3liZXZldMOpcycsJ3TDtnJsw6lza29yJywnT3N6bG9wIG5ldmUnLCdQYXJhbcOpdGVyIG5ldmUnLCdUw61wdXMnLCdIb3NzeicsJ09wY2nDs2snLCdBdXRvbWF0aWt1cyBuw7Z2ZWzDqXMnLCdBbGFww6lydGVsbWV6ZXR0IMOpcnTDqWtlaycsJ01lZ2plZ3l6w6lzJywnS8O2dmV0a2V6xZEgaG96esOhYWTDoXNhJywnRmVsZmVsw6knLCdMZWZlbMOpJywnRWx0w6F2b2zDrXTDoXMnLCdOw6l6ZXQnLCdUw6FibGEnLCdPc3psb3AnLCdJbmRleGVrJywnSW5kZXggbcOzZG9zw610w6FzYScsJ0ZvcnLDoXMnLCdDw6lsJywnZnJpc3PDrXTDqXNrb3InLCdNw7Nkb3PDrXTDoXMnLCdJZGVnZW4ga3VsY3MgaG96emFkw6FzYScsJ1RyaWdnZXInLCdUcmlnZ2VyIGhvenrDoWFkw6FzYScsJ0FkYXRiw6F6aXMgc8OpbWEnLCdQZXJtYW5lbnQgbGluaycsJ0V4cG9ydCcsJ0tpbWVuZXQnLCdGb3Jtw6F0dW0nLCdSdXRpbm9rJywnRXNlbcOpbnknLCdBZGF0Jywnc3plcmtlc3p0JywnRmVsaGFzem7DoWzDsyBob3p6w6FhZMOhc2EnLGFycmF5KCdMZWvDqXJkZXrDqXMgc2lrZXJlc2VuIHbDqWdyZWhhanR2YSwgJWQgc29yIMOpcmludGV0dC4nLCdMZWvDqXJkZXrDqXMgc2lrZXJlc2VuIHbDqWdyZWhhanR2YSwgJWQgc29yIMOpcmludGV0dC4nLCdMZWvDqXJkZXrDqXMgc2lrZXJlc2VuIHbDqWdyZWhhanR2YSwgJWQgc29yIMOpcmludGV0dC4nKSxhcnJheSgnJWQgc29yJywnJWQgc29yJywnJWQgc29yJyksJ0hpYmEgYSBsZWvDqXJkZXrDqXNiZW4nLCdOaW5jcyB2w6lncmVoYWp0aGF0w7MgcGFyYW5jcy4nLCclZCBzaWtlcmVzIGxla8OpcmRlesOpcy4nLCdGw6FqbCBmZWx0w7ZsdMOpc2UnLCdBIGbDoWpsIGZlbHTDtmx0w6lzIGxlIHZhbiB0aWx0dmEuJywnVsOpZ3JlaGFqdCcsJ0hpYmEgZXNldMOpbiBtZWfDoWxsJywnQ3NhayBhIGhpYsOhayBtdXRhdMOhc2EnLCdTemVydmVycsWRbCcsJ1dlYnN6ZXJ2ZXIgZsOhamwgJXMnLCdGw6FqbCBmdXR0YXTDoXNhJywnVMO2cnTDqW5ldCcsJ1TDtnJsw6lzJywnRWRpdCBhbGwnLCdBIHTDqXRlbCB0w7Zyw7ZsdmUuJywnQSB0w6l0ZWwgZnJpc3PDrXR2ZS4nLCclcyB0w6l0ZWwgYmVzesO6cnZhLicsJ0Jlc3rDunInLCdNZW50w6lzJywnTWVudMOpcyDDqXMgc3plcmtlc3p0w6lzIGZvbHl0YXTDoXNhJywnTWVudMOpcyDDqXMgw7pqYXQgYmVzesO6cicsJ1TDtnJsw6lzJywnQSB0w6FibGEgZWxkb2J2YS4nLCdBIHTDoWJsYSBtw7Nkb3N1bHQuJywnQSB0w6FibGEgbMOpdHJlasO2dHQuJywnVMOhYmxhIGzDqXRyZWhvesOhc2EnLCdBIG1heGltw6FsaXMgbWV6xZFzesOhbW90IGVsw6lydGVkLiBOw7Z2ZWxkIG1lZyBlemVrZXQ6ICVzLCAlcy4nLCdUw6FibGEgbsOpdicsJ21vdG9yJywnUGFydGljaW9uw6Fsw6FzIGV6emVsJywnUGFydGljacOzaycsJ1BhcnRpY2nDsyBuZXZlJywnw4lydMOpa2VrJywnQXogaW5kZXhlayBtZWd2w6FsdG96dGFrLicsJ0luZGV4IHTDrXB1c2EnLCdPc3pvcCAobcOpcmV0KScsJ0F6IGFkYXRiw6F6aXMgZWxkb2J2YS4nLCdBeiBhZGFkdGLDoXppcyDDoXRuZXZlenZlLicsJ0F6IGFkYXRiw6F6aXMgbMOpdHJlasO2dHQuJywnQXogYWRhdGLDoXppcyBtw7Nkb3N1bHQuJywnQWRhdGLDoXppcyBsw6l0cmVob3rDoXNhJywnU8OpbWEgZWxkb2J2YS4nLCdTw6ltYSBsw6l0cmVqw7Z0dC4nLCdTw6ltYSBtw7Nkb3N1bHQuJywnTWVnaMOtdicsYXJyYXkoJ1J1dGluIG1lZ2jDrXZ2YSwgJWQgc29yIMOpcmludGV0dC4nLCdSdXRpbiBtZWdow612dmEsICVkIHNvciDDqXJpbnRldHQuJywnUnV0aW4gbWVnaMOtdnZhLCAlZCBzb3Igw6lyaW50ZXR0LicpLCdJZGVnZW4ga3VsY3MgZWxkb2J2YS4nLCdJZGVnZW4ga3VsY3MgbcOzZG9zdWx0LicsJ0lkZWdlbiBrdWxjcyBsw6l0cmVqw7Z0dC4nLCdBIGZvcnLDoXMgw6lzIGPDqWwgb3N6bG9wb2tuYWsgYXpvbm9zIHTDrXB1c8O6YWsgbGVneWVuZWssIGEgY8OpbCBvc3psb3BvayBpbmRleGVsdGVrIGxlZ3llbmVrLCDDqXMgYSBoaXZhdGtvem90dCBhZGF0bmFrIGzDqXRlem5pZSBrZWxsLicsJ0lkZWdlbiBrdWxjcycsJ0PDqWwgdMOhYmxhJywnVsOhbHRvenRhdCcsJ09zemxvcCBob3p6w6FhZMOhc2EnLCdBIG7DqXpldCBlbGRvYnZhLicsJ0EgbsOpemV0IG3Ds2Rvc3VsdC4nLCdBIG7DqXpldCBsw6l0cmVqw7Z0dC4nLCdOw6l6ZXQgbMOpdHJlaG96w6FzYScsJ07DqXYnLCdBeiBlc2Vtw6lueSBlbGRvYnZhLicsJ0F6IGVzZW3DqW55IG3Ds2Rvc3VsdC4nLCdBeiBlc2Vtw6lueSBsw6l0cmVqw7Z0dC4nLCdFc2Vtw6lueSBtw7Nkb3PDrXTDoXNhJywnRXNlbcOpbnkgbMOpdHJlaG96w6FzYScsJ0tlemQnLCdWw6lnZScsJ01pbmRlbicsJ0JlZmVqZXrDqXNrb3IgbWVnxZFyemknLCdBIHJ1dGluIGVsZG9idmEuJywnQSBydXRpbiBtw7Nkb3N1bHQuJywnQSBydXRpbiBsw6l0cmVqw7Z0dC4nLCdGdW5rY2nDsyBtw7Nkb3PDrXTDoXNhJywnRWxqw6Fyw6FzIG3Ds2Rvc8OtdMOhc2EnLCdGdW5rY2nDsyBsw6l0cmVob3rDoXNhJywnRWxqw6Fyw6FzIGzDqXRyZWhvesOhc2EnLCdWaXNzemF0w6lyw6lzaSDDqXJ0w6lrJywnU29yb3phdCBlbGRvYnZhLicsJ1Nvcm96YXQgbMOpdHJlasO2dHQuJywnU29yb3phdCBtw7Nkb3N1bHQuJywnU29yb3phdCBtw7Nkb3PDrXTDoXNhJywnU29yb3phdCBsw6l0cmVob3rDoXNhJywnVMOtcHVzIGVsZG9idmEuJywnVMOtcHVzIGzDqXRyZWhvenZhLicsJ1TDrXB1cyBtw7Nkb3PDrXTDoXNhJywnVMOtcHVzIGzDqXRyZWhvesOhc2EnLCdBIHRyaWdnZXIgZWxkb2J2YS4nLCdBIHRyaWdnZXIgbcOzZG9zdWx0LicsJ0EgdHJpZ2dlciBsw6l0cmVqw7Z0dC4nLCdUcmlnZ2VyIG3Ds2Rvc8OtdMOhc2EnLCdUcmlnZ2VyIGzDqXRyZWhvesOhc2EnLCdJZMWRJywnRXNlbcOpbnknLCdBIGZlbGhhc3puw6Fsw7MgZWxkb2J2YS4nLCdBIGZlbGhhc3puw6Fsw7MgbcOzZG9zdWx0LicsJ0EgZmVsaGFzem7DoWzDsyBsw6l0cmVqw7Z0dC4nLCdIYXNoZWQnLCdSdXRpbicsJ0VuZ2Vkw6lseWV6w6lzJywnVmlzc3phdm9uw6FzJyxhcnJheSgnJWQgZm9seWFtYXQgbGXDoWxsw610dmEuJywnJWQgZm9seWFtYXQgbGXDoWxsw610dmEuJywnJWQgZm9seWFtYXQgbGXDoWxsw610dmEuJyksJ8O2c3N6ZXNlbiAlZCcsJ0xlw6FsbMOtdCcsYXJyYXkoJyVkIHTDqXRlbCDDqXJpbnRldHQuJywnJWQgdMOpdGVsIMOpcmludGV0dC4nLCclZCB0w6l0ZWwgw6lyaW50ZXR0LicpLCdLYXR0aW50cyBrw6l0c3plciBheiDDqXJ0w6lrcmUgYSBzemVya2VzenTDqXNoZXouJyxhcnJheSgnJWQgc29yIGltcG9ydMOhbHZhLicsJyVkIHNvciBpbXBvcnTDoWx2YS4nLCclZCBzb3IgaW1wb3J0w6FsdmEuJyksJ05lbSB0dWRvbSBraXbDoWxhc3p0YW5pIGEgdMOhYmzDoXQnLCdSZWzDoWNpw7MnLCdIYXN6bsOhbGQgYSBzemVya2VzenTDqXMgaGl2YXRrb3rDoXN0IGV6ZW4gw6lydMOpayBtw7Nkb3PDrXTDoXPDoWhvei4nLCdvbGRhbCcsJ3V0b2xqw6FyYScsJ8O2c3N6ZXMgZXJlZG3DqW55dCBtdXRhdMOhc2EnLCdLbMOzbm96JywnSW1wb3J0w6Fsw6FzJywnICcsJ0EgdMOhYmxhIGZlbHN6YWJhZMOtdHZhLicsJ1TDoWJsw6FrIMOhdGhlbHllenZlLicsJ1RhYmxlcyBoYXZlIGJlZW4gY29waWVkLicsJ1TDoWJsw6FrIGVsZG9idmEuJywnVMOhYmzDoWsgw6lzIG7DqXpldGVrJywnS2VyZXPDqXMgYSB0w6FibMOha2JhbicsJ01vdG9yJywnTcOpcmV0JywnSW5kZXggaG9zc3onLCdBZGF0IHN6YWJhZCcsJ09zemxvcCcsJ0VsZW16w6lzJywnT3B0aW1hbGl6w6FsJywnRWxsZW7FkXJ6w6lzJywnSmF2w610JywnRmVsc3phYmFkw610Jywnw4F0aGVseWV6w6lzIG3DoXNpayBhZGF0YsOhemlzYmEnLCfDgXRoZWx5ZXonLCdDb3B5JywnU29yb3phdG9rJywnw5x0ZW16w6lzJywnTWVnYWRvdHQgaWTFkWJlbicsJ21vc3QnKTticmVhaztjYXNlInBsIjokWT1hcnJheSgnQ3p5IGplc3RlxZsgcGV3aWVuPycsJ1dncmFuaWUgcGxpa3UgYnnFgm8gbmllbW/FvGxpd2UuJywnTWFrc3ltYWxuYSB3aWVsa2/Fm8SHIHBsaWt1IHRvICVzQi4nLCdQbGlrIG5pZSBpc3RuaWVqZS4nLCdwdXN0ZScsJ2JleiB6bWlhbicsJ0JyYWsgdGFiZWwuJywnSsSZenlrJywnV3liaWVyeicsJ1Byb3N6xJkgdcW8ecSHIGplZG5lZ28geiByb3pzemVyemXFhDogJXMuJywnUGxpayBqdcW8IGlzdG5pZWplLicsJ1R5cHkgdcW8eXRrb3duaWthJywnTnVtZXJ5Y3puZScsJ0RhdGEgaSBjemFzJywnVGVrc3Rvd2UnLCdCaW5hcm5lJywnU2llxIcnLCdHZW9tZXRyaWEnLCdMaXN0eScsJ1JvZHphaiBiYXp5JywnU2Vyd2VyJywnVcW8eXRrb3duaWsnLCdIYXPFgm8nLCdaYWxvZ3VqIHNpxJknLCdaYXBhbWnEmXRhaiBzZXNqxJknLCdQb2thxbwgZGFuZScsJ1N0cnVrdHVyYSB0YWJlbGknLCdabWllxYQgcGVyc3Bla3R5d8SZJywnWm1pZcWEIHRhYmVsxJknLCdOb3d5IHJla29yZCcsJ09zdGF0bmlhIHN0cm9uYScsJ0VkeXR1aicsYXJyYXkoJyVkIGJhanQnLCclZCBiYWp0eScsJyVkIGJhanTDs3cnKSwncG9rYcW8JywnRnVua2NqZScsJ0FncmVnYWNqZScsJ1N6dWthaicsJ2dkemlla29sd2llaycsJ1NvcnR1aicsJ21hbGVqxIVjbycsJ0xpbWl0JywnRMWCdWdvxZvEhyB0ZWtzdHUnLCdDenlubm/Fm8SHJywnWmFweXRhbmllIFNRTCcsJ290d8OzcnonLCd6YXBpc3onLCdabWllxYQgYmF6xJkgZGFueWNoJywnWm1pZcWEIHNjaGVtYXQnLCdVdHfDs3J6IHNjaGVtYXQnLCdFa3Nwb3J0JywnV3lsb2d1aicsJ2JhemEgZGFueWNoJywnc2NoZW1hdCcsJ1V0d8Ozcnogbm93xIUgdGFiZWzEmScsJ3ByemVnbMSFZGFqJywnbHRyJywnUmVzZW5kIFBPU1QgZGF0YT8nLCdOaWVwcmF3aWTFgm93eSB0b2tlbiBDU1JGLiBTcHLDs2J1aiB3eXPFgmHEhyBmb3JtdWxhcnogcG9ub3duaWUuJywnV3lsb2dvd2FubyBwb215xZtsbmllLicsJ1d5bWFnYW5hIGplc3Qgb2JzxYJ1Z2Egc2VzamkgdyBQSFAuJywnU2VzamEgd3lnYXPFgmEsIHphbG9ndWogc2nEmSBwb25vd25pZS4nLCdOaWVwcmF3aWTFgm93ZSBkYW5lIGxvZ293YW5pYS4nLCdCcmFrIHJvenN6ZXJ6ZW5pYScsJ8W7YWRuZSB6IHJvenN6ZXJ6ZcWEIFBIUCB1bW/FvGxpd2lhasSFY3ljaCBwb8WCxIVjemVuaWUgc2nEmSB6IGJhesSFIGRhbnljaCAoJXMpIG5pZSBqZXN0IGRvc3TEmXBuZS4nLCdQcnplc8WCYW5vIHpieXQgZHXFvG8gZGFueWNoLiBabW5pZWpzeiBvYmrEmXRvxZvEhyBkYW55Y2ggbHViIHp3acSZa3N6IHptaWVubsSFIGtvbmZpZ3VyYWN5am7EhSAlcy4nLCdCYXphIGRhbnljaCcsJ05pZSB6bmFsZXppb25vIGJhenkgZGFueWNoLicsJ0JhenkgZGFueWNoIHpvc3RhxYJ5IHVzdW5pxJl0ZS4nLCdXeWJpZXJ6IGJhesSZIGRhbnljaCcsJ1V0d8Ozcnogbm93xIUgYmF6xJkgZGFueWNoJywnVXByYXduaWVuaWEgdcW8eXRrb3duaWvDs3cnLCdMaXN0YSBwcm9jZXPDs3cnLCdabWllbm5lJywnU3RhdHVzJywnV2Vyc2phICVzOiAlcyB6YSBwb21vY8SFICVzJywnWmFsb2dvd2FueSBqYWtvOiAlcycsJ1BvcsOzd255d2FuaWUgem5ha8OzdycsJ1RhYmVsZScsJ1VzdcWEJywnT2TFm3dpZcW8JywnU2NoZW1hdCcsJ05pZXByYXdpZMWCb3d5IHNjaGVtYXQuJywnQnJhayByZWtvcmTDs3cuJywnJS4zZiBzJywnS2x1Y3plIG9iY2UnLCdwb3LDs3dueXdhbmllIHpuYWvDs3cnLCdXIHByenlwYWRrdSB1c3VuacSZY2lhJywnTmF6d2Ega29sdW1ueScsJ05hendhIHBhcmFtZXRydScsJ1R5cCcsJ0TFgnVnb8WbxIcnLCdPcGNqZScsJ0F1dG8gSW5jcmVtZW50JywnV2FydG/Fm2NpIGRvbXnFm2xuZScsJ0tvbWVudGFyeicsJ0RvZGFqIG5hc3TEmXBueScsJ1ByemVzdcWEIHcgZ8OzcsSZJywnUHJ6ZXN1xYQgdyBkw7PFgicsJ1VzdcWEJywnUGVyc3Bla3R5d2EnLCdUYWJlbGEnLCdLb2x1bW5hJywnSW5kZWtzeScsJ1ptaWXFhCBpbmRla3N5Jywnxblyw7NkxYJvJywnQ2VsJywnVyBwcnp5cGFka3Ugem1pYW55JywnWm1pZcWEJywnRG9kYWoga2x1Y3ogb2JjeScsJ1d5endhbGFjemUnLCdEb2RhaiB3eXp3YWxhY3onLCdTY2hlbWF0IGJhenkgZGFueWNoJywnVHJ3YcWCeSBsaW5rJywnRWtzcG9ydCcsJ1JlenVsdGF0JywnRm9ybWF0JywnUHJvY2VkdXJ5IGkgZnVua2NqZScsJ1d5ZGFyemVuaWEnLCdEYW5lJywnZWR5dHVqJywnRG9kYWogdcW8eXRrb3duaWthJyxhcnJheSgnWmFweXRhbmllIHd5a29uYW5lIHBvbXnFm2xuaWUsIHptaWVuaW9ubyAlZCByZWtvcmQuJywnWmFweXRhbmllIHd5a29uYW5lIHBvbXnFm2xuaWUsIHptaWVuaW9ubyAlZCByZWtvcmR5LicsJ1phcHl0YW5pZSB3eWtvbmFuZSBwb215xZtsbmllLCB6bWllbmlvbm8gJWQgcmVrb3Jkw7N3LicpLGFycmF5KCclZCByZWtvcmQnLCclZCByZWtvcmR5JywnJWQgcmVrb3Jkw7N3JyksJ0LFgsSFZCB3IHphcHl0YW5pdScsJ05pYyBkbyB3eWtvbmFuaWEuJyxhcnJheSgnUG9tecWbbG5pZSB3eWtvbmFubyAlZCB6YXB5dGFuaWUuJywnUG9tecWbbG5pZSB3eWtvbmFubyAlZCB6YXB5dGFuaWEuJywnUG9tecWbbG5pZSB3eWtvbmFubyAlZCB6YXB5dGHFhC4nKSwnV2dyYW5pZSBwbGlrdScsJ1dncnl3YW5pZSBwbGlrw7N3IGplc3Qgd3nFgsSFY3pvbmUuJywnV3lrb25haicsJ1phdHJ6eW1haiB3IHByenlwYWRrdSBixYLEmWR1JywnUG9rYcW8IHR5bGtvIGLFgsSZZHknLCdaIHNlcndlcmEnLCdQbGlrICVzIG5hIHNlcndlcnplJywnVXJ1Y2hvbSB6IHBsaWt1JywnSGlzdG9yaWEnLCdXeWN6ecWbxIcnLCdFZGl0IGFsbCcsJ1Jla29yZCB6b3N0YcWCIHVzdW5pxJl0eS4nLCdSZWtvcmQgem9zdGHFgiB6YWt0dWFsaXpvd2FueS4nLCdSZWtvcmQlcyB6b3N0YcWCIGRvZGFueS4nLCdEb2RhaicsJ1phcGlzeiB6bWlhbnknLCdaYXBpc3ogaSBrb250eW51dWogZWR5Y2rEmScsJ1phcGlzeiBpIGRvZGFqIG5hc3TEmXBueScsJ1VzdcWEJywnVGFiZWxhIHpvc3RhxYJhIHVzdW5pxJl0YS4nLCdUYWJlbGEgem9zdGHFgmEgem1pZW5pb25hLicsJ1RhYmVsYSB6b3N0YcWCYSB1dHdvcnpvbmEuJywnVXR3w7NyeiB0YWJlbMSZJywnUHJ6ZWtyb2N6b25vIG1ha3N5bWFsbsSFIGxpY3pixJkgcMOzbC4gWndpxJlrc3ogJXMgaSAlcy4nLCdOYXp3YSB0YWJlbGknLCdza8WCYWRvd2FuaWUnLCdQYXJ0eWNqb25vd2FuaWUnLCdQYXJ0eWNqZScsJ05hendhIHBhcnR5Y2ppJywnV2FydG/Fm2NpJywnSW5kZWtzeSB6b3N0YcWCeSB6bWllbmlvbmUuJywnVHlwIGluZGVrc3UnLCdLb2x1bW5hIChkxYJ1Z2/Fm8SHKScsJ0JhemEgZGFueWNoIHpvc3RhxYJhIHVzdW5pxJl0YS4nLCdOYXp3YSBiYXp5IGRhbnljaCB6b3N0YcWCYSB6bWllbmlvbmEuJywnQmF6YSBkYW55Y2ggem9zdGHFgmEgdXR3b3J6b25hLicsJ0JhemEgZGFueWNoIHpvc3RhxYJhIHptaWVuaW9uYS4nLCdVdHfDs3J6IGJhesSZIGRhbnljaCcsJ1NjaGVtYXQgem9zdGHFgiB1c3VuacSZdHkuJywnU2NoZW1hdCB6b3N0YcWCIHV0d29yem9ueS4nLCdTY2hlbWF0IHpvc3RhxYIgem1pZW5pb255LicsJ1VydWNob20nLGFycmF5KCdQcm9jZWR1cmEgem9zdGHFgmEgdXJ1Y2hvbWlvbmEsIHptaWVuaW9ubyAlZCByZWtvcmQuJywnUHJvY2VkdXJhIHpvc3RhxYJhIHVydWNob21pb25hLCB6bWllbmlvbm8gJWQgcmVrb3JkeS4nLCdQcm9jZWR1cmEgem9zdGHFgmEgdXJ1Y2hvbWlvbmEsIHptaWVuaW9ubyAlZCByZWtvcmTDs3cuJyksJ0tsdWN6IG9iY3kgem9zdGHFgiB1c3VuacSZdHkuJywnS2x1Y3ogb2JjeSB6b3N0YcWCIHptaWVuaW9ueS4nLCdLbHVjeiBvYmN5IHpvc3RhxYIgdXR3b3J6b255LicsJ8W5csOzZMWCb3dhIGkgZG9jZWxvd2Ega29sdW1uYSBtdXN6xIUgYnnEhyB0ZWdvIHNhbWVnbyB0eXB1LCBwb3dpbmllbiBpc3RuaWXEhyBpbmRla3MgbmEgZG9jZWxvd2VqIGtvbHVtbmllIG9yYXogbXVzesSFIGlzdG5pZcSHIGRhbmUgcmVmZXJlbmN5am5lLicsJ0tsdWN6IG9iY3knLCdUYWJlbGEgZG9jZWxvd2EnLCdabWllxYQnLCdEb2RhaiBrb2x1bW7EmScsJ1BlcnNwZWt0eXdhIHpvc3RhxYJhIHVzdW5pxJl0YS4nLCdQZXJzcGVrdHl3YSB6b3N0YcWCYSB6bWllbmlvbmEuJywnUGVyc3Bla3R5d2Egem9zdGHFgmEgdXR3b3J6b25hLicsJ1V0d8OzcnogcGVyc3Bla3R5d8SZJywnTmF6d2EnLCdXeWRhcnplbmllIHpvc3RhxYJvIHVzdW5pxJl0ZS4nLCdXeWRhcnplbmllIHpvc3RhxYJvIHptaWVuaW9uZS4nLCdXeWRhcnplbmllIHpvc3RhxYJvIHV0d29yem9uZS4nLCdabWllxYQgd3lkYXJ6ZW5pZScsJ1V0d8Ozcnogd3lkYXJ6ZW5pZScsJ1BvY3rEhXRlaycsJ0tvbmllYycsJ1d5a29udWogY28nLCdOaWUga2FzdWogd3lkYXJ6ZW5pYSBwbyBwcnpldGVybWlub3dhbml1JywnUHJvY2VkdXJhIHpvc3RhxYJhIHVzdW5pxJl0YS4nLCdQcm9jZWR1cmEgem9zdGHFgmEgem1pZW5pb25hLicsJ1Byb2NlZHVyYSB6b3N0YcWCYSB1dHdvcnpvbmEuJywnWm1pZcWEIGZ1bmtjasSZJywnWm1pZcWEIHByb2NlZHVyxJknLCdVdHfDs3J6IGZ1bmtjasSZJywnVXR3w7NyeiBwcm9jZWR1csSZJywnWndyYWNhbnkgdHlwJywnU2Vrd2VuY2phIHpvc3RhxYJhIHVzdW5pxJl0YS4nLCdTZWt3ZW5jamEgem9zdGHFgmEgdXR3b3J6b25hLicsJ1Nla3dlbmNqYSB6b3N0YcWCYSB6bWllbmlvbmEuJywnWm1pZcWEIHNla3dlbmNqxJknLCdVdHfDs3J6IHNla3dlbmNqxJknLCdUeXAgem9zdGHFgiB1c3VuacSZdHkuJywnVHlwIHpvc3RhxYIgdXR3b3J6b255LicsJ1ptaWXFhCB0eXAnLCdVdHfDs3J6IHR5cCcsJ1d5endhbGFjeiB6b3N0YcWCIHVzdW5pxJl0eS4nLCdXeXp3YWxhY3ogem9zdGHFgiB6bWllbmlvbnkuJywnV3l6d2FsYWN6IHpvc3RhxYIgdXR3b3J6b255LicsJ1ptaWXFhCB3eXp3YWxhY3onLCdVdHfDs3J6IHd5endhbGFjeicsJ0N6YXMnLCdXeWRhcnplbmllJywnVcW8eXRrb3duaWsgem9zdGHFgiB1c3VuacSZdHkuJywnVcW8eXRrb3duaWsgem9zdGHFgiB6bWllbmlvbnkuJywnVcW8eXRrb3duaWsgem9zdGHFgiBkb2RhbnkuJywnWmFoYXNob3dhbmUnLCdQcm9jZWR1cmEnLCdVcHJhd25pZW5pYScsJ1VzdcWEIHVwcmF3bmllbmlhJyxhcnJheSgnUHJ6ZXJ3YW5vICVkIHfEhXRlay4nLCdQcnplcndhbm8gJWQgd8SFdGtpLicsJ1ByemVyd2FubyAlZCB3xIV0a8Ozdy4nKSwnJWQgdyBzdW1pZScsJ1ByemVyd2lqIHd5a29ueXdhbmllJyxhcnJheSgnWm1pZW5pb25vICVkIHJla29yZC4nLCdabWllbmlvbm8gJWQgcmVrb3JkeS4nLCdabWllbmlvbm8gJWQgcmVrb3Jkw7N3LicpLCdLbGlrbmlqIHBvZHfDs2puaWUgd2FydG/Fm8SHLCBhYnkgasSFIGVkeXRvd2HEhy4nLGFycmF5KCclZCByZWtvcmQgem9zdGHFgiB6YWltcG9ydG93YW55LicsJyVkIHJla29yZHkgem9zdGHFgnkgemFpbXBvcnRvd2FuZS4nLCclZCByZWtvcmTDs3cgem9zdGHFgm8gemFpbXBvcnRvd2FueWNoLicpLCdOaWUgdWRhxYJvIHNpxJkgcG9icmHEhyBkYW55Y2ggeiB0YWJlbGknLCdSZWxhY2plJywnVcW8eWogbGlua3UgZWR5Y2ppIGFieSB6bWllbmnEhyB0xJkgd2FydG/Fm8SHLicsJ1N0cm9uYScsJ29zdGF0bmknLCd3eWJpZXJ6IHdzenlzdGtpZScsJ0R1cGxpa3VqJywnSW1wb3J0JywnICcsJ1RhYmVsZSB6b3N0YcWCeSBvcHLDs8W8bmlvbmUuJywnVGFiZWxlIHpvc3RhxYJ5IHByemVuaWVzaW9uZS4nLCdUYWJlbGUgem9zdGHFgnkgc2tvcGlvd2FuZS4nLCdUYWJlbGUgem9zdGHFgnkgdXN1bmnEmXRlLicsJ1RhYmVsZSBpIHBlcnNwZWt0eXd5JywnV3lzenVrYWogd2Ugd3N6eXN0a2ljaCB0YWJlbGFjaCcsJ1NrxYJhZG93YW5pZScsJ1Jvem1pYXIgZGFueWNoJywnUm96bWlhciBpbmRla3PDs3cnLCdXb2xuZSBtaWVqc2NlJywnTGljemJhIHJla29yZMOzdycsJ0FuYWxpenVqJywnT3B0eW1hbGl6dWonLCdTcHJhd2TFuicsJ05hcHJhdycsJ09wcsOzxbxuaWonLCdQcnplbmllxZsgZG8gaW5uZWogYmF6eSBkYW55Y2gnLCdQcnplbmllxZsnLCdLb3BpdWonLCdTZWt3ZW5jamUnLCdIYXJtb25vZ3JhbScsJ08gZGFueW0gY3phc2llJywndGVyYXonKTticmVhaztjYXNlImNhIjokWT1hcnJheSgnRXN0w6BzIHNlZ3VyPycsJ0ltcG9zc2libGUgYWRqdW50YXIgZWwgZml0eGVyLicsJ0xhIG1pZGEgbcOgeGltYSBwZXJtZXNhIGRlbCBmaXR4ZXIgw6lzIGRlICVzQi4nLCdFbCBmaXR4ZXIgbm8gZXhpc3RlaXguJywnYnVpdCcsJ29yaWdpbmFsJywnTm8gaGkgaGEgY2FwIHRhdWxhLicsJ0lkaW9tYScsJ1V0aWxpdHphJywnU2kgdXMgcGxhdSwgdXRpbGl0emEgdW5hIGRlIGxlcyBleHRlbnNpb25zICVzLicsJ0VsIGZpdHhlciBqYSBleGlzdGVpeC4nLCdUaXB1cyBkZSBsXCd1c3VhcmknLCdOb21icmVzJywnRGF0YSBpIGhvcmEnLCdDYWRlbmVzJywnQmluYXJpJywnWGFyeGEnLCdHZW9tZXRyaWEnLCdMbGlzdGVzJywnU2lzdGVtYScsJ1NlcnZpZG9yJywnTm9tIGRcJ3VzdWFyaScsJ0NvbnRyYXNlbnlhJywnSW5pY2lhIGxhIHNlc3Npw7MnLCdTZXNzacOzIHBlcm1hbmVudCcsJ1NlbGVjY2lvbmEgZGFkZXMnLCdNb3N0cmEgbFwnZXN0cnVjdHVyYScsJ01vZGlmaWNhIGxhIHZpc3RhJywnTW9kaWZpY2EgbGEgdGF1bGEnLCdOb3UgZWxlbWVudCcsJ0RhcnJlcmEgcGxhbmEnLCdFZGl0YScsYXJyYXkoJyVkIGJ5dGUnLCclZCBieXRlcycpLCdTZWxlY2Npb25hJywnRnVuY2lvbnMnLCdBZ3JlZ2FjacOzJywnQ2VyY2EnLCdhIHF1YWxzZXZvbCBsbG9jJywnT3JkZW5hJywnZGVzY2VuZGVudCcsJ0zDrW1pdCcsJ0xvbmdpdHVkIGRlbCB0ZXh0JywnQWNjacOzJywnT3JkcmUgU1FMJywnb2JyZScsJ2Rlc2EnLCdNb2RpZmljYSBsYSBiYXNlIGRlIGRhZGVzJywnTW9kaWZpY2EgbFwnZXNxdWVtYScsJ0NyZWEgdW4gZXNxdWVtYScsJ0V4cG9ydGEnLCdEZXNjb25uZWN0YScsJ2Jhc2UgZGUgZGFkZXMnLCdlc3F1ZW1hJywnQ3JlYSB1bmEgbm92YSB0YXVsYScsJ3JlZ2lzdHJlcycsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/JywnVG9rZW4gQ1NSRiBpbnbDoGxpZC4gVG9ybmEgYSBlbnZpYXIgZWwgZm9ybXVsYXJpLicsJ0Rlc2Nvbm5leGnDsyBjb3JyZWN0YS4nLCdDYWwgcXVlIGVzdGlndWkgcGVybcOocyBsXCd1cyBkZSBzZXNzaW9ucy4nLCdMYSBzZXNzacOzIGhhIGV4cGlyYXQsIHRvcm5hIGEgaW5pY2lhci1uZSB1bmEuJywnQ3JlZGVuY2lhbHMgaW52w6BsaWRzLicsJ0NhcCBleHRlbnNpw7MnLCdObyBoaSBoYSBjYXAgZGUgbGVzIGV4dGVuc2lvbnMgUEhQIHNvcG9yYXRhZGVzICglcykgZGlzcG9uaWJsZS4nLCdMZXMgZGFkZXMgUE9TVCBzw7NuIG1hc3NhIGdyYW5zLiBSZWR1ZWl4IGxlcyBkYWRlcyBvIGluY3JlbWVudGEgbGEgZGlyZWN0aXZhIGRlIGNvbmZpZ3VyYWNpw7MgJXMuJywnQmFzZSBkZSBkYWRlcycsJ0Jhc2UgZGUgZGFkZXMgaW52w6BsaWRhLicsJ1NcJ2hhbiBzdXByaW1pdCBsZXMgYmFzZXMgZGUgZGFkZXMuJywnU2VsZWNjaW9uYSBiYXNlIGRlIGRhZGVzJywnQ3JlYSB1bmEgbm92YSBiYXNlIGRlIGRhZGVzJywnUHJpdmlsZWdpcycsJ0xsaXN0YSBkZSBwcm9jZXNzb3MnLCdWYXJpYWJsZXMnLCdFc3RhdCcsJ1ZlcnNpw7MgJXM6ICVzIGFtYiBsXCdleHRlbnNpw7MgZGUgUEhQICVzJywnQ29ubmVjdGF0IGNvbTogJXMnLCdDb21wYWdpbmFjacOzJywnVGF1bGVzJywnU3VwcmltZWl4JywnUmVmcmVzY2EnLCdFc3F1ZW1hJywnRXNxdWVtYSBpbnbDoGxpZC4nLCdObyBoaSBoYSBjYXAgZmlsYS4nLCclLjNmIHMnLCdDbGF1cyBmb3JhbmVzJywnY29tcGFnaW5hY2nDsycsJ09OIERFTEVURScsJ05vbSBkZSBsYSBjb2x1bW5hJywnTm9tIGRlbCBwYXLDoG1ldHJlJywnVGlwdXMnLCdMbGFyZ2FkYScsJ09wY2lvbnMnLCdJbmNyZW1lbnQgYXV0b23DoHRpYycsJ1ZhbG9ycyBwZXIgZGVmZWN0ZScsJ0NvbWVudGFyaScsJ0FmZWdlaXggZWwgc2Vnw7xlbnQnLCdNb3UgYSBkYWx0JywnTW91IGEgYmFpeCcsJ1N1cHJpbWVpeCcsJ1Zpc3RhJywnVGF1bGEnLCdDb2x1bW5hJywnw41uZGV4cycsJ01vZGlmaWNhIGVscyDDrW5kZXhzJywnRm9udCcsJ0Rlc3TDrScsJ09OIFVQREFURScsJ01vZGlmaWNhJywnQWZlZ2VpeCB1bmEgY2xhdSBmb3JhbmEnLCdBY3RpdmFkb3JzJywnQWZlZ2VpeCB1biBhY3RpdmFkb3InLCdFc3F1ZW1hIGRlIGxhIGJhc2UgZGUgZGFkZXMnLCdQZXJtYW5lbnQgbGluaycsJ0V4cG9ydGEnLCdTb3J0aWRhJywnRm9ybWF0JywnUnV0aW5lcycsJ0V2ZW50cycsJ0RhdGEnLCdlZGl0YScsJ0NyZWEgdW4gdXN1YXJpJyxhcnJheSgnQ29uc3VsdGEgZXhlY3V0YWRhIGNvcnJlY3RhbWVudCwgJWQgZmlsYSBtb2RpZmljYWRhLicsJ0NvbnN1bHRhIGV4ZWN1dGFkYSBjb3JyZWN0YW1lbnQsICVkIGZpbGVzIG1vZGlmaWNhZGVzLicpLGFycmF5KCclZCBmaWxhJywnJWQgZmlsZXMnKSwnRXJyb3IgZW4gbGEgY29uc3VsdGEnLCdDYXAgY29tYW5kYSBwZXIgZXhlY3V0YXIuJyxhcnJheSgnJWQgY29uc3VsdGEgZXhlY3V0YWRhIGNvcnJlY3RhbWVudC4nLCclZCBjb25zdWx0ZXMgZXhlY3V0YWRlcyBjb3JyZWN0YW1lbnQuJyksJ0FkanVudGEgdW4gZml0eGVyJywnTFwnZGRqdW5jacOzIGRlIGZpdHhlcnMgZXN0w6AgZGVzYWN0aXZhZGEuJywnRXhlY3V0YScsJ0F0dXJhIGVuIHRyb2JhciB1biBlcnJvcicsJ01vc3RyYSBub23DqXMgZWxzIGVycm9ycycsJ0VuIGVsIHNlcnZpZG9yJywnRml0eGVyICVzIGRlbCBzZXJ2aWRvciB3ZWInLCdFeGVjdXRhIGVsIGZpdHhlcicsJ0hpc3TDsnJpYScsJ1N1cHJpbWVpeCcsJ0VkaXQgYWxsJywnU1wnaGEgc3Vwcm1pdCBsXCdlbGVtZW50LicsJ1NcJ2hhIGFjdHVhbGl0emF0IGxcJ2VsZW1lbnQuJywnU1wnaGEgaW5zZXJ0YXQgbFwnZWxlbWVudCVzLicsJ0luc2VyZWl4JywnRGVzYScsJ0Rlc2EgaSBzZWd1ZWl4IGVkaXRhbnQnLCdEZXNhIGkgaW5zZXJlaXggZWwgc2Vnw7xlbnQnLCdTdXByaW1laXgnLCdTXCdoYSBzdXByaW1pdCBsYSB0YXVsYS4nLCdTXCdoYSBtb2RpZmljYXQgbGEgdGF1bGEuJywnU1wnaGEgY3JlYXQgbGEgdGF1bGEuJywnQ3JlYSB1bmEgdGF1bGEnLCdTXCdoYSBhc3NvbGl0IGVsIG5vbWJyZSBtw6B4aW0gZGUgY2FtcHMuIEluY3JlbWVudGEgJXMgaSAlcy4nLCdOb20gZGUgbGEgdGF1bGEnLCdtb3RvcicsJ0ZlcyBwYXJ0aWNpb25zIHNlZ29ucycsJ1BhcnRpY2lvbnMnLCdOb20gZGUgbGEgcGFydGljacOzJywnVmFsb3JzJywnU1wnaGFuIG1vZGlmaWNhdCBlbHMgw61uZGV4cy4nLCdUaXB1cyBkXCfDrW5kZXgnLCdDb2x1bW5hIChsb25naXR1ZCknLCdTXCdoYSBzdXByaW1pdCBsYSBiYXNlIGRlIGRhZGVzLicsJ1NcJ2hhIGNhbnZpYXQgZWwgbm9tIGRlIGxhIGJhc2UgZGUgZGFkZXMuJywnU1wnaGEgY3JlYXQgbGEgYmFzZSBkZSBkYWRlcy4nLCdTXCdoYSBtb2RpZmljYXQgbGEgYmFzZSBkZSBkYWRlcy4nLCdDcmVhIHVuYSBiYXNlIGRlIGRhZGVzJywnU1wnaGEgc3VwcmltaXQgbFwnZXNxdWVtYS4nLCdTXCdoYSBjcmVhdCBsXCdlc3F1ZW1hLicsJ1NcJ2hhIG1vZGlmaWNhdCBsXCdlc3F1ZW1hLicsJ0NyaWRhJyxhcnJheSgnU1wnaGEgY3JpZGF0IGxhIHJ1dGluYSwgJWQgZmlsYSBtb2RpZmljYWRhLicsJ1NcJ2hhIGNyaWRhdCBsYSBydXRpbmEsICVkIGZpbGVzIG1vZGlmaWNhZGVzLicpLCdTXCdoYSBzdXByaW1pdCBsYSBjbGF1IGZvcmFuYS4nLCdTXCdoYSBtb2RpZmljYXQgbGEgY2xhdSBmb3JhbmEuJywnU1wnaGEgY3JlYXQgbGEgY2xhdSBmb3JhbmEuJywnTGVzIGNvbHVtbmVzIG9yaWdlbiBpIGRlc3TDrSBoYW4gZGUgc2VyIGRlbCBtYXRlaXggdGlwdXMsIGxhIGNvbHVtbmEgZGVzdMOtIGhhIGRcJ2VzdGFyIGluZGV4YWRhIGkgbGVzIGRhZGVzIHJlZmVyZW5jaWFkZXMgaGFuIGRcJ2V4aXN0aXIuJywnQ2xhdSBmb3JhbmEnLCdUYXVsYSBkZSBkZXN0w60nLCdDYW52aScsJ0FmZWdlaXggdW5hIGNvbHVtbmEnLCdTXCdoYSBzdXByaW1pdCBsYSB2aXN0YS4nLCdTXCdoYSBtb2RpZmljYXQgbGEgdmlzdGEuJywnU1wnaGEgY3JlYXQgbGEgdmlzdGEuJywnQ3JlYSB1bmEgdmlzdGEnLCdOb20nLCdTXCdoYSBzdXByaW1pdCBsXCdldmVudC4nLCdTXCdoYSBtb2RpZmljYXQgbFwnZXZlbnQuJywnU1wnaGEgY3JlYXQgbFwnZXZlbnQuJywnTW9kaWZpY2EgbFwnZXZlbnQnLCdDcmVhIHVuIGV2ZW50JywnQ29tZW7Dp2EnLCdBY2FiYScsJ0NhZGEnLCdDb25zZXJ2YXIgZW4gY29tcGxldGFyJywnU1wnaGEgc3VwcmltaXQgbGEgcnV0aW5hLicsJ1NcJ2hhIG1vZGlmaWNhdCBsYSBydXRpbmEuJywnU1wnaGEgY3JlYXQgbGEgcnV0aW5hLicsJ01vZGlmaWNhIGxhIGZ1bmNpw7MnLCdNb2RpZmljYSBlbCBwcm9jZWRpbWVudCcsJ0NyZWEgdW5hIGZ1bmNpw7MnLCdDcmVhIHVuIHByb2NlZGltZW50JywnVGlwdXMgcmV0b3JuYXQnLCdTXCdoYSBzdXByaW1pdCBsYSBzZXHDvMOobmNpYS4nLCdTXCdoYSBjcmVhdCBsYSBzZXHDvMOobmNpYS4nLCdTXCdoYSBtb2RpZmljYXQgbGEgc2Vxw7zDqG5jaWEuJywnTW9kaWZpY2EgbGEgc2Vxw7zDqG5jaWEnLCdDcmVhIHVuYSBzZXHDvMOobmNpYScsJ1NcJ2hhIHN1cHJpbWl0IGVsIHRpcHVzLicsJ1NcJ2hhIGNyZWF0IGVsIHRpcHVzLicsJ01vZGlmaWNhIGVsIHRpcHVzJywnQ3JlYSB1biB0aXB1cycsJ1NcJ2hhIHN1cHJpbWl0IGxcJ2FjdGl2YWRvci4nLCdTXCdoYSBtb2RpZmljYXQgbFwnYWN0aXZhZG9yLicsJ1NcJ2hhIGNyZWF0IGxcJ2FjdGl2YWRvci4nLCdNb2RpZmljYSBsXCdhY3RpdmFkb3InLCdDcmVhIHVuIGFjdGl2YWRvcicsJ1RlbXBzJywnRXZlbnQnLCdTXCdoYSBzdXByaW1pdCBsXCd1c3VhcmkuJywnU1wnaGEgbW9kaWZpY2F0IGxcJ3VzdWFyaS4nLCdTXCdoYSBjcmVhdCBsXCd1c3VhcmkuJywnSGFzaGVkJywnUnV0aW5hJywnR3JhbnQnLCdSZXZva2UnLGFycmF5KCdTXCdoYSBhdHVyYXQgJWQgcHJvY8Opcy4nLCdTXCdoYW4gYXR1cmF0ICVkIHByb2Nlc3Nvcy4nKSwnJWQgZW4gdG90YWwnLCdBdHVyYScsYXJyYXkoJ1NcJ2hhIG1vZGlmaWNhdCAlZCBlbGVtZW50LicsJ1NcJ2hhbiBtb2RpZmljYXQgJWQgZWxlbWVudHMuJyksJ0ZlcyB1biBkb2JsZSBjbGljIGEgdW4gdmFsb3IgcGVyIG1vZGlmaWNhci1sby4nLGFycmF5KCdTXCdoYSBpbXBvcnRhdCAlZCBmaWxhLicsJ1NcJ2hhbiBpbXBvcnRhdCAlZCBmaWxlcy4nKSwnSW1wb3NzaWJsZSBzZWxlY2Npb25hciBsYSB0YXVsYScsJ1JlbGFjaW9ucycsJ1V0aWxpdHphIGxcJ2VubGxhw6cgZFwnZWRpY2nDsyBwZXIgbW9kaWZpY2FyIGFxdWVzdCB2YWxvci4nLCdQbGFuYScsJ2RhcnJlcmEnLCd0b3RzIGVscyByZXN1bHRhdHMnLCdDbG9uYScsJ0ltcG9ydGEnLCcsJywnU1wnaGFuIGVzY2Fww6dhdCBsZXMgdGF1bGVzLicsJ1NcJ2hhbiBkZXNwbGHDp2F0IGxlcyB0YXVsZXMuJywnVGFibGVzIGhhdmUgYmVlbiBjb3BpZWQuJywnU1wnaGFuIHN1cHJpbWl0IGxlcyB0YXVsZXMuJywnVGF1bGVzIGkgdmlzdGVzJywnQ2VyY2EgZGFkZXMgZW4gbGVzIHRhdWxlcycsJ01vdG9yJywnTG9uZ2l0dWQgZGUgbGVzIGRhZGVzJywnTFwnb25naXR1ZCBkZSBsXCfDrW5kZXgnLCdFc3BhaSBsbGl1cmUnLCdGaWxlcycsJ0FuYWxpdHphJywnT3B0aW1pdHphJywnVmVyaWZpY2EnLCdSZXBhcmEnLCdFc2NhcMOnYScsJ0Rlc3BsYcOnYSBhIHVuYSBhbHRyYSBiYXNlIGRlIGRhZGVzJywnRGVzcGxhw6dhJywnQ29weScsJ1NlccO8w6huY2llcycsJ0hvcmFyaScsJ0EgdW4gbW9tZW50IGRvbmF0JywnYXJhJyk7YnJlYWs7Y2FzZSJwdCI6JFk9YXJyYXkoJ0VzdMOhIHNlZ3Vybz8nLCdOw6NvIMOpIHBvc3NpdmVsIGVudmlhciBvIGFycXVpdm8uJywnVGFtYW5obyBtw6F4aW1vIGRvIGFycXVpdm8gw6kgJXNCLicsJ0FycXVpdm8gbsOjbyBleGlzdGUuJywndmF6aW8nLCdvcmlnaW5hbCcsJ07Do28gZXhpc3RlbSB0YWJlbGFzLicsJ0lkaW9tYScsJ1VzYXInLCdQb3IgZmF2b3IgdXNlIHVtYSBkYXMgZXh0ZW5zw7VlcyAlcy4nLCdBcnF1aXZvIGphIGV4aXN0ZS4nLCdUaXBvcyBkZWZpbmlkbyBwZWxvIHVzdWFyaW8nLCdOw7ptZXJvcycsJ0RhdGEgZSBob3JhJywnQ2FkZW5hJywnQmluYXJpbycsJ1JlZGUnLCdHZW9tZXRyw61hJywnTGlzdGFzJywnTW90b3IgZGUgQmFzZSBkZSBkYWRvcycsJ1NlcnZpZG9yJywnVXN1YXJpbycsJ1NlbmhhJywnRW50cmFyJywnU2FsdmFyIFNlbmhhJywnU2VsZWNpb25hciBkYWRvcycsJ01vc3RyYXIgZXN0cnV0dXJhJywnTW9kaWZpY2FyIHZpc3RhJywnTW9kaWZpY2FyIGVzdHJ1dHVyYScsJ05vdm8gUmVnaXN0cm8nLCdVbHRpbWEgcMOhZ2luYScsJ01vZGlmaWNhcicsYXJyYXkoJyVkIGJ5dGUnLCclZCBieXRlcycpLCdTZWxlY2lvbmFyJywnRnVuw6fDtWVzJywnQWRpw6fDtWVzJywnUHJvY3VyYXInLCdxdWFscXVlciBsb2NhbCcsJ09yZGVuYXInLCdkZWNyZXNjZW50ZScsJ0xpbWl0ZScsJ1RhbWFuaG8gZGUgdGV4dG8nLCdBw6fDo28nLCdDb21hbmRvIFNRTCcsJ21vc3RyYXInLCdzYWx2YXMnLCdNb2RpZmljYXIgQmFzZSBkZSBkYWRvcycsJ01vZGlmaWNhciBlc3F1ZW1hJywnQ3JpYXIgZXNxdWVtYScsJ0V4cG9ydGFyJywnU2FpcicsJ2Jhc2UgZGUgZGFkb3MnLCdlc3F1ZW1hJywnTm92YSB0YWJlbGEnLCdyZWdpc3Ryb3MnLCdsdHInLCdSZXNlbmQgUE9TVCBkYXRhPycsJ1Rva2VuIENTUkYgaW52w6FsaWRvLiBFbnZpYXIgbyBmb3JtdWxhcmlvIG5vdmFtZW50ZS4nLCdTYWlkYSBiZW0gc3VjZWRpZGEuJywnRGV2ZW0gZXN0YXIgaGFiaWxpdGFkYXMgYXMgc2Vzc8O1ZXMuJywnU2Vzc8OjbyBleHBpcmFkYSwgcG9yIGZhdm9yIGVudHJlIHN1YSBDaGF2ZSBkZSBub3ZvLicsJ0lkZW50aWZpY2HDp8OjbyBpbnbDoWxpZGEuJywnTsOjbyBoYSBleHRlbnNpb24nLCdOZW5odW1hIGRhcyBleHRlbnPDtWVzIFBIUCBzb3BvcnRhZGFzICglcykgZXN0w6EgZGlzcG9uaXZlbC4nLCdQT1NUIGRhdGEgZGVtYXNpYWRvIGdyYW5kZS4gUmVkdXphIG8gdGFtYW5obyBvdSBhdW1lbnRlIGEgZGlyZXRpdmEgZGUgY29uZmlndXJhw6fDo28gJXMuJywnQmFzZSBkZSBkYWRvcycsJ0Jhc2UgZGUgZGFkb3MgaW52w6FsaWRhLicsJ0Jhc2VzIGRlIGRhZG9zIGVsaW1pbmFkYXMuJywnU2VsZWNpb25hciBCYXNlIGRlIGRhZG9zJywnQ3JpYXIgbm92YSBiYXNlIGRlIGRhZG9zJywnUHJpdmlsZWdpb3MnLCdMaXN0YSBkZSBwcm9jZXNzb3MnLCdWYXJpYXZlaXMnLCdFc3RhZG8nLCdWZXJzw6NvICVzOiAlcyBhdHJhdsOpcyBkYSBleHRlbnPDo28gUEhQICVzJywnTG9nYWRvIGNvbW86ICVzJywnQ29sYcOnw6NvJywnVGFiZWxhcycsJ1JlbW92ZXInLCdBdHVhbGl6YXInLCdFc3F1ZW1hJywnRXNxdWVtYSBpbnbDoWxpZG8uJywnTsOjbyBleGlzdGVtIHJlZ2lzdHJvcy4nLCclLjNmIHMnLCdDaGF2ZXMgZm9yw6FuZWFzJywnY29sbGF0aW9uJywnT04gREVMRVRFJywnTm9tZSBkYSBjb2x1bmEnLCdOb21lIGRlIFBhcmFtZXRybycsJ1RpcG8nLCdUYW1hbmhvJywnT3DDp8O1ZXMnLCdJbmNyZW1lbnRvIEF1dG9tw6F0aWNvJywnVmFsb3JlcyBwcmVkZXRlcm1pbmFkb3MnLCdDb21lbnRhcmlvJywnQWRpY2lvbmFyIHByb3hpbW8nLCdNb3ZlciBhY2ltYScsJ01vdmVyIGFiYWl4bycsJ1JlbW92ZXInLCdWaXN1YWxpemFyJywnVGFiZWxhJywnQ29sdW5hJywnSW5kaWNlcycsJ01vZGlmaWNhciBpbmRpY2VzJywnT3JpZ2VtJywnRGVzdGlubycsJ09OIFVQREFURScsJ01vZGlmaWNhcicsJ0FkaWNpb25hciBDaGF2ZSBmb3LDoW5lYScsJ1RyaWdnZXJzJywnQWRpY2lvbmFyIHRyaWdnZXInLCdFc3F1ZW1hIGRlIEJhc2UgZGUgZGFkb3MnLCdQZXJtYW5lbnQgbGluaycsJ0V4cG9ydGFyJywnU2FpZGEnLCdGb3JtYXRvJywnUHJvY2VkaW1lbnRvcycsJ0V2ZW50b3MnLCdEYWRvcycsJ21vZGlmaWNhcicsJ0NyaWFyIFVzdWFyaW8nLGFycmF5KCdDb25zdWx0YSBleGVjdXRhZGEsICVkIHJlZ2lzdHJvIGFmZXRhZG9zLicsJ0NvbnN1bHRhIGV4ZWN1dGFkYSwgJWQgcmVnaXN0cm9zIGFmZXRhZG9zLicpLGFycmF5KCclZCByZWdpc3RybycsJyVkIHJlZ2lzdHJvcycpLCdFcnJvIG5hIGNvbnN1bHRhJywnTmVuaHVtIGNvbWFuZG8gcGFyYSBleGVjdXRhci4nLGFycmF5KCclZCBjb25zdWx0YSBzcWwgZXhlY3V0YWRhIGNvcnJldGFtZW50ZS4nLCclZCBjb25zdWx0YSBzcWwgZXhlY3V0YWRhcyBjb3JyZXRhbWVudGUuJyksJ0ltcG9ydGFyIGFycXVpdm8nLCdJbXBvcnRhw6fDo28gZGUgYXJxdWl2b3MgZGVzYWJsaWxpdGFkby4nLCdFeGVjdXRhcicsJ1BhcmFyIGVtIGNhc28gZGUgZXJybycsJ01vc3RyYXIgc29tZW50ZSBlcnJvcycsJ0Rlc2RlIHNlcnZpZG9yJywnQXJxdWl2byBkbyBzZXJ2aWRvciB3ZWIgJXMnLCdFeGVjdXRhciBBcnF1aXZvJywnSGlzdG9yaWNvJywnTGltcGFyJywnRWRpdCBhbGwnLCdSZWdpc3RybyBlbGltaW5hZG8uJywnUmVnaXN0cm8gbW9kaWZpY2Fkby4nLCdSZWdpc3RybyVzIGluc2VyaWRvLicsJ0luc2VyaXInLCdTYWx2YXInLCdTYWx2YXIgZSBjb250aW51YXIgZWRpdGFuZG8nLCdTYWx2YXIgZSBpbnNlcmlyIG91dHJvJywnQXBhZ2FyJywnVGFiZWxhIGVsaW1pbmFkYS4nLCdUYWJlbGEgbW9kaWZpY2FkYS4nLCdUYWJlbGEgY3JpYWRhLicsJ0NyaWFyIHRhYmVsYScsJ0NhbnRpZGEgbcOheGltYSBkZSBjYW1wb3MgcGVybWl0aWRvcyBleGNlZGlkb3MuIFBvciBmYXZvciBhdW1lbnRlICVzIHkgJXMuJywnTm9tZSBkYSB0YWJlbGEnLCdtb3RvcicsJ1BhcnRpY2lvbmFyIHBvcicsJ1BhcnRpw6fDtWVzJywnTm9tZSBkYSBQYXJ0acOnw6NvJywnVmFsb3JlcycsJ0luZGljZXMgbW9kaWZpY2Fkb3MuJywnVGlwbyBkZSDDrW5kaWNlJywnY29sdW5hICh0YW1hbmhvKScsJ0Jhc2UgZGUgZGFkb3MgZWxpbWluYWRhLicsJ0Jhc2UgZGUgZGFkb3MgcmVub21lYWRhLicsJ0Jhc2UgZGUgZGFkb3MgY3JpYWRhLicsJ0Jhc2UgZGUgZGFkb3MgbW9kaWZpY2FkYS4nLCdDcmlhciBCYXNlIGRlIGRhZG9zJywnRXNxdWVtYSBlbGltaW5hZG8uJywnRXNxdWVtYSBjcmlhZG8uJywnRXNxdWVtYSBtb2RpZmljYWRvLicsJ0NoYW1hcicsYXJyYXkoJ0NvbnN1bHRhIGV4ZWN1dGFkYSwgJWQgcmVnaXN0cm8gYWZldGFkby4nLCdDb25zdWx0YSBleGVjdXRhZGEsICVkIHJlZ2lzdHJvcyBhZmV0YWRvcy4nKSwnQ2hhdmUgZXh0ZXJuYSBlbGltaW5hZGEuJywnQ2hhdmUgZXh0ZXJuYSBtb2RpZmljYWRhLicsJ0NoYXZlIGV4dGVybmEgY3JpYWRhLicsJ0FzIGNvbHVuYXMgZGUgb3JpZ2VuIGUgZGVzdGlubyBkZXZlbSBzZXIgZG8gbWVzbW8gdGlwbywgZGV2ZSBleGlzdGlyIHVtIMOtbmRpY2UgZW50cmUgYXMgY29sdW5hcyBkZSBkZXN0aW5vIGUgbyByZWdpc3RybyByZWZlcmVuY2lhZG8gZGV2ZSBleGlzdGlyLicsJ0NoYXZlIGV4dGVybmEnLCdUYWJlbGEgZGUgZGVzdGlubycsJ01vZGlmaWNhcicsJ0FkaWNpb25hciBjb2x1bmEnLCdWaXN0YSBlbGltaW5hZGEuJywnVmlzdGEgbW9kaWZpY2FkYS4nLCdWaXN0YSBjcmlhZGEuJywnQ3JpYXIgdmlzdGEnLCdOb21lJywnRXZlbnRvIGVsaW1pbmFkby4nLCdFdmVudG8gbW9kaWZpY2Fkby4nLCdFdmVudG8gY3JpYWRvLicsJ01vZGlmaWNhciBFdmVudG8nLCdDcmlhciBFdmVudG8nLCdJbmljaW8nLCdGaW0nLCdDYWRhJywnQW8gY29tcGxldGFyIHByZXNlcnZhcicsJ1Byb2NlZGltZW50byBlbGltaW5hZG8uJywnUHJvY2VkaW1lbnRvIG1vZGlmaWNhZG8uJywnUHJvY2VkaW1lbnRvIGNyaWFkby4nLCdNb2RpZmljYXIgRnVuw6fDo28nLCdNb2RpZmljYXIgcHJvY2VkaW1pZW50bycsJ0NyaWFyIGZ1bsOnw6NvJywnQ3JpYXIgcHJvY2VkaW1lbnRvJywnVGlwbyBkZSB2YWxvciBkZSByZWdyZXNvJywnU2VxdWVuY2lhIGVsaW1pbmFkYS4nLCdTZXF1ZW5jaWEgY3JpYWRhLicsJ1NlcXVlbmNpYSBtb2RpZmljYWRhLicsJ01vZGlmaWNhciBzZXF1ZW5jaWEnLCdDcmlhciBzZXF1ZW5jaWFzJywnVGlwbyBlbGltaW5hZG8uJywnVGlwbyBjcmlhZG8uJywnTW9kaWZpY2FyIHRpcG8nLCdDcmlhciB0aXBvJywnVHJpZ2dlciBlbGltaW5hZG8uJywnVHJpZ2dlciBtb2RpZmljYWRvLicsJ1RyaWdnZXIgY3JpYWRvLicsJ01vZGlmaWNhciBUcmlnZ2VyJywnQWRpY2lvbmFyIFRyaWdnZXInLCdUZW1wbycsJ0V2ZW50bycsJ1VzdWFyaW8gZWxpbWluYWRvLicsJ1VzdWFyaW8gbW9kaWZpY2Fkby4nLCdVc3VhcmlvIGNyaWFkby4nLCdIYXNoJywnUm90aW5hJywnQ29uY2VkZXInLCdJbXBlZGlyJyxhcnJheSgnJWQgcHJvY2Vzc28gdGVybWluYWRvLicsJyVkIHByb2Nlc3NvcyB0ZXJtaW5hZG9zLicpLCclZCBubyB0b3RhbCcsJ1BhcmFyJyxhcnJheSgnJWQgw610ZW0gYWZldGFkby4nLCclZCBpdGVucyBhZmV0YWRvcy4nKSwnRG9ibGUtY2xpYyBzb2JyZSBvIHZhbG9yIHBhcmEgZWRpdGEtbG8uJyxhcnJheSgnJWQgcmVnaXN0cm8gaW1wb3J0YWRvLicsJyVkIHJlZ2lzdHJvcyBpbXBvcnRhZG9zLicpLCdOw6NvIMOpIHBvc3NpdmVsIHNlbGVjaW9uYXIgYSBUYWJlbGEnLCdSZWxhw6fDtWVzJywnVXRpbGl6ZSBvIGxpbmsgbW9kaWZpY2FyIHBhcmEgYWx0ZXJhci4nLCdQw6FnaW5hJywnw7psdGltbycsJ3Jlc3VsdGFkbyBjb21wbGV0bycsJ0Nsb25hcicsJ0ltcG9ydGFyJywnICcsJ1RhYmVsYXMgdHJ1bmNhZGFzICh0cnVuY2F0ZSkuJywnQXMgVGFiZWxhcyBmb3JhbSBtb3ZpZGFzLicsJ1RhYmxlcyBoYXZlIGJlZW4gY29waWVkLicsJ1RhYmVsYXMgZWxpbWluYWRhcy4nLCdUYWJlbGFzIGUgdmlzdGFzJywnQnVzY2FyIGRhZG9zIG5hcyBUYWJlbGFzJywnTW90b3InLCdUYW1hbmhvIGRlIGRhZG9zJywnVGFtYW5obyBkZSDDrW5kaWNlJywnRXNwYcOnbyBMaXZyZScsJ1JlZ2lzdHJvcycsJ0FuYWxpemFyJywnT3RpbWl6YXInLCdWZXJpZmljYXInLCdSZXBhcmFyJywnVHJ1bmNhcicsJ01vdmVyIG91dHJhIEJhc2UgZGUgZGFkb3MnLCdNb3ZlcicsJ0NvcHknLCdTZXF1ZW5jaWFzJywnQWdlbmRhJywnQSBob3JhIGRldGVybWluYWRhJywnYWdvcmEnKTticmVhaztjYXNlInNsIjokWT1hcnJheSgnU3RlIHByZXByacSNYW5pPycsJ05lIG1vcmVtIG5hbG/Fvml0aSBkYXRvdGVrZS4nLCdOYWp2ZcSNamEgdmVsaWtvc3QgZGF0b3Rla2UgamUgJXNCLicsJ0RhdG90ZWthIG5lIG9ic3RhamEuJywncHJhem5vJywnb3JpZ2luYWwnLCdOaSB0YWJlbC4nLCdKZXppaycsJ1Vwb3JhYmknLCdQcm9zaW0sIHVwb3JhYml0ZSBlbmVnYSBvZCBkb2RhdGtvdiAlcy4nLCdEYXRvdGVrYSBvYnN0YWphLicsJ1Vwb3JhYm5pxaFraSB0aXBpJywnxaB0ZXZpbGEnLCdEYXR1bSBpbiDEjWFzJywnTml6aScsJ0JpbmFybmknLCdNcmXFvm5pJywnR2VvbWV0csSNbmknLCdTZXpuYW1pJywnU2lzdGVtJywnU3RyZcW+bmlrJywnVXBvcmFibmnFoWtvIGltZScsJ0dlc2xvJywnUHJpamF2aSBzZScsJ1RyYWpuYSBwcmlqYXZhJywnSXpiZXJpIHBvZGF0a2UnLCdQb2thxb5pIHpncmFkYm8nLCdTcHJlbWVuaSBwb2dsZWQnLCdTcHJlbWVuaSB0YWJlbG8nLCdOb3YgcHJlZG1ldCcsJ1phZG5qYSBzdHJhbicsJ1VyZWRpJyxhcnJheSgnJWQgYmFqdCcsJyVkIGJhanRhJywnJWQgYmFqdGknLCclZCBiYWp0b3YnKSwnSXpiZXJpJywnRnVua2NpamUnLCdaZHJ1xb5pdGV2JywnScWhxI1pJywna2plcmtvbGknLCdTb3J0aXJhaicsJ3BhZGFqb8SNZScsJ0xpbWl0YScsJ0RvbMW+aW5hIHRla3N0YScsJ0RlamFuamUnLCdVa2F6IFNRTCcsJ29kcHJpJywnc2hyYW5pJywnU3ByZW1lbmkgYmF6bycsJ1NwcmVtZW5pIHNoZW1vJywnVXN0dmFyaSBzaGVtbycsJ0l6dm96aScsJ09kamF2aSBzZScsJ2JhemEnLCdzaGVtYScsJ1VzdHZhcmkgbm92byB0YWJlbG8nLCdpemJlcmknLCdsdHInLCdSZXNlbmQgUE9TVCBkYXRhPycsJ05ldmVsamF2ZW4gdG9rZW4gQ1NSRi4gUG/FoWxqaXRlIGZvcm11bGFyIMWhZSBlbmtyYXQuJywnUHJpamF2YSB1c3BlxaFuYS4nLCdQb2Rwb3JhIHphIHNlamUgbW9yYSBiaXRpIG9tb2dvxI1lbmEuJywnU2VqYSBqZSBwb3Rla2xhLiBQcm9zaW1vLCBwb25vdm5vIHNlIHByaWphdml0ZS4nLCdOZXZlbGphdm5lIHByYXZpY2UuJywnQnJleiBkb2RhdGtvdicsJ05vYmVuIG9kIHBvZHBydGloIGRvZGF0a292IHphIFBIUCAoJXMpIG5pIG5hIHZvbGpvLicsJ1ByZXZlbGlrbyBwb2RhdGtvdiB6YSBQT1NULiBabWFuasWhYWp0ZSDFoXRldmlsbyBwb2RhdGtvdiBhbGkgcG92ZcSNYWp0ZSBuYXN0YXZpdGV2IHphICVzLicsJ0JhemEnLCdOZXZlbGphdm5hIGJhemEuJywnQmF6ZSBzbyB6YXZyxb5lbmUuJywnSXpiZXJpIGJhem8nLCdVc3R2YXJpIG5vdm8gYmF6bycsJ1ByYXZpY2UnLCdTZXpuYW0gcHJvY2Vzb3YnLCdTcHJlbWVubGppdmtlJywnU3RhbmplJywnVmVyemlqYSAlczogJXMgcHJla28gZG9kYXRrYSB6YSBQSFAgJXMnLCdQcmlqYXZsamVuIGtvdDogJXMnLCdaYmlyYW5qZScsJ1RhYmVsZScsJ1phdnJ6aScsJ09zdmXFvmknLCdTaGVtYScsJ05ldmVsamF2bmEgc2hlbWEuJywnTmkgdnJzdGljLicsJyUuM2YgcycsJ1R1amkga2xqdcSNaScsJ3piaXJhbmplJywncHJpIGJyaXNhbmp1JywnSW1lIHN0b2xwY2EnLCdJbWUgcGFyYW1ldHJhJywnVGlwJywnRG9sxb5pbmEnLCdNb8W+bm9zdGknLCdTYW1vZGVqbm8gcG92ZcSNZXZhbmplJywnUHJpdnpldGUgdnJlZG5vc3RpJywnS29tZW50YXInLCdEb2RhaiBuYXNsZWRuamVnYScsJ1ByZW1ha25pIGdvcicsJ1ByZW1ha25pIGRvbCcsJ09kc3RyYW5pJywnUG9nbGVkaScsJ1RhYmVsYScsJ1N0b2xwZWMnLCdJbmRla3NpJywnU3ByZW1lbmkgaW5kZWtzZScsJ0l6dm9yJywnQ2lsaicsJ3ByaSBwb3NvZGFibGphbmp1JywnU3ByZW1lbmknLCdEb2RhaiB0dWoga2xqdcSNJywnU3Byb8W+aWxuaWtpJywnRG9kYWogc3Byb8W+aWxuaWsnLCdTaGVtYSBiYXplJywnUGVybWFuZW50IGxpbmsnLCdJenZvemknLCdJemhvZCByZXp1bHRhdGEnLCdGb3JtYXQnLCdQb3N0b3BraScsJ0RvZ29ka2knLCdQb2RhdGtpJywndXJlZGknLCdVc3R2YXJpIHVwb3JhYm5pa2EnLGFycmF5KCdQb2l6dmVkYmEgc2UgamUgdXNwZcWhbm8gaXp2ZWRsYSwgc3ByZW1lbmplbmEgamUgJWQgdnJzdGljYS4nLCdQb2l6dmVkYmEgc2UgamUgdXNwZcWhbm8gaXp2ZWRsYSwgc3ByZW1lbmplbmkgc3RhICVkIHZyc3RpY2kuJywnUG9penZlZGJhIHNlIGplIHVzcGXFoW5vIGl6dmVkbGEsIHNwcmVtZW5qZW5lIHNvICVkIHZyc3RpY2UuJywnUG9penZlZGJhIHNlIGplIHVzcGXFoW5vIGl6dmVkbGEsIHNwcmVtZW5qZW5paCBqZSAlZCB2cnN0aWMuJyksYXJyYXkoJyVkIHZyc3RpY2EnLCclZCB2cnN0aWNpJywnJWQgdnJzdGljZScsJyVkIHZyc3RpYycpLCdOYXBha2EgdiBwb2l6dmVkYmknLCdOaSB1a2F6b3YgemEgaXp2ZWRiby4nLGFycmF5KCdVc3BlxaFubyBzZSBqZSBrb27EjWFsYSAlZCBwb2l6dmVkYmEuJywnVXNwZcWhbm8gc3RhIHNlIGtvbsSNYWxpICVkIHBvaXp2ZWRiaS4nLCdVc3BlxaFubyBzbyBzZSBrb27EjWFsZSAlZCBwb2l6dmVkYmUuJywnVXNwZcWhbm8gc2UgamUga29uxI1hbG8gJWQgcG9penZlZGIuJyksJ05hbG/FvmkgZGF0b3Rla28nLCdOYWxhZ2FuamUgZGF0b3RlayBqZSBvbmVtb2dvxI1lbm8uJywnSXp2ZWRpJywnVXN0YXZpIG9iIG5hcGFraScsJ1Bva2HFvmkgc2FtbyBuYXBha2UnLCd6IHN0cmXFvm5pa2EnLCdEYXRvdGVrYSBuYSBzcGxldG5lbSBzdHJlxb5uaWt1ICVzJywnWmHFvmVuaSBkYXRvdGVrbycsJ1pnb2RvdmluYScsJ1BvxI1pc3RpJywnRWRpdCBhbGwnLCdQcmVkbWV0IGplIGl6YnJpc2FuLicsJ1ByZWRtZXQgamUgcG9zb2RvYmxqZW4uJywnUHJlZG1ldCVzIGplIHZzdGF2bGplbi4nLCdWc3RhdmknLCdTaHJhbmknLCdTaHJhbmkgaW4gbmFkYWxqdWogeiB1cmVqYW5qZW0nLCdTaHJhbmkgaW4gdnN0YXZpIHRla3N0JywnSXpicmnFoWknLCdUYWJlbGEgamUgemF2csW+ZW5hLicsJ1RhYmVsYSBqZSBzcHJlbWVuamVuYS4nLCdUYWJlbGEgamUgdXN0dmFyamVuYS4nLCdVc3R2YXJpIHRhYmVsbycsJ05hanZlxI1qZSDFoXRldmlsbyBkb3ZvbGplbmloIHBvbGplIGplIHByZXNlxb5lbm8uIFByb3NpbW8sIHBvdmXEjWFqdGUgJXMgaW4gJXMuJywnSW1lIHRhYmVsZScsJ3BvZ29uJywnUG9yYXpkZWxpIHBvJywnUG9yYXpkZWxpdHZlJywnSW1lIHBvcmF6ZGVsaXR2ZScsJ1ZyZWRub3N0aScsJ0luZGVrc2kgc28gc3ByZW1lbmplbmkuJywnVGlwIGluZGVrc2EnLCdTdG9scGVjIChkb2zFvmluYSknLCdCYXphIGplIHphdnLFvmVuYS4nLCdCYXphIGplIHByZWltZW5vdmFuYS4nLCdCYXphIGplIHVzdHZhcmplbmEuJywnQmF6YSBqZSBzcHJlbWVuamVuYS4nLCdVc3R2YXJpIGJhem8nLCdTaGVtYSBqZSB6YXZyxb5lbmEuJywnU2hlbWEgamUgdXN0dmFyamVuYS4nLCdTaGVtYSBqZSBzcHJlbWVuamVuYS4nLCdQb2tsacSNaScsYXJyYXkoJ0tsaWNhbiBqZSBiaWwgcG9zdG9wZWssIHNwcmVtZW5qZW5hIGplICVkIHZyc3RpY2EuJywnS2xpY2FuIGplIGJpbCBwb3N0b3Blaywgc3ByZW1lbmplbmkgc3RhICVkIHZyc3RpY2kuJywnS2xpY2FuIGplIGJpbCBwb3N0b3Blaywgc3ByZW1lbmplbmUgc28gJWQgdnJzdGljZS4nLCdLbGljYW4gamUgYmlsIHBvc3RvcGVrLCBzcHJlbWVuamVuaWggamUgJWQgdnJzdGljLicpLCdUdWoga2xqdcSNIGplIHphdnLFvmVuLicsJ1R1aiBrbGp1xI0gamUgc3ByZW1lbmplbi4nLCdUdWoga2xqdcSNIGplIHVzdHZhcmplbi4nLCdJenZvcm5pIGluIGNpbGpuaSBzdG9scGVjIG1vcmEgaW1ldGkgaXN0aSBwb2RhdGtvdm5pIHRpcC4gT2JzdGFqYXRpIG1vcmEgaW5kZWtzIG5hIGNpbGpuaWggc3RvbHBjaWggaW4gb2JzdGFqYXRpIG1vcmFqbyByZWZlcmVuxI1uaSBwb2RhdGtpLicsJ1R1aiBrbGp1xI0nLCdDaWxqbmEgdGFiZWxhJywnU3ByZW1lbmknLCdEb2RhaiBzdG9scGVjJywnUG9nbGVkIGplIHphdnLFvmVuLicsJ1BvZ2xlZCBqZSBzcHJlbWVuamVuLicsJ1BvZ2xlZCBqZSB1c3R2YXJqZW4uJywnVXN0dmFyaSBwb2dsZWQnLCdOYXppdicsJ0RvZ29kZWsgamUgemF2csW+ZW4uJywnRG9nb2RlayBqZSBzcHJlbWVuamVuLicsJ0RvZ29kZWsgamUgdXN0dmFyamVuLicsJ1NwcmVtZW5pIGRvZ29kZWsnLCdVc3R2YXJpIGRvZ29kZWsnLCdaYcSNZXRlaycsJ0tvbmVjJywndnNha2UnLCdQbyB6YWtsanXEjWt1IG9ocmFuaScsJ1Bvc3RvcGVrIGplIHphdnLFvmVuLicsJ1Bvc3RvcGVrIGplIHNwcmVtZW5qZW4uJywnUG9zdG9wZWsgamUgdXN0dmFyamVuLicsJ1NwcmVtZW5pIGZ1bmtjaWpvJywnU3ByZW1lbmkgcG9zdG9wZWsnLCdVc3R2YXJpIGZ1bmtjaWpvJywnVXN0dmFyaSBwb3N0b3BlaycsJ1ZyYcSNYWxuaSB0aXAnLCdTZWt2ZW5jYSBqZSB6YXZyxb5lbmEuJywnU2VrdmVuY2UgamUgdXN0dmFyamVuYS4nLCdTZWt2ZW5jZSBqZSBzcHJlbWVuamVuYS4nLCdTcHJlbW5pIHNla3ZlbmNvJywnVXN0dmFyaSBzZWt2ZW5jbycsJ1RpcCBqZSB6YXZyxb5lbi4nLCdUaXAgamUgdXN0dmFyamVuLicsJ1NwcmVtZW5pIHRpcCcsJ1VzdHZhcmkgdGlwJywnU3Byb8W+aWxuaWsgamUgb2RzdHJhbmplbi4nLCdTcHJvxb5pbG5payBqZSBzcHJlbWVuamVuLicsJ1Nwcm/FvmlsbmlrIGplIHVzdHZhcmplbi4nLCdTcHJlbWVuaSBzcHJvxb5pbG5paycsJ1VzdHZhcmkgc3Byb8W+aWxuaWsnLCfEjGFzJywnRG9nb2RlaycsJ1Vwb3JhYm5payBqZSBvZHN0cmFuamVuLicsJ1Vwb3JhYm5payBqZSBzcHJlbWVuamVuLicsJ1Vwb3JhYm5payBqZSB1c3R2YXJqZW4uJywnWmFrb2RpcmFubycsJ1Bvc3RvcGVrJywnRG92b2xpJywnT2R2emVtaScsYXJyYXkoJ0tvbsSNYW4gamUgJWQgcHJvY2VzLicsJ0tvbsSNYW5hIHN0YSAlZCBwcm9jZXNhLicsJ0tvbsSNYW5pIHNvICVkIHByb2Nlc2kuJywnS29uxI1hbmloIGplICVkIHByb2Nlc292LicpLCdTa3VwYWogJWQnLCdLb27EjWFqJyxhcnJheSgnU3ByZW1lbmplbiBqZSAlZCBwcmVkbWV0LicsJ1NwcmVtZW5qZW5hIHN0YSAlZCBwcmVkbWV0YS4nLCdTcHJlbWVuamVuaSBzbyAlZCBwcmVkbWV0aS4nLCdTcHJlbWVuamVuaWggamUgJWQgcHJlZG1ldG92LicpLCdEdm9qbmkga2xpayBuYSB2cmVkbm9zdCB6YSB1cmVqYW5qZS4nLGFycmF5KCdVdm/FvmVuYSBqZSAlZCB2cnN0aWNhLicsJ1V2b8W+ZW5pIHN0YSAlZCB2cnN0aWNpLicsJ1V2b8W+ZW5lIHNvICVkIHZyc3RpY2UuJywnVXZvxb5lbmloIGplICVkIHZyc3RpYy4nKSwnTmUgbW9yZW0gaXpicmF0aSB0YWJlbGUnLCdSZWxhY2lqc2tpJywnVXBvcmFiaXRlIHVyZWphbmplIHBvdmV6YXZlIHphIHNwcmVtaW5qYW5qZSB0ZSB2cmVkbm9zdGkuJywnU3RyYW4nLCdaYWRuamEnLCdjZWwgcmF6dWx0YXQnLCdLbG9uaXJhaicsJ1V2b3ppJywnICcsJ1RhYmVsZSBzbyBza3JhasWhYW5lLicsJ1RhYmVsZSBzbyBwcmVtYWtuamVuZS4nLCdUYWJlbGUgc28ga29waXJhbmUuJywnVGFiZWxlIHNvIHphdnLFvmVuZS4nLCdUYWJlbGUgaW4gcG9nbGVkaScsJ0nFocSNZSBwb2RhdGtlIHBvIHRhYmVsYWgnLCdQb2dvbicsJ1ZlbGlrb3N0IHBvZGF0a292JywnVmVsaWtvc3QgaW5kZWtzYScsJ1BvZGF0a292IHByb3N0byAnLCdWcnN0aWMnLCdBbmFsaXppcmFqJywnT3B0aW1pemlyYWonLCdQcmV2ZXJpJywnUG9wcmF2aScsJ1NrcmFqxaFhaicsJ1ByZW1ha25pIHYgZHJ1Z28gYmF6bycsJ1ByZW1ha25pJywnS29waXJhaicsJ1Nla3ZlbmNlJywnVXJuaWsnLCd2IGRhbmVtIMSNYXN1JywnemRhaicpO2JyZWFrO2Nhc2UidHIiOiRZPWFycmF5KCdFbWluIG1pc2luPycsJ0Rvc3lhIGfDtm5kZXJpbGVtaXlvci4nLCdCaXIgZG9zeWEgacOnaW4gaXppbiB2ZXJpbGVuIGRvc3lhIHPEsW7EsXLEsSAlc0IuJywnRG9zeWEgbWV2Y3V0IGRlxJ9pbC4nLCdib8WfJywnb3JpamluYWwnLCdUYWJsbyB5b2suJywnRGlsJywnS3VsbGFuJywnJXMgdXphbnTEsWxhcsSxbmRhbiBiaXJpbmkga3VsbGFuxLFuLicsJ0Rvc3lhIG1ldmN1dC4nLCdLdWxsYW7EsWPEsSB0w7xybGVyaScsJ1NhecSxbGFyJywnVGFyaWggdmUgemFtYW4nLCdTw7Z6Y8O8a2xlcicsJ8Swa2lsaScsJ0HEnycsJ0dlb21ldHJpJywnTGlzdGVsZXInLCdTaXN0ZW0nLCdTdW51Y3UnLCdLdWxsYW7EsWPEsScsJ1Bhcm9sYScsJ0dpcmnFnycsJ0thbMSxY8SxIGdpcmnFnycsJ1Zlcmkgc2XDpycsJ1lhcMSxecSxIGfDtnN0ZXInLCdEZcSfacWfaW0gZ8O2csO8bsO8bScsJ1RhYmxvIGRlxJ9pxZ90aXInLCdZZW5pIMO2xJ9lJywnU29uIHNheWZhJywnRMO8emVuJyxhcnJheSgnJWQgYmF5dCcsJyVkIGthZGFyIGJheXQnKSwnU2XDpycsJ0ZvbmtzaXlvbmxhcicsJ0vDvG1lbGVtZScsJ0FyYW1hJywnaGVyaGFuZ2kgYmlyIHllcicsJ1PEsXJhbGEnLCdhemFsYW4nLCdzxLFuxLFyJywnWWF6xLEgdXp1bmx1xJ91JywnRXlsZW0nLCdTUUwga29tdXR1JywnYcOnJywna2F5ZGV0JywnVmVyaXRhYmFuxLEgZGXEn2nFn3RpcicsJ0RlxJ9pxZ9pbSDFn2VtYXPEsScsJ1lhcmF0xLFtIMWfZW1hc8SxJywnRMO2a8O8bScsJ8OHxLFrxLHFnycsJ3Zlcml0YWJhbsSxJywnxZ9lbWEnLCdZZW5pIHRhYmxvIHlhcmF0Jywnc2XDpycsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/JywnR2XDp2Vyc2l6IENyb3NzLXNpdGUgcmVxdWVzdCBmb3JnZXJ5IChDU1JGKSBqZXRvbnUuIEZvcnVtdSB0ZWtyYXIgeW9sbGEuJywnQmHFn2FyxLF5bGEgw6fEsWvEsWxkxLEuJywnT3R1cnVtIGRlc3RlxJ9pIGV0a2luIG9sbWFsxLFkxLFyLicsJ090dXJ1bSBzw7xyZXNpIGRvbGR1LCBsw7x0ZmVuIHRla3JhciBnaXJpxZ8geWFwxLFuLicsJ0dlw6dlcnNpeiBraW1saWsuJywnVXphbnTEsSB5b2snLCdEZXN0ZWtsZW5lbiBQSFAgdXphbnTEsWxhcsSxbmRhbiAoJXMpIGhpw6diaXJpIG1ldmN1dCBkZcSfaWwuJywnw4dvayBiw7x5w7xrIFBPU1QgdmVyaXNpLCB2ZXJpeWkgYXphbHTEsW4geWEgZGEgYXlhciB5w7ZuZXJnZXNpbmkgdXlndW4gb2xhcmFrIHlhcMSxbGFuZMSxcsSxbi4nLCdWZXJpdGFiYW7EsScsJ0dlw6dlcnNpeiB2ZXJpdGFiYW7EsS4nLCdWZXJpdGFiYW5sYXLEsSBkw7zFn8O8w7xsZMO8LicsJ1Zlcml0YWJhbsSxIHNlw6cnLCdZZW5pIHZlcml0YWJhbsSxIHlhcmF0JywnxLB6aW5sZXInLCfEsMWfbGVtIGxpc3Rlc2knLCdEZcSfacWfa2VubGVyJywnRHVydW0nLCclcyBzw7xyw7xtOiAlcyBQSFAgdXphbnTEsXPEsSBpbGUgJXMnLCclcyBvbGFyYWsgZ2lyacWfIHlhcMSxbGTEsS4nLCdLYXLFn8SxbGHFn3TEsXJtYScsJ1RhYmxvbGFyJywnRMO8xZ/DvHInLCdUYXplbGUnLCfFnmVtYScsJ0dlw6dlcnNpeiDFn2VtYS4nLCdTxLFyYSB5b2suJywnJS4zZiBzJywnRMSxxZ8gYW5haHRhcmxhcicsJ2thcsWfxLFsYcWfdMSxcm1hJywnU2lsaW5tZWsgw7x6ZXJlJywnS29sb24gYWTEsScsJ1BhcmFtZXRyZSBhZMSxJywnVMO8cicsJ1V6dW5sdWsnLCdTZcOnZW5la2xlcicsJ090b21hdGlrIHnDvGtzZWx0JywnVmFyc2F5xLFsYW4gZGXEn2VybGVyJywnWW9ydW0nLCdTb25yYXlhIGVrbGUnLCdZdWthcsSxIHRhxZ/EsScsJ0HFnmHEn8SxIHRhxZ8nLCdLYWxkxLFyJywnR8O2csO8bsO8bScsJ1RhYmxvJywnS29sb24nLCdEaXppbmxlcicsJ0RpemlubGVyaSBkZcSfacWfdGlyJywnS2F5bmFrJywnSGVkZWYnLCdZw7xrc2VsdGlsbWVrIMO8emVyZScsJ0RlxJ9pxZ90aXInLCdExLHFnyBhbmFodGFyIGVrbGUnLCdUZXRpa2xlcicsJ1RldGlrIGVrbGUnLCdWZXJpdGFiYW7EsSDFn2VtYXPEsScsJ1Blcm1hbmVudCBsaW5rJywnxLBocmHDpycsJ8OHxLFrdMSxJywnQmnDp2ltJywnWW9yZGFtbGFyJywnT2xheWxhcicsJ1ZlcmknLCdkw7x6ZW4nLCdLdWxsYW7EsWPEsSB5YXJhdCcsYXJyYXkoJ1Nvcmd1IGnFn2xldGlsbWVzaSB0YW1hbWxhbmTEsS4gJWQgc8SxcmEocm93KSBldGtpbGVuZGkuJywnU29yZ3UgacWfbGV0aWxtZXNpIHRhbWFtbGFuZMSxLiBCdW5kYW4gJWQga2FkYXIgc8SxcmEgZXRraWxlbmRpLicpLGFycmF5KCclZCBzxLFyYSknLCclZCBrYWRhciBzxLFyYScpLCdTb3JndWRhIGhhdGEnLCfEsMWfbGV0aWxtZWsgacOnaW4ga29tdXQgeW9rLicsYXJyYXkoJyVkIHNvcmd1bnVuIGnFn2xldGlsbWVzaSB0YW1hbWxhbmTEsS4nLCclZCBrYWRhciBzb3JndW51biBpxZ9sZXRpbG1lc2kgdGFtYW1sYW5kxLEuJyksJ0Rvc3lhIGfDtm5kZXInLCdEb3N5YSBnw7ZuZGVyaW1pIGV0a2luIGRlxJ9pbC4nLCfEsMWfbGV0JywnRHVyIGhhdGEnLCdTYWRlY2UgaGF0YWxhcsSxIGfDtnN0ZXIuJywnU3VudWN1ZGFuJywnJXMgd2ViIHN1bnVjdXN1IGRvc3lhc8SxJywnRG9zeWEgw6dhbMSxxZ90xLFyJywnVGFyaWgnLCdCb8WfbHVrJywnRWRpdCBhbGwnLCfDlsSfZSBzaWxpbmRpLicsJ8OWxJ9lIGfDvG5jZWxsZW5kaS4nLCfDlsSfZWxlciBla2xlbmRpLicsJ0VrbGUnLCdLYXlkZXQnLCdLYXlkZXQgdmUgZMO8emVubGVtZXllIGRldmFtIGV0JywnS2F5ZGV0IHZlIHNvbnJha2luIGVrbGUnLCdTaWwnLCdUYWJsbyBkw7zFn8O8csO8bGTDvC4nLCdUYWJsbyBkZcSfacWfdGlyaWxkaS4nLCdUYWJsbyB5YXJhdMSxbGTEsS4nLCdUYWJsbyB5YXJhdCcsJ2thYnVsIGVkaWxlYmlsaXIgYWxhbiBzYXnEsXPEsSBhxZ/EsWxkxLEuIEzDvHRmZW4gJXMgdmUgJXMgZMO8xZ/DvHLDvG4uJywnVGFibG8gYWTEsScsJ21vdG9yJywnQsO2bMO8bcO8IHRhcmFmxLFuZGFuJywnQsO2bMO8bWxlcicsJ0LDlmzDvG0gYWTEsScsJ0RlxJ9lcmxlcicsJ0RpemlubGVyIGRlxJ9pxZ90aXJpbGlkaS4nLCdEaXppbiBUw7xyw7wnLCdLb2xvbiAodXp1bmx1xJ91KScsJ1Zlcml0YWJhbsSxIGTDvMWfw7xyw7xsZMO8LicsJ1Zlcml0YWJhbsSxbsSxbiBpc21pIGRlxJ9pxZ90aXJpbGRpLicsJ1Zlcml0YWJhbsSxIHlhcmF0xLFsZMSxLicsJ1Zlcml0YWJhbsSxIGRlxJ9pxZ90aXJpbGRpLicsJ1Zlcml0YWJhbsSxIHlhcmF0JywnxZ5lbWEgZMO8xZ/DvHLDvGxkw7wuJywnxZ5lbWEgeWFyYXTEsWxkxLEuJywnxZ5lbWEgZGXEn2nFn3RpcmlsZGkuJywnw4dhxJ9yxLEnLGFycmF5KCdZb3JkYW0gw6dhxJ9yxLFsZMSxLCAlZCBzxLFyYShyb3cpIGV0a2lsZW5kaS4nLCdZb3JkYW0gw6dhxJ9yxLFsZMSxLCAlZCBzxLFyYWxhcihyb3dzKSBldGtpbGVuZGkuJyksJ0TEscWfIGFuYWh0YXIgZMO8xZ/DvHLDvGxkw7wuJywnRMSxxZ8gYW5haHRhciBkZcSfacWfdGlyLicsJ0TEscWfIGFuYWh0YXIgeWFyYXQuJywnS2F5bmFrIHZlIGhlZGVmIGtvbG9ubGFyIGF5bsSxIHZlcmkgdMO8csO8IG9sbWFrIHpvcnVuZGEsIGhlZGVmIGtvbG9uZGEgYmlyIGRpemluIHZlIGJhxZ92dXJ1bGFuIHZlcmkgYnVsdW5tYWzEsS4nLCdExLHFnyBhbmFodGFyJywnSGVkZWYgdGFibG8nLCdEZcSfacWfJywnS29sb24gZWtsZGUnLCdHw7Zyw7xuw7xtIGTDvMWfw7xyw7xsZMO8LicsJ0fDtnLDvG7DvG0gZGXEn2nFn3RpcmlsZGkuJywnR8O2csO8bsO8bSB5YXJhdMSxbGTEsS4nLCdHw7Zyw7xuw7xtIHlhcmF0JywnQWQnLCdPbGF5IGTDvMWfw7xkw7xsZMO8LicsJ09sYXkgZGXEn2nFn3RpcmlsZGkuJywnT2xheSB5YXJhdMSxbGTEsS4nLCdEZcSfacWfdGlybWUgb2xhecSxJywnWWFyYXRtYSBvbGF5xLEnLCdCYcWfbGEnLCdTb24nLCdIZXJ6YW1hbicsJ1RhbWFtbGFtYSBrb3J1bWFzxLEgQcOHSUsnLCdZb3JkYW0gZMO8xZ/DvHLDvGxkw7wuJywnWW9yZGFtIGRlxJ9pxZ90aXJpbGRpLicsJ1lvcmRhbSB5YXJhdMSxbGTEsS4nLCdEZcSfacWfdGlybWUgZm9ua3N5aW9udScsJ0RlxJ9pxZ90aXJtZSB5w7ZudGVtaScsJ0ZvbmtzaXlvbiB5YXJhdCcsJ1nDtm50ZW0geWFyYXQnLCdHZXJpIGTDtm7DvMWfIHTDvHLDvCcsJ0RpemkgZMO8xZ/DvHLDvGxkw7wuJywnRGl6aSB5YXJhdMSxbGTEsS4nLCdEaXppIGRlxJ9pxZ90aXJpbGRpLicsJ0RpemkgZGXEn2nFn3RpcicsJ0RpemkgeWFyYXQnLCdUw7xyIGTDvMWfw7xyw7xsZMO8LicsJ1TDvHIgeWFyYXTEsWxkxLEuJywnVMO8ciBkZcSfacWfdGlyJywnVMO8ciB5YXJhdCcsJ1RldGlrIGTDvMWfw7xyw7xsZMO8LicsJ1RldGlrIGRlxJ9pxZ90aXJpbGRpLicsJ1RldGlrIHlhcmF0xLFsZMSxLicsJ1RldGlrIGRlxJ9pxZ90aXIuJywnVGV0aWsgeWFyYXQnLCdaYW1hbicsJ09sYXknLCdLdWxsYW7EsWPEsSBkw7zFn8O8csO8bGTDvC4nLCdLdWxsYW7EsWPEsSBkZcSfacWfdGlyaWxkaS4nLCdLdWxsYW7EsWPEsSB5YXJhdMSxbGTEsS4nLCdIYXJtYW5sYW5kxLEuJywnWW9yZGFtJywnxLBtdGl5YXonLCdHZXJpIGFsJyxhcnJheSgnJWQgc8O8cmXDpyDDtmxkw7xyw7xsZMO8LicsJyVkIGFkZXQgc8O8cmXDpyDDtmxkw7xyw7xsZMO8LicpLCclZCB0b3BsYW1kYScsJ8OWbGTDvHInLGFycmF5KCclZCDDtsSfZSBldGtpbGVuZGkuJywnJWQga2FkYXIgw7bEn2UgZXRraWxlbmRpLicpLCdEZcSfZXJpbiDDvHplcmluZSDDp2lmdCB0xLFrbGF5xLFuIHZlIGRlxJ9pxZ90aXJpbi4nLGFycmF5KCclZCBzxLFyYSBpdGhhbCBlZGlsZGkuJywnJWQga2FkYXIgc8SxcmEgaXRoYWwgZWRpbGRpLicpLCdUYWJsbyBzZcOnaWxlbWVkaScsJ8SwbGnFn2tpbGVyJywnRGXEn2VyaSBkZcSfacWfdGlybWVrIGnDp2luIGTDvHplbmxlbWUgYmHEn2xhbnTEsXPEsW7EsSBrdWxsYW7EsW4uJywnU2F5ZmEnLCdzb24nLCd0w7xtIHNvbnXDpycsJ0tsb25sYScsJ8SwdGhhbCcsJyAnLCdUYWJsb2xhciBidWRhbmTEsS4nLCdUYWJsb2xhciB0YcWfxLFuZMSxLicsJ1RhYmxvbGFyIGtvcHlhbGFuZMSxLicsJ1RhYmxvbGFyIGTDvMWfw7xyw7xsZMO8LicsJ1RhYmxvbGFyIHZlIGfDtnLDvG7DvG1sZXInLCdUYWJsb2xhcmRhIHZlcmkgYXJhLicsJ01vdG9yJywnVmVyaSB1enVubHXEn3UnLCdEaXppbiB1enVubHXEn3UnLCdTZXJiZXN0IHZlcmknLCdTxLFyYWxhciAoUm93cyknLCfDh8O2esO8bWxlbWUnLCdFbiB1eWd1biBoYWxlIGdldGlybWUnLCdEZW5ldGxlbWUnLCdUYW1pcicsJ0J1ZGEnLCdEacSfZXIgdmVyaXRhYmFuxLFuYSB0YcWfxLEnLCdUYcWfxLEnLCdLb3B5YWxhJywnRGl6aWxlcicsJ1Rha3ZpbWxpJywnQmlyIGFuZGEnLCfFn2ltZGknKTticmVhaztjYXNlInJ1IjokWT1hcnJheSgn0JLRiyDRg9Cy0LXRgNC10L3Riz8nLCfQndC1INGD0LTQsNC70L7RgdGMINC30LDQs9GA0YPQt9C40YLRjCDRhNCw0LnQuyDQvdCwINGB0LXRgNCy0LXRgC4nLCfQnNCw0LrRgdC40LzQsNC70YzQvdGL0Lkg0YDQsNC30YDQtdGI0LXQvdC90YvQuSDRgNCw0LfQvNC10YAg0YTQsNC50LvQsCAtICVzQi4nLCfQotCw0LrQvtCz0L4g0YTQsNC50LvQsCDQvdC1INGB0YPRidC10YHRgtCy0YPQtdGCLicsJ9C/0YPRgdGC0L4nLCfQuNGB0YXQvtC00L3Ri9C5Jywn0JIg0LHQsNC30LUg0LTQsNC90L3Ri9GFINC90LXRgiDRgtCw0LHQu9C40YYuJywn0K/Qt9GL0LonLCfQktGL0LHRgNCw0YLRjCcsJ9CY0YHQv9C+0LvRjNC30YPQudGC0LUg0L7QtNC90L4g0LjQtyDRjdGC0LjRhSDRgNCw0YHRiNC40YDQtdC90LjQuSAlcy4nLCfQpNCw0LnQuyDRg9C20LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIuJywn0KLQuNC/0Ysg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10LknLCfQp9C40YHQu9C+Jywn0JTQsNGC0LAg0Lgg0LLRgNC10LzRjycsJ9Ch0YLRgNC+0LrQuCcsJ9CU0LLQvtC40YfQvdGL0Lkg0YLQuNC/Jywn0KHQtdGC0YwnLCfQk9C10L7QvNC10YLRgNC40Y8nLCfQodC/0LjRgdC60LgnLCfQlNCy0LjQttC+0LonLCfQodC10YDQstC10YAnLCfQmNC80Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJywn0J/QsNGA0L7Qu9GMJywn0JLQvtC50YLQuCcsJ9Ce0YHRgtCw0LLQsNGC0YzRgdGPINCyINGB0LjRgdGC0LXQvNC1Jywn0JLRi9Cx0YDQsNGC0YwnLCfQn9C+0LrQsNC30LDRgtGMINGB0YLRgNGD0LrRgtGD0YDRgycsJ9CY0LfQvNC10L3QuNGC0Ywg0L/RgNC10LTRgdGC0LDQstC70LXQvdC40LUnLCfQmNC30LzQtdC90LjRgtGMINGC0LDQsdC70LjRhtGDJywn0J3QvtCy0LDRjyDQt9Cw0L/QuNGB0YwnLCfQn9C+0YHQu9C10LTQvdGP0Y8g0YHRgtGA0LDQvdC40YbQsCcsJ9Cg0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMJyxhcnJheSgnJWQg0LHQsNC50YInLCclZCDQsdCw0LnRgtCwJywnJWQg0LHQsNC50YLQvtCyJyksJ9CS0YvQsdGA0LDRgtGMJywn0KTRg9C90LrRhtC40LgnLCfQkNCz0YDQtdCz0LDRhtC40Y8nLCfQn9C+0LjRgdC6Jywn0LIg0LvRjtCx0L7QvCDQvNC10YHRgtC1Jywn0KHQvtGA0YLQuNGA0L7QstCw0YLRjCcsJ9C/0L4g0YPQsdGL0LLQsNC90LjRjicsJ9Cb0LjQvNC40YInLCfQlNC70LjQvdCwINGC0LXQutGB0YLQsCcsJ9CU0LXQudGB0YLQstC40LUnLCdTUUwg0LfQsNC/0YDQvtGBJywn0L7RgtC60YDRi9GC0YwnLCfRgdC+0YXRgNCw0L3QuNGC0YwnLCfQmNC30LzQtdC90LjRgtGMINCx0LDQt9GDINC00LDQvdC90YvRhScsJ9CY0LfQvNC10L3QuNGC0Ywg0YHRhdC10LzRgycsJ9Cd0L7QstCw0Y8g0YHRhdC10LzQsCcsJ9CU0LDQvNC/Jywn0JLRi9C50YLQuCcsJ9Cx0LDQt9CwINC00LDQvdC90YvRhScsJ9GB0YXQtdC80LAnLCfQodC+0LfQtNCw0YLRjCDQvdC+0LLRg9GOINGC0LDQsdC70LjRhtGDJywn0LLRi9Cx0YDQsNGC0YwnLCdsdHInLCdSZXNlbmQgUE9TVCBkYXRhPycsJ9Cd0LXQtNC10LnRgdGC0LLQuNGC0LXQu9GM0L3Ri9C5IENTUkYg0YLQvtC60LXQvS4g0J7RgtC/0YDQsNCy0LjRgtC1INGE0L7RgNC80YMg0LXRidGRINGA0LDQty4nLCfQktGLINGD0YHQv9C10YjQvdC+INC/0L7QutC40L3Rg9C70Lgg0YHQuNGB0YLQtdC80YMuJywn0KHQtdGB0YHQuNC4INC00L7Qu9C20L3RiyDQsdGL0YLRjCDQstC60LvRjtGH0LXQvdGLLicsJ9Ch0YDQvtC6INC00LXQudGB0YLQstC40Y8g0YHQtdGB0YHQuCDQuNGB0YLQtdC6LCDQvdGD0LbQvdC+INGB0L3QvtCy0LAg0LLQvtC50YLQuCDQsiDRgdC40YHRgtC10LzRgy4nLCfQndC10L/RgNCw0LLQuNC70YzQvdC+0LUg0LjQvNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjyDQuNC70Lgg0L/QsNGA0L7Qu9GMLicsJ9Cd0LXRgiDRgNCw0YHRiNC40YDQtdC90LjQuScsJ9Cd0LUg0LTQvtGB0YLRg9C/0L3QviDQvdC4INC+0LTQvdC+0LPQviDRgNCw0YHRiNC40YDQtdC90LjRjyDQuNC3INC/0L7QtNC00LXRgNC20LjQstCw0LXQvNGL0YUgKCVzKS4nLCfQodC70LjRiNC60L7QvCDQsdC+0LvRjNGI0L7QuSDQvtCx0YrQtdC8IFBPU1Qt0LTQsNC90L3Ri9GFLiDQn9C+0YjQu9C40YLQtSDQvNC10L3RjNGI0LjQuSDQvtCx0YrQtdC8INC00LDQvdC90YvRhSDQuNC70Lgg0YPQstC10LvQuNGH0YzRgtC1INC/0LDRgNCw0LzQtdGC0YAg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNC+0L3QvdC+0Lkg0LTQuNGA0LXQutGC0LjQstGLICVzLicsJ9CR0LDQt9CwINC00LDQvdC90YvRhScsJ9Cf0LvQvtGF0LDRjyDQsdCw0LfQsCDQtNCw0L3QvdGL0YUuJywn0JHQsNC30Ysg0LTQsNC90L3Ri9GFINGD0LTQsNC70LXQvdGLLicsJ9CS0YvQsdGA0LDRgtGMINCx0LDQt9GDINC00LDQvdC90YvRhScsJ9Ch0L7Qt9C00LDRgtGMINC90L7QstGD0Y4g0LHQsNC30YMg0LTQsNC90L3Ri9GFJywn0J/QvtC70L3QvtC80L7Rh9C40Y8nLCfQodC/0LjRgdC+0Log0L/RgNC+0YbQtdGB0YHQvtCyJywn0J/QtdGA0LXQvNC10L3QvdGL0LUnLCfQodC+0YHRgtC+0Y/QvdC40LUnLCfQktC10YDRgdC40Y8gJXM6ICVzINGBIFBIUC3RgNCw0YHRiNC40YDQtdC90LjQtdC8ICVzJywn0JLRiyDQstC+0YjQu9C4INC60LDQujogJXMnLCfQoNC10LbQuNC8INGB0L7Qv9C+0YHRgtCw0LLQu9C10L3QuNGPJywn0KLQsNCx0LvQuNGG0YsnLCfQo9C00LDQu9C40YLRjCcsJ9Ce0LHQvdC+0LLQuNGC0YwnLCfQodGF0LXQvNCwJywn0J3QtdC/0YDQsNCy0LjQu9GM0L3QsNGPINGB0YXQtdC80LAuJywn0J3QtdGCINC30LDQv9C40YHQtdC5LicsJyUuM2YgcycsJ9CS0L3QtdGI0L3QuNC1INC60LvRjtGH0LgnLCfRgNC10LbQuNC8INGB0L7Qv9C+0YHRgtCw0LLQu9C10L3QuNGPJywn0J/RgNC4INGB0YLQuNGA0LDQvdC40LgnLCfQndCw0LfQstCw0L3QuNC1INC/0L7Qu9GPJywn0J3QsNC30LLQsNC90LjQtSDQv9Cw0YDQsNC80LXRgtGA0LAnLCfQotC40L8nLCfQlNC70LjQvdCwJywn0JTQtdC50YHRgtCy0LjQtScsJ9CQ0LLRgtC+0LzQsNGC0LjRh9C10YHQutC+0LUg0L/RgNC40YDQsNGJ0LXQvdC40LUnLCfQl9C90LDRh9C10L3QuNGPINC/0L4g0YPQvNC+0LvRh9Cw0L3QuNGOJywn0JrQvtC80LzQtdC90YLQsNGA0LjQuScsJ9CU0L7QsdCw0LLQuNGC0Ywg0LXRidC1Jywn0J/QtdGA0LXQvNC10YHRgtC40YLRjCDQstCy0LXRgNGFJywn0J/QtdGA0LXQvNC10YHRgtC40YLRjCDQstC90LjQtycsJ9Cj0LTQsNC70LjRgtGMJywn0J/RgNC10LTRgdGC0LDQstC70LXQvdC40LUnLCfQotCw0LHQu9C40YbQsCcsJ9Ca0L7Qu9C+0L3QutCwJywn0JjQvdC00LXQutGB0YsnLCfQmNC30LzQtdC90LjRgtGMINC40L3QtNC10LrRgdGLJywn0JjRgdGC0L7Rh9C90LjQuicsJ9Cm0LXQu9GMJywn0J/RgNC4INC+0LHQvdC+0LLQu9C10L3QuNC4Jywn0JjQt9C80LXQvdC40YLRjCcsJ9CU0L7QsdCw0LLQuNGC0Ywg0LLQvdC10YjQvdC40Lkg0LrQu9GO0YcnLCfQotGA0LjQs9Cz0LXRgNGLJywn0JTQvtCx0LDQstC40YLRjCDRgtGA0LjQs9Cz0LXRgCcsJ9Ch0YXQtdC80LAg0LHQsNC30Ysg0LTQsNC90L3Ri9GFJywnUGVybWFuZW50IGxpbmsnLCfQrdC60YHQv9C+0YDRgicsJ9CS0YvRhdC+0LTQvdGL0LUg0LTQsNC90L3Ri9C1Jywn0KTQvtGA0LzQsNGCJywn0KXRgNCw0L3QuNC80YvQtSDQv9GA0L7RhtC10LTRg9GA0Ysg0Lgg0YTRg9C90LrRhtC40LgnLCfQodC+0LHRi9GC0LjRjycsJ9CU0LDQvdC90YvQtScsJ9GA0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMJywn0KHQvtC30LTQsNGC0Ywg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPJyxhcnJheSgn0JfQsNC/0YDQvtGBINC30LDQstC10YDRiNC10L0sINC40LfQvNC10L3QtdC90LAgJWQg0LfQsNC/0LjRgdGMLicsJ9CX0LDQv9GA0L7RgSDQt9Cw0LLQtdGA0YjQtdC9LCDQuNC30LzQtdC90LXQvdGLICVkINC30LDQv9C40YHQuC4nLCfQl9Cw0L/RgNC+0YEg0LfQsNCy0LXRgNGI0LXQvSwg0LjQt9C80LXQvdC10L3QviAlZCDQt9Cw0L/QuNGB0LXQuS4nKSxhcnJheSgnJWQg0YHRgtGA0L7QutCwJywnJWQg0YHRgtGA0L7QutC4JywnJWQg0YHRgtGA0L7QuicpLCfQntGI0LjQsdC60LAg0LIg0LfQsNC/0YDQvtGBZScsJ9Cd0LXRgiDQutC+0LzQsNC90LQg0LTQu9GPINCy0YvQv9C+0LvQvdC10L3QuNGPLicsYXJyYXkoJyVkINC30LDQv9GA0L7RgSDQstGL0L/QvtC70L3QtdC9INGD0YHQv9C10YjQvdC+LicsJyVkINC30LDQv9GA0L7RgdCwINCy0YvQv9C+0LvQvdC10L3QviDRg9GB0L/QtdGI0L3Qvi4nLCclZCDQt9Cw0L/RgNC+0YHQvtCyINCy0YvQv9C+0LvQvdC10L3QviDRg9GB0L/QtdGI0L3Qvi4nKSwn0JfQsNCz0YDRg9C30LjRgtGMINGE0LDQudC7INC90LAg0YHQtdGA0LLQtdGAJywn0JfQsNCz0YDRg9C30LrQsCDRhNCw0LnQu9C+0LIg0L3QsCDRgdC10YDQstC10YAg0LfQsNC/0YDQtdGJ0LXQvdCwLicsJ9CS0YvQv9C+0LvQvdC40YLRjCcsJ9Ce0YHRgtCw0L3QvtCy0LjRgtGMINC/0YDQuCDQvtGI0LjQsdC60LUnLCfQotC+0LvRjNC60L4g0L7RiNC40LHQutC4Jywn0KEg0YHQtdGA0LLQtdGA0LAnLCfQpNCw0LnQuyAlcyDQvdCwINCy0LXQsdGB0LXRgNCy0LXRgNC1Jywn0JfQsNC/0YPRgdGC0LjRgtGMINGE0LDQudC7Jywn0JjRgdGC0L7RgNC40Y8nLCfQntGH0LjRgdGC0LjRgtGMJywnRWRpdCBhbGwnLCfQl9Cw0L/QuNGB0Ywg0YPQtNCw0LvQtdC90LAuJywn0JfQsNC/0LjRgdGMINC+0LHQvdC+0LLQu9C10L3QsC4nLCfQl9Cw0L/QuNGB0YwlcyDQsdGL0LvQsCDQstGB0YLQsNCy0LvQtdC90LAuJywn0JLRgdGC0LDQstC40YLRjCcsJ9Ch0L7RhdGA0LDQvdC40YLRjCcsJ9Ch0L7RhdGA0LDQvdC40YLRjCDQuCDQv9GA0L7QtNC+0LvQttC40YLRjCDRgNC10LTQsNC60YLQuNGA0L7QstCw0L3QuNC1Jywn0KHQvtGF0YDQsNC90LjRgtGMINC4INCy0YHRgtCw0LLQuNGC0Ywg0LXRidC1Jywn0KHRgtC10YDQtdGC0YwnLCfQotCw0LHQu9C40YbQsCDQsdGL0LvQsCDRg9C00LDQu9C10L3QsC4nLCfQotCw0LHQu9C40YbQsCDQsdGL0LvQsCDQuNC30LzQtdC90LXQvdCwLicsJ9Ci0LDQsdC70LjRhtCwINCx0YvQu9CwINGB0L7Qt9C00LDQvdCwLicsJ9Ch0L7Qt9C00LDRgtGMINGC0LDQsdC70LjRhtGDJywn0JTQvtGB0YLQuNCz0L3Rg9GC0L4g0LzQsNC60YHQuNC80LDQu9GM0L3QvtC1INC30L3QsNGH0LXQvdC40LUg0LrQvtC70LjRh9C10YHRgtCy0LAg0LTQvtGB0YLRg9C/0L3Ri9GFINC/0L7Qu9C10LkuINCj0LLQtdC70LjRh9GM0YLQtSAlcyDQuCAlcy4nLCfQndCw0LfQstCw0L3QuNC1INGC0LDQsdC70LjRhtGLJywn0YLQuNC/Jywn0KDQsNC30LTQtdC70LjRgtGMINC/0L4nLCfQoNCw0LfQtNC10LvRiycsJ9Cd0LDQt9Cy0LDQvdC40LUg0YDQsNC30LTQtdC70LAnLCfQn9Cw0YDQsNC80LXRgtGA0YsnLCfQmNC90LTQtdC60YHRiyDQuNC30LzQtdC90LXQvdGLLicsJ9Ci0LjQvyDQuNC90LTQtdC60YHQsCcsJ9Ca0L7Qu9C+0L3QutCwICjQtNC70LjQvdCwKScsJ9CR0LDQt9CwINC00LDQvdC90YvRhSDQsdGL0LvQsCDRg9C00LDQu9C10L3QsC4nLCfQkdCw0LfQsCDQtNCw0L3QvdGL0YUg0LHRi9C70LAg0L/QtdGA0LXQuNC80LXQvdC+0LLQsNC90LAuJywn0JHQsNC30LAg0LTQsNC90L3Ri9GFINCx0YvQu9CwINGB0L7Qt9C00LDQvdCwLicsJ9CR0LDQt9CwINC00LDQvdC90YvRhSDQsdGL0LvQsCDQuNC30LzQtdC90LXQvdCwLicsJ9Ch0L7Qt9C00LDRgtGMINCx0LDQt9GDINC00LDQvdC90YvRhScsJ9Ch0YXQtdC80LAg0YPQtNCw0LvQtdC90LAuJywn0KHQvtC30LTQsNC90LAg0L3QvtCy0LDRjyDRgdGF0LXQvNCwLicsJ9Ch0YXQtdC80LAg0LjQt9C80LXQvdC10L3QsC4nLCfQktGL0LfQstCw0YLRjCcsYXJyYXkoJ9CR0YvQu9CwINCy0YvQt9Cy0LDQvdCwINC/0YDQvtGG0LXQtNGD0YDQsCwgJWQg0LfQsNC/0LjRgdGMINCx0YvQu9CwINC40LfQvNC10L3QtdC90LAuJywn0JHRi9C70LAg0LLRi9C30LLQsNC90LAg0L/RgNC+0YbQtdC00YPRgNCwLCAlZCDQt9Cw0L/QuNGB0Lgg0LHRi9C70L4g0LjQt9C80LXQvdC10L3Qvi4nLCfQkdGL0LvQsCDQstGL0LfQstCw0L3QsCDQv9GA0L7RhtC10LTRg9GA0LAsICVkINC30LDQv9C40YHQtdC5INCx0YvQu9C+INC40LfQvNC10L3QtdC90L4uJyksJ9CS0L3QtdGI0L3QuNC5INC60LvRjtGHINCx0YvQuyDRg9C00LDQu9C10L0uJywn0JLQvdC10YjQvdC40Lkg0LrQu9GO0Ycg0LHRi9C7INC40LfQvNC10L3QtdC9LicsJ9CS0L3QtdGI0L3QuNC5INC60LvRjtGHINCx0YvQuyDRgdC+0LfQtNCw0L0uJywn0JrQvtC70L7QvdC60Lgg0LTQvtC70LbQvdGLINC40LzQtdGC0Ywg0L7QtNC40L3QsNC60L7QstGL0LUg0YLQuNC/0Ysg0LTQsNC90L3Ri9GFLCDQsiDRgNC10LfRg9C70YzRgtC40YDRg9GO0YnQtdC5INC60L7Qu9C+0L3QutC1INC00L7Qu9C20LXQvSDQsdGL0YLRjCDQuNC90LTQtdC60YEsINC00LDQvdC90YvQtSDQtNC70Y8g0LjQvNC/0L7RgNGC0LAg0LTQvtC70LbQvdGLINGB0YPRidC10YHRgtCy0L7QstCw0YLRjC4nLCfQktC90LXRiNC90LjQuSDQutC70Y7RhycsJ9Cg0LXQt9GD0LvRjNGC0LjRgNGD0Y7RidCw0Y8g0YLQsNCx0LvQuNGG0LAnLCfQmNC30LzQtdC90LjRgtGMJywn0JTQvtCx0LDQstC40YLRjCDQutC+0LvQvtC90LrRgycsJ9Cf0YDQtdC00YHRgtCw0LLQu9C10L3QuNC1INCx0YvQu9C+INGD0LTQsNC70LXQvdC+LicsJ9Cf0YDQtdC00YHRgtCw0LLQu9C10L3QuNC1INCx0YvQu9C+INC40LfQvNC10L3QtdC90L4uJywn0J/RgNC10LTRgdGC0LDQstC70LXQvdC40LUg0LHRi9C70L4g0YHQvtC30LTQsNC90L4uJywn0KHQvtC30LTQsNGC0Ywg0L/RgNC10LTRgdGC0LDQstC70LXQvdC40LUnLCfQndCw0LfQstCw0L3QuNC1Jywn0KHQvtCx0YvRgtC40LUg0LHRi9C70L4g0YPQtNCw0LvQtdC90L4uJywn0KHQvtCx0YvRgtC40LUg0LHRi9C70L4g0LjQt9C80LXQvdC10L3Qvi4nLCfQodC+0LHRi9GC0LjQtSDQsdGL0LvQviDRgdC+0LfQtNCw0L3Qvi4nLCfQmNC30LzQtdC90LjRgtGMINGB0L7QsdGL0YLQuNC1Jywn0KHQvtC30LTQsNGC0Ywg0YHQvtCx0YvRgtC40LUnLCfQndCw0YfQsNC70L4nLCfQmtC+0L3QtdGGJywn0JrQsNC20LTRi9C1Jywn0J/QvtGB0LvQtSDQt9Cw0LLQtdGA0YjQtdC90LjRjyDRgdC+0YXRgNCw0L3QuNGC0YwnLCfQn9GA0L7RhtC10LTRg9GA0LAg0LHRi9C70LAg0YPQtNCw0LvQtdC90LAuJywn0J/RgNC+0YbQtdC00YPRgNCwINCx0YvQu9CwINC40LfQvNC10L3QtdC90LAuJywn0J/RgNC+0YbQtdC00YPRgNCwINCx0YvQu9CwINGB0L7Qt9C00LDQvdCwLicsJ9CY0LfQvNC10L3QuNGC0Ywg0YTRg9C90LrRhtC40Y4nLCfQmNC30LzQtdC90LjRgtGMINC/0YDQvtGG0LXQtNGD0YDRgycsJ9Ch0L7Qt9C00LDRgtGMINGE0YPQvdC60YbQuNGOJywn0KHQvtC30LTQsNGC0Ywg0L/RgNC+0YbQtdC00YPRgNGDJywn0JLQvtC30LLRgNCw0YnQsNC10LzRi9C5INGC0LjQvycsJ8Kr0J/QvtGB0LvQtdC00L7QstCw0YLQtdC70YzQvdC+0YHRgtGMwrsg0YPQtNCw0LvQtdC90LAuJywn0KHQvtC30LTQsNC90LAg0L3QvtCy0LDRjyDCq9C/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLRjMK7LicsJ8Kr0J/QvtGB0LvQtdC00L7QstCw0YLQtdC70YzQvdC+0YHRgtGMwrsg0LjQt9C80LXQvdC10L3QsC4nLCfQmNC30LzQtdC90LjRgtGMIMKr0L/QvtGB0LvQtdC00L7QstCw0YLQtdC70YzQvdC+0YHRgtGMwrsnLCfQodC+0LfQtNCw0YLRjCDCq9C/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLRjMK7Jywn0KLQuNC/INGD0LTQsNC70LXQvS4nLCfQodC+0LfQtNCw0L0g0L3QvtCy0YvQuSDRgtC40L8uJywn0JjQt9C80LXQvdC40YLRjCDRgtC40L8nLCfQodC+0LfQtNCw0YLRjCDRgtC40L8nLCfQotGA0LjQs9Cz0LXRgCDQsdGL0Lsg0YPQtNCw0LvQtdC9LicsJ9Ci0YDQuNCz0LPQtdGAINCx0YvQuyDQuNC30LzQtdC90LXQvS4nLCfQotGA0LjQs9Cz0LXRgCDQsdGL0Lsg0YHQvtC30LTQsNC9LicsJ9CY0LfQvNC10L3QuNGC0Ywg0YLRgNC40LPQs9C10YAnLCfQodC+0LfQtNCw0YLRjCDRgtGA0LjQs9Cz0LXRgCcsJ9CS0YDQtdC80Y8nLCfQodC+0LHRi9GC0LjQtScsJ9Cf0L7Qu9GM0LfQvtCy0LDRgtC10LvRjCDQsdGL0Lsg0YPQtNCw0LvQtdC9LicsJ9Cf0L7Qu9GM0LfQvtCy0LDRgtC10LvRjCDQsdGL0Lsg0LjQt9C80LXQvdC10L0uJywn0J/QvtC70YzQt9C+0LLQsNGC0LXQu9GMINCx0YvQuyDRgdC+0LfQtNCw0L0uJywn0KXQtdGI0LjRgNC+0LLQsNC90L4nLCfQn9GA0L7RhtC10LTRg9GA0LAnLCfQn9C+0LfQstC+0LvQuNGC0YwnLCfQl9Cw0L/RgNC10YLQuNGC0YwnLGFycmF5KCfQkdGL0Lsg0LfQsNCy0LXRgNGI0LXQvSAlZCDQv9GA0L7RhtC10YHRgS4nLCfQkdGL0LvQviDQt9Cw0LLQtdGA0YjQtdC90L4gJWQg0L/RgNC+0YbQtdGB0YHQsC4nLCfQkdGL0LvQviDQt9Cw0LLQtdGA0YjRkdC90L4gJWQg0L/RgNC+0YbQtdGB0YHQvtCyLicpLCfQktGB0LXQs9C+ICVkJywn0JfQsNCy0LXRgNGI0LjRgtGMJyxhcnJheSgn0JHRi9C70LAg0LjQt9C80LXQvdC10L3QsCAlZCDQt9Cw0L/QuNGB0YwuJywn0JHRi9C70Lgg0LjQt9C80LXQvdC10L3RiyAlZCDQt9Cw0L/QuNGB0LguJywn0JHRi9C70L4g0LjQt9C80LXQvdC10L3QviAlZCDQt9Cw0L/QuNGB0LXQuS4nKSwn0JrQu9C40LrQvdC4INC00LLQsCDRgNCw0LfQsCDQv9C+INC30L3QsNGH0LXQvdC40Y4sINGH0YLQvtCx0Ysg0LXQs9C+INC40LfQvNC10L3QuNGC0YwuJyxhcnJheSgn0JjQvNC/0L7RgNGC0LjRgNC+0LLQsNC90LAgJWQg0YHRgtGA0L7QutCwLicsJ9CY0LzQv9C+0YDRgtC40YDQvtCy0LDQvdC+ICVkINGB0YLRgNC+0LrQuC4nLCfQmNC80L/QvtGA0YLQuNGA0L7QstCw0L3QviAlZCDRgdGC0YDQvtC6LicpLCfQndC1INGD0LTQsNC70L7RgdGMINC/0L7Qu9GD0YfQuNGC0Ywg0LTQsNC90L3Ri9C1INC40Lcg0YLQsNCx0LvQuNGG0YsnLCfQoNC10LvRj9GG0LjQuCcsJ9CY0LfQvNC10L3QuNGC0Ywg0Y3RgtC+INC30L3QsNGH0LXQvdC40LUg0LzQvtC20L3QviDRgSDQv9C+0LzQvtGJ0YzRjiDRgdGB0YvQu9C60LggwqvQuNC30LzQtdC90LjRgtGMwrsuJywn0KHRgtGA0LDQvdC40YbQsCcsJ9C/0L7RgdC70LXQtNC90Y/RjycsJ9Cy0LXRgdGMINGA0LXQt9GD0LvRjNGC0LDRgicsJ9Ca0LvQvtC90LjRgNC+0LLQsNGC0YwnLCfQmNC80L/QvtGA0YInLCcgJywn0KLQsNCx0LvQuNGG0Ysg0LHRi9C70Lgg0L7Rh9C40YnQtdC90YsuJywn0KLQsNCx0LvQuNGG0Ysg0LHRi9C70Lgg0L/QtdGA0LXQvNC10YnQtdC90YsuJywnVGFibGVzIGhhdmUgYmVlbiBjb3BpZWQuJywn0KLQsNCx0LvQuNGG0Ysg0LHRi9C70Lgg0YPQtNCw0LvQtdC90YsuJywn0KLQsNCx0LvQuNGG0Ysg0Lgg0L/RgNC10LTRgdGC0LDQstC70LXQvdC40Y8nLCfQn9C+0LjRgdC6INCyINGC0LDQsdC70LjRhtCw0YUnLCfQotC40L8nLCfQntCx0YrRkdC8INC00LDQvdC90YvRhScsJ9Ce0LHRitGR0Lwg0LjQvdC00LXQutGB0L7QsicsJ9Ch0LLQvtCx0L7QtNC90L7QtSDQvNC10YHRgtC+Jywn0KHRgtGA0L7QuicsJ9CQ0L3QsNC70LjQt9C40YDQvtCy0LDRgtGMJywn0J7Qv9GC0LjQvNC40LfQuNGA0L7QstCw0YLRjCcsJ9Cf0YDQvtCy0LXRgNC40YLRjCcsJ9CY0YHQv9GA0LDQstC40YLRjCcsJ9Ce0YfQuNGB0YLQuNGC0YwnLCfQn9C10YDQtdC80LXRgdGC0LjRgtGMINCyINC00YDRg9Cz0L7RjiDQsdCw0LfRgyDQtNCw0L3QvdGL0YUnLCfQn9C10YDQtdC80LXRgdGC0LjRgtGMJywnQ29weScsJ8Kr0J/QvtGB0LvQtdC00L7QstCw0YLQtdC70YzQvdC+0YHRgtC4wrsnLCfQoNCw0YHQv9C40YHQsNC90LjQtScsJ9CSINC00LDQvdC90L7QtSDQstGA0LXQvNGPJywn0YHQtdC50YfQsNGBJyk7YnJlYWs7Y2FzZSJ6aCI6JFk9YXJyYXkoJ+S9oOehruWumuWQl++8nycsJ+S4jeiDveS4iuS8oOaWh+S7tuOAgicsJ+acgOWkmuWFgeiuuOeahOaWh+S7tuWkp+Wwj+S4uiAlc0InLCfmlofku7bkuI3lrZjlnKjjgIInLCfnqbonLCfljp/lp4snLCfmsqHmnInooajjgIInLCfor63oqIAnLCfkvb/nlKgnLCfor7fkvb/nlKjov5nkupvmianlsZXkuK3nmoTkuIDkuKrvvJolc+OAgicsJ+aWh+S7tuW3suWtmOWcqOOAgicsJ+eUqOaIt+exu+WeiycsJ+aVsOWtlycsJ+aXpeacn+aXtumXtCcsJ+Wtl+espuS4sicsJ+S6jOi/m+WIticsJ+e9kee7nCcsJ+WHoOS9leWbvuW9oicsJ+WIl+ihqCcsJ+ezu+e7nycsJ+acjeWKoeWZqCcsJ+eUqOaIt+WQjScsJ+WvhueggScsJ+eZu+W9lScsJ+S/neaMgeeZu+W9lScsJ+mAieaLqeaVsOaNricsJ+aYvuekuue7k+aehCcsJ+abtOaUueinhuWbvicsJ+abtOaUueihqCcsJ+aWsOW7uumhuScsJ+acq+mhtScsJ+e8lui+kScsJyVkIOWtl+iKgicsJ+mAieaLqScsJ+WHveaVsCcsJ+mbhuWQiCcsJ+aQnOe0oicsJ+S7u+aEj+S9jee9ricsJ+aOkuW6jycsJ+mZjeW6jycsJ+mZkOWumicsJ+aWh+acrOmVv+W6picsJ+WKqOS9nCcsJ1NRTOWRveS7pCcsJ+aJk+W8gCcsJ+S/neWtmCcsJ+abtOaUueaVsOaNruW6kycsJ+abtOaUueaooeW8jycsJ+WIm+W7uuaooeW8jycsJ+WvvOWHuicsJ+azqOmUgCcsJ+aVsOaNruW6kycsJ+aooeW8jycsJ+WIm+W7uuaWsOihqCcsJ+mAieaLqScsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/Jywn5peg5pWIIENTUkYg5Luk54mM44CC6YeN5paw5Y+R6YCB6KGo5Y2V44CCJywn5rOo6ZSA5oiQ5Yqf44CCJywn5Lya6K+d5b+F6aG76KKr5ZCv55So44CCJywn5Lya6K+d5bey6L+H5pyf77yM6K+36YeN5paw55m75b2V44CCJywn5peg5pWI5Yet5o2u44CCJywn5rKh5pyJ5omp5bGVJywn5rKh5pyJ5pSv5oyB55qEIFBIUCDmianlsZXlj6/nlKjvvIglc++8ieOAgicsJ+WkquWkp+eahCBQT1NUIOaVsOaNruOAguWHj+WwkeaVsOaNruaIluiAheWinuWKoCAlcyDphY3nva7lkb3ku6TjgIInLCfmlbDmja7lupMnLCfml6DmlYjmlbDmja7lupPjgIInLCflt7LkuKLlvIPmlbDmja7lupPjgIInLCfpgInmi6nmlbDmja7lupMnLCfliJvlu7rmlrDmlbDmja7lupMnLCfmnYPpmZAnLCfov5vnqIvliJfooagnLCflj5jph48nLCfnirbmgIEnLCclcyDniYjmnKzvvJolcyDpgJrov4cgUEhQIOaJqeWxlSAlcycsJ+eZu+W9leS4uu+8miVzJywn5qCh5a+5Jywn6KGoJywn5Lii5byDJywn5Yi35pawJywn5qih5byPJywn6Z2e5rOV5qih5byP44CCJywn5rKh5pyJ6KGM44CCJywnJS4zZiDnp5InLCflpJbplK4nLCfmoKHlr7knLCdPTiBERUxFVEUnLCfliJflkI0nLCflj4LmlbDlkI0nLCfnsbvlnosnLCfplb/luqYnLCfpgInpobknLCfoh6rliqjlop7ph48nLCfpu5jorqTlgLwnLCfms6jph4onLCfmt7vliqDkuIvkuIDkuKonLCfkuIrnp7snLCfkuIvnp7snLCfnp7vpmaQnLCfop4blm74nLCfooagnLCfliJcnLCfntKLlvJUnLCfmm7TmlLnntKLlvJUnLCfmupAnLCfnm67moIcnLCdPTiBVUERBVEUnLCfmm7TmlLknLCfmt7vliqDlpJbplK4nLCfop6blj5HlmagnLCfliJvlu7rop6blj5HlmagnLCfmlbDmja7lupPmpoLopoEnLCdQZXJtYW5lbnQgbGluaycsJ+WvvOWHuicsJ+i+k+WHuicsJ+agvOW8jycsJ+WtkOeoi+W6jycsJ+S6i+S7ticsJ+aVsOaNricsJ+e8lui+kScsJ+WIm+W7uueUqOaItycsJ+aJp+ihjOafpeivok9L77yMJWQg6KGM5Y+X5b2x5ZON44CCJywnJWQg6KGMJywn5p+l6K+i5Ye66ZSZJywn5rKh5pyJ5ZG95Luk5omn6KGM44CCJywnJWQg5p2h5p+l6K+i5bey5oiQ5Yqf5omn6KGM44CCJywn5paH5Lu25LiK5LygJywn5paH5Lu25LiK5Lyg6KKr56aB55So44CCJywn5omn6KGMJywn5Ye66ZSZ5pe25YGc5q2iJywn5LuF5pi+56S66ZSZ6K+vJywn5p2l6Ieq5pyN5Yqh5ZmoJywnV2Vi5pyN5Yqh5Zmo5paH5Lu2ICVzJywn6L+Q6KGM5paH5Lu2Jywn5Y6G5Y+yJywn5riF6ZmkJywnRWRpdCBhbGwnLCflt7LliKDpmaTpobnnm67jgIInLCflt7Lmm7TmlrDpobnnm67jgIInLCflt7Lmj5LlhaXpobnnm64lc+OAgicsJ+aPkuWFpScsJ+S/neWtmCcsJ+S/neWtmOW5tue7p+e7ree8lui+kScsJ+S/neWtmOW5tuaPkuWFpeS4i+S4gOS4qicsJ+WIoOmZpCcsJ+W3suS4ouW8g+ihqOOAgicsJ+W3suabtOaUueihqOOAgicsJ+W3suWIm+W7uuihqOOAgicsJ+WIm+W7uuihqCcsJ+i2hei/h+acgOWkmuWFgeiuuOeahOWtl+auteaVsOmHj+OAguivt+WinuWKoCAlcyDlkowgJXMg44CCJywn6KGo5ZCNJywn5byV5pOOJywn5YiG5Yy657G75Z6LJywn5YiG5Yy6Jywn5YiG5Yy65ZCNJywn5YC8Jywn5bey5pu05pS557Si5byV44CCJywn57Si5byV57G75Z6LJywn5YiX77yI6ZW/5bqm77yJJywn5bey5Lii5byD5pWw5o2u5bqT44CCJywn5bey6YeN5ZG95ZCN5pWw5o2u5bqT44CCJywn5bey5Yib5bu65pWw5o2u5bqT44CCJywn5bey5pu05pS55pWw5o2u5bqT44CCJywn5Yib5bu65pWw5o2u5bqTJywn5bey5Lii5byD5qih5byP44CCJywn5bey5Yib5bu65qih5byP44CCJywn5bey5pu05pS55qih5byP44CCJywn6LCD55SoJywn5a2Q56iL5bqP6KKr6LCD55So77yMJWQg6KGM6KKr5b2x5ZON44CCJywn5bey5Yig6Zmk5aSW6ZSu44CCJywn5bey5pu05pS55aSW6ZSu44CCJywn5bey5Yib5bu65aSW6ZSu44CCJywn5rqQ5YiX5ZKM55uu5qCH5YiX5b+F6aG75YW35pyJ55u45ZCM55qE5pWw5o2u57G75Z6L77yM5Zyo55uu5qCH5YiX5LiK5b+F6aG75pyJ5LiA5Liq57Si5byV5bm25LiU5byV55So55qE5pWw5o2u5b+F6aG75a2Y5Zyo44CCJywn5aSW6ZSuJywn55uu5qCH6KGoJywn5pu05pS5Jywn5aKe5Yqg5YiXJywn5bey5Lii5byD6KeG5Zu+44CCJywn5bey5pu05pS56KeG5Zu+44CCJywn5bey5Yib5bu66KeG5Zu+44CCJywn5Yib5bu66KeG5Zu+Jywn5ZCN56ewJywn5bey5Lii5byD5LqL5Lu244CCJywn5bey5pu05pS55LqL5Lu244CCJywn5bey5Yib5bu65LqL5Lu244CCJywn5pu05pS55LqL5Lu2Jywn5Yib5bu65LqL5Lu2Jywn5byA5aeLJywn57uT5p2fJywn5q+PJywn5a6M5oiQ5ZCO5L+d5a2YJywn5bey5Lii5byD5a2Q56iL5bqP44CCJywn5bey5pu05pS55a2Q56iL5bqP44CCJywn5bey5Yib5bu65a2Q56iL5bqP44CCJywn5pu05pS55Ye95pWwJywn5pu05pS56L+H56iLJywn5Yib5bu65Ye95pWwJywn5Yib5bu66L+H56iLJywn6L+U5Zue57G75Z6LJywn5bey5Lii5byD5bqP5YiX44CCJywn5bey5Yib5bu65bqP5YiX44CCJywn5bey5pu05pS55bqP5YiX44CCJywn5pu05pS55bqP5YiXJywn5Yib5bu65bqP5YiXJywn5bey5Lii5byD57G75Z6L44CCJywn5bey5Yib5bu657G75Z6L44CCJywn5pu05pS557G75Z6LJywn5Yib5bu657G75Z6LJywn5bey5Lii5byD6Kem5Y+R5Zmo44CCJywn5bey5pu05pS56Kem5Y+R5Zmo44CCJywn5bey5Yib5bu66Kem5Y+R5Zmo44CCJywn5pu05pS56Kem5Y+R5ZmoJywn5Yib5bu66Kem5Y+R5ZmoJywn5pe26Ze0Jywn5LqL5Lu2Jywn5bey5Lii5byD55So5oi344CCJywn5bey5pu05pS555So5oi344CCJywn5bey5Yib5bu655So5oi344CCJywnSGFzaGVkJywn5a2Q56iL5bqPJywn5o6I5p2DJywn5bqf6ZmkJywnJWQg5Liq6L+b56iL6KKr57uI5q2iJywn5YWx6K6hICVkJywn57uI5q2iJywnJWQg5Liq6aG555uu5Y+X5Yiw5b2x5ZON44CCJywn5Zyo5YC85LiK5Y+M5Ye757G75L+u5pS55a6D44CCJywnJWQg6KGM5bey5a+85YWl44CCJywn5LiN6IO96YCJ5oup6K+l6KGoJywn5YWz6IGU5L+h5oGvJywn5L2/55So57yW6L6R6ZO+5o6l5p2l5L+u5pS56K+l5YC844CCJywn6aG16Z2iJywn5pyA5ZCOJywn5omA5pyJ57uT5p6cJywn5YWL6ZqGJywn5a+85YWlJywnLCcsJ+W3sua4heepuuihqOOAgicsJ+W3sui9rOenu+ihqOOAgicsJ1RhYmxlcyBoYXZlIGJlZW4gY29waWVkLicsJ+W3suS4ouW8g+ihqOOAgicsJ+ihqOWSjOinhuWbvicsJ+WcqOihqOS4reaQnOe0ouaVsOaNricsJ+W8leaTjicsJ+aVsOaNrumVv+W6picsJ+e0ouW8lemVv+W6picsJ+aVsOaNruepuumXsicsJ+ihjOaVsCcsJ+WIhuaekCcsJ+S8mOWMlicsJ+ajgOafpScsJ+S/ruWkjScsJ+a4heepuicsJ+i9rOenu+WIsOWFtuWug+aVsOaNruW6kycsJ+i9rOenuycsJ0NvcHknLCfluo/liJcnLCfosIPluqYnLCflnKjmjIflrprml7bpl7QnLCfnjrDlnKgnKTticmVhaztjYXNlInpoLXR3IjokWT1hcnJheSgn5L2g56K65a6a5ZeO77yfJywn54Sh5rOV5LiK5YKz5qqU5qGI44CCJywn5YWB6Kix55qE5qqU5qGI5LiK6ZmQ5aSn5bCP54K6JXNCJywn5qqU5qGI5LiN5a2Y5ZyoJywn56m65YC8Jywn5Y6f5aeLJywn5rKS5pyJ6LOH5paZ6KGo44CCJywn6Kqe6KiAJywn5L2/55SoJywn6KuL5L2/55So5LiL5YiX5YW25Lit5LiA5YCLIGV4dGVuc2lvbiAlc+OAgicsJ+aqlOahiOW3suWtmOWcqOOAgicsJ+S9v+eUqOiAhemhnuWeiycsJ+aVuOWtlycsJ+aXpeacn+aZgumWkycsJ+Wtl+espuS4sicsJ+S6jOmAsuWIticsJ+e2sui3rycsJ+W5vuS9lScsJ+WIl+ihqCcsJ+izh+aWmeW6q+ezu+e1sScsJ+S8uuacjeWZqCcsJ+W4s+iZnycsJ+WvhueivCcsJ+eZu+WFpScsJ+awuOS5heeZu+WFpScsJ+mBuOaTh+izh+aWmScsJ+engOWHuue1kOaniycsJ+abtOaUueaqouimluihqCcsJ+abtOaUueizh+aWmeihqCcsJ+aWsOW7uumghScsJ+acgOW+jOS4gOmggScsJ+e3qOi8rycsJyVkIGJ5dGUocyknLCfpgbjmk4cnLCflh73mlbgnLCfpm4blkIgnLCfmkJzlsIsnLCfku7vmhI/kvY3nva4nLCfmjpLluo8nLCfpmY3lhqonLCfpmZDlrponLCdUZXh0IOmVt+W6picsJ+WLleS9nCcsJ1NRTOWRveS7pCcsJ+aJk+mWiycsJ+WEsuWtmCcsJ+abtOaUueizh+aWmeW6qycsJ+abtOaUueizh+aWmeihqOe1kOaniycsJ+W7uueri+izh+aWmeihqOe1kOaniycsJ+WwjuWFpS/lsI7lh7onLCfnmbvlh7onLCfos4fmlpnluqsnLCfos4fmlpnooajntZDmp4snLCflu7rnq4vmlrDos4fmlpnooagnLCfpgbjmk4cnLCdsdHInLCdSZXNlbmQgUE9TVCBkYXRhPycsJ+eEoeaViOeahCBDU1JGIHRva2Vu44CC6KuL6YeN5paw55m86YCB6KGo5Zau44CCJywn55m75Ye65oiQ5Yqf44CCJywnU2Vzc2lvbiDlv4XpoIjooqvllZ/nlKjjgIInLCdTZXNzaW9uIOW3sumBjuacn++8jOiri+mHjeaWsOeZu+WFpeOAgicsJ+eEoeaViOeahOaGkeitieOAgicsJ+aykuaciSDmk7TlhYXmqKHntYQnLCfmspLmnInku7vkvZXmlK/mj7TnmoRQSFDmk7TlhYXmqKHntYTvvIglc++8ieOAgicsJ1BPU1Qg6LOH5paZ5aSq5aSn44CC5rib5bCR6LOH5paZ5oiW6ICF5aKe5YqgICVzIOeahOioreWumuWAvOOAgicsJ+izh+aWmeW6qycsJ+eEoeaViOeahOizh+aWmeW6q+OAgicsJ+izh+aWmeW6q+W3suWIqumZpOOAgicsJ+mBuOaTh+izh+aWmeW6qycsJ+W7uueri+aWsOizh+aWmeW6qycsJ+asiumZkCcsJ+mAsueoi+WIl+ihqCcsJ+iuiuaVuCcsJ+eLgOaFiycsJyVz54mI5pys77yaJXMg6YCP6YGOUEhQ5pO05YWF5qih57WEICVzJywn55m76YyE54K677yaJXMnLCfmoKHlsI0nLCfos4fmlpnooagnLCfkuJ/mo4QnLCfph43mlrDovInlhaUnLCfos4fmlpnooajntZDmp4snLCfnhKHmlYjnmoTos4fmlpnooajntZDmp4vjgIInLCfmspLmnInooYzjgIInLCclLjNm56eSJywn5aSW6Y21Jywn5qCh5bCNJywnT04gREVMRVRFJywn5YiX5ZCNJywn5Y+D5pW45ZCN56ixJywn6aGe5Z6LJywn6ZW35bqmJywn6YG46aCFJywn6Ieq5YuV5aKe5YqgJywn6aCQ6Kit5YC8Jywn6Ki76KejJywn5paw5aKe5LiL5LiA5YCLJywn5LiK56e7Jywn5LiL56e7Jywn56e76ZmkJywn5qqi6KaW6KGoJywn6LOH5paZ6KGoJywn5YiXJywn57Si5byVJywn5pu05pS557Si5byVJywn5L6G5rqQJywn55uu5qiZJywnT04gVVBEQVRFJywn5pu05pS5Jywn5paw5aKe5aSW6Y21Jywn6Ke455m85ZmoJywn5bu656uL6Ke455m85ZmoJywn6LOH5paZ5bqr5p625qeLJywnUGVybWFuZW50IGxpbmsnLCfljK/lh7onLCfovLjlh7onLCfmoLzlvI8nLCfnqIvluo8nLCfkuovku7YnLCfos4fmlpknLCfnt6jovK8nLCflu7rnq4vkvb/nlKjogIUnLCfln7fooYzmn6XoqaJPS++8jCVk6KGM5Y+X5b2x6Z+/JywnJWTooYwnLCfmn6XoqaLlh7rpjK8nLCfmspLmnInlkb3ku6Tlj6/ln7fooYzjgIInLCflt7LpoIbliKnln7fooYwgJWQg5YCL5p+l6Kmi44CCJywn5qqU5qGI5LiK5YKzJywn5qqU5qGI5LiK5YKz6KKr56aB55So44CCJywn5Z+36KGMJywn5Ye66Yyv5pmC5YGc5q2iJywn5YOF6aGv56S66Yyv6Kqk6KiK5oGvJywn5b6e5Ly65pyN5ZmoJywn57ay6aCB5Ly65pyN5Zmo5qqU5qGIICVzJywn5Z+36KGM5qqU5qGIJywn5q235Y+yJywn5riF6ZmkJywnRWRpdCBhbGwnLCfoqbLpoIXnm67lt7LooqvliKrpmaQnLCflt7Lmm7TmlrDpoIXnm67jgIInLCflt7Lmj5LlhaXpoIXnm64lc+OAgicsJ+aPkuWFpScsJ+WEsuWtmCcsJ+S/neWtmOS4pue5vOe6jOe3qOi8rycsJ+WEsuWtmOS4puaPkuWFpeS4i+S4gOWAiycsJ+WIqumZpCcsJ+W3sue2k+WIqumZpOizh+aWmeihqOOAgicsJ+izh+aWmeihqOW3suabtOaUueOAgicsJ+izh+aWmeihqOW3suabtOaUueOAgicsJ+W7uueri+izh+aWmeihqOihqCcsJ+i2hemBjuacgOWkmuWFgeioseeahOWtl+auteaVuOmHj+OAguiri+WinuWKoCVz5ZKMJXMg44CCJywn6LOH5paZ6KGo5ZCN56ixJywn5byV5pOOJywn5YiG5Y2A6aGe5Z6LJywn5YiG5Y2AJywn5YiG5Y2A5ZCNJywn5YC8Jywn5bey5pu05pS557Si5byV44CCJywn57Si5byV6aGe5Z6LJywn5YiX77yI6ZW35bqm77yJJywn6LOH5paZ5bqr5bey5Yiq6Zmk44CCJywn5bey6YeN5paw5ZG95ZCN6LOH5paZ5bqr44CCJywn5bey5bu656uL6LOH5paZ5bqr44CCJywn5bey5pu05pS56LOH5paZ5bqr44CCJywn5bu656uL6LOH5paZ5bqrJywn5bey5Yiq6Zmk6LOH5paZ6KGo57WQ5qeL44CCJywn5bey5bu656uL6LOH5paZ6KGo57WQ5qeL44CCJywn5bey5pu05pS56LOH5paZ6KGo57WQ5qeL44CCJywn5ZG85Y+rJywn56iL5bqP5bey6KKr5Z+36KGM77yMJWTooYzooqvlvbHpn78nLCflt7LliKrpmaTlpJbpjbXjgIInLCflt7Lmm7TmlLnlpJbpjbXjgIInLCflt7Llu7rnq4vlpJbpjbXjgIInLCfmupDliJflkoznm67mqJnliJflv4XpoIjlhbfmnInnm7jlkIznmoTmlbjmk5rpoZ7lnovvvIzlnKjnm67mqJnliJfkuIrlv4XpoIjmnInkuIDlgIvntKLlvJXkuKbkuJTlvJXnlKjnmoTmlbjmk5rlv4XpoIjlrZjlnKjjgIInLCflpJbpjbUnLCfnm67mqJnos4fmlpnooagnLCfmm7TmlLknLCfmlrDlop7os4fmlpnliJcnLCflt7LkuJ/mo4TmqqLoppbooajjgIInLCflt7Lmm7TmlLnmqqLoppbooajjgIInLCflt7Llu7rnq4vmqqLoppbooajjgIInLCflu7rnq4vmqqLoppbooagnLCflkI3nqLEnLCflt7LkuJ/mo4Tkuovku7bjgIInLCflt7Lmm7TmlLnkuovku7bjgIInLCflt7Llu7rnq4vkuovku7bjgIInLCfmm7TmlLnkuovku7YnLCflu7rnq4vkuovku7YnLCfplovlp4snLCfntZDmnZ8nLCfmr48nLCflnKjlrozmiJDlvozkv53lrZgnLCflt7LkuJ/mo4TnqIvluo/jgIInLCflt7Lmm7TmlLnlrZDnqIvluo/jgIInLCflt7Llu7rnq4vlrZDnqIvluo/jgIInLCfmm7TmlLnlh73mlbgnLCfmm7TmlLnpgY7nqIsnLCflu7rnq4vlh73mlbgnLCflu7rnq4vpoJDlrZjnqIvluo8nLCfov5Tlm57poZ7lnosnLCflt7LliKrpmaQgc2VxdWVuY2XjgIInLCflt7Llu7rnq4sgc2VxdWVuY2XjgIInLCflt7Lmm7TmlLkgc2VxdWVuY2XjgIInLCfmm7TmlLkgc2VxdWVuY2UnLCflu7rnq4sgc2VxdWVuY2UnLCflt7LliKrpmaTpoZ7lnovjgIInLCflt7Llu7rnq4vpoZ7lnovjgIInLCfmm7TmlLnpoZ7lnosnLCflu7rnq4vpoZ7lnosnLCflt7LkuJ/mo4Top7jnmbzlmajjgIInLCflt7Lmm7TmlLnop7jnmbzlmajjgIInLCflt7Llu7rnq4vop7jnmbzlmajjgIInLCfmm7TmlLnop7jnmbzlmagnLCflu7rnq4vop7jnmbzlmagnLCfmmYLplpMnLCfkuovku7YnLCflt7LkuJ/mo4Tkvb/nlKjogIXjgIInLCflt7Lmm7TmlLnkvb/nlKjogIXjgIInLCflt7Llu7rnq4vkvb/nlKjogIXjgIInLCdIYXNoZWQnLCfnqIvluo8nLCfmjojmrIonLCflu6LpmaQnLCclZCDlgIsgUHJvY2Vzcyhlcykg6KKr57WC5q2iJywn57i95YWxICVkIOWAiycsJ+e1guatoicsJyVk5YCL6aCF55uu5Y+X5Yiw5b2x6Z+/44CCJywn6ZuZ5pOK5Lul6YCy6KGM5L+u5pS544CCJywnJWTooYzlt7LlsI7lhaXjgIInLCfnhKHms5Xpgbjmk4foqbLos4fmlpnooagnLCfpl5zoga8nLCfkvb/nlKjnt6jovK/pgKPntZDkvobkv67mlLnjgIInLCfpoIEnLCfmnIDlvozkuIDpoIEnLCfmiYDmnInntZDmnpwnLCfopIfoo70nLCfljK/lhaUnLCcsJywn5bey5riF56m66LOH5paZ6KGo44CCJywn5bey6L2J56e76LOH5paZ6KGo44CCJywnVGFibGVzIGhhdmUgYmVlbiBjb3BpZWQuJywn5bey5Lif5qOE6KGo44CCJywn6LOH5paZ6KGo5ZKM5qqi6KaW6KGoJywn5Zyo6LOH5paZ5bqr5pCc5bCLJywn5byV5pOOJywn6LOH5paZ6ZW35bqmJywn57Si5byV6ZW35bqmJywn6LOH5paZ56m66ZaSJywn6KGM5pW4Jywn5YiG5p6QJywn5YSq5YyWJywn5qqi5p+lJywn5L+u5b6pJywn5riF56m6Jywn6L2J56e75Yiw5YW25a6D6LOH5paZ5bqrJywn6L2J56e7JywnQ29weScsJ1NlcXVlbmNlcycsJ+iqv+W6picsJ+WcqOaMh+WumuaZgumWkycsJ+ePvuWcqCcpO2JyZWFrO2Nhc2UiamEiOiRZPWFycmF5KCflrp/ooYzjgZfjgb7jgZnjgYvvvJ8nLCfjg5XjgqHjgqTjg6vjgpLjgqLjg4Pjg5fjg63jg7zjg4njgafjgY3jgb7jgZvjgpMnLCfmnIDlpKfjg5XjgqHjgqTjg6vjgrXjgqTjgrogJXNCJywn44OV44Kh44Kk44Or44Gv5a2Y5Zyo44GX44G+44Gb44KTJywn56m6Jywn5YWDJywn44OG44O844OW44Or44GM44GC44KK44G+44Gb44KT44CCJywn6KiA6KqeJywn5L2/55SoJywn44GE44Ga44KM44GL44Gu5ouh5by15qmf6IO944KS5L2/44Gj44Gm44GP44Gg44GV44GEICVzJywn44OV44Kh44Kk44Or44GM5pei44Gr5a2Y5Zyo44GX44G+44GZJywn44Om44O844K244O85a6a576p5Z6LJywn5pWw5a2XJywn5pel5pmCJywn5paH5a2X5YiXJywn44OQ44Kk44OK44OqJywn44ON44OD44OI44Ov44O844Kv5Z6LJywn44K444Kq44Oh44OI44Oq5Z6LJywn44Oq44K544OIJywn44OH44O844K/44OZ44O844K556iu6aGeJywn44K144O844OQJywn44Om44O844K25ZCNJywn44OR44K544Ov44O844OJJywn44Ot44Kw44Kk44OzJywn5rC457aa55qE44Gr44Ot44Kw44Kk44OzJywn44OH44O844K/Jywn5qeL6YCgJywn44OT44Ol44O844KS5aSJ5pu0Jywn44OG44O844OW44Or44Gu5aSJ5pu0Jywn6aCF55uu44Gu5L2c5oiQJywn5pyA5b6M44Gu44Oa44O844K4Jywn57eo6ZuGJywnJWQg44OQ44Kk44OIJywn6YG45oqeJywn6Zai5pWwJywn6ZuG5ZCIJywn5qSc57SiJywn5Lu75oSPJywn44K944O844OIJywn6ZmN6aCGJywn5Yi257SEJywn5paH5a2X5YiX44Gu6ZW344GVJywn5YuV5L2cJywnU1FM44Kz44Oe44Oz44OJJywn6ZaL44GPJywn5L+d5a2YJywn44OH44O844K/44OZ44O844K544KS5aSJ5pu0Jywn44K544Kt44O844Oe5aSJ5pu0Jywn44K544Kt44O844Oe6L+95YqgJywn44OA44Oz44OXJywn44Ot44Kw44Ki44Km44OIJywn44OH44O844K/44OZ44O844K5Jywn44K544Kt44O844OeJywn44OG44O844OW44Or44KS5L2c5oiQJywn6YG45oqeJywnbHRyJywnUmVzZW5kIFBPU1QgZGF0YT8nLCfkuI3mraPjgapDU1JG44OI44O844Kv44Oz44CC5YaN6YCB5L+h44GX44Gm44GP44Gg44GV44GEJywn44Ot44Kw44Ki44Km44OIJywn44K744OD44K344On44Oz44KS5pyJ5Yq544Gr44GX44Gm44GP44Gg44GV44GEJywn44K744OD44K344On44Oz44Gu5pyf6ZmQ5YiH44KM44CC44Ot44Kw44Kk44Oz44GX55u044GX44Gm44GP44Gg44GV44GEJywn5LiN5q2j44Gq44Ot44Kw44Kk44OzJywn5ouh5by15qmf6IO944GM44GC44KK44G+44Gb44KTJywnUEhQ44Gu5ouh5by15qmf6IO977yIJXPvvInjgYzjgrvjg4Pjg4jjgqLjg4Pjg5fjgZXjgozjgabjgYTjgb7jgZvjgpMnLCdQT1NU44OH44O844K/44GM5aSn44GN44GZ44GO44G+44GZ44CC44OH44O844K/44K144Kk44K644KS5bCP44GV44GP44GZ44KL44GLICVzIOioreWumuOCkuWkp+OBjeOBj+OBl+OBpuOBj+OBoOOBleOBhCcsJ+ODh+ODvOOCv+ODmeODvOOCuScsJ+S4jeato+OBquODh+ODvOOCv+ODmeODvOOCuScsJ+ODh+ODvOOCv+ODmeODvOOCueOCkuWJiumZpOOBl+OBvuOBl+OBnycsJ+ODh+ODvOOCv+ODmeODvOOCueOCkumBuOaKnuOBl+OBpuOBj+OBoOOBleOBhCcsJ+aWsOimj+OBq+ODh+ODvOOCv+ODmeODvOOCueOCkuS9nOaIkCcsJ+aoqemZkCcsJ+ODl+ODreOCu+OCueS4gOimpycsJ+WkieaVsCcsJ+eKtuaFiycsJyVz44OQ44O844K444On44Oz77yaJXPjgIEgUEhQ5ouh5by15qmf6IO9ICVzJywn44Ot44Kw77yaJXMnLCfnhaflkIjpoIbluo8nLCfjg4bjg7zjg5bjg6snLCfliYrpmaQnLCfjg6rjg5Xjg6zjg4Pjgrfjg6UnLCfjgrnjgq3jg7zjg54nLCfnhKHlirnjgarjgrnjgq3jg7zjg54nLCfooYzjgYzjgYLjgorjgb7jgZvjgpMnLCclLjNmIOenkicsJ+WklumDqOOCreODvCcsJ+eFp+WQiOmghuW6jycsJ09OIERFTEVURScsJ+WIl+WQjScsJ+WPguaVsOWQjScsJ+WeiycsJ+mVt+OBlScsJ+ioreWumicsJ+mAo+eVqicsJ+imj+WumuWApCcsJ+OCs+ODoeODs+ODiCcsJ+i/veWKoCcsJ+S4iicsJ+S4iycsJ+mZpOWklicsJ+ODk+ODpeODvCcsJ+ODhuODvOODluODqycsJ+WIlycsJ+e0ouW8lScsJ+e0ouW8leOBruWkieabtCcsJ+OCveODvOOCuScsJ+OCv+ODvOOCsuODg+ODiCcsJ09OIFVQREFURScsJ+WkieabtCcsJ+WklumDqOOCreODvOOCkui/veWKoCcsJ+ODiOODquOCrOODvCcsJ+ODiOODquOCrOODvOOBrui/veWKoCcsJ+ani+mAoCcsJ1Blcm1hbmVudCBsaW5rJywn44Ko44Kv44K544Od44O844OIJywn5Ye65YqbJywn5b2i5byPJywn44Or44O844OB44OzJywn44Kk44OZ44Oz44OIJywn44OH44O844K/Jywn57eo6ZuGJywn44Om44O844K244KS5L2c5oiQJywn44Kv44Ko44Oq44O844KS5a6f6KGM44GX44G+44GX44Gf44CCJWQg6KGM44KS5aSJ5pu044GX44G+44GX44GfJywnJWQg6KGMJywn44Kv44Ko44Oq44O844Gu44Ko44Op44O8Jywn5a6f6KGM44GZ44KL44Kz44Oe44Oz44OJ44GM44GC44KK44G+44Gb44KTJywnJWQg44Kv44Ko44Oq44O844KS5a6f6KGM44GX44G+44GX44GfJywn44OV44Kh44Kk44Or44KS44Ki44OD44OX44Ot44O844OJJywn44OV44Kh44Kk44Or44Gu44Ki44OD44OX44Ot44O844OJ44GM54Sh5Yq544Gn44GZJywn5a6f6KGMJywn44Ko44Op44O844Gu5aC05ZCI44Gv5YGc5q2iJywn44Ko44Op44O844Gu44G/6KGo56S6Jywn44K144O844OQ44O844GL44KJ5a6f6KGMJywnV2Vi44K144O844OQ44OV44Kh44Kk44OrICVzJywn44OV44Kh44Kk44Or44KS5a6f6KGMJywn5bGl5q20Jywn5raI5Y67JywnRWRpdCBhbGwnLCfpoIXnm67jgpLliYrpmaTjgZfjgb7jgZfjgZ8nLCfpoIXnm67jgpLmm7TmlrDjgZfjgb7jgZfjgZ8nLCclc+mgheebruOCkuaMv+WFpeOBl+OBvuOBl+OBnycsJ+aMv+WFpScsJ+S/neWtmCcsJ+S/neWtmOOBl+OBpue2mee2micsJ+S/neWtmO+8j+i/veWKoCcsJ+WJiumZpCcsJ+ODhuODvOODluODq+OCkuWJiumZpOOBl+OBvuOBl+OBnycsJ+ODhuODvOODluODq+OCkuWkieabtOOBl+OBvuOBl+OBnycsJ+ODhuODvOODluODq+OCkuS9nOaIkOOBl+OBvuOBl+OBnycsJ+ODhuODvOODluODq+OCkuS9nOaIkCcsJ+Wumue+qeWPr+iDveOBquacgOWkp+ODleOCo+ODvOODq+ODieaVsOOCkui2iuOBiOOBvuOBl+OBn+OAgiVzIOOBqCAlcyDjgpLlopfjgoTjgZfjgabjgY/jgaDjgZXjgYTjgIInLCfjg4bjg7zjg5bjg6vlkI0nLCfjgqjjg7Pjgrjjg7MnLCfjg5Hjg7zjg4bjgqPjgrfjg6fjg7MnLCfjg5Hjg7zjg4bjgqPjgrfjg6fjg7MnLCfjg5Hjg7zjg4bjgqPjgrfjg6fjg7PlkI0nLCflgKQnLCfntKLlvJXjgpLlpInmm7TjgZfjgb7jgZfjgZ8nLCfntKLlvJXjga7lnosnLCfliJfvvIjplbfjgZXvvIknLCfjg4fjg7zjgr/jg5njg7zjgrnjgpLliYrpmaTjgZfjgb7jgZfjgZ8nLCfjg4fjg7zjgr/jg5njg7zjgrnjga7lkI3liY3jgpLlpInjgYjjgb7jgZfjgZ8nLCfjg4fjg7zjgr/jg5njg7zjgrnjgpLkvZzmiJDjgZfjgb7jgZfjgZ8nLCfjg4fjg7zjgr/jg5njg7zjgrnjgpLlpInmm7TjgZfjgb7jgZfjgZ8nLCfjg4fjg7zjgr/jg5njg7zjgrnjgpLkvZzmiJAnLCfjgrnjgq3jg7zjg57jgpLliYrpmaTjgZfjgb7jgZfjgZ8nLCfjgrnjgq3jg7zjg57jgpLov73liqDjgZfjgb7jgZfjgZ8nLCfjgrnjgq3jg7zjg57jgpLlpInmm7TjgZfjgb7jgZfjgZ8nLCflkbzlh7rjgZcnLCfjg6vjg7zjg4Hjg7PjgpLlkbzjgbPjgb7jgZfjgZ/jgIIlZCDooYzjgpLlpInmm7TjgZfjgb7jgZfjgZ8nLCflpJbpg6jjgq3jg7zjgpLliYrpmaTjgZfjgb7jgZfjgZ8nLCflpJbpg6jjgq3jg7zjgpLlpInmm7TjgZfjgb7jgZfjgZ8nLCflpJbpg6jjgq3jg7zjgpLkvZzmiJDjgZfjgb7jgZfjgZ8nLCfjgr3jg7zjgrnjgajjgr/jg7zjgrLjg4Pjg4jjga7liJfjga/lkIzjgZjjg4fjg7zjgr/lnovjgafjgarjgZHjgozjgbDjgarjgorjgb7jgZvjgpPjgILjgr/jg7zjgrLjg4Pjg4jliJfjgavntKLlvJXjgYzjgYLjgorjgIHjg4fjg7zjgr/jgYzlrZjlnKjjgZfjgarjgZHjgozjgbDjgarjgorjgb7jgZvjgpPjgIInLCflpJbjgq3jg7wnLCfjg4bjg7zjg5bjg6snLCflpInmm7QnLCfliJfjgpLov73liqAnLCfjg5Pjg6Xjg7zjgpLliYrpmaTjgZfjgb7jgZfjgZ8nLCfjg5Pjg6Xjg7zjgpLlpInmm7TjgZfjgb7jgZfjgZ8nLCfjg5Pjg6Xjg7zjgpLkvZzmiJDjgZfjgb7jgZfjgZ8nLCfjg5Pjg6Xjg7zjgpLkvZzmiJAnLCflkI3np7AnLCfliYrpmaTjgZfjgb7jgZfjgZ8nLCflpInmm7TjgZfjgb7jgZfjgZ8nLCfkvZzmiJDjgZfjgb7jgZfjgZ8nLCflpInmm7QnLCfkvZzmiJAnLCfplovlp4snLCfntYLkuoYnLCfmr47lm54nLCflrozmiJDlvozjgavkv53lrZgnLCfjg6vjg7zjg4Hjg7PjgpLkvZzmiJAnLCfjg6vjg7zjg4Hjg7PjgpLlpInmm7QnLCfjg6vjg7zjg4Hjg7PjgpLkvZzmiJAnLCfplqLmlbDjga7lpInmm7QnLCfjg5fjg63jgrfjg7zjgrjjg6Pjga7lpInmm7QnLCfplqLmlbDjga7kvZzmiJAnLCfjg5fjg63jgrfjg7zjgrjjg6Pjga7kvZzmiJAnLCfmiLvjgorlgKTjga7lnosnLCfjgrfjg7zjgrHjg7PjgrnjgpLliYrpmaTjgZfjgb7jgZfjgZ8nLCfjgrfjg7zjgrHjg7PjgrnjgpLov73liqDjgZfjgb7jgZfjgZ8nLCfjgrfjg7zjgrHjg7PjgrnjgpLlpInmm7TjgZfjgb7jgZfjgZ8nLCfjgrfjg7zjgrHjg7PjgrnlpInmm7QnLCfjgrfjg7zjgrHjg7PjgrnkvZzmiJAnLCfjg6bjg7zjgrbjg7zlrprnvqnlnovjgpLliYrpmaTjgZfjgb7jgZfjgZ8nLCfjg6bjg7zjgrbjg7zlrprnvqnlnovjgpLov73liqDjgZfjgb7jgZfjgZ8nLCfjg6bjg7zjgrbjg7zlrprnvqnlnovlpInmm7QnLCfjg6bjg7zjgrbjg7zlrprnvqnlnovkvZzmiJAnLCfjg4jjg6rjgqzjg7zjgpLliYrpmaTjgZfjgb7jgZfjgZ8nLCfjg4jjg6rjgqzjg7zjgpLlpInmm7TjgZfjgb7jgZfjgZ8nLCfjg4jjg6rjgqzjg7zjgpLov73liqDjgZfjgb7jgZfjgZ8nLCfjg4jjg6rjgqzjg7zjga7lpInmm7QnLCfjg4jjg6rjgqzjg7zjga7kvZzmiJAnLCfmmYLplpMnLCfjgqTjg5njg7Pjg4gnLCfjg6bjg7zjgrbjgpLliYrpmaQnLCfjg6bjg7zjgrbjgpLlpInmm7QnLCfjg6bjg7zjgrbjgpLkvZzmiJAnLCdIYXNoZWQnLCfjg6vjg7zjg4Hjg7MnLCfmqKnpmZDjga7ku5jkuI4nLCfmqKnpmZDjga7lj5bmtojjgZcnLCclZCDjg5fjg63jgrvjgrnjgpLlvLfliLbntYLkuobjgZfjgb7jgZfjgZ8nLCflkIjoqIggJWQnLCflvLfliLbntYLkuoYnLCclZCDjgpLmm7TmlrDjgZfjgb7jgZfjgZ8nLCfjg4Djg5bjg6vjgq/jg6rjg4Pjgq/jgZfjgabnt6jpm4YnLCclZCDooYzjgpLjgqTjg7Pjg53jg7zjg4jjgZfjgb7jgZfjgZ8nLCfjg4bjg7zjg5bjg6vjgpLpgbjmip7jgafjgY3jgb7jgZvjgpMnLCfplqLkv4InLCfjg6rjg7Pjgq/jgpLnt6jpm4bjgZnjgosnLCfjg5rjg7zjgrgnLCfmnIDntYInLCflhajntZDmnpwnLCfjgq/jg63jg7zjg7MnLCfjgqTjg7Pjg53jg7zjg4gnLCcsJywn44OG44O844OW44Or44KSdHJ1bmNhdGXjgZfjgb7jgZfjgZ8nLCfjg4bjg7zjg5bjg6vjgpLnp7vli5XjgZfjgb7jgZfjgZ8nLCdUYWJsZXMgaGF2ZSBiZWVuIGNvcGllZC4nLCfjg4bjg7zjg5bjg6vjgpLliYrpmaTjgZfjgb7jgZfjgZ8nLCfjg4bjg7zjg5bjg6vjgajjg5Pjg6Xjg7wnLCfjg4fjg7zjgr/jgpLmpJzntKLjgZnjgosnLCfjgqjjg7Pjgrjjg7MnLCfjg4fjg7zjgr/plbcnLCfntKLlvJXplbcnLCfnqbrjgY0nLCfooYzmlbAnLCfliIbmnpAnLCfmnIDpganljJYnLCfjg4Hjgqfjg4Pjgq8nLCfkv67lvqknLCdUcnVuY2F0ZScsJ+WIpeOBruODh+ODvOOCv+ODmeODvOOCueOBuOenu+WLlScsJ+enu+WLlScsJ0NvcHknLCfjgrfjg7zjgrHjg7PjgrknLCfjgrnjgrHjgrjjg6Xjg7zjg6snLCfmjIflrprmmYLliLsnLCfnj77lnKjjga7ml6XmmYInKTticmVhaztjYXNlInRhIjokWT1hcnJheSgn4K6o4K6/4K6a4K+N4K6a4oCM4K6v4oCM4K6u4K6+4K6V4oCMID8nLCfgrpXgr4vgrqrgr43grqrgr4gg4K6u4K+H4K6y4K+H4K6x4K+N4K6x4oCM4K6u4K+NICh1cGxvYWQpIOCumuCvhuCur+CvjeCur+KAjCDgrofgrq/grrLigIzgrrXgrr/grrLgr43grrLgr4guJywn4K6V4K+L4K6q4K+N4K6q4K6/4K6p4K+NIOCuheCupOCuv+CuleKAjOCuquKAjOCun+CvjeCumuKAjCDgroXgrrPigIzgrrXgr4EgJXNCLicsJ+CuleCvi+CuquCvjeCuquCvgSDgrofgrrLgr43grrLgr4guJywn4K614K+G4K6x4K+B4K6u4K+IIChlbXB0eSknLCfgroXgrprigIzgrrLgr40nLCfgroXgrp/gr43grp/igIzgrrXigIzgrqPgr4gg4K6H4K6y4K+N4K6y4K+ILicsJ+CuruCviuCutOCuvycsJ+CuieCuquKAjOCur+Cvi+CuleCuvycsJ+CupOKAjOCur+KAjOCuteCvgSDgrprgr4bgrq/gr43grqTgr4Eg4K6S4K6w4K+BIOCuteCuv+CusOCuv+CuteCuv+CuqeCviCAlcyAoZXh0ZW5zaW9uKSDgrongrqrigIzgrq/gr4vgrpXgrr/grpXgr43grpXigIzgrrXgr4Hgrq7gr40uJywn4K6V4K+L4K6q4K+N4K6q4K+BIOCuieCus+CvjeCus+KAjOCupOCvgS4nLCfgrqrigIzgrq/igIzgrqngrr7grrPigIzgrrDgr40g4K614oCM4K6V4K+I4K6V4oCM4K6z4K+NJywn4K6O4K6j4K+N4K6V4oCM4K6z4K+NJywn4K6k4K+H4K6k4K6/IOCuruKAjOCuseCvjeCuseCvgeCuruCvjSDgrqjgr4fgrrDigIzgrq7gr40nLCfgrprigIzgrrDigIzgrq7gr40gKFN0cmluZyknLCfgrqrgr4jgrqnigIzgrrDgrr8nLCfgrqjgr4bgrp/gr43grrXgr4rgrrDgr43grpXgr40nLCfgrrXigIzgrp/grr/grrXigIzgrrXgrr/grq/igIzgrrLgr40gKEdlb21ldHJ5KScsJ+CuquKAjOCun+CvjeCun+Cuv+Cur+KAjOCusuCvjScsJ+CumuCuv+CuuOCvjeCun+KAjOCuruCvjSAoU3lzdGVtKScsJ+CuteKAjOCutOKAjOCumeCvjeCuleCuvyAoU2VydmVyKScsJ+CuquKAjOCur+KAjOCuqeCuvuCus+KAjOCusOCvjSAoVXNlciknLCfgrpXigIzgrp/igIzgrrXgr4Hgrprgr43grprgr4rgrrLgr40nLCfgrqjgr4HgrrTgr4gnLCfgrqjgrr/grrDigIzgrqjgr43grqTigIzgrrDigIzgrq7grr7grpXigIwg4K6o4K+B4K604K+I4K6v4oCM4K614K+B4K6u4K+NJywn4K6k4oCM4K6V4oCM4K614oCM4K6y4K+IIOCupOCvh+CusOCvjeCuteCvgSDgrprgr4bgrq/gr40nLCfgrpXigIzgrp/gr43grp/igIzgrq7gr4jgrqrgr43grqrgr4gg4K6V4K6+4K6j4K+N4K6q4K6/4K6V4K+N4K6V4oCM4K614K+B4K6u4K+NJywn4K6k4K+L4K6x4K+N4K6x4oCM4K6k4K+N4K6k4K+IIOCuruCuvuCuseCvjeCuseCvgScsJ+CuheCun+CvjeCun+KAjOCuteKAjOCuo+CviOCur+CviCDgrq7grr7grrHgr43grrHgr4EnLCfgrqrgr4HgrqTgrr/grq/igIwg4K6J4K6w4K+B4K6q4K+N4K6q4oCM4K6f4K6/Jywn4K6V4oCM4K6f4K+I4K6a4K6/IOCuquKAjOCuleCvjeCuleKAjOCuruCvjScsJ+CupOCviuCuleCvgScsYXJyYXkoJyVkIOCuquCviOCun+CvjScsJyVkIOCuquCviOCun+CvjeCun+CvgeCuleKAjOCus+CvjScpLCfgrqTgr4fgrrDgr43grrXgr4Eg4K6a4K+G4K6v4K+NJywnRnVuY3Rpb25zJywn4K6k4K6/4K6w4oCM4K6z4K+N4K614K+BIChBZ2dyZWdhdGlvbiknLCfgrqTgr4fgrp/gr4EnLCfgro7grpngr43grpXgrr7grq/grr/grqngr4Hgrq7gr40nLCfgrqTigIzgrrDigIzgrq7gr40g4K6q4K6/4K6w4K6/Jywn4K6H4K6x4oCM4K6Z4K+N4K6V4K+B4K6u4K+B4K6V4oCM4K6u4K6+4K6p4oCMJywn4K614oCM4K6w4oCM4K6u4K+N4K6q4K+BJywn4K6J4K6w4K+IIOCuqOCvgOCus+KAjOCuruCvjScsJ+CumuCvhuCur+KAjOCusuCvjScsJ1NRTCDgrpXigIzgrp/gr43grp/igIzgrrPgr4gnLCfgrqTgrr/grrHigIwnLCfgrprgr4fgrq7grr8nLCfgrqTigIzgrpXigIzgrrXigIzgrrLgr43grqTigIzgrrPigIzgrqTgr43grqTgr4gg4K6u4K6+4K6x4K+N4K6x4K+BJywn4K6F4K6u4K+I4K6q4K+N4K6q4K+B4K6u4K+B4K6x4K+I4K6v4K+IIOCuruCuvuCuseCvjeCuseCvgScsJ+CuheCuruCviOCuquCvjeCuquCvgeCuruCvgeCuseCviOCur+CviCDgrongrrDgr4HgrrXgrr7grpXgr43grpXgr4EnLCdEdW1wJywn4K614K+G4K6z4K6/4K6v4K+H4K6x4K+BJywn4K6k4oCM4K6V4oCM4K614oCM4K6y4K+N4K6k4oCM4K6z4oCM4K6u4K+NJywn4K6F4K6u4K+I4K6q4K+N4K6q4K+B4K6u4K+B4K6x4K+IJywn4K6q4K+B4K6k4K6/4K6v4oCMIOCuheCun+CvjeCun+KAjOCuteKAjOCuo+CviOCur+CviCDgrongrrDgr4HgrrXgrr7grpXgr43grpXgr4EnLCfgrqTgr4fgrrDgr43grrXgr4Eg4K6a4K+G4K6v4K+NJywnbHRyJywnUmVzZW5kIFBPU1QgZGF0YT8nLCdDU1JGIOCun+Cvi+CuleCvjeCuleKAjOCuqeCvjSDgrprgr4bgrrLgr43grrLgrr7grqTgr4EuIOCuquKAjOCun+Cuv+CuteKAjOCupOCvjeCupOCviCDgrq7gr4DgrqPgr43grp/gr4Hgrq7gr40g4K6F4K6p4K+B4K6q4K+N4K6q4oCM4K614K+B4K6u4K+NLicsJ+CuteCvhuCuseCvjeCuseCuv+CuleKAjOCusOKAjOCuruCuvuCur+CvjSDgrrXgr4bgrrPgrr/grq/gr4fgrrHgrr/grq/grr7grq/grr/grrHgr43grrHgr4EuJywn4K6a4K+G4K634oCM4K6p4K+NIOCuhuCupOKAjOCusOKAjOCuteCvgSDgrofgrq/igIzgrpXgr43grpXigIzgrqrgr43grqrigIzgrp/igIwg4K614K+H4K6j4K+N4K6f4K+B4K6u4K+NLicsJ+CumuCvhuCut+KAjOCuqeCvjSDgrpXgrr7grrLgrr7grrXigIzgrqTgrr/grq/grr7grpXgrr8g4K614K6/4K6f4K+N4K6f4oCM4K6k4K+BLiDgrq7gr4DgrqPgr43grp/gr4Hgrq7gr40g4K6o4K+B4K604K+I4K6v4oCM4K614K+B4K6u4K+NLicsJ+CumuKAjOCusOCuv+Cur+CuvuCuqeKAjCDgrrXgrr/grqrigIzgrrDigIzgrpngr43grpXigIzgrrPgr40g4K6H4K6y4K+N4K6y4K+ILicsJ+CuteCuv+CusOCuv+CuteCvgSAoZXh0ZW5z4K6H4K6S4K6p4K+NKSDgrofgrrLgr43grrLgr4ggJywnUEhQIOCuhuCupOKAjOCusOKAjOCuteCvgSDgrrXgrr/grrDgrr/grrXgr4HgrpXigIzgrrPgr40gKCVzKSDgrofgrrLgr43grrLgr4guJywn4K6u4K6/4K6V4oCMIOCuheCupOCuv+CuleKAjOCuruCuvuCuqeKAjCBQT1NUICDgrqTigIzgrpXigIzgrrXigIzgrrLgr40uIOCupOKAjOCuleKAjOCuteKAjOCusuCviCDgrpXgr4HgrrHgr4jgrpXgr43grpXigIzgrrXgr4Hgrq7gr40g4K6F4K6y4K+N4K6y4oCM4K6k4K+BICVzIOCuteKAjOCun+Cuv+CuteKAjOCuruCviOCuquCvjeCuquCviCAoY29uZmlndXJhdGlvbiBkaXJlY3RpdmUpIOCuruCuvuCuseCvjeCuseKAjOCuteCvgeCuruCvjS4nLCfgrqTigIzgrpXigIzgrrXigIzgrrLgr43grqTigIzgrrPigIzgrq7gr40nLCfgrqTigIzgrpXigIzgrrXigIzgrrLgr43grqTigIzgrrPigIzgrq7gr40g4K6a4oCM4K6w4K6/4K6v4K6+4K6p4K6k4K6y4K+N4K6y4oCMLicsJ+CupOKAjOCuleKAjOCuteKAjOCusuCvjSDgrqTigIzgrrPigIzgrpngr43grpXigIzgrrPgr40g4K6o4K+A4K6V4K+N4K6V4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4K6p4oCMLicsJ+CupOKAjOCuleKAjOCuteKAjOCusuCvjeCupOKAjOCus+KAjOCupOCvjeCupOCviCDgrqTgr4fgrrDgr43grrXgr4Eg4K6a4K+G4K6v4K+NJywn4K6q4K+B4K6k4K6/4K6v4oCMIOCupOKAjOCuleKAjOCuteKAjOCusuCvjeCupOKAjOCus+KAjOCupOCvjeCupOCviCDgrongrrDgr4HgrrXgrr7grpXgr43grpXgr4EnLCfgrprigIzgrrLgr4HgrpXgr4jgrpXigIzgrrPgr40gLyDgrprgrr/grrHigIzgrqrgr43grqrgr4HgrrDgrr/grq7gr4jgrpXigIzgrrPgr40nLCfgrrXgr4fgrrLgr4jgrpXigIzgrrPgrr/grqngr40g4K6q4oCM4K6f4K+N4K6f4K6/Jywn4K6u4K6+4K6x4K6/4K6y4K6/4K6V4oCM4K6z4K+NIChWYXJpYWJsZXMpJywn4K6o4K6/4K6V4oCM4K604K+N4K6o4K6/4K6y4K+IIChTdGF0dXMpJywnJXMg4K6q4oCM4K6k4K6/4K6q4K+N4K6q4K+BOiAlcyB0aHJvdWdoIFBIUCBleHRlbnNpb24gJXMnLCfgrqrigIzgrq/igIzgrqngrr7grrPgrrDgr406ICVzJywn4K6V4K+K4K6y4K+H4K6a4oCM4K6p4K+NJywn4K6F4K6f4K+N4K6f4oCM4K614oCM4K6j4K+IJywn4K6o4K+A4K6V4K+N4K6V4K+BJywn4K6q4K+B4K6k4K+B4K6q4K+N4K6q4K6/IChSZWZyZXNoKScsJ+CuheCuruCviOCuquCvjeCuquCvgeCuruCvgeCuseCviCcsJ+CuheCuruCviOCuquCvjeCuquCvgeCuruCvgeCuseCviCDgrprigIzgrrDgrr/grq/grr7grqnigIzgrqTigIzgrrLgr43grrLigIwgKEludmFsaWQgU2NoZW1hKS4nLCfgrrXigIzgrrDgrr/grprgr4gg4K6H4K6y4K+N4K6y4K+ILicsJyUuM2YgcycsJ+CuteCvh+CuseCvjeCuseCvgSDgrrXgrr/grprgr4jgrpXigIzgrrPgr40nLCfgrpXgr4rgrrLgr4fgrprigIzgrqngr40nLCdPTiBERUxFVEUnLCfgrqjgr4bgrp/gr4HgrrXigIzgrrDgrr/grprgr4jgrq/grr/grqngr40g4K6q4K+G4K6v4oCM4K6w4K+NJywn4K6F4K6z4oCM4K6q4K+B4K6w4K+BIChQYXJhbWV0ZXIpIOCuquCvhuCur+KAjOCusOCvjScsJ+CuteKAjOCuleCviCcsJ+CuqOCvgOCus+CuruCvjScsJ+CuteCvh+Cuo+CvjeCun+Cuv+Cur+KAjOCuteKAjOCuseCvjeCuseCviCAnLCfgro/grrHgr4Hgrq7grr7grqnigIzgrq7gr40nLCfgrongrrPgr43grrPgrr/grrDgr4HgrpXgr43grpXgr4Hgrq7gr40gKERlZmF1bHQpIOCuruKAjOCupOCuv+CuquCvjeCuquCvgeCuleKAjOCus+CvjSAnLCfgrpXgr4HgrrHgrr/grqrgr43grqrgr4EnLCfgroXgrp/gr4HgrqTgr43grqTigIzgrqTgr4gg4K6a4K+H4K6w4K+N4K6V4K+N4K6V4oCM4K614K+B4K6u4K+NJywn4K6u4K+H4K6y4K+HIOCuqOKAjOCuleKAjOCusOCvjeCupOCvjeCupOCvgScsJ+CuleCvgOCutOCvhyDgrqjgrpXigIzgrrDgr43grqTgr43grqTgr4EnLCfgrqjgr4DgrpXgr43grpXgr4EnLCfgrqTgr4vgrrHgr43grrHgrq7gr40nLCfgroXgrp/gr43grp/igIzgrrXigIzgrqPgr4gnLCfgrqjgr4bgrp/gr4HgrrXigIzgrrDgrr/grprgr4gnLCfgroXgrpXigIzgrrXigIzgrrDgrr/grprgr4jgrpXigIzgrrPgr40gKEluZGV4KSAnLCfgroXgrpXigIzgrrXigIzgrrDgrr/grprgr4jgrq/gr4ggKEluZGV4KSDgrq7grr7grrHgr43grrHgr4EnLCfgrq7gr4LgrrLigIzgrq7gr40nLCfgrofgrrLigIzgrpXgr43grpXgr4EnLCdPTiBVUERBVEUnLCfgrq7grr7grrHgr43grrHgr4EnLCfgrrXgr4fgrrHgr43grrHgr4Eg4K614K6/4K6a4K+IIOCumuCvh+CusOCvjeCuleCvjeCuleKAjOCuteCvgeCuruCvjScsJ+CupOCvguCuo+CvjeCun+CvgeCupOKAjOCusuCvjeCuleKAjOCus+CvjScsJ+CupOCvguCuo+CvjeCun+CvgSDgrrXgrr/grprgr4jgrq/gr4gg4K6a4K+H4K6w4K+NJywn4K6k4oCM4K6V4oCM4K614oCM4K6y4K+N4K6k4oCM4K6z4oCMIOCuheCuruCviOCuquCvjeCuquCvgSDgrq7gr4HgrrHgr4jgrpXigIzgrrPgr40nLCdQZXJtYW5lbnQgbGluaycsJ+Cuj+CuseCvjeCuseCvgeCuruKAjOCupOCuvycsJ+CuteCvhuCus+Cuv+Cur+CvgOCun+CvgScsJ+Cug+CuquCuvuCusOCvjeCuruKAjOCun+CvjSAoRm9ybWF0KScsJ+CusOCviuCun+CvjeCun+CvgOCuqeCvjSAnLCfgrqjgrr/grpXigIzgrrTgr43grprgr43grprgrr/grpXigIzgrrPgr40nLCfgrqTigIzgrpXigIzgrrXigIzgrrLgr40nLCfgrqTgr4rgrpXgr4EnLCfgrqrigIzgrq/igIzgrqngrr7grrPigIzgrrDgr4gg4K6J4K6w4K+B4K614K6+4K6V4K+N4K6V4K+BJyxhcnJheSgn4K614K6/4K6p4oCM4K614oCM4K6y4K+NIOCumuCvhuCur+KAjOCusuCvjeCuquKAjOCun+CvgeCupOCvjeCupOKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgSwgJWQg4K614oCM4K6w4K6/4K6a4K+IIOCuruCuvuCuseCvjeCuseKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgrrXgrr/grqnigIzgrrXigIzgrrLgr40g4K6a4K+G4K6v4oCM4K6y4K+N4K6q4oCM4K6f4K+B4K6k4K+N4K6k4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLCAlZCDgrrXigIzgrrDgrr/grprgr4jgrpXigIzgrrPgr40g4K6u4K6+4K6x4K+N4K6x4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6p4oCMLicpLGFycmF5KCclZCDgrrXigIzgrrDgrr/grprgr4gnLCclZCDgrrXigIzgrrDgrr/grprgr4jgrpXigIzgrrPgr40nKSwn4K614K6/4K6p4oCM4K614oCM4K6y4K6/4K6y4K+NIOCupOKAjOCuteKAjOCuseCvgeCus+CvjeCus+KAjOCupOCvgScsJ+CumuCvhuCur+KAjOCusuCvjSDgrqrigIzgrp/gr4HgrqTgr43grqTigIwg4K6O4K6o4K+N4K6k4oCMIOCuleKAjOCun+CvjeCun+KAjOCus+CviOCuleKAjOCus+CvgeCuruCvjSDgrofgrrLgr43grrLgr4guJyxhcnJheSgnJWQg4K614K6/4K6p4oCM4K614oCM4K6y4K+NIOCumuCvhuCur+KAjOCusuCvjeCuquKAjOCun+CvgeCupOCvjeCupOKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCclZCDgrrXgrr/grqnigIzgrrXigIzgrrLgr43grpXigIzgrrPgr40g4K6a4K+G4K6v4oCM4K6y4K+N4K6q4oCM4K6f4K+B4K6k4K+N4K6k4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6p4oCMLicpLCfgrpXgr4vgrqrgr43grqrgr4gg4K6u4K+H4K6y4K+H4K6x4K+N4K6x4K+BICh1cGxvYWQpICcsJ+CuleCvi+CuquCvjeCuquCvgeCuleKAjOCus+CvjSDgrq7gr4fgrrLgr4fgrrHgr43grrHgrq7gr40gKHVwbG9hZCngrq7gr4Hgrp/igIzgrpXgr43grpXigIzgrqrgr43grqrigIzgrp/gr43grp/gr4HgrrPgr43grrPigIzgrqnigIwuJywn4K6a4K+G4K6v4oCM4K6y4K+N4K6q4oCM4K6f4K+B4K6k4K+N4K6k4K+BJywn4K6q4K6/4K604K+IIOCuj+CuseCvjeCuquKAjOCun+Cuv+CuqeCvjSDgrqjgrr/grrHgr43grpXigIwnLCfgrqrgrr/grrTgr4jgrpXigIzgrrPgr4gg4K6u4oCM4K6f4K+N4K6f4K+B4K6u4K+NIOCuleCuvuCuo+CvjeCuquCuv+CuleCvjeCuleKAjOCuteCvgeCuruCvjScsJ+CumuCvhuCusOCvjeCuteKAjOCusOCuv+CusuCvjSDgrofgrrDgr4Hgrqjgr43grqTgr4EnLCfgrrXgr4bgrqrgr40g4K6a4oCM4K6w4K+N4K614oCM4K6w4K+NIOCuleCvi+CuquCvjeCuquCvgSAlcycsJ+CuleCvi+CuquCvjeCuquCuv+CuqeCviCDgrofgrq/igIzgrpXgr43grpXigIzgrrXgr4Hgrq7gr40nLCfgrrXigIzgrrDigIzgrrLgrr7grrHgr4EnLCfgrqTgr4Hgrp/gr4ggKENsZWFyKScsJ0VkaXQgYWxsJywn4K6J4K6w4K+B4K6q4K+N4K6q4K6f4K6/IOCuqOCvgOCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgrongrrDgr4Hgrqrgr43grqrigIzgrp/grr8g4K6q4K+B4K6k4K+B4K6q4K+N4K6q4K6/4K6V4K+N4K6V4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+CuieCusOCvgeCuquCvjeCuquKAjOCun+CuvyAoSXRlbSkg4K6a4K+H4K6w4K+N4K6V4K+N4K6V4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+CuquCvgeCuleCvgeCupOCvjeCupOCvgScsJ+CumuCvh+CuruCuvycsJ+CumuCvh+CuruCuv+CupOCvjeCupOKAjCDgrqrgrr/grrHigIzgrpXgr4Eg4K6k4K+K4K6V4K+B4K6q4K+N4K6q4oCM4K6k4K+IIOCupOCviuCun+KAjOCusOKAjOCuteCvgeCuruCvjScsJ+CumuCvh+CuruCuv+CupOCvjeCupOKAjOCuquCvjSDgrqrgrr/grqngr40g4K6F4K6f4K+B4K6k4K+N4K6k4oCM4K6k4K+IIOCuquCvgeCuleCvgeCupOCvjeCupOCvgScsJ+CuqOCvgOCuleCvjeCuleCvgScsJ+CuheCun+CvjeCun+KAjOCuteKAjOCuo+CviCDgrqjgr4DgrpXgr43grpXigIzgrqrgr43grqrigIzgrp/gr43grp/igIzgrqTgr4EuJywn4K6F4K6f4K+N4K6f4oCM4K614K6j4K+IIOCuruCuvuCuseCvjeCuseKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgroXgrp/gr43grp/igIzgrrXigIzgrqPgr4gg4K6J4K6w4K+B4K614K6+4K6V4K+N4K6V4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+CuheCun+CvjeCun+KAjOCuteKAjOCuo+CviOCur+CviCDgrongrrDgr4HgrrXgrr7grpXgr43grpXgr4EnLCfgroXgrqngr4Hgrq7igIzgrqTgrr/grpXgr43grpXigIzgrqrgr43grqrigIzgrp/gr43grp/igIwg4K6F4K6k4K6/4K6V4oCM4K6q4oCM4K6f4K+N4K6a4oCMIOCuleCvi+CuquCvjeCuquCvgeCuleKAjOCus+Cuv+CuqeCvjSDgro7grqPgr43grqPgrr/grpXgr43grpXgr4gg4K6u4K+A4K6x4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLiDgrqTigIzgrq/igIzgrrXgr4Eg4K6a4K+G4K6v4K+N4K6k4K+BICVzIOCuruKAjOCuseCvjeCuseCvgeCuruCvjSAlcyDgrq/gr4gg4K6F4K6k4K6/4K6V4oCM4K6w4K6/4K6V4K+N4K6V4oCM4K614K+B4K6u4K+NLicsJ+CuheCun+CvjeCun+KAjOCuteKAjOCuo+CviOCuquCvjSDgrqrgr4bgrq/igIzgrrDgr40nLCfgro7grp7gr43grprgrr/grqngr40nLCfgrqrgrr/grrDgrr/grqTgr43grqTigIzgrqTgr4EnLCfgrqrgrr/grrDgrr/grrXgr4HgrpXigIzgrrPgr40nLCfgrqrgrr/grrDgrr/grrXgrr/grqngr40g4K6q4K+G4K6v4oCM4K6w4K+NJywn4K6u4oCM4K6k4K6/4K6q4K+N4K6q4K+B4K6V4oCM4K6z4K+NJywn4K6F4K6V4oCM4K614oCM4K6w4K6/4K6a4K+I4K6V4oCM4K6z4K+NIChJbmRleGVzKSDgrq7grr7grrHgr43grrHigIzgrqrgr43grqrgrp/gr43grp/igIzgrqTgr4EuJywn4K6F4K6V4oCM4K614oCM4K6w4K6/4K6a4K+IIOCuteKAjOCuleCviCAoSW5kZXggVHlwZSknLCfgrqjgr4bgrp/gr4HgrrXigIzgrrDgrr/grprgr4ggKOCuqOCvgOCus+KAjOCuruCvjSknLCfgrqTigIzgrpXigIzgrrXigIzgrrLgr43grqTigIzgrrPigIzgrq7gr40g4K6o4K+A4K6V4K+N4K6V4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+CupOKAjOCuleKAjOCuteKAjOCusuCvjeCupOKAjOCus+KAjOCuruCvjSDgrqrgr4bgrq/igIzgrrDgr40g4K6u4K6+4K6x4K+N4K6x4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+CupOKAjOCuleKAjOCuteKAjOCusuCvjeCupOKAjOCus+KAjOCuruCvjSDgrongrrDgr4HgrrXgrr7grpXgr43grpXigIzgrqrgr43grqrigIzgrp/gr43grp/igIzgrqTgr4EuJywn4K6k4oCM4K6V4oCM4K614oCM4K6y4K+N4K6k4oCM4K6z4oCM4K6u4K+NIOCuruCuvuCuseCvjeCuseKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgrqTigIzgrpXigIzgrrXigIzgrrLgr43grqTigIzgrrPigIzgrqTgr43grqTgr4gg4K6J4K6w4K+B4K614K6+4K6V4K+N4K6V4K+BJywn4K6F4K6u4K+I4K6q4K+N4K6q4K+B4K6u4K+B4K6x4K+IIOCuqOCvgOCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgroXgrq7gr4jgrqrgr43grqrgr4Hgrq7gr4HgrrHgr4gg4K6J4K6w4K+B4K614K6+4K6V4K+N4K6V4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+CuheCuruCviOCuquCvjeCuquCvgeCuruCvgeCuseCviCDgrq7grr7grrHgr43grrHigIzgrqrgr43grqrigIzgrp/gr43grp/igIzgrqTgr4EuJywn4K6F4K604K+IJyxhcnJheSgn4K6w4K+K4K6f4K+N4K6f4K+A4K6p4K+N4K6V4oCM4K6z4K+NIOCuheCutOCviOCuleCvjeCuleKAjOCuquCvjeCuquCun+CvjeCun+CvgeCus+CvjeCus+KAjOCuqeKAjCwgJWQg4K614oCM4K6w4K6/4K6a4K+IIOCuruCuvuCuseCvjeCuseKAjOCuruCvjSDgroXgrp/gr4jgrqjgr43grqTigIzgrqTgr4EuJywn4K6w4K+K4K6f4K+N4K6f4K+A4K6p4K+N4K6V4oCM4K6z4K+NIOCuheCutOCviOCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+CvgeCus+CvjeCus+KAjOCuqeKAjCwgJWQg4K614oCM4K6w4K6/4K6a4K+I4K6V4oCM4K6z4K+NIOCuruCuvuCuseCvjeCuseCuruCvjSDgroXgrp/gr4jgrqjgr43grqTgr4HgrrPgr43grrPigIzgrqnigIwuJyksJ+CuteCvh+CuseCvjeCuseCvgSDgrrXgrr/grprgr4gg4K6o4K+A4K6V4K+N4K6V4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+CuteCvh+CuseCvjeCuseCvgSDgrrXgrr/grprgr4gg4K6u4K6+4K6x4K+N4K6x4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+CuteCvh+CuseCvjeCuseCvgSDgrrXgrr/grprgr4gg4K6J4K6w4K+B4K614K6+4K6V4K+N4K6V4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+Cuh+CusuKAjOCuleCvjeCuleCvgSDgrqjgr4bgrp/gr4HgrrXigIzgrrDgrr/grprgr4jgrq/grr/grrLgr40g4K6F4K6V4oCM4K614oCM4K6w4K6/4K6a4K+IIChJbmRleCkg4K6u4oCM4K6x4K+N4K6x4K+B4K6u4K+NIOCuleCvgeCuseCuv+CuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjCDgrqTigIzgrpXigIzgrrXgrrLgr40gKFJlZmVyZW5jZWQgREFUQSkg4K6V4oCM4K6j4K+N4K6f4K6/4K6q4K+N4K6q4K6+4K6V4oCMIOCuh+CusOCvgeCupOCvjeCupOKAjOCusuCvjSDgrrXgr4fgrqPgr43grp/gr4Hgrq7gr40uIOCuruCvguCusuKAjCDgrqjgr4bgrp/gr4HgrrXigIzgrrDgrr/grprgr4gg4K6u4oCM4K6x4K+N4K6x4K+B4K6u4K+NIOCuh+CusuCuleCvjeCuleCvgSDgrqjgr4bgrp/gr4HgrrXigIzgrrDgrr/grprgr4jgrq/grr/grqngr40g4K6k4oCM4K6V4oCM4K614oCM4K6y4K+NIOCuteKAjOCun+Cuv+CuteKAjOCuruCvjSAoREFUQSBUWVBFKSDgrpLgrqngr43grrHgrr7grpXigIwg4K6H4K6w4K+B4K6V4K+N4K6V4oCMIOCuteCvh+Cuo+CvjeCun+CvgeCuruCvjS4nLCfgrrXgr4fgrrHgr43grrHgr4Eg4K614K6/4K6a4K+IJywn4K6F4K6f4K+N4K6f4oCM4K614oCM4K6j4K+IIOCuh+CusuKAjOCuleCvjeCuleCvgScsJ+CuruCuvuCuseCvjeCuseCvgScsJ+CuqOCvhuCun+CvgSDgrrXigIzgrrDgrr/grprgr4jgrq/gr4gg4K6a4K+H4K6w4K+N4K6V4K+N4K6V4oCM4K614K+B4K6u4K+NJywn4K6k4K+L4K6x4K+N4K6x4oCM4K6u4K+NIOCuqOCvgOCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgrqTgr4vgrrHgr43grrHgrq7gr40g4K6u4K6+4K6x4K+N4K6x4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+CupOCvi+CuseCvjeCuseKAjOCuruCvjSDgrongrrDgr4HgrrXgrr7grpXgr43grpXigIzgrqrgr43grqrigIzgrp/gr43grp/igIzgrqTgr4EuJywn4K6k4K+L4K6x4K+N4K6x4K6k4K+N4K6k4K+IIOCuieCusOCvgeCuteCuvuCuleCvjeCuleCvgScsJ+CuquCvhuCur+KAjOCusOCvjScsJ+CuqOCuv+CuleKAjOCutOCvjeCumuCvjeCumuCuvyAoRXZlbnQpIOCuqOCvgOCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgrqjgrr/grpXigIzgrrTgr43grprgr43grprgrr8gKEV2ZW50KSDgrq7grr7grrHgr43grrHgrqrgr43grqrigIzgrp/gr43grp/igIzgrqTgr4EuJywn4K6o4K6/4K6V4oCM4K604K+N4K6a4K+N4K6a4K6/IChFdmVudCkg4K6J4K6w4K+B4K614K6+4K6V4K+N4K6V4oCM4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+CuqOCuv+CuleKAjOCutOCvjeCumuCvjeCumuCuv+Cur+CviCAoRXZlbnQpIOCuruCuvuCuseCvjeCuseCvgScsJ+CuqOCuv+CuleKAjOCutOCvjeCumuCvjeCumuCuv+Cur+CviCAoRXZlbnQpIOCuieCusOCvgeCuteCuvuCuleCvjeCuleCvgScsJ+CupOCviuCun+KAjOCumeCvjeCuleCvgScsJ+CuruCvgeCun+CuvyAo4K614K+BKScsJ+CukuCuteCvjeCuteCviuCusOCvgScsJ+CuruCvgeCun+Cuv+CuqOCvjeCupOKAjOCupOCuv+CuqeCvjSDgrqrgrr/grqngr40g4K6q4K6+4K6k4K+B4K6V4K6+4K6V4K+N4K6V4oCM4K614K+B4K6u4K+NJywn4K6w4K+K4K6f4K+N4K6f4K+A4K6p4K+NIOCuqOCvgOCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgrrDgr4rgrp/gr43grp/gr4Dgrqngr40g4K6u4K6+4K6x4K+N4K6x4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4K6k4K+BLicsJ+CusOCviuCun+CvjeCun+CvgOCuqeCvjSDgrongrrDgr4HgrrXgrr7grpXgr43grpXigIzgrqrgr43grqrigIzgrp/gr43grp/igIzgrqTgr4EuJywnRnVuY3Rpb24g4K6u4K6+4K6x4K+N4K6x4K+BJywn4K6a4K+G4K6v4oCM4K6y4K+N4K6u4K+B4K6x4K+I4K6v4K+IIOCuruCuvuCuseCvjeCuseCvgScsJ0Z1bmN0aW9uIOCuieCusOCvgeCuteCuvuCuleCvjeCuleCvgScsJ+CumuCvhuCur+CvjeCuruCvgeCuseCviOCur+CviCDgrongrrDgr4HgrrXgrr7grpXgr43grpXgr4EnLCfgrqTgrr/grrDgr4Hgrq7gr43grqrgr4Eg4K614oCM4K6V4K+IJywn4K614oCM4K6w4K6/4K6a4K+I4K6u4K+B4K6x4K+IIOCuqOCvgOCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgrrXigIzgrrDgrr/grprgr4jgrq7gr4HgrrHgr4gg4K6J4K6w4K+B4K614K6+4K6V4K+N4K6V4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+CuteKAjOCusOCuv+CumuCviOCuruCvgeCuseCviCDgrq7grr7grrHgr43grrHigIzgrqrgr43grqrigIzgrp/gr43grp/igIzgrqTgr4EuJywn4K614oCM4K6w4K6/4K6a4K+I4K6u4K+B4K6x4K+I4K6v4K+IIOCuruCuvuCuseCvjeCuseCvgScsJ+CuteKAjOCusOCuv+CumuCviOCuruCvgeCuseCviOCur+CviCDgrongrrDgr4HgrrXgrr7grpXgr43grpXgr4EnLCfgrrXigIzgrpXgr4ggKHR5cGUpIOCuqOCvgOCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgrrXigIzgrpXgr4ggKHR5cGUpIOCuieCusOCvgeCuteCuvuCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgrrXigIzgrpXgr4jgrq/grr/grqngr4ggKHR5cGUpIOCuruCuvuCuseCvjeCuseCvgScsJ+CuteKAjOCuleCviOCur+CviCDgrongrrDgr4HgrrXgrr7grpXgr43grpXgr4EnLCfgrqTgr4LgrqPgr43grp/gr4Eg4K614K6/4K6a4K+IIOCuqOCvgOCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgrqTgr4LgrqPgr43grp/gr4Eg4K614K6/4K6a4K+IIOCuruCuvuCuseCvjeCuseKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgrqTgr4LgrqPgr43grp/gr4Eg4K614K6/4K6a4K+IIOCuieCusOCvgeCuteCuvuCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgrqTgr4LgrqPgr43grp/gr4Eg4K614K6/4K6a4K+I4K6v4K+IIOCuruCuvuCuseCvjeCuseCvgScsJ+CupOCvguCuo+CvjeCun+CvgSDgrrXgrr/grprgr4jgrq/gr4gg4K6J4K6w4K+B4K614K6+4K6V4K+N4K6V4K+BJywn4K6o4K+H4K6w4oCM4K6u4K+NJywn4K6o4K6/4K6V4oCM4K604K+N4K6a4K+N4K6a4K6/Jywn4K6q4oCM4K6v4K6p4K+A4K6f4K+N4K6f4K6+4K6z4oCM4K6w4K+NIOCuqOCvgOCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+CuvuCusOCvjS4nLCfgrqrigIzgrq/grqngr4Dgrp/gr43grp/grr7grrPigIzgrrDgr40g4K6u4K6+4K6x4K+N4K6x4K6q4K+N4K6q4oCM4K6f4K+N4K6f4K6+4K6w4K+NLicsJ+CuquKAjOCur+KAjOCuqeCvgOCun+CvjeCun+CuvuCus+KAjOCusOCvjSDgrongrrDgr4HgrrXgrr7grpXgr43grpXigIzgrqrgr43grqrigIzgrp/gr43grp/igIzgrqTgr4EuJywnSGFzaGVkJywn4K6w4K+K4K6f4K+N4K6f4K+A4K6p4K+NJywn4K6F4K6p4K+B4K6u4oCM4K6k4K6/4K6v4oCM4K6z4K6/Jywn4K6H4K6w4oCM4K6k4K+N4K6k4K+B4K6a4K+N4K6a4K+G4K6v4K+NJyxhcnJheSgnJWQg4K614K+H4K6y4K+IIOCuteKAjOCusuCvgeCuteCuv+CusuCvjSDgrqjgrr/grrHgr4HgrqTgr43grqTigIzgrqrigIzgrp/gr43grp/igIzgrqTgr4EuJywnJWQg4K614K+H4K6y4K+I4K6V4oCM4K6z4K+NIOCuteKAjOCusuCvgeCuteCuv+CusuCvjSDgrqjgrr/grrHgr4HgrqTgr43grqTigIzgrqrigIzgrp/gr43grp/igIzgrqnigIwuJyksJ+CuruCviuCupOCvjeCupOCuruCvjSAlZCAnLCfgrrXigIzgrrLgr4HgrrXgrr/grrLgr40g4K6o4K6/4K6x4K+B4K6k4K+N4K6k4K+BJyxhcnJheSgnJWQg4K6J4K6w4K+B4K6q4K+N4K6q4oCM4K6f4K6/IOCuruCuvuCuseCvjeCuseKAjOCuruKAjOCun+CviOCuqOCvjeCupOCupOCvgS4nLCclZCDgrongrrDgr4Hgrqrgr43grqrigIzgrp/grr/grpXigIzgrrPgr40g4K6u4K6+4K6x4K+N4K6x4oCM4K6u4oCM4K6f4K+I4K6o4K+N4K6k4oCM4K6p4oCMLicpLCfgrq7igIzgrqTgrr/grqrgr43grqrgrr/grqngr4gg4K6u4K6+4K6x4K+N4K6xIOCuheCupOKAjOCuqeCvjSDgrq7gr4DgrqTgr4Eg4K6H4K6w4K+B4K6u4K+B4K6x4K+IIOCumuCviuCun+CvgeCuleCvjeCuleKAjOCuteCvgeCuruCvjSAoRG91YmxlIGNsaWNrKS4nLGFycmF5KCclZCDgrrXigIzgrrDgrr/grprgr4gg4K6H4K6x4oCM4K6V4K+N4K6V4K+B4K6u4oCM4K6k4K6/IChJbXBvcnQpIOCumuCvhuCur+CvjeCur+KAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCclZCDgrrXigIzgrrDgrr/grprgr4jgrpXigIzgrrPgr40g4K6H4K6x4oCM4K6V4K+N4K6V4K+B4K6u4oCM4K6k4K6/IChJbXBvcnQpIOCumuCvhuCur+CvjeCur+KAjOCuquCvjeCuquKAjOCun+CvjeCun+CuqeKAjC4nKSwn4K6F4K6f4K+N4K6f4oCM4K614oCM4K6j4K+I4K6v4K+IIOCupOCvh+CusOCvjeCuteCvgSDgrprgr4bgrq/gr43grq/igIwg4K6u4K+B4K6f4K6/4K6v4oCM4K614K6/4K6y4K+N4K6y4K+IJywn4K6J4K6x4oCM4K614K+B4K6V4oCM4K6z4K+NIChSZWxhdGlvbnMpJywn4K6H4K6o4K+N4K6k4oCMIOCuruKAjOCupOCuv+CuquCvjeCuquCuv+CuqeCviCDgrq7grr7grrHgr43grrHigIwsIOCupOCviuCuleCvgeCuquCvjeCuquCvgSDgrofgrqPgr4jgrqrgr43grqrgrr/grqngr4gg4K6J4K6q4oCM4K6v4K+L4K6V4K6/4K6V4K+N4K6V4oCM4K614K+B4K6u4K+NLicsJ+CuquKAjOCuleCvjeCuleKAjOCuruCvjScsJ+CuleKAjOCun+CviOCumuCuvycsJ+CuruCvgeCutOCvgeCuruCviOCur+CuvuCuqeKAjCDgrq7gr4Hgrp/grr/grrXgr4EnLCfgrqjigIzgrpXigIzgrrLgrr8gKENsb25lKScsJ+Cuh+CuseKAjOCuleCvjeCuleCvgeCuruKAjOCupOCuvyAoSW1wb3J0KScsJywnLCfgroXgrp/gr43grp/igIzgrrXigIzgrqPgr4gg4K6V4K+B4K6x4K+I4K6V4K+N4K6V4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BICh0cnVuY2F0ZWQpLicsJ+CuheCun+CvjeCun+KAjOCuteKAjOCuo+CviCDgrqjigIzgrpXigIzgrrDgr43grqTgr43grqTigIzgrqrgr43grqrigIzgrp/gr43grp/igIzgrqTgr4EuJywnVGFibGVzIGhhdmUgYmVlbiBjb3BpZWQuJywn4K6F4K6f4K+N4K6f4oCM4K614oCM4K6j4K+IIOCuqOCvgOCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgroXgrp/gr43grp/igIzgrrXigIzgrqPgr4jgrpXigIzgrrPgr4Hgrq7gr40g4K6q4K6+4K6w4K+N4K614K+I4K6V4oCM4K6z4K+B4K6u4K+NJywn4K6k4oCM4K6V4oCM4K614oCM4K6y4K+IIOCuheCun+CvjeCun+KAjOCuteKAjOCuo+CviOCur+Cuv+CusuCvjSDgrqTgr4fgrp/gr4EnLCfgro7grp7gr43grprgrr/grqngr40gKEVuZ2luZSknLCfgrqTigIzgrpXigIzgrrXigIzgrrLgr40g4K6o4K+A4K6z4oCM4K6u4K+NJywnSW5kZXgg4K6o4K+A4K6z4oCM4K6u4K+NJywnRGF0YSBGcmVlJywn4K614oCM4K6w4K6/4K6a4K+I4K6V4oCM4K6z4K+NJywn4K6o4K+B4K6j4K+B4K6V4K6/IOCuhuCusOCuvuCur+KAjOCuteCvgeCuruCvjScsJ+CuieCuleKAjOCuquCvjeCuquCuvuCuleCvjeCuleCvgSAoT3B0aW1pemUpJywn4K6q4oCM4K6w4K6/4K6a4K+L4K6k4K6/Jywn4K6q4oCM4K604K+B4K6k4K+BIOCuquCuvuCusOCvjScsJ+CuleCvgeCuseCviCAoVHJ1bmNhdGUpJywn4K6u4oCM4K6x4K+N4K6x4oCMIOCupOKAjOCuleKAjOCuteKAjOCusuCvjSDgrqTgrrPigIzgrqTgr43grqTgrr/grrHgr43grpXgr43grpXgr4Eg4K6o4oCM4K6V4oCM4K6w4K+N4K6k4K+N4K6k4K+BJywn4K6o4oCM4K6V4oCM4K6w4K+N4K6k4K+N4K6k4K+BJywnQ29weScsJ+CuteKAjOCusOCuv+CumuCviOCuruCvgeCuseCviCcsJ+CuleCuvuCusuKAjCDgroXgrp/gr43grp/igIzgrrXigIzgrqPgr4gnLCfgrpXgr4HgrrHgrr/grqTgr43grqTigIwg4K6o4K+H4K6w4oCM4K6k4K+N4K6k4K6/4K6y4K+NJywn4K6H4K6q4K+N4K6q4K+K4K604K+B4K6k4K+BJyk7YnJlYWs7Y2FzZSJhciI6JFk9YXJyYXkoJ9mH2YQg2KPZhtiqINmF2KrYo9mD2K/YnycsJ9mF2YYg2LrZitixINin2YTZhdmF2YPZhiDYsdmB2Lkg2KfZhNmF2YTZgS4nLCfYrdis2YUg2KfZhNmF2YTZgSDYp9mE2KPZgti12Ykg2YfZiCAlc0IuJywn2KfZhNmF2YTZgSDYutmK2LEg2YXZiNis2YjYry4nLCfZgdin2LHYuicsJ9in2YTYo9i12YTZiicsJ9mE2Kcg2KrZiNis2K8g2KzYr9in2YjZhC4nLCfYp9mE2YTYutipJywn2KfZhNmF2LPYqti52YXZhCcsJ9mF2YYg2YHYttmE2YMg2KXYs9iq2LnZhdmEINil2K3Yr9mJINin2YTYutmF2KrYr9in2K/Yp9iqOiAlcy4nLCfYp9mE2YXZhNmBINmF2YjYrNmI2K8uJywn2YbZiNi5INin2YTZhdiz2KrYrtiv2YUnLCfYo9i52K/Yp9ivJywn2KfZhNiq2KfYsdmK2K4g2Ygg2KfZhNmI2YLYqicsJ9iz2YTYp9iz2YQnLCfYq9mG2KfYptmK2KknLCfYtNio2YPYqScsJ9mH2YbYr9iz2KknLCfZgtmI2KfYptmFJywn2KfZhNmG2LjYp9mFJywn2KfZhNiu2KfYr9mFJywn2KfZhNmF2LPYqti52YXZhCcsJ9mD2YTZhdipINin2YTZhdix2YjYsScsJ9iq2LPYrNmK2YQg2KfZhNiv2K7ZiNmEJywn2KrYs9is2YrZhCDYr9iu2YjZhCDYr9in2KbZhScsJ9i52LHYtiDYp9mE2KjZitin2YbYp9iqJywn2LnYsdi2INin2YTYqtix2YPZitio2KknLCfYqti52K/ZitmEINi52LHYticsJ9iq2LnYr9mK2YQg2KfZhNis2K/ZiNmEJywn2LnZhti12LEg2KzYr9mK2K8nLCfYp9mE2LXZgdit2Kkg2KfZhNiz2KfYqNmC2KknLCfYqti52K/ZitmEJywnJWQg2KjYp9mK2KonLCfYpdiu2KrZitin2LEnLCfYp9mE2K/ZiNin2YQnLCfYqtis2YXZiti5Jywn2KjYrdirJywn2YHZiiDYp9mKINmF2YPYp9mGJywn2KrYsdiq2YrYqCcsJ9iq2YbYp9iy2YTZiicsJ9it2K8nLCfYt9mI2YQg2KfZhNmG2LUnLCfYrdix2YPYqScsJ9il2LPYqti52YTYp9mFIFNRTCcsJ9mB2KrYrScsJ9it2YHYuCcsJ9iq2LnYr9mK2YQg2YLYp9i52K/YqSDYp9mE2KjZitin2YbYp9iqJywn2KrYudiv2YrZhCDYp9mE2YXYrti32LcnLCfYpdmG2LTYp9ihINmF2K7Yt9i3Jywn2KrYtdiv2YrYsScsJ9iq2LPYrNmK2YQg2KfZhNiu2LHZiNisJywn2YLYp9i52K/YqSDYqNmK2KfZhtin2KonLCfYp9mE2YXYrti32LcnLCfYo9mG2LTYpiDYrNiv2YjZhCDYrNiv2YrYrycsJ9iq2K3Yr9mK2K8nLCdydGwnLCdSZXNlbmQgUE9TVCBkYXRhPycsJ0NTUkYgVG9rZW4g2K7Yp9i32KYuINmF2YYg2YHYttmE2YMg2KPYudivINil2LHYs9in2YQg2KfZhNil2LPYqtmF2KfYsdipLicsJ9mF2Lkg2KfZhNiz2YTYp9mF2KkuJywn2LnZhNmK2YMg2KrZgdi52YrZhCDZhti42KfZhSDYp9mE2KzZhNiz2KfYqi4nLCfYpdmG2KrZh9iqINin2YTYrNmE2LPYqdiMINmF2YYg2YHYttmE2YMg2KPYudivINiq2LPYrNmK2YQg2KfZhNiv2K7ZiNmELicsJ9mB2LTZhCDZgdmKINiq2LPYrNmK2YQg2KfZhNiv2K7ZiNmELicsJ9il2YXYqtiv2KfYryDYutmK2LEg2YXZiNis2YjYrycsJ9il2YXYqtiv2KfYr9in2KogcGhwINin2YTZhdiv2LnZiNmF2Kkg2LrZitixINmF2YjYrNmI2K/YqS4nLCfZhdi52YTZiNmF2KfYqiBQT1NUINmD2KjZitix2Kkg2KzYr9inLiDZgtmFINio2KrZgtmE2YrYtSDYrdis2YUg2KfZhNmF2LnZhNmI2YXYp9iqINij2Ygg2YLZhSDYqNiy2YrYp9iv2Kkg2YLZitmF2KkgJXMg2YHZiiDYrtmK2KfYsdin2Kog2KfZhCBQSFAuJywn2YLYp9i52K/YqSDYqNmK2KfZhtin2KonLCfZgtin2LnYr9ipINio2YrYp9mG2KfYqiDYrtin2LfYptipLicsJ9iq2YUg2K3YsNmBINmC2YjYp9i52K8g2KfZhNio2YrYp9mG2KfYqi4nLCfYpdiu2KrYsSDZgtin2LnYr9ipINin2YTYqNmK2KfZhtin2KonLCfYo9mG2LTYpiDZgdin2LnYr9ipINio2YrYp9mG2KfYqicsJ9in2YTYpdmF2KrZitin2LLYp9iqJywn2YLYp9im2YXYqSDYp9mE2KXYrNix2KfYodin2KonLCfZhdiq2LrZitix2KfYqicsJ9it2KfZhNipJywn2KfZhNmG2LPYrtipICVzIDogJXMg2LnZhiDYt9ix2YrZgiDYpdmF2KrYr9in2K8g2KfZhCBQSFAgJXMnLCfYqtmFINiq2LPYrNmK2YQg2KfZhNiv2K7ZiNmEINio2KXYs9mFICVzJywn2KrYsdiq2YrYqCcsJ9is2K/Yp9mI2YQnLCfYrdiw2YEnLCfYqtit2K/ZitirJywn2KfZhNmF2K7Yt9i3Jywn2YXYrti32Lcg2K7Yp9i32KYuJywn2YTYpyDYqtmI2KzYryDZhtiq2KfYptisLicsJyUuM2YgcycsJ9mF2YHYp9iq2YrYrSDYo9is2YbYqNmK2KknLCfYp9mE2KrYsdiq2YrYqCcsJ09OIERFTEVURScsJ9il2LPZhSDYp9mE2LnZhdmI2K8nLCfYpdiz2YUg2KfZhNmF2KrYutmK2LEnLCfYp9mE2YbZiNi5Jywn2KfZhNi32YjZhCcsJ9iu2YrYp9ix2KfYqicsJ9iq2LLYp9mK2K8g2KrZhNmC2KfYptmKJywn2KfZhNmC2YrZhdipINin2YTYpdmB2KrYsdin2LbZitipJywn2KrYudmE2YrZgicsJ9il2LbYp9mB2Kkg2KfZhNiq2KfZhNmKJywn2YbZgtmEINmE2YTYo9i52YTZiScsJ9mG2YLZhCDZhNmE2KPYs9mB2YQnLCfZhdiz2K0nLCfYudix2LYnLCfYrNiv2YjZhCcsJ9i52YXZiNivJywn2KfZhNmF2KTYtNix2KfYqicsJ9iq2LnYr9mK2YQg2KfZhNmF2KTYtNix2KfYqicsJ9in2YTZhdi12K/YsScsJ9in2YTZh9iv2YEnLCdPTiBVUERBVEUnLCfYqti52K/ZitmEJywn2KXYttin2YHYqSDZhdmB2KrYp9itINij2KzZhtio2YonLCfYp9mE2LLZhtin2K/Yp9iqJywn2KXYttin2YHYqSDYstmG2KfYrycsJ9mF2K7Yt9i3INmB2KfYudiv2Kkg2KfZhNio2YrYp9mG2KfYqicsJ1Blcm1hbmVudCBsaW5rJywn2KrYtdiv2YrYsScsJ9il2K7Ysdin2KwnLCfYp9mE2LXZiti62KknLCfYp9mE2LHZiNiq2YrZhtin2KonLCfYp9mE2KPYrdiv2KfYqycsJ9mF2LnZhNmI2YXYp9iqJywn2KrYudiv2YrZhCcsJ9il2YbYtNin2KEg2YXYs9iq2K7Yr9mFJywn2KrZhSDYqtmG2YHYs9iwINin2YTYpdiz2KrYudmE2KfZhSwgJWQg2LnYr9ivINin2YTYo9iz2LfYsSDYp9mE2YXYudiv2YTYqS4nLCclZCDYo9iz2LfYsScsJ9mH2YbYp9mDINiu2LfYoyDZgdmKINin2YTYpdiz2KrYudmE2KfZhScsJ9mE2Kcg2KrZiNis2K8g2KPZiNin2YXYsSDZhNmE2KrZhtmB2YrYsC4nLGFycmF5KCfYqtmFINiq2YbZgdmK2LAg2KfZhNil2LPYqti52YTYp9mFICVkINio2YbYrNin2K0uJywn2KrZhSDYqtmG2YHZitiwINin2YTYpdiz2KrYudmE2KfZhdin2KogJWQg2KjZhtis2KfYrS4nKSwn2LHZgdi5INmF2YTZgScsJ9iq2YUg2KXZhNi62KfYoSDYsdmB2Lkg2KfZhNmF2YTZgdin2KouJywn2KrZhtmB2YrYsCcsJ9ij2YjZgtmBINmB2Yog2K3Yp9mE2Kkg2K3Yr9mI2Ksg2K7Yt9ijJywn2KXYudix2LYg2KfZhNij2K7Yt9in2KEg2YHZgti3Jywn2YXZhiDYp9mE2K7Yp9iv2YUnLCfZhdmE2YEgJXMg2YXZhiDYrtin2K/ZhSDYp9mE2YjZitioJywn2YbZgdiwINin2YTZhdmE2YEnLCfYqtin2LHZitiuJywn2YXYs9itJywnRWRpdCBhbGwnLCfYqtmFINit2LDZgSDYp9mE2LnZhti12LEuJywn2KrZhSDYqti52K/ZitmEINin2YTYudmG2LXYsS4nLCfYqtmFINil2K/Ysdin2Kwg2KfZhNi52YbYtdixLicsJ9il2YbYtNin2KEnLCfYrdmB2LgnLCfYpdit2YHYuCDZiCDZiNin2LXZhCDYp9mE2KrYudiv2YrZhCcsJ9is2YHYuCDZiCDYpdmG2LTYp9ihINin2YTYqtin2YTZiicsJ9mF2LPYrScsJ9iq2YUg2K3YsNmBINin2YTYrNiv2YjZhC4nLCfYqtmFINiq2LnYr9mK2YQg2KfZhNis2K/ZiNmELicsJ9iq2YUg2KXZhti02KfYoSDYp9mE2KzYr9mI2YQuJywn2KXZhti02KfYoSDYrNiv2YjZhCcsJ9mE2YLYryDYqtis2KfZiNiy2Kog2KfZhNi52K/YryDYp9mE2KPZgti12Ykg2YTZhNit2YLZiNmELiDZitix2KzZiSDYp9mE2LHZgdi5INmF2YYgJXMg2YggJXMuJywn2KXYs9mFINin2YTYrNiv2YjZhCcsJ9in2YTZhdit2LHZgycsJ9mF2YLYs9mFINio2YjYp9iz2LfYqScsJ9in2YTYqtmC2LPZitmF2KfYqicsJ9il2LPZhSDYp9mE2KrZgtiz2YrZhScsJ9in2YTZgtmK2YUnLCfYqtmFINiq2LnYr9mK2YQg2KfZhNmF2KTYtNixLicsJ9mG2YjYuSDYp9mE2YXYpNi02LEnLCfYp9mE2LnZhdmI2K8gKNin2YTYt9mI2YQpJywn2KrZhSDYrdiw2YEg2YLYp9i52K/YqSDYp9mE2KjZitin2YbYp9iqLicsJ9iq2YXYqiDYpdi52KfYr9ipINiq2LPZhdmK2Kkg2YHYp9i52K/YqSDYp9mE2KjZitin2YbYp9iqLicsJ9iq2YUg2KXZhti02KfYoSDZgtin2LnYr9ipINin2YTYqNmK2KfZhtin2KouJywn2KrZhSDYqti52K/ZitmEINmC2KfYudiv2Kkg2KfZhNio2YrYp9mG2KfYqi4nLCfYpdmG2LTYp9ihINmC2KfYudiv2Kkg2KjZitin2YbYp9iqJywn2KrZhSDYrdiw2YEg2KfZhNmF2K7Yt9i3LicsJ9iq2YUg2KXZhti02KfYoSDYp9mE2YXYrti32LcuJywn2KrZhSDYqti52K/ZitmEINin2YTZhdiu2LfYty4nLCfYpdiz2KrYr9i52KfYoScsJ9iq2YUg2KXYs9iq2K/Yudin2KEg2KfZhNix2YjYqtmK2YYsINi52K/YryDYp9mE2KPYs9i32LEg2KfZhNmF2LnYr9mE2KkgJWQuJywn2KfZhNmF2YHYqtin2K0g2KfZhNij2KzZhtio2Yog2KrZhSDZhdiz2K3Zhy4nLCfYp9mE2YXZgdiq2KfYrSDYp9mE2KPYrNmG2KjZiiDYqtmFINiq2LnYr9mK2YTZhy4nLCfYp9mE2YXZgdiq2KfYrSDYp9mE2KPYrNmG2KjZiiDYqtmFINil2YbYtNin2KTZhy4nLCfYo9i52YXYr9ipINin2YTZhdi12K/YsSDZiCDYp9mE2YfYr9mBINmK2KzYqCDYo9mGINiq2YPZiNmGINio2YbZgdizINin2YTZhtmI2LksINmK2KzYqCDYo9mGINmK2YPZiNmGINmH2YbYp9mDINmF2KTYtNixINmB2Yog2KPYudmF2K/YqSDYp9mE2YfYr9mBINmIINin2YTYqNmK2KfZhtin2Kog2KfZhNmF2LHYrNi52YrYqSDZitis2Kgg2KfZhiDYqtmD2YjZhiDZhdmI2KzZiNiv2KkuJywn2YXZgdiq2KfYrSDYo9is2YbYqNmKJywn2KfZhNis2K/ZiNmEINin2YTZhdiz2KrZh9iv2YEnLCfYqti52K/ZitmEJywn2KPYttmBINi52YXZiNivJywn2KrZhSDZhdiz2K0g2KfZhNi52LHYti4nLCfYqtmFINiq2LnYr9mK2YQg2KfZhNi52LHYti4nLCfYqtmFINil2YbYtNin2KEg2KfZhNi52LHYti4nLCfYpdmG2LTYp9ihINi52LHYticsJ9in2YTYpdiz2YUnLCfYqtmFINmF2LPYrSDYp9mE2K3Yr9irLicsJ9iq2YUg2KrYudiv2YrZhCDYp9mE2K3Yr9irLicsJ9iq2YUg2KXZhti02KfYoSDYp9mE2K3Yr9irLicsJ9iq2LnYr9mK2YQg2K3Yr9irJywn2KXZhti02KfYoSDYrdiv2KsnLCfYpdio2K/YoycsJ9il2YbZh9in2KEnLCfZg9mEJywn2K3Zgdi4INi52YbYryDYp9mE2KXZhtiq2YfYp9ihJywn2KrZhSDYrdiw2YEg2KfZhNix2YjYqtmK2YYuJywn2KrZhSDYqti52K/ZitmEINin2YTYsdmI2KrZitmGLicsJ9iq2YUg2KXZhti02KfYoSDYp9mE2LHZiNiq2YrZhi4nLCfYqti52K/ZitmEINin2YTYr9in2YTYqScsJ9iq2LnYr9mK2YQg2KfZhNil2KzYsdin2KEnLCfYpdmG2LTYp9ihINiv2KfZhNipJywn2KXZhti02KfYoSDYpdis2LHYp9ihJywn2YbZiNi5INin2YTYudmI2K/YqScsJ9iq2YUg2K3YsNmBINin2YTYs9mE2LPZhNipLicsJ9iq2YUg2KXZhti02KfYoSDYp9mE2LPZhNiz2YTYqS4nLCfYqtmFINiq2LnYr9mK2YQg2KfZhNiz2YTYs9mE2KkuJywn2KrYudiv2YrZhCDYs9mE2LPZhNipJywn2KXZhti02KfYoSDYs9mE2LPZhNipJywn2KrZhSDYrdiw2YEg2KfZhNmG2YjYuS4nLCfYqtmFINil2YbYtNin2KEg2KfZhNmG2YjYuS4nLCfYqti52K/ZitmEINmG2YjYuScsJ9il2YbYtNin2KEg2YbZiNi5Jywn2KrZhSDYrdiw2YEg2KfZhNiy2YbYp9ivLicsJ9iq2YUg2KrYudiv2YrZhCDYp9mE2LLZhtin2K8uJywn2KrZhSDYpdmG2LTYp9ihINin2YTYstmG2KfYry4nLCfYqti52K/ZitmEINiy2YbYp9ivJywn2KXZhti02KfYoSDYstmG2KfYrycsJ9in2YTZiNmC2KonLCfYp9mE2K3Yr9irJywn2KrZhSDYrdiw2YEg2KfZhNmF2LPYqtiu2K/ZhS4nLCfYqtmFINiq2LnYr9mK2YQg2KfZhNmF2LPYqtiu2K/ZhS4nLCfYqtmFINil2YbYtNin2KEg2KfZhNmF2LPYqtiu2K/ZhS4nLCfYqtmE2KjZitivJywn2LHZiNiq2YrZhicsJ0dyYW50JywnUmV2b2tlJywn2LnYr9ivINin2YTYpdis2LHYp9ih2KfYqiDYp9mE2KrZiiDYqtmFINil2YrZgtin2YHZh9inICVkLicsJyVkINmB2Yog2KfZhNmF2KzZhdmI2LknLCfYpdmK2YLYp9mBJywn2LnYr9ivINin2YTYudmG2KfYtdixINin2YTZhdi52K/ZhNipINmH2YggJWQuJywn2KPZhtmC2LEg2YbZgtix2Kcg2YXYstiv2YjYrNinINi52YTZiSDZgtmK2YXYqSDZhNiq2LnYr9mK2YTZh9inLicsJ9i52K/YryDYp9mE2KPYs9i32LEg2KfZhNmF2LPYqtmI2LHYr9ipINmH2YggJWQuJywn2YXZhiDYutmK2LEg2KfZhNmF2YXZg9mGINil2K7YqtmK2KfYsSDYp9mE2KzYr9mI2YQnLCfYudmE2KfZgtin2KonLCfYpdiz2KrYudmF2YQg2KfZhNix2KfYqNi3ICLYqti52K/ZitmEIiDZhNiq2LnYr9mK2YQg2YfYsNmHINin2YTZgtmK2YXYqS4nLCfYtdmB2K3YqScsJ9in2YTYo9iu2YrYsdipJywn2YbYqtmK2KzYqSDZg9in2YXZhNipJywn2YbYs9iuJywn2KXYs9iq2YrYsdin2K8nLCcsJywn2KrZhSDZgti32Lkg2KfZhNis2K/Yp9mI2YQuJywn2KrZhSDZhtmC2YQg2KfZhNis2K/Yp9mI2YQuJywnVGFibGVzIGhhdmUgYmVlbiBjb3BpZWQuJywn2KrZhSDYrdiw2YEg2KfZhNis2K/Yp9mI2YQuJywn2KfZhNis2K/Yp9mI2YQg2Ygg2KfZhNi52LHZiNi2Jywn2KjYrdirINmB2Yog2KfZhNis2K/Yp9mI2YQnLCfYp9mE2YXYrdix2YMnLCfYt9mI2YQg2KfZhNmF2LnYt9mK2KfYqi4nLCfYt9mI2YQg2KfZhNmF2KTYtNixLicsJ9in2YTZhdiz2KfYrdipINin2YTYrdix2KknLCfYp9mE2KPYs9i32LEnLCfYqtit2YTZitmEJywn2KrYrdiz2YrZhicsJ9mB2K3YtScsJ9il2LXZhNin2K0nLCfZgti32LknLCfZhtmC2YQg2KXZhNmJINmC2KfYudiv2Kkg2KjZitin2YbYp9iqINij2K7YsdmJJywn2YbZgtmEJywnQ29weScsJ9in2YTYs9mE2KfYs9mEJywn2YXZiNin2LnZitivJywn2YHZiiDZiNmC2Kog2YXYrdiv2K8nLCfYp9mE2KLZhicpO2JyZWFrO31pZihleHRlbnNpb25fbG9hZGVkKCdwZG8nKSl7Y2xhc3MKTWluX1BETwpleHRlbmRzClBET3t2YXIkX3Jlc3VsdCwkc2VydmVyX2luZm8sJGFmZmVjdGVkX3Jvd3MsJGVycm9yO2Z1bmN0aW9uCl9fY29uc3RydWN0KCl7fWZ1bmN0aW9uCmRzbigkbGYsJFAsJFQsJG9mPSdhdXRoX2Vycm9yJyl7c2V0X2V4Y2VwdGlvbl9oYW5kbGVyKCRvZik7cGFyZW50OjpfX2NvbnN0cnVjdCgkbGYsJFAsJFQpO3Jlc3RvcmVfZXhjZXB0aW9uX2hhbmRsZXIoKTskdGhpcy0+c2V0QXR0cmlidXRlKDEzLGFycmF5KCdNaW5fUERPU3RhdGVtZW50JykpOyR0aGlzLT5zZXJ2ZXJfaW5mbz0kdGhpcy0+Z2V0QXR0cmlidXRlKDQpO31mdW5jdGlvbgpxdWVyeSgkaiwkZGI9ZmFsc2UpeyRpPXBhcmVudDo6cXVlcnkoJGopO2lmKCEkaSl7JG5mPSR0aGlzLT5lcnJvckluZm8oKTskdGhpcy0+ZXJyb3I9JG5mWzJdO3JldHVybgpmYWxzZTt9JHRoaXMtPnN0b3JlX3Jlc3VsdCgkaSk7cmV0dXJuJGk7fWZ1bmN0aW9uCm11bHRpX3F1ZXJ5KCRqKXtyZXR1cm4kdGhpcy0+X3Jlc3VsdD0kdGhpcy0+cXVlcnkoJGopO31mdW5jdGlvbgpzdG9yZV9yZXN1bHQoJGk9bnVsbCl7aWYoISRpKXskaT0kdGhpcy0+X3Jlc3VsdDt9aWYoJGktPmNvbHVtbkNvdW50KCkpeyRpLT5udW1fcm93cz0kaS0+cm93Q291bnQoKTtyZXR1cm4kaTt9JHRoaXMtPmFmZmVjdGVkX3Jvd3M9JGktPnJvd0NvdW50KCk7cmV0dXJuCnRydWU7fWZ1bmN0aW9uCm5leHRfcmVzdWx0KCl7cmV0dXJuJHRoaXMtPl9yZXN1bHQtPm5leHRSb3dzZXQoKTt9ZnVuY3Rpb24KcmVzdWx0KCRqLCRlPTApeyRpPSR0aGlzLT5xdWVyeSgkaik7aWYoISRpKXtyZXR1cm4KZmFsc2U7fSRhPSRpLT5mZXRjaCgpO3JldHVybiRhWyRlXTt9fWNsYXNzCk1pbl9QRE9TdGF0ZW1lbnQKZXh0ZW5kcwpQRE9TdGF0ZW1lbnR7dmFyJF9vZmZzZXQ9MCwkbnVtX3Jvd3M7ZnVuY3Rpb24KZmV0Y2hfYXNzb2MoKXtyZXR1cm4kdGhpcy0+ZmV0Y2goMik7fWZ1bmN0aW9uCmZldGNoX3Jvdygpe3JldHVybiR0aGlzLT5mZXRjaCgzKTt9ZnVuY3Rpb24KZmV0Y2hfZmllbGQoKXskYT0ob2JqZWN0KSR0aGlzLT5nZXRDb2x1bW5NZXRhKCR0aGlzLT5fb2Zmc2V0KyspOyRhLT5vcmd0YWJsZT0kYS0+dGFibGU7JGEtPm9yZ25hbWU9JGEtPm5hbWU7JGEtPmNoYXJzZXRucj0oaW5fYXJyYXkoImJsb2IiLCRhLT5mbGFncyk/NjM6MCk7cmV0dXJuJGE7fX19JG5hPWFycmF5KCk7JG5hWyJzcWxpdGUiXT0iU1FMaXRlIDMiOyRuYVsic3FsaXRlMiJdPSJTUUxpdGUgMiI7aWYoaXNzZXQoJF9HRVRbInNxbGl0ZSJdKXx8aXNzZXQoJF9HRVRbInNxbGl0ZTIiXSkpeyRvYz1hcnJheSgoaXNzZXQoJF9HRVRbInNxbGl0ZSJdKT8iU1FMaXRlMyI6IlNRTGl0ZSIpLCJQRE9fU1FMaXRlIik7ZGVmaW5lKCJEUklWRVIiLChpc3NldCgkX0dFVFsic3FsaXRlIl0pPyJzcWxpdGUiOiJzcWxpdGUyIikpO2lmKGV4dGVuc2lvbl9sb2FkZWQoaXNzZXQoJF9HRVRbInNxbGl0ZSJdKT8ic3FsaXRlMyI6InNxbGl0ZSIpKXtpZihpc3NldCgkX0dFVFsic3FsaXRlIl0pKXtjbGFzcwpNaW5fU1FMaXRle3ZhciRleHRlbnNpb249IlNRTGl0ZTMiLCRzZXJ2ZXJfaW5mbywkYWZmZWN0ZWRfcm93cywkZXJyb3IsJF9saW5rO2Z1bmN0aW9uCk1pbl9TUUxpdGUoJGphKXskdGhpcy0+X2xpbms9bmV3ClNRTGl0ZTMoJGphKTskS2Q9JHRoaXMtPl9saW5rLT52ZXJzaW9uKCk7JHRoaXMtPnNlcnZlcl9pbmZvPSRLZFsidmVyc2lvblN0cmluZyJdO31mdW5jdGlvbgpxdWVyeSgkail7JGk9QCR0aGlzLT5fbGluay0+cXVlcnkoJGopO2lmKCEkaSl7JHRoaXMtPmVycm9yPSR0aGlzLT5fbGluay0+bGFzdEVycm9yTXNnKCk7cmV0dXJuCmZhbHNlO31lbHNlaWYoJGktPm51bUNvbHVtbnMoKSl7cmV0dXJuCm5ldwpNaW5fUmVzdWx0KCRpKTt9JHRoaXMtPmFmZmVjdGVkX3Jvd3M9JHRoaXMtPl9saW5rLT5jaGFuZ2VzKCk7cmV0dXJuCnRydWU7fWZ1bmN0aW9uCnF1b3RlKCRJKXtyZXR1cm4iJyIuJHRoaXMtPl9saW5rLT5lc2NhcGVTdHJpbmcoJEkpLiInIjt9ZnVuY3Rpb24Kc3RvcmVfcmVzdWx0KCl7cmV0dXJuJHRoaXMtPl9yZXN1bHQ7fWZ1bmN0aW9uCnJlc3VsdCgkaiwkZT0wKXskaT0kdGhpcy0+cXVlcnkoJGopO2lmKCFpc19vYmplY3QoJGkpKXtyZXR1cm4KZmFsc2U7fSRhPSRpLT5fcmVzdWx0LT5mZXRjaEFycmF5KCk7cmV0dXJuJGFbJGVdO319Y2xhc3MKTWluX1Jlc3VsdHt2YXIkX3Jlc3VsdCwkX29mZnNldD0wLCRudW1fcm93cztmdW5jdGlvbgpNaW5fUmVzdWx0KCRpKXskdGhpcy0+X3Jlc3VsdD0kaTt9ZnVuY3Rpb24KZmV0Y2hfYXNzb2MoKXtyZXR1cm4kdGhpcy0+X3Jlc3VsdC0+ZmV0Y2hBcnJheShTUUxJVEUzX0FTU09DKTt9ZnVuY3Rpb24KZmV0Y2hfcm93KCl7cmV0dXJuJHRoaXMtPl9yZXN1bHQtPmZldGNoQXJyYXkoU1FMSVRFM19OVU0pO31mdW5jdGlvbgpmZXRjaF9maWVsZCgpeyRDPSR0aGlzLT5fb2Zmc2V0Kys7JHo9JHRoaXMtPl9yZXN1bHQtPmNvbHVtblR5cGUoJEMpO3JldHVybihvYmplY3QpYXJyYXkoIm5hbWUiPT4kdGhpcy0+X3Jlc3VsdC0+Y29sdW1uTmFtZSgkQyksInR5cGUiPT4keiwiY2hhcnNldG5yIj0+KCR6PT1TUUxJVEUzX0JMT0I/NjM6MCksKTt9ZnVuY3Rpb24KX19kZXNjdHJ1Y3QoKXtyZXR1cm4kdGhpcy0+X3Jlc3VsdC0+ZmluYWxpemUoKTt9fX1lbHNle2NsYXNzCk1pbl9TUUxpdGV7dmFyJGV4dGVuc2lvbj0iU1FMaXRlIiwkc2VydmVyX2luZm8sJGFmZmVjdGVkX3Jvd3MsJGVycm9yLCRfbGluaztmdW5jdGlvbgpNaW5fU1FMaXRlKCRqYSl7JHRoaXMtPnNlcnZlcl9pbmZvPXNxbGl0ZV9saWJ2ZXJzaW9uKCk7JHRoaXMtPl9saW5rPW5ldwpTUUxpdGVEYXRhYmFzZSgkamEpO31mdW5jdGlvbgpxdWVyeSgkaiwkZGI9ZmFsc2UpeyRxZj0oJGRiPyJ1bmJ1ZmZlcmVkUXVlcnkiOiJxdWVyeSIpOyRpPUAkdGhpcy0+X2xpbmstPiRxZigkaixTUUxJVEVfQk9USCwkbik7aWYoISRpKXskdGhpcy0+ZXJyb3I9JG47cmV0dXJuCmZhbHNlO31lbHNlaWYoJGk9PT10cnVlKXskdGhpcy0+YWZmZWN0ZWRfcm93cz0kdGhpcy0+Y2hhbmdlcygpO3JldHVybgp0cnVlO31yZXR1cm4KbmV3Ck1pbl9SZXN1bHQoJGkpO31mdW5jdGlvbgpxdW90ZSgkSSl7cmV0dXJuIiciLnNxbGl0ZV9lc2NhcGVfc3RyaW5nKCRJKS4iJyI7fWZ1bmN0aW9uCnN0b3JlX3Jlc3VsdCgpe3JldHVybiR0aGlzLT5fcmVzdWx0O31mdW5jdGlvbgpyZXN1bHQoJGosJGU9MCl7JGk9JHRoaXMtPnF1ZXJ5KCRqKTtpZighaXNfb2JqZWN0KCRpKSl7cmV0dXJuCmZhbHNlO30kYT0kaS0+X3Jlc3VsdC0+ZmV0Y2goKTtyZXR1cm4kYVskZV07fX1jbGFzcwpNaW5fUmVzdWx0e3ZhciRfcmVzdWx0LCRfb2Zmc2V0PTAsJG51bV9yb3dzO2Z1bmN0aW9uCk1pbl9SZXN1bHQoJGkpeyR0aGlzLT5fcmVzdWx0PSRpO2lmKG1ldGhvZF9leGlzdHMoJGksJ251bVJvd3MnKSl7JHRoaXMtPm51bV9yb3dzPSRpLT5udW1Sb3dzKCk7fX1mdW5jdGlvbgpmZXRjaF9hc3NvYygpeyRhPSR0aGlzLT5fcmVzdWx0LT5mZXRjaChTUUxJVEVfQVNTT0MpO2lmKCEkYSl7cmV0dXJuCmZhbHNlO30kYz1hcnJheSgpO2ZvcmVhY2goJGEKYXMkZD0+JGIpeyRjWygkZFswXT09JyInP2lkZl91bmVzY2FwZSgkZCk6JGQpXT0kYjt9cmV0dXJuJGM7fWZ1bmN0aW9uCmZldGNoX3Jvdygpe3JldHVybiR0aGlzLT5fcmVzdWx0LT5mZXRjaChTUUxJVEVfTlVNKTt9ZnVuY3Rpb24KZmV0Y2hfZmllbGQoKXskZj0kdGhpcy0+X3Jlc3VsdC0+ZmllbGROYW1lKCR0aGlzLT5fb2Zmc2V0KyspOyRiYT0nKFxcWy4qXXwiKD86W14iXXwiIikqInwoLispKSc7aWYocHJlZ19tYXRjaCgifl4oJGJhXFwuKT8kYmFcJH4iLCRmLCRrKSl7JGg9KCRrWzNdIT0iIj8ka1szXTppZGZfdW5lc2NhcGUoJGtbMl0pKTskZj0oJGtbNV0hPSIiPyRrWzVdOmlkZl91bmVzY2FwZSgka1s0XSkpO31yZXR1cm4ob2JqZWN0KWFycmF5KCJuYW1lIj0+JGYsIm9yZ25hbWUiPT4kZiwib3JndGFibGUiPT4kaCwpO319fX1lbHNlaWYoZXh0ZW5zaW9uX2xvYWRlZCgicGRvX3NxbGl0ZSIpKXtjbGFzcwpNaW5fU1FMaXRlCmV4dGVuZHMKTWluX1BET3t2YXIkZXh0ZW5zaW9uPSJQRE9fU1FMaXRlIjtmdW5jdGlvbgpNaW5fU1FMaXRlKCRqYSl7JHRoaXMtPmRzbihEUklWRVIuIjokamEiLCIiLCIiKTt9fX1pZihjbGFzc19leGlzdHMoIk1pbl9TUUxpdGUiKSl7Y2xhc3MKTWluX0RCCmV4dGVuZHMKTWluX1NRTGl0ZXtmdW5jdGlvbgpNaW5fREIoKXskdGhpcy0+TWluX1NRTGl0ZSgiOm1lbW9yeToiKTt9ZnVuY3Rpb24Kc2VsZWN0X2RiKCRqYSl7aWYoaXNfcmVhZGFibGUoJGphKSYmJHRoaXMtPnF1ZXJ5KCJBVFRBQ0ggIi4kdGhpcy0+cXVvdGUoZXJlZygiKF5bL1xcXXw6KSIsJGphKT8kamE6ZGlybmFtZSgkX1NFUlZFUlsiU0NSSVBUX0ZJTEVOQU1FIl0pLiIvJGphIikuIiBBUyBhIikpeyR0aGlzLT5NaW5fU1FMaXRlKCRqYSk7cmV0dXJuCnRydWU7fXJldHVybgpmYWxzZTt9ZnVuY3Rpb24KbXVsdGlfcXVlcnkoJGope3JldHVybiR0aGlzLT5fcmVzdWx0PSR0aGlzLT5xdWVyeSgkaik7fWZ1bmN0aW9uCm5leHRfcmVzdWx0KCl7cmV0dXJuCmZhbHNlO319fWZ1bmN0aW9uCmlkZl9lc2NhcGUoJE4pe3JldHVybiciJy5zdHJfcmVwbGFjZSgnIicsJyIiJywkTikuJyInO31mdW5jdGlvbgp0YWJsZSgkTil7cmV0dXJuCmlkZl9lc2NhcGUoJE4pO31mdW5jdGlvbgpjb25uZWN0KCl7cmV0dXJuCm5ldwpNaW5fREI7fWZ1bmN0aW9uCmdldF9kYXRhYmFzZXMoKXtyZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24KbGltaXQoJGosJHMsJE8sJEw9MCwkV2E9IiAiKXtyZXR1cm4iICRqJHMiLihpc3NldCgkTyk/JFdhLiJMSU1JVCAkTyIuKCRMPyIgT0ZGU0VUICRMIjoiIik6IiIpO31mdW5jdGlvbgpsaW1pdDEoJGosJHMpe2dsb2JhbCRnO3JldHVybigkZy0+cmVzdWx0KCJTRUxFQ1Qgc3FsaXRlX2NvbXBpbGVvcHRpb25fdXNlZCgnRU5BQkxFX1VQREFURV9ERUxFVEVfTElNSVQnKSIpP2xpbWl0KCRqLCRzLDEpOiIgJGokcyIpO31mdW5jdGlvbgpkYl9jb2xsYXRpb24oJHQsJFope2dsb2JhbCRnO3JldHVybiRnLT5yZXN1bHQoIlBSQUdNQSBlbmNvZGluZyIpO31mdW5jdGlvbgplbmdpbmVzKCl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCmxvZ2dlZF91c2VyKCl7cmV0dXJuCmdldF9jdXJyZW50X3VzZXIoKTt9ZnVuY3Rpb24KdGFibGVzX2xpc3QoKXtyZXR1cm4KZ2V0X2tleV92YWxzKCJTRUxFQ1QgbmFtZSwgdHlwZSBGUk9NIHNxbGl0ZV9tYXN0ZXIgV0hFUkUgdHlwZSBJTiAoJ3RhYmxlJywgJ3ZpZXcnKSBPUkRFUiBCWSAobmFtZSA9ICdzcWxpdGVfc2VxdWVuY2UnKSwgbmFtZSIsMSk7fWZ1bmN0aW9uCmNvdW50X3RhYmxlcygkXyl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCnRhYmxlX3N0YXR1cygkZj0iIil7JGM9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJTRUxFQ1QgbmFtZSBBUyBOYW1lLCB0eXBlIEFTIEVuZ2luZSBGUk9NIHNxbGl0ZV9tYXN0ZXIgV0hFUkUgdHlwZSBJTiAoJ3RhYmxlJywgJ3ZpZXcnKSIuKCRmIT0iIj8iIEFORCBuYW1lID0gIi5xKCRmKToiIikpYXMkYSl7JGFbIkF1dG9faW5jcmVtZW50Il09IiI7JGNbJGFbIk5hbWUiXV09JGE7fWZvcmVhY2goZ2V0X3Jvd3MoIlNFTEVDVCAqIEZST00gc3FsaXRlX3NlcXVlbmNlIixudWxsLCIiKWFzJGEpeyRjWyRhWyJuYW1lIl1dWyJBdXRvX2luY3JlbWVudCJdPSRhWyJzZXEiXTt9cmV0dXJuKCRmIT0iIj8kY1skZl06JGMpO31mdW5jdGlvbgppc192aWV3KCREKXtyZXR1cm4kRFsiRW5naW5lIl09PSJ2aWV3Ijt9ZnVuY3Rpb24KZmtfc3VwcG9ydCgkRCl7Z2xvYmFsJGc7cmV0dXJuISRnLT5yZXN1bHQoIlNFTEVDVCBzcWxpdGVfY29tcGlsZW9wdGlvbl91c2VkKCdPTUlUX0ZPUkVJR05fS0VZJykiKTt9ZnVuY3Rpb24KZmllbGRzKCRoKXskYz1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIlBSQUdNQSB0YWJsZV9pbmZvKCIudGFibGUoJGgpLiIpIilhcyRhKXskej1zdHJ0b2xvd2VyKCRhWyJ0eXBlIl0pOyR6YT0kYVsiZGZsdF92YWx1ZSJdOyRjWyRhWyJuYW1lIl1dPWFycmF5KCJmaWVsZCI9PiRhWyJuYW1lIl0sInR5cGUiPT4oZXJlZ2koImludCIsJHopPyJpbnRlZ2VyIjooZXJlZ2koImNoYXJ8Y2xvYnx0ZXh0Iiwkeik/InRleHQiOihlcmVnaSgiYmxvYiIsJHopPyJibG9iIjooZXJlZ2koInJlYWx8ZmxvYXxkb3ViIiwkeik/InJlYWwiOiJudW1lcmljIikpKSksImZ1bGxfdHlwZSI9PiR6LCJkZWZhdWx0Ij0+KGVyZWcoIicoLiopJyIsJHphLCRrKT9zdHJfcmVwbGFjZSgiJyciLCInIiwka1sxXSk6KCR6YT09Ik5VTEwiP251bGw6JHphKSksIm51bGwiPT4hJGFbIm5vdG51bGwiXSwiYXV0b19pbmNyZW1lbnQiPT5lcmVnaSgnXmludGVnZXIkJywkeikmJiRhWyJwayJdLCJwcml2aWxlZ2VzIj0+YXJyYXkoInNlbGVjdCI9PjEsImluc2VydCI9PjEsInVwZGF0ZSI9PjEpLCJwcmltYXJ5Ij0+JGFbInBrIl0sKTt9cmV0dXJuJGM7fWZ1bmN0aW9uCmluZGV4ZXMoJGgsJEc9bnVsbCl7JGM9YXJyYXkoKTskUWE9YXJyYXkoKTtmb3JlYWNoKGZpZWxkcygkaClhcyRlKXtpZigkZVsicHJpbWFyeSJdKXskUWFbXT0kZVsiZmllbGQiXTt9fWlmKCRRYSl7JGNbIiJdPWFycmF5KCJ0eXBlIj0+IlBSSU1BUlkiLCJjb2x1bW5zIj0+JFFhLCJsZW5ndGhzIj0+YXJyYXkoKSk7fWZvcmVhY2goZ2V0X3Jvd3MoIlBSQUdNQSBpbmRleF9saXN0KCIudGFibGUoJGgpLiIpIilhcyRhKXskY1skYVsibmFtZSJdXVsidHlwZSJdPSgkYVsidW5pcXVlIl0/IlVOSVFVRSI6IklOREVYIik7JGNbJGFbIm5hbWUiXV1bImxlbmd0aHMiXT1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIlBSQUdNQSBpbmRleF9pbmZvKCIuaWRmX2VzY2FwZSgkYVsibmFtZSJdKS4iKSIpYXMkZGQpeyRjWyRhWyJuYW1lIl1dWyJjb2x1bW5zIl1bXT0kZGRbIm5hbWUiXTt9fXJldHVybiRjO31mdW5jdGlvbgpmb3JlaWduX2tleXMoJGgpeyRjPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiUFJBR01BIGZvcmVpZ25fa2V5X2xpc3QoIi50YWJsZSgkaCkuIikiKWFzJGEpeyRBPSYkY1skYVsiaWQiXV07aWYoISRBKXskQT0kYTt9JEFbInNvdXJjZSJdW109JGFbImZyb20iXTskQVsidGFyZ2V0Il1bXT0kYVsidG8iXTt9cmV0dXJuJGM7fWZ1bmN0aW9uCnZpZXcoJGYpe2dsb2JhbCRnO3JldHVybgphcnJheSgic2VsZWN0Ij0+cHJlZ19yZXBsYWNlKCd+Xig/OlteYCJbXSt8YFteYF0qYHwiW14iXSoiKSogQVNcXHMrfmlVJywnJywkZy0+cmVzdWx0KCJTRUxFQ1Qgc3FsIEZST00gc3FsaXRlX21hc3RlciBXSEVSRSBuYW1lID0gIi5xKCRmKSkpKTt9ZnVuY3Rpb24KY29sbGF0aW9ucygpe3JldHVybihpc3NldCgkX0dFVFsiY3JlYXRlIl0pP2dldF92YWxzKCJQUkFHTUEgY29sbGF0aW9uX2xpc3QiLDEpOmFycmF5KCkpO31mdW5jdGlvbgppbmZvcm1hdGlvbl9zY2hlbWEoJHQpe3JldHVybgpmYWxzZTt9ZnVuY3Rpb24KZXJyb3IoKXtnbG9iYWwkZztyZXR1cm4KaCgkZy0+ZXJyb3IpO31mdW5jdGlvbgpleGFjdF92YWx1ZSgkYil7cmV0dXJuCnEoJGIpO31mdW5jdGlvbgpjaGVja19zcWxpdGVfbmFtZSgkZil7Z2xvYmFsJGc7JFJlPSJkYnxzZGJ8c3FsaXRlIjtpZighcHJlZ19tYXRjaCgifl5bXlxcMF0qXFwuKCRSZSlcJH4iLCRmKSl7JGctPmVycm9yPWxhbmcoOSxzdHJfcmVwbGFjZSgifCIsIiwgIiwkUmUpKTtyZXR1cm4KZmFsc2U7fXJldHVybgp0cnVlO31mdW5jdGlvbgpjcmVhdGVfZGF0YWJhc2UoJHQsJFUpe2dsb2JhbCRnO2lmKGZpbGVfZXhpc3RzKCR0KSl7JGctPmVycm9yPWxhbmcoMTApO3JldHVybgpmYWxzZTt9aWYoIWNoZWNrX3NxbGl0ZV9uYW1lKCR0KSl7cmV0dXJuCmZhbHNlO30kdz1uZXcKTWluX1NRTGl0ZSgkdCk7JHctPnF1ZXJ5KCdQUkFHTUEgZW5jb2RpbmcgPSAiVVRGLTgiJyk7JHctPnF1ZXJ5KCdDUkVBVEUgVEFCTEUgYWRtaW5lciAoaSknKTskdy0+cXVlcnkoJ0RST1AgVEFCTEUgYWRtaW5lcicpO3JldHVybgp0cnVlO31mdW5jdGlvbgpkcm9wX2RhdGFiYXNlcygkXyl7Z2xvYmFsJGc7JGctPk1pbl9TUUxpdGUoIjptZW1vcnk6Iik7Zm9yZWFjaCgkXwphcyR0KXtpZighQHVubGluaygkdCkpeyRnLT5lcnJvcj1sYW5nKDEwKTtyZXR1cm4KZmFsc2U7fX1yZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KcmVuYW1lX2RhdGFiYXNlKCRmLCRVKXtnbG9iYWwkZztpZighY2hlY2tfc3FsaXRlX25hbWUoJGYpKXtyZXR1cm4KZmFsc2U7fSRnLT5NaW5fU1FMaXRlKCI6bWVtb3J5OiIpOyRnLT5lcnJvcj1sYW5nKDEwKTtyZXR1cm5AcmVuYW1lKERCLCRmKTt9ZnVuY3Rpb24KYXV0b19pbmNyZW1lbnQoKXtyZXR1cm4iIFBSSU1BUlkgS0VZIi4oRFJJVkVSPT0ic3FsaXRlIj8iIEFVVE9JTkNSRU1FTlQiOiIiKTt9ZnVuY3Rpb24KYWx0ZXJfdGFibGUoJGgsJGYsJHAsJE9hLCRfYSwkeWIsJFUsJFNhLCR2Yil7JHU9YXJyYXkoKTtmb3JlYWNoKCRwCmFzJGUpe2lmKCRlWzFdKXskdVtdPSgkaCE9IiImJiRlWzBdPT0iIj8iQUREICI6IiAgIikuaW1wbG9kZSgkZVsxXSk7fX0kdT1hcnJheV9tZXJnZSgkdSwkT2EpO2lmKCRoIT0iIil7Zm9yZWFjaCgkdQphcyRiKXtpZighcXVlcmllcygiQUxURVIgVEFCTEUgIi50YWJsZSgkaCkuIiAkYiIpKXtyZXR1cm4KZmFsc2U7fX1pZigkaCE9JGYmJiFxdWVyaWVzKCJBTFRFUiBUQUJMRSAiLnRhYmxlKCRoKS4iIFJFTkFNRSBUTyAiLnRhYmxlKCRmKSkpe3JldHVybgpmYWxzZTt9fWVsc2VpZighcXVlcmllcygiQ1JFQVRFIFRBQkxFICIudGFibGUoJGYpLiIgKFxuIi5pbXBsb2RlKCIsXG4iLCR1KS4iXG4pIikpe3JldHVybgpmYWxzZTt9aWYoJFNhKXtxdWVyaWVzKCJVUERBVEUgc3FsaXRlX3NlcXVlbmNlIFNFVCBzZXEgPSAkU2EgV0hFUkUgbmFtZSA9ICIucSgkZikpO31yZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KYWx0ZXJfaW5kZXhlcygkaCwkdSl7Zm9yZWFjaCgkdQphcyRiKXtpZighcXVlcmllcygoJGJbMl0/IkRST1AgSU5ERVgiOiJDUkVBVEUiLigkYlswXSE9IklOREVYIj8iIFVOSVFVRSI6IiIpLiIgSU5ERVggIi5pZGZfZXNjYXBlKHVuaXFpZCgkaC4iXyIpKS4iIE9OICIudGFibGUoJGgpKS4iICRiWzFdIikpe3JldHVybgpmYWxzZTt9fXJldHVybgp0cnVlO31mdW5jdGlvbgp0cnVuY2F0ZV90YWJsZXMoJEUpe3JldHVybgphcHBseV9xdWVyaWVzKCJERUxFVEUgRlJPTSIsJEUpO31mdW5jdGlvbgpkcm9wX3ZpZXdzKCRYKXtyZXR1cm4KYXBwbHlfcXVlcmllcygiRFJPUCBWSUVXIiwkWCk7fWZ1bmN0aW9uCmRyb3BfdGFibGVzKCRFKXtyZXR1cm4KYXBwbHlfcXVlcmllcygiRFJPUCBUQUJMRSIsJEUpO31mdW5jdGlvbgptb3ZlX3RhYmxlcygkRSwkWCwkZWEpe3JldHVybgpmYWxzZTt9ZnVuY3Rpb24KdHJpZ2dlcigkZil7Z2xvYmFsJGc7cHJlZ19tYXRjaCgnfl5DUkVBVEVcXHMrVFJJR0dFUlxccyooPzpbXmAiXFxzXSt8YFteYF0qYHwiW14iXSoiKStcXHMqKFthLXpdKylcXHMrKFthLXpdKylcXHMrT05cXHMqKD86W15gIlxcc10rfGBbXmBdKmB8IlteIl0qIikrXFxzKig/OkZPUlxccypFQUNIXFxzKlJPV1xccyk/KC4qKX5pcycsJGctPnJlc3VsdCgiU0VMRUNUIHNxbCBGUk9NIHNxbGl0ZV9tYXN0ZXIgV0hFUkUgbmFtZSA9ICIucSgkZikpLCRrKTtyZXR1cm4KYXJyYXkoIlRpbWluZyI9PnN0cnRvdXBwZXIoJGtbMV0pLCJFdmVudCI9PnN0cnRvdXBwZXIoJGtbMl0pLCJUcmlnZ2VyIj0+JGYsIlN0YXRlbWVudCI9PiRrWzNdKTt9ZnVuY3Rpb24KdHJpZ2dlcnMoJGgpeyRjPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiU0VMRUNUICogRlJPTSBzcWxpdGVfbWFzdGVyIFdIRVJFIHR5cGUgPSAndHJpZ2dlcicgQU5EIHRibF9uYW1lID0gIi5xKCRoKSlhcyRhKXtwcmVnX21hdGNoKCd+XkNSRUFURVxccytUUklHR0VSXFxzKig/OlteYCJcXHNdK3xgW15gXSpgfCJbXiJdKiIpK1xccyooW2Etel0rKVxccyooW2Etel0rKX5pJywkYVsic3FsIl0sJGspOyRjWyRhWyJuYW1lIl1dPWFycmF5KCRrWzFdLCRrWzJdKTt9cmV0dXJuJGM7fWZ1bmN0aW9uCnRyaWdnZXJfb3B0aW9ucygpe3JldHVybgphcnJheSgiVGltaW5nIj0+YXJyYXkoIkJFRk9SRSIsIkFGVEVSIiwiSU5TVEVBRCBPRiIpLCJUeXBlIj0+YXJyYXkoIkZPUiBFQUNIIFJPVyIpLCk7fWZ1bmN0aW9uCnJvdXRpbmUoJGYsJHope31mdW5jdGlvbgpyb3V0aW5lcygpe31mdW5jdGlvbgpiZWdpbigpe3JldHVybgpxdWVyaWVzKCJCRUdJTiIpO31mdW5jdGlvbgppbnNlcnRfaW50bygkaCwkcil7cmV0dXJuCnF1ZXJpZXMoIklOU0VSVCBJTlRPICIudGFibGUoJGgpLigkcj8iICgiLmltcGxvZGUoIiwgIixhcnJheV9rZXlzKCRyKSkuIilcblZBTFVFUyAoIi5pbXBsb2RlKCIsICIsJHIpLiIpIjoiREVGQVVMVCBWQUxVRVMiKSk7fWZ1bmN0aW9uCmluc2VydF91cGRhdGUoJGgsJHIsJFFhKXtyZXR1cm4KcXVlcmllcygiUkVQTEFDRSBJTlRPICIudGFibGUoJGgpLiIgKCIuaW1wbG9kZSgiLCAiLGFycmF5X2tleXMoJHIpKS4iKSBWQUxVRVMgKCIuaW1wbG9kZSgiLCAiLCRyKS4iKSIpO31mdW5jdGlvbgpsYXN0X2lkKCl7Z2xvYmFsJGc7cmV0dXJuJGctPnJlc3VsdCgiU0VMRUNUIExBU1RfSU5TRVJUX1JPV0lEKCkiKTt9ZnVuY3Rpb24KZXhwbGFpbigkZywkail7cmV0dXJuJGctPnF1ZXJ5KCJFWFBMQUlOICRqIik7fWZ1bmN0aW9uCnR5cGVzKCl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCnNjaGVtYXMoKXtyZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24KZ2V0X3NjaGVtYSgpe3JldHVybiIiO31mdW5jdGlvbgpzZXRfc2NoZW1hKCRFZCl7cmV0dXJuCnRydWU7fWZ1bmN0aW9uCmNyZWF0ZV9zcWwoJGgsJFNhKXtnbG9iYWwkZztyZXR1cm4kZy0+cmVzdWx0KCJTRUxFQ1Qgc3FsIEZST00gc3FsaXRlX21hc3RlciBXSEVSRSB0eXBlID0gJ3RhYmxlJyBBTkQgbmFtZSA9ICIucSgkaCkpO31mdW5jdGlvbgp0cnVuY2F0ZV9zcWwoJGgpe3JldHVybiJERUxFVEUgRlJPTSAiLnRhYmxlKCRoKTt9ZnVuY3Rpb24KdXNlX3NxbCgkaWEpe31mdW5jdGlvbgp0cmlnZ2VyX3NxbCgkaCwkVil7cmV0dXJuCmltcGxvZGUoZ2V0X3ZhbHMoIlNFTEVDVCBzcWwgfHwgJzs7XG4nIEZST00gc3FsaXRlX21hc3RlciBXSEVSRSB0eXBlID0gJ3RyaWdnZXInIEFORCBuYW1lID0gIi5xKCRoKSkpO31mdW5jdGlvbgpzaG93X3ZhcmlhYmxlcygpe2dsb2JhbCRnOyRjPWFycmF5KCk7Zm9yZWFjaChhcnJheSgiYXV0b192YWN1dW0iLCJjYWNoZV9zaXplIiwiY291bnRfY2hhbmdlcyIsImRlZmF1bHRfY2FjaGVfc2l6ZSIsImVtcHR5X3Jlc3VsdF9jYWxsYmFja3MiLCJlbmNvZGluZyIsImZvcmVpZ25fa2V5cyIsImZ1bGxfY29sdW1uX25hbWVzIiwiZnVsbGZzeW5jIiwiam91cm5hbF9tb2RlIiwiam91cm5hbF9zaXplX2xpbWl0IiwibGVnYWN5X2ZpbGVfZm9ybWF0IiwibG9ja2luZ19tb2RlIiwicGFnZV9zaXplIiwibWF4X3BhZ2VfY291bnQiLCJyZWFkX3VuY29tbWl0dGVkIiwicmVjdXJzaXZlX3RyaWdnZXJzIiwicmV2ZXJzZV91bm9yZGVyZWRfc2VsZWN0cyIsInNlY3VyZV9kZWxldGUiLCJzaG9ydF9jb2x1bW5fbmFtZXMiLCJzeW5jaHJvbm91cyIsInRlbXBfc3RvcmUiLCJ0ZW1wX3N0b3JlX2RpcmVjdG9yeSIsInNjaGVtYV92ZXJzaW9uIiwiaW50ZWdyaXR5X2NoZWNrIiwicXVpY2tfY2hlY2siKWFzJGQpeyRjWyRkXT0kZy0+cmVzdWx0KCJQUkFHTUEgJGQiKTt9cmV0dXJuJGM7fWZ1bmN0aW9uCnNob3dfc3RhdHVzKCl7JGM9YXJyYXkoKTtmb3JlYWNoKGdldF92YWxzKCJQUkFHTUEgY29tcGlsZV9vcHRpb25zIilhcyRzZil7bGlzdCgkZCwkYik9ZXhwbG9kZSgiPSIsJHNmLDIpOyRjWyRkXT0kYjt9cmV0dXJuJGM7fWZ1bmN0aW9uCnN1cHBvcnQoJHJiKXtyZXR1cm4KZXJlZygnXih2aWV3fHRyaWdnZXJ8dmFyaWFibGVzfHN0YXR1c3xkdW1wKSQnLCRyYik7fSR2PSJzcWxpdGUiOyRSPWFycmF5KCJpbnRlZ2VyIj0+MCwicmVhbCI9PjAsIm51bWVyaWMiPT4wLCJ0ZXh0Ij0+MCwiYmxvYiI9PjApOyRMYT1hcnJheV9rZXlzKCRSKTskb2I9YXJyYXkoKTskZ2M9YXJyYXkoIj0iLCI8IiwiPiIsIjw9IiwiPj0iLCIhPSIsIkxJS0UiLCJMSUtFICUlIiwiSU4iLCJJUyBOVUxMIiwiTk9UIExJS0UiLCJOT1QgSU4iLCJJUyBOT1QgTlVMTCIsIiIpOyRkYT1hcnJheSgiaGV4IiwibGVuZ3RoIiwibG93ZXIiLCJyb3VuZCIsInVuaXhlcG9jaCIsInVwcGVyIik7JGxiPWFycmF5KCJhdmciLCJjb3VudCIsImNvdW50IGRpc3RpbmN0IiwiZ3JvdXBfY29uY2F0IiwibWF4IiwibWluIiwic3VtIik7JE5iPWFycmF5KGFycmF5KCksYXJyYXkoImludGVnZXJ8cmVhbHxudW1lcmljIj0+IisvLSIsInRleHQiPT4ifHwiLCkpO30kbmFbInBnc3FsIl09IlBvc3RncmVTUUwiO2lmKGlzc2V0KCRfR0VUWyJwZ3NxbCJdKSl7JG9jPWFycmF5KCJQZ1NRTCIsIlBET19QZ1NRTCIpO2RlZmluZSgiRFJJVkVSIiwicGdzcWwiKTtpZihleHRlbnNpb25fbG9hZGVkKCJwZ3NxbCIpKXtjbGFzcwpNaW5fREJ7dmFyJGV4dGVuc2lvbj0iUGdTUUwiLCRfbGluaywkX3Jlc3VsdCwkX3N0cmluZywkX2RhdGFiYXNlPXRydWUsJHNlcnZlcl9pbmZvLCRhZmZlY3RlZF9yb3dzLCRlcnJvcjtmdW5jdGlvbgpfZXJyb3IoJG1mLCRuKXtpZihpbmlfYm9vbCgiaHRtbF9lcnJvcnMiKSl7JG49aHRtbF9lbnRpdHlfZGVjb2RlKHN0cmlwX3RhZ3MoJG4pKTt9JG49ZXJlZ19yZXBsYWNlKCdeW146XSo6ICcsJycsJG4pOyR0aGlzLT5lcnJvcj0kbjt9ZnVuY3Rpb24KY29ubmVjdCgkRiwkUCwkVCl7c2V0X2Vycm9yX2hhbmRsZXIoYXJyYXkoJHRoaXMsJ19lcnJvcicpKTskdGhpcy0+X3N0cmluZz0iaG9zdD0nIi5zdHJfcmVwbGFjZSgiOiIsIicgcG9ydD0nIixhZGRjc2xhc2hlcygkRiwiJ1xcIikpLiInIHVzZXI9JyIuYWRkY3NsYXNoZXMoJFAsIidcXCIpLiInIHBhc3N3b3JkPSciLmFkZGNzbGFzaGVzKCRULCInXFwiKS4iJyI7JHRoaXMtPl9saW5rPUBwZ19jb25uZWN0KCR0aGlzLT5fc3RyaW5nLihEQiE9IiI/IiBkYm5hbWU9JyIuYWRkY3NsYXNoZXMoREIsIidcXCIpLiInIjoiIGRibmFtZT0ndGVtcGxhdGUxJyIpLFBHU1FMX0NPTk5FQ1RfRk9SQ0VfTkVXKTtpZighJHRoaXMtPl9saW5rJiZEQiE9IiIpeyR0aGlzLT5fZGF0YWJhc2U9ZmFsc2U7JHRoaXMtPl9saW5rPUBwZ19jb25uZWN0KCIkdGhpcy0+X3N0cmluZyBkYm5hbWU9J3RlbXBsYXRlMSciLFBHU1FMX0NPTk5FQ1RfRk9SQ0VfTkVXKTt9cmVzdG9yZV9lcnJvcl9oYW5kbGVyKCk7aWYoJHRoaXMtPl9saW5rKXskS2Q9cGdfdmVyc2lvbigkdGhpcy0+X2xpbmspOyR0aGlzLT5zZXJ2ZXJfaW5mbz0kS2RbInNlcnZlciJdO3BnX3NldF9jbGllbnRfZW5jb2RpbmcoJHRoaXMtPl9saW5rLCJVVEY4Iik7fXJldHVybihib29sKSR0aGlzLT5fbGluazt9ZnVuY3Rpb24KcXVvdGUoJEkpe3JldHVybiInIi5wZ19lc2NhcGVfc3RyaW5nKCR0aGlzLT5fbGluaywkSSkuIiciO31mdW5jdGlvbgpzZWxlY3RfZGIoJGlhKXtpZigkaWE9PURCKXtyZXR1cm4kdGhpcy0+X2RhdGFiYXNlO30kYz1AcGdfY29ubmVjdCgiJHRoaXMtPl9zdHJpbmcgZGJuYW1lPSciLmFkZGNzbGFzaGVzKCRpYSwiJ1xcIikuIiciLFBHU1FMX0NPTk5FQ1RfRk9SQ0VfTkVXKTtpZigkYyl7JHRoaXMtPl9saW5rPSRjO31yZXR1cm4kYzt9ZnVuY3Rpb24KY2xvc2UoKXskdGhpcy0+X2xpbms9QHBnX2Nvbm5lY3QoIiR0aGlzLT5fc3RyaW5nIGRibmFtZT0ndGVtcGxhdGUxJyIpO31mdW5jdGlvbgpxdWVyeSgkaiwkZGI9ZmFsc2UpeyRpPUBwZ19xdWVyeSgkdGhpcy0+X2xpbmssJGopO2lmKCEkaSl7JHRoaXMtPmVycm9yPXBnX2xhc3RfZXJyb3IoJHRoaXMtPl9saW5rKTtyZXR1cm4KZmFsc2U7fWVsc2VpZighcGdfbnVtX2ZpZWxkcygkaSkpeyR0aGlzLT5hZmZlY3RlZF9yb3dzPXBnX2FmZmVjdGVkX3Jvd3MoJGkpO3JldHVybgp0cnVlO31yZXR1cm4KbmV3Ck1pbl9SZXN1bHQoJGkpO31mdW5jdGlvbgptdWx0aV9xdWVyeSgkail7cmV0dXJuJHRoaXMtPl9yZXN1bHQ9JHRoaXMtPnF1ZXJ5KCRqKTt9ZnVuY3Rpb24Kc3RvcmVfcmVzdWx0KCl7cmV0dXJuJHRoaXMtPl9yZXN1bHQ7fWZ1bmN0aW9uCm5leHRfcmVzdWx0KCl7cmV0dXJuCmZhbHNlO31mdW5jdGlvbgpyZXN1bHQoJGosJGU9MCl7JGk9JHRoaXMtPnF1ZXJ5KCRqKTtpZighJGl8fCEkaS0+bnVtX3Jvd3Mpe3JldHVybgpmYWxzZTt9cmV0dXJuCnBnX2ZldGNoX3Jlc3VsdCgkaS0+X3Jlc3VsdCwwLCRlKTt9fWNsYXNzCk1pbl9SZXN1bHR7dmFyJF9yZXN1bHQsJF9vZmZzZXQ9MCwkbnVtX3Jvd3M7ZnVuY3Rpb24KTWluX1Jlc3VsdCgkaSl7JHRoaXMtPl9yZXN1bHQ9JGk7JHRoaXMtPm51bV9yb3dzPXBnX251bV9yb3dzKCRpKTt9ZnVuY3Rpb24KZmV0Y2hfYXNzb2MoKXtyZXR1cm4KcGdfZmV0Y2hfYXNzb2MoJHRoaXMtPl9yZXN1bHQpO31mdW5jdGlvbgpmZXRjaF9yb3coKXtyZXR1cm4KcGdfZmV0Y2hfcm93KCR0aGlzLT5fcmVzdWx0KTt9ZnVuY3Rpb24KZmV0Y2hfZmllbGQoKXskQz0kdGhpcy0+X29mZnNldCsrOyRjPW5ldwpzdGRDbGFzcztpZihmdW5jdGlvbl9leGlzdHMoJ3BnX2ZpZWxkX3RhYmxlJykpeyRjLT5vcmd0YWJsZT1wZ19maWVsZF90YWJsZSgkdGhpcy0+X3Jlc3VsdCwkQyk7fSRjLT5uYW1lPXBnX2ZpZWxkX25hbWUoJHRoaXMtPl9yZXN1bHQsJEMpOyRjLT5vcmduYW1lPSRjLT5uYW1lOyRjLT50eXBlPXBnX2ZpZWxkX3R5cGUoJHRoaXMtPl9yZXN1bHQsJEMpOyRjLT5jaGFyc2V0bnI9KCRjLT50eXBlPT0iYnl0ZWEiPzYzOjApO3JldHVybiRjO31mdW5jdGlvbgpfX2Rlc3RydWN0KCl7cGdfZnJlZV9yZXN1bHQoJHRoaXMtPl9yZXN1bHQpO319fWVsc2VpZihleHRlbnNpb25fbG9hZGVkKCJwZG9fcGdzcWwiKSl7Y2xhc3MKTWluX0RCCmV4dGVuZHMKTWluX1BET3t2YXIkZXh0ZW5zaW9uPSJQRE9fUGdTUUwiO2Z1bmN0aW9uCmNvbm5lY3QoJEYsJFAsJFQpeyRJPSJwZ3NxbDpob3N0PSciLnN0cl9yZXBsYWNlKCI6IiwiJyBwb3J0PSciLGFkZGNzbGFzaGVzKCRGLCInXFwiKSkuIicgb3B0aW9ucz0nLWMgY2xpZW50X2VuY29kaW5nPXV0ZjgnIjskdGhpcy0+ZHNuKCRJLihEQiE9IiI/IiBkYm5hbWU9JyIuYWRkY3NsYXNoZXMoREIsIidcXCIpLiInIjoiIiksJFAsJFQpO3JldHVybgp0cnVlO31mdW5jdGlvbgpzZWxlY3RfZGIoJGlhKXtyZXR1cm4oREI9PSRpYSk7fWZ1bmN0aW9uCmNsb3NlKCl7fX19ZnVuY3Rpb24KaWRmX2VzY2FwZSgkTil7cmV0dXJuJyInLnN0cl9yZXBsYWNlKCciJywnIiInLCROKS4nIic7fWZ1bmN0aW9uCnRhYmxlKCROKXtyZXR1cm4KaWRmX2VzY2FwZSgkTik7fWZ1bmN0aW9uCmNvbm5lY3QoKXtnbG9iYWwkbzskZz1uZXcKTWluX0RCOyR5YT0kby0+Y3JlZGVudGlhbHMoKTtpZigkZy0+Y29ubmVjdCgkeWFbMF0sJHlhWzFdLCR5YVsyXSkpe3JldHVybiRnO31yZXR1cm4kZy0+ZXJyb3I7fWZ1bmN0aW9uCmdldF9kYXRhYmFzZXMoKXtyZXR1cm4KZ2V0X3ZhbHMoIlNFTEVDVCBkYXRuYW1lIEZST00gcGdfZGF0YWJhc2UiKTt9ZnVuY3Rpb24KbGltaXQoJGosJHMsJE8sJEw9MCwkV2E9IiAiKXtyZXR1cm4iICRqJHMiLihpc3NldCgkTyk/JFdhLiJMSU1JVCAkTyIuKCRMPyIgT0ZGU0VUICRMIjoiIik6IiIpO31mdW5jdGlvbgpsaW1pdDEoJGosJHMpe3JldHVybiIgJGokcyI7fWZ1bmN0aW9uCmRiX2NvbGxhdGlvbigkdCwkWil7Z2xvYmFsJGc7cmV0dXJuJGctPnJlc3VsdCgiU0hPVyBMQ19DT0xMQVRFIik7fWZ1bmN0aW9uCmVuZ2luZXMoKXtyZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24KbG9nZ2VkX3VzZXIoKXtnbG9iYWwkZztyZXR1cm4kZy0+cmVzdWx0KCJTRUxFQ1QgdXNlciIpO31mdW5jdGlvbgp0YWJsZXNfbGlzdCgpe3JldHVybgpnZXRfa2V5X3ZhbHMoIlNFTEVDVCB0YWJsZV9uYW1lLCB0YWJsZV90eXBlIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLnRhYmxlcyBXSEVSRSB0YWJsZV9zY2hlbWEgPSBjdXJyZW50X3NjaGVtYSgpIE9SREVSIEJZIHRhYmxlX25hbWUiKTt9ZnVuY3Rpb24KY291bnRfdGFibGVzKCRfKXtyZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24KdGFibGVfc3RhdHVzKCRmPSIiKXskYz1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIlNFTEVDVCByZWxuYW1lIEFTIFwiTmFtZVwiLCBDQVNFIHJlbGtpbmQgV0hFTiAncicgVEhFTiAnJyBFTFNFICd2aWV3JyBFTkQgQVMgXCJFbmdpbmVcIiwgcGdfcmVsYXRpb25fc2l6ZShvaWQpIEFTIFwiRGF0YV9sZW5ndGhcIiwgcGdfdG90YWxfcmVsYXRpb25fc2l6ZShvaWQpIC0gcGdfcmVsYXRpb25fc2l6ZShvaWQpIEFTIFwiSW5kZXhfbGVuZ3RoXCIsIG9ial9kZXNjcmlwdGlvbihvaWQsICdwZ19jbGFzcycpIEFTIFwiQ29tbWVudFwiLCByZWxoYXNvaWRzIEFTIFwiT2lkXCIKRlJPTSBwZ19jbGFzcwpXSEVSRSByZWxraW5kIElOICgncicsJ3YnKQpBTkQgcmVsbmFtZXNwYWNlID0gKFNFTEVDVCBvaWQgRlJPTSBwZ19uYW1lc3BhY2UgV0hFUkUgbnNwbmFtZSA9IGN1cnJlbnRfc2NoZW1hKCkpIi4oJGYhPSIiPyIgQU5EIHJlbG5hbWUgPSAiLnEoJGYpOiIiKSlhcyRhKXskY1skYVsiTmFtZSJdXT0kYTt9cmV0dXJuKCRmIT0iIj8kY1skZl06JGMpO31mdW5jdGlvbgppc192aWV3KCREKXtyZXR1cm4kRFsiRW5naW5lIl09PSJ2aWV3Ijt9ZnVuY3Rpb24KZmtfc3VwcG9ydCgkRCl7cmV0dXJuCnRydWU7fWZ1bmN0aW9uCmZpZWxkcygkaCl7JGM9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJTRUxFQ1QgYS5hdHRuYW1lIEFTIGZpZWxkLCBmb3JtYXRfdHlwZShhLmF0dHR5cGlkLCBhLmF0dHR5cG1vZCkgQVMgZnVsbF90eXBlLCBkLmFkc3JjIEFTIGRlZmF1bHQsIGEuYXR0bm90bnVsbCwgY29sX2Rlc2NyaXB0aW9uKGMub2lkLCBhLmF0dG51bSkgQVMgY29tbWVudApGUk9NIHBnX2NsYXNzIGMKSk9JTiBwZ19uYW1lc3BhY2UgbiBPTiBjLnJlbG5hbWVzcGFjZSA9IG4ub2lkCkpPSU4gcGdfYXR0cmlidXRlIGEgT04gYy5vaWQgPSBhLmF0dHJlbGlkCkxFRlQgSk9JTiBwZ19hdHRyZGVmIGQgT04gYy5vaWQgPSBkLmFkcmVsaWQgQU5EIGEuYXR0bnVtID0gZC5hZG51bQpXSEVSRSBjLnJlbG5hbWUgPSAiLnEoJGgpLiIKQU5EIG4ubnNwbmFtZSA9IGN1cnJlbnRfc2NoZW1hKCkKQU5EIE5PVCBhLmF0dGlzZHJvcHBlZApBTkQgYS5hdHRudW0gPiAwCk9SREVSIEJZIGEuYXR0bnVtIilhcyRhKXtlcmVnKCcoLiopKFxcKCguKilcXCkpPycsJGFbImZ1bGxfdHlwZSJdLCRrKTtsaXN0KCwkYVsidHlwZSJdLCwkYVsibGVuZ3RoIl0pPSRrOyRhWyJmdWxsX3R5cGUiXT0kYVsidHlwZSJdLigkYVsibGVuZ3RoIl0/IigkYVtsZW5ndGhdKSI6IiIpOyRhWyJudWxsIl09KCRhWyJhdHRub3RudWxsIl09PSJmIik7JGFbImF1dG9faW5jcmVtZW50Il09ZXJlZ2koIl5uZXh0dmFsXFwoIiwkYVsiZGVmYXVsdCJdKTskYVsicHJpdmlsZWdlcyJdPWFycmF5KCJpbnNlcnQiPT4xLCJzZWxlY3QiPT4xLCJ1cGRhdGUiPT4xKTskY1skYVsiZmllbGQiXV09JGE7fXJldHVybiRjO31mdW5jdGlvbgppbmRleGVzKCRoLCRHPW51bGwpe2dsb2JhbCRnO2lmKCFpc19vYmplY3QoJEcpKXskRz0kZzt9JGM9YXJyYXkoKTskYWY9JEctPnJlc3VsdCgiU0VMRUNUIG9pZCBGUk9NIHBnX2NsYXNzIFdIRVJFIHJlbG5hbWUgPSAiLnEoJGgpKTskQj1nZXRfa2V5X3ZhbHMoIlNFTEVDVCBhdHRudW0sIGF0dG5hbWUgRlJPTSBwZ19hdHRyaWJ1dGUgV0hFUkUgYXR0cmVsaWQgPSAkYWYgQU5EIGF0dG51bSA+IDAiLCRHKTtmb3JlYWNoKGdldF9yb3dzKCJTRUxFQ1QgcmVsbmFtZSwgaW5kaXN1bmlxdWUsIGluZGlzcHJpbWFyeSwgaW5ka2V5IEZST00gcGdfaW5kZXggaSwgcGdfY2xhc3MgY2kgV0hFUkUgaS5pbmRyZWxpZCA9ICRhZiBBTkQgY2kub2lkID0gaS5pbmRleHJlbGlkIiwkRylhcyRhKXskY1skYVsicmVsbmFtZSJdXVsidHlwZSJdPSgkYVsiaW5kaXNwcmltYXJ5Il09PSJ0Ij8iUFJJTUFSWSI6KCRhWyJpbmRpc3VuaXF1ZSJdPT0idCI/IlVOSVFVRSI6IklOREVYIikpOyRjWyRhWyJyZWxuYW1lIl1dWyJjb2x1bW5zIl09YXJyYXkoKTtmb3JlYWNoKGV4cGxvZGUoIiAiLCRhWyJpbmRrZXkiXSlhcyR5Zil7JGNbJGFbInJlbG5hbWUiXV1bImNvbHVtbnMiXVtdPSRCWyR5Zl07fSRjWyRhWyJyZWxuYW1lIl1dWyJsZW5ndGhzIl09YXJyYXkoKTt9cmV0dXJuJGM7fWZ1bmN0aW9uCmZvcmVpZ25fa2V5cygkaCl7JGM9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJTRUxFQ1QgdGMuY29uc3RyYWludF9uYW1lLCBrY3UuY29sdW1uX25hbWUsIHJjLnVwZGF0ZV9ydWxlIEFTIG9uX3VwZGF0ZSwgcmMuZGVsZXRlX3J1bGUgQVMgb25fZGVsZXRlLCBjY3UudGFibGVfbmFtZSBBUyB0YWJsZSwgY2N1LmNvbHVtbl9uYW1lIEFTIHJlZgpGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS50YWJsZV9jb25zdHJhaW50cyB0YwpMRUZUIEpPSU4gaW5mb3JtYXRpb25fc2NoZW1hLmtleV9jb2x1bW5fdXNhZ2Uga2N1IFVTSU5HIChjb25zdHJhaW50X2NhdGFsb2csIGNvbnN0cmFpbnRfc2NoZW1hLCBjb25zdHJhaW50X25hbWUpCkxFRlQgSk9JTiBpbmZvcm1hdGlvbl9zY2hlbWEucmVmZXJlbnRpYWxfY29uc3RyYWludHMgcmMgVVNJTkcgKGNvbnN0cmFpbnRfY2F0YWxvZywgY29uc3RyYWludF9zY2hlbWEsIGNvbnN0cmFpbnRfbmFtZSkKTEVGVCBKT0lOIGluZm9ybWF0aW9uX3NjaGVtYS5jb25zdHJhaW50X2NvbHVtbl91c2FnZSBjY3UgT04gcmMudW5pcXVlX2NvbnN0cmFpbnRfY2F0YWxvZyA9IGNjdS5jb25zdHJhaW50X2NhdGFsb2cgQU5EIHJjLnVuaXF1ZV9jb25zdHJhaW50X3NjaGVtYSA9IGNjdS5jb25zdHJhaW50X3NjaGVtYSBBTkQgcmMudW5pcXVlX2NvbnN0cmFpbnRfbmFtZSA9IGNjdS5jb25zdHJhaW50X25hbWUKV0hFUkUgdGMuY29uc3RyYWludF90eXBlID0gJ0ZPUkVJR04gS0VZJyBBTkQgdGMudGFibGVfbmFtZSA9ICIucSgkaCkpYXMkYSl7JEE9JiRjWyRhWyJjb25zdHJhaW50X25hbWUiXV07aWYoISRBKXskQT0kYTt9JEFbInNvdXJjZSJdW109JGFbImNvbHVtbl9uYW1lIl07JEFbInRhcmdldCJdW109JGFbInJlZiJdO31yZXR1cm4kYzt9ZnVuY3Rpb24KdmlldygkZil7Z2xvYmFsJGc7cmV0dXJuCmFycmF5KCJzZWxlY3QiPT4kZy0+cmVzdWx0KCJTRUxFQ1QgcGdfZ2V0X3ZpZXdkZWYoIi5xKCRmKS4iKSIpKTt9ZnVuY3Rpb24KY29sbGF0aW9ucygpe3JldHVybgphcnJheSgpO31mdW5jdGlvbgppbmZvcm1hdGlvbl9zY2hlbWEoJHQpe3JldHVybigkdD09ImluZm9ybWF0aW9uX3NjaGVtYSIpO31mdW5jdGlvbgplcnJvcigpe2dsb2JhbCRnOyRjPWgoJGctPmVycm9yKTtpZihwcmVnX21hdGNoKCd+XiguKlxcbik/KFteXFxuXSopXFxuKCAqKVxcXihcXG4uKik/JH5zJywkYywkaykpeyRjPSRrWzFdLnByZWdfcmVwbGFjZSgnfigoPzpbXiZdfCZbXjtdKjspeycuc3RybGVuKCRrWzNdKS4nfSkoLiopficsJ1xcMTxiPlxcMjwvYj4nLCRrWzJdKS4ka1s0XTt9cmV0dXJuCm5sX2JyKCRjKTt9ZnVuY3Rpb24KZXhhY3RfdmFsdWUoJGIpe3JldHVybgpxKCRiKTt9ZnVuY3Rpb24KY3JlYXRlX2RhdGFiYXNlKCR0LCRVKXtyZXR1cm4KcXVlcmllcygiQ1JFQVRFIERBVEFCQVNFICIuaWRmX2VzY2FwZSgkdCkuKCRVPyIgRU5DT0RJTkcgIi5pZGZfZXNjYXBlKCRVKToiIikpO31mdW5jdGlvbgpkcm9wX2RhdGFiYXNlcygkXyl7Z2xvYmFsJGc7JGctPmNsb3NlKCk7cmV0dXJuCmFwcGx5X3F1ZXJpZXMoIkRST1AgREFUQUJBU0UiLCRfLCdpZGZfZXNjYXBlJyk7fWZ1bmN0aW9uCnJlbmFtZV9kYXRhYmFzZSgkZiwkVSl7cmV0dXJuCnF1ZXJpZXMoIkFMVEVSIERBVEFCQVNFICIuaWRmX2VzY2FwZShEQikuIiBSRU5BTUUgVE8gIi5pZGZfZXNjYXBlKCRmKSk7fWZ1bmN0aW9uCmF1dG9faW5jcmVtZW50KCl7cmV0dXJuIiI7fWZ1bmN0aW9uCmFsdGVyX3RhYmxlKCRoLCRmLCRwLCRPYSwkX2EsJHliLCRVLCRTYSwkdmIpeyR1PWFycmF5KCk7JGpiPWFycmF5KCk7Zm9yZWFjaCgkcAphcyRlKXskQz1pZGZfZXNjYXBlKCRlWzBdKTskYj0kZVsxXTtpZighJGIpeyR1W109IkRST1AgJEMiO31lbHNleyRvZD0kYls1XTt1bnNldCgkYls1XSk7aWYoaXNzZXQoJGJbNl0pJiYkZVswXT09IiIpeyRiWzFdPSgkYlsxXT09ImJpZ2ludCI/IiBiaWciOiIgIikuInNlcmlhbCI7fWlmKCRlWzBdPT0iIil7JHVbXT0oJGghPSIiPyJBREQgIjoiICAiKS5pbXBsb2RlKCRiKTt9ZWxzZXtpZigkQyE9JGJbMF0peyRqYltdPSJBTFRFUiBUQUJMRSAiLnRhYmxlKCRoKS4iIFJFTkFNRSAkQyBUTyAkYlswXSI7fSR1W109IkFMVEVSICRDIFRZUEUkYlsxXSI7aWYoISRiWzZdKXskdVtdPSJBTFRFUiAkQyAiLigkYlszXT8iU0VUJGJbM10iOiJEUk9QIERFRkFVTFQiKTskdVtdPSJBTFRFUiAkQyAiLigkYlsyXT09IiBOVUxMIj8iRFJPUCBOT1QiOiJTRVQiKS4kYlsyXTt9fWlmKCRlWzBdIT0iInx8JG9kIT0iIil7JGpiW109IkNPTU1FTlQgT04gQ09MVU1OICIudGFibGUoJGgpLiIuJGJbMF0gSVMgIi4oJG9kIT0iIj9zdWJzdHIoJG9kLDkpOiInJyIpO319fSR1PWFycmF5X21lcmdlKCR1LCRPYSk7aWYoJGg9PSIiKXthcnJheV91bnNoaWZ0KCRqYiwiQ1JFQVRFIFRBQkxFICIudGFibGUoJGYpLiIgKFxuIi5pbXBsb2RlKCIsXG4iLCR1KS4iXG4pIik7fWVsc2VpZigkdSl7YXJyYXlfdW5zaGlmdCgkamIsIkFMVEVSIFRBQkxFICIudGFibGUoJGgpLiJcbiIuaW1wbG9kZSgiLFxuIiwkdSkpO31pZigkaCE9IiImJiRoIT0kZil7JGpiW109IkFMVEVSIFRBQkxFICIudGFibGUoJGgpLiIgUkVOQU1FIFRPICIudGFibGUoJGYpO31pZigkaCE9IiJ8fCRfYSE9IiIpeyRqYltdPSJDT01NRU5UIE9OIFRBQkxFICIudGFibGUoJGYpLiIgSVMgIi5xKCRfYSk7fWlmKCRTYSE9IiIpe31mb3JlYWNoKCRqYgphcyRqKXtpZighcXVlcmllcygkaikpe3JldHVybgpmYWxzZTt9fXJldHVybgp0cnVlO31mdW5jdGlvbgphbHRlcl9pbmRleGVzKCRoLCR1KXskbGE9YXJyYXkoKTskSGE9YXJyYXkoKTtmb3JlYWNoKCR1CmFzJGIpe2lmKCRiWzBdIT0iSU5ERVgiKXskbGFbXT0oJGJbMl0/IlxuRFJPUCBDT05TVFJBSU5UICI6IlxuQUREICRiWzBdICIuKCRiWzBdPT0iUFJJTUFSWSI/IktFWSAiOiIiKSkuJGJbMV07fWVsc2VpZigkYlsyXSl7JEhhW109JGJbMV07fWVsc2VpZighcXVlcmllcygiQ1JFQVRFIElOREVYICIuaWRmX2VzY2FwZSh1bmlxaWQoJGguIl8iKSkuIiBPTiAiLnRhYmxlKCRoKS4iICRiWzFdIikpe3JldHVybgpmYWxzZTt9fXJldHVybigoISRsYXx8cXVlcmllcygiQUxURVIgVEFCTEUgIi50YWJsZSgkaCkuaW1wbG9kZSgiLCIsJGxhKSkpJiYoISRIYXx8cXVlcmllcygiRFJPUCBJTkRFWCAiLmltcGxvZGUoIiwgIiwkSGEpKSkpO31mdW5jdGlvbgp0cnVuY2F0ZV90YWJsZXMoJEUpe3JldHVybgpxdWVyaWVzKCJUUlVOQ0FURSAiLmltcGxvZGUoIiwgIixhcnJheV9tYXAoJ3RhYmxlJywkRSkpKTtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KZHJvcF92aWV3cygkWCl7cmV0dXJuCnF1ZXJpZXMoIkRST1AgVklFVyAiLmltcGxvZGUoIiwgIixhcnJheV9tYXAoJ3RhYmxlJywkWCkpKTt9ZnVuY3Rpb24KZHJvcF90YWJsZXMoJEUpe3JldHVybgpxdWVyaWVzKCJEUk9QIFRBQkxFICIuaW1wbG9kZSgiLCAiLGFycmF5X21hcCgndGFibGUnLCRFKSkpO31mdW5jdGlvbgptb3ZlX3RhYmxlcygkRSwkWCwkZWEpe2ZvcmVhY2goJEUKYXMkaCl7aWYoIXF1ZXJpZXMoIkFMVEVSIFRBQkxFICIudGFibGUoJGgpLiIgU0VUIFNDSEVNQSAiLmlkZl9lc2NhcGUoJGVhKSkpe3JldHVybgpmYWxzZTt9fWZvcmVhY2goJFgKYXMkaCl7aWYoIXF1ZXJpZXMoIkFMVEVSIFZJRVcgIi50YWJsZSgkaCkuIiBTRVQgU0NIRU1BICIuaWRmX2VzY2FwZSgkZWEpKSl7cmV0dXJuCmZhbHNlO319cmV0dXJuCnRydWU7fWZ1bmN0aW9uCnRyaWdnZXIoJGYpeyRIPWdldF9yb3dzKCdTRUxFQ1QgdHJpZ2dlcl9uYW1lIEFTICJUcmlnZ2VyIiwgY29uZGl0aW9uX3RpbWluZyBBUyAiVGltaW5nIiwgZXZlbnRfbWFuaXB1bGF0aW9uIEFTICJFdmVudCIsIFwnRk9SIEVBQ0ggXCcgfHwgYWN0aW9uX29yaWVudGF0aW9uIEFTICJUeXBlIiwgYWN0aW9uX3N0YXRlbWVudCBBUyAiU3RhdGVtZW50IiBGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS50cmlnZ2VycyBXSEVSRSBldmVudF9vYmplY3RfdGFibGUgPSAnLnEoJF9HRVRbInRyaWdnZXIiXSkuJyBBTkQgdHJpZ2dlcl9uYW1lID0gJy5xKCRmKSk7cmV0dXJuCnJlc2V0KCRIKTt9ZnVuY3Rpb24KdHJpZ2dlcnMoJGgpeyRjPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiU0VMRUNUICogRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEudHJpZ2dlcnMgV0hFUkUgZXZlbnRfb2JqZWN0X3RhYmxlID0gIi5xKCRoKSlhcyRhKXskY1skYVsidHJpZ2dlcl9uYW1lIl1dPWFycmF5KCRhWyJjb25kaXRpb25fdGltaW5nIl0sJGFbImV2ZW50X21hbmlwdWxhdGlvbiJdKTt9cmV0dXJuJGM7fWZ1bmN0aW9uCnRyaWdnZXJfb3B0aW9ucygpe3JldHVybgphcnJheSgiVGltaW5nIj0+YXJyYXkoIkJFRk9SRSIsIkFGVEVSIiksIlR5cGUiPT5hcnJheSgiRk9SIEVBQ0ggUk9XIiwiRk9SIEVBQ0ggU1RBVEVNRU5UIiksKTt9ZnVuY3Rpb24KYmVnaW4oKXtyZXR1cm4KcXVlcmllcygiQkVHSU4iKTt9ZnVuY3Rpb24KaW5zZXJ0X2ludG8oJGgsJHIpe3JldHVybgpxdWVyaWVzKCJJTlNFUlQgSU5UTyAiLnRhYmxlKCRoKS4oJHI/IiAoIi5pbXBsb2RlKCIsICIsYXJyYXlfa2V5cygkcikpLiIpXG5WQUxVRVMgKCIuaW1wbG9kZSgiLCAiLCRyKS4iKSI6IkRFRkFVTFQgVkFMVUVTIikpO31mdW5jdGlvbgppbnNlcnRfdXBkYXRlKCRoLCRyLCRRYSl7Z2xvYmFsJGc7JHFhPWFycmF5KCk7JHM9YXJyYXkoKTtmb3JlYWNoKCRyCmFzJGQ9PiRiKXskcWFbXT0iJGQgPSAkYiI7aWYoaXNzZXQoJFFhW2lkZl91bmVzY2FwZSgkZCldKSl7JHNbXT0iJGQgPSAkYiI7fX1yZXR1cm4oJHMmJnF1ZXJpZXMoIlVQREFURSAiLnRhYmxlKCRoKS4iIFNFVCAiLmltcGxvZGUoIiwgIiwkcWEpLiIgV0hFUkUgIi5pbXBsb2RlKCIgQU5EICIsJHMpKSYmJGctPmFmZmVjdGVkX3Jvd3MpfHxxdWVyaWVzKCJJTlNFUlQgSU5UTyAiLnRhYmxlKCRoKS4iICgiLmltcGxvZGUoIiwgIixhcnJheV9rZXlzKCRyKSkuIikgVkFMVUVTICgiLmltcGxvZGUoIiwgIiwkcikuIikiKTt9ZnVuY3Rpb24KbGFzdF9pZCgpe3JldHVybgowO31mdW5jdGlvbgpleHBsYWluKCRnLCRqKXtyZXR1cm4kZy0+cXVlcnkoIkVYUExBSU4gJGoiKTt9ZnVuY3Rpb24KdHlwZXMoKXtyZXR1cm4KZ2V0X3ZhbHMoIlNFTEVDVCB0eXBuYW1lCkZST00gcGdfdHlwZQpXSEVSRSB0eXBuYW1lc3BhY2UgPSAoU0VMRUNUIG9pZCBGUk9NIHBnX25hbWVzcGFjZSBXSEVSRSBuc3BuYW1lID0gY3VycmVudF9zY2hlbWEoKSkKQU5EIHR5cHR5cGUgSU4gKCdiJywnZCcsJ2UnKQpBTkQgdHlwZWxlbSA9IDAiKTt9ZnVuY3Rpb24Kc2NoZW1hcygpe3JldHVybgpnZXRfdmFscygiU0VMRUNUIG5zcG5hbWUgRlJPTSBwZ19uYW1lc3BhY2UiKTt9ZnVuY3Rpb24KZ2V0X3NjaGVtYSgpe2dsb2JhbCRnO3JldHVybiRnLT5yZXN1bHQoIlNFTEVDVCBjdXJyZW50X3NjaGVtYSgpIik7fWZ1bmN0aW9uCnNldF9zY2hlbWEoJEthKXtnbG9iYWwkZywkUiwkTGE7JGM9JGctPnF1ZXJ5KCJTRVQgc2VhcmNoX3BhdGggVE8gIi5pZGZfZXNjYXBlKCRLYSkpO2ZvcmVhY2godHlwZXMoKWFzJHope2lmKCFpc3NldCgkUlskel0pKXskUlskel09MDskTGFbbGFuZygxMSldW109JHo7fX1yZXR1cm4kYzt9ZnVuY3Rpb24KdXNlX3NxbCgkaWEpe3JldHVybiJcY29ubmVjdCAiLmlkZl9lc2NhcGUoJGlhKTt9ZnVuY3Rpb24Kc2hvd192YXJpYWJsZXMoKXtyZXR1cm4KZ2V0X2tleV92YWxzKCJTSE9XIEFMTCIpO31mdW5jdGlvbgpzaG93X3N0YXR1cygpe31mdW5jdGlvbgpzdXBwb3J0KCRyYil7cmV0dXJuCmVyZWcoJ14oY29tbWVudHx2aWV3fHNjaGVtZXxzZXF1ZW5jZXx0cmlnZ2VyfHR5cGV8dmFyaWFibGVzfGRyb3BfY29sKSQnLCRyYik7fSR2PSJwZ3NxbCI7JFI9YXJyYXkoKTskTGE9YXJyYXkoKTtmb3JlYWNoKGFycmF5KGxhbmcoMTIpPT5hcnJheSgic21hbGxpbnQiPT41LCJpbnRlZ2VyIj0+MTAsImJpZ2ludCI9PjE5LCJib29sZWFuIj0+MSwibnVtZXJpYyI9PjAsInJlYWwiPT43LCJkb3VibGUgcHJlY2lzaW9uIj0+MTYsIm1vbmV5Ij0+MjApLGxhbmcoMTMpPT5hcnJheSgiZGF0ZSI9PjEzLCJ0aW1lIj0+MTcsInRpbWVzdGFtcCI9PjIwLCJpbnRlcnZhbCI9PjApLGxhbmcoMTQpPT5hcnJheSgiY2hhcmFjdGVyIj0+MCwiY2hhcmFjdGVyIHZhcnlpbmciPT4wLCJ0ZXh0Ij0+MCwidHNxdWVyeSI9PjAsInRzdmVjdG9yIj0+MCwidXVpZCI9PjAsInhtbCI9PjApLGxhbmcoMTUpPT5hcnJheSgiYml0Ij0+MCwiYml0IHZhcnlpbmciPT4wLCJieXRlYSI9PjApLGxhbmcoMTYpPT5hcnJheSgiY2lkciI9PjQzLCJpbmV0Ij0+NDMsIm1hY2FkZHIiPT4xNywidHhpZF9zbmFwc2hvdCI9PjApLGxhbmcoMTcpPT5hcnJheSgiYm94Ij0+MCwiY2lyY2xlIj0+MCwibGluZSI9PjAsImxzZWciPT4wLCJwYXRoIj0+MCwicG9pbnQiPT4wLCJwb2x5Z29uIj0+MCksKWFzJGQ9PiRiKXskUis9JGI7JExhWyRkXT1hcnJheV9rZXlzKCRiKTt9JG9iPWFycmF5KCk7JGdjPWFycmF5KCI9IiwiPCIsIj4iLCI8PSIsIj49IiwiIT0iLCJ+IiwiIX4iLCJMSUtFIiwiTElLRSAlJSIsIklOIiwiSVMgTlVMTCIsIk5PVCBMSUtFIiwiTk9UIElOIiwiSVMgTk9UIE5VTEwiLCIiKTskZGE9YXJyYXkoImNoYXJfbGVuZ3RoIiwibG93ZXIiLCJyb3VuZCIsInRvX2hleCIsInRvX3RpbWVzdGFtcCIsInVwcGVyIik7JGxiPWFycmF5KCJhdmciLCJjb3VudCIsImNvdW50IGRpc3RpbmN0IiwibWF4IiwibWluIiwic3VtIik7JE5iPWFycmF5KGFycmF5KCJjaGFyIj0+Im1kNSIsImRhdGV8dGltZSI9PiJub3ciLCksYXJyYXkoImludHxudW1lcmljfHJlYWx8bW9uZXkiPT4iKy8tIiwiZGF0ZXx0aW1lIj0+IisgaW50ZXJ2YWwvLSBpbnRlcnZhbCIsImNoYXJ8dGV4dCI9PiJ8fCIsKSk7fSRuYVsib3JhY2xlIl09Ik9yYWNsZSI7aWYoaXNzZXQoJF9HRVRbIm9yYWNsZSJdKSl7JG9jPWFycmF5KCJPQ0k4IiwiUERPX09DSSIpO2RlZmluZSgiRFJJVkVSIiwib3JhY2xlIik7aWYoZXh0ZW5zaW9uX2xvYWRlZCgib2NpOCIpKXtjbGFzcwpNaW5fREJ7dmFyJGV4dGVuc2lvbj0ib2NpOCIsJF9saW5rLCRfcmVzdWx0LCRzZXJ2ZXJfaW5mbywkYWZmZWN0ZWRfcm93cywkZXJyb3I7ZnVuY3Rpb24KX2Vycm9yKCRtZiwkbil7aWYoaW5pX2Jvb2woImh0bWxfZXJyb3JzIikpeyRuPWh0bWxfZW50aXR5X2RlY29kZShzdHJpcF90YWdzKCRuKSk7fSRuPWVyZWdfcmVwbGFjZSgnXlteOl0qOiAnLCcnLCRuKTskdGhpcy0+ZXJyb3I9JG47fWZ1bmN0aW9uCmNvbm5lY3QoJEYsJFAsJFQpeyR0aGlzLT5fbGluaz1Ab2NpX25ld19jb25uZWN0KCRQLCRULCRGLCJBTDMyVVRGOCIpO2lmKCR0aGlzLT5fbGluayl7JHRoaXMtPnNlcnZlcl9pbmZvPW9jaV9zZXJ2ZXJfdmVyc2lvbigkdGhpcy0+X2xpbmspO3JldHVybgp0cnVlO30kbj1vY2lfZXJyb3IoKTskdGhpcy0+ZXJyb3I9JG5bIm1lc3NhZ2UiXTtyZXR1cm4KZmFsc2U7fWZ1bmN0aW9uCnF1b3RlKCRJKXtyZXR1cm4iJyIuc3RyX3JlcGxhY2UoIiciLCInJyIsJEkpLiInIjt9ZnVuY3Rpb24Kc2VsZWN0X2RiKCRpYSl7cmV0dXJuCnRydWU7fWZ1bmN0aW9uCnF1ZXJ5KCRqLCRkYj1mYWxzZSl7JGk9b2NpX3BhcnNlKCR0aGlzLT5fbGluaywkaik7aWYoISRpKXskbj1vY2lfZXJyb3IoJHRoaXMtPl9saW5rKTskdGhpcy0+ZXJyb3I9JG5bIm1lc3NhZ2UiXTtyZXR1cm4KZmFsc2U7fXNldF9lcnJvcl9oYW5kbGVyKGFycmF5KCR0aGlzLCdfZXJyb3InKSk7JGM9QG9jaV9leGVjdXRlKCRpKTtyZXN0b3JlX2Vycm9yX2hhbmRsZXIoKTtpZigkYyl7aWYob2NpX251bV9maWVsZHMoJGkpKXtyZXR1cm4KbmV3Ck1pbl9SZXN1bHQoJGkpO30kdGhpcy0+YWZmZWN0ZWRfcm93cz1vY2lfbnVtX3Jvd3MoJGkpO31yZXR1cm4kYzt9ZnVuY3Rpb24KbXVsdGlfcXVlcnkoJGope3JldHVybiR0aGlzLT5fcmVzdWx0PSR0aGlzLT5xdWVyeSgkaik7fWZ1bmN0aW9uCnN0b3JlX3Jlc3VsdCgpe3JldHVybiR0aGlzLT5fcmVzdWx0O31mdW5jdGlvbgpuZXh0X3Jlc3VsdCgpe3JldHVybgpmYWxzZTt9ZnVuY3Rpb24KcmVzdWx0KCRqLCRlPTEpeyRpPSR0aGlzLT5xdWVyeSgkaik7aWYoIWlzX29iamVjdCgkaSl8fCFvY2lfZmV0Y2goJGktPl9yZXN1bHQpKXtyZXR1cm4KZmFsc2U7fXJldHVybgpvY2lfcmVzdWx0KCRpLT5fcmVzdWx0LCRlKTt9fWNsYXNzCk1pbl9SZXN1bHR7dmFyJF9yZXN1bHQsJF9vZmZzZXQ9MSwkbnVtX3Jvd3M7ZnVuY3Rpb24KTWluX1Jlc3VsdCgkaSl7JHRoaXMtPl9yZXN1bHQ9JGk7fWZ1bmN0aW9uCl9jb252ZXJ0KCRhKXtmb3JlYWNoKChhcnJheSkkYQphcyRkPT4kYil7aWYoaXNfYSgkYiwnT0NJLUxvYicpKXskYVskZF09JGItPmxvYWQoKTt9fXJldHVybiRhO31mdW5jdGlvbgpmZXRjaF9hc3NvYygpe3JldHVybiR0aGlzLT5fY29udmVydChvY2lfZmV0Y2hfYXNzb2MoJHRoaXMtPl9yZXN1bHQpKTt9ZnVuY3Rpb24KZmV0Y2hfcm93KCl7cmV0dXJuJHRoaXMtPl9jb252ZXJ0KG9jaV9mZXRjaF9yb3coJHRoaXMtPl9yZXN1bHQpKTt9ZnVuY3Rpb24KZmV0Y2hfZmllbGQoKXskQz0kdGhpcy0+X29mZnNldCsrOyRjPW5ldwpzdGRDbGFzczskYy0+bmFtZT1vY2lfZmllbGRfbmFtZSgkdGhpcy0+X3Jlc3VsdCwkQyk7JGMtPm9yZ25hbWU9JGMtPm5hbWU7JGMtPnR5cGU9b2NpX2ZpZWxkX3R5cGUoJHRoaXMtPl9yZXN1bHQsJEMpOyRjLT5jaGFyc2V0bnI9KGVyZWcoInJhd3xibG9ifGJmaWxlIiwkYy0+dHlwZSk/NjM6MCk7cmV0dXJuJGM7fWZ1bmN0aW9uCl9fZGVzdHJ1Y3QoKXtvY2lfZnJlZV9zdGF0ZW1lbnQoJHRoaXMtPl9yZXN1bHQpO319fWVsc2VpZihleHRlbnNpb25fbG9hZGVkKCJwZG9fb2NpIikpe2NsYXNzCk1pbl9EQgpleHRlbmRzCk1pbl9QRE97dmFyJGV4dGVuc2lvbj0iUERPX09DSSI7ZnVuY3Rpb24KY29ubmVjdCgkRiwkUCwkVCl7JHRoaXMtPmRzbigib2NpOmRibmFtZT0vLyRGO2NoYXJzZXQ9QUwzMlVURjgiLCRQLCRUKTtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24Kc2VsZWN0X2RiKCRpYSl7cmV0dXJuCnRydWU7fX19ZnVuY3Rpb24KaWRmX2VzY2FwZSgkTil7cmV0dXJuJyInLnN0cl9yZXBsYWNlKCciJywnIiInLCROKS4nIic7fWZ1bmN0aW9uCnRhYmxlKCROKXtyZXR1cm4KaWRmX2VzY2FwZSgkTik7fWZ1bmN0aW9uCmNvbm5lY3QoKXtnbG9iYWwkbzskZz1uZXcKTWluX0RCOyR5YT0kby0+Y3JlZGVudGlhbHMoKTtpZigkZy0+Y29ubmVjdCgkeWFbMF0sJHlhWzFdLCR5YVsyXSkpe3JldHVybiRnO31yZXR1cm4kZy0+ZXJyb3I7fWZ1bmN0aW9uCmdldF9kYXRhYmFzZXMoKXtyZXR1cm4KZ2V0X3ZhbHMoIlNFTEVDVCB0YWJsZXNwYWNlX25hbWUgRlJPTSB1c2VyX3RhYmxlc3BhY2VzIik7fWZ1bmN0aW9uCmxpbWl0KCRqLCRzLCRPLCRMPTAsJFdhPSIgIil7cmV0dXJuIiAkaiRzIi4oaXNzZXQoJE8pPygkcz8iIEFORCI6JFdhLiJXSEVSRSIpLigkTD8iIHJvd251bSA+ICRMIEFORCI6IiIpLiIgcm93bnVtIDw9ICIuKCRPKyRMKToiIik7fWZ1bmN0aW9uCmxpbWl0MSgkaiwkcyl7cmV0dXJuIiAkaiRzIjt9ZnVuY3Rpb24KZGJfY29sbGF0aW9uKCR0LCRaKXtnbG9iYWwkZztyZXR1cm4kZy0+cmVzdWx0KCJTRUxFQ1QgdmFsdWUgRlJPTSBubHNfZGF0YWJhc2VfcGFyYW1ldGVycyBXSEVSRSBwYXJhbWV0ZXIgPSAnTkxTX0NIQVJBQ1RFUlNFVCciKTt9ZnVuY3Rpb24KZW5naW5lcygpe3JldHVybgphcnJheSgpO31mdW5jdGlvbgpsb2dnZWRfdXNlcigpe2dsb2JhbCRnO3JldHVybiRnLT5yZXN1bHQoIlNFTEVDVCBVU0VSIEZST00gRFVBTCIpO31mdW5jdGlvbgp0YWJsZXNfbGlzdCgpe3JldHVybgpnZXRfa2V5X3ZhbHMoIlNFTEVDVCB0YWJsZV9uYW1lLCAndGFibGUnIEZST00gYWxsX3RhYmxlcyBXSEVSRSB0YWJsZXNwYWNlX25hbWUgPSAiLnEoREIpLiIKVU5JT04gU0VMRUNUIHZpZXdfbmFtZSwgJ3ZpZXcnIEZST00gdXNlcl92aWV3cyIpO31mdW5jdGlvbgpjb3VudF90YWJsZXMoJF8pe3JldHVybgphcnJheSgpO31mdW5jdGlvbgp0YWJsZV9zdGF0dXMoJGY9IiIpeyRjPWFycmF5KCk7JFZlPXEoJGYpO2ZvcmVhY2goZ2V0X3Jvd3MoJ1NFTEVDVCB0YWJsZV9uYW1lICJOYW1lIiwgXCd0YWJsZVwnICJFbmdpbmUiIEZST00gYWxsX3RhYmxlcyBXSEVSRSB0YWJsZXNwYWNlX25hbWUgPSAnLnEoREIpLigkZiE9IiI/IiBBTkQgdGFibGVfbmFtZSA9ICRWZSI6IiIpLiIKVU5JT04gU0VMRUNUIHZpZXdfbmFtZSwgJ3ZpZXcnIEZST00gdXNlcl92aWV3cyIuKCRmIT0iIj8iIFdIRVJFIHZpZXdfbmFtZSA9ICRWZSI6IiIpKWFzJGEpe2lmKCRmIT0iIil7cmV0dXJuJGE7fSRjWyRhWyJOYW1lIl1dPSRhO31yZXR1cm4kYzt9ZnVuY3Rpb24KaXNfdmlldygkRCl7cmV0dXJuJERbIkVuZ2luZSJdPT0idmlldyI7fWZ1bmN0aW9uCmZrX3N1cHBvcnQoJEQpe3JldHVybgp0cnVlO31mdW5jdGlvbgpmaWVsZHMoJGgpeyRjPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiU0VMRUNUICogRlJPTSBhbGxfdGFiX2NvbHVtbnMgV0hFUkUgdGFibGVfbmFtZSA9ICIucSgkaCkuIiBPUkRFUiBCWSBjb2x1bW5faWQiKWFzJGEpeyR6PSRhWyJEQVRBX1RZUEUiXTskVz0iJGFbREFUQV9QUkVDSVNJT05dLCRhW0RBVEFfU0NBTEVdIjtpZigkVz09IiwiKXskVz0kYVsiREFUQV9MRU5HVEgiXTt9JGNbJGFbIkNPTFVNTl9OQU1FIl1dPWFycmF5KCJmaWVsZCI9PiRhWyJDT0xVTU5fTkFNRSJdLCJmdWxsX3R5cGUiPT4kei4oJFc/IigkVykiOiIiKSwidHlwZSI9PnN0cnRvbG93ZXIoJHopLCJsZW5ndGgiPT4kVywiZGVmYXVsdCI9PiRhWyJEQVRBX0RFRkFVTFQiXSwibnVsbCI9PigkYVsiTlVMTEFCTEUiXT09IlkiKSwicHJpdmlsZWdlcyI9PmFycmF5KCJpbnNlcnQiPT4xLCJzZWxlY3QiPT4xLCJ1cGRhdGUiPT4xKSwpO31yZXR1cm4kYzt9ZnVuY3Rpb24KaW5kZXhlcygkaCwkRz1udWxsKXtyZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24KdmlldygkZil7JEg9Z2V0X3Jvd3MoJ1NFTEVDVCB0ZXh0ICJzZWxlY3QiIEZST00gdXNlcl92aWV3cyBXSEVSRSB2aWV3X25hbWUgPSAnLnEoJGYpKTtyZXR1cm4KcmVzZXQoJEgpO31mdW5jdGlvbgpjb2xsYXRpb25zKCl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCmluZm9ybWF0aW9uX3NjaGVtYSgkdCl7cmV0dXJuCmZhbHNlO31mdW5jdGlvbgplcnJvcigpe2dsb2JhbCRnO3JldHVybgpoKCRnLT5lcnJvcik7fWZ1bmN0aW9uCmV4YWN0X3ZhbHVlKCRiKXtyZXR1cm4KcSgkYik7fWZ1bmN0aW9uCmV4cGxhaW4oJGcsJGopeyRnLT5xdWVyeSgiRVhQTEFJTiBQTEFOIEZPUiAkaiIpO3JldHVybiRnLT5xdWVyeSgiU0VMRUNUICogRlJPTSBwbGFuX3RhYmxlIik7fWZ1bmN0aW9uCmFsdGVyX3RhYmxlKCRoLCRmLCRwLCRPYSwkX2EsJHliLCRVLCRTYSwkdmIpeyR1PSRIYT1hcnJheSgpO2ZvcmVhY2goJHAKYXMkZSl7JGI9JGVbMV07aWYoJGImJiRlWzBdIT0iIiYmaWRmX2VzY2FwZSgkZVswXSkhPSRiWzBdKXtxdWVyaWVzKCJBTFRFUiBUQUJMRSAiLnRhYmxlKCRoKS4iIFJFTkFNRSBDT0xVTU4gIi5pZGZfZXNjYXBlKCRlWzBdKS4iIFRPICRiWzBdIik7fWlmKCRiKXskdVtdPSgkaCE9IiI/KCRlWzBdIT0iIj8iTU9ESUZZICgiOiJBREQgKCIpOiIgICIpLmltcGxvZGUoJGIpLigkaCE9IiI/IikiOiIiKTt9ZWxzZXskSGFbXT1pZGZfZXNjYXBlKCRlWzBdKTt9fWlmKCRoPT0iIil7cmV0dXJuCnF1ZXJpZXMoIkNSRUFURSBUQUJMRSAiLnRhYmxlKCRmKS4iIChcbiIuaW1wbG9kZSgiLFxuIiwkdSkuIlxuKSIpO31yZXR1cm4oISR1fHxxdWVyaWVzKCJBTFRFUiBUQUJMRSAiLnRhYmxlKCRoKS4iXG4iLmltcGxvZGUoIlxuIiwkdSkpKSYmKCEkSGF8fHF1ZXJpZXMoIkFMVEVSIFRBQkxFICIudGFibGUoJGgpLiIgRFJPUCAoIi5pbXBsb2RlKCIsICIsJEhhKS4iKSIpKSYmKCRoPT0kZnx8cXVlcmllcygiQUxURVIgVEFCTEUgIi50YWJsZSgkaCkuIiBSRU5BTUUgVE8gIi50YWJsZSgkZikpKTt9ZnVuY3Rpb24KZm9yZWlnbl9rZXlzKCRoKXtyZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24KdHJ1bmNhdGVfdGFibGVzKCRFKXtyZXR1cm4KYXBwbHlfcXVlcmllcygiVFJVTkNBVEUgVEFCTEUiLCRFKTt9ZnVuY3Rpb24KZHJvcF92aWV3cygkWCl7cmV0dXJuCmFwcGx5X3F1ZXJpZXMoIkRST1AgVklFVyIsJFgpO31mdW5jdGlvbgpkcm9wX3RhYmxlcygkRSl7cmV0dXJuCmFwcGx5X3F1ZXJpZXMoIkRST1AgVEFCTEUiLCRFKTt9ZnVuY3Rpb24KYmVnaW4oKXtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KaW5zZXJ0X2ludG8oJGgsJHIpe3JldHVybgpxdWVyaWVzKCJJTlNFUlQgSU5UTyAiLnRhYmxlKCRoKS4iICgiLmltcGxvZGUoIiwgIixhcnJheV9rZXlzKCRyKSkuIilcblZBTFVFUyAoIi5pbXBsb2RlKCIsICIsJHIpLiIpIik7fWZ1bmN0aW9uCmxhc3RfaWQoKXtyZXR1cm4KMDt9ZnVuY3Rpb24Kc2NoZW1hcygpe3JldHVybgphcnJheSgpO31mdW5jdGlvbgpnZXRfc2NoZW1hKCl7cmV0dXJuIiI7fWZ1bmN0aW9uCnNldF9zY2hlbWEoJEVkKXtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24Kc2hvd192YXJpYWJsZXMoKXtyZXR1cm4KZ2V0X2tleV92YWxzKCdTRUxFQ1QgbmFtZSwgZGlzcGxheV92YWx1ZSBGUk9NIHYkcGFyYW1ldGVyJyk7fWZ1bmN0aW9uCnNob3dfc3RhdHVzKCl7JEg9Z2V0X3Jvd3MoJ1NFTEVDVCAqIEZST00gdiRpbnN0YW5jZScpO3JldHVybgpyZXNldCgkSCk7fWZ1bmN0aW9uCnN1cHBvcnQoJHJiKXtyZXR1cm4KZXJlZygidmlld3xkcm9wX2NvbHx2YXJpYWJsZXN8c3RhdHVzIiwkcmIpO30kdj0ib3JhY2xlIjskUj1hcnJheSgpOyRMYT1hcnJheSgpO2ZvcmVhY2goYXJyYXkobGFuZygxMik9PmFycmF5KCJudW1iZXIiPT4zOCwiYmluYXJ5X2Zsb2F0Ij0+MTIsImJpbmFyeV9kb3VibGUiPT4yMSksbGFuZygxMyk9PmFycmF5KCJkYXRlIj0+MTAsInRpbWVzdGFtcCI9PjI5LCJpbnRlcnZhbCB5ZWFyIj0+MTIsImludGVydmFsIGRheSI9PjI4KSxsYW5nKDE0KT0+YXJyYXkoImNoYXIiPT4yMDAwLCJ2YXJjaGFyMiI9PjQwMDAsIm5jaGFyIj0+MjAwMCwibnZhcmNoYXIyIj0+NDAwMCwiY2xvYiI9PjQyOTQ5NjcyOTUsIm5jbG9iIj0+NDI5NDk2NzI5NSksbGFuZygxNSk9PmFycmF5KCJyYXciPT4yMDAwLCJsb25nIHJhdyI9PjIxNDc0ODM2NDgsImJsb2IiPT40Mjk0OTY3Mjk1LCJiZmlsZSI9PjQyOTQ5NjcyOTYpLClhcyRkPT4kYil7JFIrPSRiOyRMYVskZF09YXJyYXlfa2V5cygkYik7fSRvYj1hcnJheSgpOyRnYz1hcnJheSgiPSIsIjwiLCI+IiwiPD0iLCI+PSIsIiE9IiwiTElLRSIsIkxJS0UgJSUiLCJJTiIsIklTIE5VTEwiLCJOT1QgTElLRSIsIk5PVCBSRUdFWFAiLCJOT1QgSU4iLCJJUyBOT1QgTlVMTCIsIiIpOyRkYT1hcnJheSgibGVuZ3RoIiwibG93ZXIiLCJyb3VuZCIsInVwcGVyIik7JGxiPWFycmF5KCJhdmciLCJjb3VudCIsImNvdW50IGRpc3RpbmN0IiwibWF4IiwibWluIiwic3VtIik7JE5iPWFycmF5KGFycmF5KCJkYXRlIj0+ImN1cnJlbnRfZGF0ZSIsInRpbWVzdGFtcCI9PiJjdXJyZW50X3RpbWVzdGFtcCIsKSxhcnJheSgibnVtYmVyfGZsb2F0fGRvdWJsZSI9PiIrLy0iLCJkYXRlfHRpbWVzdGFtcCI9PiIrIGludGVydmFsLy0gaW50ZXJ2YWwiLCJjaGFyfGNsb2IiPT4ifHwiLCkpO30kbmFbIm1zc3FsIl09Ik1TIFNRTCI7aWYoaXNzZXQoJF9HRVRbIm1zc3FsIl0pKXskb2M9YXJyYXkoIlNRTFNSViIsIk1TU1FMIik7ZGVmaW5lKCJEUklWRVIiLCJtc3NxbCIpO2lmKGV4dGVuc2lvbl9sb2FkZWQoInNxbHNydiIpKXtjbGFzcwpNaW5fREJ7dmFyJGV4dGVuc2lvbj0ic3Fsc3J2IiwkX2xpbmssJF9yZXN1bHQsJHNlcnZlcl9pbmZvLCRhZmZlY3RlZF9yb3dzLCRlcnJvcjtmdW5jdGlvbgpfZ2V0X2Vycm9yKCl7JHRoaXMtPmVycm9yPSIiO2ZvcmVhY2goc3Fsc3J2X2Vycm9ycygpYXMkbil7JHRoaXMtPmVycm9yLj0iJG5bbWVzc2FnZV1cbiI7fSR0aGlzLT5lcnJvcj1ydHJpbSgkdGhpcy0+ZXJyb3IpO31mdW5jdGlvbgpjb25uZWN0KCRGLCRQLCRUKXskdGhpcy0+X2xpbms9QHNxbHNydl9jb25uZWN0KCRGLGFycmF5KCJVSUQiPT4kUCwiUFdEIj0+JFQpKTtpZigkdGhpcy0+X2xpbmspeyRyZj1zcWxzcnZfc2VydmVyX2luZm8oJHRoaXMtPl9saW5rKTskdGhpcy0+c2VydmVyX2luZm89JHJmWydTUUxTZXJ2ZXJWZXJzaW9uJ107fWVsc2V7JHRoaXMtPl9nZXRfZXJyb3IoKTt9cmV0dXJuKGJvb2wpJHRoaXMtPl9saW5rO31mdW5jdGlvbgpxdW90ZSgkSSl7cmV0dXJuIiciLnN0cl9yZXBsYWNlKCInIiwiJyciLCRJKS4iJyI7fWZ1bmN0aW9uCnNlbGVjdF9kYigkaWEpe3JldHVybiR0aGlzLT5xdWVyeSgiVVNFICRpYSIpO31mdW5jdGlvbgpxdWVyeSgkaiwkZGI9ZmFsc2UpeyRpPXNxbHNydl9xdWVyeSgkdGhpcy0+X2xpbmssJGopO2lmKCEkaSl7JHRoaXMtPl9nZXRfZXJyb3IoKTtyZXR1cm4KZmFsc2U7fXJldHVybiR0aGlzLT5zdG9yZV9yZXN1bHQoJGkpO31mdW5jdGlvbgptdWx0aV9xdWVyeSgkail7JHRoaXMtPl9yZXN1bHQ9c3Fsc3J2X3F1ZXJ5KCR0aGlzLT5fbGluaywkaik7aWYoISR0aGlzLT5fcmVzdWx0KXskdGhpcy0+X2dldF9lcnJvcigpO3JldHVybgpmYWxzZTt9cmV0dXJuCnRydWU7fWZ1bmN0aW9uCnN0b3JlX3Jlc3VsdCgkaT1udWxsKXtpZighJGkpeyRpPSR0aGlzLT5fcmVzdWx0O31pZihzcWxzcnZfZmllbGRfbWV0YWRhdGEoJGkpKXtyZXR1cm4KbmV3Ck1pbl9SZXN1bHQoJGkpO30kdGhpcy0+YWZmZWN0ZWRfcm93cz1zcWxzcnZfcm93c19hZmZlY3RlZCgkaSk7cmV0dXJuCnRydWU7fWZ1bmN0aW9uCm5leHRfcmVzdWx0KCl7cmV0dXJuCnNxbHNydl9uZXh0X3Jlc3VsdCgkdGhpcy0+X3Jlc3VsdCk7fWZ1bmN0aW9uCnJlc3VsdCgkaiwkZT0wKXskaT0kdGhpcy0+cXVlcnkoJGopO2lmKCFpc19vYmplY3QoJGkpKXtyZXR1cm4KZmFsc2U7fSRhPSRpLT5mZXRjaF9yb3coKTtyZXR1cm4kYVskZV07fX1jbGFzcwpNaW5fUmVzdWx0e3ZhciRfcmVzdWx0LCRfb2Zmc2V0PTAsJF9maWVsZHMsJG51bV9yb3dzO2Z1bmN0aW9uCk1pbl9SZXN1bHQoJGkpeyR0aGlzLT5fcmVzdWx0PSRpO31mdW5jdGlvbgpfY29udmVydCgkYSl7Zm9yZWFjaCgoYXJyYXkpJGEKYXMkZD0+JGIpe2lmKGlzX2EoJGIsJ0RhdGVUaW1lJykpeyRhWyRkXT0kYi0+Zm9ybWF0KCJZLW0tZCBIOmk6cyIpO319cmV0dXJuJGE7fWZ1bmN0aW9uCmZldGNoX2Fzc29jKCl7cmV0dXJuJHRoaXMtPl9jb252ZXJ0KHNxbHNydl9mZXRjaF9hcnJheSgkdGhpcy0+X3Jlc3VsdCxTUUxTUlZfRkVUQ0hfQVNTT0MsU1FMU1JWX1NDUk9MTF9ORVhUKSk7fWZ1bmN0aW9uCmZldGNoX3Jvdygpe3JldHVybiR0aGlzLT5fY29udmVydChzcWxzcnZfZmV0Y2hfYXJyYXkoJHRoaXMtPl9yZXN1bHQsU1FMU1JWX0ZFVENIX05VTUVSSUMsU1FMU1JWX1NDUk9MTF9ORVhUKSk7fWZ1bmN0aW9uCmZldGNoX2ZpZWxkKCl7aWYoISR0aGlzLT5fZmllbGRzKXskdGhpcy0+X2ZpZWxkcz1zcWxzcnZfZmllbGRfbWV0YWRhdGEoJHRoaXMtPl9yZXN1bHQpO30kZT0kdGhpcy0+X2ZpZWxkc1skdGhpcy0+X29mZnNldCsrXTskYz1uZXcKc3RkQ2xhc3M7JGMtPm5hbWU9JGVbIk5hbWUiXTskYy0+b3JnbmFtZT0kZVsiTmFtZSJdOyRjLT50eXBlPSgkZVsiVHlwZSJdPT0xPzI1NDowKTtyZXR1cm4kYzt9ZnVuY3Rpb24Kc2VlaygkTCl7Zm9yKCRsPTA7JGw8JEw7JGwrKyl7c3Fsc3J2X2ZldGNoKCR0aGlzLT5fcmVzdWx0KTt9fWZ1bmN0aW9uCl9fZGVzdHJ1Y3QoKXtzcWxzcnZfZnJlZV9zdG10KCR0aGlzLT5fcmVzdWx0KTt9fX1lbHNlaWYoZXh0ZW5zaW9uX2xvYWRlZCgibXNzcWwiKSl7Y2xhc3MKTWluX0RCe3ZhciRleHRlbnNpb249Ik1TU1FMIiwkX2xpbmssJF9yZXN1bHQsJHNlcnZlcl9pbmZvLCRhZmZlY3RlZF9yb3dzLCRlcnJvcjtmdW5jdGlvbgpjb25uZWN0KCRGLCRQLCRUKXskdGhpcy0+X2xpbms9QG1zc3FsX2Nvbm5lY3QoJEYsJFAsJFQpO2lmKCR0aGlzLT5fbGluayl7JGk9JHRoaXMtPnF1ZXJ5KCJTRUxFQ1QgU0VSVkVSUFJPUEVSVFkoJ1Byb2R1Y3RMZXZlbCcpLCBTRVJWRVJQUk9QRVJUWSgnRWRpdGlvbicpIik7JGE9JGktPmZldGNoX3JvdygpOyR0aGlzLT5zZXJ2ZXJfaW5mbz0kdGhpcy0+cmVzdWx0KCJzcF9zZXJ2ZXJfaW5mbyAyIiwyKS4iIFskYVswXV0gJGFbMV0iO31lbHNleyR0aGlzLT5lcnJvcj1tc3NxbF9nZXRfbGFzdF9tZXNzYWdlKCk7fXJldHVybihib29sKSR0aGlzLT5fbGluazt9ZnVuY3Rpb24KcXVvdGUoJEkpe3JldHVybiInIi5zdHJfcmVwbGFjZSgiJyIsIicnIiwkSSkuIiciO31mdW5jdGlvbgpzZWxlY3RfZGIoJGlhKXtyZXR1cm4KbXNzcWxfc2VsZWN0X2RiKCRpYSk7fWZ1bmN0aW9uCnF1ZXJ5KCRqLCRkYj1mYWxzZSl7JGk9bXNzcWxfcXVlcnkoJGosJHRoaXMtPl9saW5rKTtpZighJGkpeyR0aGlzLT5lcnJvcj1tc3NxbF9nZXRfbGFzdF9tZXNzYWdlKCk7cmV0dXJuCmZhbHNlO31pZigkaT09PXRydWUpeyR0aGlzLT5hZmZlY3RlZF9yb3dzPW1zc3FsX3Jvd3NfYWZmZWN0ZWQoJHRoaXMtPl9saW5rKTtyZXR1cm4KdHJ1ZTt9cmV0dXJuCm5ldwpNaW5fUmVzdWx0KCRpKTt9ZnVuY3Rpb24KbXVsdGlfcXVlcnkoJGope3JldHVybiR0aGlzLT5fcmVzdWx0PSR0aGlzLT5xdWVyeSgkaik7fWZ1bmN0aW9uCnN0b3JlX3Jlc3VsdCgpe3JldHVybiR0aGlzLT5fcmVzdWx0O31mdW5jdGlvbgpuZXh0X3Jlc3VsdCgpe3JldHVybgptc3NxbF9uZXh0X3Jlc3VsdCgkdGhpcy0+X3Jlc3VsdCk7fWZ1bmN0aW9uCnJlc3VsdCgkaiwkZT0wKXskaT0kdGhpcy0+cXVlcnkoJGopO2lmKCFpc19vYmplY3QoJGkpKXtyZXR1cm4KZmFsc2U7fXJldHVybgptc3NxbF9yZXN1bHQoJGktPl9yZXN1bHQsMCwkZSk7fX1jbGFzcwpNaW5fUmVzdWx0e3ZhciRfcmVzdWx0LCRfb2Zmc2V0PTAsJF9maWVsZHMsJG51bV9yb3dzO2Z1bmN0aW9uCk1pbl9SZXN1bHQoJGkpeyR0aGlzLT5fcmVzdWx0PSRpOyR0aGlzLT5udW1fcm93cz1tc3NxbF9udW1fcm93cygkaSk7fWZ1bmN0aW9uCmZldGNoX2Fzc29jKCl7cmV0dXJuCm1zc3FsX2ZldGNoX2Fzc29jKCR0aGlzLT5fcmVzdWx0KTt9ZnVuY3Rpb24KZmV0Y2hfcm93KCl7cmV0dXJuCm1zc3FsX2ZldGNoX3JvdygkdGhpcy0+X3Jlc3VsdCk7fWZ1bmN0aW9uCm51bV9yb3dzKCl7cmV0dXJuCm1zc3FsX251bV9yb3dzKCR0aGlzLT5fcmVzdWx0KTt9ZnVuY3Rpb24KZmV0Y2hfZmllbGQoKXskYz1tc3NxbF9mZXRjaF9maWVsZCgkdGhpcy0+X3Jlc3VsdCk7JGMtPm9yZ3RhYmxlPSRjLT50YWJsZTskYy0+b3JnbmFtZT0kYy0+bmFtZTtyZXR1cm4kYzt9ZnVuY3Rpb24Kc2VlaygkTCl7bXNzcWxfZGF0YV9zZWVrKCR0aGlzLT5fcmVzdWx0LCRMKTt9ZnVuY3Rpb24KX19kZXN0cnVjdCgpe21zc3FsX2ZyZWVfcmVzdWx0KCR0aGlzLT5fcmVzdWx0KTt9fX1mdW5jdGlvbgppZGZfZXNjYXBlKCROKXtyZXR1cm4iWyIuc3RyX3JlcGxhY2UoIl0iLCJdXSIsJE4pLiJdIjt9ZnVuY3Rpb24KdGFibGUoJE4pe3JldHVybigkX0dFVFsibnMiXSE9IiI/aWRmX2VzY2FwZSgkX0dFVFsibnMiXSkuIi4iOiIiKS5pZGZfZXNjYXBlKCROKTt9ZnVuY3Rpb24KY29ubmVjdCgpe2dsb2JhbCRvOyRnPW5ldwpNaW5fREI7JHlhPSRvLT5jcmVkZW50aWFscygpO2lmKCRnLT5jb25uZWN0KCR5YVswXSwkeWFbMV0sJHlhWzJdKSl7cmV0dXJuJGc7fXJldHVybiRnLT5lcnJvcjt9ZnVuY3Rpb24KZ2V0X2RhdGFiYXNlcygpe3JldHVybgpnZXRfdmFscygiRVhFQyBzcF9kYXRhYmFzZXMiKTt9ZnVuY3Rpb24KbGltaXQoJGosJHMsJE8sJEw9MCwkV2E9IiAiKXtyZXR1cm4oaXNzZXQoJE8pPyIgVE9QICgiLigkTyskTCkuIikiOiIiKS4iICRqJHMiO31mdW5jdGlvbgpsaW1pdDEoJGosJHMpe3JldHVybgpsaW1pdCgkaiwkcywxKTt9ZnVuY3Rpb24KZGJfY29sbGF0aW9uKCR0LCRaKXtnbG9iYWwkZztyZXR1cm4kZy0+cmVzdWx0KCJTRUxFQ1QgY29sbGF0aW9uX25hbWUgRlJPTSBzeXMuZGF0YWJhc2VzIFdIRVJFIG5hbWUgPSAgIi5xKCR0KSk7fWZ1bmN0aW9uCmVuZ2luZXMoKXtyZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24KbG9nZ2VkX3VzZXIoKXtnbG9iYWwkZztyZXR1cm4kZy0+cmVzdWx0KCJTRUxFQ1QgU1VTRVJfTkFNRSgpIik7fWZ1bmN0aW9uCnRhYmxlc19saXN0KCl7cmV0dXJuCmdldF9rZXlfdmFscygiU0VMRUNUIG5hbWUsIHR5cGVfZGVzYyBGUk9NIHN5cy5hbGxfb2JqZWN0cyBXSEVSRSBzY2hlbWFfaWQgPSBTQ0hFTUFfSUQoIi5xKGdldF9zY2hlbWEoKSkuIikgQU5EIHR5cGUgSU4gKCdTJywgJ1UnLCAnVicpIE9SREVSIEJZIG5hbWUiKTt9ZnVuY3Rpb24KY291bnRfdGFibGVzKCRfKXtnbG9iYWwkZzskYz1hcnJheSgpO2ZvcmVhY2goJF8KYXMkdCl7JGctPnNlbGVjdF9kYigkdCk7JGNbJHRdPSRnLT5yZXN1bHQoIlNFTEVDVCBDT1VOVCgqKSBGUk9NIElORk9STUFUSU9OX1NDSEVNQS5UQUJMRVMiKTt9cmV0dXJuJGM7fWZ1bmN0aW9uCnRhYmxlX3N0YXR1cygkZj0iIil7JGM9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJTRUxFQ1QgbmFtZSBBUyBOYW1lLCB0eXBlX2Rlc2MgQVMgRW5naW5lIEZST00gc3lzLmFsbF9vYmplY3RzIFdIRVJFIHNjaGVtYV9pZCA9IFNDSEVNQV9JRCgiLnEoZ2V0X3NjaGVtYSgpKS4iKSBBTkQgdHlwZSBJTiAoJ1MnLCAnVScsICdWJykiLigkZiE9IiI/IiBBTkQgbmFtZSA9ICIucSgkZik6IiIpKWFzJGEpe2lmKCRmIT0iIil7cmV0dXJuJGE7fSRjWyRhWyJOYW1lIl1dPSRhO31yZXR1cm4kYzt9ZnVuY3Rpb24KaXNfdmlldygkRCl7cmV0dXJuJERbIkVuZ2luZSJdPT0iVklFVyI7fWZ1bmN0aW9uCmZrX3N1cHBvcnQoJEQpe3JldHVybgp0cnVlO31mdW5jdGlvbgpmaWVsZHMoJGgpeyRjPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiU0VMRUNUIGMuKiwgdC5uYW1lIHR5cGUsIGQuZGVmaW5pdGlvbiBbZGVmYXVsdF0KRlJPTSBzeXMuYWxsX2NvbHVtbnMgYwpKT0lOIHN5cy5hbGxfb2JqZWN0cyBvIE9OIGMub2JqZWN0X2lkID0gby5vYmplY3RfaWQKSk9JTiBzeXMudHlwZXMgdCBPTiBjLnVzZXJfdHlwZV9pZCA9IHQudXNlcl90eXBlX2lkCkxFRlQgSk9JTiBzeXMuZGVmYXVsdF9jb25zdHJhaW50cyBkIE9OIGMuZGVmYXVsdF9vYmplY3RfaWQgPSBkLnBhcmVudF9jb2x1bW5faWQKV0hFUkUgby5zY2hlbWFfaWQgPSBTQ0hFTUFfSUQoIi5xKGdldF9zY2hlbWEoKSkuIikgQU5EIG8udHlwZSBJTiAoJ1MnLCAnVScsICdWJykgQU5EIG8ubmFtZSA9ICIucSgkaCkpYXMkYSl7JHo9JGFbInR5cGUiXTskVz0oZXJlZygiY2hhcnxiaW5hcnkiLCR6KT8kYVsibWF4X2xlbmd0aCJdOigkej09ImRlY2ltYWwiPyIkYVtwcmVjaXNpb25dLCRhW3NjYWxlXSI6IiIpKTskY1skYVsibmFtZSJdXT1hcnJheSgiZmllbGQiPT4kYVsibmFtZSJdLCJmdWxsX3R5cGUiPT4kei4oJFc/IigkVykiOiIiKSwidHlwZSI9PiR6LCJsZW5ndGgiPT4kVywiZGVmYXVsdCI9PiRhWyJkZWZhdWx0Il0sIm51bGwiPT4kYVsiaXNfbnVsbGFibGUiXSwiYXV0b19pbmNyZW1lbnQiPT4kYVsiaXNfaWRlbnRpdHkiXSwiY29sbGF0aW9uIj0+JGFbImNvbGxhdGlvbl9uYW1lIl0sInByaXZpbGVnZXMiPT5hcnJheSgiaW5zZXJ0Ij0+MSwic2VsZWN0Ij0+MSwidXBkYXRlIj0+MSksInByaW1hcnkiPT4kYVsiaXNfaWRlbnRpdHkiXSwpO31yZXR1cm4kYzt9ZnVuY3Rpb24KaW5kZXhlcygkaCwkRz1udWxsKXtnbG9iYWwkZztpZighaXNfb2JqZWN0KCRHKSl7JEc9JGc7fSRjPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiU0VMRUNUIGkubmFtZSwga2V5X29yZGluYWwsIGlzX3VuaXF1ZSwgaXNfcHJpbWFyeV9rZXksIGMubmFtZSBBUyBjb2x1bW5fbmFtZQpGUk9NIHN5cy5pbmRleGVzIGkKSU5ORVIgSk9JTiBzeXMuaW5kZXhfY29sdW1ucyBpYyBPTiBpLm9iamVjdF9pZCA9IGljLm9iamVjdF9pZCBBTkQgaS5pbmRleF9pZCA9IGljLmluZGV4X2lkCklOTkVSIEpPSU4gc3lzLmNvbHVtbnMgYyBPTiBpYy5vYmplY3RfaWQgPSBjLm9iamVjdF9pZCBBTkQgaWMuY29sdW1uX2lkID0gYy5jb2x1bW5faWQKV0hFUkUgT0JKRUNUX05BTUUoaS5vYmplY3RfaWQpID0gIi5xKCRoKSwkRylhcyRhKXskY1skYVsibmFtZSJdXVsidHlwZSJdPSgkYVsiaXNfcHJpbWFyeV9rZXkiXT8iUFJJTUFSWSI6KCRhWyJpc191bmlxdWUiXT8iVU5JUVVFIjoiSU5ERVgiKSk7JGNbJGFbIm5hbWUiXV1bImxlbmd0aHMiXT1hcnJheSgpOyRjWyRhWyJuYW1lIl1dWyJjb2x1bW5zIl1bJGFbImtleV9vcmRpbmFsIl1dPSRhWyJjb2x1bW5fbmFtZSJdO31yZXR1cm4kYzt9ZnVuY3Rpb24KdmlldygkZil7Z2xvYmFsJGc7cmV0dXJuCmFycmF5KCJzZWxlY3QiPT5wcmVnX3JlcGxhY2UoJ35eKD86W15bXXxcXFtbXl1dKl0pKlxccytBU1xccyt+aXNVJywnJywkZy0+cmVzdWx0KCJTRUxFQ1QgVklFV19ERUZJTklUSU9OIEZST00gSU5GT1JNQVRJT05fU0NIRU1BLlZJRVdTIFdIRVJFIFRBQkxFX1NDSEVNQSA9IFNDSEVNQV9OQU1FKCkgQU5EIFRBQkxFX05BTUUgPSAiLnEoJGYpKSkpO31mdW5jdGlvbgpjb2xsYXRpb25zKCl7JGM9YXJyYXkoKTtmb3JlYWNoKGdldF92YWxzKCJTRUxFQ1QgbmFtZSBGUk9NIGZuX2hlbHBjb2xsYXRpb25zKCkiKWFzJFUpeyRjW2VyZWdfcmVwbGFjZSgiXy4qIiwiIiwkVSldW109JFU7fXJldHVybiRjO31mdW5jdGlvbgppbmZvcm1hdGlvbl9zY2hlbWEoJHQpe3JldHVybgpmYWxzZTt9ZnVuY3Rpb24KZXJyb3IoKXtnbG9iYWwkZztyZXR1cm4KbmxfYnIoaChwcmVnX3JlcGxhY2UoJ35eKFxcW1teXV0qXSkrfm0nLCcnLCRnLT5lcnJvcikpKTt9ZnVuY3Rpb24KZXhhY3RfdmFsdWUoJGIpe3JldHVybgpxKCRiKTt9ZnVuY3Rpb24KY3JlYXRlX2RhdGFiYXNlKCR0LCRVKXtyZXR1cm4KcXVlcmllcygiQ1JFQVRFIERBVEFCQVNFICIuaWRmX2VzY2FwZSgkdCkuKGVyZWdpKCdeW2EtejAtOV9dKyQnLCRVKT8iIENPTExBVEUgJFUiOiIiKSk7fWZ1bmN0aW9uCmRyb3BfZGF0YWJhc2VzKCRfKXtyZXR1cm4KcXVlcmllcygiRFJPUCBEQVRBQkFTRSAiLmltcGxvZGUoIiwgIixhcnJheV9tYXAoJ2lkZl9lc2NhcGUnLCRfKSkpO31mdW5jdGlvbgpyZW5hbWVfZGF0YWJhc2UoJGYsJFUpe2lmKGVyZWdpKCdeW2EtejAtOV9dKyQnLCRVKSl7cXVlcmllcygiQUxURVIgREFUQUJBU0UgIi5pZGZfZXNjYXBlKERCKS4iIENPTExBVEUgJFUiKTt9cXVlcmllcygiQUxURVIgREFUQUJBU0UgIi5pZGZfZXNjYXBlKERCKS4iIE1PRElGWSBOQU1FID0gIi5pZGZfZXNjYXBlKCRmKSk7cmV0dXJuCnRydWU7fWZ1bmN0aW9uCmF1dG9faW5jcmVtZW50KCl7cmV0dXJuIiBJREVOVElUWSIuKCRfUE9TVFsiQXV0b19pbmNyZW1lbnQiXSE9IiI/IigiLigrJF9QT1NUWyJBdXRvX2luY3JlbWVudCJdKS4iLDEpIjoiIikuIiBQUklNQVJZIEtFWSI7fWZ1bmN0aW9uCmFsdGVyX3RhYmxlKCRoLCRmLCRwLCRPYSwkX2EsJHliLCRVLCRTYSwkdmIpeyR1PWFycmF5KCk7Zm9yZWFjaCgkcAphcyRlKXskQz1pZGZfZXNjYXBlKCRlWzBdKTskYj0kZVsxXTtpZighJGIpeyR1WyJEUk9QIl1bXT0iIENPTFVNTiAkQyI7fWVsc2V7JGJbMV09cHJlZ19yZXBsYWNlKCJ+KCBDT0xMQVRFICknKFxcdyspJ34iLCJcXDFcXDIiLCRiWzFdKTtpZigkZVswXT09IiIpeyR1WyJBREQiXVtdPSJcbiAgIi5pbXBsb2RlKCIiLCRiKS4oJGg9PSIiP3N1YnN0cigkT2FbJGJbMF1dLDE2K3N0cmxlbigkYlswXSkpOiIiKTt9ZWxzZXt1bnNldCgkYls2XSk7aWYoJEMhPSRiWzBdKXtxdWVyaWVzKCJFWEVDIHNwX3JlbmFtZSAiLnEodGFibGUoJGgpLiIuJEMiKS4iLCAiLnEoaWRmX3VuZXNjYXBlKCRiWzBdKSkuIiwgJ0NPTFVNTiciKTt9JHVbIkFMVEVSIENPTFVNTiAiLmltcGxvZGUoIiIsJGIpXVtdPSIiO319fWlmKCRoPT0iIil7cmV0dXJuCnF1ZXJpZXMoIkNSRUFURSBUQUJMRSAiLnRhYmxlKCRmKS4iICgiLmltcGxvZGUoIiwiLChhcnJheSkkdVsiQUREIl0pLiJcbikiKTt9aWYoJGghPSRmKXtxdWVyaWVzKCJFWEVDIHNwX3JlbmFtZSAiLnEodGFibGUoJGgpKS4iLCAiLnEoJGYpKTt9aWYoJE9hKXskdVsiIl09JE9hO31mb3JlYWNoKCR1CmFzJGQ9PiRiKXtpZighcXVlcmllcygiQUxURVIgVEFCTEUgIi5pZGZfZXNjYXBlKCRmKS4iICRkIi5pbXBsb2RlKCIsIiwkYikpKXtyZXR1cm4KZmFsc2U7fX1yZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KYWx0ZXJfaW5kZXhlcygkaCwkdSl7JHg9YXJyYXkoKTskSGE9YXJyYXkoKTtmb3JlYWNoKCR1CmFzJGIpe2lmKCRiWzJdKXtpZigkYlswXT09IlBSSU1BUlkiKXskSGFbXT0kYlsxXTt9ZWxzZXskeFtdPSIkYlsxXSBPTiAiLnRhYmxlKCRoKTt9fWVsc2VpZighcXVlcmllcygoJGJbMF0hPSJQUklNQVJZIj8iQ1JFQVRFIi4oJGJbMF0hPSJJTkRFWCI/IiBVTklRVUUiOiIiKS4iIElOREVYICIuaWRmX2VzY2FwZSh1bmlxaWQoJGguIl8iKSkuIiBPTiAiLnRhYmxlKCRoKToiQUxURVIgVEFCTEUgIi50YWJsZSgkaCkuIiBBREQgUFJJTUFSWSBLRVkiKS4iICRiWzFdIikpe3JldHVybgpmYWxzZTt9fXJldHVybighJHh8fHF1ZXJpZXMoIkRST1AgSU5ERVggIi5pbXBsb2RlKCIsICIsJHgpKSkmJighJEhhfHxxdWVyaWVzKCJBTFRFUiBUQUJMRSAiLnRhYmxlKCRoKS4iIERST1AgIi5pbXBsb2RlKCIsICIsJEhhKSkpO31mdW5jdGlvbgpiZWdpbigpe3JldHVybgpxdWVyaWVzKCJCRUdJTiBUUkFOU0FDVElPTiIpO31mdW5jdGlvbgppbnNlcnRfaW50bygkaCwkcil7cmV0dXJuCnF1ZXJpZXMoIklOU0VSVCBJTlRPICIudGFibGUoJGgpLigkcj8iICgiLmltcGxvZGUoIiwgIixhcnJheV9rZXlzKCRyKSkuIilcblZBTFVFUyAoIi5pbXBsb2RlKCIsICIsJHIpLiIpIjoiREVGQVVMVCBWQUxVRVMiKSk7fWZ1bmN0aW9uCmluc2VydF91cGRhdGUoJGgsJHIsJFFhKXskcWE9YXJyYXkoKTskcz1hcnJheSgpO2ZvcmVhY2goJHIKYXMkZD0+JGIpeyRxYVtdPSIkZCA9ICRiIjtpZihpc3NldCgkUWFbaWRmX3VuZXNjYXBlKCRkKV0pKXskc1tdPSIkZCA9ICRiIjt9fXJldHVybgpxdWVyaWVzKCJNRVJHRSAiLnRhYmxlKCRoKS4iIFVTSU5HIChWQUxVRVMoIi5pbXBsb2RlKCIsICIsJHIpLiIpKSBBUyBzb3VyY2UgKGMiLmltcGxvZGUoIiwgYyIscmFuZ2UoMSxjb3VudCgkcikpKS4iKSBPTiAiLmltcGxvZGUoIiBBTkQgIiwkcykuIiBXSEVOIE1BVENIRUQgVEhFTiBVUERBVEUgU0VUICIuaW1wbG9kZSgiLCAiLCRxYSkuIiBXSEVOIE5PVCBNQVRDSEVEIFRIRU4gSU5TRVJUICgiLmltcGxvZGUoIiwgIixhcnJheV9rZXlzKCRyKSkuIikgVkFMVUVTICgiLmltcGxvZGUoIiwgIiwkcikuIik7Iik7fWZ1bmN0aW9uCmxhc3RfaWQoKXtnbG9iYWwkZztyZXR1cm4kZy0+cmVzdWx0KCJTRUxFQ1QgU0NPUEVfSURFTlRJVFkoKSIpO31mdW5jdGlvbgpleHBsYWluKCRnLCRqKXskZy0+cXVlcnkoIlNFVCBTSE9XUExBTl9BTEwgT04iKTskYz0kZy0+cXVlcnkoJGopOyRnLT5xdWVyeSgiU0VUIFNIT1dQTEFOX0FMTCBPRkYiKTtyZXR1cm4kYzt9ZnVuY3Rpb24KZm9yZWlnbl9rZXlzKCRoKXskYz1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIkVYRUMgc3BfZmtleXMgQGZrdGFibGVfbmFtZSA9ICIucSgkaCkpYXMkYSl7JEE9JiRjWyRhWyJGS19OQU1FIl1dOyRBWyJ0YWJsZSJdPSRhWyJQS1RBQkxFX05BTUUiXTskQVsic291cmNlIl1bXT0kYVsiRktDT0xVTU5fTkFNRSJdOyRBWyJ0YXJnZXQiXVtdPSRhWyJQS0NPTFVNTl9OQU1FIl07fXJldHVybiRjO31mdW5jdGlvbgp0cnVuY2F0ZV90YWJsZXMoJEUpe3JldHVybgphcHBseV9xdWVyaWVzKCJUUlVOQ0FURSBUQUJMRSIsJEUpO31mdW5jdGlvbgpkcm9wX3ZpZXdzKCRYKXtyZXR1cm4KcXVlcmllcygiRFJPUCBWSUVXICIuaW1wbG9kZSgiLCAiLGFycmF5X21hcCgndGFibGUnLCRYKSkpO31mdW5jdGlvbgpkcm9wX3RhYmxlcygkRSl7cmV0dXJuCnF1ZXJpZXMoIkRST1AgVEFCTEUgIi5pbXBsb2RlKCIsICIsYXJyYXlfbWFwKCd0YWJsZScsJEUpKSk7fWZ1bmN0aW9uCm1vdmVfdGFibGVzKCRFLCRYLCRlYSl7cmV0dXJuCmFwcGx5X3F1ZXJpZXMoIkFMVEVSIFNDSEVNQSAiLmlkZl9lc2NhcGUoJGVhKS4iIFRSQU5TRkVSIixhcnJheV9tZXJnZSgkRSwkWCkpO31mdW5jdGlvbgp0cmlnZ2VyKCRmKXskSD1nZXRfcm93cygiU0VMRUNUIHMubmFtZSBbVHJpZ2dlcl0sCkNBU0UgV0hFTiBPQkpFQ1RQUk9QRVJUWShzLmlkLCAnRXhlY0lzSW5zZXJ0VHJpZ2dlcicpID0gMSBUSEVOICdJTlNFUlQnIFdIRU4gT0JKRUNUUFJPUEVSVFkocy5pZCwgJ0V4ZWNJc1VwZGF0ZVRyaWdnZXInKSA9IDEgVEhFTiAnVVBEQVRFJyBXSEVOIE9CSkVDVFBST1BFUlRZKHMuaWQsICdFeGVjSXNEZWxldGVUcmlnZ2VyJykgPSAxIFRIRU4gJ0RFTEVURScgRU5EIFtFdmVudF0sCkNBU0UgV0hFTiBPQkpFQ1RQUk9QRVJUWShzLmlkLCAnRXhlY0lzSW5zdGVhZE9mVHJpZ2dlcicpID0gMSBUSEVOICdJTlNURUFEIE9GJyBFTFNFICdBRlRFUicgRU5EIFtUaW1pbmddLApjLnRleHQKRlJPTSBzeXNvYmplY3RzIHMKSk9JTiBzeXNjb21tZW50cyBjIE9OIHMuaWQgPSBjLmlkCldIRVJFIHMueHR5cGUgPSAnVFInIEFORCBzLm5hbWUgPSAiLnEoJGYpKTskYz1yZXNldCgkSCk7aWYoJGMpeyRjWyJTdGF0ZW1lbnQiXT1wcmVnX3JlcGxhY2UoJ35eLitcXHMrQVNcXHMrfmlzVScsJycsJGNbInRleHQiXSk7fXJldHVybiRjO31mdW5jdGlvbgp0cmlnZ2VycygkaCl7JGM9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJTRUxFQ1Qgc3lzMS5uYW1lLApDQVNFIFdIRU4gT0JKRUNUUFJPUEVSVFkoc3lzMS5pZCwgJ0V4ZWNJc0luc2VydFRyaWdnZXInKSA9IDEgVEhFTiAnSU5TRVJUJyBXSEVOIE9CSkVDVFBST1BFUlRZKHN5czEuaWQsICdFeGVjSXNVcGRhdGVUcmlnZ2VyJykgPSAxIFRIRU4gJ1VQREFURScgV0hFTiBPQkpFQ1RQUk9QRVJUWShzeXMxLmlkLCAnRXhlY0lzRGVsZXRlVHJpZ2dlcicpID0gMSBUSEVOICdERUxFVEUnIEVORCBbRXZlbnRdLApDQVNFIFdIRU4gT0JKRUNUUFJPUEVSVFkoc3lzMS5pZCwgJ0V4ZWNJc0luc3RlYWRPZlRyaWdnZXInKSA9IDEgVEhFTiAnSU5TVEVBRCBPRicgRUxTRSAnQUZURVInIEVORCBbVGltaW5nXQpGUk9NIHN5c29iamVjdHMgc3lzMQpKT0lOIHN5c29iamVjdHMgc3lzMiBPTiBzeXMxLnBhcmVudF9vYmogPSBzeXMyLmlkCldIRVJFIHN5czEueHR5cGUgPSAnVFInIEFORCBzeXMyLm5hbWUgPSAiLnEoJGgpKWFzJGEpeyRjWyRhWyJuYW1lIl1dPWFycmF5KCRhWyJUaW1pbmciXSwkYVsiRXZlbnQiXSk7fXJldHVybiRjO31mdW5jdGlvbgp0cmlnZ2VyX29wdGlvbnMoKXtyZXR1cm4KYXJyYXkoIlRpbWluZyI9PmFycmF5KCJBRlRFUiIsIklOU1RFQUQgT0YiKSwiVHlwZSI9PmFycmF5KCJBUyIpLCk7fWZ1bmN0aW9uCnNjaGVtYXMoKXtyZXR1cm4KZ2V0X3ZhbHMoIlNFTEVDVCBuYW1lIEZST00gc3lzLnNjaGVtYXMiKTt9ZnVuY3Rpb24KZ2V0X3NjaGVtYSgpe2dsb2JhbCRnO2lmKCRfR0VUWyJucyJdIT0iIil7cmV0dXJuJF9HRVRbIm5zIl07fXJldHVybiRnLT5yZXN1bHQoIlNFTEVDVCBTQ0hFTUFfTkFNRSgpIik7fWZ1bmN0aW9uCnNldF9zY2hlbWEoJEthKXtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KdXNlX3NxbCgkaWEpe3JldHVybiJVU0UgIi5pZGZfZXNjYXBlKCRpYSk7fWZ1bmN0aW9uCnNob3dfdmFyaWFibGVzKCl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCnNob3dfc3RhdHVzKCl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCnN1cHBvcnQoJHJiKXtyZXR1cm4KZXJlZygnXihzY2hlbWV8dHJpZ2dlcnx2aWV3fGRyb3BfY29sKSQnLCRyYik7fSR2PSJtc3NxbCI7JFI9YXJyYXkoKTskTGE9YXJyYXkoKTtmb3JlYWNoKGFycmF5KGxhbmcoMTIpPT5hcnJheSgidGlueWludCI9PjMsInNtYWxsaW50Ij0+NSwiaW50Ij0+MTAsImJpZ2ludCI9PjIwLCJiaXQiPT4xLCJkZWNpbWFsIj0+MCwicmVhbCI9PjEyLCJmbG9hdCI9PjUzLCJzbWFsbG1vbmV5Ij0+MTAsIm1vbmV5Ij0+MjApLGxhbmcoMTMpPT5hcnJheSgiZGF0ZSI9PjEwLCJzbWFsbGRhdGV0aW1lIj0+MTksImRhdGV0aW1lIj0+MTksImRhdGV0aW1lMiI9PjE5LCJ0aW1lIj0+OCwiZGF0ZXRpbWVvZmZzZXQiPT4xMCksbGFuZygxNCk9PmFycmF5KCJjaGFyIj0+ODAwMCwidmFyY2hhciI9PjgwMDAsInRleHQiPT4yMTQ3NDgzNjQ3LCJuY2hhciI9PjQwMDAsIm52YXJjaGFyIj0+NDAwMCwibnRleHQiPT4xMDczNzQxODIzKSxsYW5nKDE1KT0+YXJyYXkoImJpbmFyeSI9PjgwMDAsInZhcmJpbmFyeSI9PjgwMDAsImltYWdlIj0+MjE0NzQ4MzY0NyksKWFzJGQ9PiRiKXskUis9JGI7JExhWyRkXT1hcnJheV9rZXlzKCRiKTt9JG9iPWFycmF5KCk7JGdjPWFycmF5KCI9IiwiPCIsIj4iLCI8PSIsIj49IiwiIT0iLCJMSUtFIiwiTElLRSAlJSIsIklOIiwiSVMgTlVMTCIsIk5PVCBMSUtFIiwiTk9UIElOIiwiSVMgTk9UIE5VTEwiLCIiKTskZGE9YXJyYXkoImxlbiIsImxvd2VyIiwicm91bmQiLCJ1cHBlciIpOyRsYj1hcnJheSgiYXZnIiwiY291bnQiLCJjb3VudCBkaXN0aW5jdCIsIm1heCIsIm1pbiIsInN1bSIpOyROYj1hcnJheShhcnJheSgiZGF0ZXx0aW1lIj0+ImdldGRhdGUiLCksYXJyYXkoImludHxkZWNpbWFsfHJlYWx8ZmxvYXR8bW9uZXl8ZGF0ZXRpbWUiPT4iKy8tIiwiY2hhcnx0ZXh0Ij0+IisiLCkpO30kbmE9YXJyYXkoInNlcnZlciI9PiJNeVNRTCIpKyRuYTtpZighZGVmaW5lZCgiRFJJVkVSIikpeyRvYz1hcnJheSgiTXlTUUxpIiwiTXlTUUwiLCJQRE9fTXlTUUwiKTtkZWZpbmUoIkRSSVZFUiIsInNlcnZlciIpO2lmKGV4dGVuc2lvbl9sb2FkZWQoIm15c3FsaSIpKXtjbGFzcwpNaW5fREIKZXh0ZW5kcwpNeVNRTGl7dmFyJGV4dGVuc2lvbj0iTXlTUUxpIjtmdW5jdGlvbgpNaW5fREIoKXtwYXJlbnQ6OmluaXQoKTt9ZnVuY3Rpb24KY29ubmVjdCgkRiwkUCwkVCl7bXlzcWxpX3JlcG9ydChNWVNRTElfUkVQT1JUX09GRik7bGlzdCgkdGYsJExjKT1leHBsb2RlKCI6IiwkRiwyKTskYz1AJHRoaXMtPnJlYWxfY29ubmVjdCgoJEYhPSIiPyR0ZjppbmlfZ2V0KCJteXNxbGkuZGVmYXVsdF9ob3N0IikpLCgiJEYkUCIhPSIiPyRQOmluaV9nZXQoIm15c3FsaS5kZWZhdWx0X3VzZXIiKSksKCIkRiRQJFQiIT0iIj8kVDppbmlfZ2V0KCJteXNxbGkuZGVmYXVsdF9wdyIpKSxudWxsLChpc19udW1lcmljKCRMYyk/JExjOmluaV9nZXQoIm15c3FsaS5kZWZhdWx0X3BvcnQiKSksKCFpc19udW1lcmljKCRMYyk/JExjOm51bGwpKTtpZigkYyl7aWYobWV0aG9kX2V4aXN0cygkdGhpcywnc2V0X2NoYXJzZXQnKSl7JHRoaXMtPnNldF9jaGFyc2V0KCJ1dGY4Iik7fWVsc2V7JHRoaXMtPnF1ZXJ5KCJTRVQgTkFNRVMgdXRmOCIpO319cmV0dXJuJGM7fWZ1bmN0aW9uCnJlc3VsdCgkaiwkZT0wKXskaT0kdGhpcy0+cXVlcnkoJGopO2lmKCEkaSl7cmV0dXJuCmZhbHNlO30kYT0kaS0+ZmV0Y2hfYXJyYXkoKTtyZXR1cm4kYVskZV07fWZ1bmN0aW9uCnF1b3RlKCRJKXtyZXR1cm4iJyIuJHRoaXMtPmVzY2FwZV9zdHJpbmcoJEkpLiInIjt9fX1lbHNlaWYoZXh0ZW5zaW9uX2xvYWRlZCgibXlzcWwiKSl7Y2xhc3MKTWluX0RCe3ZhciRleHRlbnNpb249Ik15U1FMIiwkc2VydmVyX2luZm8sJGFmZmVjdGVkX3Jvd3MsJGVycm9yLCRfbGluaywkX3Jlc3VsdDtmdW5jdGlvbgpjb25uZWN0KCRGLCRQLCRUKXskdGhpcy0+X2xpbms9QG15c3FsX2Nvbm5lY3QoKCRGIT0iIj8kRjppbmlfZ2V0KCJteXNxbC5kZWZhdWx0X2hvc3QiKSksKCIkRiRQIiE9IiI/JFA6aW5pX2dldCgibXlzcWwuZGVmYXVsdF91c2VyIikpLCgiJEYkUCRUIiE9IiI/JFQ6aW5pX2dldCgibXlzcWwuZGVmYXVsdF9wYXNzd29yZCIpKSx0cnVlLDEzMTA3Mik7aWYoJHRoaXMtPl9saW5rKXskdGhpcy0+c2VydmVyX2luZm89bXlzcWxfZ2V0X3NlcnZlcl9pbmZvKCR0aGlzLT5fbGluayk7aWYoZnVuY3Rpb25fZXhpc3RzKCdteXNxbF9zZXRfY2hhcnNldCcpKXtteXNxbF9zZXRfY2hhcnNldCgidXRmOCIsJHRoaXMtPl9saW5rKTt9ZWxzZXskdGhpcy0+cXVlcnkoIlNFVCBOQU1FUyB1dGY4Iik7fX1lbHNleyR0aGlzLT5lcnJvcj1teXNxbF9lcnJvcigpO31yZXR1cm4oYm9vbCkkdGhpcy0+X2xpbms7fWZ1bmN0aW9uCnF1b3RlKCRJKXtyZXR1cm4iJyIubXlzcWxfcmVhbF9lc2NhcGVfc3RyaW5nKCRJLCR0aGlzLT5fbGluaykuIiciO31mdW5jdGlvbgpzZWxlY3RfZGIoJGlhKXtyZXR1cm4KbXlzcWxfc2VsZWN0X2RiKCRpYSwkdGhpcy0+X2xpbmspO31mdW5jdGlvbgpxdWVyeSgkaiwkZGI9ZmFsc2UpeyRpPUAoJGRiP215c3FsX3VuYnVmZmVyZWRfcXVlcnkoJGosJHRoaXMtPl9saW5rKTpteXNxbF9xdWVyeSgkaiwkdGhpcy0+X2xpbmspKTtpZighJGkpeyR0aGlzLT5lcnJvcj1teXNxbF9lcnJvcigkdGhpcy0+X2xpbmspO3JldHVybgpmYWxzZTt9aWYoJGk9PT10cnVlKXskdGhpcy0+YWZmZWN0ZWRfcm93cz1teXNxbF9hZmZlY3RlZF9yb3dzKCR0aGlzLT5fbGluayk7JHRoaXMtPmluZm89bXlzcWxfaW5mbygkdGhpcy0+X2xpbmspO3JldHVybgp0cnVlO31yZXR1cm4KbmV3Ck1pbl9SZXN1bHQoJGkpO31mdW5jdGlvbgptdWx0aV9xdWVyeSgkail7cmV0dXJuJHRoaXMtPl9yZXN1bHQ9JHRoaXMtPnF1ZXJ5KCRqKTt9ZnVuY3Rpb24Kc3RvcmVfcmVzdWx0KCl7cmV0dXJuJHRoaXMtPl9yZXN1bHQ7fWZ1bmN0aW9uCm5leHRfcmVzdWx0KCl7cmV0dXJuCmZhbHNlO31mdW5jdGlvbgpyZXN1bHQoJGosJGU9MCl7JGk9JHRoaXMtPnF1ZXJ5KCRqKTtpZighJGl8fCEkaS0+bnVtX3Jvd3Mpe3JldHVybgpmYWxzZTt9cmV0dXJuCm15c3FsX3Jlc3VsdCgkaS0+X3Jlc3VsdCwwLCRlKTt9fWNsYXNzCk1pbl9SZXN1bHR7dmFyJG51bV9yb3dzLCRfcmVzdWx0LCRfb2Zmc2V0PTA7ZnVuY3Rpb24KTWluX1Jlc3VsdCgkaSl7JHRoaXMtPl9yZXN1bHQ9JGk7JHRoaXMtPm51bV9yb3dzPW15c3FsX251bV9yb3dzKCRpKTt9ZnVuY3Rpb24KZmV0Y2hfYXNzb2MoKXtyZXR1cm4KbXlzcWxfZmV0Y2hfYXNzb2MoJHRoaXMtPl9yZXN1bHQpO31mdW5jdGlvbgpmZXRjaF9yb3coKXtyZXR1cm4KbXlzcWxfZmV0Y2hfcm93KCR0aGlzLT5fcmVzdWx0KTt9ZnVuY3Rpb24KZmV0Y2hfZmllbGQoKXskYz1teXNxbF9mZXRjaF9maWVsZCgkdGhpcy0+X3Jlc3VsdCwkdGhpcy0+X29mZnNldCsrKTskYy0+b3JndGFibGU9JGMtPnRhYmxlOyRjLT5vcmduYW1lPSRjLT5uYW1lOyRjLT5jaGFyc2V0bnI9KCRjLT5ibG9iPzYzOjApO3JldHVybiRjO31mdW5jdGlvbgpfX2Rlc3RydWN0KCl7bXlzcWxfZnJlZV9yZXN1bHQoJHRoaXMtPl9yZXN1bHQpO319fWVsc2VpZihleHRlbnNpb25fbG9hZGVkKCJwZG9fbXlzcWwiKSl7Y2xhc3MKTWluX0RCCmV4dGVuZHMKTWluX1BET3t2YXIkZXh0ZW5zaW9uPSJQRE9fTXlTUUwiO2Z1bmN0aW9uCmNvbm5lY3QoJEYsJFAsJFQpeyR0aGlzLT5kc24oIm15c3FsOmhvc3Q9Ii5zdHJfcmVwbGFjZSgiOiIsIjt1bml4X3NvY2tldD0iLHByZWdfcmVwbGFjZSgnfjooXFxkKX4nLCc7cG9ydD1cXDEnLCRGKSksJFAsJFQpOyR0aGlzLT5xdWVyeSgiU0VUIE5BTUVTIHV0ZjgiKTtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24Kc2VsZWN0X2RiKCRpYSl7cmV0dXJuJHRoaXMtPnF1ZXJ5KCJVU0UgIi5pZGZfZXNjYXBlKCRpYSkpO31mdW5jdGlvbgpxdWVyeSgkaiwkZGI9ZmFsc2UpeyR0aGlzLT5zZXRBdHRyaWJ1dGUoMTAwMCwhJGRiKTtyZXR1cm4KcGFyZW50OjpxdWVyeSgkaiwkZGIpO319fWZ1bmN0aW9uCmlkZl9lc2NhcGUoJE4pe3JldHVybiJgIi5zdHJfcmVwbGFjZSgiYCIsImBgIiwkTikuImAiO31mdW5jdGlvbgp0YWJsZSgkTil7cmV0dXJuCmlkZl9lc2NhcGUoJE4pO31mdW5jdGlvbgpjb25uZWN0KCl7Z2xvYmFsJG87JGc9bmV3Ck1pbl9EQjskeWE9JG8tPmNyZWRlbnRpYWxzKCk7aWYoJGctPmNvbm5lY3QoJHlhWzBdLCR5YVsxXSwkeWFbMl0pKXskZy0+cXVlcnkoIlNFVCBzcWxfcXVvdGVfc2hvd19jcmVhdGUgPSAxIik7cmV0dXJuJGc7fXJldHVybiRnLT5lcnJvcjt9ZnVuY3Rpb24KZ2V0X2RhdGFiYXNlcygkamY9dHJ1ZSl7Z2xvYmFsJGc7JGM9JmdldF9zZXNzaW9uKCJkYnMiKTtpZighaXNzZXQoJGMpKXtpZigkamYpe3Jlc3RhcnRfc2Vzc2lvbigpO29iX2ZsdXNoKCk7Zmx1c2goKTt9JGM9Z2V0X3ZhbHMoJGctPnNlcnZlcl9pbmZvPj01PyJTRUxFQ1QgU0NIRU1BX05BTUUgRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEuU0NIRU1BVEEiOiJTSE9XIERBVEFCQVNFUyIpO31yZXR1cm4kYzt9ZnVuY3Rpb24KbGltaXQoJGosJHMsJE8sJEw9MCwkV2E9IiAiKXtyZXR1cm4iICRqJHMiLihpc3NldCgkTyk/JFdhLiJMSU1JVCAkTyIuKCRMPyIgT0ZGU0VUICRMIjoiIik6IiIpO31mdW5jdGlvbgpsaW1pdDEoJGosJHMpe3JldHVybgpsaW1pdCgkaiwkcywxKTt9ZnVuY3Rpb24KZGJfY29sbGF0aW9uKCR0LCRaKXtnbG9iYWwkZzskYz1udWxsOyRsYT0kZy0+cmVzdWx0KCJTSE9XIENSRUFURSBEQVRBQkFTRSAiLmlkZl9lc2NhcGUoJHQpLDEpO2lmKHByZWdfbWF0Y2goJ34gQ09MTEFURSAoW14gXSspficsJGxhLCRrKSl7JGM9JGtbMV07fWVsc2VpZihwcmVnX21hdGNoKCd+IENIQVJBQ1RFUiBTRVQgKFteIF0rKX4nLCRsYSwkaykpeyRjPSRaWyRrWzFdXVstMV07fXJldHVybiRjO31mdW5jdGlvbgplbmdpbmVzKCl7JGM9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJTSE9XIEVOR0lORVMiKWFzJGEpe2lmKGVyZWcoIllFU3xERUZBVUxUIiwkYVsiU3VwcG9ydCJdKSl7JGNbXT0kYVsiRW5naW5lIl07fX1yZXR1cm4kYzt9ZnVuY3Rpb24KbG9nZ2VkX3VzZXIoKXtnbG9iYWwkZztyZXR1cm4kZy0+cmVzdWx0KCJTRUxFQ1QgVVNFUigpIik7fWZ1bmN0aW9uCnRhYmxlc19saXN0KCl7Z2xvYmFsJGc7cmV0dXJuCmdldF9rZXlfdmFscygiU0hPVyIuKCRnLT5zZXJ2ZXJfaW5mbz49NT8iIEZVTEwiOiIiKS4iIFRBQkxFUyIpO31mdW5jdGlvbgpjb3VudF90YWJsZXMoJF8peyRjPWFycmF5KCk7Zm9yZWFjaCgkXwphcyR0KXskY1skdF09Y291bnQoZ2V0X3ZhbHMoIlNIT1cgVEFCTEVTIElOICIuaWRmX2VzY2FwZSgkdCkpKTt9cmV0dXJuJGM7fWZ1bmN0aW9uCnRhYmxlX3N0YXR1cygkZj0iIil7JGM9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJTSE9XIFRBQkxFIFNUQVRVUyIuKCRmIT0iIj8iIExJS0UgIi5xKGFkZGNzbGFzaGVzKCRmLCIlXyIpKToiIikpYXMkYSl7aWYoJGFbIkVuZ2luZSJdPT0iSW5ub0RCIil7JGFbIkNvbW1lbnQiXT1wcmVnX3JlcGxhY2UoJ34oPzooLispOyApP0lubm9EQiBmcmVlOiAuKn4nLCdcXDEnLCRhWyJDb21tZW50Il0pO31pZighaXNzZXQoJGFbIlJvd3MiXSkpeyRhWyJDb21tZW50Il09IiI7fWlmKCRmIT0iIil7cmV0dXJuJGE7fSRjWyRhWyJOYW1lIl1dPSRhO31yZXR1cm4kYzt9ZnVuY3Rpb24KaXNfdmlldygkRCl7cmV0dXJuIWlzc2V0KCREWyJSb3dzIl0pO31mdW5jdGlvbgpma19zdXBwb3J0KCREKXtyZXR1cm4oJERbIkVuZ2luZSJdPT0iSW5ub0RCIik7fWZ1bmN0aW9uCmZpZWxkcygkaCl7JGM9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJTSE9XIEZVTEwgQ09MVU1OUyBGUk9NICIudGFibGUoJGgpKWFzJGEpe3ByZWdfbWF0Y2goJ35eKFteKCBdKykoPzpcXCgoLispXFwpKT8oIHVuc2lnbmVkKT8oIHplcm9maWxsKT8kficsJGFbIlR5cGUiXSwkayk7JGNbJGFbIkZpZWxkIl1dPWFycmF5KCJmaWVsZCI9PiRhWyJGaWVsZCJdLCJmdWxsX3R5cGUiPT4kYVsiVHlwZSJdLCJ0eXBlIj0+JGtbMV0sImxlbmd0aCI9PiRrWzJdLCJ1bnNpZ25lZCI9Pmx0cmltKCRrWzNdLiRrWzRdKSwiZGVmYXVsdCI9PigkYVsiRGVmYXVsdCJdIT0iInx8ZXJlZygiY2hhciIsJGtbMV0pPyRhWyJEZWZhdWx0Il06bnVsbCksIm51bGwiPT4oJGFbIk51bGwiXT09IllFUyIpLCJhdXRvX2luY3JlbWVudCI9PigkYVsiRXh0cmEiXT09ImF1dG9faW5jcmVtZW50IiksIm9uX3VwZGF0ZSI9PihlcmVnaSgnXm9uIHVwZGF0ZSAoLispJywkYVsiRXh0cmEiXSwkayk/JGtbMV06IiIpLCJjb2xsYXRpb24iPT4kYVsiQ29sbGF0aW9uIl0sInByaXZpbGVnZXMiPT5hcnJheV9mbGlwKGV4cGxvZGUoIiwiLCRhWyJQcml2aWxlZ2VzIl0pKSwiY29tbWVudCI9PiRhWyJDb21tZW50Il0sInByaW1hcnkiPT4oJGFbIktleSJdPT0iUFJJIiksKTt9cmV0dXJuJGM7fWZ1bmN0aW9uCmluZGV4ZXMoJGgsJEc9bnVsbCl7Z2xvYmFsJGc7aWYoIWlzX29iamVjdCgkRykpeyRHPSRnO30kYz1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIlNIT1cgSU5ERVggRlJPTSAiLnRhYmxlKCRoKSwkRylhcyRhKXskY1skYVsiS2V5X25hbWUiXV1bInR5cGUiXT0oJGFbIktleV9uYW1lIl09PSJQUklNQVJZIj8iUFJJTUFSWSI6KCRhWyJJbmRleF90eXBlIl09PSJGVUxMVEVYVCI/IkZVTExURVhUIjooJGFbIk5vbl91bmlxdWUiXT8iSU5ERVgiOiJVTklRVUUiKSkpOyRjWyRhWyJLZXlfbmFtZSJdXVsiY29sdW1ucyJdW109JGFbIkNvbHVtbl9uYW1lIl07JGNbJGFbIktleV9uYW1lIl1dWyJsZW5ndGhzIl1bXT0kYVsiU3ViX3BhcnQiXTt9cmV0dXJuJGM7fWZ1bmN0aW9uCmZvcmVpZ25fa2V5cygkaCl7Z2xvYmFsJGcsJGZiO3N0YXRpYyRiYT0nYCg/OlteYF18YGApK2AnOyRjPWFycmF5KCk7JGlmPSRnLT5yZXN1bHQoIlNIT1cgQ1JFQVRFIFRBQkxFICIudGFibGUoJGgpLDEpO2lmKCRpZil7cHJlZ19tYXRjaF9hbGwoIn5DT05TVFJBSU5UICgkYmEpIEZPUkVJR04gS0VZIFxcKCgoPzokYmEsPyA/KSspXFwpIFJFRkVSRU5DRVMgKCRiYSkoPzpcXC4oJGJhKSk/IFxcKCgoPzokYmEsPyA/KSspXFwpKD86IE9OIERFTEVURSAoIi5pbXBsb2RlKCJ8IiwkZmIpLiIpKT8oPzogT04gVVBEQVRFICgiLmltcGxvZGUoInwiLCRmYikuIikpP34iLCRpZiwkb2EsUFJFR19TRVRfT1JERVIpO2ZvcmVhY2goJG9hCmFzJGspe3ByZWdfbWF0Y2hfYWxsKCJ+JGJhfiIsJGtbMl0sJEdhKTtwcmVnX21hdGNoX2FsbCgifiRiYX4iLCRrWzVdLCRlYSk7JGNbaWRmX3VuZXNjYXBlKCRrWzFdKV09YXJyYXkoImRiIj0+aWRmX3VuZXNjYXBlKCRrWzRdIT0iIj8ka1szXToka1s0XSksInRhYmxlIj0+aWRmX3VuZXNjYXBlKCRrWzRdIT0iIj8ka1s0XToka1szXSksInNvdXJjZSI9PmFycmF5X21hcCgnaWRmX3VuZXNjYXBlJywkR2FbMF0pLCJ0YXJnZXQiPT5hcnJheV9tYXAoJ2lkZl91bmVzY2FwZScsJGVhWzBdKSwib25fZGVsZXRlIj0+JGtbNl0sIm9uX3VwZGF0ZSI9PiRrWzddLCk7fX1yZXR1cm4kYzt9ZnVuY3Rpb24KdmlldygkZil7Z2xvYmFsJGc7cmV0dXJuCmFycmF5KCJzZWxlY3QiPT5wcmVnX3JlcGxhY2UoJ35eKD86W15gXXxgW15gXSpgKSpcXHMrQVNcXHMrfmlzVScsJycsJGctPnJlc3VsdCgiU0hPVyBDUkVBVEUgVklFVyAiLnRhYmxlKCRmKSwxKSkpO31mdW5jdGlvbgpjb2xsYXRpb25zKCl7JGM9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJTSE9XIENPTExBVElPTiIpYXMkYSl7aWYoJGFbIkRlZmF1bHQiXSl7JGNbJGFbIkNoYXJzZXQiXV1bLTFdPSRhWyJDb2xsYXRpb24iXTt9ZWxzZXskY1skYVsiQ2hhcnNldCJdXVtdPSRhWyJDb2xsYXRpb24iXTt9fWtzb3J0KCRjKTtmb3JlYWNoKCRjCmFzJGQ9PiRiKXthc29ydCgkY1skZF0pO31yZXR1cm4kYzt9ZnVuY3Rpb24KaW5mb3JtYXRpb25fc2NoZW1hKCR0KXtnbG9iYWwkZztyZXR1cm4oJGctPnNlcnZlcl9pbmZvPj01JiYkdD09ImluZm9ybWF0aW9uX3NjaGVtYSIpO31mdW5jdGlvbgplcnJvcigpe2dsb2JhbCRnO3JldHVybgpoKHByZWdfcmVwbGFjZSgnfl5Zb3UgaGF2ZSBhbiBlcnJvci4qc3ludGF4IHRvIHVzZX5VJywiU3ludGF4IGVycm9yIiwkZy0+ZXJyb3IpKTt9ZnVuY3Rpb24KZXhhY3RfdmFsdWUoJGIpe3JldHVybgpxKCRiKS4iIENPTExBVEUgdXRmOF9iaW4iO31mdW5jdGlvbgpjcmVhdGVfZGF0YWJhc2UoJHQsJFUpe3NldF9zZXNzaW9uKCJkYnMiLG51bGwpO3JldHVybgpxdWVyaWVzKCJDUkVBVEUgREFUQUJBU0UgIi5pZGZfZXNjYXBlKCR0KS4oJFU/IiBDT0xMQVRFICIucSgkVSk6IiIpKTt9ZnVuY3Rpb24KZHJvcF9kYXRhYmFzZXMoJF8pe3NldF9zZXNzaW9uKCJkYnMiLG51bGwpO3JldHVybgphcHBseV9xdWVyaWVzKCJEUk9QIERBVEFCQVNFIiwkXywnaWRmX2VzY2FwZScpO31mdW5jdGlvbgpyZW5hbWVfZGF0YWJhc2UoJGYsJFUpe2lmKGNyZWF0ZV9kYXRhYmFzZSgkZiwkVSkpeyRkYz1hcnJheSgpO2ZvcmVhY2godGFibGVzX2xpc3QoKWFzJGg9PiR6KXskZGNbXT10YWJsZSgkaCkuIiBUTyAiLmlkZl9lc2NhcGUoJGYpLiIuIi50YWJsZSgkaCk7fWlmKCEkZGN8fHF1ZXJpZXMoIlJFTkFNRSBUQUJMRSAiLmltcGxvZGUoIiwgIiwkZGMpKSl7cXVlcmllcygiRFJPUCBEQVRBQkFTRSAiLmlkZl9lc2NhcGUoREIpKTtyZXR1cm4KdHJ1ZTt9fXJldHVybgpmYWxzZTt9ZnVuY3Rpb24KYXV0b19pbmNyZW1lbnQoKXskRGQ9IiBQUklNQVJZIEtFWSI7aWYoJF9HRVRbImNyZWF0ZSJdIT0iIiYmJF9QT1NUWyJhdXRvX2luY3JlbWVudF9jb2wiXSl7Zm9yZWFjaChpbmRleGVzKCRfR0VUWyJjcmVhdGUiXSlhcyR4KXtpZihpbl9hcnJheSgkX1BPU1RbImZpZWxkcyJdWyRfUE9TVFsiYXV0b19pbmNyZW1lbnRfY29sIl1dWyJvcmlnIl0sJHhbImNvbHVtbnMiXSx0cnVlKSl7JERkPSIiO2JyZWFrO31pZigkeFsidHlwZSJdPT0iUFJJTUFSWSIpeyREZD0iIFVOSVFVRSI7fX19cmV0dXJuIiBBVVRPX0lOQ1JFTUVOVCREZCI7fWZ1bmN0aW9uCmFsdGVyX3RhYmxlKCRoLCRmLCRwLCRPYSwkX2EsJHliLCRVLCRTYSwkdmIpeyR1PWFycmF5KCk7Zm9yZWFjaCgkcAphcyRlKXskdVtdPSgkZVsxXT8oJGghPSIiPygkZVswXSE9IiI/IkNIQU5HRSAiLmlkZl9lc2NhcGUoJGVbMF0pOiJBREQiKToiICIpLiIgIi5pbXBsb2RlKCRlWzFdKS4oJGghPSIiPyIgJGVbMl0iOiIiKToiRFJPUCAiLmlkZl9lc2NhcGUoJGVbMF0pKTt9JHU9YXJyYXlfbWVyZ2UoJHUsJE9hKTskZmM9IkNPTU1FTlQ9Ii5xKCRfYSkuKCR5Yj8iIEVOR0lORT0iLnEoJHliKToiIikuKCRVPyIgQ09MTEFURSAiLnEoJFUpOiIiKS4oJFNhIT0iIj8iIEFVVE9fSU5DUkVNRU5UPSRTYSI6IiIpLiR2YjtpZigkaD09IiIpe3JldHVybgpxdWVyaWVzKCJDUkVBVEUgVEFCTEUgIi50YWJsZSgkZikuIiAoXG4iLmltcGxvZGUoIixcbiIsJHUpLiJcbikgJGZjIik7fWlmKCRoIT0kZil7JHVbXT0iUkVOQU1FIFRPICIudGFibGUoJGYpO30kdVtdPSRmYztyZXR1cm4KcXVlcmllcygiQUxURVIgVEFCTEUgIi50YWJsZSgkaCkuIlxuIi5pbXBsb2RlKCIsXG4iLCR1KSk7fWZ1bmN0aW9uCmFsdGVyX2luZGV4ZXMoJGgsJHUpe2ZvcmVhY2goJHUKYXMkZD0+JGIpeyR1WyRkXT0oJGJbMl0/IlxuRFJPUCBJTkRFWCAiOiJcbkFERCAkYlswXSAiLigkYlswXT09IlBSSU1BUlkiPyJLRVkgIjoiIikpLiRiWzFdO31yZXR1cm4KcXVlcmllcygiQUxURVIgVEFCTEUgIi50YWJsZSgkaCkuaW1wbG9kZSgiLCIsJHUpKTt9ZnVuY3Rpb24KdHJ1bmNhdGVfdGFibGVzKCRFKXtyZXR1cm4KYXBwbHlfcXVlcmllcygiVFJVTkNBVEUgVEFCTEUiLCRFKTt9ZnVuY3Rpb24KZHJvcF92aWV3cygkWCl7cmV0dXJuCnF1ZXJpZXMoIkRST1AgVklFVyAiLmltcGxvZGUoIiwgIixhcnJheV9tYXAoJ3RhYmxlJywkWCkpKTt9ZnVuY3Rpb24KZHJvcF90YWJsZXMoJEUpe3JldHVybgpxdWVyaWVzKCJEUk9QIFRBQkxFICIuaW1wbG9kZSgiLCAiLGFycmF5X21hcCgndGFibGUnLCRFKSkpO31mdW5jdGlvbgptb3ZlX3RhYmxlcygkRSwkWCwkZWEpeyRkYz1hcnJheSgpO2ZvcmVhY2goYXJyYXlfbWVyZ2UoJEUsJFgpYXMkaCl7JGRjW109dGFibGUoJGgpLiIgVE8gIi5pZGZfZXNjYXBlKCRlYSkuIi4iLnRhYmxlKCRoKTt9cmV0dXJuCnF1ZXJpZXMoIlJFTkFNRSBUQUJMRSAiLmltcGxvZGUoIiwgIiwkZGMpKTt9ZnVuY3Rpb24KY29weV90YWJsZXMoJEUsJFgsJGVhKXtmb3JlYWNoKCRFCmFzJGgpeyRmPSgkZWE9PURCP3RhYmxlKCJjb3B5XyRoIik6aWRmX2VzY2FwZSgkZWEpLiIuIi50YWJsZSgkaCkpO2lmKCFxdWVyaWVzKCJEUk9QIFRBQkxFIElGIEVYSVNUUyAkZiIpfHwhcXVlcmllcygiQ1JFQVRFIFRBQkxFICRmIExJS0UgIi50YWJsZSgkaCkpfHwhcXVlcmllcygiSU5TRVJUIElOVE8gJGYgU0VMRUNUICogRlJPTSAiLnRhYmxlKCRoKSkpe3JldHVybgpmYWxzZTt9fWZvcmVhY2goJFgKYXMkaCl7JGY9KCRlYT09REI/dGFibGUoImNvcHlfJGgiKTppZGZfZXNjYXBlKCRlYSkuIi4iLnRhYmxlKCRoKSk7JGNjPXZpZXcoJGgpO2lmKCFxdWVyaWVzKCJEUk9QIFZJRVcgSUYgRVhJU1RTICRmIil8fCFxdWVyaWVzKCJDUkVBVEUgVklFVyAkZiBBUyAkY2Nbc2VsZWN0XSIpKXtyZXR1cm4KZmFsc2U7fX1yZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KdHJpZ2dlcigkZil7JEg9Z2V0X3Jvd3MoIlNIT1cgVFJJR0dFUlMgV0hFUkUgYFRyaWdnZXJgID0gIi5xKCRmKSk7cmV0dXJuCnJlc2V0KCRIKTt9ZnVuY3Rpb24KdHJpZ2dlcnMoJGgpeyRjPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiU0hPVyBUUklHR0VSUyBMSUtFICIucShhZGRjc2xhc2hlcygkaCwiJV8iKSkpYXMkYSl7JGNbJGFbIlRyaWdnZXIiXV09YXJyYXkoJGFbIlRpbWluZyJdLCRhWyJFdmVudCJdKTt9cmV0dXJuJGM7fWZ1bmN0aW9uCnRyaWdnZXJfb3B0aW9ucygpe3JldHVybgphcnJheSgiVGltaW5nIj0+YXJyYXkoIkJFRk9SRSIsIkFGVEVSIiksIlR5cGUiPT5hcnJheSgiRk9SIEVBQ0ggUk9XIiksKTt9ZnVuY3Rpb24Kcm91dGluZSgkZiwkeil7Z2xvYmFsJGcsJEdiLCRqYywkUjska2Y9YXJyYXkoImJvb2wiLCJib29sZWFuIiwiaW50ZWdlciIsImRvdWJsZSBwcmVjaXNpb24iLCJyZWFsIiwiZGVjIiwibnVtZXJpYyIsImZpeGVkIiwibmF0aW9uYWwgY2hhciIsIm5hdGlvbmFsIHZhcmNoYXIiKTskQ2U9IigoIi5pbXBsb2RlKCJ8IixhcnJheV9tZXJnZShhcnJheV9rZXlzKCRSKSwka2YpKS4iKSg/OlxccypcXCgoKD86W14nXCIpXSp8JEdiKSspXFwpKT9cXHMqKHplcm9maWxsXFxzKik/KHVuc2lnbmVkKD86XFxzK3plcm9maWxsKT8pPykoPzpcXHMqKD86Q0hBUlNFVHxDSEFSQUNURVJcXHMrU0VUKVxccypbJ1wiXT8oW14nXCJcXHNdKylbJ1wiXT8pPyI7JGJhPSJcXHMqKCIuKCR6PT0iRlVOQ1RJT04iPyIiOmltcGxvZGUoInwiLCRqYykpLiIpP1xccyooPzpgKCg/OlteYF18YGApKilgXFxzKnxcXGIoXFxTKylcXHMrKSRDZSI7JGxhPSRnLT5yZXN1bHQoIlNIT1cgQ1JFQVRFICR6ICIuaWRmX2VzY2FwZSgkZiksMik7cHJlZ19tYXRjaCgiflxcKCgoPzokYmFcXHMqLD8pKilcXCkiLigkej09IkZVTkNUSU9OIj8iXFxzKlJFVFVSTlNcXHMrJENlIjoiIikuIlxccyooLiopfmlzIiwkbGEsJGspOyRwPWFycmF5KCk7cHJlZ19tYXRjaF9hbGwoIn4kYmFcXHMqLD9+aXMiLCRrWzFdLCRvYSxQUkVHX1NFVF9PUkRFUik7Zm9yZWFjaCgkb2EKYXMkWmEpeyRmPXN0cl9yZXBsYWNlKCJgYCIsImAiLCRaYVsyXSkuJFphWzNdOyRwW109YXJyYXkoImZpZWxkIj0+JGYsInR5cGUiPT5zdHJ0b2xvd2VyKCRaYVs1XSksImxlbmd0aCI9PnByZWdfcmVwbGFjZV9jYWxsYmFjaygifiRHYn5zIiwnbm9ybWFsaXplX2VudW0nLCRaYVs2XSksInVuc2lnbmVkIj0+c3RydG9sb3dlcihwcmVnX3JlcGxhY2UoJ35cXHMrficsJyAnLHRyaW0oIiRaYVs4XSAkWmFbN10iKSkpLCJmdWxsX3R5cGUiPT4kWmFbNF0sImlub3V0Ij0+c3RydG91cHBlcigkWmFbMV0pLCJjb2xsYXRpb24iPT5zdHJ0b2xvd2VyKCRaYVs5XSksKTt9aWYoJHohPSJGVU5DVElPTiIpe3JldHVybgphcnJheSgiZmllbGRzIj0+JHAsImRlZmluaXRpb24iPT4ka1sxMV0pO31yZXR1cm4KYXJyYXkoImZpZWxkcyI9PiRwLCJyZXR1cm5zIj0+YXJyYXkoInR5cGUiPT4ka1sxMl0sImxlbmd0aCI9PiRrWzEzXSwidW5zaWduZWQiPT4ka1sxNV0sImNvbGxhdGlvbiI9PiRrWzE2XSksImRlZmluaXRpb24iPT4ka1sxN10sKTt9ZnVuY3Rpb24Kcm91dGluZXMoKXtyZXR1cm4KZ2V0X3Jvd3MoIlNFTEVDVCAqIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLlJPVVRJTkVTIFdIRVJFIFJPVVRJTkVfU0NIRU1BID0gIi5xKERCKSk7fWZ1bmN0aW9uCmJlZ2luKCl7cmV0dXJuCnF1ZXJpZXMoIkJFR0lOIik7fWZ1bmN0aW9uCmluc2VydF9pbnRvKCRoLCRyKXtyZXR1cm4KcXVlcmllcygiSU5TRVJUIElOVE8gIi50YWJsZSgkaCkuIiAoIi5pbXBsb2RlKCIsICIsYXJyYXlfa2V5cygkcikpLiIpXG5WQUxVRVMgKCIuaW1wbG9kZSgiLCAiLCRyKS4iKSIpO31mdW5jdGlvbgppbnNlcnRfdXBkYXRlKCRoLCRyLCRRYSl7Zm9yZWFjaCgkcgphcyRkPT4kYil7JHJbJGRdPSIkZCA9ICRiIjt9JHFhPWltcGxvZGUoIiwgIiwkcik7cmV0dXJuCnF1ZXJpZXMoIklOU0VSVCBJTlRPICIudGFibGUoJGgpLiIgU0VUICRxYSBPTiBEVVBMSUNBVEUgS0VZIFVQREFURSAkcWEiKTt9ZnVuY3Rpb24KbGFzdF9pZCgpe2dsb2JhbCRnO3JldHVybiRnLT5yZXN1bHQoIlNFTEVDVCBMQVNUX0lOU0VSVF9JRCgpIik7fWZ1bmN0aW9uCmV4cGxhaW4oJGcsJGope3JldHVybiRnLT5xdWVyeSgiRVhQTEFJTiAkaiIpO31mdW5jdGlvbgp0eXBlcygpe3JldHVybgphcnJheSgpO31mdW5jdGlvbgpzY2hlbWFzKCl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCmdldF9zY2hlbWEoKXtyZXR1cm4iIjt9ZnVuY3Rpb24Kc2V0X3NjaGVtYSgkS2Epe3JldHVybgp0cnVlO31mdW5jdGlvbgpjcmVhdGVfc3FsKCRoLCRTYSl7Z2xvYmFsJGc7JGM9JGctPnJlc3VsdCgiU0hPVyBDUkVBVEUgVEFCTEUgIi50YWJsZSgkaCksMSk7aWYoISRTYSl7JGM9cHJlZ19yZXBsYWNlKCd+IEFVVE9fSU5DUkVNRU5UPVxcZCt+JywnJywkYyk7fXJldHVybiRjO31mdW5jdGlvbgp0cnVuY2F0ZV9zcWwoJGgpe3JldHVybiJUUlVOQ0FURSAiLnRhYmxlKCRoKTt9ZnVuY3Rpb24KdXNlX3NxbCgkaWEpe3JldHVybiJVU0UgIi5pZGZfZXNjYXBlKCRpYSk7fWZ1bmN0aW9uCnRyaWdnZXJfc3FsKCRoLCRWKXskYz0iIjtmb3JlYWNoKGdldF9yb3dzKCJTSE9XIFRSSUdHRVJTIExJS0UgIi5xKGFkZGNzbGFzaGVzKCRoLCIlXyIpKSxudWxsLCItLSAiKWFzJGEpeyRjLj0iXG4iLigkVj09J0NSRUFURStBTFRFUic/IkRST1AgVFJJR0dFUiBJRiBFWElTVFMgIi5pZGZfZXNjYXBlKCRhWyJUcmlnZ2VyIl0pLiI7O1xuIjoiIikuIkNSRUFURSBUUklHR0VSICIuaWRmX2VzY2FwZSgkYVsiVHJpZ2dlciJdKS4iICRhW1RpbWluZ10gJGFbRXZlbnRdIE9OICIudGFibGUoJGFbIlRhYmxlIl0pLiIgRk9SIEVBQ0ggUk9XXG4kYVtTdGF0ZW1lbnRdOztcbiI7fXJldHVybiRjO31mdW5jdGlvbgpzaG93X3ZhcmlhYmxlcygpe3JldHVybgpnZXRfa2V5X3ZhbHMoIlNIT1cgVkFSSUFCTEVTIik7fWZ1bmN0aW9uCnNob3dfc3RhdHVzKCl7cmV0dXJuCmdldF9rZXlfdmFscygiU0hPVyBTVEFUVVMiKTt9ZnVuY3Rpb24Kc3VwcG9ydCgkcmIpe2dsb2JhbCRnO3JldHVybiFlcmVnKCJzY2hlbWV8c2VxdWVuY2V8dHlwZSIuKCRnLT5zZXJ2ZXJfaW5mbzw1LjE/InxldmVudHxwYXJ0aXRpb25pbmciLigkZy0+c2VydmVyX2luZm88NT8ifHZpZXd8cm91dGluZXx0cmlnZ2VyIjoiIik6IiIpLCRyYik7fSR2PSJzcWwiOyRSPWFycmF5KCk7JExhPWFycmF5KCk7Zm9yZWFjaChhcnJheShsYW5nKDEyKT0+YXJyYXkoInRpbnlpbnQiPT4zLCJzbWFsbGludCI9PjUsIm1lZGl1bWludCI9PjgsImludCI9PjEwLCJiaWdpbnQiPT4yMCwiZGVjaW1hbCI9PjY2LCJmbG9hdCI9PjEyLCJkb3VibGUiPT4yMSksbGFuZygxMyk9PmFycmF5KCJkYXRlIj0+MTAsImRhdGV0aW1lIj0+MTksInRpbWVzdGFtcCI9PjE5LCJ0aW1lIj0+MTAsInllYXIiPT40KSxsYW5nKDE0KT0+YXJyYXkoImNoYXIiPT4yNTUsInZhcmNoYXIiPT42NTUzNSwidGlueXRleHQiPT4yNTUsInRleHQiPT42NTUzNSwibWVkaXVtdGV4dCI9PjE2Nzc3MjE1LCJsb25ndGV4dCI9PjQyOTQ5NjcyOTUpLGxhbmcoMTUpPT5hcnJheSgiYml0Ij0+MjAsImJpbmFyeSI9PjI1NSwidmFyYmluYXJ5Ij0+NjU1MzUsInRpbnlibG9iIj0+MjU1LCJibG9iIj0+NjU1MzUsIm1lZGl1bWJsb2IiPT4xNjc3NzIxNSwibG9uZ2Jsb2IiPT40Mjk0OTY3Mjk1KSxsYW5nKDE4KT0+YXJyYXkoImVudW0iPT42NTUzNSwic2V0Ij0+NjQpLClhcyRkPT4kYil7JFIrPSRiOyRMYVskZF09YXJyYXlfa2V5cygkYik7fSRvYj1hcnJheSgidW5zaWduZWQiLCJ6ZXJvZmlsbCIsInVuc2lnbmVkIHplcm9maWxsIik7JGdjPWFycmF5KCI9IiwiPCIsIj4iLCI8PSIsIj49IiwiIT0iLCJMSUtFIiwiTElLRSAlJSIsIlJFR0VYUCIsIklOIiwiSVMgTlVMTCIsIk5PVCBMSUtFIiwiTk9UIFJFR0VYUCIsIk5PVCBJTiIsIklTIE5PVCBOVUxMIiwiIik7JGRhPWFycmF5KCJjaGFyX2xlbmd0aCIsImRhdGUiLCJmcm9tX3VuaXh0aW1lIiwiaGV4IiwibG93ZXIiLCJyb3VuZCIsInNlY190b190aW1lIiwidGltZV90b19zZWMiLCJ1cHBlciIpOyRsYj1hcnJheSgiYXZnIiwiY291bnQiLCJjb3VudCBkaXN0aW5jdCIsImdyb3VwX2NvbmNhdCIsIm1heCIsIm1pbiIsInN1bSIpOyROYj1hcnJheShhcnJheSgiY2hhciI9PiJtZDUvc2hhMS9wYXNzd29yZC9lbmNyeXB0L3V1aWQiLCJiaW5hcnkiPT4ibWQ1L3NoYTEvaGV4IiwiZGF0ZXx0aW1lIj0+Im5vdyIsKSxhcnJheSgiaW50fGZsb2F0fGRvdWJsZXxkZWNpbWFsIj0+IisvLSIsImRhdGUiPT4iKyBpbnRlcnZhbC8tIGludGVydmFsIiwidGltZSI9PiJhZGR0aW1lL3N1YnRpbWUiLCJjaGFyfHRleHQiPT4iY29uY2F0IiwpKTt9ZGVmaW5lKCJTRVJWRVIiLCRfR0VUW0RSSVZFUl0pO2RlZmluZSgiREIiLCRfR0VUWyJkYiJdKTtkZWZpbmUoIk1FIixwcmVnX3JlcGxhY2UoJ35eW14/XSovKFteP10qKS4qficsJ1xcMScsJF9TRVJWRVJbIlJFUVVFU1RfVVJJIl0pLic/Jy4oc2lkKCk/U0lELicmJzonJykuKFNFUlZFUiE9PW51bGw/RFJJVkVSLiI9Ii51cmxlbmNvZGUoU0VSVkVSKS4nJic6JycpLihpc3NldCgkX0dFVFsidXNlcm5hbWUiXSk/InVzZXJuYW1lPSIudXJsZW5jb2RlKCRfR0VUWyJ1c2VybmFtZSJdKS4nJic6JycpLihEQiE9IiI/J2RiPScudXJsZW5jb2RlKERCKS4nJicuKGlzc2V0KCRfR0VUWyJucyJdKT8ibnM9Ii51cmxlbmNvZGUoJF9HRVRbIm5zIl0pLiImIjoiIik6JycpKTskdGM9IjMuMi4yIjtjbGFzcwpBZG1pbmVye3ZhciRvcGVyYXRvcnM7ZnVuY3Rpb24KbmFtZSgpe3JldHVybiJBZG1pbmVyIjt9ZnVuY3Rpb24KY3JlZGVudGlhbHMoKXtyZXR1cm4KYXJyYXkoU0VSVkVSLCRfR0VUWyJ1c2VybmFtZSJdLGdldF9zZXNzaW9uKCJwd2RzIikpO31mdW5jdGlvbgpwZXJtYW5lbnRMb2dpbigpe3JldHVybgpwYXNzd29yZF9maWxlKCk7fWZ1bmN0aW9uCmRhdGFiYXNlKCl7cmV0dXJuCkRCO31mdW5jdGlvbgpoZWFkZXJzKCl7aGVhZGVyKCJYLUZyYW1lLU9wdGlvbnM6IGRlbnkiKTtoZWFkZXIoIlgtWFNTLVByb3RlY3Rpb246IDAiKTt9ZnVuY3Rpb24KaGVhZCgpe3JldHVybgp0cnVlO31mdW5jdGlvbgpsb2dpbkZvcm0oKXtnbG9iYWwkbmE7ZWNobyc8dGFibGUgY2VsbHNwYWNpbmc9IjAiPgo8dHI+PHRoPicsbGFuZygxOSksJzx0ZD4nLGh0bWxfc2VsZWN0KCJkcml2ZXIiLCRuYSxEUklWRVIsImxvZ2luRHJpdmVyKHRoaXMpOyIpLCc8dHI+PHRoPicsbGFuZygyMCksJzx0ZD48aW5wdXQgbmFtZT0ic2VydmVyIiB2YWx1ZT0iJyxoKFNFUlZFUiksJyI+Cjx0cj48dGg+JyxsYW5nKDIxKSwnPHRkPjxpbnB1dCBpZD0idXNlcm5hbWUiIG5hbWU9InVzZXJuYW1lIiB2YWx1ZT0iJyxoKCRfR0VUWyJ1c2VybmFtZSJdKSwnIj4KPHRyPjx0aD4nLGxhbmcoMjIpOz8+PHRkPjxpbnB1dCB0eXBlPSJwYXNzd29yZCIgbmFtZT0icGFzc3dvcmQiPgo8L3RhYmxlPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CnZhciB1c2VybmFtZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd1c2VybmFtZScpOwp1c2VybmFtZS5mb2N1cygpOwp1c2VybmFtZS5mb3JtWydkcml2ZXInXS5vbmNoYW5nZSgpOwo8L3NjcmlwdD4KPD9waHAKCmVjaG8iPHA+PGlucHV0IHR5cGU9J3N1Ym1pdCcgdmFsdWU9JyIubGFuZygyMykuIic+XG4iLGNoZWNrYm94KCJwZXJtYW5lbnQiLDEsJF9DT09LSUVbImFkbWluZXJfcGVybWFuZW50Il0sbGFuZygyNCkpLiJcbiI7fWZ1bmN0aW9uCmxvZ2luKCRWZiwkVCl7cmV0dXJuCnRydWU7fWZ1bmN0aW9uCnRhYmxlTmFtZSgkZ2Qpe3JldHVybgpoKCRnZFsiTmFtZSJdKTt9ZnVuY3Rpb24KZmllbGROYW1lKCRlLCRYYT0wKXtyZXR1cm4nPHNwYW4gdGl0bGU9IicuaCgkZVsiZnVsbF90eXBlIl0pLiciPicuaCgkZVsiZmllbGQiXSkuJzwvc3Bhbj4nO31mdW5jdGlvbgpzZWxlY3RMaW5rcygkZ2QsJHI9IiIpe2VjaG8nPHAgY2xhc3M9InRhYnMiPic7JEphPWFycmF5KCJzZWxlY3QiPT5sYW5nKDI1KSwidGFibGUiPT5sYW5nKDI2KSk7aWYoaXNfdmlldygkZ2QpKXskSmFbInZpZXciXT1sYW5nKDI3KTt9ZWxzZXskSmFbImNyZWF0ZSJdPWxhbmcoMjgpO31pZihpc3NldCgkcikpeyRKYVsiZWRpdCJdPWxhbmcoMjkpO31mb3JlYWNoKCRKYQphcyRkPT4kYil7ZWNobyIgPGEgaHJlZj0nIi5oKE1FKS4iJGQ9Ii51cmxlbmNvZGUoJGdkWyJOYW1lIl0pLigkZD09ImVkaXQiPyRyOiIiKS4iJyIuYm9sZChpc3NldCgkX0dFVFskZF0pKS4iPiRiPC9hPiI7fWVjaG8iXG4iO31mdW5jdGlvbgpmb3JlaWduS2V5cygkaCl7cmV0dXJuCmZvcmVpZ25fa2V5cygkaCk7fWZ1bmN0aW9uCmJhY2t3YXJkS2V5cygkaCwkWmYpe3JldHVybgphcnJheSgpO31mdW5jdGlvbgpiYWNrd2FyZEtleXNQcmludCgkYWcsJGEpe31mdW5jdGlvbgpzZWxlY3RRdWVyeSgkail7Z2xvYmFsJHY7cmV0dXJuIjxwPjxhIGhyZWY9JyIuaChyZW1vdmVfZnJvbV91cmkoInBhZ2UiKSkuIiZhbXA7cGFnZT1sYXN0JyB0aXRsZT0nIi5sYW5nKDMwKS4iJz4mZ3Q7Jmd0OzwvYT4gPGNvZGUgY2xhc3M9J2p1c2gtJHYnPiIuaChzdHJfcmVwbGFjZSgiXG4iLCIgIiwkaikpLiI8L2NvZGU+IDxhIGhyZWY9JyIuaChNRSkuInNxbD0iLnVybGVuY29kZSgkaikuIic+Ii5sYW5nKDMxKS4iPC9hPjwvcD5cbiI7fWZ1bmN0aW9uCnJvd0Rlc2NyaXB0aW9uKCRoKXtyZXR1cm4iIjt9ZnVuY3Rpb24Kcm93RGVzY3JpcHRpb25zKCRILCR2Zil7cmV0dXJuJEg7fWZ1bmN0aW9uCnNlbGVjdFZhbCgkYiwkdywkZSl7JGM9KCRiIT0iPGk+TlVMTDwvaT4iJiZlcmVnKCJjaGFyfGJpbmFyeSIsJGVbInR5cGUiXSkmJiFlcmVnKCJ2YXIiLCRlWyJ0eXBlIl0pPyI8Y29kZT4kYjwvY29kZT4iOiRiKTtpZihlcmVnKCdibG9ifGJ5dGVhfHJhd3xmaWxlJywkZVsidHlwZSJdKSYmIWlzX3V0ZjgoJGIpKXskYz1sYW5nKDMyLHN0cmxlbihodG1sX2VudGl0eV9kZWNvZGUoJGIsRU5UX1FVT1RFUykpKTt9cmV0dXJuKCR3PyI8YSBocmVmPSckdyc+JGM8L2E+IjokYyk7fWZ1bmN0aW9uCmVkaXRWYWwoJGIsJGUpe3JldHVybihlcmVnKCJiaW5hcnkiLCRlWyJ0eXBlIl0pP3Jlc2V0KHVucGFjaygiSCoiLCRiKSk6JGIpO31mdW5jdGlvbgpzZWxlY3RDb2x1bW5zUHJpbnQoJFEsJEIpe2dsb2JhbCRkYSwkbGI7cHJpbnRfZmllbGRzZXQoInNlbGVjdCIsbGFuZygzMyksJFEpOyRsPTA7JE9lPWFycmF5KGxhbmcoMzQpPT4kZGEsbGFuZygzNSk9PiRsYik7Zm9yZWFjaCgkUQphcyRkPT4kYil7JGI9JF9HRVRbImNvbHVtbnMiXVskZF07ZWNobyI8ZGl2PiIuaHRtbF9zZWxlY3QoImNvbHVtbnNbJGxdW2Z1bl0iLGFycmF5KC0xPT4iIikrJE9lLCRiWyJmdW4iXSksIig8c2VsZWN0IG5hbWU9J2NvbHVtbnNbJGxdW2NvbF0nPjxvcHRpb24+Ii5vcHRpb25saXN0KCRCLCRiWyJjb2wiXSx0cnVlKS4iPC9zZWxlY3Q+KTwvZGl2PlxuIjskbCsrO31lY2hvIjxkaXY+Ii5odG1sX3NlbGVjdCgiY29sdW1uc1skbF1bZnVuXSIsYXJyYXkoLTE9PiIiKSskT2UsIiIsInRoaXMubmV4dFNpYmxpbmcubmV4dFNpYmxpbmcub25jaGFuZ2UoKTsiKSwiKDxzZWxlY3QgbmFtZT0nY29sdW1uc1skbF1bY29sXScgb25jaGFuZ2U9J3NlbGVjdEFkZFJvdyh0aGlzKTsnPjxvcHRpb24+Ii5vcHRpb25saXN0KCRCLG51bGwsdHJ1ZSkuIjwvc2VsZWN0Pik8L2Rpdj5cbiIsIjwvZGl2PjwvZmllbGRzZXQ+XG4iO31mdW5jdGlvbgpzZWxlY3RTZWFyY2hQcmludCgkcywkQiwkSil7cHJpbnRfZmllbGRzZXQoInNlYXJjaCIsbGFuZygzNiksJHMpO2ZvcmVhY2goJEoKYXMkbD0+JHgpe2lmKCR4WyJ0eXBlIl09PSJGVUxMVEVYVCIpe2VjaG8iKDxpPiIuaW1wbG9kZSgiPC9pPiwgPGk+IixhcnJheV9tYXAoJ2gnLCR4WyJjb2x1bW5zIl0pKS4iPC9pPikgQUdBSU5TVCIsIiA8aW5wdXQgbmFtZT0nZnVsbHRleHRbJGxdJyB2YWx1ZT0nIi5oKCRfR0VUWyJmdWxsdGV4dCJdWyRsXSkuIic+IixjaGVja2JveCgiYm9vbGVhblskbF0iLDEsaXNzZXQoJF9HRVRbImJvb2xlYW4iXVskbF0pLCJCT09MIiksIjxicj5cbiI7fX0kbD0wO2ZvcmVhY2goKGFycmF5KSRfR0VUWyJ3aGVyZSJdYXMkYil7aWYoIiRiW2NvbF0kYlt2YWxdIiE9IiImJmluX2FycmF5KCRiWyJvcCJdLCR0aGlzLT5vcGVyYXRvcnMpKXtlY2hvIjxkaXY+PHNlbGVjdCBuYW1lPSd3aGVyZVskbF1bY29sXSc+PG9wdGlvbiB2YWx1ZT0nJz4oIi5sYW5nKDM3KS4iKSIub3B0aW9ubGlzdCgkQiwkYlsiY29sIl0sdHJ1ZSkuIjwvc2VsZWN0PiIsaHRtbF9zZWxlY3QoIndoZXJlWyRsXVtvcF0iLCR0aGlzLT5vcGVyYXRvcnMsJGJbIm9wIl0pLCI8aW5wdXQgbmFtZT0nd2hlcmVbJGxdW3ZhbF0nIHZhbHVlPSciLmgoJGJbInZhbCJdKS4iJz48L2Rpdj5cbiI7JGwrKzt9fWVjaG8iPGRpdj48c2VsZWN0IG5hbWU9J3doZXJlWyRsXVtjb2xdJyBvbmNoYW5nZT0nc2VsZWN0QWRkUm93KHRoaXMpOyc+PG9wdGlvbiB2YWx1ZT0nJz4oIi5sYW5nKDM3KS4iKSIub3B0aW9ubGlzdCgkQixudWxsLHRydWUpLiI8L3NlbGVjdD4iLGh0bWxfc2VsZWN0KCJ3aGVyZVskbF1bb3BdIiwkdGhpcy0+b3BlcmF0b3JzLCI9IiksIjxpbnB1dCBuYW1lPSd3aGVyZVskbF1bdmFsXSc+PC9kaXY+XG4iLCI8L2Rpdj48L2ZpZWxkc2V0PlxuIjt9ZnVuY3Rpb24Kc2VsZWN0T3JkZXJQcmludCgkWGEsJEIsJEope3ByaW50X2ZpZWxkc2V0KCJzb3J0IixsYW5nKDM4KSwkWGEpOyRsPTA7Zm9yZWFjaCgoYXJyYXkpJF9HRVRbIm9yZGVyIl1hcyRkPT4kYil7aWYoaXNzZXQoJEJbJGJdKSl7ZWNobyI8ZGl2PjxzZWxlY3QgbmFtZT0nb3JkZXJbJGxdJz48b3B0aW9uPiIub3B0aW9ubGlzdCgkQiwkYix0cnVlKS4iPC9zZWxlY3Q+IixjaGVja2JveCgiZGVzY1skbF0iLDEsaXNzZXQoJF9HRVRbImRlc2MiXVskZF0pLGxhbmcoMzkpKS4iPC9kaXY+XG4iOyRsKys7fX1lY2hvIjxkaXY+PHNlbGVjdCBuYW1lPSdvcmRlclskbF0nIG9uY2hhbmdlPSdzZWxlY3RBZGRSb3codGhpcyk7Jz48b3B0aW9uPiIub3B0aW9ubGlzdCgkQixudWxsLHRydWUpLiI8L3NlbGVjdD4iLCI8bGFiZWw+PGlucHV0IHR5cGU9J2NoZWNrYm94JyBuYW1lPSdkZXNjWyRsXScgdmFsdWU9JzEnPiIubGFuZygzOSkuIjwvbGFiZWw+PC9kaXY+XG4iO2VjaG8iPC9kaXY+PC9maWVsZHNldD5cbiI7fWZ1bmN0aW9uCnNlbGVjdExpbWl0UHJpbnQoJE8pe2VjaG8iPGZpZWxkc2V0PjxsZWdlbmQ+Ii5sYW5nKDQwKS4iPC9sZWdlbmQ+PGRpdj4iO2VjaG8iPGlucHV0IG5hbWU9J2xpbWl0JyBzaXplPSczJyB2YWx1ZT0nIi5oKCRPKS4iJz4iLCI8L2Rpdj48L2ZpZWxkc2V0PlxuIjt9ZnVuY3Rpb24Kc2VsZWN0TGVuZ3RoUHJpbnQoJERiKXtpZihpc3NldCgkRGIpKXtlY2hvIjxmaWVsZHNldD48bGVnZW5kPiIubGFuZyg0MSkuIjwvbGVnZW5kPjxkaXY+IiwnPGlucHV0IG5hbWU9InRleHRfbGVuZ3RoIiBzaXplPSIzIiB2YWx1ZT0iJy5oKCREYikuJyI+JywiPC9kaXY+PC9maWVsZHNldD5cbiI7fX1mdW5jdGlvbgpzZWxlY3RBY3Rpb25QcmludCgpe2VjaG8iPGZpZWxkc2V0PjxsZWdlbmQ+Ii5sYW5nKDQyKS4iPC9sZWdlbmQ+PGRpdj4iLCI8aW5wdXQgdHlwZT0nc3VibWl0JyB2YWx1ZT0nIi5sYW5nKDMzKS4iJz4iLCI8L2Rpdj48L2ZpZWxkc2V0PlxuIjt9ZnVuY3Rpb24Kc2VsZWN0RW1haWxQcmludCgkYmcsJEIpe31mdW5jdGlvbgpzZWxlY3RDb2x1bW5zUHJvY2VzcygkQiwkSil7Z2xvYmFsJGRhLCRsYjskUT1hcnJheSgpOyRwYT1hcnJheSgpO2ZvcmVhY2goKGFycmF5KSRfR0VUWyJjb2x1bW5zIl1hcyRkPT4kYil7aWYoJGJbImZ1biJdPT0iY291bnQifHwoaXNzZXQoJEJbJGJbImNvbCJdXSkmJighJGJbImZ1biJdfHxpbl9hcnJheSgkYlsiZnVuIl0sJGRhKXx8aW5fYXJyYXkoJGJbImZ1biJdLCRsYikpKSl7JFFbJGRdPWFwcGx5X3NxbF9mdW5jdGlvbigkYlsiZnVuIl0sKGlzc2V0KCRCWyRiWyJjb2wiXV0pP2lkZl9lc2NhcGUoJGJbImNvbCJdKToiKiIpKTtpZighaW5fYXJyYXkoJGJbImZ1biJdLCRsYikpeyRwYVtdPSRRWyRkXTt9fX1yZXR1cm4KYXJyYXkoJFEsJHBhKTt9ZnVuY3Rpb24Kc2VsZWN0U2VhcmNoUHJvY2VzcygkcCwkSil7Z2xvYmFsJHY7JGM9YXJyYXkoKTtmb3JlYWNoKCRKCmFzJGw9PiR4KXtpZigkeFsidHlwZSJdPT0iRlVMTFRFWFQiJiYkX0dFVFsiZnVsbHRleHQiXVskbF0hPSIiKXskY1tdPSJNQVRDSCAoIi5pbXBsb2RlKCIsICIsYXJyYXlfbWFwKCdpZGZfZXNjYXBlJywkeFsiY29sdW1ucyJdKSkuIikgQUdBSU5TVCAoIi5xKCRfR0VUWyJmdWxsdGV4dCJdWyRsXSkuKGlzc2V0KCRfR0VUWyJib29sZWFuIl1bJGxdKT8iIElOIEJPT0xFQU4gTU9ERSI6IiIpLiIpIjt9fWZvcmVhY2goKGFycmF5KSRfR0VUWyJ3aGVyZSJdYXMkYil7aWYoIiRiW2NvbF0kYlt2YWxdIiE9IiImJmluX2FycmF5KCRiWyJvcCJdLCR0aGlzLT5vcGVyYXRvcnMpKXskVWI9IiAkYltvcF0iO2lmKGVyZWcoJ0lOJCcsJGJbIm9wIl0pKXskVGI9cHJvY2Vzc19sZW5ndGgoJGJbInZhbCJdKTskVWIuPSIgKCIuKCRUYiE9IiI/JFRiOiJOVUxMIikuIikiO31lbHNlaWYoISRiWyJvcCJdKXskVWIuPSRiWyJ2YWwiXTt9ZWxzZWlmKCRiWyJvcCJdPT0iTElLRSAlJSIpeyRVYj0iIExJS0UgIi4kdGhpcy0+cHJvY2Vzc0lucHV0KCRwWyRiWyJjb2wiXV0sIiUkYlt2YWxdJSIpO31lbHNlaWYoIWVyZWcoJ05VTEwkJywkYlsib3AiXSkpeyRVYi49IiAiLiR0aGlzLT5wcm9jZXNzSW5wdXQoJHBbJGJbImNvbCJdXSwkYlsidmFsIl0pO31pZigkYlsiY29sIl0hPSIiKXskY1tdPWlkZl9lc2NhcGUoJGJbImNvbCJdKS4kVWI7fWVsc2V7JG1iPWFycmF5KCk7Zm9yZWFjaCgkcAphcyRmPT4kZSl7aWYoaXNfbnVtZXJpYygkYlsidmFsIl0pfHwhZXJlZygnaW50fGZsb2F0fGRvdWJsZXxkZWNpbWFsJywkZVsidHlwZSJdKSl7JGY9aWRmX2VzY2FwZSgkZik7JG1iW109KCR2PT0ic3FsIiYmZXJlZygnY2hhcnx0ZXh0fGVudW18c2V0JywkZVsidHlwZSJdKSYmIWVyZWcoJ151dGY4JywkZVsiY29sbGF0aW9uIl0pPyJDT05WRVJUKCRmIFVTSU5HIHV0ZjgpIjokZik7fX0kY1tdPSgkbWI/IigiLmltcGxvZGUoIiRVYiBPUiAiLCRtYikuIiRVYikiOiIwIik7fX19cmV0dXJuJGM7fWZ1bmN0aW9uCnNlbGVjdE9yZGVyUHJvY2VzcygkcCwkSil7JGM9YXJyYXkoKTtmb3JlYWNoKChhcnJheSkkX0dFVFsib3JkZXIiXWFzJGQ9PiRiKXtpZihpc3NldCgkcFskYl0pfHxwcmVnX21hdGNoKCd+XigoQ09VTlRcXChESVNUSU5DVCB8W0EtWjAtOV9dK1xcKCkoYCg/OlteYF18YGApK2B8Iig/OlteIl18IiIpKyIpXFwpfENPVU5UXFwoXFwqXFwpKSR+JywkYikpeyRjW109KGlzc2V0KCRwWyRiXSk/aWRmX2VzY2FwZSgkYik6JGIpLihpc3NldCgkX0dFVFsiZGVzYyJdWyRkXSk/IiBERVNDIjoiIik7fX1yZXR1cm4kYzt9ZnVuY3Rpb24Kc2VsZWN0TGltaXRQcm9jZXNzKCl7cmV0dXJuKGlzc2V0KCRfR0VUWyJsaW1pdCJdKT8kX0dFVFsibGltaXQiXToiMzAiKTt9ZnVuY3Rpb24Kc2VsZWN0TGVuZ3RoUHJvY2Vzcygpe3JldHVybihpc3NldCgkX0dFVFsidGV4dF9sZW5ndGgiXSk/JF9HRVRbInRleHRfbGVuZ3RoIl06IjEwMCIpO31mdW5jdGlvbgpzZWxlY3RFbWFpbFByb2Nlc3MoJHMsJHZmKXtyZXR1cm4KZmFsc2U7fWZ1bmN0aW9uCm1lc3NhZ2VRdWVyeSgkail7Z2xvYmFsJHY7c3RhdGljJFFjPTA7cmVzdGFydF9zZXNzaW9uKCk7JFM9InNxbC0iLigkUWMrKyk7JGViPSZnZXRfc2Vzc2lvbigicXVlcmllcyIpO2lmKHN0cmxlbigkaik+MWU2KXskaj1lcmVnX3JlcGxhY2UoJ1tceDgwLVx4RkZdKyQnLCcnLHN1YnN0cigkaiwwLDFlNikpLiJcbi4uLiI7fSRlYlskX0dFVFsiZGIiXV1bXT0kajtyZXR1cm4iIDxhIGhyZWY9JyMkUycgb25jbGljaz1cInJldHVybiAhdG9nZ2xlKCckUycpO1wiPiIubGFuZyg0MykuIjwvYT48ZGl2IGlkPSckUycgY2xhc3M9J2hpZGRlbic+PHByZT48Y29kZSBjbGFzcz0nanVzaC0kdic+Ii5zaG9ydGVuX3V0ZjgoJGosMTAwMCkuJzwvY29kZT48L3ByZT48cD48YSBocmVmPSInLmgoc3RyX3JlcGxhY2UoImRiPSIudXJsZW5jb2RlKERCKSwiZGI9Ii51cmxlbmNvZGUoJF9HRVRbImRiIl0pLE1FKS4nc3FsPSZoaXN0b3J5PScuKGNvdW50KCRlYlskX0dFVFsiZGIiXV0pLTEpKS4nIj4nLmxhbmcoMzEpLic8L2E+PC9kaXY+Jzt9ZnVuY3Rpb24KZWRpdEZ1bmN0aW9ucygkZSl7Z2xvYmFsJE5iOyRjPSgkZVsibnVsbCJdPyJOVUxMLyI6IiIpO2ZvcmVhY2goJE5iCmFzJGQ9PiRkYSl7aWYoISRkfHwoIWlzc2V0KCRfR0VUWyJjYWxsIl0pJiYoaXNzZXQoJF9HRVRbInNlbGVjdCJdKXx8d2hlcmUoJF9HRVQpKSkpe2ZvcmVhY2goJGRhCmFzJGJhPT4kYil7aWYoISRiYXx8ZXJlZygkYmEsJGVbInR5cGUiXSkpeyRjLj0iLyRiIjt9fWlmKCRkJiYhZXJlZygnc2V0fGJsb2J8Ynl0ZWF8cmF3fGZpbGUnLCRlWyJ0eXBlIl0pKXskYy49Ii89Ijt9fX1yZXR1cm4KZXhwbG9kZSgiLyIsJGMpO31mdW5jdGlvbgplZGl0SW5wdXQoJGgsJGUsJFJhLCRxKXtpZigkZVsidHlwZSJdPT0iZW51bSIpe3JldHVybihpc3NldCgkX0dFVFsic2VsZWN0Il0pPyI8bGFiZWw+PGlucHV0IHR5cGU9J3JhZGlvJyRSYSB2YWx1ZT0nLTEnIGNoZWNrZWQ+PGk+Ii5sYW5nKDUpLiI8L2k+PC9sYWJlbD4gIjoiIikuKCRlWyJudWxsIl0/IjxsYWJlbD48aW5wdXQgdHlwZT0ncmFkaW8nJFJhIHZhbHVlPScnIi4oaXNzZXQoJHEpfHxpc3NldCgkX0dFVFsic2VsZWN0Il0pPyIiOiIgY2hlY2tlZCIpLiI+PGk+TlVMTDwvaT48L2xhYmVsPiAiOiIiKS5lbnVtX2lucHV0KCJyYWRpbyIsJFJhLCRlLCRxLDApO31yZXR1cm4iIjt9ZnVuY3Rpb24KcHJvY2Vzc0lucHV0KCRlLCRxLCRLPSIiKXtpZigkSz09Ij0iKXtyZXR1cm4kcTt9JGY9JGVbImZpZWxkIl07JGM9KCRlWyJ0eXBlIl09PSJiaXQiJiZlcmVnKCdeWzAtOV0rJCcsJHEpPyRxOnEoJHEpKTtpZihlcmVnKCdeKG5vd3xnZXRkYXRlfHV1aWQpJCcsJEspKXskYz0iJEsoKSI7fWVsc2VpZihlcmVnKCdeY3VycmVudF8oZGF0ZXx0aW1lc3RhbXApJCcsJEspKXskYz0kSzt9ZWxzZWlmKGVyZWcoJ14oWystXXxcXHxcXHwpJCcsJEspKXskYz1pZGZfZXNjYXBlKCRmKS4iICRLICRjIjt9ZWxzZWlmKGVyZWcoJ15bKy1dIGludGVydmFsJCcsJEspKXskYz1pZGZfZXNjYXBlKCRmKS4iICRLICIuKHByZWdfbWF0Y2goIn5eKFxcZCt8J1swLTkuOiAtXScpIFtBLVpfXSskfmkiLCRxKT8kcTokYyk7fWVsc2VpZihlcmVnKCdeKGFkZHRpbWV8c3VidGltZXxjb25jYXQpJCcsJEspKXskYz0iJEsoIi5pZGZfZXNjYXBlKCRmKS4iLCAkYykiO31lbHNlaWYoZXJlZygnXihtZDV8c2hhMXxwYXNzd29yZHxlbmNyeXB0fGhleCkkJywkSykpeyRjPSIkSygkYykiO31pZihlcmVnKCJiaW5hcnkiLCRlWyJ0eXBlIl0pKXskYz0idW5oZXgoJGMpIjt9cmV0dXJuJGM7fWZ1bmN0aW9uCmR1bXBPdXRwdXQoKXskYz1hcnJheSgndGV4dCc9PmxhbmcoNDQpLCdmaWxlJz0+bGFuZyg0NSkpO2lmKGZ1bmN0aW9uX2V4aXN0cygnZ3plbmNvZGUnKSl7JGNbJ2d6J109J2d6aXAnO31pZihmdW5jdGlvbl9leGlzdHMoJ2J6Y29tcHJlc3MnKSl7JGNbJ2J6MiddPSdiemlwMic7fXJldHVybiRjO31mdW5jdGlvbgpkdW1wRm9ybWF0KCl7cmV0dXJuCmFycmF5KCdzcWwnPT4nU1FMJywnY3N2Jz0+J0NTViwnLCdjc3Y7Jz0+J0NTVjsnLCd0c3YnPT4nVFNWJyk7fWZ1bmN0aW9uCmR1bXBUYWJsZSgkaCwkViwkYmQ9ZmFsc2Upe2lmKCRfUE9TVFsiZm9ybWF0Il0hPSJzcWwiKXtlY2hvIlx4ZWZceGJiXHhiZiI7aWYoJFYpe2R1bXBfY3N2KGFycmF5X2tleXMoZmllbGRzKCRoKSkpO319ZWxzZWlmKCRWKXskbGE9Y3JlYXRlX3NxbCgkaCwkX1BPU1RbImF1dG9faW5jcmVtZW50Il0pO2lmKCRsYSl7aWYoJFY9PSJEUk9QK0NSRUFURSIpe2VjaG8iRFJPUCAiLigkYmQ/IlZJRVciOiJUQUJMRSIpLiIgSUYgRVhJU1RTICIudGFibGUoJGgpLiI7XG4iO31pZigkYmQpeyRsYT1wcmVnX3JlcGxhY2UoJ35eKFtBLVogPV0rKSBERUZJTkVSPWAnLnByZWdfcmVwbGFjZSgnfkAoLiopficsJ2BAYCglfFxcMSknLGxvZ2dlZF91c2VyKCkpLidgficsJ1xcMScsJGxhKTt9ZWNobygkViE9IkNSRUFURStBTFRFUiI/JGxhOigkYmQ/c3Vic3RyX3JlcGxhY2UoJGxhLCIgT1IgUkVQTEFDRSIsNiwwKTpzdWJzdHJfcmVwbGFjZSgkbGEsIiBJRiBOT1QgRVhJU1RTIiwxMiwwKSkpLiI7XG5cbiI7fWlmKCRWPT0iQ1JFQVRFK0FMVEVSIiYmISRiZCl7JGo9IlNFTEVDVCBDT0xVTU5fTkFNRSwgQ09MVU1OX0RFRkFVTFQsIElTX05VTExBQkxFLCBDT0xMQVRJT05fTkFNRSwgQ09MVU1OX1RZUEUsIEVYVFJBLCBDT0xVTU5fQ09NTUVOVCBGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS5DT0xVTU5TIFdIRVJFIFRBQkxFX1NDSEVNQSA9IERBVEFCQVNFKCkgQU5EIFRBQkxFX05BTUUgPSAiLnEoJGgpLiIgT1JERVIgQlkgT1JESU5BTF9QT1NJVElPTiI7ZWNobyJERUxJTUlURVIgOzsKQ1JFQVRFIFBST0NFRFVSRSBhZG1pbmVyX2FsdGVyIChJTk9VVCBhbHRlcl9jb21tYW5kIHRleHQpIEJFR0lOCglERUNMQVJFIF9jb2x1bW5fbmFtZSwgX2NvbGxhdGlvbl9uYW1lLCBhZnRlciB2YXJjaGFyKDY0KSBERUZBVUxUICcnOwoJREVDTEFSRSBfY29sdW1uX3R5cGUsIF9jb2x1bW5fZGVmYXVsdCB0ZXh0OwoJREVDTEFSRSBfaXNfbnVsbGFibGUgY2hhcigzKTsKCURFQ0xBUkUgX2V4dHJhIHZhcmNoYXIoMzApOwoJREVDTEFSRSBfY29sdW1uX2NvbW1lbnQgdmFyY2hhcigyNTUpOwoJREVDTEFSRSBkb25lLCBzZXRfYWZ0ZXIgYm9vbCBERUZBVUxUIDA7CglERUNMQVJFIGFkZF9jb2x1bW5zIHRleHQgREVGQVVMVCAnIjskcD1hcnJheSgpOyRKYj0iIjtmb3JlYWNoKGdldF9yb3dzKCRqKWFzJGEpeyR6YT0kYVsiQ09MVU1OX0RFRkFVTFQiXTskYVsiZGVmYXVsdCJdPShpc3NldCgkemEpP3EoJHphKToiTlVMTCIpOyRhWyJhZnRlciJdPXEoJEpiKTskYVsiYWx0ZXIiXT1lc2NhcGVfc3RyaW5nKGlkZl9lc2NhcGUoJGFbIkNPTFVNTl9OQU1FIl0pLiIgJGFbQ09MVU1OX1RZUEVdIi4oJGFbIkNPTExBVElPTl9OQU1FIl0/IiBDT0xMQVRFICRhW0NPTExBVElPTl9OQU1FXSI6IiIpLihpc3NldCgkemEpPyIgREVGQVVMVCAiLigkemE9PSJDVVJSRU5UX1RJTUVTVEFNUCI/JHphOiRhWyJkZWZhdWx0Il0pOiIiKS4oJGFbIklTX05VTExBQkxFIl09PSJZRVMiPyIiOiIgTk9UIE5VTEwiKS4oJGFbIkVYVFJBIl0/IiAkYVtFWFRSQV0iOiIiKS4oJGFbIkNPTFVNTl9DT01NRU5UIl0/IiBDT01NRU5UICIucSgkYVsiQ09MVU1OX0NPTU1FTlQiXSk6IiIpLigkSmI/IiBBRlRFUiAiLmlkZl9lc2NhcGUoJEpiKToiIEZJUlNUIikpO2VjaG8iLCBBREQgJGFbYWx0ZXJdIjskcFtdPSRhOyRKYj0kYVsiQ09MVU1OX05BTUUiXTt9ZWNobyInOwoJREVDTEFSRSBjb2x1bW5zIENVUlNPUiBGT1IgJGo7CglERUNMQVJFIENPTlRJTlVFIEhBTkRMRVIgRk9SIE5PVCBGT1VORCBTRVQgZG9uZSA9IDE7CglTRVQgQGFsdGVyX3RhYmxlID0gJyc7CglPUEVOIGNvbHVtbnM7CglSRVBFQVQKCQlGRVRDSCBjb2x1bW5zIElOVE8gX2NvbHVtbl9uYW1lLCBfY29sdW1uX2RlZmF1bHQsIF9pc19udWxsYWJsZSwgX2NvbGxhdGlvbl9uYW1lLCBfY29sdW1uX3R5cGUsIF9leHRyYSwgX2NvbHVtbl9jb21tZW50OwoJCUlGIE5PVCBkb25lIFRIRU4KCQkJU0VUIHNldF9hZnRlciA9IDE7CgkJCUNBU0UgX2NvbHVtbl9uYW1lIjtmb3JlYWNoKCRwCmFzJGEpe2VjaG8iCgkJCQlXSEVOICIucSgkYVsiQ09MVU1OX05BTUUiXSkuIiBUSEVOCgkJCQkJU0VUIGFkZF9jb2x1bW5zID0gUkVQTEFDRShhZGRfY29sdW1ucywgJywgQUREICRhW2FsdGVyXScsICcnKTsKCQkJCQlJRiBOT1QgKF9jb2x1bW5fZGVmYXVsdCA8PT4gJGFbZGVmYXVsdF0pIE9SIF9pc19udWxsYWJsZSAhPSAnJGFbSVNfTlVMTEFCTEVdJyBPUiBfY29sbGF0aW9uX25hbWUgIT0gJyRhW0NPTExBVElPTl9OQU1FXScgT1IgX2NvbHVtbl90eXBlICE9ICIucSgkYVsiQ09MVU1OX1RZUEUiXSkuIiBPUiBfZXh0cmEgIT0gJyRhW0VYVFJBXScgT1IgX2NvbHVtbl9jb21tZW50ICE9ICIucSgkYVsiQ09MVU1OX0NPTU1FTlQiXSkuIiBPUiBhZnRlciAhPSAkYVthZnRlcl0gVEhFTgoJCQkJCQlTRVQgQGFsdGVyX3RhYmxlID0gQ09OQ0FUKEBhbHRlcl90YWJsZSwgJywgTU9ESUZZICRhW2FsdGVyXScpOwoJCQkJCUVORCBJRjsiO31lY2hvIgoJCQkJRUxTRQoJCQkJCVNFVCBAYWx0ZXJfdGFibGUgPSBDT05DQVQoQGFsdGVyX3RhYmxlLCAnLCBEUk9QICcsIF9jb2x1bW5fbmFtZSk7CgkJCQkJU0VUIHNldF9hZnRlciA9IDA7CgkJCUVORCBDQVNFOwoJCQlJRiBzZXRfYWZ0ZXIgVEhFTgoJCQkJU0VUIGFmdGVyID0gX2NvbHVtbl9uYW1lOwoJCQlFTkQgSUY7CgkJRU5EIElGOwoJVU5USUwgZG9uZSBFTkQgUkVQRUFUOwoJQ0xPU0UgY29sdW1uczsKCUlGIEBhbHRlcl90YWJsZSAhPSAnJyBPUiBhZGRfY29sdW1ucyAhPSAnJyBUSEVOCgkJU0VUIGFsdGVyX2NvbW1hbmQgPSBDT05DQVQoYWx0ZXJfY29tbWFuZCwgJ0FMVEVSIFRBQkxFICIudGFibGUoJGgpLiInLCBTVUJTVFIoQ09OQ0FUKGFkZF9jb2x1bW5zLCBAYWx0ZXJfdGFibGUpLCAyKSwgJztcXG4nKTsKCUVORCBJRjsKRU5EOzsKREVMSU1JVEVSIDsKQ0FMTCBhZG1pbmVyX2FsdGVyKEBhZG1pbmVyX2FsdGVyKTsKRFJPUCBQUk9DRURVUkUgYWRtaW5lcl9hbHRlcjsKCiI7fX19ZnVuY3Rpb24KZHVtcERhdGEoJGgsJFYsJGope2dsb2JhbCRnLCR2OyRLZT0oJHY9PSJzcWxpdGUiPzA6MTA0ODU3Nik7aWYoJFYpe2lmKCRfUE9TVFsiZm9ybWF0Il09PSJzcWwiJiYkVj09IlRSVU5DQVRFK0lOU0VSVCIpe2VjaG8KdHJ1bmNhdGVfc3FsKCRoKS4iO1xuIjt9aWYoJF9QT1NUWyJmb3JtYXQiXT09InNxbCIpeyRwPWZpZWxkcygkaCk7fSRpPSRnLT5xdWVyeSgkaiwxKTtpZigkaSl7JHNjPSIiOyRrYj0iIjt3aGlsZSgkYT0kaS0+ZmV0Y2hfYXNzb2MoKSl7aWYoJF9QT1NUWyJmb3JtYXQiXSE9InNxbCIpe2lmKCRWPT0idGFibGUiKXtkdW1wX2NzdihhcnJheV9rZXlzKCRhKSk7JFY9IklOU0VSVCI7fWR1bXBfY3N2KCRhKTt9ZWxzZXtpZighJHNjKXskc2M9IklOU0VSVCBJTlRPICIudGFibGUoJGgpLiIgKCIuaW1wbG9kZSgiLCAiLGFycmF5X21hcCgnaWRmX2VzY2FwZScsYXJyYXlfa2V5cygkYSkpKS4iKSBWQUxVRVMiO31mb3JlYWNoKCRhCmFzJGQ9PiRiKXskYVskZF09KGlzc2V0KCRiKT8oZXJlZygnaW50fGZsb2F0fGRvdWJsZXxkZWNpbWFsJywkcFskZF1bInR5cGUiXSk/JGI6cSgkYikpOiJOVUxMIik7fSRtYT1pbXBsb2RlKCIsXHQiLCRhKTtpZigkVj09IklOU0VSVCtVUERBVEUiKXskcj1hcnJheSgpO2ZvcmVhY2goJGEKYXMkZD0+JGIpeyRyW109aWRmX2VzY2FwZSgkZCkuIiA9ICRiIjt9ZWNobyIkc2MgKCRtYSkgT04gRFVQTElDQVRFIEtFWSBVUERBVEUgIi5pbXBsb2RlKCIsICIsJHIpLiI7XG4iO31lbHNleyRtYT0oJEtlPyJcbiI6IiAiKS4iKCRtYSkiO2lmKCEka2IpeyRrYj0kc2MuJG1hO31lbHNlaWYoc3RybGVuKCRrYikrMitzdHJsZW4oJG1hKTwkS2UpeyRrYi49IiwkbWEiO31lbHNleyRrYi49IjtcbiI7ZWNobyRrYjska2I9JHNjLiRtYTt9fX19aWYoJF9QT1NUWyJmb3JtYXQiXT09InNxbCImJiRWIT0iSU5TRVJUK1VQREFURSImJiRrYil7JGtiLj0iO1xuIjtlY2hvJGtiO319ZWxzZWlmKCRfUE9TVFsiZm9ybWF0Il09PSJzcWwiKXtlY2hvIi0tICIuc3RyX3JlcGxhY2UoIlxuIiwiICIsJGctPmVycm9yKS4iXG4iO319fWZ1bmN0aW9uCmR1bXBIZWFkZXJzKCRTYywkX2Q9ZmFsc2UpeyROYT0kX1BPU1RbIm91dHB1dCJdOyRIYj0oJF9QT1NUWyJmb3JtYXQiXT09InNxbCI/InNxbCI6KCRfZD8idGFyIjoiY3N2IikpO2hlYWRlcigiQ29udGVudC1UeXBlOiAiLigkTmE9PSJiejIiPyJhcHBsaWNhdGlvbi94LWJ6aXAiOigkTmE9PSJneiI/ImFwcGxpY2F0aW9uL3gtZ3ppcCI6KCRIYj09InRhciI/ImFwcGxpY2F0aW9uL3gtdGFyIjooJEhiPT0ic3FsInx8JE5hIT0iZmlsZSI/InRleHQvcGxhaW4iOiJ0ZXh0L2NzdiIpLiI7IGNoYXJzZXQ9dXRmLTgiKSkpKTtpZigkTmE9PSJiejIiKXtvYl9zdGFydCgnYnpjb21wcmVzcycsMWU2KTt9aWYoJE5hPT0iZ3oiKXtvYl9zdGFydCgnZ3plbmNvZGUnLDFlNik7fXJldHVybiRIYjt9ZnVuY3Rpb24KaG9tZXBhZ2UoKXtlY2hvJzxwPicuKCRfR0VUWyJucyJdPT0iIj8nPGEgaHJlZj0iJy5oKE1FKS4nZGF0YWJhc2U9Ij4nLmxhbmcoNDYpLiI8L2E+XG4iOiIiKTtpZihzdXBwb3J0KCJzY2hlbWUiKSl7ZWNobyI8YSBocmVmPSciLmgoTUUpLiJzY2hlbWU9Jz4iLigkX0dFVFsibnMiXSE9IiI/bGFuZyg0Nyk6bGFuZyg0OCkpLiI8L2E+XG4iO31yZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KbmF2aWdhdGlvbigkWmIpe2dsb2JhbCR0YywkZywkTSwkdiwkbmE7ZWNobyc8aDE+CjxhIGhyZWY9Imh0dHA6Ly93d3cuYWRtaW5lci5vcmcvIiBpZD0iaDEiPicsJHRoaXMtPm5hbWUoKSwnPC9hPgo8c3BhbiBjbGFzcz0idmVyc2lvbiI+JywkdGMsJzwvc3Bhbj4KPGEgaHJlZj0iaHR0cDovL3d3dy5hZG1pbmVyLm9yZy8jZG93bmxvYWQiIGlkPSJ2ZXJzaW9uIj4nLCh2ZXJzaW9uX2NvbXBhcmUoJHRjLCRfQ09PS0lFWyJhZG1pbmVyX3ZlcnNpb24iXSk8MD9oKCRfQ09PS0lFWyJhZG1pbmVyX3ZlcnNpb24iXSk6IiIpLCc8L2E+CjwvaDE+Cic7aWYoJFpiPT0iYXV0aCIpeyRCYT10cnVlO2ZvcmVhY2goKGFycmF5KSRfU0VTU0lPTlsicHdkcyJdYXMkSWI9PiRVZil7Zm9yZWFjaCgkVWYKYXMkRj0+JE5mKXtmb3JlYWNoKCROZgphcyRQPT4kVCl7aWYoaXNzZXQoJFQpKXtpZigkQmEpe2VjaG8iPHAgb25jbGljaz0nZXZlbnRTdG9wKGV2ZW50KTsnPlxuIjskQmE9ZmFsc2U7fWVjaG8iPGEgaHJlZj0nIi5oKGF1dGhfdXJsKCRJYiwkRiwkUCkpLiInPigkbmFbJEliXSkgIi5oKCRQLigkRiE9IiI/IkAkRiI6IiIpKS4iPC9hPjxicj5cbiI7fX19fX1lbHNleyRfPWdldF9kYXRhYmFzZXMoKTtlY2hvJzxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiPgo8cCBjbGFzcz0ibG9nb3V0Ij4KJztpZihEQj09IiJ8fCEkWmIpe2VjaG8iPGEgaHJlZj0nIi5oKE1FKS4ic3FsPSciLmJvbGQoaXNzZXQoJF9HRVRbInNxbCJdKSkuIj4iLmxhbmcoNDMpLiI8L2E+XG4iO2lmKHN1cHBvcnQoImR1bXAiKSl7ZWNobyI8YSBocmVmPSciLmgoTUUpLiJkdW1wPSIudXJsZW5jb2RlKGlzc2V0KCRfR0VUWyJ0YWJsZSJdKT8kX0dFVFsidGFibGUiXTokX0dFVFsic2VsZWN0Il0pLiInIGlkPSdkdW1wJyIuYm9sZChpc3NldCgkX0dFVFsiZHVtcCJdKSkuIj4iLmxhbmcoNDkpLiI8L2E+XG4iO319ZWNobyc8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJsb2dvdXQiIHZhbHVlPSInLGxhbmcoNTApLCciIG9uY2xpY2s9ImV2ZW50U3RvcChldmVudCk7Ij4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0idG9rZW4iIHZhbHVlPSInLCRNLCciPgo8L3A+CjwvZm9ybT4KPGZvcm0gYWN0aW9uPSIiPgo8cD4KJztoaWRkZW5fZmllbGRzX2dldCgpO2VjaG8oJF8/aHRtbF9zZWxlY3QoImRiIixhcnJheSgiIj0+IigiLmxhbmcoNTEpLiIpIikrJF8sREIsInRoaXMuZm9ybS5zdWJtaXQoKTsiKTonPGlucHV0IG5hbWU9ImRiIiB2YWx1ZT0iJy5oKERCKS4nIj4nKSwnPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IicsbGFuZyg4KSwnIicsKCRfPyIgY2xhc3M9J2hpZGRlbiciOiIiKSwnIG9uY2xpY2s9ImV2ZW50U3RvcChldmVudCk7Ij4KJztpZigkWmIhPSJkYiImJkRCIT0iIiYmJGctPnNlbGVjdF9kYihEQikpe2lmKHN1cHBvcnQoInNjaGVtZSIpKXtlY2hvIjxicj4iLmh0bWxfc2VsZWN0KCJucyIsYXJyYXkoIiI9PiIoIi5sYW5nKDUyKS4iKSIpK3NjaGVtYXMoKSwkX0dFVFsibnMiXSwidGhpcy5mb3JtLnN1Ym1pdCgpOyIpO2lmKCRfR0VUWyJucyJdIT0iIil7c2V0X3NjaGVtYSgkX0dFVFsibnMiXSk7fX1pZigkX0dFVFsibnMiXSE9PSIiJiYhJFpiKXtlY2hvJzxwPjxhIGhyZWY9IicuaChNRSkuJ2NyZWF0ZT0iJy5ib2xkKCRfR0VUWyJjcmVhdGUiXT09PSIiKS4iPiIubGFuZyg1MykuIjwvYT5cbiI7JEU9dGFibGVzX2xpc3QoKTtpZighJEUpe2VjaG8iPHAgY2xhc3M9J21lc3NhZ2UnPiIubGFuZyg2KS4iXG4iO31lbHNleyR0aGlzLT50YWJsZXNQcmludCgkRSk7JEphPWFycmF5KCk7Zm9yZWFjaCgkRQphcyRoPT4keil7JEphW109cHJlZ19xdW90ZSgkaCwnLycpO31lY2hvIjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz5cbiIsInZhciBqdXNoTGlua3MgPSB7ICR2OiBbICciLmpzX2VzY2FwZShNRSkuInRhYmxlPVwkJicsIC9cXGIoIi5pbXBsb2RlKCJ8IiwkSmEpLiIpXFxiL2cgXSB9O1xuIjtmb3JlYWNoKGFycmF5KCJiYWMiLCJicmEiLCJzcWxpdGVfcXVvIiwibXNzcWxfYnJhIilhcyRiKXtlY2hvImp1c2hMaW5rcy4kYiA9IGp1c2hMaW5rcy4kdjtcbiI7fWVjaG8iPC9zY3JpcHQ+XG4iO319fWVjaG8oaXNzZXQoJF9HRVRbInNxbCJdKT8nPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic3FsIiB2YWx1ZT0iIj4nOihpc3NldCgkX0dFVFsic2NoZW1hIl0pPyc8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzY2hlbWEiIHZhbHVlPSIiPic6KGlzc2V0KCRfR0VUWyJkdW1wIl0pPyc8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJkdW1wIiB2YWx1ZT0iIj4nOiIiKSkpLCI8L3A+PC9mb3JtPlxuIjt9fWZ1bmN0aW9uCnRhYmxlc1ByaW50KCRFKXtlY2hvIjxwIGlkPSd0YWJsZXMnPlxuIjtmb3JlYWNoKCRFCmFzJGg9PiR6KXtlY2hvJzxhIGhyZWY9IicuaChNRSkuJ3NlbGVjdD0nLnVybGVuY29kZSgkaCkuJyInLmJvbGQoJF9HRVRbInNlbGVjdCJdPT0kaCkuIj4iLmxhbmcoNTQpLiI8L2E+ICIsJzxhIGhyZWY9IicuaChNRSkuJ3RhYmxlPScudXJsZW5jb2RlKCRoKS4nIicuYm9sZCgkX0dFVFsidGFibGUiXT09JGgpLiI+Ii4kdGhpcy0+dGFibGVOYW1lKGFycmF5KCJOYW1lIj0+JGgpKS4iPC9hPjxicj5cbiI7fX19JG89KGZ1bmN0aW9uX2V4aXN0cygnYWRtaW5lcl9vYmplY3QnKT9hZG1pbmVyX29iamVjdCgpOm5ldwpBZG1pbmVyKTtpZighaXNzZXQoJG8tPm9wZXJhdG9ycykpeyRvLT5vcGVyYXRvcnM9JGdjO31mdW5jdGlvbgpwYWdlX2hlYWRlcigkSmUsJG49IiIsJHBjPWFycmF5KCksJEllPSIiKXtnbG9iYWwkdWEsJG8sJGcsJG5hO2hlYWRlcigiQ29udGVudC1UeXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiKTskby0+aGVhZGVycygpOyRIZT0kSmUuKCRJZSE9IiI/IjogIi5oKCRJZSk6IiIpOyRMZT1zdHJpcF90YWdzKCRIZS4oU0VSVkVSIT0iIiYmU0VSVkVSIT0ibG9jYWxob3N0Ij9oKCIgLSAiLlNFUlZFUik6IiIpLiIgLSAiLiRvLT5uYW1lKCkpO2lmKGlzX2FqYXgoKSl7aGVhZGVyKCJYLUFKQVgtVGl0bGU6ICIucmF3dXJsZW5jb2RlKCRMZSkpO31lbHNle2VjaG8nPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEvL0VOIj4KPGh0bWwgbGFuZz0iJywkdWEsJyIgZGlyPSInLGxhbmcoNTUpLCciPgo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCI+CjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtU2NyaXB0LVR5cGUiIGNvbnRlbnQ9InRleHQvamF2YXNjcmlwdCI+CjxtZXRhIG5hbWU9InJvYm90cyIgY29udGVudD0ibm9pbmRleCI+Cjx0aXRsZT4nLCRMZSwnPC90aXRsZT4KPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiB0eXBlPSJpbWFnZS94LWljb24iIGhyZWY9IicsaChwcmVnX3JlcGxhY2UoIn5cXD8uKn4iLCIiLE1FKSkuIj9maWxlPWZhdmljb24uaWNvJmFtcDt2ZXJzaW9uPTMuMi4yIiwnIiBpZD0iZmF2aWNvbiI+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9IicsaChwcmVnX3JlcGxhY2UoIn5cXD8uKn4iLCIiLE1FKSkuIj9maWxlPWRlZmF1bHQuY3NzJmFtcDt2ZXJzaW9uPTMuMi4yIiwnIj4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgp2YXIgYXJlWW91U3VyZSA9IFwnJyxsYW5nKDU2KSwnXCc7Cjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSInLGgocHJlZ19yZXBsYWNlKCJ+XFw/Lip+IiwiIixNRSkpLiI/ZmlsZT1mdW5jdGlvbnMuanMmYW1wO3ZlcnNpb249My4yLjIiLCciPjwvc2NyaXB0PgonO2lmKCRvLT5oZWFkKCkmJmZpbGVfZXhpc3RzKCJhZG1pbmVyLmNzcyIpKXtlY2hvJzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9ImFkbWluZXIuY3NzIj4KJzt9ZWNobycKPGJvZHkgY2xhc3M9IicsbGFuZyg1NSksJyBub2pzIiBvbmNsaWNrPSJyZXR1cm4gYm9keUNsaWNrKGV2ZW50LCBcJycsanNfZXNjYXBlKERCKSwnXCcsIFwnJyxqc19lc2NhcGUoJF9HRVRbIm5zIl0pLCdcJyk7IiBvbmtleWRvd249ImJvZHlLZXlkb3duKGV2ZW50KTsiIG9ubG9hZD0iYm9keUxvYWQoXCcnLChpc19vYmplY3QoJGcpP3N1YnN0cigkZy0+c2VydmVyX2luZm8sMCwzKToiIiksJ1wnKTsnLChpc3NldCgkX0NPT0tJRVsiYWRtaW5lcl92ZXJzaW9uIl0pPyIiOiIgdmVyaWZ5VmVyc2lvbigpOyIpOz8+Ij4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgpkb2N1bWVudC5ib2R5LmNsYXNzTmFtZSA9IGRvY3VtZW50LmJvZHkuY2xhc3NOYW1lLnJlcGxhY2UoLyhefFxzKW5vanMoXHN8JCkvLCAnJDFqcyQyJyk7Cjwvc2NyaXB0PgoKPGRpdiBpZD0iY29udGVudCI+Cjw/cGhwCn1pZihpc3NldCgkcGMpKXskdz1zdWJzdHIocHJlZ19yZXBsYWNlKCd+KHVzZXJuYW1lfGRifG5zKT1bXiZdKiZ+JywnJyxNRSksMCwtMSk7ZWNobyc8cCBpZD0iYnJlYWRjcnVtYiI+PGEgaHJlZj0iJy4oJHc/aCgkdyk6Ii4iKS4nIj4nLiRuYVtEUklWRVJdLic8L2E+ICZyYXF1bzsgJzskdz1zdWJzdHIocHJlZ19yZXBsYWNlKCd+KGRifG5zKT1bXiZdKiZ+JywnJyxNRSksMCwtMSk7JEY9KFNFUlZFUiE9IiI/aChTRVJWRVIpOmxhbmcoMjApKTtpZigkcGM9PT1mYWxzZSl7ZWNobyIkRlxuIjt9ZWxzZXtlY2hvIjxhIGhyZWY9JyIuKCR3P2goJHcpOiIuIikuIic+JEY8L2E+ICZyYXF1bzsgIjtpZigkX0dFVFsibnMiXSE9IiJ8fChEQiE9IiImJmlzX2FycmF5KCRwYykpKXtlY2hvJzxhIGhyZWY9IicuaCgkdy4iJmRiPSIudXJsZW5jb2RlKERCKS4oc3VwcG9ydCgic2NoZW1lIik/IiZucz0iOiIiKSkuJyI+Jy5oKERCKS4nPC9hPiAmcmFxdW87ICc7fWlmKGlzX2FycmF5KCRwYykpe2lmKCRfR0VUWyJucyJdIT0iIil7ZWNobyc8YSBocmVmPSInLmgoc3Vic3RyKE1FLDAsLTEpKS4nIj4nLmgoJF9HRVRbIm5zIl0pLic8L2E+ICZyYXF1bzsgJzt9Zm9yZWFjaCgkcGMKYXMkZD0+JGIpeyRyYz0oaXNfYXJyYXkoJGIpPyRiWzFdOiRiKTtpZigkcmMhPSIiKXtlY2hvJzxhIGhyZWY9IicuaChNRS4iJGQ9IikudXJsZW5jb2RlKGlzX2FycmF5KCRiKT8kYlswXTokYikuJyI+Jy5oKCRyYykuJzwvYT4gJnJhcXVvOyAnO319fWVjaG8iJEplXG4iO319ZWNobyI8c3BhbiBpZD0nbG9hZGVyJz48L3NwYW4+XG4iLCI8aDI+JEhlPC9oMj5cbiI7cmVzdGFydF9zZXNzaW9uKCk7JE1lPXByZWdfcmVwbGFjZSgnfl5bXj9dKn4nLCcnLCRfU0VSVkVSWyJSRVFVRVNUX1VSSSJdKTskUWU9JF9TRVNTSU9OWyJtZXNzYWdlcyJdWyRNZV07aWYoJFFlKXtlY2hvIjxkaXYgY2xhc3M9J21lc3NhZ2UnPiIuaW1wbG9kZSgiPC9kaXY+XG48ZGl2IGNsYXNzPSdtZXNzYWdlJz4iLCRRZSkuIjwvZGl2PlxuIjt1bnNldCgkX1NFU1NJT05bIm1lc3NhZ2VzIl1bJE1lXSk7fSRfPSZnZXRfc2Vzc2lvbigiZGJzIik7aWYoREIhPSIiJiYkXyYmIWluX2FycmF5KERCLCRfLHRydWUpKXskXz1udWxsO31pZigkbil7ZWNobyI8ZGl2IGNsYXNzPSdlcnJvcic+JG48L2Rpdj5cbiI7fWRlZmluZSgiUEFHRV9IRUFERVIiLDEpO31mdW5jdGlvbgpwYWdlX2Zvb3RlcigkWmI9IiIpe2dsb2JhbCRvO2lmKCFpc19hamF4KCkpe2VjaG8nPC9kaXY+CgonO3N3aXRjaF9sYW5nKCk7ZWNobyc8ZGl2IGlkPSJtZW51Ij4KJzskby0+bmF2aWdhdGlvbigkWmIpO2VjaG8nPC9kaXY+Cic7fX1mdW5jdGlvbgppbnQzMigkZmEpe3doaWxlKCRmYT49MjE0NzQ4MzY0OCl7JGZhLT00Mjk0OTY3Mjk2O313aGlsZSgkZmE8PS0yMTQ3NDgzNjQ5KXskZmErPTQyOTQ5NjcyOTY7fXJldHVybihpbnQpJGZhO31mdW5jdGlvbgpsb25nMnN0cigkeSwkSGQpeyRtYT0nJztmb3JlYWNoKCR5CmFzJGIpeyRtYS49cGFjaygnVicsJGIpO31pZigkSGQpe3JldHVybgpzdWJzdHIoJG1hLDAsZW5kKCR5KSk7fXJldHVybiRtYTt9ZnVuY3Rpb24Kc3RyMmxvbmcoJG1hLCRIZCl7JHk9YXJyYXlfdmFsdWVzKHVucGFjaygnVionLHN0cl9wYWQoJG1hLDQqY2VpbChzdHJsZW4oJG1hKS80KSwiXDAiKSkpO2lmKCRIZCl7JHlbXT1zdHJsZW4oJG1hKTt9cmV0dXJuJHk7fWZ1bmN0aW9uCnh4dGVhX214KCRDYSwkeGEsJEZhLCRNYSl7cmV0dXJuCmludDMyKCgoJENhPj41JjB4N0ZGRkZGRileJHhhPDwyKSsoKCR4YT4+MyYweDFGRkZGRkZGKV4kQ2E8PDQpKV5pbnQzMigoJEZhXiR4YSkrKCRNYV4kQ2EpKTt9ZnVuY3Rpb24KZW5jcnlwdF9zdHJpbmcoJEZjLCRkKXtpZigkRmM9PSIiKXtyZXR1cm4iIjt9JGQ9YXJyYXlfdmFsdWVzKHVucGFjaygiVioiLHBhY2soIkgqIixtZDUoJGQpKSkpOyR5PXN0cjJsb25nKCRGYyx0cnVlKTskZmE9Y291bnQoJHkpLTE7JENhPSR5WyRmYV07JHhhPSR5WzBdOyRhYT1mbG9vcig2KzUyLygkZmErMSkpOyRGYT0wO3doaWxlKCRhYS0tPjApeyRGYT1pbnQzMigkRmErMHg5RTM3NzlCOSk7JEVjPSRGYT4+MiYzO2Zvcigkd2E9MDskd2E8JGZhOyR3YSsrKXskeGE9JHlbJHdhKzFdOyRNYj14eHRlYV9teCgkQ2EsJHhhLCRGYSwkZFskd2EmM14kRWNdKTskQ2E9aW50MzIoJHlbJHdhXSskTWIpOyR5WyR3YV09JENhO30keGE9JHlbMF07JE1iPXh4dGVhX214KCRDYSwkeGEsJEZhLCRkWyR3YSYzXiRFY10pOyRDYT1pbnQzMigkeVskZmFdKyRNYik7JHlbJGZhXT0kQ2E7fXJldHVybgpsb25nMnN0cigkeSxmYWxzZSk7fWZ1bmN0aW9uCmRlY3J5cHRfc3RyaW5nKCRGYywkZCl7aWYoJEZjPT0iIil7cmV0dXJuIiI7fSRkPWFycmF5X3ZhbHVlcyh1bnBhY2soIlYqIixwYWNrKCJIKiIsbWQ1KCRkKSkpKTskeT1zdHIybG9uZygkRmMsZmFsc2UpOyRmYT1jb3VudCgkeSktMTskQ2E9JHlbJGZhXTskeGE9JHlbMF07JGFhPWZsb29yKDYrNTIvKCRmYSsxKSk7JEZhPWludDMyKCRhYSoweDlFMzc3OUI5KTt3aGlsZSgkRmEpeyRFYz0kRmE+PjImMztmb3IoJHdhPSRmYTskd2E+MDskd2EtLSl7JENhPSR5WyR3YS0xXTskTWI9eHh0ZWFfbXgoJENhLCR4YSwkRmEsJGRbJHdhJjNeJEVjXSk7JHhhPWludDMyKCR5WyR3YV0tJE1iKTskeVskd2FdPSR4YTt9JENhPSR5WyRmYV07JE1iPXh4dGVhX214KCRDYSwkeGEsJEZhLCRkWyR3YSYzXiRFY10pOyR4YT1pbnQzMigkeVswXS0kTWIpOyR5WzBdPSR4YTskRmE9aW50MzIoJEZhLTB4OUUzNzc5QjkpO31yZXR1cm4KbG9uZzJzdHIoJHksdHJ1ZSk7fSRnPScnOyRNPSRfU0VTU0lPTlsidG9rZW4iXTtpZighJF9TRVNTSU9OWyJ0b2tlbiJdKXskX1NFU1NJT05bInRva2VuIl09cmFuZCgxLDFlNik7fSRfYj1hcnJheSgpO2lmKCRfQ09PS0lFWyJhZG1pbmVyX3Blcm1hbmVudCJdKXtmb3JlYWNoKGV4cGxvZGUoIiAiLCRfQ09PS0lFWyJhZG1pbmVyX3Blcm1hbmVudCJdKWFzJGIpe2xpc3QoJGQpPWV4cGxvZGUoIjoiLCRiKTskX2JbJGRdPSRiO319aWYoaXNzZXQoJF9QT1NUWyJzZXJ2ZXIiXSkpe3Nlc3Npb25fcmVnZW5lcmF0ZV9pZCgpOyRfU0VTU0lPTlsicHdkcyJdWyRfUE9TVFsiZHJpdmVyIl1dWyRfUE9TVFsic2VydmVyIl1dWyRfUE9TVFsidXNlcm5hbWUiXV09JF9QT1NUWyJwYXNzd29yZCJdO2lmKCRfUE9TVFsicGVybWFuZW50Il0peyRkPWJhc2U2NF9lbmNvZGUoJF9QT1NUWyJkcml2ZXIiXSkuIi0iLmJhc2U2NF9lbmNvZGUoJF9QT1NUWyJzZXJ2ZXIiXSkuIi0iLmJhc2U2NF9lbmNvZGUoJF9QT1NUWyJ1c2VybmFtZSJdKTskVmM9JG8tPnBlcm1hbmVudExvZ2luKCk7JF9iWyRkXT0iJGQ6Ii5iYXNlNjRfZW5jb2RlKCRWYz9lbmNyeXB0X3N0cmluZygkX1BPU1RbInBhc3N3b3JkIl0sJFZjKToiIik7Y29va2llKCJhZG1pbmVyX3Blcm1hbmVudCIsaW1wbG9kZSgiICIsJF9iKSk7fWlmKGNvdW50KCRfUE9TVCk9PSgkX1BPU1RbInBlcm1hbmVudCJdPzU6NCl8fERSSVZFUiE9JF9QT1NUWyJkcml2ZXIiXXx8U0VSVkVSIT0kX1BPU1RbInNlcnZlciJdfHwkX0dFVFsidXNlcm5hbWUiXSE9PSRfUE9TVFsidXNlcm5hbWUiXSl7cmVkaXJlY3QoYXV0aF91cmwoJF9QT1NUWyJkcml2ZXIiXSwkX1BPU1RbInNlcnZlciJdLCRfUE9TVFsidXNlcm5hbWUiXSkpO319ZWxzZWlmKCRfUE9TVFsibG9nb3V0Il0pe2lmKCRNJiYkX1BPU1RbInRva2VuIl0hPSRNKXtwYWdlX2hlYWRlcihsYW5nKDUwKSxsYW5nKDU3KSk7cGFnZV9mb290ZXIoImRiIik7ZXhpdDt9ZWxzZXtmb3JlYWNoKGFycmF5KCJwd2RzIiwiZGJzIiwicXVlcmllcyIpYXMkZCl7c2V0X3Nlc3Npb24oJGQsbnVsbCk7fSRkPWJhc2U2NF9lbmNvZGUoRFJJVkVSKS4iLSIuYmFzZTY0X2VuY29kZShTRVJWRVIpLiItIi5iYXNlNjRfZW5jb2RlKCRfR0VUWyJ1c2VybmFtZSJdKTtpZigkX2JbJGRdKXt1bnNldCgkX2JbJGRdKTtjb29raWUoImFkbWluZXJfcGVybWFuZW50IixpbXBsb2RlKCIgIiwkX2IpKTt9cmVkaXJlY3Qoc3Vic3RyKHByZWdfcmVwbGFjZSgnfih1c2VybmFtZXxkYnxucyk9W14mXSomficsJycsTUUpLDAsLTEpLGxhbmcoNTgpKTt9fWVsc2VpZigkX2ImJiEkX1NFU1NJT05bInB3ZHMiXSl7c2Vzc2lvbl9yZWdlbmVyYXRlX2lkKCk7JFZjPSRvLT5wZXJtYW5lbnRMb2dpbigpO2ZvcmVhY2goJF9iCmFzJGQ9PiRiKXtsaXN0KCwkUGYpPWV4cGxvZGUoIjoiLCRiKTtsaXN0KCRJYiwkRiwkUCk9YXJyYXlfbWFwKCdiYXNlNjRfZGVjb2RlJyxleHBsb2RlKCItIiwkZCkpOyRfU0VTU0lPTlsicHdkcyJdWyRJYl1bJEZdWyRQXT1kZWNyeXB0X3N0cmluZyhiYXNlNjRfZGVjb2RlKCRQZiksJFZjKTt9fWZ1bmN0aW9uCmF1dGhfZXJyb3IoJHplPW51bGwpe2dsb2JhbCRnLCRvLCRNOyRUYz1zZXNzaW9uX25hbWUoKTskbj0iIjtpZighJF9DT09LSUVbJFRjXSYmJF9HRVRbJFRjXSYmaW5pX2Jvb2woInNlc3Npb24udXNlX29ubHlfY29va2llcyIpKXskbj1sYW5nKDU5KTt9ZWxzZWlmKGlzc2V0KCRfR0VUWyJ1c2VybmFtZSJdKSl7aWYoKCRfQ09PS0lFWyRUY118fCRfR0VUWyRUY10pJiYhJE0peyRuPWxhbmcoNjApO31lbHNleyRUPSZnZXRfc2Vzc2lvbigicHdkcyIpO2lmKGlzc2V0KCRUKSl7JG49aCgkemU/JHplLT5nZXRNZXNzYWdlKCk6KGlzX3N0cmluZygkZyk/JGc6bGFuZyg2MSkpKTskVD1udWxsO319fXBhZ2VfaGVhZGVyKGxhbmcoMjMpLCRuLG51bGwpO2VjaG8iPGZvcm0gYWN0aW9uPScnIG1ldGhvZD0ncG9zdCcgb25jbGljaz0nZXZlbnRTdG9wKGV2ZW50KTsnPlxuIjskby0+bG9naW5Gb3JtKCk7ZWNobyI8ZGl2PiI7aGlkZGVuX2ZpZWxkcygkX1BPU1QsYXJyYXkoImRyaXZlciIsInNlcnZlciIsInVzZXJuYW1lIiwicGFzc3dvcmQiLCJwZXJtYW5lbnQiKSk7ZWNobyI8L2Rpdj5cbiIsIjwvZm9ybT5cbiI7cGFnZV9mb290ZXIoImF1dGgiKTt9aWYoaXNzZXQoJF9HRVRbInVzZXJuYW1lIl0pKXtpZighY2xhc3NfZXhpc3RzKCJNaW5fREIiKSl7dW5zZXQoJF9TRVNTSU9OWyJwd2RzIl1bRFJJVkVSXSk7cGFnZV9oZWFkZXIobGFuZyg2MiksbGFuZyg2MyxpbXBsb2RlKCIsICIsJG9jKSksZmFsc2UpO3BhZ2VfZm9vdGVyKCJhdXRoIik7ZXhpdDt9JGc9Y29ubmVjdCgpO31pZihpc19zdHJpbmcoJGcpfHwhJG8tPmxvZ2luKCRfR0VUWyJ1c2VybmFtZSJdLGdldF9zZXNzaW9uKCJwd2RzIikpKXthdXRoX2Vycm9yKCk7ZXhpdDt9JE09JF9TRVNTSU9OWyJ0b2tlbiJdO2lmKGlzc2V0KCRfUE9TVFsic2VydmVyIl0pJiYkX1BPU1RbInRva2VuIl0peyRfUE9TVFsidG9rZW4iXT0kTTt9JG49KCRfUE9TVD8oJF9QT1NUWyJ0b2tlbiJdPT0kTT8iIjpsYW5nKDU3KSk6KCRfU0VSVkVSWyJSRVFVRVNUX01FVEhPRCJdIT0iUE9TVCI/IiI6bGFuZyg2NCwnInBvc3RfbWF4X3NpemUiJykpKTtmdW5jdGlvbgpjb25uZWN0X2Vycm9yKCl7Z2xvYmFsJGcsJE0sJG4sJG5hOyRfPWFycmF5KCk7aWYoREIhPSIiKXtwYWdlX2hlYWRlcihsYW5nKDY1KS4iOiAiLmgoREIpLGxhbmcoNjYpLHRydWUpO31lbHNle2lmKCRfUE9TVFsiZGIiXSYmISRuKXtxdWVyaWVzX3JlZGlyZWN0KHN1YnN0cihNRSwwLC0xKSxsYW5nKDY3KSxkcm9wX2RhdGFiYXNlcygkX1BPU1RbImRiIl0pKTt9cGFnZV9oZWFkZXIobGFuZyg2OCksJG4sZmFsc2UpO2VjaG8iPHA+PGEgaHJlZj0nIi5oKE1FKS4iZGF0YWJhc2U9Jz4iLmxhbmcoNjkpLiI8L2E+XG4iO2ZvcmVhY2goYXJyYXkoJ3ByaXZpbGVnZXMnPT5sYW5nKDcwKSwncHJvY2Vzc2xpc3QnPT5sYW5nKDcxKSwndmFyaWFibGVzJz0+bGFuZyg3MiksJ3N0YXR1cyc9PmxhbmcoNzMpLClhcyRkPT4kYil7aWYoc3VwcG9ydCgkZCkpe2VjaG8iPGEgaHJlZj0nIi5oKE1FKS4iJGQ9Jz4kYjwvYT5cbiI7fX1lY2hvIjxwPiIubGFuZyg3NCwkbmFbRFJJVkVSXSwiPGI+JGctPnNlcnZlcl9pbmZvPC9iPiIsIjxiPiRnLT5leHRlbnNpb248L2I+IikuIlxuIiwiPHA+Ii5sYW5nKDc1LCI8Yj4iLmgobG9nZ2VkX3VzZXIoKSkuIjwvYj4iKS4iXG4iO2lmKCRfR0VUWyJyZWZyZXNoIl0pe3NldF9zZXNzaW9uKCJkYnMiLG51bGwpO30kXz1nZXRfZGF0YWJhc2VzKCk7aWYoJF8peyRFZD1zdXBwb3J0KCJzY2hlbWUiKTskWj1jb2xsYXRpb25zKCk7ZWNobyI8Zm9ybSBhY3Rpb249JycgbWV0aG9kPSdwb3N0Jz5cbiIsIjx0YWJsZSBjZWxsc3BhY2luZz0nMCcgb25jbGljaz0ndGFibGVDbGljayhldmVudCk7Jz5cbiIsIjx0aGVhZD48dHI+PHRkPiZuYnNwOzx0aD4iLmxhbmcoNjUpLiI8dGQ+Ii5sYW5nKDc2KS4iPHRkPiIubGFuZyg3NykuIjwvdGhlYWQ+XG4iO2ZvcmVhY2goJF8KYXMkdCl7JEpkPWgoTUUpLiJkYj0iLnVybGVuY29kZSgkdCk7ZWNobyI8dHIiLm9kZCgpLiI+PHRkPiIuY2hlY2tib3goImRiW10iLCR0LGluX2FycmF5KCR0LChhcnJheSkkX1BPU1RbImRiIl0pKSwiPHRoPjxhIGhyZWY9JyRKZCc+Ii5oKCR0KS4iPC9hPiIsIjx0ZD48YSBocmVmPSckSmQiLigkRWQ/IiZhbXA7bnM9IjoiIikuIiZhbXA7ZGF0YWJhc2U9Jz4iLm5ic3AoZGJfY29sbGF0aW9uKCR0LCRaKSkuIjwvYT4iLCI8dGQgYWxpZ249J3JpZ2h0Jz48YSBocmVmPSckSmQmYW1wO3NjaGVtYT0nIGlkPSd0YWJsZXMtIi5oKCR0KS4iJz4/PC9hPiIsIlxuIjt9ZWNobyI8L3RhYmxlPlxuIiwiPHA+PGlucHV0IHR5cGU9J3N1Ym1pdCcgbmFtZT0nZHJvcCcgdmFsdWU9JyIubGFuZyg3OCkuIiciLmNvbmZpcm0oImZvcm1DaGVja2VkKHRoaXMsIC9kYi8pIiwxKS4iPlxuIjtlY2hvIjxpbnB1dCB0eXBlPSdoaWRkZW4nIG5hbWU9J3Rva2VuJyB2YWx1ZT0nJE0nPlxuIiwiPGEgaHJlZj0nIi5oKE1FKS4icmVmcmVzaD0xJyBvbmNsaWNrPSdldmVudFN0b3AoZXZlbnQpOyc+Ii5sYW5nKDc5KS4iPC9hPlxuIiwiPC9mb3JtPlxuIjt9fXBhZ2VfZm9vdGVyKCJkYiIpO2lmKCRfKXtlY2hvIjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz5hamF4U2V0SHRtbCgnIi5qc19lc2NhcGUoTUUpLiJzY3JpcHQ9Y29ubmVjdCcpOzwvc2NyaXB0PlxuIjt9fWlmKGlzc2V0KCRfR0VUWyJzdGF0dXMiXSkpeyRfR0VUWyJ2YXJpYWJsZXMiXT0kX0dFVFsic3RhdHVzIl07fWlmKCEoREIhPSIiPyRnLT5zZWxlY3RfZGIoREIpOmlzc2V0KCRfR0VUWyJzcWwiXSl8fGlzc2V0KCRfR0VUWyJkdW1wIl0pfHxpc3NldCgkX0dFVFsiZGF0YWJhc2UiXSl8fGlzc2V0KCRfR0VUWyJwcm9jZXNzbGlzdCJdKXx8aXNzZXQoJF9HRVRbInByaXZpbGVnZXMiXSl8fGlzc2V0KCRfR0VUWyJ1c2VyIl0pfHxpc3NldCgkX0dFVFsidmFyaWFibGVzIl0pfHwkX0dFVFsic2NyaXB0Il09PSJjb25uZWN0Iikpe2lmKERCIT0iIil7c2V0X3Nlc3Npb24oImRicyIsbnVsbCk7fWNvbm5lY3RfZXJyb3IoKTtleGl0O31pZihzdXBwb3J0KCJzY2hlbWUiKSYmREIhPSIiJiYkX0dFVFsibnMiXSE9PSIiKXtpZighaXNzZXQoJF9HRVRbIm5zIl0pKXtyZWRpcmVjdChwcmVnX3JlcGxhY2UoJ35ucz1bXiZdKiZ+JywnJyxNRSkuIm5zPSIuZ2V0X3NjaGVtYSgpKTt9aWYoIXNldF9zY2hlbWEoJF9HRVRbIm5zIl0pKXtwYWdlX2hlYWRlcihsYW5nKDgwKS4iOiAiLmgoJF9HRVRbIm5zIl0pLGxhbmcoODEpLHRydWUpO3BhZ2VfZm9vdGVyKCJucyIpO2V4aXQ7fX1mdW5jdGlvbgpzZWxlY3QoJGksJEc9bnVsbCwkeWU9IiIpeyRKYT1hcnJheSgpOyRKPWFycmF5KCk7JEI9YXJyYXkoKTskeGU9YXJyYXkoKTskUj1hcnJheSgpO29kZCgnJyk7Zm9yKCRsPTA7JGE9JGktPmZldGNoX3JvdygpOyRsKyspe2lmKCEkbCl7ZWNobyI8dGFibGUgY2VsbHNwYWNpbmc9JzAnIGNsYXNzPSdub3dyYXAnPlxuIiwiPHRoZWFkPjx0cj4iO2ZvcigkcmE9MDskcmE8Y291bnQoJGEpOyRyYSsrKXskZT0kaS0+ZmV0Y2hfZmllbGQoKTskRGE9JGUtPm9yZ3RhYmxlOyRCYz0kZS0+b3JnbmFtZTtpZigkRGEhPSIiKXtpZighaXNzZXQoJEpbJERhXSkpeyRKWyREYV09YXJyYXkoKTtmb3JlYWNoKGluZGV4ZXMoJERhLCRHKWFzJHgpe2lmKCR4WyJ0eXBlIl09PSJQUklNQVJZIil7JEpbJERhXT1hcnJheV9mbGlwKCR4WyJjb2x1bW5zIl0pO2JyZWFrO319JEJbJERhXT0kSlskRGFdO31pZihpc3NldCgkQlskRGFdWyRCY10pKXt1bnNldCgkQlskRGFdWyRCY10pOyRKWyREYV1bJEJjXT0kcmE7JEphWyRyYV09JERhO319aWYoJGUtPmNoYXJzZXRucj09NjMpeyR4ZVskcmFdPXRydWU7fSRSWyRyYV09JGUtPnR5cGU7JGY9aCgkZS0+bmFtZSk7ZWNobyI8dGgiLigkRGEhPSIifHwkZS0+bmFtZSE9JEJjPyIgdGl0bGU9JyIuaCgoJERhIT0iIj8iJERhLiI6IiIpLiRCYykuIiciOiIiKS4iPiIuKCR5ZT8iPGEgaHJlZj0nJHllIi5zdHJ0b2xvd2VyKCRmKS4iJyB0YXJnZXQ9J19ibGFuaycgcmVsPSdub3JlZmVycmVyJz4kZjwvYT4iOiRmKTt9ZWNobyI8L3RoZWFkPlxuIjt9ZWNobyI8dHIiLm9kZCgpLiI+Ijtmb3JlYWNoKCRhCmFzJGQ9PiRiKXtpZighaXNzZXQoJGIpKXskYj0iPGk+TlVMTDwvaT4iO31lbHNle2lmKCR4ZVskZF0mJiFpc191dGY4KCRiKSl7JGI9IjxpPiIubGFuZygzMixzdHJsZW4oJGIpKS4iPC9pPiI7fWVsc2VpZighc3RybGVuKCRiKSl7JGI9IiZuYnNwOyI7fWVsc2V7JGI9aCgkYik7aWYoJFJbJGRdPT0yNTQpeyRiPSI8Y29kZT4kYjwvY29kZT4iO319aWYoaXNzZXQoJEphWyRkXSkmJiEkQlskSmFbJGRdXSl7JHc9ImVkaXQ9Ii51cmxlbmNvZGUoJEphWyRkXSk7Zm9yZWFjaCgkSlskSmFbJGRdXWFzJFBjPT4kcmEpeyR3Lj0iJndoZXJlIi51cmxlbmNvZGUoIlsiLmJyYWNrZXRfZXNjYXBlKCRQYykuIl0iKS4iPSIudXJsZW5jb2RlKCRhWyRyYV0pO30kYj0iPGEgaHJlZj0nIi5oKE1FLiR3KS4iJz4kYjwvYT4iO319ZWNobyI8dGQ+JGIiO319ZWNobygkbD8iPC90YWJsZT4iOiI8cCBjbGFzcz0nbWVzc2FnZSc+Ii5sYW5nKDgyKSkuIlxuIjt9ZnVuY3Rpb24KcmVmZXJlbmNhYmxlX3ByaW1hcnkoJFRmKXskYz1hcnJheSgpO2ZvcmVhY2godGFibGVfc3RhdHVzKClhcyRFYT0+JGgpe2lmKCRFYSE9JFRmJiZma19zdXBwb3J0KCRoKSl7Zm9yZWFjaChmaWVsZHMoJEVhKWFzJGUpe2lmKCRlWyJwcmltYXJ5Il0pe2lmKCRjWyRFYV0pe3Vuc2V0KCRjWyRFYV0pO2JyZWFrO30kY1skRWFdPSRlO319fX1yZXR1cm4kYzt9ZnVuY3Rpb24KdGV4dGFyZWEoJGYsJHEsJEg9MTAsJG1iPTgwKXtlY2hvIjx0ZXh0YXJlYSBuYW1lPSckZicgcm93cz0nJEgnIGNvbHM9JyRtYicgY2xhc3M9J3NxbGFyZWEnIHNwZWxsY2hlY2s9J2ZhbHNlJyB3cmFwPSdvZmYnIG9ua2V5ZG93bj0ncmV0dXJuIHRleHRhcmVhS2V5ZG93bih0aGlzLCBldmVudCk7Jz4iO2lmKGlzX2FycmF5KCRxKSl7Zm9yZWFjaCgkcQphcyRiKXtlY2hvCmgoJGIpLiJcblxuXG4iO319ZWxzZXtlY2hvCmgoJHEpO31lY2hvIjwvdGV4dGFyZWE+Ijt9ZnVuY3Rpb24KZm9ybWF0X3RpbWUoJEZiLCRDYyl7cmV0dXJuIiA8c3BhbiBjbGFzcz0ndGltZSc+KCIubGFuZyg4MyxtYXgoMCwkQ2NbMF0tJEZiWzBdKyRDY1sxXS0kRmJbMV0pKS4iKTwvc3Bhbj4iO31mdW5jdGlvbgplZGl0X3R5cGUoJGQsJGUsJFosJGhhPWFycmF5KCkpe2dsb2JhbCRMYSwkUiwkb2IsJGZiO2VjaG8nPHRkPjxzZWxlY3QgbmFtZT0iJywkZCwnW3R5cGVdIiBjbGFzcz0idHlwZSIgb25mb2N1cz0ibGFzdFR5cGUgPSBzZWxlY3RWYWx1ZSh0aGlzKTsiIG9uY2hhbmdlPSJlZGl0aW5nVHlwZUNoYW5nZSh0aGlzKTsiPicsb3B0aW9ubGlzdCgoISRlWyJ0eXBlIl18fGlzc2V0KCRSWyRlWyJ0eXBlIl1dKT9hcnJheSgpOmFycmF5KCRlWyJ0eXBlIl0pKSskTGErKCRoYT9hcnJheShsYW5nKDg0KT0+JGhhKTphcnJheSgpKSwkZVsidHlwZSJdKSwnPC9zZWxlY3Q+Cjx0ZD48aW5wdXQgbmFtZT0iJywkZCwnW2xlbmd0aF0iIHZhbHVlPSInLGgoJGVbImxlbmd0aCJdKSwnIiBzaXplPSIzIiBvbmZvY3VzPSJlZGl0aW5nTGVuZ3RoRm9jdXModGhpcyk7Ij48dGQgY2xhc3M9Im9wdGlvbnMiPicsIjxzZWxlY3QgbmFtZT0nJGQiLiJbY29sbGF0aW9uXSciLihlcmVnKCcoY2hhcnx0ZXh0fGVudW18c2V0KSQnLCRlWyJ0eXBlIl0pPyIiOiIgY2xhc3M9J2hpZGRlbiciKS4nPjxvcHRpb24gdmFsdWU9IiI+KCcubGFuZyg4NSkuJyknLm9wdGlvbmxpc3QoJFosJGVbImNvbGxhdGlvbiJdKS4nPC9zZWxlY3Q+JywoJG9iPyI8c2VsZWN0IG5hbWU9JyRkIi4iW3Vuc2lnbmVkXSciLighJGVbInR5cGUiXXx8ZXJlZygnKGludHxmbG9hdHxkb3VibGV8ZGVjaW1hbCkkJywkZVsidHlwZSJdKT8iIjoiIGNsYXNzPSdoaWRkZW4nIikuJz48b3B0aW9uPicub3B0aW9ubGlzdCgkb2IsJGVbInVuc2lnbmVkIl0pLic8L3NlbGVjdD4nOicnKSwoJGhhPyI8c2VsZWN0IG5hbWU9JyRkIi4iW29uX2RlbGV0ZV0nIi4oZXJlZygiYCIsJGVbInR5cGUiXSk/IiI6IiBjbGFzcz0naGlkZGVuJyIpLiI+PG9wdGlvbiB2YWx1ZT0nJz4oIi5sYW5nKDg2KS4iKSIub3B0aW9ubGlzdCgkZmIsJGVbIm9uX2RlbGV0ZSJdKS4iPC9zZWxlY3Q+ICI6IiAiKTt9ZnVuY3Rpb24KcHJvY2Vzc19sZW5ndGgoJFcpe2dsb2JhbCRHYjtyZXR1cm4ocHJlZ19tYXRjaCgifl5cXHMqKD86JEdiKSg/OlxccyosXFxzKig/OiRHYikpKlxccypcJH4iLCRXKSYmcHJlZ19tYXRjaF9hbGwoIn4kR2J+IiwkVywkb2EpP2ltcGxvZGUoIiwiLCRvYVswXSk6cHJlZ19yZXBsYWNlKCd+W14wLTksKy1dficsJycsJFcpKTt9ZnVuY3Rpb24KcHJvY2Vzc190eXBlKCRlLCREYz0iQ09MTEFURSIpe2dsb2JhbCRvYjtyZXR1cm4iICRlW3R5cGVdIi4oJGVbImxlbmd0aCJdIT0iIj8iKCIucHJvY2Vzc19sZW5ndGgoJGVbImxlbmd0aCJdKS4iKSI6IiIpLihlcmVnKCdpbnR8ZmxvYXR8ZG91YmxlfGRlY2ltYWwnLCRlWyJ0eXBlIl0pJiZpbl9hcnJheSgkZVsidW5zaWduZWQiXSwkb2IpPyIgJGVbdW5zaWduZWRdIjoiIikuKGVyZWcoJ2NoYXJ8dGV4dHxlbnVtfHNldCcsJGVbInR5cGUiXSkmJiRlWyJjb2xsYXRpb24iXT8iICREYyAiLnEoJGVbImNvbGxhdGlvbiJdKToiIik7fWZ1bmN0aW9uCnByb2Nlc3NfZmllbGQoJGUsJFVjKXtyZXR1cm4KYXJyYXkoaWRmX2VzY2FwZSgkZVsiZmllbGQiXSkscHJvY2Vzc190eXBlKCRVYyksKCRlWyJudWxsIl0/IiBOVUxMIjoiIE5PVCBOVUxMIiksKGlzc2V0KCRlWyJkZWZhdWx0Il0pPyIgREVGQVVMVCAiLigkZVsidHlwZSJdPT0idGltZXN0YW1wIiYmZXJlZ2koIl5DVVJSRU5UX1RJTUVTVEFNUCQiLCRlWyJkZWZhdWx0Il0pPyRlWyJkZWZhdWx0Il06cSgkZVsiZGVmYXVsdCJdKSk6IiIpLCgkZVsib25fdXBkYXRlIl0/IiBPTiBVUERBVEUgJGVbb25fdXBkYXRlXSI6IiIpLChzdXBwb3J0KCJjb21tZW50IikmJiRlWyJjb21tZW50Il0hPSIiPyIgQ09NTUVOVCAiLnEoJGVbImNvbW1lbnQiXSk6IiIpLCgkZVsiYXV0b19pbmNyZW1lbnQiXT9hdXRvX2luY3JlbWVudCgpOm51bGwpLCk7fWZ1bmN0aW9uCnR5cGVfY2xhc3MoJHope2ZvcmVhY2goYXJyYXkoJ2NoYXInPT4ndGV4dCcsJ2RhdGUnPT4ndGltZXx5ZWFyJywnYmluYXJ5Jz0+J2Jsb2InLCdlbnVtJz0+J3NldCcsKWFzJGQ9PiRiKXtpZihlcmVnKCIkZHwkYiIsJHopKXtyZXR1cm4iIGNsYXNzPSckZCciO319fWZ1bmN0aW9uCmVkaXRfZmllbGRzKCRwLCRaLCR6PSJUQUJMRSIsJHdlPTAsJGhhPWFycmF5KCksJEtiPWZhbHNlKXtnbG9iYWwkamM7Zm9yZWFjaCgkcAphcyRlKXtpZigkZVsiY29tbWVudCJdIT0iIil7JEtiPXRydWU7YnJlYWs7fX1lY2hvJzx0aGVhZD48dHIgY2xhc3M9IndyYXAiPgonO2lmKCR6PT0iUFJPQ0VEVVJFIil7ZWNobyc8dGQ+Jm5ic3A7Jzt9ZWNobyc8dGg+JywoJHo9PSJUQUJMRSI/bGFuZyg4Nyk6bGFuZyg4OCkpLCc8dGQ+JyxsYW5nKDg5KSwnPHRleHRhcmVhIGlkPSJlbnVtLWVkaXQiIHJvd3M9IjQiIGNvbHM9IjEyIiB3cmFwPSJvZmYiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgb25ibHVyPSJlZGl0aW5nTGVuZ3RoQmx1cih0aGlzKTsiPjwvdGV4dGFyZWE+Cjx0ZD4nLGxhbmcoOTApLCc8dGQ+JyxsYW5nKDkxKTtpZigkej09IlRBQkxFIil7ZWNobyc8dGQ+TlVMTAo8dGQ+PGlucHV0IHR5cGU9InJhZGlvIiBuYW1lPSJhdXRvX2luY3JlbWVudF9jb2wiIHZhbHVlPSIiPjxhY3JvbnltIHRpdGxlPSInLGxhbmcoOTIpLCciPkFJPC9hY3JvbnltPgo8dGQgY2xhc3M9ImhpZGRlbiI+JyxsYW5nKDkzKSwoc3VwcG9ydCgiY29tbWVudCIpPyI8dGQiLigkS2I/IiI6IiBjbGFzcz0naGlkZGVuJyIpLiI+Ii5sYW5nKDk0KToiIik7fWVjaG8nPHRkPicsIjxpbnB1dCB0eXBlPSdpbWFnZScgbmFtZT0nYWRkWyIuKHN1cHBvcnQoIm1vdmVfY29sIik/MDpjb3VudCgkcCkpLiJdJyBzcmM9JyIuaChwcmVnX3JlcGxhY2UoIn5cXD8uKn4iLCIiLE1FKSkuIj9wbGZpbGU9cGx1cy5naWYmYW1wO3ZlcnNpb249My4yLjInIGFsdD0nKycgdGl0bGU9JyIubGFuZyg5NSkuIic+IiwnPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnJvd19jb3VudCA9ICcsY291bnQoJHApLCc7PC9zY3JpcHQ+CjwvdGhlYWQ+Cjx0Ym9keSBvbmtleWRvd249InJldHVybiBlZGl0aW5nS2V5ZG93bihldmVudCk7Ij4KJztmb3JlYWNoKCRwCmFzJGw9PiRlKXskbCsrOyR6ZD0kZVsoJF9QT1NUPyJvcmlnIjoiZmllbGQiKV07JEVlPShpc3NldCgkX1BPU1RbImFkZCJdWyRsLTFdKXx8KGlzc2V0KCRlWyJmaWVsZCJdKSYmISRfUE9TVFsiZHJvcF9jb2wiXVskbF0pKSYmKHN1cHBvcnQoImRyb3BfY29sIil8fCR6ZD09IiIpO2VjaG8nPHRyJywoJEVlPyIiOiIgc3R5bGU9J2Rpc3BsYXk6IG5vbmU7JyIpLCc+CicsKCR6PT0iUFJPQ0VEVVJFIj8iPHRkPiIuaHRtbF9zZWxlY3QoImZpZWxkc1skbF1baW5vdXRdIiwkamMsJGVbImlub3V0Il0pOiIiKSwnPHRoPic7aWYoJEVlKXtlY2hvJzxpbnB1dCBuYW1lPSJmaWVsZHNbJywkbCwnXVtmaWVsZF0iIHZhbHVlPSInLGgoJGVbImZpZWxkIl0pLCciIG9uY2hhbmdlPSInLCgkZVsiZmllbGQiXSE9IiJ8fGNvdW50KCRwKT4xPyIiOiJlZGl0aW5nQWRkUm93KHRoaXMsICR3ZSk7ICIpLCdlZGl0aW5nTmFtZUNoYW5nZSh0aGlzKTsiIG1heGxlbmd0aD0iNjQiPic7fWVjaG8nPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZmllbGRzWycsJGwsJ11bb3JpZ10iIHZhbHVlPSInLGgoJHpkKSwnIj4KJztlZGl0X3R5cGUoImZpZWxkc1skbF0iLCRlLCRaLCRoYSk7aWYoJHo9PSJUQUJMRSIpe2VjaG8nPHRkPicsY2hlY2tib3goImZpZWxkc1skbF1bbnVsbF0iLDEsJGVbIm51bGwiXSksJzx0ZD48aW5wdXQgdHlwZT0icmFkaW8iIG5hbWU9ImF1dG9faW5jcmVtZW50X2NvbCIgdmFsdWU9IicsJGwsJyInO2lmKCRlWyJhdXRvX2luY3JlbWVudCJdKXtlY2hvJyBjaGVja2VkJzt9Pz4gb25jbGljaz0idmFyIGZpZWxkID0gdGhpcy5mb3JtWydmaWVsZHNbJyArIHRoaXMudmFsdWUgKyAnXVtmaWVsZF0nXTsgaWYgKCFmaWVsZC52YWx1ZSkgeyBmaWVsZC52YWx1ZSA9ICdpZCc7IGZpZWxkLm9uY2hhbmdlKCk7IH0iPgo8dGQgY2xhc3M9ImhpZGRlbiI+PD9waHAgZWNobwpjaGVja2JveCgiZmllbGRzWyRsXVtoYXNfZGVmYXVsdF0iLDEsJGVbImhhc19kZWZhdWx0Il0pLCc8aW5wdXQgbmFtZT0iZmllbGRzWycsJGwsJ11bZGVmYXVsdF0iIHZhbHVlPSInLGgoJGVbImRlZmF1bHQiXSksJyIgb25jaGFuZ2U9InRoaXMucHJldmlvdXNTaWJsaW5nLmNoZWNrZWQgPSB0cnVlOyI+CicsKHN1cHBvcnQoImNvbW1lbnQiKT8iPHRkIi4oJEtiPyIiOiIgY2xhc3M9J2hpZGRlbiciKS4iPjxpbnB1dCBuYW1lPSdmaWVsZHNbJGxdW2NvbW1lbnRdJyB2YWx1ZT0nIi5oKCRlWyJjb21tZW50Il0pLiInIG1heGxlbmd0aD0nMjU1Jz4iOiIiKTt9ZWNobyI8dGQ+Iiwoc3VwcG9ydCgibW92ZV9jb2wiKT8iPGlucHV0IHR5cGU9J2ltYWdlJyBuYW1lPSdhZGRbJGxdJyBzcmM9JyIuaChwcmVnX3JlcGxhY2UoIn5cXD8uKn4iLCIiLE1FKSkuIj9maWxlPXBsdXMuZ2lmJmFtcDt2ZXJzaW9uPTMuMi4yJyBhbHQ9JysnIHRpdGxlPSciLmxhbmcoOTUpLiInIG9uY2xpY2s9J3JldHVybiAhZWRpdGluZ0FkZFJvdyh0aGlzLCAkd2UsIDEpOyc+Jm5ic3A7Ii4iPGlucHV0IHR5cGU9J2ltYWdlJyBuYW1lPSd1cFskbF0nIHNyYz0nIi5oKHByZWdfcmVwbGFjZSgiflxcPy4qfiIsIiIsTUUpKS4iP2ZpbGU9dXAuZ2lmJmFtcDt2ZXJzaW9uPTMuMi4yJyBhbHQ9J14nIHRpdGxlPSciLmxhbmcoOTYpLiInPiZuYnNwOyIuIjxpbnB1dCB0eXBlPSdpbWFnZScgbmFtZT0nZG93blskbF0nIHNyYz0nIi5oKHByZWdfcmVwbGFjZSgiflxcPy4qfiIsIiIsTUUpKS4iP2ZpbGU9ZG93bi5naWYmYW1wO3ZlcnNpb249My4yLjInIGFsdD0ndicgdGl0bGU9JyIubGFuZyg5NykuIic+Jm5ic3A7IjoiIiksKCR6ZD09IiJ8fHN1cHBvcnQoImRyb3BfY29sIik/IjxpbnB1dCB0eXBlPSdpbWFnZScgbmFtZT0nZHJvcF9jb2xbJGxdJyBzcmM9JyIuaChwcmVnX3JlcGxhY2UoIn5cXD8uKn4iLCIiLE1FKSkuIj9maWxlPWNyb3NzLmdpZiZhbXA7dmVyc2lvbj0zLjIuMicgYWx0PSd4JyB0aXRsZT0nIi5sYW5nKDk4KS4iJyBvbmNsaWNrPSdyZXR1cm4gIWVkaXRpbmdSZW1vdmVSb3codGhpcyk7Jz4iOiIiKSwiXG4iO31yZXR1cm4kS2I7fWZ1bmN0aW9uCnByb2Nlc3NfZmllbGRzKCYkcCl7a3NvcnQoJHApOyRMPTA7aWYoJF9QT1NUWyJ1cCJdKXskeGI9MDtmb3JlYWNoKCRwCmFzJGQ9PiRlKXtpZihrZXkoJF9QT1NUWyJ1cCJdKT09JGQpe3Vuc2V0KCRwWyRkXSk7YXJyYXlfc3BsaWNlKCRwLCR4YiwwLGFycmF5KCRlKSk7YnJlYWs7fWlmKGlzc2V0KCRlWyJmaWVsZCJdKSl7JHhiPSRMO30kTCsrO319aWYoJF9QT1NUWyJkb3duIl0peyR0YT1mYWxzZTtmb3JlYWNoKCRwCmFzJGQ9PiRlKXtpZihpc3NldCgkZVsiZmllbGQiXSkmJiR0YSl7dW5zZXQoJHBba2V5KCRfUE9TVFsiZG93biJdKV0pO2FycmF5X3NwbGljZSgkcCwkTCwwLGFycmF5KCR0YSkpO2JyZWFrO31pZihrZXkoJF9QT1NUWyJkb3duIl0pPT0kZCl7JHRhPSRlO30kTCsrO319JHA9YXJyYXlfdmFsdWVzKCRwKTtpZigkX1BPU1RbImFkZCJdKXthcnJheV9zcGxpY2UoJHAsa2V5KCRfUE9TVFsiYWRkIl0pLDAsYXJyYXkoYXJyYXkoKSkpO319ZnVuY3Rpb24Kbm9ybWFsaXplX2VudW0oJGspe3JldHVybiInIi5zdHJfcmVwbGFjZSgiJyIsIicnIixhZGRjc2xhc2hlcyhzdHJpcGNzbGFzaGVzKHN0cl9yZXBsYWNlKCRrWzBdWzBdLiRrWzBdWzBdLCRrWzBdWzBdLHN1YnN0cigka1swXSwxLC0xKSkpLCdcXCcpKS4iJyI7fWZ1bmN0aW9uCmdyYW50KCRrYSwkc2EsJEIsJENiKXtpZighJHNhKXtyZXR1cm4KdHJ1ZTt9aWYoJHNhPT1hcnJheSgiQUxMIFBSSVZJTEVHRVMiLCJHUkFOVCBPUFRJT04iKSl7cmV0dXJuKCRrYT09IkdSQU5UIj9xdWVyaWVzKCIka2EgQUxMIFBSSVZJTEVHRVMkQ2IgV0lUSCBHUkFOVCBPUFRJT04iKTpxdWVyaWVzKCIka2EgQUxMIFBSSVZJTEVHRVMkQ2IiKSYmcXVlcmllcygiJGthIEdSQU5UIE9QVElPTiRDYiIpKTt9cmV0dXJuCnF1ZXJpZXMoIiRrYSAiLnByZWdfcmVwbGFjZSgnfihHUkFOVCBPUFRJT04pXFwoW14pXSpcXCl+JywnXFwxJyxpbXBsb2RlKCIkQiwgIiwkc2EpLiRCKS4kQ2IpO31mdW5jdGlvbgpkcm9wX2NyZWF0ZSgkSGEsJGxhLCRnYSwkU2UsJEpmLCRCZiwkZil7aWYoJF9QT1NUWyJkcm9wIl0pe3JldHVybgpxdWVyeV9yZWRpcmVjdCgkSGEsJGdhLCRTZSx0cnVlLCEkX1BPU1RbImRyb3BwZWQiXSk7fSRoYj0kZiE9IiImJigkX1BPU1RbImRyb3BwZWQiXXx8cXVlcmllcygkSGEpKTskX2Y9cXVlcmllcygkbGEpO2lmKCFxdWVyaWVzX3JlZGlyZWN0KCRnYSwoJGYhPSIiPyRKZjokQmYpLCRfZikmJiRoYil7cmVkaXJlY3QobnVsbCwkU2UpO31yZXR1cm4kaGI7fWZ1bmN0aW9uCnRhcl9maWxlKCRqYSwkcmQpeyRjPXBhY2soImExMDBhOGE4YThhMTJhMTIiLCRqYSw2NDQsMCwwLGRlY29jdChzdHJsZW4oJHJkKSksZGVjb2N0KHRpbWUoKSkpOyRlZj04KjMyO2ZvcigkbD0wOyRsPHN0cmxlbigkYyk7JGwrKyl7JGVmKz1vcmQoJGN7JGx9KTt9JGMuPXNwcmludGYoIiUwNm8iLCRlZikuIlwwICI7cmV0dXJuJGMuc3RyX3JlcGVhdCgiXDAiLDUxMi1zdHJsZW4oJGMpKS4kcmQuc3RyX3JlcGVhdCgiXDAiLDUxMS0oc3RybGVuKCRyZCkrNTExKSUKNTEyKTt9c2Vzc2lvbl9jYWNoZV9saW1pdGVyKCIiKTtpZighaW5pX2Jvb2woInNlc3Npb24udXNlX2Nvb2tpZXMiKXx8QGluaV9zZXQoInNlc3Npb24udXNlX2Nvb2tpZXMiLGZhbHNlKSE9PWZhbHNlKXtzZXNzaW9uX3dyaXRlX2Nsb3NlKCk7fSRmYj1hcnJheSgiUkVTVFJJQ1QiLCJDQVNDQURFIiwiU0VUIE5VTEwiLCJOTyBBQ1RJT04iKTskR2I9IicoPzonJ3xbXidcXFxcXXxcXFxcLikqKyciOyRqYz1hcnJheSgiSU4iLCJPVVQiLCJJTk9VVCIpO2lmKGlzc2V0KCRfR0VUWyJzZWxlY3QiXSkmJigkX1BPU1RbImVkaXQiXXx8JF9QT1NUWyJjbG9uZSJdKSYmISRfUE9TVFsic2F2ZSJdKXskX0dFVFsiZWRpdCJdPSRfR0VUWyJzZWxlY3QiXTt9aWYoaXNzZXQoJF9HRVRbImNhbGxmIl0pKXskX0dFVFsiY2FsbCJdPSRfR0VUWyJjYWxsZiJdO31pZihpc3NldCgkX0dFVFsiZnVuY3Rpb24iXSkpeyRfR0VUWyJwcm9jZWR1cmUiXT0kX0dFVFsiZnVuY3Rpb24iXTt9aWYoaXNzZXQoJF9HRVRbImRvd25sb2FkIl0pKXskbT0kX0dFVFsiZG93bmxvYWQiXTtoZWFkZXIoIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtIik7aGVhZGVyKCJDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT0iLmZyaWVuZGx5X3VybCgiJG0tIi5pbXBsb2RlKCJfIiwkX0dFVFsid2hlcmUiXSkpLiIuIi5mcmllbmRseV91cmwoJF9HRVRbImZpZWxkIl0pKTtlY2hvJGctPnJlc3VsdCgiU0VMRUNUIi5saW1pdChpZGZfZXNjYXBlKCRfR0VUWyJmaWVsZCJdKS4iIEZST00gIi50YWJsZSgkbSksIiBXSEVSRSAiLndoZXJlKCRfR0VUKSwxKSk7ZXhpdDt9ZWxzZWlmKGlzc2V0KCRfR0VUWyJ0YWJsZSJdKSl7JG09JF9HRVRbInRhYmxlIl07JHA9ZmllbGRzKCRtKTtpZighJHApeyRuPWVycm9yKCk7fSREPSgkcD90YWJsZV9zdGF0dXMoJG0pOmFycmF5KCkpO3BhZ2VfaGVhZGVyKCgkcCYmaXNfdmlldygkRCk/bGFuZyg5OSk6bGFuZygxMDApKS4iOiAiLmgoJG0pLCRuKTskby0+c2VsZWN0TGlua3MoJEQpOyRfYT0kRFsiQ29tbWVudCJdO2lmKCRfYSE9IiIpe2VjaG8iPHA+Ii5sYW5nKDk0KS4iOiAiLmgoJF9hKS4iXG4iO31pZigkcCl7ZWNobyI8dGFibGUgY2VsbHNwYWNpbmc9JzAnPlxuIiwiPHRoZWFkPjx0cj48dGg+Ii5sYW5nKDEwMSkuIjx0ZD4iLmxhbmcoODkpLihzdXBwb3J0KCJjb21tZW50Iik/Ijx0ZD4iLmxhbmcoOTQpOiIiKS4iPC90aGVhZD5cbiI7Zm9yZWFjaCgkcAphcyRlKXtlY2hvIjx0ciIub2RkKCkuIj48dGg+Ii5oKCRlWyJmaWVsZCJdKSwiPHRkPiIuaCgkZVsiZnVsbF90eXBlIl0pLigkZVsibnVsbCJdPyIgPGk+TlVMTDwvaT4iOiIiKS4oJGVbImF1dG9faW5jcmVtZW50Il0/IiA8aT4iLmxhbmcoOTIpLiI8L2k+IjoiIiksKHN1cHBvcnQoImNvbW1lbnQiKT8iPHRkPiIubmJzcCgkZVsiY29tbWVudCJdKToiIiksIlxuIjt9ZWNobyI8L3RhYmxlPlxuIjtpZighaXNfdmlldygkRCkpe2VjaG8iPGgzPiIubGFuZygxMDIpLiI8L2gzPlxuIjskSj1pbmRleGVzKCRtKTtpZigkSil7ZWNobyI8dGFibGUgY2VsbHNwYWNpbmc9JzAnPlxuIjtmb3JlYWNoKCRKCmFzJGY9PiR4KXtrc29ydCgkeFsiY29sdW1ucyJdKTskemI9YXJyYXkoKTtmb3JlYWNoKCR4WyJjb2x1bW5zIl1hcyRkPT4kYil7JHpiW109IjxpPiIuaCgkYikuIjwvaT4iLigkeFsibGVuZ3RocyJdWyRkXT8iKCIuJHhbImxlbmd0aHMiXVskZF0uIikiOiIiKTt9ZWNobyI8dHIgdGl0bGU9JyIuaCgkZikuIic+PHRoPiR4W3R5cGVdPHRkPiIuaW1wbG9kZSgiLCAiLCR6YikuIlxuIjt9ZWNobyI8L3RhYmxlPlxuIjt9ZWNobyc8cD48YSBocmVmPSInLmgoTUUpLidpbmRleGVzPScudXJsZW5jb2RlKCRtKS4nIj4nLmxhbmcoMTAzKS4iPC9hPlxuIjtpZihma19zdXBwb3J0KCREKSl7ZWNobyI8aDM+Ii5sYW5nKDg0KS4iPC9oMz5cbiI7JGhhPWZvcmVpZ25fa2V5cygkbSk7aWYoJGhhKXtlY2hvIjx0YWJsZSBjZWxsc3BhY2luZz0nMCc+XG4iLCI8dGhlYWQ+PHRyPjx0aD4iLmxhbmcoMTA0KS4iPHRkPiIubGFuZygxMDUpLiI8dGQ+Ii5sYW5nKDg2KS4iPHRkPiIubGFuZygxMDYpLigkdiE9InNxbGl0ZSI/Ijx0ZD4mbmJzcDsiOiIiKS4iPC90aGVhZD5cbiI7Zm9yZWFjaCgkaGEKYXMkZj0+JEEpeyR3PSgkQVsiZGIiXSE9IiI/IjxiPiIuaCgkQVsiZGIiXSkuIjwvYj4uIjoiIikuaCgkQVsidGFibGUiXSk7ZWNobyI8dHI+IiwiPHRoPjxpPiIuaW1wbG9kZSgiPC9pPiwgPGk+IixhcnJheV9tYXAoJ2gnLCRBWyJzb3VyY2UiXSkpLiI8L2k+IiwiPHRkPjxhIGhyZWY9JyIuaCgkQVsiZGIiXSE9IiI/cHJlZ19yZXBsYWNlKCd+ZGI9W14mXSp+JywiZGI9Ii51cmxlbmNvZGUoJEFbImRiIl0pLE1FKTpNRSkuInRhYmxlPSIudXJsZW5jb2RlKCRBWyJ0YWJsZSJdKS4iJz4kdzwvYT4iLCIoPGk+Ii5pbXBsb2RlKCI8L2k+LCA8aT4iLGFycmF5X21hcCgnaCcsJEFbInRhcmdldCJdKSkuIjwvaT4pIiwiPHRkPiRBW29uX2RlbGV0ZV1cbiIsIjx0ZD4kQVtvbl91cGRhdGVdXG4iO2lmKCR2IT0ic3FsaXRlIil7ZWNobyc8dGQ+PGEgaHJlZj0iJy5oKE1FLidmb3JlaWduPScudXJsZW5jb2RlKCRtKS4nJm5hbWU9Jy51cmxlbmNvZGUoJGYpKS4nIj4nLmxhbmcoMTA3KS4nPC9hPic7fX1lY2hvIjwvdGFibGU+XG4iO31pZigkdiE9InNxbGl0ZSIpe2VjaG8nPHA+PGEgaHJlZj0iJy5oKE1FKS4nZm9yZWlnbj0nLnVybGVuY29kZSgkbSkuJyI+Jy5sYW5nKDEwOCkuIjwvYT5cbiI7fX1pZihzdXBwb3J0KCJ0cmlnZ2VyIikpe2VjaG8iPGgzPiIubGFuZygxMDkpLiI8L2gzPlxuIjskTWM9dHJpZ2dlcnMoJG0pO2lmKCRNYyl7ZWNobyI8dGFibGUgY2VsbHNwYWNpbmc9JzAnPlxuIjtmb3JlYWNoKCRNYwphcyRkPT4kYil7ZWNobyI8dHIgdmFsaWduPSd0b3AnPjx0ZD4kYlswXTx0ZD4kYlsxXTx0aD4iLmgoJGQpLiI8dGQ+PGEgaHJlZj0nIi5oKE1FLid0cmlnZ2VyPScudXJsZW5jb2RlKCRtKS4nJm5hbWU9Jy51cmxlbmNvZGUoJGQpKS4iJz4iLmxhbmcoMTA3KS4iPC9hPlxuIjt9ZWNobyI8L3RhYmxlPlxuIjt9ZWNobyc8cD48YSBocmVmPSInLmgoTUUpLid0cmlnZ2VyPScudXJsZW5jb2RlKCRtKS4nIj4nLmxhbmcoMTEwKS4iPC9hPlxuIjt9fX19ZWxzZWlmKGlzc2V0KCRfR0VUWyJzY2hlbWEiXSkpe3BhZ2VfaGVhZGVyKGxhbmcoMTExKSwiIixhcnJheSgpLERCKTskc2I9YXJyYXkoKTskdmU9YXJyYXkoKTskZj0iYWRtaW5lcl9zY2hlbWEiOyRoZj0oJF9HRVRbInNjaGVtYSJdPyRfR0VUWyJzY2hlbWEiXTokX0NPT0tJRVsoJF9DT09LSUVbIiRmLSIuREJdPyIkZi0iLkRCOiRmKV0pO3ByZWdfbWF0Y2hfYWxsKCd+KFteOl0rKTooWy0wLTkuXSspeChbLTAtOS5dKykoX3wkKX4nLCRoZiwkb2EsUFJFR19TRVRfT1JERVIpO2ZvcmVhY2goJG9hCmFzJGw9PiRrKXskc2JbJGtbMV1dPWFycmF5KCRrWzJdLCRrWzNdKTskdmVbXT0iXG5cdCciLmpzX2VzY2FwZSgka1sxXSkuIic6IFsgJGtbMl0sICRrWzNdIF0iO30kV2I9MDskY2Y9LTE7JEthPWFycmF5KCk7JGRmPWFycmF5KCk7JFdlPWFycmF5KCk7Zm9yZWFjaCh0YWJsZV9zdGF0dXMoKWFzJGEpe2lmKCFpc3NldCgkYVsiRW5naW5lIl0pKXtjb250aW51ZTt9JHVjPTA7JEthWyRhWyJOYW1lIl1dWyJmaWVsZHMiXT1hcnJheSgpO2ZvcmVhY2goZmllbGRzKCRhWyJOYW1lIl0pYXMkZj0+JGUpeyR1Yys9MS4yNTskZVsicG9zIl09JHVjOyRLYVskYVsiTmFtZSJdXVsiZmllbGRzIl1bJGZdPSRlO30kS2FbJGFbIk5hbWUiXV1bInBvcyJdPSgkc2JbJGFbIk5hbWUiXV0/JHNiWyRhWyJOYW1lIl1dOmFycmF5KCRXYiwwKSk7Zm9yZWFjaCgkby0+Zm9yZWlnbktleXMoJGFbIk5hbWUiXSlhcyRiKXtpZighJGJbImRiIl0peyRBYT0kY2Y7aWYoJHNiWyRhWyJOYW1lIl1dWzFdfHwkc2JbJGJbInRhYmxlIl1dWzFdKXskQWE9bWluKGZsb2F0dmFsKCRzYlskYVsiTmFtZSJdXVsxXSksZmxvYXR2YWwoJHNiWyRiWyJ0YWJsZSJdXVsxXSkpLTE7fWVsc2V7JGNmLT0uMTt9d2hpbGUoJFdlWyhzdHJpbmcpJEFhXSl7JEFhLT0uMDAwMTt9JEthWyRhWyJOYW1lIl1dWyJyZWZlcmVuY2VzIl1bJGJbInRhYmxlIl1dWyhzdHJpbmcpJEFhXT1hcnJheSgkYlsic291cmNlIl0sJGJbInRhcmdldCJdKTskZGZbJGJbInRhYmxlIl1dWyRhWyJOYW1lIl1dWyhzdHJpbmcpJEFhXT0kYlsidGFyZ2V0Il07JFdlWyhzdHJpbmcpJEFhXT10cnVlO319JFdiPW1heCgkV2IsJEthWyRhWyJOYW1lIl1dWyJwb3MiXVswXSsyLjUrJHVjKTt9ZWNobyc8ZGl2IGlkPSJzY2hlbWEiIHN0eWxlPSJoZWlnaHQ6ICcsJFdiLCdlbTsiPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CnRhYmxlUG9zID0geycsaW1wbG9kZSgiLCIsJHZlKS4iXG4iLCd9OwplbSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwnc2NoZW1hXCcpLm9mZnNldEhlaWdodCAvICcsJFdiLCc7CmRvY3VtZW50Lm9ubW91c2Vtb3ZlID0gc2NoZW1hTW91c2Vtb3ZlOwpkb2N1bWVudC5vbm1vdXNldXAgPSBmdW5jdGlvbiAoZXYpIHsKCXNjaGVtYU1vdXNldXAoZXYsIFwnJyxqc19lc2NhcGUoREIpLCdcJyk7Cn07Cjwvc2NyaXB0PgonO2ZvcmVhY2goJEthCmFzJGY9PiRoKXtlY2hvIjxkaXYgY2xhc3M9J3RhYmxlJyBzdHlsZT0ndG9wOiAiLiRoWyJwb3MiXVswXS4iZW07IGxlZnQ6ICIuJGhbInBvcyJdWzFdLiJlbTsnIG9ubW91c2Vkb3duPSdzY2hlbWFNb3VzZWRvd24odGhpcywgZXZlbnQpOyc+IiwnPGEgaHJlZj0iJy5oKE1FKS4ndGFibGU9Jy51cmxlbmNvZGUoJGYpLiciPjxiPicuaCgkZikuIjwvYj48L2E+PGJyPlxuIjtmb3JlYWNoKCRoWyJmaWVsZHMiXWFzJGUpeyRiPSc8c3BhbicudHlwZV9jbGFzcygkZVsidHlwZSJdKS4nIHRpdGxlPSInLmgoJGVbImZ1bGxfdHlwZSJdLigkZVsibnVsbCJdPyIgTlVMTCI6JycpKS4nIj4nLmgoJGVbImZpZWxkIl0pLic8L3NwYW4+JztlY2hvKCRlWyJwcmltYXJ5Il0/IjxpPiRiPC9pPiI6JGIpLiI8YnI+XG4iO31mb3JlYWNoKChhcnJheSkkaFsicmVmZXJlbmNlcyJdYXMkVmI9PiRfYyl7Zm9yZWFjaCgkX2MKYXMkQWE9PiRoZCl7JHdjPSRBYS0kc2JbJGZdWzFdOyRsPTA7Zm9yZWFjaCgkaGRbMF1hcyRHYSl7ZWNobyI8ZGl2IGNsYXNzPSdyZWZlcmVuY2VzJyB0aXRsZT0nIi5oKCRWYikuIicgaWQ9J3JlZnMkQWEtIi4oJGwrKykuIicgc3R5bGU9J2xlZnQ6ICR3YyIuImVtOyB0b3A6ICIuJGhbImZpZWxkcyJdWyRHYV1bInBvcyJdLiJlbTsgcGFkZGluZy10b3A6IC41ZW07Jz48ZGl2IHN0eWxlPSdib3JkZXItdG9wOiAxcHggc29saWQgR3JheTsgd2lkdGg6ICIuKC0kd2MpLiJlbTsnPjwvZGl2PjwvZGl2PlxuIjt9fX1mb3JlYWNoKChhcnJheSkkZGZbJGZdYXMkVmI9PiRfYyl7Zm9yZWFjaCgkX2MKYXMkQWE9PiRCKXskd2M9JEFhLSRzYlskZl1bMV07JGw9MDtmb3JlYWNoKCRCCmFzJGVhKXtlY2hvIjxkaXYgY2xhc3M9J3JlZmVyZW5jZXMnIHRpdGxlPSciLmgoJFZiKS4iJyBpZD0ncmVmZCRBYS0iLigkbCsrKS4iJyBzdHlsZT0nbGVmdDogJHdjIi4iZW07IHRvcDogIi4kaFsiZmllbGRzIl1bJGVhXVsicG9zIl0uImVtOyBoZWlnaHQ6IDEuMjVlbTsgYmFja2dyb3VuZDogdXJsKCIuaChwcmVnX3JlcGxhY2UoIn5cXD8uKn4iLCIiLE1FKSkuIj9maWxlPWFycm93LmdpZikgbm8tcmVwZWF0IHJpZ2h0IGNlbnRlcjsmYW1wO3ZlcnNpb249My4yLjInPjxkaXYgc3R5bGU9J2hlaWdodDogLjVlbTsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEdyYXk7IHdpZHRoOiAiLigtJHdjKS4iZW07Jz48L2Rpdj48L2Rpdj5cbiI7fX19ZWNobyI8L2Rpdj5cbiI7fWZvcmVhY2goJEthCmFzJGY9PiRoKXtmb3JlYWNoKChhcnJheSkkaFsicmVmZXJlbmNlcyJdYXMkVmI9PiRfYyl7Zm9yZWFjaCgkX2MKYXMkQWE9PiRoZCl7JGVkPSRXYjskdWQ9LTEwO2ZvcmVhY2goJGhkWzBdYXMkZD0+JEdhKXskVGU9JGhbInBvcyJdWzBdKyRoWyJmaWVsZHMiXVskR2FdWyJwb3MiXTskWGU9JEthWyRWYl1bInBvcyJdWzBdKyRLYVskVmJdWyJmaWVsZHMiXVskaGRbMV1bJGRdXVsicG9zIl07JGVkPW1pbigkZWQsJFRlLCRYZSk7JHVkPW1heCgkdWQsJFRlLCRYZSk7fWVjaG8iPGRpdiBjbGFzcz0ncmVmZXJlbmNlcycgaWQ9J3JlZmwkQWEnIHN0eWxlPSdsZWZ0OiAkQWEiLiJlbTsgdG9wOiAkZWQiLiJlbTsgcGFkZGluZzogLjVlbSAwOyc+PGRpdiBzdHlsZT0nYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgR3JheTsgbWFyZ2luLXRvcDogMXB4OyBoZWlnaHQ6ICIuKCR1ZC0kZWQpLiJlbTsnPjwvZGl2PjwvZGl2PlxuIjt9fX1lY2hvJzwvZGl2Pgo8cD48YSBocmVmPSInLGgoTUUuInNjaGVtYT0iLnVybGVuY29kZSgkaGYpKSwnIiBpZD0ic2NoZW1hLWxpbmsiPicsbGFuZygxMTIpLCc8L2E+Cic7fWVsc2VpZihpc3NldCgkX0dFVFsiZHVtcCJdKSl7JG09JF9HRVRbImR1bXAiXTtpZigkX1BPU1QpeyRZZT0iIjtmb3JlYWNoKGFycmF5KCJvdXRwdXQiLCJmb3JtYXQiLCJkYl9zdHlsZSIsInJvdXRpbmVzIiwiZXZlbnRzIiwidGFibGVfc3R5bGUiLCJhdXRvX2luY3JlbWVudCIsInRyaWdnZXJzIiwiZGF0YV9zdHlsZSIpYXMkZCl7JFllLj0iJiRkPSIudXJsZW5jb2RlKCRfUE9TVFskZF0pO31jb29raWUoImFkbWluZXJfZXhwb3J0IixzdWJzdHIoJFllLDEpKTskSGI9ZHVtcF9oZWFkZXJzKCgkbSE9IiI/JG06REIpLChEQj09IiJ8fGNvdW50KChhcnJheSkkX1BPU1RbInRhYmxlcyJdKyhhcnJheSkkX1BPU1RbImRhdGEiXSk+MSkpOyR0Yj0oJF9QT1NUWyJmb3JtYXQiXT09InNxbCIpO2lmKCR0Yil7ZWNobyItLSBBZG1pbmVyICR0YyAiLiRuYVtEUklWRVJdLiIgZHVtcAoKIi4oJHYhPSJzcWwiPyIiOiJTRVQgTkFNRVMgdXRmODsKU0VUIGZvcmVpZ25fa2V5X2NoZWNrcyA9IDA7ClNFVCB0aW1lX3pvbmUgPSAiLnEoJGctPnJlc3VsdCgiU0VMRUNUIEBAdGltZV96b25lIikpLiI7ClNFVCBzcWxfbW9kZSA9ICdOT19BVVRPX1ZBTFVFX09OX1pFUk8nOwoKIik7fSRWPSRfUE9TVFsiZGJfc3R5bGUiXTskXz1hcnJheShEQik7aWYoREI9PSIiKXskXz0kX1BPU1RbImRhdGFiYXNlcyJdO2lmKGlzX3N0cmluZygkXykpeyRfPWV4cGxvZGUoIlxuIixydHJpbShzdHJfcmVwbGFjZSgiXHIiLCIiLCRfKSwiXG4iKSk7fX1mb3JlYWNoKChhcnJheSkkXwphcyR0KXtpZigkZy0+c2VsZWN0X2RiKCR0KSl7aWYoJHRiJiZlcmVnKCdDUkVBVEUnLCRWKSYmKCRsYT0kZy0+cmVzdWx0KCJTSE9XIENSRUFURSBEQVRBQkFTRSAiLmlkZl9lc2NhcGUoJHQpLDEpKSl7aWYoJFY9PSJEUk9QK0NSRUFURSIpe2VjaG8iRFJPUCBEQVRBQkFTRSBJRiBFWElTVFMgIi5pZGZfZXNjYXBlKCR0KS4iO1xuIjt9ZWNobygkVj09IkNSRUFURStBTFRFUiI/cHJlZ19yZXBsYWNlKCd+XkNSRUFURSBEQVRBQkFTRSB+JywnXFwwSUYgTk9UIEVYSVNUUyAnLCRsYSk6JGxhKS4iO1xuIjt9aWYoJHRiKXtpZigkVil7ZWNobwp1c2Vfc3FsKCR0KS4iO1xuXG4iO31pZihpbl9hcnJheSgiQ1JFQVRFK0FMVEVSIixhcnJheSgkViwkX1BPU1RbInRhYmxlX3N0eWxlIl0pKSl7ZWNobyJTRVQgQGFkbWluZXJfYWx0ZXIgPSAnJztcblxuIjt9JHFiPSIiO2lmKCRfUE9TVFsicm91dGluZXMiXSl7Zm9yZWFjaChhcnJheSgiRlVOQ1RJT04iLCJQUk9DRURVUkUiKWFzJFRhKXtmb3JlYWNoKGdldF9yb3dzKCJTSE9XICRUYSBTVEFUVVMgV0hFUkUgRGIgPSAiLnEoJHQpLG51bGwsIi0tICIpYXMkYSl7JHFiLj0oJFYhPSdEUk9QK0NSRUFURSc/IkRST1AgJFRhIElGIEVYSVNUUyAiLmlkZl9lc2NhcGUoJGFbIk5hbWUiXSkuIjs7XG4iOiIiKS4kZy0+cmVzdWx0KCJTSE9XIENSRUFURSAkVGEgIi5pZGZfZXNjYXBlKCRhWyJOYW1lIl0pLDIpLiI7O1xuXG4iO319fWlmKCRfUE9TVFsiZXZlbnRzIl0pe2ZvcmVhY2goZ2V0X3Jvd3MoIlNIT1cgRVZFTlRTIixudWxsLCItLSAiKWFzJGEpeyRxYi49KCRWIT0nRFJPUCtDUkVBVEUnPyJEUk9QIEVWRU5UIElGIEVYSVNUUyAiLmlkZl9lc2NhcGUoJGFbIk5hbWUiXSkuIjs7XG4iOiIiKS4kZy0+cmVzdWx0KCJTSE9XIENSRUFURSBFVkVOVCAiLmlkZl9lc2NhcGUoJGFbIk5hbWUiXSksMykuIjs7XG5cbiI7fX1pZigkcWIpe2VjaG8iREVMSU1JVEVSIDs7XG5cbiRxYiIuIkRFTElNSVRFUiA7XG5cbiI7fX1pZigkX1BPU1RbInRhYmxlX3N0eWxlIl18fCRfUE9TVFsiZGF0YV9zdHlsZSJdKXskWD1hcnJheSgpO2ZvcmVhY2godGFibGVfc3RhdHVzKClhcyRhKXskaD0oREI9PSIifHxpbl9hcnJheSgkYVsiTmFtZSJdLChhcnJheSkkX1BPU1RbInRhYmxlcyJdKSk7JFplPShEQj09IiJ8fGluX2FycmF5KCRhWyJOYW1lIl0sKGFycmF5KSRfUE9TVFsiZGF0YSJdKSk7aWYoJGh8fCRaZSl7aWYoIWlzX3ZpZXcoJGEpKXtpZigkSGI9PSJ0YXIiKXtvYl9zdGFydCgpO30kby0+ZHVtcFRhYmxlKCRhWyJOYW1lIl0sKCRoPyRfUE9TVFsidGFibGVfc3R5bGUiXToiIikpO2lmKCRaZSl7JG8tPmR1bXBEYXRhKCRhWyJOYW1lIl0sJF9QT1NUWyJkYXRhX3N0eWxlIl0sIlNFTEVDVCAqIEZST00gIi50YWJsZSgkYVsiTmFtZSJdKSk7fWlmKCR0YiYmJF9QT1NUWyJ0cmlnZ2VycyJdJiYkaCYmKCRNYz10cmlnZ2VyX3NxbCgkYVsiTmFtZSJdLCRfUE9TVFsidGFibGVfc3R5bGUiXSkpKXtlY2hvIlxuREVMSU1JVEVSIDs7XG4kTWNcbkRFTElNSVRFUiA7XG4iO31pZigkSGI9PSJ0YXIiKXtlY2hvCnRhcl9maWxlKChEQiE9IiI/IiI6IiR0LyIpLiIkYVtOYW1lXS5jc3YiLG9iX2dldF9jbGVhbigpKTt9ZWxzZWlmKCR0Yil7ZWNobyJcbiI7fX1lbHNlaWYoJHRiKXskWFtdPSRhWyJOYW1lIl07fX19Zm9yZWFjaCgkWAphcyRjYyl7JG8tPmR1bXBUYWJsZSgkY2MsJF9QT1NUWyJ0YWJsZV9zdHlsZSJdLHRydWUpO31pZigkSGI9PSJ0YXIiKXtlY2hvCnBhY2soIng1MTIiKTt9fWlmKCRWPT0iQ1JFQVRFK0FMVEVSIiYmJHRiKXskaj0iU0VMRUNUIFRBQkxFX05BTUUsIEVOR0lORSwgVEFCTEVfQ09MTEFUSU9OLCBUQUJMRV9DT01NRU5UIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLlRBQkxFUyBXSEVSRSBUQUJMRV9TQ0hFTUEgPSBEQVRBQkFTRSgpIjtlY2hvIkRFTElNSVRFUiA7OwpDUkVBVEUgUFJPQ0VEVVJFIGFkbWluZXJfYWx0ZXIgKElOT1VUIGFsdGVyX2NvbW1hbmQgdGV4dCkgQkVHSU4KCURFQ0xBUkUgX3RhYmxlX25hbWUsIF9lbmdpbmUsIF90YWJsZV9jb2xsYXRpb24gdmFyY2hhcig2NCk7CglERUNMQVJFIF90YWJsZV9jb21tZW50IHZhcmNoYXIoNjQpOwoJREVDTEFSRSBkb25lIGJvb2wgREVGQVVMVCAwOwoJREVDTEFSRSB0YWJsZXMgQ1VSU09SIEZPUiAkajsKCURFQ0xBUkUgQ09OVElOVUUgSEFORExFUiBGT1IgTk9UIEZPVU5EIFNFVCBkb25lID0gMTsKCU9QRU4gdGFibGVzOwoJUkVQRUFUCgkJRkVUQ0ggdGFibGVzIElOVE8gX3RhYmxlX25hbWUsIF9lbmdpbmUsIF90YWJsZV9jb2xsYXRpb24sIF90YWJsZV9jb21tZW50OwoJCUlGIE5PVCBkb25lIFRIRU4KCQkJQ0FTRSBfdGFibGVfbmFtZSI7Zm9yZWFjaChnZXRfcm93cygkailhcyRhKXskX2E9cSgkYVsiRU5HSU5FIl09PSJJbm5vREIiP3ByZWdfcmVwbGFjZSgnfig/OiguKyk7ICk/SW5ub0RCIGZyZWU6IC4qficsJ1xcMScsJGFbIlRBQkxFX0NPTU1FTlQiXSk6JGFbIlRBQkxFX0NPTU1FTlQiXSk7ZWNobyIKCQkJCVdIRU4gIi5xKCRhWyJUQUJMRV9OQU1FIl0pLiIgVEhFTgoJCQkJCSIuKGlzc2V0KCRhWyJFTkdJTkUiXSk/IklGIF9lbmdpbmUgIT0gJyRhW0VOR0lORV0nIE9SIF90YWJsZV9jb2xsYXRpb24gIT0gJyRhW1RBQkxFX0NPTExBVElPTl0nIE9SIF90YWJsZV9jb21tZW50ICE9ICRfYSBUSEVOCgkJCQkJCUFMVEVSIFRBQkxFICIuaWRmX2VzY2FwZSgkYVsiVEFCTEVfTkFNRSJdKS4iIEVOR0lORT0kYVtFTkdJTkVdIENPTExBVEU9JGFbVEFCTEVfQ09MTEFUSU9OXSBDT01NRU5UPSRfYTsKCQkJCQlFTkQgSUYiOiJCRUdJTiBFTkQiKS4iOyI7fWVjaG8iCgkJCQlFTFNFCgkJCQkJU0VUIGFsdGVyX2NvbW1hbmQgPSBDT05DQVQoYWx0ZXJfY29tbWFuZCwgJ0RST1AgVEFCTEUgYCcsIFJFUExBQ0UoX3RhYmxlX25hbWUsICdgJywgJ2BgJyksICdgO1xcbicpOwoJCQlFTkQgQ0FTRTsKCQlFTkQgSUY7CglVTlRJTCBkb25lIEVORCBSRVBFQVQ7CglDTE9TRSB0YWJsZXM7CkVORDs7CkRFTElNSVRFUiA7CkNBTEwgYWRtaW5lcl9hbHRlcihAYWRtaW5lcl9hbHRlcik7CkRST1AgUFJPQ0VEVVJFIGFkbWluZXJfYWx0ZXI7CiI7fWlmKGluX2FycmF5KCJDUkVBVEUrQUxURVIiLGFycmF5KCRWLCRfUE9TVFsidGFibGVfc3R5bGUiXSkpJiYkdGIpe2VjaG8iU0VMRUNUIEBhZG1pbmVyX2FsdGVyO1xuIjt9fX1pZigkdGIpe2VjaG8iLS0gIi4kZy0+cmVzdWx0KCJTRUxFQ1QgTk9XKCkiKS4iXG4iO31leGl0O31wYWdlX2hlYWRlcihsYW5nKDExMyksIiIsKCRfR0VUWyJleHBvcnQiXSE9IiI/YXJyYXkoInRhYmxlIj0+JF9HRVRbImV4cG9ydCJdKTphcnJheSgpKSxEQik7ZWNobycKPGZvcm0gYWN0aW9uPSIiIG1ldGhvZD0icG9zdCI+Cjx0YWJsZSBjZWxsc3BhY2luZz0iMCI+Cic7JEdlPWFycmF5KCcnLCdVU0UnLCdEUk9QK0NSRUFURScsJ0NSRUFURScpOyRzZT1hcnJheSgnJywnRFJPUCtDUkVBVEUnLCdDUkVBVEUnKTskVmQ9YXJyYXkoJycsJ1RSVU5DQVRFK0lOU0VSVCcsJ0lOU0VSVCcpO2lmKCR2PT0ic3FsIil7JEdlW109J0NSRUFURStBTFRFUic7JHNlW109J0NSRUFURStBTFRFUic7JFZkW109J0lOU0VSVCtVUERBVEUnO31wYXJzZV9zdHIoJF9DT09LSUVbImFkbWluZXJfZXhwb3J0Il0sJGEpO2lmKCEkYSl7JGE9YXJyYXkoIm91dHB1dCI9PiJ0ZXh0IiwiZm9ybWF0Ij0+InNxbCIsImRiX3N0eWxlIj0+KERCIT0iIj8iIjoiQ1JFQVRFIiksInRhYmxlX3N0eWxlIj0+IkRST1ArQ1JFQVRFIiwiZGF0YV9zdHlsZSI9PiJJTlNFUlQiKTt9aWYoIWlzc2V0KCRhWyJldmVudHMiXSkpeyRhWyJyb3V0aW5lcyJdPSRhWyJldmVudHMiXT0oJF9HRVRbImR1bXAiXT09IiIpOyRhWyJhdXRvX2luY3JlbWVudCJdPSRhWyJ0cmlnZ2VycyJdPSRhWyJ0YWJsZV9zdHlsZSJdO31lY2hvIjx0cj48dGg+Ii5sYW5nKDExNCkuIjx0ZD4iLmh0bWxfc2VsZWN0KCJvdXRwdXQiLCRvLT5kdW1wT3V0cHV0KCksJGFbIm91dHB1dCJdLDApLiJcbiI7ZWNobyI8dHI+PHRoPiIubGFuZygxMTUpLiI8dGQ+Ii5odG1sX3NlbGVjdCgiZm9ybWF0Iiwkby0+ZHVtcEZvcm1hdCgpLCRhWyJmb3JtYXQiXSwwKS4iXG4iO2VjaG8oJHY9PSJzcWxpdGUiPyIiOiI8dHI+PHRoPiIubGFuZyg2NSkuIjx0ZD4iLmh0bWxfc2VsZWN0KCdkYl9zdHlsZScsJEdlLCRhWyJkYl9zdHlsZSJdKS4oc3VwcG9ydCgicm91dGluZSIpP2NoZWNrYm94KCJyb3V0aW5lcyIsMSwkYVsicm91dGluZXMiXSxsYW5nKDExNikpOiIiKS4oc3VwcG9ydCgiZXZlbnQiKT9jaGVja2JveCgiZXZlbnRzIiwxLCRhWyJldmVudHMiXSxsYW5nKDExNykpOiIiKSksIjx0cj48dGg+Ii5sYW5nKDc3KS4iPHRkPiIuaHRtbF9zZWxlY3QoJ3RhYmxlX3N0eWxlJywkc2UsJGFbInRhYmxlX3N0eWxlIl0pLmNoZWNrYm94KCJhdXRvX2luY3JlbWVudCIsMSwkYVsiYXV0b19pbmNyZW1lbnQiXSxsYW5nKDkyKSkuKHN1cHBvcnQoInRyaWdnZXIiKT9jaGVja2JveCgidHJpZ2dlcnMiLDEsJGFbInRyaWdnZXJzIl0sbGFuZygxMDkpKToiIiksIjx0cj48dGg+Ii5sYW5nKDExOCkuIjx0ZD4iLmh0bWxfc2VsZWN0KCdkYXRhX3N0eWxlJywkVmQsJGFbImRhdGFfc3R5bGUiXSksJzwvdGFibGU+CjxwPjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSInLGxhbmcoMTEzKSwnIj4KCjx0YWJsZSBjZWxsc3BhY2luZz0iMCI+Cic7JGtkPWFycmF5KCk7aWYoREIhPSIiKXskYWI9KCRtIT0iIj8iIjoiIGNoZWNrZWQiKTtlY2hvIjx0aGVhZD48dHI+IiwiPHRoIHN0eWxlPSd0ZXh0LWFsaWduOiBsZWZ0Oyc+PGxhYmVsPjxpbnB1dCB0eXBlPSdjaGVja2JveCcgaWQ9J2NoZWNrLXRhYmxlcyckYWIgb25jbGljaz0nZm9ybUNoZWNrKHRoaXMsIC9edGFibGVzXFxbLyk7Jz4iLmxhbmcoNzcpLiI8L2xhYmVsPiIsIjx0aCBzdHlsZT0ndGV4dC1hbGlnbjogcmlnaHQ7Jz48bGFiZWw+Ii5sYW5nKDExOCkuIjxpbnB1dCB0eXBlPSdjaGVja2JveCcgaWQ9J2NoZWNrLWRhdGEnJGFiIG9uY2xpY2s9J2Zvcm1DaGVjayh0aGlzLCAvXmRhdGFcXFsvKTsnPjwvbGFiZWw+IiwiPC90aGVhZD5cbiI7JFg9IiI7Zm9yZWFjaCh0YWJsZV9zdGF0dXMoKWFzJGEpeyRmPSRhWyJOYW1lIl07JHpjPWVyZWdfcmVwbGFjZSgiXy4qIiwiIiwkZik7JGFiPSgkbT09IiJ8fCRtPT0oc3Vic3RyKCRtLC0xKT09IiUiPyIkemMlIjokZikpOyR6Yj0iPHRyPjx0ZD4iLmNoZWNrYm94KCJ0YWJsZXNbXSIsJGYsJGFiLCRmLCJmb3JtVW5jaGVjaygnY2hlY2stdGFibGVzJyk7Iik7aWYoaXNfdmlldygkYSkpeyRYLj0iJHpiXG4iO31lbHNle2VjaG8iJHpiPHRkIGFsaWduPSdyaWdodCc+PGxhYmVsPiIuKCRhWyJFbmdpbmUiXT09Iklubm9EQiImJiRhWyJSb3dzIl0/In4gIjoiIikuJGFbIlJvd3MiXS5jaGVja2JveCgiZGF0YVtdIiwkZiwkYWIsIiIsImZvcm1VbmNoZWNrKCdjaGVjay1kYXRhJyk7IikuIjwvbGFiZWw+XG4iO30ka2RbJHpjXSsrO31lY2hvJFg7fWVsc2V7ZWNobyI8dGhlYWQ+PHRyPjx0aCBzdHlsZT0ndGV4dC1hbGlnbjogbGVmdDsnPjxsYWJlbD48aW5wdXQgdHlwZT0nY2hlY2tib3gnIGlkPSdjaGVjay1kYXRhYmFzZXMnIi4oJG09PSIiPyIgY2hlY2tlZCI6IiIpLiIgb25jbGljaz0nZm9ybUNoZWNrKHRoaXMsIC9eZGF0YWJhc2VzXFxbLyk7Jz4iLmxhbmcoNjUpLiI8L2xhYmVsPjwvdGhlYWQ+XG4iOyRfPWdldF9kYXRhYmFzZXMoKTtpZigkXyl7Zm9yZWFjaCgkXwphcyR0KXtpZighaW5mb3JtYXRpb25fc2NoZW1hKCR0KSl7JHpjPWVyZWdfcmVwbGFjZSgiXy4qIiwiIiwkdCk7ZWNobyI8dHI+PHRkPiIuY2hlY2tib3goImRhdGFiYXNlc1tdIiwkdCwkbT09IiJ8fCRtPT0iJHpjJSIsJHQsImZvcm1VbmNoZWNrKCdjaGVjay1kYXRhYmFzZXMnKTsiKS4iPC9sYWJlbD5cbiI7JGtkWyR6Y10rKzt9fX1lbHNle2VjaG8iPHRyPjx0ZD48dGV4dGFyZWEgbmFtZT0nZGF0YWJhc2VzJyByb3dzPScxMCcgY29scz0nMjAnPjwvdGV4dGFyZWE+Ijt9fWVjaG8nPC90YWJsZT4KPC9mb3JtPgonOyRCYT10cnVlO2ZvcmVhY2goJGtkCmFzJGQ9PiRiKXtpZigkZCE9IiImJiRiPjEpe2VjaG8oJEJhPyI8cD4iOiIgIikuIjxhIGhyZWY9JyIuaChNRSkuImR1bXA9Ii51cmxlbmNvZGUoIiRkJSIpLiInPiIuaCgkZCkuIjwvYT4iOyRCYT1mYWxzZTt9fX1lbHNlaWYoaXNzZXQoJF9HRVRbInByaXZpbGVnZXMiXSkpe3BhZ2VfaGVhZGVyKGxhbmcoNzApKTskaT0kZy0+cXVlcnkoIlNFTEVDVCBVc2VyLCBIb3N0IEZST00gbXlzcWwudXNlciBPUkRFUiBCWSBIb3N0LCBVc2VyIik7aWYoISRpKXtlY2hvJzxmb3JtIGFjdGlvbj0iIj48cD4KJztoaWRkZW5fZmllbGRzX2dldCgpO2VjaG8KbGFuZygyMSksJzogPGlucHV0IG5hbWU9InVzZXIiPgonLGxhbmcoMjApLCc6IDxpbnB1dCBuYW1lPSJob3N0IiB2YWx1ZT0ibG9jYWxob3N0Ij4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZ3JhbnQiIHZhbHVlPSIiPgo8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iJyxsYW5nKDMxKSwnIj4KPC9mb3JtPgonOyRpPSRnLT5xdWVyeSgiU0VMRUNUIFNVQlNUUklOR19JTkRFWChDVVJSRU5UX1VTRVIsICdAJywgMSkgQVMgVXNlciwgU1VCU1RSSU5HX0lOREVYKENVUlJFTlRfVVNFUiwgJ0AnLCAtMSkgQVMgSG9zdCIpO31lY2hvIjx0YWJsZSBjZWxsc3BhY2luZz0nMCc+XG4iLCI8dGhlYWQ+PHRyPjx0aD4mbmJzcDs8dGg+Ii5sYW5nKDIxKS4iPHRoPiIubGFuZygyMCkuIjwvdGhlYWQ+XG4iO3doaWxlKCRhPSRpLT5mZXRjaF9hc3NvYygpKXtlY2hvJzx0cicub2RkKCkuJz48dGQ+PGEgaHJlZj0iJy5oKE1FLid1c2VyPScudXJsZW5jb2RlKCRhWyJVc2VyIl0pLicmaG9zdD0nLnVybGVuY29kZSgkYVsiSG9zdCJdKSkuJyI+Jy5sYW5nKDExOSkuJzwvYT48dGQ+Jy5oKCRhWyJVc2VyIl0pLiI8dGQ+Ii5oKCRhWyJIb3N0Il0pLiJcbiI7fWVjaG8iPC90YWJsZT5cbiIsJzxwPjxhIGhyZWY9IicuaChNRSkuJ3VzZXI9Ij4nLmxhbmcoMTIwKS4iPC9hPiI7fWVsc2VpZihpc3NldCgkX0dFVFsic3FsIl0pKXtpZighJG4mJiRfUE9TVFsiZXhwb3J0Il0pe2R1bXBfaGVhZGVycygic3FsIik7JG8tPmR1bXBUYWJsZSgiIiwiIik7JG8tPmR1bXBEYXRhKCIiLCJ0YWJsZSIsJF9QT1NUWyJxdWVyeSJdKTtleGl0O31yZXN0YXJ0X3Nlc3Npb24oKTskRmY9JmdldF9zZXNzaW9uKCJxdWVyaWVzIik7JGViPSYkRmZbREJdO2lmKCEkbiYmJF9QT1NUWyJjbGVhciJdKXskZWI9YXJyYXkoKTtyZWRpcmVjdChyZW1vdmVfZnJvbV91cmkoImhpc3RvcnkiKSk7fXBhZ2VfaGVhZGVyKGxhbmcoNDMpLCRuKTtpZighJG4mJiRfUE9TVCl7JFBhPWZhbHNlOyRqPSRfUE9TVFsicXVlcnkiXTtpZigkX1BPU1RbIndlYmZpbGUiXSl7JFBhPUBmb3BlbigoZmlsZV9leGlzdHMoImFkbWluZXIuc3FsIik/ImFkbWluZXIuc3FsIjooZmlsZV9leGlzdHMoImFkbWluZXIuc3FsLmd6Iik/ImNvbXByZXNzLnpsaWI6Ly9hZG1pbmVyLnNxbC5neiI6ImNvbXByZXNzLmJ6aXAyOi8vYWRtaW5lci5zcWwuYnoyIikpLCJyYiIpOyRqPSgkUGE/ZnJlYWQoJFBhLDFlNik6ZmFsc2UpO31lbHNlaWYoJF9GSUxFUyYmJF9GSUxFU1sic3FsX2ZpbGUiXVsiZXJyb3IiXSE9NCl7JGo9Z2V0X2ZpbGUoInNxbF9maWxlIix0cnVlKTt9aWYoaXNfc3RyaW5nKCRqKSl7aWYoZnVuY3Rpb25fZXhpc3RzKCdtZW1vcnlfZ2V0X3VzYWdlJykpe0Bpbmlfc2V0KCJtZW1vcnlfbGltaXQiLDIqc3RybGVuKCRqKSttZW1vcnlfZ2V0X3VzYWdlKCkrOGU2KTt9aWYoJGohPSIiJiZzdHJsZW4oJGopPDFlNil7JGFhPSRqLihlcmVnKCc7JCcsJGopPyIiOiI7Iik7aWYoISRlYnx8ZW5kKCRlYikhPSRhYSl7JGViW109JGFhO319JHljPSIoPzpcXHN8L1xcKi4qXFwqL3woPzojfC0tIClbXlxuXSpcbnwtLVxuKSI7aWYoIWluaV9ib29sKCJzZXNzaW9uLnVzZV9jb29raWVzIikpe3Nlc3Npb25fd3JpdGVfY2xvc2UoKTt9JGxkPSI7IjskTD0wOyRoYz10cnVlOyRHPWNvbm5lY3QoKTtpZihpc19vYmplY3QoJEcpJiZEQiE9IiIpeyRHLT5zZWxlY3RfZGIoREIpO30kQWI9MDskWmM9YXJyYXkoKTskR2Y9J1tcJ2AiXScuKCR2PT0icGdzcWwiPyd8XFwkW14kXSpcXCQnOigkdj09Im1zc3FsInx8JHY9PSJzcWxpdGUiPyd8XFxbJzonJykpLid8L1xcKnwtLSB8Iyc7JEhmPWV4cGxvZGUoIiAiLG1pY3JvdGltZSgpKTtwYXJzZV9zdHIoJF9DT09LSUVbImFkbWluZXJfZXhwb3J0Il0sJFhiKTskUmQ9JG8tPmR1bXBGb3JtYXQoKTt1bnNldCgkUmRbInNxbCJdKTt3aGlsZSgkaiE9IiIpe2lmKCEkTCYmJHY9PSJzcWwiJiZwcmVnX21hdGNoKCJ+XiR5YypERUxJTUlURVJcXHMrKC4rKX5pIiwkaiwkaykpeyRsZD0ka1sxXTskaj1zdWJzdHIoJGosc3RybGVuKCRrWzBdKSk7fWVsc2V7cHJlZ19tYXRjaCgnKCcucHJlZ19xdW90ZSgkbGQpLiJ8JEdmfFwkKSIsJGosJGssUFJFR19PRkZTRVRfQ0FQVFVSRSwkTCk7JHRhPSRrWzBdWzBdOyRMPSRrWzBdWzFdK3N0cmxlbigkdGEpO2lmKCEkdGEmJiRQYSYmIWZlb2YoJFBhKSl7JGouPWZyZWFkKCRQYSwxZTUpO31lbHNle2lmKCEkdGEmJnJ0cmltKCRqKT09IiIpe2JyZWFrO31pZigkdGEmJiR0YSE9JGxkKXt3aGlsZShwcmVnX21hdGNoKCcoJy4oJHRhPT0nLyonPydcXCovJzooJHRhPT0nWyc/J10nOihlcmVnKCdeLS0gfF4jJywkdGEpPyJcbiI6cHJlZ19xdW90ZSgkdGEpLiJ8XFxcXC4iKSkpLid8JClzJywkaiwkayxQUkVHX09GRlNFVF9DQVBUVVJFLCRMKSl7JG1hPSRrWzBdWzBdOyRMPSRrWzBdWzFdK3N0cmxlbigkbWEpO2lmKCEkbWEmJiRQYSYmIWZlb2YoJFBhKSl7JGouPWZyZWFkKCRQYSwxZTYpO31lbHNlaWYoJG1hWzBdIT0iXFwiKXticmVhazt9fX1lbHNleyRoYz1mYWxzZTskYWE9c3Vic3RyKCRqLDAsJGtbMF1bMV0pOyRBYisrOyR6Yj0iPHByZSBpZD0nc3FsLSRBYic+PGNvZGUgY2xhc3M9J2p1c2gtJHYnPiIuc2hvcnRlbl91dGY4KHRyaW0oJGFhKSwxMDAwKS4iPC9jb2RlPjwvcHJlPlxuIjtpZighJF9QT1NUWyJvbmx5X2Vycm9ycyJdKXtlY2hvJHpiO29iX2ZsdXNoKCk7Zmx1c2goKTt9JEZiPWV4cGxvZGUoIiAiLG1pY3JvdGltZSgpKTtpZigkZy0+bXVsdGlfcXVlcnkoJGFhKSl7aWYoaXNfb2JqZWN0KCRHKSYmcHJlZ19tYXRjaCgifl4keWMqVVNFXFxifmlzVSIsJGFhKSl7JEctPnF1ZXJ5KCRhYSk7fWRveyRpPSRnLT5zdG9yZV9yZXN1bHQoKTskQ2M9ZXhwbG9kZSgiICIsbWljcm90aW1lKCkpOyRRZD1mb3JtYXRfdGltZSgkRmIsJENjKS4oc3RybGVuKCRhYSk8MTAwMD8iIDxhIGhyZWY9JyIuaChNRSkuInNxbD0iLnVybGVuY29kZSh0cmltKCRhYSkpLiInPiIubGFuZygzMSkuIjwvYT4iOiIiKTtpZighaXNfb2JqZWN0KCRpKSl7aWYocHJlZ19tYXRjaCgifl4keWMqKENSRUFURXxEUk9QfEFMVEVSKSR5YysoREFUQUJBU0V8U0NIRU1BKVxcYn5pc1UiLCRhYSkpe3Jlc3RhcnRfc2Vzc2lvbigpO3NldF9zZXNzaW9uKCJkYnMiLG51bGwpO3Nlc3Npb25fd3JpdGVfY2xvc2UoKTt9aWYoISRfUE9TVFsib25seV9lcnJvcnMiXSl7ZWNobyI8cCBjbGFzcz0nbWVzc2FnZScgdGl0bGU9JyIuaCgkZy0+aW5mbykuIic+Ii5sYW5nKDEyMSwkZy0+YWZmZWN0ZWRfcm93cykuIiRRZFxuIjt9fWVsc2V7c2VsZWN0KCRpLCRHKTtpZighJF9QT1NUWyJvbmx5X2Vycm9ycyJdKXtlY2hvIjxmb3JtIGFjdGlvbj0nJyBtZXRob2Q9J3Bvc3QnPlxuIiwiPHA+Ii4oJGktPm51bV9yb3dzP2xhbmcoMTIyLCRpLT5udW1fcm93cyk6IiIpLiRRZDskUz0iZXhwb3J0LSRBYiI7JE9kPSIsIDxhIGhyZWY9JyMkUycgb25jbGljaz1cInJldHVybiAhdG9nZ2xlKCckUycpO1wiPiIubGFuZygxMTMpLiI8L2E+PHNwYW4gaWQ9JyRTJyBjbGFzcz0naGlkZGVuJz46ICIuaHRtbF9zZWxlY3QoIm91dHB1dCIsJG8tPmR1bXBPdXRwdXQoKSwkWGJbIm91dHB1dCJdKS4iICIuaHRtbF9zZWxlY3QoImZvcm1hdCIsJFJkLCRYYlsiZm9ybWF0Il0pLiI8aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSdxdWVyeScgdmFsdWU9JyIuaCgkYWEpLiInPiIuIiA8aW5wdXQgdHlwZT0nc3VibWl0JyBuYW1lPSdleHBvcnQnIHZhbHVlPSciLmxhbmcoMTEzKS4iJyBvbmNsaWNrPSdldmVudFN0b3AoZXZlbnQpOyc+PGlucHV0IHR5cGU9J2hpZGRlbicgbmFtZT0ndG9rZW4nIHZhbHVlPSckTSc+PC9zcGFuPiI7aWYoJEcmJnByZWdfbWF0Y2goIn5eKCR5Y3xcXCgpKlNFTEVDVFxcYn5pc1UiLCRhYSkmJigkQ2Y9ZXhwbGFpbigkRywkYWEpKSl7JFM9ImV4cGxhaW4tJEFiIjtlY2hvIiwgPGEgaHJlZj0nIyRTJyBvbmNsaWNrPVwicmV0dXJuICF0b2dnbGUoJyRTJyk7XCI+RVhQTEFJTjwvYT4kT2RcbiIsIjxkaXYgaWQ9JyRTJyBjbGFzcz0naGlkZGVuJz5cbiI7c2VsZWN0KCRDZiwkRywoJHY9PSJzcWwiPyJodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVmbWFuLyIuc3Vic3RyKCRnLT5zZXJ2ZXJfaW5mbywwLDMpLiIvZW4vZXhwbGFpbi1vdXRwdXQuaHRtbCMiOiIiKSk7ZWNobyI8L2Rpdj5cbiI7fWVsc2V7ZWNobyIkT2RcbiI7fWVjaG8iPC9mb3JtPlxuIjt9fSRGYj0kQ2M7fXdoaWxlKCRnLT5uZXh0X3Jlc3VsdCgpKTt9ZWxzZWlmKCRnLT5lcnJvcil7ZWNobygkX1BPU1RbIm9ubHlfZXJyb3JzIl0/JHpiOiIiKSwiPHAgY2xhc3M9J2Vycm9yJz4iLmxhbmcoMTIzKS4iOiAiLmVycm9yKCkuIlxuIjskWmNbXT0iIDxhIGhyZWY9JyNzcWwtJEFiJz4kQWI8L2E+IjtpZigkX1BPU1RbImVycm9yX3N0b3BzIl0pe2JyZWFrO319JGo9c3Vic3RyKCRqLCRMKTskTD0wO319fX1pZigkaGMpe2VjaG8iPHAgY2xhc3M9J21lc3NhZ2UnPiIubGFuZygxMjQpLiJcbiI7fWVsc2VpZigkX1BPU1RbIm9ubHlfZXJyb3JzIl0pe2VjaG8iPHAgY2xhc3M9J21lc3NhZ2UnPiIubGFuZygxMjUsJEFiLWNvdW50KCRaYykpLmZvcm1hdF90aW1lKCRIZixleHBsb2RlKCIgIixtaWNyb3RpbWUoKSkpLiJcbiI7fWVsc2VpZigkWmMmJiRBYj4xKXtlY2hvIjxwIGNsYXNzPSdlcnJvcic+Ii5sYW5nKDEyMykuIjogIi5pbXBsb2RlKCIiLCRaYykuIlxuIjt9fWVsc2V7ZWNobyI8cCBjbGFzcz0nZXJyb3InPiIudXBsb2FkX2Vycm9yKCRqKS4iXG4iO319ZWNobycKPGZvcm0gYWN0aW9uPSIiIG1ldGhvZD0icG9zdCIgZW5jdHlwZT0ibXVsdGlwYXJ0L2Zvcm0tZGF0YSI+CjxwPic7JGFhPSRfR0VUWyJzcWwiXTtpZigkX1BPU1QpeyRhYT0kX1BPU1RbInF1ZXJ5Il07fWVsc2VpZigkX0dFVFsiaGlzdG9yeSJdPT0iYWxsIil7JGFhPSRlYjt9ZWxzZWlmKCRfR0VUWyJoaXN0b3J5Il0hPSIiKXskYWE9JGViWyRfR0VUWyJoaXN0b3J5Il1dO310ZXh0YXJlYSgicXVlcnkiLCRhYSwyMCk7ZWNobygkX1BPU1Q/IiI6IjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz5kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgndGV4dGFyZWEnKVswXS5mb2N1cygpOzwvc2NyaXB0PlxuIiksIjxwPiIuKGluaV9ib29sKCJmaWxlX3VwbG9hZHMiKT9sYW5nKDEyNikuJzogPGlucHV0IHR5cGU9ImZpbGUiIG5hbWU9InNxbF9maWxlIicuKCRfRklMRVMmJiRfRklMRVNbInNxbF9maWxlIl1bImVycm9yIl0hPTQ/Jyc6JyBvbmNoYW5nZT0idGhpcy5mb3JtW1wnb25seV9lcnJvcnNcJ10uY2hlY2tlZCA9IHRydWU7IicpLic+ICgmbHQ7ICcuaW5pX2dldCgidXBsb2FkX21heF9maWxlc2l6ZSIpLidCKSc6bGFuZygxMjcpKSwnPHA+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSInLGxhbmcoMTI4KSwnIiB0aXRsZT0iQ3RybCtFbnRlciI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InRva2VuIiB2YWx1ZT0iJywkTSwnIj4KJyxjaGVja2JveCgiZXJyb3Jfc3RvcHMiLDEsJF9QT1NUWyJlcnJvcl9zdG9wcyJdLGxhbmcoMTI5KSkuIlxuIixjaGVja2JveCgib25seV9lcnJvcnMiLDEsJF9QT1NUWyJvbmx5X2Vycm9ycyJdLGxhbmcoMTMwKSkuIlxuIjtwcmludF9maWVsZHNldCgid2ViZmlsZSIsbGFuZygxMzEpLCRfUE9TVFsid2ViZmlsZSJdKTskdGQ9YXJyYXkoKTtmb3JlYWNoKGFycmF5KCJneiI9PiJ6bGliIiwiYnoyIj0+ImJ6MiIpYXMkZD0+JGIpe2lmKGV4dGVuc2lvbl9sb2FkZWQoJGIpKXskdGRbXT0iLiRkIjt9fWVjaG8KbGFuZygxMzIsIjxjb2RlPmFkbWluZXIuc3FsIi4oJHRkPyJbIi5pbXBsb2RlKCJ8IiwkdGQpLiJdIjoiIikuIjwvY29kZT4iKSwnIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9IndlYmZpbGUiIHZhbHVlPSInLmxhbmcoMTMzKS4nIj4nLCI8L2Rpdj48L2ZpZWxkc2V0PlxuIjtpZigkZWIpe3ByaW50X2ZpZWxkc2V0KCJoaXN0b3J5IixsYW5nKDEzNCksJF9HRVRbImhpc3RvcnkiXSE9IiIpO2ZvcmVhY2goJGViCmFzJGQ9PiRiKXtlY2hvJzxhIGhyZWY9IicuaChNRS4ic3FsPSZoaXN0b3J5PSRkIikuJyI+Jy5sYW5nKDMxKS4iPC9hPiA8Y29kZSBjbGFzcz0nanVzaC0kdic+Ii5zaG9ydGVuX3V0ZjgobHRyaW0oc3RyX3JlcGxhY2UoIlxuIiwiICIsc3RyX3JlcGxhY2UoIlxyIiwiIixwcmVnX3JlcGxhY2UoJ35eKCN8LS0gKS4qfm0nLCcnLCRiKSkpKSw4MCwiPC9jb2RlPiIpLiI8YnI+XG4iO31lY2hvIjxpbnB1dCB0eXBlPSdzdWJtaXQnIG5hbWU9J2NsZWFyJyB2YWx1ZT0nIi5sYW5nKDEzNSkuIic+XG4iLCI8YSBocmVmPSciLmgoTUUuInNxbD0maGlzdG9yeT1hbGwiKS4iJz4iLmxhbmcoMTM2KS4iPC9hPlxuIiwiPC9kaXY+PC9maWVsZHNldD5cbiI7fWVjaG8nCjwvZm9ybT4KJzt9ZWxzZWlmKGlzc2V0KCRfR0VUWyJlZGl0Il0pKXskbT0kX0dFVFsiZWRpdCJdOyRzPShpc3NldCgkX0dFVFsic2VsZWN0Il0pPyhjb3VudCgkX1BPU1RbImNoZWNrIl0pPT0xP3doZXJlX2NoZWNrKCRfUE9TVFsiY2hlY2siXVswXSk6IiIpOndoZXJlKCRfR0VUKSk7JHFhPShpc3NldCgkX0dFVFsic2VsZWN0Il0pPyRfUE9TVFsiZWRpdCJdOiRzKTskcD1maWVsZHMoJG0pO2ZvcmVhY2goJHAKYXMkZj0+JGUpe2lmKCFpc3NldCgkZVsicHJpdmlsZWdlcyJdWyRxYT8idXBkYXRlIjoiaW5zZXJ0Il0pfHwkby0+ZmllbGROYW1lKCRlKT09IiIpe3Vuc2V0KCRwWyRmXSk7fX1pZigkX1BPU1QmJiEkbiYmIWlzc2V0KCRfR0VUWyJzZWxlY3QiXSkpeyRnYT0kX1BPU1RbInJlZmVyZXIiXTtpZigkX1BPU1RbImluc2VydCJdKXskZ2E9KCRxYT9udWxsOiRfU0VSVkVSWyJSRVFVRVNUX1VSSSJdKTt9ZWxzZWlmKCFlcmVnKCdeLismc2VsZWN0PS4rJCcsJGdhKSl7JGdhPU1FLiJzZWxlY3Q9Ii51cmxlbmNvZGUoJG0pO31pZihpc3NldCgkX1BPU1RbImRlbGV0ZSJdKSl7cXVlcnlfcmVkaXJlY3QoIkRFTEVURSIubGltaXQxKCJGUk9NICIudGFibGUoJG0pLCIgV0hFUkUgJHMiKSwkZ2EsbGFuZygxMzcpKTt9ZWxzZXskcj1hcnJheSgpO2ZvcmVhY2goJHAKYXMkZj0+JGUpeyRiPXByb2Nlc3NfaW5wdXQoJGUpO2lmKCRiIT09ZmFsc2UmJiRiIT09bnVsbCl7JHJbaWRmX2VzY2FwZSgkZildPSgkcWE/IlxuIi5pZGZfZXNjYXBlKCRmKS4iID0gJGIiOiRiKTt9fWlmKCRxYSl7aWYoISRyKXtyZWRpcmVjdCgkZ2EpO31xdWVyeV9yZWRpcmVjdCgiVVBEQVRFIi5saW1pdDEodGFibGUoJG0pLiIgU0VUIi5pbXBsb2RlKCIsIiwkciksIlxuV0hFUkUgJHMiKSwkZ2EsbGFuZygxMzgpKTt9ZWxzZXskaT1pbnNlcnRfaW50bygkbSwkcik7JHVlPSgkaT9sYXN0X2lkKCk6MCk7cXVlcmllc19yZWRpcmVjdCgkZ2EsbGFuZygxMzksKCR1ZT8iICR1ZSI6IiIpKSwkaSk7fX19JEVhPSRvLT50YWJsZU5hbWUodGFibGVfc3RhdHVzKCRtKSk7cGFnZV9oZWFkZXIoKCRxYT9sYW5nKDMxKTpsYW5nKDE0MCkpLCRuLGFycmF5KCJzZWxlY3QiPT5hcnJheSgkbSwkRWEpKSwkRWEpOyRhPW51bGw7aWYoJF9QT1NUWyJzYXZlIl0peyRhPShhcnJheSkkX1BPU1RbImZpZWxkcyJdO31lbHNlaWYoJHMpeyRRPWFycmF5KCk7Zm9yZWFjaCgkcAphcyRmPT4kZSl7aWYoaXNzZXQoJGVbInByaXZpbGVnZXMiXVsic2VsZWN0Il0pKXskUVtdPSgkX1BPU1RbImNsb25lIl0mJiRlWyJhdXRvX2luY3JlbWVudCJdPyInJyBBUyAiOihlcmVnKCJlbnVtfHNldCIsJGVbInR5cGUiXSk/IjEqIi5pZGZfZXNjYXBlKCRmKS4iIEFTICI6IiIpKS5pZGZfZXNjYXBlKCRmKTt9fSRhPWFycmF5KCk7aWYoJFEpeyRIPWdldF9yb3dzKCJTRUxFQ1QiLmxpbWl0KGltcGxvZGUoIiwgIiwkUSkuIiBGUk9NICIudGFibGUoJG0pLCIgV0hFUkUgJHMiLChpc3NldCgkX0dFVFsic2VsZWN0Il0pPzI6MSkpKTskYT0oaXNzZXQoJF9HRVRbInNlbGVjdCJdKSYmY291bnQoJEgpIT0xP251bGw6cmVzZXQoJEgpKTt9fWVjaG8nCjxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiIGlkPSJmb3JtIj4KJztpZigkcCl7ZWNobyI8dGFibGUgY2VsbHNwYWNpbmc9JzAnIG9ua2V5ZG93bj0ncmV0dXJuIGVkaXRpbmdLZXlkb3duKGV2ZW50KTsnPlxuIjtmb3JlYWNoKCRwCmFzJGY9PiRlKXtlY2hvIjx0cj48dGg+Ii4kby0+ZmllbGROYW1lKCRlKTskemE9JF9HRVRbInNldCJdW2JyYWNrZXRfZXNjYXBlKCRmKV07JHE9KGlzc2V0KCRhKT8oJGFbJGZdIT0iIiYmZXJlZygiZW51bXxzZXQiLCRlWyJ0eXBlIl0pPyskYVskZl06JGFbJGZdKTooISRxYSYmJGVbImF1dG9faW5jcmVtZW50Il0/IiI6KGlzc2V0KCRfR0VUWyJzZWxlY3QiXSk/ZmFsc2U6KGlzc2V0KCR6YSk/JHphOiRlWyJkZWZhdWx0Il0pKSkpO2lmKCEkX1BPU1RbInNhdmUiXSYmaXNfc3RyaW5nKCRxKSl7JHE9JG8tPmVkaXRWYWwoJHEsJGUpO30kSz0oJF9QT1NUWyJzYXZlIl0/KHN0cmluZykkX1BPU1RbImZ1bmN0aW9uIl1bJGZdOigkcyYmJGVbIm9uX3VwZGF0ZSJdPT0iQ1VSUkVOVF9USU1FU1RBTVAiPyJub3ciOigkcT09PWZhbHNlP251bGw6KGlzc2V0KCRxKT8nJzonTlVMTCcpKSkpO2lmKCRlWyJ0eXBlIl09PSJ0aW1lc3RhbXAiJiYkcT09IkNVUlJFTlRfVElNRVNUQU1QIil7JHE9IiI7JEs9Im5vdyI7fWlucHV0KCRlLCRxLCRLKTtlY2hvIlxuIjt9ZWNobyI8L3RhYmxlPlxuIjt9ZWNobyc8cD4KJztpZigkcCl7ZWNobyI8aW5wdXQgdHlwZT0nc3VibWl0JyB2YWx1ZT0nIi5sYW5nKDE0MSkuIic+XG4iO2lmKCFpc3NldCgkX0dFVFsic2VsZWN0Il0pKXtlY2hvJzxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9Imluc2VydCIgdmFsdWU9IicuKCRxYT9sYW5nKDE0Mik6bGFuZygxNDMpKS4iXCI+XG4iO319ZWNobygkcWE/IjxpbnB1dCB0eXBlPSdzdWJtaXQnIG5hbWU9J2RlbGV0ZScgdmFsdWU9JyIubGFuZygxNDQpLiInIG9uY2xpY2s9XCJyZXR1cm4gY29uZmlybSgnIi5sYW5nKDApLiInKTtcIj5cbiI6KCRfUE9TVHx8ISRwPyIiOiI8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Zvcm0nKS5nZXRFbGVtZW50c0J5VGFnTmFtZSgndGQnKVsxXS5maXJzdENoaWxkLmZvY3VzKCk7PC9zY3JpcHQ+XG4iKSk7aWYoaXNzZXQoJF9HRVRbInNlbGVjdCJdKSl7aGlkZGVuX2ZpZWxkcyhhcnJheSgiY2hlY2siPT4oYXJyYXkpJF9QT1NUWyJjaGVjayJdLCJjbG9uZSI9PiRfUE9TVFsiY2xvbmUiXSwiYWxsIj0+JF9QT1NUWyJhbGwiXSkpO31lY2hvJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InJlZmVyZXIiIHZhbHVlPSInLGgoaXNzZXQoJF9QT1NUWyJyZWZlcmVyIl0pPyRfUE9TVFsicmVmZXJlciJdOiRfU0VSVkVSWyJIVFRQX1JFRkVSRVIiXSksJyI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNhdmUiIHZhbHVlPSIxIj4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0idG9rZW4iIHZhbHVlPSInLCRNLCciPgo8L2Zvcm0+Cic7fWVsc2VpZihpc3NldCgkX0dFVFsiY3JlYXRlIl0pKXskbT0kX0dFVFsiY3JlYXRlIl07JHBlPWFycmF5KCdIQVNIJywnTElORUFSIEhBU0gnLCdLRVknLCdMSU5FQVIgS0VZJywnUkFOR0UnLCdMSVNUJyk7JGNlPXJlZmVyZW5jYWJsZV9wcmltYXJ5KCRtKTskaGE9YXJyYXkoKTtmb3JlYWNoKCRjZQphcyRFYT0+JGUpeyRoYVtzdHJfcmVwbGFjZSgiYCIsImBgIiwkRWEpLiJgIi5zdHJfcmVwbGFjZSgiYCIsImBgIiwkZVsiZmllbGQiXSldPSRFYTt9JEtjPWFycmF5KCk7JEpjPWFycmF5KCk7aWYoJG0hPSIiKXskS2M9ZmllbGRzKCRtKTskSmM9dGFibGVfc3RhdHVzKCRtKTt9aWYoJF9QT1NUJiYhJF9QT1NUWyJmaWVsZHMiXSl7JF9QT1NUWyJmaWVsZHMiXT1hcnJheSgpO31pZigkX1BPU1QmJiEkbiYmISRfUE9TVFsiYWRkIl0mJiEkX1BPU1RbImRyb3BfY29sIl0mJiEkX1BPU1RbInVwIl0mJiEkX1BPU1RbImRvd24iXSl7aWYoJF9QT1NUWyJkcm9wIl0pe3F1ZXJ5X3JlZGlyZWN0KCJEUk9QIFRBQkxFICIudGFibGUoJG0pLHN1YnN0cihNRSwwLC0xKSxsYW5nKDE0NSkpO31lbHNleyRwPWFycmF5KCk7JE9hPWFycmF5KCk7a3NvcnQoJF9QT1NUWyJmaWVsZHMiXSk7JHZkPXJlc2V0KCRLYyk7JEpiPSJGSVJTVCI7Zm9yZWFjaCgkX1BPU1RbImZpZWxkcyJdYXMkZD0+JGUpeyRBPSRoYVskZVsidHlwZSJdXTskVWM9KGlzc2V0KCRBKT8kY2VbJEFdOiRlKTtpZigkZVsiZmllbGQiXSE9IiIpe2lmKCEkZVsiaGFzX2RlZmF1bHQiXSl7JGVbImRlZmF1bHQiXT1udWxsO30kemE9ZXJlZ2lfcmVwbGFjZSgiICpvbiB1cGRhdGUgQ1VSUkVOVF9USU1FU1RBTVAiLCIiLCRlWyJkZWZhdWx0Il0pO2lmKCR6YSE9JGVbImRlZmF1bHQiXSl7JGVbIm9uX3VwZGF0ZSJdPSJDVVJSRU5UX1RJTUVTVEFNUCI7JGVbImRlZmF1bHQiXT0kemE7fWlmKCRkPT0kX1BPU1RbImF1dG9faW5jcmVtZW50X2NvbCJdKXskZVsiYXV0b19pbmNyZW1lbnQiXT10cnVlO30kcWU9cHJvY2Vzc19maWVsZCgkZSwkVWMpO2lmKCRxZSE9cHJvY2Vzc19maWVsZCgkdmQsJHZkKSl7JHBbXT1hcnJheSgkZVsib3JpZyJdLCRxZSwkSmIpO31pZihpc3NldCgkQSkpeyRPYVtpZGZfZXNjYXBlKCRlWyJmaWVsZCJdKV09KCRtIT0iIj8iQUREIjoiICIpLiIgRk9SRUlHTiBLRVkgKCIuaWRmX2VzY2FwZSgkZVsiZmllbGQiXSkuIikgUkVGRVJFTkNFUyAiLnRhYmxlKCRoYVskZVsidHlwZSJdXSkuIiAoIi5pZGZfZXNjYXBlKCRVY1siZmllbGQiXSkuIikiLihpbl9hcnJheSgkZVsib25fZGVsZXRlIl0sJGZiKT8iIE9OIERFTEVURSAkZVtvbl9kZWxldGVdIjoiIik7fSRKYj0iQUZURVIgIi5pZGZfZXNjYXBlKCRlWyJmaWVsZCJdKTt9ZWxzZWlmKCRlWyJvcmlnIl0hPSIiKXskcFtdPWFycmF5KCRlWyJvcmlnIl0pO31pZigkZVsib3JpZyJdIT0iIil7JHZkPW5leHQoJEtjKTt9fSR2Yj0iIjtpZihpbl9hcnJheSgkX1BPU1RbInBhcnRpdGlvbl9ieSJdLCRwZSkpeyR5ZD1hcnJheSgpO2lmKCRfUE9TVFsicGFydGl0aW9uX2J5Il09PSdSQU5HRSd8fCRfUE9TVFsicGFydGl0aW9uX2J5Il09PSdMSVNUJyl7Zm9yZWFjaChhcnJheV9maWx0ZXIoJF9QT1NUWyJwYXJ0aXRpb25fbmFtZXMiXSlhcyRkPT4kYil7JHE9JF9QT1NUWyJwYXJ0aXRpb25fdmFsdWVzIl1bJGRdOyR5ZFtdPSJcblBBUlRJVElPTiAiLmlkZl9lc2NhcGUoJGIpLiIgVkFMVUVTICIuKCRfUE9TVFsicGFydGl0aW9uX2J5Il09PSdSQU5HRSc/IkxFU1MgVEhBTiI6IklOIikuKCRxIT0iIj8iICgkcSkiOiIgTUFYVkFMVUUiKTt9fSR2Yi49IlxuUEFSVElUSU9OIEJZICRfUE9TVFtwYXJ0aXRpb25fYnldKCRfUE9TVFtwYXJ0aXRpb25dKSIuKCR5ZD8iICgiLmltcGxvZGUoIiwiLCR5ZCkuIlxuKSI6KCRfUE9TVFsicGFydGl0aW9ucyJdPyIgUEFSVElUSU9OUyAiLigrJF9QT1NUWyJwYXJ0aXRpb25zIl0pOiIiKSk7fWVsc2VpZigkbSE9IiImJnN1cHBvcnQoInBhcnRpdGlvbmluZyIpKXskdmIuPSJcblJFTU9WRSBQQVJUSVRJT05JTkciO30kdmE9bGFuZygxNDYpO2lmKCRtPT0iIil7Y29va2llKCJhZG1pbmVyX2VuZ2luZSIsJF9QT1NUWyJFbmdpbmUiXSk7JHZhPWxhbmcoMTQ3KTt9cXVlcmllc19yZWRpcmVjdChNRS4idGFibGU9Ii51cmxlbmNvZGUoJF9QT1NUWyJuYW1lIl0pLCR2YSxhbHRlcl90YWJsZSgkbSwkX1BPU1RbIm5hbWUiXSwkcCwkT2EsJF9QT1NUWyJDb21tZW50Il0sKCRfUE9TVFsiRW5naW5lIl0mJiRfUE9TVFsiRW5naW5lIl0hPSRKY1siRW5naW5lIl0/JF9QT1NUWyJFbmdpbmUiXToiIiksKCRfUE9TVFsiQ29sbGF0aW9uIl0mJiRfUE9TVFsiQ29sbGF0aW9uIl0hPSRKY1siQ29sbGF0aW9uIl0/JF9QT1NUWyJDb2xsYXRpb24iXToiIiksKCRfUE9TVFsiQXV0b19pbmNyZW1lbnQiXSE9IiI/KyRfUE9TVFsiQXV0b19pbmNyZW1lbnQiXToiIiksJHZiKSk7fX1wYWdlX2hlYWRlcigoJG0hPSIiP2xhbmcoMjgpOmxhbmcoMTQ4KSksJG4sYXJyYXkoInRhYmxlIj0+JG0pLCRtKTskYT1hcnJheSgiRW5naW5lIj0+JF9DT09LSUVbImFkbWluZXJfZW5naW5lIl0sImZpZWxkcyI9PmFycmF5KGFycmF5KCJmaWVsZCI9PiIiLCJ0eXBlIj0+KGlzc2V0KCRSWyJpbnQiXSk/ImludCI6KGlzc2V0KCRSWyJpbnRlZ2VyIl0pPyJpbnRlZ2VyIjoiIikpKSksInBhcnRpdGlvbl9uYW1lcyI9PmFycmF5KCIiKSwpO2lmKCRfUE9TVCl7JGE9JF9QT1NUO2lmKCRhWyJhdXRvX2luY3JlbWVudF9jb2wiXSl7JGFbImZpZWxkcyJdWyRhWyJhdXRvX2luY3JlbWVudF9jb2wiXV1bImF1dG9faW5jcmVtZW50Il09dHJ1ZTt9cHJvY2Vzc19maWVsZHMoJGFbImZpZWxkcyJdKTt9ZWxzZWlmKCRtIT0iIil7JGE9JEpjOyRhWyJuYW1lIl09JG07JGFbImZpZWxkcyJdPWFycmF5KCk7aWYoISRfR0VUWyJhdXRvX2luY3JlbWVudCJdKXskYVsiQXV0b19pbmNyZW1lbnQiXT0iIjt9Zm9yZWFjaCgkS2MKYXMkZSl7JGVbImhhc19kZWZhdWx0Il09aXNzZXQoJGVbImRlZmF1bHQiXSk7aWYoJGVbIm9uX3VwZGF0ZSJdKXskZVsiZGVmYXVsdCJdLj0iIE9OIFVQREFURSAkZVtvbl91cGRhdGVdIjt9JGFbImZpZWxkcyJdW109JGU7fWlmKHN1cHBvcnQoInBhcnRpdGlvbmluZyIpKXskWWI9IkZST00gaW5mb3JtYXRpb25fc2NoZW1hLlBBUlRJVElPTlMgV0hFUkUgVEFCTEVfU0NIRU1BID0gIi5xKERCKS4iIEFORCBUQUJMRV9OQU1FID0gIi5xKCRtKTskaT0kZy0+cXVlcnkoIlNFTEVDVCBQQVJUSVRJT05fTUVUSE9ELCBQQVJUSVRJT05fT1JESU5BTF9QT1NJVElPTiwgUEFSVElUSU9OX0VYUFJFU1NJT04gJFliIE9SREVSIEJZIFBBUlRJVElPTl9PUkRJTkFMX1BPU0lUSU9OIERFU0MgTElNSVQgMSIpO2xpc3QoJGFbInBhcnRpdGlvbl9ieSJdLCRhWyJwYXJ0aXRpb25zIl0sJGFbInBhcnRpdGlvbiJdKT0kaS0+ZmV0Y2hfcm93KCk7JGFbInBhcnRpdGlvbl9uYW1lcyJdPWFycmF5KCk7JGFbInBhcnRpdGlvbl92YWx1ZXMiXT1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIlNFTEVDVCBQQVJUSVRJT05fTkFNRSwgUEFSVElUSU9OX0RFU0NSSVBUSU9OICRZYiBBTkQgUEFSVElUSU9OX05BTUUgIT0gJycgT1JERVIgQlkgUEFSVElUSU9OX09SRElOQUxfUE9TSVRJT04iKWFzJGRkKXskYVsicGFydGl0aW9uX25hbWVzIl1bXT0kZGRbIlBBUlRJVElPTl9OQU1FIl07JGFbInBhcnRpdGlvbl92YWx1ZXMiXVtdPSRkZFsiUEFSVElUSU9OX0RFU0NSSVBUSU9OIl07fSRhWyJwYXJ0aXRpb25fbmFtZXMiXVtdPSIiO319JFo9Y29sbGF0aW9ucygpOyRxZD1mbG9vcihleHRlbnNpb25fbG9hZGVkKCJzdWhvc2luIik/KG1pbihpbmlfZ2V0KCJzdWhvc2luLnJlcXVlc3QubWF4X3ZhcnMiKSxpbmlfZ2V0KCJzdWhvc2luLnBvc3QubWF4X3ZhcnMiKSktMTMpLzEwOjApO2lmKCRxZCYmY291bnQoJGFbImZpZWxkcyJdKT4kcWQpe2VjaG8iPHAgY2xhc3M9J2Vycm9yJz4iLmgobGFuZygxNDksJ3N1aG9zaW4ucG9zdC5tYXhfdmFycycsJ3N1aG9zaW4ucmVxdWVzdC5tYXhfdmFycycpKS4iXG4iO30kd2Q9ZW5naW5lcygpO2ZvcmVhY2goJHdkCmFzJHliKXtpZighc3RyY2FzZWNtcCgkeWIsJGFbIkVuZ2luZSJdKSl7JGFbIkVuZ2luZSJdPSR5YjticmVhazt9fWVjaG8nCjxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiIGlkPSJmb3JtIj4KPHA+CicsbGFuZygxNTApLCc6IDxpbnB1dCBuYW1lPSJuYW1lIiBtYXhsZW5ndGg9IjY0IiB2YWx1ZT0iJyxoKCRhWyJuYW1lIl0pLCciPgonO2lmKCRtPT0iIiYmISRfUE9TVCl7Pz48c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Zvcm0nKVsnbmFtZSddLmZvY3VzKCk7PC9zY3JpcHQ+PD9waHAgfWVjaG8oJHdkP2h0bWxfc2VsZWN0KCJFbmdpbmUiLGFycmF5KCIiPT4iKCIubGFuZygxNTEpLiIpIikrJHdkLCRhWyJFbmdpbmUiXSk6IiIpLCcgJywoJFomJiFlcmVnKCJzcWxpdGV8bXNzcWwiLCR2KT9odG1sX3NlbGVjdCgiQ29sbGF0aW9uIixhcnJheSgiIj0+IigiLmxhbmcoODUpLiIpIikrJFosJGFbIkNvbGxhdGlvbiJdKToiIiksJyA8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iJyxsYW5nKDE0MSksJyI+Cjx0YWJsZSBjZWxsc3BhY2luZz0iMCIgaWQ9ImVkaXQtZmllbGRzIiBjbGFzcz0ibm93cmFwIj4KJzskS2I9ZWRpdF9maWVsZHMoJGFbImZpZWxkcyJdLCRaLCJUQUJMRSIsJHFkLCRoYSwkYVsiQ29tbWVudCJdIT0iIik7ZWNobyc8L3RhYmxlPgo8cD4KJyxsYW5nKDkyKSwnOiA8aW5wdXQgbmFtZT0iQXV0b19pbmNyZW1lbnQiIHNpemU9IjYiIHZhbHVlPSInLGgoJGFbIkF1dG9faW5jcmVtZW50Il0pLCciPgo8bGFiZWwgY2xhc3M9Impzb25seSI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBvbmNsaWNrPSJjb2x1bW5TaG93KHRoaXMuY2hlY2tlZCwgNSk7Ij4nLGxhbmcoOTMpLCc8L2xhYmVsPgonLChzdXBwb3J0KCJjb21tZW50Iik/Y2hlY2tib3goIiIsIiIsJEtiLGxhbmcoOTQpLCJjb2x1bW5TaG93KHRoaXMuY2hlY2tlZCwgNik7IHRvZ2dsZSgnQ29tbWVudCcpOyBpZiAodGhpcy5jaGVja2VkKSB0aGlzLmZvcm1bJ0NvbW1lbnQnXS5mb2N1cygpOyIpLicgPGlucHV0IGlkPSJDb21tZW50IiBuYW1lPSJDb21tZW50IiB2YWx1ZT0iJy5oKCRhWyJDb21tZW50Il0pLiciIG1heGxlbmd0aD0iNjAiJy4oJEtiPycnOicgY2xhc3M9ImhpZGRlbiInKS4nPic6JycpLCc8cD4KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IicsbGFuZygxNDEpLCciPgonO2lmKCRfR0VUWyJjcmVhdGUiXSE9IiIpe2VjaG8nPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0iZHJvcCIgdmFsdWU9IicsbGFuZyg3OCksJyInLGNvbmZpcm0oKSwnPic7fWVjaG8nPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0idG9rZW4iIHZhbHVlPSInLCRNLCciPgonO2lmKHN1cHBvcnQoInBhcnRpdGlvbmluZyIpKXskbWU9ZXJlZygnUkFOR0V8TElTVCcsJGFbInBhcnRpdGlvbl9ieSJdKTtwcmludF9maWVsZHNldCgicGFydGl0aW9uIixsYW5nKDE1MiksJGFbInBhcnRpdGlvbl9ieSJdKTtlY2hvJzxwPgonLGh0bWxfc2VsZWN0KCJwYXJ0aXRpb25fYnkiLGFycmF5KC0xPT4iIikrJHBlLCRhWyJwYXJ0aXRpb25fYnkiXSwicGFydGl0aW9uQnlDaGFuZ2UodGhpcyk7IiksJyg8aW5wdXQgbmFtZT0icGFydGl0aW9uIiB2YWx1ZT0iJyxoKCRhWyJwYXJ0aXRpb24iXSksJyI+KQonLGxhbmcoMTUzKSwnOiA8aW5wdXQgbmFtZT0icGFydGl0aW9ucyIgc2l6ZT0iMiIgdmFsdWU9IicsaCgkYVsicGFydGl0aW9ucyJdKSwnIicsKCRtZXx8ISRhWyJwYXJ0aXRpb25fYnkiXT8iIGNsYXNzPSdoaWRkZW4nIjoiIiksJz4KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBpZD0icGFydGl0aW9uLXRhYmxlIicsKCRtZT8iIjoiIGNsYXNzPSdoaWRkZW4nIiksJz4KPHRoZWFkPjx0cj48dGg+JyxsYW5nKDE1NCksJzx0aD4nLGxhbmcoMTU1KSwnPC90aGVhZD4KJztmb3JlYWNoKCRhWyJwYXJ0aXRpb25fbmFtZXMiXWFzJGQ9PiRiKXtlY2hvJzx0cj4nLCc8dGQ+PGlucHV0IG5hbWU9InBhcnRpdGlvbl9uYW1lc1tdIiB2YWx1ZT0iJy5oKCRiKS4nIicuKCRkPT1jb3VudCgkYVsicGFydGl0aW9uX25hbWVzIl0pLTE/JyBvbmNoYW5nZT0icGFydGl0aW9uTmFtZUNoYW5nZSh0aGlzKTsiJzonJykuJz4nLCc8dGQ+PGlucHV0IG5hbWU9InBhcnRpdGlvbl92YWx1ZXNbXSIgdmFsdWU9IicuaCgkYVsicGFydGl0aW9uX3ZhbHVlcyJdWyRkXSkuJyI+Jzt9ZWNobyc8L3RhYmxlPgo8L2Rpdj48L2ZpZWxkc2V0PgonO31lY2hvJzwvZm9ybT4KJzt9ZWxzZWlmKGlzc2V0KCRfR0VUWyJpbmRleGVzIl0pKXskbT0kX0dFVFsiaW5kZXhlcyJdOyROYz1hcnJheSgiUFJJTUFSWSIsIlVOSVFVRSIsIklOREVYIik7JEQ9dGFibGVfc3RhdHVzKCRtKTtpZihlcmVnaSgiTXlJU0FNfE0/YXJpYSIsJERbIkVuZ2luZSJdKSl7JE5jW109IkZVTExURVhUIjt9JEo9aW5kZXhlcygkbSk7aWYoJHY9PSJzcWxpdGUiKXt1bnNldCgkTmNbMF0pO3Vuc2V0KCRKWyIiXSk7fWlmKCRfUE9TVCYmISRuJiYhJF9QT1NUWyJhZGQiXSl7JHU9YXJyYXkoKTtmb3JlYWNoKCRfUE9TVFsiaW5kZXhlcyJdYXMkeCl7aWYoaW5fYXJyYXkoJHhbInR5cGUiXSwkTmMpKXskQj1hcnJheSgpOyRlYz1hcnJheSgpOyRyPWFycmF5KCk7a3NvcnQoJHhbImNvbHVtbnMiXSk7Zm9yZWFjaCgkeFsiY29sdW1ucyJdYXMkZD0+JEMpe2lmKCRDIT0iIil7JFc9JHhbImxlbmd0aHMiXVskZF07JHJbXT1pZGZfZXNjYXBlKCRDKS4oJFc/IigiLigrJFcpLiIpIjoiIik7JEJbXT0kQzskZWNbXT0oJFc/JFc6bnVsbCk7fX1pZigkQil7Zm9yZWFjaCgkSgphcyRmPT4kQmIpe2tzb3J0KCRCYlsiY29sdW1ucyJdKTtrc29ydCgkQmJbImxlbmd0aHMiXSk7aWYoJHhbInR5cGUiXT09JEJiWyJ0eXBlIl0mJmFycmF5X3ZhbHVlcygkQmJbImNvbHVtbnMiXSk9PT0kQiYmKCEkQmJbImxlbmd0aHMiXXx8YXJyYXlfdmFsdWVzKCRCYlsibGVuZ3RocyJdKT09PSRlYykpe3Vuc2V0KCRKWyRmXSk7Y29udGludWUKMjt9fSR1W109YXJyYXkoJHhbInR5cGUiXSwiKCIuaW1wbG9kZSgiLCAiLCRyKS4iKSIpO319fWZvcmVhY2goJEoKYXMkZj0+JEJiKXskdVtdPWFycmF5KCRCYlsidHlwZSJdLGlkZl9lc2NhcGUoJGYpLCJEUk9QIik7fWlmKCEkdSl7cmVkaXJlY3QoTUUuInRhYmxlPSIudXJsZW5jb2RlKCRtKSk7fXF1ZXJpZXNfcmVkaXJlY3QoTUUuInRhYmxlPSIudXJsZW5jb2RlKCRtKSxsYW5nKDE1NiksYWx0ZXJfaW5kZXhlcygkbSwkdSkpO31wYWdlX2hlYWRlcihsYW5nKDEwMiksJG4sYXJyYXkoInRhYmxlIj0+JG0pLCRtKTskcD1hcnJheV9rZXlzKGZpZWxkcygkbSkpOyRhPWFycmF5KCJpbmRleGVzIj0+JEopO2lmKCRfUE9TVCl7JGE9JF9QT1NUO2lmKCRfUE9TVFsiYWRkIl0pe2ZvcmVhY2goJGFbImluZGV4ZXMiXWFzJGQ9PiR4KXtpZigkeFsiY29sdW1ucyJdW2NvdW50KCR4WyJjb2x1bW5zIl0pXSE9IiIpeyRhWyJpbmRleGVzIl1bJGRdWyJjb2x1bW5zIl1bXT0iIjt9fSR4PWVuZCgkYVsiaW5kZXhlcyJdKTtpZigkeFsidHlwZSJdfHxhcnJheV9maWx0ZXIoJHhbImNvbHVtbnMiXSwnc3RybGVuJyl8fGFycmF5X2ZpbHRlcigkeFsibGVuZ3RocyJdLCdzdHJsZW4nKSl7JGFbImluZGV4ZXMiXVtdPWFycmF5KCJjb2x1bW5zIj0+YXJyYXkoMT0+IiIpKTt9fX1lbHNle2ZvcmVhY2goJGFbImluZGV4ZXMiXWFzJGQ9PiR4KXskYVsiaW5kZXhlcyJdWyRkXVsiY29sdW1ucyJdW109IiI7fSRhWyJpbmRleGVzIl1bXT1hcnJheSgiY29sdW1ucyI9PmFycmF5KDE9PiIiKSk7fWVjaG8nCjxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiPgo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJub3dyYXAiPgo8dGhlYWQ+PHRyPjx0aD4nLGxhbmcoMTU3KSwnPHRoPicsbGFuZygxNTgpLCc8L3RoZWFkPgonOyRyYT0xO2ZvcmVhY2goJGFbImluZGV4ZXMiXWFzJHgpe2VjaG8iPHRyPjx0ZD4iLmh0bWxfc2VsZWN0KCJpbmRleGVzWyRyYV1bdHlwZV0iLGFycmF5KC0xPT4iIikrJE5jLCR4WyJ0eXBlIl0sKCRyYT09Y291bnQoJGFbImluZGV4ZXMiXSk/ImluZGV4ZXNBZGRSb3codGhpcyk7IjoxKSkuIjx0ZD4iO2tzb3J0KCR4WyJjb2x1bW5zIl0pOyRsPTE7Zm9yZWFjaCgkeFsiY29sdW1ucyJdYXMkZD0+JEMpe2VjaG8iPHNwYW4+Ii5odG1sX3NlbGVjdCgiaW5kZXhlc1skcmFdW2NvbHVtbnNdWyRsXSIsYXJyYXkoLTE9PiIiKSskcCwkQywoJGw9PWNvdW50KCR4WyJjb2x1bW5zIl0pPyJpbmRleGVzQWRkQ29sdW1uKHRoaXMpOyI6MSkpLCI8aW5wdXQgbmFtZT0naW5kZXhlc1skcmFdW2xlbmd0aHNdWyRsXScgc2l6ZT0nMicgdmFsdWU9JyIuaCgkeFsibGVuZ3RocyJdWyRkXSkuIic+IDwvc3Bhbj4iOyRsKys7fSRyYSsrO31lY2hvJzwvdGFibGU+CjxwPgo8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iJyxsYW5nKDE0MSksJyI+Cjxub3NjcmlwdD48cD48aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJhZGQiIHZhbHVlPSInLGxhbmcoOTUpLCciPjwvbm9zY3JpcHQ+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InRva2VuIiB2YWx1ZT0iJywkTSwnIj4KPC9mb3JtPgonO31lbHNlaWYoaXNzZXQoJF9HRVRbImRhdGFiYXNlIl0pKXtpZigkX1BPU1QmJiEkbiYmIWlzc2V0KCRfUE9TVFsiYWRkX3giXSkpe3Jlc3RhcnRfc2Vzc2lvbigpO2lmKCRfUE9TVFsiZHJvcCJdKXskX0dFVFsiZGIiXT0iIjtxdWVyaWVzX3JlZGlyZWN0KHJlbW92ZV9mcm9tX3VyaSgiZGJ8ZGF0YWJhc2UiKSxsYW5nKDE1OSksZHJvcF9kYXRhYmFzZXMoYXJyYXkoREIpKSk7fWVsc2VpZihEQiE9PSRfUE9TVFsibmFtZSJdKXtpZihEQiE9IiIpeyRfR0VUWyJkYiJdPSRfUE9TVFsibmFtZSJdO3F1ZXJpZXNfcmVkaXJlY3QocHJlZ19yZXBsYWNlKCd+ZGI9W14mXSomficsJycsTUUpLiJkYj0iLnVybGVuY29kZSgkX1BPU1RbIm5hbWUiXSksbGFuZygxNjApLHJlbmFtZV9kYXRhYmFzZSgkX1BPU1RbIm5hbWUiXSwkX1BPU1RbImNvbGxhdGlvbiJdKSk7fWVsc2V7JF89ZXhwbG9kZSgiXG4iLHN0cl9yZXBsYWNlKCJcciIsIiIsJF9QT1NUWyJuYW1lIl0pKTskZWU9dHJ1ZTskeGI9IiI7Zm9yZWFjaCgkXwphcyR0KXtpZihjb3VudCgkXyk9PTF8fCR0IT0iIil7aWYoIWNyZWF0ZV9kYXRhYmFzZSgkdCwkX1BPU1RbImNvbGxhdGlvbiJdKSl7JGVlPWZhbHNlO30keGI9JHQ7fX1xdWVyaWVzX3JlZGlyZWN0KE1FLiJkYj0iLnVybGVuY29kZSgkeGIpLGxhbmcoMTYxKSwkZWUpO319ZWxzZXtpZighJF9QT1NUWyJjb2xsYXRpb24iXSl7cmVkaXJlY3Qoc3Vic3RyKE1FLDAsLTEpKTt9cXVlcnlfcmVkaXJlY3QoIkFMVEVSIERBVEFCQVNFICIuaWRmX2VzY2FwZSgkX1BPU1RbIm5hbWUiXSkuKGVyZWdpKCdeW2EtejAtOV9dKyQnLCRfUE9TVFsiY29sbGF0aW9uIl0pPyIgQ09MTEFURSAkX1BPU1RbY29sbGF0aW9uXSI6IiIpLHN1YnN0cihNRSwwLC0xKSxsYW5nKDE2MikpO319cGFnZV9oZWFkZXIoREIhPSIiP2xhbmcoNDYpOmxhbmcoMTYzKSwkbixhcnJheSgpLERCKTskWj1jb2xsYXRpb25zKCk7JGY9REI7JERjPW51bGw7aWYoJF9QT1NUKXskZj0kX1BPU1RbIm5hbWUiXTskRGM9JF9QT1NUWyJjb2xsYXRpb24iXTt9ZWxzZWlmKERCIT0iIil7JERjPWRiX2NvbGxhdGlvbihEQiwkWik7fWVsc2VpZigkdj09InNxbCIpe2ZvcmVhY2goZ2V0X3ZhbHMoIlNIT1cgR1JBTlRTIilhcyRrYSl7aWYocHJlZ19tYXRjaCgnfiBPTiAoYCgoW15cXFxcYF18YGB8XFxcXC4pKiklYFxcLlxcKik/ficsJGthLCRrKSYmJGtbMV0peyRmPXN0cmlwY3NsYXNoZXMoaWRmX3VuZXNjYXBlKCJgJGtbMl1gIikpO2JyZWFrO319fWVjaG8nCjxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiPgo8cD4KJywoJF9QT1NUWyJhZGRfeCJdfHxzdHJwb3MoJGYsIlxuIik/Jzx0ZXh0YXJlYSBpZD0ibmFtZSIgbmFtZT0ibmFtZSIgcm93cz0iMTAiIGNvbHM9IjQwIj4nLmgoJGYpLic8L3RleHRhcmVhPjxicj4nOic8aW5wdXQgaWQ9Im5hbWUiIG5hbWU9Im5hbWUiIHZhbHVlPSInLmgoJGYpLiciIG1heGxlbmd0aD0iNjQiPicpLiJcbiIuKCRaP2h0bWxfc2VsZWN0KCJjb2xsYXRpb24iLGFycmF5KCIiPT4iKCIubGFuZyg4NSkuIikiKSskWiwkRGMpOiIiKTs/Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ25hbWUnKS5mb2N1cygpOzwvc2NyaXB0Pgo8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iPD9waHAgZWNobwpsYW5nKDE0MSksJyI+Cic7aWYoREIhPSIiKXtlY2hvIjxpbnB1dCB0eXBlPSdzdWJtaXQnIG5hbWU9J2Ryb3AnIHZhbHVlPSciLmxhbmcoNzgpLiInIi5jb25maXJtKCkuIj5cbiI7fWVsc2VpZighJF9QT1NUWyJhZGRfeCJdJiYkX0dFVFsiZGIiXT09IiIpe2VjaG8iPGlucHV0IHR5cGU9J2ltYWdlJyBuYW1lPSdhZGQnIHNyYz0nIi5oKHByZWdfcmVwbGFjZSgiflxcPy4qfiIsIiIsTUUpKS4iP2ZpbGU9cGx1cy5naWYmYW1wO3ZlcnNpb249My4yLjInIGFsdD0nKycgdGl0bGU9JyIubGFuZyg5NSkuIic+XG4iO31lY2hvJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InRva2VuIiB2YWx1ZT0iJywkTSwnIj4KPC9mb3JtPgonO31lbHNlaWYoaXNzZXQoJF9HRVRbInNjaGVtZSJdKSl7aWYoJF9QT1NUJiYhJG4peyR3PXByZWdfcmVwbGFjZSgnfm5zPVteJl0qJn4nLCcnLE1FKS4ibnM9IjtpZigkX1BPU1RbImRyb3AiXSl7cXVlcnlfcmVkaXJlY3QoIkRST1AgU0NIRU1BICIuaWRmX2VzY2FwZSgkX0dFVFsibnMiXSksJHcsbGFuZygxNjQpKTt9ZWxzZXskdy49dXJsZW5jb2RlKCRfUE9TVFsibmFtZSJdKTtpZigkX0dFVFsibnMiXT09IiIpe3F1ZXJ5X3JlZGlyZWN0KCJDUkVBVEUgU0NIRU1BICIuaWRmX2VzY2FwZSgkX1BPU1RbIm5hbWUiXSksJHcsbGFuZygxNjUpKTt9ZWxzZWlmKCRfR0VUWyJucyJdIT0kX1BPU1RbIm5hbWUiXSl7cXVlcnlfcmVkaXJlY3QoIkFMVEVSIFNDSEVNQSAiLmlkZl9lc2NhcGUoJF9HRVRbIm5zIl0pLiIgUkVOQU1FIFRPICIuaWRmX2VzY2FwZSgkX1BPU1RbIm5hbWUiXSksJHcsbGFuZygxNjYpKTt9ZWxzZXtyZWRpcmVjdCgkdyk7fX19cGFnZV9oZWFkZXIoJF9HRVRbIm5zIl0hPSIiP2xhbmcoNDcpOmxhbmcoNDgpLCRuKTskYT1hcnJheSgibmFtZSI9PiRfR0VUWyJucyJdKTtpZigkX1BPU1QpeyRhPSRfUE9TVDt9ZWNobycKPGZvcm0gYWN0aW9uPSIiIG1ldGhvZD0icG9zdCI+CjxwPjxpbnB1dCBuYW1lPSJuYW1lIiB2YWx1ZT0iJyxoKCRhWyJuYW1lIl0pLCciPgo8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iJyxsYW5nKDE0MSksJyI+Cic7aWYoJF9HRVRbIm5zIl0hPSIiKXtlY2hvIjxpbnB1dCB0eXBlPSdzdWJtaXQnIG5hbWU9J2Ryb3AnIHZhbHVlPSciLmxhbmcoNzgpLiInIi5jb25maXJtKCkuIj5cbiI7fWVjaG8nPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0idG9rZW4iIHZhbHVlPSInLCRNLCciPgo8L2Zvcm0+Cic7fWVsc2VpZihpc3NldCgkX0dFVFsiY2FsbCJdKSl7JFZhPSRfR0VUWyJjYWxsIl07cGFnZV9oZWFkZXIobGFuZygxNjcpLiI6ICIuaCgkVmEpLCRuKTskVGE9cm91dGluZSgkVmEsKGlzc2V0KCRfR0VUWyJjYWxsZiJdKT8iRlVOQ1RJT04iOiJQUk9DRURVUkUiKSk7JFRiPWFycmF5KCk7JHFiPWFycmF5KCk7Zm9yZWFjaCgkVGFbImZpZWxkcyJdYXMkbD0+JGUpe2lmKHN1YnN0cigkZVsiaW5vdXQiXSwtMyk9PSJPVVQiKXskcWJbJGxdPSJAIi5pZGZfZXNjYXBlKCRlWyJmaWVsZCJdKS4iIEFTICIuaWRmX2VzY2FwZSgkZVsiZmllbGQiXSk7fWlmKCEkZVsiaW5vdXQiXXx8c3Vic3RyKCRlWyJpbm91dCJdLDAsMik9PSJJTiIpeyRUYltdPSRsO319aWYoISRuJiYkX1BPU1QpeyRkZT1hcnJheSgpO2ZvcmVhY2goJFRhWyJmaWVsZHMiXWFzJGQ9PiRlKXtpZihpbl9hcnJheSgkZCwkVGIpKXskYj1wcm9jZXNzX2lucHV0KCRlKTtpZigkYj09PWZhbHNlKXskYj0iJyciO31pZihpc3NldCgkcWJbJGRdKSl7JGctPnF1ZXJ5KCJTRVQgQCIuaWRmX2VzY2FwZSgkZVsiZmllbGQiXSkuIiA9ICRiIik7fX0kZGVbXT0oaXNzZXQoJHFiWyRkXSk/IkAiLmlkZl9lc2NhcGUoJGVbImZpZWxkIl0pOiRiKTt9JGo9KGlzc2V0KCRfR0VUWyJjYWxsZiJdKT8iU0VMRUNUIjoiQ0FMTCIpLiIgIi5pZGZfZXNjYXBlKCRWYSkuIigiLmltcGxvZGUoIiwgIiwkZGUpLiIpIjtlY2hvIjxwPjxjb2RlIGNsYXNzPSdqdXNoLSR2Jz4iLmgoJGopLiI8L2NvZGU+IDxhIGhyZWY9JyIuaChNRSkuInNxbD0iLnVybGVuY29kZSgkaikuIic+Ii5sYW5nKDMxKS4iPC9hPlxuIjtpZighJGctPm11bHRpX3F1ZXJ5KCRqKSl7ZWNobyI8cCBjbGFzcz0nZXJyb3InPiIuZXJyb3IoKS4iXG4iO31lbHNle2RveyRpPSRnLT5zdG9yZV9yZXN1bHQoKTtpZihpc19vYmplY3QoJGkpKXtzZWxlY3QoJGkpO31lbHNle2VjaG8iPHAgY2xhc3M9J21lc3NhZ2UnPiIubGFuZygxNjgsJGctPmFmZmVjdGVkX3Jvd3MpLiJcbiI7fX13aGlsZSgkZy0+bmV4dF9yZXN1bHQoKSk7aWYoJHFiKXtzZWxlY3QoJGctPnF1ZXJ5KCJTRUxFQ1QgIi5pbXBsb2RlKCIsICIsJHFiKSkpO319fWVjaG8nCjxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiPgonO2lmKCRUYil7ZWNobyI8dGFibGUgY2VsbHNwYWNpbmc9JzAnPlxuIjtmb3JlYWNoKCRUYgphcyRkKXskZT0kVGFbImZpZWxkcyJdWyRkXTskZj0kZVsiZmllbGQiXTtlY2hvIjx0cj48dGg+Ii4kby0+ZmllbGROYW1lKCRlKTskcT0kX1BPU1RbImZpZWxkcyJdWyRmXTtpZigkcSE9IiIpe2lmKCRlWyJ0eXBlIl09PSJlbnVtIil7JHE9KyRxO31pZigkZVsidHlwZSJdPT0ic2V0Iil7JHE9YXJyYXlfc3VtKCRxKTt9fWlucHV0KCRlLCRxLChzdHJpbmcpJF9QT1NUWyJmdW5jdGlvbiJdWyRmXSk7ZWNobyJcbiI7fWVjaG8iPC90YWJsZT5cbiI7fWVjaG8nPHA+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSInLGxhbmcoMTY3KSwnIj4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0idG9rZW4iIHZhbHVlPSInLCRNLCciPgo8L2Zvcm0+Cic7fWVsc2VpZihpc3NldCgkX0dFVFsiZm9yZWlnbiJdKSl7JG09JF9HRVRbImZvcmVpZ24iXTtpZigkX1BPU1QmJiEkbiYmISRfUE9TVFsiYWRkIl0mJiEkX1BPU1RbImNoYW5nZSJdJiYhJF9QT1NUWyJjaGFuZ2UtanMiXSl7aWYoJF9QT1NUWyJkcm9wIl0pe3F1ZXJ5X3JlZGlyZWN0KCJBTFRFUiBUQUJMRSAiLnRhYmxlKCRtKS4iXG5EUk9QICIuKCR2PT0ic3FsIj8iRk9SRUlHTiBLRVkgIjoiQ09OU1RSQUlOVCAiKS5pZGZfZXNjYXBlKCRfR0VUWyJuYW1lIl0pLE1FLiJ0YWJsZT0iLnVybGVuY29kZSgkbSksbGFuZygxNjkpKTt9ZWxzZXskR2E9YXJyYXlfZmlsdGVyKCRfUE9TVFsic291cmNlIl0sJ3N0cmxlbicpO2tzb3J0KCRHYSk7JGVhPWFycmF5KCk7Zm9yZWFjaCgkR2EKYXMkZD0+JGIpeyRlYVskZF09JF9QT1NUWyJ0YXJnZXQiXVskZF07fXF1ZXJ5X3JlZGlyZWN0KCJBTFRFUiBUQUJMRSAiLnRhYmxlKCRtKS4oJF9HRVRbIm5hbWUiXSE9IiI/IlxuRFJPUCBGT1JFSUdOIEtFWSAiLmlkZl9lc2NhcGUoJF9HRVRbIm5hbWUiXSkuIiwiOiIiKS4iXG5BREQgRk9SRUlHTiBLRVkgKCIuaW1wbG9kZSgiLCAiLGFycmF5X21hcCgnaWRmX2VzY2FwZScsJEdhKSkuIikgUkVGRVJFTkNFUyAiLnRhYmxlKCRfUE9TVFsidGFibGUiXSkuIiAoIi5pbXBsb2RlKCIsICIsYXJyYXlfbWFwKCdpZGZfZXNjYXBlJywkZWEpKS4iKSIuKGluX2FycmF5KCRfUE9TVFsib25fZGVsZXRlIl0sJGZiKT8iIE9OIERFTEVURSAkX1BPU1Rbb25fZGVsZXRlXSI6IiIpLihpbl9hcnJheSgkX1BPU1RbIm9uX3VwZGF0ZSJdLCRmYik/IiBPTiBVUERBVEUgJF9QT1NUW29uX3VwZGF0ZV0iOiIiKSxNRS4idGFibGU9Ii51cmxlbmNvZGUoJG0pLCgkX0dFVFsibmFtZSJdIT0iIj9sYW5nKDE3MCk6bGFuZygxNzEpKSk7JG49bGFuZygxNzIpLiI8YnI+JG4iO319cGFnZV9oZWFkZXIobGFuZygxNzMpLCRuLGFycmF5KCJ0YWJsZSI9PiRtKSwkbSk7JGE9YXJyYXkoInRhYmxlIj0+JG0sInNvdXJjZSI9PmFycmF5KCIiKSk7aWYoJF9QT1NUKXskYT0kX1BPU1Q7a3NvcnQoJGFbInNvdXJjZSJdKTtpZigkX1BPU1RbImFkZCJdKXskYVsic291cmNlIl1bXT0iIjt9ZWxzZWlmKCRfUE9TVFsiY2hhbmdlIl18fCRfUE9TVFsiY2hhbmdlLWpzIl0peyRhWyJ0YXJnZXQiXT1hcnJheSgpO319ZWxzZWlmKCRfR0VUWyJuYW1lIl0hPSIiKXskaGE9Zm9yZWlnbl9rZXlzKCRtKTskYT0kaGFbJF9HRVRbIm5hbWUiXV07JGFbInNvdXJjZSJdW109IiI7fSRHYT1hcnJheV9rZXlzKGZpZWxkcygkbSkpOyRlYT0oJG09PT0kYVsidGFibGUiXT8kR2E6YXJyYXlfa2V5cyhmaWVsZHMoJGFbInRhYmxlIl0pKSk7JGplPWFycmF5KCk7Zm9yZWFjaCh0YWJsZV9zdGF0dXMoKWFzJGY9PiREKXtpZihma19zdXBwb3J0KCREKSl7JGplW109JGY7fX1lY2hvJwo8Zm9ybSBhY3Rpb249IiIgbWV0aG9kPSJwb3N0Ij4KPHA+Cic7aWYoJGFbImRiIl09PSIiKXtlY2hvCmxhbmcoMTc0KSwnOgonLGh0bWxfc2VsZWN0KCJ0YWJsZSIsJGplLCRhWyJ0YWJsZSJdLCJ0aGlzLmZvcm1bJ2NoYW5nZS1qcyddLnZhbHVlID0gJzEnOyB0aGlzLmZvcm0uc3VibWl0KCk7IiksJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImNoYW5nZS1qcyIgdmFsdWU9IiI+Cjxub3NjcmlwdD48cD48aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJjaGFuZ2UiIHZhbHVlPSInLGxhbmcoMTc1KSwnIj48L25vc2NyaXB0Pgo8dGFibGUgY2VsbHNwYWNpbmc9IjAiPgo8dGhlYWQ+PHRyPjx0aD4nLGxhbmcoMTA0KSwnPHRoPicsbGFuZygxMDUpLCc8L3RoZWFkPgonOyRyYT0wO2ZvcmVhY2goJGFbInNvdXJjZSJdYXMkZD0+JGIpe2VjaG8iPHRyPiIsIjx0ZD4iLmh0bWxfc2VsZWN0KCJzb3VyY2VbIi4oKyRkKS4iXSIsYXJyYXkoLTE9PiIiKSskR2EsJGIsKCRyYT09Y291bnQoJGFbInNvdXJjZSJdKS0xPyJmb3JlaWduQWRkUm93KHRoaXMpOyI6MSkpLCI8dGQ+Ii5odG1sX3NlbGVjdCgidGFyZ2V0WyIuKCskZCkuIl0iLCRlYSwkYVsidGFyZ2V0Il1bJGRdKTskcmErKzt9ZWNobyc8L3RhYmxlPgo8cD4KJyxsYW5nKDg2KSwnOiAnLGh0bWxfc2VsZWN0KCJvbl9kZWxldGUiLGFycmF5KC0xPT4iIikrJGZiLCRhWyJvbl9kZWxldGUiXSksJyAnLGxhbmcoMTA2KSwnOiAnLGh0bWxfc2VsZWN0KCJvbl91cGRhdGUiLGFycmF5KC0xPT4iIikrJGZiLCRhWyJvbl91cGRhdGUiXSksJzxwPgo8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iJyxsYW5nKDE0MSksJyI+Cjxub3NjcmlwdD48cD48aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJhZGQiIHZhbHVlPSInLGxhbmcoMTc2KSwnIj48L25vc2NyaXB0PgonO31pZigkX0dFVFsibmFtZSJdIT0iIil7ZWNobyc8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJkcm9wIiB2YWx1ZT0iJyxsYW5nKDc4KSwnIicsY29uZmlybSgpLCc+Jzt9ZWNobyc8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ0b2tlbiIgdmFsdWU9IicsJE0sJyI+CjwvZm9ybT4KJzt9ZWxzZWlmKGlzc2V0KCRfR0VUWyJ2aWV3Il0pKXskbT0kX0dFVFsidmlldyJdOyRoYj1mYWxzZTtpZigkX1BPU1QmJiEkbil7JGhiPWRyb3BfY3JlYXRlKCJEUk9QIFZJRVcgIi50YWJsZSgkbSksIkNSRUFURSBWSUVXICIudGFibGUoJF9QT1NUWyJuYW1lIl0pLiIgQVNcbiRfUE9TVFtzZWxlY3RdIiwoJF9QT1NUWyJkcm9wIl0/c3Vic3RyKE1FLDAsLTEpOk1FLiJ0YWJsZT0iLnVybGVuY29kZSgkX1BPU1RbIm5hbWUiXSkpLGxhbmcoMTc3KSxsYW5nKDE3OCksbGFuZygxNzkpLCRtKTt9cGFnZV9oZWFkZXIoKCRtIT0iIj9sYW5nKDI3KTpsYW5nKDE4MCkpLCRuLGFycmF5KCJ0YWJsZSI9PiRtKSwkbSk7JGE9YXJyYXkoKTtpZigkX1BPU1QpeyRhPSRfUE9TVDt9ZWxzZWlmKCRtIT0iIil7JGE9dmlldygkbSk7JGFbIm5hbWUiXT0kbTt9ZWNobycKPGZvcm0gYWN0aW9uPSIiIG1ldGhvZD0icG9zdCI+CjxwPicsbGFuZygxODEpLCc6IDxpbnB1dCBuYW1lPSJuYW1lIiB2YWx1ZT0iJyxoKCRhWyJuYW1lIl0pLCciIG1heGxlbmd0aD0iNjQiPgo8cD4nO3RleHRhcmVhKCJzZWxlY3QiLCRhWyJzZWxlY3QiXSk7ZWNobyc8cD4KJztpZigkaGIpe2VjaG8nPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZHJvcHBlZCIgdmFsdWU9IjEiPic7fWVjaG8nPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IicsbGFuZygxNDEpLCciPgonO2lmKCRfR0VUWyJ2aWV3Il0hPSIiKXtlY2hvJzxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImRyb3AiIHZhbHVlPSInLGxhbmcoNzgpLCciJyxjb25maXJtKCksJz4nO31lY2hvJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InRva2VuIiB2YWx1ZT0iJywkTSwnIj4KPC9mb3JtPgonO31lbHNlaWYoaXNzZXQoJF9HRVRbImV2ZW50Il0pKXskaWI9JF9HRVRbImV2ZW50Il07JGllPWFycmF5KCJZRUFSIiwiUVVBUlRFUiIsIk1PTlRIIiwiREFZIiwiSE9VUiIsIk1JTlVURSIsIldFRUsiLCJTRUNPTkQiLCJZRUFSX01PTlRIIiwiREFZX0hPVVIiLCJEQVlfTUlOVVRFIiwiREFZX1NFQ09ORCIsIkhPVVJfTUlOVVRFIiwiSE9VUl9TRUNPTkQiLCJNSU5VVEVfU0VDT05EIik7JE1kPWFycmF5KCJFTkFCTEVEIj0+IkVOQUJMRSIsIkRJU0FCTEVEIj0+IkRJU0FCTEUiLCJTTEFWRVNJREVfRElTQUJMRUQiPT4iRElTQUJMRSBPTiBTTEFWRSIpO2lmKCRfUE9TVCYmISRuKXtpZigkX1BPU1RbImRyb3AiXSl7cXVlcnlfcmVkaXJlY3QoIkRST1AgRVZFTlQgIi5pZGZfZXNjYXBlKCRpYiksc3Vic3RyKE1FLDAsLTEpLGxhbmcoMTgyKSk7fWVsc2VpZihpbl9hcnJheSgkX1BPU1RbIklOVEVSVkFMX0ZJRUxEIl0sJGllKSYmaXNzZXQoJE1kWyRfUE9TVFsiU1RBVFVTIl1dKSl7JGhlPSJcbk9OIFNDSEVEVUxFICIuKCRfUE9TVFsiSU5URVJWQUxfVkFMVUUiXT8iRVZFUlkgIi5xKCRfUE9TVFsiSU5URVJWQUxfVkFMVUUiXSkuIiAkX1BPU1RbSU5URVJWQUxfRklFTERdIi4oJF9QT1NUWyJTVEFSVFMiXT8iIFNUQVJUUyAiLnEoJF9QT1NUWyJTVEFSVFMiXSk6IiIpLigkX1BPU1RbIkVORFMiXT8iIEVORFMgIi5xKCRfUE9TVFsiRU5EUyJdKToiIik6IkFUICIucSgkX1BPU1RbIlNUQVJUUyJdKSkuIiBPTiBDT01QTEVUSU9OIi4oJF9QT1NUWyJPTl9DT01QTEVUSU9OIl0/IiI6IiBOT1QiKS4iIFBSRVNFUlZFIjtxdWVyaWVzX3JlZGlyZWN0KHN1YnN0cihNRSwwLC0xKSwoJGliIT0iIj9sYW5nKDE4Myk6bGFuZygxODQpKSxxdWVyaWVzKCgkaWIhPSIiPyJBTFRFUiBFVkVOVCAiLmlkZl9lc2NhcGUoJGliKS4kaGUuKCRpYiE9JF9QT1NUWyJFVkVOVF9OQU1FIl0/IlxuUkVOQU1FIFRPICIuaWRmX2VzY2FwZSgkX1BPU1RbIkVWRU5UX05BTUUiXSk6IiIpOiJDUkVBVEUgRVZFTlQgIi5pZGZfZXNjYXBlKCRfUE9TVFsiRVZFTlRfTkFNRSJdKS4kaGUpLiJcbiIuJE1kWyRfUE9TVFsiU1RBVFVTIl1dLiIgQ09NTUVOVCAiLnEoJF9QT1NUWyJFVkVOVF9DT01NRU5UIl0pLnJ0cmltKCIgRE9cbiRfUE9TVFtFVkVOVF9ERUZJTklUSU9OXSIsIjsiKS4iOyIpKTt9fXBhZ2VfaGVhZGVyKCgkaWIhPSIiP2xhbmcoMTg1KS4iOiAiLmgoJGliKTpsYW5nKDE4NikpLCRuKTskYT1hcnJheSgpO2lmKCRfUE9TVCl7JGE9JF9QT1NUO31lbHNlaWYoJGliIT0iIil7JEg9Z2V0X3Jvd3MoIlNFTEVDVCAqIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLkVWRU5UUyBXSEVSRSBFVkVOVF9TQ0hFTUEgPSAiLnEoREIpLiIgQU5EIEVWRU5UX05BTUUgPSAiLnEoJGliKSk7JGE9cmVzZXQoJEgpO31lY2hvJwo8Zm9ybSBhY3Rpb249IiIgbWV0aG9kPSJwb3N0Ij4KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIj4KPHRyPjx0aD4nLGxhbmcoMTgxKSwnPHRkPjxpbnB1dCBuYW1lPSJFVkVOVF9OQU1FIiB2YWx1ZT0iJyxoKCRhWyJFVkVOVF9OQU1FIl0pLCciIG1heGxlbmd0aD0iNjQiPgo8dHI+PHRoPicsbGFuZygxODcpLCc8dGQ+PGlucHV0IG5hbWU9IlNUQVJUUyIgdmFsdWU9IicsaCgiJGFbRVhFQ1VURV9BVF0kYVtTVEFSVFNdIiksJyI+Cjx0cj48dGg+JyxsYW5nKDE4OCksJzx0ZD48aW5wdXQgbmFtZT0iRU5EUyIgdmFsdWU9IicsaCgkYVsiRU5EUyJdKSwnIj4KPHRyPjx0aD4nLGxhbmcoMTg5KSwnPHRkPjxpbnB1dCBuYW1lPSJJTlRFUlZBTF9WQUxVRSIgdmFsdWU9IicsaCgkYVsiSU5URVJWQUxfVkFMVUUiXSksJyIgc2l6ZT0iNiI+ICcsaHRtbF9zZWxlY3QoIklOVEVSVkFMX0ZJRUxEIiwkaWUsJGFbIklOVEVSVkFMX0ZJRUxEIl0pLCc8dHI+PHRoPicsbGFuZyg3MyksJzx0ZD4nLGh0bWxfc2VsZWN0KCJTVEFUVVMiLCRNZCwkYVsiU1RBVFVTIl0pLCc8dHI+PHRoPicsbGFuZyg5NCksJzx0ZD48aW5wdXQgbmFtZT0iRVZFTlRfQ09NTUVOVCIgdmFsdWU9IicsaCgkYVsiRVZFTlRfQ09NTUVOVCJdKSwnIiBtYXhsZW5ndGg9IjY0Ij4KPHRyPjx0aD4mbmJzcDs8dGQ+JyxjaGVja2JveCgiT05fQ09NUExFVElPTiIsIlBSRVNFUlZFIiwkYVsiT05fQ09NUExFVElPTiJdPT0iUFJFU0VSVkUiLGxhbmcoMTkwKSksJzwvdGFibGU+CjxwPic7dGV4dGFyZWEoIkVWRU5UX0RFRklOSVRJT04iLCRhWyJFVkVOVF9ERUZJTklUSU9OIl0pO2VjaG8nPHA+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSInLGxhbmcoMTQxKSwnIj4KJztpZigkaWIhPSIiKXtlY2hvJzxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImRyb3AiIHZhbHVlPSInLGxhbmcoNzgpLCciJyxjb25maXJtKCksJz4nO31lY2hvJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InRva2VuIiB2YWx1ZT0iJywkTSwnIj4KPC9mb3JtPgonO31lbHNlaWYoaXNzZXQoJF9HRVRbInByb2NlZHVyZSJdKSl7JFZhPSRfR0VUWyJwcm9jZWR1cmUiXTskVGE9KGlzc2V0KCRfR0VUWyJmdW5jdGlvbiJdKT8iRlVOQ1RJT04iOiJQUk9DRURVUkUiKTskaGI9ZmFsc2U7aWYoJF9QT1NUJiYhJG4mJiEkX1BPU1RbImFkZCJdJiYhJF9QT1NUWyJkcm9wX2NvbCJdJiYhJF9QT1NUWyJ1cCJdJiYhJF9QT1NUWyJkb3duIl0peyRyPWFycmF5KCk7JHA9KGFycmF5KSRfUE9TVFsiZmllbGRzIl07a3NvcnQoJHApO2ZvcmVhY2goJHAKYXMkZSl7aWYoJGVbImZpZWxkIl0hPSIiKXskcltdPShpbl9hcnJheSgkZVsiaW5vdXQiXSwkamMpPyIkZVtpbm91dF0gIjoiIikuaWRmX2VzY2FwZSgkZVsiZmllbGQiXSkucHJvY2Vzc190eXBlKCRlLCJDSEFSQUNURVIgU0VUIik7fX0kaGI9ZHJvcF9jcmVhdGUoIkRST1AgJFRhICIuaWRmX2VzY2FwZSgkVmEpLCJDUkVBVEUgJFRhICIuaWRmX2VzY2FwZSgkX1BPU1RbIm5hbWUiXSkuIiAoIi5pbXBsb2RlKCIsICIsJHIpLiIpIi4oaXNzZXQoJF9HRVRbImZ1bmN0aW9uIl0pPyIgUkVUVVJOUyIucHJvY2Vzc190eXBlKCRfUE9TVFsicmV0dXJucyJdLCJDSEFSQUNURVIgU0VUIik6IiIpLnJ0cmltKCJcbiRfUE9TVFtkZWZpbml0aW9uXSIsIjsiKS4iOyIsc3Vic3RyKE1FLDAsLTEpLGxhbmcoMTkxKSxsYW5nKDE5MiksbGFuZygxOTMpLCRWYSk7fXBhZ2VfaGVhZGVyKCgkVmEhPSIiPyhpc3NldCgkX0dFVFsiZnVuY3Rpb24iXSk/bGFuZygxOTQpOmxhbmcoMTk1KSkuIjogIi5oKCRWYSk6KGlzc2V0KCRfR0VUWyJmdW5jdGlvbiJdKT9sYW5nKDE5Nik6bGFuZygxOTcpKSksJG4pOyRaPWdldF92YWxzKCJTSE9XIENIQVJBQ1RFUiBTRVQiKTtzb3J0KCRaKTskYT1hcnJheSgiZmllbGRzIj0+YXJyYXkoKSk7aWYoJF9QT1NUKXskYT0kX1BPU1Q7JGFbImZpZWxkcyJdPShhcnJheSkkYVsiZmllbGRzIl07cHJvY2Vzc19maWVsZHMoJGFbImZpZWxkcyJdKTt9ZWxzZWlmKCRWYSE9IiIpeyRhPXJvdXRpbmUoJFZhLCRUYSk7JGFbIm5hbWUiXT0kVmE7fWVjaG8nCjxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiIGlkPSJmb3JtIj4KPHA+JyxsYW5nKDE4MSksJzogPGlucHV0IG5hbWU9Im5hbWUiIHZhbHVlPSInLGgoJGFbIm5hbWUiXSksJyIgbWF4bGVuZ3RoPSI2NCI+Cjx0YWJsZSBjZWxsc3BhY2luZz0iMCIgY2xhc3M9Im5vd3JhcCI+Cic7ZWRpdF9maWVsZHMoJGFbImZpZWxkcyJdLCRaLCRUYSk7aWYoaXNzZXQoJF9HRVRbImZ1bmN0aW9uIl0pKXtlY2hvIjx0cj48dGQ+Ii5sYW5nKDE5OCk7ZWRpdF90eXBlKCJyZXR1cm5zIiwkYVsicmV0dXJucyJdLCRaKTt9ZWNobyc8L3RhYmxlPgo8cD4nO3RleHRhcmVhKCJkZWZpbml0aW9uIiwkYVsiZGVmaW5pdGlvbiJdKTtlY2hvJzxwPgo8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iJyxsYW5nKDE0MSksJyI+Cic7aWYoJFZhIT0iIil7ZWNobyc8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJkcm9wIiB2YWx1ZT0iJyxsYW5nKDc4KSwnIicsY29uZmlybSgpLCc+Jzt9aWYoJGhiKXtlY2hvJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImRyb3BwZWQiIHZhbHVlPSIxIj4nO31lY2hvJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InRva2VuIiB2YWx1ZT0iJywkTSwnIj4KPC9mb3JtPgonO31lbHNlaWYoaXNzZXQoJF9HRVRbInNlcXVlbmNlIl0pKXskRWI9JF9HRVRbInNlcXVlbmNlIl07aWYoJF9QT1NUJiYhJG4peyR3PXN1YnN0cihNRSwwLC0xKTtpZigkX1BPU1RbImRyb3AiXSl7cXVlcnlfcmVkaXJlY3QoIkRST1AgU0VRVUVOQ0UgIi5pZGZfZXNjYXBlKCRFYiksJHcsbGFuZygxOTkpKTt9ZWxzZWlmKCRFYj09IiIpe3F1ZXJ5X3JlZGlyZWN0KCJDUkVBVEUgU0VRVUVOQ0UgIi5pZGZfZXNjYXBlKCRfUE9TVFsibmFtZSJdKSwkdyxsYW5nKDIwMCkpO31lbHNlaWYoJEViIT0kX1BPU1RbIm5hbWUiXSl7cXVlcnlfcmVkaXJlY3QoIkFMVEVSIFNFUVVFTkNFICIuaWRmX2VzY2FwZSgkRWIpLiIgUkVOQU1FIFRPICIuaWRmX2VzY2FwZSgkX1BPU1RbIm5hbWUiXSksJHcsbGFuZygyMDEpKTt9ZWxzZXtyZWRpcmVjdCgkdyk7fX1wYWdlX2hlYWRlcigkRWIhPSIiP2xhbmcoMjAyKS4iOiAiLmgoJEViKTpsYW5nKDIwMyksJG4pOyRhPWFycmF5KCJuYW1lIj0+JEViKTtpZigkX1BPU1QpeyRhPSRfUE9TVDt9ZWNobycKPGZvcm0gYWN0aW9uPSIiIG1ldGhvZD0icG9zdCI+CjxwPjxpbnB1dCBuYW1lPSJuYW1lIiB2YWx1ZT0iJyxoKCRhWyJuYW1lIl0pLCciPgo8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iJyxsYW5nKDE0MSksJyI+Cic7aWYoJEViIT0iIil7ZWNobyI8aW5wdXQgdHlwZT0nc3VibWl0JyBuYW1lPSdkcm9wJyB2YWx1ZT0nIi5sYW5nKDc4KS4iJyIuY29uZmlybSgpLiI+XG4iO31lY2hvJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InRva2VuIiB2YWx1ZT0iJywkTSwnIj4KPC9mb3JtPgonO31lbHNlaWYoaXNzZXQoJF9HRVRbInR5cGUiXSkpeyRPYz0kX0dFVFsidHlwZSJdO2lmKCRfUE9TVCYmISRuKXskdz1zdWJzdHIoTUUsMCwtMSk7aWYoJF9QT1NUWyJkcm9wIl0pe3F1ZXJ5X3JlZGlyZWN0KCJEUk9QIFRZUEUgIi5pZGZfZXNjYXBlKCRPYyksJHcsbGFuZygyMDQpKTt9ZWxzZXtxdWVyeV9yZWRpcmVjdCgiQ1JFQVRFIFRZUEUgIi5pZGZfZXNjYXBlKCRfUE9TVFsibmFtZSJdKS4iICRfUE9TVFthc10iLCR3LGxhbmcoMjA1KSk7fX1wYWdlX2hlYWRlcigkT2MhPSIiP2xhbmcoMjA2KS4iOiAiLmgoJE9jKTpsYW5nKDIwNyksJG4pOyRhWyJhcyJdPSJBUyAiO2lmKCRfUE9TVCl7JGE9JF9QT1NUO31lY2hvJwo8Zm9ybSBhY3Rpb249IiIgbWV0aG9kPSJwb3N0Ij4KPHA+Cic7aWYoJE9jIT0iIil7ZWNobyI8aW5wdXQgdHlwZT0nc3VibWl0JyBuYW1lPSdkcm9wJyB2YWx1ZT0nIi5sYW5nKDc4KS4iJyIuY29uZmlybSgpLiI+XG4iO31lbHNle2VjaG8iPGlucHV0IG5hbWU9J25hbWUnIHZhbHVlPSciLmgoJGFbJ25hbWUnXSkuIic+XG4iO3RleHRhcmVhKCJhcyIsJGFbImFzIl0pO2VjaG8iPHA+PGlucHV0IHR5cGU9J3N1Ym1pdCcgdmFsdWU9JyIubGFuZygxNDEpLiInPlxuIjt9ZWNobyc8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ0b2tlbiIgdmFsdWU9IicsJE0sJyI+CjwvZm9ybT4KJzt9ZWxzZWlmKGlzc2V0KCRfR0VUWyJ0cmlnZ2VyIl0pKXskbT0kX0dFVFsidHJpZ2dlciJdOyRJYz10cmlnZ2VyX29wdGlvbnMoKTskdGU9YXJyYXkoIklOU0VSVCIsIlVQREFURSIsIkRFTEVURSIpOyRoYj1mYWxzZTtpZigkX1BPU1QmJiEkbiYmaW5fYXJyYXkoJF9QT1NUWyJUaW1pbmciXSwkSWNbIlRpbWluZyJdKSYmaW5fYXJyYXkoJF9QT1NUWyJFdmVudCJdLCR0ZSkmJmluX2FycmF5KCRfUE9TVFsiVHlwZSJdLCRJY1siVHlwZSJdKSl7JHJlPSIgJF9QT1NUW1RpbWluZ10gJF9QT1NUW0V2ZW50XSI7JENiPSIgT04gIi50YWJsZSgkbSk7JGhiPWRyb3BfY3JlYXRlKCJEUk9QIFRSSUdHRVIgIi5pZGZfZXNjYXBlKCRfR0VUWyJuYW1lIl0pLigkdj09InBnc3FsIj8kQ2I6IiIpLCJDUkVBVEUgVFJJR0dFUiAiLmlkZl9lc2NhcGUoJF9QT1NUWyJUcmlnZ2VyIl0pLigkdj09Im1zc3FsIj8kQ2IuJHJlOiRyZS4kQ2IpLnJ0cmltKCIgJF9QT1NUW1R5cGVdXG4kX1BPU1RbU3RhdGVtZW50XSIsIjsiKS4iOyIsTUUuInRhYmxlPSIudXJsZW5jb2RlKCRtKSxsYW5nKDIwOCksbGFuZygyMDkpLGxhbmcoMjEwKSwkX0dFVFsibmFtZSJdKTt9cGFnZV9oZWFkZXIoKCRfR0VUWyJuYW1lIl0hPSIiP2xhbmcoMjExKS4iOiAiLmgoJF9HRVRbIm5hbWUiXSk6bGFuZygyMTIpKSwkbixhcnJheSgidGFibGUiPT4kbSkpOyRhPWFycmF5KCJUcmlnZ2VyIj0+JG0uIl9iaSIpO2lmKCRfUE9TVCl7JGE9JF9QT1NUO31lbHNlaWYoJF9HRVRbIm5hbWUiXSE9IiIpeyRhPXRyaWdnZXIoJF9HRVRbIm5hbWUiXSk7fWVjaG8nCjxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiIGlkPSJmb3JtIj4KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIj4KPHRyPjx0aD4nLGxhbmcoMjEzKSwnPHRkPicsaHRtbF9zZWxlY3QoIlRpbWluZyIsJEljWyJUaW1pbmciXSwkYVsiVGltaW5nIl0sImlmICgvXiIuaChwcmVnX3F1b3RlKCRtLCIvIikpLiJfW2JhXVtpdWRdJC8udGVzdCh0aGlzLmZvcm1bJ1RyaWdnZXInXS52YWx1ZSkpIHRoaXMuZm9ybVsnVHJpZ2dlciddLnZhbHVlID0gJyIuaChqc19lc2NhcGUoJG0pKS4iXycgKyBzZWxlY3RWYWx1ZSh0aGlzKS5jaGFyQXQoMCkudG9Mb3dlckNhc2UoKSArIHNlbGVjdFZhbHVlKHRoaXMuZm9ybVsnRXZlbnQnXSkuY2hhckF0KDApLnRvTG93ZXJDYXNlKCk7IiksJzx0cj48dGg+JyxsYW5nKDIxNCksJzx0ZD4nLGh0bWxfc2VsZWN0KCJFdmVudCIsJHRlLCRhWyJFdmVudCJdLCJ0aGlzLmZvcm1bJ1RpbWluZyddLm9uY2hhbmdlKCk7IiksJzx0cj48dGg+JyxsYW5nKDg5KSwnPHRkPicsaHRtbF9zZWxlY3QoIlR5cGUiLCRJY1siVHlwZSJdLCRhWyJUeXBlIl0pLCc8L3RhYmxlPgo8cD4nLGxhbmcoMTgxKSwnOiA8aW5wdXQgbmFtZT0iVHJpZ2dlciIgdmFsdWU9IicsaCgkYVsiVHJpZ2dlciJdKSwnIiBtYXhsZW5ndGg9IjY0Ij4KPHA+Jzt0ZXh0YXJlYSgiU3RhdGVtZW50IiwkYVsiU3RhdGVtZW50Il0pO2VjaG8nPHA+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSInLGxhbmcoMTQxKSwnIj4KJztpZigkX0dFVFsibmFtZSJdIT0iIil7ZWNobyc8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJkcm9wIiB2YWx1ZT0iJyxsYW5nKDc4KSwnIicsY29uZmlybSgpLCc+Jzt9aWYoJGhiKXtlY2hvJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImRyb3BwZWQiIHZhbHVlPSIxIj4nO31lY2hvJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InRva2VuIiB2YWx1ZT0iJywkTSwnIj4KPC9mb3JtPgonO31lbHNlaWYoaXNzZXQoJF9HRVRbInVzZXIiXSkpeyRGZD0kX0dFVFsidXNlciJdOyRzYT1hcnJheSgiIj0+YXJyYXkoIkFsbCBwcml2aWxlZ2VzIj0+IiIpKTtmb3JlYWNoKGdldF9yb3dzKCJTSE9XIFBSSVZJTEVHRVMiKWFzJGEpe2ZvcmVhY2goZXhwbG9kZSgiLCIsKCRhWyJQcml2aWxlZ2UiXT09IkdyYW50IG9wdGlvbiI/IiI6JGFbIkNvbnRleHQiXSkpYXMkR2MpeyRzYVskR2NdWyRhWyJQcml2aWxlZ2UiXV09JGFbIkNvbW1lbnQiXTt9fSRzYVsiU2VydmVyIEFkbWluIl0rPSRzYVsiRmlsZSBhY2Nlc3Mgb24gc2VydmVyIl07JHNhWyJEYXRhYmFzZXMiXVsiQ3JlYXRlIHJvdXRpbmUiXT0kc2FbIlByb2NlZHVyZXMiXVsiQ3JlYXRlIHJvdXRpbmUiXTt1bnNldCgkc2FbIlByb2NlZHVyZXMiXVsiQ3JlYXRlIHJvdXRpbmUiXSk7JHNhWyJDb2x1bW5zIl09YXJyYXkoKTtmb3JlYWNoKGFycmF5KCJTZWxlY3QiLCJJbnNlcnQiLCJVcGRhdGUiLCJSZWZlcmVuY2VzIilhcyRiKXskc2FbIkNvbHVtbnMiXVskYl09JHNhWyJUYWJsZXMiXVskYl07fXVuc2V0KCRzYVsiU2VydmVyIEFkbWluIl1bIlVzYWdlIl0pO2ZvcmVhY2goJHNhWyJUYWJsZXMiXWFzJGQ9PiRiKXt1bnNldCgkc2FbIkRhdGFiYXNlcyJdWyRkXSk7fSRuYz1hcnJheSgpO2lmKCRfUE9TVCl7Zm9yZWFjaCgkX1BPU1RbIm9iamVjdHMiXWFzJGQ9PiRiKXskbmNbJGJdPShhcnJheSkkbmNbJGJdKyhhcnJheSkkX1BPU1RbImdyYW50cyJdWyRkXTt9fSRuYj1hcnJheSgpOyRYYz0iIjtpZihpc3NldCgkX0dFVFsiaG9zdCJdKSYmKCRpPSRnLT5xdWVyeSgiU0hPVyBHUkFOVFMgRk9SICIucSgkRmQpLiJAIi5xKCRfR0VUWyJob3N0Il0pKSkpe3doaWxlKCRhPSRpLT5mZXRjaF9yb3coKSl7aWYocHJlZ19tYXRjaCgnfkdSQU5UICguKikgT04gKC4qKSBUTyB+JywkYVswXSwkaykmJnByZWdfbWF0Y2hfYWxsKCd+ICooW14oLF0qW14gLChdKSggKlxcKFteKV0rXFwpKT9+Jywka1sxXSwkb2EsUFJFR19TRVRfT1JERVIpKXtmb3JlYWNoKCRvYQphcyRiKXtpZigkYlsxXSE9IlVTQUdFIil7JG5iWyIka1syXSRiWzJdIl1bJGJbMV1dPXRydWU7fWlmKGVyZWcoJyBXSVRIIEdSQU5UIE9QVElPTicsJGFbMF0pKXskbmJbIiRrWzJdJGJbMl0iXVsiR1JBTlQgT1BUSU9OIl09dHJ1ZTt9fX1pZihwcmVnX21hdGNoKCJ+IElERU5USUZJRUQgQlkgUEFTU1dPUkQgJyhbXiddKyl+IiwkYVswXSwkaykpeyRYYz0ka1sxXTt9fX1pZigkX1BPU1QmJiEkbil7JGFjPShpc3NldCgkX0dFVFsiaG9zdCJdKT9xKCRGZCkuIkAiLnEoJF9HRVRbImhvc3QiXSk6IicnIik7JHBiPXEoJF9QT1NUWyJ1c2VyIl0pLiJAIi5xKCRfUE9TVFsiaG9zdCJdKTskQWQ9cSgkX1BPU1RbInBhc3MiXSk7aWYoJF9QT1NUWyJkcm9wIl0pe3F1ZXJ5X3JlZGlyZWN0KCJEUk9QIFVTRVIgJGFjIixNRS4icHJpdmlsZWdlcz0iLGxhbmcoMjE1KSk7fWVsc2V7aWYoJGFjIT0kcGIpeyRuPSFxdWVyaWVzKCgkZy0+c2VydmVyX2luZm88NT8iR1JBTlQgVVNBR0UgT04gKi4qIFRPIjoiQ1JFQVRFIFVTRVIiKS4iICRwYiBJREVOVElGSUVEIEJZIi4oJF9QT1NUWyJoYXNoZWQiXT8iIFBBU1NXT1JEIjoiIikuIiAkQWQiKTt9ZWxzZWlmKCRfUE9TVFsicGFzcyJdIT0kWGN8fCEkX1BPU1RbImhhc2hlZCJdKXtxdWVyaWVzKCJTRVQgUEFTU1dPUkQgRk9SICRwYiA9ICIuKCRfUE9TVFsiaGFzaGVkIl0/JEFkOiJQQVNTV09SRCgkQWQpIikpO31pZighJG4peyRxYz1hcnJheSgpO2ZvcmVhY2goJG5jCmFzJGJiPT4ka2Epe2lmKGlzc2V0KCRfR0VUWyJncmFudCJdKSl7JGthPWFycmF5X2ZpbHRlcigka2EpO30ka2E9YXJyYXlfa2V5cygka2EpO2lmKGlzc2V0KCRfR0VUWyJncmFudCJdKSl7JHFjPWFycmF5X2RpZmYoYXJyYXlfa2V5cyhhcnJheV9maWx0ZXIoJG5jWyRiYl0sJ3N0cmxlbicpKSwka2EpO31lbHNlaWYoJGFjPT0kcGIpeyRTZD1hcnJheV9rZXlzKChhcnJheSkkbmJbJGJiXSk7JHFjPWFycmF5X2RpZmYoJFNkLCRrYSk7JGthPWFycmF5X2RpZmYoJGthLCRTZCk7dW5zZXQoJG5iWyRiYl0pO31pZihwcmVnX21hdGNoKCd+XiguKylcXHMqKFxcKC4qXFwpKT8kflUnLCRiYiwkaykmJighZ3JhbnQoIlJFVk9LRSIsJHFjLCRrWzJdLCIgT04gJGtbMV0gRlJPTSAkcGIiKXx8IWdyYW50KCJHUkFOVCIsJGthLCRrWzJdLCIgT04gJGtbMV0gVE8gJHBiIikpKXskbj10cnVlO2JyZWFrO319fWlmKCEkbiYmaXNzZXQoJF9HRVRbImhvc3QiXSkpe2lmKCRhYyE9JHBiKXtxdWVyaWVzKCJEUk9QIFVTRVIgJGFjIik7fWVsc2VpZighaXNzZXQoJF9HRVRbImdyYW50Il0pKXtmb3JlYWNoKCRuYgphcyRiYj0+JHFjKXtpZihwcmVnX21hdGNoKCd+XiguKykoXFwoLipcXCkpPyR+VScsJGJiLCRrKSl7Z3JhbnQoIlJFVk9LRSIsYXJyYXlfa2V5cygkcWMpLCRrWzJdLCIgT04gJGtbMV0gRlJPTSAkcGIiKTt9fX19cXVlcmllc19yZWRpcmVjdChNRS4icHJpdmlsZWdlcz0iLChpc3NldCgkX0dFVFsiaG9zdCJdKT9sYW5nKDIxNik6bGFuZygyMTcpKSwhJG4pO2lmKCRhYyE9JHBiKXskZy0+cXVlcnkoIkRST1AgVVNFUiAkcGIiKTt9fX1wYWdlX2hlYWRlcigoaXNzZXQoJF9HRVRbImhvc3QiXSk/bGFuZygyMSkuIjogIi5oKCIkRmRAJF9HRVRbaG9zdF0iKTpsYW5nKDEyMCkpLCRuLGFycmF5KCJwcml2aWxlZ2VzIj0+YXJyYXkoJycsbGFuZyg3MCkpKSk7aWYoJF9QT1NUKXskYT0kX1BPU1Q7JG5iPSRuYzt9ZWxzZXskYT0kX0dFVCthcnJheSgiaG9zdCI9PiRnLT5yZXN1bHQoIlNFTEVDVCBTVUJTVFJJTkdfSU5ERVgoQ1VSUkVOVF9VU0VSLCAnQCcsIC0xKSIpKTskYVsicGFzcyJdPSRYYztpZigkWGMhPSIiKXskYVsiaGFzaGVkIl09dHJ1ZTt9JG5iWyIiXT10cnVlO31lY2hvJzxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiPgo8dGFibGUgY2VsbHNwYWNpbmc9IjAiPgo8dHI+PHRoPicsbGFuZygyMSksJzx0ZD48aW5wdXQgbmFtZT0idXNlciIgbWF4bGVuZ3RoPSIxNiIgdmFsdWU9IicsaCgkYVsidXNlciJdKSwnIj4KPHRyPjx0aD4nLGxhbmcoMjApLCc8dGQ+PGlucHV0IG5hbWU9Imhvc3QiIG1heGxlbmd0aD0iNjAiIHZhbHVlPSInLGgoJGFbImhvc3QiXSksJyI+Cjx0cj48dGg+JyxsYW5nKDIyKSwnPHRkPjxpbnB1dCBpZD0icGFzcyIgbmFtZT0icGFzcyIgdmFsdWU9IicsaCgkYVsicGFzcyJdKSwnIj4KJztpZighJGFbImhhc2hlZCJdKXtlY2hvJzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij50eXBlUGFzc3dvcmQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCdwYXNzXCcpKTs8L3NjcmlwdD4nO31lY2hvCmNoZWNrYm94KCJoYXNoZWQiLDEsJGFbImhhc2hlZCJdLGxhbmcoMjE4KSwidHlwZVBhc3N3b3JkKHRoaXMuZm9ybVsncGFzcyddLCB0aGlzLmNoZWNrZWQpOyIpLCc8L3RhYmxlPgoKJztlY2hvIjx0YWJsZSBjZWxsc3BhY2luZz0nMCc+XG4iLCI8dGhlYWQ+PHRyPjx0aCBjb2xzcGFuPScyJz48YSBocmVmPSdodHRwOi8vZGV2Lm15c3FsLmNvbS9kb2MvcmVmbWFuLyIuc3Vic3RyKCRnLT5zZXJ2ZXJfaW5mbywwLDMpLiIvZW4vZ3JhbnQuaHRtbCNwcml2X2xldmVsJyB0YXJnZXQ9J19ibGFuaycgcmVsPSdub3JlZmVycmVyJz4iLmxhbmcoNzApLiI8L2E+IjskbD0wO2ZvcmVhY2goJG5iCmFzJGJiPT4ka2Epe2VjaG8nPHRoPicuKCRiYiE9IiouKiI/IjxpbnB1dCBuYW1lPSdvYmplY3RzWyRsXScgdmFsdWU9JyIuaCgkYmIpLiInIHNpemU9JzEwJz4iOiI8aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSdvYmplY3RzWyRsXScgdmFsdWU9JyouKicgc2l6ZT0nMTAnPiouKiIpOyRsKys7fWVjaG8iPC90aGVhZD5cbiI7Zm9yZWFjaChhcnJheSgiIj0+IiIsIlNlcnZlciBBZG1pbiI9PmxhbmcoMjApLCJEYXRhYmFzZXMiPT5sYW5nKDY1KSwiVGFibGVzIj0+bGFuZygxMDApLCJDb2x1bW5zIj0+bGFuZygxMDEpLCJQcm9jZWR1cmVzIj0+bGFuZygyMTkpLClhcyRHYz0+JHJjKXtmb3JlYWNoKChhcnJheSkkc2FbJEdjXWFzJG1jPT4kX2Epe2VjaG8iPHRyIi5vZGQoKS4iPjx0ZCIuKCRyYz8iPiRyYzx0ZCI6IiBjb2xzcGFuPScyJyIpLicgbGFuZz0iZW4iIHRpdGxlPSInLmgoJF9hKS4nIj4nLmgoJG1jKTskbD0wO2ZvcmVhY2goJG5iCmFzJGJiPT4ka2EpeyRmPSInZ3JhbnRzWyRsXVsiLmgoc3RydG91cHBlcigkbWMpKS4iXSciOyRxPSRrYVtzdHJ0b3VwcGVyKCRtYyldO2lmKCRHYz09IlNlcnZlciBBZG1pbiImJiRiYiE9KGlzc2V0KCRuYlsiKi4qIl0pPyIqLioiOiIiKSl7ZWNobyI8dGQ+Jm5ic3A7Ijt9ZWxzZWlmKGlzc2V0KCRfR0VUWyJncmFudCJdKSl7ZWNobyI8dGQ+PHNlbGVjdCBuYW1lPSRmPjxvcHRpb24+PG9wdGlvbiB2YWx1ZT0nMSciLigkcT8iIHNlbGVjdGVkIjoiIikuIj4iLmxhbmcoMjIwKS4iPG9wdGlvbiB2YWx1ZT0nMCciLigkcT09IjAiPyIgc2VsZWN0ZWQiOiIiKS4iPiIubGFuZygyMjEpLiI8L3NlbGVjdD4iO31lbHNle2VjaG8iPHRkIGFsaWduPSdjZW50ZXInPjxpbnB1dCB0eXBlPSdjaGVja2JveCcgbmFtZT0kZiB2YWx1ZT0nMSciLigkcT8iIGNoZWNrZWQiOiIiKS4oJG1jPT0iQWxsIHByaXZpbGVnZXMiPyIgaWQ9J2dyYW50cy0kbC1hbGwnIjooJG1jPT0iR3JhbnQgb3B0aW9uIj8iIjoiIG9uY2xpY2s9XCJpZiAodGhpcy5jaGVja2VkKSBmb3JtVW5jaGVjaygnZ3JhbnRzLSRsLWFsbCcpO1wiIikpLiI+Ijt9JGwrKzt9fX1lY2hvIjwvdGFibGU+XG4iLCc8cD4KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IicsbGFuZygxNDEpLCciPgonO2lmKGlzc2V0KCRfR0VUWyJob3N0Il0pKXtlY2hvJzxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImRyb3AiIHZhbHVlPSInLGxhbmcoNzgpLCciJyxjb25maXJtKCksJz4nO31lY2hvJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InRva2VuIiB2YWx1ZT0iJywkTSwnIj4KPC9mb3JtPgonO31lbHNlaWYoaXNzZXQoJF9HRVRbInByb2Nlc3NsaXN0Il0pKXtpZigkX1BPU1QmJiEkbil7JElkPTA7Zm9yZWFjaCgoYXJyYXkpJF9QT1NUWyJraWxsIl1hcyRiKXtpZihxdWVyaWVzKCJLSUxMICIuKCskYikpKXskSWQrKzt9fXF1ZXJpZXNfcmVkaXJlY3QoTUUuInByb2Nlc3NsaXN0PSIsbGFuZygyMjIsJElkKSwkSWR8fCEkX1BPU1RbImtpbGwiXSk7fXBhZ2VfaGVhZGVyKGxhbmcoNzEpLCRuKTtlY2hvJwo8Zm9ybSBhY3Rpb249IiIgbWV0aG9kPSJwb3N0Ij4KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBvbmNsaWNrPSJ0YWJsZUNsaWNrKGV2ZW50KTsiIGNsYXNzPSJub3dyYXAiPgonOyRsPS0xO2ZvcmVhY2goZ2V0X3Jvd3MoIlNIT1cgRlVMTCBQUk9DRVNTTElTVCIpYXMkbD0+JGEpe2lmKCEkbCl7ZWNobyI8dGhlYWQ+PHRyIGxhbmc9J2VuJz48dGg+Jm5ic3A7PHRoPiIuaW1wbG9kZSgiPHRoPiIsYXJyYXlfa2V5cygkYSkpLiI8L3RoZWFkPlxuIjt9ZWNobyI8dHIiLm9kZCgpLiI+PHRkPiIuY2hlY2tib3goImtpbGxbXSIsJGFbIklkIl0sMCk7Zm9yZWFjaCgkYQphcyRkPT4kYil7ZWNobyI8dGQ+Ii4oJGQ9PSJJbmZvIiYmJGIhPSIiPyI8Y29kZSBjbGFzcz0nanVzaC0kdic+Ii5zaG9ydGVuX3V0ZjgoJGIsMTAwLCI8L2NvZGU+IikuJyA8YSBocmVmPSInLmgoTUUuKCRhWyJkYiJdIT0iIj8iZGI9Ii51cmxlbmNvZGUoJGFbImRiIl0pLiImIjoiIikuInNxbD0iLnVybGVuY29kZSgkYikpLiciPicubGFuZygzMSkuJzwvYT4nOm5ic3AoJGIpKTt9ZWNobyJcbiI7fWVjaG8nPC90YWJsZT4KPHA+JywoJGwrMSkuIi8iLmxhbmcoMjIzLCRnLT5yZXN1bHQoIlNFTEVDVCBAQG1heF9jb25uZWN0aW9ucyIpKSwnPHA+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSInLGxhbmcoMjI0KSwnIj4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0idG9rZW4iIHZhbHVlPSInLCRNLCciPgo8L2Zvcm0+Cic7fWVsc2VpZihpc3NldCgkX0dFVFsic2VsZWN0Il0pKXskbT0kX0dFVFsic2VsZWN0Il07JEQ9dGFibGVfc3RhdHVzKCRtKTskSj1pbmRleGVzKCRtKTskcD1maWVsZHMoJG0pOyRoYT1jb2x1bW5fZm9yZWlnbl9rZXlzKCRtKTtpZigkRFsiT2lkIl09PSJ0Iil7JEpbXT1hcnJheSgidHlwZSI9PiJQUklNQVJZIiwiY29sdW1ucyI9PmFycmF5KCJvaWQiKSk7fSRUZD1hcnJheSgpOyRCPWFycmF5KCk7JERiPW51bGw7Zm9yZWFjaCgkcAphcyRkPT4kZSl7JGY9JG8tPmZpZWxkTmFtZSgkZSk7aWYoaXNzZXQoJGVbInByaXZpbGVnZXMiXVsic2VsZWN0Il0pJiYkZiE9IiIpeyRCWyRkXT1odG1sX2VudGl0eV9kZWNvZGUoc3RyaXBfdGFncygkZikpO2lmKGVyZWcoJ3RleHR8bG9iJywkZVsidHlwZSJdKSl7JERiPSRvLT5zZWxlY3RMZW5ndGhQcm9jZXNzKCk7fX0kVGQrPSRlWyJwcml2aWxlZ2VzIl07fWxpc3QoJFEsJHBhKT0kby0+c2VsZWN0Q29sdW1uc1Byb2Nlc3MoJEIsJEopOyRzPSRvLT5zZWxlY3RTZWFyY2hQcm9jZXNzKCRwLCRKKTskWGE9JG8tPnNlbGVjdE9yZGVyUHJvY2VzcygkcCwkSik7JE89JG8tPnNlbGVjdExpbWl0UHJvY2VzcygpOyRZYj0oJFE/aW1wbG9kZSgiLCAiLCRRKTooJERbIk9pZCJdPT0idCI/Im9pZCwgIjoiIikuIioiKS4iXG5GUk9NICIudGFibGUoJG0pOyRMZD0oJHBhJiZjb3VudCgkcGEpPGNvdW50KCRRKT8iXG5HUk9VUCBCWSAiLmltcGxvZGUoIiwgIiwkcGEpOiIiKS4oJFhhPyJcbk9SREVSIEJZICIuaW1wbG9kZSgiLCAiLCRYYSk6IiIpO2lmKCRfR0VUWyJ2YWwiXSYmaXNfYWpheCgpKXtoZWFkZXIoIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD11dGYtOCIpO2ZvcmVhY2goJF9HRVRbInZhbCJdYXMkZ2I9PiRhKXtlY2hvJGctPnJlc3VsdCgiU0VMRUNUIi5saW1pdChpZGZfZXNjYXBlKGtleSgkYSkpLiIgRlJPTSAiLnRhYmxlKCRtKSwiIFdIRVJFICIud2hlcmVfY2hlY2soJGdiKS4oJHM/IiBBTkQgIi5pbXBsb2RlKCIgQU5EICIsJHMpOiIiKS4oJFhhPyIgT1JERVIgQlkgIi5pbXBsb2RlKCIsICIsJFhhKToiIiksMSkpO31leGl0O31pZigkX1BPU1QmJiEkbil7JG5lPSIoIi5pbXBsb2RlKCIpIE9SICgiLGFycmF5X21hcCgnd2hlcmVfY2hlY2snLChhcnJheSkkX1BPU1RbImNoZWNrIl0pKS4iKSI7JFFhPSRhZD1udWxsO2ZvcmVhY2goJEoKYXMkeCl7aWYoJHhbInR5cGUiXT09IlBSSU1BUlkiKXskUWE9YXJyYXlfZmxpcCgkeFsiY29sdW1ucyJdKTskYWQ9KCRRPyRRYTphcnJheSgpKTticmVhazt9fWZvcmVhY2goJFEKYXMkZD0+JGIpeyRiPSRfR0VUWyJjb2x1bW5zIl1bJGRdO2lmKCEkYlsiZnVuIl0pe3Vuc2V0KCRhZFskYlsiY29sIl1dKTt9fWlmKCRfUE9TVFsiZXhwb3J0Il0pe2R1bXBfaGVhZGVycygkbSk7JG8tPmR1bXBUYWJsZSgkbSwiIik7aWYoIWlzX2FycmF5KCRfUE9TVFsiY2hlY2siXSl8fCRhZD09PWFycmF5KCkpeyRiYz0kcztpZihpc19hcnJheSgkX1BPU1RbImNoZWNrIl0pKXskYmNbXT0iKCRuZSkiO30kaj0iU0VMRUNUICRZYiIuKCRiYz8iXG5XSEVSRSAiLmltcGxvZGUoIiBBTkQgIiwkYmMpOiIiKS4kTGQ7fWVsc2V7JFpkPWFycmF5KCk7Zm9yZWFjaCgkX1BPU1RbImNoZWNrIl1hcyRiKXskWmRbXT0iKFNFTEVDVCIubGltaXQoJFliLCJcbldIRVJFICIuKCRzP2ltcGxvZGUoIiBBTkQgIiwkcykuIiBBTkQgIjoiIikud2hlcmVfY2hlY2soJGIpLiRMZCwxKS4iKSI7fSRqPWltcGxvZGUoIiBVTklPTiBBTEwgIiwkWmQpO30kby0+ZHVtcERhdGEoJG0sInRhYmxlIiwkaik7ZXhpdDt9aWYoISRvLT5zZWxlY3RFbWFpbFByb2Nlc3MoJHMsJGhhKSl7aWYoJF9QT1NUWyJzYXZlIl18fCRfUE9TVFsiZGVsZXRlIl0peyRpPXRydWU7JHdiPTA7JGo9dGFibGUoJG0pOyRyPWFycmF5KCk7aWYoISRfUE9TVFsiZGVsZXRlIl0pe2ZvcmVhY2goJEIKYXMkZj0+JGIpeyRiPXByb2Nlc3NfaW5wdXQoJHBbJGZdKTtpZigkYiE9PW51bGwpe2lmKCRfUE9TVFsiY2xvbmUiXSl7JHJbaWRmX2VzY2FwZSgkZildPSgkYiE9PWZhbHNlPyRiOmlkZl9lc2NhcGUoJGYpKTt9ZWxzZWlmKCRiIT09ZmFsc2UpeyRyW109aWRmX2VzY2FwZSgkZikuIiA9ICRiIjt9fX0kai49KCRfUE9TVFsiY2xvbmUiXT8iICgiLmltcGxvZGUoIiwgIixhcnJheV9rZXlzKCRyKSkuIilcblNFTEVDVCAiLmltcGxvZGUoIiwgIiwkcikuIlxuRlJPTSAiLnRhYmxlKCRtKToiIFNFVFxuIi5pbXBsb2RlKCIsXG4iLCRyKSk7fWlmKCRfUE9TVFsiZGVsZXRlIl18fCRyKXskaWQ9IlVQREFURSI7aWYoJF9QT1NUWyJkZWxldGUiXSl7JGlkPSJERUxFVEUiOyRqPSJGUk9NICRqIjt9aWYoJF9QT1NUWyJjbG9uZSJdKXskaWQ9IklOU0VSVCI7JGo9IklOVE8gJGoiO31pZigkX1BPU1RbImFsbCJdfHwoJGFkPT09YXJyYXkoKSYmJF9QT1NUWyJjaGVjayJdKXx8Y291bnQoJHBhKTxjb3VudCgkUSkpeyRpPXF1ZXJpZXMoJGlkLiIgJGoiLigkX1BPU1RbImFsbCJdPygkcz8iXG5XSEVSRSAiLmltcGxvZGUoIiBBTkQgIiwkcyk6IiIpOiJcbldIRVJFICRuZSIpKTskd2I9JGctPmFmZmVjdGVkX3Jvd3M7fWVsc2V7Zm9yZWFjaCgoYXJyYXkpJF9QT1NUWyJjaGVjayJdYXMkYil7JGk9cXVlcmllcygkaWQubGltaXQxKCRqLCJcbldIRVJFICIud2hlcmVfY2hlY2soJGIpKSk7aWYoISRpKXticmVhazt9JHdiKz0kZy0+YWZmZWN0ZWRfcm93czt9fX1xdWVyaWVzX3JlZGlyZWN0KHJlbW92ZV9mcm9tX3VyaSgicGFnZSIpLGxhbmcoMjI1LCR3YiksJGkpO31lbHNlaWYoISRfUE9TVFsiaW1wb3J0Il0pe2lmKCEkX1BPU1RbInZhbCJdKXskbj1sYW5nKDIyNik7fWVsc2V7JGk9dHJ1ZTskd2I9MDtmb3JlYWNoKCRfUE9TVFsidmFsIl1hcyRnYj0+JGEpeyRyPWFycmF5KCk7Zm9yZWFjaCgkYQphcyRkPT4kYil7JGQ9YnJhY2tldF9lc2NhcGUoJGQsMSk7JHJbXT1pZGZfZXNjYXBlKCRkKS4iID0gIi4oZXJlZygnY2hhcnx0ZXh0JywkcFskZF1bInR5cGUiXSl8fCRiIT0iIj8kby0+cHJvY2Vzc0lucHV0KCRwWyRkXSwkYik6Ik5VTEwiKTt9JGo9dGFibGUoJG0pLiIgU0VUICIuaW1wbG9kZSgiLCAiLCRyKTskYmM9IiBXSEVSRSAiLndoZXJlX2NoZWNrKCRnYikuKCRzPyIgQU5EICIuaW1wbG9kZSgiIEFORCAiLCRzKToiIik7JGk9cXVlcmllcygiVVBEQVRFIi4oY291bnQoJHBhKTxjb3VudCgkUSk/IiAkaiRiYyI6bGltaXQxKCRqLCRiYykpKTtpZighJGkpe2JyZWFrO30kd2IrPSRnLT5hZmZlY3RlZF9yb3dzO31xdWVyaWVzX3JlZGlyZWN0KHJlbW92ZV9mcm9tX3VyaSgpLGxhbmcoMjI1LCR3YiksJGkpO319ZWxzZWlmKGlzX3N0cmluZygkSWE9Z2V0X2ZpbGUoImNzdl9maWxlIix0cnVlKSkpeyRpPXRydWU7JG1iPWFycmF5X2tleXMoJHApO3ByZWdfbWF0Y2hfYWxsKCd+KD8+IlteIl0qInxbXiJcXHJcXG5dKykrficsJElhLCRvYSk7JHdiPWNvdW50KCRvYVswXSk7YmVnaW4oKTskV2E9KCRfUE9TVFsic2VwYXJhdG9yIl09PSJjc3YiPyIsIjooJF9QT1NUWyJzZXBhcmF0b3IiXT09InRzdiI/Ilx0IjoiOyIpKTtmb3JlYWNoKCRvYVswXWFzJGQ9PiRiKXtwcmVnX21hdGNoX2FsbCgifigoXCJbXlwiXSpcIikrfFteJFdhXSopJFdhfiIsJGIuJFdhLCRHZCk7aWYoISRkJiYhYXJyYXlfZGlmZigkR2RbMV0sJG1iKSl7JG1iPSRHZFsxXTskd2ItLTt9ZWxzZXskcj1hcnJheSgpO2ZvcmVhY2goJEdkWzFdYXMkbD0+JFBjKXskcltpZGZfZXNjYXBlKCRtYlskbF0pXT0oJFBjPT0iIiYmJHBbJG1iWyRsXV1bIm51bGwiXT8iTlVMTCI6cShzdHJfcmVwbGFjZSgnIiInLCciJyxwcmVnX3JlcGxhY2UoJ35eInwiJH4nLCcnLCRQYykpKSk7fSRpPWluc2VydF91cGRhdGUoJG0sJHIsJFFhKTtpZighJGkpe2JyZWFrO319fWlmKCRpKXtxdWVyaWVzKCJDT01NSVQiKTt9cXVlcmllc19yZWRpcmVjdChyZW1vdmVfZnJvbV91cmkoInBhZ2UiKSxsYW5nKDIyNywkd2IpLCRpKTtxdWVyaWVzKCJST0xMQkFDSyIpO31lbHNleyRuPXVwbG9hZF9lcnJvcigkSWEpO319fSRFYT0kby0+dGFibGVOYW1lKCREKTtwYWdlX2hlYWRlcihsYW5nKDMzKS4iOiAkRWEiLCRuKTtzZXNzaW9uX3dyaXRlX2Nsb3NlKCk7JHI9bnVsbDtpZihpc3NldCgkVGRbImluc2VydCJdKSl7JHI9IiI7Zm9yZWFjaCgoYXJyYXkpJF9HRVRbIndoZXJlIl1hcyRiKXtpZihjb3VudCgkaGFbJGJbImNvbCJdXSk9PTEmJigkYlsib3AiXT09Ij0ifHwoISRiWyJvcCJdJiYhZXJlZygnW18lXScsJGJbInZhbCJdKSkpKXskci49IiZzZXQiLnVybGVuY29kZSgiWyIuYnJhY2tldF9lc2NhcGUoJGJbImNvbCJdKS4iXSIpLiI9Ii51cmxlbmNvZGUoJGJbInZhbCJdKTt9fX0kby0+c2VsZWN0TGlua3MoJEQsJHIpO2lmKCEkQil7ZWNobyI8cCBjbGFzcz0nZXJyb3InPiIubGFuZygyMjgpLigkcD8iLiI6IjogIi5lcnJvcigpKS4iXG4iO31lbHNle2VjaG8iPGZvcm0gYWN0aW9uPScnIGlkPSdmb3JtJz5cbiIsIjxkaXYgc3R5bGU9J2Rpc3BsYXk6IG5vbmU7Jz4iO2hpZGRlbl9maWVsZHNfZ2V0KCk7ZWNobyhEQiE9IiI/JzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImRiIiB2YWx1ZT0iJy5oKERCKS4nIj4nLihpc3NldCgkX0dFVFsibnMiXSk/JzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9Im5zIiB2YWx1ZT0iJy5oKCRfR0VUWyJucyJdKS4nIj4nOiIiKToiIik7ZWNobyc8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJzZWxlY3QiIHZhbHVlPSInLmgoJG0pLiciPicsIjwvZGl2PlxuIjskby0+c2VsZWN0Q29sdW1uc1ByaW50KCRRLCRCKTskby0+c2VsZWN0U2VhcmNoUHJpbnQoJHMsJEIsJEopOyRvLT5zZWxlY3RPcmRlclByaW50KCRYYSwkQiwkSik7JG8tPnNlbGVjdExpbWl0UHJpbnQoJE8pOyRvLT5zZWxlY3RMZW5ndGhQcmludCgkRGIpOyRvLT5zZWxlY3RBY3Rpb25QcmludCgkRGIpO2VjaG8iPC9mb3JtPlxuIjskY2E9JF9HRVRbInBhZ2UiXTtpZigkY2E9PSJsYXN0Iil7JFlhPSRnLT5yZXN1bHQoIlNFTEVDVCBDT1VOVCgqKSBGUk9NICIudGFibGUoJG0pLigkcz8iIFdIRVJFICIuaW1wbG9kZSgiIEFORCAiLCRzKToiIikpOyRjYT1mbG9vcihtYXgoMCwkWWEtMSkvJE8pO30kaj0iU0VMRUNUIi5saW1pdCgoKyRPJiYkcGEmJmNvdW50KCRwYSk8Y291bnQoJFEpJiYkdj09InNxbCI/IlNRTF9DQUxDX0ZPVU5EX1JPV1MgIjoiIikuJFliLCgkcz8iXG5XSEVSRSAiLmltcGxvZGUoIiBBTkQgIiwkcyk6IiIpLiRMZCwoJE8hPSIiPyskTzpudWxsKSwoJGNhPyRPKiRjYTowKSwiXG4iKTtlY2hvJG8tPnNlbGVjdFF1ZXJ5KCRqKTskaT0kZy0+cXVlcnkoJGopO2lmKCEkaSl7ZWNobyI8cCBjbGFzcz0nZXJyb3InPiIuZXJyb3IoKS4iXG4iO31lbHNle2lmKCR2PT0ibXNzcWwiKXskaS0+c2VlaygkTyokY2EpO30kSGM9YXJyYXkoKTtlY2hvIjxmb3JtIGFjdGlvbj0nJyBtZXRob2Q9J3Bvc3QnIGVuY3R5cGU9J211bHRpcGFydC9mb3JtLWRhdGEnPlxuIjskSD1hcnJheSgpO3doaWxlKCRhPSRpLT5mZXRjaF9hc3NvYygpKXskSFtdPSRhO31pZigkX0dFVFsicGFnZSJdIT0ibGFzdCIpeyRZYT0oKyRPJiYkcGEmJmNvdW50KCRwYSk8Y291bnQoJFEpPygkdj09InNxbCI/JGctPnJlc3VsdCgiIFNFTEVDVCBGT1VORF9ST1dTKCkiKTokZy0+cmVzdWx0KCJTRUxFQ1QgQ09VTlQoKikgRlJPTSAoJGopIHgiKSk6Y291bnQoJEgpKTt9aWYoISRIKXtlY2hvIjxwIGNsYXNzPSdtZXNzYWdlJz4iLmxhbmcoODIpLiJcbiI7fWVsc2V7JEJkPSRvLT5iYWNrd2FyZEtleXMoJG0sJEVhKTtlY2hvIjx0YWJsZSBjZWxsc3BhY2luZz0nMCcgY2xhc3M9J25vd3JhcCcgb25jbGljaz0ndGFibGVDbGljayhldmVudCk7JyBvbmtleWRvd249J3JldHVybiBlZGl0aW5nS2V5ZG93bihldmVudCk7Jz5cbiIsIjx0aGVhZD48dHI+Ii4oISRwYSYmJFE/IiI6Ijx0ZD48aW5wdXQgdHlwZT0nY2hlY2tib3gnIGlkPSdhbGwtcGFnZScgb25jbGljaz0nZm9ybUNoZWNrKHRoaXMsIC9jaGVjay8pOyc+IDxhIGhyZWY9JyIuaCgkX0dFVFsibW9kaWZ5Il0/cmVtb3ZlX2Zyb21fdXJpKCJtb2RpZnkiKTokX1NFUlZFUlsiUkVRVUVTVF9VUkkiXS4iJm1vZGlmeT0xIikuIic+Ii5sYW5nKDExOSkuIjwvYT4iKTskQ2Q9YXJyYXkoKTskZGE9YXJyYXkoKTtyZXNldCgkUSk7JGtlPTE7Zm9yZWFjaCgkSFswXWFzJGQ9PiRiKXtpZigkRFsiT2lkIl0hPSJ0Inx8JGQhPSJvaWQiKXskYj0kX0dFVFsiY29sdW1ucyJdW2tleSgkUSldOyRlPSRwWyRRPyRiWyJjb2wiXTokZF07JGY9KCRlPyRvLT5maWVsZE5hbWUoJGUsJGtlKToiKiIpO2lmKCRmIT0iIil7JGtlKys7JENkWyRkXT0kZjskQz1pZGZfZXNjYXBlKCRkKTtlY2hvJzx0aD48YSBocmVmPSInLmgocmVtb3ZlX2Zyb21fdXJpKCcob3JkZXJ8ZGVzYylbXj1dKnxwYWdlJykuJyZvcmRlciU1QjAlNUQ9Jy51cmxlbmNvZGUoJGQpLigkWGFbMF09PSRDfHwkWGFbMF09PSRkfHwoISRYYSYmJHBhWzBdPT0kQyk/JyZkZXNjJTVCMCU1RD0xJzonJykpLiciPicuYXBwbHlfc3FsX2Z1bmN0aW9uKCRiWyJmdW4iXSwkZikuIjwvYT4iO30kZGFbJGRdPSRiWyJmdW4iXTtuZXh0KCRRKTt9fSRlYz1hcnJheSgpO2lmKCRfR0VUWyJtb2RpZnkiXSl7Zm9yZWFjaCgkSAphcyRhKXtmb3JlYWNoKCRhCmFzJGQ9PiRiKXskZWNbJGRdPW1heCgkZWNbJGRdLG1pbig0MCxzdHJsZW4odXRmOF9kZWNvZGUoJGIpKSkpO319fWVjaG8oJEJkPyI8dGg+Ii5sYW5nKDIyOSk6IiIpLiI8L3RoZWFkPlxuIjtmb3JlYWNoKCRvLT5yb3dEZXNjcmlwdGlvbnMoJEgsJGhhKWFzJGZhPT4kYSl7JHBkPXVuaXF1ZV9hcnJheSgkSFskZmFdLCRKKTskZ2I9IiI7Zm9yZWFjaCgkcGQKYXMkZD0+JGIpeyRnYi49IiYiLihpc3NldCgkYik/dXJsZW5jb2RlKCJ3aGVyZVsiLmJyYWNrZXRfZXNjYXBlKCRkKS4iXSIpLiI9Ii51cmxlbmNvZGUoJGIpOiJudWxsJTVCJTVEPSIudXJsZW5jb2RlKCRkKSk7fWVjaG8iPHRyIi5vZGQoKS4iPiIuKCEkcGEmJiRRPyIiOiI8dGQ+Ii5jaGVja2JveCgiY2hlY2tbXSIsc3Vic3RyKCRnYiwxKSxpbl9hcnJheShzdWJzdHIoJGdiLDEpLChhcnJheSkkX1BPU1RbImNoZWNrIl0pLCIiLCJ0aGlzLmZvcm1bJ2FsbCddLmNoZWNrZWQgPSBmYWxzZTsgZm9ybVVuY2hlY2soJ2FsbC1wYWdlJyk7IikuKGNvdW50KCRwYSk8Y291bnQoJFEpfHxpbmZvcm1hdGlvbl9zY2hlbWEoREIpPyIiOiIgPGEgaHJlZj0nIi5oKE1FLiJlZGl0PSIudXJsZW5jb2RlKCRtKS4kZ2IpLiInPiIubGFuZygxMTkpLiI8L2E+IikpO2ZvcmVhY2goJGEKYXMkZD0+JGIpe2lmKGlzc2V0KCRDZFskZF0pKXskZT0kcFskZF07aWYoJGIhPSIiJiYoIWlzc2V0KCRIY1skZF0pfHwkSGNbJGRdIT0iIikpeyRIY1skZF09KGlzX21haWwoJGIpPyRDZFskZF06IiIpO30kdz0iIjskYj0kby0+ZWRpdFZhbCgkYiwkZSk7aWYoIWlzc2V0KCRiKSl7JGI9IjxpPk5VTEw8L2k+Ijt9ZWxzZXtpZihlcmVnKCdibG9ifGJ5dGVhfHJhd3xmaWxlJywkZVsidHlwZSJdKSYmJGIhPSIiKXskdz1oKE1FLidkb3dubG9hZD0nLnVybGVuY29kZSgkbSkuJyZmaWVsZD0nLnVybGVuY29kZSgkZCkuJGdiKTt9aWYoJGI9PT0iIil7JGI9IiZuYnNwOyI7fWVsc2VpZigkRGIhPSIiJiZlcmVnKCd0ZXh0fGJsb2InLCRlWyJ0eXBlIl0pJiZpc191dGY4KCRiKSl7JGI9c2hvcnRlbl91dGY4KCRiLG1heCgwLCskRGIpKTt9ZWxzZXskYj1oKCRiKTt9aWYoISR3KXtmb3JlYWNoKChhcnJheSkkaGFbJGRdYXMkQSl7aWYoY291bnQoJGhhWyRkXSk9PTF8fGVuZCgkQVsic291cmNlIl0pPT0kZCl7JHc9IiI7Zm9yZWFjaCgkQVsic291cmNlIl1hcyRsPT4kR2EpeyR3Lj13aGVyZV9saW5rKCRsLCRBWyJ0YXJnZXQiXVskbF0sJEhbJGZhXVskR2FdKTt9JHc9aCgoJEFbImRiIl0hPSIiP3ByZWdfcmVwbGFjZSgnfihbPyZdZGI9KVteJl0rficsJ1xcMScudXJsZW5jb2RlKCRBWyJkYiJdKSxNRSk6TUUpLidzZWxlY3Q9Jy51cmxlbmNvZGUoJEFbInRhYmxlIl0pLiR3KTtpZihjb3VudCgkQVsic291cmNlIl0pPT0xKXticmVhazt9fX19aWYoJGQ9PSJDT1VOVCgqKSIpeyR3PWgoTUUuInNlbGVjdD0iLnVybGVuY29kZSgkbSkpOyRsPTA7Zm9yZWFjaCgoYXJyYXkpJF9HRVRbIndoZXJlIl1hcyR5KXtpZighYXJyYXlfa2V5X2V4aXN0cygkeVsiY29sIl0sJHBkKSl7JHcuPWgod2hlcmVfbGluaygkbCsrLCR5WyJjb2wiXSwkeVsidmFsIl0sJHlbIm9wIl0pKTt9fWZvcmVhY2goJHBkCmFzJE1hPT4keSl7JHcuPWgod2hlcmVfbGluaygkbCsrLCRNYSwkeSkpO319fWlmKCEkdyl7aWYoaXNfbWFpbCgkYikpeyR3PSJtYWlsdG86JGIiO31pZigkbGU9aXNfdXJsKCRhWyRkXSkpeyR3PSgkbGU9PSJodHRwIiYmJEFjPyRhWyRkXToiJGxlOi8vd3d3LmFkbWluZXIub3JnL3JlZGlyZWN0Lz91cmw9Ii51cmxlbmNvZGUoJGFbJGRdKSk7fX0kUz1oKCJ2YWxbJGdiXVsiLmJyYWNrZXRfZXNjYXBlKCRkKS4iXSIpOyRxPSRfUE9TVFsidmFsIl1bJGdiXVticmFja2V0X2VzY2FwZSgkZCldOyRQZD1oKGlzc2V0KCRxKT8kcTokYVskZF0pOyR1Zj1zdHJwb3MoJGIsIjxpPi4uLjwvaT4iKTskWWQ9aXNfdXRmOCgkYikmJiRIWyRmYV1bJGRdPT0kYVskZF0mJiEkZGFbJGRdOyRXZD1lcmVnKCd0ZXh0fGxvYicsJGVbInR5cGUiXSk7ZWNobygoJF9HRVRbIm1vZGlmeSJdJiYkWWQpfHxpc3NldCgkcSk/Ijx0ZD4iLigkV2Q/Ijx0ZXh0YXJlYSBuYW1lPSckUycgY29scz0nMzAnIHJvd3M9JyIuKHN1YnN0cl9jb3VudCgkYVskZF0sIlxuIikrMSkuIic+JFBkPC90ZXh0YXJlYT4iOiI8aW5wdXQgbmFtZT0nJFMnIHZhbHVlPSckUGQnIHNpemU9JyRlY1skZF0nPiIpOiI8dGQgaWQ9JyRTJyBvbmRibGNsaWNrPVwiIi4oJFlkPyJzZWxlY3REYmxDbGljayh0aGlzLCBldmVudCIuKCR1Zj8iLCAyIjooJFdkPyIsIDEiOiIiKSkuIikiOiJhbGVydCgnIi5oKGxhbmcoMjMwKSkuIicpIikuIjtcIj4iLiRvLT5zZWxlY3RWYWwoJGIsJHcsJGUpKTt9fWlmKCRCZCl7ZWNobyI8dGQ+Ijt9JG8tPmJhY2t3YXJkS2V5c1ByaW50KCRCZCwkSFskZmFdKTtlY2hvIjwvdHI+XG4iO31lY2hvIjwvdGFibGU+XG4iO31wYXJzZV9zdHIoJF9DT09LSUVbImFkbWluZXJfZXhwb3J0Il0sJFhiKTtpZigkSHx8JGNhKXskbWQ9dHJ1ZTtpZigkX0dFVFsicGFnZSJdIT0ibGFzdCImJiskTyYmY291bnQoJHBhKT49Y291bnQoJFEpJiYoJFlhPj0kT3x8JGNhKSl7JFlhPSREWyJSb3dzIl07aWYoIWlzc2V0KCRZYSl8fCRzfHwoJERbIkVuZ2luZSJdPT0iSW5ub0RCIiYmJFlhPG1heCgxZTQsMiooJGNhKzEpKiRPKSkpe29iX2ZsdXNoKCk7Zmx1c2goKTskWWE9JGctPnJlc3VsdCgiU0VMRUNUIENPVU5UKCopIEZST00gIi50YWJsZSgkbSkuKCRzPyIgV0hFUkUgIi5pbXBsb2RlKCIgQU5EICIsJHMpOiIiKSk7fWVsc2V7JG1kPWZhbHNlO319ZWNobyI8cCBjbGFzcz0ncGFnZXMnPiI7aWYoKyRPJiYkWWE+JE8peyROZD1mbG9vcigoJFlhLTEpLyRPKTtlY2hvJzxhIGhyZWY9IicuaChyZW1vdmVfZnJvbV91cmkoInBhZ2UiKSkuIlwiIG9uY2xpY2s9XCJwYWdlQ2xpY2sodGhpcy5ocmVmLCArcHJvbXB0KCciLmxhbmcoMjMxKS4iJywgJyIuKCRjYSsxKS4iJyksIGV2ZW50KTsgcmV0dXJuIGZhbHNlO1wiPiIubGFuZygyMzEpLiI8L2E+OiIscGFnaW5hdGlvbigwLCRjYSkuKCRjYT41PyIgLi4uIjoiIik7Zm9yKCRsPW1heCgxLCRjYS00KTskbDxtaW4oJE5kLCRjYSs1KTskbCsrKXtlY2hvCnBhZ2luYXRpb24oJGwsJGNhKTt9ZWNobygkY2ErNTwkTmQ/IiAuLi4iOiIiKS4oJG1kP3BhZ2luYXRpb24oJE5kLCRjYSk6JyA8YSBocmVmPSInLmgocmVtb3ZlX2Zyb21fdXJpKCkuIiZwYWdlPWxhc3QiKS4nIj4nLmxhbmcoMjMyKS4iPC9hPiIpO31lY2hvIiAoIi4oJG1kPyIiOiJ+ICIpLmxhbmcoMTIyLCRZYSkuIikgIi5jaGVja2JveCgiYWxsIiwxLDAsbGFuZygyMzMpKS4iXG4iO2lmKCFpbmZvcm1hdGlvbl9zY2hlbWEoREIpKXtlY2hvJzxmaWVsZHNldD48bGVnZW5kPicsbGFuZygzMSksJzwvbGVnZW5kPjxkaXY+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIHZhbHVlPSInLGxhbmcoMTQxKSwnIiB0aXRsZT0iJyxsYW5nKDIyNiksJyIgY2xhc3M9Impzb25seSI+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImVkaXQiIHZhbHVlPSInLGxhbmcoMzEpLCciPgo8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJjbG9uZSIgdmFsdWU9IicsbGFuZygyMzQpLCciPgo8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJkZWxldGUiIHZhbHVlPSInLGxhbmcoMTQ0KSwnIiBvbmNsaWNrPSJyZXR1cm4gY29uZmlybShcJycsbGFuZygwKTs/PiAoJyArICh0aGlzLmZvcm1bJ2FsbCddLmNoZWNrZWQgPyA8P3BocCBlY2hvJFlhLCcgOiBmb3JtQ2hlY2tlZCh0aGlzLCAvY2hlY2svKSkgKyBcJylcJyk7Ij4KPC9kaXY+PC9maWVsZHNldD4KJzt9cHJpbnRfZmllbGRzZXQoImV4cG9ydCIsbGFuZygxMTMpKTskTmE9JG8tPmR1bXBPdXRwdXQoKTtlY2hvKCROYT9odG1sX3NlbGVjdCgib3V0cHV0IiwkTmEsJFhiWyJvdXRwdXQiXSkuIiAiOiIiKSxodG1sX3NlbGVjdCgiZm9ybWF0Iiwkby0+ZHVtcEZvcm1hdCgpLCRYYlsiZm9ybWF0Il0pLCIgPGlucHV0IHR5cGU9J3N1Ym1pdCcgbmFtZT0nZXhwb3J0JyB2YWx1ZT0nIi5sYW5nKDExMykuIicgb25jbGljaz0nZXZlbnRTdG9wKGV2ZW50KTsnPlxuIiwiPC9kaXY+PC9maWVsZHNldD5cbiI7fXByaW50X2ZpZWxkc2V0KCJpbXBvcnQiLGxhbmcoMjM1KSwhJEgpO2VjaG8iPGlucHV0IHR5cGU9J2ZpbGUnIG5hbWU9J2Nzdl9maWxlJz4gIixodG1sX3NlbGVjdCgic2VwYXJhdG9yIixhcnJheSgiY3N2Ij0+IkNTViwiLCJjc3Y7Ij0+IkNTVjsiLCJ0c3YiPT4iVFNWIiksJFhiWyJmb3JtYXQiXSwxKTtlY2hvIiA8aW5wdXQgdHlwZT0nc3VibWl0JyBuYW1lPSdpbXBvcnQnIHZhbHVlPSciLmxhbmcoMjM1KS4iJz4iLCI8aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSd0b2tlbicgdmFsdWU9JyRNJz5cbiIsIjwvZGl2PjwvZmllbGRzZXQ+XG4iOyRvLT5zZWxlY3RFbWFpbFByaW50KGFycmF5X2ZpbHRlcigkSGMsJ3N0cmxlbicpLCRCKTtlY2hvIjwvZm9ybT5cbiI7fX19ZWxzZWlmKGlzc2V0KCRfR0VUWyJ2YXJpYWJsZXMiXSkpeyRmYz1pc3NldCgkX0dFVFsic3RhdHVzIl0pO3BhZ2VfaGVhZGVyKCRmYz9sYW5nKDczKTpsYW5nKDcyKSk7JFBlPSgkZmM/c2hvd19zdGF0dXMoKTpzaG93X3ZhcmlhYmxlcygpKTtpZighJFBlKXtlY2hvIjxwIGNsYXNzPSdtZXNzYWdlJz4iLmxhbmcoODIpLiJcbiI7fWVsc2V7ZWNobyI8dGFibGUgY2VsbHNwYWNpbmc9JzAnPlxuIjtmb3JlYWNoKCRQZQphcyRkPT4kYil7ZWNobyI8dHI+IiwiPHRoPjxjb2RlIGNsYXNzPSdqdXNoLSIuJHYuKCRmYz8ic3RhdHVzIjoic2V0IikuIic+Ii5oKCRkKS4iPC9jb2RlPiIsIjx0ZD4iLm5ic3AoJGIpO31lY2hvIjwvdGFibGU+XG4iO319ZWxzZWlmKGlzc2V0KCRfR0VUWyJzY3JpcHQiXSkpe2hlYWRlcigiQ29udGVudC1UeXBlOiB0ZXh0L2phdmFzY3JpcHQ7IGNoYXJzZXQ9dXRmLTgiKTtpZigkX0dFVFsic2NyaXB0Il09PSJkYiIpeyRZYz1hcnJheSgiRGF0YV9sZW5ndGgiPT4wLCJJbmRleF9sZW5ndGgiPT4wLCJEYXRhX2ZyZWUiPT4wKTtmb3JlYWNoKHRhYmxlX3N0YXR1cygpYXMkYSl7JFM9anNfZXNjYXBlKCRhWyJOYW1lIl0pO2pzb25fcm93KCJDb21tZW50LSRTIixuYnNwKCRhWyJDb21tZW50Il0pKTtpZighaXNfdmlldygkYSkpe2ZvcmVhY2goYXJyYXkoIkVuZ2luZSIsIkNvbGxhdGlvbiIpYXMkZCl7anNvbl9yb3coIiRkLSRTIixuYnNwKCRhWyRkXSkpO31mb3JlYWNoKCRZYythcnJheSgiQXV0b19pbmNyZW1lbnQiPT4wLCJSb3dzIj0+MClhcyRkPT4kYil7aWYoJGFbJGRdIT0iIil7JGI9bnVtYmVyX2Zvcm1hdCgkYVskZF0sMCwnLicsbGFuZygyMzYpKTtqc29uX3JvdygiJGQtJFMiLCgkZD09IlJvd3MiJiYkYVsiRW5naW5lIl09PSJJbm5vREIiJiYkYj8ifiAkYiI6JGIpKTtpZihpc3NldCgkWWNbJGRdKSl7JFljWyRkXSs9KCRhWyJFbmdpbmUiXSE9Iklubm9EQiJ8fCRkIT0iRGF0YV9mcmVlIj8kYVskZF06MCk7fX1lbHNlaWYoYXJyYXlfa2V5X2V4aXN0cygkZCwkYSkpe2pzb25fcm93KCIkZC0kUyIpO319fX1mb3JlYWNoKCRZYwphcyRkPT4kYil7anNvbl9yb3coInN1bS0kZCIsbnVtYmVyX2Zvcm1hdCgkYiwwLCcuJyxsYW5nKDIzNikpKTt9anNvbl9yb3coIiIpO31lbHNle2ZvcmVhY2goY291bnRfdGFibGVzKGdldF9kYXRhYmFzZXMoKSlhcyR0PT4kYil7anNvbl9yb3coInRhYmxlcy0iLmpzX2VzY2FwZSgkdCksJGIpO31qc29uX3JvdygiIik7fWV4aXQ7fWVsc2V7JEZlPWFycmF5X21lcmdlKChhcnJheSkkX1BPU1RbInRhYmxlcyJdLChhcnJheSkkX1BPU1RbInZpZXdzIl0pO2lmKCRGZSYmISRuJiYhJF9QT1NUWyJzZWFyY2giXSl7JGk9dHJ1ZTskdmE9IiI7aWYoJHY9PSJzcWwiJiZjb3VudCgkX1BPU1RbInRhYmxlcyJdKT4xJiYoJF9QT1NUWyJkcm9wIl18fCRfUE9TVFsidHJ1bmNhdGUiXXx8JF9QT1NUWyJjb3B5Il0pKXtxdWVyaWVzKCJTRVQgZm9yZWlnbl9rZXlfY2hlY2tzID0gMCIpO31pZigkX1BPU1RbInRydW5jYXRlIl0pe2lmKCRfUE9TVFsidGFibGVzIl0peyRpPXRydW5jYXRlX3RhYmxlcygkX1BPU1RbInRhYmxlcyJdKTt9JHZhPWxhbmcoMjM3KTt9ZWxzZWlmKCRfUE9TVFsibW92ZSJdKXskaT1tb3ZlX3RhYmxlcygoYXJyYXkpJF9QT1NUWyJ0YWJsZXMiXSwoYXJyYXkpJF9QT1NUWyJ2aWV3cyJdLCRfUE9TVFsidGFyZ2V0Il0pOyR2YT1sYW5nKDIzOCk7fWVsc2VpZigkX1BPU1RbImNvcHkiXSl7JGk9Y29weV90YWJsZXMoKGFycmF5KSRfUE9TVFsidGFibGVzIl0sKGFycmF5KSRfUE9TVFsidmlld3MiXSwkX1BPU1RbInRhcmdldCJdKTskdmE9bGFuZygyMzkpO31lbHNlaWYoJF9QT1NUWyJkcm9wIl0pe2lmKCRfUE9TVFsidmlld3MiXSl7JGk9ZHJvcF92aWV3cygkX1BPU1RbInZpZXdzIl0pO31pZigkaSYmJF9QT1NUWyJ0YWJsZXMiXSl7JGk9ZHJvcF90YWJsZXMoJF9QT1NUWyJ0YWJsZXMiXSk7fSR2YT1sYW5nKDI0MCk7fWVsc2VpZigkX1BPU1RbInRhYmxlcyJdJiYoJGk9cXVlcmllcygoJF9QT1NUWyJvcHRpbWl6ZSJdPyJPUFRJTUlaRSI6KCRfUE9TVFsiY2hlY2siXT8iQ0hFQ0siOigkX1BPU1RbInJlcGFpciJdPyJSRVBBSVIiOiJBTkFMWVpFIikpKS4iIFRBQkxFICIuaW1wbG9kZSgiLCAiLGFycmF5X21hcCgnaWRmX2VzY2FwZScsJF9QT1NUWyJ0YWJsZXMiXSkpKSkpe3doaWxlKCRhPSRpLT5mZXRjaF9hc3NvYygpKXskdmEuPSI8Yj4iLmgoJGFbIlRhYmxlIl0pLiI8L2I+OiAiLmgoJGFbIk1zZ190ZXh0Il0pLiI8YnI+Ijt9fXF1ZXJpZXNfcmVkaXJlY3Qoc3Vic3RyKE1FLDAsLTEpLCR2YSwkaSk7fXBhZ2VfaGVhZGVyKCgkX0dFVFsibnMiXT09IiI/bGFuZyg2NSkuIjogIi5oKERCKTpsYW5nKDgwKS4iOiAiLmgoJF9HRVRbIm5zIl0pKSwkbix0cnVlKTtpZigkby0+aG9tZXBhZ2UoKSl7aWYoJF9HRVRbIm5zIl0hPT0iIil7ZWNobyc8YSBocmVmPSInLmgoTUUpLidzY2hlbWE9Ij4nLmxhbmcoMTExKS4iPC9hPlxuIiwiPGgzPiIubGFuZygyNDEpLiI8L2gzPlxuIjskamQ9dGFibGVzX2xpc3QoKTtpZighJGpkKXtlY2hvIjxwIGNsYXNzPSdtZXNzYWdlJz4iLmxhbmcoNikuIlxuIjt9ZWxzZXtlY2hvIjxmb3JtIGFjdGlvbj0nJyBtZXRob2Q9J3Bvc3QnPlxuIiwiPHA+Ii5sYW5nKDI0MikuIjogPGlucHV0IG5hbWU9J3F1ZXJ5JyB2YWx1ZT0nIi5oKCRfUE9TVFsicXVlcnkiXSkuIic+IDxpbnB1dCB0eXBlPSdzdWJtaXQnIG5hbWU9J3NlYXJjaCcgdmFsdWU9JyIubGFuZygzNikuIic+XG4iO2lmKCRfUE9TVFsic2VhcmNoIl0mJiRfUE9TVFsicXVlcnkiXSE9IiIpe3NlYXJjaF90YWJsZXMoKTt9ZWNobyI8dGFibGUgY2VsbHNwYWNpbmc9JzAnIGNsYXNzPSdub3dyYXAnIG9uY2xpY2s9J3RhYmxlQ2xpY2soZXZlbnQpOyc+XG4iLCc8dGhlYWQ+PHRyIGNsYXNzPSJ3cmFwIj48dGQ+PGlucHV0IGlkPSJjaGVjay1hbGwiIHR5cGU9ImNoZWNrYm94IiBvbmNsaWNrPSJmb3JtQ2hlY2sodGhpcywgL14odGFibGVzfHZpZXdzKVxbLyk7Ij48dGg+Jy5sYW5nKDEwMCkuJzx0ZD4nLmxhbmcoMjQzKS4nPHRkPicubGFuZyg3NikuJzx0ZD4nLmxhbmcoMjQ0KS4nPHRkPicubGFuZygyNDUpLic8dGQ+Jy5sYW5nKDI0NikuJzx0ZD4nLmxhbmcoOTIpLic8dGQ+Jy5sYW5nKDI0NykuKHN1cHBvcnQoImNvbW1lbnQiKT8nPHRkPicubGFuZyg5NCk6JycpLiI8L3RoZWFkPlxuIjtmb3JlYWNoKCRqZAphcyRmPT4keil7JGNjPShpc3NldCgkeikmJiFlcmVnaSgidGFibGUiLCR6KSk7ZWNobyc8dHInLm9kZCgpLic+PHRkPicuY2hlY2tib3goKCRjYz8idmlld3NbXSI6InRhYmxlc1tdIiksJGYsaW5fYXJyYXkoJGYsJEZlLHRydWUpLCIiLCJmb3JtVW5jaGVjaygnY2hlY2stYWxsJyk7IiksJzx0aD48YSBocmVmPSInLmgoTUUpLid0YWJsZT0nLnVybGVuY29kZSgkZikuJyI+Jy5oKCRmKS4nPC9hPic7aWYoJGNjKXtlY2hvJzx0ZCBjb2xzcGFuPSI2Ij48YSBocmVmPSInLmgoTUUpLiJ2aWV3PSIudXJsZW5jb2RlKCRmKS4nIj4nLmxhbmcoOTkpLic8L2E+JywnPHRkIGFsaWduPSJyaWdodCI+PGEgaHJlZj0iJy5oKE1FKS4ic2VsZWN0PSIudXJsZW5jb2RlKCRmKS4nIj4/PC9hPic7fWVsc2V7Zm9yZWFjaChhcnJheSgiRW5naW5lIj0+IiIsIkNvbGxhdGlvbiI9PiIiLCJEYXRhX2xlbmd0aCI9PiJjcmVhdGUiLCJJbmRleF9sZW5ndGgiPT4iaW5kZXhlcyIsIkRhdGFfZnJlZSI9PiJlZGl0IiwiQXV0b19pbmNyZW1lbnQiPT4iYXV0b19pbmNyZW1lbnQ9MSZjcmVhdGUiLCJSb3dzIj0+InNlbGVjdCIpYXMkZD0+JHcpe2VjaG8oJHc/Ijx0ZCBhbGlnbj0ncmlnaHQnPjxhIGhyZWY9JyIuaChNRS4iJHc9IikudXJsZW5jb2RlKCRmKS4iJyBpZD0nJGQtIi5oKCRmKS4iJz4/PC9hPiI6Ijx0ZCBpZD0nJGQtIi5oKCRmKS4iJz4mbmJzcDsiKTt9fWVjaG8oc3VwcG9ydCgiY29tbWVudCIpPyI8dGQgaWQ9J0NvbW1lbnQtIi5oKCRmKS4iJz4mbmJzcDsiOiIiKTt9ZWNobyI8dHI+PHRkPiZuYnNwOzx0aD4iLmxhbmcoMjIzLGNvdW50KCRqZCkpLCI8dGQ+Ii5uYnNwKCR2PT0ic3FsIj8kZy0+cmVzdWx0KCJTRUxFQ1QgQEBzdG9yYWdlX2VuZ2luZSIpOiIiKSwiPHRkPiIubmJzcChkYl9jb2xsYXRpb24oREIsY29sbGF0aW9ucygpKSk7Zm9yZWFjaChhcnJheSgiRGF0YV9sZW5ndGgiLCJJbmRleF9sZW5ndGgiLCJEYXRhX2ZyZWUiKWFzJGQpe2VjaG8iPHRkIGFsaWduPSdyaWdodCcgaWQ9J3N1bS0kZCc+Jm5ic3A7Ijt9ZWNobyI8L3RhYmxlPlxuIjtpZighaW5mb3JtYXRpb25fc2NoZW1hKERCKSl7ZWNobyI8cD4iLigkdj09InNxbCI/IjxpbnB1dCB0eXBlPSdzdWJtaXQnIHZhbHVlPSciLmxhbmcoMjQ4KS4iJz4gPGlucHV0IHR5cGU9J3N1Ym1pdCcgbmFtZT0nb3B0aW1pemUnIHZhbHVlPSciLmxhbmcoMjQ5KS4iJz4gPGlucHV0IHR5cGU9J3N1Ym1pdCcgbmFtZT0nY2hlY2snIHZhbHVlPSciLmxhbmcoMjUwKS4iJz4gPGlucHV0IHR5cGU9J3N1Ym1pdCcgbmFtZT0ncmVwYWlyJyB2YWx1ZT0nIi5sYW5nKDI1MSkuIic+ICI6IiIpLiI8aW5wdXQgdHlwZT0nc3VibWl0JyBuYW1lPSd0cnVuY2F0ZScgdmFsdWU9JyIubGFuZygyNTIpLiInIi5jb25maXJtKCJmb3JtQ2hlY2tlZCh0aGlzLCAvdGFibGVzLykiKS4iPiA8aW5wdXQgdHlwZT0nc3VibWl0JyBuYW1lPSdkcm9wJyB2YWx1ZT0nIi5sYW5nKDc4KS4iJyIuY29uZmlybSgiZm9ybUNoZWNrZWQodGhpcywgL3RhYmxlc3x2aWV3cy8pIiwxKS4iPlxuIjskXz0oc3VwcG9ydCgic2NoZW1lIik/c2NoZW1hcygpOmdldF9kYXRhYmFzZXMoKSk7aWYoY291bnQoJF8pIT0xJiYkdiE9InNxbGl0ZSIpeyR0PShpc3NldCgkX1BPU1RbInRhcmdldCJdKT8kX1BPU1RbInRhcmdldCJdOihzdXBwb3J0KCJzY2hlbWUiKT8kX0dFVFsibnMiXTpEQikpO2VjaG8iPHA+Ii5sYW5nKDI1MykuIjogIiwoJF8/aHRtbF9zZWxlY3QoInRhcmdldCIsJF8sJHQpOic8aW5wdXQgbmFtZT0idGFyZ2V0IiB2YWx1ZT0iJy5oKCR0KS4nIj4nKSwiIDxpbnB1dCB0eXBlPSdzdWJtaXQnIG5hbWU9J21vdmUnIHZhbHVlPSciLmxhbmcoMjU0KS4iJyBvbmNsaWNrPSdldmVudFN0b3AoZXZlbnQpOyc+Iiwoc3VwcG9ydCgiY29weSIpPyIgPGlucHV0IHR5cGU9J3N1Ym1pdCcgbmFtZT0nY29weScgdmFsdWU9JyIubGFuZygyNTUpLiInIG9uY2xpY2s9J2V2ZW50U3RvcChldmVudCk7Jz4iOiIiKSwiXG4iO31lY2hvIjxpbnB1dCB0eXBlPSdoaWRkZW4nIG5hbWU9J3Rva2VuJyB2YWx1ZT0nJE0nPlxuIjt9ZWNobyI8L2Zvcm0+XG4iO31lY2hvJzxwPjxhIGhyZWY9IicuaChNRSkuJ2NyZWF0ZT0iPicubGFuZygxNDgpLiI8L2E+XG4iO2lmKHN1cHBvcnQoInZpZXciKSl7ZWNobyc8YSBocmVmPSInLmgoTUUpLid2aWV3PSI+Jy5sYW5nKDE4MCkuIjwvYT5cbiI7fWlmKHN1cHBvcnQoInJvdXRpbmUiKSl7ZWNobyI8aDM+Ii5sYW5nKDExNikuIjwvaDM+XG4iOyRVZT1yb3V0aW5lcygpO2lmKCRVZSl7ZWNobyI8dGFibGUgY2VsbHNwYWNpbmc9JzAnPlxuIiwnPHRoZWFkPjx0cj48dGg+Jy5sYW5nKDE4MSkuJzx0ZD4nLmxhbmcoODkpLic8dGQ+Jy5sYW5nKDE5OCkuIjx0ZD4mbmJzcDs8L3RoZWFkPlxuIjtvZGQoJycpO2ZvcmVhY2goJFVlCmFzJGEpe2VjaG8nPHRyJy5vZGQoKS4nPicsJzx0aD48YSBocmVmPSInLmgoTUUpLigkYVsiUk9VVElORV9UWVBFIl09PSJGVU5DVElPTiI/J2NhbGxmPSc6J2NhbGw9JykudXJsZW5jb2RlKCRhWyJST1VUSU5FX05BTUUiXSkuJyI+Jy5oKCRhWyJST1VUSU5FX05BTUUiXSkuJzwvYT4nLCc8dGQ+Jy5oKCRhWyJST1VUSU5FX1RZUEUiXSksJzx0ZD4nLmgoJGFbIkRURF9JREVOVElGSUVSIl0pLCc8dGQ+PGEgaHJlZj0iJy5oKE1FKS4oJGFbIlJPVVRJTkVfVFlQRSJdPT0iRlVOQ1RJT04iPydmdW5jdGlvbj0nOidwcm9jZWR1cmU9JykudXJsZW5jb2RlKCRhWyJST1VUSU5FX05BTUUiXSkuJyI+Jy5sYW5nKDEwNykuIjwvYT4iO31lY2hvIjwvdGFibGU+XG4iO31lY2hvJzxwPjxhIGhyZWY9IicuaChNRSkuJ3Byb2NlZHVyZT0iPicubGFuZygxOTcpLic8L2E+IDxhIGhyZWY9IicuaChNRSkuJ2Z1bmN0aW9uPSI+Jy5sYW5nKDE5NikuIjwvYT5cbiI7fWlmKHN1cHBvcnQoInNlcXVlbmNlIikpe2VjaG8iPGgzPiIubGFuZygyNTYpLiI8L2gzPlxuIjskZmY9Z2V0X3ZhbHMoIlNFTEVDVCBzZXF1ZW5jZV9uYW1lIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLnNlcXVlbmNlcyBXSEVSRSBzZXF1ZW5jZV9zY2hlbWEgPSBjdXJyZW50X3NjaGVtYSgpIik7aWYoJGZmKXtlY2hvIjx0YWJsZSBjZWxsc3BhY2luZz0nMCc+XG4iLCI8dGhlYWQ+PHRyPjx0aD4iLmxhbmcoMTgxKS4iPC90aGVhZD5cbiI7b2RkKCcnKTtmb3JlYWNoKCRmZgphcyRiKXtlY2hvIjx0ciIub2RkKCkuIj48dGg+PGEgaHJlZj0nIi5oKE1FKS4ic2VxdWVuY2U9Ii51cmxlbmNvZGUoJGIpLiInPiIuaCgkYikuIjwvYT5cbiI7fWVjaG8iPC90YWJsZT5cbiI7fWVjaG8iPHA+PGEgaHJlZj0nIi5oKE1FKS4ic2VxdWVuY2U9Jz4iLmxhbmcoMjAzKS4iPC9hPlxuIjt9aWYoc3VwcG9ydCgidHlwZSIpKXtlY2hvIjxoMz4iLmxhbmcoMTEpLiI8L2gzPlxuIjskUj10eXBlcygpO2lmKCRSKXtlY2hvIjx0YWJsZSBjZWxsc3BhY2luZz0nMCc+XG4iLCI8dGhlYWQ+PHRyPjx0aD4iLmxhbmcoMTgxKS4iPC90aGVhZD5cbiI7b2RkKCcnKTtmb3JlYWNoKCRSCmFzJGIpe2VjaG8iPHRyIi5vZGQoKS4iPjx0aD48YSBocmVmPSciLmgoTUUpLiJ0eXBlPSIudXJsZW5jb2RlKCRiKS4iJz4iLmgoJGIpLiI8L2E+XG4iO31lY2hvIjwvdGFibGU+XG4iO31lY2hvIjxwPjxhIGhyZWY9JyIuaChNRSkuInR5cGU9Jz4iLmxhbmcoMjA3KS4iPC9hPlxuIjt9aWYoc3VwcG9ydCgiZXZlbnQiKSl7ZWNobyI8aDM+Ii5sYW5nKDExNykuIjwvaDM+XG4iOyRIPWdldF9yb3dzKCJTSE9XIEVWRU5UUyIpO2lmKCRIKXtlY2hvIjx0YWJsZSBjZWxsc3BhY2luZz0nMCc+XG4iLCI8dGhlYWQ+PHRyPjx0aD4iLmxhbmcoMTgxKS4iPHRkPiIubGFuZygyNTcpLiI8dGQ+Ii5sYW5nKDE4NykuIjx0ZD4iLmxhbmcoMTg4KS4iPC90aGVhZD5cbiI7Zm9yZWFjaCgkSAphcyRhKXtlY2hvIjx0cj4iLCc8dGg+PGEgaHJlZj0iJy5oKE1FKS4nZXZlbnQ9Jy51cmxlbmNvZGUoJGFbIk5hbWUiXSkuJyI+Jy5oKCRhWyJOYW1lIl0pLiI8L2E+IiwiPHRkPiIuKCRhWyJFeGVjdXRlIGF0Il0/bGFuZygyNTgpLiI8dGQ+Ii4kYVsiRXhlY3V0ZSBhdCJdOmxhbmcoMTg5KS4iICIuJGFbIkludGVydmFsIHZhbHVlIl0uIiAiLiRhWyJJbnRlcnZhbCBmaWVsZCJdLiI8dGQ+JGFbU3RhcnRzXSIpLCI8dGQ+JGFbRW5kc10iO31lY2hvIjwvdGFibGU+XG4iO31lY2hvJzxwPjxhIGhyZWY9IicuaChNRSkuJ2V2ZW50PSI+Jy5sYW5nKDE4NikuIjwvYT5cbiI7fWlmKCRqZCl7ZWNobyI8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+YWpheFNldEh0bWwoJyIuanNfZXNjYXBlKE1FKS4ic2NyaXB0PWRiJyk7PC9zY3JpcHQ+XG4iO319fX1wYWdlX2Zvb3RlcigpOw==]]></data>
	</file>
	<file>
	  <filename>/adminer/editor-3.2.2.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKLyoqIEFkbWluZXIgRWRpdG9yIC0gQ29tcGFjdCBkYXRhYmFzZSBlZGl0b3IKKiBAbGluayBodHRwOi8vd3d3LmFkbWluZXIub3JnLwoqIEBhdXRob3IgSmFrdWIgVnJhbmEsIGh0dHA6Ly93d3cudnJhbmEuY3ovCiogQGNvcHlyaWdodCAyMDA5IEpha3ViIFZyYW5hCiogQGxpY2Vuc2UgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMAoqIEBsaWNlbnNlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWwgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UsIHZlcnNpb24gMiAob25lIG9yIG90aGVyKQoqL2Vycm9yX3JlcG9ydGluZyg2MTM1KTskVWM9KCFlcmVnKCdeKHVuc2FmZV9yYXcpPyQnLGluaV9nZXQoImZpbHRlci5kZWZhdWx0IikpfHxpbmlfZ2V0KCJmaWx0ZXIuZGVmYXVsdF9mbGFncyIpKTtpZigkVWMpe2ZvcmVhY2goYXJyYXkoJ19HRVQnLCdfUE9TVCcsJ19DT09LSUUnLCdfU0VSVkVSJylhcyRhKXskZ2Q9ZmlsdGVyX2lucHV0X2FycmF5KGNvbnN0YW50KCJJTlBVVCRhIiksRklMVEVSX1VOU0FGRV9SQVcpO2lmKCRnZCl7JCRhPSRnZDt9fX1pZihpc3NldCgkX0dFVFsiZmlsZSJdKSl7aGVhZGVyKCJFeHBpcmVzOiAiLmdtZGF0ZSgiRCwgZCBNIFkgSDppOnMiLHRpbWUoKSszNjUqMjQqNjAqNjApLiIgR01UIik7aWYoJF9HRVRbImZpbGUiXT09ImZhdmljb24uaWNvIil7aGVhZGVyKCJDb250ZW50LVR5cGU6IGltYWdlL3gtaWNvbiIpO2VjaG8KYmFzZTY0X2RlY29kZSgiQUFBQkFBRUFFQkFRQUFFQUJBQW9BUUFBRmdBQUFDZ0FBQUFRQUFBQUlBQUFBQUVBQkFBQUFBQUF3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQS8vLy9BQUFBL3dCaFRnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRVJFUkFBQUFBQUVUTXpFUUFBQUFBVEVSRXhBQUFBQUJNUkVURUFBQUFBRXhFUk1RQUFBQUFURVJFeEFBQUFBQk1SRVRFQUFBQUFFek16TVJFUkVRQVRFUkV4RWhFaEFCRXpNeEVoRVJFQUFSRVJFaEVSSVJBQUFBQVJJUkVTRUFBQUFBRVNFaUVRQUFBQUFCRVJFUUFBQUFBQUFBQUFELy85VUF3UC9WQUlCL0FBQ0FmL0FBZ0gra0FJQi9nQUNBZndBQWdIOEFBSUFCQUFDQUFmOEFnQUgvQU1BQS93RCtBUDhBL3dBSUFmK0IxUUQvLzlVQSIpO31lbHNlaWYoJF9HRVRbImZpbGUiXT09ImRlZmF1bHQuY3NzIil7aGVhZGVyKCJDb250ZW50LVR5cGU6IHRleHQvY3NzOyBjaGFyc2V0PXV0Zi04Iik7ZWNobydib2R5e2NvbG9yOiMwMDA7YmFja2dyb3VuZDojZmZmO2ZvbnQ6OTAlLzEuMjUgVmVyZGFuYSxBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjttYXJnaW46MDt9YXtjb2xvcjpibHVlO31hOnZpc2l0ZWR7Y29sb3I6bmF2eTt9YTpob3Zlcntjb2xvcjpyZWQ7fWgxe2ZvbnQtc2l6ZToxNTAlO21hcmdpbjowO3BhZGRpbmc6LjhlbSAxZW07Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzk5OTtmb250LXdlaWdodDpub3JtYWw7Y29sb3I6Izc3NztiYWNrZ3JvdW5kOiNlZWU7fWgye2ZvbnQtc2l6ZToxNTAlO21hcmdpbjowIDAgMjBweCAtMThweDtwYWRkaW5nOi44ZW0gMWVtO2JvcmRlci1ib3R0b206MXB4IHNvbGlkICMwMDA7Y29sb3I6IzAwMDtmb250LXdlaWdodDpub3JtYWw7YmFja2dyb3VuZDojZGRmO31oM3tmb250LXdlaWdodDpub3JtYWw7Zm9udC1zaXplOjEzMCU7bWFyZ2luOjFlbSAwIDA7fWZvcm17bWFyZ2luOjA7fXRhYmxle21hcmdpbjoxZW0gMjBweCAwIDA7Ym9yZGVyOjA7Ym9yZGVyLXRvcDoxcHggc29saWQgIzk5OTtib3JkZXItbGVmdDoxcHggc29saWQgIzk5OTtmb250LXNpemU6OTAlO310ZCx0aHtib3JkZXI6MDtib3JkZXItcmlnaHQ6MXB4IHNvbGlkICM5OTk7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgIzk5OTtwYWRkaW5nOi4yZW0gLjNlbTt9dGh7YmFja2dyb3VuZDojZWVlO3RleHQtYWxpZ246bGVmdDt9dGhlYWQgdGh7dGV4dC1hbGlnbjpjZW50ZXI7fXRoZWFkIHRkLHRoZWFkIHRoe2JhY2tncm91bmQ6I2RkZjt9ZmllbGRzZXR7ZGlzcGxheTppbmxpbmU7dmVydGljYWwtYWxpZ246dG9wO3BhZGRpbmc6LjVlbSAuOGVtO21hcmdpbjouOGVtIC41ZW0gMCAwO2JvcmRlcjoxcHggc29saWQgIzk5OTt9cHttYXJnaW46LjhlbSAyMHB4IDAgMDt9aW1ne3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtib3JkZXI6MDt9dGQgaW1ne21heC13aWR0aDoyMDBweDttYXgtaGVpZ2h0OjIwMHB4O31jb2Rle2JhY2tncm91bmQ6I2VlZTt9dHI6aG92ZXIgdGQsdHI6aG92ZXIgdGh7YmFja2dyb3VuZDojZGRmO31wcmV7bWFyZ2luOjFlbSAwIDA7fS52ZXJzaW9ue2NvbG9yOiM3Nzc7Zm9udC1zaXplOjY3JTt9LmpzIC5oaWRkZW4sLm5vanMgLmpzb25seXtkaXNwbGF5Om5vbmU7fS5ub3dyYXAgdGQsLm5vd3JhcCB0aCx0ZC5ub3dyYXB7d2hpdGUtc3BhY2U6cHJlO30ud3JhcCB0ZHt3aGl0ZS1zcGFjZTpub3JtYWw7fS5lcnJvcntjb2xvcjpyZWQ7YmFja2dyb3VuZDojZmVlO30uZXJyb3IgYntiYWNrZ3JvdW5kOiNmZmY7Zm9udC13ZWlnaHQ6bm9ybWFsO30ubWVzc2FnZXtjb2xvcjpncmVlbjtiYWNrZ3JvdW5kOiNlZmU7fS5lcnJvciwubWVzc2FnZXtwYWRkaW5nOi41ZW0gLjhlbTttYXJnaW46MWVtIDIwcHggMCAwO30uY2hhcntjb2xvcjojMDA3RjAwO30uZGF0ZXtjb2xvcjojN0YwMDdGO30uZW51bXtjb2xvcjojMDA3RjdGO30uYmluYXJ5e2NvbG9yOnJlZDt9Lm9kZCB0ZHtiYWNrZ3JvdW5kOiNGNUY1RjU7fS50aW1le2NvbG9yOnNpbHZlcjtmb250LXNpemU6NzAlO30uZnVuY3Rpb257dGV4dC1hbGlnbjpyaWdodDt9Lm51bWJlcnt0ZXh0LWFsaWduOnJpZ2h0O30uZGF0ZXRpbWV7dGV4dC1hbGlnbjpyaWdodDt9LnR5cGV7d2lkdGg6MTVleDt3aWR0aDphdXRvXFw5O30ub3B0aW9ucyBzZWxlY3R7d2lkdGg6MjBleDt3aWR0aDphdXRvXFw5O30uYWN0aXZle2ZvbnQtd2VpZ2h0OmJvbGQ7fS5zcWxhcmVhe3dpZHRoOjk4JTt9I21lbnV7cG9zaXRpb246YWJzb2x1dGU7bWFyZ2luOjEwcHggMCAwO3BhZGRpbmc6MCAwIDMwcHggMDt0b3A6MmVtO2xlZnQ6MDt3aWR0aDoxOWVtO292ZXJmbG93OmF1dG87b3ZlcmZsb3cteTpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO30jbWVudSBwe3BhZGRpbmc6LjhlbSAxZW07bWFyZ2luOjA7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2NjYzt9I2NvbnRlbnR7bWFyZ2luOjJlbSAwIDAgMjFlbTtwYWRkaW5nOjEwcHggMjBweCAyMHB4IDA7fSNsYW5ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtsaW5lLWhlaWdodDoxLjhlbTtwYWRkaW5nOi4zZW0gMWVtO30jYnJlYWRjcnVtYnt3aGl0ZS1zcGFjZTpub3dyYXA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDoyMWVtO2JhY2tncm91bmQ6I2VlZTtoZWlnaHQ6MmVtO2xpbmUtaGVpZ2h0OjEuOGVtO3BhZGRpbmc6MCAxZW07bWFyZ2luOjAgMCAwIC0xOHB4O30jbG9hZGVye3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MThlbTt6LWluZGV4OjE7fSNoMXtjb2xvcjojNzc3O3RleHQtZGVjb3JhdGlvbjpub25lO2ZvbnQtc3R5bGU6aXRhbGljO30jdmVyc2lvbntmb250LXNpemU6NjclO2NvbG9yOnJlZDt9I3NjaGVtYXttYXJnaW4tbGVmdDo2MHB4O3Bvc2l0aW9uOnJlbGF0aXZlO30jc2NoZW1hIC50YWJsZXtib3JkZXI6MXB4IHNvbGlkIHNpbHZlcjtwYWRkaW5nOjAgMnB4O2N1cnNvcjptb3ZlO3Bvc2l0aW9uOmFic29sdXRlO30jc2NoZW1hIC5yZWZlcmVuY2Vze3Bvc2l0aW9uOmFic29sdXRlO30ucnRsIGgye21hcmdpbjowIC0xOHB4IDIwcHggMDt9LnJ0bCBwLC5ydGwgdGFibGUsLnJ0bCAuZXJyb3IsLnJ0bCAubWVzc2FnZXttYXJnaW46MWVtIDAgMCAyMHB4O30ucnRsICNjb250ZW50e21hcmdpbjoyZW0gMjFlbSAwIDA7cGFkZGluZzoxMHB4IDAgMjBweCAyMHB4O30ucnRsICNicmVhZGNydW1ie2xlZnQ6YXV0bztyaWdodDoyMWVtO21hcmdpbjowIC0xOHB4IDAgMDt9LnJ0bCAjbGFuZywucnRsICNtZW51e2xlZnQ6YXV0bztyaWdodDowO31AbWVkaWEgcHJpbnR7I2xhbmcsI21lbnV7ZGlzcGxheTpub25lO30jY29udGVudHttYXJnaW4tbGVmdDoxZW07fSNicmVhZGNydW1ie2xlZnQ6MWVtO30ubm93cmFwIHRkLC5ub3dyYXAgdGgsdGQubm93cmFwe3doaXRlLXNwYWNlOm5vcm1hbDt9fSc7fWVsc2VpZigkX0dFVFsiZmlsZSJdPT0iZnVuY3Rpb25zLmpzIil7aGVhZGVyKCJDb250ZW50LVR5cGU6IHRleHQvamF2YXNjcmlwdDsgY2hhcnNldD11dGYtOCIpOz8+CmZ1bmN0aW9uIHRvZ2dsZShpZCl7dmFyIGVsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTtlbC5jbGFzc05hbWU9KGVsLmNsYXNzTmFtZT09J2hpZGRlbic/Jyc6J2hpZGRlbicpO3JldHVybiB0cnVlO30KZnVuY3Rpb24gY29va2llKGFzc2lnbixkYXlzKXt2YXIgZGF0ZT1uZXcgRGF0ZSgpO2RhdGUuc2V0RGF0ZShkYXRlLmdldERhdGUoKStkYXlzKTtkb2N1bWVudC5jb29raWU9YXNzaWduKyc7IGV4cGlyZXM9JytkYXRlO30KZnVuY3Rpb24gdmVyaWZ5VmVyc2lvbigpe2Nvb2tpZSgnYWRtaW5lcl92ZXJzaW9uPTAnLDEpO3ZhciBzY3JpcHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7c2NyaXB0LnNyYz1sb2NhdGlvbi5wcm90b2NvbCsnLy93d3cuYWRtaW5lci5vcmcvdmVyc2lvbi5waHAnO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoc2NyaXB0KTt9CmZ1bmN0aW9uIHNlbGVjdFZhbHVlKHNlbGVjdCl7dmFyIHNlbGVjdGVkPXNlbGVjdC5vcHRpb25zW3NlbGVjdC5zZWxlY3RlZEluZGV4XTtyZXR1cm4oKHNlbGVjdGVkLmF0dHJpYnV0ZXMudmFsdWV8fHt9KS5zcGVjaWZpZWQ/c2VsZWN0ZWQudmFsdWU6c2VsZWN0ZWQudGV4dCk7fQpmdW5jdGlvbiBmb3JtQ2hlY2soZWwsbmFtZSl7dmFyIGVsZW1zPWVsLmZvcm0uZWxlbWVudHM7Zm9yKHZhciBpPTA7aTxlbGVtcy5sZW5ndGg7aSsrKXtpZihuYW1lLnRlc3QoZWxlbXNbaV0ubmFtZSkpe2VsZW1zW2ldLmNoZWNrZWQ9ZWwuY2hlY2tlZDt9fX0KZnVuY3Rpb24gZm9ybVVuY2hlY2soaWQpe2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKS5jaGVja2VkPWZhbHNlO30KZnVuY3Rpb24gZm9ybUNoZWNrZWQoZWwsbmFtZSl7dmFyIGNoZWNrZWQ9MDt2YXIgZWxlbXM9ZWwuZm9ybS5lbGVtZW50cztmb3IodmFyIGk9MDtpPGVsZW1zLmxlbmd0aDtpKyspe2lmKG5hbWUudGVzdChlbGVtc1tpXS5uYW1lKSYmZWxlbXNbaV0uY2hlY2tlZCl7Y2hlY2tlZCsrO319CnJldHVybiBjaGVja2VkO30KZnVuY3Rpb24gdGFibGVDbGljayhldmVudCl7dmFyIGVsPWV2ZW50LnRhcmdldHx8ZXZlbnQuc3JjRWxlbWVudDt3aGlsZSghL150ciQvaS50ZXN0KGVsLnRhZ05hbWUpKXtpZigvXih0YWJsZXxhfGlucHV0fHRleHRhcmVhKSQvaS50ZXN0KGVsLnRhZ05hbWUpKXtyZXR1cm47fQplbD1lbC5wYXJlbnROb2RlO30KZWw9ZWwuZmlyc3RDaGlsZC5maXJzdENoaWxkO2VsLmNsaWNrJiZlbC5jbGljaygpO2VsLm9uY2xpY2smJmVsLm9uY2xpY2soKTt9CmZ1bmN0aW9uIHNldEh0bWwoaWQsaHRtbCl7dmFyIGVsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTtpZihlbCl7aWYoaHRtbD09dW5kZWZpbmVkKXtlbC5wYXJlbnROb2RlLmlubmVySFRNTD0nJm5ic3A7Jzt9ZWxzZXtlbC5pbm5lckhUTUw9aHRtbC5yZXBsYWNlKC88bm9zY3JpcHQ+Lio8XC9ub3NjcmlwdD4vaSwnJyk7fX19CmZ1bmN0aW9uIG5vZGVQb3NpdGlvbihlbCl7dmFyIHBvcz0wO3doaWxlKGVsPWVsLnByZXZpb3VzU2libGluZyl7cG9zKys7fQpyZXR1cm4gcG9zO30KZnVuY3Rpb24gcGFnZUNsaWNrKGhyZWYscGFnZSxldmVudCl7aWYoIWlzTmFOKHBhZ2UpJiZwYWdlKXtocmVmKz0ocGFnZSE9MT8nJnBhZ2U9JysocGFnZS0xKTonJyk7aWYoIWFqYXhTZW5kKGhyZWYpKXtsb2NhdGlvbi5ocmVmPWhyZWY7fX19CmZ1bmN0aW9uIHNlbGVjdEFkZFJvdyhmaWVsZCl7ZmllbGQub25jaGFuZ2U9ZnVuY3Rpb24oKXt9O3ZhciByb3c9ZmllbGQucGFyZW50Tm9kZS5jbG9uZU5vZGUodHJ1ZSk7dmFyIHNlbGVjdHM9cm93LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzZWxlY3QnKTtmb3IodmFyIGk9MDtpPHNlbGVjdHMubGVuZ3RoO2krKyl7c2VsZWN0c1tpXS5uYW1lPXNlbGVjdHNbaV0ubmFtZS5yZXBsYWNlKC9bYS16XVxbXGQrLywnJCYxJyk7c2VsZWN0c1tpXS5zZWxlY3RlZEluZGV4PTA7fQp2YXIgaW5wdXRzPXJvdy5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaW5wdXQnKTtpZihpbnB1dHMubGVuZ3RoKXtpbnB1dHNbMF0ubmFtZT1pbnB1dHNbMF0ubmFtZS5yZXBsYWNlKC9bYS16XVxbXGQrLywnJCYxJyk7aW5wdXRzWzBdLnZhbHVlPScnO2lucHV0c1swXS5jbGFzc05hbWU9Jyc7fQpmaWVsZC5wYXJlbnROb2RlLnBhcmVudE5vZGUuYXBwZW5kQ2hpbGQocm93KTt9CmZ1bmN0aW9uIHRleHRhcmVhS2V5ZG93bih0YXJnZXQsZXZlbnQpe2lmKCFldmVudC5zaGlmdEtleSYmIWV2ZW50LmFsdEtleSYmIWV2ZW50LmN0cmxLZXkmJiFldmVudC5tZXRhS2V5KXtpZihldmVudC5rZXlDb2RlPT05KXtpZih0YXJnZXQuc2V0U2VsZWN0aW9uUmFuZ2Upe3ZhciBzdGFydD10YXJnZXQuc2VsZWN0aW9uU3RhcnQ7dmFyIHNjcm9sbGVkPXRhcmdldC5zY3JvbGxUb3A7dGFyZ2V0LnZhbHVlPXRhcmdldC52YWx1ZS5zdWJzdHIoMCxzdGFydCkrJ1x0Jyt0YXJnZXQudmFsdWUuc3Vic3RyKHRhcmdldC5zZWxlY3Rpb25FbmQpO3RhcmdldC5zZXRTZWxlY3Rpb25SYW5nZShzdGFydCsxLHN0YXJ0KzEpO3RhcmdldC5zY3JvbGxUb3A9c2Nyb2xsZWQ7cmV0dXJuIGZhbHNlO31lbHNlIGlmKHRhcmdldC5jcmVhdGVUZXh0UmFuZ2Upe2RvY3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpLnRleHQ9J1x0JztyZXR1cm4gZmFsc2U7fX0KaWYoZXZlbnQua2V5Q29kZT09Mjcpe3ZhciBlbHM9dGFyZ2V0LmZvcm0uZWxlbWVudHM7Zm9yKHZhciBpPTE7aTxlbHMubGVuZ3RoO2krKyl7aWYoZWxzW2ktMV09PXRhcmdldCl7ZWxzW2ldLmZvY3VzKCk7YnJlYWs7fX0KcmV0dXJuIGZhbHNlO319CnJldHVybiB0cnVlO30KZnVuY3Rpb24gYm9keUtleWRvd24oZXZlbnQpe3ZhciB0YXJnZXQ9ZXZlbnQudGFyZ2V0fHxldmVudC5zcmNFbGVtZW50O2lmKGV2ZW50LmN0cmxLZXkmJihldmVudC5rZXlDb2RlPT0xM3x8ZXZlbnQua2V5Q29kZT09MTApJiYhZXZlbnQuYWx0S2V5JiYhZXZlbnQubWV0YUtleSYmL3NlbGVjdHx0ZXh0YXJlYS9pLnRlc3QodGFyZ2V0LnRhZ05hbWUpKXt0YXJnZXQuYmx1cigpO2lmKCghdGFyZ2V0LmZvcm0ub25zdWJtaXR8fHRhcmdldC5mb3JtLm9uc3VibWl0KCkhPT1mYWxzZSkmJiFhamF4Rm9ybSh0YXJnZXQuZm9ybSkpe3RhcmdldC5mb3JtLnN1Ym1pdCgpO30KcmV0dXJuIGZhbHNlO319CmZ1bmN0aW9uIGVkaXRpbmdLZXlkb3duKGV2ZW50KXtpZigoZXZlbnQua2V5Q29kZT09NDB8fGV2ZW50LmtleUNvZGU9PTM4KSYmZXZlbnQuY3RybEtleSYmIWV2ZW50LmFsdEtleSYmIWV2ZW50Lm1ldGFLZXkpe3ZhciB0YXJnZXQ9ZXZlbnQudGFyZ2V0fHxldmVudC5zcmNFbGVtZW50O3ZhciBzaWJsaW5nPShldmVudC5rZXlDb2RlPT00MD8nbmV4dFNpYmxpbmcnOidwcmV2aW91c1NpYmxpbmcnKTt2YXIgZWw9dGFyZ2V0LnBhcmVudE5vZGUucGFyZW50Tm9kZVtzaWJsaW5nXTtpZihlbCYmKC9edHIkL2kudGVzdChlbC50YWdOYW1lKXx8KGVsPWVsW3NpYmxpbmddKSkmJi9edHIkL2kudGVzdChlbC50YWdOYW1lKSYmKGVsPWVsLmNoaWxkTm9kZXNbbm9kZVBvc2l0aW9uKHRhcmdldC5wYXJlbnROb2RlKV0pJiYoZWw9ZWwuY2hpbGROb2Rlc1tub2RlUG9zaXRpb24odGFyZ2V0KV0pKXtlbC5mb2N1cygpO30KcmV0dXJuIGZhbHNlO30KcmV0dXJuIHRydWU7fQpmdW5jdGlvbiBmdW5jdGlvbkNoYW5nZShzZWxlY3Qpe3ZhciBpbnB1dD1zZWxlY3QuZm9ybVtzZWxlY3QubmFtZS5yZXBsYWNlKC9eZnVuY3Rpb24vLCdmaWVsZHMnKV07aWYoc2VsZWN0VmFsdWUoc2VsZWN0KSl7aWYoaW5wdXQub3JpZ01heExlbmd0aD09PXVuZGVmaW5lZCl7aW5wdXQub3JpZ01heExlbmd0aD1pbnB1dC5tYXhMZW5ndGg7fQppbnB1dC5yZW1vdmVBdHRyaWJ1dGUoJ21heGxlbmd0aCcpO31lbHNlIGlmKGlucHV0Lm9yaWdNYXhMZW5ndGg+PTApe2lucHV0Lm1heExlbmd0aD1pbnB1dC5vcmlnTWF4TGVuZ3RoO319CmZ1bmN0aW9uIGFqYXgodXJsLGNhbGxiYWNrLGRhdGEpe3ZhciB4bWxodHRwPSh3aW5kb3cuWE1MSHR0cFJlcXVlc3Q/bmV3IFhNTEh0dHBSZXF1ZXN0KCk6KHdpbmRvdy5BY3RpdmVYT2JqZWN0P25ldyBBY3RpdmVYT2JqZWN0KCdNaWNyb3NvZnQuWE1MSFRUUCcpOmZhbHNlKSk7aWYoeG1saHR0cCl7eG1saHR0cC5vcGVuKChkYXRhPydQT1NUJzonR0VUJyksdXJsKTtpZihkYXRhKXt4bWxodHRwLnNldFJlcXVlc3RIZWFkZXIoJ0NvbnRlbnQtVHlwZScsJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcpO30KeG1saHR0cC5zZXRSZXF1ZXN0SGVhZGVyKCdYLVJlcXVlc3RlZC1XaXRoJywnWE1MSHR0cFJlcXVlc3QnKTt4bWxodHRwLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpe2lmKHhtbGh0dHAucmVhZHlTdGF0ZT09NCl7Y2FsbGJhY2soeG1saHR0cCk7fX07eG1saHR0cC5zZW5kKGRhdGEpO30KcmV0dXJuIHhtbGh0dHA7fQpmdW5jdGlvbiBhamF4U2V0SHRtbCh1cmwpe3JldHVybiBhamF4KHVybCxmdW5jdGlvbih4bWxodHRwKXtpZih4bWxodHRwLnN0YXR1cyl7dmFyIGRhdGE9ZXZhbCgnKCcreG1saHR0cC5yZXNwb25zZVRleHQrJyknKTtmb3IodmFyIGtleSBpbiBkYXRhKXtzZXRIdG1sKGtleSxkYXRhW2tleV0pO319fSk7fQpmdW5jdGlvbiByZXBsYWNlRmF2aWNvbihocmVmKXt2YXIgZmF2aWNvbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZmF2aWNvbicpO2Zhdmljb24uaHJlZj1ocmVmO2Zhdmljb24ucGFyZW50Tm9kZS5hcHBlbmRDaGlsZChmYXZpY29uKTt9CnZhciBhamF4U3RhdGU9MDtmdW5jdGlvbiBhamF4U2VuZCh1cmwsZGF0YSxwb3BTdGF0ZSl7aWYoIWhpc3RvcnkucHVzaFN0YXRlKXtyZXR1cm4gZmFsc2U7fQp2YXIgY3VycmVudFN0YXRlPSsrYWpheFN0YXRlO29uYmx1cj1mdW5jdGlvbigpe3JlcGxhY2VGYXZpY29uKGxvY2F0aW9uLnBhdGhuYW1lKyc/ZmlsZT1sb2FkZXIuZ2lmJmFtcDt2ZXJzaW9uPTMuMi4yJyk7fTtzZXRIdG1sKCdsb2FkZXInLCc8aW1nIHNyYz0iJytsb2NhdGlvbi5wYXRobmFtZSsnP2ZpbGU9bG9hZGVyLmdpZiZhbXA7dmVyc2lvbj0zLjIuMiIgYWx0PSIiPicpO3JldHVybiBhamF4KHVybCxmdW5jdGlvbih4bWxodHRwKXtpZihjdXJyZW50U3RhdGU9PWFqYXhTdGF0ZSl7dmFyIHRpdGxlPXhtbGh0dHAuZ2V0UmVzcG9uc2VIZWFkZXIoJ1gtQUpBWC1UaXRsZScpO2lmKHRpdGxlKXtkb2N1bWVudC50aXRsZT1kZWNvZGVVUklDb21wb25lbnQodGl0bGUpO30KdmFyIHJlZGlyZWN0PXhtbGh0dHAuZ2V0UmVzcG9uc2VIZWFkZXIoJ1gtQUpBWC1SZWRpcmVjdCcpO2lmKHJlZGlyZWN0KXtyZXR1cm4gYWpheFNlbmQocmVkaXJlY3QsJycscG9wU3RhdGUpO30Kb25ibHVyPWZ1bmN0aW9uKCl7fTtyZXBsYWNlRmF2aWNvbihsb2NhdGlvbi5wYXRobmFtZSsnP2ZpbGU9ZmF2aWNvbi5pY28mYW1wO3ZlcnNpb249My4yLjInKTtpZigheG1saHR0cC5zdGF0dXMpe3NldEh0bWwoJ2xvYWRlcicsJycpO31lbHNle2lmKCFwb3BTdGF0ZSl7aWYoZGF0YXx8dXJsIT1sb2NhdGlvbi5ocmVmKXtoaXN0b3J5LnB1c2hTdGF0ZShkYXRhLCcnLHVybCk7fQpzY3JvbGxUbygwLDApO30Kc2V0SHRtbCgnY29udGVudCcseG1saHR0cC5yZXNwb25zZVRleHQpO3ZhciBjb250ZW50PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjb250ZW50Jyk7dmFyIHNjcmlwdHM9Y29udGVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0Jyk7dmFyIGxlbmd0aD1zY3JpcHRzLmxlbmd0aDtmb3IodmFyIGk9MDtpPGxlbmd0aDtpKyspe3ZhciBzY3JpcHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7c2NyaXB0LnRleHQ9c2NyaXB0c1tpXS50ZXh0O2NvbnRlbnQuYXBwZW5kQ2hpbGQoc2NyaXB0KTt9CnZhciBhcz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbWVudScpLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdhJyk7dmFyIGhyZWY9bG9jYXRpb24uaHJlZi5yZXBsYWNlKC8oJihzcWw9fGR1bXA9fChzZWxlY3R8dGFibGUpPVteJl0qKSkuKi8sJyQxJyk7Zm9yKHZhciBpPTA7aTxhcy5sZW5ndGg7aSsrKXtpZihocmVmPT1hc1tpXS5ocmVmKXthc1tpXS5jbGFzc05hbWU9J2FjdGl2ZSc7fWVsc2UgaWYoYXNbaV0uY2xhc3NOYW1lPT0nYWN0aXZlJyl7YXNbaV0uY2xhc3NOYW1lPScnO319CnZhciBkdW1wPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkdW1wJyk7aWYoZHVtcCl7dmFyIG1hdGNoPS8mKHNlbGVjdHx0YWJsZSk9KFteJl0rKS8uZXhlYyhocmVmKTtkdW1wLmhyZWY9ZHVtcC5ocmVmLnJlcGxhY2UoL1tePV0rJC8sJycpKyhtYXRjaD9tYXRjaFsyXTonJyk7fQppZih3aW5kb3cuanVzaCl7anVzaC5oaWdobGlnaHRfdGFnKCdjb2RlJywwKTt9fX19LGRhdGEpO30Kb25wb3BzdGF0ZT1mdW5jdGlvbihldmVudCl7aWYoYWpheFN0YXRlfHxldmVudC5zdGF0ZSl7YWpheFNlbmQobG9jYXRpb24uaHJlZiwoZXZlbnQuc3RhdGUmJmNvbmZpcm0oYXJlWW91U3VyZSk/ZXZlbnQuc3RhdGU6JycpLDEpO31lbHNle2FqYXhTdGF0ZSsrO319CmZ1bmN0aW9uIGFqYXhGb3JtKGZvcm0sZGF0YSl7aWYoLyYoZGF0YWJhc2V8c2NoZW1lfGNyZWF0ZXx2aWV3fHNxbHx1c2VyfGR1bXB8Y2FsbCk9Ly50ZXN0KGxvY2F0aW9uLmhyZWYpJiYhL1wuLy50ZXN0KGRhdGEpKXtyZXR1cm4gZmFsc2U7fQp2YXIgcGFyYW1zPVtdO2Zvcih2YXIgaT0wO2k8Zm9ybS5lbGVtZW50cy5sZW5ndGg7aSsrKXt2YXIgZWw9Zm9ybS5lbGVtZW50c1tpXTtpZigvZmlsZS9pLnRlc3QoZWwudHlwZSkmJmVsLnZhbHVlKXtyZXR1cm4gZmFsc2U7fWVsc2UgaWYoZWwubmFtZSYmKCEvY2hlY2tib3h8cmFkaW98c3VibWl0fGZpbGUvaS50ZXN0KGVsLnR5cGUpfHxlbC5jaGVja2VkKSl7cGFyYW1zLnB1c2goZW5jb2RlVVJJQ29tcG9uZW50KGVsLm5hbWUpKyc9JytlbmNvZGVVUklDb21wb25lbnQoL3NlbGVjdC9pLnRlc3QoZWwudGFnTmFtZSk/c2VsZWN0VmFsdWUoZWwpOmVsLnZhbHVlKSk7fX0KaWYoZGF0YSl7cGFyYW1zLnB1c2goZGF0YSk7fQppZihmb3JtLm1ldGhvZD09J3Bvc3QnKXtyZXR1cm4gYWpheFNlbmQoKC9cPy8udGVzdChmb3JtLmFjdGlvbik/Zm9ybS5hY3Rpb246bG9jYXRpb24uaHJlZikscGFyYW1zLmpvaW4oJyYnKSk7fQpyZXR1cm4gYWpheFNlbmQoKGZvcm0uYWN0aW9ufHxsb2NhdGlvbi5ocmVmKS5yZXBsYWNlKC9cPy4qLywnJykrJz8nK3BhcmFtcy5qb2luKCcmJykpO30KZnVuY3Rpb24gc2VsZWN0RGJsQ2xpY2sodGQsZXZlbnQsdGV4dCl7dGQub25kYmxjbGljaz1mdW5jdGlvbigpe307dmFyIHBvcz1ldmVudC5yYW5nZU9mZnNldDt2YXIgdmFsdWU9KHRkLmZpcnN0Q2hpbGQuYWx0P3RkLmZpcnN0Q2hpbGQuYWx0Oih0ZC50ZXh0Q29udGVudD90ZC50ZXh0Q29udGVudDp0ZC5pbm5lclRleHQpKTt2YXIgaW5wdXQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0ZXh0Pyd0ZXh0YXJlYSc6J2lucHV0Jyk7aW5wdXQuc3R5bGUud2lkdGg9TWF0aC5tYXgodGQuY2xpZW50V2lkdGgtMTQsMjApKydweCc7aWYodGV4dCl7dmFyIHJvd3M9MTt2YWx1ZS5yZXBsYWNlKC9cbi9nLGZ1bmN0aW9uKCl7cm93cysrO30pO2lucHV0LnJvd3M9cm93czt9CmlmKHZhbHVlPT0nXHUwMEEwJ3x8dGQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2knKS5sZW5ndGgpe3ZhbHVlPScnO30KaWYoZG9jdW1lbnQuc2VsZWN0aW9uKXt2YXIgcmFuZ2U9ZG9jdW1lbnQuc2VsZWN0aW9uLmNyZWF0ZVJhbmdlKCk7cmFuZ2UubW92ZVRvUG9pbnQoZXZlbnQuY2xpZW50WCxldmVudC5jbGllbnRZKTt2YXIgcmFuZ2UyPXJhbmdlLmR1cGxpY2F0ZSgpO3JhbmdlMi5tb3ZlVG9FbGVtZW50VGV4dCh0ZCk7cmFuZ2UyLnNldEVuZFBvaW50KCdFbmRUb0VuZCcscmFuZ2UpO3Bvcz1yYW5nZTIudGV4dC5sZW5ndGg7fQp0ZC5pbm5lckhUTUw9Jyc7dGQuYXBwZW5kQ2hpbGQoaW5wdXQpO2lucHV0LmZvY3VzKCk7aWYodGV4dD09Mil7cmV0dXJuIGFqYXgobG9jYXRpb24uaHJlZisnJicrZW5jb2RlVVJJQ29tcG9uZW50KHRkLmlkKSsnPScsZnVuY3Rpb24oeG1saHR0cCl7aWYoeG1saHR0cC5zdGF0dXMpe2lucHV0LnZhbHVlPXhtbGh0dHAucmVzcG9uc2VUZXh0O2lucHV0Lm5hbWU9dGQuaWQ7fX0pO30KaW5wdXQudmFsdWU9dmFsdWU7aW5wdXQubmFtZT10ZC5pZDtpbnB1dC5zZWxlY3Rpb25TdGFydD1wb3M7aW5wdXQuc2VsZWN0aW9uRW5kPXBvcztpZihkb2N1bWVudC5zZWxlY3Rpb24pe3ZhciByYW5nZT1kb2N1bWVudC5zZWxlY3Rpb24uY3JlYXRlUmFuZ2UoKTtyYW5nZS5tb3ZlRW5kKCdjaGFyYWN0ZXInLC1pbnB1dC52YWx1ZS5sZW5ndGgrcG9zKTtyYW5nZS5zZWxlY3QoKTt9fQpmdW5jdGlvbiBib2R5Q2xpY2soZXZlbnQsZGIsbnMpe2lmKGV2ZW50LmJ1dHRvbnx8ZXZlbnQuY3RybEtleXx8ZXZlbnQuc2hpZnRLZXl8fGV2ZW50LmFsdEtleXx8ZXZlbnQubWV0YUtleSl7cmV0dXJuO30KaWYoZXZlbnQuZ2V0UHJldmVudERlZmF1bHQ/ZXZlbnQuZ2V0UHJldmVudERlZmF1bHQoKTpldmVudC5yZXR1cm5WYWx1ZT09PWZhbHNlKXtyZXR1cm4gZmFsc2U7fQp2YXIgZWw9ZXZlbnQudGFyZ2V0fHxldmVudC5zcmNFbGVtZW50O2lmKC9eYSQvaS50ZXN0KGVsLnBhcmVudE5vZGUudGFnTmFtZSkpe2VsPWVsLnBhcmVudE5vZGU7fQppZigvXmEkL2kudGVzdChlbC50YWdOYW1lKSYmIS9eOnwjfCZkb3dubG9hZD0vaS50ZXN0KGVsLmdldEF0dHJpYnV0ZSgnaHJlZicpKSYmL1smP111c2VybmFtZT0vLnRlc3QoZWwuaHJlZikpe3ZhciBtYXRjaD0vJmRiPShbXiZdKikvLmV4ZWMoZWwuaHJlZik7dmFyIG1hdGNoMj0vJm5zPShbXiZdKikvLmV4ZWMoZWwuaHJlZik7cmV0dXJuIShkYj09KG1hdGNoP21hdGNoWzFdOicnKSYmbnM9PShtYXRjaDI/bWF0Y2gyWzFdOicnKSYmYWpheFNlbmQoZWwuaHJlZikpO30KaWYoL15pbnB1dCQvaS50ZXN0KGVsLnRhZ05hbWUpJiYvaW1hZ2V8c3VibWl0Ly50ZXN0KGVsLnR5cGUpKXtyZXR1cm4hYWpheEZvcm0oZWwuZm9ybSwoZWwubmFtZT9lbmNvZGVVUklDb21wb25lbnQoZWwubmFtZSkrKGVsLnR5cGU9PSdpbWFnZSc/Jy54JzonJykrJz0xJzonJykpO30KcmV0dXJuIHRydWU7fQpmdW5jdGlvbiBldmVudFN0b3AoZXZlbnQpe2lmKGV2ZW50LnN0b3BQcm9wYWdhdGlvbil7ZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7fWVsc2V7ZXZlbnQuY2FuY2VsQnViYmxlPXRydWU7fX0KZnVuY3Rpb24gYm9keUxvYWQodmVyc2lvbil7aWYoaGlzdG9yeS5zdGF0ZSE9PXVuZGVmaW5lZCl7b25wb3BzdGF0ZShoaXN0b3J5KTt9fTw/cGhwCn1lbHNle2hlYWRlcigiQ29udGVudC1UeXBlOiBpbWFnZS9naWYiKTtzd2l0Y2goJF9HRVRbImZpbGUiXSl7Y2FzZSJwbHVzLmdpZiI6ZWNobwpiYXNlNjRfZGVjb2RlKCJSMGxHT0RkaEVnQVNBS0VBQU83dTdnQUFBSm1abVFBQUFDd0FBQUFBRWdBU0FBQUNJWVNQcWN2dEQwMEk4Y3dxS2I1ditxOHBJQWh4bFJtaFpZaTE3aVBFOGt6TEJRQTciKTticmVhaztjYXNlImNyb3NzLmdpZiI6ZWNobwpiYXNlNjRfZGVjb2RlKCJSMGxHT0RkaEVnQVNBS0VBQU83dTdnQUFBSm1abVFBQUFDd0FBQUFBRWdBU0FBQUNJNFNQcWN2dER5TUtZZFpHYjM1NXd5NkJYM2RobE9FeDU3Rks3Z3RId2t6WE5sMEFBRHM9Iik7YnJlYWs7Y2FzZSJ1cC5naWYiOmVjaG8KYmFzZTY0X2RlY29kZSgiUjBsR09EZGhFZ0FTQUtFQUFPN3U3Z0FBQUptWm1RQUFBQ3dBQUFBQUVnQVNBQUFDSUlTUHFjdnREMDBJVVU0SzczMFQ5SjVoRlRpS0VYbWFZY1cycmdESDhod1hBRHM9Iik7YnJlYWs7Y2FzZSJkb3duLmdpZiI6ZWNobwpiYXNlNjRfZGVjb2RlKCJSMGxHT0RkaEVnQVNBS0VBQU83dTdnQUFBSm1abVFBQUFDd0FBQUFBRWdBU0FBQUNJSVNQcWN2dEQwMEk4Y3dxS2I1YlYvNWNvc2RNSnRtY0hjYTJsUURIOGh3WEFEcz0iKTticmVhaztjYXNlImFycm93LmdpZiI6ZWNobwpiYXNlNjRfZGVjb2RlKCJSMGxHT0RsaENBQUtBSUFBQUlDQWdQLy8veUg1QkFFQUFBRUFMQUFBQUFBSUFBb0FBQUlQQklKcGxyR0xucFFScXRPeTNyc0FBRHM9Iik7YnJlYWs7Y2FzZSJsb2FkZXIuZ2lmIjplY2hvCmJhc2U2NF9kZWNvZGUoIlIwbEdPRGxoRUFBUUFQSUFBUC8vL3dBQUFNTEN3a0pDUWdBQUFHSmlZb0tDZ3BLU2tpSC9DMDVGVkZORFFWQkZNaTR3QXdFQUFBQWgvaHBEY21WaGRHVmtJSGRwZEdnZ1lXcGhlR3h2WVdRdWFXNW1id0FoK1FRSkNnQUFBQ3dBQUFBQUVBQVFBQUFETXdpNjNQNHd5a2xyRTJNSU9nZ1puQWRPbUdZSlJiRXh3cm9VbWNHMkxtREV3bkhRTFZzWU9kMm1CemtZREFkS2ErZElBQUFoK1FRSkNnQUFBQ3dBQUFBQUVBQVFBQUFETkFpNjNQNU9qQ0VnRzRRTXU3RG1pa1J4UWxGVVlERVpJR0JNUlZzYXFId2N0WFhmN1dFWUI0QWcxeGppaGtNWnNpVWtLaElBSWZrRUNRb0FBQUFzQUFBQUFCQUFFQUFBQXpZSXVqSWpLOHBCeUpETWxGWXZCb1ZqSEE3MEdVN3hTVUpobUt0d0hQQUt6TE85SE1hb0t3Slo3UmY4QVlQRER6S3BaQnFmdndRQUlma0VDUW9BQUFBc0FBQUFBQkFBRUFBQUF6TUl1bUlsSzhveWhwSHNuRlpmaFl1bUNZVWhEQVF4UklkaEhCR3FSb0t3MFI4RFlsSmQ4ejBmTURnc0dvL0lwSEk1VEFBQUlma0VDUW9BQUFBc0FBQUFBQkFBRUFBQUF6SUl1bkluSzByblpCVHdHUE5NZ1F3bWRzTmdYR0pVbElXRXVSNW9XVUlwejhwQUVBTWU2VHdmd3lZc0dvL0lwRktTQUFBaCtRUUpDZ0FBQUN3QUFBQUFFQUFRQUFBRE13aTZJTUtRT1JmamRPZTgycDR3R2NjYzRDRXVRcmFkeWxlc29qRU1CZ3NVYzJHN3NEWDNsUUdCTUxBSmlidWZiU2xLQUFBaCtRUUpDZ0FBQUN3QUFBQUFFQUFRQUFBRE1naTYzUDd3Q1JIWm5GVmRtZ0h1Mm5Gd2xXQ0kzV0djM1RTV2hVRkd4VEFVa0dDYnRnRU5CTUpBRUpzeGdNTFd6cEVBQUNINUJBa0tBQUFBTEFBQUFBQVFBQkFBQUFNeUNMcmMvakRLU2F0bFF0U2NLZGNlQ0FqRElJN0hjUTRFTVRDcHlyQ3VVQmpDWVJnSFZ0cWxBaUIxWWhpQ25sc1JrQUFBT3dBQUFBQUFBQUFBQUE9PSIpO2JyZWFrO319ZXhpdDt9ZnVuY3Rpb24KY29ubmVjdGlvbigpe2dsb2JhbCRmO3JldHVybiRmO31mdW5jdGlvbgppZGZfdW5lc2NhcGUoJEIpeyR0Yz1zdWJzdHIoJEIsLTEpO3JldHVybgpzdHJfcmVwbGFjZSgkdGMuJHRjLCR0YyxzdWJzdHIoJEIsMSwtMSkpO31mdW5jdGlvbgplc2NhcGVfc3RyaW5nKCRhKXtyZXR1cm4Kc3Vic3RyKHEoJGEpLDEsLTEpO31mdW5jdGlvbgpyZW1vdmVfc2xhc2hlcygkTGEpe2lmKGdldF9tYWdpY19xdW90ZXNfZ3BjKCkpe3doaWxlKGxpc3QoJGQsJGEpPWVhY2goJExhKSl7Zm9yZWFjaCgkYQphcyRzYT0+JHMpe3Vuc2V0KCRMYVskZF1bJHNhXSk7aWYoaXNfYXJyYXkoJHMpKXskTGFbJGRdW3N0cmlwc2xhc2hlcygkc2EpXT0kczskTGFbXT0mJExhWyRkXVtzdHJpcHNsYXNoZXMoJHNhKV07fWVsc2V7JExhWyRkXVtzdHJpcHNsYXNoZXMoJHNhKV09KCRVYz8kczpzdHJpcHNsYXNoZXMoJHMpKTt9fX19fWZ1bmN0aW9uCmJyYWNrZXRfZXNjYXBlKCRCLCRDZD1mYWxzZSl7c3RhdGljJFNjPWFycmF5KCc6Jz0+JzoxJywnXSc9Pic6MicsJ1snPT4nOjMnKTtyZXR1cm4Kc3RydHIoJEIsKCRDZD9hcnJheV9mbGlwKCRTYyk6JFNjKSk7fWZ1bmN0aW9uCmgoJHgpe3JldHVybgpodG1sc3BlY2lhbGNoYXJzKCR4LEVOVF9RVU9URVMpO31mdW5jdGlvbgpuYnNwKCR4KXtyZXR1cm4odHJpbSgkeCkhPSIiP2goJHgpOiImbmJzcDsiKTt9ZnVuY3Rpb24KbmxfYnIoJHgpe3JldHVybgpzdHJfcmVwbGFjZSgiXG4iLCI8YnI+IiwkeCk7fWZ1bmN0aW9uCmNoZWNrYm94KCRlLCRuLCR6YiwkR2M9IiIsJEtjPSIiKXtzdGF0aWMkYmE9MDskYmErKzskYj0iPGlucHV0IHR5cGU9J2NoZWNrYm94JyIuKCRlPyIgbmFtZT0nJGUnIHZhbHVlPSciLmgoJG4pLiInIjoiIGNsYXNzPSdqc29ubHknIikuKCR6Yj8iIGNoZWNrZWQiOiIiKS4oJEtjPyIgb25jbGljaz1cIiRLY1wiIjoiIikuIiBpZD0nY2hlY2tib3gtJGJhJz4iO3JldHVybigkR2MhPSIiPyI8bGFiZWwgZm9yPSdjaGVja2JveC0kYmEnPiRiIi5oKCRHYykuIjwvbGFiZWw+IjokYik7fWZ1bmN0aW9uCm9wdGlvbmxpc3QoJElhLCRRZD1udWxsLCROYz1mYWxzZSl7JGI9IiI7Zm9yZWFjaCgkSWEKYXMkc2E9PiRzKXskT2M9YXJyYXkoJHNhPT4kcyk7aWYoaXNfYXJyYXkoJHMpKXskYi49JzxvcHRncm91cCBsYWJlbD0iJy5oKCRzYSkuJyI+JzskT2M9JHM7fWZvcmVhY2goJE9jCmFzJGQ9PiRhKXskYi49JzxvcHRpb24nLigkTmN8fGlzX3N0cmluZygkZCk/JyB2YWx1ZT0iJy5oKCRkKS4nIic6JycpLigoJE5jfHxpc19zdHJpbmcoJGQpPyhzdHJpbmcpJGQ6JGEpPT09JFFkPycgc2VsZWN0ZWQnOicnKS4nPicuaCgkYSk7fWlmKGlzX2FycmF5KCRzKSl7JGIuPSc8L29wdGdyb3VwPic7fX1yZXR1cm4kYjt9ZnVuY3Rpb24KaHRtbF9zZWxlY3QoJGUsJElhLCRuPSIiLCRZYT10cnVlKXtpZigkWWEpe3JldHVybiI8c2VsZWN0IG5hbWU9JyIuaCgkZSkuIiciLihpc19zdHJpbmcoJFlhKT8iIG9uY2hhbmdlPVwiJFlhXCIiOiIiKS4iPiIub3B0aW9ubGlzdCgkSWEsJG4pLiI8L3NlbGVjdD4iO30kYj0iIjtmb3JlYWNoKCRJYQphcyRkPT4kYSl7JGIuPSI8bGFiZWw+PGlucHV0IHR5cGU9J3JhZGlvJyBuYW1lPSciLmgoJGUpLiInIHZhbHVlPSciLmgoJGQpLiInIi4oJGQ9PSRuPyIgY2hlY2tlZCI6IiIpLiI+Ii5oKCRhKS4iPC9sYWJlbD4iO31yZXR1cm4kYjt9ZnVuY3Rpb24KY29uZmlybSgkamQ9IiIsJFNkPWZhbHNlKXtyZXR1cm4iIG9uY2xpY2s9XCIiLigkU2Q/ImV2ZW50U3RvcChldmVudCk7ICI6IiIpLiJyZXR1cm4gY29uZmlybSgnIi5sYW5nKDApLigkamQ/IiAoJyArICRqZCArICcpIjoiIikuIicpO1wiIjt9ZnVuY3Rpb24KanNfZXNjYXBlKCR4KXtyZXR1cm4KYWRkY3NsYXNoZXMoJHgsIlxyXG4nXFwvIik7fWZ1bmN0aW9uCmluaV9ib29sKCRWZCl7JGE9aW5pX2dldCgkVmQpO3JldHVybihlcmVnaSgnXihvbnx0cnVlfHllcykkJywkYSl8fChpbnQpJGEpO31mdW5jdGlvbgpzaWQoKXtzdGF0aWMkYjtpZighaXNzZXQoJGIpKXskYj0oU0lEJiYhKCRfQ09PS0lFJiZpbmlfYm9vbCgic2Vzc2lvbi51c2VfY29va2llcyIpKSk7fXJldHVybiRiO31mdW5jdGlvbgpxKCR4KXtnbG9iYWwkZjtyZXR1cm4kZi0+cXVvdGUoJHgpO31mdW5jdGlvbgpnZXRfdmFscygkaiwkdT0wKXtnbG9iYWwkZjskYj1hcnJheSgpOyRpPSRmLT5xdWVyeSgkaik7aWYoaXNfb2JqZWN0KCRpKSl7d2hpbGUoJGM9JGktPmZldGNoX3JvdygpKXskYltdPSRjWyR1XTt9fXJldHVybiRiO31mdW5jdGlvbgpnZXRfa2V5X3ZhbHMoJGosJE09bnVsbCl7Z2xvYmFsJGY7aWYoIWlzX29iamVjdCgkTSkpeyRNPSRmO30kYj1hcnJheSgpOyRpPSRNLT5xdWVyeSgkaik7aWYoaXNfb2JqZWN0KCRpKSl7d2hpbGUoJGM9JGktPmZldGNoX3JvdygpKXskYlskY1swXV09JGNbMV07fX1yZXR1cm4kYjt9ZnVuY3Rpb24KZ2V0X3Jvd3MoJGosJE09bnVsbCwkcD0iPHAgY2xhc3M9J2Vycm9yJz4iKXtnbG9iYWwkZjtpZighaXNfb2JqZWN0KCRNKSl7JE09JGY7fSRiPWFycmF5KCk7JGk9JE0tPnF1ZXJ5KCRqKTtpZihpc19vYmplY3QoJGkpKXt3aGlsZSgkYz0kaS0+ZmV0Y2hfYXNzb2MoKSl7JGJbXT0kYzt9fWVsc2VpZighJGkmJiRmLT5lcnJvciYmJHAmJmRlZmluZWQoIlBBR0VfSEVBREVSIikpe2VjaG8kcC5lcnJvcigpLiJcbiI7fXJldHVybiRiO31mdW5jdGlvbgp1bmlxdWVfYXJyYXkoJGMsJFUpe2ZvcmVhY2goJFUKYXMkWCl7aWYoZXJlZygiUFJJTUFSWXxVTklRVUUiLCRYWyJ0eXBlIl0pKXskYj1hcnJheSgpO2ZvcmVhY2goJFhbImNvbHVtbnMiXWFzJGQpe2lmKCFpc3NldCgkY1skZF0pKXtjb250aW51ZQoyO30kYlskZF09JGNbJGRdO31yZXR1cm4kYjt9fSRiPWFycmF5KCk7Zm9yZWFjaCgkYwphcyRkPT4kYSl7aWYoIXByZWdfbWF0Y2goJ35eKENPVU5UXFwoKFxcKnwoRElTVElOQ1QgKT9gKD86W15gXXxgYCkrYClcXCl8KEFWR3xHUk9VUF9DT05DQVR8TUFYfE1JTnxTVU0pXFwoYCg/OlteYF18YGApK2BcXCkpJH4nLCRkKSl7JGJbJGRdPSRhO319cmV0dXJuJGI7fWZ1bmN0aW9uCndoZXJlKCRtKXtnbG9iYWwkdmE7JGI9YXJyYXkoKTtmb3JlYWNoKChhcnJheSkkbVsid2hlcmUiXWFzJGQ9PiRhKXskYltdPWlkZl9lc2NhcGUoYnJhY2tldF9lc2NhcGUoJGQsMSkpLihlcmVnKCdcXC4nLCRhKXx8JHZhPT0ibXNzcWwiPyIgTElLRSAiLmV4YWN0X3ZhbHVlKGFkZGNzbGFzaGVzKCRhLCIlXyIpKToiID0gIi5leGFjdF92YWx1ZSgkYSkpO31mb3JlYWNoKChhcnJheSkkbVsibnVsbCJdYXMkZCl7JGJbXT1pZGZfZXNjYXBlKCRkKS4iIElTIE5VTEwiO31yZXR1cm4KaW1wbG9kZSgiIEFORCAiLCRiKTt9ZnVuY3Rpb24Kd2hlcmVfY2hlY2soJGEpe3BhcnNlX3N0cigkYSwkTGMpO3JlbW92ZV9zbGFzaGVzKGFycmF5KCYkTGMpKTtyZXR1cm4Kd2hlcmUoJExjKTt9ZnVuY3Rpb24Kd2hlcmVfbGluaygkcSwkdSwkbiwkWGQ9Ij0iKXtyZXR1cm4iJndoZXJlJTVCJHElNUQlNUJjb2wlNUQ9Ii51cmxlbmNvZGUoJHUpLiImd2hlcmUlNUIkcSU1RCU1Qm9wJTVEPSIudXJsZW5jb2RlKChpc3NldCgkbik/JFhkOiJJUyBOVUxMIikpLiImd2hlcmUlNUIkcSU1RCU1QnZhbCU1RD0iLnVybGVuY29kZSgkbik7fWZ1bmN0aW9uCmNvb2tpZSgkZSwkbil7Z2xvYmFsJG9iOyRxYj1hcnJheSgkZSwoZXJlZygiXG4iLCRuKT8iIjokbiksdGltZSgpKzI1OTIwMDAscHJlZ19yZXBsYWNlKCd+XFw/Lip+JywnJywkX1NFUlZFUlsiUkVRVUVTVF9VUkkiXSksIiIsJG9iKTtpZih2ZXJzaW9uX2NvbXBhcmUoUEhQX1ZFUlNJT04sJzUuMi4wJyk+PTApeyRxYltdPXRydWU7fXJldHVybgpjYWxsX3VzZXJfZnVuY19hcnJheSgnc2V0Y29va2llJywkcWIpO31mdW5jdGlvbgpyZXN0YXJ0X3Nlc3Npb24oKXtpZighaW5pX2Jvb2woInNlc3Npb24udXNlX2Nvb2tpZXMiKSl7c2Vzc2lvbl9zdGFydCgpO319ZnVuY3Rpb24mZ2V0X3Nlc3Npb24oJGQpe3JldHVybiRfU0VTU0lPTlskZF1bRFJJVkVSXVtTRVJWRVJdWyRfR0VUWyJ1c2VybmFtZSJdXTt9ZnVuY3Rpb24Kc2V0X3Nlc3Npb24oJGQsJGEpeyRfU0VTU0lPTlskZF1bRFJJVkVSXVtTRVJWRVJdWyRfR0VUWyJ1c2VybmFtZSJdXT0kYTt9ZnVuY3Rpb24KYXV0aF91cmwoJFdiLCRfLCRFKXtnbG9iYWwkdGE7cHJlZ19tYXRjaCgnfihbXj9dKilcXD8/KC4qKX4nLHJlbW92ZV9mcm9tX3VyaShpbXBsb2RlKCJ8IixhcnJheV9rZXlzKCR0YSkpLiJ8dXNlcm5hbWV8Ii5zZXNzaW9uX25hbWUoKSksJGspO3JldHVybiIka1sxXT8iLihzaWQoKT9TSUQuIiYiOiIiKS4oJFdiIT0ic2VydmVyInx8JF8hPSIiP3VybGVuY29kZSgkV2IpLiI9Ii51cmxlbmNvZGUoJF8pLiImIjoiIikuInVzZXJuYW1lPSIudXJsZW5jb2RlKCRFKS4oJGtbMl0/IiYka1syXSI6IiIpO31mdW5jdGlvbgppc19hamF4KCl7cmV0dXJuKCRfU0VSVkVSWyJIVFRQX1hfUkVRVUVTVEVEX1dJVEgiXT09IlhNTEh0dHBSZXF1ZXN0Iik7fWZ1bmN0aW9uCnJlZGlyZWN0KCRZLCR3YT1udWxsKXtpZihpc3NldCgkd2EpKXtyZXN0YXJ0X3Nlc3Npb24oKTskX1NFU1NJT05bIm1lc3NhZ2VzIl1bcHJlZ19yZXBsYWNlKCd+XlteP10qficsJycsKGlzc2V0KCRZKT8kWTokX1NFUlZFUlsiUkVRVUVTVF9VUkkiXSkpXVtdPSR3YTt9aWYoaXNzZXQoJFkpKXtpZigkWT09IiIpeyRZPSIuIjt9aGVhZGVyKChpc19hamF4KCk/IlgtQUpBWC1SZWRpcmVjdCI6IkxvY2F0aW9uIikuIjogJFkiKTtleGl0O319ZnVuY3Rpb24KcXVlcnlfcmVkaXJlY3QoJGosJFksJHdhLCRVYj10cnVlLCR6ZD10cnVlLCRrZD1mYWxzZSl7Z2xvYmFsJGYsJHAsJGw7aWYoJHpkKXska2Q9ISRmLT5xdWVyeSgkaik7fSRrYz0iIjtpZigkail7JGtjPSRsLT5tZXNzYWdlUXVlcnkoIiRqOyIpO31pZigka2QpeyRwPWVycm9yKCkuJGtjO3JldHVybgpmYWxzZTt9aWYoJFViKXtyZWRpcmVjdCgkWSwkd2EuJGtjKTt9cmV0dXJuCnRydWU7fWZ1bmN0aW9uCnF1ZXJpZXMoJGo9bnVsbCl7Z2xvYmFsJGY7c3RhdGljJEthPWFycmF5KCk7aWYoIWlzc2V0KCRqKSl7cmV0dXJuCmltcGxvZGUoIjtcbiIsJEthKTt9JEthW109KGVyZWcoJzskJywkaik/IkRFTElNSVRFUiA7O1xuJGo7XG5ERUxJTUlURVIgIjokaik7cmV0dXJuJGYtPnF1ZXJ5KCRqKTt9ZnVuY3Rpb24KYXBwbHlfcXVlcmllcygkaiwkeiwkR2Q9J3RhYmxlJyl7Zm9yZWFjaCgkegphcyRoKXtpZighcXVlcmllcygiJGogIi4kR2QoJGgpKSl7cmV0dXJuCmZhbHNlO319cmV0dXJuCnRydWU7fWZ1bmN0aW9uCnF1ZXJpZXNfcmVkaXJlY3QoJFksJHdhLCRVYil7cmV0dXJuCnF1ZXJ5X3JlZGlyZWN0KHF1ZXJpZXMoKSwkWSwkd2EsJFViLGZhbHNlLCEkVWIpO31mdW5jdGlvbgpyZW1vdmVfZnJvbV91cmkoJEVhPSIiKXtyZXR1cm4Kc3Vic3RyKHByZWdfcmVwbGFjZSgifig/PD1bPyZdKSgkRWEiLihTSUQ/IiI6InwiLnNlc3Npb25fbmFtZSgpKS4iKT1bXiZdKiZ+IiwnJywiJF9TRVJWRVJbUkVRVUVTVF9VUkldJiIpLDAsLTEpO31mdW5jdGlvbgpwYWdpbmF0aW9uKCRRLCRKZCl7cmV0dXJuIiAiLigkUT09JEpkPyRRKzE6JzxhIGhyZWY9IicuaChyZW1vdmVfZnJvbV91cmkoInBhZ2UiKS4oJFE/IiZwYWdlPSRRIjoiIikpLiciPicuKCRRKzEpLiI8L2E+Iik7fWZ1bmN0aW9uCmdldF9maWxlKCRkLCRFYz1mYWxzZSl7JHFhPSRfRklMRVNbJGRdO2lmKCEkcWF8fCRxYVsiZXJyb3IiXSl7cmV0dXJuJHFhWyJlcnJvciJdO30kYj1maWxlX2dldF9jb250ZW50cygkRWMmJmVyZWcoJ1xcLmd6JCcsJHFhWyJuYW1lIl0pPyJjb21wcmVzcy56bGliOi8vJHFhW3RtcF9uYW1lXSI6KCRFYyYmZXJlZygnXFwuYnoyJCcsJHFhWyJuYW1lIl0pPyJjb21wcmVzcy5iemlwMjovLyRxYVt0bXBfbmFtZV0iOiRxYVsidG1wX25hbWUiXSkpO2lmKCRFYyl7JHJkPXN1YnN0cigkYiwwLDMpO2lmKGZ1bmN0aW9uX2V4aXN0cygiaWNvbnYiKSYmZXJlZygiXlx4RkVceEZGfF5ceEZGXHhGRSIsJHJkLCRmZSkpeyRiPWljb252KCJ1dGYtMTYiLCJ1dGYtOCIsJGIpO31lbHNlaWYoJHJkPT0iXHhFRlx4QkJceEJGIil7JGI9c3Vic3RyKCRiLDMpO319cmV0dXJuJGI7fWZ1bmN0aW9uCnVwbG9hZF9lcnJvcigkcCl7JGxkPSgkcD09VVBMT0FEX0VSUl9JTklfU0laRT9pbmlfZ2V0KCJ1cGxvYWRfbWF4X2ZpbGVzaXplIik6bnVsbCk7cmV0dXJuKCRwP2xhbmcoMSkuKCRsZD8iICIubGFuZygyLCRsZCk6IiIpOmxhbmcoMykpO31mdW5jdGlvbgpvZGQoJGI9JyBjbGFzcz0ib2RkIicpe3N0YXRpYyRxPTA7aWYoISRiKXskcT0tMTt9cmV0dXJuKCRxKyslCjI/JGI6JycpO31mdW5jdGlvbgpqc29uX3JvdygkZCwkYT1udWxsKXtzdGF0aWMkemE9dHJ1ZTtpZigkemEpe2VjaG8ieyI7fWlmKCRkIT0iIil7ZWNobygkemE/IiI6IiwiKS4iXG5cdFwiIi5hZGRjc2xhc2hlcygkZCwiXHJcblwiXFwiKS4nIjogJy4oaXNzZXQoJGEpPyciJy5hZGRjc2xhc2hlcygkYSwiXHJcblwiXFwiKS4nIic6J3VuZGVmaW5lZCcpOyR6YT1mYWxzZTt9ZWxzZXtlY2hvIlxufVxuIjskemE9dHJ1ZTt9fWZ1bmN0aW9uCmlzX3V0ZjgoJGEpe3JldHVybihwcmVnX21hdGNoKCd+fnUnLCRhKSYmIXByZWdfbWF0Y2goJ35bXFwwLVxceDhcXHhCXFx4Q1xceEUtXFx4MUZdficsJGEpKTt9ZnVuY3Rpb24KcmVwZWF0X3BhdHRlcm4oJFMsJGthKXtyZXR1cm4Kc3RyX3JlcGVhdCgiJFN7MCw2NTUzNX0iLCRrYS82NTUzNSkuIiRTezAsIi4oJGthCiUKNjU1MzUpLiJ9Ijt9ZnVuY3Rpb24Kc2hvcnRlbl91dGY4KCR4LCRrYT04MCwkZGU9IiIpe2lmKCFwcmVnX21hdGNoKCIoXigiLnJlcGVhdF9wYXR0ZXJuKCJbXHRcclxuIC1ceHtGRkZGfV0iLCRrYSkuIikoJCk/KXUiLCR4LCRrKSl7cHJlZ19tYXRjaCgiKF4oIi5yZXBlYXRfcGF0dGVybigiW1x0XHJcbiAtfl0iLCRrYSkuIikoJCk/KSIsJHgsJGspO31yZXR1cm4KaCgka1sxXSkuJGRlLihpc3NldCgka1syXSk/IiI6IjxpPi4uLjwvaT4iKTt9ZnVuY3Rpb24KZnJpZW5kbHlfdXJsKCRhKXtyZXR1cm4KcHJlZ19yZXBsYWNlKCd+W15hLXowLTlfXX5pJywnLScsJGEpO31mdW5jdGlvbgpoaWRkZW5fZmllbGRzKCRMYSwkVGQ9YXJyYXkoKSl7d2hpbGUobGlzdCgkZCwkYSk9ZWFjaCgkTGEpKXtpZihpc19hcnJheSgkYSkpe2ZvcmVhY2goJGEKYXMkc2E9PiRzKXskTGFbJGQuIlskc2FdIl09JHM7fX1lbHNlaWYoIWluX2FycmF5KCRkLCRUZCkpe2VjaG8nPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iJy5oKCRkKS4nIiB2YWx1ZT0iJy5oKCRhKS4nIj4nO319fWZ1bmN0aW9uCmhpZGRlbl9maWVsZHNfZ2V0KCl7ZWNobyhzaWQoKT8nPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iJy5zZXNzaW9uX25hbWUoKS4nIiB2YWx1ZT0iJy5oKHNlc3Npb25faWQoKSkuJyI+JzonJyksKFNFUlZFUiE9PW51bGw/JzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9IicuRFJJVkVSLiciIHZhbHVlPSInLmgoU0VSVkVSKS4nIj4nOiIiKSwnPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0idXNlcm5hbWUiIHZhbHVlPSInLmgoJF9HRVRbInVzZXJuYW1lIl0pLiciPic7fWZ1bmN0aW9uCmNvbHVtbl9mb3JlaWduX2tleXMoJGgpe2dsb2JhbCRsOyRiPWFycmF5KCk7Zm9yZWFjaCgkbC0+Zm9yZWlnbktleXMoJGgpYXMkSSl7Zm9yZWFjaCgkSVsic291cmNlIl1hcyRhKXskYlskYV1bXT0kSTt9fXJldHVybiRiO31mdW5jdGlvbgplbnVtX2lucHV0KCRBLCRoYSwkZywkbiwkemM9bnVsbCl7Z2xvYmFsJGw7cHJlZ19tYXRjaF9hbGwoIn4nKCg/OlteJ118JycpKiknfiIsJGdbImxlbmd0aCJdLCRkYSk7JGI9KGlzc2V0KCR6Yyk/IjxsYWJlbD48aW5wdXQgdHlwZT0nJEEnJGhhIHZhbHVlPSckemMnIi4oKGlzX2FycmF5KCRuKT9pbl9hcnJheSgkemMsJG4pOiRuPT09MCk/IiBjaGVja2VkIjoiIikuIj48aT4iLmxhbmcoNCkuIjwvaT48L2xhYmVsPiI6IiIpO2ZvcmVhY2goJGRhWzFdYXMkcT0+JGEpeyRhPXN0cmlwY3NsYXNoZXMoc3RyX3JlcGxhY2UoIicnIiwiJyIsJGEpKTskemI9KGlzX2ludCgkbik/JG49PSRxKzE6KGlzX2FycmF5KCRuKT9pbl9hcnJheSgkcSsxLCRuKTokbj09PSRhKSk7JGIuPSIgPGxhYmVsPjxpbnB1dCB0eXBlPSckQSckaGEgdmFsdWU9JyIuKCRxKzEpLiInIi4oJHpiPycgY2hlY2tlZCc6JycpLic+Jy5oKCRsLT5lZGl0VmFsKCRhLCRnKSkuJzwvbGFiZWw+Jzt9cmV0dXJuJGI7fWZ1bmN0aW9uCmlucHV0KCRnLCRuLCRMKXtnbG9iYWwkWiwkbCwkdmE7JGU9aChicmFja2V0X2VzY2FwZSgkZ1siZmllbGQiXSkpO2VjaG8iPHRkIGNsYXNzPSdmdW5jdGlvbic+IjskSGM9KCR2YT09Im1zc3FsIiYmJGdbImF1dG9faW5jcmVtZW50Il0pO2lmKCRIYyYmISRfUE9TVFsic2F2ZSJdKXskTD1udWxsO30kZWE9KGlzc2V0KCRfR0VUWyJzZWxlY3QiXSl8fCRIYz9hcnJheSgib3JpZyI9PmxhbmcoNSkpOmFycmF5KCkpKyRsLT5lZGl0RnVuY3Rpb25zKCRnKTskaGE9IiBuYW1lPSdmaWVsZHNbJGVdJyI7aWYoJGdbInR5cGUiXT09ImVudW0iKXtlY2hvCm5ic3AoJGVhWyIiXSkuIjx0ZD4iLiRsLT5lZGl0SW5wdXQoJF9HRVRbImVkaXQiXSwkZywkaGEsJG4pO31lbHNleyR6YT0wO2ZvcmVhY2goJGVhCmFzJGQ9PiRhKXtpZigkZD09PSIifHwhJGEpe2JyZWFrO30kemErKzt9JFlhPSgkemE/IiBvbmNoYW5nZT1cInZhciBmID0gdGhpcy5mb3JtWydmdW5jdGlvblsiLmpzX2VzY2FwZSgkZSkuIl0nXTsgaWYgKCR6YSA+IGYuc2VsZWN0ZWRJbmRleCkgZi5zZWxlY3RlZEluZGV4ID0gJHphO1wiIjoiIik7JGhhLj0kWWE7ZWNobyhjb3VudCgkZWEpPjE/aHRtbF9zZWxlY3QoImZ1bmN0aW9uWyRlXSIsJGVhLCFpc3NldCgkTCl8fGluX2FycmF5KCRMLCRlYSl8fGlzc2V0KCRlYVskTF0pPyRMOiIiLCJmdW5jdGlvbkNoYW5nZSh0aGlzKTsiKTpuYnNwKHJlc2V0KCRlYSkpKS4nPHRkPic7JGZkPSRsLT5lZGl0SW5wdXQoJF9HRVRbImVkaXQiXSwkZywkaGEsJG4pO2lmKCRmZCE9IiIpe2VjaG8kZmQ7fWVsc2VpZigkZ1sidHlwZSJdPT0ic2V0Iil7cHJlZ19tYXRjaF9hbGwoIn4nKCg/OlteJ118JycpKiknfiIsJGdbImxlbmd0aCJdLCRkYSk7Zm9yZWFjaCgkZGFbMV1hcyRxPT4kYSl7JGE9c3RyaXBjc2xhc2hlcyhzdHJfcmVwbGFjZSgiJyciLCInIiwkYSkpOyR6Yj0oaXNfaW50KCRuKT8oJG4+PiRxKSYxOmluX2FycmF5KCRhLGV4cGxvZGUoIiwiLCRuKSx0cnVlKSk7ZWNobyIgPGxhYmVsPjxpbnB1dCB0eXBlPSdjaGVja2JveCcgbmFtZT0nZmllbGRzWyRlXVskcV0nIHZhbHVlPSciLigxPDwkcSkuIiciLigkemI/JyBjaGVja2VkJzonJykuIiRZYT4iLmgoJGwtPmVkaXRWYWwoJGEsJGcpKS4nPC9sYWJlbD4nO319ZWxzZWlmKGVyZWcoJ2Jsb2J8Ynl0ZWF8cmF3fGZpbGUnLCRnWyJ0eXBlIl0pJiZpbmlfYm9vbCgiZmlsZV91cGxvYWRzIikpe2VjaG8iPGlucHV0IHR5cGU9J2ZpbGUnIG5hbWU9J2ZpZWxkcy0kZSckWWE+Ijt9ZWxzZWlmKGVyZWcoJ3RleHR8bG9iJywkZ1sidHlwZSJdKSl7ZWNobyI8dGV4dGFyZWEgIi4oJHZhIT0ic3FsaXRlInx8ZXJlZygiXG4iLCRuKT8iY29scz0nNTAnIHJvd3M9JzEyJyI6ImNvbHM9JzMwJyByb3dzPScxJyBzdHlsZT0naGVpZ2h0OiAxLjJlbTsnIikuIiRoYT4iLmgoJG4pLic8L3RleHRhcmVhPic7fWVsc2V7JEJjPSghZXJlZygnaW50JywkZ1sidHlwZSJdKSYmcHJlZ19tYXRjaCgnfl4oXFxkKykoLChcXGQrKSk/JH4nLCRnWyJsZW5ndGgiXSwkayk/KChlcmVnKCJiaW5hcnkiLCRnWyJ0eXBlIl0pPzI6MSkqJGtbMV0rKCRrWzNdPzE6MCkrKCRrWzJdJiYhJGdbInVuc2lnbmVkIl0/MTowKSk6KCRaWyRnWyJ0eXBlIl1dPyRaWyRnWyJ0eXBlIl1dKygkZ1sidW5zaWduZWQiXT8wOjEpOjApKTtlY2hvIjxpbnB1dCB2YWx1ZT0nIi5oKCRuKS4iJyIuKCRCYz8iIG1heGxlbmd0aD0nJEJjJyI6IiIpLihlcmVnKCdjaGFyfGJpbmFyeScsJGdbInR5cGUiXSkmJiRCYz4yMD8iIHNpemU9JzQwJyI6IiIpLiIkaGE+Ijt9fX1mdW5jdGlvbgpwcm9jZXNzX2lucHV0KCRnKXtnbG9iYWwkbDskQj1icmFja2V0X2VzY2FwZSgkZ1siZmllbGQiXSk7JEw9JF9QT1NUWyJmdW5jdGlvbiJdWyRCXTskbj0kX1BPU1RbImZpZWxkcyJdWyRCXTtpZigkZ1sidHlwZSJdPT0iZW51bSIpe2lmKCRuPT0tMSl7cmV0dXJuCmZhbHNlO31pZigkbj09IiIpe3JldHVybiJOVUxMIjt9cmV0dXJuKyRuO31pZigkZ1siYXV0b19pbmNyZW1lbnQiXSYmJG49PSIiKXtyZXR1cm4KbnVsbDt9aWYoJEw9PSJvcmlnIil7cmV0dXJuCmZhbHNlO31pZigkTD09Ik5VTEwiKXtyZXR1cm4iTlVMTCI7fWlmKCRnWyJ0eXBlIl09PSJzZXQiKXtyZXR1cm4KYXJyYXlfc3VtKChhcnJheSkkbik7fWlmKGVyZWcoJ2Jsb2J8Ynl0ZWF8cmF3fGZpbGUnLCRnWyJ0eXBlIl0pJiZpbmlfYm9vbCgiZmlsZV91cGxvYWRzIikpeyRxYT1nZXRfZmlsZSgiZmllbGRzLSRCIik7aWYoIWlzX3N0cmluZygkcWEpKXtyZXR1cm4KZmFsc2U7fXJldHVybgpxKCRxYSk7fXJldHVybiRsLT5wcm9jZXNzSW5wdXQoJGcsJG4sJEwpO31mdW5jdGlvbgpzZWFyY2hfdGFibGVzKCl7Z2xvYmFsJGwsJGY7JF9HRVRbIndoZXJlIl1bMF1bIm9wIl09IkxJS0UgJSUiOyRfR0VUWyJ3aGVyZSJdWzBdWyJ2YWwiXT0kX1BPU1RbInF1ZXJ5Il07JF9jPWZhbHNlO2ZvcmVhY2godGFibGVfc3RhdHVzKClhcyRoPT4kRCl7JGU9JGwtPnRhYmxlTmFtZSgkRCk7aWYoaXNzZXQoJERbIkVuZ2luZSJdKSYmJGUhPSIiJiYoISRfUE9TVFsidGFibGVzIl18fGluX2FycmF5KCRoLCRfUE9TVFsidGFibGVzIl0pKSl7JGk9JGYtPnF1ZXJ5KCJTRUxFQ1QiLmxpbWl0KCIxIEZST00gIi50YWJsZSgkaCksIiBXSEVSRSAiLmltcGxvZGUoIiBBTkQgIiwkbC0+c2VsZWN0U2VhcmNoUHJvY2VzcyhmaWVsZHMoJGgpLGFycmF5KCkpKSwxKSk7aWYoJGktPmZldGNoX3JvdygpKXtpZighJF9jKXtlY2hvIjx1bD5cbiI7JF9jPXRydWU7fWVjaG8iPGxpPjxhIGhyZWY9JyIuaChNRS4ic2VsZWN0PSIudXJsZW5jb2RlKCRoKS4iJndoZXJlWzBdW29wXT0iLnVybGVuY29kZSgkX0dFVFsid2hlcmUiXVswXVsib3AiXSkuIiZ3aGVyZVswXVt2YWxdPSIudXJsZW5jb2RlKCRfR0VUWyJ3aGVyZSJdWzBdWyJ2YWwiXSkpLiInPiRlPC9hPlxuIjt9fX1lY2hvKCRfYz8iPC91bD4iOiI8cCBjbGFzcz0nbWVzc2FnZSc+Ii5sYW5nKDYpKS4iXG4iO31mdW5jdGlvbgpkdW1wX2hlYWRlcnMoJFpiLCRiZD1mYWxzZSl7Z2xvYmFsJGw7JGI9JGwtPmR1bXBIZWFkZXJzKCRaYiwkYmQpOyRaYT0kX1BPU1RbIm91dHB1dCJdO2lmKCRaYSE9InRleHQiKXtoZWFkZXIoIkNvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPSIuKCRaYiE9IiI/ZnJpZW5kbHlfdXJsKCRaYik6ImR1bXAiKS4iLiRiIi4oJFphIT0iZmlsZSImJiFlcmVnKCdbXjAtOWEtel0nLCRaYSk/Ii4kWmEiOiIiKSk7fXNlc3Npb25fd3JpdGVfY2xvc2UoKTtyZXR1cm4kYjt9ZnVuY3Rpb24KZHVtcF9jc3YoJGMpe2ZvcmVhY2goJGMKYXMkZD0+JGEpe2lmKHByZWdfbWF0Y2goIn5bXCJcbiw7XHRdfiIsJGEpfHwkYT09PSIiKXskY1skZF09JyInLnN0cl9yZXBsYWNlKCciJywnIiInLCRhKS4nIic7fX1lY2hvCmltcGxvZGUoKCRfUE9TVFsiZm9ybWF0Il09PSJjc3YiPyIsIjooJF9QT1NUWyJmb3JtYXQiXT09InRzdiI/Ilx0IjoiOyIpKSwkYykuIlxyXG4iO31mdW5jdGlvbgphcHBseV9zcWxfZnVuY3Rpb24oJEwsJHUpe3JldHVybigkTD8oJEw9PSJ1bml4ZXBvY2giPyJEQVRFVElNRSgkdSwgJyRMJykiOigkTD09ImNvdW50IGRpc3RpbmN0Ij8iQ09VTlQoRElTVElOQ1QgIjpzdHJ0b3VwcGVyKCIkTCgiKSkuIiR1KSIpOiR1KTt9ZnVuY3Rpb24KcGFzc3dvcmRfZmlsZSgpeyRkYz1pbmlfZ2V0KCJ1cGxvYWRfdG1wX2RpciIpO2lmKCEkZGMpe2lmKGZ1bmN0aW9uX2V4aXN0cygnc3lzX2dldF90ZW1wX2RpcicpKXskZGM9c3lzX2dldF90ZW1wX2RpcigpO31lbHNleyRWPUB0ZW1wbmFtKCIiLCIiKTtpZighJFYpe3JldHVybgpmYWxzZTt9JGRjPWRpcm5hbWUoJFYpO3VubGluaygkVik7fX0kVj0iJGRjL2FkbWluZXIua2V5IjskYj1AZmlsZV9nZXRfY29udGVudHMoJFYpO2lmKCRiKXtyZXR1cm4kYjt9JERjPUBmb3BlbigkViwidyIpO2lmKCREYyl7JGI9bWQ1KHVuaXFpZChtdF9yYW5kKCksdHJ1ZSkpO2Z3cml0ZSgkRGMsJGIpO2ZjbG9zZSgkRGMpO31yZXR1cm4kYjt9ZnVuY3Rpb24KaXNfbWFpbCgkbWIpeyRhZD0nWy1hLXowLTkhIyQlJlwnKisvPT9eX2B7fH1+XSc7JEJiPSdbYS16MC05XShbLWEtejAtOV17MCw2MX1bYS16MC05XSknOyRTPSIkYWQrKFxcLiRhZCspKkAoJEJiP1xcLikrJEJiIjtyZXR1cm4KcHJlZ19tYXRjaCgiKF4kUygsXFxzKiRTKSpcJClpIiwkbWIpO31mdW5jdGlvbgppc191cmwoJHgpeyRCYj0nW2EtejAtOV0oWy1hLXowLTldezAsNjF9W2EtejAtOV0pJztyZXR1cm4ocHJlZ19tYXRjaCgifl4oaHR0cHM/KTovLygkQmI/XFwuKSskQmIoOlxcZCspPygvLiopPyhcXD8uKik/KCMuKik/XCR+aSIsJHgsJGspP3N0cnRvbG93ZXIoJGtbMV0pOiIiKTt9ZnVuY3Rpb24KcHJpbnRfZmllbGRzZXQoJGJhLCRJZCwkTGQ9ZmFsc2Upe2VjaG8iPGZpZWxkc2V0PjxsZWdlbmQ+PGEgaHJlZj0nI2ZpZWxkc2V0LSRiYScgb25jbGljaz1cInJldHVybiAhdG9nZ2xlKCdmaWVsZHNldC0kYmEnKTtcIj4kSWQ8L2E+PC9sZWdlbmQ+PGRpdiBpZD0nZmllbGRzZXQtJGJhJyIuKCRMZD8iIjoiIGNsYXNzPSdoaWRkZW4nIikuIj5cbiI7fWZ1bmN0aW9uCmJvbGQoJGFlKXtyZXR1cm4oJGFlPyIgY2xhc3M9J2FjdGl2ZSciOiIiKTt9Z2xvYmFsJGwsJGYsJHRhLCRGYiwkQWMsJHAsJGVhLCRJYiwkb2IsJHBkLCR2YSwkZmEsJFNhLCRTYiwkSGEsJHhhLCROLCRaLCRHYiwkUWI7aWYoIWlzc2V0KCRfU0VSVkVSWyJSRVFVRVNUX1VSSSJdKSl7JF9TRVJWRVJbIlJFUVVFU1RfVVJJIl09JF9TRVJWRVJbIk9SSUdfUEFUSF9JTkZPIl0uKCRfU0VSVkVSWyJRVUVSWV9TVFJJTkciXSE9IiI/Ij8kX1NFUlZFUltRVUVSWV9TVFJJTkddIjoiIik7fSRvYj0kX1NFUlZFUlsiSFRUUFMiXSYmc3RyY2FzZWNtcCgkX1NFUlZFUlsiSFRUUFMiXSwib2ZmIik7QGluaV9zZXQoInNlc3Npb24udXNlX3RyYW5zX3NpZCIsZmFsc2UpO2lmKCFkZWZpbmVkKCJTSUQiKSl7c2Vzc2lvbl9uYW1lKCJhZG1pbmVyX3NpZCIpOyRxYj1hcnJheSgwLHByZWdfcmVwbGFjZSgnflxcPy4qficsJycsJF9TRVJWRVJbIlJFUVVFU1RfVVJJIl0pLCIiLCRvYik7aWYodmVyc2lvbl9jb21wYXJlKFBIUF9WRVJTSU9OLCc1LjIuMCcpPj0wKXskcWJbXT10cnVlO31jYWxsX3VzZXJfZnVuY19hcnJheSgnc2Vzc2lvbl9zZXRfY29va2llX3BhcmFtcycsJHFiKTtzZXNzaW9uX3N0YXJ0KCk7fXJlbW92ZV9zbGFzaGVzKGFycmF5KCYkX0dFVCwmJF9QT1NULCYkX0NPT0tJRSkpO2lmKGZ1bmN0aW9uX2V4aXN0cygic2V0X21hZ2ljX3F1b3Rlc19ydW50aW1lIikpe3NldF9tYWdpY19xdW90ZXNfcnVudGltZShmYWxzZSk7fUBzZXRfdGltZV9saW1pdCgwKTtAaW5pX3NldCgiemVuZC56ZTFfY29tcGF0aWJpbGl0eV9tb2RlIixmYWxzZSk7QGluaV9zZXQoInByZWNpc2lvbiIsMjApOyRTYT1hcnJheSgnZW4nPT4nRW5nbGlzaCcsJ2NzJz0+J8SMZcWhdGluYScsJ3NrJz0+J1Nsb3ZlbsSNaW5hJywnbmwnPT4nTmVkZXJsYW5kcycsJ2VzJz0+J0VzcGHDsW9sJywnZGUnPT4nRGV1dHNjaCcsJ2ZyJz0+J0ZyYW7Dp2FpcycsJ2l0Jz0+J0l0YWxpYW5vJywnZXQnPT4nRWVzdGknLCdodSc9PidNYWd5YXInLCdwbCc9PidQb2xza2knLCdjYSc9PidDYXRhbMOgJywncHQnPT4nUG9ydHVndcOqcycsJ3NsJz0+J1Nsb3ZlbnNraScsJ3RyJz0+J1TDvHJrw6dlJywncnUnPT4n0KDRg9GB0YHQutC40Lkg0Y/Qt9GL0LonLCd6aCc9PifnroDkvZPkuK3mlocnLCd6aC10dyc9PifnuYHpq5TkuK3mlocnLCdqYSc9Pifml6XmnKzoqp4nLCd0YSc9PifgrqTigIzgrq7grr/grrTgr40nLCdhcic9PifYp9mE2LnYsdio2YrYqScsKTtmdW5jdGlvbgpnZXRfbGFuZygpe2dsb2JhbCRmYTtyZXR1cm4kZmE7fWZ1bmN0aW9uCmxhbmcoJEIsJG5iPW51bGwpe2dsb2JhbCRmYSwkTjskbGI9JE5bJEJdO2lmKGlzX2FycmF5KCRsYikmJiRsYil7JFJkPSgkbmI9PTF8fCghJG5iJiYkZmE9PSdmcicpPzA6KCRmYT09J3NsJyYmKCEkbmJ8fCRuYj4yKT8xOjApKygoISRuYnx8JG5iPj01KSYmZXJlZygnY3N8c2t8cnV8c2x8cGwnLCRmYSk/MjoxKSk7JGxiPSRsYlskUmRdO30kaWQ9ZnVuY19nZXRfYXJncygpO2FycmF5X3NoaWZ0KCRpZCk7cmV0dXJuCnZzcHJpbnRmKChpc3NldCgkbGIpPyRsYjokQiksJGlkKTt9ZnVuY3Rpb24Kc3dpdGNoX2xhbmcoKXtnbG9iYWwkZmEsJFNhO2VjaG8iPGZvcm0gYWN0aW9uPScnPlxuPGRpdiBpZD0nbGFuZyc+IjtoaWRkZW5fZmllbGRzKCRfR0VULGFycmF5KCdsYW5nJykpO2VjaG8KbGFuZyg3KS4iOiAiLmh0bWxfc2VsZWN0KCJsYW5nIiwkU2EsJGZhLCJ2YXIgbG9jID0gbG9jYXRpb24uc2VhcmNoLnJlcGxhY2UoL1s/Jl1sYW5nPVteJl0qLywgJycpOyBsb2NhdGlvbi5zZWFyY2ggPSBsb2MgKyAobG9jID8gJyYnIDogJycpICsgJ2xhbmc9JyArIHRoaXMudmFsdWU7IiksIiA8aW5wdXQgdHlwZT0nc3VibWl0JyB2YWx1ZT0nIi5sYW5nKDgpLiInIGNsYXNzPSdoaWRkZW4nPlxuIiwiPC9kaXY+XG48L2Zvcm0+XG4iO31pZihpc3NldCgkX0dFVFsibGFuZyJdKSl7JF9DT09LSUVbImFkbWluZXJfbGFuZyJdPSRfR0VUWyJsYW5nIl07JF9TRVNTSU9OWyJsYW5nIl09JF9HRVRbImxhbmciXTt9JGZhPSJlbiI7aWYoaXNzZXQoJFNhWyRfQ09PS0lFWyJhZG1pbmVyX2xhbmciXV0pKXtjb29raWUoImFkbWluZXJfbGFuZyIsJF9DT09LSUVbImFkbWluZXJfbGFuZyJdKTskZmE9JF9DT09LSUVbImFkbWluZXJfbGFuZyJdO31lbHNlaWYoaXNzZXQoJFNhWyRfU0VTU0lPTlsibGFuZyJdXSkpeyRmYT0kX1NFU1NJT05bImxhbmciXTt9ZWxzZXskYmM9YXJyYXkoKTtwcmVnX21hdGNoX2FsbCgnfihbLWEtel0rKSg7cT0oWzAtOS5dKykpP34nLHN0cl9yZXBsYWNlKCJfIiwiLSIsc3RydG9sb3dlcigkX1NFUlZFUlsiSFRUUF9BQ0NFUFRfTEFOR1VBR0UiXSkpLCRkYSxQUkVHX1NFVF9PUkRFUik7Zm9yZWFjaCgkZGEKYXMkayl7JGJjWyRrWzFdXT0oaXNzZXQoJGtbM10pPyRrWzNdOjEpO31hcnNvcnQoJGJjKTtmb3JlYWNoKCRiYwphcyRkPT4kUmIpe2lmKGlzc2V0KCRTYVskZF0pKXskZmE9JGQ7YnJlYWs7fSRkPXByZWdfcmVwbGFjZSgnfi0uKn4nLCcnLCRkKTtpZighaXNzZXQoJGJjWyRkXSkmJmlzc2V0KCRTYVskZF0pKXskZmE9JGQ7YnJlYWs7fX19c3dpdGNoKCRmYSl7Y2FzZSJlbiI6JE49YXJyYXkoJ0FyZSB5b3Ugc3VyZT8nLCdVbmFibGUgdG8gdXBsb2FkIGEgZmlsZS4nLCdNYXhpbXVtIGFsbG93ZWQgZmlsZSBzaXplIGlzICVzQi4nLCdGaWxlIGRvZXMgbm90IGV4aXN0LicsJ2VtcHR5Jywnb3JpZ2luYWwnLCdObyB0YWJsZXMuJywnTGFuZ3VhZ2UnLCdVc2UnLCdQbGVhc2UgdXNlIG9uZSBvZiB0aGUgZXh0ZW5zaW9ucyAlcy4nLCdGaWxlIGV4aXN0cy4nLCdVc2VyIHR5cGVzJywnTnVtYmVycycsJ0RhdGUgYW5kIHRpbWUnLCdTdHJpbmdzJywnQmluYXJ5JywnTmV0d29yaycsJ0dlb21ldHJ5JywnTGlzdHMnLCdFZGl0b3InLCdVc2VybmFtZScsJ1Bhc3N3b3JkJywnTG9naW4nLCdQZXJtYW5lbnQgbG9naW4nLCdOZXcgaXRlbScsJ0xhc3QgcGFnZScsYXJyYXkoJyVkIGJ5dGUnLCclZCBieXRlcycpLCckMS0kMy0kNScsJ1NlYXJjaCcsJ2FueXdoZXJlJywnU29ydCcsJ0xpbWl0JywnQWN0aW9uJywnU2VsZWN0JywnRS1tYWlsJywnRnJvbScsJ1N1YmplY3QnLCdJbnNlcnQnLCdBdHRhY2htZW50cycsJ1NlbmQnLGFycmF5KCclZCBlLW1haWwgaGFzIGJlZW4gc2VudC4nLCclZCBlLW1haWxzIGhhdmUgYmVlbiBzZW50LicpLCdub3cnLCdISDpNTTpTUycsJ1t5eXl5XS1tbS1kZCcsJ0xvZ291dCcsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/JywnU2VydmVyJywnSW52YWxpZCBDU1JGIHRva2VuLiBTZW5kIHRoZSBmb3JtIGFnYWluLicsJ0xvZ291dCBzdWNjZXNzZnVsLicsJ1Nlc3Npb24gc3VwcG9ydCBtdXN0IGJlIGVuYWJsZWQuJywnU2Vzc2lvbiBleHBpcmVkLCBwbGVhc2UgbG9naW4gYWdhaW4uJywnSW52YWxpZCBjcmVkZW50aWFscy4nLCdObyBleHRlbnNpb24nLCdOb25lIG9mIHRoZSBzdXBwb3J0ZWQgUEhQIGV4dGVuc2lvbnMgKCVzKSBhcmUgYXZhaWxhYmxlLicsJ1RvbyBiaWcgUE9TVCBkYXRhLiBSZWR1Y2UgdGhlIGRhdGEgb3IgaW5jcmVhc2UgdGhlICVzIGNvbmZpZ3VyYXRpb24gZGlyZWN0aXZlLicsJ0l0ZW0gaGFzIGJlZW4gZGVsZXRlZC4nLCdJdGVtIGhhcyBiZWVuIHVwZGF0ZWQuJywnSXRlbSVzIGhhcyBiZWVuIGluc2VydGVkLicsJ0VkaXQnLCdTYXZlJywnU2F2ZSBhbmQgY29udGludWUgZWRpdCcsJ1NhdmUgYW5kIGluc2VydCBuZXh0JywnRGVsZXRlJyxhcnJheSgnJWQgaXRlbSBoYXMgYmVlbiBhZmZlY3RlZC4nLCclZCBpdGVtcyBoYXZlIGJlZW4gYWZmZWN0ZWQuJyksJ0RvdWJsZSBjbGljayBvbiBhIHZhbHVlIHRvIG1vZGlmeSBpdC4nLGFycmF5KCclZCByb3cgaGFzIGJlZW4gaW1wb3J0ZWQuJywnJWQgcm93cyBoYXZlIGJlZW4gaW1wb3J0ZWQuJyksJ1VuYWJsZSB0byBzZWxlY3QgdGhlIHRhYmxlJywnTm8gcm93cy4nLCdlZGl0JywnUmVsYXRpb25zJywnVXNlIGVkaXQgbGluayB0byBtb2RpZnkgdGhpcyB2YWx1ZS4nLCdQYWdlJywnbGFzdCcsYXJyYXkoJyVkIHJvdycsJyVkIHJvd3MnKSwnd2hvbGUgcmVzdWx0JywnQ2xvbmUnLCdFeHBvcnQnLCdJbXBvcnQnLCdTZWFyY2ggZGF0YSBpbiB0YWJsZXMnLCdUYWJsZScsJ1Jvd3MnLCcsJyxhcnJheSgnJWQgcXVlcnkgZXhlY3V0ZWQgT0suJywnJWQgcXVlcmllcyBleGVjdXRlZCBPSy4nKSk7YnJlYWs7Y2FzZSJjcyI6JE49YXJyYXkoJ09wcmF2ZHU/JywnTmVwb2RhxZlpbG8gc2UgbmFocsOhdCBzb3Vib3IuJywnTWF4aW3DoWxuw60gcG92b2xlbsOhIHZlbGlrb3N0IHNvdWJvcnUgamUgJXNCLicsJ1NvdWJvciBuZWV4aXN0dWplLicsJ3Byw6F6ZG7DqScsJ3DFr3ZvZG7DrScsJ8W9w6FkbsOpIHRhYnVsa3kuJywnSmF6eWsnLCdWeWJyYXQnLCdQcm9zw61tIHBvdcW+aWp0ZSBqZWRudSB6IGtvbmNvdmVrICVzLicsJ1NvdWJvciBleGlzdHVqZS4nLCdVxb5pdmF0ZWxza8OpIHR5cHknLCfEjMOtc2xhJywnRGF0dW0gYSDEjWFzJywnxZhldMSbemNlJywnQmluw6FybsOtJywnU8OtxaUnLCdHZW9tZXRyaWUnLCdTZXpuYW15JywnRWRpdG9yJywnVcW+aXZhdGVsJywnSGVzbG8nLCdQxZlpaGzDoXNpdCBzZScsJ1RydmFsw6kgcMWZaWhsw6HFoWVuw60nLCdOb3bDoSBwb2xvxb5rYScsJ1Bvc2xlZG7DrSBzdHLDoW5rYScsYXJyYXkoJyVkIGJhanQnLCclZCBiYWp0eScsJyVkIGJhanTFrycpLCckNi4kNC4kMScsJ1Z5aGxlZGF0Jywna2Rla29saXYnLCdTZcWZYWRpdCcsJ0xpbWl0JywnQWtjZScsJ1Z5cHNhdCcsJ0UtbWFpbCcsJ09kZXPDrWxhdGVsJywnUMWZZWRtxJt0JywnVmxvxb5pdCcsJ1DFmcOtbG9oeScsJ09kZXNsYXQnLGFycmF5KCdCeWwgb2Rlc2zDoW4gJWQgZS1tYWlsLicsJ0J5bHkgb2Rlc2zDoW55ICVkIGUtbWFpbHkuJywnQnlsbyBvZGVzbMOhbm8gJWQgZS1tYWlsxa8uJyksJ3RlxI8nLCdISDpNTTpTUycsJ2QubS5bcnJycl0nLCdPZGhsw6FzaXQnLCdsdHInLCdabm92dSBvZGVzbGF0IFBPU1QgZGF0YT8nLCdTZXJ2ZXInLCdOZXBsYXRuw70gdG9rZW4gQ1NSRi4gT2RlxaFsZXRlIGZvcm11bMOhxZkgem5vdnUuJywnT2RobMOhxaFlbsOtIHByb2LEm2hsbyB2IHBvxZnDoWRrdS4nLCdTZXNzaW9uIHByb23Em25uw6kgbXVzw60gYsO9dCBwb3ZvbGVuw6kuJywnU2Vzc2lvbiB2eXByxaFlbGEsIHDFmWlobGHFoXRlIHNlIHByb3PDrW0gem5vdnUuJywnTmVwbGF0bsOpIHDFmWlobGHFoW92YWPDrSDDumRhamUuJywnxb3DoWRuw6EgZXh0ZW56ZScsJ05lbsOtIGRvc3R1cG7DoSDFvsOhZG7DoSB6IHBvZHBvcm92YW7DvWNoIFBIUCBleHRlbnrDrSAoJXMpLicsJ1DFmcOtbGnFoSB2ZWxrw6EgUE9TVCBkYXRhLiBabWVuxaFldGUgZGF0YSBuZWJvIHp2ecWhdGUgaG9kbm90dSBrb25maWd1cmHEjW7DrSBkaXJla3RpdnkgJXMuJywnUG9sb8W+a2EgYnlsYSBzbWF6w6FuYS4nLCdQb2xvxb5rYSBieWxhIGFrdHVhbGl6b3bDoW5hLicsJ1BvbG/FvmthJXMgYnlsYSB2bG/FvmVuYS4nLCdVcHJhdml0JywnVWxvxb5pdCcsJ1Vsb8W+aXQgYSBwb2tyYcSNb3ZhdCB2IGVkaXRhY2knLCdVbG/Fvml0IGEgdmxvxb5pdCBkYWzFocOtJywnU21hemF0JyxhcnJheSgnQnlsIG92bGl2bsSbbiAlZCB6w6F6bmFtLicsJ0J5bHkgb3ZsaXZuxJtueSAlZCB6w6F6bmFteS4nLCdCeWxvIG92bGl2bsSbbm8gJWQgesOhem5hbcWvLicpLCdEdm9qa2xpa27Em3RlIG5hIHBvbMOtxI1rbywga3RlcsOpIGNoY2V0ZSB6bcSbbml0LicsYXJyYXkoJ0J5bCBpbXBvcnRvdsOhbiAlZCB6w6F6bmFtLicsJ0J5bHkgaW1wb3J0b3bDoW55ICVkIHrDoXpuYW15LicsJ0J5bG8gaW1wb3J0b3bDoW5vICVkIHrDoXpuYW3Fry4nKSwnTmVwb2RhxZlpbG8gc2Ugdnlwc2F0IHRhYnVsa3UnLCfFvcOhZG7DqSDFmcOhZGt5LicsJ3VwcmF2aXQnLCdWenRhaHknLCdLZSB6bcSbbsSbIHTDqXRvIGhvZG5vdHkgcG91xb5panRlIG9ka2F6IHVwcmF2aXQuJywnU3Ryw6Fua2EnLCdwb3NsZWRuw60nLGFycmF5KCclZCDFmcOhZGVrJywnJWQgxZnDoWRreScsJyVkIMWZw6Fka8WvJyksJ2NlbMO9IHbDvXNsZWRlaycsJ0tsb25vdmF0JywnRXhwb3J0JywnSW1wb3J0JywnVnlobGVkYXQgZGF0YSB2IHRhYnVsa8OhY2gnLCdUYWJ1bGthJywnxZjDoWRrxa8nLCcgJywnUG96bcSbbml0IHR5cCcpO2JyZWFrO2Nhc2Uic2siOiROPWFycmF5KCdOYW96YWo/JywnU8O6Ym9yIHNhIG5lcG9kYXJpbG8gbmFocmHFpS4nLCdNYXhpbcOhbG5hIHBvdm9sZW7DoSB2ZcS+a29zxaUgc8O6Ym9ydSBqZSAlc0IuJywnU8O6Ym9yIG5lZXhpc3R1amUuJywncHLDoXpkbmUnLCdvcmlnaW7DoWwnLCfFvWlhZG5lIHRhYnXEvmt5LicsJ0phenlrJywnVnlicmHFpScsJ1Byb3PDrW0gdnliZXJ0ZSBqZWRudSB6IGtvbmNvdmllayAlcy4nLCdTw7pib3IgZXhpc3R1amUuJywnVcW+w612YXRlxL5za8OpIHR5cHknLCfEjMOtc2xhJywnRMOhdHVtIGEgxI1hcycsJ1JlxaVhemNlJywnQmluw6FybmUnLCdTaWXFpScsJ0dlb21ldHJpYScsJ1pvem5hbXknLCdFZGl0b3InLCdQb3XFvsOtdmF0ZcS+JywnSGVzbG8nLCdQcmlobMOhc2nFpSBzYScsJ1RydmFsw6kgcHJpaGzDoXNlbmllJywnTm92w6EgcG9sb8W+a2EnLCdQb3NsZWRuw6Egc3Ryw6Fua2EnLGFycmF5KCclZCBiYWp0JywnJWQgYmFqdHknLCclZCBiYWp0b3YnKSwnJDYuJDQuJDEnLCdWeWjEvmFkYcWlJywna2Rla2/EvnZlaycsJ1pvdHJpZWRpxaUnLCdMaW1pdCcsJ0FrY2lhJywnVnlww61zYcWlJywnRS1tYWlsJywnT2Rvc2llbGF0ZcS+JywnUHJlZG1ldCcsJ1Zsb8W+acWlJywnUHLDrWxvaHknLCdPZG9zbGHFpScsYXJyYXkoJ0JvbCBvZG9zbGFuw70gJWQgZS1tYWlsLicsJ0JvbGkgb2Rvc2xhbsOpICVkIGUtbWFpbHkuJywnQm9sbyBvZG9zbGFuw71jaCAlZCBlLW1haWxvdi4nKSwndGVyYXonLCdISDpNTTpTUycsJ2QubS5bcnJycl0nLCdPZGhsw6FzacWlJywnbHRyJywnUmVzZW5kIFBPU1QgZGF0YT8nLCdTZXJ2ZXInLCdOZXBsYXRuw70gdG9rZW4gQ1NSRi4gT2RvxaFsaXRlIGZvcm11bMOhciB6bm92YS4nLCdPZGhsw6FzZW5pZSBwcmViZWhsbyB2IHBvcmlhZGt1LicsJ1Nlc3Npb24gcHJlbWVubsOpIG11c2lhIGJ5xaUgcG92b2xlbsOpLicsJ1Nlc3Npb24gdnlwcsWhYWxhLCBwcmlobMOhc3RlIHNhIHByb3PDrW0gem5vdmEuJywnTmVwbGF0bsOpIHByaWhsYXNvdmFjaWUgw7pkYWplLicsJ8W9aWFkbmUgcm96xaHDrXJlbmllJywnTmllIGplIGRvc3R1cG7DqSDFvmlhZG5lIHogcG9kcG9yb3ZhbsO9Y2ggcm96xaHDrXJlbsOtICglcykuJywnUHLDrWxpxaEgdmXEvmvDqSBQT1NUIGTDoXRhLiBabWVuxaFpdGUgZMOhdGEgYWxlYm8genbDvcWhdGUgaG9kbm90dSBrb25maWd1cmHEjWVqIGRpcmVrdMOtdnkgJXMuJywnUG9sb8W+a2EgYm9sYSB2eW1hemFuw6EuJywnUG9sb8W+a2EgYm9sYSBha3R1YWxpem92YW7DoS4nLCdQb2xvxb5rYSVzIGJvbGEgdmxvxb5lbsOhLicsJ1VwcmF2acWlJywnVWxvxb5pxaUnLCdVbG/FvmnFpSBhIHBva3JhxI1vdmHFpSB2IMO6cHJhdsOhY2gnLCdVbG/FvmnFpSBhIHZsb8W+acWlIMSPYWzFocOtJywnWm1hemHFpScsJyVkIHBvbG/FvmllayBib2xvIG92cGx5dm5lbsO9Y2guJywnRHZvamtsaWtuaXRlIG5hIHBvbMOtxI1rbywga3RvcsOpIGNoY2V0ZSB6bWVuacWlLicsYXJyYXkoJ0JvbCBpbXBvcnRvdmFuw70gJWQgesOhem5hbS4nLCdCb2xpIGltcG9ydG92YW7DqSAlZCB6w6F6bmFteS4nLCdCb2xvIGltcG9ydG92YW7DvWNoICVkIHrDoXpuYW1vdi4nKSwnVGFidcS+a3Ugc2EgbmVwb2RhcmlsbyB2eXDDrXNhxaUnLCfFvWlhZG5lIHJpYWRreS4nLCd1cHJhdmnFpScsJ1Z6xaVhaHknLCdQcmUgem1lbnUgdGVqdG8gaG9kbm90eSBwb3XFvml0ZSBvZGtheiB1cHJhdmnFpS4nLCdTdHLDoW5rYScsJ3Bvc2xlZG7DvScsYXJyYXkoJyVkIHJpYWRvaycsJyVkIHJpYWRreScsJyVkIHJpYWRrb3YnKSwnY2Vsw70gdsO9c2xlZG9rJywnS2xvbm92YcWlJywnRXhwb3J0JywnSW1wb3J0JywnVnloxL5hZGHFpSBkw6F0YSB2IHRhYnXEvmvDoWNoJywnVGFidcS+a2EnLCdSaWFka3knLCcgJywnTmVwbGF0bsOpIHNjaMOpbWEuJyk7YnJlYWs7Y2FzZSJubCI6JE49YXJyYXkoJ1dlZXQgdSBoZXQgemVrZXI/JywnT25tb2dlbGlqayBiZXN0YW5kIHRlIHVwbG9hZGVuLicsJ01heGltdW0gdG9lZ2VsYXRlbiBiZXN0YW5kc2dyb290dGUgaXMgJXNCLicsJ0Jlc3RhbmQgbmlldCBnZXZvbmRlbi4nLCdsZWVnJywnb3JpZ2luZWVsJywnR2VlbiB0YWJlbGxlbi4nLCdUYWFsJywnR2VicnVpaycsJ0dlYnJ1aWsgMSB2YW4gdm9sZ2VuZGUgZXh0ZW5zaWVzOiAlcy4nLCdCZXN0YW5kIGJlc3RhYXQgcmVlZHMuJywnR2VicnVpa2Vyc2dlZGVmaW5pw6tlcmRlIHR5cGVzJywnR2V0YWxsZW4nLCdEYXR1bSBlbiB0aWpkJywnVGVrc3QnLCdCaW5haXJlIGdlZ2V2ZW5zJywnTmV0d2VyaycsJ0dlb21ldHJpZScsJ0xpanN0ZW4nLCdFZGl0b3InLCdHZWJydWlrZXJzbmFhbScsJ1dhY2h0d29vcmQnLCdJbmxvZ2dlbicsJ0JsaWpmIGFhbmdlbWVsZCcsJ05pZXV3IGl0ZW0nLCdMYWF0c3RlIHBhZ2luYScsYXJyYXkoJyVkIGJ5dGUnLCclZCBieXRlcycpLCckNS0kMy0kMScsJ1pvZWtlbicsJ292ZXJhbCcsJ1NvcnRlcmVuJywnQmVwZXJrJywnQWN0aWVzJywnS2llcycsJ0UtbWFpbCcsJ1ZhbicsJ09uZGVyd2VycCcsJ1RvZXZvZWdlbicsJ0JpamxhZ2VuJywnVmVyemVuZGVuJyxhcnJheSgnJWQgZS1tYWlsIHZlcnpvbmRlbi4nLCclZCBlLW1haWxzIHZlcnpvbmRlbi4nKSwnbnUnLCdISDpNTTpTUycsJ2RkLW1tLVtqampqXScsJ1VpdGxvZ2dlbicsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/JywnU2VydmVyJywnT25nZWxkaWcgQ1NSRiB0b2tlbi4gVmVyc3R1dXIgaGV0IGZvcm11bGllciBvcG5pZXV3LicsJ1VpdGxvZ2dlbiBnZXNsYWFnZC4nLCdTZXNzaWVzIG1vZXRlbiBnZWFjdGl2ZWVyZCB6aWpuLicsJ1V3IHNlc3NpZSBpcyB2ZXJsb3Blbi4gR2VsaWV2ZSBvcG5pZXV3IGluIHRlIGxvZ2dlbi4nLCdPbmdlbGRpZ2UgbG9naW5nZWdldmVucy4nLCdHZWVuIGV4dGVuc2llJywnR2VlbiBnZWxkaWdlIFBIUCBleHRlbnNpZXMgYmVzY2hpa2JhYXIgKCVzKS4nLCdQT1NULWRhdGEgaXMgdGUgZ3Jvb3QuIFZlcmtsZWluIGRlIGhvZXZlZWxoZWlkIGRhdGEgb2YgdmVyaG9vZyBkZSAlcyBjb25maWd1cmF0aWUuJywnSXRlbSB2ZXJ3aWpkZXJkLicsJ0l0ZW0gYWFuZ2VwYXN0LicsJ0l0ZW0lcyB0b2VnZXZvZWdkLicsJ0Jld2VyaycsJ09wc2xhYW4nLCdPcHNsYWFuIGVuIHZlcmRlciBiZXdlcmtlbicsJ09wc2xhYW4sIGRhYXJuYSB0b2V2b2VnZW4nLCdWZXJ3aWpkZXJlbicsYXJyYXkoJyVkIGl0ZW0gYWFuZ2VwYXN0LicsJyVkIGl0ZW1zIGFhbmdlcGFzdC4nKSwnRHViYmVsa2xpayBvcCBlZW4gd2FhcmRlIG9tIGRlemUgdGUgYmV3ZXJrZW4uJyxhcnJheSgnJWQgcmlqIHdlcmQgZ2XDr21wb3J0ZWVyZC4nLCclZCByaWplbiB3ZXJkZW4gZ2XDr21wb3J0ZWVyZC4nKSwnT25tb2dlbGlqayB0YWJlbCB0ZSBzZWxlY3RlcmVuJywnR2VlbiByaWplbi4nLCdiZXdlcmsnLCdSZWxhdGllcycsJ0dlYnJ1aWsgZGUgbGluayAiYmV3ZXJrIiBvbSBkZXplIHdhYXJkZSB0ZSB3aWp6aWdlbi4nLCdQYWdpbmEnLCdsYWF0c3RlJyxhcnJheSgnJWQgcmlqJywnJWQgcmlqZW4nKSwndm9sbGVkaWcgcmVzdWx0YWF0JywnRHVwbGljZWVyJywnRXhwb3J0ZXJlbicsJ0ltcG9ydGVyZW4nLCdab2VrZW4gaW4gZGF0YWJhc2UnLCdUYWJlbCcsJ1JpamVuJywnLicsJ09uZ2VsZGlnIHNjaGVtYS4nKTticmVhaztjYXNlImVzIjokTj1hcnJheSgnRXN0w6Egc2VndXJvPycsJ05vIGVzIHBvc2libGUgaW1wb3J0YXIgYXJjaGl2by4nLCdUYW1hw7FvIG3DoXhpbW8gZGUgYXJjaGl2byBlcyAlc0IuJywnQXJjaGl2byBubyBleGlzdGUuJywnbmluZ8O6bm8nLCdvcmlnaW5hbCcsJ05vIGV4aXN0ZW4gdGFibGFzLicsJ0lkaW9tYScsJ1VzYXInLCdQb3IgZmF2b3IgdXNlIHVuYSBkZSBsYXMgZXh0ZW5zaW9uZXMgJXMuJywnQXJjaGl2byB5YSBleGlzdGUuJywnVGlwb3MgZGVmaW5pZG8gcG9yIGVsIHVzdWFyaW8nLCdOw7ptZXJvcycsJ0ZlY2hhIHkgaG9yYScsJ0NhZGVuYScsJ0JpbmFyaW8nLCdSZWQnLCdHZW9tZXRyw61hJywnTGlzdGFzJywnRWRpdG9yJywnVXN1YXJpbycsJ0NvbnRyYXNlw7FhJywnTG9naW4nLCdHdWFyZGFyIGNvbnRyYXNlw7FhJywnTnVldm8gUmVnaXN0cm8nLCdVbHRpbWEgcMOhZ2luYScsYXJyYXkoJyVkIGJ5dGUnLCclZCBieXRlcycpLCckNS8kMy8kMScsJ0NvbmRpY2nDs24nLCdkb25kZSBzZWEnLCdPcmRlbmFyJywnTGltaXQnLCdBY2Npw7NuJywnTW9zdHJhcicsJ0VtYWlsJywnRGUnLCdBc3VudG8nLCdBZ3JlZ2FyJywnQWRqdW50b3MnLCdFbnZpYXInLGFycmF5KCclZCBlbWFpbCBlbnZpYWRvLicsJyVkIGVtYWlscyBlbnZpYWRvcy4nKSwnYWhvcmEnLCdISDpNTTpTUycsJ2RkL21tL1thYWFhXScsJ0xvZ291dCcsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/JywnU2Vydmlkb3InLCdUb2tlbiBDU1JGIGludsOhbGlkby4gVnVlbHZhIGEgZW52aWFyIGxvcyBkYXRvcyBkZWwgZm9ybXVsYXJpby4nLCdTYWxpZGEgZXhpdG9zYS4nLCdEZWJlbiBlc3RhciBoYWJpbGl0YWRhcyBsYXMgc2VzaW9uZXMuJywnU2VzacOzbiBleHBpcmFkYSwgcG9yIGZhdm9yIGluZ3Jlc2Ugc3UgY2xhdmUgZGUgbnVldm8uJywnSWRlbnRpZmljYWNpb24gaW52w6FsaWRhLicsJ05vIGhheSBleHRlbnNpb24nLCdOaW5ndW5hIGRlIGxhcyBleHRlbnNpb25lcyBQSFAgc29wb3J0YWRhcyAoJXMpIGVzdMOhIGRpc3BvbmlibGUuJywnUE9TVCBkYXRhIGRlbWFzaWFkbyBncmFuZGUuIFJlZHV6Y2EgZWwgdGFtYcOxbyBvIGF1bWVudGUgbGEgZGlyZWN0aXZhIGRlIGNvbmZpZ3VyYWNpw7NuICVzLicsJ1JlZ2lzdHJvIGVsaW1pbmFkby4nLCdSZWdpc3RybyBtb2RpZmljYWRvLicsJ1JlZ2lzdHJvJXMgaW5zZXJ0YWRvLicsJ01vZGlmaWNhcicsJ0d1YXJkYXInLCdHdWFyZGFyIHkgY29udGludWFyIGVkaXRhbmRvJywnR3VhcmRhciBlIGluc2VydGFyIG90cm8nLCdFbGltaW5hcicsYXJyYXkoJyVkIMOtdGVtIGFmZWN0YWRvLicsJyVkIGl0ZW1lcyBhZmVjdGFkb3MuJyksJ0RvYmxlLWNsaWMgc29icmUgZWwgdmFsb3IgcGFyYSBlZGl0YXJsby4nLGFycmF5KCclZCByZWdpc3RybyBpbXBvcnRhZG8uJywnJWQgcmVnaXN0cm9zIGltcG9ydGFkb3MuJyksJ05vIGVzIHBvc2libGUgc2VsZWNjaW9uYXIgbGEgdGFibGEnLCdObyBleGlzdGVuIHJlZ2lzdHJvcy4nLCdtb2RpZmljYXInLCdSZWxhY2lvbmVzJywnVXRpbGljZSBlbCBlbmxhY2UgZGUgbW9kaWZpY2FyIHBhcmEgcmVhbGl6YXIgbG9zIGNhbWJpb3MuJywnUMOhZ2luYScsJ8O6bHRpbW8nLGFycmF5KCclZCByZWdpc3RybycsJyVkIHJlZ2lzdHJvcycpLCdyZXN1bHRhZG8gY29tcGxldG8nLCdDbG9uYXInLCdFeHBvcnRhcicsJ0ltcG9ydGFyJywnQnVzY2FyIGRhdG9zIGVuIHRhYmxhcycsJ1RhYmxhJywnUmVnaXN0cm9zJywnICcsJ0VzcXVlbWEgaW52w6FsaWRvLicpO2JyZWFrO2Nhc2UiZGUiOiROPWFycmF5KCdTaW5kIFNpZSBzaWNoZXIgPycsJ0hvY2hsYWRlbiB2b24gRGF0ZWkgZmVobGdlc2NobGFnZW4uJywnTWF4aW1hbCBlcmxhdWJ0ZSBEYXRlaWdyw7Zzc2UgaXN0ICVzQi4nLCdEYXRlaSBleGlzdGllcnQgbmljaHQuJywnbGVlcicsJ09yaWdpbmFsJywnS2VpbmUgVGFiZWxsZW4uJywnU3ByYWNoZScsJ0JlbnV0enVuZycsJ0JpdHRlIGVpbmVuIGRlciBEYXRlaXR5cGVuICVzIGJlbnV0emVuLicsJ0RhdGVpIGV4aXN0aWVydCBzY2hvbi4nLCdCZW51dHplci1kZWZpbmllcnRlIFR5cGVuJywnWmFobGVuJywnRGF0dW0gb2RlciBaZWl0JywnWmVpY2hlbmtldHRlbicsJ0JpbsOkcicsJ05ldHp3ZXJrJywnR2VvbWV0cmllJywnTGlzdGVuJywnRWRpdG9yJywnQmVudXR6ZXInLCdQYXNzd29ydCcsJ0xvZ2luJywnUGFzc3dvcnQgc3BlaWNoZXJuJywnTmV1ZXIgRGF0ZW5zYXR6JywnTGV0enRlIFNlaXRlJyxhcnJheSgnJWQgQnl0ZScsJyVkIEJ5dGVzJyksJyQ2LiQ0LiQxJywnU3VjaGVuJywnYmVsaWViaWcnLCdPcmRuZW4nLCdCZWdyZW56dW5nJywnQWt0aW9uJywnRGF0ZW4gemVpZ2VuIHZvbicsJ0UtbWFpbCcsJ1ZvbicsJ0JldHJlZmYnLCdIaW56dWbDvGdlbicsJ0FuaMOkbmdlJywnQWJzY2hpY2tlbicsYXJyYXkoJyVkIGUtbWFpbCBhYmdlc2NoaWNrdC4nLCclZCBlLW1haWxzIGFiZ2VzY2hpY2t0LicpLCdqZXR6dCcsJ0hIOk1NOlNTJywndC5tLltqampqXScsJ0FibWVsZGVuJywnbHRyJywnUmVzZW5kIFBPU1QgZGF0YT8nLCdTZXJ2ZXInLCdDU1JGIFRva2VuIHVuZ8O8bHRpZy4gQml0dGUgZGllIEZvcm11bGFyZGF0ZW4gZXJuZXV0IGFic2NoaWNrZW4uJywnQWJtZWxkdW5nIGVyZm9sZ3JlaWNoLicsJ1NpdHp1bmdlbiBtw7xzc2VuIGFrdGl2aWVydCBzZWluLicsJ1NpdHp1bmdzZGF1ZXIgYWJnZWxhdWZlbiwgYml0dGUgZXJuZXV0IGFubWVsZGVuLicsJ1VuZ8O8bHRpZ2UgQW5tZWxkZS1JbmZvcm1hdGlvbmVuLicsJ0tlaW5lIEVyd2VpdGVydW5nZW4gaW5zdGFsbGllcnQnLCdLZWluZSBkZXIgdW50ZXJzdMO8dHp0ZW4gUEhQLUVyd2VpdGVydW5nZW4gKCVzKSBpc3Qgdm9yaGFuZGVuLicsJ1BPU1QgZGF0YSB6dSBncm9zcy4gUmVkdXppZXJlbiBTaWUgZGllIEdyw7Zzc2Ugb2RlciB2ZXJncsO2c3Nlcm4gU2llIGRlbiBXZXJ0ICVzIGluIGRlciBLb25maWd1cmF0aW9uLicsJ0RhdGVuc2F0eiBnZWzDtnNjaHQuJywnRGF0ZW5zYXR6IGdlw6RuZGVydC4nLCdEYXRlbnNhdHolcyBoaW56dWdlZsO8Z3QuJywnw4RuZGVybicsJ1NwZWljaGVybicsJ1NwZWljaGVybiB1bmQgd2VpdGVyIGJlYXJiZWl0ZW4nLCdTcGVpY2hlcm4gdW5kIG7DpGNoc3RlbiBoaW56dWbDvGdlbicsJ0VudGZlcm5lbicsJyVkIEFydGlrZWwgYmV0cm9mZmVuLicsJ0RvcHBlbGtsaWNrIHp1bSBCZWFyYmVpdGVuIGRlcyBXZXJ0ZXMuJyxhcnJheSgnJWQgRGF0ZW5zYXR6IGltcG9ydGllcnQuJywnJWQgRGF0ZW5zw6R0emUgd3VyZGVuIGltcG9ydGllcnQuJyksJ0F1c3dhaGwgZGVyIFRhYmVsbGUgZmVobGdlc2NobGFnZW4nLCdLZWluZSBEYXRlbi4nLCfDpG5kZXJuJywnUmVsYXRpb25lbicsJ0JlbnV0emVuIFNpZSBkZW4gTGluayB6dW0gZWRpdGllcmVuIGRpZXNlcyBXZXJ0ZXMuJywnU2VpdGUnLCdsZXR6dGUnLGFycmF5KCclZCBEYXRlbnNhdHonLCclZCBEYXRlbnPDpHR6ZScpLCdHZXNhbXRlcmdlYm5pcycsJ0tsb25lbicsJ0V4cG9ydGllcmVuJywnSW1wb3J0aWVyZW4nLCdTdWNoZSBpbiBUYWJlbGxlbicsJ1RhYmVsbGUnLCdEYXRlbnPDpHR6ZScsJyAnLCdTY2hlbWEgbmljaHQgZ8O8bHRpZy4nKTticmVhaztjYXNlImZyIjokTj1hcnJheSgnw4p0ZXMtdm91cyBjZXJ0YWluID8nLCdJbXBvc3NpYmxlIGRcJ2ltcG9ydGVyIGxlIGZpY2hpZXIuJywnTGEgdGFpbGxlIG1heGltYWxlIGRlcyBmaWNoaWVycyBlc3QgZGUgJXNCLicsJ0xlIGZpY2hpZXIgZXN0IGludHJvdXZhYmxlLicsJ3ZpZGUnLCdvcmlnaW5hbCcsJ0F1Y3VuZSB0YWJsZS4nLCdMYW5ndWUnLCdVdGlsaXNlcicsJ1ZldWlsbGV6IHV0aWxpc2VyIGxcJ3VuZSBkZXMgZXh0ZW5zaW9ucyAlcy4nLCdMZSBmaWNoaWVyIGV4aXN0ZS4nLCdUeXBlcyB1dGlsaXNhdGV1cicsJ05vbWJyZXMnLCdEYXRlIGV0IGhldXJlJywnQ2hhw65uZXMnLCdCaW5haXJlcycsJ1LDqXNlYXUnLCdHw6lvbcOpdHJpZScsJ0xpc3RlcycsJ0VkaXRldXInLCdVdGlsaXNhdGV1cicsJ01vdCBkZSBwYXNzZScsJ0F1dGhlbnRpZmljYXRpb24nLCdBdXRoZW50aWZpY2F0aW9uIHBlcm1hbmVudGUnLCdOb3V2ZWwgw6lsw6ltZW50JywnRGVybmnDqHJlIHBhZ2UnLGFycmF5KCclZCBvY3RldCcsJyVkIG9jdGV0cycpLCckNS8kMy8kMScsJ1JlY2hlcmNoZXInLCduXCdpbXBvcnRlIG/DuScsJ1RyaWVyJywnTGltaXRlJywnQWN0aW9uJywnU2VsZWN0JywnQ291cnJpZWwnLCdEZScsJ1N1amV0JywnSW5zw6lyZXInLCdQacOoY2VzIGpvaW50ZXMnLCdFbnZveWVyJyxhcnJheSgnJWQgbWVzc2FnZSBhIMOpdMOpIGVudm95w6kuJywnJWQgbWVzc2FnZXMgb250IMOpdMOpIGVudm95w6lzLicpLCdtYWludGVuYW50JywnSEg6TU06U1MnLCdqai9tbS9bYWFhYV0nLCdEw6ljb25uZXhpb24nLCdsdHInLCdSZXNlbmQgUE9TVCBkYXRhPycsJ1NlcnZldXInLCdUb2tlbiBDU1JGIGludmFsaWRlLiBWZXVpbGxleiByw6llbnZveWVyIGxlIGZvcm11bGFpcmUuJywnQXUgcmV2b2lyICEnLCdWZXVpbGxleiBhY3RpdmVyIGxlcyBzZXNzaW9ucy4nLCdTZXNzaW9uIGV4cGlyw6llLCB2ZXVpbGxleiB2b3VzIGF1dGhlbnRpZmllciDDoCBub3V2ZWF1LicsJ0F1dGhlbnRpZmljYXRpb24gw6ljaG91w6llLicsJ0V4dGVuc2lvbiBpbnRyb3V2YWJsZScsJ0F1Y3VuZSBkZXMgZXh0ZW5zaW9ucyBQSFAgc3VwcG9ydMOpZXMgKCVzKSBuXCdlc3QgZGlzcG9uaWJsZS4nLCdEb25uw6llcyBQT1NUIHRyb3AgZ3JhbmRlcy4gUsOpZHVpc2V6IGxhIHRhaWxsZSBkZXMgZG9ubsOpZXMgb3UgYXVnbWVudGV6IGxhIHZhbGV1ciBkZSAlcyBkYW5zIGxhIGNvbmZpZ3VyYXRpb24gZGUgUEhQLicsJ0xcJ8OpbMOpbWVudCBhIMOpdMOpIHN1cHByaW3DqS4nLCdMXCfDqWzDqW1lbnQgYSDDqXTDqSBtb2RpZmnDqS4nLCdMXCfDqWzDqW1lbnQlcyBhIMOpdMOpIGluc8OpcsOpLicsJ01vZGlmaWVyJywnU2F1dmVnYXJkZXInLCdTYXV2ZWdhcmRlciBldCBjb250aW51ZXIgbFwnw6lkaXRpb24nLCdTYXV2ZWdhcmRlciBldCBpbnPDqXJlciBsZSBwcm9jaGFpbicsJ0VmZmFjZXInLGFycmF5KCclZCDDqWzDqW1lbnQgYSDDqXTDqSBtb2RpZmnDqS4nLCclZCDDqWzDqW1lbnRzIG9udCDDqXTDqSBtb2RpZmnDqXMuJyksJ0RvdWJsZS1jbGlxdWV6IHN1ciB1bmUgdmFsZXVyIHBvdXIgbGEgbW9kaWZpZXIuJyxhcnJheSgnJWQgbGlnbmUgYSDDqXTDqSBpbXBvcnTDqWUuJywnJWQgbGlnbmVzIG9udCDDqXTDqSBpbXBvcnTDqWVzLicpLCdJbXBvc3NpYmxlIGRlIHPDqWxlY3Rpb25uZXIgbGEgdGFibGUnLCdBdWN1biByw6lzdWx0YXQuJywnbW9kaWZpZXInLCdSZWxhdGlvbnMnLCdVdGlsaXNleiBsZSBsaWVuICJtb2RpZmllciIgcG91ciBtb2RpZmllciBjZXR0ZSB2YWxldXIuJywnUGFnZScsJ2Rlcm5pw6hyZScsYXJyYXkoJyVkIGxpZ25lJywnJWQgbGlnbmVzJyksJ3LDqXN1bHRhdCBlbnRpZXInLCdDbG9uZXInLCdFeHBvcnRlcicsJ0ltcG9ydGVyJywnUmVjaGVyY2hlciBkYW5zIGxlcyB0YWJsZXMnLCdUYWJsZScsJ0xpZ25lcycsJywnLCdTY2jDqW1hIGludmFsaWRlLicpO2JyZWFrO2Nhc2UiaXQiOiROPWFycmF5KCdTaWN1cm8/JywnQ2FyaWNhbWVudG8gZGVsIGZpbGUgbm9uIHJpdXNjaXRvLicsJ0xhIGRpbWVuc2lvbmUgbWFzc2ltYSBkZWwgZmlsZSDDqCAlc0IuJywnSWwgZmlsZSBub24gZXNpc3RlLicsJ3Z1b3RvJywnb3JpZ2luYWxlJywnTm8gdGFiZWxsZS4nLCdMaW5ndWEnLCdVc2EnLCdVc2EgdW5hIGRlbGxlIGVzdGVuc2lvbmkgJXMuJywnSWwgZmlsZSBlc2lzdGUgZ2nDoC4nLCdUaXBpIGRlZmluaXRpIGRhbGxcJ3V0ZW50ZScsJ051bWVyaScsJ0RhdGEgZSBvcmEnLCdTdHJpbmdoZScsJ0JpbmFyaScsJ1JldGUnLCdHZW9tZXRyaWEnLCdMaXN0ZScsJ0VkaXRvcicsJ1V0ZW50ZScsJ1Bhc3N3b3JkJywnQXV0ZW50aWNhemlvbmUnLCdMb2dpbiBwZXJtYW5lbnRlJywnTnVvdm8gZWxlbWVudG8nLCdVbHRpbWEgcGFnaW5hJyxhcnJheSgnJWQgYnl0ZScsJyVkIGJ5dGVzJyksJyQ1LyQzLyQxJywnQ2VyY2EnLCdvdnVucXVlJywnT3JkaW5hJywnTGltaXRlJywnQXppb25lJywnU2VsZXppb25hJywnRS1tYWlsJywnRGEnLCdPZ2dldHRvJywnSW5zZXJpc2NpJywnQWxsZWdhdGknLCdJbnZpYScsYXJyYXkoJyVkIGUtbWFpbCBpbnZpYXRhLicsJyVkIGUtbWFpbCBpbnZpYXRlLicpLCdhZGVzc28nLCdISDpNTTpTUycsJ2RkL21tL1t5eXl5XScsJ0VzY2knLCdsdHInLCdSZXNlbmQgUE9TVCBkYXRhPycsJ1NlcnZlcicsJ1Rva2VuIENTUkYgbm9uIHZhbGlkby4gUmVpbnZpYSBsYSByaWNoaWVzdGEuJywnVXNjaXRhIGVmZmV0dHVhdGEgY29uIHN1Y2Nlc3NvLicsJ0xlIHNlc3Npb25pIGRldm9ubyBlc3NlcmUgYWJpbGl0YXRlLicsJ1Nlc3Npb25lIHNjYWR1dGEsIGF1dGVudGljYXJzaSBkaSBudW92by4nLCdDcmVkZW56aWFsaSBub24gdmFsaWRlLicsJ0VzdGVuc2lvbmkgbm9uIHByZXNlbnRpJywnTmVzc3VuYSBkZWxsZSBlc3RlbnNpb25pIFBIUCBzdXBwb3J0YXRlICglcykgZGlzcG9uaWJpbGUuJywnVHJvcHBpIGRhdGkgdmlhIFBPU1QuIFJpZHVycmUgaSBkYXRpIG8gYXVtZW50YXJlIGxhIGRpcmV0dGl2YSBkaSBjb25maWd1cmF6aW9uZSAlcy4nLCdFbGVtZW50byBlbGltaW5hdG8uJywnRWxlbWVudG8gYWdnaW9ybmF0by4nLCdFbGVtZW50byVzIGluc2VyaXRvLicsJ01vZGlmaWNhJywnU2FsdmEnLCdTYWx2YSBlIGNvbnRpbnVhJywnU2FsdmEgZSBpbnNlcmlzY2kgdW4gYWx0cm8nLCdFbGltaW5hJyxhcnJheSgnSWwgcmlzdWx0YXRvIGNvbnNpc3RlIGluICVkIGVsZW1lbnRvLicsJ0lsIHJpc3VsdGF0byBjb25zaXN0ZSBpbiAlZCBlbGVtZW50aS4nKSwnRmFpIGRvcHBpbyBjbGljayBzdSB1biB2YWxvcmUgcGVyIG1vZGlmaWNhcmxvLicsYXJyYXkoJyVkIHJpZ2EgaW1wb3J0YXRhLicsJyVkIHJpZ2hlIGltcG9ydGF0ZS4nKSwnU2VsZXppb25lIGRlbGxhIHRhYmVsbGEgbm9uIHJpdXNjaXRhJywnTmVzc3VuYSByaWdhLicsJ21vZGlmaWNhJywnUmVsYXppb25pJywnVXNhIGlsIGxpbmsgbW9kaWZpY2EgcGVyIG1vZGlmaWNhcmUgcXVlc3RvIHZhbG9yZS4nLCdQYWdpbmEnLCd1bHRpbWEnLGFycmF5KCclZCByaWdhJywnJWQgcmlnaGUnKSwnaW50ZXJvIHJpc3VsdGF0bycsJ0Nsb25hJywnRXNwb3J0YScsJ0ltcG9ydGEnLCdDZXJjYSBuZWxsZSB0YWJlbGxlJywnVGFiZWxsYScsJ1JpZ2hlJywnLicsJ1NjaGVtYSBub24gdmFsaWRvLicpO2JyZWFrO2Nhc2UiZXQiOiROPWFycmF5KCdLYXMgb2xlZCBraW5kZWw/JywnRmFpbGkgw7xsZXNsYWFkaW1pbmUgcG9sZSB2w7VpbWFsaWsuJywnTWFrc2ltYWFsbmUgZmFpbGlzdXVydXMgJXNCLicsJ0ZhaWxpIGVpIGxlaXR1ZC4nLCd0w7xoaScsJ29yaWdpbmFhbCcsJ1RhYmVsZWlkIGVpIGxlaXR1ZC4nLCdLZWVsJywnS2FzdXRhJywnUGFsdW4ga2FzdXRhIMO8aHQgbGFpZW5kdXN0ZXN0ICVzLicsJ0ZhaWwganViYSBla3Npc3RlZXJpYi4nLCdLYXN1dGFqYXTDvMO8YmlkJywnTnVtYnJpbGlzZWQnLCdLdXVww6RldiBqYSBrZWxsYWFlZycsJ1Rla3N0aWQnLCdCaW5hYXInLCdWw7VyayAobmV0d29yayknLCdHZW9tZWV0cmlhJywnTGlzdGlkJywnUmVkYWt0b3InLCdLYXN1dGFqYW5pbWknLCdQYXJvb2wnLCdMb2dpIHNpc3NlJywnSsOkdGEgbWluZCBtZWVsZGUnLCdMaXNhIGtpcmplJywnVmlpbWFuZSBsZWhla8O8bGcnLGFycmF5KCclZCBiYWl0JywnJWQgYmFpdGknKSwnJDYuJDQuJDEnLCdPdHNpJywndmFoZXQgcG9sZScsJ1NvcnRlZXJpJywnUGlpcmEnLCdUZWdldnVzJywnS3V2YScsJ0UtcG9zdCcsJ0tlbGxlbHQnLCdQZWFsa2lyaScsJ1Npc2VzdGEnLCdNYW51c2VkJywnU2FhZGEnLCdTYWFkZXR1ZCBraXJqdTogJWQuJywnbsO8w7xkJywnSEg6TU06U1MnLCdkLm0uW3l5eXldJywnTG9naSB2w6RsamEnLCdsdHInLCdSZXNlbmQgUE9TVCBkYXRhPycsJ1NlcnZlcicsJ1NvYmltYXR1IENTUkYsIHBhbHVuIHBvc3RpdGFnZSB2b3JtIHV1ZXN0aS4nLCdWw6RsamFsb2dpbWluZSDDtW5uZXN0dXMuJywnU2Vzc2lvb25pZCBwZWF2YWQgb2xlbWEgbHViYXR1ZC4nLCdTZXNzaW9vbiBvbiBhZWd1bnVkLCBwYWx1biBsb2dpZ2UgdXVlc3RpIHNpc3NlLicsJ0ViYWtvcnJla3RzZWQgYW5kbWVkLicsJ0VpIGxlaXR1ZCBsYWllbmR1c3QnLCdTZXJ2ZXJpcyBwb2xlIMO8aHRlZ2kgdG9ldGF0dWQgUEhQIGxhaWVuZHVzdGVzdCAoJXMpLicsJ1BPU1QtYW5kbWV0ZSBtYWh0IG9uIGxpaWFsdCBzdXVyLiBQYWx1biB2w6RoZW5kYWdlIGFuZG1laWQgdsO1aSBzdXVyZW5kYWdlICVzIHBocC1zZWFkZXQuJywnS3VzdHV0YW1pbmUgw7VubmVzdHVzLicsJ1V1ZW5kYW1pbmUgw7VubmVzdHVzLicsJ0tpcmplJXMgb24gZWR1a2FsdCBsaXNhdHVkLicsJ011dWRhJywnU2FsdmVzdGEnLCdTYWx2ZXN0YSBqYSBqw6R0a2EgbXV1dG1pc3QnLCdTYWx2ZXN0YSBqYSBsaXNhIGrDpHJnbWluZScsJ0t1c3R1dGEnLCdNw7VqdXRhdHVkIGtpcmplaWQ6ICVkLicsJ1bDpMOkcnR1c2UgbXV1dG1pc2VrcyB0b3BlbHQta2xpa2kgc2VsbGVsLicsJ0ltcG9yZGl0aSAlZCByaWRhLicsJ1RhYmVsaSB2YWxpbWluZSBlYmHDtW5uZXN0dXMnLCdTaXNzZWthbmRlZCBwdXVkdXZhZC4nLCdtdXVkYScsJ1Nlb3NlZCcsJ1bDpMOkcnR1c2UgbXV1dG1pc2VrcyBrYXN1dGEgbXV1dG1pc2xpbmtpLicsJ0xlaGVrw7xsZycsJ3ZpaW1hbmUnLCclZCByaWRhJywnVMOkaWVsaWt1ZCB0dWxlbXVzZWQnLCdLbG9vbicsJ0Vrc3BvcmRpJywnSW1wb3JkaScsJ090c2kga29ndSBhbmRtZWJhYXNpc3QnLCdUYWJlbCcsJ1JpZHUnLCcsJywnU29iaW1hdHUgc2tlZW1hLicpO2JyZWFrO2Nhc2UiaHUiOiROPWFycmF5KCdCaXp0b3MgYmVubmU/JywnTmVtIHR1ZG9tIGZlbHTDtmx0ZW5pIGEgZsOhamx0LicsJ0EgbWF4aW3DoWxpcyBmw6FqbG3DqXJldCAlcyBCLicsJ0EgZsOhamwgbmVtIGzDqXRlemlrLicsJ8O8cmVzJywnZXJlZGV0aScsJ05pbmNzIHTDoWJsYS4nLCdOeWVsdicsJ0hhc3puw6FsJywnSGFzem7DoWxqYSBhKHopICVzIGtpdGVyamVzenTDqXN0LicsJ0EgZsOhamwgbMOpdGV6aWsuJywnRmVsaGFzem7DoWzDs2kgdMOtcHVzJywnU3rDoW0nLCdEw6F0dW0gw6lzIGlkxZEnLCdTesO2dmVnJywnQmluw6FyaXMnLCdIw6Fsw7N6YXQnLCdHZW9tZXRyaWEnLCdMaXN0YScsJ1N6ZXJrZXN6dMWRJywnRmVsaGFzem7DoWzDsycsJ0plbHN6w7MnLCdCZWzDqXDDqXMnLCdFbWzDqWtlenogcsOhbScsJ8OaaiB0w6l0ZWwnLCdVdG9sc8OzIG9sZGFsJyxhcnJheSgnJWQgYsOhanQnLCclZCBiw6FqdCcsJyVkIGLDoWp0JyksJyQ2LiQ0LiQxJywnS2VyZXPDqXMnLCdiw6FyaG9sJywnU29yYmEgcmVuZGV6w6lzJywna29ybMOhdCcsJ03FsXZlbGV0JywnS2l2w6FsYXN6dCcsJ0UtbWFpbCcsJ0ZlbGFkw7MnLCdUw6FyZ3knLCdCZXN6w7pyJywnQ3NhdG9sbcOhbnknLCdLw7xsZMOpcycsYXJyYXkoJyVkIGUtbWFpbCBlbGvDvGxkdmUuJywnJWQgZS1tYWlsIGVsa8O8bGR2ZS4nLCclZCBlLW1haWwgZWxrw7xsZHZlLicpLCdtb3N0JywnSEg6TU06U1MnLCdbeXl5eV0ubS5kJywnS2lsw6lww6lzJywnbHRyJywnUmVzZW5kIFBPU1QgZGF0YT8nLCdTemVydmVyJywnw4lydsOpbnl0ZWxlbiBDU1JGIGF6b25vc8OtdMOzLiBLw7xsZGQgw7pqcmEgYXogxbFybGFwb3QuJywnU2lrZXJlcyBraWzDqXDDqXMuJywnQSBtdW5rYW1lbmV0ZWtuZWsgKHNlc3Npb24pIGVuZ2Vkw6lseWV6dmUga2VsbCBsZW5uaWUuJywnTXVua2FtZW5ldCBsZWrDoXJ0LCBqZWxlbnRrZXp6IGJlIMO6anJhLicsJ8OJcnbDqW55dGVsZW4gYWRhdG9rLicsJ05pbmNzIGtpdGVyamVzenTDqXMnLCdOaW5jcyBlZ3kgZWzDqXJoZXTFkSB0w6Ftb2dhdG90dCBQSFAga2l0ZXJqZXN6dMOpcyAoJXMpIHNlbS4nLCdUw7psIHNvayBhIFBPU1QgYWRhdCEgQ3PDtmtrZW50c2QgYXogYWRhdCBtw6lyZXTDqXQsIHZhZ3kgbsO2dmVsZCBhICVzIGJlw6FsbMOtdMOhc3QuJywnQSB0w6l0ZWwgdMO2csO2bHZlLicsJ0EgdMOpdGVsIGZyaXNzw610dmUuJywnJXMgdMOpdGVsIGJlc3rDunJ2YS4nLCdTemVya2VzenQnLCdNZW50w6lzJywnTWVudMOpcyDDqXMgc3plcmtlc3p0w6lzIGZvbHl0YXTDoXNhJywnTWVudMOpcyDDqXMgw7pqYXQgYmVzesO6cicsJ1TDtnJsw6lzJyxhcnJheSgnJWQgdMOpdGVsIMOpcmludGV0dC4nLCclZCB0w6l0ZWwgw6lyaW50ZXR0LicsJyVkIHTDqXRlbCDDqXJpbnRldHQuJyksJ0thdHRpbnRzIGvDqXRzemVyIGF6IMOpcnTDqWtyZSBhIHN6ZXJrZXN6dMOpc2hlei4nLGFycmF5KCclZCBzb3IgaW1wb3J0w6FsdmEuJywnJWQgc29yIGltcG9ydMOhbHZhLicsJyVkIHNvciBpbXBvcnTDoWx2YS4nKSwnTmVtIHR1ZG9tIGtpdsOhbGFzenRhbmkgYSB0w6FibMOhdCcsJ05pbmNzIG1lZ2plbGVuw610aGV0xZEgZXJlZG3DqW55LicsJ3N6ZXJrZXN6dCcsJ1JlbMOhY2nDsycsJ0hhc3puw6FsZCBhIHN6ZXJrZXN6dMOpcyBoaXZhdGtvesOhc3QgZXplbiDDqXJ0w6lrIG3Ds2Rvc8OtdMOhc8OhaG96LicsJ29sZGFsJywndXRvbGrDoXJhJyxhcnJheSgnJWQgc29yJywnJWQgc29yJywnJWQgc29yJyksJ8O2c3N6ZXMgZXJlZG3DqW55dCBtdXRhdMOhc2EnLCdLbMOzbm96JywnRXhwb3J0JywnSW1wb3J0w6Fsw6FzJywnS2VyZXPDqXMgYSB0w6FibMOha2JhbicsJ1TDoWJsYScsJ09zemxvcCcsJyAnLCfDiXJ2w6lueXRlbGVuIHPDqW1hLicpO2JyZWFrO2Nhc2UicGwiOiROPWFycmF5KCdDenkgamVzdGXFmyBwZXdpZW4/JywnV2dyYW5pZSBwbGlrdSBiecWCbyBuaWVtb8W8bGl3ZS4nLCdNYWtzeW1hbG5hIHdpZWxrb8WbxIcgcGxpa3UgdG8gJXNCLicsJ1BsaWsgbmllIGlzdG5pZWplLicsJ3B1c3RlJywnYmV6IHptaWFuJywnQnJhayB0YWJlbC4nLCdKxJl6eWsnLCdXeWJpZXJ6JywnUHJvc3rEmSB1xbx5xIcgamVkbmVnbyB6IHJvenN6ZXJ6ZcWEOiAlcy4nLCdQbGlrIGp1xbwgaXN0bmllamUuJywnVHlweSB1xbx5dGtvd25pa2EnLCdOdW1lcnljem5lJywnRGF0YSBpIGN6YXMnLCdUZWtzdG93ZScsJ0JpbmFybmUnLCdTaWXEhycsJ0dlb21ldHJpYScsJ0xpc3R5JywnRWR5dG9yJywnVcW8eXRrb3duaWsnLCdIYXPFgm8nLCdaYWxvZ3VqIHNpxJknLCdaYXBhbWnEmXRhaiBzZXNqxJknLCdOb3d5IHJla29yZCcsJ09zdGF0bmlhIHN0cm9uYScsYXJyYXkoJyVkIGJhanQnLCclZCBiYWp0eScsJyVkIGJhanTDs3cnKSwnJDYuJDQuJDEnLCdTenVrYWonLCdnZHppZWtvbHdpZWsnLCdTb3J0dWonLCdMaW1pdCcsJ0N6eW5ub8WbxIcnLCdwb2thxbwnLCdFLW1haWwnLCdOYWRhd2NhJywnVGVtYXQnLCdEb2RhaicsJ1phxYLEhWN6bmlraScsJ1d5xZtsaWonLGFycmF5KCdXeXPFgmFubyAlZCBlLW1haWwuJywnV3lzxYJhbm8gJWQgZS1tYWlsZS4nLCdXeXPFgmFubyAlZCBlLW1haWxpLicpLCd0ZXJheicsJ0hIOk1NOlNTJywnZC5tLltycnJyXScsJ1d5bG9ndWonLCdsdHInLCdSZXNlbmQgUE9TVCBkYXRhPycsJ1NlcndlcicsJ05pZXByYXdpZMWCb3d5IHRva2VuIENTUkYuIFNwcsOzYnVqIHd5c8WCYcSHIGZvcm11bGFyeiBwb25vd25pZS4nLCdXeWxvZ293YW5vIHBvbXnFm2xuaWUuJywnV3ltYWdhbmEgamVzdCBvYnPFgnVnYSBzZXNqaSB3IFBIUC4nLCdTZXNqYSB3eWdhc8WCYSwgemFsb2d1aiBzacSZIHBvbm93bmllLicsJ05pZXByYXdpZMWCb3dlIGRhbmUgbG9nb3dhbmlhLicsJ0JyYWsgcm96c3plcnplbmlhJywnxbthZG5lIHogcm96c3plcnplxYQgUEhQIHVtb8W8bGl3aWFqxIVjeWNoIHBvxYLEhWN6ZW5pZSBzacSZIHogYmF6xIUgZGFueWNoICglcykgbmllIGplc3QgZG9zdMSZcG5lLicsJ1ByemVzxYJhbm8gemJ5dCBkdcW8byBkYW55Y2guIFptbmllanN6IG9iasSZdG/Fm8SHIGRhbnljaCBsdWIgendpxJlrc3ogem1pZW5uxIUga29uZmlndXJhY3lqbsSFICVzLicsJ1Jla29yZCB6b3N0YcWCIHVzdW5pxJl0eS4nLCdSZWtvcmQgem9zdGHFgiB6YWt0dWFsaXpvd2FueS4nLCdSZWtvcmQlcyB6b3N0YcWCIGRvZGFueS4nLCdFZHl0dWonLCdaYXBpc3ogem1pYW55JywnWmFwaXN6IGkga29udHludXVqIGVkeWNqxJknLCdaYXBpc3ogaSBkb2RhaiBuYXN0xJlwbnknLCdVc3XFhCcsYXJyYXkoJ1ptaWVuaW9ubyAlZCByZWtvcmQuJywnWm1pZW5pb25vICVkIHJla29yZHkuJywnWm1pZW5pb25vICVkIHJla29yZMOzdy4nKSwnS2xpa25paiBwb2R3w7NqbmllIHdhcnRvxZvEhywgYWJ5IGrEhSBlZHl0b3dhxIcuJyxhcnJheSgnJWQgcmVrb3JkIHpvc3RhxYIgemFpbXBvcnRvd2FueS4nLCclZCByZWtvcmR5IHpvc3RhxYJ5IHphaW1wb3J0b3dhbmUuJywnJWQgcmVrb3Jkw7N3IHpvc3RhxYJvIHphaW1wb3J0b3dhbnljaC4nKSwnTmllIHVkYcWCbyBzacSZIHBvYnJhxIcgZGFueWNoIHogdGFiZWxpJywnQnJhayByZWtvcmTDs3cuJywnZWR5dHVqJywnUmVsYWNqZScsJ1XFvHlqIGxpbmt1IGVkeWNqaSBhYnkgem1pZW5pxIcgdMSZIHdhcnRvxZvEhy4nLCdTdHJvbmEnLCdvc3RhdG5pJyxhcnJheSgnJWQgcmVrb3JkJywnJWQgcmVrb3JkeScsJyVkIHJla29yZMOzdycpLCd3eWJpZXJ6IHdzenlzdGtpZScsJ0R1cGxpa3VqJywnRWtzcG9ydCcsJ0ltcG9ydCcsJ1d5c3p1a2FqIHdlIHdzenlzdGtpY2ggdGFiZWxhY2gnLCdUYWJlbGEnLCdMaWN6YmEgcmVrb3Jkw7N3JywnICcsJ1ptaWXFhCB0eXAnKTticmVhaztjYXNlImNhIjokTj1hcnJheSgnRXN0w6BzIHNlZ3VyPycsJ0ltcG9zc2libGUgYWRqdW50YXIgZWwgZml0eGVyLicsJ0xhIG1pZGEgbcOgeGltYSBwZXJtZXNhIGRlbCBmaXR4ZXIgw6lzIGRlICVzQi4nLCdFbCBmaXR4ZXIgbm8gZXhpc3RlaXguJywnYnVpdCcsJ29yaWdpbmFsJywnTm8gaGkgaGEgY2FwIHRhdWxhLicsJ0lkaW9tYScsJ1V0aWxpdHphJywnU2kgdXMgcGxhdSwgdXRpbGl0emEgdW5hIGRlIGxlcyBleHRlbnNpb25zICVzLicsJ0VsIGZpdHhlciBqYSBleGlzdGVpeC4nLCdUaXB1cyBkZSBsXCd1c3VhcmknLCdOb21icmVzJywnRGF0YSBpIGhvcmEnLCdDYWRlbmVzJywnQmluYXJpJywnWGFyeGEnLCdHZW9tZXRyaWEnLCdMbGlzdGVzJywnRWRpdG9yJywnTm9tIGRcJ3VzdWFyaScsJ0NvbnRyYXNlbnlhJywnSW5pY2lhIGxhIHNlc3Npw7MnLCdTZXNzacOzIHBlcm1hbmVudCcsJ05vdSBlbGVtZW50JywnRGFycmVyYSBwbGFuYScsYXJyYXkoJyVkIGJ5dGUnLCclZCBieXRlcycpLCckNS8kMy8kMScsJ0NlcmNhJywnYSBxdWFsc2V2b2wgbGxvYycsJ09yZGVuYScsJ0zDrW1pdCcsJ0FjY2nDsycsJ1NlbGVjY2lvbmEnLCdDb3JyZXUgZWxlY3Ryw7JuaWMnLCdEZScsJ0Fzc3VtcHRlJywnSW5zZXJlaXgnLCdBZGp1bmNpb25zJywnRW52aWEnLGFycmF5KCdTXCdoYSBlbnZpYXQgJWQgY29ycmV1IGVsZWN0csOybmljLicsJ1NcJ2hhbiBlbnZpYXQgJWQgY29ycmV1cyBlbGVjdHLDsm5pY3MuJyksJ2FyYScsJ0hIOk1NOlNTJywnZGQvbW0vW2FhYWFdJywnRGVzY29ubmVjdGEnLCdsdHInLCdSZXNlbmQgUE9TVCBkYXRhPycsJ1NlcnZpZG9yJywnVG9rZW4gQ1NSRiBpbnbDoGxpZC4gVG9ybmEgYSBlbnZpYXIgZWwgZm9ybXVsYXJpLicsJ0Rlc2Nvbm5leGnDsyBjb3JyZWN0YS4nLCdDYWwgcXVlIGVzdGlndWkgcGVybcOocyBsXCd1cyBkZSBzZXNzaW9ucy4nLCdMYSBzZXNzacOzIGhhIGV4cGlyYXQsIHRvcm5hIGEgaW5pY2lhci1uZSB1bmEuJywnQ3JlZGVuY2lhbHMgaW52w6BsaWRzLicsJ0NhcCBleHRlbnNpw7MnLCdObyBoaSBoYSBjYXAgZGUgbGVzIGV4dGVuc2lvbnMgUEhQIHNvcG9yYXRhZGVzICglcykgZGlzcG9uaWJsZS4nLCdMZXMgZGFkZXMgUE9TVCBzw7NuIG1hc3NhIGdyYW5zLiBSZWR1ZWl4IGxlcyBkYWRlcyBvIGluY3JlbWVudGEgbGEgZGlyZWN0aXZhIGRlIGNvbmZpZ3VyYWNpw7MgJXMuJywnU1wnaGEgc3Vwcm1pdCBsXCdlbGVtZW50LicsJ1NcJ2hhIGFjdHVhbGl0emF0IGxcJ2VsZW1lbnQuJywnU1wnaGEgaW5zZXJ0YXQgbFwnZWxlbWVudCVzLicsJ0VkaXRhJywnRGVzYScsJ0Rlc2EgaSBzZWd1ZWl4IGVkaXRhbnQnLCdEZXNhIGkgaW5zZXJlaXggZWwgc2Vnw7xlbnQnLCdTdXByaW1laXgnLGFycmF5KCdTXCdoYSBtb2RpZmljYXQgJWQgZWxlbWVudC4nLCdTXCdoYW4gbW9kaWZpY2F0ICVkIGVsZW1lbnRzLicpLCdGZXMgdW4gZG9ibGUgY2xpYyBhIHVuIHZhbG9yIHBlciBtb2RpZmljYXItbG8uJyxhcnJheSgnU1wnaGEgaW1wb3J0YXQgJWQgZmlsYS4nLCdTXCdoYW4gaW1wb3J0YXQgJWQgZmlsZXMuJyksJ0ltcG9zc2libGUgc2VsZWNjaW9uYXIgbGEgdGF1bGEnLCdObyBoaSBoYSBjYXAgZmlsYS4nLCdlZGl0YScsJ1JlbGFjaW9ucycsJ1V0aWxpdHphIGxcJ2VubGxhw6cgZFwnZWRpY2nDsyBwZXIgbW9kaWZpY2FyIGFxdWVzdCB2YWxvci4nLCdQbGFuYScsJ2RhcnJlcmEnLGFycmF5KCclZCBmaWxhJywnJWQgZmlsZXMnKSwndG90cyBlbHMgcmVzdWx0YXRzJywnQ2xvbmEnLCdFeHBvcnRhJywnSW1wb3J0YScsJ0NlcmNhIGRhZGVzIGVuIGxlcyB0YXVsZXMnLCdUYXVsYScsJ0ZpbGVzJywnLCcsJ0VzcXVlbWEgaW52w6BsaWQuJyk7YnJlYWs7Y2FzZSJwdCI6JE49YXJyYXkoJ0VzdMOhIHNlZ3Vybz8nLCdOw6NvIMOpIHBvc3NpdmVsIGVudmlhciBvIGFycXVpdm8uJywnVGFtYW5obyBtw6F4aW1vIGRvIGFycXVpdm8gw6kgJXNCLicsJ0FycXVpdm8gbsOjbyBleGlzdGUuJywndmF6aW8nLCdvcmlnaW5hbCcsJ07Do28gZXhpc3RlbSB0YWJlbGFzLicsJ0lkaW9tYScsJ1VzYXInLCdQb3IgZmF2b3IgdXNlIHVtYSBkYXMgZXh0ZW5zw7VlcyAlcy4nLCdBcnF1aXZvIGphIGV4aXN0ZS4nLCdUaXBvcyBkZWZpbmlkbyBwZWxvIHVzdWFyaW8nLCdOw7ptZXJvcycsJ0RhdGEgZSBob3JhJywnQ2FkZW5hJywnQmluYXJpbycsJ1JlZGUnLCdHZW9tZXRyw61hJywnTGlzdGFzJywnRWRpdG9yJywnVXN1YXJpbycsJ1NlbmhhJywnRW50cmFyJywnU2FsdmFyIFNlbmhhJywnTm92byBSZWdpc3RybycsJ1VsdGltYSBww6FnaW5hJyxhcnJheSgnJWQgYnl0ZScsJyVkIGJ5dGVzJyksJyQ1LyQzLyQxJywnUHJvY3VyYXInLCdxdWFscXVlciBsb2NhbCcsJ09yZGVuYXInLCdMaW1pdGUnLCdBw6fDo28nLCdTZWxlY2lvbmFyJywnRS1tYWlsJywnRGUnLCdBc3N1bnRvJywnSW5zZXJpcicsJ0FuZXhvcycsJ0VudmlhcicsYXJyYXkoJyVkIGVtYWlsIGVudmlhZG8uJywnJWQgZW1haWxzIGVudmlhZG9zLicpLCdhZ29yYScsJ0hIOk1NOlNTJywnZGQvbW0vW2FhYWFdJywnU2FpcicsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/JywnU2Vydmlkb3InLCdUb2tlbiBDU1JGIGludsOhbGlkby4gRW52aWFyIG8gZm9ybXVsYXJpbyBub3ZhbWVudGUuJywnU2FpZGEgYmVtIHN1Y2VkaWRhLicsJ0RldmVtIGVzdGFyIGhhYmlsaXRhZGFzIGFzIHNlc3PDtWVzLicsJ1Nlc3PDo28gZXhwaXJhZGEsIHBvciBmYXZvciBlbnRyZSBzdWEgQ2hhdmUgZGUgbm92by4nLCdJZGVudGlmaWNhw6fDo28gaW52w6FsaWRhLicsJ07Do28gaGEgZXh0ZW5zaW9uJywnTmVuaHVtYSBkYXMgZXh0ZW5zw7VlcyBQSFAgc29wb3J0YWRhcyAoJXMpIGVzdMOhIGRpc3Bvbml2ZWwuJywnUE9TVCBkYXRhIGRlbWFzaWFkbyBncmFuZGUuIFJlZHV6YSBvIHRhbWFuaG8gb3UgYXVtZW50ZSBhIGRpcmV0aXZhIGRlIGNvbmZpZ3VyYcOnw6NvICVzLicsJ1JlZ2lzdHJvIGVsaW1pbmFkby4nLCdSZWdpc3RybyBtb2RpZmljYWRvLicsJ1JlZ2lzdHJvJXMgaW5zZXJpZG8uJywnTW9kaWZpY2FyJywnU2FsdmFyJywnU2FsdmFyIGUgY29udGludWFyIGVkaXRhbmRvJywnU2FsdmFyIGUgaW5zZXJpciBvdXRybycsJ0FwYWdhcicsYXJyYXkoJyVkIMOtdGVtIGFmZXRhZG8uJywnJWQgaXRlbnMgYWZldGFkb3MuJyksJ0RvYmxlLWNsaWMgc29icmUgbyB2YWxvciBwYXJhIGVkaXRhLWxvLicsYXJyYXkoJyVkIHJlZ2lzdHJvIGltcG9ydGFkby4nLCclZCByZWdpc3Ryb3MgaW1wb3J0YWRvcy4nKSwnTsOjbyDDqSBwb3NzaXZlbCBzZWxlY2lvbmFyIGEgVGFiZWxhJywnTsOjbyBleGlzdGVtIHJlZ2lzdHJvcy4nLCdtb2RpZmljYXInLCdSZWxhw6fDtWVzJywnVXRpbGl6ZSBvIGxpbmsgbW9kaWZpY2FyIHBhcmEgYWx0ZXJhci4nLCdQw6FnaW5hJywnw7psdGltbycsYXJyYXkoJyVkIHJlZ2lzdHJvJywnJWQgcmVnaXN0cm9zJyksJ3Jlc3VsdGFkbyBjb21wbGV0bycsJ0Nsb25hcicsJ0V4cG9ydGFyJywnSW1wb3J0YXInLCdCdXNjYXIgZGFkb3MgbmFzIFRhYmVsYXMnLCdUYWJlbGEnLCdSZWdpc3Ryb3MnLCcgJywnRXNxdWVtYSBpbnbDoWxpZG8uJyk7YnJlYWs7Y2FzZSJzbCI6JE49YXJyYXkoJ1N0ZSBwcmVwcmnEjWFuaT8nLCdOZSBtb3JlbSBuYWxvxb5pdGkgZGF0b3Rla2UuJywnTmFqdmXEjWphIHZlbGlrb3N0IGRhdG90ZWtlIGplICVzQi4nLCdEYXRvdGVrYSBuZSBvYnN0YWphLicsJ3ByYXpubycsJ29yaWdpbmFsJywnTmkgdGFiZWwuJywnSmV6aWsnLCdVcG9yYWJpJywnUHJvc2ltLCB1cG9yYWJpdGUgZW5lZ2Egb2QgZG9kYXRrb3YgJXMuJywnRGF0b3Rla2Egb2JzdGFqYS4nLCdVcG9yYWJuacWha2kgdGlwaScsJ8WgdGV2aWxhJywnRGF0dW0gaW4gxI1hcycsJ05pemknLCdCaW5hcm5pJywnTXJlxb5uaScsJ0dlb21ldHLEjW5pJywnU2V6bmFtaScsJ1VyZWpldmFsbmlrJywnVXBvcmFibmnFoWtvIGltZScsJ0dlc2xvJywnUHJpamF2aSBzZScsJ1RyYWpuYSBwcmlqYXZhJywnTm92IHByZWRtZXQnLCdaYWRuamEgc3RyYW4nLGFycmF5KCclZCBiYWp0JywnJWQgYmFqdGEnLCclZCBiYWp0aScsJyVkIGJhanRvdicpLCckNi4kNC4kMScsJ0nFocSNaScsJ2tqZXJrb2xpJywnU29ydGlyYWonLCdMaW1pdGEnLCdEZWphbmplJywnSXpiZXJpJywnRS1tYWlsJywnT2QnLCdaYWRldmEnLCdWc3RhdmknLCdQcmlwb25rZScsJ1BvxaFsamknLGFycmF5KCdQb3NsYW4gamUgJWQgZS1tYWlsLicsJ1Bvc2xhbmEgc3RhICVkIGUtbWFpbGEuJywnUG9zbGFuaSBzbyAlZCBlLW1haWxpLicsJ1Bvc2xhbmloIGplICVkIGUtbWFpbG92LicpLCd6ZGFqJywnSEg6TU06U1MnLCdkLm0uW3JycnJdJywnT2RqYXZpIHNlJywnbHRyJywnUmVzZW5kIFBPU1QgZGF0YT8nLCdTdHJlxb5uaWsnLCdOZXZlbGphdmVuIHRva2VuIENTUkYuIFBvxaFsaml0ZSBmb3JtdWxhciDFoWUgZW5rcmF0LicsJ1ByaWphdmEgdXNwZcWhbmEuJywnUG9kcG9yYSB6YSBzZWplIG1vcmEgYml0aSBvbW9nb8SNZW5hLicsJ1NlamEgamUgcG90ZWtsYS4gUHJvc2ltbywgcG9ub3ZubyBzZSBwcmlqYXZpdGUuJywnTmV2ZWxqYXZuZSBwcmF2aWNlLicsJ0JyZXogZG9kYXRrb3YnLCdOb2JlbiBvZCBwb2RwcnRpaCBkb2RhdGtvdiB6YSBQSFAgKCVzKSBuaSBuYSB2b2xqby4nLCdQcmV2ZWxpa28gcG9kYXRrb3YgemEgUE9TVC4gWm1hbmrFoWFqdGUgxaF0ZXZpbG8gcG9kYXRrb3YgYWxpIHBvdmXEjWFqdGUgbmFzdGF2aXRldiB6YSAlcy4nLCdQcmVkbWV0IGplIGl6YnJpc2FuLicsJ1ByZWRtZXQgamUgcG9zb2RvYmxqZW4uJywnUHJlZG1ldCVzIGplIHZzdGF2bGplbi4nLCdVcmVkaScsJ1NocmFuaScsJ1NocmFuaSBpbiBuYWRhbGp1aiB6IHVyZWphbmplbScsJ1NocmFuaSBpbiB2c3RhdmkgdGVrc3QnLCdJemJyacWhaScsYXJyYXkoJ1NwcmVtZW5qZW4gamUgJWQgcHJlZG1ldC4nLCdTcHJlbWVuamVuYSBzdGEgJWQgcHJlZG1ldGEuJywnU3ByZW1lbmplbmkgc28gJWQgcHJlZG1ldGkuJywnU3ByZW1lbmplbmloIGplICVkIHByZWRtZXRvdi4nKSwnRHZvam5pIGtsaWsgbmEgdnJlZG5vc3QgemEgdXJlamFuamUuJyxhcnJheSgnVXZvxb5lbmEgamUgJWQgdnJzdGljYS4nLCdVdm/FvmVuaSBzdGEgJWQgdnJzdGljaS4nLCdVdm/FvmVuZSBzbyAlZCB2cnN0aWNlLicsJ1V2b8W+ZW5paCBqZSAlZCB2cnN0aWMuJyksJ05lIG1vcmVtIGl6YnJhdGkgdGFiZWxlJywnTmkgdnJzdGljLicsJ3VyZWRpJywnUmVsYWNpanNraScsJ1Vwb3JhYml0ZSB1cmVqYW5qZSBwb3ZlemF2ZSB6YSBzcHJlbWluamFuamUgdGUgdnJlZG5vc3RpLicsJ1N0cmFuJywnWmFkbmphJyxhcnJheSgnJWQgdnJzdGljYScsJyVkIHZyc3RpY2knLCclZCB2cnN0aWNlJywnJWQgdnJzdGljJyksJ2NlbCByYXp1bHRhdCcsJ0tsb25pcmFqJywnSXp2b3ppJywnVXZvemknLCdJxaHEjWUgcG9kYXRrZSBwbyB0YWJlbGFoJywnVGFiZWxhJywnVnJzdGljJywnICcsJ1NwcmVtZW5pIHRpcCcpO2JyZWFrO2Nhc2UidHIiOiROPWFycmF5KCdFbWluIG1pc2luPycsJ0Rvc3lhIGfDtm5kZXJpbGVtaXlvci4nLCdCaXIgZG9zeWEgacOnaW4gaXppbiB2ZXJpbGVuIGRvc3lhIHPEsW7EsXLEsSAlc0IuJywnRG9zeWEgbWV2Y3V0IGRlxJ9pbC4nLCdib8WfJywnb3JpamluYWwnLCdUYWJsbyB5b2suJywnRGlsJywnS3VsbGFuJywnJXMgdXphbnTEsWxhcsSxbmRhbiBiaXJpbmkga3VsbGFuxLFuLicsJ0Rvc3lhIG1ldmN1dC4nLCdLdWxsYW7EsWPEsSB0w7xybGVyaScsJ1NhecSxbGFyJywnVGFyaWggdmUgemFtYW4nLCdTw7Z6Y8O8a2xlcicsJ8Swa2lsaScsJ0HEnycsJ0dlb21ldHJpJywnTGlzdGVsZXInLCdEw7x6ZW5sZXlpY2knLCdLdWxsYW7EsWPEsScsJ1Bhcm9sYScsJ0dpcmnFnycsJ0thbMSxY8SxIGdpcmnFnycsJ1llbmkgw7bEn2UnLCdTb24gc2F5ZmEnLGFycmF5KCclZCBiYXl0JywnJWQga2FkYXIgYmF5dCcpLCckNi4kNC4kMScsJ0FyYW1hJywnaGVyaGFuZ2kgYmlyIHllcicsJ1PEsXJhbGEnLCdzxLFuxLFyJywnRXlsZW0nLCdTZcOnJywnRS1wb3N0YScsJ0fDtm5kZXJlbicsJ0tvbnUnLCdFa2xlJywnRWtsZXInLCdHw7ZuZGVyJyxhcnJheSgnJWQgZS1wb3N0YSBkw7ZuZGVyaWxkaS4nLCclZCBrYWRhciBlLXBvc3RhIGfDtm5kZXJpbGRpLicpLCfFn2ltZGknLCdISDpNTTpTUycsJ2QubS5bcnJycl0nLCfDh8Sxa8SxxZ8nLCdsdHInLCdSZXNlbmQgUE9TVCBkYXRhPycsJ1N1bnVjdScsJ0dlw6dlcnNpeiBDcm9zcy1zaXRlIHJlcXVlc3QgZm9yZ2VyeSAoQ1NSRikgamV0b251LiBGb3J1bXUgdGVrcmFyIHlvbGxhLicsJ0JhxZ9hcsSxeWxhIMOnxLFrxLFsZMSxLicsJ090dXJ1bSBkZXN0ZcSfaSBldGtpbiBvbG1hbMSxZMSxci4nLCdPdHVydW0gc8O8cmVzaSBkb2xkdSwgbMO8dGZlbiB0ZWtyYXIgZ2lyacWfIHlhcMSxbi4nLCdHZcOnZXJzaXoga2ltbGlrLicsJ1V6YW50xLEgeW9rJywnRGVzdGVrbGVuZW4gUEhQIHV6YW50xLFsYXLEsW5kYW4gKCVzKSBoacOnYmlyaSBtZXZjdXQgZGXEn2lsLicsJ8OHb2sgYsO8ecO8ayBQT1NUIHZlcmlzaSwgdmVyaXlpIGF6YWx0xLFuIHlhIGRhIGF5YXIgecO2bmVyZ2VzaW5pIHV5Z3VuIG9sYXJhayB5YXDEsWxhbmTEsXLEsW4uJywnw5bEn2Ugc2lsaW5kaS4nLCfDlsSfZSBnw7xuY2VsbGVuZGkuJywnw5bEn2VsZXIgZWtsZW5kaS4nLCdEw7x6ZW4nLCdLYXlkZXQnLCdLYXlkZXQgdmUgZMO8emVubGVtZXllIGRldmFtIGV0JywnS2F5ZGV0IHZlIHNvbnJha2luIGVrbGUnLCdTaWwnLGFycmF5KCclZCDDtsSfZSBldGtpbGVuZGkuJywnJWQga2FkYXIgw7bEn2UgZXRraWxlbmRpLicpLCdEZcSfZXJpbiDDvHplcmluZSDDp2lmdCB0xLFrbGF5xLFuIHZlIGRlxJ9pxZ90aXJpbi4nLGFycmF5KCclZCBzxLFyYSBpdGhhbCBlZGlsZGkuJywnJWQga2FkYXIgc8SxcmEgaXRoYWwgZWRpbGRpLicpLCdUYWJsbyBzZcOnaWxlbWVkaScsJ1PEsXJhIHlvay4nLCdkw7x6ZW4nLCfEsGxpxZ9raWxlcicsJ0RlxJ9lcmkgZGXEn2nFn3Rpcm1layBpw6dpbiBkw7x6ZW5sZW1lIGJhxJ9sYW50xLFzxLFuxLEga3VsbGFuxLFuLicsJ1NheWZhJywnc29uJyxhcnJheSgnJWQgc8SxcmEpJywnJWQga2FkYXIgc8SxcmEnKSwndMO8bSBzb251w6cnLCdLbG9ubGEnLCfEsGhyYcOnJywnxLB0aGFsJywnVGFibG9sYXJkYSB2ZXJpIGFyYS4nLCdUYWJsbycsJ1PEsXJhbGFyIChSb3dzKScsJyAnLCdUw7xyIGRlxJ9pxZ90aXInKTticmVhaztjYXNlInJ1IjokTj1hcnJheSgn0JLRiyDRg9Cy0LXRgNC10L3Riz8nLCfQndC1INGD0LTQsNC70L7RgdGMINC30LDQs9GA0YPQt9C40YLRjCDRhNCw0LnQuyDQvdCwINGB0LXRgNCy0LXRgC4nLCfQnNCw0LrRgdC40LzQsNC70YzQvdGL0Lkg0YDQsNC30YDQtdGI0LXQvdC90YvQuSDRgNCw0LfQvNC10YAg0YTQsNC50LvQsCAtICVzQi4nLCfQotCw0LrQvtCz0L4g0YTQsNC50LvQsCDQvdC1INGB0YPRidC10YHRgtCy0YPQtdGCLicsJ9C/0YPRgdGC0L4nLCfQuNGB0YXQvtC00L3Ri9C5Jywn0JIg0LHQsNC30LUg0LTQsNC90L3Ri9GFINC90LXRgiDRgtCw0LHQu9C40YYuJywn0K/Qt9GL0LonLCfQktGL0LHRgNCw0YLRjCcsJ9CY0YHQv9C+0LvRjNC30YPQudGC0LUg0L7QtNC90L4g0LjQtyDRjdGC0LjRhSDRgNCw0YHRiNC40YDQtdC90LjQuSAlcy4nLCfQpNCw0LnQuyDRg9C20LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIuJywn0KLQuNC/0Ysg0L/QvtC70YzQt9C+0LLQsNGC0LXQu9C10LknLCfQp9C40YHQu9C+Jywn0JTQsNGC0LAg0Lgg0LLRgNC10LzRjycsJ9Ch0YLRgNC+0LrQuCcsJ9CU0LLQvtC40YfQvdGL0Lkg0YLQuNC/Jywn0KHQtdGC0YwnLCfQk9C10L7QvNC10YLRgNC40Y8nLCfQodC/0LjRgdC60LgnLCfQoNC10LTQsNC60YLQvtGAJywn0JjQvNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjycsJ9Cf0LDRgNC+0LvRjCcsJ9CS0L7QudGC0LgnLCfQntGB0YLQsNCy0LDRgtGM0YHRjyDQsiDRgdC40YHRgtC10LzQtScsJ9Cd0L7QstCw0Y8g0LfQsNC/0LjRgdGMJywn0J/QvtGB0LvQtdC00L3Rj9GPINGB0YLRgNCw0L3QuNGG0LAnLGFycmF5KCclZCDQsdCw0LnRgicsJyVkINCx0LDQudGC0LAnLCclZCDQsdCw0LnRgtC+0LInKSwnJDUuJDMuJDEnLCfQn9C+0LjRgdC6Jywn0LIg0LvRjtCx0L7QvCDQvNC10YHRgtC1Jywn0KHQvtGA0YLQuNGA0L7QstCw0YLRjCcsJ9Cb0LjQvNC40YInLCfQlNC10LnRgdGC0LLQuNC1Jywn0JLRi9Cx0YDQsNGC0YwnLCfQrdC70LXQutGC0YDQvtC/0L7Rh9GC0LAnLCfQntGCJywn0JrQvtC80YMnLCfQktGB0YLQsNCy0LjRgtGMJywn0J/RgNC40LrRgNC10L/Qu9C10L3QvdGL0LUg0YTQsNC50LvRiycsJ9Cf0L7RgdC70LDRgtGMJyxhcnJheSgn0JHRi9C70L4g0L7RgtC/0YDQsNCy0LvQtdC90L4gJWQg0L/QuNGB0YzQvNC+LicsJ9CR0YvQu9C+INC+0YLQv9GA0LDQstC70LXQvdC+ICVkINC/0LjRgdGM0LzQsC4nLCfQkdGL0LvQviDQvtGC0L/RgNCw0LLQu9C10L3QviAlZCDQv9C40YHQtdC8LicpLCfRgdC10LnRh9Cw0YEnLCdISDpNTTpTUycsJ9C00LQu0LzQvC5b0LPQs9Cz0LNdJywn0JLRi9C50YLQuCcsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/Jywn0KHQtdGA0LLQtdGAJywn0J3QtdC00LXQudGB0YLQstC40YLQtdC70YzQvdGL0LkgQ1NSRiDRgtC+0LrQtdC9LiDQntGC0L/RgNCw0LLQuNGC0LUg0YTQvtGA0LzRgyDQtdGJ0ZEg0YDQsNC3LicsJ9CS0Ysg0YPRgdC/0LXRiNC90L4g0L/QvtC60LjQvdGD0LvQuCDRgdC40YHRgtC10LzRgy4nLCfQodC10YHRgdC40Lgg0LTQvtC70LbQvdGLINCx0YvRgtGMINCy0LrQu9GO0YfQtdC90YsuJywn0KHRgNC+0Log0LTQtdC50YHRgtCy0LjRjyDRgdC10YHRgdC4INC40YHRgtC10LosINC90YPQttC90L4g0YHQvdC+0LLQsCDQstC+0LnRgtC4INCyINGB0LjRgdGC0LXQvNGDLicsJ9Cd0LXQv9GA0LDQstC40LvRjNC90L7QtSDQuNC80Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GPINC40LvQuCDQv9Cw0YDQvtC70YwuJywn0J3QtdGCINGA0LDRgdGI0LjRgNC10L3QuNC5Jywn0J3QtSDQtNC+0YHRgtGD0L/QvdC+INC90Lgg0L7QtNC90L7Qs9C+INGA0LDRgdGI0LjRgNC10L3QuNGPINC40Lcg0L/QvtC00LTQtdGA0LbQuNCy0LDQtdC80YvRhSAoJXMpLicsJ9Ch0LvQuNGI0LrQvtC8INCx0L7Qu9GM0YjQvtC5INC+0LHRitC10LwgUE9TVC3QtNCw0L3QvdGL0YUuINCf0L7RiNC70LjRgtC1INC80LXQvdGM0YjQuNC5INC+0LHRitC10Lwg0LTQsNC90L3Ri9GFINC40LvQuCDRg9Cy0LXQu9C40YfRjNGC0LUg0L/QsNGA0LDQvNC10YLRgCDQutC+0L3RhNC40LPRg9GA0LDRhtC40L7QvdC90L7QuSDQtNC40YDQtdC60YLQuNCy0YsgJXMuJywn0JfQsNC/0LjRgdGMINGD0LTQsNC70LXQvdCwLicsJ9CX0LDQv9C40YHRjCDQvtCx0L3QvtCy0LvQtdC90LAuJywn0JfQsNC/0LjRgdGMJXMg0LHRi9C70LAg0LLRgdGC0LDQstC70LXQvdCwLicsJ9Cg0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMJywn0KHQvtGF0YDQsNC90LjRgtGMJywn0KHQvtGF0YDQsNC90LjRgtGMINC4INC/0YDQvtC00L7Qu9C20LjRgtGMINGA0LXQtNCw0LrRgtC40YDQvtCy0LDQvdC40LUnLCfQodC+0YXRgNCw0L3QuNGC0Ywg0Lgg0LLRgdGC0LDQstC40YLRjCDQtdGJ0LUnLCfQodGC0LXRgNC10YLRjCcsYXJyYXkoJ9CR0YvQu9CwINC40LfQvNC10L3QtdC90LAgJWQg0LfQsNC/0LjRgdGMLicsJ9CR0YvQu9C4INC40LfQvNC10L3QtdC90YsgJWQg0LfQsNC/0LjRgdC4LicsJ9CR0YvQu9C+INC40LfQvNC10L3QtdC90L4gJWQg0LfQsNC/0LjRgdC10LkuJyksJ9Ca0LvQuNC60L3QuCDQtNCy0LAg0YDQsNC30LAg0L/QviDQt9C90LDRh9C10L3QuNGOLCDRh9GC0L7QsdGLINC10LPQviDQuNC30LzQtdC90LjRgtGMLicsYXJyYXkoJ9CY0LzQv9C+0YDRgtC40YDQvtCy0LDQvdCwICVkINGB0YLRgNC+0LrQsC4nLCfQmNC80L/QvtGA0YLQuNGA0L7QstCw0L3QviAlZCDRgdGC0YDQvtC60LguJywn0JjQvNC/0L7RgNGC0LjRgNC+0LLQsNC90L4gJWQg0YHRgtGA0L7Qui4nKSwn0J3QtSDRg9C00LDQu9C+0YHRjCDQv9C+0LvRg9GH0LjRgtGMINC00LDQvdC90YvQtSDQuNC3INGC0LDQsdC70LjRhtGLJywn0J3QtdGCINC30LDQv9C40YHQtdC5LicsJ9GA0LXQtNCw0LrRgtC40YDQvtCy0LDRgtGMJywn0KDQtdC70Y/RhtC40LgnLCfQmNC30LzQtdC90LjRgtGMINGN0YLQviDQt9C90LDRh9C10L3QuNC1INC80L7QttC90L4g0YEg0L/QvtC80L7RidGM0Y4g0YHRgdGL0LvQutC4IMKr0LjQt9C80LXQvdC40YLRjMK7LicsJ9Ch0YLRgNCw0L3QuNGG0LAnLCfQv9C+0YHQu9C10LTQvdGP0Y8nLGFycmF5KCclZCDRgdGC0YDQvtC60LAnLCclZCDRgdGC0YDQvtC60LgnLCclZCDRgdGC0YDQvtC6JyksJ9Cy0LXRgdGMINGA0LXQt9GD0LvRjNGC0LDRgicsJ9Ca0LvQvtC90LjRgNC+0LLQsNGC0YwnLCfQrdC60YHQv9C+0YDRgicsJ9CY0LzQv9C+0YDRgicsJ9Cf0L7QuNGB0Log0LIg0YLQsNCx0LvQuNGG0LDRhScsJ9Ci0LDQsdC70LjRhtCwJywn0KHRgtGA0L7QuicsJyAnLCfQndC10L/RgNCw0LLQuNC70YzQvdCw0Y8g0YHRhdC10LzQsC4nKTticmVhaztjYXNlInpoIjokTj1hcnJheSgn5L2g56Gu5a6a5ZCX77yfJywn5LiN6IO95LiK5Lyg5paH5Lu244CCJywn5pyA5aSa5YWB6K6455qE5paH5Lu25aSn5bCP5Li6ICVzQicsJ+aWh+S7tuS4jeWtmOWcqOOAgicsJ+epuicsJ+WOn+WniycsJ+ayoeacieihqOOAgicsJ+ivreiogCcsJ+S9v+eUqCcsJ+ivt+S9v+eUqOi/meS6m+aJqeWxleS4reeahOS4gOS4qu+8miVz44CCJywn5paH5Lu25bey5a2Y5Zyo44CCJywn55So5oi357G75Z6LJywn5pWw5a2XJywn5pel5pyf5pe26Ze0Jywn5a2X56ym5LiyJywn5LqM6L+b5Yi2Jywn572R57ucJywn5Yeg5L2V5Zu+5b2iJywn5YiX6KGoJywn57yW6L6R5ZmoJywn55So5oi35ZCNJywn5a+G56CBJywn55m75b2VJywn5L+d5oyB55m75b2VJywn5paw5bu66aG5Jywn5pyr6aG1JywnJWQg5a2X6IqCJywnJDEuJDMuJDUnLCfmkJzntKInLCfku7vmhI/kvY3nva4nLCfmjpLluo8nLCfpmZDlrponLCfliqjkvZwnLCfpgInmi6knLCfnlLXlrZDpgq7ku7YnLCfmnaXoh6onLCfkuLvpopgnLCfmj5LlhaUnLCfpmYTku7YnLCflj5HpgIEnLCclZCDlsIHpgq7ku7blt7Llj5HpgIHjgIInLCfnjrDlnKgnLCdISDpNTTpTUycsJ1t5eXl5XS5tbS5kZCcsJ+azqOmUgCcsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/Jywn5pyN5Yqh5ZmoJywn5peg5pWIIENTUkYg5Luk54mM44CC6YeN5paw5Y+R6YCB6KGo5Y2V44CCJywn5rOo6ZSA5oiQ5Yqf44CCJywn5Lya6K+d5b+F6aG76KKr5ZCv55So44CCJywn5Lya6K+d5bey6L+H5pyf77yM6K+36YeN5paw55m75b2V44CCJywn5peg5pWI5Yet5o2u44CCJywn5rKh5pyJ5omp5bGVJywn5rKh5pyJ5pSv5oyB55qEIFBIUCDmianlsZXlj6/nlKjvvIglc++8ieOAgicsJ+WkquWkp+eahCBQT1NUIOaVsOaNruOAguWHj+WwkeaVsOaNruaIluiAheWinuWKoCAlcyDphY3nva7lkb3ku6TjgIInLCflt7LliKDpmaTpobnnm67jgIInLCflt7Lmm7TmlrDpobnnm67jgIInLCflt7Lmj5LlhaXpobnnm64lc+OAgicsJ+e8lui+kScsJ+S/neWtmCcsJ+S/neWtmOW5tue7p+e7ree8lui+kScsJ+S/neWtmOW5tuaPkuWFpeS4i+S4gOS4qicsJ+WIoOmZpCcsJyVkIOS4qumhueebruWPl+WIsOW9seWTjeOAgicsJ+WcqOWAvOS4iuWPjOWHu+exu+S/ruaUueWug+OAgicsJyVkIOihjOW3suWvvOWFpeOAgicsJ+S4jeiDvemAieaLqeivpeihqCcsJ+ayoeacieihjOOAgicsJ+e8lui+kScsJ+WFs+iBlOS/oeaBrycsJ+S9v+eUqOe8lui+kemTvuaOpeadpeS/ruaUueivpeWAvOOAgicsJ+mhtemdoicsJ+acgOWQjicsJyVkIOihjCcsJ+aJgOaciee7k+aenCcsJ+WFi+mahicsJ+WvvOWHuicsJ+WvvOWFpScsJ+WcqOihqOS4reaQnOe0ouaVsOaNricsJ+ihqCcsJ+ihjOaVsCcsJywnLCfpnZ7ms5XmqKHlvI/jgIInKTticmVhaztjYXNlInpoLXR3IjokTj1hcnJheSgn5L2g56K65a6a5ZeO77yfJywn54Sh5rOV5LiK5YKz5qqU5qGI44CCJywn5YWB6Kix55qE5qqU5qGI5LiK6ZmQ5aSn5bCP54K6JXNCJywn5qqU5qGI5LiN5a2Y5ZyoJywn56m65YC8Jywn5Y6f5aeLJywn5rKS5pyJ6LOH5paZ6KGo44CCJywn6Kqe6KiAJywn5L2/55SoJywn6KuL5L2/55So5LiL5YiX5YW25Lit5LiA5YCLIGV4dGVuc2lvbiAlc+OAgicsJ+aqlOahiOW3suWtmOWcqOOAgicsJ+S9v+eUqOiAhemhnuWeiycsJ+aVuOWtlycsJ+aXpeacn+aZgumWkycsJ+Wtl+espuS4sicsJ+S6jOmAsuWIticsJ+e2sui3rycsJ+W5vuS9lScsJ+WIl+ihqCcsJ+e3qOi8r+WZqCcsJ+W4s+iZnycsJ+WvhueivCcsJ+eZu+WFpScsJ+awuOS5heeZu+WFpScsJ+aWsOW7uumghScsJ+acgOW+jOS4gOmggScsJyVkIGJ5dGUocyknLCckMS4kMy4kNScsJ+aQnOWwiycsJ+S7u+aEj+S9jee9ricsJ+aOkuW6jycsJ+mZkOWumicsJ+WLleS9nCcsJ+mBuOaThycsJ+mbu+WtkOmDteS7ticsJ+S+huiHqicsJ+S4u+mhjCcsJ+aPkuWFpScsJ+mZhOS7ticsJ+eZvOmAgScsJ+W3sueZvOmAgSAlZCDlsIHpg7Xku7bjgIInLCfnj77lnKgnLCdISDpNTTpTUycsJ1t5eXl5XS5tbS5kZCcsJ+eZu+WHuicsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/Jywn5Ly65pyN5ZmoJywn54Sh5pWI55qEIENTUkYgdG9rZW7jgILoq4vph43mlrDnmbzpgIHooajllq7jgIInLCfnmbvlh7rmiJDlip/jgIInLCdTZXNzaW9uIOW/hemgiOiiq+WVn+eUqOOAgicsJ1Nlc3Npb24g5bey6YGO5pyf77yM6KuL6YeN5paw55m75YWl44CCJywn54Sh5pWI55qE5oaR6K2J44CCJywn5rKS5pyJIOaTtOWFheaooee1hCcsJ+aykuacieS7u+S9leaUr+aPtOeahFBIUOaTtOWFheaooee1hO+8iCVz77yJ44CCJywnUE9TVCDos4fmlpnlpKrlpKfjgILmuJvlsJHos4fmlpnmiJbogIXlop7liqAgJXMg55qE6Kit5a6a5YC844CCJywn6Kmy6aCF55uu5bey6KKr5Yiq6ZmkJywn5bey5pu05paw6aCF55uu44CCJywn5bey5o+S5YWl6aCF55uuJXPjgIInLCfnt6jovK8nLCflhLLlrZgnLCfkv53lrZjkuKbnubznuoznt6jovK8nLCflhLLlrZjkuKbmj5LlhaXkuIvkuIDlgIsnLCfliKrpmaQnLCclZOWAi+mgheebruWPl+WIsOW9semfv+OAgicsJ+mbmeaTiuS7pemAsuihjOS/ruaUueOAgicsJyVk6KGM5bey5bCO5YWl44CCJywn54Sh5rOV6YG45pOH6Kmy6LOH5paZ6KGoJywn5rKS5pyJ6KGM44CCJywn57eo6LyvJywn6Zec6IGvJywn5L2/55So57eo6Lyv6YCj57WQ5L6G5L+u5pS544CCJywn6aCBJywn5pyA5b6M5LiA6aCBJywnJWTooYwnLCfmiYDmnInntZDmnpwnLCfopIfoo70nLCfljK/lh7onLCfljK/lhaUnLCflnKjos4fmlpnluqvmkJzlsIsnLCfos4fmlpnooagnLCfooYzmlbgnLCcsJywn54Sh5pWI55qE6LOH5paZ6KGo57WQ5qeL44CCJyk7YnJlYWs7Y2FzZSJqYSI6JE49YXJyYXkoJ+Wun+ihjOOBl+OBvuOBmeOBi++8nycsJ+ODleOCoeOCpOODq+OCkuOCouODg+ODl+ODreODvOODieOBp+OBjeOBvuOBm+OCkycsJ+acgOWkp+ODleOCoeOCpOODq+OCteOCpOOCuiAlc0InLCfjg5XjgqHjgqTjg6vjga/lrZjlnKjjgZfjgb7jgZvjgpMnLCfnqbonLCflhYMnLCfjg4bjg7zjg5bjg6vjgYzjgYLjgorjgb7jgZvjgpPjgIInLCfoqIDoqp4nLCfkvb/nlKgnLCfjgYTjgZrjgozjgYvjga7mi6HlvLXmqZ/og73jgpLkvb/jgaPjgabjgY/jgaDjgZXjgYQgJXMnLCfjg5XjgqHjgqTjg6vjgYzml6LjgavlrZjlnKjjgZfjgb7jgZknLCfjg6bjg7zjgrbjg7zlrprnvqnlnosnLCfmlbDlrZcnLCfml6XmmYInLCfmloflrZfliJcnLCfjg5DjgqTjg4rjg6onLCfjg43jg4Pjg4jjg6/jg7zjgq/lnosnLCfjgrjjgqrjg6Hjg4jjg6rlnosnLCfjg6rjgrnjg4gnLCfjgqjjg4fjgqPjgr8nLCfjg6bjg7zjgrblkI0nLCfjg5Hjgrnjg6/jg7zjg4knLCfjg63jgrDjgqTjg7MnLCfmsLjntprnmoTjgavjg63jgrDjgqTjg7MnLCfpoIXnm67jga7kvZzmiJAnLCfmnIDlvozjga7jg5rjg7zjgrgnLCclZCDjg5DjgqTjg4gnLCckMS4kMy4kNScsJ+aknOe0oicsJ+S7u+aEjycsJ+OCveODvOODiCcsJ+WItue0hCcsJ+WLleS9nCcsJ+mBuOaKnicsJ+ODoeODvOODqycsJ+W3ruWHuuS6uicsJ+mhjOWQjScsJ+aMv+WFpScsJ+a3u+S7mOODleOCoeOCpOODqycsJ+mAgeS/oScsJyVkIOODoeODvOODq+OCkumAgeS/oeOBl+OBvuOBl+OBnycsJ+ePvuWcqOOBruaXpeaZgicsJ0hIOk1NOlNTJywnW3l5eXldLm1tLmRkJywn44Ot44Kw44Ki44Km44OIJywnbHRyJywnUmVzZW5kIFBPU1QgZGF0YT8nLCfjgrXjg7zjg5AnLCfkuI3mraPjgapDU1JG44OI44O844Kv44Oz44CC5YaN6YCB5L+h44GX44Gm44GP44Gg44GV44GEJywn44Ot44Kw44Ki44Km44OIJywn44K744OD44K344On44Oz44KS5pyJ5Yq544Gr44GX44Gm44GP44Gg44GV44GEJywn44K744OD44K344On44Oz44Gu5pyf6ZmQ5YiH44KM44CC44Ot44Kw44Kk44Oz44GX55u044GX44Gm44GP44Gg44GV44GEJywn5LiN5q2j44Gq44Ot44Kw44Kk44OzJywn5ouh5by15qmf6IO944GM44GC44KK44G+44Gb44KTJywnUEhQ44Gu5ouh5by15qmf6IO977yIJXPvvInjgYzjgrvjg4Pjg4jjgqLjg4Pjg5fjgZXjgozjgabjgYTjgb7jgZvjgpMnLCdQT1NU44OH44O844K/44GM5aSn44GN44GZ44GO44G+44GZ44CC44OH44O844K/44K144Kk44K644KS5bCP44GV44GP44GZ44KL44GLICVzIOioreWumuOCkuWkp+OBjeOBj+OBl+OBpuOBj+OBoOOBleOBhCcsJ+mgheebruOCkuWJiumZpOOBl+OBvuOBl+OBnycsJ+mgheebruOCkuabtOaWsOOBl+OBvuOBl+OBnycsJyVz6aCF55uu44KS5oy/5YWl44GX44G+44GX44GfJywn57eo6ZuGJywn5L+d5a2YJywn5L+d5a2Y44GX44Gm57aZ57aaJywn5L+d5a2Y77yP6L+95YqgJywn5YmK6ZmkJywnJWQg44KS5pu05paw44GX44G+44GX44GfJywn44OA44OW44Or44Kv44Oq44OD44Kv44GX44Gm57eo6ZuGJywnJWQg6KGM44KS44Kk44Oz44Od44O844OI44GX44G+44GX44GfJywn44OG44O844OW44Or44KS6YG45oqe44Gn44GN44G+44Gb44KTJywn6KGM44GM44GC44KK44G+44Gb44KTJywn57eo6ZuGJywn6Zai5L+CJywn44Oq44Oz44Kv44KS57eo6ZuG44GZ44KLJywn44Oa44O844K4Jywn5pyA57WCJywnJWQg6KGMJywn5YWo57WQ5p6cJywn44Kv44Ot44O844OzJywn44Ko44Kv44K544Od44O844OIJywn44Kk44Oz44Od44O844OIJywn44OH44O844K/44KS5qSc57Si44GZ44KLJywn44OG44O844OW44OrJywn6KGM5pWwJywnLCcsJ+eEoeWKueOBquOCueOCreODvOODnicpO2JyZWFrO2Nhc2UidGEiOiROPWFycmF5KCfgrqjgrr/grprgr43grprigIzgrq/igIzgrq7grr7grpXigIwgPycsJ+CuleCvi+CuquCvjeCuquCviCDgrq7gr4fgrrLgr4fgrrHgr43grrHigIzgrq7gr40gKHVwbG9hZCkg4K6a4K+G4K6v4K+N4K6v4oCMIOCuh+Cur+CusuKAjOCuteCuv+CusuCvjeCusuCviC4nLCfgrpXgr4vgrqrgr43grqrgrr/grqngr40g4K6F4K6k4K6/4K6V4oCM4K6q4oCM4K6f4K+N4K6a4oCMIOCuheCus+KAjOCuteCvgSAlc0IuJywn4K6V4K+L4K6q4K+N4K6q4K+BIOCuh+CusuCvjeCusuCviC4nLCfgrrXgr4bgrrHgr4Hgrq7gr4ggKGVtcHR5KScsJ+CuheCumuKAjOCusuCvjScsJ+CuheCun+CvjeCun+KAjOCuteKAjOCuo+CviCDgrofgrrLgr43grrLgr4guJywn4K6u4K+K4K604K6/Jywn4K6J4K6q4oCM4K6v4K+L4K6V4K6/Jywn4K6k4oCM4K6v4oCM4K614K+BIOCumuCvhuCur+CvjeCupOCvgSDgrpLgrrDgr4Eg4K614K6/4K6w4K6/4K614K6/4K6p4K+IICVzIChleHRlbnNpb24pIOCuieCuquKAjOCur+Cvi+CuleCuv+CuleCvjeCuleKAjOCuteCvgeCuruCvjS4nLCfgrpXgr4vgrqrgr43grqrgr4Eg4K6J4K6z4K+N4K6z4oCM4K6k4K+BLicsJ+CuquKAjOCur+KAjOCuqeCuvuCus+KAjOCusOCvjSDgrrXigIzgrpXgr4jgrpXigIzgrrPgr40nLCfgro7grqPgr43grpXigIzgrrPgr40nLCfgrqTgr4fgrqTgrr8g4K6u4oCM4K6x4K+N4K6x4K+B4K6u4K+NIOCuqOCvh+CusOKAjOCuruCvjScsJ+CumuKAjOCusOKAjOCuruCvjSAoU3RyaW5nKScsJ+CuquCviOCuqeKAjOCusOCuvycsJ+CuqOCvhuCun+CvjeCuteCviuCusOCvjeCuleCvjScsJ+CuteKAjOCun+Cuv+CuteKAjOCuteCuv+Cur+KAjOCusuCvjSAoR2VvbWV0cnkpJywn4K6q4oCM4K6f4K+N4K6f4K6/4K6v4oCM4K6y4K+NJywn4K6k4K+K4K6V4K+B4K6q4K+N4K6q4K6+4K6z4K6w4K+NJywn4K6q4oCM4K6v4oCM4K6p4K6+4K6z4oCM4K6w4K+NIChVc2VyKScsJ+CuleKAjOCun+KAjOCuteCvgeCumuCvjeCumuCviuCusuCvjScsJ+CuqOCvgeCutOCviCcsJ+CuqOCuv+CusOKAjOCuqOCvjeCupOKAjOCusOKAjOCuruCuvuCuleKAjCDgrqjgr4HgrrTgr4jgrq/igIzgrrXgr4Hgrq7gr40nLCfgrqrgr4HgrqTgrr/grq/igIwg4K6J4K6w4K+B4K6q4K+N4K6q4oCM4K6f4K6/Jywn4K6V4oCM4K6f4K+I4K6a4K6/IOCuquKAjOCuleCvjeCuleKAjOCuruCvjScsYXJyYXkoJyVkIOCuquCviOCun+CvjScsJyVkIOCuquCviOCun+CvjeCun+CvgeCuleKAjOCus+CvjScpLCckNS8kMy8kMScsJ+CupOCvh+Cun+CvgScsJ+CujuCumeCvjeCuleCuvuCur+Cuv+CuqeCvgeCuruCvjScsJ+CupOKAjOCusOKAjOCuruCvjSDgrqrgrr/grrDgrr8nLCfgrrXigIzgrrDigIzgrq7gr43grqrgr4EnLCfgrprgr4bgrq/igIzgrrLgr40nLCfgrqTgr4fgrrDgr43grrXgr4Eg4K6a4K+G4K6v4K+NJywn4K6u4K6/4K6p4K+N4K6p4oCM4K6e4K+N4K6a4oCM4K6y4K+NJywn4K6F4K6p4K+B4K6q4K+N4K6q4K+B4K6p4K6w4K+NJywn4K6q4K+K4K6w4K+B4K6z4K+NJywn4K6q4K+B4K6V4K+B4K6k4K+N4K6k4K+BJywn4K6H4K6j4K+I4K6q4K+N4K6q4K+B4K6V4oCM4K6z4K+NJywn4K6F4K6p4K+B4K6q4K+N4K6q4K+BJyxhcnJheSgnJWQg4K6u4K6/4K6p4K+N4K6p4oCM4K6e4K+N4K6a4oCM4K6y4K+NIOCuheCuqeCvgeCuquCvjeCuquKAjOCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCclZCDgrq7grr/grqngr43grqnigIzgrp7gr43grprigIzgrrLgr43grpXigIzgrrPgr40g4K6F4K6p4K+B4K6q4K+N4K6q4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6p4oCMLicpLCfgrofgrqrgr43grqrgr4rgrrTgr4HgrqTgr4EnLCdISDpNTTpTUycsJ2RkL21tL1t5eXl5XScsJ+CuteCvhuCus+Cuv+Cur+Cvh+CuseCvgScsJ2x0cicsJ1Jlc2VuZCBQT1NUIGRhdGE/Jywn4K614oCM4K604oCM4K6Z4K+N4K6V4K6/IChTZXJ2ZXIpJywnQ1NSRiDgrp/gr4vgrpXgr43grpXigIzgrqngr40g4K6a4K+G4K6y4K+N4K6y4K6+4K6k4K+BLiDgrqrigIzgrp/grr/grrXigIzgrqTgr43grqTgr4gg4K6u4K+A4K6j4K+N4K6f4K+B4K6u4K+NIOCuheCuqeCvgeCuquCvjeCuquKAjOCuteCvgeCuruCvjS4nLCfgrrXgr4bgrrHgr43grrHgrr/grpXigIzgrrDigIzgrq7grr7grq/gr40g4K614K+G4K6z4K6/4K6v4K+H4K6x4K6/4K6v4K6+4K6v4K6/4K6x4K+N4K6x4K+BLicsJ+CumuCvhuCut+KAjOCuqeCvjSDgrobgrqTigIzgrrDigIzgrrXgr4Eg4K6H4K6v4oCM4K6V4K+N4K6V4oCM4K6q4K+N4K6q4oCM4K6f4oCMIOCuteCvh+Cuo+CvjeCun+CvgeCuruCvjS4nLCfgrprgr4bgrrfigIzgrqngr40g4K6V4K6+4K6y4K6+4K614oCM4K6k4K6/4K6v4K6+4K6V4K6/IOCuteCuv+Cun+CvjeCun+KAjOCupOCvgS4g4K6u4K+A4K6j4K+N4K6f4K+B4K6u4K+NIOCuqOCvgeCutOCviOCur+KAjOCuteCvgeCuruCvjS4nLCfgrprigIzgrrDgrr/grq/grr7grqnigIwg4K614K6/4K6q4oCM4K6w4oCM4K6Z4K+N4K6V4oCM4K6z4K+NIOCuh+CusuCvjeCusuCviC4nLCfgrrXgrr/grrDgrr/grrXgr4EgKGV4dGVuc+Cuh+CukuCuqeCvjSkg4K6H4K6y4K+N4K6y4K+IICcsJ1BIUCDgrobgrqTigIzgrrDigIzgrrXgr4Eg4K614K6/4K6w4K6/4K614K+B4K6V4oCM4K6z4K+NICglcykg4K6H4K6y4K+N4K6y4K+ILicsJ+CuruCuv+CuleKAjCDgroXgrqTgrr/grpXigIzgrq7grr7grqnigIwgUE9TVCAg4K6k4oCM4K6V4oCM4K614oCM4K6y4K+NLiDgrqTigIzgrpXigIzgrrXigIzgrrLgr4gg4K6V4K+B4K6x4K+I4K6V4K+N4K6V4oCM4K614K+B4K6u4K+NIOCuheCusuCvjeCusuKAjOCupOCvgSAlcyDgrrXigIzgrp/grr/grrXigIzgrq7gr4jgrqrgr43grqrgr4ggKGNvbmZpZ3VyYXRpb24gZGlyZWN0aXZlKSDgrq7grr7grrHgr43grrHigIzgrrXgr4Hgrq7gr40uJywn4K6J4K6w4K+B4K6q4K+N4K6q4K6f4K6/IOCuqOCvgOCuleCvjeCuleKAjOCuquCvjeCuquKAjOCun+CvjeCun+KAjOCupOCvgS4nLCfgrongrrDgr4Hgrqrgr43grqrigIzgrp/grr8g4K6q4K+B4K6k4K+B4K6q4K+N4K6q4K6/4K6V4K+N4K6V4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+CuieCusOCvgeCuquCvjeCuquKAjOCun+CuvyAoSXRlbSkg4K6a4K+H4K6w4K+N4K6V4K+N4K6V4oCM4K6q4K+N4K6q4oCM4K6f4K+N4K6f4oCM4K6k4K+BLicsJ+CupOCviuCuleCvgScsJ+CumuCvh+CuruCuvycsJ+CumuCvh+CuruCuv+CupOCvjeCupOKAjCDgrqrgrr/grrHigIzgrpXgr4Eg4K6k4K+K4K6V4K+B4K6q4K+N4K6q4oCM4K6k4K+IIOCupOCviuCun+KAjOCusOKAjOCuteCvgeCuruCvjScsJ+CumuCvh+CuruCuv+CupOCvjeCupOKAjOCuquCvjSDgrqrgrr/grqngr40g4K6F4K6f4K+B4K6k4K+N4K6k4oCM4K6k4K+IIOCuquCvgeCuleCvgeCupOCvjeCupOCvgScsJ+CuqOCvgOCuleCvjeCuleCvgScsYXJyYXkoJyVkIOCuieCusOCvgeCuquCvjeCuquKAjOCun+CuvyDgrq7grr7grrHgr43grrHigIzgrq7igIzgrp/gr4jgrqjgr43grqTgrqTgr4EuJywnJWQg4K6J4K6w4K+B4K6q4K+N4K6q4oCM4K6f4K6/4K6V4oCM4K6z4K+NIOCuruCuvuCuseCvjeCuseKAjOCuruKAjOCun+CviOCuqOCvjeCupOKAjOCuqeKAjC4nKSwn4K6u4oCM4K6k4K6/4K6q4K+N4K6q4K6/4K6p4K+IIOCuruCuvuCuseCvjeCusSDgroXgrqTigIzgrqngr40g4K6u4K+A4K6k4K+BIOCuh+CusOCvgeCuruCvgeCuseCviCDgrprgr4rgrp/gr4HgrpXgr43grpXigIzgrrXgr4Hgrq7gr40gKERvdWJsZSBjbGljaykuJyxhcnJheSgnJWQg4K614oCM4K6w4K6/4K6a4K+IIOCuh+CuseKAjOCuleCvjeCuleCvgeCuruKAjOCupOCuvyAoSW1wb3J0KSDgrprgr4bgrq/gr43grq/igIzgrqrgr43grqrigIzgrp/gr43grp/igIzgrqTgr4EuJywnJWQg4K614oCM4K6w4K6/4K6a4K+I4K6V4oCM4K6z4K+NIOCuh+CuseKAjOCuleCvjeCuleCvgeCuruKAjOCupOCuvyAoSW1wb3J0KSDgrprgr4bgrq/gr43grq/igIzgrqrgr43grqrigIzgrp/gr43grp/grqnigIwuJyksJ+CuheCun+CvjeCun+KAjOCuteKAjOCuo+CviOCur+CviCDgrqTgr4fgrrDgr43grrXgr4Eg4K6a4K+G4K6v4K+N4K6v4oCMIOCuruCvgeCun+Cuv+Cur+KAjOCuteCuv+CusuCvjeCusuCviCcsJ+CuteKAjOCusOCuv+CumuCviCDgrofgrrLgr43grrLgr4guJywn4K6k4K+K4K6V4K+BJywn4K6J4K6x4oCM4K614K+B4K6V4oCM4K6z4K+NIChSZWxhdGlvbnMpJywn4K6H4K6o4K+N4K6k4oCMIOCuruKAjOCupOCuv+CuquCvjeCuquCuv+CuqeCviCDgrq7grr7grrHgr43grrHigIwsIOCupOCviuCuleCvgeCuquCvjeCuquCvgSDgrofgrqPgr4jgrqrgr43grqrgrr/grqngr4gg4K6J4K6q4oCM4K6v4K+L4K6V4K6/4K6V4K+N4K6V4oCM4K614K+B4K6u4K+NLicsJ+CuquKAjOCuleCvjeCuleKAjOCuruCvjScsJ+CuleKAjOCun+CviOCumuCuvycsYXJyYXkoJyVkIOCuteKAjOCusOCuv+CumuCviCcsJyVkIOCuteKAjOCusOCuv+CumuCviOCuleKAjOCus+CvjScpLCfgrq7gr4HgrrTgr4Hgrq7gr4jgrq/grr7grqnigIwg4K6u4K+B4K6f4K6/4K614K+BJywn4K6o4oCM4K6V4oCM4K6y4K6/IChDbG9uZSknLCfgro/grrHgr43grrHgr4Hgrq7igIzgrqTgrr8nLCfgrofgrrHigIzgrpXgr43grpXgr4Hgrq7igIzgrqTgrr8gKEltcG9ydCknLCfgrqTigIzgrpXigIzgrrXigIzgrrLgr4gg4K6F4K6f4K+N4K6f4oCM4K614oCM4K6j4K+I4K6v4K6/4K6y4K+NIOCupOCvh+Cun+CvgScsJ+CuheCun+CvjeCun+KAjOCuteKAjOCuo+CviCcsJ+CuteKAjOCusOCuv+CumuCviOCuleKAjOCus+CvjScsJywnLCfgroXgrq7gr4jgrqrgr43grqrgr4Hgrq7gr4HgrrHgr4gg4K6a4oCM4K6w4K6/4K6v4K6+4K6p4oCM4K6k4oCM4K6y4K+N4K6y4oCMIChJbnZhbGlkIFNjaGVtYSkuJyk7YnJlYWs7Y2FzZSJhciI6JE49YXJyYXkoJ9mH2YQg2KPZhtiqINmF2KrYo9mD2K/YnycsJ9mF2YYg2LrZitixINin2YTZhdmF2YPZhiDYsdmB2Lkg2KfZhNmF2YTZgS4nLCfYrdis2YUg2KfZhNmF2YTZgSDYp9mE2KPZgti12Ykg2YfZiCAlc0IuJywn2KfZhNmF2YTZgSDYutmK2LEg2YXZiNis2YjYry4nLCfZgdin2LHYuicsJ9in2YTYo9i12YTZiicsJ9mE2Kcg2KrZiNis2K8g2KzYr9in2YjZhC4nLCfYp9mE2YTYutipJywn2KfZhNmF2LPYqti52YXZhCcsJ9mF2YYg2YHYttmE2YMg2KXYs9iq2LnZhdmEINil2K3Yr9mJINin2YTYutmF2KrYr9in2K/Yp9iqOiAlcy4nLCfYp9mE2YXZhNmBINmF2YjYrNmI2K8uJywn2YbZiNi5INin2YTZhdiz2KrYrtiv2YUnLCfYo9i52K/Yp9ivJywn2KfZhNiq2KfYsdmK2K4g2Ygg2KfZhNmI2YLYqicsJ9iz2YTYp9iz2YQnLCfYq9mG2KfYptmK2KknLCfYtNio2YPYqScsJ9mH2YbYr9iz2KknLCfZgtmI2KfYptmFJywn2KfZhNmF2K3YsdixJywn2KfZhNmF2LPYqti52YXZhCcsJ9mD2YTZhdipINin2YTZhdix2YjYsScsJ9iq2LPYrNmK2YQg2KfZhNiv2K7ZiNmEJywn2KrYs9is2YrZhCDYr9iu2YjZhCDYr9in2KbZhScsJ9i52YbYtdixINis2K/ZitivJywn2KfZhNi12YHYrdipINin2YTYs9in2KjZgtipJywnJWQg2KjYp9mK2KonLCckNS8kMy8kMScsJ9io2K3YqycsJ9mB2Yog2KfZiiDZhdmD2KfZhicsJ9iq2LHYqtmK2KgnLCfYrdivJywn2K3YsdmD2KknLCfYpdiu2KrZitin2LEnLCfYp9mE2KjYsdmK2K8g2KfZhNil2YTZg9iq2LHZiNmG2YonLCfZhdmGJywn2KfZhNmF2YjYttmI2LknLCfYpdmG2LTYp9ihJywn2YXZhNmB2KfYqiDZhdix2YHZgtipLicsJ9il2LHYs9in2YQnLCfYqtmFINil2LHYs9in2YQgJWQg2LHYs9in2YTYqS4nLCfYp9mE2KLZhicsJ0hIOk1NOlNTJywnamovbW0vW2FhYWFdJywn2KrYs9is2YrZhCDYp9mE2K7YsdmI2KwnLCdydGwnLCdSZXNlbmQgUE9TVCBkYXRhPycsJ9in2YTYrtin2K/ZhScsJ0NTUkYgVG9rZW4g2K7Yp9i32KYuINmF2YYg2YHYttmE2YMg2KPYudivINil2LHYs9in2YQg2KfZhNil2LPYqtmF2KfYsdipLicsJ9mF2Lkg2KfZhNiz2YTYp9mF2KkuJywn2LnZhNmK2YMg2KrZgdi52YrZhCDZhti42KfZhSDYp9mE2KzZhNiz2KfYqi4nLCfYpdmG2KrZh9iqINin2YTYrNmE2LPYqdiMINmF2YYg2YHYttmE2YMg2KPYudivINiq2LPYrNmK2YQg2KfZhNiv2K7ZiNmELicsJ9mB2LTZhCDZgdmKINiq2LPYrNmK2YQg2KfZhNiv2K7ZiNmELicsJ9il2YXYqtiv2KfYryDYutmK2LEg2YXZiNis2YjYrycsJ9il2YXYqtiv2KfYr9in2KogcGhwINin2YTZhdiv2LnZiNmF2Kkg2LrZitixINmF2YjYrNmI2K/YqS4nLCfZhdi52YTZiNmF2KfYqiBQT1NUINmD2KjZitix2Kkg2KzYr9inLiDZgtmFINio2KrZgtmE2YrYtSDYrdis2YUg2KfZhNmF2LnZhNmI2YXYp9iqINij2Ygg2YLZhSDYqNiy2YrYp9iv2Kkg2YLZitmF2KkgJXMg2YHZiiDYrtmK2KfYsdin2Kog2KfZhCBQSFAuJywn2KrZhSDYrdiw2YEg2KfZhNi52YbYtdixLicsJ9iq2YUg2KrYudiv2YrZhCDYp9mE2LnZhti12LEuJywn2KrZhSDYpdiv2LHYp9isINin2YTYudmG2LXYsS4nLCfYqti52K/ZitmEJywn2K3Zgdi4Jywn2KXYrdmB2Lgg2Ygg2YjYp9i12YQg2KfZhNiq2LnYr9mK2YQnLCfYrNmB2Lgg2Ygg2KXZhti02KfYoSDYp9mE2KrYp9mE2YonLCfZhdiz2K0nLCfYudiv2K8g2KfZhNi52YbYp9i12LEg2KfZhNmF2LnYr9mE2Kkg2YfZiCAlZC4nLCfYo9mG2YLYsSDZhtmC2LHYpyDZhdiy2K/ZiNis2Kcg2LnZhNmJINmC2YrZhdipINmE2KrYudiv2YrZhNmH2KcuJywn2LnYr9ivINin2YTYo9iz2LfYsSDYp9mE2YXYs9iq2YjYsdiv2Kkg2YfZiCAlZC4nLCfZhdmGINi62YrYsSDYp9mE2YXZhdmD2YYg2KXYrtiq2YrYp9ixINin2YTYrNiv2YjZhCcsJ9mE2Kcg2KrZiNis2K8g2YbYqtin2KbYrC4nLCfYqti52K/ZitmEJywn2LnZhNin2YLYp9iqJywn2KXYs9iq2LnZhdmEINin2YTYsdin2KjYtyAi2KrYudiv2YrZhCIg2YTYqti52K/ZitmEINmH2LDZhyDYp9mE2YLZitmF2KkuJywn2LXZgdit2KknLCfYp9mE2KPYrtmK2LHYqScsJyVkINij2LPYt9ixJywn2YbYqtmK2KzYqSDZg9in2YXZhNipJywn2YbYs9iuJywn2KrYtdiv2YrYsScsJ9il2LPYqtmK2LHYp9ivJywn2KjYrdirINmB2Yog2KfZhNis2K/Yp9mI2YQnLCfYrNiv2YjZhCcsJ9in2YTYo9iz2LfYsScsJywnLCfZhdiu2LfYtyDYrtin2LfYpi4nKTticmVhazt9aWYoZXh0ZW5zaW9uX2xvYWRlZCgncGRvJykpe2NsYXNzCk1pbl9QRE8KZXh0ZW5kcwpQRE97dmFyJF9yZXN1bHQsJHNlcnZlcl9pbmZvLCRhZmZlY3RlZF9yb3dzLCRlcnJvcjtmdW5jdGlvbgpfX2NvbnN0cnVjdCgpe31mdW5jdGlvbgpkc24oJE1kLCRFLCRHLCROZD0nYXV0aF9lcnJvcicpe3NldF9leGNlcHRpb25faGFuZGxlcigkTmQpO3BhcmVudDo6X19jb25zdHJ1Y3QoJE1kLCRFLCRHKTtyZXN0b3JlX2V4Y2VwdGlvbl9oYW5kbGVyKCk7JHRoaXMtPnNldEF0dHJpYnV0ZSgxMyxhcnJheSgnTWluX1BET1N0YXRlbWVudCcpKTskdGhpcy0+c2VydmVyX2luZm89JHRoaXMtPmdldEF0dHJpYnV0ZSg0KTt9ZnVuY3Rpb24KcXVlcnkoJGosJERhPWZhbHNlKXskaT1wYXJlbnQ6OnF1ZXJ5KCRqKTtpZighJGkpeyRVZD0kdGhpcy0+ZXJyb3JJbmZvKCk7JHRoaXMtPmVycm9yPSRVZFsyXTtyZXR1cm4KZmFsc2U7fSR0aGlzLT5zdG9yZV9yZXN1bHQoJGkpO3JldHVybiRpO31mdW5jdGlvbgptdWx0aV9xdWVyeSgkail7cmV0dXJuJHRoaXMtPl9yZXN1bHQ9JHRoaXMtPnF1ZXJ5KCRqKTt9ZnVuY3Rpb24Kc3RvcmVfcmVzdWx0KCRpPW51bGwpe2lmKCEkaSl7JGk9JHRoaXMtPl9yZXN1bHQ7fWlmKCRpLT5jb2x1bW5Db3VudCgpKXskaS0+bnVtX3Jvd3M9JGktPnJvd0NvdW50KCk7cmV0dXJuJGk7fSR0aGlzLT5hZmZlY3RlZF9yb3dzPSRpLT5yb3dDb3VudCgpO3JldHVybgp0cnVlO31mdW5jdGlvbgpuZXh0X3Jlc3VsdCgpe3JldHVybiR0aGlzLT5fcmVzdWx0LT5uZXh0Um93c2V0KCk7fWZ1bmN0aW9uCnJlc3VsdCgkaiwkZz0wKXskaT0kdGhpcy0+cXVlcnkoJGopO2lmKCEkaSl7cmV0dXJuCmZhbHNlO30kYz0kaS0+ZmV0Y2goKTtyZXR1cm4kY1skZ107fX1jbGFzcwpNaW5fUERPU3RhdGVtZW50CmV4dGVuZHMKUERPU3RhdGVtZW50e3ZhciRfb2Zmc2V0PTAsJG51bV9yb3dzO2Z1bmN0aW9uCmZldGNoX2Fzc29jKCl7cmV0dXJuJHRoaXMtPmZldGNoKDIpO31mdW5jdGlvbgpmZXRjaF9yb3coKXtyZXR1cm4kdGhpcy0+ZmV0Y2goMyk7fWZ1bmN0aW9uCmZldGNoX2ZpZWxkKCl7JGM9KG9iamVjdCkkdGhpcy0+Z2V0Q29sdW1uTWV0YSgkdGhpcy0+X29mZnNldCsrKTskYy0+b3JndGFibGU9JGMtPnRhYmxlOyRjLT5vcmduYW1lPSRjLT5uYW1lOyRjLT5jaGFyc2V0bnI9KGluX2FycmF5KCJibG9iIiwkYy0+ZmxhZ3MpPzYzOjApO3JldHVybiRjO319fSR0YT1hcnJheSgpOyR0YVsic3FsaXRlIl09IlNRTGl0ZSAzIjskdGFbInNxbGl0ZTIiXT0iU1FMaXRlIDIiO2lmKGlzc2V0KCRfR0VUWyJzcWxpdGUiXSl8fGlzc2V0KCRfR0VUWyJzcWxpdGUyIl0pKXskSmI9YXJyYXkoKGlzc2V0KCRfR0VUWyJzcWxpdGUiXSk/IlNRTGl0ZTMiOiJTUUxpdGUiKSwiUERPX1NRTGl0ZSIpO2RlZmluZSgiRFJJVkVSIiwoaXNzZXQoJF9HRVRbInNxbGl0ZSJdKT8ic3FsaXRlIjoic3FsaXRlMiIpKTtpZihleHRlbnNpb25fbG9hZGVkKGlzc2V0KCRfR0VUWyJzcWxpdGUiXSk/InNxbGl0ZTMiOiJzcWxpdGUiKSl7aWYoaXNzZXQoJF9HRVRbInNxbGl0ZSJdKSl7Y2xhc3MKTWluX1NRTGl0ZXt2YXIkZXh0ZW5zaW9uPSJTUUxpdGUzIiwkc2VydmVyX2luZm8sJGFmZmVjdGVkX3Jvd3MsJGVycm9yLCRfbGluaztmdW5jdGlvbgpNaW5fU1FMaXRlKCRWKXskdGhpcy0+X2xpbms9bmV3ClNRTGl0ZTMoJFYpOyR3Yz0kdGhpcy0+X2xpbmstPnZlcnNpb24oKTskdGhpcy0+c2VydmVyX2luZm89JHdjWyJ2ZXJzaW9uU3RyaW5nIl07fWZ1bmN0aW9uCnF1ZXJ5KCRqKXskaT1AJHRoaXMtPl9saW5rLT5xdWVyeSgkaik7aWYoISRpKXskdGhpcy0+ZXJyb3I9JHRoaXMtPl9saW5rLT5sYXN0RXJyb3JNc2coKTtyZXR1cm4KZmFsc2U7fWVsc2VpZigkaS0+bnVtQ29sdW1ucygpKXtyZXR1cm4KbmV3Ck1pbl9SZXN1bHQoJGkpO30kdGhpcy0+YWZmZWN0ZWRfcm93cz0kdGhpcy0+X2xpbmstPmNoYW5nZXMoKTtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KcXVvdGUoJHgpe3JldHVybiInIi4kdGhpcy0+X2xpbmstPmVzY2FwZVN0cmluZygkeCkuIiciO31mdW5jdGlvbgpzdG9yZV9yZXN1bHQoKXtyZXR1cm4kdGhpcy0+X3Jlc3VsdDt9ZnVuY3Rpb24KcmVzdWx0KCRqLCRnPTApeyRpPSR0aGlzLT5xdWVyeSgkaik7aWYoIWlzX29iamVjdCgkaSkpe3JldHVybgpmYWxzZTt9JGM9JGktPl9yZXN1bHQtPmZldGNoQXJyYXkoKTtyZXR1cm4kY1skZ107fX1jbGFzcwpNaW5fUmVzdWx0e3ZhciRfcmVzdWx0LCRfb2Zmc2V0PTAsJG51bV9yb3dzO2Z1bmN0aW9uCk1pbl9SZXN1bHQoJGkpeyR0aGlzLT5fcmVzdWx0PSRpO31mdW5jdGlvbgpmZXRjaF9hc3NvYygpe3JldHVybiR0aGlzLT5fcmVzdWx0LT5mZXRjaEFycmF5KFNRTElURTNfQVNTT0MpO31mdW5jdGlvbgpmZXRjaF9yb3coKXtyZXR1cm4kdGhpcy0+X3Jlc3VsdC0+ZmV0Y2hBcnJheShTUUxJVEUzX05VTSk7fWZ1bmN0aW9uCmZldGNoX2ZpZWxkKCl7JHU9JHRoaXMtPl9vZmZzZXQrKzskQT0kdGhpcy0+X3Jlc3VsdC0+Y29sdW1uVHlwZSgkdSk7cmV0dXJuKG9iamVjdClhcnJheSgibmFtZSI9PiR0aGlzLT5fcmVzdWx0LT5jb2x1bW5OYW1lKCR1KSwidHlwZSI9PiRBLCJjaGFyc2V0bnIiPT4oJEE9PVNRTElURTNfQkxPQj82MzowKSwpO31mdW5jdGlvbgpfX2Rlc2N0cnVjdCgpe3JldHVybiR0aGlzLT5fcmVzdWx0LT5maW5hbGl6ZSgpO319fWVsc2V7Y2xhc3MKTWluX1NRTGl0ZXt2YXIkZXh0ZW5zaW9uPSJTUUxpdGUiLCRzZXJ2ZXJfaW5mbywkYWZmZWN0ZWRfcm93cywkZXJyb3IsJF9saW5rO2Z1bmN0aW9uCk1pbl9TUUxpdGUoJFYpeyR0aGlzLT5zZXJ2ZXJfaW5mbz1zcWxpdGVfbGlidmVyc2lvbigpOyR0aGlzLT5fbGluaz1uZXcKU1FMaXRlRGF0YWJhc2UoJFYpO31mdW5jdGlvbgpxdWVyeSgkaiwkRGE9ZmFsc2UpeyRaZD0oJERhPyJ1bmJ1ZmZlcmVkUXVlcnkiOiJxdWVyeSIpOyRpPUAkdGhpcy0+X2xpbmstPiRaZCgkaixTUUxJVEVfQk9USCwkcCk7aWYoISRpKXskdGhpcy0+ZXJyb3I9JHA7cmV0dXJuCmZhbHNlO31lbHNlaWYoJGk9PT10cnVlKXskdGhpcy0+YWZmZWN0ZWRfcm93cz0kdGhpcy0+Y2hhbmdlcygpO3JldHVybgp0cnVlO31yZXR1cm4KbmV3Ck1pbl9SZXN1bHQoJGkpO31mdW5jdGlvbgpxdW90ZSgkeCl7cmV0dXJuIiciLnNxbGl0ZV9lc2NhcGVfc3RyaW5nKCR4KS4iJyI7fWZ1bmN0aW9uCnN0b3JlX3Jlc3VsdCgpe3JldHVybiR0aGlzLT5fcmVzdWx0O31mdW5jdGlvbgpyZXN1bHQoJGosJGc9MCl7JGk9JHRoaXMtPnF1ZXJ5KCRqKTtpZighaXNfb2JqZWN0KCRpKSl7cmV0dXJuCmZhbHNlO30kYz0kaS0+X3Jlc3VsdC0+ZmV0Y2goKTtyZXR1cm4kY1skZ107fX1jbGFzcwpNaW5fUmVzdWx0e3ZhciRfcmVzdWx0LCRfb2Zmc2V0PTAsJG51bV9yb3dzO2Z1bmN0aW9uCk1pbl9SZXN1bHQoJGkpeyR0aGlzLT5fcmVzdWx0PSRpO2lmKG1ldGhvZF9leGlzdHMoJGksJ251bVJvd3MnKSl7JHRoaXMtPm51bV9yb3dzPSRpLT5udW1Sb3dzKCk7fX1mdW5jdGlvbgpmZXRjaF9hc3NvYygpeyRjPSR0aGlzLT5fcmVzdWx0LT5mZXRjaChTUUxJVEVfQVNTT0MpO2lmKCEkYyl7cmV0dXJuCmZhbHNlO30kYj1hcnJheSgpO2ZvcmVhY2goJGMKYXMkZD0+JGEpeyRiWygkZFswXT09JyInP2lkZl91bmVzY2FwZSgkZCk6JGQpXT0kYTt9cmV0dXJuJGI7fWZ1bmN0aW9uCmZldGNoX3Jvdygpe3JldHVybiR0aGlzLT5fcmVzdWx0LT5mZXRjaChTUUxJVEVfTlVNKTt9ZnVuY3Rpb24KZmV0Y2hfZmllbGQoKXskZT0kdGhpcy0+X3Jlc3VsdC0+ZmllbGROYW1lKCR0aGlzLT5fb2Zmc2V0KyspOyRTPScoXFxbLipdfCIoPzpbXiJdfCIiKSoifCguKykpJztpZihwcmVnX21hdGNoKCJ+XigkU1xcLik/JFNcJH4iLCRlLCRrKSl7JGg9KCRrWzNdIT0iIj8ka1szXTppZGZfdW5lc2NhcGUoJGtbMl0pKTskZT0oJGtbNV0hPSIiPyRrWzVdOmlkZl91bmVzY2FwZSgka1s0XSkpO31yZXR1cm4ob2JqZWN0KWFycmF5KCJuYW1lIj0+JGUsIm9yZ25hbWUiPT4kZSwib3JndGFibGUiPT4kaCwpO319fX1lbHNlaWYoZXh0ZW5zaW9uX2xvYWRlZCgicGRvX3NxbGl0ZSIpKXtjbGFzcwpNaW5fU1FMaXRlCmV4dGVuZHMKTWluX1BET3t2YXIkZXh0ZW5zaW9uPSJQRE9fU1FMaXRlIjtmdW5jdGlvbgpNaW5fU1FMaXRlKCRWKXskdGhpcy0+ZHNuKERSSVZFUi4iOiRWIiwiIiwiIik7fX19aWYoY2xhc3NfZXhpc3RzKCJNaW5fU1FMaXRlIikpe2NsYXNzCk1pbl9EQgpleHRlbmRzCk1pbl9TUUxpdGV7ZnVuY3Rpb24KTWluX0RCKCl7JHRoaXMtPk1pbl9TUUxpdGUoIjptZW1vcnk6Iik7fWZ1bmN0aW9uCnNlbGVjdF9kYigkVil7aWYoaXNfcmVhZGFibGUoJFYpJiYkdGhpcy0+cXVlcnkoIkFUVEFDSCAiLiR0aGlzLT5xdW90ZShlcmVnKCIoXlsvXFxdfDopIiwkVik/JFY6ZGlybmFtZSgkX1NFUlZFUlsiU0NSSVBUX0ZJTEVOQU1FIl0pLiIvJFYiKS4iIEFTIGEiKSl7JHRoaXMtPk1pbl9TUUxpdGUoJFYpO3JldHVybgp0cnVlO31yZXR1cm4KZmFsc2U7fWZ1bmN0aW9uCm11bHRpX3F1ZXJ5KCRqKXtyZXR1cm4kdGhpcy0+X3Jlc3VsdD0kdGhpcy0+cXVlcnkoJGopO31mdW5jdGlvbgpuZXh0X3Jlc3VsdCgpe3JldHVybgpmYWxzZTt9fX1mdW5jdGlvbgppZGZfZXNjYXBlKCRCKXtyZXR1cm4nIicuc3RyX3JlcGxhY2UoJyInLCciIicsJEIpLiciJzt9ZnVuY3Rpb24KdGFibGUoJEIpe3JldHVybgppZGZfZXNjYXBlKCRCKTt9ZnVuY3Rpb24KY29ubmVjdCgpe3JldHVybgpuZXcKTWluX0RCO31mdW5jdGlvbgpnZXRfZGF0YWJhc2VzKCl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCmxpbWl0KCRqLCRtLCRGLCRUPTAsJGlhPSIgIil7cmV0dXJuIiAkaiRtIi4oaXNzZXQoJEYpPyRpYS4iTElNSVQgJEYiLigkVD8iIE9GRlNFVCAkVCI6IiIpOiIiKTt9ZnVuY3Rpb24KbGltaXQxKCRqLCRtKXtnbG9iYWwkZjtyZXR1cm4oJGYtPnJlc3VsdCgiU0VMRUNUIHNxbGl0ZV9jb21waWxlb3B0aW9uX3VzZWQoJ0VOQUJMRV9VUERBVEVfREVMRVRFX0xJTUlUJykiKT9saW1pdCgkaiwkbSwxKToiICRqJG0iKTt9ZnVuY3Rpb24KZGJfY29sbGF0aW9uKCRDLCRIYil7Z2xvYmFsJGY7cmV0dXJuJGYtPnJlc3VsdCgiUFJBR01BIGVuY29kaW5nIik7fWZ1bmN0aW9uCmVuZ2luZXMoKXtyZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24KbG9nZ2VkX3VzZXIoKXtyZXR1cm4KZ2V0X2N1cnJlbnRfdXNlcigpO31mdW5jdGlvbgp0YWJsZXNfbGlzdCgpe3JldHVybgpnZXRfa2V5X3ZhbHMoIlNFTEVDVCBuYW1lLCB0eXBlIEZST00gc3FsaXRlX21hc3RlciBXSEVSRSB0eXBlIElOICgndGFibGUnLCAndmlldycpIE9SREVSIEJZIChuYW1lID0gJ3NxbGl0ZV9zZXF1ZW5jZScpLCBuYW1lIiwxKTt9ZnVuY3Rpb24KY291bnRfdGFibGVzKCRQKXtyZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24KdGFibGVfc3RhdHVzKCRlPSIiKXskYj1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIlNFTEVDVCBuYW1lIEFTIE5hbWUsIHR5cGUgQVMgRW5naW5lIEZST00gc3FsaXRlX21hc3RlciBXSEVSRSB0eXBlIElOICgndGFibGUnLCAndmlldycpIi4oJGUhPSIiPyIgQU5EIG5hbWUgPSAiLnEoJGUpOiIiKSlhcyRjKXskY1siQXV0b19pbmNyZW1lbnQiXT0iIjskYlskY1siTmFtZSJdXT0kYzt9Zm9yZWFjaChnZXRfcm93cygiU0VMRUNUICogRlJPTSBzcWxpdGVfc2VxdWVuY2UiLG51bGwsIiIpYXMkYyl7JGJbJGNbIm5hbWUiXV1bIkF1dG9faW5jcmVtZW50Il09JGNbInNlcSJdO31yZXR1cm4oJGUhPSIiPyRiWyRlXTokYik7fWZ1bmN0aW9uCmlzX3ZpZXcoJEQpe3JldHVybiREWyJFbmdpbmUiXT09InZpZXciO31mdW5jdGlvbgpma19zdXBwb3J0KCREKXtnbG9iYWwkZjtyZXR1cm4hJGYtPnJlc3VsdCgiU0VMRUNUIHNxbGl0ZV9jb21waWxlb3B0aW9uX3VzZWQoJ09NSVRfRk9SRUlHTl9LRVknKSIpO31mdW5jdGlvbgpmaWVsZHMoJGgpeyRiPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiUFJBR01BIHRhYmxlX2luZm8oIi50YWJsZSgkaCkuIikiKWFzJGMpeyRBPXN0cnRvbG93ZXIoJGNbInR5cGUiXSk7JGtiPSRjWyJkZmx0X3ZhbHVlIl07JGJbJGNbIm5hbWUiXV09YXJyYXkoImZpZWxkIj0+JGNbIm5hbWUiXSwidHlwZSI9PihlcmVnaSgiaW50IiwkQSk/ImludGVnZXIiOihlcmVnaSgiY2hhcnxjbG9ifHRleHQiLCRBKT8idGV4dCI6KGVyZWdpKCJibG9iIiwkQSk/ImJsb2IiOihlcmVnaSgicmVhbHxmbG9hfGRvdWIiLCRBKT8icmVhbCI6Im51bWVyaWMiKSkpKSwiZnVsbF90eXBlIj0+JEEsImRlZmF1bHQiPT4oZXJlZygiJyguKiknIiwka2IsJGspP3N0cl9yZXBsYWNlKCInJyIsIiciLCRrWzFdKTooJGtiPT0iTlVMTCI/bnVsbDoka2IpKSwibnVsbCI9PiEkY1sibm90bnVsbCJdLCJhdXRvX2luY3JlbWVudCI9PmVyZWdpKCdeaW50ZWdlciQnLCRBKSYmJGNbInBrIl0sInByaXZpbGVnZXMiPT5hcnJheSgic2VsZWN0Ij0+MSwiaW5zZXJ0Ij0+MSwidXBkYXRlIj0+MSksInByaW1hcnkiPT4kY1sicGsiXSwpO31yZXR1cm4kYjt9ZnVuY3Rpb24KaW5kZXhlcygkaCwkTT1udWxsKXskYj1hcnJheSgpOyR1YT1hcnJheSgpO2ZvcmVhY2goZmllbGRzKCRoKWFzJGcpe2lmKCRnWyJwcmltYXJ5Il0peyR1YVtdPSRnWyJmaWVsZCJdO319aWYoJHVhKXskYlsiIl09YXJyYXkoInR5cGUiPT4iUFJJTUFSWSIsImNvbHVtbnMiPT4kdWEsImxlbmd0aHMiPT5hcnJheSgpKTt9Zm9yZWFjaChnZXRfcm93cygiUFJBR01BIGluZGV4X2xpc3QoIi50YWJsZSgkaCkuIikiKWFzJGMpeyRiWyRjWyJuYW1lIl1dWyJ0eXBlIl09KCRjWyJ1bmlxdWUiXT8iVU5JUVVFIjoiSU5ERVgiKTskYlskY1sibmFtZSJdXVsibGVuZ3RocyJdPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiUFJBR01BIGluZGV4X2luZm8oIi5pZGZfZXNjYXBlKCRjWyJuYW1lIl0pLiIpIilhcyRBZCl7JGJbJGNbIm5hbWUiXV1bImNvbHVtbnMiXVtdPSRBZFsibmFtZSJdO319cmV0dXJuJGI7fWZ1bmN0aW9uCmZvcmVpZ25fa2V5cygkaCl7JGI9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJQUkFHTUEgZm9yZWlnbl9rZXlfbGlzdCgiLnRhYmxlKCRoKS4iKSIpYXMkYyl7JEk9JiRiWyRjWyJpZCJdXTtpZighJEkpeyRJPSRjO30kSVsic291cmNlIl1bXT0kY1siZnJvbSJdOyRJWyJ0YXJnZXQiXVtdPSRjWyJ0byJdO31yZXR1cm4kYjt9ZnVuY3Rpb24KdmlldygkZSl7Z2xvYmFsJGY7cmV0dXJuCmFycmF5KCJzZWxlY3QiPT5wcmVnX3JlcGxhY2UoJ35eKD86W15gIltdK3xgW15gXSpgfCJbXiJdKiIpKiBBU1xccyt+aVUnLCcnLCRmLT5yZXN1bHQoIlNFTEVDVCBzcWwgRlJPTSBzcWxpdGVfbWFzdGVyIFdIRVJFIG5hbWUgPSAiLnEoJGUpKSkpO31mdW5jdGlvbgpjb2xsYXRpb25zKCl7cmV0dXJuKGlzc2V0KCRfR0VUWyJjcmVhdGUiXSk/Z2V0X3ZhbHMoIlBSQUdNQSBjb2xsYXRpb25fbGlzdCIsMSk6YXJyYXkoKSk7fWZ1bmN0aW9uCmluZm9ybWF0aW9uX3NjaGVtYSgkQyl7cmV0dXJuCmZhbHNlO31mdW5jdGlvbgplcnJvcigpe2dsb2JhbCRmO3JldHVybgpoKCRmLT5lcnJvcik7fWZ1bmN0aW9uCmV4YWN0X3ZhbHVlKCRhKXtyZXR1cm4KcSgkYSk7fWZ1bmN0aW9uCmNoZWNrX3NxbGl0ZV9uYW1lKCRlKXtnbG9iYWwkZjskWWM9ImRifHNkYnxzcWxpdGUiO2lmKCFwcmVnX21hdGNoKCJ+XlteXFwwXSpcXC4oJFljKVwkfiIsJGUpKXskZi0+ZXJyb3I9bGFuZyg5LHN0cl9yZXBsYWNlKCJ8IiwiLCAiLCRZYykpO3JldHVybgpmYWxzZTt9cmV0dXJuCnRydWU7fWZ1bmN0aW9uCmNyZWF0ZV9kYXRhYmFzZSgkQywkSCl7Z2xvYmFsJGY7aWYoZmlsZV9leGlzdHMoJEMpKXskZi0+ZXJyb3I9bGFuZygxMCk7cmV0dXJuCmZhbHNlO31pZighY2hlY2tfc3FsaXRlX25hbWUoJEMpKXtyZXR1cm4KZmFsc2U7fSR2PW5ldwpNaW5fU1FMaXRlKCRDKTskdi0+cXVlcnkoJ1BSQUdNQSBlbmNvZGluZyA9ICJVVEYtOCInKTskdi0+cXVlcnkoJ0NSRUFURSBUQUJMRSBhZG1pbmVyIChpKScpOyR2LT5xdWVyeSgnRFJPUCBUQUJMRSBhZG1pbmVyJyk7cmV0dXJuCnRydWU7fWZ1bmN0aW9uCmRyb3BfZGF0YWJhc2VzKCRQKXtnbG9iYWwkZjskZi0+TWluX1NRTGl0ZSgiOm1lbW9yeToiKTtmb3JlYWNoKCRQCmFzJEMpe2lmKCFAdW5saW5rKCRDKSl7JGYtPmVycm9yPWxhbmcoMTApO3JldHVybgpmYWxzZTt9fXJldHVybgp0cnVlO31mdW5jdGlvbgpyZW5hbWVfZGF0YWJhc2UoJGUsJEgpe2dsb2JhbCRmO2lmKCFjaGVja19zcWxpdGVfbmFtZSgkZSkpe3JldHVybgpmYWxzZTt9JGYtPk1pbl9TUUxpdGUoIjptZW1vcnk6Iik7JGYtPmVycm9yPWxhbmcoMTApO3JldHVybkByZW5hbWUoREIsJGUpO31mdW5jdGlvbgphdXRvX2luY3JlbWVudCgpe3JldHVybiIgUFJJTUFSWSBLRVkiLihEUklWRVI9PSJzcWxpdGUiPyIgQVVUT0lOQ1JFTUVOVCI6IiIpO31mdW5jdGlvbgphbHRlcl90YWJsZSgkaCwkZSwkdCwkSmEsJFhhLCRnYiwkSCwkeWEsJHNiKXskcj1hcnJheSgpO2ZvcmVhY2goJHQKYXMkZyl7aWYoJGdbMV0peyRyW109KCRoIT0iIiYmJGdbMF09PSIiPyJBREQgIjoiICAiKS5pbXBsb2RlKCRnWzFdKTt9fSRyPWFycmF5X21lcmdlKCRyLCRKYSk7aWYoJGghPSIiKXtmb3JlYWNoKCRyCmFzJGEpe2lmKCFxdWVyaWVzKCJBTFRFUiBUQUJMRSAiLnRhYmxlKCRoKS4iICRhIikpe3JldHVybgpmYWxzZTt9fWlmKCRoIT0kZSYmIXF1ZXJpZXMoIkFMVEVSIFRBQkxFICIudGFibGUoJGgpLiIgUkVOQU1FIFRPICIudGFibGUoJGUpKSl7cmV0dXJuCmZhbHNlO319ZWxzZWlmKCFxdWVyaWVzKCJDUkVBVEUgVEFCTEUgIi50YWJsZSgkZSkuIiAoXG4iLmltcGxvZGUoIixcbiIsJHIpLiJcbikiKSl7cmV0dXJuCmZhbHNlO31pZigkeWEpe3F1ZXJpZXMoIlVQREFURSBzcWxpdGVfc2VxdWVuY2UgU0VUIHNlcSA9ICR5YSBXSEVSRSBuYW1lID0gIi5xKCRlKSk7fXJldHVybgp0cnVlO31mdW5jdGlvbgphbHRlcl9pbmRleGVzKCRoLCRyKXtmb3JlYWNoKCRyCmFzJGEpe2lmKCFxdWVyaWVzKCgkYVsyXT8iRFJPUCBJTkRFWCI6IkNSRUFURSIuKCRhWzBdIT0iSU5ERVgiPyIgVU5JUVVFIjoiIikuIiBJTkRFWCAiLmlkZl9lc2NhcGUodW5pcWlkKCRoLiJfIikpLiIgT04gIi50YWJsZSgkaCkpLiIgJGFbMV0iKSl7cmV0dXJuCmZhbHNlO319cmV0dXJuCnRydWU7fWZ1bmN0aW9uCnRydW5jYXRlX3RhYmxlcygkeil7cmV0dXJuCmFwcGx5X3F1ZXJpZXMoIkRFTEVURSBGUk9NIiwkeik7fWZ1bmN0aW9uCmRyb3Bfdmlld3MoJFcpe3JldHVybgphcHBseV9xdWVyaWVzKCJEUk9QIFZJRVciLCRXKTt9ZnVuY3Rpb24KZHJvcF90YWJsZXMoJHope3JldHVybgphcHBseV9xdWVyaWVzKCJEUk9QIFRBQkxFIiwkeik7fWZ1bmN0aW9uCm1vdmVfdGFibGVzKCR6LCRXLCRvYSl7cmV0dXJuCmZhbHNlO31mdW5jdGlvbgp0cmlnZ2VyKCRlKXtnbG9iYWwkZjtwcmVnX21hdGNoKCd+XkNSRUFURVxccytUUklHR0VSXFxzKig/OlteYCJcXHNdK3xgW15gXSpgfCJbXiJdKiIpK1xccyooW2Etel0rKVxccysoW2Etel0rKVxccytPTlxccyooPzpbXmAiXFxzXSt8YFteYF0qYHwiW14iXSoiKStcXHMqKD86Rk9SXFxzKkVBQ0hcXHMqUk9XXFxzKT8oLiopfmlzJywkZi0+cmVzdWx0KCJTRUxFQ1Qgc3FsIEZST00gc3FsaXRlX21hc3RlciBXSEVSRSBuYW1lID0gIi5xKCRlKSksJGspO3JldHVybgphcnJheSgiVGltaW5nIj0+c3RydG91cHBlcigka1sxXSksIkV2ZW50Ij0+c3RydG91cHBlcigka1syXSksIlRyaWdnZXIiPT4kZSwiU3RhdGVtZW50Ij0+JGtbM10pO31mdW5jdGlvbgp0cmlnZ2VycygkaCl7JGI9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJTRUxFQ1QgKiBGUk9NIHNxbGl0ZV9tYXN0ZXIgV0hFUkUgdHlwZSA9ICd0cmlnZ2VyJyBBTkQgdGJsX25hbWUgPSAiLnEoJGgpKWFzJGMpe3ByZWdfbWF0Y2goJ35eQ1JFQVRFXFxzK1RSSUdHRVJcXHMqKD86W15gIlxcc10rfGBbXmBdKmB8IlteIl0qIikrXFxzKihbYS16XSspXFxzKihbYS16XSspfmknLCRjWyJzcWwiXSwkayk7JGJbJGNbIm5hbWUiXV09YXJyYXkoJGtbMV0sJGtbMl0pO31yZXR1cm4kYjt9ZnVuY3Rpb24KdHJpZ2dlcl9vcHRpb25zKCl7cmV0dXJuCmFycmF5KCJUaW1pbmciPT5hcnJheSgiQkVGT1JFIiwiQUZURVIiLCJJTlNURUFEIE9GIiksIlR5cGUiPT5hcnJheSgiRk9SIEVBQ0ggUk9XIiksKTt9ZnVuY3Rpb24Kcm91dGluZSgkZSwkQSl7fWZ1bmN0aW9uCnJvdXRpbmVzKCl7fWZ1bmN0aW9uCmJlZ2luKCl7cmV0dXJuCnF1ZXJpZXMoIkJFR0lOIik7fWZ1bmN0aW9uCmluc2VydF9pbnRvKCRoLCRvKXtyZXR1cm4KcXVlcmllcygiSU5TRVJUIElOVE8gIi50YWJsZSgkaCkuKCRvPyIgKCIuaW1wbG9kZSgiLCAiLGFycmF5X2tleXMoJG8pKS4iKVxuVkFMVUVTICgiLmltcGxvZGUoIiwgIiwkbykuIikiOiJERUZBVUxUIFZBTFVFUyIpKTt9ZnVuY3Rpb24KaW5zZXJ0X3VwZGF0ZSgkaCwkbywkdWEpe3JldHVybgpxdWVyaWVzKCJSRVBMQUNFIElOVE8gIi50YWJsZSgkaCkuIiAoIi5pbXBsb2RlKCIsICIsYXJyYXlfa2V5cygkbykpLiIpIFZBTFVFUyAoIi5pbXBsb2RlKCIsICIsJG8pLiIpIik7fWZ1bmN0aW9uCmxhc3RfaWQoKXtnbG9iYWwkZjtyZXR1cm4kZi0+cmVzdWx0KCJTRUxFQ1QgTEFTVF9JTlNFUlRfUk9XSUQoKSIpO31mdW5jdGlvbgpleHBsYWluKCRmLCRqKXtyZXR1cm4kZi0+cXVlcnkoIkVYUExBSU4gJGoiKTt9ZnVuY3Rpb24KdHlwZXMoKXtyZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24Kc2NoZW1hcygpe3JldHVybgphcnJheSgpO31mdW5jdGlvbgpnZXRfc2NoZW1hKCl7cmV0dXJuIiI7fWZ1bmN0aW9uCnNldF9zY2hlbWEoJEJkKXtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KY3JlYXRlX3NxbCgkaCwkeWEpe2dsb2JhbCRmO3JldHVybiRmLT5yZXN1bHQoIlNFTEVDVCBzcWwgRlJPTSBzcWxpdGVfbWFzdGVyIFdIRVJFIHR5cGUgPSAndGFibGUnIEFORCBuYW1lID0gIi5xKCRoKSk7fWZ1bmN0aW9uCnRydW5jYXRlX3NxbCgkaCl7cmV0dXJuIkRFTEVURSBGUk9NICIudGFibGUoJGgpO31mdW5jdGlvbgp1c2Vfc3FsKCRSKXt9ZnVuY3Rpb24KdHJpZ2dlcl9zcWwoJGgsJHRiKXtyZXR1cm4KaW1wbG9kZShnZXRfdmFscygiU0VMRUNUIHNxbCB8fCAnOztcbicgRlJPTSBzcWxpdGVfbWFzdGVyIFdIRVJFIHR5cGUgPSAndHJpZ2dlcicgQU5EIG5hbWUgPSAiLnEoJGgpKSk7fWZ1bmN0aW9uCnNob3dfdmFyaWFibGVzKCl7Z2xvYmFsJGY7JGI9YXJyYXkoKTtmb3JlYWNoKGFycmF5KCJhdXRvX3ZhY3V1bSIsImNhY2hlX3NpemUiLCJjb3VudF9jaGFuZ2VzIiwiZGVmYXVsdF9jYWNoZV9zaXplIiwiZW1wdHlfcmVzdWx0X2NhbGxiYWNrcyIsImVuY29kaW5nIiwiZm9yZWlnbl9rZXlzIiwiZnVsbF9jb2x1bW5fbmFtZXMiLCJmdWxsZnN5bmMiLCJqb3VybmFsX21vZGUiLCJqb3VybmFsX3NpemVfbGltaXQiLCJsZWdhY3lfZmlsZV9mb3JtYXQiLCJsb2NraW5nX21vZGUiLCJwYWdlX3NpemUiLCJtYXhfcGFnZV9jb3VudCIsInJlYWRfdW5jb21taXR0ZWQiLCJyZWN1cnNpdmVfdHJpZ2dlcnMiLCJyZXZlcnNlX3Vub3JkZXJlZF9zZWxlY3RzIiwic2VjdXJlX2RlbGV0ZSIsInNob3J0X2NvbHVtbl9uYW1lcyIsInN5bmNocm9ub3VzIiwidGVtcF9zdG9yZSIsInRlbXBfc3RvcmVfZGlyZWN0b3J5Iiwic2NoZW1hX3ZlcnNpb24iLCJpbnRlZ3JpdHlfY2hlY2siLCJxdWlja19jaGVjayIpYXMkZCl7JGJbJGRdPSRmLT5yZXN1bHQoIlBSQUdNQSAkZCIpO31yZXR1cm4kYjt9ZnVuY3Rpb24Kc2hvd19zdGF0dXMoKXskYj1hcnJheSgpO2ZvcmVhY2goZ2V0X3ZhbHMoIlBSQUdNQSBjb21waWxlX29wdGlvbnMiKWFzJGJlKXtsaXN0KCRkLCRhKT1leHBsb2RlKCI9IiwkYmUsMik7JGJbJGRdPSRhO31yZXR1cm4kYjt9ZnVuY3Rpb24Kc3VwcG9ydCgkUGEpe3JldHVybgplcmVnKCdeKHZpZXd8dHJpZ2dlcnx2YXJpYWJsZXN8c3RhdHVzfGR1bXApJCcsJFBhKTt9JHZhPSJzcWxpdGUiOyRaPWFycmF5KCJpbnRlZ2VyIj0+MCwicmVhbCI9PjAsIm51bWVyaWMiPT4wLCJ0ZXh0Ij0+MCwiYmxvYiI9PjApOyRIYT1hcnJheV9rZXlzKCRaKTskR2I9YXJyYXkoKTskdWI9YXJyYXkoIj0iLCI8IiwiPiIsIjw9IiwiPj0iLCIhPSIsIkxJS0UiLCJMSUtFICUlIiwiSU4iLCJJUyBOVUxMIiwiTk9UIExJS0UiLCJOT1QgSU4iLCJJUyBOT1QgTlVMTCIsIiIpOyRlYT1hcnJheSgiaGV4IiwibGVuZ3RoIiwibG93ZXIiLCJyb3VuZCIsInVuaXhlcG9jaCIsInVwcGVyIik7JEliPWFycmF5KCJhdmciLCJjb3VudCIsImNvdW50IGRpc3RpbmN0IiwiZ3JvdXBfY29uY2F0IiwibWF4IiwibWluIiwic3VtIik7JEZiPWFycmF5KGFycmF5KCksYXJyYXkoImludGVnZXJ8cmVhbHxudW1lcmljIj0+IisvLSIsInRleHQiPT4ifHwiLCkpO30kdGFbInBnc3FsIl09IlBvc3RncmVTUUwiO2lmKGlzc2V0KCRfR0VUWyJwZ3NxbCJdKSl7JEpiPWFycmF5KCJQZ1NRTCIsIlBET19QZ1NRTCIpO2RlZmluZSgiRFJJVkVSIiwicGdzcWwiKTtpZihleHRlbnNpb25fbG9hZGVkKCJwZ3NxbCIpKXtjbGFzcwpNaW5fREJ7dmFyJGV4dGVuc2lvbj0iUGdTUUwiLCRfbGluaywkX3Jlc3VsdCwkX3N0cmluZywkX2RhdGFiYXNlPXRydWUsJHNlcnZlcl9pbmZvLCRhZmZlY3RlZF9yb3dzLCRlcnJvcjtmdW5jdGlvbgpfZXJyb3IoJGNlLCRwKXtpZihpbmlfYm9vbCgiaHRtbF9lcnJvcnMiKSl7JHA9aHRtbF9lbnRpdHlfZGVjb2RlKHN0cmlwX3RhZ3MoJHApKTt9JHA9ZXJlZ19yZXBsYWNlKCdeW146XSo6ICcsJycsJHApOyR0aGlzLT5lcnJvcj0kcDt9ZnVuY3Rpb24KY29ubmVjdCgkXywkRSwkRyl7c2V0X2Vycm9yX2hhbmRsZXIoYXJyYXkoJHRoaXMsJ19lcnJvcicpKTskdGhpcy0+X3N0cmluZz0iaG9zdD0nIi5zdHJfcmVwbGFjZSgiOiIsIicgcG9ydD0nIixhZGRjc2xhc2hlcygkXywiJ1xcIikpLiInIHVzZXI9JyIuYWRkY3NsYXNoZXMoJEUsIidcXCIpLiInIHBhc3N3b3JkPSciLmFkZGNzbGFzaGVzKCRHLCInXFwiKS4iJyI7JHRoaXMtPl9saW5rPUBwZ19jb25uZWN0KCR0aGlzLT5fc3RyaW5nLihEQiE9IiI/IiBkYm5hbWU9JyIuYWRkY3NsYXNoZXMoREIsIidcXCIpLiInIjoiIGRibmFtZT0ndGVtcGxhdGUxJyIpLFBHU1FMX0NPTk5FQ1RfRk9SQ0VfTkVXKTtpZighJHRoaXMtPl9saW5rJiZEQiE9IiIpeyR0aGlzLT5fZGF0YWJhc2U9ZmFsc2U7JHRoaXMtPl9saW5rPUBwZ19jb25uZWN0KCIkdGhpcy0+X3N0cmluZyBkYm5hbWU9J3RlbXBsYXRlMSciLFBHU1FMX0NPTk5FQ1RfRk9SQ0VfTkVXKTt9cmVzdG9yZV9lcnJvcl9oYW5kbGVyKCk7aWYoJHRoaXMtPl9saW5rKXskd2M9cGdfdmVyc2lvbigkdGhpcy0+X2xpbmspOyR0aGlzLT5zZXJ2ZXJfaW5mbz0kd2NbInNlcnZlciJdO3BnX3NldF9jbGllbnRfZW5jb2RpbmcoJHRoaXMtPl9saW5rLCJVVEY4Iik7fXJldHVybihib29sKSR0aGlzLT5fbGluazt9ZnVuY3Rpb24KcXVvdGUoJHgpe3JldHVybiInIi5wZ19lc2NhcGVfc3RyaW5nKCR0aGlzLT5fbGluaywkeCkuIiciO31mdW5jdGlvbgpzZWxlY3RfZGIoJFIpe2lmKCRSPT1EQil7cmV0dXJuJHRoaXMtPl9kYXRhYmFzZTt9JGI9QHBnX2Nvbm5lY3QoIiR0aGlzLT5fc3RyaW5nIGRibmFtZT0nIi5hZGRjc2xhc2hlcygkUiwiJ1xcIikuIiciLFBHU1FMX0NPTk5FQ1RfRk9SQ0VfTkVXKTtpZigkYil7JHRoaXMtPl9saW5rPSRiO31yZXR1cm4kYjt9ZnVuY3Rpb24KY2xvc2UoKXskdGhpcy0+X2xpbms9QHBnX2Nvbm5lY3QoIiR0aGlzLT5fc3RyaW5nIGRibmFtZT0ndGVtcGxhdGUxJyIpO31mdW5jdGlvbgpxdWVyeSgkaiwkRGE9ZmFsc2UpeyRpPUBwZ19xdWVyeSgkdGhpcy0+X2xpbmssJGopO2lmKCEkaSl7JHRoaXMtPmVycm9yPXBnX2xhc3RfZXJyb3IoJHRoaXMtPl9saW5rKTtyZXR1cm4KZmFsc2U7fWVsc2VpZighcGdfbnVtX2ZpZWxkcygkaSkpeyR0aGlzLT5hZmZlY3RlZF9yb3dzPXBnX2FmZmVjdGVkX3Jvd3MoJGkpO3JldHVybgp0cnVlO31yZXR1cm4KbmV3Ck1pbl9SZXN1bHQoJGkpO31mdW5jdGlvbgptdWx0aV9xdWVyeSgkail7cmV0dXJuJHRoaXMtPl9yZXN1bHQ9JHRoaXMtPnF1ZXJ5KCRqKTt9ZnVuY3Rpb24Kc3RvcmVfcmVzdWx0KCl7cmV0dXJuJHRoaXMtPl9yZXN1bHQ7fWZ1bmN0aW9uCm5leHRfcmVzdWx0KCl7cmV0dXJuCmZhbHNlO31mdW5jdGlvbgpyZXN1bHQoJGosJGc9MCl7JGk9JHRoaXMtPnF1ZXJ5KCRqKTtpZighJGl8fCEkaS0+bnVtX3Jvd3Mpe3JldHVybgpmYWxzZTt9cmV0dXJuCnBnX2ZldGNoX3Jlc3VsdCgkaS0+X3Jlc3VsdCwwLCRnKTt9fWNsYXNzCk1pbl9SZXN1bHR7dmFyJF9yZXN1bHQsJF9vZmZzZXQ9MCwkbnVtX3Jvd3M7ZnVuY3Rpb24KTWluX1Jlc3VsdCgkaSl7JHRoaXMtPl9yZXN1bHQ9JGk7JHRoaXMtPm51bV9yb3dzPXBnX251bV9yb3dzKCRpKTt9ZnVuY3Rpb24KZmV0Y2hfYXNzb2MoKXtyZXR1cm4KcGdfZmV0Y2hfYXNzb2MoJHRoaXMtPl9yZXN1bHQpO31mdW5jdGlvbgpmZXRjaF9yb3coKXtyZXR1cm4KcGdfZmV0Y2hfcm93KCR0aGlzLT5fcmVzdWx0KTt9ZnVuY3Rpb24KZmV0Y2hfZmllbGQoKXskdT0kdGhpcy0+X29mZnNldCsrOyRiPW5ldwpzdGRDbGFzcztpZihmdW5jdGlvbl9leGlzdHMoJ3BnX2ZpZWxkX3RhYmxlJykpeyRiLT5vcmd0YWJsZT1wZ19maWVsZF90YWJsZSgkdGhpcy0+X3Jlc3VsdCwkdSk7fSRiLT5uYW1lPXBnX2ZpZWxkX25hbWUoJHRoaXMtPl9yZXN1bHQsJHUpOyRiLT5vcmduYW1lPSRiLT5uYW1lOyRiLT50eXBlPXBnX2ZpZWxkX3R5cGUoJHRoaXMtPl9yZXN1bHQsJHUpOyRiLT5jaGFyc2V0bnI9KCRiLT50eXBlPT0iYnl0ZWEiPzYzOjApO3JldHVybiRiO31mdW5jdGlvbgpfX2Rlc3RydWN0KCl7cGdfZnJlZV9yZXN1bHQoJHRoaXMtPl9yZXN1bHQpO319fWVsc2VpZihleHRlbnNpb25fbG9hZGVkKCJwZG9fcGdzcWwiKSl7Y2xhc3MKTWluX0RCCmV4dGVuZHMKTWluX1BET3t2YXIkZXh0ZW5zaW9uPSJQRE9fUGdTUUwiO2Z1bmN0aW9uCmNvbm5lY3QoJF8sJEUsJEcpeyR4PSJwZ3NxbDpob3N0PSciLnN0cl9yZXBsYWNlKCI6IiwiJyBwb3J0PSciLGFkZGNzbGFzaGVzKCRfLCInXFwiKSkuIicgb3B0aW9ucz0nLWMgY2xpZW50X2VuY29kaW5nPXV0ZjgnIjskdGhpcy0+ZHNuKCR4LihEQiE9IiI/IiBkYm5hbWU9JyIuYWRkY3NsYXNoZXMoREIsIidcXCIpLiInIjoiIiksJEUsJEcpO3JldHVybgp0cnVlO31mdW5jdGlvbgpzZWxlY3RfZGIoJFIpe3JldHVybihEQj09JFIpO31mdW5jdGlvbgpjbG9zZSgpe319fWZ1bmN0aW9uCmlkZl9lc2NhcGUoJEIpe3JldHVybiciJy5zdHJfcmVwbGFjZSgnIicsJyIiJywkQikuJyInO31mdW5jdGlvbgp0YWJsZSgkQil7cmV0dXJuCmlkZl9lc2NhcGUoJEIpO31mdW5jdGlvbgpjb25uZWN0KCl7Z2xvYmFsJGw7JGY9bmV3Ck1pbl9EQjskZ2E9JGwtPmNyZWRlbnRpYWxzKCk7aWYoJGYtPmNvbm5lY3QoJGdhWzBdLCRnYVsxXSwkZ2FbMl0pKXtyZXR1cm4kZjt9cmV0dXJuJGYtPmVycm9yO31mdW5jdGlvbgpnZXRfZGF0YWJhc2VzKCl7cmV0dXJuCmdldF92YWxzKCJTRUxFQ1QgZGF0bmFtZSBGUk9NIHBnX2RhdGFiYXNlIik7fWZ1bmN0aW9uCmxpbWl0KCRqLCRtLCRGLCRUPTAsJGlhPSIgIil7cmV0dXJuIiAkaiRtIi4oaXNzZXQoJEYpPyRpYS4iTElNSVQgJEYiLigkVD8iIE9GRlNFVCAkVCI6IiIpOiIiKTt9ZnVuY3Rpb24KbGltaXQxKCRqLCRtKXtyZXR1cm4iICRqJG0iO31mdW5jdGlvbgpkYl9jb2xsYXRpb24oJEMsJEhiKXtnbG9iYWwkZjtyZXR1cm4kZi0+cmVzdWx0KCJTSE9XIExDX0NPTExBVEUiKTt9ZnVuY3Rpb24KZW5naW5lcygpe3JldHVybgphcnJheSgpO31mdW5jdGlvbgpsb2dnZWRfdXNlcigpe2dsb2JhbCRmO3JldHVybiRmLT5yZXN1bHQoIlNFTEVDVCB1c2VyIik7fWZ1bmN0aW9uCnRhYmxlc19saXN0KCl7cmV0dXJuCmdldF9rZXlfdmFscygiU0VMRUNUIHRhYmxlX25hbWUsIHRhYmxlX3R5cGUgRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEudGFibGVzIFdIRVJFIHRhYmxlX3NjaGVtYSA9IGN1cnJlbnRfc2NoZW1hKCkgT1JERVIgQlkgdGFibGVfbmFtZSIpO31mdW5jdGlvbgpjb3VudF90YWJsZXMoJFApe3JldHVybgphcnJheSgpO31mdW5jdGlvbgp0YWJsZV9zdGF0dXMoJGU9IiIpeyRiPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiU0VMRUNUIHJlbG5hbWUgQVMgXCJOYW1lXCIsIENBU0UgcmVsa2luZCBXSEVOICdyJyBUSEVOICcnIEVMU0UgJ3ZpZXcnIEVORCBBUyBcIkVuZ2luZVwiLCBwZ19yZWxhdGlvbl9zaXplKG9pZCkgQVMgXCJEYXRhX2xlbmd0aFwiLCBwZ190b3RhbF9yZWxhdGlvbl9zaXplKG9pZCkgLSBwZ19yZWxhdGlvbl9zaXplKG9pZCkgQVMgXCJJbmRleF9sZW5ndGhcIiwgb2JqX2Rlc2NyaXB0aW9uKG9pZCwgJ3BnX2NsYXNzJykgQVMgXCJDb21tZW50XCIsIHJlbGhhc29pZHMgQVMgXCJPaWRcIgpGUk9NIHBnX2NsYXNzCldIRVJFIHJlbGtpbmQgSU4gKCdyJywndicpCkFORCByZWxuYW1lc3BhY2UgPSAoU0VMRUNUIG9pZCBGUk9NIHBnX25hbWVzcGFjZSBXSEVSRSBuc3BuYW1lID0gY3VycmVudF9zY2hlbWEoKSkiLigkZSE9IiI/IiBBTkQgcmVsbmFtZSA9ICIucSgkZSk6IiIpKWFzJGMpeyRiWyRjWyJOYW1lIl1dPSRjO31yZXR1cm4oJGUhPSIiPyRiWyRlXTokYik7fWZ1bmN0aW9uCmlzX3ZpZXcoJEQpe3JldHVybiREWyJFbmdpbmUiXT09InZpZXciO31mdW5jdGlvbgpma19zdXBwb3J0KCREKXtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KZmllbGRzKCRoKXskYj1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIlNFTEVDVCBhLmF0dG5hbWUgQVMgZmllbGQsIGZvcm1hdF90eXBlKGEuYXR0dHlwaWQsIGEuYXR0dHlwbW9kKSBBUyBmdWxsX3R5cGUsIGQuYWRzcmMgQVMgZGVmYXVsdCwgYS5hdHRub3RudWxsLCBjb2xfZGVzY3JpcHRpb24oYy5vaWQsIGEuYXR0bnVtKSBBUyBjb21tZW50CkZST00gcGdfY2xhc3MgYwpKT0lOIHBnX25hbWVzcGFjZSBuIE9OIGMucmVsbmFtZXNwYWNlID0gbi5vaWQKSk9JTiBwZ19hdHRyaWJ1dGUgYSBPTiBjLm9pZCA9IGEuYXR0cmVsaWQKTEVGVCBKT0lOIHBnX2F0dHJkZWYgZCBPTiBjLm9pZCA9IGQuYWRyZWxpZCBBTkQgYS5hdHRudW0gPSBkLmFkbnVtCldIRVJFIGMucmVsbmFtZSA9ICIucSgkaCkuIgpBTkQgbi5uc3BuYW1lID0gY3VycmVudF9zY2hlbWEoKQpBTkQgTk9UIGEuYXR0aXNkcm9wcGVkCkFORCBhLmF0dG51bSA+IDAKT1JERVIgQlkgYS5hdHRudW0iKWFzJGMpe2VyZWcoJyguKikoXFwoKC4qKVxcKSk/JywkY1siZnVsbF90eXBlIl0sJGspO2xpc3QoLCRjWyJ0eXBlIl0sLCRjWyJsZW5ndGgiXSk9JGs7JGNbImZ1bGxfdHlwZSJdPSRjWyJ0eXBlIl0uKCRjWyJsZW5ndGgiXT8iKCRjW2xlbmd0aF0pIjoiIik7JGNbIm51bGwiXT0oJGNbImF0dG5vdG51bGwiXT09ImYiKTskY1siYXV0b19pbmNyZW1lbnQiXT1lcmVnaSgiXm5leHR2YWxcXCgiLCRjWyJkZWZhdWx0Il0pOyRjWyJwcml2aWxlZ2VzIl09YXJyYXkoImluc2VydCI9PjEsInNlbGVjdCI9PjEsInVwZGF0ZSI9PjEpOyRiWyRjWyJmaWVsZCJdXT0kYzt9cmV0dXJuJGI7fWZ1bmN0aW9uCmluZGV4ZXMoJGgsJE09bnVsbCl7Z2xvYmFsJGY7aWYoIWlzX29iamVjdCgkTSkpeyRNPSRmO30kYj1hcnJheSgpOyRRYz0kTS0+cmVzdWx0KCJTRUxFQ1Qgb2lkIEZST00gcGdfY2xhc3MgV0hFUkUgcmVsbmFtZSA9ICIucSgkaCkpOyRKPWdldF9rZXlfdmFscygiU0VMRUNUIGF0dG51bSwgYXR0bmFtZSBGUk9NIHBnX2F0dHJpYnV0ZSBXSEVSRSBhdHRyZWxpZCA9ICRRYyBBTkQgYXR0bnVtID4gMCIsJE0pO2ZvcmVhY2goZ2V0X3Jvd3MoIlNFTEVDVCByZWxuYW1lLCBpbmRpc3VuaXF1ZSwgaW5kaXNwcmltYXJ5LCBpbmRrZXkgRlJPTSBwZ19pbmRleCBpLCBwZ19jbGFzcyBjaSBXSEVSRSBpLmluZHJlbGlkID0gJFFjIEFORCBjaS5vaWQgPSBpLmluZGV4cmVsaWQiLCRNKWFzJGMpeyRiWyRjWyJyZWxuYW1lIl1dWyJ0eXBlIl09KCRjWyJpbmRpc3ByaW1hcnkiXT09InQiPyJQUklNQVJZIjooJGNbImluZGlzdW5pcXVlIl09PSJ0Ij8iVU5JUVVFIjoiSU5ERVgiKSk7JGJbJGNbInJlbG5hbWUiXV1bImNvbHVtbnMiXT1hcnJheSgpO2ZvcmVhY2goZXhwbG9kZSgiICIsJGNbImluZGtleSJdKWFzJE9kKXskYlskY1sicmVsbmFtZSJdXVsiY29sdW1ucyJdW109JEpbJE9kXTt9JGJbJGNbInJlbG5hbWUiXV1bImxlbmd0aHMiXT1hcnJheSgpO31yZXR1cm4kYjt9ZnVuY3Rpb24KZm9yZWlnbl9rZXlzKCRoKXskYj1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIlNFTEVDVCB0Yy5jb25zdHJhaW50X25hbWUsIGtjdS5jb2x1bW5fbmFtZSwgcmMudXBkYXRlX3J1bGUgQVMgb25fdXBkYXRlLCByYy5kZWxldGVfcnVsZSBBUyBvbl9kZWxldGUsIGNjdS50YWJsZV9uYW1lIEFTIHRhYmxlLCBjY3UuY29sdW1uX25hbWUgQVMgcmVmCkZST00gaW5mb3JtYXRpb25fc2NoZW1hLnRhYmxlX2NvbnN0cmFpbnRzIHRjCkxFRlQgSk9JTiBpbmZvcm1hdGlvbl9zY2hlbWEua2V5X2NvbHVtbl91c2FnZSBrY3UgVVNJTkcgKGNvbnN0cmFpbnRfY2F0YWxvZywgY29uc3RyYWludF9zY2hlbWEsIGNvbnN0cmFpbnRfbmFtZSkKTEVGVCBKT0lOIGluZm9ybWF0aW9uX3NjaGVtYS5yZWZlcmVudGlhbF9jb25zdHJhaW50cyByYyBVU0lORyAoY29uc3RyYWludF9jYXRhbG9nLCBjb25zdHJhaW50X3NjaGVtYSwgY29uc3RyYWludF9uYW1lKQpMRUZUIEpPSU4gaW5mb3JtYXRpb25fc2NoZW1hLmNvbnN0cmFpbnRfY29sdW1uX3VzYWdlIGNjdSBPTiByYy51bmlxdWVfY29uc3RyYWludF9jYXRhbG9nID0gY2N1LmNvbnN0cmFpbnRfY2F0YWxvZyBBTkQgcmMudW5pcXVlX2NvbnN0cmFpbnRfc2NoZW1hID0gY2N1LmNvbnN0cmFpbnRfc2NoZW1hIEFORCByYy51bmlxdWVfY29uc3RyYWludF9uYW1lID0gY2N1LmNvbnN0cmFpbnRfbmFtZQpXSEVSRSB0Yy5jb25zdHJhaW50X3R5cGUgPSAnRk9SRUlHTiBLRVknIEFORCB0Yy50YWJsZV9uYW1lID0gIi5xKCRoKSlhcyRjKXskST0mJGJbJGNbImNvbnN0cmFpbnRfbmFtZSJdXTtpZighJEkpeyRJPSRjO30kSVsic291cmNlIl1bXT0kY1siY29sdW1uX25hbWUiXTskSVsidGFyZ2V0Il1bXT0kY1sicmVmIl07fXJldHVybiRiO31mdW5jdGlvbgp2aWV3KCRlKXtnbG9iYWwkZjtyZXR1cm4KYXJyYXkoInNlbGVjdCI9PiRmLT5yZXN1bHQoIlNFTEVDVCBwZ19nZXRfdmlld2RlZigiLnEoJGUpLiIpIikpO31mdW5jdGlvbgpjb2xsYXRpb25zKCl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCmluZm9ybWF0aW9uX3NjaGVtYSgkQyl7cmV0dXJuKCRDPT0iaW5mb3JtYXRpb25fc2NoZW1hIik7fWZ1bmN0aW9uCmVycm9yKCl7Z2xvYmFsJGY7JGI9aCgkZi0+ZXJyb3IpO2lmKHByZWdfbWF0Y2goJ35eKC4qXFxuKT8oW15cXG5dKilcXG4oICopXFxeKFxcbi4qKT8kfnMnLCRiLCRrKSl7JGI9JGtbMV0ucHJlZ19yZXBsYWNlKCd+KCg/OlteJl18JlteO10qOyl7Jy5zdHJsZW4oJGtbM10pLid9KSguKil+JywnXFwxPGI+XFwyPC9iPicsJGtbMl0pLiRrWzRdO31yZXR1cm4KbmxfYnIoJGIpO31mdW5jdGlvbgpleGFjdF92YWx1ZSgkYSl7cmV0dXJuCnEoJGEpO31mdW5jdGlvbgpjcmVhdGVfZGF0YWJhc2UoJEMsJEgpe3JldHVybgpxdWVyaWVzKCJDUkVBVEUgREFUQUJBU0UgIi5pZGZfZXNjYXBlKCRDKS4oJEg/IiBFTkNPRElORyAiLmlkZl9lc2NhcGUoJEgpOiIiKSk7fWZ1bmN0aW9uCmRyb3BfZGF0YWJhc2VzKCRQKXtnbG9iYWwkZjskZi0+Y2xvc2UoKTtyZXR1cm4KYXBwbHlfcXVlcmllcygiRFJPUCBEQVRBQkFTRSIsJFAsJ2lkZl9lc2NhcGUnKTt9ZnVuY3Rpb24KcmVuYW1lX2RhdGFiYXNlKCRlLCRIKXtyZXR1cm4KcXVlcmllcygiQUxURVIgREFUQUJBU0UgIi5pZGZfZXNjYXBlKERCKS4iIFJFTkFNRSBUTyAiLmlkZl9lc2NhcGUoJGUpKTt9ZnVuY3Rpb24KYXV0b19pbmNyZW1lbnQoKXtyZXR1cm4iIjt9ZnVuY3Rpb24KYWx0ZXJfdGFibGUoJGgsJGUsJHQsJEphLCRYYSwkZ2IsJEgsJHlhLCRzYil7JHI9YXJyYXkoKTskS2E9YXJyYXkoKTtmb3JlYWNoKCR0CmFzJGcpeyR1PWlkZl9lc2NhcGUoJGdbMF0pOyRhPSRnWzFdO2lmKCEkYSl7JHJbXT0iRFJPUCAkdSI7fWVsc2V7JENjPSRhWzVdO3Vuc2V0KCRhWzVdKTtpZihpc3NldCgkYVs2XSkmJiRnWzBdPT0iIil7JGFbMV09KCRhWzFdPT0iYmlnaW50Ij8iIGJpZyI6IiAiKS4ic2VyaWFsIjt9aWYoJGdbMF09PSIiKXskcltdPSgkaCE9IiI/IkFERCAiOiIgICIpLmltcGxvZGUoJGEpO31lbHNle2lmKCR1IT0kYVswXSl7JEthW109IkFMVEVSIFRBQkxFICIudGFibGUoJGgpLiIgUkVOQU1FICR1IFRPICRhWzBdIjt9JHJbXT0iQUxURVIgJHUgVFlQRSRhWzFdIjtpZighJGFbNl0peyRyW109IkFMVEVSICR1ICIuKCRhWzNdPyJTRVQkYVszXSI6IkRST1AgREVGQVVMVCIpOyRyW109IkFMVEVSICR1ICIuKCRhWzJdPT0iIE5VTEwiPyJEUk9QIE5PVCI6IlNFVCIpLiRhWzJdO319aWYoJGdbMF0hPSIifHwkQ2MhPSIiKXskS2FbXT0iQ09NTUVOVCBPTiBDT0xVTU4gIi50YWJsZSgkaCkuIi4kYVswXSBJUyAiLigkQ2MhPSIiP3N1YnN0cigkQ2MsOSk6IicnIik7fX19JHI9YXJyYXlfbWVyZ2UoJHIsJEphKTtpZigkaD09IiIpe2FycmF5X3Vuc2hpZnQoJEthLCJDUkVBVEUgVEFCTEUgIi50YWJsZSgkZSkuIiAoXG4iLmltcGxvZGUoIixcbiIsJHIpLiJcbikiKTt9ZWxzZWlmKCRyKXthcnJheV91bnNoaWZ0KCRLYSwiQUxURVIgVEFCTEUgIi50YWJsZSgkaCkuIlxuIi5pbXBsb2RlKCIsXG4iLCRyKSk7fWlmKCRoIT0iIiYmJGghPSRlKXskS2FbXT0iQUxURVIgVEFCTEUgIi50YWJsZSgkaCkuIiBSRU5BTUUgVE8gIi50YWJsZSgkZSk7fWlmKCRoIT0iInx8JFhhIT0iIil7JEthW109IkNPTU1FTlQgT04gVEFCTEUgIi50YWJsZSgkZSkuIiBJUyAiLnEoJFhhKTt9aWYoJHlhIT0iIil7fWZvcmVhY2goJEthCmFzJGope2lmKCFxdWVyaWVzKCRqKSl7cmV0dXJuCmZhbHNlO319cmV0dXJuCnRydWU7fWZ1bmN0aW9uCmFsdGVyX2luZGV4ZXMoJGgsJHIpeyRRYT1hcnJheSgpOyRHYT1hcnJheSgpO2ZvcmVhY2goJHIKYXMkYSl7aWYoJGFbMF0hPSJJTkRFWCIpeyRRYVtdPSgkYVsyXT8iXG5EUk9QIENPTlNUUkFJTlQgIjoiXG5BREQgJGFbMF0gIi4oJGFbMF09PSJQUklNQVJZIj8iS0VZICI6IiIpKS4kYVsxXTt9ZWxzZWlmKCRhWzJdKXskR2FbXT0kYVsxXTt9ZWxzZWlmKCFxdWVyaWVzKCJDUkVBVEUgSU5ERVggIi5pZGZfZXNjYXBlKHVuaXFpZCgkaC4iXyIpKS4iIE9OICIudGFibGUoJGgpLiIgJGFbMV0iKSl7cmV0dXJuCmZhbHNlO319cmV0dXJuKCghJFFhfHxxdWVyaWVzKCJBTFRFUiBUQUJMRSAiLnRhYmxlKCRoKS5pbXBsb2RlKCIsIiwkUWEpKSkmJighJEdhfHxxdWVyaWVzKCJEUk9QIElOREVYICIuaW1wbG9kZSgiLCAiLCRHYSkpKSk7fWZ1bmN0aW9uCnRydW5jYXRlX3RhYmxlcygkeil7cmV0dXJuCnF1ZXJpZXMoIlRSVU5DQVRFICIuaW1wbG9kZSgiLCAiLGFycmF5X21hcCgndGFibGUnLCR6KSkpO3JldHVybgp0cnVlO31mdW5jdGlvbgpkcm9wX3ZpZXdzKCRXKXtyZXR1cm4KcXVlcmllcygiRFJPUCBWSUVXICIuaW1wbG9kZSgiLCAiLGFycmF5X21hcCgndGFibGUnLCRXKSkpO31mdW5jdGlvbgpkcm9wX3RhYmxlcygkeil7cmV0dXJuCnF1ZXJpZXMoIkRST1AgVEFCTEUgIi5pbXBsb2RlKCIsICIsYXJyYXlfbWFwKCd0YWJsZScsJHopKSk7fWZ1bmN0aW9uCm1vdmVfdGFibGVzKCR6LCRXLCRvYSl7Zm9yZWFjaCgkegphcyRoKXtpZighcXVlcmllcygiQUxURVIgVEFCTEUgIi50YWJsZSgkaCkuIiBTRVQgU0NIRU1BICIuaWRmX2VzY2FwZSgkb2EpKSl7cmV0dXJuCmZhbHNlO319Zm9yZWFjaCgkVwphcyRoKXtpZighcXVlcmllcygiQUxURVIgVklFVyAiLnRhYmxlKCRoKS4iIFNFVCBTQ0hFTUEgIi5pZGZfZXNjYXBlKCRvYSkpKXtyZXR1cm4KZmFsc2U7fX1yZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KdHJpZ2dlcigkZSl7JHk9Z2V0X3Jvd3MoJ1NFTEVDVCB0cmlnZ2VyX25hbWUgQVMgIlRyaWdnZXIiLCBjb25kaXRpb25fdGltaW5nIEFTICJUaW1pbmciLCBldmVudF9tYW5pcHVsYXRpb24gQVMgIkV2ZW50IiwgXCdGT1IgRUFDSCBcJyB8fCBhY3Rpb25fb3JpZW50YXRpb24gQVMgIlR5cGUiLCBhY3Rpb25fc3RhdGVtZW50IEFTICJTdGF0ZW1lbnQiIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLnRyaWdnZXJzIFdIRVJFIGV2ZW50X29iamVjdF90YWJsZSA9ICcucSgkX0dFVFsidHJpZ2dlciJdKS4nIEFORCB0cmlnZ2VyX25hbWUgPSAnLnEoJGUpKTtyZXR1cm4KcmVzZXQoJHkpO31mdW5jdGlvbgp0cmlnZ2VycygkaCl7JGI9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJTRUxFQ1QgKiBGUk9NIGluZm9ybWF0aW9uX3NjaGVtYS50cmlnZ2VycyBXSEVSRSBldmVudF9vYmplY3RfdGFibGUgPSAiLnEoJGgpKWFzJGMpeyRiWyRjWyJ0cmlnZ2VyX25hbWUiXV09YXJyYXkoJGNbImNvbmRpdGlvbl90aW1pbmciXSwkY1siZXZlbnRfbWFuaXB1bGF0aW9uIl0pO31yZXR1cm4kYjt9ZnVuY3Rpb24KdHJpZ2dlcl9vcHRpb25zKCl7cmV0dXJuCmFycmF5KCJUaW1pbmciPT5hcnJheSgiQkVGT1JFIiwiQUZURVIiKSwiVHlwZSI9PmFycmF5KCJGT1IgRUFDSCBST1ciLCJGT1IgRUFDSCBTVEFURU1FTlQiKSwpO31mdW5jdGlvbgpiZWdpbigpe3JldHVybgpxdWVyaWVzKCJCRUdJTiIpO31mdW5jdGlvbgppbnNlcnRfaW50bygkaCwkbyl7cmV0dXJuCnF1ZXJpZXMoIklOU0VSVCBJTlRPICIudGFibGUoJGgpLigkbz8iICgiLmltcGxvZGUoIiwgIixhcnJheV9rZXlzKCRvKSkuIilcblZBTFVFUyAoIi5pbXBsb2RlKCIsICIsJG8pLiIpIjoiREVGQVVMVCBWQUxVRVMiKSk7fWZ1bmN0aW9uCmluc2VydF91cGRhdGUoJGgsJG8sJHVhKXtnbG9iYWwkZjskYWE9YXJyYXkoKTskbT1hcnJheSgpO2ZvcmVhY2goJG8KYXMkZD0+JGEpeyRhYVtdPSIkZCA9ICRhIjtpZihpc3NldCgkdWFbaWRmX3VuZXNjYXBlKCRkKV0pKXskbVtdPSIkZCA9ICRhIjt9fXJldHVybigkbSYmcXVlcmllcygiVVBEQVRFICIudGFibGUoJGgpLiIgU0VUICIuaW1wbG9kZSgiLCAiLCRhYSkuIiBXSEVSRSAiLmltcGxvZGUoIiBBTkQgIiwkbSkpJiYkZi0+YWZmZWN0ZWRfcm93cyl8fHF1ZXJpZXMoIklOU0VSVCBJTlRPICIudGFibGUoJGgpLiIgKCIuaW1wbG9kZSgiLCAiLGFycmF5X2tleXMoJG8pKS4iKSBWQUxVRVMgKCIuaW1wbG9kZSgiLCAiLCRvKS4iKSIpO31mdW5jdGlvbgpsYXN0X2lkKCl7cmV0dXJuCjA7fWZ1bmN0aW9uCmV4cGxhaW4oJGYsJGope3JldHVybiRmLT5xdWVyeSgiRVhQTEFJTiAkaiIpO31mdW5jdGlvbgp0eXBlcygpe3JldHVybgpnZXRfdmFscygiU0VMRUNUIHR5cG5hbWUKRlJPTSBwZ190eXBlCldIRVJFIHR5cG5hbWVzcGFjZSA9IChTRUxFQ1Qgb2lkIEZST00gcGdfbmFtZXNwYWNlIFdIRVJFIG5zcG5hbWUgPSBjdXJyZW50X3NjaGVtYSgpKQpBTkQgdHlwdHlwZSBJTiAoJ2InLCdkJywnZScpCkFORCB0eXBlbGVtID0gMCIpO31mdW5jdGlvbgpzY2hlbWFzKCl7cmV0dXJuCmdldF92YWxzKCJTRUxFQ1QgbnNwbmFtZSBGUk9NIHBnX25hbWVzcGFjZSIpO31mdW5jdGlvbgpnZXRfc2NoZW1hKCl7Z2xvYmFsJGY7cmV0dXJuJGYtPnJlc3VsdCgiU0VMRUNUIGN1cnJlbnRfc2NoZW1hKCkiKTt9ZnVuY3Rpb24Kc2V0X3NjaGVtYSgkeWMpe2dsb2JhbCRmLCRaLCRIYTskYj0kZi0+cXVlcnkoIlNFVCBzZWFyY2hfcGF0aCBUTyAiLmlkZl9lc2NhcGUoJHljKSk7Zm9yZWFjaCh0eXBlcygpYXMkQSl7aWYoIWlzc2V0KCRaWyRBXSkpeyRaWyRBXT0wOyRIYVtsYW5nKDExKV1bXT0kQTt9fXJldHVybiRiO31mdW5jdGlvbgp1c2Vfc3FsKCRSKXtyZXR1cm4iXGNvbm5lY3QgIi5pZGZfZXNjYXBlKCRSKTt9ZnVuY3Rpb24Kc2hvd192YXJpYWJsZXMoKXtyZXR1cm4KZ2V0X2tleV92YWxzKCJTSE9XIEFMTCIpO31mdW5jdGlvbgpzaG93X3N0YXR1cygpe31mdW5jdGlvbgpzdXBwb3J0KCRQYSl7cmV0dXJuCmVyZWcoJ14oY29tbWVudHx2aWV3fHNjaGVtZXxzZXF1ZW5jZXx0cmlnZ2VyfHR5cGV8dmFyaWFibGVzfGRyb3BfY29sKSQnLCRQYSk7fSR2YT0icGdzcWwiOyRaPWFycmF5KCk7JEhhPWFycmF5KCk7Zm9yZWFjaChhcnJheShsYW5nKDEyKT0+YXJyYXkoInNtYWxsaW50Ij0+NSwiaW50ZWdlciI9PjEwLCJiaWdpbnQiPT4xOSwiYm9vbGVhbiI9PjEsIm51bWVyaWMiPT4wLCJyZWFsIj0+NywiZG91YmxlIHByZWNpc2lvbiI9PjE2LCJtb25leSI9PjIwKSxsYW5nKDEzKT0+YXJyYXkoImRhdGUiPT4xMywidGltZSI9PjE3LCJ0aW1lc3RhbXAiPT4yMCwiaW50ZXJ2YWwiPT4wKSxsYW5nKDE0KT0+YXJyYXkoImNoYXJhY3RlciI9PjAsImNoYXJhY3RlciB2YXJ5aW5nIj0+MCwidGV4dCI9PjAsInRzcXVlcnkiPT4wLCJ0c3ZlY3RvciI9PjAsInV1aWQiPT4wLCJ4bWwiPT4wKSxsYW5nKDE1KT0+YXJyYXkoImJpdCI9PjAsImJpdCB2YXJ5aW5nIj0+MCwiYnl0ZWEiPT4wKSxsYW5nKDE2KT0+YXJyYXkoImNpZHIiPT40MywiaW5ldCI9PjQzLCJtYWNhZGRyIj0+MTcsInR4aWRfc25hcHNob3QiPT4wKSxsYW5nKDE3KT0+YXJyYXkoImJveCI9PjAsImNpcmNsZSI9PjAsImxpbmUiPT4wLCJsc2VnIj0+MCwicGF0aCI9PjAsInBvaW50Ij0+MCwicG9seWdvbiI9PjApLClhcyRkPT4kYSl7JForPSRhOyRIYVskZF09YXJyYXlfa2V5cygkYSk7fSRHYj1hcnJheSgpOyR1Yj1hcnJheSgiPSIsIjwiLCI+IiwiPD0iLCI+PSIsIiE9IiwifiIsIiF+IiwiTElLRSIsIkxJS0UgJSUiLCJJTiIsIklTIE5VTEwiLCJOT1QgTElLRSIsIk5PVCBJTiIsIklTIE5PVCBOVUxMIiwiIik7JGVhPWFycmF5KCJjaGFyX2xlbmd0aCIsImxvd2VyIiwicm91bmQiLCJ0b19oZXgiLCJ0b190aW1lc3RhbXAiLCJ1cHBlciIpOyRJYj1hcnJheSgiYXZnIiwiY291bnQiLCJjb3VudCBkaXN0aW5jdCIsIm1heCIsIm1pbiIsInN1bSIpOyRGYj1hcnJheShhcnJheSgiY2hhciI9PiJtZDUiLCJkYXRlfHRpbWUiPT4ibm93IiwpLGFycmF5KCJpbnR8bnVtZXJpY3xyZWFsfG1vbmV5Ij0+IisvLSIsImRhdGV8dGltZSI9PiIrIGludGVydmFsLy0gaW50ZXJ2YWwiLCJjaGFyfHRleHQiPT4ifHwiLCkpO30kdGFbIm9yYWNsZSJdPSJPcmFjbGUiO2lmKGlzc2V0KCRfR0VUWyJvcmFjbGUiXSkpeyRKYj1hcnJheSgiT0NJOCIsIlBET19PQ0kiKTtkZWZpbmUoIkRSSVZFUiIsIm9yYWNsZSIpO2lmKGV4dGVuc2lvbl9sb2FkZWQoIm9jaTgiKSl7Y2xhc3MKTWluX0RCe3ZhciRleHRlbnNpb249Im9jaTgiLCRfbGluaywkX3Jlc3VsdCwkc2VydmVyX2luZm8sJGFmZmVjdGVkX3Jvd3MsJGVycm9yO2Z1bmN0aW9uCl9lcnJvcigkY2UsJHApe2lmKGluaV9ib29sKCJodG1sX2Vycm9ycyIpKXskcD1odG1sX2VudGl0eV9kZWNvZGUoc3RyaXBfdGFncygkcCkpO30kcD1lcmVnX3JlcGxhY2UoJ15bXjpdKjogJywnJywkcCk7JHRoaXMtPmVycm9yPSRwO31mdW5jdGlvbgpjb25uZWN0KCRfLCRFLCRHKXskdGhpcy0+X2xpbms9QG9jaV9uZXdfY29ubmVjdCgkRSwkRywkXywiQUwzMlVURjgiKTtpZigkdGhpcy0+X2xpbmspeyR0aGlzLT5zZXJ2ZXJfaW5mbz1vY2lfc2VydmVyX3ZlcnNpb24oJHRoaXMtPl9saW5rKTtyZXR1cm4KdHJ1ZTt9JHA9b2NpX2Vycm9yKCk7JHRoaXMtPmVycm9yPSRwWyJtZXNzYWdlIl07cmV0dXJuCmZhbHNlO31mdW5jdGlvbgpxdW90ZSgkeCl7cmV0dXJuIiciLnN0cl9yZXBsYWNlKCInIiwiJyciLCR4KS4iJyI7fWZ1bmN0aW9uCnNlbGVjdF9kYigkUil7cmV0dXJuCnRydWU7fWZ1bmN0aW9uCnF1ZXJ5KCRqLCREYT1mYWxzZSl7JGk9b2NpX3BhcnNlKCR0aGlzLT5fbGluaywkaik7aWYoISRpKXskcD1vY2lfZXJyb3IoJHRoaXMtPl9saW5rKTskdGhpcy0+ZXJyb3I9JHBbIm1lc3NhZ2UiXTtyZXR1cm4KZmFsc2U7fXNldF9lcnJvcl9oYW5kbGVyKGFycmF5KCR0aGlzLCdfZXJyb3InKSk7JGI9QG9jaV9leGVjdXRlKCRpKTtyZXN0b3JlX2Vycm9yX2hhbmRsZXIoKTtpZigkYil7aWYob2NpX251bV9maWVsZHMoJGkpKXtyZXR1cm4KbmV3Ck1pbl9SZXN1bHQoJGkpO30kdGhpcy0+YWZmZWN0ZWRfcm93cz1vY2lfbnVtX3Jvd3MoJGkpO31yZXR1cm4kYjt9ZnVuY3Rpb24KbXVsdGlfcXVlcnkoJGope3JldHVybiR0aGlzLT5fcmVzdWx0PSR0aGlzLT5xdWVyeSgkaik7fWZ1bmN0aW9uCnN0b3JlX3Jlc3VsdCgpe3JldHVybiR0aGlzLT5fcmVzdWx0O31mdW5jdGlvbgpuZXh0X3Jlc3VsdCgpe3JldHVybgpmYWxzZTt9ZnVuY3Rpb24KcmVzdWx0KCRqLCRnPTEpeyRpPSR0aGlzLT5xdWVyeSgkaik7aWYoIWlzX29iamVjdCgkaSl8fCFvY2lfZmV0Y2goJGktPl9yZXN1bHQpKXtyZXR1cm4KZmFsc2U7fXJldHVybgpvY2lfcmVzdWx0KCRpLT5fcmVzdWx0LCRnKTt9fWNsYXNzCk1pbl9SZXN1bHR7dmFyJF9yZXN1bHQsJF9vZmZzZXQ9MSwkbnVtX3Jvd3M7ZnVuY3Rpb24KTWluX1Jlc3VsdCgkaSl7JHRoaXMtPl9yZXN1bHQ9JGk7fWZ1bmN0aW9uCl9jb252ZXJ0KCRjKXtmb3JlYWNoKChhcnJheSkkYwphcyRkPT4kYSl7aWYoaXNfYSgkYSwnT0NJLUxvYicpKXskY1skZF09JGEtPmxvYWQoKTt9fXJldHVybiRjO31mdW5jdGlvbgpmZXRjaF9hc3NvYygpe3JldHVybiR0aGlzLT5fY29udmVydChvY2lfZmV0Y2hfYXNzb2MoJHRoaXMtPl9yZXN1bHQpKTt9ZnVuY3Rpb24KZmV0Y2hfcm93KCl7cmV0dXJuJHRoaXMtPl9jb252ZXJ0KG9jaV9mZXRjaF9yb3coJHRoaXMtPl9yZXN1bHQpKTt9ZnVuY3Rpb24KZmV0Y2hfZmllbGQoKXskdT0kdGhpcy0+X29mZnNldCsrOyRiPW5ldwpzdGRDbGFzczskYi0+bmFtZT1vY2lfZmllbGRfbmFtZSgkdGhpcy0+X3Jlc3VsdCwkdSk7JGItPm9yZ25hbWU9JGItPm5hbWU7JGItPnR5cGU9b2NpX2ZpZWxkX3R5cGUoJHRoaXMtPl9yZXN1bHQsJHUpOyRiLT5jaGFyc2V0bnI9KGVyZWcoInJhd3xibG9ifGJmaWxlIiwkYi0+dHlwZSk/NjM6MCk7cmV0dXJuJGI7fWZ1bmN0aW9uCl9fZGVzdHJ1Y3QoKXtvY2lfZnJlZV9zdGF0ZW1lbnQoJHRoaXMtPl9yZXN1bHQpO319fWVsc2VpZihleHRlbnNpb25fbG9hZGVkKCJwZG9fb2NpIikpe2NsYXNzCk1pbl9EQgpleHRlbmRzCk1pbl9QRE97dmFyJGV4dGVuc2lvbj0iUERPX09DSSI7ZnVuY3Rpb24KY29ubmVjdCgkXywkRSwkRyl7JHRoaXMtPmRzbigib2NpOmRibmFtZT0vLyRfO2NoYXJzZXQ9QUwzMlVURjgiLCRFLCRHKTtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24Kc2VsZWN0X2RiKCRSKXtyZXR1cm4KdHJ1ZTt9fX1mdW5jdGlvbgppZGZfZXNjYXBlKCRCKXtyZXR1cm4nIicuc3RyX3JlcGxhY2UoJyInLCciIicsJEIpLiciJzt9ZnVuY3Rpb24KdGFibGUoJEIpe3JldHVybgppZGZfZXNjYXBlKCRCKTt9ZnVuY3Rpb24KY29ubmVjdCgpe2dsb2JhbCRsOyRmPW5ldwpNaW5fREI7JGdhPSRsLT5jcmVkZW50aWFscygpO2lmKCRmLT5jb25uZWN0KCRnYVswXSwkZ2FbMV0sJGdhWzJdKSl7cmV0dXJuJGY7fXJldHVybiRmLT5lcnJvcjt9ZnVuY3Rpb24KZ2V0X2RhdGFiYXNlcygpe3JldHVybgpnZXRfdmFscygiU0VMRUNUIHRhYmxlc3BhY2VfbmFtZSBGUk9NIHVzZXJfdGFibGVzcGFjZXMiKTt9ZnVuY3Rpb24KbGltaXQoJGosJG0sJEYsJFQ9MCwkaWE9IiAiKXtyZXR1cm4iICRqJG0iLihpc3NldCgkRik/KCRtPyIgQU5EIjokaWEuIldIRVJFIikuKCRUPyIgcm93bnVtID4gJFQgQU5EIjoiIikuIiByb3dudW0gPD0gIi4oJEYrJFQpOiIiKTt9ZnVuY3Rpb24KbGltaXQxKCRqLCRtKXtyZXR1cm4iICRqJG0iO31mdW5jdGlvbgpkYl9jb2xsYXRpb24oJEMsJEhiKXtnbG9iYWwkZjtyZXR1cm4kZi0+cmVzdWx0KCJTRUxFQ1QgdmFsdWUgRlJPTSBubHNfZGF0YWJhc2VfcGFyYW1ldGVycyBXSEVSRSBwYXJhbWV0ZXIgPSAnTkxTX0NIQVJBQ1RFUlNFVCciKTt9ZnVuY3Rpb24KZW5naW5lcygpe3JldHVybgphcnJheSgpO31mdW5jdGlvbgpsb2dnZWRfdXNlcigpe2dsb2JhbCRmO3JldHVybiRmLT5yZXN1bHQoIlNFTEVDVCBVU0VSIEZST00gRFVBTCIpO31mdW5jdGlvbgp0YWJsZXNfbGlzdCgpe3JldHVybgpnZXRfa2V5X3ZhbHMoIlNFTEVDVCB0YWJsZV9uYW1lLCAndGFibGUnIEZST00gYWxsX3RhYmxlcyBXSEVSRSB0YWJsZXNwYWNlX25hbWUgPSAiLnEoREIpLiIKVU5JT04gU0VMRUNUIHZpZXdfbmFtZSwgJ3ZpZXcnIEZST00gdXNlcl92aWV3cyIpO31mdW5jdGlvbgpjb3VudF90YWJsZXMoJFApe3JldHVybgphcnJheSgpO31mdW5jdGlvbgp0YWJsZV9zdGF0dXMoJGU9IiIpeyRiPWFycmF5KCk7JHJiPXEoJGUpO2ZvcmVhY2goZ2V0X3Jvd3MoJ1NFTEVDVCB0YWJsZV9uYW1lICJOYW1lIiwgXCd0YWJsZVwnICJFbmdpbmUiIEZST00gYWxsX3RhYmxlcyBXSEVSRSB0YWJsZXNwYWNlX25hbWUgPSAnLnEoREIpLigkZSE9IiI/IiBBTkQgdGFibGVfbmFtZSA9ICRyYiI6IiIpLiIKVU5JT04gU0VMRUNUIHZpZXdfbmFtZSwgJ3ZpZXcnIEZST00gdXNlcl92aWV3cyIuKCRlIT0iIj8iIFdIRVJFIHZpZXdfbmFtZSA9ICRyYiI6IiIpKWFzJGMpe2lmKCRlIT0iIil7cmV0dXJuJGM7fSRiWyRjWyJOYW1lIl1dPSRjO31yZXR1cm4kYjt9ZnVuY3Rpb24KaXNfdmlldygkRCl7cmV0dXJuJERbIkVuZ2luZSJdPT0idmlldyI7fWZ1bmN0aW9uCmZrX3N1cHBvcnQoJEQpe3JldHVybgp0cnVlO31mdW5jdGlvbgpmaWVsZHMoJGgpeyRiPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiU0VMRUNUICogRlJPTSBhbGxfdGFiX2NvbHVtbnMgV0hFUkUgdGFibGVfbmFtZSA9ICIucSgkaCkuIiBPUkRFUiBCWSBjb2x1bW5faWQiKWFzJGMpeyRBPSRjWyJEQVRBX1RZUEUiXTska2E9IiRjW0RBVEFfUFJFQ0lTSU9OXSwkY1tEQVRBX1NDQUxFXSI7aWYoJGthPT0iLCIpeyRrYT0kY1siREFUQV9MRU5HVEgiXTt9JGJbJGNbIkNPTFVNTl9OQU1FIl1dPWFycmF5KCJmaWVsZCI9PiRjWyJDT0xVTU5fTkFNRSJdLCJmdWxsX3R5cGUiPT4kQS4oJGthPyIoJGthKSI6IiIpLCJ0eXBlIj0+c3RydG9sb3dlcigkQSksImxlbmd0aCI9PiRrYSwiZGVmYXVsdCI9PiRjWyJEQVRBX0RFRkFVTFQiXSwibnVsbCI9PigkY1siTlVMTEFCTEUiXT09IlkiKSwicHJpdmlsZWdlcyI9PmFycmF5KCJpbnNlcnQiPT4xLCJzZWxlY3QiPT4xLCJ1cGRhdGUiPT4xKSwpO31yZXR1cm4kYjt9ZnVuY3Rpb24KaW5kZXhlcygkaCwkTT1udWxsKXtyZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24KdmlldygkZSl7JHk9Z2V0X3Jvd3MoJ1NFTEVDVCB0ZXh0ICJzZWxlY3QiIEZST00gdXNlcl92aWV3cyBXSEVSRSB2aWV3X25hbWUgPSAnLnEoJGUpKTtyZXR1cm4KcmVzZXQoJHkpO31mdW5jdGlvbgpjb2xsYXRpb25zKCl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCmluZm9ybWF0aW9uX3NjaGVtYSgkQyl7cmV0dXJuCmZhbHNlO31mdW5jdGlvbgplcnJvcigpe2dsb2JhbCRmO3JldHVybgpoKCRmLT5lcnJvcik7fWZ1bmN0aW9uCmV4YWN0X3ZhbHVlKCRhKXtyZXR1cm4KcSgkYSk7fWZ1bmN0aW9uCmV4cGxhaW4oJGYsJGopeyRmLT5xdWVyeSgiRVhQTEFJTiBQTEFOIEZPUiAkaiIpO3JldHVybiRmLT5xdWVyeSgiU0VMRUNUICogRlJPTSBwbGFuX3RhYmxlIik7fWZ1bmN0aW9uCmFsdGVyX3RhYmxlKCRoLCRlLCR0LCRKYSwkWGEsJGdiLCRILCR5YSwkc2IpeyRyPSRHYT1hcnJheSgpO2ZvcmVhY2goJHQKYXMkZyl7JGE9JGdbMV07aWYoJGEmJiRnWzBdIT0iIiYmaWRmX2VzY2FwZSgkZ1swXSkhPSRhWzBdKXtxdWVyaWVzKCJBTFRFUiBUQUJMRSAiLnRhYmxlKCRoKS4iIFJFTkFNRSBDT0xVTU4gIi5pZGZfZXNjYXBlKCRnWzBdKS4iIFRPICRhWzBdIik7fWlmKCRhKXskcltdPSgkaCE9IiI/KCRnWzBdIT0iIj8iTU9ESUZZICgiOiJBREQgKCIpOiIgICIpLmltcGxvZGUoJGEpLigkaCE9IiI/IikiOiIiKTt9ZWxzZXskR2FbXT1pZGZfZXNjYXBlKCRnWzBdKTt9fWlmKCRoPT0iIil7cmV0dXJuCnF1ZXJpZXMoIkNSRUFURSBUQUJMRSAiLnRhYmxlKCRlKS4iIChcbiIuaW1wbG9kZSgiLFxuIiwkcikuIlxuKSIpO31yZXR1cm4oISRyfHxxdWVyaWVzKCJBTFRFUiBUQUJMRSAiLnRhYmxlKCRoKS4iXG4iLmltcGxvZGUoIlxuIiwkcikpKSYmKCEkR2F8fHF1ZXJpZXMoIkFMVEVSIFRBQkxFICIudGFibGUoJGgpLiIgRFJPUCAoIi5pbXBsb2RlKCIsICIsJEdhKS4iKSIpKSYmKCRoPT0kZXx8cXVlcmllcygiQUxURVIgVEFCTEUgIi50YWJsZSgkaCkuIiBSRU5BTUUgVE8gIi50YWJsZSgkZSkpKTt9ZnVuY3Rpb24KZm9yZWlnbl9rZXlzKCRoKXtyZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24KdHJ1bmNhdGVfdGFibGVzKCR6KXtyZXR1cm4KYXBwbHlfcXVlcmllcygiVFJVTkNBVEUgVEFCTEUiLCR6KTt9ZnVuY3Rpb24KZHJvcF92aWV3cygkVyl7cmV0dXJuCmFwcGx5X3F1ZXJpZXMoIkRST1AgVklFVyIsJFcpO31mdW5jdGlvbgpkcm9wX3RhYmxlcygkeil7cmV0dXJuCmFwcGx5X3F1ZXJpZXMoIkRST1AgVEFCTEUiLCR6KTt9ZnVuY3Rpb24KYmVnaW4oKXtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KaW5zZXJ0X2ludG8oJGgsJG8pe3JldHVybgpxdWVyaWVzKCJJTlNFUlQgSU5UTyAiLnRhYmxlKCRoKS4iICgiLmltcGxvZGUoIiwgIixhcnJheV9rZXlzKCRvKSkuIilcblZBTFVFUyAoIi5pbXBsb2RlKCIsICIsJG8pLiIpIik7fWZ1bmN0aW9uCmxhc3RfaWQoKXtyZXR1cm4KMDt9ZnVuY3Rpb24Kc2NoZW1hcygpe3JldHVybgphcnJheSgpO31mdW5jdGlvbgpnZXRfc2NoZW1hKCl7cmV0dXJuIiI7fWZ1bmN0aW9uCnNldF9zY2hlbWEoJEJkKXtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24Kc2hvd192YXJpYWJsZXMoKXtyZXR1cm4KZ2V0X2tleV92YWxzKCdTRUxFQ1QgbmFtZSwgZGlzcGxheV92YWx1ZSBGUk9NIHYkcGFyYW1ldGVyJyk7fWZ1bmN0aW9uCnNob3dfc3RhdHVzKCl7JHk9Z2V0X3Jvd3MoJ1NFTEVDVCAqIEZST00gdiRpbnN0YW5jZScpO3JldHVybgpyZXNldCgkeSk7fWZ1bmN0aW9uCnN1cHBvcnQoJFBhKXtyZXR1cm4KZXJlZygidmlld3xkcm9wX2NvbHx2YXJpYWJsZXN8c3RhdHVzIiwkUGEpO30kdmE9Im9yYWNsZSI7JFo9YXJyYXkoKTskSGE9YXJyYXkoKTtmb3JlYWNoKGFycmF5KGxhbmcoMTIpPT5hcnJheSgibnVtYmVyIj0+MzgsImJpbmFyeV9mbG9hdCI9PjEyLCJiaW5hcnlfZG91YmxlIj0+MjEpLGxhbmcoMTMpPT5hcnJheSgiZGF0ZSI9PjEwLCJ0aW1lc3RhbXAiPT4yOSwiaW50ZXJ2YWwgeWVhciI9PjEyLCJpbnRlcnZhbCBkYXkiPT4yOCksbGFuZygxNCk9PmFycmF5KCJjaGFyIj0+MjAwMCwidmFyY2hhcjIiPT40MDAwLCJuY2hhciI9PjIwMDAsIm52YXJjaGFyMiI9PjQwMDAsImNsb2IiPT40Mjk0OTY3Mjk1LCJuY2xvYiI9PjQyOTQ5NjcyOTUpLGxhbmcoMTUpPT5hcnJheSgicmF3Ij0+MjAwMCwibG9uZyByYXciPT4yMTQ3NDgzNjQ4LCJibG9iIj0+NDI5NDk2NzI5NSwiYmZpbGUiPT40Mjk0OTY3Mjk2KSwpYXMkZD0+JGEpeyRaKz0kYTskSGFbJGRdPWFycmF5X2tleXMoJGEpO30kR2I9YXJyYXkoKTskdWI9YXJyYXkoIj0iLCI8IiwiPiIsIjw9IiwiPj0iLCIhPSIsIkxJS0UiLCJMSUtFICUlIiwiSU4iLCJJUyBOVUxMIiwiTk9UIExJS0UiLCJOT1QgUkVHRVhQIiwiTk9UIElOIiwiSVMgTk9UIE5VTEwiLCIiKTskZWE9YXJyYXkoImxlbmd0aCIsImxvd2VyIiwicm91bmQiLCJ1cHBlciIpOyRJYj1hcnJheSgiYXZnIiwiY291bnQiLCJjb3VudCBkaXN0aW5jdCIsIm1heCIsIm1pbiIsInN1bSIpOyRGYj1hcnJheShhcnJheSgiZGF0ZSI9PiJjdXJyZW50X2RhdGUiLCJ0aW1lc3RhbXAiPT4iY3VycmVudF90aW1lc3RhbXAiLCksYXJyYXkoIm51bWJlcnxmbG9hdHxkb3VibGUiPT4iKy8tIiwiZGF0ZXx0aW1lc3RhbXAiPT4iKyBpbnRlcnZhbC8tIGludGVydmFsIiwiY2hhcnxjbG9iIj0+Inx8IiwpKTt9JHRhWyJtc3NxbCJdPSJNUyBTUUwiO2lmKGlzc2V0KCRfR0VUWyJtc3NxbCJdKSl7JEpiPWFycmF5KCJTUUxTUlYiLCJNU1NRTCIpO2RlZmluZSgiRFJJVkVSIiwibXNzcWwiKTtpZihleHRlbnNpb25fbG9hZGVkKCJzcWxzcnYiKSl7Y2xhc3MKTWluX0RCe3ZhciRleHRlbnNpb249InNxbHNydiIsJF9saW5rLCRfcmVzdWx0LCRzZXJ2ZXJfaW5mbywkYWZmZWN0ZWRfcm93cywkZXJyb3I7ZnVuY3Rpb24KX2dldF9lcnJvcigpeyR0aGlzLT5lcnJvcj0iIjtmb3JlYWNoKHNxbHNydl9lcnJvcnMoKWFzJHApeyR0aGlzLT5lcnJvci49IiRwW21lc3NhZ2VdXG4iO30kdGhpcy0+ZXJyb3I9cnRyaW0oJHRoaXMtPmVycm9yKTt9ZnVuY3Rpb24KY29ubmVjdCgkXywkRSwkRyl7JHRoaXMtPl9saW5rPUBzcWxzcnZfY29ubmVjdCgkXyxhcnJheSgiVUlEIj0+JEUsIlBXRCI9PiRHKSk7aWYoJHRoaXMtPl9saW5rKXskV2Q9c3Fsc3J2X3NlcnZlcl9pbmZvKCR0aGlzLT5fbGluayk7JHRoaXMtPnNlcnZlcl9pbmZvPSRXZFsnU1FMU2VydmVyVmVyc2lvbiddO31lbHNleyR0aGlzLT5fZ2V0X2Vycm9yKCk7fXJldHVybihib29sKSR0aGlzLT5fbGluazt9ZnVuY3Rpb24KcXVvdGUoJHgpe3JldHVybiInIi5zdHJfcmVwbGFjZSgiJyIsIicnIiwkeCkuIiciO31mdW5jdGlvbgpzZWxlY3RfZGIoJFIpe3JldHVybiR0aGlzLT5xdWVyeSgiVVNFICRSIik7fWZ1bmN0aW9uCnF1ZXJ5KCRqLCREYT1mYWxzZSl7JGk9c3Fsc3J2X3F1ZXJ5KCR0aGlzLT5fbGluaywkaik7aWYoISRpKXskdGhpcy0+X2dldF9lcnJvcigpO3JldHVybgpmYWxzZTt9cmV0dXJuJHRoaXMtPnN0b3JlX3Jlc3VsdCgkaSk7fWZ1bmN0aW9uCm11bHRpX3F1ZXJ5KCRqKXskdGhpcy0+X3Jlc3VsdD1zcWxzcnZfcXVlcnkoJHRoaXMtPl9saW5rLCRqKTtpZighJHRoaXMtPl9yZXN1bHQpeyR0aGlzLT5fZ2V0X2Vycm9yKCk7cmV0dXJuCmZhbHNlO31yZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24Kc3RvcmVfcmVzdWx0KCRpPW51bGwpe2lmKCEkaSl7JGk9JHRoaXMtPl9yZXN1bHQ7fWlmKHNxbHNydl9maWVsZF9tZXRhZGF0YSgkaSkpe3JldHVybgpuZXcKTWluX1Jlc3VsdCgkaSk7fSR0aGlzLT5hZmZlY3RlZF9yb3dzPXNxbHNydl9yb3dzX2FmZmVjdGVkKCRpKTtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KbmV4dF9yZXN1bHQoKXtyZXR1cm4Kc3Fsc3J2X25leHRfcmVzdWx0KCR0aGlzLT5fcmVzdWx0KTt9ZnVuY3Rpb24KcmVzdWx0KCRqLCRnPTApeyRpPSR0aGlzLT5xdWVyeSgkaik7aWYoIWlzX29iamVjdCgkaSkpe3JldHVybgpmYWxzZTt9JGM9JGktPmZldGNoX3JvdygpO3JldHVybiRjWyRnXTt9fWNsYXNzCk1pbl9SZXN1bHR7dmFyJF9yZXN1bHQsJF9vZmZzZXQ9MCwkX2ZpZWxkcywkbnVtX3Jvd3M7ZnVuY3Rpb24KTWluX1Jlc3VsdCgkaSl7JHRoaXMtPl9yZXN1bHQ9JGk7fWZ1bmN0aW9uCl9jb252ZXJ0KCRjKXtmb3JlYWNoKChhcnJheSkkYwphcyRkPT4kYSl7aWYoaXNfYSgkYSwnRGF0ZVRpbWUnKSl7JGNbJGRdPSRhLT5mb3JtYXQoIlktbS1kIEg6aTpzIik7fX1yZXR1cm4kYzt9ZnVuY3Rpb24KZmV0Y2hfYXNzb2MoKXtyZXR1cm4kdGhpcy0+X2NvbnZlcnQoc3Fsc3J2X2ZldGNoX2FycmF5KCR0aGlzLT5fcmVzdWx0LFNRTFNSVl9GRVRDSF9BU1NPQyxTUUxTUlZfU0NST0xMX05FWFQpKTt9ZnVuY3Rpb24KZmV0Y2hfcm93KCl7cmV0dXJuJHRoaXMtPl9jb252ZXJ0KHNxbHNydl9mZXRjaF9hcnJheSgkdGhpcy0+X3Jlc3VsdCxTUUxTUlZfRkVUQ0hfTlVNRVJJQyxTUUxTUlZfU0NST0xMX05FWFQpKTt9ZnVuY3Rpb24KZmV0Y2hfZmllbGQoKXtpZighJHRoaXMtPl9maWVsZHMpeyR0aGlzLT5fZmllbGRzPXNxbHNydl9maWVsZF9tZXRhZGF0YSgkdGhpcy0+X3Jlc3VsdCk7fSRnPSR0aGlzLT5fZmllbGRzWyR0aGlzLT5fb2Zmc2V0KytdOyRiPW5ldwpzdGRDbGFzczskYi0+bmFtZT0kZ1siTmFtZSJdOyRiLT5vcmduYW1lPSRnWyJOYW1lIl07JGItPnR5cGU9KCRnWyJUeXBlIl09PTE/MjU0OjApO3JldHVybiRiO31mdW5jdGlvbgpzZWVrKCRUKXtmb3IoJHE9MDskcTwkVDskcSsrKXtzcWxzcnZfZmV0Y2goJHRoaXMtPl9yZXN1bHQpO319ZnVuY3Rpb24KX19kZXN0cnVjdCgpe3NxbHNydl9mcmVlX3N0bXQoJHRoaXMtPl9yZXN1bHQpO319fWVsc2VpZihleHRlbnNpb25fbG9hZGVkKCJtc3NxbCIpKXtjbGFzcwpNaW5fREJ7dmFyJGV4dGVuc2lvbj0iTVNTUUwiLCRfbGluaywkX3Jlc3VsdCwkc2VydmVyX2luZm8sJGFmZmVjdGVkX3Jvd3MsJGVycm9yO2Z1bmN0aW9uCmNvbm5lY3QoJF8sJEUsJEcpeyR0aGlzLT5fbGluaz1AbXNzcWxfY29ubmVjdCgkXywkRSwkRyk7aWYoJHRoaXMtPl9saW5rKXskaT0kdGhpcy0+cXVlcnkoIlNFTEVDVCBTRVJWRVJQUk9QRVJUWSgnUHJvZHVjdExldmVsJyksIFNFUlZFUlBST1BFUlRZKCdFZGl0aW9uJykiKTskYz0kaS0+ZmV0Y2hfcm93KCk7JHRoaXMtPnNlcnZlcl9pbmZvPSR0aGlzLT5yZXN1bHQoInNwX3NlcnZlcl9pbmZvIDIiLDIpLiIgWyRjWzBdXSAkY1sxXSI7fWVsc2V7JHRoaXMtPmVycm9yPW1zc3FsX2dldF9sYXN0X21lc3NhZ2UoKTt9cmV0dXJuKGJvb2wpJHRoaXMtPl9saW5rO31mdW5jdGlvbgpxdW90ZSgkeCl7cmV0dXJuIiciLnN0cl9yZXBsYWNlKCInIiwiJyciLCR4KS4iJyI7fWZ1bmN0aW9uCnNlbGVjdF9kYigkUil7cmV0dXJuCm1zc3FsX3NlbGVjdF9kYigkUik7fWZ1bmN0aW9uCnF1ZXJ5KCRqLCREYT1mYWxzZSl7JGk9bXNzcWxfcXVlcnkoJGosJHRoaXMtPl9saW5rKTtpZighJGkpeyR0aGlzLT5lcnJvcj1tc3NxbF9nZXRfbGFzdF9tZXNzYWdlKCk7cmV0dXJuCmZhbHNlO31pZigkaT09PXRydWUpeyR0aGlzLT5hZmZlY3RlZF9yb3dzPW1zc3FsX3Jvd3NfYWZmZWN0ZWQoJHRoaXMtPl9saW5rKTtyZXR1cm4KdHJ1ZTt9cmV0dXJuCm5ldwpNaW5fUmVzdWx0KCRpKTt9ZnVuY3Rpb24KbXVsdGlfcXVlcnkoJGope3JldHVybiR0aGlzLT5fcmVzdWx0PSR0aGlzLT5xdWVyeSgkaik7fWZ1bmN0aW9uCnN0b3JlX3Jlc3VsdCgpe3JldHVybiR0aGlzLT5fcmVzdWx0O31mdW5jdGlvbgpuZXh0X3Jlc3VsdCgpe3JldHVybgptc3NxbF9uZXh0X3Jlc3VsdCgkdGhpcy0+X3Jlc3VsdCk7fWZ1bmN0aW9uCnJlc3VsdCgkaiwkZz0wKXskaT0kdGhpcy0+cXVlcnkoJGopO2lmKCFpc19vYmplY3QoJGkpKXtyZXR1cm4KZmFsc2U7fXJldHVybgptc3NxbF9yZXN1bHQoJGktPl9yZXN1bHQsMCwkZyk7fX1jbGFzcwpNaW5fUmVzdWx0e3ZhciRfcmVzdWx0LCRfb2Zmc2V0PTAsJF9maWVsZHMsJG51bV9yb3dzO2Z1bmN0aW9uCk1pbl9SZXN1bHQoJGkpeyR0aGlzLT5fcmVzdWx0PSRpOyR0aGlzLT5udW1fcm93cz1tc3NxbF9udW1fcm93cygkaSk7fWZ1bmN0aW9uCmZldGNoX2Fzc29jKCl7cmV0dXJuCm1zc3FsX2ZldGNoX2Fzc29jKCR0aGlzLT5fcmVzdWx0KTt9ZnVuY3Rpb24KZmV0Y2hfcm93KCl7cmV0dXJuCm1zc3FsX2ZldGNoX3JvdygkdGhpcy0+X3Jlc3VsdCk7fWZ1bmN0aW9uCm51bV9yb3dzKCl7cmV0dXJuCm1zc3FsX251bV9yb3dzKCR0aGlzLT5fcmVzdWx0KTt9ZnVuY3Rpb24KZmV0Y2hfZmllbGQoKXskYj1tc3NxbF9mZXRjaF9maWVsZCgkdGhpcy0+X3Jlc3VsdCk7JGItPm9yZ3RhYmxlPSRiLT50YWJsZTskYi0+b3JnbmFtZT0kYi0+bmFtZTtyZXR1cm4kYjt9ZnVuY3Rpb24Kc2VlaygkVCl7bXNzcWxfZGF0YV9zZWVrKCR0aGlzLT5fcmVzdWx0LCRUKTt9ZnVuY3Rpb24KX19kZXN0cnVjdCgpe21zc3FsX2ZyZWVfcmVzdWx0KCR0aGlzLT5fcmVzdWx0KTt9fX1mdW5jdGlvbgppZGZfZXNjYXBlKCRCKXtyZXR1cm4iWyIuc3RyX3JlcGxhY2UoIl0iLCJdXSIsJEIpLiJdIjt9ZnVuY3Rpb24KdGFibGUoJEIpe3JldHVybigkX0dFVFsibnMiXSE9IiI/aWRmX2VzY2FwZSgkX0dFVFsibnMiXSkuIi4iOiIiKS5pZGZfZXNjYXBlKCRCKTt9ZnVuY3Rpb24KY29ubmVjdCgpe2dsb2JhbCRsOyRmPW5ldwpNaW5fREI7JGdhPSRsLT5jcmVkZW50aWFscygpO2lmKCRmLT5jb25uZWN0KCRnYVswXSwkZ2FbMV0sJGdhWzJdKSl7cmV0dXJuJGY7fXJldHVybiRmLT5lcnJvcjt9ZnVuY3Rpb24KZ2V0X2RhdGFiYXNlcygpe3JldHVybgpnZXRfdmFscygiRVhFQyBzcF9kYXRhYmFzZXMiKTt9ZnVuY3Rpb24KbGltaXQoJGosJG0sJEYsJFQ9MCwkaWE9IiAiKXtyZXR1cm4oaXNzZXQoJEYpPyIgVE9QICgiLigkRiskVCkuIikiOiIiKS4iICRqJG0iO31mdW5jdGlvbgpsaW1pdDEoJGosJG0pe3JldHVybgpsaW1pdCgkaiwkbSwxKTt9ZnVuY3Rpb24KZGJfY29sbGF0aW9uKCRDLCRIYil7Z2xvYmFsJGY7cmV0dXJuJGYtPnJlc3VsdCgiU0VMRUNUIGNvbGxhdGlvbl9uYW1lIEZST00gc3lzLmRhdGFiYXNlcyBXSEVSRSBuYW1lID0gICIucSgkQykpO31mdW5jdGlvbgplbmdpbmVzKCl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCmxvZ2dlZF91c2VyKCl7Z2xvYmFsJGY7cmV0dXJuJGYtPnJlc3VsdCgiU0VMRUNUIFNVU0VSX05BTUUoKSIpO31mdW5jdGlvbgp0YWJsZXNfbGlzdCgpe3JldHVybgpnZXRfa2V5X3ZhbHMoIlNFTEVDVCBuYW1lLCB0eXBlX2Rlc2MgRlJPTSBzeXMuYWxsX29iamVjdHMgV0hFUkUgc2NoZW1hX2lkID0gU0NIRU1BX0lEKCIucShnZXRfc2NoZW1hKCkpLiIpIEFORCB0eXBlIElOICgnUycsICdVJywgJ1YnKSBPUkRFUiBCWSBuYW1lIik7fWZ1bmN0aW9uCmNvdW50X3RhYmxlcygkUCl7Z2xvYmFsJGY7JGI9YXJyYXkoKTtmb3JlYWNoKCRQCmFzJEMpeyRmLT5zZWxlY3RfZGIoJEMpOyRiWyRDXT0kZi0+cmVzdWx0KCJTRUxFQ1QgQ09VTlQoKikgRlJPTSBJTkZPUk1BVElPTl9TQ0hFTUEuVEFCTEVTIik7fXJldHVybiRiO31mdW5jdGlvbgp0YWJsZV9zdGF0dXMoJGU9IiIpeyRiPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiU0VMRUNUIG5hbWUgQVMgTmFtZSwgdHlwZV9kZXNjIEFTIEVuZ2luZSBGUk9NIHN5cy5hbGxfb2JqZWN0cyBXSEVSRSBzY2hlbWFfaWQgPSBTQ0hFTUFfSUQoIi5xKGdldF9zY2hlbWEoKSkuIikgQU5EIHR5cGUgSU4gKCdTJywgJ1UnLCAnVicpIi4oJGUhPSIiPyIgQU5EIG5hbWUgPSAiLnEoJGUpOiIiKSlhcyRjKXtpZigkZSE9IiIpe3JldHVybiRjO30kYlskY1siTmFtZSJdXT0kYzt9cmV0dXJuJGI7fWZ1bmN0aW9uCmlzX3ZpZXcoJEQpe3JldHVybiREWyJFbmdpbmUiXT09IlZJRVciO31mdW5jdGlvbgpma19zdXBwb3J0KCREKXtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KZmllbGRzKCRoKXskYj1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIlNFTEVDVCBjLiosIHQubmFtZSB0eXBlLCBkLmRlZmluaXRpb24gW2RlZmF1bHRdCkZST00gc3lzLmFsbF9jb2x1bW5zIGMKSk9JTiBzeXMuYWxsX29iamVjdHMgbyBPTiBjLm9iamVjdF9pZCA9IG8ub2JqZWN0X2lkCkpPSU4gc3lzLnR5cGVzIHQgT04gYy51c2VyX3R5cGVfaWQgPSB0LnVzZXJfdHlwZV9pZApMRUZUIEpPSU4gc3lzLmRlZmF1bHRfY29uc3RyYWludHMgZCBPTiBjLmRlZmF1bHRfb2JqZWN0X2lkID0gZC5wYXJlbnRfY29sdW1uX2lkCldIRVJFIG8uc2NoZW1hX2lkID0gU0NIRU1BX0lEKCIucShnZXRfc2NoZW1hKCkpLiIpIEFORCBvLnR5cGUgSU4gKCdTJywgJ1UnLCAnVicpIEFORCBvLm5hbWUgPSAiLnEoJGgpKWFzJGMpeyRBPSRjWyJ0eXBlIl07JGthPShlcmVnKCJjaGFyfGJpbmFyeSIsJEEpPyRjWyJtYXhfbGVuZ3RoIl06KCRBPT0iZGVjaW1hbCI/IiRjW3ByZWNpc2lvbl0sJGNbc2NhbGVdIjoiIikpOyRiWyRjWyJuYW1lIl1dPWFycmF5KCJmaWVsZCI9PiRjWyJuYW1lIl0sImZ1bGxfdHlwZSI9PiRBLigka2E/Iigka2EpIjoiIiksInR5cGUiPT4kQSwibGVuZ3RoIj0+JGthLCJkZWZhdWx0Ij0+JGNbImRlZmF1bHQiXSwibnVsbCI9PiRjWyJpc19udWxsYWJsZSJdLCJhdXRvX2luY3JlbWVudCI9PiRjWyJpc19pZGVudGl0eSJdLCJjb2xsYXRpb24iPT4kY1siY29sbGF0aW9uX25hbWUiXSwicHJpdmlsZWdlcyI9PmFycmF5KCJpbnNlcnQiPT4xLCJzZWxlY3QiPT4xLCJ1cGRhdGUiPT4xKSwicHJpbWFyeSI9PiRjWyJpc19pZGVudGl0eSJdLCk7fXJldHVybiRiO31mdW5jdGlvbgppbmRleGVzKCRoLCRNPW51bGwpe2dsb2JhbCRmO2lmKCFpc19vYmplY3QoJE0pKXskTT0kZjt9JGI9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJTRUxFQ1QgaS5uYW1lLCBrZXlfb3JkaW5hbCwgaXNfdW5pcXVlLCBpc19wcmltYXJ5X2tleSwgYy5uYW1lIEFTIGNvbHVtbl9uYW1lCkZST00gc3lzLmluZGV4ZXMgaQpJTk5FUiBKT0lOIHN5cy5pbmRleF9jb2x1bW5zIGljIE9OIGkub2JqZWN0X2lkID0gaWMub2JqZWN0X2lkIEFORCBpLmluZGV4X2lkID0gaWMuaW5kZXhfaWQKSU5ORVIgSk9JTiBzeXMuY29sdW1ucyBjIE9OIGljLm9iamVjdF9pZCA9IGMub2JqZWN0X2lkIEFORCBpYy5jb2x1bW5faWQgPSBjLmNvbHVtbl9pZApXSEVSRSBPQkpFQ1RfTkFNRShpLm9iamVjdF9pZCkgPSAiLnEoJGgpLCRNKWFzJGMpeyRiWyRjWyJuYW1lIl1dWyJ0eXBlIl09KCRjWyJpc19wcmltYXJ5X2tleSJdPyJQUklNQVJZIjooJGNbImlzX3VuaXF1ZSJdPyJVTklRVUUiOiJJTkRFWCIpKTskYlskY1sibmFtZSJdXVsibGVuZ3RocyJdPWFycmF5KCk7JGJbJGNbIm5hbWUiXV1bImNvbHVtbnMiXVskY1sia2V5X29yZGluYWwiXV09JGNbImNvbHVtbl9uYW1lIl07fXJldHVybiRiO31mdW5jdGlvbgp2aWV3KCRlKXtnbG9iYWwkZjtyZXR1cm4KYXJyYXkoInNlbGVjdCI9PnByZWdfcmVwbGFjZSgnfl4oPzpbXltdfFxcW1teXV0qXSkqXFxzK0FTXFxzK35pc1UnLCcnLCRmLT5yZXN1bHQoIlNFTEVDVCBWSUVXX0RFRklOSVRJT04gRlJPTSBJTkZPUk1BVElPTl9TQ0hFTUEuVklFV1MgV0hFUkUgVEFCTEVfU0NIRU1BID0gU0NIRU1BX05BTUUoKSBBTkQgVEFCTEVfTkFNRSA9ICIucSgkZSkpKSk7fWZ1bmN0aW9uCmNvbGxhdGlvbnMoKXskYj1hcnJheSgpO2ZvcmVhY2goZ2V0X3ZhbHMoIlNFTEVDVCBuYW1lIEZST00gZm5faGVscGNvbGxhdGlvbnMoKSIpYXMkSCl7JGJbZXJlZ19yZXBsYWNlKCJfLioiLCIiLCRIKV1bXT0kSDt9cmV0dXJuJGI7fWZ1bmN0aW9uCmluZm9ybWF0aW9uX3NjaGVtYSgkQyl7cmV0dXJuCmZhbHNlO31mdW5jdGlvbgplcnJvcigpe2dsb2JhbCRmO3JldHVybgpubF9icihoKHByZWdfcmVwbGFjZSgnfl4oXFxbW15dXSpdKSt+bScsJycsJGYtPmVycm9yKSkpO31mdW5jdGlvbgpleGFjdF92YWx1ZSgkYSl7cmV0dXJuCnEoJGEpO31mdW5jdGlvbgpjcmVhdGVfZGF0YWJhc2UoJEMsJEgpe3JldHVybgpxdWVyaWVzKCJDUkVBVEUgREFUQUJBU0UgIi5pZGZfZXNjYXBlKCRDKS4oZXJlZ2koJ15bYS16MC05X10rJCcsJEgpPyIgQ09MTEFURSAkSCI6IiIpKTt9ZnVuY3Rpb24KZHJvcF9kYXRhYmFzZXMoJFApe3JldHVybgpxdWVyaWVzKCJEUk9QIERBVEFCQVNFICIuaW1wbG9kZSgiLCAiLGFycmF5X21hcCgnaWRmX2VzY2FwZScsJFApKSk7fWZ1bmN0aW9uCnJlbmFtZV9kYXRhYmFzZSgkZSwkSCl7aWYoZXJlZ2koJ15bYS16MC05X10rJCcsJEgpKXtxdWVyaWVzKCJBTFRFUiBEQVRBQkFTRSAiLmlkZl9lc2NhcGUoREIpLiIgQ09MTEFURSAkSCIpO31xdWVyaWVzKCJBTFRFUiBEQVRBQkFTRSAiLmlkZl9lc2NhcGUoREIpLiIgTU9ESUZZIE5BTUUgPSAiLmlkZl9lc2NhcGUoJGUpKTtyZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KYXV0b19pbmNyZW1lbnQoKXtyZXR1cm4iIElERU5USVRZIi4oJF9QT1NUWyJBdXRvX2luY3JlbWVudCJdIT0iIj8iKCIuKCskX1BPU1RbIkF1dG9faW5jcmVtZW50Il0pLiIsMSkiOiIiKS4iIFBSSU1BUlkgS0VZIjt9ZnVuY3Rpb24KYWx0ZXJfdGFibGUoJGgsJGUsJHQsJEphLCRYYSwkZ2IsJEgsJHlhLCRzYil7JHI9YXJyYXkoKTtmb3JlYWNoKCR0CmFzJGcpeyR1PWlkZl9lc2NhcGUoJGdbMF0pOyRhPSRnWzFdO2lmKCEkYSl7JHJbIkRST1AiXVtdPSIgQ09MVU1OICR1Ijt9ZWxzZXskYVsxXT1wcmVnX3JlcGxhY2UoIn4oIENPTExBVEUgKScoXFx3KyknfiIsIlxcMVxcMiIsJGFbMV0pO2lmKCRnWzBdPT0iIil7JHJbIkFERCJdW109IlxuICAiLmltcGxvZGUoIiIsJGEpLigkaD09IiI/c3Vic3RyKCRKYVskYVswXV0sMTYrc3RybGVuKCRhWzBdKSk6IiIpO31lbHNle3Vuc2V0KCRhWzZdKTtpZigkdSE9JGFbMF0pe3F1ZXJpZXMoIkVYRUMgc3BfcmVuYW1lICIucSh0YWJsZSgkaCkuIi4kdSIpLiIsICIucShpZGZfdW5lc2NhcGUoJGFbMF0pKS4iLCAnQ09MVU1OJyIpO30kclsiQUxURVIgQ09MVU1OICIuaW1wbG9kZSgiIiwkYSldW109IiI7fX19aWYoJGg9PSIiKXtyZXR1cm4KcXVlcmllcygiQ1JFQVRFIFRBQkxFICIudGFibGUoJGUpLiIgKCIuaW1wbG9kZSgiLCIsKGFycmF5KSRyWyJBREQiXSkuIlxuKSIpO31pZigkaCE9JGUpe3F1ZXJpZXMoIkVYRUMgc3BfcmVuYW1lICIucSh0YWJsZSgkaCkpLiIsICIucSgkZSkpO31pZigkSmEpeyRyWyIiXT0kSmE7fWZvcmVhY2goJHIKYXMkZD0+JGEpe2lmKCFxdWVyaWVzKCJBTFRFUiBUQUJMRSAiLmlkZl9lc2NhcGUoJGUpLiIgJGQiLmltcGxvZGUoIiwiLCRhKSkpe3JldHVybgpmYWxzZTt9fXJldHVybgp0cnVlO31mdW5jdGlvbgphbHRlcl9pbmRleGVzKCRoLCRyKXskWD1hcnJheSgpOyRHYT1hcnJheSgpO2ZvcmVhY2goJHIKYXMkYSl7aWYoJGFbMl0pe2lmKCRhWzBdPT0iUFJJTUFSWSIpeyRHYVtdPSRhWzFdO31lbHNleyRYW109IiRhWzFdIE9OICIudGFibGUoJGgpO319ZWxzZWlmKCFxdWVyaWVzKCgkYVswXSE9IlBSSU1BUlkiPyJDUkVBVEUiLigkYVswXSE9IklOREVYIj8iIFVOSVFVRSI6IiIpLiIgSU5ERVggIi5pZGZfZXNjYXBlKHVuaXFpZCgkaC4iXyIpKS4iIE9OICIudGFibGUoJGgpOiJBTFRFUiBUQUJMRSAiLnRhYmxlKCRoKS4iIEFERCBQUklNQVJZIEtFWSIpLiIgJGFbMV0iKSl7cmV0dXJuCmZhbHNlO319cmV0dXJuKCEkWHx8cXVlcmllcygiRFJPUCBJTkRFWCAiLmltcGxvZGUoIiwgIiwkWCkpKSYmKCEkR2F8fHF1ZXJpZXMoIkFMVEVSIFRBQkxFICIudGFibGUoJGgpLiIgRFJPUCAiLmltcGxvZGUoIiwgIiwkR2EpKSk7fWZ1bmN0aW9uCmJlZ2luKCl7cmV0dXJuCnF1ZXJpZXMoIkJFR0lOIFRSQU5TQUNUSU9OIik7fWZ1bmN0aW9uCmluc2VydF9pbnRvKCRoLCRvKXtyZXR1cm4KcXVlcmllcygiSU5TRVJUIElOVE8gIi50YWJsZSgkaCkuKCRvPyIgKCIuaW1wbG9kZSgiLCAiLGFycmF5X2tleXMoJG8pKS4iKVxuVkFMVUVTICgiLmltcGxvZGUoIiwgIiwkbykuIikiOiJERUZBVUxUIFZBTFVFUyIpKTt9ZnVuY3Rpb24KaW5zZXJ0X3VwZGF0ZSgkaCwkbywkdWEpeyRhYT1hcnJheSgpOyRtPWFycmF5KCk7Zm9yZWFjaCgkbwphcyRkPT4kYSl7JGFhW109IiRkID0gJGEiO2lmKGlzc2V0KCR1YVtpZGZfdW5lc2NhcGUoJGQpXSkpeyRtW109IiRkID0gJGEiO319cmV0dXJuCnF1ZXJpZXMoIk1FUkdFICIudGFibGUoJGgpLiIgVVNJTkcgKFZBTFVFUygiLmltcGxvZGUoIiwgIiwkbykuIikpIEFTIHNvdXJjZSAoYyIuaW1wbG9kZSgiLCBjIixyYW5nZSgxLGNvdW50KCRvKSkpLiIpIE9OICIuaW1wbG9kZSgiIEFORCAiLCRtKS4iIFdIRU4gTUFUQ0hFRCBUSEVOIFVQREFURSBTRVQgIi5pbXBsb2RlKCIsICIsJGFhKS4iIFdIRU4gTk9UIE1BVENIRUQgVEhFTiBJTlNFUlQgKCIuaW1wbG9kZSgiLCAiLGFycmF5X2tleXMoJG8pKS4iKSBWQUxVRVMgKCIuaW1wbG9kZSgiLCAiLCRvKS4iKTsiKTt9ZnVuY3Rpb24KbGFzdF9pZCgpe2dsb2JhbCRmO3JldHVybiRmLT5yZXN1bHQoIlNFTEVDVCBTQ09QRV9JREVOVElUWSgpIik7fWZ1bmN0aW9uCmV4cGxhaW4oJGYsJGopeyRmLT5xdWVyeSgiU0VUIFNIT1dQTEFOX0FMTCBPTiIpOyRiPSRmLT5xdWVyeSgkaik7JGYtPnF1ZXJ5KCJTRVQgU0hPV1BMQU5fQUxMIE9GRiIpO3JldHVybiRiO31mdW5jdGlvbgpmb3JlaWduX2tleXMoJGgpeyRiPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiRVhFQyBzcF9ma2V5cyBAZmt0YWJsZV9uYW1lID0gIi5xKCRoKSlhcyRjKXskST0mJGJbJGNbIkZLX05BTUUiXV07JElbInRhYmxlIl09JGNbIlBLVEFCTEVfTkFNRSJdOyRJWyJzb3VyY2UiXVtdPSRjWyJGS0NPTFVNTl9OQU1FIl07JElbInRhcmdldCJdW109JGNbIlBLQ09MVU1OX05BTUUiXTt9cmV0dXJuJGI7fWZ1bmN0aW9uCnRydW5jYXRlX3RhYmxlcygkeil7cmV0dXJuCmFwcGx5X3F1ZXJpZXMoIlRSVU5DQVRFIFRBQkxFIiwkeik7fWZ1bmN0aW9uCmRyb3Bfdmlld3MoJFcpe3JldHVybgpxdWVyaWVzKCJEUk9QIFZJRVcgIi5pbXBsb2RlKCIsICIsYXJyYXlfbWFwKCd0YWJsZScsJFcpKSk7fWZ1bmN0aW9uCmRyb3BfdGFibGVzKCR6KXtyZXR1cm4KcXVlcmllcygiRFJPUCBUQUJMRSAiLmltcGxvZGUoIiwgIixhcnJheV9tYXAoJ3RhYmxlJywkeikpKTt9ZnVuY3Rpb24KbW92ZV90YWJsZXMoJHosJFcsJG9hKXtyZXR1cm4KYXBwbHlfcXVlcmllcygiQUxURVIgU0NIRU1BICIuaWRmX2VzY2FwZSgkb2EpLiIgVFJBTlNGRVIiLGFycmF5X21lcmdlKCR6LCRXKSk7fWZ1bmN0aW9uCnRyaWdnZXIoJGUpeyR5PWdldF9yb3dzKCJTRUxFQ1Qgcy5uYW1lIFtUcmlnZ2VyXSwKQ0FTRSBXSEVOIE9CSkVDVFBST1BFUlRZKHMuaWQsICdFeGVjSXNJbnNlcnRUcmlnZ2VyJykgPSAxIFRIRU4gJ0lOU0VSVCcgV0hFTiBPQkpFQ1RQUk9QRVJUWShzLmlkLCAnRXhlY0lzVXBkYXRlVHJpZ2dlcicpID0gMSBUSEVOICdVUERBVEUnIFdIRU4gT0JKRUNUUFJPUEVSVFkocy5pZCwgJ0V4ZWNJc0RlbGV0ZVRyaWdnZXInKSA9IDEgVEhFTiAnREVMRVRFJyBFTkQgW0V2ZW50XSwKQ0FTRSBXSEVOIE9CSkVDVFBST1BFUlRZKHMuaWQsICdFeGVjSXNJbnN0ZWFkT2ZUcmlnZ2VyJykgPSAxIFRIRU4gJ0lOU1RFQUQgT0YnIEVMU0UgJ0FGVEVSJyBFTkQgW1RpbWluZ10sCmMudGV4dApGUk9NIHN5c29iamVjdHMgcwpKT0lOIHN5c2NvbW1lbnRzIGMgT04gcy5pZCA9IGMuaWQKV0hFUkUgcy54dHlwZSA9ICdUUicgQU5EIHMubmFtZSA9ICIucSgkZSkpOyRiPXJlc2V0KCR5KTtpZigkYil7JGJbIlN0YXRlbWVudCJdPXByZWdfcmVwbGFjZSgnfl4uK1xccytBU1xccyt+aXNVJywnJywkYlsidGV4dCJdKTt9cmV0dXJuJGI7fWZ1bmN0aW9uCnRyaWdnZXJzKCRoKXskYj1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIlNFTEVDVCBzeXMxLm5hbWUsCkNBU0UgV0hFTiBPQkpFQ1RQUk9QRVJUWShzeXMxLmlkLCAnRXhlY0lzSW5zZXJ0VHJpZ2dlcicpID0gMSBUSEVOICdJTlNFUlQnIFdIRU4gT0JKRUNUUFJPUEVSVFkoc3lzMS5pZCwgJ0V4ZWNJc1VwZGF0ZVRyaWdnZXInKSA9IDEgVEhFTiAnVVBEQVRFJyBXSEVOIE9CSkVDVFBST1BFUlRZKHN5czEuaWQsICdFeGVjSXNEZWxldGVUcmlnZ2VyJykgPSAxIFRIRU4gJ0RFTEVURScgRU5EIFtFdmVudF0sCkNBU0UgV0hFTiBPQkpFQ1RQUk9QRVJUWShzeXMxLmlkLCAnRXhlY0lzSW5zdGVhZE9mVHJpZ2dlcicpID0gMSBUSEVOICdJTlNURUFEIE9GJyBFTFNFICdBRlRFUicgRU5EIFtUaW1pbmddCkZST00gc3lzb2JqZWN0cyBzeXMxCkpPSU4gc3lzb2JqZWN0cyBzeXMyIE9OIHN5czEucGFyZW50X29iaiA9IHN5czIuaWQKV0hFUkUgc3lzMS54dHlwZSA9ICdUUicgQU5EIHN5czIubmFtZSA9ICIucSgkaCkpYXMkYyl7JGJbJGNbIm5hbWUiXV09YXJyYXkoJGNbIlRpbWluZyJdLCRjWyJFdmVudCJdKTt9cmV0dXJuJGI7fWZ1bmN0aW9uCnRyaWdnZXJfb3B0aW9ucygpe3JldHVybgphcnJheSgiVGltaW5nIj0+YXJyYXkoIkFGVEVSIiwiSU5TVEVBRCBPRiIpLCJUeXBlIj0+YXJyYXkoIkFTIiksKTt9ZnVuY3Rpb24Kc2NoZW1hcygpe3JldHVybgpnZXRfdmFscygiU0VMRUNUIG5hbWUgRlJPTSBzeXMuc2NoZW1hcyIpO31mdW5jdGlvbgpnZXRfc2NoZW1hKCl7Z2xvYmFsJGY7aWYoJF9HRVRbIm5zIl0hPSIiKXtyZXR1cm4kX0dFVFsibnMiXTt9cmV0dXJuJGYtPnJlc3VsdCgiU0VMRUNUIFNDSEVNQV9OQU1FKCkiKTt9ZnVuY3Rpb24Kc2V0X3NjaGVtYSgkeWMpe3JldHVybgp0cnVlO31mdW5jdGlvbgp1c2Vfc3FsKCRSKXtyZXR1cm4iVVNFICIuaWRmX2VzY2FwZSgkUik7fWZ1bmN0aW9uCnNob3dfdmFyaWFibGVzKCl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCnNob3dfc3RhdHVzKCl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCnN1cHBvcnQoJFBhKXtyZXR1cm4KZXJlZygnXihzY2hlbWV8dHJpZ2dlcnx2aWV3fGRyb3BfY29sKSQnLCRQYSk7fSR2YT0ibXNzcWwiOyRaPWFycmF5KCk7JEhhPWFycmF5KCk7Zm9yZWFjaChhcnJheShsYW5nKDEyKT0+YXJyYXkoInRpbnlpbnQiPT4zLCJzbWFsbGludCI9PjUsImludCI9PjEwLCJiaWdpbnQiPT4yMCwiYml0Ij0+MSwiZGVjaW1hbCI9PjAsInJlYWwiPT4xMiwiZmxvYXQiPT41Mywic21hbGxtb25leSI9PjEwLCJtb25leSI9PjIwKSxsYW5nKDEzKT0+YXJyYXkoImRhdGUiPT4xMCwic21hbGxkYXRldGltZSI9PjE5LCJkYXRldGltZSI9PjE5LCJkYXRldGltZTIiPT4xOSwidGltZSI9PjgsImRhdGV0aW1lb2Zmc2V0Ij0+MTApLGxhbmcoMTQpPT5hcnJheSgiY2hhciI9PjgwMDAsInZhcmNoYXIiPT44MDAwLCJ0ZXh0Ij0+MjE0NzQ4MzY0NywibmNoYXIiPT40MDAwLCJudmFyY2hhciI9PjQwMDAsIm50ZXh0Ij0+MTA3Mzc0MTgyMyksbGFuZygxNSk9PmFycmF5KCJiaW5hcnkiPT44MDAwLCJ2YXJiaW5hcnkiPT44MDAwLCJpbWFnZSI9PjIxNDc0ODM2NDcpLClhcyRkPT4kYSl7JForPSRhOyRIYVskZF09YXJyYXlfa2V5cygkYSk7fSRHYj1hcnJheSgpOyR1Yj1hcnJheSgiPSIsIjwiLCI+IiwiPD0iLCI+PSIsIiE9IiwiTElLRSIsIkxJS0UgJSUiLCJJTiIsIklTIE5VTEwiLCJOT1QgTElLRSIsIk5PVCBJTiIsIklTIE5PVCBOVUxMIiwiIik7JGVhPWFycmF5KCJsZW4iLCJsb3dlciIsInJvdW5kIiwidXBwZXIiKTskSWI9YXJyYXkoImF2ZyIsImNvdW50IiwiY291bnQgZGlzdGluY3QiLCJtYXgiLCJtaW4iLCJzdW0iKTskRmI9YXJyYXkoYXJyYXkoImRhdGV8dGltZSI9PiJnZXRkYXRlIiwpLGFycmF5KCJpbnR8ZGVjaW1hbHxyZWFsfGZsb2F0fG1vbmV5fGRhdGV0aW1lIj0+IisvLSIsImNoYXJ8dGV4dCI9PiIrIiwpKTt9JHRhPWFycmF5KCJzZXJ2ZXIiPT4iTXlTUUwiKSskdGE7aWYoIWRlZmluZWQoIkRSSVZFUiIpKXskSmI9YXJyYXkoIk15U1FMaSIsIk15U1FMIiwiUERPX015U1FMIik7ZGVmaW5lKCJEUklWRVIiLCJzZXJ2ZXIiKTtpZihleHRlbnNpb25fbG9hZGVkKCJteXNxbGkiKSl7Y2xhc3MKTWluX0RCCmV4dGVuZHMKTXlTUUxpe3ZhciRleHRlbnNpb249Ik15U1FMaSI7ZnVuY3Rpb24KTWluX0RCKCl7cGFyZW50Ojppbml0KCk7fWZ1bmN0aW9uCmNvbm5lY3QoJF8sJEUsJEcpe215c3FsaV9yZXBvcnQoTVlTUUxJX1JFUE9SVF9PRkYpO2xpc3QoJF9kLCRUYik9ZXhwbG9kZSgiOiIsJF8sMik7JGI9QCR0aGlzLT5yZWFsX2Nvbm5lY3QoKCRfIT0iIj8kX2Q6aW5pX2dldCgibXlzcWxpLmRlZmF1bHRfaG9zdCIpKSwoIiRfJEUiIT0iIj8kRTppbmlfZ2V0KCJteXNxbGkuZGVmYXVsdF91c2VyIikpLCgiJF8kRSRHIiE9IiI/JEc6aW5pX2dldCgibXlzcWxpLmRlZmF1bHRfcHciKSksbnVsbCwoaXNfbnVtZXJpYygkVGIpPyRUYjppbmlfZ2V0KCJteXNxbGkuZGVmYXVsdF9wb3J0IikpLCghaXNfbnVtZXJpYygkVGIpPyRUYjpudWxsKSk7aWYoJGIpe2lmKG1ldGhvZF9leGlzdHMoJHRoaXMsJ3NldF9jaGFyc2V0JykpeyR0aGlzLT5zZXRfY2hhcnNldCgidXRmOCIpO31lbHNleyR0aGlzLT5xdWVyeSgiU0VUIE5BTUVTIHV0ZjgiKTt9fXJldHVybiRiO31mdW5jdGlvbgpyZXN1bHQoJGosJGc9MCl7JGk9JHRoaXMtPnF1ZXJ5KCRqKTtpZighJGkpe3JldHVybgpmYWxzZTt9JGM9JGktPmZldGNoX2FycmF5KCk7cmV0dXJuJGNbJGddO31mdW5jdGlvbgpxdW90ZSgkeCl7cmV0dXJuIiciLiR0aGlzLT5lc2NhcGVfc3RyaW5nKCR4KS4iJyI7fX19ZWxzZWlmKGV4dGVuc2lvbl9sb2FkZWQoIm15c3FsIikpe2NsYXNzCk1pbl9EQnt2YXIkZXh0ZW5zaW9uPSJNeVNRTCIsJHNlcnZlcl9pbmZvLCRhZmZlY3RlZF9yb3dzLCRlcnJvciwkX2xpbmssJF9yZXN1bHQ7ZnVuY3Rpb24KY29ubmVjdCgkXywkRSwkRyl7JHRoaXMtPl9saW5rPUBteXNxbF9jb25uZWN0KCgkXyE9IiI/JF86aW5pX2dldCgibXlzcWwuZGVmYXVsdF9ob3N0IikpLCgiJF8kRSIhPSIiPyRFOmluaV9nZXQoIm15c3FsLmRlZmF1bHRfdXNlciIpKSwoIiRfJEUkRyIhPSIiPyRHOmluaV9nZXQoIm15c3FsLmRlZmF1bHRfcGFzc3dvcmQiKSksdHJ1ZSwxMzEwNzIpO2lmKCR0aGlzLT5fbGluayl7JHRoaXMtPnNlcnZlcl9pbmZvPW15c3FsX2dldF9zZXJ2ZXJfaW5mbygkdGhpcy0+X2xpbmspO2lmKGZ1bmN0aW9uX2V4aXN0cygnbXlzcWxfc2V0X2NoYXJzZXQnKSl7bXlzcWxfc2V0X2NoYXJzZXQoInV0ZjgiLCR0aGlzLT5fbGluayk7fWVsc2V7JHRoaXMtPnF1ZXJ5KCJTRVQgTkFNRVMgdXRmOCIpO319ZWxzZXskdGhpcy0+ZXJyb3I9bXlzcWxfZXJyb3IoKTt9cmV0dXJuKGJvb2wpJHRoaXMtPl9saW5rO31mdW5jdGlvbgpxdW90ZSgkeCl7cmV0dXJuIiciLm15c3FsX3JlYWxfZXNjYXBlX3N0cmluZygkeCwkdGhpcy0+X2xpbmspLiInIjt9ZnVuY3Rpb24Kc2VsZWN0X2RiKCRSKXtyZXR1cm4KbXlzcWxfc2VsZWN0X2RiKCRSLCR0aGlzLT5fbGluayk7fWZ1bmN0aW9uCnF1ZXJ5KCRqLCREYT1mYWxzZSl7JGk9QCgkRGE/bXlzcWxfdW5idWZmZXJlZF9xdWVyeSgkaiwkdGhpcy0+X2xpbmspOm15c3FsX3F1ZXJ5KCRqLCR0aGlzLT5fbGluaykpO2lmKCEkaSl7JHRoaXMtPmVycm9yPW15c3FsX2Vycm9yKCR0aGlzLT5fbGluayk7cmV0dXJuCmZhbHNlO31pZigkaT09PXRydWUpeyR0aGlzLT5hZmZlY3RlZF9yb3dzPW15c3FsX2FmZmVjdGVkX3Jvd3MoJHRoaXMtPl9saW5rKTskdGhpcy0+aW5mbz1teXNxbF9pbmZvKCR0aGlzLT5fbGluayk7cmV0dXJuCnRydWU7fXJldHVybgpuZXcKTWluX1Jlc3VsdCgkaSk7fWZ1bmN0aW9uCm11bHRpX3F1ZXJ5KCRqKXtyZXR1cm4kdGhpcy0+X3Jlc3VsdD0kdGhpcy0+cXVlcnkoJGopO31mdW5jdGlvbgpzdG9yZV9yZXN1bHQoKXtyZXR1cm4kdGhpcy0+X3Jlc3VsdDt9ZnVuY3Rpb24KbmV4dF9yZXN1bHQoKXtyZXR1cm4KZmFsc2U7fWZ1bmN0aW9uCnJlc3VsdCgkaiwkZz0wKXskaT0kdGhpcy0+cXVlcnkoJGopO2lmKCEkaXx8ISRpLT5udW1fcm93cyl7cmV0dXJuCmZhbHNlO31yZXR1cm4KbXlzcWxfcmVzdWx0KCRpLT5fcmVzdWx0LDAsJGcpO319Y2xhc3MKTWluX1Jlc3VsdHt2YXIkbnVtX3Jvd3MsJF9yZXN1bHQsJF9vZmZzZXQ9MDtmdW5jdGlvbgpNaW5fUmVzdWx0KCRpKXskdGhpcy0+X3Jlc3VsdD0kaTskdGhpcy0+bnVtX3Jvd3M9bXlzcWxfbnVtX3Jvd3MoJGkpO31mdW5jdGlvbgpmZXRjaF9hc3NvYygpe3JldHVybgpteXNxbF9mZXRjaF9hc3NvYygkdGhpcy0+X3Jlc3VsdCk7fWZ1bmN0aW9uCmZldGNoX3Jvdygpe3JldHVybgpteXNxbF9mZXRjaF9yb3coJHRoaXMtPl9yZXN1bHQpO31mdW5jdGlvbgpmZXRjaF9maWVsZCgpeyRiPW15c3FsX2ZldGNoX2ZpZWxkKCR0aGlzLT5fcmVzdWx0LCR0aGlzLT5fb2Zmc2V0KyspOyRiLT5vcmd0YWJsZT0kYi0+dGFibGU7JGItPm9yZ25hbWU9JGItPm5hbWU7JGItPmNoYXJzZXRucj0oJGItPmJsb2I/NjM6MCk7cmV0dXJuJGI7fWZ1bmN0aW9uCl9fZGVzdHJ1Y3QoKXtteXNxbF9mcmVlX3Jlc3VsdCgkdGhpcy0+X3Jlc3VsdCk7fX19ZWxzZWlmKGV4dGVuc2lvbl9sb2FkZWQoInBkb19teXNxbCIpKXtjbGFzcwpNaW5fREIKZXh0ZW5kcwpNaW5fUERPe3ZhciRleHRlbnNpb249IlBET19NeVNRTCI7ZnVuY3Rpb24KY29ubmVjdCgkXywkRSwkRyl7JHRoaXMtPmRzbigibXlzcWw6aG9zdD0iLnN0cl9yZXBsYWNlKCI6IiwiO3VuaXhfc29ja2V0PSIscHJlZ19yZXBsYWNlKCd+OihcXGQpficsJztwb3J0PVxcMScsJF8pKSwkRSwkRyk7JHRoaXMtPnF1ZXJ5KCJTRVQgTkFNRVMgdXRmOCIpO3JldHVybgp0cnVlO31mdW5jdGlvbgpzZWxlY3RfZGIoJFIpe3JldHVybiR0aGlzLT5xdWVyeSgiVVNFICIuaWRmX2VzY2FwZSgkUikpO31mdW5jdGlvbgpxdWVyeSgkaiwkRGE9ZmFsc2UpeyR0aGlzLT5zZXRBdHRyaWJ1dGUoMTAwMCwhJERhKTtyZXR1cm4KcGFyZW50OjpxdWVyeSgkaiwkRGEpO319fWZ1bmN0aW9uCmlkZl9lc2NhcGUoJEIpe3JldHVybiJgIi5zdHJfcmVwbGFjZSgiYCIsImBgIiwkQikuImAiO31mdW5jdGlvbgp0YWJsZSgkQil7cmV0dXJuCmlkZl9lc2NhcGUoJEIpO31mdW5jdGlvbgpjb25uZWN0KCl7Z2xvYmFsJGw7JGY9bmV3Ck1pbl9EQjskZ2E9JGwtPmNyZWRlbnRpYWxzKCk7aWYoJGYtPmNvbm5lY3QoJGdhWzBdLCRnYVsxXSwkZ2FbMl0pKXskZi0+cXVlcnkoIlNFVCBzcWxfcXVvdGVfc2hvd19jcmVhdGUgPSAxIik7cmV0dXJuJGY7fXJldHVybiRmLT5lcnJvcjt9ZnVuY3Rpb24KZ2V0X2RhdGFiYXNlcygkeGQ9dHJ1ZSl7Z2xvYmFsJGY7JGI9JmdldF9zZXNzaW9uKCJkYnMiKTtpZighaXNzZXQoJGIpKXtpZigkeGQpe3Jlc3RhcnRfc2Vzc2lvbigpO29iX2ZsdXNoKCk7Zmx1c2goKTt9JGI9Z2V0X3ZhbHMoJGYtPnNlcnZlcl9pbmZvPj01PyJTRUxFQ1QgU0NIRU1BX05BTUUgRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEuU0NIRU1BVEEiOiJTSE9XIERBVEFCQVNFUyIpO31yZXR1cm4kYjt9ZnVuY3Rpb24KbGltaXQoJGosJG0sJEYsJFQ9MCwkaWE9IiAiKXtyZXR1cm4iICRqJG0iLihpc3NldCgkRik/JGlhLiJMSU1JVCAkRiIuKCRUPyIgT0ZGU0VUICRUIjoiIik6IiIpO31mdW5jdGlvbgpsaW1pdDEoJGosJG0pe3JldHVybgpsaW1pdCgkaiwkbSwxKTt9ZnVuY3Rpb24KZGJfY29sbGF0aW9uKCRDLCRIYil7Z2xvYmFsJGY7JGI9bnVsbDskUWE9JGYtPnJlc3VsdCgiU0hPVyBDUkVBVEUgREFUQUJBU0UgIi5pZGZfZXNjYXBlKCRDKSwxKTtpZihwcmVnX21hdGNoKCd+IENPTExBVEUgKFteIF0rKX4nLCRRYSwkaykpeyRiPSRrWzFdO31lbHNlaWYocHJlZ19tYXRjaCgnfiBDSEFSQUNURVIgU0VUIChbXiBdKyl+JywkUWEsJGspKXskYj0kSGJbJGtbMV1dWy0xXTt9cmV0dXJuJGI7fWZ1bmN0aW9uCmVuZ2luZXMoKXskYj1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIlNIT1cgRU5HSU5FUyIpYXMkYyl7aWYoZXJlZygiWUVTfERFRkFVTFQiLCRjWyJTdXBwb3J0Il0pKXskYltdPSRjWyJFbmdpbmUiXTt9fXJldHVybiRiO31mdW5jdGlvbgpsb2dnZWRfdXNlcigpe2dsb2JhbCRmO3JldHVybiRmLT5yZXN1bHQoIlNFTEVDVCBVU0VSKCkiKTt9ZnVuY3Rpb24KdGFibGVzX2xpc3QoKXtnbG9iYWwkZjtyZXR1cm4KZ2V0X2tleV92YWxzKCJTSE9XIi4oJGYtPnNlcnZlcl9pbmZvPj01PyIgRlVMTCI6IiIpLiIgVEFCTEVTIik7fWZ1bmN0aW9uCmNvdW50X3RhYmxlcygkUCl7JGI9YXJyYXkoKTtmb3JlYWNoKCRQCmFzJEMpeyRiWyRDXT1jb3VudChnZXRfdmFscygiU0hPVyBUQUJMRVMgSU4gIi5pZGZfZXNjYXBlKCRDKSkpO31yZXR1cm4kYjt9ZnVuY3Rpb24KdGFibGVfc3RhdHVzKCRlPSIiKXskYj1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIlNIT1cgVEFCTEUgU1RBVFVTIi4oJGUhPSIiPyIgTElLRSAiLnEoYWRkY3NsYXNoZXMoJGUsIiVfIikpOiIiKSlhcyRjKXtpZigkY1siRW5naW5lIl09PSJJbm5vREIiKXskY1siQ29tbWVudCJdPXByZWdfcmVwbGFjZSgnfig/OiguKyk7ICk/SW5ub0RCIGZyZWU6IC4qficsJ1xcMScsJGNbIkNvbW1lbnQiXSk7fWlmKCFpc3NldCgkY1siUm93cyJdKSl7JGNbIkNvbW1lbnQiXT0iIjt9aWYoJGUhPSIiKXtyZXR1cm4kYzt9JGJbJGNbIk5hbWUiXV09JGM7fXJldHVybiRiO31mdW5jdGlvbgppc192aWV3KCREKXtyZXR1cm4haXNzZXQoJERbIlJvd3MiXSk7fWZ1bmN0aW9uCmZrX3N1cHBvcnQoJEQpe3JldHVybigkRFsiRW5naW5lIl09PSJJbm5vREIiKTt9ZnVuY3Rpb24KZmllbGRzKCRoKXskYj1hcnJheSgpO2ZvcmVhY2goZ2V0X3Jvd3MoIlNIT1cgRlVMTCBDT0xVTU5TIEZST00gIi50YWJsZSgkaCkpYXMkYyl7cHJlZ19tYXRjaCgnfl4oW14oIF0rKSg/OlxcKCguKylcXCkpPyggdW5zaWduZWQpPyggemVyb2ZpbGwpPyR+JywkY1siVHlwZSJdLCRrKTskYlskY1siRmllbGQiXV09YXJyYXkoImZpZWxkIj0+JGNbIkZpZWxkIl0sImZ1bGxfdHlwZSI9PiRjWyJUeXBlIl0sInR5cGUiPT4ka1sxXSwibGVuZ3RoIj0+JGtbMl0sInVuc2lnbmVkIj0+bHRyaW0oJGtbM10uJGtbNF0pLCJkZWZhdWx0Ij0+KCRjWyJEZWZhdWx0Il0hPSIifHxlcmVnKCJjaGFyIiwka1sxXSk/JGNbIkRlZmF1bHQiXTpudWxsKSwibnVsbCI9PigkY1siTnVsbCJdPT0iWUVTIiksImF1dG9faW5jcmVtZW50Ij0+KCRjWyJFeHRyYSJdPT0iYXV0b19pbmNyZW1lbnQiKSwib25fdXBkYXRlIj0+KGVyZWdpKCdeb24gdXBkYXRlICguKyknLCRjWyJFeHRyYSJdLCRrKT8ka1sxXToiIiksImNvbGxhdGlvbiI9PiRjWyJDb2xsYXRpb24iXSwicHJpdmlsZWdlcyI9PmFycmF5X2ZsaXAoZXhwbG9kZSgiLCIsJGNbIlByaXZpbGVnZXMiXSkpLCJjb21tZW50Ij0+JGNbIkNvbW1lbnQiXSwicHJpbWFyeSI9PigkY1siS2V5Il09PSJQUkkiKSwpO31yZXR1cm4kYjt9ZnVuY3Rpb24KaW5kZXhlcygkaCwkTT1udWxsKXtnbG9iYWwkZjtpZighaXNfb2JqZWN0KCRNKSl7JE09JGY7fSRiPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiU0hPVyBJTkRFWCBGUk9NICIudGFibGUoJGgpLCRNKWFzJGMpeyRiWyRjWyJLZXlfbmFtZSJdXVsidHlwZSJdPSgkY1siS2V5X25hbWUiXT09IlBSSU1BUlkiPyJQUklNQVJZIjooJGNbIkluZGV4X3R5cGUiXT09IkZVTExURVhUIj8iRlVMTFRFWFQiOigkY1siTm9uX3VuaXF1ZSJdPyJJTkRFWCI6IlVOSVFVRSIpKSk7JGJbJGNbIktleV9uYW1lIl1dWyJjb2x1bW5zIl1bXT0kY1siQ29sdW1uX25hbWUiXTskYlskY1siS2V5X25hbWUiXV1bImxlbmd0aHMiXVtdPSRjWyJTdWJfcGFydCJdO31yZXR1cm4kYjt9ZnVuY3Rpb24KZm9yZWlnbl9rZXlzKCRoKXtnbG9iYWwkZiwkU2I7c3RhdGljJFM9J2AoPzpbXmBdfGBgKStgJzskYj1hcnJheSgpOyRtZD0kZi0+cmVzdWx0KCJTSE9XIENSRUFURSBUQUJMRSAiLnRhYmxlKCRoKSwxKTtpZigkbWQpe3ByZWdfbWF0Y2hfYWxsKCJ+Q09OU1RSQUlOVCAoJFMpIEZPUkVJR04gS0VZIFxcKCgoPzokUyw/ID8pKylcXCkgUkVGRVJFTkNFUyAoJFMpKD86XFwuKCRTKSk/IFxcKCgoPzokUyw/ID8pKylcXCkoPzogT04gREVMRVRFICgiLmltcGxvZGUoInwiLCRTYikuIikpPyg/OiBPTiBVUERBVEUgKCIuaW1wbG9kZSgifCIsJFNiKS4iKSk/fiIsJG1kLCRkYSxQUkVHX1NFVF9PUkRFUik7Zm9yZWFjaCgkZGEKYXMkayl7cHJlZ19tYXRjaF9hbGwoIn4kU34iLCRrWzJdLCR4Yyk7cHJlZ19tYXRjaF9hbGwoIn4kU34iLCRrWzVdLCRvYSk7JGJbaWRmX3VuZXNjYXBlKCRrWzFdKV09YXJyYXkoImRiIj0+aWRmX3VuZXNjYXBlKCRrWzRdIT0iIj8ka1szXToka1s0XSksInRhYmxlIj0+aWRmX3VuZXNjYXBlKCRrWzRdIT0iIj8ka1s0XToka1szXSksInNvdXJjZSI9PmFycmF5X21hcCgnaWRmX3VuZXNjYXBlJywkeGNbMF0pLCJ0YXJnZXQiPT5hcnJheV9tYXAoJ2lkZl91bmVzY2FwZScsJG9hWzBdKSwib25fZGVsZXRlIj0+JGtbNl0sIm9uX3VwZGF0ZSI9PiRrWzddLCk7fX1yZXR1cm4kYjt9ZnVuY3Rpb24KdmlldygkZSl7Z2xvYmFsJGY7cmV0dXJuCmFycmF5KCJzZWxlY3QiPT5wcmVnX3JlcGxhY2UoJ35eKD86W15gXXxgW15gXSpgKSpcXHMrQVNcXHMrfmlzVScsJycsJGYtPnJlc3VsdCgiU0hPVyBDUkVBVEUgVklFVyAiLnRhYmxlKCRlKSwxKSkpO31mdW5jdGlvbgpjb2xsYXRpb25zKCl7JGI9YXJyYXkoKTtmb3JlYWNoKGdldF9yb3dzKCJTSE9XIENPTExBVElPTiIpYXMkYyl7aWYoJGNbIkRlZmF1bHQiXSl7JGJbJGNbIkNoYXJzZXQiXV1bLTFdPSRjWyJDb2xsYXRpb24iXTt9ZWxzZXskYlskY1siQ2hhcnNldCJdXVtdPSRjWyJDb2xsYXRpb24iXTt9fWtzb3J0KCRiKTtmb3JlYWNoKCRiCmFzJGQ9PiRhKXthc29ydCgkYlskZF0pO31yZXR1cm4kYjt9ZnVuY3Rpb24KaW5mb3JtYXRpb25fc2NoZW1hKCRDKXtnbG9iYWwkZjtyZXR1cm4oJGYtPnNlcnZlcl9pbmZvPj01JiYkQz09ImluZm9ybWF0aW9uX3NjaGVtYSIpO31mdW5jdGlvbgplcnJvcigpe2dsb2JhbCRmO3JldHVybgpoKHByZWdfcmVwbGFjZSgnfl5Zb3UgaGF2ZSBhbiBlcnJvci4qc3ludGF4IHRvIHVzZX5VJywiU3ludGF4IGVycm9yIiwkZi0+ZXJyb3IpKTt9ZnVuY3Rpb24KZXhhY3RfdmFsdWUoJGEpe3JldHVybgpxKCRhKS4iIENPTExBVEUgdXRmOF9iaW4iO31mdW5jdGlvbgpjcmVhdGVfZGF0YWJhc2UoJEMsJEgpe3NldF9zZXNzaW9uKCJkYnMiLG51bGwpO3JldHVybgpxdWVyaWVzKCJDUkVBVEUgREFUQUJBU0UgIi5pZGZfZXNjYXBlKCRDKS4oJEg/IiBDT0xMQVRFICIucSgkSCk6IiIpKTt9ZnVuY3Rpb24KZHJvcF9kYXRhYmFzZXMoJFApe3NldF9zZXNzaW9uKCJkYnMiLG51bGwpO3JldHVybgphcHBseV9xdWVyaWVzKCJEUk9QIERBVEFCQVNFIiwkUCwnaWRmX2VzY2FwZScpO31mdW5jdGlvbgpyZW5hbWVfZGF0YWJhc2UoJGUsJEgpe2lmKGNyZWF0ZV9kYXRhYmFzZSgkZSwkSCkpeyRpYj1hcnJheSgpO2ZvcmVhY2godGFibGVzX2xpc3QoKWFzJGg9PiRBKXskaWJbXT10YWJsZSgkaCkuIiBUTyAiLmlkZl9lc2NhcGUoJGUpLiIuIi50YWJsZSgkaCk7fWlmKCEkaWJ8fHF1ZXJpZXMoIlJFTkFNRSBUQUJMRSAiLmltcGxvZGUoIiwgIiwkaWIpKSl7cXVlcmllcygiRFJPUCBEQVRBQkFTRSAiLmlkZl9lc2NhcGUoREIpKTtyZXR1cm4KdHJ1ZTt9fXJldHVybgpmYWxzZTt9ZnVuY3Rpb24KYXV0b19pbmNyZW1lbnQoKXskc2M9IiBQUklNQVJZIEtFWSI7aWYoJF9HRVRbImNyZWF0ZSJdIT0iIiYmJF9QT1NUWyJhdXRvX2luY3JlbWVudF9jb2wiXSl7Zm9yZWFjaChpbmRleGVzKCRfR0VUWyJjcmVhdGUiXSlhcyRYKXtpZihpbl9hcnJheSgkX1BPU1RbImZpZWxkcyJdWyRfUE9TVFsiYXV0b19pbmNyZW1lbnRfY29sIl1dWyJvcmlnIl0sJFhbImNvbHVtbnMiXSx0cnVlKSl7JHNjPSIiO2JyZWFrO31pZigkWFsidHlwZSJdPT0iUFJJTUFSWSIpeyRzYz0iIFVOSVFVRSI7fX19cmV0dXJuIiBBVVRPX0lOQ1JFTUVOVCRzYyI7fWZ1bmN0aW9uCmFsdGVyX3RhYmxlKCRoLCRlLCR0LCRKYSwkWGEsJGdiLCRILCR5YSwkc2IpeyRyPWFycmF5KCk7Zm9yZWFjaCgkdAphcyRnKXskcltdPSgkZ1sxXT8oJGghPSIiPygkZ1swXSE9IiI/IkNIQU5HRSAiLmlkZl9lc2NhcGUoJGdbMF0pOiJBREQiKToiICIpLiIgIi5pbXBsb2RlKCRnWzFdKS4oJGghPSIiPyIgJGdbMl0iOiIiKToiRFJPUCAiLmlkZl9lc2NhcGUoJGdbMF0pKTt9JHI9YXJyYXlfbWVyZ2UoJHIsJEphKTskUGM9IkNPTU1FTlQ9Ii5xKCRYYSkuKCRnYj8iIEVOR0lORT0iLnEoJGdiKToiIikuKCRIPyIgQ09MTEFURSAiLnEoJEgpOiIiKS4oJHlhIT0iIj8iIEFVVE9fSU5DUkVNRU5UPSR5YSI6IiIpLiRzYjtpZigkaD09IiIpe3JldHVybgpxdWVyaWVzKCJDUkVBVEUgVEFCTEUgIi50YWJsZSgkZSkuIiAoXG4iLmltcGxvZGUoIixcbiIsJHIpLiJcbikgJFBjIik7fWlmKCRoIT0kZSl7JHJbXT0iUkVOQU1FIFRPICIudGFibGUoJGUpO30kcltdPSRQYztyZXR1cm4KcXVlcmllcygiQUxURVIgVEFCTEUgIi50YWJsZSgkaCkuIlxuIi5pbXBsb2RlKCIsXG4iLCRyKSk7fWZ1bmN0aW9uCmFsdGVyX2luZGV4ZXMoJGgsJHIpe2ZvcmVhY2goJHIKYXMkZD0+JGEpeyRyWyRkXT0oJGFbMl0/IlxuRFJPUCBJTkRFWCAiOiJcbkFERCAkYVswXSAiLigkYVswXT09IlBSSU1BUlkiPyJLRVkgIjoiIikpLiRhWzFdO31yZXR1cm4KcXVlcmllcygiQUxURVIgVEFCTEUgIi50YWJsZSgkaCkuaW1wbG9kZSgiLCIsJHIpKTt9ZnVuY3Rpb24KdHJ1bmNhdGVfdGFibGVzKCR6KXtyZXR1cm4KYXBwbHlfcXVlcmllcygiVFJVTkNBVEUgVEFCTEUiLCR6KTt9ZnVuY3Rpb24KZHJvcF92aWV3cygkVyl7cmV0dXJuCnF1ZXJpZXMoIkRST1AgVklFVyAiLmltcGxvZGUoIiwgIixhcnJheV9tYXAoJ3RhYmxlJywkVykpKTt9ZnVuY3Rpb24KZHJvcF90YWJsZXMoJHope3JldHVybgpxdWVyaWVzKCJEUk9QIFRBQkxFICIuaW1wbG9kZSgiLCAiLGFycmF5X21hcCgndGFibGUnLCR6KSkpO31mdW5jdGlvbgptb3ZlX3RhYmxlcygkeiwkVywkb2EpeyRpYj1hcnJheSgpO2ZvcmVhY2goYXJyYXlfbWVyZ2UoJHosJFcpYXMkaCl7JGliW109dGFibGUoJGgpLiIgVE8gIi5pZGZfZXNjYXBlKCRvYSkuIi4iLnRhYmxlKCRoKTt9cmV0dXJuCnF1ZXJpZXMoIlJFTkFNRSBUQUJMRSAiLmltcGxvZGUoIiwgIiwkaWIpKTt9ZnVuY3Rpb24KY29weV90YWJsZXMoJHosJFcsJG9hKXtmb3JlYWNoKCR6CmFzJGgpeyRlPSgkb2E9PURCP3RhYmxlKCJjb3B5XyRoIik6aWRmX2VzY2FwZSgkb2EpLiIuIi50YWJsZSgkaCkpO2lmKCFxdWVyaWVzKCJEUk9QIFRBQkxFIElGIEVYSVNUUyAkZSIpfHwhcXVlcmllcygiQ1JFQVRFIFRBQkxFICRlIExJS0UgIi50YWJsZSgkaCkpfHwhcXVlcmllcygiSU5TRVJUIElOVE8gJGUgU0VMRUNUICogRlJPTSAiLnRhYmxlKCRoKSkpe3JldHVybgpmYWxzZTt9fWZvcmVhY2goJFcKYXMkaCl7JGU9KCRvYT09REI/dGFibGUoImNvcHlfJGgiKTppZGZfZXNjYXBlKCRvYSkuIi4iLnRhYmxlKCRoKSk7JHlkPXZpZXcoJGgpO2lmKCFxdWVyaWVzKCJEUk9QIFZJRVcgSUYgRVhJU1RTICRlIil8fCFxdWVyaWVzKCJDUkVBVEUgVklFVyAkZSBBUyAkeWRbc2VsZWN0XSIpKXtyZXR1cm4KZmFsc2U7fX1yZXR1cm4KdHJ1ZTt9ZnVuY3Rpb24KdHJpZ2dlcigkZSl7JHk9Z2V0X3Jvd3MoIlNIT1cgVFJJR0dFUlMgV0hFUkUgYFRyaWdnZXJgID0gIi5xKCRlKSk7cmV0dXJuCnJlc2V0KCR5KTt9ZnVuY3Rpb24KdHJpZ2dlcnMoJGgpeyRiPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiU0hPVyBUUklHR0VSUyBMSUtFICIucShhZGRjc2xhc2hlcygkaCwiJV8iKSkpYXMkYyl7JGJbJGNbIlRyaWdnZXIiXV09YXJyYXkoJGNbIlRpbWluZyJdLCRjWyJFdmVudCJdKTt9cmV0dXJuJGI7fWZ1bmN0aW9uCnRyaWdnZXJfb3B0aW9ucygpe3JldHVybgphcnJheSgiVGltaW5nIj0+YXJyYXkoIkJFRk9SRSIsIkFGVEVSIiksIlR5cGUiPT5hcnJheSgiRk9SIEVBQ0ggUk9XIiksKTt9ZnVuY3Rpb24Kcm91dGluZSgkZSwkQSl7Z2xvYmFsJGYsJEFjLCRwZCwkWjskRGQ9YXJyYXkoImJvb2wiLCJib29sZWFuIiwiaW50ZWdlciIsImRvdWJsZSBwcmVjaXNpb24iLCJyZWFsIiwiZGVjIiwibnVtZXJpYyIsImZpeGVkIiwibmF0aW9uYWwgY2hhciIsIm5hdGlvbmFsIHZhcmNoYXIiKTskdWQ9IigoIi5pbXBsb2RlKCJ8IixhcnJheV9tZXJnZShhcnJheV9rZXlzKCRaKSwkRGQpKS4iKSg/OlxccypcXCgoKD86W14nXCIpXSp8JEFjKSspXFwpKT9cXHMqKHplcm9maWxsXFxzKik/KHVuc2lnbmVkKD86XFxzK3plcm9maWxsKT8pPykoPzpcXHMqKD86Q0hBUlNFVHxDSEFSQUNURVJcXHMrU0VUKVxccypbJ1wiXT8oW14nXCJcXHNdKylbJ1wiXT8pPyI7JFM9IlxccyooIi4oJEE9PSJGVU5DVElPTiI/IiI6aW1wbG9kZSgifCIsJHBkKSkuIik/XFxzKig/OmAoKD86W15gXXxgYCkqKWBcXHMqfFxcYihcXFMrKVxccyspJHVkIjskUWE9JGYtPnJlc3VsdCgiU0hPVyBDUkVBVEUgJEEgIi5pZGZfZXNjYXBlKCRlKSwyKTtwcmVnX21hdGNoKCJ+XFwoKCg/OiRTXFxzKiw/KSopXFwpIi4oJEE9PSJGVU5DVElPTiI/IlxccypSRVRVUk5TXFxzKyR1ZCI6IiIpLiJcXHMqKC4qKX5pcyIsJFFhLCRrKTskdD1hcnJheSgpO3ByZWdfbWF0Y2hfYWxsKCJ+JFNcXHMqLD9+aXMiLCRrWzFdLCRkYSxQUkVHX1NFVF9PUkRFUik7Zm9yZWFjaCgkZGEKYXMkRWEpeyRlPXN0cl9yZXBsYWNlKCJgYCIsImAiLCRFYVsyXSkuJEVhWzNdOyR0W109YXJyYXkoImZpZWxkIj0+JGUsInR5cGUiPT5zdHJ0b2xvd2VyKCRFYVs1XSksImxlbmd0aCI9PnByZWdfcmVwbGFjZV9jYWxsYmFjaygifiRBY35zIiwnbm9ybWFsaXplX2VudW0nLCRFYVs2XSksInVuc2lnbmVkIj0+c3RydG9sb3dlcihwcmVnX3JlcGxhY2UoJ35cXHMrficsJyAnLHRyaW0oIiRFYVs4XSAkRWFbN10iKSkpLCJmdWxsX3R5cGUiPT4kRWFbNF0sImlub3V0Ij0+c3RydG91cHBlcigkRWFbMV0pLCJjb2xsYXRpb24iPT5zdHJ0b2xvd2VyKCRFYVs5XSksKTt9aWYoJEEhPSJGVU5DVElPTiIpe3JldHVybgphcnJheSgiZmllbGRzIj0+JHQsImRlZmluaXRpb24iPT4ka1sxMV0pO31yZXR1cm4KYXJyYXkoImZpZWxkcyI9PiR0LCJyZXR1cm5zIj0+YXJyYXkoInR5cGUiPT4ka1sxMl0sImxlbmd0aCI9PiRrWzEzXSwidW5zaWduZWQiPT4ka1sxNV0sImNvbGxhdGlvbiI9PiRrWzE2XSksImRlZmluaXRpb24iPT4ka1sxN10sKTt9ZnVuY3Rpb24Kcm91dGluZXMoKXtyZXR1cm4KZ2V0X3Jvd3MoIlNFTEVDVCAqIEZST00gaW5mb3JtYXRpb25fc2NoZW1hLlJPVVRJTkVTIFdIRVJFIFJPVVRJTkVfU0NIRU1BID0gIi5xKERCKSk7fWZ1bmN0aW9uCmJlZ2luKCl7cmV0dXJuCnF1ZXJpZXMoIkJFR0lOIik7fWZ1bmN0aW9uCmluc2VydF9pbnRvKCRoLCRvKXtyZXR1cm4KcXVlcmllcygiSU5TRVJUIElOVE8gIi50YWJsZSgkaCkuIiAoIi5pbXBsb2RlKCIsICIsYXJyYXlfa2V5cygkbykpLiIpXG5WQUxVRVMgKCIuaW1wbG9kZSgiLCAiLCRvKS4iKSIpO31mdW5jdGlvbgppbnNlcnRfdXBkYXRlKCRoLCRvLCR1YSl7Zm9yZWFjaCgkbwphcyRkPT4kYSl7JG9bJGRdPSIkZCA9ICRhIjt9JGFhPWltcGxvZGUoIiwgIiwkbyk7cmV0dXJuCnF1ZXJpZXMoIklOU0VSVCBJTlRPICIudGFibGUoJGgpLiIgU0VUICRhYSBPTiBEVVBMSUNBVEUgS0VZIFVQREFURSAkYWEiKTt9ZnVuY3Rpb24KbGFzdF9pZCgpe2dsb2JhbCRmO3JldHVybiRmLT5yZXN1bHQoIlNFTEVDVCBMQVNUX0lOU0VSVF9JRCgpIik7fWZ1bmN0aW9uCmV4cGxhaW4oJGYsJGope3JldHVybiRmLT5xdWVyeSgiRVhQTEFJTiAkaiIpO31mdW5jdGlvbgp0eXBlcygpe3JldHVybgphcnJheSgpO31mdW5jdGlvbgpzY2hlbWFzKCl7cmV0dXJuCmFycmF5KCk7fWZ1bmN0aW9uCmdldF9zY2hlbWEoKXtyZXR1cm4iIjt9ZnVuY3Rpb24Kc2V0X3NjaGVtYSgkeWMpe3JldHVybgp0cnVlO31mdW5jdGlvbgpjcmVhdGVfc3FsKCRoLCR5YSl7Z2xvYmFsJGY7JGI9JGYtPnJlc3VsdCgiU0hPVyBDUkVBVEUgVEFCTEUgIi50YWJsZSgkaCksMSk7aWYoISR5YSl7JGI9cHJlZ19yZXBsYWNlKCd+IEFVVE9fSU5DUkVNRU5UPVxcZCt+JywnJywkYik7fXJldHVybiRiO31mdW5jdGlvbgp0cnVuY2F0ZV9zcWwoJGgpe3JldHVybiJUUlVOQ0FURSAiLnRhYmxlKCRoKTt9ZnVuY3Rpb24KdXNlX3NxbCgkUil7cmV0dXJuIlVTRSAiLmlkZl9lc2NhcGUoJFIpO31mdW5jdGlvbgp0cmlnZ2VyX3NxbCgkaCwkdGIpeyRiPSIiO2ZvcmVhY2goZ2V0X3Jvd3MoIlNIT1cgVFJJR0dFUlMgTElLRSAiLnEoYWRkY3NsYXNoZXMoJGgsIiVfIikpLG51bGwsIi0tICIpYXMkYyl7JGIuPSJcbiIuKCR0Yj09J0NSRUFURStBTFRFUic/IkRST1AgVFJJR0dFUiBJRiBFWElTVFMgIi5pZGZfZXNjYXBlKCRjWyJUcmlnZ2VyIl0pLiI7O1xuIjoiIikuIkNSRUFURSBUUklHR0VSICIuaWRmX2VzY2FwZSgkY1siVHJpZ2dlciJdKS4iICRjW1RpbWluZ10gJGNbRXZlbnRdIE9OICIudGFibGUoJGNbIlRhYmxlIl0pLiIgRk9SIEVBQ0ggUk9XXG4kY1tTdGF0ZW1lbnRdOztcbiI7fXJldHVybiRiO31mdW5jdGlvbgpzaG93X3ZhcmlhYmxlcygpe3JldHVybgpnZXRfa2V5X3ZhbHMoIlNIT1cgVkFSSUFCTEVTIik7fWZ1bmN0aW9uCnNob3dfc3RhdHVzKCl7cmV0dXJuCmdldF9rZXlfdmFscygiU0hPVyBTVEFUVVMiKTt9ZnVuY3Rpb24Kc3VwcG9ydCgkUGEpe2dsb2JhbCRmO3JldHVybiFlcmVnKCJzY2hlbWV8c2VxdWVuY2V8dHlwZSIuKCRmLT5zZXJ2ZXJfaW5mbzw1LjE/InxldmVudHxwYXJ0aXRpb25pbmciLigkZi0+c2VydmVyX2luZm88NT8ifHZpZXd8cm91dGluZXx0cmlnZ2VyIjoiIik6IiIpLCRQYSk7fSR2YT0ic3FsIjskWj1hcnJheSgpOyRIYT1hcnJheSgpO2ZvcmVhY2goYXJyYXkobGFuZygxMik9PmFycmF5KCJ0aW55aW50Ij0+Mywic21hbGxpbnQiPT41LCJtZWRpdW1pbnQiPT44LCJpbnQiPT4xMCwiYmlnaW50Ij0+MjAsImRlY2ltYWwiPT42NiwiZmxvYXQiPT4xMiwiZG91YmxlIj0+MjEpLGxhbmcoMTMpPT5hcnJheSgiZGF0ZSI9PjEwLCJkYXRldGltZSI9PjE5LCJ0aW1lc3RhbXAiPT4xOSwidGltZSI9PjEwLCJ5ZWFyIj0+NCksbGFuZygxNCk9PmFycmF5KCJjaGFyIj0+MjU1LCJ2YXJjaGFyIj0+NjU1MzUsInRpbnl0ZXh0Ij0+MjU1LCJ0ZXh0Ij0+NjU1MzUsIm1lZGl1bXRleHQiPT4xNjc3NzIxNSwibG9uZ3RleHQiPT40Mjk0OTY3Mjk1KSxsYW5nKDE1KT0+YXJyYXkoImJpdCI9PjIwLCJiaW5hcnkiPT4yNTUsInZhcmJpbmFyeSI9PjY1NTM1LCJ0aW55YmxvYiI9PjI1NSwiYmxvYiI9PjY1NTM1LCJtZWRpdW1ibG9iIj0+MTY3NzcyMTUsImxvbmdibG9iIj0+NDI5NDk2NzI5NSksbGFuZygxOCk9PmFycmF5KCJlbnVtIj0+NjU1MzUsInNldCI9PjY0KSwpYXMkZD0+JGEpeyRaKz0kYTskSGFbJGRdPWFycmF5X2tleXMoJGEpO30kR2I9YXJyYXkoInVuc2lnbmVkIiwiemVyb2ZpbGwiLCJ1bnNpZ25lZCB6ZXJvZmlsbCIpOyR1Yj1hcnJheSgiPSIsIjwiLCI+IiwiPD0iLCI+PSIsIiE9IiwiTElLRSIsIkxJS0UgJSUiLCJSRUdFWFAiLCJJTiIsIklTIE5VTEwiLCJOT1QgTElLRSIsIk5PVCBSRUdFWFAiLCJOT1QgSU4iLCJJUyBOT1QgTlVMTCIsIiIpOyRlYT1hcnJheSgiY2hhcl9sZW5ndGgiLCJkYXRlIiwiZnJvbV91bml4dGltZSIsImhleCIsImxvd2VyIiwicm91bmQiLCJzZWNfdG9fdGltZSIsInRpbWVfdG9fc2VjIiwidXBwZXIiKTskSWI9YXJyYXkoImF2ZyIsImNvdW50IiwiY291bnQgZGlzdGluY3QiLCJncm91cF9jb25jYXQiLCJtYXgiLCJtaW4iLCJzdW0iKTskRmI9YXJyYXkoYXJyYXkoImNoYXIiPT4ibWQ1L3NoYTEvcGFzc3dvcmQvZW5jcnlwdC91dWlkIiwiYmluYXJ5Ij0+Im1kNS9zaGExL2hleCIsImRhdGV8dGltZSI9PiJub3ciLCksYXJyYXkoImludHxmbG9hdHxkb3VibGV8ZGVjaW1hbCI9PiIrLy0iLCJkYXRlIj0+IisgaW50ZXJ2YWwvLSBpbnRlcnZhbCIsInRpbWUiPT4iYWRkdGltZS9zdWJ0aW1lIiwiY2hhcnx0ZXh0Ij0+ImNvbmNhdCIsKSk7fWRlZmluZSgiU0VSVkVSIiwkX0dFVFtEUklWRVJdKTtkZWZpbmUoIkRCIiwkX0dFVFsiZGIiXSk7ZGVmaW5lKCJNRSIscHJlZ19yZXBsYWNlKCd+XlteP10qLyhbXj9dKikuKn4nLCdcXDEnLCRfU0VSVkVSWyJSRVFVRVNUX1VSSSJdKS4nPycuKHNpZCgpP1NJRC4nJic6JycpLihTRVJWRVIhPT1udWxsP0RSSVZFUi4iPSIudXJsZW5jb2RlKFNFUlZFUikuJyYnOicnKS4oaXNzZXQoJF9HRVRbInVzZXJuYW1lIl0pPyJ1c2VybmFtZT0iLnVybGVuY29kZSgkX0dFVFsidXNlcm5hbWUiXSkuJyYnOicnKS4oREIhPSIiPydkYj0nLnVybGVuY29kZShEQikuJyYnLihpc3NldCgkX0dFVFsibnMiXSk/Im5zPSIudXJsZW5jb2RlKCRfR0VUWyJucyJdKS4iJiI6IiIpOicnKSk7JFFiPSIzLjIuMiI7Y2xhc3MKQWRtaW5lcnt2YXIkb3BlcmF0b3JzPWFycmF5KCI8PSIsIj49Iik7dmFyJF92YWx1ZXM9YXJyYXkoKTtmdW5jdGlvbgpuYW1lKCl7cmV0dXJuCmxhbmcoMTkpO31mdW5jdGlvbgpjcmVkZW50aWFscygpe3JldHVybgphcnJheShTRVJWRVIsJF9HRVRbInVzZXJuYW1lIl0sZ2V0X3Nlc3Npb24oInB3ZHMiKSk7fWZ1bmN0aW9uCnBlcm1hbmVudExvZ2luKCl7cmV0dXJuCnBhc3N3b3JkX2ZpbGUoKTt9ZnVuY3Rpb24KZGF0YWJhc2UoKXtnbG9iYWwkZjskUD1nZXRfZGF0YWJhc2VzKGZhbHNlKTtyZXR1cm4oISRQPyRmLT5yZXN1bHQoIlNFTEVDVCBTVUJTVFJJTkdfSU5ERVgoQ1VSUkVOVF9VU0VSLCAnQCcsIDEpIik6JFBbKGluZm9ybWF0aW9uX3NjaGVtYSgkUFswXSk/MTowKV0pO31mdW5jdGlvbgpoZWFkZXJzKCl7aGVhZGVyKCJYLUZyYW1lLU9wdGlvbnM6IGRlbnkiKTtoZWFkZXIoIlgtWFNTLVByb3RlY3Rpb246IDAiKTt9ZnVuY3Rpb24KaGVhZCgpe3JldHVybgp0cnVlO31mdW5jdGlvbgpsb2dpbkZvcm0oKXtlY2hvJzx0YWJsZSBjZWxsc3BhY2luZz0iMCI+Cjx0cj48dGg+JyxsYW5nKDIwKSwnPHRkPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImRyaXZlciIgdmFsdWU9InNlcnZlciI+PGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic2VydmVyIiB2YWx1ZT0iIj48aW5wdXQgaWQ9InVzZXJuYW1lIiBuYW1lPSJ1c2VybmFtZSIgdmFsdWU9IicsaCgkX0dFVFsidXNlcm5hbWUiXSksJyI+Cjx0cj48dGg+JyxsYW5nKDIxKSwnPHRkPjxpbnB1dCB0eXBlPSJwYXNzd29yZCIgbmFtZT0icGFzc3dvcmQiPgo8L3RhYmxlPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwndXNlcm5hbWVcJykuZm9jdXMoKTsKPC9zY3JpcHQ+CicsIjxwPjxpbnB1dCB0eXBlPSdzdWJtaXQnIHZhbHVlPSciLmxhbmcoMjIpLiInPlxuIixjaGVja2JveCgicGVybWFuZW50IiwxLCRfQ09PS0lFWyJhZG1pbmVyX3Blcm1hbmVudCJdLGxhbmcoMjMpKS4iXG4iO31mdW5jdGlvbgpsb2dpbigkaGUsJEcpe2dsb2JhbCRmOyRmLT5xdWVyeSgiU0VUIHRpbWVfem9uZSA9ICIucShzdWJzdHJfcmVwbGFjZShAZGF0ZSgiTyIpLCI6IiwtMiwwKSkpO3JldHVybgp0cnVlO31mdW5jdGlvbgp0YWJsZU5hbWUoJHBiKXtyZXR1cm4KaCgkcGJbIkNvbW1lbnQiXSE9IiI/JHBiWyJDb21tZW50Il06JHBiWyJOYW1lIl0pO31mdW5jdGlvbgpmaWVsZE5hbWUoJGcsJHBhPTApe3JldHVybgpoKCRnWyJjb21tZW50Il0hPSIiPyRnWyJjb21tZW50Il06JGdbImZpZWxkIl0pO31mdW5jdGlvbgpzZWxlY3RMaW5rcygkcGIsJG89IiIpeyR3PSRwYlsiTmFtZSJdO2lmKGlzc2V0KCRvKSl7ZWNobyc8cCBjbGFzcz0idGFicyI+PGEgaHJlZj0iJy5oKE1FLidlZGl0PScudXJsZW5jb2RlKCR3KS4kbykuJyI+Jy5sYW5nKDI0KS4iPC9hPlxuIjt9ZWNobyI8YSBocmVmPSciLmgocmVtb3ZlX2Zyb21fdXJpKCJwYWdlIikpLiImYW1wO3BhZ2U9bGFzdCcgdGl0bGU9JyIubGFuZygyNSkuIic+Jmd0OyZndDs8L2E+XG4iO31mdW5jdGlvbgpmb3JlaWduS2V5cygkaCl7cmV0dXJuCmZvcmVpZ25fa2V5cygkaCk7fWZ1bmN0aW9uCmJhY2t3YXJkS2V5cygkaCwkRmQpeyRiPWFycmF5KCk7Zm9yZWFjaChnZXRfcm93cygiU0VMRUNUIFRBQkxFX05BTUUsIENPTlNUUkFJTlRfTkFNRSwgQ09MVU1OX05BTUUsIFJFRkVSRU5DRURfQ09MVU1OX05BTUUKRlJPTSBpbmZvcm1hdGlvbl9zY2hlbWEuS0VZX0NPTFVNTl9VU0FHRQpXSEVSRSBUQUJMRV9TQ0hFTUEgPSAiLnEoJHRoaXMtPmRhdGFiYXNlKCkpLiIKQU5EIFJFRkVSRU5DRURfVEFCTEVfU0NIRU1BID0gIi5xKCR0aGlzLT5kYXRhYmFzZSgpKS4iCkFORCBSRUZFUkVOQ0VEX1RBQkxFX05BTUUgPSAiLnEoJGgpLiIKT1JERVIgQlkgT1JESU5BTF9QT1NJVElPTiIsbnVsbCwiIilhcyRjKXskYlskY1siVEFCTEVfTkFNRSJdXVsia2V5cyJdWyRjWyJDT05TVFJBSU5UX05BTUUiXV1bJGNbIkNPTFVNTl9OQU1FIl1dPSRjWyJSRUZFUkVOQ0VEX0NPTFVNTl9OQU1FIl07fWZvcmVhY2goJGIKYXMkZD0+JGEpeyRlPSR0aGlzLT50YWJsZU5hbWUodGFibGVfc3RhdHVzKCRkKSk7aWYoJGUhPSIiKXskcmI9cHJlZ19xdW90ZSgkRmQpOyRpYT0iKDp8XFxzKi0pP1xccysiOyRiWyRkXVsibmFtZSJdPShwcmVnX21hdGNoKCIoXiRyYiRpYSguKyl8XiguKz8pJGlhJHJiXCQpaXUiLCRlLCRrKT8ka1syXS4ka1szXTokZSk7fWVsc2V7dW5zZXQoJGJbJGRdKTt9fXJldHVybiRiO31mdW5jdGlvbgpiYWNrd2FyZEtleXNQcmludCgkRWQsJGMpe2ZvcmVhY2goJEVkCmFzJGg9PiR0ZCl7Zm9yZWFjaCgkdGRbImtleXMiXWFzJFdhKXskdj1NRS4nc2VsZWN0PScudXJsZW5jb2RlKCRoKTskcT0wO2ZvcmVhY2goJFdhCmFzJHU9PiRhKXskdi49d2hlcmVfbGluaygkcSsrLCR1LCRjWyRhXSk7fWVjaG8iPGEgaHJlZj0nIi5oKCR2KS4iJz4iLmgoJHRkWyJuYW1lIl0pLiI8L2E+Ijskdj1NRS4nZWRpdD0nLnVybGVuY29kZSgkaCk7Zm9yZWFjaCgkV2EKYXMkdT0+JGEpeyR2Lj0iJnNldCIudXJsZW5jb2RlKCJbIi5icmFja2V0X2VzY2FwZSgkdSkuIl0iKS4iPSIudXJsZW5jb2RlKCRjWyRhXSk7fWVjaG8iPGEgaHJlZj0nIi5oKCR2KS4iJyB0aXRsZT0nIi5sYW5nKDI0KS4iJz4rPC9hPiAiO319fWZ1bmN0aW9uCnNlbGVjdFF1ZXJ5KCRqKXtyZXR1cm4iPCEtLVxuIi5zdHJfcmVwbGFjZSgiLS0iLCItLT48IS0tICIsJGopLiJcbi0tPlxuIjt9ZnVuY3Rpb24Kcm93RGVzY3JpcHRpb24oJGgpe2ZvcmVhY2goZmllbGRzKCRoKWFzJGcpe2lmKCRnWyJ0eXBlIl09PSJ2YXJjaGFyIil7cmV0dXJuCmlkZl9lc2NhcGUoJGdbImZpZWxkIl0pO319cmV0dXJuIiI7fWZ1bmN0aW9uCnJvd0Rlc2NyaXB0aW9ucygkeSwkRWIpeyRiPSR5O2ZvcmVhY2goJHlbMF1hcyRkPT4kYSl7Zm9yZWFjaCgoYXJyYXkpJEViWyRkXWFzJEFhKXtpZihjb3VudCgkQWFbInNvdXJjZSJdKT09MSl7JGJhPWlkZl9lc2NhcGUoJEFhWyJ0YXJnZXQiXVswXSk7JGU9JHRoaXMtPnJvd0Rlc2NyaXB0aW9uKCRBYVsidGFibGUiXSk7aWYoJGUhPSIiKXskb2Q9YXJyYXkoKTtmb3JlYWNoKCR5CmFzJGMpeyRvZFskY1skZF1dPWV4YWN0X3ZhbHVlKCRjWyRkXSk7fSRpYz0kdGhpcy0+X3ZhbHVlc1skQWFbInRhYmxlIl1dO2lmKCEkaWMpeyRpYz1nZXRfa2V5X3ZhbHMoIlNFTEVDVCAkYmEsICRlIEZST00gIi50YWJsZSgkQWFbInRhYmxlIl0pLiIgV0hFUkUgJGJhIElOICgiLmltcGxvZGUoIiwgIiwkb2QpLiIpIik7fWZvcmVhY2goJHkKYXMkTz0+JGMpe2lmKGlzc2V0KCRjWyRkXSkpeyRiWyRPXVskZF09KHN0cmluZykkaWNbJGNbJGRdXTt9fWJyZWFrO319fX1yZXR1cm4kYjt9ZnVuY3Rpb24Kc2VsZWN0VmFsKCRhLCR2LCRnKXskYj0oJGE9PSI8aT5OVUxMPC9pPiI/IiZuYnNwOyI6JGEpO2lmKGVyZWcoJ2Jsb2J8Ynl0ZWEnLCRnWyJ0eXBlIl0pJiYhaXNfdXRmOCgkYSkpeyRiPWxhbmcoMjYsc3RybGVuKCRhKSk7aWYoZXJlZygiXihHSUZ8XHhGRlx4RDhceEZGfFx4ODlceDUwXHg0RVx4NDdceDBEXHgwQVx4MUFceDBBKSIsJGEpKXskYj0iPGltZyBzcmM9JyR2JyBhbHQ9JyRiJz4iO319aWYobGlrZV9ib29sKCRnKSYmJGIhPSImbmJzcDsiKXskYj0nPGltZyBzcmM9IicuKCRhPyIiLmgocHJlZ19yZXBsYWNlKCJ+XFw/Lip+IiwiIixNRSkpLiI/ZmlsZT1wbHVzLmdpZiZhbXA7dmVyc2lvbj0zLjIuMiI6IiIuaChwcmVnX3JlcGxhY2UoIn5cXD8uKn4iLCIiLE1FKSkuIj9maWxlPWNyb3NzLmdpZiZhbXA7dmVyc2lvbj0zLjIuMiIpLiciIGFsdD0iJy5oKCRhKS4nIj4nO31pZigkdil7JGI9IjxhIGhyZWY9JyR2Jz4kYjwvYT4iO31pZighJHYmJiFsaWtlX2Jvb2woJGcpJiZlcmVnKCdpbnR8ZmxvYXR8ZG91YmxlfGRlY2ltYWwnLCRnWyJ0eXBlIl0pKXskYj0iPGRpdiBjbGFzcz0nbnVtYmVyJz4kYjwvZGl2PiI7fWVsc2VpZihlcmVnKCdkYXRlJywkZ1sidHlwZSJdKSl7JGI9IjxkaXYgY2xhc3M9J2RhdGV0aW1lJz4kYjwvZGl2PiI7fXJldHVybiRiO31mdW5jdGlvbgplZGl0VmFsKCRhLCRnKXtpZihlcmVnKCdkYXRlfHRpbWVzdGFtcCcsJGdbInR5cGUiXSkmJmlzc2V0KCRhKSl7cmV0dXJuCnByZWdfcmVwbGFjZSgnfl4oXFxkezJ9KFxcZCspKS0oMD8oXFxkKykpLSgwPyhcXGQrKSl+JyxsYW5nKDI3KSwkYSk7fXJldHVybihlcmVnKCJiaW5hcnkiLCRnWyJ0eXBlIl0pP3Jlc2V0KHVucGFjaygiSCoiLCRhKSk6JGEpO31mdW5jdGlvbgpzZWxlY3RDb2x1bW5zUHJpbnQoJEssJEope31mdW5jdGlvbgpzZWxlY3RTZWFyY2hQcmludCgkbSwkSiwkVSl7JG09KGFycmF5KSRfR0VUWyJ3aGVyZSJdO2VjaG8nPGZpZWxkc2V0PjxsZWdlbmQ+Jy5sYW5nKDI4KS4iPC9sZWdlbmQ+PGRpdj5cbiI7JGhjPWFycmF5KCk7Zm9yZWFjaCgkbQphcyRkPT4kYSl7JGhjWyRhWyJjb2wiXV09JGQ7fSRxPTA7JHQ9ZmllbGRzKCRfR0VUWyJzZWxlY3QiXSk7Zm9yZWFjaCgkdAphcyRlPT4kZyl7aWYoZXJlZygiZW51bSIsJGdbInR5cGUiXSkpeyROYT0kSlskZV07JGQ9JGhjWyRlXTskcS0tO2VjaG8iPGRpdj4iLmgoJE5hKS4iPGlucHV0IHR5cGU9J2hpZGRlbicgbmFtZT0nd2hlcmVbJHFdW2NvbF0nIHZhbHVlPSciLmgoJGUpLiInPjoiLGVudW1faW5wdXQoImNoZWNrYm94IiwiIG5hbWU9J3doZXJlWyRxXVt2YWxdW10nIiwkZywoYXJyYXkpJG1bJGRdWyJ2YWwiXSwoJGdbIm51bGwiXT8wOm51bGwpKSwiPC9kaXY+XG4iO3Vuc2V0KCRKWyRlXSk7fX1mb3JlYWNoKCRKCmFzJGU9PiROYSl7JElhPSR0aGlzLT5fZm9yZWlnbktleU9wdGlvbnMoJF9HRVRbInNlbGVjdCJdLCRlKTtpZigkSWEpe2lmKCR0WyRlXVsibnVsbCJdKXskSWFbMF09JygnLmxhbmcoNCkuJyknO30kZD0kaGNbJGVdOyRxLS07ZWNobyI8ZGl2PiIuaCgkTmEpLiI8aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSd3aGVyZVskcV1bY29sXScgdmFsdWU9JyIuaCgkZSkuIic+PGlucHV0IHR5cGU9J2hpZGRlbicgbmFtZT0nd2hlcmVbJHFdW29wXScgdmFsdWU9Jz0nPjogPHNlbGVjdCBuYW1lPSd3aGVyZVskcV1bdmFsXSc+Ii5vcHRpb25saXN0KCRJYSwkbVskZF1bInZhbCJdLHRydWUpLiI8L3NlbGVjdD48L2Rpdj5cbiI7dW5zZXQoJEpbJGVdKTt9fSRxPTA7Zm9yZWFjaCgkbQphcyRhKXtpZigoJGFbImNvbCJdPT0iInx8JEpbJGFbImNvbCJdXSkmJiIkYVtjb2xdJGFbdmFsXSIhPSIiKXtlY2hvIjxkaXY+PHNlbGVjdCBuYW1lPSd3aGVyZVskcV1bY29sXSc+PG9wdGlvbiB2YWx1ZT0nJz4oIi5sYW5nKDI5KS4iKSIub3B0aW9ubGlzdCgkSiwkYVsiY29sIl0sdHJ1ZSkuIjwvc2VsZWN0PiIsaHRtbF9zZWxlY3QoIndoZXJlWyRxXVtvcF0iLGFycmF5KC0xPT4iIikrJHRoaXMtPm9wZXJhdG9ycywkYVsib3AiXSksIjxpbnB1dCBuYW1lPSd3aGVyZVskcV1bdmFsXScgdmFsdWU9JyIuaCgkYVsidmFsIl0pLiInPjwvZGl2PlxuIjskcSsrO319ZWNobyI8ZGl2PjxzZWxlY3QgbmFtZT0nd2hlcmVbJHFdW2NvbF0nIG9uY2hhbmdlPSdzZWxlY3RBZGRSb3codGhpcyk7Jz48b3B0aW9uIHZhbHVlPScnPigiLmxhbmcoMjkpLiIpIi5vcHRpb25saXN0KCRKLG51bGwsdHJ1ZSkuIjwvc2VsZWN0PiIsaHRtbF9zZWxlY3QoIndoZXJlWyRxXVtvcF0iLGFycmF5KC0xPT4iIikrJHRoaXMtPm9wZXJhdG9ycyksIjxpbnB1dCBuYW1lPSd3aGVyZVskcV1bdmFsXSc+PC9kaXY+XG4iLCI8L2Rpdj48L2ZpZWxkc2V0PlxuIjt9ZnVuY3Rpb24Kc2VsZWN0T3JkZXJQcmludCgkcGEsJEosJFUpeyR2Yz1hcnJheSgpO2ZvcmVhY2goJFUKYXMkZD0+JFgpeyRwYT1hcnJheSgpO2ZvcmVhY2goJFhbImNvbHVtbnMiXWFzJGEpeyRwYVtdPSRKWyRhXTt9aWYoY291bnQoYXJyYXlfZmlsdGVyKCRwYSwnc3RybGVuJykpPjEmJiRkIT0iUFJJTUFSWSIpeyR2Y1skZF09aW1wbG9kZSgiLCAiLCRwYSk7fX1pZigkdmMpe2VjaG8nPGZpZWxkc2V0PjxsZWdlbmQ+Jy5sYW5nKDMwKS4iPC9sZWdlbmQ+PGRpdj4iLCI8c2VsZWN0IG5hbWU9J2luZGV4X29yZGVyJz4iLm9wdGlvbmxpc3QoYXJyYXkoIiI9PiIiKSskdmMsKCRfR0VUWyJvcmRlciJdWzBdIT0iIj8iIjokX0dFVFsiaW5kZXhfb3JkZXIiXSksdHJ1ZSkuIjwvc2VsZWN0PiIsIjwvZGl2PjwvZmllbGRzZXQ+XG4iO31pZigkX0dFVFsib3JkZXIiXSl7ZWNobyI8ZGl2IHN0eWxlPSdkaXNwbGF5OiBub25lOyc+Ii5oaWRkZW5fZmllbGRzKGFycmF5KCJvcmRlciI9PmFycmF5KDE9PnJlc2V0KCRfR0VUWyJvcmRlciJdKSksImRlc2MiPT4oJF9HRVRbImRlc2MiXT9hcnJheSgxPT4xKTphcnJheSgpKSwpKS4iPC9kaXY+XG4iO319ZnVuY3Rpb24Kc2VsZWN0TGltaXRQcmludCgkRil7ZWNobyI8ZmllbGRzZXQ+PGxlZ2VuZD4iLmxhbmcoMzEpLiI8L2xlZ2VuZD48ZGl2PiI7ZWNobwpodG1sX3NlbGVjdCgibGltaXQiLGFycmF5KCIiLCIzMCIsIjEwMCIpLCRGKSwiPC9kaXY+PC9maWVsZHNldD5cbiI7fWZ1bmN0aW9uCnNlbGVjdExlbmd0aFByaW50KCRmYil7fWZ1bmN0aW9uCnNlbGVjdEFjdGlvblByaW50KCl7ZWNobyI8ZmllbGRzZXQ+PGxlZ2VuZD4iLmxhbmcoMzIpLiI8L2xlZ2VuZD48ZGl2PiIsIjxpbnB1dCB0eXBlPSdzdWJtaXQnIHZhbHVlPSciLmxhbmcoMzMpLiInPiIsIjwvZGl2PjwvZmllbGRzZXQ+XG4iO31mdW5jdGlvbgpzZWxlY3RFbWFpbFByaW50KCRWYiwkSil7aWYoJFZiKXtwcmludF9maWVsZHNldCgiZW1haWwiLGxhbmcoMzQpLCRfUE9TVFsiZW1haWxfYXBwZW5kIl0pO2VjaG8iPHA+Ii5sYW5nKDM1KS4iOiA8aW5wdXQgbmFtZT0nZW1haWxfZnJvbScgdmFsdWU9JyIuaCgkX1BPU1Q/JF9QT1NUWyJlbWFpbF9mcm9tIl06JF9DT09LSUVbImFkbWluZXJfZW1haWwiXSkuIic+XG4iLGxhbmcoMzYpLiI6IDxpbnB1dCBuYW1lPSdlbWFpbF9zdWJqZWN0JyB2YWx1ZT0nIi5oKCRfUE9TVFsiZW1haWxfc3ViamVjdCJdKS4iJz5cbiIsIjxwPjx0ZXh0YXJlYSBuYW1lPSdlbWFpbF9tZXNzYWdlJyByb3dzPScxNScgY29scz0nNzUnPiIuaCgkX1BPU1RbImVtYWlsX21lc3NhZ2UiXS4oJF9QT1NUWyJlbWFpbF9hcHBlbmQiXT8neyQnLiIkX1BPU1RbZW1haWxfYWRkaXRpb25dfSI6IiIpKS4iPC90ZXh0YXJlYT48YnI+XG4iO2VjaG8KaHRtbF9zZWxlY3QoImVtYWlsX2FkZGl0aW9uIiwkSiwkX1BPU1RbImVtYWlsX2FkZGl0aW9uIl0pLiI8aW5wdXQgdHlwZT0nc3VibWl0JyBuYW1lPSdlbWFpbF9hcHBlbmQnIHZhbHVlPSciLmxhbmcoMzcpLiInPlxuIjtlY2hvIjxwPiIubGFuZygzOCkuIjogPGlucHV0IHR5cGU9J2ZpbGUnIG5hbWU9J2VtYWlsX2ZpbGVzW10nIG9uY2hhbmdlPVwidGhpcy5vbmNoYW5nZSA9IGZ1bmN0aW9uICgpIHsgfTsgdmFyIGVsID0gdGhpcy5jbG9uZU5vZGUodHJ1ZSk7IGVsLnZhbHVlID0gJyc7IHRoaXMucGFyZW50Tm9kZS5hcHBlbmRDaGlsZChlbCk7XCI+IiwiPHA+Ii4oY291bnQoJFZiKT09MT8nPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZW1haWxfZmllbGQiIHZhbHVlPSInLmgoa2V5KCRWYikpLiciPic6aHRtbF9zZWxlY3QoImVtYWlsX2ZpZWxkIiwkVmIpKSwiPGlucHV0IHR5cGU9J3N1Ym1pdCcgbmFtZT0nZW1haWwnIHZhbHVlPSciLmxhbmcoMzkpLiInIG9uY2xpY2s9XCJyZXR1cm4gdGhpcy5mb3JtWydkZWxldGUnXS5vbmNsaWNrKCk7XCI+XG4iLCI8L2Rpdj48L2ZpZWxkc2V0PlxuIjt9fWZ1bmN0aW9uCnNlbGVjdENvbHVtbnNQcm9jZXNzKCRKLCRVKXtyZXR1cm4KYXJyYXkoYXJyYXkoKSxhcnJheSgpKTt9ZnVuY3Rpb24Kc2VsZWN0U2VhcmNoUHJvY2VzcygkdCwkVSl7JGI9YXJyYXkoKTtmb3JlYWNoKChhcnJheSkkX0dFVFsid2hlcmUiXWFzJGQ9PiRtKXskTWE9JG1bImNvbCJdOyR2Yj0kbVsib3AiXTskYT0kbVsidmFsIl07aWYoKCRkPDA/IiI6JE1hKS4kYSE9IiIpeyREYj1hcnJheSgpO2ZvcmVhY2goKCRNYSE9IiI/YXJyYXkoJE1hPT4kdFskTWFdKTokdClhcyRlPT4kZyl7aWYoJE1hIT0iInx8aXNfbnVtZXJpYygkYSl8fCFlcmVnKCdpbnR8ZmxvYXR8ZG91YmxlfGRlY2ltYWwnLCRnWyJ0eXBlIl0pKXskZT1pZGZfZXNjYXBlKCRlKTtpZigkTWEhPSIiJiYkZ1sidHlwZSJdPT0iZW51bSIpeyREYltdPShpbl9hcnJheSgwLCRhKT8iJGUgSVMgTlVMTCBPUiAiOiIiKS4iJGUgSU4gKCIuaW1wbG9kZSgiLCAiLGFycmF5X21hcCgnaW50dmFsJywkYSkpLiIpIjt9ZWxzZXskbmQ9ZXJlZygnY2hhcnx0ZXh0fGVudW18c2V0JywkZ1sidHlwZSJdKTskbj0kdGhpcy0+cHJvY2Vzc0lucHV0KCRnLCghJHZiJiYkbmQmJmVyZWcoJ15bXiVdKyQnLCRhKT8iJSRhJSI6JGEpKTskRGJbXT0kZS4oJG49PSJOVUxMIj8iIElTIi4oJHZiPT0iPj0iPyIgTk9UIjoiIikuIiAkbiI6KGluX2FycmF5KCR2YiwkdGhpcy0+b3BlcmF0b3JzKXx8JHZiPT0iPSI/IiAkdmIgJG4iOigkbmQ/IiBMSUtFICRuIjoiIElOICgiLnN0cl9yZXBsYWNlKCIsIiwiJywgJyIsJG4pLiIpIikpKTtpZigkZDwwJiYkYT09IjAiKXskRGJbXT0iJGUgSVMgTlVMTCI7fX19fSRiW109KCREYj8iKCIuaW1wbG9kZSgiIE9SICIsJERiKS4iKSI6IjAiKTt9fXJldHVybiRiO31mdW5jdGlvbgpzZWxlY3RPcmRlclByb2Nlc3MoJHQsJFUpeyRQYj0kX0dFVFsiaW5kZXhfb3JkZXIiXTtpZigkUGIhPSIiKXt1bnNldCgkX0dFVFsib3JkZXIiXVsxXSk7fWlmKCRfR0VUWyJvcmRlciJdKXtyZXR1cm4KYXJyYXkoaWRmX2VzY2FwZShyZXNldCgkX0dFVFsib3JkZXIiXSkpLigkX0dFVFsiZGVzYyJdPyIgREVTQyI6IiIpKTt9Zm9yZWFjaCgoJFBiIT0iIj9hcnJheSgkVVskUGJdKTokVSlhcyRYKXtpZigkUGIhPSIifHwkWFsidHlwZSJdPT0iSU5ERVgiKXskTmE9ZmFsc2U7Zm9yZWFjaCgkWFsiY29sdW1ucyJdYXMkYSl7aWYoZXJlZygnZGF0ZXx0aW1lc3RhbXAnLCR0WyRhXVsidHlwZSJdKSl7JE5hPXRydWU7YnJlYWs7fX0kYj1hcnJheSgpO2ZvcmVhY2goJFhbImNvbHVtbnMiXWFzJGEpeyRiW109aWRmX2VzY2FwZSgkYSkuKCROYT8iIERFU0MiOiIiKTt9cmV0dXJuJGI7fX1yZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24Kc2VsZWN0TGltaXRQcm9jZXNzKCl7cmV0dXJuKGlzc2V0KCRfR0VUWyJsaW1pdCJdKT8kX0dFVFsibGltaXQiXToiMzAiKTt9ZnVuY3Rpb24Kc2VsZWN0TGVuZ3RoUHJvY2Vzcygpe3JldHVybiIxMDAiO31mdW5jdGlvbgpzZWxlY3RFbWFpbFByb2Nlc3MoJG0sJEViKXtpZigkX1BPU1RbImVtYWlsX2FwcGVuZCJdKXtyZXR1cm4KdHJ1ZTt9aWYoJF9QT1NUWyJlbWFpbCJdKXskc2Q9MDtpZigkX1BPU1RbImFsbCJdfHwkX1BPU1RbImNoZWNrIl0peyRnPWlkZl9lc2NhcGUoJF9QT1NUWyJlbWFpbF9maWVsZCJdKTskS2I9JF9QT1NUWyJlbWFpbF9zdWJqZWN0Il07JHdhPSRfUE9TVFsiZW1haWxfbWVzc2FnZSJdO3ByZWdfbWF0Y2hfYWxsKCd+XFx7XFwkKFthLXowLTlfXSspXFx9fmknLCIkS2IuJHdhIiwkZGEpOyR5PWdldF9yb3dzKCJTRUxFQ1QgRElTVElOQ1QgJGciLigkZGFbMV0/IiwgIi5pbXBsb2RlKCIsICIsYXJyYXlfbWFwKCdpZGZfZXNjYXBlJyxhcnJheV91bmlxdWUoJGRhWzFdKSkpOiIiKS4iIEZST00gIi50YWJsZSgkX0dFVFsic2VsZWN0Il0pLiIgV0hFUkUgJGcgSVMgTk9UIE5VTEwgQU5EICRnICE9ICcnIi4oJG0/IiBBTkQgIi5pbXBsb2RlKCIgQU5EICIsJG0pOiIiKS4oJF9QT1NUWyJhbGwiXT8iIjoiIEFORCAoKCIuaW1wbG9kZSgiKSBPUiAoIixhcnJheV9tYXAoJ3doZXJlX2NoZWNrJywoYXJyYXkpJF9QT1NUWyJjaGVjayJdKSkuIikpIikpOyR0PWZpZWxkcygkX0dFVFsic2VsZWN0Il0pO2ZvcmVhY2goJHRoaXMtPnJvd0Rlc2NyaXB0aW9ucygkeSwkRWIpYXMkYyl7JG9jPWFycmF5KCd7XFwnPT4neycpO2ZvcmVhY2goJGRhWzFdYXMkYSl7JG9jWyd7JCcuIiRhfSJdPSR0aGlzLT5lZGl0VmFsKCRjWyRhXSwkdFskYV0pO30kbWI9JGNbJF9QT1NUWyJlbWFpbF9maWVsZCJdXTtpZihpc19tYWlsKCRtYikmJnNlbmRfbWFpbCgkbWIsc3RydHIoJEtiLCRvYyksc3RydHIoJHdhLCRvYyksJF9QT1NUWyJlbWFpbF9mcm9tIl0sJF9GSUxFU1siZW1haWxfZmlsZXMiXSkpeyRzZCsrO319fWNvb2tpZSgiYWRtaW5lcl9lbWFpbCIsJF9QT1NUWyJlbWFpbF9mcm9tIl0pO3JlZGlyZWN0KHJlbW92ZV9mcm9tX3VyaSgpLGxhbmcoNDAsJHNkKSk7fXJldHVybgpmYWxzZTt9ZnVuY3Rpb24KbWVzc2FnZVF1ZXJ5KCRqKXtyZXR1cm4iPCEtLVxuIi5zdHJfcmVwbGFjZSgiLS0iLCItLT48IS0tICIsJGopLiJcbi0tPiI7fWZ1bmN0aW9uCmVkaXRGdW5jdGlvbnMoJGcpeyRiPWFycmF5KCk7aWYoJGdbIm51bGwiXSYmZXJlZygnYmxvYicsJGdbInR5cGUiXSkpeyRiWyJOVUxMIl09bGFuZyg0KTt9JGJbIiJdPSgkZ1sibnVsbCJdfHwkZ1siYXV0b19pbmNyZW1lbnQiXXx8bGlrZV9ib29sKCRnKT8iIjoiKiIpO2lmKGVyZWcoJ2RhdGV8dGltZScsJGdbInR5cGUiXSkpeyRiWyJub3ciXT1sYW5nKDQxKTt9aWYoZXJlZ2koJ18obWQ1fHNoYTEpJCcsJGdbImZpZWxkIl0sJGspKXskYltdPXN0cnRvbG93ZXIoJGtbMV0pO31yZXR1cm4kYjt9ZnVuY3Rpb24KZWRpdElucHV0KCRoLCRnLCRoYSwkbil7aWYoJGdbInR5cGUiXT09ImVudW0iKXtyZXR1cm4oaXNzZXQoJF9HRVRbInNlbGVjdCJdKT8iPGxhYmVsPjxpbnB1dCB0eXBlPSdyYWRpbyckaGEgdmFsdWU9Jy0xJyBjaGVja2VkPjxpPiIubGFuZyg1KS4iPC9pPjwvbGFiZWw+ICI6IiIpLmVudW1faW5wdXQoInJhZGlvIiwkaGEsJGcsKCRufHxpc3NldCgkX0dFVFsic2VsZWN0Il0pPyRuOjApLCgkZ1sibnVsbCJdPyIiOm51bGwpKTt9JElhPSR0aGlzLT5fZm9yZWlnbktleU9wdGlvbnMoJGgsJGdbImZpZWxkIl0pO2lmKCRJYSl7cmV0dXJuIjxzZWxlY3QkaGE+Ii5vcHRpb25saXN0KCRJYSwkbix0cnVlKS4iPC9zZWxlY3Q+Ijt9aWYobGlrZV9ib29sKCRnKSl7cmV0dXJuJzxpbnB1dCB0eXBlPSJjaGVja2JveCIgdmFsdWU9IicuaCgkbj8kbjoxKS4nIicuKCRuPycgY2hlY2tlZCc6JycpLiIkaGE+Ijt9JGViPSIiO2lmKGVyZWcoJ3RpbWUnLCRnWyJ0eXBlIl0pKXskZWI9bGFuZyg0Mik7fWlmKGVyZWcoJ2RhdGV8dGltZXN0YW1wJywkZ1sidHlwZSJdKSl7JGViPWxhbmcoNDMpLigkZWI/IiBbJGViXSI6IiIpO31pZigkZWIpe3JldHVybiI8aW5wdXQgdmFsdWU9JyIuaCgkbikuIickaGE+ICgkZWIpIjt9aWYoZXJlZ2koJ18obWQ1fHNoYTEpJCcsJGdbImZpZWxkIl0pKXtyZXR1cm4iPGlucHV0IHR5cGU9J3Bhc3N3b3JkJyB2YWx1ZT0nIi5oKCRuKS4iJyRoYT4iO31yZXR1cm4nJzt9ZnVuY3Rpb24KcHJvY2Vzc0lucHV0KCRnLCRuLCRMPSIiKXtpZigkTD09Im5vdyIpe3JldHVybiIkTCgpIjt9JGI9JG47aWYoZXJlZygnZGF0ZXx0aW1lc3RhbXAnLCRnWyJ0eXBlIl0pJiZwcmVnX21hdGNoKCcoXicuc3RyX3JlcGxhY2UoJ1xcJDEnLCcoP1A8cDE+XFxkKiknLHByZWdfcmVwbGFjZSgnfihcXFxcXFwkKFsyLTZdKSl+JywnKD9QPHBcXDI+XFxkezEsMn0pJyxwcmVnX3F1b3RlKGxhbmcoMjcpKSkpLicoLiopKScsJG4sJGspKXskYj0oJGtbInAxIl0hPSIiPyRrWyJwMSJdOigka1sicDIiXSE9IiI/KCRrWyJwMiJdPDcwPzIwOjE5KS4ka1sicDIiXTpnbWRhdGUoIlkiKSkpLiItJGtbcDNdJGtbcDRdLSRrW3A1XSRrW3A2XSIuZW5kKCRrKTt9JGI9KCRnWyJ0eXBlIl09PSJiaXQiJiZlcmVnKCdeWzAtOV0rJCcsJG4pPyRiOnEoJGIpKTtpZighZXJlZygnY2hhcnx0ZXh0JywkZ1sidHlwZSJdKSYmIWxpa2VfYm9vbCgkZykmJiRuPT0iIil7JGI9Ik5VTEwiO31lbHNlaWYoZXJlZygnXihtZDV8c2hhMSkkJywkTCkpeyRiPSIkTCgkYikiO31pZihlcmVnKCJiaW5hcnkiLCRnWyJ0eXBlIl0pKXskYj0idW5oZXgoJGIpIjt9cmV0dXJuJGI7fWZ1bmN0aW9uCmR1bXBPdXRwdXQoKXtyZXR1cm4KYXJyYXkoKTt9ZnVuY3Rpb24KZHVtcEZvcm1hdCgpe3JldHVybgphcnJheSgnY3N2Jz0+J0NTViwnLCdjc3Y7Jz0+J0NTVjsnLCd0c3YnPT4nVFNWJyk7fWZ1bmN0aW9uCmR1bXBUYWJsZSgpe2VjaG8iXHhlZlx4YmJceGJmIjt9ZnVuY3Rpb24KZHVtcERhdGEoJGgsJHRiLCRqKXtnbG9iYWwkZjskaT0kZi0+cXVlcnkoJGosMSk7aWYoJGkpe3doaWxlKCRjPSRpLT5mZXRjaF9hc3NvYygpKXtpZigkdGI9PSJ0YWJsZSIpe2R1bXBfY3N2KGFycmF5X2tleXMoJGMpKTskdGI9IklOU0VSVCI7fWR1bXBfY3N2KCRjKTt9fX1mdW5jdGlvbgpkdW1wSGVhZGVycygkWmIsJGJkPWZhbHNlKXskUGQ9ImNzdiI7aGVhZGVyKCJDb250ZW50LVR5cGU6IHRleHQvY3N2OyBjaGFyc2V0PXV0Zi04Iik7cmV0dXJuJFBkO31mdW5jdGlvbgpob21lcGFnZSgpe3JldHVybgp0cnVlO31mdW5jdGlvbgpuYXZpZ2F0aW9uKCR3Yil7Z2xvYmFsJFFiLCR4YTtlY2hvJzxoMT4KPGEgaHJlZj0iaHR0cDovL3d3dy5hZG1pbmVyLm9yZy8iIGlkPSJoMSI+JywkdGhpcy0+bmFtZSgpLCc8L2E+CjxzcGFuIGNsYXNzPSJ2ZXJzaW9uIj4nLCRRYiwnPC9zcGFuPgo8YSBocmVmPSJodHRwOi8vd3d3LmFkbWluZXIub3JnL2VkaXRvci8jZG93bmxvYWQiIGlkPSJ2ZXJzaW9uIj4nLCh2ZXJzaW9uX2NvbXBhcmUoJFFiLCRfQ09PS0lFWyJhZG1pbmVyX3ZlcnNpb24iXSk8MD9oKCRfQ09PS0lFWyJhZG1pbmVyX3ZlcnNpb24iXSk6IiIpLCc8L2E+CjwvaDE+Cic7aWYoJHdiPT0iYXV0aCIpeyR6YT10cnVlO2ZvcmVhY2goKGFycmF5KSRfU0VTU0lPTlsicHdkcyJdWyJzZXJ2ZXIiXVsiIl1hcyRFPT4kRyl7aWYoaXNzZXQoJEcpKXtpZigkemEpe2VjaG8iPHAgb25jbGljaz0nZXZlbnRTdG9wKGV2ZW50KTsnPlxuIjskemE9ZmFsc2U7fWVjaG8iPGEgaHJlZj0nIi5oKGF1dGhfdXJsKCJzZXJ2ZXIiLCIiLCRFKSkuIic+Ii4oJEUhPSIiP2goJEUpOiI8aT4iLmxhbmcoNCkuIjwvaT4iKS4iPC9hPjxicj5cbiI7fX19ZWxzZXtlY2hvJzxmb3JtIGFjdGlvbj0iIiBtZXRob2Q9InBvc3QiPgo8cCBjbGFzcz0ibG9nb3V0Ij4KPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ibG9nb3V0IiB2YWx1ZT0iJyxsYW5nKDQ0KSwnIiBvbmNsaWNrPSJldmVudFN0b3AoZXZlbnQpOyI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InRva2VuIiB2YWx1ZT0iJywkeGEsJyI+CjwvcD4KPC9mb3JtPgonO2lmKCR3YiE9ImRiIiYmJHdiIT0ibnMiKXskRD10YWJsZV9zdGF0dXMoKTtpZighJEQpe2VjaG8iPHAgY2xhc3M9J21lc3NhZ2UnPiIubGFuZyg2KS4iXG4iO31lbHNleyR0aGlzLT50YWJsZXNQcmludCgkRCk7fX19fWZ1bmN0aW9uCnRhYmxlc1ByaW50KCR6KXtlY2hvIjxwIGlkPSd0YWJsZXMnPlxuIjtmb3JlYWNoKCR6CmFzJGMpeyRlPSR0aGlzLT50YWJsZU5hbWUoJGMpO2lmKGlzc2V0KCRjWyJFbmdpbmUiXSkmJiRlIT0iIil7ZWNobyI8YSBocmVmPSciLmgoTUUpLidzZWxlY3Q9Jy51cmxlbmNvZGUoJGNbIk5hbWUiXSkuIiciLmJvbGQoJF9HRVRbInNlbGVjdCJdPT0kY1siTmFtZSJdKS4iPiRlPC9hPjxicj5cbiI7fX19ZnVuY3Rpb24KX2ZvcmVpZ25LZXlPcHRpb25zKCRoLCR1KXskRWI9Y29sdW1uX2ZvcmVpZ25fa2V5cygkaCk7Zm9yZWFjaCgoYXJyYXkpJEViWyR1XWFzJEFhKXtpZihjb3VudCgkQWFbInNvdXJjZSJdKT09MSl7JGJhPWlkZl9lc2NhcGUoJEFhWyJ0YXJnZXQiXVswXSk7JGU9JHRoaXMtPnJvd0Rlc2NyaXB0aW9uKCRBYVsidGFibGUiXSk7aWYoJGUhPSIiKXskYj0mJHRoaXMtPl92YWx1ZXNbJEFhWyJ0YWJsZSJdXTtpZighaXNzZXQoJGIpKXskRD10YWJsZV9zdGF0dXMoJEFhWyJ0YWJsZSJdKTskYj0oJERbIlJvd3MiXT4xMDAwP2FycmF5KCk6YXJyYXkoIiI9PiIiKStnZXRfa2V5X3ZhbHMoIlNFTEVDVCAkYmEsICRlIEZST00gIi50YWJsZSgkQWFbInRhYmxlIl0pLiIgT1JERVIgQlkgMiIpKTt9cmV0dXJuJGI7fX19fX0kbD0oZnVuY3Rpb25fZXhpc3RzKCdhZG1pbmVyX29iamVjdCcpP2FkbWluZXJfb2JqZWN0KCk6bmV3CkFkbWluZXIpO2Z1bmN0aW9uCnBhZ2VfaGVhZGVyKCR2ZCwkcD0iIiwkQ2I9YXJyYXkoKSwkd2Q9IiIpe2dsb2JhbCRmYSwkbCwkZiwkdGE7aGVhZGVyKCJDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD11dGYtOCIpOyRsLT5oZWFkZXJzKCk7JHFkPSR2ZC4oJHdkIT0iIj8iOiAiLmgoJHdkKToiIik7JGNkPXN0cmlwX3RhZ3MoJHFkLihTRVJWRVIhPSIiJiZTRVJWRVIhPSJsb2NhbGhvc3QiP2goIiAtICIuU0VSVkVSKToiIikuIiAtICIuJGwtPm5hbWUoKSk7aWYoaXNfYWpheCgpKXtoZWFkZXIoIlgtQUpBWC1UaXRsZTogIi5yYXd1cmxlbmNvZGUoJGNkKSk7fWVsc2V7ZWNobyc8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMS8vRU4iPgo8aHRtbCBsYW5nPSInLCRmYSwnIiBkaXI9IicsbGFuZyg0NSksJyI+CjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4KPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1TY3JpcHQtVHlwZSIgY29udGVudD0idGV4dC9qYXZhc2NyaXB0Ij4KPG1ldGEgbmFtZT0icm9ib3RzIiBjb250ZW50PSJub2luZGV4Ij4KPHRpdGxlPicsJGNkLCc8L3RpdGxlPgo8bGluayByZWw9InNob3J0Y3V0IGljb24iIHR5cGU9ImltYWdlL3gtaWNvbiIgaHJlZj0iJyxoKHByZWdfcmVwbGFjZSgiflxcPy4qfiIsIiIsTUUpKS4iP2ZpbGU9ZmF2aWNvbi5pY28mYW1wO3ZlcnNpb249My4yLjIiLCciIGlkPSJmYXZpY29uIj4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iJyxoKHByZWdfcmVwbGFjZSgiflxcPy4qfiIsIiIsTUUpKS4iP2ZpbGU9ZGVmYXVsdC5jc3MmYW1wO3ZlcnNpb249My4yLjIiLCciPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CnZhciBhcmVZb3VTdXJlID0gXCcnLGxhbmcoNDYpLCdcJzsKPC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IicsaChwcmVnX3JlcGxhY2UoIn5cXD8uKn4iLCIiLE1FKSkuIj9maWxlPWZ1bmN0aW9ucy5qcyZhbXA7dmVyc2lvbj0zLjIuMiIsJyI+PC9zY3JpcHQ+Cic7aWYoJGwtPmhlYWQoKSYmZmlsZV9leGlzdHMoImFkbWluZXIuY3NzIikpe2VjaG8nPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iYWRtaW5lci5jc3MiPgonO31lY2hvJwo8Ym9keSBjbGFzcz0iJyxsYW5nKDQ1KSwnIG5vanMiIG9uY2xpY2s9InJldHVybiBib2R5Q2xpY2soZXZlbnQsIFwnJyxqc19lc2NhcGUoREIpLCdcJywgXCcnLGpzX2VzY2FwZSgkX0dFVFsibnMiXSksJ1wnKTsiIG9ua2V5ZG93bj0iYm9keUtleWRvd24oZXZlbnQpOyIgb25sb2FkPSJib2R5TG9hZChcJycsKGlzX29iamVjdCgkZik/c3Vic3RyKCRmLT5zZXJ2ZXJfaW5mbywwLDMpOiIiKSwnXCcpOycsKGlzc2V0KCRfQ09PS0lFWyJhZG1pbmVyX3ZlcnNpb24iXSk/IiI6IiB2ZXJpZnlWZXJzaW9uKCk7Iik7Pz4iPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CmRvY3VtZW50LmJvZHkuY2xhc3NOYW1lID0gZG9jdW1lbnQuYm9keS5jbGFzc05hbWUucmVwbGFjZSgvKF58XHMpbm9qcyhcc3wkKS8sICckMWpzJDInKTsKPC9zY3JpcHQ+Cgo8ZGl2IGlkPSJjb250ZW50Ij4KPD9waHAKfWlmKGlzc2V0KCRDYikpeyR2PXN1YnN0cihwcmVnX3JlcGxhY2UoJ34odXNlcm5hbWV8ZGJ8bnMpPVteJl0qJn4nLCcnLE1FKSwwLC0xKTtlY2hvJzxwIGlkPSJicmVhZGNydW1iIj48YSBocmVmPSInLigkdj9oKCR2KToiLiIpLiciPicuJHRhW0RSSVZFUl0uJzwvYT4gJnJhcXVvOyAnOyR2PXN1YnN0cihwcmVnX3JlcGxhY2UoJ34oZGJ8bnMpPVteJl0qJn4nLCcnLE1FKSwwLC0xKTskXz0oU0VSVkVSIT0iIj9oKFNFUlZFUik6bGFuZyg0NykpO2lmKCRDYj09PWZhbHNlKXtlY2hvIiRfXG4iO31lbHNle2VjaG8iPGEgaHJlZj0nIi4oJHY/aCgkdik6Ii4iKS4iJz4kXzwvYT4gJnJhcXVvOyAiO2lmKCRfR0VUWyJucyJdIT0iInx8KERCIT0iIiYmaXNfYXJyYXkoJENiKSkpe2VjaG8nPGEgaHJlZj0iJy5oKCR2LiImZGI9Ii51cmxlbmNvZGUoREIpLihzdXBwb3J0KCJzY2hlbWUiKT8iJm5zPSI6IiIpKS4nIj4nLmgoREIpLic8L2E+ICZyYXF1bzsgJzt9aWYoaXNfYXJyYXkoJENiKSl7aWYoJF9HRVRbIm5zIl0hPSIiKXtlY2hvJzxhIGhyZWY9IicuaChzdWJzdHIoTUUsMCwtMSkpLiciPicuaCgkX0dFVFsibnMiXSkuJzwvYT4gJnJhcXVvOyAnO31mb3JlYWNoKCRDYgphcyRkPT4kYSl7JE5hPShpc19hcnJheSgkYSk/JGFbMV06JGEpO2lmKCROYSE9IiIpe2VjaG8nPGEgaHJlZj0iJy5oKE1FLiIkZD0iKS51cmxlbmNvZGUoaXNfYXJyYXkoJGEpPyRhWzBdOiRhKS4nIj4nLmgoJE5hKS4nPC9hPiAmcmFxdW87ICc7fX19ZWNobyIkdmRcbiI7fX1lY2hvIjxzcGFuIGlkPSdsb2FkZXInPjwvc3Bhbj5cbiIsIjxoMj4kcWQ8L2gyPlxuIjtyZXN0YXJ0X3Nlc3Npb24oKTskSWM9cHJlZ19yZXBsYWNlKCd+XlteP10qficsJycsJF9TRVJWRVJbIlJFUVVFU1RfVVJJIl0pOyRSYz0kX1NFU1NJT05bIm1lc3NhZ2VzIl1bJEljXTtpZigkUmMpe2VjaG8iPGRpdiBjbGFzcz0nbWVzc2FnZSc+Ii5pbXBsb2RlKCI8L2Rpdj5cbjxkaXYgY2xhc3M9J21lc3NhZ2UnPiIsJFJjKS4iPC9kaXY+XG4iO3Vuc2V0KCRfU0VTU0lPTlsibWVzc2FnZXMiXVskSWNdKTt9JFA9JmdldF9zZXNzaW9uKCJkYnMiKTtpZihEQiE9IiImJiRQJiYhaW5fYXJyYXkoREIsJFAsdHJ1ZSkpeyRQPW51bGw7fWlmKCRwKXtlY2hvIjxkaXYgY2xhc3M9J2Vycm9yJz4kcDwvZGl2PlxuIjt9ZGVmaW5lKCJQQUdFX0hFQURFUiIsMSk7fWZ1bmN0aW9uCnBhZ2VfZm9vdGVyKCR3Yj0iIil7Z2xvYmFsJGw7aWYoIWlzX2FqYXgoKSl7ZWNobyc8L2Rpdj4KCic7c3dpdGNoX2xhbmcoKTtlY2hvJzxkaXYgaWQ9Im1lbnUiPgonOyRsLT5uYXZpZ2F0aW9uKCR3Yik7ZWNobyc8L2Rpdj4KJzt9fWZ1bmN0aW9uCmludDMyKCRPKXt3aGlsZSgkTz49MjE0NzQ4MzY0OCl7JE8tPTQyOTQ5NjcyOTY7fXdoaWxlKCRPPD0tMjE0NzQ4MzY0OSl7JE8rPTQyOTQ5NjcyOTY7fXJldHVybihpbnQpJE87fWZ1bmN0aW9uCmxvbmcyc3RyKCRzLCRxYyl7JGFiPScnO2ZvcmVhY2goJHMKYXMkYSl7JGFiLj1wYWNrKCdWJywkYSk7fWlmKCRxYyl7cmV0dXJuCnN1YnN0cigkYWIsMCxlbmQoJHMpKTt9cmV0dXJuJGFiO31mdW5jdGlvbgpzdHIybG9uZygkYWIsJHFjKXskcz1hcnJheV92YWx1ZXModW5wYWNrKCdWKicsc3RyX3BhZCgkYWIsNCpjZWlsKHN0cmxlbigkYWIpLzQpLCJcMCIpKSk7aWYoJHFjKXskc1tdPXN0cmxlbigkYWIpO31yZXR1cm4kczt9ZnVuY3Rpb24KeHh0ZWFfbXgoJGxhLCRtYSwkcmEsJHNhKXtyZXR1cm4KaW50MzIoKCgkbGE+PjUmMHg3RkZGRkZGKV4kbWE8PDIpKygoJG1hPj4zJjB4MUZGRkZGRkYpXiRsYTw8NCkpXmludDMyKCgkcmFeJG1hKSsoJHNhXiRsYSkpO31mdW5jdGlvbgplbmNyeXB0X3N0cmluZygkQWIsJGQpe2lmKCRBYj09IiIpe3JldHVybiIiO30kZD1hcnJheV92YWx1ZXModW5wYWNrKCJWKiIscGFjaygiSCoiLG1kNSgkZCkpKSk7JHM9c3RyMmxvbmcoJEFiLHRydWUpOyRPPWNvdW50KCRzKS0xOyRsYT0kc1skT107JG1hPSRzWzBdOyRSYj1mbG9vcig2KzUyLygkTysxKSk7JHJhPTA7d2hpbGUoJFJiLS0+MCl7JHJhPWludDMyKCRyYSsweDlFMzc3OUI5KTskX2I9JHJhPj4yJjM7Zm9yKCRqYT0wOyRqYTwkTzskamErKyl7JG1hPSRzWyRqYSsxXTskY2I9eHh0ZWFfbXgoJGxhLCRtYSwkcmEsJGRbJGphJjNeJF9iXSk7JGxhPWludDMyKCRzWyRqYV0rJGNiKTskc1skamFdPSRsYTt9JG1hPSRzWzBdOyRjYj14eHRlYV9teCgkbGEsJG1hLCRyYSwkZFskamEmM14kX2JdKTskbGE9aW50MzIoJHNbJE9dKyRjYik7JHNbJE9dPSRsYTt9cmV0dXJuCmxvbmcyc3RyKCRzLGZhbHNlKTt9ZnVuY3Rpb24KZGVjcnlwdF9zdHJpbmcoJEFiLCRkKXtpZigkQWI9PSIiKXtyZXR1cm4iIjt9JGQ9YXJyYXlfdmFsdWVzKHVucGFjaygiVioiLHBhY2soIkgqIixtZDUoJGQpKSkpOyRzPXN0cjJsb25nKCRBYixmYWxzZSk7JE89Y291bnQoJHMpLTE7JGxhPSRzWyRPXTskbWE9JHNbMF07JFJiPWZsb29yKDYrNTIvKCRPKzEpKTskcmE9aW50MzIoJFJiKjB4OUUzNzc5QjkpO3doaWxlKCRyYSl7JF9iPSRyYT4+MiYzO2ZvcigkamE9JE87JGphPjA7JGphLS0peyRsYT0kc1skamEtMV07JGNiPXh4dGVhX214KCRsYSwkbWEsJHJhLCRkWyRqYSYzXiRfYl0pOyRtYT1pbnQzMigkc1skamFdLSRjYik7JHNbJGphXT0kbWE7fSRsYT0kc1skT107JGNiPXh4dGVhX214KCRsYSwkbWEsJHJhLCRkWyRqYSYzXiRfYl0pOyRtYT1pbnQzMigkc1swXS0kY2IpOyRzWzBdPSRtYTskcmE9aW50MzIoJHJhLTB4OUUzNzc5QjkpO31yZXR1cm4KbG9uZzJzdHIoJHMsdHJ1ZSk7fSRmPScnOyR4YT0kX1NFU1NJT05bInRva2VuIl07aWYoISRfU0VTU0lPTlsidG9rZW4iXSl7JF9TRVNTSU9OWyJ0b2tlbiJdPXJhbmQoMSwxZTYpO30kUmE9YXJyYXkoKTtpZigkX0NPT0tJRVsiYWRtaW5lcl9wZXJtYW5lbnQiXSl7Zm9yZWFjaChleHBsb2RlKCIgIiwkX0NPT0tJRVsiYWRtaW5lcl9wZXJtYW5lbnQiXSlhcyRhKXtsaXN0KCRkKT1leHBsb2RlKCI6IiwkYSk7JFJhWyRkXT0kYTt9fWlmKGlzc2V0KCRfUE9TVFsic2VydmVyIl0pKXtzZXNzaW9uX3JlZ2VuZXJhdGVfaWQoKTskX1NFU1NJT05bInB3ZHMiXVskX1BPU1RbImRyaXZlciJdXVskX1BPU1RbInNlcnZlciJdXVskX1BPU1RbInVzZXJuYW1lIl1dPSRfUE9TVFsicGFzc3dvcmQiXTtpZigkX1BPU1RbInBlcm1hbmVudCJdKXskZD1iYXNlNjRfZW5jb2RlKCRfUE9TVFsiZHJpdmVyIl0pLiItIi5iYXNlNjRfZW5jb2RlKCRfUE9TVFsic2VydmVyIl0pLiItIi5iYXNlNjRfZW5jb2RlKCRfUE9TVFsidXNlcm5hbWUiXSk7JExiPSRsLT5wZXJtYW5lbnRMb2dpbigpOyRSYVskZF09IiRkOiIuYmFzZTY0X2VuY29kZSgkTGI/ZW5jcnlwdF9zdHJpbmcoJF9QT1NUWyJwYXNzd29yZCJdLCRMYik6IiIpO2Nvb2tpZSgiYWRtaW5lcl9wZXJtYW5lbnQiLGltcGxvZGUoIiAiLCRSYSkpO31pZihjb3VudCgkX1BPU1QpPT0oJF9QT1NUWyJwZXJtYW5lbnQiXT81OjQpfHxEUklWRVIhPSRfUE9TVFsiZHJpdmVyIl18fFNFUlZFUiE9JF9QT1NUWyJzZXJ2ZXIiXXx8JF9HRVRbInVzZXJuYW1lIl0hPT0kX1BPU1RbInVzZXJuYW1lIl0pe3JlZGlyZWN0KGF1dGhfdXJsKCRfUE9TVFsiZHJpdmVyIl0sJF9QT1NUWyJzZXJ2ZXIiXSwkX1BPU1RbInVzZXJuYW1lIl0pKTt9fWVsc2VpZigkX1BPU1RbImxvZ291dCJdKXtpZigkeGEmJiRfUE9TVFsidG9rZW4iXSE9JHhhKXtwYWdlX2hlYWRlcihsYW5nKDQ0KSxsYW5nKDQ4KSk7cGFnZV9mb290ZXIoImRiIik7ZXhpdDt9ZWxzZXtmb3JlYWNoKGFycmF5KCJwd2RzIiwiZGJzIiwicXVlcmllcyIpYXMkZCl7c2V0X3Nlc3Npb24oJGQsbnVsbCk7fSRkPWJhc2U2NF9lbmNvZGUoRFJJVkVSKS4iLSIuYmFzZTY0X2VuY29kZShTRVJWRVIpLiItIi5iYXNlNjRfZW5jb2RlKCRfR0VUWyJ1c2VybmFtZSJdKTtpZigkUmFbJGRdKXt1bnNldCgkUmFbJGRdKTtjb29raWUoImFkbWluZXJfcGVybWFuZW50IixpbXBsb2RlKCIgIiwkUmEpKTt9cmVkaXJlY3Qoc3Vic3RyKHByZWdfcmVwbGFjZSgnfih1c2VybmFtZXxkYnxucyk9W14mXSomficsJycsTUUpLDAsLTEpLGxhbmcoNDkpKTt9fWVsc2VpZigkUmEmJiEkX1NFU1NJT05bInB3ZHMiXSl7c2Vzc2lvbl9yZWdlbmVyYXRlX2lkKCk7JExiPSRsLT5wZXJtYW5lbnRMb2dpbigpO2ZvcmVhY2goJFJhCmFzJGQ9PiRhKXtsaXN0KCwkWWQpPWV4cGxvZGUoIjoiLCRhKTtsaXN0KCRXYiwkXywkRSk9YXJyYXlfbWFwKCdiYXNlNjRfZGVjb2RlJyxleHBsb2RlKCItIiwkZCkpOyRfU0VTU0lPTlsicHdkcyJdWyRXYl1bJF9dWyRFXT1kZWNyeXB0X3N0cmluZyhiYXNlNjRfZGVjb2RlKCRZZCksJExiKTt9fWZ1bmN0aW9uCmF1dGhfZXJyb3IoJE1jPW51bGwpe2dsb2JhbCRmLCRsLCR4YTskT2I9c2Vzc2lvbl9uYW1lKCk7JHA9IiI7aWYoISRfQ09PS0lFWyRPYl0mJiRfR0VUWyRPYl0mJmluaV9ib29sKCJzZXNzaW9uLnVzZV9vbmx5X2Nvb2tpZXMiKSl7JHA9bGFuZyg1MCk7fWVsc2VpZihpc3NldCgkX0dFVFsidXNlcm5hbWUiXSkpe2lmKCgkX0NPT0tJRVskT2JdfHwkX0dFVFskT2JdKSYmISR4YSl7JHA9bGFuZyg1MSk7fWVsc2V7JEc9JmdldF9zZXNzaW9uKCJwd2RzIik7aWYoaXNzZXQoJEcpKXskcD1oKCRNYz8kTWMtPmdldE1lc3NhZ2UoKTooaXNfc3RyaW5nKCRmKT8kZjpsYW5nKDUyKSkpOyRHPW51bGw7fX19cGFnZV9oZWFkZXIobGFuZygyMiksJHAsbnVsbCk7ZWNobyI8Zm9ybSBhY3Rpb249JycgbWV0aG9kPSdwb3N0JyBvbmNsaWNrPSdldmVudFN0b3AoZXZlbnQpOyc+XG4iOyRsLT5sb2dpbkZvcm0oKTtlY2hvIjxkaXY+IjtoaWRkZW5fZmllbGRzKCRfUE9TVCxhcnJheSgiZHJpdmVyIiwic2VydmVyIiwidXNlcm5hbWUiLCJwYXNzd29yZCIsInBlcm1hbmVudCIpKTtlY2hvIjwvZGl2PlxuIiwiPC9mb3JtPlxuIjtwYWdlX2Zvb3RlcigiYXV0aCIpO31pZihpc3NldCgkX0dFVFsidXNlcm5hbWUiXSkpe2lmKCFjbGFzc19leGlzdHMoIk1pbl9EQiIpKXt1bnNldCgkX1NFU1NJT05bInB3ZHMiXVtEUklWRVJdKTtwYWdlX2hlYWRlcihsYW5nKDUzKSxsYW5nKDU0LGltcGxvZGUoIiwgIiwkSmIpKSxmYWxzZSk7cGFnZV9mb290ZXIoImF1dGgiKTtleGl0O30kZj1jb25uZWN0KCk7fWlmKGlzX3N0cmluZygkZil8fCEkbC0+bG9naW4oJF9HRVRbInVzZXJuYW1lIl0sZ2V0X3Nlc3Npb24oInB3ZHMiKSkpe2F1dGhfZXJyb3IoKTtleGl0O30keGE9JF9TRVNTSU9OWyJ0b2tlbiJdO2lmKGlzc2V0KCRfUE9TVFsic2VydmVyIl0pJiYkX1BPU1RbInRva2VuIl0peyRfUE9TVFsidG9rZW4iXT0keGE7fSRwPSgkX1BPU1Q/KCRfUE9TVFsidG9rZW4iXT09JHhhPyIiOmxhbmcoNDgpKTooJF9TRVJWRVJbIlJFUVVFU1RfTUVUSE9EIl0hPSJQT1NUIj8iIjpsYW5nKDU1LCcicG9zdF9tYXhfc2l6ZSInKSkpOyRmLT5zZWxlY3RfZGIoJGwtPmRhdGFiYXNlKCkpO2Z1bmN0aW9uCmVtYWlsX2hlYWRlcigkZWUpe3JldHVybiI9P1VURi04P0I/Ii5iYXNlNjRfZW5jb2RlKCRlZSkuIj89Ijt9ZnVuY3Rpb24Kc2VuZF9tYWlsKCRtYiwkS2IsJHdhLCRoYj0iIiwkTmI9YXJyYXkoImVycm9yIj0+YXJyYXkoKSkpeyRjYT0oc3RybmNhc2VjbXAoUEhQX09TLCJ3aW4iLDMpPyJcbiI6IlxyXG4iKTskd2E9c3RyX3JlcGxhY2UoIlxuIiwkY2Esd29yZHdyYXAoc3RyX3JlcGxhY2UoIlxyIiwiIiwiJHdhXG4iKSkpOyRNYj11bmlxaWQoImJvdW5kYXJ5Iik7JFliPSIiO2ZvcmVhY2goJE5iWyJlcnJvciJdYXMkZD0+JGEpe2lmKCEkYSl7JFliLj0iLS0kTWIkY2EiLiJDb250ZW50LVR5cGU6ICIuc3RyX3JlcGxhY2UoIlxuIiwiIiwkTmJbInR5cGUiXVskZF0pLiRjYS4iQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9XCIiLnByZWdfcmVwbGFjZSgnflsiXFxuXX4nLCcnLCROYlsibmFtZSJdWyRkXSkuIlwiJGNhIi4iQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogYmFzZTY0JGNhJGNhIi5jaHVua19zcGxpdChiYXNlNjRfZW5jb2RlKGZpbGVfZ2V0X2NvbnRlbnRzKCROYlsidG1wX25hbWUiXVskZF0pKSw3NiwkY2EpLiRjYTt9fSRGYz0iIjskWGI9IkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD11dGYtOCRjYSIuIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQiO2lmKCRZYil7JFliLj0iLS0kTWItLSRjYSI7JEZjPSItLSRNYiRjYSRYYiRjYSRjYSI7JFhiPSJDb250ZW50LVR5cGU6IG11bHRpcGFydC9taXhlZDsgYm91bmRhcnk9XCIkTWJcIiI7fSRYYi49JGNhLiJNSU1FLVZlcnNpb246IDEuMCRjYSIuIlgtTWFpbGVyOiBBZG1pbmVyIEVkaXRvciIuKCRoYj8kY2EuIkZyb206ICIuc3RyX3JlcGxhY2UoIlxuIiwiIiwkaGIpOiIiKTtyZXR1cm4KbWFpbCgkbWIsZW1haWxfaGVhZGVyKCRLYiksJEZjLiR3YS4kWWIsJFhiKTt9ZnVuY3Rpb24KbGlrZV9ib29sKCRnKXtyZXR1cm4KZXJlZygiYm9vbHwodGlueWludHxiaXQpXFwoMVxcKSIsJGdbImZ1bGxfdHlwZSJdKTt9c2Vzc2lvbl9jYWNoZV9saW1pdGVyKCIiKTtpZighaW5pX2Jvb2woInNlc3Npb24udXNlX2Nvb2tpZXMiKXx8QGluaV9zZXQoInNlc3Npb24udXNlX2Nvb2tpZXMiLGZhbHNlKSE9PWZhbHNlKXtzZXNzaW9uX3dyaXRlX2Nsb3NlKCk7fSRTYj1hcnJheSgiUkVTVFJJQ1QiLCJDQVNDQURFIiwiU0VUIE5VTEwiLCJOTyBBQ1RJT04iKTskdGFbRFJJVkVSXT1sYW5nKDIyKTtpZihpc3NldCgkX0dFVFsic2VsZWN0Il0pJiYoJF9QT1NUWyJlZGl0Il18fCRfUE9TVFsiY2xvbmUiXSkmJiEkX1BPU1RbInNhdmUiXSl7JF9HRVRbImVkaXQiXT0kX0dFVFsic2VsZWN0Il07fWlmKGlzc2V0KCRfR0VUWyJkb3dubG9hZCJdKSl7JHc9JF9HRVRbImRvd25sb2FkIl07aGVhZGVyKCJDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSIpO2hlYWRlcigiQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9Ii5mcmllbmRseV91cmwoIiR3LSIuaW1wbG9kZSgiXyIsJF9HRVRbIndoZXJlIl0pKS4iLiIuZnJpZW5kbHlfdXJsKCRfR0VUWyJmaWVsZCJdKSk7ZWNobyRmLT5yZXN1bHQoIlNFTEVDVCIubGltaXQoaWRmX2VzY2FwZSgkX0dFVFsiZmllbGQiXSkuIiBGUk9NICIudGFibGUoJHcpLCIgV0hFUkUgIi53aGVyZSgkX0dFVCksMSkpO2V4aXQ7fWVsc2VpZihpc3NldCgkX0dFVFsiZWRpdCJdKSl7JHc9JF9HRVRbImVkaXQiXTskbT0oaXNzZXQoJF9HRVRbInNlbGVjdCJdKT8oY291bnQoJF9QT1NUWyJjaGVjayJdKT09MT93aGVyZV9jaGVjaygkX1BPU1RbImNoZWNrIl1bMF0pOiIiKTp3aGVyZSgkX0dFVCkpOyRhYT0oaXNzZXQoJF9HRVRbInNlbGVjdCJdKT8kX1BPU1RbImVkaXQiXTokbSk7JHQ9ZmllbGRzKCR3KTtmb3JlYWNoKCR0CmFzJGU9PiRnKXtpZighaXNzZXQoJGdbInByaXZpbGVnZXMiXVskYWE/InVwZGF0ZSI6Imluc2VydCJdKXx8JGwtPmZpZWxkTmFtZSgkZyk9PSIiKXt1bnNldCgkdFskZV0pO319aWYoJF9QT1NUJiYhJHAmJiFpc3NldCgkX0dFVFsic2VsZWN0Il0pKXskWT0kX1BPU1RbInJlZmVyZXIiXTtpZigkX1BPU1RbImluc2VydCJdKXskWT0oJGFhP251bGw6JF9TRVJWRVJbIlJFUVVFU1RfVVJJIl0pO31lbHNlaWYoIWVyZWcoJ14uKyZzZWxlY3Q9LiskJywkWSkpeyRZPU1FLiJzZWxlY3Q9Ii51cmxlbmNvZGUoJHcpO31pZihpc3NldCgkX1BPU1RbImRlbGV0ZSJdKSl7cXVlcnlfcmVkaXJlY3QoIkRFTEVURSIubGltaXQxKCJGUk9NICIudGFibGUoJHcpLCIgV0hFUkUgJG0iKSwkWSxsYW5nKDU2KSk7fWVsc2V7JG89YXJyYXkoKTtmb3JlYWNoKCR0CmFzJGU9PiRnKXskYT1wcm9jZXNzX2lucHV0KCRnKTtpZigkYSE9PWZhbHNlJiYkYSE9PW51bGwpeyRvW2lkZl9lc2NhcGUoJGUpXT0oJGFhPyJcbiIuaWRmX2VzY2FwZSgkZSkuIiA9ICRhIjokYSk7fX1pZigkYWEpe2lmKCEkbyl7cmVkaXJlY3QoJFkpO31xdWVyeV9yZWRpcmVjdCgiVVBEQVRFIi5saW1pdDEodGFibGUoJHcpLiIgU0VUIi5pbXBsb2RlKCIsIiwkbyksIlxuV0hFUkUgJG0iKSwkWSxsYW5nKDU3KSk7fWVsc2V7JGk9aW5zZXJ0X2ludG8oJHcsJG8pOyRKYz0oJGk/bGFzdF9pZCgpOjApO3F1ZXJpZXNfcmVkaXJlY3QoJFksbGFuZyg1OCwoJEpjPyIgJEpjIjoiIikpLCRpKTt9fX0keGI9JGwtPnRhYmxlTmFtZSh0YWJsZV9zdGF0dXMoJHcpKTtwYWdlX2hlYWRlcigoJGFhP2xhbmcoNTkpOmxhbmcoMzcpKSwkcCxhcnJheSgic2VsZWN0Ij0+YXJyYXkoJHcsJHhiKSksJHhiKTskYz1udWxsO2lmKCRfUE9TVFsic2F2ZSJdKXskYz0oYXJyYXkpJF9QT1NUWyJmaWVsZHMiXTt9ZWxzZWlmKCRtKXskSz1hcnJheSgpO2ZvcmVhY2goJHQKYXMkZT0+JGcpe2lmKGlzc2V0KCRnWyJwcml2aWxlZ2VzIl1bInNlbGVjdCJdKSl7JEtbXT0oJF9QT1NUWyJjbG9uZSJdJiYkZ1siYXV0b19pbmNyZW1lbnQiXT8iJycgQVMgIjooZXJlZygiZW51bXxzZXQiLCRnWyJ0eXBlIl0pPyIxKiIuaWRmX2VzY2FwZSgkZSkuIiBBUyAiOiIiKSkuaWRmX2VzY2FwZSgkZSk7fX0kYz1hcnJheSgpO2lmKCRLKXskeT1nZXRfcm93cygiU0VMRUNUIi5saW1pdChpbXBsb2RlKCIsICIsJEspLiIgRlJPTSAiLnRhYmxlKCR3KSwiIFdIRVJFICRtIiwoaXNzZXQoJF9HRVRbInNlbGVjdCJdKT8yOjEpKSk7JGM9KGlzc2V0KCRfR0VUWyJzZWxlY3QiXSkmJmNvdW50KCR5KSE9MT9udWxsOnJlc2V0KCR5KSk7fX1lY2hvJwo8Zm9ybSBhY3Rpb249IiIgbWV0aG9kPSJwb3N0IiBlbmN0eXBlPSJtdWx0aXBhcnQvZm9ybS1kYXRhIiBpZD0iZm9ybSI+Cic7aWYoJHQpe2VjaG8iPHRhYmxlIGNlbGxzcGFjaW5nPScwJyBvbmtleWRvd249J3JldHVybiBlZGl0aW5nS2V5ZG93bihldmVudCk7Jz5cbiI7Zm9yZWFjaCgkdAphcyRlPT4kZyl7ZWNobyI8dHI+PHRoPiIuJGwtPmZpZWxkTmFtZSgkZyk7JGtiPSRfR0VUWyJzZXQiXVticmFja2V0X2VzY2FwZSgkZSldOyRuPShpc3NldCgkYyk/KCRjWyRlXSE9IiImJmVyZWcoImVudW18c2V0IiwkZ1sidHlwZSJdKT8rJGNbJGVdOiRjWyRlXSk6KCEkYWEmJiRnWyJhdXRvX2luY3JlbWVudCJdPyIiOihpc3NldCgkX0dFVFsic2VsZWN0Il0pP2ZhbHNlOihpc3NldCgka2IpPyRrYjokZ1siZGVmYXVsdCJdKSkpKTtpZighJF9QT1NUWyJzYXZlIl0mJmlzX3N0cmluZygkbikpeyRuPSRsLT5lZGl0VmFsKCRuLCRnKTt9JEw9KCRfUE9TVFsic2F2ZSJdPyhzdHJpbmcpJF9QT1NUWyJmdW5jdGlvbiJdWyRlXTooJG0mJiRnWyJvbl91cGRhdGUiXT09IkNVUlJFTlRfVElNRVNUQU1QIj8ibm93IjooJG49PT1mYWxzZT9udWxsOihpc3NldCgkbik/Jyc6J05VTEwnKSkpKTtpZigkZ1sidHlwZSJdPT0idGltZXN0YW1wIiYmJG49PSJDVVJSRU5UX1RJTUVTVEFNUCIpeyRuPSIiOyRMPSJub3ciO31pbnB1dCgkZywkbiwkTCk7ZWNobyJcbiI7fWVjaG8iPC90YWJsZT5cbiI7fWVjaG8nPHA+Cic7aWYoJHQpe2VjaG8iPGlucHV0IHR5cGU9J3N1Ym1pdCcgdmFsdWU9JyIubGFuZyg2MCkuIic+XG4iO2lmKCFpc3NldCgkX0dFVFsic2VsZWN0Il0pKXtlY2hvJzxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9Imluc2VydCIgdmFsdWU9IicuKCRhYT9sYW5nKDYxKTpsYW5nKDYyKSkuIlwiPlxuIjt9fWVjaG8oJGFhPyI8aW5wdXQgdHlwZT0nc3VibWl0JyBuYW1lPSdkZWxldGUnIHZhbHVlPSciLmxhbmcoNjMpLiInIG9uY2xpY2s9XCJyZXR1cm4gY29uZmlybSgnIi5sYW5nKDApLiInKTtcIj5cbiI6KCRfUE9TVHx8ISR0PyIiOiI8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Zvcm0nKS5nZXRFbGVtZW50c0J5VGFnTmFtZSgndGQnKVsxXS5maXJzdENoaWxkLmZvY3VzKCk7PC9zY3JpcHQ+XG4iKSk7aWYoaXNzZXQoJF9HRVRbInNlbGVjdCJdKSl7aGlkZGVuX2ZpZWxkcyhhcnJheSgiY2hlY2siPT4oYXJyYXkpJF9QT1NUWyJjaGVjayJdLCJjbG9uZSI9PiRfUE9TVFsiY2xvbmUiXSwiYWxsIj0+JF9QT1NUWyJhbGwiXSkpO31lY2hvJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InJlZmVyZXIiIHZhbHVlPSInLGgoaXNzZXQoJF9QT1NUWyJyZWZlcmVyIl0pPyRfUE9TVFsicmVmZXJlciJdOiRfU0VSVkVSWyJIVFRQX1JFRkVSRVIiXSksJyI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNhdmUiIHZhbHVlPSIxIj4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0idG9rZW4iIHZhbHVlPSInLCR4YSwnIj4KPC9mb3JtPgonO31lbHNlaWYoaXNzZXQoJF9HRVRbInNlbGVjdCJdKSl7JHc9JF9HRVRbInNlbGVjdCJdOyREPXRhYmxlX3N0YXR1cygkdyk7JFU9aW5kZXhlcygkdyk7JHQ9ZmllbGRzKCR3KTskeWI9Y29sdW1uX2ZvcmVpZ25fa2V5cygkdyk7aWYoJERbIk9pZCJdPT0idCIpeyRVW109YXJyYXkoInR5cGUiPT4iUFJJTUFSWSIsImNvbHVtbnMiPT5hcnJheSgib2lkIikpO30kZGQ9YXJyYXkoKTskSj1hcnJheSgpOyRmYj1udWxsO2ZvcmVhY2goJHQKYXMkZD0+JGcpeyRlPSRsLT5maWVsZE5hbWUoJGcpO2lmKGlzc2V0KCRnWyJwcml2aWxlZ2VzIl1bInNlbGVjdCJdKSYmJGUhPSIiKXskSlskZF09aHRtbF9lbnRpdHlfZGVjb2RlKHN0cmlwX3RhZ3MoJGUpKTtpZihlcmVnKCd0ZXh0fGxvYicsJGdbInR5cGUiXSkpeyRmYj0kbC0+c2VsZWN0TGVuZ3RoUHJvY2VzcygpO319JGRkKz0kZ1sicHJpdmlsZWdlcyJdO31saXN0KCRLLCRuYSk9JGwtPnNlbGVjdENvbHVtbnNQcm9jZXNzKCRKLCRVKTskbT0kbC0+c2VsZWN0U2VhcmNoUHJvY2VzcygkdCwkVSk7JHBhPSRsLT5zZWxlY3RPcmRlclByb2Nlc3MoJHQsJFUpOyRGPSRsLT5zZWxlY3RMaW1pdFByb2Nlc3MoKTskaGI9KCRLP2ltcGxvZGUoIiwgIiwkSyk6KCREWyJPaWQiXT09InQiPyJvaWQsICI6IiIpLiIqIikuIlxuRlJPTSAiLnRhYmxlKCR3KTskcmM9KCRuYSYmY291bnQoJG5hKTxjb3VudCgkSyk/IlxuR1JPVVAgQlkgIi5pbXBsb2RlKCIsICIsJG5hKToiIikuKCRwYT8iXG5PUkRFUiBCWSAiLmltcGxvZGUoIiwgIiwkcGEpOiIiKTtpZigkX0dFVFsidmFsIl0mJmlzX2FqYXgoKSl7aGVhZGVyKCJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9dXRmLTgiKTtmb3JlYWNoKCRfR0VUWyJ2YWwiXWFzJEZhPT4kYyl7ZWNobyRmLT5yZXN1bHQoIlNFTEVDVCIubGltaXQoaWRmX2VzY2FwZShrZXkoJGMpKS4iIEZST00gIi50YWJsZSgkdyksIiBXSEVSRSAiLndoZXJlX2NoZWNrKCRGYSkuKCRtPyIgQU5EICIuaW1wbG9kZSgiIEFORCAiLCRtKToiIikuKCRwYT8iIE9SREVSIEJZICIuaW1wbG9kZSgiLCAiLCRwYSk6IiIpLDEpKTt9ZXhpdDt9aWYoJF9QT1NUJiYhJHApeyRlZD0iKCIuaW1wbG9kZSgiKSBPUiAoIixhcnJheV9tYXAoJ3doZXJlX2NoZWNrJywoYXJyYXkpJF9QT1NUWyJjaGVjayJdKSkuIikiOyR1YT0kZWM9bnVsbDtmb3JlYWNoKCRVCmFzJFgpe2lmKCRYWyJ0eXBlIl09PSJQUklNQVJZIil7JHVhPWFycmF5X2ZsaXAoJFhbImNvbHVtbnMiXSk7JGVjPSgkSz8kdWE6YXJyYXkoKSk7YnJlYWs7fX1mb3JlYWNoKCRLCmFzJGQ9PiRhKXskYT0kX0dFVFsiY29sdW1ucyJdWyRkXTtpZighJGFbImZ1biJdKXt1bnNldCgkZWNbJGFbImNvbCJdXSk7fX1pZigkX1BPU1RbImV4cG9ydCJdKXtkdW1wX2hlYWRlcnMoJHcpOyRsLT5kdW1wVGFibGUoJHcsIiIpO2lmKCFpc19hcnJheSgkX1BPU1RbImNoZWNrIl0pfHwkZWM9PT1hcnJheSgpKXskZGI9JG07aWYoaXNfYXJyYXkoJF9QT1NUWyJjaGVjayJdKSl7JGRiW109IigkZWQpIjt9JGo9IlNFTEVDVCAkaGIiLigkZGI/IlxuV0hFUkUgIi5pbXBsb2RlKCIgQU5EICIsJGRiKToiIikuJHJjO31lbHNleyRoZD1hcnJheSgpO2ZvcmVhY2goJF9QT1NUWyJjaGVjayJdYXMkYSl7JGhkW109IihTRUxFQ1QiLmxpbWl0KCRoYiwiXG5XSEVSRSAiLigkbT9pbXBsb2RlKCIgQU5EICIsJG0pLiIgQU5EICI6IiIpLndoZXJlX2NoZWNrKCRhKS4kcmMsMSkuIikiO30kaj1pbXBsb2RlKCIgVU5JT04gQUxMICIsJGhkKTt9JGwtPmR1bXBEYXRhKCR3LCJ0YWJsZSIsJGopO2V4aXQ7fWlmKCEkbC0+c2VsZWN0RW1haWxQcm9jZXNzKCRtLCR5Yikpe2lmKCRfUE9TVFsic2F2ZSJdfHwkX1BPU1RbImRlbGV0ZSJdKXskaT10cnVlOyRPYT0wOyRqPXRhYmxlKCR3KTskbz1hcnJheSgpO2lmKCEkX1BPU1RbImRlbGV0ZSJdKXtmb3JlYWNoKCRKCmFzJGU9PiRhKXskYT1wcm9jZXNzX2lucHV0KCR0WyRlXSk7aWYoJGEhPT1udWxsKXtpZigkX1BPU1RbImNsb25lIl0peyRvW2lkZl9lc2NhcGUoJGUpXT0oJGEhPT1mYWxzZT8kYTppZGZfZXNjYXBlKCRlKSk7fWVsc2VpZigkYSE9PWZhbHNlKXskb1tdPWlkZl9lc2NhcGUoJGUpLiIgPSAkYSI7fX19JGouPSgkX1BPU1RbImNsb25lIl0/IiAoIi5pbXBsb2RlKCIsICIsYXJyYXlfa2V5cygkbykpLiIpXG5TRUxFQ1QgIi5pbXBsb2RlKCIsICIsJG8pLiJcbkZST00gIi50YWJsZSgkdyk6IiBTRVRcbiIuaW1wbG9kZSgiLFxuIiwkbykpO31pZigkX1BPU1RbImRlbGV0ZSJdfHwkbyl7JGNjPSJVUERBVEUiO2lmKCRfUE9TVFsiZGVsZXRlIl0peyRjYz0iREVMRVRFIjskaj0iRlJPTSAkaiI7fWlmKCRfUE9TVFsiY2xvbmUiXSl7JGNjPSJJTlNFUlQiOyRqPSJJTlRPICRqIjt9aWYoJF9QT1NUWyJhbGwiXXx8KCRlYz09PWFycmF5KCkmJiRfUE9TVFsiY2hlY2siXSl8fGNvdW50KCRuYSk8Y291bnQoJEspKXskaT1xdWVyaWVzKCRjYy4iICRqIi4oJF9QT1NUWyJhbGwiXT8oJG0/IlxuV0hFUkUgIi5pbXBsb2RlKCIgQU5EICIsJG0pOiIiKToiXG5XSEVSRSAkZWQiKSk7JE9hPSRmLT5hZmZlY3RlZF9yb3dzO31lbHNle2ZvcmVhY2goKGFycmF5KSRfUE9TVFsiY2hlY2siXWFzJGEpeyRpPXF1ZXJpZXMoJGNjLmxpbWl0MSgkaiwiXG5XSEVSRSAiLndoZXJlX2NoZWNrKCRhKSkpO2lmKCEkaSl7YnJlYWs7fSRPYSs9JGYtPmFmZmVjdGVkX3Jvd3M7fX19cXVlcmllc19yZWRpcmVjdChyZW1vdmVfZnJvbV91cmkoInBhZ2UiKSxsYW5nKDY0LCRPYSksJGkpO31lbHNlaWYoISRfUE9TVFsiaW1wb3J0Il0pe2lmKCEkX1BPU1RbInZhbCJdKXskcD1sYW5nKDY1KTt9ZWxzZXskaT10cnVlOyRPYT0wO2ZvcmVhY2goJF9QT1NUWyJ2YWwiXWFzJEZhPT4kYyl7JG89YXJyYXkoKTtmb3JlYWNoKCRjCmFzJGQ9PiRhKXskZD1icmFja2V0X2VzY2FwZSgkZCwxKTskb1tdPWlkZl9lc2NhcGUoJGQpLiIgPSAiLihlcmVnKCdjaGFyfHRleHQnLCR0WyRkXVsidHlwZSJdKXx8JGEhPSIiPyRsLT5wcm9jZXNzSW5wdXQoJHRbJGRdLCRhKToiTlVMTCIpO30kaj10YWJsZSgkdykuIiBTRVQgIi5pbXBsb2RlKCIsICIsJG8pOyRkYj0iIFdIRVJFICIud2hlcmVfY2hlY2soJEZhKS4oJG0/IiBBTkQgIi5pbXBsb2RlKCIgQU5EICIsJG0pOiIiKTskaT1xdWVyaWVzKCJVUERBVEUiLihjb3VudCgkbmEpPGNvdW50KCRLKT8iICRqJGRiIjpsaW1pdDEoJGosJGRiKSkpO2lmKCEkaSl7YnJlYWs7fSRPYSs9JGYtPmFmZmVjdGVkX3Jvd3M7fXF1ZXJpZXNfcmVkaXJlY3QocmVtb3ZlX2Zyb21fdXJpKCksbGFuZyg2NCwkT2EpLCRpKTt9fWVsc2VpZihpc19zdHJpbmcoJHFhPWdldF9maWxlKCJjc3ZfZmlsZSIsdHJ1ZSkpKXskaT10cnVlOyRXYT1hcnJheV9rZXlzKCR0KTtwcmVnX21hdGNoX2FsbCgnfig/PiJbXiJdKiJ8W14iXFxyXFxuXSspK34nLCRxYSwkZGEpOyRPYT1jb3VudCgkZGFbMF0pO2JlZ2luKCk7JGlhPSgkX1BPU1RbInNlcGFyYXRvciJdPT0iY3N2Ij8iLCI6KCRfUE9TVFsic2VwYXJhdG9yIl09PSJ0c3YiPyJcdCI6IjsiKSk7Zm9yZWFjaCgkZGFbMF1hcyRkPT4kYSl7cHJlZ19tYXRjaF9hbGwoIn4oKFwiW15cIl0qXCIpK3xbXiRpYV0qKSRpYX4iLCRhLiRpYSwkcGMpO2lmKCEkZCYmIWFycmF5X2RpZmYoJHBjWzFdLCRXYSkpeyRXYT0kcGNbMV07JE9hLS07fWVsc2V7JG89YXJyYXkoKTtmb3JlYWNoKCRwY1sxXWFzJHE9PiRNYSl7JG9baWRmX2VzY2FwZSgkV2FbJHFdKV09KCRNYT09IiImJiR0WyRXYVskcV1dWyJudWxsIl0/Ik5VTEwiOnEoc3RyX3JlcGxhY2UoJyIiJywnIicscHJlZ19yZXBsYWNlKCd+XiJ8IiR+JywnJywkTWEpKSkpO30kaT1pbnNlcnRfdXBkYXRlKCR3LCRvLCR1YSk7aWYoISRpKXticmVhazt9fX1pZigkaSl7cXVlcmllcygiQ09NTUlUIik7fXF1ZXJpZXNfcmVkaXJlY3QocmVtb3ZlX2Zyb21fdXJpKCJwYWdlIiksbGFuZyg2NiwkT2EpLCRpKTtxdWVyaWVzKCJST0xMQkFDSyIpO31lbHNleyRwPXVwbG9hZF9lcnJvcigkcWEpO319fSR4Yj0kbC0+dGFibGVOYW1lKCREKTtwYWdlX2hlYWRlcihsYW5nKDMzKS4iOiAkeGIiLCRwKTtzZXNzaW9uX3dyaXRlX2Nsb3NlKCk7JG89bnVsbDtpZihpc3NldCgkZGRbImluc2VydCJdKSl7JG89IiI7Zm9yZWFjaCgoYXJyYXkpJF9HRVRbIndoZXJlIl1hcyRhKXtpZihjb3VudCgkeWJbJGFbImNvbCJdXSk9PTEmJigkYVsib3AiXT09Ij0ifHwoISRhWyJvcCJdJiYhZXJlZygnW18lXScsJGFbInZhbCJdKSkpKXskby49IiZzZXQiLnVybGVuY29kZSgiWyIuYnJhY2tldF9lc2NhcGUoJGFbImNvbCJdKS4iXSIpLiI9Ii51cmxlbmNvZGUoJGFbInZhbCJdKTt9fX0kbC0+c2VsZWN0TGlua3MoJEQsJG8pO2lmKCEkSil7ZWNobyI8cCBjbGFzcz0nZXJyb3InPiIubGFuZyg2NykuKCR0PyIuIjoiOiAiLmVycm9yKCkpLiJcbiI7fWVsc2V7ZWNobyI8Zm9ybSBhY3Rpb249JycgaWQ9J2Zvcm0nPlxuIiwiPGRpdiBzdHlsZT0nZGlzcGxheTogbm9uZTsnPiI7aGlkZGVuX2ZpZWxkc19nZXQoKTtlY2hvKERCIT0iIj8nPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZGIiIHZhbHVlPSInLmgoREIpLiciPicuKGlzc2V0KCRfR0VUWyJucyJdKT8nPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ibnMiIHZhbHVlPSInLmgoJF9HRVRbIm5zIl0pLiciPic6IiIpOiIiKTtlY2hvJzxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNlbGVjdCIgdmFsdWU9IicuaCgkdykuJyI+JywiPC9kaXY+XG4iOyRsLT5zZWxlY3RDb2x1bW5zUHJpbnQoJEssJEopOyRsLT5zZWxlY3RTZWFyY2hQcmludCgkbSwkSiwkVSk7JGwtPnNlbGVjdE9yZGVyUHJpbnQoJHBhLCRKLCRVKTskbC0+c2VsZWN0TGltaXRQcmludCgkRik7JGwtPnNlbGVjdExlbmd0aFByaW50KCRmYik7JGwtPnNlbGVjdEFjdGlvblByaW50KCRmYik7ZWNobyI8L2Zvcm0+XG4iOyRRPSRfR0VUWyJwYWdlIl07aWYoJFE9PSJsYXN0Iil7JEJhPSRmLT5yZXN1bHQoIlNFTEVDVCBDT1VOVCgqKSBGUk9NICIudGFibGUoJHcpLigkbT8iIFdIRVJFICIuaW1wbG9kZSgiIEFORCAiLCRtKToiIikpOyRRPWZsb29yKG1heCgwLCRCYS0xKS8kRik7fSRqPSJTRUxFQ1QiLmxpbWl0KCgrJEYmJiRuYSYmY291bnQoJG5hKTxjb3VudCgkSykmJiR2YT09InNxbCI/IlNRTF9DQUxDX0ZPVU5EX1JPV1MgIjoiIikuJGhiLCgkbT8iXG5XSEVSRSAiLmltcGxvZGUoIiBBTkQgIiwkbSk6IiIpLiRyYywoJEYhPSIiPyskRjpudWxsKSwoJFE/JEYqJFE6MCksIlxuIik7ZWNobyRsLT5zZWxlY3RRdWVyeSgkaik7JGk9JGYtPnF1ZXJ5KCRqKTtpZighJGkpe2VjaG8iPHAgY2xhc3M9J2Vycm9yJz4iLmVycm9yKCkuIlxuIjt9ZWxzZXtpZigkdmE9PSJtc3NxbCIpeyRpLT5zZWVrKCRGKiRRKTt9JGFjPWFycmF5KCk7ZWNobyI8Zm9ybSBhY3Rpb249JycgbWV0aG9kPSdwb3N0JyBlbmN0eXBlPSdtdWx0aXBhcnQvZm9ybS1kYXRhJz5cbiI7JHk9YXJyYXkoKTt3aGlsZSgkYz0kaS0+ZmV0Y2hfYXNzb2MoKSl7JHlbXT0kYzt9aWYoJF9HRVRbInBhZ2UiXSE9Imxhc3QiKXskQmE9KCskRiYmJG5hJiZjb3VudCgkbmEpPGNvdW50KCRLKT8oJHZhPT0ic3FsIj8kZi0+cmVzdWx0KCIgU0VMRUNUIEZPVU5EX1JPV1MoKSIpOiRmLT5yZXN1bHQoIlNFTEVDVCBDT1VOVCgqKSBGUk9NICgkaikgeCIpKTpjb3VudCgkeSkpO31pZighJHkpe2VjaG8iPHAgY2xhc3M9J21lc3NhZ2UnPiIubGFuZyg2OCkuIlxuIjt9ZWxzZXskdWM9JGwtPmJhY2t3YXJkS2V5cygkdywkeGIpO2VjaG8iPHRhYmxlIGNlbGxzcGFjaW5nPScwJyBjbGFzcz0nbm93cmFwJyBvbmNsaWNrPSd0YWJsZUNsaWNrKGV2ZW50KTsnIG9ua2V5ZG93bj0ncmV0dXJuIGVkaXRpbmdLZXlkb3duKGV2ZW50KTsnPlxuIiwiPHRoZWFkPjx0cj4iLighJG5hJiYkSz8iIjoiPHRkPjxpbnB1dCB0eXBlPSdjaGVja2JveCcgaWQ9J2FsbC1wYWdlJyBvbmNsaWNrPSdmb3JtQ2hlY2sodGhpcywgL2NoZWNrLyk7Jz4gPGEgaHJlZj0nIi5oKCRfR0VUWyJtb2RpZnkiXT9yZW1vdmVfZnJvbV91cmkoIm1vZGlmeSIpOiRfU0VSVkVSWyJSRVFVRVNUX1VSSSJdLiImbW9kaWZ5PTEiKS4iJz4iLmxhbmcoNjkpLiI8L2E+Iik7JG5jPWFycmF5KCk7JGVhPWFycmF5KCk7cmVzZXQoJEspOyRWYz0xO2ZvcmVhY2goJHlbMF1hcyRkPT4kYSl7aWYoJERbIk9pZCJdIT0idCJ8fCRkIT0ib2lkIil7JGE9JF9HRVRbImNvbHVtbnMiXVtrZXkoJEspXTskZz0kdFskSz8kYVsiY29sIl06JGRdOyRlPSgkZz8kbC0+ZmllbGROYW1lKCRnLCRWYyk6IioiKTtpZigkZSE9IiIpeyRWYysrOyRuY1skZF09JGU7JHU9aWRmX2VzY2FwZSgkZCk7ZWNobyc8dGg+PGEgaHJlZj0iJy5oKHJlbW92ZV9mcm9tX3VyaSgnKG9yZGVyfGRlc2MpW149XSp8cGFnZScpLicmb3JkZXIlNUIwJTVEPScudXJsZW5jb2RlKCRkKS4oJHBhWzBdPT0kdXx8JHBhWzBdPT0kZHx8KCEkcGEmJiRuYVswXT09JHUpPycmZGVzYyU1QjAlNUQ9MSc6JycpKS4nIj4nLmFwcGx5X3NxbF9mdW5jdGlvbigkYVsiZnVuIl0sJGUpLiI8L2E+Ijt9JGVhWyRkXT0kYVsiZnVuIl07bmV4dCgkSyk7fX0kamM9YXJyYXkoKTtpZigkX0dFVFsibW9kaWZ5Il0pe2ZvcmVhY2goJHkKYXMkYyl7Zm9yZWFjaCgkYwphcyRkPT4kYSl7JGpjWyRkXT1tYXgoJGpjWyRkXSxtaW4oNDAsc3RybGVuKHV0ZjhfZGVjb2RlKCRhKSkpKTt9fX1lY2hvKCR1Yz8iPHRoPiIubGFuZyg3MCk6IiIpLiI8L3RoZWFkPlxuIjtmb3JlYWNoKCRsLT5yb3dEZXNjcmlwdGlvbnMoJHksJHliKWFzJE89PiRjKXskZ2M9dW5pcXVlX2FycmF5KCR5WyRPXSwkVSk7JEZhPSIiO2ZvcmVhY2goJGdjCmFzJGQ9PiRhKXskRmEuPSImIi4oaXNzZXQoJGEpP3VybGVuY29kZSgid2hlcmVbIi5icmFja2V0X2VzY2FwZSgkZCkuIl0iKS4iPSIudXJsZW5jb2RlKCRhKToibnVsbCU1QiU1RD0iLnVybGVuY29kZSgkZCkpO31lY2hvIjx0ciIub2RkKCkuIj4iLighJG5hJiYkSz8iIjoiPHRkPiIuY2hlY2tib3goImNoZWNrW10iLHN1YnN0cigkRmEsMSksaW5fYXJyYXkoc3Vic3RyKCRGYSwxKSwoYXJyYXkpJF9QT1NUWyJjaGVjayJdKSwiIiwidGhpcy5mb3JtWydhbGwnXS5jaGVja2VkID0gZmFsc2U7IGZvcm1VbmNoZWNrKCdhbGwtcGFnZScpOyIpLihjb3VudCgkbmEpPGNvdW50KCRLKXx8aW5mb3JtYXRpb25fc2NoZW1hKERCKT8iIjoiIDxhIGhyZWY9JyIuaChNRS4iZWRpdD0iLnVybGVuY29kZSgkdykuJEZhKS4iJz4iLmxhbmcoNjkpLiI8L2E+IikpO2ZvcmVhY2goJGMKYXMkZD0+JGEpe2lmKGlzc2V0KCRuY1skZF0pKXskZz0kdFskZF07aWYoJGEhPSIiJiYoIWlzc2V0KCRhY1skZF0pfHwkYWNbJGRdIT0iIikpeyRhY1skZF09KGlzX21haWwoJGEpPyRuY1skZF06IiIpO30kdj0iIjskYT0kbC0+ZWRpdFZhbCgkYSwkZyk7aWYoIWlzc2V0KCRhKSl7JGE9IjxpPk5VTEw8L2k+Ijt9ZWxzZXtpZihlcmVnKCdibG9ifGJ5dGVhfHJhd3xmaWxlJywkZ1sidHlwZSJdKSYmJGEhPSIiKXskdj1oKE1FLidkb3dubG9hZD0nLnVybGVuY29kZSgkdykuJyZmaWVsZD0nLnVybGVuY29kZSgkZCkuJEZhKTt9aWYoJGE9PT0iIil7JGE9IiZuYnNwOyI7fWVsc2VpZigkZmIhPSIiJiZlcmVnKCd0ZXh0fGJsb2InLCRnWyJ0eXBlIl0pJiZpc191dGY4KCRhKSl7JGE9c2hvcnRlbl91dGY4KCRhLG1heCgwLCskZmIpKTt9ZWxzZXskYT1oKCRhKTt9aWYoISR2KXtmb3JlYWNoKChhcnJheSkkeWJbJGRdYXMkSSl7aWYoY291bnQoJHliWyRkXSk9PTF8fGVuZCgkSVsic291cmNlIl0pPT0kZCl7JHY9IiI7Zm9yZWFjaCgkSVsic291cmNlIl1hcyRxPT4keGMpeyR2Lj13aGVyZV9saW5rKCRxLCRJWyJ0YXJnZXQiXVskcV0sJHlbJE9dWyR4Y10pO30kdj1oKCgkSVsiZGIiXSE9IiI/cHJlZ19yZXBsYWNlKCd+KFs/Jl1kYj0pW14mXSt+JywnXFwxJy51cmxlbmNvZGUoJElbImRiIl0pLE1FKTpNRSkuJ3NlbGVjdD0nLnVybGVuY29kZSgkSVsidGFibGUiXSkuJHYpO2lmKGNvdW50KCRJWyJzb3VyY2UiXSk9PTEpe2JyZWFrO319fX1pZigkZD09IkNPVU5UKCopIil7JHY9aChNRS4ic2VsZWN0PSIudXJsZW5jb2RlKCR3KSk7JHE9MDtmb3JlYWNoKChhcnJheSkkX0dFVFsid2hlcmUiXWFzJHMpe2lmKCFhcnJheV9rZXlfZXhpc3RzKCRzWyJjb2wiXSwkZ2MpKXskdi49aCh3aGVyZV9saW5rKCRxKyssJHNbImNvbCJdLCRzWyJ2YWwiXSwkc1sib3AiXSkpO319Zm9yZWFjaCgkZ2MKYXMkc2E9PiRzKXskdi49aCh3aGVyZV9saW5rKCRxKyssJHNhLCRzKSk7fX19aWYoISR2KXtpZihpc19tYWlsKCRhKSl7JHY9Im1haWx0bzokYSI7fWlmKCRUYz1pc191cmwoJGNbJGRdKSl7JHY9KCRUYz09Imh0dHAiJiYkb2I/JGNbJGRdOiIkVGM6Ly93d3cuYWRtaW5lci5vcmcvcmVkaXJlY3QvP3VybD0iLnVybGVuY29kZSgkY1skZF0pKTt9fSRiYT1oKCJ2YWxbJEZhXVsiLmJyYWNrZXRfZXNjYXBlKCRkKS4iXSIpOyRuPSRfUE9TVFsidmFsIl1bJEZhXVticmFja2V0X2VzY2FwZSgkZCldOyRXYz1oKGlzc2V0KCRuKT8kbjokY1skZF0pOyRLZD1zdHJwb3MoJGEsIjxpPi4uLjwvaT4iKTskWGM9aXNfdXRmOCgkYSkmJiR5WyRPXVskZF09PSRjWyRkXSYmISRlYVskZF07JFpjPWVyZWcoJ3RleHR8bG9iJywkZ1sidHlwZSJdKTtlY2hvKCgkX0dFVFsibW9kaWZ5Il0mJiRYYyl8fGlzc2V0KCRuKT8iPHRkPiIuKCRaYz8iPHRleHRhcmVhIG5hbWU9JyRiYScgY29scz0nMzAnIHJvd3M9JyIuKHN1YnN0cl9jb3VudCgkY1skZF0sIlxuIikrMSkuIic+JFdjPC90ZXh0YXJlYT4iOiI8aW5wdXQgbmFtZT0nJGJhJyB2YWx1ZT0nJFdjJyBzaXplPSckamNbJGRdJz4iKToiPHRkIGlkPSckYmEnIG9uZGJsY2xpY2s9XCIiLigkWGM/InNlbGVjdERibENsaWNrKHRoaXMsIGV2ZW50Ii4oJEtkPyIsIDIiOigkWmM/IiwgMSI6IiIpKS4iKSI6ImFsZXJ0KCciLmgobGFuZyg3MSkpLiInKSIpLiI7XCI+Ii4kbC0+c2VsZWN0VmFsKCRhLCR2LCRnKSk7fX1pZigkdWMpe2VjaG8iPHRkPiI7fSRsLT5iYWNrd2FyZEtleXNQcmludCgkdWMsJHlbJE9dKTtlY2hvIjwvdHI+XG4iO31lY2hvIjwvdGFibGU+XG4iO31wYXJzZV9zdHIoJF9DT09LSUVbImFkbWluZXJfZXhwb3J0Il0sJGZjKTtpZigkeXx8JFEpeyRsYz10cnVlO2lmKCRfR0VUWyJwYWdlIl0hPSJsYXN0IiYmKyRGJiZjb3VudCgkbmEpPj1jb3VudCgkSykmJigkQmE+PSRGfHwkUSkpeyRCYT0kRFsiUm93cyJdO2lmKCFpc3NldCgkQmEpfHwkbXx8KCREWyJFbmdpbmUiXT09Iklubm9EQiImJiRCYTxtYXgoMWU0LDIqKCRRKzEpKiRGKSkpe29iX2ZsdXNoKCk7Zmx1c2goKTskQmE9JGYtPnJlc3VsdCgiU0VMRUNUIENPVU5UKCopIEZST00gIi50YWJsZSgkdykuKCRtPyIgV0hFUkUgIi5pbXBsb2RlKCIgQU5EICIsJG0pOiIiKSk7fWVsc2V7JGxjPWZhbHNlO319ZWNobyI8cCBjbGFzcz0ncGFnZXMnPiI7aWYoKyRGJiYkQmE+JEYpeyRtYz1mbG9vcigoJEJhLTEpLyRGKTtlY2hvJzxhIGhyZWY9IicuaChyZW1vdmVfZnJvbV91cmkoInBhZ2UiKSkuIlwiIG9uY2xpY2s9XCJwYWdlQ2xpY2sodGhpcy5ocmVmLCArcHJvbXB0KCciLmxhbmcoNzIpLiInLCAnIi4oJFErMSkuIicpLCBldmVudCk7IHJldHVybiBmYWxzZTtcIj4iLmxhbmcoNzIpLiI8L2E+OiIscGFnaW5hdGlvbigwLCRRKS4oJFE+NT8iIC4uLiI6IiIpO2ZvcigkcT1tYXgoMSwkUS00KTskcTxtaW4oJG1jLCRRKzUpOyRxKyspe2VjaG8KcGFnaW5hdGlvbigkcSwkUSk7fWVjaG8oJFErNTwkbWM/IiAuLi4iOiIiKS4oJGxjP3BhZ2luYXRpb24oJG1jLCRRKTonIDxhIGhyZWY9IicuaChyZW1vdmVfZnJvbV91cmkoKS4iJnBhZ2U9bGFzdCIpLiciPicubGFuZyg3MykuIjwvYT4iKTt9ZWNobyIgKCIuKCRsYz8iIjoifiAiKS5sYW5nKDc0LCRCYSkuIikgIi5jaGVja2JveCgiYWxsIiwxLDAsbGFuZyg3NSkpLiJcbiI7aWYoIWluZm9ybWF0aW9uX3NjaGVtYShEQikpe2VjaG8nPGZpZWxkc2V0PjxsZWdlbmQ+JyxsYW5nKDU5KSwnPC9sZWdlbmQ+PGRpdj4KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IicsbGFuZyg2MCksJyIgdGl0bGU9IicsbGFuZyg2NSksJyIgY2xhc3M9Impzb25seSI+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImVkaXQiIHZhbHVlPSInLGxhbmcoNTkpLCciPgo8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJjbG9uZSIgdmFsdWU9IicsbGFuZyg3NiksJyI+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9ImRlbGV0ZSIgdmFsdWU9IicsbGFuZyg2MyksJyIgb25jbGljaz0icmV0dXJuIGNvbmZpcm0oXCcnLGxhbmcoMCk7Pz4gKCcgKyAodGhpcy5mb3JtWydhbGwnXS5jaGVja2VkID8gPD9waHAgZWNobyRCYSwnIDogZm9ybUNoZWNrZWQodGhpcywgL2NoZWNrLykpICsgXCcpXCcpOyI+CjwvZGl2PjwvZmllbGRzZXQ+Cic7fXByaW50X2ZpZWxkc2V0KCJleHBvcnQiLGxhbmcoNzcpKTskWmE9JGwtPmR1bXBPdXRwdXQoKTtlY2hvKCRaYT9odG1sX3NlbGVjdCgib3V0cHV0IiwkWmEsJGZjWyJvdXRwdXQiXSkuIiAiOiIiKSxodG1sX3NlbGVjdCgiZm9ybWF0IiwkbC0+ZHVtcEZvcm1hdCgpLCRmY1siZm9ybWF0Il0pLCIgPGlucHV0IHR5cGU9J3N1Ym1pdCcgbmFtZT0nZXhwb3J0JyB2YWx1ZT0nIi5sYW5nKDc3KS4iJyBvbmNsaWNrPSdldmVudFN0b3AoZXZlbnQpOyc+XG4iLCI8L2Rpdj48L2ZpZWxkc2V0PlxuIjt9cHJpbnRfZmllbGRzZXQoImltcG9ydCIsbGFuZyg3OCksISR5KTtlY2hvIjxpbnB1dCB0eXBlPSdmaWxlJyBuYW1lPSdjc3ZfZmlsZSc+ICIsaHRtbF9zZWxlY3QoInNlcGFyYXRvciIsYXJyYXkoImNzdiI9PiJDU1YsIiwiY3N2OyI9PiJDU1Y7IiwidHN2Ij0+IlRTViIpLCRmY1siZm9ybWF0Il0sMSk7ZWNobyIgPGlucHV0IHR5cGU9J3N1Ym1pdCcgbmFtZT0naW1wb3J0JyB2YWx1ZT0nIi5sYW5nKDc4KS4iJz4iLCI8aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSd0b2tlbicgdmFsdWU9JyR4YSc+XG4iLCI8L2Rpdj48L2ZpZWxkc2V0PlxuIjskbC0+c2VsZWN0RW1haWxQcmludChhcnJheV9maWx0ZXIoJGFjLCdzdHJsZW4nKSwkSik7ZWNobyI8L2Zvcm0+XG4iO319fWVsc2V7cGFnZV9oZWFkZXIobGFuZyg0NyksIiIsZmFsc2UpO2lmKCRsLT5ob21lcGFnZSgpKXtlY2hvIjxmb3JtIGFjdGlvbj0nJyBtZXRob2Q9J3Bvc3QnPlxuIiwiPHA+Ii5sYW5nKDc5KS4iOiA8aW5wdXQgbmFtZT0ncXVlcnknIHZhbHVlPSciLmgoJF9QT1NUWyJxdWVyeSJdKS4iJz4gPGlucHV0IHR5cGU9J3N1Ym1pdCcgdmFsdWU9JyIubGFuZygyOCkuIic+XG4iO2lmKCRfUE9TVFsicXVlcnkiXSE9IiIpe3NlYXJjaF90YWJsZXMoKTt9ZWNobyI8dGFibGUgY2VsbHNwYWNpbmc9JzAnIGNsYXNzPSdub3dyYXAnIG9uY2xpY2s9J3RhYmxlQ2xpY2soZXZlbnQpOyc+XG4iLCc8dGhlYWQ+PHRyIGNsYXNzPSJ3cmFwIj48dGQ+PGlucHV0IGlkPSJjaGVjay1hbGwiIHR5cGU9ImNoZWNrYm94IiBvbmNsaWNrPSJmb3JtQ2hlY2sodGhpcywgL150YWJsZXNcWy8pOyI+PHRoPicubGFuZyg4MCkuJzx0ZD4nLmxhbmcoODEpLiI8L3RoZWFkPlxuIjtmb3JlYWNoKHRhYmxlX3N0YXR1cygpYXMkaD0+JGMpeyRlPSRsLT50YWJsZU5hbWUoJGMpO2lmKGlzc2V0KCRjWyJFbmdpbmUiXSkmJiRlIT0iIil7ZWNobyc8dHInLm9kZCgpLic+PHRkPicuY2hlY2tib3goInRhYmxlc1tdIiwkaCxpbl9hcnJheSgkaCwoYXJyYXkpJF9QT1NUWyJ0YWJsZXMiXSx0cnVlKSwiIiwiZm9ybVVuY2hlY2soJ2NoZWNrLWFsbCcpOyIpLCI8dGg+PGEgaHJlZj0nIi5oKE1FKS4nc2VsZWN0PScudXJsZW5jb2RlKCRoKS4iJz4kZTwvYT4iOyRhPW51bWJlcl9mb3JtYXQoJGNbIlJvd3MiXSwwLCcuJyxsYW5nKDgyKSk7ZWNobyI8dGQgYWxpZ249J3JpZ2h0Jz48YSBocmVmPSciLmgoTUUuImVkaXQ9IikudXJsZW5jb2RlKCRoKS4iJz4iLigkY1siRW5naW5lIl09PSJJbm5vREIiJiYkYT8ifiAkYSI6JGEpLiI8L2E+Ijt9fWVjaG8iPC90YWJsZT5cbiIsIjwvZm9ybT5cbiI7fX1wYWdlX2Zvb3RlcigpOw==]]></data>
	</file>
	<file>
	  <filename>/adminer/plugins/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/adminer/plugins/AdminerFrames.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCi8qKiBBbGxvdyB1c2luZyBBZG1pbmVyIGluc2lkZSBhIGZyYW1lIChkaXNhYmxlcyBDbGlja0phY2tpbmcgcHJvdGVjdGlvbikKICogQGF1dGhvciBKYWt1YiBWcmFuYSwgaHR0cDovL3d3dy52cmFuYS5jei8KICogQGxpY2Vuc2UgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMAogKiBAbGljZW5zZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLTIuMC5odG1sIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLCB2ZXJzaW9uIDIgKG9uZSBvciBvdGhlcikKICovCmNsYXNzIEFkbWluZXJGcmFtZXMgewoJdmFyICRzYW1lT3JpZ2luOwoKCS8qKgoJICogQHBhcmFtIGJvb2wgYWxsb3cgcnVubmluZyBmcm9tIHRoZSBzYW1lIG9yaWdpbiBvbmx5CgkgKi8KCWZ1bmN0aW9uIEFkbWluZXJGcmFtZXMoJHNhbWVPcmlnaW4gPSBmYWxzZSkgewoJCSR0aGlzLT5zYW1lT3JpZ2luID0gJHNhbWVPcmlnaW47Cgl9CgoJZnVuY3Rpb24gaGVhZGVycygpIHsKCQlpZiAoJHRoaXMtPnNhbWVPcmlnaW4pIHsKCQkJaGVhZGVyKCJYLUZyYW1lLU9wdGlvbnM6IFNhbWVPcmlnaW4iKTsKCQl9CgkJaGVhZGVyKCJYLVhTUy1Qcm90ZWN0aW9uOiAwIik7CgkJcmV0dXJuIHRydWU7Cgl9Cgp9Cj8+]]></data>
	</file>
	<file>
	  <filename>/adminer/plugins/plugin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCi8qKiBBZG1pbmVyIGN1c3RvbWl6YXRpb24gYWxsb3dpbmcgdXNhZ2Ugb2YgcGx1Z2lucwogKiBAYXV0aG9yIEpha3ViIFZyYW5hLCBodHRwOi8vd3d3LnZyYW5hLmN6LwogKiBAbGljZW5zZSBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wCiAqIEBsaWNlbnNlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWwgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UsIHZlcnNpb24gMiAob25lIG9yIG90aGVyKQogKi8KY2xhc3MgQWRtaW5lclBsdWdpbiBleHRlbmRzIEFkbWluZXIgewoJdmFyICRwbHVnaW5zOwoKCWZ1bmN0aW9uIF9maW5kUm9vdENsYXNzKCRjbGFzcykgeyAvLyBpc19zdWJjbGFzc19vZihzdHJpbmcsIHN0cmluZykgaXMgYXZhaWxhYmxlIHNpbmNlIFBIUCA1LjAuMwoJCWRvIHsKCQkJJHJldHVybiA9ICRjbGFzczsKCQl9IHdoaWxlICgkY2xhc3MgPSBnZXRfcGFyZW50X2NsYXNzKCRjbGFzcykpOwoJCXJldHVybiAkcmV0dXJuOwoJfQoKCS8qKiBSZWdpc3RlciBwbHVnaW5zCgkgKiBAcGFyYW0gYXJyYXkgb2JqZWN0IGluc3RhbmNlcyBvciBudWxsIHRvIHJlZ2lzdGVyIGFsbCBjbGFzc2VzIHN0YXJ0aW5nIGJ5ICdBZG1pbmVyJwoJICovCglmdW5jdGlvbiBBZG1pbmVyUGx1Z2luKCRwbHVnaW5zKSB7CgkJaWYgKCFpc3NldCgkcGx1Z2lucykpIHsKCQkJJHBsdWdpbnMgPSBhcnJheSgKCQkJKTsKCQkJZm9yZWFjaCAoZ2V0X2RlY2xhcmVkX2NsYXNzZXMoKSBhcyAkY2xhc3MpIHsKCQkJCWlmIChwcmVnX21hdGNoKCd+XkFkbWluZXIufmknLCAkY2xhc3MpICYmCgkJCQkJc3RyY2FzZWNtcCgkdGhpcy0+X2ZpbmRSb290Q2xhc3MoJGNsYXNzKSwgJ0FkbWluZXInKSkgeyAvLyBjYW4gdXNlIGludGVyZmFjZSBzaW5jZSBQSFAgNQoJCQkJCSRwbHVnaW5zWyRjbGFzc10gPSBuZXcgJGNsYXNzOwoJCQkJfQoJCQl9CgkJfQoJCSR0aGlzLT5wbHVnaW5zID0gJHBsdWdpbnM7CgkJLy8gaXQgaXMgcG9zc2libGUgdG8gdXNlIFJlZmxlY3Rpb25PYmplY3QgaW4gUEhQIDUgdG8gZmluZCBvdXQgd2hpY2ggcGx1Z2lucyBkZWZpbmVzIHdoaWNoIG1ldGhvZHMgYXQgb25jZQoJfQoKCWZ1bmN0aW9uIF9jYWxsUGFyZW50KCRmdW5jdGlvbiwgJGFyZ3MpIHsKCQlzd2l0Y2ggKGNvdW50KCRhcmdzKSkgeyAvLyBjYWxsX3VzZXJfZnVuY19hcnJheShhcnJheSgncGFyZW50JywgJGZ1bmN0aW9uKSwgJGFyZ3MpIHdvcmtzIHNpbmNlIFBIUCA1CgkJCWNhc2UgMDoKCQkJCXJldHVybiBwYXJlbnQ6OiRmdW5jdGlvbigpOwoJCQljYXNlIDE6CgkJCQlyZXR1cm4gcGFyZW50OjokZnVuY3Rpb24oJGFyZ3NbMF0pOwoJCQljYXNlIDI6CgkJCQlyZXR1cm4gcGFyZW50OjokZnVuY3Rpb24oJGFyZ3NbMF0sICRhcmdzWzFdKTsKCQkJY2FzZSAzOgoJCQkJcmV0dXJuIHBhcmVudDo6JGZ1bmN0aW9uKCRhcmdzWzBdLCAkYXJnc1sxXSwgJGFyZ3NbMl0pOwoJCQljYXNlIDQ6CgkJCQlyZXR1cm4gcGFyZW50OjokZnVuY3Rpb24oJGFyZ3NbMF0sICRhcmdzWzFdLCAkYXJnc1syXSwgJGFyZ3NbM10pOwoJCQlkZWZhdWx0OgoJCQkJdHJpZ2dlcl9lcnJvcignVG9vIG1hbnkgcGFyYW1ldGVycy4nLCBFX1VTRVJfV0FSTklORyk7CgkJfQoJfQoKCWZ1bmN0aW9uIF9hcHBseVBsdWdpbigkZnVuY3Rpb24sICRhcmdzKSB7CgkJZm9yZWFjaCAoJHRoaXMtPnBsdWdpbnMgYXMgJHBsdWdpbikgewoJCQlpZiAobWV0aG9kX2V4aXN0cygkcGx1Z2luLCAkZnVuY3Rpb24pKSB7CgkJCQlzd2l0Y2ggKGNvdW50KCRhcmdzKSkgeyAvLyBjYWxsX3VzZXJfZnVuY19hcnJheSgpIGRvZXNuJ3Qgd29yayB3ZWxsIHdpdGggcmVmZXJlbmNlcwoJCQkJCWNhc2UgMDoKCQkJCQkJJHJldHVybiA9ICRwbHVnaW4tPiRmdW5jdGlvbigpOwoJCQkJCQlicmVhazsKCQkJCQljYXNlIDE6CgkJCQkJCSRyZXR1cm4gPSAkcGx1Z2luLT4kZnVuY3Rpb24oJGFyZ3NbMF0pOwoJCQkJCQlicmVhazsKCQkJCQljYXNlIDI6CgkJCQkJCSRyZXR1cm4gPSAkcGx1Z2luLT4kZnVuY3Rpb24oJGFyZ3NbMF0sICRhcmdzWzFdKTsKCQkJCQkJYnJlYWs7CgkJCQkJY2FzZSAzOgoJCQkJCQkkcmV0dXJuID0gJHBsdWdpbi0+JGZ1bmN0aW9uKCRhcmdzWzBdLCAkYXJnc1sxXSwgJGFyZ3NbMl0pOwoJCQkJCQlicmVhazsKCQkJCQljYXNlIDQ6CgkJCQkJCSRyZXR1cm4gPSAkcGx1Z2luLT4kZnVuY3Rpb24oJGFyZ3NbMF0sICRhcmdzWzFdLCAkYXJnc1syXSwgJGFyZ3NbM10pOwoJCQkJCQlicmVhazsKCQkJCQlkZWZhdWx0OgoJCQkJCQl0cmlnZ2VyX2Vycm9yKCdUb28gbWFueSBwYXJhbWV0ZXJzLicsIEVfVVNFUl9XQVJOSU5HKTsKCQkJCX0KCQkJCWlmIChpc3NldCgkcmV0dXJuKSkgewoJCQkJCXJldHVybiAkcmV0dXJuOwoJCQkJfQoJCQl9CgkJfQoJCXJldHVybiAkdGhpcy0+X2NhbGxQYXJlbnQoJGZ1bmN0aW9uLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gX2FwcGVuZFBsdWdpbigkZnVuY3Rpb24sICRhcmdzKSB7CgkJJHJldHVybiA9ICR0aGlzLT5fY2FsbFBhcmVudCgkZnVuY3Rpb24sICRhcmdzKTsKCQlmb3JlYWNoICgkdGhpcy0+cGx1Z2lucyBhcyAkcGx1Z2luKSB7CgkJCWlmIChtZXRob2RfZXhpc3RzKCRwbHVnaW4sICRmdW5jdGlvbikpIHsKCQkJCSRyZXR1cm4gKz0gY2FsbF91c2VyX2Z1bmNfYXJyYXkoYXJyYXkoCgkJCQkJCQkJCQkJCQkgJHBsdWdpbiwgJGZ1bmN0aW9uCgkJCQkJCQkJCQkJCSksICRhcmdzKTsKCQkJfQoJCX0KCQlyZXR1cm4gJHJldHVybjsKCX0KCgkvLyBhcHBlbmRQbHVnaW4KCglmdW5jdGlvbiBkdW1wRm9ybWF0KCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGVuZFBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBkdW1wT3V0cHV0KCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGVuZFBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBlZGl0RnVuY3Rpb25zKCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGVuZFBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCgkvLyBhcHBseVBsdWdpbgoKCWZ1bmN0aW9uIG5hbWUoKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gY3JlZGVudGlhbHMoKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gcGVybWFuZW50TG9naW4oKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gZGF0YWJhc2UoKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gaGVhZGVycygpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBoZWFkKCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGx5UGx1Z2luKF9fRlVOQ1RJT05fXywgJGFyZ3MpOwoJfQoKCWZ1bmN0aW9uIGxvZ2luRm9ybSgpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBsb2dpbigpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiB0YWJsZU5hbWUoKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gZmllbGROYW1lKCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGx5UGx1Z2luKF9fRlVOQ1RJT05fXywgJGFyZ3MpOwoJfQoKCWZ1bmN0aW9uIHNlbGVjdExpbmtzKCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGx5UGx1Z2luKF9fRlVOQ1RJT05fXywgJGFyZ3MpOwoJfQoKCWZ1bmN0aW9uIGZvcmVpZ25LZXlzKCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGx5UGx1Z2luKF9fRlVOQ1RJT05fXywgJGFyZ3MpOwoJfQoKCWZ1bmN0aW9uIGJhY2t3YXJkS2V5cygpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBiYWNrd2FyZEtleXNQcmludCgpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBzZWxlY3RRdWVyeSgpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiByb3dEZXNjcmlwdGlvbigpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiByb3dEZXNjcmlwdGlvbnMoKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gc2VsZWN0VmFsKCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGx5UGx1Z2luKF9fRlVOQ1RJT05fXywgJGFyZ3MpOwoJfQoKCWZ1bmN0aW9uIGVkaXRWYWwoKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gc2VsZWN0Q29sdW1uc1ByaW50KCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGx5UGx1Z2luKF9fRlVOQ1RJT05fXywgJGFyZ3MpOwoJfQoKCWZ1bmN0aW9uIHNlbGVjdFNlYXJjaFByaW50KCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGx5UGx1Z2luKF9fRlVOQ1RJT05fXywgJGFyZ3MpOwoJfQoKCWZ1bmN0aW9uIHNlbGVjdE9yZGVyUHJpbnQoKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gc2VsZWN0TGltaXRQcmludCgpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBzZWxlY3RMZW5ndGhQcmludCgpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBzZWxlY3RBY3Rpb25QcmludCgpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBzZWxlY3RDb21tYW5kUHJpbnQoKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gc2VsZWN0SW1wb3J0UHJpbnQoKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gc2VsZWN0RW1haWxQcmludCgpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBzZWxlY3RDb2x1bW5zUHJvY2VzcygpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBzZWxlY3RTZWFyY2hQcm9jZXNzKCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGx5UGx1Z2luKF9fRlVOQ1RJT05fXywgJGFyZ3MpOwoJfQoKCWZ1bmN0aW9uIHNlbGVjdE9yZGVyUHJvY2VzcygpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBzZWxlY3RMaW1pdFByb2Nlc3MoKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gc2VsZWN0TGVuZ3RoUHJvY2VzcygpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBzZWxlY3RFbWFpbFByb2Nlc3MoKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gbWVzc2FnZVF1ZXJ5KCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGx5UGx1Z2luKF9fRlVOQ1RJT05fXywgJGFyZ3MpOwoJfQoKCWZ1bmN0aW9uIGVkaXRJbnB1dCgpIHsKCQkkYXJncyA9IGZ1bmNfZ2V0X2FyZ3MoKTsKCQlyZXR1cm4gJHRoaXMtPl9hcHBseVBsdWdpbihfX0ZVTkNUSU9OX18sICRhcmdzKTsKCX0KCglmdW5jdGlvbiBwcm9jZXNzSW5wdXQoKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gZHVtcFRhYmxlKCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGx5UGx1Z2luKF9fRlVOQ1RJT05fXywgJGFyZ3MpOwoJfQoKCWZ1bmN0aW9uIGR1bXBEYXRhKCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGx5UGx1Z2luKF9fRlVOQ1RJT05fXywgJGFyZ3MpOwoJfQoKCWZ1bmN0aW9uIGR1bXBIZWFkZXJzKCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGx5UGx1Z2luKF9fRlVOQ1RJT05fXywgJGFyZ3MpOwoJfQoKCWZ1bmN0aW9uIGhvbWVwYWdlKCkgewoJCSRhcmdzID0gZnVuY19nZXRfYXJncygpOwoJCXJldHVybiAkdGhpcy0+X2FwcGx5UGx1Z2luKF9fRlVOQ1RJT05fXywgJGFyZ3MpOwoJfQoKCWZ1bmN0aW9uIG5hdmlnYXRpb24oKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9CgoJZnVuY3Rpb24gdGFibGVzUHJpbnQoKSB7CgkJJGFyZ3MgPSBmdW5jX2dldF9hcmdzKCk7CgkJcmV0dXJuICR0aGlzLT5fYXBwbHlQbHVnaW4oX19GVU5DVElPTl9fLCAkYXJncyk7Cgl9Cgp9Cj8+]]></data>
	</file>
	<file>
	  <filename>/btAdminer.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTW9kdWxlIDogYnRBZG1pbmVyIChjKSAyMDExIGJ5IGJsYXR0ZXJ0ZWNoIGluZm9ybWF0aWsgKGluZm9AYmxhdHRlcnRlY2guY2gpDQojICAgICAgICAgIGEgQWRtaW5lciBleHRlbnNpb24gZm9yIENNUyBNYWRlIFNpbXBsZQ0KIyAgICAgICAgICBUaGUgcHJvamVjdHMgaG9tZXBhZ2UgaXMgZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2J0YWRtaW5lci8NCiMgICAgICAgICAgQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA0LTIwMTAgYnkgVGVkIEt1bHANCiMgICAgICAgICAgVGhlIHByb2plY3RzIGhvbWVwYWdlIGlzOiBjbXNtYWRlc2ltcGxlLm9yZw0KIyBWZXJzaW9uOiAxLjANCiMgRmlsZSAgIDogYnRBZG1pbmVyLm1vZHVsZS5waHANCiMgUHVycG9zZTogaW5pdGlhbCBtb2R1bGUgY2xhc3MuIHRoaXMgaXMgdGhlIGludGVyZmFjZSB0byB0aGUgTW9kdWxlIEFQSQ0KIyBMaWNlbnNlOiBHUEwNCiMNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCmNsYXNzIGJ0QWRtaW5lciBleHRlbmRzIENNU01vZHVsZQ0Kew0KCXB1YmxpYyAkY29uZmlnOw0KDQoJcHVibGljIGZ1bmN0aW9uIEdldE5hbWUoKSAJCQkJCXsJcmV0dXJuICdidEFkbWluZXInOwl9DQoNCglwdWJsaWMgZnVuY3Rpb24gR2V0RnJpZW5kbHlOYW1lKCkJCXsgcmV0dXJuICJidEFkbWluZXIiOwl9IC8vCQlyZXR1cm4gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ZyaWVuZGx5X25hbWUnKTsNCg0KCXB1YmxpYyBmdW5jdGlvbiBHZXRWZXJzaW9uKCkJCQkJewlyZXR1cm4gJzEuMCc7CX0NCg0KCXB1YmxpYyBmdW5jdGlvbiBHZXRIZWxwKCkgCQkJCQl7CXJldHVybiAkdGhpcy0+TGFuZygnaGVscCcpOwl9DQoNCglmdW5jdGlvbiBHZXRBdXRob3IoKQkJCQkJCQkJewlyZXR1cm4gJ2JsYXR0ZXJ0ZWNoIGluZm9ybWF0aWsnOyB9DQoNCglmdW5jdGlvbiBHZXRBdXRob3JFbWFpbCgpCQkJCQkJewlyZXR1cm4gJ2luZm9AYmxhdHRlcnRlY2guY2gnOwl9DQoNCglmdW5jdGlvbiBJc1BsdWdpbk1vZHVsZSgpCQkJCQkJewlyZXR1cm4gZmFsc2U7CX0NCg0KCWZ1bmN0aW9uIEhhc0FkbWluKCkJCQkJCQkJCQl7CXJldHVybiB0cnVlOwl9DQoNCglmdW5jdGlvbiBHZXRBZG1pblNlY3Rpb24oKQkJCQkJewlyZXR1cm4gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FkbWluX3NlY3Rpb24nKTsgfQ0KDQoJZnVuY3Rpb24gR2V0QWRtaW5EZXNjcmlwdGlvbigpCQkJewlyZXR1cm4gJHRoaXMtPkxhbmcoJ21vZGRlc2NyaXB0aW9uJyk7CX0NCg0KCWZ1bmN0aW9uIFZpc2libGVUb0FkbWluVXNlcigpCQkJCXsJcmV0dXJuICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ1VzZSBidEFkbWluZXInKTsJfQ0KDQoJZnVuY3Rpb24gTWluaW11bUNNU1ZlcnNpb24oKQkJCQl7CXJldHVybiAiMS45LjQuMiI7CX0NCg0KCWZ1bmN0aW9uIE1heGltdW1DTVNWZXJzaW9uKCkJCQkJewlyZXR1cm4gIjEuMTAiOwl9DQoNCglmdW5jdGlvbiBJbnN0YWxsUG9zdE1lc3NhZ2UoKQkJCQl7CXJldHVybiAkdGhpcy0+TGFuZygncG9zdGluc3RhbGwnKTsJfQ0KDQoJZnVuY3Rpb24gVW5pbnN0YWxsUG9zdE1lc3NhZ2UoKQkJCXsJcmV0dXJuICR0aGlzLT5MYW5nKCdwb3N0dW5pbnN0YWxsJyk7IH0NCg0KCWZ1bmN0aW9uIFVuaW5zdGFsbFByZU1lc3NhZ2UoKQkJCXsJcmV0dXJuICR0aGlzLT5MYW5nKCdyZWFsbHlfdW5pbnN0YWxsJyk7CX0NCg0KCS8qKg0KCSAqIE1ldGhvZDogR2V0SGVhZGVySFRNTA0KCSAqDQoJICoNCgkgKiBAc2VlIFNjcmlwdERlcGxveTo6R2V0SGVhZGVySFRNTCgpDQoJICogQGFjY2VzcyBwdWJsaWMNCgkgKiBAcmV0dXJuIEhlYWRlciBKUyBhbmQgQ1NTDQoJICovDQoJcHVibGljIGZ1bmN0aW9uIEdldEhlYWRlckhUTUwoKXsNCgkJJHRoaXMtPmNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOw0KCQkkc2NyaXB0IC49ICc8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+dmFyIEdCX1JPT1RfRElSID0gIicuJHRoaXMtPmNvbmZpZ1sncm9vdF91cmwnXS4nL21vZHVsZXMvYnRBZG1pbmVyL3N0eWxlL2dyZXlib3gvIjs8L3NjcmlwdD4nLiJcbiI7DQoJCSRzY3JpcHQgLj0gJzxzY3JpcHQgbGFuZ3VhZ2U9IkphdmFTY3JpcHQiIHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSInLiR0aGlzLT5jb25maWdbJ3Jvb3RfdXJsJ10uJy9tb2R1bGVzL2J0QWRtaW5lci9zdHlsZS9ncmV5Ym94L0FKUy5qcyIgPjwvc2NyaXB0PicuIlxuIjsNCgkJJHNjcmlwdCAuPSAnPHNjcmlwdCBsYW5ndWFnZT0iSmF2YVNjcmlwdCIgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IicuJHRoaXMtPmNvbmZpZ1sncm9vdF91cmwnXS4nL21vZHVsZXMvYnRBZG1pbmVyL3N0eWxlL2dyZXlib3gvQUpTX2Z4LmpzIiA+PC9zY3JpcHQ+Jy4iXG4iOw0KCQkkc2NyaXB0IC49ICc8c2NyaXB0IGxhbmd1YWdlPSJKYXZhU2NyaXB0IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iJy4kdGhpcy0+Y29uZmlnWydyb290X3VybCddLicvbW9kdWxlcy9idEFkbWluZXIvc3R5bGUvZ3JleWJveC9nYl9zY3JpcHRzLmpzIiA+PC9zY3JpcHQ+Jy4iXG4iOw0KCQkkc2NyaXB0IC49ICc8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSInLiR0aGlzLT5jb25maWdbJ3Jvb3RfdXJsJ10uJy9tb2R1bGVzL2J0QWRtaW5lci9zdHlsZS9ncmV5Ym94L2diX3N0eWxlcy5jc3MiIC8+Jy4iXG4iOw0KCQlyZXR1cm4gJHNjcmlwdDsNCgl9DQp9DQoNCg0KY2xhc3MgYnRMb2dnaW5nIHsNCglwcml2YXRlICRsb2dfZmlsZSA9ICIiOw0KCXByaXZhdGUgJGxvZ19maWxlX2V4dCA9ICIudHh0IjsNCglwcml2YXRlICRmcCA9IG51bGw7DQoJcHJpdmF0ZSAkd2RhdGU7DQoNCglwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJGxmbmFtZSA9ICJsb2dmaWxlIiwgJHdyaXRlZGF0ZSA9IGZhbHNlKSB7DQoJCSR0aGlzLT5sb2dfZmlsZSA9ICRsZm5hbWUuJHRoaXMtPmxvZ19maWxlX2V4dDsNCgkJJHRoaXMtPndkYXRlID0gaW50dmFsKCR3cml0ZWRhdGUpOw0KCX0NCg0KCXB1YmxpYyBmdW5jdGlvbiBsd3JpdGUoJG1lc3NhZ2Upew0KCQlpZiAoISR0aGlzLT5mcCkgJHRoaXMtPmxvcGVuKCk7DQoJCSRzY3JpcHRfbmFtZSA9IHBhdGhpbmZvKCRfU0VSVkVSWydQSFBfU0VMRiddLCBQQVRISU5GT19GSUxFTkFNRSk7DQoJCSR0aW1lID0gZGF0ZSgnSDppOnMnKTsNCgkJaWYgKGlzX2FycmF5KCRtZXNzYWdlKSkgJG1lc3NhZ2UgPSBwcmludF9yKCRtZXNzYWdlLHRydWUpOw0KCQlmd3JpdGUoJHRoaXMtPmZwLCAiJHRpbWUgKCRzY3JpcHRfbmFtZSkgJG1lc3NhZ2VcbiIpOw0KCX0NCglwcml2YXRlIGZ1bmN0aW9uIGxvcGVuKCl7DQoJCSR0aGlzLT5sb2dfZmlsZSA9IGRpcm5hbWUoX19GSUxFX18pIC4nLycuJHRoaXMtPmxvZ19maWxlOw0KCQlpZiAoIWlzX2RpcihkaXJuYW1lKCR0aGlzLT5sb2dfZmlsZSkpKQlta2RpcihkaXJuYW1lKCR0aGlzLT5sb2dfZmlsZSksMDc1NSk7DQoJCSRsZmlsZSA9IHBhdGhpbmZvKCR0aGlzLT5sb2dfZmlsZSk7DQoJCSR0b2RheSA9IGRhdGUoJ1ktbS1kJyk7DQoJCWlmICgkdGhpcy0+d2RhdGUpDQoJCQkkdGhpcy0+ZnAgPSBmb3BlbigkbGZpbGVbJ2Rpcm5hbWUnXSAuICcvJy4kbGZpbGVbJ2ZpbGVuYW1lJ10gLiAnLScgLiR0b2RheS4nLicuJGxmaWxlWydleHRlbnNpb24nXSwgJ2EnKSBvciBleGl0KCJDYW4ndCBvcGVuICRsZmlsZSEiKTsNCgkJZWxzZQ0KCQkJJHRoaXMtPmZwID0gZm9wZW4oJHRoaXMtPmxvZ19maWxlLCAnYScpIG9yIGV4aXQoIkNhbid0IG9wZW4gJGxmaWxlISIpOw0KCX0NCn0NCg==]]></data>
	</file>
	<file>
	  <filename>/btAdminer.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTW9kdWxlIDogYnRBZG1pbmVyIChjKSAyMDExIGJ5IGJsYXR0ZXJ0ZWNoIGluZm9ybWF0aWsgKGluZm9AYmxhdHRlcnRlY2guY2gpDQojICAgICAgICAgIGEgQWRtaW5lciBleHRlbnNpb24gZm9yIENNUyBNYWRlIFNpbXBsZQ0KIyAgICAgICAgICBUaGUgcHJvamVjdHMgaG9tZXBhZ2UgaXMgZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2J0YWRtaW5lci8NCiMgICAgICAgICAgQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA0LTIwMTAgYnkgVGVkIEt1bHANCiMgICAgICAgICAgVGhlIHByb2plY3RzIGhvbWVwYWdlIGlzOiBjbXNtYWRlc2ltcGxlLm9yZw0KIyBWZXJzaW9uOiAxLjANCiMgRmlsZSAgIDogYnRBZG1pbmVyLnBocA0KIyBQdXJwb3NlOiBpbmNsdWRlIHRoZSBBZG1pbmVyIHdpdGggb3duIHByZWZlcmVuY2VzDQojIExpY2Vuc2U6IEdQTA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KJHNlc3Npb25fbmFtZSA9ICdidEFkbWluZXInOw0Kc2Vzc2lvbl9uYW1lKCRzZXNzaW9uX25hbWUpOw0Kc2Vzc2lvbl9zdGFydCgpOw0KDQppZiAoIWlzc2V0KCRfU0VTU0lPTlsnQURNX3VzZXInXSkgYW5kICFpc3NldCgkX1NFU1NJT05bJ0FETV9zZXJ2ZXInXSkpIHsNCgloZWFkZXIoIkhUVFAvMS4wIDQwMyBGb3JiaWRkZW4iKTsNCgllY2hvICINCgkJPGh0bWw+DQoJCQk8aGVhZD4NCgkJCTx0aXRsZT40MDMgRm9yYmlkZGVuPC90aXRsZT4NCgkJCTwvaGVhZD4NCgkJPGJvZHk+DQoJCQk8cD5Zb3UgaGF2ZSBubyBhY2Nlc3MuIFBsZWFzZSBsb2dpbi48L3A+DQoJCTwvYm9keT4NCgkJPC9odG1sPg0KCSI7DQoJZXhpdDsNCn0NCg0KZnVuY3Rpb24gYWRtaW5lcl9vYmplY3QoKSB7DQoNCgkJLy8gcmVxdWlyZWQgdG8gcnVuIGFueSBwbHVnaW4NCglpbmNsdWRlX29uY2UgIi4vYWRtaW5lci9wbHVnaW5zL3BsdWdpbi5waHAiOw0KDQoJCS8vIGF1dG9sb2FkZXINCglmb3JlYWNoIChnbG9iKCIuL2FkbWluZXIvcGx1Z2lucy8qLnBocCIpIGFzICRmaWxlbmFtZSkgew0KCQlpbmNsdWRlX29uY2UgIi4vJGZpbGVuYW1lIjsNCgl9DQoNCgkkcGx1Z2lucyA9IGFycmF5KA0KCQkJLy8gc3BlY2lmeSBlbmFibGVkIHBsdWdpbnMgaGVyZQ0KCQluZXcgQWRtaW5lckZyYW1lcw0KCSk7DQoNCgljbGFzcyBBZG1pbmVyU29mdHdhcmUgZXh0ZW5kcyBBZG1pbmVyUGx1Z2luIHsNCg0KCQlmdW5jdGlvbiBuYW1lKCkgew0KCQkJLy8gY3VzdG9tIG5hbWUgaW4gdGl0bGUgYW5kIGhlYWRpbmcNCgkJCWlmIChpc3NldCgkX1NFU1NJT05bJ0FETV9wcm9nJ10pIGFuZCAkX1NFU1NJT05bJ0FETV9wcm9nJ10gPT0gImVkaXRvciIpDQoJCQkJcmV0dXJuICdidEFkbWluZXIgRWRpdG9yJzsNCgkJCWVsc2UNCgkJCQlyZXR1cm4gJ2J0QWRtaW5lcic7DQoJCX0NCg0KCQlmdW5jdGlvbiBwZXJtYW5lbnRMb2dpbigpIHsNCgkJCS8vIGtleSB1c2VkIGZvciBwZXJtYW5lbnQgbG9naW4NCgkJCXJldHVybiAiNzRiOTQxOTkyZWYyOTcyN2NjYWJmODI4ODlmZTgzN2EiOw0KCQl9DQoNCgkJZnVuY3Rpb24gY3JlZGVudGlhbHMoKSB7DQoJCQkvLyBzZXJ2ZXIsIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBmb3IgY29ubmVjdGluZyB0byBkYXRhYmFzZQ0KCQkJcmV0dXJuIGFycmF5KA0KCQkJCSRfU0VTU0lPTlsnQURNX3NlcnZlciddLCAkX1NFU1NJT05bJ0FETV91c2VyJ10sICRfU0VTU0lPTlsnQURNX3Bhc3N3b3JkJ10NCgkJCSk7DQoJCX0NCg0KCQlmdW5jdGlvbiBkYXRhYmFzZSgpIHsNCgkJCS8vIGRhdGFiYXNlIG5hbWUsIHdpbGwgYmUgZXNjYXBlZCBieSBBZG1pbmVyDQoJCQlyZXR1cm4gJF9TRVNTSU9OWydBRE1fZGInXTsNCgkJfQ0KDQoJCS8qKiBQcmludHMgdGFibGUgbGlzdCBpbiBtZW51DQoJCSAqIEBwYXJhbSBhcnJheQ0KCQkgKiBAcmV0dXJuIG51bGwNCgkJICovDQoJCWZ1bmN0aW9uIHRhYmxlc1ByaW50KCR0YWJsZXMpIHsNCgkJCWVjaG8gJzxwIGlkPSJ0YWJsZXMiPicgLiAiXG4iOw0KCQkJZm9yZWFjaCAoJHRhYmxlcyBhcyAkdGFibGUgPT4gJHR5cGUpIHsNCgkJCQllY2hvICc8c3BhbiBjbGFzcz0idGFibGVzLWxpbmUnOw0KCQkJCWlmICgkX0dFVFsic2VsZWN0Il0gPT0gJHRhYmxlIG9yICRfR0VUWyJ0YWJsZSJdID09ICR0YWJsZSkgew0KCQkJCQllY2hvICctYWN0aXZlJzsNCgkJCQl9DQoJCQkJZWNobyAnIj4nOw0KCQkJCWVjaG8gJzxhIGhyZWY9IicgLiBoKE1FKSAuICdzZWxlY3Q9JyAuIHVybGVuY29kZSgkdGFibGUpIC4gJyInIC4gYm9sZCgkX0dFVFsic2VsZWN0Il0gPT0gJHRhYmxlKSAuICI+IiAuDQoJCQkJCWxhbmcoJ3NlbGVjdCcpIC4gIjwvYT4gIjsNCgkJCQllY2hvICc8YSBocmVmPSInIC4gaChNRSkgLiAndGFibGU9JyAuIHVybGVuY29kZSgkdGFibGUpIC4gJyInIC4gYm9sZCgkX0dFVFsidGFibGUiXSA9PSAkdGFibGUpIC4gIj4iIC4NCgkJCQkJJHRoaXMtPnRhYmxlTmFtZShhcnJheSgNCgkJCQkJCQkJCQkgICJOYW1lIiA9PiAkdGFibGUNCgkJCQkJCQkJCSApKSAuICI8L2E+PC9zcGFuPlxuIjsgLy8hIEFkbWluZXI6OnRhYmxlTmFtZSBtYXkgd29yayB3aXRoIGZ1bGwgdGFibGUgc3RhdHVzDQoJCQl9DQoJCQllY2hvICc8L3A+JzsNCgkJfQ0KDQoJCS8qKiBQcmludCBob21lcGFnZQ0KCQkgKiBAcmV0dXJuIGJvb2wgd2hldGhlciB0byBwcmludCBkZWZhdWx0IGhvbWVwYWdlDQoJCSAqLw0KCQlmdW5jdGlvbiBob21lcGFnZSgpIHsNCgkJCWVjaG8gJzxwIGNsYXNzPSJ0YWJzIj4nIC4gKCRfR0VUWyJucyJdID09ICIiID8gJzxhIGhyZWY9IicgLiBoKE1FKSAuICdkYXRhYmFzZT0iPicgLiBsYW5nKCdBbHRlciBkYXRhYmFzZScpIC4gIjwvYT5cbiIgOiAiIik7DQoJCQlpZiAoc3VwcG9ydCgic2NoZW1lIikpIHsNCgkJCQllY2hvIjxhIGhyZWY9JyIgLiBoKE1FKSAuICJzY2hlbWU9Jz4iIC4gKCRfR0VUWyJucyJdICE9ICIiID8gbGFuZygnQWx0ZXIgc2NoZW1hJykgOiBsYW5nKCdDcmVhdGUgc2NoZW1hJykpIC4NCgkJCQkJIjwvYT5cbiI7DQoJCQl9DQoJCQlyZXR1cm4gdHJ1ZTsNCgkJfQ0KDQoNCgl9DQoNCglyZXR1cm4gbmV3IEFkbWluZXJTb2Z0d2FyZSgkcGx1Z2lucyk7DQp9DQoNCiRmaWxlID0gaXNzZXQoJF9TRVNTSU9OWydBRE1fcHJvZyddKT8kX1NFU1NJT05bJ0FETV9wcm9nJ106J2FkbWluZXInOw0KDQppbmNsdWRlICcuL2FkbWluZXIvJy4kZmlsZS4nLTMuMi4yLnBocCc7DQo=]]></data>
	</file>
	<file>
	  <filename>/function.admin_adminertab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTW9kdWxlIDogYnRBZG1pbmVyIChjKSAyMDExIGJ5IGJsYXR0ZXJ0ZWNoIGluZm9ybWF0aWsgKGluZm9AYmxhdHRlcnRlY2guY2gpDQojICAgICAgICAgIGEgQWRtaW5lciBleHRlbnNpb24gZm9yIENNUyBNYWRlIFNpbXBsZQ0KIyAgICAgICAgICBUaGUgcHJvamVjdHMgaG9tZXBhZ2UgaXMgZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2J0YWRtaW5lci8NCiMgICAgICAgICAgQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA0LTIwMTAgYnkgVGVkIEt1bHANCiMgICAgICAgICAgVGhlIHByb2plY3RzIGhvbWVwYWdlIGlzOiBjbXNtYWRlc2ltcGxlLm9yZw0KIyBWZXJzaW9uOiAxLjANCiMgRmlsZSAgIDogZnVuY3Rpb24uYWRtaW5fYWRtaW5lcnRhYi5waHANCiMgUHVycG9zZTogdGFiIHRvIGRpc3BsYXkgYnRBZG1pbmVyDQojIExpY2Vuc2U6IEdQTA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KaWYgKCEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdVc2UgYnRBZG1pbmVyJykpIHJldHVybjsNCg0KJGNvbmZpZyA9IGNtc21zKCktPkdldENvbmZpZygpOw0KDQokbGFuZyA9ICJkZSI7DQoNCiR1cmwgPSAkY29uZmlnWydyb290X3VybCddLicvbW9kdWxlcy9idEFkbWluZXIvYnRBZG1pbmVyLnBocD9sYW5nPScuJGxhbmcuJyZkYj0nLiRjb25maWdbJ2RiX25hbWUnXS4nJnNlcnZlcj0nLiRjb25maWdbJ2RiX2hvc3RuYW1lJ10uJyZ1c2VybmFtZT0nLiRjb25maWdbJ2RiX3VzZXJuYW1lJ107DQoNCiRzbWFydHktPmFzc2lnbigndXJsJywgJHVybCk7DQokc21hcnR5LT5hc3NpZ24oJ2ZyYW1laGVpZ2h0JywgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2ZyYW1laGVpZ2h0JykpOw0KJHNtYXJ0eS0+YXNzaWduKCdkaXNwbGF5JywgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2Rpc3BsYXknKSk7DQokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9vcGVuaW5saWdodGJveCcsICR0aGlzLT5MYW5nKCdvcGVuaW5saWdodGJveCcpKTsNCg0KZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdhZG1pbmVydGFiLnRwbCcpOw0KDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_optiontab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTW9kdWxlIDogYnRBZG1pbmVyIChjKSAyMDExIGJ5IGJsYXR0ZXJ0ZWNoIGluZm9ybWF0aWsgKGluZm9AYmxhdHRlcnRlY2guY2gpDQojICAgICAgICAgIGEgQWRtaW5lciBleHRlbnNpb24gZm9yIENNUyBNYWRlIFNpbXBsZQ0KIyAgICAgICAgICBUaGUgcHJvamVjdHMgaG9tZXBhZ2UgaXMgZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2J0YWRtaW5lci8NCiMgICAgICAgICAgQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA0LTIwMTAgYnkgVGVkIEt1bHANCiMgICAgICAgICAgVGhlIHByb2plY3RzIGhvbWVwYWdlIGlzOiBjbXNtYWRlc2ltcGxlLm9yZw0KIyBWZXJzaW9uOiAxLjANCiMgRmlsZSAgIDogZnVuY3Rpb24uYWRtaW5fb3B0aW9udGFicy5waHANCiMgUHVycG9zZTogdGFiIHRvIGJ0QWRtaW5lciBwcmVmZXJlbmNlcw0KIyBMaWNlbnNlOiBHUEwNCiMNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCmlmICghJHRoaXMtPkNoZWNrUGVybWlzc2lvbignU2V0IGJ0QWRtaW5lciBQcmVmcycpKSByZXR1cm47DQoNCiRzbWFydHktPmFzc2lnbignc3RhcnRGb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsICdhZG1pbl9lZGl0b3B0aW9uJywgJHJldHVybmlkLCdwb3N0JywnbXVsdGlwYXJ0L2Zvcm0tZGF0YScpKTsNCiRzbWFydHktPmFzc2lnbignZW5kRm9ybScsCSAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsNCiRzbWFydHktPmFzc2lnbignc3VibWl0JywgICAgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsIGxhbmcoJ3N1Ym1pdCcpKSk7DQoNCiRzbWFydHktPmFzc2lnbigncHJvbXB0X2Rpc3BsYXknLCAkdGhpcy0+TGFuZygncHJvbXB0X2Rpc3BsYXknKSk7DQokc21hcnR5LT5hc3NpZ24oJ2lucHV0X2Rpc3BsYXknLCR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwgJ2Rpc3BsYXknLCBhcnJheSgnaUZyYW1lJyA9PiAnaWZyYW1lJywgJ0xpZ2h0Ym94JyA9PiAnbGlnaHRib3gnKSwgLTEsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdkaXNwbGF5JykpKTsNCg0KJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfZnJhbWVoZWlnaHQnLCAkdGhpcy0+TGFuZygncHJvbXB0X2ZyYW1laGVpZ2h0JykpOw0KJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9mcmFtZWhlaWdodCcsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnZnJhbWVoZWlnaHQnLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnZnJhbWVoZWlnaHQnLCAnJyksIDUwKSk7DQoNCiRzbWFydHktPmFzc2lnbigncHJvbXB0X3Byb2cnLCAkdGhpcy0+TGFuZygncHJvbXB0X3Byb2cnKSk7DQokc21hcnR5LT5hc3NpZ24oJ2lucHV0X3Byb2cnLCR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwgJ3Byb2cnLCBhcnJheSgnQWRtaW5lcicgPT4gJ2FkbWluZXInLCAnQWRtaW5lciBFZGl0b3InID0+ICdlZGl0b3InKSwgLTEsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdwcm9nJykpKTsNCg0KJHNtYXJ0eS0+YXNzaWduKCdwcm9tcHRfb25seWJhY2tlbmQnLCAkdGhpcy0+TGFuZygncHJvbXB0X29ubHliYWNrZW5kJykpOw0KJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9vbmx5YmFja2VuZCcsICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ29ubHliYWNrZW5kJywgJzEnLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnb25seWJhY2tlbmQnKSkpOw0KDQokc21hcnR5LT5hc3NpZ24oJ3Byb21wdF9hZG1pbl9zZWN0aW9uJywgJHRoaXMtPkxhbmcoJ3Byb21wdF9hZG1pbl9zZWN0aW9uJykpOw0KJHNtYXJ0eS0+YXNzaWduKCdpbnB1dF9hZG1pbl9zZWN0aW9uJywgJHRoaXMtPkNyZWF0ZUlucHV0RHJvcGRvd24oJGlkLCAnYWRtaW5fc2VjdGlvbicsIGFycmF5KCdtYWluJyA9PiAnbWFpbicsICdjb250ZW50JyA9PiAnY29udGVudCcsICdsYXlvdXQnID0+ICdsYXlvdXQnLCAndXNlcnNncm91cHMnID0+ICd1c2Vyc2dyb3VwcycsICdleHRlbnNpb25zJyA9PiAnZXh0ZW5zaW9ucycsICdzaXRlYWRtaW4nID0+ICdzaXRlYWRtaW4nLCAnbXlwcmVmcycgPT4gJ215cHJlZnMnKSwgLTEsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdhZG1pbl9zZWN0aW9uJykpKTsNCg0KZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdvcHRpb250YWIudHBsJyk7DQoNCg==]]></data>
	</file>
	<file>
	  <filename>/images/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/button-hover.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAAAoAAAAVCAIAAADw0OikAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUKFN9kkmOBSEMQ5+l3P+4tSHEvUCUgF+0VxHOYFvE8zzcEf9wQFTvBoE/6cxEwkYCbEuyDQiiZa7tg9NsDdvbxFLM5SvGFXu5faOlyMwhW5wwRM+8GRNE2cPNe+9FQbTWDjOb735IWyFF9n6ofRPEjp65LtyHFb1KUPYwdiR4Tq8y+UhtR1TVjbMdMDP7SU5SwHz9+i5/bAuQgnNosWwAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/document-open.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAArElEQVR42qXQsQqCUBQG4CB6hVbBNZqEnHRzkBbHNodAeqn2HkJHnXwAX6AHMLEoqF9Pw4Huga4HL/xcONzvP3AXAGZF9TiLdjBnKnxeLWGWTMa3Y4gu9UWJFe/jAKg94H1Cf9jinrg/JZMx3c9yg0e8ZkxR4TZ3xB+oMM3Nt1b8qkZcCMz5v7kSm0WUm2UYf7qaIG+W2F5AUWEuGM8XX5sLhbGqgEKQsaJgVgaRbdb/YOydCgAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/error.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACZklEQVR42qWT+0tTYRjH+1s0TLsQEkH4g+aUYXYxdsxL22EXndtqeWFkUp65m+SKRBdiEqFmDoWgwAoqNZGQiDDKIupkpOtsbW7qPGfzzIJv5xzsjEj8xQe+v7y8n++X53nedxeAHem/g9/t5zI3PBYq5TLR6w4jm7DXsGyrno5f1lIrl8jMbQ0EkEi5zMFldz04vw/8owFJrL8bYcqMJVt1MNxUQWxpkHKbCd5Zx8V7Pfg1MQp+6BqS3vOS+LtebIyPIOprww+rilu0lBH/GPBOU0ayzcis9rolOOGqkfS3WLsebKsOqad+RG5cwbfaUoY2lGTIBkKf9qjTmoadBnAOg2wg9I/VFi1Wmknwj4cx30jiE1lklw2EC7TYJz/YIYJy4mZJ4LJNg2ijGvGbLkRvefG+Kp+WDWLN6iT/ZBCcxySCcuJmSeBS/VlErNUIN2gRH7mNWSIvKRuEmyqT62MDWHMYRVBO3Pg8J/IS+NNShZCpEiErifhwH16XHU4bMBdU9Gp/J7g+jwjKifE7XWAf+CUwaKwAYziDJS+FUHc7Zkpz0y0smE/Zv9t0WB+7J4Jy4mZJYEBfjkUtgbXRfrzTn8a08kB6iF9rjmV80SmZYEcLEg+H5MSYzyvsvkMCF0iVBM9TDZgq3sdMKnLkNUr6qFEQc9UFXMBzEdz9QUSvC4/GpEGgTo3IVUoYnAC3NuBFUQ43UbiH2PIpvy3PI96ojgQ/1KoQ6hLmMdCDWH8PmE43ZskTmCjMDj4vyCK2/UyvTh7KnDmeS70sOUhPK/ezU8V72UlFNj1+NIt6lr97y8+0I/0Bcq/UGoJ9DNcAAAAASUVORK5CYII=]]></data>
	</file>
	<file>
	  <filename>/images/information.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACm0lEQVR42qWT3U+SYRiH+1v0T+h9O2ltetBcmw3yTTvIrGGaqK10FWaDVYqJ+AUoYEMwP/KD8gtKUoQEXsnekI/Q1DcHZtDWVieQtSx/PdKGtVwnHlwnz577up/f7uc+BOBA/HOQp1/JPKkNS3PVIf54sy+RreQSWcoFPkvplR67x2b+VyDQLTMnVMF4eU8APc4oRtnNFCZ7BCLdC9DS2TgtszP7CkhXJqfFn2yeXIXNF0f3dBRy8xvcHV6GyrIKs2sDDaNh0BUTSfrKBPOXIFcTyshpXYztFltexiElRTcHghjyvMOQewM3egOQ9AfRO7sO+aMA6FJzjC4ZzkgLclSLsjKDD1buA2oHwpCQCNeMfnz5tp2iysihqpuD5IEPA88jONv0DFRhvywtyG7leJM9Co2Fx/UeP6qNPlQZOPQ519FLqOhif6P3kFhB6KZXQBcY+bTgqJzdGl94j9q+AOn0CpX3veQyCwDYIYi1bpR1zBFcuKx3w8xGQDGdW2kBLXNujXk3d7OmOpXrPKTIg3D0M5Jft1Ha7kRJmwMXCWK1AyPzRCBU/ymw8wY7D8XjJVTqvRB3unFJM4fXkU9E8B3FyhkUk9yiJhtqullobCHQp9r5PUGNTVakcmLIFUWlloVY5YKN28CPnzupCIG3H1EktxIs6HoSRsGtUSJok+0Jro5l0GJz7M6IH732NZSqHBA1T+O8YgpF9Racq5tAYd04WkZ8ZLzz5PmKGC1UpMeYghINMofzTUnpIAfTzAokBjd58lNcaLCiWuuAzhKEpI8FLahPkmJm369MFZgYKr8rfub2JDRTS3jo5glraLeGkFdrBiVoiNPCRua/y0Sf1mVSTIeUylPzlLApQQkaE6QjT5AeEdbvu0wH4hc4hsvsbED0hwAAAABJRU5ErkJggg==]]></data>
	</file>
	<file>
	  <filename>/images/system-list-open.png</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42u2PPQqAMAyFe0gH127ew8HNM/QWzi6uXkOEXiFPXvBnaKWEbuLwJeEFvhAHoAot/RhgpWk9bsEZFBGRq6eCeVktJAJaLeQFGBzhrFeYZ3pBMHU6b3t8g/v/hW++wMDII6jiAHh/J/CCogq2AAAAAElFTkSuQmCC]]></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/de_DE.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ1NldHplbiBTaWUgIlVzZSBidEFkbWluZXIiIHVuZCAiU2V0IGJ0QWRtaW5lciBQcmVmcyIgQmVyZWNodGlndW5nZW4gZsO8ciBkaWVzZXMgTW9kdWwhJzsNCiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnRXJmb2xncmVpY2ggZGVpbnN0YWxsaWVydCEnOw0KJGxhbmdbJ3JlYWxseV91bmluc3RhbGwnXSA9ICdXaXJrbGljaD8gTcO2Y2h0ZW4gU2llIGRpZXNlcyBNb2R1bCBkZWluc3RhbGxpZXJlbj8nOw0KJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWwgYnRBZG1pbmVyIGRlaW5zdGFsbGllcnQuJzsNCiRsYW5nWydpbnN0YWxsZWQnXSA9ICdNb2R1bGUgYnRBZG1pbmVyIFZlcnNpb24gJXMgaW5zdGFsbGllcnQuJzsNCiRsYW5nWydwcmVmc3VwZGF0ZWQnXSA9ICdNb2R1bGVpbnN0ZWxsdW5nZW4gYWt0dWFsaXNpZXJ0Lic7DQoNCiRsYW5nWydvcGVuaW5saWdodGJveCddID0gJ2J0QWRtaW5lciBpbiBMaWdodGJveCDDtmZmbmVuJzsNCg0KLy8gb3B0aW9ucw0KJGxhbmdbJ29wdGlvbnMnXSA9ICdPcHRpb25lbic7DQokbGFuZ1sncHJvbXB0X2ZyYW1laGVpZ2h0J10gPSAnRnJhbWVoJm91bWw7aGUgaW4gUGl4ZWwnOw0KJGxhbmdbJ3Byb21wdF9wcm9nJ10gPSAnQWRtaW5lciBBdXNmJnV1bWw7aHJ1bmcgd2VsY2hlIGFuZ2V6ZWlndCB3aXJkJzsNCiRsYW5nWydwcm9tcHRfZGlzcGxheSddID0gJ0FuemVpZ2UgZGVzIGJ0QWRtaW5lciBpbiBlaW5lbSBGcmFtZSBvZGVyIGluIGVpbmVyIExpZ2h0Ym94JzsNCiRsYW5nWydwcm9tcHRfb25seWJhY2tlbmQnXSA9ICdBbnplaWdlIGRlcyBidEFkbWluZXIgbnVyIHdlbm4gaW0gQmFja2VuZCBlaW5nZWxvZ2d0IChrZWluIGRpcmVrdGVyIEF1ZnJ1ZiBvaG5lIExvZ2luKSc7DQokbGFuZ1sncHJvbXB0X2FkbWluX3NlY3Rpb24nXSA9ICdIYXVwdG5hdmlnYXRpb25zcHVua3QgZsO8ciBNb2R1bCc7DQokbGFuZ1snb3B0aW9uc191cGRhdGVkJ10gPSAnT3B0aW9uZW4gd3VyZGVuIGVyZm9sZ3JlaWNoIGFrdHVhbGlzaWVydC4nOw0KDQokbGFuZ1snbW9kZGVzY3JpcHRpb24nXSA9ICdCaW5kZXQgZGVuIERhdGVuYmFuay1FZGl0b3IgQWRtaW5lciBlaW4uJzsNCg0K]]></data>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ1NldCAiVXNlIGJ0QWRtaW5lciIgYW5kICJTZXQgYnRBZG1pbmVyIFByZWZzIiBwZXJtaXNzaW9ucyB0byB1c2UgdGhpcyBtb2R1bGUhJzsNCiRsYW5nWydwb3N0dW5pbnN0YWxsJ10gPSAnU3VjZXNzZnVsIHVuaW5zdGFsbCEnOw0KJGxhbmdbJ3JlYWxseV91bmluc3RhbGwnXSA9ICdSZWFsbHk/IFlvdVwncmUgc3VyZSB5b3Ugd2FudCB0byB1bmluc3RhbGwgdGhpcyBmaW5lIG1vZHVsZT8nOw0KJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWxlIFVuaW5zdGFsbGVkLic7DQokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWxlIHZlcnNpb24gJXMgaW5zdGFsbGVkLic7DQokbGFuZ1sncHJlZnN1cGRhdGVkJ10gPSAnTW9kdWxlIHByZWZlcmVuY2VzIHVwZGF0ZWQuJzsNCg0KJGxhbmdbJ29wZW5pbmxpZ2h0Ym94J10gPSAnT3BlbiBidEFkbWluZXIgaW4gYSBsaWdodGJveCc7DQoNCi8vIG9wdGlvbnMNCiRsYW5nWydvcHRpb25zJ10gPSAnT3B0aW9ucyc7DQokbGFuZ1sncHJvbXB0X2ZyYW1laGVpZ2h0J10gPSAnRnJhbWVoZWlnaHQgaW4gcGl4ZWwnOw0KJGxhbmdbJ3Byb21wdF9wcm9nJ10gPSAnQWRtaW5lciBwcm9ncmFtIHdoaWNoIGlzIHRvIGJlIGRpc3BsYXllZCc7DQokbGFuZ1sncHJvbXB0X2Rpc3BsYXknXSA9ICdEaXNwbHkgYnRBZG1pbmVyIGluIGEgaWZyYW1lIG9yIGluIGEgbGlnaHRib3gnOw0KJGxhbmdbJ3Byb21wdF9vbmx5YmFja2VuZCddID0gJ0Rpc3BsYXkgYnRBZG1pbmVyIG9ubHkgd2hlbiBsb2dnZWQgaW4nOw0KJGxhbmdbJ3Byb21wdF9hZG1pbl9zZWN0aW9uJ10gPSAnTW9kdWxlIGFkbWluIHNlY3Rpb24nOw0KJGxhbmdbJ29wdGlvbnNfdXBkYXRlZCddID0gJ09wdGlvbnMgaGF2ZSBiZWVuIHN1Y2Nlc3NmdWxseSB1cGRhdGVkLic7DQoNCiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0V4dGVuZCB0aGUgYWRtaW4gaW50ZXJmYWNlIHdpdGggYW4gYW55IHdlYnNpdGUgaW4gYW4gaWZyYW1lLic7DQoNCg==]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTW9kdWxlIDogYnRBZG1pbmVyIChjKSAyMDExIGJ5IGJsYXR0ZXJ0ZWNoIGluZm9ybWF0aWsgKGluZm9AYmxhdHRlcnRlY2guY2gpDQojICAgICAgICAgIGEgQWRtaW5lciBleHRlbnNpb24gZm9yIENNUyBNYWRlIFNpbXBsZQ0KIyAgICAgICAgICBUaGUgcHJvamVjdHMgaG9tZXBhZ2UgaXMgZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2J0YWRtaW5lci8NCiMgICAgICAgICAgQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA0LTIwMTAgYnkgVGVkIEt1bHANCiMgICAgICAgICAgVGhlIHByb2plY3RzIGhvbWVwYWdlIGlzOiBjbXNtYWRlc2ltcGxlLm9yZw0KIyBWZXJzaW9uOiAxLjANCiMgRmlsZSAgIDogbWV0aG9kLmluc3RhbGwucGhwDQojIFB1cnBvc2U6IGluc3RhbGwgYnRBZG1pbmVyDQojIExpY2Vuc2U6IEdQTA0KIw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KLy8gc2V0IHByZWZzDQokdGhpcy0+U2V0UHJlZmVyZW5jZSgnYWRtaW5fc2VjdGlvbicsICdzaXRlYWRtaW4nKTsNCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdwcm9nJywgJ2FkbWluZXInKTsNCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdkaXNwbGF5JywgJ2lmcmFtZScpOw0KJHRoaXMtPlNldFByZWZlcmVuY2UoJ2ZyYW1laGVpZ2h0JywgJzgwMCcpOw0KJHRoaXMtPlNldFByZWZlcmVuY2UoJ29ubHliYWNrZW5kJywgJzEnKTsNCg0KLy8gc2V0IHBlcm1pc3Npb24NCiR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdVc2UgYnRBZG1pbmVyJywgJ1VzZSBidEFkbWluZXInKTsNCiR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdTZXQgYnRBZG1pbmVyIFByZWZzJywgJ1NldCBidEFkbWluZXIgUHJlZnMnKTsNCg0KLy8gbWVzc2FnZQ0KJHRoaXMtPkF1ZGl0KDAsICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKSwgJHRoaXMtPkxhbmcoJ2luc3RhbGxlZCcsICR0aGlzLT5HZXRWZXJzaW9uKCkpKTsNCj8+]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMNCiMgTW9kdWxlIDogYnRBZG1pbmVyIChjKSAyMDExIGJ5IGJsYXR0ZXJ0ZWNoIGluZm9ybWF0aWsgKGluZm9AYmxhdHRlcnRlY2guY2gpDQojICAgICAgICAgIGEgQWRtaW5lciBleHRlbnNpb24gZm9yIENNUyBNYWRlIFNpbXBsZQ0KIyAgICAgICAgICBUaGUgcHJvamVjdHMgaG9tZXBhZ2UgaXMgZGV2LmNtc21hZGVzaW1wbGUub3JnL3Byb2plY3RzL2J0YWRtaW5lci8NCiMgICAgICAgICAgQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA0LTIwMTAgYnkgVGVkIEt1bHANCiMgICAgICAgICAgVGhlIHByb2plY3RzIGhvbWVwYWdlIGlzOiBjbXNtYWRlc2ltcGxlLm9yZw0KIyBWZXJzaW9uOiAxLjANCiMgRmlsZSAgIDogbWV0aG9kLnVuaW5zdGFsbC5waHANCiMgUHVycG9zZTogdW5pbnN0YWxsIGJ0QWRtaW5lcg0KIyBMaWNlbnNlOiBHUEwNCiMNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCiR0aGlzLT5SZW1vdmVQcmVmZXJlbmNlKCk7DQokdGhpcy0+UmVtb3ZlUGVybWlzc2lvbigpOw0KDQokdGhpcy0+QXVkaXQoMCwgJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpLCAkdGhpcy0+TGFuZygndW5pbnN0YWxsZWQnKSk7DQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/style/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/style/greybox/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/style/greybox/AJS.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[aWYoIXdpbmRvdy5BSlMpe3ZhciBBSlM9e0JBU0VfVVJMOiIiLGFqYXhFcnJvckhhbmRsZXI6bnVsbCxnZXRRdWVyeUFyZ3VtZW50OmZ1bmN0aW9uKGYpe3ZhciBiPXdpbmRvdy5sb2NhdGlvbi5zZWFyY2guc3Vic3RyaW5nKDEpO3ZhciBjPWIuc3BsaXQoIiYiKTtmb3IodmFyIGE9MDthPGMubGVuZ3RoO2ErKyl7dmFyIGQ9Y1thXS5zcGxpdCgiPSIpO2lmKGRbMF09PWYpe3JldHVybiBkWzFdfX1yZXR1cm4gbnVsbH0sX2FnZW50Om5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKSxfYWdlbnRfdmVyc2lvbjpuYXZpZ2F0b3IucHJvZHVjdFN1Yixpc0llOmZ1bmN0aW9uKCl7cmV0dXJuKEFKUy5fYWdlbnQuaW5kZXhPZigibXNpZSIpIT0tMSYmQUpTLl9hZ2VudC5pbmRleE9mKCJvcGVyYSIpPT0tMSl9LGlzSWU4OmZ1bmN0aW9uKCl7cmV0dXJuIEFKUy5fYWdlbnQuaW5kZXhPZigibXNpZSA4IikhPS0xfSxpc1NhZmFyaTpmdW5jdGlvbihhKXtpZihhKXtyZXR1cm4gQUpTLl9hZ2VudC5pbmRleE9mKCJraHRtbCIpfXJldHVybihBSlMuX2FnZW50LmluZGV4T2YoImtodG1sIikhPS0xJiZBSlMuX2FnZW50Lm1hdGNoKC8zXC5cZFwuXGQgc2FmYXJpLyk9PW51bGwpfSxpc09wZXJhOmZ1bmN0aW9uKCl7cmV0dXJuIEFKUy5fYWdlbnQuaW5kZXhPZigib3BlcmEiKSE9LTF9LGlzTW96aWxsYTpmdW5jdGlvbigpe3JldHVybihBSlMuX2FnZW50LmluZGV4T2YoImdlY2tvIikhPS0xJiZBSlMuX2FnZW50X3ZlcnNpb24+PTIwMDMwMjEwKX0saXNNYWM6ZnVuY3Rpb24oKXtyZXR1cm4oQUpTLl9hZ2VudC5pbmRleE9mKCJtYWNpbnRvc2giKSE9LTEpfSxpc0NhbWlubzpmdW5jdGlvbigpe3JldHVybihBSlMuX2FnZW50LmluZGV4T2YoImNhbWlubyIpIT0tMSl9LGNyZWF0ZUFycmF5OmZ1bmN0aW9uKGEpe2lmKEFKUy5pc0FycmF5KGEpJiYhQUpTLmlzU3RyaW5nKGEpKXtyZXR1cm4gYX1lbHNle2lmKCFhKXtyZXR1cm5bXX1lbHNle3JldHVyblthXX19fSxmb3JjZUFycmF5OmZ1bmN0aW9uKGEpe3ZhciBjPVtdO2Zvcih2YXIgYj0wO2I8YS5sZW5ndGg7YisrKXtjLnB1c2goYVtiXSl9cmV0dXJuIGN9LGpvaW46ZnVuY3Rpb24oZCxiKXt0cnl7cmV0dXJuIGIuam9pbihkKX1jYXRjaChjKXt2YXIgYT1iWzBdfHwiIjtBSlMubWFwKGIsZnVuY3Rpb24oZil7YSs9ZCtmfSwxKTtyZXR1cm4gYSsiIn19LGlzSW46ZnVuY3Rpb24oYyxiKXt2YXIgYT1BSlMuZ2V0SW5kZXgoYyxiKTtpZihhIT0tMSl7cmV0dXJuIHRydWV9ZWxzZXtyZXR1cm4gZmFsc2V9fSxnZXRJbmRleDpmdW5jdGlvbihkLGIsYyl7Zm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe2lmKGMmJmMoYlthXSl8fGQ9PWJbYV0pe3JldHVybiBhfX1yZXR1cm4gLTF9LGdldEZpcnN0OmZ1bmN0aW9uKGEpe2lmKGEubGVuZ3RoPjApe3JldHVybiBhWzBdfWVsc2V7cmV0dXJuIG51bGx9fSxnZXRMYXN0OmZ1bmN0aW9uKGEpe2lmKGEubGVuZ3RoPjApe3JldHVybiBhW2EubGVuZ3RoLTFdfWVsc2V7cmV0dXJuIG51bGx9fSxnZXRSYW5kb206ZnVuY3Rpb24oYSl7cmV0dXJuIGFbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKmEubGVuZ3RoKV19LHVwZGF0ZTpmdW5jdGlvbihiLGEpe2Zvcih2YXIgYyBpbiBhKXtiW2NdPWFbY119cmV0dXJuIGJ9LGZsYXR0ZW5MaXN0OmZ1bmN0aW9uKGcpe3ZhciBmPWZhbHNlO3ZhciBhPVtdO2Zvcih2YXIgYj0wO2I8Zy5sZW5ndGg7YisrKXt2YXIgaD1nW2JdO2lmKEFKUy5pc0FycmF5KGgpKXtmPXRydWU7YnJlYWt9aWYoaCE9bnVsbCl7YS5wdXNoKGgpfX1pZighZil7cmV0dXJuIGF9dmFyIGM9W107dmFyIGQ9ZnVuY3Rpb24oaixpKXtBSlMubWFwKGksZnVuY3Rpb24obCl7aWYobD09bnVsbCl7fWVsc2V7aWYoQUpTLmlzQXJyYXkobCkpe2QoaixsKX1lbHNle2oucHVzaChsKX19fSl9O2QoYyxnKTtyZXR1cm4gY30sZmxhdHRlbkVsbUFyZ3VtZW50czpmdW5jdGlvbihhKXtyZXR1cm4gQUpTLmZsYXR0ZW5MaXN0KEFKUy5mb3JjZUFycmF5KGEpKX0sbWFwOmZ1bmN0aW9uKGcsZixiLGQpe3ZhciBjPTAsYT1nLmxlbmd0aDtpZihiKXtjPWJ9aWYoZCl7YT1kfWZvcihjO2M8YTtjKyspe3ZhciBoPWYoZ1tjXSxjKTtpZihoIT11bmRlZmluZWQpe3JldHVybiBofX19LHJtYXA6ZnVuY3Rpb24oZCxjKXt2YXIgYj1kLmxlbmd0aC0xLGE9MDtmb3IoYjtiPj1hO2ItLSl7dmFyIGY9Yy5hcHBseShudWxsLFtkW2JdLGJdKTtpZihmIT11bmRlZmluZWQpe3JldHVybiBmfX19LGZpbHRlcjpmdW5jdGlvbihmLGMsYSxiKXt2YXIgZD1bXTtBSlMubWFwKGYsZnVuY3Rpb24oZyl7aWYoYyhnKSl7ZC5wdXNoKGcpfX0sYSxiKTtyZXR1cm4gZH0scGFydGlhbDpmdW5jdGlvbihiKXt2YXIgYT1BSlMuJEZBKGFyZ3VtZW50cyk7YS5zaGlmdCgpO3JldHVybiBmdW5jdGlvbigpe2E9YS5jb25jYXQoQUpTLiRGQShhcmd1bWVudHMpKTtyZXR1cm4gYi5hcHBseSh3aW5kb3csYSl9fSxnZXRFbGVtZW50OmZ1bmN0aW9uKGEpe2lmKEFKUy5pc1N0cmluZyhhKXx8QUpTLmlzTnVtYmVyKGEpKXtyZXR1cm4gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYSl9ZWxzZXtyZXR1cm4gYX19LGdldEVsZW1lbnRzOmZ1bmN0aW9uKCl7dmFyIGE9QUpTLmZsYXR0ZW5FbG1Bcmd1bWVudHMoYXJndW1lbnRzKTt2YXIgZD1uZXcgQXJyYXkoKTtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKyl7dmFyIGI9QUpTLmdldEVsZW1lbnQoYVtjXSk7ZC5wdXNoKGIpfXJldHVybiBkfSxnZXRFbGVtZW50c0J5VGFnQW5kQ2xhc3NOYW1lOmZ1bmN0aW9uKGEsYixuLGgpe3ZhciBnPVtdO2lmKCFBSlMuaXNEZWZpbmVkKG4pKXtuPWRvY3VtZW50fWlmKCFBSlMuaXNEZWZpbmVkKGEpKXthPSIqIn12YXIgZixkO2lmKGImJmRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUpe3ZhciBjPW4uZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShiKTtpZihhPT0iKiIpe2c9QUpTLmZvcmNlQXJyYXkoYyl9ZWxzZXt2YXIgbT1jLmxlbmd0aDtmb3IoZj0wO2Y8bTtmKyspe2lmKGNbZl0ubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09YSl7Zy5wdXNoKGNbZl0pfX19fWVsc2V7dmFyIGM9bi5nZXRFbGVtZW50c0J5VGFnTmFtZShhKTtpZighYil7Zz1BSlMuZm9yY2VBcnJheShjKX1lbHNle3ZhciBtPWMubGVuZ3RoO3ZhciBsPW5ldyBSZWdFeHAoIihefFxccykiK2IrIihcXHN8JCkiKTtmb3IoZj0wO2Y8bTtmKyspe2lmKGwudGVzdChjW2ZdLmNsYXNzTmFtZSl8fCFiKXtnLnB1c2goY1tmXSl9fX19aWYoaCl7cmV0dXJuIGdbMF19ZWxzZXtyZXR1cm4gZ319LG5vZGVOYW1lOmZ1bmN0aW9uKGEpe3JldHVybiBhLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCl9LF9ub2RlV2FsazpmdW5jdGlvbihnLGQsYixmKXt2YXIgYz1mKGcpO3ZhciBhO2lmKGQmJmIpe2E9ZnVuY3Rpb24oaCl7cmV0dXJuIEFKUy5ub2RlTmFtZShoKT09ZCYmQUpTLmhhc0NsYXNzKGgsYil9fWVsc2V7aWYoZCl7YT1mdW5jdGlvbihoKXtyZXR1cm4gQUpTLm5vZGVOYW1lKGgpPT1kfX1lbHNle2E9ZnVuY3Rpb24oaCl7cmV0dXJuIEFKUy5oYXNDbGFzcyhoLGIpfX19aWYoYShnKSl7cmV0dXJuIGd9d2hpbGUoYyl7aWYoYShjKSl7cmV0dXJuIGN9Yz1mKGMpfXJldHVybiBudWxsfSxnZXRQYXJlbnRCeXRjOmZ1bmN0aW9uKGMsYixhKXtyZXR1cm4gQUpTLl9ub2RlV2FsayhjLGIsYSxmdW5jdGlvbihkKXtpZihkKXtyZXR1cm4gZC5wYXJlbnROb2RlfX0pfSxnZXRDaGlsZEJ5dGM6ZnVuY3Rpb24oZCxjLGIpe3ZhciBhPUFKUy4kYnl0YyhjLGIsZCk7aWYoYS5sZW5ndGg+MCl7cmV0dXJuIGFbMF19ZWxzZXtyZXR1cm4gbnVsbH19LGhhc1BhcmVudDpmdW5jdGlvbihjLGIsYSl7aWYoYz09Yil7cmV0dXJuIHRydWV9aWYoYT09MCl7cmV0dXJuIGZhbHNlfXJldHVybiBBSlMuaGFzUGFyZW50KGMucGFyZW50Tm9kZSxiLGEtMSl9LGdldFByZXZpb3VzU2libGluZ0J5dGM6ZnVuY3Rpb24oYyxiLGEpe3JldHVybiBBSlMuX25vZGVXYWxrKGMsYixhLGZ1bmN0aW9uKGQpe3JldHVybiBkLnByZXZpb3VzU2libGluZ30pfSxnZXROZXh0U2libGluZ0J5dGM6ZnVuY3Rpb24oYyxiLGEpe3JldHVybiBBSlMuX25vZGVXYWxrKGMsYixhLGZ1bmN0aW9uKGQpe3JldHVybiBkLm5leHRTaWJsaW5nfSl9LGdldEJvZHk6ZnVuY3Rpb24oKXtyZXR1cm4gQUpTLiRieXRjKCJib2R5IilbMF19LGdldEZvcm1FbGVtZW50OmZ1bmN0aW9uKGMsYSl7Yz1BSlMuJChjKTt2YXIgYj1udWxsO0FKUy5tYXAoYy5lbGVtZW50cyxmdW5jdGlvbihkKXtpZihkLm5hbWUmJmQubmFtZT09YSl7Yj1kfX0pO2lmKGIpe3JldHVybiBifUFKUy5tYXAoQUpTLiRieXRjKCJzZWxlY3QiLG51bGwsYyksZnVuY3Rpb24oZCl7aWYoZC5uYW1lJiZkLm5hbWU9PWEpe2I9ZH19KTtyZXR1cm4gYn0sZ2V0U2VsZWN0VmFsdWU6ZnVuY3Rpb24oYSl7dmFyIGE9QUpTLiQoYSk7cmV0dXJuIGEub3B0aW9uc1thLnNlbGVjdGVkSW5kZXhdLnZhbHVlfSxkb2N1bWVudEluc2VydDpmdW5jdGlvbihhKXtpZih0eXBlb2YoYSk9PSJzdHJpbmciKXthPUFKUy5IVE1MMkRPTShhKX1kb2N1bWVudC53cml0ZSgnPHNwYW4gaWQ9ImR1bW15X2hvbGRlciI+PC9zcGFuPicpO0FKUy5zd2FwRE9NKEFKUy4kKCJkdW1teV9ob2xkZXIiKSxhKX0sYXBwZW5kQ2hpbGROb2RlczpmdW5jdGlvbihhKXtpZihhcmd1bWVudHMubGVuZ3RoPj0yKXtBSlMubWFwKGFyZ3VtZW50cyxmdW5jdGlvbihiKXtpZihBSlMuaXNTdHJpbmcoYikpe2I9QUpTLlROKGIpfWlmKEFKUy5pc0RlZmluZWQoYikpe2EuYXBwZW5kQ2hpbGQoYil9fSwxKX1yZXR1cm4gYX0sYXBwZW5kVG9Ub3A6ZnVuY3Rpb24oZCl7dmFyIGI9QUpTLmZsYXR0ZW5FbG1Bcmd1bWVudHMoYXJndW1lbnRzKS5zbGljZSgxKTtpZihiLmxlbmd0aD49MSl7dmFyIGM9ZC5maXJzdENoaWxkO2lmKGMpe3doaWxlKHRydWUpe3ZhciBhPWIuc2hpZnQoKTtpZihhKXtBSlMuaW5zZXJ0QmVmb3JlKGEsYyl9ZWxzZXticmVha319fWVsc2V7QUpTLkFDTi5hcHBseShudWxsLGFyZ3VtZW50cyl9fXJldHVybiBkfSxyZXBsYWNlQ2hpbGROb2RlczpmdW5jdGlvbihiKXt2YXIgYTt3aGlsZSgoYT1iLmZpcnN0Q2hpbGQpKXtBSlMuc3dhcERPTShhLG51bGwpfWlmKGFyZ3VtZW50cy5sZW5ndGg8Mil7cmV0dXJuIGJ9ZWxzZXtyZXR1cm4gQUpTLmFwcGVuZENoaWxkTm9kZXMuYXBwbHkobnVsbCxhcmd1bWVudHMpfXJldHVybiBifSxpbnNlcnRBZnRlcjpmdW5jdGlvbihiLGEpe2EucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYixhLm5leHRTaWJsaW5nKTtyZXR1cm4gYn0saW5zZXJ0QmVmb3JlOmZ1bmN0aW9uKGIsYSl7YS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShiLGEpO3JldHVybiBifSxzd2FwRE9NOmZ1bmN0aW9uKGEsYyl7YT1BSlMuZ2V0RWxlbWVudChhKTt2YXIgYj1hLnBhcmVudE5vZGU7aWYoYyl7Yz1BSlMuZ2V0RWxlbWVudChjKTtiLnJlcGxhY2VDaGlsZChjLGEpfWVsc2V7Yi5yZW1vdmVDaGlsZChhKX1yZXR1cm4gY30scmVtb3ZlRWxlbWVudDpmdW5jdGlvbigpe3ZhciBhPUFKUy5mbGF0dGVuRWxtQXJndW1lbnRzKGFyZ3VtZW50cyk7dHJ5e0FKUy5tYXAoYSxmdW5jdGlvbihjKXtpZigkKGMpKXtBSlMuc3dhcERPTShjLG51bGwpfX0pfWNhdGNoKGIpe319LGNyZWF0ZURPTTpmdW5jdGlvbihmLGQpe3ZhciBnPTAsYTt2YXIgbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGYpO3ZhciBiPWRbMF07aWYoQUpTLmlzRGljdChkW2ddKSl7Zm9yKGsgaW4gYil7YT1iW2tdO2lmKGs9PSJzdHlsZSJ8fGs9PSJzIil7bC5zdHlsZS5jc3NUZXh0PWF9ZWxzZXtpZihrPT0iYyJ8fGs9PSJjbGFzcyJ8fGs9PSJjbGFzc05hbWUiKXtsLmNsYXNzTmFtZT1hfWVsc2V7bC5zZXRBdHRyaWJ1dGUoayxhKX19fWcrK31pZihiPT1udWxsKXtnPTF9Zm9yKHZhciBjPWc7YzxkLmxlbmd0aDtjKyspe3ZhciBhPWRbY107aWYoYSl7dmFyIGg9dHlwZW9mKGEpO2lmKGg9PSJzdHJpbmcifHxoPT0ibnVtYmVyIil7YT1BSlMuVE4oYSl9bC5hcHBlbmRDaGlsZChhKX19cmV0dXJuIGx9LF9jcmVhdGVEb21TaG9ydGN1dHM6ZnVuY3Rpb24oKXt2YXIgYj1bInVsIiwibGkiLCJ0ZCIsInRyIiwidGgiLCJ0Ym9keSIsInRhYmxlIiwiaW5wdXQiLCJzcGFuIiwiYiIsImEiLCJkaXYiLCJpbWciLCJidXR0b24iLCJoMSIsImgyIiwiaDMiLCJoNCIsImg1IiwiaDYiLCJiciIsInRleHRhcmVhIiwiZm9ybSIsInAiLCJzZWxlY3QiLCJvcHRpb24iLCJvcHRncm91cCIsImlmcmFtZSIsInNjcmlwdCIsImNlbnRlciIsImRsIiwiZHQiLCJkZCIsInNtYWxsIiwicHJlIiwiaSIsImxhYmVsIiwidGhlYWQiXTt2YXIgYT1mdW5jdGlvbihjKXtBSlNbYy50b1VwcGVyQ2FzZSgpXT1mdW5jdGlvbigpe3JldHVybiBBSlMuY3JlYXRlRE9NLmFwcGx5KG51bGwsW2MsYXJndW1lbnRzXSl9fTtBSlMubWFwKGIsYSk7QUpTLlROPWZ1bmN0aW9uKGMpe3JldHVybiBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShjKX19LHNldEhUTUw6ZnVuY3Rpb24oKXt2YXIgYT1BSlMuZmxhdHRlbkVsbUFyZ3VtZW50cyhhcmd1bWVudHMpO3ZhciBiPWEucG9wKCk7QUpTLm1hcChhLGZ1bmN0aW9uKGMpe2lmKGMpe2MuaW5uZXJIVE1MPWJ9fSk7cmV0dXJuIGFbMF19LHNldFZpc2liaWxpdHk6ZnVuY3Rpb24oKXt2YXIgYT1BSlMuZmxhdHRlbkVsbUFyZ3VtZW50cyhhcmd1bWVudHMpO3ZhciBiPWEucG9wKCkmJiJ2aXNpYmxlInx8ImhpZGRlbiI7QUpTLnNldFN0eWxlKGEsInZpc2liaWxpdHkiLGIpfSxzaG93RWxlbWVudDpmdW5jdGlvbigpe0FKUy5zZXRTdHlsZShBSlMuZmxhdHRlbkVsbUFyZ3VtZW50cyhhcmd1bWVudHMpLCJkaXNwbGF5IiwiIil9LGhpZGVFbGVtZW50OmZ1bmN0aW9uKGEpe0FKUy5zZXRTdHlsZShBSlMuZmxhdHRlbkVsbUFyZ3VtZW50cyhhcmd1bWVudHMpLCJkaXNwbGF5Iiwibm9uZSIpfSxpc0VsZW1lbnRIaWRkZW46ZnVuY3Rpb24oYSl7cmV0dXJuKChhLnN0eWxlLmRpc3BsYXk9PSJub25lIil8fChhLnN0eWxlLnZpc2liaWxpdHk9PSJoaWRkZW4iKSl9LGlzRWxlbWVudFNob3duOmZ1bmN0aW9uKGEpe3JldHVybiAhQUpTLmlzRWxlbWVudEhpZGRlbihhKX0sc2V0U3R5bGU6ZnVuY3Rpb24oKXt2YXIgYj1BSlMuZmxhdHRlbkVsbUFyZ3VtZW50cyhhcmd1bWVudHMpO3ZhciBkPWIucG9wKCk7dmFyIGE9WyJ0b3AiLCJsZWZ0IiwicmlnaHQiLCJ3aWR0aCIsImhlaWdodCJdO2lmKEFKUy5pc09iamVjdChkKSl7QUpTLm1hcChiLGZ1bmN0aW9uKGYpe0FKUy5tYXAoQUpTLmtleXMoZCksZnVuY3Rpb24oaCl7dmFyIGc9ZFtoXTtpZihBSlMuaXNJbihoLGEpKXtnPUFKUy5pc1N0cmluZyhnKSYmZ3x8ZysicHgifWYuc3R5bGVbaF09Z30pfSl9ZWxzZXt2YXIgYz1iLnBvcCgpO0FKUy5tYXAoYixmdW5jdGlvbihmKXtpZihBSlMuaXNJbihjLGEpKXtkPUFKUy5pc1N0cmluZyhkKSYmZHx8ZCsicHgifWYuc3R5bGVbY109ZH0pfX0sX19jc3NEaW06ZnVuY3Rpb24oYSxiKXt2YXIgYT1BSlMuJEZBKGEpO2Euc3BsaWNlKGEubGVuZ3RoLTEsMCxiKTtBSlMuc2V0U3R5bGUuYXBwbHkobnVsbCxhKX0sc2V0V2lkdGg6ZnVuY3Rpb24oKXtyZXR1cm4gQUpTLl9fY3NzRGltKGFyZ3VtZW50cywid2lkdGgiKX0sc2V0SGVpZ2h0OmZ1bmN0aW9uKCl7cmV0dXJuIEFKUy5fX2Nzc0RpbShhcmd1bWVudHMsImhlaWdodCIpfSxzZXRMZWZ0OmZ1bmN0aW9uKCl7cmV0dXJuIEFKUy5fX2Nzc0RpbShhcmd1bWVudHMsImxlZnQiKX0sc2V0UmlnaHQ6ZnVuY3Rpb24oKXtyZXR1cm4gQUpTLl9fY3NzRGltKGFyZ3VtZW50cywicmlnaHQiKX0sc2V0VG9wOmZ1bmN0aW9uKCl7cmV0dXJuIEFKUy5fX2Nzc0RpbShhcmd1bWVudHMsInRvcCIpfSxzZXRDbGFzczpmdW5jdGlvbigpe3ZhciBhPUFKUy5mbGF0dGVuRWxtQXJndW1lbnRzKGFyZ3VtZW50cyk7dmFyIGI9YS5wb3AoKTtBSlMubWFwKGEsZnVuY3Rpb24oYyl7Yy5jbGFzc05hbWU9Yn0pfSxhZGRDbGFzczpmdW5jdGlvbigpe3ZhciBiPUFKUy5mbGF0dGVuRWxtQXJndW1lbnRzKGFyZ3VtZW50cyk7dmFyIGE9Yi5wb3AoKTt2YXIgYz1mdW5jdGlvbihkKXtpZighbmV3IFJlZ0V4cCgiKF58XFxzKSIrYSsiKFxcc3wkKSIpLnRlc3QoZC5jbGFzc05hbWUpKXtkLmNsYXNzTmFtZSs9KGQuY2xhc3NOYW1lPyIgIjoiIikrYX19O0FKUy5tYXAoYixmdW5jdGlvbihkKXtjKGQpfSl9LGhhc0NsYXNzOmZ1bmN0aW9uKGMsYSl7aWYoIWN8fCFjLmNsYXNzTmFtZSl7cmV0dXJuIGZhbHNlfXZhciBiPWMuY2xhc3NOYW1lO3JldHVybihiLmxlbmd0aD4wJiYoYj09YXx8bmV3IFJlZ0V4cCgiKF58XFxzKSIrYSsiKFxcc3wkKSIpLnRlc3QoYikpKX0scmVtb3ZlQ2xhc3M6ZnVuY3Rpb24oKXt2YXIgYz1BSlMuZmxhdHRlbkVsbUFyZ3VtZW50cyhhcmd1bWVudHMpO3ZhciBhPWMucG9wKCk7dmFyIGI9ZnVuY3Rpb24oZCl7ZC5jbGFzc05hbWU9ZC5jbGFzc05hbWUucmVwbGFjZShuZXcgUmVnRXhwKCIoXnxcXHMpIithLCJnIiksIiIpfTtBSlMubWFwKGMsZnVuY3Rpb24oZCl7YihkKX0pfSxzZXRPcGFjaXR5OmZ1bmN0aW9uKGIsYSl7aWYoYT09MSl7Yi5zdHlsZS5vcGFjaXR5PTE7Yi5zdHlsZS5maWx0ZXI9IiJ9ZWxzZXtiLnN0eWxlLm9wYWNpdHk9YTtiLnN0eWxlLmZpbHRlcj0iYWxwaGEob3BhY2l0eT0iK2EqMTAwKyIpIn19LEhUTUwyRE9NOmZ1bmN0aW9uKGEsYyl7dmFyIGI9QUpTLkRJVigpO2IuaW5uZXJIVE1MPWE7aWYoYyl7cmV0dXJuIGIuY2hpbGROb2Rlc1swXX1lbHNle3JldHVybiBifX0scHJlbG9hZEltYWdlczpmdW5jdGlvbigpe0FKUy5BRVYod2luZG93LCJsb2FkIixBSlMuJHAoZnVuY3Rpb24oYSl7QUpTLm1hcChhLGZ1bmN0aW9uKGMpe3ZhciBiPW5ldyBJbWFnZSgpO2Iuc3JjPWN9KX0sYXJndW1lbnRzKSl9LFJORDpmdW5jdGlvbihhLGQsYyl7Yz1jfHx3aW5kb3c7dmFyIGI9ZnVuY3Rpb24oZixsKXtsPWwuc3BsaXQoInwiKTt2YXIgaj1kW2xbMF1dO2Zvcih2YXIgaD0xO2g8bC5sZW5ndGg7aCsrKXtqPWNbbFtoXV0oail9aWYoaj09IiIpe3JldHVybiIifWlmKGo9PTB8fGo9PS0xKXtqKz0iIn1yZXR1cm4ganx8Zn07cmV0dXJuIGEucmVwbGFjZSgvJVwoKFtBLVphLXowLTlffC5dKilcKS9nLGIpfSxnZXRYTUxIdHRwUmVxdWVzdDpmdW5jdGlvbigpe3ZhciBiPVtmdW5jdGlvbigpe3JldHVybiBuZXcgWE1MSHR0cFJlcXVlc3QoKX0sZnVuY3Rpb24oKXtyZXR1cm4gbmV3IEFjdGl2ZVhPYmplY3QoIk1zeG1sMi5YTUxIVFRQIil9LGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBBY3RpdmVYT2JqZWN0KCJNaWNyb3NvZnQuWE1MSFRUUCIpfSxmdW5jdGlvbigpe3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAuNC4wIil9LGZ1bmN0aW9uKCl7dGhyb3ciQnJvd3NlciBkb2VzIG5vdCBzdXBwb3J0IFhNTEh0dHBSZXF1ZXN0In1dO2Zvcih2YXIgYT0wO2E8Yi5sZW5ndGg7YSsrKXt2YXIgYz1iW2FdO3RyeXtyZXR1cm4gYygpfWNhdGNoKGQpe319fSxnZXRSZXF1ZXN0OmZ1bmN0aW9uKGEsYyl7dmFyIGI9QUpTLmdldFhNTEh0dHBSZXF1ZXN0KCk7aWYoYS5tYXRjaCgvXmh0dHBzPzpcL1wvLyk9PW51bGwpe2lmKEFKUy5CQVNFX1VSTCE9IiIpe2lmKEFKUy5CQVNFX1VSTC5sYXN0SW5kZXhPZigiLyIpIT1BSlMuQkFTRV9VUkwubGVuZ3RoLTEpe0FKUy5CQVNFX1VSTCs9Ii8ifWE9QUpTLkJBU0VfVVJMK2F9fWlmKCFjKXtjPSJQT1NUIn1yZXR1cm4gbmV3IEFKU0RlZmVycmVkKGIsYyxhKX0sc2VyaWFsaXplSlNPTjpmdW5jdGlvbihqKXt2YXIgYT10eXBlb2Yoaik7aWYoYT09InVuZGVmaW5lZCIpe3JldHVybiJudWxsIn1lbHNle2lmKGE9PSJudW1iZXIifHxhPT0iYm9vbGVhbiIpe3JldHVybiBqKyIifWVsc2V7aWYoaj09PW51bGwpe3JldHVybiJudWxsIn19fWlmKGE9PSJzdHJpbmciKXtyZXR1cm4gQUpTLl9yZXByU3RyaW5nKGopfWlmKGE9PSJvYmplY3QiJiZqLmdldEZ1bGxZZWFyKXtyZXR1cm4gQUpTLl9yZXByRGF0ZShqKX12YXIgZj1hcmd1bWVudHMuY2FsbGVlO2lmKGEhPSJmdW5jdGlvbiImJnR5cGVvZihqLmxlbmd0aCk9PSJudW1iZXIiKXt2YXIgZD1bXTtmb3IodmFyIGM9MDtjPGoubGVuZ3RoO2MrKyl7dmFyIGg9ZihqW2NdKTtpZih0eXBlb2YoaCkhPSJzdHJpbmciKXtoPSJ1bmRlZmluZWQifWQucHVzaChoKX1yZXR1cm4iWyIrZC5qb2luKCIsIikrIl0ifWlmKGE9PSJmdW5jdGlvbiIpe3JldHVybiBudWxsfWQ9W107Zm9yKHZhciBiIGluIGope3ZhciBnO2lmKHR5cGVvZihiKT09Im51bWJlciIpe2c9JyInK2IrJyInfWVsc2V7aWYodHlwZW9mKGIpPT0ic3RyaW5nIil7Zz1BSlMuX3JlcHJTdHJpbmcoYil9ZWxzZXtjb250aW51ZX19aD1mKGpbYl0pO2lmKHR5cGVvZihoKSE9InN0cmluZyIpe2NvbnRpbnVlfWQucHVzaChnKyI6IitoKX1yZXR1cm4ieyIrZC5qb2luKCIsIikrIn0ifSxsb2FkSlNPTjpmdW5jdGlvbihiLGMsYSl7dmFyIGc9QUpTLmdldFJlcXVlc3QoYixjKTt2YXIgZj1mdW5jdGlvbihoLGQpe3ZhciBpPWQucmVzcG9uc2VUZXh0O2lmKGk9PSJFcnJvciIpe2cuZXJyYmFjayhkKX1lbHNle3JldHVybiBBSlMuZXZhbFR4dChpKX19O2cuYWRkQ2FsbGJhY2soZik7cmV0dXJuIGd9LGV2YWxUeHQ6ZnVuY3Rpb24odHh0KXt0cnl7cmV0dXJuIGV2YWwoIigiK3R4dCsiKSIpfWNhdGNoKGUpe3JldHVybiBldmFsKHR4dCl9fSxldmFsU2NyaXB0VGFnczpmdW5jdGlvbihodG1sKXt2YXIgc2NyaXB0X2RhdGE9aHRtbC5tYXRjaCgvPHNjcmlwdC4qPz4oKFxufFxyfC4pKj8pPFwvc2NyaXB0Pi9nKTtpZihzY3JpcHRfZGF0YSE9bnVsbCl7Zm9yKHZhciBpPTA7aTxzY3JpcHRfZGF0YS5sZW5ndGg7aSsrKXt2YXIgc2NyaXB0X29ubHk9c2NyaXB0X2RhdGFbaV0ucmVwbGFjZSgvPHNjcmlwdC4qPz4vZywiIik7c2NyaXB0X29ubHk9c2NyaXB0X29ubHkucmVwbGFjZSgvPFwvc2NyaXB0Pi9nLCIiKTtldmFsKHNjcmlwdF9vbmx5KX19fSxlbmNvZGVBcmd1bWVudHM6ZnVuY3Rpb24oYSl7dmFyIGI9W107Zm9yKGsgaW4gYSl7Yi5wdXNoKGsrIj0iK0FKUy51cmxlbmNvZGUoYVtrXSkpfXJldHVybiBiLmpvaW4oIiYiKX0sX3JlcHJTdHJpbmc6ZnVuY3Rpb24oYSl7cmV0dXJuKCciJythLnJlcGxhY2UoLyhbIlxcXSkvZywiXFwkMSIpKyciJykucmVwbGFjZSgvW1xmXS9nLCJcXGYiKS5yZXBsYWNlKC9bXGJdL2csIlxcYiIpLnJlcGxhY2UoL1tcbl0vZywiXFxuIikucmVwbGFjZSgvW1x0XS9nLCJcXHQiKS5yZXBsYWNlKC9bXHJdL2csIlxcciIpfSxfcmVwckRhdGU6ZnVuY3Rpb24oYyl7dmFyIGQ9Yy5nZXRVVENGdWxsWWVhcigpO3ZhciBhPWMuZ2V0VVRDRGF0ZSgpO3ZhciBmPWMuZ2V0VVRDTW9udGgoKSsxO3ZhciBiPWZ1bmN0aW9uKGcpe2lmKGc8MTApe2c9IjAiK2d9cmV0dXJuIGd9O3JldHVybiciJytkKyItIitmKyItIithKyJUIitiKGMuZ2V0VVRDSG91cnMoKSkrIjoiK2IoYy5nZXRVVENNaW51dGVzKCkpKyI6IitiKGMuZ2V0VVRDU2Vjb25kcygpKSsnIid9LGdldE1vdXNlUG9zOmZ1bmN0aW9uKGIpe3ZhciBhPTA7dmFyIGM9MDtpZighYil7dmFyIGI9d2luZG93LmV2ZW50fWlmKGIucGFnZVh8fGIucGFnZVkpe2E9Yi5wYWdlWDtjPWIucGFnZVl9ZWxzZXtpZihiLmNsaWVudFh8fGIuY2xpZW50WSl7YT1iLmNsaWVudFgrZG9jdW1lbnQuYm9keS5zY3JvbGxMZWZ0K2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0O2M9Yi5jbGllbnRZK2RvY3VtZW50LmJvZHkuc2Nyb2xsVG9wK2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3B9fXJldHVybnt4OmEseTpjfX0sZ2V0U2Nyb2xsVG9wOmZ1bmN0aW9uKCl7dmFyIGE7aWYoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wKXthPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3B9ZWxzZXtpZihkb2N1bWVudC5ib2R5KXthPWRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wfX1yZXR1cm4gYX0sYWJzb2x1dGVQb3NpdGlvbjpmdW5jdGlvbihjKXtpZighYyl7cmV0dXJue3g6MCx5OjB9fWlmKGMuc2Nyb2xsTGVmdCl7cmV0dXJue3g6Yy5zY3JvbGxMZWZ0LHk6Yy5zY3JvbGxUb3B9fWVsc2V7aWYoYy5jbGllbnRYKXtyZXR1cm57eDpjLmNsaWVudFgseTpjLmNsaWVudFl9fX12YXIgYj17eDpjLm9mZnNldExlZnQseTpjLm9mZnNldFRvcH07aWYoYy5vZmZzZXRQYXJlbnQpe3ZhciBhPWMub2Zmc2V0UGFyZW50O3doaWxlKGEpe2IueCs9YS5vZmZzZXRMZWZ0O2IueSs9YS5vZmZzZXRUb3A7YT1hLm9mZnNldFBhcmVudH19aWYoQUpTLmlzU2FmYXJpKCkmJmMuc3R5bGUucG9zaXRpb249PSJhYnNvbHV0ZSIpe2IueC09ZG9jdW1lbnQuYm9keS5vZmZzZXRMZWZ0O2IueS09ZG9jdW1lbnQuYm9keS5vZmZzZXRUb3B9cmV0dXJuIGJ9LGdldFdpbmRvd1NpemU6ZnVuY3Rpb24oYyl7Yz1jfHxkb2N1bWVudDt2YXIgYixhO2lmKHNlbGYuaW5uZXJIZWlnaHQpe2I9c2VsZi5pbm5lcldpZHRoO2E9c2VsZi5pbm5lckhlaWdodH1lbHNle2lmKGMuZG9jdW1lbnRFbGVtZW50JiZjLmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQpe2I9Yy5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGg7YT1jLmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHR9ZWxzZXtpZihjLmJvZHkpe2I9Yy5ib2R5LmNsaWVudFdpZHRoO2E9Yy5ib2R5LmNsaWVudEhlaWdodH19fXJldHVybnt3OmIsaDphfX0saXNPdmVybGFwcGluZzpmdW5jdGlvbihnLGMpe3ZhciBqPUFKUy5hYnNvbHV0ZVBvc2l0aW9uKGcpO3ZhciBpPUFKUy5hYnNvbHV0ZVBvc2l0aW9uKGMpO3ZhciBtPWoueTt2YXIgbz1qLng7dmFyIGY9bytnLm9mZnNldFdpZHRoO3ZhciBkPW0rZy5vZmZzZXRIZWlnaHQ7dmFyIGw9aS55O3ZhciBuPWkueDt2YXIgYj1uK2Mub2Zmc2V0V2lkdGg7dmFyIGE9bCtjLm9mZnNldEhlaWdodDt2YXIgaD1mdW5jdGlvbihwKXtpZihwPjApe3JldHVybiIrIn1lbHNle2lmKHA8MCl7cmV0dXJuIi0ifWVsc2V7cmV0dXJuIDB9fX07aWYoKGgobS1hKSE9aChkLWwpKSYmKGgoby1iKSE9aChmLW4pKSl7cmV0dXJuIHRydWV9cmV0dXJuIGZhbHNlfSxnZXRFdmVudEVsbTpmdW5jdGlvbihiKXtpZihiJiYhYi50eXBlJiYhYi5rZXlDb2RlKXtyZXR1cm4gYn12YXIgYTtpZighYil7dmFyIGI9d2luZG93LmV2ZW50fWlmKGIudGFyZ2V0KXthPWIudGFyZ2V0fWVsc2V7aWYoYi5zcmNFbGVtZW50KXthPWIuc3JjRWxlbWVudH19aWYoYSYmYS5ub2RlVHlwZT09Myl7YT1hLnBhcmVudE5vZGV9cmV0dXJuIGF9LHNldEV2ZW50S2V5OmZ1bmN0aW9uKGEpe2lmKCFhKXthPXdpbmRvdy5ldmVudH1hLmtleT1hLmtleUNvZGU/YS5rZXlDb2RlOmEuY2hhckNvZGU7YS5jdHJsPWEuY3RybEtleTthLmFsdD1hLmFsdEtleTthLm1ldGE9YS5tZXRhS2V5O2Euc2hpZnQ9YS5zaGlmdEtleX0sb25FdmVudDpmdW5jdGlvbihjLGIsYSxkKXtjPUFKUy4kQShjKTtBSlMubWFwKGMsZnVuY3Rpb24oZil7aWYoZi5ldmVudHMpe2YuZXZlbnRzW2JdPXt9fX0pO3JldHVybiBBSlMuQUVWKGMsYixhLGQpfSxyZWFkeV9ib3VuZDpmYWxzZSxpc19yZWFkeTpmYWxzZSxiaW5kUmVhZHk6ZnVuY3Rpb24oKXtpZihBSlMucmVhZHlfYm91bmQpe3JldHVybn1BSlMucmVhZHlfYm91bmQ9dHJ1ZTtpZihkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixmdW5jdGlvbigpe2RvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGFyZ3VtZW50cy5jYWxsZWUsZmFsc2UpO0FKUy5yZWFkeSgpfSxmYWxzZSl9ZWxzZXtpZihkb2N1bWVudC5hdHRhY2hFdmVudCl7ZG9jdW1lbnQuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsZnVuY3Rpb24oKXtpZihkb2N1bWVudC5yZWFkeVN0YXRlPT09ImNvbXBsZXRlIil7ZG9jdW1lbnQuZGV0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsYXJndW1lbnRzLmNhbGxlZSk7QUpTLnJlYWR5KCl9fSk7aWYoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsJiZ3aW5kb3c9PXdpbmRvdy50b3ApeyhmdW5jdGlvbigpe2lmKEFKUy5pc19yZWFkeSl7cmV0dXJufXRyeXtkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZG9TY3JvbGwoImxlZnQiKX1jYXRjaChhKXtzZXRUaW1lb3V0KGFyZ3VtZW50cy5jYWxsZWUsMCk7cmV0dXJufUFKUy5yZWFkeSgpfSkoKX19fUFKUy5BRVYod2luZG93LCJsb2FkIixBSlMucmVhZHkpfSxyZWFkeV9saXN0OltdLHJlYWR5OmZ1bmN0aW9uKGEpe2lmKEFKUy5pc19yZWFkeSl7cmV0dXJufUFKUy5pc19yZWFkeT10cnVlO0FKUy5tYXAoQUpTLnJlYWR5X2xpc3QsZnVuY3Rpb24oYil7Yi5jYWxsKHdpbmRvdyl9KTtBSlMucmVhZHlfbGlzdD1bXX0sX2ZfZ3VpZDowLF93aXBlX2d1aWQ6MCxhZGRFdmVudExpc3RlbmVyOmZ1bmN0aW9uKGMsYSxiLGQpe2M9QUpTLiRBKGMpO2E9QUpTLiRBKGEpO0FKUy5tYXAoYyxmdW5jdGlvbihmKXtpZihkKXtiLmxpc3Rlbl9vbmNlPXRydWV9aWYoIWIuJGZfZ3VpZCl7Yi4kZl9ndWlkPUFKUy5fZl9ndWlkKyt9aWYoIWYuZXZlbnRzKXtmLmV2ZW50cz17fX1BSlMubWFwKGEsZnVuY3Rpb24oaCl7dmFyIGc9Zi5ldmVudHNbaF07aWYoZj09d2luZG93JiZoPT0ibG9hZCIpe0FKUy5yZWFkeV9saXN0LnB1c2goYil9ZWxzZXtpZihoPT0ibGF6eV9sb2FkIil7aD0ibG9hZCJ9aWYoIWcpe2c9Zi5ldmVudHNbaF09e307aWYoZlsib24iK2hdKXtnWzBdPWZbIm9uIitoXX19aWYoIWYuX3dpcGVfZ3VpZCl7Zi5fd2lwZV9ndWlkPUFKUy5fd2lwZV9ndWlkKyt9Z1tiLiRmX2d1aWRdPWI7Zlsib24iK2hdPUFKUy5oYW5kbGVFdmVudH19KTtmPW51bGx9KX0saGFuZGxlRXZlbnQ6ZnVuY3Rpb24oaCl7dmFyIGc9dGhpcztoPWh8fHdpbmRvdy5ldmVudDtpZighaCl7cmV0dXJufWlmKCFoLmN0cmwmJmgudHlwZS5pbmRleE9mKCJrZXkiKSE9LTEpe0FKUy5zZXRFdmVudEtleShoKX12YXIgYj10aGlzLmV2ZW50c1toLnR5cGVdO3ZhciBhPVtdO3ZhciBkPXRydWU7Zm9yKHZhciBjIGluIGIpe3ZhciBmPXRoaXMuJCRoYW5kbGVFdmVudD1iW2NdO2lmKGY9PUFKUy5oYW5kbGVFdmVudCl7Y29udGludWV9ZD1mKGgpO2lmKGYubGlzdGVuX29uY2Upe2EucHVzaChmKX19aWYoYS5sZW5ndGg+MCl7QUpTLm1hcChhLGZ1bmN0aW9uKGkpe2RlbGV0ZSBnLmV2ZW50c1toLnR5cGVdW2kuJGZfZ3VpZF19KX1yZXR1cm4gZH0scmVtb3ZlRXZlbnRMaXN0ZW5lcjpmdW5jdGlvbihjLGIsYSl7Yz1BSlMuJEEoYyk7bWFwKGMsZnVuY3Rpb24oZCl7aWYoZC5ldmVudHMmJmQuZXZlbnRzW2JdKXtkZWxldGUgZC5ldmVudHNbYl1bYS4kZl9ndWlkXX19KX0sYmluZDpmdW5jdGlvbihiLGEsYyl7Yi5fY3Njb3BlPWE7cmV0dXJuIEFKUy5fZ2V0UmVhbFNjb3BlKGIsYyl9LGJpbmRNZXRob2RzOmZ1bmN0aW9uKGIpe2Zvcih2YXIgYSBpbiBiKXt2YXIgYz1iW2FdO2lmKHR5cGVvZihjKT09ImZ1bmN0aW9uIil7YlthXT1BSlMuJGIoYyxiKX19fSxwcmV2ZW50RGVmYXVsdDpmdW5jdGlvbihhKXtpZihBSlMuaXNJZSgpKXt3aW5kb3cuZXZlbnQucmV0dXJuVmFsdWU9ZmFsc2V9ZWxzZXthLnByZXZlbnREZWZhdWx0KCl9fSxfbGlzdGVuT25jZTpmdW5jdGlvbihkLGIsYSl7dmFyIGM9ZnVuY3Rpb24oKXtBSlMucmVtb3ZlRXZlbnRMaXN0ZW5lcihkLGIsYyk7YShhcmd1bWVudHMpfTtyZXR1cm4gY30sX2dldFJlYWxTY29wZTpmdW5jdGlvbihiLGMpe2M9QUpTLiRBKGMpO3ZhciBhPWIuX2NzY29wZXx8d2luZG93O3JldHVybiBmdW5jdGlvbigpe3RyeXt2YXIgZD1BSlMuJEZBKGFyZ3VtZW50cykuY29uY2F0KGMpO3JldHVybiBiLmFwcGx5KGEsZCl9Y2F0Y2goZil7fX19LF9yZWNjcnVpbmdfdG9zOnt9LHNldFNpbmdsZVRpbWVvdXQ6ZnVuY3Rpb24oYixjLGEpe3ZhciBkPUFKUy5fcmVjY3J1aW5nX3Rvc1tiXTtpZihkKXtjbGVhclRpbWVvdXQoZCl9QUpTLl9yZWNjcnVpbmdfdG9zW2JdPXNldFRpbWVvdXQoYyxhKX0sa2V5czpmdW5jdGlvbihiKXt2YXIgYT1bXTtmb3IodmFyIGMgaW4gYil7YS5wdXNoKGMpfXJldHVybiBhfSx2YWx1ZXM6ZnVuY3Rpb24oYil7dmFyIGE9W107Zm9yKHZhciBjIGluIGIpe2EucHVzaChiW2NdKX1yZXR1cm4gYX0sdXJsZW5jb2RlOmZ1bmN0aW9uKGEpe3JldHVybiBlbmNvZGVVUklDb21wb25lbnQoQUpTLmlzRGVmaW5lZChhKSYmYS50b1N0cmluZygpfHwiIil9LHVybGRlY29kZTpmdW5jdGlvbihiKXt2YXIgYT1kZWNvZGVVUklDb21wb25lbnQoQUpTLmlzRGVmaW5lZChiKSYmYi50b1N0cmluZygpfHwiIik7cmV0dXJuIGEucmVwbGFjZSgvXCsvZywiICIpfSxpc0RlZmluZWQ6ZnVuY3Rpb24oYSl7cmV0dXJuKGEhPSJ1bmRlZmluZWQiJiZhIT1udWxsKX0saXNBcnJheTpmdW5jdGlvbihiKXt0cnl7cmV0dXJuIGIgaW5zdGFuY2VvZiBBcnJheX1jYXRjaChhKXtyZXR1cm4gZmFsc2V9fSxpc1N0cmluZzpmdW5jdGlvbihhKXtyZXR1cm4odHlwZW9mIGE9PSJzdHJpbmciKX0saXNOdW1iZXI6ZnVuY3Rpb24oYSl7cmV0dXJuKHR5cGVvZiBhPT0ibnVtYmVyIil9LGlzT2JqZWN0OmZ1bmN0aW9uKGEpe3JldHVybih0eXBlb2YgYT09Im9iamVjdCIpfSxpc0Z1bmN0aW9uOmZ1bmN0aW9uKGEpe3JldHVybih0eXBlb2YgYT09ImZ1bmN0aW9uIil9LGlzRGljdDpmdW5jdGlvbihiKXt2YXIgYT1TdHJpbmcoYik7cmV0dXJuIGEuaW5kZXhPZigiIE9iamVjdCIpIT0tMX0sZXhwb3J0VG9HbG9iYWxTY29wZTpmdW5jdGlvbihhKXthPWF8fHdpbmRvdztmb3IoZSBpbiBBSlMpe2lmKGUhPSJhZGRFdmVudExpc3RlbmVyIil7YVtlXT1BSlNbZV19fX0sbG9nOmZ1bmN0aW9uKGIpe3RyeXtpZih3aW5kb3cuX2ZpcmVidWcpe3dpbmRvdy5fZmlyZWJ1Zy5sb2coYil9ZWxzZXtpZih3aW5kb3cuY29uc29sZSl7Y29uc29sZS5sb2coYil9fX1jYXRjaChhKXt9fSxzdHJpcDpmdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKC9eXHMrLywiIikucmVwbGFjZSgvXHMrJC9nLCIiKX0sdHJpbV9pZl9uZWVkZWQ6ZnVuY3Rpb24oYyxhLGIpe2lmKGMubGVuZ3RoPmEpe3JldHVybiBjLnN1YnN0cmluZygwLGEpKyhifHwiLi4uIil9cmV0dXJuIGN9fTtBSlMuQ2xhc3M9ZnVuY3Rpb24oYSl7dmFyIGI9ZnVuY3Rpb24oKXtpZihhcmd1bWVudHNbMF0hPSJub19pbml0Iil7cmV0dXJuIHRoaXMuaW5pdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fTtiLnByb3RvdHlwZT1hO0FKUy51cGRhdGUoYixBSlMuQ2xhc3MucHJvdG90eXBlKTtyZXR1cm4gYn07QUpTLkNsYXNzLnByb3RvdHlwZT17ZXh0ZW5kOmZ1bmN0aW9uKGEpe3ZhciBiPW5ldyB0aGlzKCJub19pbml0Iik7Zm9yKGsgaW4gYSl7dmFyIGM9YltrXTt2YXIgZD1hW2tdO2lmKGMmJmMhPWQmJnR5cGVvZiBkPT0iZnVuY3Rpb24iKXtkPXRoaXMuX3BhcmVudGl6ZShkLGMpfWJba109ZH1yZXR1cm4gbmV3IEFKUy5DbGFzcyhiKX0saW1wbGVtZW50OmZ1bmN0aW9uKGEpe0FKUy51cGRhdGUodGhpcy5wcm90b3R5cGUsYSl9LF9wYXJlbnRpemU6ZnVuY3Rpb24oYixhKXtyZXR1cm4gZnVuY3Rpb24oKXt0aGlzLnBhcmVudD1hO3JldHVybiBiLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19fTtBSlMuJD1BSlMuZ2V0RWxlbWVudDtBSlMuJCQ9QUpTLmdldEVsZW1lbnRzO0FKUy4kZj1BSlMuZ2V0Rm9ybUVsZW1lbnQ7QUpTLiRiPUFKUy5iaW5kO0FKUy4kcD1BSlMucGFydGlhbDtBSlMuJEZBPUFKUy5mb3JjZUFycmF5O0FKUy4kQT1BSlMuY3JlYXRlQXJyYXk7QUpTLkRJPUFKUy5kb2N1bWVudEluc2VydDtBSlMuQUNOPUFKUy5hcHBlbmRDaGlsZE5vZGVzO0FKUy5SQ049QUpTLnJlcGxhY2VDaGlsZE5vZGVzO0FKUy5BRVY9QUpTLmFkZEV2ZW50TGlzdGVuZXI7QUpTLlJFVj1BSlMucmVtb3ZlRXZlbnRMaXN0ZW5lcjtBSlMuJGJ5dGM9QUpTLmdldEVsZW1lbnRzQnlUYWdBbmRDbGFzc05hbWU7QUpTLiRBUD1BSlMuYWJzb2x1dGVQb3NpdGlvbjtBSlMubG9hZEpTT05Eb2M9QUpTLmxvYWRKU09OO0FKUy5xdWVyeUFyZ3VtZW50cz1BSlMuZW5jb2RlQXJndW1lbnRzO0FKUy4kZ3A9QUpTLmdldFBhcmVudEJ5dGM7QUpTLiRnYz1BSlMuZ2V0Q2hpbGRCeXRjO0FKUy4kc3Y9QUpTLnNldFZpc2liaWxpdHk7QUpTLmdlbmVyYWxFcnJvcmJhY2s9bnVsbDtBSlMuZ2VuZXJhbENhbGxiYWNrPW51bGw7QUpTRGVmZXJyZWQ9ZnVuY3Rpb24oYixjLGEpe3RoaXMuY2FsbGJhY2tzPVtdO3RoaXMuZXJyYmFja3M9W107dGhpcy5yZXE9Yjt0aGlzLmh0dHBfbWV0aG9kPWM7dGhpcy5odHRwX3VybD1hfTtBSlNEZWZlcnJlZC5wcm90b3R5cGU9e2V4Y0NhbGxiYWNrU2VxOmZ1bmN0aW9uKGMsZil7dmFyIGQ9Yy5yZXNwb25zZVRleHQ7aWYoQUpTLmdlbmVyYWxDYWxsYmFjayl7ZD1BSlMuZ2VuZXJhbENhbGxiYWNrKGMsZik7aWYoIWQpe3JldHVybn19d2hpbGUoZi5sZW5ndGg+MCl7dmFyIGI9Zi5wb3AoKTt2YXIgYT1iKGQsYyk7aWYoYSl7ZD1hfWVsc2V7aWYoYT09ZmFsc2Upe2JyZWFrfX19fSxjYWxsYmFjazpmdW5jdGlvbigpe3RoaXMuZXhjQ2FsbGJhY2tTZXEodGhpcy5yZXEsdGhpcy5jYWxsYmFja3MpfSxlcnJiYWNrOmZ1bmN0aW9uKCl7aWYodGhpcy5lcnJiYWNrcy5sZW5ndGg9PTApe2lmKEFKUy5hamF4RXJyb3JIYW5kbGVyKXtBSlMuYWpheEVycm9ySGFuZGxlcihyZXEucmVzcG9uc2VUZXh0LHJlcSl9ZWxzZXt2YXIgYj10aGlzLnJlcS5yZXNwb25zZVRleHQuc3Vic3RyaW5nKDAsMjAwKTtpZihBSlMuc3RyaXAoYikmJmIuaW5kZXhPZigiPGh0bWwiKT09LTEpe2FsZXJ0KCJFcnJvciBlbmNvdW50ZXJlZDpcbiIrYil9fX1pZihBSlMuZ2VuZXJhbEVycm9yYmFjayl7dmFyIGE9QUpTLmdlbmVyYWxFcnJvcmJhY2sodGhpcy5yZXEpO2lmKCFhKXtyZXR1cm59fXRoaXMuZXhjQ2FsbGJhY2tTZXEodGhpcy5yZXEsdGhpcy5lcnJiYWNrcyl9LGFkZEVycmJhY2s6ZnVuY3Rpb24oYSl7dGhpcy5lcnJiYWNrcy51bnNoaWZ0KGEpfSxhZGRDYWxsYmFjazpmdW5jdGlvbihhKXt0aGlzLmNhbGxiYWNrcy51bnNoaWZ0KGEpfSxhYm9ydDpmdW5jdGlvbigpe3RoaXMucmVxLmFib3J0KCl9LGFkZENhbGxiYWNrczpmdW5jdGlvbihiLGEpe3RoaXMuYWRkQ2FsbGJhY2soYik7dGhpcy5hZGRFcnJiYWNrKGEpfSxfb25yZWFkeXN0YXRlY2hhbmdlOmZ1bmN0aW9uKCl7dmFyIGI9dGhpcy5yZXE7dmFyIGY9dGhpcztpZihiLnJlYWR5U3RhdGU9PTQpe3ZhciBhPSIiO3RyeXthPWIuc3RhdHVzfWNhdGNoKGMpe31pZihhPT0yMDB8fGE9PTMwNHx8Yi5yZXNwb25zZVRleHQ9PW51bGwpe3RoaXMuY2FsbGJhY2soKX1lbHNle3RoaXMuZXJyYmFjaygpfX19LHNlbmRSZXE6ZnVuY3Rpb24oZCl7dmFyIGM9dGhpcy5yZXE7dmFyIGI9dGhpcy5odHRwX21ldGhvZDt2YXIgYT10aGlzLmh0dHBfdXJsO2lmKGI9PSJQT1NUIil7Yy5vcGVuKGIsYSx0cnVlKTtjLm9ucmVhZHlzdGF0ZWNoYW5nZT1BSlMuJGIodGhpcy5fb25yZWFkeXN0YXRlY2hhbmdlLHRoaXMpO2Muc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC10eXBlIiwiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIik7aWYoQUpTLmlzT2JqZWN0KGQpKXtjLnNlbmQoQUpTLmVuY29kZUFyZ3VtZW50cyhkKSl9ZWxzZXtpZihBSlMuaXNEZWZpbmVkKGQpKXtjLnNlbmQoZCl9ZWxzZXtjLnNlbmQoIiIpfX19ZWxzZXtjLm9wZW4oIkdFVCIsYSx0cnVlKTtjLm9ucmVhZHlzdGF0ZWNoYW5nZT1BSlMuJGIodGhpcy5fb25yZWFkeXN0YXRlY2hhbmdlLHRoaXMpO2Muc2VuZChudWxsKX19fTtBSlMuX2NyZWF0ZURvbVNob3J0Y3V0cygpfXNjcmlwdF9sb2FkZWQ9dHJ1ZTtBSlMuZXhwb3J0VG9HbG9iYWxTY29wZSgpO0FKUy5iaW5kUmVhZHkoKTsKc2NyaXB0X2xvYWRlZD10cnVlOw==]]></data>
	</file>
	<file>
	  <filename>/style/greybox/AJS_fx.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[QUpTLmZ4PXtfc2hhZGVzOnswOiJmZmZmZmYiLDE6ImZmZmZlZSIsMjoiZmZmZmRkIiwzOiJmZmZmY2MiLDQ6ImZmZmZiYiIsNToiZmZmZmFhIiw2OiJmZmZmOTkifSxoaWdobGlnaHQ6ZnVuY3Rpb24oYyxhKXt2YXIgYj1uZXcgQUpTLmZ4LkJhc2UoKTtiLmVsbT1BSlMuJChjKTtiLm9wdGlvbnMuZHVyYXRpb249NjAwO2Iuc2V0T3B0aW9ucyhhKTtBSlMudXBkYXRlKGIse2luY3JlYXNlOmZ1bmN0aW9uKCl7aWYodGhpcy5ub3c9PTcpe2Muc3R5bGUuYmFja2dyb3VuZENvbG9yPSIjZmZmIn1lbHNle2Muc3R5bGUuYmFja2dyb3VuZENvbG9yPSIjIitBSlMuZnguX3NoYWRlc1tNYXRoLmZsb29yKHRoaXMubm93KV19fX0pO3JldHVybiBiLmN1c3RvbSg2LDApfSxmYWRlSW46ZnVuY3Rpb24oYyxhKXthPWF8fHt9O2lmKCFhLmZyb20pe2EuZnJvbT0wO0FKUy5zZXRPcGFjaXR5KGMsMCl9aWYoIWEudG8pe2EudG89MX12YXIgYj1uZXcgQUpTLmZ4LlN0eWxlKGMsIm9wYWNpdHkiLGEpO3JldHVybiBiLmN1c3RvbShhLmZyb20sYS50byl9LGZhZGVPdXQ6ZnVuY3Rpb24oYyxhKXthPWF8fHt9O2lmKCFhLmZyb20pe2EuZnJvbT0xfWlmKCFhLnRvKXthLnRvPTB9YS5kdXJhdGlvbj0zMDA7dmFyIGI9bmV3IEFKUy5meC5TdHlsZShjLCJvcGFjaXR5IixhKTtyZXR1cm4gYi5jdXN0b20oYS5mcm9tLGEudG8pfSxzZXRXaWR0aDpmdW5jdGlvbihjLGEpe3ZhciBiPW5ldyBBSlMuZnguU3R5bGUoYywid2lkdGgiLGEpO3JldHVybiBiLmN1c3RvbShhLmZyb20sYS50byl9LHNldEhlaWdodDpmdW5jdGlvbihjLGEpe3ZhciBiPW5ldyBBSlMuZnguU3R5bGUoYywiaGVpZ2h0IixhKTtyZXR1cm4gYi5jdXN0b20oYS5mcm9tLGEudG8pfX07QUpTLmZ4LkJhc2U9bmV3IEFKUy5DbGFzcyh7aW5pdDpmdW5jdGlvbihhKXt0aGlzLm9wdGlvbnM9e29uU3RhcnQ6ZnVuY3Rpb24oKXt9LG9uQ29tcGxldGU6ZnVuY3Rpb24oKXt9LHRyYW5zaXRpb246QUpTLmZ4LlRyYW5zaXRpb25zLnNpbmVJbk91dCxkdXJhdGlvbjo1MDAsd2FpdDp0cnVlLGZwczo1MH07QUpTLnVwZGF0ZSh0aGlzLm9wdGlvbnMsYSk7QUpTLmJpbmRNZXRob2RzKHRoaXMpfSxzZXRPcHRpb25zOmZ1bmN0aW9uKGEpe0FKUy51cGRhdGUodGhpcy5vcHRpb25zLGEpfSxzdGVwOmZ1bmN0aW9uKCl7dmFyIGE9bmV3IERhdGUoKS5nZXRUaW1lKCk7aWYoYTx0aGlzLnRpbWUrdGhpcy5vcHRpb25zLmR1cmF0aW9uKXt0aGlzLmNUaW1lPWEtdGhpcy50aW1lO3RoaXMuc2V0Tm93KCl9ZWxzZXtzZXRUaW1lb3V0KEFKUy4kYih0aGlzLm9wdGlvbnMub25Db21wbGV0ZSx0aGlzLFt0aGlzLmVsbV0pLDEwKTt0aGlzLmNsZWFyVGltZXIoKTt0aGlzLm5vdz10aGlzLnRvfXRoaXMuaW5jcmVhc2UoKX0sc2V0Tm93OmZ1bmN0aW9uKCl7dGhpcy5ub3c9dGhpcy5jb21wdXRlKHRoaXMuZnJvbSx0aGlzLnRvKX0sY29tcHV0ZTpmdW5jdGlvbihjLGIpe3ZhciBhPWItYztyZXR1cm4gdGhpcy5vcHRpb25zLnRyYW5zaXRpb24odGhpcy5jVGltZSxjLGEsdGhpcy5vcHRpb25zLmR1cmF0aW9uKX0sY2xlYXJUaW1lcjpmdW5jdGlvbigpe2NsZWFySW50ZXJ2YWwodGhpcy50aW1lcik7dGhpcy50aW1lcj1udWxsO3JldHVybiB0aGlzfSxfc3RhcnQ6ZnVuY3Rpb24oYixhKXtpZighdGhpcy5vcHRpb25zLndhaXQpe3RoaXMuY2xlYXJUaW1lcigpfWlmKHRoaXMudGltZXIpe3JldHVybn1zZXRUaW1lb3V0KEFKUy4kcCh0aGlzLm9wdGlvbnMub25TdGFydCx0aGlzLmVsbSksMTApO3RoaXMuZnJvbT1iO3RoaXMudG89YTt0aGlzLnRpbWU9bmV3IERhdGUoKS5nZXRUaW1lKCk7dGhpcy50aW1lcj1zZXRJbnRlcnZhbCh0aGlzLnN0ZXAsTWF0aC5yb3VuZCgxMDAwL3RoaXMub3B0aW9ucy5mcHMpKTtyZXR1cm4gdGhpc30sY3VzdG9tOmZ1bmN0aW9uKGIsYSl7cmV0dXJuIHRoaXMuX3N0YXJ0KGIsYSl9LHNldDpmdW5jdGlvbihhKXt0aGlzLm5vdz1hO3RoaXMuaW5jcmVhc2UoKTtyZXR1cm4gdGhpc30sc2V0U3R5bGU6ZnVuY3Rpb24oYyxhLGIpe2lmKHRoaXMucHJvcGVydHk9PSJvcGFjaXR5Iil7QUpTLnNldE9wYWNpdHkoYyxiKX1lbHNle0FKUy5zZXRTdHlsZShjLGEsYil9fX0pO0FKUy5meC5TdHlsZT1BSlMuZnguQmFzZS5leHRlbmQoe2luaXQ6ZnVuY3Rpb24oYyxiLGEpe3RoaXMucGFyZW50KCk7dGhpcy5lbG09Yzt0aGlzLnNldE9wdGlvbnMoYSk7dGhpcy5wcm9wZXJ0eT1ifSxpbmNyZWFzZTpmdW5jdGlvbigpe3RoaXMuc2V0U3R5bGUodGhpcy5lbG0sdGhpcy5wcm9wZXJ0eSx0aGlzLm5vdyl9fSk7QUpTLmZ4LlN0eWxlcz1BSlMuZnguQmFzZS5leHRlbmQoe2luaXQ6ZnVuY3Rpb24oYixhKXt0aGlzLnBhcmVudCgpO3RoaXMuZWxtPUFKUy4kKGIpO3RoaXMuc2V0T3B0aW9ucyhhKTt0aGlzLm5vdz17fX0sc2V0Tm93OmZ1bmN0aW9uKCl7Zm9yKHAgaW4gdGhpcy5mcm9tKXt0aGlzLm5vd1twXT10aGlzLmNvbXB1dGUodGhpcy5mcm9tW3BdLHRoaXMudG9bcF0pfX0sY3VzdG9tOmZ1bmN0aW9uKGEpe2lmKHRoaXMudGltZXImJnRoaXMub3B0aW9ucy53YWl0KXtyZXR1cm59dmFyIGM9e307dmFyIGI9e307Zm9yKHAgaW4gYSl7Y1twXT1hW3BdWzBdO2JbcF09YVtwXVsxXX1yZXR1cm4gdGhpcy5fc3RhcnQoYyxiKX0saW5jcmVhc2U6ZnVuY3Rpb24oKXtmb3IodmFyIGEgaW4gdGhpcy5ub3cpe3RoaXMuc2V0U3R5bGUodGhpcy5lbG0sYSx0aGlzLm5vd1thXSl9fX0pO0FKUy5meC5UcmFuc2l0aW9ucz17bGluZWFyOmZ1bmN0aW9uKGUsYSxnLGYpe3JldHVybiBnKmUvZithfSxzaW5lSW5PdXQ6ZnVuY3Rpb24oZSxhLGcsZil7cmV0dXJuIC1nLzIqKE1hdGguY29zKE1hdGguUEkqZS9mKS0xKSthfX07c2NyaXB0X2xvYWRlZD10cnVlOwpzY3JpcHRfbG9hZGVkPXRydWU7]]></data>
	</file>
	<file>
	  <filename>/style/greybox/gb_scripts.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[dmFyIEdCX0NVUlJFTlQ9bnVsbDtHQl9oaWRlPWZ1bmN0aW9uKGEpe0dCX0NVUlJFTlQuaGlkZShhKX07R3JleUJveD1uZXcgQUpTLkNsYXNzKHtpbml0OmZ1bmN0aW9uKGMpe3RoaXMudXNlX2Z4PUFKUy5meDt0aGlzLnR5cGU9InBhZ2UiO3RoaXMub3ZlcmxheV9jbGlja19jbG9zZT1mYWxzZTt0aGlzLnNhbHQ9MDt0aGlzLnJvb3RfZGlyPUdCX1JPT1RfRElSO3RoaXMuY2FsbGJhY2tfZm5zPVtdO3RoaXMucmVsb2FkX29uX2Nsb3NlPWZhbHNlO3RoaXMuc3JjX2xvYWRlcj10aGlzLnJvb3RfZGlyKyJsb2FkZXJfZnJhbWUuaHRtbCI7dmFyIGI9d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lLmluZGV4T2YoInd3dyIpO3ZhciBhPXRoaXMuc3JjX2xvYWRlci5pbmRleE9mKCJ3d3ciKTtpZihiIT0tMSYmYT09LTEpe3RoaXMuc3JjX2xvYWRlcj10aGlzLnNyY19sb2FkZXIucmVwbGFjZSgiOi8vIiwiOi8vd3d3LiIpfWlmKGI9PS0xJiZhIT0tMSl7dGhpcy5zcmNfbG9hZGVyPXRoaXMuc3JjX2xvYWRlci5yZXBsYWNlKCI6Ly93d3cuIiwiOi8vIil9dGhpcy5zaG93X2xvYWRpbmc9dHJ1ZTtBSlMudXBkYXRlKHRoaXMsYyl9LGFkZENhbGxiYWNrOmZ1bmN0aW9uKGEpe2lmKGEpe3RoaXMuY2FsbGJhY2tfZm5zLnB1c2goYSl9fSxzaG93OmZ1bmN0aW9uKGEpe0dCX0NVUlJFTlQ9dGhpczt0aGlzLnVybD1hO3ZhciBiPVtBSlMuJGJ5dGMoIm9iamVjdCIpLEFKUy4kYnl0Yygic2VsZWN0IildO0FKUy5tYXAoQUpTLmZsYXR0ZW5MaXN0KGIpLGZ1bmN0aW9uKGMpe2Muc3R5bGUudmlzaWJpbGl0eT0iaGlkZGVuIn0pO3RoaXMuY3JlYXRlRWxlbWVudHMoKTtyZXR1cm4gZmFsc2V9LGhpZGU6ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcztzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIGQ9Yi5jYWxsYmFja19mbnM7aWYoZCE9W10pe0FKUy5tYXAoZCxmdW5jdGlvbihmKXtmKCl9KX1iLm9uSGlkZSgpO2lmKGIudXNlX2Z4KXt2YXIgZT1iLm92ZXJsYXk7QUpTLmZ4LmZhZGVPdXQoYi5vdmVybGF5LHtvbkNvbXBsZXRlOmZ1bmN0aW9uKCl7QUpTLnJlbW92ZUVsZW1lbnQoZSk7ZT1udWxsfSxkdXJhdGlvbjozMDB9KTtBSlMucmVtb3ZlRWxlbWVudChiLmdfd2luZG93KX1lbHNle0FKUy5yZW1vdmVFbGVtZW50KGIuZ193aW5kb3csYi5vdmVybGF5KX1iLnJlbW92ZUZyYW1lKCk7QUpTLlJFVih3aW5kb3csInNjcm9sbCIsX0dCX3NldE92ZXJsYXlEaW1lbnNpb24pO0FKUy5SRVYod2luZG93LCJyZXNpemUiLF9HQl91cGRhdGUpO3ZhciBjPVtBSlMuJGJ5dGMoIm9iamVjdCIpLEFKUy4kYnl0Yygic2VsZWN0IildO0FKUy5tYXAoQUpTLmZsYXR0ZW5MaXN0KGMpLGZ1bmN0aW9uKGYpe2Yuc3R5bGUudmlzaWJpbGl0eT0idmlzaWJsZSJ9KTtHQl9DVVJSRU5UPW51bGw7aWYoYi5yZWxvYWRfb25fY2xvc2Upe3dpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKX1pZihBSlMuaXNGdW5jdGlvbihhKSl7YSgpfX0sMTApfSx1cGRhdGU6ZnVuY3Rpb24oKXt0aGlzLnNldE92ZXJsYXlEaW1lbnNpb24oKTt0aGlzLnNldEZyYW1lU2l6ZSgpO3RoaXMuc2V0V2luZG93UG9zaXRpb24oKX0sY3JlYXRlRWxlbWVudHM6ZnVuY3Rpb24oKXt0aGlzLmluaXRPdmVybGF5KCk7dGhpcy5nX3dpbmRvdz1BSlMuRElWKHtpZDoiR0Jfd2luZG93In0pO0FKUy5oaWRlRWxlbWVudCh0aGlzLmdfd2luZG93KTtBSlMuZ2V0Qm9keSgpLmluc2VydEJlZm9yZSh0aGlzLmdfd2luZG93LHRoaXMub3ZlcmxheS5uZXh0U2libGluZyk7dGhpcy5pbml0RnJhbWUoKTt0aGlzLmluaXRIb29rKCk7dGhpcy51cGRhdGUoKTt2YXIgYT10aGlzO2lmKHRoaXMudXNlX2Z4KXtBSlMuZnguZmFkZUluKHRoaXMub3ZlcmxheSx7ZHVyYXRpb246MzAwLHRvOjAuNyxvbkNvbXBsZXRlOmZ1bmN0aW9uKCl7YS5vblNob3coKTtBSlMuc2hvd0VsZW1lbnQoYS5nX3dpbmRvdyk7YS5zdGFydExvYWRpbmcoKX19KX1lbHNle0FKUy5zZXRPcGFjaXR5KHRoaXMub3ZlcmxheSwwLjcpO0FKUy5zaG93RWxlbWVudCh0aGlzLmdfd2luZG93KTt0aGlzLm9uU2hvdygpO3RoaXMuc3RhcnRMb2FkaW5nKCl9QUpTLkFFVih3aW5kb3csInNjcm9sbCIsX0dCX3NldE92ZXJsYXlEaW1lbnNpb24pO0FKUy5BRVYod2luZG93LCJyZXNpemUiLF9HQl91cGRhdGUpfSxyZW1vdmVGcmFtZTpmdW5jdGlvbigpe3RyeXtBSlMucmVtb3ZlRWxlbWVudCh0aGlzLmlmcmFtZSl9Y2F0Y2goYSl7fXRoaXMuaWZyYW1lPW51bGx9LHN0YXJ0TG9hZGluZzpmdW5jdGlvbigpe3RoaXMuaWZyYW1lLnNyYz10aGlzLnNyY19sb2FkZXIrIj9zPSIrdGhpcy5zYWx0Kys7QUpTLnNob3dFbGVtZW50KHRoaXMuaWZyYW1lKX0sc2V0T3ZlcmxheURpbWVuc2lvbjpmdW5jdGlvbigpe3ZhciBiPUFKUy5nZXRXaW5kb3dTaXplKCk7aWYoQUpTLmlzTW96aWxsYSgpfHxBSlMuaXNPcGVyYSgpKXtBSlMuc2V0V2lkdGgodGhpcy5vdmVybGF5LCIxMDAlIil9ZWxzZXtBSlMuc2V0V2lkdGgodGhpcy5vdmVybGF5LGIudyl9dmFyIGE9TWF0aC5tYXgoQUpTLmdldFNjcm9sbFRvcCgpK2IuaCxBSlMuZ2V0U2Nyb2xsVG9wKCkrdGhpcy5oZWlnaHQpO2lmKGE8QUpTLmdldFNjcm9sbFRvcCgpKXtBSlMuc2V0SGVpZ2h0KHRoaXMub3ZlcmxheSxhKX1lbHNle0FKUy5zZXRIZWlnaHQodGhpcy5vdmVybGF5LEFKUy5nZXRTY3JvbGxUb3AoKStiLmgpfX0saW5pdE92ZXJsYXk6ZnVuY3Rpb24oKXt0aGlzLm92ZXJsYXk9QUpTLkRJVih7aWQ6IkdCX292ZXJsYXkifSk7aWYodGhpcy5vdmVybGF5X2NsaWNrX2Nsb3NlKXtBSlMuQUVWKHRoaXMub3ZlcmxheSwiY2xpY2siLEdCX2hpZGUpfUFKUy5zZXRPcGFjaXR5KHRoaXMub3ZlcmxheSwwKTtBSlMuZ2V0Qm9keSgpLmluc2VydEJlZm9yZSh0aGlzLm92ZXJsYXksQUpTLmdldEJvZHkoKS5maXJzdENoaWxkKX0saW5pdEZyYW1lOmZ1bmN0aW9uKCl7aWYoIXRoaXMuaWZyYW1lKXt2YXIgYT17bmFtZToiR0JfZnJhbWUiLCJjbGFzcyI6IkdCX2ZyYW1lIixmcmFtZUJvcmRlcjowfTtpZihBSlMuaXNJZSgpKXthLnNyYz0namF2YXNjcmlwdDpmYWxzZTtkb2N1bWVudC53cml0ZSgiIik7J310aGlzLmlmcmFtZT1BSlMuSUZSQU1FKGEpO3RoaXMubWlkZGxlX2NudD1BSlMuRElWKHsiY2xhc3MiOiJjb250ZW50In0sdGhpcy5pZnJhbWUpO3RoaXMudG9wX2NudD1BSlMuRElWKCk7dGhpcy5ib3R0b21fY250PUFKUy5ESVYoKTtBSlMuQUNOKHRoaXMuZ193aW5kb3csdGhpcy50b3BfY250LHRoaXMubWlkZGxlX2NudCx0aGlzLmJvdHRvbV9jbnQpfX0sb25IaWRlOmZ1bmN0aW9uKCl7fSxvblNob3c6ZnVuY3Rpb24oKXt9LHNldEZyYW1lU2l6ZTpmdW5jdGlvbigpe30sc2V0V2luZG93UG9zaXRpb246ZnVuY3Rpb24oKXt9LGluaXRIb29rOmZ1bmN0aW9uKCl7fX0pO19HQl91cGRhdGU9ZnVuY3Rpb24oKXtpZihHQl9DVVJSRU5UKXtHQl9DVVJSRU5ULnVwZGF0ZSgpfX07X0dCX3NldE92ZXJsYXlEaW1lbnNpb249ZnVuY3Rpb24oKXtpZihHQl9DVVJSRU5UKXtHQl9DVVJSRU5ULnNldE92ZXJsYXlEaW1lbnNpb24oKX19O0FKUy5wcmVsb2FkSW1hZ2VzKEdCX1JPT1RfRElSKyJpbmRpY2F0b3IuZ2lmIik7c2NyaXB0X2xvYWRlZD10cnVlO3ZhciBHQl9TRVRTPXt9O2Z1bmN0aW9uIGRlY29HcmV5Ym94TGlua3MoKXt2YXIgYT1BSlMuJGJ5dGMoImEiKTtBSlMubWFwKGEsZnVuY3Rpb24oYyl7aWYoYy5nZXRBdHRyaWJ1dGUoImhyZWYiKSYmYy5nZXRBdHRyaWJ1dGUoInJlbCIpKXt2YXIgYj1jLmdldEF0dHJpYnV0ZSgicmVsIik7aWYoYi5pbmRleE9mKCJnYl8iKT09MCl7dmFyIGY9Yi5tYXRjaCgvXHcrLylbMF07dmFyIGU9Yi5tYXRjaCgvXFsoLiopXF0vKVsxXTt2YXIgZD0wO3ZhciBnPXtjYXB0aW9uOmMudGl0bGV8fCIiLHVybDpjLmhyZWZ9O2lmKGY9PSJnYl9wYWdlc2V0Inx8Zj09ImdiX2ltYWdlc2V0Iil7aWYoIUdCX1NFVFNbZV0pe0dCX1NFVFNbZV09W119R0JfU0VUU1tlXS5wdXNoKGcpO2Q9R0JfU0VUU1tlXS5sZW5ndGh9aWYoZj09ImdiX3BhZ2VzZXQiKXtjLm9uY2xpY2s9ZnVuY3Rpb24oKXtHQl9zaG93RnVsbFNjcmVlblNldChHQl9TRVRTW2VdLGQpO3JldHVybiBmYWxzZX19aWYoZj09ImdiX2ltYWdlc2V0Iil7Yy5vbmNsaWNrPWZ1bmN0aW9uKCl7R0Jfc2hvd0ltYWdlU2V0KEdCX1NFVFNbZV0sZCk7cmV0dXJuIGZhbHNlfX1pZihmPT0iZ2JfaW1hZ2UiKXtjLm9uY2xpY2s9ZnVuY3Rpb24oKXtHQl9zaG93SW1hZ2UoZy5jYXB0aW9uLGcudXJsKTtyZXR1cm4gZmFsc2V9fWlmKGY9PSJnYl9wYWdlIil7Yy5vbmNsaWNrPWZ1bmN0aW9uKCl7dmFyIGg9ZS5zcGxpdCgvLCA/Lyk7R0Jfc2hvdyhnLmNhcHRpb24sZy51cmwscGFyc2VJbnQoaFsxXSkscGFyc2VJbnQoaFswXSkpO3JldHVybiBmYWxzZX19aWYoZj09ImdiX3BhZ2VfZnMiKXtjLm9uY2xpY2s9ZnVuY3Rpb24oKXtHQl9zaG93RnVsbFNjcmVlbihnLmNhcHRpb24sZy51cmwpO3JldHVybiBmYWxzZX19aWYoZj09ImdiX3BhZ2VfY2VudGVyIil7Yy5vbmNsaWNrPWZ1bmN0aW9uKCl7dmFyIGg9ZS5zcGxpdCgvLCA/Lyk7R0Jfc2hvd0NlbnRlcihnLmNhcHRpb24sZy51cmwscGFyc2VJbnQoaFsxXSkscGFyc2VJbnQoaFswXSkpO3JldHVybiBmYWxzZX19fX19KX1BSlMuQUVWKHdpbmRvdywibG9hZCIsZGVjb0dyZXlib3hMaW5rcyk7R0Jfc2hvd0ltYWdlPWZ1bmN0aW9uKGEsYyxlKXt2YXIgYj17d2lkdGg6MzAwLGhlaWdodDozMDAsdHlwZToiaW1hZ2UiLGZ1bGxzY3JlZW46ZmFsc2UsY2VudGVyX3dpbjp0cnVlLGNhcHRpb246YSxjYWxsYmFja19mbjplfTt2YXIgZD1uZXcgR0JfR2FsbGVyeShiKTtyZXR1cm4gZC5zaG93KGMpfTtHQl9zaG93UGFnZT1mdW5jdGlvbihhLGMsZSl7dmFyIGI9e3R5cGU6InBhZ2UiLGNhcHRpb246YSxjYWxsYmFja19mbjplLGZ1bGxzY3JlZW46dHJ1ZSxjZW50ZXJfd2luOmZhbHNlfTt2YXIgZD1uZXcgR0JfR2FsbGVyeShiKTtyZXR1cm4gZC5zaG93KGMpfTtHQl9HYWxsZXJ5PUdyZXlCb3guZXh0ZW5kKHtpbml0OmZ1bmN0aW9uKGEpe3RoaXMucGFyZW50KHt9KTt0aGlzLmltZ19jbG9zZT10aGlzLnJvb3RfZGlyKyJnX2Nsb3NlLmdpZiI7QUpTLnVwZGF0ZSh0aGlzLGEpO3RoaXMuYWRkQ2FsbGJhY2sodGhpcy5jYWxsYmFja19mbil9LGluaXRIb29rOmZ1bmN0aW9uKCl7QUpTLmFkZENsYXNzKHRoaXMuZ193aW5kb3csIkdCX0dhbGxlcnkiKTt2YXIgYz1BSlMuRElWKHsiY2xhc3MiOiJpbm5lciJ9KTt0aGlzLmhlYWRlcj1BSlMuRElWKHsiY2xhc3MiOiJHQl9oZWFkZXIifSxjKTtBSlMuc2V0T3BhY2l0eSh0aGlzLmhlYWRlciwwKTtBSlMuZ2V0Qm9keSgpLmluc2VydEJlZm9yZSh0aGlzLmhlYWRlcix0aGlzLm92ZXJsYXkubmV4dFNpYmxpbmcpO3ZhciBlPUFKUy5URCh7aWQ6IkdCX2NhcHRpb24iLCJjbGFzcyI6ImNhcHRpb24iLHdpZHRoOiI0MCUifSx0aGlzLmNhcHRpb24pO3ZhciBiPUFKUy5URCh7aWQ6IkdCX21pZGRsZSIsImNsYXNzIjoibWlkZGxlIix3aWR0aDoiMjAlIn0pO3ZhciBmPUFKUy5JTUcoe3NyYzp0aGlzLmltZ19jbG9zZX0pO0FKUy5BRVYoZiwiY2xpY2siLEdCX2hpZGUpO3ZhciBhPUFKUy5URCh7ImNsYXNzIjoiY2xvc2UiLHdpZHRoOiI0MCUifSxmKTt2YXIgZD1BSlMuVEJPRFkoQUpTLlRSKGUsYixhKSk7dmFyIGc9QUpTLlRBQkxFKHtjZWxsc3BhY2luZzoiMCIsY2VsbHBhZGRpbmc6MCxib3JkZXI6MH0sZCk7QUpTLkFDTihjLGcpO2lmKHRoaXMuZnVsbHNjcmVlbil7QUpTLkFFVih3aW5kb3csInNjcm9sbCIsQUpTLiRiKHRoaXMuc2V0V2luZG93UG9zaXRpb24sdGhpcykpfWVsc2V7QUpTLkFFVih3aW5kb3csInNjcm9sbCIsQUpTLiRiKHRoaXMuX3NldEhlYWRlclBvcyx0aGlzKSl9fSxzZXRGcmFtZVNpemU6ZnVuY3Rpb24oKXt2YXIgYj10aGlzLm92ZXJsYXkub2Zmc2V0V2lkdGg7dmFyIGE9QUpTLmdldFdpbmRvd1NpemUoKTtpZih0aGlzLmZ1bGxzY3JlZW4pe3RoaXMud2lkdGg9Yi00MDt0aGlzLmhlaWdodD1hLmgtODB9QUpTLnNldFdpZHRoKHRoaXMuaWZyYW1lLHRoaXMud2lkdGgpO0FKUy5zZXRIZWlnaHQodGhpcy5pZnJhbWUsdGhpcy5oZWlnaHQpO0FKUy5zZXRXaWR0aCh0aGlzLmhlYWRlcixiKX0sX3NldEhlYWRlclBvczpmdW5jdGlvbigpe0FKUy5zZXRUb3AodGhpcy5oZWFkZXIsQUpTLmdldFNjcm9sbFRvcCgpKzEwKX0sc2V0V2luZG93UG9zaXRpb246ZnVuY3Rpb24oKXt2YXIgYz10aGlzLm92ZXJsYXkub2Zmc2V0V2lkdGg7dmFyIGE9QUpTLmdldFdpbmRvd1NpemUoKTtBSlMuc2V0TGVmdCh0aGlzLmdfd2luZG93LCgoYy01MC10aGlzLndpZHRoKS8yKSk7dmFyIGQ9QUpTLmdldFNjcm9sbFRvcCgpKzU1O2lmKCF0aGlzLmNlbnRlcl93aW4pe0FKUy5zZXRUb3AodGhpcy5nX3dpbmRvdyxkKX1lbHNle3ZhciBiPSgoYS5oLXRoaXMuaGVpZ2h0KS8yKSsyMCtBSlMuZ2V0U2Nyb2xsVG9wKCk7aWYoYjwwKXtiPTB9aWYoZD5iKXtiPWR9QUpTLnNldFRvcCh0aGlzLmdfd2luZG93LGIpfXRoaXMuX3NldEhlYWRlclBvcygpfSxvbkhpZGU6ZnVuY3Rpb24oKXtBSlMucmVtb3ZlRWxlbWVudCh0aGlzLmhlYWRlcik7QUpTLnJlbW92ZUNsYXNzKHRoaXMuZ193aW5kb3csIkdCX0dhbGxlcnkiKX0sb25TaG93OmZ1bmN0aW9uKCl7aWYodGhpcy51c2VfZngpe0FKUy5meC5mYWRlSW4odGhpcy5oZWFkZXIse3RvOjF9KX1lbHNle0FKUy5zZXRPcGFjaXR5KHRoaXMuaGVhZGVyLDEpfX19KTtBSlMucHJlbG9hZEltYWdlcyhHQl9ST09UX0RJUisiZ19jbG9zZS5naWYiKTtHQl9zaG93RnVsbFNjcmVlblNldD1mdW5jdGlvbihlLGEsZCl7dmFyIGI9e3R5cGU6InBhZ2UiLGZ1bGxzY3JlZW46dHJ1ZSxjZW50ZXJfd2luOmZhbHNlfTt2YXIgYz1uZXcgR0JfU2V0cyhiLGUpO2MuYWRkQ2FsbGJhY2soZCk7Yy5zaG93U2V0KGEtMSk7cmV0dXJuIGZhbHNlfTtHQl9zaG93SW1hZ2VTZXQ9ZnVuY3Rpb24oZSxhLGQpe3ZhciBiPXt0eXBlOiJpbWFnZSIsZnVsbHNjcmVlbjpmYWxzZSxjZW50ZXJfd2luOnRydWUsd2lkdGg6MzAwLGhlaWdodDozMDB9O3ZhciBjPW5ldyBHQl9TZXRzKGIsZSk7Yy5hZGRDYWxsYmFjayhkKTtjLnNob3dTZXQoYS0xKTtyZXR1cm4gZmFsc2V9O0dCX1NldHM9R0JfR2FsbGVyeS5leHRlbmQoe2luaXQ6ZnVuY3Rpb24oYSxiKXt0aGlzLnBhcmVudChhKTtpZighdGhpcy5pbWdfbmV4dCl7dGhpcy5pbWdfbmV4dD10aGlzLnJvb3RfZGlyKyJuZXh0LmdpZiJ9aWYoIXRoaXMuaW1nX3ByZXYpe3RoaXMuaW1nX3ByZXY9dGhpcy5yb290X2RpcisicHJldi5naWYifXRoaXMuY3VycmVudF9zZXQ9Yn0sc2hvd1NldDpmdW5jdGlvbihhKXt0aGlzLmN1cnJlbnRfaW5kZXg9YTt2YXIgYj10aGlzLmN1cnJlbnRfc2V0W3RoaXMuY3VycmVudF9pbmRleF07dGhpcy5zaG93KGIudXJsKTt0aGlzLl9zZXRDYXB0aW9uKGIuY2FwdGlvbik7dGhpcy5idG5fcHJldj1BSlMuSU1HKHsiY2xhc3MiOiJsZWZ0IixzcmM6dGhpcy5pbWdfcHJldn0pO3RoaXMuYnRuX25leHQ9QUpTLklNRyh7ImNsYXNzIjoicmlnaHQiLHNyYzp0aGlzLmltZ19uZXh0fSk7QUpTLkFFVih0aGlzLmJ0bl9wcmV2LCJjbGljayIsQUpTLiRiKHRoaXMuc3dpdGNoUHJldix0aGlzKSk7QUpTLkFFVih0aGlzLmJ0bl9uZXh0LCJjbGljayIsQUpTLiRiKHRoaXMuc3dpdGNoTmV4dCx0aGlzKSk7R0JfU1RBVFVTPUFKUy5TUEFOKHsiY2xhc3MiOiJHQl9uYXZTdGF0dXMifSk7QUpTLkFDTihBSlMuJCgiR0JfbWlkZGxlIiksdGhpcy5idG5fcHJldixHQl9TVEFUVVMsdGhpcy5idG5fbmV4dCk7dGhpcy51cGRhdGVTdGF0dXMoKX0sdXBkYXRlU3RhdHVzOmZ1bmN0aW9uKCl7QUpTLnNldEhUTUwoR0JfU1RBVFVTLCh0aGlzLmN1cnJlbnRfaW5kZXgrMSkrIiAvICIrdGhpcy5jdXJyZW50X3NldC5sZW5ndGgpO2lmKHRoaXMuY3VycmVudF9pbmRleD09MCl7QUpTLmFkZENsYXNzKHRoaXMuYnRuX3ByZXYsImRpc2FibGVkIil9ZWxzZXtBSlMucmVtb3ZlQ2xhc3ModGhpcy5idG5fcHJldiwiZGlzYWJsZWQiKX1pZih0aGlzLmN1cnJlbnRfaW5kZXg9PXRoaXMuY3VycmVudF9zZXQubGVuZ3RoLTEpe0FKUy5hZGRDbGFzcyh0aGlzLmJ0bl9uZXh0LCJkaXNhYmxlZCIpfWVsc2V7QUpTLnJlbW92ZUNsYXNzKHRoaXMuYnRuX25leHQsImRpc2FibGVkIil9fSxfc2V0Q2FwdGlvbjpmdW5jdGlvbihhKXtBSlMuc2V0SFRNTChBSlMuJCgiR0JfY2FwdGlvbiIpLGEpfSx1cGRhdGVGcmFtZTpmdW5jdGlvbigpe3ZhciBhPXRoaXMuY3VycmVudF9zZXRbdGhpcy5jdXJyZW50X2luZGV4XTt0aGlzLl9zZXRDYXB0aW9uKGEuY2FwdGlvbik7dGhpcy51cmw9YS51cmw7dGhpcy5zdGFydExvYWRpbmcoKX0sc3dpdGNoUHJldjpmdW5jdGlvbigpe2lmKHRoaXMuY3VycmVudF9pbmRleCE9MCl7dGhpcy5jdXJyZW50X2luZGV4LS07dGhpcy51cGRhdGVGcmFtZSgpO3RoaXMudXBkYXRlU3RhdHVzKCl9fSxzd2l0Y2hOZXh0OmZ1bmN0aW9uKCl7aWYodGhpcy5jdXJyZW50X2luZGV4IT10aGlzLmN1cnJlbnRfc2V0Lmxlbmd0aC0xKXt0aGlzLmN1cnJlbnRfaW5kZXgrKzt0aGlzLnVwZGF0ZUZyYW1lKCk7dGhpcy51cGRhdGVTdGF0dXMoKX19fSk7QUpTLkFFVih3aW5kb3csImxvYWQiLGZ1bmN0aW9uKCl7QUpTLnByZWxvYWRJbWFnZXMoR0JfUk9PVF9ESVIrIm5leHQuZ2lmIixHQl9ST09UX0RJUisicHJldi5naWYiKX0pO0dCX3Nob3c9ZnVuY3Rpb24oYixkLGEsZSxnKXt2YXIgYz17Y2FwdGlvbjpiLGhlaWdodDphfHw1MDAsd2lkdGg6ZXx8NTAwLGZ1bGxzY3JlZW46ZmFsc2UsY2FsbGJhY2tfZm46Z307dmFyIGY9bmV3IEdCX1dpbmRvdyhjKTtyZXR1cm4gZi5zaG93KGQpfTtHQl9zaG93Q2VudGVyPWZ1bmN0aW9uKGIsZCxhLGUsZyl7dmFyIGM9e2NhcHRpb246YixjZW50ZXJfd2luOnRydWUsaGVpZ2h0OmF8fDUwMCx3aWR0aDplfHw1MDAsZnVsbHNjcmVlbjpmYWxzZSxjYWxsYmFja19mbjpnfTt2YXIgZj1uZXcgR0JfV2luZG93KGMpO3JldHVybiBmLnNob3coZCl9O0dCX3Nob3dGdWxsU2NyZWVuPWZ1bmN0aW9uKGEsYyxlKXt2YXIgYj17Y2FwdGlvbjphLGZ1bGxzY3JlZW46dHJ1ZSxjYWxsYmFja19mbjplfTt2YXIgZD1uZXcgR0JfV2luZG93KGIpO3JldHVybiBkLnNob3coYyl9O0dCX1dpbmRvdz1HcmV5Qm94LmV4dGVuZCh7aW5pdDpmdW5jdGlvbihhKXt0aGlzLnBhcmVudCh7fSk7dGhpcy5pbWdfaGVhZGVyPXRoaXMucm9vdF9kaXIrImhlYWRlcl9iZy5naWYiO3RoaXMuaW1nX2Nsb3NlPXRoaXMucm9vdF9kaXIrIndfY2xvc2UuZ2lmIjt0aGlzLnNob3dfY2xvc2VfaW1nPXRydWU7QUpTLnVwZGF0ZSh0aGlzLGEpO3RoaXMuYWRkQ2FsbGJhY2sodGhpcy5jYWxsYmFja19mbil9LGluaXRIb29rOmZ1bmN0aW9uKCl7QUpTLmFkZENsYXNzKHRoaXMuZ193aW5kb3csIkdCX1dpbmRvdyIpO3RoaXMuaGVhZGVyPUFKUy5UQUJMRSh7ImNsYXNzIjoiaGVhZGVyIn0pO3RoaXMuaGVhZGVyLnN0eWxlLmJhY2tncm91bmRJbWFnZT0idXJsKCIrdGhpcy5pbWdfaGVhZGVyKyIpIjt2YXIgYj1BSlMuVEQoeyJjbGFzcyI6ImNhcHRpb24ifSx0aGlzLmNhcHRpb24pO3ZhciBhPUFKUy5URCh7ImNsYXNzIjoiY2xvc2UifSk7aWYodGhpcy5zaG93X2Nsb3NlX2ltZyl7dmFyIGU9QUpTLklNRyh7c3JjOnRoaXMuaW1nX2Nsb3NlfSk7dmFyIGQ9QUpTLlNQQU4oIkNsb3NlIik7dmFyIGM9QUpTLkRJVihlLGQpO0FKUy5BRVYoW2UsZF0sIm1vdXNlb3ZlciIsZnVuY3Rpb24oKXtBSlMuYWRkQ2xhc3MoZCwib24iKX0pO0FKUy5BRVYoW2UsZF0sIm1vdXNlb3V0IixmdW5jdGlvbigpe0FKUy5yZW1vdmVDbGFzcyhkLCJvbiIpfSk7QUpTLkFFVihbZSxkXSwibW91c2Vkb3duIixmdW5jdGlvbigpe0FKUy5hZGRDbGFzcyhkLCJjbGljayIpfSk7QUpTLkFFVihbZSxkXSwibW91c2V1cCIsZnVuY3Rpb24oKXtBSlMucmVtb3ZlQ2xhc3MoZCwiY2xpY2siKX0pO0FKUy5BRVYoW2UsZF0sImNsaWNrIixHQl9oaWRlKTtBSlMuQUNOKGEsYyl9dGJvZHlfaGVhZGVyPUFKUy5UQk9EWSgpO0FKUy5BQ04odGJvZHlfaGVhZGVyLEFKUy5UUihiLGEpKTtBSlMuQUNOKHRoaXMuaGVhZGVyLHRib2R5X2hlYWRlcik7QUpTLkFDTih0aGlzLnRvcF9jbnQsdGhpcy5oZWFkZXIpO2lmKHRoaXMuZnVsbHNjcmVlbil7QUpTLkFFVih3aW5kb3csInNjcm9sbCIsQUpTLiRiKHRoaXMuc2V0V2luZG93UG9zaXRpb24sdGhpcykpfX0sc2V0RnJhbWVTaXplOmZ1bmN0aW9uKCl7aWYodGhpcy5mdWxsc2NyZWVuKXt2YXIgYT1BSlMuZ2V0V2luZG93U2l6ZSgpO292ZXJsYXlfaD1hLmg7dGhpcy53aWR0aD1NYXRoLnJvdW5kKHRoaXMub3ZlcmxheS5vZmZzZXRXaWR0aC0odGhpcy5vdmVybGF5Lm9mZnNldFdpZHRoLzEwMCkqMTApO3RoaXMuaGVpZ2h0PU1hdGgucm91bmQob3ZlcmxheV9oLShvdmVybGF5X2gvMTAwKSoxMCl9QUpTLnNldFdpZHRoKHRoaXMuaGVhZGVyLHRoaXMud2lkdGgrNik7QUpTLnNldFdpZHRoKHRoaXMuaWZyYW1lLHRoaXMud2lkdGgpO0FKUy5zZXRIZWlnaHQodGhpcy5pZnJhbWUsdGhpcy5oZWlnaHQpfSxzZXRXaW5kb3dQb3NpdGlvbjpmdW5jdGlvbigpe3ZhciBhPUFKUy5nZXRXaW5kb3dTaXplKCk7QUpTLnNldExlZnQodGhpcy5nX3dpbmRvdywoKGEudy10aGlzLndpZHRoKS8yKS0xMyk7aWYoIXRoaXMuY2VudGVyX3dpbil7QUpTLnNldFRvcCh0aGlzLmdfd2luZG93LEFKUy5nZXRTY3JvbGxUb3AoKSl9ZWxzZXt2YXIgYj0oKGEuaC10aGlzLmhlaWdodCkvMiktMjArQUpTLmdldFNjcm9sbFRvcCgpO2lmKGI8MCl7Yj0wfUFKUy5zZXRUb3AodGhpcy5nX3dpbmRvdyxiKX19fSk7QUpTLnByZWxvYWRJbWFnZXMoR0JfUk9PVF9ESVIrIndfY2xvc2UuZ2lmIixHQl9ST09UX0RJUisiaGVhZGVyX2JnLmdpZiIpOwpzY3JpcHRfbG9hZGVkPXRydWU7]]></data>
	</file>
	<file>
	  <filename>/style/greybox/gb_styles.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[LyogTGFzdC1Nb2RpZmllZDogMjgvMDYvMDYgMDA6MDg6MjIgKi8KI0dCX292ZXJsYXkgewogICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIG1hcmdpbjogYXV0bzsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CiAgICB6LWluZGV4OiAxMDA7Cn0KCiNHQl93aW5kb3cgewogICAgbGVmdDogMDsKICAgIHRvcDogMDsKICAgIGZvbnQtc2l6ZTogMXB4OwogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgb3ZlcmZsb3c6IHZpc2libGU7CiAgICB6LWluZGV4OiAxNTA7Cn0KCiNHQl93aW5kb3cgLmNvbnRlbnQgewogICAgd2lkdGg6IGF1dG87CiAgICBtYXJnaW46IDA7CiAgICBwYWRkaW5nOiAwOwp9CgojR0JfZnJhbWUgewogICAgYm9yZGVyOiAwOwogICAgbWFyZ2luOiAwOwogICAgcGFkZGluZzogMDsKICAgIG92ZXJmbG93OiBhdXRvOwogICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKfQoKCi5HQl9HYWxsZXJ5IHsKICAgIG1hcmdpbjogMCAyMnB4IDAgMjJweDsKfQoKLkdCX0dhbGxlcnkgLmNvbnRlbnQgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIGJvcmRlcjogM3B4IHNvbGlkICNkZGQ7Cn0KCi5HQl9oZWFkZXIgewogICAgdG9wOiAxMHB4OwogICAgbGVmdDogMDsKICAgIG1hcmdpbjogMDsKICAgIHotaW5kZXg6IDUwMDsKICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjNTU1OwogICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICM1NTU7Cn0KCi5HQl9oZWFkZXIgLmlubmVyIHsKICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7CiAgICBmb250LWZhbWlseTogQXJpYWwsIFZlcmRhbmEsIHNhbnMtc2VyaWY7CiAgICBwYWRkaW5nOiAycHggMjBweCAycHggMjBweDsKfQoKLkdCX2hlYWRlciB0YWJsZSB7CiAgICBtYXJnaW46IDA7CiAgICB3aWR0aDogMTAwJTsKICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7Cn0KCi5HQl9oZWFkZXIgLmNhcHRpb24gewogICAgdGV4dC1hbGlnbjogbGVmdDsKICAgIGNvbG9yOiAjZWVlOwogICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKICAgIGZvbnQtc2l6ZTogMjBweDsKfQoKLkdCX2hlYWRlciAuY2xvc2UgewogICAgdGV4dC1hbGlnbjogcmlnaHQ7Cn0KCi5HQl9oZWFkZXIgLmNsb3NlIGltZyB7CiAgICB6LWluZGV4OiA1MDA7CiAgICBjdXJzb3I6IHBvaW50ZXI7Cn0KCi5HQl9oZWFkZXIgLm1pZGRsZSB7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgdGV4dC1hbGlnbjogY2VudGVyOwp9CgoKI0dCX21pZGRsZSB7CiAgICBjb2xvcjogI2VlZTsKfQoKI0dCX21pZGRsZSBpbWcgewogICAgY3Vyc29yOiBwb2ludGVyOwogICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsKfQoKI0dCX21pZGRsZSAuZGlzYWJsZWQgewogICAgY3Vyc29yOiBkZWZhdWx0Owp9CgojR0JfbWlkZGxlIC5sZWZ0IHsKICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7Cn0KCiNHQl9taWRkbGUgLnJpZ2h0IHsKICAgIHBhZGRpbmctbGVmdDogMTBweDsKfQoKCi5HQl9XaW5kb3cgLmNvbnRlbnQgewogICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsKICAgIGJvcmRlcjogM3B4IHNvbGlkICNjY2M7CiAgICBib3JkZXItdG9wOiBub25lOwp9CgouR0JfV2luZG93IC5oZWFkZXIgewogICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNhYWE7CiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzk5OTsKICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgI2NjYzsKICAgIGJvcmRlci1yaWdodDogM3B4IHNvbGlkICNjY2M7CiAgICBtYXJnaW46IDA7CgogICAgaGVpZ2h0OiAyMnB4OwogICAgZm9udC1zaXplOiAxMnB4OwogICAgcGFkZGluZzogM3B4IDA7CiAgICBjb2xvcjogIzMzMzsKfQoKLkdCX1dpbmRvdyAuY2FwdGlvbiB7CiAgICBmb250LXNpemU6IDEycHg7CiAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgZm9udC13ZWlnaHQ6IGJvbGQ7CiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOwogICAgcGFkZGluZy1yaWdodDogMjBweDsKfQoKLkdCX1dpbmRvdyAuY2xvc2UgeyB0ZXh0LWFsaWduOiByaWdodDsgfQouR0JfV2luZG93IC5jbG9zZSBzcGFuIHsgCiAgICBmb250LXNpemU6IDEycHg7CiAgICBjdXJzb3I6IHBvaW50ZXI7IAp9Ci5HQl9XaW5kb3cgLmNsb3NlIGltZyB7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBwYWRkaW5nOiAwIDNweCAwIDA7Cn0KCi5HQl9XaW5kb3cgLm9uIHsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzMzM7IH0KLkdCX1dpbmRvdyAuY2xpY2sgeyBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmVkOyB9Cg==]]></data>
	</file>
	<file>
	  <filename>/style/greybox/g_close.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhGQAeANU8AP///5mZmZ+fn3R0dH19faenp56ennx8fPr6+s3NzczMzE9PT+Xl5T09PTU1Nezs7O/v76CgoHFxcVhYWNbW1oWFhYODg+np6fLy8vj4+Ovr6/n5+d/f36ysrLOzs9nZ2cbGxlxcXNra2jY2NoeHh9LS0ujo6MLCwkRERLu7u0NDQ/Hx8e3t7cHBwYKCgnNzc6ampu7u7k1NTVtbWz4+Pry8vMvLy7m5ub29vTQ0NL+/vz8/PzMzMwAAAAAAAAAAACH5BAEAADwALAAAAAAZAB4AAAb/QJ5wSCwaj8ikctiYSFwVl2TSWA5lh4B2uz0slI6BVpCimDQmSkqgHTiODULAYEMA7ngAImEIEKpEDnIFEHmGdxAFfjlEYgUZh5EZigNDC3OFkZExfV88WQl4HAoKJXgbpAoPdwkBBzwqARF2dxtsAQp3N1oeeAgRASohAS2GDFsPH2MYeS0BM2IihyBaMLcchsovFgEXkR1cOocXARYkASyR1FsfhywBJNzexlwBAhuG5BbRhrZaIOAC9MojIsCAYScMedDSAQCGW7nwnAgQAoUsWgBKLLvDAdmdXwFQfAoQ6g6Dk8zwPDi5CkCrVzwuGcikyRCETkMcQaqJZ5LBOkCDVvAEsEIRgTdE4sxJgDHPnj5/jowQY68GBQ1YKeC4NWCEkgVZ6nXxZIWGkwpop+ywwrat27dsgwAAOw==]]></data>
	</file>
	<file>
	  <filename>/style/greybox/header_bg.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlh3wAjAMQAAPr6+tPT0+vr6+Pj49vb2/X19c3Nze/w7+Dg4d/e3unp6Ojn6Ofo597e3ufm5uDf4Obm5ujp6d/g3+Hg4Pf29+7u7vn4+O/u7vf4+O/w8PHx8fPz89jY2Pz8/M/Pz////yH5BAAAAAAALAAAAADfACMAAAX/oCGOZGmeaKqubOu+cCzPdG3feK7vfL96wKBwSCwaj8ikcslsOp/QqHS6DFCL1qt2y+0Ks15kYEwum8/otHrNbrvf8Lh8Tq/b7/i8fs/v+/+AgYKDhIVkHIiJiouMjY6PkJGSk5SVlpeYmZqbnJ2en6ChoqORBKanpxyoqKqrrq8EiKatsKyttLWzsbu0t7m/tbjAqcPFu8HGycrLzM3Oz9DR0tPLDdbX2Nna29zd3t/g4eLj5OXm5+jhEusPD+wIEu7t8ezu8O3y+Pfx+Q8I9vPi/UPwT+BAePTeuaO3kOG6e//8SSg4zx5BeezW8WuYcN8+h/jq0Ru4MWLFgPYE/9ZrhzDhRH33MIbc2DDkyYkJH0wYMKEngp07eSIY8JOo0Z4DeCYlCnQoT6QEkwKVutQpU6pYoy5VSnToUKBBkXKV+rMp151WvQZ9ulVqULVCn4oF+9Wn3LVle4LFmrSoW6phxwJGOrXqW6ttEytezLix48eQI0ueTLmy5cuXIWjezLmz58+gQ4seTbq06dOoU6tezbo0g9evF8ReIFs2g9q4a8OmTXt37Nm5b/8W7vt2cOO8dfdGvnt5ct6wjQOfHh268OfMh1O3rfu3c9vXrYfnbr279Ny9y4N/rUBBhPbw3cMXIJ++gPftI+jXnz++fP/+4QcgfAK6V+B8BL5X4P99+tHX34DyHUiggQXiJ2F79/XH34MQ5seggfQpqKCBEQIYIokoXmihhQ7OJ8CLMMYo44w01mjjjTjmqOOOPPbo449ABpljBUQWaeSRSCap5JJMNunkk1BGKeWUVFZp5ZMHZHDAllx2qaWWXWYJ5pZjfjlmlmF+SaaaZ4pJZpphcplBmXF6+Wadd6LZpptu7jlnnWqiCaiceMb55553/vmmooLaCagGkEYq6aSUVmrppZhmqummnHbq6aeghirqphuUauqpqKaq6qqsturqq7DGKuustNZq662wFqDrrrz26uuvwAYr7LDEFmvsscgmq+yyzBZLwbPQRivttNRWa+3/tdhmq+223Hbr7bfghqutBRZggAG55FJQLrrknrsuuuqyK2+76c5rL7ru0nvvvfmau++78+YbMLsCC4zvwPuea/C/8cb7b8ALPwzvvgBUbLEFF1usccUYbwwAuhd37PHIIo/MscYlo4wxuSGnvDHLLoOcMsgffyxyySuzXLPNOs9sMs8474zyyT17DDPPJuss9M9MN+3001BHLfXUVFdt9dVYW9zB1lx37fXXYIct9thkl2322WinrfbabLe99gdhw532B3DLLffXd8fddd5u48032Hn/DbjdfZ8tuNh0H6741oR7bXfikEcu+eSUV2755ZhnrvnmnHfu+eeghy76Ieikl2766ainrvrqrLfu+uuwxy777LTXbvvtuOeuO+whAAA7]]></data>
	</file>
	<file>
	  <filename>/style/greybox/indicator.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhZABkAPQAAP///1VVVbOzs5qamnh4eHx8fJKSkmdnZ2BgYHJycoyMjIeHh6ioqK6urmxsbFVVVaOjo4KCgltbWwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH+GkNyZWF0ZWQgd2l0aCBhamF4bG9hZC5pbmZvACH5BAAHAAAAIf8LTkVUU0NBUEUyLjADAQAAACwAAAAAZABkAAAF/yAgjmRpnmiqrmzrvnAsz3Rt33iu73zfMgoDw0csAgSEh/JBEBifucRymYBaaYzpdHjtuhba5cJLXoHDj3HZBykkIpDWAP0YrHsDiV5faB3CB3c8EHuFdisNDlMHTi4NEI2CJwWFewQuAwtBMAIKQZGSJAmVelVGEAaeXKEkEaQSpkUNngYNrCWEpIdGj6C3IpSFfb+CAwkOCbvEy8zNzs/Q0dLT1NUrAgOf1kUMBwjfB8rbOQLe3+C24wxCNwPn7wrjEAv0qzMK7+eX2wb0mzXu8iGIty1TPRvlBKazJgBVnBsN8okbRy6VgoUUM2rcyLGjx48gQ4ocSbKkyZMoJf8JMFCAwAJfKU0gOUDzgAOYHiE8XDGAJoKaalAoObHERFESU0oMFbF06YikKQQsiKCJBYGaNR2ocPr0AQCuQ8F6Fdt1rNeuLSBQjRDB3qSfPm1uPYvUbN2jTO2izQs171e6J9SuxXjCAFaaQYkC9ku2MWCnYR2rkDqV4IoEWG/O5fp3ceS7nuk2Db0YBQS3UVm6xBmztevXsGPLnk27tu3buHOvQU3bgIPflscJ4C3D92/gFNUWgHPj2G+bmhkWWL78xvPjDog/azCdOmsXzrF/dyYgAvUI7Y7bDF5N+QLCM4whM7BxvO77+PPr38+//w4GbhSw0xMQDKCdJAwkcIx2ggMSsQABENLHzALILDhMERAQ0BKE8IUSwYILPjEAhCQ2yMoCClaYmA8NQLhhh5I0oOCCB5rAQI0mGEDiRLfMQhWOI3CXgIYwotBAA/aN09KQCVw4m4wEMElAkTEhIWUCSaL0IJPsySZVlC/5J+aYZJZppgghAAAh+QQABwABACwAAAAAZABkAAAF/yAgjmRpnmiqrmzrvnAsz3Rt33iu73zfMhAIw0csAgQDhESCGAiM0NzgsawOolgaQ1ldIobZsAvS7ULE6BW5vDynfUiFsyVgL58rwQLxOCzeKwwHCIQHYCsLbH95Dg+OjgeAKAKDhIUNLA2JVQt4KhGPoYuSJEmWlgYuSBCYLRKhjwikJQqnlgpFsKGzJAa2hLhEuo6yvCKUv549BcOjxgOVhFdFdbAOysYNCgQK2HDMVAXexuTl5ufo6err7O3kAgKs4+48AhEH+ATz9Dj2+P8EWvET0YDBPlX/Eh7i18CAgm42ICT8l2ogAAYPFSyU0WAiPjcDtSkwIHCGAAITE/+UpCeg4EqTKPGptEikpQEGL2nq3Mmzp8+fQIMKHUq0qNGjSJO6E8DA4RyleQw4mOqgk1F4LRo4OEDVwTQUjk48MjGWxC6zD0aEBbBWbdlJBhYsAJlC6lSuDiKoaOuWbdq+fMMG/us37eCsCuRaVWG3q94UfEUIJlz48GHJsND6VaFJ8UEAWrdS/SqWMubNgClP1nz67ebIJQTEnduicdWDZ92aXq17N+G1kV2nwEqnqYGnUJMrX868ufPn0KNLn069Or+N0hksSFCArkWmORgkcJCgvHeWCiIYOB9jAfnx3D+fE5A+woKKNSLAh4+dXYMI9gEonwoKlPeeON8ZAOCgfTc0UB5/OiERwQA5xaCJff3xM6B1HHbo4YcghigiNXFBhEVLGc5yEgEJEKBPFBBEUEAE7M0yAIs44leTjDNGUKEkBrQopDM+NFDAjEf+CMiNQhJAWpE8zqjkG/8JGcGGIjCQIgoMyOhjOkwNMMCWJTTkInJZNYAlPQYU4KKT0xnpopsFTKmUPW8ScOV0N7oJ53TxJAbBmiMWauihiIIYAgAh+QQABwACACwAAAAAZABkAAAF/yAgjmRpnmiqrmzrvnAsz3Rt33iu73zv/8AZo4BAFBjBpI5xKBYPSKWURnA6CdNszGrVeltc5zcoYDReiXDCBSkQCpDxShA52AuCFoQribMKEoGBA3IpdQh2B1h6TQgOfisDgpOQhSMNiYkIZy4CnC0Ek4IFliVMmnYGQAmigWull5mJUT6srRGwJESZrz+SrZWwAgSJDp8/gJOkuaYKwUADCQ4JhMzW19jZ2tvc3d7f4NoCCwgPCAs4AwQODqrhIgIOD/PzBzYDDgfsDgrvAAX0AqKjIW0fuzzhJASk56CGwXwOaH1bGLBGQX0H31Gch6CGgYf93gGkOJCGgYIh3/8JUBjQHg6J/gSMlBABob+bOHPq3Mmzp8+fQIMKHUq0qNEUAiBAOHZ0RYN10p41PZGg6jQHNk/M07q1BD2vX0l0BdB1rIiKKhgoMMD0BANpVqmpMHv2AVm7I7aa1Yu3bl6+YvuuUEDYXdq40qqhoHu38d+wfvf2pRjYcYq1a0FNg5vVBGPAfy03lhwa8mjBJxqs7Yzi6WapgemaPh0b9diythnjSAqB9dTfwIMLH068uPHjyJMrX84cnIABCwz4Hj4uAYEEeHIOMAAbhjrr1lO+g65gQXcX0a5fL/nOwIL3imlAUG/d8DsI7xfAlEFH/SKcEAywHw3b9dbcgQgmqOByggw26KAIDAxwnnAGEGAhe0AIoEAE0mXzlBsWTojDhhFwmE0bFroR3w8RLNAiLtg8ZaGFbfVgwIv2WaOOGzn+IIABCqx4TRk1pkXYgMQNUUAERyhnwJIFFNAjcTdGaWJydCxZ03INBFjkg2CGKeaYCYYAACH5BAAHAAMALAAAAABkAGQAAAX/ICCOZGmeaKqubOu+cCzPdG3feK7vfO//wBnDUCAMBMGkTkA4OA8EpHJKMzyfBqo2VkBcEYWtuNW8HsJjoIDReC2e3kPEJRgojulVPeFIGKQrEGYOgCoMBwiJBwx5KQMOkJBZLQILkAuFKQ2IiYqZjQANfA4HkAltdKgtBp2tA6AlDJGzjD8KrZ0KsCSipJCltT63uAiTuyIGsw66asQHn6ACCpEKqj8DrQevxyVr0D4NCgTV3OXm5+jp6uvs7e7v6gIQEQkFEDgNCxELwfACBRICBtxGQ1QCPgn6uRsgsOE9GgoQ8inwLV2ChgLRzKCHsI9Cdg4wBkxQw9LBPhTh/wG4KHIODQYnDz6Ex1DkTCEL6t189w+jRhsf/Q04WACPyqNIkypdyrSp06dQo0qdSrWqVUcL+NER0MAa1AYOHoh9kKCiiEoE6nl1emDsWAIrcqYlkDKF2BNjTeQl4bbEXRF//47oe8KABLdjg4qAOTcBAcWAH+iVLBjA3cqXJQ/WbDkzX84oFCAey+wEg8Zp136e3Pnz3sitN28mDLsyiQWjxRo7EaFxXRS2W2OmDNqz7NrDY5swkPsB5FC91a6gHRm08OKvYWu3nd1EW8Rw9XA1q1TAd7Flr76wo1W9+/fw48ufT7++/fv48+s/wXUABPLwCWAAAQRiolQD/+FDIKRdBOz0TjgKkGNDAwsSSJBKEESowHOUEFjEY0lJEyGAegyw4G5HNcAAiS0g2ACL+8Uo44w01mjjjTi+wMCKMs5TQAQO+iCPAQme00AEP/4IIw0DZLVAkLA0kGQBBajGQ5MLKIDiMUcmGYGVO0CQZXvnCIAkkFOsYQCH0XQVAwP+sRlgVvssadU8+6Cp3zz66JmfNBFE8EeMKrqZ46GIJqrooi6EAAAh+QQABwAEACwAAAAAZABkAAAF/yAgjmRpnmiqrmzrvnAsz3Rt33iu73zv/0Baw2BoBI88g2N5MCCfNgZz6WBArzEl1dHEeluGw9Sh+JpTg+1y8GpABGdWQxFZWF0L7nLhEhAOgBFwcScNCYcOCXctAwsRbC5/gIGEJwuIh3xADJOdg5UjEQmJowlBYZ2AEKAkeZgFQZypB0asIgyYCatBCakEtiQMBQkFu0GGkwSfwGYQBovM0dLT1NXW19jZ2ts+AgYKA8s0As6Q3AADBwjrB9AzogkEytwN6uvs4jAQ8fxO2wr3ApqTMYAfgQSatBEIeK8MjQEHIzrUBpAhgoEyIkSct62BxQP5YAhoZCDktQEB2/+d66ZAQZGVMGPKnEmzps2bOHPq3Mmzp88v5Iz9ZLFAgtGLjCIU8IezqFGjDzCagCBPntQSDx6cyKoVa1avX0mEBRB2rAiuXU00eMoWwQoF8grIW2H2rFazX/HeTUs2Lde+YvmegMCWrVATC+RWpSsYsN6/I/LyHYtWL+ATAwo/PVyCatWrgU1IDm3Zst2+k/eiEKBZgtsVA5SGY1wXcmTVt2v77aq7cSvNoIeOcOo6uPARAhhwPs68ufPn0KNLn069uvXrfQpklSAoRwOT1lhXdgC+BQSlEZZb0175QcJ3Sgt039Y+6+sZDQrI119LW/26MUQQ33zaSFDfATY0kFh2euewV9l748AkwAGVITidAAA9gACE2HXo4YcghijiiN0YEIEC5e3QAAP9RWOiIxMd0xKK0zhSRwRPMNCSAepVYoCNTMnoUopxNDLbEysSuVIDLVLXyALGMSfAAgsosICSP01J5ZXWQUBlj89hSeKYZJZpJoghAAAh+QQABwAFACwAAAAAZABkAAAF/yAgjmRpnmiqrmzrvnAsz3Rt33iu73zv/0Bag8FoBI+8RmKZMCKfNQbTkSAIoNgYZElNOBjZcGtLLUPE6JSg601cXQ3IO60SQAzyF9l7bgkMbQNzdCUCC1UJEWAuAgOCLwYOkpIDhCdbBIiVQFIOB5IHVpYlBpmmC0EMk6t9oyIDplUGqZ+ek06uAAwEpqJBCqsOs7kjDAYLCoM/DQa1ycSEEBCL0NXW19jZ2tvc3d7fPwJDAsoz4hC44AIFB+0R5TGwvAbw2Q0E7fnvNQIEBbwEqHVj0A5BvgPpYtzj9W+TNwUHDR4QqBAgr1bdIBzMlzCGgX8EFtTD1sBTPgQFRv/6YTAgDzgAJfP5eslDAAMFDTrS3Mmzp8+fQIMKHUq0qNGjSJMisYNR6YotCBAE9GPAgE6fEKJqnbiiQYQCYCmaePDgBNmyJc6mVUuC7Ai3AOC+ZWuipAStUQusGFDgawQFK+TOjYtWhFvBhwsTnlsWseITDfDibVoCAtivgFUINtxY8VnHiwdz/ty2MwoBkrVSJtEAbNjAjxeDnu25cOLaoU2sSa236wCrKglvpss5t/DHcuEO31z57laxTisniErganQSNldf3869u/fv4MOLH0++vHk/A5YQeISjQfBr6yTIl5/Sxp2/76sNmM9fuwsDESyAHzgJ8DdfbzN4JWCkBBFYd40DBsqXgA0DMIhMfsQUGGEENjRQIR4v7Rehfy9gWE18/DkEnh0RJELieTDGKOOMNAa1DlkS1Bceap894ICJUNjhCJAyFNAjWahAA8ECTKrow5FkIVDNMcgMAwSUzFnCAJMLvHiDBFBKWQ1LLgERAZRJBpVTiQ70eMBQDSigAHSnLYCAj2kCJYCcBjwz3h98EnkUM1adJ2iNiCaq6KKLhgAAIfkEAAcABgAsAAAAAGQAZAAABf8gII5kaZ5oqq5s675wLM90bd94ru987//AoHAYEywShIWAyKwtCMjEokmFCaJQwrLKVTWy0UZ3jCqAC+SfoCF+NQrIQrvFWEQU87RpQOgbYg0MMAwJDoUEeXoiX2Z9iT0LhgmTU4okEH0EZgNCk4WFEZYkX5kEEEJwhoaVoiIGmklDEJOSgq0jDAOnRBBwBba3wcLDxMXGx8jJysvMzUJbzgAGn7s2DQsFEdXLCg4HDt6cNhHZ2dDJAuDqhtbkBe+Pxgze4N8ON+Tu58jp6+A3DPJtU9aNnoM/OBrs4wYuAcJoPYBBnEixosWLGDNq3Mixo8ePIEOKxGHEjIGFKBj/DLyY7oDLA1pYKIgQQcmKBw9O4MxZYmdPnyRwjhAKgOhQoCcWvDyA4IC4FAHtaLvJM2hOo0WvVs3K9ehRrVZZeFsKc0UDmnZW/jQhFOtOt2C9ingLt+uJsU1dolmhwI5NFVjnxhVsl2tdwkgNby0RgSyCpyogqGWbOOvitlvfriVc2LKKli9jjkRhRNPJ0ahTq17NurXr17Bjy55NG0UDBQpOvx6AoHdTiTQgGICsrIFv3wdQvoCwoC9xZAqO+34Ow0DfBQ+VEZDeW4GNOgsWTC4WnTv1QQaAJ2vA9Hhy1wPaN42XWoD1Acpr69/Pv79/ZgN8ch5qBUhgoIF7BSMAfAT07TDAgRCON8ZtuDWYQwIQHpigKAzgpoCEOGCYoQQJKGidARaaYB12LhAwogShKMhAiqMc8JYDNELwIojJ2EjXAS0UCOGAywxA105EjgBBBAlMZdECR+LESmpQRjklagxE+YB6oyVwZImtCUDAW6K51mF6/6Wp5po2hAAAIfkEAAcABwAsAAAAAGQAZAAABf8gII5kaZ5oqq5s675wLM90bd94ru987//AoHAYE0AWC4iAyKwNCFDCoEmFCSJRQmRZ7aoaBWi40PCaUc/o9OwTNMqvhiE84LYYg4GSnWpEChEQMQ0MVlgJWnZ8I36AgHBAT4iIa4uMjo9CC5MECZWWAI2Oij4GnaefoEcFBYVCAlCIBK6gIwwNpEACCgsGubXAwcLDxMXGx8jJysvMZ7/KDAsRC5A1DQO9z8YMCQ4J39UzBhHTCtrDAgXf3gkKNg3S0hHhx9zs3hE3BvLmzOnd6xbcYDCuXzMI677RenfOGAR1CxY26yFxosWLGDNq3Mixo8ePIEOKHEmyZDEBAwz/GGDQcISAlhMFLHBwwIEDXyyOZFvx4MGJnj5LABU6lETPEUcBJEVa9MQAm1Ad0CshE4mCqUaDZlWqlatXpl9FLB26NGyKCFBr3lyxCwk1nl3F+iwLlO7crmPr4r17NqpNAzkXKMCpoqxcs0ftItaaWLFhEk9p2jyAlSrMukTjNs5qOO9hzipkRiVsMgXKwSxLq17NurXr17Bjy55Nu7ZtIoRWwizZIMGB3wR2f4FQuVjv38gLCD8hR8HVg78RIEdQnAUD5woqHjMgPfpv7S92Oa8ujAHy8+TZ3prYgED331tkp0Mef7YbJctv69/Pv7//HOlI0JNyQ+xCwHPACOCAmV4S5AfDAAhEKF0qfCyg14BANCChhAc4CAQCFz6mgwIbSggYKCGKmAOJJSLgDiggXiiBC9cQ5wJ3LVJ4hoUX5rMCPBIEKcFbPx5QYofAHKAXkissIKSQArGgIYfgsaGAki62JMCTT8J0Wh0cQcClkIK8JuaYEpTpGgMIjIlAlSYNMKaOq6HUpgQIgDkbAxBAAOd/gAYqKA0hAAAh+QQABwAIACwAAAAAZABkAAAF/yAgjmRpnmiqrmzrvnAsz3Rt33iu73zv/8CgcChrQAYNotImiBQKi+RyCjM4nwOqtmV4Og3bcIpRuDLEaBNDoTjDGg1BWmVQGORDA2GfnZusCxFgQg17BAUEUn4jEYGNQwOHhhCLJFYREQpDEIZ7ipUCVgqfQAt7BYOVYkduqq6vsLGys7S1tre4ubq7UwIDBn04DAOUuwJ7CQQReDUMC8/FuXrJydE0Bs92uwvUBAnBNM7P4LcK3ufkMxDAvMfnBbw9oQsDzPH3+Pn6+/z9/v8AAwocSLCgwYO9IECwh9AEBAcJHCRq0aAOqRMPHmDMaCKjRhIeP47gKIIkyZEeU/8IgMiSABc2mlacRAlgJkebGnGizCmyZk8UAxIIHdoqRR02LGaW5AkyZFOfT5c6pamURFCWES+aCGWgKIqqN3uGfapzqU+xTFEIiChUYo+pO0uM3fnzpMm6VUs8jDixoVoIDBj6HUy4sOHDiBMrXsy4sWMSTSRkLCD4ltcZK0M+QFB5lgIHEFPNWKB5cq7PDg6AFh0DQem8sVaCBn0gQY3XsGExSD0bdI0DryXgks0bYg3SpeHhQj07HQzgIR10lmWAr/MYC1wjWDD9sffv4MOLR3j1m5J1l/0UkMCevXIgDRIcQHCAQHctENrrv55D/oH/B7ynnn7t2fYDAwD+R59zVmEkQCB7BvqgQIIAphdGBA9K4JILcbzQAID0/cfgFvk9aE0KDyFA34kp+AdgBK4MQKCAKEqg4o0sniBAAQBS9goEESQQQY4nJHDjjRGy0EBg/Rx55GFO3ngYAVFuWBiCRx4w4kENFKBiAVuOJ+aYZIoZAgAh+QQABwAJACwAAAAAZABkAAAF/yAgjmRpnmiqrmzrvnAsz3Rt33iu73zv/8CgcChrMBoNotImUCwiiuRyCoNErhEIdduCPJ9arhgleEYWgrHaxIBAGDFkep1iGBhzobUQkdJLDAtOYUENEXx8fn8iBguOBkMNiImLJF6CA0MCBYh9lSMCEAYQikAMnBFwn2MCRquvsLGys7S1tre4ubq7vDqtpL5HvAIGBMYDeTTECgrJtwwEBcYEzjIMzKO7A9PGpUUGzN61EMbSBOIxoei0ZdOQvTuhAw3V8Pb3+Pn6+/z9/v8AAwocSBCQo0wFUwhI8KDhgwPrerUSUK8EAYcOD/CTRCABGhUMMGJ8d6JhSZMlHP+mVEkCJQCULkVgVFggQUcCC1QoEOlQQYqYMh+8FDrCZEyjRIMWRdoyaZ2bNhOoOmGAZ8OcKIAO3bqUpdKjSXk25XqiQdSb60JaJWlCK9OlZLeChetVrtMSm85iTXFRpMafdYfefRsUqEuYg7WWkGTTk4qFGB1EHEavIpuDCTNr3sy5s+fPoEOLHk063YCaCZD1mlpjk4TXrwtYjgWh5gLWMiDA3o3wFoQECRwExw2jwG7YCXDlFS58r4wEx187wMUgOHDgEWpEiC4h+a281h34pKE7em9b1YUDn7xiwHHZugKdYc/CSoIss0vr38+/v//RTRAQhRIC4AHLAAcgoCCkAuf50IACDkTYzCcCJLiggvTRAKEDB0TIFh0GXLjgeD4wwGGEESaQIREKiKggiT2YiOKJxI0xgIsIfKgCPS+YFWGHwq2oiYULHpCfCFZE+FELBszoQIN0NEDkATWaIACHB2TpwJEAEGOdaqsIMIACYLKwQJZoHuDcCkZweUsBaCKQJQGfEZBmlgV8ZkCCceqYWXVpUgOamNEYIOR/iCaq6KIAhAAAIfkEAAcACgAsAAAAAGQAZAAABf8gII5kaZ5oqq5s675wLM90bd94ru987//AoHBIExCPOMhiAUE6ZYLl0vissqJSqnWLGiwUA64Y1WiMfwKGmSgwgM+otsKwFhoWkYgBbmIo/gxEeXgLfCUNfwp1QQp4eoaHakdRelqQl5iZmpucnZ6foKGioz8LCA8IC5akOAcPr68Oq6CzMguwuAWjEBEFC4syDriwEqICvcg2w7iiDQXPBRHAMKfLD8bR0RE2t8u6ogzPEU01AsK4ErWdAtMzxxKvBeqs9PX29/j5+vv8/f7/AAMKNAEBwryBJAYgkMCwEMIUAxhKlOBQn4AB0cKsWDiRYTsRr07AMjGSBDOT10D/pgyJkmUXAjAJkEMBoaPEmSRTogTgkue1niGB6hwptAXMAgR8qahpU4JGkTpHBI06bGdRlSdV+lQRE6aCjU3n9dRatCzVoT/NqjCAFCbOExE7VoQ6tqTUtC2jbtW6967eE2wjPFWhUOLchzQNIl7MuLHjx5AjS55MubJlGQ3cKDj4kMEBBKARDKZ1ZwDnFQI+hwb9UZMAAglgb6uhcDXor6EUwN49GoYC26AJiFoQu3jvF7Vt4wZloDjstzBS2z7QWtPuBKpseA594LinAQYU37g45/Tl8+jTq19fmUF4yq8PfE5QPQeEAgkKBLpUQL7/BEJAkMCADiSwHx8NyIeAfH8IHOgDfgUm4MBhY0Dg34V7ACEhgQnMxocACyoon4M9EBfhhJdEcOEBwrkwQAQLeHcCAwNKSEB9VRzjHwHmAbCAA0Ci6AIDeCjiGgQ4jjBAkAcAKSNCCgQZ5HKOGQBkk0Bm+BgDUjZJYmMGYOmAlpFlRgd7aKap5poyhAAAIfkEAAcACwAsAAAAAGQAZAAABf8gII5kaZ5oqq5s675wLM90bd94ru987//AoHBIExCPOIHB0EA6ZUqFwmB8WlkCqbR69S0cD8SCy2JMGd3f4cFmO8irRjPdW7TvEaEAYkDTTwh3bRJCEAoLC35/JIJ3QgaICwaLJYGND0IDkRCUJHaNBXoDAxBwlGt3EqadRwIFEmwFq6y0tba3uLm6u7y9viYQEQkFpb8/AxLJybLGI7MwEMrSA81KEQNzNK/SyQnGWQsREZM1CdzJDsYN4RHh2TIR5xLev1nt4zbR59TqCuOcNVxxY1btXcABBBIkGPCsmcOHECNKnEixosWLGDNq3MjxCIRiHV0wIIAAQQKAIVX/MDhQsqQElBUFNFCAjUWBli0dGGSEyUQbn2xKOOI5IigAo0V/pmBQIEIBgigg4MS5MynQoz1FBEWKtatVrVuzel2h4GlTflGntnzGFexYrErdckXaiGjbEv6aEltxc+qbFHfD2hUr+GvXuIfFmmD6NEJVEg1Y4oQJtC3ixDwtZzWqWfGJBksajmhA0iTllCk+ikbNurXr17Bjy55Nu7bt20HkKGCwOiWDBAeC63S4B1vvFAIIBF+e4DEuAQsISCdHI/Ly5ad1QZBeQLrzMssRLFdgDKF0AgUUybB+/YB6XiO7Sz9+QkAE8cEREPh+y8B5hjbYtxxU6kDQAH3I7XEgnG4MNujggxBGCAVvt2XhwIUK8JfEIX3YYsCFB2CoRwEJJEQAgkM0ANyFLL7HgwElxphdGhCwCKIDLu4QXYwEUEeJAAnc6EACOeowAI8n1TKAjQ74uIIAo9Bnn4kRoDgElEEmQIULNWY54wkMjAKSLQq+IMCQQwZp5UVdZpnkbBC4OeSXqCXnJpG1qahQc7c1wAADGkoo6KCEFrpCCAA7AAAAAAAAAAAA]]></data>
	</file>
	<file>
	  <filename>/style/greybox/loader_frame.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLQpOb3RpY2U6IEkgZmVlbCBzbyBkaXJ0eSBkb2luZyB0aGlzLCBidXQgaXRzIHRoZSBvbmx5IHdheSB0byBtYWtlIGl0IGNyb3NzIGJyb3dzZXIuCi0tPgo8aHRtbD4KPGhlYWQ+CiAgPHNjcmlwdD4KICAgIHZhciBHQiA9IHBhcmVudC5HQl9DVVJSRU5UOwogICAgZG9jdW1lbnQud3JpdGUoJzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IkFKUy5qcyI+PFwvc2NyaXB0PicpOwogICAgaWYoR0IudXNlX2Z4KSB7CiAgICAgICAgZG9jdW1lbnQud3JpdGUoJzxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9IkFKU19meC5qcyI+PFwvc2NyaXB0PicpOwogICAgfQogIDwvc2NyaXB0PgogIDxzdHlsZT4KICAgIGJvZHkgewogICAgICBwYWRkaW5nOiAwOwogICAgICBtYXJnaW46IDA7CiAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICB9CgogICAgI0dCX2ZyYW1lIHsKICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOwogICAgICB3aWR0aDogMTAwJTsKICAgICAgaGVpZ2h0OiAxMDAlOwogICAgfQoKICAgICNsb2FkaW5nIHsKICAgICAgcGFkZGluZy10b3A6IDUwcHg7CiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgd2lkdGg6IDEwMCU7CiAgICAgIHRvcDogMDsKICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogICAgfQogIDwvc3R5bGU+CjwvaGVhZD4KPGJvZHk+Cgo8ZGl2IGlkPSJsb2FkaW5nIj4KICA8aW1nIHNyYz0iaW5kaWNhdG9yLmdpZiI+CjwvZGl2PgoKPHNjcmlwdD4KdmFyIGxvYWRpbmcgPSBBSlMuJCgnbG9hZGluZycpOwp2YXIgZ2JfdHlwZSA9IEdCLnR5cGU7CnZhciBnYl91cmwgPSBHQi51cmw7CgovL1N0YXJ0IGxvYWRpbmcgaW4gdGhlIGlmcmFtZQppZihnYl90eXBlID09ICJwYWdlIikgewogIGRvY3VtZW50LndyaXRlKCc8aWZyYW1lIGlkPSJHQl9mcmFtZSIgc3JjPSInICsgZ2JfdXJsICsgJyIgZnJhbWVib3JkZXI9IjAiPjwvaWZyYW1lPicpOwp9CmVsc2UgewogIHZhciBpbWdfaG9sZGVyID0gbmV3IEltYWdlKCk7CiAgaW1nX2hvbGRlci5zcmMgPSBnYl91cmw7CiAgZG9jdW1lbnQud3JpdGUoJzxpbWcgaWQ9IkdCX2ZyYW1lIiBzcmM9IicgKyBnYl91cmwgKyAnIj4nKTsKfQp2YXIgZnJhbWUgPSBBSlMuJCgnR0JfZnJhbWUnKTsKPC9zY3JpcHQ+Cgo8L2JvZHk+CjxzY3JpcHQ+CmZ1bmN0aW9uIHNldHVwT3V0ZXJHQigpIHsKICAgIGZyYW1lLnN0eWxlLnZpc2liaWxpdHkgPSAndmlzaWJsZSc7CiAgICBHQi5zZXRGcmFtZVNpemUoKTsKICAgIEdCLnNldFdpbmRvd1Bvc2l0aW9uKCk7Cn0KCmZ1bmN0aW9uIGxvYWRlZCgpIHsKICAgIEFKUy5yZW1vdmVFbGVtZW50KGxvYWRpbmcpOwoKICAgIEdCLm92ZXJsYXkuaW5uZXJIVE1MICs9ICImbmJzcDsiOyAvL1NhZmFyaSBidWdmaXgKICAgIAogICAgaWYoZ2JfdHlwZSA9PSAiaW1hZ2UiKSB7CiAgICAgICAgaWYoaW1nX2hvbGRlci53aWR0aCAhPSAwICYmIGltZ19ob2xkZXIuaGVpZ2h0ICE9IDApIHsKICAgICAgICAgICAgdmFyIHdpZHRoID0gaW1nX2hvbGRlci53aWR0aDsKICAgICAgICAgICAgdmFyIGhlaWdodCA9IGltZ19ob2xkZXIuaGVpZ2h0OwoKICAgICAgICAgICAgR0Iud2lkdGggPSB3aWR0aDsKICAgICAgICAgICAgR0IuaGVpZ2h0ID0gaGVpZ2h0OwoKICAgICAgICAgICAgc2V0dXBPdXRlckdCKCk7CgogICAgICAgICAgICBpZihHQi51c2VfZngpIHsKICAgICAgICAgICAgICAgIEFKUy5zZXRPcGFjaXR5KGZyYW1lLCAwKTsKICAgICAgICAgICAgICAgIEFKUy5meC5mYWRlSW4oZnJhbWUpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgZWxzZSB7CiAgICAgICAgR0Iud2lkdGggPSBmcmFtZS5vZmZzZXRXaWR0aDsKICAgICAgICBHQi5oZWlnaHQgPSBmcmFtZS5vZmZzZXRIZWlnaHQ7CiAgICAgICAgc2V0dXBPdXRlckdCKCk7CiAgICB9Cn0KCmlmKEdCLnNob3dfbG9hZGluZykgewogICAgQUpTLkFFVih3aW5kb3csICdsb2FkJywgZnVuY3Rpb24oZSkgewogICAgICAgIGxvYWRlZCgpOwogICAgfSk7Cn0KZWxzZSB7CiAgICBsb2FkZWQoKTsKfQo8L3NjcmlwdD4KPC9odG1sPgo=]]></data>
	</file>
	<file>
	  <filename>/style/greybox/next.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhGQAeANU5AP///5mZme/v73R0dHx8fPr6+qenp319fZ6enuvr69bW1s3NzU9PT5+fn729vT09PaCgoDU1NcnJyf7+/lhYWHFxcenp6YODg62trfj4+IWFhVxcXKOjo9ra2qSkpOjo6MLCwjY2Nru7u/Hx8cvLy0RERIKCgu3t7cHBwYeHh0NDQ93d3TQ0NO7u7nNzc9nZ2U1NTby8vD4+Puzs7JqamltbW9HR0ff39z8/PzMzMwAAAAAAAAAAAAAAAAAAAAAAACH5BAEAADkALAAAAAAZAB4AAAb/wJxwSCwaj8ikcvigVEwaU4XyWA5hhIB2uyUwlJGBtiFSfBIfhaihHUSOj0MAQSoA7nhAYYEIHKpEEXIGAnmGdwIGfixEYgYZh5EZigNDDHOFADYYnBgkkS19XzlZC3gTDlwSkQsBBDkqARB2p6lbq4YFEAEqGwEoh6iqhygBNWIdkcK3hi8BLhcBFpEAy1q4dxYBFykBJ9QAHzRbHjd4JwEp0dORCWxaHpnZ28jt7wHxhh0BA74gh+62cJCHB0SADSVk0bqTYJeWgYd0BShBKoCpOzMcBoB4qNWrHJcQZFqhoKQCgngEiBriCBI4PJP4BRo04iWAEYoOvCESZ86CLYV59vT5cySEmAANYihIwFSBg3cDQihhkIULFy9WhMhwoqHrFBxZw4odSxZJEAA7]]></data>
	</file>
	<file>
	  <filename>/style/greybox/prev.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhGQAeANU4AP///5mZme/v73R0dOvr6/r6+nx8fH19fZ6enqenp9bW1p+fn83NzU9PT729vT09PaCgoDU1Nf7+/snJyXFxcVhYWPj4+Onp6YWFha2trYODg6SkpFxcXOjo6KOjo9ra2u3t7YeHh8vLyzY2NsLCwvHx8YKCgsHBwbu7u0NDQ0RERHNzc93d3TQ0NJqamry8vNHR0T4+PtnZ2ff39z8/P+7u7ltbW01NTTMzMwAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAADgALAAAAAAZAB4AAAb/QJxwSCwaj8ikcvioUEwYE6XyWA5vhoB2uzU0lJGBdoFSdAgdBWqhHUSOj0MAISoA7nhAgYEIHKpEEXIJAnmGdwIJfi1EYgkWh5EWigNDDXOFhyIZnBkwdzV9XzhZDJETXA4SeAwBBjgpARB2hqhbqnkFEAEpHAEnh7ZauIYnATZiH7Wpq4cyASsaARd5wgHEhxcBGiEBIHgzG1suHZF3IAEh0tR4AuJjBObaGsmG7lsL8YcfAQO+JIcEeMCnLw+JABxUyKKVR+AWCAX17FJBKoCpgAO1QGTlSsglBJnsKRipgAUiUUMcQTKXZ1K/QINKsLxTQtGBN0TizGHAMBcfKj+AiowQE2DBCwUEkipwwKbfCCUNsnDh4sWKkBhOMGidQsOq169gwyIJAgA7]]></data>
	</file>
	<file>
	  <filename>/style/greybox/w_close.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhCwALAJEAAEVFRYiIiP/W1gAAACH5BAAAAAAALAAAAAALAAsAAAIbjI8my6zdHmBTPDGrDU1vijlcuFQX9KFLwgYFADs=]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/adminertab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[77u/DQp7aWYgJGRpc3BsYXkgPT0gJ2xpZ2h0Ym94JyB9DQoJPHA+PGEgaHJlZj0ieyR1cmx9IiBvbmNsaWNrPSJyZXR1cm4gR0Jfc2hvd0Z1bGxTY3JlZW4oJ2J0QWRtaW5lcicsIHRoaXMuaHJlZikiPnskcHJvbXB0X29wZW5pbmxpZ2h0Ym94fTwvYT48L3A+DQp7ZWxzZX0NCgk8aWZyYW1lIHNyYz0ieyR1cmx9IiBuYW1lPSJidEFkbWluZXIiIHNjcm9sbGluZz0iYXV0byIgbWFyZ2luaGVpZ2h0PSIwIiBtYXJnaW53aWR0aD0iMCIgaGVpZ2h0PSJ7JGZyYW1laGVpZ2h0fSIgd2lkdGg9IjEwMCUiIGJvcmRlcj0iMCIgZnJhbWVib3JkZXI9IjAiPjwvaWZyYW1lPg0Key9pZn0=]]></data>
	</file>
	<file>
	  <filename>/templates/optiontab.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[77u/eyRzdGFydEZvcm19DQo8ZmllbGRzZXQ+DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9kaXNwbGF5fTo8L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfZGlzcGxheX08L3A+DQoJPC9kaXY+DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHByb21wdF9mcmFtZWhlaWdodH06PC9wPg0KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2ZyYW1laGVpZ2h0fTwvcD4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X3Byb2d9OjwvcD4NCgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9wcm9nfTwvcD4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskcHJvbXB0X29ubHliYWNrZW5kfTo8L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfb25seWJhY2tlbmR9PC9wPg0KCTwvZGl2Pg0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRwcm9tcHRfYWRtaW5fc2VjdGlvbn06PC9wPg0KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2FkbWluX3NlY3Rpb259PC9wPg0KCTwvZGl2Pg0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQoJCTxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPg0KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JHN1Ym1pdH08L3A+DQoJPC9kaXY+DQo8L2ZpZWxkc2V0Pg0KeyRlbmRGb3JtfQ==]]></data>
	</file>
</module>
